/* The dashboard still uses Infloww's legacy TC palette, distinct from its new
   orange design system. Values verified in the official 5.7.19 web resources.
   Source and the complete relevant palette: assets/dark-palette.json. */
:root { --blue: #3467ff; }
.brand-logo { display:block; width:148px; height:24px; object-fit:contain; }
.theme-toggle { width:100%; justify-content:flex-start; gap:10px; padding:7px 0; margin-bottom:12px; color:#838891; font-size:12px; border-radius:5px; }
.theme-toggle:hover { color:var(--blue); }
#theme-icon { display:flex; width:29px; justify-content:center; }
#theme-icon svg { width:18px; height:18px; }
.brand { letter-spacing:normal; }
.sidebar-bottom { padding-top:16px; }
.theme-toggle:focus-visible { outline-offset:2px; }
.total strong { color:#2d74ff; }
.total>span:not(.total-icon) { color:#1890ff; }

html[data-theme="dark"] {
  --page:#151515; /* TC.Home-B1, TC.B-nav */
  --card:#262626; /* TC.Home-B-th, TC.B-popover */
  --hover:#353535; /* TC.B-select-hover */
  --selected:#384360; /* TC.B-model-active */
  --line:#444444; /* TC.L1 */
  --text:#d9d9d9; /* TC.T1 */
  --strong:#ffffff; /* TC.T0 */
  --secondary:#b8b8b8; /* TC.T2 */
  --muted:#999999; /* TC.T3 */
  --blue:#3467ff; /* TC.M1 */
  background:var(--page);
  color:var(--text);
  scrollbar-color:#454545 var(--page);
}
[data-theme="dark"] body,
[data-theme="dark"] .sidebar { background:var(--page); color:var(--text); }
[data-theme="dark"] main { background:var(--page); border-color:var(--card); }
[data-theme="dark"] .card { background:var(--card); }
[data-theme="dark"] .brand-logo { filter:invert(1); }
[data-theme="dark"] .status,
[data-theme="dark"] .top-button,
[data-theme="dark"] .platform { background:var(--card); color:var(--text); }
[data-theme="dark"] .top-button:hover,
[data-theme="dark"] .icon-button:hover,
[data-theme="dark"] .nav-item:hover { background:var(--hover); color:var(--strong); }
[data-theme="dark"] .nav-item { color:var(--secondary); }
[data-theme="dark"] .nav-item.active { background:var(--card); color:var(--strong); }
[data-theme="dark"] .nav-item.active svg { fill:var(--strong); stroke:var(--card); }
[data-theme="dark"] .nav-divider { background:var(--line); }
[data-theme="dark"] .trial-banner { background:#132731; color:var(--text); }
[data-theme="dark"] .trial-banner button { color:#1890ff; }
[data-theme="dark"] .trial-banner>span:first-child svg { stroke:#132731; }
[data-theme="dark"] .metric strong { color:var(--strong); }
[data-theme="dark"] .metric small,
[data-theme="dark"] .timezone-label,
[data-theme="dark"] .info,
[data-theme="dark"] .employee-count,
[data-theme="dark"] .empty,
[data-theme="dark"] .icon-button,
[data-theme="dark"] .demo-toggle,
[data-theme="dark"] .theme-toggle,
[data-theme="dark"] .shift-footer,
[data-theme="dark"] .chart-legend,
[data-theme="dark"] .range-label,
[data-theme="dark"] .page-footer,
[data-theme="dark"] .preview-label,
[data-theme="dark"] .sales-footer { color:var(--muted); }
[data-theme="dark"] .total,
[data-theme="dark"] .metric-column,
[data-theme="dark"] .shift-footer,
[data-theme="dark"] .sales-footer,
[data-theme="dark"] .employee-row { border-color:var(--line); }
[data-theme="dark"] select,
[data-theme="dark"] .segmented,
[data-theme="dark"] .date-button { background:var(--card); border-color:var(--line); color:var(--secondary); }
[data-theme="dark"] .segmented button { color:var(--secondary); }
[data-theme="dark"] .segmented button.selected { background:var(--selected); color:#a8c5ff; }
[data-theme="dark"] .text-button { color:#a8c5ff; }
[data-theme="dark"] .metric-icon { background:#2ad4ac1a; color:#2ad4ac; }
[data-theme="dark"] .metric-icon.blue { background:#3467ff1a; color:#3467ff; }
[data-theme="dark"] .metric-icon.red { background:#ff7c711a; color:#ff7c71; }
[data-theme="dark"] .metric-icon.purple { background:#ce63ff1a; color:#ce63ff; }
[data-theme="dark"] .metric-icon.stream { background:#144ecc1a; color:#5085f0; }
[data-theme="dark"] .switch { background:#666666; }
[data-theme="dark"] .profile>span:first-child,
[data-theme="dark"] .avatar { background:var(--selected); color:#a8c5ff; }
[data-theme="dark"] .shift-block { background:#3467ff1a; }
[data-theme="dark"] .shift-block.next { background:#ce63ff1a; }
[data-theme="dark"] .shift-block small,
[data-theme="dark"] .employee-row small,
[data-theme="dark"] .shift-day { color:var(--muted); }
[data-theme="dark"] .chart line[stroke="#e9eaed"] { stroke:var(--line); }
[data-theme="dark"] .chart text { fill:var(--muted); }
[data-theme="dark"] .empty-art path[fill="white"] { fill:var(--card); }
[data-theme="dark"] .empty-art path[stroke="#343538"],
[data-theme="dark"] .empty-art path[stroke="#45474b"] { stroke:#b8b8b8; }
[data-theme="dark"] .empty-art path[fill="#343538"] { fill:#b8b8b8; }
[data-theme="dark"] .empty-art path[stroke="#dcdcde"] { stroke:#666666; }
[data-theme="dark"] .empty-art circle { fill:#384360; }
[data-theme="dark"] dialog { background:var(--card); color:var(--text); border-color:var(--line); }
[data-theme="dark"] dialog::backdrop { background:#00000099; }
[data-theme="dark"] #modal-content p,
[data-theme="dark"] .field { color:var(--secondary); }
[data-theme="dark"] .field input,
[data-theme="dark"] .field select { background:var(--page); border-color:var(--line); color:var(--text); }
[data-theme="dark"] .modal-links a { border-color:var(--line); color:#a8c5ff; }
[data-theme="dark"] #toast { background:#2f2f2f; color:var(--strong); border:1px solid var(--line); }
[data-theme="dark"] .support { background:var(--blue); }
@media(max-width:650px) { .brand-logo { width:117px; height:19px; } .theme-toggle { margin-bottom:8px; } }

.metric-icon.stream { background:#144ecc1a; color:#144ecc; }
