/* ==========================================================================
   UniTicket Design Token'ları
   Tüm renk, boşluk, tipografi, gölge ve geçiş değerleri buradan yönetilir.
   Diğer CSS dosyaları doğrudan renk/değer yazmak yerine bu değişkenleri kullanır.
   ========================================================================== */

:root {
    /* ---- Marka / anlamsal renkler (beyaz zemin üzerinde WCAG AA kontrastlı) ---- */
    --primary: #1d4ed8;
    --primary-hover: #1e40af;
    --primary-active: #1e3a8a;
    --primary-subtle: #eff4ff;
    --primary-border: #bfd0fb;
    --primary-rgb: 29, 78, 216;

    --secondary: #475569;
    --secondary-hover: #334155;
    --secondary-subtle: #f1f5f9;
    --secondary-rgb: 71, 85, 105;

    --success: #15803d;
    --success-hover: #166534;
    --success-subtle: #ecfdf3;
    --success-border: #b7ebc9;
    --success-rgb: 21, 128, 61;

    --warning: #b45309;
    --warning-hover: #92400e;
    --warning-fill: #f59e0b;
    --warning-fill-hover: #d97706;
    --warning-subtle: #fffbeb;
    --warning-border: #fde2a7;
    --warning-rgb: 180, 83, 9;

    --danger: #b91c1c;
    --danger-hover: #991b1b;
    --danger-subtle: #fef2f2;
    --danger-border: #fbcaca;
    --danger-rgb: 185, 28, 28;

    --info: #0369a1;
    --info-hover: #075985;
    --info-subtle: #f0f9ff;
    --info-border: #b9e3f8;
    --info-rgb: 3, 105, 161;

    --dark: #1e293b;
    --dark-hover: #0f172a;
    --dark-rgb: 30, 41, 59;

    /* ---- Yüzeyler ---- */
    --background: #f6f8fa;
    --surface: #ffffff;
    --surface-muted: #f8fafc;
    --surface-hover: #f1f5f9;
    --border: #e3e8ef;
    --border-strong: #cbd5e1;
    --border-control: #848fa0;      /* form alanı sınırı: WCAG 1.4.11 için >= 3:1 */
    --border-control-hover: #64748b;

    /* ---- Metin ---- */
    --text-primary: #0f172a;
    --text-secondary: #475569;
    --text-muted: #5f6b7e;          /* tüm zeminlerde >= 4.9:1 */
    --text-disabled: #94a3b8;
    --text-on-primary: #ffffff;

    /* ---- Odak halkası ---- */
    --focus-ring: 0 0 0 3px rgba(var(--primary-rgb), .28);
    --focus-ring-danger: 0 0 0 3px rgba(var(--danger-rgb), .22);

    /* ---- Boşluk ölçeği (4px tabanlı) ---- */
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 24px;
    --space-6: 32px;
    --space-7: 48px;
    --space-8: 64px;

    /* ---- Köşe yarıçapı ---- */
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-pill: 999px;

    /* ---- Gölgeler (bilinçli olarak çok hafif) ---- */
    --shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);
    --shadow-md: 0 4px 12px rgba(15, 23, 42, .08), 0 2px 4px rgba(15, 23, 42, .04);
    --shadow-lg: 0 12px 32px rgba(15, 23, 42, .12), 0 4px 8px rgba(15, 23, 42, .04);

    /* ---- Tipografi ---- */
    --font-sans: "Segoe UI Variable Text", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, "Cascadia Mono", Consolas, "Liberation Mono", monospace;

    --text-xs: .75rem;      /* 12px - ikincil metin */
    --text-sm: .8125rem;    /* 13px - tablo başlığı, yardımcı metin */
    --text-base: .9375rem;  /* 15px - gövde metni */
    --text-md: 1rem;        /* 16px - kart başlığı */
    --text-lg: 1.125rem;    /* 18px */
    --text-xl: 1.25rem;     /* 20px - bölüm başlığı */
    --text-2xl: 1.5rem;     /* 24px */
    --text-3xl: 1.875rem;   /* 30px - sayfa başlığı */

    --weight-regular: 400;
    --weight-medium: 500;
    --weight-semibold: 600;

    --leading-tight: 1.25;
    --leading-normal: 1.5;

    /* ---- Kontrol boyutları ---- */
    --control-height: 40px;
    --control-height-sm: 32px;
    --control-height-lg: 48px;

    /* ---- Yerleşim ---- */
    --container-max: 1440px;
    --container-narrow: 720px;
    --header-height: 64px;
    --sidebar-width: 256px;
    --sidebar-width-collapsed: 72px;

    /* ---- Geçişler ---- */
    --duration-fast: 150ms;
    --duration-base: 200ms;
    --ease-standard: cubic-bezier(.2, 0, 0, 1);
}

@media (prefers-reduced-motion: reduce) {
    :root {
        --duration-fast: 0ms;
        --duration-base: 0ms;
    }
}
