/* =========================================================
   OZD Blog Tema - Ana Stil Dosyası (main.css)
   İSKELET / BAŞLANGIÇ TASARIMI
   ========================================================= */

/* ------------------------------
   Temel Değişkenler
   ------------------------------ */

:root {
    --ozd-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;
    --ozd-font-heading: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

    --ozd-color-bg: #f5f5f7;
    --ozd-color-surface: #ffffff;
    --ozd-color-border: #e2e2e7;
    --ozd-color-border-soft: #efeff3;

    --ozd-color-text: #222222;
    --ozd-color-text-muted: #666666;
    --ozd-color-text-soft: #999999;

    --ozd-color-primary: #1f6feb;
    --ozd-color-primary-dark: #1957b8;
    --ozd-color-primary-soft: #e3edff;

    /* Layout.css'in kullandığı ek renkler */
    --ozd-color-on-primary: #ffffff;
    --ozd-color-chip-bg: #f3f4f6;

    --ozd-radius-sm: 4px;
    --ozd-radius-md: 6px;
    --ozd-radius-lg: 10px;

    --ozd-shadow-soft: 0 1px 3px rgba(15, 23, 42, 0.06);
    --ozd-shadow-medium: 0 4px 12px rgba(15, 23, 42, 0.08);
    --ozd-shadow-soft-strong: 0 8px 20px rgba(15, 23, 42, 0.12);

    --ozd-spacing-xs: 0.5rem;
    --ozd-spacing-sm: 0.75rem;
    --ozd-spacing-md: 1rem;
    --ozd-spacing-lg: 1.5rem;
    --ozd-spacing-xl: 2rem;

    --ozd-max-width: 1100px;
    --ozd-line-height: 1.6;
}

/* ------------------------------
   Temel Yapı & Tipografi
   ------------------------------ */

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--ozd-font-body);
    font-size: 16px;
    line-height: var(--ozd-line-height);
    color: var(--ozd-color-text);
    background-color: var(--ozd-color-bg);
}

/* Global odak stili (erişilebilirlik) */
:focus-visible {
    outline: 2px solid var(--ozd-color-primary);
    outline-offset: 2px;
}

/* Sadece ekran okuyucuya yönelik metin */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Skip link: İçeriğe atla bağlantısı */
.skip-link {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    background-color: #000;
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: var(--ozd-radius-md);
    z-index: 9999;
}

.skip-link:focus-visible {
    left: 1rem;
    top: 1rem;
    width: auto;
    height: auto;
}

/* Hareket azaltma tercihi */
@media (prefers-reduced-motion: reduce) {
    * {
        scroll-behavior: auto !important;
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
    }
}

/* Linkler */
a {
    color: var(--ozd-color-primary);
    text-decoration: none;
    transition: color 0.15s ease, background-color 0.15s ease;
}

a:hover,
a:focus {
    color: var(--ozd-color-primary-dark);
    text-decoration: underline;
}

/* Başlıklar (global) */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--ozd-font-heading);
    margin-top: 0;
    margin-bottom: 0.75rem;
    line-height: 1.3;
    color: #111827;
}

/* Paragraflar (global) */
p {
    margin-top: 0;
    margin-bottom: 1rem;
}

/* Kod blokları (global) */
pre,
code {
    font-family: "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

/* ------------------------------
   İçerik İçi Tipografi
   (yazı gövdesi, sayfa içerikleri)
   ------------------------------ */

.ozd-page__content,
.ozd-post__content,
.entry-content {
    font-size: 1rem;
    line-height: var(--ozd-line-height);
    color: var(--ozd-color-text);
}

/* Başlık skalası içerik içinde */
.ozd-page__content h1,
.ozd-post__content h1,
.entry-content h1 {
    font-size: 2rem;
    margin: 2rem 0 1rem;
}

.ozd-page__content h2,
.ozd-post__content h2,
.entry-content h2 {
    font-size: 1.75rem;
    margin: 1.75rem 0 0.9rem;
}

.ozd-page__content h3,
.ozd-post__content h3,
.entry-content h3 {
    font-size: 1.5rem;
    margin: 1.5rem 0 0.85rem;
}

.ozd-page__content h4,
.ozd-post__content h4,
.entry-content h4 {
    font-size: 1.25rem;
    margin: 1.25rem 0 0.75rem;
}

.ozd-page__content h5,
.ozd-post__content h5,
.entry-content h5 {
    font-size: 1.1rem;
    margin: 1.1rem 0 0.6rem;
}

.ozd-page__content h6,
.ozd-post__content h6,
.entry-content h6 {
    font-size: 1rem;
    margin: 1rem 0 0.5rem;
}

/* Listeler */
.ozd-page__content ul,
.ozd-post__content ul,
.entry-content ul,
.ozd-page__content ol,
.ozd-post__content ol,
.entry-content ol {
    margin: 0 0 1rem 1.5rem;
    padding: 0;
}

.ozd-page__content li,
.ozd-post__content li,
.entry-content li {
    margin-bottom: 0.35rem;
}

/* Blok alıntı */
.ozd-page__content blockquote,
.ozd-post__content blockquote,
.entry-content blockquote {
    margin: 1.5rem 0;
    padding: 0.75rem 1rem;
    border-left: 4px solid var(--ozd-color-border);
    background-color: #f9fafb;
    font-style: italic;
}

/* Kod içi */
.ozd-page__content code,
.ozd-post__content code,
.entry-content code {
    font-size: 0.95em;
    padding: 0.1em 0.25em;
    background: #f5f5f5;
    border-radius: 3px;
}

/* Kod blokları */
.ozd-page__content pre,
.ozd-post__content pre,
.entry-content pre {
    font-size: 0.95em;
    padding: 1rem;
    background: #f5f5f5;
    overflow-x: auto;
    border-radius: 4px;
}

/* Tablolar */
.ozd-page__content table,
.ozd-post__content table,
.entry-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    font-size: 0.95rem;
}

