@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Outfit:wght@400;500;600;700&family=Atkinson+Hyperlegible:wght@400;700&display=swap');

:root {
  color-scheme: light dark;
  --theme-page: var(--eos-color-page, Canvas);
  --theme-surface: var(--eos-color-surface, Canvas);
  --theme-surface-raised: var(--eos-color-surface-raised, Canvas);
  --theme-primary: var(--eos-color-primary, var(--eos-color-accent, LinkText));
  --theme-navigation: var(--eos-color-navigation-surface, var(--eos-color-surface));
  --theme-header: var(--eos-color-header-surface, var(--eos-color-surface));
  --theme-text-primary: var(--eos-color-text-primary, CanvasText);
  --theme-text-muted: var(--eos-color-text-muted, GrayText);
  --theme-border: var(--eos-color-border, GrayText);
  --theme-accent: var(--eos-color-accent, LinkText);
  --theme-accent-text: var(--eos-color-accent-text, Canvas);
  --theme-focus: var(--eos-color-focus, Highlight);
  --theme-success: var(--eos-color-success, CanvasText);
  --theme-warning: var(--eos-color-warning, CanvasText);
  --theme-danger: var(--eos-color-danger, CanvasText);
  --theme-font-family: var(--eos-font-family, Inter);
  --theme-body-size: var(--eos-font-body-size, 1rem);
  --theme-label-size: var(--eos-font-label-size, 0.875rem);
  --theme-heading-size: var(--eos-font-heading-size, 2rem);
  --theme-space-compact: var(--eos-space-compact, 0.5rem);
  --theme-space-control: var(--eos-space-control, 0.75rem);
  --theme-space-section: var(--eos-space-section, 1.5rem);
  --theme-space-page: var(--eos-space-page, 2rem);
  --theme-radius-control: var(--eos-radius-control, 0.5rem);
  --theme-radius-panel: var(--eos-radius-panel, 0.75rem);
  font-family: var(--theme-font-family, Inter), system-ui, sans-serif;
  color: var(--theme-text-primary);
  background: var(--theme-page);
  font-size: var(--theme-body-size);
}

* { box-sizing: border-box; }
:root:not([data-theme="high-contrast"]) { font-family: var(--theme-font-family, Inter), system-ui, sans-serif; }
:root[data-theme="high-contrast"] { font-family: var(--theme-font-family), system-ui, sans-serif; }
a, a:hover { text-decoration: none; }
body {
  margin: 0;
  min-height: 100vh;
  background: var(--theme-page);
  color: var(--theme-text-primary);
}
button, select { font: inherit; }
button, select, a { outline-color: var(--theme-focus); }
button:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid var(--theme-focus); outline-offset: 2px; }
[hidden] { display: none !important; }

