/* ==========================================================================
   BetQuiz Central Design System
   ========================================================================== */

/* --- Globális alapok --- */
body {
    background-color: #f1f5f9;
    color: #1e293b;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* --- Fejléc és Navigáció --- */
.top-nav {
    background: #ffffff;
    border-bottom: 1px solid #e2e8f0;
}

.nav-pill-custom {
    background-color: #f1f5f9;
    color: #475569;
    font-weight: 600;
    border-radius: 12px;
    padding: 8px 16px;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.nav-pill-custom:hover,
.nav-pill-custom.active {
    background-color: #e0e7ff;
    color: #4f46e5;
}

.badge-zseton {
    background-color: #e0e7ff;
    color: #4338ca;
    font-weight: 700;
    border-radius: 20px;
    padding: 6px 16px;
}

.btn-szerezz {
    background-color: #fef3c7;
    color: #b45309;
    font-weight: 700;
    border-radius: 12px;
    border: 1px solid #fde68a;
    transition: all 0.2s ease-in-out;
}

.btn-szerezz:hover {
    background-color: #fde68a;
    color: #92400e;
}

/* ==========================================================================
   NAVIGÁCIÓS BÁR STÍLUSOK (public/css/app-custom.css)
   ========================================================================== */
.main-navbar {
    background-color: #1e1b4b;
    background: linear-gradient(135deg, #1e1b4b 0%, #312e81 100%);
    color: #ffffff;
    padding: 0.75rem 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    margin-bottom: 2rem;
}

.main-navbar-container {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-brand {
    font-size: 1.5rem;
    font-weight: 800;
    color: #ffffff;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.nav-links-group {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.nav-link-item {
    color: #e0e7ff;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    transition: all 0.2s ease;
}

.nav-link-item:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: #ffffff;
}

.nav-link-item.active {
    background-color: #4f46e5;
    color: #ffffff;
}

.nav-badge-points {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #ffffff;
    font-weight: 700;
    padding: 0.4rem 0.85rem;
    border-radius: 9999px;
    font-size: 0.9rem;
}

.btn-nav-logout {
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fca5a5;
    padding: 0.4rem 0.85rem;
    border-radius: 0.5rem;
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
}

.btn-nav-logout:hover {
    background-color: #dc2626;
    color: #ffffff;
}

/* --- Kártyák és Bannerek --- */
.purple-banner {
    background: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);
    border-radius: 24px;
    color: #ffffff;
    padding: 32px;
    box-shadow: 0 10px 25px -5px rgba(99, 102, 241, 0.3);
}

.card-white {
    background: #ffffff;
    border-radius: 24px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    padding: 32px;
}

/* --- Űrlap elemek --- */
.form-control-custom,
.form-select-custom {
    background-color: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    padding: 12px 16px;
    color: #0f172a;
    font-weight: 500;
}

.form-control-custom:focus,
.form-select-custom:focus {
    background-color: #ffffff;
    border-color: #6366f1;
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.15);
}

/* --- Gombok --- */
.btn-primary-purple {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);
    color: #ffffff;
    font-weight: 700;
    border-radius: 12px;
    padding: 12px 24px;
    border: none;
    transition: all 0.2s ease-in-out;
}

.btn-primary-purple:hover {
    opacity: 0.95;
    color: #ffffff;
    transform: translateY(-1px);
}
/* ==========================================================================
   NAVIGÁCIÓS FEJLÉC (Navigation Component)
   ========================================================================== */

/* Fejléc konténer */
.nav-header {
    background-color: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    position: sticky;
    top: 0;
    z-index: 50;
}

