/* ==========================================================================
   HUKUK DERGİSİ — Site tasarım sistemi (public/css/site.css)
   Bootstrap 5.3.2 üzerine kurulu. Sözleşme: docs/TASARIM_SISTEMI.md
   Yeni bileşenler "hd-" önekiyle adlandırılır. Eski (legacy) sınıflar
   sayfalar taşınana kadar dosyanın sonundaki "Legacy" bölümünde yaşar.
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. TOKENS
   -------------------------------------------------------------------------- */
:root {
    /* Renkler (kontrast oranları beyaz #fff zemin üzerinde) */
    --hd-ink: #0f172a;            /* başlıklar, 17.85:1 */
    --hd-text: #1e293b;           /* gövde metni, 14.63:1 */
    --hd-text-2: #334155;         /* ikincil metin / spot, 10.35:1 */
    --hd-muted: #475569;          /* meta, açıklama, 7.58:1 (#f1f5f9 üzerinde 6.92:1) */
    --hd-primary: #1d4ed8;        /* marka mavisi; beyaz metinle 6.70:1 */
    --hd-primary-dark: #1e3a8a;   /* hover / koyu bant; beyaz metinle 10.36:1 */
    --hd-primary-tint: #eff6ff;   /* açık mavi zemin; #1d4ed8 metin 6.16:1 */
    --hd-navy: #0b1f3f;           /* menü çubuğu; beyaz metin 16.38:1 */
    --hd-footer-bg: #0f172a;      /* alt bilgi; #cbd5e1 metin 12.02:1 */
    --hd-accent: #b91c1c;         /* editoryal kırmızı (son dakika, zorunlu alan) 6.47:1 */
    --hd-bg: #ffffff;
    --hd-surface: #f8fafc;        /* bantlar, kutular */
    --hd-surface-2: #f1f5f9;      /* hover zemin, görsel yer tutucu */
    --hd-border: #e2e8f0;         /* dekoratif ayırıcılar (bilgi taşımaz) */
    --hd-border-strong: #cbd5e1;
    --hd-input-border: #64748b;   /* form kenarlığı; 4.76:1 (>= 3:1 non-text) */
    --hd-rule: #0f172a;           /* kalın editoryal çizgi */
    --hd-focus: #1d4ed8;          /* odak halkası açık zeminde (6.70:1) */
    --hd-focus-on-dark: #fbbf24;  /* odak halkası koyu zeminde (lacivert üzerinde 9.81:1) */
    --hd-success: #067647;        /* 5.69:1 */
    --hd-danger: #b42318;         /* 6.57:1 */

    /* Koyu zemin metinleri (#0b1f3f / #0f172a üzerinde) */
    --hd-on-dark: #ffffff;
    --hd-on-dark-2: #cbd5e1;      /* 11.03:1 / 12.02:1 */
    --hd-on-dark-muted: #94a3b8;  /* 6.96:1 (#0f172a) */
    --hd-on-dark-accent: #93c5fd; /* 9.08:1 / 9.90:1 */

    /* İçerik türü renkleri: beyazda ve #f1f5f9 zeminde >= 4.5:1;
       aynı renk üzerinde beyaz metin için de aynı oran geçerlidir. */
    --hd-type-dosya: #1d4ed8;     /* 6.70 */
    --hd-type-haberlex: #b91c1c;  /* 6.47 */
    --hd-type-yazi: #047857;      /* 5.48 */
    --hd-type-derkenar: #7e22ce;  /* 6.98 */
    --hd-type-alinti: #92400e;    /* 7.09 */
    --hd-type-icerik: #0e7490;    /* 5.36 */
    --hd-type-yazar: #be185d;     /* 6.04 */

    /* Yazı tipleri */
    --hd-font-serif: 'Source Serif 4', 'Source Serif Pro', Georgia, 'Times New Roman', serif;
    --hd-font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --hd-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

    /* Tipografik ölçek (rem; 1rem = 16px) */
    --hd-fs-2xs: 0.75rem;   /* 12px - yalnızca rozet/etiket */
    --hd-fs-xs: 0.8125rem;  /* 13px - kicker, menü */
    --hd-fs-sm: 0.875rem;   /* 14px - meta */
    --hd-fs-base: 1rem;     /* 16px - gövde (asla altına inmez) */
    --hd-fs-md: 1.125rem;   /* 18px - makale gövdesi (md+) */
    --hd-fs-lg: 1.25rem;    /* 20px */
    --hd-fs-xl: 1.5rem;     /* 24px */
    --hd-fs-2xl: clamp(1.625rem, 1.35rem + 1.1vw, 2.125rem);
    --hd-fs-3xl: clamp(1.875rem, 1.45rem + 1.9vw, 2.75rem);
    --hd-fs-display: clamp(1.875rem, 1.35rem + 2.8vw, 3.5rem);

    --hd-lh-tight: 1.2;
    --hd-lh-snug: 1.35;
    --hd-lh-base: 1.6;
    --hd-lh-article: 1.75;

    /* Boşluk, yarıçap, gölge */
    --hd-space-1: 0.25rem;
    --hd-space-2: 0.5rem;
    --hd-space-3: 0.75rem;
    --hd-space-4: 1rem;
    --hd-space-5: 1.5rem;
    --hd-space-6: 2rem;
    --hd-space-7: 3rem;
    --hd-space-8: 4rem;
    --hd-radius-sm: 0.25rem;
    --hd-radius: 0.375rem;
    --hd-radius-lg: 0.625rem;
    --hd-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
    --hd-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
    --hd-shadow-lg: 0 12px 32px rgba(15, 23, 42, 0.14);

    --hd-measure: 70ch;
    --hd-nav-height: 3.25rem;     /* sticky menü yüksekliği (52px) */
    --hd-transition: 0.18s ease;

    /* ---- Legacy değişkenler (sayfaların <style> blokları kullanıyor) ---- */
    --primary-color: var(--hd-primary);
    --primary-dark: var(--hd-primary-dark);
    --primary-light: #93c5fd;          /* yalnızca koyu zeminde metin / kenarlık */
    --secondary-color: var(--hd-navy);
    --text-dark: var(--hd-ink);
    --text-muted: var(--hd-muted);
    --border-color: var(--hd-border);
    --hover-bg: var(--hd-surface-2);

    /* ---- Bootstrap köprüsü ---- */
    --bs-primary: #1d4ed8;
    --bs-primary-rgb: 29, 78, 216;
    --bs-primary-text-emphasis: #1e3a8a;
    --bs-primary-bg-subtle: #eff6ff;
    --bs-primary-border-subtle: #bfdbfe;
    --bs-body-font-family: var(--hd-font-sans);
    --bs-body-font-size: 1rem;
    --bs-body-line-height: 1.6;
    --bs-body-color: #1e293b;
    --bs-body-color-rgb: 30, 41, 59;
    --bs-body-bg: #ffffff;
    --bs-emphasis-color: #0f172a;
    --bs-secondary-color: #475569;          /* .text-muted / .form-text => 7.58:1 */
    --bs-secondary-color-rgb: 71, 85, 105;
    --bs-heading-color: #0f172a;
    --bs-link-color: #1d4ed8;
    --bs-link-color-rgb: 29, 78, 216;
    --bs-link-hover-color: #1e3a8a;
    --bs-link-hover-color-rgb: 30, 58, 138;
    --bs-border-color: #e2e8f0;
    --bs-border-radius: 0.375rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.625rem;
    --bs-focus-ring-color: rgba(29, 78, 216, 0.35);
    --bs-form-invalid-color: #b42318;
    --bs-form-invalid-border-color: #b42318;
    --bs-form-valid-color: #067647;
    --bs-form-valid-border-color: #067647;
}

/* İçerik türü değiştiricileri: herhangi bir öğeye eklenir, alt bileşenler
   (kicker, rozet, kart vurgusu) --hd-type-color değişkenini kullanır. */
.hd-type--dosya    { --hd-type-color: var(--hd-type-dosya); }
.hd-type--haberlex { --hd-type-color: var(--hd-type-haberlex); }
.hd-type--analiz-haber { --hd-type-color: var(--hd-type-haberlex); }
.hd-type--yazi     { --hd-type-color: var(--hd-type-yazi); }
.hd-type--derkenar { --hd-type-color: var(--hd-type-derkenar); }
.hd-type--alinti   { --hd-type-color: var(--hd-type-alinti); }
.hd-type--icerik   { --hd-type-color: var(--hd-type-icerik); }
.hd-type--yazar    { --hd-type-color: var(--hd-type-yazar); }

/* --------------------------------------------------------------------------
   1. BASE
   -------------------------------------------------------------------------- */
