/* ============================================================
   FİNAPSİS — Design Tokens
   Dark-first · near-black cool · lime signature
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@300;400;500;600;700&family=Roboto:wght@300;400;500;600;700&display=swap');

:root{
  /* ---- Surfaces: obsidian compact neutral ---- */
  --bg-0:#030405;     /* app canvas (deepest)            */
  --bg-1:#07090a;     /* panel / card surface            */
  --bg-2:#0b0d0f;     /* raised / row-hover              */
  --bg-3:#0b0e0f;     /* inset / input well              */
  --bg-elev:#0d0f11;  /* floating overlay                */
  --bg-sidebar:#020303;

  /* ---- Hairline borders ---- */
  --border-subtle:#0e1113;
  --border:#1c2125;
  --border-strong:#3b3b40;

  /* ---- Overlay / transient surfaces ---- */
  --scrim-bg:rgba(5,7,6,.5);
  --scrim-bg-strong:rgba(5,7,6,.6);
  --sheet-scrim-bg:rgba(5,7,6,.62);
  --mobile-sheet-scrim-bg:rgba(5,7,7,.6);
  --tool-sim-scrim-bg:rgba(0,0,0,.68);
  --trend-modal-backdrop-bg:rgba(0,0,0,.66);
  --overlay-loader-bg:rgba(8,10,10,.76);

  /* ---- Scroll / loading surfaces ---- */
  --scrollbar-thumb:#2a322f;
  --scrollbar-thumb-hover:#33403b;
  --skeleton-highlight:#1a211e;

  /* ---- Text ramp ---- */
  --text-hi:#eaefed;   /* headings / key values          */
  --text:#b3bdb9;      /* body                           */
  --text-mid:#8b9692;  /* secondary                      */
  --text-lo:#69736f;   /* micro-labels / muted           */
  --text-dim:#49534f;  /* disabled                       */

  /* ---- Signature accent (lime) — interaction & selection ONLY ---- */
  --accent:#c2f50e;
  --accent-text:#c2f50e;
  --accent-hi:#d4ff45;
  --accent-press:#a9da00;
  --accent-soft:rgba(194,245,14,.13);
  --accent-faint:rgba(194,245,14,.05);
  --accent-line:rgba(194,245,14,.32);
  --chart-marker-ink:#030405;
  --tool-accent-bg-04:rgba(194,245,14,.04);
  --tool-accent-bg-08:rgba(194,245,14,.08);
  --tool-accent-bg-10:rgba(194,245,14,.10);
  --tool-accent-bg-22:rgba(194,245,14,.22);
  --tool-accent-line-50:rgba(194,245,14,.50);
  --tool-accent-ring-15:0 0 0 2px rgba(194,245,14,.15);
  --tool-accent-glow-14-35:0 0 14px rgba(194,245,14,.35);
  --tool-accent-glow-10-30:0 0 10px rgba(194,245,14,.30);
  --tool-accent-glow-10-40:0 0 10px rgba(194,245,14,.40);
  --tool-popover-shadow-strong:0 0 50px rgba(0,0,0,.35);
  --tool-popover-shadow:0 0 40px rgba(0,0,0,.28);
  --on-accent:#0a0c0c;

  /* ---- Semantic — reserved for DATA ---- */
  --up:#2ecf8c;        --up-soft:rgba(46,207,140,.13);    --up-line:rgba(46,207,140,.32);
  --down:#ec5b58;      --down-soft:rgba(236,91,88,.13);   --down-line:rgba(236,91,88,.32);
  --warn:#f2b13c;      --warn-soft:rgba(242,177,60,.13);  --warn-line:rgba(242,177,60,.32);
  --info:#6fa8c9;      --info-soft:rgba(111,168,201,.12); --info-line:rgba(111,168,201,.30);

  /* heatmap (correlation / compare) */
  --heat-pos:rgba(46,207,140,.18);
  --heat-pos-2:rgba(46,207,140,.34);
  --heat-neg:rgba(236,91,88,.16);
  --heat-neg-2:rgba(236,91,88,.30);

  /* ---- Type ---- */
  --font-sans:"Public Sans",system-ui,-apple-system,Segoe UI,sans-serif;
  --font-mono:"Roboto",ui-monospace,SFMono-Regular,Menlo,monospace;

  --fs-display:28px; --fs-h1:21px; --fs-h2:17px; --fs-h3:14px;
  --fs-body:14px;    --fs-sm:13px; --fs-xs:12px; --fs-micro:11px;
  --fs-kpi:24px;     --fs-num:13px;

  /* ---- Radius (base 8) ---- */
  --r-xs:4px; --r-sm:6px; --r-md:8px; --r-lg:10px; --r-xl:14px; --r-pill:999px;

  /* ---- Spacing (4px grid) ---- */
  --s-1:2px; --s-2:4px; --s-3:6px; --s-4:8px; --s-5:12px; --s-6:16px;
  --s-7:20px; --s-8:24px; --s-9:32px; --s-10:40px; --s-11:48px; --s-12:64px;

  /* ---- Elevation: flat surfaces; only overlays float ---- */
  --shadow-overlay:0 24px 50px -18px rgba(0,0,0,.72);
  --filter-accent-glow:drop-shadow(0 0 14px rgba(194,245,14,.5));
  --filter-accent-glow-soft:drop-shadow(0 0 10px rgba(194,245,14,.2));
  --ring-focus:0 0 0 2px var(--bg-0), 0 0 0 4px var(--accent-line);

  /* ---- Floating list modal primitives ---- */
  --fl-modal-overlay-bg:rgba(0,0,0,.55);
  --fl-modal-card-bg:#0f0f0f;
  --fl-modal-card-border:rgba(255,255,255,.12);
  --fl-modal-text-muted:rgba(255,255,255,.66);
  --fl-modal-label:rgba(255,255,255,.72);
  --fl-modal-control-bg:rgba(255,255,255,.04);
  --fl-modal-control-border:rgba(255,255,255,.14);
  --fl-modal-control-text:#fff;
  --fl-modal-button-border:rgba(255,255,255,.16);
  --fl-modal-button-hover-bg:rgba(255,255,255,.09);
  --fl-modal-accent-border:rgba(194,245,14,.55);
  --fl-modal-accent-border-hover:rgba(194,245,14,.35);
  --fl-modal-focus-ring:0 0 0 2px rgba(194,245,14,.12);
  --fl-modal-primary-bg:rgba(194,245,14,.16);
  --fl-modal-primary-hover-bg:rgba(194,245,14,.2);
  --fl-modal-primary-text:#e7ff9b;

  /* ---- Layout ---- */
  --sidebar-w:248px;
  --sidebar-w-collapsed:64px;
  --topbar-h:60px;
  --side-user-area-h:70px;
  --row-h:46px;          /* balanced density */
  --row-h-compact:38px;
  --maxw:1320px;
}