/* Navigációs Belső Háló */
.nav-container {
    max-width: 80rem; /* max-w-7xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
}

.nav-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 4rem;
}

.nav-menu-panel,
.nav-primary-links,
.nav-account-actions {
    display: flex;
    align-items: center;
}
.nav-menu-panel { flex: 1; justify-content: space-between; min-width: 0; margin-left: 2rem; }
.nav-primary-links { gap: 0.5rem; min-width: 0; }
.nav-account-actions { gap: 1rem; }
.nav-mobile-heading,.nav-menu-toggle,.nav-menu-overlay,.nav-mobile-action-label,.nav-group-label { display: none; }
.nav-link-button { border: 0; background: transparent; cursor: pointer; font-family: inherit; }
.nav-logout-form { margin: 0; }
.nav-register-link { padding: 0.625rem 1rem; font-size: 0.875rem; text-decoration: none; }

/* Logo */
.nav-brand {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 800;
    font-size: 1.5rem;
    color: #4f46e5;
    letter-spacing: 0.05em;
    text-decoration: none;
}
.nav-brand:hover {
    color: #4338ca;
}

/* Alapértelmezett Menüpont Gombok */
.nav-link-item {
    padding: 0.5rem 1rem;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.15s ease-in-out;
    color: #4b5563;
}
.nav-link-item:hover {
    background-color: #f3f4f6;
    color: #111827;
}

/* Aktív Állapotú Menüpontok */
.nav-link-item.active {
    background-color: #e0e7ff;
    color: #4338ca;
}

/* Hostadmin Speciális Gomb (Kijelölt) */
.nav-link-purple {
    color: #4b5563;
}
.nav-link-purple:hover {
    background-color: #f3e8ff;
    color: #7e22ce;
}
.nav-link-purple.active {
    background-color: #f3e8ff;
    color: #7e22ce;
}

/* Szerezz Pontot Gomb */
.nav-btn-points {
    padding: 0.5rem 1rem;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.15s ease-in-out;
    color: #b45309;
    background-color: #fffbeb;
    border: 1px solid #fde68a;
}
.nav-btn-points:hover {
    background-color: #fef3c7;
    color: #92400e;
}

/* Jobb Oldali Zseton Pill */
.nav-badge-tokens {
    background-color: #e0e7ff;
    color: #3730a3;
    font-weight: 800;
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Kijelentkezés Gomb */
.nav-btn-logout {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6b7280;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: color 0.15s ease-in-out;
}
.nav-btn-logout:hover {
    color: #dc2626;
}

@media (max-width: 1180px) and (min-width: 901px) {
    .nav-menu-panel { margin-left: 1rem; }
    .nav-primary-links,.nav-account-actions { gap: 0.2rem; }
    .nav-link-item,.nav-btn-points { padding-left: 0.55rem; padding-right: 0.55rem; font-size: 0.78rem; }
    .nav-profile-link { max-width: 8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .nav-badge-tokens { padding-left: 0.55rem; padding-right: 0.55rem; font-size: 0.75rem; }
}

@media (max-width: 900px) {
    body.nav-menu-open { overflow: hidden; }
    .nav-wrapper { height: 4rem; }
    .nav-menu-toggle { display: inline-flex; width: 2.75rem; height: 2.75rem; padding: 0.7rem; flex-direction: column; justify-content: space-around; border: 1px solid #dbe2ea; border-radius: 0.75rem; background: #fff; cursor: pointer; }
    .nav-menu-toggle span { display: block; width: 100%; height: 2px; border-radius: 2px; background: #334155; transition: transform .2s ease, opacity .2s ease; }
    .is-menu-open .nav-menu-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
    .is-menu-open .nav-menu-toggle span:nth-child(2) { opacity: 0; }
    .is-menu-open .nav-menu-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
    .nav-menu-panel { position: fixed; z-index: 72; top: 0; right: 0; bottom: 0; width: min(88vw, 24rem); margin: 0; padding: 1rem; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; overflow-y: auto; overscroll-behavior: contain; background: #fff; box-shadow: -24px 0 70px rgba(15,23,42,.3); transform: translateX(105%); visibility: hidden; transition: transform .22s ease, visibility .22s; }
    .is-menu-open .nav-menu-panel { transform: translateX(0); visibility: visible; }
    .nav-mobile-heading { display: flex; align-items: center; justify-content: space-between; min-height: 3rem; padding: 0 0.25rem 0.8rem; border-bottom: 1px solid #e2e8f0; color: #0f172a; font-weight: 900; }
    .nav-menu-close { width: 2.5rem; height: 2.5rem; border: 0; border-radius: 999px; background: #f1f5f9; color: #334155; font-size: 1.65rem; line-height: 1; cursor: pointer; }
    .nav-primary-links,.nav-account-actions { display: flex; flex-direction: column; align-items: stretch; gap: 0.35rem; }
    .nav-primary-links { padding: 1rem 0; }
    .nav-account-actions { margin-top: auto; padding-top: 1rem; border-top: 1px solid #e2e8f0; }
    .nav-link-item,.nav-btn-points,.nav-register-link { display: flex; align-items: center; min-height: 2.9rem; width: 100%; padding: 0.7rem 0.85rem; border-radius: 0.75rem; text-align: left; }
    .nav-link-item.active { box-shadow: inset 3px 0 #4f46e5; }
    .nav-group-label { display: block; padding: 0.9rem 0.85rem 0.25rem; color: #64748b; font-size: 0.68rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
    .nav-notification-bell { width: 100%; height: auto; min-height: 2.9rem; padding: 0.65rem 0.85rem; justify-content: flex-start; gap: 0.7rem; border-radius: 0.75rem; }
    .nav-mobile-action-label { display: inline; font-size: 0.875rem; font-weight: 800; }
    .nav-notification-count { position: static; margin-left: auto; border-width: 0; }
    .nav-badge-tokens { justify-content: center; min-height: 2.6rem; }
    .nav-btn-logout { width: 100%; min-height: 2.8rem; border: 1px solid #fecaca; border-radius: 0.75rem; color: #b91c1c; background: #fff1f2; }
    .nav-menu-overlay { position: fixed; z-index: 71; inset: 0; display: block; border: 0; background: rgba(2,6,23,.64); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .22s ease, visibility .22s; }
    .is-menu-open .nav-menu-overlay { opacity: 1; visibility: visible; pointer-events: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .nav-menu-panel,.nav-menu-overlay,.nav-menu-toggle span { transition: none; }
}

@media (max-width: 760px) {
    /* A kezdőlap korábbi mobil szabályai elrejtették a navigációt. A drawer
       saját, kontrasztos felülete minden vendég- és szerepkörlinket felülír. */
    .home-page .nav-menu-panel .nav-link-item,
    .home-page .nav-menu-panel .nav-btn-points,
    .home-page .nav-menu-panel .nav-badge-tokens { display: flex !important; }
    .home-page .nav-menu-panel .nav-link-item { color: #334155; }
    .home-page .nav-menu-panel .nav-link-item:hover { color: #111827; background: #f1f5f9; }
    .home-page .nav-menu-panel .nav-link-item.active { color: #4338ca; background: #eef2ff; border-radius: .75rem; box-shadow: inset 3px 0 #4f46e5; }
}

/* ==========================================================================
   COMING SOON / FEJLESZTÉS ALATT OLDAL (Coming Soon Page)
   ========================================================================== */

/* Középső Tartalom Konténer */
.coming-soon-container {
    max-width: 48rem; /* max-w-3xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    text-align: center;
}

/* Fő Kártya Doboz */
.card-coming-soon {
    background-color: #ffffff;
    border-radius: 1.5rem; /* rounded-3xl */
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
    padding: 2.5rem;
    border: 1px solid #f3f4f6;
}

.coming-soon-icon {
    font-size: 3.75rem; /* text-6xl */
    margin-bottom: 1rem;
}

.coming-soon-title {
    font-size: 1.875rem; /* text-3xl */
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.75rem;
}

.coming-soon-subtitle {
    color: #4b5563;
    font-size: 1.125rem; /* text-lg */
    margin-bottom: 2rem;
}

/* "Fejlesztés alatt" Jelvény */
.badge-coming-soon {
    display: inline-block;
    padding: 0.5rem 1rem;
    background-color: #e0e7ff;
    color: #4338ca;
    font-weight: 700;
    font-size: 0.875rem;
    border-radius: 9999px;
    border: 1px solid #c7d2fe;
}

/* Vissza gomb */
.btn-back-home {
    display: inline-block;
    padding: 0.75rem 1.5rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 700;
    border-radius: 0.75rem;
    text-decoration: none;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-back-home:hover {
    background-color: #4338ca;
    color: #ffffff;
}

/* ==========================================================================
   AUTH OLDALAK (Login / Register Component)
   ========================================================================== */

/* Teljes Képernyős Középre Igazított Háttér */
.auth-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background-color: #f1f5f9;
}

/* Auth Kártya Doboz */
.auth-card {
    width: 100%;
    max-width: 28rem; /* max-w-md */
    background-color: #ffffff;
    border-radius: 1rem; /* rounded-xl */
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    padding: 2rem;
    border: 1px solid #e2e8f0;
}

/* Auth Címek */
.auth-title {
    font-size: 1.875rem; /* text-3xl */
    font-weight: 800;
    text-align: center;
    color: #1f2937;
    margin-bottom: 0.5rem;
}

.auth-subtitle {
    font-size: 0.875rem; /* text-sm */
    text-align: center;
    color: #6b7280;
    margin-bottom: 1.5rem;
}

/* Auth Input Mezős Csoportok */
.form-group {
    margin-bottom: 1rem;
}

.form-group-lg {
    margin-bottom: 1.5rem;
}

.form-label {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.25rem;
}

.form-input {
    width: 100%;
    padding: 0.5rem 1rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    outline: none;
    transition: all 0.15s ease-in-out;
}

.form-input:focus {
    border-color: #6366f1;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}

/* A hitelesítési hibák nem maradhatnak rejtve egy sikertelen POST után. */
.auth-error-summary {
    margin-bottom: 1.25rem;
    padding: 0.875rem 1rem;
    color: #991b1b;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 0.5rem;
    font-size: 0.875rem;
}

.auth-error-summary ul {
    margin: 0.375rem 0 0;
    padding-left: 1.25rem;
}

.form-input-invalid,
.form-input-invalid:focus {
    border-color: #dc2626;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.14);
}

.form-error {
    margin: 0.375rem 0 0;
    color: #b91c1c;
    font-size: 0.8125rem;
    font-weight: 600;
}

.auth-success-message {
    margin-bottom: 1.25rem;
    padding: 0.875rem 1rem;
    color: #166534;
    background-color: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
}

.auth-forgot-link {
    display: inline-block;
    margin-top: 0.625rem;
    color: #4f46e5;
    font-size: 0.8125rem;
    font-weight: 600;
    text-decoration: none;
}

.auth-forgot-link:hover {
    color: #4338ca;
    text-decoration: underline;
}

.auth-submit-full {
    width: 100%;
}

/* Navigációs értesítési csengő és olvasatlan számláló. */
.nav-notification-bell {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 9999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 1.15rem;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.nav-notification-bell:hover,
.nav-notification-bell.active {
    background: #e0e7ff;
    color: #4338ca;
}

.nav-notification-count {
    position: absolute;
    top: -0.3rem;
    right: -0.35rem;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    border-radius: 9999px;
    background: #dc2626;
    color: #fff;
    font-size: 0.625rem;
    font-weight: 900;
    line-height: 1;
}

.notification-event-icon {
    flex: 0 0 auto;
    width: 2.75rem;
    height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: #c7d2fe;
    font-size: 1.2rem;
}

.notification-event-icon.is-read {
    background: #f1f5f9;
    filter: grayscale(0.8);
}

.notification-preference-table {
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-radius: 0.875rem;
}

.notification-preference-header,
.notification-preference-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.5rem 4.5rem;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
}

.notification-preference-header {
    background: #f8fafc;
    color: #64748b;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.notification-preference-header span:not(:first-child) {
    text-align: center;
}

.notification-preference-row {
    border-top: 1px solid #e2e8f0;
    color: #334155;
    font-size: 0.875rem;
}

.notification-preference-row small {
    display: block;
    margin-top: 0.2rem;
    color: #94a3b8;
    font-size: 0.7rem;
    line-height: 1.35;
}

.notification-channel-toggle {
    display: flex;
    justify-content: center;
    cursor: pointer;
}

.notification-channel-toggle input {
    width: 1.15rem;
    height: 1.15rem;
    accent-color: #4f46e5;
}

/* ==========================================================================
   KEZDŐOLDAL – sötét hero, lila/arany hangsúlyok, világos tartalmi tér
   Minden szabály .home-page alá van zárva, hogy a belső oldalak dizájnja
   változatlan maradjon az oldalankénti arculati frissítés alatt.
   ========================================================================== */
.home-page { margin: 0; padding: 0; background: #f8fafc; color: #0f172a; }
.home-page .nav-header { position: absolute; width: 100%; background: rgba(3, 7, 24, .86); border: 0; box-shadow: none; backdrop-filter: blur(18px); }
.home-page .nav-wrapper { height: 5rem; align-items: center; }
.home-page .nav-brand { color: #fff; font-size: 1.65rem; letter-spacing: -.04em; font-style: italic; }
.nav-brand .brand-accent { color: #fbbf24; }
.home-page .nav-link-item { color: #cbd5e1; }
.home-page .nav-link-item:hover { color: #fff; background: rgba(124, 58, 237, .16); }
.home-page .nav-link-item.active { color: #c084fc; background: transparent; box-shadow: inset 0 -2px #7c3aed; border-radius: 0; }
.home-page .nav-btn-points { color: #fde68a; background: rgba(245, 158, 11, .12); }
.home-page .nav-badge-tokens { color: #fde68a; background: rgba(245, 158, 11, .12); border-color: rgba(245, 158, 11, .2); }
.home-page .nav-btn-logout { color: #fff; border-color: #475569; background: transparent; }
.home-page .nav-notification-bell { color: #e2e8f0; background: rgba(255,255,255,.07); }

.home-hero { position: relative; overflow: hidden; padding: 9.25rem 1.5rem 4.5rem; min-height: 44rem; color: #fff; background: radial-gradient(circle at 68% 35%, rgba(76,29,149,.28), transparent 30%), radial-gradient(circle at 10% 80%, rgba(37,99,235,.11), transparent 30%), linear-gradient(130deg,#030718 0%,#070b21 52%,#07051b 100%); }
.home-hero::before { content: ""; position: absolute; inset: 0; opacity: .28; pointer-events: none; background-image: radial-gradient(circle, #a78bfa 1px, transparent 1.5px); background-size: 92px 92px; mask-image: linear-gradient(90deg,#000,transparent 70%); }
.home-orb { position: absolute; border-radius: 999px; filter: blur(4px); opacity: .7; }
.home-orb-one { width: 18rem; height: 18rem; left: -10rem; top: 12rem; background: rgba(109,40,217,.16); box-shadow: 0 0 100px #6d28d9; }
.home-orb-two { width: 13rem; height: 13rem; right: -7rem; bottom: 2rem; background: rgba(245,158,11,.08); box-shadow: 0 0 90px #f59e0b; }
.home-hero-inner { position: relative; z-index: 1; max-width: 82rem; margin: auto; display: grid; grid-template-columns: .9fr 1.25fr; gap: 4.5rem; align-items: center; }
.home-eyebrow { display: inline-flex; align-items: center; gap: .55rem; padding: .55rem 1.05rem; border-radius: 999px; color: #ddd6fe; background: linear-gradient(90deg,rgba(109,40,217,.75),rgba(76,29,149,.5)); border: 1px solid rgba(167,139,250,.2); font-size: .8rem; font-weight: 800; }
.home-eyebrow span { color: #fbbf24; }
.home-welcome { margin: 1.25rem 0 -.85rem; color: #c4b5fd; font-weight: 800; }
.home-hero h1 { margin: 1.25rem 0 1rem; max-width: 38rem; color: #fff; font-size: clamp(3rem,5.1vw,5rem); line-height: 1.06; letter-spacing: -.055em; font-weight: 950; }
.home-hero h1 span, .home-light-section h2 span { background: linear-gradient(90deg,#7c3aed,#d946ef 44%,#fbbf24); -webkit-background-clip: text; color: transparent; }
.home-lead { max-width: 38rem; margin: 0; color: #cbd5e1; font-size: 1.08rem; line-height: 1.75; }
.home-hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin: 1.8rem 0 2.6rem; }
.home-btn-primary,.home-btn-secondary { display: inline-flex; align-items: center; justify-content: center; gap: .9rem; min-height: 3.55rem; padding: 0 1.6rem; border-radius: .7rem; color: #fff; text-decoration: none; font-weight: 900; transition: .2s ease; }
.home-btn-primary { background: linear-gradient(135deg,#8b5cf6,#6d28d9); box-shadow: 0 12px 35px rgba(109,40,217,.4), inset 0 1px rgba(255,255,255,.25); }
.home-btn-secondary { border: 1px solid #475569; background: rgba(15,23,42,.48); }
.home-btn-primary:hover,.home-btn-secondary:hover { color: #fff; transform: translateY(-2px); border-color: #8b5cf6; }
.home-stats { display: flex; gap: 2.2rem; flex-wrap: wrap; }
.home-stats > div { display: grid; grid-template-columns: 2.8rem auto; grid-template-rows: auto auto; column-gap: .7rem; align-items: center; }
.home-stat-icon { grid-row: 1/3; display: grid; place-items: center; width: 2.8rem; height: 2.8rem; border-radius: .7rem; font-size: 1rem; }
.home-stat-icon.purple { background: rgba(124,58,237,.2); color: #c4b5fd; }.home-stat-icon.gold { background: rgba(245,158,11,.17); }.home-stat-icon.green { background: rgba(34,197,94,.15); }
.home-stats strong { color: #fff; font-size: 1.22rem; }.home-stats small { color: #94a3b8; font-weight: 600; }

.home-app-preview { padding: 1.35rem; border: 1px solid rgba(139,92,246,.55); border-radius: 2rem 2rem 0 0; background: linear-gradient(145deg,rgba(9,14,42,.97),rgba(4,7,25,.98)); box-shadow: 0 30px 90px rgba(0,0,0,.55), inset 0 1px rgba(255,255,255,.16); transform: perspective(1400px) rotateY(-2deg); }
.home-preview-topbar { display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; padding: .35rem .35rem 1.15rem; border-bottom: 1px solid rgba(148,163,184,.1); }
.home-preview-logo { font-size: 1.15rem; font-weight: 950; font-style: italic; }.home-preview-logo span { color: #fbbf24; }
.home-preview-topbar > div:nth-child(2) { display: flex; flex-direction: column; }.home-preview-topbar small { color: #64748b; font-size: .67rem; }
.home-preview-points { padding: .65rem .8rem; border-radius: .8rem; background: rgba(255,255,255,.05); color: #fde68a; font-weight: 800; font-size: .8rem; }
.home-preview-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: .75rem; margin: 1rem 0 1.25rem; }
.home-preview-actions a { display: flex; gap: .65rem; min-width: 0; padding: .9rem; border: 1px solid rgba(139,92,246,.16); border-radius: .85rem; background: rgba(30,41,74,.55); color: #fff; text-decoration: none; }
.home-preview-actions i { flex: 0 0 auto; display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: .65rem; font-style: normal; font-size: 1.15rem; font-weight: 950; }.home-preview-actions i.violet{background:#7c3aed}.home-preview-actions i.blue{background:#3b82f6}.home-preview-actions i.green{background:#65a30d}
.home-preview-actions span { min-width: 0; display:flex;flex-direction:column; }.home-preview-actions strong { font-size: .76rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.home-preview-actions small { margin-top:.25rem; color:#94a3b8; font-size:.61rem; }
.home-preview-heading { display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem;font-size:.78rem; }.home-preview-heading a{color:#a78bfa;text-decoration:none;font-size:.68rem;}
.home-preview-quizzes { display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem; }.home-preview-quizzes > * { min-width:0; padding:.45rem;border-radius:.75rem;background:#11182f;color:#fff;text-decoration:none;display:flex;flex-direction:column; }.home-preview-cover { height:5.6rem;border-radius:.55rem;background:radial-gradient(circle at 30% 30%,#8b5cf6,#1e1b4b 45%,#080b1c);background-size:cover;background-position:center; }.home-preview-quizzes strong{padding:.55rem .2rem .15rem;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-preview-quizzes small{padding:0 .2rem .25rem;color:#94a3b8;font-size:.58rem}

.home-light-section { background:#fff; padding: 2.3rem 1.5rem 2.8rem; }.home-content-shell { max-width:82rem;margin:auto; }.home-light-section h2,.home-dynamic-section h2 { margin:0 0 1.4rem;font-size:1.6rem;letter-spacing:-.03em;color:#0f172a; }
.home-benefit-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:1rem; }.home-benefit-grid article { padding:1.35rem;border:1px solid #e8edf4;border-radius:.9rem;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.05); }.home-benefit-grid i{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.8rem;font-style:normal;font-size:1.35rem}.home-benefit-grid i.purple{background:#f3e8ff}.home-benefit-grid i.gold{background:#fef3c7}.home-benefit-grid i.green{background:#dcfce7}.home-benefit-grid i.blue{background:#dbeafe}.home-benefit-grid h3{margin:1rem 0 .45rem;font-size:1rem}.home-benefit-grid p{margin:0;color:#64748b;font-size:.82rem;line-height:1.6}
.home-how { margin-top:2.3rem;padding-top:1.7rem;border-top:1px solid #e2e8f0 }.home-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;text-align:center;gap:1rem}.home-steps div{position:relative}.home-steps b{position:absolute;left:calc(50% - 2.3rem);top:.1rem;display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:50%;background:#7c3aed;color:white;font-size:.68rem}.home-steps i{display:block;font-style:normal;font-size:2.2rem}.home-steps h3{margin:.7rem 0 .3rem;font-size:.9rem}.home-steps p{margin:0;color:#64748b;font-size:.75rem}.home-steps>span{color:#94a3b8;font-size:1.5rem}
.home-dynamic-section { padding:2.6rem 1.5rem 4rem;background:#f8fafc }.home-admin-review,.home-own-quizzes{margin-bottom:2.4rem}.home-review-card{padding:1rem;border:1px solid #fde68a;border-radius:1rem;background:#fff;display:flex;gap:.65rem;flex-wrap:wrap}.home-review-card>div{flex:1 1 100%;display:flex;flex-direction:column}.home-review-card small{color:#64748b;margin-top:.25rem}.home-review-card button{border:0;cursor:pointer}.home-reject-form{display:grid;grid-template-columns:1fr 1fr auto;gap:.4rem;width:100%}.home-reject-form select,.home-reject-form textarea{width:100%;padding:.5rem;border:1px solid #fecaca;border-radius:.6rem}.home-section-heading{display:flex;align-items:center;justify-content:space-between}.home-section-heading a{color:#6d28d9;text-decoration:none;font-weight:800;font-size:.8rem}.home-own-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.home-own-grid a{display:flex;flex-direction:column;padding:1rem;border:1px solid #e2e8f0;border-radius:.8rem;background:#fff;color:#0f172a;text-decoration:none}.home-own-grid small{margin-top:.3rem;color:#64748b}.home-quiz-row{margin-bottom:2.5rem}.home-empty-state{text-align:center;padding:3.5rem;border:2px dashed #cbd5e1;border-radius:1.2rem;background:#fff}.home-empty-state>span{font-size:3rem}.home-empty-state p{color:#64748b}.home-empty-state a{display:inline-block;padding:.75rem 1.2rem;border-radius:.7rem;background:#6d28d9;color:#fff;text-decoration:none;font-weight:800}

@media(max-width:1100px){.home-hero-inner{grid-template-columns:1fr;gap:3rem}.home-hero-copy{text-align:center}.home-lead,.home-hero h1{margin-left:auto;margin-right:auto}.home-hero-actions,.home-stats{justify-content:center}.home-app-preview{max-width:50rem;margin:auto;transform:none}.home-benefit-grid{grid-template-columns:repeat(2,1fr)}.home-own-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.home-page .nav-wrapper>div:first-child nav{display:none!important}.home-page .nav-badge-tokens,.home-page .nav-link-item:not(.active){display:none}.home-hero{padding:7.5rem 1rem 3.5rem}.home-hero h1{font-size:clamp(2.75rem,13vw,4rem)}.home-lead{font-size:.95rem}.home-stats{gap:1.1rem}.home-app-preview{padding:.8rem;border-radius:1.2rem}.home-preview-topbar{grid-template-columns:auto 1fr}.home-preview-points{display:none}.home-preview-actions{grid-template-columns:1fr}.home-preview-quizzes{grid-template-columns:repeat(3,minmax(8rem,1fr));overflow-x:auto}.home-benefit-grid{grid-template-columns:1fr}.home-steps{grid-template-columns:1fr 1fr;gap:2rem 1rem}.home-steps>span{display:none}.home-own-grid{grid-template-columns:1fr}.home-reject-form{grid-template-columns:1fr}.home-light-section,.home-dynamic-section{padding-left:1rem;padding-right:1rem}}

/* Gombok és Linkek */
.auth-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.auth-link {
    font-size: 0.875rem;
    color: #4f46e5;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.15s ease-in-out;
}

.auth-link:hover {
    color: #4338ca;
    text-decoration: underline;
}

.btn-auth-submit {
    padding: 0.625rem 1.5rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 600;
    border-radius: 0.5rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-auth-submit:hover {
    background-color: #4338ca;
}

/* Auth Bónusz Szöveg (Regisztrációs plusz) */
.auth-subtitle-bonus {
    font-size: 0.875rem; /* text-sm */
    font-weight: 700;
    text-align: center;
    color: #d97706; /* amber-600 */
    margin-bottom: 1.5rem;
}

/* ==========================================================================
   PROFIL OLDAL (Profile Show Component)
   ========================================================================== */

/* Konténer */
.profile-container {
    max-width: 56rem; /* max-w-4xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.profile-title {
    font-size: 1.875rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 1.5rem;
}

/* Értesítési Doboz */
.alert-success-custom {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #dcfce7;
    border: 1px solid #86efac;
    color: #166534;
    border-radius: 1rem;
    font-weight: 700;
}

/* Kétoszlopos elrendezés */
.profile-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}

@media (min-width: 768px) {
    .profile-grid {
        grid-template-columns: 1fr 2fr;
    }
}

/* Bal oldali Felhasználói Kártya */
.profile-user-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    padding: 1.5rem;
    border: 1px solid #f3f4f6;
    text-align: center;
    height: fit-content;
}

.profile-avatar {
    width: 5rem;
    height: 5rem;
    background-color: #e0e7ff;
    color: #4f46e5;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1.875rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
}

.profile-user-name {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
}

.profile-user-email {
    font-size: 0.875rem;
    color: #6b7280;
    margin-bottom: 1rem;
}

/* Szerepkör Jelvények (Badge-ek) */
.role-badge {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.role-badge-hostadmin { background-color: #f3e8ff; color: #7e22ce; }
.role-badge-useradmin { background-color: #dbeafe; color: #1d4ed8; }
.role-badge-user      { background-color: #f3f4f6; color: #374151; }

/* DevTool Kártya */
.devtool-card {
    background-color: #fffbeb;
    border-radius: 1.5rem;
    padding: 1.5rem;
    border: 2px dashed #fcd34d;
    margin-bottom: 1.5rem;
}

.devtool-title {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
    color: #78350f;
    font-weight: 800;
    font-size: 1.125rem;
}

.devtool-desc {
    font-size: 0.75rem;
    color: #b45309;
    margin-bottom: 1rem;
}

.devtool-btn-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* Szerepkör gombok */
.btn-role-switch {
    padding: 0.5rem 1rem;
    border-radius: 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    border: 1px solid #e5e7eb;
    background-color: #ffffff;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

.btn-role-user { color: #374151; }
.btn-role-user:hover { background-color: #f3f4f6; }
.btn-role-user.active { background-color: #1f2937; color: #ffffff; border-color: #1f2937; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); }

.btn-role-useradmin { color: #1d4ed8; }
.btn-role-useradmin:hover { background-color: #eff6ff; }
.btn-role-useradmin.active { background-color: #2563eb; color: #ffffff; border-color: #2563eb; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); }

.btn-role-hostadmin { color: #7e22ce; }
.btn-role-hostadmin:hover { background-color: #faf5ff; }
.btn-role-hostadmin.active { background-color: #9333ea; color: #ffffff; border-color: #9333ea; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); }

/* Jelszó Módosítása Kártya */
.password-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    padding: 1.5rem;
    border: 1px solid #f3f4f6;
}

.password-card-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e5e7eb;
}

.form-input-profile {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.75rem;
    outline: none;
}
.form-input-profile:focus {
    border-color: #4f46e5;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.2);
}

.btn-save-password {
    padding: 0.625rem 1.25rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 700;
    border-radius: 0.75rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}
.btn-save-password:hover {
    background-color: #4338ca;
}

/* ==========================================================================
   PROFIL DASHBOARD – sötét KwizzGo megjelenés
   A profile-page hatókör megakadályozza, hogy a profil komponensei más
   oldalakon felülírják a közös űrlap- és kártyastílusokat.
   ========================================================================== */
.profile-page {
    min-height: 100vh;
    margin: 0;
    color: #f8f7ff;
    background:
        radial-gradient(circle at 78% 17%, rgba(104, 33, 220, .2), transparent 27rem),
        radial-gradient(circle at 77% 92%, rgba(245, 158, 11, .13), transparent 20rem),
        #03071a;
}

.profile-shell { width: min(1440px, calc(100% - 3rem)); margin: 0 auto; padding: 3rem 0 4rem; }
.profile-hero { min-height: 150px; display: flex; align-items: center; justify-content: space-between; position: relative; overflow: hidden; }
.profile-hero::after { content: ''; position: absolute; right: 2%; bottom: 0; width: 270px; height: 1px; box-shadow: 0 -12px 70px 35px rgba(120, 45, 255, .38); }
.profile-hero h1 { margin: 0 0 .65rem; font-size: clamp(2rem, 3.2vw, 3rem); font-weight: 900; letter-spacing: -.03em; }
.profile-hero h1 span { filter: hue-rotate(28deg) saturate(1.5); }
.profile-hero p, .panel-description { color: #a9adc3; line-height: 1.55; margin: 0; }
.profile-hero-trophy { font-size: 6.5rem; margin-right: 8%; filter: drop-shadow(0 0 25px rgba(139, 69, 255, .65)); transform: rotate(2deg); }
.profile-alert { margin: 0 0 1.25rem; padding: 1rem 1.25rem; border-radius: 12px; border: 1px solid; }
.profile-alert.success { color: #9df5c4; background: rgba(16, 185, 129, .12); border-color: rgba(52, 211, 153, .35); }
.profile-alert.error { color: #fecaca; background: rgba(239, 68, 68, .12); border-color: rgba(248, 113, 113, .35); }
.profile-dashboard { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 1.75rem; align-items: start; }
.profile-sidebar, .profile-main-column { display: grid; gap: 1.75rem; }
.profile-panel { background: linear-gradient(145deg, rgba(13, 19, 46, .93), rgba(7, 11, 31, .96)); border: 1px solid #2b315c; border-radius: 17px; padding: 1.75rem; box-shadow: 0 22px 70px rgba(0, 0, 0, .18); }
.profile-panel h3 { margin: 0 0 1rem; color: #fff; font-size: 1.35rem; }
.profile-identity { text-align: center; padding: 2.25rem 1.5rem 1.4rem; }
.profile-page .profile-avatar { width: 116px; height: 116px; margin: 0 auto 1.4rem; color: #fff; font-size: 3.4rem; background: linear-gradient(145deg, #7541f7, #4520ad); border: 1px solid #8c63ff; box-shadow: 0 0 32px rgba(103, 59, 235, .48); }
.profile-identity h2 { margin: 0 0 .6rem; font-size: 1.55rem; color: #fff; }
.profile-identity > p { color: #ccd0df; font-size: .86rem; overflow-wrap: anywhere; }
.verified-mark { color: #8659ff; font-size: .8rem; }
.profile-page .role-badge { margin-top: .75rem; color: #c7adff; background: rgba(111, 45, 203, .35); }
.profile-secondary-button, .profile-small-button { display: inline-flex; justify-content: center; align-items: center; color: #f4f2ff; text-decoration: none; font-weight: 750; border: 1px solid #30385f; background: #121933; border-radius: 11px; transition: .2s ease; }
.profile-secondary-button { width: 100%; margin-top: 1.5rem; padding: .9rem 1rem; box-sizing: border-box; }
.profile-secondary-button:hover, .profile-small-button:hover { border-color: #7045da; background: #1a1640; transform: translateY(-1px); }
.profile-side-stats { margin-top: 1.5rem; border: 1px solid #293052; border-radius: 12px; overflow: hidden; text-align: left; }
.profile-side-stats > div { display: flex; gap: .85rem; align-items: center; padding: 1rem; border-bottom: 1px solid #293052; }
.profile-side-stats > div:last-child { border: 0; }
.profile-side-stats > div > span { font-size: 1.3rem; }
.profile-side-stats p { color: #aeb3c7; font-size: .75rem; margin: 0; }
.profile-side-stats strong { display: block; color: #fff; font-size: 1rem; margin-top: .25rem; }
.profile-text-link { display: block; color: #9a70ff; font-size: .8rem; font-weight: 800; text-decoration: none; margin-top: 1rem; }
.compact-panel { padding: 1.5rem; }
.compact-panel .panel-description { font-size: .78rem; margin-bottom: .8rem; }
.profile-radio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin-bottom: 1.2rem; }
.profile-radio-grid label { font-size: .8rem; font-weight: 750; cursor: pointer; }
.profile-radio-grid input { accent-color: #7348f6; }
.profile-primary-button { border: 0; border-radius: 10px; color: #fff; background: linear-gradient(100deg, #6233da, #8d3df0); padding: .8rem 1.25rem; font-weight: 850; cursor: pointer; box-shadow: 0 8px 25px rgba(101, 49, 218, .23); transition: .2s ease; }
.profile-primary-button:hover { filter: brightness(1.15); transform: translateY(-1px); }
.profile-quick-links a { display: flex; justify-content: space-between; color: #e7e4f4; text-decoration: none; padding: .7rem 0; font-weight: 700; font-size: .84rem; }
.profile-quick-links a span { color: #924dff; font-size: 1.2rem; }
.panel-heading-row { display: flex; justify-content: space-between; gap: 1.5rem; align-items: center; }
.panel-heading-row h3 { margin-bottom: .55rem; }
.profile-small-button { color: #b890ff; border-color: rgba(118, 60, 214, .28); background: rgba(107, 42, 181, .18); padding: .75rem 1.1rem; white-space: nowrap; font-size: .8rem; }
.profile-result-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-top: 1.5rem; }
.profile-result-cards article { min-height: 125px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; text-align: center; border: 1px solid #293151; border-radius: 12px; background: linear-gradient(145deg, rgba(26, 34, 66, .7), rgba(14, 20, 44, .75)); }
.profile-result-cards article > span { font-size: 1.55rem; margin-bottom: .55rem; }
.profile-result-cards small { color: #afb3c6; }
.profile-result-cards strong { color: #fff; font-size: 1.45rem; margin-top: .35rem; }
.private-details-panel .panel-description { font-size: .85rem; }
.profile-reward-copy { color: #ffbf00; font-weight: 900; margin: .75rem 0 1.3rem; }
.profile-reward-copy.completed { color: #4ade80; }
.profile-details-form { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 1.5rem; }
.profile-details-form label { display: grid; gap: .45rem; color: #d8d8e5; font-size: .83rem; }
.profile-details-form input, .profile-details-form select { box-sizing: border-box; width: 100%; color: #f8f7ff; color-scheme: dark; background: #0c132d; border: 1px solid #30395e; border-radius: 10px; padding: .85rem; outline: none; }
.profile-details-form input:focus, .profile-details-form select:focus { border-color: #8051ea; box-shadow: 0 0 0 3px rgba(128, 81, 234, .13); }
.profile-form-action { display: flex; align-items: end; justify-content: end; }
.profile-page .notification-preference-table { border-color: #293151; background: transparent; }
.profile-page .notification-preference-header { color: #aeb2c6; background: #171e3b; }
.profile-page .notification-preference-row { color: #f3f1fa; border-color: #293151; }
.profile-page .notification-preference-row small { color: #9ba0b6; }
.profile-page .notification-channel-toggle input { accent-color: #7747ef; width: 18px; height: 18px; }
.unavailable-channel { color: #777d94; text-align: center; }
.notification-save { display: flex; justify-content: end; margin-top: 1.25rem; }

@media (max-width: 1050px) {
    .profile-dashboard { grid-template-columns: 280px minmax(0, 1fr); }
    .profile-result-cards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
    .profile-shell { width: min(100% - 1.25rem, 680px); padding-top: 1.5rem; }
    .profile-hero { min-height: 115px; }
    .profile-hero-trophy { font-size: 4rem; margin-right: 2%; }
    .profile-dashboard { grid-template-columns: 1fr; }
    .profile-details-form { grid-template-columns: 1fr; }
    .profile-form-action .profile-primary-button { width: 100%; }
    .panel-heading-row { align-items: flex-start; flex-direction: column; }
    .profile-small-button { width: 100%; box-sizing: border-box; }
}
@media (max-width: 440px) {
    .profile-hero-trophy { display: none; }
    .profile-panel { padding: 1.2rem; border-radius: 14px; }
    .profile-result-cards { grid-template-columns: 1fr; }
    .profile-radio-grid { grid-template-columns: 1fr; }
    .profile-page .notification-preference-header,
    .profile-page .notification-preference-row { grid-template-columns: minmax(0, 1fr) 50px 50px; }
}

/* ==========================================================================
   EREDMÉNYEK DASHBOARD
   A profil vizuális rendszerét követő, önállóan reszponzív kimutatás.
   ========================================================================== */
.results-page {
    min-height: 100vh;
    margin: 0;
    color: #f7f5ff;
    background:
        radial-gradient(circle at 85% 12%, rgba(105, 38, 218, .2), transparent 28rem),
        radial-gradient(circle at 10% 62%, rgba(48, 49, 153, .12), transparent 32rem),
        radial-gradient(circle at 75% 100%, rgba(245, 158, 11, .1), transparent 20rem),
        #03071a;
}
.results-shell { width: min(1380px, calc(100% - 3rem)); margin: 0 auto; padding: 2.8rem 0 4rem; }
.results-hero { min-height: 145px; display: flex; justify-content: space-between; align-items: center; position: relative; overflow: hidden; }
.results-back-link { display: inline-block; color: #a98aff; text-decoration: none; font-size: .82rem; font-weight: 800; margin-bottom: 1rem; }
.results-back-link:hover { color: #d4c6ff; }
.results-hero h1 { margin: 0 0 .55rem; font-size: clamp(2rem, 3.2vw, 3rem); font-weight: 900; letter-spacing: -.035em; }
.results-hero p, .results-section-heading p { color: #a7acc1; margin: 0; line-height: 1.55; }
.results-hero-art { font-size: 5.5rem; margin-right: 7%; filter: drop-shadow(0 0 25px rgba(122, 62, 238, .6)); }
.results-summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
.results-summary-grid article, .results-panel { background: linear-gradient(145deg, rgba(14, 20, 48, .94), rgba(7, 11, 31, .97)); border: 1px solid #2b315b; box-shadow: 0 18px 60px rgba(0, 0, 0, .17); }
.results-summary-grid article { min-height: 155px; display: flex; flex-direction: column; justify-content: center; border-radius: 15px; padding: 1.4rem; }
.results-metric-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; margin-bottom: .9rem; font-size: 1.15rem; line-height: 1; font-style: normal; font-weight: 900; }
.results-metric-icon.purple { background: rgba(126, 70, 239, .2); color: #a77cff; }
.results-metric-icon.green { background: rgba(34, 197, 94, .16); color: #5ee492; }
.results-metric-icon.blue { background: rgba(59, 130, 246, .16); color: #69a1ff; }
.results-metric-icon.amber { background: rgba(245, 158, 11, .16); color: #ffc33d; }
.results-summary-grid small, .creator-metric-grid small { color: #aeb3c7; font-size: .77rem; }
.results-summary-grid strong { display: block; color: #fff; font-size: 2rem; margin: .25rem 0; }
.results-summary-grid em { color: #777f9a; font-size: .7rem; font-style: normal; }
.results-panel { border-radius: 17px; padding: 1.75rem; margin-top: 1.5rem; }
.results-section-heading h2 { color: #fff; margin: .35rem 0 .45rem; font-size: 1.45rem; }
.results-section-heading p { max-width: 700px; font-size: .84rem; }
.results-eyebrow { color: #a982ff; font-weight: 900; font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.creator-results-panel { border-color: #493c41; background: linear-gradient(145deg, rgba(25, 21, 44, .96), rgba(12, 13, 33, .97)); }
.creator-results-panel .results-eyebrow, .creator-results-panel .creator-reward-value { color: #ffc234; }
.creator-reward-value { color: #ffc234; font-size: .84rem; font-weight: 900; }
.split-heading { display: flex; justify-content: space-between; gap: 2rem; align-items: flex-start; }
.creator-metric-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; flex: 0 0 350px; }
.creator-metric-grid article { padding: 1rem; border-radius: 12px; border: 1px solid rgba(245, 158, 11, .25); background: rgba(23, 26, 51, .8); }
.creator-metric-grid strong { display: block; color: #fff; font-size: 1.55rem; margin-top: .35rem; }
.creator-metric-grid article:last-child strong { color: #ffc234; }
.results-table-wrap { margin-top: 1.4rem; border: 1px solid #293151; border-radius: 12px; overflow-x: auto; }
.results-table-wrap.flush { margin-left: -1.75rem; margin-right: -1.75rem; border-left: 0; border-right: 0; border-radius: 0; }
.results-table { width: 100%; min-width: 620px; border-collapse: collapse; text-align: left; font-size: .84rem; }
.results-table th { color: #9299b2; background: #151c38; padding: .85rem 1.1rem; font-size: .68rem; text-transform: uppercase; letter-spacing: .045em; }
.results-table td { color: #c9ccda; padding: .9rem 1.1rem; border-top: 1px solid #262d50; }
.results-table td strong { color: #f5f3fc; }
.results-table tbody tr { transition: background .15s ease; }
.results-table tbody tr:hover { background: rgba(112, 70, 200, .07); }
.accuracy-pill { display: inline-block; min-width: 45px; text-align: center; color: #c2a9ff; background: rgba(119, 71, 239, .15); border-radius: 999px; padding: .3rem .55rem; font-weight: 900; }
.accuracy-pill.muted { color: #777e96; background: #171d34; }
.results-action-cell { text-align: right; }
.results-action-cell a { color: #a981ff; text-decoration: none; font-weight: 900; white-space: nowrap; }
.weekly-bars { height: 180px; display: grid; grid-template-columns: repeat(12, minmax(28px, 1fr)); align-items: end; gap: .65rem; margin: 1.6rem 0; padding: 1rem 1rem .4rem; border-bottom: 1px solid #2a3154; background: linear-gradient(to top, rgba(34, 43, 79, .16), transparent); overflow-x: auto; }
.weekly-bar-item { height: 100%; min-width: 28px; display: grid; grid-template-rows: 20px 1fr 22px; align-items: end; text-align: center; }
.weekly-bar-item > span, .weekly-bar-item small { color: #838ba6; font-size: .62rem; }
.weekly-bar-track { height: 100%; display: flex; align-items: end; justify-content: center; }
.weekly-bar-track i { display: block; width: min(22px, 70%); min-height: 5px; border-radius: 6px 6px 2px 2px; background: linear-gradient(to top, #6130d5, #a05aff); box-shadow: 0 0 14px rgba(123, 68, 230, .25); }
.results-empty { padding: 3.5rem 1rem; margin-top: 1.2rem; text-align: center; color: #9298ae; border: 1px dashed #31395d; border-radius: 12px; }
.results-empty.compact { padding: 1.4rem; }
.results-empty > span { display: block; font-size: 2rem; margin-bottom: .7rem; }
.results-empty strong { display: block; color: #fff; font-size: 1.05rem; }
.results-empty p { margin: .4rem 0 1rem; }
.results-empty a { color: #ae8bff; font-weight: 900; text-decoration: none; }
.results-pagination { padding-top: 1.25rem; color: #c8c6d5; }
.results-pagination nav > div:first-child { display: none; }
.results-pagination nav > div:last-child { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.results-pagination nav p { color: #9298ad; font-size: .8rem; }
.results-pagination nav span[aria-current="page"] > span,
.results-pagination nav a { display: inline-flex; color: #d7caff; background: #121933; border: 1px solid #30385e; padding: .55rem .75rem; text-decoration: none; }

/* Játék közbeni segítségválasztó és kártyajátékok. */
.quiz-helper-toolbar { display:grid; grid-template-columns:repeat(5,1fr); gap:.55rem; margin:0 0 1.25rem; }
.quiz-helper-toolbar form { margin:0; }
.quiz-helper-toolbar button { width:100%; min-height:58px; padding:.55rem; border:1px solid #c4b5fd; border-radius:.75rem; background:#f5f3ff; color:#5b21b6; cursor:pointer; }
.quiz-helper-toolbar button strong,.quiz-helper-toolbar button small { display:block; }
.quiz-helper-toolbar button small { margin-top:.2rem; color:#7c3aed; font-size:.68rem; }
.helper-eliminated { opacity:.28; pointer-events:none; filter:grayscale(1); text-decoration:line-through; }
.audience-result,.bear-result { display:flex; flex-wrap:wrap; gap:.7rem; align-items:center; margin:0 0 1rem; padding:.85rem 1rem; border-radius:.8rem; background:#ede9fe; color:#5b21b6; }
.audience-result span { padding:.25rem .55rem; background:#fff; border-radius:999px; font-weight:800; }
.playing-card { display:inline-flex; align-items:center; justify-content:center; width:58px; height:82px; border-radius:8px; border:2px solid #ddd; background:#fff; color:#111827; font-size:1.25rem; font-weight:900; box-shadow:0 5px 14px rgba(0,0,0,.3); }
.playing-card.red { color:#dc2626; }
@media(max-width:700px){.quiz-helper-toolbar{grid-template-columns:repeat(2,1fr)}.playing-card{width:46px;height:66px;font-size:1rem}}

/* ==========================================================================
   KWIZZGO JÁTÉKMENET – kérdés, válaszok és segítségek
   ========================================================================== */
.kwizzgo-game-page,.kwizzgo-game-wrapper { min-height:100vh; color:#f7f5ff; background:radial-gradient(circle at 82% 12%,rgba(104,35,214,.2),transparent 28rem),radial-gradient(circle at 15% 85%,rgba(245,158,11,.08),transparent 24rem),#03071a!important; }
.game-screen>.max-w-5xl { max-width:72rem; }
.game-stats-bar { margin-bottom:1.25rem; padding:1.15rem 1.35rem; border:1px solid #2c335d; border-radius:15px; background:linear-gradient(135deg,rgba(15,22,51,.96),rgba(7,12,32,.96)); box-shadow:0 18px 55px rgba(0,0,0,.2); }
.game-stats-bar .text-gray-400 { color:#858da8!important; }.game-stats-bar .text-gray-700 { color:#d7d9e6!important; }.game-stats-bar .bg-gray-100 { background:#181f3d!important; }
.question-stage { position:relative; overflow:hidden; margin-bottom:1.5rem; padding:clamp(1.25rem,3vw,2.5rem); border:1px solid #303866; border-radius:19px; background:linear-gradient(145deg,rgba(14,21,50,.98),rgba(7,11,31,.98)); box-shadow:0 25px 75px rgba(0,0,0,.28); }
.question-stage::before { content:''; position:absolute; top:-130px; right:-100px; width:320px; height:260px; border-radius:50%; background:rgba(112,48,222,.15); filter:blur(35px); pointer-events:none; }
.question-meta-row { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-bottom:1.5rem; }
.difficulty-badge { padding:.42rem .75rem; border:1px solid rgba(153,109,255,.38); border-radius:999px; color:#c5adff; background:rgba(110,60,208,.14); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.07em; }
.question-counter { color:#858da8; font-size:.75rem; font-weight:800; }
.question-title { position:relative; max-width:900px; margin:0 0 2rem; color:#fff; font-size:clamp(1.45rem,2.6vw,2.2rem); font-weight:900; line-height:1.35; letter-spacing:-.02em; }
.helper-section-heading { display:flex; gap:.7rem; align-items:center; margin-bottom:.75rem; padding-top:1.15rem; border-top:1px solid #252d52; }
.helper-section-heading>span { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:rgba(119,72,238,.17); }
.helper-section-heading strong,.helper-section-heading small { display:block; }.helper-section-heading strong { color:#eeeaff; font-size:.85rem; }.helper-section-heading small { color:#777f99; margin-top:.1rem; font-size:.65rem; }
.kwizzgo-game-page .quiz-helper-toolbar { grid-template-columns:repeat(5,minmax(0,1fr)); gap:.7rem; margin-bottom:1.4rem; }
.kwizzgo-game-page .quiz-helper-toolbar button { min-height:88px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-color:#30385f; color:#eeeaff; background:linear-gradient(145deg,#151c3b,#0d142e); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.kwizzgo-game-page .quiz-helper-toolbar button:hover { transform:translateY(-3px); border-color:#8052e8; box-shadow:0 10px 28px rgba(95,48,196,.22); }
.kwizzgo-game-page .quiz-helper-toolbar button>span { color:#b38dff; font-size:1.35rem; font-weight:950; line-height:1; margin-bottom:.45rem; }
.kwizzgo-game-page .quiz-helper-toolbar button strong { font-size:.78rem; }.kwizzgo-game-page .quiz-helper-toolbar button small { color:#9a78e5; font-size:.62rem; }
.answer-grid { display:grid; grid-template-columns:1fr 1fr; gap:.9rem; margin-bottom:1.2rem; }
.answer-option { position:relative; min-height:76px; display:flex; align-items:center; gap:1rem; padding:1rem; border:1px solid #30385e; border-radius:13px; color:#e8e6f1; background:#101733; cursor:pointer; transition:.18s ease; }
.answer-option:hover { border-color:#7950df; background:#17163d; transform:translateY(-1px); }
.answer-option:has(input:checked) { border-color:#9368ff; background:linear-gradient(135deg,rgba(94,50,190,.45),rgba(40,29,94,.5)); box-shadow:0 0 0 3px rgba(133,86,241,.12); }
.answer-option input { position:absolute; opacity:0; pointer-events:none; }
.answer-letter { flex:0 0 38px; height:38px; display:grid; place-items:center; border:1px solid #414a76; border-radius:10px; color:#b99cff; background:#18203f; font-weight:950; }
.answer-option:has(input:checked) .answer-letter { color:#fff; border-color:#8a60f1; background:#6d3cda; }
.answer-copy { color:inherit; font-size:.92rem; font-weight:750; line-height:1.4; }
.answer-submit-button { width:100%; display:flex; justify-content:center; gap:.65rem; padding:1rem; border:0; border-radius:12px; color:#fff; background:linear-gradient(100deg,#6131d6,#913ceb); box-shadow:0 10px 30px rgba(98,47,210,.25); font-size:1rem; font-weight:900; cursor:pointer; transition:.18s ease; }
.answer-submit-button:hover { filter:brightness(1.12); transform:translateY(-1px); }
.kwizzgo-game-page .audience-result,.kwizzgo-game-page .bear-result { border:1px solid #55408f; color:#ded1ff; background:rgba(74,43,142,.25); }
.kwizzgo-game-page .audience-result span { color:#fff; background:#1b2142; }
.helper-game-stage { position:relative; overflow:hidden; margin-bottom:1.5rem; padding:clamp(1.5rem,4vw,3rem); text-align:center; border:1px solid #4a397a; border-radius:20px; color:#fff; background:radial-gradient(circle at 50% 25%,rgba(106,46,190,.25),transparent 22rem),linear-gradient(145deg,#101536,#090c23); box-shadow:0 25px 80px rgba(0,0,0,.35); }
.poker-stage { background:radial-gradient(circle at 50% 50%,rgba(22,133,92,.28),transparent 28rem),linear-gradient(145deg,#071d1a,#090c23); }
.helper-stage-kicker { display:inline-block; margin-bottom:.7rem; padding:.35rem .75rem; border:1px solid rgba(176,132,255,.35); border-radius:999px; color:#cbb5ff; background:rgba(115,62,211,.14); font-size:.65rem; font-weight:900; text-transform:uppercase; letter-spacing:.09em; }
.card-hand { min-height:105px; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:.65rem; perspective:800px; }
.helper-game-stage .playing-card { width:68px; height:96px; border:0; border-radius:9px; background:linear-gradient(145deg,#fff,#e8e9ef); box-shadow:0 10px 22px rgba(0,0,0,.35); font-family:Georgia,serif; font-size:1.35rem; }
.deal-card { opacity:0; transform:translate(180px,-120px) rotate(24deg) scale(.7); animation:kwizzgoDeal .45s cubic-bezier(.2,.8,.2,1) forwards; animation-delay:calc(var(--deal-index) * .12s); }
@keyframes kwizzgoDeal { to { opacity:1; transform:translate(0,0) rotate(0) scale(1); } }
.blackjack-score-label { width:min(430px,100%); display:flex; justify-content:space-between; align-items:center; margin:1.3rem auto .6rem; padding:.65rem 1rem; border-radius:10px; color:#bbbfd2; background:rgba(19,26,58,.75); }
.blackjack-score-label strong { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; color:#fff; background:#6e3bd6; font-size:1.1rem; }.blackjack-score-label.player strong { background:#d69218; }
@media(max-width:700px){.game-screen{padding-top:1rem!important}.kwizzgo-game-page .quiz-helper-toolbar{grid-template-columns:repeat(2,1fr)}.answer-grid{grid-template-columns:1fr}.question-stage{border-radius:15px}.game-stats-bar{border-radius:12px}.helper-game-stage .playing-card{width:49px;height:72px;font-size:1rem}.card-hand{min-height:82px;gap:.35rem}}

/* Kvízindító / setup oldal. */
.kwizzgo-setup-page,.kwizzgo-setup-wrapper{min-height:100vh;color:#f7f5ff;background:radial-gradient(circle at 85% 14%,rgba(105,38,220,.19),transparent 29rem),radial-gradient(circle at 5% 75%,rgba(245,158,11,.08),transparent 25rem),#03071a!important}.quiz-setup-shell{width:min(1280px,calc(100% - 3rem));margin:0 auto;padding:2.2rem 0 4rem}.setup-back-link{display:inline-block;margin-bottom:1.3rem;color:#9d85d8;text-decoration:none;font-size:.8rem;font-weight:800}.setup-alert{margin-bottom:1rem;padding:1rem 1.2rem;border:1px solid;border-radius:12px;font-weight:700}.setup-alert.success{color:#8ce9b4;background:rgba(22,163,74,.12);border-color:rgba(34,197,94,.35)}.setup-alert.error{color:#ffb4b4;background:rgba(220,38,38,.12);border-color:rgba(239,68,68,.35)}.quiz-setup-layout{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:1.4rem;align-items:start}.setup-quiz-card,.setup-config-panel{overflow:hidden;border:1px solid #2b335d;border-radius:18px;background:linear-gradient(145deg,rgba(14,20,48,.97),rgba(7,11,30,.98));box-shadow:0 24px 75px rgba(0,0,0,.25)}.setup-cover{position:relative;height:230px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 45%,rgba(126,67,237,.55),transparent 45%),linear-gradient(135deg,#161b44,#090d25);background-size:cover;background-position:center}.setup-cover-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,8,23,.8),transparent 65%)}.setup-cover-mark{position:relative;color:#c3a3ff;font-size:6rem;font-weight:950;text-shadow:0 0 40px rgba(133,76,242,.65)}.setup-category{position:absolute;z-index:2;left:1.2rem;bottom:1rem;padding:.4rem .7rem;border:1px solid rgba(200,173,255,.32);border-radius:999px;color:#e7dcff;background:rgba(13,12,36,.68);backdrop-filter:blur(8px);font-size:.7rem;font-weight:850}.setup-quiz-copy{padding:1.45rem}.setup-eyebrow{color:#a77cff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.setup-quiz-copy h1{margin:.45rem 0 .7rem;color:#fff;font-size:1.7rem;line-height:1.2}.setup-quiz-copy>p{margin:0;color:#9fa5ba;font-size:.82rem;line-height:1.55}.setup-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}.setup-tags span{color:#9f85de;background:#171b38;border-radius:999px;padding:.3rem .55rem;font-size:.65rem}.setup-author{display:flex;align-items:center;gap:.7rem;margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid #252c4f}.setup-author>div{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#7c45e5,#4e25ae);font-weight:900}.setup-author p{margin:0;color:#777f99;font-size:.65rem}.setup-author strong{display:block;color:#ece9f5;font-size:.8rem;margin-top:.1rem}.setup-quiz-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.45rem;margin-top:1.1rem}.setup-quiz-stats article{padding:.7rem .45rem;text-align:center;border:1px solid #293052;border-radius:10px;background:#101631}.setup-quiz-stats article>span{color:#a77cff}.setup-quiz-stats p{margin:.3rem 0 0;color:#787f98;font-size:.6rem}.setup-quiz-stats strong{display:block;color:#fff;font-size:.78rem;margin-top:.15rem}.setup-social-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem}.setup-social-actions form{margin:0}.setup-social-actions button{width:100%;padding:.7rem;border:1px solid #30375b;border-radius:9px;color:#b8bdd0;background:#121831;font-size:.72rem;font-weight:800;cursor:pointer}.setup-social-actions button.active{color:#fff;border-color:#7550d4;background:rgba(99,52,190,.35)}.setup-social-actions button.favorite{color:#ffb3c0;border-color:#a53b62}.setup-reset-form{margin-top:.7rem}.setup-reset-form button{width:100%;padding:.75rem;border:1px solid rgba(245,158,11,.35);border-radius:9px;color:#f7c75c;background:rgba(245,158,11,.09);font-size:.72rem;font-weight:800;cursor:pointer}.setup-reset-form small{display:block;margin-top:.2rem;color:#a5864d}.setup-config-panel{padding:clamp(1.3rem,3vw,2rem)}.setup-config-panel>header{padding-bottom:1.4rem;border-bottom:1px solid #262d50}.setup-config-panel header h2{margin:.4rem 0;color:#fff;font-size:1.65rem}.setup-config-panel header p{margin:0;color:#8f96ad;font-size:.8rem}.setup-section{padding:1.35rem 0;border-bottom:1px solid #252c4d}.setup-section-title{display:flex;align-items:center;gap:.7rem;margin-bottom:.9rem}.setup-section-title>span{flex:0 0 28px;height:28px;display:grid;place-items:center;border-radius:8px;color:#c3a7ff;background:rgba(118,67,221,.19);font-size:.72rem;font-weight:900}.setup-section-title strong,.setup-section-title small{display:block}.setup-section-title strong{color:#f1eff8;font-size:.86rem}.setup-section-title small{margin-top:.12rem;color:#747d98;font-size:.63rem}.setup-section-title em{margin-left:auto;color:#d9c8ff;font-size:.92rem;font-style:normal;font-weight:900}.setup-choice-grid{display:grid;gap:.7rem}.setup-choice-grid.modes{grid-template-columns:1fr 1fr}.setup-choice-grid.triples{grid-template-columns:repeat(3,1fr)}.setup-choice-grid button{position:relative;min-height:78px;padding:.85rem;text-align:left;border:1px solid #30385d;border-radius:11px;color:#b7bbcd;background:#101631;cursor:pointer;transition:.18s}.setup-choice-grid button:hover:not(:disabled){border-color:#6944c4;transform:translateY(-1px)}.setup-choice-grid button.selected{color:#fff;border-color:#8359e7;background:linear-gradient(135deg,rgba(91,49,187,.5),rgba(43,30,95,.55));box-shadow:0 0 0 3px rgba(125,79,226,.1)}.setup-choice-grid button:disabled{opacity:.35;cursor:not-allowed}.setup-choice-grid button i{font-size:1.2rem;font-style:normal;margin-right:.4rem}.setup-choice-grid button strong,.setup-choice-grid button small{display:block}.setup-choice-grid button strong{font-size:.82rem}.setup-choice-grid button small{margin-top:.35rem;color:#7f879f;font-size:.63rem;line-height:1.35}.setup-choice-grid button b{position:absolute;right:.65rem;top:.6rem;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#7545df;font-size:.65rem}.setup-choice-grid.triples button{text-align:center}.setup-choice-grid.triples button strong{font-size:1rem}.setup-warning{color:#f6ad6b;font-size:.68rem}.setup-number-input{box-sizing:border-box;width:100%;padding:.85rem;border:1px solid #30385e;border-radius:10px;color:#fff;background:#0c122b;outline:none}.setup-number-input:focus{border-color:#8055e2;box-shadow:0 0 0 3px rgba(128,85,226,.12)}.setup-range{width:100%;margin-top:1rem;accent-color:#7a48e5}.setup-range-labels{display:flex;justify-content:space-between;color:#737b95;font-size:.62rem}.setup-difficulty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.setup-difficulty-grid label{position:relative;padding:.8rem;text-align:center;border:1px solid #30375b;border-radius:10px;color:#aaaec1;background:#101630;cursor:pointer}.setup-difficulty-grid label.selected{border-color:#8157e5;background:rgba(91,49,180,.35)}.setup-difficulty-grid input{position:absolute;opacity:0}.setup-difficulty-grid i,.setup-difficulty-grid strong,.setup-difficulty-grid small{display:block}.setup-difficulty-grid i{color:#9b72f2;font-style:normal}.setup-difficulty-grid strong{color:#eeeaf7;font-size:.72rem;margin-top:.25rem}.setup-difficulty-grid small{color:#747c95;font-size:.58rem;margin-top:.16rem}.setup-launch-row{display:grid;grid-template-columns:1fr 2fr;gap:.7rem;padding-top:1.3rem}.setup-launch-row a,.setup-launch-row button{display:flex;align-items:center;justify-content:center;padding:.95rem;border-radius:11px;text-decoration:none;font-weight:900}.setup-launch-row a{color:#aaaec0;border:1px solid #30375a;background:#11162d}.setup-launch-row button{gap:.6rem;border:0;color:#fff;background:linear-gradient(100deg,#6132d4,#943eee);box-shadow:0 10px 28px rgba(99,47,211,.28);cursor:pointer}.setup-launch-row button:hover{filter:brightness(1.12)}[x-cloak]{display:none!important}@media(max-width:900px){.quiz-setup-layout{grid-template-columns:1fr}.setup-quiz-card{display:grid;grid-template-columns:280px 1fr}.setup-cover{height:100%;min-height:330px}}@media(max-width:650px){.quiz-setup-shell{width:calc(100% - 1.2rem);padding-top:1.2rem}.setup-quiz-card{display:block}.setup-cover{height:190px;min-height:0}.setup-choice-grid.modes,.setup-difficulty-grid{grid-template-columns:1fr 1fr}.setup-choice-grid.triples{grid-template-columns:repeat(3,1fr)}.setup-launch-row{grid-template-columns:1fr}.setup-config-panel{border-radius:14px}}

@media (max-width: 950px) {
    .results-summary-grid { grid-template-columns: 1fr 1fr; }
    .split-heading { flex-direction: column; }
    .creator-metric-grid { width: 100%; flex-basis: auto; }
}
@media (max-width: 650px) {
    .results-shell { width: calc(100% - 1.25rem); padding-top: 1.5rem; }
    .results-hero-art { display: none; }
    .results-summary-grid { gap: .7rem; }
    .results-summary-grid article { min-height: 125px; padding: 1rem; }
    .results-summary-grid strong { font-size: 1.5rem; }
    .results-panel { padding: 1.2rem; }
    .results-table-wrap.flush { margin-left: -1.2rem; margin-right: -1.2rem; }
    .creator-metric-grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   PROFIL EDIT OLDAL (Profile Edit Component)
   ========================================================================== */

.profile-edit-container {
    max-width: 42rem; /* max-w-2xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.profile-edit-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    padding: 2rem;
    border: 1px solid #e2e8f0;
}

.profile-edit-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}

.profile-edit-title {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1f2937;
    margin: 0;
}

/* Egyenleg kártya az űrlapon belül */
.balance-info-box {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8fafc;
    border-radius: 0.75rem;
    border: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.balance-info-label {
    color: #64748b;
    font-weight: 700;
}

.balance-info-value {
    font-size: 1.25rem;
    font-weight: 800;
    color: #d97706;
}

/* Szintváltó kiemelt mező */
.form-select-role {
    border-color: #f59e0b;
}

.form-select-role:focus {
    border-color: #d97706;
    box-shadow: 0 0 0 3px rgba(217, 119, 6, 0.2);
}

.btn-save-profile {
    width: 100%;
    padding: 0.75rem 1.5rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 700;
    border-radius: 0.75rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-save-profile:hover {
    background-color: #4338ca;
}

/* ==========================================================================
   KÉRDÉS LÉTREHOZÁS & IMPORT (Questions Create Component)
   ========================================================================== */

.q-container {
    max-width: 56rem; /* max-w-4xl */
    margin-left: auto;
    margin-right: auto;
    padding: 1.5rem;
}

.q-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}

.q-title {
    font-size: 1.875rem;
    font-weight: 800;
    color: #1f2937;
    margin: 0;
}

/* Rács elrendezés: 2/3 kártya + 1/3 import kártya */
.q-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}

@media (min-width: 1024px) {
    .q-grid {
        grid-template-columns: 2fr 1fr;
    }
}

.q-card {
    background-color: #ffffff;
    border-radius: 1rem;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    border: 1px solid #f3f4f6;
}

.q-card-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e5e7eb;
}

/* Hibaüzeti doboz */
.alert-danger-custom {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #fee2e2;
    border: 1px solid #fca5a5;
    color: #991b1b;
    border-radius: 1rem;
    font-size: 0.875rem;
}

/* Űrlap szekciók */
.q-section-bg {
    padding: 1rem;
    background-color: rgba(238, 242, 255, 0.5);
    border-radius: 0.75rem;
    border: 1px solid #e0e7ff;
    margin-bottom: 1.25rem;
}

/* Válaszlehetőségek kártyái */
.q-option-box {
    padding: 0.75rem;
    border: 2px solid #e5e7eb;
    border-radius: 0.75rem;
    background-color: rgba(249, 250, 251, 0.5);
    margin-bottom: 1rem;
}

.q-option-header {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.badge-default-correct {
    font-size: 0.75rem;
    font-weight: 700;
    color: #166534;
    background-color: #dcfce7;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
}

/* Fájl feltöltő gombok stílusa */
.file-input-custom {
    width: 100%;
    font-size: 0.875rem;
    color: #6b7280;
}

/* CSV doboz */
.csv-example-box {
    background-color: #f9fafb;
    padding: 0.75rem;
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
    font-size: 0.75rem;
    font-family: monospace;
    color: #374151;
    margin-bottom: 1rem;
    overflow-x: auto;
}

/* Gombok */
.btn-save-question {
    width: 100%;
    padding: 1rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 700;
    font-size: 1.125rem;
    border-radius: 0.75rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-save-question:hover {
    background-color: #4338ca;
}

.btn-import-csv {
    width: 100%;
    padding: 0.75rem;
    background-color: #d97706;
    color: #ffffff;
    font-weight: 700;
    border-radius: 0.75rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-import-csv:hover {
    background-color: #b45309;
}

/* ==========================================================================
   KVÍZHEZ KÉRDÉS HOZZÁADÁSA (Create For Quiz Component)
   ========================================================================== */

.quiz-q-container {
    max-width: 56rem; /* max-w-4xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.quiz-q-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    padding: 2rem;
    border: 1px solid #f3f4f6;
}

.quiz-q-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.badge-quiz-title {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.75rem;
    background-color: #e0e7ff;
    color: #4338ca;
    border-radius: 9999px;
}

.quiz-q-title {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1f2937;
    margin-top: 0.5rem;
    margin-bottom: 0;
}

/* Szöveges beviteli mező (Textarea) */
.form-textarea-custom {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.75rem;
    outline: none;
    font-family: inherit;
}

.form-textarea-custom:focus {
    border-color: #4f46e5;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.2);
}

/* Válaszlehetőség sor */
.quiz-option-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background-color: #f9fafb;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
}

.btn-save-quiz-question {
    width: 100%;
    padding: 1rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 800;
    font-size: 1.125rem;
    border-radius: 1rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-save-quiz-question:hover {
    background-color: #4338ca;
}

/* ==========================================================================
   KÉRDÉS SZERKESZTÉS (Questions Edit Component)
   ========================================================================== */

.q-edit-container {
    max-width: 42rem; /* max-w-2xl */
    margin-left: auto;
    margin-right: auto;
    background-color: #ffffff;
    border-radius: 1rem;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    padding: 2rem;
    border: 1px solid #f3f4f6;
}

.img-preview-q {
    height: 5rem;
    border-radius: 0.5rem;
    margin-bottom: 0.5rem;
    border: 1px solid #e5e7eb;
}

.img-preview-opt {
    height: 3rem;
    border-radius: 0.375rem;
    border: 1px solid #e5e7eb;
}

/* ==========================================================================
   KÉRDÉSBANK TÁBLÁZAT (Questions Index Component)
   ========================================================================== */

.table-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    border: 1px solid #f3f4f6;
    overflow: hidden;
}

.table-custom {
    width: 100%;
    text-align: left;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.table-custom thead tr {
    background-color: #f9fafb;
    border-bottom: 1px solid #f3f4f6;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-weight: 800;
    color: #6b7280;
    letter-spacing: 0.05em;
}

.table-custom th,
.table-custom td {
    padding: 1rem;
}

.table-custom tbody tr {
    border-bottom: 1px solid #f3f4f6;
    transition: background-color 0.15s ease-in-out;
}

.table-custom tbody tr:hover {
    background-color: rgba(249, 250, 251, 0.7);
}

/* Nehézségi Jelvények (Difficulty Badges) */
.badge-diff-easy {
    padding: 0.25rem 0.625rem;
    background-color: #dcfce7;
    color: #15803d;
    font-weight: 800;
    font-size: 0.75rem;
    border-radius: 9999px;
}

.badge-diff-medium {
    padding: 0.25rem 0.625rem;
    background-color: #fef3c7;
    color: #b45309;
    font-weight: 800;
    font-size: 0.75rem;
    border-radius: 9999px;
}

.badge-diff-hard {
    padding: 0.25rem 0.625rem;
    background-color: #fee2e2;
    color: #b91c1c;
    font-weight: 800;
    font-size: 0.75rem;
    border-radius: 9999px;
}

.badge-no-quiz {
    display: inline-block;
    padding: 0.25rem 0.625rem;
    background-color: #f3f4f6;
    color: #6b7280;
    font-weight: 600;
    font-size: 0.75rem;
    border-radius: 0.75rem;
}

/* Helyes válasz kiemelés */
.text-correct-answer {
    color: #059669;
    font-weight: 700;
}

/* ==========================================================================
   JÁTÉKVÁLASZTÓ GRID (Quiz Bet Component)
   ========================================================================== */

/* Egyenleg Kártya a Fejlécben */
.balance-card-header {
    background-color: #ffffff;
    padding: 0.75rem 1.5rem;
    border-radius: 1rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid #f3f4f6;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Szűrő és Kereső Sáv */
.filter-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid #f3f4f6;
    padding: 1.5rem;
    margin-bottom: 2rem;
}

.filter-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

@media (min-width: 768px) {
    .filter-grid {
        grid-template-columns: 2fr 1fr 1fr;
    }
}

.form-label-uppercase {
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    color: #9ca3af;
    text-transform: uppercase;
    margin-bottom: 0.25rem;
}

/* Kvíz Kártyák Grid-je */
.quiz-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 640px) { .quiz-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .quiz-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1280px) { .quiz-grid { grid-template-columns: repeat(4, 1fr); } }

/* Egyes Kvíz Kártyák */
.quiz-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    border: 1px solid #f3f4f6;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.quiz-card:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

/* Borítókép és Kategória Badge */
.quiz-card-cover {
    height: 9rem;
    width: 100%;
    background: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);
    position: relative;
    overflow: hidden;
}

.badge-category-float {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    background-color: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(4px);
    color: #3730a3;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* Kártya Tartalom */
.quiz-card-body {
    padding: 1.25rem;
}

.quiz-card-title {
    font-weight: 800;
    color: #1f2937;
    font-size: 1.125rem;
    line-height: 1.375;
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.quiz-card-desc {
    font-size: 0.75rem;
    color: #6b7280;
    margin-bottom: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.quiz-card-footer {
    padding: 1.25rem;
    padding-top: 0;
    border-top: 1px solid #f9fafb;
    margin-top: auto;
}

.quiz-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.75rem;
    font-weight: 700;
    color: #9ca3af;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.btn-start-quiz {
    display: block;
    width: 100%;
    padding: 0.75rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 800;
    border-radius: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    text-align: center;
    text-decoration: none;
    font-size: 0.875rem;
    transition: background-color 0.15s ease-in-out;
}

.btn-start-quiz:hover {
    background-color: #4338ca;
    color: #ffffff;
}

/* Üres állapot kártya */
.quiz-empty-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    padding: 3rem;
    text-align: center;
    border: 1px solid #f3f4f6;
}

/* ==========================================================================
   ÉLŐ JÁTÉK / KVÍZ MENET (Play Game Component)
   ========================================================================== */

.play-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background-color: #f1f5f9;
}

.play-container {
    width: 100%;
    max-width: 42rem; /* max-w-2xl */
    margin-left: auto;
    margin-right: auto;
}

.play-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05);
    padding: 2rem;
    margin-bottom: 1.5rem;
}

/* Opciós Válaszgombok */
.btn-quiz-option {
    width: 100%;
    padding: 1rem 1.25rem;
    background-color: #f8fafc;
    color: #1e293b;
    border: 2px solid #cbd5e1;
    border-radius: 0.75rem;
    font-size: 1.05rem;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.btn-quiz-option:hover:not(:disabled) {
    background-color: #e0e7ff;
    border-color: #6366f1;
    color: #4338ca;
}

/* Helyes válasz állapot (Zöld) */
.btn-quiz-correct {
    background-color: #166534 !important;
    color: #ffffff !important;
    border-color: #22c55e !important;
}

/* Helytelen válasz állapot (Piros) */
.btn-quiz-wrong {
    background-color: #991b1b !important;
    color: #ffffff !important;
    border-color: #ef4444 !important;
}

/* Kérdés Kép */
.question-img-live {
    max-height: 250px;
    object-fit: contain;
    width: 100%;
    border-radius: 0.75rem;
    border: 1px solid #e2e8f0;
}

/* Üzenet dobozok (JavaScript által vezérelve) */
.alert-game-msg {
    margin-top: 1.5rem;
    padding: 1rem;
    border-radius: 0.75rem;
    font-weight: 700;
    text-align: center;
}

.alert-game-success {
    background-color: #dcfce7;
    color: #15803d;
    border: 1px solid #86efac;
}

.alert-game-danger {
    background-color: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fca5a5;
}

.d-none {
    display: none !important;
}

/* ==========================================================================
   EREDMÉNY / VÁLASZÉRTÉKELŐ OLDAL (Result Page Component)
   ========================================================================== */

.result-card {
    width: 100%;
    max-width: 32rem; /* max-w-lg */
    background-color: #ffffff;
    border-radius: 1rem;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    padding: 2rem;
    text-align: center;
    border: 1px solid #f3f4f6;
}

.result-icon {
    font-size: 3.75rem;
    margin-bottom: 1rem;
}

.result-title-success {
    font-size: 1.875rem;
    font-weight: 800;
    color: #16a34a;
    margin-bottom: 0.5rem;
}

.result-title-danger {
    font-size: 1.875rem;
    font-weight: 800;
    color: #dc2626;
    margin-bottom: 0.5rem;
}

/* Nyeremény dobozok */
.reward-box-amber {
    background-color: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 0.75rem;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.reward-box-green {
    background-color: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 0.75rem;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.reward-box-red {
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 0.75rem;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.reward-label {
    font-size: 0.875rem;
    font-weight: 500;
    display: block;
    margin-bottom: 0.25rem;
}

.reward-value {
    font-size: 1.875rem;
    font-weight: 800;
}

/* Helyes válasz kijelző doboz */
.correct-text-badge {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1f2937;
    background-color: #f3f4f6;
    padding: 0.75rem;
    border-radius: 0.75rem;
    margin-bottom: 1.5rem;
    display: inline-block;
}

/* Következő gomb */
.btn-result-next {
    display: block;
    width: 100%;
    padding: 1rem;
    background-color: #4f46e5;
    color: #ffffff;
    font-weight: 700;
    font-size: 1.125rem;
    border-radius: 0.75rem;
    text-decoration: none;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    transition: background-color 0.15s ease-in-out;
}

.btn-result-next:hover {
    background-color: #4338ca;
    color: #ffffff;
}

/* ==========================================================================
   JÁTÉK BEÁLLÍTÁSA / TÉTRAKÁS (Quiz Setup / Show Component)
   ========================================================================== */

.quiz-setup-container {
    max-width: 42rem; /* max-w-2xl */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 2.5rem;
    padding-bottom: 3rem;
}

.quiz-setup-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    padding: 2rem;
    border: 1px solid #f3f4f6;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
}

.setup-section-title {
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.75rem;
}

/* Játékmód Választó Kártyák (Radio Card Group) */
.mode-card-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

@media (min-width: 640px) {
    .mode-card-grid {
        grid-template-columns: 1fr 1fr;
    }
}

.radio-card {
    position: relative;
    border: 2px solid #e5e7eb;
    border-radius: 1rem;
    padding: 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

.radio-card:hover {
    border-color: #6366f1;
}

.radio-card:has(input:checked) {
    border-color: #4f46e5;
    background-color: rgba(238, 242, 255, 0.5);
}

.radio-card-title {
    font-weight: 800;
    color: #1f2937;
    font-size: 0.875rem;
    margin: 0;
}

.radio-card-desc {
    font-size: 0.6875rem; /* 11px */
    color: #9ca3af;
    margin-top: 0.125rem;
    margin-bottom: 0;
}

/* Nehézségi Szint Választó Kártyák (3 Oszlopos) */
.diff-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}

.diff-card {
    position: relative;
    border: 2px solid #e5e7eb;
    border-radius: 1rem;
    padding: 0.75rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

/* Könnyű kijelölve */
.diff-card-easy:hover { border-color: #22c55e; }
.diff-card-easy:has(input:checked) { border-color: #22c55e; background-color: #f0fdf4; }

/* Közepes kijelölve */
.diff-card-medium:hover { border-color: #f59e0b; }
.diff-card-medium:has(input:checked) { border-color: #f59e0b; background-color: #fffbeb; }

/* Nehéz kijelölve */
.diff-card-hard:hover { border-color: #ef4444; }
.diff-card-hard:has(input:checked) { border-color: #ef4444; background-color: #fef2f2; }

/* Rejtett Radio Input */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* Tét Beviteli Mező */
.input-bet-amount {
    width: 100%;
    padding: 0.75rem 1.25rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    font-weight: 900;
    color: #1f2937;
    font-size: 1.125rem;
    outline: none;
}

.input-bet-amount:focus {
    border-color: #6366f1;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}

/* Indítás Gomb */
.btn-start-game-gradient {
    width: 100%;
    padding: 1rem;
    background: linear-gradient(135deg, #4f46e5 0%, #9333ea 100%);
    color: #ffffff;
    font-weight: 900;
    font-size: 1rem;
    border-radius: 1rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    transition: opacity 0.15s ease-in-out;
}

.btn-start-game-gradient:hover {
    opacity: 0.95;
}

/* ==========================================================================
   MENET ÖSSZEGZÉS OLDAL (Summary Page Component)
   ========================================================================== */

.summary-card {
    width: 100%;
    max-width: 28rem; /* max-w-md */
    background-color: #ffffff;
    border-radius: 1rem;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    padding: 2rem;
    text-align: center;
    border: 1px solid #f3f4f6;
}

.summary-icon {
    font-size: 3.75rem;
    margin-bottom: 1rem;
}

.summary-title-success {
    font-size: 1.875rem;
    font-weight: 800;
    color: #16a34a;
    margin-bottom: 0.5rem;
}

.summary-title-danger {
    font-size: 1.875rem;
    font-weight: 800;
    color: #dc2626;
    margin-bottom: 0.5rem;
}

.summary-title-neutral {
    font-size: 1.875rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.5rem;
}

.summary-desc {
    color: #6b7280;
    margin-bottom: 1.5rem;
    font-size: 0.875rem;
}

/* Statisztikai összegző sorok */
.summary-stat-group {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.summary-stat-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background-color: #f9fafb;
    border-radius: 0.75rem;
}

.summary-stat-item-gold {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background-color: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 0.75rem;
}

.btn-secondary-gray {
    display: block;
    width: 100%;
    padding: 0.75rem;
    background-color: #f3f4f6;
    color: #374151;
    font-weight: 700;
    border-radius: 0.75rem;
    text-decoration: none;
    transition: background-color 0.15s ease-in-out;
}

.btn-secondary-gray:hover {
    background-color: #e5e7eb;
    color: #1f2937;
}

/* ==========================================================================
   MŰSZERFAL / DASHBOARD (Dashboard Component)
   ========================================================================== */

/* Gyorsakció Kártyák (Quick Actions) */
.quick-action-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
    .quick-action-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.quick-action-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    padding: 1.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    border: 1px solid #f3f4f6;
    display: flex;
    align-items: center;
    gap: 1.25rem;
    text-decoration: none;
    transition: all 0.15s ease-in-out;
}

.quick-action-card:hover {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.quick-action-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: transform 0.15s ease-in-out;
}

.quick-action-card:hover .quick-action-icon {
    transform: scale(1.1);
}

.icon-bg-indigo { background-color: #e0e7ff; color: #4f46e5; }
.icon-bg-amber  { background-color: #fef3c7; color: #d97706; }
.icon-bg-emerald { background-color: #d1fae5; color: #059669; }

/* Admin Bírálati Doboz */
.admin-review-box {
    background-color: #fffbeb;
    border: 2px solid #fde68a;
    border-radius: 1.5rem;
    padding: 1.5rem;
    margin-bottom: 2.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.admin-review-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

@media (min-width: 768px) { .admin-review-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .admin-review-grid { grid-template-columns: repeat(3, 1fr); } }

.review-item-card {
    background-color: #ffffff;
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid #fde68a;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Állapot Jelvények (Status Badges) */
.status-badge-approved {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    background-color: #dcfce7;
    color: #15803d;
}

.status-badge-pending {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    background-color: #dbeafe;
    color: #1d4ed8;
}

.status-badge-rejected {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    background-color: #fee2e2;
    color: #b91c1c;
}

/* Kétoszlopos Műszerfal Elrendezés */
.dashboard-main-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}

@media (min-width: 1024px) {
    .dashboard-main-grid {
        grid-template-columns: 2fr 1fr;
    }
}

/* ==========================================================================
   WELCOME / LANDING OLDAL (Welcome Page Component)
   ========================================================================== */

.welcome-wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #f1f5f9;
}

.welcome-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 2rem;
    max-width: 80rem;
    margin: 0 auto;
    width: 100%;
}

.welcome-hero-container {
    max-width: 56rem;
    margin: 0 auto;
    padding: 3rem 1.5rem;
    text-align: center;
}

.welcome-hero-card {
    background-color: #ffffff;
    border-radius: 2rem;
    padding: 3.5rem 2rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05);
}

.welcome-title {
    font-size: 3rem;
    font-weight: 900;
    color: #1e293b;
    margin-bottom: 1rem;
    line-height: 1.15;
}

.welcome-subtitle {
    font-size: 1.25rem;
    color: #64748b;
    max-width: 36rem;
    margin: 0 auto 2.5rem auto;
    line-height: 1.5;
}

.welcome-btn-group {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.btn-hero-primary {
    padding: 0.875rem 2rem;
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);
    color: #ffffff;
    font-weight: 800;
    font-size: 1.125rem;
    border-radius: 1rem;
    text-decoration: none;
    box-shadow: 0 10px 15px -3px rgba(99, 102, 241, 0.3);
    transition: transform 0.15s ease-in-out, opacity 0.15s ease-in-out;
}

.btn-hero-primary:hover {
    transform: translateY(-2px);
    opacity: 0.95;
    color: #ffffff;
}

.btn-hero-secondary {
    padding: 0.875rem 2rem;
    background-color: #ffffff;
    color: #4f46e5;
    font-weight: 800;
    font-size: 1.125rem;
    border-radius: 1rem;
    border: 2px solid #e0e7ff;
    text-decoration: none;
    transition: background-color 0.15s ease-in-out;
}

.btn-hero-secondary:hover {
    background-color: #e0e7ff;
}

.welcome-footer {
    text-align: center;
    padding: 2rem;
    font-size: 0.875rem;
    color: #94a3b8;
    font-weight: 600;
}

/* ==========================================================================
   NAVIGÁCIÓS FEJLÉC (Navigation Header Component)
   ========================================================================== */

.main-navbar {
    background-color: #ffffff;
    border-bottom: 1px solid #e2e8f0;
    padding: 0.75rem 1.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.main-navbar-container {
    max-width: 80rem; /* max-w-7xl */
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
}

.nav-brand {
    font-size: 1.25rem;
    font-weight: 900;
    color: #4f46e5;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.nav-links-group {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-link-item {
    font-size: 0.875rem;
    font-weight: 700;
    color: #4b5563;
    text-decoration: none;
    transition: color 0.15s ease-in-out;
}

.nav-link-item:hover {
    color: #4f46e5;
}

.nav-badge-points {
    background-color: #fef3c7;
    color: #b45309;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-weight: 800;
    font-size: 0.75rem;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-nav-logout {
    background: none;
    border: none;
    color: #ef4444;
    font-weight: 700;
    font-size: 0.875rem;
    cursor: pointer;
    padding: 0;
}

.btn-nav-logout:hover {
    text-decoration: underline;
}

/* ==========================================================================
   SAJÁT KVÍZEK OLDAL (Quizzes Index Component)
   ========================================================================== */

.my-quizzes-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.my-quizzes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
    width: 100%;
}

.quiz-my-card {
    background-color: #ffffff;
    border-radius: 1.5rem;
    padding: 1.5rem;
    border: 1px solid #f3f4f6;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.quiz-progress-bar-bg {
    width: 100%;
    height: 0.5rem;
    background-color: #e2e8f0;
    border-radius: 9999px;
    overflow: hidden;
    margin-top: 0.25rem;
}

.quiz-progress-bar-fill {
    height: 100%;
    background-color: #4f46e5;
    border-radius: 9999px;
}

/* ==========================================================================
   NETFLIX STÍLUSÚ HORIZONTÁLIS SCROLL
   ========================================================================== */

.row-title {
    font-size: 1.25rem;
    font-weight: 800;
    color: #1e293b;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.netflix-row-container {
    position: relative;
    margin-bottom: 2.5rem;
}

.netflix-slider {
    display: flex;
    gap: 1.25rem;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 0.5rem 0.25rem 1rem 0.25rem;
    /* Gördítősáv elrejtése finom dizájnhoz */
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

.netflix-slider::-webkit-scrollbar {
    height: 6px;
}

.netflix-slider::-webkit-scrollbar-thumb {
    background-color: #cbd5e1;
    border-radius: 10px;
}

/* Asztali nézetben 3 kártya látszik egyszerre (kb 32% szélesség kártyánként) */
.netflix-card-item {
    flex: 0 0 calc(33.333% - 0.85rem);
    min-width: 280px; /* Mobilra/kisebb kijelzőre alsó korlát */
}

@media (max-width: 1024px) {
    .netflix-card-item {
        flex: 0 0 calc(50% - 0.65rem); /* Tableten 2 kártya */
    }
}

@media (max-width: 640px) {
    .netflix-card-item {
        flex: 0 0 85%; /* Mobilon 1 kártya + kilóg a következő széle */
    }
}

/* Nyilak a gördítéshez */
.scroll-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.5rem;
    height: 2.5rem;
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid #e2e8f0;
    border-radius: 9999px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: all 0.2s;
}

.scroll-btn:hover {
    background-color: #ffffff;
    transform: translateY(-50%) scale(1.1);
}

.scroll-btn-left { left: -1rem; }
.scroll-btn-right { right: -1rem; }

/* Vendég játékindítási felhívás és gombszerű navigációs elem. */
.nav-link-button {
    border: 0;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
}

.guest-auth-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.guest-auth-modal.is-open {
    display: flex;
}

.guest-auth-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.58);
}

.guest-auth-dialog {
    position: relative;
    width: 100%;
    max-width: 28rem;
    background: #ffffff;
    border-radius: 1rem;
    padding: 2rem;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.25);
    border: 1px solid #e2e8f0;
    text-align: center;
}

.guest-auth-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    border: 0;
    background: #f1f5f9;
    color: #475569;
    width: 2rem;
    height: 2rem;
    border-radius: 9999px;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

.guest-auth-title {
    font-size: 1.5rem;
    font-weight: 900;
    color: #1f2937;
    margin: 0 0 0.75rem 0;
}

.guest-auth-text {
    color: #64748b;
    line-height: 1.5;
    margin: 0 0 1.5rem 0;
}

.quiz-workspace-page{min-height:100vh;color:#f4f1fb;background:radial-gradient(circle at 85% 7%,rgba(105,38,218,.2),transparent 31rem),#03071a!important}.quiz-workspace-shell{max-width:1400px!important}.workspace-back{color:#9b82d6!important}.quiz-workspace-page .workspace-hero-card,.quiz-workspace-page .workspace-questions{border-color:#2b335a!important;background:linear-gradient(145deg,#0f1633,#090d25)!important;box-shadow:0 22px 70px rgba(0,0,0,.24)!important}.quiz-workspace-page h1,.quiz-workspace-page h2,.quiz-workspace-page h3{color:#fff!important}.quiz-workspace-page .text-gray-800,.quiz-workspace-page .text-gray-700,.quiz-workspace-page .text-gray-600{color:#e4e2ec!important}.quiz-workspace-page .text-gray-500,.quiz-workspace-page .text-gray-400{color:#858da6!important}.quiz-workspace-page .border-gray-100,.quiz-workspace-page .border-gray-200,.quiz-workspace-page .divide-gray-100>*{border-color:#293052!important}.quiz-workspace-page .bg-gray-50,.quiz-workspace-page .bg-slate-50,.quiz-workspace-page .bg-gray-100,.quiz-workspace-page .bg-white{background:#121831!important}.quiz-workspace-page .workspace-import{border-color:#40326d!important;background:linear-gradient(135deg,rgba(71,42,139,.3),rgba(15,21,50,.7))!important}.quiz-workspace-page .workspace-import h3{color:#d9c7ff!important}.quiz-workspace-page .workspace-import p{color:#a99bc8!important}.quiz-workspace-page code{color:#d8c5ff;background:#171c39;padding:.12rem .3rem;border-radius:.3rem}.quiz-workspace-page input[type=file],.quiz-workspace-page input[type=search],.quiz-workspace-page select,.quiz-workspace-page textarea{border-color:#30385e!important;color:#ece9f5!important;background:#0d142e!important}.quiz-workspace-page input::file-selector-button{border:0;border-radius:.5rem;color:#d8c9fb;background:#25204c;padding:.4rem}.quiz-workspace-page .workspace-questions thead{background:#151b37!important}.quiz-workspace-page .workspace-questions th{color:#8991aa!important}.quiz-workspace-page .workspace-questions tbody tr{border-color:#293052!important}.quiz-workspace-page .workspace-questions tbody tr:hover{background:rgba(104,61,195,.09)!important}.quiz-workspace-page .workspace-questions td{color:#c9ccda!important}.quiz-workspace-page input[type=checkbox]{accent-color:#7c4be5}.quiz-workspace-page .bg-indigo-600{background:linear-gradient(100deg,#6032d0,#873cdf)!important}.quiz-workspace-page .bg-amber-50{background:rgba(245,158,11,.09)!important}.quiz-workspace-page .border-amber-300,.quiz-workspace-page .border-amber-200{border-color:rgba(245,158,11,.3)!important}.quiz-workspace-page .text-amber-950,.quiz-workspace-page .text-amber-700{color:#f0c36b!important}.quiz-workspace-page .workspace-hero-card>div.bg-gray-50>div.grid>div{border-color:#293052!important;background:#111831!important}.quiz-workspace-page #target-quiz-results{border-color:#30385e!important;background:#111831!important}@media(max-width:640px){.quiz-workspace-shell{padding-top:1.3rem!important}.quiz-workspace-page .workspace-hero-card{padding:1.2rem!important;border-radius:15px!important}.quiz-workspace-page .workspace-questions{border-radius:15px!important}}

.dice-result-stage{margin-bottom:1.5rem;padding:clamp(2rem,5vw,4rem);text-align:center;border:1px solid #4a397a;border-radius:20px;color:#fff;background:linear-gradient(145deg,#111638,#080c22)}
.dice-result-stage.success{border-color:#287d69;background:radial-gradient(circle,rgba(16,185,129,.24),transparent 24rem),#081b22}.dice-result-stage.failure{border-color:#783044;background:radial-gradient(circle,rgba(190,24,93,.2),transparent 24rem),#1d1020}.dice-result-kicker{display:inline-block;padding:.35rem .7rem;border:1px solid #454a67;border-radius:999px;color:#bfc3d4;font-size:.65rem;font-weight:900;text-transform:uppercase}.dice-result-cube{width:120px;height:120px;display:grid;place-items:center;margin:1.5rem auto;border:5px solid #f4c653;border-radius:25px;color:#111827;background:#fff;font-size:4rem;font-weight:950;animation:diceResultLand .55s ease-out}@keyframes diceResultLand{0%{opacity:0;transform:translateY(-80px) rotate(100deg) scale(.6)}100%{opacity:1;transform:none}}.dice-result-stage h2{margin:.5rem 0;color:#fff;font-size:clamp(1.7rem,4vw,2.5rem)}.dice-result-stage p{color:#aeb4c8}.dice-result-actions{display:flex;justify-content:center;gap:.8rem;margin-top:1.6rem}.dice-result-actions button{min-width:190px;padding:.9rem 1.2rem;border-radius:11px;font-weight:900;cursor:pointer}.dice-primary-action{border:0;color:#fff;background:linear-gradient(100deg,#6333d8,#923ded)}.dice-secondary-action{border:1px solid #3b456e;color:#d9dce8;background:#141b38}.dice-result-actions.single .dice-primary-action{background:linear-gradient(100deg,#be3158,#e04b65)}@media(max-width:560px){.dice-result-actions{flex-direction:column}.dice-result-actions button{width:100%}}

.guest-auth-actions {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* Saját kvízek és admin kvízkezelő. A felülírások csak ezen a nézeten élnek. */
.my-quizzes-page{min-height:100vh;color:#f4f1fb;background:radial-gradient(circle at 84% 8%,rgba(105,37,218,.19),transparent 30rem),radial-gradient(circle at 8% 78%,rgba(41,55,145,.11),transparent 30rem),#03071a!important}.my-quizzes-shell{max-width:1400px!important}.my-quizzes-eyebrow{display:block;margin-bottom:.35rem;color:#a17af0;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.my-quizzes-page h1,.my-quizzes-page h2{color:#fff!important}.my-quizzes-page main>div:first-child>div>p{color:#8f96ad!important}.my-quizzes-page main>div:first-child>a{border-radius:11px!important;background:linear-gradient(100deg,#6132d4,#913dea)!important;box-shadow:0 10px 28px rgba(99,47,211,.25)!important}.my-quizzes-page .my-quizzes-filter,.my-quizzes-page .my-quiz-card,.my-quizzes-page main>section.bg-white,.my-quizzes-page form.bg-white{border-color:#2b3359!important;background:linear-gradient(145deg,#0f1633,#090d25)!important;box-shadow:0 18px 55px rgba(0,0,0,.18)!important}.my-quizzes-page label{color:#858da6!important}.my-quizzes-page input[type=search],.my-quizzes-page input[type=text],.my-quizzes-page select,.my-quizzes-page textarea{border-color:#30385e!important;color:#ece9f5!important;background:#0d142e!important}.my-quizzes-page input::placeholder,.my-quizzes-page textarea::placeholder{color:#656d87!important}.my-quizzes-page .my-quizzes-filter button[type=submit]{background:linear-gradient(100deg,#5830c0,#7d3bdb)!important}.my-quizzes-page .text-gray-800,.my-quizzes-page .text-gray-700,.my-quizzes-page .text-gray-600{color:#e7e4ef!important}.my-quizzes-page .text-gray-500,.my-quizzes-page .text-gray-400{color:#838ba4!important}.my-quizzes-page .bg-gray-100,.my-quizzes-page .bg-slate-50{background:#151b36!important}.my-quizzes-page .border-gray-100,.my-quizzes-page .border-gray-200,.my-quizzes-page .divide-gray-100>*,.my-quizzes-page .divide-gray-200>*{border-color:#293052!important}.my-quizzes-page .my-quiz-card{border-radius:16px!important;transition:.2s ease!important}.my-quizzes-page .my-quiz-card:hover{transform:translateY(-4px);border-color:#554285!important;box-shadow:0 25px 65px rgba(0,0,0,.28)!important}.my-quizzes-page .my-quiz-card>div:first-child{background:radial-gradient(circle,rgba(121,62,225,.32),transparent 55%),#151b3b!important}.my-quizzes-page .my-quiz-card h2 a{color:#fff!important;text-decoration:none}.my-quizzes-page .my-quiz-card .bg-indigo-50{color:#b89bff!important;background:rgba(98,55,183,.2)!important}.my-quizzes-page .my-quiz-card .bg-indigo-600{background:linear-gradient(100deg,#6032d0,#843ce0)!important}.my-quizzes-page table{color:#c7cad9!important}.my-quizzes-page thead{background:#151b37!important}.my-quizzes-page thead th{color:#858da6!important}.my-quizzes-page tbody tr{border-color:#293052!important}.my-quizzes-page tbody tr:hover{background:rgba(108,63,199,.09)!important}.my-quizzes-page tbody a{color:#eeeaf8!important}.my-quizzes-page input[type=checkbox]{accent-color:#7c4be5}.my-quizzes-page .bg-amber-50{background:rgba(245,158,11,.1)!important}.my-quizzes-page .border-amber-200{border-color:rgba(245,158,11,.3)!important}.my-quizzes-page .text-amber-800{color:#f5c267!important}.my-quizzes-page main>div:last-child nav{color:#aaaec0}.my-quizzes-page main>div:last-child nav a,.my-quizzes-page main>div:last-child nav span[aria-current=page]>span{border-color:#30385e!important;color:#d5c9f4!important;background:#121831!important}@media(max-width:640px){.my-quizzes-shell{padding-top:1.4rem!important}.my-quizzes-page main>div:first-child>a{width:100%;text-align:center}.my-quizzes-page .my-quizzes-filter{border-radius:15px!important}}

/* Sötét KwizzGo kvízkatalógus. */
.quiz-catalog-page{min-height:100vh;margin:0;color:#f7f5ff;background:radial-gradient(circle at 85% 8%,rgba(104,35,217,.2),transparent 30rem),#03071a}.catalog-shell{width:min(1400px,calc(100% - 3rem));margin:auto;padding:3rem 0 4rem}.catalog-hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:2rem}.catalog-eyebrow{color:#a27cf1;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.catalog-hero h1{margin:.45rem 0;color:#fff;font-size:clamp(2rem,3.6vw,3.3rem);letter-spacing:-.045em}.catalog-hero h1 em{color:#ad7bff;font-style:normal}.catalog-hero>div>p{margin:0;color:#949bb3}.catalog-balance{display:flex;align-items:center;gap:.8rem;padding:.85rem 1.15rem;border:1px solid #34385d;border-radius:13px;background:#0e132c}.catalog-balance>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#ffc93d;background:rgba(245,158,11,.15)}.catalog-balance p{margin:0;color:#888fa8;font-size:.65rem}.catalog-balance strong{display:block;color:#ffd05b;font-size:1rem}.catalog-filter-panel{padding:1rem;border:1px solid #2c335a;border-radius:15px;background:linear-gradient(145deg,#0f1531,#080c1f)}.catalog-filter-panel form{display:grid;grid-template-columns:minmax(260px,1.8fr) 1fr 1fr auto auto;gap:.7rem;align-items:end}.catalog-filter-panel label>span{display:block;margin-bottom:.4rem;color:#858da6;font-size:.62rem;font-weight:850;text-transform:uppercase}.catalog-filter-panel input,.catalog-filter-panel select{box-sizing:border-box;width:100%;height:44px;padding:0 .8rem;border:1px solid #30385e;border-radius:10px;color:#e9e7f2;background:#0d142e;outline:none}.catalog-filter-panel input:focus,.catalog-filter-panel select:focus{border-color:#8051e8}.catalog-search{position:relative}.catalog-search>span{position:absolute;left:.9rem;bottom:.55rem;color:#8e72cd;font-size:1.25rem}.catalog-search input{padding-left:2.6rem}.catalog-filter-button,.catalog-clear-button{height:44px;border-radius:10px;font-weight:850;cursor:pointer}.catalog-filter-button{padding:0 1.2rem;border:0;color:#fff;background:linear-gradient(100deg,#6132d4,#913dea)}.catalog-clear-button{width:44px;display:grid;place-items:center;border:1px solid #363d62;color:#9da3b8;background:#121831;text-decoration:none;font-size:1.25rem}.catalog-heading-row{display:flex;align-items:end;justify-content:space-between;margin:2.3rem 0 1rem}.catalog-heading-row h2{margin:0;color:#fff;font-size:1.35rem}.catalog-heading-row p{margin:.25rem 0 0;color:#747c96;font-size:.72rem}.catalog-heading-row>span{padding:.35rem .65rem;border:1px solid #6043a4;border-radius:999px;color:#b998fb;background:rgba(103,58,194,.16);font-size:.65rem}.catalog-quiz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.catalog-quiz-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #2a3258;border-radius:16px;background:linear-gradient(145deg,#0e1531,#090d25);transition:.2s}.catalog-quiz-card:hover{transform:translateY(-4px);border-color:#514080;box-shadow:0 25px 65px rgba(0,0,0,.25)}.catalog-card-cover{position:relative;height:175px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle,rgba(120,60,228,.55),transparent 45%),linear-gradient(135deg,#1b2150,#0b0f2a);background-size:cover;background-position:center;text-decoration:none}.catalog-card-cover.has-image::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,8,24,.82),transparent 62%)}.catalog-cover-glow{position:absolute;width:130px;height:130px;border-radius:50%;box-shadow:0 0 80px rgba(145,73,255,.5)}.catalog-card-cover>strong{position:relative;color:#c6a7ff;font-size:4rem}.catalog-category-badge,.catalog-question-badge{position:absolute;z-index:2;bottom:.8rem;padding:.35rem .6rem;border:1px solid rgba(200,179,255,.25);border-radius:999px;color:#e9e0ff;background:rgba(9,10,31,.72);font-size:.62rem;font-weight:800}.catalog-category-badge{left:.8rem}.catalog-question-badge{right:.8rem}.catalog-card-content{flex:1;padding:1.15rem}.catalog-card-author{display:flex;align-items:center;gap:.45rem;margin-bottom:.75rem}.catalog-card-author>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#6535c9;font-size:.65rem}.catalog-card-author p{margin:0;color:#7e869f;font-size:.65rem}.catalog-card-content h3{margin:0 0 .55rem;font-size:1.05rem}.catalog-card-content h3 a{color:#fff;text-decoration:none}.catalog-card-content>p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5rem;margin:0;color:#9299b0;font-size:.74rem;line-height:1.55}.catalog-tags{display:flex;gap:.35rem;margin-top:.8rem}.catalog-tags span{padding:.25rem .45rem;border-radius:999px;color:#9d80df;background:#171b38;font-size:.58rem}.catalog-quiz-card footer{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.15rem;border-top:1px solid #252c4c}.catalog-card-stats{display:flex;gap:.65rem;color:#747d97;font-size:.62rem}.catalog-quiz-card footer>a{display:flex;gap:.4rem;color:#b995ff;text-decoration:none;font-size:.72rem;font-weight:900}.catalog-empty{padding:5rem 1rem;text-align:center;border:1px dashed #343c62;border-radius:16px;background:#0c122a}.catalog-empty>span{font-size:2.5rem;color:#8967d3}.catalog-empty p{color:#8d94ab}.catalog-empty a{color:#b995ff;text-decoration:none}.catalog-pagination{margin-top:2rem;color:#b6b4c5}.catalog-pagination nav>div:first-child{display:none}.catalog-pagination nav>div:last-child{display:flex;justify-content:space-between}.catalog-pagination nav p{color:#7d849d}.catalog-pagination nav a,.catalog-pagination nav span[aria-current=page]>span{display:inline-flex;padding:.5rem .7rem;border:1px solid #30385e;color:#d2c5f3;background:#111831;text-decoration:none}@media(max-width:1050px){.catalog-filter-panel form{grid-template-columns:2fr 1fr 1fr}.catalog-quiz-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.catalog-shell{width:calc(100% - 1.2rem);padding-top:1.6rem}.catalog-hero{align-items:flex-start;flex-direction:column}.catalog-balance{align-self:stretch}.catalog-filter-panel form{grid-template-columns:1fr}.catalog-clear-button{width:100%}.catalog-quiz-grid{grid-template-columns:1fr}.catalog-card-cover{height:190px}}

/* Kvíz- és kérdésszerkesztők: egységes, sötét munkafelület. */
.editor-page{min-height:100vh;color:#e9e7f2;background:radial-gradient(circle at 85% 8%,rgba(105,37,218,.2),transparent 30rem),#03071a!important}.editor-shell{max-width:1120px!important}.editor-page .editor-card,.editor-page .q-container,.editor-page .q-edit-container{border:1px solid #2b3359!important;border-radius:18px!important;background:linear-gradient(145deg,#0f1633,#090d25)!important;box-shadow:0 22px 70px rgba(0,0,0,.25)!important}.editor-page h1,.editor-page h2,.editor-page h3,.editor-page label{color:#fff!important}.editor-page p,.editor-page .text-gray-500,.editor-page .text-gray-600,.editor-page .text-gray-700{color:#9199b0!important}.editor-page .bg-white,.editor-page .bg-gray-50,.editor-page .bg-gray-100,.editor-page .bg-slate-50{background:#111831!important}.editor-page .border-gray-100,.editor-page .border-gray-200,.editor-page .border-gray-300{border-color:#30385e!important}.editor-page input:not([type=checkbox]):not([type=radio]),.editor-page textarea,.editor-page select{border-color:#30385e!important;color:#f0edf7!important;background:#0d142e!important}.editor-page input::placeholder,.editor-page textarea::placeholder{color:#626b86!important}.editor-page input:focus,.editor-page textarea:focus,.editor-page select:focus{border-color:#8152e9!important;box-shadow:0 0 0 3px rgba(129,82,233,.14)!important;outline:0}.editor-page input::file-selector-button{border:0;border-radius:.5rem;color:#ded1ff;background:#29214f;padding:.45rem .7rem}.editor-page input[type=checkbox],.editor-page input[type=radio]{accent-color:#7c4be5}.editor-page button[type=submit],.editor-page .bg-indigo-600,.editor-page .bg-purple-600{background:linear-gradient(100deg,#6032d0,#903dea)!important;box-shadow:0 10px 28px rgba(99,47,211,.2)!important}.editor-page .q-section,.editor-page fieldset{border-color:#2c345a!important;background:rgba(17,24,49,.7)!important}.editor-page a{color:#b99bff}.question-editor-page .q-container,.question-editor-page .q-edit-container{width:min(1050px,calc(100% - 2rem));margin:2rem auto!important;padding:clamp(1.1rem,3vw,2rem)!important}

/* Értesítési központ: olvasható állapotok, hangsúlyos olvasatlan elemek. */
.notification-center-page{color:#e9e7f2;background:radial-gradient(circle at 82% 5%,rgba(102,36,211,.2),transparent 30rem),#03071a!important}.notification-center-shell{max-width:1050px!important}.notification-center-page h1,.notification-center-page h2{color:#fff!important}.notification-center-page p,.notification-center-page .text-gray-500,.notification-center-page .text-gray-600,.notification-center-page .text-gray-700{color:#9299b0!important}.notification-center-page article,.notification-center-page .bg-white{border-color:#2b3359!important;background:linear-gradient(145deg,#0f1633,#090d25)!important;box-shadow:0 16px 45px rgba(0,0,0,.18)!important}.notification-center-page article.bg-indigo-50{border-color:#6544aa!important;background:linear-gradient(145deg,rgba(91,48,178,.3),#0d1230)!important}.notification-center-page article:hover{border-color:#514080!important}.notification-center-page .border-gray-100,.notification-center-page .border-gray-200{border-color:#293052!important}.notification-center-page button,.notification-center-page .bg-indigo-600{background:linear-gradient(100deg,#6032d0,#8c3ce7)!important}.notification-center-page a{color:#b99bff!important}

/* Belépés és regisztráció: közös márkázott kártya és mobilbarát űrlap. */
.auth-dark-page{min-height:100vh;margin:0;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;color:#e9e7f2;background:radial-gradient(circle at 76% 14%,rgba(116,47,224,.27),transparent 28rem),radial-gradient(circle at 15% 85%,rgba(42,74,184,.16),transparent 25rem),#03071a!important}.auth-dark-page::before{content:'KwizzGo';position:fixed;top:2rem;left:2.5rem;color:#fff;font-size:1.2rem;font-weight:950;letter-spacing:-.04em}.auth-brand-card{width:min(470px,100%)!important;border:1px solid #30385e!important;border-radius:20px!important;color:#e9e7f2!important;background:linear-gradient(145deg,#101735,#080d24)!important;box-shadow:0 28px 85px rgba(0,0,0,.38)!important}.auth-brand-card h1,.auth-brand-card h2,.auth-brand-card label{color:#fff!important}.auth-brand-card p,.auth-brand-card .text-gray-500,.auth-brand-card .text-gray-600{color:#9299b0!important}.auth-brand-card input{border-color:#30385e!important;color:#fff!important;background:#0b122c!important}.auth-brand-card input:focus{border-color:#8152e9!important;box-shadow:0 0 0 3px rgba(129,82,233,.14)!important}.auth-brand-card button[type=submit]{border:0!important;background:linear-gradient(100deg,#6032d0,#913dea)!important;box-shadow:0 10px 28px rgba(99,47,211,.25)!important}.auth-brand-card a{color:#b99bff!important}.auth-brand-card a[style*="background: #fff"]{border-color:#3a4266!important;color:#eceaf4!important;background:#141a35!important}.auth-brand-card hr{border-color:#30385e!important}

@media(max-width:768px){.editor-shell,.notification-center-shell{width:calc(100% - 1.5rem)!important}.editor-page .editor-card{padding:1.25rem!important}.notification-center-page article{padding:1rem!important}.auth-dark-page::before{position:absolute;top:1rem;left:1.25rem}}@media(max-width:480px){.auth-dark-page{align-items:flex-start;padding-top:4.5rem}.auth-brand-card{padding:1.25rem!important;border-radius:16px!important}.question-editor-page .q-container,.question-editor-page .q-edit-container{width:calc(100% - 1rem);margin:1rem auto!important}.editor-page button[type=submit]{width:100%}}

/* Blackjack döntések: a feladás vizuálisan is elkülönül a játékakcióktól. */
.blackjack-actions{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap}.blackjack-actions form{margin:0}.blackjack-action{min-width:145px;padding:.8rem 1.15rem;border:1px solid transparent;border-radius:11px;font-weight:900;cursor:pointer;transition:transform .16s ease,filter .16s ease}.blackjack-action:hover{transform:translateY(-2px);filter:brightness(1.08)}.blackjack-hit{color:#fff;background:linear-gradient(100deg,#6637d7,#8b43e6)}.blackjack-stand{color:#15111f;background:linear-gradient(100deg,#f1b82f,#ffd463)}.blackjack-abandon{border-color:#694052;color:#f2a8bc;background:rgba(137,35,68,.2)}.blackjack-abandon-note{margin:.8rem 0 0;color:#a8909b!important;font-size:.72rem}.blackjack-stage .playing-card{animation:dealCard .38s both}.blackjack-stage .card-hand .playing-card:nth-child(2){animation-delay:.08s}.blackjack-stage .card-hand .playing-card:nth-child(3){animation-delay:.16s}.blackjack-stage .card-hand .playing-card:nth-child(4){animation-delay:.24s}@media(max-width:560px){.blackjack-actions{flex-direction:column}.blackjack-actions form,.blackjack-action{width:100%}}

/* Közös reklámhelyek: üres vagy reklámmentes állapotban a komponens semmilyen
   helyet nem foglal. A címke egyértelműen elválasztja a reklámot a játéktól. */
.kwizzgo-ad-slot{box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;margin:1.5rem auto;padding:1rem;border:1px solid rgba(133,94,210,.24);border-radius:14px;background:rgba(10,14,35,.72);overflow:hidden}.kwizzgo-ad-label{position:absolute;z-index:2;top:.25rem;left:.55rem;color:#777f98;font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.kwizzgo-ad-link{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.kwizzgo-ad-slot img{display:block;max-width:100%;max-height:100%;object-fit:contain}.kwizzgo-adsense-code{width:100%;text-align:center}.kwizzgo-ad-slot--top_horizontal,.kwizzgo-ad-slot--content_horizontal{width:min(970px,calc(100% - 2rem));min-height:90px;max-height:250px}.kwizzgo-ad-slot--right_sidebar{width:300px;min-height:250px;max-height:600px;margin-top:2.3rem;align-self:start;position:sticky;top:90px}.catalog-content-with-sidebar:has(>.kwizzgo-ad-slot--right_sidebar){display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.25rem}.catalog-content-with-sidebar .catalog-results-main{min-width:0}.catalog-content-with-sidebar:has(>.kwizzgo-ad-slot--right_sidebar) .catalog-quiz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-setup-shell>.kwizzgo-ad-slot{grid-column:1/-1}

/* Hirdetéskezelő: elkülönített sötét admin munkafelület. */
.ad-admin-page{margin:0;color:#eef0f8;background:radial-gradient(circle at 84% 6%,rgba(108,40,220,.2),transparent 30rem),#03071a}.ad-admin-card{border:1px solid #2d355a;border-radius:18px;background:linear-gradient(145deg,#101733,#090e25);box-shadow:0 18px 55px rgba(0,0,0,.2)}.ad-editor input:not([type=checkbox]),.ad-editor select,.ad-editor textarea{box-sizing:border-box;width:100%;padding:.75rem .9rem;border:1px solid #343c61;border-radius:11px;color:#f2effa;background:#0c132d;outline:none}.ad-editor input:focus,.ad-editor select:focus,.ad-editor textarea:focus{border-color:#8354e9;box-shadow:0 0 0 3px rgba(131,84,233,.14)}.ad-editor input[type=checkbox]{width:1rem;height:1rem;accent-color:#7b48e1}.ad-editor input::file-selector-button{margin-right:.8rem;padding:.45rem .7rem;border:0;border-radius:7px;color:#e6dbff;background:#29204e}.ad-field-label{display:block;margin-bottom:.45rem;color:#9ca3bb;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.ad-editor [hidden]{display:none!important}

@media(max-width:1050px){.catalog-content-with-sidebar:has(>.kwizzgo-ad-slot--right_sidebar){display:block}.kwizzgo-ad-slot--right_sidebar{position:relative;top:auto;width:min(728px,calc(100% - 2rem));min-height:90px;max-height:250px;margin:1.5rem auto}.catalog-content-with-sidebar:has(>.kwizzgo-ad-slot--right_sidebar) .catalog-quiz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.kwizzgo-ad-slot--top_horizontal,.kwizzgo-ad-slot--content_horizontal,.kwizzgo-ad-slot--right_sidebar{width:calc(100% - 1.2rem);min-height:100px;max-height:220px;padding:.7rem}.catalog-content-with-sidebar:has(>.kwizzgo-ad-slot--right_sidebar) .catalog-quiz-grid{grid-template-columns:1fr}}

/* Tartalomkezelő és Tiptap szerkesztő. */
.content-admin-page{margin:0;color:#eef0f8;background:radial-gradient(circle at 85% 5%,rgba(110,43,222,.2),transparent 30rem),#03071a}.content-admin-kicker{color:#a77cff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.content-primary-button,.content-secondary-button,.content-danger-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.1rem;border-radius:10px;text-decoration:none;font-weight:900;cursor:pointer}.content-primary-button{border:0;color:#fff;background:linear-gradient(100deg,#6032d0,#913dea)}.content-secondary-button{border:1px solid #3b4268;color:#d9c9ff;background:#111831}.content-danger-button{border:1px solid #84354f;color:#ffafc2;background:rgba(137,35,68,.18)}.content-success,.content-error{margin-bottom:1.2rem;padding:1rem 1.2rem;border:1px solid;border-radius:12px}.content-success{color:#91e8b5;border-color:#277450;background:rgba(22,163,74,.1)}.content-error{color:#ffc0cc;border-color:#77364a;background:rgba(190,24,93,.1)}.content-error ul{margin:.5rem 0 0;padding-left:1.2rem}.content-stat,.content-list-card,.content-panel{border:1px solid #2d355a;background:linear-gradient(145deg,#101733,#090e25);box-shadow:0 18px 55px rgba(0,0,0,.18)}.content-stat{padding:1.1rem;border-radius:14px}.content-stat span{display:block;color:#858da6;font-size:.7rem;font-weight:800}.content-stat strong{display:block;margin-top:.25rem;color:#fff;font-size:1.8rem}.content-tabs{display:flex;gap:.4rem}.content-tabs a{padding:.65rem 1rem;border:1px solid #30385e;border-radius:9px;color:#aeb4c8;text-decoration:none;font-weight:850}.content-tabs a.active{color:#fff;border-color:#7549d6;background:rgba(103,57,199,.3)}.content-list-card{border-radius:16px}.content-list-card th,.content-list-card td{padding:1rem;text-align:left;border-bottom:1px solid #252d4e}.content-list-card th{color:#838ba4;background:#111831;font-size:.65rem;text-transform:uppercase}.content-list-card td{color:#bec3d4;font-size:.78rem}.content-list-card td strong,.content-list-card td small{display:block}.content-list-card td strong{color:#fff}.content-list-card td small{margin-top:.2rem;color:#747d98}.content-list-card td a{color:#b99bff;text-decoration:none;font-weight:900}.content-status{display:inline-flex;padding:.3rem .55rem;border-radius:999px;font-size:.62rem;font-weight:900}.content-status--published{color:#91e8b5;background:rgba(22,163,74,.14)}.content-status--scheduled{color:#7ed8ff;background:rgba(14,165,233,.14)}.content-status--draft{color:#f5c867;background:rgba(245,158,11,.13)}.content-status--archived{color:#9ca3b8;background:rgba(100,116,139,.15)}.content-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:1.2rem;align-items:start}.content-editor-sidebar{position:sticky;top:90px}.content-panel{padding:1.2rem;border-radius:16px}.content-panel h2,.content-panel summary{margin:0 0 1rem;color:#fff;font-size:1rem;font-weight:900}.content-panel summary{cursor:pointer}.content-panel label>span{display:block;margin-bottom:.4rem;color:#8d95ad;font-size:.65rem;font-weight:900;text-transform:uppercase}.content-panel input:not([type=checkbox]),.content-panel select,.content-panel textarea{box-sizing:border-box;width:100%;padding:.72rem .8rem;border:1px solid #333b60;border-radius:9px;color:#f2eff9;background:#0c132c;outline:0}.content-panel input:focus,.content-panel select:focus,.content-panel textarea:focus{border-color:#8252e9;box-shadow:0 0 0 3px rgba(130,82,233,.13)}.content-panel input[type=checkbox]{accent-color:#7b48e1}.content-editor-sidebar .content-panel label{display:block;margin-bottom:1rem}.content-editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding-bottom:.8rem;border-bottom:1px solid #2d3559}.content-editor-toolbar button{padding:.4rem .58rem;border:1px solid #343d63;border-radius:7px;color:#d4d7e2;background:#131a36;font-size:.7rem;font-weight:850;cursor:pointer}.content-editor-toolbar button:hover{border-color:#7850d4;color:#fff}.content-tiptap-editor{min-height:440px;padding-top:1rem}.content-editor-prose{min-height:420px;color:#e4e2eb;line-height:1.75;outline:0}.content-editor-prose h2,.content-editor-prose h3{color:#fff}.content-editor-prose a{color:#b89aff}.content-editor-prose blockquote{margin-left:0;padding-left:1rem;border-left:3px solid #7548d6;color:#b8bdd0}.content-editor-prose table{width:100%;border-collapse:collapse}.content-editor-prose th,.content-editor-prose td{padding:.55rem;border:1px solid #3a4266}.content-editor-prose img{max-width:100%;border-radius:10px}.content-metadata-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.content-metadata-grid>label:first-child:nth-last-child(5),.content-metadata-grid>label:first-child:nth-last-child(4){grid-column:auto}.content-checks{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.content-checks label{display:flex!important;align-items:center;gap:.45rem;color:#b7bdcf;font-size:.75rem}.content-revisions{margin-top:1rem}.content-revisions>div{display:grid;grid-template-columns:auto 1fr;gap:.2rem .6rem;padding:.6rem 0;border-top:1px solid #293052}.content-revisions span,.content-revisions small{color:#838ba4;font-size:.68rem}.content-revisions small{grid-column:2}

/* Publikus, kereső- és megosztóbarát tartalmi oldalak. */
.public-content-page{margin:0;color:#e8e7ef;background:radial-gradient(circle at 80% 8%,rgba(105,38,220,.18),transparent 30rem),#03071a}.public-content-shell{width:min(980px,calc(100% - 2rem));margin:auto;padding:3rem 0 4rem}.public-content-shell>article{overflow:hidden;border:1px solid #2b3459;border-radius:20px;background:linear-gradient(145deg,#101733,#090e25);box-shadow:0 28px 80px rgba(0,0,0,.28)}.public-content-shell article>header{padding:clamp(1.5rem,5vw,3.5rem);border-bottom:1px solid #283052;background:radial-gradient(circle at 85% 20%,rgba(127,69,232,.2),transparent 23rem)}.public-content-shell article>header>span{color:#a77cff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.public-content-shell h1{margin:.6rem 0;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:1.1}.public-content-shell article>header>p{max-width:760px;color:#a3a9bc;line-height:1.6}.public-content-meta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.3rem;color:#767f99;font-size:.68rem}.public-content-prose{padding:clamp(1.5rem,5vw,3.5rem);color:#c7cbd8;font-size:1rem;line-height:1.85}.public-content-prose h2,.public-content-prose h3,.public-content-prose h4{margin:1.8em 0 .6em;color:#fff;line-height:1.25}.public-content-prose a{color:#b99aff}.public-content-prose blockquote{margin-left:0;padding:1rem 1.2rem;border-left:3px solid #7b4be1;color:#d7d0e7;background:#111832}.public-content-prose table{width:100%;border-collapse:collapse}.public-content-prose th,.public-content-prose td{padding:.65rem;border:1px solid #343d62}.public-content-prose img{max-width:100%;height:auto;border-radius:12px}
.article-index-shell{width:min(1200px,calc(100% - 2rem));margin:auto;padding:3rem 0 4rem}.article-index-shell>header span{color:#a77cff;font-size:.68rem;font-weight:900;text-transform:uppercase}.article-index-shell>header h1{margin:.5rem 0;color:#fff;font-size:clamp(2.2rem,5vw,3.5rem)}.article-index-shell>header p{color:#9299b0}.article-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.article-index-grid>article,.article-index-empty{padding:1.4rem;border:1px solid #2c3459;border-radius:16px;background:linear-gradient(145deg,#101733,#090e25)}.article-index-grid article>span{color:#747d98;font-size:.65rem}.article-index-grid h2{margin:.65rem 0}.article-index-grid h2 a{color:#fff;text-decoration:none}.article-index-grid p{color:#9098af;font-size:.78rem;line-height:1.6}.article-index-grid article>a{color:#b99aff;text-decoration:none;font-size:.75rem;font-weight:900}.article-index-empty{grid-column:1/-1;text-align:center;color:#858da6}.article-index-pagination{margin-top:2rem}

/* Közös, adatbázisból felépülő láblécmenü. */
.kwizzgo-site-footer{color:#c1c5d3;border-top:1px solid #262e50;background:#070b1d}.kwizzgo-footer-inner{width:min(1400px,calc(100% - 3rem));display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem;margin:auto;padding:2.5rem 0}.kwizzgo-footer-brand>a{color:#fff;text-decoration:none;font-size:1.35rem;font-weight:950}.kwizzgo-footer-brand>a span{color:#a879ff}.kwizzgo-footer-brand p{color:#737c96;font-size:.75rem}.kwizzgo-site-footer nav strong,.kwizzgo-site-footer nav a{display:block}.kwizzgo-site-footer nav strong{margin-bottom:.8rem;color:#fff;font-size:.75rem}.kwizzgo-site-footer nav a{margin:.45rem 0;color:#8f97ae;text-decoration:none;font-size:.72rem}.kwizzgo-site-footer nav a:hover{color:#b99aff}.kwizzgo-footer-bottom{padding:1rem;text-align:center;border-top:1px solid #202746;color:#656e88;font-size:.65rem}

@media(max-width:950px){.content-editor-layout{grid-template-columns:1fr}.content-editor-sidebar{position:static}.kwizzgo-footer-inner{grid-template-columns:1fr 1fr}.content-metadata-grid{grid-template-columns:1fr}.article-index-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.content-admin-page main{padding-left:.7rem!important;padding-right:.7rem!important}.content-editor-toolbar{gap:.25rem}.content-editor-toolbar button{font-size:.62rem}.content-tiptap-editor{min-height:330px}.content-editor-prose{min-height:310px}.kwizzgo-footer-inner{width:calc(100% - 2rem);grid-template-columns:1fr;gap:1.4rem}.public-content-shell{padding-top:1.2rem}.public-content-shell>article{border-radius:15px}.article-index-grid{grid-template-columns:1fr}}

/* A hostadmin felhasználói adatlap önálló vizuális ritmust kap, miközben a
   levélszerkesztő ugyanazokat a kipróbált vezérlőket használja, mint a kampányok. */
.admin-user-profile{background:radial-gradient(circle at 90% 0,rgba(109,40,217,.1),transparent 30rem),#f1f5f9}.admin-user-profile main>section{border:1px solid rgba(148,163,184,.22);box-shadow:0 18px 45px rgba(15,23,42,.08)}.admin-user-profile main>section.grid>div{border:1px solid #e2e8f0;box-shadow:0 10px 28px rgba(15,23,42,.06);transition:transform .18s ease,box-shadow .18s ease}.admin-user-profile main>section.grid>div:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(15,23,42,.1)}.admin-user-profile .content-editor-toolbar{padding:10px;border:1px solid #d8dcef;border-radius:12px 12px 0 0;background:#f8fafc}.admin-user-profile .content-editor-toolbar button{color:#312e81;border-color:#d8dcef;background:#fff}.admin-user-profile .content-tiptap-editor{min-height:320px;padding:16px;border:1px solid #d8dcef;border-top:0;border-radius:0 0 12px 12px;background:#fff}.admin-user-profile .content-editor-prose{min-height:285px;color:#1e293b}.admin-user-profile details[open]{box-shadow:0 12px 30px rgba(79,70,229,.1)}
/* A helyes válasz utáni döntési kártya dedikált négyzetes reklámhelye. */
.game-decision-with-ad:has(>.kwizzgo-ad-slot--game_decision_square){display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.25rem;align-items:start}.game-decision-with-ad>.kwizzgo-ad-slot--game_decision_square{width:300px;height:300px;min-height:300px;max-height:300px;margin:0}.game-decision-with-ad>.kwizzgo-ad-slot--game_decision_square img{width:100%;height:100%;object-fit:contain}
@media(max-width:1050px){.game-decision-with-ad:has(>.kwizzgo-ad-slot--game_decision_square){display:block}.game-decision-with-ad>.kwizzgo-ad-slot--game_decision_square{width:min(300px,calc(100% - 1.2rem));height:auto;aspect-ratio:1/1;min-height:0;max-height:none;margin:1.5rem auto}}
/* Google reCAPTCHA az auth-kártyákon; keskeny mobilon arányosan zsugorodik. */
.auth-recaptcha{display:flex;justify-content:center;margin:0 0 1.25rem;padding:.65rem;border:1px solid transparent;border-radius:12px;overflow:hidden}.auth-recaptcha-invalid{border-color:#fb7185;background:rgba(244,63,94,.08)}.auth-recaptcha-error{margin-top:-.8rem;margin-bottom:1.1rem;text-align:center}@media(max-width:380px){.auth-recaptcha{justify-content:flex-start}.auth-recaptcha>.g-recaptcha{transform:scale(.86);transform-origin:left center;width:262px}}
/* Nyilvános kvízmegosztó: önállóan is teljes, reszponzív landing oldal. */
.public-quiz-page { margin: 0; min-height: 100vh; color: #f7f1ff; background: radial-gradient(circle at 80% 0, #4b1677 0, #18052f 45%, #0d0618 100%); font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.public-quiz-shell { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 64px 0 88px; }
.public-quiz-card { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr); overflow: hidden; border: 1px solid rgba(244,200,74,.28); border-radius: 30px; background: rgba(26,10,48,.92); box-shadow: 0 28px 80px rgba(0,0,0,.42); }
.public-quiz-cover { min-height: 520px; display: grid; place-items: center; position: relative; background: linear-gradient(145deg,#311058,#6b21a8); background-position: center; background-size: cover; }
.public-quiz-cover::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(9,3,18,.05),rgba(9,3,18,.7)); }
.public-quiz-cover > span { position: absolute; z-index: 1; top: 24px; left: 24px; padding: 8px 13px; border-radius: 999px; background: rgba(15,6,28,.78); color: #f8dc7a; font-weight: 700; }
.public-quiz-cover > strong { z-index: 1; font-size: clamp(48px,8vw,92px); letter-spacing: -5px; }.public-quiz-cover > strong span { color: #f4c84a; }
.public-quiz-copy { padding: clamp(32px,5vw,64px); align-self: center; }.public-quiz-eyebrow { margin: 0 0 10px; color: #f4c84a; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; }
.public-quiz-copy h1 { margin: 0; color: #fff; font-size: clamp(34px,5vw,58px); line-height: 1.05; }.public-quiz-description { color: #d8cce5; line-height: 1.7; font-size: 17px; }
.public-quiz-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }.public-quiz-tags span { color: #dcbcff; background: rgba(139,92,246,.16); border-radius: 999px; padding: 6px 10px; font-size: 13px; }
.public-quiz-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 28px 0; }.public-quiz-stats div { padding: 13px; border-radius: 14px; background: rgba(255,255,255,.055); }.public-quiz-stats dt { color: #a997ba; font-size: 12px; }.public-quiz-stats dd { margin: 5px 0 0; color: #fff; font-weight: 800; overflow-wrap: anywhere; }
.public-quiz-cta { display: block; padding: 15px 22px; border-radius: 13px; color: #241034; background: #f4c84a; text-align: center; text-decoration: none; font-weight: 900; }.public-quiz-cta:hover { background: #ffe083; }.public-quiz-register { color: #bcaec9; text-align: center; font-size: 14px; }.public-quiz-register a { color: #f4c84a; }
@media (max-width: 800px) { .public-quiz-shell { padding: 28px 0 56px; }.public-quiz-card { grid-template-columns: 1fr; border-radius: 22px; }.public-quiz-cover { min-height: 300px; }.public-quiz-stats { grid-template-columns: 1fr; }.public-quiz-stats div { display: flex; justify-content: space-between; align-items: center; }.public-quiz-stats dd { margin: 0; } }
@media (max-width: 480px) { .public-quiz-shell { width: min(100% - 20px,1120px); }.public-quiz-copy { padding: 28px 20px; }.public-quiz-cover { min-height: 220px; }.public-quiz-cover > span { top: 14px; left: 14px; } }

/*
 * Mobil kezdőlap: minden hero-elem maradjon a viewporton belül, a navigáció
 * pedig zárt állapotban akkor se folyjon rá a tartalomra, ha egy régi böngésző
 * az `inert` attribútumot még nem támogatja.
 */
@media (max-width: 900px) {
    .home-page {
        overflow-x: hidden;
    }

    .home-page .nav-header,
    .home-page .nav-container,
    .home-page .nav-wrapper {
        max-width: 100%;
    }

    .home-page .nav-menu-panel {
        position: fixed !important;
        inset: 0 0 0 auto !important;
        width: min(88vw, 24rem) !important;
        margin: 0 !important;
        padding: 1rem !important;
        flex-direction: column !important;
        align-items: stretch !important;
        overflow-y: auto !important;
        background: #fff !important;
        transform: translate3d(105%, 0, 0) !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .home-page .nav-header.is-menu-open .nav-menu-panel {
        transform: translate3d(0, 0, 0) !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

@media (max-width: 760px) {
    .home-page .nav-container {
        padding-inline: 1rem;
    }

    .home-page .home-hero {
        padding: 7rem 1rem 3rem;
    }

    .home-page .home-hero-inner,
    .home-page .home-hero-copy {
        width: 100%;
        min-width: 0;
    }

    .home-page .home-eyebrow {
        max-width: 100%;
        padding-inline: .85rem;
        font-size: clamp(.7rem, 3.3vw, .8rem);
        white-space: normal;
    }

    .home-page .home-hero h1 {
        max-width: 100%;
        font-size: clamp(2.35rem, 11.5vw, 3.4rem);
        line-height: 1.04;
        overflow-wrap: anywhere;
    }

    .home-page .home-hero h1 span {
        display: inline-block;
    }

    .home-page .home-lead {
        max-width: 34rem;
        font-size: .95rem;
        line-height: 1.6;
    }

    .home-page .home-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100%, 28rem);
        margin: 1.5rem auto 2.25rem;
    }

    .home-page .home-btn-primary,
    .home-page .home-btn-secondary {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        padding: .85rem 1rem;
        text-align: center;
    }

    .home-page .home-stats {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100%, 19rem);
        margin-inline: auto;
        gap: .9rem;
    }

    .home-page .home-stats > div {
        grid-template-columns: 2.8rem minmax(0, 1fr);
        text-align: left;
    }

    .home-page .home-stats small {
        white-space: normal;
    }

    .home-page .home-app-preview {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        overflow: hidden;
    }
}

@media (max-width: 380px) {
    .home-page .nav-brand {
        font-size: 1.4rem;
    }

    .home-page .home-hero h1 {
        font-size: clamp(2.05rem, 11vw, 2.65rem);
    }
}

/* A magazincikkek szerkesztő által válogatott, kapcsolódó kvízajánlója. */
.article-recommended-quizzes{width:min(1180px,calc(100% - 2rem));margin:2rem auto;padding:clamp(1.2rem,3vw,2rem);border:1px solid #2d3359;border-radius:20px;background:linear-gradient(145deg,#101633,#090d25);box-shadow:0 20px 60px rgba(0,0,0,.2)}
.article-recommended-heading>span{color:#a77cff;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.article-recommended-heading h2{margin:.4rem 0 1.2rem;color:#fff;font-size:clamp(1.35rem,3vw,2rem)}
.article-recommended-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.article-recommended-card{min-width:0;display:flex;overflow:hidden;border:1px solid #2b3358;border-radius:14px;color:#fff;background:#111831;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.article-recommended-card:hover{color:#fff;border-color:#7450ce;transform:translateY(-3px)}
.article-recommended-cover{flex:0 0 7.5rem;min-height:7.5rem;background:radial-gradient(circle at 35% 30%,#8b5cf6,#1e1b4b 48%,#080b1c);background-position:center;background-size:cover}.article-recommended-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:1rem}.article-recommended-copy small{color:#9c82dc;font-size:.62rem;font-weight:850;text-transform:uppercase}.article-recommended-copy strong{margin:.35rem 0;color:#fff;font-size:.95rem;line-height:1.3}.article-recommended-copy em{color:#8f97ae;font-size:.66rem;font-style:normal;font-weight:750}
@media(max-width:980px){.article-recommended-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.article-recommended-quizzes{width:calc(100% - 1.2rem);border-radius:15px}.article-recommended-grid{grid-template-columns:1fr}.article-recommended-cover{flex-basis:6.25rem;min-height:6.25rem}}

/* A Dashboard magazinblokkja vendégnek és bejelentkezett játékosnak azonos. */
.home-articles-section{padding:2.8rem 1.5rem;background:#f8fafc}.home-articles-heading{margin-bottom:1.35rem}.home-articles-heading>div>span{color:#7c3aed;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.home-articles-heading h2{margin:.35rem 0 0;color:#0f172a;font-size:1.7rem;letter-spacing:-.035em}.home-articles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.home-article-card{min-width:0;padding:1.35rem;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06);transition:transform .18s ease,box-shadow .18s ease}.home-article-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(15,23,42,.1)}.home-article-card>span{color:#7c3aed;font-size:.65rem;font-weight:850}.home-article-card h3{margin:.55rem 0;font-size:1.05rem;line-height:1.35}.home-article-card h3 a{color:#111827;text-decoration:none}.home-article-card p{min-height:3.8rem;margin:0 0 1rem;color:#64748b;font-size:.8rem;line-height:1.6}.home-article-card>a{color:#6d28d9;font-size:.75rem;font-weight:900;text-decoration:none}
@media(max-width:850px){.home-articles-grid{grid-template-columns:1fr 1fr}.home-article-card:last-child:nth-child(odd){grid-column:1/-1}}@media(max-width:560px){.home-articles-section{padding:2rem 1rem}.home-articles-heading{align-items:flex-end}.home-articles-grid{grid-template-columns:1fr}.home-article-card:last-child:nth-child(odd){grid-column:auto}.home-article-card p{min-height:0}}

/* Regisztrációs jogi elfogadás és globális süti-hozzájárulás. */
.auth-legal-consents{display:grid;gap:.75rem;margin:0 0 1.1rem;padding:1rem;border:1px solid #343b62;border-radius:12px;background:rgba(15,23,42,.55)}.auth-legal-consents label{display:flex;align-items:flex-start;gap:.65rem;color:#cbd5e1;font-size:.76rem;line-height:1.45}.auth-legal-consents input{flex:0 0 auto;margin-top:.18rem;accent-color:#7c3aed}.auth-legal-consents a{color:#c4b5fd;font-weight:800}.auth-google-register{box-sizing:border-box;width:100%;margin-bottom:1.1rem;border:1px solid #cbd5e1!important;color:#334155!important;background:#fff!important}.auth-divider{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;color:#94a3b8;font-size:.75rem}.auth-divider span{height:1px;flex:1;background:#334155}.auth-divider b{font-weight:600}.kwizzgo-footer-bottom button{padding:0;border:0;color:inherit;background:none;text-decoration:underline;cursor:pointer}
.cookie-consent[hidden]{display:none}.cookie-consent{position:fixed;z-index:200;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:1rem}.cookie-consent-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.68);backdrop-filter:blur(3px)}.cookie-consent-dialog{position:relative;width:min(720px,100%);padding:1.5rem;border:1px solid #3a4169;border-radius:18px;color:#e8e9f1;background:linear-gradient(145deg,#111831,#080c20);box-shadow:0 30px 90px rgba(0,0,0,.48)}.cookie-consent-eyebrow{color:#a77cff;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.cookie-consent-dialog h2{margin:.4rem 0 .65rem;color:#fff;font-size:1.45rem}.cookie-consent-dialog>p{margin:.4rem 0;color:#aab0c2;font-size:.8rem;line-height:1.55}.cookie-consent-dialog details{margin:1rem 0;padding:.8rem;border:1px solid #2c3458;border-radius:11px;background:#0d142d}.cookie-consent-dialog summary{color:#d8c9fb;font-size:.76rem;font-weight:850;cursor:pointer}.cookie-consent-dialog details label{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0 0}.cookie-consent-dialog details span{display:flex;flex-direction:column}.cookie-consent-dialog details strong{font-size:.76rem}.cookie-consent-dialog details small{margin-top:.2rem;color:#858da6;font-size:.65rem}.cookie-consent-dialog input{accent-color:#7c3aed}.cookie-consent-links a{color:#b89bff}.cookie-consent-actions{display:flex;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.cookie-consent-actions button{min-height:42px;padding:.65rem .9rem;border:1px solid #3a4268;border-radius:9px;color:#d6d9e4;background:#151c38;font-size:.72rem;font-weight:850;cursor:pointer}.cookie-consent-actions button:last-child{border-color:#7c3aed;color:#fff;background:linear-gradient(100deg,#6132d4,#913dea)}
@media(max-width:560px){.cookie-consent{padding:.55rem}.cookie-consent-dialog{max-height:calc(100vh - 1.1rem);overflow-y:auto;padding:1.1rem;border-radius:15px}.cookie-consent-actions{display:grid;grid-template-columns:1fr}.cookie-consent-actions button{width:100%}}
.points-page{min-height:100vh;margin:0;color:#f5f3ff;background:radial-gradient(circle at 80% 10%,rgba(124,58,237,.25),transparent 28rem),#03071a}.points-shell{width:min(1180px,calc(100% - 2rem));margin:auto;padding:3rem 0 5rem}.points-shell>header span{color:#a77cff;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.points-shell>header h1{margin:.4rem 0;color:#fff;font-size:clamp(2rem,5vw,3.4rem)}.points-shell>header p{color:#9299b0}.points-task-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.points-task-grid article{padding:1.4rem;border:1px solid #2c3459;border-radius:17px;background:linear-gradient(145deg,#101733,#090d25)}.points-task-grid b{display:grid;place-items:center;width:2rem;height:2rem;border-radius:9px;color:#fff;background:#713bdd}.points-task-grid h2{color:#fff}.points-task-grid p{min-height:4.5rem;color:#949bb1;line-height:1.55}.points-task-grid a{color:#c4a8ff;font-weight:900;text-decoration:none}.points-task-grid label span{display:block;margin-bottom:.4rem;color:#9299b0;font-size:.7rem}.points-task-grid label div{display:flex}.points-task-grid input{min-width:0;flex:1;padding:.75rem;border:1px solid #343d65;border-radius:9px 0 0 9px;color:#e8e5f0;background:#0b1128}.points-task-grid button{padding:.75rem;border:0;border-radius:0 9px 9px 0;color:#fff;background:#713bdd;font-weight:850;cursor:pointer}@media(max-width:850px){.points-task-grid{grid-template-columns:1fr}.points-task-grid p{min-height:0}}@media(max-width:480px){.points-shell{width:calc(100% - 1rem);padding-top:1.5rem}.points-task-grid label div{display:grid}.points-task-grid input,.points-task-grid button{width:100%;box-sizing:border-box;border-radius:9px}.points-task-grid button{margin-top:.5rem}}
.nav-admin-dropdown{position:relative}.nav-admin-dropdown>summary{list-style:none;cursor:pointer;white-space:nowrap}.nav-admin-dropdown>summary::-webkit-details-marker{display:none}.nav-admin-trigger{display:flex;align-items:center;gap:.35rem}.nav-admin-trigger span{font-size:.75rem;transition:transform .18s}.nav-admin-dropdown[open] .nav-admin-trigger span{transform:rotate(180deg)}.nav-admin-dropdown-panel{position:absolute;z-index:90;top:calc(100% + .65rem);left:0;display:grid;min-width:13rem;padding:.55rem;border:1px solid #e2e8f0;border-radius:13px;background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.18)}.nav-admin-dropdown-panel .nav-group-label{display:block;padding:.35rem .7rem .5rem}.nav-admin-dropdown-panel .nav-link-item{display:flex;width:100%;box-sizing:border-box;white-space:nowrap}.home-page .nav-admin-dropdown-panel .nav-link-item{color:#334155}.home-page .nav-admin-dropdown-panel .nav-link-item:hover{color:#111827;background:#f1f5f9}.home-page .nav-admin-dropdown-panel .nav-link-item.active{color:#4338ca;background:#eef2ff;border-radius:.65rem;box-shadow:inset 3px 0 #4f46e5}
@media(max-width:900px){.nav-admin-dropdown{width:100%}.nav-admin-dropdown>summary{display:flex!important}.nav-admin-dropdown-panel{position:static;display:none;min-width:0;margin:.25rem 0 0 .65rem;padding:.3rem;border:0;border-left:2px solid #ddd6fe;border-radius:0;background:transparent;box-shadow:none}.nav-admin-dropdown[open] .nav-admin-dropdown-panel{display:grid}.nav-admin-dropdown-panel .nav-group-label{display:block}.home-page .nav-admin-dropdown-panel .nav-link-item{display:flex!important}}
.invite-landing-page{min-height:100vh;margin:0;color:#f7f5ff;background:radial-gradient(circle at 75% 22%,rgba(126,50,225,.3),transparent 28rem),radial-gradient(circle at 10% 85%,rgba(245,158,11,.1),transparent 22rem),#03071a}.invite-landing-shell{min-height:calc(100vh - 4rem);display:grid;place-items:center;padding:3rem 1rem}.invite-landing-card{width:min(680px,100%);box-sizing:border-box;padding:clamp(1.5rem,5vw,3.5rem);text-align:center;border:1px solid #3b3569;border-radius:24px;background:linear-gradient(145deg,rgba(17,24,55,.97),rgba(7,10,29,.98));box-shadow:0 30px 90px rgba(0,0,0,.42)}.invite-landing-eyebrow{display:inline-block;padding:.4rem .75rem;border-radius:999px;color:#d8c6ff;background:rgba(124,58,237,.22);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.invite-landing-card h1{margin:1rem 0;color:#fff;font-size:clamp(2.2rem,7vw,4rem);line-height:1.05;letter-spacing:-.05em}.invite-landing-card h1 em{color:#b46cff;font-style:normal}.invite-landing-card>p{max-width:34rem;margin:0 auto;color:#a5abc0;line-height:1.7}.invite-landing-bonus{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:1.6rem 0;padding:1rem;border:1px solid rgba(245,158,11,.28);border-radius:14px;background:rgba(245,158,11,.08)}.invite-landing-bonus strong{color:#ffd45c;font-size:1.45rem}.invite-landing-bonus span{color:#d5c596;font-size:.8rem;font-weight:750}.invite-landing-cta{display:block;padding:1rem;border-radius:12px;color:#fff;background:linear-gradient(100deg,#6332d5,#963fe8);box-shadow:0 14px 36px rgba(109,40,217,.35);text-decoration:none;font-weight:950}.invite-landing-card>small{display:block;margin-top:1rem;color:#737b94;line-height:1.5}@media(max-width:480px){.invite-landing-shell{padding:.7rem}.invite-landing-card{border-radius:17px}.invite-landing-bonus{align-items:flex-start;flex-direction:column;gap:.2rem;text-align:left}}

/* Keep rich email content readable on the light hostadmin profile. */
.admin-user-profile .content-editor-prose h2,.admin-user-profile .content-editor-prose h3{color:#1e293b}.admin-user-profile .content-editor-prose a{color:#6d28d9}.admin-user-profile .content-editor-prose:focus{outline:2px solid #7c3aed;outline-offset:4px}.admin-user-profile .content-editor-prose blockquote{color:#475569}
/* Production support widget: scoped styles preserve forms and menus elsewhere. */
.support-chat{position:fixed;right:24px;bottom:24px;z-index:1000;font-family:Arial,sans-serif;color:#eef2ff;line-height:1.5}
.support-chat,.support-chat *{box-sizing:border-box}
.support-chat [hidden]{display:none!important}
.support-chat-button{display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin-left:auto;padding:0;border:2px solid #c4b5fd;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#4c1d95);color:#fff;box-shadow:0 8px 28px #2e106566;cursor:pointer;position:relative}
.support-chat-button>span{font-size:27px;line-height:1}
.support-chat-button:hover{background:#6d28d9}
.support-chat button:focus-visible,.support-chat input:focus-visible,.support-chat textarea:focus-visible{outline:3px solid #fbbf24;outline-offset:3px}
.support-chat-button i{position:absolute;right:0;top:0;min-width:14px;min-height:14px;padding:2px;border:2px solid #fff;border-radius:50%;background:#f59e0b;color:#17112c;font-size:11px;font-style:normal}
.support-chat-panel{display:flex;flex-direction:column;width:min(390px,calc(100vw - 32px));max-height:calc(100dvh - 112px);margin-bottom:14px;overflow:hidden;border:1px solid #6d4fa3;border-radius:20px;background:#17112c;box-shadow:0 16px 60px #0006}
.support-chat-panel>header{display:flex;align-items:flex-start;gap:12px;padding:18px;background:#4c1d95;color:#fff}
.support-chat-panel>header>div{flex:1;min-width:0}
.support-chat-panel>header strong{display:block;font-size:17px}
.support-chat-panel>header small{display:block;margin-top:5px;color:#e9d5ff;font-size:12px;line-height:1.5}
.support-chat-panel>header button{flex:none;width:32px;height:32px;padding:0;border:0;border-radius:8px;color:#fff;background:#ffffff20;font-size:24px;cursor:pointer}
.support-chat-messages{display:flex;flex-direction:column;gap:12px;min-height:100px;max-height:300px;overflow-y:auto;overscroll-behavior:contain;padding:16px}
.support-chat-welcome{padding:12px;color:#e9d5ff}.support-chat-welcome p{margin:8px 0 0}
.support-chat-reference{font-size:11px;color:#c4b5fd;text-align:center}
.support-chat-message{max-width:90%;padding:10px 13px;border-radius:14px;overflow-wrap:anywhere;color:#f5f3ff;background:#302349}
.support-chat-message.visitor{align-self:flex-end;background:#5b21b6}.support-chat-message.admin{align-self:flex-start}
.support-chat-message p{margin:0;white-space:pre-wrap}.support-chat-message small{display:block;margin-top:6px;color:#ddd6fe;font-size:10px}
.support-chat-panel form{flex:none;margin:0;padding:14px;border-top:1px solid #48335f}
.support-chat-identity{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.support-chat-panel input,.support-chat-panel textarea{display:block;width:100%;min-width:0;padding:10px;border:1px solid #6b5287;border-radius:9px;background:#241938;color:#fff;font:inherit;font-size:13px}
.support-chat-panel input::placeholder,.support-chat-panel textarea::placeholder{color:#c4b5d5;opacity:1}
.support-chat-panel textarea{resize:vertical;min-height:70px;max-height:140px}
.support-chat-panel form>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.support-chat-panel [data-chat-status]{color:#ddd6fe;font-size:12px;overflow-wrap:anywhere}
.support-chat-panel button[type=submit],.support-chat-closed button{flex:none;padding:10px 18px;border:0;border-radius:9px;background:#fbbf24;color:#1e1230;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.support-chat-closed{display:grid;gap:10px;padding:16px;border-top:1px solid #48335f;font-size:13px}
@media(max-width:480px){.support-chat{right:16px;bottom:16px}.support-chat-button{width:54px;height:54px}.support-chat-panel{max-height:calc(100dvh - 100px)}.support-chat-messages{max-height:35dvh}.support-chat-identity{grid-template-columns:1fr}}
