/*
 * Design tokens — "Sovereign Executive" (owner decision 2026-10-22), docs/spec/11-tasarim-dili.md.
 * Light corporate theme; reference kit: docs/design/marka-kiti/DESIGN.md.
 * The ONLY place colour values and font files are declared; everything else reads var(--…).
 * Fonts are self-hosted (OFL 1.1, licences next to the files in ../fonts/<family>/OFL.txt);
 * the browser never calls Google Fonts.
 */

/* ---- fonts: Latin + Latin Extended subsets (Turkish ğ ş İ ı ç ö ü), variable weight ---- */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../fonts/SpaceGrotesk/SpaceGrotesk-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, 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: "Space Grotesk";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../fonts/SpaceGrotesk/SpaceGrotesk-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/Inter/Inter-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, 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: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/Inter/Inter-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("../fonts/JetBrainsMono/JetBrainsMono-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("../fonts/JetBrainsMono/JetBrainsMono-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;

  /* ---- surfaces (11 §2): canvas → white working cards → slate sub-surface ---- */
  --bg: #F8FAFC;
  --surface-1: #FFFFFF;
  --surface-2: #F1F5F9;
  --surface-3: #E2E8F0;
  --line: #E2E8F0;
  --line-strong: #CBD5E1;
  /* form controls: the boundary keeps 3:1 against white and the canvas (WCAG 1.4.11) */
  --control-line: #7F8CA0;

  /* ---- text: every step keeps 4.5:1 on --bg, --surface-1, --surface-2 (DesignTokensTest) ---- */
  --text: #0A1629;
  --text-2: #1E293B;
  --text-3: #475569;
  --text-4: #526075;
  --placeholder: #64748B;

  /* ---- primary: Sovereign Cobalt = primary action, link, focus, strong match ---- */
  --accent: #0D52D6;
  --accent-hi: #0A42AC;
  --accent-active: #08358B;
  --accent-ink: #FFFFFF;
  --accent-surface: #EFF6FF;
  --accent-line: #B9CCF2;
  --focus-halo: #0D52D626;

  /* ---- secondary: Deep Teal = verified / confirmed / done ---- */
  --teal: #0E7686;
  --teal-surface: #ECFDF5;
  --teal-line: #A7D8DF;

  /* ---- tertiary: Warm Amber = anonymous need owner / new opportunity / attention.
     --signal is graphic only (dots, borders, lines: ≥ 3:1 on white); text uses --signal-hi ---- */
  --signal: #D97706;
  --signal-hi: #A14A07;
  --signal-surface: #FFFBEB;
  --signal-line: #F5C98B;
  --signal-ink: #92400E;

  /* ---- error / destructive (separate from amber) ---- */
  --danger: #C81E1E;
  --danger-hi: #B91C1C;
  --danger-ink: #FFFFFF;
  --danger-surface: #FEF2F2;
  --danger-line: #FCA5A5;

  /* ---- inks on a visitor's own brand colour (E19, BrandPalette::inkFor) ---- */
  --ink-on-dark: #FFFFFF;
  --ink-on-light: #0A1629;

  /* ---- brand mark (Meridian Junction, 11 §6) ---- */
  --mark-primary: #003CA7;
  --mark-secondary: #006877;
  --mark-plate: #003CA714;
  --mark-dot: #10B981;

  /* ---- e-mail preview paper ---- */
  --mail-paper: #FFFFFF;
  /* ---- e-mail palette (11 §2: light 600px card, cobalt main button, small footer). E-mail clients
     do not read CSS variables, so Invites\MailPalette (and the worker's intro_mail.mail_palette)
     inline these values at render time; the templates never carry a literal colour. ---- */
  --mail-bg: #F1F5F9;
  --mail-line: #E2E8F0;
  --mail-text: #1E293B;
  --mail-ink: #0A1629;
  --mail-muted: #475569;
  --mail-hook: #FFFBEB;
  --mail-button-line: #CBD5E1;
  --mail-sub: #F8FAFC;

  /* ---- type (11 §3) ---- */
  --font-display: "Space Grotesk", "Segoe UI", system-ui, sans-serif;
  --font-body: "Inter", "Segoe UI", system-ui, sans-serif;
  --font-label: "Space Grotesk", "Segoe UI", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;

  /* ---- shape (11 §4): micro radius for controls, ≤ 8px for modules ---- */
  --radius-pill: 999px;
  --radius-card: 8px;
  --radius-inner: 6px;
  --radius-control: 4px;
  --radius-badge: 4px;
  --tap: 44px;
  --control-h: 36px;

  /* ---- elevation: only floating overlays get a shadow; everything else is a hairline ---- */
  --shadow-overlay: 0 4px 12px -2px #0A16290F, 0 1px 3px -1px #0A16290A;

  /* ---- spacing (4px base) ---- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;

  /* ---- motion (11 §5): state changes ≤ 300 ms; settle / trace for the geometric layer ---- */
  --ease-out: cubic-bezier(.2, .7, .2, 1);
  --dur-fast: 150ms;
  --dur: 300ms;
  --dur-settle: 480ms;
  --dur-trace: 800ms;
  --ease-settle: cubic-bezier(.22, 1, .36, 1);
  --ease-in-out: cubic-bezier(.65, 0, .35, 1);

  /* ---- Tur 3 agent layer (11 §2, T3-D1-C): "aydınlık kontrol odası".
     --agent = AI / agent activity only (never the primary button, a human action or a band);
     --circuit = graphics only (wire, packet, trace; never text: 3.68:1). ---- */
  --agent: #5B3FD0;
  --agent-hi: #4A2FB8;
  --agent-surface: #F3F0FF;
  --agent-line: #CFC6F7;
  --circuit: #0891B2;
  --tint-cobalt: #EEF4FF;
  --tint-teal: #EAF6F8;
  --grid-line: #DCE5F2;
  --grid-dot: #B9CCF2;
  --eye: #9BE7F2;
  --accent-halo: #0D52D629;

  /* ---- the only four gradients (11 §1, P2): components write var(--grad-…), never a literal gradient ---- */
  --grad-sky: linear-gradient(180deg, var(--tint-cobalt), var(--bg));
  --grad-wire: linear-gradient(90deg, var(--accent), var(--teal));
  --grad-agent: linear-gradient(135deg, var(--accent), var(--agent));
  --grad-fade: linear-gradient(90deg, transparent, var(--accent), transparent);
}

/* touch screens keep 44px targets (11 §4) while desktop controls stay at the kit's 36px */
@media (pointer: coarse) {
  :root { --control-h: 44px; }
}
