/*
 * The legal pages published by Batas_Legal: Terms of Use, Privacy Policy,
 * Data Privacy Consent, Cookie & Local Storage Notice, and Refunds.
 *
 * These pages are served by the classic theme, so the styles here only have to
 * make a long document comfortable to read inside it: a measured column,
 * legible headings, real lists and tables. The content itself comes from
 * legal/*.html (see tools/build-legal.mjs) — never style a document by hand.
 */

.batas-legal {
    max-width: 76ch;
    margin: 0 auto;
    color: var(--bt-ink, #17231f);
    font-size: 1rem;
    line-height: 1.7;
    -webkit-text-size-adjust: 100%;
}

.batas-legal .legal-meta {
    margin: 0 0 1.5rem;
    padding: 0.6rem 0.85rem;
    border: 1px solid var(--bt-hairline, rgba(0, 0, 0, 0.08));
    border-radius: 10px;
    background: var(--bt-surface, #fffdf8);
    color: #5a635e;
    font-size: 0.82rem;
    letter-spacing: 0.01em;
}

.batas-legal .legal-lead {
    font-size: 1.06rem;
    color: #2b3733;
}

/* Headings: the fragment starts at <h2>, and the theme supplies the <h1>. */
.batas-legal h2 {
    margin: 2.4rem 0 0.7rem;
    font-size: 1.32rem;
    line-height: 1.3;
    letter-spacing: -0.01em;
    padding-bottom: 0.35rem;
    border-bottom: 1px solid var(--bt-hairline, rgba(0, 0, 0, 0.08));
    scroll-margin-top: 90px;
}

.batas-legal h3 {
    margin: 1.7rem 0 0.5rem;
    font-size: 1.06rem;
    line-height: 1.35;
    scroll-margin-top: 90px;
}

.batas-legal h2:first-child,
.batas-legal h3:first-child {
    margin-top: 0;
}

.batas-legal p,
.batas-legal ul,
.batas-legal ol,
.batas-legal .legal-table-wrap {
    margin: 0 0 1rem;
}

.batas-legal ul,
.batas-legal ol {
    padding-left: 1.35rem;
}

.batas-legal li {
    margin-bottom: 0.55rem;
}

.batas-legal li > ul,
.batas-legal li > ol {
    margin-top: 0.55rem;
    margin-bottom: 0;
}

.batas-legal a {
    color: var(--bt-accent, #173b32);
    text-underline-offset: 2px;
}

.batas-legal a:hover {
    color: var(--bt-accent-hover, #214d41);
}

.batas-legal strong {
    font-weight: 650;
}

.batas-legal code {
    padding: 0.1em 0.35em;
    border: 1px solid var(--bt-hairline-soft, rgba(0, 0, 0, 0.05));
    border-radius: 5px;
    background: rgba(0, 0, 0, 0.035);
    font-size: 0.88em;
    word-break: break-word;
}

.batas-legal .legal-note {
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid var(--bt-hairline, rgba(0, 0, 0, 0.08));
    color: #5a635e;
    font-size: 0.9rem;
}

/* Tables (the retention schedule and the summary). A long document on a phone
   scrolls sideways inside its own box rather than breaking the layout. */
.batas-legal .legal-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.batas-legal table {
    width: 100%;
    min-width: 34rem;
    border-collapse: collapse;
    font-size: 0.92rem;
}

.batas-legal th,
.batas-legal td {
    padding: 0.6rem 0.7rem;
    border: 1px solid var(--bt-hairline, rgba(0, 0, 0, 0.08));
    text-align: left;
    vertical-align: top;
}

.batas-legal thead th {
    background: rgba(23, 59, 50, 0.06);
    font-weight: 650;
}

.batas-legal tbody tr:nth-child(even) {
    background: rgba(0, 0, 0, 0.015);
}

@media (max-width: 620px) {
    .batas-legal {
        font-size: 0.97rem;
        line-height: 1.65;
    }
    .batas-legal h2 {
        font-size: 1.18rem;
    }
    .batas-legal .legal-lead {
        font-size: 1rem;
    }
}
