html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

/* ==============================================================
   LOKAL TEMA SİSTEMİ (PREMIUM SKIN SETS)
============================================================== */

/* Varsayılan Tema (Light) */
:root {
  --font-family-base: 'Outfit', sans-serif;
  --bg-body: #f8fdf9;
  --text-body: #1a3a2a;
  
  --color-primary-50:  #f0fdf4;
  --color-primary-100: #dcfce7;
  --color-primary-200: #bbf7d0;
  --color-primary-300: #86efac;
  --color-primary-400: #4ade80;
  --color-primary-500: #22c55e;
  --color-primary-600: #16a34a;
  --color-primary-700: #15803d;
  --color-primary-800: #166534;
  --color-primary-900: #14532d;
  
  --color-forest: #1a3a2a;
  --color-sage: #5a8a6a;
  --color-mint: #e8f5ee;
  
  --nav-bg: rgba(248, 253, 249, 0.88);
  --nav-scrolled-bg: rgba(248, 253, 249, 0.97);
  --card-bg: #ffffff;
  --card-border: rgba(21, 128, 61, 0.10);
  --toast-border: rgba(21, 128, 61, 0.10);
}

/* Gece Modu (Dark Theme) */
[data-theme='dark'] {
  --bg-body: #0b1120;
  --text-body: #f1f5f9;
  
  --color-primary-50:  #022c22;
  --color-primary-100: #064e3b;
  --color-primary-200: #065f46;
  --color-primary-300: #047857;
  --color-primary-400: #059669;
  --color-primary-500: #10b981;
  --color-primary-600: #34d399;
  --color-primary-700: #6ee7b7;
  --color-primary-800: #a7f3d0;
  --color-primary-900: #d1fae5;

  --color-forest: #f8fafc;
  --color-sage: #94a3b8;
  --color-mint: #1e293b;

  --nav-bg: rgba(11, 17, 32, 0.88);
  --nav-scrolled-bg: rgba(11, 17, 32, 0.97);
  --card-bg: #1e293b;
  --card-border: rgba(52, 211, 153, 0.15);
  --toast-border: rgba(52, 211, 153, 0.15);
}

/* 👾 Retro Sokak (Arcade / 8-Bit Theme) 👾 */
[data-theme='retro'] {
  --font-family-base: 'VT323', monospace;
  --bg-body: #1c1a2e; /* Koyu Arcade moru/laciverti */
  --text-body: #fbbf24; /* Atari sarısı */
  
  --color-primary-50:  #2d203e;
  --color-primary-100: #3c2552;
  --color-primary-200: #59357a;
  --color-primary-300: #d946ef; /* Neon pembe */
  --color-primary-400: #e879f9;
  --color-primary-500: #f472b6;
  --color-primary-600: #fbcfe8;
  --color-primary-700: #4ade80; /* Neon yeşil vurgu */
  --color-primary-800: #22c55e;
  --color-primary-900: #16a34a;

  --color-forest: #fcd34d;
  --color-sage: #a78bfa;
  --color-mint: #2e1065;

  --nav-bg: rgba(28, 26, 46, 0.88);
  --nav-scrolled-bg: rgba(28, 26, 46, 0.97);
  --card-bg: #2d2640;
  --card-border: rgba(244, 114, 182, 0.3);
  --toast-border: rgba(217, 70, 239, 0.5);
}

/* Global Geçiş Efektleri (Tema geçişinin yumuşak olması için) */
body, nav, .card, .bg-blob, .text-forest, .text-sage, .bg-mint {
  transition: background-color 0.4s ease, color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

/* Retro Tema Özel Sınıfları */
[data-theme='retro'] body {
  text-shadow: 1px 1px 0px rgba(0,0,0,0.5);
  letter-spacing: 0.5px;
}

[data-theme='retro'] .card {
  box-shadow: 4px 4px 0px 0px var(--color-primary-300);
  border: 2px solid var(--color-primary-300);
  border-radius: 0;
}

[data-theme='retro'] .card:hover {
  transform: translate(-2px, -2px);
  box-shadow: 6px 6px 0px 0px var(--color-primary-300);
}

[data-theme='retro'] .btn-primary {
  border-radius: 0;
  background: var(--color-primary-300);
  box-shadow: 3px 3px 0px 0px var(--text-body);
  text-transform: uppercase;
  color: #1c1a2e;
}

[data-theme='retro'] .btn-primary:hover {
  transform: translate(-1px, -1px);
  box-shadow: 4px 4px 0px 0px var(--text-body);
}

[data-theme='retro'] .btn-outline {
  border-radius: 0;
  border-width: 2px;
  border-color: var(--color-primary-700);
  color: var(--color-primary-700);
  text-transform: uppercase;
}

[data-theme='retro'] .btn-outline:hover {
  background: var(--color-primary-700);
  color: #1c1a2e;
}

[data-theme='retro'] .bg-blob::before {
  background: repeating-linear-gradient(0deg, rgba(217, 70, 239, 0.15) 0px, rgba(217, 70, 239, 0.15) 2px, transparent 2px, transparent 4px);
  border-radius: 0;
}

[data-theme='retro'] .bg-blob::after {
  background: repeating-linear-gradient(0deg, rgba(74, 222, 128, 0.15) 0px, rgba(74, 222, 128, 0.15) 2px, transparent 2px, transparent 4px);
  border-radius: 0;
}

/* 🏆 Dünya Kupası 3D Tema (World Cup 3D Theme) 🏆 */
[data-theme='worldcup'] {
  --font-family-base: 'Outfit', sans-serif;
  --bg-body: transparent; /* Arkada canvas olacak */
  --text-body: #f1f5f9;
  
  --color-primary-50:  #422006;
  --color-primary-100: #713f12;
  --color-primary-200: #a16207;
  --color-primary-300: #ca8a04;
  --color-primary-400: #eab308;
  --color-primary-500: #facc15;
  --color-primary-600: #fde047;
  --color-primary-700: #fef08a;
  --color-primary-800: #fef9c3;
  --color-primary-900: #fefce8;

  --color-forest: #fefce8;
  --color-sage: #94a3b8;
  --color-mint: rgba(30, 41, 59, 0.5);

  --nav-bg: rgba(10, 10, 26, 0.7);
  --nav-scrolled-bg: rgba(10, 10, 26, 0.9);
  --card-bg: rgba(10, 10, 26, 0.6); /* Glassmorphism arka plan */
  --card-border: rgba(234, 179, 8, 0.2);
  --toast-border: rgba(234, 179, 8, 0.3);
}

/* World Cup Glassmorphism Özellikleri */
[data-theme='worldcup'] body {
  background-color: transparent !important;
}

[data-theme='worldcup'] .card, 
[data-theme='worldcup'] nav {
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3);
}

[data-theme='worldcup'] .bg-blob {
  display: none; /* 3D Canvas zaten yeterli arka plan efekti veriyor */
}