/* ============================================================
   Darktie — hukuki belge sayfaları (privacy / terms / driver-terms)
   style.css üzerine biner; yalnızca bu sayfalarda yüklenir.
   ============================================================ */

/* --- Başlıktaki belge gezinmesi --- */
.legal-nav {
    display: flex;
    align-items: center;
    gap: 1.8rem;
    margin: 0 auto;
}

.legal-navlink {
    position: relative;
    font-size: .78rem;
    font-weight: 500;
    letter-spacing: .02em;
    color: var(--ink-2);
    white-space: nowrap;
    transition: color .3s var(--ease);
}
.legal-navlink:hover { color: var(--ink); }

.legal-navlink.is-current { color: var(--ink); }
.legal-navlink.is-current::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6px;
    height: 1px;
    background: var(--accent);
}

/* --- Sayfa düzeni --- */
.legal-main {
    padding-top: calc(var(--header-h) + 4.5rem);
    padding-bottom: 6rem;
}

.legal-layout {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 4rem;
    align-items: start;
}

/* --- İçindekiler --- */
.legal-toc {
    position: sticky;
    top: calc(var(--header-h) + 2rem);
    max-height: calc(100vh - var(--header-h) - 4rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: .4rem;
}

.legal-toc-head {
    font-size: .64rem;
    font-weight: 600;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--ink-3);
    margin-bottom: 1rem;
}

.legal-toc ol {
    counter-reset: toc;
    border-left: 1px solid var(--border-soft);
}
.legal-toc li { counter-increment: toc; }
.legal-toc a {
    display: block;
    padding: .42rem 0 .42rem 1rem;
    margin-left: -1px;
    border-left: 1px solid transparent;
    font-size: .76rem;
    font-weight: 300;
    line-height: 1.45;
    color: var(--ink-2);
    transition: color .3s var(--ease), border-color .3s var(--ease);
}
.legal-toc a:hover {
    color: var(--ink);
    border-left-color: var(--ink);
}

/* --- Belge başlığı --- */
.legal-doc { max-width: 74ch; }

.legal-title {
    font-size: clamp(1.9rem, 1.3rem + 2vw, 2.7rem);
    font-weight: 200;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: .7rem 0 1.4rem;
}

.legal-meta {
    font-size: .8rem;
    font-weight: 500;
    letter-spacing: .04em;
    color: var(--ink-2);
}

.legal-note {
    margin-top: 1rem;
    padding: .7rem 1rem;
    border-left: 2px solid var(--accent);
    background: var(--surface);
    border-radius: 0 var(--radius) var(--radius) 0;
    font-size: .78rem;
    font-weight: 300;
    color: var(--ink-2);
}

.legal-lang-note {
    margin-top: 1rem;
    font-size: .74rem;
    font-weight: 300;
    color: var(--ink-3);
}

/* --- Belge gövdesi --- */
.legal-body {
    margin-top: 3rem;
    padding-top: 2.6rem;
    border-top: 1px solid var(--border-soft);
    font-size: .92rem;
    font-weight: 300;
    line-height: 1.78;
    color: var(--ink-2);
}

.legal-body h2 {
    font-size: 1.22rem;
    font-weight: 500;
    letter-spacing: -.005em;
    line-height: 1.3;
    color: var(--ink);
    margin: 3.2rem 0 1rem;
    scroll-margin-top: calc(var(--header-h) + 1.5rem);
}
.legal-body > h2:first-child { margin-top: 0; }

.legal-body h3 {
    font-size: .95rem;
    font-weight: 600;
    letter-spacing: .01em;
    color: var(--ink);
    margin: 2rem 0 .7rem;
    scroll-margin-top: calc(var(--header-h) + 1.5rem);
}

.legal-body p { margin-bottom: 1.1rem; }
.legal-body strong { font-weight: 600; color: var(--ink); }
.legal-body em { font-style: italic; }

.legal-ul, .legal-ol {
    margin: 0 0 1.3rem;
    padding-left: 1.5rem;
}
.legal-ul { list-style: none; }
.legal-ol { list-style: decimal; }
.legal-ul li, .legal-ol li { margin-bottom: .55rem; padding-left: .2rem; }

.legal-ul li { position: relative; }
.legal-ul li::before {
    content: "";
    position: absolute;
    left: -1rem;
    top: .72em;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--accent);
}

/* --- Tablolar --- */
.legal-table-wrap {
    margin: 0 0 1.8rem;
    overflow-x: auto;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius);
    background: var(--bg);
    box-shadow: var(--sh-sm);
}

.legal-table-wrap table {
    width: 100%;
    min-width: 520px;
    border-collapse: collapse;
    font-size: .82rem;
}

.legal-table-wrap th {
    text-align: left;
    font-size: .66rem;
    font-weight: 600;
    letter-spacing: .13em;
    text-transform: uppercase;
    color: var(--ink-3);
    background: var(--surface);
    padding: .85rem 1.1rem;
    white-space: nowrap;
}

.legal-table-wrap td {
    padding: .85rem 1.1rem;
    border-top: 1px solid var(--border-hair);
    vertical-align: top;
    line-height: 1.6;
}

.legal-table-wrap tbody tr:nth-child(even) { background: rgba(43, 43, 43, .015); }

/* --- Footer --- */
.legal-footer { padding-top: 0; }
.legal-footer .footer-bottom { border-top: none; padding-top: 2.6rem; }

/* ============================================================
   Duyarlı
   ============================================================ */

@media (max-width: 1000px) {
    .legal-nav { display: none; }

    .legal-layout {
        grid-template-columns: 1fr;
        gap: 2.6rem;
    }

    .legal-toc {
        position: static;
        max-height: none;
        overflow: visible;
        order: 2;
        padding: 1.4rem 1.5rem;
        background: var(--surface);
        border-radius: var(--radius);
    }

    .legal-doc { order: 1; max-width: none; }
}

@media (max-width: 560px) {
    .legal-main {
        padding-top: calc(var(--header-h) + 2.5rem);
        padding-bottom: 4rem;
    }
    .legal-body { font-size: .88rem; }
    .legal-body h2 { font-size: 1.08rem; margin-top: 2.6rem; }
    .legal-table-wrap table { min-width: 440px; font-size: .78rem; }
    .legal-table-wrap th,
    .legal-table-wrap td { padding: .7rem .85rem; }
}
