#ui-root{z-index:10;pointer-events:none;font-family:var(--font-body);position:fixed;inset:0}#ui-root a,#ui-root button{pointer-events:auto}.topbar{z-index:20;pointer-events:none;position:fixed;top:0;left:0;right:0}.topbar-inner{pointer-events:auto;background:linear-gradient(to bottom, var(--topbar-bg), transparent);-webkit-backdrop-filter:blur(10px);transition:background .4s var(--ease-soft);border-bottom:none;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;padding:10px clamp(14px,4vw,32px);display:flex}.brand{flex-direction:column;flex:none;gap:1px;min-width:0;display:flex}.wordmark{font-family:var(--font-head);letter-spacing:.01em;color:var(--ink);white-space:nowrap;align-items:center;gap:8px;font-size:clamp(16px,2.6vw,20px);font-weight:700;display:flex}.wordmark:before{content:"";background:var(--accent);width:9px;height:9px;box-shadow:0 0 10px 2px var(--glow-ring);border-radius:50%;flex:none}.powered-by{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-faint);border-bottom:1px dotted var(--ink-faint);white-space:nowrap;transition:color .2s var(--ease-soft), border-color .2s var(--ease-soft);align-self:flex-start;margin-left:17px;font-size:9.5px;text-decoration:none}.powered-by:hover{color:var(--accent-ink);border-color:var(--accent-ink)}.topbar-controls{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.icon-btn{border:1px solid var(--panel-border);background:var(--chip-bg);width:40px;height:40px;color:var(--ink);cursor:pointer;transition:background .2s var(--ease-soft), transform .15s var(--ease-soft), border-color .2s var(--ease-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--chip-bg-hover)}.icon-btn:active{transform:scale(.92)}.icon-btn svg{width:18px;height:18px}.icon-btn .icon-moon,:root[data-theme=day] .icon-btn .icon-sun{display:none}:root[data-theme=day] .icon-btn .icon-moon{display:inline-flex}.icon-btn .icon-sound-on,.icon-btn.is-muted .icon-sound-on{display:none}.icon-btn:not(.is-muted) .icon-sound-on,.icon-btn.is-muted .icon-sound-off{display:inline-flex}.icon-btn:not(.is-muted) .icon-sound-off{display:none}.skip-link{color:var(--ink-dim);border-bottom:1px dashed var(--ink-faint);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .35s var(--ease-soft), transform .35s var(--ease-soft), color .2s;padding-bottom:1px;font-size:12px;text-decoration:none;transform:translateY(-4px)}.skip-link:hover{color:var(--accent-light)}[data-returning="1"] .skip-link{opacity:1;pointer-events:auto;transform:none}.auth-buttons{opacity:0;pointer-events:none;transition:opacity .5s var(--ease-soft), transform .5s var(--ease-soft);align-items:center;gap:10px;display:flex;position:absolute;top:0;right:0;transform:translateY(-10px)scale(.98)}.auth-buttons.is-visible{opacity:1;pointer-events:auto;position:static;transform:none}.btn{border-radius:var(--radius-pill);min-height:48px;font-family:var(--font-body);letter-spacing:.01em;white-space:nowrap;cursor:pointer;isolation:isolate;transition:transform .15s var(--ease-soft);border:none;justify-content:center;align-items:center;padding:0 clamp(18px,3vw,28px);font-size:13px;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px}.btn:active{transform:translateY(1px)scale(.97)}.btn-ghost{background:var(--secondary-bg);color:var(--secondary-ink);border:1.5px solid var(--secondary-border);backdrop-filter:blur(8px)}.btn-ghost:hover{background:var(--secondary-bg-hover)}.btn-primary{color:#231104;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 100%)}.btn-primary:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(circle, var(--accent-light) 0%, transparent 70%);opacity:.55;pointer-events:none;animation:3.2s ease-in-out infinite btn-breathe;position:absolute;inset:-10px}.btn-primary:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(75deg,#0000 0%,#ffffffa6 45% 55%,#0000 100%);width:40%;height:200%;transition:none;position:absolute;top:-50%;left:-60%;transform:translate(-20%)skew(-10deg)}.btn-primary:hover:after{opacity:1;transition:transform .75s var(--ease-soft), opacity .75s var(--ease-soft);transform:translate(240%)skew(-10deg)}.btn-primary span{z-index:1;position:relative}@keyframes btn-breathe{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.75;transform:scale(1.12)}}.spark{z-index:60;background:var(--accent-light);width:6px;height:6px;box-shadow:0 0 6px 2px var(--glow-ring);pointer-events:none;will-change:transform, opacity;border-radius:50%;position:fixed}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-card);-webkit-backdrop-filter:blur(var(--panel-blur));box-shadow:var(--shadow-lift);transition:background .4s var(--ease-soft), border-color .4s var(--ease-soft)}.intro-panel{text-align:center;opacity:1;width:min(560px,86vw);transition:opacity .6s var(--ease-soft);pointer-events:none;padding:clamp(20px,4vw,36px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.intro-panel.is-hidden{opacity:0;transform:translate(-50%,-46%)}.intro-lines{flex-direction:column;justify-content:center;gap:10px;min-height:5.6em;display:flex}.intro-line{font-family:var(--font-lead);letter-spacing:-.01em;color:var(--ink);opacity:0;margin:0;font-size:clamp(17px,2.8vw,22px);font-weight:600;line-height:1.4}.intro-line.is-shown{opacity:1}.intro-line:first-child{font-family:var(--font-hand);letter-spacing:0;color:var(--accent-ink);font-size:clamp(24px,4vw,31px);font-weight:600;line-height:1.2}.intro-signature{font-family:var(--font-hand);color:var(--accent-ink);opacity:0;transition:opacity .6s var(--ease-soft);margin:20px 0 0;font-size:clamp(20px,3.6vw,26px);font-weight:600}.intro-signature.is-shown{opacity:1}.intro-signature:after{content:"";opacity:.8;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 108 11'%3E%3Cpath d='M2 6.5 C 16 1.5, 28 10, 42 5 C 56 0, 68 10.5, 82 4.5 C 90 1.5, 98 6, 106 3' fill='none' stroke='%23ff7a1a' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") 50%/contain no-repeat;width:108px;height:11px;margin:2px auto 0;display:block}.intro-cta{letter-spacing:.05em;color:var(--ink-dim);opacity:0;transition:opacity .5s var(--ease-soft);margin:14px 0 0;font-size:12px}.intro-cta.is-shown{opacity:1;animation:1.6s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.beats{pointer-events:none;position:fixed;inset:0}.beat-card{opacity:0;pointer-events:none;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-card);width:min(420px,86vw);max-width:420px;-webkit-backdrop-filter:blur(var(--panel-blur));box-shadow:var(--shadow-lift);transition:opacity .5s var(--ease-soft), transform .5s var(--ease-soft), background .4s var(--ease-soft), border-color .4s var(--ease-soft);padding:clamp(18px,3vw,26px);position:fixed;top:50%;left:clamp(18px,5vw,56px);transform:translate(-16px,-50%)}.beat-card.is-active{opacity:1;pointer-events:auto;transform:translateY(-50%)}.beat-tag{border-radius:var(--radius-pill);background:var(--chip-bg);border:1px solid var(--chip-border);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 10px;padding:4px 12px;font-size:10.5px;display:inline-block}.beat-title{font-family:var(--font-head);color:var(--ink);margin:0 0 10px;font-size:clamp(19px,3vw,27px);font-weight:700;line-height:1.25}.beat-title .accent,.arrival-title .accent{color:var(--accent-ink);text-decoration:underline wavy var(--accent-ink);text-underline-offset:4px;text-decoration-thickness:2px;display:inline-block;transform:rotate(-3deg)}.beat-body{font-family:var(--font-lead);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:clamp(15px,2vw,18px);font-weight:500;line-height:1.5}.beat-quiz{border-top:1px solid var(--panel-border);margin-top:18px;padding-top:16px}.quiz-question{color:var(--ink);margin:0 0 12px;font-size:13px;font-weight:700}.quiz-options{flex-wrap:wrap;gap:8px;display:flex}.chip{isolation:isolate;border-radius:var(--radius-chip);background:var(--chip-bg);border:1.5px solid var(--chip-border);min-height:44px;color:var(--ink);font-family:var(--font-body);cursor:pointer;transition:background .2s var(--ease-soft), border-color .2s var(--ease-soft), transform .15s var(--ease-soft), color .2s var(--ease-soft), box-shadow .2s var(--ease-soft);padding:0 16px;font-size:12.5px;font-weight:700;position:relative}.chip:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 100%);-webkit-mask-composite:xor;opacity:.6;transition:opacity .2s var(--ease-soft);pointer-events:none;padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.chip:hover{background:var(--chip-bg-hover);transform:translateY(-1px)}.chip:hover:before{opacity:1}.chip:active{transform:scale(.96)}.chip.is-selected{background:var(--chip-bg-selected);border-color:var(--chip-border-selected);color:var(--chip-selected-ink);box-shadow:0 6px 18px -6px var(--glow-ring), 0 0 0 3px var(--glow-ring);animation:chip-pop .4s var(--ease-soft)}.chip.is-selected:before{opacity:0}.chip.is-selected:after{content:"✓";margin-left:7px;font-weight:900}.chip:disabled{cursor:default}.beat-quiz.is-answered .chip:not(.is-selected){border-color:var(--panel-border);color:var(--ink-dim);box-shadow:none;background:0 0}.beat-quiz.is-answered .chip:not(.is-selected):before{opacity:0}@keyframes chip-pop{0%{transform:scale(1)}45%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes chip-pulse{0%,to{box-shadow:0 0 0 0 var(--glow-ring);border-color:var(--chip-border)}50%{box-shadow:0 0 16px 3px var(--glow-ring);border-color:var(--accent-light)}}.beat-quiz.is-pulsing .quiz-options .chip:not(:disabled){animation:2.2s ease-in-out infinite chip-pulse}.beat-quiz.is-pulsing .quiz-options .chip:first-child{animation-delay:0s}.beat-quiz.is-pulsing .quiz-options .chip:nth-child(2){animation-delay:.14s}.beat-quiz.is-pulsing .quiz-options .chip:nth-child(3){animation-delay:.28s}.beat-quiz.is-pulsing .quiz-options .chip:nth-child(4){animation-delay:.42s}.beat-quiz.is-pulsing .quiz-options .chip:nth-child(5){animation-delay:.56s}.quiz-reply{color:var(--accent-ink);opacity:0;transition:opacity .4s var(--ease-soft);margin:14px 0 0;font-size:13px;line-height:1.5}.quiz-reply.is-shown{opacity:1}.quiz-hint{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-faint);opacity:0;transition:opacity .4s var(--ease-soft);margin:10px 0 0;font-size:11px}.quiz-hint.is-shown{opacity:1;animation:1.6s ease-in-out infinite bob}.arrival-overlay{z-index:30;opacity:0;pointer-events:none;transition:opacity .6s var(--ease-soft);background:linear-gradient(90deg,#00000080 0%,#00000047 32%,#0000 58%);justify-content:flex-start;align-items:center;padding:24px clamp(18px,5vw,56px);display:flex;position:fixed;inset:0}.arrival-overlay.is-visible{opacity:1}.arrival-panel{text-align:left;opacity:0;pointer-events:none;width:min(420px,86vw);transition:opacity .6s var(--ease-soft), transform .6s var(--ease-soft);padding:clamp(24px,4vw,34px);transform:translate(-16px,10px)scale(.98)}.arrival-overlay.is-visible .arrival-panel{opacity:1;pointer-events:auto;transform:none}.arrival-title{font-family:var(--font-head);color:var(--ink);margin:0 0 6px;font-size:clamp(24px,4vw,32px);font-weight:700;line-height:1.2}.arrival-powered-by{font-family:var(--font-mono);margin:0 0 14px;font-size:10.5px}.arrival-powered-by a{color:var(--ink-faint);border-bottom:1px dotted var(--ink-faint);transition:color .2s var(--ease-soft), border-color .2s var(--ease-soft);text-decoration:none}.arrival-powered-by a:hover{color:var(--accent-ink);border-color:var(--accent-ink)}.arrival-body{font-family:var(--font-lead);letter-spacing:-.01em;color:var(--ink);margin:0 0 14px;font-size:clamp(18px,2.2vw,21px);font-weight:600;line-height:1.4}.arrival-heard{color:var(--accent-ink);min-height:1.6em;margin:0 0 24px;font-size:12px;line-height:1.6}.arrival-heard:empty{display:none}.arrival-buttons{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;display:flex}.arrival-fine{color:var(--ink-faint);margin:20px 0 0;font-size:11px}.arrival-panel>*{opacity:0;transition:opacity .5s var(--ease-soft), transform .5s var(--ease-soft);transform:translateY(8px)}.arrival-overlay.is-visible .arrival-panel>*{opacity:1;transform:none}.arrival-panel>:first-child{transition-delay:50ms}.arrival-panel>:nth-child(2){transition-delay:.15s}.arrival-panel>:nth-child(3){transition-delay:.25s}.arrival-panel>:nth-child(4){transition-delay:.35s}.arrival-panel>:nth-child(5){transition-delay:.45s}.arrival-panel>:nth-child(6){transition-delay:.55s}.site-footer{z-index:5;pointer-events:none;position:fixed;bottom:12px;left:16px}.site-footer a{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-faint);border-bottom:1px dotted var(--ink-faint);opacity:.7;transition:opacity .2s var(--ease-soft), color .2s var(--ease-soft);font-size:10px;text-decoration:none}.site-footer a:hover{opacity:1;color:var(--accent-ink)}@media (width<=720px){.beat-card{width:auto;max-width:none;max-height:45vh;padding:16px 18px;inset:auto 10px 10px;overflow:hidden;transform:translateY(16px)}.beat-card.is-active{transform:translateY(0)}.beat-title{margin-bottom:6px;font-size:17px}.beat-body{font-size:15px;line-height:1.45}.beat-quiz{margin-top:10px;padding-top:10px}.quiz-question{margin-bottom:8px;font-size:12.5px}.chip{min-height:44px;padding:0 14px;font-size:12.5px}.quiz-reply{margin-top:8px;font-size:12px;line-height:1.5}.topbar-inner{padding:8px 14px}.skip-link{display:none}.powered-by{margin-left:15px;font-size:9px}.topbar-controls{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}.auth-buttons{flex-wrap:wrap;flex-basis:100%;justify-content:flex-end;gap:6px}.btn{min-height:44px;padding:0 14px;font-size:11.5px}.arrival-overlay{background:linear-gradient(#0000 0%,#00000073 50%,#000000c7 100%);justify-content:center;align-items:flex-end;padding:0}.arrival-panel{width:100%;max-width:none;max-height:74vh;padding:22px 20px calc(22px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;overflow-y:auto;transform:translateY(28px)}.arrival-overlay.is-visible .arrival-panel{transform:none}.arrival-buttons{flex-direction:column;align-items:stretch}.arrival-buttons .btn{width:100%}.site-footer{display:none}}@media (prefers-reduced-motion:reduce){.btn-primary:before,.intro-cta.is-shown,.quiz-hint.is-shown,.chip.is-selected,.beat-quiz.is-pulsing .quiz-options .chip{animation:none}}
