:root {
    color-scheme: light;
    --ink: #151a21;
    --text: #465466;
    --muted: #6d7887;
    --line: #dfe5ec;
    --surface: #ffffff;
    --canvas: #f4f7fa;
    --accent: #245f9f;
}

* { box-sizing: border-box; }

html { font: 16px/1.7 -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif; }

body {
    margin: 0;
    color: var(--text);
    background: var(--canvas);
}

a { color: var(--accent); text-underline-offset: 3px; }

.policy-header {
    background: var(--surface);
    border-bottom: 1px solid var(--line);
}

.policy-nav,
.policy-main,
.policy-footer {
    width: min(820px, calc(100% - 32px));
    margin-inline: auto;
}

.policy-nav {
    display: flex;
    min-height: 64px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.policy-brand {
    color: var(--ink);
    font-weight: 750;
    text-decoration: none;
}

.policy-main {
    margin-block: 36px;
    padding: 34px 38px;
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: 12px;
}

h1, h2 { color: var(--ink); letter-spacing: 0; }
h1 { margin: 0 0 8px; font-size: 2rem; line-height: 1.25; }
h2 { margin: 30px 0 8px; font-size: 1.1rem; }
p, li { overflow-wrap: anywhere; }
.updated { margin: 0 0 28px; color: var(--muted); font-size: .875rem; }
.notice { padding: 14px 16px; background: #eef4fb; border-radius: 8px; color: #274c75; }
.policy-footer { padding: 0 0 36px; color: var(--muted); font-size: .85rem; text-align: center; }

@media (max-width: 600px) {
    .policy-main { margin-block: 18px; padding: 24px 20px; }
    h1 { font-size: 1.65rem; }
}