html {
    font-size: 100%;
    scroll-padding-top: calc(var(--hd-nav-height) + 1rem);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

@media (prefers-reduced-motion: no-preference) {
    html { scroll-behavior: smooth; }
}

body {
    font-family: var(--hd-font-sans);
    font-size: 1rem;
    line-height: var(--hd-lh-base);
    color: var(--hd-text);
    background-color: var(--hd-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

img, svg, video, iframe {
    max-width: 100%;
}

img {
    height: auto;
}

::selection {
    background: #bfdbfe;
    color: var(--hd-ink);
}

a {
    color: var(--hd-primary);
    text-underline-offset: 0.18em;
    text-decoration-thickness: 0.06em;
}

a:hover {
    color: var(--hd-primary-dark);
}

hr {
    border: 0;
    border-top: 1px solid var(--hd-border);
    opacity: 1;
}

/* --------------------------------------------------------------------------
   2. TYPOGRAPHY
   -------------------------------------------------------------------------- */
h1, h2, h3, h4,
.h1, .h2, .h3, .h4 {
    font-family: var(--hd-font-serif);
    font-weight: 700;
    color: var(--hd-ink);
    line-height: var(--hd-lh-tight);
    letter-spacing: -0.01em;
    font-optical-sizing: auto;
}

h5, h6, .h5, .h6 {
    font-family: var(--hd-font-sans);
    font-weight: 700;
    color: var(--hd-ink);
    line-height: var(--hd-lh-snug);
}

h1, .h1 { font-size: var(--hd-fs-3xl); }
h2, .h2 { font-size: var(--hd-fs-2xl); }
h3, .h3 { font-size: var(--hd-fs-xl); line-height: var(--hd-lh-snug); }
h4, .h4 { font-size: var(--hd-fs-lg); line-height: var(--hd-lh-snug); }
h5, .h5 { font-size: var(--hd-fs-base); }
h6, .h6 { font-size: var(--hd-fs-sm); }

p { margin-bottom: 1rem; }

small, .small { font-size: var(--hd-fs-sm); }

.lead {
    font-size: var(--hd-fs-lg);
    font-weight: 400;
    color: var(--hd-text-2);
    line-height: 1.5;
}

/* --------------------------------------------------------------------------
   3. ACCESSIBILITY
   -------------------------------------------------------------------------- */
.hd-skip-link {
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
    z-index: 2000;
    padding: 0.75rem 1.25rem;
    background: var(--hd-ink);
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    border-radius: var(--hd-radius);
    transform: translateY(-200%);
}

.hd-skip-link:focus,
.hd-skip-link:focus-visible {
    transform: translateY(0);
    color: #fff;
    outline: 3px solid var(--hd-focus-on-dark);
    outline-offset: 2px;
}

/* Görünür odak halkası: her yerde, outline asla yedeksiz kaldırılmaz */
:focus-visible {
    outline: 3px solid var(--hd-focus);
    outline-offset: 2px;
}

/* Bootstrap'in outline:0 + box-shadow odaklarını geçersiz kıl */
.btn:focus-visible,
.btn-check:focus-visible + .btn,
.nav-link:focus-visible,
.navbar-toggler:focus-visible,
.dropdown-item:focus-visible,
.page-link:focus-visible,
.btn-close:focus-visible,
.accordion-button:focus-visible,
.carousel-control-prev:focus-visible,
.carousel-control-next:focus-visible,
.carousel-indicators [data-bs-target]:focus-visible {
    outline: 3px solid var(--hd-focus);
    outline-offset: 2px;
    box-shadow: none;
    z-index: 3;
}

.navbar-toggler:focus { box-shadow: none; }

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    outline: 3px solid var(--hd-focus);
    outline-offset: 1px;
    border-color: var(--hd-primary);
    box-shadow: none;
}

/* Koyu zeminlerde sarı odak halkası */
.hd-on-dark :focus-visible,
.hd-nav :focus-visible,
.hd-footer :focus-visible,
.hd-page-header--dark :focus-visible,
.hd-card--overlay :focus-visible,
.page-header :focus-visible,
.hd-on-dark .btn:focus-visible,
.hd-nav .nav-link:focus-visible,
.hd-footer .btn:focus-visible,
.page-header .btn:focus-visible,
.hd-nav .form-control:focus,
.page-header .form-control:focus,
.hd-page-header--dark .form-control:focus {
    outline-color: var(--hd-focus-on-dark);
}

/* Açılır menüler beyaz zemindedir: mavi halkaya geri dön */
.hd-nav .dropdown-menu :focus-visible,
.hd-nav .dropdown-menu .dropdown-item:focus-visible {
    outline-color: var(--hd-focus);
    outline-offset: -3px;
}

.hd-main:focus,
[tabindex="-1"]:focus:not(:focus-visible) {
    outline: none;
}

/* Bootstrap .visually-hidden / .visually-hidden-focusable kullanılabilir. */
.hd-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* --------------------------------------------------------------------------
   4. MASTHEAD (site başlığı)
   -------------------------------------------------------------------------- */
.hd-masthead {
    background: var(--hd-bg);
    border-top: 4px solid var(--hd-navy);
    padding: 1.25rem 0 1rem;
}

.hd-masthead__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    text-align: center;
}

.hd-masthead__date {
    order: 2;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
    font-weight: 500;
}

.hd-masthead__date i { margin-right: 0.375rem; }

.hd-masthead__brand {
    order: 1;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: var(--hd-ink);
    padding: 0.25rem 0.5rem;
}

.hd-masthead__brand:hover { color: var(--hd-ink); }

.hd-masthead__logo {
    font-family: var(--hd-font-serif);
    font-weight: 700;
    font-size: clamp(1.75rem, 1.2rem + 3.2vw, 3.25rem);
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.hd-masthead__logo-a { color: var(--hd-ink); }
.hd-masthead__logo-b { color: var(--hd-primary); }

.hd-masthead__tagline {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.5rem;
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-2xs);
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--hd-muted);
}

.hd-masthead__tagline::before,
.hd-masthead__tagline::after {
    content: "";
    display: block;
    width: 1.75rem;
    height: 1px;
    background: var(--hd-border-strong);
}

.hd-masthead__aside {
    order: 3;
    display: none;
    align-items: center;
    gap: 0.75rem;
    white-space: nowrap;
}

.hd-masthead__aside .hd-social { flex-wrap: nowrap; gap: 0.25rem; }
.hd-masthead__aside .hd-social__link { width: 2rem; height: 2rem; font-size: 0.875rem; }

@media (max-width: 399.98px) {
    .hd-masthead__tagline { letter-spacing: 0.1em; }
    .hd-masthead__tagline::before,
    .hd-masthead__tagline::after { display: none; }
}

@media (min-width: 768px) {
    .hd-masthead { padding: 1.75rem 0 1.5rem; }

    .hd-masthead__inner {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 1.5rem;
        text-align: left;
    }

    .hd-masthead__date { order: 0; justify-self: start; }
    .hd-masthead__brand { order: 0; }
    .hd-masthead__aside { order: 0; display: flex; justify-self: end; }
}

/* --------------------------------------------------------------------------
   5. SOSYAL İKONLAR
   -------------------------------------------------------------------------- */
.hd-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hd-social__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;            /* 36px >= 24px hedef */
    height: 2.25rem;
    border-radius: 50%;
    border: 1px solid var(--hd-border-strong);
    color: var(--hd-text-2);
    font-size: 0.9375rem;
    text-decoration: none;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

.hd-social__link:hover {
    background: var(--hd-navy);
    border-color: var(--hd-navy);
    color: #fff;
}

.hd-social--dark .hd-social__link {
    border-color: rgba(255, 255, 255, 0.28);
    color: var(--hd-on-dark-2);
}

.hd-social--dark .hd-social__link:hover {
    background: #fff;
    border-color: #fff;
    color: var(--hd-ink);
}

/* --------------------------------------------------------------------------
   6. ANA MENÜ + ARAMA
   -------------------------------------------------------------------------- */
.hd-nav {
    --bs-navbar-padding-y: 0;
    --bs-navbar-color: var(--hd-on-dark-2);
    --bs-navbar-hover-color: #fff;
    --bs-navbar-active-color: #fff;
    --bs-navbar-nav-link-padding-x: 0.75rem;
    background: var(--hd-navy);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.18);
    min-height: var(--hd-nav-height);
    z-index: 1030;
}

.hd-nav > .container {
    flex-wrap: wrap;
}

/* Mobil çubuk (Menü + Ara düğmeleri) */
.hd-nav__bar {
    min-height: var(--hd-nav-height);
}

.hd-nav__toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.75rem;
    min-width: 2.75rem;
    padding: 0.5rem 0.75rem;
    margin-left: -0.75rem;
    background: transparent;
    border: 0;
    border-radius: var(--hd-radius);
    color: #fff;
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.hd-nav__toggle:last-child {
    margin-left: 0;
    margin-right: -0.75rem;
}

.hd-nav__toggle i { font-size: 1.125rem; }

.hd-nav__toggle:hover,
.hd-nav__toggle[aria-expanded="true"] {
    background: rgba(255, 255, 255, 0.1);
}

.hd-nav__list {
    padding: 0.25rem 0 0.75rem;
}

.hd-nav .hd-nav__link {
    --bs-nav-link-padding-x: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.75rem;
    padding: 0.625rem 0;
    color: var(--hd-on-dark-2);
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    position: relative;
    transition: color var(--hd-transition), background-color var(--hd-transition);
}

.hd-nav .hd-nav__link:hover,
.hd-nav .hd-nav__link:focus-visible,
.hd-nav .show > .hd-nav__link {
    color: #fff;
}

.hd-nav .hd-nav__link.active,
.hd-nav .hd-nav__link[aria-current] {
    color: #fff;
}

/* Aktif gösterge: mobilde sol çizgi, masaüstünde alt çizgi (renk tek başına bilgi taşımaz;
   aria-current ve kalın beyaz metin de verilir) */
.hd-nav .hd-nav__link.active::before {
    content: "";
    position: absolute;
    left: -0.75rem;
    top: 0.5rem;
    bottom: 0.5rem;
    width: 3px;
    background: var(--hd-on-dark-accent);
}

.hd-nav__home i { font-size: 0.9375rem; }

.hd-nav .dropdown-toggle::after {
    border-top-width: 0.35em;
    margin-left: 0.375rem;
}

.hd-nav .dropdown-menu {
    --bs-dropdown-min-width: 13rem;
    --bs-dropdown-padding-y: 0.375rem;
    --bs-dropdown-border-color: var(--hd-border);
    --bs-dropdown-border-radius: var(--hd-radius);
    --bs-dropdown-link-color: var(--hd-text);
    --bs-dropdown-link-hover-color: var(--hd-ink);
    --bs-dropdown-link-hover-bg: var(--hd-surface-2);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: var(--hd-primary);
    box-shadow: var(--hd-shadow-lg);
    margin-top: 0;
}

