/* The legal pages (scripts/lib/legal-html.ts): plain, fast, readable; the brand colours of @victus/tokens. */
:root { color-scheme: light; --night: #071d22; --lime: #c8f23d; --line: #d9e0e2; --muted: #54666b; --card: #fff; --bg: #f4f7f7; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: #10252a; font: 16px/1.7 Tajawal, Manrope, system-ui, -apple-system, "Segoe UI", sans-serif; }
a { color: #0b5d6b; }
.top { background: var(--night); display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; }
.top .brand { color: var(--lime); font-weight: 800; text-decoration: none; font-size: 1.1rem; }
.top nav { display: flex; gap: 14px; }
.top nav a { color: #fff; text-decoration: none; font-weight: 600; }
main { max-width: 46rem; margin: 0 auto; padding: 20px 16px 8px; display: flex; flex-direction: column; gap: 20px; }
article { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 20px; display: flex; flex-direction: column; gap: 14px; }
article[dir="ltr"] { text-align: left; }
h1 { margin: 0; font-size: 1.6rem; font-weight: 900; }
h2 { margin: 0 0 6px; font-size: 1.15rem; font-weight: 800; }
p { margin: 0 0 8px; }
.updated { color: var(--muted); font-size: .85rem; margin: 4px 0; }
.intro { font-size: 1.05rem; }
ul { margin: 0; padding-inline-start: 22px; display: flex; flex-direction: column; gap: 4px; }
section { display: flex; flex-direction: column; }
footer { max-width: 46rem; margin: 0 auto; padding: 16px; color: var(--muted); font-size: .9rem; }
footer nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.request { display: flex; flex-direction: column; gap: 12px; background: #eef3f3; border-radius: 12px; padding: 16px; }
.request label { display: flex; flex-direction: column; gap: 4px; font-weight: 700; }
.request small { font-weight: 400; color: var(--muted); }
.request input, .request textarea { font: inherit; min-height: 44px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.request button { min-height: 44px; border: 0; border-radius: 10px; background: var(--lime); color: var(--night); font: inherit; font-weight: 800; cursor: pointer; }
.request button[disabled] { opacity: .6; cursor: wait; }
.request .message { color: #9b1c1c; font-weight: 700; }
.request.done .message { color: #0b5d3b; }
:focus-visible { outline: 3px solid #0b5d6b; outline-offset: 2px; }