.ozd-page__content th,
.ozd-post__content th,
.entry-content th,
.ozd-page__content td,
.ozd-post__content td,
.entry-content td {
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--ozd-color-border-soft);
}

.ozd-page__content thead th,
.ozd-post__content thead th,
.entry-content thead th {
    background: #f1f5f9;
    font-weight: 600;
}

/* Görsel + başlık */
.ozd-page__content figure,
.ozd-post__content figure,
.entry-content figure {
    margin: 1.5rem 0;
    text-align: center;
}

.ozd-page__content figcaption,
.ozd-post__content figcaption,
.entry-content figcaption {
    font-size: 0.9rem;
    color: var(--ozd-color-text-muted);
    margin-top: 0.5rem;
}

/* Yatay çizgi */
.ozd-page__content hr,
.ozd-post__content hr,
.entry-content hr {
    border: 0;
    border-top: 1px solid var(--ozd-color-border-soft);
    margin: 2rem 0;
}

/* =========================================================
   Hakkımızda Sayfası
   ========================================================= */

.site-main--about .ozd-page__inner {
    max-width: 820px;
    margin: 0 auto;
}

.ozd-about__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-about__title {
    font-size: 2rem;
    margin-bottom: 0.25rem;
}

.ozd-about__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: var(--ozd-color-text-muted);
}

/* İçerik zaten .ozd-page__content tipografisine bağlı */
.site-main--about .ozd-page__content {
    font-size: 1.02rem;
    line-height: 1.7;
}

/* =========================================================
   SSS Sayfası (genel düzen)
   ========================================================= */

.site-main--faq .ozd-page__inner {
    max-width: 820px;
    margin: 0 auto;
}

.ozd-faq__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-faq__title {
    font-size: 1.9rem;
    margin-bottom: 0.25rem;
}

.ozd-faq__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: var(--ozd-color-text-muted);
}

.site-main--faq .ozd-page__content {
    font-size: 1.02rem;
    line-height: 1.7;
}

/* =========================================================
   SSS Akordeon (details/summary ile aç/kapa)
   ========================================================= */

.ozd-faq-accordion {
    display: flex;
    flex-direction: column;
    gap: var(--ozd-spacing-sm);
    margin-top: var(--ozd-spacing-md);
}

/* Her soru-cevap bloğu */
.ozd-faq-accordion details {
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border-soft);
    background-color: var(--ozd-color-surface);
    box-shadow: var(--ozd-shadow-soft);
    padding: 0;
    overflow: hidden;
}

/* Soru satırı */
.ozd-faq-accordion summary {
    list-style: none;
    cursor: pointer;
    padding: var(--ozd-spacing-sm) var(--ozd-spacing-md);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ozd-spacing-sm);
}

.ozd-faq-accordion summary::-webkit-details-marker {
    display: none;
}

/* Soru metni */
.ozd-faq-accordion .ozd-faq-question {
    margin: 0;
    font-size: 0.98rem;
}

/* Artı/eksi sembolü (pure CSS) */
.ozd-faq-accordion summary::after {
    content: "+";
    font-weight: 700;
    font-size: 1rem;
    color: var(--ozd-color-text-soft);
}

.ozd-faq-accordion details[open] summary::after {
    content: "–";
}

/* Hover / klavye odak */
.ozd-faq-accordion summary:hover,
.ozd-faq-accordion summary:focus-visible {
    background-color: var(--ozd-color-primary-soft);
}

