:root{
  --cs-yellow:#ffbd59;
  --cs-orange:#ff8c00;
  --cs-ink:#0b0b0f;
  --cs-dark:#15151a;
  --cs-foreground:#ffffff;
  --wa-green:#25D366;
  --cs-success:#10b981;
  --cs-danger:#ef4444;
  --cs-blue:#3b82f6;
  --cs-purple:#8b5cf6;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html,body{
  margin:0;
  padding:0;
}

body{
  min-height:100vh;
  background:
    radial-gradient(circle at top left, rgba(255,189,89,0.14), transparent 55%),
    radial-gradient(circle at bottom right, rgba(59,130,246,0.14), transparent 55%),
    var(--cs-ink);
  color:var(--cs-foreground);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

img{
  max-width:100%;
  display:block;
}

/* Links */
a{
  color:inherit;
  text-decoration:none;
}
a:hover{
  text-decoration:none;
}

/* Layout Util */
.glass{
  backdrop-filter:saturate(160%) blur(10px);
  background:rgba(15,15,18,0.8);
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 18px 60px rgba(0,0,0,0.6);
}
.card-hover{
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
}
.card-hover:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 40px rgba(0,0,0,0.7);
  border-color:rgba(255,189,89,0.8);
}

/* Buttons */
.btn,
.btn-ghost,
.btn-wa{
  border-radius:999px;
  padding:.75rem 1.5rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  font-size:.9rem;
  line-height:1.2;
  min-height:44px;
  font-weight:600;
  letter-spacing:.01em;
  cursor:pointer;
  border:none;
  white-space:nowrap;
  transition:all .2s ease;
}

.btn{
  background:linear-gradient(135deg,var(--cs-yellow),var(--cs-orange));
  color:#111;
  box-shadow:0 10px 30px rgba(255,189,89,0.35);
}
.btn:hover{
  transform:translateY(-1px) translateZ(0);
  box-shadow:0 14px 40px rgba(255,189,89,0.5);
  filter:brightness(1.03);
}

.btn-ghost{
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.14);
  color:#fff;
}
.btn-ghost:hover{
  background:rgba(255,255,255,0.10);
  border-color:rgba(255,255,255,0.4);
}

.btn-wa{
  background:var(--wa-green);
  color:#111;
  box-shadow:0 10px 30px rgba(37,211,102,0.35);
}
.btn-wa:hover{
  transform:translateY(-1px) translateZ(0);
  box-shadow:0 14px 40px rgba(37,211,102,0.55);
  filter:brightness(1.05);
}

.btn[disabled],
.btn-ghost[disabled],
.btn-wa[disabled]{
  opacity:.6;
  cursor:not-allowed;
  box-shadow:none;
  transform:none;
}

/* Tags / Badges */
.tag{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  font-size:.78rem;
  padding:.35rem .9rem;
  border-radius:999px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  white-space:nowrap;
}
.tag i{
  font-size:1rem;
}

.badge{
  display:inline-flex;
  align-items:center;
  padding:.18rem .55rem;
  border-radius:999px;
  font-size:.72rem;
  font-weight:500;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.18);
}

.buy-badge{
  border-radius:999px;
  padding:.35rem 1rem;
  font-size:.8rem;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  background:rgba(16,185,129,0.15);
  border:1px solid rgba(16,185,129,0.7);
  color:#a7f3d0;
}

/* Pulse */
.pulse{
  position:relative;
}
.pulse::after{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  border:1px solid rgba(16,185,129,0.7);
  opacity:.6;
  animation:pulse 1.6s infinite;
}
@keyframes pulse{
  0%{transform:scale(1); opacity:.6;}
  60%{transform:scale(1.12); opacity:0;}
  100%{transform:scale(1.12); opacity:0;}
}

/* Form Controls */
input,
select,
textarea{
  background:rgba(255,255,255,0.03);
  border-radius:.75rem;
  border:1px solid rgba(255,255,255,0.16);
  padding:.55rem .8rem;
  font-size:.85rem;
  color:#fff;
  width:100%;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(255,189,89,0.9);
  box-shadow:0 0 0 1px rgba(255,189,89,0.4);
  background:rgba(255,255,255,0.05);
}
input::placeholder,
textarea::placeholder{
  color:rgba(255,255,255,0.4);
}
textarea{
  resize:vertical;
  min-height:120px;
}

.touch-target{
  min-height:44px;
}

/* Top Logo */
.logo-large{
  height:2.8rem;   /* <-- hier Logo deutlich größer */
  width:auto;
  filter:drop-shadow(0 12px 25px rgba(0,0,0,0.75));
}

/* Simple container helper (falls mal ohne Tailwind) */
.cs-container{
  max-width:1120px;
  margin:0 auto;
  padding:0 1rem;
}

/* Cookie Bar */
#cookiebar{
  backdrop-filter:saturate(150%) blur(15px);
  background:rgba(7,7,10,0.96);
}

/* Table (Bestand / Übersicht) */
.cs-table{
  width:100%;
  border-collapse:collapse;
  font-size:.84rem;
}
.cs-table th,
.cs-table td{
  padding:.65rem .75rem;
  border-bottom:1px solid rgba(255,255,255,0.06);
  text-align:left;
  vertical-align:middle;
}
.cs-table th{
  font-size:.78rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:rgba(255,255,255,0.7);
}
.cs-table tr:hover td{
  background:rgba(255,255,255,0.02);
}

/* Status Chips */
.chip{
  display:inline-flex;
  align-items:center;
  padding:.16rem .6rem;
  border-radius:999px;
  font-size:.72rem;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
}
.chip-hot{
  background:rgba(248,113,113,0.14);
  border-color:rgba(248,113,113,0.7);
  color:#fecaca;
}
.chip-ev{
  background:rgba(45,212,191,0.10);
  border-color:rgba(45,212,191,0.7);
  color:#99f6e4;
}

/* Footer links */
.cs-footer-links a{
  text-decoration:none;
  border-bottom:1px dashed rgba(255,255,255,0.26);
}
.cs-footer-links a:hover{
  border-bottom-style:solid;
}

/* Small screen tuning */
@media (max-width:640px){
  .logo-large{
    height:2.4rem;
  }
  .btn,
  .btn-ghost,
  .btn-wa{
    width:100%;
  }
}

/* Utility spacing (für Seiten ohne Tailwind) */
.mt-2{margin-top:.5rem;}
.mt-3{margin-top:.75rem;}
.mt-4{margin-top:1rem;}
.mt-6{margin-top:1.5rem;}
.mt-8{margin-top:2rem;}

.mb-2{margin-bottom:.5rem;}
.mb-3{margin-bottom:.75rem;}
.mb-4{margin-bottom:1rem;}
.mb-6{margin-bottom:1.5rem;}
.mb-8{margin-bottom:2rem;}

.text-sm{font-size:.9rem;}
.text-xs{font-size:.78rem;}
.text-center{text-align:center;}
.text-right{text-align:right;}

.flex{display:flex;}
.flex-col{flex-direction:column;}
.flex-row{flex-direction:row;}
.items-center{align-items:center;}
.justify-between{justify-content:space-between;}
.gap-2{gap:.5rem;}
.gap-3{gap:.75rem;}
.gap-4{gap:1rem;}

.rounded-xl{border-radius:1rem;}
.rounded-2xl{border-radius:1.25rem;}
.rounded-full{border-radius:999px;}

.border-t{border-top:1px solid rgba(255,255,255,0.08);}
