:root{color:#18263d;background:#f1f4fa;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px}*{box-sizing:border-box}button,input,select{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #82afff}button{cursor:pointer;color:inherit;background:0 0;border:0}.app{max-width:1080px;margin:auto;padding:24px 24px 108px}header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.brand{align-items:center;gap:10px;display:flex}.mark{color:#fff;background:#1b4bdf;border-radius:12px;place-items:center;width:42px;height:42px;font-size:24px;font-weight:800;display:grid}h1{margin:0;font-size:20px}h2{margin:0;font-size:19px}h3{margin:0;font-size:16px}.muted{color:#728096;font-size:14px}.badge{color:#3358b8;background:#e8edff;border-radius:5px;padding:3px 6px;font-size:12px}.account{background:#fff;border:1px solid #dce3f0;border-radius:10px;padding:9px 12px;font-size:14px}.hero{color:#fff;background:#173ec1;border-radius:20px;margin-bottom:20px;padding:24px;position:relative;overflow:hidden}.hero .muted{color:#c4d2ff}.big{letter-spacing:-1px;margin:14px 0 8px;font-size:42px;font-weight:750}.track{background:#e8edf5;border-radius:9px;height:7px;margin:12px 0;overflow:hidden}.hero .track{background:#4565d0}.track i{background:#1b4bdf;border-radius:9px;height:100%;display:block}.hero .track i{background:#8cd3ff}.split{justify-content:space-between;align-items:center;gap:12px;display:flex}.stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;display:grid}.stat{background:#fff;border:1px solid #e6eaf2;border-radius:14px;padding:16px}.num{margin-top:8px;font-size:26px;font-weight:700}.section{justify-content:space-between;align-items:center;margin:24px 0 14px;display:flex}.tabs{gap:8px;margin:16px 0;display:flex}.chip{color:#677489;background:#fff;border:1px solid #e1e6ef;border-radius:9px;padding:9px 16px;font-size:14px}.chip.active{color:#fff;background:#182f70;border-color:#182f70}.schools{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.card{text-align:left;background:#fff;border:1px solid #e4e9f2;border-radius:16px;width:100%;padding:19px}.card h3{line-height:1.5}.pill{color:#3f5da6;white-space:nowrap;background:#edf2ff;border-radius:6px;padding:4px 7px;font-size:12px}.card .muted{margin-top:6px}.ratio{color:#224ccc;font-size:23px;font-weight:700}.row{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.row:last-child{border:0}.panel{background:#fff;border:1px solid #e4e9f2;border-radius:16px;margin-bottom:16px;padding:20px}.primary{color:#fff;background:#1b4bdf;border-radius:12px;padding:14px 18px;font-weight:600}.secondary{color:#2851bb;background:#edf2ff;border-radius:10px;padding:10px 14px;font-size:14px}.danger{color:#af3b42}.wide{width:100%;margin-top:16px}label{margin:17px 0 8px;font-size:14px;font-weight:500;display:block}input,select{color:#18263d;background:#f9fbfe;border:1px solid #dce3ed;border-radius:10px;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;padding:0 13px}nav button.active{color:#1b4bdf;font-weight:650}nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px;margin:0 auto 5px;display:block}dialog{color:#18263d;border:0;border-radius:20px;width:min(92%,520px);max-height:88dvh;padding:24px}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#101f3d70}.close{padding:0 8px;font-size:25px}.toast{color:#fff;z-index:20;text-align:center;background:#142344;border-radius:12px;max-width:90%;padding:12px 22px;font-size:14px;position:fixed;bottom:100px;left:50%;transform:translate(-50%)}.empty{text-align:center;color:#728096;padding:35px 10px}.help{color:#77849a;margin-top:12px;font-size:13px;line-height:1.7}.status{color:#b35e24;font-size:14px}.done{color:#24816e}.smallgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.smallgrid>div{min-width:0}input[type=date],input[type=month],input[type=time]{appearance:none;text-align:left;display:block}input::-webkit-date-and-time-value{text-align:left;min-width:0;height:46px;line-height:46px}input::-webkit-datetime-edit{min-width:0;padding:0}details summary{cursor:pointer;color:#456098;font-size:14px}details p{color:#6d7b91;font-size:14px;line-height:1.7}@media (width<=600px){.app{padding:20px 16px 110px}h1{font-size:18px}.account{padding:8px;font-size:13px}.hero{padding:21px}.big{font-size:38px}.schools{grid-template-columns:1fr}.stats{gap:8px}.stat{padding:13px 10px}.stat .muted{font-size:12px}.num{font-size:23px}.section{margin-top:22px}.card{padding:18px}}@media (prefers-reduced-motion:no-preference){.card:active,.primary:active{transform:scale(.99)}}.carrier-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.carrier-panel{border-top:4px solid #2872d7;min-width:0}.carrier-1{border-top-color:#cb4958}.carrier-2{border-top-color:#218a8b}.business-fields{grid-template-columns:1fr;gap:0 12px;display:grid}.business-field{min-width:0}@media (width<=800px){.carrier-grid{grid-template-columns:1fr;gap:0}.business-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=350px){.business-fields,.smallgrid{grid-template-columns:1fr}}.chart-legend{gap:16px;margin-top:20px;font-size:13px;display:flex}.chart-legend span{align-items:center;gap:6px;display:flex}.chart-legend i{border-radius:2px;width:9px;height:9px}.bar-chart{border-bottom:1px solid #dce3f0;gap:6px;height:175px;display:flex}.bar-column{flex-direction:column;flex:1;justify-content:flex-end;min-width:0;display:flex}.bars{background:repeating-linear-gradient(0deg,#0000 0 35px,#edf1f8 35px 36px);justify-content:center;align-items:flex-end;gap:2px;height:145px;display:flex}.bar{border-radius:3px 3px 0 0;width:28%;min-width:2px;max-width:40px}.daily-bars{gap:2px}.daily-bars .bars{gap:1px}.bar-label{text-align:center;color:#78859a;height:26px;font-size:12px;line-height:26px}nav{padding:8px 12px max(12px, env(safe-area-inset-bottom));z-index:5;background:#fff;border-top:1px solid #e2e8f1;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{color:#8993a4;flex:1;max-width:160px;padding:6px 0;font-size:13px}@media (width<=600px){.bar-chart{gap:3px}.metric-grid .num{font-size:23px}}.employee-record{border-bottom:1px solid #edf0f5;padding:16px 0}.employee-record:last-child{border:0}.employee-metrics{grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:12px;display:grid}.employee-metrics strong{margin-top:6px;font-size:20px;display:block}.employee-record .muted{font-size:13px}body{margin:0}.block{display:block}.inline{text-decoration:none;display:inline-block}.checkbox{align-items:center;gap:10px;line-height:1.6;display:flex}.checkbox input{flex:none;width:20px;height:20px;min-height:20px}.login-shell{max-width:460px;margin:8vh auto;padding:24px}.login-shell>.mark{margin-bottom:18px}.login-shell .panel{margin-top:24px}.login-shell h1{font-size:25px}.setup-hint{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.modal-close{float:right}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}button:disabled{opacity:.6;cursor:wait}a{color:#2851bb}dialog h2{padding-right:24px}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;margin-bottom:18px;display:grid}.chart-max{color:#8993a4;margin-top:16px;margin-bottom:10px;font-size:12px}.panel+.panel{margin-top:14px}@media (width<=600px){.setup-hint{flex-direction:column;align-items:flex-start}}.prepaid-metrics{border-top:1px solid #edf0f5;margin-top:16px;padding-top:16px}.prepaid-metrics h3{margin-bottom:12px;font-size:14px}.prepaid-row{margin-top:10px;font-size:13px}.prepaid-row .track{height:5px;margin:7px 0}.prepaid-row strong{font-weight:600}.prepaid-heading{margin-top:22px}.prepaid-tiers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px;display:grid}.prepaid-tiers>div{background:#f5f8ff;border-radius:8px;padding:8px}.prepaid-tiers span,.prepaid-tiers strong,.prepaid-tiers small{margin:3px 0;display:block}.prepaid-tiers small{color:#728096}.school-crest{background:#f5f8ff;border-radius:10px;justify-content:center;align-items:center;width:100%;height:88px;margin-bottom:16px;padding:8px;display:flex;overflow:hidden}.school-crest img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.school-crest-s2,.school-crest-s7{background:#173b76}.school-crest-s1{background:#fff;height:156px;padding:0}.school-crest-s1 img{object-fit:contain;clip-path:inset(2px);border:0;outline:0;width:auto;max-width:100%;height:100%;max-height:100%}.school-crest-s3,.school-crest-s4,.school-crest-s6{background:#fff}.school-crest-s3{background:#fff;width:72px;height:72px;margin-left:auto;margin-right:auto;padding:0;position:relative}.school-crest-s3 img{width:auto;max-width:none;height:72px;max-height:none;position:absolute;top:0;left:0}.personnel-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 20px;display:grid}.personnel-info{min-width:0}.personnel-info h3{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.personnel-info .muted{overflow-wrap:anywhere}.personnel-info .help{margin-top:6px}.personnel-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.personnel-status-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.personnel-actions select{flex:0 0 96px;width:96px;height:44px;min-height:44px;margin:0;padding:0 10px;font-size:14px}.personnel-actions button{white-space:nowrap;min-width:68px;height:44px;min-height:44px;margin:0;padding:0 14px;font-size:14px}@media (width<=600px){.personnel-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px 0}}
