/* ============================================================
   Leona AI — Hukuki Sayfalar (Legal) ortak stil
   Monokrom liquid glass · uzun-form okunabilirlik · TR/EN
   tokens.css token'larını miras alır (mavi/mor/turuncu yok).
   ============================================================ */

.legal-body {
    margin: 0;
    min-height: 100vh;
    background: var(--surface-base);
    color: var(--text-1);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: -0.005em;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* ---------- Üst bar (Yeni Bütünleşik Tasarım) ---------- */
.legal-header {
    position: sticky;
    top: 0;
    z-index: 40;
    background: rgba(10, 10, 12, 0.78);
    backdrop-filter: blur(24px) saturate(1.6);
    -webkit-backdrop-filter: blur(24px) saturate(1.6);
    border-bottom: 1px solid var(--stroke-hairline);
    box-shadow: 
        var(--inset-top-glow),
        var(--inset-bot-shadow),
        var(--shadow-1);
    transition: background var(--motion-base) var(--ease-smooth);
}

.legal-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap; /* Mobilde alta katlanma için */
}

.legal-brand {
    order: 1;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--text-1);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -0.02em;
    transition: transform var(--motion-fast) var(--ease-spring);
}

.legal-brand:hover {
    transform: scale(1.02);
}

.legal-brand img {
    width: 28px;
    height: 28px;
    border-radius: var(--radius-xs);
    border: 1px solid var(--stroke-hairline);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    transition: transform var(--motion-base) var(--ease-spring);
}

.legal-brand:hover img {
    transform: rotate(5deg) scale(1.05);
}

.legal-lang-switch {
    order: 3;
    position: relative;
    display: inline-flex;
    padding: 4px;
    border-radius: var(--radius-pill);
    background: rgba(0, 0, 0, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow:
        inset 0 1px 2px rgba(0, 0, 0, 0.4),
        inset 0 -1px 0 rgba(255, 255, 255, 0.04);
}

.legal-lang-ind {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 4px;
    width: calc(50% - 4px);
    border-radius: var(--radius-pill);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.08));
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        inset 0 -1px 0 rgba(0, 0, 0, 0.15),
        0 4px 12px rgba(0, 0, 0, 0.25);
    transition: transform 0.5s var(--ease-spring);
    pointer-events: none;
}

.legal-lang-switch[data-lang="en"] .legal-lang-ind {
    transform: translateX(100%);
}

.legal-lang-switch button {
    position: relative;
    z-index: 1;
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--text-3);
    font: inherit;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 5px 13px;
    border-radius: var(--radius-pill);
    cursor: pointer;
    transition: color 0.4s var(--ease-spring);
}

.legal-lang-switch button:hover:not(.active) {
    color: rgba(255, 255, 255, 0.82);
}

.legal-lang-switch button.active {
    color: var(--text-1);
    background: transparent;
}

/* ---------- Sayfa-içi sekme gezinmesi (Bütünleşik Pill Menü) ---------- */
.legal-subnav {
    order: 2;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 3px;
    background: rgba(0, 0, 0, 0.22);
    border: 1px solid var(--stroke-hairline);
    border-radius: var(--radius-pill);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.4);
}

.legal-subnav a {
    flex-shrink: 0;
    padding: 6px 14px;
    border-radius: var(--radius-pill);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: var(--text-3);
    text-decoration: none;
    white-space: nowrap;
    border: 1px solid transparent;
    transition: color var(--motion-fast) var(--ease-smooth),
                background var(--motion-fast) var(--ease-smooth),
                border-color var(--motion-fast) var(--ease-smooth);
}

.legal-subnav a:hover {
    color: var(--text-1);
    background: rgba(255, 255, 255, 0.05);
}

.legal-subnav a[aria-current="page"] {
    color: var(--text-1);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
    border-color: rgba(255, 255, 255, 0.16);
    box-shadow: 
        inset 0 1px 0 rgba(255, 255, 255, 0.2),
        0 2px 8px rgba(0, 0, 0, 0.25);
    font-weight: 600;
}

