/* 5.4.2: visual layer over the functional 5.3.11 release. */
:root,
html[data-theme="dark"] {
  color-scheme:dark;
  --theme-page:#11151d;
  --theme-surface:#1b222d;
  --theme-surface-2:#242e3a;
  --theme-input:#202a36;
  --theme-border:#384555;
  --theme-text:#f4f6fa;
  --theme-muted:#acb9c8;
  --theme-red:#ff536b;
  --theme-red-soft:#3b2531;
  --theme-green:#65d9a3;
  --theme-green-soft:#203d34;
  --theme-track:#354351;
  --theme-shadow:0 16px 48px rgba(4,9,17,.18);
  --text:#f4f6fa;
  --muted:#acb9c8;
  --subtle:#9eacba;
  --line:#384555;
  --line-strong:#536273;
}
html[data-theme="light"] {
  color-scheme:light;
  --theme-page:#f2f4f8;
  --theme-surface:#fff;
  --theme-surface-2:#f5f7fa;
  --theme-input:#fff;
  --theme-border:#d8dfe8;
  --theme-text:#202938;
  --theme-muted:#596b7e;
  --theme-red:#c91e3b;
  --theme-red-soft:#fff0f3;
  --theme-green:#197759;
  --theme-green-soft:#e9f7f0;
  --theme-track:#e4eaf0;
  --theme-shadow:0 14px 40px rgba(26,41,62,.055);
  --text:#202938;
  --muted:#596b7e;
  --subtle:#66778a;
  --line:#d8dfe8;
  --line-strong:#b9c6d4;
}
html[data-theme] body {font-size:15px;line-height:1.5;letter-spacing:-.006em}
html[data-theme="dark"] body {background:radial-gradient(circle at 78% -14%,#202e42 0,transparent 39%),var(--theme-page)!important}
html[data-theme="light"] body {background:radial-gradient(circle at 78% -14%,#fff 0,transparent 38%),var(--theme-page)!important}
html[data-theme] h1,html[data-theme] h2,html[data-theme] h3 {letter-spacing:-.035em}
html[data-theme] .panel,html[data-theme] .metric-card,html[data-theme] .admin-card,
html[data-theme] .automation-card,html[data-theme] .analytics-card,
html[data-theme] .quality-panel,html[data-theme] .schedule-card {
  border:1px solid var(--theme-border);border-radius:19px;box-shadow:var(--theme-shadow)
}
html[data-theme] .panel-header {border-bottom-color:var(--theme-border)}
html[data-theme] .panel-title {font-size:clamp(19px,1.4vw,23px);font-weight:750;line-height:1.25;color:var(--theme-text)}
html[data-theme] .panel-description,html[data-theme] .page-subtitle {font-size:14px;line-height:1.5;color:var(--theme-muted)}
html[data-theme] .field-label,html[data-theme] .toolbar label,html[data-theme] .scope-label {font-size:13px;font-weight:650;color:var(--theme-muted)}
html[data-theme] .btn,html[data-theme] .input-control,html[data-theme] select,
html[data-theme] textarea {min-height:43px;border-radius:11px;font-size:14px}
html[data-theme] .btn {font-weight:650;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}
html[data-theme] .btn:hover {color:var(--theme-text);background:var(--theme-surface-2);border-color:var(--theme-muted)}
html[data-theme] .btn-primary,html[data-theme] .btn-primary:hover,
html[data-theme] .employee-page .category-plus {color:#fff;background:var(--theme-red);border-color:var(--theme-red)}
html[data-theme] .btn-primary:hover {filter:brightness(1.08);box-shadow:0 6px 18px rgba(201,30,59,.2)}
html[data-theme] :is(button,a,input,select,textarea,summary):focus-visible {outline:3px solid var(--theme-red);outline-offset:2px}
html[data-theme] ::placeholder {color:var(--theme-muted);opacity:.85}

/* Admin: anchored navigation, clear metrics and charts. */
.admin-shell {width:min(1680px,calc(100% - 48px));padding-top:16px}
.admin-shell>.topbar {min-height:60px;margin:0 -24px 23px;padding:9px 24px;border:1px solid var(--theme-border);border-radius:17px;box-shadow:var(--theme-shadow)}
.admin-shell>.topbar::before {content:none}
.admin-shell>.topbar .brand {display:none}
.section-breadcrumb {display:flex;align-items:center;gap:11px;min-width:0;margin-right:auto;color:var(--theme-muted);font-size:14px;font-weight:600}
.section-breadcrumb i {font-style:normal;opacity:.55}
.section-breadcrumb strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--theme-text);font-weight:700}
.admin-layout {grid-template-columns:244px minmax(0,1fr);gap:22px}
.admin-sidebar {top:93px;min-height:calc(100vh - 114px);padding:20px 14px;border-radius:20px}
.admin-sidebar .sidebar-brand {margin:3px 8px 30px}
.sidebar-label {margin:0 12px 12px;font-size:11px;letter-spacing:.08em}
.admin-nav {gap:5px}
.admin-nav .btn {justify-content:flex-start;min-height:48px;padding:8px 14px;border:1px solid transparent;border-radius:11px;color:var(--theme-muted);font-size:14px;line-height:1.25;text-align:left}
.admin-nav .btn::before {content:"";flex:none;width:8px;height:8px;margin-right:4px;border:1.5px solid currentColor;border-radius:3px;opacity:.7}
.admin-nav .btn:hover {color:var(--theme-text);background:var(--theme-surface-2);border-color:var(--theme-border)}
.admin-nav .btn.active {color:var(--theme-red);background:var(--theme-red-soft);border-color:color-mix(in srgb,var(--theme-red) 25%,transparent);font-weight:750}
.admin-nav .btn.active::before {background:currentColor;border-color:currentColor;opacity:1}
.admin-nav .btn[data-admin-tab="settings-section"] {margin-top:16px;padding-top:8px;border-top:1px solid var(--theme-border);border-radius:11px}
.sidebar-period {padding:17px;border-radius:14px}
.sidebar-period span {font-size:11px;letter-spacing:.06em}
.sidebar-period strong {font-size:18px}
.admin-main-content {min-width:0}
.admin-main-content>.admin-tab-panel {min-width:0}
.admin-main-content .page-intro {margin:2px 0 18px;padding:0 4px}
.admin-main-content .page-intro h1 {font-size:clamp(27px,2.5vw,37px);line-height:1.18}
.admin-shell .toolbar {padding:20px;border-radius:19px;background:var(--theme-surface);box-shadow:var(--theme-shadow)}
.admin-shell .report-toolbar {grid-template-columns:minmax(120px,.8fr) minmax(155px,1fr) minmax(145px,.9fr) minmax(215px,1.2fr) minmax(170px,1fr) auto;gap:13px}
.admin-shell .summary-grid {gap:14px}
.admin-shell .metric-card {min-height:132px;padding:21px;border-radius:18px;overflow:hidden}
.admin-shell .metric-card.accent {border-color:color-mix(in srgb,var(--theme-red) 36%,var(--theme-border));background:linear-gradient(138deg,var(--theme-red-soft),var(--theme-surface) 90%)}
.admin-shell .metric-label {font-size:13px;font-weight:700;color:var(--theme-muted)}
.admin-shell .metric-value {font-size:clamp(27px,2.6vw,36px);line-height:1.12;letter-spacing:-.04em;overflow-wrap:anywhere}
.admin-shell .metric-value.metric-text {font-size:clamp(18px,1.5vw,22px)}
.dashboard-chart-grid {gap:14px;margin:16px 0}
.report-trend-panel,.report-share-panel {border-radius:19px}
.chart-alpha-line {stroke-width:4.2}
.chart-alpha-dot {stroke-width:3.5}
.chart-grid-line {opacity:.65}
.report-trend-chart {min-height:220px}
.chart-legend {font-size:13px}
.donut-breakdown>div {min-width:0;padding:12px 13px;border:1px solid var(--theme-border);border-radius:11px;font-size:13px}
.donut-breakdown strong {font-size:17px}
.bank-breakdown-details summary {font-size:14px;font-weight:700;color:var(--theme-text)}
.admin-shell .panel {border-radius:19px}
.admin-shell .panel-header {padding:20px 22px 14px}
.admin-shell table th,.admin-shell table td {font-size:13px;line-height:1.45}
.admin-shell table th {font-weight:750}
.admin-shell table tbody tr:nth-child(even) td {background:color-mix(in srgb,var(--theme-surface-2) 60%,var(--theme-surface))}
.admin-shell table tbody tr:hover td {background:var(--theme-red-soft)}
.admin-shell .multi-month-export {border-radius:15px}
.admin-shell .multi-month-export>summary strong {font-size:15px}
.admin-shell .multi-month-export>summary small {font-size:13px}
.admin-shell .multi-month-summary-action {font-size:13px}
.history-deleted-toggle {color:var(--theme-text);border-color:var(--theme-border);background:var(--theme-surface-2)}
.panel-expand-toggle {font-size:13px;color:var(--theme-text)}
.panel-expand-toggle:hover {color:var(--theme-red)}
.plan-kpi-card {border-radius:18px}
.plan-kpi-label {font-size:14px}
.plan-kpi-value {font-size:clamp(23px,2.2vw,34px)}
.plan-progress-track,.plan-brand-bar-track {height:10px}

/* Employee: the same visual language with clear data entry and a strong save action. */
.employee-page .app-shell {width:min(1470px,calc(100% - 44px));padding-top:16px}
.employee-page .topbar {min-height:70px;margin-bottom:19px;padding:11px 16px;border-radius:18px;box-shadow:var(--theme-shadow)}
.employee-page .brand-name {font-size:17px}
.employee-page .brand-caption {font-size:10px;letter-spacing:.08em}
.employee-page .employee-strip {padding:17px 20px;border-radius:16px}
.employee-page .employee-strip strong {font-size:19px}
.employee-page .employee-mode-tabs {gap:10px;margin:15px 0 18px}
.employee-page .employee-mode-tabs .btn {min-height:49px;padding:0 22px;font-size:15px}
.employee-page .entry-panel {border-radius:20px}
.employee-page .entry-panel>.panel-header {padding:22px 25px;border-bottom:1px solid var(--theme-border);background:var(--theme-surface)}
.employee-page .entry-panel .panel-title {font-size:clamp(24px,2.4vw,30px)}
.employee-page .entry-panel .panel-description {font-size:14px}
.employee-page .entry-body {padding:19px 25px 22px}
.employee-page .entry-note,.employee-page .matrix-hint {font-size:14px;line-height:1.5;border-radius:12px}
.employee-page .matrix-wrap {border-radius:13px}
.employee-page .entry-matrix thead th {font-size:13px}
.employee-page .entry-matrix tbody th,.employee-page .entry-matrix tbody td {font-size:14px;border-bottom-color:var(--theme-border)}
.employee-page .entry-matrix .matrix-input {height:44px;font-size:16px}
.employee-page .entry-metrics>div {min-height:94px;padding:16px;border:1px solid var(--theme-border);border-radius:15px}
.employee-page .entry-metrics span {font-size:13px;color:var(--theme-muted)}
.employee-page .entry-metrics strong {font-size:29px}
.employee-page .entry-actions .btn {min-height:49px;font-size:14px}
.employee-page .entry-actions #save-btn {min-width:205px;box-shadow:0 8px 20px rgba(201,30,59,.2)}
.employee-page .month-summary-panel {border-radius:18px}
.employee-page .category-plus {color:#fff!important;background:var(--theme-red)!important;border-color:var(--theme-red)!important}
.employee-page .category-plus::before,.employee-page .category-plus::after {background:#fff!important}

@media(max-width:1180px) {
  .admin-shell .report-toolbar {grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-shell .toolbar-buttons {grid-column:auto}
}
@media(max-width:900px) {
  .admin-layout {grid-template-columns:minmax(0,1fr);gap:15px}
  .admin-sidebar {position:static;min-height:0;max-height:none;padding:9px;border-radius:15px}
  .admin-sidebar .sidebar-brand,.sidebar-label,.sidebar-period {display:none}
  .admin-nav {display:flex;gap:7px;overflow-x:auto;padding:2px;scrollbar-width:thin}
  .admin-nav .btn {flex:none;min-height:42px;padding:8px 12px;white-space:nowrap;text-align:center}
  .admin-nav .btn[data-admin-tab="settings-section"] {margin:0;padding:8px 12px;border-top-color:transparent}
  .dashboard-chart-grid {grid-template-columns:1fr}
}
@media(max-width:720px) {
  .admin-shell {width:calc(100% - 18px);padding-top:8px}
  .admin-shell>.topbar {flex-wrap:wrap;gap:8px;min-height:0;margin:0 0 12px;padding:9px 10px;border-radius:14px}
  .admin-shell>.topbar .brand {display:flex;min-width:0}
  .admin-shell>.topbar .brand-name {font-size:12px}
  .section-breadcrumb {display:none}
  .admin-shell .topbar-actions {display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px;margin-left:auto}
  .admin-shell .topbar-actions .btn {min-height:35px;padding:5px 9px;font-size:12px}
  .theme-toggle {min-height:36px}
  .admin-shell .report-toolbar {grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:14px}
  .admin-shell .report-toolbar .toolbar-buttons,.multi-location-field {grid-column:1/-1}
  .admin-shell .summary-grid {gap:9px}
  .admin-shell .metric-card {min-height:108px;padding:14px}
  .admin-shell .metric-label {font-size:12px}
  .admin-shell .metric-value {font-size:clamp(23px,6vw,30px)}
  .admin-shell .panel-header {padding:17px 16px 12px}
  .admin-shell .panel-title {font-size:19px}
  .donut-breakdown>div {font-size:12px}
  .report-trend-chart {min-height:0}
  .employee-page .app-shell {width:calc(100% - 16px);padding-top:7px}
  .employee-page .topbar {position:sticky;top:5px;z-index:35;flex-wrap:wrap;gap:6px;min-height:0;margin-bottom:13px;padding:8px 9px;border-radius:14px}
  .employee-page .topbar-actions {display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px;margin-left:auto}
  .employee-page .brand-name {font-size:12px}
  .employee-page .brand-caption {font-size:8px}
  .employee-page .employee-strip {padding:12px}
  .employee-page .employee-strip strong {font-size:16px}
  .employee-page .employee-mode-tabs {grid-template-columns:minmax(95px,.8fr) minmax(0,1.2fr);gap:7px}
  .employee-page .employee-mode-tabs .btn {min-height:44px;padding:5px 8px;font-size:13px}
  .employee-page .entry-panel>.panel-header {padding:16px 14px}
  .employee-page .entry-panel .panel-title {font-size:23px}
  .employee-page .entry-body {padding:13px 12px 18px}
  .employee-page .entry-note,.employee-page .matrix-hint {font-size:13px}
  .employee-page .category-toggle {min-height:58px;padding:9px 11px;font-size:16px}
  .employee-page .category-brief {font-size:12px}
  .employee-page .category-plus {flex:none;width:29px;height:29px;border-radius:8px}
  .employee-page .category-plus::before,.employee-page .category-plus::after {left:8px;right:8px;top:13px}
  .employee-page .entry-matrix tbody tr {gap:7px;border-radius:14px}
  .employee-page .entry-matrix tbody tr>td.bank-entry::before {font-size:14px}
  .employee-page .entry-metrics>div {min-height:76px;padding:11px}
  .employee-page .entry-metrics span {font-size:12px}
  .employee-page .entry-metrics strong {font-size:25px}
  .employee-page .entry-actions .btn {min-height:47px;font-size:13px}
  .employee-page .entry-actions #save-btn {min-width:0}
  .save-dock {border-radius:13px}
}
@media(max-width:430px) {
  .admin-shell .report-toolbar {grid-template-columns:1fr}
  .admin-shell .report-toolbar .toolbar-buttons,.multi-location-field {grid-column:auto}
  .admin-shell .bank-donut-wrap {grid-template-columns:110px minmax(0,1fr);gap:5px}
  .admin-shell .bank-donut {width:110px;height:110px}
  .employee-page .employee-strip {flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce) {html[data-theme] .btn {transition:none}}

/* Motion: brief, layered entrances like the reference dashboard. */
@keyframes dashboard-enter {
  from {opacity:0;transform:translate3d(0,15px,0)}
  to {opacity:1;transform:translate3d(0,0,0)}
}
@keyframes card-enter {
  from {opacity:0;transform:translate3d(0,16px,0) scale(.975)}
  to {opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes content-reveal {
  from {opacity:0;transform:translate3d(0,-7px,0)}
  to {opacity:1;transform:translate3d(0,0,0)}
}
@keyframes line-draw {from {stroke-dashoffset:1400}to {stroke-dashoffset:0}}
@keyframes ring-draw {from {stroke-dashoffset:365}to {stroke-dashoffset:0}}
@keyframes dot-enter {from {opacity:0;transform:scale(.25)}to {opacity:1;transform:scale(1)}}
@keyframes soft-fade {from {opacity:0}to {opacity:1}}

html[data-theme] body {transition:color .35s ease,background-color .35s ease}
html[data-theme] :is(.topbar,.admin-sidebar,.panel,.metric-card,.admin-card,.toolbar,
  .entry-note,.matrix-hint,.entry-metrics>div,.input-control,.btn,.theme-toggle,
  .category-toggle,.sidebar-period) {
  transition:color .35s ease,background-color .35s ease,border-color .35s ease,box-shadow .35s ease,transform .25s ease
}
html[data-theme] .admin-nav .btn {transition:color .22s ease,background-color .22s ease,border-color .22s ease,transform .22s ease}
html[data-theme] .admin-nav .btn:hover {transform:translateX(3px)}
html[data-theme] .admin-nav .btn.active {transform:translateX(3px)}
html[data-theme] .theme-toggle [data-theme-choice] {transition:color .28s ease,background-color .28s ease,box-shadow .28s ease,transform .28s ease}
html[data-theme] .theme-toggle [data-theme-choice].active {transform:scale(1.02)}
html[data-theme] .metric-card:hover,html[data-theme] .plan-kpi-card:hover {transform:translateY(-3px);box-shadow:0 19px 45px rgba(10,20,37,.13)}

.admin-tab-panel:not([hidden]) {animation:dashboard-enter .36s cubic-bezier(.22,1,.36,1) both}
.admin-tab-panel:not([hidden]) > .summary-grid .metric-card,
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards .plan-kpi-card {
  animation:card-enter .45s cubic-bezier(.22,1,.36,1) both
}
.admin-tab-panel:not([hidden]) > .summary-grid > :nth-child(1),
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards > :nth-child(1) {animation-delay:35ms}
.admin-tab-panel:not([hidden]) > .summary-grid > :nth-child(2),
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards > :nth-child(2) {animation-delay:85ms}
.admin-tab-panel:not([hidden]) > .summary-grid > :nth-child(3),
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards > :nth-child(3) {animation-delay:135ms}
.admin-tab-panel:not([hidden]) > .summary-grid > :nth-child(4),
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards > :nth-child(4) {animation-delay:185ms}
.admin-tab-panel:not([hidden]) > .plan-dashboard-cards > :nth-child(5) {animation-delay:235ms}
.admin-tab-panel:not([hidden]) > .dashboard-chart-grid > :first-child {animation:card-enter .48s .16s cubic-bezier(.22,1,.36,1) both}
.admin-tab-panel:not([hidden]) > .dashboard-chart-grid > :last-child {animation:card-enter .48s .22s cubic-bezier(.22,1,.36,1) both}
.report-line-svg .chart-alpha-line {stroke-dasharray:1400;animation:line-draw 1s .18s ease-out both}
.report-line-svg .chart-alpha-dot {transform-box:fill-box;transform-origin:center;animation:dot-enter .32s .72s ease-out both}
.bank-donut .donut-alpha {animation:ring-draw .75s .15s cubic-bezier(.22,1,.36,1) both}
.bank-donut .donut-value,.bank-donut .donut-caption {animation:soft-fade .35s .42s both}
.plan-progress-track span,.plan-brand-bar-track i,.month-share-track>span,.entry-share-track>span {
  transition:width .55s cubic-bezier(.22,1,.36,1),background-color .35s ease
}
.multi-location-picker[open] .multi-location-popover,.period-picker[open] .period-popover,
.multi-month-export[open] .multi-month-content,details[open] > .quality-panel,
.plan-pace-details[open] > :not(summary),.plan-edit-details[open] > :not(summary) {
  animation:content-reveal .26s cubic-bezier(.22,1,.36,1) both
}
.panel-expanded {animation:card-enter .3s cubic-bezier(.22,1,.36,1) both}

.employee-page #profile-panel:not(.hidden) {animation:card-enter .42s cubic-bezier(.22,1,.36,1) both}
.employee-page .profile-exit-ghost {position:fixed!important;z-index:85;box-sizing:border-box;animation:none!important}
.employee-page #employee-workspace:not(.hidden) .employee-strip {animation:dashboard-enter .32s both}
.employee-page #employee-workspace:not(.hidden) .employee-mode-tabs {animation:dashboard-enter .34s .06s both}
.employee-page #employee-workspace:not(.hidden) .entry-panel {animation:dashboard-enter .4s .1s both}
.employee-page #employee-workspace:not(.hidden) .entry-panel:not([hidden]) > .panel-header {animation:content-reveal .34s .15s both}
.employee-page #employee-workspace:not(.hidden) .entry-panel:not([hidden]) .entry-note {animation:content-reveal .34s .19s both}
.employee-page #employee-workspace:not(.hidden) .entry-panel:not([hidden]) .matrix-wrap {animation:content-reveal .4s .24s both}
.employee-page #employee-workspace:not(.hidden) .entry-metrics > :nth-child(1) {animation:card-enter .38s .29s both}
.employee-page #employee-workspace:not(.hidden) .entry-metrics > :nth-child(2) {animation:card-enter .38s .34s both}
.employee-page #employee-workspace:not(.hidden) .entry-metrics > :nth-child(3) {animation:card-enter .38s .39s both}
.employee-page #employee-workspace:not(.hidden) .entry-metrics > :nth-child(4) {animation:card-enter .38s .44s both}
.employee-page #employee-workspace:not(.hidden) .month-summary-panel {animation:dashboard-enter .44s .24s both}
.employee-page .category-card:not(.mobile-collapsed) > td {animation:content-reveal .28s ease-out both}
.employee-page .category-toggle {transition:background-color .25s ease,color .25s ease}
.employee-page .category-toggle:hover {background:var(--theme-red-soft)}
.employee-page .category-plus {transition:background-color .25s ease,transform .25s ease}
.employee-page .category-toggle:hover .category-plus {transform:scale(1.08)}
.save-dock:not([hidden]) {animation:dashboard-enter .3s cubic-bezier(.22,1,.36,1) both}

::view-transition-old(root) {animation:soft-fade .18s ease-in reverse both}
::view-transition-new(root) {animation:soft-fade .34s ease-out both}

@media(max-width:900px) {
  html[data-theme] .admin-nav .btn:hover,html[data-theme] .admin-nav .btn.active {transform:none}
}
@media(prefers-reduced-motion:reduce) {
  html[data-theme] *,html[data-theme] *::before,html[data-theme] *::after {
    animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important
  }
  ::view-transition-old(root),::view-transition-new(root) {animation-duration:.01ms!important}
}

/* Test onboarding: make the location choice a real first screen. */
.employee-page #profile-panel {
  width:min(1060px,100%);margin:clamp(20px,4vh,45px) auto 24px;
  overflow:visible;border:0;background:transparent;box-shadow:none
}
.employee-page #profile-panel .profile-intro {
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  padding:0 2px;border:0;background:transparent
}
.employee-page #profile-panel .profile-kicker,
.employee-page #profile-panel .profile-overline {
  color:var(--theme-red);font-size:12px;font-weight:800;letter-spacing:.09em
}
.employee-page #profile-panel .profile-kicker {display:flex;align-items:center;gap:9px}
.employee-page #profile-panel .profile-kicker::before {
  content:"";width:8px;height:8px;border-radius:50%;background:var(--theme-red)
}
.employee-page #profile-panel .panel-title {
  margin:13px 0 9px;font-size:clamp(30px,3.2vw,40px);line-height:1.16;letter-spacing:-.04em
}
.employee-page #profile-panel .panel-description {
  max-width:680px;margin:0;color:var(--theme-muted);font-size:16px;line-height:1.5
}
.employee-page #profile-panel .profile-steps {
  display:flex;align-items:center;gap:12px;margin:27px 2px 21px;
  color:var(--theme-muted);font-size:13px
}
.employee-page #profile-panel .profile-step {display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.employee-page #profile-panel .profile-step b {
  display:grid;place-items:center;width:26px;height:26px;border-radius:50%;
  background:var(--theme-surface-2);color:var(--theme-muted);font-size:12px
}
.employee-page #profile-panel .profile-step.is-active {color:var(--theme-text);font-weight:750}
.employee-page #profile-panel .profile-step.is-active b {color:#fff;background:var(--theme-red)}
.employee-page #profile-panel .profile-step-line {width:35px;height:1px;background:var(--theme-border)}
.employee-page #profile-panel .profile-choice-layout {
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  overflow:hidden;border:1px solid var(--theme-border);border-radius:22px;
  background:var(--theme-surface);box-shadow:0 20px 55px rgba(26,41,62,.10)
}
html[data-theme="dark"] .employee-page #profile-panel .profile-choice-layout {box-shadow:0 20px 55px rgba(0,0,0,.26)}
.employee-page #profile-panel #profile-form {
  display:block;min-width:0;padding:clamp(25px,4vw,46px);
  border:0;border-radius:0;background:var(--theme-surface);box-shadow:none
}
.employee-page #profile-panel h2 {margin:13px 0 9px;font-size:26px;line-height:1.2;letter-spacing:-.025em}
.employee-page #profile-panel .profile-help {
  margin:0 0 29px;color:var(--theme-muted);font-size:15px;line-height:1.5
}
.employee-page #profile-panel .field-label {
  margin:0 0 9px;color:var(--theme-text);font-size:14px;font-weight:750
}
.employee-page #profile-panel #profile-location {
  min-height:53px;padding:0 16px;border-radius:12px;
  color:var(--theme-text);background:var(--theme-surface-2);font-size:16px
}
.employee-page #profile-panel .profile-memory {
  display:flex;align-items:center;gap:9px;margin:14px 0 30px;
  color:var(--theme-muted);font-size:13px
}
.employee-page #profile-panel .profile-memory span {color:var(--theme-green);font-size:18px;font-weight:800}
.employee-page #profile-panel .button-row {align-items:center;gap:11px;margin:0}
.employee-page #profile-panel .button-row .btn {
  min-height:48px;padding:0 20px;font-size:15px;font-weight:750
}
.employee-page #profile-panel .button-row .btn-primary {display:inline-flex;align-items:center;gap:12px}
.employee-page #profile-panel .button-row [hidden] {display:none}
.employee-page #profile-panel .profile-preview {
  min-width:0;padding:clamp(25px,4vw,42px);
  border-left:1px solid var(--theme-border);
  background:color-mix(in srgb,var(--theme-red-soft) 62%,var(--theme-surface))
}
.employee-page #profile-panel .profile-preview h2 {margin-bottom:8px;font-size:20px}
.employee-page #profile-panel .profile-preview-description {
  min-height:42px;margin:0 0 20px;color:var(--theme-muted);font-size:14px
}
.employee-page #profile-panel .profile-preview-list {
  display:grid;gap:9px;min-height:0;margin:0;padding:0;list-style:none
}
.employee-page #profile-panel .profile-preview-list li {
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  min-height:49px;padding:10px 14px;border:1px solid var(--theme-border);
  border-radius:11px;color:var(--theme-text);background:var(--theme-surface);
  font-size:14px;font-weight:700;overflow-wrap:anywhere
}
.employee-page #profile-panel .profile-preview-marker {
  display:grid;place-items:center;flex:none;width:25px;height:25px;
  border-radius:7px;color:#fff;background:var(--theme-red);font-size:18px;line-height:1
}
.employee-page #profile-panel .profile-preview-meta {
  margin:20px 0 0;padding-top:15px;border-top:1px solid var(--theme-border);
  color:var(--theme-muted);font-size:13px;line-height:1.5
}
@media(max-width:740px) {
  .employee-page #profile-panel {margin-top:20px}
  .employee-page #profile-panel .profile-choice-layout {grid-template-columns:minmax(0,1fr)}
  .employee-page #profile-panel #profile-form,
  .employee-page #profile-panel .profile-preview {padding:25px}
  .employee-page #profile-panel .profile-preview {border-left:0;border-top:1px solid var(--theme-border)}
  .employee-page #profile-panel .profile-steps {margin:21px 2px 18px}
}
@media(max-width:430px) {
  .employee-page #profile-panel .panel-title {font-size:30px}
  .employee-page #profile-panel .panel-description {font-size:15px}
  .employee-page #profile-panel .profile-step {font-size:12px}
  .employee-page #profile-panel .profile-step-line {width:18px}
  .employee-page #profile-panel #profile-form,
  .employee-page #profile-panel .profile-preview {padding:20px}
  .employee-page #profile-panel .button-row .btn {flex:1 1 auto}
}

