.login-screen{min-height:100dvh;display:grid;place-items:center;padding:28px 22px;background:#fff}.login-card{width:100%;max-width:360px;display:grid;gap:20px}.login-card h1{font-size:24px;letter-spacing:.02em;margin:0 0 20px}.login-card .field{gap:9px}.login-card input{min-height:50px;font-size:16px}.login-card .btn{min-height:50px}.login-card .error:empty{display:none}.account{display:flex;align-items:flex-end;flex-direction:column;gap:4px;font-size:12px;white-space:nowrap}.sync-status{background:none;border:0;color:#737981;font-size:11px;min-height:28px;padding:4px 0}.timeline-body{height:936px}.pre-wrap,.history p{white-space:pre-wrap;overflow-wrap:anywhere}.btn:disabled,button[type=submit]:disabled{opacity:.5;cursor:wait}.history details{margin:10px 0}.login-card .error{margin:0}.main .topbar{gap:12px}.person,.session-main{overflow-wrap:anywhere}
@media(max-width:760px){.location{font-size:16px}.account{font-size:11px}.login-screen{align-items:start;padding-top:max(12vh,55px)}.timeline-head,.timeline-body{grid-template-columns:35px repeat(var(--lanes),minmax(92px,1fr))}}
/* Quiet white surfaces; colour identifies actions and states. */
.card{border:1px solid #e8edf4;border-radius:16px;box-shadow:none;background:#fff}.card-head{padding:19px 20px;border-bottom:1px solid #eef1f6}.card-head h2{font-size:16px;letter-spacing:0}.page-head{gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.page-head h1,.welcome h1{font-size:26px;letter-spacing:0;font-weight:700}.btn{min-height:42px;border-radius:10px;font-weight:600;gap:7px}.btn.secondary{background:#fff;border:1px solid #dfe6ef;color:#46566b}.btn.soft{background:#eff5ff;color:#2563eb}.btn:disabled{cursor:not-allowed;opacity:.48}.btn svg{width:17px;height:17px}.text-link{font-weight:500}.quick-action{border:1px solid #e6ecf3;border-radius:14px;box-shadow:none;background:#fff;min-height:78px}.quick-icon{background:#edf4ff;color:#2563eb;border-radius:12px}.quick-action:nth-child(3) .quick-icon{background:#fff5e4;color:#b47d28}.quick-action:nth-child(4) .quick-icon{background:#eaf6f3;color:#428777}.stats{border-color:#e8edf4}.stat .label{color:#7b8698}.stat .number{font-weight:650}.pill{background:#eaf6ef;color:#2d8359;font-size:11px;font-weight:600;border-radius:7px}.pill.amber{background:#fff4dd;color:#a97622}.pill.red{background:#fceded;color:#b85d5d}.pill.gray{background:#f1f3f6;color:#8490a0}.task-icon{background:#f0f5fc;color:#57799e}.task{gap:13px}.menu-card .task{padding:18px 20px;border-bottom:1px solid #eef1f6}.menu-card .task:last-child{border:0}.logout-task{color:#8a6970}.room-hours,.field-heading,.permission-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.access-badge{display:inline-flex;padding:5px 8px;border-radius:6px;background:#f2f5f9;color:#708096;font-size:11px;font-weight:500}.permission-action{display:flex;align-items:center;gap:9px}.permission-action small{color:#8b96a5}.staff-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.staff-card .actions{margin-top:16px}.staff-card h3{font-size:16px}.account-login{margin:0;padding:12px 14px;background:#f6f8fb;border-radius:9px;color:#66758b}.permission-header{margin:24px 0 12px}.permission-header h3{font-size:15px;margin:0}.permission-grid{padding:0;margin:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.permission-grid label,.check-setting{display:flex;align-items:center;gap:9px;min-height:42px;font-size:13px;color:#48586d}.permission-grid label{border:1px solid #e8edf4;padding:10px;border-radius:9px}.permission-grid input,.check-setting input{width:17px;height:17px;min-height:0;margin:0;flex-shrink:0;accent-color:#2868dc}.shift-editor-person{display:flex;justify-content:space-between;gap:10px;margin:0 0 18px;font-weight:600}.shift-presets{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 22px}.shift-presets label{position:relative;cursor:pointer}.shift-presets input{position:absolute;opacity:0;width:1px;height:1px}.shift-presets span{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:70px;padding:12px;border:1px solid #e2e8f0;border-radius:11px;font-size:14px;font-weight:600;background:#fff;color:#536277}.shift-presets small{font-size:11px;font-weight:400;opacity:.8}.shift-presets input:checked+span{background:#eff5ff;border-color:#6f9feb;color:#2765bc;box-shadow:0 0 0 1px #6f9feb}.shift-presets input:focus-visible+span{outline:2px solid #2466dc;outline-offset:3px}.shift-times[hidden]{display:none}.roster button small,.shift-chip small{display:block;font-size:10px;margin-top:5px;font-weight:400}.roster button,.shift-chip{font-weight:600;border-radius:8px}.roster button:disabled,.shift-chip:disabled{opacity:1;cursor:default}.roster button.early,.mini-roster button.early,.shift-chip.early{background:#eaf2ff;color:#386eb5}.roster button.late,.mini-roster button.late,.shift-chip.late{background:#f0edf8;color:#8572ab}.roster button.rest,.mini-roster button.rest,.shift-chip.rest{background:#eef2f5;color:#7c8b9a}.roster button.leave,.mini-roster button.leave,.shift-chip.leave{background:#fff1e4;color:#b17b46}.roster button.unassigned,.mini-roster button.unassigned,.shift-chip.unassigned{background:#fafbfc;color:#acb4c0}.shift-chip{border:0;padding:10px 16px;min-width:106px;min-height:48px;font-size:13px}.roster-legend{gap:15px;border-top:1px solid #eef1f6;padding:16px 20px}.dot.early{background:#719fe0}.dot.late{background:#a194bd}.dot.rest{background:#acb8c6}.dot.leave{background:#dcab70}.setup-empty{text-align:center;padding:20px 6px 30px}.setup-empty p{margin:0 0 20px}.setup-empty .btn{margin:auto}.person-heading{display:flex;gap:12px;align-items:center}.person-heading h3{margin:0 0 5px}.person p:empty{display:none}.person p{font-size:13px;line-height:1.7}.form-footer{border-top:1px solid #edf1f6;padding-top:18px;margin-top:22px}.modal-head{border-bottom:1px solid #edf1f6}.modal-head h2{font-size:19px}.field-heading .text-link{font-size:12px;padding:0;min-height:30px}.list-top h3{font-weight:650}.session-main h3{font-weight:600}.session-main p{line-height:1.65}
@media(max-width:760px){.page-head{gap:10px;margin-bottom:18px}.page-head h1,.welcome h1{font-size:23px}.page-head .btn{padding:11px 14px;font-size:13px}.card{border-radius:13px}.card-head{padding:16px}.card-head h2{font-size:15px}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-action{min-height:72px;padding:13px 12px;gap:10px}.quick-action strong{font-size:13px}.quick-icon{width:36px;height:36px;flex-shrink:0}.quick-icon svg{width:18px;height:18px}.schedule-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px}.schedule-toolbar #search{grid-column:1/-1;width:100%}.schedule-toolbar input[type=date]{min-width:0;width:100%;font-size:13px}.schedule-toolbar .segmented button{padding:8px 10px;font-size:12px}.permission-grid{gap:7px}.permission-grid label{font-size:12px;padding:10px 8px}.permission-header .meta{font-size:11px}.shift-presets{gap:9px}.shift-editor-person{font-size:14px}.staff-card{padding:17px 16px}.menu-card .task{padding:17px 16px}.roster-toolbar{gap:8px}.roster-toolbar .meta{order:4;width:100%;font-size:12px;padding-top:5px}.roster-toolbar .btn{padding:8px 12px;min-height:36px}.roster-legend{padding:14px 16px;font-size:11px}.bottom-nav{box-shadow:0 -3px 18px #30476605}.form-footer>.btn{flex:1}.account{max-width:43%;white-space:normal;text-align:right}.location{font-size:15px}.shift-item{padding:14px 16px}}

/* Small brand details; keep the working canvas white. */
.brandmark{background:none;border-radius:10px;width:40px;height:40px}.location img{flex-shrink:0;border-radius:8px}.welcome-side{display:flex;align-items:center;gap:22px}.welcome-art{width:96px;height:56px;flex-shrink:0}.welcome{min-height:112px}.task .count.needs-attention{background:#fff3df;color:#a5752c}.quick-action:first-child .quick-icon{background:#edf4ff;color:#2864d8}.login-card>img{width:68px;height:68px;border-radius:18px;margin-bottom:2px}.login-card h1{margin-bottom:12px}.login-card .btn{border-radius:12px}.login-card input{border-radius:11px}.stat:nth-child(2) .number{color:#3b8b76}.stat:nth-child(3) .number{color:#b17c34}.mini-roster td:first-child{max-width:70px;overflow-wrap:anywhere}.audit{padding-left:20px;padding-right:20px}
@media(max-width:760px){.welcome{min-height:100px;padding-top:21px;padding-bottom:21px}.welcome-side{gap:12px}.welcome-art{width:59px;height:42px}.welcome-date{max-width:100px;line-height:1.6;text-align:right}.location{gap:7px;min-width:0}.location img{width:27px;height:27px}.location b{font-size:14px;white-space:nowrap}.topbar .account{font-size:10px}.quick-actions .quick-action{flex-direction:row;justify-content:flex-start;text-align:left}.card-body{padding-left:16px;padding-right:16px}.session{padding:17px 14px}.calendar-tools{padding-left:12px;padding-right:12px;gap:8px}.calendar-tools .legend{gap:9px}.mini-roster{padding-left:8px;padding-right:8px}.roster button:disabled{opacity:1}.audit{padding:16px}.form-footer{flex-wrap:wrap}.card .list-card{padding-left:16px;padding-right:16px}}
@media(max-width:370px){.location b{font-size:13px}.location img{width:24px;height:24px}.welcome-art{width:46px}.welcome-side{gap:6px}.permission-grid{grid-template-columns:1fr}.schedule-toolbar .segmented button{padding-left:7px;padding-right:7px}.calendar-tools select{max-width:120px}.session{padding-left:10px;padding-right:10px}}
