/* Quiet classroom palette; amber is reserved for the current action/concept. */
:root{--room:#e9e8e1;--board:#203c36;--board2:#203c36;--chalk:#f4f2e9;--chalk-dim:#c3cec6;--focus:#ebcc83;--mint:#bacfc2;--coral:#edb19d;--ink:#263c34;--wood:#68766a;--line:rgba(238,242,232,.16);--soft:rgba(238,242,232,.035);--shadow:0 12px 36px rgba(32,49,42,.12)}
body{padding:20px 14px 32px}.shell{width:min(1160px,100%)}
.board{border-width:5px;border-radius:20px;overflow:clip;background:var(--board)}
.board:before{opacity:.018}.chalk-tray{height:5px;background:#68766a;box-shadow:none;margin-inline:24px}
.board-inner{padding:0 28px 24px;min-height:min(820px,calc(100svh - 60px))}
.toolbar{position:sticky;top:0;z-index:5;background:var(--board);padding:12px 0;gap:8px;min-height:64px}
.brand{font-weight:800}.iconbtn{background:transparent;min-height:42px;font-weight:650;border-color:transparent}.iconbtn:hover{background:rgba(255,255,255,.05)}
#parentBtn{border-color:rgba(238,242,232,.28);margin-left:4px}#parentBtn[aria-expanded=true]{background:var(--chalk);color:var(--ink)}
.lesson-meta{margin-top:12px}.prompt{margin:26px auto 16px;max-width:730px}.teacher{font-weight:750;line-height:1.65;font-size:clamp(22px,2.5vw,30px)}.kicker{font-weight:550;font-size:13px;margin-bottom:10px}
.workarea{min-height:340px;padding:8px 0 24px}.scene{min-height:320px;gap:20px}.actionbar{padding:12px 0 4px;gap:14px}
.btn{border-radius:12px;font-weight:750;box-shadow:none!important}.btn.primary{color:#293a2d}.btn.secondary{background:rgba(255,255,255,.045)}
.coach-box{border-color:transparent;background:transparent;padding:12px 20px}.coach-controls{margin:22px 0 14px}.quiet{line-height:1.7}.entry-card{border:1px solid var(--line);background:var(--soft);margin:0 0 28px;padding:24px}.entry-card h2{font-size:27px;font-weight:750;margin:8px 0}.entry-card .micro{font-weight:550}
.catalog-head{text-align:left;margin:0 0 14px}.catalog-head h1{font-size:19px;font-weight:750}.catalog-head p{font-size:13px;font-weight:500}.grade-tabs{justify-content:flex-start;gap:8px;margin:18px 0 24px}.grade-tab{border-radius:9px;font-weight:650;min-height:42px}.grade-tab.active{background:rgba(238,242,232,.13);border-color:var(--chalk-dim);color:var(--chalk)}
.course-grid{gap:14px}.course-card{padding:18px;gap:10px;border-radius:13px;background:transparent}.course-card .name{font-weight:750;font-size:16px}.course-card .desc{font-weight:450}.badge.live{background:transparent;border-color:var(--line);color:var(--chalk-dim)}.path-note{color:var(--chalk-dim);font-size:12px}.course-card.muted{opacity:.7}.exam-box{background:transparent;border-color:var(--line);margin-top:24px}.exam-box h2{font-size:17px}
/* Modal drawer: independent scroll, fixed close control, no page jump. */
dialog.parent{position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;border-left:1px solid #c7cec3;border-radius:20px 0 0 20px;background:#f5f4ec;color:#293e35;box-shadow:-12px 0 50px #0b201f35;overflow:hidden;font-size:15px;line-height:1.75;z-index:10001}
dialog.parent:not([open]){display:none!important}dialog.parent[open]{display:flex;flex-direction:column}dialog.parent::backdrop{background:rgba(10,24,22,.54)}
.parent-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;padding:20px 22px 16px;border-bottom:1px solid #dce0d4;background:#f5f4ec}.parent-head h2{font-size:23px;line-height:1.4;margin:4px 0 0}.parent-eyebrow{font-size:12px;color:#53685c;letter-spacing:.06em}.parent button{background:#e5eadf;color:#263c34;border:1px solid #bec9bb;min-height:44px;font-size:14px}.parent-head button{white-space:nowrap;margin:0;padding:8px 12px}.parent-body{padding:6px 22px 28px;overflow:auto;overscroll-behavior:contain;flex:1;min-height:0}.parent-guide-grid{grid-template-columns:1fr;gap:10px;margin:18px 0}.parent-guide-grid>div{background:#e9ede3;padding:14px 16px}.parent h3{font-size:15px;margin:10px 0 4px}.parent h2:not(#parentHeading){font-size:18px;margin:14px 0}.parent details{margin:20px 0}.parent summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}.parent input{max-width:100%;font-size:13px}.parent hr{border:0;border-top:1px solid #d4dbce;margin:22px 0}.parent a{color:#27583e}.parent :focus-visible{outline:3px solid #35664f;outline-offset:3px}
body.parent-open{overflow:hidden}.board.parent-open{overflow:hidden!important}.parent-fallback-shade{position:fixed;inset:0;background:#0a18168a;z-index:10000}
@media(max-width:760px){body{padding:8px 5px 20px}.board{border-width:3px;border-radius:14px}.board-inner{padding:0 14px 18px;min-height:calc(100svh - 40px)}.toolbar{gap:3px;padding:8px 0;min-height:56px}.iconbtn{font-size:12px;padding:7px}.prompt{margin:22px auto 10px}.teacher{font-size:22px}.workarea{min-height:280px;padding-bottom:14px}.scene{min-height:260px}.course-grid{grid-template-columns:1fr}.coach-box{padding:8px 0}.entry-card{padding:20px 14px}.board:fullscreen .board-inner{padding:0 14px 18px}}
@media(max-width:480px){.toolbar .brand{width:auto;font-size:13px}.toolbar .spacer{min-width:8px}#audioBtn{font-size:11px}.toolbar{flex-wrap:wrap}#parentBtn{margin-left:0}.course-title{display:none}.parent-head{padding:16px}.parent-body{padding:4px 16px 24px}dialog.parent{width:100vw;border-radius:0;border:0}.entry-card h2{font-size:24px}}
.board:has(.catalog) .prompt{display:none}.board:has(.catalog) .workarea{padding-top:22px}.board:has(.catalog) .lesson-meta{min-height:22px}
.minute-number{fill:var(--chalk-dim);font-size:12px;text-anchor:middle;dominant-baseline:middle}.time-path{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:18px 8px;font-size:20px}.time-hop{font-size:15px;color:var(--focus)}.topic-path{border-top:1px solid var(--line);margin-top:24px;padding-top:14px;line-height:1.7}.topic-path summary{cursor:pointer;min-height:44px;padding:8px 0}.path-list{display:flex;flex-direction:column;align-items:stretch;gap:6px}.path-list .btn{text-align:left;font-size:14px}.parent .topic-path{border-color:#cad4c5}.parent .topic-path .quiet{color:#526052}.parent .path-list .btn.text{color:#2e4d3b}.parent .path-list .btn[aria-current]{background:#d9e4d4}
