:root{color:#172026;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f9fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,select{font:inherit}.app-shell{background:#f7f9fb;grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.login-shell{background:#f7f9fb;place-items:center;min-height:100vh;padding:22px;display:grid}.login-panel{background:#fff;border:1px solid #dde4ea;border-radius:8px;gap:18px;width:min(100%,420px);padding:22px;display:grid}.login-loading{color:#697984;place-items:center;min-height:120px;font-size:14px}.login-loading svg{color:#087f87;width:22px;height:22px}.login-brand{border-bottom:1px solid #edf1f4;align-items:center;gap:12px;padding-bottom:16px;display:flex}.login-brand strong,.login-brand span{display:block}.login-brand strong{color:#172026;font-size:16px}.login-brand span{color:#697984;font-size:13px}.login-heading{align-items:center;gap:12px;display:flex}.login-heading svg{color:#087f87;width:24px;height:24px}.login-heading h1{color:#172026;margin:0;font-size:24px;line-height:1.1}.login-heading p{color:#697984;margin:4px 0 0;font-size:13px}.login-form{gap:12px;display:grid}.login-form label{color:#697984;gap:6px;font-size:13px;font-weight:650;display:grid}.login-form input{color:#172026;border:1px solid #cfd9df;border-radius:7px;height:40px;padding:0 11px;font-size:15px}.sidebar{background:#fff;border-right:1px solid #dde4ea;flex-direction:column;gap:22px;padding:22px 16px;display:flex}.brand{border-bottom:1px solid #edf1f4;align-items:center;gap:12px;padding:4px 6px 16px;display:flex}.brand-mark{color:#fff;background:#087f87;border-radius:8px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand strong,.staff-panel strong{color:#172026;font-size:15px;line-height:1.3;display:block}.brand span,.staff-panel span{color:#677680;font-size:12px}.sidebar nav{gap:4px;display:grid}.nav-item{color:#344550;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;height:38px;padding:0 12px;font-size:14px;font-weight:600}.nav-item:hover{background:#eef7f7}.nav-item-active{color:#075f66;background:#dff3f2}.staff-panel{background:#fbfcfd;border:1px solid #dde4ea;border-radius:8px;gap:5px;margin-top:auto;padding:12px;display:grid}.workspace{min-width:0;padding:22px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.topbar p,.section-title p,.upload-panel p{color:#697984;margin:0;font-size:13px}.topbar h1,.upload-panel h2,.section-title h2{color:#172026;margin:0;font-weight:750}.topbar h1{font-size:28px;line-height:1.1}.user-chip{background:#fff;border:1px solid #dde4ea;border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 12px;display:flex}.user-chip button{color:#697984;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.user-chip button:hover{color:#075f66;background:#eef7f7}.user-chip svg{width:16px;height:16px}.user-chip span{color:#697984;font-size:12px}.user-chip strong{color:#172026;font-size:14px}.import-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:18px;display:grid}.student-management-stack{gap:18px;display:grid}.student-maintenance-panel{background:#fff;border:1px solid #dde4ea;border-radius:8px;gap:16px;padding:18px;display:grid}.student-maintenance-grid{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);align-items:start;gap:16px;display:grid}.student-form-panel,.student-list-panel{gap:14px;min-width:0;display:grid}.form-heading{gap:3px;display:grid}.form-heading-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-heading strong{color:#172026;font-size:16px}.form-heading span{color:#697984;font-size:13px}.form-heading .student-status-pill{color:#075f66;background:#dff3f2;border-radius:7px;align-items:center;width:fit-content;max-width:100%;min-height:24px;padding:3px 8px;font-size:12px;font-weight:750;display:inline-flex}.form-heading .student-status-pill-withdrawn{color:#8d2a1d;background:#ffe7e2}.student-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-form-grid label,.student-list-toolbar label{color:#697984;gap:6px;min-width:0;font-size:13px;font-weight:650;display:grid}.student-form-grid input,.student-form-grid select,.student-form-grid textarea,.student-list-toolbar input{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;font-size:14px}.student-form-grid input,.student-form-grid select,.student-list-toolbar input{height:40px;padding:0 11px}.student-form-grid textarea{resize:vertical;min-height:76px;padding:10px 11px}.student-form-note{grid-column:1/-1}.student-form-actions{flex-wrap:wrap;gap:10px;display:flex}.student-list-toolbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px;display:grid}.student-status-filter{align-self:end}.student-list-summary{color:#697984;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-height:40px;font-size:13px;display:flex}.student-list-summary span{background:#f5f9fc;border-radius:7px;padding:7px 9px}.student-directory-table{border:1px solid #edf1f4;border-radius:8px;overflow:hidden}.student-directory-row{border-bottom:1px solid #edf1f4;grid-template-columns:1.05fr .8fr 1fr 1.2fr 86px;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:grid}.student-directory-row:last-child{border-bottom:0}.student-directory-head{color:#5a6c76;background:#f8fafc;min-height:42px;font-size:13px;font-weight:750}.student-directory-row-active{background:#eef7f7}.student-directory-row-withdrawn{background:#fff8f6}.student-directory-row-withdrawn strong{color:#5a3029}.student-directory-row strong,.student-directory-row small{display:block}.student-directory-row strong{overflow-wrap:anywhere;color:#172026;font-size:14px}.student-directory-row small{overflow-wrap:anywhere;color:#697984;margin-top:3px;font-size:12px}.attendance-layout{grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:18px;display:grid}.grade-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.class-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:18px;display:grid}.main-panel,.summary-panel,.upload-panel,.preview-panel,.format-table,.attendance-panel,.grade-panel,.billing-panel,.class-sidebar-panel,.class-main-panel,.settings-panel{background:#fff;border:1px solid #dde4ea;border-radius:8px}.main-panel{background:0 0;border:0;gap:14px;display:grid}.upload-panel{justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.upload-panel h2,.section-title h2{font-size:19px}.file-drop{color:#075f66;cursor:pointer;background:#f1fbfa;border:1px dashed #0d8a92;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-width:260px;height:52px;font-size:14px;font-weight:700;display:flex}.file-drop svg{width:20px;height:20px}.file-drop input{opacity:0;width:1px;height:1px;position:absolute}.format-table,.preview-table,.attendance-table,.grade-table{max-width:100%;overflow:auto}.table-row,.preview-row{border-bottom:1px solid #edf1f4;align-items:center;display:grid}.table-row{grid-template-columns:130px 150px minmax(180px,1fr) 70px}.table-row:last-child,.preview-row:last-child{border-bottom:0}.table-row span,.preview-row span{color:#30424d;min-width:0;padding:10px 12px;font-size:13px}.table-head span,.preview-head span{color:#697984;background:#f8fafb;font-weight:750}.preview-panel,.attendance-panel,.grade-panel{padding:16px}.billing-layout{gap:14px;display:grid}.billing-toolbar{justify-content:flex-start;display:flex}.billing-panel{gap:14px;padding:16px;display:grid}.class-sidebar-panel,.class-main-panel{padding:16px}.settings-panel{margin-top:18px;padding:16px}.compact-title{margin-bottom:10px}.segmented-field{color:#697984;gap:5px;font-size:12px;display:grid}.segmented-control{background:#f8fafb;border:1px solid #cfd9df;border-radius:8px;align-items:center;gap:3px;min-height:36px;padding:3px;display:flex}.segment-option{color:#344550;cursor:pointer;background:0 0;border:0;border-radius:6px;min-width:72px;height:28px;font-size:13px;font-weight:750}.segment-option-active{color:#075f66;background:#fff;box-shadow:0 1px 4px #087f8729}.class-create{border-bottom:1px solid #edf1f4;gap:9px;padding-bottom:14px;display:grid}.class-create input,.class-edit-panel input{color:#172026;border:1px solid #cfd9df;border-radius:7px;height:38px;padding:0 10px;font-size:14px}.class-edit-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;margin-bottom:14px;padding:12px;display:grid}.class-edit-panel label{color:#697984;gap:5px;font-size:12px;display:grid}.class-list{gap:8px;margin-top:14px;display:grid}.class-list-item{text-align:left;cursor:pointer;background:#fff;border:1px solid #edf1f4;border-radius:8px;gap:3px;min-height:58px;padding:10px 12px;display:grid}.class-list-item:hover{background:#f1fbfa}.class-list-item-active{background:#dff3f2;border-color:#0d8a92}.class-list-item strong{color:#172026;font-size:14px}.class-list-item span{color:#697984;font-size:12px}.class-student-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.class-student-item{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;min-height:66px;padding:10px 12px;display:grid}.class-student-item input{accent-color:#087f87;width:16px;height:16px}.class-student-item strong,.class-student-item small{display:block}.class-student-item strong{color:#172026;font-size:14px}.class-student-item small{color:#758690;font-size:12px}.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.staff-card{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;align-content:start;gap:10px;padding:12px;display:grid}.staff-card strong,.staff-card span{display:block}.staff-card strong{color:#172026;font-size:14px}.staff-card span{color:#697984;font-size:12px}.teacher-class-picker{gap:7px;display:grid}.teacher-class-picker label,.check-row label{color:#30424d;align-items:center;gap:7px;font-size:13px;display:flex}.teacher-class-picker input,.check-row input{accent-color:#087f87;width:15px;height:15px}.small-empty{min-height:80px}.hr-layout{grid-template-columns:minmax(220px,.7fr) minmax(0,2.7fr);align-items:start;gap:16px;display:grid}.hr-list-panel,.hr-detail-panel{background:#fff;border:1px solid #edf1f4;border-radius:8px;padding:16px}.hr-staff-list{gap:8px;display:grid}.hr-create-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:9px;margin-bottom:12px;padding:12px;display:grid}.hr-create-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.hr-staff-button{text-align:left;color:#172026;cursor:pointer;background:#fff;border:1px solid #dbe5eb;border-radius:8px;gap:4px;width:100%;padding:10px;display:grid}.hr-staff-button span{color:#697984;font-size:12px}.hr-staff-button-active{background:#e4f5f4;border-color:#087f87}.hr-tab-panel{gap:14px;display:grid}.hr-tab-panel h3{color:#172026;margin:6px 0 0;font-size:16px}.hr-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.hr-class-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:10px;padding:12px;display:grid}.hr-class-panel h3,.hr-class-panel p{margin:0}.hr-class-panel p{color:#697984;font-size:13px}.profile-field{color:#697984;gap:5px;font-size:12px;display:grid}.profile-field-wide{grid-column:span 3}.profile-field input,.profile-field select,.schedule-row input,.schedule-row select,.annual-cost-row input{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;height:36px;padding:0 10px;font-size:14px}.document-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.document-upload-field{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:8px;padding:12px;display:grid}.document-preview{background:#fff;border:1px dashed #cfd9df;border-radius:8px;place-items:center;min-height:130px;display:grid;overflow:hidden}.document-preview img{object-fit:contain;width:100%;max-height:220px}.document-preview svg{color:#087f87;width:28px;height:28px}.document-upload-button{position:relative;overflow:hidden}.document-upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.schedule-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-table,.annual-cost-table{border:1px solid #edf1f4;border-radius:8px;overflow:auto}.schedule-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:140px 100px 100px 110px 130px 70px minmax(160px,1fr) 74px;align-items:center;gap:10px;min-width:980px;padding:9px 10px;font-size:13px;display:grid}.annual-cost-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(130px,1fr) 100px 140px 100px 100px;align-items:center;gap:10px;min-width:720px;padding:9px 10px;font-size:13px;display:grid}.schedule-row:last-child,.annual-cost-row:last-child{border-bottom:0}.schedule-head,.annual-cost-head{color:#697984;background:#f8fafb;font-weight:750}.attendance-actions{align-items:flex-end;gap:10px;display:flex}.attendance-actions label{color:#697984;gap:5px;font-size:12px;display:grid}.attendance-actions input[type=date],.grade-controls input,.note-input{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;height:36px;padding:0 10px;font-size:14px}.grade-controls{grid-template-columns:minmax(170px,.8fr) minmax(170px,1fr) minmax(170px,1fr) minmax(190px,1.2fr) minmax(90px,.5fr);align-items:end;gap:10px;margin-bottom:14px;display:grid}.grade-controls label{color:#697984;gap:5px;font-size:12px;display:grid}.grade-controls input,.grade-controls select{width:100%;min-width:0}.report-controls{grid-template-columns:minmax(170px,.8fr) minmax(170px,1fr) minmax(150px,.8fr) minmax(150px,.8fr)}.workflow-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-fee-table,.meal-table{border:1px solid #edf1f4;border-radius:8px;overflow:auto}.billing-fee-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(160px,1.1fr) 80px 90px 98px minmax(190px,1.2fr) 130px 110px;align-items:center;gap:10px;min-width:980px;padding:10px 12px;font-size:13px;display:grid}.billing-fee-row:last-child,.meal-wallet-row:last-child,.meal-transaction-row:last-child{border-bottom:0}.billing-fee-row strong,.meal-wallet-row strong,.meal-wallet-row small{display:block}.billing-fee-row strong,.meal-wallet-row strong{color:#172026;font-size:14px}.meal-wallet-row small{color:#758690;font-size:12px}.billing-head,.meal-head{color:#697984;background:#f8fafb;font-weight:750}.billing-fee-row input,.billing-fee-row select,.meal-form input,.meal-form select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;height:36px;padding:0 10px;font-size:14px}.billing-fee-row input:disabled{color:#7d8b94;background:#f4f7f9}.billing-workbench-stack{align-items:stretch}.billing-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.billing-kpi{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;align-content:center;gap:6px;min-height:74px;padding:12px;display:grid}.billing-kpi span{color:#697984;font-size:12px;font-weight:700}.billing-kpi strong{color:#172026;font-size:22px}.billing-kpi-warning strong{color:#c2412d}.billing-workbench-grid,.billing-report-grid{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:14px;display:grid}.billing-report-grid-single{grid-template-columns:1fr}.billing-section-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:12px;min-width:0;padding:12px;display:grid}.billing-section-panel h3,.billing-panel-title h3{color:#172026;margin:0;font-size:15px}.billing-panel-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.billing-panel-title strong,.billing-panel-title span{color:#087f87;font-size:14px;font-weight:750}.billing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.billing-form-grid-invoice{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-form-grid-payment{grid-template-columns:minmax(240px,1.2fr) 130px 120px 110px minmax(160px,1fr) auto;align-items:end}.billing-form-grid-adjustment{grid-template-columns:minmax(240px,1.2fr) 110px minmax(160px,1fr) 110px minmax(160px,1fr) auto;align-items:end}.billing-form-grid-filters{grid-template-columns:minmax(170px,1fr) 150px minmax(220px,1.2fr) auto;align-items:end}.billing-section-panel label{color:#697984;gap:5px;font-size:12px;font-weight:650;display:grid}.billing-section-panel input,.billing-section-panel select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;height:36px;padding:0 10px;font-size:14px}.billing-list{gap:7px;display:grid}.billing-list-row{color:#30424d;background:#fff;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;font-size:13px;display:grid}.billing-list-row strong,.billing-list-row small{display:block}.billing-list-row strong{color:#172026}.billing-list-row small{color:#758690;font-size:12px}.billing-picker-block{gap:8px;display:grid}.billing-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:240px;padding-right:2px;display:grid;overflow:auto}.billing-checkbox-option{background:#fff;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;min-height:54px;padding:9px 10px;display:grid}.billing-checkbox-option input{accent-color:#087f87;width:15px;height:15px}.billing-checkbox-option strong,.billing-checkbox-option small{display:block}.billing-checkbox-option strong{color:#172026;font-size:14px}.billing-checkbox-option small{color:#758690;font-size:12px}.billing-table{background:#fff;border:1px solid #edf1f4;border-radius:8px;min-width:0;overflow:auto}.billing-invoice-row,.billing-payment-row{color:#30424d;border-bottom:1px solid #edf1f4;align-items:center;gap:10px;min-width:1040px;padding:10px 12px;font-size:13px;display:grid}.billing-invoice-row{grid-template-columns:minmax(150px,1fr) minmax(100px,.7fr) minmax(120px,.8fr) 86px 100px 100px 100px minmax(180px,1.2fr) 86px}.billing-invoice-row-open{grid-template-columns:minmax(150px,1fr) minmax(100px,.7fr) minmax(120px,.8fr) 86px 100px 100px 100px minmax(180px,1.2fr);min-width:920px}.billing-payment-row{grid-template-columns:100px minmax(100px,.8fr) minmax(150px,1fr) 78px 100px minmax(150px,1fr)}.billing-invoice-row:last-child,.billing-payment-row:last-child{border-bottom:0}.billing-invoice-row strong,.billing-invoice-row small{display:block}.billing-invoice-row strong{color:#172026;font-size:13px}.billing-invoice-row small{color:#758690;font-size:12px}.billing-status{border-radius:7px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:750}.billing-empty-tag{color:#075f66;background:#e4f5f4;border-radius:7px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:750}.billing-status-issued{color:#805a00;background:#fff2c6}.billing-status-partial{color:#2457a6;background:#e6efff}.billing-status-paid{color:#075f66;background:#dff3f2}.billing-status-void{color:#6b7680;background:#eef2f4}.activation-panel{gap:16px}.activation-actions{justify-content:flex-end;display:flex;position:relative}.activation-action-menu{z-index:20;background:#fff;border:1px solid #dde4ea;border-radius:8px;gap:4px;width:168px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 28px #17202624}.activation-action-menu button{color:#172026;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;height:34px;padding:0 10px;font-size:14px;font-weight:700}.activation-action-menu button:hover{color:#075f66;background:#eef7f7}.modal-backdrop{z-index:80;background:#1720265c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.activation-dialog{background:#fff;border:1px solid #dde4ea;border-radius:8px;grid-template-rows:auto minmax(0,1fr);width:min(720px,100%);max-height:min(820px,100vh - 40px);display:grid;overflow:hidden;box-shadow:0 24px 60px #1720262e}.activation-dialog-title{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;display:flex}.activation-dialog-title h3{color:#172026;margin:0;font-size:18px}.activation-dialog-title span{color:#697984;margin-top:4px;font-size:13px;display:block}.activation-dialog-body{gap:12px;min-height:0;padding:16px;display:grid;overflow:auto}.activation-dialog-body label{color:#697984;gap:5px;font-size:12px;font-weight:650;display:grid}.activation-dialog-body input,.activation-dialog-body select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;height:36px;padding:0 10px;font-size:14px}.activation-computed-date{background:#f8fafb;border:1px solid #cfd9df;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:36px;padding:0 10px;display:flex}.activation-computed-date strong{color:#172026;font-size:14px}.activation-computed-date small{color:#697984;font-size:12px;font-weight:700}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.icon-button{color:#344550;cursor:pointer;background:#fff;border:1px solid #cfd9df;border-radius:7px;min-width:54px;height:32px;font-size:13px;font-weight:750}.icon-button:hover{color:#075f66;background:#eef7f7}.activation-management-grid{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:start;gap:14px;display:grid}.activation-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;display:grid}.activation-wide-field{grid-column:span 2}.activation-import-textarea{resize:vertical;color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-height:118px;padding:10px;font-size:14px;line-height:1.45}.activation-import-preview{background:#fff;border:1px solid #edf1f4;border-radius:8px;overflow:auto}.activation-import-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:46px minmax(110px,1fr) minmax(110px,1fr) 120px 120px 110px minmax(160px,1.2fr);align-items:center;gap:10px;min-width:860px;padding:9px 10px;font-size:13px;display:grid}.activation-import-row:last-child{border-bottom:0}.activation-import-head{color:#697984;background:#f8fafb;font-weight:750}.activation-import-ok{color:#075f66;font-weight:750}.activation-import-error{color:#c2412d;font-weight:750}.activation-calendar-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:12px;padding:12px;display:grid;overflow:auto}.activation-calendar-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.activation-calendar-toolbar h3{color:#172026;align-items:center;gap:8px;margin:0;font-size:17px;display:flex}.activation-calendar-toolbar h3 svg{color:#087f87;width:18px;height:18px}.activation-calendar-toolbar span{color:#697984;font-size:13px;font-weight:700}.activation-month-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.activation-month-controls input{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;height:36px;padding:0 10px;font-size:14px}.activation-calendar-grid{background:#fff;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;display:grid;overflow:hidden}.activation-calendar-weekday{color:#697984;background:#f8fafb;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;place-items:center;min-height:34px;font-size:12px;font-weight:750;display:grid}.activation-calendar-weekday:nth-child(7){border-right:0}.activation-calendar-day{background:#fff;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;grid-template-rows:auto minmax(0,1fr);gap:6px;min-height:126px;padding:8px;display:grid;position:relative}.activation-calendar-day-today{z-index:1;outline-offset:-4px;background:#fff1f4;outline:3px solid #e11d48;box-shadow:inset 0 0 0 1px #fff}.activation-calendar-day-today .activation-calendar-date{color:#fff;background:#be123c;border-radius:7px;place-items:center;min-width:25px;height:25px;display:inline-grid}.activation-calendar-day:nth-child(7n){border-right:0}.activation-calendar-day-muted{background:#f8fafb}.activation-calendar-day-muted .activation-calendar-date{color:#a4b0b8}.activation-calendar-date{color:#172026;width:fit-content;font-size:13px;font-weight:800}.activation-calendar-events{align-content:start;gap:6px;display:grid}.activation-event{background:#eefafa;border:1px solid #d9e8e8;border-radius:7px;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:6px;min-width:0;padding:7px;display:grid}.activation-event strong,.activation-event small,.activation-list-row strong,.activation-list-row small{display:block}.activation-event strong{color:#172026;text-overflow:clip;white-space:normal;word-break:keep-all;font-size:12px;line-height:1.35;overflow:visible}.activation-event small{color:#5f727b;word-break:keep-all;font-size:11px;line-height:1.35}.activation-event-soon{background:#fff7df;border-color:#f0cf83}.activation-event-expired{background:#fff0ed;border-color:#f1b3a9}.activation-event-actions{grid-template-columns:minmax(0,1fr);justify-items:stretch;gap:5px;display:grid}.activation-event .activation-period-select,.activation-event .activation-renew-button{width:100%}.activation-period-select{color:#172026;background:#fff;border:1px solid #bdd0d8;border-radius:6px;width:74px;height:28px;padding:0 6px;font-size:12px;font-weight:750}.activation-renew-button{color:#fff;cursor:pointer;background:#087f87;border:0;border-radius:6px;height:28px;padding:0 8px;font-size:12px;font-weight:800}.activation-renew-button:disabled{cursor:not-allowed;opacity:.52}.activation-status-active{color:#075f66;background:#dff3f2}.activation-status-soon{color:#805a00;background:#fff2c6}.activation-status-expired{color:#a43120;background:#ffe8e3}.activation-billing-prepaid{color:#075f66;background:#dff3f2}.activation-billing-future{color:#4f5f68;background:#eef2f4}.activation-billing-due{color:#a43120;background:#ffe8e3}.activation-list-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(120px,1fr) minmax(120px,.9fr) 100px 100px 130px 120px minmax(160px,1fr) 170px;align-items:center;gap:10px;min-width:1130px;padding:10px 12px;font-size:13px;display:grid}.activation-list-row-readonly{grid-template-columns:minmax(120px,1fr) minmax(120px,.9fr) 100px 100px 130px 120px minmax(160px,1fr);min-width:980px}.activation-list-row:last-child{border-bottom:0}.activation-list-head{color:#697984;background:#f8fafb;font-weight:750}.activation-list-row strong{color:#172026}.activation-list-row small{color:#758690;font-size:12px}.activation-list-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.billing-selected-invoice{color:#30424d;background:#fff;border:1px solid #edf1f4;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;padding:9px 10px;font-size:13px;display:flex}.billing-selected-invoice strong{color:#172026}.billing-method-tag{border-radius:7px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:750}.billing-method-cash{color:#075f66;background:#dff3f2}.billing-method-transfer{color:#2457a6;background:#e6efff}.billing-method-card{color:#805a00;background:#fff2c6}.billing-method-other{color:#6b7680;background:#eef2f4}.switch-row{color:#30424d;align-items:center;gap:7px;font-size:13px;font-weight:650;display:flex}.switch-row input{accent-color:#087f87;width:16px;height:16px}.meal-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.meal-summary div{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;align-content:center;gap:5px;min-height:70px;padding:12px;display:grid}.meal-summary span{color:#697984;font-size:12px;font-weight:700}.meal-summary strong{color:#172026;font-size:20px}.meal-form{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:minmax(160px,1.1fr) 120px 150px 130px minmax(180px,1.2fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.meal-form label{color:#697984;gap:5px;font-size:12px;font-weight:650;display:grid}.meal-management-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.meal-setup-panel,.meal-order-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:10px;padding:12px;display:grid}.meal-setup-panel h3{color:#172026;margin:0;font-size:15px}.meal-setup-panel label,.meal-order-controls label{color:#697984;gap:5px;font-size:12px;font-weight:650;display:grid}.meal-setup-panel input,.meal-setup-panel select,.meal-order-controls input,.meal-order-controls select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;height:36px;padding:0 10px;font-size:14px}.meal-list{gap:7px;display:grid}.meal-list-row{color:#30424d;background:#fff;border:1px solid #edf1f4;border-radius:8px;gap:3px;padding:9px 10px;font-size:13px;display:grid}.meal-list-row-split{grid-template-columns:minmax(0,1fr) auto;align-items:center}.meal-list-row strong,.meal-list-row small{display:block}.meal-list-row strong{color:#172026}.meal-list-row small{color:#758690}.meal-order-panel{background:#fff}.meal-order-controls{grid-template-columns:150px minmax(160px,1fr) minmax(180px,1.2fr) 110px 130px;align-items:end;gap:10px;display:grid}.meal-order-total{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;align-content:center;gap:2px;min-height:36px;padding:7px 10px;display:grid}.meal-order-total span{color:#697984;font-size:12px}.meal-order-total strong{color:#172026;font-size:16px}.student-order-actions{color:#697984;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.student-order-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.student-order-option{background:#fff;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;min-height:54px;padding:9px 10px;display:grid}.student-order-option-low,.meal-wallet-row-warning{background:#fff4f1}.student-order-option input{accent-color:#087f87;width:15px;height:15px}.student-order-option strong,.student-order-option small{display:block}.student-order-option strong{color:#172026;font-size:14px}.student-order-option small{color:#758690;font-size:12px}.meal-grid{grid-template-columns:minmax(340px,.95fr) minmax(420px,1.2fr);align-items:start;gap:14px;display:grid}.meal-wallet-row,.meal-transaction-row,.low-balance-row,.meal-order-row{color:#30424d;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1f4;align-items:center;gap:10px;min-width:520px;padding:10px 12px;font-size:13px;display:grid}.meal-wallet-row{cursor:pointer;grid-template-columns:minmax(140px,1fr) 92px 112px 142px;width:100%}.meal-wallet-row:hover{background:#f1fbfa}.meal-wallet-row-active{background:#dff3f2}.meal-transaction-row{grid-template-columns:100px minmax(110px,1fr) 72px 112px minmax(140px,1.1fr)}.low-balance-row{grid-template-columns:minmax(120px,1fr) minmax(130px,1fr) 100px 86px 130px;min-width:720px}.meal-order-row{grid-template-columns:100px minmax(110px,1fr) minmax(130px,1fr) minmax(130px,1fr) 70px 110px;min-width:800px}.money-positive{color:#075f66;font-weight:750}.money-negative{color:#c2412d;font-weight:750}.check-row{flex-wrap:wrap;align-items:center;gap:12px;min-height:36px;display:flex}.report-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.workflow-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.attendance-table,.grade-table{border:1px solid #edf1f4;border-radius:8px;overflow:auto}.attendance-row{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(160px,.9fr) minmax(360px,1.5fr) minmax(180px,1fr);align-items:center;gap:12px;min-width:820px;padding:10px 12px;display:grid}.attendance-row:last-child{border-bottom:0}.grade-row{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(160px,.9fr) minmax(140px,.6fr) minmax(220px,1fr);align-items:center;gap:12px;min-width:760px;padding:10px 12px;display:grid}.grade-row:last-child{border-bottom:0}.workflow-table{border:1px solid #edf1f4;border-radius:8px;overflow:auto}.workflow-row{color:#30424d;border-bottom:1px solid #edf1f4;grid-template-columns:120px minmax(150px,1fr) minmax(120px,.8fr) minmax(120px,.7fr) minmax(240px,1.4fr);align-items:center;gap:12px;min-width:780px;padding:10px 12px;font-size:13px;display:grid}.workflow-row:last-child{border-bottom:0}.workflow-row select{width:100%}.attendance-head,.grade-head,.workflow-head{color:#697984;background:#f8fafb;font-size:13px;font-weight:750}.attendance-student strong,.attendance-student small{display:block}.attendance-student strong{color:#172026;font-size:14px}.attendance-student small{color:#758690;font-size:12px}.attendance-statuses{flex-wrap:wrap;gap:7px;display:flex}.status-option{color:#344550;cursor:pointer;background:#fff;border:1px solid #d5dee4;border-radius:7px;min-width:64px;height:32px;font-size:13px;font-weight:750}.status-option-active.status-option-present{color:#075f66;background:#dff3f2;border-color:#0d8a92}.status-option-active.status-option-late{color:#805a00;background:#fff2c6;border-color:#e2a500}.status-option-active.status-option-leave{color:#2457a6;background:#e6efff;border-color:#4f7fd1}.status-option-active.status-option-absent{color:#9f2f20;background:#ffe7e2;border-color:#d5533c}.note-input{width:100%}.score-cell{min-width:0}.score-input{width:100%}.empty-state{color:#697984;background:#fbfcfd;border:1px dashed #cfd9df;border-radius:8px;place-items:center;min-height:160px;font-size:14px;display:grid}.attendance-summary{position:sticky;top:18px}.placeholder-panel{background:#fff;border:1px solid #dde4ea;border-radius:8px;min-height:420px;padding:22px}.placeholder-title{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:16px;display:flex}.placeholder-title span{color:#172026;font-size:20px;font-weight:750}.placeholder-title strong{color:#087f87;font-size:13px}.placeholder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.placeholder-item{color:#30424d;background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;align-content:start;gap:10px;min-height:92px;padding:14px;font-size:14px;font-weight:650;display:grid}.placeholder-item svg{color:#087f87;width:18px;height:18px}.section-title{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.commit-controls{align-items:flex-end;gap:10px;display:flex}.commit-controls label{color:#697984;gap:5px;font-size:12px;display:grid}select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;min-width:108px;height:36px;padding:0 10px;font-size:14px}.primary-button{color:#fff;cursor:pointer;background:#087f87;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;height:36px;padding:0 14px;font-size:14px;font-weight:750;display:inline-flex}.primary-button:disabled{cursor:not-allowed;opacity:.52}.primary-button svg{width:16px;height:16px}.secondary-button{color:#075f66;cursor:pointer;background:#fff;border:1px solid #0d8a92;border-radius:7px;justify-content:center;align-items:center;height:36px;padding:0 14px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}.danger-button{color:#8d2a1d;cursor:pointer;background:#fff8f6;border:1px solid #c64f3d;border-radius:7px;justify-content:center;align-items:center;gap:8px;height:36px;padding:0 14px;font-size:14px;font-weight:750;display:inline-flex}.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.52}.secondary-button svg,.danger-button svg{width:16px;height:16px}.preview-row{grid-template-columns:52px minmax(130px,1.2fr) 116px 74px 132px minmax(180px,1.4fr)}.preview-row strong,.preview-row small{display:block}.preview-row small{color:#758690;font-size:12px;line-height:1.4}.helper-note{color:#087f87;margin-top:6px;font-size:13px;font-weight:650}.status-badge{border-radius:7px;gap:2px;width:fit-content;max-width:100%;padding:5px 8px;font-size:12px;font-weight:750;line-height:1.2;display:grid}.status-ready{color:#075f66;background:#dff3f2}.status-invalid,.status-duplicate-in-file{color:#9f2f20;background:#ffe7e2}.status-existing-student{color:#805a00;background:#fff2c6}.summary-panel{gap:10px;padding:12px;display:grid}.summary-card{border:1px solid #edf1f4;border-radius:8px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.summary-card>div,.shared-guardian svg{color:#087f87}.summary-card svg{width:20px;height:20px}.summary-card span{color:#697984;font-size:13px}.summary-card strong{color:#172026;font-size:24px}.summary-card-warning>div,.summary-card-warning strong{color:#c2412d}.shared-guardian{background:#f5f9fc;border-radius:8px;padding:12px}.shared-guardian div{color:#172026;align-items:center;gap:8px;font-size:13px;display:flex}.shared-guardian svg{width:17px;height:17px}.shared-guardian p{color:#5a6c76;margin:8px 0 0;font-size:13px}.alert{border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;display:flex}.alert svg{flex:none;width:18px;height:18px}.alert-info{color:#075f66;background:#e4f5f4;border:1px solid #bfe6e4}.alert-error{color:#8d2a1d;background:#ffe7e2}.alert-success{color:#075f66;background:#dff3f2}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.home-layout{gap:14px;display:grid}.home-hero{background:linear-gradient(135deg,#fff4cdf0,#fffffffa 44%,#e6f7f7eb),#fff;border:1px solid #dde4ea;border-radius:8px;grid-template-columns:220px minmax(0,1fr) 240px;align-items:center;gap:20px;min-height:154px;padding:18px 22px;display:grid;overflow:hidden}.home-hero-brand,.home-hero-art{min-width:0}.home-hero-brand img{object-fit:contain;width:100%;max-height:132px}.home-hero-copy{color:#172026;gap:8px;display:grid}.home-eyebrow{color:#087f87;text-transform:uppercase;letter-spacing:0;font-size:12px;font-weight:800}.home-hero h2{color:#172026;margin:0;font-size:28px;line-height:1.18}.home-hero p{color:#5c6c76;margin:0;font-size:15px;font-weight:750}.home-hero-actions{flex-wrap:wrap;gap:8px;padding-top:4px;display:flex}.home-hero-actions .secondary-button{width:fit-content}.home-hero-art{background:#ffffffb8;border:1px solid #0d8a9229;border-radius:8px;justify-self:end;width:min(100%,230px);padding:10px 12px}.home-hero-art img{object-fit:contain;width:100%;max-height:82px}.home-grid{grid-template-columns:minmax(280px,.9fr) minmax(320px,1.15fr) minmax(320px,1fr);align-items:start;gap:16px;display:grid}.home-card{background:#fff;border:1px solid #dde4ea;border-radius:8px;gap:14px;min-width:0;padding:18px;display:grid}.home-scroll-list{gap:10px;max-height:360px;padding-right:3px;display:grid;overflow:auto}.announcement-item,.task-item,.resource-row{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px}.announcement-item,.task-item{gap:8px;padding:12px;display:grid}.announcement-item>div,.task-item>div:first-child,.resource-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.announcement-item strong,.task-item strong,.resource-row strong{color:#172026;font-size:14px}.announcement-item p,.task-item p{color:#344550;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.5}.announcement-item small,.task-item small,.resource-row small{color:#697984;overflow-wrap:anywhere;font-size:12px;display:block}.announcement-item svg{color:#d09a00;flex:none;width:16px;height:16px}.inline-actions{align-items:center;gap:6px;display:inline-flex}.icon-button{color:#344550;cursor:pointer;background:#fff;border:1px solid #cfd9df;border-radius:7px;place-items:center;width:30px;height:30px;display:inline-grid}.icon-button:hover{color:#075f66;background:#eef7f7;border-color:#0d8a92}.icon-button svg{width:15px;height:15px}.home-form{border-top:1px solid #edf1f4;gap:9px;padding-top:12px;display:grid}.home-form input,.home-form textarea,.home-form select,.task-review input,.billing-new-item-form input,.billing-new-item-form select{color:#172026;background:#fff;border:1px solid #cfd9df;border-radius:7px;width:100%;min-width:0;font-size:14px}.home-form input,.home-form select,.task-review input,.billing-new-item-form input,.billing-new-item-form select{height:38px;padding:0 10px}.home-form textarea{resize:vertical;min-height:78px;padding:9px 10px}.home-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.home-check{color:#30424d;align-items:center;gap:7px;font-size:13px;display:flex}.calendar-panel{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;gap:12px;padding:12px;display:grid}.calendar-panel-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.calendar-panel-head>svg{color:#087f87;width:24px;height:24px}.calendar-panel-head span{gap:2px;min-width:0;display:grid}.calendar-panel-head strong{color:#172026;font-size:15px}.calendar-panel-head small{color:#697984;font-size:12px}.calendar-frame{background:#fff;border:1px solid #edf1f4;border-radius:8px;width:100%;min-height:320px}.calendar-empty-preview{background:#f4fbfb;border:1px dashed #bdd9dd;border-radius:8px;gap:8px;padding:14px;display:grid}.calendar-empty-preview>span{color:#075f66;background:#dff3f2;border-radius:6px;width:fit-content;padding:4px 8px;font-size:12px;font-weight:800}.calendar-empty-preview strong{color:#172026;font-size:15px}.calendar-empty-preview p{color:#556773;margin:0;font-size:13px;line-height:1.5}.calendar-actions{flex-wrap:wrap;gap:8px;display:flex}.quick-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quick-resource{color:#172026;background:#fff;border:1px solid #edf1f4;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:13px;font-weight:750;text-decoration:none;display:flex}.quick-resource:hover{color:#075f66;background:#eef7f7;border-color:#0d8a92}.quick-resource svg{flex:none;width:15px;height:15px}.resource-list{gap:8px;display:grid}.resource-row{min-height:58px;padding:10px 12px}.task-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.task-item-submitted{background:#eef7f7;border-color:#0d8a92}.task-item-rejected{background:#fff7f5;border-color:#f1c2b8}.task-item>div:first-child span{color:#075f66;font-size:12px;font-weight:750}.task-note{background:#fff1ec;border-radius:7px;padding:8px 10px;color:#8a341f!important}.task-review{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.workflow-student-bulk{grid-column:span 2;gap:8px;min-width:0;display:grid}.workflow-student-grid{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:180px;padding:8px;display:grid;overflow:auto}.workflow-student-grid label{color:#30424d;align-items:center;gap:7px;min-height:34px;font-size:13px;display:flex}.workflow-student-grid input{accent-color:#087f87;width:15px;height:15px}.billing-new-item-form{background:#fbfcfd;border:1px solid #edf1f4;border-radius:8px;grid-template-columns:minmax(150px,1fr) 110px 130px 110px minmax(140px,1fr) 100px auto;align-items:center;gap:8px;padding:12px;display:grid}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{padding:14px;position:static}.sidebar nav{grid-template-columns:repeat(4,minmax(0,1fr))}.staff-panel{display:none}.import-layout,.student-maintenance-grid,.attendance-layout,.class-layout,.class-student-grid,.staff-grid,.billing-workbench-grid,.billing-report-grid,.activation-management-grid,.meal-grid,.meal-management-grid,.class-edit-panel{grid-template-columns:1fr}.grade-controls,.meal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-directory-row{grid-template-columns:1fr}.student-directory-head{display:none}.student-list-toolbar,.student-form-grid{grid-template-columns:1fr}.billing-kpi-grid,.activation-form-grid,.billing-form-grid-invoice,.billing-form-grid-payment,.billing-form-grid-adjustment,.billing-form-grid-filters,.billing-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-grid{grid-template-columns:1fr}.home-hero{grid-template-columns:170px minmax(0,1fr)}.home-hero-art{display:none}.billing-new-item-form,.meal-order-controls,.student-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-summary{grid-template-columns:1fr}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.placeholder-grid{grid-template-columns:1fr}.upload-panel,.section-title{flex-direction:column;align-items:stretch}.activation-actions{justify-content:flex-start}.file-drop{min-width:0}}@media (width<=640px){.workspace{padding:14px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{flex-direction:column;align-items:flex-start}.commit-controls,.attendance-actions{grid-template-columns:1fr;width:100%;display:grid}.grade-controls,.meal-form,.billing-kpi-grid,.billing-form-grid,.activation-form-grid,.billing-form-grid-invoice,.billing-form-grid-payment,.billing-form-grid-adjustment,.billing-form-grid-filters,.billing-checkbox-grid,.billing-new-item-form,.home-form-grid,.task-kpis,.workflow-student-grid{grid-template-columns:1fr}.home-hero{text-align:center;grid-template-columns:1fr;justify-items:center}.home-hero-brand img{max-height:118px}.home-hero-actions,.calendar-actions{justify-content:center}.quick-resource-grid,.task-review,.billing-list-row{grid-template-columns:1fr}.activation-wide-field{grid-column:auto}.activation-calendar-toolbar{flex-direction:column;align-items:stretch}.activation-action-menu{left:0;right:auto}.activation-dialog{max-height:calc(100vh - 28px)}.activation-dialog-title,.dialog-actions{flex-direction:column;align-items:stretch}.meal-order-controls,.student-order-grid,.report-summary{grid-template-columns:1fr}.table-row{min-width:620px}.preview-row{min-width:760px}}