.theme-loading { max-width: 48rem; margin: var(--theme-space-page) auto; padding: var(--theme-space-section); }
.workforce-app { display: grid; width: 100%; min-width: 0; height: 100dvh; min-height: 0; grid-template-rows: auto minmax(0, 1fr); overflow: hidden; }
.workforce-layout { display: grid; width: 100%; min-width: 0; height: 100%; min-height: 0; grid-template-columns: var(--shell-sidebar-width, 22.5rem) minmax(0, 1fr); transition: grid-template-columns .18s ease; }
.workforce-sidebar { position: relative; top: auto; align-self: stretch; display: flex; min-width: 0; flex-direction: column; height: 100%; padding: var(--theme-space-control); border-right: 1px solid var(--theme-border); color: var(--eos-color-navigation-text, var(--theme-text-primary)); background: var(--theme-navigation); }
:root[data-theme="high-contrast"] .workforce-sidebar { background: var(--theme-surface); }
.sidebar-collapse { display: grid; width: 2.5rem; height: 2.5rem; flex: 0 0 auto; place-items: center; margin: 0 0 var(--theme-space-control); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); color: var(--eos-color-navigation-text, var(--theme-text-primary)); background: transparent; cursor: pointer; }
.sidebar-collapse:hover { border-color: var(--theme-accent); background: color-mix(in srgb, var(--theme-text-primary) 7%, transparent); }
.sidebar-collapse svg { width: 1.1rem; height: 1.1rem; fill: none; stroke: currentColor; stroke-width: 1.5; }
.sidebar-scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; margin: 0 calc(-1 * var(--theme-space-control)); padding: 0 var(--theme-space-control); }
.nav-label { margin: 0; padding: var(--theme-space-compact) var(--theme-space-control); color: var(--eos-color-navigation-muted, var(--theme-accent)); font-size: var(--theme-label-size); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.workforce-main { width: auto; min-width: 0; height: 100%; min-height: 0; overflow: auto; }
.topbar { position: sticky; top: 0; z-index: 20; display: grid; grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr); align-items: center; gap: var(--theme-space-control); min-height: 4.5rem; padding: var(--theme-space-compact) var(--theme-space-page); color: var(--eos-color-header-text, var(--theme-text-primary)); border-bottom: 1px solid var(--theme-border); background: var(--theme-header); }
.topbar:not(:has(.clock)) { display: flex; justify-content: space-between; }
.header-start { display: flex; min-width: 0; align-items: center; gap: var(--theme-space-section); }
.header-tools { display: flex; min-width: 0; align-items: center; justify-content: flex-end; gap: var(--theme-space-control); }
.brand { display: inline-flex; align-items: center; gap: var(--theme-space-compact); color: var(--eos-color-header-text, var(--theme-text-primary)); text-decoration: none; font-weight: 750; white-space: nowrap; }
.brand img { width: 2rem; height: 2rem; flex: 0 0 auto; object-fit: contain; }
.breadcrumbs { display: flex; min-width: 0; align-items: center; gap: var(--theme-space-compact); color: var(--eos-color-header-muted, var(--theme-text-muted)); font-size: var(--theme-label-size); white-space: nowrap; }
.breadcrumbs a { color: inherit; }
.breadcrumbs a:hover { color: var(--eos-color-header-text, var(--theme-text-primary)); }
.breadcrumbs [aria-current="page"] { overflow: hidden; color: var(--eos-color-header-text, var(--theme-text-primary)); text-overflow: ellipsis; }
.breadcrumbs > span[aria-hidden="true"] { color: var(--eos-color-navigation-accent, var(--theme-accent)); }
.clock { display: grid; justify-items: center; gap: .05rem; color: var(--eos-color-header-muted, var(--theme-text-muted)); font-size: var(--theme-label-size); line-height: 1.25; white-space: nowrap; font-variant-numeric: tabular-nums; }
.clock strong { color: var(--eos-color-header-text, var(--theme-text-primary)); font-size: var(--theme-body-size); font-weight: 600; }
.work-nav { display: grid; gap: var(--theme-space-compact); }
.nav-group + .nav-group { margin-top: var(--theme-space-control); border-top: 1px solid color-mix(in srgb, var(--eos-color-navigation-text, var(--theme-text-primary)) 14%, transparent); padding-top: var(--theme-space-control); }
.work-nav a { display: flex; align-items: center; gap: var(--theme-space-control); min-height: 2.75rem; padding: var(--theme-space-compact) var(--theme-space-control); border-radius: var(--theme-radius-control); color: var(--eos-color-navigation-muted, var(--theme-text-muted)); text-decoration: none; }
.work-nav a:hover, .work-nav a[aria-current="page"] { color: var(--eos-color-navigation-text, var(--theme-text-primary)); background: color-mix(in srgb, var(--eos-color-navigation-accent, var(--theme-primary)) 14%, var(--theme-navigation)); }
:root[data-theme="high-contrast"] .work-nav a[aria-current="page"] { background: var(--theme-surface-raised); }
.work-nav svg { width: 1rem; height: 1rem; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.nav-footer { position: sticky; z-index: 2; bottom: 0; margin: auto calc(-1 * var(--theme-space-control)) calc(-1 * var(--theme-space-section)); border-top: 1px solid color-mix(in srgb, var(--eos-color-navigation-text, var(--theme-text-primary)) 14%, transparent); padding: var(--theme-space-control) var(--theme-space-control) max(var(--theme-space-control), env(safe-area-inset-bottom)); background: var(--theme-navigation); }
.nav-profile { display: flex; align-items: center; gap: var(--theme-space-compact); min-width: 0; border-radius: var(--theme-radius-control); padding: var(--theme-space-compact); color: var(--eos-color-navigation-text, var(--theme-text-primary)); }
.avatar { display: grid; width: 2.125rem; height: 2.125rem; flex: 0 0 auto; place-items: center; border: 1px solid color-mix(in srgb, var(--eos-brand-cyan) 50%, transparent); border-radius: 50%; color: var(--eos-color-accent-text); background: linear-gradient(135deg, var(--eos-brand-pink), var(--eos-brand-violet) 55%, var(--eos-brand-cyan)); font-size: .7rem; font-weight: 700; }
.nav-profile-copy { display: grid; min-width: 0; flex: 1; gap: .1rem; }
.nav-profile-copy strong { overflow: hidden; font-size: var(--theme-label-size); text-overflow: ellipsis; white-space: nowrap; }
.nav-profile-copy small { color: var(--eos-color-navigation-muted, var(--theme-text-muted)); font-size: .68rem; }
.presence-dot { width: .5rem; height: .5rem; flex: 0 0 auto; border-radius: 50%; background: var(--theme-success); box-shadow: 0 0 .5rem color-mix(in srgb, var(--theme-success) 50%, transparent); }
.workforce-app.nav-collapsed .workforce-layout { grid-template-columns: 4.5rem minmax(0, 1fr); }
.workforce-app.nav-collapsed .workforce-sidebar { align-items: center; padding-inline: .5rem; }
.workforce-app.nav-collapsed .sidebar-scroll { width: 100%; margin-inline: 0; padding-inline: 0; }
.workforce-app.nav-collapsed .nav-label, .workforce-app.nav-collapsed .work-nav a span, .workforce-app.nav-collapsed .nav-profile-copy, .workforce-app.nav-collapsed .presence-dot { display: none; }
.workforce-app.nav-collapsed .work-nav { width: 100%; }
.workforce-app.nav-collapsed .work-nav a { justify-content: center; padding-inline: .25rem; }
.workforce-app.nav-collapsed .nav-footer { width: calc(100% + 1rem); padding-inline: .45rem; }
.workforce-app.nav-collapsed .nav-profile { justify-content: center; padding-inline: 0; }
:root[data-theme="high-contrast"] .nav-profile { border: 1px solid var(--theme-border); }
:root[data-theme="high-contrast"] .avatar { border-color: var(--theme-border); color: var(--theme-page); background: var(--theme-primary); }
.skip-link { position: absolute; z-index: 2; top: var(--theme-space-compact); left: -100vw; padding: var(--theme-space-control); border-radius: var(--theme-radius-control); background: var(--theme-surface-raised); color: var(--theme-text-primary); }
.skip-link:focus { left: var(--theme-space-control); }
.topbar-actions { display: flex; align-items: center; gap: var(--theme-space-compact); }
.header-icon-button { display: grid; width: 2.75rem; min-height: 2.75rem; place-items: center; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); color: var(--eos-color-header-text, var(--theme-text-primary)); background: color-mix(in srgb, var(--theme-header) 72%, var(--theme-surface-raised)); cursor: pointer; }
.header-icon-button:hover { border-color: var(--theme-accent); background: var(--theme-surface-raised); }
.header-icon-button:focus-visible { outline: 3px solid var(--theme-focus); outline-offset: 2px; }
.header-icon-button svg { width: 1.125rem; height: 1.125rem; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.mobile-nav-toggle { display: none; }
.page-heading { max-width: 82rem; margin: 0 auto; padding: var(--theme-space-page) var(--theme-space-page) var(--theme-space-section); }
.eyebrow { margin: 0 0 var(--theme-space-compact); color: var(--theme-accent); font-size: var(--theme-label-size); font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
h1, h2, h3, h4 { font-family: var(--eos-font-heading-family, Outfit), var(--theme-font-family, Inter), system-ui, sans-serif; letter-spacing: -.02em; }
h1[id], h2[id], section[id], article[id] { scroll-margin-top: calc(4.5rem + var(--theme-space-control)); }
:root[data-theme="high-contrast"] h1,
:root[data-theme="high-contrast"] h2,
:root[data-theme="high-contrast"] h3,
:root[data-theme="high-contrast"] h4 { font-family: var(--theme-font-family), system-ui, sans-serif; }
h1, h2, p { margin-top: 0; }
h1 { margin-bottom: var(--theme-space-compact); font-size: var(--theme-heading-size); line-height: 1.12; }
.page-heading > p:not(.eyebrow) { color: var(--theme-text-muted); }
.session-state { display: flex; align-items: center; flex-wrap: wrap; gap: var(--theme-space-compact); margin: var(--theme-space-control) 0 0; font-size: var(--theme-label-size); line-height: 1.45; }
.session-state[data-state="error"] { color: var(--theme-danger); }
.content-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 32rem), 1fr)); gap: var(--theme-space-control); width: 100%; min-width: 0; max-width: 82rem; margin: 0 auto; padding: 0 var(--theme-space-page) var(--theme-space-page); }
.panel { min-width: 0; overflow: hidden; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); background: var(--theme-surface); }
.sign-in-panel { display: grid; width: min(calc(100% - var(--theme-space-page) - var(--theme-space-page)), 64rem); grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem); align-items: center; gap: var(--theme-space-section); max-width: 64rem; margin: 0 auto var(--theme-space-section); padding: var(--theme-space-section); }
.recovery-page .sign-in-panel { grid-template-columns: minmax(0, 1fr); grid-auto-flow: row; }
.recovery-page .sign-in-form { width: 100%; max-width: 32rem; }
.sign-in-copy h2 { margin: 0 0 var(--theme-space-compact); }
.sign-in-copy > p:last-child { margin: 0; color: var(--theme-text-muted); }
.sign-in-form { display: grid; min-width: 0; gap: var(--theme-space-compact); }
.sign-in-form label { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.sign-in-form input:not([type="radio"]) { width: 100%; min-height: 2.75rem; padding: 0 var(--theme-space-control); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); background: var(--theme-surface-raised); color: var(--theme-text-primary); font: inherit; }
.sign-in-form input:-webkit-autofill,
.sign-in-form input:-webkit-autofill:hover,
.sign-in-form input:-webkit-autofill:focus,
.sign-in-form input:autofill {
  -webkit-text-fill-color: var(--theme-text-primary);
  -webkit-box-shadow: 0 0 0 1000px var(--theme-surface-raised) inset;
  caret-color: var(--theme-text-primary);
}
.sign-in-form input:focus-visible { outline: 3px solid var(--theme-focus); outline-offset: 2px; }
.recovery-method { display: flex; flex-wrap: wrap; align-items: center; gap: var(--theme-space-compact) var(--theme-space-section); margin: 0; padding: var(--theme-space-compact) var(--theme-space-control); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); }
.recovery-method legend { padding: 0 var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.recovery-method label { display: inline-flex; align-items: center; gap: var(--theme-space-compact); }
.sign-in-form .recovery-method input[type="radio"] { width: 1rem; min-height: 1rem; margin: 0; accent-color: var(--theme-accent); }
.sign-in-form button { min-height: 2.75rem; padding: 0 var(--theme-space-control); border: 1px solid var(--eos-color-action-primary, var(--theme-accent)); border-radius: var(--theme-radius-control); background: var(--eos-color-action-primary, var(--theme-accent)); color: var(--eos-color-action-primary-text, var(--theme-accent-text)); font: inherit; font-weight: 700; cursor: pointer; }
.sign-in-form button:hover { border-color: var(--eos-color-action-primary-hover, var(--eos-color-action-primary, var(--theme-accent))); background: var(--eos-color-action-primary-hover, var(--eos-color-action-primary, var(--theme-accent))); }
.sign-in-form button:disabled { opacity: .65; cursor: wait; }
.session-scope-panel { display: flex; align-items: center; justify-content: space-between; gap: var(--theme-space-section); margin: 0 0 var(--theme-space-section); padding: var(--theme-space-section); }
.session-scope-panel p { margin: .3rem 0 0; color: var(--theme-text-muted); }
.session-scope-panel .eyebrow { margin: 0; }
.session-scope-panel button, .session-scope-actions button { min-height: 2.5rem; padding: 0 var(--theme-space-control); border-radius: var(--theme-radius-control); font: inherit; cursor: pointer; }
.session-scope-panel button { flex: 0 0 auto; }
.session-scope-dialog { width: min(30rem, calc(100vw - 2rem)); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); padding: var(--theme-space-section); color: var(--theme-text-primary); background: var(--theme-surface-raised); box-shadow: 0 1.2rem 3rem color-mix(in srgb, var(--theme-text-primary) 24%, transparent); }
.session-scope-dialog::backdrop { background: color-mix(in srgb, var(--theme-text-primary) 42%, transparent); }
.session-scope-dialog h2 { margin: .25rem 0 .5rem; font-size: var(--theme-heading-size); }
.session-scope-dialog p { color: var(--theme-text-muted); line-height: 1.45; }
.session-scope-dialog label { display: block; margin: var(--theme-space-section) 0 .4rem; font-weight: 600; }
.session-scope-dialog select { width: 100%; min-height: 2.75rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: 0 2rem 0 var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface); font: inherit; }
.session-scope-actions { display: flex; justify-content: flex-end; gap: var(--theme-space-compact); margin-top: var(--theme-space-section); }
.session-scope-actions button[type="submit"] { border: 1px solid var(--eos-color-action-primary, var(--theme-accent)); background: var(--eos-color-action-primary, var(--theme-accent)); color: var(--eos-color-action-primary-text, var(--theme-accent-text)); font-weight: 650; }
.session-scope-actions button:disabled { cursor: wait; opacity: .65; }
.sign-in-form a { color: var(--theme-accent); font-size: var(--theme-label-size); }
.recovery-codes { grid-column: 1 / -1; min-width: 0; padding: var(--theme-space-control); }
.recovery-codes h3 { margin: 0 0 var(--theme-space-compact); font-size: calc(var(--theme-heading-size) * .48); }
.recovery-codes p { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.recovery-code-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: var(--theme-space-compact); padding-left: 1.5rem; }
.recovery-code-list code { overflow-wrap: anywhere; font-size: var(--theme-label-size); letter-spacing: .04em; }
.recovery-code-actions { display: flex; flex-wrap: wrap; gap: var(--theme-space-compact); }
.login-status { min-height: 1.4em; margin: 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.login-status[data-state="error"] { color: var(--theme-danger); }
.login-status[data-state="loaded"] { color: var(--theme-success); }
.login-status[data-state="loading"] { color: var(--theme-text-muted); }
.panel-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--theme-space-control); padding: var(--theme-space-section); border-bottom: 1px solid var(--theme-border); }
.panel-heading .eyebrow { margin-bottom: var(--theme-space-compact); }
.work-list-toolbar { display: grid; grid-template-columns: minmax(12rem, 2fr) minmax(9rem, 1fr) minmax(9rem, 1fr) auto; align-items: end; gap: var(--theme-space-compact); padding: var(--theme-space-control) var(--theme-space-section); border-bottom: 1px solid var(--theme-border); background: var(--theme-surface); }
.work-list-toolbar[hidden], .work-list-summary[hidden], .work-list-pagination[hidden] { display: none; }
.work-list-toolbar label { display: grid; min-width: 0; gap: .3rem; color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.work-list-toolbar input, .work-list-toolbar select { width: 100%; min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: 0 var(--theme-space-control); color: var(--theme-text-primary); background-color: var(--theme-surface-raised); font: inherit; }
.work-list-toolbar input::placeholder { color: var(--theme-text-muted); opacity: .8; }
.work-list-toolbar .work-list-reset { min-height: 2.5rem; white-space: nowrap; }
.work-list-summary { display: flex; min-height: 3.25rem; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--theme-space-compact); padding: var(--theme-space-compact) var(--theme-space-section); border-bottom: 1px solid var(--theme-border); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.work-list-pagination { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: var(--theme-space-compact); }
.work-list-pagination label { white-space: nowrap; }
.work-list-pagination select, .work-list-pagination button { min-height: 2.25rem; font-size: var(--theme-label-size); }
.work-list-pagination select { padding-left: var(--theme-space-compact); padding-right: 1.75rem; }
.work-list-pagination span { min-width: 5rem; text-align: center; white-space: nowrap; }
.work-list-note { margin: 0 var(--theme-space-section) var(--theme-space-section); border-left: 3px solid var(--theme-accent); padding: var(--theme-space-compact) var(--theme-space-control); color: var(--theme-text-muted); background: var(--theme-surface-raised); font-size: var(--theme-label-size); line-height: 1.45; }
h2 { margin-bottom: 0; font-size: calc(var(--theme-heading-size) * .62); }
.panel-body { display: flex; align-items: flex-start; gap: var(--theme-space-compact); min-height: 8rem; padding: var(--theme-space-section); color: var(--theme-text-muted); line-height: 1.55; }
.panel-body > span:not(.spinner) { min-width: 0; overflow-wrap: anywhere; }
.panel-body[data-state="error"] { color: var(--theme-danger); }
.panel-body[data-state="dependency"] { color: var(--theme-warning); }
.panel-body[data-state="restricted"] { color: var(--theme-text-muted); }
.panel-body[data-state="empty"] { color: var(--theme-text-muted); }
.panel-body[data-state="loaded"] { color: var(--theme-success); }
.panel-body button { align-self: flex-start; flex: 0 0 auto; }
.icon-action, .secondary, select, .theme-loading button { min-height: 2.75rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); background: var(--theme-surface-raised); color: var(--theme-text-primary); padding: 0 var(--theme-space-control); font: inherit; }
select { appearance: none; padding-right: 2rem; background-color: var(--theme-surface-raised); background-image: var(--eos-select-triangle); background-repeat: no-repeat; background-position: right var(--theme-space-control) center; background-size: 8px 5px; }
.icon-action { width: 2.25rem; padding: 0; cursor: pointer; font-size: 1.25rem; line-height: 1; }
.secondary { cursor: pointer; }
.icon-action:hover, .secondary:hover { border-color: var(--theme-accent); }
.record-list { display: grid; gap: var(--theme-space-compact); padding: 0 var(--theme-space-section) var(--theme-space-section); }
.record { display: grid; gap: var(--theme-space-compact); padding: var(--theme-space-control); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); background: var(--theme-surface-raised); }
.record small { color: var(--theme-text-muted); }
.task-details { margin-top: var(--theme-space-compact); border-top: 1px solid var(--theme-border); padding-top: var(--theme-space-compact); }
.task-details summary { width: fit-content; color: var(--theme-accent); cursor: pointer; font-weight: 650; }
.task-details summary:focus-visible { outline: 3px solid var(--theme-focus); outline-offset: 3px; border-radius: var(--theme-radius-control); }
.task-details-content { padding-top: var(--theme-space-control); }
.task-detail-list { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 2fr); gap: var(--theme-space-compact) var(--theme-space-control); margin: 0; }
.task-detail-list dt { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.task-detail-list dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.task-edit-form { margin-top: var(--theme-space-control); }
.task-edit-actions { display: flex; flex-wrap: wrap; gap: var(--theme-space-compact); }
.task-action-note { margin: var(--theme-space-control) 0 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); line-height: 1.5; }
.spinner { width: 1rem; height: 1rem; flex: 0 0 auto; border: 2px solid var(--theme-border); border-top-color: var(--theme-accent); border-radius: 50%; animation: spin .8s linear infinite; }
.footer { max-width: 82rem; margin: 0 auto; padding: 0 var(--theme-space-page) var(--theme-space-page); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.worker-dashboard { width: 100%; max-width: 88rem; min-width: 0; margin: 0 auto; padding: 0 var(--theme-space-page) var(--theme-space-page); }
.workforce-app .page-heading { max-width: 88rem; margin: 0 auto; padding: var(--theme-space-page) var(--theme-space-page) var(--theme-space-section); }
.workforce-app .workforce-main { container: workforce-content / inline-size; }
.workforce-app .sign-in-panel { width: min(calc(100% - var(--theme-space-page) - var(--theme-space-page)), 64rem); max-width: 64rem; margin: 0 auto var(--theme-space-section); }
.workforce-app .page-heading { padding-inline: 0; }
.worker-dashboard { padding-inline: 0; }
.workforce-app .footer { padding-inline: 0; }
.workforce-app.recovery-page .recovery-content { padding: 0 var(--theme-space-page) var(--theme-space-page); }
.workforce-app.recovery-page .page-heading { width: min(88rem, 100%); padding-inline: 0; }
.workforce-app.recovery-page .sign-in-panel {
  display: grid;
  width: min(100%, 64rem);
  max-width: 64rem;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  margin-inline: auto;
}
.workforce-app.recovery-page .sign-in-panel > *,
.workforce-app.recovery-page .sign-in-form input { min-width: 0; max-width: 100%; }
.workforce-app.recovery-page .sign-in-form { width: min(100%, 36rem); max-width: 36rem; }
.overview-section { margin-bottom: var(--theme-space-control); }
.summary-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--theme-space-control); }
.summary-card { display: grid; min-height: 7.5rem; align-content: start; gap: var(--theme-space-compact); padding: var(--theme-space-section); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); background: var(--theme-surface); color: var(--theme-text-primary); transition: border-color .15s ease, background-color .15s ease; }
.summary-card:hover { border-color: var(--theme-accent); background: var(--theme-surface-raised); }
.summary-card-label { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.summary-card strong { font-family: var(--eos-font-heading-family, Outfit), var(--theme-font-family), system-ui, sans-serif; font-size: calc(var(--theme-heading-size) * .9); line-height: 1; font-variant-numeric: tabular-nums; }
.summary-card strong[data-state="unavailable"], .summary-card strong[data-state="error"], .summary-card strong[data-state="scope-required"] { color: var(--theme-warning); }
.summary-card small { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.work-area { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: var(--theme-space-control); }
.work-area[data-detail-open="true"] { grid-template-columns: minmax(0, 1fr) minmax(22rem, var(--eos-workspace-width, 32rem)); }
.work-content { display: grid; min-width: 0; gap: var(--theme-space-control); }
.work-panel { scroll-margin-top: var(--theme-space-section); }
.management-panel { scroll-margin-top: var(--theme-space-section); }
.management-notice { margin: var(--theme-space-control) var(--theme-space-section); border-left: 3px solid var(--theme-accent); padding: var(--theme-space-control); color: var(--theme-text-muted); background: var(--theme-surface-raised); font-size: var(--theme-label-size); line-height: 1.45; }
.management-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--theme-space-section); padding: var(--theme-space-section); }
.resource-register { margin: 0 var(--theme-space-section) var(--theme-space-section); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); background: var(--theme-surface); }
.resource-register-heading { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--theme-space-control); padding: var(--theme-space-control) var(--theme-space-section); }
.resource-register-heading h3 { margin: 0; font-size: var(--theme-body-size); }
.resource-register-heading p { margin: .25rem 0 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.resource-register-heading button, .resource-register-pagination button { min-height: 2.4rem; }
.workforce-skill-create-zone { display: grid; gap: var(--theme-space-control); padding: var(--theme-space-control) var(--theme-space-section); border-bottom: 1px solid var(--theme-border); }
.workforce-skill-create-zone[hidden], .workforce-skill-create-form[hidden] { display: none; }
.workforce-skill-create-heading { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--theme-space-control); }
.workforce-skill-create-heading h3, .workforce-skill-create-form h4 { margin: 0; font-size: var(--theme-heading-small-size); }
.workforce-skill-create-heading p { margin: .25rem 0 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.workforce-skill-create-form { max-width: 46rem; }
.workforce-skill-create-actions { display: flex; flex-wrap: wrap; gap: var(--theme-space-control); }
.workforce-skill-create-actions button { justify-self: start; }
.workforce-profile-certifications .secondary:disabled { cursor: not-allowed; opacity: .55; }
.resource-tabs { display: flex; flex-wrap: wrap; gap: var(--theme-space-compact); border-bottom: 1px solid var(--theme-border); padding: 0 var(--theme-space-section); }
.resource-tabs button { min-height: 2.65rem; border: 0; border-bottom: 2px solid transparent; padding: .35rem var(--theme-space-control); color: var(--theme-text-muted); background: transparent; font: inherit; font-size: var(--theme-label-size); cursor: pointer; }
.resource-tabs button[aria-selected="true"] { border-bottom-color: var(--theme-accent); color: var(--theme-accent-text); font-weight: 650; }
.resource-tabs button:focus-visible { outline: 2px solid var(--theme-accent); outline-offset: 2px; }
.resource-toolbar { grid-template-columns: minmax(12rem, 2fr) repeat(2, minmax(8rem, 1fr)) auto; border-bottom: 0; }
.resource-register-status { display: flex; min-height: 3rem; align-items: center; gap: var(--theme-space-compact); padding: var(--theme-space-control) var(--theme-space-section); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.resource-register-status[data-state="error"], .resource-register-status[data-state="dependency"] { color: var(--theme-status-error-text, var(--theme-text-primary)); }
.resource-table-scroll { max-width: 100%; overflow-x: auto; }
.resource-table-scroll[hidden] { display: none; }
.resource-table { width: 100%; min-width: 48rem; border-collapse: collapse; color: var(--theme-text-primary); font-size: var(--theme-label-size); }
.resource-table th, .resource-table td { max-width: 23rem; border-top: 1px solid var(--theme-border); padding: var(--theme-space-control); text-align: left; overflow-wrap: anywhere; }
.resource-table th { color: var(--theme-text-muted); background: var(--theme-surface-raised); font-size: calc(var(--theme-label-size) * .9); font-weight: 650; text-transform: uppercase; letter-spacing: .035em; }
.resource-table td:first-child { max-width: 15rem; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.resource-row-actions { display: flex; min-width: 11rem; flex-wrap: wrap; gap: var(--theme-space-compact); }
.resource-row-actions button { min-height: 2.25rem; font-size: var(--theme-label-size); }
.resource-empty { margin: 0; padding: var(--theme-space-control) var(--theme-space-section); color: var(--theme-text-muted); }
.resource-register-pagination { display: flex; align-items: center; justify-content: flex-end; gap: var(--theme-space-control); border-top: 1px solid var(--theme-border); padding: var(--theme-space-control) var(--theme-space-section); }
.resource-register-pagination span { min-width: 5rem; color: var(--theme-text-muted); text-align: center; font-size: var(--theme-label-size); }
.management-form, .evaluation-form { display: grid; min-width: 0; gap: var(--theme-space-control); align-content: start; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); padding: var(--theme-space-section); background: var(--theme-surface); }
.management-form h3 { margin: 0; color: var(--theme-text-primary); font-size: var(--theme-heading-small-size); }
.management-form label, .evaluation-form label { display: grid; min-width: 0; gap: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.management-form input:not([type="checkbox"]), .management-form select, .management-form textarea, .evaluation-form input:not([type="checkbox"]), .evaluation-form select, .evaluation-form textarea { width: 100%; min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: var(--theme-space-compact) var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface-raised); font: inherit; }
.management-form textarea { resize: vertical; }
.management-form .management-confirm { display: flex; align-items: flex-start; gap: var(--theme-space-compact); }
.management-form .management-confirm input { margin: .15rem 0 0; accent-color: var(--theme-accent); }
.evaluation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.evaluation-form h4 { margin: 0; color: var(--theme-text-primary); font-size: var(--theme-heading-small-size); }
.task-actions { display: flex; flex-wrap: wrap; gap: var(--theme-space-control); margin-block: var(--theme-space-section); }
.business-record-panel { display: grid; gap: var(--theme-space-section); min-width: 0; }
.business-record-toolbar, .business-record-saved-views { display: grid; grid-template-columns: minmax(12rem, 2fr) repeat(3, minmax(8rem, 1fr)) auto auto; align-items: end; gap: var(--theme-space-control); padding: var(--theme-space-section); }
.business-record-toolbar label, .business-record-saved-views label { display: grid; min-width: 0; gap: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.business-record-toolbar input, .business-record-toolbar select, .business-record-saved-views input, .business-record-saved-views select { min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: 0 var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface-raised); font: inherit; }
.business-record-views { border-block: 1px solid var(--theme-border); padding: var(--theme-space-control) var(--theme-space-section); color: var(--theme-text-muted); }
.business-record-views summary { cursor: pointer; font-weight: 600; }
.business-record-views fieldset { display: flex; flex-wrap: wrap; gap: var(--theme-space-section); margin: var(--theme-space-control) 0; border: 0; padding: 0; }
.business-record-views fieldset label { display: flex; align-items: center; gap: var(--theme-space-compact); }
.business-record-saved-views { grid-template-columns: minmax(12rem, 1fr) minmax(12rem, 1fr) auto auto; padding: 0; }
.business-record-table-wrap { max-width: 100%; overflow-x: auto; }
.business-record-table button { white-space: nowrap; }
.business-record-table td:last-child { display: flex; flex-wrap: wrap; gap: var(--theme-space-compact); }
.business-record-detail { margin: 0 var(--theme-space-section); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); padding: var(--theme-space-section); background: var(--theme-surface-raised); }
.business-record-detail h3 { margin: 0 0 var(--theme-space-control); color: var(--theme-text-primary); font-size: var(--theme-heading-small-size); }
.business-record-detail pre { max-height: 24rem; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--theme-text-muted); font: .85rem/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; }
.business-record-create { margin: 0 var(--theme-space-section) var(--theme-space-section); }
@media (max-width: 760px) {
  .business-record-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: var(--theme-space-control); }
  .business-record-saved-views { grid-template-columns: 1fr; }
  .business-record-detail { margin-inline: var(--theme-space-control); }
  .business-record-create { margin-inline: var(--theme-space-control); }
}
.evaluation-result { min-width: 0; overflow-wrap: anywhere; white-space: pre-wrap; font: .825rem/1.45 ui-monospace, SFMono-Regular, Consolas, monospace; }
.evaluation-result[data-state="error"] { color: var(--theme-danger, CanvasText); }
.evaluation-result[data-state="loading"] { color: var(--theme-text-muted); }
.management-result { min-height: 1.4em; margin: 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); overflow-wrap: anywhere; }
.management-result[data-state="error"] { color: var(--theme-danger); }
.management-result[data-state="loaded"] { color: var(--theme-success); }
.resource-detail-actions { display: flex; flex-wrap: wrap; gap: var(--theme-space-control); margin-top: var(--theme-space-section); }
.position-definition-history { display: grid; gap: var(--theme-space-control); margin-top: var(--theme-space-section); padding: var(--theme-space-section); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); background: var(--theme-surface); }
.position-definition-history h3, .position-definition-history p { margin: 0; }
.position-definition-history label { display: grid; min-width: 0; gap: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.position-definition-history input { width: 100%; min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: var(--theme-space-compact) var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface-raised); font: inherit; }
.position-definition-history button { justify-self: start; }
.workforce-profile-certifications { display: grid; gap: var(--theme-space-control); margin-top: var(--theme-space-section); padding: var(--theme-space-section); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-panel); background: var(--theme-surface); }
.workforce-profile-certifications h3, .workforce-profile-certifications p { margin: 0; }
.workforce-profile-certifications button { justify-self: start; }
.workforce-profile-certification-records { display: grid; gap: var(--theme-space-control); }
.workforce-profile-certification { min-width: 0; padding: var(--theme-space-control); border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); overflow-wrap: anywhere; }
.workforce-profile-certification h4, .workforce-profile-certification p { margin: 0; }
.workforce-profile-certification p { margin-top: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.resource-editor-form { display: grid; gap: var(--theme-space-control); align-content: start; }
.resource-editor-form label { display: grid; min-width: 0; gap: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.resource-editor-form input:not([type="checkbox"]), .resource-editor-form select, .resource-editor-form textarea { width: 100%; min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: var(--theme-space-compact) var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface-raised); font: inherit; }
.resource-editor-form textarea { resize: vertical; }
.resource-editor-form input[type="checkbox"] { accent-color: var(--theme-accent); }
.resource-editor-form button { justify-self: start; }
.danger-button { min-height: 2.75rem; border: 1px solid var(--theme-danger); border-radius: var(--theme-radius-control); background: var(--theme-surface); color: var(--theme-danger); padding: 0 var(--theme-space-control); font: inherit; font-weight: 600; cursor: pointer; }
.danger-button:hover { background: var(--theme-danger); color: var(--theme-surface); }
.danger-button:disabled { cursor: wait; opacity: .65; }
.management-hint { margin: 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.task-panel { order: 0; }
.inline-task-form { display: grid; grid-template-columns: minmax(12rem, 2fr) minmax(13rem, 2fr) minmax(12rem, 1fr) auto; align-items: end; gap: var(--theme-space-control); padding: var(--theme-space-section); border-bottom: 1px solid var(--theme-border); background: var(--theme-surface); }
.inline-task-form label { display: grid; min-width: 0; gap: var(--theme-space-compact); color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.inline-task-form input { width: 100%; min-width: 0; min-height: 2.5rem; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: var(--theme-space-compact) var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface-raised); font: inherit; }
.inline-task-form button { min-height: 2.5rem; white-space: nowrap; }
.inline-task-form .management-result { grid-column: 1 / -1; margin: 0; color: var(--theme-text-muted); }
.panel-description { margin: var(--theme-space-compact) 0 0; color: var(--theme-text-muted); font-size: var(--theme-label-size); font-weight: 400; line-height: 1.45; }
.record { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.record-copy { display: grid; min-width: 0; gap: var(--theme-space-compact); }
.record-copy > span { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.record-open { min-height: 2.5rem; flex: 0 0 auto; border: 1px solid var(--theme-border); border-radius: var(--theme-radius-control); padding: 0 var(--theme-space-control); color: var(--theme-text-primary); background: var(--theme-surface); font: inherit; font-size: var(--theme-label-size); font-weight: 650; cursor: pointer; }
.record-open:hover { border-color: var(--theme-accent); background: var(--theme-surface-raised); }
.task-record { grid-template-columns: minmax(0, 1fr) auto; }
.task-record-heading { min-width: 0; }
.task-record-meta { color: var(--theme-text-muted); font-size: var(--theme-label-size); }
.detail-workspace { position: sticky; top: var(--theme-space-control); min-width: 0; min-height: 28rem; max-height: calc(100dvh - 6rem); overflow: auto; }
.detail-workspace[hidden] { display: none; }
.detail-workspace-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--theme-space-control); padding: var(--theme-space-section); border-bottom: 1px solid var(--theme-border); }
.detail-workspace-header h2 { overflow-wrap: anywhere; }
.detail-workspace-body { display: grid; gap: var(--theme-space-section); padding: var(--theme-space-section); }
.detail-workspace-body:focus { outline: none; }
.detail-state-pill { justify-self: start; }
.detail-action-note { margin: 0 var(--theme-space-section) var(--theme-space-section); }
.workspace-resize { position: absolute; top: 0; bottom: 0; left: 0; width: .6rem; cursor: col-resize; touch-action: none; }
.workspace-resize::after { position: absolute; top: 50%; left: .22rem; width: .18rem; height: 3rem; border-radius: 1rem; background: var(--theme-border); content: ""; transform: translateY(-50%); }
.workspace-resize:hover::after, .workspace-resize:focus-visible::after { background: var(--theme-accent); }
.task-provenance { border-top: 1px solid var(--theme-border); padding-top: var(--theme-space-control); }
.task-provenance summary { width: fit-content; color: var(--theme-accent); cursor: pointer; font-size: var(--theme-label-size); font-weight: 650; }
.task-details-content { padding-top: var(--theme-space-control); }
.task-detail-list { grid-template-columns: minmax(7rem, .8fr) minmax(0, 1.4fr); }
.task-provenance-list { font-size: var(--theme-label-size); }
.task-provenance-list dd { overflow-wrap: anywhere; }
.task-detail-note { line-height: 1.5; }
:root[data-theme="high-contrast"] .summary-card, :root[data-theme="high-contrast"] .detail-workspace { border-width: 2px; }
@keyframes spin { to { transform: rotate(360deg); } }
@media (max-width: 48rem) {
  .session-scope-panel { align-items: flex-start; flex-direction: column; }
  .workforce-app { display: block; height: auto; min-height: 100dvh; overflow: visible; }
  .workforce-app .topbar { grid-template-columns: minmax(0, 1fr) 2.5rem max-content; grid-template-areas: "brand menu tools" "crumb crumb crumb" "clock clock clock"; align-items: center; gap: var(--theme-space-compact); padding: var(--theme-space-control); }
  .workforce-app .header-start { display: contents; }
  .workforce-app .brand { grid-area: brand; min-width: 0; }
  .workforce-app .mobile-nav-toggle { display: grid; grid-area: menu; width: 2.5rem; min-height: 2.5rem; }
  .header-tools { grid-area: tools; justify-self: end; }
  .topbar-actions { width: auto; justify-content: flex-end; gap: var(--theme-space-compact); }
  .topbar-actions .header-icon-button { width: 2.5rem; min-height: 2.5rem; }
  .breadcrumbs { grid-area: crumb; max-width: 100%; }
  .clock { grid-area: clock; justify-self: center; }
  .workforce-layout { display: block; height: auto; min-height: 0; }
  .workforce-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 51; display: flex; width: min(84vw, 18rem); height: 100dvh; min-height: 0; flex-direction: column; align-items: stretch; gap: 0; overflow: hidden; padding: var(--theme-space-control); border-right: 1px solid var(--theme-border); border-bottom: 0; box-shadow: 1rem 0 3rem color-mix(in srgb, var(--theme-border) 42%, transparent); transform: translateX(-105%); transition: transform .2s ease; }
  .workforce-app.mobile-nav-open .workforce-sidebar { transform: translateX(0); }
  .mobile-nav-backdrop { position: fixed; inset: 0; z-index: 50; background: color-mix(in srgb, var(--theme-border) 58%, transparent); backdrop-filter: blur(2px); }
  body.mobile-navigation-open { overflow: hidden; }
  .workforce-main { height: auto; overflow: visible; }
  .sidebar-collapse { display: none; }
  .sidebar-scroll { display: block; width: auto; flex: 1; overflow-y: auto; overscroll-behavior: contain; margin: 0 calc(-1 * var(--theme-space-control)); padding: 0 var(--theme-space-control); }
  .nav-footer { position: sticky; margin: auto calc(-1 * var(--theme-space-control)) calc(-1 * var(--theme-space-section)); border-top: 1px solid color-mix(in srgb, var(--eos-color-navigation-text, var(--theme-text-primary)) 14%, transparent); padding: var(--theme-space-control) var(--theme-space-control) max(var(--theme-space-control), env(safe-area-inset-bottom)); }
  .nav-profile-copy { display: grid; }
  .presence-dot { display: block; }
  .nav-label { padding-inline: var(--theme-space-control); }
  .work-nav { display: grid; width: auto; grid-template-columns: minmax(0, 1fr); gap: var(--theme-space-compact); }
  .work-nav a { min-height: 2.75rem; }
  .workforce-app.nav-collapsed .workforce-sidebar { align-items: stretch; padding-inline: var(--theme-space-control); }
  .workforce-app.nav-collapsed .sidebar-scroll { width: auto; margin-inline: calc(-1 * var(--theme-space-control)); padding-inline: var(--theme-space-control); }
  .workforce-app.nav-collapsed .nav-label, .workforce-app.nav-collapsed .work-nav a span, .workforce-app.nav-collapsed .nav-profile-copy { display: grid; }
  .workforce-app.nav-collapsed .work-nav a { justify-content: flex-start; padding-inline: var(--theme-space-control); }
  .workforce-app.nav-collapsed .nav-footer { width: auto; padding-inline: var(--theme-space-control); }
  .workforce-app.nav-collapsed .nav-profile { justify-content: flex-start; padding-inline: var(--theme-space-compact); }
  .page-heading { padding: var(--theme-space-section) var(--theme-space-control); }
  .work-list-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: var(--theme-space-control); }
  .inline-task-form { grid-template-columns: minmax(0, 1fr); padding: var(--theme-space-control); }
  .management-form-grid { grid-template-columns: minmax(0, 1fr); padding: var(--theme-space-control); }
  .resource-register { margin-inline: var(--theme-space-control); }
  .resource-register-heading { align-items: flex-start; flex-direction: column; padding: var(--theme-space-control); }
  .workforce-skill-create-zone { padding-inline: var(--theme-space-control); }
  .workforce-skill-create-heading { align-items: flex-start; flex-direction: column; }
  .resource-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-inline: var(--theme-space-control); }
  .resource-tabs button { padding-inline: var(--theme-space-compact); }
  .resource-register-status, .resource-register-pagination { padding-inline: var(--theme-space-control); }
  .work-list-search { grid-column: 1 / -1; }
  .work-list-reset { align-self: end; }
  .work-list-summary { align-items: flex-start; padding: var(--theme-space-control); }
  .work-list-pagination { justify-content: flex-start; }
  .workforce-app .page-heading { padding: var(--theme-space-section) var(--theme-space-control); }
  .workforce-app .sign-in-panel { width: auto; max-width: none; grid-template-columns: minmax(0, 1fr); margin: 0 var(--theme-space-control) var(--theme-space-section); padding: var(--theme-space-control); }
  .worker-dashboard { padding: 0 var(--theme-space-control) var(--theme-space-section); }
  .summary-cards { grid-template-columns: minmax(0, 1fr); }
  .summary-card { min-height: 6rem; padding: var(--theme-space-control); }
  .work-area, .work-area[data-detail-open="true"] { grid-template-columns: minmax(0, 1fr); }
  .detail-workspace { position: relative; top: auto; width: auto !important; min-height: 0; max-height: none; }
  .workspace-resize { display: none; }
  .panel-heading { padding: var(--theme-space-control); }
  .panel-description { max-width: 30rem; }
  .record { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
  .record-open { justify-self: start; }
  .task-record { grid-template-columns: minmax(0, 1fr) auto; }
  .detail-workspace-header, .detail-workspace-body { padding: var(--theme-space-control); }
  .detail-action-note { margin: 0 var(--theme-space-control) var(--theme-space-control); }
  .footer { padding: 0 var(--theme-space-control) var(--theme-space-section); }
}
@media (min-width: 48.001rem) and (max-width: 78.125rem) {
  .workforce-app .header-start { display: contents; }
  .workforce-app .topbar { grid-template-columns: minmax(0, 1fr) max-content; grid-template-areas: "brand tools" "crumb crumb" "clock clock"; align-items: center; gap: var(--theme-space-control); min-height: 0; padding: var(--theme-space-compact) var(--theme-space-page); }
  .workforce-app .brand { grid-area: brand; }
  .workforce-app .header-tools { grid-area: tools; justify-self: end; }
  .workforce-app .breadcrumbs { grid-area: crumb; width: calc(100% - var(--theme-space-page) - var(--theme-space-page) - var(--shell-sidebar-collapsed-width)); max-width: calc(100% - var(--theme-space-page) - var(--theme-space-page) - var(--shell-sidebar-collapsed-width)); margin-left: calc(var(--theme-space-page) + var(--shell-sidebar-collapsed-width)); }
  .workforce-app .clock { grid-area: clock; justify-self: center; }
}
@media (min-width: 48.001rem) and (max-width: 78.125rem) {
  .workforce-app .sign-in-panel { grid-template-columns: minmax(0, 1fr); }
  .workforce-app .sign-in-copy, .workforce-app .sign-in-form { width: min(100%, 32rem); justify-self: center; }
  .workforce-app .sign-in-form { max-width: 32rem; }
  .workforce-app .sign-in-panel { width: min(64rem, calc(100% - 2 * var(--theme-space-page))); max-width: calc(100% - 2 * var(--theme-space-page)); min-width: 0; }
  .workforce-app .sign-in-panel > *, .workforce-app .sign-in-form input { min-width: 0; max-width: 100%; }
}
@media (min-width: 78.126rem) and (max-width: 85rem) {
  .workforce-app .sign-in-panel { grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem); }
  .workforce-app .sign-in-form { max-width: none; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; } }