/* Theme palettes: temporary light/dark runtime overrides */
:root[data-theme="dark"] {
  --bg-0: #0a0d10;
  --bg-1: #0d1012;
  --bg-2: #14181c;
  --bg-3: #12161a;
  --bg-elev: #14181c;
  --bg-sidebar: #07090c;
  --border-subtle: #1b2127;
  --border: #282f36;
  --border-strong: #333b43;
  --scrim-bg: rgba(10,13,15,.5);
  --scrim-bg-strong: rgba(10,13,15,.6);
  --sheet-scrim-bg: rgba(10,13,15,.62);
  --mobile-sheet-scrim-bg: rgba(10,13,15,.6);
  --tool-sim-scrim-bg: rgba(6,8,10,.68);
  --trend-modal-backdrop-bg: rgba(6,8,10,.66);
  --overlay-loader-bg: rgba(16,20,24,.76);
  --scrollbar-thumb: #3a444d;
  --scrollbar-thumb-hover: #48555f;
  --skeleton-highlight: #262d34;
  --text-hi: #f1f4f6;
  --text: #bcc5cc;
  --text-mid: #909aa2;
  --text-lo: #6c757d;
  --text-dim: #4d555c;
  --accent: #c2f50e;
  --accent-text: #c2f50e;
  --accent-hi: #d4ff45;
  --accent-press: #a9da00;
  --accent-soft: rgba(194,245,14,.13);
  --accent-faint: rgba(194,245,14,.05);
  --accent-line: rgba(194,245,14,.32);
  --on-accent: #0a0c0c;
  --up: #2ecf8c;
  --up-soft: rgba(46,207,140,.13);
  --up-line: rgba(46,207,140,.32);
  --down: #ec5b58;
  --down-soft: rgba(236,91,88,.13);
  --down-line: rgba(236,91,88,.32);
  --warn: #f2b13c;
  --warn-soft: rgba(242,177,60,.13);
  --warn-line: rgba(242,177,60,.32);
  --info: #6fa8c9;
  --info-soft: rgba(111,168,201,.12);
  --info-line: rgba(111,168,201,.30);
  --heat-pos: rgba(46,207,140,.18);
  --heat-pos-2: rgba(46,207,140,.34);
  --heat-neg: rgba(236,91,88,.16);
  --heat-neg-2: rgba(236,91,88,.30);
  --shadow-overlay: 0 24px 50px -18px rgba(0,0,0,.66);
  --filter-accent-glow: drop-shadow(0 0 14px rgba(194,245,14,.5));
  --fl-modal-overlay-bg: rgba(6,8,10,.55);
  --fl-modal-card-bg: #1a1f24;
  --fl-modal-card-border: rgba(255,255,255,.12);
  --fl-modal-text-muted: rgba(255,255,255,.66);
  --fl-modal-label: rgba(255,255,255,.72);
  --fl-modal-control-bg: rgba(255,255,255,.04);
  --fl-modal-control-border: rgba(255,255,255,.14);
  --fl-modal-control-text: #fff;
  --fl-modal-button-border: rgba(255,255,255,.16);
  --fl-modal-button-hover-bg: rgba(255,255,255,.09);
  --fl-modal-accent-border: rgba(194,245,14,.55);
  --fl-modal-accent-border-hover: rgba(194,245,14,.35);
  --fl-modal-focus-ring: 0 0 0 2px rgba(194,245,14,.12);
  --fl-modal-primary-bg: rgba(194,245,14,.16);
  --fl-modal-primary-hover-bg: rgba(194,245,14,.2);
  --fl-modal-primary-text: #e7ff9b;
}

