/* =========================================
   BeConcrete — shared styles for legal pages
   (Imprint / Privacy). Tokens mirror index.php.
========================================== */
:root{
  --bg:#f6f8fb;
  --card:#ffffff;
  --text:#0c1320;
  --muted:#475569;
  --line:#e5eaf2;
  --primary:#195387;
  --primary2:#022e6d;
  --radius:18px;
  --shadow: 0 18px 45px rgba(15,23,42,.08);
  --shadow2: 0 10px 22px rgba(15,23,42,.08);
  --max: 900px;
  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  --mono: ui-monospace, SFMono-Regular, MenloM, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; font-family:var(--font); color:var(--text); line-height:1.6;
  background:
    radial-gradient(900px 520px at 10% -10%, rgba(25,83,135,.10), transparent 55%),
    radial-gradient(900px 520px at 90% 0%, rgba(2,46,109,.08), transparent 55%),
    var(--bg);
}
body:before{
  content:"";
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  background-image:
    linear-gradient(to right, rgba(2,46,109,.07) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(2,46,109,.07) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: radial-gradient(70% 55% at 50% 0%, black, transparent 75%);
  opacity:.55;
}

a{color:var(--primary); text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--max); margin:0 auto; padding:0 20px}
.muted{color:var(--muted)}
.mono{font-family:var(--mono)}

/* Header (matches index.php) */
header{
  position:sticky; top:0; z-index:50;
  background: rgba(246,248,251,.86);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}
.brand{display:flex; gap:10px; align-items:center; color:inherit}
.brand:hover{text-decoration:none}
.brand img{width:40px; height:40px; border-radius:12px}
.brand strong{font-size:15px; letter-spacing:.2px}
.brand .tag{font-family:var(--mono); font-size:12px; color:var(--muted)}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  padding:12px 16px; border-radius:999px;
  border:1px solid var(--line);
  background: linear-gradient(135deg, var(--primary), var(--primary2));
  color:#fff; font-weight:900; box-shadow: var(--shadow2); white-space:nowrap;
}
.btn:hover{text-decoration:none}
.btn.secondary{background:#fff; color:var(--text); border-color:var(--line); box-shadow:none}

/* Content */
main{padding:40px 0 20px}
.pageHead h1{margin:0 0 6px; font-size:32px; letter-spacing:-.02em}
.pageHead p{margin:0; color:var(--muted)}
.updated{font-family:var(--mono); font-size:12px; color:var(--muted); margin-top:10px}

.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:22px 24px;
  margin-top:18px;
}
.card h2{margin:0 0 10px; font-size:20px}
.card h3{margin:18px 0 6px; font-size:16px}
.card p{margin:0 0 10px}
.card ul{margin:0 0 10px; padding-left:20px; color:var(--muted)}
.card li{margin:4px 0}
.card table{width:100%; border-collapse:collapse; margin:10px 0 4px; font-size:14px}
.card th, .card td{text-align:left; vertical-align:top; padding:8px 10px; border-bottom:1px solid var(--line)}
.card th{font-family:var(--mono); font-size:12px; color:var(--primary2); white-space:nowrap; width:210px}

.toc{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px}
.toc a{
  font-family:var(--mono); font-size:12px; font-weight:800;
  padding:6px 10px; border:1px solid var(--line); border-radius:999px;
  background:#fff; color:var(--primary2);
}
.toc a:hover{text-decoration:none; border-color:var(--primary)}


footer{padding:26px 0 34px; border-top:1px solid var(--line); color:var(--muted); margin-top:30px}
.footerRow{display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:14px}
footer a{color:inherit}

@media (max-width:760px){
  .pageHead h1{font-size:26px}
  .card{padding:18px}
  .card th{width:auto; display:block; border-bottom:none; padding-bottom:0}
  .card td{display:block; padding-top:2px}
}