/* Cevap alanı */
.ozd-faq-accordion .ozd-faq-answer {
    padding: 0 var(--ozd-spacing-md) var(--ozd-spacing-sm);
    border-top: 1px solid var(--ozd-color-border-soft);
    font-size: 0.95rem;
    color: var(--ozd-color-text);
}

.ozd-faq-accordion .ozd-faq-answer p {
    margin: 0.5rem 0 0.5rem;
}

/* Dark mode uyumu */
.ozd-dark-mode .ozd-faq-accordion details {
    background-color: #020617;
    border-color: var(--ozd-color-border);
    box-shadow: none;
}

.ozd-dark-mode .ozd-faq-accordion summary:hover,
.ozd-dark-mode .ozd-faq-accordion summary:focus-visible {
    background-color: var(--ozd-color-primary-soft);
}

/* =========================================================
   Gizlilik Politikası Sayfası
   ========================================================= */

.site-main--privacy-policy .ozd-page__inner {
    max-width: 820px;
    margin: 0 auto;
}

.ozd-privacy__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-privacy__title {
    font-size: 1.9rem;
    margin-bottom: 0.25rem;
}

.ozd-privacy__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: var(--ozd-color-text-muted);
}

/* Uzun yasal metin için biraz daha rahat tipografi */

.ozd-privacy__content {
    font-size: 0.98rem;
    line-height: 1.75;
}

/* Başlık aralıkları (politikada çok h2/h3 olur) */

.ozd-privacy__content h2 {
    font-size: 1.2rem;
    margin-top: var(--ozd-spacing-lg);
    margin-bottom: var(--ozd-spacing-xs);
}

.ozd-privacy__content h3 {
    font-size: 1.05rem;
    margin-top: var(--ozd-spacing-md);
    margin-bottom: 0.3rem;
}

/* Paragraflar */

.ozd-privacy__content p {
    margin: 0 0 0.75rem;
}

/* Listeler (madde madde maddeler okunaklı olsun) */

.ozd-privacy__content ul,
.ozd-privacy__content ol {
    padding-left: 1.25rem;
    margin: 0 0 0.9rem;
}

.ozd-privacy__content li {
    margin-bottom: 0.25rem;
}

/* Küçük ekranlarda boşlukları biraz sıkıştır */

@media (max-width: 600px) {
    .ozd-privacy__title {
        font-size: 1.6rem;
    }

    .ozd-privacy__content {
        font-size: 0.95rem;
        line-height: 1.7;
    }
}

/* =========================================================
   Kullanım Sözleşmesi Sayfası
   ========================================================= */

.site-main--terms .ozd-page__inner {
    max-width: 820px;
    margin: 0 auto;
}

.ozd-terms__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-terms__title {
    font-size: 1.9rem;
    margin-bottom: 0.25rem;
}

.ozd-terms__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: var(--ozd-color-text-muted);
}

/* Uzun sözleşme metni için rahat tipografi */

.ozd-terms__content {
    font-size: 0.98rem;
    line-height: 1.75;
}

/* Başlık hiyerarşisi */

.ozd-terms__content h2 {
    font-size: 1.2rem;
    margin-top: var(--ozd-spacing-lg);
    margin-bottom: var(--ozd-spacing-xs);
}

.ozd-terms__content h3 {
    font-size: 1.05rem;
    margin-top: var(--ozd-spacing-md);
    margin-bottom: 0.3rem;
}

/* Paragraflar */

.ozd-terms__content p {
    margin: 0 0 0.75rem;
}

/* Listeler */

.ozd-terms__content ul,
.ozd-terms__content ol {
    padding-left: 1.25rem;
    margin: 0 0 0.9rem;
}

.ozd-terms__content li {
    margin-bottom: 0.25rem;
}

/* Küçük ekranlarda biraz sıkıştır */

@media (max-width: 600px) {
    .ozd-terms__title {
        font-size: 1.6rem;
    }

    .ozd-terms__content {
        font-size: 0.95rem;
        line-height: 1.7;
    }
}

/* ------------------------------
   Form Seti (genel)
   ------------------------------ */

/* Form grupları */
.ozd-form-group {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-form-label {
    display: inline-block;
    margin-bottom: 0.35rem;
    font-weight: 600;
}

/* Genel input/select/textarea görünümü */
.ozd-form-control,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="time"],
select,
textarea {
    width: 100%;
    max-width: 100%;
    padding: 0.5rem 0.75rem;
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border);
    font: inherit;
    line-height: 1.4;
    color: var(--ozd-color-text);
    background-color: var(--ozd-color-surface);
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        background-color 0.15s ease;
}