.hd-nav .dropdown-item {
    display: flex;
    align-items: center;
    min-height: 2.75rem;
    padding: 0.5rem 1rem;
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.hd-nav .dropdown-item.active,
.hd-nav .dropdown-item[aria-current] {
    background: var(--hd-primary-tint);
    color: var(--hd-primary-dark);
    box-shadow: inset 3px 0 0 var(--hd-primary);
}

/* Arama formu */
.hd-search {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

.hd-search__input {
    width: 100%;
    min-height: 2.5rem;
    padding: 0.5rem 3rem 0.5rem 1rem;
    font-size: 1rem;             /* iOS yakınlaştırmayı önler */
    color: var(--hd-ink);
    background: #fff;
    border: 1px solid var(--hd-input-border);
    border-radius: 999px;
    appearance: none;
}

.hd-search__input::placeholder { color: var(--hd-muted); opacity: 1; }

.hd-search__input:focus {
    outline: 3px solid var(--hd-focus-on-dark);
    outline-offset: 2px;
    border-color: var(--hd-primary);
}

.hd-search__input::-webkit-search-cancel-button { cursor: pointer; }

.hd-search__btn {
    position: absolute;
    right: 0.25rem;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 0;
    border-radius: 50%;
    background: var(--hd-primary);
    color: #fff;
    font-size: 0.875rem;
    transition: background-color var(--hd-transition);
}

.hd-search__btn:hover { background: var(--hd-primary-dark); }

.hd-search__btn:focus-visible {
    outline: 3px solid var(--hd-focus-on-dark);
    outline-offset: 2px;
}

/* Açık zeminde kullanılacak arama (ör. arama sayfası) */
.hd-search--light .hd-search__input:focus,
.hd-search--light .hd-search__btn:focus-visible {
    outline-color: var(--hd-focus);
}

.hd-search--lg .hd-search__input {
    min-height: 3.25rem;
    padding-left: 1.25rem;
    padding-right: 3.75rem;
    font-size: var(--hd-fs-md);
}

.hd-search--lg .hd-search__btn {
    width: 2.75rem;
    height: 2.75rem;
    font-size: 1rem;
}

.hd-nav__mobile-search {
    padding: 0.25rem 0 1rem;
}

@media (min-width: 992px) {
    .hd-nav__list {
        padding: 0;
        gap: 0;
    }

    .hd-nav .hd-nav__link {
        min-height: var(--hd-nav-height);
        padding-top: 0;
        padding-bottom: 0;
        font-size: var(--hd-fs-xs);
        border-bottom: 0;
    }

    .hd-nav .hd-nav__link:hover {
        background: rgba(255, 255, 255, 0.07);
    }

    .hd-nav .hd-nav__link.active::before {
        left: 0.75rem;
        right: 0.75rem;
        top: auto;
        bottom: 0;
        width: auto;
        height: 3px;
    }

    .hd-nav__home { padding-left: 0 !important; padding-right: 0.875rem !important; }
    .hd-nav .hd-nav__home.active::before { left: 0; right: 0.875rem; }

    .hd-nav__home-text {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
    }

    .hd-nav .hd-search {
        width: 11.5rem;
    }

    .hd-nav .hd-search__input {
        min-height: 2.25rem;
        font-size: var(--hd-fs-sm);
        background: rgba(255, 255, 255, 0.96);
        border-color: transparent;
    }

    .hd-nav .dropdown-menu { margin-top: 0; border-top: 3px solid var(--hd-primary); }
}

@media (min-width: 1200px) {
    .hd-nav { --bs-navbar-nav-link-padding-x: 1rem; }
    .hd-nav .hd-nav__link.active::before { left: 1rem; right: 1rem; }
    .hd-nav .hd-search { width: 15rem; }
}

/* --------------------------------------------------------------------------
   7. ANA İÇERİK ALANI
   -------------------------------------------------------------------------- */
.hd-main {
    flex: 1 0 auto;
    padding: 1.5rem 0 3rem;
    overflow-x: clip;   /* eski sayfalardaki taşmalar yatay kaydırma üretmesin; sticky'yi bozmaz */
}

/* hd-page-header ile başlayan taşınmış sayfalarda bant menüye yaslanır */
.hd-main:has(> .hd-page-header:first-child),
.hd-main:has(> .hd-flush-top:first-child) {
    padding-top: 0;
}

/* --------------------------------------------------------------------------
   8. FOOTER
   -------------------------------------------------------------------------- */
.hd-footer {
    flex-shrink: 0;
    background: var(--hd-footer-bg);
    color: var(--hd-on-dark-2);
    padding: 3rem 0 0;
    margin-top: 2rem;
    border-top: 4px solid var(--hd-primary);
    font-size: var(--hd-fs-base);
}

.hd-footer a {
    color: var(--hd-on-dark-2);
    text-decoration: none;
}

.hd-footer a:hover {
    color: #fff;
    text-decoration: underline;
}

.hd-footer__brand {
    display: inline-block;
    font-family: var(--hd-font-serif);
    font-weight: 700;
    font-size: 1.75rem;
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.hd-footer .hd-footer__brand,
.hd-footer .hd-footer__brand:hover { text-decoration: none; color: #fff; }

.hd-footer__brand-b { color: var(--hd-on-dark-accent); }

.hd-footer__about {
    max-width: 38ch;
    color: var(--hd-on-dark-2);
    margin-bottom: 1.25rem;
}

.hd-footer__heading {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #fff;
    margin: 0 0 1rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.hd-footer__links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.hd-footer__links li { margin: 0; }

.hd-footer__links a {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    min-height: 2rem;          /* >= 24px hedef */
    padding: 0.25rem 0;
    font-size: var(--hd-fs-sm);
    line-height: 1.4;
}

.hd-footer__ext {
    font-size: 0.625rem;
    opacity: 0.75;
}

.hd-footer__empty {
    font-size: var(--hd-fs-sm);
    color: var(--hd-on-dark-muted);   /* 6.96:1 */
    padding: 0.25rem 0;
}

.hd-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
}

.hd-stats li {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.hd-stats__number {
    font-family: var(--hd-font-serif);
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
}

.hd-stats__label {
    font-size: var(--hd-fs-xs);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--hd-on-dark-muted);
}

.hd-footer__bottom {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-start;
    margin-top: 2.5rem;
    padding: 1.25rem 0 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    font-size: var(--hd-fs-sm);
    color: var(--hd-on-dark-muted);
}

.hd-footer__bottom p { margin: 0; }

.hd-footer__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hd-footer__meta a {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    min-height: 1.5rem;
}

.hd-footer .text-muted { color: var(--hd-on-dark-muted) !important; }

@media (min-width: 768px) {
    .hd-footer__bottom {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
}

/* --------------------------------------------------------------------------
   9. BİLEŞENLER
   -------------------------------------------------------------------------- */

/* 9.1 Sayfa başlığı bandı ------------------------------------------------- */
.hd-page-header {
    background: var(--hd-surface);
    border-bottom: 1px solid var(--hd-border);
    padding: 2rem 0 1.75rem;
    margin-bottom: 2rem;
}

.hd-page-header__title {
    font-size: var(--hd-fs-display);
    line-height: 1.1;
    margin: 0.25rem 0 0.5rem;
}

.hd-page-header__lead {
    max-width: 60ch;
    margin: 0;
    font-size: var(--hd-fs-md);
    color: var(--hd-text-2);
}

.hd-page-header .hd-breadcrumb { margin-bottom: 0.75rem; }

.hd-page-header--dark {
    background: var(--hd-navy);
    border-bottom: 0;
    color: var(--hd-on-dark-2);
}

.hd-page-header--dark .hd-page-header__title { color: #fff; }
.hd-page-header--dark .hd-page-header__lead { color: var(--hd-on-dark-2); }
.hd-page-header--dark .hd-kicker { color: var(--hd-on-dark-accent); }
.hd-page-header--dark .breadcrumb-item,
.hd-page-header--dark .breadcrumb-item a,
.hd-page-header--dark .breadcrumb-item.active,
.hd-page-header--dark .breadcrumb-item + .breadcrumb-item::before { color: var(--hd-on-dark-2); }

@media (min-width: 768px) {
    .hd-page-header { padding: 2.75rem 0 2.25rem; margin-bottom: 2.5rem; }
}

/* 9.2 Breadcrumb ---------------------------------------------------------- */
.hd-breadcrumb .breadcrumb {
    --bs-breadcrumb-divider: '›';
    --bs-breadcrumb-item-padding-x: 0.5rem;
    --bs-breadcrumb-divider-color: var(--hd-muted);
    --bs-breadcrumb-item-active-color: var(--hd-muted);
    margin: 0;
    font-size: var(--hd-fs-sm);
}

.hd-breadcrumb .breadcrumb-item a {
    color: var(--hd-text-2);
    text-decoration: underline;
    text-decoration-color: var(--hd-border-strong);
}

.hd-breadcrumb .breadcrumb-item a:hover { color: var(--hd-primary); text-decoration-color: currentColor; }

/* 9.3 Bölüm başlığı -------------------------------------------------------- */
.hd-section {
    margin-block: 2.5rem;
}

.hd-section:first-child { margin-top: 0; }

.hd-section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    border-top: 3px solid var(--hd-rule);
    padding-top: 0.625rem;
    margin-bottom: 1.25rem;
}

.hd-section-head__title {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-xl);
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
}

.hd-section-head__more {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    min-height: 1.5rem;
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    text-decoration: none;
    color: var(--hd-primary);
}

.hd-section-head__more:hover { text-decoration: underline; }

.hd-section-head__actions { display: flex; gap: 0.5rem; flex-shrink: 0; }

/* 9.4 Kicker (üst etiket) ve rozet ---------------------------------------- */
.hd-kicker {
    display: inline-block;
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--hd-type-color, var(--hd-primary));
    text-decoration: none;
    margin-bottom: 0.375rem;
}

a.hd-kicker { padding-block: 0.25rem; }  /* >= 24px tıklama yüksekliği */
a.hd-kicker:hover { text-decoration: underline; color: var(--hd-type-color, var(--hd-primary-dark)); }

.hd-kicker--bar::before {
    content: "";
    display: inline-block;
    width: 0.625rem;
    height: 0.625rem;
    margin-right: 0.4rem;
    vertical-align: 0;
    background: currentColor;
}

.hd-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-2xs);
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.25;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
    background: var(--hd-type-color, var(--hd-primary));
    border-radius: var(--hd-radius-sm);
}

a.hd-badge { min-height: 1.5rem; }
a.hd-badge:hover { color: #fff; filter: brightness(0.88); }

.hd-badge--outline {
    color: var(--hd-type-color, var(--hd-primary));
    background: #fff;
    box-shadow: inset 0 0 0 1px currentColor;
}

a.hd-badge--outline:hover { color: var(--hd-type-color, var(--hd-primary)); filter: none; background: var(--hd-surface-2); }

/* 9.5 Meta satırı ve yazar imzası ----------------------------------------- */
.hd-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
    line-height: 1.4;
}

.hd-meta__item {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}

.hd-meta__item + .hd-meta__item::before {
    content: "";
    width: 3px;
    height: 3px;
    margin: 0 0.625rem;
    border-radius: 50%;
    background: currentColor;
}

.hd-meta a { color: var(--hd-text-2); font-weight: 600; text-decoration: none; }
.hd-meta a:hover { color: var(--hd-primary); text-decoration: underline; }

.hd-byline {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.hd-byline__avatar {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    background: var(--hd-surface-2);
}

.hd-byline__body { min-width: 0; line-height: 1.35; }

.hd-byline__name {
    display: block;
    font-weight: 600;
    color: var(--hd-ink);
    text-decoration: none;
}

a.hd-byline__name:hover { color: var(--hd-primary); text-decoration: underline; }

.hd-byline__role {
    display: block;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
}

.hd-byline--lg .hd-byline__avatar { width: 4rem; height: 4rem; }
.hd-byline--lg .hd-byline__name { font-size: var(--hd-fs-md); }

/* 9.6 Kartlar --------------------------------------------------------------
   Yapı: .hd-card > .hd-card__media + .hd-card__body > (.hd-kicker, .hd-card__title > a.hd-card__link,
   .hd-card__excerpt, .hd-meta). a.hd-card__link tüm kartı tıklanabilir yapar. */
.hd-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    min-width: 0;
    background: transparent;
}

/* Izgara sütununun tek çocuğu olan kartlar eşit yükseklikte uzar */
.row > [class*="col"] > .hd-card:only-child,
.hd-card--fill { height: 100%; }

.hd-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--hd-surface-2);
    border-radius: var(--hd-radius-sm);
}

