:root{--ink:#23283d;--muted:#9297aa;--line:#eceef3;--primary:#605de1;--font:'IBM Plex Sans Thai',sans-serif}*{box-sizing:border-box}body{margin:0;background:#f6f7fa;color:var(--ink);font:14px var(--font)}button,select,input{font:inherit}button{cursor:pointer}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#fff;border-right:1px solid var(--line);padding:25px 17px 14px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:9px;padding:4px 8px;color:#22263b;text-decoration:none;font:800 20px Manrope,sans-serif}.brand-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#6864e7;color:#fff}.brand-dot{color:#6562e8;margin-left:-8px}.school-switch{display:flex;align-items:center;gap:10px;padding:12px 9px;margin:26px 0;border:1px solid var(--line);border-radius:10px}.school-switch>div:nth-child(2){flex:1}.school-avatar,.profile-avatar,.top-avatar{display:grid;place-items:center;border-radius:9px;width:34px;height:34px;background:#efefff;color:#5b59d6;font-weight:700}.school-switch strong,.profile strong{display:block;font-size:11px}.school-switch small,.profile small{display:block;color:#9b9fb0;font-size:9px;margin-top:2px}.nav-caption{padding:0 10px 9px;color:#a2a5b3;font-size:10px}.spaced{margin-top:27px}.sidebar nav{display:grid;gap:4px}.nav-item{height:40px;width:100%;border:0;background:transparent;color:#777c90;border-radius:8px;text-align:left;padding:0 11px;font-size:12px}.nav-item.active{background:#f0efff;color:#5956db;font-weight:600}.nav-item i,.nav-item b{float:right}.sidebar-bottom{margin-top:auto}.help-card{background:#f6f6ff;border:1px solid #efefff;border-radius:11px;padding:13px}.help-card strong{font-size:11px}.help-card p{font-size:10px;color:#9296a9}.help-card button,.text-button{border:0;background:none;color:#5c59d7;font-size:10px}.profile{display:flex;align-items:center;gap:9px;padding:14px 4px 0;margin-top:12px;border-top:1px solid #f0f1f4}.profile>div:nth-child(2){flex:1}.profile-avatar,.top-avatar{border-radius:50%;background:#fce9dd;color:#ac6345}.main-area{margin-left:245px;min-height:100vh}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.breadcrumbs,.top-actions{color:#969aac;font-size:10px}.top-actions{display:flex;align-items:center;gap:15px}.top-actions select{border:0;background:transparent}.icon-button{border:0;background:none}.top-avatar{width:30px;height:30px;display:grid;place-items:center}.mobile-menu{display:none}.page-content{max-width:1420px;margin:auto;padding:30px 38px}.welcome-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow,.welcome-row p,.section-heading p,.panel-heading p{color:#969aac;font-size:10px;margin:4px 0}.welcome-row h1{font-size:22px;margin:0}.welcome-row h1 span{color:#f0b35f}.primary-button{height:37px;padding:0 14px;background:var(--primary);border:0;border-radius:8px;color:#fff;font-size:11px;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.summary-card{height:146px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px;position:relative;overflow:hidden;color:#818699;font-size:10px}.summary-card>div:first-child{display:flex;align-items:center;justify-content:space-between}.metric-icon{width:27px;height:27px;display:grid;place-items:center;border-radius:8px}.violet{color:#726fe1;background:#f0efff}.blue{color:#5595d5;background:#eaf4fd}.amber{color:#d6943e;background:#fff4e4}.green{color:#38a27e;background:#e8f7f0}.summary-card>strong{display:inline-block;margin-top:7px;font:700 27px Manrope,sans-serif;color:#252a3e}.summary-card em{font-style:normal;font-size:9px;color:#3eaa81;background:#e9f7f0;padding:3px 6px;border-radius:20px}.summary-card em.warn{background:#fff3e4;color:#d7953d}.summary-card>small{display:block;font-size:9px;color:#a0a3b1;margin-top:3px}.bars{position:absolute;bottom:12px;left:15px;right:15px;height:20px;display:flex;align-items:end;gap:4px}.bars i{height:8px;flex:1;border-radius:3px 3px 0 0;background:#e3e2ff}.bars i:nth-child(3n){height:12px}.bars i:nth-child(4n){height:15px}.bars i:nth-child(7n){height:19px;background:#7774e7}.avatar-stack{margin-top:14px;color:#78639a;background:#f5f1fc;border-radius:20px;width:max-content;padding:4px 7px}.progress{height:5px;background:#f0f1f6;border-radius:5px;margin-top:13px}.progress i{display:block;width:73%;height:100%;background:#e7ad59;border-radius:5px}.spark{position:absolute;bottom:9px;color:#39a985;font:700 25px Manrope,sans-serif}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-top:28px}.section-heading h2,.panel h2{font-size:14px;margin:0}.class-filters{display:flex;gap:6px;margin:15px 0 12px}.class-filter{border:1px solid transparent;background:transparent;color:#9296a8;border-radius:7px;padding:6px 10px;font-size:10px}.class-filter.active{background:#fff;color:#5755cf;border-color:#e5e4fb}.class-filter span{color:#a3a6b5}.course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.course-card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:13px;min-width:0}.course-top{display:flex;justify-content:space-between}.course-symbol{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.lavender{background:#f0efff;color:#716de1}.mint{background:#eaf7f0;color:#46a880}.peach{background:#fff2e6;color:#d99151}.sky{background:#ebf4ff;color:#5995da}.course-title{font-size:12px;margin:11px 0 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-code{font:9px Manrope,sans-serif;color:#a3a6b4}.course-tags{display:flex;gap:5px;margin-top:10px}.course-tag{padding:3px 7px;border-radius:5px;font-size:8px;color:#777b8e;background:#f5f6f9}.course-tag.grade{color:#5e5bd4;background:#f0efff}.course-bottom{display:flex;justify-content:space-between;border-top:1px solid #f0f1f5;margin-top:12px;padding-top:9px;color:#9296a7;font-size:9px}.course-bottom b{color:#50556a}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px;min-width:0}.panel-heading{display:flex;justify-content:space-between;margin-bottom:8px}.agenda-item{height:49px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #f2f3f6;font-size:10px}.agenda-item time{width:34px}.agenda-item time small,.agenda-item>div small{display:block;color:#a3a6b4;font-size:9px}.agenda-item>i{width:3px;height:27px;border-radius:3px}.teal{background:#54b394}.purple{background:#8b83eb}.orange{background:#e7aa63}.agenda-item>div{flex:1}.tag{font-size:8px;color:#888;background:#f5f6f9;padding:4px;border-radius:5px}.task-row{height:52px;border-bottom:1px solid #f2f3f6;display:flex;align-items:center;position:relative;font-size:10px;padding-left:4px}.task-row>small{position:absolute;left:31px;bottom:4px;color:#a0a3b1;font-size:9px}.task-row>b{margin-left:auto;text-align:center}.task-row>b small{display:block}.panel>.text-button{margin-top:9px}.empty-state{padding:50px;text-align:center;color:#969aac;background:#fff;border:1px solid var(--line);border-radius:10px}.empty-state>span{display:block;font-size:28px}footer{display:flex;justify-content:space-between;padding:18px 2px;color:#adb0bc;font-size:9px}.alt-toolbar{display:flex;gap:9px;margin:20px 0}.search-box{height:37px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 11px;min-width:230px}.search-box input{border:0;outline:0}.alt-select{height:37px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 11px}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table th,.data-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-size:10px}.data-table th{background:#fbfbfd;color:#969aab}.status-pill{padding:4px 8px;border-radius:5px;font-size:8px;background:#eaf7f0;color:#45a17c}.status-pill.pending{background:#fff3e2;color:#ca9149}.modal-backdrop{position:fixed;inset:0;background:#1c203866;z-index:20;display:grid;place-items:center;padding:16px}.modal-backdrop[hidden],section[hidden]{display:none}.modal{position:relative;background:#fff;width:min(100%,430px);border-radius:15px;padding:25px}.modal-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:23px}.modal h2{font-size:17px}.modal p{font-size:10px;color:#999dae}.modal form{display:grid;gap:12px}.modal label{display:grid;gap:5px;font-size:10px}.modal input,.modal select{height:37px;padding:0 10px;border:1px solid #e8e9ef;border-radius:7px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.secondary-button{height:37px;padding:0 13px;border:1px solid #e8e9ef;border-radius:7px;background:#fff}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);padding:10px 16px;border-radius:8px;background:#242940;color:#fff;font-size:11px;opacity:0;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1100px){.sidebar{width:220px}.main-area{margin-left:220px}.page-content{padding:24px}.summary-grid,.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lower-grid{grid-template-columns:1fr}}@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:10px 0 35px #20253a1a}.main-area{margin-left:0}.mobile-menu{display:block}.topbar{height:57px;padding:0 14px}.page-content{padding:22px 14px}.welcome-row h1{font-size:17px}.welcome-row>.primary-button{font-size:0;width:38px;padding:0}.summary-grid,.course-grid{gap:8px}.summary-card{height:135px;padding:11px}.class-filters{overflow:auto;white-space:nowrap}.class-filter{flex:none}.lower-grid{grid-template-columns:1fr}.data-table{min-width:590px}#alternatePage{overflow:auto}}@media(max-width:370px){.summary-grid,.course-grid{grid-template-columns:1fr}}
/* อ่านง่ายขึ้น */
body{font-size:16px}.nav-item{font-size:14px}.nav-caption{font-size:12px}.school-switch strong,.profile strong{font-size:13px}.school-switch small,.profile small{font-size:11px}.breadcrumbs,.top-actions,.eyebrow{font-size:12px}.welcome-row h1{font-size:26px}.welcome-row p,.section-heading p,.panel-heading p{font-size:12px}.summary-card{font-size:12px}.summary-card>strong{font-size:30px}.summary-card>small{font-size:11px}.summary-card em{font-size:11px}.section-heading h2,.panel h2{font-size:16px}.class-filter{font-size:12px}.course-title{font-size:14px}.course-code,.course-tag,.course-bottom{font-size:11px}.agenda-item{font-size:12px}.agenda-item time{font-size:12px}.agenda-item>div small,.agenda-item time small{font-size:10px}.task-row{font-size:12px}.task-row>small{font-size:10px}.text-button,.help-card button{font-size:12px}.help-card strong{font-size:13px}.help-card p{font-size:12px}.data-table th,.data-table td{font-size:12px}.alt-select,.search-box input,.modal label,.modal input,.modal select,.secondary-button,.primary-button{font-size:12px}.modal>p{font-size:12px}.status-pill{font-size:10px}footer{font-size:10px}
@media(max-width:700px){.welcome-row h1{font-size:21px}.nav-item{font-size:14px}.course-title{font-size:13px}.summary-card>small,.course-code,.course-tag,.course-bottom{font-size:10px}.class-filter{font-size:11px}}

/* ธีมสีน้ำตาล */
:root{--ink:#392d27;--muted:#897a70;--line:#e9dfd7;--primary:#795548}
body{background:#f7f4f1;color:#392d27}
.sidebar,.topbar,.panel,.summary-card,.course-card,.modal,.data-table,.search-box,.alt-select,.class-filter.active{background-color:#fffdfa;border-color:#e9dfd7}
.brand{color:#392d27}.brand-mark,.primary-button{background:#795548}.brand-dot,.help-card button,.text-button,.agenda-link{color:#795548}
.nav-item.active{background:#f3eae3;color:#704c3d}.nav-item:hover{background:#f7f1ec;color:#704c3d}
.school-avatar,.metric-icon.violet,.metric-icon.blue,.metric-icon.amber,.metric-icon.green,.course-symbol.lavender,.course-symbol.mint,.course-symbol.peach,.course-symbol.sky,.course-tag.grade{background:#f1e7df;color:#765340}
.class-filter.active{color:#704c3d;border-color:#e4d3c5}.class-filter.active span,.course-tag.grade{color:#795548}
.task-icon.paper,.task-icon.quiz,.task-icon.book{background:#f1e7df;color:#795548}
.status-pill,.agenda-tag.ongoing{background:#f2e9e2;color:#795548}
.progress i{background:#a87d60}.bars i{background:#e8d9cd}.bars i:nth-child(7n){background:#9b735b}.summary-card em{background:#f2e9e2;color:#795548}
.help-card{background:#f7f1ec;border-color:#eee3d9}
.course-card:hover{border-color:#d9c4b4}
.modal-icon{background:#f1e7df;color:#795548}
@media(max-width:700px){.sidebar.open{box-shadow:10px 0 35px #392d271a}}
.footer-links{display:flex;gap:16px}.footer-links button{border:0;background:none;color:#795548;font:inherit;cursor:pointer}.footer-links button:hover{text-decoration:underline}.policy-content,.faq-list{max-width:850px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:12px;padding:24px;margin-top:20px;color:#51443c}.policy-content h2,.faq-list h2{font-size:22px;margin:8px 0 16px}.policy-content h3{font-size:16px;margin:22px 0 6px;color:#795548}.policy-content p,.faq-list p{font-size:14px;line-height:1.85;color:#71665e}.notice-banner,.policy-note{padding:11px 13px;background:#f3eae3;border-radius:8px;color:#795548;font-size:12px}.faq-list details{border-top:1px solid #e9dfd7;padding:14px 2px}.faq-list summary{cursor:pointer;font-size:14px;font-weight:600;color:#60483a}.faq-list details p{margin:10px 0 0}@media(max-width:700px){footer{flex-wrap:wrap;gap:10px}.footer-links{width:100%;gap:14px}.policy-content,.faq-list{padding:16px}.policy-content h2,.faq-list h2{font-size:19px}}
.photo-hint{font-size:12px;color:#887a70;margin:-8px 0 10px}.student-photo-slot{position:relative;display:inline-grid;place-items:center;vertical-align:middle;width:32px;height:32px;margin-right:9px;border:1px dashed #bda895;border-radius:50%;background:#f7f1ec;color:#795548;overflow:hidden}.student-photo-slot input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.student-photo-slot img{width:100%;height:100%;object-fit:cover;border-radius:50%}.student-photo-slot img[hidden],.student-photo-slot span[hidden]{display:none}
/* ตราสัญลักษณ์และหน้าฟีเจอร์ครู */
.sidebar{overflow-y:auto}.brand{gap:10px;align-items:center;letter-spacing:0}.brand-mark{position:relative;flex:0 0 43px;width:43px;height:43px;overflow:hidden;border-radius:50%;background:#6f392f;border:2px solid #b47d56}.brand-mark img{position:absolute;width:200%;height:200%;max-width:none;left:-50%;top:-50%;object-fit:contain}.brand-title{font:700 12px/1.45 var(--font);letter-spacing:0;color:#392d27}.progress-toolbar{display:flex;align-items:center;gap:10px;margin:18px 0}.sample-label{display:inline-block;padding:5px 9px;background:#f1e7df;color:#795548;border-radius:6px;font-size:11px;font-weight:600}.progress-toolbar .search-box{margin-left:auto}.learner-progress-grid,.learning-game-grid,.assessment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.learner-progress-card,.learning-game-card,.assessment-card,.lesson-plan-card{background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px;padding:16px}.learner-heading{display:flex;align-items:center;gap:10px;padding-bottom:13px;border-bottom:1px solid #eee6df}.learner-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#f1e7df;color:#795548;font-size:17px}.learner-heading>div{display:grid;gap:2px;flex:1}.learner-heading strong{font-size:13px}.learner-heading small,.assessment-card small{color:#897a70;font-size:11px}.growth-tag{padding:4px 8px;color:#795548;background:#f3eae3;border-radius:16px;font-size:10px}.learner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:13px 0}.learner-stats div{display:grid;gap:3px}.learner-stats span,.progress-caption{font-size:10px;color:#897a70}.learner-stats b,.progress-caption b{font-size:12px;color:#44362e}.progress-caption{display:flex;justify-content:space-between;margin:5px 0}.learner-track{height:7px;border-radius:8px;background:#eee6df;overflow:hidden}.learner-track i{display:block;height:100%;border-radius:8px;background:#9b735b}.task-progress{margin-top:10px}.feature-intro{margin:16px 0}.feature-intro p{font-size:13px;color:#897a70;margin:8px 0}.learning-game-card{min-height:200px}.game-card-top{display:flex;justify-content:space-between;align-items:center}.game-icon,.assessment-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f1e7df;color:#795548;font-size:18px;font-weight:700}.learning-game-card h3,.assessment-card h3,.lesson-plan-card h3{font-size:15px;margin:13px 0 4px}.game-lesson{font-size:11px;color:#897a70}.game-play{margin-top:12px;border-top:1px solid #eee6df;padding-top:10px}.game-play summary{cursor:pointer;color:#795548;font-size:12px;font-weight:600}.game-play p{font-size:12px;line-height:1.6}.game-answer{display:block;width:100%;text-align:left;padding:8px 10px;border:1px solid #e9dfd7;border-radius:7px;margin:6px 0;background:#fff;color:#51443c;font-size:12px}.game-answer:hover{background:#f7f1ec}.game-feedback{display:block;font-size:11px;color:#a64d3f;margin-top:8px}.game-feedback.correct{color:#577b48}.lesson-plan-list{display:grid;gap:10px}.lesson-plan-card{display:flex;align-items:flex-start;gap:13px}.plan-index{width:34px;height:34px;flex:none;display:grid;place-items:center;background:#f1e7df;color:#795548;border-radius:9px}.plan-main{flex:1}.plan-main h3{margin:0}.plan-main p{font-size:11px;color:#897a70;margin:4px 0 9px}.plan-meta{display:grid;gap:4px;color:#66574e;font-size:11px}.assessment-card{position:relative}.assessment-card>.course-tag{position:absolute;right:14px;top:16px}.assessment-card p{font-size:12px;line-height:1.65;color:#897a70;min-height:42px}.assessment-card small{display:block;border-top:1px solid #eee6df;padding-top:9px}.sample-label{white-space:nowrap}
@media(max-width:700px){.brand-mark{flex-basis:39px;width:39px;height:39px}.brand-title{font-size:11px}.progress-toolbar{flex-wrap:wrap}.progress-toolbar .search-box{margin-left:0;min-width:100%}.learner-progress-grid,.learning-game-grid,.assessment-grid{grid-template-columns:1fr}.learner-progress-card,.learning-game-card,.assessment-card{padding:13px}.lesson-plan-card{padding:12px;gap:9px}.plan-meta{font-size:10px}}
/* จัดตำแหน่งปุ่มสร้างห้องเรียนและปรับสัดส่วนโลโก้ */
.brand-mark{flex-basis:48px;width:48px;height:48px}.brand-mark img{object-fit:cover}.brand-title{max-width:150px}.section-actions{display:flex;align-items:center;gap:14px}.section-actions .primary-button,.create-room-button{white-space:nowrap}.alt-toolbar .create-room-button{margin-left:auto}@media(max-width:700px){.brand-mark{flex-basis:42px;width:42px;height:42px}.section-heading{align-items:flex-start;gap:10px}.section-actions{align-items:flex-end;flex-direction:column-reverse;gap:5px}.section-actions .primary-button{height:34px;padding:0 10px;font-size:11px}.section-actions .text-button{font-size:10px}.alt-toolbar .create-room-button{margin-left:0}.alt-toolbar{flex-wrap:wrap}}
/* แสดงตราที่ครอปพอดีจากภาพต้นฉบับโดยไม่ตัดขอบวงกลม */
.brand-mark{width:48px;height:48px;flex:0 0 48px;border-radius:50%;overflow:hidden;background:#6f392f}.brand-mark img{position:static;display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}.brand-mark img{border-radius:50%}
@media(max-width:700px){.brand-mark{width:42px;height:42px;flex-basis:42px}}
/* ครอปตราจากไฟล์ต้นฉบับโดยตรง เพื่อรองรับการเปิดเว็บแบบ file:// */
.brand-mark{position:relative;overflow:hidden;border-radius:50%;background:#6f392f}.brand-mark img{position:absolute;left:50%;top:50%;width:360%;height:auto;max-width:none;transform:translate(-50%,-50%);object-fit:initial;border-radius:0}
@media(max-width:700px){.brand-mark img{width:360%}}
/* ใช้ตราทั้งวงจาก Logo.png โดยตัดเฉพาะพื้นที่สีดำรอบภาพ */
.brand-mark{width:56px;height:56px;flex:0 0 56px;position:relative;overflow:hidden;border-radius:50%;background:#6f392f;border:2px solid #b47d56}.brand-mark img{display:block;position:static;width:100%;height:100%;max-width:100%;transform:none;object-fit:cover;object-position:center;border-radius:50%}
@media(max-width:700px){.brand-mark{width:50px;height:50px;flex-basis:50px}}
.scheme-toolbar{display:flex;align-items:center;gap:12px;margin:18px 0}.scheme-term{font-size:12px;color:#795548}.scheme-list{display:grid;gap:12px;max-width:980px}.scheme-card{background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px;padding:16px}.scheme-course{font-size:11px;color:#897a70}.scheme-title-row{display:flex;align-items:center;gap:10px;margin:8px 0 13px}.scheme-title-row h3{font-size:15px;margin:0;flex:1}.scheme-unit{padding:5px 8px;border-radius:7px;background:#f1e7df;color:#795548;font-size:11px;white-space:nowrap}.scheme-hours{color:#795548;font-size:11px;white-space:nowrap}.scheme-details{display:grid;grid-template-columns:.7fr 1.6fr 1.1fr;gap:12px;border-top:1px solid #eee6df;padding-top:11px}.scheme-details div{display:grid;gap:4px}.scheme-details small{font-size:10px;color:#897a70}.scheme-details b{font-size:11px;font-weight:500;color:#51443c}@media(max-width:700px){.scheme-toolbar{flex-wrap:wrap}.scheme-title-row{flex-wrap:wrap}.scheme-title-row h3{min-width:65%}.scheme-details{grid-template-columns:1fr;gap:8px}.scheme-details div{grid-template-columns:110px 1fr;align-items:start}}

/* ฟอนต์ Google Fonts ที่อ่านง่ายและตัวอักษรใหญ่ขึ้น */
body{font-family:'Noto Sans Thai','Source Sans 3',sans-serif;font-size:17px;line-height:1.55;color:#392d27}
.brand-title{font-size:13px}.nav-item{font-size:14px;line-height:1.45}.nav-caption{font-size:12px}.school-switch strong,.profile strong{font-size:14px}.school-switch small,.profile small{font-size:12px}.breadcrumbs,.top-actions{font-size:12px}.top-actions select{font-size:13px}.welcome-row h1{font-size:27px;line-height:1.4}.welcome-row p,.section-heading p,.panel-heading p{font-size:13px;line-height:1.6}.section-heading h2,.panel h2{font-size:17px}.primary-button,.secondary-button{font-size:13px}.class-filter{font-size:13px}.summary-card{font-size:13px}.summary-card>strong{font-size:31px}.summary-card>small{font-size:12px}.summary-card em{font-size:11px}.course-title{font-size:15px}.course-code,.course-tag,.course-bottom{font-size:12px}.agenda-item{font-size:13px}.agenda-item time{font-size:12px}.agenda-item>div small,.agenda-item time small{font-size:11px}.tag,.status-pill{font-size:11px}.task-row{font-size:13px}.task-row>small{font-size:11px}.text-button,.help-card button{font-size:13px}.help-card strong{font-size:14px}.help-card p{font-size:13px}.data-table th,.data-table td{font-size:13px}.modal label,.modal input,.modal select,.modal>p{font-size:13px}.policy-content p,.faq-list p{font-size:15px}.faq-list summary{font-size:15px}.learner-heading strong,.scheme-title-row h3,.learning-game-card h3,.assessment-card h3,.lesson-plan-card h3{font-size:16px}.learner-stats span,.progress-caption,.game-play p,.game-answer,.plan-meta,.scheme-details b{font-size:12px}
@media(max-width:700px){body{font-size:16px}.nav-item{font-size:14px}.brand-title{font-size:12px}.welcome-row h1{font-size:22px}.welcome-row p{font-size:12px}.section-heading h2,.panel h2{font-size:16px}.class-filter{font-size:12px}.course-title{font-size:14px}.course-code,.course-tag,.course-bottom{font-size:11px}.summary-card>small{font-size:11px}.summary-card>strong{font-size:28px}.agenda-item,.task-row{font-size:12px}.data-table th,.data-table td{font-size:12px}.policy-content p,.faq-list p{font-size:14px}}
.scheme-toolbar>div{display:flex;align-items:center;gap:12px}.scheme-filters{display:grid;grid-template-columns:minmax(150px,200px) minmax(180px,260px) minmax(220px,1fr);gap:10px;margin:14px 0}.scheme-create-form{background:#fffdfa;border:1px solid #ddc8b8;border-radius:12px;padding:16px;margin:14px 0}.scheme-create-form[hidden]{display:none}.scheme-form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;color:#4d3b31}.scheme-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.scheme-form-grid label{display:grid;gap:5px;color:#68584f;font-size:12px}.scheme-form-grid input,.scheme-form-grid select{height:38px;padding:0 10px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;color:#51443c;font:inherit}.scheme-form-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.form-hint{font-size:11px;color:#897a70}.scheme-card-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.scheme-card-head h3{font-size:15px;margin:5px 0 0}.scheme-unit-list{display:grid;margin-top:12px;border-top:1px solid #eee6df}.scheme-unit-row{display:grid;grid-template-columns:auto minmax(160px,1.2fr) minmax(120px,.65fr) minmax(180px,1.5fr);align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f1ebe5}.scheme-unit-row strong{font-size:12px;color:#51443c}.scheme-unit-row>span:not(.scheme-unit),.scheme-unit-row small{font-size:11px;color:#897a70}.scheme-empty{font-size:12px;color:#897a70;margin:12px 0 0}
@media(max-width:700px){.scheme-toolbar{align-items:flex-start}.scheme-toolbar>div{align-items:flex-start;flex-direction:column;gap:5px}.scheme-filters{grid-template-columns:1fr}.scheme-form-grid{grid-template-columns:1fr}.scheme-form-actions{align-items:flex-start;flex-direction:column;gap:10px}.scheme-unit-row{grid-template-columns:auto 1fr;gap:7px}.scheme-unit-row>span:not(.scheme-unit),.scheme-unit-row small{grid-column:2}.scheme-card-head h3{font-size:14px}}
.discussion-toolbar{display:flex;align-items:center;gap:12px;margin:18px 0}.discussion-compose,.discussion-card{display:flex;background:#fffdfa;border:1px solid #e9dfd7;border-radius:12px;padding:16px;gap:12px}.discussion-compose{margin-bottom:14px}.compose-avatar,.discussion-avatar,.comment-avatar{display:grid;place-items:center;flex:none;border-radius:50%;background:#f1e7df;color:#795548;font-weight:600}.compose-avatar,.discussion-avatar{width:38px;height:38px}.compose-fields{flex:1;min-width:0;display:grid;gap:9px}.compose-fields input,.compose-fields textarea,.reply-form input{width:100%;border:1px solid #e9dfd7;border-radius:8px;padding:9px 11px;background:#fff;color:#44362e;font:inherit;font-size:13px}.compose-fields textarea{resize:vertical}.compose-actions{display:flex;align-items:center;justify-content:space-between}.compose-actions select{height:36px;max-width:75%;border:1px solid #e9dfd7;border-radius:7px;background:#fff;color:#51443c;padding:0 9px;font:inherit;font-size:12px}.discussion-feed{display:grid;gap:12px}.discussion-card{display:block;padding:16px}.discussion-card header{display:flex;align-items:center;gap:9px}.discussion-by{display:grid;gap:2px}.discussion-by strong,.comment-row strong{font-size:13px}.discussion-by small{font-size:11px;color:#897a70}.discussion-card h3{font-size:16px;margin:13px 0 5px}.discussion-body{font-size:13px;line-height:1.7;color:#51443c;margin:0 0 14px;white-space:normal}.comment-list{border-top:1px solid #eee6df;padding-top:8px}.comment-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0}.comment-avatar{width:28px;height:28px;font-size:11px}.comment-row p{font-size:12px;line-height:1.55;margin:2px 0 0;color:#68584f;white-space:pre-wrap}.reply-form{display:flex;gap:8px;align-items:center;margin:7px 0 0 36px}.reply-form input{flex:1}.reply-form button{border:0;background:none;color:#795548;font:inherit;font-size:12px;white-space:nowrap}.reply-form button:hover{text-decoration:underline}@media(max-width:700px){.discussion-toolbar{align-items:flex-start;flex-direction:column}.discussion-toolbar select{width:100%}.discussion-compose,.discussion-card{padding:12px;gap:8px}.compose-avatar{width:32px;height:32px}.discussion-card h3{font-size:15px}.discussion-body{font-size:12px}.reply-form{margin-left:0}.compose-actions{align-items:flex-end;gap:8px}.compose-actions select{max-width:70%;font-size:11px}}
.pdf-upload-label{display:grid;gap:6px;padding:11px;border:1px dashed #bda895;border-radius:8px;background:#fcf8f4;color:#68584f;font-size:12px}.pdf-upload-label input{font-size:12px}.pdf-upload-label span{font-size:12px;color:#795548;overflow-wrap:anywhere}.pdf-upload-label small{font-size:10px;color:#897a70}.plan-pdf-link{display:inline-flex;align-items:center;gap:5px;color:#795548;font-size:12px;text-decoration:underline;overflow-wrap:anywhere}
.report-toolbar{display:flex;align-items:center;gap:10px;margin:17px 0}.report-toolbar .scheme-term{margin-right:auto}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.report-summary article,.report-panel{background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px}.report-summary article{display:grid;gap:4px;padding:13px 15px}.report-summary small{color:#897a70;font-size:11px}.report-summary strong{font:700 23px 'Source Sans 3','Noto Sans Thai',sans-serif;color:#4d3b31}.report-panel{padding:15px;margin:12px 0}.report-heading h2{font-size:16px;margin:0}.report-heading p{font-size:11px;color:#897a70;margin:4px 0 12px}.report-table-wrap{overflow:auto}.report-table-wrap .data-table{min-width:680px}.report-table-wrap .data-table td strong{color:#51443c}.report-empty{text-align:center;color:#897a70;padding:25px!important}.followup-list{display:grid;gap:8px}.followup-card{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #eee6df;border-radius:9px}.followup-avatar{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:50%;background:#f7e8df;color:#a64d3f;font-weight:700}.followup-info{display:grid;gap:2px;flex:1}.followup-info strong{font-size:12px}.followup-info span,.followup-info p{font-size:11px;color:#897a70;margin:0}.pending-count{padding:4px 8px;border-radius:14px;background:#f7e8df;color:#a64d3f;font-size:10px;white-space:nowrap}@media(max-width:700px){.report-toolbar{flex-wrap:wrap}.report-toolbar .scheme-term{margin-right:0}.report-toolbar select{width:100%}.report-summary{gap:7px}.report-summary article{padding:10px}.report-summary small{font-size:10px}.report-summary strong{font-size:20px}.report-panel{padding:11px}.followup-card{align-items:flex-start}.pending-count{font-size:9px}}
.pending-task-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:5px}.pending-task-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:7px 9px;border-radius:7px;background:#faf6f2;color:#55463d;font-size:11px}.pending-task-list li>span{flex:1}.pending-task-list time{white-space:nowrap;color:#795548;font-size:10px;font-weight:600}.pending-task-list time.overdue{color:#b34c3b}@media(max-width:700px){.pending-task-list li{flex-direction:column;gap:3px}.pending-task-list time{white-space:normal}}
.library-toolbar,.library-filters{display:flex;align-items:center;gap:10px;margin:15px 0}.library-toolbar .primary-button{margin-left:auto}.library-filters .search-box{flex:1}.resource-form{background:#fffdfa;border:1px solid #ddc8b8;border-radius:12px;padding:16px;margin:14px 0}.resource-form[hidden],#resourcePdfField[hidden],#resourceYoutubeField[hidden]{display:none}.resource-form-heading,.resource-form-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.resource-form-heading{margin-bottom:12px}.resource-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.resource-form-grid label{display:grid;gap:5px;color:#68584f;font-size:12px}.resource-form-grid input,.resource-form-grid textarea,.resource-form-grid select{border:1px solid #e4d8ce;border-radius:7px;background:#fff;color:#51443c;padding:9px 10px;font:inherit;font-size:13px}.resource-form-grid textarea{resize:vertical}.resource-span{grid-column:1/-1}.resource-form-grid small{font-size:10px;color:#897a70}.resource-form-actions{margin-top:13px}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.resource-card{background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px;padding:14px;min-width:0}.resource-card-top{display:flex;justify-content:space-between;align-items:center}.resource-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:#f1e7df;color:#795548}.resource-icon.video{background:#f7e8df;color:#a64d3f}.resource-card h3{font-size:14px;margin:12px 0 5px}.resource-card p{font-size:11px;line-height:1.6;color:#897a70;min-height:35px}.resource-course{font-size:11px;color:#795548;padding-top:8px;border-top:1px solid #eee6df}.resource-empty-file{font-size:11px;color:#897a70;background:#faf6f2;border-radius:7px;padding:9px;margin-top:9px}.resource-file-link{display:block;margin-top:9px;color:#795548;font-size:11px;overflow-wrap:anywhere}.youtube-frame{position:relative;aspect-ratio:16/9;margin-top:10px;background:#1f1b19;border-radius:8px;overflow:hidden}.youtube-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:900px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.library-toolbar,.library-filters{align-items:stretch;flex-direction:column}.library-toolbar .primary-button{margin:0}.library-filters select{width:100%}.resource-form-grid{grid-template-columns:1fr}.resource-span{grid-column:auto}.resource-form-actions{align-items:flex-start;flex-direction:column}.resource-grid{grid-template-columns:1fr}}
.assignment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0}.assignment-toolbar p{color:#897a70;font-size:13px;margin:5px 0}.assignment-form{background:#fffdfa;border:1px solid #ddc8b8;border-radius:12px;padding:17px;margin:14px 0}.assignment-form[hidden]{display:none}.assignment-form-head,.assignment-form-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.assignment-form-head{margin-bottom:14px;color:#4d3b31}.assignment-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.assignment-form-grid label{display:grid;gap:6px;color:#68584f;font-size:13px}.assignment-form-grid input,.assignment-form-grid select{min-height:40px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;padding:8px 10px;color:#51443c;font:inherit}.assignment-form-grid small{font-size:11px;color:#897a70}.assignment-span{grid-column:1/-1}.assignment-form-actions{margin-top:15px}.assignment-list{display:grid;gap:11px}.assignment-card{padding:15px 17px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px}.assignment-card-main,.assignment-card-title,.assignment-card-meta,.assignment-card-bottom{display:flex;align-items:center;gap:12px}.assignment-card-main{justify-content:space-between}.assignment-card-title{min-width:0}.assignment-symbol{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:10px;background:#f1e7df;color:#795548}.assignment-card h3{font-size:15px;margin:0}.assignment-card p{font-size:12px;color:#897a70;margin:4px 0 0}.assignment-card-meta{padding:12px 0;margin:12px 0;border-top:1px solid #f0e9e3;border-bottom:1px solid #f0e9e3}.assignment-card-meta>span{display:grid;gap:4px;font-size:12px;color:#51443c}.assignment-card-meta small{font-size:10px;color:#897a70}.assignment-countdown{margin-left:auto!important;color:#795548!important;font-weight:700}.assignment-countdown.overdue{color:#ae5142!important}.assignment-card-bottom{justify-content:space-between;font-size:12px;color:#897a70}.assignment-card-bottom a{color:#795548;overflow-wrap:anywhere}.assignment-card-bottom b{color:#51443c}@media(max-width:700px){.assignment-toolbar{align-items:stretch;flex-direction:column}.assignment-toolbar .primary-button{width:100%}.assignment-form-grid{grid-template-columns:1fr}.assignment-span{grid-column:auto}.assignment-form-actions{align-items:flex-start;flex-direction:column}.assignment-card-main{align-items:flex-start}.assignment-card-meta{align-items:flex-start;flex-wrap:wrap}.assignment-card-meta>span{min-width:42%}.assignment-countdown{margin-left:0!important}.assignment-card-bottom{align-items:flex-start;flex-direction:column}}
.exam-menu-parent{display:flex;align-items:center;justify-content:space-between}.exam-menu-parent span{margin-left:auto;color:#a69384}.exam-subnav{display:grid;gap:3px;margin:0 0 4px 12px;padding-left:8px;border-left:2px solid #eadbd0}.exam-subnav[hidden]{display:none}.exam-subnav .nav-item{height:auto;min-height:38px;padding:7px 9px;line-height:1.45;font-size:12px}.exam-subnav .nav-item.active{background:#f3eae3;color:#704c3d}
.calendar-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:17px 0}.calendar-stat-grid article,.calendar-panel,.calendar-settings,.exam-hub-card,.exam-date-panel,.exam-course-card{background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px}.calendar-stat-grid article{padding:14px;display:grid;gap:6px;min-height:96px}.calendar-stat-grid small,.calendar-stat-grid span{font-size:11px;color:#897a70}.calendar-stat-grid strong{font-size:19px;color:#795548}.calendar-panel{padding:16px;margin:12px 0}.calendar-toolbar,.calendar-nav,.calendar-view-toggle{display:flex;align-items:center;gap:8px}.calendar-toolbar{justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}.calendar-view-toggle{background:#f5eee8;border-radius:8px;padding:3px}.calendar-view-toggle button,.calendar-nav button{border:0;background:transparent;border-radius:6px;padding:7px 10px;color:#6b584b;font:inherit;font-size:12px}.calendar-view-toggle button.active{background:#fffdfa;color:#795548;box-shadow:0 1px 3px #392d2718}.calendar-nav strong{font-size:14px;min-width:150px;text-align:center}.calendar-nav button{border:1px solid #e9dfd7;background:#fffdfa;font-size:16px}.calendar-nav .calendar-today{font-size:11px}.calendar-weekdays,.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{text-align:center;padding:9px 2px;color:#897a70;font-size:11px}.calendar-day{min-height:92px;padding:7px;border-top:1px solid #eee6df;border-right:1px solid #eee6df;min-width:0}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#faf7f4}.calendar-day-number{font-size:12px;color:#5b4a3f}.calendar-day.is-today{background:#f5eee8}.calendar-day.is-today .calendar-day-number{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#795548;color:white}.calendar-event{display:block;width:100%;margin-top:5px;padding:5px 6px;text-align:left;border:0;border-radius:5px;background:#f2e7dd;color:#795548;font:inherit;font-size:10px;line-height:1.35;cursor:pointer}.calendar-event.final{background:#efe7dc;color:#795a3d}.calendar-week-list{display:grid}.calendar-week-row{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:12px;min-height:60px;padding:8px 10px;border-top:1px solid #eee6df}.calendar-week-row strong{font-size:12px;color:#5b4a3f}.calendar-week-row.is-today{background:#f5eee8}.calendar-week-row>div{display:flex;gap:8px;flex-wrap:wrap}.calendar-week-row .calendar-event{width:auto;min-width:130px;margin:0}.calendar-settings{padding:15px;margin:12px 0}.calendar-settings h2{font-size:15px;margin:0}.calendar-settings p,.calendar-settings>small{color:#897a70;font-size:11px}.calendar-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.calendar-settings-grid label{display:grid;gap:5px;color:#68584f;font-size:12px}.calendar-settings-grid input{height:39px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;padding:7px 9px;font:inherit}.exam-hub-intro p{font-size:13px;color:#897a70}.exam-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:17px 0}.exam-hub-card{padding:18px;display:grid;justify-items:start;gap:10px}.exam-card-icon{font-size:24px;color:#795548}.exam-hub-card h2{font-size:17px;margin:0}.exam-hub-card p{font-size:12px;color:#897a70;margin:0}.exam-hub-card>strong{font-size:13px;color:#795548}.exam-prototype-note{padding:12px 14px;border-radius:8px;background:#f5eee8;color:#795548;font-size:12px;line-height:1.6}.exam-access-header{display:grid;justify-items:start;gap:8px}.exam-access-header h2{font-size:22px;margin:4px 0 0}.exam-access-header p{font-size:12px;color:#897a70;margin:0}.exam-date-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;margin:14px 0}.exam-date-panel>div{display:grid;gap:5px}.exam-date-panel small{font-size:11px;color:#897a70}.exam-date-panel strong{font-size:16px;color:#51443c}.exam-days-left{font-size:13px;font-weight:700;color:#795548}.exam-course-list{display:grid;gap:9px;margin:14px 0}.exam-course-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px}.exam-course-tag{font-size:10px;color:#795548}.exam-course-card h3{font-size:14px;margin:3px 0}.exam-course-card small{color:#897a70;font-size:11px}.exam-course-card .secondary-button{color:#795548;border-color:#e4d3c5}
@media(max-width:900px){.calendar-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.calendar-stat-grid{gap:7px}.calendar-stat-grid article{padding:10px;min-height:86px}.calendar-stat-grid strong{font-size:16px}.calendar-panel{padding:9px}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-nav{width:100%;justify-content:space-between;gap:4px}.calendar-nav strong{min-width:0;flex:1;font-size:12px}.calendar-day{min-height:65px;padding:4px 2px}.calendar-day-number{font-size:10px}.calendar-event{padding:4px 2px;font-size:8px}.calendar-settings-grid{grid-template-columns:1fr}.calendar-week-row{grid-template-columns:92px 1fr;gap:6px;padding:7px 5px}.calendar-week-row .calendar-event{min-width:0;font-size:9px}.exam-hub-grid{grid-template-columns:1fr}.exam-hub-card{padding:14px}.exam-date-panel,.exam-course-card{align-items:flex-start;flex-direction:column}.exam-course-card .secondary-button{width:100%}}
.role-preview{display:grid;gap:6px;padding:10px 9px;margin:2px 0 14px;border:1px solid #e9dfd7;border-radius:9px;background:#fffdfa}.role-preview label{font-size:11px;color:#795548;font-weight:700}.role-preview select{height:35px;width:100%;padding:0 9px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;color:#51443c;font:inherit;font-size:12px}.role-preview small{font-size:9px;line-height:1.45;color:#897a70}.role-hero,.role-info-card{padding:22px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:12px}.role-hero h2,.role-info-card h2{font-size:22px;color:#4d3b31;margin:10px 0}.role-hero p,.role-info-card p{font-size:14px;color:#897a70;line-height:1.7}.role-link-grid,.role-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.role-link-grid button{padding:12px 15px;border:1px solid #e9dfd7;border-radius:9px;background:#fffdfa;color:#795548;font:inherit;cursor:pointer}.role-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:14px 0}.role-course-grid article,.student-task-list article{padding:15px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:10px}.role-course-grid article>span{font-size:11px;color:#795548}.role-course-grid h3,.student-task-list h3{font-size:15px;color:#4d3b31;margin:8px 0}.role-course-grid small,.student-task-list p,.student-task-list article>span{font-size:11px;color:#897a70}.role-page-heading h2{font-size:20px;margin:8px 0 4px}.role-page-heading p{font-size:12px;color:#897a70}.student-task-list{display:grid;gap:9px}.student-task-list article{display:flex;justify-content:space-between;align-items:center;gap:12px}.student-task-list p{margin:0}.demo-data-note{margin-top:14px;padding:11px 13px;border-radius:8px;background:#f5eee8;color:#795548;font-size:11px;line-height:1.6}.role-action-row{align-items:center}@media(max-width:700px){.role-course-grid{grid-template-columns:1fr}.role-hero,.role-info-card{padding:16px}.role-hero h2,.role-info-card h2{font-size:18px}.student-task-list article{align-items:flex-start;flex-direction:column}}
.sidebar{overflow-y:auto}.role-preview{flex:none}
.login-menu-wrap{position:relative}.login-menu-button{height:36px;padding:0 12px;border:1px solid #e4d3c5;border-radius:8px;background:#fffdfa;color:#795548;font:inherit;font-size:12px;font-weight:700;white-space:nowrap}.login-menu-button span{margin-left:5px}.login-menu{position:absolute;right:0;top:calc(100% + 9px);z-index:15;width:260px;padding:12px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:11px;box-shadow:0 12px 30px #392d2720;display:grid;gap:5px}.login-menu[hidden]{display:none}.login-menu>strong{font-size:12px;color:#4d3b31;padding:4px 7px 7px}.login-menu>button{width:100%;padding:9px 8px;text-align:left;border:0;border-radius:7px;background:transparent;color:#51443c;font:inherit;font-size:12px}.login-menu>button:hover{background:#f5eee8;color:#795548}.login-menu>button small{color:#a28d7e}.login-menu>p{margin:5px 7px 2px;padding-top:8px;border-top:1px solid #eee6df;font-size:10px;color:#897a70}.top-actions{position:relative}@media(max-width:700px){.login-menu-wrap{position:static}.login-menu{position:absolute;right:10px;top:52px;width:min(280px,calc(100vw - 20px))}.login-menu-button{height:33px;padding:0 8px;font-size:11px}}
.assessment-workspace-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 12px}.assessment-workspace-header>div{margin-right:auto}.assessment-workspace-header p{margin:6px 0 0;color:#897a70;font-size:12px}.assessment-tabs{display:flex;gap:6px;overflow:auto;border-bottom:1px solid #e9dfd7;margin-bottom:16px}.assessment-tab{flex:none;padding:10px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#897a70;font:inherit;font-size:12px}.assessment-tab.active{border-color:#795548;color:#795548;font-weight:700}.assessment-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.assessment-section-heading h2{font-size:16px;margin:0}.assessment-section-heading p{font-size:11px;color:#897a70;margin:4px 0 0}.assessment-editor{margin:12px 0;padding:16px;background:#fffdfa;border:1px solid #ddc8b8;border-radius:11px}.assessment-editor[hidden]{display:none}.assessment-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assessment-editor-grid label,.assessment-record-picker label{display:grid;gap:6px;color:#68584f;font-size:12px}.assessment-editor-grid input,.assessment-editor-grid select,.assessment-editor-grid textarea,.assessment-record-picker select{min-height:39px;padding:8px 10px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;color:#51443c;font:inherit}.assessment-editor-grid textarea{resize:vertical}.assessment-editor-grid .assessment-span{grid-column:1/-1}.assessment-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.assessment-plan-list,.support-list{display:grid;gap:10px;margin:12px 0}.assessment-plan-card,.support-record,.assessment-final-panel{padding:15px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:10px}.assessment-plan-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assessment-plan-main h3{font-size:15px;margin:7px 0 3px}.assessment-plan-main p,.support-record p{font-size:11px;color:#897a70;margin:3px 0}.assessment-plan-main>strong{font-size:13px;color:#795548;white-space:nowrap}.assessment-indicator{display:grid;gap:3px;padding:10px 0;border-bottom:1px solid #eee6df;font-size:11px;color:#51443c}.assessment-indicator b{color:#897a70;font-size:10px}.assessment-plan-meta{display:flex;gap:16px;flex-wrap:wrap;padding-top:9px;color:#897a70;font-size:10px}.assessment-record-picker{max-width:480px;margin:12px 0}.assessment-record-grid{display:grid}.assessment-record-head,.assessment-record-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(100px,.45fr) minmax(220px,1.6fr);gap:9px;align-items:center}.assessment-record-head{padding:8px 0;color:#897a70;font-size:10px;border-bottom:1px solid #eee6df}.assessment-record-row{padding:8px 0;border-bottom:1px solid #f1ebe5}.assessment-record-row strong{font-size:12px;color:#51443c}.assessment-record-row input{height:37px;min-width:0;padding:7px 9px;border:1px solid #e4d8ce;border-radius:7px;background:#fff;font:inherit;font-size:12px}.assessment-record-form,.assessment-history{margin:14px 0}.assessment-history h3{font-size:14px}.table-subline{display:block;margin-top:3px;color:#897a70}.assessment-workspace-header .scheme-term{margin-left:auto;color:#897a70;font-size:11px}.support-record{display:flex;align-items:center;justify-content:space-between;gap:12px}.support-record strong{font-size:12px}.support-record small{font-size:10px;color:#897a70}.assessment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.assessment-summary-grid article{display:grid;gap:5px;padding:13px;background:#fffdfa;border:1px solid #e9dfd7;border-radius:9px}.assessment-summary-grid small{font-size:10px;color:#897a70}.assessment-summary-grid strong{font-size:20px;color:#795548}.assessment-final-panel{margin:12px 0}.assessment-final-panel h3{font-size:14px;margin:0}.assessment-final-panel ul{padding-left:20px;color:#51443c;font-size:12px;line-height:1.8}.assessment-final-panel .form-hint{display:block;margin:10px 0}.assessment-final-panel .report-table-wrap{overflow:auto}@media(max-width:700px){.assessment-workspace-header{align-items:stretch}.assessment-workspace-header>div{width:100%}.assessment-workspace-header select{width:100%}.assessment-workspace-header .scheme-term{margin-left:0}.assessment-tabs{margin-right:-14px}.assessment-tab{padding:9px;font-size:11px}.assessment-section-heading{align-items:flex-start;flex-direction:column}.assessment-editor-grid{grid-template-columns:1fr}.assessment-editor-grid .assessment-span{grid-column:auto}.assessment-editor-actions{align-items:flex-start;flex-direction:column}.assessment-record-head,.assessment-record-row{grid-template-columns:80px 80px minmax(150px,1fr);gap:6px}.assessment-record-grid{overflow:auto}.assessment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-plan-main h3{font-size:13px}.assessment-plan-meta{gap:8px}.support-record{align-items:flex-start;flex-direction:column}}
.student-page-head{margin:10px 0 22px}.student-page-head h2{font-size:26px;margin:7px 0}.student-page-head p{color:var(--muted);margin:0}.student-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 32px}.student-shortcuts button,.student-unit-card,.student-chat,.student-assignment-card,.student-grade-card,.student-quiz-feedback{background:#fff;border:1px solid var(--line,#eaded3);border-radius:16px;padding:20px;color:inherit}.student-shortcuts button{text-align:left;cursor:pointer}.student-shortcuts strong,.student-shortcuts span{display:block}.student-shortcuts span{margin-top:8px;color:var(--muted)}.student-course-filter{margin-bottom:16px}.student-course-filter label,.student-chat>label{display:grid;gap:8px;max-width:440px;font-weight:600}.student-course-filter select,.student-chat select{padding:12px;border:1px solid #dfd0c3;border-radius:10px;background:white}.student-unit-list,.student-assignment-list,.student-grade-sections{display:grid;gap:14px}.student-unit-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.student-unit-card h3,.student-assignment-card h3{margin:8px 0}.student-unit-card p,.student-assignment-card p{color:var(--muted)}.student-unit-actions{display:flex;gap:8px;flex-wrap:wrap}.student-download{display:inline-block;color:#825037;margin:8px 0;font-weight:600}.student-chat{max-width:900px}.student-chat-messages{display:grid;gap:10px;max-height:420px;overflow:auto;padding:18px 0}.student-message{padding:12px 15px;background:#f8f3ef;border-radius:12px}.student-message time{float:right;color:var(--muted);font-size:13px}.student-message p{margin:8px 0 0}.student-chat-form{border-top:1px solid #eee;padding-top:16px}.student-chat-form>div{display:flex;gap:10px;margin-top:8px}.student-chat-form input{flex:1;min-width:0;padding:12px;border:1px solid #dfd0c3;border-radius:10px}.student-quiz-feedback{margin:18px 0;display:grid;gap:12px}.student-quiz-feedback label{padding:10px;background:#f8f3ef;border-radius:8px}.student-quiz-feedback span{color:#825037;font-weight:600}.student-assignment-filters{display:flex;gap:8px;margin:16px 0}.student-assignment-card{display:grid;gap:8px}.student-assignment-top{display:flex;justify-content:space-between;gap:12px}.student-upload{display:grid;gap:8px;font-weight:600}.student-assignment-actions{display:flex;justify-content:flex-end}.student-grade-summary{display:flex;align-items:center;gap:12px;margin:18px 0;padding:18px 22px;background:#f4eae2;border-radius:14px}.student-grade-summary strong{font-size:30px;color:#74432f}.student-grade-summary small{font-size:16px}.student-grade-card{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2fr) auto;align-items:center;gap:16px}.student-grade-card h3{margin:0 0 5px}.student-grade-card>div:first-child span{color:var(--muted)}.student-score-pills{display:flex;gap:7px;flex-wrap:wrap}.student-score-pills span{padding:7px 9px;background:#f8f3ef;border-radius:8px;font-size:14px}.student-grade-card>strong{color:#74432f;white-space:nowrap}@media(max-width:900px){.student-shortcuts{grid-template-columns:repeat(2,1fr)}.student-grade-card{grid-template-columns:1fr}.student-unit-card{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.student-shortcuts{grid-template-columns:1fr}.student-chat-form>div{flex-direction:column}.student-assignment-top{flex-direction:column}}
.admin-page-heading{margin:8px 0 22px}.admin-page-heading h2{font-size:26px;margin:8px 0}.admin-page-heading p{color:var(--muted);margin:0}.admin-exam-panel,.admin-settings-card{background:#fff;border:1px solid #eaded3;border-radius:16px;padding:22px;margin-bottom:16px}.admin-exam-status{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;border-bottom:1px solid #eee;margin-bottom:18px}.admin-exam-status>div{display:grid;gap:6px}.admin-exam-status>div>span{color:var(--muted)}.admin-exam-status strong{font-size:20px}.exam-open{color:#287451}.exam-closed{color:#925c43}.admin-exam-status label,.admin-settings-form label{display:grid;gap:8px;font-weight:600}.admin-exam-status input,.admin-settings-form input,.admin-settings-form select{padding:11px 12px;border:1px solid #dfd0c3;border-radius:10px;background:#fff;min-height:44px}.admin-room-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.admin-room-checks>label{display:flex;align-items:flex-start;gap:12px;border:1px solid #eee0d4;border-radius:12px;padding:14px;cursor:pointer}.admin-room-checks>label:has(input:checked){border-color:#956448;background:#faf5f0}.admin-room-checks input{margin-top:4px;accent-color:#7b5039}.admin-room-checks label span{display:grid;gap:5px}.admin-room-checks small{color:var(--muted)}.admin-exam-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.danger-button{padding:11px 16px;border:1px solid #dfb8ac;border-radius:10px;background:#fff7f5;color:#9c3f2f;font-weight:700;cursor:pointer}.admin-exam-room-list,.admin-room-list{display:flex;gap:10px;flex-wrap:wrap}.admin-exam-room-list>span,.admin-room-list>span{background:#f8f3ef;border-radius:9px;padding:9px 12px;color:#74432f}.admin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-settings-card h3{margin:0 0 6px}.admin-settings-card>p{margin:0 0 16px;color:var(--muted)}.admin-settings-form{display:grid;gap:14px}.admin-settings-form button{justify-self:start}.admin-room-list-card{margin-top:16px}.admin-course-list{display:grid;gap:8px}.admin-course-list article{display:flex;justify-content:space-between;gap:12px;padding:12px;background:#faf7f4;border-radius:9px}.admin-course-list article span{color:var(--muted)}@media(max-width:720px){.admin-settings-grid{grid-template-columns:1fr}.admin-room-checks{grid-template-columns:1fr}.admin-exam-status{align-items:flex-start;flex-direction:column}.admin-course-list article{flex-direction:column}}
.admin-crud-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid #efe5dd;border-radius:12px;background:#fff}.admin-crud-row>div:first-child{display:grid;gap:4px}.admin-crud-row small{color:var(--muted)}.admin-entity-list{display:grid;gap:9px}.admin-row-actions{display:flex;gap:7px}.admin-row-actions button,.admin-crud-edit button{padding:8px 12px}.admin-crud-edit{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:10px;padding-top:12px;border-top:1px solid #eee}.admin-crud-edit[hidden]{display:none}.admin-crud-edit label{display:grid;gap:6px;font-weight:600}.admin-crud-edit input,.admin-crud-edit select{min-width:0;min-height:42px;padding:9px 10px;border:1px solid #dfd0c3;border-radius:9px;background:#fff}.admin-crud-edit .text-button{white-space:nowrap}@media(max-width:700px){.admin-crud-row{grid-template-columns:1fr}.admin-row-actions{justify-content:flex-start}.admin-crud-edit{grid-template-columns:1fr 1fr}.admin-crud-edit button{justify-self:start}}
.admin-course-tools{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:16px 18px;background:#fff;border:1px solid #eaded3;border-radius:14px;margin-bottom:16px}.admin-course-tools label{display:grid;gap:7px;flex:1;max-width:640px;font-weight:600}.admin-course-tools select,.admin-resource-form input,.admin-resource-form select,.admin-resource-form textarea{padding:11px 12px;border:1px solid #dfd0c3;border-radius:10px;background:#fff;min-height:44px}.admin-resource-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.admin-resource-heading h3{margin:0 0 5px}.admin-resource-heading p{margin:0;color:var(--muted)}.admin-resource-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-resource-form>label{display:grid;gap:7px;font-weight:600}.admin-resource-form .admin-resource-wide,.admin-resource-form-actions{grid-column:1/-1}.admin-resource-form-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:8px}.admin-resource-list{display:grid;gap:12px}.admin-resource-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;border:1px solid #efe5dd;border-radius:12px;background:#fff}.admin-resource-row-main{min-width:0}.admin-resource-row-main h4{margin:6px 0}.admin-resource-row-main p{margin:6px 0;color:var(--muted)}.admin-resource-type{font-size:13px;font-weight:700;color:#87583e}.admin-resource-row-main a{display:inline-block;margin-top:7px;color:#87583e;font-weight:600}.admin-resource-row details{margin-top:8px}.admin-lesson-preview{white-space:pre-wrap;background:#f8f3ef;padding:12px;border-radius:9px}.admin-resource-row .admin-row-actions{flex-shrink:0}.admin-course-content{margin-top:16px}@media(max-width:700px){.admin-course-tools{align-items:stretch;flex-direction:column}.admin-resource-form{grid-template-columns:1fr}.admin-resource-form .admin-resource-wide,.admin-resource-form-actions{grid-column:auto}.admin-resource-form-actions{align-items:flex-start;flex-direction:column}.admin-resource-row{flex-direction:column}.admin-resource-row .admin-row-actions{align-self:flex-end}}
.guest-tips-heading{margin:8px 0 22px}.guest-tips-heading h2{font-size:27px;margin:7px 0}.guest-tips-heading p{color:var(--muted);margin:0}.guest-tips-toolbar{display:flex;align-items:end;gap:14px;margin:18px 0}.guest-tips-toolbar label{display:grid;gap:7px;min-width:240px;font-weight:600}.guest-tips-toolbar select,.guest-tips-toolbar input{min-height:44px;padding:10px 12px;border:1px solid #dfd0c3;border-radius:10px;background:#fff}.guest-tips-toolbar .search-box{display:flex;align-items:center;flex:1;max-width:480px}.guest-tip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.guest-tip-card{background:#fff;border:1px solid #eaded3;border-radius:15px;padding:20px}.guest-tip-category{display:inline-block;padding:5px 9px;border-radius:999px;background:#f5ece4;color:#81553b;font-size:13px;font-weight:700}.guest-tip-card h3{margin:12px 0 5px}.guest-tip-card>strong{font-size:14px;color:#87583e}.guest-tip-card p{color:var(--muted);line-height:1.65}.guest-tip-card details{border-top:1px solid #efe5dd;padding-top:12px}.guest-tip-card summary{cursor:pointer;color:#74432f;font-weight:700}.guest-tip-card ol{padding-left:22px;line-height:1.8;color:#51453d}@media(max-width:700px){.guest-tips-toolbar{align-items:stretch;flex-direction:column}.guest-tips-toolbar label{min-width:0}.guest-tips-toolbar .search-box{max-width:none}.guest-tip-grid{grid-template-columns:1fr}}
body,.main-area,.page-content,#overviewPage,#alternatePage{background:#fff!important}
.admin-tip-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-tip-form>label{display:grid;gap:7px;font-weight:600}.admin-tip-form input:not([type=checkbox]),.admin-tip-form select,.admin-tip-form textarea{padding:11px 12px;border:1px solid #dfd0c3;border-radius:10px;background:#fff}.admin-tip-form .admin-tip-wide,.admin-tip-actions{grid-column:1/-1}.admin-tip-publish{display:flex!important;align-items:center;gap:9px}.admin-tip-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-tip-list{display:grid;gap:12px}.admin-tip-row{display:flex;justify-content:space-between;gap:16px;border:1px solid #ece3db;border-radius:12px;padding:16px}.admin-tip-main{min-width:0}.admin-tip-main h4{margin:8px 0 5px}.admin-tip-main>strong{font-size:14px;color:#80553c}.admin-tip-main p{color:var(--muted);margin:7px 0}.admin-tip-main a{color:#80553c;font-weight:600}.admin-tip-row-actions{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.guest-tip-file{display:inline-block;margin-top:10px;color:#80553c;font-weight:700}.guest-tip-card .guest-tip-file{border:1px solid #e7d7ca;padding:8px 10px;border-radius:8px}.main-area,.page-content,#overviewPage,#alternatePage{background:#fff!important}@media(max-width:700px){.admin-tip-form{grid-template-columns:1fr}.admin-tip-form .admin-tip-wide,.admin-tip-actions{grid-column:auto}.admin-tip-actions,.admin-tip-row{align-items:flex-start;flex-direction:column}.admin-tip-row-actions{justify-content:flex-start}}
#roleNavigation{overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin}.sidebar-bottom{flex-shrink:0}
.guest-plan-heading{margin:8px 0 22px}.guest-plan-heading h2{font-size:27px;margin:7px 0}.guest-plan-heading p{color:var(--muted);margin:0}.guest-plan-list{display:grid;gap:16px}.guest-plan-card{background:#fff;border:1px solid #eaded3;border-radius:15px;padding:20px}.guest-plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #efe5dd}.guest-plan-course{color:#80553c;font-weight:700;font-size:14px}.guest-plan-card h3{margin:7px 0 0}.guest-plan-count{white-space:nowrap;padding:6px 10px;border-radius:999px;background:#f7efe8;color:#80553c;font-size:13px;font-weight:700}.guest-plan-units{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px}.guest-plan-units section,.guest-plan-details{padding:14px;background:#faf8f6;border-radius:11px}.guest-plan-units h4{margin:6px 0}.guest-plan-units p,.guest-plan-details p{margin:7px 0;color:#61564f}.guest-plan-unit-number{font-size:13px;font-weight:700;color:#895c40}.guest-plan-details{margin-top:14px}.guest-plan-details a{display:inline-block;margin-top:8px;color:#80553c;font-weight:700}@media(max-width:700px){.guest-plan-units{grid-template-columns:1fr}.guest-plan-card-head{flex-direction:column}}

.assessment-tool-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.assessment-tool-actions .danger-button{padding:8px 12px;font:inherit;font-size:12px}.assessment-tool-actions .secondary-button{padding:8px 12px;font:inherit;font-size:12px}

.plan-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.plan-card-actions .secondary-button,.plan-card-actions .danger-button{padding:8px 12px;font:inherit;font-size:12px}

.schedule-page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 20px}.schedule-page-heading h2{margin:8px 0 4px;font-size:22px}.schedule-page-heading p,.schedule-note{margin:0;color:#897a70}.schedule-sample-badge{padding:7px 11px;border-radius:20px;background:#f4eae2;color:#795548;font-size:12px;font-weight:700}.teaching-schedule-table{min-width:720px}.schedule-note{font-size:13px;margin-top:14px}@media(max-width:600px){.schedule-page-heading{align-items:flex-start;flex-direction:column}}

.admin-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.admin-record-actions .secondary-button,.admin-record-actions .danger-button{padding:8px 12px;font:inherit;font-size:12px}

.student-roster-heading{margin:10px 0 18px}.student-roster-heading h2{margin:8px 0 4px;font-size:22px}.student-roster-heading p{margin:0;color:#897a70}.student-roster-table{min-width:760px}.student-row-actions,.student-edit-actions{display:flex;gap:7px;flex-wrap:wrap}.student-row-actions button,.student-edit-actions button{padding:8px 11px;font:inherit;font-size:12px}.student-edit-row>td{background:#fcf8f4}.student-edit-form{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;align-items:end}.student-edit-form label{display:grid;gap:6px;font-weight:600}.student-edit-form input,.student-edit-form select{min-width:0;min-height:40px;padding:8px 10px;border:1px solid #dfd0c3;border-radius:8px;background:#fff}.student-edit-actions{grid-column:1/-1;justify-content:flex-end}@media(max-width:700px){.student-edit-form{grid-template-columns:repeat(2,minmax(120px,1fr))}}

.student-grade-dashboard{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin:18px 0}.grade-dashboard-card{padding:20px;border:1px solid #eaded3;border-radius:15px;background:#fff}.grade-dashboard-card>span{display:block;color:#897a70;font-size:13px}.grade-dashboard-card>strong{display:block;margin-top:10px;color:#74432f;font-size:27px}.grade-dashboard-card>strong small{font-size:16px;color:#897a70}.grade-dashboard-card>p{margin:6px 0 12px;color:#897a70;font-size:13px}.grade-dashboard-total{background:#f8f3ef}.grade-dashboard-total>b{display:block;margin-top:8px;color:#795548;font-size:13px}.grade-dashboard-track,.grade-breakdown-track{height:9px;border-radius:10px;background:#eee6df;overflow:hidden}.grade-dashboard-track i,.grade-breakdown-track i{display:block;height:100%;border-radius:inherit;background:#8b624b}.grade-awaiting{font-size:20px!important;color:#9a765e!important}.grade-dashboard-breakdown{padding:20px;border:1px solid #eaded3;border-radius:15px;background:#fff;margin-bottom:16px}.grade-breakdown-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.grade-breakdown-heading h3{margin:0;font-size:17px}.grade-breakdown-heading p{margin:5px 0 0;color:#897a70;font-size:13px}.grade-breakdown-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(120px,2fr) 48px;align-items:center;gap:14px;padding:11px 0;border-top:1px solid #f0e9e3}.grade-breakdown-row>div:first-child{display:flex;justify-content:space-between;gap:12px}.grade-breakdown-row>div:first-child span{color:#897a70}.grade-breakdown-row>b{text-align:right;color:#74432f}.grade-breakdown-track i.unpublished{background:#d9cfc7}@media(max-width:800px){.student-grade-dashboard{grid-template-columns:1fr 1fr}.grade-dashboard-total{grid-column:1/-1}.grade-breakdown-row{grid-template-columns:1fr 48px}.grade-breakdown-track{grid-column:1/2;grid-row:2}.grade-breakdown-row>b{grid-column:2;grid-row:1/3}}@media(max-width:520px){.student-grade-dashboard{grid-template-columns:1fr}.grade-dashboard-total{grid-column:auto}.grade-breakdown-heading{flex-direction:column}.grade-breakdown-row>div:first-child{flex-direction:column;gap:3px}}

/* ==========================================================
   ธีมโทนน้ำตาล "Coffee & Paper" — ชั้นสไตล์สุดท้าย (override)
   ========================================================== */
:root{
  --espresso:#2f211a;--coffee:#4a3328;--mocha:#6b4a3a;--caramel:#b27b4f;--honey:#d6a66e;
  --latte:#eadbc8;--sand:#f3e9dc;--cream:#faf5ee;--paper:#fffcf7;
  --ink:#3a2a21;--muted:#8c7666;--line:#eadfd2;--primary:#8a5a3c;
  --sage:#6f8f72;--terracotta:#b5583f;
  --shadow-sm:0 1px 2px rgba(74,51,40,.06),0 2px 8px rgba(74,51,40,.05);
  --shadow-md:0 2px 4px rgba(74,51,40,.05),0 10px 28px rgba(74,51,40,.09);
  --radius:16px;
  --font:'Noto Sans Thai','Source Sans 3',sans-serif;
  --serif:'Noto Serif Thai','Noto Sans Thai',serif;
}
body{background:var(--cream);color:var(--ink);font-family:var(--font);
  background-image:radial-gradient(circle at 100% 0,rgba(214,166,110,.10),transparent 38%),radial-gradient(circle at 0 100%,rgba(107,74,58,.06),transparent 40%);background-attachment:fixed}
::selection{background:var(--honey);color:var(--espresso)}

/* ---------- แถบเมนูข้าง: สีกาแฟเข้ม ---------- */
body .sidebar{background:linear-gradient(180deg,var(--coffee) 0%,var(--espresso) 100%);border-right:0;color:#f3e6d6;box-shadow:4px 0 24px rgba(47,33,26,.18)}
body .sidebar .brand,body .sidebar .brand-title,body .sidebar .brand *{color:#fff4e6}
body .sidebar .brand img{border-radius:50%;box-shadow:0 0 0 3px rgba(214,166,110,.35)}
body .sidebar .school-switch{background:rgba(255,244,230,.06);border:1px solid rgba(255,244,230,.12);border-radius:14px}
body .sidebar .school-switch strong,body .sidebar .profile strong{color:#fff4e6}
body .sidebar .school-switch small,body .sidebar .profile small{color:#cdb39c}
body .sidebar .school-avatar,body .sidebar .profile-avatar{background:linear-gradient(135deg,var(--honey),var(--caramel));color:var(--espresso)}
body .sidebar .nav-caption{color:#bf9f84;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:600}
body .sidebar .nav-item{color:#e6d4c2;border-radius:10px;transition:background .15s,color .15s,transform .15s}
body .sidebar .nav-item:hover{background:rgba(255,244,230,.08);color:#fff;transform:translateX(2px)}
body .sidebar .nav-item.active{background:linear-gradient(90deg,var(--caramel),#9a6740);color:#fff;font-weight:600;box-shadow:0 4px 14px rgba(178,123,79,.35)}
body .sidebar .exam-subnav .nav-item{color:#d9c3ad}
body .sidebar .help-card{background:rgba(255,244,230,.07);border-color:rgba(255,244,230,.12);color:#f3e6d6}
body .sidebar .help-card p{color:#cdb39c}
body .sidebar .text-button,body .sidebar .help-card button{color:var(--honey)}
body .sidebar .profile{border-top-color:rgba(255,244,230,.12)}
body .sidebar .profile button,body .sidebar .icon-button{color:#e6d4c2}
body .sidebar::-webkit-scrollbar{width:6px}body .sidebar::-webkit-scrollbar-thumb{background:rgba(255,244,230,.18);border-radius:9px}

/* ---------- แถบบน ---------- */
body .topbar{background:rgba(255,252,247,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:4}
body .breadcrumbs{color:var(--muted)}
body .breadcrumbs strong,body #breadcrumbCurrent{color:var(--coffee)}
body .top-avatar{background:linear-gradient(135deg,var(--honey),var(--caramel));color:#fff}

/* ---------- ส่วนต้อนรับ ---------- */
body .welcome-row{position:relative;overflow:hidden;border-radius:22px;padding:26px 30px;margin-bottom:26px;color:#fff6ea;
  background:linear-gradient(120deg,var(--coffee) 0%,var(--mocha) 55%,var(--caramel) 120%);box-shadow:var(--shadow-md)}
body .welcome-row::after{content:"";position:absolute;right:-60px;top:-80px;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(214,166,110,.45),transparent 65%);pointer-events:none}
body .welcome-row::before{content:"";position:absolute;inset:0;opacity:.08;pointer-events:none;
  background-image:repeating-linear-gradient(45deg,#fff 0 1px,transparent 1px 14px)}
body .welcome-row>*{position:relative;z-index:1}
body .welcome-row .eyebrow{color:#f0d9bd;font-weight:500}
body .welcome-row h1,body #pageTitle{font-family:var(--serif);font-weight:700;letter-spacing:-.01em;color:#fffaf2}
body .welcome-row h1 span{color:var(--honey)}
body .welcome-row p,body #pageSubtitle{color:#ead6c0}

/* ---------- การ์ดและแผง ---------- */
body .panel,body .summary-card,body .course-card,body .modal,body .scheme-card,body .learning-game-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
body .summary-card,body .course-card,body .learning-game-card,body .scheme-card{transition:transform .18s ease,box-shadow .18s ease}
body .summary-card:hover,body .course-card:hover,body .learning-game-card:hover,body .scheme-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
body .summary-card{position:relative;overflow:hidden}
body .summary-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--caramel),var(--honey))}
body .summary-card strong{font-family:var(--serif);color:var(--espresso)}
body .metric-icon{background:var(--sand)!important;color:var(--mocha)!important;border-radius:10px}
body .metric-icon.green{background:#e5eee3!important;color:var(--sage)!important}
body .metric-icon.amber{background:#f7e8d2!important;color:#a8692f!important}
body .bars i{background:var(--latte)}
body .bars i:nth-child(6),body .bars i:nth-child(13){background:var(--caramel)}
body .progress,body .progress-track{background:var(--sand)}
body .progress i,body .progress span,body .progress-bar{background:linear-gradient(90deg,var(--caramel),var(--honey))}
body .spark path,body .spark polyline{stroke:var(--caramel)}

/* ---------- หัวข้อ ---------- */
body h2,body h3,body .section-heading h2,body .panel-heading h2,body .admin-page-heading h2{font-family:var(--serif);color:var(--espresso)}
body .sample-label{background:var(--sand);color:var(--mocha);border-radius:999px;padding:4px 11px}

/* ---------- ปุ่ม ---------- */
body .primary-button{background:linear-gradient(135deg,var(--mocha),var(--coffee));color:#fff8ee;border:0;border-radius:12px;box-shadow:0 4px 14px rgba(74,51,40,.25);transition:transform .15s,box-shadow .15s,filter .15s}
body .primary-button:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(74,51,40,.3);filter:brightness(1.07)}
body .secondary-button{background:var(--paper);color:var(--coffee);border:1px solid var(--latte);border-radius:12px}
body .secondary-button:hover{background:var(--sand)}
body .danger-button{border-radius:12px}
body .text-button{color:var(--caramel)}
body .login-menu-button{border-color:var(--latte);border-radius:12px;color:var(--coffee);background:var(--paper)}

/* ---------- ตัวกรองระดับชั้น ---------- */
body .class-filter{border-radius:999px;color:var(--muted);border:1px solid transparent;transition:all .15s}
body .class-filter:hover{background:var(--sand);color:var(--coffee)}
body .class-filter.active{background:var(--coffee);color:#fff6ea;border-color:var(--coffee);box-shadow:0 3px 10px rgba(74,51,40,.25)}
body .class-filter span{opacity:.7;margin-left:3px}

/* ---------- รายการ / ตาราง ---------- */
body .agenda-item,body .task-row{border-color:var(--line)}
body .agenda-item i{background:var(--caramel)!important}
body .agenda-item i.teal{background:var(--sage)!important}
body .agenda-item i.purple{background:var(--mocha)!important}
body .agenda-item i.orange{background:var(--honey)!important}
body .data-table th,body table th{background:var(--sand);color:var(--mocha)}
body .data-table tr:hover td,body table tbody tr:hover td{background:#fcf6ee}

/* ---------- ฟอร์ม ---------- */
body input,body select,body textarea{border-color:var(--latte)}
body input:focus,body select:focus,body textarea:focus{outline:none;border-color:var(--caramel);box-shadow:0 0 0 3px rgba(178,123,79,.18)}

/* ---------- โมดอล / ทอสต์ ---------- */
body .modal-backdrop{background:rgba(47,33,26,.45);backdrop-filter:blur(3px)}
body .toast{background:var(--espresso);color:#fff4e6;border-radius:12px;box-shadow:var(--shadow-md)}

/* ---------- มือถือ ---------- */
@media(max-width:700px){
  body .welcome-row{padding:20px;border-radius:18px}
  body .welcome-row h1{font-size:24px}
}
body .spark{color:var(--caramel);opacity:.85}
body .avatar-stack{color:var(--mocha);background:var(--sand)}
body .class-filter.active span{opacity:.85;color:var(--honey)}
body .summary-card strong{font-feature-settings:"lnum"}
body .course-card .course-tag,body .tag{border-radius:8px}

/* ---------- ตารางสอนแบบตาราง (ข้อมูลจริง) ---------- */
.tt-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.tt-summary div{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow-sm)}
.tt-summary strong{display:block;font:700 24px var(--serif);color:var(--espresso)}
.tt-summary span{font-size:12px;color:var(--muted)}
.tt-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-sm)}
body .tt-grid{width:100%;min-width:920px;border-collapse:separate;border-spacing:0;table-layout:fixed}
body .tt-grid th,body .tt-grid td{padding:6px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;vertical-align:middle;font-size:12px}
body .tt-grid thead th{background:var(--coffee);color:#fff4e6;font-weight:600}
body .tt-grid thead th:first-child{width:92px}
body .tt-grid thead th small{display:block;font-weight:400;color:#e6cfb6;font-size:10px;margin-top:2px}
body .tt-grid .tt-day{background:var(--sand);color:var(--espresso);font:700 14px var(--serif)}
body .tt-grid tr:hover td{background:transparent}
.tt-lunch{background:repeating-linear-gradient(45deg,#f6efe6 0 6px,#fbf6ef 6px 12px);color:var(--muted);font-size:11px;writing-mode:vertical-rl;letter-spacing:.1em}
body .tt-grid thead th:nth-child(6){width:44px}
.tt-cell{border-radius:10px;padding:8px 4px;display:flex;flex-direction:column;gap:2px;min-height:64px;justify-content:center;line-height:1.25}
.tt-cell strong{font-size:12.5px;letter-spacing:.02em}
.tt-cell span{font-size:14px;font-weight:700}
.tt-cell small{font-size:10px;opacity:.75}
.tt-lavender{background:#efe3d6;color:#5a3a28}.tt-mint{background:#e3ebdf;color:#3f5a42}.tt-peach{background:#f6dfcb;color:#7a4422}.tt-sky{background:#e8e1ec;color:#4d3d58}
.tt-duty{background:#f4efe9;color:var(--muted);border:1px dashed var(--latte)}
.tt-duty strong{font-size:11.5px;color:var(--mocha)}
.tt-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:14px 2px;font-size:12px;color:var(--ink)}
.tt-legend-item{display:inline-flex;align-items:center;gap:6px}
.tt-dot{width:12px;height:12px;border-radius:4px;display:inline-block}
.tt-dot.tt-lavender{background:#c9a98c}.tt-dot.tt-mint{background:#8fae8f}.tt-dot.tt-peach{background:#e0a57a}.tt-dot.tt-sky{background:#a996b6}
.agenda-item.is-done{opacity:.55}
@media(max-width:700px){.tt-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- ตารางเรียนรายห้อง ---------- */
.ct-picker{display:grid;gap:8px;margin:16px 0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow-sm)}
.ct-grade{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.ct-grade>span{min-width:38px;font:700 13px var(--serif);color:var(--mocha)}
.ct-room{min-width:34px;height:30px;border-radius:999px;border:1px solid var(--latte);background:var(--paper);color:var(--coffee);font-size:12px;transition:all .15s}
.ct-room:hover{background:var(--sand)}
.ct-room.active{background:var(--coffee);color:#fff6ea;border-color:var(--coffee);box-shadow:0 3px 10px rgba(74,51,40,.25)}
.ct-grid .tt-cell{min-height:70px}
.ct-grid .ct-teacher{font-size:11.5px;font-weight:600}
.ct-t1{background:#f3e3d3;color:#6b3f22}.ct-t2{background:#e6ebdd;color:#4a5a35}.ct-t3{background:#e9dccd;color:#5a3a28}.ct-t4{background:#efe1d0;color:#7a4c25}.ct-t5{background:#dfe8e3;color:#36574a}
.ct-t6{background:#f0dede;color:#7a3b3b}.ct-t7{background:#ece4d2;color:#62542a}.ct-t8{background:#e2e3ec;color:#3d4366}.ct-t9{background:#f4e0d6;color:#8a3d22}.ct-t10{background:#e8e0ee;color:#54406a}
.tt-dot.ct-t1{background:#d9a77f}.tt-dot.ct-t2{background:#9fb184}.tt-dot.ct-t3{background:#b08c6d}.tt-dot.ct-t4{background:#d3a26e}.tt-dot.ct-t5{background:#86ab9a}.tt-dot.ct-t6{background:#c98b8b}.tt-dot.ct-t7{background:#bba872}.tt-dot.ct-t8{background:#8f95bd}.tt-dot.ct-t9{background:#df9a79}.tt-dot.ct-t10{background:#a790bd}
.ct-mine{box-shadow:inset 0 0 0 2px var(--caramel);position:relative}
.ct-mine::after{content:"★";position:absolute;top:3px;right:6px;font-size:10px;color:var(--caramel)}
.tt-dot.ct-mine-dot{background:var(--paper);box-shadow:inset 0 0 0 2px var(--caramel)}
.ct-today th.tt-day{background:var(--coffee);color:#fff4e6}
.ct-today th.tt-day small{display:block;font:500 10px var(--font);color:var(--honey)}
.ct-today td{background:#fdf7ef}
