/* ─── legal pages ─── */
/* Most .legal-section styles now live in style.css.
   This file only holds the table styling + legal-specific tweaks. */

.legal-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    background: var(--surface);
    border-radius: 10px;
    overflow: hidden;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.legal-table td {
    padding: 0.7rem 0.9rem;
    border: 1px solid var(--border-soft);
    color: var(--text-secondary);
    font-weight: 300;
    line-height: 1.6;
}

.legal-table td:first-child {
    font-weight: 600;
    color: var(--text-primary);
    width: 35%;
    background-color: var(--surface);
}

/* legal section gets a slightly wider max-width than main sections */
.legal-section {
    max-width: 680px;
}
/* ─── table of contents ─── */
.legal-toc {
    background: var(--surface);
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    padding: 1.5rem 1.8rem;
    margin: 2rem 0 3rem;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.legal-toc-label {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-secondary);
    margin: 0 0 1.2rem;
    opacity: 0.7;
}

.legal-toc ol {
    list-style: none;
    padding: 0;
    margin: 0;
    counter-reset: legal-toc;
}

.legal-toc li {
    counter-increment: legal-toc;
    margin: 0.55rem 0;
    padding-left: 2.4rem;
    position: relative;
    line-height: 1.5;
}

.legal-toc li::before {
    content: counter(legal-toc, decimal-leading-zero);
    position: absolute;
    left: 0;
    top: 0.05rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-secondary);
    opacity: 0.6;
    font-variant-numeric: tabular-nums;
}

.legal-toc a {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 0.95rem;
    font-weight: 300;
    transition: color 0.2s ease;
    border-bottom: 1px solid transparent;
}

.legal-toc a:hover {
    color: var(--text-primary);
    border-bottom-color: currentColor;
}

/* anchor offset so headings don't get hidden under any fixed elements */
.legal-section h2 {
    scroll-margin-top: 2rem;
}

html {
    scroll-behavior: smooth;
}