/* Demir Konut v12.7.0 — Tasarım 3.0 · katman 1/4: tasarım değişkenleri ve tema
   Açık/koyu tema renkleri, yazı ölçeği, boşluk, yarıçap, gölge ve yerleşim değişkenleri.
   index.html'de v126-license.css'den sonra, diğer v127 katmanlarından önce yüklenir. Kök düzeyindeki değişkenleri yeniden
   tanımlar; önceki katmanlar bu değişkenleri okuduğu için tüm bileşenler aynı anda güncellenir.
   İlke: vurgu rengi metinde koyu altın (beyaz üstünde AA), dolguda parlak altın; durum renkleri hem metin hem dolgu olarak
   okunur; koyu temada yükseklik gölgeyle değil ince kenarla anlatılır. */

:root {
  /* ---- marka */
  --navy: #1B2A41; --navy-2: #22344F; --navy-3: #2F4566;
  --gold: #C8963E; --gold-2: #E2B766; --gold-deep: #9C7127;

  /* ---- yüzeyler (açık tema) */
  --bg: #F3F5F8;
  --surface: #FFFFFF; --surface-2: #F1F4F8; --surface-3: #E6EBF2;
  --line: #DEE4EC; --line-2: #EAEEF3; --line-strong: #C6D0DC;
  --ink: #121A26; --ink-2: #3A4656; --slate: #5A6879; --muted: #71808F;
  --card: var(--surface); --soft: color-mix(in srgb, var(--navy) 5%, transparent); --input-bg: var(--surface);

  /* ---- vurgu */
  --c-accent: var(--gold-deep); --c-accent-2: #B98A33;
  --accent: var(--c-accent); --accent-2: var(--c-accent-2);
  --accent-fill: var(--gold); --accent-fill-2: var(--gold-2); --accent-ink: #1B1305;
  --accent-soft: rgba(200, 150, 62, .13); --accent-glow: rgba(200, 150, 62, .26);

  /* ---- durum renkleri */
  --c-green: #15803D; --c-red: #C2322E; --c-amber: #B45309; --c-teal: #0E7490; --c-steel: #4B5A6E; --c-blue: #2456B3;
  --green: var(--c-green); --green-soft: rgba(21, 128, 61, .12);
  --red: var(--c-red); --red-soft: rgba(194, 50, 46, .10);
  --amber: var(--c-amber); --amber-soft: rgba(180, 83, 9, .13);
  --teal: var(--c-teal); --teal-soft: rgba(14, 116, 144, .12);
  --steel: var(--c-steel); --steel-soft: rgba(75, 90, 110, .12);
  --blue: var(--c-blue); --blue-soft: rgba(36, 86, 179, .12);
  --c-gelir: var(--green); --c-gider: var(--red); --c-odeme: var(--amber); --c-tahsilat: var(--teal); --c-virman: var(--steel);

  /* ---- birincil düğme: açık temada lacivert, koyu temada altın */
  --btn-primary-bg: linear-gradient(135deg, #24375A 0%, #16243A 100%); --btn-primary-ink: #FFFFFF;
  --btn-primary-shadow: 0 4px 14px rgba(22, 36, 58, .22);
  --focus-ring: #2456B3; --ux-focus: var(--focus-ring);

  /* ---- yazı */
  --font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --fs-xs: 11.5px; --fs-sm: 12.5px; --fs-md: 13.5px; --fs-body: 15px; --fs-lg: 16.5px; --fs-xl: 19px;
  --fs-2xl: clamp(22px, 1.25rem + .7vw, 28px); --fs-3xl: clamp(26px, 1.4rem + 1.1vw, 34px);

  /* ---- boşluk, yarıçap, gölge, süre */
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 20px; --sp-6: 24px; --sp-7: 32px; --sp-8: 48px;
  --radius-xs: 8px; --radius-sm: 10px; --radius-md: 14px; --radius-lg: 18px; --radius-xl: 24px;
  --radius: var(--radius-lg);
  --shadow-1: 0 1px 2px rgba(18, 26, 38, .05), 0 1px 3px rgba(18, 26, 38, .04);
  --shadow-2: 0 6px 18px -4px rgba(18, 26, 38, .10), 0 2px 6px -2px rgba(18, 26, 38, .05);
  --shadow-3: 0 24px 48px -12px rgba(18, 26, 38, .22), 0 8px 16px -8px rgba(18, 26, 38, .08);
  --shadow-glow: 0 0 0 1px var(--accent-soft), 0 0 20px -4px var(--accent-glow);
  --dur-1: .15s; --dur-2: .24s; --ease: cubic-bezier(.2, .8, .2, 1); --ease-out: cubic-bezier(.16, 1, .3, 1);

  /* ---- yerleşim: kesme noktalarına göre aşağıda yeniden yazılır */
  --gutter: 14px; --content-max: 100%; --sidebar-w: 256px;
  --topbar-h: 64px; --tabbar-h: 64px; --dock-space: 72px;
  --sticky-top: calc(var(--topbar-h) + var(--safe-t));
  --tb-fab-bg: var(--navy-2);
  color-scheme: light;
}

[data-theme="dark"] {
  --navy: #0F1A2B; --navy-2: #16243A; --navy-3: #22344F;
  --bg: #0B1119;
  --surface: #131C28; --surface-2: #1A2535; --surface-3: #233044;
  --line: rgba(255, 255, 255, .09); --line-2: rgba(255, 255, 255, .06); --line-strong: rgba(255, 255, 255, .16);
  --ink: #EEF2F7; --ink-2: #C7D0DB; --slate: #9AA8B9; --muted: #8291A4;
  --soft: rgba(255, 255, 255, .04);
  --c-accent: #E5B86A; --c-accent-2: #F0CB85; --accent-fill: #E5B86A; --accent-fill-2: #F3D68F;
  --accent-soft: rgba(229, 184, 106, .16); --accent-glow: rgba(229, 184, 106, .32);
  --c-green: #4ADE80; --green-soft: rgba(74, 222, 128, .14);
  --c-red: #F87171; --red-soft: rgba(248, 113, 113, .15);
  --c-amber: #FBBF24; --amber-soft: rgba(251, 191, 36, .15);
  --c-teal: #22D3EE; --teal-soft: rgba(34, 211, 238, .14);
  --c-steel: #A3B1C2; --steel-soft: rgba(163, 177, 194, .14);
  --c-blue: #7FB0F5; --blue-soft: rgba(127, 176, 245, .16);
  --btn-primary-bg: linear-gradient(135deg, #E9BE72 0%, #CFA050 100%); --btn-primary-ink: #1B1305;
  --btn-primary-shadow: 0 6px 18px rgba(229, 184, 106, .22);
  --focus-ring: #93C5FD;
  --shadow-1: 0 1px 2px rgba(0, 0, 0, .35), 0 0 0 1px rgba(255, 255, 255, .03);
  --shadow-2: 0 8px 22px -6px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .04);
  --shadow-3: 0 28px 56px -14px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .06);
  --tb-fab-bg: var(--accent-fill);
  color-scheme: dark;
}

