/* ============================================================
   Melbet — base.css
   Общие стили для всех языковых версий (es / pt / fr).
   Дизайн повторяет главную страницу melbet.opinioninternet.com.
   Палитра: primary #F5C542, secondary #1C1F2A, dark #0A0F1A,
            graphite #151A24, accent #F5C542
   ============================================================ */

:root {
  --primary: #F5C542;
  --gold: #D4AF37;
  --secondary: #1C1F2A;
  --dark: #0A0F1A;
  --graphite: #151A24;
  --gray-700: #374151;
  --gray-800: #1f2937;
  --gray-900: #111827;
  --text-soft: #d1d5db;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  min-height: 100vh;
  background-color: var(--dark);
  color: #fff;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* ---------- Цвета (переопределения для Tailwind-классов) ---------- */
.bg-secondary { background-color: var(--secondary) !important; }
.text-accent { color: var(--primary) !important; }
.hover\:text-accent:hover { color: var(--primary) !important; }
.bg-accent { background-color: var(--primary) !important; }
.hover\:bg-gold-dark:hover { background-color: var(--gold) !important; }
.bg-gold-gradient {
  background-image: linear-gradient(135deg, var(--primary) 0%, var(--gold) 100%) !important;
}
.bg-graphite { background-color: var(--graphite) !important; }
.bg-dark { background-color: var(--dark) !important; }

/* ---------- Шапка ---------- */
.sticky-header { position: sticky; top: 0; z-index: 1000; }

/* ---------- Кликабельные элементы ---------- */
.tap { cursor: pointer; -webkit-tap-highlight-color: transparent; }

/* ---------- Аккордеон стран / FAQ ---------- */
details.geo-accordion summary { cursor: pointer; list-style: none; }
details.geo-accordion summary::-webkit-details-marker { display: none; }
details.geo-accordion summary:after { content: "\25BE"; margin-left: .5rem; font-size: .85em; opacity: .8; }
details.geo-accordion[open] summary:after { content: "\25B4"; }

details.faq-item summary { cursor: pointer; list-style: none; }
details.faq-item summary::-webkit-details-marker { display: none; }
details.faq-item summary:after { content: "\002B"; float: right; font-weight: 700; color: var(--primary); }
details.faq-item[open] summary:after { content: "\2212"; }

/* ---------- Адаптивные таблицы (обязательная обёртка) ---------- */
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 1.5rem;
}
.table-responsive table {
  width: 100%;
  min-width: 500px;
  border-collapse: collapse;
}

/* ---------- Служебные утилиты ---------- */
.mt-0 { margin-top: 0; }
img { max-width: 100%; height: auto; }
a { color: inherit; }

/* ---------- Защита от горизонтального скролла ---------- */
html, body { overflow-x: hidden; }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
