/* ============================================================================
   XBT ALGO — legal pages (privacy / terms / disclaimer)
   Battlestation tokens, but deliberately SOBER: these pages are read, not sold.
   Self-contained, no external fonts/assets, RTL-safe, light-theme fallback none
   (the site is dark-only by design — see index.html color-scheme meta).
   Used by /terms.html, /disclaimer.html (href="legal.css")
   and /privacy/*.html (href="../legal.css").
   ========================================================================== */

:root{
  --bg:#0B0F17;
  --surface-1:#0D1420;
  --surface-2:#121927;
  --border:#232D3F;
  --edge:rgba(35,45,63,0.80);
  --amber:#F5A623;
  --teal:#31B8A8;
  --text:#E8EDF5;
  --muted:#8A96A8;
  --red:#E5484D;
  --radius:12px;
  --radius-sm:9px;
  --maxw:820px;
  --mono:ui-monospace,"Cascadia Mono",Consolas,"SFMono-Regular",Menlo,"Roboto Mono",monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,system-ui,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(900px 420px at 82% -10%, rgba(245,166,35,0.05), transparent 60%),
    radial-gradient(760px 400px at 6% 2%, rgba(49,184,168,0.05), transparent 62%);
  background-attachment:fixed;
}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:4px}

.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 22px}

/* ---- header ---- */
.legal-header{
  border-bottom:1px solid var(--edge);
  background:rgba(11,15,23,0.92);
  position:sticky;top:0;z-index:10;
  backdrop-filter:blur(8px);
}
.legal-header .wrap{
  display:flex;align-items:center;gap:14px;
  min-height:60px;flex-wrap:wrap;
}
.wordmark{
  font-family:var(--mono);font-weight:800;letter-spacing:0.12em;
  font-size:15px;color:var(--text);
}
.wordmark:hover{text-decoration:none;color:var(--amber)}
.header-sep{color:var(--border)}
.header-kind{
  font-family:var(--mono);font-size:11px;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--muted);
}

/* ---- page head ---- */
main{padding:38px 0 20px}
h1{
  margin:0 0 6px;font-size:clamp(24px,4.4vw,32px);
  font-weight:750;letter-spacing:-0.01em;line-height:1.22;
}
.eyebrow{
  margin:0 0 12px;font-family:var(--mono);font-size:11px;
  letter-spacing:0.18em;text-transform:uppercase;color:var(--amber);
}
.meta{
  margin:0 0 26px;font-family:var(--mono);font-size:12.5px;color:var(--muted);
  display:flex;flex-wrap:wrap;gap:6px 14px;
}
.meta span{white-space:nowrap}

h2{
  margin:34px 0 10px;font-size:18px;font-weight:700;letter-spacing:-0.005em;
  padding-top:16px;border-top:1px solid var(--edge);
}
h2:first-of-type{border-top:0;padding-top:0}
h3{margin:22px 0 6px;font-size:15px;font-weight:700;color:var(--text)}
p{margin:0 0 12px}
ul,ol{margin:0 0 14px;padding-inline-start:22px}
li{margin:0 0 7px}
strong{color:var(--text);font-weight:700}
code,.perm{
  font-family:var(--mono);font-size:13px;
  background:var(--surface-2);border:1px solid var(--edge);
  padding:1px 6px;border-radius:6px;color:var(--text);
  overflow-wrap:anywhere;
}

/* ---- callouts ---- */
.panel{
  background:var(--surface-1);border:1px solid var(--edge);
  border-radius:var(--radius);padding:16px 18px;margin:0 0 22px;
}
.panel p:last-child{margin-bottom:0}
.panel .label{
  display:block;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--teal);margin-bottom:7px;
}
.panel.warn{border-color:rgba(245,166,35,0.42);background:rgba(245,166,35,0.05)}
.panel.warn .label{color:var(--amber)}
.panel.stop{border-color:rgba(229,72,77,0.45);background:rgba(229,72,77,0.05)}
.panel.stop .label{color:var(--red)}

/* ---- app directory (privacy/index.html) ---- */
.app-list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:10px}
.app-list a{
  display:block;background:var(--surface-1);border:1px solid var(--edge);
  border-radius:var(--radius-sm);padding:13px 16px;color:var(--text);
}
.app-list a:hover{border-color:var(--teal);text-decoration:none}
.app-list .name{font-weight:700;display:block}
.app-list .pkg{
  font-family:var(--mono);font-size:12px;color:var(--muted);
  display:block;margin-top:2px;overflow-wrap:anywhere;
}

/* ---- footer ---- */
.legal-footer{
  border-top:1px solid var(--edge);margin-top:34px;padding:20px 0 40px;
  font-size:13.5px;color:var(--muted);
}
.legal-footer .wrap{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.legal-footer .sep{color:var(--border)}

@media (max-width:520px){
  main{padding-top:26px}
  .meta{flex-direction:column;gap:2px}
}
