:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182d34;background:#f5f3ee;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.topbar,.footer{width:min(1180px,calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between}.topbar{height:104px;border-bottom:1px solid #d9dedb}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900;font-size:27px;letter-spacing:-.055em;line-height:.88}.brand small{display:block;font-size:8px;letter-spacing:2.2px;font-weight:800;margin-top:8px;color:#84908d}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:#18373b;color:#fff;border-radius:12px;font-size:25px;letter-spacing:-.055em;padding-right:4px}.brand-mark span{font-size:11px;align-self:start;letter-spacing:0;padding-top:6px;color:#f69a78}.top-note{font-size:12px;color:#8b9693}.top-location{font-size:10px;font-weight:800;letter-spacing:2px;color:#596b68}.top-location span{color:#f68a67;margin-right:6px}.footer{padding:25px 0 34px;font-size:11px;color:#87938f;border-top:1px solid #d9dedb;gap:12px}.footer a{text-decoration:none;color:#456d66;font-weight:700}main{flex:1}.home,.workspace{width:min(1180px,calc(100% - 48px));margin:auto}.hero{display:grid;grid-template-columns:1.06fr .94fr;min-height:565px;gap:36px;align-items:center;padding:30px 0 48px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#d66e4d;font-size:11px;font-weight:900;letter-spacing:2.8px;text-transform:uppercase}.eyebrow::before{content:"";width:24px;height:2px;background:currentColor}.hero h1{font-size:clamp(55px,7.3vw,105px);line-height:.92;letter-spacing:-.055em;margin:24px 0 24px;font-weight:900;max-width:660px}.hero h1 em{font-style:normal;color:#bc5635}.hero p{font-size:17px;line-height:1.65;color:#6a7975;max-width:460px;margin:0 0 32px}.hero-actions,.button-row{display:flex;gap:10px;flex-wrap:wrap}.btn{border:0;border-radius:13px;padding:16px 23px;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;text-decoration:none;transition:transform .16s,background .16s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#18373b;color:#fff}.btn-primary:hover{background:#285257}.btn-light{background:#fff;color:#1b383d;border:1px solid #e0e5e1}.btn-coral{background:#e88665;color:#173d39}.btn-ghost{background:transparent;color:#5b7774;border:1px solid #d7e1dd}.hero-art{min-height:472px;border-radius:26px;background:#dce9de;position:relative;overflow:hidden;padding:28px;display:flex;align-items:flex-end;box-shadow:0 24px 50px rgba(32,57,48,.07)}.hero-art::before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.6);border-radius:50%;left:50%;top:-245px;transform:translateX(-50%) translateY(var(--hero-drift,0px));box-shadow:0 0 0 67px rgba(255,255,255,.13),0 0 0 138px rgba(255,255,255,.12)}.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(27,61,55,.1));pointer-events:none}.art-label{position:absolute;top:29px;left:30px;font-size:10px;font-weight:900;letter-spacing:2.2px;color:#3f6457}.art-cross{position:absolute;top:20px;right:30px;font-size:38px;font-weight:300;color:#91b2a0}.road{position:absolute;width:170px;height:360px;background:#a8bfac;top:70px;left:50%;transform:translateX(-50%) skew(-17deg);border-left:9px solid #f5f3e5;border-right:9px solid #f5f3e5;border-radius:95px 95px 20px 20px}.road::before{content:"";position:absolute;top:50px;bottom:38px;left:50%;border-left:4px dashed #f8f6e7;transform:translateX(-50%)}.road::after{content:"";position:absolute;left:18px;top:180px;width:120px;height:65px;border-radius:38px 40px 28px 29px;background:#e88260;box-shadow:inset -15px -8px 0 #d67155,0 14px 20px rgba(44,70,54,.2)}.sign{position:absolute;top:73px;right:60px;width:82px;height:82px;border:9px solid #e67e5f;background:#f7f5ed;border-radius:50%;display:grid;place-items:center;color:#283d3b;font-size:26px;font-weight:900;box-shadow:0 8px 20px rgba(40,65,47,.12);z-index:1}.sign::after{content:"";position:absolute;top:72px;width:8px;height:125px;background:#83978c;z-index:-1}.art-bottom{z-index:2;display:flex;justify-content:space-between;align-items:flex-end;width:100%;color:#173d38}.art-bottom strong{font-size:13px}.art-bottom span{font-size:11px;font-weight:700;letter-spacing:1.4px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d9dedb;padding:30px 0 34px;gap:25px}.stat{border-right:1px solid #d9dedb;padding-right:20px}.stat:last-child{border:0}.stat strong{display:block;font-size:33px;letter-spacing:-.05em}.stat span{display:block;color:#89938f;font-size:11px;margin-top:4px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px;gap:20px}.section-head h2,.workspace h1{font-size:clamp(30px,4vw,51px);letter-spacing:-.055em;line-height:1.05;margin:10px 0 0}.section-head p{color:#80908a;font-size:12px}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:54px}.path-card{background:#fff;border:1px solid #e5e9e5;border-radius:19px;min-height:170px;text-align:left;padding:22px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .16s,box-shadow .16s}.path-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(20,50,44,.08)}.path-icon{width:36px;height:36px;background:#e5efea;border-radius:10px;display:grid;place-items:center;font-size:19px;color:#376d5f}.path-card:nth-child(2) .path-icon{background:#fce7dd;color:#cd704c}.path-card:nth-child(3) .path-icon{background:#e7e9f0;color:#5d6885}.path-card strong{display:block;font-size:18px;letter-spacing:-.025em}.path-card small{display:block;color:#81908a;margin-top:5px;font-size:11px}.path-card .arrow{float:right;color:#8aaba0}.workspace{padding:44px 0 70px;max-width:880px}.back-link{font-size:12px;font-weight:800;color:#6b8880;text-decoration:none;display:inline-block;margin-bottom:30px}.mode-caption{color:#7e8c88;font-size:14px;line-height:1.6;margin:13px 0 29px}.panel{background:#fff;border:1px solid #e0e6e1;border-radius:24px;padding:30px;box-shadow:0 20px 50px rgba(35,60,50,.045)}.progress-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#84938f;font-weight:800;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.progress-track{height:6px;background:#e9efeb;border-radius:99px;overflow:hidden;margin-bottom:24px}.progress-fill{height:100%;background:#e88260;border-radius:99px;transition:width .25s}.learn-card{min-height:340px;background:#dce9de;border-radius:19px;padding:29px;display:flex;flex-direction:column;touch-action:pan-y;user-select:none;transition:transform .18s,opacity .18s}.learn-card .tag,.question-tag{font-size:10px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;color:#507e6d}.learn-card h2{font-size:clamp(28px,5vw,47px);letter-spacing:-.055em;line-height:1.14;margin:auto 0;color:#153934}.learn-card .term{font-size:12px;font-weight:800;color:#779b88}.learn-card .hint{font-size:11px;color:#749280;margin-top:16px}.answer-box{border-top:1px solid #e5ebe6;margin-top:24px;padding-top:20px;min-height:102px}.answer-box strong{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#df795a}.answer-box p{font-size:15px;line-height:1.55;margin:8px 0 6px}.source-link{font-size:11px;font-weight:800;color:#47796c;text-decoration:none}.source-link:hover{text-decoration:underline}.card-actions{display:flex;gap:11px;margin-top:25px}.card-actions .btn{flex:1}.key-hint{font-size:11px;color:#9aa7a1;text-align:center;margin-top:15px}.question-title{font-size:clamp(25px,4vw,36px);line-height:1.24;letter-spacing:-.04em;margin:22px 0 26px}.options{display:grid;gap:10px}.option{display:flex;align-items:flex-start;gap:14px;width:100%;text-align:left;border:1px solid #dfe7e2;background:#fff;border-radius:13px;padding:16px;color:#243d3d;font-size:15px;line-height:1.4}.option:hover{border-color:#9cbab0}.option.selected{background:#e6f1eb;border-color:#5d9b83;box-shadow:inset 0 0 0 1px #5d9b83}.option-letter{display:grid;place-items:center;flex:none;width:24px;height:24px;border:1px solid #cadbd1;border-radius:7px;font-size:11px;font-weight:900;color:#5f7c6e}.selected .option-letter{background:#4f9275;color:#fff;border-color:#4f9275}.quiz-footer{display:flex;justify-content:space-between;gap:10px;margin-top:25px}.quiz-footer .btn{min-width:120px}.timer{font-variant-numeric:tabular-nums;color:#e17b59}.result-score{font-size:clamp(68px,12vw,120px);font-weight:900;letter-spacing:-.055em;line-height:1;margin:18px 0}.result-score small{font-size:.35em;color:#8da29a}.result-list{display:grid;gap:10px;margin-top:27px}.result-item{padding:18px 20px;border-radius:12px;background:#f4f7f3;border-left:4px solid #d67458}.result-item.ok{border-color:#72ad8c}.result-item strong{font-size:14px}.result-item p{font-size:13px;line-height:1.5;color:#667873;margin:7px 0}.empty{padding:25px;text-align:center;color:#71847b}.loading{padding:90px 0;text-align:center;color:#7c8d87}@media(max-width:760px){.topbar,.footer,.home,.workspace{width:min(100% - 32px,540px)}.topbar{height:82px}.top-note{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;padding:45px 0 35px;gap:34px}.hero h1{font-size:clamp(57px,14vw,82px)}.hero p{font-size:15px}.hero-art{min-height:330px}.road{height:320px;top:30px}.sign{top:38px;right:35px;width:70px;height:70px;font-size:23px}.sign::after{top:60px}.stats{padding:20px 0 25px;gap:10px}.stat strong{font-size:23px}.stat span{font-size:10px}.path-grid{grid-template-columns:1fr}.path-card{min-height:116px}.workspace{padding-top:28px}.panel{padding:17px}.learn-card{min-height:310px;padding:22px}.card-actions .btn{padding:13px 10px;font-size:12px}.footer{font-size:10px}.top-location{font-size:9px}.brand{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.lang-switch{display:flex;gap:2px;padding:3px;border:1px solid #d9dedb;border-radius:10px}.lang-switch button{border:0;background:transparent;color:#60746c;font-size:10px;font-weight:900;letter-spacing:1px;padding:8px 10px;border-radius:7px}.lang-switch button[aria-pressed="true"]{background:#18373b;color:#fff}@media(max-width:760px){.top-location{display:none}.brand{font-size:23px}}
.path-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.path-heading h1{margin-bottom:12px}.path-heading .mode-caption{margin-bottom:0}.module-list{display:grid;gap:12px;margin:28px 0}.module-row{display:flex;align-items:center;gap:18px;padding:20px 22px;border:1px solid #e0e7e1;border-radius:16px;background:#fff}.module-row.current{background:#e7f0e7;border-color:#b6d0bb}.module-number{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:12px;background:#eff2ee;font-size:17px;font-weight:900;color:#597567}.module-row.current .module-number{background:#18373b;color:#fff}.module-row>div{flex:1;min-width:0}.module-row strong,.module-row small{display:block}.module-row strong{font-size:18px}.module-row small{margin-top:4px;color:#7b8d84;font-size:12px}.module-badge{font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase;color:#789181}.current .module-badge{color:#c76d4d}.path-actions{display:flex;flex-wrap:wrap;gap:10px}.path-note{color:#8b9891;font-size:13px;line-height:1.5;margin:22px 0 55px}.path-feedback{margin-top:18px;padding:18px 20px;border-radius:12px;background:#eaf3ed;border-left:4px solid #6aad82}.path-feedback.wrong{background:#fff0eb;border-color:#dc8667}.path-feedback.unavailable{background:#f2f5f4;border-color:#8a9d98}.path-feedback strong{font-size:16px}.path-feedback p{margin:8px 0 5px;line-height:1.5;font-size:14px}.profile-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:12px;margin:30px 0}.profile-level,.profile-stat{padding:24px;background:#fff;border:1px solid #e0e7e1;border-radius:15px}.profile-level{background:#e5efe6}.profile-level span,.profile-stat span{display:block;color:#7a8d84;font-size:12px}.profile-level strong{display:block;font-size:clamp(24px,3vw,38px);letter-spacing:-.05em;margin:12px 0}.profile-level small{font-size:11px;color:#688276;line-height:1.4}.profile-stat strong{display:block;font-size:30px;letter-spacing:-.05em;margin-bottom:12px}.path-workspace>.panel{margin-bottom:40px}@media(max-width:760px){.path-heading{display:block}.path-heading .btn{margin-top:20px}.module-row{padding:15px;gap:12px}.module-number{width:40px;height:40px;font-size:14px}.module-row strong{font-size:14px}.module-row small{font-size:10px}.module-badge{font-size:8px;text-align:right}.profile-grid{grid-template-columns:repeat(3,1fr)}.profile-level{grid-column:1/-1}.profile-stat{padding:15px}.profile-stat strong{font-size:23px}.profile-stat span{font-size:10px}}

/* RuteB route system: motion follows progress and keeps one clear action per screen. */
:root{color:#142b32;background:#f3f5f2}body{background:radial-gradient(circle at 10% 0%,#e3eee8 0,transparent 34%),#f3f5f2}.topbar,.footer{border-color:#d5e1d9}.brand-mark,.btn-primary,.lang-switch button[aria-pressed="true"]{background:#142c34}.btn-primary{box-shadow:0 8px 0 #0a1c22,0 14px 24px #102e3422;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s,background .24s}.btn-primary:hover{background:#1d4b52;transform:translateY(-4px);box-shadow:0 12px 0 #0a1c22,0 18px 28px #102e3426}.btn-primary:active{transform:translateY(4px);box-shadow:0 3px 0 #0a1c22}.btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;transform:none}.btn-light,.btn-ghost{transition:transform .2s,background .2s,border-color .2s}.btn-light:hover,.btn-ghost:hover{background:#e9f2ec;border-color:#96b7a5}.back-link{font-size:14px;color:#285b51}.back-link:hover{text-decoration:underline}.workspace h1{letter-spacing:-.055em}.path-workspace{max-width:1100px}.path-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:360px;padding:clamp(30px,5vw,66px);border-radius:30px;overflow:hidden;color:#f7fff5;background:radial-gradient(circle at 85% 20%,#2e6970 0,transparent 32%),linear-gradient(135deg,#10282e,#153e45 65%,#17625e);box-shadow:0 24px 50px #143b3b23}.path-hero:before{content:"";position:absolute;inset:-80px -20px auto auto;width:520px;height:520px;border:2px solid #ffffff16;border-radius:50%;box-shadow:0 0 0 55px #ffffff0a,0 0 0 115px #ffffff08;pointer-events:none}.path-hero .eyebrow{color:#a9efc4}.path-hero h1{font-size:clamp(52px,7vw,94px);margin:22px 0 16px;line-height:.95}.path-hero p{max-width:570px;font-size:17px;line-height:1.6;color:#c8e3dc;margin:0}.path-hero-metrics{display:flex;gap:35px;margin-top:36px}.path-hero-metrics span{display:grid;gap:2px;font-size:12px;color:#d5eee4}.path-hero-metrics strong{font-size:27px;color:#fff;letter-spacing:-.05em}.path-compass{position:relative;flex:none;width:220px;height:220px;border:1px solid #93e3c777;border-radius:50%;display:grid;place-items:center;margin-left:24px;box-shadow:0 0 0 20px #ffffff0b,0 0 0 48px #ffffff08;animation:compass-drift 7s ease-in-out infinite}.path-compass:before,.path-compass:after{content:"";position:absolute;background:#a9efc4}.path-compass:before{height:280px;width:1px}.path-compass:after{width:280px;height:1px}.path-compass span{z-index:1;display:grid;place-items:center;width:140px;height:140px;border-radius:50%;background:#c6f7d8;color:#123c3b;font-size:88px;font-weight:900;letter-spacing:-.055em;box-shadow:inset -9px -12px 0 #99dfb5,0 15px 40px #001b2033}.path-compass small{position:absolute;bottom:-27px;font-size:9px;font-weight:900;letter-spacing:2px;color:#a9efc4;white-space:nowrap}.path-heading{margin:58px 0 22px}.path-heading .eyebrow{font-size:11px}.path-heading h2{font-size:clamp(28px,4vw,43px);line-height:1.06;letter-spacing:-.055em;margin:12px 0 0}.module-list{position:relative;display:grid;gap:17px;margin:25px 0 25px;padding-left:56px}.module-list:before{content:"";position:absolute;top:20px;bottom:20px;left:26px;width:3px;background:repeating-linear-gradient(to bottom,#76bea5 0 14px,transparent 14px 24px)}.module-row{position:relative;min-height:128px;padding:24px 30px;border:1px solid #d9e3dc;border-radius:22px;box-shadow:0 6px 0 #d9e3dc,0 12px 24px #22463a0b;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s;animation:route-enter .55s both;animation-delay:calc(var(--step) * 70ms)}.module-row:hover{transform:translateX(8px) translateY(-3px);box-shadow:0 9px 0 #c9ded2,0 19px 30px #22463a16}.module-row.current{background:linear-gradient(115deg,#def5e5,#f9fff8);border-color:#8bcbaa;box-shadow:0 7px 0 #9bd4b2,0 18px 36px #1e80602a}.module-row:before{content:"";position:absolute;left:-43px;top:50%;width:26px;height:26px;transform:translateY(-50%);border:7px solid #f3f5f2;border-radius:50%;background:#9eb9aa;box-shadow:0 0 0 2px #8daf9c}.module-row.current:before{background:#31bf85;box-shadow:0 0 0 2px #1f8a65,0 0 0 9px #8ee1b340}.module-number{width:60px;height:60px;border-radius:17px;background:#eaf0ec;font-size:22px;color:#4d7865}.module-row.current .module-number{background:#173f3e;box-shadow:0 5px 0 #082825}.module-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:#4f826a;margin-bottom:8px}.module-row strong{font-size:clamp(18px,2vw,24px);letter-spacing:-.035em;color:#153438}.module-row small{font-size:13px;color:#536f67;margin-top:7px}.module-badge{padding:9px 12px;border-radius:99px;background:#eff2ef;color:#526a60;font-size:10px;white-space:nowrap}.current .module-badge{background:#fff;color:#146e4b;border:1px solid #a7d9b7}.path-actions{margin:32px 0 12px}.path-note{font-size:14px;color:#506c62}.question-panel{padding:0 0 28px;overflow:visible;border:0;border-radius:28px;box-shadow:0 20px 50px #193d351b}.question-panel>.progress-row{padding:24px 30px 0;margin:0;color:#47645c;font-size:12px}.progress-row b{font-size:23px;letter-spacing:-.04em;color:#183c3d}.question-panel>.progress-track{margin:18px 30px 0;height:9px;background:#e6efe9}.question-panel .progress-fill{background:linear-gradient(90deg,#37bb83,#a1e7b9);box-shadow:0 0 14px #58d49a66}.question-stage{display:grid;grid-template-columns:minmax(210px,38%) 1fr;gap:32px;padding:27px 30px 24px;align-items:stretch}.question-visual{min-height:265px;position:relative;overflow:hidden;border-radius:19px;background:radial-gradient(circle at 80% 15%,#5ba88f,#174d52 70%);display:grid;place-items:center}.question-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 65%,#0c353b66)}.visual-orbit{position:absolute;width:285px;height:285px;border:1px solid #ffffff50;border-radius:50%;box-shadow:0 0 0 38px #ffffff14,0 0 0 78px #ffffff0b;animation:orbit 18s linear infinite}.visual-road{position:absolute;bottom:-100px;width:115px;height:380px;transform:rotate(31deg);background:#b2d0bd55;border-inline:5px solid #e0f5dc9c}.visual-road:after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:4px dashed #e8f2d8a8}.visual-sign{position:relative;z-index:1;width:122px;height:122px;display:grid;place-items:center;border:12px solid #ed845e;background:#fdfbf2;border-radius:50%;font-size:52px;font-weight:900;letter-spacing:-.055em;color:#173b41;box-shadow:0 15px 35px #092a314d;animation:sign-arrive .5s cubic-bezier(.2,1.3,.35,1) both}.question-visual>span{position:absolute;z-index:1;bottom:21px;color:#e5f8e9;font-size:10px;font-weight:900;letter-spacing:2px}.question-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}.term-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fact-hint{color:#607d71;font-size:12px}.fact-tip{position:relative;z-index:4}.fact-tip summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:39px;padding:9px 13px;background:#def3e5;border:1px solid #a6d7b8;border-radius:99px;color:#185a46;font-size:12px;font-weight:900;letter-spacing:.5px;cursor:pointer;transition:transform .2s,background .2s}.fact-tip summary::-webkit-details-marker{display:none}.fact-tip summary:hover,.fact-tip summary:focus-visible{background:#c7ecd4;transform:translateY(-2px)}.fact-tip summary span{font-size:16px}.fact-content{display:none;position:absolute;left:0;top:calc(100% + 10px);width:min(310px,calc(100vw - 60px));padding:17px 19px;border-radius:16px;background:#143c40;color:#ecfff3;box-shadow:0 15px 36px #12373944;line-height:1.5;animation:route-enter .2s ease-out both}.fact-tip[open] .fact-content,.fact-tip:hover .fact-content,.fact-tip:focus-within .fact-content{display:block}.fact-content strong{font-size:13px}.fact-content p{font-size:13px;margin:7px 0 9px}.fact-content .source-link{color:#a2e8ba}.question-title{font-size:clamp(26px,3.8vw,39px);line-height:1.17;letter-spacing:-.055em;margin:22px 0 19px;color:#133139}.question-instruction{font-size:13px;color:#5f7a70;margin:0;font-weight:800}.question-panel .options{padding:0 30px;gap:12px}.question-panel .option{min-height:68px;align-items:center;border:2px solid #dfe9e1;border-radius:15px;padding:14px 17px;font-size:16px;font-weight:650;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s}.question-panel .option:hover:not(:disabled){transform:translateX(5px);border-color:#69b68e;box-shadow:0 5px 0 #d3e8da}.question-panel .option.selected{background:#e2f7e8;border-color:#25a875;box-shadow:0 5px 0 #9edaba}.question-panel .option.is-correct{border-color:#1e9f6c;background:#e4f9e9}.question-panel .option:disabled{opacity:1;cursor:default}.question-panel .option-letter{width:34px;height:34px;border-radius:10px;font-size:13px}.option-end{margin-left:auto;font-size:18px;color:#8daa9d}.selected .option-end,.is-correct .option-end{color:#137b52}.question-panel .quiz-footer{margin:27px 30px 0;align-items:center}.question-panel .path-feedback{margin:23px 30px 0;border-radius:17px;border-left-width:5px}.path-feedback p{font-size:15px}.profile-level{background:linear-gradient(135deg,#163b40,#236752);color:#fff;border:0;box-shadow:0 10px 0 #102c30}.profile-level span,.profile-level small{color:#cae7d4}.profile-level strong{color:#fff}.profile-stat{box-shadow:0 6px 0 #d8e6dc}.profile-stat span{color:#4f6c60}.path-workspace>.panel{border-color:#dce7df}.question-panel{animation:route-enter .3s ease-out both}@keyframes route-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes compass-drift{50%{transform:rotate(8deg) translateY(-8px)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes sign-arrive{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){.path-hero{min-height:340px;padding:30px 25px;align-items:flex-start}.path-hero h1{font-size:58px}.path-hero p{font-size:15px;max-width:470px;position:relative;z-index:1}.path-hero-metrics{gap:19px;margin-top:28px;position:relative;z-index:1}.path-hero-metrics strong{font-size:22px}.path-compass{position:absolute;right:-100px;top:-55px;width:180px;height:180px;opacity:.12}.path-compass span{width:115px;height:115px;font-size:70px}.path-heading{margin:40px 0 17px}.module-list{padding-left:34px;gap:13px}.module-list:before{left:15px}.module-row{min-height:110px;padding:16px;gap:14px}.module-row:before{left:-31px;width:22px;height:22px;border-width:6px}.module-number{width:44px;height:44px;font-size:15px;border-radius:12px}.module-row strong{font-size:16px}.module-row small{font-size:12px;line-height:1.35}.module-kicker{font-size:9px;margin-bottom:5px}.module-badge{font-size:9px;padding:6px 8px}.question-stage{grid-template-columns:1fr;gap:20px;padding:20px}.question-visual{min-height:150px}.visual-orbit{width:230px;height:230px}.visual-road{height:270px;bottom:-80px}.visual-sign{width:90px;height:90px;border-width:9px;font-size:38px}.question-visual>span{bottom:11px;font-size:8px}.question-title{font-size:28px;margin:17px 0 10px}.question-panel .options{padding:0 20px}.question-panel .option{font-size:15px;min-height:62px}.question-panel>.progress-row{padding:20px 20px 0}.question-panel>.progress-track{margin:14px 20px 0}.question-panel .quiz-footer{margin:24px 20px 0}.question-panel .path-feedback{margin:20px 20px 0}}
@media(max-width:420px){.path-hero{min-height:360px}.path-hero-metrics{gap:13px}.path-hero-metrics span{font-size:12px}.path-hero-metrics strong{font-size:19px}.module-row{align-items:flex-start}.module-badge{white-space:normal;max-width:75px;text-align:center}.quiz-footer .btn{padding:12px;font-size:12px;min-width:0}.fact-hint{font-size:11px}}
@media(prefers-reduced-motion:reduce){.path-compass,.visual-orbit,.visual-sign,.module-row,.question-panel{animation:none!important}}
.path-workspace>.back-link{display:block;width:max-content}
.term-static{display:inline-flex;align-items:center;min-height:39px;padding:9px 13px;background:#edf3ee;border:1px solid #d4e4d8;border-radius:99px;color:#275b49;font-size:12px;font-weight:900}
@media(max-width:760px){.fact-tip[open]{width:100%}.fact-tip[open] .fact-content{position:relative;top:8px;width:100%;margin-bottom:8px}.fact-tip:hover:not([open]) .fact-content{display:none}}

/* Lesson stages and generated road scenes. */
.module-row{align-items:flex-start}.module-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.step-pill{min-height:52px;display:flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid #c9ded1;border-radius:12px;background:#fff;color:#1b443c;text-align:left;transition:transform .18s,background .18s,box-shadow .18s}.step-pill:not(:disabled){cursor:pointer}.step-pill:not(:disabled):hover{transform:translateY(-3px);background:#ebfaee;box-shadow:0 5px 0 #bfdfc8}.step-pill b{font-size:13px;white-space:nowrap;color:#0e6546}.step-pill span{font-size:12px;font-weight:750;line-height:1.25}.step-pill small{display:none}.step-pill.done{background:#d0efdc;border-color:#7dc69a}.step-pill.done b:before{content:'✓ ';color:#087a4a}.step-pill:disabled,.step-pill.planned{opacity:.6;background:#f3f6f3;border-color:#dce6dd;cursor:default}.module-row:not(.current) .module-steps{margin-top:14px}.module-row:not(.current) .step-pill{min-height:39px}.module-row:not(.current) .step-pill span{font-size:11px}.module-row .module-badge{margin-top:4px}.question-visual.photo-visual{background:#d8e5dc}.question-photo{display:block;width:100%;height:100%;min-height:265px;object-fit:cover;border-radius:19px}.swipe-stage{max-width:700px;margin:0 auto 60px}.swipe-card{overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 13px 0 #cce4d4,0 24px 55px #214a3b22;touch-action:pan-y;animation:route-enter .25s ease-out both}.swipe-image{width:100%;height:300px;display:block;object-fit:cover}.swipe-body{padding:28px 32px 34px}.swipe-body h2,.text-step h2{font-size:clamp(27px,4.2vw,39px);line-height:1.16;letter-spacing:-.05em;margin:20px 0}.swipe-answer{padding:19px 21px;background:#eaf7ed;border-left:4px solid #44b47c;border-radius:12px;animation:route-enter .22s both}.swipe-answer p,.swipe-prompt{font-size:16px;line-height:1.6;margin:0 0 10px}.swipe-actions{display:flex;gap:12px;justify-content:center;margin-top:32px}.swipe-actions .btn{min-width:155px}.swipe-hint{text-align:center;color:#526f61;font-size:13px;min-height:24px}.text-step{display:grid;grid-template-columns:39% 1fr;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 15px 35px #1b453322;margin-bottom:65px}.text-step-image{width:100%;height:100%;min-height:540px;object-fit:cover}.text-step-body{padding:37px}.text-step label{display:block;font-size:14px;font-weight:800;color:#285447;margin:22px 0 9px}.text-step textarea{width:100%;min-height:170px;padding:16px;border:2px solid #c9ddd0;border-radius:14px;font:inherit;font-size:16px;line-height:1.5;color:#173d39;resize:vertical;background:#fafffb}.text-step textarea:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.text-step textarea:disabled{background:#eaf4eb}.ai-note{color:#60766a;font-size:13px;line-height:1.5}.text-step .button-row{margin-top:22px}.step-done{text-align:center;background:linear-gradient(140deg,#17393d,#24775c);color:#fff;padding:55px 24px;border-radius:26px;margin-bottom:60px;box-shadow:0 20px 40px #1446312a}.step-done-mark{display:grid;place-items:center;width:90px;height:90px;border-radius:50%;background:#b6f0c7;color:#125242;font-size:54px;font-weight:900;margin:0 auto 24px;box-shadow:0 8px 0 #79c99a}.step-done h2{font-size:clamp(27px,4vw,42px);letter-spacing:-.05em;margin:0 0 5px}.step-done p{color:#c6ead4;margin:0 0 27px}.step-done .btn{margin:5px}.step-done .btn-primary{background:#bbefd0;color:#123e37;box-shadow:0 6px 0 #77c79b}.step-done .btn-primary:hover{background:#d5f8dc}.step-done .btn-light{background:#ffffff20;color:#fff;border-color:#ffffff55}@media(max-width:760px){.module-steps{gap:7px}.step-pill{min-height:45px;padding:6px 8px;gap:5px}.step-pill span{font-size:10px}.step-pill b{font-size:11px}.module-row:not(.current) .module-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.module-row:not(.current) .step-pill{min-height:35px}.module-row:not(.current) .step-pill span{font-size:10px}.question-photo{min-height:150px}.swipe-image{height:210px}.swipe-body{padding:21px}.swipe-actions .btn{min-width:0;flex:1}.text-step{grid-template-columns:1fr}.text-step-image{height:190px;min-height:0}.text-step-body{padding:23px}.text-step h2{font-size:27px}.step-done{padding:38px 20px}}
.signs-open{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;padding:9px 15px;border:1px solid #8fc7a7;border-radius:11px;background:#ddf5e5;color:#145b42;font-size:13px;font-weight:900;cursor:pointer}.signs-open:hover{background:#c8ecd4;transform:translateY(-2px)}.sign-controls{margin:28px 0 13px;padding:24px;border:1px solid #d7e5da;border-radius:20px;background:#fff}.sign-controls label{display:block;font-size:13px;font-weight:850;margin-bottom:9px}.sign-controls input{width:100%;height:48px;padding:0 14px;border:2px solid #cddfd3;border-radius:12px;background:#fafffb;font:inherit;font-size:16px}.sign-controls input:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.sign-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.sign-filters button{min-height:42px;padding:8px 12px;border:1px solid #d4e1d8;border-radius:10px;background:#f6faf7;color:#365a4b;font-size:12px;font-weight:800;cursor:pointer}.sign-filters button[aria-pressed="true"]{background:#17473c;color:#fff;border-color:#17473c}.sign-filters button:hover{border-color:#4da97b}.sign-count{font-size:13px;font-weight:800;color:#526d61}.sign-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 28px}.sign-card{min-width:0;background:#fff;border:1px solid #dce8df;border-radius:17px;overflow:hidden;box-shadow:0 4px 0 #dce8df}.sign-image{width:100%;aspect-ratio:1;background-color:#fff;background-repeat:no-repeat}.sign-card>div:not(.sign-image){border-top:1px solid #e9efe9;padding:12px 14px;min-height:90px}.sign-card small,.sign-card strong,.sign-card span{display:block}.sign-card small{font-size:10px;color:#4b7460;font-weight:800}.sign-card strong{font-size:14px;line-height:1.25;margin-top:5px}.sign-card span{font-size:10px;color:#75867b;margin-top:5px}.sign-more{grid-column:1/-1;justify-self:center;margin:15px}.sign-license{font-size:13px;color:#526b5f;line-height:1.6;margin:20px 0 50px}.sign-license a{color:#155a42;font-weight:800}@media(max-width:760px){.sign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sign-card>div:not(.sign-image){padding:10px;min-height:82px}.sign-card strong{font-size:12px}.sign-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.sign-filters button{flex:none}}
.sign-quiz-panel{max-width:560px;margin:0 auto 60px;text-align:center}.sign-quiz-image{width:min(280px,100%);margin:0 auto 20px;border:1px solid #dce8df;border-radius:18px}.sign-quiz-panel h2{font-size:clamp(24px,4vw,32px);letter-spacing:-.04em}.sign-quiz-panel .options{text-align:left;margin:25px 0}.sign-quiz-panel .option:disabled{opacity:1}.sign-quiz-panel .option.is-correct{border-color:#24965e;background:#e4f9e9}.sign-quiz-feedback{font-weight:800;color:#215e47;line-height:1.5}
@media(max-width:600px){.sign-quiz-image{width:min(200px,100%);margin-bottom:10px}.sign-quiz-panel h2{margin:10px 0;font-size:23px}.sign-quiz-panel .options{margin:12px 0}.sign-quiz-panel .option{padding:12px}}
.question-visual.sign-visual{background:#fff;border:1px solid #e0e9e3}.question-visual.sign-visual:after{display:none}.question-sign-image{width:min(240px,90%);border-radius:12px}
.swipe-sign-image{width:min(280px,75%);margin:16px auto 0;border-radius:14px;border:1px solid #e0e9e3}
.result-item:has(.result-sign-image){display:flex;align-items:center;gap:16px}.result-sign-image{flex:none;width:76px;border:1px solid #e0e9e3;border-radius:9px}.result-item:has(.result-sign-image)>div:last-child{min-width:0}
.mock-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0;font-weight:800;color:#24483b}.mock-top strong{font-variant-numeric:tabular-nums;font-size:23px}.mock-grid{display:grid;grid-template-columns:repeat(15,minmax(0,1fr));gap:6px;margin:0 0 24px}.mock-grid button{min-height:44px;border:1px solid #d7e4db;border-radius:8px;background:#fff;color:#446454;font-weight:800;cursor:pointer}.mock-grid button.answered{background:#dff5e7;border-color:#91cba8}.mock-grid button.active{background:#183e30;color:#fff;border-color:#183e30}.mock-grid button:focus-visible{outline:3px solid #e68463;outline-offset:2px}@media(max-width:760px){.mock-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.mock-grid button{min-height:44px;font-size:12px}.mock-top strong{font-size:19px}}
.region-control{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:30px 0 22px;padding:15px 18px;background:#fff;border:1px solid #dbe8df;border-radius:16px}.region-control label{font-weight:800;color:#24483b}.region-control select{min-height:42px;padding:0 36px 0 13px;border:1px solid #b9d2c3;border-radius:10px;background:#f6fbf7;color:#183e30;font:inherit;font-weight:700}.region-control span{margin-left:auto;font-size:12px;color:#5b7465}.region-control select:focus-visible{outline:3px solid #e68463;outline-offset:2px}@media(max-width:760px){.region-control span{width:100%;margin-left:0}}
.skip-link{position:absolute;z-index:100;top:12px;left:12px;transform:translateY(-180%);padding:12px 16px;border-radius:10px;background:#18373b;color:#fff;font-weight:800;text-decoration:none}.skip-link:focus{transform:translateY(0)}
.static-home .hero{grid-template-columns:1fr;min-height:420px}.static-home .hero p{max-width:720px}
.top-note,.brand small,.footer{color:#4c625a}.eyebrow{color:#a33d20}.hero p{color:#4d625c}.fact-hint,.question-instruction,.swipe-hint,.ai-note{color:#405d4e}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:420px){.module-row{display:grid;grid-template-columns:44px minmax(0,1fr)}.module-row .module-copy{grid-column:2;grid-row:1}.module-row .module-badge{position:absolute;top:16px;right:16px;margin:0}.module-copy>strong{padding-right:48px}.module-steps,.module-row:not(.current) .module-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.module-row .step-pill,.module-row:not(.current) .step-pill{min-height:44px;padding:7px}.module-row .step-pill span,.module-row:not(.current) .step-pill span{font-size:11px}.module-row .step-pill b{font-size:11px}}
.step-pill span{min-width:0;overflow-wrap:anywhere}
.module-row .module-steps.grouped{display:block}.step-family{margin:10px 0;border:1px solid #d7e6dc;border-radius:14px;background:#f8fbf8;overflow:hidden}.step-family>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:11px 15px;color:#244e41;font-size:13px;font-weight:800;cursor:pointer;list-style:none}.step-family>summary::-webkit-details-marker{display:none}.step-family>summary:before{content:'+';display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#e4f1e7;color:#246347}.step-family[open]>summary:before{content:'−'}.step-family>summary span{margin-left:auto;color:#547769;font-variant-numeric:tabular-nums}.step-family>summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:-3px}.step-family-pills{display:flex;flex-wrap:wrap;gap:8px;padding:0 13px 14px}.step-family[open]{background:#fff;box-shadow:0 5px 16px #153d2b0d}@media(max-width:420px){.step-family-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.step-family>summary{font-size:12px}}
.voice-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.voice-actions .btn{min-height:46px;padding:11px 14px}.voice-skip{border:0;background:transparent;color:#356c57;text-decoration:underline;font-size:13px;font-weight:800;padding:11px}.voice-skip:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.voice-status{min-height:22px;color:#526d61;font-size:13px;font-weight:700;margin:11px 0 0}
@media(max-width:760px){.text-step-image{height:140px}.text-step-body{padding:20px}.text-step h2{font-size:25px;margin:14px 0}.voice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.voice-actions .btn{min-height:48px;padding:8px;font-size:13px;gap:5px}.voice-skip{grid-column:1/-1;justify-self:start;min-height:44px;padding:9px 0}.text-step label{margin-top:15px}}
.streak-toast{position:fixed;z-index:30;right:20px;bottom:20px;width:min(440px,calc(100vw - 40px));display:flex;align-items:center;gap:17px;padding:19px;border:1px solid #82cb9b;border-radius:20px;background:#edfff1;color:#183d32;box-shadow:0 15px 45px #143b3260}.streak-toast strong{font-size:18px}.streak-toast p{margin:5px 0 0;font-size:13px;line-height:1.4}.streak-flame{font-size:42px;line-height:1;animation:streak-pop .75s cubic-bezier(.2,1.5,.4,1) both}.streak-buttons{margin-left:auto;display:flex;gap:7px;flex-wrap:wrap}.streak-buttons .btn{min-height:40px;padding:9px 12px;font-size:12px}.streak-close{width:38px;height:38px;border:0;border-radius:9px;background:#d5f1dd;color:#245a42;font-size:25px}.streak-panel{display:flex;align-items:center;gap:20px;margin-bottom:20px}.streak-panel>span{font-size:42px}.streak-panel strong{font-size:23px}.streak-panel p{margin:5px 0 0;color:#567160;font-size:13px}@keyframes streak-pop{0%{transform:scale(.3) rotate(-25deg);opacity:0}65%{transform:scale(1.2) rotate(8deg)}100%{transform:scale(1);opacity:1}}@media(max-width:760px){.streak-toast{align-items:flex-start;flex-wrap:wrap}.streak-buttons{margin-left:0;width:100%}}
.streak-nav{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:64px;min-height:38px;padding:5px 10px;border:1px solid #f6bc85;border-radius:12px;background:#fff2dc;color:#995018;font-size:20px;white-space:nowrap;transition:filter .2s,background .2s}.streak-nav strong{font-size:14px}.streak-nav.is-missed{filter:grayscale(1);background:#e8ece9;border-color:#cdd5cf;color:#64716a}@media(max-width:760px){.streak-nav{margin-left:auto}.topbar{gap:9px}.lang-switch{flex:none}}
.topbar{position:sticky;top:0;z-index:20;background:#f3f5f2}.streak-nav{text-decoration:none}
.mode-caption{color:#4d625c;font-size:16px}.stat span,.section-head p{color:#52635e}.sign-filters button{min-height:44px}.sign-filter-hint{display:none}@media(max-width:760px){.sign-filter-hint{display:block;margin:5px 0 0;color:#52635e;font-size:12px;font-weight:700}}
.rewards-panel{margin-bottom:20px;background:radial-gradient(circle at 100% 0,#ebf8ec,transparent 48%),#fff}.rewards-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.rewards-heading h2{font-size:clamp(26px,4vw,39px);letter-spacing:-.055em;margin:8px 0 0}.xp-pill{background:#173f3c;color:#f1fbd9;padding:12px 17px;border-radius:12px;white-space:nowrap}.avatar-preview{display:flex;align-items:center;gap:20px;margin:26px 0 20px}.avatar-preview>span{width:90px;height:90px;display:grid;place-items:center;border:8px solid var(--avatar-frame);border-radius:50%;background:#e5f5e9;font-size:43px;box-shadow:0 7px 0 #d4e4d8}.avatar-preview strong,.avatar-preview small{display:block}.avatar-preview small{margin-top:6px;color:#637d70;font-size:12px}.chest-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.chest-row>span{font-size:12px;color:#63796d}.chest-row .btn:not(:disabled):hover{transform:translateY(-4px) rotate(-2deg)}.rewards-panel h3{font-size:15px;margin:22px 0 10px}.cosmetic-choices,.achievements{display:flex;gap:9px;flex-wrap:wrap}.cosmetic-choices button{min-height:45px;display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border:2px solid #dce9df;border-radius:12px;background:#f9fdfa;color:#254738;font-weight:800;transition:transform .18s,background .18s}.cosmetic-choices button:hover{transform:translateY(-2px)}.cosmetic-choices button[aria-pressed="true"]{background:#d6f5df;border-color:#319f6e}.cosmetic-choices button:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.frame-dot{width:19px;height:19px;border-radius:50%}.achievement{padding:9px 12px;border-radius:10px;background:#eef1ee;color:#718278;font-size:12px;font-weight:800}.achievement.earned{background:#e0f4e6;color:#225c3c}
.module-lessons{margin-top:16px}.module-lessons summary{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:240px;padding:10px 12px;border:1px solid #c9ded1;border-radius:11px;background:#f7fbf7;color:#285447;font-size:12px;font-weight:800;cursor:pointer;list-style:none}.module-lessons summary::-webkit-details-marker{display:none}.module-lessons summary:after{content:'⌄';font-size:17px;line-height:1}.module-lessons[open] summary:after{transform:rotate(180deg)}.module-lessons summary span{margin-left:auto;color:#648477}.module-lessons summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}.module-lessons .module-steps{margin-top:12px}
.step-pill span small{display:block;margin:3px 0 0;color:#58746a;font-size:10px;font-weight:700;line-height:1.1;text-transform:uppercase;letter-spacing:.04em}
.account-workspace{max-width:760px;padding-bottom:80px}.account-workspace h1{font-size:clamp(38px,6vw,64px);letter-spacing:-.055em;margin:20px 0}.account-panel{padding:30px;margin-top:28px}.account-panel>strong{font-size:22px}.account-panel>p{line-height:1.6}.account-panel form{display:grid;gap:10px;max-width:440px;margin-top:26px}.account-panel label{font-size:13px;font-weight:800;margin-top:10px}.account-panel input{width:100%;padding:14px 16px;border:2px solid #cadbd1;border-radius:12px;background:#fff;color:#173d39;font:inherit}.account-panel input:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.account-panel form .btn{justify-self:start;margin-top:14px}.account-panel [role=status]{min-height:24px}
.account-delete summary{cursor:pointer;font-weight:800;color:#8d352d}.account-delete summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}.account-delete .delete-confirm{display:flex;align-items:center;gap:10px;font-weight:600}.account-delete .delete-confirm input{width:20px;height:20px;flex:none}.btn-danger{background:#a4312f;color:#fff}.btn-danger:hover{background:#852522}
.top-note,.footer,.brand small{color:#52635e}.region-control select,.fact-tip summary,.module-row:not(.current) .step-pill{min-height:44px}.fact-tip summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}
@media(max-width:420px){.module-row .step-pill span,.module-row:not(.current) .step-pill span{font-size:12px}.step-pill:disabled,.step-pill.planned{opacity:.76}}
.diagram-question .question-stage{grid-template-columns:1fr;gap:16px}.diagram-question .diagram-visual{height:min(56vw,520px);min-height:310px;background:#dcebdc}.diagram-question .diagram-visual:after{display:none}.diagram-question .question-photo{height:100%;min-height:0;object-fit:contain}.diagram-question .option span:nth-child(2){font-size:clamp(15px,2.3vw,20px);font-weight:800;letter-spacing:.02em}@media(max-width:760px){.diagram-question .diagram-visual{height:260px;min-height:0}.diagram-question .question-stage{padding:14px}.diagram-question .question-copy{padding:0 6px}}
.sequence-picker{padding:4px 30px 0}.sequence-draft{min-height:64px;display:grid;place-items:center;padding:10px 18px;border:2px dashed #9ac5ab;border-radius:16px;background:#edf8ef;color:#184f3d;font-size:clamp(19px,3vw,28px);font-weight:900;letter-spacing:.08em}.sequence-cars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0}.sequence-cars button{min-height:68px;border:0;border-radius:16px;background:#234e4c;color:#fff;font-size:25px;font-weight:900;box-shadow:0 6px 0 #153836;transition:transform .16s,box-shadow .16s}.sequence-cars button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 9px 0 #153836}.sequence-cars button:disabled{background:#dce8dd;color:#657f71;box-shadow:none;cursor:default}.sequence-picker>.btn{min-height:44px;padding:10px 14px}@media(max-width:760px){.sequence-picker{padding:4px 20px 0}.sequence-cars{gap:8px}.sequence-cars button{min-height:58px;font-size:21px}}
.profile-coverage{margin:0 0 16px;padding:25px 28px;border-radius:20px}
.profile-coverage h2{margin:0 0 6px;font-size:23px;letter-spacing:-.04em}
.profile-coverage>p{margin:0 0 23px;color:#60766b;font-size:13px}
.profile-coverage ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-coverage li{padding:17px 18px;background:#f5f9f5;border:1px solid #dce9de;border-radius:14px}
.coverage-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;color:#21483e;font-size:13px}
.coverage-head span{white-space:nowrap;font-weight:800;color:#3f8164}
.profile-coverage progress{display:block;width:100%;height:10px;margin:13px 0 9px;accent-color:#39b985}
.profile-coverage small{color:#60766b;font-size:11px}
@media(max-width:760px){.profile-coverage{padding:20px}.profile-coverage ol{grid-template-columns:1fr}}
[hidden]{display:none!important}
.guide-links{margin:32px 0 60px;padding:26px 30px;border-radius:18px;background:#e7f2e7}.guide-links h2{margin:0 0 8px;font-size:24px}.guide-links p{margin:0;line-height:1.65}.guide-links a{color:#176b4c;font-weight:700}
.path-actions .btn-coral:disabled{background:#e2e8e3;color:#53645e;opacity:1}

/* RuteB's selected moose: one transparent sheet, six expressions, no animation package. */
.mascot-face{display:block;flex:none;width:64px;height:96px;background-image:url('assets/mascot-concepts/moose-b-expressions.webp');background-repeat:no-repeat;background-size:300% 200%;background-position:0 0}
.mascot-joy{background-position:50% 0}.mascot-skeptical{background-position:100% 0}.mascot-thinking{background-position:0 100%}.mascot-surprised{background-position:50% 100%}.mascot-wink{background-position:100% 100%}
.brand-mascot{width:42px;height:63px;margin:-8px 0;transform-origin:50% 75%;transition:transform .3s cubic-bezier(.2,1.5,.4,1)}.brand:hover .brand-mascot{transform:rotate(-8deg) scale(1.1)}
.path-compass .mascot-face{width:115px;height:173px;border:0;border-radius:0;background-color:transparent;box-shadow:none;font-size:0;z-index:2;transform:none;animation:mascot-float 4s ease-in-out infinite}.path-compass .mascot-face:hover{transform:rotate(-6deg)}
.mascot-coach{display:flex;align-items:center;gap:14px;min-height:95px;max-width:720px;margin:-9px 0 19px;padding:8px 20px 8px 8px;border:1px solid #c9e4d3;border-radius:22px;background:linear-gradient(110deg,#e3f8e9,#f7fcf7);box-shadow:0 9px 22px #143b3210;animation:coach-arrive .3s cubic-bezier(.2,.8,.2,1) both}.mascot-coach .mascot-face{width:55px;height:83px;animation:mascot-float 3.5s ease-in-out infinite}.mascot-coach p{font-size:14px;font-weight:800;line-height:1.45;letter-spacing:-.02em;color:#1a4b3c;margin:0}
.lesson-finish{position:relative;isolation:isolate;min-height:calc(100dvh - 104px);display:grid;place-items:center;overflow:hidden;padding:38px 24px 65px;background:radial-gradient(circle at 50% 32%,#e3f8d7 0,#f3faf0 39%,#f5f3ee 75%);text-align:center}.finish-glow{position:absolute;z-index:-1;top:8%;left:50%;width:min(58vw,540px);aspect-ratio:1;border:2px solid #c7e7b5;border-radius:50%;box-shadow:0 0 0 50px #d9f2cf55,0 0 0 105px #e3f4dc55;transform:translateX(-50%);animation:finish-halo .9s ease-out both}.finish-inner{width:min(100%,640px);animation:finish-rise .55s cubic-bezier(.2,.8,.2,1) both}.finish-eyebrow{display:block;color:#418266;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:900}.finish-mascot{width:245px;height:368px;margin:-30px auto -32px;animation:finish-mascot-in .7s cubic-bezier(.2,1.4,.4,1) both;filter:drop-shadow(0 20px 18px #24452a22)}.lesson-finish h1{font-size:clamp(32px,5vw,55px);line-height:1.02;letter-spacing:-.055em;margin:0 auto 12px;max-width:620px}.finish-line{font-size:16px;color:#4d7160;line-height:1.5;margin:0 0 25px}.finish-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.finish-stats>div{padding:17px 10px;border:1px solid #d4e8d6;border-radius:18px;background:#fffdfaec;box-shadow:0 7px 0 #d5e6d4;animation:finish-rise .55s both}.finish-stats>div:nth-child(2){animation-delay:.1s}.finish-stats>div:nth-child(3){animation-delay:.2s}.finish-stats strong{display:block;color:#173d39;font-size:clamp(30px,6vw,48px);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.055em}.finish-stats span{display:block;margin-top:7px;color:#56756a;font-size:12px;font-weight:800}.finish-stats .finish-xp{background:#173e3c;border-color:#173e3c;box-shadow:0 7px 0 #102b2a}.finish-xp strong{color:#baf49c}.finish-xp span{color:#e2f4df}.finish-note{color:#668272;font-size:12px;margin:18px 0 0}.finish-actions{display:flex;justify-content:center;gap:11px;flex-wrap:wrap;margin-top:27px}.finish-actions .btn{min-width:170px}
@keyframes mascot-float{50%{transform:translateY(-5px) rotate(2deg)}}@keyframes coach-arrive{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes finish-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes finish-mascot-in{from{opacity:0;transform:translateY(45px) scale(.72) rotate(-8deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes finish-halo{from{opacity:0;transform:translateX(-50%) scale(.65)}to{opacity:1;transform:translateX(-50%) scale(1)}}
@media(max-width:760px){.brand-mascot{width:33px;height:50px}.mascot-coach{margin:-7px 0 17px}.lesson-finish{min-height:calc(100dvh - 82px);padding:28px 18px 52px}.finish-mascot{width:205px;height:308px;margin:-27px auto -29px}.finish-stats{gap:7px}.finish-stats>div{padding:14px 5px}.finish-stats span{font-size:10px}.finish-actions .btn{min-width:135px}}
@media(prefers-reduced-motion:reduce){.path-compass .mascot-face,.mascot-coach .mascot-face{animation:none}.brand-mascot{transition:none}}
@media(max-width:760px){.path-hero .path-compass{right:10px;top:9px;width:104px;height:104px;opacity:1;margin:0;background:#22594e88;box-shadow:0 0 0 8px #ffffff0c}.path-hero .path-compass:before,.path-hero .path-compass:after,.path-hero .path-compass small{display:none}.path-hero .path-compass .mascot-face{width:72px;height:108px}}
.path-compass .mascot-face{background-image:url('assets/mascot-concepts/moose-b-expressions.webp');background-size:300% 200%;background-position:0 0}
.module-lessons .step-family>summary{max-width:none;width:100%;border:0;border-radius:0;background:transparent}.module-lessons .step-family>summary:before{content:none}.module-lessons .step-family>summary:after{content:'⌄';font-size:18px;line-height:1}

/* A quiet coach during practice, with motion saved for the rare finish screen. */
.mascot-coach .mascot-face{animation:none}
.finish-progress{display:flex;justify-content:space-between;gap:15px;margin-top:28px;color:#3a6652;font-size:13px;font-weight:800}
.finish-reviewed{display:flex;align-items:center;justify-content:center;gap:13px;width:min(100%,310px);margin:auto;padding:13px 20px;border:1px solid #d4e8d6;border-radius:18px;background:#fffdfaec;box-shadow:0 7px 0 #d5e6d4;color:#3a6652;font-size:14px;font-weight:800}
.finish-reviewed strong{color:#173d39;font-size:42px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.055em}
.finish-progress strong{font-variant-numeric:tabular-nums;color:#173d39}
.finish-progress-track{height:12px;margin-top:9px;overflow:hidden;border-radius:99px;background:#dcebd7;box-shadow:inset 0 1px 3px #254a2920}
.finish-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#61ad77,#b2db77);transform-origin:left center}
@media (prefers-reduced-motion:no-preference){.finish-progress-fill{animation:finish-progress-grow .65s cubic-bezier(.23,1,.32,1) .3s both}@keyframes finish-progress-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}.finish-actions .btn:not(:disabled):active{transform:scale(.96);transition:transform 150ms ease-out}}
@media (hover:none){.btn:hover,.path-card:hover,.question-panel .option:hover:not(:disabled),.chest-row .btn:not(:disabled):hover,.cosmetic-choices button:hover,.brand:hover .brand-mascot,.path-compass .mascot-face:hover{transform:none}.question-panel .option:hover:not(:disabled){box-shadow:none;border-color:#dfe7e2}}
.module-lessons .step-family:not([open])>summary:after{transform:none}
@media(max-width:420px){.step-family-pills{display:flex;flex-direction:column}.step-family-pills .step-pill{width:100%;min-height:52px}.step-family-pills .step-pill span{overflow-wrap:normal}}

.readiness-card{padding:24px 28px;border:1px solid #d4e6d9;border-radius:22px;background:#fff;box-shadow:0 8px 0 #dbe9dc,0 18px 30px #163c3120}
.readiness-path{max-width:570px;margin-top:29px;background:#f5fff9f2;color:#173d37;box-shadow:0 10px 28px #061d2036}
#continue-lesson{margin-top:24px}
.readiness-profile{margin:0 0 25px}
.readiness-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.readiness-head .eyebrow{color:#367a59;font-size:10px;letter-spacing:.05em}
.readiness-head h2{margin:7px 0 0;font-size:clamp(20px,2.8vw,29px);line-height:1.1;letter-spacing:-.05em;color:#173d37}
.readiness-head>strong{white-space:nowrap;font-size:clamp(37px,5vw,55px);line-height:1;letter-spacing:-.055em;font-variant-numeric:tabular-nums;color:#1b875d}
.readiness-head>strong small{font-size:.48em}
.readiness-track{position:relative;height:17px;margin-top:22px;overflow:visible;border-radius:99px;background:#d7e7dc;box-shadow:inset 0 2px 4px #153b3124}
.readiness-fill{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,#2a9b7e,#7acb8a 75%,#b4e69e);box-shadow:0 0 14px #65bd8e77;transform-origin:left center;transform:scaleX(var(--readiness));animation:readiness-grow 1.05s cubic-bezier(.2,.8,.2,1) both}
.readiness-target{position:absolute;z-index:1;left:80%;top:-5px;height:27px;width:3px;border-radius:3px;background:#194e43;box-shadow:0 0 0 3px #fff}
.readiness-card.is-ready .readiness-target::after{content:'';position:absolute;inset:-8px -9px;border:2px solid #1b875d;border-radius:50%;animation:readiness-milestone .65s ease-out 1s both}
.readiness-axis{position:relative;display:flex;justify-content:space-between;min-height:25px;margin-top:9px;color:#526f60;font-size:11px;font-weight:800}
.readiness-axis span:nth-child(2){position:absolute;left:80%;max-width:130px;text-align:center;transform:translateX(-65%);color:#236c4c}
.readiness-card .readiness-verdict{margin:13px 0 4px;font-size:15px;font-weight:850;line-height:1.45;color:#173d37}
.readiness-card>small{display:block;color:#536e62;font-size:11px;line-height:1.5}
@keyframes readiness-grow{from{transform:scaleX(0)}to{transform:scaleX(var(--readiness))}}
@keyframes readiness-milestone{from{opacity:.8;transform:scale(.3)}to{opacity:0;transform:scale(2)}}
@media(max-width:760px){.readiness-card{padding:20px}.readiness-path{margin-top:22px}.readiness-head h2{font-size:21px}.readiness-head>strong{font-size:40px}}
@media(max-width:420px){.readiness-head{align-items:flex-start}.readiness-head h2{font-size:19px}.readiness-head>strong{font-size:35px}.readiness-axis{font-size:10px}.readiness-axis span:nth-child(2){max-width:95px;transform:translateX(-72%)}}
@media(prefers-reduced-motion:reduce){.readiness-fill,.readiness-card.is-ready .readiness-target::after{animation:none}.readiness-card.is-ready .readiness-target::after{display:none}}
.plus-panel{max-width:720px;margin:30px 0 70px;padding:32px;border-radius:25px;background:linear-gradient(145deg,#edfaed,#fff);box-shadow:0 12px 0 #d3e8d8}
.plus-panel .mascot-face{float:right;width:105px;height:158px;margin:-15px -8px 0 20px}
.plus-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;max-width:540px;margin:22px 0}
.plus-plans[hidden]{display:none}
.plus-plans .btn{width:100%;font-size:16px;font-variant-numeric:tabular-nums}
.plus-plans small{grid-column:1/-1;color:#526c61;line-height:1.5}
.plus-panel #plus-status{min-height:48px}
@media (prefers-reduced-motion:no-preference){.plus-panel{animation:plus-enter 300ms cubic-bezier(.23,1,.32,1) both}@keyframes plus-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
@media (prefers-reduced-motion:reduce){.plus-panel{animation:finish-fade 200ms ease-out both}}
.plus-panel h2{max-width:510px;margin:8px 0 16px;font-size:clamp(28px,4vw,45px);line-height:1.07;letter-spacing:-.055em}
.plus-panel p{max-width:590px;color:#385c4d;line-height:1.6}
.plus-panel .button-row{margin-top:25px}
@media(max-width:420px){.plus-panel{padding:22px}.plus-panel .mascot-face{width:70px;height:105px}}
@media(max-width:420px){.plus-plans{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){.btn:not(:disabled):active{transform:scale(.96);transition:transform 150ms ease-out}}
@media(hover:none){.module-row:hover{transform:none;box-shadow:0 6px 0 #d9e3dc,0 12px 24px #22463a0b}.module-row.current:hover{box-shadow:0 7px 0 #9bd4b2,0 18px 36px #1e80602a}.sequence-cars button:hover:not(:disabled),.source-link:hover{transform:none;text-decoration:none}}
.diagram-swipe .swipe-image{object-fit:contain;background:#dcebdc}
@media(min-width:761px){.swipe-card:has(>.swipe-image){display:grid;grid-template-columns:42% 1fr;min-height:340px}.swipe-card:has(>.swipe-image) .swipe-image{height:100%;min-height:340px}.swipe-card:has(>.swipe-image) .swipe-body{display:flex;flex-direction:column;justify-content:center}}

/* ponytail: lesson coaching stays still; celebration is reserved for completed lessons. */
.mascot-coach,.mascot-coach .mascot-face,.finish-glow,.finish-inner,.finish-mascot,.finish-stats>div,.streak-flame,.readiness-fill{animation:none}
.question-photo[src$='.webp'],.question-photo[src$='.jpg'],.swipe-image[src$='.webp'],.swipe-image[src$='.jpg'],.text-step-image[src$='.webp'],.text-step-image[src$='.jpg']{outline:1px solid oklch(0 0 0 / .1);outline-offset:-1px}
.path-workspace:has(>.question-panel):not(:has(>.mock-grid))>.back-link{display:none}
.question-panel .question-stage:has(>.question-visual:empty){grid-template-columns:minmax(0,1fr)}
.question-panel .question-visual:empty{display:none}
.question-panel .option{height:max-content}
.question-image-open{position:relative;display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:zoom-in}
.question-image-open .question-photo{border-radius:inherit}
.question-image-open>span{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#18373be8;color:#fff;font-size:22px}
.question-image-open:focus-visible{outline:3px solid #ef7f5e;outline-offset:-4px}
.question-image-dialog{width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:12px;border:0;border-radius:18px;background:#fff;box-shadow:0 25px 70px #071c2180}
.question-image-dialog::backdrop{background:#071c21bf}
.question-image-dialog form{display:flex;justify-content:flex-end;margin-bottom:10px}
.question-image-dialog form .btn{min-height:44px;padding:8px 14px}
.question-image-large{display:block;width:100%;max-height:calc(100dvh - 110px);object-fit:contain}
.question-panel>.progress-row{gap:8px}
.question-panel>.progress-row>span:first-child{flex:none;white-space:nowrap}
.question-panel>.progress-row>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}

@media(max-width:760px){
  .path-hero>div:first-child{min-width:0}
  .path-hero h1{font-size:clamp(34px,10.5vw,58px);overflow-wrap:anywhere}
}
@media(max-width:360px){
  .path-hero .path-compass{top:7px;right:7px;width:70px;height:70px}
  .path-hero .path-compass .mascot-face{width:50px;height:68px}
}

/* ponytail: the question owns the phone viewport; long answers scroll inside the card. */
body:has(.question-panel) .app-shell{height:100dvh;min-height:0;overflow:hidden}
body:has(.question-panel) .topbar{flex:none}
body:has(.question-panel) #app{min-height:0;overflow:hidden}
/* ponytail: the wrapped mobile navbar sets its own height; lesson screens fill the remaining space. */
body:has(:is(.sign-quiz-panel,.text-step,.swipe-stage)) .app-shell{height:100dvh;min-height:0;overflow:hidden}
body:has(:is(.sign-quiz-panel,.text-step,.swipe-stage)) .topbar{flex:none}
body:has(:is(.sign-quiz-panel,.text-step,.swipe-stage)) #app{min-height:0;overflow:hidden}
@media(max-width:760px){
  body:has(.question-panel) .footer{display:none}
  .path-workspace:has(>.question-panel){height:100%;min-height:0;padding:8px 0 10px;display:flex;flex-direction:column;overflow:hidden}
  .path-workspace:has(>.question-panel)>.eyebrow,.path-workspace:has(>.question-panel)>h1,.path-workspace:has(>.question-panel)>.mode-caption,.path-workspace:has(>.question-panel)>.mascot-coach{display:none}
  .path-workspace:has(>.question-panel)>.back-link{margin:0 0 6px;min-height:28px}
  .path-workspace:has(>.question-panel)>.mock-top{margin:0 0 6px}
  .path-workspace:has(>.question-panel)>.mock-grid{display:flex;flex:none;gap:5px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;margin:0 0 8px;padding:0 0 3px;scrollbar-width:thin}
  .path-workspace:has(>.question-panel)>.mock-grid button{flex:none;width:40px;min-height:40px}
  .path-workspace>.question-panel{display:flex;flex:1;min-height:0;flex-direction:column;padding:0 0 10px;overflow:hidden;animation:none}
  .question-panel>.progress-row{flex:none;padding:8px 14px 0;font-size:10px}
  .question-panel>.progress-track{flex:none;margin:6px 14px 0;height:5px}
  .question-panel .question-stage{flex:none;display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;max-height:35dvh;padding:10px 14px;align-items:center;overflow-y:auto;overscroll-behavior:contain}
  .question-panel .question-visual,.question-panel .question-photo{height:96px;min-height:0;border-radius:12px}
  .question-panel .question-sign-image{max-height:90px;width:auto;max-width:90px}
  .question-panel .question-title{font-size:clamp(18px,5vw,23px);line-height:1.13;margin:0;overflow-wrap:anywhere}
  .question-panel .question-instruction{display:none}
  .question-panel .options{flex:1;min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;gap:7px;padding:0 14px}
  .question-panel .option{min-height:50px;padding:8px 11px;font-size:14px;line-height:1.25}
  .question-panel .path-feedback{flex:none;max-height:min(17dvh,130px);overflow-y:auto;overscroll-behavior:contain;margin:8px 14px 0;padding:9px 12px}
  .question-panel .path-feedback p{margin:4px 0;font-size:12px;line-height:1.3}
  .question-panel .term-row{margin-top:5px}
  .question-panel .fact-tip summary{min-height:30px;padding:4px 9px;font-size:10px}
  .question-panel .quiz-footer{flex:none;margin:9px 14px 0;gap:7px}
  .question-panel .quiz-footer .btn{min-width:0;flex:1;min-height:44px;padding:7px;font-size:12px;gap:4px}
  .diagram-question .question-stage{grid-template-columns:1fr;gap:6px;padding:8px 14px}
  .diagram-question .diagram-visual{height:clamp(110px,23dvh,180px);min-height:0}
  .diagram-question .question-photo{height:100%}
  .diagram-question .question-copy{padding:0}
  .question-panel .sequence-picker{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 14px}
  body:has(.question-panel) .streak-toast{bottom:72px;right:16px;width:min(275px,calc(100vw - 32px));gap:8px;padding:9px 11px;border-radius:13px}
  body:has(.question-panel) .streak-flame{font-size:23px}
  body:has(.question-panel) .streak-toast strong{font-size:13px}
  body:has(.question-panel) .streak-toast p{font-size:11px;margin:2px 0 0}
  body:has(.question-panel) .streak-toast .streak-buttons{width:auto;margin-left:auto}
  body:has(.question-panel) .streak-close{width:30px;height:30px;font-size:19px}
}
@media(max-width:760px){
  .path-workspace:has(>.mock-grid){display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);column-gap:8px}
  .path-workspace:has(>.mock-grid)>.back-link{grid-column:1;grid-row:1;align-self:center;margin:0;font-size:11px;white-space:nowrap}
  .path-workspace:has(>.mock-grid)>.mock-top{grid-column:2;grid-row:1;min-width:0;gap:4px;margin:0;font-size:11px}
  .path-workspace:has(>.mock-grid)>.mock-top strong{font-size:16px}
  .path-workspace:has(>.mock-grid)>.mock-grid{grid-column:1/-1;grid-row:2}
  .path-workspace:has(>.mock-grid)>.question-panel{grid-column:1/-1;grid-row:3;min-height:0}
}
@media(max-width:360px){
  .question-panel .question-stage{grid-template-columns:72px minmax(0,1fr);gap:9px}
  .question-panel .question-visual,.question-panel .question-photo{height:72px}
  .question-panel .question-sign-image{max-height:68px;max-width:68px}
  .question-panel .question-title{font-size:16px}
  .question-panel .option{min-height:44px;gap:8px;padding:6px 9px}
  .question-panel .option span:nth-child(2){font-size:14px;line-height:1.25;letter-spacing:0}
  .question-panel .path-feedback{max-height:85px}
  .question-panel .path-feedback .term-row{display:none}
  .diagram-question .question-stage{grid-template-columns:1fr}
}
/* ponytail: keep the answer and navigation visible; only long card content scrolls. */
@media(min-width:761px){
  body:has(.question-panel) .footer{display:none}
  .path-workspace:has(>.question-panel){height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:12px 0}
  .path-workspace:has(>.question-panel)>.eyebrow,.path-workspace:has(>.question-panel)>h1,.path-workspace:has(>.question-panel)>.mode-caption,.path-workspace:has(>.question-panel)>.mascot-coach{display:none}
  .path-workspace:has(>.question-panel)>.back-link{flex:none;margin:0 0 8px}
  .path-workspace:has(>.question-panel)>.mock-top{flex:none;margin:0 0 8px}
  .path-workspace:has(>.question-panel)>.mock-grid{display:flex;flex:none;gap:6px;overflow-x:auto;overflow-y:hidden;margin:0 0 8px;padding:0 0 3px}
  .path-workspace:has(>.question-panel)>.mock-grid button{flex:none}
  .path-workspace>.question-panel{display:flex;flex:1;min-height:0;flex-direction:column;overflow:hidden;padding:0 0 16px;animation:none}
  .question-panel>.progress-row{flex:none;padding:12px 22px 0}
  .question-panel>.progress-track{flex:none;margin:8px 22px 0;height:6px}
  .question-panel .question-stage{flex:none;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:center;max-height:min(33dvh,240px);overflow-y:auto;overscroll-behavior:contain;padding:14px 22px}
  .question-panel .question-visual,.question-panel .question-photo{height:150px;min-height:0}
  .question-panel .question-sign-image{max-height:140px;max-width:140px}
  .question-panel .question-title{font-size:clamp(21px,2.7vw,29px);line-height:1.16;margin:0;overflow-wrap:anywhere}
  .question-panel .question-instruction{margin:8px 0 0}
  .question-panel .options{flex:1;min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;gap:8px;padding:0 22px}
  .question-panel .option{min-height:54px;padding:10px 14px;font-size:15px;line-height:1.3}
  .question-panel .path-feedback{flex:none;max-height:min(20dvh,145px);overflow-y:auto;overscroll-behavior:contain;margin:10px 22px 0;padding:10px 14px}
  .question-panel .path-feedback p{margin:5px 0;font-size:13px;line-height:1.35}
  .question-panel .quiz-footer{flex:none;margin:12px 22px 0}
  .question-panel .quiz-footer .btn{min-height:44px}
  .question-panel .sequence-picker{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 22px}
  .diagram-question .question-stage{grid-template-columns:220px minmax(0,1fr)}
  .diagram-question .diagram-visual{height:150px;min-height:0}
  .diagram-question .question-photo{height:100%}
}
@media(min-width:761px) and (max-height:650px){
  .question-panel .question-stage{grid-template-columns:130px minmax(0,1fr);padding:8px 22px}
  .question-panel .question-visual,.question-panel .question-photo,.diagram-question .diagram-visual{height:105px}
  .question-panel .question-sign-image{max-height:100px;max-width:100px}
  .question-panel .question-instruction{display:none}
  .question-panel .path-feedback{max-height:15dvh}
  .diagram-question .question-stage{grid-template-columns:155px minmax(0,1fr)}
}
/* ponytail: sign practice uses the same viewport frame as other questions. */
body:has(.sign-quiz-panel) .footer{display:none}
.path-workspace:has(>.sign-quiz-panel){height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:12px 0}
.path-workspace:has(>.sign-quiz-panel)>.eyebrow,.path-workspace:has(>.sign-quiz-panel)>h1,.path-workspace:has(>.sign-quiz-panel)>.mode-caption{display:none}
.path-workspace:has(>.sign-quiz-panel)>.back-link{flex:none;margin:0 0 8px}
.path-workspace>.sign-quiz-panel{display:flex;flex:1;min-height:0;flex-direction:column;width:100%;max-width:640px;margin:0 auto;padding:16px 20px;overflow:hidden}
.sign-quiz-panel .sign-quiz-image{flex:none;width:min(135px,34vw);margin:0 auto 8px}
.sign-quiz-panel h2{flex:none;margin:0;font-size:clamp(20px,3vw,27px);line-height:1.15}
.sign-quiz-panel .options{flex:1;min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;margin:10px 0;gap:7px}
.sign-quiz-panel .option{min-height:48px;padding:9px 12px;font-size:14px;line-height:1.25}
.sign-quiz-panel .sign-quiz-feedback{flex:none;margin:5px 0;line-height:1.3}
.sign-quiz-panel>a,.sign-quiz-panel>#next-sign{flex:none;align-self:center}
.sign-quiz-panel>#next-sign{min-height:44px;margin-top:8px}
@media(max-width:760px){
  .path-workspace:has(>.sign-quiz-panel){height:100%;padding:8px 0 10px}
  .sign-quiz-panel .sign-quiz-image{width:min(105px,27vw)}
}
/* ponytail: written answers scroll inside the lesson while submit stays in view. */
body:has(.text-step) .footer{display:none}
.path-workspace:has(>.text-step){height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:12px 0}
.path-workspace:has(>.text-step)>.eyebrow,.path-workspace:has(>.text-step)>h1,.path-workspace:has(>.text-step)>.mode-caption,.path-workspace:has(>.text-step)>.mascot-coach{display:none}
.path-workspace:has(>.text-step)>.back-link{flex:none;margin:0 0 8px}
.path-workspace>.text-step{flex:1;min-height:0;grid-template-columns:minmax(0,32%) minmax(0,1fr);margin:0}
.text-step .text-step-image{height:100%;min-height:0}
.text-step .text-step-body{display:flex;min-height:0;flex-direction:column;overflow:hidden;padding:18px}
.text-step-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 4px}
.text-step h2{margin:8px 0 12px;font-size:clamp(20px,2.5vw,28px);line-height:1.18}
.voice-disclosure{margin:9px 0}
.voice-disclosure>summary{display:flex;align-items:center;min-height:42px;width:max-content;max-width:100%;padding:8px 12px;border:1px solid #c9ddd0;border-radius:11px;background:#f1f8f2;color:#205b48;font-size:13px;font-weight:850;cursor:pointer}
.voice-disclosure>summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}
.text-step label{margin:12px 0 5px}
.text-step textarea{min-height:115px}
.text-step-body>.button-row{flex:none;margin:10px 4px 0;padding-top:8px;border-top:1px solid #e1ebe3;background:#fff}
.text-step-body>.button-row .btn{min-height:44px}
@media(max-width:760px){
  .path-workspace:has(>.text-step){height:100%;padding:8px 0 10px}
  .path-workspace>.text-step{grid-template-columns:1fr}
  .text-step .text-step-image{display:none}
  .text-step .text-step-body{padding:12px}
  .text-step h2{font-size:clamp(18px,5vw,23px)}
  .text-step .voice-actions{display:flex;gap:6px}
  .text-step .voice-actions .btn{flex:1;min-height:40px;padding:6px;font-size:12px}
  .text-step .voice-skip{min-height:38px;padding:6px}
  .text-step .ai-note{margin:6px 0;font-size:11px}
  .text-step textarea{min-height:90px}
}
/* ponytail: theory cards stay in the viewport; long explanations scroll in the card. */
body:has(.swipe-stage) .footer{display:none}
.path-workspace:has(>.swipe-stage){height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:12px 0}
.path-workspace:has(>.swipe-stage)>.eyebrow,.path-workspace:has(>.swipe-stage)>h1,.path-workspace:has(>.swipe-stage)>.mode-caption,.path-workspace:has(>.swipe-stage)>.mascot-coach{display:none}
.path-workspace:has(>.swipe-stage)>.back-link{flex:none;margin:0 0 8px}
.path-workspace>.swipe-stage{display:flex;flex:1;min-height:0;flex-direction:column;width:100%;max-width:780px;margin:0 auto}
.swipe-stage .swipe-card{display:grid;flex:1;min-height:0;grid-template-columns:minmax(0,42%) minmax(0,1fr);overflow:hidden;animation:none}
.swipe-stage .swipe-image{width:100%;height:100%;min-height:0;object-fit:cover}
.swipe-stage .swipe-sign-image{align-self:center;justify-self:center;width:min(220px,80%);max-height:60%;margin:0}
.swipe-stage .swipe-body{display:block;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px}
.swipe-stage .swipe-body h2{margin:12px 0;font-size:clamp(20px,2.7vw,30px);line-height:1.16}
.swipe-stage .swipe-answer{padding:12px 14px}
.swipe-stage .swipe-actions{flex:none;margin:22px 0 0}
.swipe-stage .swipe-actions .btn{min-height:44px}
.swipe-stage .swipe-hint{flex:none;min-height:18px;margin:7px 0 0;font-size:11px}
@media(max-width:760px){
  .path-workspace:has(>.swipe-stage){height:100%;padding:8px 0 10px}
  .swipe-stage .swipe-card{grid-template-columns:1fr;grid-template-rows:minmax(90px,32%) minmax(0,1fr)}
  .swipe-stage .swipe-sign-image{width:min(135px,35vw);max-height:90%}
  .swipe-stage .swipe-body{padding:14px}
  .swipe-stage .swipe-body h2{font-size:clamp(18px,5vw,23px)}
  .swipe-stage .swipe-actions{margin-top:17px;gap:8px}
  .swipe-stage .swipe-actions .btn{min-width:0;flex:1}
}
/* ponytail: landscape phones trade image size for usable answer space. */
@media(max-height:480px){
  body:has(.question-panel,.sign-quiz-panel,.text-step,.swipe-stage) .topbar{height:auto;min-height:56px}
  .path-workspace:has(>.question-panel),.path-workspace:has(>.sign-quiz-panel),.path-workspace:has(>.text-step),.path-workspace:has(>.swipe-stage){height:100%;padding:5px 0}
  .path-workspace:has(>.question-panel)>.back-link,.path-workspace:has(>.sign-quiz-panel)>.back-link,.path-workspace:has(>.text-step)>.back-link,.path-workspace:has(>.swipe-stage)>.back-link{min-height:22px;margin-bottom:3px}
  .path-workspace>.question-panel{padding-bottom:6px}
  .question-panel>.progress-row{padding:5px 12px 0}
  .question-panel .progress-row b{font-size:16px}
  .question-panel>.progress-track{height:4px;margin:3px 12px 0}
  .question-panel .question-stage{grid-template-columns:72px minmax(0,1fr);gap:9px;padding:5px 12px}
  .question-panel .question-visual,.question-panel .question-photo{height:56px}
  .question-panel .question-sign-image{max-height:52px;max-width:52px}
  .question-panel .question-title{font-size:17px;line-height:1.12}
  .question-panel .question-instruction{display:none}
  .question-panel .options{gap:5px;padding:0 12px}
  .question-panel .option{min-height:44px;padding:6px 9px;font-size:13px}
  .question-panel .path-feedback{max-height:12dvh;margin:5px 12px 0;padding:6px 9px}
  .question-panel .path-feedback p{font-size:11px}
  .question-panel .quiz-footer{margin:5px 12px 0}
  .question-panel .quiz-footer .btn{min-height:40px}
  .diagram-question .question-stage{grid-template-columns:100px minmax(0,1fr)}
  .diagram-question .diagram-visual{height:75px}
  .diagram-question .question-photo{height:100%}
  .path-workspace:has(>.question-panel)>.mock-top{margin-bottom:3px;font-size:11px}
  .path-workspace:has(>.question-panel)>.mock-top strong{font-size:15px}
  .path-workspace:has(>.question-panel)>.mock-grid{margin-bottom:3px}
  .path-workspace:has(>.question-panel)>.mock-grid button{width:32px;min-height:32px;font-size:10px}
  .sign-quiz-panel{padding:8px 14px}
  .sign-quiz-panel .sign-quiz-image{width:48px;margin-bottom:2px}
  .sign-quiz-panel h2{font-size:17px}
  .sign-quiz-panel .options{margin:4px 0;gap:4px}
  .sign-quiz-panel .option{min-height:44px;padding:5px 8px;font-size:12px}
  .sign-quiz-panel .sign-quiz-feedback{margin:2px 0;font-size:12px}
  .sign-quiz-panel>#next-sign{min-height:40px;margin-top:4px}
  .swipe-stage .swipe-actions{margin-top:8px}
  .swipe-stage .swipe-hint{display:none}
}
@media (hover:none){.fact-tip:hover:not([open]):not(:focus-within) .fact-content{display:none}}
@media (prefers-reduced-motion:no-preference){
  .finish-mascot{animation:finish-face-enter 300ms cubic-bezier(.23,1,.32,1) both}
  .finish-eyebrow,.lesson-finish h1,.finish-line,.finish-stats>div,.finish-reviewed{animation:finish-detail-enter 300ms cubic-bezier(.23,1,.32,1) both}
  .lesson-finish h1{animation-delay:100ms}.finish-line{animation-delay:200ms}
  .finish-stats>div:first-child,.finish-reviewed{animation-delay:200ms}
  .finish-stats>div:nth-child(2){animation-delay:300ms}
  .finish-stats>div:nth-child(3){animation-delay:400ms}
  .streak-flame{animation:finish-face-enter 300ms cubic-bezier(.23,1,.32,1) both}
  .readiness-fill{animation:readiness-grow 650ms cubic-bezier(.23,1,.32,1) both}
  @keyframes finish-face-enter{from{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes finish-detail-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
}
@media (prefers-reduced-motion:reduce){
  .finish-mascot,.finish-eyebrow,.lesson-finish h1,.finish-line,.finish-stats>div,.finish-reviewed,.streak-flame{animation:finish-fade 200ms ease-out both!important}
  @keyframes finish-fade{from{opacity:0}to{opacity:1}}
}
.hero-proof{display:flex;align-items:center;gap:17px;width:fit-content;max-width:100%;margin-top:28px;padding-top:18px;border-top:1px solid #cbd9cf;color:#3e5d52}.hero-proof strong{flex:none;color:#173c37;font-size:32px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.05em}.hero-proof span{max-width:240px;font-size:14px;font-weight:700;line-height:1.4}
.journey-story{position:relative;overflow:hidden;margin:64px 0 76px;padding:clamp(25px,4vw,48px);border:1px solid #cbded2;border-radius:30px;background:linear-gradient(135deg,#edf7ee,#f7f6ed 78%)}
.story-heading{display:flex;align-items:end;justify-content:space-between;gap:32px}.story-heading h2{max-width:560px;margin:12px 0 0;color:#173c37;font-size:clamp(32px,4.5vw,54px);line-height:1.06;letter-spacing:-.055em}.story-heading p{max-width:325px;margin:0 0 4px;color:#406357;font-size:15px;line-height:1.65}.story-flow{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}.story-flow::before{content:"";position:absolute;top:45px;left:7%;right:7%;height:2px;background:#76aa89;transform-origin:left;transition:transform 900ms cubic-bezier(.23,1,.32,1)}.story-card{position:relative;min-height:252px;padding:25px;border:1px solid #d0e1d4;border-radius:22px;background:#fff;box-shadow:0 10px 24px #183f3010}.story-card:nth-child(2){background:#e0f1e5}.story-card:nth-child(3){border-color:#183f3a;background:#173d3b;color:#f3fff3}.story-number{display:grid;place-items:center;width:41px;height:41px;border:1px solid #83b99a;border-radius:50%;background:#fff;color:#235743;font-size:12px;font-weight:900;letter-spacing:.08em}.story-card:nth-child(3) .story-number{border-color:#7ac69d;background:#2c604c;color:#fff}.story-card h3{margin:30px 0 9px;color:#173c37;font-size:clamp(20px,2.2vw,26px);line-height:1.15;letter-spacing:-.035em}.story-card:nth-child(3) h3{color:#f3fff3}.story-card p{max-width:300px;margin:0;color:#4c685a;font-size:14px;line-height:1.6}.story-card:nth-child(3) p{color:#d1ebd9}.story-arrow{position:absolute;right:23px;bottom:20px;color:#3a8b60;font-size:23px}.story-card:nth-child(3) .story-arrow{color:#a8e4bb}.home.motion-ready .journey-story .story-flow::before{transform:scaleX(0)}.home.motion-ready .journey-story[data-visible] .story-flow::before{transform:scaleX(1)}.home.motion-ready .story-card[data-reveal]{transition-delay:var(--step-delay,0ms)}
.course-preview{position:relative;margin:80px 0;padding:clamp(25px,4vw,48px);border:1px solid #d9dfd1;border-radius:30px;background:#f9faf4}.course-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.course-heading h2{max-width:600px;margin:12px 0 0;color:#173c37;font-size:clamp(32px,4.5vw,54px);line-height:1.06;letter-spacing:-.055em}.course-heading p{max-width:290px;margin:0 0 4px;color:#4d6659;font-size:15px;line-height:1.6}.course-road{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:32px}.course-stop{min-width:0;border:1px solid #d5e3d6;border-radius:18px;background:#fff;box-shadow:0 8px 22px #143c3010;transition:border-color 180ms ease,background 180ms ease}.course-stop[open]{border-color:#85b69a;background:#ecf7ed}.course-stop summary{display:flex;align-items:center;gap:17px;min-height:92px;padding:18px 20px;list-style:none;cursor:pointer}.course-stop summary::-webkit-details-marker{display:none}.course-stop summary:focus-visible{outline:3px solid #d66946;outline-offset:3px;border-radius:14px}.course-number{display:grid;place-items:center;flex:none;width:45px;height:45px;border-radius:13px;background:#e5f1e8;color:#1c6043;font-size:13px;font-weight:900;letter-spacing:.06em}.course-copy{display:grid;gap:4px;min-width:0}.course-copy strong{color:#173c37;font-size:19px;line-height:1.15;letter-spacing:-.025em}.course-copy small{color:#577264;font-size:13px;line-height:1.35}.course-toggle{display:grid;place-items:center;flex:none;width:25px;height:25px;margin-left:auto;color:#217253;font-size:24px;font-weight:300;line-height:1;transition:transform 180ms ease}.course-stop[open] .course-toggle{transform:rotate(45deg)}.course-stop p{margin:0 24px 23px 82px;color:#36584b;font-size:14px;line-height:1.55}.course-finish{display:flex;align-items:center;gap:17px;grid-column:1/-1;min-height:86px;padding:18px 22px;border-radius:18px;background:#173d3b;color:#f3fff3}.course-finish span{display:grid;place-items:center;flex:none;width:45px;height:45px;border:1px solid #7dc294;border-radius:13px;color:#b7e9c2;font-size:13px;font-weight:900}.course-finish strong{font-size:20px;letter-spacing:-.025em}.course-finish p{max-width:380px;margin:0 0 0 auto;color:#d0e9d6;font-size:13px;line-height:1.45}.home.motion-ready .course-stop[data-reveal]{transition:opacity 600ms cubic-bezier(.23,1,.32,1) var(--stop-delay,0ms),transform 600ms cubic-bezier(.23,1,.32,1) var(--stop-delay,0ms),border-color 180ms ease,background 180ms ease}
.course-stop summary:hover .course-number{background:#d4ecdb}.course-stop[open] summary:hover .course-number{background:#cde8d5}
html[data-theme=dark] .home .hero .eyebrow,html[data-theme=dark] .home .section-head .eyebrow{color:#f7aa8c}html[data-theme=dark] .home-demo-card>span{color:#a9e9bf}
@media(max-width:760px){.course-preview{margin:54px 0}.course-heading{display:block}.course-heading p{max-width:520px;margin-top:14px}.course-road{grid-template-columns:1fr;margin-top:25px}.course-finish{display:grid;grid-template-columns:45px 1fr;gap:7px 15px}.course-finish p{grid-column:2;margin:0}}
@media(max-width:380px){.course-stop summary{gap:12px;padding:16px}.course-copy strong{font-size:17px}.course-stop p{margin-left:73px}}
@media(prefers-reduced-motion:reduce){.course-stop,.course-toggle{transition:none!important}}
.home-close{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;margin:78px 0 34px;padding:clamp(32px,5vw,62px);border-radius:30px;background:linear-gradient(115deg,#143b3e,#1d5d4b);color:#f5fff4}.home-close::before{content:"";position:absolute;inset:auto -6% -75% 25%;height:120%;border:1px solid #ffffff1d;border-radius:50%;box-shadow:0 0 0 60px #ffffff08,0 0 0 125px #ffffff06;pointer-events:none}.home-close>div:first-child{position:relative;z-index:1}.home-close .eyebrow{color:#abe4b9}.home-close h2{max-width:620px;margin:13px 0 16px;font-size:clamp(36px,5vw,61px);line-height:1.05;letter-spacing:-.055em}.home-close p{max-width:540px;margin:0 0 27px;color:#d0e8d6;font-size:16px;line-height:1.6}.home-close .btn-primary{background:#ee8a65;color:#193a30;box-shadow:0 8px 20px #0b252830}.home-close-art{position:relative;display:grid;place-items:center;flex:none;width:220px;aspect-ratio:1;border:1px dashed #a7dbb993;border-radius:50%;background:radial-gradient(circle,#aee5b91a 0 40%,transparent 41%);transform:rotate(-12deg)}.home-close-art::after{content:"";position:absolute;inset:16px;border:1px solid #b7e4c080;border-radius:50%}.home-close-art span,.home-close-art small{position:absolute;font-size:11px;font-weight:900;letter-spacing:.19em}.home-close-art span{top:38px}.home-close-art small{bottom:38px}.home-close-art strong{font-size:100px;font-weight:400;line-height:1}.home.motion-ready .home-close[data-visible] .home-close-art{animation:close-mark-arrive 850ms cubic-bezier(.2,.9,.2,1) both}@keyframes close-mark-arrive{from{transform:translateX(20px) rotate(-25deg);opacity:.4}to{transform:rotate(-12deg);opacity:1}}
@media(max-width:760px){.journey-story{margin:46px 0 54px}.story-heading{display:block}.story-heading p{max-width:530px;margin-top:14px}.story-flow{grid-template-columns:1fr;gap:13px;margin-top:25px}.story-flow::before{display:none}.story-card{min-height:190px}.story-card h3{margin-top:19px}.home-close{margin:54px 0 24px}.home-close-art{width:150px}.home-close-art span{top:24px}.home-close-art small{bottom:24px}.home-close-art strong{font-size:68px}}
@media(max-width:520px){.home-close{display:block}.home-close-art{position:absolute;right:-37px;bottom:-55px;opacity:.24;pointer-events:none}.home-close h2,.home-close p{position:relative;z-index:1}.home-close .btn{position:relative;z-index:1}}
@media(prefers-reduced-motion:reduce){.story-flow::before,.home-close-art{transition:none!important;animation:none!important}.home.motion-ready .journey-story .story-flow::before{transform:none}}
@media(max-width:480px){.hero-proof{gap:13px;margin-top:23px}.hero-proof strong{font-size:28px}.hero-proof span{font-size:13px}}
.account-workspace{max-width:1100px}.account-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:24px;align-items:stretch;margin-top:25px}.account-intro{position:relative;min-height:560px;overflow:hidden;padding:clamp(30px,5vw,58px);border-radius:28px;background:radial-gradient(circle at 100% 100%,#2b7466,#163e43 52%,#102b32);color:#f2fff5}.account-intro .eyebrow{color:#a9ebc4}.account-intro h1{max-width:520px;font-size:clamp(40px,5vw,67px);line-height:1.02;margin:22px 0}.account-intro p{max-width:450px;color:#d0e9da;line-height:1.65}.account-benefits{display:grid;gap:13px;margin-top:44px;font-size:14px;font-weight:750}.account-benefits span{padding-bottom:13px;border-bottom:1px solid #ffffff29}.account-intro .mascot-face{position:absolute;right:32px;bottom:18px;width:105px;height:158px;opacity:.95}.account-auth{margin:0;padding:33px;box-shadow:0 12px 36px #163f3020}.account-auth h2{font-size:30px;letter-spacing:-.045em;margin:29px 0 6px}.account-auth>p{color:#586f64;font-size:14px}.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:5px;background:#edf4ee;border-radius:13px}.account-tabs button{min-height:43px;border:0;border-radius:9px;background:transparent;color:#3a6150;font-size:13px;font-weight:800}.account-tabs button.is-active{background:#fff;color:#173d39;box-shadow:0 2px 9px #183d301a}.account-tabs button:focus-visible{outline:3px solid #ef7f5e;outline-offset:2px}.account-auth form{max-width:none}.account-auth form .btn{width:100%;justify-content:center;margin-top:20px}.account-auth #forgot-password{padding-left:0}.account-auth [role=status]:empty{display:none}
@media(max-width:780px){.account-layout{grid-template-columns:1fr}.account-intro{min-height:0;padding:32px}.account-intro h1{font-size:clamp(36px,8vw,52px);max-width:540px}.account-benefits{margin-top:25px;padding-right:95px}.account-intro .mascot-face{width:78px;height:117px}.account-auth{padding:25px}}
@media(max-width:420px){.account-layout{gap:14px}.account-intro{padding:25px}.account-benefits{padding-right:0}.account-intro .mascot-face{display:none}.account-auth{padding:21px}}
.profile-next{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:27px 30px;background:linear-gradient(115deg,#e3f6e9,#fffdf8);border-color:#a9d8b8}.profile-next h2{font-size:clamp(24px,3vw,36px);letter-spacing:-.045em;margin:8px 0}.profile-next p{max-width:480px;margin:0;color:#466458;line-height:1.5}.profile-next-actions{display:grid;gap:10px;min-width:220px}.profile-next-actions .btn{justify-content:center}.profile-account{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;padding:19px 28px}.profile-account p{margin:6px 0 0;color:#36594b}.profile-account .btn{flex:none}
@media(max-width:700px){.profile-next,.profile-account{display:grid;padding:22px}.profile-next-actions{min-width:0}.profile-account .btn{justify-self:start}}
.home-demo{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:stretch;margin:58px 0}.home-demo-copy{overflow:hidden;padding:clamp(25px,4vw,45px);border-radius:26px;background:#173c41;color:#effcf0}.home-demo-copy .eyebrow{color:#a8e9bf}.home-demo-copy h2{max-width:430px;font-size:clamp(31px,4vw,50px);line-height:1.07;letter-spacing:-.05em;margin:15px 0}.home-demo-copy p{max-width:410px;color:#c9e4d4;line-height:1.55}.home-demo-copy img{display:block;width:100%;height:210px;object-fit:cover;margin-top:30px;border-radius:15px}.home-demo-card{padding:clamp(23px,4vw,38px);border:1px solid #cfe2d2;border-radius:26px;background:#fff;box-shadow:0 10px 0 #d9e9dc}.home-demo-card>span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#30805a}.home-demo-card h3{font-size:clamp(22px,3vw,32px);line-height:1.25;letter-spacing:-.04em;margin:16px 0 24px}.home-demo-options{display:grid;gap:10px}.home-demo-options button{display:flex;align-items:center;gap:13px;min-height:58px;padding:11px 15px;border:2px solid #dce9de;border-radius:13px;background:#f8fbf8;color:#183c37;text-align:left;font-weight:700}.home-demo-options button b{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:8px;background:#e4f0e7}.home-demo-options button:hover,.home-demo-options button:focus-visible{border-color:#4da87e}.home-demo-options button.is-correct{border-color:#219c69;background:#e6f8eb}.home-demo-options button.is-wrong{border-color:#d27964;background:#fff0ea}.home-demo-feedback{min-height:24px;margin:20px 0 0;line-height:1.55;color:#2a5847}.home-demo-feedback:empty{margin:0;min-height:0}.home-demo-feedback a{color:#126346;font-weight:800}.home.motion-ready [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity 600ms cubic-bezier(.23,1,.32,1),transform 600ms cubic-bezier(.23,1,.32,1)}.home.motion-ready [data-reveal][data-visible]{opacity:1;transform:none}
@media(max-width:760px){.home-demo{grid-template-columns:1fr;margin:38px 0}.home-demo-copy img{height:180px;margin-top:21px}}
@media(prefers-reduced-motion:reduce){.home.motion-ready [data-reveal]{opacity:1;transform:none;transition:opacity 200ms cubic-bezier(.23,1,.32,1)}}
.account-dashboard{max-width:850px}.account-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}.account-dashboard-head h1{margin:10px 0}.account-dashboard-head p{margin:0;color:#547164;overflow-wrap:anywhere}.account-sync-badge{flex:none;padding:10px 15px;border:1px solid #e5c7a1;border-radius:99px;background:#fff5e8;color:#81572a;font-size:12px;font-weight:900}.account-sync-badge.is-connected{border-color:#a8d6b8;background:#e6f7eb;color:#1f714d}.account-dashboard>.account-panel{margin-top:23px}.account-dashboard .account-delete{margin-top:20px;background:#fffaf8;border-color:#efdcd5}.account-dashboard .account-delete>summary{min-height:24px}
@media(max-width:600px){.account-dashboard-head{align-items:flex-start;flex-direction:column}.account-sync-badge{align-self:flex-start}}
/* ponytail: one shared header keeps navigation visible without a second mobile menu. */
.topbar{width:min(1180px,calc(100% - 32px));height:78px;margin:12px auto 0;padding:0 20px;border:1px solid #d7e1d9;border-radius:20px;background:#f8faf7dd;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 30px #17352b0c;gap:16px;transition:height .22s ease,box-shadow .22s ease,background-color .22s ease}
.topbar.is-compact{height:62px;box-shadow:0 12px 34px #17352b20;background:#f8faf7ef}.top-note,.top-location{display:none}
.main-nav{display:flex;align-items:center;gap:25px;margin-left:auto}.main-nav a{position:relative;padding:12px 0;color:#31534a;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap}.main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;border-radius:2px;background:#d26442;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.main-nav a:hover:after,.main-nav a[aria-current]:after{transform:scaleX(1)}
.nav-account{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid #b7d3c1;border-radius:12px;background:#eaf5ed;color:#184a39;text-decoration:none;font-size:12px;font-weight:850;white-space:nowrap}.nav-account-dot{width:7px;height:7px;border-radius:50%;background:#ae7150}.nav-account.is-signed-in .nav-account-dot{background:#27a66d}.nav-account:hover{background:#dceee2}.theme-toggle{display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid #d7e1d9;border-radius:12px;background:#fff;color:#31534a}.theme-toggle svg{width:19px;height:19px}.theme-toggle:hover{background:#e7f1e9}.theme-toggle:focus-visible,.nav-account:focus-visible,.main-nav a:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}
.brand-mascot{transition:transform .22s ease}.brand:hover .brand-mascot{transform:translateY(-3px) rotate(-5deg)}
@media(max-width:900px){.topbar{gap:10px;padding:0 13px}.main-nav{gap:13px}.main-nav a{font-size:12px}}
@media(max-width:760px){.topbar,.topbar.is-compact{width:calc(100% - 24px);height:auto;min-height:74px;flex-wrap:wrap;justify-content:space-between;gap:6px 9px;padding:10px 13px}.topbar .brand{margin-right:auto}.topbar .streak-nav{margin-left:0}.main-nav{order:10;width:100%;justify-content:space-around;margin:2px 0 0;padding-top:5px;border-top:1px solid #dce7df}.main-nav a{min-height:34px;padding:8px 4px}.nav-account{padding:7px 9px}.theme-toggle{width:36px;height:36px}.lang-switch{flex:none}}
@media(max-width:520px){.topbar .streak-nav{display:none}.topbar .brand{font-size:21px}.nav-account{font-size:11px}}
.question-showcase{position:relative;overflow:hidden;margin:40px 0 70px;padding:clamp(25px,4vw,48px);border-radius:30px;background:radial-gradient(circle at 95% 5%,#287b68 0,#173e43 44%,#10282f 100%);color:#f4fff7;box-shadow:0 24px 55px #14332c20}.question-showcase:before{content:"";position:absolute;right:-130px;top:-190px;width:430px;height:430px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 58px #ffffff08,0 0 0 120px #ffffff06;pointer-events:none}.showcase-heading{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.showcase-heading .eyebrow{color:#a8e9bf}.showcase-heading h2{max-width:660px;margin:15px 0 9px;font-size:clamp(32px,5vw,61px);line-height:1.02;letter-spacing:-.055em}.showcase-heading p{max-width:550px;margin:0;color:#c5e2d0;line-height:1.5}.showcase-counter{font-size:42px;font-weight:900;letter-spacing:-.055em;white-space:nowrap}.showcase-counter small{display:block;font-size:12px;letter-spacing:0;color:#bbddc8;text-align:right}.showcase-filters{position:relative;display:flex;gap:8px;overflow:auto;margin:28px -4px 18px;padding:4px;scrollbar-width:thin}.showcase-filters button{flex:none;min-height:40px;padding:9px 16px;border:1px solid #ffffff40;border-radius:99px;background:#ffffff0b;color:#e6f7ed;font-size:12px;font-weight:800;cursor:pointer}.showcase-filters button[aria-pressed=true]{background:#d4f2dd;border-color:#d4f2dd;color:#164138}.showcase-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.showcase-card{display:flex;flex-direction:column;align-items:flex-start;gap:15px;min-height:178px;padding:20px;border:1px solid #ffffff34;border-radius:17px;background:#ffffff13;color:#f4fff7;text-align:left;cursor:pointer;transition:transform .22s ease,background-color .22s ease,border-color .22s ease}.showcase-card[hidden]{display:none}.showcase-card:hover,.showcase-card[aria-pressed=true]{background:#ffffff25;border-color:#a7e8bc;transform:translateY(-4px)}.showcase-card span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#aee3c1}.showcase-card strong{font-size:16px;line-height:1.35}.showcase-card small{margin-top:auto;color:#c6ead2;font-size:11px;font-weight:800}.showcase-preview{position:relative;min-height:67px;margin-top:14px;padding:18px 21px;border:1px solid #ffffff24;border-radius:16px;background:#0b2a2eb0;color:#d5efdf}.showcase-preview strong{display:block;color:#fff}.showcase-preview p{margin:9px 0;line-height:1.55}.showcase-preview a{color:#a8efc0;font-weight:850}
@media(max-width:850px){.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.question-showcase{margin:25px 0 48px;border-radius:22px}.showcase-heading{align-items:flex-start;flex-direction:column;gap:8px}.showcase-counter{font-size:30px}.showcase-counter small{display:inline;margin-left:6px}.showcase-grid{grid-template-columns:1fr}.showcase-card{min-height:0}.showcase-filters{margin-top:20px}}
html[data-theme=dark]{color-scheme:dark;background:#0b171b;color:#e8f3ec}html[data-theme=dark] body{background:#0b171b;color:#e8f3ec}
html[data-theme=dark] .topbar,html[data-theme=dark] .topbar.is-compact{background:#152b2ce8;border-color:#365250;box-shadow:0 10px 32px #0005}html[data-theme=dark] .main-nav{border-color:#365250}html[data-theme=dark] .main-nav a,html[data-theme=dark] .topbar .brand,html[data-theme=dark] .theme-toggle{color:#e8f3ec}html[data-theme=dark] .theme-toggle,html[data-theme=dark] .nav-account{background:#203d3a;border-color:#41605a;color:#e8f3ec}html[data-theme=dark] .nav-account:hover,html[data-theme=dark] .theme-toggle:hover{background:#2c5149}
html[data-theme=dark] .footer,html[data-theme=dark] .stats{border-color:#35504a}html[data-theme=dark] .footer a,html[data-theme=dark] .guide-links a,html[data-theme=dark] .back-link,html[data-theme=dark] .source-link{color:#99d9b2}html[data-theme=dark] .hero p,html[data-theme=dark] .mode-caption,html[data-theme=dark] .section-head p,html[data-theme=dark] .stat span,html[data-theme=dark] .profile-next p,html[data-theme=dark] .profile-account p{color:#b6cdc0}html[data-theme=dark] .hero-proof{border-color:#4b665b;color:#b6d6c0}html[data-theme=dark] .hero-proof strong{color:#f0fff4}
html[data-theme=dark] .panel,html[data-theme=dark] .path-card,html[data-theme=dark] .home-demo-card,html[data-theme=dark] .profile-stat,html[data-theme=dark] .module-row{background:#182e30;border-color:#375652;color:#e8f3ec}html[data-theme=dark] .profile-next{background:linear-gradient(115deg,#193f37,#182e30)}html[data-theme=dark] .profile-coverage li,html[data-theme=dark] .option,html[data-theme=dark] .home-demo-options button,html[data-theme=dark] .account-tabs{background:#203a38;border-color:#46645d;color:#e8f3ec}html[data-theme=dark] .btn-light,html[data-theme=dark] .btn-ghost{background:#29433f;border-color:#4e6a60;color:#effbf3}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select{background:#102527;border-color:#527065;color:#f0fff4}html[data-theme=dark] .account-auth>p,html[data-theme=dark] .account-dashboard-head p,html[data-theme=dark] .profile-coverage>p{color:#b6cdc0}html[data-theme=dark] .account-tabs button.is-active{background:#355b4b;color:#fff}
@media(prefers-reduced-motion:reduce){.topbar,.brand-mascot,.main-nav a:after{transition:opacity .2s}.brand:hover .brand-mascot{transform:none}}
.account-toast{position:fixed;z-index:100;right:24px;bottom:24px;max-width:min(420px,calc(100vw - 32px));padding:15px 20px;border-radius:14px;background:#173e43;color:#fff;box-shadow:0 12px 34px #0b242945;font-size:14px;font-weight:700;line-height:1.5}.account-toast.error{background:#813e35}.field-hint{display:block;min-height:16px;color:#9a4337}.field-hint:empty{position:absolute;min-height:0}.password-strength{display:grid;gap:7px;margin-top:9px}.password-strength progress{width:100%;height:7px;accent-color:#2d8a6b}.password-strength small{font-size:12px;color:#597267}.account-social{display:grid;gap:10px;margin-top:22px}.account-social>span{text-align:center;font-size:12px;color:#698075}.account-social .btn{justify-content:center}.account-social b{display:inline-grid;place-items:center;width:23px;height:23px;border:1px solid currentColor;border-radius:50%;font-size:11px}.account-factor{max-width:540px}.account-factor .account-panel{margin:24px 0}.account-factor form{display:grid;gap:12px}.account-security summary{display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-weight:800}.account-security summary span{color:#268663}.account-security form{display:grid;gap:11px;margin-top:15px}.account-security .btn{justify-self:start}.factor-secret{display:grid;gap:8px;padding:16px;background:#eef5ef;border-radius:12px}.factor-secret code{overflow-wrap:anywhere;font-size:17px}.factor-backups ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;list-style:none}.factor-backups li{padding:9px;background:#f0f5f0;border-radius:8px}.factor-backups code{font-size:12px}
.profile-editor{margin:20px 0 24px;padding:clamp(22px,4vw,36px)}.profile-editor-head{display:flex;justify-content:space-between;align-items:center;gap:24px}.profile-editor-head h2{font-size:clamp(28px,4vw,43px);letter-spacing:-.045em;line-height:1.07;margin:12px 0}.profile-editor-head p{max-width:520px;color:#557267;line-height:1.5}.profile-current-avatar{width:108px;height:108px;flex:none;border-radius:30px;overflow:hidden;background:#dbeee1;box-shadow:0 10px 22px #173e4326}.profile-current-avatar svg,.profile-current-avatar img{width:100%;height:100%;object-fit:cover}.profile-editor form{max-width:none;margin-top:27px}.avatar-picker{border:0;padding:0;margin:0 0 24px}.avatar-picker legend{font-size:14px;font-weight:850;margin-bottom:13px}.avatar-picker>div{display:flex;gap:9px;flex-wrap:wrap}.avatar-picker button{width:69px;height:69px;padding:2px;background:transparent;border:2px solid transparent;border-radius:21px}.avatar-picker button[aria-pressed=true]{border-color:#24795d;box-shadow:0 0 0 3px #bfe5d2}.avatar-picker button svg{display:block;width:100%;height:100%}.avatar-upload{display:inline-block;margin-top:15px;font-weight:800;color:#206f53;cursor:pointer}.avatar-upload input{display:block;max-width:260px;margin-top:8px}.avatar-picker small{display:block;margin-top:7px;color:#667b70}.profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px}.profile-fields label{display:grid;gap:8px;font-size:13px;font-weight:800}.profile-fields label:has(textarea){grid-column:1/-1}.profile-fields input,.profile-fields textarea{min-width:0;width:100%;padding:13px 14px;border:1px solid #bdcfc4;border-radius:11px;background:#fff;color:#183b34;font:inherit;font-size:15px}.profile-fields textarea{resize:vertical}.profile-switch{display:flex;align-items:center;gap:10px;margin:22px 0;font-weight:700}.profile-switch input{width:18px;height:18px;accent-color:#278c64}.profile-editor .button-row{align-items:center}.profile-editor .button-row span{font-size:13px;font-weight:700;color:#287650}.profile-activity{margin-top:30px;border-top:1px solid #d7e4d9;padding-top:27px}.profile-activity h3{font-size:23px;letter-spacing:-.04em;margin:8px 0 18px}.activity-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,1fr);gap:4px;width:fit-content;max-width:100%}.activity-day{width:15px;height:15px;border-radius:4px;background:#e7efe9}.activity-day.level-1{background:#b9dec6}.activity-day.level-2{background:#78bf94}.activity-day.level-3{background:#3c956c}.activity-day.level-4{background:#176546}.profile-activity>p{margin:27px 0 10px;font-weight:800}.profile-history{padding:0;list-style:none}.profile-history li{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-top:1px solid #e2ebe5;font-size:13px;line-height:1.45}.profile-history li span:nth-child(2){flex:1}.profile-history .correct{color:#1d8558;font-weight:900}.profile-history .incorrect{color:#ba654b;font-weight:900}.profile-history time{flex:none;color:#71877b}
@media(max-width:640px){.profile-editor-head{align-items:flex-start}.profile-current-avatar{width:74px;height:74px;border-radius:22px}.profile-fields{grid-template-columns:1fr}.factor-backups ul{grid-template-columns:1fr}.activity-day{width:clamp(8px,2.4vw,13px);height:clamp(8px,2.4vw,13px)}.account-toast{right:16px;bottom:16px}}
html[data-theme=dark] .profile-editor-head p,html[data-theme=dark] .profile-activity li time,html[data-theme=dark] .avatar-picker small,html[data-theme=dark] .password-strength small{color:#b7d0c1}html[data-theme=dark] .activity-day{background:#2d4940}html[data-theme=dark] .activity-day.level-1{background:#477b5d}html[data-theme=dark] .activity-day.level-2{background:#5ba978}html[data-theme=dark] .activity-day.level-3{background:#80d19a}html[data-theme=dark] .activity-day.level-4{background:#b8ecc2}html[data-theme=dark] .factor-secret,html[data-theme=dark] .factor-backups li{background:#234239}
.avatar-picker>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.avatar-picker button{display:grid;justify-items:center;align-content:center;gap:4px;width:100%;height:auto;min-height:100px;padding:8px;border-color:#d9e6dc;background:#f8fbf7}.avatar-picker button svg{width:58px;height:58px}.avatar-picker button span{color:#446b58;font-size:11px;font-weight:800}.avatar-picker button[aria-pressed=true]{background:#e6f5e9}.avatar-picker button[aria-pressed=true] span{color:#19563d}html[data-theme=dark] .avatar-picker button{border-color:#486854;background:#254239}html[data-theme=dark] .avatar-picker button span{color:#c5decd}html[data-theme=dark] .avatar-picker button[aria-pressed=true]{border-color:#8bd6a8;background:#315a45}@media(max-width:620px){.avatar-picker>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
.avatar-picker .avatar-upload{position:relative;display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #bad9c5;border-radius:12px;background:#edf7ef;color:#245d43}.avatar-picker .avatar-upload:before{content:'↑';font-size:18px;line-height:1}.avatar-picker .avatar-upload input{position:absolute;width:1px;height:1px;margin:0;opacity:0;clip-path:inset(50%)}.avatar-picker .avatar-upload:focus-within{outline:3px solid #ef7f5e;outline-offset:3px}.avatar-upload-status{display:block;min-height:18px;margin-top:7px;color:#287650;font-size:12px;font-weight:750}html[data-theme=dark] .avatar-picker .avatar-upload{border-color:#557d61;background:#284c3c;color:#d4f1dc}html[data-theme=dark] .avatar-upload-status{color:#b9e9c4}
/* ponytail: short screens keep the next lesson button in view; extra result text scrolls inside the panel. */
body:has(.lesson-finish) .footer{display:none}
@media(max-height:760px){
  .lesson-finish{height:calc(100dvh - 104px);min-height:0;padding:12px 16px;overflow-y:auto;overscroll-behavior:contain}
  .finish-mascot,.finish-glow{display:none}
  .lesson-finish h1{font-size:clamp(24px,4vw,32px);margin-bottom:6px}
  .finish-line{font-size:13px;line-height:1.3;margin-bottom:10px}
  .finish-stats>div{padding:8px 4px}
  .finish-stats strong{font-size:26px}
  .finish-progress{margin-top:11px;font-size:11px}
  .finish-progress-track{height:8px;margin-top:5px}
  .finish-actions{margin-top:12px;gap:7px;flex-wrap:nowrap}
  .finish-actions .btn{min-width:0;flex:1;min-height:44px;padding:8px;font-size:12px}
}
@media(max-height:760px) and (max-width:760px){.lesson-finish{height:calc(100dvh - 82px)}}
.history-bookmark{flex:none;width:34px;height:34px;border:1px solid #c8ddce;border-radius:9px;background:#f3faf4;color:#327657;font-size:20px;line-height:1}.history-bookmark[aria-pressed=true]{background:#e5f4dd;color:#9a6b15}.profile-bookmarks{margin-top:22px;padding:17px;border-radius:14px;background:#f3f8f2}.profile-bookmarks strong{font-size:13px}.profile-bookmarks ul{display:grid;gap:8px;margin:12px 0 0;padding-left:17px;font-size:13px}.profile-bookmarks li{border:0;padding:0}.profile-activity .profile-history button:focus-visible,.avatar-picker button:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}html[data-theme=dark] .profile-bookmarks{background:#203b35}html[data-theme=dark] .history-bookmark{background:#24463a;color:#d8efce}
@media(max-width:760px){.main-nav{order:10;flex:1;width:auto;justify-content:flex-start;gap:clamp(12px,4vw,22px);margin:2px 0 0}.lang-switch{order:11;align-self:flex-end;margin-top:2px}.topbar,.topbar.is-compact{row-gap:0}}
.account-auth #forgot-password{display:inline-flex;min-height:32px;margin-top:12px;padding:2px 0;border:0;background:transparent;color:#317254;font-size:13px}.account-auth #forgot-password:hover{text-decoration:underline;transform:none}@media(max-width:780px){.account-layout .account-auth{order:-1}.account-layout .account-intro{min-height:0}.account-layout{margin-top:16px}}
.achievement-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:17px}.achievement-card{display:grid;gap:10px;padding:17px;border:1px solid #d5e8d8;border-radius:14px;background:#f7fbf7}.achievement-card>div{display:flex;justify-content:space-between;gap:12px}.achievement-card strong{font-size:13px}.achievement-card span,.achievement-card small{color:#46745e;font-size:11px;font-weight:800}.achievement-card progress{width:100%;height:9px;accent-color:#238d62}.achievement-card small{text-align:right}@media(max-width:600px){.achievement-cards{grid-template-columns:1fr}}html[data-theme=dark] .achievement-card{background:#223d37;border-color:#466a58}
.profile-editor .profile-switch{margin:12px 0}.profile-reminder{margin-top:20px;padding:16px 18px;border:1px solid #b9d7c1;border-radius:13px;background:#eaf6ec;color:#255d43;font-size:13px;font-weight:750}html[data-theme=dark] .profile-reminder{background:#23483a;border-color:#4f8063;color:#d7f2df}
.profile-bookmarks ul{list-style:none;padding:0}.profile-bookmarks li+li{border-top:1px solid #dce8dd;padding-top:8px}.profile-bookmarks summary{cursor:pointer;font-weight:750;line-height:1.45}.profile-bookmarks summary:focus-visible{outline:3px solid #ef7f5e;outline-offset:3px}.profile-bookmarks details p{margin:9px 0;color:#456457;line-height:1.5}.profile-bookmarks details a{font-weight:800;color:#19684d}html[data-theme=dark] .profile-bookmarks details p{color:#c1d9c9}html[data-theme=dark] .profile-bookmarks details a{color:#9de5b8}
.profile-bookmarks li{display:flex;align-items:flex-start;gap:10px}.profile-bookmarks li details{flex:1;min-width:0}.profile-bookmarks li .history-bookmark{margin-top:0}
.rewards-panel{position:relative;overflow:hidden;border-color:#c9ded1;background:radial-gradient(circle at 90% -12%,#d6f3de 0,transparent 36%),linear-gradient(160deg,#fff,#f0f8f1);box-shadow:0 18px 45px #123e3120}.rewards-panel:before{content:'✦';position:absolute;top:24px;right:24%;color:#b3ddbd;font-size:44px;pointer-events:none}.rewards-panel .xp-pill{background:#153e37;border:1px solid #72ad89;box-shadow:0 6px 0 #0d2a25}.rewards-panel .avatar-preview{width:fit-content;max-width:100%;padding:14px 20px 14px 14px;border:1px solid #cfe2d0;border-radius:22px;background:#ffffffb8;box-shadow:0 12px 30px #2a5a3d13}.rewards-panel .avatar-preview>span{background:#edf8ed}.rewards-panel .chest-row{padding:18px;border:1px solid #c7dcca;border-radius:20px;background:#e6f3e8}.rewards-panel .chest-row .btn{min-width:190px;font-size:15px;box-shadow:0 6px 0 #bb694b}.rewards-panel .chest-row .btn:active{transform:translateY(4px);box-shadow:0 2px 0 #bb694b}.rewards-panel .chest-row>span{font-weight:750;color:#3c6d56}.rewards-panel .cosmetic-choices{gap:10px}.rewards-panel .cosmetic-choices button{min-height:52px;background:#fff;box-shadow:0 4px 12px #1e4c3210}.rewards-panel .achievement{padding:12px 15px;border:1px solid #dce8de}.rewards-panel .achievement.earned{border-color:#9fd3aa;box-shadow:0 5px 14px #34845017}
.reward-reveal{position:fixed;inset:0;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:30px;text-align:center;border:1px solid #d6e9d4;border-radius:28px;background:radial-gradient(circle at 50% 12%,#ddf7e1 0,transparent 48%),#fff;color:#173d38;box-shadow:0 24px 80px #0b2d2b66;overflow:auto;animation:reward-dialog-in .38s cubic-bezier(.2,.8,.2,1) both}.reward-reveal::backdrop{background:#0b242bc7;backdrop-filter:blur(7px)}.reward-reveal .eyebrow{justify-content:center;font-size:10px;color:#337d58}.reward-reveal h2{margin:12px 0 8px;font-size:clamp(28px,6vw,38px);line-height:1.05;letter-spacing:-.05em}.reward-reveal p{margin:0 0 24px;color:#506b5c;font-size:19px;font-weight:800}.reward-reveal .btn{width:100%}.reward-reveal-art{position:relative;display:grid;place-items:center;height:155px;margin-bottom:12px}.reward-reveal-art:before,.reward-reveal-art:after{content:'✦';position:absolute;color:#efb94e;font-size:28px;animation:reward-spark .7s .3s both}.reward-reveal-art:before{top:19px;left:22%}.reward-reveal-art:after{right:18%;bottom:34px;font-size:20px;animation-delay:.48s}.reward-reveal-gift{position:absolute;left:calc(50% - 62px);bottom:8px;width:124px;height:90px;border-radius:9px 9px 17px 17px;background:linear-gradient(135deg,#eb8766,#b84f41);box-shadow:inset -12px -10px 0 #9e4239,0 18px 24px #7b3c3438;animation:reward-box-in .45s cubic-bezier(.2,1.3,.3,1) both}.reward-reveal-gift:before{content:'';position:absolute;inset:0 auto 0 49px;width:25px;background:#f7d583;box-shadow:inset -5px 0 0 #e9bd64}.reward-gift-lid{position:absolute;z-index:3;top:-13px;left:-9px;width:142px;height:27px;border-radius:8px;background:linear-gradient(135deg,#f39970,#cc604a);box-shadow:inset -8px -5px 0 #b44b3b,0 5px 7px #763c3522;transform-origin:12% 85%;animation:reward-lid-open .65s .24s cubic-bezier(.2,1,.25,1) both}.reward-gift-lid:before{content:'';position:absolute;top:0;bottom:0;left:58px;width:26px;background:#f9dc8a;box-shadow:inset -5px 0 0 #e8bd65}.reward-reveal-prize{position:absolute;z-index:2;left:calc(50% - 41px);bottom:65px;display:grid;place-items:center;width:82px;height:82px;border:3px solid #fff;border-radius:24px;background:#fff7db;box-shadow:0 10px 30px #d2a54355;color:#a96b17;font-size:46px;animation:reward-prize-rise .65s .38s cubic-bezier(.15,1.4,.3,1) both}
@keyframes reward-dialog-in{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes reward-box-in{from{opacity:0;transform:translateY(30px) scale(.75)}to{opacity:1;transform:none}}@keyframes reward-lid-open{0%,23%{transform:none}100%{transform:translate(-23px,-48px) rotate(-29deg)}}@keyframes reward-prize-rise{from{opacity:0;transform:translateY(58px) scale(.5) rotate(-16deg)}to{opacity:1;transform:translateY(-30px) scale(1) rotate(0)}}@keyframes reward-spark{from{opacity:0;transform:translateY(15px) scale(.2) rotate(-35deg)}to{opacity:1;transform:translateY(-10px) scale(1) rotate(20deg)}}@media(prefers-reduced-motion:reduce){.reward-reveal,.reward-reveal-gift,.reward-gift-lid,.reward-reveal-prize,.reward-reveal-art:before,.reward-reveal-art:after{animation:none}.reward-gift-lid{transform:translate(-23px,-48px) rotate(-29deg)}.reward-reveal-prize{transform:translateY(-30px)}}
@media(max-width:600px){.rewards-panel .rewards-heading{align-items:flex-start}.rewards-panel .xp-pill{padding:9px 12px;font-size:12px}.rewards-panel .chest-row .btn{width:100%}.rewards-panel .chest-row>span{width:100%}}
.rewards-panel .cosmetic-choices .is-locked{border-style:dashed;border-color:#cad8cd;background:#edf3ee;color:#53695d;cursor:default;box-shadow:none}.rewards-panel .cosmetic-choices .just-unlocked{border-color:#d8ad55;background:#fff9e7;animation:reward-unlock .7s cubic-bezier(.2,1.4,.3,1) both}@keyframes reward-unlock{from{transform:scale(.8);box-shadow:0 0 0 12px #e8c77499}to{transform:scale(1);box-shadow:0 4px 12px #1e4c3210}}@media(prefers-reduced-motion:reduce){.rewards-panel .cosmetic-choices .just-unlocked{animation:none}}
html[data-theme=dark] .rewards-panel{border-color:#3d6d52;background:radial-gradient(circle at 90% -12%,#326a4b 0,transparent 40%),#17362f}html[data-theme=dark] .rewards-panel .avatar-preview,html[data-theme=dark] .rewards-panel .chest-row{border-color:#4c775a;background:#21483a}html[data-theme=dark] .rewards-panel .chest-row>span{color:#c6e4ce}html[data-theme=dark] .rewards-panel .cosmetic-choices button{background:#254b3d}
html[data-theme=dark] .rewards-panel .cosmetic-choices .is-locked{background:#1b382f;border-color:#53705b;color:#b5cab9}html[data-theme=dark] .rewards-panel .cosmetic-choices .just-unlocked{background:#4b452c}.rewards-panel .cosmetic-choices .is-locked:hover{transform:none}
.rewards-feature{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 30px}.rewards-panel .rewards-feature .avatar-preview{width:100%;max-width:none;min-width:0;min-height:150px;margin:0;padding:22px;background:#fff}.rewards-panel .avatar-preview>span{flex:none;width:104px;height:104px;font-size:48px}.rewards-panel .avatar-preview strong{font-size:19px;line-height:1.2}.rewards-panel .avatar-preview small{line-height:1.45}.rewards-panel .chest-row{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:13px;min-width:0;min-height:150px;padding:22px;background:linear-gradient(125deg,#e7f5e9,#f3f9ef)}.rewards-panel .chest-row .btn{min-width:0;width:100%;box-shadow:0 5px 0 #bb694b}.rewards-panel .chest-empty{display:inline-flex;align-items:center;gap:8px;color:#2d684d;font-size:13px;font-weight:850}.rewards-panel .chest-empty:before{content:'✦';display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#cbe9d1;color:#21744d}.rewards-panel .chest-meta{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:end;min-width:0}.rewards-panel .chest-meta strong{font-size:16px;letter-spacing:-.025em}.rewards-panel .chest-meta span{font-size:12px;font-weight:750;color:#4e755e;text-align:right}.rewards-panel .chest-meta progress{grid-column:1/-1;width:100%;height:9px;accent-color:#278960}.rewards-panel .achievements{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.rewards-panel .achievement{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:118px;padding:15px;background:#f7faf6;color:#446656}.rewards-panel .achievement.earned{background:#e4f6e8;color:#1d5e3d}.rewards-panel .achievement-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#e3ece4;font-size:20px}.rewards-panel .achievement.earned .achievement-icon{background:#c7ebd0}.rewards-panel .achievement strong,.rewards-panel .achievement small{display:block}.rewards-panel .achievement strong{font-size:12px;line-height:1.25}.rewards-panel .achievement small{margin-top:5px;color:#63826b;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
html[data-theme=dark] .rewards-panel .rewards-feature .avatar-preview{background:#21483a}html[data-theme=dark] .rewards-panel .chest-row{background:linear-gradient(125deg,#21483a,#244638)}html[data-theme=dark] .rewards-panel .chest-empty,html[data-theme=dark] .rewards-panel .chest-meta span{color:#bde3c9}html[data-theme=dark] .rewards-panel .chest-empty:before{background:#356d4d;color:#dbf8e3}html[data-theme=dark] .rewards-panel .achievement{background:#244337;border-color:#41624a;color:#c4ddc8}html[data-theme=dark] .rewards-panel .achievement.earned{background:#295940;border-color:#498660;color:#effff0}html[data-theme=dark] .rewards-panel .achievement-icon{background:#365a46}html[data-theme=dark] .rewards-panel .achievement small{color:#a7c6ae}
@media(max-width:760px){.rewards-feature{grid-template-columns:1fr}.rewards-panel .achievements{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.rewards-panel .achievements{grid-template-columns:repeat(2,minmax(0,1fr))}.rewards-panel .achievement{min-height:105px}.rewards-panel .chest-meta{grid-template-columns:1fr}.rewards-panel .chest-meta span{text-align:left}}
.rewards-panel h3{display:flex;align-items:center;gap:14px;margin:28px 0 13px;color:#456f58;font-size:13px;letter-spacing:.09em;text-transform:uppercase}.rewards-panel h3:after{content:'';height:1px;flex:1;background:#d6e5d8}.rewards-panel .cosmetic-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.rewards-panel .cosmetic-choices button{justify-content:center;min-width:0;min-height:76px;padding:12px 8px;border-radius:16px;font-size:15px;text-align:center}.rewards-panel .cosmetic-choices button[aria-pressed=true]{background:#e3f5e7;box-shadow:0 6px 18px #2d825128}.rewards-panel .achievement:nth-child(1){--badge:#d7e9dc}.rewards-panel .achievement:nth-child(2){--badge:#dceaf5}.rewards-panel .achievement:nth-child(3){--badge:#f6e9bb}.rewards-panel .achievement:nth-child(4){--badge:#f5e1d9}.rewards-panel .achievement:nth-child(5){--badge:#e4def3}.rewards-panel .achievement-icon,.rewards-panel .achievement.earned .achievement-icon{background:var(--badge,#e3ece4)}html[data-theme=dark] .rewards-panel h3{color:#b9d8c0}html[data-theme=dark] .rewards-panel h3:after{background:#426854}html[data-theme=dark] .rewards-panel .cosmetic-choices button[aria-pressed=true]{background:#325b43;color:#edfff0}
@media(max-width:760px){.rewards-panel .cosmetic-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:460px){.rewards-panel .cosmetic-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.rewards-panel .cosmetic-choices button{min-height:66px}}
/* The next lesson is the profile's primary action. */
.profile-next{position:relative;isolation:isolate;min-height:240px;overflow:hidden;padding:clamp(25px,4vw,42px);border:1px solid #245d57;border-radius:25px;background:radial-gradient(circle at 78% 0,#2b7569 0,transparent 42%),linear-gradient(120deg,#102d34,#164b47);color:#f5fff5;box-shadow:0 19px 42px #123d3930}.profile-next:before{content:'';position:absolute;z-index:-1;top:-165px;right:-100px;width:420px;height:420px;border:1px solid #ffffff31;border-radius:50%;box-shadow:0 0 0 47px #ffffff0a,0 0 0 95px #ffffff08;pointer-events:none}.profile-next .eyebrow{color:#a5ebbd}.profile-next h2{max-width:560px;font-size:clamp(30px,4.5vw,48px);line-height:1.03;color:#fff}.profile-next p{color:#d3e7de}.profile-next-actions{position:relative;z-index:1}.profile-next-actions .btn-primary{background:#f2a879;color:#173934;box-shadow:0 6px 0 #b2654e}.profile-next-actions .btn-primary:hover{background:#ffc093;box-shadow:0 10px 0 #b2654e}.profile-next-actions .btn-light{background:#ffffff1c;border-color:#ffffff70;color:#fff}.profile-next-actions .btn-light:hover{background:#ffffff30}.profile-grid .profile-level{background:linear-gradient(145deg,#e2f5e7,#f4f8e8);border-color:#bcd8c2;color:#173934;box-shadow:0 8px 24px #234e3818}.profile-grid .profile-level span,.profile-grid .profile-level small{color:#3c6651}.profile-grid .profile-level strong{color:#173934}.profile-grid .profile-stat{border-color:#d2e2d7;box-shadow:0 8px 24px #234e3810}.profile-grid .profile-stat strong{color:#1a5b48}html[data-theme=dark] .profile-next{background:radial-gradient(circle at 78% 0,#2b7569 0,transparent 42%),linear-gradient(120deg,#102d34,#164b47)}html[data-theme=dark] .profile-grid .profile-level{background:linear-gradient(145deg,#234d3d,#233e37);border-color:#477056;color:#eff9f0;box-shadow:0 8px 24px #0003}html[data-theme=dark] .profile-grid .profile-level span,html[data-theme=dark] .profile-grid .profile-level small{color:#c5e1cb}html[data-theme=dark] .profile-grid .profile-level strong{color:#eff9f0}html[data-theme=dark] .profile-grid .profile-stat strong{color:#a4ebbd}html[data-theme=dark] .profile-grid .profile-stat span{color:#bbd2c3}html[data-theme=dark] .profile-next-actions .btn-light{background:#ffffff1c;border-color:#ffffff70;color:#fff}
@media(max-width:760px){.main-nav a{display:inline-flex;align-items:center;min-height:44px}.theme-toggle{width:44px;height:44px}.nav-account{min-height:44px}.lang-switch button{min-width:44px;min-height:44px;padding:8px}}
@media(max-width:389px){.topbar,.topbar.is-compact{display:grid;grid-template-columns:minmax(0,1fr) 44px 96px;column-gap:6px;row-gap:6px;padding:8px}.topbar .brand{grid-column:1;grid-row:1;margin:0;font-size:20px}.topbar .brand small{display:none}.topbar .brand-mascot{width:34px;height:49px;margin:-5px 0}.main-nav{grid-column:2/4;grid-row:1;min-width:0;justify-content:space-between;gap:0;margin:0;padding:0;border:0}.main-nav a{padding:8px 1px}.nav-account{grid-column:1;grid-row:2;justify-self:start;padding:7px 8px}.theme-toggle{grid-column:2;grid-row:2}.lang-switch{grid-column:3;grid-row:2;margin:0;align-self:center}}
@media(max-width:480px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid .profile-stat:last-child{grid-column:1/-1}.profile-grid .profile-stat span{font-size:12px}}
/* Vehicle artwork uses one palette and silhouette style instead of platform emoji. */
.vehicle-art{display:block;width:100%;height:auto}.rewards-panel .avatar-preview>.vehicle-disc{display:grid;place-items:center;width:116px;height:116px;padding:8px;border-width:6px;background:radial-gradient(circle at 50% 36%,#fff,#e8f6ec)}.vehicle-disc .vehicle-art{width:100%}.rewards-panel .rewards-feature .avatar-preview,.rewards-panel .chest-row{min-height:136px}.rewards-feature{margin:22px 0 24px}.rewards-panel h3{margin:22px 0 10px}
.rewards-panel .avatar-choices button{flex-direction:column;gap:3px;min-height:96px;padding:8px 12px}.vehicle-choice-art{display:grid;place-items:center;width:min(100%,106px);height:53px}.vehicle-choice-art .vehicle-art{max-width:100px}.rewards-panel .avatar-choices button>span:last-child{font-size:12px}.rewards-panel .frame-choices button{min-height:54px}.rewards-panel .reward-reveal-prize .vehicle-art{width:82px}.reward-reveal-prize:has(.vehicle-art){width:100px;height:82px;left:calc(50% - 50px);background:#fff8e6}
html[data-theme=dark] .rewards-panel .avatar-preview>.vehicle-disc{background:radial-gradient(circle at 50% 36%,#e4f5e9,#b5d2bf)}
@media(max-width:520px){.rewards-panel .avatar-choices button{min-height:89px}.rewards-panel .rewards-feature .avatar-preview{gap:12px;padding:14px}.rewards-panel .avatar-preview>.vehicle-disc{width:91px;height:91px}.vehicle-disc .vehicle-art{width:100%}}
@media(prefers-reduced-motion:no-preference){.home-demo-card{transform:translateY(var(--demo-drift,0px))}}
.rewards-panel .achievement.in-progress{border-color:#e8d6ab;background:#fff9ea;color:#735829}.rewards-panel .achievement.in-progress .achievement-icon{background:#f4e5c0}.rewards-panel .achievement.in-progress small{color:#886b38}html[data-theme=dark] .rewards-panel .achievement.in-progress{border-color:#786547;background:#3c392b;color:#f5dfa8}html[data-theme=dark] .rewards-panel .achievement.in-progress .achievement-icon{background:#6a5b3b}html[data-theme=dark] .rewards-panel .achievement.in-progress small{color:#e5cd96}
.achievement-toast{position:fixed;z-index:31;left:20px;bottom:20px;display:flex;align-items:center;gap:12px;width:min(330px,calc(100vw - 40px));padding:12px 14px;border:1px solid #e8c881;border-radius:16px;background:#fff9e9;color:#26473c;box-shadow:0 14px 42px #173b3060;animation:achievement-toast-in .45s cubic-bezier(.2,1.3,.3,1) both}.achievement-toast-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:#f3e4b7;font-size:24px}.achievement-toast div{display:grid;gap:3px;min-width:0}.achievement-toast small{color:#976b2f;font-size:9px;font-weight:900;letter-spacing:.11em}.achievement-toast strong{font-size:14px;line-height:1.25}.achievement-toast button{align-self:flex-start;margin-left:auto;border:0;background:transparent;color:inherit;font-size:21px}.achievement-toast button:focus-visible{outline:3px solid #ef7f5e;border-radius:4px}@keyframes achievement-toast-in{from{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:none}}@media(max-width:600px){.achievement-toast{top:84px;bottom:auto;left:16px;width:min(330px,calc(100vw - 32px))}}@media(prefers-reduced-motion:reduce){.achievement-toast{animation:none}}html[data-theme=dark] .achievement-toast{border-color:#937b48;background:#3a3b2c;color:#f3f7e7}html[data-theme=dark] .achievement-toast-icon{background:#675934}html[data-theme=dark] .achievement-toast small{color:#e3c685}
.achievement-toast div>span{font-size:12px;font-weight:750;color:#5b765c}html[data-theme=dark] .achievement-toast div>span{color:#c9d9b4}
.profile-editor button:disabled,.profile-editor .avatar-upload:has(input:disabled){opacity:.55;cursor:wait}
.profile-grid .profile-stat span,.profile-history time{color:#526a60}
html[data-theme=dark] .readiness-card{background:#1c3937;border-color:#527364;color:#e8f3ec;box-shadow:0 8px 0 #122a29,0 18px 30px #0004}
html[data-theme=dark] .readiness-head h2,html[data-theme=dark] .readiness-card .readiness-verdict{color:#e8f3ec}
html[data-theme=dark] .readiness-head .eyebrow,html[data-theme=dark] .readiness-head>strong{color:#a4e2b7}
html[data-theme=dark] .readiness-axis,html[data-theme=dark] .readiness-card>small{color:#c5dfcf}
html[data-theme=dark] .readiness-axis span:nth-child(2){color:#a4e2b7}
html[data-theme=dark] .readiness-track{background:#38564b}
html[data-theme=dark] .readiness-target{background:#d9f5e0;box-shadow:0 0 0 3px #1c3937}
html[data-theme=dark] .streak-panel p,html[data-theme=dark] .rewards-panel .avatar-preview small{color:#c3ddca}
html[data-theme=dark] .coverage-head{color:#e8f3ec}
html[data-theme=dark] .coverage-head span{color:#a4e2b7}
html[data-theme=dark] .profile-coverage small{color:#bdd3c4}
html[data-theme=dark] .achievement-card span,html[data-theme=dark] .achievement-card small{color:#c4e0cd}
.brand small{font-size:10px;letter-spacing:1.6px}
html[data-theme=dark] .brand small{color:#b8d2c2}
html[data-theme=dark] .lang-switch button:not([aria-pressed="true"]){color:#b8d2c2}
html[data-theme=dark] .module-row .module-copy>strong{color:#e8f3ec}
html[data-theme=dark] .module-row .module-copy>small{color:#bdd3c4}
html[data-theme=dark] .module-row .module-kicker{color:#a4e2b7}
html[data-theme=dark] .region-control{background:#182e30;border-color:#375652}
html[data-theme=dark] .region-control label{color:#e8f3ec}
html[data-theme=dark] .region-control span{color:#bdd3c4}
html[data-theme=dark] .account-tabs button:not(.is-active){color:#c5dfcf}
html[data-theme=dark] .account-auth #forgot-password{color:#a4e2b7}
html[data-theme=dark] .account-social>span,html[data-theme=dark] .password-strength small{color:#bdd3c4}
html[data-theme=dark] .guide-links{background:#1c3937;border:1px solid #527364;color:#e8f3ec}
html[data-theme=dark] .footer{color:#b6cdc0}
.path-card small,.progress-row,.key-hint,.learn-card .tag,.learn-card .term,.learn-card .hint,.account-social>span,.profile-history time,.rewards-panel .achievement small{color:#4d625c}
html[data-theme=dark] .path-card small,html[data-theme=dark] .progress-row,html[data-theme=dark] .key-hint{color:#b6cdc0}
html[data-theme=dark] .profile-history time{color:#b6cdc0}
