/* AI words: quiet surfaces, precise green accents and a warm learning companion. */
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:200 800;src:url('../assets/fonts/manrope-cyrillic.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:200 800;src:url('../assets/fonts/manrope-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root,[data-theme="light"]{
 --bg:#f6f8f5;--surface:#fff;--surface-alt:#f1f4f0;--text:#202822;--muted:#69716a;--faint:#697266;
 --green:#208533;--green-hover:#196d29;--green-soft:#e9f4e6;--green-dark:#176c2a;--mint:#edf5e9;--mint-strong:#daedcf;
 --border:#e3e8e1;--error:#b33d3d;--error-soft:#fff1ef;--shadow:0 16px 60px #223b2610;--overlay:#12221972;
 --font-body:'Manrope',sans-serif;--font-display:'Manrope',sans-serif;
 --text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.2rem;--text-xl:clamp(1.6rem,1.3rem + .9vw,2.15rem);--text-2xl:clamp(2.15rem,1.25rem + 2.7vw,3.5rem);
 --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;
 --radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;
}
[data-theme="dark"]{
 --bg:#151b17;--surface:#1d251f;--surface-alt:#252f27;--text:#eef3ec;--muted:#afbaad;--faint:#91a18f;
 --green:#76c96d;--green-hover:#96d98c;--green-soft:#293e29;--green-dark:#a9de9e;--mint:#263726;--mint-strong:#384d30;
 --border:#344136;--error:#ffa29c;--error-soft:#452923;--shadow:0 16px 60px #060c0640;--overlay:#080e0acc;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--space-8)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-decoration:none}button{color:inherit}p{margin:0 0 var(--space-4)}h1,h2,h3{font-family:var(--font-display);line-height:1.3;letter-spacing:-.035em;margin:0}h1{font-size:var(--text-xl);font-weight:800}h2{font-size:var(--text-lg);font-weight:750}h3{font-size:var(--text-base);font-weight:750}button{border:0;background:none}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:var(--space-3) var(--space-4);min-height:48px;outline:none;transition:border-color .18s,box-shadow .18s;font-size:var(--text-sm)}textarea{resize:vertical;line-height:1.75}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 12%,transparent)}label{display:block;font-size:var(--text-sm);font-weight:650;margin:var(--space-5) 0 var(--space-2)}:focus-visible{outline:3px solid var(--green);outline-offset:4px}::selection{background:var(--mint-strong)}img{max-width:100%;object-fit:contain}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.muted{color:var(--muted)}.tiny{font-size:var(--text-xs)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:var(--space-4);z-index:1000;background:var(--green);color:#fff;padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm)}.skip-link:focus{top:var(--space-4)}
.brand{display:inline-flex;align-items:center;gap:var(--space-3);font-size:1.65rem;font-weight:800;letter-spacing:-.07em;line-height:1.1;flex-shrink:0}.brand-light{font-weight:500;letter-spacing:-.06em}.brand small{display:block;font-size:.61rem;letter-spacing:.015em;font-weight:500;color:var(--muted);margin-top:6px}.brand-mark{width:42px;height:42px;background:var(--green);color:var(--surface);display:grid;place-items:center;border-radius:13px;flex-shrink:0}.brand-mark svg{width:40px;height:40px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:750;min-height:49px;line-height:1.3;transition:background .18s,transform .18s,box-shadow .18s}.btn:not(:disabled):active{transform:translateY(1px)}.btn.primary{background:var(--green);color:#fff}.btn.primary:hover:not(:disabled){background:var(--green-hover);box-shadow:0 4px 14px #218a3525}[data-theme="dark"] .btn.primary{color:#142119}.btn.secondary{background:var(--surface);border:1px solid var(--border)}.btn.secondary:hover:not(:disabled){border-color:var(--green);background:var(--green-soft)}.btn .icon{width:18px;height:18px}.text-btn{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:700;color:var(--green-dark);padding:var(--space-2) 0;min-height:44px}.text-btn:hover:not(:disabled){color:var(--green);text-decoration:underline;text-underline-offset:4px}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-sm);flex-shrink:0}.icon-btn:hover{background:var(--surface-alt)}.eyebrow{font-size:var(--text-xs);font-weight:750;color:var(--muted);letter-spacing:.1em;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.small-tag{font-size:.65rem;font-weight:800;letter-spacing:.07em;color:var(--green-dark);display:inline-flex;align-items:center;gap:var(--space-2)}.tiny-label{font-size:.67rem;font-weight:750;letter-spacing:.07em;color:var(--muted)}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);flex-shrink:0}.small-tag,.tiny-label,.brand small{font-size:var(--text-xs)}.count-chip{display:inline-flex;align-items:center;border:1px solid var(--border);padding:var(--space-1) var(--space-3);border-radius:99px;font-size:var(--text-xs);font-weight:650;color:var(--muted);white-space:nowrap}.card-topline{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6)}.section-heading p{font-size:var(--text-sm);color:var(--muted);margin:var(--space-2) 0 0}.form-message{font-size:var(--text-sm);margin:var(--space-3) 0}.form-message:empty{display:none}.error{color:var(--error)}.success{color:var(--green-dark)}.optional{color:var(--muted);font-size:var(--text-xs);font-weight:400}.field-help{font-size:var(--text-xs);color:var(--muted);margin:var(--space-2) 0 var(--space-5);line-height:1.65}.initial-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);color:var(--muted)}.loading-mark,.spinner{width:20px;height:20px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.loading-mark{width:38px;height:38px;color:var(--green)}
/* First impression: useful explanation and sign-in, together. */
.landing{max-width:1440px;margin:0 auto;padding:0 clamp(var(--space-5),5vw,var(--space-20))}.landing-header{height:104px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.landing-header nav{display:flex;align-items:center;gap:var(--space-6);font-size:var(--text-sm);color:var(--muted)}.landing-header nav>button{font-size:var(--text-sm);font-weight:650;min-height:44px}.nav-divider{height:22px;width:1px;background:var(--border)}.secure-note{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs)}.secure-note .icon{width:16px;height:16px}.landing-main{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(340px,1fr);gap:clamp(var(--space-8),6vw,var(--space-20));padding:var(--space-16) 0 var(--space-12);align-items:center}.landing-hero .eyebrow{color:var(--green-dark);margin-bottom:var(--space-6)}.landing-hero h1{font-size:var(--text-2xl);font-weight:800;letter-spacing:-.055em;line-height:1.16}.landing-hero h1 span{color:var(--green)}.hero-description{max-width:475px;color:var(--muted);line-height:1.8;margin:var(--space-6) 0}.benefit-line{display:flex;gap:var(--space-5);font-size:var(--text-xs);font-weight:650}.benefit-line span{display:inline-flex;align-items:center;gap:var(--space-1)}.benefit-line .icon{width:16px;color:var(--green)}.hero-demo{position:relative;margin-top:var(--space-10);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--mint);min-height:214px;overflow:visible;max-width:560px}.demo-content{width:76%;position:relative;z-index:1}.demo-content>.tiny-label{font-size:var(--text-xs);letter-spacing:.01em}.prompt-before{font-size:var(--text-xs);color:var(--muted);padding:var(--space-3) 0 var(--space-2);display:flex;gap:var(--space-3)}.prompt-before>span{text-transform:uppercase;font-weight:750;font-size:var(--text-xs)}.prompt-after{font-size:var(--text-sm);line-height:1.8;background:var(--surface);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:0 4px 12px #314b2b07}.prompt-after>span{display:flex;align-items:center;gap:var(--space-1);color:var(--green-dark);font-size:var(--text-xs);font-weight:750;margin-bottom:var(--space-1)}.prompt-after .icon{width:15px;height:15px}.landing-mascot{position:absolute;width:220px;height:220px;right:-64px;bottom:-8px;z-index:2;filter:drop-shadow(0 16px 15px #41543215);animation:float 5s ease-in-out infinite}.auth-column{width:100%;max-width:410px;justify-self:end;padding-top:var(--space-3)}.auth-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius-xl);padding:var(--space-8)}.auth-card>.small-tag{font-size:var(--text-xs);letter-spacing:.06em}.auth-card h2{font-size:1.65rem;letter-spacing:-.04em;margin:var(--space-3) 0 var(--space-2);font-weight:800}.auth-card>.muted{font-size:var(--text-sm)}.segmented{display:flex;gap:var(--space-1);border-radius:10px;background:var(--surface-alt);padding:var(--space-1);margin:var(--space-6) 0}.segmented button{flex:1;font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border-radius:7px;min-height:40px;color:var(--muted);font-weight:650}.segmented button.active{background:var(--surface);box-shadow:0 2px 6px #142f1510;color:var(--text)}.auth-card label{font-size:var(--text-xs);margin-top:var(--space-4)}.password-field{position:relative}.password-field input{padding-right:48px}.password-field .icon-btn{position:absolute;right:2px;top:2px;color:var(--faint)}.forgot{display:block;margin-left:auto;font-size:var(--text-xs);padding-top:var(--space-2)}.auth-submit{width:100%;margin-top:var(--space-2);justify-content:space-between}.or{display:flex;align-items:center;text-align:center;color:var(--muted);font-size:var(--text-xs);gap:var(--space-3);margin:var(--space-5) 0}.or:before,.or:after{content:'';flex:1;height:1px;background:var(--border)}.auth-card>.btn{width:100%}.auth-foot{font-size:var(--text-xs);color:var(--muted);text-align:center;margin:var(--space-4) 0 0;line-height:1.7}.auth-back{margin:var(--space-4) auto 0;display:flex}.auth-reassurance{display:flex;gap:var(--space-3);padding:var(--space-6) var(--space-3) 0;align-items:center}.auth-reassurance>.icon{width:24px;height:24px;color:var(--green)}.auth-reassurance p{font-size:var(--text-xs);color:var(--muted);line-height:1.8;margin:0}.auth-reassurance strong{color:var(--text);font-weight:650}.learning-path-public{padding:var(--space-10) 0 var(--space-12);border-top:1px solid var(--border)}.learning-path-public .eyebrow{margin-bottom:var(--space-2)}.learning-path-public .section-heading>p{font-size:var(--text-xs);text-align:right;max-width:220px}.path-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-5);margin-top:var(--space-8)}.path-strip article{position:relative;border-top:2px solid var(--border);padding-top:var(--space-5)}.path-strip article:first-child{border-color:var(--green)}.path-number{position:absolute;right:0;top:var(--space-5);font-size:var(--text-xs);color:var(--faint)}.path-strip article>.icon{color:var(--green);width:24px;height:24px;margin-bottom:var(--space-3)}.path-strip h3{font-size:var(--text-sm);letter-spacing:-.01em}.path-strip p{font-size:var(--text-xs);color:var(--muted);margin:var(--space-2) 0 0}.landing-footer{display:flex;justify-content:space-between;gap:var(--space-6);padding:var(--space-6) 0 var(--space-8);border-top:1px solid var(--border);color:var(--muted);font-size:var(--text-xs)}
/* Learning workspace. */
.app-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-right:1px solid var(--border);padding:var(--space-8) var(--space-4) var(--space-4);display:flex;flex-direction:column;z-index:20}.sidebar .brand{font-size:1.55rem;margin:0 var(--space-3) var(--space-10)}.sidebar .brand-mark{width:39px;height:39px}.sidebar .brand small{font-size:var(--text-xs);letter-spacing:-.04em}.nav-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.09em;color:var(--faint);padding:0 var(--space-4);margin-bottom:var(--space-3)}.nav-item{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--muted);font-weight:550;min-height:50px;border-radius:var(--radius-sm);margin-bottom:var(--space-1);line-height:1.5;transition:background .15s}.nav-item>.icon{width:20px;height:20px;stroke-width:1.6}.nav-item small{margin-left:auto;font-size:var(--text-xs);opacity:.65}.nav-item:hover{background:var(--surface-alt);color:var(--text)}.nav-item.active{background:var(--green-soft);color:var(--green-dark);font-weight:750}.nav-separator{height:1px;background:var(--border);margin:var(--space-6) var(--space-4) var(--space-4)}.admin-link{font-size:var(--text-xs);line-height:1.5}.admin-link>.icon:last-child:not(:first-child){width:13px;height:13px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:var(--space-4) var(--space-2) 0}.mentor-mini{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.mentor-mini .mini{width:64px;height:64px;margin-left:-8px}.mentor-mini span{font-size:var(--text-sm);font-weight:750}.mentor-mini small{display:block;font-size:var(--text-xs);color:var(--muted);font-weight:450}.sidebar-bottom>.btn{width:100%;font-size:var(--text-xs);padding:var(--space-3)}.sidebar-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);margin-top:var(--space-5);padding-top:var(--space-3);font-size:var(--text-xs);color:var(--faint)}.sidebar-foot>span{max-width:140px}.sidebar-foot .icon-btn{width:32px;height:44px}.workspace{min-width:0}.app-header{height:84px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(var(--space-5),3.5vw,var(--space-12));background:var(--surface);gap:var(--space-4)}.breadcrumb{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted);min-width:0}.breadcrumb>.icon{width:12px;height:12px;color:var(--faint)}.breadcrumb strong{color:var(--text);font-weight:650}.header-right{display:flex;gap:var(--space-5);align-items:center}.xp-pill{font-size:var(--text-xs);display:flex;align-items:center;gap:var(--space-1);color:var(--green-dark);background:var(--green-soft);padding:6px var(--space-3);border-radius:99px;white-space:nowrap}.xp-pill>.icon{width:15px;height:15px}.user-button{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs)}.avatar{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--green-dark);font-weight:750;font-size:var(--text-sm)}.user-name{max-width:130px;overflow:hidden;text-overflow:ellipsis}.app-main{max-width:1340px;margin:0 auto;padding:var(--space-10) clamp(var(--space-5),3.5vw,var(--space-12)) var(--space-12);min-height:calc(100vh - 150px)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8)}.page-heading .eyebrow{margin-bottom:var(--space-3);font-size:var(--text-xs)}.page-heading h1{line-height:1.23}.page-heading p{margin:var(--space-3) 0 0;font-size:var(--text-sm);line-height:1.75;max-width:700px}.dashboard-top{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(250px,1fr);gap:var(--space-6)}.start-card{position:relative;background:var(--mint);border-radius:var(--radius-lg);min-height:310px;padding:var(--space-8);overflow:hidden;display:flex;align-items:center}.start-copy{position:relative;z-index:2;width:66%}.start-copy h2{font-size:clamp(1.3rem,1rem + .65vw,1.7rem);line-height:1.35;font-weight:800;letter-spacing:-.04em;margin:var(--space-4) 0 var(--space-3)}.start-copy p{font-size:var(--text-sm);line-height:1.8;color:var(--muted);margin-bottom:var(--space-6);max-width:380px}.start-meta{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-4);flex-wrap:wrap}.start-meta .icon{width:14px;height:14px}.start-meta span{margin-left:var(--space-2);border-left:1px solid var(--border);padding-left:var(--space-3)}.dashboard-mascot{position:absolute;right:-24px;bottom:16px;width:260px;height:260px;z-index:1;animation:float 6s ease-in-out infinite}.mascot-caption{position:absolute;right:20px;bottom:20px;padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);font-size:var(--text-xs);border-radius:12px 12px 0 12px;z-index:2;box-shadow:0 3px 10px #12331808}.progress-card{padding:var(--space-6);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-lg)}.progress-card .card-topline{margin-bottom:var(--space-4)}.progress-card h2{font-size:var(--text-sm);letter-spacing:-.01em}.progress-card .card-topline>.icon{color:var(--faint)}.progress-ring{--progress:0;width:146px;height:146px;margin:var(--space-2) auto var(--space-5);border-radius:50%;padding:8px;background:conic-gradient(var(--green) calc(var(--progress)*1%),var(--surface-alt) 0)}.progress-ring>div{width:100%;height:100%;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring strong{font-size:2.15rem;font-weight:750;line-height:1.3;letter-spacing:-.05em}.progress-ring strong small{font-size:var(--text-lg);font-weight:500;margin-left:2px}.progress-ring span{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-1)}.progress-details{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:var(--space-4);gap:var(--space-4)}.progress-details>span{font-size:var(--text-xs);color:var(--muted);display:flex;flex-direction:column;gap:var(--space-1)}.progress-details strong{font-size:var(--text-base);color:var(--text);font-weight:750}.progress-details small{font-size:var(--text-xs);color:var(--faint);font-weight:500}.level-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--green-dark);margin-top:var(--space-3)}.level-label>.icon{width:15px;height:15px}.route-notice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);margin:var(--space-6) 0 var(--space-10);background:var(--surface)}.route-notice>.icon{color:var(--green);width:20px;height:20px}.route-notice p{margin:0;font-size:var(--text-xs);color:var(--muted);flex:1}.route-notice strong{font-weight:650;color:var(--text)}.route-notice .text-btn{font-size:var(--text-xs);white-space:nowrap;min-height:36px}.route-notice .text-btn .icon{width:16px;height:16px}.module-header{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 var(--space-3);padding:0 var(--space-1)}.module-header>span{font-size:var(--text-xs);color:var(--faint);font-weight:700}.module-header h3{font-size:var(--text-sm);letter-spacing:-.02em;font-weight:750}.module-header>small{margin-left:auto;font-size:var(--text-xs);color:var(--faint)}.lesson-list{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);overflow:hidden}.lesson-row{width:100%;display:flex;align-items:center;text-align:left;gap:var(--space-4);padding:var(--space-5) var(--space-6);transition:background .2s}.lesson-row+.lesson-row{border-top:1px solid var(--border)}.lesson-row:hover{background:var(--green-soft)}.lesson-index{font-size:var(--text-sm);font-weight:650;color:var(--muted);width:28px;flex-shrink:0}.completed .lesson-index{color:var(--green)}.lesson-row-text{flex:1;min-width:0}.lesson-row-text strong{font-size:var(--text-sm);font-weight:650;display:block}.lesson-row-text small{font-size:var(--text-xs);color:var(--muted);display:block;margin-top:var(--space-1);font-weight:400}.lesson-time{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted);white-space:nowrap;margin-left:auto}.lesson-time>.icon{width:14px;height:14px}.lesson-row>.icon{width:15px;height:15px;color:var(--faint)}.completed-tag{font-size:var(--text-xs);color:var(--green-dark);font-weight:650;display:inline-block}.next-stage{display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-lg);padding:var(--space-8);background:var(--mint);margin-top:var(--space-10);gap:var(--space-6)}.next-stage>div>.icon{color:var(--green);margin-bottom:var(--space-3);width:25px;height:25px}.next-stage h2{font-size:var(--text-lg)}.next-stage p{color:var(--muted);font-size:var(--text-sm);margin:var(--space-2) 0 0}.app-footer{max-width:1340px;margin:auto;display:flex;justify-content:space-between;padding:var(--space-5) clamp(var(--space-5),3.5vw,var(--space-12));font-size:var(--text-xs);color:var(--faint);gap:var(--space-4)}.mobile-toggle,.mobile-close,.sidebar-shade{display:none}
/* Lessons, examples and a contextual reading space. */
.back-link{display:inline-flex;gap:var(--space-2);align-items:center;font-size:var(--text-xs);color:var(--muted);padding:var(--space-2) 0;margin-bottom:var(--space-5);min-height:44px}.back-link .icon{width:16px;height:16px}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:var(--space-6);align-items:start}.lesson-article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-8)}.lesson-intro{font-size:var(--text-base);color:var(--muted);line-height:1.9;border-bottom:1px solid var(--border);padding-bottom:var(--space-6);margin-bottom:var(--space-8)}.lesson-article>section{position:relative;margin-bottom:var(--space-8)}.article-section-number{font-size:var(--text-xs);color:var(--green);font-weight:700;display:block;margin-bottom:var(--space-2)}.lesson-article>section h2{margin-bottom:var(--space-4);font-size:var(--text-lg)}.lesson-article>section p,.lesson-article>section li{font-size:var(--text-sm);line-height:1.9;color:var(--muted)}.lesson-article ul{padding-left:var(--space-6)}.takeaway{display:flex;gap:var(--space-4);padding:var(--space-5);background:var(--mint);border-radius:var(--radius-md)}.takeaway>.icon{color:var(--green);margin-top:var(--space-1)}.takeaway strong{font-size:var(--text-sm)}.takeaway p{font-size:var(--text-sm);margin:var(--space-2) 0 0;line-height:1.85}.source-details{margin:var(--space-6) 0 var(--space-8);color:var(--muted);font-size:var(--text-xs)}summary{cursor:pointer;min-height:44px;align-content:center}.source-details a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--green-dark);padding:var(--space-2) 0;text-decoration:underline;text-underline-offset:3px}.source-details a>.icon{width:15px;height:15px}.quiz-card{border-top:1px solid var(--border);padding-top:var(--space-8);margin-bottom:0!important}.quiz-card>.small-tag{margin-bottom:var(--space-3)}fieldset{border:0;margin:0;padding:0}.quiz-option{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);margin:var(--space-3) 0;font-weight:500;line-height:1.8;cursor:pointer}.quiz-option:has(input:checked){background:var(--green-soft);border-color:var(--green)}.quiz-option input{width:18px;height:18px;min-height:18px;accent-color:var(--green);margin:4px 0 0;flex-shrink:0}.quiz-option span{font-size:var(--text-sm)}.quiz-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}#quiz-feedback{padding:var(--space-3);border-radius:var(--radius-sm)}#quiz-feedback.success{background:var(--green-soft)}#quiz-feedback.error{background:var(--error-soft)}.reading-aside{position:sticky;top:var(--space-6)}.video-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;padding:0 var(--space-5) var(--space-4)}.video-poster{position:relative;display:block;margin:0 calc(-1 * var(--space-5)) var(--space-4);width:calc(100% + 2 * var(--space-5));height:145px;background:var(--mint);overflow:hidden;padding:0}.video-poster>img{width:100%;height:100%;object-fit:cover}.play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;box-shadow:0 4px 15px #10251030}.play-button .icon{width:18px;height:18px;fill:currentColor;stroke-width:0}.video-card h3{margin:var(--space-2) 0}.video-card p{font-size:var(--text-xs);line-height:1.8;color:var(--muted);margin-bottom:var(--space-2)}.video-card .text-btn{font-size:var(--text-xs)}.video-card>.tiny-label{font-size:var(--text-xs);letter-spacing:0}.mentor-tip{padding:var(--space-6) var(--space-4);text-align:center}.tip-mascot{width:95px;height:95px}.mentor-tip h3{font-size:var(--text-sm);margin-bottom:var(--space-3)}.mentor-tip p{font-size:var(--text-xs);line-height:1.8;color:var(--muted)}.mentor-tip .text-btn{font-size:var(--text-xs)}.filter-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.filter-tabs button{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);border-radius:99px;border:1px solid var(--border);color:var(--muted);background:var(--surface);min-height:44px;font-weight:650}.filter-tabs button.active{color:var(--green-dark);background:var(--green-soft);border-color:var(--green-soft)}.examples-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.example-card{padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.example-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.example-card h2{font-size:var(--text-lg);margin-bottom:var(--space-3)}.example-card>p{font-size:var(--text-sm);color:var(--muted);line-height:1.8}.example-num{font-size:var(--text-xs);color:var(--faint)}.example-preview{background:var(--surface-alt);padding:var(--space-4);border-radius:var(--radius-sm);margin:var(--space-2) 0 var(--space-4)}.example-preview p{font-size:var(--text-sm);margin:var(--space-2) 0 0}.example-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:auto}.tag-list{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs);color:var(--faint)}.tag-list span+span:before{content:'·';margin-right:var(--space-2)}.example-bottom .text-btn{white-space:nowrap;font-size:var(--text-xs)}.example-comparison{margin:var(--space-6) 0;display:grid;gap:var(--space-4)}.comparison-before,.comparison-after{border-radius:var(--radius-md);padding:var(--space-5);background:var(--surface-alt)}.comparison-after{background:var(--mint)}.comparison-after .tiny-label{color:var(--green-dark);display:flex;gap:var(--space-2);align-items:center}.example-comparison p{margin:var(--space-3) 0 0;font-size:var(--text-sm);line-height:1.85}.why-list{padding:0;list-style:none}.why-list li{display:flex;gap:var(--space-3);font-size:var(--text-sm);margin-bottom:var(--space-3)}.why-list .icon{color:var(--green);width:17px;height:17px;margin-top:3px}
/* The practice surface. */
.trainer-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:var(--space-6);align-items:start}.tasks-nav{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-2);background:var(--surface);position:sticky;top:var(--space-5)}.tasks-nav .nav-label{font-size:var(--text-xs);letter-spacing:.035em;padding:0 var(--space-3)}.task-nav-item{display:flex;gap:var(--space-3);width:100%;padding:var(--space-3);align-items:flex-start;text-align:left;border-radius:var(--radius-sm);min-height:70px}.task-nav-item>span:first-child{font-size:var(--text-xs);color:var(--faint);font-weight:700;line-height:1.9}.task-nav-item>span:last-child{flex:1;min-width:0}.task-nav-item strong{font-size:var(--text-xs);font-weight:650;display:block}.task-nav-item small{font-size:var(--text-xs);color:var(--muted);display:block;margin-top:var(--space-1);line-height:1.5}.task-nav-item.active{background:var(--green-soft);color:var(--green-dark)}.task-nav-item.active>span:first-child{color:var(--green)}.task-nav-item:hover{background:var(--surface-alt)}.task-nav-item>.icon{width:16px;height:16px}.task-help{display:flex;gap:var(--space-2);padding:var(--space-4) var(--space-3) 0;border-top:1px solid var(--border);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--muted)}.task-help .icon{width:15px;height:15px;margin-top:4px}.task-help p{margin:0;line-height:1.8}.training-area{min-width:0}.task-brief{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-5)}.xp-award{display:flex;gap:var(--space-1);align-items:center;font-size:var(--text-xs);color:var(--green-dark);font-weight:650;white-space:nowrap}.xp-award .icon{width:15px;height:15px}.task-brief h2{font-size:var(--text-lg);margin-bottom:var(--space-4)}.brief-text{font-size:var(--text-sm);line-height:1.85;color:var(--muted);white-space:normal}.task-brief h3{font-size:var(--text-sm);margin:var(--space-5) 0 var(--space-3)}.requirements{list-style:none;padding:0;margin:0}.requirements li{display:flex;gap:var(--space-2);font-size:var(--text-xs);line-height:1.8;margin:var(--space-2) 0}.requirements .icon{width:16px;height:16px;color:var(--green);margin-top:3px}.hint-details{border-top:1px solid var(--border);margin-top:var(--space-5);padding-top:var(--space-2);font-size:var(--text-xs);color:var(--muted)}.hint-details summary{font-weight:650;list-style:none;display:flex;gap:var(--space-2);color:var(--green-dark)}.hint-details summary .icon{width:16px;height:16px}.hint-details p{line-height:1.9;margin:var(--space-2) 0}.prompt-editor{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);overflow:hidden}.editor-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.editor-topline label{margin:0;font-size:var(--text-sm)}.editor-topline>span{font-size:var(--text-xs);color:var(--faint);display:flex;align-items:center;gap:var(--space-1)}.editor-topline>span>.icon{width:12px;height:12px}.prompt-editor textarea{border:0;border-radius:0;padding:var(--space-5);min-height:250px;line-height:1.85;font-size:var(--text-sm)}.prompt-editor textarea:focus{box-shadow:inset 0 0 0 2px var(--green-soft)}.editor-bottomline{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-5);font-size:var(--text-xs);color:var(--faint);border-top:1px solid var(--border)}.editor-bottomline .text-btn{font-size:var(--text-xs);min-height:32px}.editor-bottomline .icon{width:15px;height:15px}.editor-actions{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-5) 0 var(--space-6);flex-wrap:wrap}.evaluation-mode{font-size:var(--text-xs);color:var(--muted);display:flex;gap:var(--space-2);align-items:center}.evaluation-mode .icon{width:14px;height:14px}.task-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:var(--space-4);margin-top:var(--space-6);gap:var(--space-3);font-size:var(--text-xs);color:var(--muted)}.task-footer .text-btn{font-size:var(--text-xs)}.task-footer .icon{width:15px;height:15px}.evaluation-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-6);margin-top:var(--space-6);animation:appear .25s ease-out}.evaluation-summary{display:flex;gap:var(--space-5);align-items:center}.score-circle{width:85px;height:85px;border-radius:50%;border:5px solid var(--surface-alt);display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.score-circle.good{border-color:var(--green)}.score-circle strong{font-size:1.7rem;line-height:1.2;font-weight:800}.score-circle span{font-size:var(--text-xs);color:var(--muted)}.evaluation-summary h2{font-size:var(--text-lg);margin:var(--space-2) 0}.evaluation-summary p{font-size:var(--text-xs);color:var(--muted);line-height:1.8;margin:0}.heuristic-notice{font-size:var(--text-xs);line-height:1.8;color:var(--muted);padding:var(--space-4);background:var(--surface-alt);border-radius:var(--radius-sm);margin:var(--space-5) 0}.criteria-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-6);margin:var(--space-6) 0}.criterion>div:first-child{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-xs)}.criterion b{font-weight:650;white-space:nowrap}.bar{height:5px;border-radius:5px;background:var(--surface-alt);margin:var(--space-2) 0}.bar i{display:block;height:100%;background:var(--green);border-radius:inherit}.criterion small{font-size:var(--text-xs);color:var(--muted);line-height:1.7;display:block}.result-requirements{list-style:none;padding:0;margin:var(--space-4) 0}.result-requirements li{display:flex;gap:var(--space-2);font-size:var(--text-xs);margin-bottom:var(--space-3)}.result-requirements .icon{width:16px;height:16px;margin-top:3px}.result-requirements .met>.icon{color:var(--green)}.result-requirements .unmet>.icon{color:var(--muted)}.result-requirements small{display:block;color:var(--muted);margin-top:var(--space-1)}.improve-box{background:var(--mint);padding:var(--space-5);border-radius:var(--radius-md);margin-top:var(--space-5)}.improve-box h3{font-size:var(--text-sm)}.improve-box ul{font-size:var(--text-xs);line-height:1.9;padding-left:var(--space-4);margin-bottom:0}.success-inline{display:flex;gap:var(--space-2);font-size:var(--text-xs);color:var(--green-dark);margin-top:var(--space-5)}
/* Builder, free mode, profile, and admin. */
.builder-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:start}.builder-form,.builder-preview{background:var(--surface);border:1px solid var(--border);padding:var(--space-6);border-radius:var(--radius-lg)}.builder-steps{display:flex;gap:var(--space-3);margin-bottom:var(--space-8);border-bottom:1px solid var(--border);padding-bottom:var(--space-4)}.builder-steps button{font-size:var(--text-xs);display:flex;gap:var(--space-2);align-items:center;color:var(--faint);padding:var(--space-2) 0;min-height:44px}.builder-steps button span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--surface-alt);font-weight:750}.builder-steps button.active{color:var(--green-dark);font-weight:750}.builder-steps button.active span{color:var(--surface);background:var(--green)}.builder-form h2{font-size:var(--text-lg);margin-bottom:var(--space-6)}.builder-form label{font-size:var(--text-sm)}.builder-form textarea{resize:vertical}.builder-controls{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.builder-preview{position:sticky;top:var(--space-6);background:var(--mint)}.builder-preview .card-topline{align-items:flex-start;flex-wrap:wrap}.builder-preview .small-tag{font-size:var(--text-xs);letter-spacing:.015em}.builder-preview pre{font:var(--text-sm)/1.85 var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere;min-height:275px;background:var(--surface);padding:var(--space-5);border-radius:var(--radius-md);margin:var(--space-6) 0}.builder-preview-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.builder-preview-actions .btn{font-size:var(--text-xs);padding:var(--space-3) var(--space-4)}.builder-preview>.field-help{margin:var(--space-5) 0 0}.free-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-6)}.free-layout .prompt-editor textarea{min-height:335px}.free-aside{padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-self:start}.free-aside h2{font-size:var(--text-lg);margin-bottom:var(--space-3)}.free-aside>p{font-size:var(--text-xs);color:var(--muted)}.idea-button{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:50px;font-size:var(--text-xs);font-weight:650;border-bottom:1px solid var(--border);text-align:left;padding:var(--space-3) 0}.idea-button .icon{width:16px;height:16px;color:var(--green)}.idea-button>.icon:last-child{margin-left:auto;width:14px;height:14px}.privacy-card{padding-top:var(--space-6);margin-top:var(--space-4)}.privacy-card>.icon{color:var(--faint);width:22px;height:22px}.privacy-card h3{font-size:var(--text-sm);margin:var(--space-3) 0 var(--space-2)}.privacy-card p{font-size:var(--text-xs);line-height:1.8;color:var(--muted);margin:0}.route-notice.compact{align-items:flex-start;margin:var(--space-5) 0}.route-notice.compact>.icon{margin-top:var(--space-1)}.llm-answer{font-size:var(--text-sm);line-height:1.9;margin-top:var(--space-5);overflow-wrap:anywhere}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-10)}.profile-stats>div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);position:relative}.profile-stats .icon{color:var(--green);position:absolute;right:var(--space-5);top:var(--space-5);width:19px;height:19px}.profile-stats span{display:block;font-size:var(--text-xs);color:var(--muted);padding-right:var(--space-6)}.profile-stats strong{display:block;font-size:var(--text-xl);letter-spacing:-.04em;margin-top:var(--space-5);font-weight:750}.section-title{margin-bottom:var(--space-6)}.badges-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-10)}.badge-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6) var(--space-5);text-align:center;background:var(--surface)}.badge-card>.icon{width:38px;height:38px;color:var(--faint);margin-bottom:var(--space-4);stroke-width:1.2}.badge-card h3{font-size:var(--text-sm)}.badge-card p{font-size:var(--text-xs);color:var(--muted);margin:var(--space-2) 0 var(--space-4)}.badge-card>span{font-size:var(--text-xs);color:var(--faint)}.badge-card.earned{background:var(--mint);border-color:var(--mint-strong)}.badge-card.earned>.icon,.badge-card.earned>span{color:var(--green-dark)}.history-section,.account-settings{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);margin-top:var(--space-6)}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-xs);text-align:left}th{color:var(--muted);font-weight:600;background:var(--surface-alt)}th,td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:top}td p{margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--text-xs);max-width:420px;overflow-wrap:anywhere}td:nth-child(n+2){white-space:nowrap}td strong{font-weight:650}.score-badge{display:inline-block;background:var(--green-soft);color:var(--green-dark);padding:var(--space-1) var(--space-2);border-radius:6px}.empty-state,.access-card{text-align:center;padding:var(--space-12) var(--space-6)}.empty-state>.icon,.access-card>.icon{width:42px;height:42px;color:var(--green);margin-bottom:var(--space-5);stroke-width:1.4}.empty-state h3,.access-card h2{margin-bottom:var(--space-3)}.empty-state p,.access-card p{font-size:var(--text-sm);color:var(--muted);max-width:500px;margin:0 auto var(--space-6)}.access-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.account-settings>.muted{font-size:var(--text-xs);margin:var(--space-3) 0}.account-forms{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.account-forms form>.btn{margin-top:var(--space-5)}.admin-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6)}.admin-card h2{font-size:var(--text-lg);margin-bottom:var(--space-5)}.admin-card form>.btn{margin-top:var(--space-6)}.check-label{display:flex;align-items:center;gap:var(--space-3)}.check-label input{width:18px;height:18px;min-height:18px;accent-color:var(--green)}.users-section{margin-top:var(--space-6)}.users-section .text-btn{font-size:var(--text-xs)}.skeleton-panel{height:400px;border-radius:var(--radius-lg);background:linear-gradient(110deg,var(--surface-alt) 25%,var(--surface) 40%,var(--surface-alt) 55%);background-size:200% 100%;animation:shimmer 1.5s infinite}
/* Companion and focus-preserving dialogs. */
.assistant-launch{position:fixed;bottom:var(--space-6);right:var(--space-6);height:58px;border-radius:99px;box-shadow:0 6px 24px #16331b18;display:flex;align-items:center;gap:var(--space-2);border:1px solid var(--border);background:var(--surface);z-index:25;padding:0 var(--space-5) 0 var(--space-1)}.assistant-launch img{width:65px;height:65px;margin-top:-10px}.assistant-launch>span{font-size:var(--text-xs);font-weight:700}.assistant-launch>i{width:6px;height:6px;margin-left:var(--space-1)}.assistant-panel{position:fixed;right:var(--space-6);bottom:var(--space-6);width:360px;max-height:min(640px,calc(100dvh - 32px));background:var(--surface);box-shadow:0 15px 70px #11231830;border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;z-index:60;overflow:hidden;animation:appear .2s ease-out}.assistant-panel>header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--mint);border-bottom:1px solid var(--border)}.assistant-panel>header>img{width:48px;height:48px}.assistant-panel>header>div{flex:1}.assistant-panel>header strong{font-size:var(--text-sm)}.assistant-panel>header span{display:block;font-size:var(--text-xs);color:var(--muted)}.assistant-messages{padding:var(--space-4);overflow-y:auto;min-height:180px;max-height:360px;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--space-3)}.chat-message{font-size:var(--text-xs);line-height:1.85;background:var(--surface-alt);padding:var(--space-3) var(--space-4);border-radius:12px 12px 12px 3px;max-width:95%;overflow-wrap:anywhere}.chat-message.from-user{background:var(--green-soft);align-self:flex-end;border-radius:12px 12px 3px 12px}.chat-message.typing{color:var(--faint)}.assistant-suggestions{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0 var(--space-4) var(--space-3)}.assistant-suggestions button{font-size:var(--text-xs);padding:var(--space-1) var(--space-3);min-height:34px;border:1px solid var(--border);border-radius:99px;color:var(--green-dark)}.assistant-panel form{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border)}.assistant-panel form input{font-size:var(--text-xs);min-width:0}.assistant-panel form .icon-btn{background:var(--green);color:var(--surface)}.assistant-caveat{font-size:var(--text-xs);color:var(--faint);line-height:1.5;padding:0 var(--space-4) var(--space-3);margin:0}.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;background:var(--overlay);backdrop-filter:blur(5px);z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.modal{position:relative;max-height:calc(100dvh - 40px);overflow-y:auto;max-width:820px;width:100%;padding:var(--space-8);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);animation:appear .2s ease-out;overscroll-behavior:contain}.modal-close{position:absolute;right:var(--space-3);top:var(--space-3);z-index:1;background:var(--surface)}.modal>#modal-title{font-size:var(--text-xl);padding-right:var(--space-8);margin:var(--space-3) 0 var(--space-4)}.modal>.muted{font-size:var(--text-sm);line-height:1.8}.modal video{width:100%;aspect-ratio:16/9;border-radius:var(--radius-md);background:#132219;margin:var(--space-4) 0}.modal-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-6) 0 var(--space-4)}#toast{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%,20px);opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;max-width:min(600px,calc(100vw - 40px));background:var(--text);color:var(--surface);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:550;box-shadow:var(--shadow);z-index:120}#toast.visible{opacity:1;transform:translate(-50%,0)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{to{background-position:-200% 0}}
/* Intentional responsive layouts, no clipped controls. */
@media(min-width:1600px){.start-card{min-height:340px}.dashboard-mascot{width:300px;height:300px;right:0}.start-copy{width:60%}.landing{padding-top:var(--space-3)}.landing-main{gap:100px}}
@media(max-width:1200px){.app-shell{grid-template-columns:216px minmax(0,1fr)}.sidebar{padding-inline:var(--space-3)}.sidebar .brand{margin-inline:var(--space-2);font-size:1.35rem;gap:var(--space-2)}.brand small{font-size:var(--text-xs)}.sidebar .brand small{font-size:var(--text-xs);letter-spacing:-.055em}.nav-item{gap:var(--space-2);padding-inline:var(--space-3);font-size:var(--text-xs)}.nav-item small{display:none}.app-main{padding-inline:var(--space-6)}.app-header{padding-inline:var(--space-6)}.start-card{padding:var(--space-6)}.dashboard-top{grid-template-columns:minmax(0,1fr) 230px;gap:var(--space-4)}.start-copy{width:72%}.start-copy .small-tag{max-width:220px;line-height:1.6}.dashboard-mascot{width:205px;height:205px;right:-42px;bottom:55px}.mascot-caption{font-size:var(--text-xs);right:var(--space-3);bottom:var(--space-3)}.start-meta>span{display:none}.trainer-layout{grid-template-columns:195px minmax(0,1fr);gap:var(--space-4)}.task-nav-item{gap:var(--space-2)}.editor-topline>span{display:none}.reading-layout{grid-template-columns:minmax(0,1fr) 210px;gap:var(--space-4)}.lesson-article{padding:var(--space-6)}.header-right{gap:var(--space-3)}.free-layout{grid-template-columns:minmax(0,1fr) 225px}.builder-preview-actions{flex-direction:column}.hero-description{max-width:410px}.landing-main{gap:var(--space-10)}.landing-mascot{width:175px;height:175px;right:-24px;bottom:8px}.hero-demo{padding:var(--space-4)}.demo-content{width:82%}.prompt-after{font-size:var(--text-xs)}.auth-card{padding:var(--space-6)}.auth-column{max-width:365px}.landing-hero h1{font-size:clamp(2.15rem,4vw,3rem)}}
@media(max-width:1000px){.landing{padding-inline:var(--space-8)}.landing-main{grid-template-columns:1fr 340px;gap:var(--space-8);padding-top:var(--space-10)}.landing-hero h1{font-size:2.35rem}.hero-description{font-size:var(--text-sm)}.benefit-line{flex-direction:column;gap:var(--space-2)}.hero-demo{margin-top:var(--space-6)}.landing-mascot{display:none}.demo-content{width:100%}.dashboard-top{grid-template-columns:1fr}.start-card{min-height:280px}.start-copy{width:65%}.dashboard-mascot{width:245px;height:245px;right:var(--space-2);bottom:var(--space-3)}.mascot-caption{right:var(--space-4)}.progress-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-4);padding:var(--space-5)}.progress-card .card-topline{margin:0}.progress-ring{display:none}.progress-details{padding:0;border:none;grid-column:2;grid-row:1 / 3}.level-label{margin:0}.route-notice{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-4)}.route-notice p{min-width:200px}.route-notice .text-btn{margin-left:var(--space-8)}.reading-layout{grid-template-columns:1fr}.reading-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.reading-aside .mentor-tip{padding:var(--space-4)}.video-poster{height:160px}.trainer-layout{grid-template-columns:1fr}.tasks-nav{position:static;padding:var(--space-2);display:flex;overflow-x:auto;gap:var(--space-1);border-radius:var(--radius-md);max-width:100%}.tasks-nav .nav-label,.task-help{display:none}.task-nav-item{min-width:200px;max-width:210px;min-height:70px;align-items:center}.free-layout{grid-template-columns:1fr}.free-aside{display:grid;grid-template-columns:repeat(3,1fr);column-gap:var(--space-4)}.free-aside h2,.free-aside>p{grid-column:1/-1}.privacy-card{grid-column:1/-1;padding-top:var(--space-4);margin-top:var(--space-4);border-top:1px solid var(--border)}.privacy-card>.icon{float:left;margin-right:var(--space-3);margin-top:var(--space-1)}.privacy-card h3{margin-top:0}.builder-layout{grid-template-columns:1fr}.builder-preview{position:static}.builder-preview-actions{flex-direction:row}.builder-preview pre{min-height:160px}.badges-grid,.profile-stats{grid-template-columns:repeat(2,1fr)}.account-forms,.admin-layout{grid-template-columns:1fr}.lesson-row{padding:var(--space-4)}.lesson-row-text small{max-width:350px}.completed-tag{display:none}.module-header>small{display:none}.next-stage{padding:var(--space-6);flex-direction:column;align-items:flex-start}.next-stage .btn{align-self:flex-start}.examples-grid{gap:var(--space-4)}.example-card{padding:var(--space-5)}.example-bottom{align-items:flex-start;flex-direction:column}.assistant-launch>span{display:none}.assistant-launch{width:62px;padding:0;justify-content:center;height:62px}.assistant-launch>i{position:absolute;right:8px;top:9px}.app-footer{padding-bottom:var(--space-8)}}
@media(max-width:760px){.landing{padding-inline:var(--space-5)}.landing-header{height:82px}.landing-header .brand{font-size:1.5rem}.landing-header nav{gap:var(--space-2)}.secure-note,.nav-divider,.landing-header nav>button:first-child{display:none}.landing-main{grid-template-columns:1fr;gap:var(--space-8);padding:var(--space-8) 0}.landing-hero h1{font-size:clamp(2.15rem,6.5vw,3.2rem);max-width:560px}.hero-description{max-width:500px;font-size:var(--text-sm);margin:var(--space-5) 0}.landing-hero .eyebrow{font-size:var(--text-xs);margin-bottom:var(--space-4)}.benefit-line{flex-direction:row;flex-wrap:wrap;gap:var(--space-3)}.hero-demo{min-height:0;margin-top:var(--space-6);max-width:none;padding:var(--space-5)}.demo-content{width:82%}.landing-mascot{display:block;width:175px;height:175px;right:-12px;bottom:6px}.prompt-after{font-size:var(--text-xs);max-width:390px}.demo-content>.tiny-label{font-size:var(--text-xs);letter-spacing:0}.auth-column{max-width:100%;justify-self:stretch;padding-top:0}.auth-card{padding:var(--space-6);max-width:520px;margin:auto}.auth-reassurance{max-width:520px;margin:auto}.learning-path-public{padding:var(--space-8) 0}.learning-path-public .section-heading{align-items:flex-start}.learning-path-public .section-heading>p{display:none}.path-strip{grid-template-columns:1fr 1fr;gap:var(--space-6)}.path-strip article:last-child{grid-column:1/-1}.path-strip article:last-child p{margin-bottom:0}.landing-footer{flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs)}.landing-footer>span:nth-child(2){order:3;width:100%}
 .app-shell{display:block}.sidebar{position:fixed;top:0;left:0;bottom:0;height:100dvh;width:260px;transform:translateX(-100%);transition:transform .22s;z-index:70;padding-top:var(--space-8)}.sidebar .brand{font-size:1.55rem;margin-bottom:var(--space-10)}.sidebar .nav-item{font-size:var(--text-sm);padding:var(--space-3) var(--space-4)}.mobile-toggle{display:grid}.mobile-close{display:grid;position:absolute;top:var(--space-1);right:var(--space-1);width:34px;height:34px}.menu-open .sidebar{transform:translateX(0)}.menu-open .sidebar-shade{display:block;position:fixed;inset:0;background:var(--overlay);backdrop-filter:blur(2px);z-index:65}.app-header{height:70px;padding:0 var(--space-4);gap:var(--space-2)}.breadcrumb{gap:var(--space-2)}.breadcrumb>span,.breadcrumb>.icon{display:none}.breadcrumb strong{font-size:var(--text-xs)}.header-right{gap:var(--space-2)}.header-right>.icon-btn{width:36px}.user-name{display:none}.user-button{padding:0}.avatar{width:32px;height:32px}.xp-pill{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.xp-pill .icon{width:13px;height:13px}.app-main{padding:var(--space-6) var(--space-4) var(--space-8)}.page-heading{margin-bottom:var(--space-6)}.page-heading .eyebrow{font-size:var(--text-xs);letter-spacing:.055em;line-height:1.7;margin-bottom:var(--space-3)}.page-heading h1{font-size:1.8rem;line-height:1.25}.page-heading p{font-size:var(--text-sm);line-height:1.8}.start-card{padding:var(--space-6);min-height:300px}.start-copy{width:68%}.start-copy h2{font-size:1.4rem;margin-top:var(--space-3)}.start-copy p{font-size:var(--text-xs);max-width:300px;line-height:1.85}.dashboard-mascot{width:215px;height:215px;right:-25px;bottom:40px}.mascot-caption{font-size:var(--text-xs);right:12px;bottom:12px}.start-copy .btn{padding:var(--space-3) var(--space-4);font-size:var(--text-xs);min-height:46px}.start-meta{font-size:var(--text-xs)}.small-tag{font-size:var(--text-xs);letter-spacing:.025em}.progress-card{padding:var(--space-4)}.route-notice{margin:var(--space-4) 0 var(--space-8)}.route-notice p{font-size:var(--text-xs)}.curriculum .section-heading{margin-bottom:var(--space-5)}.section-heading h2{font-size:var(--text-lg)}.section-heading p{font-size:var(--text-xs)}.section-heading .count-chip{font-size:var(--text-xs)}.module-header{gap:var(--space-2)}.module-header h3{font-size:var(--text-xs);line-height:1.7}.lesson-row{gap:var(--space-2);padding:var(--space-4) var(--space-3)}.lesson-row-text strong{font-size:var(--text-sm);line-height:1.65}.lesson-row-text small{font-size:var(--text-xs);line-height:1.7}.lesson-index{width:22px;font-size:var(--text-xs)}.lesson-time{font-size:var(--text-xs);margin-left:var(--space-2)}.lesson-time .icon{display:none}.lesson-row>.icon{width:12px;height:12px}.next-stage h2{font-size:var(--text-lg)}.next-stage p{font-size:var(--text-sm)}.app-footer{padding:var(--space-4) var(--space-5) var(--space-20);font-size:var(--text-xs)}.app-footer span:first-child{max-width:240px}.assistant-launch{right:var(--space-4);bottom:var(--space-4);width:58px;height:58px}.assistant-launch>img{width:60px;height:60px}.reading-layout{gap:var(--space-5)}.lesson-article{padding:var(--space-5)}.lesson-intro{font-size:var(--text-sm)}.lesson-article>section h2{font-size:var(--text-lg)}.lesson-article>section p{font-size:var(--text-sm)}.lesson-article>section{margin-bottom:var(--space-6)}.takeaway{padding:var(--space-4);gap:var(--space-2)}.takeaway p{font-size:var(--text-sm)}.quiz-option{padding:var(--space-3);gap:var(--space-2)}.quiz-actions{flex-direction:column;align-items:stretch}.reading-aside{gap:var(--space-4);grid-template-columns:1fr}.reading-aside .mentor-tip{display:none}.video-poster{height:auto;aspect-ratio:16/9}.video-card{max-width:440px}.examples-grid{grid-template-columns:1fr}.example-bottom{flex-direction:row;align-items:center}.example-card h2{font-size:var(--text-lg)}.filter-tabs{gap:var(--space-2)}.filter-tabs button{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.task-brief{padding:var(--space-5)}.task-nav-item{min-width:205px}.prompt-editor textarea{min-height:240px;font-size:var(--text-sm);padding:var(--space-4)}.editor-topline{padding:var(--space-3) var(--space-4)}.editor-bottomline{padding:var(--space-2) var(--space-4)}.editor-actions{gap:var(--space-3)}.editor-actions>.btn{flex:1;white-space:nowrap;padding:var(--space-3) var(--space-4);font-size:var(--text-xs)}.evaluation-mode{width:100%;font-size:var(--text-xs)}.evaluation-card{padding:var(--space-5)}.evaluation-summary{gap:var(--space-3);align-items:flex-start}.score-circle{width:65px;height:65px;border-width:4px}.score-circle strong{font-size:1.4rem}.evaluation-summary h2{font-size:var(--text-base)}.criteria-list{grid-template-columns:1fr}.builder-form,.builder-preview{padding:var(--space-5)}.builder-steps{justify-content:space-between;gap:var(--space-2)}.builder-steps button{font-size:var(--text-xs)}.builder-preview-actions{flex-direction:column}.builder-preview pre{padding:var(--space-4)}.free-aside{grid-template-columns:1fr;padding:var(--space-5)}.free-layout .prompt-editor textarea{min-height:280px}.profile-stats{gap:var(--space-3);margin-bottom:var(--space-8)}.profile-stats>div{padding:var(--space-4)}.profile-stats>.icon{right:var(--space-4);top:var(--space-4)}.profile-stats strong{font-size:1.7rem;margin-top:var(--space-4)}.badges-grid{gap:var(--space-3)}.badge-card{padding:var(--space-5) var(--space-3)}.badge-card h3{font-size:var(--text-xs)}.badge-card p{font-size:var(--text-xs)}.history-section,.account-settings,.admin-card{padding:var(--space-5)}.history-section .section-heading{gap:var(--space-2);flex-wrap:wrap}.account-forms{gap:var(--space-6)}.modal-backdrop{padding:var(--space-3)}.modal{padding:var(--space-6) var(--space-5);max-height:calc(100dvh - 24px);border-radius:var(--radius-md)}.modal>#modal-title{font-size:1.5rem}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%;font-size:var(--text-xs)}.comparison-before,.comparison-after{padding:var(--space-4)}.assistant-panel{right:var(--space-3);bottom:var(--space-3);width:calc(100vw - 24px);max-width:390px}.assistant-messages{min-height:170px;max-height:310px}.back-link{margin-bottom:var(--space-4)}}
@media(max-width:390px){.landing-hero h1{font-size:2.2rem}.landing-header .brand{font-size:1.45rem}.hero-demo{padding:var(--space-4)}.demo-content{width:100%}.landing-mascot{display:none}.prompt-after{font-size:var(--text-xs)}.auth-card{padding:var(--space-5)}.start-copy{width:85%}.dashboard-mascot{width:170px;height:170px;right:-48px;bottom:75px;opacity:.75}.start-copy p{max-width:215px}.start-copy h2{font-size:1.3rem;max-width:220px}.mascot-caption{display:none}.start-copy .small-tag{font-size:var(--text-xs);max-width:205px}.start-card{padding:var(--space-5);min-height:325px}.progress-card{gap:var(--space-3)}.level-label{font-size:var(--text-xs);line-height:1.5}.progress-details{gap:var(--space-3)}.page-heading h1{font-size:1.65rem}.lesson-row>.icon{display:none}.lesson-time{font-size:var(--text-xs)}.lesson-row-text small{max-width:200px}.user-button{display:none}.breadcrumb strong{max-width:145px;line-height:1.4}.route-notice .text-btn{margin-left:0}.route-notice p{min-width:230px}.profile-stats .icon{width:16px;height:16px;right:var(--space-3)}.profile-stats span{max-width:120px;font-size:var(--text-xs)}}
.mobile-auth{display:none}.nav-item small{opacity:1;color:var(--muted)}.nav-item.active small,.task-nav-item.active>span:first-child,.task-nav-item.active small{color:var(--green-dark)}
@media(max-width:760px){.mobile-auth{display:block;color:var(--green-dark)}.sidebar{overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:390px){.dashboard-mascot{width:155px;height:155px;right:-4px;bottom:75px;opacity:1}.start-copy p{max-width:195px}.landing-header .brand{font-size:1.35rem;gap:8px}.landing-header .brand small{display:none}}
/* Preserve the editor's size while bringing the start of a long answer into view. */
.free-layout>section{min-width:0}
.generation-result .llm-answer{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.generation-result .small-tag{margin-bottom:var(--space-3)}
.generation-status{font-size:var(--text-sm);margin:var(--space-4) 0}
.result-focus-target{scroll-margin-top:var(--result-scroll-offset,calc(var(--space-20) + var(--space-4)))}
.result-focus-target:focus{outline:2px solid var(--green);outline-offset:var(--space-2);border-radius:var(--radius-sm)}
.user-role-cell{min-width:180px}
.user-role-controls{display:grid;justify-items:start;gap:var(--space-1)}
.user-role-controls .field-help{margin:0;max-width:200px;white-space:normal}
#user-role-summary{overflow-wrap:anywhere}
#user-role-form .modal-actions{margin-bottom:0}

/* Connection console: scoped additions retain the approved green design. */
.admin-layout:has(.llm-card){grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}
.llm-card{min-width:0}
.llm-card .llm-intro{margin-top:calc(-1 * var(--space-2));font-size:var(--text-sm)}
.llm-fields{border:0;padding:0;margin:0;min-width:0}
.llm-fields>label{display:block}
.llm-fields>.check-label{display:flex}
.llm-fields [hidden]{display:none}
.llm-fields #llm-auth-settings,.llm-fields #llm-scope-settings{margin-bottom:var(--space-4)}
.llm-provider-load-status:empty{display:none}
.llm-provider-load-status>.btn{margin-bottom:var(--space-4);font-size:var(--text-xs)}
.llm-fields input,.llm-fields select{max-width:100%;min-width:0}
.llm-fields select{text-overflow:ellipsis}
.llm-fields input:disabled,.llm-fields select:disabled{opacity:.65;cursor:wait}
.llm-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:var(--space-6) 0 var(--space-2);flex-wrap:wrap}
.llm-catalog-heading label{margin:0}
.llm-catalog-heading .btn{font-size:var(--text-xs);padding:var(--space-2) var(--space-3);min-height:44px}
.llm-check-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.llm-check-actions .btn{font-size:var(--text-sm);white-space:normal}
.llm-check-help{margin-bottom:0}
.llm-status{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);margin-top:var(--space-5);font-size:var(--text-sm);overflow-wrap:anywhere}
.llm-status-heading{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}
.llm-status-heading>.icon,.llm-status-heading>.spinner{flex-shrink:0}
.llm-status p{margin:var(--space-2) 0 0;color:var(--muted);line-height:1.65}
.llm-status[data-state="pass"]{background:var(--green-soft)}
.llm-status[data-state="pass"] .llm-status-heading{color:var(--green-dark)}
.llm-status[data-state="failure"]{background:var(--error-soft)}
.llm-status[data-state="failure"] .llm-status-heading{color:var(--error)}
.llm-duration{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--muted);margin-left:auto;white-space:nowrap}
.llm-test-reply{border-top:1px solid var(--border);padding-top:var(--space-3);margin-top:var(--space-3)}
.llm-test-reply p{white-space:pre-wrap;color:var(--text)}
.llm-generation-confirm{background:var(--surface-alt);border:1px solid var(--border);padding:var(--space-4);margin-top:var(--space-5);border-radius:var(--radius-md)}
.llm-generation-confirm[hidden]{display:none}
.llm-generation-confirm h3{font-size:var(--text-base);margin:0 0 var(--space-2)}
.llm-generation-confirm p{font-size:var(--text-sm);color:var(--muted);margin:0 0 var(--space-4)}
.llm-save-area{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}
.llm-unsaved{margin:0 0 var(--space-4);font-size:var(--text-xs);color:var(--muted)}
.llm-unsaved.has-changes{color:var(--text);font-weight:600}
@media(max-width:1000px){.admin-layout:has(.llm-card){grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.llm-check-actions{flex-direction:column}.llm-check-actions .btn,.llm-save-area>.btn{width:100%}.llm-catalog-heading{align-items:stretch;flex-direction:column}.llm-catalog-heading .btn{width:100%}.llm-duration{margin-left:0}}

/* Persistent prompt-assessment feedback, shared by trainer and free practice. */
.evaluation-pending,.evaluation-fallback{margin-top:var(--space-5);padding:var(--space-4);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);overflow-wrap:anywhere}
.evaluation-pending>strong{display:flex;align-items:center;gap:var(--space-3)}
.evaluation-pending .spinner{display:inline-block;flex-shrink:0}
.evaluation-pending p,.evaluation-fallback p{margin:var(--space-2) 0 0;color:var(--muted)}
.evaluation-fallback h3{font-size:var(--text-base);margin:0}
.evaluation-caution{font-size:var(--text-sm);font-weight:600;color:var(--text)!important}
.evaluation-mode-result{margin:var(--space-5) 0 calc(-1 * var(--space-3));font-size:var(--text-sm);color:var(--green-dark);overflow-wrap:anywhere}
#evaluation-error{margin-top:var(--space-5);overflow-wrap:anywhere}

/* 5.0.4: distinguish saved task completion from the current attempt. */
.task-list-status{display:block;font-size:var(--text-xs);font-weight:600;line-height:1.5;color:var(--muted);margin-top:var(--space-1)}
.task-list-status.done{color:var(--green-dark);font-weight:750}
.task-nav-item.task-done>span:first-child{color:var(--green-dark)}
.task-completion{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);margin:var(--space-4) 0}
.task-completion.done{background:var(--green-soft);color:var(--green-dark)}
.task-completion>.icon{flex-shrink:0;margin-top:2px}
.task-completion strong{display:block;font-size:var(--text-sm)}
.task-completion span{display:block;font-size:var(--text-xs);line-height:1.65;margin-top:var(--space-1);color:var(--muted)}
.task-pass-rule{font-size:var(--text-xs);line-height:1.75;color:var(--muted)}
.task-pass-rule strong{color:var(--text)}
.task-button-threshold{font-size:var(--text-sm);color:var(--muted)}
.task-button-threshold strong{color:var(--green-dark);white-space:nowrap}
.task-brief .card-topline{flex-wrap:wrap}
.task-brief .xp-award{white-space:normal}
.attempt-outcome{font-size:var(--text-sm);line-height:1.8;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-alt);margin:var(--space-5) 0 0}
.evaluation-card .success-inline{font-weight:650;line-height:1.7}
.evaluation-card .success-inline .icon{flex-shrink:0;margin-top:3px}
.history-result{min-width:145px}
.history-outcome,.history-result>small{display:block;font-size:var(--text-xs);line-height:1.65;margin-top:var(--space-1)}
.history-result>small{color:var(--muted)}
.score-badge.neutral{background:var(--surface-alt);color:var(--text)}
@media(max-width:480px){.task-button-threshold{flex-basis:100%;margin-top:calc(-1 * var(--space-2))}.task-completion{padding:var(--space-3)}}
@media(max-width:600px){
 .history-section table,.history-section tbody{display:block;width:100%}
 .history-section thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .history-section tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2) var(--space-3);padding:var(--space-4) 0;border-top:1px solid var(--border)}
 .history-section td{display:block;padding:0;border:0;min-width:0;overflow-wrap:anywhere}
 .history-section td:first-child,.history-section .history-result{grid-column:1/-1}
 .history-section td:first-child p{line-height:1.7;margin:var(--space-2) 0}
 .history-section td:nth-child(2),.history-section td:nth-child(3){color:var(--muted)}
 .history-section .history-result{padding:var(--space-3);background:var(--surface-alt);border-radius:var(--radius-sm);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}
 .history-result .history-outcome{margin:0;font-weight:650}
 .history-result>small{flex-basis:100%;margin:0}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
