/* ============================================================
   Shared site footer (rich) — used on every page via
   partials/site-footer.blade.php. Self-contained: brings the
   tokens it needs and uses !important so it wins over each
   page's own stylesheet (homepage-v2 / tiartz-* / build).
   ============================================================ */
:root {
    --rd-bg:           #FAFAFA;
    --rd-surface:      #FFFFFF;
    --rd-surface-2:    #F4F4F5;
    --rd-border:       #E5E5E5;
    --rd-ink-900:      #0A0A0A;
    --rd-ink-700:      #262626;
    --rd-ink-500:      #525252;
    --rd-accent:       #0E9F6E;
    --rd-font-display: 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
    --rd-r-md:         12px;
    --rd-r-pill:       999px;
    --rd-ease:         cubic-bezier(0.22, 0.61, 0.36, 1);
}

body footer { background: var(--rd-bg) !important; border-top: 1px solid var(--rd-border) !important; }
body footer .footer--top,
body .footer--top {
    background: var(--rd-surface) !important;
    background-image: none !important;
    border-bottom: 1px solid var(--rd-border) !important;
    padding: 28px 0 !important;
}
body footer .footer--top .container,
body footer .footer--content .container {
    width: min(100% - 48px, 1224px) !important;
    margin-inline: auto !important;
}
body .footer--top .top--content {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 24px !important;
}
body .footer--top .top--content .text strong {
    color: var(--rd-ink-900) !important;
    font: 600 1rem var(--rd-font-display) !important;
    letter-spacing: -0.01em !important;
}
body .footer--top .top--content .text span {
    color: var(--rd-ink-500) !important;
    font-size: 0.9rem !important;
}
body .footer--top .top--content a {
    background: var(--rd-ink-900) !important;
    color: #fff !important;
    padding: 12px 22px !important;
    border-radius: var(--rd-r-pill) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all .2s var(--rd-ease) !important;
}
body .footer--top .top--content a:hover { background: var(--rd-accent) !important; }
body .footer--top .top--content a svg { width: 14px !important; height: 14px !important; }

