:root{--bg:#000;--bg2:#050a07;--glass:rgba(0,255,102,.045);--line:rgba(0,255,102,.2);--text:#f5f5f7;--muted:#a1a1a6;--accent:#00ff66;--accent2:#00c853;--on-accent:#00160a;--glow:rgba(0,255,102,.35);--shadow:0 10px 40px rgba(0,0,0,.5);--ok:#00ff66;--bad:#ff453a}
[data-theme=light]{--bg:#f5f5f7;--bg2:#fff;--glass:rgba(255,255,255,.72);--line:rgba(0,0,0,.1);--text:#1d1d1f;--muted:#6e6e73;--accent:#00a63e;--accent2:#007a2e;--on-accent:#fff;--line:rgba(0,0,0,.12);--glow:rgba(0,166,62,.25);--shadow:0 10px 40px rgba(0,0,0,.08)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg);overflow-x:hidden;transition:background-color .4s}
html[data-theme=dark]{color-scheme:dark}
html[data-theme=light]{color-scheme:light}
body{font-family:-apple-system,"SF Pro Display","Inter",system-ui,Arial,sans-serif;color:var(--text);line-height:1.6;min-height:100vh;overflow-x:clip;transition:color .4s;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(600px 400px at 15% 0,var(--glow),transparent 70%),radial-gradient(500px 400px at 90% 20%,rgba(0,255,102,.12),transparent 70%)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.glass{background:var(--glass);border:1px solid var(--line);border-radius:22px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow)}
header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 5%;background:var(--glass);border-bottom:1px solid var(--line);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.logo{font-weight:800;font-size:22px;letter-spacing:1px}.logo span{color:var(--accent)}
nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
nav a{padding:8px 14px;border-radius:99px;font-size:14px;color:var(--muted);transition:.25s}
nav a:hover,nav a.on{color:var(--text);background:var(--glass)}
.langBtn{flex:none;height:30px;padding:0 12px;border-radius:99px;border:1px solid var(--line);background:var(--glass);color:var(--text);font-size:12px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:.25s}
.langBtn:hover{border-color:var(--accent);color:var(--accent)}
.switch{width:52px;height:30px;border-radius:99px;border:1px solid var(--line);background:var(--glass);cursor:pointer;position:relative;margin-left:6px}
.switch::after{content:"🌙";position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--bg2);display:grid;place-items:center;font-size:13px;transition:.35s cubic-bezier(.3,1.4,.5,1);box-shadow:0 2px 6px rgba(0,0,0,.3)}
[data-theme=light] .switch::after{content:"☀️";transform:translateX(22px)}
.wrap{max-width:1080px;margin:auto;padding:0 22px}
.back{display:inline-flex;gap:8px;margin:26px 0 0;padding:9px 18px;border-radius:99px;font-size:14px;color:var(--muted);transition:.25s}
.back:hover{color:var(--text);transform:translateX(-3px)}
.hero{text-align:center;padding:110px 0 80px}
.pill{display:inline-block;padding:7px 16px;border-radius:99px;font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--accent);border:1px solid var(--line);background:var(--glass);margin-bottom:24px}
h1{font-size:clamp(40px,7vw,78px);line-height:1.06;letter-spacing:-.03em;margin-bottom:20px}
h1 em,.grad{font-style:normal;background:linear-gradient(120deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{max-width:600px;margin:0 auto;color:var(--muted);font-size:18px}
.page-title{padding:30px 0 10px}.page-title h1{font-size:clamp(34px,5vw,54px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border:0;border-radius:99px;background:linear-gradient(120deg,var(--accent),var(--accent2));color:var(--on-accent);font-weight:700;cursor:pointer;transition:.3s;box-shadow:0 6px 24px var(--glow)}
.btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 36px var(--glow)}
.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
.hero .btn{margin-top:34px}
section{padding:60px 0}
.head{margin-bottom:34px}.head h2{font-size:clamp(28px,4vw,40px);letter-spacing:-.02em}.head p{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.card{padding:28px;transition:.35s}
.card:hover{transform:translateY(-6px) scale(1.015);border-color:var(--accent);box-shadow:0 18px 50px var(--glow)}
.card .ico{font-size:30px;margin-bottom:14px}.card h3{margin-bottom:8px}.card p,.card li{color:var(--muted);font-size:14px}
.price{position:relative;display:flex;flex-direction:column}
.price.hot{border-color:var(--accent);box-shadow:0 14px 50px var(--glow)}
.price .tag{position:absolute;top:-12px;right:22px;background:linear-gradient(120deg,var(--accent),var(--accent2));color:var(--on-accent);font-size:11px;font-weight:700;padding:4px 12px;border-radius:99px;letter-spacing:1px}
.amount{font-size:44px;font-weight:700;letter-spacing:-.02em;margin:10px 0}.amount small{font-size:15px;color:var(--muted);font-weight:400}
.price ul{list-style:none;margin:12px 0 26px;flex:1}.price li{padding:9px 0;border-top:1px solid var(--line)}.price li::before{content:"✓ ";color:var(--ok);font-weight:700}
.note{margin-top:22px;color:var(--muted);font-size:13px;text-align:center}
.two{display:grid;grid-template-columns:1fr 1.5fr;gap:28px;align-items:start}
@media(max-width:800px){.two{grid-template-columns:1fr}nav a{padding:6px 10px;font-size:13px}.hero{padding:70px 0 50px}}
.box{padding:30px}.box h3{font-size:22px;margin-bottom:6px}
label{display:block;margin:16px 0 6px;font-size:14px;color:var(--muted)}
input:not([type=checkbox]),select,textarea{width:100%;padding:13px 15px;border-radius:14px;border:1px solid var(--line);background:var(--bg2);color:var(--text);outline:none;transition:.25s}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--glow)}
textarea{min-height:130px;resize:vertical}
.hp{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.consent{display:flex;gap:11px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--glass)}
.consent input{margin-top:5px;accent-color:var(--accent);width:17px;height:17px;flex:none}
.consent label{margin:0;font-size:12.5px;line-height:1.55;color:var(--muted)}.consent a{color:var(--accent);text-decoration:underline}
form .btn{width:100%;margin-top:22px}
#status{display:none;margin-top:16px;padding:14px;border-radius:14px;font-size:14px;overflow-wrap:anywhere}
#status.success{display:block;background:rgba(48,209,88,.14);color:var(--ok)}#status.error{display:block;background:rgba(255,69,58,.14);color:var(--bad)}
.dl{display:flex;flex-direction:column;gap:6px}.dl .btn{margin-top:14px;padding:11px 20px;font-size:14px}
.sup{display:flex;gap:11px;align-items:center;margin:22px 0 6px}.sup input{width:18px;height:18px;accent-color:var(--accent)}.sup label{margin:0;color:var(--text)}
[hidden]{display:none!important}
details{padding:18px 22px;margin-bottom:12px;border-radius:18px}summary{cursor:pointer;font-weight:600}details p{margin-top:10px;color:var(--muted);font-size:15px}
.legal h2{margin:34px 0 8px;font-size:22px}.legal p,.legal li{color:var(--muted);margin-bottom:8px}.legal ul{padding-left:20px}
footer{margin-top:50px;padding:36px 5%;text-align:center;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
footer a{margin:0 10px}footer a:hover{color:var(--accent)}

/* ===== Finale Fixes: Rand, Header, Mobil ===== */
main{overflow-x:clip}
nav{margin-left:auto}nav a{white-space:nowrap}.switch{flex:none}
@media(max-width:700px){
  header{flex-wrap:wrap;padding:10px 4%}
  .logo{margin-right:auto}.switch{order:2}
  nav{order:3;flex:1 0 100%;margin-left:0;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  nav::-webkit-scrollbar{display:none}
}
@media(max-width:640px){
  .wrap{padding:0 18px}section{padding:44px 0}.head{margin-bottom:24px}
  .card,.box{padding:22px}.amount{font-size:38px}.page-title h1{font-size:clamp(32px,9vw,44px)}
  footer{padding:30px 18px}footer a{display:inline-block;margin:4px 8px}
}
/* ===== Zugangssperre ===== */
html.locked{overflow:hidden}
html.locked body>*:not(#gate):not(.dhg-cursor):not(#cookieBanner){visibility:hidden}
#gate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px}
#gate .gcard{width:min(420px,100%);padding:38px 28px;text-align:center}
#gate .logo{font-size:26px;margin-bottom:14px}
#gate h1{font-size:26px;letter-spacing:-.02em;margin-bottom:8px}
#gate p{color:var(--muted);font-size:15px;margin-bottom:22px}
#gate input{text-align:center}
#gateErr{min-height:22px;margin:10px 0 2px;font-size:14px;color:var(--bad)}
#gate .btn{width:100%}
#gate .shake{animation:gshake .4s}
@keyframes gshake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}

/* ===== Cookie-Banner ===== */
#cookieBanner{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:10000;width:min(640px,92vw);padding:20px 22px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;animation:cookieUp .5s cubic-bezier(.2,.8,.2,1) backwards}
@keyframes cookieUp{from{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
.cookie-body{flex:1 1 320px;min-width:0}
.cookie-body p{margin:0;font-size:13.5px;color:var(--muted)}
.cookie-body p+p{margin-top:6px}
.cookie-body strong{color:var(--text)}
.cookie-body a{color:var(--accent);text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex:none}
.cookie-actions .btn{padding:11px 18px;font-size:14px;white-space:nowrap}
@media(max-width:560px){#cookieBanner{bottom:0;left:0;transform:none;width:100%;border-radius:20px 20px 0 0;flex-direction:column;align-items:stretch}.cookie-actions{justify-content:stretch}.cookie-actions .btn{flex:1}}
@media(prefers-reduced-motion:reduce){#cookieBanner{animation:none}}

/* ===== Hacker-Theme (Giftgrün) ===== */
.logo,.pill,.price .tag,.amount small,.langBtn{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace}
.logo span{text-shadow:0 0 14px var(--accent)}
h1 em,.grad{filter:drop-shadow(0 0 18px var(--glow))}
.btn.ghost{color:var(--text)}
.btn:disabled{filter:grayscale(.4)}
.sub a.on,.num{color:var(--on-accent)!important}
::selection{background:var(--accent);color:var(--on-accent)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(0,255,102,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,102,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 50% 0,#000 10%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 0,#000 10%,transparent 75%)}
[data-theme=light] body::after{opacity:.25}
