/* Tasarım belirteçleri. Ekranlarda sabit renk kodu kullanılmaz; yalnızca bu değişkenler kullanılır. */
@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-400.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-400.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-500.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-500.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-600.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-600.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-500.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-ext-500.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

/* Palet "Evergreen Volt": mürekkep yeşili kabuk, zümrüt birincil renk, volt lime vurgu, sıcak taş zemin.
   Sektördeki mavi/mor ağırlıklı araçlardan bilinçli olarak ayrışır. Metin/zemin çiftlerinin tamamı en az 4,5:1 kontrast sağlar. */
:root {
  --font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;

  --color-bg: #F4F4EF;
  --color-surface: #FFFFFF;
  --color-surface-sunken: #ECECE5;
  --color-border: #E3E3DA;
  --color-border-strong: #C9CABD;
  --color-divider: #EFEFE8;
  --color-text: #111A15;
  --color-text-muted: #59625C;
  --color-text-subtle: #434C46;

  --color-primary: #0E6E52;
  --color-primary-hover: #0A5640;
  --color-primary-tint: #E2F2E9;
  --color-on-primary: #FFFFFF;

  /* Marka vurgusu: logo tabanı, etkin menü işareti, giriş sahnesi. Metin rengi olarak açık zeminde kullanılmaz. */
  --color-accent: #C6F432;
  --color-on-accent: #0B1712;
  --color-ink: #0B1712;

  --color-nav-bg: #0B1712;
  --color-nav-text: #A7B8AE;
  --color-nav-heading: #7C8F85;
  --color-nav-active-bg: #17271F;
  --color-nav-active-text: #FFFFFF;
  --color-nav-indicator: var(--color-accent);

  /* Durum tonları: zemin / metin çiftleri. Her zaman bir etiketle birlikte kullanılır. */
  --tone-neutral-bg: #EFEFE8;  --tone-neutral-fg: #4A524C;
  --tone-info-bg: #E0F0F4;     --tone-info-fg: #0F5A6E;
  --tone-warning-bg: #FBEFD6;  --tone-warning-fg: #86500A;
  --tone-success-bg: #E5F3DC;  --tone-success-fg: #2F6A12;
  --tone-danger-bg: #FBE6E1;   --tone-danger-fg: #A3291B;

  --color-gantt-bar: #0E6E52;
  --color-gantt-critical: #D9631E;
  --color-gantt-baseline: #8C978F;

  --radius-card: 14px;
  --radius-control: 10px;
  --radius-pill: 999px;
  --control-height: 44px;
  --control-height-sm: 34px;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px; --space-6: 24px; --space-8: 32px;

  --shadow-xs: 0 1px 2px rgba(17, 26, 21, .05);
  --shadow-sm: 0 1px 2px rgba(17, 26, 21, .05), 0 2px 8px -2px rgba(17, 26, 21, .06);
  --shadow-md: 0 4px 12px -2px rgba(17, 26, 21, .08), 0 2px 4px -2px rgba(17, 26, 21, .05);
  --shadow-lg: 0 24px 64px -12px rgba(11, 23, 18, .32), 0 8px 20px -8px rgba(11, 23, 18, .18);
  --ring: 0 0 0 3px rgba(14, 110, 82, .22);
  --backdrop: rgba(11, 23, 18, .5);

  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-spring: cubic-bezier(.34, 1.56, .64, 1);
  --dur-fast: 120ms;
  --dur: 200ms;
}

/* Backoffice kabuğu, şirket arayüzünden ilk bakışta ayırt edilsin diye sıcak kömür menü ve kor turuncusu vurgu kullanır. */
.theme-backoffice {
  --color-nav-bg: #17130F;
  --color-nav-text: #C9BFB2;
  --color-nav-heading: #9A8E80;
  --color-nav-active-bg: #2A231C;
  --color-nav-indicator: #F08A3C;
  --color-accent: #F08A3C;
  --color-ink: #17130F;
}

/* Koyu tema. Renkler ayrıca seçildi; birincil renk koyu zeminde volt lime olur. */
:root[data-theme="dark"] {
  color-scheme: dark;
  --color-bg: #0A0F0C;
  --color-surface: #121915;
  --color-surface-sunken: #18211C;
  --color-border: #232E28;
  --color-border-strong: #34413A;
  --color-divider: #1C2621;
  --color-text: #E8EEE9;
  --color-text-muted: #9FAEA5;
  --color-text-subtle: #B6C2BA;

  --color-primary: #C6F432;
  --color-primary-hover: #D6FA6A;
  --color-primary-tint: #1E2A12;
  --color-on-primary: #0B1712;

  --color-nav-bg: #070B09;
  --color-nav-active-bg: #15201A;

  --tone-neutral-bg: #232C27;  --tone-neutral-fg: #C4CEC7;
  --tone-info-bg: #10313A;     --tone-info-fg: #8FD3E4;
  --tone-warning-bg: #3A2A0C;  --tone-warning-fg: #F0C46A;
  --tone-success-bg: #1C3312;  --tone-success-fg: #A6DE7E;
  --tone-danger-bg: #3F1A15;   --tone-danger-fg: #FF9C8C;

  --color-gantt-bar: #9BD62A;
  --color-gantt-baseline: #7C8A82;

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px -2px rgba(0, 0, 0, .3);
  --shadow-md: 0 4px 12px -2px rgba(0, 0, 0, .5);
  --shadow-lg: 0 24px 64px -12px rgba(0, 0, 0, .7);
  --ring: 0 0 0 3px rgba(198, 244, 50, .25);
  --backdrop: rgba(0, 0, 0, .6);
}