.hd-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.4s ease;
}

.hd-card:hover .hd-card__media img { transform: scale(1.03); }

.hd-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.hd-card__title {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-lg);
    font-weight: 700;
    line-height: 1.25;
    color: var(--hd-ink);
    margin: 0 0 0.5rem;
    overflow-wrap: break-word;
}

.hd-card__link {
    color: inherit;
    text-decoration: none;
}

.hd-card__link:hover {
    color: inherit;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.15em;
}

/* Tüm kart tıklanabilir */
.hd-card__link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: var(--hd-radius-sm);
}

.hd-card__link:focus-visible { outline: none; }
.hd-card__link:focus-visible::after {
    outline: 3px solid var(--hd-focus);
    outline-offset: 4px;
}

/* Kart içindeki ikincil bağlantılar (kategori, yazar) üst katmana çıkar */
.hd-card .hd-kicker,
.hd-card .hd-badge,
.hd-card .hd-meta a,
.hd-card .hd-byline a,
.hd-card .hd-raise {
    position: relative;
    z-index: 2;
}

.hd-card__excerpt {
    color: var(--hd-text-2);
    font-size: var(--hd-fs-base);
    line-height: 1.55;
    margin: 0 0 0.75rem;
}

.hd-card .hd-meta { margin-top: auto; }

/* Büyük (manşet) kart */
.hd-card--lg { gap: 1.125rem; }
.hd-card--lg .hd-card__media { aspect-ratio: 3 / 2; }
.hd-card--lg .hd-card__title {
    font-size: var(--hd-fs-3xl);
    line-height: 1.12;
    letter-spacing: -0.015em;
}
.hd-card--lg .hd-card__excerpt { font-size: var(--hd-fs-md); }

/* Orta (varsayılan) kart: .hd-card yeterli; açık yazım için .hd-card--md */
.hd-card--md .hd-card__title { font-size: var(--hd-fs-lg); }

/* Kompakt kart: küçük görsel solda, başlık yanında */
.hd-card--compact {
    flex-direction: row;
    align-items: flex-start;
    gap: 0.875rem;
}

.hd-card--compact .hd-card__media {
    flex: 0 0 6.5rem;
    aspect-ratio: 4 / 3;
}

.hd-card--compact .hd-card__title {
    font-size: var(--hd-fs-base);
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 0.375rem;
}

.hd-card--compact .hd-card__excerpt { display: none; }
.hd-card--compact .hd-meta { font-size: var(--hd-fs-xs); }

/* Liste satırı: arşiv/listeleme sayfaları için yatay satır */
.hd-card--row {
    display: grid;
    grid-template-columns: 7rem minmax(0, 1fr);
    align-items: start;
    gap: 1rem;
    height: auto;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--hd-border);
}

.hd-card--row:first-child { padding-top: 0; }
.hd-card--row .hd-card__media { aspect-ratio: 4 / 3; }
.hd-card--row .hd-card__title { font-size: var(--hd-fs-md); }
.hd-card--row .hd-card__excerpt { display: none; }
.hd-card--row.hd-card--no-media { grid-template-columns: minmax(0, 1fr); }

@media (min-width: 768px) {
    .hd-card--row {
        grid-template-columns: 15rem minmax(0, 1fr);
        gap: 1.5rem;
        padding: 1.5rem 0;
    }
    .hd-card--row .hd-card__title { font-size: var(--hd-fs-xl); }
    .hd-card--row .hd-card__excerpt { display: block; }
}

/* Çerçeveli kart (kutulu ızgaralar için) */
.hd-card--boxed {
    background: #fff;
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-lg);
    overflow: hidden;
    gap: 0;
    transition: box-shadow var(--hd-transition), border-color var(--hd-transition);
}

.hd-card--boxed:hover { box-shadow: var(--hd-shadow); border-color: var(--hd-border-strong); }
.hd-card--boxed .hd-card__media { border-radius: 0; }
.hd-card--boxed .hd-card__body { padding: 1rem 1.125rem 1.125rem; }
.hd-card--boxed .hd-card__link::after { border-radius: var(--hd-radius-lg); }

/* Görsel üzerinde metin (manşet slaytı) */
.hd-card--overlay {
    display: grid;
    gap: 0;
    color: #fff;
    border-radius: var(--hd-radius);
    overflow: hidden;
    background: var(--hd-navy);
}

/* Medya ve gövde aynı ızgara hücresinde üst üste; gövde konumlandırılmaz ki
   .hd-card__link::after tüm kartı kaplasın. */
.hd-card--overlay > .hd-card__media,
.hd-card--overlay > .hd-card__body { grid-area: 1 / 1; }

.hd-card--overlay .hd-card__media {
    position: static;
    aspect-ratio: 4 / 3;
    border-radius: 0;
}

.hd-card--overlay:hover .hd-card__media img { transform: none; }

.hd-card--overlay .hd-card__body {
    align-self: end;
    padding: 3rem 1.25rem 1.25rem;
    background: linear-gradient(to top, rgba(2, 6, 23, 0.92) 0%, rgba(2, 6, 23, 0.78) 55%, rgba(2, 6, 23, 0) 100%);
}

.hd-card--overlay .hd-card__title { color: #fff; font-size: var(--hd-fs-2xl); margin: 0; }
.hd-card--overlay .hd-card__link:hover { color: #fff; }
.hd-card--overlay .hd-kicker { color: #fff; }
.hd-card--overlay .hd-meta { color: var(--hd-on-dark-2); margin-top: 0.5rem; }
.hd-card--overlay .hd-card__link:focus-visible::after { outline-color: var(--hd-focus-on-dark); outline-offset: -4px; }

@media (min-width: 768px) {
    .hd-card--overlay .hd-card__media { aspect-ratio: 16 / 9; }
    .hd-card--overlay .hd-card__body { padding: 4rem 2rem 1.75rem; }
    .hd-card--overlay .hd-card__title { font-size: var(--hd-fs-3xl); }
}

/* Görselsiz başlık kartı (yoğun listeler) */
.hd-card--text {
    gap: 0;
    padding-top: 0.875rem;
    border-top: 1px solid var(--hd-border);
}

.hd-card--text .hd-card__title { font-size: var(--hd-fs-md); }

/* Tür vurgusu: kartın üstünde renkli ince çizgi */
.hd-card--accent { border-top: 3px solid var(--hd-type-color, var(--hd-primary)); padding-top: 0.75rem; }

/* Kart ızgarası (dikey ayırıcılı yoğun gazete düzeni için Bootstrap .row ile birlikte) */
.hd-grid-ruled > [class*="col"] { position: relative; }

@media (min-width: 768px) {
    .hd-grid-ruled > [class*="col"] + [class*="col"]::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        border-left: 1px solid var(--hd-border);
    }
}

/* 9.7 Kenar çubuğu bileşeni ----------------------------------------------- */
.hd-widget {
    border-top: 3px solid var(--hd-rule);
    padding-top: 0.75rem;
    margin-bottom: 2.5rem;
}

.hd-widget__title {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-sm);
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--hd-ink);
    margin: 0 0 1rem;
    line-height: 1.3;
}

