/* 法务页（terms / privacy / refund）共用样式。令牌见 tokens.css。 */

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    background: var(--bg);
    color: var(--text);
    font-family: var(--font);
    font-size: 16px;
    line-height: 1.75;
    -webkit-font-smoothing: antialiased;
}

.wrap { max-width: 720px; margin: 0 auto; padding: 0 24px 96px; }

.legal-nav {
    border-bottom: 1px solid var(--line-soft);
    margin-bottom: 44px;
}
.legal-nav a {
    display: inline-flex; align-items: center; gap: 10px;
    max-width: 720px; margin: 0 auto; padding: 20px 24px;
    color: var(--text); text-decoration: none;
    font-weight: 700; letter-spacing: -0.02em;
}
.legal-nav .mark { display: grid; place-items: center; }
/* 品牌标记是实心图形，自带配色，不套底也不吃 currentColor */
.legal-nav svg { width: 26px; height: 26px; display: block; }

h1 { font-size: 2rem; letter-spacing: -0.03em; line-height: 1.15; margin-bottom: 8px; }
h2 { font-size: 1.08rem; letter-spacing: -0.015em; margin: 36px 0 10px; }
p, li { color: var(--text-2); font-size: 0.95rem; }
ul { padding-left: 20px; display: flex; flex-direction: column; gap: 6px; margin: 10px 0; }
li::marker { color: var(--text-3); }
strong { color: var(--text); font-weight: 650; }
a { color: var(--brand-deep); text-decoration: none; }
a:hover { text-decoration: underline; }
:focus-visible { outline: 2px solid var(--brand-deep); outline-offset: 3px; border-radius: 4px; }

.muted { color: var(--text-3); font-size: 0.85rem; }

.legal-foot {
    margin-top: 56px; padding-top: 24px;
    border-top: 1px solid var(--line-soft);
    display: flex; gap: 16px; flex-wrap: wrap;
    font-size: 0.85rem;
}
.legal-foot a { color: var(--text-2); }
.legal-foot a:hover { color: var(--text); }

::selection { background: var(--brand-line); }
