*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.underline{text-decoration-line:underline}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\[k\:string\]{k:string}:root{color-scheme:dark;--bg:#06030e;--bg2:#150829;--panel:#150a2e;--panel2:#1f1044;--line:#3d2472;--ink:#f5f3ff;--muted:#b3a8d9;--purple:#a855f7;--purple-lt:#d8b4fe;--pink:#f0569f;--cyan:#3ec6f5;--green:#4ade80;--amber:#fbbf24;--orange:#fb923c;--red:#fb7185;--radius:20px;--btn1:#c084fc;--btn2:#a855f7;--btn3:#7c3aed;--btn-ink:#fff;--btn-glow:rgba(139,92,246,.45);--btn-glow2:rgba(168,85,247,.55);--btn-edge:rgba(88,28,175,.55)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(1200px 500px at 80% -10%,rgba(168,85,247,.22),transparent 60%),radial-gradient(900px 480px at 10% 0,rgba(62,198,245,.1),transparent 60%),radial-gradient(900px 520px at 50% 115%,rgba(240,86,159,.12),transparent 60%),var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,SF Pro Text,Inter,sans-serif;min-height:100vh}a,button{touch-action:manipulation}a{color:inherit;text-decoration:none}.panel{background:linear-gradient(180deg,var(--panel2),var(--panel));box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.05)}.panel,.panel-flat{border:1px solid var(--line);border-radius:var(--radius)}.panel-flat{background:var(--panel)}.muted{color:var(--muted)}.boot-shell{padding:34px 24px}.boot-shell,.boot-shell-bare{display:flex;align-items:center;justify-content:center}.boot-shell-bare{padding:44px 0}.boot-logo{width:64px;height:64px;border-radius:16px;animation:bootPulse 1.6s ease-in-out infinite}@keyframes bootPulse{0%,to{opacity:.45;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.boot-logo{animation:none;opacity:.8}}.tag{display:inline-flex;align-items:center;gap:6px;border:1px solid #4a3b69;border-radius:999px;padding:5px 12px;color:var(--purple-lt);font-size:11.5px;font-weight:800;letter-spacing:.08em;background:rgba(139,92,246,.08);white-space:nowrap}.tag.cy{border-color:#155e75;color:#67e8f9;background:rgba(34,211,238,.08)}.tag.gr{border-color:#14532d;color:#86efac;background:rgba(74,222,128,.08)}.tag.am{border-color:#713f12;color:#fcd34d;background:rgba(251,191,36,.08)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border:0;border-radius:16px;cursor:pointer;background:linear-gradient(180deg,var(--btn1),var(--btn2) 55%,var(--btn3));color:var(--btn-ink);font-weight:850;font-size:16px;letter-spacing:.01em;box-shadow:0 6px 24px var(--btn-glow),0 14px 34px -8px var(--btn-glow2),inset 0 1px 0 hsla(0,0%,100%,.25),inset 0 -2px 0 var(--btn-edge);transition:transform .08s ease,box-shadow .2s ease,filter .2s ease}.btn:hover{filter:brightness(1.08)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:default;transform:none}.chain-show-btn{transition:background .45s ease,box-shadow .45s ease,filter .45s ease,opacity .45s ease,transform .08s ease}.chain-show-btn.is-building{background:linear-gradient(180deg,#55506e,#403c55 55%,#322e45);box-shadow:none;color:#b3aed0}@media (prefers-reduced-motion:reduce){.chain-show-btn{transition:none}}@keyframes buildDotPulse{0%,60%,to{opacity:.2}30%{opacity:1}}.build-dots span{animation:buildDotPulse 1.2s ease-in-out infinite}.build-dots span:nth-child(2){animation-delay:.2s}.build-dots span:nth-child(3){animation-delay:.4s}@media (prefers-reduced-motion:reduce){.build-dots span{animation:none;opacity:1}}.btn.ghost{background:rgba(139,92,246,.1);border:1px solid #4a3b69;color:var(--purple-lt);box-shadow:none}.btn.cy{background:linear-gradient(180deg,#67e8f9,#22d3ee 60%,#0891b2);box-shadow:0 6px 24px rgba(34,211,238,.35),inset 0 1px 0 hsla(0,0%,100%,.25)}.hud{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hud-tile{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:16px;padding:12px 10px;text-align:center;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05)}.hud-num{font-size:24px;font-weight:900;letter-spacing:-.02em;line-height:1.1}.hud-label{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.06em;margin-top:4px}.streak-hot{animation:streakPulse 1.6s ease-in-out infinite;border-color:#7c4a12!important;box-shadow:0 0 24px rgba(251,146,60,.35),inset 0 1px 0 hsla(0,0%,100%,.08)!important}@keyframes streakPulse{0%,to{box-shadow:0 0 12px rgba(251,146,60,.25)}50%{box-shadow:0 0 30px rgba(251,146,60,.55)}}.streak-pop{animation:streakPop .7s cubic-bezier(.22,1,.36,1)}@keyframes streakPop{0%{transform:scale(1)}35%{transform:scale(1.22) rotate(-4deg)}60%{transform:scale(1.06) rotate(2deg)}to{transform:scale(1) rotate(0deg)}}.xp-track{height:12px;background:#170b31;border:1px solid var(--line);overflow:hidden;margin-top:10px}.xp-fill,.xp-track{border-radius:99px;position:relative}.xp-fill{height:100%;background:linear-gradient(90deg,#3ec6f5,#a855f7 55%,#f0569f);transition:width 1.1s cubic-bezier(.22,1,.36,1)}.xp-fill:after{content:"";position:absolute;inset:0;border-radius:99px;background:linear-gradient(110deg,transparent 30%,hsla(0,0%,100%,.45) 50%,transparent 70%);background-size:200% 100%;animation:shimmer 2.2s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.coach-row{display:flex;gap:14px;align-items:flex-end}.coach-img{width:88px;height:88px;border-radius:28px;flex:none;border:2px solid #4a3b69;animation:coachBob 3.2s ease-in-out infinite;box-shadow:0 8px 24px rgba(0,0,0,.4)}.coach-img,.speech{background:var(--panel2)}.speech{position:relative;border:1px solid var(--line);color:var(--ink);border-radius:16px 16px 16px 4px;padding:12px 16px;font-size:15px;line-height:1.5;flex:1}.speech:before{content:"";position:absolute;left:-8px;bottom:18px;width:14px;height:14px;background:var(--panel2);border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg)}.speech-fade{animation:greetFadeIn .35s ease-out both}@keyframes greetFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.speech-fade{animation:none}}.speech-stack{display:grid}.speech-stack>*{grid-area:1/1}.speech-cross-in{animation:crossIn .16s ease-out both}.speech-cross-out{animation:crossOut .16s ease-in both;pointer-events:none}.speech-cross-wait{visibility:hidden}@keyframes crossIn{0%{opacity:0}to{opacity:1}}@keyframes crossOut{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.speech-cross-in,.speech-cross-out{animation:none}}.speech-scroll{max-height:150px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#5b4a8a transparent}.speech-scroll::-webkit-scrollbar{width:5px}.speech-scroll::-webkit-scrollbar-track{background:transparent}.speech-scroll::-webkit-scrollbar-thumb{background:#5b4a8a;border-radius:99px}.card-fade{animation:cardFadeIn .35s ease both}@keyframes cardFadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.card-fade{animation:none}}.vault-book{border-radius:8px;border:1px solid rgba(213,128,228,.28);box-shadow:0 16px 34px rgba(0,0,0,.55);transform:rotate(-2deg);animation:vaultFloat 6s ease-in-out infinite}@keyframes vaultFloat{0%,to{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-5px)}}@media (prefers-reduced-motion:reduce){.vault-book{animation:none}}.star-next{color:#fbbf24;display:inline-block;animation:starPulse 1.6s ease-in-out infinite}@keyframes starPulse{0%,to{opacity:.5;transform:scale(1);text-shadow:0 0 2px rgba(251,191,36,.4)}50%{opacity:1;transform:scale(1.28);text-shadow:0 0 10px rgba(251,191,36,.95)}}@media (prefers-reduced-motion:reduce){.star-next{animation:none;opacity:1;text-shadow:0 0 8px rgba(251,191,36,.85)}}.gym-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:99px;font-size:13.5px;font-weight:800;color:#e9d5ff;text-decoration:none;white-space:nowrap;border:1px solid rgba(213,128,228,.55);background:rgba(139,92,246,.13);box-shadow:0 8px 20px -10px rgba(168,85,247,.65);animation:badgeFloat 3.4s ease-in-out infinite}.gym-badge:hover{background:rgba(139,92,246,.24);border-color:rgba(213,128,228,.85)}@keyframes badgeFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.gym-badge{animation:none}}.hint-coach{margin-top:22px;animation:hintPop .38s cubic-bezier(.2,1.4,.4,1)}@keyframes hintPop{0%{opacity:0;transform:translateY(12px) scale(.92)}to{opacity:1;transform:none}}.hint-coach-btn{display:flex;align-items:flex-end;gap:12px;width:100%;background:none;border:none;cursor:pointer;padding:0;color:inherit;text-align:left;animation:hintBob 3s ease-in-out infinite}@keyframes hintBob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.egg-bob{animation:hintBob 3s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.egg-bob{animation:none}}.hint-coach-img{width:54px;height:54px;border-radius:16px;flex:0 0 auto;border:2px solid #4a3b69;background:var(--panel2);box-shadow:0 8px 24px rgba(0,0,0,.4)}.opt{display:block;width:100%;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;text-align:left;padding:16px;border-radius:16px;cursor:pointer;background:var(--panel);border:1px solid var(--line);color:var(--ink);font-size:16px;transition:transform .08s ease,border-color .15s ease,background .15s ease}.opt:hover:not(:disabled){border-color:#6d5bb5;background:var(--panel2)}.opt:active:not(:disabled){transform:scale(.98)}.opt.picked{border-color:var(--purple);background:rgba(139,92,246,.12);box-shadow:0 0 0 1px var(--purple)}.opt.right{border-color:var(--green);background:rgba(74,222,128,.12);box-shadow:0 0 0 1px var(--green);animation:popIn .35s cubic-bezier(.22,1.4,.36,1)}.opt.wrong{border-color:var(--red);background:rgba(251,113,133,.1);box-shadow:0 0 0 1px var(--red);animation:shake .4s ease}@keyframes popIn{0%{transform:scale(.96)}60%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}.q-progress{height:10px;background:#170b31;border:1px solid var(--line);border-radius:99px;overflow:hidden}.q-progress>div{height:100%;border-radius:99px;background:linear-gradient(90deg,#8b5cf6,#22d3ee);transition:width .5s cubic-bezier(.22,1,.36,1)}.streak-pill{display:inline-flex;align-items:center;gap:6px;font-weight:900;font-size:14px;color:#fdba74;background:rgba(251,146,60,.12);border:1px solid #7c4a12;border-radius:999px;padding:6px 14px;animation:popIn .3s cubic-bezier(.22,1.4,.36,1)}.feedback{padding:16px;margin-top:16px;border-radius:14px;animation:slideUp .3s ease;border:1px solid}.feedback.good{background:rgba(74,222,128,.1);border-color:#14532d;color:#86efac}.feedback.bad{background:rgba(251,113,133,.08);border-color:#5b2333;color:#f4c7dc}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.modal-veil{position:fixed;inset:0;z-index:60;background:rgba(5,7,14,.78);display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .25s ease;backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{max-width:380px;width:100%;text-align:center;padding:32px 28px;animation:modalPop .45s cubic-bezier(.22,1.4,.36,1)}@keyframes modalPop{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:none}}.rank-crest{width:110px;height:110px;margin:0 auto 8px;border-radius:36px;display:flex;align-items:center;justify-content:center;font-size:52px;background:linear-gradient(160deg,#2b2350,#171d38);border:2px solid var(--purple);box-shadow:0 0 40px rgba(139,92,246,.5);animation:crestSpin 1s cubic-bezier(.22,1.4,.36,1)}@keyframes crestSpin{0%{transform:rotate(-14deg) scale(.7)}to{transform:none}}.tile{transition:transform .12s ease,box-shadow .2s ease}.tile:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.45),0 0 0 1px #4a3b69}.tile.mastered{border-color:#14532d!important;box-shadow:0 0 18px rgba(74,222,128,.18)}.tile img{border-radius:12px;border:1px solid var(--line);background:#170b31}.hero-shot{border-radius:18px;border:1px solid var(--line);box-shadow:0 16px 44px rgba(0,0,0,.5);background:#170b31}.knob-chip{display:inline-block;border:1px solid #155e75;color:#67e8f9;background:rgba(34,211,238,.08);border-radius:10px;padding:6px 12px;font-size:13px;font-weight:800;margin:0 8px 8px 0}.lesson-sec h2{font-size:21px;margin:0 0 8px;letter-spacing:-.01em}.lesson-sec p{line-height:1.8;color:#d9d5f2;margin:0}.lesson-sec.gem{border-color:#5b4a8a!important;background:linear-gradient(180deg,rgba(139,92,246,.14),var(--panel))!important}.lesson-sec.warn{border-color:#5b3a4a!important}.timer-track{height:12px;background:#170b31;border:1px solid var(--line);border-radius:99px;overflow:hidden}.timer-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#22d3ee,#8b5cf6);transition:width 1s linear}.timer-fill.low{background:linear-gradient(90deg,#fb7185,#fb923c)}.key-btn{padding:18px 10px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:var(--ink);font-weight:800;font-size:14px;cursor:pointer;transition:transform .08s ease,border-color .15s}.key-btn:hover:not(:disabled){border-color:#6d5bb5}.key-btn:active:not(:disabled){transform:scale(.95)}.key-btn.right{border-color:var(--green);background:rgba(74,222,128,.14);box-shadow:0 0 0 1px var(--green)}.key-btn.wrong{border-color:var(--red);background:rgba(251,113,133,.1);box-shadow:0 0 0 1px var(--red)}.float-in{animation:slideUp .4s ease}@keyframes lessonDoneIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.lesson-done-in{animation:lessonDoneIn .6s ease both}@media (prefers-reduced-motion:reduce){.lesson-done-in{animation:none}}.count-flip{display:inline-block;min-width:2ch}.wizard{min-height:70vh;display:flex;flex-direction:column;justify-content:center}.wizard-step{animation:emerge .55s cubic-bezier(.22,1,.36,1)}@keyframes emerge{0%{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}.name-input{width:100%;padding:16px 18px;font-size:18px;border-radius:16px;background:var(--panel);border:1px solid var(--line);color:var(--ink);outline:none}.name-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(139,92,246,.25)}.slot-name{display:inline-block;animation:slotPop .18s ease}@keyframes slotPop{0%{transform:scale(.9);filter:blur(3px);opacity:.4}to{transform:none;filter:none;opacity:1}}.slot-name.land{animation:slotLand .5s cubic-bezier(.22,1.4,.36,1)}@keyframes slotLand{0%{transform:scale(1.14)}55%{transform:scale(.97)}to{transform:scale(1)}}.pong-vs{font-size:46px;font-weight:900;font-style:italic;letter-spacing:-.02em;color:#fbbf24;text-shadow:0 4px 26px rgba(251,191,36,.5);animation:vsSlam .38s cubic-bezier(.22,1.3,.36,1)}@keyframes vsSlam{0%{transform:scale(2.8) rotate(-10deg);opacity:0}55%{transform:scale(.92) rotate(2deg);opacity:1}to{transform:scale(1) rotate(0)}}.pong-hero{animation:popIn .45s ease}.pong-tick{animation:slotPop .16s ease}.pong-land{animation:slotLand .5s cubic-bezier(.22,1.4,.36,1)}.pong-count{font-size:96px;font-weight:900;font-style:italic;letter-spacing:-.02em;line-height:1;text-shadow:0 6px 34px rgba(0,0,0,.6);animation:countBeat .45s ease}@keyframes countBeat{0%{transform:scale(1.8) rotate(-6deg);opacity:0}30%{opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@media (prefers-reduced-motion:reduce){.pong-count,.pong-hero,.pong-land,.pong-tick,.pong-vs{animation:none}}.pong-board{overscroll-behavior:none;width:min(100%,480px,46vh);width:min(100%,480px,46dvh);margin-inline:auto}.pong-board,.pong-board canvas{touch-action:none}.dice-rolling{display:inline-block;animation:diceRoll .5s linear infinite}@keyframes diceRoll{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.25)}to{transform:rotate(1turn) scale(1)}}.slot-coach{display:flex;gap:12px;align-items:center;height:84px;margin:12px 4px 0;animation:coachFadeIn .5s ease both}@keyframes coachFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slot-coach-pic{width:60px;height:60px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex:none;border:2px solid var(--purple);box-shadow:0 0 16px rgba(168,85,247,.55);animation:coachBob 2.6s ease-in-out infinite}@keyframes coachBob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.slot-bubble{position:relative;background:var(--panel2);border:1px solid var(--line);border-radius:16px;border-bottom-left-radius:4px;padding:10px 14px;font-size:14.5px;font-weight:600;line-height:1.45;color:#e9e5ff;animation:slideUp .25s ease;flex:1;align-self:stretch;display:flex;align-items:center}.slot-cabinet{position:relative;border-radius:26px;padding:16px 14px 14px;overflow:hidden;background:linear-gradient(180deg,#1e1040,#120826 55%,#0c051e);border:2px solid #6d5bb5;box-shadow:0 18px 44px rgba(0,0,0,.55),0 0 0 1px #241547,0 0 34px rgba(168,85,247,.16),inset 0 1px 0 hsla(0,0%,100%,.07)}.cab-marquee{position:relative;display:flex;justify-content:center;margin-bottom:12px}.cab-sign{max-width:72%;padding:9px 30px 11px;text-align:center;white-space:nowrap;overflow:hidden;border:2px solid #c9a227;border-radius:60px 60px 14px 14px;background:linear-gradient(180deg,#2a1653,#170b31);color:#f3d27a;font-weight:900;font-size:19px;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 0 14px hsla(43,73%,66%,.45);box-shadow:0 0 18px rgba(201,162,39,.25),inset 0 0 14px rgba(201,162,39,.12)}.cab-sound{position:absolute;left:0;top:0;width:34px;height:34px;padding:0;z-index:2;display:grid;place-items:center;border-radius:10px;cursor:pointer;background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.09);color:#8e8ea6}.cab-sound.off{color:#5d5d75}.cab-frame{position:relative;padding:18px;border-radius:18px;background:rgba(0,0,0,.18);border:1px solid rgba(109,91,181,.35)}.cab-bulbs{position:absolute;display:flex;pointer-events:none}.cab-bulbs span{width:7px;height:7px;border-radius:99px;background:#352a5e;flex:none;animation:bulbChase 1.7s ease-in-out infinite alternate}.cab-bulbs span:nth-child(2n){animation-delay:.85s}.cab-bulbs-x{left:14px;right:14px;justify-content:space-between}.cab-bulbs-top{top:5px}.cab-bulbs-bottom{bottom:5px}.cab-bulbs-y{top:20px;bottom:20px;flex-direction:column;justify-content:space-between}.cab-bulbs-left{left:5px}.cab-bulbs-right{right:5px}.cab-frame.spinning .cab-bulbs span{animation-duration:.42s}.cab-frame.spinning .cab-bulbs span:nth-child(2n){animation-delay:.21s}.cab-frame.landed .cab-bulbs span{animation:none;background:#f0abfc;box-shadow:0 0 9px 2px rgba(240,171,252,.75)}@keyframes bulbChase{0%{background:#4c3480;box-shadow:none}to{background:#f0abfc;box-shadow:0 0 9px 2px rgba(240,171,252,.75)}}.cab-window{position:relative;border:2px solid #4c3480;border-radius:16px;background:radial-gradient(120% 160% at 50% 0,#171040 0,#07051a 70%);padding:16px 12px 14px;text-align:center;overflow:hidden;height:304px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transition:box-shadow .3s ease,border-color .3s ease}.cab-frame.spinning .cab-window{border-color:var(--purple);box-shadow:0 0 22px rgba(168,85,247,.45),inset 0 0 26px rgba(168,85,247,.16)}.cab-frame.landed .cab-window{border-color:#d8b4fe;box-shadow:0 0 34px rgba(168,85,247,.75),0 0 70px rgba(240,86,159,.3),inset 0 0 30px rgba(168,85,247,.22);animation:windowFlash .5s ease}@keyframes windowFlash{0%{filter:brightness(1.9)}to{filter:brightness(1)}}.cab-picbox{height:168px;width:100%;flex:none;display:flex;align-items:center;justify-content:center}.cab-pic{max-width:100%;max-height:168px;width:auto;border-radius:12px;border:1px solid var(--line);background:#170b31;box-shadow:0 10px 26px rgba(0,0,0,.45)}.cab-pic.tick{animation:reelTick .13s ease}.cab-picname{font-size:31px;font-weight:900;letter-spacing:-.02em;line-height:1.15;color:#fff;text-shadow:0 0 18px rgba(168,85,247,.65);text-align:center;overflow-wrap:break-word;max-width:100%;padding:0 8px}.cab-picname.tick{animation:reelTick .13s ease}.cab-picname.land{animation:slotLand .55s cubic-bezier(.22,1.4,.36,1)}.cab-reel{font-size:29px;font-weight:900;letter-spacing:-.02em;line-height:1.15;color:#fff;text-shadow:0 0 18px rgba(168,85,247,.65);overflow-wrap:break-word;max-width:100%}.cab-reel.tick{animation:reelTick .13s ease}.cab-reel.land{animation:slotLand .55s cubic-bezier(.22,1.4,.36,1)}@keyframes reelTick{0%{transform:translateY(55%);opacity:0;filter:blur(3px)}to{transform:none;opacity:1;filter:none}}.cab-cat{font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--purple-lt)}.cab-start-off{opacity:.38;filter:grayscale(.75);pointer-events:none;cursor:not-allowed;box-shadow:none;transform:none}.cab-deck{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:14px;flex-wrap:wrap;width:-moz-fit-content;width:fit-content;max-width:100%;margin:14px auto 0;background:rgba(0,0,0,.28);border:1px solid hsla(0,0%,100%,.07);border-radius:16px;padding:14px 12px;box-shadow:inset 0 2px 8px rgba(0,0,0,.5),inset 0 -1px 0 hsla(0,0%,100%,.06)}.cab-deck-main{display:flex;flex-direction:column;height:104px;text-align:center}.cab-spin{flex:1 1 auto;width:100%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.02rem;letter-spacing:.01em;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4);background:linear-gradient(180deg,#f2604f,#cf2e2e 52%,#9c1f1f);border:2px solid rgba(255,205,120,.5);border-radius:14px;padding:15px 26px;cursor:pointer;box-shadow:0 6px 0 #5f1212,0 16px 26px -10px rgba(0,0,0,.65),inset 0 2px 0 hsla(0,0%,100%,.35);transition:transform .12s ease,box-shadow .12s ease,opacity .2s ease}.cab-spin:hover{transform:translateY(-1px);box-shadow:0 7px 0 #5f1212,0 18px 28px -10px rgba(0,0,0,.65),inset 0 2px 0 hsla(0,0%,100%,.35)}.cab-spin:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px 0 #5f1212,0 8px 14px -8px rgba(0,0,0,.6),inset 0 2px 0 hsla(0,0%,100%,.3)}.cab-spin:disabled{opacity:.6;cursor:wait}.cab-spin.locked{background:var(--panel2);color:var(--muted);border:1px solid var(--line);box-shadow:none;text-shadow:none;opacity:.85;cursor:not-allowed}.cab-spin.locked:hover{transform:none;box-shadow:none}.cab-caption{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.7rem;font-weight:500;letter-spacing:.05em;color:var(--muted);margin:9px 0 0;min-height:16px;text-align:center}.cab-lever{position:relative;display:block;flex:none;width:46px;height:104px;padding:0;background:none;border:none;cursor:pointer;z-index:5;-webkit-tap-highlight-color:transparent}.cab-lever:focus-visible{outline:2px solid #fbbf24;outline-offset:3px;border-radius:12px}.cab-lever:disabled{cursor:not-allowed}.cab-lever-base{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fdfdff,#cfcfdf 38%,#83839a 72%,#4c4c62);border:1px solid rgba(20,12,40,.55);box-shadow:inset 0 -6px 10px rgba(0,0,0,.35),inset 0 3px 6px hsla(0,0%,100%,.65),0 10px 18px -6px rgba(0,0,0,.75)}.cab-lever-base:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:15px;height:15px;border-radius:50%;background:radial-gradient(circle at 36% 30%,#f4f4fa,#9a9ab0 55%,#55556c);box-shadow:inset 0 -2px 4px rgba(0,0,0,.4),0 1px 3px rgba(0,0,0,.5)}.cab-lever-pivot{position:absolute;left:50%;bottom:21px;width:10px;height:66px;margin-left:-5px;transform-origin:50% 100%;transition:transform .55s cubic-bezier(.22,1,.36,1)}.cab-lever-rod{bottom:0;width:9px;height:50px;border-radius:5px;background:linear-gradient(90deg,#8f8fa8,#e8e8f2 45%,#7a7a92);box-shadow:0 2px 6px rgba(0,0,0,.5)}.cab-lever-ball,.cab-lever-rod{position:absolute;left:50%;transform:translateX(-50%)}.cab-lever-ball{top:-6px;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffd9d2,#ef4444 42%,#991b1b 78%,#450a0a);box-shadow:0 6px 14px -4px rgba(0,0,0,.65),0 0 16px -2px rgba(239,68,68,.45),inset 0 -4px 8px rgba(0,0,0,.35);transition:box-shadow .25s ease}.cab-lever:hover .cab-lever-ball{box-shadow:0 6px 14px -4px rgba(0,0,0,.65),0 0 24px 0 rgba(239,68,68,.65),inset 0 -4px 8px rgba(0,0,0,.35)}.cab-lever.pulled .cab-lever-pivot{transform:rotate(14deg) scaleY(.5);transition:transform .16s ease-in}.cab-lever.locked{opacity:.55;cursor:not-allowed}.cab-lever.locked .cab-lever-ball{filter:grayscale(.75)}@media (max-width:560px){.cab-deck{padding:12px 8px;gap:8px}.cab-spin{padding:14px 16px;font-size:.97rem}}@media (min-width:900px){.cab-deck{width:100%;align-items:flex-start}.cab-deck-main{flex:1 1 auto;height:auto}.cab-spin{flex:none;height:104px}}.hud4{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width:700px){.hud4{grid-template-columns:repeat(4,1fr)}}.site-nav{display:flex;gap:18px;font-size:15px;font-weight:700;align-items:center}@media (max-width:560px){.site-nav{gap:11px;font-size:14px}}.nav-links{display:flex;gap:18px;align-items:center}.nav-menu-btn{display:none}@media (max-width:560px){.nav-menu-wrap{position:relative;display:block}.nav-menu-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:2px;background:none;border:0;color:var(--ink);font-size:20px;cursor:pointer}.nav-links{display:none}.nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:2px;position:absolute;top:calc(100% + 8px);right:0;z-index:80;min-width:220px;padding:6px;border-radius:var(--radius);background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.05);animation:slideUp .18s ease}.nav-links.open a{display:block;padding:12px 14px;border-radius:12px}.nav-links.open a:hover{background:rgba(168,85,247,.14)}}.lang-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:80;min-width:190px;padding:6px;animation:slideUp .18s ease}.lang-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:0;border-radius:12px;background:none;color:var(--ink);font-size:15px;font-weight:700;cursor:pointer;text-align:left}.lang-menu button:hover{background:rgba(168,85,247,.14)}.tap-shake{animation:tapShake .24s ease}@keyframes tapShake{0%{transform:scale(1)}25%{transform:scale(.965) rotate(-1.3deg)}55%{transform:scale(1.012) rotate(1.1deg)}80%{transform:scale(.995) rotate(-.4deg)}to{transform:scale(1) rotate(0)}}.tour-veil{position:fixed;inset:0;z-index:65;background:rgba(4,6,12,.72);animation:fadeIn .3s ease;touch-action:none}.tour-spacer{height:55dvh}.tour-ring{position:absolute;z-index:66;border:2px solid var(--purple);border-radius:20px;pointer-events:none;box-shadow:0 0 0 4px rgba(139,92,246,.25),0 0 34px rgba(139,92,246,.45);transition:all .45s cubic-bezier(.22,1,.36,1);animation:tourPulse 1.8s ease-in-out infinite}@keyframes tourPulse{0%,to{box-shadow:0 0 0 4px rgba(139,92,246,.22),0 0 26px rgba(139,92,246,.35)}50%{box-shadow:0 0 0 7px rgba(139,92,246,.3),0 0 44px rgba(139,92,246,.6)}}.tour-card{position:fixed;z-index:67;animation:fadeIn .3s ease;padding:11px 14px}.tour-dock-main{display:flex;gap:11px;align-items:flex-start}.tour-dock-img{width:44px;height:44px;border-radius:13px;border:2px solid #4a3b69;-o-object-fit:cover;object-fit:cover;flex:none}.tour-dock-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.tour-dock-title{font-size:16px;line-height:1.3}.tour-dock-scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#5b4a8a transparent}.tour-dock-scroll::-webkit-scrollbar{width:5px}.tour-dock-scroll::-webkit-scrollbar-thumb{background:#5b4a8a;border-radius:99px}.tour-dock-scroll p{margin:0;line-height:1.5;color:#d9d5f2;font-size:14.5px}.tour-dock-btns{display:flex;gap:10px;align-items:center;margin-top:1px}.tour-dock-bottom{bottom:0;border-radius:18px 18px 0 0;border-bottom:0;padding-bottom:calc(10px + env(safe-area-inset-bottom))}.tour-dock-bottom,.tour-dock-top{left:0;right:0;border-left:0;border-right:0}.tour-dock-top{top:0;border-radius:0 0 18px 18px;border-top:0}.tour-dock-bottom .tour-dock-scroll,.tour-dock-top .tour-dock-scroll{max-height:64px}.tour-dock-right{right:14px}.tour-dock-left,.tour-dock-right{top:50%;transform:translateY(-50%);width:340px;max-height:min(360px,76vh)}.tour-dock-left{left:14px}.tour-dock-left .tour-dock-scroll,.tour-dock-right .tour-dock-scroll{max-height:240px}@media (min-width:900px){.tour-card{padding:14px 16px}.tour-dock-img{width:48px;height:48px;border-radius:14px}.tour-dock-bottom{bottom:14px}.tour-dock-bottom,.tour-dock-top{left:50%;right:auto;transform:translateX(-50%);width:560px;border-radius:20px;border:1px solid var(--line)}.tour-dock-top{top:14px}.tour-dock-bottom .tour-dock-scroll,.tour-dock-top .tour-dock-scroll{max-height:80px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.kbd{display:grid;gap:6px;max-width:560px;margin:14px auto 4px;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:none}.kbd-row{gap:6px}.kbd-row,.kcap{display:flex;justify-content:center}.kcap{flex:1;min-width:0;max-width:52px;height:46px;border-radius:10px;background:#1e123c;border:1.5px solid #472b85;color:#d3c2f7;font-weight:800;font-size:14px;flex-direction:column;align-items:center;gap:0;transition:all .06s;cursor:pointer;padding:2px;touch-action:none;-webkit-tap-highlight-color:transparent}.key-btn.tier-on{border-color:var(--purple);background:rgba(139,92,246,.16);box-shadow:0 0 0 1px var(--purple)}.kcap small{font-size:8px;font-weight:700;letter-spacing:.04em;color:#7783b8;text-transform:uppercase}.kcap.wide{max-width:190px;flex:2.4}.kcap.mod{max-width:74px;flex:1.35}.kcap.target{border-color:var(--purple);box-shadow:0 0 0 1.5px var(--purple),0 0 14px rgba(168,85,247,.45);animation:capPulse 1.1s ease-in-out infinite}.kcap.lit{background:#7c3aed;border-color:#c4b5fd;color:#fff;box-shadow:0 0 18px rgba(168,85,247,.85);transform:translateY(2px) scale(.96)}.kcap.lit small{color:#e9d5ff}.kcap.reveal{background:#7c3aed;border-color:#c4b5fd;color:#fff;box-shadow:0 0 18px rgba(168,85,247,.85)}.kcap.reveal small{color:#e9d5ff}.kcap.good{background:#16a34a!important;border-color:#4ade80!important;box-shadow:0 0 22px rgba(74,222,128,.8)!important}.kcap.bad,.kcap.good{color:#fff!important;animation:none}.kcap.bad{background:#b91c1c!important;border-color:#f87171!important}@keyframes capPulse{0%,to{box-shadow:0 0 0 1.5px var(--purple),0 0 8px rgba(168,85,247,.3)}50%{box-shadow:0 0 0 2px var(--purple),0 0 20px rgba(168,85,247,.65)}}.u-glow{height:3px;border-radius:99px;margin-top:10px;background:linear-gradient(90deg,transparent,#d580e4 30%,#a855f7 55%,#7c3aed 75%,transparent);box-shadow:0 0 14px rgba(168,85,247,.75),0 2px 22px rgba(124,58,237,.5)}.journey-card{max-width:440px;width:100%;max-height:88vh;overflow-y:auto;text-align:left;padding:26px 22px;animation:modalPop .45s cubic-bezier(.22,1.4,.36,1)}.journey-spine{position:relative;height:480px;margin-top:6px}.journey-rail{position:absolute;left:34px;top:44px;height:380px;width:6px;margin-left:-3px;border-radius:99px;background:#170b31;border:1px solid var(--line);overflow:hidden}.journey-rail-fill{width:100%;border-radius:99px;background:linear-gradient(180deg,#3ec6f5,#a855f7 55%,#f0569f);transition:height 1.1s cubic-bezier(.22,1,.36,1)}.journey-node{position:absolute;left:0;right:0;transform:translateY(-50%);gap:14px}.journey-crest,.journey-node{display:flex;align-items:center}.journey-crest{flex:none;justify-content:center;border-radius:50%;background:linear-gradient(160deg,var(--panel2),var(--panel));border:2px solid var(--line)}.journey-crest.c0{width:46px;height:46px;font-size:21px;margin:0 11px;border-color:#8a6d3b}.journey-crest.c1{width:52px;height:52px;font-size:24px;margin:0 8px;border-color:var(--purple);box-shadow:0 0 14px rgba(168,85,247,.3)}.journey-crest.c2{width:58px;height:58px;font-size:27px;margin:0 5px;border-color:#c084fc;box-shadow:0 0 20px rgba(168,85,247,.45)}.journey-crest.c3{width:62px;height:62px;font-size:30px;margin:0 3px;border-color:#d9a441;box-shadow:0 0 24px rgba(217,164,65,.35)}.journey-crest.c4{width:68px;height:68px;font-size:33px;border-color:var(--amber);box-shadow:0 0 32px rgba(251,191,36,.5);background:linear-gradient(160deg,#3a2c10,#1d1633)}.journey-node.dim{opacity:.55}.journey-marker{position:absolute;left:34px;transform:translate(-50%,-50%);z-index:3;width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid var(--purple);box-shadow:0 0 0 4px rgba(168,85,247,.25),0 0 16px rgba(168,85,247,.8);animation:markerPulse 1.8s ease-in-out infinite}@keyframes markerPulse{0%,to{box-shadow:0 0 0 3px rgba(168,85,247,.25),0 0 10px rgba(168,85,247,.6)}50%{box-shadow:0 0 0 7px rgba(168,85,247,.12),0 0 22px rgba(168,85,247,.95)}}.journey-marker-pill{position:absolute;left:86px;transform:translateY(-170%);z-index:3;background:linear-gradient(180deg,#c084fc,#a855f7 60%,#7c3aed);color:#fff;font-size:11.5px;font-weight:850;letter-spacing:.03em;white-space:nowrap;border-radius:999px;padding:4px 11px;box-shadow:0 6px 18px rgba(139,92,246,.5)}.journey-marker-pill.inflow{position:static;transform:none;display:inline-block;margin-top:6px}.journey-chip{display:inline-flex;align-items:center;gap:6px;margin-top:6px;border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:800;background:rgba(139,92,246,.07)}.journey-chip.earned{border-color:#7c5c1e;color:#fcd34d;box-shadow:0 0 14px rgba(251,191,36,.22);background:rgba(251,191,36,.07)}.journey-chip.locked{opacity:.6}.journey-trophy-row{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.journey-trophy-row.earned{border-color:#7c5c1e;box-shadow:0 0 14px rgba(251,191,36,.15)}.journey-trophy-row.locked{opacity:.5}.splash{position:fixed;inset:0;z-index:90;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:24px;text-align:center;cursor:pointer;transition:transform .65s cubic-bezier(.7,0,.3,1),opacity .35s ease}.splash.leaving{transform:translateY(-100%)}.splash.reduced{transition:opacity .35s ease}.splash.reduced.leaving{transform:none;opacity:0}.splash-logo{width:min(82vw,470px);height:auto;opacity:0;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.05)}.splash.started .splash-logo{animation:splashLogoIn 1.1s cubic-bezier(.22,1,.36,1) both,splashLogoShake .42s ease-out 1.1s forwards}@keyframes splashLogoIn{0%{opacity:0}to{opacity:1}}@keyframes splashLogoShake{0%{transform:rotate(0deg)}30%{transform:rotate(1.4deg)}60%{transform:rotate(-.9deg)}82%{transform:rotate(.35deg)}to{transform:rotate(0deg)}}@media (prefers-reduced-motion:reduce){.splash-logo{opacity:1}.splash-logo,.splash.started .splash-logo{animation:none}}.splash-coach{width:104px;height:104px;border-radius:33px;opacity:0}.splash.started .splash-coach{animation:splashFloat .9s ease-out .2s both}@keyframes splashFloat{0%{transform:translateY(34px);opacity:0}to{transform:translateY(0);opacity:1}}.splash-lines{display:grid;gap:10px}.splash-line{margin:0;opacity:0}.splash.started .splash-line{animation:splashLine .6s ease-out both}.splash-line.l1{animation-delay:.55s;font-size:27px;font-weight:800}.splash-line.l2{animation-delay:1.15s;font-size:19px}.splash-line.l3{animation-delay:1.75s;font-size:19px;color:var(--purple-lt)}@keyframes splashLine{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.splash-coach,.splash-line{animation:none;opacity:1}.splash.started .splash-coach,.splash.started .splash-line{animation:none}}.coach-word-link{color:var(--purple-lt);font-weight:800;text-decoration:underline;text-underline-offset:3px;display:inline-block;animation:wordJump 2.2s ease-in-out infinite}@keyframes wordJump{0%,72%,to{transform:translateY(0)}80%{transform:translateY(-3px)}88%{transform:translateY(0)}94%{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.coach-word-link{animation:none}}.coach-img.wobbling{animation:bobbleWobble .8s ease-out;transform-origin:50% 85%}@keyframes bobbleWobble{0%{transform:rotate(0)}15%{transform:rotate(-7deg)}32%{transform:rotate(6deg)}48%{transform:rotate(-4deg)}64%{transform:rotate(3deg)}80%{transform:rotate(-1.5deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.coach-img.wobbling{animation:none;transform:rotate(-4deg)}}.egg-wobble{animation:eggWobble 1s ease-in-out infinite;transform-origin:50% 90%}@keyframes eggWobble{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@media (prefers-reduced-motion:reduce){.egg-wobble{animation:none}}.hatch-egg{animation:eggWobble .45s ease-in-out infinite;transform-origin:50% 90%}.hatch-chick{animation:hatchPop .5s cubic-bezier(.2,1.6,.4,1) both}@keyframes hatchPop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion:reduce){.hatch-chick,.hatch-egg{animation:none}}.slot-cabinet.golden{border-color:#f5c542;box-shadow:0 0 34px rgba(245,197,66,.45);animation:goldenFlash 1.1s ease-out}@keyframes goldenFlash{0%{box-shadow:0 0 0 rgba(245,197,66,0)}30%{box-shadow:0 0 54px rgba(245,197,66,.85)}to{box-shadow:0 0 34px rgba(245,197,66,.45)}}@media (prefers-reduced-motion:reduce){.slot-cabinet.golden{animation:none}}.golden-note{text-align:center;margin-top:12px;font-weight:800;color:#f5c542;font-size:15px}.egg-counter{font-size:12.5px;font-weight:800;color:#9aa3c9;text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:4px 10px}.journey-trophy-row{position:relative}.egg-badge{position:absolute;top:-7px;right:-5px;font-size:12px;line-height:1;filter:none;z-index:1}html[data-theme=red]{--bg:#140409;--bg2:#2a0710;--panel:#22060d;--panel2:#320a14;--line:#5c1a26;--ink:#fff5f5;--muted:#d9a7ad;--purple:#e02030;--purple-lt:#ff9d9d;--pink:#f0569f;--cyan:#3ec6f5;--amber:#fbbf24;--orange:#fb923c;--btn1:#ef4444;--btn2:#dc2626;--btn3:#991b1b;--btn-ink:#fff;--btn-glow:rgba(220,38,38,.45);--btn-glow2:rgba(239,68,68,.5);--btn-edge:rgba(69,10,10,.55)}html[data-theme=red] body{background:radial-gradient(1200px 500px at 80% -10%,rgba(224,32,48,.22),transparent 60%),radial-gradient(900px 480px at 10% 0,rgba(240,86,159,.08),transparent 60%),radial-gradient(900px 520px at 50% 115%,rgba(224,32,48,.12),transparent 60%),var(--bg)}html[data-theme=blue]{--bg:#040b16;--bg2:#0a1e3a;--panel:#081527;--panel2:#0c2038;--line:#1e3a5f;--ink:#f0f9ff;--muted:#a8c4de;--purple:#7dd3fc;--purple-lt:#bae6fd;--pink:#e879c9;--cyan:#7dd3fc;--amber:#fbbf24;--orange:#fb923c;--btn1:#bae6fd;--btn2:#7dd3fc;--btn3:#38bdf8;--btn-ink:#07304f;--btn-glow:rgba(125,211,252,.35);--btn-glow2:rgba(125,211,252,.4);--btn-edge:rgba(7,48,79,.35)}html[data-theme=blue] body{background:radial-gradient(1200px 500px at 80% -10%,rgba(125,211,252,.16),transparent 60%),radial-gradient(900px 480px at 10% 0,rgba(125,211,252,.07),transparent 60%),radial-gradient(900px 520px at 50% 115%,rgba(56,130,246,.12),transparent 60%),var(--bg)}.theme-dots{display:inline-flex;gap:6px;align-items:center;padding:0}.theme-dot{width:17px;height:17px;border-radius:50%;cursor:pointer;padding:0;flex:none}