/* Partyactivo – közös „nagy kontraszt” téma, minden oldalra (html[data-theme="high-contrast"]) */

/* Backward compatible: korábban "contrast" volt a név */
[data-theme="high-contrast"],
[data-theme="contrast"] {
  --bg: #ffffff;
  --surface: #f0f0f0;
  --card: #e8e8e8;
  --card-bg: #f0f0f0;
  --card2: #e8e8e8;
  --card-hover: #e0e0e0;
  --text: #000000;
  --text2: #333333;
  --muted: #333333;
  --muted2: #555555;
  --border: #000000;
  --input-bg: #ffffff;
  --input-border: #000000;
  --team1: #cc0000;
  --team2: #006600;
  --team3: #cc6600;
  --team4: #4400cc;
  --glow1: rgba(204, 0, 0, 0.4);
  --glow2: rgba(0, 102, 0, 0.4);
  --glow3: rgba(204, 102, 0, 0.4);
  --glow4: rgba(68, 0, 204, 0.4);
  --field-a: #cc3300;
  --field-b: #006600;
  --field-c: #aa7700;
  --field-d: #cc0044;
  --field-e: #0055aa;
  --field-f: #6600cc;
  --field-start: #006600;
  --field-end: #aa5500;
  --accent1: #cc3300;
  --accent2: #aa7700;
  --accent3: #006600;
  --accent4: #0055aa;
  --accent5: #cc0044;
  --accent: #3333aa;
  --accent-h: #0000aa;
  --acc: #aa7700;
  --acc2: #cc3300;
  --purple: #6600cc;
  --t1: #cc0000;
  --t2: #006600;
  --card-border: #000000;
  --green: #006600;
  --red: #cc0000;
  --yellow: #aa5500;
  --teal: #006666;
  --orange: #cc3300;
  --shadow: none;
  --radius: 14px;
}

[data-theme="high-contrast"] body,
[data-theme="contrast"] body {
  background: #ffffff !important;
  background-image: none !important;
  color: var(--text);
}