.hd-widget--boxed {
    background: var(--hd-surface);
    border: 1px solid var(--hd-border);
    border-top: 3px solid var(--hd-primary);
    border-radius: 0 0 var(--hd-radius) var(--hd-radius);
    padding: 1rem 1.25rem 1.25rem;
}

/* Yapışkan blok: yalnızca görünüm alanından KISA içerik için (uzun kenar çubuklarında kullanmayın) */
@media (min-width: 992px) {
    .hd-sticky { position: sticky; top: calc(var(--hd-nav-height) + 1.5rem); }
}

/* 9.8 Numaralı liste (En çok okunanlar) ------------------------------------ */
.hd-ranked {
    counter-reset: hd-rank;
    list-style: none;
    margin: 0;
    padding: 0;
}

.hd-ranked__item {
    counter-increment: hd-rank;
    position: relative;
    display: grid;
    grid-template-columns: 2.25rem minmax(0, 1fr);
    gap: 0.75rem;
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--hd-border);
}

.hd-ranked__item:first-child { padding-top: 0; }
.hd-ranked__item:last-child { border-bottom: 0; }

.hd-ranked__item::before {
    content: counter(hd-rank);
    font-family: var(--hd-font-serif);
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1;
    color: var(--hd-primary);
}

.hd-ranked__link {
    display: block;
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-base);
    font-weight: 600;
    line-height: 1.35;
    color: var(--hd-ink);
    text-decoration: none;
    margin-bottom: 0.25rem;
}

.hd-ranked__link:hover { color: var(--hd-primary); text-decoration: underline; }

/* 9.9 Basit bağlantı listesi ve çipler ------------------------------------- */
.hd-link-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.hd-link-list li { border-bottom: 1px solid var(--hd-border); }
.hd-link-list li:last-child { border-bottom: 0; }

.hd-link-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 2.75rem;
    padding: 0.5rem 0;
    color: var(--hd-text);
    font-weight: 500;
    text-decoration: none;
}

.hd-link-list a:hover { color: var(--hd-primary); }
.hd-link-list a[aria-current] { color: var(--hd-primary); font-weight: 700; }

.hd-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hd-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    min-height: 2.25rem;
    padding: 0.375rem 0.875rem;
    font-size: var(--hd-fs-sm);
    font-weight: 500;
    color: var(--hd-text-2);
    background: #fff;
    border: 1px solid var(--hd-border-strong);
    border-radius: 999px;
    text-decoration: none;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

.hd-chip:hover { border-color: var(--hd-primary); color: var(--hd-primary); }

.hd-chip.active,
.hd-chip[aria-current],
.hd-chip[aria-pressed="true"] {
    background: var(--hd-navy);
    border-color: var(--hd-navy);
    color: #fff;
}

.hd-chip__count {
    font-size: var(--hd-fs-2xs);
    font-weight: 700;
    color: inherit;
    opacity: 0.85;
}

/* 9.10 Sekmeler ------------------------------------------------------------ */
.hd-tabs {
    display: flex;
    gap: 0.25rem;
    margin: 0 0 1.25rem;
    padding: 0;
    list-style: none;
    border-bottom: 1px solid var(--hd-border-strong);
    overflow-x: auto;
    scrollbar-width: thin;
}

.hd-tabs__tab {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    padding: 0.5rem 0.875rem;
    margin-bottom: -1px;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--hd-muted);
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
}

.hd-tabs__tab:hover { color: var(--hd-ink); }

.hd-tabs__tab.active,
.hd-tabs__tab[aria-selected="true"],
.hd-tabs__tab[aria-current] {
    color: var(--hd-ink);
    border-bottom-color: var(--hd-primary);
}

.hd-tabs__tab:focus-visible { outline-offset: -3px; }

/* 9.11 Sayfalama (Laravel bootstrap-5 sayfalaması dahil, global) ---------- */
.pagination {
    --bs-pagination-padding-x: 0.75rem;
    --bs-pagination-padding-y: 0.5rem;
    --bs-pagination-font-size: var(--hd-fs-sm);
    --bs-pagination-color: var(--hd-text);
    --bs-pagination-bg: #fff;
    --bs-pagination-border-color: var(--hd-border-strong);
    --bs-pagination-border-radius: var(--hd-radius);
    --bs-pagination-hover-color: var(--hd-ink);
    --bs-pagination-hover-bg: var(--hd-surface-2);
    --bs-pagination-hover-border-color: var(--hd-input-border);
    --bs-pagination-focus-color: var(--hd-ink);
    --bs-pagination-focus-bg: var(--hd-surface-2);
    --bs-pagination-focus-box-shadow: none;
    --bs-pagination-active-color: #fff;
    --bs-pagination-active-bg: var(--hd-navy);
    --bs-pagination-active-border-color: var(--hd-navy);
    --bs-pagination-disabled-color: #64748b;     /* 4.76:1 */
    --bs-pagination-disabled-bg: var(--hd-surface);
    --bs-pagination-disabled-border-color: var(--hd-border);
    flex-wrap: wrap;
    gap: 0.375rem;
}

.pagination .page-link {
    min-width: 2.5rem;
    min-height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: var(--hd-radius) !important;
    margin-left: 0 !important;
}

.hd-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    margin-top: 2.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--hd-border);
}

.hd-pagination p { color: var(--hd-muted); font-size: var(--hd-fs-sm); }

/* 9.12 Düğmeler (Bootstrap üzerine) ----------------------------------------- */
.btn {
    --bs-btn-font-weight: 600;
    --bs-btn-border-radius: var(--hd-radius);
    --bs-btn-focus-box-shadow: none;
}

.btn-sm { --bs-btn-font-size: var(--hd-fs-sm); }   /* ~31px yükseklik >= 24px */

.btn-primary {
    --bs-btn-bg: var(--hd-primary);
    --bs-btn-border-color: var(--hd-primary);
    --bs-btn-hover-bg: var(--hd-primary-dark);
    --bs-btn-hover-border-color: var(--hd-primary-dark);
    --bs-btn-active-bg: var(--hd-primary-dark);
    --bs-btn-active-border-color: var(--hd-primary-dark);
    --bs-btn-disabled-bg: var(--hd-primary);
    --bs-btn-disabled-border-color: var(--hd-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--hd-primary);
    --bs-btn-border-color: var(--hd-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--hd-primary);
    --bs-btn-hover-border-color: var(--hd-primary);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--hd-primary-dark);
    --bs-btn-active-border-color: var(--hd-primary-dark);
    --bs-btn-disabled-color: var(--hd-primary);
    --bs-btn-disabled-border-color: var(--hd-primary);
}

.btn-dark,
.hd-btn-ink {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--hd-navy);
    --bs-btn-border-color: var(--hd-navy);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #13305e;
    --bs-btn-hover-border-color: #13305e;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #13305e;
    --bs-btn-active-border-color: #13305e;
}

.btn-outline-dark,
.hd-btn-outline {
    --bs-btn-color: var(--hd-ink);
    --bs-btn-border-color: var(--hd-ink);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--hd-ink);
    --bs-btn-hover-border-color: var(--hd-ink);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--hd-ink);
    --bs-btn-active-border-color: var(--hd-ink);
}

.btn-outline-light {
    --bs-btn-color: #fff;
    --bs-btn-border-color: rgba(255, 255, 255, 0.6);
    --bs-btn-hover-color: var(--hd-ink);
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: #fff;
}

/* Metin bağlantısı görünümlü eylem: "Devamını oku →" */
.hd-link-more {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    min-height: 1.5rem;
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    color: var(--hd-primary);
    text-decoration: none;
}

.hd-link-more:hover { text-decoration: underline; color: var(--hd-primary-dark); }

/* İkon düğmesi (yalnızca ikon: aria-label zorunlu) */
.hd-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 1px solid var(--hd-border-strong);
    border-radius: 50%;
    background: #fff;
    color: var(--hd-text-2);
    font-size: 0.9375rem;
    text-decoration: none;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

.hd-icon-btn:hover { background: var(--hd-navy); border-color: var(--hd-navy); color: #fff; }
.hd-icon-btn:disabled, .hd-icon-btn[aria-disabled="true"] { opacity: 0.5; pointer-events: none; }

/* 9.13 Formlar --------------------------------------------------------------- */
.form-label {
    font-weight: 600;
    color: var(--hd-ink);
    margin-bottom: 0.375rem;
}

.form-control,
.form-select {
    min-height: 2.75rem;
    font-size: 1rem;
    color: var(--hd-ink);
    border-color: var(--hd-input-border);
    border-radius: var(--hd-radius);
}

.form-control::placeholder { color: #64748b; opacity: 1; }   /* 4.76:1 */

.form-control-sm, .form-select-sm { min-height: 2.25rem; font-size: var(--hd-fs-sm); }

.form-check-input { border-color: var(--hd-input-border); width: 1.25em; height: 1.25em; margin-top: 0.15em; }
.form-check-input:checked { background-color: var(--hd-primary); border-color: var(--hd-primary); }
.form-check-label { padding-left: 0.25rem; }

.form-text { color: var(--hd-muted); font-size: var(--hd-fs-sm); }

.form-control.is-invalid,
.form-select.is-invalid,
.was-validated .form-control:invalid {
    border-color: var(--hd-danger);
    border-width: 2px;
}

.invalid-feedback {
    font-size: var(--hd-fs-sm);
    font-weight: 500;
    color: var(--hd-danger);
}

.hd-required {
    color: var(--hd-accent);
    font-weight: 700;
    margin-left: 0.125rem;
}

.hd-form-legend {
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
    margin-bottom: 1.25rem;
}

.hd-form fieldset { border: 0; padding: 0; margin: 0 0 1.5rem; min-width: 0; }

.hd-form legend {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-lg);
    font-weight: 700;
    color: var(--hd-ink);
    margin-bottom: 1rem;
    float: none;
}

.hd-error-summary {
    border: 2px solid var(--hd-danger);
    border-left-width: 6px;
    background: #fef2f2;
    color: var(--hd-ink);
    border-radius: var(--hd-radius);
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
}

.hd-error-summary__title {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-base);
    font-weight: 700;
    color: var(--hd-danger);
    margin: 0 0 0.5rem;
}