/* Keep Workforce type and controls on the same Presentation token scale as Admin. */
.clock { font-size: var(--theme-label-size); }
.clock strong { font-size: var(--theme-body-size); font-weight: 600; }
.breadcrumbs { font-size: var(--theme-label-size); }
.workforce-main { font-size: var(--theme-body-size); line-height: 1.5; }
.eyebrow, .session-state, .footer, .sign-in-form label { font-size: var(--theme-label-size); }
h1, h2, h3, h4 { font-weight: 600; }
h2 { font-size: calc(var(--theme-heading-size) * .62); }
.icon-action { display: grid; place-items: center; }
.icon-action svg { width: 1.05rem; height: 1.05rem; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.icon-action:disabled { cursor: wait; opacity: .6; }
.task-record-heading { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--theme-space-control); }
.task-record-heading > strong { min-width: 0; font-size: calc(var(--theme-body-size) * .95); }
.task-state-pill { display: inline-flex; flex: 0 0 auto; align-items: center; min-height: 1.6rem; border: 1px solid var(--theme-border); border-radius: 999px; padding: .1rem .55rem; color: var(--theme-text-primary); background: var(--theme-surface); font-size: calc(var(--theme-body-size) * .68); font-weight: 650; line-height: 1.25; }
.task-record-meta { color: var(--theme-text-muted); font-size: calc(var(--theme-body-size) * .75); }
.task-details > summary, .task-provenance > summary { display: flex; align-items: center; gap: var(--theme-space-compact); color: var(--theme-accent); font-size: calc(var(--theme-body-size) * .75); }
.task-details > summary::marker, .task-provenance > summary::marker { color: var(--theme-accent); }
.task-provenance { margin-top: var(--theme-space-control); border-top: 1px solid var(--theme-border); padding-top: var(--theme-space-control); }
.task-provenance > summary { color: var(--theme-text-muted); }
.task-provenance-list { font-size: calc(var(--theme-body-size) * .74); }
.task-provenance-list dt { font-size: calc(var(--theme-body-size) * .68); }
@media (max-width: 35rem) {
  .task-record-heading { align-items: flex-start; flex-direction: column; gap: var(--theme-space-compact); }
  .task-detail-list { grid-template-columns: minmax(0, 1fr); gap: .2rem; }
  .task-detail-list dd { margin-bottom: var(--theme-space-compact); }
}
@media (min-width: 48.001rem) and (max-width: 78.125rem) {
  .work-area[data-detail-open="true"] { grid-template-columns: minmax(0, 1fr); }
  .detail-workspace { position: relative; top: auto; width: auto !important; min-height: 0; max-height: none; }
  .workspace-resize { display: none; }
}
@media (min-width: 78.126rem) and (max-width: 85rem) {
  .workforce-app .topbar {
    position: sticky;
    grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
    grid-template-areas: "start clock tools";
    row-gap: 0;
    min-height: 72px;
    padding: var(--theme-space-compact) var(--theme-space-page);
  }
  .workforce-app .header-start { display: flex; width: auto; gap: var(--theme-space-compact); }
  .workforce-app .breadcrumbs { position: absolute; top: 50%; left: calc(var(--shell-sidebar-width) + var(--content-gutter)); grid-area: auto; flex: 0 1 auto; width: auto; max-width: calc(100% - var(--shell-sidebar-width) - var(--content-gutter) - var(--theme-space-control)); margin-left: 0; transform: translateY(-50%); }
  .workforce-app .clock { position: static; grid-area: clock; justify-self: center; transform: none; }
  .workforce-app .header-tools { position: static; grid-area: tools; justify-self: end; width: auto; flex-wrap: nowrap; justify-content: flex-end; gap: var(--theme-space-compact); }
  .workforce-app .workforce-layout { grid-template-columns: var(--shell-sidebar-width, 22.5rem) minmax(0, 1fr); }
}

