:root{--font-family-sans: "Aptos", "Segoe UI", system-ui, sans-serif;--font-size-eyebrow: .76rem;--font-size-label: .78rem;--font-size-body-compact: .95rem;--font-size-navigation: .88rem;--font-size-metric: 2rem;--font-size-section-title: clamp(1.3rem, 1.8vw, 2rem);--font-size-page-title: clamp(1.7rem, 2vw, 2.4rem);--font-weight-body: 500;--font-weight-navigation: 700;--font-weight-strong: 800;--font-weight-display: 900;--radius-surface: 8px;--radius-control: 8px;--radius-pill: 999px;--radius-avatar: 50%;--color-canvas: #f3f5f1;--color-surface: #ffffff;--color-surface-subtle: #f8faf6;--color-ink: #20241f;--color-muted: #687066;--color-muted-strong: #667064;--color-line: #d7ded2;--color-line-subtle: #dce3d8;--color-control-line: #cbd5c5;--color-surface-warning: #fff8e5;--color-surface-danger: #fff0f0;--color-ink-subtle: #333b31;--color-navigation-background: #1d312b;--color-navigation-text: #20241f;--color-navigation-link: #576154;--color-navigation-muted: #738071;--color-navigation-active-background-rgb: 29 49 43;--color-navigation-surface: #fbfcf8;--color-accent: #a9d46f;--color-accent-ink: #143125;--color-status-warning: #d9a21b;--color-status-warning-rgb: 217 162 27;--color-status-warning-text: #805a00;--color-status-success: #1f8f5f;--color-status-success-rgb: 31 143 95;--color-status-success-text: #0e5f3d;--color-status-danger: #b44242;--color-status-danger-rgb: 180 66 66;--color-status-danger-text: #8f2424;--shell-background: var(--color-canvas);--shell-text: var(--color-ink);--nav-background: var(--color-navigation-surface);--nav-text: var(--color-navigation-text);--nav-link-text: var(--color-navigation-link);--nav-link-active-text: var(--color-ink);--nav-link-active-background: rgb(var(--color-navigation-active-background-rgb) / .08);--nav-link-active-border: var(--color-navigation-background);--nav-brand-mark-background: var(--color-navigation-background);--nav-brand-mark-text: var(--color-accent);--nav-brand-subtitle: var(--color-navigation-muted);--panel-background: var(--color-surface);--panel-border: var(--color-line);--panel-subtle-background: var(--color-surface-subtle);--panel-subtle-border: var(--color-line-subtle);--control-background: var(--color-surface);--control-border: var(--color-control-line);--control-text: var(--color-ink);--button-primary-background: var(--color-navigation-background);--button-primary-border: var(--color-navigation-background);--button-primary-text: var(--color-surface);--state-success-border: var(--color-status-success);--state-success-text: var(--color-status-success-text);--state-warning-border: var(--color-status-warning);--state-warning-text: var(--color-status-warning-text);--state-warning-background: var(--color-surface-warning);--state-danger-border: var(--color-status-danger);--state-danger-text: var(--color-status-danger-text);--state-danger-background: var(--color-surface-danger);--login-page-background: #f7f9fb;--login-story-background: radial-gradient(circle at 88% 82%, rgb(58 190 178 / .18), transparent 34%), linear-gradient(145deg, #101827 0%, #182033 100%);--login-story-text: #f8fbff;--login-story-muted: rgb(248 251 255 / .68);--login-panel-text: #223049;--login-panel-muted: #61708a;--login-panel-label: #34435f;--login-panel-line: #d9e0ea;--login-brand-gradient: linear-gradient(135deg, #6d82ff, #2fd1bf);--login-chip-text: #55f0e1;--login-chip-background: rgb(119 149 255 / .16);--login-chip-border: rgb(119 149 255 / .45);--login-feature-background: rgb(255 255 255 / .06);--login-feature-border: rgb(255 255 255 / .11);--login-decor-background: rgb(58 190 178 / .18);--login-decor-border: rgb(255 255 255 / .12);--login-decor-dot: #83a9ff;--login-primary-background: #4f4cf4;--login-primary-border: #4a47ef;--login-primary-text: #ffffff;--login-control-background: #ffffff;--login-google-mark-border: #dadce0;--login-google-mark-text: #4285f4;--login-control-shadow: 0 10px 28px rgb(34 48 73 / .06);--login-button-shadow: 0 10px 28px rgb(34 48 73 / .08);--login-story-padding: clamp(32px, 6vw, 72px);--login-panel-padding: clamp(28px, 6vw, 84px);--login-mobile-padding: 22px;--login-panel-width: 460px;--login-feature-min-height: 86px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font-family-sans);background:var(--shell-background)}app-root .login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.85fr);background:var(--login-page-background);color:var(--login-story-text)}app-root .login-story,app-root .login-panel{min-height:100vh;display:grid;align-content:center}app-root .login-story{position:relative;gap:42px;padding:var(--login-story-padding);background:var(--login-story-background);overflow:hidden}app-root .login-story:before,app-root .login-story:after{content:"";position:absolute;border:1px solid var(--login-decor-border);pointer-events:none}app-root .login-story:before{width:280px;height:280px;right:9%;bottom:11%;background:var(--login-decor-background)}app-root .login-story:after{width:9px;height:9px;right:18%;top:16%;background:var(--login-decor-dot)}app-root .login-story>*{position:relative;z-index:1}app-root .login-brand{padding:0;align-self:start;color:var(--login-story-text)}app-root .login-brand .brand-mark{background:var(--login-brand-gradient);color:var(--login-primary-text)}app-root .brand-mark img{width:100%;height:100%;display:block;object-fit:cover}app-root .login-brand small{color:var(--login-story-muted);text-transform:uppercase}app-root .login-panel-brand{display:none}app-root .login-story-copy{max-width:540px}app-root .login-chip{width:fit-content;margin:0 0 26px;padding:7px 14px;border:1px solid var(--login-chip-border);background:var(--login-chip-background);color:var(--login-chip-text);font-size:var(--font-size-eyebrow);font-weight:var(--font-weight-strong);text-transform:uppercase}app-root .login-story h1{max-width:560px;margin:0;font-size:clamp(2.65rem,5vw,5.25rem);line-height:.97;letter-spacing:0}app-root .login-story-copy p:last-child{max-width:460px;margin:22px 0 0;color:var(--login-story-muted);font-size:clamp(1rem,1.2vw,1.18rem);line-height:1.65}app-root .login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:620px}app-root .login-feature-grid span{min-height:var(--login-feature-min-height);display:flex;align-items:flex-end;padding:16px;border:1px solid var(--login-feature-border);background:var(--login-feature-background);color:var(--login-story-text);font-weight:var(--font-weight-strong)}app-root .login-panel{background:var(--login-page-background);color:var(--login-panel-text);justify-items:stretch;padding:var(--login-panel-padding)}app-root .login-panel>*{width:min(100%,var(--login-panel-width));justify-self:center}app-root .login-panel-header{display:grid;gap:10px;margin-bottom:26px}app-root .login-panel h2{margin:0;color:var(--login-panel-text);font-size:clamp(2rem,3vw,3rem);line-height:1.03;letter-spacing:0}app-root .login-panel-header p{margin:0;color:var(--login-panel-muted);line-height:1.5}app-root .visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}app-root .login-form{display:grid;gap:16px}app-root .login-actions{display:grid;gap:12px;margin-bottom:18px}app-root .login-form label{display:grid;gap:8px;color:var(--login-panel-label);font-weight:var(--font-weight-strong)}app-root .login-form input{width:100%;min-height:52px;padding:12px 14px;border:1px solid var(--login-panel-line);background:var(--login-control-background);color:var(--login-panel-text);font:inherit;box-shadow:var(--login-control-shadow)}app-root .login-form button,app-root .google-button{min-height:48px;border:1px solid var(--login-primary-border);background:var(--login-primary-background);color:var(--login-primary-text);font-weight:var(--font-weight-strong);cursor:pointer}app-root .logout-button{min-height:40px;border:1px solid var(--button-primary-border);background:var(--button-primary-background);color:var(--color-surface);font-weight:var(--font-weight-strong);cursor:pointer}app-root .google-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--login-control-background);color:var(--login-panel-text);border-color:var(--login-panel-line);box-shadow:var(--login-button-shadow)}app-root .google-button:hover{border-color:var(--login-primary-background)}app-root .google-mark{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--login-google-mark-border);color:var(--login-google-mark-text);border-radius:50%;font-weight:var(--font-weight-display);line-height:1}app-root .login-form button:disabled,app-root .google-button:disabled{opacity:.62;cursor:wait}app-root .login-error,app-root .login-success{margin:0;font-weight:var(--font-weight-strong)}app-root .login-error{color:var(--color-status-danger)}app-root .login-success{color:var(--color-status-success)}app-root .local-demo-button{width:min(100%,var(--login-panel-width));justify-self:center;min-height:44px;margin-top:12px;border:1px solid var(--login-panel-line);background:var(--login-control-background);color:var(--login-panel-text);font-weight:var(--font-weight-strong);cursor:pointer}app-root .login-security{margin:22px 0 0;padding:14px 16px;border:1px solid rgb(var(--color-status-success-rgb)/.25);background:rgb(var(--color-status-success-rgb)/.08);color:var(--color-status-success-text);font-size:.86rem;font-weight:var(--font-weight-strong)}@media(max-width:940px){app-root .login-page{grid-template-columns:1fr}app-root .login-story,app-root .login-panel{min-height:auto}app-root .login-panel{order:1;padding:24px var(--login-mobile-padding) 34px}app-root .login-story{order:2;padding:28px var(--login-mobile-padding) 34px}app-root .login-story>.login-brand{display:none}app-root .login-panel-brand{display:flex;margin-bottom:28px;color:var(--login-panel-text)}app-root .login-panel-brand small{color:var(--login-panel-muted)}app-root .login-story-copy p:last-child{max-width:none}app-root .login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}app-root .login-feature-grid span{min-height:62px}app-root .login-panel{padding:34px 22px 42px}}@media(max-width:520px){app-root .login-story h1{font-size:2.42rem}app-root .login-feature-grid{grid-template-columns:1fr}app-root .login-panel h2{font-size:2rem}}app-root .status-dot{width:12px;height:12px;background:var(--color-status-warning);box-shadow:0 0 0 4px rgb(var(--color-status-warning-rgb)/.16)}app-root .status-dot.online{background:var(--color-status-success);box-shadow:0 0 0 4px rgb(var(--color-status-success-rgb)/.16)}app-root .status-dot.offline{background:var(--color-status-danger);box-shadow:0 0 0 4px rgb(var(--color-status-danger-rgb)/.16)}button,input,select,textarea{font:inherit;border-radius:var(--radius-control)}.panel,.brand-mark,.runtime,.nav-list,.menu-toggle,.signal-row div,.metric-stack div,.risk-list li,.timeline div,.compact-list li,.secondary-button,.risk-compact-list>li,.risk-detail-list>li,.selected-risk-card,.risk-action-grid div,.suggested-actions,.candidate-list button,.guide-steps li,.staffing-fill-panel,.empty-candidates,.schedule-toolbar,.people-register-toolbar,.create-person-panel,.form-cluster,.create-person-preview,.choice-chip,.preview-chip-row span,.photo-form,.certificate-form,.person-meta div,.pagination-bar,.mobile-shift-card,.inline-message,.schedule-period,.schedule-budget-board,.schedule-week-matrix,.shift-table,.request-card,.request-facts div,.impact-box,.decision-impact,.notification-row,.export-table{border-radius:var(--radius-surface)}.shift-table,.export-table{overflow:hidden}.risk,.status-dot,.status-pill,.rule-chip{border-radius:var(--radius-pill)}.page-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px}.page-grid.pharmacy-guide-mode{display:block}.panel{background:var(--panel-background);border:1px solid var(--panel-border);padding:22px;min-width:0}.wide-panel{grid-column:1/-1}.hero-panel{min-height:340px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,rgb(var(--color-navigation-active-background-rgb)/.2),transparent 55%),var(--panel-background)}.section-kicker{margin:0 0 8px;color:var(--color-muted);font-size:var(--font-size-eyebrow);font-weight:var(--font-weight-strong);letter-spacing:0;text-transform:uppercase}h2{margin:0;font-size:var(--font-size-section-title);line-height:1.1;letter-spacing:0}.signal-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.signal-row div,.metric-stack div{border:1px solid var(--panel-subtle-border);padding:14px;background:var(--panel-subtle-background)}.signal-row .metric-tile{padding:0;min-height:118px;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.signal-row .metric-tile.active{border-color:var(--color-navigation-background);box-shadow:inset 0 0 0 2px var(--color-navigation-background);background:var(--color-surface)}.metric-button{width:100%;min-height:116px;display:grid;align-content:start;gap:3px;padding:14px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.metric-button:hover,.metric-button:focus-visible,.risk-row-button:hover,.risk-row-button:focus-visible,.secondary-button:hover,.secondary-button:focus-visible{outline:2px solid var(--color-navigation-background);outline-offset:2px}.metric-button>span:last-child{color:var(--color-muted);font-size:.8rem;font-weight:var(--font-weight-body);line-height:1.2}.metric-label{color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.metric-value{font-size:var(--font-size-metric);font-weight:var(--font-weight-display);line-height:1.05}dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}dd{margin:4px 0 0;font-size:var(--font-size-metric);font-weight:var(--font-weight-display)}.risk-list,.compact-list{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:12px}.risk-list li{display:flex;align-items:center;gap:12px;padding:12px;background:var(--panel-subtle-background);border:1px solid var(--panel-subtle-border);transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.risk-list li.active{border-color:var(--color-navigation-background);box-shadow:inset 0 0 0 2px var(--color-navigation-background);background:var(--color-surface)}.risk-row-button{width:100%;min-height:44px;display:flex;align-items:center;gap:12px;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.risk-list strong,.risk-list small{display:block}.risk-list small{color:var(--color-muted);margin-top:2px}.risk{width:14px;height:14px;flex:0 0 auto}.risk.red{background:var(--color-status-danger)}.risk.amber{background:var(--color-status-warning)}.risk.green{background:var(--color-status-success)}.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.timeline div,.compact-list li{border-left:4px solid var(--color-accent);background:var(--panel-subtle-background);padding:14px}.compact-list.columns{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-header p:last-child{max-width:680px;margin:8px 0 0;color:var(--color-muted)}.secondary-button{min-height:38px;flex:0 0 auto;padding:8px 12px;border:1px solid var(--button-primary-border);background:var(--color-surface);color:var(--color-ink);font-weight:var(--font-weight-navigation);cursor:pointer}.risk-detail-list{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:12px}.risk-overview-layout{display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:14px;margin-top:18px;align-items:start}.pharmacy-guide-panel{display:grid;gap:18px}.pharmacy-guide-panel .panel-header h2{font-size:var(--font-size-page-title)}.guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.guide-steps li{min-height:52px;display:grid;place-items:center;padding:10px 12px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background);color:var(--color-muted);font-weight:var(--font-weight-strong);text-align:center}.guide-steps li.done{border-color:rgb(var(--color-status-success-rgb)/.35);background:rgb(var(--color-status-success-rgb)/.08);color:var(--color-status-success-text)}.guide-steps li.active{border-color:var(--color-navigation-background);background:var(--color-navigation-background);color:var(--color-surface)}.pharmacy-guide-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;align-items:start}.guide-status-card,.guide-complete-card{min-height:100%}.guide-facts{grid-template-columns:minmax(0,1fr)}.staffing-fill-panel{display:grid;gap:16px;padding:18px;border:1px solid rgb(var(--color-status-success-rgb)/.28);background:rgb(var(--color-status-success-rgb)/.06)}.staffing-fill-panel h3{margin:0;color:var(--color-ink);font-size:clamp(1.15rem,1.3vw,1.45rem);line-height:1.15}.staffing-fill-panel p{margin:8px 0 0;color:var(--color-muted);line-height:1.35}.guide-candidate-list{grid-template-columns:1fr}.guide-candidate-list .candidate-button{min-height:68px;border-color:rgb(var(--color-status-success-rgb)/.42);box-shadow:inset 4px 0 0 var(--color-status-success)}.context-panel{display:grid;gap:16px}.context-signal-row{margin-top:0}.disclosure-stack{display:grid;gap:12px}.disclosure-panel{border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.disclosure-panel summary{padding:14px 16px;cursor:pointer;font-weight:var(--font-weight-strong);list-style:none}.disclosure-panel summary::-webkit-details-marker{display:none}.disclosure-panel[open] summary{border-bottom:1px solid var(--panel-subtle-border)}.disclosure-content{display:grid;gap:14px;padding:16px}.disclosure-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.disclosure-block{min-width:0}.disclosure-block h3{margin:0 0 14px;font-size:var(--font-size-section-title);line-height:1.1}.compact-pharmacy-list{margin-top:0}.empty-candidates{padding:14px;border:1px solid var(--panel-subtle-border);background:var(--color-surface)}.empty-candidates strong,.empty-candidates p{display:block}.empty-candidates p{margin:6px 0 0;color:var(--color-muted);line-height:1.35}.risk-compact-list{max-height:min(65vh,720px);margin:0;padding:0;overflow:auto;list-style:none;display:grid;gap:8px;scrollbar-gutter:stable}.risk-compact-list>li{min-width:0;overflow:hidden;border:1px solid var(--panel-subtle-border);border-left-width:5px;background:var(--panel-subtle-background)}.risk-compact-list>li.active{background:var(--color-surface);border-color:var(--color-navigation-background);box-shadow:inset 0 0 0 1px rgb(var(--color-navigation-active-background-rgb)/.1)}.risk-compact-list>li.red{border-left-color:var(--color-status-danger)}.risk-compact-list>li.amber{border-left-color:var(--color-status-warning)}.risk-compact-list>li.green{border-left-color:var(--color-status-success)}.risk-summary-button,.risk-summary-empty{width:100%;min-width:0;min-height:70px;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(112px,auto);align-items:center;gap:10px;padding:10px 12px;border:0;background:transparent;color:var(--color-ink);text-align:left}.risk-summary-button{cursor:pointer}.risk-summary-button:hover,.risk-summary-button:focus-visible{background:rgb(var(--color-navigation-active-background-rgb)/.055);outline:0}.risk-summary-main,.risk-summary-main strong,.risk-summary-main small,.risk-summary-meta,.risk-summary-meta span,.risk-summary-meta small,.risk-summary-empty strong,.risk-summary-empty small{display:block;min-width:0}.risk-summary-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.risk-summary-main small,.risk-summary-meta small,.risk-summary-empty small{margin-top:3px;color:var(--color-muted);font-size:var(--font-size-label)}.risk-summary-meta{text-align:right;font-size:var(--font-size-label);font-weight:var(--font-weight-strong)}.selected-risk-card{display:grid;gap:14px;padding:16px;border:1px solid var(--panel-subtle-border);border-left-width:5px;background:var(--panel-subtle-background)}.selected-risk-card.red{border-left-color:var(--color-status-danger)}.selected-risk-card.amber{border-left-color:var(--color-status-warning)}.selected-risk-card.green{border-left-color:var(--color-status-success)}.risk-detail-list>li{display:grid;gap:14px;padding:16px;border:1px solid var(--panel-subtle-border);border-left-width:5px;background:var(--panel-subtle-background)}.risk-detail-list>li.red{border-left-color:var(--color-status-danger)}.risk-detail-list>li.amber{border-left-color:var(--color-status-warning)}.risk-detail-list>li.green{border-left-color:var(--color-status-success)}.risk-detail-topline{display:flex;align-items:flex-start;gap:12px}.risk-detail-topline strong,.risk-detail-topline small{display:block}.risk-detail-topline small{margin-top:3px;color:var(--color-muted)}.risk-action-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1.35fr) minmax(180px,.5fr);gap:10px;margin:0}.risk-action-grid div{min-width:0;padding:12px;border:1px solid var(--panel-subtle-border);background:var(--color-surface)}.risk-action-grid dd{margin:6px 0 0;color:var(--color-ink-subtle);font-size:var(--font-size-body-compact);font-weight:var(--font-weight-body);line-height:1.35}.suggested-actions{display:grid;gap:8px;padding:12px;border:1px solid rgb(var(--color-status-success-rgb)/.28);background:rgb(var(--color-status-success-rgb)/.06)}.suggested-actions>strong{color:var(--color-status-success-text);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.suggested-actions ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.suggested-actions li{display:grid;gap:2px}.suggested-actions span,.suggested-actions small{display:block}.suggested-actions span{font-weight:var(--font-weight-strong)}.suggested-actions small{color:var(--color-muted);font-size:var(--font-size-body-compact);line-height:1.35}.candidate-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:8px}.candidate-list button{min-height:58px;display:grid;gap:2px;padding:10px 12px;border:1px solid rgb(var(--color-status-success-rgb)/.32);background:var(--color-surface);color:var(--color-ink);text-align:left;cursor:pointer}.candidate-list button:hover,.candidate-list button:focus-visible{outline:2px solid var(--color-status-success);outline-offset:2px}.candidate-list button:disabled{cursor:wait;opacity:.65}.candidate-list span{font-weight:var(--font-weight-strong)}.timeline strong,.timeline small{display:block}.timeline small{color:var(--color-muted);margin-top:6px}.metric-stack{display:grid;gap:10px;margin:18px 0 0}.schedule-surface{display:grid;gap:18px}.schedule-header,.schedule-toolbar,.staffing-overview-mock header,.opening-hours-editor header,.schedule-period header,.period-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.schedule-toolbar{align-items:end;justify-content:flex-start;flex-wrap:wrap;padding:14px;background:var(--panel-subtle-background);border:1px solid var(--panel-subtle-border)}.schedule-toolbar label,.opening-hours-editor label,.publish-box{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.publish-box small{max-width:320px;color:var(--color-muted);font-size:var(--font-size-label);line-height:1.3;text-transform:none}.schedule-toolbar select,.schedule-toolbar input,.opening-hours-editor select,.opening-hours-editor input,.publish-box input,.publish-box select{min-height:40px;min-width:190px;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body)}.schedule-header>*,.schedule-toolbar>*,.staffing-overview-mock header>*,.opening-hours-editor header>*,.publish-box>*,.people-create-form>*,.photo-form>*,.certificate-form>*,.person-meta>*,.mobile-shift-card>*,.notification-row>*{min-width:0}.staffing-overview-mock{display:grid;gap:14px;padding:16px;background:var(--color-surface);border:1px solid var(--panel-subtle-border)}.staffing-overview-mock h3{margin:0;font-size:var(--font-size-section-title);line-height:1.08}.staffing-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.opening-hours-editor{display:grid;gap:14px;padding:16px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.opening-hours-editor h3{margin:0;font-size:var(--font-size-section-title);line-height:1.08}.opening-hours-form{display:grid;gap:12px}.opening-hours-grid{display:grid;border:1px solid var(--panel-subtle-border);background:var(--color-surface)}.opening-hours-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,.6fr) minmax(110px,.6fr) minmax(150px,.8fr);gap:10px;align-items:end;padding:10px 12px}.opening-hours-row+.opening-hours-row{border-top:1px solid var(--panel-subtle-border)}.opening-hours-row.inactive{background:var(--panel-subtle-background)}.opening-hours-row.inactive label:not(.opening-day-toggle){opacity:.54}.opening-day-toggle,.opening-requirement-toggle{display:flex;align-items:center;gap:8px;min-height:40px;color:var(--color-ink);text-transform:none}.opening-day-toggle input,.opening-requirement-toggle input{min-width:0;width:18px;height:18px;flex:0 0 auto}.opening-hours-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.staffing-card{min-width:0;display:grid;gap:12px;padding:14px;border:1px solid var(--panel-subtle-border);border-top-width:5px;background:var(--panel-subtle-background)}.staffing-card.green{border-top-color:var(--color-status-success)}.staffing-card.red{border-top-color:var(--color-status-danger);background:linear-gradient(180deg,var(--state-danger-background),var(--color-surface))}.staffing-card-topline{display:flex;align-items:flex-start;gap:10px}.staffing-card-topline strong,.staffing-card-topline small{display:block}.staffing-card-topline small{margin-top:3px;color:var(--color-muted);font-size:var(--font-size-label)}.staffing-status-dot{width:14px;height:14px;flex:0 0 auto;margin-top:3px;border-radius:var(--radius-avatar);background:var(--color-status-warning);box-shadow:0 0 0 4px rgb(var(--color-status-warning-rgb)/.14)}.staffing-status-dot.green{background:var(--color-status-success);box-shadow:0 0 0 4px rgb(var(--color-status-success-rgb)/.15)}.staffing-status-dot.red{background:var(--color-status-danger);box-shadow:0 0 0 4px rgb(var(--color-status-danger-rgb)/.15)}.staffing-card-facts{display:grid;gap:8px;margin:0}.staffing-card-facts div{min-width:0}.staffing-card-facts dt,.staffing-gap strong{color:var(--color-muted-strong);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.staffing-card-facts dd{margin:4px 0 0;color:var(--color-ink-subtle);line-height:1.3}.staffing-gap{display:grid;gap:3px;padding:10px;border:1px solid rgb(var(--color-status-danger-rgb)/.24);background:rgb(var(--color-status-danger-rgb)/.07)}.staffing-gap.ok{border-color:rgb(var(--color-status-success-rgb)/.28);background:rgb(var(--color-status-success-rgb)/.07)}.staffing-gap.ok strong{color:var(--color-status-success-text)}.staffing-gap span,.staffing-next-action{color:var(--color-ink-subtle);line-height:1.3}.staffing-next-action{display:block;color:var(--color-muted)}.compact-toolbar{padding:0;background:transparent;border:0}.people-list{grid-template-columns:repeat(2,minmax(0,1fr))}.people-register-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,220px);gap:12px;align-items:end;padding:14px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.people-register-toolbar label{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.people-register-toolbar input,.people-register-toolbar select{min-height:40px;width:100%;min-width:0;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body)}.create-person-panel{display:grid;gap:18px;padding:18px;border:2px solid var(--color-navigation-background);background:var(--color-navigation-surface)}.create-person-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.create-person-panel h3{margin:0;font-size:1.35rem;line-height:1.12}.create-person-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);gap:18px;align-items:start}.people-create-form,.form-cluster{min-width:0}.people-create-form{display:grid;gap:14px}.form-cluster{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--panel-subtle-border);background:var(--panel-background)}.form-cluster legend{padding:0 7px;color:var(--color-ink);font-size:.86rem;font-weight:var(--font-weight-display)}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.people-create-form label,.form-cluster label{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.people-create-form input,.people-create-form select,.form-cluster input,.form-cluster select{min-height:40px;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body);min-width:0;width:100%}.create-person-preview{position:sticky;top:18px;display:grid;align-content:start;gap:14px;padding:16px;border:2px solid var(--color-navigation-background);background:var(--color-surface);box-shadow:8px 8px 0 var(--color-line-subtle)}.create-person-preview header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.choice-block{display:grid;gap:8px}.choice-block>span{color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.choice-grid.compact{max-height:170px;overflow:auto;padding-right:4px}.choice-chip{min-height:36px;border:1px solid var(--control-border);background:var(--color-surface);color:var(--color-ink);padding:7px 10px;font-size:.9rem;font-weight:var(--font-weight-navigation)}.choice-chip.selected{border-color:var(--color-navigation-background);background:var(--color-navigation-background);color:var(--color-surface)}.choice-chip.primary{box-shadow:inset 0 -3px 0 var(--color-accent)}.form-actions{display:flex;justify-content:flex-end}.form-actions button{min-width:180px}.preview-divider{height:1px;background:var(--panel-subtle-border)}.preview-chip-row{display:flex;flex-wrap:wrap;gap:8px}.preview-chip-row span{display:inline-flex;align-items:center;min-height:28px;padding:5px 8px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background);font-size:.82rem;font-weight:var(--font-weight-navigation)}.list-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:10px;border-top:2px solid var(--panel-subtle-border)}.list-section-header h3{margin:0;font-size:1.2rem;line-height:1.15}.list-section-header small{display:block;margin-top:4px;color:var(--color-muted)}.person-heading{display:flex;align-items:center;gap:12px;min-width:0}.profile-photo,.profile-initials{width:52px;height:52px;border-radius:var(--radius-avatar);flex:0 0 auto}.profile-photo{border:1px solid var(--control-border);object-fit:cover;background:var(--panel-subtle-background)}.profile-initials{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--button-primary-border);background:var(--button-primary-background);color:var(--button-primary-text);font-weight:var(--font-weight-display)}.photo-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:12px;align-items:end;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background);padding:12px}.photo-form label{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.photo-form input{min-height:40px;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body);min-width:0}.certificate-box{display:grid;gap:8px}.certificate-box>strong{display:block}.certificate-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background);padding:12px}.certificate-form label{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.certificate-form input,.certificate-form select{min-height:40px;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body);min-width:0}.certificate-form .wide-field{grid-column:span 2}.person-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.person-meta div{border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background);padding:12px;min-width:0}.person-meta dd{font-size:var(--font-size-body-compact);line-height:1.35;overflow-wrap:anywhere}.person-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}.person-card-footer span{color:var(--color-muted);font-size:.86rem;font-weight:var(--font-weight-navigation)}.person-tools{display:grid;gap:14px;padding-top:14px;border-top:1px solid var(--panel-subtle-border)}.pagination-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.pagination-bar span{color:var(--color-muted);font-weight:var(--font-weight-strong)}.mobile-shift-list{display:grid;gap:12px}.mobile-shift-card{display:grid;gap:14px;border:1px solid var(--panel-subtle-border);background:var(--panel-background);padding:16px}.mobile-shift-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mobile-shift-card strong,.mobile-shift-card small{display:block}.mobile-shift-card small{color:var(--color-muted);margin-top:4px}button{min-height:40px;border:1px solid var(--button-primary-border);background:var(--button-primary-background);color:var(--button-primary-text);padding:8px 14px;font-weight:var(--font-weight-strong);cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.secondary-action{border-color:var(--control-border);background:var(--color-surface);color:var(--color-ink)}.inline-message{margin:0;padding:12px 14px;border-left:4px solid var(--state-warning-border);background:var(--state-warning-background)}.schedule-list{display:grid;gap:14px}.dayboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-period{display:grid;gap:14px;border:1px solid var(--panel-subtle-border);background:var(--panel-background);padding:16px}.schedule-period strong,.schedule-period small{display:block}.schedule-period small{color:var(--color-muted);margin-top:4px}.status-pill{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid var(--control-border);background:var(--panel-subtle-background);font-size:var(--font-size-label);font-weight:var(--font-weight-strong)}.status-pill.published{border-color:var(--state-success-border);color:var(--state-success-text)}.status-pill.failed{border-color:var(--state-danger-border);color:var(--state-danger-text);background:var(--state-danger-background)}.rule-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--panel-subtle-border);border-left:5px solid var(--color-status-success);background:var(--panel-subtle-background)}.rule-panel.blocked{border-left-color:var(--color-status-danger);background:linear-gradient(90deg,var(--state-danger-background),var(--color-surface))}.rule-panel.warning{border-left-color:var(--color-status-warning);background:linear-gradient(90deg,var(--state-warning-background),var(--color-surface))}.rule-panel-header{display:flex;align-items:flex-start;gap:10px}.rule-panel-header strong,.rule-panel-header small{display:block}.rule-panel-header small{margin-top:3px;color:var(--color-muted)}.rule-summary-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.rule-summary-list li{display:grid;grid-template-columns:minmax(116px,.28fr) minmax(0,1fr);gap:10px;padding:9px 10px;border:1px solid var(--panel-subtle-border);background:#ffffffb3}.rule-summary-list li.blocker{border-color:rgb(var(--color-status-danger-rgb)/.28)}.rule-summary-list li.warning{border-color:rgb(var(--color-status-warning-rgb)/.34)}.rule-summary-list strong{color:var(--color-muted-strong);font-size:var(--font-size-label);text-transform:uppercase}.rule-summary-list strong small{display:block;margin-top:3px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-body);text-transform:none}.rule-summary-list span,.rule-clear{color:var(--color-ink-subtle);line-height:1.32}.rule-summary-list span small{display:block;margin-top:4px;color:var(--color-muted);font-size:var(--font-size-caption)}.rule-clear{margin:0}.schedule-budget-board{display:grid;gap:12px;padding:12px;border:1px solid var(--panel-subtle-border);background:var(--color-surface)}.budget-metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.budget-metric-row div{display:grid;gap:5px;min-height:86px;padding:12px;border:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.budget-metric-row span,.work-area-budget-header,.week-matrix-header{color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.budget-metric-row strong{color:var(--color-ink);font-size:1.55rem;line-height:1}.budget-metric-row .budget-diff{border-left:5px solid var(--color-status-success)}.budget-metric-row .under-budget{border-left-color:var(--color-status-warning);background:var(--state-warning-background)}.budget-metric-row .over-budget{border-left-color:var(--color-status-danger);background:var(--state-danger-background)}.work-area-budget-grid{display:grid;border:1px solid var(--panel-subtle-border)}.work-area-budget-grid>div{display:grid;grid-template-columns:minmax(150px,1.2fr) repeat(3,minmax(92px,.65fr));gap:10px;padding:9px 10px;background:var(--panel-subtle-background)}.work-area-budget-grid>div+div{border-top:1px solid var(--panel-subtle-border)}.work-area-budget-header{background:var(--color-surface)!important}.under-budget{color:var(--state-warning-text)}.over-budget{color:var(--state-danger-text)}.on-budget{color:var(--state-success-text)}.schedule-week-matrix{display:grid;overflow-x:auto;border:1px solid var(--panel-subtle-border);background:var(--color-surface)}.week-matrix-row{display:grid;grid-template-columns:minmax(170px,1.05fr) repeat(7,minmax(128px,.85fr)) minmax(96px,.62fr) minmax(96px,.62fr);min-width:1180px}.week-matrix-row>span{min-height:58px;padding:9px 10px;border-right:1px solid var(--panel-subtle-border);border-bottom:1px solid var(--panel-subtle-border);background:var(--panel-subtle-background)}.week-matrix-row>span:last-child{border-right:0}.week-matrix-header>span,.week-matrix-footer>span{min-height:42px;background:var(--color-surface)}.week-matrix-header small,.matrix-person small,.matrix-shift small{display:block;margin-top:3px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-body);text-transform:none}.matrix-person,.matrix-total,.week-matrix-footer{font-weight:var(--font-weight-strong)}.matrix-day-cell{display:grid;gap:6px}.matrix-shift{display:grid;gap:2px}.matrix-shift strong{font-size:.88rem}.week-matrix-row.empty{grid-template-columns:1fr;min-width:0}.shift-table{display:grid;border:1px solid var(--panel-subtle-border)}.shift-table div{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) minmax(120px,.7fr) minmax(120px,.7fr);gap:10px;padding:10px 12px;background:var(--panel-subtle-background)}.shift-table div+div{border-top:1px solid var(--panel-subtle-border)}.checklist-box{display:grid;gap:10px}.schedule-header.compact{align-items:center}.check-row{display:flex;align-items:center;gap:10px;min-height:28px}.check-row input{width:18px;height:18px;flex:0 0 auto}.request-form{display:grid;gap:12px;margin:18px 0}.request-form label{display:grid;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:var(--font-weight-strong);text-transform:uppercase}.request-form input,.request-form select{min-height:40px;border:1px solid var(--control-border);background:var(--control-background);color:var(--control-text);padding:8px 10px;text-transform:none;font-weight:var(--font-weight-body);min-width:0;width:100%}.decision-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.request-queue{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:14px}.request-card{display:grid;gap:14px;border-left:4px solid var(--color-accent);background:var(--panel-subtle-background);padding:16px}.request-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.request-card-header strong,.request-card-header small,.impact-box strong,.impact-box small,.decision-impact strong,.decision-impact small{display:block}.request-card-header small,.impact-box small,.decision-impact small{color:var(--color-muted);margin-top:4px}.request-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.request-facts div,.impact-box,.decision-impact{border:1px solid var(--panel-subtle-border);background:var(--panel-background);padding:12px;min-width:0}.request-facts dd{margin:4px 0 0;font-size:var(--font-size-body-compact);font-weight:var(--font-weight-strong);line-height:1.3}.overlap-list{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.overlap-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;border-top:1px solid var(--panel-subtle-border);padding-top:8px}.overlap-list span,.overlap-list small{color:var(--color-muted)}.overlap-list small{grid-column:1/-1}.impact-box.quiet{border-style:dashed}.notification-list{display:grid;gap:14px}.notification-row{display:grid;gap:12px;border:1px solid var(--panel-subtle-border);background:var(--panel-background);padding:16px}.notification-row header,.notification-row footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.notification-row strong,.notification-row small{display:block}.notification-row small{color:var(--color-muted);margin-top:4px;overflow-wrap:anywhere}.notification-row p{margin:0;color:var(--color-ink-subtle)}.export-table{display:grid;border:1px solid var(--panel-subtle-border)}.export-table div{display:grid;grid-template-columns:minmax(120px,1fr) minmax(130px,1fr) minmax(100px,.7fr) minmax(80px,.6fr) minmax(90px,.6fr);gap:10px;padding:10px 12px;background:var(--panel-subtle-background)}.export-table div+div{border-top:1px solid var(--panel-subtle-border)}.export-table span{overflow-wrap:anywhere}@media(max-width:900px){.page-grid,.timeline,.compact-list.columns,.guide-steps,.pharmacy-guide-layout,.risk-overview-layout,.risk-action-grid{grid-template-columns:1fr}.risk-compact-list{max-height:420px}.risk-summary-button,.risk-summary-empty{grid-template-columns:auto minmax(0,1fr)}.risk-summary-meta{grid-column:2;text-align:left}.hero-panel{min-height:280px}.schedule-header,.schedule-toolbar,.staffing-overview-mock header,.opening-hours-editor header,.schedule-period header,.mobile-shift-card header,.request-card-header,.notification-row header,.notification-row footer,.period-actions{display:grid}.panel-header{display:grid}.schedule-toolbar select,.schedule-toolbar input,.opening-hours-editor select,.opening-hours-editor input,.publish-box input,.publish-box select,.people-register-toolbar input,.people-register-toolbar select,.people-create-form input,.people-create-form select,.photo-form input,.certificate-form input,.certificate-form select,.request-form input,.request-form select{min-width:0;width:100%}.shift-table div{grid-template-columns:1fr}.budget-metric-row,.work-area-budget-grid>div{grid-template-columns:1fr}.opening-hours-row,.opening-hours-actions,.rule-summary-list li,.staffing-overview-grid,.export-table div,.dayboard-grid,.people-list,.people-register-toolbar,.create-person-layout,.people-create-form,.form-grid.two,.photo-form,.certificate-form,.person-meta,.request-facts,.overlap-list li{grid-template-columns:1fr}.people-create-form .wide-field,.certificate-form .wide-field{grid-column:auto}}