/* Hover */
.ozd-form-control:hover,
input[type="text"]:hover,
input[type="email"]:hover,
input[type="url"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="number"]:hover,
input[type="tel"]:hover,
input[type="date"]:hover,
input[type="time"]:hover,
select:hover,
textarea:hover {
    border-color: #cbd5f5;
}

/* Focus (erişilebilir) */
.ozd-form-control:focus-visible,
input[type="text"]:focus-visible,
input[type="email"]:focus-visible,
input[type="url"]:focus-visible,
input[type="password"]:focus-visible,
input[type="search"]:focus-visible,
input[type="number"]:focus-visible,
input[type="tel"]:focus-visible,
input[type="date"]:focus-visible,
input[type="time"]:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid transparent;
    border-color: var(--ozd-color-primary);
    box-shadow: 0 0 0 2px var(--ozd-color-primary-soft);
    background-color: #ffffff;
}

/* Textarea */
textarea,
textarea.ozd-form-control {
    min-height: 120px;
    resize: vertical;
}

/* Checkbox & radio grupları */
.ozd-form-check {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}

.ozd-form-check-input {
    width: 1rem;
    height: 1rem;
}

.ozd-form-check-label {
    font-size: 0.95rem;
}

/* Butonlar */
.ozd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.2rem;
    border-radius: var(--ozd-radius-md);
    border: none;
    font: inherit;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.2;
    gap: 0.35rem;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        color 0.15s ease;
}

.ozd-btn-primary {
    background-color: var(--ozd-color-primary);
    color: #ffffff;
}

.ozd-btn-primary:hover,
.ozd-btn-primary:focus-visible {
    background-color: var(--ozd-color-primary-dark);
}

/* Yardım ve hata metinleri */
.ozd-form-help {
    font-size: 0.85rem;
    color: var(--ozd-color-text-muted);
    margin-top: 0.25rem;
}

.ozd-form-error {
    font-size: 0.85rem;
    color: #b00020;
    margin-top: 0.25rem;
}

/* Hatalı alan */
.is-invalid,
.ozd-form-control.is-invalid {
    border-color: #b00020;
}

.is-invalid:focus-visible,
.ozd-form-control.is-invalid:focus-visible {
    box-shadow: 0 0 0 2px rgba(176, 0, 32, 0.25);
}

/* ------------------------------
   Ana Yerleşim
   (Layout iskeleti layout.css'te; burada sadece temel genişlik)
   ------------------------------ */

.site-main {
    max-width: var(--ozd-max-width);
    margin: 0 auto;
    padding: var(--ozd-spacing-xl) var(--ozd-spacing-md);
}

/* Layout: fullwidth / sağ sidebar / sol sidebar
   body_class filtresi ile gelen:
   - layout-fullwidth
   - layout-right-sidebar
   - layout-left-sidebar
*/

/* Tam genişlik (sidebar yok) */
.layout-fullwidth .site-content {
    max-width: var(--ozd-max-width);
    margin: 0 auto;
    padding: var(--ozd-spacing-xl) var(--ozd-spacing-md);
}

/* Sidebar'lı layoutlar: içerik + sidebar yan yana */
.layout-right-sidebar .site-content,
.layout-left-sidebar .site-content {
    max-width: var(--ozd-max-width);
    margin: 0 auto;
    padding: var(--ozd-spacing-xl) var(--ozd-spacing-md);
    display: flex;
    flex-wrap: nowrap;
    gap: var(--ozd-spacing-xl);
}