/* Base the sign-in layout on the content column, which is narrower than the
   viewport while Workforce navigation is open. */
@container workforce-content (max-width: 64rem) {
  .workforce-app .sign-in-panel {
    width: min(100%, 64rem);
    max-width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
  }
  .workforce-app .sign-in-panel > *,
  .workforce-app .sign-in-form input { min-width: 0; max-width: 100%; }
  .workforce-app .sign-in-copy,
  .workforce-app .sign-in-form { width: min(100%, 32rem); justify-self: center; }
  .workforce-app .sign-in-form { max-width: 32rem; }
}

/* Credential pages share the Workforce header and content geometry without
   mounting the signed-in navigation or storing any account state in-browser. */
.workforce-app.account-page .topbar:not(:has(.clock)) {
  display: flex;
  justify-content: flex-start;
  min-width: 0;
}
.workforce-app.account-page .header-start {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: var(--theme-space-section);
}
.workforce-app.account-page .brand { flex: 0 0 auto; }
.workforce-app.account-page .breadcrumbs {
  flex: 0 1 auto;
  min-width: 0;
  max-width: min(48vw, 42rem);
  overflow: hidden;
  text-overflow: ellipsis;
}
.workforce-app.account-page .recovery-content,
.workforce-app.account-page .activation-content {
  width: 100%;
  min-width: 0;
  padding: 0 var(--theme-space-page) var(--theme-space-page);
}
.workforce-app.account-page .page-heading {
  width: min(88rem, 100%);
  min-width: 0;
  padding: var(--theme-space-page) 0 var(--theme-space-section);
}
.workforce-app.account-page .sign-in-panel {
  width: min(100%, 64rem);
  max-width: 100%;
  min-width: 0;
  margin: 0 auto var(--theme-space-section);
}
.workforce-app.account-page .sign-in-panel > *,
.workforce-app.account-page .sign-in-form input { min-width: 0; max-width: 100%; }
.workforce-app.recovery-page .sign-in-panel { grid-template-columns: minmax(0, 1fr); }
.workforce-app.recovery-page .sign-in-form { width: min(100%, 36rem); max-width: 36rem; }
.workforce-app.account-page .sign-in-form { min-width: 0; }