.hd-error-summary ul { margin: 0; padding-left: 1.25rem; }
.hd-error-summary a { color: var(--hd-danger); font-weight: 600; }

.alert { border-radius: var(--hd-radius); }
.alert-success { --bs-alert-color: #064e3b; --bs-alert-bg: #ecfdf5; --bs-alert-border-color: #a7f3d0; }
.alert-danger { --bs-alert-color: #7f1d1d; --bs-alert-bg: #fef2f2; --bs-alert-border-color: #fecaca; }
.alert-info { --bs-alert-color: #1e3a8a; --bs-alert-bg: #eff6ff; --bs-alert-border-color: #bfdbfe; }

/* 9.14 Makale ---------------------------------------------------------------- */
.hd-article-header {
    padding: 0.5rem 0 1.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--hd-border);
}

.hd-article-header .hd-breadcrumb { margin-bottom: 1rem; }

.hd-article-title {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-display);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--hd-ink);
    margin: 0.25rem 0 1rem;
    max-width: 24ch;
    overflow-wrap: break-word;
}

.hd-article-lead {
    max-width: 62ch;
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-lg);
    font-weight: 400;
    line-height: 1.5;
    color: var(--hd-text-2);
    margin: 0 0 1.25rem;
}

.hd-article-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.hd-figure {
    margin: 0 0 2rem;
}

.hd-figure img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: var(--hd-radius-sm);
    background: var(--hd-surface-2);
    display: block;
}

.hd-figure figcaption,
.article-content figcaption {
    margin-top: 0.5rem;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
    line-height: 1.45;
}

/* Makale gövdesi — Quill çıktısı dahil (HtmlSanitizer::clean sonrası) */
.article-content {
    max-width: var(--hd-measure);
    font-size: 1.0625rem;
    line-height: var(--hd-lh-article);
    color: var(--hd-text);
    overflow-wrap: break-word;
}

@media (min-width: 768px) {
    .article-content { font-size: var(--hd-fs-md); }
}

.article-content > :first-child { margin-top: 0; }
.article-content > :last-child { margin-bottom: 0; }

.article-content p { margin: 0 0 1.25em; }

.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6 {
    font-family: var(--hd-font-serif);
    color: var(--hd-ink);
    line-height: 1.3;
    margin: 1.75em 0 0.6em;
}

.article-content h1 { font-size: 1.75em; }
.article-content h2 { font-size: 1.5em; }
.article-content h3 { font-size: 1.25em; }
.article-content h4 { font-size: 1.1em; }
.article-content h5,
.article-content h6 { font-size: 1em; font-family: var(--hd-font-sans); }

.article-content a {
    color: var(--hd-primary);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.18em;
}

.article-content a:hover { color: var(--hd-primary-dark); text-decoration-thickness: 2px; }

.article-content strong, .article-content b { font-weight: 700; color: var(--hd-ink); }

.article-content ul,
.article-content ol {
    margin: 0 0 1.25em;
    padding-left: 1.5em;
}

.article-content li { margin-bottom: 0.4em; padding-left: 0.25em; }
.article-content li::marker { color: var(--hd-muted); }
.article-content ol li::marker { font-weight: 600; }

.article-content blockquote {
    margin: 1.75em 0;
    padding: 0.25em 0 0.25em 1.25em;
    border-left: 4px solid var(--hd-primary);
    font-family: var(--hd-font-serif);
    font-size: 1.15em;
    line-height: 1.55;
    color: var(--hd-ink);
}

.article-content blockquote p:last-child { margin-bottom: 0; }

.article-content blockquote cite,
.article-content blockquote footer {
    display: block;
    margin-top: 0.75em;
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-sm);
    font-style: normal;
    color: var(--hd-muted);
}

.article-content img {
    height: auto;
    border-radius: var(--hd-radius-sm);
}

.article-content figure { margin: 2em 0; }
.article-content figure img { display: block; width: 100%; }

.article-content iframe,
.article-content video {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 1.5em 0;
    border: 0;
}

.article-content iframe { aspect-ratio: 16 / 9; height: auto; }

.article-content hr {
    margin: 2.5em auto;
    width: 40%;
    border-top: 1px solid var(--hd-border-strong);
}

.article-content table {
    width: 100%;
    margin: 1.75em 0;
    border-collapse: collapse;
    font-family: var(--hd-font-sans);
    font-size: 0.9em;
    line-height: 1.5;
}

.article-content th,
.article-content td {
    padding: 0.625em 0.75em;
    border: 1px solid var(--hd-border-strong);
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.article-content th,
.article-content thead td {
    background: var(--hd-surface-2);
    font-weight: 700;
    color: var(--hd-ink);
}

.article-content caption {
    caption-side: bottom;
    padding-top: 0.5em;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
}

.article-content code {
    font-family: var(--hd-font-mono);
    font-size: 0.875em;
    padding: 0.1em 0.35em;
    background: var(--hd-surface-2);
    border-radius: var(--hd-radius-sm);
    color: #9d174d;  /* 7.04:1 */
}

.article-content pre,
.article-content pre.ql-syntax {
    margin: 1.5em 0;
    padding: 1em 1.25em;
    overflow-x: auto;
    font-family: var(--hd-font-mono);
    font-size: 0.875em;
    line-height: 1.6;
    background: var(--hd-ink);
    color: #e2e8f0;
    border-radius: var(--hd-radius);
}

.article-content pre code { background: none; color: inherit; padding: 0; }

/* Quill hizalama / girinti / boyut sınıfları */
.article-content .ql-align-center { text-align: center; }
.article-content .ql-align-right { text-align: right; }
.article-content .ql-align-justify { text-align: justify; hyphens: auto; }
.article-content .ql-direction-rtl { direction: rtl; text-align: inherit; }
.article-content .ql-indent-1 { padding-left: 3em; }
.article-content .ql-indent-2 { padding-left: 6em; }
.article-content .ql-indent-3 { padding-left: 9em; }
.article-content .ql-indent-4 { padding-left: 12em; }
.article-content .ql-indent-5 { padding-left: 15em; }
.article-content .ql-indent-6 { padding-left: 18em; }
.article-content .ql-indent-7 { padding-left: 21em; }
.article-content .ql-indent-8 { padding-left: 24em; }
.article-content li.ql-indent-1 { padding-left: 1.5em; margin-left: 1.5em; }
.article-content li.ql-indent-2 { padding-left: 1.5em; margin-left: 3em; }
.article-content li.ql-indent-3 { padding-left: 1.5em; margin-left: 4.5em; }
.article-content li.ql-indent-4 { padding-left: 1.5em; margin-left: 6em; }
.article-content li.ql-indent-5 { padding-left: 1.5em; margin-left: 7.5em; }
.article-content li.ql-indent-6 { padding-left: 1.5em; margin-left: 9em; }
.article-content li.ql-indent-7 { padding-left: 1.5em; margin-left: 10.5em; }
.article-content li.ql-indent-8 { padding-left: 1.5em; margin-left: 12em; }
.article-content .ql-size-small { font-size: 0.8em; }
.article-content .ql-size-large { font-size: 1.35em; }
.article-content .ql-size-huge { font-size: 1.75em; }
.article-content .ql-font-serif { font-family: var(--hd-font-serif); }
.article-content .ql-font-monospace { font-family: var(--hd-font-mono); }

/* Küçük ekranda derin girintiler taşmasın */
@media (max-width: 575.98px) {
    .article-content [class*="ql-indent-"] { padding-left: 1.5em; }
    .article-content li[class*="ql-indent-"] { margin-left: 1em; }
}

/* İsteğe bağlı: serif gövde (uzun deneme/makaleler için) */
.article-content--serif {
    font-family: var(--hd-font-serif);
    font-size: 1.125rem;
}

@media (min-width: 768px) {
    .article-content--serif { font-size: 1.1875rem; }
}

/* Kaynak bağlantısı (HaberLex) */
.hd-source {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid var(--hd-border);
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
}

/* 9.15 Yazar kutusu ---------------------------------------------------------- */
.hd-author-box {
    display: grid;
    grid-template-columns: 4.5rem minmax(0, 1fr);
    gap: 1rem 1.25rem;
    align-items: start;
    margin: 2.5rem 0;
    padding: 1.5rem;
    background: var(--hd-surface);
    border-top: 3px solid var(--hd-rule);
    max-width: var(--hd-measure);
}

.hd-author-box__avatar {
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 50%;
    object-fit: cover;
    background: var(--hd-surface-2);
}

.hd-author-box__label {
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--hd-muted);
    margin: 0 0 0.125rem;
}

.hd-author-box__name {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-lg);
    margin: 0 0 0.5rem;
}

.hd-author-box__name a { color: var(--hd-ink); text-decoration: none; }
.hd-author-box__name a:hover { text-decoration: underline; }

.hd-author-box__bio { color: var(--hd-text-2); margin-bottom: 0.75rem; }

@media (min-width: 576px) {
    .hd-author-box { grid-template-columns: 6rem minmax(0, 1fr); }
    .hd-author-box__avatar { width: 6rem; height: 6rem; }
}

/* 9.16 Paylaş ---------------------------------------------------------------- */
.hd-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 2rem 0;
}

.hd-share__label {
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--hd-muted);
    margin-right: 0.25rem;
}

/* 9.17 Boş durum ------------------------------------------------------------- */
.hd-empty {
    text-align: center;
    padding: 3rem 1.5rem;
    background: var(--hd-surface);
    border: 1px dashed var(--hd-border-strong);
    border-radius: var(--hd-radius-lg);
    color: var(--hd-muted);
}