/* Sidebar'lı layoutlarda ana içerik alanı */
.layout-right-sidebar .site-main,
.layout-left-sidebar .site-main {
    flex: 1 1 0;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

/* Sidebar genişliği */
.layout-right-sidebar .sidebar,
.layout-left-sidebar .sidebar {
    flex: 0 0 280px;
}

/* Sol sidebar: görünümde sidebar solda olsun */
.layout-left-sidebar .site-content {
    flex-direction: row-reverse;
}

/* Küçük ekranlarda: hepsi alt alta gelsin */
@media (max-width: 768px) {
    .layout-right-sidebar .site-content,
    .layout-left-sidebar .site-content {
        flex-direction: column;
        padding: var(--ozd-spacing-lg) var(--ozd-spacing-md);
    }

    .layout-right-sidebar .sidebar,
    .layout-left-sidebar .sidebar {
        flex: 1 1 auto;
    }

    .layout-right-sidebar .site-main,
    .layout-left-sidebar .site-main {
        margin-bottom: var(--ozd-spacing-lg);
    }
}

/* ------------------------------
   Sayfa başlık alanları (archive, search, 404 vb.)
   ------------------------------ */

.page-header {
    margin-bottom: var(--ozd-spacing-lg);
    padding-bottom: var(--ozd-spacing-sm);
    border-bottom: 1px solid var(--ozd-color-border-soft);
}

.page-title {
    font-size: 1.5rem;
    margin: 0;
}

/* Arşiv açıklaması */
.archive-description {
    margin-top: var(--ozd-spacing-sm);
    color: var(--ozd-color-text-muted);
    font-size: 0.95rem;
}

/* ------------------------------
   Sayfa Görünümü
   .ozd-page
   ------------------------------ */

.ozd-page {
    background-color: var(--ozd-color-surface);
    border-radius: var(--ozd-radius-lg);
    border: 1px solid var(--ozd-color-border-soft);
    box-shadow: var(--ozd-shadow-soft);
    margin-bottom: var(--ozd-spacing-xl);
}

.ozd-page__inner {
    padding: var(--ozd-spacing-lg);
}

.ozd-page__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-page__title {
    font-size: 1.8rem;
    margin: 0;
}

/* Yukarıda tipografi bölümünde içerik için geniş kurallar var */
.ozd-page__content {
    /* Özelleştirme gerekiyorsa buraya ek kurallar yazılabilir */
}

/* ------------------------------
   İçerik Yok Şablonu
   .ozd-no-content
   ------------------------------ */

.ozd-no-content {
    background-color: var(--ozd-color-surface);
    border-radius: var(--ozd-radius-lg);
    border: 1px solid var(--ozd-color-border-soft);
    padding: var(--ozd-spacing-lg);
    text-align: left;
    box-shadow: var(--ozd-shadow-soft);
}

.ozd-no-content__title {
    font-size: 1.4rem;
    margin-bottom: var(--ozd-spacing-sm);
}

.ozd-no-content__body {
    color: var(--ozd-color-text-muted);
    font-size: 0.95rem;
}

/* ------------------------------
   Arama Formu (genel)
   ------------------------------ */

.search-form {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.5rem;
    margin: var(--ozd-spacing-md) 0;
}

/* Arama alanı: form seti ile uyumlu */
.search-form .search-field {
    flex: 1;
}

/* .ozd-form-control ile aynı görünümü ver */
.search-form .search-field {
    padding: 0.5rem 0.75rem;
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border);
    font-size: 0.95rem;
    background-color: var(--ozd-color-surface);
}

.search-form .search-field:focus-visible {
    outline: 2px solid transparent;
    border-color: var(--ozd-color-primary);
    box-shadow: 0 0 0 2px var(--ozd-color-primary-soft);
    background-color: #ffffff;
}

/* Arama butonu: .ozd-btn-primary ile uyumlu */
.search-form .search-submit {
    padding: 0.5rem 0.9rem;
    border-radius: var(--ozd-radius-md);
    border: none;
    background-color: var(--ozd-color-primary);
    color: #ffffff;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.search-form .search-submit:hover,
.search-form .search-submit:focus-visible {
    background-color: var(--ozd-color-primary-dark);
}

/* ------------------------------
   404 Sayfası
   .error-404
   ------------------------------ */

.error-404.not-found {
    background-color: var(--ozd-color-surface);
    border-radius: var(--ozd-radius-lg);
    border: 1px solid var(--ozd-color-border-soft);
    padding: var(--ozd-spacing-lg);
    box-shadow: var(--ozd-shadow-soft);
}

.error-404 .page-title {
    font-size: 1.6rem;
}

.error-404 .page-content {
    margin-top: var(--ozd-spacing-md);
}

.popular-categories {
    margin-top: var(--ozd-spacing-lg);
}

.popular-categories h3 {
    font-size: 1.05rem;
    margin-bottom: var(--ozd-spacing-xs);
}

.popular-categories ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.popular-categories li {
    margin-bottom: 0.25rem;
}

/* ------------------------------
   Sidebar ve Widget'lar
   ------------------------------ */

/* Sidebar kap: aside.sidebar (includes/sidebar.php) */
.sidebar {
    align-self: flex-start;
}

/* Widget kartları */
.widget {
    margin-bottom: var(--ozd-spacing-lg);
    padding: var(--ozd-spacing-md);
    background-color: var(--ozd-color-surface);
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border-soft);
    box-shadow: var(--ozd-shadow-soft);
}

.widget-title {
    font-size: 1.05rem;
    margin-bottom: var(--ozd-spacing-sm);
    border-bottom: 1px solid var(--ozd-color-border-soft);
    padding-bottom: 0.25rem;
}

/* Renkli kategori linkleri (özel bileşen) */
.ozd-colored-category-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.ozd-colored-category-icon i {
    font-size: 0.85rem;
}

/* ------------------------------
   Sayfalama
   the_posts_pagination çıktısı
   ------------------------------ */

