html[data-design-system="tiansight"], html[data-design-system="tiansight"] body {
  --s-canvas: var(--ts-surface);
  --s-surface: var(--ts-paper);
  --s-surface-muted: var(--ts-ink-primary);
  --s-surface-raised: var(--ts-paper);
  --s-ink: var(--ts-charcoal);
  --s-text: var(--ts-text);
  --s-muted: var(--ts-ink-muted);
  --s-faint: var(--ts-ink-muted);
  --s-gold: var(--ts-gold);
  --s-gold-text: var(--ts-gold);
  --s-gold-deep: var(--ts-gold-deep);
  --s-gold-highlight: var(--ts-gold-hi);
  --s-seal: var(--ts-seal);
  --s-line: var(--ts-line);
  --s-line-strong: var(--ts-line-strong);
  --s-line-gold: var(--ts-card-border);
  --s-shadow: var(--ts-shadow-2);
  --s-shadow-lg: var(--ts-shadow-3);
  --s-font-serif: var(--ts-font-cn);
  --s-font-mono: var(--ts-font-mono);
  --bg: var(--ts-surface);
  --canvas: var(--ts-surface);
  --paper: var(--ts-paper);
  --panel: var(--ts-paper);
  --panel2: var(--ts-ink-primary);
  --card: var(--ts-paper);
  --white: var(--ts-paper);
  --surface: var(--ts-paper);
  --surface-muted: var(--ts-ink-primary);
  --surface-accent: var(--ts-paper);
  --ink: var(--ts-charcoal);
  --navy: var(--ts-charcoal);
  --navy-l: var(--ts-gold-deep);
  --navy-light: var(--ts-gold-deep);
  --text: var(--ts-text);
  --text2: var(--ts-text-muted);
  --text-2: var(--ts-text-muted);
  --text3: var(--ts-text-muted);
  --muted: var(--ts-text-muted);
  --faint: var(--ts-text-muted);
  --line: var(--ts-line);
  --soft: var(--ts-ink-primary);
  --border: var(--ts-line);
  --border-2: var(--ts-line-strong);
  --gold: var(--ts-gold);
  --gold-l: var(--ts-gold-hi);
  --gold2: var(--ts-gold-deep);
  --gold-d: var(--ts-gold-deep);
  --gold-hi: var(--ts-gold);
  --rose: var(--ts-seal);
  --red: var(--ts-seal);
  --primary: var(--ts-ink-primary);
  --accent: var(--ts-gold);
  --radius: var(--ts-radius);
  --font-serif: var(--ts-font-cn);
  --font-mono: var(--ts-font-mono);
  --font: var(--ts-font-cn);
  --font-display: var(--ts-font-cn);
  --r: var(--ts-radius);
  color-scheme: light;
  background: var(--ts-surface);
  color: var(--ts-text);
  font-family: var(--ts-font-cn);
}
html[data-design-system] body { margin: 0; }
html[data-design-system] :where(h1,h2,h3,h4,h5) { font-family: var(--ts-font-cn); color: var(--ts-text); font-style: normal; }
html[data-design-system] :where(p,small,label,th,td,button,input,select,textarea) { font-family: var(--ts-font-cn); }
html[data-design-system] :where(button,input,select,textarea) { font-size: var(--ts-type-ui); }
html[data-design-system] :where(code,pre,kbd,.num,.mono,.kpi-value,.stat-value) { font-family: var(--ts-font-mono); font-variant-numeric: tabular-nums; }
html[data-design-system] :where(.sidebar,.site-nav,.topbar,.subbar,.sub-bar,.tabbar,.tabs-bar,.chrome,.header,.hdr) {
  background: var(--ts-paper); color: var(--ts-text); border-color: var(--ts-line); box-shadow: none;
}
html[data-design-system] .nav-item.active { background: var(--ts-ink-primary); color: var(--ts-gold); border-left-color: var(--ts-gold); }
html[data-design-system] .user-name, html[data-design-system] .user-role { color: var(--ts-text-muted); }
html[data-design-system] .hdr :where(.logo-text,.hdr-act,.hdr-r,.sub) { color: var(--ts-text); border-color: var(--ts-line); }
html[data-design-system] .hdr .logo-mark { background: var(--ts-ink-primary); color: var(--ts-gold); border-radius: var(--ts-radius); }
html[data-design-system] .hdr :is(.bc a,.bc .bc-cur,.hdr-scope,.hdr-user-name,.hdr-chip) { color: var(--ts-text-muted); }
html[data-design-system] .hdr .bc .bc-home { background: var(--ts-ink-primary); color: var(--ts-gold); border-color: var(--ts-control-border); }
html[data-design-system] .subproj-bar { background: var(--ts-paper); border-color: var(--ts-line); }
html[data-design-system] .rpt-view-switch { background: var(--ts-paper); border-color: var(--ts-line); border-radius: var(--ts-radius); }
html[data-design-system] .rvs-label { color: var(--ts-gold); }
html[data-design-system] :where(.login-ov) { background: var(--ts-surface); }
html[data-design-system] :where(.sidebar-label,.sidebar-footer,.sidebar-header) { color: var(--ts-text-muted); border-color: var(--ts-line); }
html[data-design-system] :where(.nav-item,.nav-links a,.site-nav a,.sidebar a,.topbar a,.brand,.logo-text) { color: var(--ts-text); }
html[data-design-system] :where(.nav-item:hover,.nav-item.active,.nav-links a:hover,.nav-links a.active) { background: var(--ts-ink-primary); color: var(--ts-gold); border-color: var(--ts-gold); }
html[data-design-system] :where(.card,.panel,.kpi,.stat-card,.chart-card,.chart-box,.chart-wrap,.metric-card,.module-card,.login-card) {
  background: var(--ts-paper); color: var(--ts-text); border-color: var(--ts-line); border-radius: var(--ts-radius); box-shadow: none;
}
html[data-design-system] :where(.card-title,.section-title,.page-title,.kpi-value,.stat-value) { color: var(--ts-text); }
html[data-design-system] :where(.eyebrow,.caption,.kpi-label,.stat-label,.subtitle,.section-sub,.muted) { color: var(--ts-text-muted); }
html[data-design-system] :where(.btn,.button,.tb-btn,.filter-btn,.chip-btn,.tab-btn) {
  font-family: var(--ts-font-cn); border-radius: var(--ts-radius); color: var(--ts-gold);
  border: 1px solid var(--ts-control-border); background: var(--ts-paper); box-shadow: none;
  transition: background var(--ts-dur-fast) var(--ts-ease),color var(--ts-dur-fast) var(--ts-ease);
}
html[data-design-system] :where(.btn,.button,.tb-btn,.filter-btn,.chip-btn):hover { background: var(--ts-ink-primary); color: var(--ts-gold-hover); }
html[data-design-system] :where(.btn,.button,.tb-btn):active { color: var(--ts-gold-press); border-color: var(--ts-gold-press); }
html[data-design-system] :where(.btn-primary,.btn.primary,.button.primary,.tb-btn.gold,.filter-btn.active,.chip-btn.active) { background: var(--ts-ink-primary); color: var(--ts-text); }
html[data-design-system] :where(.btn-danger,.tb-btn.danger) { background: var(--ts-paper); color: var(--ts-seal); border-color: var(--ts-seal); }
html[data-design-system] :where(.btn,.button,.tb-btn,.filter-btn,.chip-btn):disabled { opacity: .5; cursor: not-allowed; }
html[data-design-system] :where(.btn,.button,.tb-btn,.filter-btn,.chip-btn)[aria-pressed="true"] { border-color: var(--ts-gold-press); background: var(--ts-ink-primary); }
html[data-design-system] :where(.tab-btn) { border-width: 0 0 2px; border-color: transparent; }
html[data-design-system] :is(.tab-btn.active,.tab-btn[aria-selected="true"]) { background: var(--ts-ink-primary); color: var(--ts-gold); border-bottom-color: var(--ts-gold); }
html[data-design-system] :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea,.input,.select,.form-control) {
  background: var(--ts-paper); color: var(--ts-text); border-color: var(--ts-control-border); border-radius: var(--ts-radius);
}
html[data-design-system] :where(input,textarea)::placeholder { color: var(--ts-text-muted); }
html[data-design-system] :where(input,select,textarea):disabled { opacity: .5; }
html[data-design-system] :where(input,select,textarea)[aria-invalid="true"] { border-color: var(--ts-seal); }
html[data-design-system] :where(.badge,.chip,.tag,.pill,.status-pill) { background: var(--ts-ink-primary); color: var(--ts-gold); border-color: var(--ts-card-border); border-radius: var(--ts-radius-pill); }
html[data-design-system] :where(.badge-error,.badge-closed,.error,.form-error) { color: var(--ts-seal); }
html[data-design-system] :where(table) { color: var(--ts-text); background: var(--ts-paper); border-color: var(--ts-line); }
html[data-design-system] :where(thead th) { background: var(--ts-ink-primary); color: var(--ts-gold); border-color: var(--ts-line); }
html[data-design-system] :where(td,th) { border-color: var(--ts-line); }
html[data-design-system] :where(tbody tr:hover) { background: var(--ts-surface); }
html[data-design-system] :where(.table-wrap,.table-container) { max-width: 100%; overflow-x: auto; }
html[data-design-system] :where(.modal,.drawer,.toast,.dropdown-menu,.popover) { background: var(--ts-paper); color: var(--ts-text); border-color: var(--ts-line-strong); border-radius: var(--ts-radius); box-shadow: var(--ts-shadow-3); }
html[data-design-system] :where(.modal-backdrop) { background: var(--ts-scrim); }
html[data-design-system] :where(.modal-header,.modal-footer,.drawer-header,.modal-title) { color: var(--ts-text); border-color: var(--ts-line); }
html[data-design-system] :where(.modal-close,.icon-btn) { color: var(--ts-gold); }
html[data-design-system] :focus-visible { outline: 2px solid var(--ts-focus); outline-offset: 2px; }
html[data-design-system] :where(.logo img,.brand img,.sidebar-mark img,.share-logo) { object-fit: contain; }
html[data-design-system] .page-content { min-width: 0; }
html[data-design-system] .page-content > :first-child { margin-top: 0; }
html[data-design-system] .ts-chart-frame :where(.axis text,.tick text) { fill: var(--ts-chart-axis); }
html[data-design-system] .ts-chart-frame :where(.axis line,.tick line) { stroke: var(--ts-chart-grid); }
html[data-design-system] .dashboard-share-modal .btn-primary { background: var(--ts-ink-primary); color: var(--ts-text); border-color: var(--ts-control-border); }
html[data-design-system] .dashboard-share-modal .form-error { background: var(--ts-paper); color: var(--ts-seal); border-color: var(--ts-seal); }
html[data-design-system] .dashboard-share-modal .btn { border-radius: var(--ts-radius); }
html[data-design-system] .org-directory-filters button[aria-pressed] { color: var(--ts-text-muted); border-radius: var(--ts-radius); }
html[data-design-system] .org-directory-filters button[aria-pressed="true"] { color: var(--ts-gold); background: var(--ts-ink-primary); box-shadow: none; }
html[data-design-system] :is(.dashboard-share-modal,.project-settings-modal) .btn-primary { background: var(--ts-ink-primary); color: var(--ts-text); border-color: var(--ts-control-border); border-radius: var(--ts-radius); }
html[data-design-system] :is(.dashboard-share-modal,.project-settings-modal) .btn-primary:hover { background: var(--ts-paper); color: var(--ts-gold-hover); }
html[data-design-system] .org-directory-card { background: var(--ts-paper); border-color: var(--ts-line); border-radius: var(--ts-radius); }
@media (max-width: 640px) {
  html[data-design-system] .hdr-top { flex-wrap: wrap; }
  html[data-design-system] .hdr-actions { flex-wrap: wrap; min-width: 0; max-width: 100%; }
  html[data-design-system] .spb-select { max-width: 100%; }
  html[data-design-system] .spb-select select { max-width: 100%; min-width: 0; }
  html[data-design-system] .ts-card { min-width: 0; }
  html[data-design-system] .ts-toolbar { width: 100%; }
  html[data-design-system] .ts-toolbar > * { max-width: 100%; }
}
@media print {
  html[data-design-system], html[data-design-system] body { background: var(--ts-paper); }
  html[data-design-system] :where(.sidebar,.topbar,.site-nav,.analysis-breadcrumb,.ts-notifications) { display: none; }
}
