:root{--ink:#18343d;--accent:#17616a;--paper:#f4f5f2;--line:#dce2dd;--muted:#687a80;--gold:#9b742d;--red:#9b4938}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:#22363d;font-family:"Times New Roman","SimSun","宋体",serif;font-size:17px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);padding:8px 16px}button:hover{border-color:var(--accent);background:#edf4f2}button.primary{background:var(--accent);color:white;border-color:var(--accent)}button:disabled{opacity:.55;cursor:wait}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}aside{position:fixed;width:238px;inset:0 auto 0 0;background:#17383f;color:#e6edeb;padding:30px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:14px;align-items:center;color:white;font-size:29px;padding:0 10px 30px}.brand:hover{text-decoration:none}.brand small{display:block;letter-spacing:1.5px;font-size:10px;color:#a6c2c3}.mark{font-style:italic;font-size:49px;line-height:1}.side-label{font-size:13px;color:#9eb7b8;padding:13px}.nav-item{display:flex;gap:13px;padding:11px 15px;margin:3px 0;border-radius:4px;color:#cfdddb}.nav-item.active{background:#31545a;color:white;border-left:3px solid #b9d5ca}.nav-item:hover{background:#264b52;text-decoration:none}.nav-num{font-size:12px;opacity:.65;align-self:center}.side-foot{margin-top:auto;font-size:13px;padding:16px 10px;border-top:1px solid #3e5b60}.side-foot small{font-size:12px;color:#9eb7b8}.dot{display:inline-block;width:6px;height:6px;background:#a2c7a5;border-radius:50%;margin-right:5px}.shell{margin-left:238px}header{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;font-size:15px}.separator{color:#b7c4c3;margin:0 14px}.header-right{display:flex;gap:12px}.tag{display:inline-block;font-size:13px;padding:2px 9px;border:1px solid var(--line);border-radius:3px;color:var(--muted);background:#fafbf9}.tag.warn{color:var(--red);background:#fbf1e9;border-color:#e6cfc2}.tag.good{color:#33735c;background:#eff6f1}.muted{color:var(--muted)}main{max-width:1550px;margin:auto;padding:34px 38px 50px;min-height:calc(100vh - 130px)}h1,h2,h3,p{margin-top:0}h1{font-size:31px;font-weight:600;letter-spacing:1px;margin-bottom:8px}h2{font-size:22px;font-weight:600;margin-bottom:18px}h3{font-size:18px;margin-bottom:10px}.eyebrow{font-size:12px;color:var(--accent);letter-spacing:2px;margin-bottom:9px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:26px;gap:18px}.page-head p{font-size:16px;color:var(--muted);margin-bottom:0}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card,.panel{background:white;border:1px solid var(--line);border-radius:5px;padding:23px}.metric{font-size:34px;line-height:1.4;color:var(--ink)}.metric small{font-size:16px;color:var(--muted);margin-left:7px}.card-label{font-size:14px;color:var(--muted)}.two-col{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:22px;margin-top:22px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-head h2{margin-bottom:0}.section-head{margin-bottom:20px}.hero{position:relative;overflow:hidden;background:#e8efeb;padding:29px 32px;border:1px solid #d1ded7;border-radius:5px;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.hero p{max-width:620px;margin:8px 0 18px;color:#496269}.hero h2{font-size:27px;margin:0}.formula-art{font-style:italic;color:#69837b;font-size:37px;line-height:1.9;padding:10px 30px;border-left:1px solid #cad8cf;white-space:nowrap}.small{font-size:14px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.module{padding:17px;background:#fafbf9;border:1px solid #e4e8e1;border-radius:3px;display:flex;gap:15px;align-items:center}.module-code{width:35px;color:#77968d;font-style:italic;font-size:23px}.module div{flex:1}.module strong{font-weight:normal;font-size:18px}.module small{display:block;color:var(--muted);font-size:13px}.module:hover{border-color:#90b3a7;text-decoration:none}.flow{border-left:1px solid #b9cdc4;padding-left:24px;margin-left:8px}.flow article{position:relative;margin:22px 0}.flow article:before{content:"";position:absolute;left:-29px;top:8px;width:8px;height:8px;background:#7a9d8d;border:2px solid white;border-radius:50%}.flow p{font-size:14px;color:var(--muted)}.notice{padding:13px 17px;border-left:3px solid #a78548;background:#faf6ed;color:#775d30;margin:17px 0;font-size:15px}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0;align-items:center}input,select,textarea{border:1px solid #ccd7d1;background:white;color:#243b40;padding:10px 12px;border-radius:3px;min-width:0}input[type=search]{flex:1;min-width:220px}textarea{width:100%;resize:vertical;min-height:110px}label{display:block;margin-bottom:6px;color:#516970;font-size:15px}.list-item{background:white;border:1px solid var(--line);border-radius:4px;margin-bottom:12px;padding:20px 23px;cursor:pointer}.list-item:hover{border-color:#97b3a9}.list-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-bottom:10px}.list-title{font-size:18px;line-height:1.8}.list-footer{display:flex;justify-content:space-between;margin-top:12px;font-size:13px;color:#809089}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:24px}.empty{padding:38px 20px;text-align:center;color:var(--muted);border:1px dashed #ccd7d1;background:#fafbf8}.empty strong{display:block;color:var(--ink);margin-bottom:9px}.tabs{display:flex;gap:8px;margin-bottom:20px}.tabs button.active{background:#e3eeea;border-color:#88a99b}.question-content{font-size:19px;line-height:2.15;overflow-wrap:anywhere}.question-content img{max-width:100%;height:auto;vertical-align:middle}.answer{padding:22px;background:#f5f8f3;border:1px solid #d9e3d8;margin-top:20px}.conflict{padding:17px;background:#fff8f2;border:1px solid #e9d2bd;margin:16px 0;color:#774e32}.conflict h3{color:#8a4f30}.source-line{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:18px}dialog{border:1px solid var(--line);border-radius:6px;width:min(1000px,94vw);max-height:91vh;padding:28px;color:var(--ink)}dialog::backdrop{background:#152e3970}.dialog-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.close{font-size:24px;line-height:1}.choice-row{display:flex;gap:12px;margin:20px 0}.choice-row button{width:58px}.choice-row button.selected{color:white;background:var(--accent)}.chat-entry{margin-bottom:20px}.chat-question{padding:12px 16px;background:#e9f0ec;border-radius:4px;margin-bottom:12px}.chat-answer{white-space:pre-wrap;line-height:1.9}.refs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.ref{padding:6px 10px;background:#f5f7f4;border:1px solid var(--line);font-size:14px}.five-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.five-steps span{padding:7px 12px;border:1px solid #d4e0d8;background:#f5f8f3;font-size:14px}.bar-row{display:grid;grid-template-columns:90px 1fr 55px;gap:12px;align-items:center;margin:15px 0;font-size:15px}.bar-track{height:8px;background:#edf1ea;border-radius:4px}.bar-fill{height:100%;background:#6e9a89;border-radius:4px}.path-row{display:grid;grid-template-columns:45px 1fr auto;gap:18px;align-items:center;margin:12px 0;padding:20px;background:white;border:1px solid var(--line)}.path-index{font-size:26px;color:#84a295}.path-row p{font-size:14px;color:var(--muted);margin:4px 0 0}table{width:100%;border-collapse:collapse;font-size:15px}td,th{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line)}th{font-weight:normal;color:var(--muted);background:#f6f8f5}.reading{max-width:920px}.reading p{line-height:1.9}.code{font-family:"Times New Roman","SimSun",serif;background:#f2f5f1;padding:16px;white-space:pre-wrap;font-size:15px}.sim-controls{display:grid;grid-template-columns:1fr 1fr;gap:22px}canvas{display:block;width:100%;background:#fafcf8;border:1px solid var(--line)}footer{display:flex;justify-content:space-between;color:#7d8b8c;border-top:1px solid var(--line);font-size:12px;padding:15px 38px}#toast{position:fixed;right:30px;bottom:25px;background:#193e43;color:white;padding:12px 22px;border-radius:4px;display:none;z-index:10}.split-note{padding:12px 0;border-bottom:1px solid var(--line)}.split-note p{font-size:14px;margin:4px 0;color:var(--muted)}@media(max-width:1100px){aside{width:205px}.shell{margin-left:205px}main{padding:25px}.grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.formula-art{display:none}.header-right .tag:last-child{display:none}}@media(max-width:720px){aside{position:static;width:auto;padding:14px}.brand{padding:0 10px 12px;font-size:24px}.brand small,.side-label,.side-foot{display:none}nav{display:flex;overflow-x:auto}.nav-item{white-space:nowrap;padding:8px 11px;font-size:15px}.nav-num{display:none}.shell{margin:0}header{height:55px;padding:0 17px}main{padding:20px 15px}h1{font-size:26px}.hero{padding:22px}.module-grid{grid-template-columns:1fr}.card,.panel{padding:17px}.page-head{display:block}.page-head button{margin-top:15px}.toolbar>*{max-width:100%}.grid{gap:10px}.metric{font-size:29px}footer{padding:15px;display:block}footer span{display:block}.path-row{grid-template-columns:30px 1fr}.path-row button{grid-column:2}.sim-controls{grid-template-columns:1fr}dialog{padding:17px}.tag{font-size:12px}}
/* V0.2: light course portal, top-level navigation, illustrated learning modules. */
:root{--ink:#294763;--accent:#4389cf;--paper:#f8fbff;--line:#e1eaf3;--muted:#718496;--gold:#a67c46;--red:#ad6650}body{background:#fbfcfe;color:#34495d}.shell{margin-left:0}a{color:#427db6}button{border-radius:6px;border-color:#dbe6f1;padding:10px 19px}button:hover{background:#f0f7ff;border-color:#92bce4}button.primary{background:#4b91d7;border-color:#4b91d7;box-shadow:0 5px 15px #5a96d323}button.primary:hover{background:#397fc7}input,select,textarea{border-color:#d8e4ef;border-radius:5px}input:focus,select:focus,textarea:focus{outline:2px solid #b3d7f6}.tag{background:#f8fbff;border-color:#dce8f3;color:#6f89a1}.tag.good{background:#eff8f5}.site-header{position:sticky;top:0;z-index:5;height:auto;background:#fff;border-bottom:1px solid #e5edf5;padding:0}.header-inner{max-width:1440px;width:100%;padding:0 34px;margin:auto;height:94px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;padding:0;color:#365e85;font-size:25px;font-weight:600;line-height:1.4}.brand img{width:53px;height:53px}.brand small{color:#92a8ba;letter-spacing:1.05px;font-size:10px;display:block;font-weight:normal;margin-top:3px}.brand:hover{color:#365e85;text-decoration:none}nav#nav{display:flex;margin-left:auto;gap:23px;align-items:center;white-space:nowrap}.nav-item{margin:0;padding:34px 0 29px;border:0;border-bottom:3px solid transparent;border-radius:0;color:#60788d;font-size:17px;line-height:1.5;display:block}.nav-item.active{color:#3d87d1;background:transparent;border:0;border-bottom:3px solid #6aa8e4}.nav-item:hover{background:transparent;color:#4389cf}.header-ai{font-size:15px;border:1px solid #cfe2f5;background:#f1f7fd;color:#548abb;padding:8px 13px;white-space:nowrap}.header-ai span{margin-left:7px}.context-bar{max-width:1372px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:17px 0 0;font-size:14px;color:#6383a1}.context-bar .separator{margin:0 12px}.local-badge{font-size:12px;color:#9aabb9}.is-home .context-bar{display:none}#subnav{max-width:1372px;margin:18px auto 0;display:flex;gap:26px;border-bottom:1px solid #e4edf5}#subnav:empty{display:none}.subnav-item{padding:9px 3px 12px;color:#7c90a2;font-size:17px;border-bottom:2px solid transparent}.subnav-item.active{border-bottom-color:#72ade3;color:#3b80bd}.subnav-item:hover{text-decoration:none}main{max-width:1440px;padding:32px 34px 65px;min-height:calc(100vh - 250px)}.is-home main{padding-top:24px}.page-head{margin-bottom:25px}.eyebrow{color:#8fa7bc;font-size:11px;letter-spacing:1.8px}h1{color:#365673;font-size:30px}h2{color:#3b5e7b}.panel,.card{border-color:#e1eaf2;border-radius:8px;box-shadow:0 3px 14px #36577603}.list-item{border-color:#e3ebf3;border-radius:7px}.list-item:hover{border-color:#a5c7e7;box-shadow:0 4px 12px #3f78aa07}.metric{color:#5387b7}.tabs button.active{background:#edf6ff;border-color:#b7d5ef;color:#407db4}.question-content{color:#2a4154}.answer{background:#f6faff;border-color:#dfeaf5}.notice{background:#fffaf1;border-left-color:#d4b880;color:#8a7852}.conflict{background:#fff9f3;border-color:#eddccb;border-radius:5px}.conflict h3{color:#aa7956}.chat-question{background:#eef6ff;color:#476d91}.ref{background:#f8fbff}.bar-fill{background:#8cbae4}.bar-track{background:#f0f5fa}.path-index{color:#98b8d6}.code{background:#f3f8fd;color:#57738e}.five-steps span{background:#f5faff;border-color:#e0ebf5;color:#668cae}#toast{background:#528bc1}.footer-brand{font-size:20px;color:#6c89a3}.footer-brand small{display:block;font-size:14px;color:#94a5b4;margin-top:8px}footer{max-width:1372px;margin:0 auto;padding:34px 0;font-size:13px;line-height:1.9;align-items:center;color:#91a2b1;border-color:#e5edf4}.model-config{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.model-config summary{cursor:pointer;color:#5486b2}.model-config .code{font-size:13px;overflow-wrap:anywhere}.learning-hero{display:flex;position:relative;align-items:center;min-height:440px;background:#eaf4ff;border:1px solid #e1effe;border-radius:15px;overflow:hidden;padding:40px 50px}.hero-copy{z-index:1;width:57%;position:relative}.hero-kicker{display:flex;gap:10px;align-items:center;font-size:15px;color:#6795bc;letter-spacing:1px;margin-bottom:19px}.hero-kicker span{width:23px;height:1px;background:#86b1d9}.learning-hero h1{font-size:42px;line-height:1.6;font-weight:600;letter-spacing:2px;color:#3e6d98;margin:0 0 17px}.learning-hero p{font-size:17px;line-height:1.95;color:#7791a8;margin:0 0 25px}.hero-actions{display:flex;gap:14px}.hero-actions button{font-size:17px;padding:11px 21px}.hero-actions span{margin-left:19px}.hero-actions button:not(.primary){background:#ffffffb8;color:#6892b7;border-color:#d9e8f7}.hero-illustration{position:absolute;right:8px;width:49%;height:auto;max-height:440px;object-fit:contain;pointer-events:none}.hero-facts{display:flex;gap:20px;margin-top:30px;font-size:13px;color:#8aa2b7;align-items:center}.hero-facts b{font-size:21px;font-weight:normal;color:#6894bc;margin-right:4px}.hero-facts span+span{border-left:1px solid #cddff0;padding-left:20px}.quick-access{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:24px 0 58px}.quick-access a{border:1px solid #e2edf6;border-radius:9px;background:#fff;display:flex;gap:17px;align-items:center;padding:20px 24px;box-shadow:0 4px 16px #7ba1bd05}.quick-access a:hover{text-decoration:none;border-color:#abcbe6}.quick-access strong{font-size:19px;font-weight:normal;color:#4c6f8d}.quick-access small{display:block;font-size:13px;color:#93a5b4;margin-top:4px}.quick-icon{color:#84abd0;background:#f0f7ff;border-radius:12px;display:flex;align-items:center;justify-content:center;width:46px;height:46px;font-size:28px;flex-shrink:0}.quick-access .arrow{margin-left:auto;color:#abc4d9}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.section-eyebrow{color:#97afc4;font-size:11px;letter-spacing:2px}.section-title h2{font-size:29px;color:#486a86;margin:5px 0 8px;font-weight:600}.section-title p{margin:0;font-size:15px;color:#98a9b7}.section-title>a{font-size:15px;color:#80a0bc;padding-bottom:4px}.section-title>a span{margin-left:15px}.course-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px 22px}.course-card{background:#fff;border:1px solid #e4ebf2;border-radius:9px;overflow:hidden;box-shadow:0 4px 13px #597a9207;transition:transform .18s,box-shadow .18s}.course-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #4c799e12;text-decoration:none;border-color:#c8ddf1}.course-cover{position:relative;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid #e8eff5}.course-cover img{width:100%;height:100%;object-fit:cover;display:block}.cover-label{position:absolute;right:12px;top:12px;font-size:9px;letter-spacing:1px;color:#8da9bf;background:#ffffffa6;padding:2px 6px;border-radius:3px}.course-info{padding:19px 18px 16px}.course-info h3{font-size:23px;margin:0 0 11px;color:#4d6f8c;font-weight:600}.course-info h3 span{display:block;font-size:13px;font-weight:normal;color:#8ca0b2;margin-top:3px}.course-info p{font-size:14px;color:#7e93a6;line-height:1.8;min-height:50px;margin-bottom:14px}.course-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #edf2f7;font-size:11px;color:#93a9bb}.course-bottom span:last-child{color:#739ac0}.study-feature{margin-top:58px;display:grid;grid-template-columns:1fr 1.1fr;gap:52px;align-items:center;background:#f1f7fd;border:1px solid #e4eef8;padding:32px;border-radius:10px}.study-feature>img{width:100%;border-radius:8px}.study-feature h2{font-size:28px;line-height:1.6;margin:9px 0 15px;color:#587c9b}.study-feature p{font-size:16px;color:#8098ac;line-height:1.9;max-width:520px;margin-bottom:20px}.study-feature small{display:block;color:#9caebb;font-size:12px;margin-top:16px}.text-link{color:#5e94c5}.home-bottom{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.home-bottom>div{padding:25px 27px;border:1px solid #e5edf5;border-radius:8px;background:#fff}.home-bottom h2{font-size:20px;color:#61809c;margin-bottom:10px}.home-bottom p{font-size:14px;color:#94a5b3}.home-bottom a{font-size:14px;color:#7da0c0}
@media(min-width:1600px){.header-inner,main{max-width:1510px}.context-bar,#subnav,footer{max-width:1442px}.learning-hero{min-height:465px}.hero-illustration{max-height:470px}.learning-hero h1{font-size:46px}}
@media(max-width:1250px){.header-inner{gap:18px;padding:0 25px}.brand{font-size:21px}.brand img{width:45px;height:45px}nav#nav{gap:18px}.nav-item{font-size:16px}.header-ai{display:none}.context-bar,#subnav,footer{margin-left:25px;margin-right:25px}.learning-hero{padding:32px}.learning-hero h1{font-size:36px}.hero-copy{width:60%}.hero-facts{gap:12px}.hero-facts span+span{padding-left:12px}.course-cards{gap:20px 16px}.course-info{padding:16px 13px}.course-info h3{font-size:22px}.course-bottom{font-size:10px}.study-feature{gap:30px}}
@media(max-width:1000px){.header-inner{height:auto;flex-wrap:wrap;padding:15px 25px 0;gap:0}.brand{width:100%;font-size:24px;padding-bottom:12px}.brand img{width:48px;height:48px}nav#nav{margin-left:0;width:100%;justify-content:space-between;gap:22px}.nav-item{padding:12px 0}.course-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-hero{min-height:400px;padding:30px}.learning-hero h1{font-size:32px}.learning-hero p{font-size:15px}.hero-facts span:last-child{display:none}.hero-illustration{right:-35px;width:47%}.hero-copy{width:65%}.hero-actions button{font-size:15px;padding:10px 13px}.hero-actions span{margin-left:10px}.quick-access{gap:12px}.quick-access a{padding:16px 14px;gap:10px}.quick-access small{font-size:11px}.quick-access strong{font-size:17px}.quick-icon{width:36px;height:36px;font-size:24px}.quick-access .arrow{display:none}.course-info p{min-height:0}.course-bottom{font-size:12px}.study-feature h2{font-size:24px}.study-feature p{font-size:14px}footer{padding:25px 0}}
@media(max-width:720px){.site-header{position:relative}.header-inner{padding:15px 17px 0}.brand{font-size:21px;gap:10px;line-height:1.5}.brand img{width:44px;height:44px}.brand small{display:block;font-size:8px;letter-spacing:.9px}nav#nav{overflow-x:auto;gap:22px;justify-content:flex-start;padding:0}.nav-item{font-size:15px;white-space:nowrap;padding:12px 0 11px}.shell{margin:0}.context-bar{margin:0 17px;padding-top:15px;font-size:12px}#subnav{margin:13px 17px 0;gap:23px}.subnav-item{font-size:15px;padding:6px 2px 10px}main{padding:23px 17px 40px}.is-home main{padding-top:17px}.learning-hero{display:block;padding:26px 23px 0;min-height:0;border-radius:10px}.hero-copy{width:100%}.hero-kicker{font-size:12px;margin-bottom:14px}.learning-hero h1{font-size:29px;letter-spacing:1px;line-height:1.55;margin-bottom:14px}.learning-hero p{font-size:14px;margin-bottom:21px;line-height:1.9}.learning-hero p br{display:none}.hero-actions{gap:10px}.hero-actions button{font-size:14px;padding:9px 10px}.hero-actions span{margin-left:5px}.hero-facts{font-size:11px;margin-top:20px;gap:14px}.hero-facts b{font-size:19px}.hero-illustration{position:relative;width:100%;height:230px;max-height:none;right:auto;margin-top:4px;display:block;object-fit:contain}.quick-access{grid-template-columns:1fr;gap:10px;margin:15px 0 36px}.quick-access a{padding:13px 16px}.quick-access strong{font-size:17px}.quick-access small{font-size:12px}.quick-icon{width:39px;height:39px}.quick-access .arrow{display:block}.section-title{gap:15px;margin-bottom:19px}.section-title h2{font-size:24px}.section-title p{font-size:13px}.section-eyebrow{font-size:9px;letter-spacing:1.5px}.section-title>a{font-size:12px;white-space:nowrap}.section-title>a span{margin-left:3px}.course-cards{gap:15px 12px}.course-info{padding:13px 12px}.course-info h3{font-size:20px}.course-info h3 span{font-size:11px}.course-info p{font-size:12px;line-height:1.75;min-height:63px;margin-bottom:10px}.course-bottom{display:block;font-size:10px;padding-top:9px}.course-bottom span{display:block;margin:3px 0}.cover-label{font-size:7px;top:7px;right:7px;padding:1px 4px}.study-feature{grid-template-columns:1fr;gap:20px;padding:18px;margin-top:32px}.study-feature h2{font-size:24px}.study-feature p{font-size:14px}.home-bottom{grid-template-columns:1fr;gap:14px;margin-top:24px}.home-bottom>div{padding:21px}.home-bottom h2{font-size:19px}.page-head h1{font-size:26px}footer{margin:0 17px;display:block;padding:25px 0;font-size:12px}.footer-brand{font-size:18px;margin-bottom:17px}.footer-brand small{font-size:12px}.course-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.course-card{transition:none}}

/* Readable academic typography on light surfaces. */
:root{--muted:#52697e;--accent:#286cae}
body{color:#293e51}
.brand,.learning-hero h1{color:#294f73}
.nav-item{color:#435d74}.nav-item.active{color:#2268aa}
.brand small,.local-badge,.eyebrow,.section-eyebrow{color:#617a91}
.learning-hero p,.hero-kicker,.hero-facts,.hero-facts b{color:#476984}
.hero-actions button:not(.primary){color:#346b9b}
button.primary{background:#2d75ba;border-color:#2d75ba}
.quick-access strong,.course-info h3,.section-title h2,.study-feature h2,.home-bottom h2{color:#345976}
.quick-access small,.section-title p,.course-info h3 span,.course-info p,.course-bottom,.study-feature p,.study-feature small,.home-bottom p,.footer-brand small,footer{color:#566f84}
.section-title>a,.course-bottom span:last-child,.text-link,.home-bottom a,.footer-brand{color:#326c9d}
.course-bottom{font-size:12px}.cover-label{color:#526c83}
@media(max-width:720px){.course-info p{font-size:14px;min-height:74px}.course-info h3 span{font-size:12px}.course-bottom{font-size:11px}.quick-access small{font-size:13px}}
/* Accounts and personal learning space */
.account-button{white-space:nowrap;color:#286cae;background:#f3f8fe;border-color:#cbdff2;max-width:210px;overflow:hidden;text-overflow:ellipsis}.header-inner{gap:18px}nav#nav{gap:17px}#authDialog{width:min(460px,94vw);padding:30px 34px;border-radius:12px;max-height:92vh}#authDialog h2{text-align:center;font-size:25px;margin:10px 0}#authDialog .auth-logo{display:block;width:46px;margin:auto}#authDialog .muted{text-align:center;font-size:14px}.auth-close{position:absolute;right:12px;top:10px;border:0;font-size:24px;background:transparent}#authForm label{margin-top:13px}#authForm input,.password-field{width:100%}.password-field{display:flex}.password-field input{flex:1;min-width:0}.password-field button{flex:none}.code-row{display:flex;gap:8px}.code-row input{min-width:0;flex:1}.code-row button{white-space:nowrap;font-size:14px}.auth-submit{width:100%;margin-top:6px}.auth-switch{display:block;border:0;color:#286cae;margin:14px auto 0}.form-error{color:#a2372c;font-size:14px;margin:12px 0}.strength{margin-top:8px;font-size:13px;color:#a2372c}.strength i{display:block;height:4px;width:30%;background:#c66759;margin-bottom:5px}.strength[data-level="1"]{color:#80600c}.strength[data-level="1"] i{width:65%;background:#bc963d}.strength[data-level="2"]{color:#28705a}.strength[data-level="2"] i{width:100%;background:#4b987b}#passwordForm input{width:100%}.user-row{display:flex;gap:20px;align-items:center;margin-top:15px;flex-wrap:wrap}.user-row>div{flex:1;min-width:220px}.user-row p{margin:4px 0}.user-row label{margin:0}.user-row input{max-width:200px}#profileMessage{color:#a2372c}#profileForm button{margin-top:10px}
@media(max-width:1250px){.header-inner{flex-wrap:wrap;height:auto;padding-top:12px;padding-bottom:8px}.brand{margin-right:auto}nav#nav{order:3;width:100%;justify-content:space-between}.nav-item{padding:10px 0}.account-button{font-size:14px}.brand{width:auto}.header-ai{display:none}}
@media(max-width:720px){.brand{font-size:18px;max-width:calc(100% - 115px)}.brand small{font-size:7px}.brand img{width:32px;height:32px}.account-button{max-width:108px;padding:8px;font-size:13px}.header-inner{gap:8px}nav#nav{gap:20px}.user-row{display:block}.user-row>*{margin-bottom:10px}#authDialog{padding:28px 22px}.user-row label{margin-bottom:10px}}

.table-scroll{overflow-x:auto}.table-scroll td{max-width:340px;overflow-wrap:anywhere}#teacherEntry,.class-entry{white-space:nowrap;font-size:14px}details form{padding:18px 0}details form input{max-width:100%}details form label{margin-top:10px}.user-row{font-size:15px}@media(max-width:1450px){.header-inner{flex-wrap:wrap;height:auto;padding-top:12px;padding-bottom:8px}nav#nav{order:4;width:100%;justify-content:space-between}.nav-item{padding:10px 0}.brand{margin-right:auto}}