/* ── board ── */
[data-theme="high-contrast"] .board-wrap,
[data-theme="contrast"] .board-wrap {
  border: 3px solid #000;
  box-shadow: none;
}
[data-theme="high-contrast"] .score-panel,
[data-theme="contrast"] .score-panel {
  background: #f0f0f0;
  border: 2px solid #000;
  box-shadow: none;
}
[data-theme="high-contrast"] .score-panel.active,
[data-theme="contrast"] .score-panel.active {
  border: 3px solid var(--team-color);
  box-shadow: 0 0 0 3px var(--team-color);
}
[data-theme="high-contrast"] .log-panel,
[data-theme="contrast"] .log-panel {
  background: #f0f0f0;
  border: 2px solid #333;
}
[data-theme="high-contrast"] .cell.field-A,
[data-theme="contrast"] .cell.field-A {
  background: #ffddcc;
  border: 2px solid #cc3300;
}
[data-theme="high-contrast"] .cell.field-B,
[data-theme="contrast"] .cell.field-B {
  background: #ccffcc;
  border: 2px solid #006600;
}
[data-theme="high-contrast"] .cell.field-C,
[data-theme="contrast"] .cell.field-C {
  background: #fff0cc;
  border: 2px solid #aa7700;
}
[data-theme="high-contrast"] .cell.field-D,
[data-theme="contrast"] .cell.field-D {
  background: #ffccdd;
  border: 2px solid #cc0044;
}
[data-theme="high-contrast"] .cell.field-E,
[data-theme="contrast"] .cell.field-E {
  background: #cce0ff;
  border: 2px solid #0055aa;
}
[data-theme="high-contrast"] .cell.field-F,
[data-theme="contrast"] .cell.field-F {
  background: #eeccff;
  border: 2px solid #6600cc;
}
[data-theme="high-contrast"] .cell.field-START,
[data-theme="contrast"] .cell.field-START {
  background: #aaffaa;
  border: 2px solid #006600;
}
[data-theme="high-contrast"] .cell.field-END,
[data-theme="contrast"] .cell.field-END {
  background: #ffeeaa;
  border: 2px solid #aa5500;
}
[data-theme="high-contrast"] .header-logo,
[data-theme="contrast"] .header-logo {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .win-overlay,
[data-theme="contrast"] .win-overlay {
  background: rgba(255, 255, 255, 0.98);
}
[data-theme="high-contrast"] .win-title,
[data-theme="contrast"] .win-title {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .win-team-name,
[data-theme="contrast"] .win-team-name {
  color: #000;
}
[data-theme="high-contrast"] .win-player-chip,
[data-theme="contrast"] .win-player-chip {
  background: #f0f0f0;
  border: 2px solid #000;
  color: #000;
}
[data-theme="high-contrast"] .win-subtitle,
[data-theme="contrast"] .win-subtitle {
  color: #333;
}
[data-theme="high-contrast"] .notif,
[data-theme="contrast"] .notif {
  background: #fff;
  border: 3px solid #000;
  color: #000;
}

/* ── Nav / topnav (marketing, piactar, new-game, blog, stb.) ── */
[data-theme="high-contrast"] .nav,
[data-theme="contrast"] .nav {
  background: #f0f0f0 !important;
  border-bottom: 2px solid #000 !important;
  backdrop-filter: none;
}
[data-theme="high-contrast"] .nav-logo,
[data-theme="contrast"] .nav-logo {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .nav-link,
[data-theme="contrast"] .nav-link {
  color: #000 !important;
  border: 2px solid #000 !important;
  background: #fff !important;
}
[data-theme="high-contrast"] .nav-link:hover,
[data-theme="high-contrast"] .nav-link.active,
[data-theme="contrast"] .nav-link:hover,
[data-theme="contrast"] .nav-link.active {
  background: #e8e8e8 !important;
  color: #000 !important;
}
[data-theme="high-contrast"] .nav-link.cta,
[data-theme="high-contrast"] .topnav-link.cta,
[data-theme="contrast"] .nav-link.cta,
[data-theme="contrast"] .topnav-link.cta {
  background: #000 !important;
  color: #fff !important;
  border: 2px solid #000 !important;
  box-shadow: none !important;
}
[data-theme="high-contrast"] .deck-card,
[data-theme="high-contrast"] .modal-box,
[data-theme="contrast"] .deck-card,
[data-theme="contrast"] .modal-box {
  border: 2px solid #000 !important;
}

[data-theme="high-contrast"] .topnav,
[data-theme="contrast"] .topnav {
  background: #f0f0f0 !important;
  border-bottom: 2px solid #000 !important;
}
[data-theme="high-contrast"] .topnav-link,
[data-theme="contrast"] .topnav-link {
  color: #000 !important;
  border-color: #000 !important;
  background: #fff !important;
}
[data-theme="high-contrast"] .topnav-link:hover,
[data-theme="contrast"] .topnav-link:hover {
  color: #000 !important;
  background: #e8e8e8 !important;
}
[data-theme="high-contrast"] .topnav-toggle,
[data-theme="contrast"] .topnav-toggle {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
[data-theme="high-contrast"] .pa-lang-btn,
[data-theme="contrast"] .pa-lang-btn {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
[data-theme="high-contrast"] #themeToggleBtn,
[data-theme="high-contrast"] #themeBtn,
[data-theme="contrast"] #themeToggleBtn,
[data-theme="contrast"] #themeBtn {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
@media (max-width: 768px) {
  [data-theme="high-contrast"] .topnav-links,
  [data-theme="contrast"] .topnav-links {
    background: #f0f0f0 !important;
    border-left: 2px solid #000 !important;
  }
}

[data-theme="high-contrast"] .cookie-banner,
[data-theme="contrast"] .cookie-banner {
  background: #f0f0f0 !important;
  border-top: 2px solid #000 !important;
  color: #000 !important;
}

/* ── cards header ── */
[data-theme="high-contrast"] header h1,
[data-theme="contrast"] header h1 {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .profile-pill,
[data-theme="contrast"] .profile-pill {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
[data-theme="high-contrast"] .pa-lang-btn,
[data-theme="contrast"] .pa-lang-btn {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}

/* ── index főoldal ── */
[data-theme="high-contrast"] .blob,
[data-theme="contrast"] .blob {
  opacity: 0.06;
}
[data-theme="high-contrast"] .fc,
[data-theme="contrast"] .fc {
  color: rgba(0, 0, 0, 0.15);
  border-color: #000;
  background: #f0f0f0;
}
[data-theme="high-contrast"] .game-card,
[data-theme="high-contrast"] .step-card,
[data-theme="high-contrast"] .rule-card,
[data-theme="high-contrast"] .donut-card,
[data-theme="high-contrast"] .faq-item,
[data-theme="high-contrast"] .setup-step,
[data-theme="contrast"] .game-card,
[data-theme="contrast"] .step-card,
[data-theme="contrast"] .rule-card,
[data-theme="contrast"] .donut-card,
[data-theme="contrast"] .faq-item,
[data-theme="contrast"] .setup-step {
  background: #f0f0f0 !important;
  border: 2px solid #000 !important;
  box-shadow: none !important;
}
[data-theme="high-contrast"] .howto-pill,
[data-theme="contrast"] .howto-pill {
  background: #fff;
  border: 2px solid #000;
}
[data-theme="high-contrast"] .code-join,
[data-theme="contrast"] .code-join {
  background: #f0f0f0;
  border: 2px solid #000;
}
[data-theme="high-contrast"] .code-input,
[data-theme="contrast"] .code-input {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
[data-theme="high-contrast"] footer,
[data-theme="contrast"] footer {
  color: #333 !important;
  border-color: #000 !important;
}
[data-theme="high-contrast"] #how,
[data-theme="high-contrast"] #faq,
[data-theme="contrast"] #how,
[data-theme="contrast"] #faq {
  border: 2px solid #000;
  background: #f5f5f5;
}
[data-theme="high-contrast"] .code-flow,
[data-theme="contrast"] .code-flow {
  background: #f0f0f0;
  border: 2px solid #000;
}

/* ── dashboard ── */
[data-theme="high-contrast"] .nav,
[data-theme="contrast"] .nav {
  border-bottom: 2px solid #000;
}
[data-theme="high-contrast"] .nav-logo,
[data-theme="contrast"] .nav-logo {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .modal-profile,
[data-theme="high-contrast"] .profile-dropdown,
[data-theme="contrast"] .modal-profile,
[data-theme="contrast"] .profile-dropdown {
  border: 2px solid #000;
  box-shadow: none;
}

/* ── piactar / blog kártyák ── */
[data-theme="high-contrast"] .market-hero,
[data-theme="contrast"] .market-hero {
  border: 2px solid #000;
  background: #f5f5f5;
}
[data-theme="high-contrast"] .search-input,
[data-theme="high-contrast"] .blog-toolbar .form-input,
[data-theme="contrast"] .search-input,
[data-theme="contrast"] .blog-toolbar .form-input {
  border: 2px solid #000 !important;
  background: #fff !important;
  color: #000 !important;
}
[data-theme="high-contrast"] .blog-card,
[data-theme="high-contrast"] .blog-related-item,
[data-theme="contrast"] .blog-card,
[data-theme="contrast"] .blog-related-item {
  border: 2px solid #000 !important;
  background: #f0f0f0 !important;
}
[data-theme="high-contrast"] .page-title,
[data-theme="contrast"] .page-title {
  -webkit-text-fill-color: #000;
  color: #000;
}

/* ── login / register topnav ── */
[data-theme="high-contrast"] button.theme-btn,
[data-theme="contrast"] button.theme-btn {
  border: 2px solid #000 !important;
  background: #fff !important;
}

/* ── admin.html (egységes admin) ── */
[data-theme="high-contrast"] .sidebar,
[data-theme="high-contrast"] .panel,
[data-theme="high-contrast"] .stat-card,
[data-theme="high-contrast"] .modal,
[data-theme="high-contrast"] .setting-card,
[data-theme="high-contrast"] .login-box,
[data-theme="contrast"] .sidebar,
[data-theme="contrast"] .panel,
[data-theme="contrast"] .stat-card,
[data-theme="contrast"] .modal,
[data-theme="contrast"] .setting-card,
[data-theme="contrast"] .login-box {
  background: var(--surface) !important;
  border-color: #000 !important;
  box-shadow: none !important;
}
[data-theme="high-contrast"] .sidebar,
[data-theme="contrast"] .sidebar {
  border-right: 2px solid #000 !important;
}
[data-theme="high-contrast"] .nav-item:hover,
[data-theme="high-contrast"] .data-table tr:hover td,
[data-theme="contrast"] .nav-item:hover,
[data-theme="contrast"] .data-table tr:hover td {
  background: rgba(0, 0, 0, 0.06) !important;
}
[data-theme="high-contrast"] .form-input,
[data-theme="high-contrast"] .setting-input,
[data-theme="high-contrast"] .search-input,
[data-theme="contrast"] .form-input,
[data-theme="contrast"] .setting-input,
[data-theme="contrast"] .search-input {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: var(--text) !important;
}
[data-theme="high-contrast"] .global-search-results .gs-item,
[data-theme="contrast"] .global-search-results .gs-item {
  color: var(--text) !important;
}
[data-theme="high-contrast"] .sidebar-logo,
[data-theme="contrast"] .sidebar-logo {
  -webkit-text-fill-color: #000;
  background: none;
  color: #000;
}
[data-theme="high-contrast"] .sidebar-logo span,
[data-theme="contrast"] .sidebar-logo span {
  -webkit-text-fill-color: #333 !important;
  color: #333 !important;
}
[data-theme="high-contrast"] #adminThemeBtn,
[data-theme="contrast"] #adminThemeBtn {
  border: 2px solid #000 !important;
  background: #fff !important;
  color: #000 !important;
}
[data-theme="high-contrast"] .hamburger-btn,
[data-theme="contrast"] .hamburger-btn {
  border: 2px solid #000 !important;
  background: #f0f0f0 !important;
  color: #000 !important;
}

/* ── cards ── */
[data-theme="high-contrast"] .setup-box,
[data-theme="high-contrast"] .activity-card,
[data-theme="high-contrast"] .finish-modal,
[data-theme="high-contrast"] .qr-popup,
[data-theme="contrast"] .setup-box,
[data-theme="contrast"] .activity-card,
[data-theme="contrast"] .finish-modal,
[data-theme="contrast"] .qr-popup {
  border: 2px solid #000 !important;
}

/* ── login / register kártya ── */
[data-theme="high-contrast"] .card,
[data-theme="contrast"] .card {
  border: 2px solid #000 !important;
}
[data-theme="high-contrast"] .topnav-pagetitle,
[data-theme="contrast"] .topnav-pagetitle {
  -webkit-text-fill-color: #000;
  color: #000;
  background: none;
}

/* ── Prémium egyedi játék témák (BÉTA) — kártya + tábla; nagy kontraszt felülírja ── */
html[data-play-theme]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background-attachment: fixed !important;
}
html[data-play-theme="ocean"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #0a1628;
  --surface: rgba(255, 255, 255, 0.07);
  --text: #e8f4fc;
  --muted: #7dd3fc;
  --muted2: #94a3b8;
  --border: rgba(125, 211, 252, 0.22);
  --input-bg: rgba(255, 255, 255, 0.06);
}
html[data-play-theme="ocean"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 80% 50% at 20% 15%, rgba(56, 189, 248, 0.2), transparent),
    radial-gradient(ellipse 60% 45% at 85% 85%, rgba(45, 212, 191, 0.12), transparent),
    linear-gradient(165deg, #0c1220 0%, #0c4a6e 42%, #0f766e 100%) fixed !important;
}
html[data-play-theme="sunset"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #1a0a0f;
  --surface: rgba(255, 255, 255, 0.08);
  --text: #fff5f0;
  --muted: #fdba74;
  --muted2: #a8a29e;
  --border: rgba(251, 146, 60, 0.28);
  --input-bg: rgba(255, 255, 255, 0.06);
}
html[data-play-theme="sunset"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 70% 50% at 50% 0%, rgba(251, 113, 133, 0.35), transparent),
    radial-gradient(ellipse 60% 40% at 80% 100%, rgba(245, 158, 11, 0.2), transparent),
    linear-gradient(165deg, #1a0a12 0%, #7c2d12 45%, #431407 100%) fixed !important;
}
html[data-play-theme="forest"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #0a1a0f;
  --surface: rgba(255, 255, 255, 0.08);
  --text: #ecfdf5;
  --muted: #6ee7b7;
  --muted2: #9ca3af;
  --border: rgba(52, 211, 153, 0.25);
  --input-bg: rgba(255, 255, 255, 0.06);
}
html[data-play-theme="forest"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 70% 50% at 50% 100%, rgba(16, 185, 129, 0.18), transparent),
    linear-gradient(170deg, #052e16 0%, #14532d 50%, #0f172a 100%) fixed !important;
}
html[data-play-theme="midnight"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #0b0218;
  --surface: rgba(255, 255, 255, 0.06);
  --text: #f5f3ff;
  --muted: #c4b5fd;
  --muted2: #a78bfa;
  --border: rgba(139, 92, 246, 0.3);
  --input-bg: rgba(255, 255, 255, 0.05);
}
html[data-play-theme="midnight"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 90% 60% at 50% 0%, rgba(99, 102, 241, 0.25), transparent),
    linear-gradient(180deg, #0b0218 0%, #1e1b4b 55%, #020617 100%) fixed !important;
}
html[data-play-theme="aurora"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #061016;
  --surface: rgba(255, 255, 255, 0.07);
  --text: #ecfeff;
  --muted: #5eead4;
  --muted2: #a5b4fc;
  --border: rgba(94, 234, 212, 0.2);
  --input-bg: rgba(255, 255, 255, 0.06);
}
html[data-play-theme="aurora"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 80% 45% at 20% 30%, rgba(52, 211, 153, 0.2), transparent),
    radial-gradient(ellipse 70% 50% at 85% 60%, rgba(129, 140, 248, 0.22), transparent),
    linear-gradient(165deg, #020617 0%, #134e4a 40%, #1e1b4b 100%) fixed !important;
}
html[data-play-theme="candy"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --bg: #1a0a1a;
  --surface: rgba(255, 255, 255, 0.1);
  --text: #fdf4ff;
  --muted: #f0abfc;
  --muted2: #e9d5ff;
  --border: rgba(244, 114, 182, 0.28);
  --input-bg: rgba(255, 255, 255, 0.08);
}
html[data-play-theme="candy"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: radial-gradient(ellipse 60% 50% at 10% 20%, rgba(244, 114, 182, 0.28), transparent),
    radial-gradient(ellipse 55% 45% at 90% 80%, rgba(167, 139, 250, 0.22), transparent),
    linear-gradient(165deg, #2e1065 0%, #86198f 45%, #4c0519 100%) fixed !important;
}
html[data-theme="light"][data-play-theme]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) {
  --text: #0f172a;
  --muted: #475569;
  --muted2: #64748b;
}
html[data-theme="light"][data-play-theme="ocean"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #e0f2fe 0%, #bae6fd 50%, #a5f3fc 100%) fixed !important;
}
html[data-theme="light"][data-play-theme="sunset"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #fff7ed 0%, #fed7aa 55%, #fecdd3 100%) fixed !important;
}
html[data-theme="light"][data-play-theme="forest"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #ecfdf5 0%, #d1fae5 50%, #a7f3d0 100%) fixed !important;
}
html[data-theme="light"][data-play-theme="midnight"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #f5f3ff 0%, #e9d5ff 50%, #ddd6fe 100%) fixed !important;
}
html[data-theme="light"][data-play-theme="aurora"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #ecfeff 0%, #cffafe 45%, #e0e7ff 100%) fixed !important;
}
html[data-theme="light"][data-play-theme="candy"]:not([data-theme="high-contrast"]):not([data-theme="contrast"]) body {
  background: linear-gradient(165deg, #fdf4ff 0%, #fce7f3 50%, #fae8ff 100%) fixed !important;
}
