@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800&family=Noto+Serif+SC:wght@700&display=swap";:root{color:#362f2f;font-synthesis:none;--ink:#362f2f;--green:#a80000;--mint:#f4e2e2;--orange:#a97928;--line:#e4dddd;background:#f6f2ef;font-family:Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.loading{height:100vh;color:var(--green);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.loading svg{animation:1.4s infinite pulse}@keyframes pulse{50%{opacity:.55;transform:scale(1.12)}}.brand{align-items:center;gap:10px;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.brand>div:last-child{flex-direction:column;display:flex}.brand strong{letter-spacing:.08em;font-family:Noto Serif SC;font-size:19px}.brand span{color:#74837f;letter-spacing:.12em;font-size:10px}.student-shell{flex-direction:column;min-height:100vh;display:flex}.student-shell>header{border-bottom:1px solid var(--line);background:#faf9f5;justify-content:space-between;align-items:center;height:76px;padding:0 max(5vw,32px);display:flex}.quiet-link{color:#7d8986;align-items:center;gap:6px;font-size:12px;text-decoration:none;display:flex}.student-main{grid-template-columns:330px 1fr;align-items:start;gap:52px;width:min(1180px,92vw);margin:38px auto;display:grid}.intro-panel{padding:42px 0;position:sticky;top:20px}.eyebrow{letter-spacing:.2em;color:#d16b42;margin:0 0 18px;font-size:10px;font-weight:800}.intro-panel h1{margin:0 0 22px;font-family:Noto Serif SC;font-size:39px;line-height:1.35}.intro-panel h1 em{color:var(--green);font-style:normal;position:relative}.intro-panel h1 em:after{content:"";opacity:.5;background:#e7b264;border-radius:50%;height:7px;position:absolute;bottom:-4px;left:0;right:0}.intro-panel>p:not(.eyebrow){color:#687a75;width:280px;font-size:14px;line-height:1.9}.math-orbit{height:150px;margin:20px 0;position:relative}.math-orbit:before{content:"";border:1px solid #b8c9c2;border-radius:50%;width:128px;height:90px;position:absolute;top:25px;left:50px;transform:rotate(-18deg)}.math-orbit span,.math-orbit b,.math-orbit small,.math-orbit i{color:var(--green);font-family:Georgia;position:absolute}.math-orbit span{font-size:24px;top:55px;left:83px}.math-orbit b{font-size:24px;top:18px;left:176px}.math-orbit small{font-size:21px;top:78px;left:35px}.math-orbit i{font-size:22px;top:102px;left:170px}.privacy-note{color:#61756f;gap:12px;font-size:11px;line-height:1.55;display:flex}.privacy-note svg{color:#c78156}.privacy-note strong{color:#344e47;font-size:12px}.form-card{background:#fff;border-radius:20px;padding:32px 42px 38px;box-shadow:0 20px 60px #21372f14}.steps{align-items:center;margin-bottom:36px;display:flex}.steps>div{color:#a1aaa7;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.steps b{border:1px solid #cfd5d2;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;display:grid}.steps .active{color:var(--green)}.steps .active b{background:var(--green);color:#fff;border-color:var(--green)}.steps>i{background:#dfe4e1;flex:0 0 68px;height:1px;margin:0 13px}.form-heading{align-items:start;gap:15px;margin-bottom:25px;display:flex}.form-heading>span{color:#d4dbd8;font-family:Georgia;font-size:28px;font-weight:700}.form-heading h2{margin:0 0 5px;font-size:22px}.form-heading p{color:#98a29f;margin:0;font-size:12px}.form-heading p b{color:#df6849}.form-grid{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.form-grid label:first-child{grid-column:1/-1}.form-grid.two label:first-child{grid-column:auto}.form-card label>span,.field-block>.label,.note>span{margin-bottom:8px;font-size:12px;font-weight:600;display:block}.form-card input,.form-card select,.form-card textarea{width:100%;color:var(--ink);background:#fbfbf8;border:1px solid #dfe3df;border-radius:9px;outline:none;padding:11px 13px;transition:all .2s}.input-wrap{position:relative}.input-wrap svg{color:#92a09c;position:absolute;top:12px;left:13px}.input-wrap input{padding-left:39px}.field-block{margin:22px 0}.segmented{grid-template-columns:1fr 1fr;gap:12px;display:grid}.segmented button{text-align:left;color:#6f7c78;background:#fff;border:1px solid #dfe3df;border-radius:11px;align-items:center;gap:10px;padding:13px 15px;display:flex}.segmented button>span{flex-direction:column;flex:1;display:flex}.segmented button strong{color:#304a42;font-size:14px}.segmented button small{font-size:10px}.segmented button>svg:last-child{opacity:0}.segmented button.selected{border-color:var(--green);color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:#f2f7f5}.segmented button.selected>svg:last-child{opacity:1}.select-wrap{position:relative}.select-wrap select{appearance:none}.select-wrap svg{pointer-events:none;width:15px;position:absolute;top:12px;right:12px}.primary,.secondary,.export,.danger{border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-weight:600;display:inline-flex}.primary{background:var(--green);color:#fff;box-shadow:0 8px 20px #1f5d4c2e}.next{margin:27px 0 0 auto}.secondary{color:#536962;background:#fff;border:1px solid #dfe3df}.assessment-head{align-items:center}.progress-number{color:#71807b;background:#f2f6f3;border-radius:20px;margin-left:auto;padding:7px 13px;font-size:11px}.progress-number strong{color:var(--green);font-size:16px}.legend{background:#f7f7f3;border-radius:8px;gap:17px;margin-bottom:24px;padding:10px 13px;display:flex}.legend span{color:#72817c;align-items:center;gap:5px;font-size:10px;display:flex}.legend i,.rating-buttons button i{border-radius:50%;width:7px;height:7px;display:inline-block}.red{background:#d96d61}.amber{background:#dfa23f}.blue{background:#5282aa}.green{background:#4d9173}.term-group{margin-bottom:22px}.term-title{align-items:center;gap:12px;margin-bottom:6px;display:flex}.term-title span{color:#75847f;white-space:nowrap;font-size:11px;font-weight:700}.term-title i{background:#e8eae6;flex:1;height:1px}.chapter-row{border-bottom:1px dashed #e7e9e5;justify-content:space-between;align-items:center;padding:11px 0;display:flex}.chapter-name{align-items:center;gap:11px;min-width:165px;display:flex}.chapter-name b{color:#b4bdb9;font:11px Georgia}.chapter-name span{font-size:13px;font-weight:600}.rating-buttons{gap:6px;display:flex}.rating-buttons button{color:#76837f;background:#fff;border:1px solid #e4e6e2;border-radius:16px;align-items:center;gap:5px;padding:6px 9px;font-size:9px;display:flex}.rating-buttons button.picked{background:#f8faf9;border-color:currentColor;box-shadow:0 2px 7px #ccd6d2}.rating-buttons button.red.picked{color:#bc554a}.rating-buttons button.amber.picked{color:#bd7910}.rating-buttons button.blue.picked{color:#3d729e}.rating-buttons button.green.picked{color:#367c5d}.note{margin-top:24px}.form-card textarea{resize:vertical}.actions{justify-content:space-between;margin-top:24px;display:flex}.success-page,.login-page{background:radial-gradient(circle at 20% 10%,#e2ede8,#0000 35%),#f4f2eb;place-items:center;min-height:100vh;display:grid}.success-card,.login-card{text-align:center;background:#fff;border-radius:22px;width:min(560px,92vw);padding:48px;box-shadow:0 25px 70px #3854491b}.success-icon{width:58px;height:58px;color:var(--green);background:#deeee7;border-radius:50%;place-items:center;margin:0 auto 22px;display:grid}.success-card h1{font-family:Noto Serif SC;font-size:27px}.success-card>p:not(.eyebrow){color:#6e7d78;line-height:1.8}.summary-strip{background:#f6f7f3;border-radius:12px;justify-content:space-around;margin:28px 0;padding:16px;display:flex}.summary-strip span{color:#929d99;flex-direction:column;gap:3px;font-size:10px;display:flex}.summary-strip strong{color:var(--ink);font-size:12px}.student-shell>footer{text-align:center;color:#a3aaa7;margin-top:auto;padding:15px;font-size:10px}.login-card{text-align:left;width:min(410px,92vw)}.login-card .brand{margin-bottom:28px}.login-art{height:95px;color:var(--green);background:#e9f1ed;border-radius:15px;place-items:center;display:grid;position:relative;overflow:hidden}.login-art>svg{z-index:1;width:42px;height:42px}.login-art span,.login-art i{border:1px solid #abc9bd;border-radius:50%;width:90px;height:90px;position:absolute}.login-art span{top:23px;left:45px}.login-art i{top:-35px;right:25px}.login-card h1{margin:25px 0 5px;font-size:24px}.login-card>p{color:#84908d;margin:0 0 25px;font-size:12px}.login-card label>span{margin-bottom:8px;font-size:11px;font-weight:600;display:block}.login-card input{background:#fafaf7;border:1px solid #dfe3df;border-radius:9px;outline:0;width:100%;padding:12px 12px 12px 40px}.login-card .primary{width:100%;margin-top:15px}.login-card>a{text-align:center;color:#778680;margin-top:18px;font-size:11px;text-decoration:none;display:block}.error{color:#bd554c;margin-top:8px;font-size:11px}.admin-shell{background:#f2f3ef;grid-template-columns:225px 1fr;min-height:100vh;display:grid}.admin-nav{color:#fff;background:#790000;flex-direction:column;width:225px;padding:25px 18px;display:flex;position:fixed;inset:0 auto 0 0}.admin-nav .brand-mark{color:#173a31;background:#f2aa62}.admin-nav nav{margin-top:46px}.admin-nav nav a{color:#a9beb7;border-radius:8px;align-items:center;gap:11px;margin-bottom:6px;padding:12px 14px;font-size:12px;text-decoration:none;display:flex}.admin-nav nav a svg{width:17px}.admin-nav nav a.active{color:#fff;background:#a82b2b}.admin-user{border-top:1px solid #9d3737;align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.admin-user>div{color:#183a31;background:#e7b05e;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.admin-user span{flex-direction:column;font-size:11px;display:flex}.admin-user small{color:#8fa8a0;font-size:9px}.admin-main{grid-column:2;min-width:0;padding:36px 42px}.admin-main>header{justify-content:space-between;align-items:center;display:flex}.admin-main header h1{margin:0 0 4px;font-size:27px}.admin-main header p:not(.eyebrow){color:#87938f;margin:0;font-size:11px}.stats{grid-template-columns:210px 210px 1fr;gap:17px;margin:29px 0;display:grid}.stats>div{background:#fff;border-radius:13px;padding:20px;position:relative;box-shadow:0 5px 18px #45584f0b}.stats>div>p{color:#75827e;margin:0 0 11px;font-size:11px}.stats>div>strong{color:#263f38;font:30px Georgia}.stats>div>small{color:#9aa39f;margin-left:8px;font-size:9px}.stat-icon{border-radius:9px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:16px;right:17px}.stat-icon svg{width:16px}.stat-icon.green{color:#36755e;background:#e2efe9}.stat-icon.amber{color:#c7812b;background:#fff0dc}.weak-card{grid-template-columns:120px 1fr;align-items:center;display:grid}.weak-card>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.weak-card>div span{align-items:center;gap:7px;font-size:10px;display:flex}.weak-card>div b{background:#f1eee6;border-radius:50%;place-items:center;width:17px;height:17px;font:10px Georgia;display:grid}.weak-card>div em{color:#b46d4f;margin-left:auto;font-style:normal}.records{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 5px 18px #45584f0b}.records-head{border-bottom:1px solid #eceeea;justify-content:space-between;align-items:center;padding:19px 22px;display:flex}.records-head>div:first-child{align-items:center;gap:9px;display:flex}.records-head h2{margin:0;font-size:16px}.records-head span{color:#6d7d77;background:#eef3f0;border-radius:9px;padding:3px 7px;font-size:9px}.record-tools{gap:7px;display:flex}.search{position:relative}.search svg{color:#8d9995;width:14px;position:absolute;top:9px;left:10px}.search input{border:1px solid #e0e4e0;border-radius:7px;outline:0;width:210px;padding:8px 9px 8px 31px;font-size:10px}.record-tools button{padding:7px 10px;font-size:10px}.export{color:#fff;background:#e58453}.export svg{width:14px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:850px}th{text-align:left;color:#8a9692;background:#fafaf8;padding:12px 15px;font-size:9px;font-weight:600}td{color:#687671;border-top:1px solid #f0f1ee;padding:13px 15px;font-size:10px}tbody tr{cursor:pointer}tbody tr:hover{background:#fbfcfa}td>strong,td>small{display:block}td>strong{color:#2e473f;font-size:11px}td>small{color:#98a29f;margin-top:3px;font-size:9px}.student-cell{align-items:center;gap:9px;display:flex}.student-cell>span{color:#34705b;background:#e5efe9;border-radius:9px;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.student-cell div{flex-direction:column;display:flex}.student-cell small{color:#929d99;font-size:8px}.system-tag{color:#4e7769!important;background:#edf3f0!important;padding:4px 7px!important}.mini-bars{background:#eee;border-radius:5px;width:110px;height:5px;display:flex;overflow:hidden}.mini-bars i{height:100%}.empty{text-align:center;color:#8b9793;padding:65px}.empty svg{width:35px;height:35px}.empty h3{color:#52635e;font-size:14px}.empty p{font-size:10px}.drawer-backdrop{z-index:5;background:#79000040;position:fixed;inset:0}.drawer{background:#fff;width:min(430px,94vw);padding:38px;position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-15px 0 45px #1b302929}.drawer-close{color:#65746f;background:#f2f3ef;border:0;border-radius:50%;width:30px;height:30px;font-size:20px;position:absolute;top:16px;right:20px}.drawer h2{margin:0 0 5px;font-family:Noto Serif SC}.drawer>p:not(.eyebrow){color:#89938f;font-size:11px}.drawer-meta{gap:12px;margin:23px 0;display:flex}.drawer-meta span{color:#8a9792;background:#f3f6f3;border-radius:9px;flex-direction:column;flex:1;padding:11px;font-size:9px;display:flex}.drawer-meta strong{color:#304b42;font-size:12px}.drawer h3{margin:28px 0 12px;font-size:13px}.drawer-term>b{color:#899590;border-bottom:1px solid #e9ebe8;padding-bottom:6px;font-size:10px;display:block}.drawer-term>div{border-bottom:1px dashed #eceeeb;justify-content:space-between;padding:9px 2px;font-size:11px;display:flex}.drawer-term em{color:#fff;border-radius:8px;padding:3px 7px;font-size:9px;font-style:normal}.teacher-note{background:#fff7ec;border-left:3px solid #e8a05f;margin-top:20px;padding:12px}.teacher-note span{color:#ba7540;font-size:9px}.teacher-note p{margin:4px 0;font-size:11px}.danger{color:#bf5b52;background:#fff;border:1px solid #e8c8c5;margin-top:25px;font-size:10px}.danger svg{width:14px}@media (width<=900px){.student-main{grid-template-columns:1fr;margin-top:15px}.intro-panel{padding:22px 8px 0;position:static}.intro-panel h1{font-size:31px}.math-orbit{display:none}.privacy-note{margin-top:16px}.admin-shell{display:block}.admin-nav{flex-direction:row;align-items:center;width:100%;height:70px;padding:12px 20px;position:static}.admin-nav nav{margin:0 0 0 auto;display:flex}.admin-nav nav a{margin:0}.admin-user{display:none}.admin-main{padding:25px 18px}.stats{grid-template-columns:1fr 1fr}.weak-card{grid-column:1/-1}.records-head{flex-direction:column;align-items:flex-start;gap:12px}.record-tools{flex-wrap:wrap;width:100%}.search{flex:1}.search input{width:100%}}@media (width<=620px){.student-shell>header{padding:0 18px}.student-main{width:94vw}.form-card{padding:24px 18px}.form-grid,.segmented,.form-grid.two{grid-template-columns:1fr}.form-grid.two label:first-child{grid-column:auto}.rating-buttons button span{display:none}.chapter-name{min-width:0}.legend{flex-wrap:wrap}.intro-panel>p:not(.eyebrow){width:auto}.actions{gap:10px}.stats{grid-template-columns:1fr}.weak-card{grid-column:auto}.admin-main>header .secondary{display:none}.record-tools .search{flex-basis:100%}}.student-roster{min-width:1540px}.account-expiry-badge{color:#38755f;background:#f6fbf8;border:1px solid #dce8e2;border-radius:12px;align-items:center;gap:9px;min-width:132px;padding:9px 11px;display:flex}.account-expiry-badge svg{flex:none;width:18px}.account-expiry-badge span{flex-direction:column;gap:2px;display:flex}.account-expiry-badge strong{white-space:nowrap;font-size:12px}.account-expiry-badge small{color:#7c8984;white-space:nowrap;font-size:9px}.account-expiry-badge.warning{color:#a36c13;background:#fff9e9;border-color:#ead7a4}.account-expiry-badge.urgent,.account-expiry-badge.today,.account-expiry-badge.expired{color:#b51c27;background:#fff1ef;border-color:#efb8b5}.account-expiry-badge.expired{color:#fff;background:#b31822}.account-expiry-badge.expired small{color:#ffe1de}.account-expiry-badge.long-term{color:#756d69;background:#f7f5f3;border-color:#dedbd8}.expiry-text.warning{color:#a36c13}.expiry-text.urgent,.expiry-text.today,.expiry-text.expired{color:#b51c27}.renew-account-action,.renew-account-control{color:#91620b!important;background:#fff9e8!important;border-color:#dbb96e!important}.account-renewal-modal{width:min(620px,94vw)}.account-renewal-content{padding:24px}.renewal-status-card{background:#faf8f6;border:1px solid #e4ddd9;border-radius:16px;align-items:center;gap:16px;padding:20px;display:flex}.renewal-status-card>svg{color:#a70d18;background:#f3e4df;border-radius:12px;width:40px;height:40px;padding:9px}.renewal-status-card>div{flex-direction:column;gap:4px;display:flex}.renewal-status-card span,.renewal-status-card small{color:#837773;font-size:11px}.renewal-status-card strong{font-size:22px}.renewal-status-card.urgent,.renewal-status-card.today,.renewal-status-card.expired{color:#a70d18;background:#fff0ee;border-color:#efb6b3}.renewal-presets{margin-top:22px}.renewal-presets>span,.renewal-date-field>span{margin-bottom:9px;font-size:12px;font-weight:800;display:block}.renewal-presets>div{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.renewal-date-field{margin-top:20px;display:block}.renewal-date-field input{background:#fff;border:1px solid #ded7d3;border-radius:10px;width:100%;height:48px;padding:0 14px;font-size:15px}.renewal-date-field small{color:#8a7f7a;margin-top:7px;font-size:10px;display:block}.long-term-account{color:#8a6a2a;background:0 0;border:0;margin-top:18px;text-decoration:underline}.student-expiry-alert{z-index:5;isolation:isolate;background:linear-gradient(135deg,#fffaf0,#fff0d2);border:1px solid #dfc26f;border-radius:18px;align-items:center;gap:16px;margin:18px 0;padding:18px 20px;display:flex;position:sticky;top:82px;box-shadow:0 12px 30px #8c4f001c}.student-expiry-alert:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f5f1eee6;border-radius:24px;position:absolute;inset:-8px}.student-expiry-alert>div{color:#fff;background:#a70d18;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.student-expiry-alert>div svg{width:24px}.student-expiry-alert>span{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.student-expiry-alert strong{color:#85131b;font-size:16px}.student-expiry-alert small{color:#765e50;font-size:12px;line-height:1.6}.student-expiry-alert small b{color:#a70d18;font-size:15px}.student-expiry-alert>em{color:#a70d18;white-space:nowrap;font-size:24px;font-style:normal;font-weight:900}.student-expiry-alert.urgent,.student-expiry-alert.today{background:linear-gradient(135deg,#fff0ee,#ffd9d5);border-color:#de5a5f;animation:2.2s ease-in-out infinite expiryPulse;box-shadow:0 14px 35px #a70d1833}.student-expiry-alert.active{box-shadow:none;background:linear-gradient(135deg,#f8fffb,#edf7f2);border-color:#cbded5}.student-expiry-alert.active>div{background:#54836f}.student-expiry-alert.active strong,.student-expiry-alert.active>em{color:#3b6f59}@keyframes expiryPulse{50%{box-shadow:0 16px 42px #a70d1847}}@media (width<=760px){.renewal-presets>div{grid-template-columns:1fr 1fr}.student-expiry-alert{border-radius:14px;align-items:flex-start;gap:10px;padding:12px 13px;top:68px}.student-expiry-alert:before{border-radius:18px;inset:-5px}.student-expiry-alert>div{flex:0 0 36px;width:36px;height:36px}.student-expiry-alert>div svg{width:19px}.student-expiry-alert>em{font-size:17px}.student-expiry-alert strong{font-size:13px}.student-expiry-alert small{font-size:10px;line-height:1.45}}.student-expiry-alert.compact-expiry-alert{min-height:34px;box-shadow:none;background:#ffffffb8;border-color:#e3d9d4;border-radius:10px;justify-content:flex-end;margin:10px 0;padding:7px 12px;animation:none;position:static}.student-expiry-alert.compact-expiry-alert:before{display:none}.student-expiry-alert.compact-expiry-alert>span{color:#837672;flex:none;width:auto;font-size:10px;display:block}.student-expiry-alert.compact-expiry-alert b{color:#a70d18;font-size:12px}.student-expiry-alert.critical-expiry-alert{top:max(10px,env(safe-area-inset-top));z-index:120;isolation:isolate;width:min(1080px,92vw);margin:0;position:fixed;left:50%;transform:translate(-50%)}.student-expiry-alert.critical-expiry-alert:before{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f5f1eee0;inset:-7px}@media (width<=760px){.student-expiry-alert.critical-expiry-alert{top:max(6px,env(safe-area-inset-top));width:calc(100vw - 24px);max-width:none;padding:10px 11px}.student-expiry-alert.critical-expiry-alert>div{flex-basis:34px;width:34px;height:34px}.student-expiry-alert.critical-expiry-alert small{font-size:9px;line-height:1.35}.student-expiry-alert.critical-expiry-alert>em{font-size:15px}.student-expiry-alert.compact-expiry-alert{margin:6px 0 10px}}.brand-logo{background:#fff;border-radius:12px;flex:none;width:44px;height:44px;position:relative;overflow:hidden}.brand-logo img{object-fit:cover;width:100%;height:100%;transform:scale(1.42)}.brand strong{color:#3d3434;font-family:Noto Sans SC,sans-serif;font-weight:800}.admin-nav .brand strong{color:#fff}.admin-nav .brand span{color:#e7baba}.admin-nav{background:#790000}.admin-nav nav a,.admin-nav nav button{color:#e7baba;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;width:100%;margin-bottom:6px;padding:12px 14px;font-size:12px;text-decoration:none;display:flex}.admin-nav nav a svg,.admin-nav nav button svg{width:17px}.admin-nav nav a.active,.admin-nav nav button.active{color:#fff;background:#a72b2b}.admin-account-panel{border-top:1px solid #9d3737;gap:8px;margin-top:auto;padding-top:14px;display:grid}.admin-user{color:#fff;text-align:left;background:0 0;border:0;width:100%;min-width:0;margin:0;padding:4px 3px}.admin-user>div{color:#790000;background:#e4b561;flex:0 0 34px}.admin-user span{min-width:0}.admin-user strong,.admin-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-user small{color:#dca8a8}.admin-user>svg{color:#e9baba;width:13px;height:13px;margin-left:auto}.admin-sidebar-logout{color:#f2cccc;background:#670000;border:1px solid #a93b3b;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:36px;font-size:9px;font-weight:700;display:inline-flex}.admin-sidebar-logout svg{width:14px;height:14px}.admin-self-profile{width:min(480px,100%)}.self-profile-hero{background:linear-gradient(135deg,#fff4f2,#f8efeb);border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:15px;display:flex}.self-profile-hero>div{color:#fff;background:#a80000;border-radius:14px;place-items:center;width:46px;height:46px;font-size:18px;font-weight:900;display:grid;box-shadow:0 9px 20px #a800002e}.self-profile-hero>span{flex-direction:column;gap:3px;display:flex}.self-profile-hero strong{color:#443836;font-size:14px}.self-profile-hero small{color:#9a6767;font-size:9px}.self-profile-form{grid-template-columns:1fr}.self-profile-readonly{background:#f8f5f3;border:1px solid #eadfdb;border-radius:10px;flex-direction:column;gap:4px;padding:12px;display:flex}.self-profile-readonly>span{color:#8d807c;font-size:9px;font-weight:700}.self-profile-readonly>strong{color:#a00d16;font-size:12px}.self-profile-readonly>small{color:#978b87;font-size:8px;line-height:1.6}.self-profile-section{background:#fff;border:1px solid #eee4e0;border-radius:12px;padding:15px}.self-profile-section+.self-profile-section{margin-top:14px}.self-profile-section.password{background:#fcfaf8}.self-profile-section-title{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.self-profile-section-title strong{color:#493d3a;font-size:12px}.self-profile-section-title span{color:#998c88;font-size:8px}.self-profile-save{width:100%;min-height:40px;margin-top:14px;font-size:10px}.self-profile-save svg{width:14px}.primary{box-shadow:0 8px 20px #a800002e}.primary,.secondary{text-align:center;justify-content:center;align-items:center;line-height:1.2}.eyebrow{color:#a80000}.segmented button.selected{background:#fff4f4}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:#bd4a4a;box-shadow:0 0 0 3px #f7e8e8}.bole-emblem{width:150px;height:145px;margin:18px 0 22px 34px;overflow:hidden}.bole-emblem img{object-fit:cover;width:100%;height:100%;transform:scale(1.25)}.subject-picker{flex-wrap:wrap;gap:10px;display:flex}.subject-picker button{color:#665a5a;background:#fff;border:1px solid #e1d9d9;border-radius:10px;align-items:center;gap:8px;min-width:140px;padding:11px 14px;font-size:12px;font-weight:600;display:flex}.subject-picker button svg:last-child{opacity:0;margin-left:auto}.subject-picker button.selected{color:#a80000;background:#fff4f4;border-color:#a80000;box-shadow:inset 0 0 0 1px #a80000}.subject-picker button.selected svg:last-child{opacity:1}.inline-notice{color:#9a681b;background:#fff4e6;border-radius:8px;margin:15px 0;padding:12px;font-size:11px}.login-art{background:#fff4f4;height:108px}.login-art img{transform-origin:50%;width:124px;display:block;transform:scale(1.08)}.login-card label+label{margin-top:14px;display:block}.dashboard-actions{align-items:end;gap:10px;display:flex}.dashboard-actions label{flex-direction:column;gap:5px;display:flex}.dashboard-actions label span{color:#8d7f7f;font-size:9px;font-weight:700}.dashboard-actions select{color:#574c4c;background:#fff;border:1px solid #ded6d6;border-radius:8px;outline:0;min-width:150px;padding:9px 30px 9px 11px;font-size:11px}.dashboard-actions select:focus{border-color:#a80000;box-shadow:0 0 0 3px #f7e8e8}.record-grade-filter{align-items:center;gap:7px;min-width:118px;display:flex}.record-grade-filter>span{color:#857976;flex:none;font-size:9px;font-weight:700}.record-grade-filter select{color:#625755;background:#fff;border:1px solid #e0e4e0;border-radius:7px;outline:0;width:100%;min-width:105px;height:33px;padding:0 28px 0 10px;font-size:10px}.record-grade-filter select:focus{border-color:#a80000;box-shadow:0 0 0 3px #f7e8e8}.student-cell>span{color:#9b1111;background:#f6e3e3}.system-tag{color:#8f1717!important;background:#f8e9e9!important}.export{background:#a80000}.success-page,.login-page{background:radial-gradient(circle at 20% 10%,#f6dfdf,#0000 35%),#f5f1ee}.success-icon{background:#f5e0e0}.brand-toast{z-index:1400;color:#443939;background:#fffffffa;border:1px solid #ead6d6;border-radius:14px;grid-template-columns:42px 1fr 28px;align-items:center;gap:12px;width:min(390px,100vw - 28px);padding:14px;animation:.22s ease-out brand-toast-in;display:grid;position:fixed;top:22px;right:22px;box-shadow:0 18px 48px #4914142e}.brand-toast.error{background:snow;border-color:#efc0c0}.brand-toast.info{background:#fffdf8;border-color:#eadabf}.brand-toast-icon{color:#fff;background:#a80000;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.brand-toast.error .brand-toast-icon{background:#b52828}.brand-toast.info .brand-toast-icon{background:#c58a2b}.brand-toast-icon svg{width:20px}.brand-toast div{min-width:0}.brand-toast strong{color:#3f3434;margin-bottom:3px;font-size:12px;display:block}.brand-toast p{color:#7d7070;margin:0;font-size:10px;line-height:1.55}.brand-toast>button{color:#a49797;background:0 0;border:0;border-radius:8px;justify-content:center;align-self:start;align-items:center;width:28px;height:28px;display:inline-flex}.brand-toast>button:hover{color:#8e1010;background:#f4ecec}.brand-toast>button svg{width:15px}@keyframes brand-toast-in{0%{opacity:0;transform:translateY(-8px)}}.brand-dialog-backdrop{z-index:1300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2718188c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.brand-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #a800001f;border-radius:20px;width:min(430px,100%);max-height:calc(100dvh - 36px);padding:30px;animation:.2s ease-out brand-dialog-in;position:relative;overflow:hidden auto;box-shadow:0 26px 80px #2a10104d}.brand-dialog-symbol{color:#a80000;background:#fff0f0;border-radius:15px;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:18px;padding:0;line-height:0;display:flex}.brand-dialog-symbol.danger{color:#bc3028;background:#fff0ed}.brand-dialog-symbol svg{flex:0 0 23px;width:23px;height:23px;margin:0;display:block}.brand-dialog-close{color:#948787;background:#f7f3f2;border:0;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;line-height:0;display:flex;position:absolute;top:18px;right:18px}.brand-dialog-close svg{flex:0 0 16px;width:16px;height:16px;margin:0;display:block}.brand-dialog .eyebrow{letter-spacing:.2em;margin:0 0 7px;font-size:8px}.brand-dialog h2{color:#3e3434;margin:0;font-size:20px}.brand-dialog-message{color:#7c7070;margin:10px 0 0;font-size:11px;line-height:1.75}.brand-dialog-input{margin-top:20px;display:block}.brand-dialog-input span{color:#5c5050;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.brand-dialog-input input{color:#443939;border:1px solid #ded5d5;border-radius:10px;outline:0;width:100%;height:44px;padding:0 13px}.brand-dialog-input input:focus{border-color:#a80000;box-shadow:0 0 0 3px #faeaea}.brand-dialog footer{grid-template-columns:repeat(2,120px);justify-content:end;align-items:center;gap:10px;margin-top:26px;display:grid}.brand-dialog footer button,.brand-dialog footer .secondary,.brand-dialog footer .brand-dialog-confirm{text-align:center;white-space:nowrap;box-sizing:border-box;border-radius:9px;justify-content:center;align-items:center;width:120px;min-width:120px;height:44px;min-height:44px;margin:0;padding:0 16px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.brand-dialog footer .secondary{color:#6d625f;box-shadow:none;background:#fff;border:1px solid #ddd6d4}.brand-dialog-confirm.danger{color:#fff;background:#a80000;border:1px solid #a80000;box-shadow:0 8px 20px #a800002e}@keyframes brand-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (width<=640px){.brand-toast{top:12px;right:14px}.brand-dialog{padding:24px 20px max(20px,env(safe-area-inset-bottom));border-radius:16px}.brand-dialog footer{grid-template-columns:1fr 1fr}.brand-dialog footer button,.brand-dialog footer .secondary,.brand-dialog footer .brand-dialog-confirm{width:100%;min-width:0}}.manager-header{margin-bottom:26px}.questionnaire-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.ai-admin-settings{background:#fff;border:1px solid #e7dedb;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:grid;box-shadow:0 5px 18px #4529290a}.ai-admin-settings>span{color:#8a7d79;background:#eee9e7;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.ai-admin-settings.online>span{color:#a80000;background:#f2dfdf}.ai-admin-settings>span svg{width:19px}.ai-admin-settings>div{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-admin-settings strong{color:#473b38;font-size:11px}.ai-admin-settings p{color:#958986;margin:0;font-size:8px}.ai-admin-settings em{color:#7d716e;background:#eeeae8;border-radius:10px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:800}.ai-admin-settings.online em{color:#397354;background:#e6f2ea}.ai-admin-actions{gap:7px;display:flex}.ai-admin-settings button{min-width:94px;min-height:38px;padding:8px 11px;font-size:8px}.readonly-badge{color:#61716b;background:#eef1ef;border-radius:18px;flex:none;padding:8px 12px;font-size:10px;font-weight:700}.academic-path{background:#fff;border:1px solid #eadede;border-radius:13px;grid-template-columns:180px 180px minmax(220px,1fr);align-items:end;gap:12px;margin-bottom:16px;padding:15px;display:grid}.academic-path.high{grid-template-columns:180px minmax(220px,1fr)}.academic-path label>span,.sidebar-label{color:#776969;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.academic-path select{color:#544949;background:#fff;border:1px solid #ded5d5;border-radius:8px;outline:0;width:100%;height:36px;padding:0 10px;font-size:10px}.stage-switch{background:#f2eeee;border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));height:36px;padding:3px;display:grid;overflow:hidden}.stage-switch button{color:#837676;text-align:center;white-space:nowrap;background:0 0;border:0;border-radius:7px;min-width:0;height:30px;padding:0 8px;font-size:10px;font-weight:700;line-height:30px}.stage-switch button.active{color:#fff;background:#a80000;box-shadow:0 2px 7px #8a000033}.manager-layout{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:18px;min-width:0;display:grid}.subject-sidebar,.curriculum-editor{background:#fff;border-radius:14px;min-width:0;max-width:100%;box-shadow:0 5px 18px #4126260f}.subject-sidebar{padding:14px}.sidebar-label{color:#9d1515;margin:0 0 10px 3px}.new-subject{gap:6px;min-width:0;max-width:100%;margin-bottom:14px;display:flex}.new-subject input{border:1px solid #e2dada;border-radius:8px;outline:0;flex:1;min-width:0;padding:9px;font-size:10px}.new-subject button{color:#fff;background:#a80000;border:0;border-radius:8px;place-items:center;width:34px;display:grid}.new-subject button svg{width:15px}.subject-list{flex-direction:column;gap:5px;min-width:0;max-width:100%;display:flex}.subject-list>button{color:#756969;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;width:100%;padding:10px;display:flex}.subject-list>button.active{color:#920808;background:#fff0f0}.subject-list>button>svg{width:17px}.subject-list>button>span{flex-direction:column;flex:1;display:flex}.subject-list strong{font-size:11px}.subject-list small{opacity:.65;font-size:8px}.curriculum-editor{padding:24px}.editor-title{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.editor-title>div{align-items:center;gap:9px;display:flex}.editor-title h2{margin:0;font-size:18px}.editor-title button{padding:8px 11px;font-size:10px}.publish-tag{color:#888;background:#eee;border-radius:10px;padding:4px 7px;font-size:8px}.icon-danger{color:#b63a3a;background:#fff;border:1px solid #ebd1d1;border-radius:8px;place-items:center;display:grid}.icon-danger svg{width:14px}.path-summary{color:#8a7c7c;flex-wrap:wrap;align-items:center;gap:7px;margin:-9px 0 17px;font-size:9px;display:flex}.path-summary svg{color:#a80000;width:15px}.path-summary b{color:#c5baba}.path-summary strong{color:#8d1010}.catalog-note{background:#fff9f8;border:1px solid #eadede;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:12px 14px;display:flex}.catalog-note>div{flex-direction:column;gap:3px;display:flex}.catalog-note strong{color:#8e1010;font-size:11px}.catalog-note span,.catalog-note small{color:#8d8080;font-size:8px}.cumulative-groups{flex-direction:column;gap:12px;display:flex}.catalog-term{background:#fff;border:1px solid #e9e2e2;border-radius:11px;overflow:hidden}.catalog-term.current{border-color:#d59d9d;box-shadow:0 0 0 3px #f9eeee}.catalog-term-title{background:#faf8f7;border-bottom:1px solid #eee8e8;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.catalog-term-title>span{grid-template-columns:22px auto;align-items:center;column-gap:8px;display:grid}.catalog-term-title b{color:#fff;background:#a80000;border-radius:7px;grid-row:1/3;place-items:center;width:22px;height:22px;font-size:8px;display:grid}.catalog-term-title strong{font-size:11px}.catalog-term-title small{color:#968989;font-size:8px}.catalog-term-title em{color:#8e1717;flex:none;font-size:8px;font-style:normal}.chapter-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px;display:grid}.chapter-check-grid label{color:#918686;cursor:pointer;background:#fff;border:1px solid #e6dfdf;border-radius:8px;align-items:flex-start;gap:7px;min-width:0;padding:9px;display:flex}.chapter-check-grid label.checked{color:#5e4d4d;background:#fff6f6;border-color:#ddb1b1}.chapter-check-grid input{opacity:0;pointer-events:none;position:absolute}.chapter-check-grid i{background:#fff;border:1px solid #cfc4c4;border-radius:4px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;padding:0;line-height:0;display:flex}.chapter-check-grid label.checked i{color:#fff;background:#a80000;border-color:#a80000}.chapter-check-grid i svg{flex:0 0 10px;width:10px;height:10px;margin:0;display:block}.chapter-check-grid span{min-width:0;font-size:9px;line-height:1.5}.catalog-empty{color:#aaa0a0;text-align:center;padding:18px;font-size:9px}.unit-form{background:#faf8f6;border-radius:11px;grid-template-columns:150px 1fr auto;align-items:end;gap:12px;margin-bottom:24px;padding:16px;display:grid}.unit-form label>span{color:#716565;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.unit-form input,.unit-form select,.unit-form textarea{background:#fff;border:1px solid #e1d9d9;border-radius:7px;outline:0;width:100%;padding:9px;font-size:10px}.unit-form .chapters-input{grid-column:1/3}.unit-form .primary{grid-area:1/3/3;align-self:stretch}.focused-unit-form{grid-template-columns:1fr auto}.focused-unit-form .chapters-input{grid-column:1}.focused-unit-form .primary{grid-area:1/2}.system-group{border-top:1px solid #eee8e8;margin-top:15px;padding-top:15px}.system-group>h3{color:#8e1515;align-items:center;gap:7px;font-size:12px;display:flex}.system-group>h3 svg{width:16px}.system-group>h3>span{color:#8d7d7d;background:#f3eeee;border-radius:9px;margin-left:auto;padding:3px 7px;font-size:8px;font-weight:600}.current-system{border-top:0;margin-top:0;padding-top:0}.chapter-grid{border-top:1px dashed #ebe5e5;flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}.editor-term{border-top:1px dashed #ebe5e5;grid-template-columns:110px 1fr;gap:12px;padding:12px 0;display:grid}.editor-term h4{flex-direction:column;margin:3px 0;font-size:10px;display:flex}.editor-term h4 span{color:#aaa;font-size:8px;font-weight:400}.editor-term>div{flex-wrap:wrap;gap:6px;display:flex}.chapter-chip{background:#f6f2f0;border-radius:12px;align-items:center;gap:5px;padding:5px 7px;font-size:9px;display:flex}.chapter-chip b{color:#8b1919;background:#e8dcdc;border-radius:50%;place-items:center;width:15px;height:15px;font-size:7px;display:grid}.chapter-chip button{color:#b5abab;background:0 0;border:0;padding:0 1px;font-size:13px}.editor-empty{padding:50px}.personnel-header{justify-content:space-between;align-items:center;display:flex}.role-badge{color:#9a6418;background:#fff0d9;border-radius:18px;align-items:center;gap:6px;padding:8px 12px;font-size:10px;font-weight:700;display:inline-flex}.role-badge.normal{color:#65736e;background:#edf1ef}.role-badge svg{width:15px;height:15px}.person-tabs{gap:8px;margin:20px 0 16px;display:flex}.person-tabs button{color:#776a6a;background:#fff;border:1px solid #e2dada;border-radius:9px;align-items:center;gap:7px;padding:9px 14px;font-size:11px;font-weight:700;display:inline-flex}.person-tabs button.active{color:#9d0909;background:#fff1f1;border-color:#a80000}.person-tabs svg{width:15px}.people-list-card{background:#fff;border-radius:14px;min-width:0;overflow:hidden;box-shadow:0 5px 18px #4126260f}.people-list-only{width:100%}.people-list-head{border-bottom:1px solid #eee9e9;justify-content:space-between;align-items:center;gap:14px;min-height:70px;padding:15px 18px;display:flex}.people-list-head>div:first-child{align-items:center;gap:8px;display:flex}.people-list-head h2{margin:0;font-size:15px}.people-list-head>div:first-child>span{color:#8c7d7d;background:#f3eeee;border-radius:10px;padding:3px 7px;font-size:8px}.people-head-actions,.people-tools{align-items:center;gap:7px;display:flex}.people-tools select,.admin-cards select{color:#514747;background:#fff;border:1px solid #e1dada;border-radius:8px;outline:0;width:96px;padding:8px 9px;font-size:9px}.people-tools .search input{width:180px}.people-tools .search svg{width:14px;height:14px;display:block;top:50%;transform:translateY(-50%)}.people-tools .secondary{padding:7px 10px;font-size:9px}.people-tools .secondary svg{flex:0 0 13px;width:13px;height:13px;display:block}.admin-filter-bar{background:#fcfaf9;border-bottom:1px solid #eee9e9;padding:12px 18px}.admin-filter-tools{justify-content:flex-end}.admin-filter-tools .search{flex:0 260px}.admin-filter-tools .search input{width:100%}.admin-filter-tools .admin-filter-submit,.admin-filter-tools .admin-filter-reset{min-height:34px}.add-person{flex:none;align-items:center;gap:5px;padding:9px 12px;font-size:10px;display:inline-flex}.add-person svg{width:14px}.people-table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.people-table{min-width:1480px}.people-table th{padding:14px 15px;font-size:11px;line-height:1.45}.people-table td{cursor:default;vertical-align:middle;padding:16px 15px;font-size:12px;line-height:1.5}.student-roster{table-layout:fixed;min-width:1525px}.student-roster .roster-col-student{width:190px}.student-roster .roster-col-attendance{width:118px}.student-roster .roster-col-stage{width:130px}.student-roster .roster-col-subjects{width:190px}.student-roster .roster-col-parent{width:130px}.student-roster .roster-col-expiry{width:170px}.student-roster .roster-col-ai{width:125px}.student-roster .roster-col-actions{width:472px}.people-table .student-cell{gap:11px;min-width:0}.people-table .student-cell>div{min-width:0}.people-table .student-cell>span{border-radius:10px;flex:0 0 38px;width:38px;height:38px;font-size:13px}.people-table .student-cell strong{color:#3f3434;white-space:nowrap;align-items:center;font-size:14px;line-height:1.4;display:flex}.people-table .student-cell small{color:#8f8484;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:3px;font-size:10px;line-height:1.45;overflow:hidden}.people-table td>strong{color:#433838;font-size:13px;line-height:1.4}.people-table td>small{color:#8f8484;font-size:10px;line-height:1.45}.stage-tag{color:#951919;background:#f8e9e9;border-radius:9px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-block}.stage-tag.primary-stage{color:#347057;background:#e6f3ec}.stage-tag.high{color:#3c6091;background:#e8eef8}.people-table td>small{margin-top:4px;display:block}.attendance-period-status{gap:5px;min-width:94px;display:grid}.attendance-period-status>span{color:#776d6d;background:#f4f2f1;border-radius:7px;justify-content:space-between;align-items:center;gap:7px;padding:6px 8px;font-size:10px;font-weight:800;display:flex}.attendance-period-status b{color:inherit;opacity:.7;font-size:9px}.attendance-period-status .present{color:#2d724a;background:#e8f5ed}.attendance-period-status .leave{color:#97620c;background:#fff3dc}.attendance-period-status .paused{color:#386296;background:#ebf2fb}.attendance-period-status .withdrawn{color:#893d49;background:#f7e9eb}.student-ai-switch{text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-width:116px;padding:0;display:inline-flex}.student-ai-switch>i{background:#d8d1d1;border-radius:999px;flex:0 0 32px;width:32px;height:18px;transition:background .2s;position:relative;box-shadow:inset 0 0 0 1px #58454514}.student-ai-switch>i b{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #462a2a38}.student-ai-switch.enabled>i{background:linear-gradient(135deg,#a80000,#cf3333)}.student-ai-switch.enabled>i b{transform:translate(14px)}.student-ai-switch>span{flex-direction:column;gap:2px;display:flex}.student-ai-switch strong{color:#514747;font-size:11px}.student-ai-switch small{color:#9a8f8f;white-space:nowrap;font-size:9px}.student-ai-switch:disabled{cursor:wait;opacity:.55}.ai-access-tag{color:#857979;background:#f2eeee;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:8px;font-style:normal;font-weight:800;display:inline-flex}.ai-access-tag.enabled{color:#a80000;background:#f8e7e7}.ai-access-tag svg{width:12px;height:12px}.attendance-status{white-space:nowrap;border-radius:11px;align-items:center;padding:5px 9px;font-size:8px;font-weight:800;display:inline-flex}.attendance-status.pending{color:#69716e;background:#eef0ef}.attendance-status.present{color:#287047;background:#e1f3e8}.attendance-status.leave{color:#97600b;background:#fff0d2}.attendance-status.paused{color:#355f98;background:#e5eefb}.attendance-status.withdrawn{color:#8d3a48;background:#f4e5e8}.subject-progress-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.subject-progress-list>span{background:#f8f5f4;border:1px solid #ebe2df;border-radius:999px;align-items:center;min-width:0;max-width:100%;padding:7px 11px;display:inline-flex}.subject-progress-list strong{color:#5d5050;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.subject-progress-list small{color:#988c8c;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.student-account-disabled{opacity:.68}.student-account-disabled:hover{opacity:.82}.student-account-tag{color:#a13c46;vertical-align:1px;white-space:nowrap;background:#f7e8e9;border-radius:999px;margin-left:7px;padding:3px 6px;font-size:8px;font-style:normal;line-height:1;display:inline-flex}.student-account-active{color:#287047!important}.student-account-inactive{color:#a13c46!important}.row-actions{align-items:center;gap:5px;display:flex}.row-actions button{color:#6f6262;background:#fff;border:1px solid #ddd3d3;border-radius:9px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.row-actions button.delete{color:#ad3b3b}.row-actions button.attendance-action{color:#8e1010;white-space:nowrap;flex:none;gap:5px;width:auto;min-width:64px;height:36px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.row-actions button.questionnaire-action{color:#8a5d16;background:#fff9ef;border-color:#d9c6a5}.row-actions button.account-toggle-action{color:#9d3b43;white-space:nowrap;flex:none;gap:5px;width:auto;min-width:57px;padding:0 9px;font-size:10px;font-weight:750;line-height:1}.row-actions button.account-toggle-action.enable{color:#287047;background:#f2faf5;border-color:#bcd9c7}.row-actions svg{width:16px;height:16px}.admin-mobile-logout{display:none}:is(.modal-close,.drawer-close,.icon-button,.ai-result-actions button,.row-actions button:not(.attendance-action):not(.account-toggle-action):not(.renew-account-action):not(.roster-text-action),.qb-list>article>aside button){appearance:none;box-sizing:border-box;text-indent:0;vertical-align:middle;touch-action:manipulation;justify-content:center;align-items:center;margin:0;padding:0;font-size:0;line-height:0;display:inline-flex}:is(.modal-close,.drawer-close,.icon-button,.ai-result-actions button,.row-actions button:not(.attendance-action):not(.account-toggle-action):not(.renew-account-action):not(.roster-text-action),.qb-list>article>aside button)>svg{vertical-align:middle;flex:none;margin:0;display:block;transform:none}.pagination-controls button{line-height:1}.admin-mobile-logout{appearance:none;box-sizing:border-box;justify-content:center;align-items:center;padding:0;line-height:0}.admin-mobile-logout>svg{flex:none;width:16px;height:16px;margin:0;display:block;transform:none}.compact-empty{padding:60px 20px}.admin-cards{padding:8px 16px 16px}.admin-cards article{border-bottom:1px solid #f0ebeb;grid-template-columns:44px minmax(170px,1fr) minmax(330px,1.35fr) auto;align-items:center;gap:14px;min-height:78px;padding:14px 4px;display:grid}.admin-cards article.disabled{opacity:.58}.admin-avatar{color:#9c1515;background:#f7e2e2;border-radius:11px;place-items:center;width:42px;height:42px;font-size:14px;font-weight:800;display:grid}.admin-info{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-info strong{color:#433838;font-size:14px;line-height:1.35}.admin-info strong em{color:#66756f;vertical-align:1px;background:#edf2ef;border-radius:8px;margin-left:7px;padding:3px 6px;font-size:9px;font-style:normal}.admin-info small{color:#8f8484;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-cards select{width:100%;padding:7px}.admin-account-meta{grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px;display:grid}.admin-account-meta>span{background:#faf7f6;border-radius:9px;flex-direction:column;gap:4px;min-width:0;padding:9px 10px;display:flex}.admin-account-meta small{color:#9b8f8f;font-size:9px}.admin-account-meta strong{color:#544848;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.admin-account-meta strong.active{color:#287047}.admin-account-meta strong.inactive{color:#a13c46}.admin-row-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.account-action{appearance:none;box-sizing:border-box;color:#665959;white-space:nowrap;touch-action:manipulation;background:#fff;border:1px solid #ded5d5;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-width:62px;height:36px;margin:0;padding:0 10px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.account-action svg{flex:0 0 15px;width:15px;height:15px;margin:0;display:block;transform:none}.teacher-paper-task-label{color:#aa0808;background:linear-gradient(135deg,#fff1ef,#fff9f7);border-radius:11px;align-items:center;gap:10px;margin:14px 0 10px;padding:10px 13px;display:flex}.teacher-paper-task-label.assessment{color:#47705c;background:#f6f8f7}.teacher-paper-task-label>svg{width:19px}.teacher-paper-task-label>span{flex-direction:column;gap:2px;display:flex}.teacher-paper-task-label strong{font-size:11px}.teacher-paper-task-label small{color:#8f8180;font-size:8px}.assignment-icon.teacher-paper{color:#fff;background:#b40000}.teacher-history-view{color:#9e1111;background:#fff;border:1px solid #e0d5d3;border-radius:8px;align-items:center;gap:4px;margin-left:auto;padding:7px 10px;font-size:9px;font-weight:800;display:inline-flex}.teacher-history-view svg{width:13px}.teacher-quiz-source{color:#a70000;vertical-align:middle;background:#f9dfdd;border-radius:999px;margin-left:7px;padding:3px 7px;font-size:7px;font-style:normal;display:inline-flex}.ai-history-score.teacher.pending{color:#fff;background:#b40000}.teacher-quiz-header{align-items:center}.teacher-quiz-count{color:#8e8080;background:#fff;border:1px solid #eadede;border-radius:13px;flex:none;padding:12px 16px;font-size:10px}.teacher-quiz-count b{color:#ad0000;margin-right:4px;font-size:18px}.teacher-quiz-context{background:#fff;border:1px solid #ece4e2;border-radius:16px;grid-template-columns:150px 150px minmax(170px,.8fr) minmax(260px,1.5fr);gap:12px;margin:18px 0;padding:17px;display:grid;box-shadow:0 10px 28px #462d2d0d}.teacher-quiz-context label,.paper-filter-row label,.manual-paper-filters label,.random-paper-actions label,.teacher-batch-filters label{flex-direction:column;gap:6px;min-width:0;display:flex}.teacher-quiz-context label>span,.paper-filter-row label>span,.manual-paper-filters label>span,.random-paper-actions label>span,.teacher-batch-filters label>span{color:#827575;font-size:9px;font-weight:800}.teacher-quiz-context input,.teacher-quiz-context select,.paper-filter-row select,.manual-paper-filters select,.random-paper-actions select,.teacher-batch-filters select{color:#554949;background:#fff;border:1px solid #e2d9d7;border-radius:10px;outline:0;width:100%;height:42px;padding:0 12px}.teacher-quiz-context input:focus,.teacher-quiz-context select:focus,.paper-filter-row select:focus,.manual-paper-filters select:focus,.random-paper-actions select:focus,.teacher-batch-filters select:focus{border-color:#bd4a4a;box-shadow:0 0 0 3px #f8eaea}.teacher-quiz-workspace{grid-template-columns:minmax(0,1fr) minmax(360px,420px);align-items:start;gap:18px;display:grid}.teacher-quiz-picker,.paper-basket,.teacher-template-library{background:#fff;border:1px solid #ece4e2;border-radius:18px;box-shadow:0 12px 35px #462d2d0e}.teacher-quiz-picker{overflow:hidden}.paper-mode-tabs{background:#fcfaf9;border-bottom:1px solid #eee7e5;gap:8px;padding:15px 17px;display:flex}.paper-mode-tabs button,.teacher-template-grid article>div:last-child button{color:#6f6262;background:#fff;border:1px solid #e5dcda;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.paper-mode-tabs button{min-height:39px;padding:0 14px}.paper-mode-tabs button.active{color:#a80000;background:#fff2f1;border-color:#bd2727}.paper-mode-tabs svg,.paper-filter-row button svg,.random-paper-actions button svg,.manual-paper-filters button svg{width:15px}.random-paper-panel,.manual-paper-panel{padding:18px}.paper-filter-row{grid-template-columns:1fr 1.35fr auto;align-items:end;gap:10px;display:grid}.paper-filter-row button,.random-paper-actions button,.manual-paper-filters>button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-height:42px;display:inline-flex}.random-section-list{gap:8px;margin-top:14px;display:grid}.random-section-list article{background:#faf8f7;border:1px solid #eee5e3;border-radius:11px;grid-template-columns:minmax(0,1fr) 90px 34px;align-items:center;gap:10px;padding:11px 12px;display:grid}.random-section-list article>span{flex-direction:column;gap:3px;min-width:0;display:flex}.random-section-list article strong{color:#514343;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.random-section-list article small{color:#978a88;font-size:8px}.random-section-list label{color:#877977;grid-template-columns:auto 50px;align-items:center;gap:6px;font-size:9px;display:grid}.random-section-list input{text-align:center;border:1px solid #ded3d1;border-radius:8px;width:50px;height:34px;padding:0 6px}.random-section-list article>button{color:#a13b3b;background:#fff;border:1px solid #ead8d6;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.random-section-list article>button svg{width:14px}.random-paper-actions{border-top:1px solid #eee7e5;grid-template-columns:150px 1fr;align-items:end;gap:10px;margin-top:14px;padding-top:14px;display:grid}.manual-paper-filters{grid-template-columns:130px minmax(150px,1fr) 105px minmax(180px,1.2fr) auto;align-items:end;gap:9px;display:grid}.manual-load-status{color:#817573;white-space:nowrap;background:#faf8f7;border:1px solid #e4dcda;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-size:9px;font-weight:800;display:inline-flex}.manual-load-status svg{width:14px}.manual-load-status.loading svg{color:#a80000;animation:1s linear infinite spin}.manual-search>div,.batch-search>div{background:#fff;border:1px solid #e2d9d7;border-radius:10px;align-items:center;gap:7px;height:42px;padding:0 11px;display:flex}.manual-search svg,.batch-search svg{color:#8b9d98;width:15px}.manual-search input,.batch-search input{color:#514646;background:0 0;border:0;outline:0;width:100%;min-width:0}.teacher-bank-list{gap:9px;margin-top:15px;display:grid}.teacher-bank-list article{border:1px solid #eee5e3;border-radius:12px;grid-template-columns:36px minmax(0,1fr);gap:11px;padding:12px;transition:all .15s;display:grid}.teacher-bank-list article.selected{background:#fff8f7;border-color:#d77d78}.teacher-bank-list article>button{color:#a80000;background:#fff;border:1px solid #e4d8d6;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.teacher-bank-list article>button svg{width:16px}.teacher-bank-list article>div{min-width:0}.teacher-bank-list header{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:7px;display:flex}.teacher-bank-list header span,.teacher-bank-list header em{color:#9d2020;background:#f6e8e7;border-radius:999px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:800}.teacher-bank-list header em{color:#817674;background:#f3f0ee}.teacher-bank-list header small{color:#9a8e8b;font-size:8px}.teacher-bank-list article strong{color:#4c4040;font-size:11px;line-height:1.65;display:block}.teacher-bank-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.teacher-bank-options>span{color:#837676;background:#faf7f6;border-radius:8px;align-items:flex-start;gap:6px;min-width:0;padding:7px 8px;font-size:9px;line-height:1.55;display:flex}.teacher-bank-options>span>b{color:#a80000;flex:none}.teacher-bank-empty,.paper-basket-empty{color:#9d8f8d;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:180px;display:flex}.teacher-bank-empty svg,.paper-basket-empty svg{color:#cfaeaa;width:34px}.teacher-bank-empty strong,.paper-basket-empty strong{color:#645656;font-size:12px}.teacher-bank-empty span,.paper-basket-empty span{font-size:9px}.paper-basket{flex-direction:column;max-height:min(680px,100dvh - 108px);display:flex;position:sticky;top:18px;overflow:hidden}.paper-basket>header{border-bottom:1px solid #eee7e5;justify-content:space-between;align-items:center;gap:12px;padding:17px;display:flex}.paper-basket>header>div{min-width:0}.paper-basket>header p{color:#a80000;letter-spacing:.12em;margin:0 0 4px;font-size:8px;font-weight:900}.paper-basket>header h2{color:#413636;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.paper-basket>header>span{color:#9e2525;background:#fff0ef;border-radius:10px;flex:none;padding:8px 10px;font-size:9px}.paper-basket>header>span b{font-size:16px}.paper-basket-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:auto}.paper-basket-list article{border-bottom:1px solid #f0e9e7;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;padding:9px 11px;display:grid}.paper-basket-list article>b{color:#b00000;font-size:10px}.paper-basket-list article>span{flex-direction:column;gap:4px;min-width:0;display:flex}.paper-basket-list article>span strong{color:#514545;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.paper-basket-list article>span small{color:#9a8e8c;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.paper-basket-list article>div{gap:3px;display:flex}.paper-basket-list button{color:#8d7e7c;background:#fff;border:1px solid #e9dfdd;border-radius:7px;justify-content:center;align-items:center;width:27px;height:27px;display:inline-flex}.paper-basket-list button:last-child{color:#ae3232}.paper-basket-list button:disabled{opacity:.35}.paper-basket-list button svg{width:12px}.paper-basket>footer{background:#fcfaf9;border-top:1px solid #eee7e5;justify-content:flex-end;gap:8px;padding:13px 15px;display:flex}.paper-basket>footer button{justify-content:center;align-items:center;gap:5px;min-height:38px;display:inline-flex}.paper-basket>footer svg{width:14px}.teacher-template-library{margin-top:18px;overflow:hidden}.teacher-template-library>header{border-bottom:1px solid #eee7e5;padding:13px 16px}.teacher-template-library>header h2{color:#403535;margin:3px 0;font-size:17px}.teacher-template-library>header span{color:#918483;font-size:9px}.teacher-template-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:9px;padding:12px;display:grid}.teacher-template-grid>article{background:#fff;border:1px solid #ece3e1;border-radius:12px;grid-template-columns:40px minmax(0,1fr);gap:9px;min-width:0;padding:11px;display:grid}.teacher-template-icon{color:#ae0707;background:#f9e6e5;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.teacher-template-icon svg{width:18px}.teacher-template-grid article>div:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-template-grid article>div:nth-child(2)>strong{color:#483c3c;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.teacher-template-grid article>div:nth-child(2)>span,.teacher-template-grid article>div:nth-child(2)>small{color:#8e8180;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.teacher-template-grid article>div:nth-child(2)>em{color:#47745b;font-size:8px;font-style:normal;font-weight:800}.teacher-template-grid article>div:last-child{flex-wrap:wrap;grid-column:1/-1;gap:5px;padding-top:2px;display:flex}.teacher-template-grid article>div:last-child button{min-height:31px;padding:0 9px}.teacher-template-grid article>div:last-child button.send{color:#fff;background:#b90000;border-color:#b90000}.teacher-template-grid article>div:last-child button.delete{color:#aa3636;width:34px;padding:0}.teacher-template-grid article>div:last-child svg{width:13px}.teacher-template-library>.data-pagination{padding:12px 16px}.teacher-bank-list .math-text,.paper-basket-list .math-text,.teacher-paper-modal-scroll .math-text{min-width:0}.teacher-bank-list .math-expression,.paper-basket-list .math-expression,.teacher-paper-modal-scroll .math-expression{max-width:100%}.people-modal.teacher-paper-modal{width:min(760px,100%);height:min(860px,100dvh - 44px)}.people-modal.teacher-batch-modal{width:min(1040px,100%);height:min(840px,100dvh - 44px)}.teacher-paper-modal>.modal-scroll,.teacher-batch-modal>.modal-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:stable;flex:auto;height:0;min-height:0;overflow:hidden scroll}.teacher-paper-modal-scroll{align-content:start;gap:11px;display:grid}.teacher-paper-modal-scroll>article{background:#fff;border:1px solid #ece3e1;border-radius:12px;min-width:0;padding:14px}.teacher-paper-modal-scroll>article>header{align-items:center;gap:9px;margin-bottom:9px;display:flex}.teacher-paper-modal-scroll>article>header b{color:#a90000;background:#f7e5e4;border-radius:8px;place-items:center;width:30px;height:30px;font-size:10px;display:grid}.teacher-paper-modal-scroll>article>header span{color:#938583;font-size:8px}.teacher-paper-modal-scroll>article>strong{color:#463a3a;font-size:11px;line-height:1.7;display:block}.teacher-paper-modal-scroll>article>div{grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;display:grid}.teacher-paper-modal-scroll>article>div p{color:#695c5b;background:#faf7f6;border-radius:8px;align-items:flex-start;gap:7px;margin:0;padding:8px;font-size:9px;line-height:1.5;display:flex}.teacher-paper-modal-scroll>article>div p b{color:#a90000}.teacher-paper-modal-scroll>article>footer{border-top:1px dashed #e7dcda;align-items:flex-start;gap:10px;margin-top:10px;padding-top:9px;display:flex}.teacher-paper-modal-scroll>article>footer span{color:#397353;flex:none;font-size:9px;font-weight:800}.teacher-paper-modal-scroll>article>footer small{color:#8e817f;font-size:8px;line-height:1.55}.teacher-batch-filters{background:#fcfaf9;border-bottom:1px solid #eee7e5;flex:none;grid-template-columns:110px 130px minmax(190px,1fr) auto auto;align-items:end;gap:9px;padding:13px 20px;display:grid}.teacher-batch-filters>button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:42px;display:inline-flex}.teacher-batch-filters>button svg{width:14px}.teacher-batch-filters>em{color:#a60000;white-space:nowrap;align-self:center;font-size:9px;font-style:normal;font-weight:900}.teacher-batch-scroll{align-content:start;gap:10px;display:grid}.teacher-batch-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.teacher-batch-list label{cursor:pointer;background:#fff;border:1px solid #eee5e3;border-radius:13px;grid-template-rows:auto 1fr auto;grid-template-columns:38px minmax(0,1fr) 22px;align-items:start;gap:7px 9px;min-width:0;min-height:132px;padding:13px;display:grid;position:relative}.teacher-batch-list label.selected{background:#fff7f6;border-color:#c85955}.teacher-batch-list label.disabled{opacity:.54;cursor:not-allowed}.teacher-batch-list input{opacity:0;pointer-events:none;position:absolute}.teacher-batch-list label>i{color:#0000;background:#fff;border:1px solid #d9cecc;border-radius:6px;grid-area:1/3;place-items:center;width:22px;height:22px;display:grid}.teacher-batch-list label.selected>i{color:#fff;background:#b60000;border-color:#b60000}.teacher-batch-list label>i svg{width:13px}.batch-student-avatar{color:#a80000;background:#f8e3e2;border-radius:11px;grid-area:1/1/3;place-items:center;width:38px;height:38px;font-size:14px;display:grid}.teacher-batch-list label>span{flex-direction:column;grid-area:1/2/3;gap:4px;min-width:0;display:flex}.teacher-batch-list label>span strong{color:#4f4242;font-size:11px}.teacher-batch-list label>span small{color:#948785;text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.45;overflow:hidden}.teacher-batch-list label>em{color:#3d7959;text-align:center;white-space:nowrap;background:#edf7f1;border-radius:999px;grid-area:3/1/auto/-1;align-self:end;padding:5px 8px;font-size:8px;font-style:normal}.teacher-batch-list label.disabled>em{color:#9b8585;background:#f3efee}@media (width<=1100px){.teacher-quiz-context{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-quiz-context .paper-name{grid-column:1/-1}.teacher-quiz-workspace{grid-template-columns:1fr}.paper-basket{max-height:560px;position:static}.manual-paper-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.manual-paper-filters .manual-search{grid-column:span 2}.teacher-batch-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.teacher-quiz-header{flex-direction:column;align-items:flex-start}.teacher-quiz-context{grid-template-columns:1fr 1fr}.teacher-quiz-context .paper-name{grid-column:1/-1}.paper-filter-row{grid-template-columns:1fr 1fr}.paper-filter-row button{grid-column:1/-1}.manual-paper-filters{grid-template-columns:1fr 1fr}.manual-paper-filters .manual-search,.manual-paper-filters>button{grid-column:1/-1}.teacher-template-grid{grid-template-columns:1fr}.teacher-batch-filters{grid-template-columns:1fr 1fr}.teacher-batch-filters .batch-search{grid-column:1/-1}.teacher-batch-filters>em{justify-self:end}.teacher-batch-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.teacher-quiz-context{grid-template-columns:1fr;padding:14px}.teacher-quiz-context .paper-name{grid-column:auto}.paper-mode-tabs{grid-template-columns:1fr 1fr;padding:12px;display:grid}.paper-mode-tabs button{padding:7px 8px;line-height:1.35}.random-paper-panel,.manual-paper-panel{padding:13px}.paper-filter-row,.random-paper-actions,.manual-paper-filters{grid-template-columns:1fr}.paper-filter-row button,.manual-paper-filters .manual-search,.manual-paper-filters>button{grid-column:auto}.random-section-list article{grid-template-columns:minmax(0,1fr) 82px 34px}.teacher-bank-list article{grid-template-columns:34px minmax(0,1fr);padding:10px}.teacher-bank-options{grid-template-columns:1fr}.paper-basket-list article{grid-template-columns:25px minmax(0,1fr)}.paper-basket-list article>div{grid-column:2}.teacher-template-library>header,.teacher-template-grid{padding-left:13px;padding-right:13px}.people-modal.teacher-paper-modal,.people-modal.teacher-batch-modal{border-radius:16px 16px 0 0;width:100%;height:94dvh;max-height:94dvh}.teacher-paper-modal-scroll>article>div{grid-template-columns:1fr}.teacher-batch-filters{grid-template-columns:1fr 1fr;padding:11px 16px}.teacher-batch-filters .batch-search{grid-column:1/-1}.teacher-batch-filters>button{white-space:normal;min-width:0;padding-left:8px;padding-right:8px}.teacher-batch-list label{min-height:124px;padding:11px}.teacher-batch-list label>em{white-space:normal}.teacher-paper-modal>.modal-actions,.teacher-batch-modal>.modal-actions{padding-bottom:max(13px,env(safe-area-inset-bottom))}.teacher-paper-modal>.modal-actions button,.teacher-batch-modal>.modal-actions button{flex:1;justify-content:center;min-height:42px}}@media (width<=340px){.teacher-batch-list{grid-template-columns:1fr}.teacher-batch-list label{min-height:108px}}.icon-button{color:#8e8181;background:#fff;border:1px solid #e1d7d7;border-radius:9px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-button svg{width:16px;height:16px}.danger-icon{color:#ac3e3e}.person-detail-view{flex-direction:column;gap:14px;display:flex}.person-detail-hero{background:linear-gradient(135deg,#fff4f4,#fffaf7);border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.person-detail-hero .admin-avatar{flex:none;width:44px;height:44px;font-size:16px}.person-detail-hero>div:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.person-detail-hero>div:nth-child(2)>strong{color:#3e3333;font-size:16px}.person-detail-hero>div:nth-child(2)>span{color:#918585;font-size:9px}.person-detail-hero>em{flex:none;font-style:normal}.account-state{color:#8f7e7e;background:#f1eaea;border-radius:10px;padding:5px 9px;font-size:8px;font-weight:800}.account-state.active{color:#287047;background:#e1f3e8}.person-detail-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.person-detail-grid>div{background:#fff;border:1px solid #eee6e6;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:11px 12px;display:flex}.person-detail-grid>div.wide{grid-column:1/-1}.person-detail-grid span{color:#9b8e8e;font-size:8px}.person-detail-grid strong{overflow-wrap:anywhere;color:#514545;font-size:10px;line-height:1.55}.person-subject-detail{border:1px solid #eadfdf;border-radius:12px;overflow:hidden}.person-subject-detail>header{background:#faf7f6;border-bottom:1px solid #eee6e6;align-items:center;gap:7px;padding:11px 13px;display:flex}.person-subject-detail>header svg{color:#a80000;width:15px}.person-subject-detail>header strong{font-size:10px}.person-subject-detail>header span{color:#9a8d8d;margin-left:auto;font-size:8px}.person-subject-detail>div{grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.person-subject-detail article{background:#f9f6f5;border-radius:9px;grid-template-columns:minmax(70px,auto) minmax(80px,1fr);align-items:center;gap:4px 10px;min-width:0;padding:10px;display:grid}.person-subject-detail article strong{color:#8f1111;grid-row:1/3;font-size:10px}.person-subject-detail article span{color:#5d5050;font-size:9px;font-weight:700}.person-subject-detail article small{color:#988c8c;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.person-subject-detail>p{color:#968989;text-align:center;margin:0;padding:22px;font-size:9px}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2619198f;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.people-modal{background:#fff;border-radius:16px;flex-direction:column;width:min(560px,100%);max-height:calc(100dvh - 44px);display:flex;overflow:hidden;box-shadow:0 24px 70px #2410104d}.people-modal.student-modal{width:min(880px,100%)}.people-modal.attendance-modal{width:min(930px,100%)}.people-modal.student-view-modal{width:min(680px,100%);height:min(820px,100dvh - 44px)}.people-modal>header{border-bottom:1px solid #eee7e7;flex:none;justify-content:space-between;align-items:center;gap:14px;padding:17px 20px;display:flex}.people-modal>header>div{flex-direction:column;gap:3px;display:flex}.people-modal>header strong{color:#3e3333;font-size:15px}.people-modal>header span{color:#988d8d;font-size:8px}.modal-close{color:#807373;background:#fff;border:1px solid #e7dfdf;border-radius:8px;justify-content:center;align-items:center;width:31px;height:31px;display:inline-flex}.modal-close svg{width:15px}.modal-scroll{min-height:0;padding:18px 20px;overflow-y:auto}.people-modal>.modal-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto}.student-view-modal>.modal-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:stable;flex:auto;height:0;min-height:0;overflow:hidden scroll}.student-view-modal>.modal-scroll::-webkit-scrollbar{width:8px}.student-view-modal>.modal-scroll::-webkit-scrollbar-thumb{background:#cfbebe;border:2px solid #fff;border-radius:999px}.student-view-modal>.modal-scroll::-webkit-scrollbar-track{background:0 0}.student-view-modal>.person-detail-view>section{flex:none}.student-view-modal>.modal-actions{z-index:1;padding-bottom:max(13px,env(safe-area-inset-bottom));position:relative}.student-view-actions{flex-wrap:wrap}.student-account-control.disable{color:#9d3b43;border-color:#e4c5c8}.student-account-control.enable{color:#287047;background:#f2faf5;border-color:#bcd9c7}.modal-actions{z-index:2;padding:13px 20px max(13px,env(safe-area-inset-bottom));background:#fcfaf9;border-top:1px solid #eee8e8;flex:none;justify-content:flex-end;gap:8px;display:flex;position:relative}.modal-actions button{align-items:center;gap:5px;padding:9px 14px;font-size:10px;display:inline-flex}.modal-actions svg{width:14px}.people-form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.people-form-grid label.wide,.people-form-grid .wide{grid-column:1/-1}.people-form-grid label>span{color:#675b5b;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.people-form-grid input,.people-form-grid select,.people-form-grid textarea,.attendance-editor textarea{color:#514747;background:#fff;border:1px solid #e1dada;border-radius:8px;outline:0;width:100%;padding:9px 10px;font-size:10px}.people-form-grid textarea,.attendance-editor textarea{resize:vertical}.people-form-grid input:focus,.people-form-grid select:focus,.people-form-grid textarea:focus,.attendance-editor textarea:focus{border-color:#bd4a4a;box-shadow:0 0 0 3px #f7e8e8}.field-help{color:#9e9393;margin-top:6px;font-size:8px;line-height:1.6;display:block}.admin-form-grid{grid-template-columns:1fr}.multi-subject-editor{background:#faf8f7;border:1px solid #e6dddd;border-radius:11px;padding:13px}.multi-subject-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.multi-subject-title>div{flex-direction:column;gap:3px;display:flex}.multi-subject-title strong{color:#781111;font-size:10px}.multi-subject-title span{color:#958989;font-size:8px}.multi-subject-title button{align-items:center;gap:4px;padding:7px 10px;font-size:9px;display:inline-flex}.multi-subject-title svg{width:13px}.learning-subject-rows{flex-direction:column;gap:8px;display:flex}.learning-subject-row{background:#fff;border:1px solid #e9e1e1;border-radius:9px;grid-template-columns:26px minmax(110px,.65fr) minmax(145px,.8fr) minmax(190px,1.25fr) auto 28px;align-items:end;gap:8px;padding:10px;display:grid}.subject-order{color:#fff;background:#a80000;border-radius:7px;align-self:center;place-items:center;width:24px;height:24px;font-size:8px;font-weight:800;display:grid}.learning-subject-row label>span{font-size:8px}.learning-subject-row small{color:#9a8e8e;white-space:nowrap;align-self:center;font-size:8px}.remove-subject{color:#ad4b4b;background:#fff;border:1px solid #eadede;border-radius:7px;justify-content:center;align-self:center;align-items:center;width:27px;height:27px;display:inline-flex}.remove-subject svg{width:13px}.no-subjects{color:#998c8c;text-align:center;border:1px dashed #d9cdcd;border-radius:8px;padding:18px;font-size:9px}.questionnaire-launch-list{flex-direction:column;gap:8px;display:flex}.questionnaire-launch-list>article{background:#fff;border:1px solid #e8dfdf;border-radius:12px;padding:13px}.questionnaire-launch-groups{flex-direction:column;gap:16px;display:flex}.questionnaire-launch-group{background:#fbf8f7;border:1px solid #eadfdf;border-radius:13px;padding:12px}.questionnaire-launch-group.saved{background:#fffaf2;border-color:#eadbc2}.questionnaire-launch-group>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.questionnaire-launch-group>header>div{flex-direction:column;gap:3px;display:flex}.questionnaire-launch-group>header strong{color:#4c4040;font-size:11px}.questionnaire-launch-group>header span{color:#998d8d;font-size:8px}.questionnaire-launch-group>header em{color:#961010;background:#f2e5e5;border-radius:12px;flex:none;padding:4px 8px;font-size:8px;font-style:normal;font-weight:800}.questionnaire-launch-group.saved>header em{color:#895e19;background:#f2e7d3}.launch-subject{align-items:center;gap:10px;margin-bottom:11px;display:flex}.launch-subject>svg{color:#a80000;width:19px}.launch-subject span,.delivery-actions button span{flex-direction:column;gap:3px;display:flex}.launch-subject strong,.delivery-actions strong{color:#4c4040;font-size:10px}.launch-subject small,.delivery-actions small{color:#998d8d;font-size:8px}.delivery-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.delivery-actions button{color:#a80000;text-align:left;background:#fff8f8;border:1px solid #eadede;border-radius:9px;align-items:center;gap:9px;padding:10px;display:flex}.delivery-actions button.onsite{color:#8a5d16;background:#fffaf1;border-color:#dfd5c2}.delivery-actions button:hover{border-color:currentColor;box-shadow:0 5px 14px #5b303014}.delivery-actions button>svg{flex:none;width:17px}.delivery-actions button span{min-width:0}.template-name-field{background:#fcf9f8;border:1px solid #eadfdf;border-radius:11px;grid-template-columns:1fr auto;align-items:end;gap:12px;margin:16px 0;padding:14px;display:grid}.template-name-field label>span{color:#675b5b;margin-bottom:6px;font-size:9px;font-weight:800;display:block}.template-name-field input{background:#fff;border:1px solid #ded5d5;border-radius:8px;outline:0;width:100%;padding:10px 12px}.template-name-field input:focus{border-color:#a80000;box-shadow:0 0 0 3px #f6e6e6}.template-name-field button svg{width:14px}.template-library{background:#fff;border:1px solid #ebe3e3;border-radius:15px;margin-top:18px;padding:20px;box-shadow:0 12px 34px #4a2d2d0d}.template-library-head{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.template-library-head h2{margin:0 0 3px;font-size:16px}.template-library-head span{color:#948888;font-size:9px}.template-library-head .eyebrow{margin-bottom:6px}.template-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.template-cards>article{background:#fdfcfa;border:1px solid #ebe3e3;border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.template-icon{color:#a80000;background:#f6e2e2;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.template-icon svg{width:17px}.template-cards>article>div:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.template-cards strong{color:#4d4141;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.template-cards span,.template-cards small{color:#988d8d;font-size:8px}.template-actions{gap:5px;display:flex}.template-actions button{color:#776969;background:#fff;border:1px solid #e5dada;border-radius:7px;align-items:center;gap:3px;padding:6px 8px;font-size:8px;display:inline-flex}.template-actions button svg{width:11px}.template-actions button.delete{color:#ad3f3f}.batch-modal{width:min(720px,94vw)}.batch-toolbar{border-bottom:1px solid #eee7e7;align-items:center;gap:9px;padding:13px 20px;display:flex}.batch-toolbar select{background:#fff;border:1px solid #e2d9d9;border-radius:8px;min-width:140px;padding:8px 10px}.batch-toolbar button{padding:8px 10px;font-size:9px}.batch-toolbar span{color:#8d7f7f;margin-left:auto;font-size:9px}.batch-student-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:48vh;padding:14px 20px;display:grid;overflow-y:auto}.batch-student-list label{cursor:pointer;background:#fff;border:1px solid #e9e1e1;border-radius:9px;grid-template-columns:22px 1fr;align-items:center;gap:8px;padding:10px;display:grid}.batch-student-list label.selected{background:#fff6f6;border-color:#bd5b5b}.batch-student-list input{display:none}.batch-student-list label>i{color:#0000;border:1px solid #d9cece;border-radius:6px;justify-content:center;align-items:center;width:19px;height:19px;padding:0;line-height:0;display:flex}.batch-student-list label.selected>i{color:#fff;background:#a80000;border-color:#a80000}.batch-student-list i svg{flex:0 0 11px;width:11px;height:11px;margin:0;display:block}.batch-student-list label>span{flex-direction:column;gap:3px;min-width:0;display:flex}.batch-student-list strong{color:#4e4242;font-size:10px}.batch-student-list small{color:#998e8e;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.attendance-summary{gap:8px;padding:14px 20px 0;display:flex}.attendance-summary>span{color:#6f6666;background:#f6f4f3;border-radius:9px;flex:1;align-items:center;gap:6px;padding:8px 10px;font-size:8px;display:flex}.attendance-summary i,.status-choice i{background:currentColor;border-radius:50%;width:7px;height:7px}.attendance-summary strong{margin-left:auto;font-size:11px}.attendance-summary .present{color:#2c744b;background:#e5f4eb}.attendance-summary .leave{color:#98630d;background:#fff1d6}.attendance-summary .paused{color:#38649c;background:#e8f0fb}.attendance-summary .withdrawn{color:#8b3e4a;background:#f5e7e9}.attendance-layout{grid-template-columns:minmax(0,1.45fr) minmax(220px,.55fr);gap:16px;min-height:0;padding:14px 20px 20px;display:grid;overflow-y:auto}.attendance-calendar{background:#fcfbfa;border:1px solid #ebe4e4;border-radius:12px;min-width:0;padding:13px}.month-toolbar{justify-content:center;align-items:center;gap:8px;margin-bottom:12px;display:flex}.month-toolbar button{color:#756969;background:#fff;border:1px solid #e5dddd;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.month-toolbar button svg{width:14px}.month-toolbar input{color:#493d3d;text-align:center;background:0 0;border:0;font-size:12px;font-weight:800}.weekday-row,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.weekday-row{margin-bottom:5px}.weekday-row span{color:#9a8f8f;text-align:center;padding:4px;font-size:8px;font-weight:700}.attendance-day{color:#776b6b;background:#fff;border:1px solid #e9e3e3;border-radius:8px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:3px;min-height:58px;padding:7px;display:flex}.attendance-day b{font-size:9px}.attendance-day span{font-size:7px}.attendance-day .day-period-line{white-space:nowrap;align-items:center;gap:3px;width:100%;display:flex}.attendance-day .day-period-line i{background:#cfc8c8;border-radius:50%;flex:0 0 5px;width:5px;height:5px}.attendance-day .day-period-line i.present{background:#3f9161}.attendance-day .day-period-line i.leave{background:#d39228}.attendance-day .day-period-line i.paused{background:#5b83b3}.attendance-day .day-period-line i.withdrawn{background:#a74e5a}.attendance-day.selected{border-color:#a80000;box-shadow:0 0 0 2px #f4dede}.attendance-day.present{color:#2d724a;background:#eaf7ef;border-color:#b7dec7}.attendance-day.leave{color:#97620c;background:#fff6e3;border-color:#ead09e}.attendance-day.paused{color:#386296;background:#edf4fd;border-color:#b9cee9}.attendance-day.withdrawn{color:#893d49;background:#f8edef;border-color:#dfbec4}.attendance-day:disabled,.attendance-day.future{cursor:not-allowed;color:#b4abaa;box-shadow:none;opacity:.58;background:#f4f2f1;border-color:#eee9e7}.attendance-day:disabled .day-period-line{opacity:.62}.attendance-editor{background:#f8f5f3;border-radius:12px;flex-direction:column;gap:15px;padding:15px;display:flex}.attendance-editor>div:first-child{flex-direction:column;gap:3px;display:flex}.attendance-editor>div:first-child span,.attendance-editor label>span{color:#8b7f7f;margin-bottom:7px;font-size:8px;font-weight:700;display:block}.attendance-editor>div:first-child strong{color:#4e4242;font-size:14px}.attendance-period-tabs{background:#ebe6e4;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:3px;display:grid}.attendance-period-tabs button{color:#7f7474;background:0 0;border:0;border-radius:7px;min-width:0;height:32px;font-size:9px;font-weight:800}.attendance-period-tabs button.active{color:#a80000;background:#fff;box-shadow:0 2px 8px #5732321a}.status-choice{grid-template-columns:1fr 1fr;gap:6px;display:grid}.status-choice button{color:#736868;background:#fff;border:1px solid #e0d8d8;border-radius:8px;align-items:center;gap:5px;padding:8px;font-size:9px;display:inline-flex}.status-choice button.selected{border-color:currentColor;font-weight:800;box-shadow:0 0 0 2px #96505014}.status-choice .present{color:#2d724a}.status-choice .leave{color:#97620c}.status-choice .paused{color:#386296}.status-choice .withdrawn{color:#893d49}.save-attendance{justify-content:center;align-items:center;gap:5px;margin-top:auto;padding:10px;font-size:10px;display:inline-flex}.save-attendance svg{width:14px}.clear-attendance{color:#a34a4a;background:0 0;border:0;font-size:8px}.student-access-page{background:radial-gradient(circle at 12% 8%,#f1dede,#0000 30%),#f5f1ee;flex-direction:column;min-height:100vh;display:flex}.student-access-page>header,.student-portal>header,.portal-shell>header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc2;border-bottom:1px solid #e6dddd;justify-content:space-between;align-items:center;min-height:74px;padding:0 max(5vw,28px);display:flex}.student-access-page>header>a{color:#786d6d;align-items:center;gap:5px;font-size:10px;text-decoration:none;display:inline-flex}.student-access-page>header>a svg{width:14px}.student-access-page>main{flex:none;grid-template-rows:auto auto auto;grid-template-columns:minmax(420px,520px) minmax(450px,560px);justify-content:center;align-items:start;gap:22px 32px;width:min(1140px,94vw);margin:28px auto;display:grid}.access-intro{grid-area:1/1/auto/-1;max-width:820px;padding:6px 0 2px}.access-intro h1{color:#3e3333;margin:0 0 12px;font-family:Noto Serif SC;font-size:31px;line-height:1.42}.access-intro h1 em{color:#a80000;font-style:normal}.access-intro>p:not(.eyebrow){color:#73817d;font-size:12px;line-height:1.9}.access-intro>img{object-fit:cover;width:150px;height:150px;margin:28px 0 0 35px;transform:scale(1.2)}.access-showcase-column{flex-direction:column;grid-area:2/1;align-self:start;gap:22px;width:100%;display:flex}.student-access-card{background:#fff;border-radius:18px;grid-area:2/2;width:100%;max-width:560px;overflow:hidden;box-shadow:0 22px 65px #4a2a2a1f}.access-tabs{background:#f6f2f0;grid-template-columns:1fr 1fr;padding:7px;display:grid}.access-tabs button{color:#8c8080;text-align:center;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;padding:11px;font-size:11px;font-weight:700;line-height:1.2;display:flex}.access-tabs button.active{color:#9b0808;background:#fff;box-shadow:0 3px 12px #41232314}.student-login-form,.parent-register-form{padding:32px 38px 38px}.student-access-card:not(.register-card) .student-login-form{padding:27px 32px 30px}.student-login-form h2,.register-heading h2{color:#3f3434;margin:0 0 5px;font-size:22px}.student-login-form>p,.register-heading p{color:#938989;margin:0 0 24px;font-size:10px}.student-login-form label{margin-top:15px;display:block}.student-login-form label>span,.register-grid label>span,.register-subject-row label>span{color:#675b5b;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.student-login-form input,.register-grid input,.register-grid select,.register-subject-row select{color:#514747;background:#fff;border:1px solid #e1dada;border-radius:8px;outline:0;width:100%;padding:10px;font-size:10px}.student-login-form input:focus,.register-grid input:focus,.register-grid select:focus,.register-subject-row select:focus{border-color:#bd4a4a;box-shadow:0 0 0 3px #f7e8e8}.access-submit{text-align:center;justify-content:center;align-items:center;width:100%;min-height:43px;margin-top:19px;line-height:1.2}.access-submit svg{width:15px}.student-login-form>small{color:#9b9292;text-align:center;margin-top:12px;font-size:8px;display:block}.register-heading{margin-bottom:20px}.register-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.register-grid .wide{grid-column:1/-1}.register-subjects{background:#faf8f7;border:1px solid #e8dfdf;border-radius:10px;padding:12px}.register-subjects>div:first-child{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.register-subjects>div:first-child>strong{color:#761010;font-size:10px}.register-subjects>div:first-child>button{align-items:center;gap:4px;padding:6px 9px;font-size:8px;display:inline-flex}.register-subjects>div:first-child svg{width:12px}.register-subject-row{background:#fff;border:1px solid #e9e1e1;border-radius:8px;grid-template-columns:.65fr .85fr 1.25fr 28px;align-items:end;gap:8px;margin-top:8px;padding:9px;display:grid}.register-subjects>div:first-child>span{flex-direction:column;gap:3px;display:flex}.register-subjects>div:first-child small{color:#928686;font-size:8px;font-weight:500}.register-subject-row>button{color:#a84444;background:#fff;border:1px solid #eadede;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.register-subject-row>button svg{width:13px}.student-access-page>footer,.student-portal>footer{color:#a39a9a;text-align:center;padding:15px;font-size:8px}.learning-carousel,.carousel-placeholder{aspect-ratio:16/10;background:#fff;border:1px solid #915e5e2e;border-radius:17px;width:100%;margin-top:24px;position:relative;overflow:hidden;box-shadow:0 14px 36px #472b2b1f}.access-showcase-column>.learning-carousel,.access-showcase-column>.carousel-placeholder{margin-top:0}.carousel-image-button{z-index:1;cursor:zoom-in;appearance:none;background:#fff;border:0;border-radius:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0;overflow:hidden}.carousel-image-button>img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.carousel-image-button:hover>img{transform:scale(1.018)}.learning-carousel>button{justify-content:center;align-items:center;padding:0;display:flex}.learning-carousel>button svg{width:16px;height:16px;display:block}.carousel-zoom-hint{color:#fff;opacity:0;background:#23121280;border:1px solid #ffffff6b;border-radius:999px;align-items:center;gap:5px;padding:7px 10px;font-size:8px;font-weight:800;line-height:1;transition:all .2s;display:inline-flex;position:absolute;top:14px;right:14px;transform:translateY(-3px)}.carousel-zoom-hint svg{width:13px;height:13px}.learning-carousel:hover .carousel-zoom-hint,.carousel-image-button:focus-visible .carousel-zoom-hint{opacity:1;transform:none}.learning-carousel-shade{z-index:2;pointer-events:none;color:#fff;background:linear-gradient(#0000 35%,#261212d1);align-items:flex-end;padding:22px;display:flex;position:absolute;inset:0}.learning-carousel-shade span{flex-direction:column;gap:4px;display:flex}.learning-carousel-shade small{color:#efc4c4;letter-spacing:.14em;font-size:7px}.learning-carousel-shade strong{font-size:14px}.learning-carousel-shade p{color:#f7eded;margin:0;font-size:9px;line-height:1.5}.learning-carousel>.carousel-prev,.learning-carousel>.carousel-next{z-index:3;color:#fff;text-align:center;appearance:none;background:#24101070;border:1px solid #ffffff73;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;line-height:0;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.learning-carousel>.carousel-prev svg,.learning-carousel>.carousel-next svg{flex:0 0 16px;width:16px;height:16px;margin:0;display:block}.carousel-prev{left:10px}.carousel-next{right:10px}.carousel-dots{z-index:3;gap:5px;display:flex;position:absolute;bottom:16px;right:18px}.carousel-dots button{background:#ffffff8c;border:0;border-radius:4px;width:6px;height:6px;padding:0}.carousel-dots button.active{background:#fff;width:18px}.carousel-placeholder{background:linear-gradient(135deg,#fff,#fff5f3);justify-content:center;align-items:center;gap:15px;padding:24px;display:flex}.carousel-placeholder img{object-fit:contain;width:70px;height:70px}.carousel-placeholder span{flex-direction:column;gap:5px;display:flex}.carousel-placeholder strong{color:#5b4444;font-size:11px}.carousel-placeholder small{color:#9c8e8e;font-size:8px}.carousel-lightbox{z-index:1800;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#140c0ce6;justify-content:center;align-items:center;padding:clamp(18px,4vw,58px);display:flex;position:fixed;inset:0}.carousel-lightbox figure{background:#1d1515;border:1px solid #fff3;border-radius:20px;flex-direction:column;width:min(1180px,94vw);max-height:92dvh;margin:0;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000080}.carousel-lightbox figure>button{z-index:2;color:#fff;background:#231212b8;border:1px solid #ffffff6b;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:flex;position:absolute;top:14px;right:14px}.carousel-lightbox figure>button svg{width:20px;height:20px}.carousel-lightbox figure>img{object-fit:contain;background:#120d0d;flex:auto;width:100%;min-height:0;max-height:calc(92dvh - 82px);display:block}.carousel-lightbox figcaption{color:#fff;align-items:center;gap:13px;min-height:72px;padding:14px 18px;display:flex}.carousel-lightbox figcaption strong{flex:none;font-size:14px}.carousel-lightbox figcaption span{color:#d9cecb;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:10px;overflow:hidden}.carousel-lightbox figcaption small{color:#a99b97;white-space:nowrap;margin-left:auto;font-size:8px}@media (width<=620px){.carousel-zoom-hint{opacity:1;top:10px;right:10px}.carousel-lightbox{padding:12px}.carousel-lightbox figure{border-radius:15px;width:100%;max-height:88dvh}.carousel-lightbox figure>img{max-height:calc(88dvh - 90px)}.carousel-lightbox figcaption{flex-direction:column;align-items:flex-start;gap:4px}.carousel-lightbox figcaption small{display:none}}.public-leaderboard{background:#fff;border:1px solid #ebe1df;border-radius:18px;width:100%;margin:0 0 24px;padding:18px;box-shadow:0 15px 44px #462d2d14}.public-leaderboard-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px;display:flex}.public-leaderboard-head h2{color:#463737;margin:2px 0 4px;font-size:18px}.public-leaderboard-head span{color:#938787;font-size:9px}.public-leaderboard-head>svg{color:#b88a3c;width:36px;height:36px}.ranking-podium{background:radial-gradient(circle at 50% 18%,#f4c8c773,#0000 34%),linear-gradient(#fff9f8,#fff);border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;min-height:245px;padding:28px 5% 0;display:grid}.podium-place{flex-direction:column;align-items:center;display:flex;position:relative}.podium-1{grid-area:1/2}.podium-2{grid-area:1/1}.podium-3{grid-area:1/3}.podium-avatar{z-index:2;color:#fff;background:linear-gradient(145deg,#c30000,#780000);border:4px solid #fff;border-radius:50%;place-items:center;width:62px;height:62px;margin-bottom:-15px;display:grid;position:relative;box-shadow:0 7px 18px #56262633}.podium-avatar>span{font:24px Noto Serif SC}.podium-avatar>i{color:#fff;clip-path:polygon(50% 0,92% 24%,82% 78%,50% 100%,18% 78%,8% 24%);background:#c9983d;border:2px solid #fff;place-items:center;width:23px;height:25px;font-size:9px;font-style:normal;font-weight:900;display:grid;position:absolute;bottom:-1px;right:-3px}.podium-2 .podium-avatar{background:linear-gradient(145deg,#8f9ba0,#596368);width:55px;height:55px}.podium-3 .podium-avatar{background:linear-gradient(145deg,#c28559,#8f5836);width:55px;height:55px}.podium-2 .podium-avatar>i{background:#8d999f}.podium-3 .podium-avatar>i{background:#b9774d}.podium-block{color:#7b4242;background:linear-gradient(160deg,#fff0f1,#f9dfe1);border:1px solid #f0d6d6;border-radius:15px 15px 6px 6px;flex-direction:column;align-items:center;gap:5px;width:100%;min-height:142px;padding:29px 12px 15px;display:flex}.podium-1 .podium-block{color:#a20b0b;background:linear-gradient(160deg,#fff0f0,#f1c9cc);min-height:174px}.podium-2 .podium-block{color:#93672d;background:linear-gradient(160deg,#fff8ee,#f2dfc1);border-color:#eadfd5;min-height:148px}.podium-3 .podium-block{color:#8d6a1d;background:linear-gradient(160deg,#fffcec,#f5e5a9);border-color:#eee1bd;min-height:140px}.podium-block>svg{width:18px}.podium-block>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.podium-block>b{font:24px Georgia}.podium-block>b small{margin-left:2px;font:7px sans-serif}.podium-block>span{color:currentColor;opacity:.7;font-size:7px}.public-rank-list{border:1px solid #eee5e3;border-radius:12px;margin-top:12px;overflow:hidden}.public-rank-list article{border-top:1px solid #f0e9e7;grid-template-columns:28px 35px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;display:grid}.public-rank-list article:first-child{border-top:0}.public-rank-list article>b{color:#8d817e;text-align:center;font:14px Georgia}.rank-list-avatar{color:#9b1717;background:#f1e4e2;border-radius:50%;place-items:center;width:32px;height:32px;font-size:10px;font-weight:800;display:grid}.public-rank-list article>span{flex-direction:column;gap:3px;min-width:0;display:flex}.public-rank-list strong{font-size:9px}.public-rank-list span small{color:#9a8e8e;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.public-rank-list em{color:#a80000;font:17px Georgia}.public-rank-list em small{margin-left:2px;font:7px sans-serif}.public-rank-empty{color:#9c918e;border:1px dashed #dfd5d2;border-radius:12px;justify-content:center;align-items:center;gap:12px;padding:25px;display:flex}.public-rank-empty>svg{width:27px}.public-rank-empty span{flex-direction:column;gap:4px;display:flex}.public-rank-empty strong{color:#665956;font-size:10px}.public-rank-empty small{font-size:8px}.student-portal{background:#f5f1ee;flex-direction:column;min-height:100vh;display:flex}.student-portal>header>div:last-child{align-items:center;gap:14px;display:flex}.student-portal>header>div:last-child>span{text-align:right;flex-direction:column;display:flex}.student-portal>header>div:last-child strong{font-size:10px}.student-portal>header>div:last-child small{color:#958a8a;font-size:8px}.student-portal>header button,.student-logout{color:#756868;background:#fff;border:1px solid #e3dada;border-radius:8px;align-items:center;gap:5px;padding:8px 10px;font-size:9px;display:inline-flex}.student-portal>header button svg,.student-logout svg{width:13px}.student-portal>main{flex:1;width:min(1080px,92vw);margin:34px auto}.portal-nav{z-index:6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border:1px solid #e7dfdd;border-radius:14px;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:18px;padding:7px;display:grid;position:sticky;top:12px;box-shadow:0 8px 25px #432b2b14}.portal-nav button{color:#817573;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:43px;font-size:9px;font-weight:800;display:flex;position:relative}.portal-nav button.active{color:#fff;background:#a80000;box-shadow:0 7px 18px #a8000033}.portal-nav svg{width:15px}.portal-nav em{color:#a80000;background:#fff;border-radius:8px;place-items:center;min-width:16px;height:16px;font-size:7px;font-style:normal;display:grid}.portal-welcome{background:linear-gradient(135deg,#fff 0%,#fff8f6 100%);border-radius:17px;justify-content:space-between;align-items:center;gap:25px;padding:28px 32px;display:flex;box-shadow:0 10px 35px #45292912}.portal-welcome h1{margin:0 0 8px;font-family:Noto Serif SC;font-size:25px}.portal-welcome p:not(.eyebrow){color:#807575;margin:0;font-size:10px}.portal-count{color:#fff;background:#a80000;border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:120px;height:100px;display:flex}.portal-count strong{font:32px Georgia}.portal-count span{font-size:8px}.portal-success{color:#2e704a;background:#e5f3ea;border-radius:10px;align-items:center;gap:8px;margin-top:16px;padding:12px 15px;font-size:9px;display:flex}.portal-success svg{width:15px}.portal-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.portal-quick-actions>button{color:#615553;text-align:left;background:#fff;border:1px solid #ebe3e1;border-radius:13px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:15px;display:grid;box-shadow:0 6px 20px #4129290d}.portal-quick-actions>button:hover{border-color:#cf9696;transform:translateY(-1px)}.portal-quick-actions>button>span{color:#a80000;background:#f6e4e4;border-radius:10px;place-items:center;width:37px;height:37px;display:grid}.portal-quick-actions>button:nth-child(2)>span{color:#956117;background:#fff1dc}.portal-quick-actions>button:nth-child(3)>span{color:#47745b;background:#e8f2ed}.portal-quick-actions>button:nth-child(4)>span{color:#685593;background:#ece9f8}.portal-quick-actions svg{width:17px}.portal-quick-actions>button>svg{color:#a29794;width:14px}.portal-quick-actions>button>div{flex-direction:column;gap:4px;min-width:0;display:flex}.portal-quick-actions strong{font-size:10px}.portal-quick-actions small{color:#988c8a;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.assignment-section,.assignment-history{background:#fff;border-radius:15px;margin-top:20px;padding:22px;box-shadow:0 6px 24px #3c26260f}.section-title{align-items:center;gap:8px;margin-bottom:15px;display:flex}.section-title h2{margin:0;font-size:15px}.section-title>span{color:#8b7d7d;background:#f2eded;border-radius:9px;padding:3px 7px;font-size:8px}.assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.assignment-grid article{border:1px solid #ebe3e3;border-radius:12px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:15px;display:grid}.assignment-icon{color:#a31313;background:#f7e3e3;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.assignment-icon svg{width:19px}.assignment-grid article>div:nth-child(2){flex-direction:column;gap:3px;display:flex}.assignment-grid article strong{font-size:11px}.assignment-grid article span,.assignment-grid article small{color:#948989;font-size:8px}.assignment-grid article button{padding:8px 10px;font-size:8px}.assignment-grid article button svg{width:12px}.portal-empty{color:#918787;text-align:center;padding:40px}.portal-empty svg{color:#5f8d73;width:30px}.portal-empty h3{margin:8px 0 4px;font-size:12px}.portal-empty p{margin:0;font-size:8px}.student-profile-page{flex-direction:column;gap:18px;display:flex}.student-profile-hero{background:linear-gradient(135deg,#fff 0%,#fff6f4 100%);border:1px solid #eadfdd;border-radius:17px;justify-content:space-between;align-items:center;gap:24px;min-height:154px;padding:28px 32px;display:flex;overflow:hidden;box-shadow:0 10px 35px #45292912}.student-profile-hero h1{margin:2px 0 7px;font-family:Noto Serif SC;font-size:25px}.student-profile-hero p:not(.eyebrow){color:#817573;margin:0;font-size:9px}.student-profile-hero>svg{color:#a80000;opacity:.12;flex:none;width:70px;height:70px}.student-profile-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:18px;display:grid}.student-profile-side{flex-direction:column;gap:18px;display:flex}.student-profile-card{background:#fff;border:1px solid #e9e0de;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px #3d27270f}.student-profile-card>header{background:#fcfaf9;border-bottom:1px solid #eee7e5;align-items:center;gap:12px;padding:19px 21px;display:flex}.student-profile-card>header>span{color:#a80000;background:#f7e5e5;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.student-profile-card>header>span svg{width:18px}.student-profile-card>header h2{margin:0 0 4px;font-size:13px}.student-profile-card>header p{color:#938784;margin:0;font-size:8px}.student-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:21px;display:grid}.student-profile-form label,.password-fields label{color:#554947;flex-direction:column;gap:6px;min-width:0;font-size:8px;font-weight:800;display:flex}.student-profile-form label.wide,.student-profile-form>.address-fields{grid-column:1/-1}.student-profile-form input,.student-profile-form select,.password-fields input{color:#3f3735;background:#fff;border:1px solid #ded5d2;border-radius:9px;outline:0;width:100%;min-height:42px;padding:0 12px;font-size:9px}.student-profile-form input:focus,.student-profile-form select:focus,.password-fields input:focus{border-color:#ba5555;box-shadow:0 0 0 3px #faeaea}.student-profile-card>footer{justify-content:flex-end;padding:0 21px 21px;display:flex}.student-profile-card>footer button{justify-content:center;align-items:center;gap:6px;min-height:39px;padding:0 15px;font-size:9px;display:inline-flex}.student-profile-card>footer button svg{width:14px}.academic-summary dl{background:#eee7e5;grid-template-columns:1fr 1fr;gap:1px;margin:0;display:grid}.academic-summary dl>div{background:#fff;min-width:0;padding:13px 15px}.academic-summary dt{color:#988d89;font-size:7px}.academic-summary dd{color:#443a38;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:10px;font-weight:800;overflow:hidden}.profile-subject-list{flex-direction:column;gap:7px;padding:15px;display:flex}.profile-subject-list>span{background:#f8f5f4;border-radius:9px;flex-direction:column;gap:3px;min-width:0;padding:10px 11px;display:flex}.profile-subject-list strong{font-size:9px}.profile-subject-list small{color:#958a87;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.password-fields{flex-direction:column;gap:12px;padding:18px 21px;display:flex}.assignment-history>div:not(.section-title){border-top:1px solid #f0eaea;grid-template-columns:26px 1fr auto;align-items:center;gap:9px;padding:10px 0;display:grid}.assignment-history>div>svg{color:#4e896b;width:15px}.assignment-history>div>span{flex-direction:column;display:flex}.assignment-history>div strong{font-size:10px}.assignment-history>div small{color:#9a9090;font-size:8px}.assignment-history>div em{color:#4e896b;font-size:8px;font-style:normal}.self-assessment-builder{background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 10px 35px #45292912}.self-builder-head{background:linear-gradient(135deg,#fff,#fff8f5);border-bottom:1px solid #eee7e5;justify-content:space-between;align-items:center;gap:20px;padding:25px 28px;display:flex}.self-builder-head h1{margin:1px 0 6px;font-size:23px}.self-builder-head p:not(.eyebrow){color:#897d7b;margin:0;font-size:9px}.self-builder-head>svg{color:#b20000;opacity:.85;width:42px;height:42px}.self-subject-tabs{border-bottom:1px solid #f0e9e7;gap:8px;padding:16px 20px;display:flex;overflow-x:auto}.self-subject-tabs button{color:#655956;text-align:left;background:#fff;border:1px solid #e6dddb;border-radius:10px;flex-direction:column;gap:4px;min-width:145px;padding:11px 13px;display:flex}.self-subject-tabs button.active{background:#fff4f3;border-color:#b52a2a;box-shadow:0 0 0 2px #f7e4e4}.self-subject-tabs strong{font-size:10px}.self-subject-tabs small{color:#998d8a;white-space:nowrap;font-size:7px}.self-range-toolbar{justify-content:space-between;align-items:center;gap:15px;padding:16px 20px 12px;display:flex}.self-range-toolbar>div:first-child{flex-direction:column;gap:3px;display:flex}.self-range-toolbar strong{font-size:11px}.self-range-toolbar span{color:#978b89;font-size:8px}.self-range-toolbar>div:last-child{gap:6px;display:flex}.self-range-toolbar button{color:#756966;text-align:center;background:#fff;border:1px solid #e0d7d5;border-radius:7px;justify-content:center;align-items:center;padding:7px 9px;font-size:8px;line-height:1.2;display:inline-flex}.self-chapter-groups{flex-direction:column;gap:10px;padding:0 20px 18px;display:flex}.self-chapter-groups>div{border:1px solid #ebe3e1;border-radius:11px;overflow:hidden}.self-chapter-groups header{background:#faf7f6;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.self-chapter-groups header strong{font-size:9px}.self-chapter-groups header span{color:#9a8e8b;font-size:8px}.self-chapter-groups>div>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:11px;display:grid}.self-chapter-groups label{color:#6d615e;cursor:pointer;border:1px solid #e8e0de;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;padding:9px;display:grid}.self-chapter-groups label.checked{color:#8f1010;background:#fff4f3;border-color:#d99292}.self-chapter-groups input{display:none}.self-chapter-groups label>i{color:#0000;background:#fff;border:1px solid #d9cfcc;border-radius:5px;justify-content:center;align-items:center;width:17px;height:17px;padding:0;line-height:0;display:flex}.self-chapter-groups label.checked>i{color:#fff;background:#a00;border-color:#a00}.self-chapter-groups label svg{flex:0 0 10px;width:10px;height:10px;margin:0;display:block}.self-chapter-groups label>span{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.self-assessment-builder>footer{background:#fcfaf9;border-top:1px solid #eee7e5;justify-content:flex-end;align-items:center;gap:16px;padding:14px 20px;display:flex}.self-assessment-builder>footer>span{color:#8e8280;font-size:9px}.self-assessment-builder>footer strong{color:#a80000}.self-assessment-builder>footer>div{gap:8px;margin-left:auto;display:flex}.self-assessment-builder>footer button{min-height:40px}.ai-quiz-builder{background:linear-gradient(135deg,#fff8f4,#fff);border:1px solid #ead9d3;border-radius:12px;grid-template-columns:minmax(190px,1fr) 145px 100px 100px 90px;align-items:end;gap:10px;margin:0 20px 18px;padding:15px;display:grid}.ai-quiz-builder.unavailable{opacity:.72;background:#faf8f7}.ai-builder-title{align-items:center;gap:11px;display:flex}.ai-builder-title>span{color:#fff;background:#a80000;border-radius:11px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.ai-builder-title svg{width:19px;height:19px}.ai-builder-title>div{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-builder-title strong{color:#4c3e3b;font-size:11px}.ai-builder-title small{color:#938581;font-size:8px;line-height:1.55}.ai-quiz-builder label>span{color:#766865;margin-bottom:6px;font-size:8px;font-weight:700;display:block}.ai-quiz-builder select{color:#5d504d;background:#fff;border:1px solid #e2d8d5;border-radius:8px;outline:0;width:100%;height:38px;padding:0 10px;font-size:9px}.ai-generate-button svg{width:15px;height:15px}.ai-generating-overlay{z-index:320;box-sizing:border-box;-webkit-backdrop-filter:blur(9px)saturate(.9);backdrop-filter:blur(9px)saturate(.9);background:#230f0f94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.ai-generating-card{box-sizing:border-box;text-align:center;background:linear-gradient(145deg,#fffffffa,#fff6f4fa);border:1px solid #ffffffd9;border-radius:24px;flex-direction:column;align-items:center;width:min(430px,100vw - 32px);padding:35px 30px 29px;display:flex;overflow:hidden;box-shadow:0 32px 90px #26000057}.ai-generating-card .eyebrow{letter-spacing:.2em;margin:20px 0 8px;font-size:8px}.ai-generating-card h2{color:#382d2b;margin:0;font-size:23px}.ai-generating-card>p:not(.eyebrow){color:#8a7b77;max-width:330px;margin:10px 0 19px;font-size:10px;line-height:1.75}.ai-generating-card>small{color:#a0918d;margin-top:18px;font-size:8px}.ai-generating-orbit{background:radial-gradient(circle,#c90000 0 31%,#fff1ef 32% 52%,#0000 53%);border-radius:50%;place-items:center;width:82px;height:82px;display:grid;position:relative}.ai-generating-orbit:before,.ai-generating-orbit:after{content:"";border:2px solid #c70000;border-color:#c70000 #e6af62 #0000 #0000;border-radius:50%;animation:1.25s linear infinite ai-orbit-spin;position:absolute;inset:4px}.ai-generating-orbit:after{border-width:1px;border-top-color:#edbeb8;border-right-color:#0000;animation-duration:2.2s;animation-direction:reverse;inset:-6px}.ai-generating-orbit>span{background:#e6af62;border-radius:50%;width:7px;height:7px;animation:1.25s ease-in-out infinite alternate ai-orbit-dot;position:absolute;box-shadow:0 0 12px #d69739}.ai-generating-orbit>span:first-child{top:7px;right:10px}.ai-generating-orbit>span:nth-child(2){animation-delay:-.6s;bottom:8px;left:11px}.ai-generating-orbit>svg{z-index:1;color:#fff;width:25px;height:25px;animation:1.15s ease-in-out infinite alternate ai-sparkle-pulse;position:relative}.ai-generating-progress{background:#f2e6e3;border-radius:9px;gap:4px;width:100%;height:4px;display:flex;overflow:hidden}.ai-generating-progress i{border-radius:inherit;transform-origin:0;background:linear-gradient(90deg,#a80000,#df4640,#e5ad58);flex:1;height:100%;animation:1.5s ease-in-out infinite ai-progress-wave}.ai-generating-progress i:nth-child(2){animation-delay:.18s}.ai-generating-progress i:nth-child(3){animation-delay:.36s}.ai-generating-steps{grid-template-columns:repeat(3,1fr);gap:7px;width:100%;margin-top:14px;display:grid}.ai-generating-steps span{color:#8f817d;white-space:nowrap;background:#fff;border:1px solid #eadfdb;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-width:0;padding:8px 5px;font-size:8px;display:flex}.ai-generating-steps span.active{color:#a80000;background:#fff1f0;border-color:#e7b9b5}.ai-generating-steps svg{width:12px;height:12px}@keyframes ai-orbit-spin{to{transform:rotate(360deg)}}@keyframes ai-orbit-dot{to{opacity:.55;transform:scale(1.6)}}@keyframes ai-sparkle-pulse{to{opacity:.78;transform:scale(1.15)rotate(7deg)}}@keyframes ai-progress-wave{0%,to{opacity:.35;transform:scaleX(.25)}50%{opacity:1;transform:scaleX(1)}}@media (width<=480px){.ai-generating-overlay{padding:16px}.ai-generating-card{border-radius:20px;padding:29px 18px 24px}.ai-generating-card h2{font-size:20px}.ai-generating-steps{gap:5px}.ai-generating-steps span{font-size:7px}}@media (prefers-reduced-motion:reduce){.ai-generating-orbit:before,.ai-generating-orbit:after,.ai-generating-orbit>span,.ai-generating-orbit>svg,.ai-generating-progress i{animation-duration:3s}}.ai-quiz-history{background:#fff;border-radius:15px;margin-top:18px;padding:20px;box-shadow:0 7px 25px #442a2a0f}.ai-quiz-history .section-title>div{flex-direction:column;gap:4px;display:flex}.ai-quiz-history .section-title small{color:#998d8a;font-size:8px}.ai-quiz-history>div:not(.section-title){flex-direction:column;display:flex}.ai-quiz-history article{border-top:1px solid #f0e9e7;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 0;display:grid}.ai-history-score{color:#a80000;background:#f3e3e3;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.ai-history-score.pending{color:#936018;background:#fff2dc}.ai-history-score strong{font-size:13px}.ai-history-score strong small{margin-left:1px;font-size:6px}.ai-history-score svg{width:18px}.ai-quiz-history article>span{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-quiz-history article>span strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.ai-quiz-history article>span small{color:#998d8a;font-size:8px}.ai-quiz-history article>button{min-width:90px;padding:9px 12px;font-size:8px}.compact-ai-empty{padding:24px}.ai-quiz-page{width:min(920px,92vw);margin:28px auto 45px}.ai-quiz-hero{background:linear-gradient(135deg,#fff,#fff5f1);border-radius:17px;justify-content:space-between;align-items:center;gap:20px;padding:24px 27px;display:flex;box-shadow:0 9px 30px #42242412}.ai-quiz-hero h1{margin:0 0 6px;font-size:22px}.ai-quiz-hero p:not(.eyebrow){color:#8b7e7a;margin:0;font-size:9px}.ai-score,.ai-progress{color:#fff;text-align:center;background:#a80000;border-radius:14px;flex-direction:column;flex:0 0 106px;justify-content:center;align-items:center;width:106px;min-height:72px;padding:8px;display:flex}.ai-progress{color:#a80000;background:#fff;border:1px solid #ead7d3}.ai-score strong,.ai-progress strong{font-size:24px;line-height:1}.ai-score span,.ai-progress span{margin-top:5px;font-size:7px}.ai-quiz-chapters{flex-wrap:wrap;gap:6px;padding:14px 2px 6px;display:flex}.ai-quiz-chapters span{color:#766965;background:#efe8e5;border-radius:10px;padding:5px 8px;font-size:7px}.student-mastery-report{background:#fff;border:1px solid #eadfdb;border-radius:15px;margin:10px 0 16px;overflow:hidden;box-shadow:0 7px 24px #442a2a0e}.student-mastery-report>header{background:linear-gradient(135deg,#fff9f7,#fff);border-bottom:1px solid #eee7e5;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 20px;display:grid}.student-mastery-report>header>span{color:#a80000;background:#f5e2e2;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.student-mastery-report>header svg{width:19px}.student-mastery-report>header h2{margin:1px 0 4px;font-size:15px}.student-mastery-report>header p:not(.eyebrow){color:#827572;margin:0;font-size:8px;line-height:1.6}.student-mastery-report>header>strong{color:#916117;background:#fff0d8;border-radius:9px;padding:6px 9px;font-size:9px}.student-mastery-report.mastery-good>header>strong{color:#347052;background:#e7f4eb}.student-mastery-report.mastery-weak>header>strong{color:#a22924;background:#f9e3e1}.mastery-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 20px;display:grid}.mastery-summary-grid article{background:#faf8f7;border:1px solid #e8e1de;border-radius:13px;grid-template-columns:1fr auto;align-items:end;gap:5px 10px;min-height:84px;padding:15px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 14px #48312e09}.mastery-summary-grid article:before{content:"";background:#9f7777;border-radius:0 999px 999px 0;width:4px;position:absolute;inset:12px auto 12px 0}.mastery-summary-grid article.answer{background:#f4f8fc;border-color:#d9e3ed}.mastery-summary-grid article.answer:before{background:#4b709c}.mastery-summary-grid article.good{background:#f1f9f4;border-color:#cfe5d8}.mastery-summary-grid article.good:before{background:#39805a}.mastery-summary-grid article.steady{background:#fff9eb;border-color:#eadfbf}.mastery-summary-grid article.steady:before{background:#b37a17}.mastery-summary-grid article.alert{background:#fff1ef;border-color:#efceca}.mastery-summary-grid article.alert:before{background:#b62f2a}.mastery-summary-grid small,.mastery-summary-grid span{color:#786d69;font-size:9px}.mastery-summary-grid small{font-weight:800}.mastery-summary-grid span{grid-column:1/-1}.mastery-summary-grid b{color:#493e3b;font-size:22px;line-height:1}.mastery-summary-grid article.alert b{color:#a82822}.mastery-table-wrap{padding:0 20px 16px;overflow-x:auto}.mastery-table{border-collapse:collapse;width:100%;min-width:700px}.mastery-table th{color:#958986;text-align:left;background:#faf7f6;padding:8px 9px;font-size:7px}.mastery-table td{color:#716562;border-top:1px solid #f0e9e7;padding:10px 9px;font-size:8px;line-height:1.55}.mastery-table td:first-child{min-width:190px}.mastery-table td:first-child strong,.mastery-table td:first-child small{display:block}.mastery-table td:first-child strong{color:#4d413e;font-size:8px}.mastery-table td:first-child small{color:#a09390;margin-top:3px;font-size:7px}.mastery-table td:nth-child(2){min-width:115px}.mastery-progress{vertical-align:middle;background:#eee8e6;border-radius:6px;width:70px;height:6px;margin-right:6px;display:inline-block;overflow:hidden}.mastery-progress i{border-radius:inherit;background:linear-gradient(90deg,#c7433c,#4d8b68);height:100%;display:block}.mastery-table td:nth-child(2)>b{color:#625653;font-size:8px}.mastery-tag{color:#916117;white-space:nowrap;background:#fff0d8;border-radius:8px;padding:4px 7px;font-size:7px;font-style:normal;font-weight:800;display:inline-flex}.mastery-tag.good{color:#347052;background:#e7f4eb}.mastery-tag.weak{color:#a22924;background:#f9e3e1}.mastery-tag.review{color:#66558d;background:#ece9f5}.student-mastery-report>footer{background:#fcfaf9;border-top:1px solid #eee7e5;align-items:flex-start;gap:10px;padding:12px 20px;display:flex}.student-mastery-report>footer>strong{color:#665a57;white-space:nowrap;padding-top:4px;font-size:8px}.student-mastery-report>footer>div{flex-wrap:wrap;gap:6px;display:flex}.student-mastery-report>footer span{color:#8e2722;background:#fff0ed;border-radius:8px;align-items:center;gap:5px;padding:4px 7px;font-size:7px;display:inline-flex}.student-mastery-report>footer span b{color:#fff;background:#a80000;border-radius:5px;place-items:center;width:15px;height:15px;font-size:6px;display:grid}.history-diagnosis{color:#916117;background:#fff0d8;border-radius:7px;align-self:flex-start;padding:3px 6px;font-size:7px;font-style:normal}.history-diagnosis.good{color:#347052;background:#e7f4eb}.history-diagnosis.weak{color:#a22924;background:#f9e3e1}.ai-question-list{flex-direction:column;gap:12px;min-width:0;max-width:100%;margin-top:8px;display:flex}.ai-question-list article{background:#fff;border:1px solid #ece3e0;border-radius:15px;min-width:0;max-width:100%;padding:20px 22px;overflow:hidden;box-shadow:0 6px 21px #4126260b}.ai-question-list article.correct{border-color:#bcdcc9}.ai-question-list article.incorrect{border-color:#e6bab6}.ai-question-list article.subjective-complete{border-color:#d9c38f}.ai-question-list article>header{align-items:center;gap:9px;display:flex}.ai-question-list article>header>b{color:#a80000;background:#f4e5e5;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:9px;display:grid}.ai-question-list article>header>span{flex-direction:column;gap:2px;min-width:0;display:flex}.ai-question-list article>header em{color:#6e605d;font-size:8px;font-style:normal;font-weight:800}.ai-question-list article>header small{color:#9d918e;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.ai-question-list article>header>svg{color:#4b8a67;width:20px;margin-left:auto}.ai-question-list article.incorrect>header>svg{color:#bd3d35}.ai-question-list h2{overflow-wrap:anywhere;word-break:break-word;color:#403633;max-width:100%;margin:16px 0 14px;font-size:13px;line-height:1.75}.ai-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ai-options button{color:#615552;text-align:left;background:#fff;border:1px solid #e8dfdc;border-radius:10px;align-items:center;gap:9px;min-width:0;max-width:100%;min-height:46px;padding:9px 11px;display:flex;overflow:hidden}.ai-options button:not(:disabled):hover,.ai-options button.selected{background:#fff5f3;border-color:#bf4e48}.ai-options button.correct-answer{color:#356d4c;background:#f0f8f3;border-color:#66a57e}.ai-options button>i{background:#f1e9e7;border-radius:8px;flex:0 0 25px;place-items:center;width:25px;height:25px;font-size:8px;font-style:normal;font-weight:800;display:grid}.ai-options button.selected>i{color:#fff;background:#a80000}.ai-options button.correct-answer>i{color:#fff;background:#4b8a67}.ai-options button>span{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%;font-size:9px;line-height:1.55}.ai-options button>svg{width:14px;margin-left:auto}.question-diagram{box-sizing:border-box;background:#fffdfb;border:1px solid #eadfdb;border-radius:12px;width:min(560px,100%);max-width:100%;margin:4px auto 16px;overflow:hidden}.question-diagram img,.diagram-rendering{aspect-ratio:5/3;width:100%;height:auto;display:block}.question-diagram img{object-fit:contain;background:#fffdfb}.diagram-rendering{color:#998b87;place-items:center;font-size:8px;display:grid}.native-svg-diagram>div{background:#fffdfb;width:100%;max-width:100%;overflow:hidden}.native-svg-diagram svg{box-sizing:border-box;aspect-ratio:7/5;width:100%;max-width:700px;height:auto;margin:0 auto;display:block}.question-diagram figcaption{color:#988b87;text-align:center;border-top:1px solid #eee5e2;padding:7px 10px;font-size:7px}.diagram-grid line{stroke:#eee8e5;stroke-width:1px}.diagram-axes line{stroke:#7d706c;stroke-width:1.6px}.diagram-axes path{fill:#7d706c}.diagram-axes text,.diagram-elements text{fill:#534844;font-size:13px;font-weight:700}.diagram-elements line,.diagram-elements circle,.diagram-elements polyline,.diagram-elements rect{fill:none;stroke:#a80000;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.diagram-elements .diagram-point{fill:#a80000;stroke:#fff;stroke-width:1.5px}.diagram-elements .closed{fill:#a800000e}.diagram-elements .dashed{stroke-dasharray:7 5}.math-text{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;max-width:100%}.math-expression{vertical-align:-.08em;vertical-align:-.14em;max-width:100%;padding-block:.12em;line-height:1.35;display:inline-block}.math-expression .katex{font-size:1em;line-height:1.35}.math-expression .katex-display{max-width:100%;margin:8px 0;padding:2px 0;overflow:auto hidden}.ai-options .math-text{min-width:0;font-size:9px;line-height:1.55}.ai-subjective-answer{flex-direction:column;gap:7px;display:flex}.ai-subjective-answer label{color:#716461;font-size:8px;font-weight:800}.ai-subjective-answer textarea{resize:vertical;color:#4b403d;width:100%;min-height:120px;font:inherit;background:#fffdfc;border:1px solid #e5d8d4;border-radius:11px;outline:0;padding:12px 14px;font-size:10px;line-height:1.7}.ai-subjective-answer textarea:focus{border-color:#bd4a4a;box-shadow:0 0 0 3px #f7e8e8}.ai-subjective-answer textarea:disabled{color:#655956;opacity:1;background:#f8f5f3}.ai-explanation{background:#f7f4f1;border-radius:9px;margin-top:13px;padding:11px 13px}.ai-explanation strong{color:#574b47;font-size:9px}.ai-explanation p{overflow-wrap:anywhere;word-break:break-word;color:#817570;max-width:100%;margin:5px 0 0;font-size:8px;line-height:1.7}.ai-explanation.subjective-reference{background:#fffaf0;border:1px solid #eadbb8}.ai-explanation.subjective-reference>small{color:#9a6a19;margin-top:10px;font-size:8px;font-weight:800;display:block}.ai-quiz-actions{justify-content:space-between;gap:10px;margin-top:17px;display:flex}.ai-quiz-actions button{min-height:44px}.growth-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.growth-summary article{background:#fff;border-radius:13px;align-items:center;gap:12px;padding:17px;display:flex;box-shadow:0 7px 24px #442a2a0f}.growth-summary article>svg{color:#a80000;width:24px}.growth-summary article:nth-child(2)>svg{color:#4a8062}.growth-summary article:nth-child(3)>svg{color:#a46c1d}.growth-summary article>span{flex-direction:column;gap:3px;display:flex}.growth-summary small{color:#998d8a;font-size:8px}.growth-summary strong{font-size:14px}.growth-report{background:#fff;border-radius:15px;padding:22px;box-shadow:0 7px 25px #442a2a0f}.growth-records{flex-direction:column;display:flex}.growth-records article{border-top:1px solid #f0e9e7;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 0;display:grid}.growth-records article:first-child{border-top:0}.history-source{color:#a80000;background:#f4e3e3;border-radius:11px;place-items:center;width:39px;height:39px;display:grid}.history-source.student{color:#926017;background:#fff0d9}.history-source span{font-size:8px;font-weight:900}.growth-records article>div:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.growth-records article strong{font-size:10px}.growth-records article div:nth-child(2)>span,.growth-records article small{color:#998d8a;font-size:8px}.history-levels{gap:5px;display:flex}.history-levels span{color:#fff;border-radius:8px;padding:4px 7px;font-size:7px}.growth-record-view{color:#665a57;white-space:nowrap;background:#fff;border:1px solid #e7dddd;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:31px;padding:7px 10px;font-size:8px;font-weight:800;display:inline-flex}.growth-record-view:hover{color:#a80000;border-color:#c53a36}.growth-record-view svg{width:13px;height:13px}.growth-record-detail-modal{width:min(760px,100%)!important}.growth-record-detail-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.growth-record-detail-summary>div{background:#fbf8f7;border:1px solid #eee4e1;border-radius:11px;flex-direction:column;gap:5px;min-width:0;padding:13px;display:flex}.growth-record-detail-summary small{color:#998d89;font-size:8px}.growth-record-detail-summary strong{overflow-wrap:anywhere;color:#493e3b;font-size:10px}.growth-assessment-details,.growth-record-note{border:1px solid #eee4e1;border-radius:12px;margin-top:14px;padding:15px}.growth-assessment-details h3,.growth-record-note h3{margin:0 0 10px;font-size:11px}.growth-assessment-details>div:not(.growth-record-legacy-empty){flex-direction:column;display:flex}.growth-assessment-details article{border-top:1px solid #f0e9e7;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.growth-assessment-details article:first-child{border-top:0}.growth-assessment-details article>span{align-items:center;gap:9px;min-width:0;display:flex}.growth-assessment-details article b{color:#a80000;background:#f8e6e4;border-radius:8px;flex:none;place-items:center;width:25px;height:25px;font-size:8px;display:grid}.growth-assessment-details article strong{overflow-wrap:anywhere;font-size:9px}.growth-assessment-details article em{color:#fff;border-radius:8px;flex:none;padding:5px 8px;font-size:7px;font-style:normal}.growth-assessment-details article em.green{background:#4e8b67}.growth-assessment-details article em.amber{background:#cf8a26}.growth-assessment-details article em.red{background:#bf3d38}.growth-assessment-details article em.gray{background:#909997}.growth-record-legacy-empty{color:#918582;text-align:center;justify-items:center;gap:6px;padding:25px 12px;display:grid}.growth-record-legacy-empty svg{width:28px}.growth-record-legacy-empty strong{font-size:10px}.growth-record-legacy-empty p,.growth-record-note p{color:#827673;margin:0;font-size:8px;line-height:1.7}.source-tag{color:#9d1717;vertical-align:middle;background:#f6e4e4;border-radius:7px;margin-left:5px;padding:2px 5px;font-size:7px;font-style:normal;display:inline-flex}.source-tag.student{color:#8b5c12;background:#fff0d5}.portal-shell{background:#f5f1ee;min-height:100vh}.student-questionnaire-page{width:min(900px,92vw);margin:28px auto}.gray{background:#9aa19f}.rating-buttons button.gray.picked{color:#69716e}.onsite-notice{color:#786448;background:#fff9ee;border:1px solid #e7d7b8;border-radius:9px;margin-bottom:18px;padding:10px 13px;font-size:9px}.onsite-notice span{color:#fff;background:#8a5d16;border-radius:12px;margin-right:8px;padding:3px 7px;font-weight:800;display:inline-block}.stat-icon.progress{color:#62508f;background:#ece9f7}.stat-icon.mastery{color:#4f6f9d;background:#e8eff9}.dashboard-overview{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:16px;margin:25px 0 18px;display:grid}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-kpi{background:#fff;border:1px solid #eee8e5;border-radius:15px;min-height:132px;padding:19px 20px 16px;position:relative;overflow:hidden;box-shadow:0 7px 24px #452c2c0b}.dashboard-kpi:after{content:"";background:#a8000006;border-radius:50%;width:92px;height:92px;position:absolute;bottom:-30px;right:-18px}.dashboard-kpi>p{color:#766c69;margin:0 0 10px;font-size:10px;font-weight:700}.dashboard-kpi>strong{color:#352e2c;align-items:baseline;gap:4px;font:30px Georgia,serif;display:flex}.dashboard-kpi>strong small{color:#8d817e;font:9px sans-serif}.dashboard-kpi>footer{color:#9b908c;text-overflow:ellipsis;white-space:nowrap;font-size:8px;position:absolute;bottom:15px;left:20px;right:16px;overflow:hidden}.dashboard-kpi .stat-icon{width:36px;height:36px}.kpi-progress{background:#eee9e7;border-radius:5px;width:calc(100% - 58px);height:5px;margin-top:6px;overflow:hidden}.kpi-progress i{border-radius:inherit;background:linear-gradient(90deg,#4f709e,#6fa285);height:100%;display:block}.weak-insight-card{background:#fff;border:1px solid #eee8e5;border-radius:15px;min-width:0;padding:19px 20px;box-shadow:0 7px 24px #452c2c0b}.weak-insight-card>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.weak-insight-card>header span{color:#b00000;letter-spacing:.18em;font-size:7px;font-weight:900}.weak-insight-card h2{color:#3d3432;margin:3px 0 0;font-size:14px}.weak-insight-card>header small{color:#978b87;white-space:nowrap;background:#f7f2ef;border-radius:12px;padding:4px 7px;font-size:7px}.weak-insight-list{flex-direction:column;gap:11px;display:flex}.weak-insight-row{grid-template-columns:24px minmax(0,1fr) 34px;align-items:center;gap:8px;display:grid}.weak-insight-row>b{color:#aa1919;background:#f8eeee;border-radius:8px;place-items:center;width:23px;height:23px;font:9px Georgia,serif;display:grid}.weak-insight-row>span{min-width:0}.weak-insight-list strong{color:#5b504d;text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.weak-insight-list i{background:#f0ebe9;border-radius:5px;height:5px;margin-top:5px;display:block;overflow:hidden}.weak-insight-list i em{border-radius:inherit;background:linear-gradient(90deg,#b40000,#dc6961);height:100%;display:block}.weak-insight-row>small{color:#b55a50;text-align:right;font-size:8px}.weak-insight-list .weak-insight-empty{color:#7d9189;grid-template-columns:22px 1fr;align-items:center;min-height:112px;font-size:9px;display:grid}.weak-insight-empty svg{color:#4e8b6a;width:17px}.weak-insight-more{border-top:1px solid #f0e9e7;margin-top:1px;overflow:hidden}.weak-insight-more summary{color:#8e7e79;cursor:pointer;justify-content:center;align-items:center;gap:5px;min-height:32px;padding-top:9px;font-size:8px;font-weight:800;list-style:none;display:flex}.weak-insight-more summary::-webkit-details-marker{display:none}.weak-insight-more summary svg{width:13px;transition:transform .2s}.weak-insight-more[open] summary svg{transform:rotate(180deg)}.weak-insight-more-list{scrollbar-width:thin;flex-direction:column;gap:11px;max-height:210px;padding:8px 4px 3px 0;display:flex;overflow-y:auto}.live-status{color:#918888;vertical-align:middle;background:#efeeee;border-radius:10px;align-items:center;gap:5px;margin-left:10px;padding:3px 7px;font-size:8px;display:inline-flex}.live-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.live-status.online{color:#367253;background:#e7f3eb}.attendance-overview{background:#fff;border-radius:14px;margin:0 0 18px;padding:18px 20px;box-shadow:0 5px 18px #45584f0d}.attendance-overview-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.attendance-overview-head>div{align-items:center;gap:10px;display:flex}.attendance-overview-head .stat-icon{color:#a80000;background:#f6e5e5;position:static}.attendance-overview-head h2{margin:0 0 3px;font-size:15px}.attendance-overview-head p{color:#978c8c;margin:0;font-size:8px}.attendance-overview-head input{color:#5e5252;background:#fff;border:1px solid #e2dada;border-radius:8px;padding:8px 10px}.attendance-overview-controls{align-items:center;gap:8px!important;display:flex!important}.attendance-overview-controls .attendance-period-tabs.compact{flex:0 0 132px;width:132px}.attendance-overview-controls .attendance-period-tabs.compact button{height:30px}.attendance-overview-body{grid-template-columns:150px minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.attendance-ring-wrap{border-right:1px solid #efe9e7;flex-direction:column;justify-content:center;align-items:center;padding:8px 12px;display:flex}.attendance-ring{background:conic-gradient(#4f936f 0 var(--attendance-rate),#eee9e7 var(--attendance-rate) 360deg);border-radius:50%;place-items:center;width:96px;height:96px;display:grid}.attendance-ring:before{content:"";background:#fff;border-radius:50%;grid-area:1/1;width:70px;height:70px}.attendance-ring>span{z-index:1;flex-direction:column;grid-area:1/1;align-items:center;display:flex}.attendance-ring strong{color:#315e49;font:19px Georgia,serif}.attendance-ring small{color:#9a8e8a;margin-top:2px;font-size:7px}.attendance-ring-wrap>p{color:#988c88;margin:8px 0 0;font-size:7px}.attendance-ring-wrap>p b{color:#397457}.attendance-ring-wrap>p span{color:#ad5b54}.attendance-overview-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.attendance-overview-grid button{color:#77706e;text-align:left;background:#fcfbfa;border:1px solid #ebe5e5;border-radius:10px;flex-direction:column;align-items:flex-start;min-width:0;min-height:104px;padding:12px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative}.attendance-overview-grid button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #472d2d12}.attendance-overview-grid button:focus-visible{outline-offset:2px;outline:2px solid #b41b1b}.attendance-overview-grid button>span{font-size:9px;font-weight:800}.attendance-overview-grid button>strong{align-items:baseline;gap:3px;margin-top:8px;font:24px Georgia,serif;display:flex}.attendance-overview-grid button>strong small{font:8px sans-serif}.attendance-overview-grid button>em{color:currentColor;opacity:.68;margin-top:auto;font-size:7px;font-style:normal}.attendance-overview-grid button>svg{opacity:.52;width:13px;position:absolute;bottom:9px;right:10px}.attendance-overview-grid .overview-到课{color:#367153;background:#f2faf5;border-color:#c9e2d2}.attendance-overview-grid .overview-请假{color:#966317;background:#fff9ed;border-color:#ead5aa}.attendance-overview-grid .overview-停课{color:#44688f;background:#f3f7fc;border-color:#c7d6e8}.attendance-overview-grid .overview-未签到{color:#77706e}.attendance-overview-grid .overview-退学{color:#8b4853;background:#fbf3f4;border-color:#e4c8ce}.attendance-list-modal{width:min(680px,100%)}.attendance-roster{padding-top:15px}.attendance-roster-summary{background:#f8f5f3;border-radius:10px;align-items:center;gap:8px;margin-bottom:13px;padding:11px 13px;display:flex}.attendance-roster-summary .overview-dot{background:#8c8380;border-radius:50%;flex:none;width:9px;height:9px}.attendance-roster-summary .overview-dot.overview-到课{background:#4e946e}.attendance-roster-summary .overview-dot.overview-请假{background:#ca8c29}.attendance-roster-summary .overview-dot.overview-停课{background:#547da9}.attendance-roster-summary .overview-dot.overview-退学{background:#a34d59}.attendance-roster-summary strong{color:#514644;font-size:10px}.attendance-roster-summary b{color:#8d1111;margin-left:auto;font-size:12px}.attendance-roster-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.attendance-roster-grid article{background:#fff;border:1px solid #eee6e4;border-radius:10px;grid-template-columns:34px minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:9px;min-width:0;padding:10px 11px;display:grid}.attendance-roster-grid article>span{color:#9f1111;background:#f4e5e5;border-radius:10px;place-items:center;width:33px;height:33px;font-size:11px;font-weight:900;display:grid}.attendance-roster-grid article>div{flex-direction:column;gap:3px;min-width:0;display:flex}.attendance-roster-grid article strong{color:#514543;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.attendance-roster-grid article small{color:#9c908c;font-size:8px}.attendance-roster-grid article>em{color:#998b87;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-style:normal;overflow:hidden}.attendance-roster .data-pagination{border-top:1px solid #eee7e5;margin-top:13px;padding:12px 0 0}.attendance-roster-empty{color:#998e8a;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:190px;display:flex}.attendance-roster-empty svg{color:#b9ada9;width:28px}.attendance-roster-empty strong{color:#6f625e;font-size:11px}.attendance-roster-empty span{font-size:8px}.admin-ai-results{background:#fff;border-radius:14px;margin:0 0 18px;padding:18px 20px;box-shadow:0 5px 18px #45584f0d}.admin-ai-results>.records-head{border-bottom:1px solid #eee8e6;min-height:38px;padding:0 0 12px}.admin-ai-results>.records-head>small{color:#9a8e8b;font-size:8px}.admin-ai-result-list{flex-direction:column;display:flex}.admin-ai-result-list article{border-bottom:1px solid #f1ebe9;grid-template-columns:42px minmax(130px,1fr) minmax(180px,1.4fr) 110px;align-items:center;gap:11px;padding:11px 0;display:grid}.admin-ai-result-list article:last-child{border-bottom:0}.admin-ai-score{color:#936017;background:#fff1d8;border-radius:10px;justify-content:center;align-items:baseline;width:40px;height:40px;display:flex}.admin-ai-score.good{color:#347051;background:#e8f4ec}.admin-ai-score.weak{color:#a22a25;background:#f9e5e3}.admin-ai-score strong{align-self:center;font-size:14px}.admin-ai-score small{align-self:center;margin:5px 0 0 1px;font-size:6px}.admin-ai-result-list article>span{flex-direction:column;gap:3px;min-width:0;display:flex}.admin-ai-result-list article>span strong{font-size:9px}.admin-ai-result-list article>span small{color:#998d8a;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.admin-ai-wrong strong{color:#6b5d5a}.admin-ai-result-list time{color:#9b908d;text-align:right;font-size:7px}.admin-mastery-details{background:#fdfbfa;border:1px solid #eee5e2;border-radius:10px;grid-column:1/-1;margin:1px 0 5px 53px;overflow:hidden}.admin-mastery-details summary{color:#655956;cursor:pointer;grid-template-columns:auto auto minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:38px;padding:8px 11px;list-style:none;display:grid}.admin-mastery-details summary::-webkit-details-marker{display:none}.admin-mastery-details summary>span{font-size:8px;font-weight:800}.admin-mastery-details summary>small{color:#968a87;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.admin-mastery-details summary>svg{width:14px;transition:transform .2s}.admin-mastery-details[open] summary>svg{transform:rotate(180deg)}.admin-mastery-details>div{border-top:1px solid #eee7e5;padding:0 11px 11px}.admin-mastery-details>div>p{color:#756966;margin:9px 0;font-size:8px}.admin-mastery-table-wrap{overflow-x:auto}.admin-mastery-details table{border-collapse:collapse;width:100%;min-width:760px}.admin-mastery-details th{color:#948986;text-align:left;background:#f7f3f1;padding:7px 8px;font-size:7px}.admin-mastery-details td{color:#706461;border-top:1px solid #eee8e6;padding:8px;font-size:7px;line-height:1.5}.admin-mastery-details td:first-child{min-width:170px}.admin-mastery-details td:last-child{min-width:260px}.admin-mastery-details footer{flex-wrap:wrap;align-items:center;gap:6px;padding-top:9px;display:flex}.admin-mastery-details footer>strong{color:#645855;margin-right:3px;font-size:8px}.admin-mastery-details footer>span{color:#912a25;background:#fff0ed;border-radius:7px;align-items:center;gap:4px;padding:4px 6px;font-size:7px;display:inline-flex}.admin-mastery-details footer b{color:#fff;background:#a80000;border-radius:4px;place-items:center;width:14px;height:14px;font-size:6px;display:grid}.progress-alert-row{background:#fffaf0}.progress-alert-tag{color:#98600a;vertical-align:middle;background:#fff0c9;border-radius:8px;margin-left:5px;padding:2px 5px;font-size:7px;font-style:normal;display:inline-flex}.ai-analysis-page{min-width:0}.ai-analysis-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.ai-analysis-header h1{margin:5px 0 6px}.ai-analysis-header>div>p:last-child{color:#8e8582;margin:0;font-size:10px}.ai-analysis-header .secondary svg{width:15px}.ai-analysis-filters{background:#fff;border:1px solid #eee5e2;border-radius:14px;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:10px;padding:14px;display:grid;box-shadow:0 6px 18px #452c2c0a}.ai-analysis-filters label{flex-direction:column;gap:5px;min-width:0;display:flex}.ai-analysis-filters label span{color:#8c807d;font-size:8px;font-weight:800}.ai-analysis-filters select{color:#514744;background:#fff;border:1px solid #e3dad7;border-radius:9px;outline:0;width:100%;min-height:39px;padding:0 30px 0 10px;font-size:10px}.ai-analysis-filters select:focus{border-color:#b63a36;box-shadow:0 0 0 3px #f8e8e7}.ai-analysis-filters>button{color:#746966;background:#faf8f7;border:1px solid #e3dad7;border-radius:9px;min-height:39px;padding:0 15px;font-size:9px;font-weight:800}.ai-analysis-freshness{color:#a09592;text-align:right;margin:7px 2px 12px;font-size:8px}.ai-model-console{background:#fff;border:1px solid #eadfdd;border-radius:13px;grid-template-columns:42px minmax(180px,1fr) minmax(150px,.72fr) minmax(170px,.85fr) auto auto;align-items:center;gap:10px;margin-bottom:12px;padding:13px 14px;display:grid;box-shadow:0 6px 18px #452c2c0a}.ai-model-console>span{color:#a80000;background:#f3e2e2;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.ai-model-console>span svg{width:18px}.ai-model-console>div{min-width:0}.ai-model-console>div strong{font-size:10px;display:block}.ai-model-console>div p{color:#948986;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:8px;overflow:hidden}.ai-model-console>label{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-model-console>label span{color:#8f8380;font-size:7px;font-weight:800}.ai-model-console input,.ai-model-console select{background:#fff;border:1px solid #e1d7d4;border-radius:8px;outline:0;width:100%;min-height:37px;padding:0 10px}.ai-model-console input:focus,.ai-model-console select:focus{border-color:#b63a36;box-shadow:0 0 0 3px #f8e8e7}.ai-model-console .ai-model-picker{gap:5px}.ai-model-console .ai-model-picker input{margin-top:2px}.ai-model-console button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:37px;padding:8px 11px;font-size:8px;display:inline-flex}.ai-model-console button svg{width:13px}.ai-analysis-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.ai-analysis-kpis article{background:#fff;border-radius:13px;align-items:center;gap:10px;min-width:0;padding:14px;display:flex;box-shadow:0 7px 22px #452c2c0d}.ai-analysis-kpis article>span{color:#a80000;background:#f5e3e3;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.ai-analysis-kpis article:nth-child(2)>span{color:#4b775f;background:#edf3f0}.ai-analysis-kpis article:nth-child(3)>span{color:#536b91;background:#eef1f7}.ai-analysis-kpis article:nth-child(5)>span{color:#9a6b1b;background:#fff3dc}.ai-analysis-kpis article.attention{box-shadow:inset 0 0 0 1px #efc7c3,0 7px 22px #6e221c12}.ai-analysis-kpis article>span svg{width:18px}.ai-analysis-kpis article>div{flex-direction:column;min-width:0;display:flex}.ai-analysis-kpis small{color:#8f8481;font-size:8px}.ai-analysis-kpis strong{margin:2px 0;font-size:18px;line-height:1.1}.ai-analysis-kpis strong em{color:#9a8f8c;margin-left:2px;font-size:7px;font-style:normal}.ai-analysis-kpis p{color:#aaa09d;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:7px;overflow:hidden}.ai-analysis-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;margin-bottom:14px;display:grid}.ai-chart-card{background:#fff;border-radius:14px;min-width:0;min-height:0;padding:17px;box-shadow:0 7px 22px #452c2c0d}.ai-chart-card>header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.ai-chart-card>header h2{margin:0 0 4px;font-size:13px}.ai-chart-card>header p{color:#9b908d;margin:0;font-size:8px}.ai-chart-card>header>svg{color:#a80000;width:20px}.ai-chart-grade{flex-direction:column;gap:3px;min-width:108px;margin-left:auto;display:flex}.ai-chart-grade>span{color:#9b908d;font-size:7px}.ai-chart-grade select{color:#625653;background:#fff;border:1px solid #e4dad7;border-radius:8px;outline:0;width:100%;min-height:30px;padding:0 26px 0 8px;font-size:8px}.ai-chart-grade select:focus{border-color:#ba4843;box-shadow:0 0 0 2px #f8e7e5}.ai-score-donut-wrap{flex-direction:column;justify-content:flex-start;align-items:center;gap:18px;min-height:232px;padding:4px 6px 0;display:flex}.ai-score-donut{aspect-ratio:1;border-radius:50%;flex:none;place-items:center;width:min(164px,100%);display:grid;box-shadow:inset 0 0 0 1px #5c36320a,0 8px 24px #56322f14}.ai-score-donut>div{aspect-ratio:1;background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:58%;display:flex;box-shadow:0 2px 10px #4d2d2b14}.ai-score-donut strong{color:#463b38;font:24px/1 Georgia,serif}.ai-score-donut span{color:#9b908d;margin-top:4px;font-size:7px}.ai-score-legend{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(540px,100%);min-width:0;display:grid}.ai-score-legend>div{background:#fcfaf9;border:1px solid #f0e8e5;border-radius:9px;grid-template-columns:9px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:8px 9px;display:grid}.ai-score-legend>div>i{border-radius:3px;width:9px;height:9px}.ai-score-legend>div>span{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-width:0;display:flex}.ai-score-legend strong{color:#5b4f4c;font-size:8px}.ai-score-legend small{color:#948986;white-space:nowrap;font-size:7px}.ai-bars-shell{min-width:0}.ai-horizontal-bars{flex-direction:column;gap:12px;display:flex}.ai-horizontal-bars.scrollable{overscroll-behavior:contain;scrollbar-color:#c85a55 #f3eeec;scrollbar-width:thin;max-height:222px;padding:0 10px 2px 0;overflow-y:auto}.ai-horizontal-bars.scrollable::-webkit-scrollbar{width:7px}.ai-horizontal-bars.scrollable::-webkit-scrollbar-track{background:#f3eeec;border-radius:8px}.ai-horizontal-bars.scrollable::-webkit-scrollbar-thumb{background:#c85a55;border:2px solid #f3eeec;border-radius:8px}.ai-horizontal-bars.scrollable:focus{outline-offset:4px;outline:2px solid #edc8c5}.ai-horizontal-bars>div>header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.ai-horizontal-bars strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.ai-horizontal-bars header span{color:#8d2a26;flex:none;font-size:9px;font-weight:900}.ai-horizontal-bars>div>div{background:#f1ecea;border-radius:5px;width:min(86%,640px);height:8px;overflow:hidden}.ai-horizontal-bars i{border-radius:inherit;background:linear-gradient(90deg,#a80000,#d1625c);height:100%;display:block}.ai-horizontal-bars>div>footer{justify-content:space-between;align-items:center;gap:8px;min-height:21px;margin-top:4px;display:flex}.ai-horizontal-bars small{color:#a09693;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:8px;display:block;overflow:hidden}.ai-bars-hint{color:#a09491;text-align:center;margin:9px 0 0;font-size:8px}.ai-analysis-empty{color:#9c918e;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:150px;font-size:9px;display:flex}.ai-analysis-empty svg{color:#bdafab;width:25px}.ai-risk-table{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 7px 22px #452c2c0d}.ai-result-manager{background:#fff;border-radius:14px;margin-bottom:14px;overflow:hidden;box-shadow:0 7px 22px #452c2c0d}.ai-result-manager>header{border-bottom:1px solid #eee7e4;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px;display:flex}.ai-result-manager h2{margin:0 0 4px;font-size:13px}.ai-result-manager header p{color:#9a8f8c;margin:0;font-size:8px}.ai-result-manager header button{flex:none;align-items:center;gap:5px;display:inline-flex}.ai-result-manager header button svg{width:14px}.ai-result-manager table{min-width:920px}.ai-result-manager td>strong,.ai-result-manager td>small{display:block}.ai-result-manager td>small{color:#9b918e;margin-top:3px;font-size:7px}.ai-scope-summary{flex-direction:column;gap:3px;min-width:150px;max-width:260px;line-height:1.35;display:flex}.ai-scope-summary strong{color:#574c49;font-size:8px}.ai-scope-summary small{color:#948986;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.ai-scope-summary.muted{color:#9b918e;font-size:8px}.ai-result-actions{gap:5px;display:flex}.ai-result-actions button{color:#6e6260;background:#fff;border:1px solid #e5dcda;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.ai-result-actions button.view{color:#a80000;background:#fff8f7;border-color:#eed2d0}.ai-result-actions button.delete{color:#b12929}.ai-result-actions svg{width:13px}.quiz-result-modal{width:min(720px,100%)}.quiz-result-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.quiz-result-form label{min-width:0}.quiz-result-form label.wide{grid-column:1/-1}.quiz-result-form label>span{color:#675b59;margin-bottom:6px;font-size:8px;font-weight:800;display:block}.quiz-result-form input,.quiz-result-form select,.quiz-result-form textarea{color:#514744;resize:vertical;background:#fff;border:1px solid #dfd6d4;border-radius:8px;outline:0;width:100%;min-height:39px;padding:8px 10px}.quiz-result-form input:focus,.quiz-result-form select:focus,.quiz-result-form textarea:focus{border-color:#b64747;box-shadow:0 0 0 3px #f8e8e7}.quiz-detail-modal{width:min(980px,100%);height:min(900px,100dvh - 28px);max-height:calc(100dvh - 28px)}.quiz-detail-modal>.modal-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex:1 1 0;min-height:0;overflow:hidden auto}.quiz-detail-scroll{scrollbar-color:#c85a55 #f3eeec;scrollbar-width:thin;background:#faf8f7;flex-direction:column;gap:13px;padding-bottom:28px;display:flex}.quiz-detail-scroll>*{flex:none}.quiz-detail-scroll::-webkit-scrollbar{width:8px}.quiz-detail-scroll::-webkit-scrollbar-track{background:#f3eeec}.quiz-detail-scroll::-webkit-scrollbar-thumb{background:#c85a55;border:2px solid #f3eeec;border-radius:8px}.quiz-detail-hero{background:#fff;border:1px solid #eee4e1;border-radius:13px;grid-template-columns:150px minmax(0,1fr);display:grid;overflow:hidden}.quiz-detail-hero>div{background:linear-gradient(145deg,#fff4f3,#fff);flex-direction:column;justify-content:center;align-items:center;min-height:108px;padding:18px;display:flex;overflow:visible}.quiz-detail-hero>div small{color:#9a8c89;font-size:8px}.quiz-detail-hero>div strong{color:#a80000;margin-top:4px;padding-bottom:3px;font:34px/1 Georgia,serif}.quiz-detail-hero>div em{margin-left:3px;font:8px sans-serif}.quiz-detail-hero dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.quiz-detail-hero dl>div{border-bottom:1px solid #f1eae8;border-left:1px solid #f1eae8;padding:14px 16px}.quiz-detail-hero dl>div:nth-last-child(-n+2){border-bottom:0}.quiz-detail-hero dt{color:#a09390;margin-bottom:4px;font-size:7px}.quiz-detail-hero dd{color:#514643;margin:0;font-size:9px;font-weight:800}.quiz-detail-scopes,.quiz-detail-note{background:#fff;border:1px solid #eee4e1;border-radius:12px;padding:13px 15px}.quiz-detail-scopes>strong,.quiz-detail-note>strong{color:#564b48;font-size:9px}.quiz-detail-scopes>div{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.quiz-detail-scopes span{color:#952d29;background:#f9eceb;border-radius:7px;padding:5px 8px;font-size:8px;font-weight:800}.quiz-detail-note p{color:#706461;margin:7px 0 0;font-size:8px;line-height:1.65}.quiz-question-details{background:#fff;border:1px solid #eee4e1;border-radius:13px;min-width:0;overflow:hidden}.quiz-question-details>header{border-bottom:1px solid #eee8e6;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px;display:flex}.quiz-question-details>header>div{flex-direction:column;gap:3px;display:flex}.quiz-question-details>header strong{color:#493e3b;font-size:10px}.quiz-question-details>header small{color:#a09592;font-size:7px}.quiz-question-details>header>span{color:#7e706c;background:#f4efed;border-radius:7px;padding:4px 7px;font-size:7px;font-weight:800}.quiz-question-details>article{border-bottom:1px solid #f1ebe9;min-width:0;padding:14px 15px;position:relative;box-shadow:inset 3px 0 #d49734}.quiz-question-details>article:last-child{border-bottom:0}.quiz-question-details>article.correct{box-shadow:inset 3px 0 #4c8c68}.quiz-question-details>article.wrong{box-shadow:inset 3px 0 #c23e39}.quiz-question-details>article>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.quiz-question-details>article>header span{color:#5b4f4c;align-items:center;gap:5px;font-size:8px;font-weight:900;display:inline-flex}.quiz-question-details>article>header span svg{color:#ad302c;width:13px}.quiz-question-details>article.correct>header span svg{color:#4b8665}.quiz-question-details>article>header em{color:#8e403c;text-overflow:ellipsis;white-space:nowrap;background:#f8efed;border-radius:7px;max-width:60%;padding:4px 7px;font-size:7px;font-style:normal;font-weight:800;overflow:hidden}.quiz-detail-stem{color:#433936;overflow-wrap:anywhere;margin:0 0 11px;font-size:11px;font-weight:700;line-height:1.75}.quiz-detail-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 10px;display:grid}.quiz-detail-options>div{color:#544946;overflow-wrap:anywhere;background:#fff;border:1px solid #eee6e3;border-radius:9px;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:8px;min-width:0;padding:10px 11px;font-size:10px;line-height:1.65;display:grid}.quiz-detail-options b{color:#736663;background:#f3eeec;border-radius:7px;place-items:center;width:24px;height:24px;font-size:8px;display:grid}.quiz-detail-options .math-text{white-space:normal;overflow-wrap:anywhere;min-width:0}.quiz-detail-options em{color:#8d807c;white-space:nowrap;background:#f5efed;border-radius:6px;align-self:center;padding:3px 5px;font-size:7px;font-style:normal}.quiz-detail-options>div.correct-option{background:#f3faf6;border-color:#bcdcca}.quiz-detail-options>div.correct-option b,.quiz-detail-options>div.correct-option em{color:#377153;background:#ddefe4}.quiz-detail-options>div.selected-wrong{background:#fff6f5;border-color:#e8b9b6}.quiz-detail-options>div.selected-wrong b,.quiz-detail-options>div.selected-wrong em{color:#a52c27;background:#f5dedd}.quiz-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quiz-answer-grid>div{color:#554a47;background:#faf7f6;border-radius:8px;min-width:0;padding:9px 10px;font-size:8px;line-height:1.6}.quiz-answer-grid small{color:#a09693;margin-bottom:4px;font-size:7px;display:block}.quiz-question-details details{color:#6e615e;background:#fbf8f7;border-radius:8px;margin-top:8px;padding:8px 10px;font-size:8px}.quiz-question-details summary{color:#8f2c28;cursor:pointer;font-weight:800}.quiz-question-details details p{margin:8px 0 0;line-height:1.7}.quiz-question-details article>footer{color:#a09693;margin-top:8px;font-size:7px}.quiz-detail-pagination{background:#fcfaf9;border-top:1px solid #eee8e6;justify-content:center;align-items:center;gap:10px;padding:12px 15px;display:flex}.quiz-detail-pagination button{color:#6b5e5b;cursor:pointer;background:#fff;border:1px solid #e4d9d6;border-radius:8px;min-width:76px;min-height:34px;font-size:8px;font-weight:800}.quiz-detail-pagination button:not(:disabled):hover{color:#a80000;border-color:#bd514c}.quiz-detail-pagination button:disabled{opacity:.42;cursor:not-allowed}.quiz-detail-pagination span{color:#7f716e;text-align:center;min-width:90px;font-size:8px;font-weight:800}.quiz-detail-empty{color:#8f8380;text-align:center;background:#fff;border:1px dashed #e4d9d6;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:150px;padding:25px;display:flex}.quiz-detail-empty svg{color:#bcb0ad;width:24px}.quiz-detail-empty strong{color:#655956;font-size:9px}.quiz-detail-empty p{max-width:480px;margin:0;font-size:8px;line-height:1.6}.ai-risk-table>header{border-bottom:1px solid #eee7e4;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px;display:flex}.ai-risk-table h2{margin:0 0 4px;font-size:13px}.ai-risk-table header p{color:#9a8f8c;margin:0;font-size:8px}.ai-risk-table header>span{color:#776b68;background:#f4efed;border-radius:9px;padding:5px 8px;font-size:8px;font-weight:800}.ai-risk-table table{border-collapse:collapse;width:100%;min-width:980px}.ai-risk-table th{color:#958a87;text-align:left;background:#faf8f7;padding:11px 13px;font-size:9px;font-weight:800}.ai-risk-table td{color:#665b58;border-top:1px solid #f0eae8;padding:13px;font-size:10px;line-height:1.55}.ai-risk-table td strong{color:#4f4542;font-size:11px}.ai-risk-table td.risk-student-name{min-width:82px}.risk-student-name strong{white-space:nowrap;word-break:keep-all;display:inline-block}.ai-risk-table td small{color:#a59a97;margin-top:2px;font-size:8px;display:block}.risk-subjects{flex-wrap:wrap;gap:5px;display:flex}.risk-subjects span{color:#765f5a;white-space:nowrap;background:#faf7f5;border:1px solid #eadfdb;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.risk-review-tags{flex-wrap:wrap;gap:5px;max-width:520px;display:flex}.risk-review-tags span{color:#765f5a;text-overflow:ellipsis;white-space:nowrap;background:#faf7f5;border:1px solid #eadfdb;border-radius:999px;max-width:100%;padding:4px 8px;font-size:9px;font-weight:750;line-height:1.25;display:inline-flex;overflow:hidden}.risk-review-tags em{color:#9b908d;white-space:nowrap;font-style:normal}.risk-score{color:#95631a;background:#fff2dc;border-radius:8px;padding:4px 7px;font-style:normal;font-weight:900;display:inline-flex}.risk-score.weak,.low-count{color:#a22924;background:#f9e4e2}.risk-score.good{color:#367454;background:#e8f4ec}.low-count{border-radius:7px;padding:3px 6px;display:inline-flex}.engagement-header{align-items:flex-start}.ranking-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.ranking-stats article{background:#fff;border-radius:14px;align-items:center;gap:13px;padding:17px;display:flex;box-shadow:0 8px 25px #452c2c0f}.ranking-stats article>span{color:#a80000;background:#f6e4e4;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.ranking-stats article:nth-child(2)>span{color:#95671b;background:#f8efd8}.ranking-stats article:nth-child(3)>span{color:#47735a;background:#e8f1ec}.ranking-stats svg{width:20px}.ranking-stats article>div{grid-template-columns:auto auto;align-items:end;gap:3px 8px;display:grid}.ranking-stats small{color:#9a8e8e;grid-column:1/-1;font-size:8px}.ranking-stats strong{color:#443939;font-size:15px}.ranking-stats em{color:#9a8e8e;font-size:8px;font-style:normal}.ranking-card,.carousel-manager{background:#fff;border-radius:15px;margin-bottom:18px;overflow:hidden;box-shadow:0 10px 32px #452c2c0f}.ranking-head,.carousel-manager-head{border-bottom:1px solid #eee8e6;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.ranking-head h2,.carousel-manager-head h2{margin:0 0 4px;font-size:15px}.ranking-head p,.carousel-manager-head span{color:#968a88;margin:0;font-size:8px}.ranking-head>div:last-child{gap:8px;display:flex}.ranking-head select,.ranking-head label{background:#fff;border:1px solid #e2dada;border-radius:8px;min-height:34px}.ranking-head select{color:#685c5a;padding:0 9px;font-size:9px}.ranking-head label{align-items:center;gap:6px;padding:0 9px;display:flex}.ranking-head label svg{color:#8c9a96;width:13px}.ranking-head input{border:0;outline:0;width:210px;font-size:9px}.ranking-table-wrap{overflow-x:auto}.ranking-table{border-collapse:collapse;width:100%;min-width:920px}.ranking-table th{color:#958986;text-align:left;background:#faf8f7;padding:10px 12px;font-size:8px}.ranking-table td{color:#665a58;border-top:1px solid #f0eaea;padding:11px 12px;font-size:9px}.rank-number{background:#eeeae8;border-radius:8px;place-items:center;width:27px;height:27px;font-size:9px;font-weight:900;display:grid}.rank-number.rank-1{color:#956613;background:#f5e3ad}.rank-number.rank-2{color:#647078;background:#e4e8e9}.rank-number.rank-3{color:#945b39;background:#efdad0}.rank-student{align-items:center;gap:8px;display:flex}.rank-student>b{color:#a80000;background:#f6e3e3;border-radius:9px;place-items:center;width:29px;height:29px;display:grid}.rank-student>span{flex-direction:column;gap:2px;display:flex}.rank-student strong{font-size:9px}.rank-student small{color:#9d9290;font-size:7px}.average-score{color:#a80000;font-size:13px}.score-input,.comment-input{border:1px solid #e3dada;border-radius:7px;outline:0;padding:7px 8px;font-size:8px}.score-input{width:68px}.comment-input{width:160px}.score-input:focus,.comment-input:focus{border-color:#b64747;box-shadow:0 0 0 2px #f7e8e8}.rank-actions{gap:5px;display:flex}.rank-actions button{align-items:center;gap:4px;min-height:30px;padding:6px 8px;font-size:8px;display:inline-flex}.rank-actions svg{width:12px}.carousel-manager-head .primary{flex:none}.carousel-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;display:grid}.carousel-admin-grid article{background:#fdfbfa;border:1px solid #e9e1df;border-radius:12px;overflow:hidden}.carousel-admin-grid article.inactive{opacity:.62}.carousel-admin-photo{aspect-ratio:16/9;background:#ede8e6;position:relative;overflow:hidden}.carousel-admin-photo img{object-fit:cover;width:100%;height:100%}.carousel-admin-photo span{color:#fff;background:#241717b8;border-radius:10px;align-items:center;gap:4px;padding:4px 7px;font-size:7px;display:inline-flex;position:absolute;top:8px;left:8px}.carousel-admin-photo svg{width:11px}.carousel-admin-copy{flex-direction:column;gap:4px;min-height:76px;padding:11px 12px;display:flex}.carousel-admin-copy strong{font-size:10px}.carousel-admin-copy p{color:#948986;margin:0;font-size:8px;line-height:1.5}.carousel-admin-copy small{color:#a59a97;margin-top:auto;font-size:7px}.carousel-admin-actions{gap:5px;padding:0 12px 12px;display:flex}.carousel-admin-actions button{color:#6e6260;background:#fff;border:1px solid #e5dcda;border-radius:7px;align-items:center;gap:3px;padding:6px 7px;font-size:8px;display:inline-flex}.carousel-admin-actions button.delete{color:#b12929;margin-left:auto}.carousel-admin-actions svg{width:11px}.carousel-empty{margin:18px}.showcase-modal{width:min(700px,92vw)}.showcase-form{grid-template-columns:minmax(220px,.8fr) 1.2fr;gap:16px;display:grid}.showcase-upload{cursor:pointer;background:#faf6f5;border:1px dashed #d8c9c6;border-radius:12px;min-height:220px;overflow:hidden}.showcase-upload>input{display:none}.showcase-upload>img{object-fit:cover;width:100%;height:100%;min-height:220px}.showcase-upload>span{color:#988b88;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:100%;min-height:220px;display:flex}.showcase-upload svg{color:#a80000;width:26px}.showcase-upload strong{color:#5c504e;font-size:10px}.showcase-upload small{font-size:8px}.showcase-fields{grid-template-columns:1fr 100px;align-content:start;gap:12px;display:grid}.showcase-fields label>span{color:#675b59;margin-bottom:6px;font-size:8px;font-weight:800;display:block}.showcase-fields input:not([type=checkbox]),.showcase-fields textarea{resize:vertical;border:1px solid #dfd6d4;border-radius:8px;outline:0;width:100%;padding:9px 10px}.showcase-fields .wide{grid-column:1/-1}.showcase-active{cursor:pointer;background:#f8f4f2;border-radius:8px;align-items:center;gap:7px;padding:10px;display:flex}.showcase-active>input{display:none}.showcase-active>i{color:#0000;background:#fff;border:1px solid #dacdca;border-radius:5px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;line-height:0;display:flex}.showcase-active>input:checked+i{color:#fff;background:#a80000;border-color:#a80000}.showcase-active svg{flex:0 0 11px;width:11px;height:11px;margin:0;display:block}.showcase-active>span{margin:0!important}@media (width<=900px){.admin-nav{flex-wrap:nowrap;gap:10px;min-width:0;padding:9px 14px;overflow:hidden}.admin-nav .brand{flex:0 0 145px;min-width:145px}.admin-nav .brand>div:last-child{min-width:0}.admin-nav .brand strong,.admin-nav .brand span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-nav .brand strong{font-size:17px}.admin-nav nav{overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:auto;gap:3px;min-width:0;margin:0;display:flex;overflow-x:auto}.admin-nav nav::-webkit-scrollbar{display:none}.admin-nav nav a,.admin-nav nav button{white-space:nowrap;flex:none;gap:6px;width:auto;min-width:max-content;margin:0;padding:10px 9px;font-size:10px;line-height:1}.admin-account-panel{border:0;flex:none;align-items:center;gap:4px;margin:0 0 0 7px;padding:0;display:flex}.admin-user{background:#8e1717;border-radius:9px;justify-content:center;align-items:center;width:42px;height:48px;padding:0;display:inline-flex!important}.admin-user>div{flex:0 0 30px;width:30px;height:30px}.admin-user>span,.admin-user>svg{display:none}.admin-sidebar-logout{background:#a82b2b;border:0;width:42px;height:48px;min-height:48px;padding:0}.admin-sidebar-logout span{display:none}.bank-quiz-builder{grid-template-columns:1fr 1fr}.bank-quiz-builder .ai-builder-title{grid-column:1/-1}.dashboard-overview{grid-template-columns:1fr}.ai-analysis-filters{grid-template-columns:1fr 1fr}.ai-analysis-filters>button{grid-column:1/-1}.ai-analysis-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-analysis-kpis article:nth-child(4),.ai-analysis-kpis article:nth-child(5){grid-column:auto}.ai-score-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.manager-layout{grid-template-columns:minmax(0,1fr);width:100%}.academic-path,.academic-path.high{grid-template-columns:1fr 1fr}.academic-path label:last-child{grid-column:1/-1}.subject-sidebar{overflow:hidden}.subject-list{overscroll-behavior-inline:contain;flex-direction:row;width:100%;overflow-x:auto}.subject-list>button{flex:0 0 160px;width:160px;min-width:160px}.people-list-head{flex-direction:column;align-items:flex-start}.people-head-actions{justify-content:space-between;width:100%}.admin-cards article{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:14px 4px}.admin-account-meta{grid-column:1/-1}.admin-row-actions{grid-column:1/-1;justify-content:flex-start}.attendance-layout{grid-template-columns:1fr}.attendance-editor{min-height:260px}.student-access-page>main{grid-template-rows:auto;grid-template-columns:1fr;width:min(680px,92vw);margin-top:18px}.access-intro{justify-self:center;max-width:600px;padding:18px 5px 0}.access-intro,.student-access-card,.access-showcase-column{grid-area:auto/1}.access-showcase-column{order:2;place-self:auto center;gap:22px;width:100%;max-width:600px;display:flex}.student-access-card,.public-leaderboard,.learning-carousel,.carousel-placeholder{width:100%;max-width:600px}.access-intro{order:0}.student-access-card{z-index:auto;order:1;justify-self:center;position:relative}.access-showcase-column>.learning-carousel,.access-showcase-column>.carousel-placeholder,.access-showcase-column>.public-leaderboard{z-index:auto;flex:none;margin:0;position:relative}.access-intro>img{display:none}.carousel-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-stats{grid-template-columns:1fr 1fr}.ranking-stats article:last-child{grid-column:1/-1}.assignment-grid,.portal-quick-actions,.student-profile-grid{grid-template-columns:1fr}.ai-quiz-builder{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-builder-title{grid-column:1/-1}}@media (width<=620px){.bank-quiz-builder{grid-template-columns:1fr 1fr}.dashboard-kpis{grid-template-columns:1fr 1fr;gap:9px}.dashboard-kpi{min-height:122px;padding:16px}.dashboard-kpi>footer{left:16px}.weak-insight-card{padding:16px}.attendance-overview-head{flex-direction:column;align-items:stretch}.attendance-overview-controls{flex-wrap:wrap;width:100%}.attendance-overview-controls .attendance-period-tabs.compact{flex:1;min-width:138px}.attendance-overview-controls input{flex:1;min-width:150px}.attendance-overview-body{grid-template-columns:1fr}.attendance-ring-wrap{border-bottom:1px solid #efe9e7;border-right:0;padding-bottom:15px}.attendance-overview-grid{grid-template-columns:1fr 1fr}.attendance-overview-grid button{min-height:96px}.attendance-roster-grid{grid-template-columns:1fr}.attendance-roster-grid article{grid-template-columns:34px minmax(0,1fr) minmax(0,.7fr)}.admin-ai-results{padding:14px}.admin-ai-results>.records-head{flex-direction:column;align-items:flex-start}.admin-ai-result-list article{grid-template-columns:38px minmax(0,1fr)}.admin-ai-wrong,.admin-ai-result-list time{text-align:left;grid-column:2}.admin-mastery-details{grid-column:1/-1;margin-left:0}.admin-mastery-details summary{grid-template-columns:auto auto 16px}.admin-mastery-details summary>small{white-space:normal;grid-area:2/1/auto/-1}.questionnaire-header{align-items:flex-start}.ai-admin-settings{grid-template-columns:40px minmax(0,1fr) auto}.ai-admin-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.ai-admin-actions button{width:100%}.academic-path{grid-template-columns:1fr;padding:12px}.academic-path.high{grid-template-columns:1fr}.academic-path label:last-child{grid-column:1}.admin-nav{height:68px;padding:7px max(9px,env(safe-area-inset-right)) 7px max(9px,env(safe-area-inset-left));gap:0;overflow:hidden}.admin-nav .brand{flex:0 0 38px;min-width:38px}.admin-nav .brand>div:last-child{display:none}.admin-nav .brand-logo{border-radius:10px;width:38px;height:38px}.admin-nav nav{overscroll-behavior-inline:contain;scrollbar-width:none;flex:1;gap:3px;min-width:0;margin-left:7px;display:flex;overflow-x:auto}.admin-nav nav::-webkit-scrollbar{display:none}.admin-nav nav a,.admin-nav nav button{text-align:center;white-space:nowrap;border-radius:8px;flex-direction:column;flex:0 0 44px;justify-content:center;align-items:center;gap:2px;width:44px;min-width:44px;height:48px;margin:0;padding:5px 2px;font-size:8px;line-height:1}.admin-nav nav a svg,.admin-nav nav button svg{width:14px;height:14px}.admin-mobile-logout{color:#fff;background:#a82b2b;border:0;border-radius:8px;flex:0 0 38px;width:38px;height:48px;margin-left:4px;display:inline-flex}.admin-mobile-logout svg{width:16px;height:16px}.ai-analysis-header{flex-direction:column}.ai-analysis-header .secondary{width:100%}.ai-analysis-filters{grid-template-columns:1fr 1fr}.ai-analysis-filters>button{grid-column:1/-1}.ai-analysis-kpis{grid-template-columns:1fr 1fr}.ai-analysis-kpis article:last-child{grid-column:1/-1}.ai-analysis-grid{grid-template-columns:1fr}.ai-model-console{grid-template-columns:40px minmax(0,1fr)}.ai-model-console>label,.ai-model-console>button{grid-column:1/-1;width:100%}.ai-result-manager>header{flex-direction:column}.ai-result-manager>header button{justify-content:center;width:100%}.quiz-result-form{grid-template-columns:1fr}.quiz-result-form label.wide{grid-column:auto}.quiz-detail-hero{grid-template-columns:1fr}.quiz-detail-hero>div{min-height:100px}.quiz-detail-hero dl>div:nth-child(odd){border-left:0}.quiz-question-details>article>header{flex-direction:column;align-items:flex-start;gap:6px}.quiz-question-details>article>header em{white-space:normal;max-width:100%}.quiz-detail-options,.quiz-answer-grid{grid-template-columns:1fr}.ai-chart-card{min-height:0}.ai-chart-card>header{flex-wrap:wrap}.ai-chart-grade{min-width:120px}.ai-score-donut-wrap{gap:15px;min-height:0}.ai-score-donut{width:148px}.ai-score-legend{width:min(320px,100%)}.ai-horizontal-bars>div>div{width:92%}.brand strong{font-size:15px}.brand span{font-size:8px}.bole-emblem{display:none}.unit-form{grid-template-columns:1fr}.unit-form .chapters-input,.unit-form .primary{grid-area:auto/1}.editor-term{grid-template-columns:1fr}.curriculum-editor{padding:16px}.editor-title{align-items:flex-start;gap:10px}.editor-title>div:last-child{flex-direction:column;align-items:stretch}.focused-unit-form{grid-template-columns:1fr}.focused-unit-form .chapters-input,.focused-unit-form .primary{grid-area:auto/1}.catalog-note{flex-direction:column;align-items:flex-start}.chapter-check-grid{grid-template-columns:1fr}.personnel-header{align-items:flex-start;gap:10px}.role-badge{white-space:nowrap;padding:6px 8px}.people-form-grid{grid-template-columns:1fr}.people-form-grid label.wide,.people-form-grid .wide{grid-column:1}.people-list-head{flex-direction:column;align-items:flex-start}.people-head-actions{flex-direction:column;align-items:stretch;width:100%}.people-tools{grid-template-columns:1fr 1fr;width:100%;display:grid}.people-tools>select{width:100%}.people-tools .search{grid-column:1/-1}.people-tools .search input{width:100%}.people-tools .secondary{grid-column:1/-1;justify-content:center}.admin-filter-bar{padding:12px 16px}.admin-filter-tools{grid-template-columns:1fr 1fr;display:grid}.admin-filter-tools .search{grid-column:1/-1}.admin-filter-tools .admin-filter-submit,.admin-filter-tools .admin-filter-reset{grid-column:auto}.add-person{justify-content:center;width:100%}.modal-backdrop{align-items:end;padding:0}.people-modal,.people-modal.student-modal,.people-modal.attendance-modal{border-radius:16px 16px 0 0;width:100%;max-height:94dvh}.people-modal.student-view-modal{height:94dvh}.people-modal>header,.modal-scroll,.modal-actions{padding-left:16px;padding-right:16px}.student-view-actions>button{white-space:nowrap;flex:calc(33.333% - 6px);justify-content:center;min-height:42px;padding-left:9px;padding-right:9px}.learning-subject-row{grid-template-columns:26px 1fr 28px;align-items:center}.learning-subject-row label,.learning-subject-row small{grid-column:2}.learning-subject-row .subject-order{grid-area:1/1/5}.learning-subject-row .remove-subject{grid-area:1/3/5}.delivery-actions{grid-template-columns:1fr}.questionnaire-launch-group{padding:9px}.questionnaire-launch-group>header{align-items:flex-start}.ranking-stats{grid-template-columns:1fr}.ranking-stats article:last-child{grid-column:auto}.ranking-head,.carousel-manager-head{flex-direction:column;align-items:stretch}.ranking-head>div:last-child{grid-template-columns:105px 1fr;display:grid}.ranking-head input{width:100%}.carousel-admin-grid{grid-template-columns:1fr;padding:12px}.showcase-form{grid-template-columns:1fr}.showcase-upload,.showcase-upload>span,.showcase-upload>img{min-height:180px}.public-leaderboard{width:100%;padding:16px}.student-access-page>main{width:94vw}.student-access-card,.access-showcase-column,.public-leaderboard,.learning-carousel,.carousel-placeholder{max-width:none}.access-showcase-column{gap:18px}.ranking-podium{gap:6px;min-height:210px;padding:22px 0 0}.podium-avatar{width:52px;height:52px}.podium-2 .podium-avatar,.podium-3 .podium-avatar{width:47px;height:47px}.podium-block{padding-left:6px;padding-right:6px}.podium-block>span{text-align:center}.public-leaderboard-head>svg{width:28px;height:28px}.template-name-field{grid-template-columns:1fr}.template-name-field button{width:100%}.template-cards{grid-template-columns:1fr}.template-cards>article{grid-template-columns:36px 1fr}.template-actions{grid-column:1/-1}.batch-toolbar{flex-direction:column;align-items:stretch}.batch-toolbar span{margin-left:0}.batch-student-list{grid-template-columns:1fr}.multi-subject-title{align-items:flex-start}.attendance-summary{grid-template-columns:1fr 1fr;padding:12px 16px 0;display:grid}.attendance-layout{padding:12px 16px 18px}.attendance-calendar{padding:8px}.attendance-day{min-height:48px;padding:5px}.attendance-day span{font-size:6px}.people-list-card{max-width:100%}.people-table{min-width:1420px}.admin-cards{padding:8px 12px 14px}.admin-cards article{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:14px 2px}.admin-account-meta{grid-column:1/-1;grid-template-columns:1fr 1fr}.admin-account-meta>span:last-child{grid-column:1/-1}.admin-row-actions{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;width:100%;display:grid}.admin-row-actions .account-action,.admin-row-actions .icon-button{justify-content:center;width:100%;min-width:0;height:40px;padding:0 7px}.person-detail-grid,.person-subject-detail>div{grid-template-columns:1fr}.person-detail-grid>div.wide{grid-column:1}.student-access-page>header,.student-portal>header,.portal-shell>header{min-height:68px;padding:0 15px}.student-access-page>main{gap:16px;width:94vw}.access-intro h1{font-size:26px}.student-login-form,.parent-register-form{padding:24px 18px 28px}.register-grid{grid-template-columns:1fr}.register-grid .wide{grid-column:1}.register-subject-row{grid-template-columns:1fr 28px}.register-subject-row label{grid-column:1}.register-subject-row>button{grid-area:1/2/4;align-self:center}.student-portal>main{width:94vw;margin-top:18px}.student-portal>header>div:last-child>span{display:none}.portal-welcome{align-items:flex-start;padding:22px}.portal-welcome h1{font-size:20px}.portal-count{width:82px;height:78px}.portal-count strong{font-size:25px}.assignment-section,.assignment-history{padding:16px}.portal-nav{gap:3px;padding:5px;top:6px}.portal-nav button{flex-direction:column;gap:2px;min-height:48px;font-size:7px}.portal-nav svg{width:14px}.portal-quick-actions{gap:8px}.student-profile-hero{min-height:130px;padding:21px}.student-profile-hero h1{font-size:20px}.student-profile-hero>svg{width:48px;height:48px}.student-profile-form{grid-template-columns:1fr;padding:17px}.student-profile-form label.wide,.student-profile-form>.address-fields{grid-column:1}.student-profile-card>header{padding:16px 17px}.student-profile-card>footer{padding:0 17px 17px}.student-profile-card>footer button{width:100%}.self-builder-head{padding:20px 17px}.self-builder-head>svg{width:30px;height:30px}.self-range-toolbar{flex-direction:column;align-items:flex-start;padding:14px 16px 10px}.self-range-toolbar>div:last-child{width:100%}.self-range-toolbar button{flex:1}.self-chapter-groups{padding:0 16px 14px}.self-chapter-groups>div>div{grid-template-columns:1fr}.self-assessment-builder>footer{flex-direction:column;align-items:stretch}.self-assessment-builder>footer>div{grid-template-columns:1fr;margin-left:0;display:grid}.self-assessment-builder>footer button{width:100%}.ai-quiz-builder{grid-template-columns:1fr 1fr;margin:0 16px 14px;padding:12px}.ai-builder-title{grid-column:1/-1}.ai-quiz-history{padding:15px}.ai-quiz-history article{grid-template-columns:38px minmax(0,1fr)}.ai-quiz-history article>button{grid-column:1/-1;width:100%}.ai-quiz-page{width:94vw;margin-top:16px}.ai-quiz-hero{align-items:flex-start;padding:18px}.ai-quiz-hero h1{font-size:18px}.ai-score,.ai-progress{flex-basis:82px;width:82px;min-height:64px}.student-mastery-report>header{grid-template-columns:36px minmax(0,1fr);padding:15px}.student-mastery-report>header>span{width:36px;height:36px}.student-mastery-report>header>strong{grid-column:2;justify-self:start}.mastery-summary-grid{grid-template-columns:1fr 1fr;padding:12px 15px}.mastery-table-wrap{padding:0 15px 14px}.mastery-table{min-width:0}.mastery-table thead{display:none}.mastery-table tbody{gap:8px;display:grid}.mastery-table tr{border:1px solid #eee6e3;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.mastery-table td{border-top:0;padding:9px 10px;min-width:0!important}.mastery-table td:first-child,.mastery-table td:last-child{grid-column:1/-1}.mastery-table td:nth-child(2):before{content:"正确率";color:#9a8e8b;margin-bottom:5px;font-size:6px;display:block}.mastery-table td:nth-child(3):before{content:"掌握程度";color:#9a8e8b;margin-bottom:5px;font-size:6px;display:block}.mastery-table td:last-child{border-top:1px dashed #eee4e1;padding-top:7px}.student-mastery-report>footer{flex-direction:column;align-items:stretch;padding:11px 15px}.ai-question-list article{padding:16px}.ai-options{grid-template-columns:1fr}.ai-quiz-actions{flex-direction:column}.ai-quiz-actions button{width:100%}.growth-summary{grid-template-columns:1fr;gap:8px}.growth-report{padding:16px}.growth-records article{grid-template-columns:38px minmax(0,1fr)}.history-levels{flex-wrap:wrap;grid-column:2}.growth-record-view{grid-column:2;justify-self:start}.growth-record-detail-summary{grid-template-columns:1fr}.assignment-grid article{grid-template-columns:38px 1fr}.assignment-grid article>button{grid-column:1/-1}.student-questionnaire-page{width:94vw;margin-top:16px}}html,.student-access-page,.student-portal{scrollbar-gutter:stable}.parent-growth-report{flex-direction:column;gap:18px;display:flex}.parent-report-intro{background:linear-gradient(135deg,#fff 0%,#fff6f2 100%);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;padding:25px 28px;display:flex;box-shadow:0 8px 28px #442a2a11}.parent-report-intro h1{margin:3px 0 8px;font-family:Noto Serif SC,serif;font-size:22px}.parent-report-intro p:not(.eyebrow){color:#817572;max-width:680px;margin:0;font-size:9px;line-height:1.75}.parent-report-intro aside{border-left:1px solid #eadfdb;flex-direction:column;align-items:flex-end;gap:4px;min-width:130px;padding-left:20px;display:flex}.parent-report-intro aside small{color:#988b88;font-size:7px}.parent-report-intro aside strong{color:#544744;font:16px Georgia,serif}.parent-report-intro aside span{color:#3b7455;background:#e8f3ec;border-radius:8px;padding:4px 7px;font-size:7px}.parent-report-intro aside span.down{color:#98631c;background:#fff0dc}.growth-summary.parent-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.growth-summary.parent-summary article:nth-child(4)>svg{color:#a82924}.parent-subject-report,.review-focus-report{background:#fff;border-radius:15px;padding:22px;box-shadow:0 7px 25px #442a2a0f}.parent-subject-report .section-title,.review-focus-report .section-title,.growth-report .section-title{justify-content:space-between}.parent-subject-report .section-title>div,.review-focus-report .section-title>div,.growth-report .section-title>div{flex-direction:column;gap:4px;display:flex}.parent-subject-report .section-title small,.review-focus-report .section-title small,.growth-report .section-title small{color:#998d8a;font-size:8px}.subject-report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.subject-report-grid article{background:linear-gradient(145deg,#fff,#fdfaf9);border:1px solid #eae2df;border-radius:12px;padding:15px}.subject-report-grid header{justify-content:space-between;align-items:center;gap:10px;display:flex}.subject-report-grid header>span{font-size:11px;font-weight:900}.subject-report-grid header>strong{color:#a80000;font-size:20px}.subject-report-grid header small{margin-left:2px;font-size:7px}.subject-report-grid article>div{color:#8e817e;gap:12px;margin-top:7px;font-size:7px;display:flex}.subject-report-grid article>div b{color:#5d504d}.subject-report-grid p{color:#94601b;border-top:1px dashed #e8deda;align-items:flex-start;gap:5px;min-height:33px;margin:11px 0 0;padding-top:10px;font-size:8px;line-height:1.55;display:flex}.subject-report-grid p.good{color:#47755b}.subject-report-grid p svg{flex:none;width:13px;height:13px}.review-focus-list{flex-direction:column;display:flex}.review-focus-list article{border-top:1px solid #f0e8e5;grid-template-columns:32px minmax(0,1fr) 78px;align-items:center;gap:12px;padding:13px 0;display:grid}.review-focus-list article:first-child{border-top:0}.review-focus-list article>b{color:#a80000;background:#f7e4e2;border-radius:9px;place-items:center;width:29px;height:29px;font-size:10px;display:grid}.review-focus-list article>div{min-width:0}.review-focus-list article>div header{align-items:center;gap:7px;display:flex}.review-focus-list article>div header strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.review-focus-list article>div header span{color:#9d211d;background:#f9e2e0;border-radius:8px;flex:none;padding:3px 6px;font-size:7px}.review-focus-list article>div header span.steady{color:#91601a;background:#fff0d9}.review-focus-list article>div header span.review{color:#63518d;background:#eeeaf7}.review-focus-list article>div small{color:#998d89;margin-top:4px;font-size:7px;display:block}.review-focus-list article>div p{color:#716562;margin:5px 0 0;font-size:8px;line-height:1.55}.review-focus-list article>aside{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.review-focus-list article>aside strong{color:#a80000;font:17px Georgia,serif}.review-focus-list article>aside small{color:#998d89;font-size:6px}.parent-good-state{color:#4e8064;background:#f8fcf9;border:1px dashed #d9e6dd;border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:115px;padding:20px;display:flex}.parent-good-state>svg{width:28px;height:28px}.parent-good-state h3{margin:0 0 5px;font-size:11px}.parent-good-state p{color:#7d8f84;margin:0;font-size:8px}.history-source.ai{color:#52628e;background:#e9edf8}.parent-reading-note{color:#93621d;background:#fffaf0;border:1px solid #ead8b9;border-radius:13px;align-items:center;gap:13px;padding:16px 19px;display:flex}.parent-reading-note>svg{flex:none;width:24px}.parent-reading-note strong{margin-bottom:4px;font-size:10px;display:block}.parent-reading-note p{color:#7f6e53;margin:0;font-size:8px;line-height:1.65}.family-choice-page{background:radial-gradient(circle at 50% 0,#fff 0,#0000 42%),#f6f1ee;place-items:center;min-height:100vh;padding:32px 20px;display:grid}.family-choice-card{background:#fffdfb;border:1px solid #eadfda;border-radius:24px;width:min(560px,100%);padding:34px;box-shadow:0 24px 70px #4a25251f}.family-choice-card>.brand{margin-bottom:30px}.family-choice-card h1{margin:7px 0 10px;font-size:28px}.family-choice-card>p:not(.eyebrow){color:#7b706c;margin:0;line-height:1.7}.family-choice-list{gap:12px;margin-top:25px;display:grid}.family-choice-list>button{color:#3f3532;text-align:left;background:#fff;border:1px solid #eadfda;border-radius:15px;grid-template-columns:52px 1fr 22px;align-items:center;gap:14px;width:100%;padding:15px;transition:all .18s;display:grid}.family-choice-list>button:hover{border-color:#b32a32;transform:translateY(-1px);box-shadow:0 9px 24px #8b182117}.family-choice-list>button>span{color:#9d111b;background:#f5dfdd;border-radius:16px;place-items:center;width:52px;height:52px;font-size:20px;font-weight:900;display:grid}.family-choice-list>button>div{flex-direction:column;gap:5px;display:flex}.family-choice-list strong{font-size:16px}.family-choice-list small{color:#877a75}.family-choice-list svg{color:#9d111b;width:19px}.family-choice-back{width:100%;margin-top:16px}.family-switcher{background:#fff;border:1px solid #e6d8d3;border-radius:12px;flex-direction:column;gap:2px;min-width:185px;padding:7px 35px 7px 13px;display:flex;position:relative}.family-switcher>span{color:#928580;font-size:9px}.family-switcher select{appearance:none;color:#403532;cursor:pointer;background:0 0;border:0;outline:0;font-weight:800}.family-switcher>svg{color:#9d111b;pointer-events:none;width:15px;position:absolute;bottom:12px;right:11px}.parent-account-hint.existing{color:#9d111b;font-weight:700}.captcha-field{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.captcha-field>button{background:#fff7f3;border:1px solid #e5d7d2;border-radius:11px;height:48px;padding:0;overflow:hidden}.captcha-field img{object-fit:cover;width:100%;height:100%;display:block}.captcha-field>button>span{color:#9d111b;font-size:12px;font-weight:800}.geometry-demo-page{color:#302827;background:#f5f1ee;flex-direction:column;min-height:100vh;display:flex}.geometry-demo-page>header{background:#fffffff0;border-bottom:1px solid #e9e1de;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:0 max(20px,50vw - 540px);display:flex}.geometry-demo-page>header a{color:#6e625f;align-items:center;gap:7px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.geometry-demo-page>header a svg{width:16px}.geometry-demo-page>header span{color:#978a87;font-size:11px}.geometry-demo-page>main{flex:1;width:min(920px,92vw);margin:32px auto 48px}.geometry-question-hero{background:linear-gradient(135deg,#fff,#fff6f2);border-radius:18px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:27px 30px;display:flex;box-shadow:0 10px 32px #4227270f}.geometry-question-hero p{color:#a80000;letter-spacing:.16em;margin:0 0 8px;font-size:11px;font-weight:900}.geometry-question-hero span{color:#8d807d;font-size:11px}.geometry-question-hero h1{margin:8px 0 0;font-family:Noto Serif SC,serif;font-size:30px}.geometry-question-hero>svg{color:#a80000;opacity:.8;width:52px;height:52px}.geometry-question-card{background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 34px #42272711}.geometry-question-copy{grid-template-columns:42px minmax(0,1fr);gap:14px;margin-bottom:23px;display:grid}.geometry-number{color:#a80000;background:#f6e1e1;border-radius:11px;place-items:center;width:40px;height:40px;font-size:12px;font-weight:900;display:grid}.geometry-question-copy h2{margin:2px 0 12px;font-size:21px}.geometry-question-copy p{color:#554a47;margin:8px 0;font-size:15px;line-height:1.8}.geometry-question-copy i,.geometry-proof i{color:#2f2725;font-family:Georgia,serif;font-style:italic;font-weight:700}.geometry-formula{color:#313131;text-align:center;background:#f7f4f3;border-radius:9px;width:fit-content;margin:12px auto;padding:10px 20px;font:italic 18px Georgia,serif}.geometry-formula.important{color:#a80000;background:#fff0ef;font-weight:700}.solid-geometry-renderer{background:#fffefd;border:1px solid #eadfdb;border-radius:15px;overflow:hidden}.solid-geometry-toolbar{background:#fcfaf9;border-bottom:1px solid #eee6e3;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 15px;display:flex}.solid-geometry-toolbar>span{color:#8e817e;font-size:11px}.solid-geometry-toolbar button{color:#685b58;background:#fff;border:1px solid #e0d6d3;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.solid-geometry-toolbar button svg{width:14px;height:14px}.solid-geometry-canvas{width:100%;padding:14px}.solid-geometry-canvas svg{aspect-ratio:7/5;width:100%;height:auto;display:block}.solid-geometry-warning{color:#94651f;background:#fff9e9;padding:8px 14px;font-size:10px;display:block}.solid-geometry-error{color:#a52a24;background:#fff5f4;border:1px solid #efc9c5;border-radius:14px;justify-content:center;align-items:center;gap:12px;min-height:140px;padding:20px;display:flex}.solid-geometry-error>svg{width:26px}.solid-geometry-error>div{flex-direction:column;gap:4px;display:flex}.solid-geometry-error strong{font-size:14px}.solid-geometry-error span{font-size:11px}.geometry-legend{color:#7f7471;flex-wrap:wrap;justify-content:center;gap:14px;padding:14px 0 5px;font-size:10px;display:flex}.geometry-legend span{align-items:center;gap:6px;display:inline-flex}.geometry-legend i{border-top:3px solid #111827;width:28px;height:0}.geometry-legend i.hidden{border-top-style:dashed;border-top-color:#6b7280}.geometry-legend i.diagonal{border-top:2px dashed #9ca3af}.geometry-legend i.height{border-top-style:dashed;border-top-color:#2563eb}.geometry-question-actions{border-top:1px solid #eee6e3;justify-content:flex-end;gap:10px;margin-top:19px;padding-top:18px;display:flex}.geometry-question-actions button{justify-content:center;align-items:center;gap:7px;min-width:130px;min-height:44px;display:inline-flex}.geometry-question-actions svg{width:17px}.geometry-proof{background:#fcfaf9;border:1px solid #e8dedb;border-radius:14px;margin-top:22px;padding:22px;display:none}.geometry-proof.visible{display:block}.geometry-proof>header{align-items:center;gap:11px;margin-bottom:13px;display:flex}.geometry-proof>header>svg{color:#47775b;background:#e4f2e9;border-radius:10px;width:34px;height:34px;padding:8px}.geometry-proof>header p{color:#a80000;letter-spacing:.15em;margin:0 0 3px;font-size:9px;font-weight:900}.geometry-proof>header h2{margin:0;font-size:18px}.geometry-proof ol{margin:0;padding-left:23px}.geometry-proof li{color:#514744;padding:6px 0;font-size:14px;line-height:1.8}.geometry-demo-page>footer{color:#9d918e;text-align:center;padding:18px;font-size:10px}@media (width<=700px){.parent-report-intro{flex-direction:column;align-items:flex-start;padding:20px}.parent-report-intro aside{border-top:1px solid #eadfdb;border-left:0;align-items:flex-start;width:100%;padding:12px 0 0}.growth-summary.parent-summary{grid-template-columns:1fr 1fr}.subject-report-grid{grid-template-columns:1fr}.review-focus-list article{grid-template-columns:29px minmax(0,1fr)}.review-focus-list article>aside{flex-direction:row;grid-column:2;align-items:flex-start}.geometry-demo-page>header{padding:0 16px}.geometry-demo-page>header span{display:none}.geometry-demo-page>main{width:94vw;margin-top:18px}.geometry-question-hero{padding:21px}.geometry-question-hero h1{font-size:24px}.geometry-question-hero>svg{width:38px}.geometry-question-card{padding:16px}.geometry-question-copy{grid-template-columns:34px minmax(0,1fr);gap:10px}.geometry-number{width:33px;height:33px}.geometry-question-copy h2{font-size:18px}.geometry-question-copy p{font-size:14px}.solid-geometry-canvas{padding:5px}.solid-geometry-toolbar{padding:0 10px}.solid-geometry-toolbar>span{font-size:9px}.geometry-legend{justify-content:flex-start;gap:10px}.geometry-question-actions{grid-template-columns:1fr 1fr;display:grid}.geometry-question-actions button{width:100%;min-width:0}.geometry-proof{padding:16px}.geometry-proof li{font-size:13px}}@media print{@page{size:A4 portrait;margin:12mm}.geometry-demo-page{background:#fff}.geometry-demo-page>header,.geometry-demo-page>footer,.solid-geometry-toolbar,.geometry-question-actions{display:none!important}.geometry-demo-page>main{width:100%;margin:0}.geometry-question-hero{box-shadow:none;margin:0 0 10px;padding:14px 18px}.geometry-question-card{box-shadow:none;padding:15px}.geometry-question-copy{margin-bottom:8px}.solid-geometry-renderer{break-inside:avoid}.solid-geometry-canvas{max-width:650px;margin:0 auto;padding:3px}.geometry-legend{padding:6px 0}.geometry-proof,.geometry-proof.visible{break-inside:avoid;margin-top:10px;padding:14px;display:block!important}}.question-bank-page{min-width:0}.question-bank-page>header{justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:24px;display:flex}.question-bank-page>header h1{margin:0 0 6px;font-size:28px}.question-bank-page>header>div>p:last-child{color:#8a7e7a;margin:0;font-size:11px}.qb-summary{gap:8px;display:flex}.qb-summary span{color:#887b78;text-align:center;background:#fff;border:1px solid #eadfdb;border-radius:12px;min-width:82px;padding:11px 14px;font-size:9px}.qb-summary b{color:#a80000;margin-bottom:2px;font:22px Georgia,serif;display:block}.qb-auto-note{background:linear-gradient(120deg,#fff8f7,#fff);border:1px solid #ead8d5;border-radius:14px;align-items:center;gap:13px;margin:0 0 18px;padding:15px 18px;display:flex}.qb-auto-note>svg{color:#a80000;background:#f5dfdf;border-radius:11px;flex:none;width:25px;height:25px;padding:9px}.qb-auto-note strong{color:#4b3e3b;margin-bottom:4px;font-size:11px;display:block}.qb-auto-note p{color:#918480;margin:0;font-size:9px;line-height:1.55}.qb-import-card,.qb-library{background:#fff;border-radius:16px;margin-bottom:22px;padding:22px;box-shadow:0 8px 28px #412a270e}.qb-step-title{align-items:center;gap:12px;display:flex}.qb-step-title>span{color:#a80000;background:#f5dfdf;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:900;display:grid}.qb-step-title h2{margin:0 0 3px;font-size:15px}.qb-step-title p{color:#998c89;margin:0;font-size:9px}.qb-scope-grid{background:#faf7f5;border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0 10px;padding:16px;display:grid}.qb-scope-grid label,.qb-editor main>label,.qb-editor-row label{color:#675b58;font-size:9px;font-weight:800}.qb-scope-grid select,.qb-editor select,.qb-editor input,.qb-editor textarea{color:#433937;resize:vertical;background:#fff;border:1px solid #e1d8d5;border-radius:9px;outline:0;width:100%;margin-top:6px;padding:10px 11px}.qb-scope-grid select:focus,.qb-editor select:focus,.qb-editor input:focus,.qb-editor textarea:focus{border-color:#b94a46;box-shadow:0 0 0 3px #f8e4e3}.qb-catalog-note{background:#fffdfc;border:1px solid #eadfdb;border-radius:11px;align-items:center;gap:10px;margin:0 0 18px;padding:10px 13px;display:flex}.qb-catalog-note>svg{color:#a80000;width:20px}.qb-catalog-note>span{flex-direction:column;gap:3px;min-width:0;display:flex}.qb-catalog-note strong{color:#554946;font-size:9px}.qb-catalog-note small{color:#958985;font-size:8px}.qb-upload-row{grid-template-columns:1.25fr .75fr;gap:12px;display:grid}.qb-upload-wrap{min-width:0;position:relative}.qb-upload,.qb-ai-toggle{cursor:pointer;background:#fffdfc;border:1px dashed #dbc9c5;border-radius:12px;align-items:center;gap:13px;min-height:74px;padding:15px;display:flex}.qb-upload-wrap.processing .qb-upload{cursor:wait;background:#fff9f8;border-color:#d8aaa6;padding-right:118px}.qb-upload input,.qb-ai-toggle input{display:none}.qb-upload>svg{color:#a80000;width:27px}.qb-upload span,.qb-ai-toggle span{flex-direction:column;gap:4px;min-width:0;display:flex}.qb-upload strong,.qb-ai-toggle strong{color:#4a3f3d;font-size:11px}.qb-upload small,.qb-ai-toggle small{color:#9b8e8a;font-size:8px}.qb-stop-import{color:#a52a25;cursor:pointer;background:#fff;border:1px solid #e2c2bf;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:35px;padding:0 11px;font-size:8px;font-weight:900;display:inline-flex;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.qb-stop-import svg{width:13px;height:13px}.qb-ai-toggle{border-style:solid}.qb-ai-toggle>i{color:#fff;border:1px solid #dccfcb;border-radius:7px;flex:none;place-items:center;width:23px;height:23px;display:grid}.qb-ai-toggle>input:checked+i{background:#a80000;border-color:#a80000}.qb-ai-toggle svg{width:14px}.qb-preview-section{border-top:1px solid #eee6e3;margin-top:20px;padding-top:20px}.qb-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.qb-preview-grid article{cursor:pointer;background:#fff;border:1px solid #e7dfdc;border-radius:12px;min-width:0;transition:all .18s;overflow:hidden}.qb-preview-grid article.selected{border-color:#bd4540;box-shadow:inset 0 0 0 1px #bd4540,0 5px 16px #8b2c2614}.qb-preview-grid article>header{border-bottom:1px solid #eee7e4;align-items:center;gap:8px;padding:10px 12px;display:flex}.qb-preview-grid article>header i{color:#fff;border:1px solid #dccfcb;border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.qb-preview-grid article.selected>header i{background:#a80000;border-color:#a80000}.qb-preview-grid article>header svg{width:12px}.qb-preview-grid article>header strong{font-size:10px}.qb-preview-grid article>header em{color:#978a86;margin-left:auto;font-size:8px;font-style:normal}.qb-preview-grid article>img{box-sizing:border-box;object-fit:contain;object-position:center;background:#fff;border:1px solid #f0e9e6;border-radius:7px;width:calc(100% - 20px);max-width:calc(100% - 20px);height:auto;max-height:250px;margin:10px;display:block}.qb-preview-grid article>p{overflow-wrap:anywhere;word-break:break-word;color:#746865;margin:0;padding:10px 12px;font-size:9px;line-height:1.55}.qb-recognition-warning{color:#93621b;background:#fff7e8;border-radius:8px;align-items:flex-start;gap:7px;margin:0 10px;padding:8px 10px;font-size:8px;line-height:1.45;display:flex}.qb-recognition-warning>svg{flex:none;width:14px;height:14px}.qb-recognition-warning>span{min-width:0}.qb-recognition-warning small{color:#a17e4c;margin-top:2px;display:block}.qb-preview-section>footer{justify-content:space-between;align-items:center;gap:15px;margin-top:15px;display:flex}.qb-preview-section>footer>span{color:#9a6a23;align-items:center;gap:6px;font-size:8px;display:flex}.qb-preview-section>footer>span svg{width:15px}.qb-preview-section>footer button svg{width:16px}.qb-library>header{border-bottom:1px solid #eee6e3;justify-content:space-between;align-items:center;gap:20px;padding-bottom:16px;display:flex}.qb-library>header>div{align-items:center;gap:11px;display:flex}.qb-library>header>div>svg{color:#a80000;background:#f4e1e1;border-radius:10px;width:34px;height:34px;padding:8px}.qb-library>header h2{margin:0 0 3px;font-size:16px}.qb-library>header p{color:#978a87;margin:0;font-size:8px}.qb-library>header nav{gap:5px;display:flex}.qb-library>header nav button{color:#766966;background:#fff;border:1px solid #e3d9d6;border-radius:9px;min-height:34px;padding:0 11px;font-size:9px}.qb-library>header nav button.active{color:#fff;background:#a80000;border-color:#a80000}.qb-library>header nav b{margin-left:5px;font-size:8px}.qb-library-filters{align-items:flex-end;gap:10px;padding:12px 0 2px;display:flex}.qb-library-filters label{color:#796d69;min-width:150px;font-size:8px;font-weight:800}.qb-library-filters select{color:#5f5350;background:#fff;border:1px solid #e3d9d6;border-radius:9px;width:100%;margin-top:5px;padding:8px 10px;display:block}.qb-library-filters .qb-search-filter{min-width:210px}.qb-search-filter>div{background:#fff;border:1px solid #e3d9d6;border-radius:9px;align-items:center;gap:6px;height:34px;margin-top:5px;padding:0 9px;display:flex}.qb-search-filter svg{color:#998c88;width:14px}.qb-search-filter input{color:#5f5350;border:0;outline:0;width:100%;min-width:0;font-size:9px}.qb-library-filters>span{color:#9a8d89;margin:0 0 9px auto;font-size:8px}.qb-export-toolbar{background:#faf7f5;border:1px solid #eadfdb;border-radius:11px;align-items:center;gap:12px;min-height:54px;margin-top:10px;padding:9px 12px;display:flex}.qb-export-toolbar>span{color:#786b68;font-size:9px}.qb-export-toolbar>span b{color:#a80000;font-size:12px}.qb-export-toolbar>div{gap:7px;margin-left:auto;display:flex}.qb-export-toolbar button{min-height:36px;padding:0 12px;font-size:9px}.qb-export-toolbar button svg{width:14px;height:14px}.qb-select-visible{color:#625552;background:0 0;border:0;align-items:center;gap:7px;font-size:9px;font-weight:800;display:inline-flex}.qb-select-visible>i,.qb-question-check>i{color:#fff;background:#fff;border:1px solid #d8cbc7;border-radius:6px;place-items:center;width:19px;height:19px;display:grid}.qb-select-visible>i.selected{background:#a80000;border-color:#a80000}.qb-question-check:has(svg)>i{background:#a80000;border-color:#a80000}.qb-select-visible svg,.qb-question-check svg{width:12px;height:12px}.qb-list>article{border-bottom:1px solid #eee7e4;grid-template-columns:28px minmax(150px,240px) minmax(0,1fr) auto;gap:14px;padding:18px 0;transition:background .16s;display:grid;position:relative}.qb-list>article.without-preview{grid-template-columns:28px minmax(0,1fr) auto}.qb-list>article.selected{background:#fff9f8;border-radius:10px;margin-inline:-10px;padding-inline:10px}.qb-question-check{background:0 0;border:0;align-self:start;place-items:center;width:28px;height:34px;padding:0;display:grid}.qb-list>article:last-child{border-bottom:0}.qb-thumb{background:#fff;border:1px solid #e7dfdc;border-radius:10px;min-height:130px;overflow:hidden}.qb-thumb img{box-sizing:border-box;object-fit:contain;width:100%;max-width:100%;height:100%;max-height:190px;display:block}.qb-info{min-width:0}.qb-info>header{align-items:center;gap:8px;display:flex}.qb-info>header em{color:#998c88;font-size:8px;font-style:normal}.qb-origin{color:#887b77;background:#f2efed;border-radius:7px;margin-left:auto;padding:4px 7px;font-size:8px}.qb-origin.ai{color:#a80000;background:#f7e4e3}.qb-status{color:#9a681e;background:#fff0da;border-radius:8px;align-items:center;gap:4px;padding:4px 7px;font-size:8px;font-weight:800;display:inline-flex}.qb-status svg{width:11px;height:11px}.qb-status.可使用{color:#3e7553;background:#e6f3ea}.qb-status.待解析{color:#59698d;background:#ebeef6}.qb-info h3,.qb-stem{overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:10px 0 7px;font-size:12px;line-height:1.65}.qb-info>p,.qb-info>small{color:#918481;margin:0 0 5px;font-size:8px;display:block}.qb-answer{color:#5e504d;background:#faf7f5;border-radius:9px;margin-top:10px;padding:10px 12px;font-size:9px}.qb-answer-line,.qb-answer-explanation{grid-template-columns:34px minmax(0,1fr);align-items:start;gap:8px;display:grid}.qb-answer-explanation{color:#867875;border-top:1px dashed #e6dcda;margin-top:7px;padding-top:7px}.qb-answer strong{color:#a80000;margin:2px 0 0}.qb-answer .qb-math-inline{min-height:0;color:inherit;font-size:inherit;background:0 0;border:0;border-radius:0;margin:0;padding:0;line-height:1.65;overflow-x:visible}.qb-warning{color:#a56d1e;margin-top:9px;font-size:8px}.qb-list>article>aside{gap:5px;display:flex}.qb-list>article>aside button{color:#776a67;background:#fff;border:1px solid #e3d8d5;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.qb-list>article>aside button:last-child{color:#be514b}.qb-list>article>aside svg{width:15px}.qb-empty{color:#9b8f8b;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:230px;display:flex}.qb-empty>svg{width:34px}.qb-empty h3{color:#625754;margin:12px 0 5px;font-size:13px}.qb-empty p{margin:0;font-size:9px}.qb-image-missing{color:#a0938f;place-items:center;font-size:9px;display:grid}.spin{animation:.8s linear infinite qb-spin}@keyframes qb-spin{to{transform:rotate(360deg)}}.qb-editor-backdrop{z-index:150;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3719197a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.qb-editor{background:#fff;border-radius:18px;grid-template-rows:auto minmax(0,1fr) auto;width:min(1080px,96vw);height:min(94dvh,1000px);max-height:94vh;display:grid;overflow:hidden;box-shadow:0 26px 80px #260e0e47}.qb-editor>header{border-bottom:1px solid #eee5e2;justify-content:space-between;align-items:center;padding:19px 22px;display:flex}.qb-editor>header p{color:#a80000;letter-spacing:.15em;margin:0 0 4px;font-size:8px;font-weight:900}.qb-editor>header h2{margin:0 0 3px;font-size:18px}.qb-editor>header span{color:#978b87;font-size:8px}.qb-editor>header button{color:#837572;background:#f7f2f0;border:0;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.qb-editor>header button svg{width:17px}.qb-editor-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr);min-height:0;max-height:none;display:grid;overflow:hidden auto}.qb-editor-body.no-preview{grid-template-columns:minmax(0,1fr)}.qb-editor-body.no-preview>main{box-sizing:border-box;width:min(820px,100%);margin:0 auto}.qb-editor-body>aside{background:#faf8f7;border-right:1px solid #eee6e3;padding:20px}.qb-editor-body>aside img{object-fit:contain;background:#fff;border:1px solid #e5dbd8;border-radius:10px;width:100%;max-height:68vh;display:block}.qb-editor-body>aside small{color:#9c8f8c;text-align:center;margin-top:8px;font-size:8px;display:block}.qb-editor-body>main{flex-direction:column;gap:12px;padding:20px;display:flex}.qb-ai-editor-note{color:#a80000;background:#fff4f3;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.qb-ai-editor-note>svg{flex:none;width:20px}.qb-ai-editor-note span{flex-direction:column;gap:3px;display:flex}.qb-ai-editor-note strong{font-size:10px}.qb-ai-editor-note small{color:#927b78;font-size:8px}.qb-editor-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.qb-content-mode{color:#6f625e;background:#fff;border:1px solid #dfd5d1;border-radius:9px;justify-content:center;align-self:flex-end;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-weight:800;display:inline-flex}.qb-content-mode:hover,.qb-content-mode.active{color:#a80000;background:#fff6f5;border-color:#c70000}.qb-content-mode svg{width:15px}.qb-raw-editor,.qb-formatted-review{flex-direction:column;gap:12px;display:flex}.qb-formatted-review>section{background:#fffdfb;border:1px solid #eee5e1;border-radius:11px;min-width:0;padding:12px 14px}.qb-formatted-review>section>strong{color:#70635f;margin-bottom:7px;font-size:9px;display:block}.qb-formatted-review>section>p{color:#342c29;margin:0;line-height:1.7}.qb-formatted-review .qb-math-preview{background:0 0;border:0;min-height:0;margin:0;padding:0}.qb-review-reason{color:#95631b;background:#fff6e8;border-radius:9px;align-items:flex-start;gap:7px;padding:10px;font-size:8px;line-height:1.55;display:flex}.qb-review-reason svg{flex:none;width:15px}.qb-math-help{color:#8b7f7a;margin-top:7px;font-weight:500;display:block}.qb-math-preview{overflow-wrap:anywhere;color:#342c29;white-space:pre-wrap;background:#fffdfb;border:1px dashed #dfd5d1;border-radius:10px;min-width:0;max-width:100%;min-height:44px;margin-top:9px;padding:11px 13px;line-height:1.8;overflow-x:auto}.qb-math-preview .math-expression{vertical-align:-.08em}.qb-math-preview .katex{font-size:1em}.qb-info>.qb-stem{white-space:pre-wrap;background:0 0;border:0;border-radius:0;min-height:0;padding:0;overflow-x:visible}.qb-math-preview .katex-display{max-width:100%;margin:.45em 0;overflow:auto hidden}.qb-separated-figure{border-top:1px solid #eee5e1;margin-top:16px;padding-top:14px}.qb-separated-figure>strong{color:#413633;margin-bottom:8px;display:block}.qb-editor-body>aside .qb-separated-figure>img{object-fit:contain;max-height:260px}.qb-separated-figure>button{color:#a80000;background:#fff;border:1px solid #e5d8d3;border-radius:9px;width:100%;min-height:38px;margin-top:8px}.bank-quiz-builder{grid-template-columns:minmax(260px,1fr) repeat(2,minmax(130px,180px))}.qb-editor>footer{z-index:2;padding:15px 22px max(15px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #eee5e2;justify-content:flex-end;gap:8px;display:flex;position:relative}.qb-editor>footer button{white-space:nowrap;justify-content:center;align-items:center;width:132px;min-height:44px;padding:0 12px;font-size:10px;display:inline-flex}.qb-editor>footer svg{width:15px}@media (width<=900px){.question-bank-page>header{flex-direction:column;align-items:flex-start}.qb-scope-grid{grid-template-columns:repeat(2,1fr)}.qb-editor-body{grid-template-columns:1fr}.qb-editor-body>aside{border-bottom:1px solid #eee6e3;border-right:0}.qb-editor-body>aside img{max-height:360px}}@media (width<=620px){.admin-nav nav{scroll-snap-type:x proximity}.admin-nav nav a,.admin-nav nav button{scroll-snap-align:start;font-size:8px}.question-bank-page>header h1{font-size:23px}.qb-summary{width:100%}.qb-summary span{flex:1;min-width:0;padding:9px 5px}.qb-import-card,.qb-library{padding:14px}.qb-scope-grid,.qb-upload-row,.qb-preview-grid{grid-template-columns:1fr}.qb-preview-section>footer,.qb-library>header{flex-direction:column;align-items:stretch}.qb-preview-section>footer button{width:100%}.qb-library>header nav{grid-template-columns:repeat(4,1fr);display:grid}.qb-library>header nav button{padding:0 4px}.qb-library-filters{flex-direction:column;align-items:stretch}.qb-library-filters label{width:100%}.qb-library-filters>span{margin:0}.qb-export-toolbar{flex-wrap:wrap;align-items:stretch}.qb-export-toolbar>div{grid-template-columns:1fr 1fr;width:100%;margin-left:0;display:grid}.qb-list>article{grid-template-columns:28px minmax(0,1fr);gap:11px}.qb-list>article.without-preview{grid-template-columns:28px minmax(0,1fr)}.qb-list>article>.qb-thumb,.qb-list>article>.qb-info,.qb-list>article>aside{grid-column:2}.qb-list>article>aside{justify-content:flex-end}.qb-thumb{min-height:90px}.qb-editor-backdrop{padding:0}.qb-editor{border-radius:0;width:100%;height:100dvh;max-height:100vh}.qb-editor-body{max-height:none}.qb-editor-body>aside{padding:12px}.qb-editor-body>main{padding:14px}.qb-editor-row{grid-template-columns:1fr}.qb-editor>footer{padding:12px 14px}.qb-editor>footer button{flex:1;width:auto;padding-inline:8px}}.data-pagination{background:#fff;border-top:1px solid #eee5e2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.pagination-summary{color:#817876;font-size:13px}.pagination-summary strong{color:#403836}.pagination-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.pagination-controls label{color:#817876;align-items:center;gap:7px;margin-right:6px;font-size:12px;display:flex}.pagination-controls select{color:#4c4442;background:#fff;border:1px solid #e6ddda;border-radius:9px;min-width:74px;height:34px;padding:0 26px 0 10px}.pagination-controls button{color:#665e5b;background:#fff;border:1px solid #e6ddda;border-radius:9px;place-items:center;width:34px;min-width:34px;height:34px;padding:0;font-weight:700;line-height:1;display:inline-grid}.pagination-controls button svg{width:16px;height:16px;display:block}.pagination-controls button:hover:not(:disabled){color:#b90000;border-color:#b90000}.pagination-controls button.active{color:#fff;background:#b90000;border-color:#b90000;box-shadow:0 5px 14px #b900002e}.pagination-controls button:disabled{opacity:.35;cursor:not-allowed}.pagination-gap{text-align:center;color:#aaa09d;width:20px}@media (width<=640px){.data-pagination{justify-content:center;padding:15px 12px}.pagination-summary{text-align:center;width:100%}.pagination-controls{justify-content:center}.pagination-controls label{justify-content:center;width:100%;margin:0 0 3px}.pagination-controls button{width:32px;min-width:32px;height:32px}}@media (width<=900px){.student-access-page{min-height:100dvh;overflow-x:clip}.student-access-page>main{flex-direction:column;flex:none;justify-content:flex-start;align-items:stretch;gap:22px;width:min(600px,100% - 28px);height:auto;min-height:0;margin:18px auto 28px;display:flex;overflow:visible}.student-access-page .access-intro,.student-access-page .student-access-card,.student-access-page .access-showcase-column{grid-area:auto;place-self:stretch;width:100%;max-width:none;height:auto;min-height:0;position:static;inset:auto;transform:none}.student-access-page .access-intro{order:0}.student-access-page .student-access-card{z-index:1;flex:none;order:1;margin:0}.student-access-page .access-showcase-column{z-index:0;flex-direction:column;flex:none;order:2;gap:22px;margin:0;display:flex;overflow:visible}.student-access-page .access-showcase-column>.learning-carousel,.student-access-page .access-showcase-column>.carousel-placeholder,.student-access-page .access-showcase-column>.public-leaderboard{clear:both;flex:none;width:100%;max-width:none;margin:0;position:relative;inset:auto;transform:none}}@media (width<=620px){.student-access-page>main{width:calc(100% - 24px);padding-bottom:max(10px,env(safe-area-inset-bottom));gap:18px;margin-top:14px}.student-access-page .access-showcase-column{gap:18px}}@media (width<=900px){.dashboard-actions{flex-wrap:wrap;width:100%}.dashboard-actions label{flex:150px}.dashboard-actions select{width:100%;min-width:0}.mastery-summary-grid{grid-template-columns:1fr 1fr}}@media (width<=620px){.dashboard-actions label{flex-basis:calc(50% - 5px)}.record-grade-filter{width:100%}.record-grade-filter select{flex:1}html,body,#root,.admin-shell,.admin-main{width:100%;max-width:100%}html,body{overflow-x:hidden}input,select,textarea,.login-card input,.dashboard-actions select,.record-grade-filter select,.search input,.people-tools select,.people-form-grid input,.people-form-grid select,.people-form-grid textarea,.attendance-editor textarea{font-size:16px!important}}:is(.brand-toast>button,.modal-close,.drawer-close,.icon-button,.remove-subject,.month-toolbar button,.register-subject-row>button,.ai-result-actions button,.row-actions button:not(.attendance-action):not(.account-toggle-action):not(.renew-account-action):not(.roster-text-action),.qb-list>article>aside button,.qb-editor>header button,.pagination-controls button){appearance:none;box-sizing:border-box;text-indent:0;vertical-align:middle;justify-content:center;align-items:center;margin:0;padding:0;line-height:0;display:inline-flex}:is(.brand-toast>button,.modal-close,.drawer-close,.icon-button,.remove-subject,.month-toolbar button,.register-subject-row>button,.ai-result-actions button,.row-actions button:not(.attendance-action):not(.account-toggle-action):not(.renew-account-action):not(.roster-text-action),.qb-list>article>aside button,.qb-editor>header button,.pagination-controls button)>svg{flex:none;width:16px;height:16px;margin:0;display:block;transform:none}.row-actions button.roster-text-action{appearance:none;width:auto;min-width:66px;height:36px;box-shadow:none;text-indent:0;white-space:nowrap;vertical-align:middle;touch-action:manipulation;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:5px;margin:0;padding:0 10px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;color:#6f6262!important;background:#fff!important;border:1px solid #ddd3d3!important}.row-actions button.roster-text-action>svg{flex:0 0 16px;width:16px;height:16px}.row-actions button.roster-text-action>span{line-height:1;display:inline-block}.renew-account-control{min-height:42px;box-shadow:0 6px 14px #97000a1a;color:#a30914!important;background:#fff0ef!important;border-color:#ae111b!important;font-weight:800!important}.new-student-expiry{background:linear-gradient(135deg,#fff8f6,#fffdfb);border:1px solid #e7c7c4;border-radius:14px;grid-template-columns:minmax(210px,1fr) minmax(210px,.8fr);align-items:end;gap:14px 18px;padding:17px 18px;display:grid}.new-student-expiry-title{grid-column:1/-1;align-items:center;gap:11px;display:flex}.new-student-expiry-title>svg{color:#fff;background:#a80a14;border-radius:11px;flex:0 0 38px;width:38px;height:38px;padding:9px}.new-student-expiry-title>span{flex-direction:column;gap:3px;min-width:0;display:flex}.new-student-expiry-title strong{color:#6e1117;font-size:13px}.new-student-expiry-title small{color:#897b78;font-size:9px;line-height:1.5}.new-student-expiry label{min-width:0}.new-student-expiry input[type=date]{appearance:none;width:100%;min-width:0;height:44px;margin:0;padding:0 12px;line-height:44px}.new-student-expiry-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.new-student-expiry-presets button{appearance:none;color:#8f131a;white-space:nowrap;justify-content:center;width:100%;min-width:0;height:44px;margin:0;padding:0 7px;font-size:10px;line-height:1}@media (width<=760px){.new-student-expiry{grid-template-columns:1fr;padding:15px}.new-student-expiry-title,.new-student-expiry label,.new-student-expiry-presets{grid-column:1}.new-student-expiry-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.row-actions button.roster-text-action{min-width:68px;height:40px}}@media (width<=520px){.renew-account-control{flex-basis:100%!important}.account-renewal-modal .modal-actions{align-items:stretch}.account-renewal-modal .modal-actions>button{flex:100%;justify-content:center;min-height:44px}}.student-portal>header{z-index:70;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;flex:0 0 74px;width:100%;position:fixed;top:0;left:0;right:0}.student-portal-controls{z-index:60;background:#f5f1ee;width:min(1080px,92vw);margin:0;position:fixed;top:86px;left:50%;transform:translate(-50%);box-shadow:0 0 0 8px #f5f1eefa}.student-portal-controls .portal-nav{z-index:auto;margin:0 0 10px;position:static;top:auto}.student-portal-controls .student-expiry-alert.critical-expiry-alert{z-index:auto;width:100%;max-width:none;margin:0;position:relative;top:auto;left:auto;right:auto;transform:none}.student-portal-controls .student-expiry-alert.compact-expiry-alert{margin:0}.student-portal>main.no-expiry-layout{margin-top:161px}.student-portal>main.compact-expiry-layout{margin-top:205px}.student-portal>main.critical-expiry-layout{margin-top:253px}@media (width<=760px){.student-portal>header{flex-basis:68px}.student-portal-controls{width:94vw;top:74px}.student-portal-controls .portal-nav{margin-bottom:7px}.student-portal-controls .student-expiry-alert.critical-expiry-alert{padding:10px 11px}.student-portal>main.no-expiry-layout{margin-top:145px}.student-portal>main.compact-expiry-layout{margin-top:184px}.student-portal>main.critical-expiry-layout{margin-top:224px}}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
