:root{font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Arial,sans-serif;color:#14213d;background:#f5f8fb;font-synthesis:none;--navy:#06356a;--navy-deep:#032a57;--blue:#1268c4;--teal:#0bb8ad;--green:#18a67e;--purple:#7c55c7;--line:#d9e2ec;--muted:#6a778b;--panel:#fff;--danger:#dc4c55}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f6f9fc;font-size:14px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:208px 1fr;background:#f7f9fc}.sidebar{position:sticky;top:0;height:100vh;color:#fff;background:linear-gradient(180deg,#05386f,#02284f);display:flex;flex-direction:column;z-index:20;box-shadow:3px 0 16px #02284f1f}.brand{height:92px;display:flex;align-items:center;gap:10px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.brand span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#ffffff1f}.brand strong{font-size:16px}.sidebar nav{padding:18px 10px;flex:1;display:flex;flex-direction:column;gap:8px}.sidebar nav button,.collapse-button{border:0;background:transparent;color:#ffffffd1;min-height:48px;border-radius:7px;display:flex;align-items:center;gap:11px;padding:0 13px;cursor:pointer;text-align:left;white-space:nowrap;transition:.18s ease}.sidebar nav button:hover{background:#ffffff14;color:#fff}.sidebar nav button.active{background:linear-gradient(90deg,#08b3ae,#0bc1b5);color:#fff;box-shadow:0 8px 18px #08b3ae40}.collapse-button{margin:12px;border-top:1px solid rgba(255,255,255,.12);border-radius:0;padding-top:14px}.workspace{min-width:0;min-height:100vh}.topbar{height:72px;background:#fffffff5;border-bottom:1px solid var(--line);display:flex;justify-content:flex-end;align-items:center;gap:30px;padding:0 24px;position:sticky;top:0;z-index:15;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-note{color:#627087;font-size:13px;display:flex;align-items:center;gap:7px}.topbar-note svg{color:#29b879}.topbar-note.error{color:#b1454d}.topbar-note.error svg{color:#dc4c55}.user-switcher{min-width:190px;border:1px solid #cdd7e4;border-radius:24px;height:42px;display:flex;align-items:center;gap:7px;padding:0 12px;background:#fff}.user-switcher select{border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;outline:0;color:#334156;background:transparent;font-size:13px}.user-account{min-width:230px;border:1px solid #cdd7e4;border-radius:24px;height:42px;display:flex;align-items:center;gap:8px;padding:0 7px 0 12px;background:#fff;color:#334156}.user-account span{flex:1;font-size:13px;white-space:nowrap}.user-account button{width:30px;height:30px;border:0;border-radius:50%;display:grid;place-items:center;background:#f1f5f9;color:#6b7789;cursor:pointer}.user-account button:hover{background:#feecef;color:#c23d4a}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 15%,rgba(11,184,173,.16),transparent 28%),linear-gradient(135deg,#052f60,#06254a 48%,#073d6e)}.login-panel{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px 34px 28px;box-shadow:0 28px 70px #000f2357}.login-brand{display:flex;align-items:center;gap:12px;padding-bottom:22px;border-bottom:1px solid #e2e8f0}.login-brand>span{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#07549b,#09b3ad);color:#fff}.login-brand div{display:grid;gap:4px}.login-brand strong{font-size:18px;color:#17355f}.login-brand small{color:#7b8798}.login-heading{display:flex;align-items:flex-start;gap:11px;margin:24px 0 18px;color:#0b68b4}.login-heading h1{margin:0 0 5px;font-size:22px;color:#17355f}.login-heading p{margin:0;color:#738095;font-size:13px}.login-panel form{display:grid;gap:15px}.login-panel form label{display:grid;gap:7px}.login-panel form label>span{color:#536176;font-size:12px;font-weight:600}.login-panel form input{height:43px;border-radius:8px;padding:0 12px;font-size:14px}.login-panel form button{height:46px;border:0;border-radius:8px;background:linear-gradient(90deg,#07549b,#0876b5);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 8px 18px #07549b33}.login-panel form button:disabled{opacity:.65;cursor:wait}.login-error{border:1px solid #f2bdc2;border-radius:7px;background:#fff2f3;color:#b33b47;padding:9px 11px;font-size:12px}.login-footnote{margin:19px 0 0;color:#8b96a7;font-size:11px;text-align:center}.topbar-note button{margin-left:4px;border:0;border-radius:12px;padding:4px 9px;background:#b33b47;color:#fff;font-size:11px;cursor:pointer}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#031931a8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.password-modal{width:min(460px,100%);border-radius:16px;background:#fff;padding:26px 28px;box-shadow:0 24px 70px #00122861}.password-modal-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px;color:#0b68b4}.password-modal-heading h2{margin:0 0 5px;color:#17355f;font-size:20px}.password-modal-heading p{margin:0;color:#738095;font-size:12px;line-height:1.6}.password-modal form{display:grid;gap:14px}.password-modal form label{display:grid;gap:7px}.password-modal form label>span{color:#536176;font-size:12px;font-weight:600}.password-modal form input{height:42px;border:1px solid #cbd5e1;border-radius:8px;padding:0 11px;font-size:14px;outline:none}.password-modal form input:focus{border-color:#0b77bd;box-shadow:0 0 0 3px #0b77bd1f}.password-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.password-modal-actions button{min-width:104px;height:41px;border:0;border-radius:8px;background:#086bac;color:#fff;font-weight:700;cursor:pointer}.password-modal-actions button.cancel{border:1px solid #cbd5e1;background:#fff;color:#536176}.password-modal-actions button:disabled{opacity:.6;cursor:wait}.mobile-menu{display:none;border:0;background:transparent}.content-area{min-height:calc(100vh - 72px)}.daily-layout{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:24px;max-width:1380px;margin:0 auto;padding:20px 26px 30px;position:relative}.daily-main{min-width:0}.daily-side{padding-top:88px;position:sticky;top:72px;height:fit-content}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;min-height:62px;margin-bottom:7px}.page-heading h1{font-size:25px;line-height:1.2;margin:0 0 7px;letter-spacing:-.4px}.page-heading p{margin:0;color:#647187;font-size:14px}.save-state{font-size:13px;color:#657287;display:flex;align-items:center;gap:6px;margin-top:9px}.save-state svg{color:#2fba7d}.section-title{font-size:18px;font-weight:700;color:#17355f;margin:13px 0 9px;display:flex;align-items:baseline}.section-title span{color:#0b4f94}.section-title small{font-weight:400;font-size:11px;color:#8994a4;margin-left:7px}.section-title.compact{font-size:16px;margin-top:8px}.action-groups{display:grid;gap:10px}.action-block{background:#fff;border:1px solid #d7e1ec;border-radius:8px;overflow:hidden;box-shadow:0 1px 1px #14213d05}.action-heading{min-height:40px;display:flex;justify-content:space-between;align-items:center;padding:5px 12px;background:#fbfdff;border-bottom:1px solid #e4eaf1}.action-heading>div{display:flex;align-items:center;gap:9px}.action-heading strong{font-size:14px}.action-heading>span{font-size:12px;color:#8a95a6}.mini-icon{width:27px;height:27px;display:grid;place-items:center;border-radius:6px}.mini-icon.teal,.summary-icon.teal{background:#dff8f5;color:#079e95}.mini-icon.blue,.summary-icon.blue{background:#e3efff;color:#1268c4}.mini-icon.green,.summary-icon.green{background:#e2f7ee;color:#13916f}.mini-icon.purple,.summary-icon.purple{background:#f0e9fb;color:#7750bb}.editor-stack,.student-stack{display:grid;gap:7px;padding:7px 9px}.editor-card,.student-card{border:1px solid #dce4ee;border-radius:6px;padding:8px 42px 8px 9px;position:relative;background:#fff}.editor-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:6px 8px}.student-grid{grid-template-columns:repeat(4,minmax(130px,1fr))}.field{min-width:0;display:flex;flex-direction:column;gap:5px}.field.wide{grid-column:auto}.student-card .field.wide{grid-column:span 2}.field>span{font-size:10px;color:#657288;font-weight:600}input,select,textarea{width:100%;border:1px solid #cfd9e5;background:#fff;color:#29364a;border-radius:5px;padding:5px 7px;outline:none;transition:.16s;font-size:12px;line-height:1.35}input,select{height:30px}textarea{min-height:32px;height:32px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#3d8bd7;box-shadow:0 0 0 3px #3d8bd71c}.icon-button{position:absolute;right:9px;top:10px;width:29px;height:29px;display:grid;place-items:center;border-radius:6px;border:1px solid #e1e7ee;background:#fff;cursor:pointer}.icon-button.danger{color:var(--danger)}.add-row,.add-empty{border:0;background:transparent;color:#1268c4;display:flex;align-items:center;justify-content:center;gap:5px;min-height:30px;cursor:pointer;font-weight:600;font-size:12px}.add-empty{width:100%;min-height:38px;color:#6c7b90}.add-empty:hover,.add-row:hover{background:#f3f8fd}.add-row.prominent{border:1px dashed #aac7e7;border-radius:7px;min-height:38px}.student-stack{padding:0}.student-card{border-color:#cddcea;box-shadow:0 2px 8px #0833610a}.bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:15px}.priority-list{display:grid;gap:7px}.priority-list label{display:grid;grid-template-columns:22px 1fr;gap:7px;align-items:center}.priority-list b{font-size:12px;color:#657288;text-align:center}.support-box{height:121px;min-height:121px}.summary-rail{border:1px solid #d9e3ed;border-radius:9px;background:#fff;padding:0 16px 10px;box-shadow:0 4px 15px #0f2c5209}.summary-title{padding:17px 0 14px;border-bottom:1px solid #e5eaf0;display:flex;flex-direction:column;gap:7px}.summary-title strong{font-size:17px}.summary-title span{color:#8490a1;font-size:11px;display:flex;align-items:center;gap:5px}.summary-item{min-height:66px;display:grid;grid-template-columns:35px 1fr auto;gap:10px;align-items:center;border-bottom:1px solid #e5eaf0}.summary-icon{width:34px;height:34px;border-radius:8px;display:grid;place-items:center}.summary-item>span:nth-child(2){font-size:13px;color:#46566b}.summary-item strong{font-size:28px;color:#0c9891;line-height:1}.summary-item strong small{font-size:11px;color:#4f5f73;font-weight:500;margin-left:5px}.summary-rail>p{color:#9ba5b3;font-size:10px;text-align:center;margin:13px 0 2px}.primary-action,.secondary-action{width:100%;min-height:53px;border-radius:8px;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px;font-weight:700;cursor:pointer}.primary-action{border:0;color:#fff;background:linear-gradient(180deg,#07539c,#043f7e);box-shadow:0 8px 16px #043f7e33}.secondary-action{border:1px solid #1462ae;color:#0a4b8e;background:#fff}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);background:#123a64;color:#fff;border-radius:25px;padding:11px 18px;display:flex;align-items:center;gap:8px;box-shadow:0 12px 28px #0000002e;z-index:50}.toast.error{background:#b53c48}.region-selector{display:grid;grid-template-columns:1fr 1fr;gap:5px}.validated-input{display:grid;gap:3px}.validated-input small{color:#c83f4c;font-size:10px;line-height:1.2}input.input-error{border-color:#dc4c55;background:#fff8f8}.auto-code{min-height:30px;border:1px solid #cfd9e5;border-radius:5px;background:#f6f9fc;padding:5px 7px;display:flex;align-items:center;justify-content:space-between;gap:8px;overflow:hidden}.auto-code strong{color:#0a5eaa;font-size:12px;white-space:nowrap}.auto-code small{color:#8793a4;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auto-code.error{border-color:#dc4c55;background:#fff3f4}.auto-code.error small{color:#bd3e49}.page-shell{max-width:1380px;padding:26px;margin:0 auto}.table-card,.funnel-card{background:#fff;border:1px solid #d9e3ed;border-radius:9px;padding:16px;overflow:auto}.table-card h3,.funnel-card h3{margin:0 0 16px;font-size:16px}table{width:100%;border-collapse:collapse;min-width:760px}th{color:#66758a;background:#f8fafc;font-size:12px;font-weight:600;text-align:left;padding:11px;border-bottom:1px solid #d9e2ec}td{font-size:13px;padding:12px 11px;border-bottom:1px solid #e6ebf1;color:#344257;vertical-align:top}tbody tr:hover{background:#fbfdff}.empty-row{text-align:center;color:#98a3b2;padding:45px}.status{display:inline-flex;border-radius:14px;padding:3px 9px;font-size:11px;background:#edf1f5;color:#68768a}.status.submitted{background:#e0f6ed;color:#0d8b66}.status.draft{background:#fff3dc;color:#a26a0c}.muted-block{display:block;color:#929dab;margin-top:3px}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:20px}.kpi{background:#fff;border:1px solid #d9e3ed;border-radius:9px;padding:17px;display:flex;align-items:center;gap:13px;color:#0a6bb6}.kpi div{display:grid;gap:5px}.kpi span{font-size:12px;color:#718096}.kpi strong{font-size:25px;color:#18345d}.kpi small{font-size:11px;margin-left:4px;color:#718096}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.7fr);gap:20px}.dashboard-grid tbody tr{cursor:pointer}.dashboard-grid tr.selected-row{background:#eef6fe}.dashboard-report-detail{margin-top:20px}.dashboard-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.dashboard-detail-heading h3{margin:0;font-size:16px;color:#17355f}.dashboard-detail-heading select{width:180px;height:35px}.funnel-row{margin-bottom:21px}.funnel-row>div:first-child{display:flex;justify-content:space-between;font-size:13px;margin-bottom:7px}.funnel-track{height:16px;border-radius:10px;background:#edf1f5;overflow:hidden}.funnel-track i{display:block;height:100%;border-radius:inherit}.funnel-track i.teal{background:#13b9ae}.funnel-track i.blue{background:#287bc9}.funnel-track i.purple{background:#8060c9}.funnel-track i.green{background:#28aa7f}.submitted-page{max-width:1380px;margin:0 auto;padding:26px}.submitted-heading{min-height:62px;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px}.submitted-heading h1{margin:0 0 7px;font-size:25px;color:#14213d}.submitted-heading p{margin:0;color:#647187}.locked-pill{border:1px solid #bfd7cf;border-radius:18px;background:#edf9f5;color:#148162;padding:7px 11px;display:flex;align-items:center;gap:5px;font-size:12px}.success-banner{min-height:92px;border:1px solid #bfe3d6;border-radius:10px;background:#eefaf6;padding:18px 22px;display:flex;align-items:center;gap:14px;color:#138362}.success-banner strong{color:#155f50;font-size:17px}.success-banner p{color:#55766d;margin:5px 0 0;font-size:12px}.submitted-grid,.records-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:20px;margin-top:20px;align-items:start}.calendar-card{background:#fff;border:1px solid #d9e3ed;border-radius:10px;padding:16px;box-shadow:0 3px 14px #0f2c520a}.calendar-heading{display:flex;align-items:center;gap:8px;color:#163b69;margin-bottom:14px}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-week span{color:#8b96a6;font-size:10px;text-align:center;padding:4px 0}.calendar-grid button{position:relative;height:34px;border:1px solid transparent;border-radius:6px;background:#fff;color:#526176;cursor:pointer;font-size:11px}.calendar-grid button:hover{background:#f1f6fb}.calendar-grid button.outside{opacity:.32}.calendar-grid button.selected{border-color:#146fc2;box-shadow:0 0 0 2px #146fc217}.calendar-grid button i{position:absolute;width:5px;height:5px;border-radius:50%;left:50%;bottom:3px;transform:translate(-50%);background:transparent}.calendar-grid button.submitted i,.calendar-legend i.submitted{background:#18a67e}.calendar-grid button.draft i,.calendar-legend i.draft{background:#e5a127}.calendar-grid button.missing i,.calendar-legend i.missing{background:#d86670}.calendar-legend{display:flex;gap:13px;margin-top:14px;padding-top:12px;border-top:1px solid #edf1f5;color:#7a8799;font-size:10px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:7px;height:7px;border-radius:50%}.report-summary-card,.record-detail{background:#fff;border:1px solid #d9e3ed;border-radius:10px;padding:20px;box-shadow:0 3px 14px #0f2c520a}.report-summary-title,.record-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:15px;border-bottom:1px solid #e6ebf1}.report-summary-title>div{display:flex;align-items:center;gap:10px;color:#0a6bb6}.report-summary-title>div span{display:grid;gap:4px}.report-summary-title strong{color:#17355f;font-size:16px}.report-summary-title small,.record-detail-heading small{color:#8793a4;font-size:11px}.summary-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.summary-metrics .kpi{padding:12px}.summary-metrics .kpi strong{font-size:21px}.report-detail-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px}.report-detail-preview>div{border:1px solid #e0e7ef;border-radius:7px;padding:11px;display:flex;align-items:center;justify-content:space-between;gap:12px}.report-detail-preview>div.wide{grid-column:1/-1;display:block}.report-detail-preview span{color:#718096;font-size:11px}.report-detail-preview strong{color:#17355f}.report-detail-preview p{color:#455469;font-size:12px;margin:5px 0 0;line-height:1.55}.submitted-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.submitted-actions .primary-action,.submitted-actions .secondary-action{width:auto;min-width:156px;min-height:43px;margin:0;font-size:13px}.records-layout{margin-top:0}.owner-filter{margin-top:12px;display:grid;gap:6px;color:#657288;font-size:11px}.owner-filter select{height:36px;font-size:12px}.records-content{display:grid;gap:14px;min-width:0}.compact-table{padding:0}.compact-table table{min-width:610px}.compact-table tbody tr{cursor:pointer}.compact-table tr.selected-row{background:#eef6fe}.record-detail-heading>div{display:grid;gap:4px}.record-detail-heading strong{color:#17355f;font-size:16px}.record-detail-section{padding:15px 0;border-bottom:1px solid #edf1f5}.record-detail-section h4{margin:0 0 10px;color:#17355f;font-size:13px}.detail-line{display:grid;grid-template-columns:105px 180px 1fr;gap:10px;padding:7px 0;border-bottom:1px dashed #edf1f5;font-size:12px}.detail-line>span{color:#0a6bb6}.detail-line>strong{color:#344257}.detail-line>p{margin:0;color:#657288}.detail-action-group{padding:7px 0 4px}.detail-action-group h5{margin:0 0 3px;color:#0a6bb6;font-size:12px}.detail-action-group .detail-line{grid-template-columns:180px 1fr}.detail-record{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:9px 0;border-bottom:1px dashed #e5ebf2}.detail-record>strong{color:#344257;font-size:12px}.detail-facts{display:flex;flex-wrap:wrap;gap:6px 14px;color:#657288;font-size:11px;line-height:1.5}.detail-facts span{display:inline-flex;gap:5px}.detail-facts b{color:#8290a2;font-weight:500}.record-detail-section.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-bottom:0}.record-detail-section.two>div{border:1px solid #e2e8f0;border-radius:7px;padding:12px}.record-detail-section.two p{margin:0;color:#536176;line-height:1.65;font-size:12px}.record-empty{min-height:260px;display:grid;place-content:center;justify-items:center;text-align:center;border:1px dashed #ccd8e5;border-radius:10px;background:#fff;color:#7990a8;padding:30px}.record-empty strong{margin-top:10px;color:#40536a}.record-empty p{max-width:420px;font-size:12px;line-height:1.7}.inline-action{width:auto;min-height:40px;margin:12px 0 0 auto;padding:0 17px;font-size:12px}.muted{color:#8a96a7;font-size:12px}.admin-stack{display:grid;gap:18px}.admin-card{background:#fff;border:1px solid #d9e3ed;border-radius:10px;padding:20px;box-shadow:0 3px 14px #0f2c520a}.admin-card-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #e5ebf2}.admin-card h3{margin:0 0 6px;color:#17355f;font-size:17px}.admin-card p{margin:0;color:#718096;font-size:12px;line-height:1.6}.admin-password{width:310px;display:grid;gap:6px;color:#657288;font-size:11px}.admin-user-list{display:grid}.admin-user-row{display:grid;grid-template-columns:145px minmax(130px,1fr) minmax(150px,1fr) 110px 94px minmax(210px,1.35fr) 94px;gap:10px;align-items:end;padding:14px 0;border-bottom:1px solid #edf1f5}.admin-user-row:last-child{border-bottom:0}.admin-user-row label{display:grid;gap:5px;min-width:0}.admin-user-row label>span:first-child{color:#718096;font-size:10px}.admin-user-identity{display:grid;align-self:center;gap:4px}.admin-user-identity strong{color:#213c63;font-size:14px}.admin-user-identity span{color:#8592a4;font-size:10px}.account-toggle>span:last-child{height:30px;display:flex;align-items:center;gap:5px;color:#506077;font-size:11px}.account-toggle input{width:15px;height:15px}.admin-button,.danger-button{height:30px;border:0;border-radius:5px;background:#0a65b7;color:#fff;font-size:11px;font-weight:600;cursor:pointer}.admin-button.secondary{background:#fff;color:#0a5ca8;border:1px solid #8bb6dd}.admin-button:disabled,.danger-button:disabled{opacity:.48;cursor:not-allowed}.admin-message{margin:14px 0 0;padding:10px 12px;border-radius:6px;font-size:12px}.admin-message.success{color:#0c7c5d;background:#e8f8f2;border:1px solid #bde5d7}.admin-message.error{color:#b33340;background:#fff0f1;border:1px solid #f0c4c9}.danger-zone{border-color:#efc9ce;background:#fffafb;display:grid;grid-template-columns:minmax(280px,1fr) minmax(560px,1.5fr);gap:30px;align-items:end}.danger-zone h3{color:#a8303d;display:flex;align-items:center;gap:7px}.clear-controls{display:grid;grid-template-columns:1fr 1.25fr 170px;gap:10px;align-items:end}.clear-controls label{display:grid;gap:5px;color:#8a5760;font-size:10px}.danger-button{background:#b93643}.collapsed.app-shell{grid-template-columns:74px 1fr}.collapsed .brand strong,.collapsed .sidebar nav span,.collapsed .collapse-button span{display:none}.collapsed .brand{justify-content:center;padding:0}.collapsed .sidebar nav button{justify-content:center;padding:0}.collapsed .collapse-button{justify-content:center;transform:rotate(180deg)}@media(max-width:1160px){.daily-layout{grid-template-columns:1fr}.daily-side{position:static;padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-rail{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:0 18px}.summary-title{grid-column:1/-1;flex-direction:row;justify-content:space-between}.summary-rail>p{grid-column:1/-1}.editor-grid,.kpi-grid{grid-template-columns:repeat(3,1fr)}.submitted-grid,.records-layout{grid-template-columns:270px minmax(0,1fr)}.summary-metrics{grid-template-columns:repeat(2,1fr)}.admin-user-row{grid-template-columns:130px 1fr 1fr 105px 90px}.temporary-password{grid-column:2/5}.danger-zone{grid-template-columns:1fr}.clear-controls{grid-template-columns:1fr 1fr 170px}}@media(max-width:820px){.app-shell,.collapsed.app-shell{display:block}.sidebar{position:fixed;left:-230px;width:208px;transition:left .2s ease}.sidebar.mobile-open{left:0}.mobile-menu{display:grid;place-items:center;margin-right:auto}.topbar{padding:0 14px;gap:8px}.topbar-note{display:none}.user-switcher,.user-account{min-width:0;flex:1;max-width:250px}.daily-layout,.page-shell,.submitted-page{padding:18px 14px 28px}.page-heading{min-height:62px}.page-heading h1,.submitted-heading h1{font-size:22px}.save-state{display:none}.editor-grid,.student-grid{grid-template-columns:1fr 1fr}.bottom-grid,.dashboard-grid,.submitted-grid,.records-layout{grid-template-columns:1fr;gap:12px}.summary-rail,.kpi-grid{grid-template-columns:1fr 1fr}.calendar-card{max-width:430px}.detail-line{grid-template-columns:90px 140px 1fr}.admin-card-heading{display:grid}.admin-password{width:100%}.admin-user-row{grid-template-columns:1fr 1fr}.admin-user-identity{grid-column:1/-1}.temporary-password{grid-column:1}.clear-controls{grid-template-columns:1fr}.danger-button{height:38px}}@media(max-width:520px){.editor-grid,.student-grid{grid-template-columns:1fr}.student-card .field.wide{grid-column:1}.daily-side,.summary-rail{grid-template-columns:1fr}.primary-action,.secondary-action{grid-column:1}.kpi-grid,.summary-metrics{grid-template-columns:1fr}.section-title{font-size:16px}.editor-card,.student-card{padding-left:10px}.submitted-heading{align-items:center}.success-banner{align-items:flex-start}.report-detail-preview,.record-detail-section.two{grid-template-columns:1fr}.report-detail-preview>div.wide{grid-column:1}.submitted-actions{flex-direction:column-reverse}.submitted-actions .primary-action,.submitted-actions .secondary-action{width:100%}.detail-line,.detail-record,.region-selector{grid-template-columns:1fr}}
