
:root { color-scheme: light; }
.container { max-width: 1200px; }
.btn { @apply inline-flex items-center justify-center rounded-lg px-4 py-2 font-semibold transition-colors; }
.btn-sm { @apply px-3 py-1 text-sm; }
.btn-primary { @apply bg-brand text-white hover:bg-brand-dark; }
.btn-secondary { @apply bg-accent text-white hover:bg-orange-600; }
.btn-white { @apply bg-white text-slate-900 hover:bg-slate-100; }
.btn-ghost { @apply border border-slate-300 text-slate-800 hover:bg-slate-100; }
.nav-link { @apply text-slate-700 hover:text-slate-900; }
.nav-link.active { @apply text-brand font-semibold; }
.card { @apply bg-white border border-slate-200 rounded-xl overflow-hidden shadow-sm hover:shadow-md transition-shadow; }
.card-img { @apply w-full h-48 object-cover; }
.card-title { @apply text-lg font-semibold mb-1; }
.badge { @apply inline-block text-xs bg-white/10 border border-white/20 px-2 py-0.5 rounded; }
.chip { @apply inline-block bg-slate-100 text-slate-700 px-3 py-1 rounded-full text-sm; }
.check::before { content: "✓"; @apply inline-flex w-5 h-5 items-center justify-center rounded-full bg-emerald-100 text-emerald-700 font-bold; }
.input { @apply w-full rounded-lg border border-slate-300 px-3 py-2 focus:outline-none focus:ring-2 focus:ring-brand bg-white; }
.label { @apply block text-sm font-medium text-slate-700 mb-1; }
.social { @apply inline-flex items-center justify-center w-9 h-9 rounded-full border border-white/20 hover:bg-white/10; }
.stat { @apply bg-white border border-slate-200 rounded-xl p-6 text-center; }
.stat-value { @apply text-3xl font-bold; }
.stat-label { @apply text-slate-600; }
.partner-card { @apply bg-white border border-slate-200 rounded-lg p-4 text-center font-semibold; }
.prose h2 { @apply text-2xl font-bold mt-6; }
.prose p, .prose li { @apply text-slate-700; }
.cookie-banner { @apply fixed bottom-0 left-0 right-0 bg-white border-t border-slate-200 shadow-lg z-50; }
.btn:focus-visible, .input:focus-visible, a:focus-visible { outline: 2px solid #0ea5e9; outline-offset: 2px; }
