/* tw-local.css – Tailwind-like utility subset used by this project (local, no CDN) */

:root{
  --c-cyan: #00f2ff;
  --c-green: rgb(57,161,52);
}

/* base */
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;}
a{color:inherit; text-decoration:none;}
a:visited{color:inherit;}

/* layout */
.w-full{width:100%}
.mx-auto{margin-left:auto;margin-right:auto}
.max-w-7xl{max-width:80rem}
.max-w-3xl{max-width:48rem}
.text-center{text-align:center}
.block{display:block}
.inline-block{display:inline-block}
.hidden{display:none}
.flex{display:flex}
.grid{display:grid}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.gap-4{gap:1rem}
.gap-8{gap:2rem}
.gap-10{gap:2.5rem}
.space-y-4 > * + *{margin-top:1rem}

/* padding / margin */
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-10{padding-left:2.5rem;padding-right:2.5rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}
.pb-8{padding-bottom:2rem}

.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-10{margin-top:2.5rem}
.mt-12{margin-top:3rem}
.mt-14{margin-top:3.5rem}

.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3rem}

/* typography */
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-5xl{font-size:3rem;line-height:1}
.tracking-tight{letter-spacing:-0.025em}
.tracking-widest{letter-spacing:.1em}
.tracking-\[0\.4em\]{letter-spacing:.4em}
.uppercase{text-transform:uppercase}
.italic{font-style:italic}
.font-light{font-weight:300}
.font-bold{font-weight:700}
.font-black{font-weight:900}
.leading-relaxed{line-height:1.625}

/* colors */
.text-white{color:#fff}
.text-black{color:#000}
.text-cyan-300{color:rgb(103,232,249)}
.text-green-300{color:rgb(134,239,172)}
.opacity-60{opacity:.6}
.opacity-80{opacity:.8}

/* borders/background */
.border{border-width:1px;border-style:solid}
.border-l-2{border-left-width:2px}
.border-white\/10{border-color:rgba(255,255,255,.10)}
.border-cyan-400{border-color:rgb(34,211,238)}
.bg-white{background:#fff}
.bg-white\/5{background:rgba(255,255,255,.05)}
.outline-none{outline:0}
.cursor-pointer{cursor:pointer}
.transition{transition:all .2s ease}

/* hover/focus helpers */
.hover\:border-cyan-400:hover{border-color:rgb(34,211,238)}
.hover\:bg-cyan-300:hover{background:rgb(103,232,249)}
/* Missing: focus bg helper */
.focus\:bg-white\/10:focus{background:rgba(255,255,255,.10)}
/* Missing: hover bg-white/10 */
.hover\:bg-white\/10:hover{background:rgba(255,255,255,.10)}

/* responsive breakpoints (md = 768px, lg = 1024px) */
@media(min-width:768px){
  .md\:p-10{padding:2.5rem}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .md\:text-2xl{font-size:1.5rem;line-height:2rem}
  .md\:text-7xl{font-size:4.5rem;line-height:1}
  .md\:justify-end{justify-content:flex-end}
  .md\:w-56{width:14rem}
}
@media(min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg\:flex{display:flex}
}

/* select/option text color fix */
select,option{color:#fff; background:rgba(7,20,37,0.92);}

/* mitmachen image button size */
.mitmachen-img{height:56px;width:auto;display:block;}

/* gap helpers */
.gap-14{gap:3.5rem}
.gap-6{gap:1.5rem}

/* width helpers */
.w-44{width:11rem}
.focus\:bg-white\/10:focus{background:rgba(255,255,255,.10)}

/* widths */
.w-44{width:11rem}
.w-56{width:14rem}

/* drop shadow */
.drop-shadow-\[0_0_18px_rgba\(0\,242\,255\,0\.25\)\]{filter:drop-shadow(0 0 18px rgba(0,242,255,.25))}

/* responsive */
@media (min-width:768px){
  .md\:p-10{padding:2.5rem}
  .md\:text-2xl{font-size:1.5rem;line-height:2rem}
  .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .md\:text-7xl{font-size:4.5rem;line-height:1}
  .md\:w-56{width:14rem}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:justify-end{justify-content:flex-end}
}
@media (min-width:1024px){
  .lg\:flex{display:flex}
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
