:root{--surface:#efe6ff;--surface-raised:#f8f3ff;--hairline:#ddd0f7;--ink:#2b1a4a;--ink-soft:#4a3a6b;--ink-accent:#6b4fb0;--primary:#2b1a4a;--on-primary:#efe6ff;--bubblegum:#ffb8dc;--on-bubblegum:#5a1238;--periwinkle:#c4d5ff;--on-periwinkle:#1d2f6e;--sparkle:#ff5fa2;--focus:#6b4fb0;--backdrop:#e4dbf5;--tarot-back:#3a2470;--tarot-line:#ff9fd0;--lilac:#cdbcf7;--moonlight:#fff3d1;--earth-ocean:#c9b8f4;--earth-land:#a48be2;--earth-line:#6b4fb0;--earth-halo:#ff8fc8;--sky-dots:.55;--font-display:"Unbounded", "Arial Rounded MT Bold", system-ui, sans-serif;--font-sans:"Figtree", system-ui, -apple-system, sans-serif;--font-glyph:"Apple Symbols", "Segoe UI Symbol", "Noto Sans Symbols", var(--font-sans);--row:44px;--picker-h:calc(var(--row) * 3);--top-gap:10px;--slot-h:calc(var(--row) * 3);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=night]{--surface:#1e1238;--surface-raised:#2a1b4a;--hairline:#3b2a63;--ink:#f6eeff;--ink-soft:#d6c9ef;--ink-accent:#c9b6ff;--primary:#c9b6ff;--on-primary:#1e1238;--bubblegum:#ff8fc8;--on-bubblegum:#3d0a24;--periwinkle:#9db4ff;--on-periwinkle:#101e4f;--sparkle:#ff8fc8;--focus:#9db4ff;--backdrop:#150c29;--tarot-back:#4a2f86;--tarot-line:#ffb8dc;--lilac:#7a62c4;--moonlight:#fff3d1;--earth-ocean:#2a1b4a;--earth-land:#3b2a63;--earth-line:#c9b6ff;--earth-halo:#c9b6ff;--sky-dots:1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{background:var(--backdrop);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:pinch-zoom;transition:background-color .6s;position:fixed;inset:0}#root{height:100%}@media (display-mode:standalone){html{overflow:visible}body{height:100vh;bottom:auto}}@media (width<=519px),(height<=759px){body{background:var(--surface)}}.edge-hint{z-index:50;pointer-events:none;background:var(--surface-raised);width:40px;height:40px;color:var(--ink-accent);border:1px solid var(--hairline);border-radius:999px;place-items:center;padding-bottom:3px;font-size:26px;line-height:1;transition:background-color .15s,color .15s;display:grid;position:fixed;left:0;box-shadow:0 6px 18px #2b1a4a2e}.edge-hint.armed{background:var(--primary);color:var(--on-primary);border-color:#0000}.screen{view-transition-name:screen}html[data-nav] body,html[data-nav] .screen,html[data-nav] .screen *{transition:none!important}::view-transition-image-pair(screen){overflow:clip}::view-transition-old(screen){mix-blend-mode:normal;animation-duration:.42s;animation-timing-function:cubic-bezier(.32,.72,0,1);animation-fill-mode:both}::view-transition-new(screen){mix-blend-mode:normal;animation-duration:.42s;animation-timing-function:cubic-bezier(.32,.72,0,1);animation-fill-mode:both}html[data-nav=forward]::view-transition-old(screen){animation-name:slide-out-left}html[data-nav=forward]::view-transition-new(screen){animation-name:slide-in-right}html[data-nav=back]::view-transition-old(screen){z-index:1;animation-name:slide-out-right}html[data-nav=back]::view-transition-new(screen){animation-name:slide-in-left}@keyframes slide-in-right{0%{transform:translate(100%)}}@keyframes slide-out-left{to{opacity:.5;transform:translate(-30%)}}@keyframes slide-in-left{0%{opacity:.5;transform:translate(-30%)}}@keyframes slide-out-right{to{transform:translate(100%)}}button{font-family:inherit}[hidden]{display:none!important}.screen{background:var(--surface);max-width:480px;height:100%;color:var(--ink);margin:0 auto;transition:background-color .6s,color .6s;position:relative;overflow:clip}.screen *{transition-property:background-color,color,border-color,opacity;transition-duration:.6s}@media (width>=520px) and (height>=760px){.screen{border:1px solid var(--hairline);border-radius:40px;height:min(100dvh - 48px,900px);margin-top:24px}}.flow{height:100%;padding:calc(env(safe-area-inset-top) + var(--top-gap)) 20px 0;flex-direction:column;gap:12px;display:flex}.top{z-index:4;flex-direction:column;flex:none;gap:10px;display:flex;position:relative}.bar{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.bar-left{align-items:center;gap:2px;display:flex}.back-btn{width:22px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;margin-left:-6px;padding:0;font-size:26px;line-height:24px;position:relative}.back-btn:after{content:"";position:absolute;inset:-8px -10px -8px -8px}.back-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.wordmark{font-family:var(--font-display);white-space:nowrap;font-size:13px;font-weight:500}.wordmark .wordmark-star{vertical-align:.5em;width:.8em;height:.8em;margin-left:2px}.spark,.star-mark{color:var(--sparkle)}.bar-right{flex:none;align-items:center;gap:12px;display:flex}.dots{display:flex}.dot{cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:28px;height:28px;padding:0;display:grid;position:relative}.dot:after{content:"";position:absolute;inset:-8px 0}.dot i{background:var(--hairline);border-radius:999px;width:22px;height:6px;transition:transform .15s,background-color .6s}.dot.on i{background:var(--ink-accent)}.dot:disabled{cursor:default}.dot:not(:disabled):hover i{transform:scaleY(1.5)}.dot:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media (width<=349px){.bar-right{gap:8px}.dot{width:22px}.dot i{width:16px}}.q{font-family:var(--font-display);margin:0;font-size:21px;font-weight:400;line-height:26px}.q.big{font-size:26px;line-height:32px}.keep{white-space:nowrap}.pop{animation:.45s cubic-bezier(.34,1.56,.64,1) pop;display:inline-block}@keyframes pop{0%{opacity:.2;transform:translateY(8px)scale(.9)}to{opacity:1;transform:none}}.you{font-family:var(--font-display);min-height:26px;margin:2px 0 0;font-size:21px;line-height:26px}.you b{font-weight:500}.style{color:var(--ink-soft);min-height:40px;margin:0;font-size:14px;line-height:20px}.cusp{color:var(--ink-accent);min-height:16px;margin:0;font-size:12px}.reveal{flex-direction:column;gap:6px;display:flex}.btn{background:var(--primary);width:100%;height:48px;color:var(--on-primary);font:600 15px/20px var(--font-sans);cursor:pointer;border:0;border-radius:999px}.btn:disabled{opacity:.35;cursor:default}.btn:focus-visible,.ghost:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.ghost{border:1px solid var(--hairline);width:100%;height:48px;color:var(--ink);font:600 15px/20px var(--font-sans);cursor:pointer;background:0 0;border-radius:999px}.field{border:1px solid var(--hairline);background:var(--surface-raised);height:54px;font:500 18px var(--font-sans);color:var(--ink);border-radius:8px;width:100%;padding:0 16px}.field:focus{outline:2px solid var(--focus);outline-offset:2px}.name-step{position:relative}.name-step>:not(.starfield,.earth,.fairy-trail){z-index:1;position:relative}.starfield{pointer-events:none;width:100%;height:100%;fill:var(--ink-accent);opacity:var(--sky-dots);position:absolute;inset:0}.earth{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;width:100%;animation:1.4s cubic-bezier(.22,1,.36,1) both earth-in;position:absolute;bottom:0;left:0;right:0}.earth.grabbing{cursor:grabbing}.name-step .sky,.name-step .push{pointer-events:none}.name-step .push .btn{pointer-events:auto}.earth .ocean{fill:var(--earth-ocean);stroke:var(--earth-line);stroke-opacity:.55;stroke-width:1.5px}.earth .land{fill:var(--earth-land);stroke:var(--earth-line);stroke-opacity:.35;stroke-width:.8px}.earth .grat{fill:none;stroke:var(--earth-line);stroke-opacity:.1;stroke-width:.8px}.earth .halo-in{stop-color:var(--earth-halo);stop-opacity:.4}.earth .halo-out{stop-color:var(--earth-halo);stop-opacity:0}.earth *{transition:fill .6s,stroke .6s,stop-color .6s}@keyframes earth-in{0%{opacity:0;transform:translateY(40px)}}.sky{flex:auto;min-height:150px;margin:2px -20px 0;padding:0 20px;position:relative}.letter{font-family:var(--font-display);white-space:nowrap;flex-direction:column;margin:0;display:flex}.letter .dear{color:var(--ink-accent);min-height:28px;font-size:20px;font-weight:400;line-height:28px}.letter .name{align-self:flex-start;font-size:52px;font-weight:500;line-height:1.15}.letter:not(:has(.dear)):before{content:"";height:28px}.trail{pointer-events:none;width:100%;height:100%;stroke:var(--sparkle);stroke-linecap:round;position:absolute;inset:0;overflow:visible}.comet{width:26px;height:26px;color:var(--sparkle);pointer-events:none;margin:-13px 0 0 -13px;position:absolute;top:0;left:0}.comet .star{width:26px;height:26px;filter:drop-shadow(0 0 8px var(--sparkle));display:block}.comet .star svg,.twinkle svg{width:100%;height:100%;display:block}.twinkle{color:var(--ink-accent);pointer-events:none;position:absolute}.name-step .mini{color:var(--ink)}.sky,.sky *{transition:none}html[data-fairy] .name-step .comet,html[data-fairy] .wheel-step .pointer,html[data-fairy] .place-step .g-star,html[data-fairy] .place-step .pin,html[data-fairy] .done-step .q .spark{visibility:hidden}.fairy-layer{z-index:40;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fairy-trail{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.fairy{color:var(--sparkle);will-change:transform;position:absolute;top:0;left:0}.fairy-body{width:100%;height:100%;filter:drop-shadow(0 0 7px var(--sparkle));display:block}.fairy-body svg{display:block}.fairy-dust{background:var(--c);box-shadow:0 0 6px var(--c);opacity:0;border-radius:50%;position:absolute}.fairy-dust.sparkle{box-shadow:none;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);border-radius:0}::view-transition-group(fairy){z-index:3;animation:none}::view-transition-old(fairy){display:none}::view-transition-new(fairy){animation:none}.push{padding-bottom:calc(env(safe-area-inset-bottom) + 20px);flex-direction:column;gap:10px;margin-top:auto;display:flex}.mini{color:var(--ink-accent);margin:0;font-size:12px}.picker{height:var(--picker-h);gap:4px;padding:0 8px;display:grid;position:relative}.picker:before{content:"";left:4px;right:4px;top:calc((var(--picker-h) - var(--row)) / 2);height:var(--row);background:var(--bubblegum);opacity:.55;pointer-events:none;border-radius:999px;position:absolute}.date-picker{grid-template-columns:1.5fr .7fr 1fr}.time-picker{height:var(--slot-h);--picker-h:var(--slot-h);grid-template-columns:1fr 1fr 1fr;padding:0 30px;position:absolute;inset:0}.time-picker:before{left:20px;right:20px}.col{height:var(--picker-h);scrollbar-width:none;touch-action:none;outline:none;position:relative;overflow-y:scroll;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.col::-webkit-scrollbar{display:none}.col:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:12px}.col .row{height:var(--row);line-height:var(--row);text-align:center;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:17px;font-weight:500}.col .pad{height:calc((var(--picker-h) - var(--row)) / 2)}.stage{clip-path:inset(-40px 0 0);flex:auto;min-height:170px;margin:0 -20px;position:relative}.stage .wheel{left:50%}.wheel{width:660px;height:660px;transform:scale(var(--k,1));transform-origin:50% 0;margin-left:-330px;position:absolute;top:22px;left:50%}.dial{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;z-index:1;border-radius:50%;position:absolute;inset:0}.dial:active{cursor:grabbing}.dial:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.dial.dim{opacity:.4}.dial.locked{cursor:default}.ring{background:var(--surface-raised);border:1px solid var(--hairline);will-change:transform;border-radius:50%;position:absolute;inset:0}.ring .glyph{text-align:center;width:60px;height:60px;color:var(--ink-accent);font-size:32px;line-height:60px;font-family:var(--font-glyph);margin:-30px;transition:none;position:absolute;top:50%;left:50%}.ring .glyph.lit{color:var(--sparkle)}.ring .glyph .glyph-name{transform:translateX(-50%) scale(calc(1 / var(--s,1)));transform-origin:top;font-family:var(--font-sans);letter-spacing:.04em;white-space:nowrap;color:var(--sparkle);opacity:0;font-size:11px;font-weight:600;line-height:1;transition:opacity .25s;position:absolute;top:calc(50% + 17px);left:50%}.ring .glyph.lit.named .glyph-name{opacity:1}.ring .mon{text-align:center;letter-spacing:.1em;width:40px;height:16px;color:var(--ink-accent);margin:-8px -20px;font-size:10px;font-weight:500;position:absolute;top:50%;left:50%}.ring .tick{background:var(--hairline);transform-origin:50% 0;width:1px;height:7px;margin-left:-.5px;position:absolute;top:50%;left:50%}.ring .tick.month{background:var(--ink-accent);width:2px;height:14px;margin-left:-1px}.ring .spoke{background:var(--ink-accent);opacity:.5;transform-origin:50% 0;width:2px;height:26px;margin-left:-1px;position:absolute;top:50%;left:50%}.ring .hr{background:var(--hairline);transform-origin:50% 0;width:1px;height:7px;margin-left:-.5px;position:absolute;top:50%;left:50%}.ring .sun{background:var(--bubblegum);color:var(--on-bubblegum)}.ring .moon{background:var(--periwinkle);color:var(--on-periwinkle)}.pointer{color:var(--sparkle);z-index:3;pointer-events:none;filter:drop-shadow(0 0 5px var(--sparkle));font-size:22px;line-height:1;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.pointer .icon{display:block;overflow:visible}.hub{background:var(--surface);border:1px solid var(--hairline);z-index:2;pointer-events:none;border-radius:50%;width:356px;height:356px;position:absolute;top:152px;left:152px}.bottom{z-index:5;padding:14px 20px calc(env(safe-area-inset-bottom) + 16px);background:var(--surface);border-top:1px solid var(--hairline);flex-direction:column;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.seg{background:var(--surface-raised);border:1px solid var(--hairline);border-radius:999px;grid-template-columns:1fr 1fr 1fr;padding:3px;display:grid}.seg.two{grid-template-columns:1fr 1fr}.seg button{height:34px;font:600 12px var(--font-sans);color:var(--ink-accent);cursor:pointer;background:0 0;border:0;border-radius:999px}.seg button[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.seg button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.slot{height:var(--slot-h);transition:height .35s;position:relative}.no-time .slot{height:0}.no-time .dial.dim{opacity:1}.no-time .ring .glyph:not(.lit),.no-time .ring .spoke,.no-time .ring .hr{opacity:.35}.no-time .pointer .icon{transform-origin:50% 55%;animation:1.6s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,40%,to{transform:scale(1)}12%{transform:scale(1.22)}24%{transform:scale(1.04)}32%{transform:scale(1.14)}}@media (prefers-reduced-motion:reduce){.no-time .pointer .icon{animation:none}}.deck{touch-action:pan-y;outline:none;flex:auto;min-height:280px;margin:4px -20px 0;position:relative;overflow:clip}.deck:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:12px}.tcard{aspect-ratio:5/8;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .4s;position:absolute;top:50%;left:50%}.tcard.up{transition:left .38s cubic-bezier(.2,.8,.2,1),top .38s cubic-bezier(.2,.8,.2,1),width .38s cubic-bezier(.2,.8,.2,1),height .38s cubic-bezier(.2,.8,.2,1)}.deck.dragging .tcard{transition:none}.tcard-btn{width:100%;height:100%;color:inherit;cursor:pointer;perspective:1600px;background:0 0;border:0;border-radius:22px;padding:0;animation:6s ease-in-out infinite drift;display:block}.tcard-btn.bump{animation:6s ease-in-out infinite drift,.62s ease-in-out bump}@keyframes bump{50%{scale:1.06}}.tcard.up .tcard-btn{animation:none}.tcard:nth-child(2) .tcard-btn{animation-delay:-2s}.tcard:nth-child(3) .tcard-btn{animation-delay:-4s}.tcard:nth-child(4) .tcard-btn{animation-delay:-1s}.tcard-btn:focus-visible{outline:2px solid var(--focus);outline-offset:4px}@keyframes drift{50%{translate:0 -4px}}.tcard-spin{width:100%;height:100%;transform-style:preserve-3d;transform:rotateY(var(--turn));transition:transform .62s cubic-bezier(.45,.05,.25,1);display:block;position:relative}.tcard-side{backface-visibility:hidden;display:block;position:absolute;inset:0;container-type:size}.tcard-side.b{transform:rotateY(180deg)}.tcard-side>.tc-back{border-radius:22px;position:absolute;inset:0;box-shadow:0 14px 34px #2b1a4a38}.tcard-side>.tc-back .tc-back-frame{border-radius:16px;inset:8px}.tcard-side>.tc-back .tc-back-moon{width:26%}.tcard-side>.tc-back .tc-back-mark{font-size:28px}.tcard-side>.tc-face{box-shadow:0 14px 34px #2b1a4a2e}.tcard:nth-child(2) .tc-face:after{animation-delay:2.3s}.tcard:nth-child(3) .tc-face:after{animation-delay:4.6s}.tcard:nth-child(4) .tc-face:after{animation-delay:1.2s}.lift-frame{z-index:30;pointer-events:none;height:100dvh;padding:calc(env(safe-area-inset-top) + 12px) 14px calc(env(safe-area-inset-bottom) + 12px);background:0 0;transition:background-color .35s,-webkit-backdrop-filter .35s,backdrop-filter .35s;display:flex;position:fixed;top:0;left:0;right:0}.lift-frame.on{pointer-events:auto;background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:blur(10px)}.lift-box{flex:1;width:100%;max-width:440px;margin:0 auto}@media (pointer:coarse) and (display-mode:browser){.lift-frame{padding-bottom:max(calc(env(safe-area-inset-bottom) + 12px), 64px)}}.deck-foot{flex-direction:column;flex:none;align-items:center;margin-top:2px;display:flex}.tc-back{background:var(--tarot-back);border-radius:14px;box-shadow:0 8px 22px #2b1a4a2e}.tc-back-frame{border:1px solid var(--tarot-line);background-image:radial-gradient(circle, color-mix(in srgb, var(--tarot-line) 45%, transparent) 1px, transparent 1.6px);background-size:12px 12px;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:6px}.tc-back-moon{width:34%;height:auto;color:var(--tarot-line)}.tc-back-mark{font:500 20px/1 var(--font-display);color:var(--tarot-line)}.tc-face{--tc-tint:var(--bubblegum);background:var(--surface-raised);border:1px solid var(--hairline);border-radius:14px;flex-direction:column;align-items:center;padding:11% 9% 10%;display:flex;overflow:hidden;box-shadow:0 8px 22px #2b1a4a24}.tc-face:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff61 50%,#0000 58%);animation:7s ease-in-out infinite sheen;position:absolute;inset:-20% -60%;transform:translate(-70%)}:root[data-theme=night] .tc-face:after{background:linear-gradient(105deg,#0000 42%,#ffffff1a 50%,#0000 58%)}@keyframes sheen{0%,70%{transform:translate(-70%)}to{transform:translate(70%)}}.tc-corner{animation:3.2s ease-in-out infinite twinkle}.tc-corner.tr{animation-delay:-.8s}.tc-corner.bl{animation-delay:-1.6s}.tc-corner.br{animation-delay:-2.4s}@keyframes twinkle{50%{opacity:.35;scale:.75}}.tc-face.moon{--tc-tint:var(--periwinkle)}.tc-face.rising{--tc-tint:var(--lilac)}.tc-face:before{content:"";border:1px solid color-mix(in srgb, var(--ink-accent) 35%, transparent);pointer-events:none;border-radius:10px;position:absolute;inset:5px}.tc-corner{width:9px;height:9px;color:var(--sparkle);position:absolute}.tc-corner.tl{top:9px;left:9px}.tc-corner.tr{top:9px;right:9px}.tc-corner.bl{bottom:9px;left:9px}.tc-corner.br{bottom:9px;right:9px}.tc-title{font:500 calc(var(--cw) * .075)/1.2 var(--font-display);letter-spacing:.1em;white-space:nowrap;text-transform:uppercase;color:var(--ink-accent);margin:0}.tc-arch{background:color-mix(in srgb, var(--tc-tint) 55%, transparent);width:100%;color:var(--ink);border-radius:999px 999px 8px 8px;flex:1;place-items:center;margin:9% 0;display:grid;position:relative;overflow:hidden}.tc-motif{fill:none;width:100%;height:100%;stroke:var(--ink-accent);opacity:.4;position:absolute;inset:0}.tc-motif *{vector-effect:non-scaling-stroke;stroke-width:1px}.tc-glyphs{font-size:calc(var(--cw) * .34);gap:2px;display:flex;position:relative}.tc-glyphs .icon{vertical-align:0;width:1em;height:1em}.tc-face.tonight{--ink:#f6eeff;--ink-soft:#d6c9ef;--ink-accent:#ffb8dc;--hairline:#ffffff2e;--tc-tint:#ffffff1a;background:var(--tarot-back);color:var(--ink);background-image:radial-gradient(circle,#ffffff38 1px,#0000 1.6px);background-size:17px 19px;border-color:#0000}.tc-face.tonight .tc-arch{background:#ffffff12}.tc-moon{filter:drop-shadow(0 0 8px #fff3d18c);width:74%;height:auto}.tc-moon-disc{fill:#ffffff21}.tc-moon-lit{fill:var(--moonlight)}.tc-big .tc-moon{width:110px}.tc-dream{color:var(--ink);background:color-mix(in srgb, var(--lilac) 32%, transparent);border-radius:12px;margin:0;padding:8px 12px;font-size:15px;line-height:21px}.recall-opts{gap:6px;display:inline-flex}.recall-opts button{cursor:pointer;border:1px solid var(--hairline);background:var(--surface-raised);height:36px;color:var(--ink-accent);font:600 13px var(--font-sans);border-radius:999px;padding:0 14px}.recall-opts button[aria-pressed=true]{background:var(--bubblegum);color:var(--on-bubblegum);border-color:#0000}.recall-opts button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.tc-hint{text-align:center;color:var(--ink-soft);margin:0;font-size:13px}.tc-big{border-radius:22px;width:100%;height:100%;position:relative}.tc-big.tc-face{--cw:300px;padding:clamp(16px,3.6cqh,28px) clamp(18px,6cqw,26px) clamp(24px,4.2cqh,32px)}.tc-big.tc-face:before{border-radius:16px;inset:7px}.tc-big .tc-corner{width:11px;height:11px}.tc-big .tc-corner.tl{top:14px;left:14px}.tc-big .tc-corner.tr{top:14px;right:14px}.tc-big .tc-corner.bl{bottom:14px;left:14px}.tc-big .tc-corner.br{bottom:14px;right:14px}.tc-big .tc-title{font-size:clamp(10px,1.8cqh,12px)}.tc-big .tc-arch{flex:1 1 0;min-height:52px;max-height:38cqh;margin:clamp(6px,1.8cqh,14px) 0 clamp(6px,2cqh,16px)}.tc-big .tc-glyphs{font-size:clamp(40px,12cqh,96px)}.tc-big .tc-moon{width:auto;height:78%;max-height:170px}.tc-big-name{font:500 clamp(18px, 4cqh, 24px)/1.25 var(--font-display);text-align:center;margin:0}.tc-meta{letter-spacing:.03em;color:var(--ink-accent);text-align:center;margin:2px 0 0;font-size:clamp(11px,2cqh,13px)}.tc-reading{border-top:1px dashed var(--hairline);gap:calc(var(--rf) * .3);width:100%;min-height:0;font-size:var(--rf);--rf:15px;flex-direction:column;flex:0 auto;margin-top:clamp(8px,2cqh,16px);padding-top:clamp(8px,2cqh,14px);display:flex;position:relative;overflow-y:auto}.tc-reading .tc-means,.tc-reading .tc-label{font-size:max(11px, calc(var(--rf) * .72))}.tc-reading .tc-label{margin-top:calc(var(--rf) * .55)}.tc-means,.tc-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-accent);margin:0;font-size:clamp(9.5px,1.6cqh,12.5px);font-weight:600}.tc-label{margin-top:clamp(4px,1.4cqh,14px)}.tc-line{color:var(--ink);margin:0;font-size:1.2em;line-height:1.4}.tc-gifts{flex-wrap:wrap;gap:6px;margin:0;display:flex}.tc-gifts span{background:color-mix(in srgb, var(--tc-tint) 60%, transparent);color:var(--ink);border-radius:999px;padding:.25em .75em;font-size:.88em}.tc-need{color:var(--ink);margin:0;font-size:1.05em;line-height:1.4}.tc-big .tc-dream{padding:.5em .8em;font-size:1.05em;line-height:1.4}.tc-watch{color:var(--ink-soft);margin:0;font-size:1em;line-height:1.4}.tc-art .tc-arch{max-height:none}.tc-art .tc-big-name{font-size:clamp(20px,4.8cqh,30px)}.tc-art .tc-glyphs{font-size:clamp(48px,16cqh,120px)}.tcard-btn{text-align:left}.tc-read .tc-arch{flex:none;height:clamp(44px,13cqh,130px);max-height:none;margin:0 0 clamp(6px,1.6cqh,12px)}.tc-read .tc-glyphs{font-size:clamp(28px,7cqh,56px)}.tc-read .tc-moon{height:80%}.tc-read .tc-reading{border-top:1px dashed var(--hairline);flex:auto;margin-top:clamp(6px,1.6cqh,12px);padding-top:clamp(6px,1.8cqh,14px)}.tonight .recall-opts button{color:var(--ink);background:#ffffff1a;border-color:#ffffff47}.tonight .recall-opts button[aria-pressed=true]{background:var(--bubblegum);color:var(--on-bubblegum);border-color:#0000}.tc-read .tc-title{white-space:normal;text-align:center;font-size:clamp(11px,2cqh,14px)}.tc-read .recall-opts{flex-wrap:wrap}.tc-read .recall-opts button{height:max(36px,2.5em);font-size:.9em}.tc-wait-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.tc-wait .tc-big-name{font-size:clamp(20px,4.6cqh,26px)}.tc-wait .btn{max-width:260px;margin-top:6px}.tc-dots{flex:none;justify-content:center;display:flex}.tc-dots button{cursor:pointer;background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.tc-dots button:before{content:"";background:var(--hairline);border-radius:50%;width:7px;height:7px}.tc-dots button[aria-current=true]:before{background:var(--sparkle)}.tc-dots button:focus-visible{outline:2px solid var(--focus);outline-offset:-4px;border-radius:50%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.tcard-btn,.tc-face:after,.tc-corner{animation:none}.tcard,.tcard.up,.tcard-spin,.lift-frame{transition:none}.tcard-btn.bump{animation:none}}.rough{grid-template-columns:1fr 1fr;align-content:center;gap:10px;display:grid;position:absolute;inset:0}.rough button{border:1px solid var(--hairline);background:var(--surface-raised);height:48px;font:600 14px var(--font-sans);color:var(--ink);cursor:pointer;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;line-height:17px;display:flex}.rough button small{color:var(--ink-accent);font-size:11px;font-weight:500}.rough button[aria-pressed=true]{background:var(--bubblegum);color:var(--on-bubblegum);border-color:#0000}.rough button[aria-pressed=true] small{color:var(--on-bubblegum)}.place{position:relative}.place input{border:1px solid var(--hairline);background:var(--surface-raised);width:100%;height:48px;font:500 16px var(--font-sans);color:var(--ink);border-radius:999px;padding:0 16px 0 40px}.place input::placeholder{color:var(--ink-accent)}.place input:focus{outline:2px solid var(--focus);outline-offset:2px}.place .pin{color:var(--sparkle);pointer-events:none;font-size:15px;position:absolute;top:16.5px;left:16px}.place.set input{background:var(--bubblegum);color:var(--on-bubblegum);border-color:#0000}.place.set .pin{color:var(--on-bubblegum)}.sugg{background:var(--surface-raised);border:1px solid var(--hairline);z-index:8;border-radius:20px;position:absolute;top:54px;left:0;right:0;overflow:hidden;box-shadow:0 12px 30px #2b1a4a1f}.sugg button{text-align:left;width:100%;font:400 15px var(--font-sans);color:var(--ink);cursor:pointer;background:0 0;border:0;padding:12px 16px;display:block}.sugg button+button{border-top:1px solid var(--hairline)}.sugg button:hover,.sugg button:focus-visible{background:var(--bubblegum);color:var(--on-bubblegum);outline:none}.sugg-note{color:var(--ink-soft);margin:0;padding:12px 16px;font-size:13px;line-height:18px}.globe-wrap{top:0}.globe{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;z-index:1;width:100%;height:100%;position:absolute;inset:0}.globe:active{cursor:grabbing}.globe *{transition:none}.g-ocean{fill:var(--surface-raised)}.g-grat{fill:none;stroke:var(--hairline);stroke-width:1px}.g-land{fill:var(--periwinkle);stroke:var(--surface-raised);stroke-width:.5px}.g-night{fill:var(--ink);opacity:.28}:root[data-theme=night] .g-night{fill:#000;opacity:.45}.g-rim{fill:none;stroke:var(--hairline);stroke-width:1.5px}.g-star{color:var(--sparkle);font-size:26px}.home-pill{z-index:3;background:var(--primary);height:34px;color:var(--on-primary);font:600 13px var(--font-sans);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:0 16px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.record{background:var(--surface-raised);border:1px solid var(--hairline);max-height:220px;color:var(--ink-soft);border-radius:12px;margin:0;padding:12px;font-size:11px;line-height:15px;overflow:auto}.error{flex-direction:column;gap:10px;display:flex}.loading{height:100%;color:var(--ink-accent);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:0 20px;font-size:14px;display:flex}.loading p{margin:0}.loading .ghost{max-width:240px}@media (prefers-reduced-motion:reduce){.pop,.earth{animation:none}.screen,.screen *{transition-duration:10ms!important}}.icon{vertical-align:-.14em;flex:none;width:1em;height:1em;display:inline-block}.ring .glyph .icon{vertical-align:0;width:30px;height:30px;transition:none}.ring .glyph{justify-content:center;align-items:center;display:flex}.theme-toggle{cursor:pointer;background:var(--surface-raised);width:26px;height:26px;color:var(--ink-accent);border:1px solid var(--hairline);border-radius:999px;flex:none;place-items:center;margin:-5px 0;padding:0;transition:background-color .6s,color .6s,border-color .6s;display:grid;position:relative}.theme-toggle:after{content:"";border-radius:999px;position:absolute;inset:-10px}.theme-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.theme-toggle .icon{vertical-align:0;width:14px;height:14px}
