/* Legal pages. Tokens (colour, radius, type) come from /mainmind.css — the one
   sheet every surface shares. Only the legal chrome lives here, and it is
   deliberately plain: these pages are read once, carefully, often by somebody
   deciding whether to trust the service. */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-size:var(--t-md);line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--brand);text-underline-offset:3px}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px}

header.legal-head{display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding:18px var(--gutter,20px);border-bottom:1px solid var(--edge-soft)}
header.legal-head .mark{display:inline-flex;align-items:center;gap:9px;
  font-family:var(--display);font-weight:600;letter-spacing:-.01em;color:var(--ink);text-decoration:none}
header.legal-head .mark img{width:20px;height:20px}
header.legal-head nav{display:flex;gap:18px;font-size:var(--t-sm)}

main.legal{max-width:78ch;margin:0 auto;padding:44px var(--gutter,20px) 96px}
main.legal h1{font-family:var(--display);font-size:var(--t-xl);line-height:1.08;
  letter-spacing:-.04em;font-weight:600;margin:0 0 10px}
main.legal .stamp{font-size:var(--t-xs);color:var(--soft);margin:0 0 34px}
main.legal h2{font-family:var(--display);font-size:var(--t-lg);letter-spacing:-.02em;font-weight:600;
  margin:44px 0 12px;padding-top:18px;border-top:1px solid var(--edge-soft)}
main.legal h3{font-family:var(--display);font-size:var(--t-md);font-weight:600;margin:26px 0 8px}
main.legal p,main.legal li{max-width:72ch}
main.legal ul,main.legal ol{padding-left:1.3em}
main.legal li{margin:7px 0}
main.legal code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;
  background:var(--sunk);padding:1px 5px;border-radius:var(--r-sm,5px)}
main.legal table{border-collapse:collapse;width:100%;margin:16px 0;font-size:var(--t-sm)}
main.legal th,main.legal td{text-align:left;vertical-align:top;padding:9px 12px;
  border-bottom:1px solid var(--edge-soft)}
main.legal th{font-family:var(--ui);font-weight:600;font-size:var(--t-xs);
  color:var(--brand-deep)}

.summary{background:var(--card);border:1px solid var(--edge);border-radius:var(--r,12px);
  padding:20px 22px;margin:0 0 36px}
.summary h2{margin:0 0 10px;padding:0;border:0;font-size:var(--t-md)}
.summary p:last-child{margin-bottom:0}

/* A value only the owner can supply. Rendered loudly on purpose: a legal page
   that ships with one of these still in it is a worse failure than no page. */
.fill{background:var(--amber-soft);color:var(--ink);border:1px dashed var(--amber);
  border-radius:var(--r-sm);padding:0 6px;font-family:var(--ui);font-size:.9em;font-weight:600;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.draft-notice{background:var(--amber-soft);border:1px solid var(--amber);
  border-radius:var(--r,12px);padding:16px 18px;margin:0 0 30px;font-size:var(--t-sm)}
.draft-notice strong{font-family:var(--ui)}

footer.legal-foot{border-top:1px solid var(--edge-soft);padding:26px var(--gutter,20px) 60px;
  max-width:78ch;margin:0 auto;font-size:var(--t-sm);color:var(--soft);
  display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
footer.legal-foot nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-left:auto}
