/*
 * Shared styling for the three legal pages — privacy, terms, cookies.
 *
 * External rather than inlined into each page: three copies of the same rules is three
 * places to forget when the palette changes, and these pages have to keep looking like the
 * site or they read as somebody else's boilerplate pasted in.
 *
 * The palette below is the same one as index.html and the application.
 */
:root{
  --ink:#0f1113; --panel:#16191d; --panel2:#1c2126; --line:#262c33; --line2:#1e242a;
  --text:#e8ecef; --muted:#9aa4ad; --dim:#6f7880;
  --teal:#3BAFBC; --teal2:#6FD3DD; --on-teal:#04212a; --amber:#E8912E;
  --radius:14px;
}
*{box-sizing:border-box}
body{
  margin:0;background:var(--ink);color:var(--text);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--teal2);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}

/* ---------------------------------------------------------------- header */

header{background:rgba(15,17,19,.9);border-bottom:1px solid var(--line2)}
header nav{display:flex;align-items:center;gap:22px;min-height:66px;flex-wrap:wrap;padding:9px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.11em;
  font-size:16px;color:var(--text)}
.brand:hover{text-decoration:none}
.brand svg{width:30px;height:30px;flex:none}
.brand .lg{color:var(--teal)}
header .spacer{flex:1}
header .back{color:var(--muted);font-size:14px}

/* ---------------------------------------------------------------- the document */

/* Narrower than the site's 1100px. A paragraph of legal text set the full width of a
   desktop screen is roughly 140 characters a line, which is unreadable however plain the
   English is. */
.doc{max-width:760px;margin:0 auto;padding:52px 22px 84px}
.doc h1{font-size:34px;line-height:1.2;letter-spacing:-.02em;margin:0 0 8px}
.doc .updated{color:var(--dim);font-size:13px;margin:0 0 30px}
.doc h2{font-size:20px;margin:36px 0 10px;letter-spacing:-.01em}
.doc h3{font-size:15.5px;margin:22px 0 6px;color:var(--text)}
.doc p,.doc li{color:var(--muted);font-size:15.5px;line-height:1.7}
.doc ul{padding-left:20px;margin:10px 0}
.doc li{margin-bottom:7px}
.doc strong{color:var(--text);font-weight:650}

.doc table{width:100%;border-collapse:collapse;margin:14px 0 6px;font-size:14.5px}
.doc th,.doc td{border:1px solid var(--line);padding:10px 12px;text-align:left;
  color:var(--muted);vertical-align:top}
.doc th{color:var(--text);font-weight:700;background:var(--panel2);font-size:12.5px;
  letter-spacing:.05em;text-transform:uppercase}
.doc td code{font-size:13.5px;color:var(--teal2)}
/* A table of cookie attributes has no sensible narrower form, so it scrolls inside its own
   box rather than making the whole page scroll sideways on a phone. */
.tableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch}

.callout{
  background:var(--panel2);border-left:2px solid var(--teal);border-radius:0 8px 8px 0;
  padding:14px 16px;margin:18px 0;color:var(--muted);font-size:15px;
}

/* Deliberately loud. This marks the details only the company can supply, and the whole
   point of it is that nobody can publish the page without noticing it is still there. */
.todo{
  background:rgba(232,145,46,.1);border:1px dashed rgba(232,145,46,.55);border-radius:10px;
  padding:14px 16px;margin:20px 0;color:#f0b874;font-size:14.5px;
}
.todo b{display:block;margin-bottom:5px;letter-spacing:.06em;text-transform:uppercase;
  font-size:11.5px}

footer{border-top:1px solid var(--line2);padding:30px 0 44px;color:var(--dim);font-size:13.5px}
footer .row{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
footer .spacer{flex:1}
footer a{color:var(--muted)}
footer .legal{display:flex;gap:16px;flex-wrap:wrap}
@media (max-width:700px){
  footer .row{flex-direction:column;align-items:flex-start;gap:12px}
  footer .spacer{display:none}
  .doc h1{font-size:27px}
}