/* Sayfa düzeyindeki eski renk sabitlerini (v12.4.10/11: #805d25, #167348 …) kök değişkenlere bağlar; iki temada aynı dil. */
.workspace-page, :is(.model-page, .assistant-page, .dashboard-page) {
  --accent: var(--c-accent); --accent-2: var(--c-accent-2); --green: var(--c-green); --red: var(--c-red); --amber: var(--c-amber); --teal: var(--c-teal);
  --muted: var(--slate);
}
[data-theme="dark"] .workspace-page, [data-theme="dark"] :is(.model-page, .assistant-page, .dashboard-page) {
  --accent: var(--c-accent); --accent-2: var(--c-accent-2); --green: var(--c-green); --red: var(--c-red); --amber: var(--c-amber); --teal: var(--c-teal);
}

/* ---- kesme noktaları: boşluk, içerik genişliği, kenar menü ve çubuk yükseklikleri */
@media (min-width: 480px) { :root { --gutter: 16px; } }
@media (min-width: 768px) { :root { --gutter: 20px; } }
@media (min-width: 1024px) { :root { --gutter: 24px; --sidebar-w: 256px; --dock-space: 0px; } html[data-sb="rail"] { --sidebar-w: 92px; } }
@media (min-width: 1280px) { :root { --content-max: 1240px; } }
@media (min-width: 1600px) { :root { --gutter: 32px; --sidebar-w: 272px; --content-max: 1480px; } html[data-sb="rail"] { --sidebar-w: 92px; } }
@media (min-width: 1920px) { :root { --content-max: 1680px; --fs-body: 16px; --fs-md: 14px; --fs-sm: 13px; --fs-lg: 17.5px; --fs-xl: 20px; } }
@media (min-width: 2560px) { :root { --content-max: 1920px; --gutter: 40px; --fs-body: 17px; --fs-md: 15px; --fs-sm: 13.5px; --fs-xs: 12.5px; --fs-lg: 18.5px; --fs-xl: 22px; } }
@media (max-width: 699px) { :root { --topbar-h: 60px; } }
@media (orientation: landscape) and (max-height: 560px) { :root { --topbar-h: 52px; --tabbar-h: 52px; --gutter: 12px; --dock-space: 56px; } }

/* ---- temel */
body { font-family: var(--font); font-size: var(--fs-body); line-height: 1.5; }
html, body, .sidebar, .topbar, .card, .kpi, .tabbar, .sheet { transition: background-color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease), color var(--dur-2) var(--ease); }
::selection { background: color-mix(in srgb, var(--accent-fill) 32%, transparent); color: inherit; }
* { scrollbar-width: thin; scrollbar-color: var(--line-strong) transparent; }
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { background: var(--line-strong); border-radius: 99px; border: 3px solid transparent; background-clip: padding-box; }
*::-webkit-scrollbar-thumb:hover { background-color: var(--muted); }
*::-webkit-scrollbar-track { background: transparent; }
@media (pointer: coarse) { *::-webkit-scrollbar { width: 0; height: 0; } }
.muted { color: var(--muted); } .small { font-size: var(--fs-sm); } .xs { font-size: var(--fs-xs); }
.ic { width: 20px; height: 20px; } .ic.s { width: 16px; height: 16px; } .ic.l { width: 24px; height: 24px; }
h1, h2, h3, h4 { overflow-wrap: anywhere; }
img, svg, video, canvas { max-width: 100%; }
@media (prefers-contrast: more) {
  :root { --line: #AAB5C3; --line-2: #C2CBD6; --line-strong: #8A97A8; --muted: #5A6879; }
  [data-theme="dark"] { --line: rgba(255, 255, 255, .22); --line-2: rgba(255, 255, 255, .16); --line-strong: rgba(255, 255, 255, .34); --muted: #AEBBCB; }
}
@media (prefers-reduced-motion: reduce) { html, body, .sidebar, .topbar, .card, .kpi, .tabbar, .sheet { transition: none; } }