/* ---------- Mobil Uyum (Responsive) ---------- */
@media (max-width: 860px) {
    .legal-header-inner {
        padding: 12px 16px 8px;
        row-gap: 12px;
        column-gap: 8px;
    }
    
    .legal-brand {
        flex-grow: 1;
    }
    
    .legal-subnav {
        order: 3;
        width: 100%;
        max-width: 100%;
        flex-grow: 0;
        justify-content: flex-start;
        background: transparent;
        border: none;
        border-radius: 0;
        box-shadow: none;
        padding: 8px 0 2px;
        border-top: 1px solid var(--stroke-hairline);
        overflow-x: auto;
        scrollbar-width: none;
    }
    
    .legal-subnav::-webkit-scrollbar {
        display: none;
    }
    
    .legal-subnav a {
        padding: 5px 12px;
    }
    
    .legal-subnav a[aria-current="page"] {
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid var(--stroke-hairline);
        box-shadow: none;
    }
}

.legal-main {
    max-width: 760px;
    margin: 0 auto;
    padding: 40px 22px 96px;
}

.legal-eyebrow {
    margin: 0 0 10px;
    font-family: 'JetBrains Mono', ui-monospace, monospace;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-3);
}

.legal-main h1 {
    margin: 0 0 8px;
    font-family: 'Fraunces', Georgia, serif;
    font-weight: 600;
    font-size: clamp(28px, 5vw, 40px);
    line-height: 1.12;
    letter-spacing: -0.02em;
    color: var(--text-1);
}

.legal-updated {
    margin: 0 0 28px;
    font-size: 13px;
    color: var(--text-3);
}

.legal-binding-note {
    margin: 0 0 26px;
    padding: 12px 16px;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--stroke-hairline);
    font-size: 13px;
    color: var(--text-2);
}

/* İçindekiler */
.legal-toc {
    margin: 0 0 36px;
    padding: 18px 20px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--stroke-hairline);
}

.legal-toc-title {
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-3);
}

.legal-toc ol {
    margin: 0;
    padding-left: 20px;
    columns: 2;
    column-gap: 28px;
}

@media (max-width: 560px) {
    .legal-toc ol { columns: 1; }
}

.legal-toc li { margin: 4px 0; break-inside: avoid; }

.legal-toc a {
    color: var(--text-2);
    text-decoration: none;
    font-size: 14px;
}

.legal-toc a:hover { color: var(--text-1); text-decoration: underline; }

/* Bölümler */
.legal-main section { 
    margin: 0 0 30px; 
    scroll-margin-top: 76px; 
}
@media (max-width: 860px) {
    .legal-main section {
        scroll-margin-top: 118px;
    }
}

.legal-main h2 {
    margin: 0 0 12px;
    font-family: 'Fraunces', Georgia, serif;
    font-weight: 600;
    font-size: 21px;
    letter-spacing: -0.01em;
    color: var(--text-1);
}

.legal-main h3 {
    margin: 22px 0 8px;
    font-size: 15.5px;
    font-weight: 600;
    color: var(--text-1);
}

.legal-main p { margin: 0 0 13px; color: var(--text-2); font-size: 15px; }

.legal-main ul, .legal-main ol.legal-list {
    margin: 0 0 14px;
    padding-left: 22px;
    color: var(--text-2);
    font-size: 15px;
}

.legal-main li { margin: 6px 0; }

.legal-main strong { color: var(--text-1); font-weight: 600; }

.legal-main a { color: var(--text-1); text-decoration: underline; text-underline-offset: 2px; }
.legal-main a:hover { color: var(--text-2); }

/* Vurgu kutusu (önemli madde — ör. iade kuralı) */
.legal-callout {
    margin: 0 0 16px;
    padding: 16px 18px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--stroke-subtle);
    border-left: 3px solid var(--stroke-strong);
}

.legal-callout p:last-child { margin-bottom: 0; }

