/* Silicon District design tokens — SiliconDistrict-DesignSystem.md §6, copied verbatim.
   Governance (§5): "One theme file. No component may hardcode a hex value, spacing value, or font
   stack." Kept complete (including gameplay-only tokens no admin screen uses yet — heat, market,
   currency) rather than trimmed to only what T10 needs, since a second, partial token file the next
   screen has to reconcile against this one would violate "one theme file" immediately. */
:root {
  /* Surfaces */
  --sd-surface-base:      #0B0E13;
  --sd-surface-1:         #12161D;
  --sd-surface-2:         #191F28;
  --sd-surface-3:         #222A35;
  --sd-surface-inset:     #080A0E;

  /* Borders */
  --sd-border-subtle:     rgba(255,255,255,0.06);
  --sd-border-default:    rgba(255,255,255,0.11);
  --sd-border-strong:     rgba(255,255,255,0.20);

  /* Text */
  --sd-text-primary:      #E6EAF0;
  --sd-text-secondary:    #98A2B3;
  --sd-text-tertiary:     #616B7C;
  --sd-text-inverse:      #0B0E13;

  /* Accent */
  --sd-accent:            #E0A32E;
  --sd-accent-hover:      #F2B747;
  --sd-accent-muted:      rgba(224,163,46,0.14);

  /* Currency & resources */
  --sd-clean:             #4EC5D6;
  --sd-dirty:             #7FA650;
  --sd-reputation:        #C9A227;
  --sd-influence:         #8B7BD8;
  --sd-energy:            #5B8FD6;

  /* Heat */
  --sd-heat-ghost:        #4A5568;
  --sd-heat-flagged:      #D6A24E;
  --sd-heat-investigated: #DD7B3A;
  --sd-heat-target:       #D6453D;

  /* Market */
  --sd-market-up:         #3FA96B;
  --sd-market-down:       #D6453D;
  --sd-market-flat:       #616B7C;

  /* Status */
  --sd-success:           #3FA96B;
  --sd-warning:           #D6A24E;
  --sd-danger:            #D6453D;
  --sd-info:              #4EC5D6;

  /* Type */
  --sd-font-ui:      "Inter", -apple-system, system-ui, sans-serif;
  --sd-font-display: "Space Grotesk", "Inter", -apple-system, system-ui, sans-serif;
  --sd-font-data:    "JetBrains Mono", "IBM Plex Mono", ui-monospace, monospace;
  --sd-numeric:      tabular-nums lining-nums;

  --sd-text-display: 40px; --sd-line-display: 44px;
  --sd-text-xl:      32px; --sd-line-xl:      38px;
  --sd-text-lg:      25px; --sd-line-lg:      32px;
  --sd-text-md:      20px; --sd-line-md:      28px;
  --sd-text-base:    16px; --sd-line-base:    24px;
  --sd-text-sm:      14px; --sd-line-sm:      20px;
  --sd-text-xs:      12px; --sd-line-xs:      16px;

  /* Spacing */
  --sd-space-1: 4px;  --sd-space-2: 8px;  --sd-space-3: 12px;
  --sd-space-4: 16px; --sd-space-5: 24px; --sd-space-6: 32px;
  --sd-space-7: 48px; --sd-space-8: 64px;

  /* Radius */
  --sd-radius-sm: 3px; --sd-radius-md: 6px; --sd-radius-lg: 10px; --sd-radius-full: 999px;

  /* Elevation */
  --sd-shadow-overlay: 0 16px 48px rgba(0,0,0,0.6);

  /* Glass */
  --sd-glass:      rgba(25,31,40,0.72);
  --sd-glass-blur: blur(20px) saturate(1.1);

  /* Motion */
  --sd-ease:        cubic-bezier(0.2, 0, 0.2, 1);
  --sd-dur-instant: 90ms;
  --sd-dur-quick:   160ms;
  --sd-dur-normal:  240ms;
  --sd-dur-slow:    420ms;

  /* Icons */
  --sd-icon-sm: 16px;
  --sd-icon-md: 20px;
  --sd-icon-lg: 24px;
}

/* T33 Settings > Accessibility. Governance §5 "one theme file": these are token overrides gated by a
   root class (toggled by wwwroot/js/client-settings.js), not a second theme file or a per-component
   hardcoded value. */
html.sd-a11y-high-contrast {
  --sd-text-secondary:  #C7CEDA;
  --sd-text-tertiary:   #98A2B3;
  --sd-border-subtle:   rgba(255,255,255,0.18);
  --sd-border-default:  rgba(255,255,255,0.32);
  --sd-border-strong:   rgba(255,255,255,0.5);
  --sd-glass:           rgba(25,31,40,0.94);
}

/* UX §7.1/§6.3: market up/down shifted to blue/orange so tier and direction never rely on red/green alone. */
html.sd-a11y-colorblind {
  --sd-market-up:   #4EC5D6;
  --sd-market-down: #E0A32E;
  --sd-success:     #4EC5D6;
  --sd-danger:      #E0A32E;
}

html.sd-a11y-text-small {
  --sd-text-base: 14px; --sd-line-base: 20px;
  --sd-text-sm:   12px; --sd-line-sm:   18px;
  --sd-text-md:   18px; --sd-line-md:   26px;
}

html.sd-a11y-text-large {
  --sd-text-base: 18px; --sd-line-base: 26px;
  --sd-text-sm:   16px; --sd-line-sm:   22px;
  --sd-text-md:   22px; --sd-line-md:   30px;
}

/* T33 Settings > Display: density comfortable/compact. */
html.sd-display-compact {
  --sd-space-3: 8px;
  --sd-space-4: 10px;
  --sd-space-5: 16px;
  --sd-space-6: 20px;
}