:root[data-theme="light"] {
  --bg-0: #f7f8f7;
  --bg-1: #ffffff;
  --bg-2: #e3e5e4;
  --bg-3: #eceeed;
  --bg-elev: #ffffff;
  --bg-sidebar: #f2f4f3;
  --border-subtle: #e7eae9;
  --border: #d4dad7;
  --border-strong: #b4bdb9;
  --scrim-bg: rgba(40,46,44,.42);
  --scrim-bg-strong: rgba(40,46,44,.52);
  --sheet-scrim-bg: rgba(40,46,44,.55);
  --mobile-sheet-scrim-bg: rgba(40,46,44,.52);
  --tool-sim-scrim-bg: rgba(20,24,22,.55);
  --trend-modal-backdrop-bg: rgba(20,24,22,.5);
  --overlay-loader-bg: rgba(247,248,247,.78);
  --scrollbar-thumb: #c2cac6;
  --scrollbar-thumb-hover: #a8b2ad;
  --skeleton-highlight: #eef1ef;
  --text-hi: #10130f;
  --text: #33403b;
  --text-mid: #5a655f;
  --text-lo: #828d87;
  --text-dim: #a4aea9;
  --accent: #c2f50e;
  --accent-text: #0a0c0c;
  --accent-hi: #d4ff45;
  --accent-press: #a9da00;
  --accent-soft: rgba(85,107,0,.12);
  --accent-faint: rgba(85,107,0,.06);
  --accent-line: rgba(85,107,0,.8);
  --on-accent: #0a0c0c;
  --up: #15936a;
  --up-soft: rgba(21,147,106,.14);
  --up-line: rgba(21,147,106,.4);
  --down: #cf2f2c;
  --down-soft: rgba(207,47,44,.14);
  --down-line: rgba(207,47,44,.4);
  --warn: #b9791a;
  --warn-soft: rgba(185,121,26,.14);
  --warn-line: rgba(185,121,26,.4);
  --info: #2f6f96;
  --info-soft: rgba(47,111,150,.12);
  --info-line: rgba(47,111,150,.4);
  --heat-pos: rgba(21,147,106,.24);
  --heat-pos-2: rgba(21,147,106,.4);
  --heat-neg: rgba(207,47,44,.22);
  --heat-neg-2: rgba(207,47,44,.36);
  --shadow-overlay: 0 24px 50px -18px rgba(40,46,44,.22);
  --filter-accent-glow: drop-shadow(0 0 12px rgba(194,245,14,.4));
  --fl-modal-overlay-bg: rgba(20,24,22,.45);
  --fl-modal-card-bg: #ffffff;
  --fl-modal-card-border: rgba(20,24,22,.14);
  --fl-modal-text-muted: rgba(16,19,15,.62);
  --fl-modal-label: rgba(16,19,15,.78);
  --fl-modal-control-bg: rgba(16,19,15,.04);
  --fl-modal-control-border: rgba(16,19,15,.16);
  --fl-modal-control-text: #10130f;
  --fl-modal-button-border: rgba(16,19,15,.18);
  --fl-modal-button-hover-bg: rgba(16,19,15,.07);
  --fl-modal-accent-border: rgba(85,107,0,.6);
  --fl-modal-accent-border-hover: rgba(85,107,0,.45);
  --fl-modal-focus-ring: 0 0 0 2px rgba(85,107,0,.2);
  --fl-modal-primary-bg: rgba(85,107,0,.14);
  --fl-modal-primary-hover-bg: rgba(85,107,0,.2);
  --fl-modal-primary-text: #556b00;
}