.hd-empty__icon { font-size: 2rem; color: var(--hd-muted); margin-bottom: 0.75rem; }
.hd-empty__title { font-family: var(--hd-font-serif); font-size: var(--hd-fs-lg); color: var(--hd-ink); margin-bottom: 0.25rem; }

/* 9.18 Tablo sarmalayıcı (sayfa tarafından yazılan tablolar) --------------- */
.hd-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    margin-bottom: 1.5rem;
}

.hd-table-wrap:focus-visible { outline-offset: 2px; }

/* --------------------------------------------------------------------------
   10. LEGACY (sayfalar hd-* sınıflarına taşınana kadar)
   Bu sınıflar eski düzende tanımlıydı ya da sayfalar tarafından kullanılıyor.
   Sayfaların kendi <style> blokları bunları ezebilir (sonra yüklenir).
   -------------------------------------------------------------------------- */
.content-card {
    position: relative;
    background: #fff;
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-lg);
    overflow: hidden;
    height: 100%;
    transition: box-shadow var(--hd-transition), border-color var(--hd-transition);
}

.content-card:hover {
    box-shadow: var(--hd-shadow);
    border-color: var(--hd-border-strong);
}

.content-card img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    background: var(--hd-surface-2);
}

.content-card-body { padding: 1rem 1.125rem 1.125rem; }

.content-card-title {
    display: block;
    font-family: var(--hd-font-serif);
    font-size: 1.1875rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--hd-ink);
    text-decoration: none;
    margin-bottom: 0.5rem;
    overflow-wrap: break-word;
}

.content-card-title:hover {
    color: var(--hd-ink);
    text-decoration: underline;
    text-decoration-thickness: 1px;
}

.content-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 1rem;
    margin-top: 0.75rem;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
}

.content-meta i { color: var(--hd-muted); margin-right: 0.125rem; }

.category-badge {
    display: inline-flex;
    align-items: center;
    min-height: 1.5rem;
    padding: 0.2rem 0.5rem;
    margin-bottom: 0.5rem;
    font-size: var(--hd-fs-2xs);
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.25;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
    background: var(--hd-type-color, var(--hd-primary));   /* 6.70:1 */
    border-radius: var(--hd-radius-sm);
}

a.category-badge:hover { color: #fff; background: var(--hd-primary-dark); }

.sidebar-widget {
    background: transparent;
    border-top: 3px solid var(--hd-rule);
    padding-top: 0.75rem;
    margin-bottom: 2.5rem;
}

.sidebar-widget-title {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-sm);
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--hd-ink);
    margin: 0 0 1rem;
    line-height: 1.3;
}

.widget-list-item {
    display: flex;
    gap: 0.875rem;
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--hd-border);
}

.widget-list-item:first-of-type { padding-top: 0.25rem; }
.widget-list-item:last-child { border-bottom: 0; }

.widget-list-item img {
    width: 5.5rem;
    height: 4.125rem;
    flex-shrink: 0;
    object-fit: cover;
    object-position: center;
    border-radius: var(--hd-radius-sm);
    background: var(--hd-surface-2);
    display: block;
}

.widget-list-content { flex: 1; min-width: 0; }

.widget-list-title {
    display: block;
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-base);
    font-weight: 600;
    line-height: 1.35;
    color: var(--hd-ink);
    text-decoration: none;
    margin-bottom: 0.25rem;
    overflow-wrap: break-word;
}

.widget-list-title:hover { color: var(--hd-primary); text-decoration: underline; }

.custom-tabs {
    display: flex;
    gap: 0.25rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--hd-border-strong);
}

.custom-tab {
    min-height: 2.75rem;
    padding: 0.5rem 0.25rem;
    margin-bottom: -1px;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--hd-muted);
    font-size: var(--hd-fs-sm);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
}

.custom-tab.active { color: var(--hd-ink); border-bottom-color: var(--hd-primary); }

.section-title {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-xl);
    font-weight: 700;
    color: var(--hd-ink);
    border-top: 3px solid var(--hd-rule);
    padding-top: 0.625rem;
    margin-bottom: 1.25rem;
}

.page-header {
    background: var(--hd-navy);
    color: #fff;
    padding: 2.5rem 0;
    margin-bottom: 2rem;
}

.page-header h1 { color: #fff; }

.article-header { padding: 0.5rem 0 1.5rem; }

.article-title {
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-3xl);
    font-weight: 700;
    line-height: 1.15;
    color: var(--hd-ink);
    margin-bottom: 1rem;
}

.article-meta-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1.25rem;
    font-size: var(--hd-fs-sm);
    color: var(--hd-muted);
    margin-bottom: 1.5rem;
}

.article-featured-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: var(--hd-radius-sm);
    margin-bottom: 2rem;
    background: var(--hd-surface-2);
}

/* --------------------------------------------------------------------------
   11. YARDIMCI SINIFLAR
   -------------------------------------------------------------------------- */
.hd-serif { font-family: var(--hd-font-serif) !important; }
.hd-sans { font-family: var(--hd-font-sans) !important; }
.hd-muted { color: var(--hd-muted) !important; }
.hd-ink { color: var(--hd-ink) !important; }
.hd-measure { max-width: var(--hd-measure); }
.hd-surface { background: var(--hd-surface); }

.hd-label {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--hd-muted);
}

.hd-rule { border: 0; border-top: 1px solid var(--hd-border); margin: 2rem 0; opacity: 1; }
.hd-rule--thick { border-top: 3px solid var(--hd-rule); }
.hd-rule--double { border-top: 3px double var(--hd-rule); }

.hd-divided > * + * { border-top: 1px solid var(--hd-border); }

.hd-stack > * + * { margin-top: var(--hd-stack-gap, 1rem); }

.hd-clamp-2,
.hd-clamp-3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.hd-clamp-2 { -webkit-line-clamp: 2; line-clamp: 2; }
.hd-clamp-3 { -webkit-line-clamp: 3; line-clamp: 3; }

/* --------------------------------------------------------------------------
   12. HAREKET AZALTMA & YAZDIRMA
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    html { scroll-behavior: auto !important; }

    .hd-card:hover .hd-card__media img,
    .content-card:hover img { transform: none !important; }
}

@media print {
    .hd-skip-link,
    .hd-nav,
    .hd-masthead__aside,
    .hd-footer,
    .hd-share,
    .hd-sidebar { display: none !important; }  /* .hd-sidebar: kenar çubuğu sarmalayıcısı (yalnızca yazdırmada gizlenir) */

    body { color: #000; }
    .hd-masthead { border: 0; padding: 0 0 1rem; }
    .article-content { max-width: none; font-size: 11pt; }
    .article-content a::after { content: " (" attr(href) ")"; font-size: 0.85em; color: #444; }
}

/* === Sözlük === */
.hd-sozluk {
    min-width: 0;
}

.hd-sozluk__credit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hd-space-2) var(--hd-space-3);
    margin-top: var(--hd-space-4);
}

.hd-sozluk__credit-badge,
.hd-sozluk__credit-count {
    display: inline-flex;
    align-items: center;
    gap: var(--hd-space-2);
    min-height: 2.25rem;
    padding: var(--hd-space-1) var(--hd-space-3);
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    line-height: var(--hd-lh-snug);
    border-radius: var(--hd-radius);
}

.hd-sozluk__credit-badge {
    background: var(--hd-navy);
    color: var(--hd-on-dark);
}

.hd-sozluk__credit-badge i {
    color: var(--hd-on-dark-accent);
}

.hd-sozluk__credit-count {
    background: var(--hd-bg);
    color: var(--hd-ink);
    border: 1px solid var(--hd-border-strong);
}

.hd-sozluk__credit-count i {
    color: var(--hd-primary);
}

/* Giriş metni ve katkı çağrısı */
.hd-sozluk__intro {
    background: var(--hd-bg);
    border: 1px solid var(--hd-border);
    border-left: 4px solid var(--hd-primary);
    border-radius: var(--hd-radius-lg);
    padding: var(--hd-space-5);
    margin-bottom: var(--hd-space-5);
    box-shadow: var(--hd-shadow-sm);
}

.hd-sozluk__intro-body {
    max-width: var(--hd-measure);
}

.hd-sozluk__intro-p {
    font-size: var(--hd-fs-base);
    line-height: var(--hd-lh-article);
    color: var(--hd-text);
    margin-bottom: var(--hd-space-3);
}

.hd-sozluk__intro-p:last-child {
    margin-bottom: 0;
}

.hd-sozluk__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--hd-space-3);
    margin-top: var(--hd-space-4);
    padding-top: var(--hd-space-4);
    border-top: 1px solid var(--hd-border);
}

.hd-sozluk__cta--standalone {
    background: var(--hd-surface);
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-lg);
    padding: var(--hd-space-4);
    margin-top: 0;
    margin-bottom: var(--hd-space-5);
}

.hd-sozluk__cta-text {
    display: flex;
    align-items: flex-start;
    gap: var(--hd-space-2);
    font-size: var(--hd-fs-sm);
    font-weight: 500;
    color: var(--hd-text-2);
    line-height: var(--hd-lh-base);
}

.hd-sozluk__cta-icon {
    color: var(--hd-primary);
    margin-top: var(--hd-space-1);
    flex-shrink: 0;
}

.hd-sozluk__cta-btn {
    flex-shrink: 0;
    min-height: 2.5rem;
    display: inline-flex;
    align-items: center;
}

@media (min-width: 768px) {
    .hd-sozluk__cta {
        flex-direction: row;
        align-items: center;
    }
}

/* Arama formu */
.hd-sozluk__controls {
    margin-bottom: var(--hd-space-4);
}

.hd-sozluk__search {
    background: var(--hd-surface);
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-lg);
    padding: var(--hd-space-4);
}

.hd-sozluk__search-row {
    display: flex;
    flex-direction: column;
    gap: var(--hd-space-3);
}