.navigation.pagination {
    margin-top: var(--ozd-spacing-lg);
    text-align: center;
}

.navigation.pagination .nav-links {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.navigation.pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.1rem;
    height: 2.1rem;
    padding: 0 0.6rem;
    font-size: 0.9rem;
    border-radius: 999px;
    border: 1px solid var(--ozd-color-border);
    background-color: #ffffff;
    color: var(--ozd-color-text);
}

.navigation.pagination .page-numbers.current {
    background-color: var(--ozd-color-primary);
    border-color: var(--ozd-color-primary);
    color: #ffffff;
    font-weight: 600;
}

.navigation.pagination .page-numbers:hover,
.navigation.pagination .page-numbers:focus-visible {
    border-color: var(--ozd-color-primary);
}

/* ------------------------------
   Yorum Alanı (temel)
   ------------------------------ */

.comments-area {
    margin-top: var(--ozd-spacing-xl);
    padding-top: var(--ozd-spacing-lg);
    border-top: 1px solid var(--ozd-color-border-soft);
}

.comments-title {
    font-size: 1.2rem;
    margin-bottom: var(--ozd-spacing-md);
}

/* =========================================================
   FULLWIDTH SAYFA ŞABLONU
   page-fullwidth.php için özel stiller
   ========================================================= */

/* Sidebar tamamen devre dışı */
.page-template-page-fullwidth .sidebar,
.page-template-page-fullwidth #secondary {
    display: none !important;
}

/* Ana içerik konteyneri tam genişlikte */
.page-template-page-fullwidth #primary.site-main {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: var(--ozd-spacing-xl) var(--ozd-spacing-lg);
    background-color: var(--ozd-color-surface);
    border: 1px solid var(--ozd-color-border-soft);
    border-radius: var(--ozd-radius-lg);
    box-shadow: var(--ozd-shadow-soft);
}

/* İçerik iç boşluk düzeni */
.page-template-page-fullwidth .ozd-page,
.page-template-page-fullwidth .ozd-post--single {
    padding: calc(var(--ozd-spacing-xl) * 1.2) calc(var(--ozd-spacing-xl) * 1.2);
}

/* Başlıkları biraz daha geniş göster */
.page-template-page-fullwidth .ozd-page__title,
.page-template-page-fullwidth .ozd-entry-header__title {
    font-size: 2.2rem;
    margin-bottom: var(--ozd-spacing-md);
    text-align: center;
}

/* İçerik okuyucu odaklı */
.page-template-page-fullwidth .ozd-page__content,
.page-template-page-fullwidth .ozd-post__content {
    font-size: 1.05rem;
    line-height: 1.75;
    max-width: 820px;
    margin: 0 auto;
}

/* Mobil uyum */
@media (max-width: 768px) {
    .page-template-page-fullwidth #primary.site-main {
        padding: var(--ozd-spacing-md);
        border-radius: 0;
    }

    .page-template-page-fullwidth .ozd-page__title,
    .page-template-page-fullwidth .ozd-entry-header__title {
        font-size: 1.6rem;
    }
}

/* =========================================================
   Dark Mode Değerleri
   body.ozd-dark-mode altında değişkenleri override eder
   ========================================================= */

.ozd-dark-mode {
    --ozd-color-bg: #020617;           /* Arka plan: çok koyu lacivert/grimsi */
    --ozd-color-surface: #0b1120;      /* Kart arka planları */
    --ozd-color-border: #1f2937;       /* Çizgiler */
    --ozd-color-border-soft: #111827;  /* Yumuşak çizgiler */

    --ozd-color-text: #e5e7eb;         /* Ana metin */
    --ozd-color-text-muted: #9ca3af;   /* İkincil metin */
    --ozd-color-text-soft: #6b7280;    /* Daha soluk metin */

    --ozd-color-primary: #60a5fa;      /* Vurgu rengi */
    --ozd-color-primary-dark: #3b82f6;
    --ozd-color-primary-soft: rgba(96, 165, 250, 0.12);
}

/* Dark mode için gövde arka planı ve metin */
.ozd-dark-mode body,
body.ozd-dark-mode {
    background-color: var(--ozd-color-bg);
    color: var(--ozd-color-text);
}

/* Kartlar, sayfalar, widgetler koyu yüzeyde görünsün */
.ozd-dark-mode .ozd-post,
.ozd-dark-mode .ozd-page,
.ozd-dark-mode .widget,
.ozd-dark-mode .ozd-no-content,
.ozd-dark-mode .comments-area,
.ozd-dark-mode .footer-widget,
.ozd-dark-mode .site-footer,
.ozd-dark-mode .site-header {
    background-color: var(--ozd-color-surface);
    border-color: var(--ozd-color-border);
    box-shadow: none;
}

