/* Policy pages share the public detail shell and theme tokens. */
.policy-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;padding:28px;border:1px solid var(--border-color);border-radius:20px;background:var(--bg-card)}
.policy-hero p{color:var(--text-secondary);font-size:16px;line-height:1.9;max-width:660px}.policy-updated{display:inline-flex;gap:8px;align-items:center;font-size:13px;color:var(--text-secondary);margin-top:16px}.policy-symbol{display:grid;place-items:center;flex-shrink:0;width:88px;height:88px;border-radius:24px;background:var(--hover-bg);color:var(--teal);font-size:36px}
.policy-tabs a[aria-current=page]{color:var(--teal);border-bottom:3px solid var(--teal)}.policy-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start}.policy-index{position:sticky;top:100px}.policy-index ol{padding-inline-start:20px;color:var(--text-secondary);font-size:14px}.policy-index li+li{margin-top:14px}.policy-index a{color:var(--text-secondary);line-height:1.8}.policy-index a:hover{color:var(--teal);text-decoration:underline}.policy-content .desc{font-size:16px;line-height:2}.policy-contact .desc a{color:var(--teal);text-decoration:underline}.policy-contact .place-secondary{margin-top:18px}.policy-page a:focus-visible,.policy-page button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
[data-theme=dark] .policy-page :is(.policy-symbol,.policy-tabs a[aria-current=page],.policy-contact .desc a){color:var(--teal-light)}
@media(max-width:850px){.policy-layout{grid-template-columns:1fr;gap:0}.policy-index{position:static}.policy-index ol{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}.policy-index li+li{margin-top:0}}
@media(max-width:600px){.policy-hero{padding:20px;align-items:flex-start;gap:12px}.policy-symbol{width:44px;height:44px;border-radius:12px;font-size:22px}.policy-hero h1{font-size:28px}.policy-hero p{font-size:15px}.policy-index ol{grid-template-columns:1fr;gap:12px}.policy-content .desc{font-size:15px}}
