.document-page {background:var(--elevated)}
main.legal {max-width:800px;margin:40px auto 0;padding:0 var(--page-gutter);line-height:1.75}
.breadcrumb {display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);margin-bottom:24px}
.breadcrumb a {min-height:32px;display:inline-flex;align-items:center}
.breadcrumb a:hover {text-decoration:underline;text-underline-offset:4px}
main.legal h1 {font-size:40px;font-weight:500;line-height:1.15;letter-spacing:-.045em;margin-bottom:16px}
main.legal .updated {color:var(--text-secondary);font-size:14px;margin-bottom:40px}
main.legal h2 {font-size:24px;font-weight:500;margin:40px 0 16px;line-height:1.3}
main.legal h3 {font-size:18px;font-weight:600;margin:28px 0 12px}
main.legal p,main.legal ul,main.legal ol {margin:0 0 16px;color:var(--text-primary)}
main.legal ul,main.legal ol {padding-left:24px}main.legal li {margin-bottom:8px}
main.legal strong {font-weight:600}
main.legal a {color:var(--brand-deep);text-decoration:underline;text-underline-offset:4px}
main.legal code {background:var(--surface);padding:2px 5px;border-radius:3px}
main.legal .highlight {background:var(--surface);padding:20px 24px;margin:24px 0;border-radius:var(--radius-md)}
main.legal table {display:block;width:100%;max-width:100%;overflow:auto;border-collapse:collapse;margin:24px 0;font-size:14px}
main.legal th,main.legal td {padding:12px 16px;border:1px solid var(--border);text-align:left;vertical-align:top}
main.legal th {background:var(--surface);font-weight:600}
.legal-footer {max-width:800px;margin:48px auto 0;padding:0 var(--page-gutter) 48px;font-size:14px;color:var(--text-secondary)}
.legal-nav {display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:16px}
.legal-nav a {display:inline-flex;align-items:center;min-height:44px}.legal-nav a:hover {text-decoration:underline;text-underline-offset:4px}
.authorization-page {min-height:100vh;background:var(--elevated)}
.authorization-page .card {max-width:800px;margin:64px auto 0;padding:0 var(--page-gutter)}
.authorization-page h1 {font-size:40px;font-weight:500;line-height:1.15;letter-spacing:-.045em;margin-bottom:24px}
.authorization-page p {font-size:16px;color:var(--text-secondary);margin:16px 0;line-height:1.7}
.authorization-page .warn {background:var(--yellow-bg);color:#805008;padding:20px;border-radius:var(--radius-md);font-size:14px;margin:20px 0}
.authorization-page button {min-height:48px;background:var(--brand);color:var(--text-primary);border:0;border-radius:var(--radius-md);padding:12px 20px;font-size:15px;font-weight:600}
.authorization-page button:hover {background:var(--brand-hover)}
.authorization-page button:disabled {background:var(--light-divider);color:var(--text-secondary);cursor:not-allowed}
.authorization-page #content {padding:24px;background:var(--surface);border-radius:var(--radius-md)}
.authorization-page #content>p:first-child {margin-top:0}.authorization-page #content>p:last-child {margin-bottom:0}
.authorization-page #authorize {width:100%}
.authorization-page .turnstile-wrap {margin:24px 0}.authorization-page label {display:flex;align-items:flex-start;gap:12px;font-size:14px;margin:20px 0}
.authorization-page input[type=checkbox] {min-width:20px;min-height:20px;margin-top:2px}
.authorization-page .status {padding:16px 0;text-align:left;min-height:48px}.authorization-page .ok {color:var(--green)}.authorization-page .err {color:var(--red)}
@media(max-width:700px) {
 main.legal {margin-top:28px;padding:0 20px}
 main.legal h1,.authorization-page h1 {font-size:32px}
 main.legal h2 {font-size:22px}
 .legal-footer {padding:0 20px 32px;margin-top:40px}
 .authorization-page .card {margin-top:40px;padding:0 20px}
 .authorization-page #content {padding:20px}
}
