/* ============================================================
   Vulstrix website - shared styling for the legal pages.

   Kept as ONE file rather than copied into each page: the legal pages are
   the part nobody looks at for months, and three drifting copies of the same
   layout is exactly how a page ends up looking foreign to its own site.

   The tokens repeat the landing page (website/index.html). They are copied
   rather than imported because the site has no build step - but they are
   copied ONCE, here, instead of once per page.
   ============================================================ */
:root{
  --pine:#164A3E; --emerald:#1E7D3E; --bright:#2FA45C; --cream:#F5F4F1;
  --text:#1B2420; --muted:#5F6E67; --border:#DDE4E0; --surface:#fff;
  --r:14px; --wrap:820px;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--cream); color:var(--text);
  font:17px/1.65 -apple-system,"Segoe UI",Roboto,system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--wrap); margin:0 auto; padding:0 22px}

header{background:var(--surface); border-bottom:1px solid var(--border)}
.bar{display:flex; align-items:center; gap:16px; padding:14px 0}
.brand{display:flex; align-items:center; gap:11px; text-decoration:none; color:var(--pine)}
.brand b{font-size:20px; font-weight:800; letter-spacing:.6px}
.back{margin-left:auto; color:var(--muted); text-decoration:none; font-size:15px; font-weight:600}
.back:hover{color:var(--emerald)}

main{padding:34px 0 60px}
h1{font-size:30px; line-height:1.25; margin:0 0 6px}
.stand{color:var(--muted); font-size:14.5px; margin:0 0 26px}
h2{font-size:20px; margin:34px 0 10px}
h3{font-size:17px; margin:22px 0 8px}
p,li{font-size:16.5px}
ul{padding-left:22px}
a{color:var(--emerald)}

table{border-collapse:collapse; width:100%; margin:14px 0; font-size:15.5px}
th,td{border:1px solid var(--border); padding:9px 11px; text-align:left; vertical-align:top}
th{background:#EEF2F0; font-weight:700}

/* A notice that concerns the reader's rights or money - not decoration.
   Deliberately calm: a legal page shouting at every paragraph teaches
   the reader to skip all of them, including the one that mattered. */
.note{
  background:var(--surface); border:1px solid var(--border);
  border-left:3px solid var(--bright);
  border-radius:var(--r); padding:14px 16px; margin:18px 0;
}
.note b{color:var(--pine)}

footer{border-top:1px solid var(--border); padding:26px 0; color:var(--muted); font-size:14.5px}
footer a{color:var(--muted); text-decoration:none; margin-right:18px}
footer a:hover{color:var(--emerald)}

/* Bilingual, same mechanism as the landing page: German is the binding
   version, English is a courtesy translation. */
[data-en]{display:none}
html[lang="en"] [data-de]{display:none}
html[lang="en"] [data-en]{display:revert}

.lang{display:inline-flex; background:#E7EAE8; border-radius:999px; padding:3px; flex:none; margin-left:14px}
.lang button{
  border:none; background:none; cursor:pointer; padding:5px 12px; border-radius:999px;
  font-size:14px; font-weight:700; color:var(--muted);
}
.lang button.on{background:var(--surface); color:var(--pine)}