/* İçerik içi tipografi koyu mod uyumu */
.ozd-dark-mode .ozd-page__content,
.ozd-dark-mode .ozd-post__content,
.ozd-dark-mode .entry-content {
    color: var(--ozd-color-text);
}

.ozd-dark-mode .ozd-page__content blockquote,
.ozd-dark-mode .ozd-post__content blockquote,
.ozd-dark-mode .entry-content blockquote {
    background-color: #020617;
    border-left-color: var(--ozd-color-border);
}

.ozd-dark-mode .ozd-page__content code,
.ozd-dark-mode .ozd-post__content code,
.ozd-dark-mode .entry-content code,
.ozd-dark-mode .ozd-page__content pre,
.ozd-dark-mode .ozd-post__content pre,
.ozd-dark-mode .entry-content pre {
    background-color: #020617;
}

/* Formlar koyu mod uyumu */
.ozd-dark-mode input[type="text"],
.ozd-dark-mode input[type="email"],
.ozd-dark-mode input[type="url"],
.ozd-dark-mode input[type="password"],
.ozd-dark-mode input[type="search"],
.ozd-dark-mode input[type="number"],
.ozd-dark-mode input[type="tel"],
.ozd-dark-mode input[type="date"],
.ozd-dark-mode input[type="time"],
.ozd-dark-mode select,
.ozd-dark-mode textarea,
.ozd-dark-mode .ozd-form-control,
.ozd-dark-mode .search-form .search-field {
    background-color: #020617;
    border-color: var(--ozd-color-border);
    color: var(--ozd-color-text);
}

.ozd-dark-mode ::placeholder {
    color: var(--ozd-color-text-soft);
}

/* Linkler */
.ozd-dark-mode a {
    color: var(--ozd-color-primary);
}

.ozd-dark-mode a:hover,
.ozd-dark-mode a:focus {
    color: var(--ozd-color-primary-dark);
}

/* Meta, yumuşak metinler */
.ozd-dark-mode .ozd-entry-meta,
.ozd-dark-mode .ozd-post__meta-top,
.ozd-dark-mode .widget .widget-title,
.ozd-dark-mode .site-info,
.ozd-dark-mode .archive-description {
    color: var(--ozd-color-text-muted);
}

/* Sayfalama */
.ozd-dark-mode .navigation.pagination .page-numbers {
    background-color: #020617;
    border-color: var(--ozd-color-border);
    color: var(--ozd-color-text);
}

.ozd-dark-mode .navigation.pagination .page-numbers.current {
    background-color: var(--ozd-color-primary);
    border-color: var(--ozd-color-primary);
    color: #0b1120;
}

/* Dark mode toggle butonu genel stil */
.ozd-dark-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    border: 1px solid var(--ozd-color-border);
    background-color: var(--ozd-color-surface);
    color: var(--ozd-color-text-muted);
    font-size: 0.85rem;
    cursor: pointer;
    gap: 0.35rem;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        color 0.15s ease,
        box-shadow 0.15s ease;
}

/* Hover + klavye odak */
.ozd-dark-toggle:hover,
.ozd-dark-toggle:focus-visible {
    background-color: var(--ozd-color-primary-soft);
    border-color: var(--ozd-color-primary);
    color: var(--ozd-color-primary);
    box-shadow: var(--ozd-shadow-soft);
    outline: none;
}

/* Aktifken */
.ozd-dark-toggle[aria-pressed="true"] {
    background-color: var(--ozd-color-primary);
    border-color: var(--ozd-color-primary-dark);
    color: #0b1120;
}

/* İçindeki simge gibi davranacak span */
.ozd-dark-toggle__icon {
    font-size: 0.9rem;
}

/* Küçük ekranlarda butonun biraz daha ufak durması için */
@media (max-width: 600px) {
    .ozd-dark-toggle {
        padding: 0.3rem 0.7rem;
        font-size: 0.8rem;
    }
}

/* =========================================================
   FORM GENEL SETİ
   ========================================================= */

.ozd-form {
    display: flex;
    flex-direction: column;
    gap: var(--ozd-spacing-sm);
}

.ozd-form-group {
    margin-bottom: var(--ozd-spacing-sm);
}

.ozd-form-group--inline {
    margin-top: var(--ozd-spacing-sm);
}

.ozd-form-label {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--ozd-color-text);
}

.ozd-form-control {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border);
    background-color: #ffffff;
    font-family: inherit;
    font-size: 0.95rem;
    line-height: 1.4;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        background-color 0.15s ease;
}

.ozd-form-control--textarea {
    resize: vertical;
    min-height: 150px;
}

