/* Approved navy/green tokens are inherited; employer colour is never the only label. */
[hidden]{display:none!important}
input,select,textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}
button,summary,select,input:not([type=hidden]):not([type=checkbox]):not([type=radio]){min-height:44px}
button,summary{touch-action:manipulation}
summary{padding-block:10px;cursor:pointer;box-sizing:border-box}
input[type=checkbox],input[type=radio]{width:24px;height:24px;min-height:24px}
label:has(>input[type=checkbox]),label:has(>input[type=radio]){min-height:44px;display:flex;align-items:center;gap:10px}
button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #fff;outline-offset:2px}
.calendar-month-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:center}
.calendar-month-nav #calendarTitle{margin:0;font-size:18px}
.calendar-controls{gap:6px;padding:0;margin-top:8px}
.calendar-controls .calendar-actions{flex-wrap:nowrap}
.calendar-controls [data-calendar-dates]{flex:1}
#calendarToday{flex:0 0 auto}
.cancellation-actions{display:flex;flex-wrap:wrap;gap:6px}
#dateSelectionToggle{margin-top:12px}
#calendarGrid~.fine-print{font-size:13px}
.topbar{padding-top:20px;padding-bottom:8px}
#status{margin-block:8px;font-size:13px}
.calendar-controls label{margin:0}
#calendarTitle{font-size:20px;font-weight:700;display:block;width:100%;margin-block:10px;text-align:center}
#calendarGrid,#calendarGrid.working-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;align-items:stretch}
#calendarGrid .calendar-date-wrap{min-width:0;display:flex;flex-direction:column;gap:2px}
#calendarGrid .calendar-cell,#calendarGrid.working-date-grid .calendar-cell{width:100%;min-height:92px;min-width:0;padding:4px!important;gap:3px;font-size:14px;overflow:hidden;flex:1}
#calendarGrid .calendar-badge,#calendarGrid.working-date-grid .calendar-badge{display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:1.5;text-align:left}
#calendarGrid .empty-working-date .calendar-cell{background:transparent;border-style:dashed}
#calendarGrid .empty-working-date .calendar-number{color:var(--muted,#b4c3d4)}
#calendarGrid .calendar-date-wrap>[data-quick-date]{min-height:44px;font-size:11px;line-height:1.2;padding:3px 1px}
#calendarGrid .calendar-adjust{min-height:44px;font-size:11px;padding:3px 1px}
#selectedDayPanel,#inlineShiftEditor{margin:16px 0;padding:14px;border:1px solid var(--line,#304355);border-radius:12px;scroll-margin-top:16px}
#selectedDayPanel h2{font-size:20px}
.calendar-shift,.calendar-shift h3,.shift-breakdown,.employer-summary,.employer-summary p{overflow-wrap:anywhere;min-width:0}
.calendar-shift .worked-control{padding:8px;background:#123d32;border-radius:8px;min-height:44px}
#daySelectBoth,#saveShift{background:var(--green,#40d8a1);color:#08131f}
#inlineShiftEditor label small,.simple-booking label small{display:block;font-size:13px;line-height:1.5;font-weight:400}
.employer-summary{text-align:left;padding:16px}
.employer-summary h3{margin-block:0 8px}.employer-summary p{font-size:15px;line-height:1.5;margin-block:8px}
.manager-form h3,.job-setup h3{border-bottom:1px solid var(--line,#304355);padding-bottom:8px}
#dateJump{padding:10px;border:1px solid var(--line,#304355)}
#calendarAlignmentLabel:empty{display:none}
.tabs [aria-current=page]{color:var(--green,#40d8a1);border-top:3px solid currentColor;font-weight:700}
@media(max-width:600px){.calendar-badge .badge-hours{display:none}}
@media(max-width:420px){main{padding-left:6px!important;padding-right:6px!important}#calendarGrid,#calendarGrid.working-date-grid{gap:0}.calendar-weekdays{gap:0}#selectedDayPanel,#inlineShiftEditor{padding:10px}#calendarGrid .calendar-cell{border-radius:5px}.calendar-actions{gap:5px}#calendarGrid button{box-sizing:border-box}}