.hd-sozluk__search-field {
    flex: 1 1 auto;
    min-width: 0;
}

.hd-sozluk__search-input-wrap {
    position: relative;
}

.hd-sozluk__search-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hd-space-2);
}

.hd-sozluk__search-btn,
.hd-sozluk__reset-btn {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-inline: var(--hd-space-4);
}

@media (min-width: 768px) {
    .hd-sozluk__search-row {
        flex-direction: row;
        align-items: flex-end;
    }

    .hd-sozluk__search-actions {
        flex-shrink: 0;
    }
}

/* A–Z Harf Navigasyonu */
.hd-sozluk__nav-wrap {
    background: var(--hd-bg);
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-lg);
    padding: var(--hd-space-2) var(--hd-space-3);
    margin-bottom: var(--hd-space-5);
    box-shadow: var(--hd-shadow-sm);
    max-width: 100%;
}

.hd-sozluk__nav {
    max-width: 100%;
}

.hd-sozluk__letters {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: var(--hd-space-1);
    margin: 0;
    padding: var(--hd-space-1) 0;
    list-style: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.hd-sozluk__letter-item {
    flex: 0 0 auto;
}

.hd-sozluk__letter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 var(--hd-space-2);
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-sm);
    font-weight: 700;
    line-height: 1;
    color: var(--hd-ink);
    background: var(--hd-surface);
    border: 1px solid var(--hd-border-strong);
    border-radius: var(--hd-radius-sm);
    text-decoration: none;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

a.hd-sozluk__letter:hover {
    background: var(--hd-primary);
    border-color: var(--hd-primary);
    color: var(--hd-on-dark);
    text-decoration: none;
}

.hd-sozluk__letter:focus-visible {
    outline: 3px solid var(--hd-focus);
    outline-offset: 2px;
    z-index: 2;
}

.hd-sozluk__letter.is-active,
.hd-sozluk__letter[aria-current="true"] {
    background: var(--hd-navy);
    border-color: var(--hd-navy);
    color: var(--hd-on-dark);
}

.hd-sozluk__letter.is-disabled,
.hd-sozluk__letter[aria-disabled="true"] {
    color: var(--hd-muted);
    background: transparent;
    border: 1px dashed var(--hd-border-strong);
    opacity: 0.55;
    cursor: not-allowed;
    pointer-events: none;
}

@media (min-width: 992px) {
    .hd-sozluk__nav-wrap {
        position: sticky;
        top: calc(var(--hd-nav-height) + var(--hd-space-2));
        z-index: 1015;
        padding: var(--hd-space-2) var(--hd-space-3);
    }

    .hd-sozluk__letters {
        flex-wrap: wrap;
        justify-content: center;
        overflow-x: visible;
    }
}

/* Filtre durum çubuğu */
.hd-sozluk__status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--hd-space-2) var(--hd-space-4);
    padding: var(--hd-space-3) var(--hd-space-4);
    margin-bottom: var(--hd-space-5);
    background: var(--hd-primary-tint);
    border: 1px solid var(--hd-border-strong);
    border-radius: var(--hd-radius);
    color: var(--hd-ink);
    font-size: var(--hd-fs-sm);
}

.hd-sozluk__status-text {
    color: var(--hd-text);
}

.hd-sozluk__clear {
    flex-shrink: 0;
}

/* Kopyalama bildirimi (aria-live) */
.hd-sozluk__live {
    position: fixed;
    bottom: var(--hd-space-5);
    right: var(--hd-space-5);
    z-index: 1080;
    padding: var(--hd-space-2) var(--hd-space-4);
    background: var(--hd-navy);
    color: var(--hd-on-dark);
    font-size: var(--hd-fs-sm);
    font-weight: 600;
    border-radius: var(--hd-radius);
    box-shadow: var(--hd-shadow-lg);
    opacity: 0;
    pointer-events: none;
    transform: translateY(var(--hd-space-2));
    transition: opacity var(--hd-transition), transform var(--hd-transition);
}

.hd-sozluk__live.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Harf grupları ve kavram kartları */
.hd-sozluk__groups {
    display: flex;
    flex-direction: column;
    gap: var(--hd-space-7);
}

.hd-sozluk__group {
    scroll-margin-top: calc(var(--hd-nav-height) + 5rem);
}

.hd-sozluk__group-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hd-space-3);
    border-top: 3px solid var(--hd-rule);
    padding-top: var(--hd-space-3);
    margin-bottom: var(--hd-space-4);
}

.hd-sozluk__group-title {
    margin: 0;
    display: inline-flex;
    align-items: center;
}

.hd-sozluk__group-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
    height: 2.75rem;
    padding: 0 var(--hd-space-3);
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-xl);
    font-weight: 700;
    line-height: 1;
    color: var(--hd-on-dark);
    background: var(--hd-navy);
    border-radius: var(--hd-radius);
}

.hd-sozluk__group-count {
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-xs);
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--hd-muted);
    background: var(--hd-surface-2);
    padding: var(--hd-space-1) var(--hd-space-3);
    border-radius: var(--hd-radius-sm);
}

.hd-sozluk__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--hd-space-4);
}

@media (min-width: 768px) {
    .hd-sozluk__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.hd-sozluk__card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-width: 0;
    padding: var(--hd-space-4) var(--hd-space-5);
    background: var(--hd-bg);
    border: 1px solid var(--hd-border);
    border-top: 3px solid var(--hd-border-strong);
    border-radius: var(--hd-radius-lg);
    scroll-margin-top: calc(var(--hd-nav-height) + 5.25rem);
    transition: border-color var(--hd-transition), box-shadow var(--hd-transition), background-color var(--hd-transition);
}

.hd-sozluk__card:hover {
    border-color: var(--hd-border-strong);
    border-top-color: var(--hd-primary);
    box-shadow: var(--hd-shadow);
}

.hd-sozluk__card:target {
    background: var(--hd-primary-tint);
    border-color: var(--hd-primary);
    border-top-color: var(--hd-primary);
    box-shadow: var(--hd-shadow);
}

.hd-sozluk__card-head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--hd-space-2) var(--hd-space-3);
    margin-bottom: var(--hd-space-3);
}

.hd-sozluk__term-wrap {
    flex: 1 1 12rem;
    min-width: 0;
}

.hd-sozluk__term {
    min-width: 0;
    font-family: var(--hd-font-serif);
    font-size: var(--hd-fs-lg);
    font-weight: 700;
    line-height: var(--hd-lh-snug);
    color: var(--hd-ink);
    margin: 0;
    overflow-wrap: break-word;
}

.hd-sozluk__contributor {
    margin: var(--hd-space-1) 0 0;
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-xs);
    font-weight: 500;
    line-height: var(--hd-lh-snug);
    color: var(--hd-muted);
    overflow-wrap: break-word;
}

.hd-sozluk__term-link {
    color: inherit;
    text-decoration: none;
}

.hd-sozluk__term-link:hover {
    color: var(--hd-primary);
    text-decoration: underline;
}

.hd-sozluk__term-link:focus-visible {
    outline: 3px solid var(--hd-focus);
    outline-offset: 2px;
    border-radius: var(--hd-radius-sm);
}

.hd-sozluk__term-main {
    color: var(--hd-ink);
    font-weight: 700;
}

.hd-sozluk__term-sep,
.hd-sozluk__term-sub {
    color: var(--hd-muted);
    font-weight: 500;
    font-size: 0.92em;
}

.hd-sozluk__card-actions {
    display: inline-flex;
    align-items: center;
    gap: var(--hd-space-1);
    flex-shrink: 0;
}

.hd-sozluk__permalink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    height: 2rem;
    padding: 0 var(--hd-space-1);
    font-size: var(--hd-fs-xs);
    color: var(--hd-muted);
    background: var(--hd-surface);
    border: 1px solid var(--hd-border);
    border-radius: var(--hd-radius-sm);
    text-decoration: none;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

.hd-sozluk__permalink:hover {
    color: var(--hd-primary);
    border-color: var(--hd-primary);
    background: var(--hd-primary-tint);
}

.hd-sozluk__permalink:focus-visible,
.hd-sozluk__copy-btn:focus-visible {
    outline: 3px solid var(--hd-focus);
    outline-offset: 2px;
}

.hd-sozluk__copy-btn {
    display: inline-flex;
    align-items: center;
    gap: var(--hd-space-1);
    min-height: 2rem;
    padding: var(--hd-space-1) var(--hd-space-2);
    font-family: var(--hd-font-sans);
    font-size: var(--hd-fs-2xs);
    font-weight: 600;
    color: var(--hd-text-2);
    background: var(--hd-surface);
    border: 1px solid var(--hd-border-strong);
    border-radius: var(--hd-radius-sm);
    cursor: pointer;
    transition: background-color var(--hd-transition), color var(--hd-transition), border-color var(--hd-transition);
}

.hd-sozluk__copy-btn:hover {
    color: var(--hd-primary);
    border-color: var(--hd-primary);
    background: var(--hd-primary-tint);
}

.hd-sozluk__copy-btn.is-copied {
    color: var(--hd-on-dark);
    background: var(--hd-success);
    border-color: var(--hd-success);
}

.hd-sozluk__desc {
    margin: 0;
    font-size: var(--hd-fs-base);
    line-height: var(--hd-lh-base);
    color: var(--hd-text-2);
    overflow-wrap: break-word;
}

@media (max-width: 575.98px) {
    .hd-sozluk__intro,
    .hd-sozluk__card {
        padding: var(--hd-space-4);
    }

    .hd-sozluk__live {
        left: var(--hd-space-4);
        right: var(--hd-space-4);
        bottom: var(--hd-space-4);
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hd-sozluk__letter,
    .hd-sozluk__card,
    .hd-sozluk__permalink,
    .hd-sozluk__copy-btn,
    .hd-sozluk__live {
        transition: none !important;
        transform: none !important;
    }
}
