/* LEOVA — gemeinsames Blatt für die Dachseite + alle Rechtstexte.
   Flach schwarz, Gold NUR als Akzent: kein Rot-Stich, kein Gold-Gitter,
   keine Scan-Streifen (Leo-Regel, siehe feedback_leova_flat_black). */
:root{
  --bg:#050505; --card:#0b0b0b; --card2:#070707;
  --gold:#D4AF37; --glow:#F2CF7C; --muted:#857449; --dim:#5f5436;
  --txt:#E8E4DA; --txt2:#9b9284; --ok:#7CFFB0; --off:#FF6B6B;
  --line:rgba(212,175,55,.15); --line2:rgba(255,255,255,.06);
  --mono:"SFMono-Regular",ui-monospace,"Cascadia Mono","Consolas",monospace;
  --sans:"Segoe UI",system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
::-webkit-scrollbar{display:none}
html,body{min-height:100%;background:var(--bg);color:var(--txt);font-family:var(--sans);
  overflow-x:hidden;scrollbar-width:none;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}

/* weiches Licht von oben — reine Fläche, kein Muster */
.wash{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(1100px 640px at 50% -12%,rgba(212,175,55,.055),transparent 62%)}

.page{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column;
  padding:max(22px,env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));
  max-width:1120px;margin:0 auto;width:100%}
.page.doc{max-width:820px}

/* ------------------------------------------------------------------- Kopf */
.top{display:flex;align-items:center;gap:11px;animation:rise .5s ease both}
.top img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(212,175,55,.28))}
.wm{display:flex;flex-direction:column;line-height:1}
.wm .word{font-family:var(--mono);font-size:16px;font-weight:800;letter-spacing:6px;color:#fff}
.wm .word span{color:var(--gold)}
.wm .co{font-family:var(--mono);font-size:8px;letter-spacing:3px;color:var(--dim);margin-top:6px}

.sec-h{font-family:var(--mono);font-size:9px;letter-spacing:5px;color:var(--muted);
  display:flex;align-items:center;gap:12px;margin-bottom:16px}
.sec-h:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent)}

/* ---------------------------------------------------------------- Doc-Text */
.doc h1{font-family:var(--mono);font-size:clamp(22px,5.4vw,32px);font-weight:800;letter-spacing:.05em;
  color:#fff;margin:34px 0 6px;line-height:1.15}
.doc .stamp{font-family:var(--mono);font-size:9px;letter-spacing:2px;color:var(--dim);margin-bottom:30px}
.doc h2{font-family:var(--mono);font-size:12.5px;font-weight:800;letter-spacing:2.4px;color:var(--gold);
  margin:32px 0 10px}
.doc h3{font-size:14px;font-weight:700;color:#d9d2c4;margin:20px 0 6px}
.doc p,.doc li{font-size:14.5px;line-height:1.8;color:#a49b8c}
.doc p+p{margin-top:12px}
.doc ul,.doc ol{margin:10px 0 0 20px}
.doc li{margin-bottom:7px}
.doc b,.doc strong{color:#ddd6c8;font-weight:600}
.doc a{color:var(--glow);border-bottom:1px solid rgba(242,207,124,.3)}
.doc a:hover{border-bottom-color:var(--glow)}
.doc table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13.5px}
.doc td,.doc th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line2);color:#a49b8c;vertical-align:top}
.doc th{font-family:var(--mono);font-size:9px;letter-spacing:1.6px;color:var(--muted);font-weight:600}
.doc .note{margin-top:16px;padding:15px 17px;border-radius:12px;background:#0a0a0a;
  border:1px solid var(--line);font-size:13.5px;line-height:1.75;color:#a49b8c}
.back{display:inline-flex;align-items:center;gap:8px;margin-top:36px;font-family:var(--mono);
  font-size:9.5px;letter-spacing:2px;color:var(--muted)}
.back:hover{color:var(--glow)}

/* ------------------------------------------------------------ Legal-Block */
.legal{margin-top:44px;border-radius:16px;padding:24px 22px;background:var(--card2);
  border:1px solid var(--line2);animation:rise .5s .35s ease both}
.lg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.lg-ident{font-size:13.5px;line-height:1.75;color:#a49b8c}
.lg-co{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:#e8e0cd;margin-bottom:8px}
.lg-ln{display:flex;gap:10px;flex-wrap:wrap}
.lg-k{font-family:var(--mono);font-size:8.5px;letter-spacing:1.6px;color:var(--dim);
  min-width:66px;padding-top:5px}
.lg-ident a{color:var(--glow)}
.lg-bill{margin-top:20px;padding-top:18px;border-top:1px solid var(--line2);
  font-size:13px;line-height:1.75;color:#8f8778}
.lg-bill b{color:#d3cbb8;font-weight:600}

#leova-foot{margin-top:34px;padding-top:20px;border-top:1px solid var(--line2)}
.lg-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-family:var(--mono);font-size:9px;letter-spacing:2px}
.lg-links a{color:var(--muted);padding:4px 0}
.lg-links a:hover,.lg-links a.on{color:var(--glow)}
.lg-copy{margin-top:14px;font-family:var(--mono);font-size:8.5px;letter-spacing:1.4px;color:#4a4232;line-height:1.8}

@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@media (max-width:640px){
  .page{padding:max(16px,env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom))}
  .doc p,.doc li{font-size:14px}
  .legal{padding:20px 17px;margin-top:34px}
  .lg-k{min-width:0;padding-top:0;display:block;width:100%}
  .lg-ln{gap:2px}
}
