@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Comfortaa Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/comfortaa-cyrillic-wght-normal-D14l-6cu.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Comfortaa Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/comfortaa-latin-wght-normal-CLB3k12Y.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-wght-normal-DveCct9I.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--background: #0b1029;--surface: #171f40;--surface-raised: #222d56;--surface-hover: #303c6a;--ink: #f7f5ff;--muted: #bec8e5;--border: #475781;--accent: #ffda83;--accent-hover: #ffe7aa;--accent-ink: #30244a;--lavender: #b7a4ff;--cyan: #83eaf1;--focus: #93f4ef;--disabled-bg: #28324f;--disabled-ink: #9ca9c9;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--radius-control: 18px;--radius-panel: 32px;--radius-small: 12px;--touch-target: 56px;--text-small: .875rem;--text-body: 1rem;--text-button: 1.125rem;--text-number: clamp(44px, 5vw, 56px);--font-family: ui-rounded, "Segoe UI", system-ui, sans-serif;--shadow-panel: 0 18px 64px #03061666;--shadow-button: 0 4px 0 #95703c;--motion-fast: .14s;--motion-slow: .3s}:root{--color-space-950: #080728;--color-space-900: #0e0a3d;--color-space-800: #171052;--color-nebula-700: #3a1b7a;--color-panel-900: #15124d;--color-panel-800: #25206d;--color-panel-border: #7354d9;--color-violet-500: #8055e8;--color-violet-400: #a17bff;--color-blue-600: #1766cf;--color-blue-500: #2e8bff;--color-blue-300: #80c8ff;--color-gold-600: #e79e00;--color-gold-500: #ffbe1e;--color-gold-300: #ffe46d;--color-success-500: #45d58a;--color-error-soft: #f987a0;--color-text-primary: #ffffff;--color-text-secondary: #d7cdf7;--color-text-muted: #afa4d7;--color-text-on-gold: #1e173d;--shadow-panel: 0 16px 35px rgb(0 0 0 / 28%), inset 0 1px 0 rgb(255 255 255 / 16%);--shadow-button: 0 5px 0 rgb(13 8 57 / 50%), 0 10px 20px rgb(0 0 0 / 22%), inset 0 1px 0 rgb(255 255 255 / 26%);--shadow-button-pressed: 0 2px 0 rgb(13 8 57 / 45%), 0 4px 9px rgb(0 0 0 / 20%), inset 0 2px 5px rgb(0 0 0 / 18%);--shadow-gold-glow: 0 0 20px rgb(255 208 74 / 45%), 0 0 42px rgb(255 187 30 / 22%);--shadow-planet-glow: 0 0 12px rgb(255 231 100 / 85%), 0 0 28px rgb(255 192 50 / 65%);--radius-sm: 12px;--radius-md: 20px;--radius-lg: 28px;--radius-xl: 36px;--radius-pill: 999px;--tap-target-min: 56px;--content-max-width: 1180px}:root{--background: var(--color-space-950);--surface: var(--color-panel-900);--surface-raised: var(--color-panel-800);--surface-hover: var(--color-nebula-700);--ink: var(--color-text-primary);--muted: var(--color-text-secondary);--border: var(--color-panel-border);--accent: var(--color-gold-300);--accent-ink: var(--color-text-on-gold);--focus: var(--color-gold-300);--font-ui: "Nunito Variable", sans-serif;--font-heading: "Comfortaa Variable", "Nunito Variable", sans-serif;--font-math: "Rubik Variable", "Nunito Variable", sans-serif;--font-family: var(--font-ui);--text-small: 1rem;--shadow-violet-glow: 0 0 32px color-mix(in srgb, var(--color-violet-500) 35%, transparent);--planet-2: #f28cc4;--planet-3: #ff9a35;--planet-4: #39cbe5;--planet-5: #a5d65e;--planet-6: #b184ec;--planet-7: #ed7046;--planet-8: #429bef;--planet-9: #ffd35c;--art-white: var(--color-text-primary);--art-dark: var(--color-space-950);--art-cheek: var(--color-error-soft)}:root{--font-heading: "Nunito Variable", sans-serif;--planet-2: #ffd35c;--planet-3: #f28cc4;--planet-4: #ff9a35;--planet-5: #429bef;--planet-6: #a5d65e;--planet-7: #b184ec;--planet-8: #ed7046;--planet-9: #39cbe5;--color-paper: #f4edff;--color-paper-muted: #ddd0ef;--color-paper-ink: #35215c;--color-key-green: #59af30;--color-key-pink: #e53c9c;--color-key-cyan: #20a9b6;--color-stage-study: var(--color-gold-500);--color-stage-trainer: var(--color-blue-500);--color-stage-race: var(--color-violet-400);--color-stage-challenge: var(--color-key-cyan);--planet-screen-width: 1168px;--planet-screen-height: 784px;--planet-stage-card-radius: 26px;--planet-navigation-height: 105px;--study-screen-width: 1168px;--study-header-height: 150px;--study-navigation-height: 88px;--study-card-radius: 26px;--study-card-border: #7043d1;--study-control-purple: #6f34c6;--study-control-blue: #1686e9;--study-progress-height: 22px;--study-visual-star: #ffc622;--study-complete-cyan: #26d9fa;--trainer-success: #4fd86f;--trainer-error: #ff7e9e;--trainer-neutral: #7854df;--trainer-neutral-blue: #2589f4;--trainer-cta: #ffc932;--trainer-route-radius: 26px;--trainer-key-radius: 16px;--trainer-key-height: 58px;--trainer-progress-height: 18px;--trainer-panel-shadow: 0 16px 34px rgb(1 0 31 / 42%);--trainer-success-glow: 0 0 22px rgb(79 216 111 / 38%);--trainer-error-glow: 0 0 22px rgb(255 126 158 / 32%);--z-study-background: 0;--z-study-content: 2;--z-study-controls: 4}*{box-sizing:border-box}body{margin:0;min-width:360px;min-height:100vh;background:radial-gradient(ellipse at 75% 0%,#2b255b 0%,transparent 48%),radial-gradient(ellipse at 5% 60%,#142649 0%,transparent 48%),var(--background);color:var(--ink);font-family:var(--font-family);line-height:1.5}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#c8d6ff 1px,transparent 1.5px),radial-gradient(circle,#fce9b4 1.3px,transparent 1.8px);background-size:89px 113px,193px 167px;background-position:17px 29px,51px 83px;opacity:.35}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}svg{flex-shrink:0;vertical-align:middle}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}h1:focus{outline:none}.app-shell{max-width:1100px;margin:auto;padding:var(--space-5) var(--space-6)}.header,.header-tools,.toolbar,.actions{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.header{justify-content:space-between;padding-bottom:var(--space-5);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-target);font-weight:800;font-size:18px}.brand small{display:block;font-size:var(--text-small);font-weight:500;color:var(--muted)}.toolbar{margin:var(--space-5) 0}.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-3);padding:14px 24px;min-height:var(--touch-target);min-width:var(--touch-target);border-radius:var(--radius-control);border:2px solid var(--border);background:var(--surface-raised);color:var(--ink);font-size:var(--text-button);font-weight:750;line-height:1.35;transition:background var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.button:not(:disabled):hover{background:var(--surface-hover)}.button:not(:disabled):active{transform:translateY(2px)}.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:var(--shadow-button)}.button.primary:not(:disabled):hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.ghost,.button.subtle{background:#131b36}.button:disabled{background:var(--disabled-bg);color:var(--disabled-ink);border-color:var(--border);box-shadow:none;cursor:not-allowed}.icon-button{width:var(--touch-target);padding:var(--space-3)}.icon-button>span{display:inline-flex}.page{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:40px;min-height:450px}h1{font-size:clamp(30px,4vw,48px);line-height:1.15;max-width:720px;margin:0 0 var(--space-5);letter-spacing:-.025em}h2{font-size:clamp(22px,3vw,28px);line-height:1.25;margin:0 0 var(--space-5)}.description{max-width:580px;color:var(--muted);font-size:18px;margin:0}.actions{margin-top:var(--space-5)}.hero-orbit{display:flex;align-items:center;gap:var(--space-5);margin:var(--space-5) 0;font-size:var(--text-number);font-weight:800;color:var(--lavender)}.hero-planet{width:220px;height:190px;animation:float 7s ease-in-out infinite}@keyframes float{50%{transform:translateY(-8px) rotate(2deg)}}.planet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-6)}.planet-card{display:flex;align-items:center;flex-direction:column;gap:var(--space-3);border:1px solid var(--border);padding:var(--space-5) var(--space-3);border-radius:24px;text-align:center;background:var(--surface-raised)}.planet-card.available{background:#353052;border-color:#caa568}.planet-card.available:hover{background:#46395f}.planet-card>span:last-child{color:var(--muted);font-size:var(--text-small)}.planet-caption{display:flex;align-items:center;gap:var(--space-2)}.planet-caption svg{width:18px;height:18px}.planet{width:80px;height:80px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 28% 25%,#bac4eb,#7583b4 70%);color:#141c37;box-shadow:inset -8px -5px #34437144,0 0 22px #8a9ac511;font-size:36px;font-weight:800}.available .planet{background:radial-gradient(circle at 28% 25%,#ffe5a4,#dfad56 75%);box-shadow:inset -8px -5px #a5773d44,0 0 25px #e4bc4e22}.placeholder{display:flex;align-items:center;gap:var(--space-5);padding:28px;background:var(--surface-raised);border-radius:24px;margin-top:28px;color:var(--muted)}.sparkle{color:var(--lavender)}.sparkle svg{width:52px;height:52px}footer{text-align:center}footer nav{display:flex;flex-wrap:wrap;gap:var(--space-2) 20px;justify-content:center;padding-top:var(--space-5)}footer a{display:inline-flex;align-items:center;min-height:var(--touch-target);padding:var(--space-2);color:var(--muted);font-size:var(--text-small);font-weight:650}footer a.active{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.dev-link{font-weight:400;text-decoration:underline}.skip-link{visibility:hidden;position:fixed;top:-120px;left:var(--space-4);padding:var(--space-4);background:var(--surface-raised);z-index:2;border-radius:var(--radius-small)}.skip-link:focus{visibility:visible;top:var(--space-2)}.crystal-counter{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-2) var(--space-4);background:#132f45;border:1px solid #448799;border-radius:var(--radius-control);font-size:24px;font-weight:800;color:#bbf9ff;font-variant-numeric:tabular-nums;max-width:100%;overflow-wrap:anywhere}.progress{width:100%}.progress-label{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--muted);font-weight:650}.progress-track{height:18px;border:1px solid var(--border);border-radius:99px;padding:3px;background:#0c1530;overflow:hidden}.progress-fill{height:100%;border-radius:inherit;background:var(--lavender);transition:width var(--motion-slow) ease}.modal{color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);padding:var(--space-6);width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-shadow:var(--shadow-panel)}.modal::backdrop{background:#040819cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.modal-heading h2{padding-top:var(--space-3)}.modal-content p{color:var(--muted);font-size:18px;margin:0 0 var(--space-5)}.modal-content .button{width:100%}.number-pad{width:min(100%,330px);margin-inline:auto}.answer-label{display:block;text-align:center;color:var(--muted);font-weight:650;margin-bottom:var(--space-2)}.answer-display{width:100%;min-width:0;height:80px;padding:var(--space-2);text-align:center;background:#0d1633;border:2px solid #8499ce;border-radius:var(--radius-control);font-size:var(--text-number);font-weight:800;color:var(--ink);caret-color:transparent}.answer-display::placeholder{color:#a9b7dd}.input-hint{color:var(--muted);font-size:var(--text-small)}.number-pad .input-hint{text-align:center;margin:var(--space-3) 0 var(--space-4)}.number-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.number-grid .button{width:100%;min-height:64px;padding:var(--space-2)}.digit-key{font-size:28px}.key-decoration{display:grid;place-items:center;color:var(--lavender)}.submit-answer{width:100%;margin-top:var(--space-4)}.submit-status{text-align:center;color:var(--cyan);min-height:48px}.showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7);margin-top:var(--space-6)}.showcase-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5)}.showcase-controls h2,.showcase-controls .actions{margin:0}@media(max-width:800px){.planet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-grid{grid-template-columns:1fr}}@media(max-width:600px){.app-shell{padding:var(--space-4)}.header{gap:var(--space-2);padding-bottom:var(--space-4)}.brand{font-size:14px;gap:var(--space-2)}.brand img{width:36px;height:36px}.brand small{font-size:12px}.header-settings{width:var(--touch-target);padding:var(--space-3)}.header-settings span{display:none}.header-tools{gap:var(--space-2)}.toolbar{margin:var(--space-4) 0;gap:var(--space-3)}.toolbar .button{font-size:16px;padding:12px 16px}.page{padding:var(--space-5) 20px;border-radius:24px;min-height:400px}.description{font-size:var(--text-body)}.planet-grid{gap:var(--space-3)}.planet-card{padding:20px 8px}.planet-card strong{font-size:14px}.actions{align-items:stretch;flex-direction:column}.hero-orbit{gap:var(--space-3);font-size:32px}.hero-planet{width:140px;height:140px}.placeholder{padding:20px}.modal{padding:var(--space-5);border-radius:24px}.showcase-controls .actions{width:100%}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.profile-badge{display:flex;align-items:center;gap:var(--space-3);width:fit-content;max-width:100%;min-height:56px;margin:0 0 var(--space-4);padding:var(--space-2) var(--space-4);border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--border)}.profile-badge>span{overflow-wrap:anywhere}.profile-change{color:var(--muted);font-size:var(--text-small)}.profiles-section{margin-top:var(--space-6)}.profile-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-4)}.profile-card{text-align:left;justify-content:flex-start;padding:var(--space-4)}.profile-card>span{min-width:0;overflow-wrap:anywhere}.profile-card strong,.profile-card small{display:block}.profile-card small{color:var(--cyan);font-size:var(--text-small);margin-top:var(--space-1)}.profile-form{max-width:560px;margin-top:var(--space-6)}.profile-form>label{display:block;margin-bottom:var(--space-2);font-weight:700}.profile-form>input{width:100%;min-width:0;min-height:56px;border:2px solid var(--border);border-radius:var(--radius-control);background:#0d1633;color:var(--ink);padding:var(--space-3) var(--space-4);font-size:20px}.profile-form>input[aria-invalid=true]{border-color:var(--accent)}.field-error{color:var(--accent)}.avatar-picker{border:0;margin:var(--space-5) 0;padding:0;min-width:0}.avatar-picker legend{font-weight:700;margin-bottom:var(--space-3)}.avatar-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.avatar-option{cursor:pointer;position:relative}.avatar-option input{position:absolute;opacity:0;width:1px;height:1px}.avatar-choice{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);border:2px solid var(--border);border-radius:var(--radius-control);background:var(--surface-raised);font-size:var(--text-small)}.avatar-option input:checked+.avatar-choice{background:#373154;border-color:var(--accent)}.avatar-option input:focus-visible+.avatar-choice{outline:3px solid var(--focus);outline-offset:4px}.avatar-option input:disabled+.avatar-choice{opacity:.6;cursor:not-allowed}.avatar-art{flex-shrink:0}.stage-list{list-style:none;padding:0;margin:var(--space-6) 0 0;display:grid;gap:var(--space-4)}.stage-row{display:flex;align-items:center;gap:var(--space-4);background:var(--surface-raised);border:1px solid var(--border);border-radius:24px;padding:var(--space-4) var(--space-5)}.stage-row.available{border-color:#caa568;background:#353052}.stage-index{display:grid;place-items:center;border-radius:50%;width:44px;height:44px;background:var(--surface);color:var(--lavender);font-size:24px;font-weight:800;flex-shrink:0}.stage-copy{flex:1;min-width:0}.stage-copy h2{font-size:22px;margin:0}.stage-copy p{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--muted)}.stage-row>.button{padding:var(--space-3);width:56px;flex-shrink:0}.settings-profile{margin-top:var(--space-6)}.settings-identity{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);overflow-wrap:anywhere}.settings-identity h2{margin:0;min-width:0}.reset-section{border-top:1px solid var(--border);margin-top:var(--space-6);padding-top:var(--space-6)}.reset-section h2{margin-bottom:var(--space-3)}.reset-section p{color:var(--muted)}.modal-actions{display:flex;flex-direction:column;gap:var(--space-3)}.storage-notice{border:1px solid var(--accent);padding:var(--space-4);background:var(--surface);border-radius:var(--radius-control);margin-bottom:var(--space-4)}.storage-notice p{margin-top:0;color:var(--accent)}@media(max-width:600px){.profile-change{display:none}.avatar-options{gap:var(--space-2)}.avatar-choice{padding:var(--space-3) var(--space-1);font-size:12px}.avatar-choice svg{width:56px;height:56px}.profile-form>.button{width:100%}.stage-row{padding:var(--space-4) var(--space-3);gap:var(--space-3)}.stage-index{width:28px;height:28px;font-size:18px}.stage-copy h2{font-size:18px}.planet-caption{flex-direction:column}}.study-toolbar,.study-navigation,.study-listen{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;flex-wrap:wrap;margin-block:var(--space-4)}.study-equation{font-size:clamp(44px,7vw,76px);font-weight:800;letter-spacing:-.04em;text-align:center;margin:24px 0 12px;line-height:1.15}.study-equation strong{color:var(--accent)}.study-phrase{text-align:center;font-size:clamp(20px,3vw,28px);line-height:1.4}.study-hint{text-align:center}.star-groups{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:640px;margin:24px auto 0}.star-group{font:inherit;color:inherit;background:#222d56;border:2px solid #6073a8;border-radius:24px;padding:20px;cursor:pointer;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.star-group[aria-pressed=true]{border-color:#ffda83;background:#3c3554;box-shadow:inset 0 0 0 2px #ffda8333}.star-group>span:last-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.star-group strong{font-size:28px;color:#ffda83}.star-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;color:#ffda83}.star-grid svg{width:100%;height:auto;max-height:40px;fill:currentColor}.study-count{min-height:32px;text-align:center;font-size:22px;font-weight:700;color:#ffda83}.study-listen{justify-content:center}.study-listen span{max-width:330px}.study-navigation>button{flex:1}.rocket-celebration{height:220px;width:min(100%,320px);margin:0 auto 24px;position:relative}.rocket-fallback{width:150px;height:190px;display:block;margin:auto}.rocket-canvas{position:absolute;inset:0}.rocket-celebration:has(canvas) .rocket-fallback{visibility:visible}@media(max-width:600px){.star-groups{gap:10px}.star-group{padding:12px;border-radius:20px;min-height:160px}.star-grid{gap:6px}.star-group>span:last-child{flex-direction:column;font-size:14px;gap:0}.study-navigation{flex-direction:column-reverse}.study-navigation>button{width:100%}}@media(max-width:600px){.study-toolbar{gap:8px}.study-toolbar button{font-size:16px;padding-inline:14px}}.trainer-levels{display:grid;gap:20px;max-width:520px;margin:24px auto}.trainer-later{text-align:center;border:1px solid var(--border);border-radius:var(--radius-panel);padding:16px}.trainer-toolbar,.trainer-meters{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-block:20px}.trainer-meters [role=timer]{font-size:28px;font-variant-numeric:tabular-nums}.trainer-repeat{color:var(--muted)}.trainer-question .number-pad{margin-inline:auto}.trainer-feedback{min-height:340px;display:grid;justify-items:center;align-content:center;gap:16px;text-align:center}.trainer-feedback h2{font-size:clamp(26px,4vw,40px);margin:0}.feedback-star{font-size:72px;color:var(--accent)}.trainer-feedback.correct .feedback-star{animation:answer-spark .45s ease-out}@keyframes answer-spark{0%{transform:scale(.65) rotate(-20deg);opacity:.3}to{transform:scale(1) rotate(0);opacity:1}}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-block:24px}.result-stats p{background:var(--surface-raised);padding:20px;border-radius:20px;text-align:center;margin:0}.result-stats strong{display:block;font-size:36px;color:var(--accent)}.result-mistakes{margin-block:24px;padding:16px;border:1px solid var(--border);border-radius:20px}.result-mistakes summary{min-height:56px;cursor:pointer;display:list-item;align-content:center;font-weight:700}.result-mistakes li{font-size:24px;margin-block:10px}@media(max-width:600px){.trainer-toolbar button,.trainer-toolbar a{padding-inline:12px;font-size:16px}.result-stats{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.trainer-feedback.correct .feedback-star{animation:none}}.friendly-status{text-align:center;padding:24px 12px}.friendly-status>span{font-size:56px;color:var(--accent)}.friendly-status h2{font-size:clamp(28px,4vw,40px);margin:12px 0}.race-canvas{position:sticky;top:8px;z-index:2;width:100%;aspect-ratio:10 / 3;overflow:hidden;border-radius:24px;background:#111c3c;margin-block:16px}.race-canvas canvas{max-width:100%}.race-distances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.race-timer-option{min-height:56px;display:flex;align-items:center;gap:12px}.race-timer-option input{width:24px;height:24px}@media(max-width:480px){.race-distances{grid-template-columns:1fr}}.challenge-options{display:grid;gap:24px}.challenge-options fieldset{border:1px solid var(--border);border-radius:20px;padding:16px;min-width:0}.challenge-options legend{font-size:20px;font-weight:700;padding-inline:8px}.challenge-options label{display:flex;gap:12px;align-items:center;min-height:56px;cursor:pointer}.challenge-options input{width:24px;height:24px;flex-shrink:0}.challenge-feedback{min-height:48px;text-align:center;color:var(--accent)}.pwa-notice{position:fixed;bottom:16px;right:16px;z-index:20;width:min(380px,calc(100vw - 32px));padding:18px;border:2px solid var(--accent);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-panel)}.pwa-notice strong{display:block;font-size:20px}.pwa-notice p{margin-block:12px}.pwa-notice button{margin-top:12px}body{font-weight:600;background:radial-gradient(ellipse at 85% 20%,color-mix(in srgb,var(--color-nebula-700) 75%,transparent),transparent 38%),radial-gradient(ellipse at 4% 76%,var(--color-nebula-700),transparent 30%),linear-gradient(145deg,var(--color-space-950),var(--color-space-900))}body:before{opacity:.8;background-image:radial-gradient(circle,var(--color-text-primary) .8px,transparent 1.8px),radial-gradient(circle,var(--color-violet-400) 1px,transparent 2px),radial-gradient(circle,var(--color-gold-300) 1px,transparent 2px);background-size:83px 119px,157px 173px,237px 251px}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.42;background:radial-gradient(ellipse at 78% 17%,var(--color-violet-500),transparent 13%),radial-gradient(ellipse at 86% 26%,var(--color-nebula-700),transparent 18%),radial-gradient(ellipse at 12% 70%,var(--color-violet-500),transparent 13%);filter:blur(18px)}h1,h2,.brand{font-family:var(--font-heading);font-weight:700}.app-shell{max-width:1244px;padding:24px 32px;min-height:100dvh;display:flex;flex-direction:column}.app-shell main{min-width:0}.app-header{position:relative}.header{border:0;padding:0;align-items:flex-start}.brand{font-size:clamp(22px,3vw,42px);line-height:1.15;gap:12px}.brand-planet{width:148px;height:120px;filter:drop-shadow(0 0 12px var(--color-nebula-700))}.brand small{display:flex;gap:12px;align-items:center;font-family:var(--font-ui);font-size:clamp(18px,2.1vw,28px);font-weight:800;margin-top:8px;color:var(--color-text-secondary)}.brand small svg{color:var(--color-gold-300);fill:currentColor}.header-settings{width:80px;height:80px;border-radius:24px;padding:18px}.header-settings svg{width:40px;height:40px}.header-settings span{display:none}.toolbar{margin:0 0 24px}.button{font-family:var(--font-ui);font-weight:800;border-radius:22px}.button.gold,.button.primary{color:var(--color-text-on-gold);background:linear-gradient(var(--color-gold-300),var(--color-gold-500));border-color:var(--color-gold-300);box-shadow:var(--shadow-button),var(--shadow-gold-glow)}.button.blue{background:linear-gradient(var(--color-blue-500),var(--color-blue-600));border-color:var(--color-blue-300);color:var(--color-text-primary);box-shadow:var(--shadow-button)}.button.violet{background:linear-gradient(var(--color-violet-500),var(--color-nebula-700));border-color:var(--color-violet-400);color:var(--color-text-primary);box-shadow:var(--shadow-button),var(--shadow-violet-glow)}.button:is(.gold,.blue,.violet,.primary):not(:disabled):hover{filter:brightness(1.04);transform:translateY(-2px)}.button:is(.gold,.blue,.violet,.primary):not(:disabled):active{transform:translateY(3px);box-shadow:var(--shadow-button-pressed)}.button:disabled{background:var(--disabled-bg);border-color:var(--border);color:var(--disabled-ink);box-shadow:none;filter:none}.page{background:linear-gradient(145deg,color-mix(in srgb,var(--color-violet-500) 18%,transparent),transparent 42%),linear-gradient(var(--color-panel-800),var(--color-panel-900));border:2px solid var(--color-panel-border);box-shadow:var(--shadow-panel),var(--shadow-violet-glow)}.profile-badge{position:absolute;right:0;top:92px;z-index:1;flex-direction:column;gap:0;width:174px;padding:0;border:0;background:transparent;text-align:center;font-size:24px;font-weight:800}.profile-badge .profile-change{color:var(--color-blue-300);font-size:16px}.profile-badge .avatar-art{width:96px;height:96px}.home-panel{display:grid;grid-template-columns:230px 1fr;grid-template-areas:"art title" "art description" "art journey" "actions actions";gap:16px 20px;padding:28px 32px;min-height:420px;border-radius:36px}.home-panel h1{grid-area:title;text-align:center;font-size:clamp(32px,3.7vw,52px);max-width:none;margin:0;line-height:1.15;padding-right:64px}.home-panel .description{grid-area:description;text-align:center;font-size:22px;max-width:640px;margin:auto;padding-right:48px}.hero-orbit{grid-area:art;margin:0;position:relative;align-self:center}.hero-planet{width:250px;height:230px;filter:drop-shadow(0 0 13px var(--color-nebula-700));animation:none}.hero-orbit>span{display:none}.hero-orbit:before,.hero-orbit:after{content:"✦";position:absolute;color:var(--color-gold-300);text-shadow:0 0 18px var(--color-gold-500);font-size:38px;top:0;left:10px}.hero-orbit:after{top:auto;bottom:0;left:75%;font-size:28px}.home-panel .actions{grid-area:actions;display:flex;flex-wrap:nowrap;justify-content:center;gap:28px;margin:4px 0 0}.home-panel .actions .button{min-height:72px;font-size:26px;padding:12px 26px}.home-panel .actions .gold{flex:1.3}.home-panel .actions .blue{flex:1}.home-panel .actions svg{width:36px;height:36px}.galaxy-journey{grid-area:journey;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;align-items:start;position:relative}.galaxy-journey:before{content:"";position:absolute;left:5%;right:5%;top:36px;border-top:3px dotted var(--color-text-muted);opacity:.5}.planet-node{min-width:0;min-height:96px;position:relative;display:flex;flex-direction:column;align-items:center;font-size:25px;line-height:1;border-radius:18px}.planet-node>svg{width:88px;height:76px;position:relative}.planet-node.locked>svg{filter:saturate(.55)}.planet-node.current:before{content:"";position:absolute;top:10px;width:58px;height:58px;border:3px solid var(--color-gold-300);border-radius:50%;box-shadow:var(--shadow-planet-glow)}.node-mark{position:absolute;right:0;top:60px;color:var(--color-text-secondary)}.node-mark svg{width:14px;height:14px}.current .node-mark,.completed .node-mark{color:var(--color-gold-300)}.node-hint{display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);width:190px;padding:12px;font-size:16px;line-height:1.3;background:var(--color-space-950);border:1px solid var(--border);border-radius:12px;z-index:3}.planet-node:hover .node-hint,.planet-node:focus-visible .node-hint{display:block}footer{margin-top:24px}footer nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 0;border:2px solid color-mix(in srgb,var(--color-panel-border) 55%,var(--color-space-800));border-radius:30px;background:linear-gradient(var(--color-panel-900),var(--color-space-800));box-shadow:var(--shadow-panel);gap:0}footer nav a{display:flex;flex-direction:column;justify-content:center;gap:4px;font-size:20px;font-weight:800;line-height:1.2;color:var(--color-text-secondary);text-align:center;border-right:1px solid var(--color-panel-border)}footer nav a:last-child{border-right:0}footer nav a>svg{width:58px;height:58px}footer nav a.active,footer nav a.home-selected{color:var(--color-gold-300);text-decoration:none}footer nav .nav-planet{width:110px}@media(min-width:1024px){.home-shell .app-header{min-height:184px}.home-shell .profile-badge{top:88px}.home-shell .home-panel{margin-right:0}.home-shell .profile-badge{border-radius:30px;background:var(--color-space-950);padding:4px 8px 10px}}@media(max-width:1023px){.brand{font-size:26px}.brand-planet{width:100px;height:90px}.profile-badge{position:static;flex-direction:row;width:fit-content;gap:12px;font-size:20px;margin-bottom:20px}.profile-badge .avatar-art{width:56px;height:56px}.home-panel{grid-template-columns:140px 1fr;padding:24px}.home-panel h1{font-size:34px;padding:0}.home-panel .description{font-size:18px;padding:0}.hero-planet{width:160px;height:170px}.galaxy-journey{grid-column:1/-1}.home-panel .actions .button{font-size:22px}}@media(max-width:599px){.app-shell{padding:16px}.brand{font-size:18px;gap:4px;max-width:calc(100% - 64px)}.brand-planet{width:62px;height:68px}.brand small{font-size:16px;margin-top:6px}.brand small svg{display:none}.header-settings{width:56px;height:56px;padding:12px;border-radius:20px}.header-settings svg{width:28px;height:28px}.header{gap:4px;flex-wrap:nowrap}.toolbar{margin:12px 0}.toolbar .button{font-size:18px}.profile-badge{margin:0 0 16px}.profile-change{display:none}.home-panel{display:flex;flex-direction:column;gap:12px;padding:20px 16px;border-radius:28px;min-height:0}.home-panel h1{order:1;font-size:32px;text-align:center}.home-panel .description{order:2;font-size:16px;line-height:1.4}.hero-orbit{order:0;align-self:center;height:88px}.hero-planet{width:150px;height:125px;margin-top:-20px}.hero-orbit:before,.hero-orbit:after{font-size:22px}.galaxy-journey{order:3;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 0;width:100%}.galaxy-journey:before{display:none}.planet-node{min-height:78px;font-size:22px}.planet-node>svg{width:72px;height:62px}.planet-node.current:before{width:46px;height:46px;top:6px}.node-mark{top:50px}.planet-node:nth-child(4n+1) .node-hint{left:0;transform:none}.planet-node:nth-child(4n) .node-hint{left:auto;right:0;transform:none}.home-panel .actions{order:4;flex-direction:column;gap:14px;width:100%}.home-panel .actions .button{min-height:64px;font-size:20px;padding:12px;width:100%}.home-panel .actions svg{width:28px;height:28px}footer nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;border-radius:24px}footer nav a{font-size:18px;border:0;padding:12px 4px}footer nav a>svg{width:46px;height:46px}footer nav .nav-planet{width:90px}}@media(prefers-reduced-motion:reduce){.button:hover,.button:active{transform:none!important}}@media(min-width:1024px){.profile-badge,.home-shell .profile-badge{top:84px;width:210px;background:transparent;padding:0}.profile-badge .avatar-art{width:76px;height:76px}.profile-badge .profile-change{white-space:nowrap}.profile-badge>span:not(.profile-change){max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}body:after{background-image:url(/assets/cosmos.svg);background-size:cover;filter:none;opacity:.85}.home-panel h1{text-shadow:0 2px 0 color-mix(in srgb,var(--color-text-primary) 25%,transparent)}.trainer-example,.study-example,.number-pad input,.game-timer{font-family:var(--font-math)}.button.gold:not(:disabled):hover,.button.primary:not(:disabled):hover{background:linear-gradient(var(--color-gold-300),var(--color-gold-500))}.button.blue:not(:disabled):hover{background:linear-gradient(var(--color-blue-500),var(--color-blue-600))}.button.violet:not(:disabled):hover{background:linear-gradient(var(--color-violet-500),var(--color-nebula-700))}.pwa-notice{position:relative;bottom:auto;right:auto;align-self:flex-end;margin:0 0 16px;width:min(380px,100%)}.toolbar .button{font-size:20px}@media(max-width:599px){.home-shell .app-header{display:grid;grid-template-columns:1fr auto;gap:0 8px}.home-shell .app-header .header{grid-column:1/-1}.home-shell .toolbar{grid-column:1;grid-row:2;gap:8px;margin:12px 0 16px}.home-shell .toolbar .button{font-size:0;width:56px;padding:12px}.home-shell .toolbar svg{width:28px;height:28px}.home-shell .profile-badge{grid-column:2;grid-row:2;margin:12px 0 16px;max-width:166px;font-size:18px;gap:6px}.home-shell .profile-badge .avatar-art{width:48px;height:48px}.home-shell .profile-badge>span:not(.profile-change){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:105px}.home-panel h1{font-size:36px}.home-panel .hero-orbit{height:64px}.home-panel .hero-planet{height:100px;width:130px}}body{background:var(--color-space-950) url(/assets/art/space.png) center top / cover fixed;font-weight:750}body:before,body:after{display:none}h1,h2,h3,.brand-text,.button{font-weight:900}h1{font-size:clamp(30px,4vw,54px);line-height:1.12}h2{font-size:clamp(23px,2.3vw,32px);line-height:1.2}.app-shell{max-width:1320px;padding:18px 22px}.page{border:2px solid var(--color-panel-border);border-radius:30px;background:linear-gradient(130deg,color-mix(in srgb,var(--color-panel-800) 93%,transparent),color-mix(in srgb,var(--color-space-900) 94%,transparent));box-shadow:var(--shadow-panel),inset 0 0 22px color-mix(in srgb,var(--color-violet-500) 28%,transparent);padding:28px}.page>h1,.page>.description{text-align:center}.button{border-width:2px;border-radius:22px;min-height:56px;box-shadow:var(--shadow-button)}.button:disabled{opacity:.65}.button.gold,.button.primary{background:linear-gradient(var(--color-gold-300),var(--color-gold-500));color:var(--color-text-on-gold)}.button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:4px solid var(--color-gold-300);outline-offset:5px}.planet-art{display:inline-block;width:160px;height:160px;flex-shrink:0;background:url(/assets/art/planets.png) var(--sprite-x) var(--sprite-y) / 400% 200% no-repeat;vertical-align:middle}.game-art{display:inline-block;width:130px;height:130px;background-image:url(/assets/art/icons.png);background-size:400% 200%;background-repeat:no-repeat;flex-shrink:0}.art-0{background-position:0 0}.art-1{background-position:33.333% 0}.art-2{background-position:66.666% 0}.art-3{background-position:100% 0}.art-4{background-position:0 100%}.art-5{background-position:33.333% 100%}.brand-planet{width:110px;height:110px}.brand-text{font-size:clamp(27px,3.9vw,51px);letter-spacing:-.02em}.brand-subtitle{color:var(--color-gold-300);font-weight:900}.home-panel h1{font-size:clamp(34px,4.4vw,58px)}.home-panel .hero-planet{width:270px;height:270px}.journey-node .planet-art{width:100%;height:auto;aspect-ratio:1}.nav-planet{width:64px;height:64px}.bottom-nav{background:linear-gradient(var(--color-panel-800),var(--color-panel-900));border:2px solid var(--color-panel-border);border-radius:28px}.bottom-nav a{font-weight:900}.profile-badge .avatar-art{object-fit:contain}.report-identity{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;margin:20px 0;font-size:26px}.report-identity .crystal-counter{margin-left:auto}.light-panel{padding:25px;border:3px solid var(--color-violet-400);border-radius:25px;color:var(--color-paper-ink);background:linear-gradient(var(--color-paper),var(--color-paper-muted));box-shadow:var(--shadow-panel);min-width:0}.light-panel h2,.light-panel h3,.light-panel p{color:var(--color-paper-ink)}.light-panel .button{margin-top:10px}.light-panel .button.secondary,.light-panel .button.violet{color:var(--color-text-primary)}.light-panel input:not([type=checkbox]):not([type=radio]){background:var(--color-paper);color:var(--color-paper-ink);border:2px solid var(--color-violet-500);min-height:56px;border-radius:14px;padding:12px;width:100%}.parent-columns{display:grid;gap:18px}.table-accuracy{display:grid;grid-template-columns:38px 1fr 55px;gap:8px;align-items:center;margin:14px 0}.table-accuracy .progress-label{display:none}.week-stats{display:flex;gap:16px;font-size:25px}.report-planets{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.report-planets>div{display:flex;flex-direction:column;align-items:center;position:relative}.report-planets .planet-art{width:95px;height:95px}.report-planets>div>svg{position:absolute;right:0;bottom:4px;width:24px;height:24px}.report-robot{width:180px;height:180px;object-fit:contain;display:block;margin:auto}.example-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:20px 0}.example-chips>span{padding:10px 18px;border:2px solid var(--color-violet-400);border-radius:15px;background:var(--color-panel-900);color:var(--color-text-primary);font:800 20px var(--font-ui)}.example-chips small{display:block;font-size:16px}.achievement-summary{max-width:650px;margin:20px auto;text-align:center;font-size:22px}.achievement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.achievement-card{text-align:center;background:linear-gradient(var(--color-paper),var(--color-paper-muted));color:var(--color-paper-ink);border:3px solid var(--color-violet-400);border-radius:24px;padding:18px 12px}.achievement-card.earned{border-color:var(--color-gold-500);box-shadow:var(--shadow-gold-glow)}.achievement-card h2{font-size:23px}.achievement-card p{font-size:16px}.badge-medal{color:var(--color-gold-600);background:radial-gradient(var(--color-gold-300),transparent 68%)}.badge-medal svg{width:78px;height:78px;stroke-width:2.5;filter:drop-shadow(0 4px 0 var(--color-paper-muted))}.pending .badge-medal{color:var(--color-violet-500);background:none}.badge-state{display:flex;gap:6px;justify-content:center;align-items:center}.badge-state svg{width:22px}.settings-columns{display:grid;gap:24px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:68px;font-size:20px}.setting-row input{width:28px;height:28px;accent-color:var(--color-violet-500)}.hint-options{border:0;margin:20px 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}.hint-options label{display:flex;align-items:center;gap:6px;min-height:56px}.settings-robot{width:200px;height:200px;object-fit:contain;display:block;margin:auto}.pin-preferences{padding-block:18px;border-block:1px solid var(--color-violet-400);margin:18px 0}.cloud-backup-panel{display:grid;gap:.8rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgb(102 126 190 / 35%)}.cloud-backup-panel p,.cloud-backup-panel h3{margin:0}.cloud-backup-status{display:grid;gap:.25rem}.cloud-backup-status strong{color:#15803d}.cloud-recovery-code,.cloud-restore textarea{box-sizing:border-box;width:100%;min-height:5.2rem;padding:.75rem;resize:vertical;border:2px solid #9270d6;border-radius:1rem;background:#fff;color:#18104f;font:700 .9rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.cloud-code-hint{font-size:.9rem}.cloud-backup-actions,.cloud-restore{display:grid;gap:.7rem}.cloud-backup-actions{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.cloud-restore{margin-top:.4rem}.parent-gate{max-width:500px;margin:30px auto}.break-notice{position:fixed;z-index:20;right:16px;bottom:16px;width:min(400px,calc(100vw - 32px));padding:20px;border-radius:24px;background:var(--color-panel-800);border:3px solid var(--color-gold-500)}.profile-sync-error{margin:16px 0;padding:16px;border:2px solid var(--color-gold-500);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-gold-500) 16%,var(--color-panel-900))}.profile-sync-error p{margin:0 0 12px}[data-screen=galaxy] .page,[data-screen=planet] .page{background:transparent;border:0;box-shadow:none;position:relative}[data-screen=galaxy] h1{color:var(--color-gold-300);text-shadow:0 4px 0 var(--color-gold-600)}.planet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;position:relative}.galaxy-path{display:none}.planet-grid .planet-card{border:0;background:transparent;box-shadow:none;padding:0;position:relative;gap:0}.planet-card .map-planet{display:block;position:relative}.map-planet b{position:absolute;bottom:2px;left:0;right:0;font-size:39px;line-height:1;text-shadow:0 3px 3px var(--color-space-950)}.map-planet .planet-art{width:150px;height:150px}.planet-card.locked{opacity:.85}.planet-card.available .map-planet{filter:drop-shadow(0 0 12px var(--color-gold-500))}.planet-caption{font-size:16px;justify-content:center;text-align:center}.planet-intro{position:relative;display:flex;justify-content:center;align-items:center;height:230px}.planet-intro>.planet-art{width:260px;height:260px}.planet-intro img{position:absolute;width:135px;height:180px;object-fit:contain;left:-16px;bottom:0}.planet-intro>strong{position:absolute;font-size:60px;color:var(--color-space-950)}.stage-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0}.stage-list .stage-row{display:flex;flex-direction:column;text-align:center;position:relative;padding:18px 12px;gap:10px;border:3px solid var(--color-blue-300);background:linear-gradient(var(--color-panel-800),var(--color-space-900));border-radius:25px;box-shadow:inset 0 0 15px var(--color-blue-600),0 0 10px var(--color-blue-600)}.stage-list .stage-row:nth-child(3){border-color:var(--color-violet-400)}.stage-list .stage-row:nth-child(4){border-color:var(--color-key-cyan)}.stage-list .stage-row.available{border-color:var(--color-gold-300);box-shadow:var(--shadow-gold-glow),inset 0 0 28px var(--color-gold-600)}.stage-index{position:absolute;top:8px;left:8px;font-size:20px;width:38px;height:38px}.stage-copy h2{font-size:23px;margin:0}.stage-copy p{font-size:16px;margin:8px 0}.trainer-levels{display:grid;grid-template-columns:1fr;gap:24px;margin:25px 0}.trainer-levels>.button{display:flex;flex-direction:column;color:var(--color-text-primary);background:linear-gradient(var(--color-panel-800),var(--color-space-900));border:3px solid var(--color-gold-500);padding:22px;min-height:265px}.trainer-levels>.button:nth-child(2){border-color:var(--color-blue-300)}.trainer-levels>.button:nth-child(3){border-color:var(--color-violet-400)}.trainer-levels img,.trainer-levels .planet-art{width:150px;height:150px;object-fit:contain}.trainer-levels strong{font-size:27px}.trainer-levels span:not(.planet-art){font-size:18px}.number-pad{max-width:460px}.number-grid{gap:12px}.number-grid .button{min-height:64px;font-size:37px;border-radius:50%;color:var(--color-text-primary);background:linear-gradient(var(--color-blue-500),var(--color-blue-600));border:2px solid var(--color-blue-300);text-shadow:0 3px 1px var(--color-space-800);padding:0}.number-grid .digit-key:nth-child(3n+2){background:linear-gradient(var(--planet-6),var(--color-key-green));border-color:var(--planet-6)}.number-grid .digit-key:nth-child(3n){background:linear-gradient(var(--planet-3),var(--color-key-pink));border-color:var(--planet-3)}.number-grid .digit-key:nth-child(4){background:linear-gradient(var(--color-violet-400),var(--color-violet-500))}.number-grid .digit-key:nth-child(5){background:linear-gradient(var(--color-gold-300),var(--color-gold-600))}.number-grid .digit-key:nth-child(6){background:linear-gradient(var(--planet-9),var(--color-key-cyan))}.number-grid .icon-button{border-radius:22px;background:linear-gradient(var(--color-violet-400),var(--color-violet-500))}.answer-display{border:3px dashed var(--color-text-secondary);border-radius:18px;background:var(--color-space-900);font-size:60px;height:95px;color:var(--color-text-primary)}.study-equation{font-weight:900;font-size:clamp(48px,6vw,85px);line-height:1.2}.trainer-meters,.trainer-toolbar{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px}.trainer-repeat{font-size:16px;color:var(--color-text-secondary)}.hint-table{margin:20px 0;padding:12px;border:2px solid var(--color-violet-400);border-radius:18px}.hint-table summary{min-height:56px;cursor:pointer;padding:12px}.example-chips .hint-current{background:var(--color-gold-300);color:var(--color-space-950);border-color:var(--color-gold-500)}.trainer-feedback{border-radius:24px;border:3px solid var(--color-success-500);background:linear-gradient(var(--color-panel-800),var(--color-space-900));padding:28px;min-height:310px}.trainer-feedback.almost{border-color:var(--color-violet-400)}.trainer-feedback.almost h2{color:var(--color-error-soft)}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.result-stats p{border:2px solid var(--color-panel-border);border-radius:22px;background:var(--color-panel-800);text-align:center;padding:20px 8px}.result-stats strong{display:block;font-size:36px;color:var(--color-gold-300)}.result-next{text-align:center;max-width:640px;margin:24px auto}.friendly-status{text-align:center}.friendly-status>.game-art{width:170px;height:170px}.guardian-art{position:relative;display:flex;justify-content:center;min-height:250px}.guardian-art .planet-art{width:280px;height:280px}.guardian-art img{position:absolute;width:150px;height:160px;object-fit:contain;bottom:0;right:0}.challenge-options{display:grid;gap:20px}.guardian-copy{font-size:23px}.guardian-copy li{margin-block:12px}.shields{display:flex;align-items:center;justify-content:center;gap:10px}.shield{font-size:42px;color:var(--color-text-muted);opacity:.4}.shield.full{color:var(--color-blue-300);opacity:1;filter:drop-shadow(0 0 6px var(--color-blue-500))}.shields strong{font-size:18px}.profile-form{background:linear-gradient(var(--color-panel-800),var(--color-space-900));border:2px solid var(--color-panel-border);border-radius:26px;padding:25px}.avatar-options{grid-template-columns:repeat(4,minmax(0,1fr))}.avatar-choice{padding:8px 4px}.avatar-choice>span{font-size:16px}.profile-card{border-radius:22px}.star-group{background:linear-gradient(var(--color-panel-800),var(--color-space-900));border:2px solid var(--color-violet-400);box-shadow:var(--shadow-panel)}.star-group[aria-pressed=true]{border-color:var(--color-gold-300);box-shadow:var(--shadow-gold-glow)}@media(min-width:768px){.achievement-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-columns{grid-template-columns:1fr 1fr}.trainer-levels{grid-template-columns:repeat(3,minmax(0,1fr))}.stage-list{grid-template-columns:repeat(4,minmax(0,1fr))}.planet-intro{height:270px}.planet-intro>.planet-art{width:340px;height:340px}.planet-intro img{width:220px;height:270px;left:6%}.trainer-question,.challenge-question{display:grid;grid-template-columns:1fr 1fr;gap:12px 50px;align-items:start;position:relative;padding:24px;border:2px solid var(--color-violet-500);border-radius:26px;background:linear-gradient(110deg,var(--color-panel-800),var(--color-space-900))}.trainer-question>div,.trainer-question .number-pad,.challenge-question .number-pad{display:contents}.trainer-question .study-equation,.challenge-question .study-equation{grid-column:1;grid-row:1;margin:0;text-align:center}.trainer-question .answer-label,.challenge-question .answer-label{grid-column:1;grid-row:2}.trainer-question .answer-display,.challenge-question .answer-display{grid-column:1;grid-row:3;width:100%}.trainer-question .input-hint,.challenge-question .input-hint{grid-column:1;grid-row:4}.trainer-question .number-grid,.challenge-question .number-grid{grid-column:2;grid-row:1 / 5}.trainer-question .submit-answer,.challenge-question .submit-answer{grid-column:2;grid-row:5}.challenge-feedback{grid-column:1;grid-row:5}.challenge-options{grid-template-columns:1fr 1fr;align-items:center}.challenge-options>.button{grid-column:2}.guardian-art{grid-row:1/3}.guardian-art .planet-art{width:340px;height:340px}[data-screen=profiles] .page{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px 30px}[data-screen=profiles] .page>h1,[data-screen=profiles] .page>.description{grid-column:1/-1;margin:0}[data-screen=profiles] .page:not(:has(.profiles-section)) .profile-form{grid-column:1/-1;width:min(700px,100%);margin:auto}.profile-list{display:grid;grid-template-columns:1fr}.profiles-section{margin:0}}@media(min-width:1000px){.parent-columns{grid-template-columns:1.15fr .9fr 1fr}.galaxy-mascot{display:block;position:absolute;top:-35px;right:-15px;width:230px;height:240px;object-fit:contain;pointer-events:none}[data-screen=galaxy] .description{max-width:650px;margin:15px auto}.planet-grid{display:block;height:410px;margin-top:20px}.galaxy-path{display:block;position:absolute;inset:0;width:100%;height:100%;overflow:visible}.galaxy-path path{fill:none;stroke:var(--color-gold-300);stroke-width:6px;filter:drop-shadow(0 0 8px var(--color-gold-500))}.planet-grid .planet-card{position:absolute;width:145px}.planet-grid .planet-card>strong{display:none}.map-planet .planet-art{width:155px;height:155px}.planet-grid .planet-card.planet-pos-2{left:0;top:130px;width:210px}.planet-grid .planet-card.planet-pos-2 .planet-art{width:220px;height:220px}.planet-grid .planet-card.planet-pos-3{left:23%;top:180px}.planet-grid .planet-card.planet-pos-4{left:34%;top:10px}.planet-grid .planet-card.planet-pos-5{left:47%;top:155px}.planet-grid .planet-card.planet-pos-6{left:62%;top:180px}.planet-grid .planet-card.planet-pos-7{left:69%;top:0}.planet-grid .planet-card.planet-pos-8{left:73%;top:280px}.planet-grid .planet-card.planet-pos-9{left:87%;top:200px}}@media(max-width:599px){.app-shell{padding:12px 10px}.page{padding:20px 14px;border-radius:24px}.brand-planet{width:64px;height:64px}.brand-text{font-size:24px}.planet-art{width:130px;height:130px}.home-panel .hero-planet{width:145px;height:145px}.bottom-nav a{font-size:16px;padding:10px 4px}.bottom-nav{border-radius:20px}.light-panel{padding:18px}.achievement-grid{gap:10px}.achievement-card{padding:14px 8px}.achievement-card h2{font-size:20px}.result-stats{gap:6px}.result-stats p{font-size:16px;padding:14px 4px}.result-stats strong{font-size:27px}.avatar-options{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-form{padding:18px}.game-art{width:100px;height:100px}.guardian-copy{font-size:20px}.shields{flex-wrap:wrap}.number-grid .button{font-size:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{body{background:#fff;color:#000}.app-header,footer,.report-actions,.pwa-notice,.break-notice,.light-panel .button{display:none!important}.app-shell{max-width:none;padding:0}.page,.light-panel{background:#fff;color:#000;box-shadow:none;border:1px solid black}.parent-columns{display:block}.light-panel{break-inside:avoid;margin-bottom:15px}.report-planets{grid-template-columns:repeat(8,1fr)}.report-robot{display:none}}.avatar-sprite{width:var(--avatar-size);height:var(--avatar-size);display:inline-block;flex-shrink:0;background:url(/assets/art/avatars.png) var(--avatar-x) var(--avatar-y) / 400% 200% no-repeat}.brand{font-family:var(--font-heading);font-weight:900;font-size:clamp(28px,4vw,56px);line-height:1.08}.brand small{font-size:clamp(18px,2.2vw,30px);font-weight:900;margin-top:8px}.hero-orbit>.planet-art{display:block}.brand-planet,.hero-planet{position:relative}.brand-planet:after,.hero-planet:after{content:"";position:absolute;width:106%;height:28%;top:40%;left:-3%;border:5px solid var(--color-gold-300);border-top-color:transparent;border-radius:50%;transform:rotate(-24deg);box-shadow:0 4px 2px var(--color-gold-600)}.planet-node>.planet-art{width:100%;height:auto;aspect-ratio:1;position:relative}.planet-node.current:before{width:85%;height:auto;aspect-ratio:1;top:7%}.planet-node.locked>.planet-art{filter:saturate(.8)}.galaxy-journey:before{top:45%}.node-mark{top:60%}.node-mark svg{width:20px;height:20px}footer nav .nav-planet{width:68px;height:68px}footer nav a{font-weight:900}.pwa-notice{display:flex;align-items:center;gap:16px;padding:10px 18px;width:auto;max-width:100%;font-size:16px}.pwa-notice .button{flex-shrink:0}@media(max-width:599px){.brand{font-size:24px}.brand small{font-size:17px}.pwa-notice{flex-wrap:wrap}.planet-node>.planet-art{min-width:0}footer nav a{font-size:16px}}@media(min-width:768px){[data-screen=study] .page:has(.study-example){display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}[data-screen=study] .page>h1,[data-screen=study] .study-toolbar,[data-screen=study] .page>.progress{grid-column:1/-1;margin:0}[data-screen=study] .study-example{grid-column:1;grid-row:4/6;padding:35px 18px;align-self:stretch;border:2px solid var(--color-violet-400);border-radius:25px;background:var(--color-panel-900)}[data-screen=study] .study-phrase{font:800 28px var(--font-ui)}[data-screen=study] .study-hint{grid-column:2;grid-row:4;margin:0}[data-screen=study] .star-groups{grid-column:2;grid-row:5;margin:0}[data-screen=study] .study-count{grid-column:2;grid-row:6;margin:0}[data-screen=study] .study-listen{grid-column:1;grid-row:6}[data-screen=study] .study-navigation{grid-column:1/-1;margin:0}}.progress-track{background:var(--color-space-900);border:2px solid var(--color-panel-border);height:24px}.progress-fill{background:linear-gradient(90deg,var(--color-violet-400),var(--planet-3),var(--color-gold-300));box-shadow:0 0 12px var(--color-violet-400)}.planet-art{background:none}.hero-planet,.brand-planet{object-fit:contain}.input-hint,.progress-label,.planet-caption,.profile-change{font-size:16px}.setting-row input[type=checkbox]{appearance:none;width:62px;height:34px;flex-shrink:0;border:2px solid var(--color-violet-500);border-radius:999px;background:var(--color-paper-muted);position:relative;cursor:pointer}.setting-row input[type=checkbox]:before{content:"";position:absolute;width:24px;height:24px;top:3px;left:3px;border-radius:50%;background:var(--color-text-primary);box-shadow:var(--shadow-button)}.setting-row input[type=checkbox]:checked{background:var(--color-violet-500)}.setting-row input[type=checkbox]:checked:before{left:30px}footer nav a.active{border:2px solid var(--color-violet-400);border-radius:22px;background:linear-gradient(var(--color-violet-500),var(--color-panel-900));box-shadow:inset 0 0 12px var(--color-violet-400)}.page>h1,.page>.description{max-width:none;width:100%}.galaxy-mascot{display:none}.planet-card.locked .planet-caption{font-size:0;min-height:28px}.planet-card.locked .planet-caption svg{color:var(--color-gold-300);width:25px;height:25px}.planet-card.available .planet-caption{border:2px solid var(--color-gold-300);border-radius:20px;padding:12px 18px;min-height:56px;color:var(--color-space-950);background:linear-gradient(var(--color-gold-300),var(--color-gold-500));font-size:22px;box-shadow:var(--shadow-button)}@media(min-width:768px){.app-shell:not(.home-shell) .app-header{min-height:145px;position:relative}.app-shell:not(.home-shell) .brand{font-size:clamp(32px,3vw,44px)}.app-shell:not(.home-shell) .brand-planet{width:80px;height:80px}.app-shell:not(.home-shell) .brand small{font-size:24px}.app-shell:not(.home-shell) .header-settings{width:62px;height:62px}.app-shell:not(.home-shell) .toolbar{margin:4px 0 14px}.app-shell:not(.home-shell) .profile-badge{top:78px;width:245px;display:grid;grid-template-columns:62px 1fr;grid-template-rows:30px 26px;gap:0 8px;font-size:21px}.app-shell:not(.home-shell) .profile-badge .avatar-art{width:62px!important;height:62px!important;grid-row:1/3}.app-shell:not(.home-shell) .page{padding:20px}.app-shell:not(.home-shell) h1{font-size:38px;margin:0 0 15px}.app-shell:not(.home-shell) .description{margin:0 0 18px}footer nav{padding:8px 0}footer nav a{flex-direction:row;font-size:21px;min-height:72px;gap:12px}footer nav .avatar-art,footer nav .nav-planet,footer nav a>svg{width:58px;height:58px}[data-screen=trainer] .page:has(.trainer-question),[data-screen=trainer] .page:has(.trainer-feedback){display:grid;grid-template-columns:1fr 1fr;gap:12px}[data-screen=trainer] .page>h1{grid-column:1/-1}[data-screen=trainer] .trainer-toolbar{grid-column:1;grid-row:2;justify-content:flex-start}[data-screen=trainer] .trainer-meters{grid-column:2;grid-row:2;align-items:center}[data-screen=trainer] .page>.progress{grid-column:1/-1;grid-row:3;margin:0}[data-screen=trainer] .trainer-repeat{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[data-screen=trainer] .trainer-question,[data-screen=trainer] .trainer-feedback,[data-screen=trainer] .hint-table{grid-column:1/-1}.trainer-question,.challenge-question{padding:18px;gap:8px 32px}.trainer-question .number-grid,.challenge-question .number-grid{width:min(100%,420px);justify-self:center}.number-grid .button{min-height:62px;font-size:42px}.trainer-question .submit-answer,.challenge-question .submit-answer{width:min(100%,420px);justify-self:center;margin:0}.trainer-feedback .feedback-copy{grid-column:1;grid-row:4/6;text-align:center}.trainer-feedback .feedback-copy h2{font-size:25px;margin:5px 0}.trainer-feedback .feedback-copy p{margin:5px 0}.trainer-feedback .input-hint{visibility:hidden}.trainer-feedback.correct .study-equation strong{color:var(--color-success-500)}.trainer-feedback.almost .answer-display{color:var(--color-error-soft)}[data-screen=galaxy] .planet-grid{height:405px;margin:0}[data-screen=galaxy] .page>h1{font-size:52px}[data-screen=galaxy] .planet-grid .planet-card.planet-pos-8{top:230px}.settings-columns .light-panel{padding:20px}.settings-columns h2{font-size:28px;margin:0 0 16px}.settings-columns .settings-profile{margin:12px 0 0}.settings-columns .reset-section{margin:15px 0 0;padding:12px 0 0}.settings-columns .pin-preferences{margin:14px 0;padding:10px 0}.settings-columns .pin-preferences p{margin:6px 0}}@media(min-width:1000px){.parent-columns .light-panel{padding:18px}.parent-columns h2{font-size:26px;margin:0 0 12px}.report-planets{margin:10px 0;gap:5px}.report-planets .planet-art{width:72px;height:72px}.table-accuracy{margin:8px 0}.table-accuracy .progress{margin:0}.table-accuracy .progress-track{height:18px}.report-identity{margin:8px 0 18px}.report-identity .avatar-art{width:60px!important;height:60px!important}.parent-columns .example-chips{margin:10px 0}.parent-columns .example-chips>span{padding:6px 12px}}.trainer-levels{max-width:none}.planet-card.completed .map-planet{filter:none}.planet-card.completed .planet-caption{background:var(--color-panel-800);color:var(--color-gold-300);box-shadow:none}.star-group>span:last-child,.planet-card strong{font-size:16px}@media(min-width:768px){[data-screen=trainer] .trainer-toolbar,[data-screen=trainer] .trainer-meters{margin-block:0}[data-screen=trainer] .page>h1{margin-bottom:0}[data-screen=trainer] .page>.progress{margin:0}[data-screen=trainer] .page:has(.trainer-question),[data-screen=trainer] .page:has(.trainer-feedback){gap:8px}}.factor-a{color:var(--color-gold-300)}.factor-b{color:var(--planet-3)}.number-grid .digit-key[aria-label="0"]{background:linear-gradient(var(--color-blue-500),var(--color-blue-600));border-color:var(--color-blue-300)}.profile-card small,.avatar-choice{font-size:16px}.practice-result .friendly-status{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;column-gap:12px;padding:8px 0 16px}.practice-result .friendly-status>.game-art{grid-row:1 / 3;width:90px;height:90px}.practice-result .friendly-status h2{margin:0;color:var(--color-gold-300);font-size:clamp(28px,4vw,56px);text-shadow:0 3px 0 var(--color-gold-600)}.practice-result .friendly-status p{margin:8px 0 0}.practice-result .result-stats p{margin:0}.practice-result .result-stats p:nth-child(1){border-color:var(--color-success-500)}.practice-result .result-stats p:nth-child(2){border-color:var(--color-error-soft)}.practice-result .result-stats p:nth-child(3){border-color:var(--color-blue-300)}.result-summary{display:grid;gap:12px;margin:16px 0}.result-detail,.practice-result .result-next{text-align:center;border:2px solid var(--color-panel-border);border-radius:22px;padding:12px;background:var(--color-panel-900);margin:0;max-width:none}.result-detail p{margin:8px 0}.result-detail:first-child p:first-child{font-size:26px;color:var(--color-gold-300)}.practice-result .result-next h2{margin:0 0 8px;font-size:24px}.practice-result .result-next p{margin-bottom:0}.practice-result .actions{justify-content:center}@media(min-width:768px){.practice-result .friendly-status{grid-template-columns:150px minmax(0,1fr);max-width:900px;margin:auto}.practice-result .friendly-status>.game-art{width:150px;height:150px}.result-summary{grid-template-columns:1fr 1fr 1.4fr;align-items:stretch}.result-detail{display:flex;flex-direction:column;align-items:center;justify-content:center}}.home-shell{max-width:1168px;padding:24px 32px 20px}.home-shell .home-art{display:inline-block;flex-shrink:0;width:64px;height:64px;background:url(/assets/home/icons.png) var(--home-art-x) var(--home-art-y) / 400% 200% no-repeat}.home-shell .brand-planet{content:url(/assets/home/hero.png)}.home-shell .hero-planet{content:url(/assets/home/hero.png)}.home-shell .header-settings>svg{display:none}.home-shell .header-settings>.home-art{display:block;width:60px;height:60px}.home-shell .profile-badge .home-companion{width:124px;height:112px}.home-shell .profile-change{display:flex;align-items:center;justify-content:center;white-space:nowrap}.home-shell .profile-change .home-art{width:30px;height:34px}.home-shell .planet-node>.planet-art{background-image:url(/assets/home/planets.png);background-size:400% 200%;background-repeat:no-repeat;filter:none}.home-shell .planet-node>.planet-art svg{visibility:hidden}.home-shell .planet-node:nth-child(1)>.planet-art{background-position:0 0}.home-shell .planet-node:nth-child(2)>.planet-art{background-position:33.333% 0}.home-shell .planet-node:nth-child(3)>.planet-art{background-position:66.667% 0}.home-shell .planet-node:nth-child(4)>.planet-art{background-position:100% 0}.home-shell .planet-node:nth-child(5)>.planet-art{background-position:0 100%}.home-shell .planet-node:nth-child(6)>.planet-art{background-position:33.333% 100%}.home-shell .planet-node:nth-child(7)>.planet-art{background-position:66.667% 100%}.home-shell .planet-node:nth-child(8)>.planet-art{background-position:100% 100%}.home-shell .node-mark{display:none}.home-shell .planet-node.current:before{width:76%;height:auto;aspect-ratio:1;top:10%;border-width:2px}.home-shell footer nav{padding:8px 0}.home-shell footer nav a{flex-direction:column;font-size:23px;gap:0;font-weight:900}.home-shell footer nav .home-art{width:96px;height:96px;background-size:400% 200%}.home-shell .home-panel .actions .home-art{width:56px;height:56px}@media(min-width:1000px){.home-shell .app-header{min-height:186px}.home-shell .header{height:114px}.home-shell .brand{font-size:54px;gap:16px;white-space:nowrap;letter-spacing:-1px}.home-shell .brand-planet{width:164px;height:112px}.home-shell .brand small{font-size:30px;letter-spacing:0;margin-top:4px}.home-shell .header-settings{width:90px;height:82px;padding:10px;border-radius:24px}.home-shell .toolbar{margin:0;gap:16px}.home-shell .toolbar .button{height:56px;padding:8px 20px;font-size:27px}.home-shell .toolbar svg{width:32px;height:32px}.home-shell .profile-badge{position:absolute;top:92px;right:-8px;width:194px;padding:0;background:none;font-size:28px;line-height:1.15;gap:0}.home-shell .profile-change{font-size:16px}.home-shell .home-panel{position:relative;display:block;height:424px;min-height:0;margin:0 18px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;isolation:isolate}.home-shell .home-panel:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,var(--color-panel-800),var(--color-panel-900));border:3px solid var(--color-panel-border);border-radius:38px;box-shadow:inset 0 0 18px var(--color-violet-500),var(--shadow-panel);clip-path:polygon(0 0,83% 0,84% 2%,84% 11%,85% 15%,88% 17%,100% 17%,100% 100%,0 100%)}.home-shell .home-panel h1{position:absolute;top:12px;left:19%;width:61%;padding:0;font-size:54px;line-height:1.02;letter-spacing:-1px}.home-shell .home-panel h1:after{content:"★";position:absolute;right:-20px;top:10px;font-size:28px;color:var(--color-gold-300);text-shadow:var(--shadow-gold-glow)}.home-shell .home-panel .description{position:absolute;top:131px;left:30%;width:39%;padding:0;font-size:22px;line-height:1.35;font-weight:800}.home-shell .hero-orbit{position:absolute;inset:0;width:auto;height:auto;transform:none;pointer-events:none}.home-shell .hero-orbit .hero-planet{position:absolute;display:block;left:5px;top:59px;width:265px;height:215px;margin:0}.home-shell .hero-orbit>span{display:block;position:absolute;right:5%;top:107px;font-size:76px;line-height:1;font-weight:900;color:var(--color-gold-300);text-shadow:0 0 18px var(--color-gold-600);letter-spacing:-3px}.home-shell .hero-orbit:before{top:46px;left:52px}.home-shell .hero-orbit:after{top:247px;left:184px}.home-shell .galaxy-journey{position:absolute;left:24%;right:3%;top:201px;gap:0}.home-shell .galaxy-journey:before{top:44px}.home-shell .planet-node{font-size:28px;min-height:110px}.home-shell .planet-node>.planet-art{width:92px;height:86px;aspect-ratio:auto}.home-shell .planet-node.current:before{width:80px;height:80px;top:3px}.home-shell .home-panel .actions{position:absolute;top:333px;left:10%;right:10%;margin:0;gap:26px}.home-shell .home-panel .actions .button{height:74px;min-height:74px;padding:4px 20px;font-size:32px;border-radius:30px;white-space:nowrap}.home-shell .home-panel .actions .gold{flex:1.5}.home-shell .home-panel .actions .blue{flex:1}.home-shell footer{margin:16px 4px 0}.home-shell footer nav{height:114px}}@media(max-width:999px){.home-shell{padding:16px}.home-shell .home-panel{grid-template-columns:160px 1fr;padding:22px}.home-shell .home-panel .hero-planet{width:170px;height:170px}.home-shell .home-panel h1{padding:0;font-size:38px}.home-shell .home-panel .description{padding:0}.home-shell .galaxy-journey{grid-template-columns:repeat(4,minmax(0,1fr))}.home-shell .galaxy-journey:before{display:none}.home-shell footer nav a{font-size:18px}}@media(max-width:599px){.home-shell{padding:12px 10px}.home-shell .home-panel{display:grid;grid-template-columns:1fr;grid-template-areas:"art" "title" "description" "journey" "actions";gap:10px;padding:14px}.home-shell .home-panel h1{position:static;font-size:30px;line-height:1.1}.home-shell .home-panel .description{font-size:16px}.home-shell .home-panel .hero-orbit{position:relative;width:120px;height:82px;margin:auto;transform:none}.home-shell .home-panel .hero-planet{width:120px;height:82px}.home-shell .profile-badge .home-companion{width:48px;height:48px}.home-shell .profile-change{display:none}.home-shell .header-settings>.home-art{width:36px;height:36px}.home-shell .home-panel .actions{flex-direction:column;gap:12px}.home-shell .home-panel .actions .button{min-height:64px;font-size:21px;padding:4px 12px}.home-shell .home-panel .actions .home-art{width:44px;height:44px}.home-shell .planet-node{min-height:85px;font-size:23px}.home-shell footer nav .home-art{width:80px;height:auto;aspect-ratio:1}.home-shell footer nav a{font-size:16px}}.home-shell .home-panel-frame{display:none}@media(min-width:1000px){.home-shell .home-panel:before{display:none}.home-shell .home-panel-frame{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible;filter:drop-shadow(0 0 5px var(--color-violet-500))}.home-shell .hero-orbit{height:100%;align-self:stretch}.home-shell .hero-orbit .hero-planet{object-fit:fill;height:260px;top:39px}.home-shell .brand-planet{object-fit:fill;height:150px;margin-top:-20px}.home-shell .brand>span{transform:translateY(-8px)}.home-shell footer nav .home-art{width:96px;height:86px;margin-top:-7px;margin-bottom:-7px}.home-shell .profile-badge{top:80px}}@media(min-width:600px)and (max-width:999px){.home-shell .home-panel{grid-template-columns:130px 1fr;gap:10px;padding:18px}.home-shell .home-panel .hero-planet{width:140px;height:140px}.home-shell .home-panel h1{font-size:34px}.home-shell .home-panel .description{font-size:18px}.home-shell .planet-node>.planet-art{max-width:82px}}@media(min-width:1000px){.home-shell .home-panel h1{left:17%;font-size:52px}.home-shell .hero-orbit>span{right:6%;font-size:72px}.home-shell .profile-badge{top:62px}.home-shell .profile-badge .home-companion{width:140px;height:130px}}[data-screen=galaxy]{--galaxy-content-width: min(100%, 1080px)}[data-screen=galaxy] .page{max-width:var(--galaxy-content-width);margin:0 auto;padding:0 18px 10px;overflow:visible;border:0;background:transparent;box-shadow:none}[data-screen=galaxy] .page>h1{position:relative;z-index:2;margin:4px 180px 0 120px;color:var(--color-gold-300);font-size:clamp(42px,5vw,66px);line-height:1;text-align:center;width:auto;text-shadow:0 4px 0 var(--color-gold-600),0 0 20px rgb(255 190 30 / 50%)}[data-screen=galaxy] .page>.description{position:relative;z-index:2;max-width:610px;margin:10px auto 0;font-size:clamp(18px,2vw,25px);line-height:1.2;font-weight:850;text-align:center}[data-screen=galaxy] .brand small{gap:4px}[data-screen=galaxy] .brand small svg{display:none}[data-screen=galaxy] .brand small:before{content:"★★★★★★★";margin-right:8px;color:var(--color-gold-300);letter-spacing:2px;text-shadow:0 0 12px var(--color-gold-500)}[data-screen=galaxy] .galaxy-map-screen{position:relative;min-height:478px;isolation:isolate}[data-screen=galaxy] .galaxy-stars{position:absolute;inset:24px 10% auto;z-index:-1;color:var(--color-gold-300);font-size:27px;letter-spacing:16px;opacity:.8;pointer-events:none}[data-screen=galaxy] .galaxy-mascot-link{display:block;position:absolute;z-index:3;top:-182px;right:-20px;width:250px;height:285px;border-radius:45%}[data-screen=galaxy] .galaxy-mascot{display:block;position:static;inset:auto;width:auto;height:100%;max-width:100%;margin:0 auto;aspect-ratio:2 / 3;object-fit:contain;object-position:top center;filter:drop-shadow(0 0 12px rgb(128 85 232 / 55%));pointer-events:none}.app-shell[data-screen=galaxy] .profile-badge{display:none}[data-screen=galaxy] .galaxy-mascot-label{position:absolute;z-index:4;top:53.5%;left:50%;right:auto;transform:translate(-50%,-50%);color:var(--color-text-primary);font-size:13px;font-weight:950;letter-spacing:.04em;text-shadow:0 2px 2px var(--color-space-950);pointer-events:none}[data-screen=galaxy] .planet-grid.galaxy-map{display:block;position:relative;height:420px;margin:14px 0 0}[data-screen=galaxy] .galaxy-route{display:block;position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}[data-screen=galaxy] .galaxy-route-line,[data-screen=galaxy] .galaxy-route-glow{fill:none;stroke-linecap:round;stroke-linejoin:round}[data-screen=galaxy] .galaxy-route-glow{stroke:var(--color-gold-500);stroke-width:22;opacity:.36;filter:url(#galaxy-route-glow)}[data-screen=galaxy] .galaxy-route-line{stroke:url(#galaxy-route-line);stroke-width:9;stroke-dasharray:2 1;filter:drop-shadow(0 0 5px var(--color-gold-500));animation:galaxy-route-flow 8s linear infinite}[data-screen=galaxy] .galaxy-route-arrow{fill:var(--color-gold-300);filter:drop-shadow(0 0 6px var(--color-gold-500))}[data-screen=galaxy] .galaxy-route-vector-track{stroke-linecap:round;stroke-linejoin:round}[data-screen=galaxy] .galaxy-route-vector-arrow{filter:drop-shadow(0 0 6px var(--color-gold-500))}[data-screen=galaxy] .galaxy-route-mobile{display:none}[data-screen=galaxy] .planet-grid .map-node{z-index:2;position:absolute;display:flex;align-items:center;min-height:56px;border:0;background:transparent;box-shadow:none;color:var(--color-text-primary);text-decoration:none}[data-screen=galaxy] .planet-grid .map-node>.map-planet{display:block;position:relative;width:150px;height:150px}[data-screen=galaxy] .planet-grid .map-node .planet-art{width:150px;height:150px}[data-screen=galaxy] .map-node .map-planet b{bottom:-4px;font-size:35px;font-weight:950;text-shadow:0 3px 2px var(--color-space-950),0 0 8px var(--color-space-950)}[data-screen=galaxy] .map-node.current .map-planet{filter:drop-shadow(0 0 16px var(--color-gold-300))}[data-screen=galaxy] .map-node.current .map-planet:before{display:none}[data-screen=galaxy] .map-node.locked .map-planet{filter:saturate(.72) brightness(.85)}[data-screen=galaxy] .map-node.locked .map-planet:after{content:"";position:absolute;inset:6px;border-radius:50%;background:#08072833}[data-screen=galaxy] .planet-node-mark{position:absolute;right:0;bottom:16px;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:var(--color-text-on-gold);background:var(--color-gold-500);box-shadow:0 3px 0 var(--color-gold-600),0 0 12px var(--color-gold-500)}[data-screen=galaxy] .planet-node-mark svg{width:28px;height:28px}[data-screen=galaxy] .map-node.available .planet-node-mark,[data-screen=galaxy] .map-node.current .planet-node-mark,[data-screen=galaxy] .map-node.completed .planet-node-mark{display:none}[data-screen=galaxy] .planet-status-label{position:absolute;top:calc(100% + 4px);display:none;max-width:140px;font-size:14px;font-weight:800;line-height:1.1;text-align:center}[data-screen=galaxy] .map-node.locked .planet-status-label{display:none;color:var(--color-text-secondary)}[data-screen=galaxy] .map-node.locked:focus-visible .planet-status-label{display:block}[data-screen=galaxy] .galaxy-depart{position:absolute;left:2px;bottom:0;min-width:280px;min-height:66px;padding:10px 24px;font-size:27px;border-radius:22px}[data-screen=galaxy] .galaxy-depart svg{width:30px;height:30px}.app-shell[data-screen=galaxy] footer nav .galaxy-nav-astronaut,.app-shell[data-screen=galaxy] footer nav .galaxy-nav-parents{display:inline-block;width:64px;height:64px;aspect-ratio:1;flex:0 0 64px;background-image:url(/assets/home/icons.png);background-position:var(--home-art-x) var(--home-art-y);background-size:400% 200%;background-repeat:no-repeat}@media(min-width:1000px){.app-shell[data-screen=galaxy] .app-header{height:100px;min-height:100px}.app-shell[data-screen=galaxy] .app-header .header{padding-bottom:0}.app-shell[data-screen=galaxy] .app-header .toolbar{position:absolute;z-index:6;top:134px;left:0;width:165px;flex-direction:column;align-items:stretch;gap:10px;margin:0}.app-shell[data-screen=galaxy] .app-header .toolbar .button{width:100%}[data-screen=galaxy] .brand-planet{width:140px;height:112px}[data-screen=galaxy] .profile-badge{top:5px;right:0;width:190px}[data-screen=galaxy] .profile-badge .avatar-art{width:110px;height:110px}[data-screen=galaxy] .galaxy-mascot-label{top:53.5%;left:50%}[data-screen=galaxy] .galaxy-map-screen{min-height:345px}[data-screen=galaxy] .galaxy-mascot-link{top:-238px}[data-screen=galaxy] .planet-grid.galaxy-map{height:320px;margin-top:4px}[data-screen=galaxy] .planet-grid .map-node>.map-planet,[data-screen=galaxy] .planet-grid .map-node .planet-art{width:135px;height:135px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2{left:0;top:69px;width:180px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .planet-art,[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet{width:190px;height:190px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet b{font-size:48px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-3{left:23%;top:107px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-4{left:35%;top:-1px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-5{left:49%;top:83px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-6{left:63%;top:109px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-7{left:70%;top:-28px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-8{left:74%;top:218px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-9{left:88%;top:138px}[data-screen=galaxy] .galaxy-depart{left:-40px;bottom:-18px;min-width:290px}}@media(max-width:999px){[data-screen=galaxy] .page>h1{margin:0 20px}[data-screen=galaxy] .galaxy-mascot-link{top:-70px;right:-10px;width:150px;height:170px}[data-screen=galaxy] .galaxy-mascot-label{top:53.5%;left:50%;font-size:10px}[data-screen=galaxy] .galaxy-map-screen{min-height:720px}[data-screen=galaxy] .planet-grid.galaxy-map{height:650px;margin-top:26px}[data-screen=galaxy] .galaxy-route{opacity:.85}[data-screen=galaxy] .planet-grid .map-node{width:130px}[data-screen=galaxy] .planet-grid .map-node>.map-planet,[data-screen=galaxy] .planet-grid .map-node .planet-art{width:120px;height:120px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2{left:1%;top:360px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-3{left:48%;top:408px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-4{left:2%;top:205px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-5{left:50%;top:250px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-6{left:2%;top:485px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-7{left:50%;top:112px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-8{left:2%;top:570px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-9{left:50%;top:535px}[data-screen=galaxy] .galaxy-depart{left:0;right:0;width:min(280px,100%);min-width:0;margin-inline:auto;transform:none;bottom:-2px}}@media(max-width:599px){[data-screen=galaxy] .page{padding-inline:8px}[data-screen=galaxy] .page>h1{margin-top:4px;font-size:38px}[data-screen=galaxy] .page>.description{font-size:17px;max-width:320px}[data-screen=galaxy] .galaxy-mascot-link{top:-58px;right:-16px;width:112px;height:128px}[data-screen=galaxy] .galaxy-mascot-label{top:53.5%;left:50%;font-size:9px}[data-screen=galaxy] .galaxy-stars{inset:30px 5% auto;font-size:18px;letter-spacing:4px}[data-screen=galaxy] .galaxy-map-screen{min-height:770px}[data-screen=galaxy] .planet-grid.galaxy-map{height:700px}[data-screen=galaxy] .planet-grid .map-node>.map-planet,[data-screen=galaxy] .planet-grid .map-node .planet-art{width:104px;height:104px}[data-screen=galaxy] .map-node .map-planet b{font-size:25px}[data-screen=galaxy] .planet-grid .map-node{width:112px}[data-screen=galaxy] .galaxy-route-desktop{display:none}[data-screen=galaxy] .galaxy-route-mobile{display:block}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2{left:2%;top:40px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-3{left:60%;top:115px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-4{left:2%;top:195px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-5{left:60%;top:270px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-6{left:2%;top:350px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-7{left:60%;top:425px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-8{left:2%;top:505px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-9{left:60%;top:580px}[data-screen=galaxy] .planet-node-mark{width:30px;height:30px;right:-1px;bottom:8px}[data-screen=galaxy] .planet-node-mark svg{width:22px;height:22px}[data-screen=galaxy] .galaxy-depart{width:min(280px,100%);min-width:0;min-height:60px;font-size:22px}.app-shell[data-screen=galaxy] footer nav .galaxy-nav-astronaut,.app-shell[data-screen=galaxy] footer nav .galaxy-nav-parents,.app-shell[data-screen=galaxy] footer nav .nav-planet,.app-shell[data-screen=galaxy] footer nav a>svg{width:64px;height:64px;aspect-ratio:1;flex:0 0 64px}}@media(min-width:600px)and (max-width:1167px){[data-screen=galaxy] .galaxy-map-screen{min-height:500px}[data-screen=galaxy] .planet-grid.galaxy-map{height:400px;margin-top:14px}[data-screen=galaxy] .planet-grid .map-node{width:130px}[data-screen=galaxy] .planet-grid .map-node>.map-planet,[data-screen=galaxy] .planet-grid .map-node .planet-art{width:110px;height:110px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2{top:97px;left:calc(13.4% - 95px);width:190px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet,[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .planet-art{width:190px;height:190px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet b{font-size:44px}[data-screen=galaxy] .planet-grid .map-node.planet-pos-3{top:152px;left:calc(34.7% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-4{top:20px;left:calc(43.2% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-5{top:123px;left:calc(55.3% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-6{top:130px;left:calc(70.1% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-7{top:-7px;left:calc(74.1% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-8{top:242px;left:calc(76.6% - 55px)}[data-screen=galaxy] .planet-grid .map-node.planet-pos-9{top:170px;left:calc(91.3% - 55px)}[data-screen=galaxy] .galaxy-depart{bottom:0}.app-shell[data-screen=galaxy] footer nav a{min-width:0;gap:6px;padding-inline:4px;font-size:clamp(15px,2vw,20px);white-space:nowrap}.app-shell[data-screen=galaxy] footer nav .galaxy-nav-astronaut,.app-shell[data-screen=galaxy] footer nav .galaxy-nav-parents,.app-shell[data-screen=galaxy] footer nav .nav-planet,.app-shell[data-screen=galaxy] footer nav a>svg{width:48px;height:48px;aspect-ratio:1;flex:0 0 48px}}@media(prefers-reduced-motion:reduce){[data-screen=galaxy] .galaxy-route-line{stroke-dasharray:none;animation:none}}@keyframes galaxy-route-flow{to{stroke-dashoffset:-60}}@media(min-width:1168px){body:has(.app-shell[data-screen=galaxy]){overflow:hidden}.app-shell[data-screen=galaxy]{position:fixed;inset:0;width:1168px;height:784px;min-height:784px;max-width:none;margin:auto;padding:0;overflow:visible;transform:none}.app-shell[data-screen=galaxy] .app-header{position:absolute;inset:0 0 auto;width:100%;height:132px;min-height:0;z-index:10}.app-shell[data-screen=galaxy] .app-header .header{position:static;height:100%;padding:0}.app-shell[data-screen=galaxy] .brand{position:absolute;top:10px;left:20px;min-height:0;gap:12px;align-items:flex-start;font-size:58px;line-height:1;letter-spacing:-.025em}.app-shell[data-screen=galaxy] .brand>span{padding-top:7px}.app-shell[data-screen=galaxy] .brand-planet{width:145px;height:112px;object-fit:contain}.app-shell[data-screen=galaxy] .brand small{margin-top:9px;gap:5px;color:var(--color-gold-300);font-size:27px;line-height:1}.app-shell[data-screen=galaxy] .brand small:before{margin-right:7px;font-size:28px;letter-spacing:4px}.app-shell[data-screen=galaxy] .header-settings{position:absolute;top:18px;right:18px;width:68px;height:68px;min-height:68px;padding:13px;border-radius:23px}.app-shell[data-screen=galaxy] .header-settings svg{width:42px;height:42px}.app-shell[data-screen=galaxy] .app-header .toolbar{top:152px;left:20px;width:165px;gap:10px}.app-shell[data-screen=galaxy] .app-header .toolbar .button{min-height:58px;padding:8px 14px;border-radius:20px;font-size:25px}.app-shell[data-screen=galaxy] main{position:absolute;inset:0;min-width:0}.app-shell[data-screen=galaxy] .page{position:absolute;inset:0;width:1168px;height:784px;max-width:none;margin:0;padding:0}.app-shell[data-screen=galaxy] .page>h1{position:absolute;top:134px;left:250px;width:660px;margin:0;color:var(--color-gold-300);font-size:60px;line-height:1;letter-spacing:-.025em;transform:scaleX(1.055)}.app-shell[data-screen=galaxy] .page>.description{position:absolute;top:214px;left:304px;width:560px;max-width:none;margin:0;font-size:25px;line-height:1.13;transform:scaleX(1.14)}.app-shell[data-screen=galaxy] .galaxy-map-screen{position:absolute;inset:0;width:1168px;height:784px;min-height:0}.app-shell[data-screen=galaxy] .galaxy-stars{display:none}.app-shell[data-screen=galaxy] .galaxy-mascot-link{top:55px;right:45px;width:280px;height:260px}.app-shell[data-screen=galaxy] .galaxy-mascot{object-fit:contain}.app-shell[data-screen=galaxy] .galaxy-mascot-label{top:53.5%;left:50%;right:auto;font-size:13px}.app-shell[data-screen=galaxy] .pwa-notice{position:fixed;right:16px;bottom:112px;width:380px;max-width:calc(100vw - 32px);margin:0;padding:12px 16px}.app-shell[data-screen=galaxy] .planet-grid.galaxy-map{position:absolute;top:260px;left:0;width:1168px;height:400px;margin:0}.app-shell[data-screen=galaxy] .galaxy-route-glow{stroke-width:34;opacity:.52}.app-shell[data-screen=galaxy] .galaxy-route-line{stroke-width:12}.app-shell[data-screen=galaxy] .planet-grid .map-node>.map-planet,.app-shell[data-screen=galaxy] .planet-grid .map-node .planet-art{width:135px;height:135px}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-2{top:48px;left:7px;width:310px}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet,.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .planet-art{width:310px;height:310px}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet b{bottom:85px;font-size:52px}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-2 .map-planet:before{display:none}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-3{top:135px;left:29.5%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-4{top:10px;left:36.5%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-5{top:105px;left:49.1%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-6{top:120px;left:63.5%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-7{top:-12px;left:68.2%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-8{top:234px;left:70.3%}.app-shell[data-screen=galaxy] .planet-grid .map-node.planet-pos-9{top:150px;left:85%}.app-shell[data-screen=galaxy] .map-node.locked .map-planet{filter:saturate(.92) brightness(.96)}.app-shell[data-screen=galaxy] .map-node.locked .map-planet:after{background:#08072814}.app-shell[data-screen=galaxy] .map-node.locked.planet-pos-3 .planet-node-mark,.app-shell[data-screen=galaxy] .map-node.locked.planet-pos-4 .planet-node-mark,.app-shell[data-screen=galaxy] .map-node.locked.planet-pos-5 .planet-node-mark,.app-shell[data-screen=galaxy] .map-node.locked.planet-pos-6 .planet-node-mark{display:none!important}.app-shell[data-screen=galaxy] .map-node.locked:is(.planet-pos-7,.planet-pos-8) .planet-node-mark{right:25px}.app-shell[data-screen=galaxy] .map-node.locked.planet-pos-9 .planet-node-mark{right:20px;bottom:4px}.app-shell[data-screen=galaxy] .galaxy-depart{top:562px;bottom:auto;left:24px;width:288px;min-width:288px;min-height:72px;padding:10px 18px;border-radius:22px;font-size:27px}.app-shell[data-screen=galaxy] footer{position:absolute;z-index:12;top:671px;left:19px;width:1130px;height:95px;margin:0}.app-shell[data-screen=galaxy] footer nav{width:100%;height:100%;padding:4px 0;border-radius:28px;grid-template-columns:268px 309px 273px 280px}.app-shell[data-screen=galaxy] footer nav a{min-height:0;height:85px;flex-direction:row;gap:10px;padding:5px 8px;border-radius:0;font-size:24px;white-space:nowrap}.app-shell[data-screen=galaxy] footer nav a.active{border-radius:22px}.app-shell[data-screen=galaxy] footer nav .avatar-art,.app-shell[data-screen=galaxy] footer nav .galaxy-nav-astronaut,.app-shell[data-screen=galaxy] footer nav .nav-planet,.app-shell[data-screen=galaxy] footer nav a>svg{width:64px;height:64px;flex:0 0 64px}.app-shell[data-screen=galaxy] footer nav .galaxy-nav-astronaut{width:76px;height:72px;flex:0 0 76px;background-image:url(/assets/home/icons.png);background-position:var(--home-art-x) var(--home-art-y);background-size:400% 200%;background-repeat:no-repeat}.app-shell[data-screen=galaxy] footer nav .galaxy-nav-parents{width:76px;height:70px;flex:0 0 76px;background-image:url(/assets/home/icons.png);background-position:var(--home-art-x) var(--home-art-y);background-size:400% 200%;background-repeat:no-repeat}}@media(min-width:1168px)and (max-height:783px){body:has(.app-shell[data-screen=galaxy]){overflow-y:auto}.app-shell[data-screen=galaxy]{position:relative;inset:auto;margin:0 auto;transform:none}}.app-shell[data-screen=planet]{position:relative;width:100%;max-width:760px;margin-inline:auto;padding:14px;overflow:hidden}.app-shell[data-screen=planet] .toolbar,.app-shell[data-screen=planet] .profile-badge{display:none}.app-shell[data-screen=planet] .app-header{position:relative;z-index:10}.app-shell[data-screen=planet] .header{padding-bottom:8px;border:0}.app-shell[data-screen=planet] .header-settings{width:58px;height:58px;padding:12px;border-radius:20px;border-color:var(--color-violet-400);background:linear-gradient(145deg,var(--color-violet-400),var(--color-panel-800));box-shadow:inset 0 0 12px #ffffff3d,0 0 18px var(--color-violet-400)}.app-shell[data-screen=planet] .header-settings span{display:none}.app-shell[data-screen=planet] .page{min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell[data-screen=planet] .page>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell[data-screen=planet] .planet-overview{display:grid;grid-template-columns:1fr;justify-items:center;gap:8px;margin-top:8px}.app-shell[data-screen=planet] .planet-mentor{position:relative;width:min(100%,350px);height:190px;justify-self:start}.app-shell[data-screen=planet] .planet-mentor>img{position:absolute;z-index:2;left:0;bottom:0;width:120px;height:180px;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 0 10px var(--color-violet-400))}.app-shell[data-screen=planet] .planet-mentor>strong{position:absolute;z-index:3;left:5px;bottom:3px;width:110px;min-height:30px;display:grid;place-items:center;padding:2px 8px;border:2px solid var(--color-violet-400);border-radius:10px;color:var(--color-text-primary);background:linear-gradient(var(--color-violet-500),var(--color-panel-900));box-shadow:0 0 12px var(--color-violet-400);font-size:14px;line-height:1;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-shell[data-screen=planet] .planet-speech{position:absolute;z-index:1;top:12px;right:0;width:226px;min-height:120px;display:grid;align-content:center;padding:14px 18px;border:4px solid var(--color-violet-400);border-radius:30px;color:var(--color-paper-ink);background:linear-gradient(145deg,var(--color-paper),var(--color-paper-muted));box-shadow:inset 0 0 14px #8055e838,0 0 16px var(--color-violet-400);font-size:20px;font-weight:950;line-height:1.12;text-align:center}.app-shell[data-screen=planet] .planet-speech:before{content:"";position:absolute;left:-27px;top:61px;width:0;height:0;border-top:18px solid transparent;border-right:28px solid var(--color-violet-400);border-bottom:18px solid transparent}.app-shell[data-screen=planet] .planet-speech:after{content:"";position:absolute;left:-19px;top:65px;width:0;height:0;border-top:14px solid transparent;border-right:22px solid var(--color-paper);border-bottom:14px solid transparent}.app-shell[data-screen=planet] .planet-speech span{display:block}.app-shell[data-screen=planet] .planet-speech span:nth-child(2){color:var(--color-violet-500)}.app-shell[data-screen=planet] .planet-focus{position:relative;width:min(100%,370px);height:275px;display:grid;place-items:center;isolation:isolate}.app-shell[data-screen=planet] .planet-focus>.planet-art{width:350px;height:285px;max-width:100%;filter:drop-shadow(0 0 24px var(--color-gold-500))}.app-shell[data-screen=planet] .planet-stage-progress{display:grid;justify-items:center;gap:8px;padding:8px 0 16px}.app-shell[data-screen=planet] .planet-stage-progress>strong{font-size:24px;line-height:1;text-shadow:0 2px 5px var(--color-space-950)}.app-shell[data-screen=planet] .planet-progress-stars{display:flex;gap:10px}.app-shell[data-screen=planet] .planet-progress-stars svg{width:48px;height:48px;color:var(--color-violet-400);fill:var(--color-panel-800);stroke-width:1.5;filter:drop-shadow(0 2px 2px var(--color-space-950))}.app-shell[data-screen=planet] .planet-progress-stars .is-highlighted{color:var(--color-gold-300);fill:var(--color-gold-500);filter:drop-shadow(0 0 10px var(--color-gold-500))}.app-shell[data-screen=planet] .stage-list{display:grid;grid-template-columns:1fr;gap:16px;margin:12px 0 18px;padding:0}.app-shell[data-screen=planet] .stage-list .stage-row{--stage-color: var(--color-stage-trainer);position:relative;min-height:270px;display:grid;grid-template-rows:130px auto 1fr 56px;justify-items:center;align-items:center;gap:0;padding:14px 12px 12px;overflow:hidden;border:4px solid var(--stage-color);border-radius:var(--planet-stage-card-radius);color:var(--color-text-primary);background:linear-gradient(155deg,color-mix(in srgb,var(--stage-color) 30%,var(--color-panel-800)),var(--color-space-900) 72%);box-shadow:inset 0 0 24px color-mix(in srgb,var(--stage-color) 55%,transparent),0 0 16px color-mix(in srgb,var(--stage-color) 72%,transparent);text-align:center}.app-shell[data-screen=planet] .stage-list .stage-study{--stage-color: var(--color-stage-study)}.app-shell[data-screen=planet] .stage-list .stage-race{--stage-color: var(--color-stage-race)}.app-shell[data-screen=planet] .stage-list .stage-challenge{--stage-color: var(--color-stage-challenge)}.app-shell[data-screen=planet] .stage-list .stage-row.available{background:linear-gradient(150deg,color-mix(in srgb,var(--stage-color) 55%,var(--color-gold-600)),color-mix(in srgb,var(--color-gold-600) 35%,var(--color-panel-900)));box-shadow:inset 0 0 28px var(--color-gold-300),var(--shadow-gold-glow)}.app-shell[data-screen=planet] .stage-index{position:absolute;z-index:3;top:8px;left:8px;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--color-text-primary);background:color-mix(in srgb,var(--stage-color) 70%,var(--color-space-950));font-size:28px;font-weight:950;line-height:1;text-shadow:0 2px 2px var(--color-space-950)}.app-shell[data-screen=planet] .stage-row>.game-art{width:150px;height:130px;max-width:82%;filter:drop-shadow(0 8px 8px var(--color-space-950))}.app-shell[data-screen=planet] .stage-race-rocket{width:140px;height:130px;max-width:82%;object-fit:contain;transform:rotate(-6deg);filter:drop-shadow(0 0 14px var(--color-stage-race));pointer-events:none;-webkit-user-select:none;user-select:none}.app-shell[data-screen=planet] .stage-copy h2{margin:0;color:color-mix(in srgb,var(--stage-color) 55%,var(--color-text-primary));font-size:28px;line-height:1.05;white-space:nowrap;text-shadow:0 3px 2px var(--color-space-950)}.app-shell[data-screen=planet] .stage-row.available .stage-copy h2{color:var(--color-gold-300)}.app-shell[data-screen=planet] .stage-copy p{margin:6px 0 8px;color:var(--color-text-primary);font-size:18px;font-weight:900;line-height:1.1}.app-shell[data-screen=planet] .stage-row>.button{min-width:0;width:min(100%,174px);height:48px;min-height:48px;padding:5px 16px;border-radius:18px;font-size:23px}.app-shell[data-screen=planet] .stage-row>.button.ghost{position:absolute;z-index:4;top:9px;right:9px;width:46px;height:46px;padding:8px;border-color:var(--color-paper-muted);background:linear-gradient(var(--color-paper),var(--color-paper-muted));color:var(--color-space-950);box-shadow:0 3px color-mix(in srgb,var(--stage-color) 70%,var(--color-space-950));opacity:1}.app-shell[data-screen=planet] footer{position:relative;z-index:12;margin-top:0}.app-shell[data-screen=planet] footer .planet-bottom-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:5px;overflow:hidden;border:2px solid var(--color-panel-border);border-radius:28px;background:color-mix(in srgb,var(--color-panel-900) 96%,transparent);box-shadow:var(--shadow-panel),inset 0 0 16px #8055e833}.app-shell[data-screen=planet] .planet-bottom-navigation a{min-width:0;min-height:78px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:4px 2px;border-right:1px solid color-mix(in srgb,var(--color-panel-border) 60%,transparent);color:var(--color-text-secondary);font-size:13px;font-weight:950;line-height:1;text-decoration:none}.app-shell[data-screen=planet] .planet-bottom-navigation a:last-child{border-right:0}.app-shell[data-screen=planet] .planet-bottom-navigation a.active{color:var(--color-gold-300);background:transparent;box-shadow:none}.app-shell[data-screen=planet] .planet-bottom-navigation a>svg,.app-shell[data-screen=planet] .planet-bottom-navigation .avatar-art,.app-shell[data-screen=planet] .planet-footer-icon,.app-shell[data-screen=planet] .planet-footer-chest,.app-shell[data-screen=planet] .planet-profile-shield{width:42px;height:42px;flex:0 0 42px}.app-shell[data-screen=planet] .planet-footer-chest{filter:drop-shadow(0 3px 0 var(--color-gold-600)) drop-shadow(0 0 7px var(--color-gold-500))}.app-shell[data-screen=planet] .planet-footer-chest .chest-lid,.app-shell[data-screen=planet] .planet-footer-chest .chest-body{fill:var(--color-gold-500);stroke:var(--color-gold-300);stroke-width:2}.app-shell[data-screen=planet] .planet-footer-chest .chest-band{fill:var(--color-gold-300)}.app-shell[data-screen=planet] .planet-footer-chest .chest-lock{fill:var(--color-space-950);stroke:var(--color-gold-300);stroke-width:2}.app-shell[data-screen=planet] .planet-footer-chest .chest-key{fill:var(--color-gold-300)}.app-shell[data-screen=planet] .planet-footer-chest .chest-line{fill:none;stroke:var(--color-gold-600);stroke-width:2;stroke-linecap:round}.app-shell[data-screen=planet] .planet-profile-shield{display:grid;place-items:center;border:3px solid var(--color-paper-muted);border-radius:44% 44% 52% 52%/30% 30% 66% 66%;color:var(--color-text-primary);background:linear-gradient(var(--color-blue-500),var(--color-panel-800));box-shadow:inset 0 0 9px var(--color-blue-300),0 3px 0 var(--color-space-950)}.app-shell[data-screen=planet] .planet-profile-shield svg{width:70%;height:70%;fill:var(--color-text-primary)}@media(max-width:480px){.app-shell[data-screen=planet] footer .planet-bottom-navigation{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell[data-screen=planet] .planet-bottom-navigation a{min-height:72px;border-bottom:1px solid color-mix(in srgb,var(--color-panel-border) 60%,transparent);font-size:16px}.app-shell[data-screen=planet] .planet-bottom-navigation a:nth-child(3),.app-shell[data-screen=planet] .planet-bottom-navigation a:last-child{border-right:0}.app-shell[data-screen=planet] .planet-bottom-navigation a:nth-child(n+4){border-bottom:0}}@media(min-width:600px)and (max-width:1099px){.app-shell[data-screen=planet] .planet-overview{grid-template-columns:1fr 1.2fr;align-items:center}.app-shell[data-screen=planet] .planet-stage-progress{grid-column:1 / -1}.app-shell[data-screen=planet] .stage-list{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell[data-screen=planet] .planet-bottom-navigation a{min-height:88px;font-size:18px}}@media(min-width:1100px){body:has(.app-shell[data-screen=planet]){min-height:var(--planet-screen-height)}.app-shell[data-screen=planet]{width:var(--planet-screen-width);max-width:var(--planet-screen-width);height:var(--planet-screen-height);min-height:var(--planet-screen-height);padding:0;overflow:hidden}.app-shell[data-screen=planet] .app-header{position:absolute;inset:0 0 auto;height:145px}.app-shell[data-screen=planet] .header{position:relative;height:145px;padding:0}.app-shell[data-screen=planet] .brand{position:absolute;top:13px;left:26px;width:940px;height:125px;display:grid;grid-template-columns:205px 1fr;gap:14px;align-items:center}.app-shell[data-screen=planet] .brand-planet{width:205px;height:125px;object-fit:contain;filter:drop-shadow(0 0 15px var(--color-violet-400))}.app-shell[data-screen=planet] .brand>span{display:flex;flex-direction:column;align-items:center;color:var(--color-text-primary);font-size:58px;font-weight:950;line-height:.98;letter-spacing:-.035em;text-shadow:0 4px 0 var(--color-nebula-700),0 0 13px var(--color-violet-400)}.app-shell[data-screen=planet] .brand small{display:flex;align-items:center;gap:10px;margin-top:7px;color:color-mix(in srgb,var(--color-violet-400) 60%,var(--color-text-primary));font-size:43px;font-weight:950;line-height:1;text-shadow:0 3px 0 var(--color-nebula-700),0 0 12px var(--color-violet-400)}.app-shell[data-screen=planet] .brand small svg{width:34px;height:34px;color:var(--color-gold-300);fill:var(--color-gold-500);filter:drop-shadow(0 0 8px var(--color-gold-500))}.app-shell[data-screen=planet] .header-tools{position:absolute;top:24px;right:27px}.app-shell[data-screen=planet] .header-settings{width:88px;height:88px;padding:19px;border-width:3px;border-radius:50%}.app-shell[data-screen=planet] .header-settings svg{width:48px;height:48px;stroke-width:3}.app-shell[data-screen=planet] main{position:absolute;z-index:2;top:143px;left:0;width:100%;height:520px}.app-shell[data-screen=planet] .page{width:100%;height:100%}.app-shell[data-screen=planet] .planet-overview{position:absolute;inset:0 0 auto;height:248px;display:block;margin:0}.app-shell[data-screen=planet] .planet-mentor{position:absolute;top:0;left:20px;width:405px;height:235px}.app-shell[data-screen=planet] .planet-mentor>img{width:215px;height:235px}.app-shell[data-screen=planet] .planet-mentor>strong{left:48px;bottom:1px;width:142px;min-height:39px;border-radius:12px;font-size:22px}.app-shell[data-screen=planet] .planet-speech{top:13px;right:0;width:222px;min-height:137px;padding:18px 16px;font-size:22px}.app-shell[data-screen=planet] .planet-focus{position:absolute;top:-45px;left:392px;width:410px;height:305px}.app-shell[data-screen=planet] .planet-focus>.planet-art{width:410px;height:333px}.app-shell[data-screen=planet] .planet-stage-progress{position:absolute;top:65px;right:38px;width:285px;gap:14px;padding:0}.app-shell[data-screen=planet] .planet-stage-progress>strong{font-size:31px}.app-shell[data-screen=planet] .planet-progress-stars{gap:12px}.app-shell[data-screen=planet] .planet-progress-stars svg{width:57px;height:57px}.app-shell[data-screen=planet] .stage-list{position:absolute;z-index:5;top:245px;left:65px;right:65px;height:263px;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;margin:0}.app-shell[data-screen=planet] .stage-list .stage-row{min-width:0;min-height:263px;height:263px;grid-template-rows:130px auto 1fr 48px;padding:8px 9px 9px}.app-shell[data-screen=planet] .stage-copy h2{font-size:27px}.app-shell[data-screen=planet] .stage-copy p{font-size:18px}.app-shell[data-screen=planet] .stage-row>.button{height:45px;min-height:45px}.app-shell[data-screen=planet] footer{position:absolute;z-index:12;top:665px;left:40px;width:1088px;height:var(--planet-navigation-height);margin:0}.app-shell[data-screen=planet] footer .planet-bottom-navigation{width:100%;height:100%;padding:4px 12px;border-radius:32px}.app-shell[data-screen=planet] .planet-bottom-navigation a{min-height:0;height:95px;gap:0;padding:3px 6px;font-size:25px}.app-shell[data-screen=planet] .planet-bottom-navigation a>svg,.app-shell[data-screen=planet] .planet-bottom-navigation .avatar-art,.app-shell[data-screen=planet] .planet-footer-icon,.app-shell[data-screen=planet] .planet-footer-chest,.app-shell[data-screen=planet] .planet-profile-shield{width:62px;height:62px;flex-basis:62px}}@media(min-width:1100px)and (min-height:784px){.app-shell[data-screen=planet]{margin-top:max(0px,calc((100vh - var(--planet-screen-height)) / 2))}}@media(prefers-reduced-motion:no-preference){.app-shell[data-screen=planet] .planet-focus>.planet-art{animation:planet-reference-float 5s ease-in-out infinite}.app-shell[data-screen=planet] .stage-row.available{animation:planet-reference-glow 2.8s ease-in-out infinite}}@keyframes planet-reference-float{50%{transform:translateY(-5px)}}@keyframes planet-reference-glow{50%{box-shadow:inset 0 0 34px var(--color-gold-300),0 0 29px #ffbe1e9e}}.app-shell[data-screen=study]{--study-page-inline: 20px;width:min(100%,var(--study-screen-width));max-width:var(--study-screen-width);min-height:100dvh;padding:14px var(--study-page-inline) 0;position:relative;overflow:clip}.app-shell[data-screen=study] .app-header{min-height:var(--study-header-height);position:relative;z-index:var(--z-study-controls);pointer-events:none}.app-shell[data-screen=study] .app-header a,.app-shell[data-screen=study] .app-header button{pointer-events:auto}.app-shell[data-screen=study] .header{min-height:78px;padding:0;border:0}.app-shell[data-screen=study] .brand{position:absolute;top:0;left:0;display:grid;grid-template-columns:142px minmax(0,1fr);align-items:center;gap:12px;width:565px;min-height:125px;font:900 38px/1.02 var(--font-heading);letter-spacing:-.045em}.app-shell[data-screen=study] .brand .brand-planet{width:142px;height:120px;object-fit:contain}.app-shell[data-screen=study] .brand small{margin-top:8px;color:#cf9aff;font:900 26px/1.1 var(--font-ui)}.app-shell[data-screen=study] .brand small svg{display:none}.app-shell[data-screen=study] .toolbar{position:absolute;top:8px;left:566px;width:244px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;gap:8px}.app-shell[data-screen=study] .toolbar .button{width:100%;min-width:0;min-height:60px;padding:10px 8px;font-size:18px}.app-shell[data-screen=study] .header-tools{position:absolute;top:76px;right:126px}.app-shell[data-screen=study] .header-settings{width:58px;height:58px;min-height:58px;padding:12px;border-radius:20px;box-shadow:0 0 18px #bc5bffb3,var(--shadow-button)}.app-shell[data-screen=study] .header-settings span{display:none}.app-shell[data-screen=study] .header-settings svg{width:31px;height:31px}.app-shell[data-screen=study] .profile-badge{position:absolute;top:-8px;right:-6px;width:118px;min-height:145px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:0;color:var(--color-text-primary);font-size:18px;font-weight:900;line-height:1;text-transform:uppercase}.app-shell[data-screen=study] .profile-robot{width:112px;height:116px;object-fit:cover;object-position:center 7%;mix-blend-mode:screen;filter:drop-shadow(0 0 10px rgb(61 202 255 / 42%))}.app-shell[data-screen=study] .profile-change{display:none}.app-shell[data-screen=study] main{position:relative;z-index:var(--z-study-content)}.app-shell[data-screen=study] .pwa-notice{position:fixed;right:16px;bottom:104px;z-index:20;width:min(380px,calc(100vw - 32px));margin:0}.app-shell[data-screen=study] .page:has(.study-progress){display:block;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell[data-screen=study] .page:has(.study-progress)>h1{position:absolute;z-index:var(--z-study-controls);top:calc(-1 * var(--study-header-height) + 8px);right:126px;width:180px;min-height:60px;display:flex;align-items:center;justify-content:center;margin:0;padding:8px 14px;border:2px solid #ffe07b;border-radius:20px;background:linear-gradient(180deg,#ffd848,#f5a900);box-shadow:var(--shadow-gold-glow),var(--shadow-button);color:var(--color-text-on-gold);font:900 19px/1.1 var(--font-ui);text-align:center}.app-shell[data-screen=study] .study-toolbar{position:absolute;z-index:var(--z-study-controls);top:calc(-1 * var(--study-header-height) + 75px);right:197px;display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:10px;margin:0}.app-shell[data-screen=study] .study-toolbar>div{display:contents}.app-shell[data-screen=study] .study-toolbar .button{min-height:58px;padding:10px 18px;border-radius:20px;font-size:19px;white-space:nowrap}.app-shell[data-screen=study] .study-progress{margin:0 0 6px}.app-shell[data-screen=study] .study-progress-label{display:flex;justify-content:space-between;align-items:center;padding-inline:20px;margin-bottom:8px;color:var(--color-text-primary);font:900 22px/1.1 var(--font-ui)}.app-shell[data-screen=study] .study-progress-label strong{font-size:27px}.app-shell[data-screen=study] .study-progress-track{position:relative;height:var(--study-progress-height);margin-inline:148px 84px;border:4px solid #56309e;border-radius:var(--radius-pill);background:#17104a;box-shadow:inset 0 2px 5px #0000008c}.app-shell[data-screen=study] .study-progress-fill{position:absolute;inset:2px auto 2px 2px;width:calc(var(--study-progress) - 4px);border-radius:inherit;background:linear-gradient(90deg,#ffae19,#fff380);box-shadow:0 0 14px #ffc936cc;transition:width var(--motion-slow) ease}.app-shell[data-screen=study] .study-progress-rocket{position:absolute;left:clamp(0px,calc(var(--study-progress) - 46px),calc(100% - 50px));top:50%;width:88px;height:88px;transform:translate(-50%,-52%) rotate(4deg);filter:drop-shadow(0 0 10px rgb(255 174 25 / 75%));transition:left var(--motion-slow) ease}.app-shell[data-screen=study] .study-card-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:16px;min-height:300px}.app-shell[data-screen=study] .study-example,.app-shell[data-screen=study] .study-visual{min-width:0;min-height:300px;margin:0;border:2px solid var(--study-card-border);border-radius:var(--study-card-radius);background:radial-gradient(circle at 82% 16%,rgb(137 80 255 / 18%),transparent 30%),linear-gradient(140deg,#291f73f5,#15114df5);box-shadow:inset 0 1px #ffffff21,0 10px 24px #04012073}.app-shell[data-screen=study] .study-example{grid-column:auto;grid-row:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 38px}.app-shell[data-screen=study] .study-equation{display:flex;align-items:center;justify-content:center;gap:20px;width:100%;margin:0;color:var(--color-text-primary);font:900 clamp(60px,7.5vw,96px)/1 var(--font-math);letter-spacing:-.055em;white-space:nowrap}.app-shell[data-screen=study] .study-equation .factor-a,.app-shell[data-screen=study] .study-equation strong{color:#ffd22f}.app-shell[data-screen=study] .study-equation .factor-b,.app-shell[data-screen=study] .study-equation .multiply{color:#bc87ff}.app-shell[data-screen=study] .study-equation .multiply,.app-shell[data-screen=study] .study-equation .equals{font-size:.75em}.app-shell[data-screen=study] .study-dots{width:92%;height:9px;margin:24px auto 18px;background-image:radial-gradient(circle,#a85eea 3px,transparent 3.5px);background-size:13px 9px;background-position:center}.app-shell[data-screen=study] .study-phrase{margin:0;color:var(--color-text-primary);font:900 clamp(20px,2.2vw,29px)/1.25 var(--font-ui);text-align:center}.app-shell[data-screen=study] .study-visual{display:grid;grid-template-rows:1fr auto;padding:12px 20px 20px;overflow:hidden}.app-shell[data-screen=study] .study-visual-scene{position:relative;display:grid;place-items:center;min-height:230px}.app-shell[data-screen=study] .study-visual .planet-art{width:255px;height:235px;filter:drop-shadow(0 0 18px rgb(255 190 30 / 40%));animation:study-float 5s ease-in-out infinite}.app-shell[data-screen=study] .study-visual-star{position:absolute;right:10%;bottom:32px;width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 0 9px rgb(255 198 34 / 80%))}.app-shell[data-screen=study] .study-spark{position:absolute;color:#fff7ac;font-size:24px}.app-shell[data-screen=study] .spark-one{left:13%;top:22%}.app-shell[data-screen=study] .spark-two{right:18%;top:12%}.app-shell[data-screen=study] .study-visual>p{margin:0;font:900 clamp(21px,2.5vw,31px)/1.15 var(--font-ui);text-align:center}.app-shell[data-screen=study] .study-navigation{display:grid;grid-template-columns:1.15fr .82fr .93fr;gap:16px;margin:16px 0 0}.app-shell[data-screen=study] .study-navigation .button{min-width:0;min-height:70px;padding:10px 18px;border-radius:23px;font-size:clamp(18px,2.1vw,27px);white-space:nowrap}.app-shell[data-screen=study] .study-navigation .study-listen,.app-shell[data-screen=study] .study-navigation .study-previous,.app-shell[data-screen=study] .study-navigation .study-next{grid-column:auto;grid-row:auto;margin:0}.app-shell[data-screen=study] .study-navigation .study-next{font-size:clamp(20px,2.4vw,31px)}.app-shell[data-screen=study] .study-next-rocket{width:44px;height:44px;flex:0 0 44px;object-fit:contain}.app-shell[data-screen=study] .study-navigation .button.violet,.app-shell[data-screen=study] .study-toolbar .button:not(.blue){background:linear-gradient(180deg,#853ee0,#5922aa);border-color:#aa72ff}.app-shell[data-screen=study] .study-navigation .button.blue,.app-shell[data-screen=study] .study-toolbar .button.blue{background:linear-gradient(180deg,#27a8f4,#1767cc);border-color:#75ccff}.app-shell[data-screen=study] .study-status-region{min-height:20px;margin-top:4px;color:var(--color-text-secondary);font-size:16px;text-align:center}.app-shell[data-screen=study] .study-status-region span+span{margin-left:14px}.app-shell[data-screen=study] .study-motivation{display:flex;align-items:center;justify-content:center;gap:14px;min-height:48px;margin:0;color:var(--color-text-secondary);font:900 clamp(19px,2.1vw,27px)/1.2 var(--font-ui)}.app-shell[data-screen=study] .study-motivation svg{width:38px;height:38px;color:var(--color-gold-500);fill:currentColor;filter:drop-shadow(0 0 8px rgb(255 190 30 / 65%))}.app-shell[data-screen=study] footer{position:relative;z-index:var(--z-study-controls);margin-top:0}.app-shell[data-screen=study] footer>nav:not(.planet-bottom-navigation){display:grid;grid-template-columns:repeat(4,1fr);min-height:var(--study-navigation-height);gap:0;padding:0;border:2px solid #553797;border-radius:25px 25px 0 0;background:linear-gradient(180deg,#211761fa,#100c41fa);overflow:hidden}.app-shell[data-screen=study] footer>nav>a{justify-content:center;gap:12px;min-width:0;padding:8px 10px;border-right:1px solid rgb(151 115 229 / 35%);color:#d7a7f7;font-size:clamp(16px,1.8vw,22px);text-decoration:none}.app-shell[data-screen=study] footer>nav>a:last-child{border-right:0}.app-shell[data-screen=study] footer .avatar-art,.app-shell[data-screen=study] footer .nav-planet,.app-shell[data-screen=study] footer svg{width:52px;height:52px;flex:0 0 52px}.app-shell[data-screen=study] .page:has(.study-complete){min-height:530px;padding:14px 20px 12px;border:2px solid var(--color-panel-border);border-radius:28px;background:linear-gradient(145deg,#23196af2,#0d0b43f5);overflow:hidden}.app-shell[data-screen=study] .page:has(.study-complete)>h1{position:relative;z-index:2;max-width:none;margin:0;color:var(--color-text-primary);font:900 clamp(34px,4.7vw,58px)/1.1 var(--font-heading);text-align:center;text-shadow:0 3px 0 #714104,0 0 18px rgb(255 205 64 / 38%)}.app-shell[data-screen=study] .study-complete-lead{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;margin:3px 0 4px;font:900 clamp(17px,2vw,24px)/1.2 var(--font-ui);text-align:center}.app-shell[data-screen=study] .study-complete-lead svg{color:var(--color-gold-300);fill:currentColor}.app-shell[data-screen=study] .study-complete-scene{position:relative;height:158px;margin:-10px 0 -5px;pointer-events:none}.app-shell[data-screen=study] .study-complete-scene:before{content:"";position:absolute;left:7%;right:14%;bottom:30px;height:76px;border-bottom:10px solid #ffd54f;border-radius:50%;transform:rotate(-4deg);filter:drop-shadow(0 0 10px #ffae19)}.app-shell[data-screen=study] .study-complete-scene .rocket-celebration{position:absolute;left:26%;bottom:-34px;width:250px;height:180px;margin:0;transform:rotate(72deg)}.app-shell[data-screen=study] .study-complete-scene .rocket-fallback{position:relative;z-index:2;animation:study-rocket-flight 2.4s ease-in-out infinite alternate}.app-shell[data-screen=study] .study-complete-scene .study-complete-planet{position:absolute;right:5%;top:-20px;width:190px;height:190px;filter:drop-shadow(0 0 20px rgb(255 196 40 / 75%))}.app-shell[data-screen=study] .study-summary-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr 1.08fr;gap:18px}.app-shell[data-screen=study] .study-summary-card{min-height:112px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 12px;padding:14px 20px;border:2px solid #c04dff;border-radius:20px;background:linear-gradient(145deg,#40118a,#231463);box-shadow:0 0 16px #cc4bff59}.app-shell[data-screen=study] .study-summary-card strong{font-size:clamp(20px,2.3vw,28px);line-height:1.05}.app-shell[data-screen=study] .study-summary-card>span:last-child{grid-column:2;color:var(--color-text-secondary);font-size:18px}.app-shell[data-screen=study] .study-summary-card.progress-card{border-color:var(--study-complete-cyan);box-shadow:0 0 16px #26d9fa59}.app-shell[data-screen=study] .study-summary-card.unlocked{border-color:var(--color-gold-300);box-shadow:0 0 16px #ffcf3d59}.app-shell[data-screen=study] .study-summary-card svg,.app-shell[data-screen=study] .study-crystal{grid-row:1 / 3;width:62px;height:62px;color:var(--study-complete-cyan);font-size:64px;line-height:1;filter:drop-shadow(0 0 9px currentColor)}.app-shell[data-screen=study] .study-summary-card.unlocked svg{color:var(--color-gold-300)}.app-shell[data-screen=study] .study-summary-stars{color:var(--color-gold-300)!important;font-size:16px!important}.app-shell[data-screen=study] .study-memory{display:flex;align-items:center;gap:10px;margin-top:12px;padding:8px 12px;border:2px dashed #ab71ec;border-radius:18px}.app-shell[data-screen=study] .study-memory>strong{flex:0 0 auto}.app-shell[data-screen=study] .study-memory .example-chips{flex:1;flex-wrap:nowrap;gap:6px;margin:0}.app-shell[data-screen=study] .study-memory .example-chips span{min-width:0;padding:7px 9px;font-size:16px;white-space:nowrap}.app-shell[data-screen=study] .study-memory .example-chips .last{border-color:var(--color-gold-300);background:#6b4706;box-shadow:0 0 12px #ffcf3da6}.app-shell[data-screen=study] .study-complete-bottom{display:grid;grid-template-columns:.95fr 1.7fr;gap:16px;align-items:center;margin-top:10px}.app-shell[data-screen=study] .study-mascot-praise{position:relative;display:flex;align-items:center;min-height:82px}.app-shell[data-screen=study] .study-mascot-praise img{width:92px;height:105px;object-fit:cover;object-position:center top;mix-blend-mode:screen}.app-shell[data-screen=study] .study-mascot-praise p{position:relative;margin:0 0 0 -6px;padding:12px 14px;border:2px solid #9d65e4;border-radius:18px;background:var(--color-paper);color:var(--color-paper-ink);font-weight:900;line-height:1.2}.app-shell[data-screen=study] .study-complete-actions{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.app-shell[data-screen=study] .study-complete-actions .button{min-height:72px;font-size:clamp(20px,2.2vw,29px)}.app-shell[data-screen=study] .study-complete>.crystal-counter{position:absolute;top:14px;right:18px;opacity:0;pointer-events:none}@keyframes study-float{50%{transform:translateY(-7px) rotate(1deg)}}@keyframes study-rocket-flight{to{transform:translateY(-18px) rotate(3deg)}}@media(max-width:1167px){.app-shell[data-screen=study]{--study-header-height: 196px}.app-shell[data-screen=study] .brand{width:500px}.app-shell[data-screen=study] .toolbar{top:124px;left:0}.app-shell[data-screen=study] .header-tools{top:124px}.app-shell[data-screen=study] .page:has(.study-progress)>h1{top:calc(-1 * var(--study-header-height) + 124px);right:195px}.app-shell[data-screen=study] .study-toolbar{top:calc(-1 * var(--study-header-height) + 124px);right:383px}.app-shell[data-screen=study] .study-toolbar .button{font-size:0;width:58px;padding:10px}.app-shell[data-screen=study] .study-toolbar .button svg{width:28px;height:28px}.app-shell[data-screen=study] .study-card-grid,.app-shell[data-screen=study] .study-example,.app-shell[data-screen=study] .study-visual{min-height:280px}.app-shell[data-screen=study] .study-equation{gap:12px}.app-shell[data-screen=study] .study-visual .planet-art{width:210px;height:200px}.app-shell[data-screen=study] footer>nav>a{flex-direction:column;gap:2px;font-size:16px}}@media(min-width:761px)and (max-width:820px){.app-shell[data-screen=study] .study-toolbar{left:248px;right:auto}.app-shell[data-screen=study] .page:has(.study-progress)>h1{left:382px;right:auto;width:154px;padding-inline:8px}}@media(max-width:760px){.app-shell[data-screen=study]{--study-header-height: auto;--study-page-inline: 10px;overflow:visible}.app-shell[data-screen=study] .app-header{min-height:176px}.app-shell[data-screen=study] .header{min-height:104px}.app-shell[data-screen=study] .brand{position:relative;width:calc(100% - 76px);min-height:92px;grid-template-columns:78px 1fr;gap:4px;font-size:clamp(22px,7.2vw,29px)}.app-shell[data-screen=study] .brand .brand-planet{width:78px;height:78px}.app-shell[data-screen=study] .brand small{font-size:17px}.app-shell[data-screen=study] .profile-badge{top:-4px;right:-5px;width:78px;min-height:100px;font-size:13px}.app-shell[data-screen=study] .profile-robot{width:74px;height:78px}.app-shell[data-screen=study] .toolbar{top:106px;left:0;right:64px;width:auto}.app-shell[data-screen=study] .toolbar .button{flex:1;min-width:0;padding:8px 10px;font-size:17px}.app-shell[data-screen=study] .header-tools{top:106px;right:0}.app-shell[data-screen=study] .header-settings{width:56px;height:56px}.app-shell[data-screen=study] .page:has(.study-progress)>h1{position:relative;top:auto;right:auto;width:calc(100% - 128px);min-height:56px;margin:0 0 8px;font-size:19px}.app-shell[data-screen=study] .study-toolbar{position:absolute;top:0;right:0;width:120px;gap:8px}.app-shell[data-screen=study] .study-toolbar .button{width:56px;min-height:56px;padding:10px;font-size:0}.app-shell[data-screen=study] .study-toolbar .button svg{width:28px;height:28px}.app-shell[data-screen=study] .study-progress{margin-top:12px}.app-shell[data-screen=study] .study-progress-label{padding-inline:4px;font-size:18px}.app-shell[data-screen=study] .study-progress-label strong{font-size:20px}.app-shell[data-screen=study] .study-progress-track{margin-inline:32px 8px}.app-shell[data-screen=study] .study-progress-rocket{width:62px;height:62px}.app-shell[data-screen=study] .study-card-grid{grid-template-columns:1fr;gap:12px}.app-shell[data-screen=study] .study-example,.app-shell[data-screen=study] .study-visual{min-height:232px}.app-shell[data-screen=study] .study-example{padding:22px 14px}.app-shell[data-screen=study] .study-equation{gap:10px;font-size:clamp(47px,16vw,64px)}.app-shell[data-screen=study] .study-dots{margin-block:18px 14px}.app-shell[data-screen=study] .study-phrase{font-size:19px}.app-shell[data-screen=study] .study-visual{min-height:260px}.app-shell[data-screen=study] .study-visual-scene{min-height:196px}.app-shell[data-screen=study] .study-visual .planet-art{width:200px;height:185px}.app-shell[data-screen=study] .study-visual-star{right:12%;width:70px;height:70px}.app-shell[data-screen=study] .study-navigation{grid-template-columns:1fr 1fr;gap:10px}.app-shell[data-screen=study] .study-navigation .study-next{grid-column:1 / -1;grid-row:1}.app-shell[data-screen=study] .study-navigation .button{min-height:62px;padding:9px;font-size:16px;white-space:normal}.app-shell[data-screen=study] .study-navigation .study-next{font-size:21px}.app-shell[data-screen=study] .study-next-rocket{width:32px;height:32px;flex-basis:32px}.app-shell[data-screen=study] .study-motivation{min-height:58px;font-size:18px}.app-shell[data-screen=study] footer>nav:not(.planet-bottom-navigation){grid-template-columns:1fr 1fr;border-radius:24px}.app-shell[data-screen=study] footer>nav>a{min-height:76px;flex-direction:row;font-size:15px}.app-shell[data-screen=study] footer .avatar-art,.app-shell[data-screen=study] footer .nav-planet,.app-shell[data-screen=study] footer svg{width:44px;height:44px;flex-basis:44px}.app-shell[data-screen=study] .pwa-notice{bottom:16px}.app-shell[data-screen=study] .page:has(.study-complete){padding:18px 12px}.app-shell[data-screen=study] .page:has(.study-complete)>h1{font-size:32px}.app-shell[data-screen=study] .study-complete-scene{height:150px}.app-shell[data-screen=study] .study-complete-scene .rocket-celebration{left:0}.app-shell[data-screen=study] .study-complete-scene .study-complete-planet{right:-20px;width:150px;height:150px}.app-shell[data-screen=study] .study-summary-grid{grid-template-columns:1fr;gap:10px}.app-shell[data-screen=study] .study-summary-card{min-height:90px}.app-shell[data-screen=study] .study-memory{display:block}.app-shell[data-screen=study] .study-memory .example-chips{flex-wrap:wrap;margin-top:8px}.app-shell[data-screen=study] .study-complete-bottom,.app-shell[data-screen=study] .study-complete-actions{grid-template-columns:1fr}.app-shell[data-screen=study] .study-complete-actions .button{min-height:64px}}@media(prefers-reduced-motion:reduce){.app-shell[data-screen=study] .study-visual .planet-art,.app-shell[data-screen=study] .study-progress-fill,.app-shell[data-screen=study] .study-progress-rocket,.app-shell[data-screen=study] .study-complete-scene .rocket-fallback{animation:none;transition:none}}.app-shell[data-screen=challenge]{width:min(100%,var(--study-screen-width));max-width:var(--study-screen-width)}.app-shell[data-screen=challenge] .page:has(.challenge-options){min-height:540px;padding:20px 24px;border:0;background:transparent;box-shadow:none}.app-shell[data-screen=challenge] .page:has(.challenge-options)>h1{max-width:none;margin:0 0 12px;color:var(--color-gold-300);font:900 clamp(42px,6vw,72px)/1 var(--font-heading);text-align:center;text-shadow:0 4px 0 #8f5200,0 0 22px rgb(255 190 30 / 55%)}.app-shell[data-screen=challenge] .challenge-options{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.92fr);grid-template-rows:305px auto auto;gap:12px 24px}.app-shell[data-screen=challenge] .challenge-options>*,.app-shell[data-screen=challenge] .challenge-rule-cards article,.app-shell[data-screen=challenge] .challenge-start-actions .button{min-width:0}.app-shell[data-screen=challenge] .guardian-art{grid-column:1;grid-row:1;position:relative;min-height:305px;display:block}.app-shell[data-screen=challenge] .guardian-art .planet-art{position:absolute;left:80px;top:0;width:260px;height:260px;filter:drop-shadow(0 0 22px rgb(255 196 30 / 68%))}.app-shell[data-screen=challenge] .guardian-art img{position:absolute;left:300px;right:auto;bottom:42px;width:155px;height:190px;object-fit:cover;object-position:center top;mix-blend-mode:screen;filter:drop-shadow(0 0 13px rgb(53 205 255 / 55%))}.app-shell[data-screen=challenge] .guardian-art h2{position:absolute;left:74px;right:62px;bottom:2px;margin:0;padding:6px 16px;border:2px solid var(--color-gold-300);border-radius:var(--radius-pill);background:#181053eb;color:var(--color-text-primary);font-size:clamp(21px,2.6vw,31px);text-align:center;box-shadow:0 0 14px #ffbe1e61}.app-shell[data-screen=challenge] .guardian-copy{grid-column:2;grid-row:1;display:grid;place-items:center}.app-shell[data-screen=challenge] .guardian-copy p{position:relative;margin:0;padding:28px 30px;border:4px solid #8e55d9;border-radius:38px;background:var(--color-paper);color:var(--color-paper-ink);font:900 clamp(20px,2.3vw,29px)/1.35 var(--font-ui);text-align:center;box-shadow:var(--shadow-panel)}.app-shell[data-screen=challenge] .guardian-copy p:before{content:"";position:absolute;left:-36px;bottom:26px;border-width:20px 38px 8px 0;border-style:solid;border-color:transparent #8e55d9 transparent transparent}.app-shell[data-screen=challenge] .challenge-rule-cards{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.app-shell[data-screen=challenge] .challenge-rule-cards article{min-height:92px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:4px 9px;padding:12px;border:2px solid #5b6ac6;border-radius:18px;background:linear-gradient(145deg,#1c2b78,#151052);box-shadow:inset 0 1px #ffffff26}.app-shell[data-screen=challenge] .challenge-rule-cards svg{grid-row:1 / 3;width:48px;height:48px;color:var(--color-gold-300)}.app-shell[data-screen=challenge] .challenge-rule-cards strong{color:var(--color-gold-300);font-size:34px;line-height:1}.app-shell[data-screen=challenge] .challenge-rule-cards span{font-size:17px;font-weight:900;line-height:1.1}.app-shell[data-screen=challenge] .challenge-orbit-copy{grid-column:1;grid-row:3;margin:0;color:var(--color-text-primary);font-size:21px;text-align:center}.app-shell[data-screen=challenge] .challenge-orbit-copy strong{color:var(--color-gold-300)}.app-shell[data-screen=challenge] .challenge-start-actions{grid-column:2;grid-row:2 / 4;display:grid;align-content:center;gap:14px}.app-shell[data-screen=challenge] .challenge-start-actions .button{min-height:70px;padding:12px 18px;font-size:clamp(20px,2.4vw,29px)}.app-shell[data-screen=challenge] .page:has(.challenge-options)>.actions{display:none}@media(max-width:700px){.app-shell[data-screen=challenge] .page:has(.challenge-options){padding:18px 10px}.app-shell[data-screen=challenge] .page:has(.challenge-options)>h1{font-size:42px}.app-shell[data-screen=challenge] .challenge-options{grid-template-columns:1fr;grid-template-rows:auto}.app-shell[data-screen=challenge] .guardian-art,.app-shell[data-screen=challenge] .guardian-copy,.app-shell[data-screen=challenge] .challenge-rule-cards,.app-shell[data-screen=challenge] .challenge-orbit-copy,.app-shell[data-screen=challenge] .challenge-start-actions{grid-column:1;grid-row:auto}.app-shell[data-screen=challenge] .guardian-art{min-height:280px}.app-shell[data-screen=challenge] .guardian-art .planet-art{left:0;width:220px;height:220px}.app-shell[data-screen=challenge] .guardian-art img{left:auto;right:0;width:135px;height:175px}.app-shell[data-screen=challenge] .guardian-art h2{left:8px;right:8px}.app-shell[data-screen=challenge] .guardian-copy p:before{display:none}.app-shell[data-screen=challenge] .challenge-rule-cards{grid-template-columns:1fr}}[data-screen=trainer] .page,[data-screen=race] .page,[data-screen=results] .page,[data-screen=mistakes] .page{background:transparent;border:0;box-shadow:none;padding:12px 0 4px}[data-screen=trainer] .page>h1,[data-screen=race] .page>h1,[data-screen=results] .page>h1{max-width:none;margin:0;text-align:center;font-size:clamp(34px,4.4vw,56px);font-weight:1000;text-shadow:0 4px 0 rgb(10 4 47 / 72%)}[data-screen=trainer] .page>.description,[data-screen=race] .page>.description,[data-screen=results] .page>.description{max-width:none;margin:6px auto 18px;text-align:center;color:var(--color-text-primary);font-size:clamp(17px,2vw,22px);font-weight:800}.trainer-route-layout{position:relative;margin-top:12px}.trainer-guide{position:absolute;z-index:1;left:-78px;bottom:-12px;width:150px;display:grid;justify-items:center}.trainer-guide p{position:relative;width:155px;margin:0 0 -4px;padding:14px 12px;border:3px solid var(--color-violet-400);border-radius:22px;background:var(--color-paper);color:var(--color-paper-ink);font-size:14px;font-weight:900;line-height:1.35;text-align:center;box-shadow:var(--trainer-panel-shadow)}.trainer-guide img{width:116px;height:150px;object-fit:contain}.trainer-levels{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 0 120px}.trainer-levels>.trainer-route-card{position:relative;display:grid;grid-template-rows:150px auto minmax(70px,auto) auto auto;align-items:start;gap:8px;min-width:0;min-height:392px;padding:16px 16px 14px;overflow:hidden;border:3px solid var(--color-blue-300);border-radius:var(--trainer-route-radius);background:radial-gradient(circle at 50% 17%,rgb(51 107 231 / 30%),transparent 37%),linear-gradient(165deg,#19145d,#090836);color:var(--color-text-primary);box-shadow:var(--trainer-panel-shadow),inset 0 0 30px #3083ff21;text-align:center}.trainer-levels>.trainer-route-card.recommended{border-color:var(--trainer-cta);background:radial-gradient(circle at 50% 17%,rgb(255 190 30 / 25%),transparent 37%),linear-gradient(165deg,#34205f,#10083d);box-shadow:var(--shadow-gold-glow),var(--trainer-panel-shadow);transform:translateY(-4px) scale(1.015)}.trainer-levels>.trainer-route-card.route-hint{border-color:#4de7d4;background:radial-gradient(circle at 50% 17%,rgb(50 231 218 / 25%),transparent 37%),linear-gradient(165deg,#103963,#071c45)}.trainer-route-card:not(:disabled):hover,.trainer-route-card:focus-visible{transform:translateY(-6px);filter:brightness(1.08)}.trainer-route-card.recommended:not(:disabled):hover,.trainer-route-card.recommended:focus-visible{transform:translateY(-8px) scale(1.015)}.route-badge{position:absolute;z-index:2;top:12px;left:12px;display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--radius-pill);background:var(--trainer-cta);color:var(--color-text-on-gold);font-size:13px!important;font-weight:1000}.route-badge svg{width:18px;height:18px}.route-visual{display:grid;place-items:center;width:100%;min-width:0}.route-visual .game-art{width:142px;height:142px;filter:drop-shadow(0 8px 14px rgb(0 0 0 / 38%))}.route-galaxy .game-art{width:180px;height:136px}.trainer-route-card>strong{font-size:clamp(24px,2.6vw,32px);line-height:1.05}.trainer-route-card .route-description{font-size:16px!important;line-height:1.35;font-weight:750;color:var(--color-text-primary)}.route-meta{display:flex;justify-content:space-between;gap:8px;width:100%;padding-top:10px;border-top:1px solid rgb(255 255 255 / 24%);font-size:14px!important;font-weight:900}.route-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;border-radius:16px;background:linear-gradient(#36a3ff,#1372d9);box-shadow:0 4px #074d9b;color:#fff;font-size:17px!important;font-weight:1000}.recommended .route-action{background:linear-gradient(#ffe366,#ffb914);box-shadow:0 4px #b36f00;color:var(--color-text-on-gold)}.route-hint .route-action{background:linear-gradient(#30d5ca,#099b9d);box-shadow:0 4px #066e78}.route-action svg{width:26px;height:26px}[data-screen=trainer] .page:has(.trainer-session),[data-screen=trainer] .page:has(.trainer-question),[data-screen=trainer] .page:has(.trainer-feedback){display:block}[data-screen=trainer] .page:has(.trainer-session)>h1{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}[data-screen=race] .page:has(.race-session)>h1,[data-screen=race] .page:has(.race-session)>.description{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.trainer-session,.race-session{display:grid;gap:12px}.trainer-session-header,.race-hud{display:grid;grid-template-columns:minmax(230px,1.15fr) minmax(260px,1fr) auto;align-items:center;gap:12px;padding:12px 16px;border:2px solid var(--color-panel-border);border-radius:24px;background:linear-gradient(100deg,#1c115bf5,#090d3cf5);box-shadow:var(--trainer-panel-shadow)}.trainer-mode-chip,.result-route-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 14px;border-radius:var(--radius-pill);background:linear-gradient(120deg,#6334bd,#8b4dd6);font-size:16px;font-weight:900}.trainer-session-header .progress-label,.race-hud .progress-label{margin-bottom:5px;color:#fff}.trainer-session-header .progress-track,.race-hud .progress-track{height:var(--trainer-progress-height);border-color:var(--color-violet-400)}.trainer-session-header .progress-fill,.race-hud .progress-fill{background:linear-gradient(90deg,#ffe45f,#77e06e);box-shadow:0 0 12px #a4ef57}.trainer-meters{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px}.trainer-session-header .trainer-meters{grid-column:3;grid-row:1}.trainer-meters>span,.race-time{display:inline-flex;align-items:center;gap:5px;min-height:48px;margin:0;padding:8px 12px;border:2px solid var(--color-panel-border);border-radius:16px;background:#15114d;font-size:18px;font-weight:900;white-space:nowrap}.trainer-meters .correct-meter{color:var(--color-gold-300)}.trainer-meters .crystal-counter,.race-hud .crystal-counter{min-height:48px;padding:5px 10px;font-size:19px}.trainer-toolbar,.race-hud-controls{display:flex;justify-content:flex-end;gap:10px;margin:0}.trainer-toolbar .button,.race-hud-controls .button{min-height:54px;padding:10px 16px;border-color:var(--color-violet-400);background:linear-gradient(#7040ce,#47259d);box-shadow:0 4px #27105f}.sound-toggle{display:inline-flex}.sound-toggle.compact span{white-space:nowrap}.trainer-repeat{margin:0;text-align:center;font-size:14px;font-weight:800;color:var(--color-text-secondary)}[data-screen=trainer] .trainer-question,[data-screen=trainer] .trainer-feedback,[data-screen=race] .race-question,[data-screen=race] .race-feedback,[data-screen=mistakes] .challenge-question{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);align-items:start;gap:18px;min-height:0;padding:18px;border:2px solid var(--color-violet-400);border-radius:28px;background:linear-gradient(135deg,#1f1a69f7,#0f0c44f7);box-shadow:var(--trainer-panel-shadow)}@media(min-width:768px){[data-screen=trainer] .trainer-question>div,[data-screen=trainer] .trainer-question .number-pad,[data-screen=trainer] .trainer-feedback .number-pad,[data-screen=race] .race-question .number-pad,[data-screen=race] .race-feedback .number-pad,[data-screen=mistakes] .challenge-question .number-pad{display:block}[data-screen=trainer] .number-pad>*,[data-screen=race] .number-pad>*,[data-screen=mistakes] .number-pad>*{grid-column:auto;grid-row:auto}}.trainer-equation-panel{display:grid;place-items:center;align-content:center;min-height:360px;padding:26px 18px;border:1px solid rgb(135 111 255 / 42%);border-radius:24px;background:radial-gradient(circle at 50% 46%,rgb(116 72 224 / 19%),transparent 45%),#0a0b386b;text-align:center}.question-kicker{margin:0 0 20px;color:var(--color-text-secondary);font-size:21px;font-weight:900}.trainer-equation-panel .study-equation{margin:0;font-family:var(--font-math);font-size:clamp(62px,7vw,96px);font-weight:900;letter-spacing:.01em;white-space:nowrap}.trainer-equation-panel .factor-a{color:var(--trainer-cta)}.trainer-equation-panel .factor-b{color:var(--color-violet-400)}.answer-result{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:220px;min-height:78px;margin-top:22px;padding:8px 28px;border:3px solid currentColor;border-radius:20px;font-family:var(--font-math);font-size:52px;font-weight:900}.correct .answer-result{color:var(--trainer-success);background:#12693361}.almost .answer-result{color:var(--trainer-error);background:#881a404d}[data-screen=trainer] .number-pad,[data-screen=race] .number-pad,[data-screen=mistakes] .number-pad{width:min(100%,390px);max-width:390px;padding:14px;border:1px solid rgb(133 105 232 / 50%);border-radius:22px;background:#0c0d3e9e}[data-screen=trainer] .answer-label,[data-screen=race] .answer-label,[data-screen=mistakes] .answer-label{margin-bottom:6px;color:var(--color-text-primary);font-size:19px;font-weight:900}[data-screen=trainer] .answer-display,[data-screen=race] .answer-display,[data-screen=mistakes] .answer-display{height:70px;border:2px solid var(--color-violet-400);border-radius:16px;background:#100c4a;font-family:var(--font-math);font-size:46px}[data-screen=trainer] .number-pad .input-hint,[data-screen=race] .number-pad .input-hint,[data-screen=mistakes] .number-pad .input-hint{margin:5px 0 8px;font-size:13px}[data-screen=trainer] .number-grid,[data-screen=race] .number-grid,[data-screen=mistakes] .number-grid{gap:8px}[data-screen=trainer] .number-grid .button,[data-screen=race] .number-grid .button,[data-screen=mistakes] .number-grid .button,[data-screen=trainer] .number-grid .icon-button,[data-screen=race] .number-grid .icon-button,[data-screen=mistakes] .number-grid .icon-button{min-height:var(--trainer-key-height);border:2px solid #7963bd;border-radius:var(--trainer-key-radius);background:linear-gradient(#383174,#242158);box-shadow:0 3px #110d3b,inset 0 1px #ffffff1f;color:#fff;font-family:var(--font-math);font-size:34px;text-shadow:none}[data-screen=trainer] .number-grid .button:not(:disabled):hover,[data-screen=race] .number-grid .button:not(:disabled):hover,[data-screen=mistakes] .number-grid .button:not(:disabled):hover{border-color:var(--color-blue-300);background:linear-gradient(#4a4292,#2d2869)}[data-screen=trainer] .key-decoration,[data-screen=race] .key-decoration,[data-screen=mistakes] .key-decoration{min-height:var(--trainer-key-height);color:var(--color-gold-300)}[data-screen=trainer] .submit-answer,[data-screen=race] .submit-answer,[data-screen=mistakes] .submit-answer{min-height:64px;margin-top:10px;border-color:#ffe45f;border-radius:18px;background:linear-gradient(#ffe75b,#ffbc14);box-shadow:0 5px #a96800,var(--shadow-gold-glow);color:var(--color-text-on-gold);font-size:24px;font-weight:1000}.trainer-feedback .feedback-copy,.race-feedback .feedback-copy{grid-column:1 / -1;grid-row:2;position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 18px;border:2px solid var(--trainer-success);border-radius:22px;background:#18692f73}.trainer-feedback>.trainer-equation-panel,.race-feedback>.trainer-equation-panel{grid-column:1;grid-row:1}.trainer-feedback>.number-pad,.race-feedback>.number-pad{grid-column:2;grid-row:1}.trainer-feedback>.number-pad :disabled,.race-feedback>.number-pad :disabled{pointer-events:none}.trainer-feedback.almost .feedback-copy,.race-feedback.almost .feedback-copy{border-color:var(--trainer-error);background:#651d4c6b}.feedback-symbol{grid-column:1;grid-row:1 / 3;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--trainer-success);color:#08361a;box-shadow:var(--trainer-success-glow)}.almost .feedback-symbol{background:var(--trainer-error);color:#57122a;box-shadow:var(--trainer-error-glow)}.feedback-symbol svg{width:34px;height:34px;stroke-width:3}.trainer-feedback .feedback-copy h2,.race-feedback .feedback-copy h2{grid-column:2;margin:0;color:#fff;font-size:clamp(23px,3vw,34px)}.trainer-feedback .feedback-copy h2:focus,.race-feedback .feedback-copy h2:focus{outline:none}.feedback-copy>p,.race-reminder p{grid-column:2;margin:2px 0;font-size:18px;font-weight:800}.feedback-copy>p,.race-reminder{grid-row:2}.feedback-copy .feedback-reward{color:var(--color-gold-300)}.addition-hint span{display:block;margin-top:4px;color:var(--color-text-secondary);font-size:15px}.feedback-actions{grid-row:1 / 3;grid-column:3;display:grid;gap:8px}.feedback-actions .button,.race-feedback .feedback-copy>.button{min-height:56px}.race-feedback .feedback-copy>.button{grid-column:3;grid-row:1 / 3}.hint-table{margin:0;background:#120e4bd6}.race-hud{grid-template-columns:auto 140px minmax(230px,1fr) auto auto}.race-hud-controls{justify-content:flex-start}.race-time{justify-content:center}.race-timer-option{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:800}.race-timer-option input{width:22px;height:22px;accent-color:var(--trainer-cta)}.race-track-panel{position:sticky;z-index:0;top:8px;overflow:hidden;border:2px solid var(--color-violet-400);border-radius:26px;background:#08072f8f;box-shadow:var(--trainer-panel-shadow)}.race-question,.race-feedback{position:relative;z-index:1}.race-distances{position:absolute;z-index:2;inset:8px 14px auto;display:grid;grid-template-columns:1fr 1fr;gap:22px;pointer-events:none}.race-distances .progress{padding:7px 10px;border-radius:14px;background:#040526bf}.race-distances .progress-label{margin-bottom:3px;color:#fff;font-size:13px}.race-distances .progress-track{height:12px}.race-distances .progress:first-child .progress-fill{background:linear-gradient(90deg,#36d897,#52e7ff)}.race-distances .progress:last-child .progress-fill{background:linear-gradient(90deg,#c05aff,#f555cc)}.race-canvas{height:185px;margin:0;border:0;border-radius:0}.race-question{min-height:0}.race-question .trainer-equation-panel{min-height:320px}.race-motivation{margin:26px 0 0;padding:10px 16px;border:2px solid var(--trainer-cta);border-radius:var(--radius-pill);color:var(--color-gold-300);font-size:17px;font-weight:900}.race-reminder{min-width:0}.race-reminder p:first-child{color:#fff;font-size:20px}.race-reminder p:last-child{color:var(--color-text-secondary);font-size:15px}.race-finish{padding:24px;border:2px solid var(--trainer-success);border-radius:26px;background:#0e523773}.results-reference{display:grid;gap:14px}.results-reference .friendly-status{position:relative;display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:4px 18px;padding:14px 26px;border:2px solid var(--color-panel-border);border-radius:28px;background:linear-gradient(115deg,#29176ff0,#0d0b42f0);box-shadow:var(--trainer-panel-shadow)}.results-reference .friendly-status>.game-art{grid-row:1 / 4;width:128px;height:128px}.results-reference .friendly-status h2{margin:0;color:var(--color-gold-300);font-size:clamp(28px,4vw,48px);text-shadow:0 3px 0 #925800}.results-reference .friendly-status p{margin:0;font-size:18px;font-weight:800}.results-reference .friendly-status>.result-route-chip{justify-self:start;min-height:38px;padding:6px 12px;font-size:14px;line-height:1.25;color:#fff}.results-reference .result-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.results-reference .result-stats .result-metric{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 8px;min-width:0;margin:0;padding:14px;border:2px solid var(--color-panel-border);border-radius:20px;background:#1a165bed;text-align:left}.result-metric>svg,.result-metric>span:first-child{grid-row:1 / 3;width:42px;height:42px;color:var(--color-blue-300);font-size:42px}.result-metric.success>svg{color:var(--trainer-success)}.result-metric.error>svg{color:var(--trainer-error)}.result-metric.accuracy>svg{color:var(--trainer-cta)}.results-reference .result-stats strong{font-size:30px;line-height:1;color:#fff}.results-reference .result-stats span:not(:first-child){color:var(--color-text-secondary);font-size:14px;font-weight:900}.results-reference .result-summary{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px;margin:0}.results-reference .result-detail,.results-reference .result-next{display:flex;align-items:center;justify-content:center;gap:14px;min-height:112px;margin:0;padding:14px 20px;border:2px solid var(--color-violet-400);border-radius:22px;background:#191357eb;text-align:left}.reward-card .crystal-counter{background:transparent;border:0;font-size:28px}.reward-card p{margin:0;color:var(--color-gold-300);font-size:24px;font-weight:1000}.reward-card small{display:block;color:var(--color-text-secondary);font-size:13px}.results-reference .result-next>svg{width:58px;height:58px;color:var(--color-gold-300)}.results-reference .result-next h2{margin:0;font-size:22px}.results-reference .result-next .progress{max-width:240px}.results-reference .result-next p{margin:0;font-size:14px}.weak-examples{display:flex;align-items:center;gap:16px;min-height:72px;padding:12px 18px;border:2px dashed var(--color-violet-400);border-radius:20px;background:#0c093cb8}.weak-examples h2{display:flex;align-items:center;gap:8px;margin:0;font-size:19px;white-space:nowrap}.weak-examples h2 svg{color:var(--color-gold-300)}.weak-examples p{margin:0}.weak-example-list{display:flex;flex-wrap:wrap;gap:8px}.weak-example-list span{padding:8px 14px;border:2px solid var(--color-violet-400);border-radius:12px;background:#6b3cc2;font-family:var(--font-math);font-size:19px;font-weight:900}.results-reference .actions{justify-content:center;margin:0}.results-reference .actions .button{min-height:58px}.results-reference .result-primary-action{min-width:260px}@media(max-width:1220px){.trainer-guide{position:static;width:auto;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.trainer-guide p{width:min(470px,calc(100% - 120px));margin:0 -10px 0 0}.trainer-guide img{width:94px;height:104px}.trainer-levels{margin-left:0}}@media(max-width:900px){.trainer-levels{grid-template-columns:1fr;max-width:620px;margin-inline:auto}.trainer-levels>.trainer-route-card{grid-template-columns:150px 1fr;grid-template-rows:auto auto auto auto;min-height:260px;text-align:left}.route-visual{grid-row:1 / 5}.route-meta,.route-action{grid-column:2}.trainer-session-header{grid-template-columns:1fr 1fr}.trainer-session-progress{grid-column:1 / -1;grid-row:2}.trainer-meters{justify-self:end}.race-hud{grid-template-columns:1fr 1fr auto}.race-progress{grid-column:1 / 3;grid-row:2}.race-hud .crystal-counter{grid-column:3;grid-row:2}.race-timer-option{grid-column:1 / -1;justify-self:center;min-height:44px;padding:6px 10px}[data-screen=trainer] .trainer-question,[data-screen=trainer] .trainer-feedback,[data-screen=race] .race-question,[data-screen=race] .race-feedback{grid-template-columns:1fr}.trainer-equation-panel{min-height:240px}.trainer-feedback .feedback-copy,.race-feedback .feedback-copy{grid-template-columns:auto 1fr}.trainer-feedback>.trainer-equation-panel,.race-feedback>.trainer-equation-panel,.trainer-feedback>.number-pad,.race-feedback>.number-pad{grid-column:1;grid-row:auto}.feedback-actions,.race-feedback .feedback-copy>.button{grid-column:1 / -1;grid-row:auto}.feedback-actions{display:flex}.results-reference .result-stats{grid-template-columns:1fr 1fr}.results-reference .result-summary{grid-template-columns:1fr}}@media(max-width:600px){[data-screen=trainer] .page,[data-screen=race] .page,[data-screen=results] .page,[data-screen=mistakes] .page{padding-inline:0}[data-screen=trainer] .page>h1,[data-screen=race] .page>h1,[data-screen=results] .page>h1{font-size:31px}.trainer-guide{margin:0 4px 12px}.trainer-guide p{width:calc(100% - 76px);padding:10px;font-size:13px}.trainer-guide img{width:70px;height:82px}.trainer-levels{gap:14px}.trainer-levels>.trainer-route-card{grid-template-columns:104px 1fr;min-height:250px;padding:14px 12px;border-radius:22px}.trainer-levels>.trainer-route-card.recommended{transform:none;padding-top:46px}.route-visual .game-art,.route-galaxy .game-art{width:104px;height:104px}.trainer-route-card>strong{font-size:24px}.trainer-route-card .route-description{font-size:14px!important}.route-meta{flex-direction:column;font-size:13px!important}.route-action{min-height:48px;font-size:14px!important}.trainer-session-header,.race-hud{grid-template-columns:1fr auto;gap:8px;padding:10px;border-radius:18px}.trainer-mode-chip{justify-content:flex-start;min-width:0;padding:7px 10px;font-size:13px}.trainer-mode-chip span{overflow:hidden;line-height:1.15;white-space:normal}.trainer-session-progress,.race-progress{grid-column:1 / -1;grid-row:2}.trainer-meters{gap:4px}.trainer-meters>span,.trainer-meters .crystal-counter{min-height:42px;padding:5px 8px;font-size:14px}.trainer-meters .correct-meter{display:none}.trainer-toolbar,.race-hud-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:7px}.race-hud-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.trainer-toolbar .button,.race-hud-controls .button{width:100%;min-width:0;min-height:52px;padding:8px 6px;font-size:13px}.sound-toggle.compact span{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.trainer-toolbar .sound-toggle,.trainer-toolbar .sound-toggle .button,.race-hud-controls .sound-toggle,.race-hud-controls .sound-toggle .button{width:100%}[data-screen=trainer] .trainer-question,[data-screen=trainer] .trainer-feedback,[data-screen=race] .race-question,[data-screen=race] .race-feedback{gap:10px;padding:10px;border-radius:20px}.trainer-equation-panel,.race-question .trainer-equation-panel{min-height:190px;padding:16px 8px;border-radius:18px}.question-kicker{margin-bottom:8px;font-size:16px}.trainer-equation-panel .study-equation{font-size:clamp(48px,15vw,68px)}.answer-result{min-width:180px;min-height:60px;margin-top:12px;font-size:40px}[data-screen=trainer] .number-pad,[data-screen=race] .number-pad,[data-screen=mistakes] .number-pad{padding:10px;border-radius:18px}[data-screen=trainer] .number-grid .button,[data-screen=race] .number-grid .button,[data-screen=mistakes] .number-grid .button,[data-screen=trainer] .number-grid .icon-button,[data-screen=race] .number-grid .icon-button,[data-screen=mistakes] .number-grid .icon-button,[data-screen=trainer] .key-decoration,[data-screen=race] .key-decoration,[data-screen=mistakes] .key-decoration{min-height:56px;font-size:29px}.trainer-feedback .feedback-copy,.race-feedback .feedback-copy{padding:12px}.feedback-symbol{width:48px;height:48px}.trainer-feedback .feedback-copy h2,.race-feedback .feedback-copy h2{font-size:21px}.feedback-copy>p,.race-reminder p{grid-column:1 / -1;font-size:16px}.feedback-actions{flex-direction:column}.race-hud{grid-template-columns:minmax(0,1fr) auto}.race-time{padding:6px 9px;font-size:14px}.race-hud .crystal-counter{display:none}.race-distances{inset:6px;gap:6px}.race-distances .progress{padding:5px}.race-canvas{height:190px}.race-motivation{margin-top:12px;font-size:14px}.results-reference .friendly-status{grid-template-columns:76px 1fr;padding:12px}.results-reference .friendly-status>.game-art{width:76px;height:76px}.results-reference .friendly-status h2{font-size:25px}.results-reference .friendly-status p{font-size:14px}.results-reference .friendly-status>.result-route-chip{grid-column:1 / -1;justify-self:stretch;font-size:12px}.results-reference .result-stats{gap:7px}.results-reference .result-stats .result-metric{padding:10px 8px}.result-metric>svg,.result-metric>span:first-child{width:30px;height:30px;font-size:30px}.results-reference .result-stats strong{font-size:24px}.results-reference .result-detail,.results-reference .result-next{flex-wrap:wrap;min-height:96px;padding:12px}.results-reference .result-next .progress{flex-basis:100%}.weak-examples{display:grid;gap:10px}.weak-examples h2{white-space:normal}.results-reference .actions{display:grid;grid-template-columns:1fr;width:100%}.results-reference .actions .button{width:100%;min-width:0}}@media(prefers-reduced-motion:reduce){.trainer-route-card,.progress-fill{transition:none!important}}.app-shell[data-screen=race]{--race-gold: var(--color-gold-300);--race-purple: var(--color-violet-400);--race-blue: var(--color-blue-300);--race-success: #65ed99;--race-error: #ff6b91;--race-card: rgb(18 16 76 / 94%);--race-card-deep: rgb(8 13 60 / 96%);--race-glow: 0 0 22px rgb(138 82 255 / 42%)}.app-shell[data-screen=race] .profile-robot{width:64px;height:64px;object-fit:contain;pointer-events:none}[data-screen=race] .page:has(.race-setup),[data-screen=race] .page:has(.race-session),[data-screen=race] .page:has(.race-result){min-height:0;padding:8px 0 0;border:0;background:transparent;box-shadow:none}[data-screen=race] .page:has(.race-setup)>h1,[data-screen=race] .page:has(.race-setup)>.description,[data-screen=race] .page:has(.race-session)>h1,[data-screen=race] .page:has(.race-session)>.description,[data-screen=race] .page:has(.race-result)>h1,[data-screen=race] .page:has(.race-result)>.description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.race-stage-chip{display:flex;align-items:center;justify-content:center;gap:9px;width:fit-content;max-width:100%;min-height:46px;margin:0 auto 8px;padding:8px 22px;border:2px solid var(--color-violet-400);border-radius:var(--radius-pill);background:linear-gradient(100deg,#47209a,#7d36bf);box-shadow:inset 0 0 14px #ffffff1f,0 5px #180849bf;color:#fff;font-size:18px;font-weight:950;text-align:center}.race-rocket-image{display:block;aspect-ratio:1;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.race-inline-rocket{width:24px;height:24px;flex:0 0 auto;filter:drop-shadow(0 0 5px rgb(255 196 55 / 78%))}.race-setup,.race-result{display:grid;gap:12px}.race-setup-heading{position:relative;display:flex;align-items:center;justify-content:center;min-height:96px;text-align:center}.race-setup-heading h2,.race-result>h2{margin:0;color:#fff;font-size:clamp(40px,6vw,70px);line-height:1;letter-spacing:-.035em;text-shadow:0 4px 0 #4b248b,0 0 20px rgb(172 124 255 / 52%)}.race-setup-heading p{margin:9px 0 0;color:var(--color-text-secondary);font-size:20px;font-weight:850}.race-setup-back{position:absolute;left:0;width:54px;height:54px;padding:10px;border-radius:50%}.race-choice-grid{display:grid;gap:22px;width:min(100%,970px);margin:0 auto}.race-route-grid,.race-opponent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.race-difficulty-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:16px}.race-choice-card{position:relative;display:grid;grid-template-rows:auto auto auto auto auto;align-items:start;min-width:0;min-height:430px;padding:18px;overflow:hidden;border:3px solid var(--race-purple);border-radius:30px;background:radial-gradient(circle at 50% 20%,rgb(97 66 219 / 28%),transparent 42%),linear-gradient(150deg,var(--race-card),var(--race-card-deep));box-shadow:var(--race-glow),inset 0 0 20px #7356e024;text-align:center}.race-choice-card.ordinary{border-color:var(--race-gold);box-shadow:0 0 24px #ffce3659,inset 0 0 20px #ffd1401f}.race-choice-card.mixed,.race-choice-card.player{border-color:var(--race-blue);box-shadow:0 0 24px #4ad0ff52,inset 0 0 20px #4ad0ff1f}.race-choice-card.computer,.race-choice-card.hard{border-color:#ef6fff}.race-choice-card.unavailable{filter:saturate(.72)}.race-choice-card.unavailable:after{content:"СКОРО";position:absolute;top:20px;right:-35px;width:150px;padding:7px;transform:rotate(35deg);background:#7a6fa8;color:#fff;font-size:12px;font-weight:1000;letter-spacing:.12em}.race-card-art{display:grid;place-items:center;min-height:190px;margin:-4px -4px 4px;border-radius:22px;background:radial-gradient(circle at 50% 50%,rgb(104 69 229 / 30%),transparent 54%),repeating-radial-gradient(circle at 20% 20%,rgb(255 255 255 / 72%) 0 1px,transparent 1px 34px)}.race-choice-card h3{margin:4px 0;color:#fff;font-size:clamp(26px,3vw,37px);line-height:1.05}.race-choice-card>p{min-height:50px;margin:3px 0 10px;color:var(--color-text-secondary);font-size:17px;font-weight:800}.race-card-meta{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px;border-top:1px solid rgb(177 151 255 / 55%);color:#fff;font-size:17px}.race-choice-card>.button{align-self:end;width:100%;margin-top:8px;border-color:#fff6a1;background:linear-gradient(#ffe35e,#ffb511);color:var(--color-space-950);box-shadow:0 5px #9d5800,0 0 16px #ffce3061;font-size:23px;font-weight:1000}.race-choice-card>.button:disabled{border-color:#9ba0bd;background:linear-gradient(#8f95b2,#686d91);color:#343655;box-shadow:none}.race-route-art{display:flex;gap:8px;align-items:end;justify-content:center}.race-orbit-card,.race-mixed-art span{position:relative;z-index:1;padding:8px 11px;transform:rotate(-4deg);border:2px solid #fff;border-radius:10px;background:#f7eefc;color:#1e1856;font-size:18px;font-weight:1000;box-shadow:0 5px #381d6975}.race-orbit-arrow{color:var(--race-gold);font-size:30px;font-weight:1000}.race-rocket{position:absolute;top:7px;left:50%;width:104px;height:104px;transform:translate(-50%) rotate(-5deg);filter:drop-shadow(0 0 12px #ffc337)}.race-mixed-art{position:relative;display:block}.race-mixed-art:before{content:"";position:absolute;inset:28px 50px;border:4px solid var(--race-blue);border-radius:50%;filter:drop-shadow(0 0 10px var(--race-blue));transform:rotate(-15deg)}.race-mixed-art span{position:absolute}.race-mixed-art span:nth-child(1){top:22px;left:42%}.race-mixed-art span:nth-child(2){left:18%;bottom:30px;transform:rotate(9deg);background:#ffd4fa}.race-mixed-art span:nth-child(3){right:15%;bottom:25px;transform:rotate(8deg);background:#d7ffe9}.race-duel-art{grid-template-columns:1fr 1fr}.race-duel-rocket{justify-self:center;width:112px;height:112px;filter:drop-shadow(0 0 12px var(--race-blue))}.race-duel-rocket:first-child{transform:rotate(-7deg)}.race-duel-rocket:last-child{transform:scaleX(-1) rotate(-7deg);filter:drop-shadow(0 0 12px #77e34f)}.race-computer-art{grid-template-columns:1fr auto}.race-computer-art img{width:200px;height:190px;object-fit:contain;filter:drop-shadow(0 0 14px var(--race-purple))}.race-computer-art span{font-size:64px}.race-choice-card.difficulty{min-height:480px}.race-choice-card.difficulty.easy{border-color:#50f5c0}.race-choice-card.difficulty.medium{border-color:var(--race-blue)}.race-difficulty-stars{min-height:42px;color:var(--race-gold);font-size:36px;line-height:1;letter-spacing:7px;filter:drop-shadow(0 0 6px #ffb600)}.race-difficulty-art{min-height:175px}.race-difficulty-rocket{width:132px;height:132px;filter:drop-shadow(0 0 13px currentcolor);transform:rotate(-7deg)}.race-choice-card.difficulty ul{min-height:88px;margin:4px 0 8px;padding:10px 0 0;border-top:1px solid rgb(177 151 255 / 55%);list-style:none;color:var(--color-text-secondary);font-weight:800;text-align:left}.race-choice-card.difficulty li{margin:5px 0}.race-session{display:grid;gap:10px}.race-session-links{display:flex;justify-content:center;gap:10px}.race-session-links .button{min-height:44px;padding:7px 14px;font-size:14px}.race-session>.race-stage-chip{margin-bottom:0}.race-session .race-hud{grid-template-columns:auto minmax(210px,1fr) minmax(260px,1.2fr);gap:10px;padding:10px 14px}.race-hud-status{display:flex;align-items:center;justify-content:center;gap:8px}.race-hud-status .crystal-counter{min-height:48px}.race-session .race-progress{grid-column:3}.race-session .race-timer-option{grid-column:1 / -1;justify-self:center;min-height:34px;font-size:14px}.race-track-panel{position:sticky;top:6px;z-index:2;min-height:238px;overflow:hidden;border:2px solid var(--color-violet-400);border-radius:26px;background:#0a0f3d;box-shadow:var(--shadow-panel)}.race-distances{position:absolute;inset:8px 12px auto;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;pointer-events:none}.race-distances .progress{padding:6px 10px;border:1px solid rgb(143 116 246 / 72%);border-radius:14px;background:#0a0b3ccc}.race-distances .progress-label{margin-bottom:2px;color:#fff;font-size:13px}.race-distances .progress-track{height:12px;padding:2px}.race-distances .progress:first-child .progress-fill{background:linear-gradient(90deg,#2fdfff,#5ef5a5);box-shadow:0 0 10px #2fdfff}.race-distances .progress:last-child .progress-fill{background:linear-gradient(90deg,#b25bff,#fa5ed2);box-shadow:0 0 10px #d45bff}.race-canvas{height:238px}[data-screen=race] .race-question,[data-screen=race] .race-feedback{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);padding:14px}[data-screen=race] .race-question .trainer-equation-panel{min-height:340px}[data-screen=race] .number-pad{align-self:center}.race-motivation{margin:22px 0 0;padding:9px 15px;border:2px solid var(--race-gold);border-radius:var(--radius-pill);color:var(--race-gold);font-size:16px;font-weight:900}.race-reminder p:first-child{font-size:19px}.race-result>h2{margin:3px auto;text-align:center}.race-result-first>h2{color:#fff}.race-result-hero{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:205px}.race-result-rocket{justify-self:center;width:clamp(110px,14vw,160px);height:clamp(110px,14vw,160px);transform:rotate(-7deg);filter:drop-shadow(0 0 18px #ffc437)}.race-medal{display:grid;place-items:center;font-size:clamp(100px,16vw,170px);line-height:1;filter:drop-shadow(0 0 18px #ffcf40)}.race-medal strong{margin-top:-16px;padding:8px 24px;border-radius:var(--radius-pill);background:linear-gradient(#ffe15e,#e99c00);color:#301457;font-size:20px;white-space:nowrap}.race-result-robot{justify-self:center;width:190px;height:200px;object-fit:contain;filter:drop-shadow(0 0 16px var(--race-blue))}.race-result-support{margin:-5px auto 2px;color:var(--color-text-secondary);font-size:18px;font-weight:900;text-align:center}.race-result-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:2px solid var(--color-violet-400);border-radius:24px;background:#140e52f0;box-shadow:var(--race-glow)}.race-result-stats p{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 10px;min-width:0;margin:0;padding:15px;border-right:1px solid rgb(139 105 224 / 55%)}.race-result-stats p:last-child{border-right:0}.race-result-stats p>:first-child{grid-row:1 / 3;width:50px;height:50px;display:grid;place-items:center;border-radius:50%;color:var(--race-blue);font-size:42px;font-weight:1000}.race-result-stats .success>:first-child{color:var(--race-success)}.race-result-stats .error>:first-child{color:var(--race-error)}.race-result-stats .accuracy>:first-child{color:var(--race-gold)}.race-result-stats span:nth-child(2){color:var(--color-text-secondary);font-size:15px;font-weight:900}.race-result-stats strong{color:#fff;font-size:27px;line-height:1}.race-result-stats .success strong{color:var(--race-success)}.race-result-stats .error strong{color:var(--race-error)}.race-result-stats .accuracy strong{color:var(--race-gold)}.race-reward{display:flex;align-items:center;justify-content:center;gap:12px;width:fit-content;max-width:100%;margin:0 auto;padding:8px 22px;border:2px solid #ef5cff;border-radius:22px;background:#2d1469f2;box-shadow:0 0 20px #ef5cff7a}.race-reward .crystal-counter{padding:0;border:0;background:transparent}.race-reward p{display:grid;margin:0}.race-reward strong{font-size:24px}.race-reward span{color:var(--color-gold-300);font-size:13px;font-weight:900}.race-result-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.race-result-actions .button{min-width:0;min-height:62px;padding:10px;font-size:16px}.race-result-actions .button:first-child{border-color:#fff3a1;background:linear-gradient(#ffe35c,#ffb40b);color:var(--color-space-950);box-shadow:0 5px #925200}@media(max-width:900px){.race-difficulty-grid{grid-template-columns:1fr;width:min(100%,650px)}.race-choice-card.difficulty{grid-template-columns:120px 1fr;grid-template-rows:auto auto auto;min-height:240px;text-align:left}.race-choice-card.difficulty .race-difficulty-stars,.race-choice-card.difficulty .race-difficulty-art{grid-column:1}.race-choice-card.difficulty .race-difficulty-art{grid-row:2 / 4;min-height:130px}.race-choice-card.difficulty h3,.race-choice-card.difficulty ul,.race-choice-card.difficulty>.button{grid-column:2}.race-choice-card.difficulty h3{grid-row:1}.race-choice-card.difficulty ul{grid-row:2;min-height:0}.race-choice-card.difficulty>.button{grid-row:3}.race-session .race-hud{grid-template-columns:1fr 1fr}.race-session .race-progress{grid-column:1 / -1;grid-row:2}.race-session .race-timer-option{grid-row:3}[data-screen=race] .race-question,[data-screen=race] .race-feedback{grid-template-columns:1fr}.race-result-actions{grid-template-columns:1fr 1fr}}@media(max-width:650px){.app-shell[data-screen=race] .page{padding-inline:0}.app-shell[data-screen=race] .profile-robot{width:74px;height:78px}.race-stage-chip{min-height:40px;padding:6px 12px;font-size:13px}.race-setup-heading{min-height:78px;padding-inline:44px}.race-setup-heading h2,.race-result>h2{font-size:34px}.race-setup-heading p{font-size:14px}.race-setup-back{width:44px;height:44px;padding:7px}.race-route-grid,.race-opponent-grid{grid-template-columns:1fr;width:min(100%,440px);gap:14px}.race-choice-card{grid-template-columns:108px 1fr;grid-template-rows:auto auto auto auto;min-height:250px;padding:12px;border-radius:24px;text-align:left}.race-card-art{grid-column:1;grid-row:1 / 5;min-height:100%;margin:0}.race-choice-card h3,.race-choice-card>p,.race-choice-card .race-card-meta,.race-choice-card>.button{grid-column:2}.race-choice-card h3{font-size:23px}.race-choice-card>p{min-height:0;font-size:14px}.race-card-meta{justify-content:flex-start;min-height:38px;font-size:13px}.race-choice-card>.button{min-height:48px;padding:8px 10px;font-size:16px}.race-route-art{display:grid;place-items:center}.race-route-art .race-orbit-card,.race-route-art .race-orbit-arrow{display:none}.race-rocket{position:static;width:76px;height:76px;transform:rotate(-5deg)}.race-mixed-art:before{inset:35px 10px}.race-mixed-art span{display:none}.race-duel-art{display:grid;grid-template-columns:1fr}.race-duel-rocket{width:76px;height:76px}.race-computer-art{display:grid;grid-template-columns:1fr}.race-computer-art img{width:105px;height:120px}.race-computer-art span{display:none}.race-choice-card.difficulty{grid-template-columns:90px 1fr;min-height:230px}.race-difficulty-stars{font-size:22px;letter-spacing:1px}.race-difficulty-rocket{width:82px;height:82px}.race-session .race-hud{grid-template-columns:1fr;padding:9px}.race-hud-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.race-hud-status{grid-row:2}.race-session .race-progress{grid-row:3}.race-session .race-timer-option{grid-row:4}.race-track-panel{min-height:154px;border-radius:20px}.race-canvas{height:154px}.race-distances{grid-template-columns:1fr;gap:4px}.race-distances .progress{padding:3px 7px}.race-distances .progress-label{font-size:11px}[data-screen=race] .race-question,[data-screen=race] .race-feedback{padding:9px;gap:9px}[data-screen=race] .race-question .trainer-equation-panel{min-height:185px}.race-result-hero{grid-template-columns:1fr 1fr;min-height:150px}.race-result-robot{display:none}.race-result-rocket{width:92px;height:92px}.race-medal{font-size:95px}.race-medal strong,.race-result-support{font-size:15px}.race-result-stats{grid-template-columns:1fr 1fr}.race-result-stats p{padding:10px;border-bottom:1px solid rgb(139 105 224 / 55%)}.race-result-stats p:nth-child(2){border-right:0}.race-result-stats p:nth-child(n+3){border-bottom:0}.race-result-stats p>:first-child{width:38px;height:38px;font-size:32px}.race-result-stats strong{font-size:22px}.race-reward{padding:7px 14px}.race-reward strong{font-size:18px}.race-result-actions{grid-template-columns:1fr}.race-result-actions .button{min-height:54px}.race-session-links{display:grid;grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){.race-choice-card,.race-result-rocket,.race-difficulty-rocket{animation:none!important;transition:none!important}}@font-face{font-family:Cosmic Handoff;src:url(/assets/cosmic-race/fonts/Nunito-700.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Cosmic Handoff;src:url(/assets/cosmic-race/fonts/Nunito-800.ttf) format("truetype");font-weight:800;font-display:swap}@font-face{font-family:Cosmic Handoff;src:url(/assets/cosmic-race/fonts/Nunito-900.ttf) format("truetype");font-weight:900;font-display:swap}.race-viewport{position:relative;display:grid;width:100vw;height:100dvh;margin:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;isolation:isolate;place-items:start;background:#050323 url(/assets/cosmic-race/space-background.png) center / cover no-repeat}.race-portrait-viewport{width:100vw;height:100dvh}.race-scroll-frame{position:relative;grid-area:1 / 1;min-width:100%}.race-scale-frame{position:relative;grid-area:1 / 1;width:1531px;height:1027px;transform-origin:top left}.race-rotate-prompt{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;gap:12px;padding:24px;background:#07052a url(/assets/cosmic-race/space-background.png) center / cover;color:#fff;text-align:center;font-family:Cosmic Handoff,Nunito Variable,sans-serif}.race-rotate-prompt strong{font-size:clamp(24px,7vw,44px)}.race-rotate-prompt span{color:#d8c8ff;font-size:clamp(16px,4vw,24px)}.race-rotate-prompt .race-rotate-back{width:min(240px,80vw);min-height:58px;margin:18px auto 0;font-size:22px}body:has(.race-viewport){overflow:hidden;background:#060325 url(/assets/cosmic-race/space-background.png) center / cover fixed}.app-shell[data-screen=race]{position:relative;width:100%;max-width:none;height:1027px;min-height:1027px;margin:0;padding:0;overflow:hidden;background:#060325 url(/assets/cosmic-race/space-background.png) center / 100% 100% no-repeat;color:#fffaf5;font-family:Cosmic Handoff,Nunito Variable,sans-serif}.app-shell[data-screen=race] .app-header{position:absolute;inset:0 auto auto 0;z-index:20;width:100%;height:145px}.app-shell[data-screen=race] .header{position:static;height:100%;padding:0;border:0}.app-shell[data-screen=race] .brand{position:absolute;top:18px;left:1.05%;display:flex;width:47.68%;height:117px;gap:1.18%;align-items:center;font-size:50px;font-weight:900;line-height:1.02}.app-shell[data-screen=race] .brand-planet{width:28.63%;height:128px;object-fit:contain;filter:drop-shadow(0 0 14px #b64cff)}.app-shell[data-screen=race] .brand>span{min-width:0;max-width:none;overflow:hidden;color:#fff;font-size:clamp(46px,3vw,58px);white-space:nowrap}.app-shell[data-screen=race] .brand small{display:block;margin-top:6px;color:#ffcf32;font-size:30px;font-weight:900}.app-shell[data-screen=race] .brand small svg{display:none}.app-shell[data-screen=race] .header-tools{position:absolute;top:38px;right:1.55%;display:block}.app-shell[data-screen=race] .header-settings{width:78px;height:78px;padding:18px;border-radius:50%}.app-shell[data-screen=race] .header-settings svg{width:42px;height:42px}.app-shell[data-screen=race] .header-settings span{display:none}.app-shell[data-screen=race] .toolbar{position:absolute;top:39px;left:50%;width:25.47%;display:flex;gap:14px;margin:0;z-index:2}.app-shell[data-screen=race] .toolbar .button{width:calc((100% - 14px)/2);height:73px;min-height:73px;padding:10px 20px;border-radius:26px;font-size:31px;font-weight:900}.app-shell[data-screen=race] .toolbar .button.blue{width:calc((100% - 14px)/2)}.app-shell[data-screen=race] .toolbar svg{width:38px;height:38px}.app-shell[data-screen=race] .profile-badge{position:absolute;top:39px;right:8.03%;z-index:3;display:flex;flex-direction:row;width:15.35%;height:73px;min-height:73px;gap:8px;align-items:center;justify-content:center;padding:4px 14px;border:3px solid #8751dd;border-radius:26px;background:linear-gradient(135deg,#3c1c93,#6b27c9);font-size:29px;font-weight:900;text-align:left}.app-shell[data-screen=race] .profile-badge .home-companion{width:64px;height:64px}.app-shell[data-screen=race] .profile-badge .race-profile-companion{width:68px;height:68px;flex:0 0 auto}.app-shell[data-screen=race] .profile-badge>span:not(.profile-change){max-width:140px;font-size:29px}.app-shell[data-screen=race] .profile-badge .profile-change{display:none}.app-shell[data-screen=race] main{position:absolute;inset:0;z-index:5;width:100%;height:100%;padding:0;min-width:0}.app-shell[data-screen=race] .page{position:relative;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell[data-screen=race] .page>h1,.app-shell[data-screen=race] .page>.description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.app-shell[data-screen=race] footer{position:absolute;left:2.42%;top:876px;z-index:20;width:95.04%;height:102px;margin:0}.app-shell[data-screen=race] footer nav{display:grid;grid-template-columns:repeat(4,1fr);width:100%;height:102px;padding:0;border:3px solid #7354d9;border-radius:32px;background:linear-gradient(145deg,#211346e8,#080e35f2);box-shadow:0 0 18px #5c31b266,inset 0 0 22px #804ac433}.app-shell[data-screen=race] footer nav a{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:18px;border-right:2px solid #74559e;color:#fffaf5;font-size:25px;font-weight:900}.app-shell[data-screen=race] footer nav a:last-child{border-right:0}.app-shell[data-screen=race] footer nav a>svg,.app-shell[data-screen=race] footer nav a>.home-art,.app-shell[data-screen=race] footer nav a>.game-art{width:72px;height:72px;flex:0 0 auto}.app-shell[data-screen=race] footer nav .home-art{display:inline-block;background:url(/assets/home/icons.png) var(--home-art-x) var(--home-art-y) / 400% 200% no-repeat}.app-shell[data-screen=race] footer nav .cosmic-sprite,.app-shell[data-screen=race] .profile-handoff-head{mix-blend-mode:screen}.app-shell[data-screen=race] .race-card-meta .cosmic-sprite{mix-blend-mode:screen}.app-shell[data-screen=race] footer .dev-link{display:none}.app-shell[data-screen=race] .pwa-notice,.app-shell[data-screen=race] .storage-notice{display:none}.app-shell[data-screen=race] .race-setup{position:relative;width:100%;height:100%}.app-shell[data-screen=race] .race-stage-chip{position:absolute;top:145px;left:50%;width:30.5%;height:65px;min-height:65px;margin:0;padding:10px 22px;border:3px solid #a969ff;border-radius:34px;background:linear-gradient(100deg,#47209a,#7d36bf);box-shadow:inset 0 0 14px #ffffff1f,0 5px #180849bf;font-size:28px;font-weight:900;transform:translate(-50%)}.app-shell[data-screen=race] .race-stage-chip .race-inline-rocket{width:36px;height:36px}.app-shell[data-screen=race] .race-setup-heading{position:absolute;top:205px;left:0;width:100%;min-height:99px;padding:0}.app-shell[data-screen=race] .race-setup-heading h2{font-size:88px;font-weight:900;line-height:1;text-shadow:0 5px 2px #572184}.app-shell[data-screen=race] .race-setup-heading p,.app-shell[data-screen=race] .race-setup-back{display:none}.app-shell[data-screen=race] .race-choice-grid{position:absolute;margin:0}.app-shell[data-screen=race] .race-route-grid{top:322px;left:331px;width:1030px;grid-template-columns:518px 495px;gap:17px}.app-shell[data-screen=race] .race-opponent-grid{top:310px;left:50%;width:min(70%,1073px);grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;transform:translate(-50%)}.app-shell[data-screen=race] .race-choice-card{min-height:522px;height:522px;padding:18px 28px;border-radius:32px;border-width:3px;background:linear-gradient(145deg,#12104cf0,#080d3cf5)}.app-shell[data-screen=race] .race-choice-card h3{margin:7px 0 3px;font-size:46px;line-height:1.05}.app-shell[data-screen=race] .race-choice-card>p{min-height:53px;margin:0;font-size:25px;line-height:1.2}.app-shell[data-screen=race] .race-card-art{margin:0;min-height:230px;border-radius:22px;background:transparent}.app-shell[data-screen=race] .race-sprite-art{width:100%;height:230px}.app-shell[data-screen=race] .race-card-meta{min-height:53px;justify-content:center;font-size:28px;border-top:1px solid rgb(177 151 255 / 55%)}.app-shell[data-screen=race] .race-card-meta .cosmic-sprite{width:45px;height:45px}.app-shell[data-screen=race] .race-choice-card>.button{height:83px;min-height:83px;margin-top:7px;font-size:42px;border-radius:26px}.app-shell[data-screen=race] .race-choice-card.opponent{grid-template-rows:250px minmax(50px,auto) minmax(62px,auto) 83px;height:548px;min-height:548px}.app-shell[data-screen=race] .race-choice-card.opponent .race-card-art{height:250px;min-height:250px}.app-shell[data-screen=race] .race-choice-card.opponent h3{margin-top:2px}.app-shell[data-screen=race] .race-choice-card.opponent>p{min-height:62px}.app-shell[data-screen=race] .race-choice-card.opponent>.button{margin-top:0}.app-shell[data-screen=race] .race-choice-card.opponent.player{border-color:#f5c844;box-shadow:0 0 28px #ffc6364d,inset 0 0 22px #ffc6361a}.app-shell[data-screen=race] .race-choice-card.opponent.computer{border-color:#4f9dff;box-shadow:0 0 28px #2c91ff47,inset 0 0 22px #2c91ff1a}.app-shell[data-screen=race] .race-setup-players .race-setup-heading h2{font-size:76px}.app-shell[data-screen=race] .race-opponent-list{position:absolute;top:348px;left:224px;width:1077px;display:grid;gap:9px}.app-shell[data-screen=race] .race-player-row{position:relative;display:grid;grid-template-columns:155px 1fr 350px;width:1077px;height:123px;padding:10px 30px;gap:40px;border:3px solid #6352db;border-radius:28px;background:linear-gradient(145deg,#12104cf0,#080d3cf5);box-shadow:0 0 22px #8a52ff40,inset 0 0 20px #7356e024}.app-shell[data-screen=race] .race-player-row.available:first-child{border-color:#ffe08a;box-shadow:0 0 22px #ffce3673,inset 0 0 20px #ffd1401f}.app-shell[data-screen=race] .race-player-row.pending{width:1266px;margin-left:-45px;border-color:#d28bff}.app-shell[data-screen=race] .race-player-avatar{width:155px;height:109px}.app-shell[data-screen=race] .race-player-copy{align-self:center}.app-shell[data-screen=race] .race-player-copy strong{display:block;font-size:40px;line-height:1}.app-shell[data-screen=race] .race-player-status{display:flex;align-items:center;gap:12px;margin-top:10px;color:#76eca2;font-size:28px;font-weight:800;white-space:nowrap}.app-shell[data-screen=race] .race-player-status.busy{color:#ffb63d}.app-shell[data-screen=race] .race-player-status.offline{color:#aaa7c8}.app-shell[data-screen=race] .race-player-row>.button{width:350px;height:82px;min-height:82px;font-size:36px}.app-shell[data-screen=race] .race-player-row>.button .race-rocket-image{width:44px;height:44px}.app-shell[data-screen=race] .race-cancel-button{background:linear-gradient(#241253,#11143c);color:#ffdf47;border-color:#ffdf47}.app-shell[data-screen=race] .race-setup-difficulty .race-stage-chip{top:145px}.app-shell[data-screen=race] .race-difficulty-grid{top:313px;left:50%;width:min(82.95%,1270px);grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;transform:translate(-50%)}.app-shell[data-screen=race] .race-choice-card.difficulty{grid-template-columns:minmax(0,1fr);grid-template-rows:240px 56px 147px 70px;height:540px;min-height:540px;padding:0 18px;background:linear-gradient(180deg,#132362,#0a174d 58%,#07123e)}.app-shell[data-screen=race] .race-choice-card.difficulty.easy{border-color:#98fdf3;background:linear-gradient(180deg,#075260,#063748 58%,#071e43);box-shadow:0 0 13px #00a17f,0 0 30px #00ffbe57,inset 0 0 20px #5cffe124}.app-shell[data-screen=race] .race-choice-card.difficulty.medium{border-color:#62d8ff;background:linear-gradient(180deg,#0b397d,#09245e 58%,#081545);box-shadow:0 0 13px #008cff,0 0 30px #00aeff5c,inset 0 0 20px #4bceff24}.app-shell[data-screen=race] .race-choice-card.difficulty.hard{border-color:#fa6cff;background:linear-gradient(180deg,#48127c,#2f0d6c 58%,#1b0b52);box-shadow:0 0 13px #c62eff,0 0 30px #e12cff61,inset 0 0 20px #f46bff24}.app-shell[data-screen=race] .race-difficulty-art{grid-column:1;grid-row:1;width:calc(100% + 36px);height:240px;min-height:240px;margin:0 -18px;border-radius:28px 28px 0 0}.app-shell[data-screen=race] .race-choice-card.difficulty h3{grid-column:1;grid-row:2;align-self:center;margin:0;font-size:46px}.app-shell[data-screen=race] .race-choice-card.difficulty ul{grid-column:1;grid-row:3;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));min-height:0;margin:0;padding:10px 10px 0;border-top:1px solid rgb(177 151 255 / 55%);font-size:25px;line-height:1.14}.app-shell[data-screen=race] .race-choice-card.difficulty li{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:center;min-width:0;margin:0}.app-shell[data-screen=race] .race-difficulty-fact-icon{display:grid;place-items:center;width:58px;height:58px;border:2px solid rgb(130 225 255 / 65%);border-radius:50%;background:linear-gradient(145deg,#47c7ff,#2860bd);font-size:34px;line-height:1;filter:drop-shadow(0 0 7px rgb(55 183 255 / 55%))}.app-shell[data-screen=race] .difficulty.easy .race-difficulty-fact-icon{border-color:#98fdf3cc;background:linear-gradient(145deg,#59d9e8,#227cc0)}.app-shell[data-screen=race] .difficulty.hard .race-difficulty-fact-icon{border-color:#ff72ffd1;background:linear-gradient(145deg,#f45ac8,#7730bf);filter:drop-shadow(0 0 7px rgb(232 67 255 / 65%))}.app-shell[data-screen=race] .race-choice-card.difficulty>.button{grid-column:1;grid-row:4;height:70px;min-height:70px;margin-top:0;font-size:36px}.app-shell[data-screen=race] .race-dialog-backdrop{position:absolute;inset:0;z-index:100;display:grid;place-items:center;background:#05031ca6}.app-shell[data-screen=race] .race-dialog{position:relative;display:grid;place-items:center;width:675px;min-height:596px;padding:30px;border:3px solid #e0afff;border-radius:34px;background:linear-gradient(#412082f5,#1f104cfb);box-shadow:0 0 20px #b235ff,inset 0 0 18px #a440ff77;text-align:center}.app-shell[data-screen=race] .race-dialog-robert{width:300px;height:250px}.app-shell[data-screen=race] .race-dialog h3{margin:0;font-size:48px;line-height:1.08}.app-shell[data-screen=race] .race-dialog h3 span{color:#ffcf32}.app-shell[data-screen=race] .race-dialog-close{position:absolute;top:16px;right:16px;width:58px;height:58px;border:3px solid #e0afff;border-radius:50%;color:#fff;background:#672cc4}.app-shell[data-screen=race] .race-dialog-chip{display:flex;align-items:center;gap:10px;margin:8px 0;padding:8px 22px;border:2px solid #b77aff;border-radius:999px;font-size:24px}.app-shell[data-screen=race] .race-dialog-chip .race-rocket-image{width:38px;height:38px}.app-shell[data-screen=race] .race-dialog-flight{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;min-height:175px}.app-shell[data-screen=race] .race-dialog-flight .cosmic-sprite{width:135px;height:100px}.app-shell[data-screen=race] .race-dialog-flight .race-rocket-image{width:160px;height:150px}.app-shell[data-screen=race] .race-dialog-flight strong{display:grid;place-items:center;width:178px;height:154px;border:8px solid #a969ff;border-radius:50%;font-size:44px}.app-shell[data-screen=race] .race-dialog-flight small{display:block;font-size:17px}.app-shell[data-screen=race] .race-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%}.app-shell[data-screen=race] .race-dialog-actions .button{height:84px;min-height:84px;font-size:34px}.app-shell[data-screen=race] .race-dialog-status{width:575px;min-height:457px}.app-shell[data-screen=race] .race-dialog-status .race-dialog-robert{width:250px;height:220px}.app-shell[data-screen=race] .race-dialog-status p{max-width:470px;margin:12px 0 25px;font-size:28px}.app-shell[data-screen=race] .race-dialog-status .button{width:503px;height:91px;min-height:91px;font-size:36px}.app-shell[data-screen=race] .race-result{position:relative;width:100%;height:100%}.app-shell[data-screen=race] .race-result>.race-stage-chip{top:145px}.app-shell[data-screen=race] .race-result>h2{position:absolute;top:177px;left:0;width:100%;font-size:88px;font-weight:900;line-height:1}.app-shell[data-screen=race] .race-result-hero{position:absolute;top:245px;left:0;width:100%;height:255px;min-height:255px;display:grid;grid-template-columns:1fr 1fr 1fr}.app-shell[data-screen=race] .race-result-rocket{width:260px;height:230px}.app-shell[data-screen=race] .race-medal-art{justify-self:center;width:377px;height:184px}.app-shell[data-screen=race] .race-medal-art{mix-blend-mode:screen}.app-shell[data-screen=race] .race-result-robot{justify-self:center;width:250px;height:300px}.app-shell[data-screen=race] .race-result-support{position:absolute;top:286px;right:30px;left:auto;z-index:3;width:285px;min-height:112px;margin:0;padding:20px 22px;border:3px solid #9b6ddf;border-radius:30px;background:#fffaf5;color:#191343;font-size:24px;font-weight:900;line-height:1.2;text-align:left;box-shadow:0 0 20px #a455ff59}.app-shell[data-screen=race] .race-result-support:after{content:"";position:absolute;left:22px;bottom:-25px;border:14px solid transparent;border-top-color:#fffaf5;transform:rotate(12deg)}.app-shell[data-screen=race] .race-result-stats{position:absolute;top:515px;left:81px;width:1370px;height:149px;border:3px solid #9062c8;border-radius:32px}.app-shell[data-screen=race] .race-result-stats p{padding:24px 30px}.app-shell[data-screen=race] .race-result-stats p>:first-child{width:64px;height:64px;font-size:52px}.app-shell[data-screen=race] .race-result-stats span:nth-child(2){font-size:24px}.app-shell[data-screen=race] .race-result-stats strong{font-size:46px}.app-shell[data-screen=race] .race-reward{position:absolute;top:676px;left:505px;width:522px;height:100px;margin:0;padding:8px 22px}.app-shell[data-screen=race] .race-reward .crystal-counter svg{width:74px;height:74px}.app-shell[data-screen=race] .race-reward .crystal-counter span{display:none}.app-shell[data-screen=race] .race-reward strong{font-size:36px}.app-shell[data-screen=race] .race-reward span{font-size:19px}.app-shell[data-screen=race] .race-result-actions{position:absolute;top:787px;left:98px;width:1358px;height:95px;grid-template-columns:442px 435px 440px;gap:20px}.app-shell[data-screen=race] .race-result-actions .button{height:95px;min-height:95px;font-size:30px}.app-shell[data-screen=race] .race-session{position:relative;width:100%;height:auto;padding-top:145px}.app-shell[data-screen=race] .race-session>.race-stage-chip{position:static;margin:0 auto 12px}.app-shell[data-screen=race] .race-session .race-hud{width:1200px;margin:0 auto}.app-shell[data-screen=race] .race-session .race-track-panel{width:1200px;margin:14px auto}.app-shell[data-screen=race] .race-session .race-question,.app-shell[data-screen=race] .race-session .race-feedback{width:1200px;margin:0 auto}.app-shell[data-screen=race] .race-session .race-feedback .feedback-copy{grid-template-columns:auto minmax(0,1fr)}.race-scale-frame:has(.race-session),.app-shell[data-screen=race]:has(.race-session){height:1350px;min-height:1350px}.app-shell[data-screen=race]:has(.race-session) footer{top:1230px}.race-scale-frame:has(.race-feedback),.app-shell[data-screen=race]:has(.race-feedback){height:1540px;min-height:1540px}.app-shell[data-screen=race]:has(.race-feedback) footer{top:1420px}body:has(.race-viewport){background-color:#050323;background-image:url(/assets/cosmic-race/space-background.png);background-position:center;background-repeat:no-repeat;background-size:cover}.app-shell[data-screen=race]{background:transparent}.app-shell[data-screen=race] .race-setup-type{isolation:isolate}.app-shell[data-screen=race] .race-setup-type:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 1.5% 73%,rgb(157 68 242 / 24%) 0 9%,transparent 21%),radial-gradient(circle at 98% 64%,rgb(46 116 255 / 22%) 0 8%,transparent 19%)}.app-shell[data-screen=race] .race-setup-type .race-route-grid{top:322px;left:25%;width:50%;grid-template-columns:50.24% 48.01%;gap:5%}.app-shell[data-screen=race] .race-setup-type .race-type-card{grid-template-rows:244px 55px 54px 55px 83px;height:524px;min-height:524px;padding:14px 27px 17px;overflow:visible;background:radial-gradient(circle at 50% 24%,rgb(112 56 200 / 30%),transparent 45%),linear-gradient(155deg,#1f0e53f7,#080c37fa)}.app-shell[data-screen=race] .race-setup-type .race-type-card.ordinary{border-color:#ffd75d;box-shadow:0 0 8px #ffe991,0 0 28px #ffb91f9e,inset 0 0 28px #ffb51c21}.app-shell[data-screen=race] .race-setup-type .race-type-card.mixed{border-color:#6df;box-shadow:0 0 8px #98eaff,0 0 28px #2bc7ff94,inset 0 0 28px #2d9eff24}.app-shell[data-screen=race] .race-setup-type .race-type-card h3{align-self:end;margin:0;font-size:45px;line-height:1.05}.app-shell[data-screen=race] .race-setup-type .race-type-card>p{min-height:0;margin:0;font-size:25px;line-height:1.15}.app-shell[data-screen=race] .race-setup-type .race-card-meta{align-self:stretch;min-height:55px;padding:7px 0 4px;font-size:27px}.app-shell[data-screen=race] .race-setup-type .race-card-meta>span{display:inline-grid;width:48px;height:48px;place-items:center;font-size:37px;line-height:1;filter:drop-shadow(0 0 8px currentcolor)}.app-shell[data-screen=race] .race-setup-type .race-card-meta-icon{display:block;width:40px;height:40px;flex:0 0 40px;object-fit:contain;filter:drop-shadow(0 0 8px currentcolor)}.app-shell[data-screen=race] .race-setup-type .race-type-card>.button{height:82px;min-height:82px;margin-top:1px;border-radius:26px;font-size:42px}.app-shell[data-screen=race] .race-type-art{position:relative;width:100%;height:244px;min-height:244px;margin:0;overflow:hidden;background:transparent}.app-shell[data-screen=race] .race-type-art-ordinary{overflow:visible}.app-shell[data-screen=race] .race-type-planet{position:absolute;top:-12px;left:-5px;width:142px;height:107px;object-fit:contain;filter:hue-rotate(140deg) saturate(1.3) drop-shadow(0 0 12px #ffd43f)}.app-shell[data-screen=race] .race-type-flight-path{position:absolute;top:62px;left:6%;width:47%;height:92px;transform:rotate(-10deg);border-bottom:4px dashed #ffd842;border-radius:50%;filter:drop-shadow(0 0 8px #ffb51e)}.app-shell[data-screen=race] .race-type-rocket{position:absolute;top:10px;left:50%;width:178px;height:178px;transform:translate(-50%) rotate(1deg);filter:drop-shadow(0 0 14px #ffb927)}.app-shell[data-screen=race] .race-type-sequence{position:absolute;right:4px;bottom:7px;left:4px;display:flex;align-items:center;justify-content:center;gap:11px}.app-shell[data-screen=race] .race-type-sequence span,.app-shell[data-screen=race] .race-type-mixed-examples span{display:grid;min-width:86px;height:64px;place-items:center;border:3px solid #fff;border-radius:13px;background:#f6efff;color:#211357;font-size:29px;font-weight:900;box-shadow:0 5px #4e277594,0 0 12px #ffffff47}.app-shell[data-screen=race] .race-type-sequence span:first-child{transform:rotate(6deg)}.app-shell[data-screen=race] .race-type-sequence span:last-child{transform:rotate(-7deg)}.app-shell[data-screen=race] .race-type-sequence b{color:#ffd332;font-size:39px;line-height:1;text-shadow:0 0 8px #ffb114}.app-shell[data-screen=race] .race-type-art-mixed{overflow:visible}.app-shell[data-screen=race] .race-type-galaxy{position:absolute;inset:3px 25px 14px;border-radius:50%;background:radial-gradient(ellipse at center,#fff 0 2%,#65f7ff 4%,#156dff 9%,transparent 17%),repeating-radial-gradient(ellipse at center,transparent 0 9%,rgb(53 215 255 / 80%) 10% 12%,transparent 13% 19%,rgb(192 52 255 / 76%) 20% 22%,transparent 23% 30%);filter:blur(.2px) drop-shadow(0 0 13px #6d4dff);transform:rotate(-8deg) scaleY(.58)}.app-shell[data-screen=race] .race-type-mini-planet{position:absolute;right:-5px;top:17px;width:112px;height:86px;object-fit:contain;filter:saturate(1.25) drop-shadow(0 0 10px #8666ff)}.app-shell[data-screen=race] .race-type-mixed-examples span{position:absolute;z-index:2}.app-shell[data-screen=race] .race-type-mixed-examples span:nth-child(1){top:20px;left:30.2%;transform:rotate(-14deg);background:#edf5ff}.app-shell[data-screen=race] .race-type-mixed-examples span:nth-child(2){top:103px;left:18.3%;transform:rotate(-12deg);background:#ffd9fb}.app-shell[data-screen=race] .race-type-mixed-examples span:nth-child(3){top:115px;right:8.7%;transform:rotate(10deg);background:#d9ffe9}.app-shell[data-screen=race] .race-type-guide{position:absolute;top:274px;left:2.22%;z-index:3;width:17.83%;height:568px;pointer-events:none}.app-shell[data-screen=race] .race-type-guide:before{content:"";position:absolute;left:-92px;bottom:-76px;z-index:0;width:430px;height:150px;border-radius:50% 50% 0 0;background:radial-gradient(circle at 34% 30%,rgb(198 147 255 / 80%) 0 3px,transparent 4px),radial-gradient(circle at 68% 36%,rgb(34 19 101 / 42%) 0 14px,transparent 15px),radial-gradient(ellipse at 50% 10%,#8a56d8,#3a216f 62%,#1a1143);box-shadow:0 -10px 30px #8d46ff47}.app-shell[data-screen=race] .race-type-guide p{position:relative;z-index:2;width:90.48%;min-height:207px;margin:0;padding:22px 24px;border:4px solid #a86ae6;border-radius:40px;background:#fffafd;color:#17124d;font-size:26px;font-weight:900;line-height:1.28;text-align:left;box-shadow:0 0 22px #964bff4d}.app-shell[data-screen=race] .race-type-guide p:after{content:"";position:absolute;left:133px;bottom:-31px;width:54px;height:54px;transform:rotate(45deg);border-right:4px solid #a86ae6;border-bottom:4px solid #a86ae6;border-radius:0 0 12px;background:#fffafd}.app-shell[data-screen=race] .race-type-guide img{position:absolute;left:-9px;bottom:0;width:286px;height:360px;object-fit:contain;filter:drop-shadow(0 0 14px rgb(90 189 255 / 48%));z-index:1}.app-shell[data-screen=race] .race-type-brand-planet{position:absolute;top:270px;right:-86px;z-index:0;width:235px;height:235px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 28px rgb(182 76 255 / 55%))}@media(max-width:767px){.app-shell[data-screen=race] .race-player-row{grid-template-columns:88px 1fr;width:100%;height:auto;min-height:110px;padding:10px;gap:12px}.app-shell[data-screen=race] .race-player-row.pending{width:100%;margin-left:0}.app-shell[data-screen=race] .race-player-avatar{width:88px;height:72px}.app-shell[data-screen=race] .race-player-copy strong{font-size:26px}.app-shell[data-screen=race] .race-player-status{font-size:16px;white-space:normal}.app-shell[data-screen=race] .race-player-row>.button{grid-column:2;width:100%;height:56px;min-height:56px;font-size:23px}.app-shell[data-screen=race] .race-result-actions{left:16px;width:calc(100% - 32px);grid-template-columns:1fr;height:auto}.app-shell[data-screen=race] .race-result-actions .button{height:64px;min-height:64px}}.profile-badge .home-art{display:inline-block;flex:0 0 auto;background:url(/assets/home/icons.png) var(--home-art-x) var(--home-art-y) / 400% 200% no-repeat}.profile-badge .home-companion{width:124px;height:112px}.profile-badge>span:not(.profile-change){max-width:210px;overflow:hidden;color:var(--color-text-primary);font-size:24px;font-weight:900;line-height:1.1;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.profile-badge .profile-change,.app-shell[data-screen=study] .profile-badge .profile-change{display:flex;align-items:center;justify-content:center;gap:3px;color:var(--color-blue-300);font-size:16px;font-weight:800;line-height:1.1;text-transform:none;white-space:nowrap}.profile-badge .profile-change .home-art{width:30px;height:34px}.app-shell:where(:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet])) .profile-badge{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;width:210px;min-height:0;padding:0;border:0;background:transparent;text-align:center}@media(min-width:768px){.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study]) .profile-badge{display:flex;flex-direction:column;grid-template-columns:none;grid-template-rows:none;align-items:center;justify-content:flex-start;gap:0;width:210px}.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study]) .profile-badge .profile-change{margin-top:6px}}.app-shell[data-screen=trainer]:has(.trainer-session) .profile-badge{position:absolute;top:-24px;right:72px;width:210px;margin:0}.app-shell[data-screen=race]:not(.home-shell) .profile-badge{position:absolute;top:39px;right:123px;z-index:3;display:flex;flex-direction:row;width:235px;height:73px;min-height:73px;gap:8px;align-items:center;justify-content:center;padding:4px 14px;border:3px solid #8751dd;border-radius:26px;background:linear-gradient(135deg,#3c1c93,#6b27c9);text-align:left}.app-shell[data-screen=race]:not(.home-shell) .profile-badge>span:not(.profile-change){max-width:140px;color:#fff;font-size:29px;font-weight:900}.app-shell[data-screen=race]:not(.home-shell) .profile-badge .profile-change{display:none}.app-shell[data-screen=race]:not(.home-shell) .profile-badge .race-profile-companion{width:68px;height:68px;flex:0 0 auto}@media(max-width:1023px){.profile-badge .home-companion{width:74px;height:68px}.profile-badge>span:not(.profile-change){max-width:150px;font-size:20px}.profile-badge .profile-change{font-size:14px}.profile-badge .profile-change .home-art{width:24px;height:27px}.app-shell[data-screen=trainer]:has(.trainer-session) .profile-badge{top:-10px;right:68px;width:160px}}@media(max-width:599px){.profile-badge .home-companion{width:48px;height:48px}.profile-badge .profile-change,.app-shell[data-screen=study] .profile-badge .profile-change{display:none}.app-shell[data-screen=trainer]:has(.trainer-session) .profile-badge{top:0;right:64px;width:88px}}.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study])[data-screen=race] .profile-badge{top:39px;right:123px;display:flex;flex-direction:row;width:235px;height:73px;min-height:73px;gap:8px;align-items:center;justify-content:center;padding:4px 14px;border:3px solid #8751dd;border-radius:26px;background:linear-gradient(135deg,#3c1c93,#6b27c9);text-align:left}.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study])[data-screen=race] .profile-badge>span:not(.profile-change){max-width:140px;color:#fff;font-size:29px;font-weight:900}.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study])[data-screen=race] .profile-badge .profile-change{display:none}.app-shell:not(.home-shell):not([data-screen=galaxy]):not([data-screen=planet]):not([data-screen=study])[data-screen=race] .profile-badge .race-profile-companion{width:68px;height:68px;flex:0 0 auto}
