/* Primary navigation grows by adding sections; narrow screens scroll without loading absent modules. */
/* Generated profile navigation is present before authentication/modules finish. */
.wp-compact>.nav{display:none!important}
.wp-initial-navigation-status{font:12px/1.4 'Segoe UI',Arial,sans-serif;color:var(--wp-nav-muted);margin:0;padding:0 0 5px}
.wp-initial-navigation-status a{color:inherit;margin-left:8px}
.wp-compact .session-startup{background:var(--wp-nav-bg);color:var(--wp-nav-text)}
.wp-compact .session-startup .startup-state{background:var(--wp-nav-card);color:var(--wp-nav-text);border-color:var(--wp-nav-rule)}
:root{--wp-nav-bg:#24282f;--wp-nav-card:#30363f;--wp-nav-text:#f5f7fa;--wp-nav-muted:#c0c9d5;--wp-nav-rule:#535e6c;--wp-nav-gold:#ffe300;--wp-nav-top:60px}
html[data-wp-theme=light]{--wp-nav-bg:#edf0f4;--wp-nav-card:#fff;--wp-nav-text:#202630;--wp-nav-muted:#526174;--wp-nav-rule:#bac4d0}
body.wp-compact,body.wp-compact.wp-unified{margin-left:0!important;padding-top:0!important}
.wp-compact .wp-main,.wp-compact[data-device=phone] .wp-main{margin-left:0!important;max-width:none;padding:0!important;min-width:0}
.wp-compact #wp-content{padding:16px;min-width:0}
.wp-compact.wp-unified .main{padding-top:0!important}.wp-compact .topbar,.wp-compact>.vt-top,.wp-compact .b-context-tabs,.wp-compact .profile-tabs,.wp-compact .wp-device-switch,.wp-compact .wp-workflow-tabs,.wp-compact .wp-time-section-tabs,.wp-compact .wp-compact-old{display:none!important}
.wp-compact .wp-compact-header{display:block!important;position:sticky!important;top:0;z-index:50;margin:0!important;padding:8px 12px 0!important;gap:0!important;width:100%;max-width:none;background:var(--wp-nav-bg)!important;color:var(--wp-nav-text)!important;border:0!important;border-bottom:1px solid var(--wp-nav-rule)!important;border-radius:0!important}
.wp-compact-top{display:flex;align-items:center;gap:12px;min-width:0;height:44px;margin:0 0 8px}
.wp-compact-primary{display:flex;align-items:stretch;gap:5px;flex:1;min-width:0;max-width:680px}
.wp-compact-primary a{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:44px;padding:8px 6px;border-radius:8px;background:var(--wp-nav-card);color:var(--wp-nav-text);font:700 14px/1.2 'Segoe UI',Arial,sans-serif;text-decoration:none;white-space:normal;text-align:center;border:1px solid transparent}
.wp-compact-primary a[aria-current=page]{background:var(--wp-nav-gold);color:#20242b;border-color:var(--wp-nav-gold)}
.wp-compact .wp-compact-trigger{position:static!important;display:flex!important;align-items:center;justify-content:center;gap:7px;flex:0 0 66px;width:66px;height:44px;min-height:44px!important;min-width:66px;margin:0 0 0 auto!important;padding:4px!important;background:var(--wp-nav-card)!important;border:1px solid var(--wp-nav-rule)!important;border-radius:9px!important;color:var(--wp-nav-muted)!important;cursor:pointer;box-shadow:none}
.wp-compact-trigger img{display:block!important;width:34px!important;height:34px!important;min-width:34px!important;max-width:none!important;margin:0!important;padding:0!important;object-fit:contain;border:0!important;border-radius:6px!important;background:transparent!important}
.wp-compact-trigger svg{width:9px;height:22px;fill:currentColor;stroke:none;flex:none}.wp-compact .wp-compact-trigger[aria-expanded=true]{border-color:var(--wp-nav-gold)!important;color:var(--wp-nav-gold)!important}
.wp-compact-context{display:flex;gap:5px;align-items:stretch;min-width:0;overflow-x:auto;scrollbar-width:thin;background:var(--wp-nav-bg);padding:0 0 3px;overscroll-behavior-x:contain}
.wp-compact-context:empty{display:none}.wp-compact-context>a,.wp-compact .wp-compact-context>button{display:flex;align-items:center;justify-content:center;flex:none;min-height:44px!important;padding:9px 13px!important;margin:0!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;font:600 14px/1.2 'Segoe UI',Arial,sans-serif!important;background:transparent!important;color:var(--wp-nav-muted)!important;text-decoration:none;white-space:nowrap;cursor:pointer}
.wp-compact-context>[aria-current=page],.wp-compact .wp-compact-context>[aria-pressed=true]{border-bottom-color:var(--wp-nav-gold)!important;color:var(--wp-nav-gold)!important}
html[data-wp-theme=light] .wp-compact-context>[aria-current=page],html[data-wp-theme=light] .wp-compact-context>[aria-pressed=true]{color:#222a35!important}
.wp-compact-primary a:focus-visible,.wp-compact-context>*:focus-visible,.wp-compact-trigger:focus-visible{outline:3px solid var(--wp-nav-gold)!important;outline-offset:-3px}
.wp-compact .wp-sidebar.wp-compact-sidebar{position:fixed!important;left:auto!important;right:0!important;top:var(--wp-nav-top)!important;bottom:0!important;width:min(330px,86vw)!important;max-width:86vw;height:calc(100dvh - var(--wp-nav-top))!important;margin:0!important;padding:14px 18px!important;transform:translateX(105%)!important;visibility:hidden;z-index:70;background:var(--wp-nav-bg)!important;color:var(--wp-nav-text)!important;transition:transform .18s ease,visibility .18s;box-shadow:none;overflow-y:auto;overscroll-behavior:contain;display:flex!important;flex-direction:column}
.wp-compact.wp-menu-open .wp-sidebar.wp-compact-sidebar{transform:translateX(0)!important;visibility:visible;box-shadow:-10px 0 30px #0004}
.wp-compact .wp-sidebar>.wp-logo{display:none!important}.wp-compact-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.wp-compact-menu-heading strong{font-size:20px}.wp-compact-menu-heading small{display:block;font-size:12px;color:var(--wp-nav-muted);margin-top:3px}.wp-compact .wp-compact-menu-heading button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:24px;color:var(--wp-nav-text);border:1px solid var(--wp-nav-rule);border-radius:8px;background:var(--wp-nav-card)}
.wp-compact-backdrop{position:fixed;inset:var(--wp-nav-top) 0 0;z-index:65;background:#10131988;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .18s}
.wp-compact.wp-menu-open>.wp-compact-backdrop{visibility:visible;opacity:1;pointer-events:auto}
.wp-compact .wp-sidebar nav{overflow-y:auto;min-height:0}.wp-compact .wp-sidebar nav a{display:flex;align-items:center;gap:12px;min-height:44px;flex:none;color:var(--wp-nav-text);text-decoration:none;padding:9px 8px;border-radius:6px}.wp-compact .wp-sidebar nav a:hover{background:var(--wp-nav-card)}
.wp-compact .wp-sidebar .wp-user{margin-top:18px;color:var(--wp-nav-text)}.wp-compact .wp-nav-label{color:var(--wp-nav-muted)}
.wp-compact .wp-worker-account{display:block!important;margin:0!important;background:transparent!important}.wp-compact .wp-worker-account>summary{display:none!important}.wp-compact .wp-worker-account>div{position:static!important;width:auto!important;min-width:0!important;display:block!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.wp-compact .wp-worker-account a,.wp-compact .wp-worker-account button{display:flex;align-items:center;min-height:44px;width:100%;margin:5px 0;color:var(--wp-nav-text)}.wp-compact .wp-worker-account label{display:block;margin:10px 0}.wp-compact .wp-worker-account select{width:100%;max-width:100%}
.wp-compact .wp-header .wp-work-categories{display:flex!important;flex-wrap:nowrap;gap:5px;overflow-x:auto;width:100%;padding:4px 0 7px;margin:0!important;max-width:none;border:0;scrollbar-width:thin}
.wp-compact .wp-header .wp-work-category{display:flex!important;flex-direction:row;align-items:center;gap:7px;flex:0 0 auto;width:auto;min-width:0;min-height:44px!important;padding:7px 10px!important;border-radius:7px;font-size:12px!important;line-height:1.2}
.wp-compact .wp-header .wp-work-category svg{width:19px;height:19px;min-width:19px}.wp-compact .wp-header .wp-work-category span{max-width:116px}
.wp-compact .wp-compact-worker-menu .wp-nav-label{display:none}.wp-compact .wp-worker-header .wp-worker-brand{display:none!important}
.wp-compact[data-device=phone] .wp-global-menu{display:flex!important}.wp-compact .wp-worker-header.wp-compact-header{height:auto!important;min-height:0!important}
@media(max-width:430px){.wp-compact .wp-compact-header{padding-left:10px!important;padding-right:10px!important}.wp-compact-top{gap:10px}.wp-compact-primary a{padding:7px 5px;font-size:12px}.wp-compact-context>a,.wp-compact .wp-compact-context>button{padding:9px 11px!important;font-size:13px!important}.wp-compact #wp-content{padding:12px}.wp-compact .wp-header .wp-work-category{font-size:11px!important}.wp-compact .wp-header .wp-work-category svg{width:17px;height:17px;min-width:17px}}
@media(prefers-reduced-motion:reduce){.wp-compact .wp-sidebar.wp-compact-sidebar,.wp-compact-backdrop{transition:none}}
/* The shared theme styles every form control with !important; navigation stays a flat contextual row. */
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-context>button{background:transparent!important;color:var(--wp-nav-muted)!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;box-shadow:none!important}
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-context>button[aria-pressed=true]{color:var(--wp-nav-gold)!important;border-bottom-color:var(--wp-nav-gold)!important}
html[data-wp-theme=light] body.wp-compact .wp-compact-header .wp-compact-context>button[aria-pressed=true]{color:#222a35!important}
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-trigger{background:var(--wp-nav-card)!important;color:var(--wp-nav-muted)!important;border-color:var(--wp-nav-rule)!important}
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-trigger[aria-expanded=true]{border-color:var(--wp-nav-gold)!important;color:var(--wp-nav-gold)!important}
html[data-wp-theme] body.wp-compact .wp-sidebar.wp-compact-sidebar nav a.active{color:#20242b!important;background:var(--wp-nav-gold)!important}
.wp-compact .wp-sidebar.wp-compact-sidebar{transition:transform .18s ease}
.wp-compact-context::-webkit-scrollbar{height:3px}.wp-compact-context::-webkit-scrollbar-thumb{background:var(--wp-nav-rule);border-radius:3px}
/* A single yellow marks the current location and the control under the pointer. */
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-context>:is([aria-current=page],[aria-pressed=true]),html[data-wp-theme] body.wp-compact .wp-sidebar.wp-compact-sidebar nav a.active{background:var(--wp-nav-gold)!important;color:#20242b!important;border-color:var(--wp-nav-gold)!important}
html[data-wp-theme] body.wp-compact :is(.wp-compact-primary a,.wp-compact-context>a,.wp-compact-context>button,.wp-sidebar.wp-compact-sidebar nav a):focus-visible{background:var(--wp-nav-gold)!important;color:#20242b!important;outline:2px solid var(--wp-nav-text);outline-offset:2px}
@media(hover:hover) and (pointer:fine){html[data-wp-theme] body.wp-compact :is(.wp-compact-primary a,.wp-compact-context>a,.wp-compact-context>button,.wp-sidebar.wp-compact-sidebar nav a):hover{background:var(--wp-nav-gold)!important;color:#20242b!important;border-color:var(--wp-nav-gold)!important}}
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-context>button[aria-pressed=true]{background:var(--wp-nav-gold)!important;color:#20242b!important;border-bottom-color:var(--wp-nav-gold)!important}
html[data-wp-theme] body.wp-compact .wp-compact-header .wp-compact-context>:is(a,button){border-radius:8px!important}

/* Legacy forms must appear above the sticky application navigation. */
.wp-compact .modal-back{z-index:100!important}
/* Approved compact list A: one identity, scrollable choices, fixed logout. */
.wp-compact .wp-sidebar.wp-compact-sidebar{overflow:hidden;padding:14px 18px max(14px,env(safe-area-inset-bottom))!important}
.wp-compact-menu-heading{flex:none;margin:0 0 14px}.wp-compact-menu-heading strong{font-size:20px}
.wp-compact-menu-identity{display:flex;flex:none;align-items:center;gap:12px;margin:0 0 18px;padding:0 2px;min-width:0}
.wp-compact-menu-identity strong{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.wp-account-photo{display:block;width:48px;height:48px;flex:0 0 48px;border-radius:50%;object-fit:cover;background:var(--wp-nav-card,var(--wp-control))}
.wp-account-photo-empty{display:grid;place-items:center;color:var(--wp-nav-muted,var(--wp-muted))}.wp-account-photo-empty svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.5}
.wp-compact .wp-sidebar>nav{flex:1;min-height:0}.wp-compact .wp-sidebar nav{align-content:start}.wp-compact .wp-sidebar nav a{min-height:44px;padding:10px 8px;border-radius:8px;font-size:14px;border-bottom:1px solid var(--wp-nav-rule)}
.wp-compact .wp-sidebar.wp-compact-worker-menu>.wp-worker-account{flex:1;min-height:0;overflow:auto}.wp-compact .wp-worker-account>div>nav{overflow:visible}
.wp-compact-menu-footer{flex:none;margin-top:auto;padding-top:14px}
.wp-compact .wp-compact-menu-footer button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:10px!important;font:700 14px 'Segoe UI',Arial,sans-serif;color:var(--wp-nav-text)!important;background:var(--wp-nav-card)!important;border:1px solid var(--wp-nav-gold)!important;border-radius:8px!important;cursor:pointer}
.wp-compact-menu-footer svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}
.wp-account-settings{max-width:640px;margin:0 0 16px}.wp-account-settings h2{margin:0 0 16px}.wp-account-settings .wp-preferences{padding:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.wp-account-photo-preview{display:flex;align-items:center;gap:14px;margin:8px 0 20px}.wp-account-photo-preview .wp-account-photo{width:64px;height:64px;flex-basis:64px}
@media(max-width:430px){.wp-account-settings .wp-preferences{grid-template-columns:1fr}.wp-compact-menu-identity{margin-bottom:12px}}

/* Leave days keep a stable height even when eight or more people are away. */
html[data-wp-theme] .vt-calendar-day{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;text-align:left;gap:3px;height:94px;min-width:0;padding:6px;border-radius:10px;position:relative}
html[data-wp-theme] body .vt-calendar button.vt-calendar-day.has-leave{background:#d9eaf7!important;color:#111827!important;border-color:#b8d5ed!important}
html[data-wp-theme] .vt-calendar-day.has-leave>b{color:#111827!important}
html[data-wp-theme] .vt-calendar-day.has-leave .vt-calendar-event{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#b8d5ed!important;color:#173957!important;border-left:3px solid #9b6c00;border-radius:4px;padding:2px 4px;font-size:11px;line-height:1.25}
html[data-wp-theme] .vt-calendar-day.has-leave .vt-calendar-event.approved{border-left-color:#247451}
html[data-wp-theme] .vt-calendar-more{font-size:11px;font-weight:700;color:#173957!important;margin-top:auto}
.vt-calendar-people p{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--wp-border);padding:8px 0}.vt-calendar-people .pill{flex:none}
@media(max-width:430px){html[data-wp-theme] .vt-calendar-day{height:90px;padding:4px}html[data-wp-theme] .vt-calendar-day.has-leave .vt-calendar-event{font-size:10px;padding:2px}}

/* Keep room for future modules such as Reports without squeezing labels. */
.wp-compact-primary{overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}
.wp-compact-primary a{flex:1 0 92px}
@media(max-width:600px){.wp-compact-primary a{flex:1 0 86px;font-size:13px}.wp-compact-top{height:52px}}
.wp-compact .wp-compact-header>div:not(.wp-compact-top),.wp-compact .wp-compact-header>.wp-header-home{display:none!important}
/* All four current sections fit on a phone; the drawer is the only secondary menu. */
@media(max-width:430px){
 .wp-compact-top{gap:6px}
 .wp-compact-primary{gap:3px;overflow:visible}
 .wp-compact-primary a{flex:1 1 0;min-width:0;padding:4px 2px;font-size:11px}
 .wp-compact .wp-compact-trigger{flex:0 0 48px;width:48px;min-width:48px;gap:2px;padding:2px!important}
 .wp-compact-trigger img{width:28px!important;height:28px!important;min-width:28px!important}
 .wp-compact-trigger svg{width:6px}
}
/* A foreman can see all five attendance views without horizontal scrolling. */
@media(max-width:600px){
 .wp-compact .wp-compact-context.wp-compact-context-time{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;overflow:visible;padding-bottom:5px}
 .wp-compact .wp-compact-context.wp-compact-context-time>:is(a,button){grid-column:span 2;min-width:0;min-height:44px!important;padding:5px 3px!important;white-space:normal;text-align:center;font-size:12px!important;line-height:1.2!important}
 .wp-compact .wp-compact-context.wp-compact-context-time>:nth-child(n+4){grid-column:span 3}
}