.ozd-form-control:focus-visible {
    outline: 2px solid var(--ozd-color-primary);
    outline-offset: 2px;
    border-color: var(--ozd-color-primary);
    background-color: #ffffff;
    box-shadow: 0 0 0 1px rgba(31, 111, 235, 0.15);
}

/* Hata durumları için hazır sınıflar */

.ozd-form-control--error {
    border-color: #dc2626;
}

.ozd-form-error {
    margin-top: 0.2rem;
    font-size: 0.8rem;
    color: #b91c1c;
}

/* Yardım metni */

.ozd-form-help {
    margin-top: 0.15rem;
    font-size: 0.8rem;
    color: var(--ozd-color-text-soft);
}

/* Checkbox yapısı */

.ozd-form-checkbox {
    display: inline-flex;
    align-items: flex-start;
    gap: 0.4rem;
    font-size: 0.9rem;
    cursor: pointer;
}

.ozd-form-checkbox input[type="checkbox"] {
    margin-top: 0.15rem;
}

.ozd-form-checkbox__label {
    line-height: 1.4;
}

/* Buton seti */

.ozd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1.1rem;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.2;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        color 0.15s ease,
        box-shadow 0.15s ease;
}

.ozd-btn-primary {
    background-color: var(--ozd-color-primary);
    border-color: var(--ozd-color-primary-dark);
    color: #ffffff;
}

.ozd-btn-primary:hover,
.ozd-btn-primary:focus-visible {
    background-color: var(--ozd-color-primary-dark);
    border-color: var(--ozd-color-primary-dark);
    color: #ffffff;
    box-shadow: var(--ozd-shadow-soft);
}

/* =========================================================
   FORM UYARI MESAJLARI (BAŞARILI / HATALI)
   ========================================================= */

.ozd-form-notice {
    padding: 0.6rem 0.8rem;
    border-radius: var(--ozd-radius-md);
    font-size: 0.9rem;
    margin-bottom: var(--ozd-spacing-sm);
}

.ozd-form-notice--success {
    background-color: #ecfdf3;
    border: 1px solid #16a34a;
    color: #166534;
}

.ozd-form-notice--error {
    background-color: #fef2f2;
    border: 1px solid #dc2626;
    color: #b91c1c;
}

.ozd-form-notice--error ul {
    margin: 0;
    padding-left: 1.2rem;
    font-size: 0.9rem;
}

/* =========================================================
   İLETİŞİM SAYFASI DÜZENİ
   ========================================================= */

.site-main--contact .ozd-page__inner {
    max-width: 980px;
    margin: 0 auto;
}

.ozd-contact__header {
    margin-bottom: var(--ozd-spacing-md);
}

.ozd-contact__title {
    font-size: 1.9rem;
    margin-bottom: 0.25rem;
}

.ozd-contact__subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: var(--ozd-color-text-muted);
}

/* İçerik + form düzeni (2 sütun) */

.ozd-contact__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
    gap: var(--ozd-spacing-xl);
    align-items: flex-start;
    margin-top: var(--ozd-spacing-md);
}

.ozd-contact__content .ozd-page__content {
    font-size: 0.98rem;
    line-height: 1.7;
}

.ozd-contact__form-section {
    background-color: var(--ozd-color-surface);
    border-radius: var(--ozd-radius-md);
    border: 1px solid var(--ozd-color-border-soft);
    box-shadow: var(--ozd-shadow-soft);
    padding: var(--ozd-spacing-md);
}

/* Küçük ekranlarda alt alta gelsin */

@media (max-width: 900px) {
    .ozd-contact__layout {
        grid-template-columns: 1fr;
        gap: var(--ozd-spacing-lg);
    }
}

/* =========================================================
   DARK MODE UYUMLARI (İLETİŞİM + FORM)
   ========================================================= */

.ozd-dark-mode .ozd-contact__form-section {
    background-color: var(--ozd-color-surface);
    border-color: var(--ozd-color-border);
    box-shadow: none;
}

.ozd-dark-mode .ozd-form-control {
    background-color: #020617;
    border-color: var(--ozd-color-border);
    color: var(--ozd-color-text);
}

.ozd-dark-mode .ozd-form-control:focus-visible {
    background-color: #020617;
}

.ozd-dark-mode .ozd-form-help {
    color: var(--ozd-color-text-soft);
}

.ozd-dark-mode .ozd-form-notice--success {
    background-color: rgba(22, 163, 74, 0.15);
    border-color: #16a34a;
    color: #bbf7d0;
}

.ozd-dark-mode .ozd-form-notice--error {
    background-color: rgba(220, 38, 38, 0.15);
    border-color: #dc2626;
    color: #fecaca;
}
