:root {
  --bg:#070b13; /* dunkleres Blau-Schwarz */
  --bg-2:#0a101d;
  --card:#101624;
  --muted:#a9b3c7;
  --text:#e9eef7;
  --brand:#8ef6ff;
  --brand-2:#6bd6ff;
  --accent:#8fffbe;
  --radius:14px;
  --shadow:0 8px 30px rgba(0,0,0,.45);
  --grad:linear-gradient(135deg, var(--brand), var(--brand-2), #8a8aff);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font:15px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial;
  color:var(--text);
  background:var(--bg);
}

/* Container / Layout */
.container{width:min(1200px,92%);margin-inline:auto}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}

/* Navigation */
header.nav{position:sticky;top:0;z-index:50;background:rgba(7,11,19,.65);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid rgba(255,255,255,.05)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;gap:12px;align-items:center;font-weight:800}
.logo{width:34px;height:34px;border-radius:9px;background:var(--grad);display:grid;place-items:center;color:#0b0f1a}
.nav-links{display:flex;gap:18px;flex-wrap:wrap}
.nav-links a{color:var(--muted);padding:8px 10px;border-radius:8px}
.nav-links a:hover{color:var(--text);background:rgba(255,255,255,.06);text-decoration:none}
.cta{background:var(--grad);color:#0b0f1a;font-weight:800;border:none;border-radius:11px;padding:10px 16px;cursor:pointer;box-shadow:0 8px 26px rgba(140,210,255,.35)}
.ghost{background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.15);box-shadow:none}

/* Layout */
section{padding:54px 0}
.grid{display:grid;gap:18px}
.grid.cols-2{grid-template-columns:repeat(2,1fr)}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
.grid.cols-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:980px){.grid.cols-3,.grid.cols-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}}

/* Karten */
.card{
  background:var(--card);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius);
  padding:18px;
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  gap:12px;
  position:relative;
  overflow:hidden
}
.chip{position:absolute;top:12px;right:12px;font-size:11px;background:rgba(255,255,255,.08);padding:6px 10px;border-radius:999px;color:var(--muted)}
.price{font-size:24px;font-weight:800}
.price small{color:var(--muted);font-weight:600}
.feat{display:grid;gap:8px;color:var(--muted);font-size:14px}

/* Footer */
footer{padding:36px 0 60px;border-top:1px solid rgba(255,255,255,.08);background:radial-gradient(1000px 400px at 50% 0%, rgba(120,210,255,.08), transparent 60%)}
.cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:18px}
@media (max-width:900px){.cols{grid-template-columns:1fr 1fr}}
.badge{display:inline-flex;gap:8px;align-items:center;color:#0b0f1a;background:var(--accent);padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px}
.lead{color:var(--muted)}
.sep{height:1px;background:rgba(255,255,255,.08);margin:16px 0}
.kudos{font-size:12px;color:var(--muted)}

/* --- Starfield verbessert --- */
.starfield,
.starfield::before,
.starfield::after{
  position:fixed;
  inset:-10% -10% auto -10%;
  height:160%;
  background:
    radial-gradient(1px 1px at 15% 25%, #fff 70%, transparent 71%) repeat,
    radial-gradient(1px 1px at 30% 70%, #fff 70%, transparent 71%) repeat,
    radial-gradient(1px 1px at 45% 40%, #fff 70%, transparent 71%) repeat,
    radial-gradient(2px 2px at 60% 80%, #fff 70%, transparent 71%) repeat,
    radial-gradient(1px 1px at 75% 20%, #fff 70%, transparent 71%) repeat,
    radial-gradient(1px 1px at 90% 60%, #fff 70%, transparent 71%) repeat;
  background-size:250px 250px,300px 300px,400px 400px,500px 500px,600px 600px,700px 700px;
  z-index:-3;
  animation:drift 160s linear infinite, sparkle 5s ease-in-out infinite alternate;
  opacity:.4;
  filter:drop-shadow(0 0 2px #fff)
}
.starfield::before{
  content:"";
  animation-duration:220s, sparkle 6s ease-in-out infinite alternate;
  opacity:.3;
  background-size:400px 400px,500px 500px,600px 600px;
}
.starfield::after{
  content:"";
  animation-duration:280s, sparkle 7s ease-in-out infinite alternate;
  opacity:.2;
  background-size:700px 700px,900px 900px,1000px 1000px;
}
@keyframes drift{0%{transform:translate3d(0,0,0) rotate(0)}100%{transform:translate3d(-200px,-200px,0) rotate(-0.5turn)}}
@keyframes sparkle{
  0%,100%{opacity:.35}
  50%{opacity:.5}
}

/* --- Login Modal --- */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.75);display:none;align-items:center;justify-content:center;z-index:80}
.modal.open{display:flex}
.modal .box{background:var(--card);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:20px;box-shadow:var(--shadow);width:min(480px,92%)}
.modal .box input{width:100%;padding:10px 12px;margin:8px 0;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0e1526;color:var(--text)}
.modal .box h3{margin:6px 0 10px}
/* ===== iOS LITE MODE: Crashfix / Performance on iPhone ===== */
html.ios-lite {
  --grad: linear-gradient(135deg, #8ef6ff, #6bd6ff); /* simpler Verlauf */
}

/* Schweres Zeug AUS auf iOS */
html.ios-lite .starfield,
html.ios-lite .starfield::before,
html.ios-lite .starfield::after { display:none !important; animation:none !important; filter:none !important; }

/* Kein Backdrop-Blur (verursacht häufig Safari-Abstürze) */
html.ios-lite header.nav,
html.ios-lite #mobileMenu {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: #0b0f1a !important; /* solide, ohne Transparenz */
}

/* Animationen/Transitions stark reduzieren */
html.ios-lite *, html.ios-lite *::before, html.ios-lite *::after {
  animation: none !important;
  transition: none !important;
}

/* Schlagschatten minimieren (GPU-Last runter) */
html.ios-lite .card,
html.ios-lite .cta {
  box-shadow: none !important;
}

/* Modals: simpler Overlay */
html.ios-lite .modal { background: rgba(0,0,0,.72) !important; }

/* Footer-Hintergrund vereinfachen */
html.ios-lite footer {
  background: #0a101d !important;
}

/* Hover-Farben beibehalten, aber ohne extra Filter/Blur */
html.ios-lite .nav-links a:hover {
  background: rgba(255,255,255,.08);
  text-decoration: none;
}
/* Dashboard Feinschliff */
.card .feat span strong { color: var(--text); }
.card .feat span { display:flex; gap:6px; align-items:center; }

