/* Shared shell for the legal pages (privacy, terms, refunds, cookies). */
:root{
  --ink:#0a0a0a;--muted:#4b4b4b;--dim-text:#767676;
  --surface:#fff;--surface-alt:#f5f5f5;--surface-dark:#0a0a0a;
  --line:#e5e5e5;--accent:#000;--blue:#2745e8;--yellow:#ffd43b;
  --radius:1rem;--maxw:820px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--surface);
     color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.5rem}

.topbar{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.topbar .wrap{max-width:1100px;display:flex;align-items:center;justify-content:space-between;height:64px}
.back{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);text-decoration:none;font-weight:600;font-size:.875rem}
.back:hover{color:var(--blue)}
.wordmark{font-weight:700;font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase}

main{padding:3.5rem 0 4.5rem}
.kicker{display:inline-flex;align-items:center;gap:.625rem;color:var(--blue);font-weight:700;font-size:.6875rem;
        letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.kicker::before{content:"";width:26px;height:3px;background:var(--yellow);flex:none}
h1{font-size:clamp(2rem,4.5vw,2.75rem);line-height:1.1;letter-spacing:-.03em;font-weight:800;margin-bottom:.75rem}
.updated{color:var(--dim-text);font-size:.875rem;margin-bottom:2.5rem}

h2{font-size:1.25rem;letter-spacing:-.02em;margin:2.75rem 0 .875rem;padding-top:1.5rem;border-top:1px solid var(--line)}
h2:first-of-type{border-top:0;padding-top:0}
h3{font-size:1rem;margin:1.75rem 0 .5rem}
p{margin-bottom:1rem;color:var(--muted)}
ul,ol{margin:0 0 1.25rem 1.25rem;color:var(--muted)}
li{margin-bottom:.5rem}
a{color:var(--blue)}
strong{color:var(--ink)}
table{width:100%;border-collapse:collapse;margin:0 0 1.5rem;font-size:.875rem;display:block;overflow-x:auto}
th,td{text-align:left;padding:.75rem;border:1px solid var(--line);vertical-align:top;color:var(--muted)}
th{background:var(--surface-alt);color:var(--ink);font-weight:700;white-space:nowrap}

/* Anything the operator still has to supply. Deliberately loud so it cannot
   ship unnoticed. */
.todo{background:var(--yellow);color:var(--ink);font-weight:700;padding:.0625rem .3125rem;border-radius:3px}

.callout{background:var(--surface-alt);border-left:4px solid var(--blue);border-radius:.5rem;
         padding:1.25rem 1.375rem;margin:0 0 1.75rem}
.callout p:last-child{margin-bottom:0}
.callout.warn{border-left-color:var(--yellow)}

.toc{background:var(--surface-alt);border-radius:var(--radius);padding:1.5rem 1.75rem;margin-bottom:2.5rem}
.toc b{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim-text);margin-bottom:.75rem}
.toc ol{margin:0 0 0 1.125rem}
.toc li{margin-bottom:.375rem;font-size:.9375rem}

footer{background:var(--surface-dark);color:rgba(255,255,255,.62);padding:2.5rem 0;font-size:.8125rem}
footer .wrap{max-width:1100px;text-align:center}
footer nav{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:center;margin-bottom:1rem}
footer a{color:rgba(255,255,255,.82);text-decoration:none;font-weight:600}
footer a:hover{color:var(--yellow)}
footer .entity{color:rgba(255,255,255,.5);line-height:1.7}
@media(max-width:640px){
  main{padding:2.5rem 0 3rem}
  .wrap{padding:0 1.25rem}
  h2{margin-top:2.25rem}
}
