*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#0d0f14;color:#e8eaf0;line-height:1.6}
a{color:inherit;text-decoration:none}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.notice{background:#f5b301;color:#111;text-align:center;font-weight:700;padding:12px 16px;position:sticky;top:0;z-index:20}
header{background:rgba(13,15,20,.95);border-bottom:1px solid #222733;position:sticky;top:46px;z-index:10}
nav{display:flex;align-items:center;justify-content:space-between;height:64px}.logo{font-weight:800;font-size:1.3rem;letter-spacing:.5px}.logo span{color:#e3262d}
.menu{display:flex;gap:28px;list-style:none}.menu a:hover{color:#e3262d}.burger{display:none;background:none;border:0;color:#fff;font-size:1.6rem;cursor:pointer}
.hero{min-height:600px;display:flex;align-items:center;background:radial-gradient(circle at 70% 30%,#3a1216 0,#0d0f14 60%)}
.hero h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.1;margin-bottom:20px}.hero p{font-size:1.2rem;color:#b5bac8;max-width:620px;margin-bottom:32px}
.btn{display:inline-block;padding:14px 28px;border-radius:4px;font-weight:600;background:#e3262d;color:#fff;border:0;margin-right:12px}.btn.ghost{background:none;border:1px solid #fff}
.btn[disabled]{background:#3a3f4c;color:#9aa0ae;cursor:not-allowed}
section{padding:90px 0}.alt{background:#141821}h2{font-size:2.2rem;margin-bottom:16px}.lead{color:#b5bac8;max-width:700px;margin-bottom:40px}
.feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature.rev .img{order:2}
.img{aspect-ratio:16/10;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:5rem;background:linear-gradient(135deg,#e3262d,#5a0d12)}
.img.b{background:linear-gradient(135deg,#2563eb,#0b1f4d)}.tag{color:#e3262d;font-weight:700;text-transform:uppercase;font-size:.85rem;letter-spacing:2px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.card{background:#1a1f2a;border:1px solid #262c3a;border-radius:8px;padding:28px}
.card h3{margin:12px 0 8px}.price{margin:16px 0;font-weight:700;color:#f5b301}.small{font-size:.85rem;color:#9aa0ae;margin-top:8px}
ul.list{margin:16px 0 24px 20px;color:#c8ccd8}.ph{border:2px dashed #f5b301;padding:24px;border-radius:8px;color:#f5d27a}
footer{background:#08090c;padding:50px 0 30px;color:#8a90a0;font-size:.9rem}.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:30px;margin-bottom:30px}footer h4{color:#fff;margin-bottom:10px}footer li{list-style:none;margin:4px 0}
@media(max-width:800px){.feature{grid-template-columns:1fr}.feature.rev .img{order:0}.burger{display:block}.menu{display:none;position:absolute;top:64px;left:0;right:0;background:#0d0f14;flex-direction:column;padding:20px 24px}.menu.open{display:flex}header{top:70px}}
/* --- Navigation: Dropdown & Konto --- */
.menu{align-items:center}.menu>li{position:relative}
.dd-toggle{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0}.dd-toggle:hover{color:#e3262d}
.dd-menu{display:none;position:absolute;top:calc(100% + 18px);left:-16px;min-width:290px;background:#141821;border:1px solid #262c3a;border-radius:8px;list-style:none;padding:8px;box-shadow:0 12px 30px rgba(0,0,0,.5)}
.dd-menu a{display:block;padding:10px 14px;border-radius:6px}.dd-menu a:hover{background:#1f2533;color:#fff}
.dropdown.open .dd-menu{display:block}
@media(hover:hover) and (min-width:801px){.dropdown:hover .dd-menu{display:block}.dropdown::after{content:"";position:absolute;left:0;right:0;top:100%;height:20px}}
.nav-cta{background:#e3262d;color:#fff;padding:8px 16px;border-radius:4px}.menu a.nav-cta:hover{background:#c41f25;color:#fff}
.link{color:#ff6b70;text-decoration:underline}
/* --- Formulare --- */
.narrow{max-width:560px}.form{display:flex;flex-direction:column;gap:16px;background:#141821;border:1px solid #262c3a;border-radius:8px;padding:28px}
.form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:.95rem}
.form input,.form textarea,.chat textarea,.chat input,.reply textarea{background:#0d0f14;border:1px solid #333a4a;border-radius:4px;color:#e8eaf0;padding:12px;font:inherit}
.form input:focus,.chat textarea:focus,.chat input:focus,.reply textarea:focus{outline:2px solid #e3262d;border-color:transparent}
.form label.check{flex-direction:row;align-items:center;font-weight:400}.form .btn{align-self:flex-start}
.alert{padding:12px 16px;border-radius:6px;margin-bottom:14px}.alert.err{background:#3a1216;border:1px solid #e3262d}.alert.ok{background:#11301d;border:1px solid #2fa35a}
code{background:#1f2533;padding:2px 6px;border-radius:4px}
.btn.sm{padding:8px 14px;font-size:.85rem}.btn.danger{border-color:#e3262d;color:#ff6b70}
/* --- Profil --- */
.profile-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:24px}.profile-grid .downloads{grid-row:span 2}
.dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:16px 0 22px}.dl dt{color:#9aa0ae}
.empty{border:2px dashed #333a4a;border-radius:8px;padding:28px;margin-top:16px;color:#b5bac8;text-align:center}.empty p+p{margin-top:8px}
.card .form{background:none;border:0;padding:16px 0 0}
@media(max-width:800px){.profile-grid{grid-template-columns:1fr}.profile-grid .downloads{grid-row:auto}}
/* --- Produktseiten --- */
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.features .card h3{margin-top:4px}.features .card p{color:#b5bac8}
.ficon{font-size:1.8rem}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.gallery figure{background:#1a1f2a;border:1px solid #262c3a;border-radius:8px;overflow:hidden}
.gallery img{display:block;width:100%;height:auto;cursor:zoom-in}.gallery figcaption{padding:12px 16px;font-size:.88rem;color:#b5bac8}
.gallery figcaption strong{display:block;color:#fff}
.buybox{background:#141821;border:1px solid #262c3a;border-radius:8px;padding:28px;max-width:520px}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;z-index:100;padding:24px;cursor:zoom-out}
.lightbox img{max-width:100%;max-height:90vh;border-radius:6px}
/* --- Chat-Widget --- */
.chat{position:fixed;right:20px;bottom:20px;z-index:50;font-size:.95rem}
.chat-fab{background:#e3262d;color:#fff;border:0;border-radius:30px;padding:14px 22px;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.5);display:flex;align-items:center;gap:8px}
.dot{width:10px;height:10px;border-radius:50%;background:#9aa0ae;display:inline-block}.chat.online .dot{background:#35d07f;box-shadow:0 0 0 3px rgba(53,208,127,.25)}
.chat-panel{position:absolute;right:0;bottom:64px;width:360px;max-width:calc(100vw - 40px);background:#141821;border:1px solid #2a3142;border-radius:12px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.6);display:flex;flex-direction:column}
.chat-panel[hidden]{display:none}
.chat-head{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#1d2230;border-bottom:1px solid #2a3142}.chat-status{font-size:.85rem;color:#b5bac8;display:flex;align-items:center;gap:6px}
.chat-close{margin-left:auto;background:none;border:0;color:#fff;font-size:1.4rem;cursor:pointer}
.chat-msgs{height:300px;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}
.msg{max-width:82%;padding:9px 12px;border-radius:12px;white-space:pre-wrap;word-wrap:break-word}.msg time{display:block;font-size:.72rem;opacity:.65;margin-top:3px}
.msg.visitor{align-self:flex-end;background:#e3262d;color:#fff;border-bottom-right-radius:3px}.msg.admin{align-self:flex-start;background:#262c3a;border-bottom-left-radius:3px}
.chat-hint{color:#9aa0ae;font-size:.85rem;text-align:center}.chat-err{color:#ff8a8e;font-size:.85rem;text-align:center}
.chat-form{display:flex;flex-direction:column;gap:8px;padding:12px;border-top:1px solid #2a3142}.chat-form .btn{margin:0;padding:10px}
.chat-email-wrap{display:flex;flex-direction:column;gap:6px}.chat-email-wrap[hidden]{display:none}.chat-offline-note{font-size:.82rem;color:#f5d27a}
.chat-privacy{font-size:.72rem;color:#7d8394}.chat-privacy a{text-decoration:underline}
/* --- Admin --- */
body.admin{height:100vh;display:flex;flex-direction:column}
.admin-bar{background:#08090c;border-bottom:1px solid #222733}.admin-bar-in{display:flex;align-items:center;gap:20px;height:60px;max-width:none}.admin-bar form{margin-left:auto}
.pill{padding:5px 12px;border-radius:20px;font-size:.85rem;font-weight:700;cursor:pointer}.pill.on{background:#11301d;color:#35d07f}.pill.off{background:#2a2f3b;color:#9aa0ae}
.switch input{display:none}
.admin-main{flex:1;display:grid;grid-template-columns:340px 1fr;min-height:0}
.conv-list{border-right:1px solid #222733;overflow-y:auto;background:#10131a}.conv-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #222733}
#convs{list-style:none}.conv{padding:12px 16px;border-bottom:1px solid #1c2130;cursor:pointer}.conv:hover{background:#171b25}.conv.active{background:#1f2533;border-left:3px solid #e3262d}
.conv strong{display:block}.conv p{color:#9aa0ae;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv.unread strong::after{content:" ●";color:#e3262d}
.pad{padding:16px}.conv-view{display:flex;flex-direction:column;min-height:0}#convPane{display:flex;flex-direction:column;flex:1;min-height:0}#convPane[hidden]{display:none}
.conv-meta{padding:14px 20px;border-bottom:1px solid #222733}.conv-actions{display:flex;gap:8px;margin-top:10px}.conv-actions .btn{margin:0}
.admin-msgs{flex:1;height:auto}.reply{display:flex;gap:10px;padding:14px 20px;border-top:1px solid #222733}.reply textarea{flex:1}.reply .btn{margin:0;align-self:flex-end}
@media(max-width:800px){.admin-main{grid-template-columns:1fr}.conv-list{max-height:35vh}.dd-menu{position:static;box-shadow:none;margin-top:8px}.menu{align-items:flex-start;gap:16px}}
.admin-bar{position:static}

/* Construction gate */
.gate-overlay{position:fixed;inset:0;z-index:10000;background:rgba(8,8,12,.92);display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(6px)}
.gate-overlay[hidden]{display:none!important}
.gate-box{max-width:480px;width:100%;background:#1a1a22;border:1px solid #333;border-radius:16px;padding:36px 32px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.gate-box h2{margin:0 0 12px;font-size:1.5rem;color:#fff}
.gate-box p{color:#bbb;line-height:1.55;margin:0 0 24px}
.gate-box .btn{width:100%;max-width:280px}
body.gate-locked{overflow:hidden}
body.gate-locked > *:not(.gate-overlay){visibility:hidden}
