/* legal pages: narrow column, denser line-height, placeholder badges */

body.legal {
    min-height: 100vh;
}

main.legal-main {
    max-width: 760px;
    margin: 0 auto;
    padding: 64px 32px 96px;
    line-height: 1.7;
}

.legal-main h1 {
    margin: 0 0 8px;
    font-size: clamp(1.6em, 3.4vw, 2.2em);
    letter-spacing: 0.02em;
}

.legal-main .updated {
    margin: 0 0 40px;
    opacity: 0.7;
    font-size: 0.9em;
    letter-spacing: 0.04em;
}

.legal-main h2 {
    margin: 40px 0 12px;
    font-size: 1.15em;
    letter-spacing: 0.04em;
}

.legal-main h3 {
    margin: 24px 0 6px;
    font-size: 1em;
    letter-spacing: 0.03em;
}

.legal-main p {
    margin: 0 0 14px;
}

.legal-main ul,
.legal-main ol {
    margin: 0 0 16px;
    padding-left: 22px;
}

.legal-main li {
    margin-bottom: 4px;
}

.legal-main a {
    color: inherit;
}

.legal-main code {
    padding: 1px 6px;
}

/* placeholder badge */
.placeholder {
    display: inline-block;
    padding: 1px 8px;
    border: 1px dashed currentColor;
    opacity: 0.7;
    font-style: italic;
    font-size: 0.92em;
    letter-spacing: 0.02em;
}

body.theme-terminal .placeholder { color: #ffcc00; border-color: #ffcc00; }
body.theme-modern   .placeholder { color: #b45309; border-color: #b45309; background: #fff7e6; }

/* preview banner */
.preview-banner {
    margin: 0 0 32px;
    padding: 12px 16px;
    border: 1px solid currentColor;
    border-left-width: 3px;
    font-size: 0.92em;
    line-height: 1.55;
}

body.theme-terminal .preview-banner {
    background: rgba(255, 204, 0, 0.06);
    border-color: #ffcc00;
    color: #ffcc00;
}
body.theme-modern .preview-banner {
    background: #fff7e6;
    border-color: #d97706;
    color: #92400e;
}

.legal-main .back {
    display: inline-block;
    margin-top: 48px;
    padding: 8px 14px;
    border: 1px solid currentColor;
    text-decoration: none;
    font-size: 0.9em;
}
