.lumenmorph{background-color:var(--lumen-bg, #302028b3);border-radius:var(--lumen-radius, .25rem);-webkit-backdrop-filter:blur(var(--lumen-blur, 32px)) saturate(var(--lumen-saturation, 1.6));backdrop-filter:blur(var(--lumen-blur, 32px)) saturate(var(--lumen-saturation, 1.6))}.lumenmorph-border{position:relative;border:var(--lumen-border-width, 1.5px) solid var(--lumen-border-color, #ffffff30)}.lumenmorph-border:before{content:"";position:absolute;inset:calc(-1 * var(--lumen-border-width, 1.5px));border-radius:inherit;padding:var(--lumen-border-width, 1.5px);pointer-events:none;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}.lumenmorph-text,.glassmorphism-text{color:var(--lumen-text-color, #ffffffb3)}@supports (background: color-mix(in srgb,red,transparent)){.lumenmorph{background-image:radial-gradient(circle var(--lumen-glow-size, 460px) at var(--lumen-x, 50vw) var(--lumen-y, 35vh),color-mix(in srgb,var(--lumen-glow-color, #ffaa71) calc(var(--lumen-glow-opacity, .3) * 100%),transparent),transparent);background-attachment:var(--lumen-attachment, fixed);background-size:var(--lumen-space, 100vw 100vh);background-repeat:no-repeat}.lumenmorph-border:before{background-image:radial-gradient(circle var(--lumen-glow-size, 460px) at var(--lumen-x, 50vw) var(--lumen-y, 35vh),color-mix(in srgb,var(--lumen-border-glow-color, var(--lumen-glow-color, #ffd4a3)) calc(var(--lumen-border-opacity, .9) * 100%),transparent),transparent);background-attachment:var(--lumen-attachment, fixed);background-size:var(--lumen-space, 100vw 100vh);background-repeat:no-repeat}@supports (background-clip: text) or (-webkit-background-clip: text){.lumenmorph-text,.glassmorphism-text{background-color:transparent;background-image:radial-gradient(circle at bottom center,color-mix(in srgb,var(--lumen-glow-color, #ffaa71) 10%,transparent),transparent 50%),radial-gradient(circle var(--lumen-text-glow-size, var(--lumen-glow-size, 80vmax)) at var(--lumen-x, 50vw) var(--lumen-y, 35vh),color-mix(in srgb,var(--lumen-glow-color, #ffaa71) calc(var(--lumen-text-glow-opacity, 1) * 100%),transparent),transparent);background-attachment:scroll,var(--lumen-attachment, fixed);background-size:var(--lumen-space, 100vw 100vh);background-position:center center,0 0;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-backdrop-filter:none;backdrop-filter:none;-webkit-text-stroke:var(--lumen-text-stroke-width, 2px) transparent}}}@media(prefers-reduced-transparency:reduce){.lumenmorph{background:var(--lumen-solid-bg, #302028);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){.lumenmorph{background:Canvas;color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}.lumenmorph-border{border-color:CanvasText}.lumenmorph-border:before{display:none}.lumenmorph-text,.glassmorphism-text{background:none;color:CanvasText;-webkit-text-stroke:0}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme,base,components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.min-w-0{min-width:0}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.uppercase{text-transform:uppercase}.blur{--tw-blur:blur(8px);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}}@font-face{font-family:VT323;src:url(/fonts/VT323-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf)format("truetype");font-display:swap}:root{color-scheme:dark;font-synthesis:none;--bg:#171715;--surface:#22231f;--raised:#2a2c25;--ink:#f4f0e4;--muted:#b7b7a8;--line:#42463b;--subtle-line:#30332c;--ember:#ffae7a;--ember-dark:#402d22;--sage:#c0d399;--gold:#e9c57c;--blue:#a0c8d2;--red:#ffb0a3;--radius:12px;--lumen-bg:#24261fe6;--lumen-solid-bg:#24261f;--lumen-glow-color:#ffd6a0;--lumen-border-glow-color:#ffae7a;--lumen-radius:12px;--lumen-blur:12px;--lumen-glow-opacity:.06;--lumen-border-color:#4c5144;--lumen-border-opacity:.35;--lumen-glow-size:24vmax;--lumen-text-color:#f4f0e4;--lumen-text-fill:#f4f0e4;font-family:IBM Plex Mono,monospace}*{box-sizing:border-box}html{scrollbar-color:#5b6251 var(--bg);scrollbar-width:thin}body{background:var(--bg);color:var(--ink);margin:0;font-size:13px;line-height:1.65}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button,a{transition:color .15s,background-color .15s,border-color .15s}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:2px solid var(--ember);outline-offset:4px}h1:focus,main:focus{outline:none}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance;overflow-wrap:anywhere}h1,h2,h3,.brand-mark{font-family:VT323,monospace;font-weight:400;line-height:1.05}h1{letter-spacing:-.02em;font-size:clamp(36px,3.3vw,52px)}h1>span,h2>span{color:var(--ember)}h2{font-size:34px}h3{font-size:28px}p{color:var(--muted)}strong{font-weight:400}svg.svg-inline--fa{width:1em;height:1em}::selection{background:var(--ember);color:#21180e}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:20;background:var(--ember);color:#21180e;border-radius:6px;padding:12px 18px;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{letter-spacing:1.5px;color:var(--muted);font-size:10px;line-height:1.6}.quiet-label{color:var(--muted);font-size:11px}kbd{color:var(--muted);background:#2b2e25;border:1px solid #5b6153;border-radius:4px;padding:2px 5px;font:10px IBM Plex Mono,monospace}.button{border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:16px;min-height:44px;padding:11px 18px;font-size:12px;line-height:1.5;display:inline-flex}.button-primary{background:var(--ember);color:#251b12;border-bottom:3px solid #b26d3f;box-shadow:0 4px 16px #0002}.button-primary:hover{background:#ffc195}.button-primary:active{border-bottom-width:1px;padding-bottom:13px}.button-quiet{color:var(--ink);background:#292d24;border:1px solid #666d5b}.button-quiet:hover{background:#373e2e}.text-button{min-height:36px;color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;font-size:11px;display:inline-flex}.text-button:hover{color:var(--ember)}.text-link{color:var(--ember);align-items:center;gap:9px;font-size:11px;display:inline-flex}.text-link:hover{color:#ffd1af}.icon-button{width:40px;height:40px;color:var(--muted);background:#282c23;border:1px solid #535b48;border-radius:7px;flex:0 0 40px;place-items:center;display:grid}.icon-button:hover{border-color:var(--ember);color:var(--ember)}.pill{color:var(--sage);letter-spacing:1px;background:#303c2355;border:1px solid #586344;border-radius:4px;align-items:center;gap:7px;padding:4px 8px;font-size:9px;line-height:1.5;display:inline-flex}.pill i,.status-light{background:var(--sage);border-radius:50%;flex:0 0 5px;width:5px;height:5px;display:inline-block;box-shadow:0 0 8px #c0d39930}.small-icon{width:32px;height:32px;color:var(--sage);background:#353c2c;border-radius:7px;place-items:center;display:inline-grid}.stars{color:#747766;align-items:center;gap:5px;font:19px system-ui,sans-serif;display:inline-flex}.stars .earned{color:var(--gold)}.app-shell{grid-template-columns:210px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--subtle-line);background:#1b1d18;flex-direction:column;height:100dvh;padding:25px 18px 20px;display:flex;position:sticky;top:0}.brand{flex-direction:column;align-items:flex-start;margin-bottom:42px;padding:0 14px;display:flex}.brand-mark{letter-spacing:-3px;color:var(--ink);font-size:58px;line-height:.85}.brand-mark>span{color:var(--ember)}.brand-sub{color:var(--muted);letter-spacing:1.3px;margin-top:10px;font-size:10px}.sidebar-label{color:#acb29d;letter-spacing:1.3px;margin:0 12px 15px;font-size:8px}.main-nav{flex-direction:column;gap:7px;display:flex}.main-nav a{min-height:45px;color:var(--muted);border:1px solid #0000;border-radius:7px;align-items:center;gap:12px;padding:10px 12px;font-size:11px;display:flex}.main-nav a svg{width:16px;font-size:14px}.main-nav a:hover{color:var(--ink);background:#2a2f23}.main-nav a[aria-current]{color:var(--sage);background:#353a2c;border-color:#586046}.notification-dot{background:var(--ember);border-radius:50%;width:5px;height:5px;margin-left:auto}.placement-link{color:var(--ember);border-top:1px dashed #454b3c;align-items:center;gap:9px;margin-top:24px;padding:18px 10px;font-size:10px;display:flex}.placement-link>svg:last-child{width:7px;margin-left:auto}.placement-link small{color:var(--muted);margin-top:3px;font-size:8px;display:block}.sidebar-bottom{margin-top:auto;padding-top:28px}.level-card{background:#25291f;border:1px solid #424a35;border-radius:8px;grid-template-columns:28px 1fr;gap:8px;padding:14px;display:grid}.level-icon{color:var(--gold);place-items:center;display:grid}.level-card strong{font-size:12px}.level-card small{color:var(--muted);font-size:9px;display:block}.level-card progress{grid-column:1/-1;height:4px;margin-top:4px}.sidebar-bottom>p{text-align:center;padding-top:12px;font-size:8px}.sidebar-bottom>a{color:var(--muted);justify-content:space-between;padding:24px 5px 0;font-size:8px;display:flex}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--subtle-line);justify-content:space-between;align-items:center;min-height:64px;padding:12px 34px;display:flex}.topbar>div:first-child{letter-spacing:1.2px;color:var(--muted);align-items:center;gap:10px;font-size:8px;display:flex}.topbar-divider{color:#6a725e;padding:0 5px}.topbar-stats{color:var(--muted);align-items:center;gap:25px;font-size:11px;display:flex}.topbar-stats>span{align-items:center;gap:8px;display:inline-flex}.topbar-stats svg{color:var(--gold)}.topbar-stats .local-avatar{width:31px;height:31px;color:var(--gold);background:#3d3929;border:1px solid #746f55;border-radius:9px;place-items:center;font-size:10px;display:grid}main{width:100%;max-width:1440px;margin-inline:auto;padding:26px 34px 22px}.page-title-row{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.page-title-row h1{margin-top:5px}.storage-warning{color:#ffe0be;background:#5c3729;padding:12px 30px;font-size:12px}.page-enter{animation:.26s cubic-bezier(.2,.8,.3,1) both page-enter}@keyframes page-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}::view-transition-old(root){animation:.1s both fade-away}::view-transition-new(root){animation:.18s both fade-in}@keyframes fade-away{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}.hero-grid{grid-template-columns:1.1fr 1fr;gap:18px;display:grid}.next-mission{border:1px solid #505741;min-width:0;padding:20px 24px;box-shadow:inset 0 0 60px #92a96608}.card-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-topline>span:last-child{color:var(--muted);letter-spacing:1px;font-size:8px}.hero-copy{padding-top:18px}.hero-kicker{letter-spacing:1.6px;color:#b0b69e;font-size:9px;line-height:1.6}.hero-copy h2{margin-top:9px;font-size:clamp(37px,3.7vw,54px)}.hero-copy>p:not(.hero-kicker){max-width:43ch;margin:10px 0 19px;font-size:11px;line-height:1.8}.hero-meta{color:var(--muted);gap:24px;margin-top:14px;font-size:9px;display:flex}.hero-meta svg{color:var(--sage);margin-right:5px}.hero-illustration{border-radius:var(--radius);isolation:isolate;background:radial-gradient(at 55% 70%,#4d583330,#0000 65%),#1e231b;border:1px solid #3d4435;flex-direction:column;justify-content:space-between;min-height:315px;padding:20px 20px 15px;display:flex;position:relative;overflow:hidden}.illustration-heading{color:#c0c6b0;letter-spacing:1.7px;z-index:1;justify-content:space-between;align-items:center;font-size:8px;display:flex}.orbital-ring{z-index:-1;border:1px solid #c1d39912;border-radius:50%;width:310px;height:310px;position:absolute;top:5%;left:17%;transform:rotate(-25deg)scaleY(.6)}.ring-two{width:410px;height:410px;top:-7%;left:5%;transform:rotate(-25deg)scaleY(.6)}.floating-key{width:39px;height:43px;color:var(--sage);background:#353d2d;border:1px solid #59664a;border-bottom:4px solid #1b2314;border-radius:7px;place-items:center;font:28px VT323,monospace;display:grid;position:absolute}.key-a{top:52px;left:22px;transform:rotate(-12deg)}.key-b{color:var(--ember);background:#413225;border-color:#786047;bottom:49px;right:24px;transform:rotate(12deg)}.illustration-footer{color:var(--muted);z-index:1;align-items:center;gap:6px;font-size:9px;display:flex}.illustration-footer>span{margin-right:auto}.scene-wrap{position:absolute;inset:18px 4px 19px}.scene-fallback{place-items:center;height:100%;display:grid}.scene-fallback .mascot{width:170px}.three-scene{position:absolute;inset:0}.three-scene canvas{width:100%;height:100%;display:block}.has-scene .scene-fallback{visibility:hidden}.dashboard-lower{grid-template-columns:1.4fr 1fr;gap:24px;margin-top:25px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.section-heading h2{margin-top:3px;font-size:29px}.section-heading .eyebrow{font-size:8px}.mission-list{flex-direction:column;gap:10px;display:flex}.mission-row{background:#22271e;border:1px solid #3b4232;border-radius:9px;align-items:center;gap:15px;min-width:0;min-height:86px;padding:14px 16px;display:flex;position:relative}.mission-row:hover{background:#2b3322;border-color:#7d8b62}.mission-row.recommended{background:#342b204d;border-color:#8f7656}.mission-node{color:#b8c29e;border:1px dashed #778262;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:11px;display:grid}.recommended .mission-node{background:var(--ember);color:#251b12;border:1px solid #cc976a;box-shadow:0 4px #644a30}.completed.mission-node{color:var(--sage);background:#38482a;border:1px solid #8fa670}.mission-row-copy{flex:1;min-width:0}.mission-row-copy strong{color:var(--ink);font-size:12px;line-height:1.4;display:block}.mission-row-copy small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.6;display:block}.mission-row-meta{text-align:right}.mission-row-meta .stars{gap:3px;font-size:10px}.mission-row-meta small{color:var(--muted);letter-spacing:1px;white-space:nowrap;margin-top:4px;font-size:7px;display:block}.recommended .mission-row-meta small{color:var(--ember)}.mission-row>svg{color:#a5b091;flex-shrink:0;font-size:9px}.path-preview .mission-row{min-height:68px;padding:10px 13px}.path-preview .mission-row-copy small{display:none}.daily-card{border-radius:var(--radius);background:#22281b;border:1px solid #414a34;padding:22px}.daily-header{align-items:center;gap:10px;margin-bottom:19px;display:flex}.daily-header .eyebrow{font-size:8px}.daily-card>p{margin-top:9px;font-size:10px;line-height:1.9}.daily-check{align-items:center;gap:9px;margin-top:22px;font-size:10px;display:flex}.daily-check>span:last-child{color:var(--muted);margin-left:auto;font-size:9px}.empty-circle,.done-circle{border:1px solid #8e9b74;border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.done-circle{color:#26301c;background:#c0d399}.daily-note{color:var(--muted);border-top:1px solid #414a34;margin-top:16px;padding-top:12px;font-size:8px}.bottom-note{color:var(--muted);justify-content:space-between;gap:10px;margin-top:22px;font-size:8px;display:flex}.bottom-note svg{color:var(--ember);margin-right:6px}.track-tabs{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.track-tabs a{color:var(--muted);border:1px solid #4c5540;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:10px;display:inline-flex}.track-tabs a span{color:var(--sage);font-size:10px}.track-tabs a:hover{background:#2b3422}.track-tabs a[aria-current]{color:#202918;background:#c0d399;border-color:#c0d399}.track-tabs a[aria-current] span{color:#26301c}.track-banner{border-radius:var(--radius);background:#2b3022;border:1px solid #50583f;align-items:center;gap:22px;margin-bottom:24px;padding:23px 27px;display:flex}.track-mark{height:70px;color:var(--ember);background:#4a3927;border:1px solid #7e684b;border-bottom:4px solid #56442e;border-radius:12px;flex:0 0 70px;place-items:center;font:35px VT323,monospace;display:grid}.track-banner h2{margin:5px 0 6px}.track-banner p:last-child{font-size:11px}.track-completion{text-align:right;margin-left:auto}.track-completion strong{font:36px VT323,monospace}.track-completion small{color:var(--muted);font-size:24px}.track-completion span{color:var(--muted);font-size:9px;display:block}.path-content{grid-template-columns:minmax(0,1fr) 245px;align-items:start;gap:24px;display:grid}.path-coach{border-radius:var(--radius);text-align:center;border:1px dashed #4d5740;padding:15px 20px 20px}.mascot{width:135px;height:auto;color:var(--sage);display:block}.path-coach .mascot{width:115px;margin:0 auto 7px}.path-coach p{margin-top:13px;font-size:10px;line-height:1.9}.star-rules{color:var(--gold);flex-direction:column;align-items:flex-start;gap:7px;margin-top:20px;font-size:9px;display:flex}.gold .track-mark,.track-mark.gold{color:var(--gold);background:#403b25;border-color:#8c774c}.sage .track-mark,.track-mark.sage{color:var(--sage);background:#303e25;border-color:#6e8254}.blue .track-mark,.track-mark.blue{color:var(--blue);background:#253a3d;border-color:#5f8088}progress{appearance:none;background:#414937;border:0;border-radius:20px;width:100%;height:7px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:#414937;border-radius:20px}progress::-webkit-progress-value{background:var(--sage);border-radius:20px;transition:width .15s}progress::-moz-progress-bar{background:var(--sage);border-radius:20px}.session-view{max-width:950px;margin:0 auto}.session-topline{align-items:center;gap:20px;margin-bottom:21px;display:flex}.session-progress{flex:1}.session-progress>div{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.session-progress span{color:var(--muted);letter-spacing:1px;font-size:9px}.session-progress strong{color:var(--sage);font-size:11px}.timer-badge{color:var(--ember);border:1px solid #746245;border-radius:6px;padding:9px;font-size:9px}.session-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.session-heading h1{margin-top:4px;font-size:clamp(32px,3vw,45px)}.session-metrics{gap:23px;display:flex}.session-metrics>div{flex-direction:column;align-items:flex-end;display:flex}.session-metrics strong{font-variant-numeric:tabular-nums;color:var(--ink);font:30px/1 VT323,monospace}.session-metrics strong small{color:var(--ember);font-size:18px}.session-metrics span{color:var(--muted);white-space:nowrap;margin-top:4px;font-size:8px}.coach-line{background:#292f21;border:1px solid #444b38;border-radius:7px;align-items:center;gap:12px;margin-bottom:16px;padding:11px 14px;display:flex}.coach-badge{color:var(--sage);text-align:center;flex:0 0 22px}.coach-line p{font-size:10px;line-height:1.8}.typing-surface{background:#1d211a;border:1px solid #5b654d;border-radius:9px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.typing-surface.is-focused{border-color:#b58f64;box-shadow:0 0 0 3px #ffae7a0a}.editor-chrome{letter-spacing:1px;color:#c0c7ae;background:#242a1e;border-bottom:1px solid #353d2c;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:8px;display:flex}.editor-chrome>span:first-child{gap:5px;display:flex}.editor-chrome i{background:#788363;border-radius:50%;width:5px;height:5px;display:block}.editor-chrome i:first-child{background:#d79872}.editor-body{min-height:132px;position:relative}.typing-prompt,.editor-body textarea{letter-spacing:0;tab-size:2;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;border:0;border-radius:0;width:100%;margin:0;padding:22px 24px;font:17px/1.9 IBM Plex Mono,monospace}.typing-prompt{color:#a9b29a;pointer-events:none;min-height:132px;max-height:200px;overflow:auto}.editor-body textarea{resize:none;color:#0000;-webkit-text-fill-color:transparent;caret-color:#0000;appearance:none;height:100%;box-shadow:none;background:0 0;outline:none;position:absolute;inset:0;overflow:auto}.editor-body textarea::selection{background:#c0d39933}.glyph-correct{color:var(--sage)}.glyph-error{color:#ffd0c5;text-underline-offset:4px;background:#793f344d;-webkit-text-decoration:underline wavy #ffae9e;text-decoration:underline wavy #ffae9e}.glyph-caret{position:relative}.is-focused .glyph-caret:before{content:"";background:var(--ember);width:2px;position:absolute;top:-.1em;bottom:-.1em;left:-1px}.return-mark{color:#79846a;font-size:.8em}.editor-focus-hint{text-align:center;color:var(--ember);pointer-events:none;background:#1d211af2;border:1px solid #60583f;border-radius:4px;padding:6px;font-size:10px;position:absolute;inset:auto 12px 12px}.editor-help{color:#bac3a9;border-top:1px solid #353d2c;justify-content:space-between;gap:16px;padding:9px 13px;font-size:8px;display:flex}.editor-help>span:last-child{flex-shrink:0}.editor-help kbd{background:#303726;font-size:8px}.practice-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-top:7px;display:flex}.practice-toolbar>span{color:var(--muted);font-size:8px}.typing-keyboard{background:#2a3023;border:1px solid #535f43;border-bottom:4px solid #151c11;border-radius:10px;max-width:710px;margin:10px auto 0;padding:12px 14px 9px}.key-row{justify-content:center;gap:4px;margin-bottom:4px;display:flex}.keycap{color:#e4ebd5;background:#424d32;border:1px solid #667251;border-bottom:3px solid #182010;border-radius:4px;flex:1;justify-content:center;align-items:center;min-width:0;height:25px;font-size:8px;transition:transform 70ms,background-color 70ms;display:flex;position:relative}.key-wide{flex:1.6;font-size:7px}.key-space{flex:8}.keycap[data-code=KeyF]:after,.keycap[data-code=KeyJ]:after{content:"";background:#cbd5b5;width:6px;height:1px;position:absolute;bottom:3px}.keycap.key-next{color:#ffe1bd;background:#675135;border-color:#ca9a69}.key-pressed{border-color:#e9ab74;transform:translateY(2px);background:var(--ember)!important;color:#21180f!important}.key-hint{color:#ffcca0;font-size:9px;position:absolute;top:-2px;right:3px}.keyboard-legend{color:#b8c5a4;justify-content:space-between;gap:12px;margin-top:7px;font-size:7px;display:flex}.keyboard-legend>span:first-child{align-items:center;gap:5px;display:flex}.keyboard-legend i{background:var(--ember);border-radius:50%;width:4px;height:4px}.round-feedback{background:#2a3622;border:1px solid #7a9158;border-radius:8px;align-items:center;gap:14px;margin-top:19px;padding:13px 16px;display:flex}.feedback-check{color:var(--sage);font-size:19px}.round-feedback>div{flex:1}.round-feedback strong{color:#d9edb9;font-size:12px;display:block}.round-feedback>div>span{color:#c0cdaa;margin-top:2px;font-size:9px;display:block}.round-feedback .button{min-height:38px;padding-block:8px;font-size:10px}.session-footnote{text-align:center;margin:15px 0 0;font-size:8px}.pause-panel{background:#242a1e;border:1px solid #667251;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:206px;display:flex}.pause-panel>svg{color:var(--sage)}.pause-panel p{font-size:11px}.race-lane{border:1px solid #505c40;border-radius:7px;align-items:center;gap:16px;margin-top:15px;padding:15px;display:flex}.race-lane>span{color:var(--muted);font-size:9px}.race-lane b{color:var(--ink);white-space:nowrap;font-size:10px;font-weight:400;display:block}.race-lane progress{flex:1}.result-view{text-align:center;max-width:740px;margin:0 auto;padding-top:0}.result-art .mascot{width:132px;margin:0 auto 10px}.mascot.celebrate{transform-origin:bottom;animation:.55s cubic-bezier(.2,.9,.2,1.15) both celebrate}@keyframes celebrate{0%{opacity:0;transform:translateY(10px)scale(.85)rotate(-5deg)}to{opacity:1;transform:none}}.result-view h1{margin:9px 0 12px;font-size:clamp(35px,3.7vw,51px)}.result-view>p:not(.eyebrow):not(.result-note){max-width:64ch;margin-inline:auto;font-size:11px;line-height:1.9}.result-stats{border-top:1px solid #48543a;border-bottom:1px solid #48543a;grid-template-columns:repeat(3,1fr);max-width:520px;margin:24px auto;padding:19px 0;display:grid}.result-stats>div{border-right:1px solid #48543a}.result-stats>div:last-child{border-right:0}.result-stats strong{font-variant-numeric:tabular-nums;color:var(--sage);font:42px VT323,monospace;display:block}.result-stats small{font-size:24px}.result-stats span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.reward-strip{text-align:left;background:#362e1f;border:1px solid #766042;border-radius:8px;justify-content:center;align-items:center;gap:22px;padding:16px;display:flex}.reward-strip .stars{color:var(--gold);letter-spacing:3px;white-space:nowrap;font-size:25px}.reward-strip strong{color:var(--gold);font-size:12px;display:block}.reward-strip small{color:#d2c3a6;margin-top:4px;font-size:9px;line-height:1.7;display:block}.result-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:22px;display:flex}.result-keys{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:10px;display:flex}.result-keys kbd{color:var(--ember);padding:4px 7px;font-size:13px}.result-keys kbd small{color:var(--muted);font-size:9px}.result-note{margin-top:17px;font-size:9px;line-height:1.9}.result-track-choice{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.result-track-choice .button{min-height:38px;padding:8px 12px;font-size:10px}.arcade-grid{grid-template-columns:minmax(0,1.2fr) minmax(250px,1fr);gap:24px;display:grid}.sprint-card{border:1px solid #6d6144;padding:24px 28px}.arcade-art{background:repeating-linear-gradient(0deg,#b5ca8e03 0 1px,#0000 1px 4px),radial-gradient(#80744825,#0000 65%);border-radius:10px;place-items:center;min-height:140px;margin:-12px -12px 18px;display:grid}.arcade-art>span{color:var(--gold);text-shadow:0 5px #61552f;align-items:center;gap:24px;font:90px VT323,monospace;display:flex;transform:rotate(-4deg)}.arcade-art svg{width:40px;height:60px;color:var(--ember)}.sprint-card h2{margin:6px 0 12px;font-size:44px}.sprint-card>p:not(.eyebrow){font-size:11px;line-height:1.9}.target-picker{border:0;grid-template-columns:repeat(3,1fr);gap:9px;margin:22px 0;padding:0;display:grid}.target-picker legend{color:var(--muted);margin-bottom:12px;font-size:10px}.target-picker button{background:#303924;border:1px solid #67734f;border-bottom:3px solid #3d462c;border-radius:7px;min-height:68px;font:29px VT323,monospace}.target-picker button small{margin-top:3px;font:9px IBM Plex Mono,monospace;display:block}.target-picker button[aria-pressed=true]{border-color:var(--ember);color:#ffd4af;background:#53402b}.target-picker button:hover{border-color:var(--ember)}.sprint-card>.button{width:100%}.record-card,.rules-card{border-radius:var(--radius);background:#22271d;border:1px solid #465039;padding:23px}.record-card h3{margin:14px 0 8px}.record-card p,.rules-card p{font-size:11px;line-height:1.9}.record-row{border-bottom:1px solid #3c4531;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;font-size:10px;display:flex}.record-row:last-child{border:0;padding-bottom:0}.record-row strong{color:var(--gold);font-size:10px}.arcade-sidebar .rules-card{background:0 0;border-style:dashed;margin-top:18px}.rules-card h3{margin-bottom:10px;font-size:27px}.rules-card p+p{margin-top:13px}.review-page>h1{margin:7px 0 25px}.review-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:24px;display:grid}.review-card{text-align:center;border-radius:var(--radius);background:#262e1e;border:1px solid #526141;padding:25px}.review-card .mascot{width:150px;margin:0 auto 12px}.review-card p{max-width:48ch;margin:13px auto 22px;font-size:11px;line-height:1.9}.review-key-list{flex-wrap:wrap;justify-content:center;gap:15px;margin:24px 0;display:flex}.review-key-list kbd{color:var(--ember);background:#463922;border-color:#ac855a;padding:5px 12px;font-size:23px;display:block}.review-key-list small{color:var(--muted);margin-top:8px;font-size:9px;display:block}.progress-counters{grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0 35px;display:grid}.progress-counters>div{background:#252c1e;border:1px solid #4e5a40;border-radius:10px;padding:20px}.progress-counters>div>svg{color:var(--sage)}.progress-counters strong{margin-top:15px;font:44px VT323,monospace;display:block}.progress-counters strong small{color:var(--muted);font-size:25px}.progress-counters span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.track-records{grid-template-columns:1fr 1fr;gap:12px;display:grid}.track-record{background:#22281c;border:1px solid #444f37;border-radius:8px;align-items:center;gap:14px;padding:15px;display:flex}.track-record:hover{border-color:#9aad7d}.track-mark.small{border-bottom-width:3px;border-radius:7px;flex-basis:38px;height:38px;font-size:20px}.track-record>div{flex:1;min-width:0}.track-record strong{margin-bottom:8px;font-size:11px;display:block}.track-record progress{height:4px}.track-record>span:not(.track-mark){color:var(--muted);font-size:9px}.track-record>svg{width:7px;color:var(--muted)}.privacy-note{margin-top:25px;font-size:10px;line-height:1.9}.privacy-note svg{color:var(--sage);margin-right:7px}.empty-state{text-align:center;padding:50px 20px}.empty-state .mascot{margin:0 auto 20px}.empty-state p{max-width:50ch;margin:20px auto}@media(min-width:1450px){main{padding:35px 46px 28px}.topbar{padding-inline:46px}.hero-copy{padding-top:27px}.hero-copy>p:not(.hero-kicker){font-size:12px}.next-mission{padding:23px 29px}.hero-illustration{min-height:360px}.dashboard-lower{margin-top:30px}.daily-card{padding:25px}.daily-card>p{font-size:11px}.path-preview .mission-row{min-height:77px}}@media(min-width:1001px)and (max-height:800px){main{padding-block:20px}.page-title-row{margin-bottom:18px}.page-title-row h1{font-size:40px}.hero-copy{padding-top:13px}.hero-copy h2{font-size:42px}.hero-kicker{font-size:8px}.hero-illustration{min-height:290px}.next-mission{padding:17px 22px}.hero-copy>p:not(.hero-kicker){margin-block:8px 15px}.hero-meta{margin-top:11px}.dashboard-lower{margin-top:20px}.daily-card{padding:17px}.daily-header{margin-bottom:13px}.daily-check{margin-top:16px}.daily-note{margin-top:12px;padding-top:9px}.bottom-note{margin-top:16px}.session-topline{margin-bottom:16px}.session-heading{margin-bottom:13px}.session-heading h1{font-size:37px}.coach-line{margin-bottom:13px}.typing-prompt,.editor-body textarea{padding-block:16px;font-size:16px}.typing-prompt{max-height:155px}.typing-keyboard{margin-top:5px}.keycap{height:23px}.round-feedback{margin-top:13px}.result-art .mascot{width:105px}.result-stats{margin-block:16px;padding-block:13px}}@media(max-width:1150px){.app-shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding-inline:10px}.main-nav a{gap:9px;font-size:10px}main,.topbar{padding-inline:24px}.hero-grid{grid-template-columns:1.15fr 1fr;gap:13px}.next-mission{padding-inline:18px}.card-topline>span:last-child{display:none}.hero-copy h2{font-size:42px}.dashboard-lower{grid-template-columns:1.2fr 1fr;gap:18px}.daily-card{padding:17px}.path-content{grid-template-columns:minmax(0,1fr) 215px;gap:18px}.session-metrics{gap:14px}}@media(max-width:950px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{padding-inline:10px}.brand{align-items:center;margin-bottom:30px;padding:0 1px}.brand-mark{font-size:42px}.brand-sub,.sidebar-label,.main-nav a>span,.notification-dot,.placement-link span,.placement-link>svg:last-child,.sidebar-bottom{display:none}.main-nav a,.placement-link{justify-content:center}.placement-link{margin-top:18px;padding:20px 0}.hero-illustration{min-height:300px}.page-title-row .quiet-label{text-align:right;max-width:150px}.path-content{grid-template-columns:1fr}.path-coach{text-align:left;grid-template-columns:80px 1fr;column-gap:18px;display:grid}.path-coach .mascot{grid-row:span 3;width:80px}.path-coach .star-rules{margin-top:10px}.arcade-grid{grid-template-columns:1.2fr 1fr;gap:16px}}@media(max-width:700px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;gap:18px;height:auto;padding:13px 16px 10px;position:static}.brand{margin:0;padding:0}.brand-mark{font-size:40px}.main-nav{flex-direction:row;flex:1;justify-content:flex-end;gap:6px}.main-nav a{border-radius:7px;width:36px;min-height:36px;padding:8px}.main-nav a svg{font-size:13px}.placement-link{border-top:0;border-left:1px solid var(--line);margin:0;padding:8px 0 8px 10px}.topbar{min-height:48px;padding:10px 18px}.topbar>div:first-child{letter-spacing:.8px;gap:7px;font-size:7px}.topbar>div:first-child>span:last-child,.topbar-divider{display:none}.topbar-stats{gap:14px;font-size:9px}.topbar-stats .local-avatar{width:25px;height:25px;font-size:8px}main{padding:24px 18px}.page-title-row{align-items:start;gap:12px;margin-bottom:20px}.page-title-row h1{font-size:36px}.page-title-row>.quiet-label{display:none}.page-title-row .eyebrow{font-size:8px}.hero-grid{grid-template-columns:1fr;gap:16px}.next-mission{padding:20px}.hero-copy h2{font-size:45px}.hero-copy>p:not(.hero-kicker){font-size:12px}.card-topline>span:last-child{display:block}.hero-illustration{min-height:220px}.hero-copy .button{width:100%}.hero-meta{justify-content:center;font-size:9px}.dashboard-lower{grid-template-columns:1fr;gap:22px;margin-top:26px}.daily-card{padding:20px}.daily-card>p{font-size:12px}.daily-note{font-size:10px}.daily-check{font-size:12px}.section-heading h2{font-size:29px}.text-link{font-size:10px}.mission-row{gap:10px;padding-inline:12px}.mission-row-copy strong{font-size:12px}.mission-row-copy small{font-size:10px}.mission-row-meta .stars{font-size:8px}.bottom-note{flex-wrap:wrap;margin-top:24px;font-size:9px}.bottom-note>span:last-child{display:none}.track-tabs{gap:6px}.track-tabs a{padding:8px 9px;font-size:9px}.track-banner{gap:13px;padding:18px 15px}.track-mark{border-radius:8px;flex-basis:48px;height:48px;font-size:25px}.track-banner h2{font-size:29px}.track-banner p:last-child{font-size:10px}.track-completion{display:none}.path-coach{padding:16px}.path-coach p{font-size:11px}.star-rules{font-size:10px}.session-topline{gap:12px;margin-bottom:18px}.session-heading{flex-direction:column;align-items:start;gap:16px}.session-heading h1{font-size:36px}.session-metrics{justify-content:space-between;gap:25px;width:100%}.session-metrics>div{align-items:flex-start}.session-metrics span{font-size:9px}.coach-line p{font-size:11px}.typing-prompt,.editor-body textarea{padding:18px 15px;font-size:15px;line-height:1.85}.typing-prompt{min-height:145px;max-height:240px}.editor-help{flex-direction:column;gap:5px;font-size:9px}.editor-chrome{font-size:8px}.practice-toolbar{gap:8px}.practice-toolbar>span{display:none}.typing-keyboard{margin-top:6px;padding:8px 5px}.key-row{gap:2px;margin-bottom:3px}.keycap{height:24px;font-size:7px}.key-wide{font-size:6px}.keyboard-legend{padding:0 3px;font-size:7px}.keyboard-legend>span:last-child{text-align:right;max-width:140px}.round-feedback{flex-wrap:wrap;padding:13px}.round-feedback .button{width:100%;min-height:42px;font-size:12px}.session-footnote{font-size:9px}.result-art .mascot{width:115px}.result-view>p:not(.eyebrow):not(.result-note){font-size:12px}.result-view h1{font-size:38px}.result-stats span{font-size:9px}.reward-strip{gap:13px;padding:14px 12px}.reward-strip .stars{font-size:21px}.reward-strip small{font-size:10px}.result-actions .button{flex:100%}.result-note{font-size:10px}.arcade-grid,.review-grid{grid-template-columns:1fr}.sprint-card{padding:20px}.sprint-card>p:not(.eyebrow),.rules-card p,.record-card p,.review-card p{font-size:12px}.progress-counters{grid-template-columns:1fr 1fr;gap:10px}.progress-counters>div{padding:15px}.track-records{grid-template-columns:1fr}.track-record>span:not(.track-mark),.track-record strong,.privacy-note{font-size:11px}}@media(max-width:374px){.sidebar{gap:9px;padding-inline:12px}.main-nav{gap:3px}.main-nav a{width:32px;padding:7px}.placement-link{display:none}main{padding-inline:12px}.card-topline>span:last-child,.mission-row-meta{display:none}.reward-strip{text-align:center;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}progress::-webkit-progress-value{transition:none}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}@media(prefers-reduced-transparency:reduce){.lumenmorph{--lumen-bg:#24261f;--lumen-blur:0px}}@media(forced-colors:active){.button,.mission-row,.typing-surface,.keycap,.main-nav a,.track-tabs a{border:1px solid buttontext}.glyph-error{color:marktext;background:mark;text-decoration:underline}.is-focused .glyph-caret:before{background:highlight}.keycap.key-next,.key-pressed{color:highlighttext!important;background:highlight!important}.editor-body textarea{-webkit-text-fill-color:transparent;forced-color-adjust:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
