/* Single source of screen design tokens. Existing names are retained. */
@media screen {
:root {
  --bg: #fafafa;
  --card: #ffffff;
  --on-brand: #ffffff;
  --ink: #0a0a0a;
  --muted: #52525b;
  --weak: #a1a1aa;
  --line: #ececee;
  --line-strong: #dcdce0;
  --brand: #7c3aed;
  --brand-deep: #6d28d9;
  --brand-light: #a78bfa;
  --brand-2: var(--brand-deep);
  --brand-soft: #f3effe;
  --brand-glow: rgba(124,58,237,.16);
  --green: #16a34a;
  --amber: #d97706;
  --danger: #dc2626;
  --radius-control: 8px;
  --radius-card: 14px;
  --radius-panel: 22px;
  --radius-pill: 999px;
  --shadow-light: 0 1px 2px rgba(10,10,10,.04);
  --shadow-medium: 0 8px 30px rgba(10,10,10,.06);
  --shadow-heavy: 0 24px 60px rgba(10,10,10,.09);
  --shadow-featured: 0 12px 34px rgba(124,58,237,.16);
  --soft-shadow: var(--shadow-light);
  --float-shadow: var(--shadow-medium);
  --ease: cubic-bezier(.22,1,.36,1);
  --font-body: "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --font-heading: "Space Grotesk", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --font-code: "JetBrains Mono", "Noto Sans SC", monospace;
  --overlay: rgba(10,10,10,.16);
  --image-overlay: rgba(10,10,10,.9);
  --focus-ring: 0 0 0 3px var(--brand-glow);
  --surface-soft: var(--table-head);
  --surface-selected: var(--brand-soft);
  --surface-group: var(--table-head);
  --table-head: var(--surface-sunken);
  --surface-sunken: #f4f4f5;
  --table-head-ink: var(--muted);
  --batch-bg: var(--surface-soft);
  --batch-ink: var(--muted);
  --row-hover: var(--brand-soft);
  --row-hover-line: var(--line-strong);
  --row-selected: var(--brand-soft);
  --row-selected-hover: var(--brand-soft);
  --focus: var(--brand);
  --product-ink: var(--ink);
  --ui-accent: var(--brand);
  --ui-input: var(--card);
  --ui-radius: var(--radius-card);
  --ui-success-bg: var(--surface-soft);
  --ui-danger-bg: var(--surface-soft);
  --ui-warning-bg: var(--surface-soft);
  --sidebar-solid: var(--card);
  --sidebar-glass: var(--card);
  --floating: var(--card);
}
:root[data-theme="dark"] {
  --bg: #141519;
  --card: #202125;
  --line: #3b3d45;
  --ink: #eeeef2;
  --muted: #abadb5;
  --brand: #7c3aed;
  --brand-2: #6d28d9;
  --danger: #ffa69f;
  --green: #9bd3ae;
  --amber: #e8c182;
  --surface-soft: #25262c;
  --surface-selected: #263954;
  --surface-group: #2a2c33;
  --table-head: #2a2c33;
  --table-head-ink: #bec1cc;
  --batch-bg: #282a31;
  --batch-ink: #bbc0cd;
  --row-hover: #2a303c;
  --row-hover-line: #6488b9;
  --row-selected: #273d60;
  --row-selected-hover: #2b466e;
  --focus: var(--brand-light);
  --product-ink: #eeeef2;
  --sticky-action-bg: #25262c;
  --fs-blue: #244563;
  --fs-line: #3b3d45;
  --fs-paper: #202125;
  --fs-input: #2a2c33;
  --fs-result: #2a2c33;
  --fs-ink: #8db8ff;
  --slg-table-line: #3b3d45;
  --slg-table-ink: #8db8ff;
  --slg-table-focus: #8db8ff;
  --ps-ink: #eeeef2;
  --ps-muted: #abadb5;
  --ps-line: #3b3d45;
  --ps-accent: #244563;
  --ps-soft: #2a2c33;
  --ps-selected: #2a2c33;
  --rq-ink: #8db8ff;
  --rq-muted: #abadb5;
  --rq-line: #3b3d45;
  --rq-soft: #202125;
  --rq-mint: #2b3530;
  --rq-cream: #29271f;
  --ui-input: #202125;
  --ui-success-bg: #263e30;
  --ui-danger-bg: #492b2b;
  --ui-warning-bg: #423725;
  --sidebar-solid: #202126;
  --sidebar-glass: rgba(32,33,39,.92);
  --floating: rgba(39,40,46,.97);
  --ui-accent: #7c3aed;
}

:root[data-slg-ui="silver"] .app-shell::before,:root[data-slg-ui="silver"] .app-sidebar::after {background:none!important;}
body { font-family:var(--font-body); font-variant-numeric:tabular-nums; }
:root[data-slg-ui="silver"] body { font-family:var(--font-body); }
:root[data-slg-ui="silver"] :is(h1,h2,h3,h4,h5,h6,.section-heading,.md-kpi strong,.md-annual strong,.stat .v,.detail-card-value) {font-family:var(--font-heading);font-weight:700;}
:is([data-slg-numeric],.num,.numeric,.money,.fs-value,.rd-value,.stat .v,.md-kpi strong,.md-annual strong,[data-task-badge],.cnt,input[type="number"],input[inputmode="decimal"],input[inputmode="numeric"]) {font-family:var(--font-heading)!important;font-variant-numeric:tabular-nums!important;letter-spacing:-.04em!important;}
:root :is(code,pre,kbd,samp,.mono,.code,.order-no-input,[data-col="code"],[data-field="code"],[data-label$="编码"],[data-label$="编号"],[data-label$="单号"]),:root :is([data-label$="编码"],[data-label$="编号"],[data-label$="单号"]) [data-slg-numeric] {font-family:var(--font-code)!important;}
:root[data-slg-ui="silver"] :is(.card,.detail-card,.md-kpi,.md-panel,.home-followup,.home-resume,.home-task-panel,.home-aged) {border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card);box-shadow:var(--shadow-light);}
:root[data-slg-ui="silver"] :is(.modal,.erp-dialog,.nerp-dialog,.pf-dialog,.rd-dialog,.rq-dialog,.ps-dialog,.md-drawer>section) {border-radius:var(--radius-panel);box-shadow:var(--shadow-medium);}
:root[data-slg-ui="silver"] :is(.btn,input,select,textarea,.icon-button) {border-radius:var(--radius-control)!important;}
:root[data-slg-ui="silver"] :is(.btn.primary,.home-filters button.on) {background:var(--brand);border-color:var(--brand);color:var(--on-brand);}
:root[data-slg-ui="silver"] .btn.primary:hover {background:var(--brand-deep);border-color:var(--brand-deep);}
:root[data-slg-ui="silver"] #tab-body.management-dashboard .md-kpis > div.md-focus-title {background:var(--surface-soft)!important;color:var(--muted)!important;}
:root[data-slg-ui="silver"] #tab-body.management-dashboard .md-kpi strong {color:var(--ink)!important;}
:root[data-slg-ui="silver"] #tab-body.management-dashboard .md-kpis > button.md-kpi.md-kpi-primary {background:var(--brand)!important;color:var(--on-brand)!important;box-shadow:var(--shadow-featured)!important;}
:root[data-slg-ui="silver"] #tab-body.management-dashboard .md-kpis > button.md-kpi.md-kpi-primary :is(span,strong,small) {color:var(--on-brand)!important;}
:root[data-slg-ui="silver"] :is(.chip,[data-task-badge],.tag) {border-radius:var(--radius-pill);}
:root[data-slg-ui="silver"] .detail-progress {background:none;height:7px;position:relative;border-radius:var(--radius-pill);}
:root[data-slg-ui="silver"] .detail-progress::before {content:"";position:absolute;inset:1px 0;background:var(--surface-soft);border-radius:var(--radius-pill);}
:root[data-slg-ui="silver"] .detail-progress i {position:relative;height:5px;top:1px;background:var(--brand);border-radius:var(--radius-pill);transform-origin:left center;}
.slg-reveal-ready {opacity:0;transform:translateY(8px);transition:opacity .28s var(--ease),transform .28s var(--ease);transition-delay:var(--slg-enter-delay,0s);}
.slg-reveal-ready.slg-revealed {opacity:1;transform:translateY(0);}
.detail-progress i.slg-bar-ready {transform:scaleX(0);transition:transform .45s var(--ease);}
.detail-progress i.slg-bar-ready.slg-revealed {transform:scaleX(1);}
.slg-number-rolling {position:relative;overflow:hidden;-webkit-text-fill-color:transparent;}
.slg-number-reel {position:absolute;inset:0;overflow:hidden;pointer-events:none;user-select:none;}
.slg-number-reel::after {content:attr(data-slg-roll-frames);display:block;white-space:pre;font:inherit;line-height:var(--slg-roll-line);color:var(--slg-roll-ink);-webkit-text-fill-color:var(--slg-roll-ink);transform:translateY(0);transition:transform .65s var(--ease);}
.slg-number-reel.slg-number-playing::after {transform:translateY(var(--slg-roll-offset));}
:root[data-motion="reduced"] .slg-number-rolling {-webkit-text-fill-color:currentColor;}
:root[data-motion="reduced"] .slg-number-reel {display:none;}
:root[data-motion="reduced"] .slg-reveal-ready,:root[data-motion="reduced"] .slg-bar-ready {opacity:1!important;transform:none!important;transition:none!important;}
:root[data-slg-ui="silver"] .app-sidebar .tabs>button.on [data-task-badge] {background:var(--on-brand)!important;color:var(--brand-deep)!important;}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
 .slg-reveal-ready,.slg-bar-ready {opacity:1!important;transform:none!important;}
 .slg-number-rolling {-webkit-text-fill-color:currentColor;}
 .slg-number-reel {display:none!important;}
}
}
