/* Final shared employee layout. Scoped to employee portal only. */
#app{--employee-accent:#1677f5;--employee-tint:#edf4ff;--employee-chart:#6ba5f5}
#app main>section.hidden,#app.hidden,header#header.hidden{display:none!important}
#app>nav{display:none!important}
#app main #hours .quick-card,#app main #hours .employee-desktop-quick{display:none!important}
#app main #hours .dashboard,#app main #hours .employee-overview-grid,#app main #hours .dash-stats{position:static!important;transform:none!important;inset:auto!important;width:100%!important;min-width:0!important}
#app main #hours .dashboard::before,#app main #hours .dashboard::after{content:none!important;display:none!important}
#app main #hours .dash-greeting{margin:0 0 12px!important;padding:0!important}
#app #dashboardAddHours{background:var(--employee-accent)!important}
#app #mobileBottomNav{display:flex!important;position:fixed!important;inset:auto 0 0!important;z-index:100!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;height:auto!important;min-height:58px!important;max-height:none!important;padding:6px 12px calc(6px + env(safe-area-inset-bottom))!important;border-radius:0!important;border:0!important;border-top:1px solid #e4e7ec!important;background:#fff!important;box-shadow:0 -2px 12px rgba(16,24,40,.04)!important}
#app #mobileBottomNav>button{display:flex!important;flex:0 1 150px!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;height:44px!important;min-height:44px!important;min-width:0!important;padding:7px 12px!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#667085!important}
#app #mobileBottomNav>button.hidden{display:none!important}
#app #mobileBottomNav>button.active{background:var(--employee-tint)!important;color:var(--employee-accent)!important}
#app #mobileBottomNav .bottom-nav-icon{display:flex!important;width:23px!important;height:23px!important;flex:0 0 23px!important}
#app #mobileBottomNav svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#app #mobileBottomNav small{font-size:12px!important;line-height:1.2!important;font-weight:600!important}
#app>main{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}
#app main #hours .series-day{background:var(--employee-chart)!important}
#app main #hours .employee-calendar-day.today{box-shadow:inset 0 0 0 1px var(--employee-accent)!important}
#app main #hours .employee-calendar-day[aria-pressed=true]{outline-color:var(--employee-accent)!important}
#employeeAppearance{padding:18px;margin-bottom:16px;background:#fff;border:1px solid #e4e7ec;border-radius:14px}
#employeeAppearance h3{margin:0 0 12px}#employeeAppearance .appearance-options{display:flex;flex-wrap:wrap;gap:10px}
#employeeAppearance button{display:flex;align-items:center;gap:8px;border:1px solid #dce3ec;border-radius:10px;background:#fff;color:#344054;min-height:44px;padding:9px 12px;font-size:14px}
#employeeAppearance button[aria-pressed=true]{border-color:var(--employee-accent);box-shadow:0 0 0 1px var(--employee-accent)}
#employeeAppearance i{display:block;width:16px;height:16px;border-radius:50%}
@media(min-width:701px){
 #app>main{width:100%!important;max-width:1440px!important;margin:0 auto!important;padding:18px 24px calc(82px + env(safe-area-inset-bottom))!important}
 #app main #hours .dashboard{display:block!important;margin:0!important;padding:0!important}
 #app main #hours .dash-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:auto!important;gap:12px!important;padding:0!important;margin:0!important}
 #app main #hours .dash-stat{display:flex!important;align-items:center!important;gap:12px!important;height:auto!important;min-height:82px!important;padding:12px 16px!important;border-radius:14px!important}
 #app main #hours .dash-stat .stat-icon{position:static!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;font-size:23px!important;margin:0!important}
 #app main #hours .dash-stat>div:not(.stat-icon){position:static!important;min-width:0!important;margin:0!important;padding:0!important}
 #app main #hours .dash-stat .label{font-size:13px!important;line-height:1.2!important;margin:0!important}
 #app main #hours .dash-stat .value{font-size:26px!important;line-height:1.2!important;margin:3px 0!important}
 #app main #hours .dash-stat .hint{font-size:11px!important;margin:0!important}
 #app main #hours .employee-overview-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:16px!important;margin:14px 0 0!important;align-items:stretch!important}
 #app main #hours .employee-overview-grid>.card{height:auto!important;min-height:0!important;padding:16px!important;position:static!important;transform:none!important}
 #app main #hours .employee-calendar-day{height:38px!important;min-height:38px!important}
 #app main #hours .employee-calendar-weekdays{margin:10px 0 6px!important}
 #app main #hours .employee-calendar-legend{margin:10px 0!important}
 #app main #hours .employee-calendar-details{padding-top:8px!important}
}
@media(min-width:701px) and (max-height:650px){
 header#header{min-height:0!important;padding:8px 18px!important}header#header .head{min-height:0!important}header#header h1{font-size:23px!important}
 #app>main{padding-top:10px!important;padding-left:16px!important;padding-right:16px!important}
 #app main #hours .dash-greeting h2{font-size:20px!important;margin:0!important}
 #app main #hours .dash-date{font-size:12px!important}
 #app main #hours .dash-greeting{margin-bottom:8px!important}
 #app main #hours .dash-stat{min-height:60px!important;padding:8px 12px!important;gap:8px!important}
 #app main #hours .dash-stat .value{font-size:22px!important;margin:0!important}
 #app main #hours .dash-stat .stat-icon{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;font-size:20px!important}
 #app main #hours .dash-stat .hint{display:none!important}
 #app main #hours .employee-overview-grid{gap:12px!important;margin-top:10px!important}
 #app main #hours .employee-overview-grid>.card{padding:10px 12px!important}
 #app main #hours .section-head h2{font-size:16px!important;margin:0!important}
 #app main #hours .employee-calendar-day{height:25px!important;min-height:25px!important;gap:0!important;padding:2px!important}
 #app main #hours .employee-calendar-day small{display:none!important}
 #app main #hours .employee-calendar-weekdays,#app main #hours .employee-calendar-grid{gap:3px!important}
 #app main #hours .employee-calendar-legend{margin:6px 0!important}
 #app main #hours .week-series-group{height:80px!important}
 #app main #hours .week-chart{margin-top:8px!important;min-height:0!important}
 #app main #hours .week-series-legend{margin-top:6px!important}
 #app #dashboardAddHours{min-height:40px!important;padding:9px 14px!important}
}
@media(max-width:700px){#app #mobileBottomNav{gap:0!important;padding-left:4px!important;padding-right:4px!important}#app #mobileBottomNav>button{flex:1 1 20%!important;flex-direction:column!important;gap:3px!important;padding:3px!important;height:52px!important}#app #mobileBottomNav small{font-size:11px!important}}
/* Optional employee dark appearance; admin/agency pages are independent. */
#employeeAppearance h4{font-size:14px;margin:14px 0 8px;color:inherit}
body[data-employee-theme=dark]{background:#111c29!important;color:#edf3ff!important}
body[data-employee-theme=dark] #app{--employee-dark-panel:#192637;--employee-dark-line:#344253;color:#edf3ff!important}
body[data-employee-theme=dark] #app main,body[data-employee-theme=dark] #app .dashboard,body[data-employee-theme=dark] #app .profile-page,body[data-employee-theme=dark] #app .week-page,body[data-employee-theme=dark] #app .holiday-page{background:transparent!important;color:#edf3ff!important}
body[data-employee-theme=dark] #app .card,body[data-employee-theme=dark] #app .dash-stat,body[data-employee-theme=dark] #app #employeeAppearance,body[data-employee-theme=dark] #app .week-table-card,body[data-employee-theme=dark] #app .week-actions-card,body[data-employee-theme=dark] #app .profile-card,body[data-employee-theme=dark] #app .earnings-history-card,body[data-employee-theme=dark] #app .earnings-payslip-card,body[data-employee-theme=dark] #app .employee-expense-row,body[data-employee-theme=dark] #app .st-card{background:#192637!important;color:#edf3ff!important;border-color:#344253!important;box-shadow:none!important}
body[data-employee-theme=dark] #app h2,body[data-employee-theme=dark] #app h3,body[data-employee-theme=dark] #app h4,body[data-employee-theme=dark] #app .value,body[data-employee-theme=dark] #app .section-head b,body[data-employee-theme=dark] #app .week-series-key b,body[data-employee-theme=dark] #app label{color:#edf3ff!important}
body[data-employee-theme=dark] #app .muted,body[data-employee-theme=dark] #app .small,body[data-employee-theme=dark] #app .dash-date,body[data-employee-theme=dark] #app .label,body[data-employee-theme=dark] #app .hint,body[data-employee-theme=dark] #app small,body[data-employee-theme=dark] #app .week-series-legend,body[data-employee-theme=dark] #app .employee-calendar-weekdays,body[data-employee-theme=dark] #app .employee-calendar-legend,body[data-employee-theme=dark] #app .employee-calendar-details{color:#b3bfd0!important}
body[data-employee-theme=dark] #app input,body[data-employee-theme=dark] #app select,body[data-employee-theme=dark] #app textarea,body[data-employee-theme=dark] #app button.secondary,body[data-employee-theme=dark] #app #employeeAppearance button,body[data-employee-theme=dark] #app .employee-calendar-nav button{background:#111c29!important;color:#edf3ff!important;border-color:#344253!important;color-scheme:dark}
body[data-employee-theme=dark] #app input::placeholder,body[data-employee-theme=dark] #app textarea::placeholder{color:#a5b4c6!important}
body[data-employee-theme=dark] #app #mobileBottomNav{background:#192637!important;border-color:#344253!important}
body[data-employee-theme=dark] #app #mobileBottomNav>button{color:#b3bfd0!important}
body[data-employee-theme=dark] #app #mobileBottomNav>button.active{background:color-mix(in srgb,var(--employee-accent) 24%,#192637)!important;color:#edf3ff!important}
body[data-employee-theme=dark] #app #mobileBottomNav>button.active small{color:#edf3ff!important}
body[data-employee-theme=dark] #app main #hours .employee-calendar-day{background:#111c29!important;color:#edf3ff!important;border-color:#344253!important}
body[data-employee-theme=dark] #app main #hours .employee-calendar-day.worked{background:#183c32!important;color:#b7ead4!important;border-color:#31574b!important}
body[data-employee-theme=dark] #app main #hours .employee-calendar-day.holiday{background:#493620!important;color:#f5d8a7!important;border-color:#655037!important}
body[data-employee-theme=dark] #app main #hours .employee-calendar-day.today{background:var(--employee-accent)!important;color:#fff!important}
body[data-employee-theme=dark] #app .week-row,body[data-employee-theme=dark] #app .week-total,body[data-employee-theme=dark] #app .week-rate-breakdown{background:#192637!important;color:#edf3ff!important;border-color:#344253!important}
body[data-employee-theme=dark] #app #employeeAppearance button[aria-pressed=true]{border-color:var(--employee-accent)!important}
body[data-employee-theme=dark] #app .st-field,body[data-employee-theme=dark] #app .st-field span{color:#b3bfd0!important}
/* Complete dark canvas and consistent dashboard iconography. */
body[data-employee-theme=dark] #app{background:#111c29!important}
body[data-employee-theme=dark] #app main #hours .chart-day b,body[data-employee-theme=dark] #app main #hours .chart-day>span{color:#b3bfd0!important}
#app main #hours .dash-stat .stat-icon{display:grid!important;place-items:center!important;background:transparent!important;color:var(--employee-accent)!important;border-radius:10px!important;box-shadow:none!important}
#app main #hours .dash-stat .stat-icon svg{width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body[data-employee-theme=dark] #app main #hours .dash-stat .stat-icon{color:#c9d7e9!important;background:transparent!important}
@media(min-width:701px) and (min-height:651px){
 #app main #hours .week-chart{display:flex!important;align-items:end!important;gap:10px!important;padding:18px 0 4px!important;margin:0!important;min-height:0!important}
 #app main #hours .chart-day{flex:1!important;min-width:0!important;text-align:center!important}
 #app main #hours .week-series-group{height:clamp(130px,22vh,210px)!important;margin:10px 0!important}
 #app main #hours .chart-day b,#app main #hours .chart-day>span{font-size:12px!important}
}

/* Add hours replaces dashboard on every device. */
#app main #hours #addHoursCard:not(.open){display:none!important}
#app main #hours.add-hours-fullscreen{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:none!important;padding:0!important;margin:0!important;background:transparent!important;overflow:visible!important;z-index:auto!important}
#app main #hours.add-hours-fullscreen>.dashboard,#app main #hours.add-hours-fullscreen>.recent-card{display:none!important}
body.add-hours-modal-open{overflow:auto!important}
#app main #hours.add-hours-fullscreen #addHoursCard.open{display:block!important;position:relative!important;inset:auto!important;width:100%!important;max-width:760px!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0 auto!important;padding:22px!important;box-sizing:border-box!important;border:1px solid #e0e7ef!important;border-radius:16px!important;background:#fff!important;overflow:visible!important;box-shadow:0 4px 20px rgba(16,24,40,.04)!important}
#app main #hours #addHoursCard .add-hours-modal-close{position:absolute!important;top:16px!important;right:16px!important;min-height:40px!important;width:40px!important;height:40px!important;border-radius:10px!important;font-size:23px!important}
#app main #hours #addHoursCard .top{padding:0 48px 16px 0!important}
#app main #hours #addHoursCard .welcome{font-size:24px!important;line-height:1.2!important}
#app main #hours #addHoursCard .st-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
#app main #hours #addHoursCard .st-form>.st-row,#app main #hours #addHoursCard .st-hours,#app main #hours #addHoursCard .nightout-toggle,#app main #hours #addHoursCard #officeExpenseArea,#app main #hours #addHoursCard #workshopCalloutArea,#app main #hours #addHoursCard #teamDescriptionField,#app main #hours #addHoursCard .add-hours-button,#app main #hours #addHoursCard #hoursMsg{grid-column:1/-1!important}
#app main #hours #addHoursCard .st-field{min-width:0!important;margin:0!important}
#app main #hours #addHoursCard label{font-size:14px!important}
#app main #hours #addHoursCard input,#app main #hours #addHoursCard select,#app main #hours #addHoursCard textarea{box-sizing:border-box!important;max-width:100%!important;font-size:16px!important}
#app main #hours #addHoursCard input:not([type=checkbox]),#app main #hours #addHoursCard select{height:46px!important;min-height:46px!important;padding:10px 12px!important}
#app main #hours #addHoursCard .add-hours-button{min-height:46px!important;background:var(--employee-accent)!important}
#workshopCalloutArea[hidden],#workshopCalloutFields[hidden]{display:none!important}
#workshopCalloutArea{padding:14px;border:1px solid #e1e8ef;border-radius:12px}
.workshop-callout-toggle{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:600}
#workshopCalloutFields{display:grid;gap:12px;padding-top:10px}#workshopCalloutFields textarea{width:100%;min-height:70px;padding:10px;border:1px solid #dce3ec;border-radius:10px}
body[data-employee-theme=dark] #app main #hours.add-hours-fullscreen #addHoursCard.open{background:#192637!important;border-color:#344253!important;color:#edf3ff!important}
body[data-employee-theme=dark] #app main #hours #addHoursCard .welcome{color:#edf3ff!important}
body[data-employee-theme=dark] #app #workshopCalloutArea{border-color:#344253!important}
@media(max-width:550px){#app main #hours #addHoursCard .st-form{grid-template-columns:minmax(0,1fr)!important}#app main #hours.add-hours-fullscreen #addHoursCard.open{padding:16px!important}}

/* Compact, accessible Add hours form on desktop and touch screens. */
#app main #hours #addHoursCard .st-form>.st-field:has(#date),#app main #hours #addHoursCard .st-form>.st-field:has(#regNo){grid-column:1/-1!important}
#app main #hours #addHoursCard .st-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0!important}
#app main #hours #addHoursCard .st-field label,#app main #hours #addHoursCard .hours-main label{display:block!important;margin:0 0 7px!important;font-weight:600!important;line-height:1.4!important}
#app main #hours #addHoursCard input:not([type=checkbox]),#app main #hours #addHoursCard select,#app main #hours #addHoursCard textarea{width:100%!important;border:1px solid #dce3ec!important;border-radius:10px!important;background:#fff;box-shadow:none!important}
#app main #hours #addHoursCard input:focus-visible,#app main #hours #addHoursCard select:focus-visible,#app main #hours #addHoursCard textarea:focus-visible{outline:2px solid var(--employee-accent)!important;outline-offset:2px!important}
#app main #hours #addHoursCard .nightout-toggle{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:64px!important;height:auto!important;padding:12px 14px!important;margin:0!important;border:1px solid #e2e8f0!important;border-radius:12px!important;background:#f7f9fc!important;box-sizing:border-box!important;cursor:pointer!important}
#app main #hours #addHoursCard .nightout-copy{display:grid!important;gap:3px!important;min-width:0!important}
#app main #hours #addHoursCard .nightout-copy strong{font-size:14px!important;line-height:1.4!important}
#app main #hours #addHoursCard .nightout-copy small{font-size:12px!important;line-height:1.4!important;color:#667085!important}
#app main #hours #addHoursCard #nightout,#app main #hours #addHoursCard #additionalHoursEnabled{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0!important}
#app main #hours #addHoursCard .nightout-switch,#app main #hours #addHoursCard .additional-switch{position:relative!important;display:block!important;flex:0 0 40px!important;width:40px!important;height:24px!important;min-height:24px!important;margin:0!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important;cursor:pointer!important}
#app main #hours #addHoursCard .nightout-switch:after,#app main #hours #addHoursCard .additional-switch:after{content:''!important;position:absolute!important;left:3px!important;top:3px!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 3px #0002!important;transition:transform .15s!important}
#app main #hours #addHoursCard input:checked+.nightout-switch,#app main #hours #addHoursCard input:checked+.additional-switch{background:var(--employee-accent)!important}
#app main #hours #addHoursCard input:checked+.nightout-switch:after,#app main #hours #addHoursCard input:checked+.additional-switch:after{transform:translateX(16px)!important}
#app main #hours #addHoursCard input:focus-visible+.nightout-switch,#app main #hours #addHoursCard input:focus-visible+.additional-switch{outline:2px solid var(--employee-accent)!important;outline-offset:3px!important}
#app main #hours #addHoursCard .add-hours-calculation{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 16px!important;align-items:start!important;padding:14px!important;margin:0!important;background:#f7f9fc!important;border:1px solid #e2e8f0!important;border-radius:12px!important}
#app main #hours #addHoursCard .hours-main,#app main #hours #addHoursCard .additional-hours-box{display:flex!important;flex-direction:column!important;min-width:0!important;grid-row:auto!important;grid-column:auto!important;gap:0!important;align-self:start!important}
#app main #hours #addHoursCard .hours-main label{height:28px!important;min-height:28px!important;margin:0 0 7px!important;display:flex!important;align-items:center!important}
#app main #hours #addHoursCard .additional-hours-toggle{position:relative!important;display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;height:28px!important;min-height:28px!important;margin:0 0 7px!important;padding:0!important;overflow:visible!important;white-space:normal!important}
#app main #hours #addHoursCard .additional-hours-toggle strong{font-size:13px!important;line-height:1.3!important;height:auto!important;min-width:0!important;flex:1!important;cursor:pointer!important;white-space:normal!important}
#app main #hours #addHoursCard .additional-hours-info{display:none!important}
#app main #hours #addHoursCard .hours-help,#app main #hours #addHoursCard #additionalHoursReasonWrap,#app main #hours #addHoursCard #employeeDailyPayNotice{grid-column:1/-1!important;grid-row:auto!important;margin:0!important}
#app main #hours #addHoursCard .hours-help{font-size:12px!important;line-height:1.5!important;color:#667085!important}
#app main #hours #addHoursCard #hoursInput,#app main #hours #addHoursCard #additionalHours{margin:0!important;height:46px!important;min-height:46px!important}
#app main #hours #addHoursCard #workshopCalloutEnabled{flex:0 0 20px!important;width:20px!important;height:20px!important;min-height:20px!important;margin:0!important;accent-color:var(--employee-accent)}
#app main #hours #addHoursCard .add-hours-button{border-radius:10px!important;font-size:16px!important;font-weight:600!important;margin:2px 0 0!important}
#app main #hours #addHoursCard #hoursMsg:empty{display:none!important}
body[data-job-role=office] #app main #hours #addHoursCard .add-hours-calculation,body[data-job-role=mechanic] #app main #hours #addHoursCard .add-hours-calculation{grid-template-columns:minmax(0,1fr)!important}
body[data-employee-theme=dark] #app main #hours #addHoursCard .nightout-toggle,body[data-employee-theme=dark] #app main #hours #addHoursCard .add-hours-calculation{background:#111c29!important;border-color:#344253!important}
body[data-employee-theme=dark] #app main #hours #addHoursCard .nightout-copy small,body[data-employee-theme=dark] #app main #hours #addHoursCard .hours-help{color:#b3bfd0!important}
@media(max-width:550px){
 #app main #hours #addHoursCard .st-form{gap:12px!important}
 #app main #hours #addHoursCard .st-row{gap:10px!important}
 #app main #hours #addHoursCard .add-hours-calculation{gap:12px!important;padding:12px!important;grid-template-columns:minmax(0,1fr)!important}
 #app main #hours #addHoursCard .additional-hours-toggle{height:40px!important;min-height:40px!important;margin:0!important}
 #app main #hours #addHoursCard .additional-hours-box{gap:7px!important}
 #app main #hours #addHoursCard .welcome{font-size:22px!important}
}
body[data-job-role=office] #app main #hours #addHoursCard .team-driver-only,body[data-job-role=mechanic] #app main #hours #addHoursCard .team-driver-only{display:none!important}
#app main #hours #addHoursCard [hidden]{display:none!important}

/* Compact employee week and holiday pages, keeping the existing actions. */
#app main #week .week-page,#app main #holidays .holiday-page{width:100%!important;max-width:1180px!important;margin:0 auto!important;padding-bottom:20px!important;box-sizing:border-box!important}
#app main #week .week-head,#app main #holidays .holiday-head{margin-bottom:18px!important}
#app main #week .week-head h2,#app main #holidays .holiday-head h2{font-size:26px!important;line-height:1.2!important;margin:0 0 6px!important}
#app main #week .week-stats{gap:12px!important;margin:0 0 18px!important}
#app main #week .week-stat{height:auto!important;min-height:120px!important;padding:16px!important;display:flex!important;align-items:flex-start!important;gap:12px!important;border-radius:14px!important;box-sizing:border-box!important}
#app main #week .week-stat>div{min-width:0!important;flex:1!important}
#app main #week .week-stat-icon{flex:0 0 34px!important;width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:color-mix(in srgb,var(--employee-accent) 12%,transparent)!important;color:var(--employee-accent)!important;font-size:20px!important}
#app main #week .week-stat-icon svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#app main #week .week-stat small{display:block!important;font-size:12px!important;line-height:1.4!important;margin:0 0 7px!important}
#app main #week .week-stat b{font-size:28px!important;line-height:1.15!important;margin:0 0 5px!important;letter-spacing:-.5px!important}
#app main #week .week-stat em{font-size:12px!important;line-height:1.4!important;white-space:normal!important}
#app main #week .week-stat .week-status-pill{display:inline-flex!important;width:auto!important;font-size:12px!important;padding:7px 9px!important;line-height:1.3!important;letter-spacing:0!important}
#app main #week .week-table-card{border-radius:14px!important;overflow:hidden!important}
#app main #week .week-row-actions{gap:6px!important}
#app main #week .week-row-actions button{min-height:38px!important;border-radius:9px!important;font-size:12px!important;padding:8px 11px!important}
#app main #week .week-total,#app main #week .week-rate-breakdown{padding:12px 16px!important}
#app main #week .week-actions-card{margin-top:14px!important;border-radius:14px!important;padding:16px!important}
#app main #week .full-action,#app main #holidays .full-action{background:var(--employee-accent)!important;color:#fff!important;min-height:46px!important;border-radius:10px!important;font-size:14px!important}
#app main #holidays .holiday-page{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:16px!important;align-items:start!important}
#app main #holidays .holiday-head,#app main #holidays .holiday-allowance-card{grid-column:1/-1!important;margin:0!important}
#app main #holidays .card{margin:0!important;padding:18px!important;min-width:0!important;border-radius:14px!important}
#app main #holidays .holiday-card-head{margin-bottom:18px!important}
#app main #holidays .holiday-card-head h2,#app main #holidays .holiday-allowance-title h2{font-size:18px!important;line-height:1.3!important}
#app main #holidays .holiday-date-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-bottom:16px!important}
#app main #holidays .holiday-date-wrap{position:relative!important;width:100%!important;min-width:0!important;height:46px!important;min-height:46px!important;overflow:visible!important}
#app main #holidays .holiday-date-wrap input[type=date]{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;height:46px!important;min-height:46px!important;margin:0!important;padding:10px 12px!important;border:1px solid #dce3ec!important;border-radius:10px!important;opacity:1!important;color:#172033!important;-webkit-text-fill-color:#172033!important;background:#fff!important;font-size:16px!important;box-sizing:border-box!important}
#app main #holidays .holiday-date-wrap input:focus-visible{outline:2px solid var(--employee-accent)!important;outline-offset:2px!important}
#app main #holidays .holiday-date-display,#app main #holidays .holiday-date-wrap:after{display:none!important}
#app main #holidays .holiday-field label{display:block!important;font-size:13px!important;font-weight:600!important;margin-bottom:7px!important}
#app main #holidays .holiday-request-list{display:grid!important;gap:8px!important}
#app main #holidays .holiday-request-list .entry-card{margin:0!important;padding:12px!important;gap:12px!important;border-radius:10px!important}
#app main #holidays .holiday-request-list .entry-card b{font-size:13px!important;line-height:1.4!important}
#app main #holidays .holiday-status{min-width:82px!important;font-size:12px!important;padding:7px 10px!important;line-height:1.3!important}
#app main #holidays .holiday-chevron{display:none!important}
#app main #holidays .holiday-allowance-icon,#app main #holidays .holiday-icon{background:color-mix(in srgb,var(--employee-accent) 12%,transparent)!important;color:var(--employee-accent)!important;border-radius:10px!important}
body[data-employee-theme=dark] #app main #holidays .holiday-date-wrap input[type=date]{background:#111c29!important;color:#edf3ff!important;-webkit-text-fill-color:#edf3ff!important;border-color:#344253!important;color-scheme:dark!important}
body[data-employee-theme=dark] #app main #holidays .entry-card,body[data-employee-theme=dark] #app main #holidays .holiday-allowance-card,body[data-employee-theme=dark] #app main #holidays .holiday-request-card,body[data-employee-theme=dark] #app main #holidays .holiday-requests-card,body[data-employee-theme=dark] #app main #week .week-stat{background:#192637!important;border-color:#344253!important;color:#edf3ff!important}
@media(min-width:701px){
 #app main #week .week-stats{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
 #app main #week .week-row{grid-template-columns:88px minmax(0,1fr) 85px 105px 170px!important;gap:12px!important;padding:12px 8px!important}
 #app main #week .week-row .week-time{min-width:0!important}
 #app main #week .week-row .week-time small{overflow-wrap:anywhere!important}
}
@media(max-width:900px){
 #app main #holidays .holiday-page{grid-template-columns:minmax(0,1fr)!important}
 #app main #week .week-stat{padding:12px!important;gap:8px!important}
}
@media(max-width:700px){
 #app main #week .week-head h2,#app main #holidays .holiday-head h2{font-size:23px!important}
 #app main #holidays .card{padding:16px!important}
 #app main #holidays .holiday-date-grid{gap:10px!important}
 #app main #holidays .holiday-request-list .entry-card{flex-wrap:wrap!important}
 #app main #holidays .holiday-request-status{margin-left:auto!important}
}

#app main #week [hidden]{display:none!important}
#app main #holidays .holiday-date-wrap input[type=date]{appearance:auto!important;-webkit-appearance:auto!important;line-height:normal!important}
#app main #holidays .holiday-date-wrap input[type=date]::-webkit-calendar-picker-indicator{display:block!important;opacity:1!important;width:18px!important;height:18px!important}
#app main #holidays .holiday-date-wrap input[type=date]::-webkit-datetime-edit{opacity:1!important;color:inherit!important;-webkit-text-fill-color:inherit!important}

/* Phone-only week and holiday layout repair. */
@media(max-width:700px){
 #app main #holidays .holiday-request-card .holiday-date-grid{grid-template-columns:minmax(0,1fr)!important;max-width:100%!important;width:100%!important;gap:12px!important}
 #app main #holidays .holiday-request-card .holiday-field,#app main #holidays .holiday-request-card .holiday-date-wrap{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
 #app main #holidays .holiday-request-card .holiday-date-wrap{height:46px!important;min-height:46px!important;border:1px solid #dce3ec!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important}
 #app main #holidays .holiday-request-card .holiday-date-wrap input[type=date]{position:absolute!important;inset:0!important;inline-size:100%!important;min-inline-size:0!important;width:100%!important;height:100%!important;border:0!important;padding:0!important;opacity:0!important;z-index:2!important;cursor:pointer!important}
 #app main #holidays .holiday-request-card .holiday-date-display{display:flex!important;position:absolute!important;inset:0!important;align-items:center!important;padding:0 40px 0 12px!important;font-size:16px!important;color:#172033!important;pointer-events:none!important;background:transparent!important}
 #app main #holidays .holiday-request-card .holiday-date-display:not(.has-value):before{content:'Select date';color:#667085}
 #app main #holidays .holiday-request-card .holiday-date-wrap:after{display:block!important}
 #app main #holidays .holiday-request-card .holiday-date-wrap:focus-within{outline:2px solid var(--employee-accent)!important;outline-offset:2px!important}
 #app main #holidays .holiday-allowance-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;align-items:center!important}
 #app main #holidays .holiday-allowance-icon{width:36px!important;height:36px!important}
 #app main #holidays .holiday-allowance-title{grid-column:2/4!important}
 #app main #holidays .holiday-allowance-title h2{font-size:16px!important;margin:0 0 4px!important}
 #app main #holidays .holiday-allowance-title b{font-size:26px!important}
 #app main #holidays .holiday-allowance-metric{border:0!important;padding:10px 0 0!important;grid-column:2!important;min-width:0!important}
 #app main #holidays .holiday-allowance-metric.remaining{grid-column:3!important}
 #app main #holidays .holiday-allowance-metric b{font-size:24px!important}
 #app main #holidays .holiday-head .small,#app main #holidays .holiday-card-head .small{font-size:12px!important;line-height:1.5!important}
 #app main #week .week-head{gap:10px!important;margin-bottom:16px!important}
 #app main #week .week-controls{gap:8px!important}
 #app main #week .week-controls>button{width:40px!important;height:44px!important;min-height:44px!important}
 #app main #week .week-date{min-height:44px!important;padding:8px!important}
 #app main #week .week-date b{font-size:12px!important;white-space:normal!important}
 #app main #week .week-rows{padding:0 10px!important}
 #app main #week .week-row{display:grid!important;grid-template-columns:64px minmax(0,1fr) 64px!important;gap:5px 8px!important;padding:12px 0!important;min-height:0!important;height:auto!important;align-items:start!important}
 #app main #week .week-day{grid-column:1!important;grid-row:1/3!important}
 #app main #week .week-day b,#app main #week .week-time b,#app main #week .week-row>strong{font-size:13px!important;line-height:1.4!important}
 #app main #week .week-day small{font-size:10px!important}
 #app main #week .week-time{grid-column:2!important;grid-row:1/3!important;min-width:0!important}
 #app main #week .week-time small{font-size:11px!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.4!important}
 #app main #week .week-row>strong{grid-column:3!important;grid-row:1!important;text-align:right!important}
 #app main #week .week-row-status{grid-column:3!important;grid-row:2!important;font-size:10px!important;justify-self:end!important;white-space:normal!important;text-align:right!important;margin:0!important}
 #app main #week .week-row-actions{grid-column:1/-1!important;grid-row:3!important;margin:5px 0 0!important;gap:6px!important}
 #app main #week .week-row-actions button{min-height:40px!important;padding:7px 10px!important;font-size:12px!important}
 #app main #week .week-day-details{grid-column:1/-1!important;grid-row:4!important}
 #app main #week .week-row.not-worked{min-height:58px!important}
 #app main #week .week-rate-breakdown{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;font-size:12px!important}
 #app main #week .week-actions-card h3{font-size:17px!important;margin-bottom:6px!important}
 #app main #week .week-actions-card .small,#app main #week .week-notice{font-size:12px!important;line-height:1.5!important}
 #app main #week .week-notice{padding:10px!important;margin-top:10px!important}
 #app main #week #weekSubmitFeedback{margin:10px 0!important}
 body[data-employee-theme=dark] #app main #holidays .holiday-request-card .holiday-date-wrap{background:#111c29!important;border-color:#344253!important}
 body[data-employee-theme=dark] #app main #holidays .holiday-request-card .holiday-date-display{color:#edf3ff!important}
}

/* Independent dashboard overview week picker. */
#app .dashboard-week-controls{display:flex;align-items:center;gap:8px;margin:12px 0;flex-wrap:wrap}
#app .dashboard-week-controls>button{min-height:44px;min-width:40px;padding:8px 12px;border:1px solid #dce3ec;border-radius:10px;background:var(--employee-tint);color:var(--employee-accent);font-size:14px}
#app .dashboard-week-picker{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-width:165px;min-height:44px;border:1px solid #dce3ec;border-radius:10px;font-size:13px;font-weight:600;overflow:hidden}
#app .dashboard-week-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;box-sizing:border-box}
#app .dashboard-week-picker:focus-within{outline:2px solid var(--employee-accent);outline-offset:2px}
#app #dashboardWeekFeedback:empty{display:none}
body[data-employee-theme=dark] #app .dashboard-week-picker,body[data-employee-theme=dark] #app .dashboard-week-controls>button{background:#111c29;color:#edf3ff;border-color:#344253}
