/* public/css/legal.css — Privacy / Terms / Refund / Accessibility pages */

.legal-page { background: var(--paper); min-height: 100vh; }

.legal-top {
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px clamp(20px, 5vw, 56px);
}
.legal-back { font-size: 14px; color: var(--ink-muted); text-decoration: none; }
.legal-back:hover { color: var(--ink); }

.legal-wrap { max-width: 760px; margin: 0 auto; padding: 16px 20px 100px; }

.legal-wrap h1 {
    font-family: 'Syne', sans-serif; font-weight: 700; font-size: clamp(28px, 4vw, 38px);
    letter-spacing: -0.03em; line-height: 1.1; margin-bottom: 10px;
}
.legal-updated { font-size: 13px; color: var(--ink-faint); margin-bottom: 32px; }

.legal-toc {
    background: var(--white); border: 1px solid var(--line); border-radius: 12px;
    padding: 18px 22px; margin-bottom: 36px; font-size: 14px;
}
.legal-toc strong { display: block; margin-bottom: 8px; font-family: 'Syne', sans-serif; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: var(--ink-faint); }
.legal-toc ol { margin: 0; padding-left: 20px; }
.legal-toc li { margin-bottom: 4px; }
.legal-toc a { color: var(--indigo); text-decoration: none; }
.legal-toc a:hover { text-decoration: underline; }

.legal-wrap section { margin-bottom: 34px; scroll-margin-top: 20px; }
.legal-wrap h2 {
    font-family: 'Syne', sans-serif; font-weight: 700; font-size: 19px;
    letter-spacing: -0.02em; margin-bottom: 12px;
}
.legal-wrap h3 { font-size: 15px; font-weight: 600; margin: 16px 0 8px; }
.legal-wrap p, .legal-wrap li { font-size: 15px; line-height: 1.7; color: var(--ink); }
.legal-wrap p { margin-bottom: 12px; }
.legal-wrap ul, .legal-wrap ol { margin: 0 0 14px; padding-left: 22px; }
.legal-wrap li { margin-bottom: 6px; }
.legal-wrap a { color: var(--indigo); }
.legal-wrap strong { font-weight: 600; }

.legal-contact-box {
    background: var(--white); border: 1px solid var(--line); border-radius: 12px;
    padding: 20px 22px; font-size: 14px; line-height: 1.8; margin-top: 8px;
}
.legal-note {
    background: #fff4e0; border: 1px solid #fcd34d; color: #92400e;
    border-radius: 12px; padding: 14px 18px; font-size: 13px; margin-bottom: 28px; line-height: 1.6;
}