/* Uyarı/risk kutusu (kırmızı = işlevsel; tokens --destructive) */
.legal-warn {
    margin: 0 0 16px;
    padding: 16px 18px;
    border-radius: var(--radius-md);
    background: rgba(239, 68, 68, 0.06);
    border: 1px solid rgba(239, 68, 68, 0.28);
}

.legal-warn p:last-child { margin-bottom: 0; }

/* Tablolar (çerez / veri tabloları) */
.legal-table-wrap { margin: 0 0 18px; overflow-x: auto; border-radius: var(--radius-sm); }

.legal-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
    min-width: 460px;
}

.legal-table th, .legal-table td {
    text-align: left;
    padding: 10px 12px;
    border-bottom: 1px solid var(--stroke-hairline);
    vertical-align: top;
    color: var(--text-2);
}

.legal-table th {
    color: var(--text-1);
    font-weight: 600;
    background: rgba(255, 255, 255, 0.04);
}

.legal-table tr:last-child td { border-bottom: 0; }

/* Placeholder (doldurulacak alan) görünür işaret */
.legal-fill {
    font-family: 'JetBrains Mono', ui-monospace, monospace;
    font-size: 0.86em;
    padding: 1px 6px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px dashed var(--stroke-strong);
    color: var(--text-2);
}

/* ---------- Footer (çok sütunlu, anasayfa ile uyumlu) ---------- */
.legal-foot { border-top: 1px solid var(--stroke-hairline); margin-top: 20px; }
.legal-foot-grid {
    max-width: 960px; margin: 0 auto; padding: 48px 22px 32px;
    display: grid; gap: 36px 48px;
    grid-template-columns: 1.6fr 1fr 1fr;
    align-items: start;
}
.legal-foot-brand { max-width: 320px; }
.legal-foot-brand .legal-brand { margin-bottom: 14px; }
.legal-foot-tagline { color: var(--text-2); font-size: 13.5px; line-height: 1.6; margin: 0 0 18px; }
.legal-foot-contact { display: flex; flex-direction: column; gap: 10px; }
.legal-foot-contact-link {
    display: inline-flex; align-items: center; gap: 9px; width: fit-content;
    color: var(--text-2); text-decoration: none; font-size: 13px;
    transition: color 160ms ease;
}
.legal-foot-contact-link svg { width: 16px; height: 16px; flex-shrink: 0; opacity: 0.7; transition: opacity 160ms ease; }
.legal-foot-contact-link:hover { color: var(--text-1); }
.legal-foot-contact-link:hover svg { opacity: 1; }
.legal-foot-col { display: flex; flex-direction: column; gap: 12px; }
.legal-foot-col-title {
    margin: 0 0 2px; font-family: 'JetBrains Mono', ui-monospace, monospace;
    font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text-3); font-weight: 600;
}
.legal-foot-col a { color: var(--text-2); text-decoration: none; font-size: 13.5px; width: fit-content; transition: color 160ms ease; }
.legal-foot-col a:hover { color: var(--text-1); }
.legal-foot-bottom {
    max-width: 960px; margin: 0 auto; padding: 18px 22px 30px;
    border-top: 1px solid var(--stroke-hairline);
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.legal-foot-copy, .legal-foot-domain {
    font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11.5px; color: var(--text-3); letter-spacing: 0.02em;
}

@media (max-width: 720px) {
    .legal-foot-grid { grid-template-columns: 1fr 1fr; }
    .legal-foot-brand { grid-column: 1 / -1; max-width: none; }
}
@media (max-width: 480px) {
    .legal-foot-grid { grid-template-columns: 1fr; gap: 28px; }
    .legal-foot-bottom { flex-direction: column; align-items: flex-start; gap: 8px; }
}

/* Dil görünürlüğü — JS yokken bile TR görünür (EN [hidden]) */
[data-legal-lang="en"] { display: none; }
.legal-body.lang-en [data-legal-lang="tr"] { display: none; }
.legal-body.lang-en [data-legal-lang="en"] { display: block; }
