:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#10213d;background:#f3f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}.app-shell,.login-shell{min-height:100vh;padding-bottom:calc(22px + env(safe-area-inset-bottom))}.teacher-sidebar{position:fixed;left:0;top:calc(68px + env(safe-area-inset-top));bottom:0;width:210px;padding:16px 12px;display:flex;flex-direction:column;gap:7px;background:#102f64;z-index:10}.teacher-sidebar button{min-height:44px;padding:0 13px;display:flex;align-items:center;gap:10px;border:0;border-radius:7px;color:#dbeafe;background:transparent;font-weight:800;text-align:left}.teacher-sidebar button.active,.teacher-sidebar button:hover{color:#173b7a;background:#fff}.teacher-logout-button{margin-top:auto}.teacher-main{margin-left:210px}.attendance-window-card{display:grid;gap:7px;padding:18px;margin-bottom:14px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.attendance-window-card span,.attendance-window-card small{color:#64748b}.attendance-window-card strong{font-size:24px;color:#173b7a}.topbar{height:calc(68px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;background:#173b7a;color:#fff}.topbar div:nth-child(2),.login-brand div:last-child{display:flex;flex-direction:column}.topbar strong{font-size:17px}.topbar span{font-size:11px;opacity:.75;margin-top:2px}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;color:#173b7a;background:#fff;font-weight:900}.brand-mark.large{width:58px;height:58px;font-size:19px}.brand-logo{width:42px;height:42px;display:block;border-radius:8px;object-fit:contain;background:#fff}.brand-logo.large{width:58px;height:58px}.icon-button{width:40px;height:40px;border:0;color:#fff;background:transparent;display:grid;place-items:center}.teacher-strip{display:flex;gap:12px;align-items:center;padding:18px 20px 8px;max-width:720px;margin:auto}.avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#164fbb;background:#dceaff;font-weight:850}.teacher-strip div:last-child{display:grid}.teacher-strip span,.teacher-strip small{color:#64748b;font-size:12px}.teacher-strip strong{margin:2px 0}.panel{margin:16px auto;padding:22px 20px;width:calc(100% - 32px);max-width:720px;background:#fff;border:1px solid #dbe3ed;border-radius:8px;box-shadow:0 10px 30px #132d5512}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.section-head span,.class-title span,.secure{font-size:12px;font-weight:850;color:#087f73}h1{margin:6px 0;font-size:28px}.class-title p{margin:0 0 16px;color:#64748b}.class-mode-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 14px;padding:4px;border:1px solid #dbe3ed;border-radius:8px;background:#f8fafc}.class-mode-tabs button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:6px;background:transparent;color:#334155;font-size:13px;font-weight:850}.class-mode-tabs button:disabled{opacity:.55;cursor:not-allowed}.class-mode-tabs .active{color:#fff;background:#173b7a;box-shadow:0 8px 20px #173b7a2e}.assignment-list{display:grid;gap:10px}.assignment-card{min-height:76px;display:grid;grid-template-columns:46px 1fr;align-items:center;gap:12px;padding:12px;border:1px solid #dbe3ed;border-radius:8px;background:#fff;text-align:left}.assignment-card:active{transform:translateY(1px)}.assignment-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;color:#0f8b83;background:#dff7f4}.assignment-card strong{display:block;font-size:16px}.assignment-card small{display:block;margin-top:3px;color:#64748b}.small-button,.back-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#173b7a;font-weight:800}.attendance-toolbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:14px}.attendance-toolbar label{height:38px;min-width:162px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.attendance-toolbar input{height:32px;border:0;outline:0;color:#10213d}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px}.summary-grid div{min-height:70px;padding:12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.summary-grid span{color:#64748b;font-size:12px}.summary-grid strong{display:block;margin-top:5px;font-size:24px}.green{color:#059669}.red{color:#dc2626}.amber{color:#d97706}.student-list{display:grid;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.student-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #e2e8f0}.student-row:last-child{border-bottom:0}.student-row strong{display:block}.student-row small{display:block;margin-top:3px;color:#64748b}.status-buttons{display:flex;gap:6px}.status-buttons button{min-width:86px;height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;font-size:12px;font-weight:800}.status-buttons .present{color:#fff;background:#16a34a;border-color:#16a34a}.status-buttons .absent{color:#fff;background:#dc2626;border-color:#dc2626}.status-buttons .late{color:#111827;background:#f59e0b;border-color:#f59e0b}.not-marked{display:inline-flex;align-items:center;min-height:34px;color:#64748b;font-size:12px;font-weight:800}.primary-button{width:100%;min-height:48px;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:6px;color:#fff;background:#2563eb;font-weight:850}.primary-button:disabled{opacity:.6}.secondary-button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #cbd5e1;border-radius:6px;color:#173b7a;background:#fff;font-weight:850}.secondary-button:disabled{opacity:.6}.no-margin{margin-top:0}.error-banner,.success-banner,.info-banner{width:calc(100% - 32px);max-width:720px;margin:12px auto;padding:11px 13px;border-radius:6px}.panel .info-banner{width:100%;max-width:none;margin:0 0 14px}.login-card .error-banner{width:100%}.error-banner{color:#b42318;background:#fff1f0;border:1px solid #ffccc7}.success-banner{color:#166534;background:#f0fdf4;border:1px solid #86efac;font-weight:750}.info-banner{color:#173b7a;background:#eff6ff;border:1px solid #bfdbfe;font-weight:750}.empty-state{min-height:190px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:9px;color:#64748b}.empty-state strong{color:#10213d}.login-shell{display:grid;grid-template-columns:minmax(260px,42%) 1fr;background:#fff}.login-brand{padding:70px 11%;display:flex;align-items:flex-start;gap:14px;color:#fff;background:#173b7a}.login-brand strong{font-size:22px}.login-brand span{font-size:12px;font-weight:850;color:#5eead4}.login-card{width:min(440px,calc(100% - 40px));margin:auto}.login-card h1{font-size:36px;margin:18px 0 8px}.login-card>p{color:#64748b}form label{display:grid;gap:7px;margin:16px 0 7px;font-size:14px;font-weight:750}input,select{width:100%;height:48px;padding:0 13px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#10213d;outline:none}textarea{width:100%;min-height:120px;padding:12px 13px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#10213d;outline:none;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.content-form{border:1px solid #e2e8f0;border-radius:8px;padding:14px;background:#fff}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.8fr);gap:12px}.file-picker{height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px dashed #94a3b8;border-radius:6px;background:#f8fafc;color:#173b7a;font-weight:850;position:relative;overflow:hidden}.file-picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.selected-file{margin-top:7px;color:#173b7a;font-weight:800;overflow-wrap:anywhere}.marks-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-bottom:14px}.marks-toolbar label{margin:0}.marks-list{display:grid;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.marks-row{display:grid;grid-template-columns:minmax(170px,1.15fr) minmax(96px,.5fr) minmax(150px,.85fr) minmax(126px,.6fr);gap:10px;align-items:center;padding:12px;border-bottom:1px solid #e2e8f0}.marks-row:last-child{border-bottom:0}.marks-row>div strong{display:block}.marks-row>div small,.marks-saved{color:#64748b;font-size:12px}.marks-row label{margin:0;font-size:12px}.marks-row input{height:40px}.marks-actions{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:10px;margin-top:14px}.marks-state{display:grid;justify-items:start;gap:5px}.marks-state small{color:#64748b;font-size:11px}.status-pill{min-height:24px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;font-size:11px;font-weight:850;color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.status-pill.draft{color:#92400e;background:#fffbeb;border-color:#fcd34d}.status-pill.published{color:#166534;background:#f0fdf4;border-color:#86efac}.status-pill.not-started{color:#475569;background:#f8fafc;border-color:#cbd5e1}.sent-content-head.compact{margin-bottom:12px;border:1px solid #e2e8f0;border-radius:8px}.history-list{display:grid;gap:9px}.history-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.history-card strong{display:block}.history-card small{display:block;margin-top:3px;color:#64748b}.history-counts{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.history-counts span{min-height:26px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#eff6ff;color:#173b7a;font-size:11px;font-weight:850}.teacher-sidebar-class-tools{display:grid;gap:7px;margin:5px 0 8px;padding:10px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.class-tools-caption{padding-bottom:2px}.class-attendance-filters{margin-bottom:12px}.class-attendance-history-list{display:grid;gap:9px}.class-attendance-history-list article{display:grid;grid-template-columns:minmax(170px,1fr) minmax(120px,.55fr) auto minmax(135px,.65fr);gap:10px;align-items:center;padding:12px;border:1px solid #e2e8f0;border-radius:9px;background:#fff}.class-attendance-history-list strong,.class-attendance-history-list small{display:block}.class-attendance-history-list small,.class-attendance-history-list span{color:#64748b;font-size:12px}.attendance-status{min-height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase}.attendance-status.present{color:#166534;background:#dcfce7;border:1px solid #86efac}.attendance-status.absent{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.attendance-status.late{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.content-history-card{grid-template-columns:minmax(0,1fr) minmax(170px,.55fr)}.content-history-card p{margin:7px 0 0;color:#475569;line-height:1.4;overflow-wrap:anywhere}.fee-followup-toolbar{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:14px}.fee-followup-toolbar label{margin:0}.fee-reminder-language{display:grid;gap:6px}.fee-reminder-language>span{color:#475569;font-size:12px;font-weight:800}.fee-reminder-language>div{display:grid;grid-template-columns:repeat(2,minmax(84px,1fr));padding:3px;border:1px solid #d8e0eb;border-radius:9px;background:#f8fafc}.fee-reminder-language button{min-height:34px;padding:0 13px;border:0;border-radius:7px;color:#475569;background:transparent;font-weight:800}.fee-reminder-language button.active{color:#fff;background:#2563eb;box-shadow:0 3px 9px #2563eb33}.attendance-sms-language{margin-top:12px}.attendance-sms-language>div{grid-template-columns:repeat(3,minmax(72px,1fr))}.fee-followup-list{display:grid;gap:10px}.fee-followup-card{display:grid;grid-template-columns:minmax(190px,1.3fr) minmax(90px,.55fr) minmax(90px,.6fr) minmax(130px,.75fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid #e2e8f0;border-radius:9px;background:#fff}.fee-followup-card strong{display:block}.fee-followup-card small,.fee-followup-card span{display:block;color:#64748b;font-size:12px}.primary-inline{border-color:#2563eb;background:#2563eb;color:#fff;white-space:nowrap}.primary-inline:disabled{opacity:.55;cursor:not-allowed}.sent-content{margin-top:16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:hidden}.sent-content-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.sent-content-head div{display:grid;gap:2px}.sent-content-head span{color:#087f73;font-size:11px;font-weight:850}.sent-content-head strong{font-size:17px}.sent-content-card{display:grid;gap:8px;padding:13px;border-bottom:1px solid #e2e8f0}.sent-content-card:last-child{border-bottom:0}.sent-content-card strong{display:block}.sent-content-card small{display:block;margin-top:3px;color:#64748b}.sent-content-card p{margin:0;color:#475569;line-height:1.45;overflow-wrap:anywhere}.sent-content-meta{display:flex;flex-wrap:wrap;gap:8px}.sent-content-meta span{max-width:100%;min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border-radius:999px;background:#eff6ff;color:#173b7a;font-size:12px;font-weight:800;overflow-wrap:anywhere}.sent-empty{min-height:135px;border:0}.phone-field{display:flex}.phone-field span{width:62px;display:grid;place-items:center;border:1px solid #cbd5e1;border-right:0;border-radius:6px 0 0 6px;background:#f1f5f9}.phone-field input{border-radius:0 6px 6px 0}.hint{display:block;margin-top:16px;color:#64748b}.center{min-height:100vh;display:grid;place-content:center;justify-items:center}.loader{width:34px;height:34px;border:3px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 700px){.fee-followup-toolbar{align-items:stretch;flex-direction:column}.fee-reminder-language>div{width:100%}.teacher-sidebar{position:static;width:auto;height:auto;padding:8px;flex-direction:row;overflow-x:auto;background:#102f64}.teacher-sidebar button{flex:0 0 auto;min-height:40px}.teacher-logout-button{margin-top:0}.teacher-main{margin-left:0}.login-shell{display:block}.login-brand{min-height:180px;padding:calc(38px + env(safe-area-inset-top)) 28px 30px}.login-card{padding:30px 0 50px}.login-card h1{font-size:30px}.student-row{grid-template-columns:1fr}.status-buttons{display:grid;grid-template-columns:repeat(3,1fr)}.status-buttons button{min-width:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.marks-toolbar{grid-template-columns:1fr}.class-mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.marks-row,.marks-actions{grid-template-columns:1fr}.history-card{grid-template-columns:1fr;align-items:start}.class-attendance-history-list article{grid-template-columns:1fr;align-items:start}.history-counts{justify-content:flex-start}.content-grid{grid-template-columns:1fr}}body{background:#f4f7fb}.app-shell{background:linear-gradient(180deg,#eef4ff 0,#f6f8fc 180px,#f4f7fb)}.topbar{position:sticky;top:0;z-index:30;height:calc(72px + env(safe-area-inset-top));padding-inline:22px;grid-template-columns:46px minmax(0,1fr) 46px;background:linear-gradient(135deg,#12356f,#1d4f91);box-shadow:0 8px 24px #0f2f642e}.topbar strong{font-size:18px;letter-spacing:-.01em}.topbar span{color:#bfdbfe;opacity:1;font-weight:700;letter-spacing:.04em}.brand-logo{border-radius:11px;box-shadow:0 5px 14px #0000002e}.icon-button{border-radius:10px;background:#ffffff1a}.icon-button:hover{background:#ffffff2e}.teacher-sidebar{top:calc(72px + env(safe-area-inset-top));width:236px;padding:20px 14px;gap:8px;background:linear-gradient(180deg,#102f64,#0d2855);box-shadow:8px 0 28px #0f2f641a}.sidebar-caption{padding:0 12px 6px;color:#7fa7d8;font-size:10px;font-weight:900;letter-spacing:.14em}.sidebar-caption-bottom{margin-top:auto}.teacher-sidebar button{min-height:46px;padding:0 14px;border-radius:10px;color:#dbeafe;transition:background .18s ease,color .18s ease,transform .18s ease}.teacher-sidebar button:hover{color:#fff;background:#ffffff1a;transform:translate(2px)}.teacher-sidebar button.active{color:#173b7a;background:#fff;box-shadow:0 8px 20px #00000029}.teacher-sidebar .teacher-logout-button{margin-top:0;color:#fecaca}.teacher-main{min-height:calc(100vh - 72px);margin-left:236px;padding:20px 24px 36px}.teacher-strip{max-width:1180px;margin:20px auto 18px;padding:16px 20px;border:1px solid rgba(203,213,225,.8);border-radius:14px;background:#ffffffe6;box-shadow:0 10px 28px #0f2d5512;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.avatar{width:52px;height:52px;border:3px solid #fff;color:#fff;background:linear-gradient(135deg,#2563eb,#0f8b83);box-shadow:0 7px 18px #2563eb3d}.teacher-strip span{color:#0f8b83;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.teacher-strip strong{font-size:17px}.panel{width:100%;max-width:1180px;margin:0 auto 20px;padding:24px;border-color:#e3e9f2;border-radius:14px;box-shadow:0 14px 36px #132d5514}.section-head{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #edf1f6}.section-head span,.class-title span,.secure{color:#0f8b83;letter-spacing:.08em}h1{color:#10213d;font-size:26px;letter-spacing:-.025em}.assignment-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.assignment-card{min-height:94px;padding:16px;border-color:#e1e8f1;border-radius:12px;box-shadow:0 6px 18px #0f2d550a;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.assignment-card:hover{border-color:#93c5fd;box-shadow:0 12px 26px #2563eb1f;transform:translateY(-2px)}.assignment-icon{width:46px;height:46px;border-radius:11px}.small-button,.back-button{border-radius:9px;transition:background .18s ease,border-color .18s ease}.small-button:hover,.back-button:hover{border-color:#2563eb;background:#eff6ff}.class-mode-tabs{padding:5px;border-radius:11px}.class-mode-tabs button{border-radius:8px}.summary-grid div{min-height:82px;border-radius:11px;background:linear-gradient(180deg,#fff,#f8fafc)}.student-list,.marks-list,.content-form,.sent-content{border-radius:11px}.primary-button{border-radius:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 9px 20px #2563eb33}.primary-button:not(:disabled):hover{filter:brightness(1.05)}.attendance-window-card{padding:22px;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#ecfeff)}.attendance-window-card strong{font-size:28px;letter-spacing:-.02em}.error-banner,.success-banner,.info-banner{max-width:1180px;border-radius:9px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:18px;background:#0f172a75}.teacher-modal{width:min(520px,100%);padding:22px;border-radius:14px;background:#fff;box-shadow:0 22px 60px #0f172a47}.teacher-modal>span{color:#0f8b83;font-size:11px;font-weight:900;letter-spacing:.1em}.teacher-modal h2{margin:7px 0 8px;color:#10213d;font-size:24px}.teacher-modal p{margin:0 0 14px;color:#475569;line-height:1.45}.sms-example{padding:12px 13px;border:1px solid #bfdbfe;border-radius:10px;color:#173b7a;background:#eff6ff;font-size:13px;line-height:1.45}.sms-choice-actions{display:grid;grid-template-columns:.75fr 1.25fr 1.1fr;gap:9px;margin-top:16px}.sms-choice-actions button{min-height:42px;border:1px solid #cbd5e1;border-radius:9px;color:#173b7a;background:#fff;font-weight:850}.sms-choice-actions button:hover{border-color:#2563eb;background:#eff6ff}.sms-choice-actions button:nth-child(2),.sms-choice-actions button:nth-child(3){color:#fff;border-color:#2563eb;background:#2563eb}@media (max-width: 1100px){.assignment-list{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-followup-card{grid-template-columns:minmax(0,1fr) minmax(90px,.5fr)}.fee-followup-card .small-button{grid-column:1 / -1}}@media (max-width: 700px){.topbar{position:sticky;height:calc(64px + env(safe-area-inset-top));padding-inline:14px}.teacher-sidebar{position:sticky;top:calc(64px + env(safe-area-inset-top));z-index:25;width:100%;padding:7px 10px;gap:6px;flex-direction:row;overflow-x:auto;box-shadow:0 5px 16px #0f2f6429}.sidebar-caption{display:none}.teacher-sidebar button{flex:0 0 auto;min-height:40px;padding:0 12px;border-radius:8px;white-space:nowrap;font-size:12px}.teacher-sidebar button:hover{transform:none}.teacher-main{margin-left:0;padding:14px 12px 28px}.teacher-strip{margin-bottom:12px;padding:13px;border-radius:11px}.panel{padding:17px 14px;border-radius:12px}.assignment-list{grid-template-columns:1fr}.assignment-card{min-height:82px;padding:13px}.sms-choice-actions{grid-template-columns:1fr}.section-head{align-items:flex-start}h1{font-size:23px}.fee-followup-card{grid-template-columns:1fr;align-items:stretch}.fee-followup-card .small-button{width:100%}}.app-shell{display:block}.teacher-sidebar{top:0;bottom:0;width:240px;padding:22px 14px 16px;background:linear-gradient(180deg,#102f6b,#0c285c)}.teacher-sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 10px 25px;color:#fff}.teacher-sidebar-brand .brand-logo{width:46px;height:46px;border-radius:11px}.teacher-sidebar-brand>div{display:grid;gap:3px}.teacher-sidebar-brand strong{font-size:17px;line-height:1}.teacher-sidebar-brand span{color:#a9c6ff;font-size:10px;font-weight:850;letter-spacing:.11em}.teacher-sidebar-account{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin-top:auto;padding:14px 10px;border-top:1px solid rgba(255,255,255,.12)}.teacher-sidebar-account>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#173f94;background:#fff;font-size:12px;font-weight:900}.teacher-sidebar-account>div{display:grid;min-width:0}.teacher-sidebar-account strong,.teacher-sidebar-account small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-sidebar-account strong{color:#fff;font-size:12px}.teacher-sidebar-account small{margin-top:3px;color:#a9c6ef;font-size:10px}.teacher-main{min-height:100vh;margin-left:240px;padding:0 24px 36px}.topbar{display:none;height:74px;margin:0 -24px 20px;padding:0 34px;display:flex;justify-content:space-between;color:#10213d;background:#ffffffeb;border-bottom:1px solid #dce3ed;box-shadow:0 5px 18px #1931590f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.teacher-page-title{display:grid}.teacher-page-title strong{font-size:16px}.teacher-page-title span{margin-top:3px;color:#64748b;font-size:11px}.topbar-teacher>span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#2563eb,#0f9488);font-size:12px;font-weight:900}.mobile-menu-button,.teacher-menu-backdrop{display:none}.today-attendance-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;margin-bottom:14px;border:1px solid #dce5ef;border-radius:12px;background:#dce5ef}.today-attendance-card>div{min-height:86px;display:grid;align-content:center;gap:6px;padding:15px 18px;background:#fff}.today-attendance-card span,.my-attendance-history-list article>div>span{color:#64748b;font-size:11px;font-weight:750}.today-attendance-card strong{font-size:18px}.today-attendance-card.present>div:first-child strong{color:#15803d}.today-attendance-card.late>div:first-child strong{color:#d97706}.attendance-history-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:28px;padding:20px 0 14px;border-top:1px solid #e5eaf1}.attendance-history-head span{color:#0f8b83;font-size:11px;font-weight:850;letter-spacing:.08em}.attendance-history-head h2{margin:4px 0 0;font-size:20px}.attendance-filter-tabs{display:flex;gap:5px;padding:4px;border:1px solid #dce3ed;border-radius:9px;background:#f8fafc}.attendance-filter-tabs button{min-height:34px;padding:0 12px;border:0;border-radius:7px;color:#475569;background:transparent;font-size:12px;font-weight:800}.attendance-filter-tabs button.active{color:#fff;background:#173b7a}.attendance-history-filters{display:flex;align-items:flex-end;gap:10px;margin-bottom:14px}.attendance-history-filters label{display:grid;gap:5px;color:#475569;font-size:11px;font-weight:800}.attendance-history-filters input{width:170px;height:40px}.attendance-history-filters .small-button{min-width:78px}.attendance-month-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.attendance-month-summary>div{min-height:76px;padding:13px 15px;border:1px solid #e2e8f0;border-radius:10px;background:linear-gradient(180deg,#fff,#f8fafc)}.attendance-month-summary span{color:#64748b;font-size:11px;font-weight:800}.attendance-month-summary strong{display:block;margin-top:5px;font-size:24px}.attendance-month-summary .present{color:#15803d}.attendance-month-summary .late{color:#d97706}.attendance-month-summary .absent{color:#dc2626}.attendance-month-summary .leave{color:#2563eb}.my-attendance-history-list{overflow:hidden;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.my-attendance-history-list article{min-height:68px;display:grid;grid-template-columns:minmax(150px,1fr) 105px 130px 110px;align-items:center;gap:12px;padding:11px 15px;border-bottom:1px solid #e8edf4}.my-attendance-history-list article:last-child{border-bottom:0}.my-attendance-history-list article>div{display:grid;gap:3px}.my-attendance-history-list article small{color:#64748b;font-size:11px}.attendance-status{width:fit-content;min-height:26px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;font-size:11px;font-weight:850}.attendance-status.present{color:#166534;background:#dcfce7}.attendance-status.late{color:#92400e;background:#fef3c7}.attendance-status.absent{color:#b91c1c;background:#fee2e2}.attendance-status.leave{color:#1d4ed8;background:#dbeafe}.attendance-status.pending{color:#475569;background:#f1f5f9}.my-attendance-calendar-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.my-attendance-calendar-head{min-height:58px;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #e8edf4}.my-attendance-calendar-head strong{text-align:center;font-size:17px;color:#10213d}.my-attendance-calendar-head button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce3ed;border-radius:9px;color:#173b7a;background:#fff}.my-attendance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;padding:15px 16px 10px}.my-attendance-calendar>span{text-align:center;color:#64748b;font-size:11px;font-weight:850;text-transform:uppercase}.my-attendance-calendar-day{position:relative;min-height:52px;display:grid;place-items:center;border:1px solid #e4eaf1;border-radius:10px;color:#10213d;background:#f8fafc}.my-attendance-calendar-day:disabled{opacity:0}.my-attendance-calendar-day strong{font-size:16px}.my-attendance-calendar-day i{position:absolute;bottom:8px;width:7px;height:7px;border-radius:50%;background:#cbd5e1}.my-attendance-calendar-day.present{color:#15803d;border-color:#bbf7d0;background:#ecfdf5}.my-attendance-calendar-day.present i{background:#22c55e}.my-attendance-calendar-day.late{color:#92400e;border-color:#fde68a;background:#fffbeb}.my-attendance-calendar-day.late i{background:#f59e0b}.my-attendance-calendar-day.absent{color:#b91c1c;border-color:#fecdd3;background:#fff1f2}.my-attendance-calendar-day.absent i{background:#ef4444}.my-attendance-calendar-day.leave{color:#1d4ed8;border-color:#bfdbfe;background:#eff6ff}.my-attendance-calendar-day.leave i{background:#2563eb}.my-attendance-calendar-day.selected{box-shadow:0 0 0 2px #173b7a inset}.my-attendance-calendar-legend{display:flex;flex-wrap:wrap;gap:10px 15px;padding:6px 16px 14px;color:#64748b;font-size:12px}.my-attendance-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.my-attendance-calendar-legend i{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.my-attendance-calendar-legend i.present{background:#22c55e}.my-attendance-calendar-legend i.late{background:#f59e0b}.my-attendance-calendar-legend i.absent{background:#ef4444}.my-attendance-calendar-legend i.leave{background:#2563eb}.my-attendance-day-detail{min-height:64px;display:grid;grid-template-columns:auto minmax(120px,1fr) auto auto;align-items:center;gap:12px;margin:0 16px 16px;padding:12px 14px;border:1px solid #e4eaf1;border-radius:10px;background:#f8fafc}.my-attendance-day-detail>div{display:grid;gap:3px}.my-attendance-day-detail span:not(.attendance-status),.my-attendance-day-detail small{color:#64748b;font-size:11px;font-weight:750}@media (max-width: 700px){.teacher-sidebar-brand,.teacher-sidebar-account{display:flex}.teacher-sidebar{position:fixed;z-index:45;top:0;bottom:0;left:0;width:min(84vw,300px);padding:calc(22px + env(safe-area-inset-top)) 14px 16px;flex-direction:column;overflow-y:auto;transform:translate(-105%);transition:transform .22s ease;box-shadow:14px 0 38px #091e433d}.teacher-sidebar.mobile-open{transform:translate(0)}.teacher-sidebar .sidebar-caption{display:block}.teacher-sidebar button{width:100%;flex:0 0 auto;min-height:46px;padding:0 14px;font-size:13px}.teacher-sidebar button:hover{transform:none}.teacher-sidebar-account{display:grid}.teacher-menu-backdrop{position:fixed;z-index:44;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#0f172a6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.teacher-main{margin-left:0;padding:0 12px 28px}.topbar{height:calc(64px + env(safe-area-inset-top));margin:0 -12px;padding:env(safe-area-inset-top) 14px 0;display:grid;grid-template-columns:38px minmax(0,1fr) 36px;gap:9px}.mobile-menu-button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;border-radius:9px;color:#173b7a;background:#eef4ff}.teacher-page-title strong{font-size:15px}.topbar-teacher>span{width:36px;height:36px}.teacher-strip{margin-top:14px}.today-attendance-card{grid-template-columns:1fr}.today-attendance-card>div{min-height:66px}.attendance-history-head{align-items:flex-start;flex-direction:column}.attendance-history-filters{align-items:stretch;flex-direction:column}.attendance-history-filters label,.attendance-history-filters input,.attendance-history-filters .small-button{width:100%}.attendance-month-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.my-attendance-history-list article{grid-template-columns:1fr auto}.my-attendance-calendar{gap:5px;padding:13px 12px 8px}.my-attendance-calendar-day{min-height:44px;border-radius:9px}.my-attendance-calendar-day strong{font-size:14px}.my-attendance-day-detail{grid-template-columns:1fr auto;margin:0 12px 12px}.my-attendance-day-detail .attendance-status{grid-column:1 / -1}.fee-followup-card{grid-template-columns:1fr;align-items:stretch}.fee-followup-card .small-button{width:100%}}.panel:has(.class-title){padding-top:18px}.class-title{display:grid;gap:3px;margin-bottom:14px}.class-title h1{margin:0;font-size:25px;line-height:1.12}.class-title p{margin:0;color:#64748b}.class-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;margin-bottom:16px;border-color:#e3e9f2;border-radius:14px;background:#f8fafc}.class-mode-tabs button{min-height:48px;padding:6px 8px;flex-direction:column;gap:4px;border-radius:11px;font-size:11px;line-height:1.1;text-align:center}.class-mode-tabs .active{background:linear-gradient(135deg,#17428d,#0f8b83);box-shadow:0 8px 18px #17428d33}.sent-content-head.compact{min-height:52px;padding:10px 12px;margin-bottom:10px;border-radius:12px;background:#fff}.sent-content-head.compact strong{font-size:18px;line-height:1.15}.class-attendance-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:8px;align-items:end;padding:12px;margin-bottom:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.class-attendance-filters label{margin:0;gap:5px}.class-attendance-filters input{width:100%;height:40px;border-radius:9px}.class-attendance-filters .small-button{min-width:82px;height:40px}.attendance-month-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-month-summary>div{min-height:68px;padding:11px 12px;border-radius:12px}.attendance-month-summary strong{font-size:22px}.class-attendance-history-list{gap:8px}.class-attendance-history-list article{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 14px;border-radius:12px}.class-attendance-history-list article>div:first-child{min-width:0}.class-attendance-history-list article>div:first-child strong{font-size:16px;line-height:1.2}.class-attendance-history-list article>div:nth-child(2),.class-attendance-history-list article>div:nth-child(4){display:grid;gap:2px}.class-attendance-history-list article>div:nth-child(4){grid-column:1 / -1;padding-top:5px;border-top:1px solid #eef2f7}.class-attendance-history-list .attendance-status{align-self:start}@media (max-width: 700px){.panel:has(.class-title){padding:14px 12px}.attendance-toolbar{align-items:center;margin-bottom:12px}.attendance-toolbar .back-button{min-height:38px;padding:0 12px}.attendance-toolbar label{min-width:0;flex:1;height:38px}.attendance-toolbar input{min-width:0;font-size:13px}.class-title{margin-bottom:12px}.class-title h1{font-size:26px}.class-title p{font-size:14px}.class-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border-radius:14px}.class-mode-tabs button{min-height:54px;padding:7px 5px;white-space:normal;font-size:10.5px}.sent-content-head.compact{display:flex;align-items:center;padding:11px 12px}.sent-content-head.compact .small-button{min-width:44px;height:38px;padding:0 10px;font-size:0}.sent-content-head.compact .small-button svg{width:18px;height:18px}.class-attendance-filters{grid-template-columns:1fr 1fr}.class-attendance-filters .small-button{grid-column:1 / -1;width:100%}.class-attendance-history-list article{grid-template-columns:minmax(0,1fr) auto}.class-attendance-history-list article>div:nth-child(2),.class-attendance-history-list article>div:nth-child(4){grid-column:1 / -1}}.attendance-history-titlebar{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.45fr) auto;align-items:center;gap:10px;margin-bottom:12px}.attendance-history-titlebar>div{display:grid;gap:3px}.attendance-history-titlebar span{color:#0f8b83;font-size:11px;font-weight:900;letter-spacing:.08em}.attendance-history-titlebar strong{color:#10213d;font-size:20px;line-height:1.15}.attendance-history-titlebar label{height:40px;display:flex;align-items:center;gap:8px;margin:0;padding:0 10px;border:1px solid #dbe3ed;border-radius:10px;background:#fff}.attendance-history-titlebar input{height:34px;padding:0;border:0;box-shadow:none}.attendance-history-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;margin-bottom:12px;border:1px solid #dce3ed;border-radius:12px;background:#f8fafc}.attendance-history-switch button{min-height:40px;border:0;border-radius:9px;color:#334155;background:transparent;font-size:13px;font-weight:850}.attendance-history-switch .active{color:#fff;background:linear-gradient(135deg,#17428d,#0f8b83);box-shadow:0 6px 15px #17428d2e}.attendance-month-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.class-attendance-grid-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.class-attendance-grid{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.class-attendance-grid th,.class-attendance-grid td{min-width:42px;padding:8px 7px;border-bottom:1px solid #edf1f6;text-align:center;white-space:nowrap}.class-attendance-grid th:first-child,.class-attendance-grid td:first-child{position:sticky;left:0;z-index:2;min-width:190px;max-width:190px;text-align:left;background:#fff;box-shadow:8px 0 12px #0f2d550d}.class-attendance-grid th{top:0;z-index:3;color:#475569;background:#f8fafc;font-size:12px;font-weight:900}.class-attendance-grid th:first-child{z-index:4;background:#f8fafc}.class-attendance-grid td:first-child strong,.class-attendance-grid td:first-child small{display:block;overflow:hidden;text-overflow:ellipsis}.class-attendance-grid td:first-child strong{color:#10213d;font-size:13px}.class-attendance-grid td:first-child small{margin-top:2px;color:#64748b;font-size:10.5px}.attendance-dot{width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:8px;color:#94a3b8;background:#f1f5f9;font-size:11px;font-weight:900}.attendance-dot.present{color:#fff;background:#16a34a}.attendance-dot.absent{color:#fff;background:#dc2626}.attendance-dot.late{color:#111827;background:#f59e0b}.attendance-dot.empty{color:#94a3b8;background:#f8fafc;border:1px dashed #cbd5e1}.student-attendance-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-bottom:12px}.student-attendance-picker label{margin:0}.student-attendance-calendar-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.student-attendance-calendar-head{padding:13px 15px;border-bottom:1px solid #e8edf4;color:#10213d;font-size:17px;font-weight:900}.student-attendance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;padding:14px}.student-attendance-calendar>span{text-align:center;color:#64748b;font-size:11px;font-weight:900}.student-attendance-calendar button{position:relative;min-height:48px;display:grid;place-items:center;border:1px solid #e4eaf1;border-radius:10px;color:#10213d;background:#f8fafc}.student-attendance-calendar button:disabled{opacity:0}.student-attendance-calendar button strong{font-size:14px}.student-attendance-calendar button i{position:absolute;bottom:7px;width:7px;height:7px;border-radius:50%;background:#cbd5e1}.student-attendance-calendar button.present{color:#15803d;border-color:#bbf7d0;background:#ecfdf5}.student-attendance-calendar button.present i{background:#22c55e}.student-attendance-calendar button.absent{color:#b91c1c;border-color:#fecdd3;background:#fff1f2}.student-attendance-calendar button.absent i{background:#ef4444}.student-attendance-calendar button.late{color:#92400e;border-color:#fde68a;background:#fffbeb}.student-attendance-calendar button.late i{background:#f59e0b}.student-attendance-calendar button.selected{box-shadow:0 0 0 2px #173b7a inset}.student-attendance-detail{min-height:64px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin:0 14px 14px;padding:12px;border:1px solid #e4eaf1;border-radius:10px;background:#f8fafc}.student-attendance-detail div{display:grid;gap:3px}.student-attendance-detail span:not(.attendance-status),.student-attendance-detail small{color:#64748b;font-size:11px;font-weight:750}.student-attendance-detail small{grid-column:1 / -1}@media (max-width: 700px){.attendance-history-titlebar{grid-template-columns:minmax(0,1fr) auto}.attendance-history-titlebar label{grid-column:1 / -1}.attendance-history-titlebar .small-button{grid-row:1;grid-column:2;min-width:40px;padding:0 10px;font-size:0}.attendance-history-titlebar .small-button svg{width:18px;height:18px}.attendance-month-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.class-attendance-grid th:first-child,.class-attendance-grid td:first-child{min-width:150px;max-width:150px}.class-attendance-grid th,.class-attendance-grid td{min-width:34px;padding:7px 5px}.attendance-dot{width:25px;height:25px}.student-attendance-picker{grid-template-columns:1fr}.student-attendance-calendar{gap:5px;padding:12px}.student-attendance-calendar button{min-height:42px;border-radius:9px}}.marks-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #e6ebf2}.marks-history-head>div:first-child{display:grid;gap:4px;min-width:0}.marks-history-head span{color:#0f8b83;font-size:11px;font-weight:900;letter-spacing:.08em}.marks-history-head strong{color:#10213d;font-size:20px;line-height:1.15}.marks-history-actions{display:flex;gap:7px;flex-shrink:0}.marks-history-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.marks-history-filters label{display:grid;gap:5px;margin:0;color:#475569;font-size:11px;font-weight:850}.marks-history-filters select,.marks-history-filters input{width:100%;height:39px;border-radius:9px}.marks-history-filters .marks-history-student-search{grid-column:1 / -1}.marks-history-summary-list{display:grid;gap:9px}.marks-history-summary-list article{display:grid;grid-template-columns:minmax(185px,1fr) minmax(250px,.9fr) auto;align-items:center;gap:14px;padding:13px 14px;border:1px solid #e1e8f0;border-radius:12px;background:#fff}.marks-history-summary-title{display:grid;gap:3px;min-width:0}.marks-history-summary-title span{color:#0f8b83;font-size:10px;font-weight:900;letter-spacing:.07em}.marks-history-summary-title strong{color:#10213d;font-size:16px}.marks-history-summary-title small{overflow:hidden;color:#64748b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.marks-history-summary-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.marks-history-summary-counts span{display:grid;gap:2px;color:#64748b;font-size:10.5px}.marks-history-summary-counts strong{color:#1e3a6f;font-size:13px}.marks-history-summary-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px}.marks-history-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:0 2px}.marks-history-list-head>div{display:grid;gap:3px}.marks-history-list-head strong{color:#10213d;font-size:16px}.marks-history-list-head small,.marks-history-list-head>span{color:#64748b;font-size:12px}.marks-history-student-list{overflow:hidden;border:1px solid #e1e8f0;border-radius:12px;background:#fff}.marks-history-student-row{width:100%;min-height:66px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 14px;border:0;border-bottom:1px solid #edf1f5;border-radius:0;color:inherit;text-align:left;background:#fff}.marks-history-student-row:last-child{border-bottom:0}.marks-history-student-row:hover{background:#f8fbff}.marks-history-student-row>div{display:grid;gap:3px;min-width:0}.marks-history-student-row>div:first-child strong{overflow:hidden;color:#10213d;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.marks-history-student-row small{color:#64748b;font-size:11px}.marks-history-student-row>div:last-child{justify-items:end}.marks-history-student-row>div:last-child>strong{color:#173b7a;font-size:14px}.marks-history-detail{max-width:680px;border:1px solid #e1e8f0;border-radius:12px;background:#fff;overflow:hidden}.marks-history-detail-name{display:grid;gap:4px;padding:16px;border-bottom:1px solid #e8edf4;background:#f8fafc}.marks-history-detail-name strong{color:#10213d;font-size:19px}.marks-history-detail-name small{color:#64748b;font-size:12px}.marks-history-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.marks-history-detail dl>div{display:grid;gap:4px;min-height:68px;padding:13px 16px;border-right:1px solid #e8edf4;border-bottom:1px solid #e8edf4}.marks-history-detail dl>div:nth-child(2n){border-right:0}.marks-history-detail dl>div:nth-last-child(-n+2){border-bottom:0}.marks-history-detail dt{color:#64748b;font-size:11px;font-weight:800}.marks-history-detail dd{margin:0;color:#10213d;font-size:14px;font-weight:800;overflow-wrap:anywhere}.marks-history-detail .marks-history-detail-full{grid-column:1 / -1;border-right:0}@media (max-width: 700px){.marks-history-head{align-items:flex-start}.marks-history-head strong{font-size:18px}.marks-history-actions .small-button{min-width:40px;padding:0 9px;font-size:0}.marks-history-actions .small-button svg{width:17px;height:17px}.marks-history-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:8px}.marks-history-filters .marks-history-student-search{grid-column:1 / -1}.marks-history-summary-list article{grid-template-columns:1fr;gap:10px;padding:13px}.marks-history-summary-counts{padding:9px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5}.marks-history-summary-foot{justify-content:space-between}.marks-history-student-row{min-height:70px;padding:11px 12px}.marks-history-student-row>div:last-child>strong{font-size:13px}.marks-history-detail dl{grid-template-columns:1fr}.marks-history-detail dl>div,.marks-history-detail dl>div:nth-child(2n),.marks-history-detail dl>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid #e8edf4}.marks-history-detail dl>div:last-child{border-bottom:0}}