/* Main footer content */
body footer .footer--content { background: var(--rd-surface) !important; color: var(--rd-ink-700) !important; padding: 56px 0 !important; }
body footer .content--area { display: grid !important; grid-template-columns: 1.2fr 2fr !important; gap: 48px !important; }
body footer .content--left {
    display: block !important;
    align-items: flex-start !important;
    background: transparent !important;
    color: var(--rd-ink-700) !important;
    padding: 0 !important;
    text-align: left !important;
}
body footer .content--left ul { align-items: flex-start !important; }
body footer .content--left .footer--logo { display: inline-block !important; margin-bottom: 6px !important; text-decoration: none !important; }
body footer .content--left .footer-logo-text { color: var(--rd-accent) !important; font: 800 1.3rem var(--rd-font-display) !important; }
body footer .content--left strong { color: var(--rd-ink-900) !important; font: 600 1.05rem var(--rd-font-display) !important; display: block !important; margin: 18px 0 0 !important; padding: 0 !important; text-align: left !important; }
body footer .content--left p { color: var(--rd-ink-500) !important; font-size: 0.92rem !important; margin: 4px 0 18px !important; padding: 0 !important; text-align: left !important; }
body footer .content--left ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 8px !important; }
body footer .content--left ul li a {
    background: var(--rd-surface-2) !important;
    color: var(--rd-ink-900) !important;
    padding: 10px 14px !important;
    border-radius: var(--rd-r-md) !important;
    display: inline-flex !important; align-items: center !important; gap: 8px !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    width: fit-content !important;
    transition: all .15s var(--rd-ease) !important;
}
body footer .content--left ul li a:hover { background: var(--rd-ink-900) !important; color: #fff !important; }
body footer .content--left ul li a svg { color: var(--rd-accent) !important; width: 16px !important; height: 16px !important; flex-shrink: 0 !important; }

body footer .content--links { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 24px !important; }
body footer .content--links ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
body footer .content--links ul li:first-child {
    color: var(--rd-ink-900) !important;
    font: 600 0.95rem var(--rd-font-display) !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 12px !important;
}
body footer .content--links ul li { color: var(--rd-ink-500) !important; font-size: 0.9rem !important; margin-bottom: 8px !important; }
body footer .content--links ul li a {
    color: var(--rd-ink-500) !important;
    text-decoration: none !important;
    transition: color .15s var(--rd-ease) !important;
}
body footer .content--links ul li a:hover { color: var(--rd-ink-900) !important; }

/* Legal bottom bar */
body footer .footer--legal { background: var(--rd-surface) !important; border-top: 1px solid var(--rd-border) !important; padding: 18px 0 !important; }
body footer .footer--legal-inner { width: min(100% - 48px, 1224px) !important; margin-inline: auto !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 16px !important; flex-wrap: wrap !important; }
body footer .footer--legal-links { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-wrap: wrap !important; gap: 8px 20px !important; }
body footer .footer--legal-links li { margin: 0 !important; }
body footer .footer--legal-links a { color: var(--rd-ink-500) !important; font-size: 0.85rem !important; text-decoration: none !important; transition: color .15s var(--rd-ease) !important; }
body footer .footer--legal-links a:hover { color: var(--rd-ink-900) !important; }
body footer .footer--legal-copy { color: var(--rd-ink-400, #737373) !important; font-size: 0.82rem !important; }

@media (max-width: 800px) {
    body footer .content--area { grid-template-columns: 1fr !important; }
    body footer .content--links { grid-template-columns: repeat(2, 1fr) !important; }
    body .footer--top .top--content { flex-direction: column !important; text-align: center !important; }
    body footer .footer--legal-inner { flex-direction: column !important; text-align: center !important; }
}

/* ============================================================
   Cookie consent banner — single source of truth, identical on
   every page (overrides per-stylesheet variations).
   ============================================================ */
body .cookie-banner {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    z-index: 9999 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--rd-border, #E5E5E5) !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: 0 -6px 24px rgba(0, 0, 0, .10) !important;
}
body .cookie-banner .cookie-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px 24px !important;
    flex-wrap: wrap !important;
    width: min(100% - 48px, 1224px) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
body .cookie-banner .cookie-copy {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    flex: 1 1 260px !important;
    min-width: 0 !important;
    color: #334155 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    text-align: left !important;
}
body .cookie-banner .cookie-copy a { color: var(--rd-accent, #0E9F6E) !important; text-decoration: underline !important; }
body .cookie-banner .cookie-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    flex-shrink: 0 !important;
    border-radius: 10px !important;
    color: var(--rd-accent, #0E9F6E) !important;
    background: rgb(14 159 110 / .12) !important;
}
body .cookie-banner .cookie-actions { display: flex !important; gap: 10px !important; flex-wrap: wrap !important; }
body .cookie-banner .cookie-btn {
    min-width: 0 !important;
    padding: 9px 16px !important;
    border: 1px solid var(--rd-border, #E5E5E5) !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background .2s !important;
}
body .cookie-banner .cookie-btn:hover { background: #f4f4f5 !important; }
body .cookie-banner .cookie-btn.accept {
    color: #fff !important;
    background: var(--rd-accent, #0E9F6E) !important;
    border-color: var(--rd-accent, #0E9F6E) !important;
}
@media (max-width: 640px) {
    body .cookie-banner { padding: 12px 0 !important; }
    body .cookie-banner .cookie-inner {
        flex-direction: column !important;
        align-items: stretch !important;
        width: min(100% - 32px, 1224px) !important;
        gap: 12px !important;
    }
    /* Metni kompakt tut: küçük ikon, sıkı satır, okunabilir font. */
    body .cookie-banner .cookie-copy {
        align-items: flex-start !important;
        gap: 9px !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        flex: 1 1 auto !important;
    }
    body .cookie-banner .cookie-icon {
        width: 30px !important;
        height: 30px !important;
        border-radius: 8px !important;
    }
    /* Butonlar alt alta tam genişlik -> mobilde 3'ü yan yana sıkışmaz. */
    body .cookie-banner .cookie-actions {
        flex-direction: column !important;
        gap: 8px !important;
    }
    body .cookie-banner .cookie-btn {
        width: 100% !important;
        flex: none !important;
        text-align: center !important;
        padding: 11px 16px !important;
    }
    /* Onay butonu en üstte ve vurgulu (en önemli aksiyon). */
    body .cookie-banner .cookie-btn.accept { order: -1 !important; }
}

/* Platzhalter-Links ohne Ziel: als gedämpfter Text statt totem Link rendern. */
footer .footer-link-muted {
    color: inherit;
    opacity: 0.6;
    cursor: default;
}

/* Werbe-Slots (@adslot): zentriert, responsiv; leere Slots ausblenden. */
.ad-slot {
    margin: 20px auto;
    text-align: center;
    max-width: 100%;
    overflow: hidden;
}
.ad-slot:empty { display: none; }
.ad-slot ins,
.ad-slot iframe { max-width: 100%; }

/* Geräte-Targeting — policy-konform auf dem <ins class="adsbygoogle"> selbst:
   Ist das <ins> display:none, sendet AdSense auf diesem Gerät KEINE Anzeigenanfrage.
   (Das Ausblenden des Containers wäre ein Policy-Verstoß.) */
.ad-ins--mobile,
.ad-ins--desktop { display: none !important; }
@media (max-width: 768px) {
    .ad-ins--mobile { display: inline-block !important; }
}
@media (min-width: 769px) {
    .ad-ins--desktop { display: inline-block !important; }
}

/* Fallback nur für Fremd-Snippets ohne <ins> (z. B. eigenes Werbenetzwerk). */
@media (max-width: 768px) {
    .ad-slot--desktop { display: none !important; }
}
@media (min-width: 769px) {
    .ad-slot--mobile { display: none !important; }
}