/* Mobile onboarding keeps the location and main action on the first screen. */
.employee-page #profile-panel .profile-mobile-copy,
.employee-page #profile-panel .profile-mobile-progress,
.employee-page #profile-panel .profile-mobile-help {display:none}
.employee-page #profile-panel .profile-preview>summary {display:none}
.employee-page #profile-panel .profile-preview-body {display:block}
.employee-page #profile-panel .profile-preview:not([open]) .profile-preview-body {display:none}

@media(max-width:740px) {
  .employee-page.profile-active .topbar {
    align-items:center;flex-wrap:nowrap;gap:8px;min-height:62px;
    padding:9px 10px;margin-bottom:0
  }
  .employee-page.profile-active .brand {min-width:0;gap:9px;margin-right:auto}
  .employee-page.profile-active .brand-mark {flex:none;width:36px;height:36px}
  .employee-page.profile-active .brand-name {font-size:14px;white-space:nowrap}
  .employee-page.profile-active .brand-caption {display:none}
  .employee-page.profile-active .topbar-actions {flex:none;flex-wrap:nowrap;gap:6px;margin:0}
  .employee-page.profile-active .topbar-actions .theme-toggle {
    display:grid;place-items:center;flex:none;width:38px;height:38px;
    min-height:38px;padding:0;border-radius:10px;font-size:0
  }
  .employee-page.profile-active .theme-toggle [data-theme-choice] {display:none}
  .employee-page.profile-active .theme-toggle::after {content:"☼";font-size:20px;line-height:1;color:var(--theme-text)}
  html[data-theme="dark"] .employee-page.profile-active .theme-toggle::after {content:"☾"}
  .employee-page.profile-active .topbar-actions>a.quiet-link {
    flex:none;min-height:38px;padding:0 8px;font-size:12px
  }
  .employee-page #profile-panel {margin:20px auto 24px}
  .employee-page #profile-panel .profile-kicker,
  .employee-page #profile-panel .profile-desktop-copy,
  .employee-page #profile-panel .profile-steps {display:none}
  .employee-page #profile-panel .profile-mobile-copy {display:inline}
  .employee-page #profile-panel .profile-intro {padding:0 3px}
  .employee-page #profile-panel .profile-mobile-progress {display:block;width:100%;margin-bottom:21px}
  .employee-page #profile-panel .profile-mobile-progress>div:first-child {
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin-bottom:10px;color:var(--theme-muted);font-size:12px;font-weight:700
  }
  .employee-page #profile-panel .profile-mobile-progress strong {color:var(--theme-red)}
  .employee-page #profile-panel .profile-mobile-progress-track {display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .employee-page #profile-panel .profile-mobile-progress-track i {
    display:block;height:5px;border-radius:99px;background:var(--theme-track)
  }
  .employee-page #profile-panel .profile-mobile-progress-track i:first-child {background:var(--theme-red)}
  .employee-page #profile-panel .panel-title {
    margin:0 0 6px;font-size:clamp(27px,7.5vw,32px);line-height:1.16
  }
  .employee-page #profile-panel .panel-description {font-size:15px;line-height:1.45}
  .employee-page #profile-panel .profile-choice-layout {
    display:block;overflow:visible;margin-top:21px;border:0;border-radius:0;
    background:transparent;box-shadow:none
  }
  .employee-page #profile-panel #profile-form {
    display:block;padding:19px 17px 15px;
    border:1px solid var(--theme-border);border-radius:18px;
    background:var(--theme-surface);box-shadow:var(--theme-shadow)
  }
  .employee-page #profile-panel #profile-form>.profile-overline,
  .employee-page #profile-panel #profile-form>h2,
  .employee-page #profile-panel #profile-form>.profile-help,
  .employee-page #profile-panel .profile-memory {display:none}
  .employee-page #profile-panel .profile-mobile-help {
    display:block;margin:10px 0 19px;color:var(--theme-muted);font-size:13px
  }
  .employee-page #profile-panel .field-label {margin:0 0 9px;font-size:14px}
  .employee-page #profile-panel #profile-location {min-height:51px;padding:0 13px}
  .employee-page #profile-panel .button-row {display:flex;flex-direction:column;gap:5px}
  .employee-page #profile-panel .button-row .btn {
    flex:none;width:100%;min-height:49px;font-size:16px
  }
  .employee-page #profile-panel .button-row .btn-primary {justify-content:center}
  .employee-page #profile-panel .button-row #profile-cancel {
    min-height:40px;padding:0;border:0;color:var(--theme-muted);
    background:transparent;box-shadow:none;font-size:14px
  }
  .employee-page #profile-panel .profile-preview {
    display:block;overflow:hidden;min-width:0;margin-top:13px;padding:0;
    border:1px solid var(--theme-border);border-radius:15px;
    background:var(--theme-surface);box-shadow:var(--theme-shadow)
  }
  .employee-page #profile-panel .profile-preview>summary {
    display:flex;align-items:center;gap:8px;min-height:57px;padding:12px 16px;
    list-style:none;color:var(--theme-text);font-size:14px;font-weight:750;cursor:pointer
  }
  .employee-page #profile-panel .profile-preview>summary::-webkit-details-marker {display:none}
  .employee-page #profile-panel .profile-preview-count {
    margin-left:auto;color:var(--theme-muted);font-size:12px;font-weight:600;white-space:nowrap
  }
  .employee-page #profile-panel .profile-preview-chevron {
    color:var(--theme-red);font-size:18px;line-height:1;transition:transform .2s ease
  }
  .employee-page #profile-panel .profile-preview[open] .profile-preview-chevron {transform:rotate(180deg)}
  .employee-page #profile-panel .profile-preview-body {
    padding:2px 16px 15px;border-top:1px solid var(--theme-border)
  }
  .employee-page #profile-panel .profile-preview-body>.profile-overline,
  .employee-page #profile-panel .profile-preview-body>h2,
  .employee-page #profile-panel .profile-preview-description {display:none}
  .employee-page #profile-panel .profile-preview-list {gap:8px;margin-top:12px}
  .employee-page #profile-panel .profile-preview-list li {
    justify-content:flex-start;min-height:42px;padding:9px 11px;
    border:0;border-radius:10px;background:var(--theme-surface-2);font-size:14px
  }
  .employee-page #profile-panel .profile-preview-list li::before {
    content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--theme-red)
  }
  .employee-page #profile-panel .profile-preview-marker {display:none}
  .employee-page #profile-panel .profile-preview-meta {
    margin:13px 0 0;padding-top:0;border:0;font-size:12px
  }
}
@media(max-width:350px) {
  .employee-page.profile-active .topbar {padding:8px}
  .employee-page.profile-active .brand-name {font-size:12px}
  .employee-page #profile-panel #profile-form {padding:17px 14px 14px}
}

