:root{--void: #f3f1ec;--ink: #1a1a1a;--ink-soft: #6b665e;--paper: rgba(251, 250, 247, .92);--line: rgba(26, 26, 26, .12);--accent: #ff3d22;--sans: "roc-grotesk-variable", "roc-grotesk", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--serif: var(--sans);--gutter: max(16px, env(safe-area-inset-left))}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--void);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}#scene{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none;display:block}[hidden]{display:none!important}.button{font:500 15px/1 var(--sans);border:1px solid var(--ink);background:transparent;color:var(--ink);padding:14px 24px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,opacity .2s}.button.primary{background:var(--ink);color:var(--void)}.button.primary:hover:not(:disabled){background:#000}.button:disabled{opacity:.5;cursor:progress}.button.pill{padding:10px 18px;font-size:14px;background:var(--paper);border-color:var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.button.pill[aria-pressed=true]{background:var(--ink);color:var(--void)}.button.icon{padding:0;width:40px;height:40px;display:grid;place-items:center}.button.icon .waves{display:none}.button.icon[aria-pressed=true] .waves{display:inline}.button.icon[aria-pressed=true] .mute{display:none}.button.icon[aria-pressed=true]{background:var(--paper);color:var(--accent);border-color:var(--accent)}.intro{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px var(--gutter);background:radial-gradient(ellipse at center,#f3f1ec8c,#f3f1ecf7 70%);transition:opacity 1.2s ease;z-index:10}.intro.leaving{opacity:0;pointer-events:none}.intro-inner{max-width:560px;text-align:center}.brand{display:inline-block;margin:0 0 14px;opacity:.92;transition:opacity .2s}.brand:hover{opacity:1}.brand img{display:block;height:clamp(32px,5vw,41px);width:auto}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 20px}.intro h1{font:500 clamp(44px,9vw,84px) / 1 var(--sans);letter-spacing:-.035em;margin:0 0 20px}.intro h1 .dot{color:var(--accent)}.lede{font:400 clamp(16px,2.2vw,19px) / 1.5 var(--sans);color:var(--ink-soft);margin:0 auto 32px;max-width:440px;text-wrap:balance}.credit{margin-top:28px;font-size:13px;color:var(--ink-soft)}.credit a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:2px;transition:color .2s,border-color .2s}.credit a:hover{color:var(--ink);border-color:var(--ink)}.hud{position:fixed;top:max(16px,env(safe-area-inset-top));left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;pointer-events:none;font-size:13px;z-index:5}.hud-brand{display:flex;align-items:center;gap:12px}.hud-mark{pointer-events:auto;display:block;opacity:.85;transition:opacity .2s}.hud-mark:hover{opacity:1}.hud-mark img{display:block;height:18px;width:auto}.hud-rule{width:1px;height:18px;background:var(--line)}.hud-title{font:500 17px var(--sans);letter-spacing:-.01em}.counter{color:var(--ink-soft)}.counter b{font:500 13px var(--mono);color:var(--ink);transition:color .4s}.counter b.lit{color:var(--accent)}.hint{position:fixed;left:50%;bottom:max(28px,env(safe-area-inset-bottom));transform:translate(-50%);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:10px 18px;font-size:13px;color:var(--ink-soft);white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis;transition:opacity .8s;pointer-events:none;z-index:5}.hint.fade{opacity:0}.toolbar{display:flex;gap:8px;position:fixed;right:var(--gutter);bottom:max(20px,env(safe-area-inset-bottom));z-index:5}.labels{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4}.label{position:absolute;left:0;top:0;pointer-events:auto;cursor:pointer;font-size:12px;white-space:nowrap;padding:6px 10px;border-radius:6px;background:var(--paper);border:1px solid var(--line);transition:opacity .4s;will-change:transform,opacity}.label b{font:400 11px var(--mono);margin-right:6px;color:var(--ink-soft)}.card{position:fixed;right:var(--gutter);top:50%;transform:translateY(-50%);width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 140px);overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:28px 26px 22px;box-shadow:0 20px 60px #1f1d1a14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:6;animation:card-in .6s ease both}@keyframes card-in{0%{opacity:0;transform:translateY(-46%)}}.card-close{position:absolute;top:10px;right:12px;border:0;background:none;font:300 26px/1 var(--sans);color:var(--ink-soft);cursor:pointer;padding:4px 8px}.card-number{font:400 12px var(--mono);color:var(--ink-soft);margin:0 0 10px}.card-name{font:500 30px/1.05 var(--sans);letter-spacing:-.025em;margin:0 0 6px}.card-meta{font:400 12px/1.5 var(--mono);color:var(--ink-soft);margin:0 0 18px}.card-note{font:400 16px/1.55 var(--sans);margin:0 0 16px}.card-photo{font-size:10.5px;color:var(--ink-soft);margin:4px 0 0}.card-photo a{color:inherit}.card-credit,.card-tip{font-size:12px;color:var(--ink-soft);margin:0}.card-tip{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.button.egg{margin-top:4px;border-color:var(--accent);color:var(--accent);font-size:13px;padding:10px 16px}.button.egg:hover{background:var(--accent);color:#fff}.stick{position:fixed;left:max(24px,env(safe-area-inset-left));bottom:max(28px,env(safe-area-inset-bottom));width:92px;height:92px;border-radius:50%;border:1px solid var(--line);background:#fbfaf759;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);touch-action:none;z-index:5}.stick-knob{position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:var(--ink);opacity:.45}@media(max-width:640px){.card{top:auto;bottom:max(16px,env(safe-area-inset-bottom));left:16px;right:16px;width:auto;transform:none;max-height:46vh;padding:22px 20px 18px;animation-name:sheet-in}@keyframes sheet-in{0%{opacity:0;transform:translateY(20px)}}.card-name{font-size:24px}.card-note{font-size:16px}body.card-open .stick,body.card-open .toolbar,body.card-open .hint{display:none}.toolbar{bottom:max(48px,env(safe-area-inset-bottom))}}.fortune{position:fixed;left:0;top:0;z-index:6;will-change:transform}.fortune-crack,.fortune-slip{position:absolute;left:0;top:0;transform:translate(-50%,-50%)}.fortune-crack{white-space:nowrap;animation:crack-in .6s .6s ease both}@keyframes crack-in{0%{opacity:0}}.fortune-slip{width:max-content;max-width:min(380px,calc(100vw - 40px));max-height:46vh;overflow-y:auto;padding:16px 22px;background:#fffdf8;border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);box-shadow:0 10px 30px #1f1d1a1f;text-align:center;animation:slip-out .6s ease both}@keyframes slip-out{0%{opacity:0;transform:translate(-50%,-30%) scale(.6) rotate(-4deg)}}.fortune-text{font:italic 400 19px/1.45 var(--serif);margin:0;white-space:pre-line;overflow-wrap:anywhere}.fortune-note{font-size:12px;line-height:1.5;color:var(--ink-soft);margin:10px 0 0}.fortune-note:empty{display:none}.fortune-text:not([hidden])+.fortune-link:not([hidden]){margin-top:12px}.fortune-link{display:block;color:inherit;text-decoration:none}.fortune-link span{display:block}.fortune-link-title{font:500 15px/1.35 var(--sans);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;transition:text-decoration-color .2s}.fortune-link:hover .fortune-link-title{text-decoration-color:currentColor}.fortune-link-host{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-top:6px}.fortune-link-host:after{content:" ↗"}
