/*
 * CBA Theme — tasarım token'ları
 *
 * Kaynak: --cba-brand / --cba-ink tema ayarından (partials/brand-tokens.tpl) gelir;
 * buradaki her şey onlardan türetilir. Ardından WStyle'ın --wstyle-* köprüsü
 * yeniden eşlenir, böylece default.css'in sürdüğü tüm Bootstrap bileşenleri
 * (client area, checkout, auth) markup'a dokunmadan CBA görünümüne geçer.
 *
 * Bu dosya default.css'ten SONRA yüklenmelidir.
 */

:root {
    /* ── marka (brand-tokens.tpl üzerine yazar; bunlar yalnızca güvenli varsayılan) ── */
    --cba-brand: #fe7e20;
    --cba-brand-rgb: 254, 126, 32;
    --cba-ink: #1d1d1b;
    --cba-ink-rgb: 29, 29, 27;

    /* Vurgu türevleri. "strong": açık zeminde metin/ikon için ≥4.5:1 kontrastlı koyu ton. */
    --cba-brand-strong: color-mix(in srgb, var(--cba-brand) 62%, #000);
    --cba-brand-soft: color-mix(in srgb, var(--cba-brand) 14%, transparent);
    --cba-on-brand: var(--cba-ink);

    /* ── vitrin (koyu) nötrleri: ink'ten türetilir ── */
    --cba-night: color-mix(in srgb, var(--cba-ink) 62%, #000);        /* sayfa zemini */
    --cba-night-2: color-mix(in srgb, var(--cba-ink) 88%, #fff 2%);   /* yükseltilmiş yüzey */
    --cba-night-3: color-mix(in srgb, var(--cba-ink) 80%, #fff 8%);   /* kart / kontrol */
    --cba-paper: #f4f1ec;                                            /* koyu zeminde ana metin */
    --cba-paper-dim: color-mix(in srgb, var(--cba-paper) 68%, var(--cba-night));
    --cba-line: color-mix(in srgb, var(--cba-paper) 12%, transparent);

    /* ── açık (client area / checkout) nötrleri ── */
    --cba-sand: #f6f4f0;
    --cba-white: #ffffff;
    --cba-stone: #e7e3dc;
    --cba-text: #2e2d2a;
    --cba-text-muted: #66645e;

    /* ── tipografi ── */
    --cba-font-display: "Archivo Expanded", "Archivo Expanded Fallback", "Arial Black", system-ui, sans-serif;
    --cba-font-body: "Manrope", "Manrope Fallback", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

    /* Akışkan ölçek: 360px → 1440px arası. Büyük başlıklar ekran genişliğini cesurca kullanır. */
    --cba-step--1: clamp(.8125rem, .79rem + .1vw, .875rem);
    --cba-step-0: clamp(1rem, .96rem + .19vw, 1.125rem);
    --cba-step-1: clamp(1.2rem, 1.11rem + .42vw, 1.5rem);
    --cba-step-2: clamp(1.44rem, 1.27rem + .77vw, 2rem);
    --cba-step-3: clamp(1.73rem, 1.44rem + 1.3vw, 2.67rem);
    --cba-step-4: clamp(1.85rem, 1.45rem + 1.8vw, 3.1rem);
    --cba-step-5: clamp(2.1rem, 1.5rem + 2.7vw, 4rem);
    --cba-step-6: clamp(2.4rem, 1.5rem + 4.2vw, 5.2rem);
    --cba-step-7: clamp(2.6rem, 1.3rem + 6.2vw, 7.2rem);
    --cba-leading-tight: .98;
    --cba-tracking-tight: -.035em;

    /* ── boşluk & ölçü ── */
    --cba-gutter: clamp(1rem, .6rem + 2vw, 2.5rem);
    --cba-section: clamp(5rem, 3rem + 9vw, 11rem);
    --cba-max: 1320px;
    --cba-radius-sm: .375rem;
    --cba-radius: .625rem;
    --cba-radius-lg: 1.25rem;
    --cba-radius-pill: 999px;

    /* ── hareket: tek easing ailesi (power3 / expo), tutarlı süreler ── */
    --cba-ease-out: cubic-bezier(.215, .61, .355, 1);      /* power3.out */
    --cba-ease-in-out: cubic-bezier(.645, .045, .355, 1);  /* power3.inOut */
    --cba-ease-expo: cubic-bezier(.16, 1, .3, 1);          /* expo.out */
    --cba-dur-1: 160ms;
    --cba-dur-2: 320ms;
    --cba-dur-3: 640ms;
    --cba-dur-4: 1100ms;

    /* ── WStyle köprüsü: açık tema (client area / checkout varsayılanı) ── */
    --wstyle-font-family: var(--cba-font-body);
    --wstyle-font-size-base: .9375rem;
    --wstyle-body-color: var(--cba-text);
    --wstyle-heading-color: var(--cba-ink);
    --wstyle-muted-color: var(--cba-text-muted);
    --wstyle-body-bg: var(--cba-sand);
    --wstyle-surface-bg: var(--cba-white);
    --wstyle-border-color: var(--cba-stone);
    --wstyle-chrome-bg: var(--cba-night);
    --wstyle-chrome-bg-deep: color-mix(in srgb, var(--cba-night) 80%, #000);
    --wstyle-chrome-color: var(--cba-paper);
    --wstyle-chrome-muted: var(--cba-paper-dim);
    --wstyle-chrome-border: var(--cba-line);
    --wstyle-radius: var(--cba-radius);
    --wstyle-primary-text: var(--cba-brand-strong);
    --wstyle-secondary-text: var(--cba-brand-strong);
    --wstyle-on-primary: var(--cba-on-brand);
    --wstyle-primary-emphasis: var(--cba-brand-strong);
    --wstyle-focus-ring: 0 0 0 .2rem rgba(var(--cba-brand-rgb), .35);
}

/* Koyu mod (kullanıcı tercihi) ve vitrin sahneleri ([data-bs-theme=dark] alt ağacı). */
[data-bs-theme=dark] {
    --wstyle-body-color: color-mix(in srgb, var(--cba-paper) 82%, var(--cba-night));
    --wstyle-heading-color: var(--cba-paper);
    --wstyle-muted-color: var(--cba-paper-dim);
    --wstyle-body-bg: var(--cba-night);
    --wstyle-surface-bg: var(--cba-night-2);
    --wstyle-border-color: color-mix(in srgb, var(--cba-paper) 13%, var(--cba-night));
    --wstyle-primary-text: var(--cba-brand);
    --wstyle-secondary-text: var(--cba-brand);
    --wstyle-primary-emphasis: var(--cba-brand);
}

/* Başlıklar: Archivo Expanded (geniş, kendinden emin grotesk; OFL). Gövde Manrope kalır. */
h1, h2, h3, h4, .h1, .h2, .h3, .h4, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
    font-family: var(--cba-font-display);
    font-weight: 700;
    letter-spacing: -.03em;
}

/* Birincil düğme: turuncu zemin + koyu metin (beyaz metin 4.5:1'i geçmez). */
.btn-primary, .btn-secondary {
    --bs-btn-color: var(--cba-on-brand);
    --bs-btn-hover-color: var(--cba-on-brand);
    --bs-btn-active-color: var(--cba-on-brand);
    --bs-btn-disabled-color: var(--cba-on-brand);
    font-weight: 700;
}

.cookie-btn-solid { color: var(--cba-on-brand) !important; }

a { text-underline-offset: .18em; }

::selection { background: var(--cba-brand); color: var(--cba-on-brand); }

:focus-visible { outline: 2px solid var(--cba-brand); outline-offset: 2px; }

/* Global reduced-motion bloğu: hiçbir şey sıfır opaklıkta kalmaz. */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}