/* 5.4.11: task-based administration with one place for each action. */
.admin-nav-heading {display:block;padding:19px 12px 7px;color:var(--theme-muted);font-size:11px;font-weight:700;letter-spacing:.08em}
.admin-nav-heading:first-child {padding-top:4px}
.admin-nav .btn[data-admin-group="settings"] {margin-top:0}
.admin-subnav:not([hidden]) {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:4px}
.admin-subnav .btn {min-height:41px;color:var(--theme-muted);background:var(--theme-surface);border:1px solid var(--theme-border)}
.admin-subnav .btn.active {color:var(--theme-red);border-color:var(--theme-red);background:var(--theme-red-soft)}
.admin-overview-metrics .metric-card {display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.admin-overview-metrics .metric-card .btn {margin-top:auto}
.admin-overview-attention,.admin-overview-report {padding:12px 18px}
.admin-overview-attention p,.admin-overview-report p {margin:0;padding:9px 0;border-bottom:1px solid var(--theme-border);overflow-wrap:anywhere}
.admin-overview-attention p:last-child,.admin-overview-report p:last-child {border:0}
.admin-overview-attention .overview-warning {color:var(--theme-text)}
.admin-staff-panels {display:grid;gap:16px}
#staff-section .admin-staff-panels>.panel {margin:0}
#automation-tab>.panel,#plans-section>details:last-child {margin-top:16px}
#settings-section .admin-grid>.panel:first-child {grid-column:1/-1}
@media(max-width:920px){.admin-nav-heading{display:none}.admin-subnav:not([hidden]){margin-top:5px}.admin-nav .btn[data-admin-group="settings"]{border-top:0}}

/* 5.4.12: more readable actions, filters and weekly controls. */
.sidebar-period label {display:block;color:var(--theme-muted);font-size:11px;font-weight:700;letter-spacing:.06em}
.sidebar-period input[type="month"] {width:100%;margin:9px 0 5px}
.sidebar-period strong {display:block;font-size:14px}
.table-sort-button {padding:5px 2px;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}
.table-sort-button span {color:var(--theme-red);margin-left:3px}
.table-sort-button:hover,.table-sort-button:focus-visible {color:var(--theme-red)}
.quality-maintenance {margin:8px 0 14px;padding:12px 16px;border:1px solid var(--theme-border);border-radius:12px;background:var(--theme-surface-2)}
.quality-maintenance summary {font-weight:700;cursor:pointer}
.quality-maintenance .button-row {margin-top:12px;flex-wrap:wrap}
.schedule-browser-controls,.weekly-summary-controls,.weekly-summary-settings {display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:14px 0}
.schedule-browser-controls label,.weekly-summary-controls label {min-width:185px;display:grid;gap:5px}
.schedule-view-rows {margin-top:15px}
.schedule-view-row {display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,260px);align-items:center;gap:14px;padding:11px 3px;border-top:1px solid var(--theme-border)}
.schedule-view-row small {display:block;color:var(--theme-muted)}
.schedule-view-row label {display:grid;gap:4px;color:var(--theme-muted);font-size:13px}
.weekly-summary-text {max-height:410px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;border:1px solid var(--theme-border);border-radius:13px;background:var(--theme-surface-2);font:inherit;line-height:1.55}
.weekly-summary-settings {align-items:center;padding:14px;border-radius:12px;background:var(--theme-surface-2)}
.fact-hub {margin-top:18px}.fact-hub .quarter-facts {margin-top:18px}.fact-hub details {margin-top:16px}
.competitor-deal-list {display:grid;gap:10px}
.competitor-deal-item {display:grid;grid-template-columns:minmax(140px,1.2fr) minmax(125px,1fr) minmax(120px,1.3fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--theme-border);border-radius:12px;background:var(--theme-surface)}
.competitor-deal-item .scope-label {margin:3px 0 0}.competitor-deal-item .table-chips {min-width:0}.competitor-deal-teaser {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;color:var(--theme-muted)}
@media(max-width:1100px){.competitor-deal-item {grid-template-columns:minmax(150px,1fr) auto}.competitor-deal-item .table-chips,.competitor-deal-teaser {grid-column:1/-1}.competitor-deal-item .btn {grid-column:2;grid-row:1}}
@media(max-width:600px){.schedule-view-row {grid-template-columns:1fr}.competitor-deal-item {grid-template-columns:1fr}.competitor-deal-item .btn {grid-column:1;grid-row:auto}.competitor-deal-teaser {white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.weekly-summary-settings .btn {width:100%}}
.plan-trend-panel>.panel-header>label {display:grid;gap:5px;min-width:170px}
.plan-trend-panel #plan-trend-metric {min-width:170px}

/* 5.4.18 — rail sizing and quiet scrollbars. */
.admin-sidebar{min-width:0;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;min-height:0}
.admin-sidebar::-webkit-scrollbar{display:none}
.admin-sidebar>*{min-width:0;max-width:100%;flex-shrink:0}
.admin-sidebar .admin-nav{min-width:0;grid-template-columns:minmax(0,1fr)}
.admin-sidebar .admin-nav .btn{width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.35;padding-top:10px;padding-bottom:10px;text-align:left}
.admin-sidebar .sidebar-period input{min-width:0;max-width:100%;box-sizing:border-box}
.schedule-day-list{scrollbar-width:none}
.schedule-day-list::-webkit-scrollbar{display:none}
.plan-trend-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.plan-trend-highlights>div{min-width:0;padding:16px 18px;border:1px solid var(--theme-border);border-radius:14px;background:var(--theme-surface-2)}
.plan-trend-highlights span,.plan-trend-highlights small{display:block;color:var(--theme-muted);font-size:12px;line-height:1.5}
.plan-trend-highlights strong{display:block;margin:7px 0 4px;color:var(--theme-text);font-size:25px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.plan-trend-panel .plan-chart-scroll svg{max-height:none;min-width:720px;width:100%}
.plan-trend-panel .plan-chart-legend{margin:0 0 12px}
.plan-chart-track{fill:var(--theme-surface-2)}
.plan-chart-value{font:600 12px Inter,sans-serif;fill:var(--theme-text)}
.plan-chart-day{outline:none}.plan-chart-day:hover .plan-chart-track,.plan-chart-day:focus .plan-chart-track{fill:var(--theme-border)}
.plan-chart-day:focus .plan-chart-value{fill:var(--theme-red)}
.plan-trend-panel .plan-chart-grid{stroke-dasharray:3 6}
@media(max-width:1000px){.admin-sidebar{overflow:visible}.admin-sidebar .admin-nav{display:flex;overflow-x:auto;scrollbar-width:none}.admin-sidebar .admin-nav::-webkit-scrollbar{display:none}.admin-sidebar .admin-nav .btn{width:auto;white-space:nowrap}}
@media(max-width:700px){.plan-trend-highlights{gap:8px}.plan-trend-highlights>div{padding:12px 10px}.plan-trend-highlights strong{font-size:19px}.plan-trend-highlights small{font-size:11px}}
@media(max-width:420px){.plan-trend-highlights{grid-template-columns:1fr}.plan-trend-highlights>div{display:grid;grid-template-columns:1fr auto;gap:4px 10px}.plan-trend-highlights strong{grid-column:2;grid-row:1/3;margin:0;align-self:center}}
.panel-expanded{scrollbar-width:none}
.panel-expanded::-webkit-scrollbar{display:none}

/* 5.4.19 — compact bars and immediate segment tooltip. */
.plan-trend-chart{position:relative}
.plan-trend-panel .plan-chart-scroll{max-width:1080px;margin:0 auto}
.plan-trend-tooltip{position:absolute;z-index:25;width:max-content;max-width:calc(100% - 8px);min-width:230px;padding:15px 17px;border:1px solid var(--theme-border);border-radius:13px;background:var(--theme-surface);color:var(--theme-text);box-shadow:0 10px 30px #0002;pointer-events:none;font-size:13px;font-variant-numeric:tabular-nums}
.plan-trend-tooltip[hidden]{display:none}.plan-trend-tooltip>strong{display:block;margin-bottom:10px}.plan-trend-tooltip>div{display:flex;justify-content:space-between;gap:20px;margin-top:8px}.plan-trend-tooltip span{display:flex;align-items:center;gap:7px;color:var(--theme-muted)}.plan-trend-tooltip i{width:8px;height:8px;border-radius:3px}.plan-trend-tooltip .is-new{background:#5c7a9d}.plan-trend-tooltip .is-asp{background:var(--theme-red)}.plan-trend-tooltip .tooltip-extra{padding-top:8px;border-top:1px solid var(--theme-border)}
