﻿/* ============================================================
   AH GECELER — Tipografi Sistemi (Kabarett Std sürümü)
   Logo fontu: Kabarett Std Standard (D) — dekoratif display serif

   Kullanım hiyerarşisi:
   ─ Başlıklar (h1, h2, hero, section title) → Kabarett Std
   ─ Büyük display sayılar (stat, fiyat)     → Bebas Neue
   ─ UI etiketler, badge, nav                → Space Mono
   ─ Body metin, paragraf                    → Cormorant Garamond

   NOT: Kabarett Std ticari bir fonttur, Google Fonts'ta yoktur.
   Font dosyalarını ~/assets/fonts/ klasörüne koyun:
     KabarettStd.woff2  (öncelikli — en küçük dosya)
     KabarettStd.woff
     KabarettStd.otf
   Elinizde sadece .otf/.ttf varsa transfonter.com gibi bir araçla
   woff2'ye çevirmeniz önerilir. Font yüklenemezse en yakın ücretsiz
   alternatif olan Corben (Google Fonts) devreye girer.
   ============================================================ */

/* ── Kabarett Std @font-face ─────────────────────────────── */
@font-face {
    font-family: 'Kabarett Std';
    src: url('../fonts/KabarettStd.woff2') format('woff2'), url('../fonts/KabarettStd.woff') format('woff'), url('../fonts/KabarettStd.otf') format('opentype');
    /* Tek kesimli font: tüm weight istekleri aynı dosyaya düşsün,
       tarayıcı sahte bold üretmesin */
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

/* ── CSS Değişkenleri ────────────────────────────────────── */
:root {
    --font-display: 'Kabarett Std', 'Corben', Georgia, serif;
    --font-mono: 'Space Mono', 'Courier New', monospace;
    --font-counter: 'Bebas Neue', 'Kabarett Std', sans-serif;
    --font-body: 'Cormorant Garamond', Georgia, serif;
}

/* ── Base body ───────────────────────────────────────────── */
body {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

    body:not(.admin-body) button,
    body:not(.admin-body) input,
    body:not(.admin-body) select,
    body:not(.admin-body) textarea,
    body:not(.admin-body) .btn-primary,
    body:not(.admin-body) .btn-secondary,
    body:not(.admin-body) .nav-link,
    body:not(.admin-body) .nav-user-btn,
    body:not(.admin-body) .cart-sidebar,
    body:not(.admin-body) .auth-sidebar {
        font-family: var(--font-body) !important;
    }

/* ── Başlıklar ───────────────────────────────────────────── */
/* Kabarett tek kesim: font-weight normal, italik yok.
   font-synthesis: none → tarayıcının sahte bold/italik üretmesini engeller */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
    font-weight: normal;
    font-style: normal;
    font-synthesis: none;
    line-height: 1.12;
    letter-spacing: 0.015em;
}

/* ── Hero title ──────────────────────────────────────────── */
.hero-title {
    font-family: var(--font-display) !important;
    font-weight: normal;
    font-style: normal;
    font-synthesis: none;
    /* Kabarett geniş ve gösterişli oturur; Cormorant'a göre
       bir tık küçük tutuldu */
    font-size: clamp(60px, 10vw, 118px);
    letter-spacing: 0.02em;
    line-height: 1.02;
}

    /* Eski light/bold kontrast oyunu yerine renk kontrastı:
       vurgulanan kelime logo altını (gold) olur */
    .hero-title span {
        font-style: normal;
        font-weight: normal;
        color: var(--gold);
    }

/* ── Section başlıkları ──────────────────────────────────── */
.section-title {
    font-family: var(--font-display) !important;
    font-size: clamp(34px, 4.5vw, 56px);
    font-weight: normal;
    letter-spacing: 0.02em;
}

/* ── Etkinlik adı ────────────────────────────────────────── */
.event-name {
    font-family: var(--font-display) !important;
    font-size: 21px;
    font-weight: normal;
    letter-spacing: 0.015em;
    line-height: 1.2;
}

/* ── Detail hero başlığı ─────────────────────────────────── */
.detail-hero-title {
    font-family: var(--font-display) !important;
    font-size: clamp(40px, 5.5vw, 72px);
    font-weight: normal;
    font-style: normal;
    letter-spacing: 0.02em;
    line-height: 1.05;
}

/* ── Detail section başlığı ──────────────────────────────── */
.detail-section-title {
    font-family: var(--font-display) !important;
    font-size: 34px;
    font-weight: normal;
    letter-spacing: 0.015em;
}

/* ── Admin panel başlıkları ──────────────────────────────── */
.admin-body h1,
.admin-body h2,
.admin-body h3 {
    font-family: var(--font-display);
    font-weight: normal;
}

/* ── Sidebar auth başlığı ────────────────────────────────── */
.auth-sb-title,
.auth-panel-hero h3 {
    font-family: var(--font-display) !important;
    font-style: normal;
    font-weight: normal;
}

/* ── Kartlar, paragraf metinler ──────────────────────────── */
/* Gövde metni Cormorant'ta kalıyor — Kabarett paragrafta okunmaz */
.detail-description,
.hero-subtitle,
.about-text-block p,
.cat-desc,
.sidebar-description {
    font-family: var(--font-body);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.8;
}

/* ── Bilet türü adı ──────────────────────────────────────── */
.ticket-name,
.ts-name {
    font-family: var(--font-display);
    font-size: 16px;
    font-weight: normal;
}

/* ── Hakkımızda ──────────────────────────────────────────── */
.about-text-block h2 {
    font-family: var(--font-display) !important;
    font-size: clamp(30px, 3.8vw, 46px);
    font-weight: normal;
    font-style: normal;
}

    /* Vurgu kelimesi: italik yerine gold renk */
    .about-text-block h2 em {
        font-style: normal;
        font-weight: normal;
        color: var(--gold);
    }

/* ── Program başlığı ─────────────────────────────────────── */
.program-title {
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: normal;
}

/* ── SSS ─────────────────────────────────────────────────── */
.faq-question span:first-child {
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: normal;
}

/* ── Kategori kartı adı ──────────────────────────────────── */
.cat-name {
    font-family: var(--font-display) !important;
    font-size: 21px;
    font-weight: normal;
    letter-spacing: 0.015em;
}

/* ── Profil sayfası ──────────────────────────────────────── */
.profile-name,
.edit-title,
.auth-title,
.complete-title,
.auth-ph h3 {
    font-family: var(--font-display) !important;
    font-style: normal;
    font-weight: normal;
}

/* ── Stat sayıları — Bebas Neue ──────────────────────────── */
.stat-number,
.stat-value,
.countdown-num,
.ts-price,
.cart-total-amount {
    font-family: var(--font-counter) !important;
    letter-spacing: 0.04em;
}

/* ── Footer logo ─────────────────────────────────────────── */
.footer-logo {
    font-family: var(--font-display) !important;
    font-style: normal;
    font-size: 26px;
    font-weight: normal;
    letter-spacing: 0.03em;
}

/* ── Marka yazısı (logo ile birebir aynı ruh) ────────────── */
.brand-text {
    font-family: 'Kabarett Std', 'Corben', serif;
    font-weight: normal;
    font-style: normal;
    font-synthesis: none;
    letter-spacing: 0.02em;
}

/* ── Mobil ───────────────────────────────────────────────── */
/* NOT: Bu dosya statik .css olduğu için @media tek @ ile yazıldı.
   İçeriği bir .cshtml içine gömerseniz @@media yapmanız gerekir. */
@media (max-width: 600px) {
    .hero-title {
        font-size: 56px;
    }

    .section-title {
        font-size: 32px;
    }

    .detail-hero-title {
        font-size: 36px;
    }
}
