:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#182b43;background:#f2f6fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}.topbar{background:#123d70;color:#fff;padding:16px max(20px,calc((100vw - 1040px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar strong,.topbar small{display:block}.topbar small{opacity:.8;font-size:.82rem;margin-top:3px}.top-user{font-size:.9rem;display:flex;gap:14px;align-items:center}.top-user a{color:white}.container{max-width:1040px;margin:28px auto;padding:0 20px}.narrow{max-width:520px}.login-wrap{padding-top:10vh}.brand-mark{width:54px;height:54px;border-radius:16px;background:#e7f2ff;color:#14508b;display:grid;place-items:center;font-weight:800;font-size:1.15rem;margin-bottom:18px}.page-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.page-title h1{font-size:1.5rem;margin:0}.page-title nav{display:flex;gap:14px;flex-wrap:wrap}.page-title nav a{color:#15528d;text-decoration:none;font-weight:600;font-size:.9rem}.panel,.stat-card{background:#fff;border:1px solid #e2eaf2;border-radius:18px;padding:22px;box-shadow:0 8px 24px #163b5a0a;margin-bottom:18px}.panel h2{margin:0 0 14px;font-size:1.1rem}.welcome{display:flex;justify-content:space-between;align-items:center;gap:20px}.welcome h2{font-size:1.45rem;margin:2px 0}.eyebrow{margin:0;color:#2869a9;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pill{background:#eaf5ff;color:#16548e;border-radius:99px;padding:9px 13px;font-weight:700;font-size:.83rem}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat-card span{display:block;color:#64778c;font-size:.86rem}.stat-card strong{display:block;margin-top:9px;font-size:1.2rem}.muted{color:#66798e;line-height:1.5}.settings-summary{margin:0}.settings-summary div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #edf1f5;padding:12px 0}.settings-summary dt{color:#63758a}.settings-summary dd{margin:0;text-align:right;font-weight:600}.notice{background:#fff9e8;border:1px solid #f5df9b;border-radius:14px;padding:15px 18px;color:#604814;line-height:1.5}.form-grid{display:grid;gap:15px}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{display:grid;gap:7px;font-weight:600;font-size:.92rem}.form-grid input{font:inherit;border:1px solid #cbd7e3;border-radius:10px;padding:11px 12px;min-width:0;color:#182b43;background:white}.form-grid input:focus{outline:3px solid #c5e2ff;border-color:#367cb7}.form-grid small{font-weight:400;color:#6a7a8c;line-height:1.4}.button{border:0;border-radius:11px;padding:12px 16px;font:inherit;font-weight:700;cursor:pointer}.button.primary{background:#1768ac;color:#fff}.button.primary:hover{background:#11578f}.alert{padding:12px 14px;border-radius:11px;margin:12px 0;line-height:1.45}.alert.error{background:#fff0f0;color:#8e2020}.alert.success{background:#eaf8ef;color:#176237}.day-picker{grid-column:1/-1;border:1px solid #dce5ee;border-radius:12px;padding:12px;display:flex;gap:10px 18px;flex-wrap:wrap}.day-picker legend{font-weight:700;padding:0 5px}.day-picker .check-label{display:flex;align-items:center;gap:6px;font-weight:500}.day-picker input{width:16px;height:16px}.time-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.time-pair label{display:grid;gap:7px;font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:11px 9px;border-bottom:1px solid #e9eef3;white-space:nowrap}th{font-size:.82rem;color:#61758a}.footer{padding:24px;text-align:center;color:#718197;font-size:.85rem}.small{font-size:.84rem}hr{border:0;border-top:1px solid #e6edf3;width:100%;margin:2px 0}.form-grid hr{grid-column:1/-1}code{background:#edf1f5;padding:2px 5px;border-radius:4px}@media(max-width:700px){.container{margin:20px auto;padding:0 14px}.topbar{padding:14px}.page-title{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr}.welcome{align-items:flex-start;flex-direction:column}.two-col{grid-template-columns:1fr}.time-pair{grid-template-columns:1fr 1fr}.panel{padding:18px}.settings-summary div{align-items:flex-start;flex-direction:column;gap:5px}.settings-summary dd{text-align:left;overflow-wrap:anywhere}.top-user{font-size:.82rem}}
.button.secondary{background:#eef3f8;color:#23425e;padding:8px 10px;font-size:.82rem}