@media (max-width: 78.125rem) {
  .workforce-app.account-page .topbar:not(:has(.clock)) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "brand" "crumb";
    gap: var(--theme-space-compact);
  }
  .workforce-app.account-page .header-start { display: contents; }
  .workforce-app.account-page .brand { grid-area: brand; }
  .workforce-app.account-page .breadcrumbs {
    grid-area: crumb;
    justify-self: start;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
}

@media (max-width: 48rem) {
  .workforce-app.account-page .topbar:not(:has(.clock)) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "brand" "crumb";
    padding: var(--theme-space-control);
  }
  .workforce-app.account-page,
  .workforce-app.account-page .workforce-main,
  .workforce-app.account-page .recovery-content,
  .workforce-app.account-page .activation-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .workforce-app.account-page .recovery-content,
  .workforce-app.account-page .activation-content { padding-inline: var(--theme-space-control); }
  .workforce-app.account-page .page-heading {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: var(--theme-space-section) 0 var(--theme-space-control);
  }
  .workforce-app.account-page .page-heading > * { max-width: 100%; overflow-wrap: anywhere; }
  .workforce-app.account-page .sign-in-panel {
    width: 100%;
    max-width: 100%;
    grid-template-columns: minmax(0, 1fr);
    margin: 0 0 var(--theme-space-section);
    padding: var(--theme-space-control);
  }
  .workforce-app.account-page .sign-in-copy,
  .workforce-app.account-page .sign-in-form { width: 100%; max-width: 100%; min-width: 0; justify-self: stretch; }
  .workforce-app.account-page .sign-in-form input,
  .workforce-app.account-page .recovery-method { width: 100%; max-width: 100%; min-width: 0; }
}

@media (max-width: 48rem) {
  /* The content-column rule above includes the card's side margins in the
     available width so the Workforce sign-in panel stays inside the viewport. */
  .workforce-app:not(.account-page) .sign-in-panel {
    width: min(calc(100% - 2 * var(--theme-space-control)), 64rem);
    max-width: calc(100% - 2 * var(--theme-space-control));
    min-width: 0;
  }
}
