:root {
    --bg: #f8fafc;
    --surface: #ffffff;
    --text: #0f172a;
    --muted: #64748b;
    --primary: #2563eb;
    --primary-dark: #1d4ed8;
    --success: #16a34a;
    --danger: #dc2626;
    --warning: #f59e0b;
    --border-color: #e2e8f0;
    --gradient-main: linear-gradient(135deg, #2563eb, #0ea5e9);
    --radius-lg: 18px;
    --shadow: 0 18px 40px rgba(15, 23, 42, 0.1);
    --bg-primary: var(--bg);
    --bg-secondary: var(--surface);
    --bg-card: var(--surface);
    --text-primary: var(--text);
    --text-secondary: var(--muted);
    --text-muted: var(--muted);
    --color-main: var(--primary);
    --color-main-light: #3b82f6;
    --color-main-dark: var(--primary-dark);
    --color-warning-light: #fef3c7;
    --gradient-accent: linear-gradient(135deg, #f59e0b, #f97316);
    --radius-sm: 10px;
    --radius-md: 14px;
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 8px 20px rgba(15, 23, 42, 0.1);
    --shadow-lg: var(--shadow);
}

body.theme-green {
    --bg: #ecfdf5;
    --surface: #ffffff;
    --text: #064e3b;
    --muted: #047857;
    --primary: #059669;
    --primary-dark: #047857;
    --success: #16a34a;
    --warning: #f59e0b;
    --border-color: #bbf7d0;
    --gradient-main: linear-gradient(135deg, #059669, #10b981);
    --shadow: 0 18px 40px rgba(5, 150, 105, 0.14);
    --bg-primary: var(--bg);
    --bg-secondary: var(--surface);
    --bg-card: var(--surface);
    --text-primary: var(--text);
    --text-secondary: var(--muted);
    --text-muted: #4b5563;
    --color-main: var(--primary);
    --color-main-light: #10b981;
    --color-main-dark: var(--primary-dark);
    --color-warning-light: #dcfce7;
    --gradient-accent: linear-gradient(135deg, #f59e0b, #ef4444);
    --shadow-sm: 0 1px 3px rgba(5, 150, 105, 0.08);
    --shadow-md: 0 8px 20px rgba(5, 150, 105, 0.1);
    --shadow-lg: var(--shadow);
}

body.theme-kids {
    --bg: #fff7ed;
    --surface: #ffffff;
    --text: #172554;
    --muted: #475569;
    --primary: #ec4899;
    --primary-dark: #db2777;
    --success: #22c55e;
    --warning: #f59e0b;
    --danger: #ef4444;
    --border-color: #fed7aa;
    --gradient-main: linear-gradient(135deg, #ec4899, #f59e0b 52%, #22c55e);
    --shadow: 0 18px 40px rgba(236, 72, 153, 0.16);
    --bg-primary: var(--bg);
    --bg-secondary: var(--surface);
    --bg-card: var(--surface);
    --text-primary: var(--text);
    --text-secondary: var(--muted);
    --text-muted: var(--muted);
    --color-main: var(--primary);
    --color-main-light: #f472b6;
    --color-main-dark: var(--primary-dark);
    --color-warning-light: #fef3c7;
    --gradient-accent: linear-gradient(135deg, #38bdf8, #a78bfa);
    --shadow-sm: 0 1px 3px rgba(236, 72, 153, 0.08);
    --shadow-md: 0 8px 20px rgba(236, 72, 153, 0.12);
    --shadow-lg: var(--shadow);
}

body.theme-scifi {
    --bg: #070b18;
    --surface: #111827;
    --text: #e5f6ff;
    --muted: #94a3b8;
    --primary: #38bdf8;
    --primary-dark: #0ea5e9;
    --success: #22d3ee;
    --warning: #fbbf24;
    --danger: #fb7185;
    --border-color: #26364f;
    --gradient-main: linear-gradient(135deg, #38bdf8, #7c3aed 56%, #14b8a6);
    --shadow: 0 18px 46px rgba(56, 189, 248, 0.16);
    --bg-primary: var(--bg);
    --bg-secondary: var(--surface);
    --bg-card: #0f172a;
    --text-primary: var(--text);
    --text-secondary: var(--muted);
    --text-muted: var(--muted);
    --color-main: var(--primary);
    --color-main-light: #67e8f9;
    --color-main-dark: var(--primary-dark);
    --color-warning-light: rgba(251, 191, 36, 0.16);
    --gradient-accent: linear-gradient(135deg, #f43f5e, #f59e0b);
    --shadow-sm: 0 1px 3px rgba(56, 189, 248, 0.12);
    --shadow-md: 0 8px 24px rgba(56, 189, 248, 0.16);
    --shadow-lg: var(--shadow);
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: "Segoe UI", "Noto Sans", "Liberation Sans", Arial, sans-serif;
    background: var(--bg);
    color: var(--text);
}

body.theme-scifi {
    background:
        radial-gradient(circle at 18% 12%, rgba(56, 189, 248, 0.16), transparent 28%),
        radial-gradient(circle at 84% 8%, rgba(124, 58, 237, 0.18), transparent 30%),
        var(--bg);
}

body.theme-green nav,
body.theme-green .navbar,
body.theme-kids nav,
body.theme-kids .navbar,
body.theme-scifi nav,
body.theme-scifi .navbar {
    background: var(--surface);
    border-bottom-color: var(--primary);
}

nav,
.navbar {
    background: var(--surface);
    border-bottom: 1px solid var(--border-color);
}

.app-navbar {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: var(--surface);
    border-bottom: 1px solid var(--border-color);
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}

.app-nav-inner {
    max-width: 1240px;
    min-height: 68px;
    margin: 0 auto;
    padding: 0 20px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    white-space: nowrap;
}

.app-brand {
    color: var(--primary);
    font-size: 1.28rem;
    font-weight: 900;
    text-decoration: none;
    flex: 0 0 auto;
}

.app-nav-links {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
}

.app-nav-link {
    flex: 0 0 auto;
    color: var(--muted);
    text-decoration: none;
    font-weight: 700;
    padding: 9px 10px;
    border-radius: 999px;
}

.app-nav-link:hover,
.app-nav-link.active-link {
    color: #ffffff;
    background: var(--primary);
}

.app-nav-user {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.app-user-email,
.app-logout {
    border: 1px solid var(--border-color);
    border-radius: 999px;
    background: var(--surface);
    color: var(--muted);
    padding: 8px 12px;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
}

.app-logout:hover {
    color: #ffffff;
    background: #dc2626;
    border-color: #dc2626;
}

.nav-container {
    max-width: 1180px;
    margin: 0 auto;
    min-height: 68px;
    padding: 12px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.nav-brand,
.logo {
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
    font-size: 1.25rem;
}

.nav-links {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.nav-links a {
    color: var(--muted);
    text-decoration: none;
    font-weight: 600;
    padding: 8px 12px;
    border-radius: 999px;
}

.nav-links a:hover,
.nav-links .active-link {
    color: #ffffff;
    background: var(--primary);
}

.card {
    background: var(--surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow);
    padding: 24px;
}

.page-shell {
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 20px 60px;
}

.page-header {
    margin-bottom: 24px;
}

.eyebrow {
    margin: 0 0 6px;
    color: var(--muted);
    font-size: 0.9rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 22px;
    margin-bottom: 24px;
}

.stats-card {
    background: var(--gradient-main);
    color: #ffffff;
    border-radius: var(--radius-lg);
    padding: 26px;
    text-align: center;
    box-shadow: var(--shadow-md);
}

.stats-icon {
    display: block;
    font-size: 2.1rem;
    margin-bottom: 8px;
}

.hearts-display,
.stat-value {
    font-size: 2.6rem;
    font-weight: 900;
}

.quick-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.quick-action {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    background: var(--bg-primary);
    color: var(--text);
    text-align: center;
    text-decoration: none;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.quick-action:hover {
    transform: translateY(-2px);
    border-color: var(--primary);
    box-shadow: var(--shadow-md);
}

.quick-action-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: var(--gradient-main);
    color: #ffffff;
    font-size: 1.5rem;
    font-weight: 900;
}

.compact-actions {
    display: flex;
    flex-wrap: wrap;
}

.form-group {
    margin-bottom: 16px;
}

label {
    display: block;
    margin-bottom: 6px;
    font-weight: 700;
}

input,
select,
textarea {
    width: 100%;
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 11px 12px;
    font: inherit;
}

input:focus,
select:focus,
textarea:focus {
    outline: 2px solid rgba(37, 99, 235, 0.25);
    border-color: var(--primary);
}

.btn,
button[type='submit'] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 0;
    border-radius: 999px;
    background: var(--primary);
    color: #ffffff;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.btn:hover,
button[type='submit']:hover {
    background: var(--primary-dark);
}

.btn-success {
    background: var(--success);
}

.btn-warning {
    background: var(--warning);
}

.alert {
    padding: 12px 14px;
    border-radius: 12px;
    margin-bottom: 16px;
    font-weight: 700;
}

.alert-error {
    color: #7f1d1d;
    background: #fee2e2;
}

.alert-success {
    color: #14532d;
    background: #dcfce7;
}

.theme-switcher {
    position: fixed;
    right: 18px;
    bottom: 18px;
    display: flex;
    gap: 8px;
    z-index: 9999;
    padding: 6px;
    border-radius: 999px;
    background: var(--surface);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow);
}

.theme-btn {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid var(--border-color);
    cursor: pointer;
    color: #ffffff;
    font-size: 0;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.theme-btn::before {
    content: '';
    display: block;
    width: 18px;
    height: 18px;
    margin: 0 auto;
    border-radius: 50%;
    background: currentColor;
    box-shadow: inset 0 0 0 2px rgba(255,255,255,0.45);
}

.theme-btn:hover,
.theme-btn.active {
    transform: translateY(-1px) scale(1.04);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18);
}

.theme-btn-blue {
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
}

.theme-btn-green {
    background: linear-gradient(135deg, #059669, #10b981);
}

.theme-btn-kids {
    background: linear-gradient(135deg, #ec4899, #f59e0b, #22c55e);
}

.theme-btn-scifi {
    background: linear-gradient(135deg, #020617, #38bdf8, #7c3aed);
}

.platform-shell {
    max-width: 1440px;
    margin: 0 auto;
    padding: 28px 20px 70px;
}

.platform-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 22px;
}

.platform-sidebar {
    align-self: start;
    position: sticky;
    top: 92px;
}

.platform-menu {
    display: grid;
    gap: 8px;
}

.platform-menu a {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 12px;
    border-radius: 12px;
    color: var(--text);
    text-decoration: none;
    font-weight: 800;
}

.platform-menu a:hover,
.platform-menu a.active-link {
    color: #ffffff;
    background: var(--primary);
}

.platform-main {
    display: grid;
    gap: 22px;
}

.platform-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
    gap: 22px;
    align-items: stretch;
    overflow: hidden;
    min-height: 280px;
    background: var(--gradient-main);
    color: #ffffff;
}

.platform-hero h1 {
    margin: 0 0 14px;
    font-size: clamp(2rem, 4vw, 3.6rem);
    line-height: 1.05;
}

.platform-hero p {
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    line-height: 1.65;
}

.platform-map {
    position: relative;
    min-height: 230px;
    border-radius: 14px;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.17) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,0.17) 1px, transparent 1px),
        rgba(255, 255, 255, 0.14);
    background-size: 34px 34px;
}

.platform-pin {
    position: absolute;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffffff;
    color: var(--primary);
    font-weight: 900;
    box-shadow: var(--shadow-md);
}

.platform-pin:nth-child(1) { left: 18%; top: 22%; }
.platform-pin:nth-child(2) { left: 58%; top: 32%; }
.platform-pin:nth-child(3) { left: 38%; top: 66%; }
.platform-pin:nth-child(4) { right: 12%; bottom: 18%; }

.platform-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}

.platform-card {
    background: var(--surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    padding: 20px;
}

.platform-card h3 {
    margin: 0 0 8px;
}

.platform-card p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.platform-kpi {
    font-size: 2.2rem;
    font-weight: 900;
}

.platform-table-wrap {
    overflow-x: auto;
}

.platform-table {
    width: 100%;
    border-collapse: collapse;
}

.platform-table th,
.platform-table td {
    padding: 12px;
    border-bottom: 1px solid var(--border-color);
    text-align: left;
    vertical-align: top;
}

.platform-table th {
    color: var(--muted);
}

.platform-table tr:last-child td {
    border-bottom: 0;
}

.platform-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.platform-form-grid .full {
    grid-column: 1 / -1;
}

.badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border-radius: 999px;
    background: var(--bg-primary);
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.platform-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.theme-preview-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.theme-preview-card {
    min-height: 210px;
    overflow: hidden;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    background: var(--surface);
    box-shadow: var(--shadow-sm);
}

.theme-preview-art {
    min-height: 110px;
    display: grid;
    place-items: center;
    color: #ffffff;
    font-size: 2rem;
    font-weight: 900;
}

.theme-preview-body {
    padding: 16px;
}

.theme-preview-body h3 {
    margin: 0 0 6px;
}

.theme-preview-body p {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}

.theme-preview-blue .theme-preview-art {
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
}

.theme-preview-green .theme-preview-art {
    background: linear-gradient(135deg, #059669, #10b981);
}

.theme-preview-kids .theme-preview-art {
    background: linear-gradient(135deg, #ec4899, #f59e0b, #22c55e);
}

.theme-preview-scifi .theme-preview-art {
    background: radial-gradient(circle at 30% 20%, #38bdf8, transparent 28%), linear-gradient(135deg, #020617, #7c3aed);
}

.empty-state {
    padding: 18px;
    border: 1px dashed var(--border-color);
    border-radius: var(--radius-lg);
    color: var(--muted);
    background: var(--bg-primary);
}

@media (max-width: 980px) {
    .platform-layout,
    .platform-hero {
        grid-template-columns: 1fr;
    }

    .platform-sidebar {
        position: static;
    }
}

@media (max-width: 640px) {
    .app-nav-inner {
        grid-template-columns: 1fr auto;
        padding: 10px 14px;
        white-space: normal;
    }

    .app-nav-links {
        grid-column: 1 / -1;
        order: 3;
        width: 100%;
    }

    .app-user-email {
        display: none;
    }

    .nav-container {
        align-items: flex-start;
    }

    .nav-links {
        width: 100%;
    }

    .platform-shell {
        padding: 18px 12px 70px;
    }

    .platform-form-grid {
        grid-template-columns: 1fr;
    }

    .theme-switcher {
        right: 10px;
        bottom: 10px;
    }

    .theme-btn {
        width: 36px;
        height: 36px;
    }
}

/* Enigmia 3.0 unified layout */
:root {
    --ink: #102033;
    --soft: #f4f8fb;
    --white: #ffffff;
    --line: var(--border-color);
    --blue: var(--primary);
    --teal: #0f9f8d;
    --green: var(--success);
    --amber: var(--warning);
    --navy: #16324f;
    --radius: 8px;
}

body.theme-green {
    --teal: #0f9f8d;
    --navy: #064e3b;
    --soft: #ecfdf5;
}

body.theme-kids {
    --teal: #38bdf8;
    --green: #22c55e;
    --amber: #f59e0b;
    --navy: #7c2d12;
    --soft: #fff7ed;
}

body.theme-scifi {
    --teal: #22d3ee;
    --green: #14b8a6;
    --amber: #facc15;
    --navy: #0f172a;
    --soft: #0b1120;
}

.landing-page {
    background: var(--white);
}

.app-navbar {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.9);
    border-bottom: 1px solid rgba(220, 231, 239, 0.9);
    backdrop-filter: blur(16px);
}

body.theme-scifi .app-navbar {
    background: rgba(7, 11, 24, 0.92);
}

body.theme-scifi.landing-page {
    background: var(--bg);
}

.app-nav-inner {
    max-width: 1240px;
    min-height: 72px;
    padding: 0 34px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 22px;
}

.app-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--ink);
    font-weight: 950;
}

body.theme-scifi .app-brand {
    color: var(--text);
}

.brand-mark {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: var(--radius);
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue), var(--teal));
    font-size: 14px;
    font-weight: 950;
}

.app-nav-links {
    justify-content: center;
    gap: 8px;
}

.app-nav-link {
    padding: 9px 12px;
    border-radius: 999px;
    color: var(--muted);
    font-size: 14px;
    font-weight: 800;
}

.app-nav-link:hover,
.app-nav-link.active-link {
    color: var(--blue);
    background: rgba(31, 102, 209, 0.09);
}

body.theme-green .app-nav-link:hover,
body.theme-green .app-nav-link.active-link {
    color: var(--primary);
    background: rgba(5, 150, 105, 0.12);
}

body.theme-kids .app-nav-link:hover,
body.theme-kids .app-nav-link.active-link {
    color: var(--primary);
    background: rgba(236, 72, 153, 0.12);
}

body.theme-scifi .app-nav-link:hover,
body.theme-scifi .app-nav-link.active-link {
    color: #e5f6ff;
    background: rgba(56, 189, 248, 0.16);
}

.app-user-email,
.app-logout {
    border-radius: var(--radius);
}

.btn.secondary {
    color: var(--ink);
    background: var(--white);
    border: 1px solid var(--line);
    box-shadow: none;
}

body.theme-scifi .btn.secondary {
    color: var(--text);
    background: var(--surface);
}

.km-hero {
    min-height: calc(92vh - 72px);
    display: grid;
    align-items: center;
    padding: 82px 34px 56px;
    background-image:
        linear-gradient(90deg, rgba(255, 255, 255, 0.99) 0%, rgba(255, 255, 255, 0.92) 32%, rgba(255, 255, 255, 0.22) 62%, rgba(255, 255, 255, 0.02) 100%),
        url("../assets/enigmia-hero.png");
    background-size: cover;
    background-position: center right;
}

body.theme-green .km-hero {
    background-image:
        linear-gradient(90deg, rgba(236, 253, 245, 0.99) 0%, rgba(236, 253, 245, 0.9) 32%, rgba(236, 253, 245, 0.22) 62%, rgba(236, 253, 245, 0.02) 100%),
        url("../assets/enigmia-hero.png");
}

body.theme-kids .km-hero {
    background-image:
        linear-gradient(90deg, rgba(255, 247, 237, 0.99) 0%, rgba(255, 247, 237, 0.9) 32%, rgba(255, 247, 237, 0.2) 62%, rgba(255, 247, 237, 0.02) 100%),
        url("../assets/enigmia-hero.png");
}

body.theme-scifi .km-hero {
    background-image:
        linear-gradient(90deg, rgba(7, 11, 24, 0.98) 0%, rgba(7, 11, 24, 0.9) 34%, rgba(7, 11, 24, 0.35) 66%, rgba(7, 11, 24, 0.06) 100%),
        url("../assets/enigmia-hero.png");
}

.km-hero-inner,
.section,
.footer-inner {
    width: min(1180px, 100%);
    margin: 0 auto;
}

.km-hero-copy {
    max-width: 610px;
}

.eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    margin: 0 0 18px;
    padding: 7px 12px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--teal);
    font-size: 13px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0;
}

body.theme-scifi .eyebrow {
    background: rgba(15, 23, 42, 0.82);
}

.km-hero h1 {
    margin: 0;
    max-width: 580px;
    font-size: clamp(42px, 7vw, 82px);
    line-height: 0.98;
    letter-spacing: 0;
}

.lead {
    margin: 24px 0 0;
    max-width: 560px;
    color: var(--muted);
    font-size: 19px;
    line-height: 1.65;
}

.hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.hero-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    max-width: 620px;
    margin-top: 36px;
}

.stat {
    padding: 16px;
    border: 1px solid rgba(220, 231, 239, 0.9);
    border-radius: var(--radius);
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: blur(12px);
}

body.theme-scifi .stat {
    background: rgba(15, 23, 42, 0.82);
}

.stat strong {
    display: block;
    font-size: 28px;
    line-height: 1;
}

.stat span {
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 750;
}

.section {
    padding: 74px 24px;
}

.section-head {
    max-width: 720px;
    margin-bottom: 28px;
}

.section-head h2 {
    margin: 0;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.08;
}

.section-head p {
    margin: 14px 0 0;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.6;
}

.audience-grid,
.feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.card {
    border-radius: var(--radius);
}

.audience-grid .card,
.feature-grid .card {
    min-height: 220px;
    padding: 22px;
}

.card-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
    border-radius: var(--radius);
    color: #ffffff;
    background: linear-gradient(135deg, var(--teal), var(--green));
    font-weight: 950;
}

.product-band {
    background: var(--soft);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.product-preview {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 24px;
    align-items: stretch;
}

.workflow {
    display: grid;
    gap: 12px;
}

.step {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--white);
}

body.theme-scifi .step {
    background: var(--surface);
}

.step-no {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #ffffff;
    background: var(--blue);
    font-weight: 950;
}

.step h3 {
    margin: 0 0 6px;
    font-size: 17px;
}

.step p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.screen {
    overflow: hidden;
    border: 1px solid #cfdbe7;
    border-radius: var(--radius);
    background: var(--white);
    box-shadow: var(--shadow);
}

body.theme-scifi .screen {
    border-color: rgba(56, 189, 248, 0.32);
    background: #0f172a;
}

.screen-top {
    display: flex;
    gap: 7px;
    padding: 13px;
    border-bottom: 1px solid var(--line);
    background: #f8fafc;
}

body.theme-scifi .screen-top {
    background: #020617;
}

.screen-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #cbd5e1;
}

.screen-body {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    min-height: 430px;
}

.screen-side {
    padding: 16px;
    border-right: 1px solid var(--line);
    background: #fbfdff;
}

body.theme-scifi .screen-side {
    background: #0b1120;
}

.screen-link {
    height: 34px;
    margin-bottom: 8px;
    border-radius: var(--radius);
    background: #edf4ff;
}

.screen-link:nth-child(2) {
    background: var(--blue);
}

.screen-main {
    padding: 18px;
}

.screen-map,
.platform-map {
    position: relative;
    min-height: 190px;
    border-radius: var(--radius);
    background:
        linear-gradient(90deg, rgba(31, 102, 209, 0.14) 1px, transparent 1px),
        linear-gradient(rgba(31, 102, 209, 0.14) 1px, transparent 1px),
        #eef7f4;
    background-size: 30px 30px;
}

body.theme-scifi .screen-map,
body.theme-scifi .platform-map {
    background:
        linear-gradient(90deg, rgba(56, 189, 248, 0.18) 1px, transparent 1px),
        linear-gradient(rgba(56, 189, 248, 0.18) 1px, transparent 1px),
        #020617;
    background-size: 30px 30px;
}

.map-point,
.platform-pin {
    position: absolute;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #ffffff;
    background: var(--teal);
    font-size: 11px;
    font-weight: 950;
}

.map-point:nth-child(1),
.platform-pin:nth-child(1) { left: 16%; top: 24%; }
.map-point:nth-child(2),
.platform-pin:nth-child(2) { left: 54%; top: 35%; }
.map-point:nth-child(3),
.platform-pin:nth-child(3) { left: 36%; top: 68%; }
.map-point:nth-child(4),
.platform-pin:nth-child(4) { right: 12%; bottom: 18%; }

.mini-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.mini-card {
    min-height: 82px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #ffffff;
}

body.theme-scifi .mini-card {
    background: #111827;
}

.mini-card strong {
    display: block;
    font-size: 22px;
}

.mini-card span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.module-board {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.module-tile {
    min-height: 150px;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #ffffff;
}

body.theme-scifi .module-tile {
    background: var(--surface);
}

.module-tile span {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    margin-bottom: 14px;
    border-radius: var(--radius);
    color: #ffffff;
    background: var(--navy);
    font-size: 12px;
    font-weight: 950;
}

.module-tile h3 {
    margin: 0 0 8px;
    font-size: 17px;
}

.module-tile p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.mobile-section {
    display: grid;
    grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
    gap: 34px;
    align-items: center;
}

.phone {
    width: min(330px, 100%);
    margin: 0 auto;
    padding: 13px;
    border: 1px solid #cbd8e6;
    border-radius: 32px;
    background: #111827;
    box-shadow: var(--shadow);
}

.phone-screen {
    overflow: hidden;
    min-height: 610px;
    border-radius: 24px;
    background: #f7fafc;
}

.phone-map {
    min-height: 250px;
    background-image:
        linear-gradient(120deg, rgba(31, 102, 209, 0.9), rgba(15, 159, 141, 0.8)),
        url("../assets/enigmia-hero.png");
    background-size: cover;
    background-position: center right;
}

.phone-card {
    position: relative;
    margin: -42px 14px 14px;
    padding: 18px;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 12px 26px rgba(16, 32, 51, 0.16);
}

.phone-card h3 {
    margin: 0 0 8px;
    font-size: 22px;
}

.phone-card p {
    margin: 0 0 14px;
    color: var(--muted);
    line-height: 1.45;
}

.answer-box {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    color: var(--muted);
    background: #f8fafc;
    font-weight: 750;
}

.phone-actions {
    display: grid;
    gap: 10px;
    margin: 14px;
}

.phone-actions .btn {
    width: 100%;
}

.cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 34px;
    border-radius: var(--radius);
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue), var(--teal));
}

.cta h2 {
    margin: 0;
    font-size: 34px;
    line-height: 1.1;
}

.cta p {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, 0.88);
    line-height: 1.55;
}

.footer {
    padding: 28px 24px;
    border-top: 1px solid var(--line);
    background: #f8fafc;
}

body.theme-scifi .footer {
    background: #020617;
}

.footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    color: var(--muted);
    font-size: 14px;
}

.platform-shell {
    background: var(--soft);
}

.platform-sidebar,
.platform-main .card,
.platform-card,
.theme-preview-card {
    border-radius: var(--radius);
}

.platform-hero {
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.9) 43%, rgba(255, 255, 255, 0.48) 72%, rgba(255, 255, 255, 0.18) 100%),
        url("../assets/enigmia-hero.png");
    background-size: cover;
    background-position: 72% center;
    color: var(--text);
}

.platform-hero p {
    color: var(--muted);
}

body.theme-scifi .platform-hero {
    background:
        linear-gradient(90deg, rgba(7, 11, 24, 0.98) 0%, rgba(7, 11, 24, 0.82) 50%, rgba(7, 11, 24, 0.35) 100%),
        url("../assets/enigmia-hero.png");
    background-size: cover;
    background-position: 72% center;
    color: #ffffff;
}

body.theme-scifi .platform-hero p {
    color: rgba(255, 255, 255, 0.88);
}

.scenario-flow {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.scenario-task-list {
    display: grid;
    gap: 14px;
}

.scenario-task-card {
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    background: var(--surface);
    padding: 18px;
}

.scenario-task-head {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 10px;
}

.qr-code-pill {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(37, 99, 235, 0.1);
    color: var(--blue);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-weight: 900;
}

.platform-main .platform-hero {
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.96) 38%, rgba(255, 255, 255, 0.72) 62%, rgba(255, 255, 255, 0.22) 100%),
        url("../assets/enigmia-hero.png") !important;
    background-size: cover !important;
    background-position: 82% center !important;
    color: var(--text) !important;
}

.platform-main .platform-hero h1,
.platform-main .platform-hero p,
.platform-main .platform-hero .eyebrow {
    color: var(--text) !important;
}

.platform-main .platform-hero p {
    max-width: 620px;
    color: var(--muted) !important;
}

.platform-main .platform-dashboard-hero {
    background: var(--surface) !important;
    color: var(--text) !important;
}

.platform-main .platform-dashboard-hero h1 {
    color: var(--text) !important;
    text-shadow: none !important;
}

.platform-main .platform-dashboard-hero p {
    color: var(--muted) !important;
    text-shadow: none !important;
}

.platform-main .platform-dashboard-hero .eyebrow {
    color: var(--primary) !important;
    background: var(--surface) !important;
}

.platform-main .platform-dashboard-map {
    min-height: 260px;
    border: 1px solid rgba(34, 197, 94, 0.28);
    background:
        linear-gradient(90deg, rgba(31, 102, 209, 0.14) 1px, transparent 1px),
        linear-gradient(rgba(31, 102, 209, 0.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0.04)),
        url("../assets/enigmia-hero.png") !important;
    background-size: 30px 30px, 30px 30px, cover, cover !important;
    background-position: center, center, center, 58% center !important;
}

body.theme-scifi .platform-main .platform-hero {
    background:
        linear-gradient(90deg, rgba(7, 11, 24, 0.98) 0%, rgba(7, 11, 24, 0.9) 46%, rgba(7, 11, 24, 0.4) 100%),
        url("../assets/enigmia-hero.png") !important;
    color: #ffffff !important;
}

body.theme-scifi .platform-main .platform-dashboard-hero {
    background: #0b1120 !important;
}

body.theme-scifi .platform-main .platform-dashboard-hero .eyebrow {
    background: #111827 !important;
    color: #38bdf8 !important;
}

body.theme-scifi .platform-main .platform-dashboard-map {
    background:
        linear-gradient(90deg, rgba(56, 189, 248, 0.2) 1px, transparent 1px),
        linear-gradient(rgba(56, 189, 248, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(2, 6, 23, 0.22), rgba(2, 6, 23, 0.52)),
        url("../assets/enigmia-hero.png") !important;
    background-size: 30px 30px, 30px 30px, cover, cover !important;
    background-position: center, center, center, 58% center !important;
}

body.theme-scifi .platform-main .platform-hero h1,
body.theme-scifi .platform-main .platform-hero p {
    color: #ffffff !important;
}

.builder-hero {
    display: grid;
    gap: 14px;
}

.builder-tabs {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    overflow-x: auto;
    margin-top: 12px;
    border-bottom: 4px solid var(--text);
}

.builder-tabs a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid var(--border-color);
    border-bottom: 0;
    background: var(--surface);
    color: var(--text);
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.builder-tabs a:first-child {
    border-top-left-radius: var(--radius);
}

.builder-tabs a:hover {
    color: #ffffff;
    background: var(--primary);
}

.builder-board {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.builder-step,
.vertical-form-card {
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow-sm);
    padding: 20px;
}

.builder-step {
    display: grid;
    gap: 12px;
    align-content: start;
}

.builder-step h2,
.vertical-form-card h3 {
    margin: 0;
}

.builder-step p,
.vertical-form-card p {
    color: var(--muted);
    line-height: 1.55;
}

.builder-step-number {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--primary);
    color: #ffffff;
    font-weight: 950;
}

.vertical-form-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: start;
}

.vertical-form-submit {
    display: grid;
    gap: 12px;
}

@media (max-width: 1100px) {
    .builder-board,
    .vertical-form-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .builder-board,
    .vertical-form-columns {
        grid-template-columns: 1fr;
    }

    .platform-main .platform-hero {
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.92) 62%, rgba(255, 255, 255, 0.42) 100%),
            url("../assets/enigmia-hero.png") !important;
        background-position: center bottom !important;
    }
}

@media (max-width: 980px) {
    .km-hero {
        padding: 56px 20px 44px;
        background-image:
            linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.9) 48%, rgba(255, 255, 255, 0.36) 100%),
            url("../assets/enigmia-hero.png");
        background-position: center bottom;
    }

    .hero-stats,
    .audience-grid,
    .feature-grid,
    .module-board,
    .mobile-section,
    .product-preview {
        grid-template-columns: 1fr;
    }

    .screen-body {
        grid-template-columns: 1fr;
    }

    .screen-side {
        display: none;
    }

    .cta {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .app-nav-inner {
        padding: 10px 16px;
    }

    .km-hero h1 {
        font-size: 40px;
    }

    .lead {
        font-size: 17px;
    }

    .hero-stats,
    .mini-cards {
        grid-template-columns: 1fr;
    }

    .footer-inner {
        flex-direction: column;
    }
}

/* Wider, more resilient top navigation */
.app-navbar .app-nav-inner {
    width: 100%;
    max-width: none;
    padding-left: 10px;
    padding-right: 10px;
    gap: 12px;
}

.app-navbar .app-brand {
    flex: 0 0 auto;
}

.app-navbar .brand-mark {
    flex: 0 0 38px;
}

.app-navbar .app-nav-links {
    justify-content: center;
    gap: 4px;
    min-width: 0;
}

.app-navbar .app-nav-link {
    padding-left: 9px;
    padding-right: 9px;
    font-size: 13.5px;
}

.app-navbar .app-nav-user {
    min-width: 0;
}

.app-navbar .app-user-email {
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 1180px) {
    .app-navbar .app-nav-inner {
        gap: 8px;
    }

    .app-navbar .app-brand {
        font-size: 1.08rem;
    }

    .app-navbar .app-nav-link {
        padding-left: 7px;
        padding-right: 7px;
        font-size: 13px;
    }

    .app-navbar .app-user-email {
        max-width: 150px;
    }
}

@media (max-width: 900px) {
    .app-navbar .app-user-email {
        display: none;
    }

    .app-navbar .app-nav-inner {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .app-navbar .app-nav-links {
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    .app-navbar .app-brand span:last-child {
        display: none;
    }

    .app-navbar .app-nav-link {
        padding-left: 6px;
        padding-right: 6px;
        font-size: 12.5px;
    }
}

/* =========================================================
   Enigmia v2 compatibility layer — old visual system + new engine
   ========================================================= */
:root {
    --border: var(--border-color);
    --surface2: var(--bg-primary);
    --primary2: #0ea5e9;
}

/* V2 generic layout aliases */
.container{max-width:1180px;margin:0 auto;padding:30px 20px 60px}.muted{color:var(--muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid .full,.form-group.full{grid-column:1/-1}.form-grid .form-group{margin:0;display:grid;gap:7px;align-content:start}.form-grid .form-group label{margin:0}.form-grid input,.form-grid select,.form-grid textarea{background:var(--surface);color:var(--text)}
.table-wrap{overflow:auto;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--surface)}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:top}.table th{background:var(--bg-primary);color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.table tr:last-child td{border-bottom:0}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kpi{font-size:2.4rem;font-weight:950;color:var(--primary)}
.badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:rgba(37,99,235,.09);color:var(--primary);font-weight:850;font-size:12px}

/* Restore old navbar feel while keeping v2 routing */
.app-navbar{backdrop-filter:blur(14px);background:rgba(255,255,255,.94)}body.theme-scifi .app-navbar{background:rgba(7,11,24,.93)}
.app-navbar .app-nav-links{justify-content:center}.app-navbar .app-nav-link.portal-player{color:#0f766e}.app-navbar .app-nav-link.portal-school{color:#7c3aed}.app-navbar .app-nav-link.portal-player:hover,.app-navbar .app-nav-link.portal-player.active-link{background:#0f766e;color:#fff}.app-navbar .app-nav-link.portal-school:hover,.app-navbar .app-nav-link.portal-school.active-link{background:#7c3aed;color:#fff}

/* Platform: old visual composition, stable contrast */
.platform-shell{max-width:1440px;margin:auto;padding:24px;background:var(--soft)}
.platform-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px}.platform-sidebar{position:sticky;top:92px;height:max-content}.platform-menu{display:grid;gap:6px}.platform-menu a{display:block;padding:12px 14px;border-radius:var(--radius);color:var(--text);font-weight:800;text-decoration:none}.platform-menu a:hover,.platform-menu a.active,.platform-menu a.active-link{background:var(--primary);color:#fff}.platform-main{min-width:0}
.platform-hero-v2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:22px;align-items:stretch;padding:26px;background:var(--surface)!important;color:var(--text)!important}.platform-hero-v2 .platform-hero-copy{padding:12px 8px}.platform-hero-v2 h1{font-size:clamp(34px,4.5vw,58px);line-height:1.02;margin:8px 0 16px;color:var(--text)!important}.platform-hero-v2 p{max-width:680px;color:var(--muted)!important;line-height:1.65}.platform-dashboard-map{min-height:270px;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(31,102,209,.18);background:linear-gradient(90deg,rgba(31,102,209,.14) 1px,transparent 1px),linear-gradient(rgba(31,102,209,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.30),rgba(255,255,255,.08)),url('../assets/enigmia-hero.png');background-size:30px 30px,30px 30px,cover,cover;background-position:center,center,center,58% center;position:relative}.platform-dashboard-map .platform-pin{position:absolute}
.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.platform-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}

/* New builder controls, styled like the previous tabbed concept */
.builder-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:0;margin:18px 0 22px;border-bottom:4px solid var(--text);padding:0;background:transparent;border-radius:0}.builder-tabs a{display:inline-flex;align-items:center;min-height:46px;padding:10px 16px;border:1px solid var(--border-color);border-bottom:0;background:var(--surface);color:var(--text);font-weight:850;white-space:nowrap;text-decoration:none;border-radius:0}.builder-tabs a:first-child{border-top-left-radius:var(--radius)}.builder-tabs a:last-child{border-top-right-radius:var(--radius)}.builder-tabs a:hover,.builder-tabs a.active{background:var(--primary);color:#fff}.builder-panel{display:none}.builder-panel.active{display:block}.split{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:18px}.qr-preview{display:grid;place-items:center;min-height:310px;background:var(--surface);border:1px dashed var(--border-color);border-radius:var(--radius)}.qr-preview svg{max-width:280px;width:100%;height:auto}
.status-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.icon-stat{display:inline-flex;gap:6px;align-items:center;padding:7px 11px;border-radius:999px;background:var(--surface);border:1px solid var(--border-color);font-weight:850}

/* Auth — old translucent card + explicit portals */
.auth-page{min-height:calc(100vh - 72px);padding:56px 20px 84px;background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.76)),url('../assets/enigmia-hero.png') center right/cover;display:grid;align-items:start}.auth-card{width:min(920px,100%);margin:0 auto;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.auth-card h1{font-size:clamp(34px,5vw,56px);line-height:1;margin-bottom:10px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice{display:block;padding:16px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--surface);cursor:pointer}.choice:has(input:checked){border-color:var(--primary);background:rgba(37,99,235,.08)}.choice input{width:auto;margin-right:8px}
.portal-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px}.portal-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none;transition:.16s ease}.portal-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary)}.portal-card.active{outline:3px solid rgba(37,99,235,.14);border-color:var(--primary)}.portal-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:#fff;font-size:22px;font-weight:900;background:var(--gradient-main)}.portal-player .portal-icon{background:linear-gradient(135deg,#0f766e,#22c55e)}.portal-school .portal-icon{background:linear-gradient(135deg,#7c3aed,#2563eb)}.portal-card strong{display:block;font-size:17px}.portal-card small{display:block;margin-top:3px;color:var(--muted);line-height:1.35}.portal-note{padding:12px 14px;border-radius:var(--radius);background:var(--bg-primary);color:var(--muted);margin:0 0 18px}

/* Player app */
.game-shell{max-width:820px;margin:auto;padding:26px 18px 60px}.game-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.mission{padding:26px}.mission-riddle{font-size:21px;line-height:1.6}.answer-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border-color)}.qr-code-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900;letter-spacing:.08em}.progress{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--primary)}

/* Landing portal cards added to the restored old homepage */
.landing-page .access-gateway{max-width:1240px;margin:-36px auto 0;padding:0 34px;position:relative;z-index:8}.landing-page .access-gateway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.landing-page .access-gateway-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:20px 22px;border:1px solid var(--km-line);border-radius:var(--km-radius);background:rgba(255,255,255,.96);box-shadow:var(--km-shadow);color:var(--km-ink);text-decoration:none;backdrop-filter:blur(12px)}.landing-page .access-gateway-card:hover{transform:translateY(-2px);border-color:var(--km-blue)}.landing-page .access-gateway-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:var(--km-radius);color:#fff;font-size:24px;font-weight:950}.landing-page .gateway-player .access-gateway-icon{background:linear-gradient(135deg,#0f9f8d,#25a66a)}.landing-page .gateway-school .access-gateway-icon{background:linear-gradient(135deg,#7c3aed,#1f66d1)}.landing-page .access-gateway-card strong{display:block;font-size:19px}.landing-page .access-gateway-card span{display:block;margin-top:4px;color:var(--km-muted);line-height:1.45}.landing-page .access-gateway-arrow{font-size:24px;color:var(--km-blue);font-weight:950}

body.theme-scifi .auth-card,body.theme-scifi .portal-card{background:rgba(17,24,39,.95)}body.theme-scifi .auth-page{background:linear-gradient(90deg,rgba(7,11,24,.98),rgba(7,11,24,.78)),url('../assets/enigmia-hero.png') center right/cover}body.theme-scifi .platform-dashboard-map{background:linear-gradient(90deg,rgba(56,189,248,.2) 1px,transparent 1px),linear-gradient(rgba(56,189,248,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(2,6,23,.22),rgba(2,6,23,.52)),url('../assets/enigmia-hero.png');background-size:30px 30px,30px 30px,cover,cover}

@media(max-width:1000px){.platform-layout{grid-template-columns:1fr}.platform-sidebar{position:static}.platform-menu{display:flex;overflow:auto}.platform-menu a{white-space:nowrap}.platform-hero-v2{grid-template-columns:1fr}.split{grid-template-columns:1fr}}
@media(max-width:760px){.form-grid,.grid,.platform-grid,.choice-grid,.portal-switch,.landing-page .access-gateway-grid{grid-template-columns:1fr}.form-grid .full,.form-group.full{grid-column:auto}.platform-shell{padding:14px}.platform-dashboard-map{min-height:210px}.landing-page .access-gateway{margin:18px auto 0;padding:0 20px}.landing-page .access-gateway-card{grid-template-columns:auto 1fr}.landing-page .access-gateway-arrow{display:none}.game-header{align-items:flex-start;flex-direction:column}}

/* Dyskretne wejście administratora w stopce. Nie zastępuje kontroli uprawnień. */
.footer-admin-entry {
    margin-left: auto;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    color: inherit;
    opacity: .45;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    transition: opacity .2s ease, transform .2s ease;
}
.footer-admin-entry:hover,
.footer-admin-entry:focus-visible {
    opacity: 1;
    transform: translateY(-1px);
}

/* =========================================================
   Enigmia — fifth independent theme: COLOR GAME
   High-fidelity player dashboard inspired by the approved mockups.
   ========================================================= */
body.theme-game {
    --bg: #f3f6ff;
    --surface: #ffffff;
    --text: #14213d;
    --muted: #63708d;
    --primary: #3568e8;
    --primary-dark: #2448b8;
    --success: #20a65a;
    --danger: #ef476f;
    --warning: #ffaf2f;
    --border-color: #dfe7f7;
    --gradient-main: linear-gradient(135deg,#3568e8 0%,#7c4dff 52%,#f54aa8 100%);
    --shadow: 0 18px 48px rgba(61,82,151,.15);
    --bg-primary: var(--bg);
    --bg-secondary: var(--surface);
    --bg-card: var(--surface);
    --text-primary: var(--text);
    --text-secondary: var(--muted);
    --text-muted: var(--muted);
    --color-main: var(--primary);
    --color-main-light: #6d92ff;
    --color-main-dark: var(--primary-dark);
    --color-warning-light: #fff4d9;
    --gradient-accent: linear-gradient(135deg,#ffb52e,#ff6f61);
    --radius-sm: 12px;
    --radius-md: 18px;
    --radius-lg: 24px;
    --shadow-sm: 0 5px 15px rgba(61,82,151,.08);
    --shadow-md: 0 12px 28px rgba(61,82,151,.13);
    --shadow-lg: var(--shadow);
    background:
        radial-gradient(circle at 6% 18%, rgba(61,150,255,.12), transparent 24%),
        radial-gradient(circle at 94% 12%, rgba(151,92,255,.10), transparent 25%),
        linear-gradient(180deg,#f8fbff 0,#f2f5ff 55%,#eef3ff 100%);
}
body.theme-game::before,
body.theme-game::after {
    content:"";
    position:fixed;
    z-index:-1;
    pointer-events:none;
    opacity:.32;
    filter:blur(.2px);
}
body.theme-game::before {
    left:-80px;bottom:-55px;width:420px;height:300px;
    background:linear-gradient(180deg,transparent 35%,rgba(65,137,235,.16) 35% 100%);
    clip-path:polygon(0 100%,0 72%,9% 72%,9% 48%,17% 48%,17% 62%,25% 62%,25% 38%,34% 38%,34% 66%,43% 66%,43% 28%,50% 28%,50% 58%,60% 58%,60% 46%,68% 46%,68% 70%,78% 70%,78% 52%,86% 52%,86% 65%,100% 65%,100% 100%);
}
body.theme-game::after {
    right:-100px;bottom:-70px;width:470px;height:330px;
    background:linear-gradient(180deg,transparent 38%,rgba(108,91,232,.13) 38% 100%);
    clip-path:polygon(0 100%,0 67%,10% 67%,10% 48%,18% 48%,18% 72%,27% 72%,27% 32%,37% 32%,37% 64%,46% 64%,46% 43%,56% 43%,56% 73%,66% 73%,66% 39%,74% 39%,74% 64%,83% 64%,83% 49%,91% 49%,91% 69%,100% 69%,100% 100%);
}

body.theme-game .app-navbar {
    background:rgba(255,255,255,.96);
    border-bottom:1px solid #dbe5f8;
    box-shadow:0 7px 24px rgba(53,104,232,.09);
}
body.theme-game .brand-mark {
    background:linear-gradient(135deg,#1a88ff,#315ad9 48%,#ff9c21 49%,#ffb31b);
    color:#fff;
    box-shadow:0 7px 16px rgba(53,104,232,.22);
}
body.theme-game .app-brand {color:#173368}
body.theme-game .app-nav-link {border-radius:14px;color:#2b3959}
body.theme-game .app-nav-link:hover,
body.theme-game .app-nav-link.active-link {background:#edf3ff;color:#3568e8;box-shadow:inset 0 -3px 0 #3568e8}
body.theme-game .app-user-email {font-weight:800;color:#273759}
body.theme-game .app-logout {border-radius:13px;background:#f7f9ff;border:1px solid #dfe7f7}

.theme-btn-game {background:linear-gradient(135deg,#3769eb 0 24%,#a855f7 24% 49%,#22c55e 49% 72%,#ffb52e 72% 100%)}
.theme-choice-card {overflow:hidden;position:relative}
.theme-choice-swatch{height:82px;margin:-20px -20px 18px;border-radius:var(--radius) var(--radius) 12px 12px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:23px}
.swatch-blue{background:linear-gradient(135deg,#2563eb,#0ea5e9)}
.swatch-green{background:linear-gradient(135deg,#059669,#22c55e)}
.swatch-kids{background:linear-gradient(135deg,#ec4899,#f59e0b,#22c55e)}
.swatch-scifi{background:linear-gradient(135deg,#07111f,#38bdf8,#7c3aed)}
.swatch-game{background:linear-gradient(135deg,#e9f2ff,#f2eaff 48%,#eefcf4);border-bottom:1px solid #dfe7f7}
.theme-choice-game{grid-column:span 2;border:2px solid #d5e0ff;background:linear-gradient(180deg,#fff,#faf9ff)}
body.theme-game .theme-choice-game{box-shadow:0 14px 38px rgba(97,72,228,.16)}

/* Keep the existing player layout intact in the four older themes. */
.color-game-player-dashboard{display:none}
body.theme-game .classic-player-dashboard{display:none}
body.theme-game .color-game-player-dashboard{display:block}

/* Generic markup for the richer player dashboard. */
.player-dashboard-v2{display:grid;gap:18px}
.player-welcome-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:8px 4px 2px}
.player-welcome-row h1{margin:2px 0 4px;font-size:clamp(28px,4vw,44px)}
.player-event-switcher label{display:grid;gap:6px;font-weight:800}.player-event-switcher select{min-width:250px}
.player-dashboard-grid{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(390px,1.45fr) minmax(230px,.82fr);gap:18px;align-items:start}
.player-dashboard-left,.player-dashboard-center,.player-dashboard-right{display:grid;gap:16px;min-width:0}
.game-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}
.game-card-title{min-height:44px;padding:10px 15px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--border-color);font-weight:900}
.game-card-title a{margin-left:auto;text-decoration:none;font-size:13px;color:inherit}
.game-title-blue{color:#215bc7;background:linear-gradient(90deg,#eef5ff,#fbfdff)}
.game-title-green{color:#168348;background:linear-gradient(90deg,#ecfbf3,#fbfffd)}
.game-title-purple{color:#7141d8;background:linear-gradient(90deg,#f3edff,#fdfbff)}
.player-profile-body{padding:18px;display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;align-items:start}
.player-avatar-placeholder{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#b5edff,#d9d4ff);border:5px solid #eaf7ff;color:#204a8f;font-size:34px;font-weight:950;box-shadow:0 8px 22px rgba(53,104,232,.16)}
.player-profile-body h3{margin:2px 0 10px}.player-profile-body small{display:block;color:var(--primary);font-weight:800}.player-profile-body p{margin:2px 0 9px;font-size:14px;overflow-wrap:anywhere}
.team-summary{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:17px;align-items:center}.team-emblem{width:64px;height:72px;display:grid;place-items:center;background:linear-gradient(160deg,#48ce7d,#167d48);color:#fff;font-size:26px;font-weight:950;clip-path:polygon(50% 0,92% 15%,88% 72%,50% 100%,12% 72%,8% 15%);filter:drop-shadow(0 6px 8px rgba(22,125,72,.22))}.team-summary h3{margin:0 0 6px}.team-summary p{margin:0 0 8px;font-size:13px}.team-member-dots{display:flex;gap:5px;margin-bottom:8px}.team-member-dots span{width:26px;height:26px;border:1px dashed #a8b4cb;border-radius:50%;display:grid;place-items:center;color:#96a1ba;font-size:11px}.team-member-dots span.filled{background:#e8f9ee;border-style:solid;border-color:#48c97b;color:#14924d}.mini-progress{height:6px;background:#e8edf7;border-radius:99px;margin:0 17px 11px;overflow:hidden}.mini-progress span{display:block;height:100%;background:linear-gradient(90deg,#19ae5a,#69d68f);border-radius:inherit}.empty-team-state{padding:22px;text-align:center}.empty-team-state .team-emblem{margin:0 auto 12px}.empty-team-state h3{margin:5px 0}.empty-team-state p{color:var(--muted);font-size:14px}
.game-link{display:flex;align-items:center;justify-content:center;padding:11px 14px;margin:0 14px 14px;border:1px solid currentColor;border-radius:12px;color:var(--primary);font-weight:850;text-decoration:none;font-size:13px}
.game-card-progress{padding-bottom:1px}.progress-big{padding:15px 16px 8px;display:flex;align-items:baseline;gap:7px}.progress-big strong{font-size:22px}.progress-big span{color:var(--muted)}.game-card-progress .progress{margin:0 16px}.progress-caption{display:flex;justify-content:space-between;padding:7px 16px;color:var(--muted);font-size:12px}.task-progress-dots{display:flex;gap:5px;flex-wrap:wrap;padding:3px 16px 12px}.task-progress-dots span{width:28px;height:28px;display:grid;place-items:center;border:1px solid #d8e0ee;border-radius:7px;font-size:12px;font-weight:800;background:#f8faff}.task-progress-dots span.done{background:#31bc5b;color:#fff;border-color:#31bc5b}
.player-event-banner{display:flex;gap:15px;align-items:center;padding:18px 20px;background:linear-gradient(110deg,#eef6ff,#f7fbff);border-color:#bcd6ff}.event-banner-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;background:#3574e8;color:#fff;font-size:22px;font-weight:950;box-shadow:0 7px 14px rgba(53,116,232,.2)}.player-event-banner small{color:#617495;font-weight:800}.player-event-banner h2{margin:2px 0 4px;font-size:20px}.player-event-banner p{margin:0;color:var(--muted)}
.bonus-overview-card .game-card-title{background:#f8fbff}.bonus-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.bonus-stat{display:flex;gap:11px;align-items:center;padding:14px 12px;border-radius:17px;text-decoration:none;color:var(--text);border:1px solid var(--border-color);transition:.17s ease}.bonus-stat:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.bonus-icon{font-size:32px;line-height:1}.bonus-stat small{display:block;font-weight:850;margin-bottom:2px}.bonus-stat strong{font-size:24px;line-height:1}.bonus-life{background:#fff5f6;border-color:#ffc3cb}.bonus-life small{color:#c8324f}.bonus-shield{background:#f1f8ff;border-color:#a9d4ff}.bonus-shield small{color:#2563b8}.bonus-hint{background:#fff9e9;border-color:#ffd479}.bonus-hint small{color:#a15d00}.bonus-points{background:#f7f2ff;border-color:#ccb4ff}.bonus-points small{color:#6d42c3}
.player-action-card{padding:34px 24px;text-align:center;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,rgba(255,218,111,.34),transparent 32%),linear-gradient(135deg,#fffaf0,#fffdf7);border-color:#f7d893}.player-action-card.is-empty{background:linear-gradient(135deg,#f8faff,#f4f7ff);border-color:#dfe7f7}.action-lock{width:70px;height:70px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid #f0d087;box-shadow:0 9px 24px rgba(211,155,30,.14);font-size:30px;margin-bottom:8px}.player-action-card h2{margin:8px 0 6px}.player-action-card p{max-width:470px;color:var(--muted);line-height:1.55}.game-start-button{min-width:220px;padding:14px 24px!important;border-radius:15px!important;background:linear-gradient(135deg,#2d69e7,#7a51e6)!important;box-shadow:0 10px 24px rgba(62,87,221,.23)}
.ranking-widget{background:linear-gradient(180deg,#fff,#fcfaff)}.ranking-widget .game-card-title{background:linear-gradient(135deg,#754de5,#af5ff0);color:#fff;border-bottom:0}.ranking-position{padding:18px;text-align:center;background:linear-gradient(180deg,#f7f0ff,#fff)}.ranking-position small{display:block;color:#6c5a9a}.ranking-position strong{display:block;font-size:48px;line-height:1;color:#7248d8;margin:4px}.ranking-position span{font-size:12px;color:var(--muted)}.team-rank-line{text-align:center;padding:10px;border-top:1px solid #eee6ff;border-bottom:1px solid #eee6ff}.ranking-widget h4{margin:14px 16px 8px}.top-team-list{list-style:none;counter-reset:teamrank;margin:0 12px 12px;padding:0}.top-team-list li{counter-increment:teamrank;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:6px;padding:8px;border-bottom:1px solid #ebeef6;font-size:13px}.top-team-list li::before{content:counter(teamrank);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#eef2ff;color:#5363a0;font-weight:900}.top-team-list li:nth-child(1)::before{background:#ffd45c;color:#8e5d00}.top-team-list li:nth-child(2)::before{background:#e5eaf3;color:#5c6678}.top-team-list li:nth-child(3)::before{background:#f0ae78;color:#7d3f18}.ranking-empty{padding:30px 18px;text-align:center;color:var(--muted)}.ranking-empty span{font-size:42px}.quick-links-card .game-card-title{background:#eef6ff}.quick-links-card>a{display:block;padding:13px 16px;border-bottom:1px solid var(--border-color);text-decoration:none;color:var(--text);font-weight:800}.quick-links-card>a:last-child{border-bottom:0}.quick-links-card>a:hover{background:#f5f8ff;color:var(--primary)}

/* Color Game applies the same visual language outside the player panel. */
body.theme-game .card,
body.theme-game .platform-card,
body.theme-game .auth-card,
body.theme-game .portal-card {border-color:#dde6f7;box-shadow:0 10px 28px rgba(61,82,151,.09)}
body.theme-game .platform-shell{background:transparent}
body.theme-game .platform-sidebar{background:rgba(255,255,255,.94);border:1px solid #dde6f7}
body.theme-game .platform-menu a{border-radius:13px}
body.theme-game .platform-menu a:hover,
body.theme-game .platform-menu a.active-link{background:linear-gradient(135deg,#3568e8,#7b55e7);box-shadow:0 8px 18px rgba(73,83,222,.16)}
body.theme-game .platform-card{background:linear-gradient(180deg,#fff,#fbfcff)}
body.theme-game button,
body.theme-game .btn{border-radius:14px}
body.theme-game input,
body.theme-game select,
body.theme-game textarea{border-radius:13px;border-color:#d8e2f5;background:#fbfcff}
body.theme-game input:focus,
body.theme-game select:focus,
body.theme-game textarea:focus{outline:3px solid rgba(53,104,232,.12);border-color:#6d92ff}
body.theme-game .table-wrap{border-radius:18px;box-shadow:0 8px 22px rgba(61,82,151,.07)}
body.theme-game .table th{background:#f2f6ff;color:#53617f}
body.theme-game .theme-switcher{background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(61,82,151,.16)}
body.theme-game .game-shell{max-width:1380px;padding:24px 22px 70px}

@media(max-width:1180px){
    .player-dashboard-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr)}
    .player-dashboard-right{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
    .bonus-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
    .player-welcome-row{align-items:flex-start;flex-direction:column}.player-event-switcher,.player-event-switcher select{width:100%}
    .player-dashboard-grid{grid-template-columns:1fr}.player-dashboard-right{grid-column:auto;grid-template-columns:1fr}.bonus-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-choice-game{grid-column:auto}
}
@media(max-width:520px){
    .bonus-stat-grid{grid-template-columns:1fr 1fr;gap:8px;padding:10px}.bonus-stat{padding:11px 9px}.bonus-icon{font-size:25px}.bonus-stat strong{font-size:20px}
    .player-profile-body{grid-template-columns:64px 1fr}.player-avatar-placeholder{width:64px;height:64px;font-size:26px}.player-action-card{padding:26px 16px;min-height:270px}.team-member-dots span{width:23px;height:23px}
}

/* ========================================================================
   COLOR GAME v3 — high-fidelity player layout based on the approved mockup
   ======================================================================== */
.game-player-navbar{display:none}
body.theme-game .app-navbar-player{display:none}
body.theme-game .game-player-navbar{display:block;position:sticky;top:0;z-index:1200;background:rgba(255,255,255,.97);border-bottom:1px solid #d9e4f3;box-shadow:0 4px 18px rgba(44,72,122,.08);backdrop-filter:blur(14px)}
.game-player-nav-inner{max-width:1500px;margin:auto;min-height:86px;padding:0 24px;display:grid;grid-template-columns:300px minmax(0,1fr) 265px;align-items:stretch;gap:10px}
.game-logo{position:relative;display:flex;align-items:center;text-decoration:none;font-weight:1000;font-size:34px;line-height:1;letter-spacing:-2px;padding-right:25px;color:#173466}.game-logo-code{color:#1e78db;text-shadow:0 2px 0 #0d3f78}.game-logo-city{color:#f39a14;text-shadow:0 2px 0 #9c5b00}.game-logo i{position:absolute;right:22px;bottom:17px;width:120px;height:20px;background:linear-gradient(90deg,transparent,#a7ddf7,#65bdf0,#7ed18c,transparent);clip-path:polygon(0 100%,15% 45%,26% 70%,34% 20%,43% 62%,52% 4%,61% 58%,72% 30%,80% 72%,91% 40%,100% 100%);opacity:.65}
.game-player-nav-links{display:flex;align-items:stretch;justify-content:center}.game-player-nav-links a{min-width:92px;padding:13px 12px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-left:1px solid transparent;border-right:1px solid transparent;text-decoration:none;color:#283653;font-size:13px;font-weight:800;transition:.16s}.game-player-nav-links a span{font-size:25px;line-height:1;color:#415175;font-family:Arial,sans-serif}.game-player-nav-links a:hover,.game-player-nav-links a.active-link{background:#f5f8ff;color:#1e66da;border-color:#edf1f8;box-shadow:inset 0 -4px 0 #2c73e8}.game-player-nav-links a.active-link span{color:#246de0}.game-player-nav-links a b{font-weight:850}
.game-player-user{display:flex;align-items:center;justify-content:flex-end;gap:8px}.game-user-main{display:grid;grid-template-columns:54px 1fr;gap:12px;align-items:center;text-decoration:none;color:#1c2943;min-width:200px}.game-user-main>span:last-child{min-width:0}.game-user-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-user-main small{display:block;margin-top:4px;color:#324468;font-weight:750}.game-user-avatar{width:54px;height:54px;border-radius:50%;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#a8ebf7,#b3c9ff);border:3px solid #e6f4ff;color:#1d4e93;font-weight:950;font-size:23px;box-shadow:0 5px 15px rgba(42,94,170,.18)}.game-user-avatar i{position:absolute;right:-4px;bottom:-5px;min-width:23px;height:23px;padding:0 4px;border-radius:8px;background:#2967d8;color:#fff;border:2px solid #fff;display:grid;place-items:center;font-style:normal;font-size:10px}.game-user-logout{color:#324468;text-decoration:none;font-size:24px;padding:8px}
body.theme-game{background:#f5f9ff;--cg-blue:#1677ed;--cg-green:#25af56;--cg-purple:#7c42dc;--cg-orange:#f1a51c;--cg-text:#1c2946;--cg-muted:#667490;--cg-border:#dce6f4;--cg-card:#fff}
body.theme-game::before{content:"";position:fixed;inset:86px 0 0;pointer-events:none;z-index:-2;background:linear-gradient(90deg,rgba(224,245,255,.74),rgba(255,255,255,.92) 18%,rgba(255,255,255,.95) 82%,rgba(222,244,255,.74)),url('../assets/enigmia-hero.png') center/cover no-repeat;opacity:.48}
body.theme-game::after{content:"";position:fixed;left:0;right:0;bottom:0;height:190px;pointer-events:none;z-index:-1;background:linear-gradient(180deg,transparent,rgba(200,232,255,.32))}
body.theme-game .game-shell{max-width:1500px;padding:24px 28px 56px;margin:auto;background:transparent}
.color-game-player-dashboard{display:none}body.theme-game .color-game-player-dashboard{display:block}body.theme-game .classic-player-dashboard{display:none}
.cg-dashboard{color:var(--cg-text)}
.cg-page-head{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(520px,1.28fr);gap:24px;align-items:center;margin:4px 0 16px}.cg-page-head h1{font-size:42px;line-height:1;margin:0 0 7px;color:#1b2944}.cg-page-head p{margin:0;color:#60708c}.cg-team-rule{min-height:86px;position:relative;overflow:hidden;display:flex;align-items:center;gap:16px;padding:18px 105px 18px 22px;border:1px solid #acd0ff;border-radius:19px;background:linear-gradient(100deg,#f4f9ff,#e9f5ff);box-shadow:0 8px 22px rgba(46,104,180,.07);font-size:15px;line-height:1.45}.cg-info-circle{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(#458aec,#185ecf);color:#fff;font-size:22px;font-weight:950;box-shadow:0 5px 12px rgba(29,99,209,.2)}.cg-robot{position:absolute;right:17px;bottom:-7px;font-size:72px;filter:drop-shadow(0 7px 9px rgba(34,76,130,.17))}
.cg-event-switcher{display:flex;justify-content:flex-end;margin:-4px 0 12px}.cg-event-switcher label{font-size:12px;color:#64728c;font-weight:800}.cg-event-switcher select{width:auto;margin-left:8px;padding:7px 30px 7px 10px;border-radius:10px}
.cg-main-grid{display:grid;grid-template-columns:minmax(270px,.82fr) minmax(510px,1.5fr) minmax(285px,.9fr);gap:16px;align-items:start}.cg-left-col,.cg-center-col,.cg-right-col{display:grid;gap:14px;min-width:0}.cg-card{background:rgba(255,255,255,.98);border:1px solid var(--cg-border);border-radius:18px;box-shadow:0 9px 26px rgba(43,72,125,.09);overflow:hidden}.cg-card-head{min-height:42px;padding:10px 15px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #e6edf7;font-weight:900}.cg-card-head>a{margin-left:auto;color:inherit;text-decoration:none}.cg-blue{background:linear-gradient(90deg,#197dea,#3595f1);color:#fff}.cg-green{background:linear-gradient(90deg,#25a94e,#44c768);color:#fff}.cg-purple{background:linear-gradient(90deg,#8d45df,#a45ce7);color:#fff}.cg-card-head.cg-ranking-head{background:linear-gradient(135deg,#7547dc,#a351eb);color:#fff;border:0}.cg-green-text{color:#24a654}
.cg-profile-content{display:grid;grid-template-columns:102px minmax(0,1fr);gap:16px;padding:18px;align-items:center}.cg-avatar{position:relative;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#aeeaf8,#bed0ff);border:6px solid #eaf8ff;color:#194f95;font-size:39px;font-weight:950;box-shadow:0 7px 20px rgba(40,96,171,.16)}.cg-avatar b{position:absolute;right:-2px;bottom:-7px;min-width:31px;height:31px;padding:0 5px;border-radius:10px;background:#2768d9;border:3px solid #fff;color:#fff;font-size:12px;display:grid;place-items:center}.cg-profile-content h3{margin:0 0 9px;font-size:19px}.cg-profile-content label{display:block;color:#1d67ce;font-size:11px;font-weight:900}.cg-profile-content p{margin:1px 0 7px;font-size:13px;overflow-wrap:anywhere}
.cg-team-content{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:16px;align-items:center}.cg-shield-logo{width:70px;height:80px;display:grid;place-items:center;background:linear-gradient(160deg,#54cf7a,#157f46);border:4px solid #c5f0d2;color:#fff;font-size:29px;font-weight:950;clip-path:polygon(50% 0,94% 17%,87% 74%,50% 100%,13% 74%,6% 17%);filter:drop-shadow(0 6px 8px rgba(25,122,72,.21))}.cg-team-content h3{margin:0 0 4px;font-size:20px}.cg-team-content p{margin:0 0 8px;font-size:13px}.cg-team-content small{display:block;color:#687692;margin-bottom:7px}.cg-member-bubbles{display:flex;gap:5px;margin:0 0 7px}.cg-member-bubbles span{width:28px;height:28px;border:1px dashed #aeb9cc;border-radius:50%;display:grid;place-items:center;color:#8d9ab1;background:#fff;font-size:11px;font-weight:900}.cg-member-bubbles .is-member{background:linear-gradient(145deg,#fde8d7,#ddedff);border-style:solid;border-color:#c5d7ed;color:#395271}.cg-mini-progress{height:6px;background:#e7ecf4;border-radius:50px;margin-top:6px;overflow:hidden}.cg-mini-progress i{height:100%;display:block;background:linear-gradient(90deg,#25b64e,#6bd68a);border-radius:inherit}.cg-empty-team{text-align:center;padding:20px}.cg-empty-team .cg-shield-logo{margin:auto}.cg-empty-team h3{margin:9px 0 5px}.cg-empty-team p{font-size:13px;color:var(--cg-muted)}
.cg-outline-link{display:flex;align-items:center;justify-content:center;margin:0 12px 12px;padding:9px 12px;border:1.5px solid #7245db;border-radius:10px;color:#6a39ce;text-decoration:none;font-size:12px;font-weight:900;background:#fff}.cg-outline-link:hover{background:#f7f1ff}
.cg-progress-card{padding-bottom:1px}.cg-progress-title{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 7px;font-size:16px}.cg-progress-title span{font-size:12px;color:#62718e;font-weight:800}.cg-progress-bar{height:9px;background:#e5e8ef;border-radius:30px;margin:0 16px 10px;overflow:hidden}.cg-progress-bar i{display:block;height:100%;background:linear-gradient(90deg,#713ce0,#9e5ee8);border-radius:inherit}.cg-progress-card>small{display:block;margin:0 16px 7px;color:#687692}.cg-task-dots{display:flex;gap:5px;padding:0 16px 12px}.cg-task-dots span{width:30px;height:30px;border:1px solid #d5ddea;border-radius:7px;background:#f8faff;display:grid;place-items:center;font-size:12px;font-weight:900}.cg-task-dots span.done{color:#fff;border-color:#35b951;background:linear-gradient(#48d367,#27ad45)}
.cg-bonus-card .cg-card-head{background:#f8fbff}.cg-bonus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:15px}.cg-bonus{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;padding:14px 12px;border-radius:16px;border:1px solid;text-decoration:none;color:#1d2945}.cg-bonus>span{font-size:38px;line-height:1;text-align:center}.cg-bonus small{display:block;font-size:13px;font-weight:900;margin-bottom:3px}.cg-bonus strong{font-size:25px;line-height:1}.cg-life{background:#fff5f6;border-color:#ffb8c1}.cg-life small{color:#c72e43}.cg-shield{background:#f2f8ff;border-color:#9dccff}.cg-shield small{color:#155eb2}.cg-hint{background:#fff9e7;border-color:#ffd170}.cg-hint small{color:#9c5d00}.cg-points{background:#f8f1ff;border-color:#c9abff}.cg-points small{color:#6339bd}
.cg-action-card{min-height:485px;text-align:center;padding:28px 18px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 25%,rgba(255,224,117,.38),transparent 30%),linear-gradient(140deg,#fffaf0,#fffdf7);border-color:#f4d991}.cg-action-card.is-ready{background:radial-gradient(circle at 50% 25%,rgba(115,226,157,.25),transparent 30%),linear-gradient(140deg,#f6fff9,#fbfffc);border-color:#bce9ca}.cg-lock{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #edd29a;font-size:28px;box-shadow:0 7px 19px rgba(194,142,28,.12)}.cg-ready-icon{border-color:#a7e2bb}.cg-action-card h2{margin:12px 0 4px;font-size:25px}.cg-action-card>p{max-width:510px;margin:0 0 18px;color:#675c4d;line-height:1.45}.cg-action-options{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr);align-items:stretch;margin-top:3px}.cg-option{border:1.5px solid;border-radius:15px;padding:19px 15px 15px;background:#fff;display:flex;flex-direction:column;align-items:center}.cg-option>div:first-child{font-size:38px}.cg-option h3{margin:7px 0 5px;font-size:19px}.cg-option p{margin:0 0 15px;min-height:50px;font-size:13px;color:#596781;line-height:1.4}.cg-option-blue{border-color:#9ac7ff;background:linear-gradient(#fbfdff,#f4f9ff)}.cg-option-blue h3{color:#165cc2}.cg-option-green{border-color:#a7ddb7;background:linear-gradient(#fbfffc,#f2fcf5)}.cg-option-green h3{color:#1b843f}.cg-option.is-disabled{opacity:.72}.cg-or{align-self:center;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d8dfeb;margin:0 -1px;z-index:2;font-weight:800;color:#655f56}.cg-big-button,.cg-start-game{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 19px;border:0;border-radius:12px;text-decoration:none;color:#fff;font-weight:900;cursor:pointer}.cg-big-button.blue{background:linear-gradient(135deg,#1478ee,#145bc8);box-shadow:0 8px 17px rgba(28,104,211,.2)}.cg-big-button.green{background:linear-gradient(135deg,#27b353,#138f3b);box-shadow:0 8px 17px rgba(30,151,71,.18)}.cg-big-button.disabled{background:#cdd4df;color:#768195;box-shadow:none}.cg-start-game{min-width:250px;font-size:17px;background:linear-gradient(135deg,#2871ec,#784bdd);box-shadow:0 11px 25px rgba(61,82,206,.24)}
.cg-ranking-card{background:linear-gradient(#fff,#fdfbff)}.cg-rank-position{text-align:center;padding:20px 14px 15px;background:linear-gradient(#faf5ff,#fff)}.cg-rank-position small{display:block;color:#6a5a93;font-weight:800}.cg-rank-position strong{display:block;margin:3px 0;font-size:51px;line-height:1;color:#7141d3}.cg-rank-position span{font-size:12px;color:#756a8e}.cg-rank-empty strong{color:#b7afc9}.cg-ranking-card h4{margin:13px 14px 7px}.cg-ranking-list{list-style:none;counter-reset:cgr;margin:0 10px 12px;padding:0}.cg-ranking-list li{counter-increment:cgr;display:grid;grid-template-columns:29px 1fr auto;gap:6px;align-items:center;padding:8px 5px;border-bottom:1px solid #ebedf4;font-size:12px}.cg-ranking-list li:before{content:counter(cgr);width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#edf1f8;color:#57657c;font-weight:900}.cg-ranking-list li:nth-child(1):before{background:#ffd052;color:#8a5700}.cg-ranking-list li:nth-child(2):before{background:#e4e9f2}.cg-ranking-list li:nth-child(3):before{background:#efad79;color:#753a17}.cg-ranking-list.placeholder{opacity:.55}
.cg-tip{display:grid;grid-template-columns:42px auto 1fr auto;gap:9px;align-items:center;margin-top:13px;padding:10px 16px;border:1px solid #c0d9f6;border-radius:14px;background:linear-gradient(90deg,#edf7ff,#f8fcff);font-size:13px}.cg-tip>span{font-size:28px}.cg-tip strong{color:#244d93}.cg-tip p{margin:0;color:#51627e}.cg-tip a{padding:8px 12px;border:1px solid #72a6e6;border-radius:9px;text-decoration:none;color:#235caa;font-weight:850;background:#fff}

/* Team builder — same Color Game visual language */
.team-builder-page{max-width:1280px;margin:auto;color:var(--cg-text)}.team-builder-top{display:flex;gap:18px;align-items:center;margin-bottom:16px}.team-builder-top h1{margin:2px 0}.team-back-link{text-decoration:none;color:#2d67cf;font-weight:850}.team-create-card{padding-bottom:20px}.team-create-form{padding:20px}.team-create-fields{display:grid;grid-template-columns:1fr 210px;gap:16px}.team-invite-info{margin:17px 0;padding:15px;border:1px solid #c9b9ff;border-radius:14px;background:#f8f4ff;color:#4b4b70;line-height:1.45}.invite-rows{display:grid;gap:9px;margin-bottom:14px}.invite-row{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(220px,1.25fr) 38px;gap:9px}.invite-row input{margin:0}.invite-remove{width:38px;height:38px;padding:0;background:#eef2f8!important;color:#6b768b!important;border:1px solid #dce3ed!important}.join-code-form{max-width:520px;margin:18px auto 0;padding:0 20px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.team-or{text-align:center;position:relative;margin:5px 0}.team-or:before{content:"";position:absolute;left:20%;right:20%;top:50%;border-top:1px solid #e2e6ee}.team-or span{position:relative;background:#fff;padding:0 12px;color:#768198;font-weight:800}.team-builder-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:17px}.team-builder-grid>main,.team-builder-grid>aside{display:grid;gap:15px;align-content:start}.team-overview-body{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:20px;align-items:center}.team-emblem-large{width:88px;height:100px}.team-ready-pill{margin-left:auto;padding:5px 9px;border-radius:999px;font-size:11px}.team-ready-pill.ready{background:rgba(255,255,255,.24)}.team-ready-pill.forming{background:rgba(255,255,255,.18)}.team-member-list{display:grid}.team-member-row{display:grid;grid-template-columns:43px 1fr auto;gap:11px;align-items:center;padding:11px 15px;border-bottom:1px solid #edf1f7}.team-member-row:last-child{border-bottom:0}.member-avatar{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ffd9cb,#d8e9ff);font-weight:900;color:#445476}.team-member-row small{display:block;color:#748096}.member-role{font-size:11px;padding:5px 8px;border-radius:999px;background:#edf7ff;color:#2c68c6;font-weight:850}.team-ready-card{text-align:center;padding:25px 20px;background:linear-gradient(#fffaf2,#fffdf8);border-color:#f4d899}.team-ready-card.is-ready{background:linear-gradient(#f6fff8,#fbfffc);border-color:#b7e5c5}.ready-icon{width:65px;height:65px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #e7cf9d;font-size:29px}.team-ready-card h2{margin:10px 0 6px}.team-ready-card p{color:#68738a;line-height:1.45}.team-ready-button{width:100%;background:linear-gradient(135deg,#27b353,#138f3b)!important}.team-settings-card{padding-bottom:15px}.team-settings-card form{padding:15px}.credentials-once-card{margin-bottom:15px;border-color:#f2cf83}.game-title-orange{background:linear-gradient(90deg,#fff5db,#fffaf0);color:#9c6500}.invite-badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:850}.invite-pending{background:#fff1cd;color:#8f6500}.invite-accepted,.invite-sent{background:#e7f8ed;color:#167540}.invite-declined,.invite-cancelled,.invite-failed{background:#ffe8e9;color:#a92d3b}.invite-expired{background:#eef1f5;color:#687180}

/* Invitation acceptance */
.invite-accept-page{min-height:calc(100vh - 86px);display:grid;place-items:center;padding:40px 20px;background:linear-gradient(135deg,#edf6ff,#faf7ff)}.invite-accept-card{width:min(700px,100%);padding:32px;text-align:center}.invite-big-icon{font-size:60px}.invite-accept-card h1{font-size:34px;margin:8px 0 10px}.invite-accept-card h1 span{color:#6e42d0}.invite-account-summary{max-width:460px;margin:20px auto;padding:15px 18px;border:1px solid #dce5f3;border-radius:15px;background:#f8fbff;display:flex;gap:13px;align-items:center;text-align:left}.invite-account-summary>span{font-size:32px}.invite-account-summary small,.invite-account-summary span{display:block;color:#758198}.invite-account-summary strong{display:block}.invite-question{margin:20px auto;max-width:520px;padding:17px;border-radius:14px;background:#fff8e9;border:1px solid #f1d89e}.invite-question strong,.invite-question span{display:block}.invite-question span{margin-top:4px;color:#766b58}.invite-actions{display:flex;gap:10px;justify-content:center}.invite-actions form{margin:0}

@media(max-width:1250px){.game-player-nav-inner{grid-template-columns:230px minmax(0,1fr) 220px}.game-logo{font-size:28px}.game-player-nav-links a{min-width:75px}.cg-main-grid{grid-template-columns:270px minmax(0,1fr)}.cg-right-col{grid-column:1/-1}.cg-ranking-card{display:grid;grid-template-columns:220px 1fr;align-items:start}.cg-ranking-card .cg-card-head{grid-column:1/-1}.cg-ranking-card .cg-outline-link{grid-column:1/-1}.cg-ranking-list{margin-top:15px}}
@media(max-width:980px){body.theme-game .game-player-navbar{position:relative}.game-player-nav-inner{grid-template-columns:1fr auto;min-height:72px}.game-player-nav-links{grid-column:1/-1;order:3;overflow-x:auto;border-top:1px solid #edf1f7}.game-player-nav-links a{min-width:88px}.game-logo{padding:16px 0}.game-logo i{display:none}.cg-page-head{grid-template-columns:1fr}.cg-main-grid{grid-template-columns:1fr}.cg-left-col{grid-template-columns:repeat(2,minmax(0,1fr))}.cg-progress-card{grid-column:1/-1}.cg-right-col{grid-column:auto}.cg-ranking-card{display:block}.team-builder-grid{grid-template-columns:1fr}.cg-bonus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){body.theme-game .game-shell{padding:14px 10px 40px}.game-player-nav-inner{padding:0 12px}.game-player-user{max-width:190px}.game-user-main{min-width:0;grid-template-columns:45px 1fr}.game-user-avatar{width:45px;height:45px}.cg-page-head h1{font-size:34px}.cg-team-rule{padding-right:18px}.cg-robot{display:none}.cg-left-col{grid-template-columns:1fr}.cg-bonus-grid{grid-template-columns:1fr 1fr;gap:8px;padding:10px}.cg-bonus{grid-template-columns:37px 1fr;padding:11px 8px}.cg-bonus>span{font-size:28px}.cg-bonus strong{font-size:20px}.cg-action-options{grid-template-columns:1fr}.cg-or{margin:-1px auto}.cg-tip{grid-template-columns:35px 1fr}.cg-tip p{grid-column:2}.cg-tip a{grid-column:1/-1;text-align:center}.team-create-fields{grid-template-columns:1fr}.invite-row{grid-template-columns:1fr}.invite-remove{width:100%}.join-code-form{grid-template-columns:1fr}.invite-actions{flex-direction:column}.invite-actions button{width:100%}}
.team-ready-check{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;margin:16px 0;padding:13px;text-align:left;border:1px solid #b8d4f8;border-radius:13px;background:#f2f8ff;cursor:pointer}.team-ready-check input{width:22px;height:22px;margin:0;accent-color:#246ddd}.team-ready-check strong,.team-ready-check small{display:block}.team-ready-check small{margin-top:3px;color:#6f7c91}

/* ========================================================================
   PLAYER SKINS v4 — four additional skins on the Color Game player layout
   ======================================================================== */
.theme-btn-city{background:linear-gradient(135deg,#021a34 0 48%,#12c8c4 48% 72%,#ff971e 72%)}
.theme-btn-heritage{background:linear-gradient(135deg,#f5eddd 0 48%,#0b4839 48% 74%,#b98b35 74%)}
.theme-btn-neon{background:linear-gradient(135deg,#020916 0 45%,#00e5ff 45% 60%,#ff2aa8 60% 78%,#c6ff00 78%)}
.theme-btn-pastel{background:linear-gradient(135deg,#f7f7ff 0 42%,#7c4df2 42% 62%,#63b6ff 62% 80%,#69d89a 80%)}
.swatch-city{background:linear-gradient(145deg,#031b35,#062949);color:#19d5d0;border-color:#14506d}.swatch-city span:last-child{color:#ff9b22}
.swatch-heritage{background:#f7f0e2;color:#0d4a3b;border-color:#d0ad6a}.swatch-heritage span:last-child{color:#ad7d2b}
.swatch-neon{background:#030917;color:#00e9ff;border-color:#1d5671;box-shadow:inset 0 0 28px rgba(0,230,255,.15)}.swatch-neon span:nth-child(2){color:#ff32ac}.swatch-neon span:last-child{color:#c9ff18}
.swatch-pastel{background:linear-gradient(135deg,#f8f6ff,#eef7ff);color:#7147e7;border-color:#cabaff}.swatch-pastel span:nth-child(2){color:#3191ee}.swatch-pastel span:last-child{color:#30ae62}

/* All new player skins use the same game layout and logic. */
body.theme-city .classic-player-dashboard,
body.theme-heritage .classic-player-dashboard,
body.theme-neon .classic-player-dashboard,
body.theme-pastel .classic-player-dashboard{display:none}
body.theme-city .color-game-player-dashboard,
body.theme-heritage .color-game-player-dashboard,
body.theme-neon .color-game-player-dashboard,
body.theme-pastel .color-game-player-dashboard{display:block}
body.theme-city .app-navbar-player,
body.theme-heritage .app-navbar-player,
body.theme-neon .app-navbar-player,
body.theme-pastel .app-navbar-player{display:none}
body.theme-city .game-player-navbar,
body.theme-heritage .game-player-navbar,
body.theme-neon .game-player-navbar{display:block;position:sticky;top:0;z-index:1200}
.pastel-player-sidebar,.pastel-player-topbar{display:none}

.cg-bonus-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))}
.cg-time{background:#fff5fe;border-color:#dfb1ef}.cg-time small{color:#8b42a6}
.cg-multiplier{background:#fff9e9;border-color:#f2c758}.cg-multiplier small{color:#9d6500}
.cg-special-link{margin-left:auto!important;padding:6px 10px;border:1px solid currentColor;border-radius:999px;font-size:11px;text-decoration:none!important;white-space:nowrap}
.special-task-page{max-width:1180px;margin:auto}.special-hero{background:linear-gradient(135deg,#f7f4ff,#eff9ff)}.special-empty{text-align:center;padding:50px 25px}.special-empty>div{font-size:58px}.special-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.special-task-card{position:relative;padding:22px}.special-task-badge{position:absolute;right:18px;top:18px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#efe8ff;color:#6b3ad3;font-size:20px;font-weight:900}.special-riddle{margin:13px 0;padding:14px;border-left:4px solid #7b50e4;background:#f8f5ff}.special-body{font-size:16px;line-height:1.6}.special-task-card.is-done{border-color:#9ed7ae;background:#f8fff9}

/* ------------------------------------------------------------------------
   1. CITY ADVENTURE — navy / teal / orange
   ------------------------------------------------------------------------ */
body.theme-city{background:#03162a;--cg-text:#f5fbff;--cg-muted:#9cb2c9;--cg-border:#214761;--cg-card:#08223b;color:#eef8ff}
body.theme-city::before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 50% 12%,rgba(7,103,139,.25),transparent 35%),linear-gradient(180deg,#021326,#04192d 60%,#031427)}
body.theme-city::after{content:"";position:fixed;left:0;right:0;bottom:0;height:35vh;z-index:-2;pointer-events:none;background:linear-gradient(180deg,transparent,#031427 80%),url('../assets/enigmia-hero.png') center bottom/cover no-repeat;opacity:.13}
body.theme-city .game-player-navbar{background:rgba(2,20,38,.96);border-bottom:1px solid #18435b;box-shadow:0 7px 24px rgba(0,0,0,.28);backdrop-filter:blur(14px)}
body.theme-city .game-logo-code{color:#eaf9ff;text-shadow:none}body.theme-city .game-logo-city{color:#20d3cf;text-shadow:none}body.theme-city .game-logo i{background:linear-gradient(90deg,transparent,#16dad3,#ff9a1f,transparent)}
body.theme-city .game-player-nav-links a,body.theme-city .game-user-main,body.theme-city .game-user-logout{color:#c9dcec}body.theme-city .game-player-nav-links a span{color:#75a5c5}body.theme-city .game-player-nav-links a:hover,body.theme-city .game-player-nav-links a.active-link{background:#062842;color:#24d6d1;border-color:#123a52;box-shadow:inset 0 -4px 0 #12c8c4}body.theme-city .game-player-nav-links a.active-link span{color:#21d5d1}body.theme-city .game-user-main small{color:#f6b24b}body.theme-city .game-user-avatar{background:linear-gradient(145deg,#19cfcb,#19759d);border-color:#163c56;color:#fff}
body.theme-city .game-shell{max-width:1500px;padding:24px 28px 56px;background:transparent}body.theme-city .cg-page-head h1{color:#fff}body.theme-city .cg-page-head p{color:#98b2c8}
body.theme-city .cg-team-rule{background:linear-gradient(100deg,#082a45,#0b3049);border-color:#1e6178;color:#e7f8ff;box-shadow:0 10px 26px rgba(0,0,0,.18)}body.theme-city .cg-info-circle{background:linear-gradient(#17d4cf,#087c8e)}
body.theme-city .cg-card{background:linear-gradient(180deg,rgba(7,34,59,.98),rgba(5,27,48,.98));border-color:#1d4964;box-shadow:0 13px 32px rgba(0,0,0,.24)}body.theme-city .cg-card-head{border-color:#174058}body.theme-city .cg-card-head:not(.cg-blue):not(.cg-green):not(.cg-purple):not(.cg-ranking-head){background:#092842;color:#e9f8ff}
body.theme-city .cg-blue{background:linear-gradient(90deg,#087a9a,#16cbc7)}body.theme-city .cg-green{background:linear-gradient(90deg,#097952,#22b87a)}body.theme-city .cg-purple{background:linear-gradient(90deg,#3150b9,#7f4ed7)}body.theme-city .cg-card-head.cg-ranking-head{background:linear-gradient(135deg,#0e9a9b,#16d0c8);color:#012832}
body.theme-city .cg-profile-content label{color:#25d6d1}body.theme-city .cg-profile-content p,body.theme-city .cg-team-content small,body.theme-city .cg-option p,body.theme-city .cg-rank-position span,body.theme-city .cg-tip p{color:#9cb1c6}body.theme-city .cg-avatar{background:linear-gradient(145deg,#14d0cc,#287fb5);border-color:#123e57;color:#fff}body.theme-city .cg-member-bubbles span{background:#092740;border-color:#47677d;color:#91adc0}body.theme-city .cg-member-bubbles .is-member{background:#123a54;color:#e4f8ff;border-color:#2c667f}
body.theme-city .cg-outline-link{background:#082942;color:#22d5d1;border-color:#1a999a}body.theme-city .cg-outline-link:hover{background:#0c354f}
body.theme-city .cg-bonus{color:#eefaff}body.theme-city .cg-life{background:#311d30;border-color:#7c405d}body.theme-city .cg-shield{background:#092d4d;border-color:#186397}body.theme-city .cg-hint{background:#352d17;border-color:#7d6524}body.theme-city .cg-points{background:#2a2046;border-color:#674f9c}body.theme-city .cg-time{background:#30203d;border-color:#744c84}body.theme-city .cg-multiplier{background:#382817;border-color:#8b6124}
body.theme-city .cg-action-card{background:radial-gradient(circle at 50% 30%,#16314a,#09233b 65%,#061a2e);border-color:#28536c}body.theme-city .cg-lock{background:#0c2c45;border-color:#376079}body.theme-city .cg-action-card h2{color:#fff}body.theme-city .cg-action-card>p{color:#a8bbcd}body.theme-city .cg-option{background:#0c2c45!important;border-color:#315f79!important}body.theme-city .cg-option h3{color:#24d5d0!important}body.theme-city .cg-big-button.blue,body.theme-city .cg-start-game{background:linear-gradient(135deg,#13c7c3,#0b9aa8)}body.theme-city .cg-big-button.green{background:linear-gradient(135deg,#ffae2d,#f08016)}
body.theme-city .cg-ranking-card,body.theme-city .cg-rank-position{background:#08233c}body.theme-city .cg-rank-position strong{color:#21d7d2}body.theme-city .cg-ranking-list li{border-color:#183e56}body.theme-city .cg-ranking-list li:before{background:#13364e;color:#9eb4c6}body.theme-city .cg-tip{background:#082b45;border-color:#1d647b;color:#e6f8ff}body.theme-city .cg-tip a{background:#0a3650;border-color:#1a9397;color:#22d4ce}
body.theme-city .game-card,body.theme-city .card{background:#08233b;color:#edf8ff;border-color:#1d4963}body.theme-city input,body.theme-city select,body.theme-city textarea{background:#061d32;color:#fff;border-color:#31556d}body.theme-city .table th{background:#0d304a;color:#b7cadb}body.theme-city .table td{border-color:#173b53}

/* ------------------------------------------------------------------------
   2. HERITAGE — cream / green / old gold
   ------------------------------------------------------------------------ */
body.theme-heritage{background:#f5efe3;--cg-text:#183b31;--cg-muted:#756e60;--cg-border:#d9c9a8;--cg-card:#fffaf0;color:#183b31;font-family:Georgia,'Times New Roman',serif}
body.theme-heritage::before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(rgba(250,245,234,.9),rgba(246,239,225,.95)),url('../assets/enigmia-hero.png') center/cover no-repeat;opacity:.55}
body.theme-heritage .game-player-navbar{background:rgba(250,246,237,.96);border-bottom:1px solid #cdb98e;box-shadow:0 6px 18px rgba(77,60,31,.12)}body.theme-heritage .game-logo-code,body.theme-heritage .game-logo-city{color:#123f33;text-shadow:none}body.theme-heritage .game-logo-city:after{content:".pl";color:#a77c2d}body.theme-heritage .game-logo i{background:linear-gradient(90deg,transparent,#b6914a,#194c3d,transparent)}
body.theme-heritage .game-player-nav-links a,body.theme-heritage .game-user-main,body.theme-heritage .game-user-logout{color:#355149}body.theme-heritage .game-player-nav-links a span{color:#8b754c}body.theme-heritage .game-player-nav-links a:hover,body.theme-heritage .game-player-nav-links a.active-link{background:#f0e6d2;color:#0d4a39;border-color:#e0d0ac;box-shadow:inset 0 -4px 0 #a9843b}body.theme-heritage .game-user-main small{color:#9f7831}body.theme-heritage .game-user-avatar{background:#efe3c9;border-color:#fff8e9;color:#174b3b}
body.theme-heritage .game-shell{max-width:1500px;padding:24px 28px 56px}body.theme-heritage .cg-page-head h1{color:#123e32;font-family:Georgia,serif}body.theme-heritage .cg-page-head p{color:#736b5c}
body.theme-heritage .cg-team-rule{background:linear-gradient(100deg,#fffaf0,#f3e8d2);border-color:#cfb77d;color:#355046}body.theme-heritage .cg-info-circle{background:linear-gradient(#b99143,#8e6b2c)}
body.theme-heritage .cg-card{background:rgba(255,250,240,.98);border-color:#d9c8a6;box-shadow:0 9px 25px rgba(76,57,25,.10)}body.theme-heritage .cg-card-head{border-color:#e4d8bd}body.theme-heritage .cg-card-head:not(.cg-blue):not(.cg-green):not(.cg-purple):not(.cg-ranking-head){background:#fbf5e8;color:#20473a}body.theme-heritage .cg-blue,body.theme-heritage .cg-green{background:linear-gradient(90deg,#0c4939,#1e624f)}body.theme-heritage .cg-purple,body.theme-heritage .cg-card-head.cg-ranking-head{background:linear-gradient(90deg,#9a7531,#c39d53)}body.theme-heritage .cg-profile-content label{color:#9d772f}body.theme-heritage .cg-green-text{color:#176044}body.theme-heritage .cg-avatar{background:#eee0c2;border-color:#fff7e7;color:#184b3c}body.theme-heritage .cg-shield-logo{background:linear-gradient(160deg,#416e56,#0f4c3a);border-color:#d7c28e}
body.theme-heritage .cg-outline-link{background:#fffaf0;color:#164d3b;border-color:#aa8742}body.theme-heritage .cg-bonus{color:#24453a}body.theme-heritage .cg-life{background:#fff1ef;border-color:#d6aaa4}body.theme-heritage .cg-shield{background:#edf5ef;border-color:#9db8a7}body.theme-heritage .cg-hint{background:#fff7df;border-color:#dcc681}body.theme-heritage .cg-points{background:#f5ead1;border-color:#cdb477}body.theme-heritage .cg-time{background:#f7efe6;border-color:#cbb89c}body.theme-heritage .cg-multiplier{background:#fff5d9;border-color:#d2b768}
body.theme-heritage .cg-action-card{background:radial-gradient(circle at 50% 24%,#fff9ec,#f4ead5);border-color:#cdb577}body.theme-heritage .cg-option{border-color:#cab789;background:#fffaf0!important}body.theme-heritage .cg-option h3{color:#174b3a!important}body.theme-heritage .cg-big-button.blue,body.theme-heritage .cg-start-game{background:linear-gradient(135deg,#164e3d,#0a3d2f)}body.theme-heritage .cg-big-button.green{background:linear-gradient(135deg,#b38b40,#8f6929)}body.theme-heritage .cg-ranking-card,body.theme-heritage .cg-rank-position{background:#fff9ee}body.theme-heritage .cg-rank-position strong{color:#0d4a39}body.theme-heritage .cg-tip{background:#f8eed9;border-color:#d1bb86}body.theme-heritage .cg-tip strong{color:#8c682a}body.theme-heritage .cg-tip a{background:#fffaf0;border-color:#b99a5a;color:#174c3b}
body.theme-heritage button,body.theme-heritage .btn{background:#124a39;color:#fff;border-color:#124a39}body.theme-heritage input,body.theme-heritage select,body.theme-heritage textarea{background:#fffdf7;border-color:#ccb98f;color:#244238}body.theme-heritage .table th{background:#f1e7d2;color:#604f31}

/* ------------------------------------------------------------------------
   3. NEON CITY — dark / cyan / magenta / lime
   ------------------------------------------------------------------------ */
body.theme-neon{background:#020711;--cg-text:#e9f9ff;--cg-muted:#7fa0b2;--cg-border:#13415a;--cg-card:#06101d;color:#eaf8ff;font-family:Arial,Helvetica,sans-serif}
body.theme-neon::before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 15% 10%,rgba(0,219,255,.11),transparent 27%),radial-gradient(circle at 85% 20%,rgba(255,20,166,.10),transparent 26%),linear-gradient(#020711,#030914)}
body.theme-neon .game-player-navbar{background:rgba(2,8,18,.97);border-bottom:1px solid #0b4e6a;box-shadow:0 0 25px rgba(0,220,255,.12)}body.theme-neon .game-logo-code{color:#fff;text-shadow:0 0 12px #00dfff}body.theme-neon .game-logo-city{color:#00e7ff;text-shadow:0 0 15px #00dfff}body.theme-neon .game-logo i{background:linear-gradient(90deg,transparent,#00e8ff,#ff2aa9,#caff12,transparent);filter:drop-shadow(0 0 7px #00dfff)}
body.theme-neon .game-player-nav-links a,body.theme-neon .game-user-main,body.theme-neon .game-user-logout{color:#8da7b8}body.theme-neon .game-player-nav-links a span{color:#597c91}body.theme-neon .game-player-nav-links a:hover,body.theme-neon .game-player-nav-links a.active-link{background:#061522;color:#00e9ff;border-color:#0a3449;box-shadow:inset 0 -3px 0 #00e9ff,0 0 16px rgba(0,232,255,.08)}body.theme-neon .game-player-nav-links a.active-link span{color:#00e8ff}body.theme-neon .game-user-main small{color:#d0ff26}body.theme-neon .game-user-avatar{background:#041927;border-color:#0c4a63;color:#00e8ff;box-shadow:0 0 16px rgba(0,232,255,.22)}
body.theme-neon .game-shell{max-width:1500px;padding:24px 28px 56px}body.theme-neon .cg-page-head h1{color:#fff;text-shadow:0 0 15px rgba(0,220,255,.2)}body.theme-neon .cg-page-head p{color:#7c99aa}body.theme-neon .cg-team-rule{background:#061522;border-color:#0b6078;color:#dffaff;box-shadow:0 0 20px rgba(0,229,255,.08)}body.theme-neon .cg-info-circle{background:#031927;color:#00e9ff;border:1px solid #00e9ff;box-shadow:0 0 15px rgba(0,232,255,.28)}
body.theme-neon .cg-card{background:linear-gradient(180deg,#07121f,#050d18);border-color:#164057;box-shadow:0 10px 28px rgba(0,0,0,.36)}body.theme-neon .cg-card-head{border-color:#123348}body.theme-neon .cg-card-head:not(.cg-blue):not(.cg-green):not(.cg-purple):not(.cg-ranking-head){background:#061522;color:#e8faff}body.theme-neon .cg-blue{background:linear-gradient(90deg,#002a44,#005f79);color:#00e8ff}body.theme-neon .cg-green{background:linear-gradient(90deg,#123014,#1c5a1c);color:#caff1d}body.theme-neon .cg-purple,body.theme-neon .cg-card-head.cg-ranking-head{background:linear-gradient(90deg,#4d0738,#8e0c67);color:#ff42b5}
body.theme-neon .cg-profile-content label{color:#00e7ff}body.theme-neon .cg-profile-content p,body.theme-neon .cg-team-content small,body.theme-neon .cg-option p,body.theme-neon .cg-rank-position span,body.theme-neon .cg-tip p{color:#7e9caf}body.theme-neon .cg-avatar{background:#061927;border-color:#0b607a;color:#00e9ff;box-shadow:0 0 20px rgba(0,232,255,.20)}body.theme-neon .cg-shield-logo{background:#061823;border-color:#00e9ff;color:#caff1f;filter:drop-shadow(0 0 8px rgba(0,232,255,.3))}.cg-green-text{}
body.theme-neon .cg-member-bubbles span{background:#071521;border-color:#345468;color:#738ea0}body.theme-neon .cg-member-bubbles .is-member{background:#0a2030;border-color:#0b7490;color:#00e8ff}body.theme-neon .cg-outline-link{background:#061521;color:#00e9ff;border-color:#0e6c84;box-shadow:0 0 12px rgba(0,232,255,.08)}
body.theme-neon .cg-bonus{color:#eafaff;background:#061522}.theme-neon .cg-life{border-color:#a21b62}.theme-neon .cg-life small{color:#ff38a9}.theme-neon .cg-shield{border-color:#0c7b9d}.theme-neon .cg-shield small{color:#00e9ff}.theme-neon .cg-hint{border-color:#82781a}.theme-neon .cg-hint small{color:#eaff21}.theme-neon .cg-points{border-color:#962a83}.theme-neon .cg-points small{color:#ff47bf}.theme-neon .cg-time{border-color:#3154b1}.theme-neon .cg-time small{color:#8196ff}.theme-neon .cg-multiplier{border-color:#7a8e19}.theme-neon .cg-multiplier small{color:#caff20}
body.theme-neon .cg-action-card{background:radial-gradient(circle at 50% 30%,#0a1b2a,#040b14);border-color:#16465d}body.theme-neon .cg-lock{background:#071723;border-color:#0e536d;box-shadow:0 0 16px rgba(0,232,255,.08)}body.theme-neon .cg-action-card h2{color:#fff}body.theme-neon .cg-action-card>p{color:#829dae}body.theme-neon .cg-option{background:#061421!important;border-color:#164760!important;box-shadow:0 0 18px rgba(0,0,0,.2)}body.theme-neon .cg-option-blue h3{color:#00e9ff!important}body.theme-neon .cg-option-green h3{color:#caff1d!important}body.theme-neon .cg-big-button.blue,body.theme-neon .cg-start-game{background:linear-gradient(135deg,#00dce8,#007f9c);box-shadow:0 0 22px rgba(0,232,255,.24)}body.theme-neon .cg-big-button.green{background:linear-gradient(135deg,#d2ff23,#6ba700);color:#071109;box-shadow:0 0 22px rgba(201,255,20,.20)}
body.theme-neon .cg-ranking-card,body.theme-neon .cg-rank-position{background:#06111d}body.theme-neon .cg-rank-position strong{color:#ff36ac;text-shadow:0 0 15px rgba(255,40,170,.25)}body.theme-neon .cg-ranking-list li{border-color:#153344}body.theme-neon .cg-tip{background:#061522;border-color:#0b5871}body.theme-neon .cg-tip strong{color:#00e9ff}body.theme-neon .cg-tip a{background:#061521;border-color:#caff20;color:#caff20}
body.theme-neon input,body.theme-neon select,body.theme-neon textarea{background:#030b14!important;color:#eefaff!important;border-color:#1a455d!important}body.theme-neon .game-card,body.theme-neon .card{background:#06111e;color:#eaf8ff;border-color:#164057}body.theme-neon .table th{background:#071827;color:#00dfea}body.theme-neon .table td{border-color:#153347}

/* ------------------------------------------------------------------------
   4. PASTEL TEAM 1:1 — sidebar / top profile / purple-blue-green cards
   ------------------------------------------------------------------------ */
body.theme-pastel{background:#f7f8ff;--cg-text:#16274b;--cg-muted:#64708c;--cg-border:#e1e5f2;--cg-card:#fff;color:#16274b}
body.theme-pastel .game-player-navbar{display:none!important}body.theme-pastel .pastel-player-sidebar{display:flex;position:fixed;z-index:1250;left:0;top:0;bottom:0;width:206px;padding:24px 14px 18px;flex-direction:column;background:linear-gradient(180deg,#fbfaff,#f2f0ff 74%,#edf8ff);border-right:1px solid #e2e1f2;box-shadow:8px 0 28px rgba(75,64,135,.06)}
.pastel-side-logo{display:flex;align-items:center;gap:9px;padding:4px 13px 24px;text-decoration:none;color:#142852;font-size:21px;font-weight:950}.pastel-side-logo>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#f459a1,#7458f6,#35aeea,#53d38b);color:#fff}.pastel-player-sidebar nav{display:grid;gap:6px}.pastel-player-sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:#26345e;text-decoration:none;font-weight:750;font-size:14px}.pastel-player-sidebar nav a>span{width:24px;text-align:center;font-size:18px}.pastel-player-sidebar nav a:hover,.pastel-player-sidebar nav a.active-link{background:linear-gradient(135deg,#7c4cf2,#8e63f4);color:#fff;box-shadow:0 7px 16px rgba(108,72,225,.22)}.pastel-side-city{margin-top:auto;height:150px;position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(#f6f2ff,#e8f8ff)}.pastel-side-city:before{content:"";position:absolute;inset:42px 0 0;background:linear-gradient(90deg,#4c9ee8 0 16%,#8d5be2 16% 33%,#f35d93 33% 50%,#f8b148 50% 67%,#4cc58c 67% 84%,#5ea9ec 84%);clip-path:polygon(0 100%,0 55%,10% 55%,10% 35%,18% 35%,18% 60%,28% 60%,28% 20%,38% 20%,38% 50%,48% 50%,48% 30%,58% 30%,58% 64%,68% 64%,68% 13%,78% 13%,78% 50%,88% 50%,88% 34%,100% 34%,100% 100%);opacity:.95}.pastel-side-city:after{content:"";position:absolute;left:0;right:0;bottom:0;height:18px;background:#b7e7ff}
body.theme-pastel .pastel-player-topbar{display:grid;position:relative;z-index:1100;margin:12px 26px 0 226px;min-height:126px;padding:18px 22px;grid-template-columns:72px 1fr auto;gap:18px;align-items:center;background:#fff;border:1px solid #e0e4f1;border-radius:18px;box-shadow:0 10px 30px rgba(72,65,120,.08)}.pastel-top-avatar{width:68px;height:68px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#f3defc,#bceaff);color:#5a3ac5;font-size:29px;font-weight:950}.pastel-top-user strong,.pastel-top-user span,.pastel-top-user small{display:block}.pastel-top-user strong{font-size:16px;margin-bottom:9px}.pastel-top-user span{font-weight:800;color:#29385d}.pastel-top-user span::first-letter{}.pastel-top-user small{margin-top:6px;color:#66728e}.pastel-top-actions{align-self:start;display:flex;gap:12px}.pastel-top-actions a{padding:9px 13px;border:1px solid #d8deeb;border-radius:10px;text-decoration:none;color:#27385d;font-size:12px;font-weight:800;background:#fff}
body.theme-pastel .game-shell{max-width:none;margin:0 24px 0 226px;padding:18px 0 55px}body.theme-pastel .cg-page-head{display:none}body.theme-pastel .cg-event-switcher{margin:0 0 12px}body.theme-pastel .cg-main-grid{grid-template-columns:minmax(250px,.8fr) minmax(520px,1.45fr) minmax(285px,.82fr);gap:16px}body.theme-pastel .cg-card{border-radius:17px;border-color:#e1e5f0;box-shadow:0 9px 25px rgba(61,69,126,.08)}body.theme-pastel .cg-blue{background:linear-gradient(90deg,#744be8,#9666f4)}body.theme-pastel .cg-green{background:linear-gradient(90deg,#2fbf68,#57d68a)}body.theme-pastel .cg-purple{background:linear-gradient(90deg,#7650e8,#9e5aec)}body.theme-pastel .cg-card-head.cg-ranking-head{background:linear-gradient(135deg,#8044e7,#b354ed)}body.theme-pastel .cg-bonus-card .cg-card-head{background:#fbfbff}body.theme-pastel .cg-profile-content label{color:#5f4bd7}body.theme-pastel .cg-avatar{background:linear-gradient(145deg,#efd8ff,#bceeff);border-color:#f7efff;color:#573ab5}.theme-pastel .cg-shield-logo{background:linear-gradient(160deg,#5bd78d,#21a755)}
body.theme-pastel .cg-bonus-grid-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-pastel .cg-bonus{grid-template-columns:38px 1fr;padding:10px 9px;border-radius:12px}.theme-pastel .cg-bonus>span{font-size:28px}.theme-pastel .cg-bonus strong{font-size:20px}.theme-pastel .cg-bonus small{font-size:11px}.theme-pastel .cg-time{background:#fbf4ff;border-color:#d5b9ed}.theme-pastel .cg-multiplier{background:#fff9e6;border-color:#f0ce73}
body.theme-pastel .cg-action-card{background:linear-gradient(180deg,#fffdf8,#fffaf0);border-color:#f1d79b}.theme-pastel .cg-option-blue{background:#f9fbff}.theme-pastel .cg-option-green{background:#f7fff9}.theme-pastel .cg-big-button.blue,.theme-pastel .cg-start-game{background:linear-gradient(135deg,#7750eb,#4a87ec)}.theme-pastel .cg-big-button.green{background:linear-gradient(135deg,#4bc97a,#21a857)}body.theme-pastel .cg-tip{background:#f3f8ff;border-color:#bfd7f7}
body.theme-pastel .team-builder-page{max-width:none}.theme-pastel .team-builder-top{padding:0 6px}.theme-pastel .game-card{border-radius:18px;border-color:#e1e5f0;box-shadow:0 9px 25px rgba(61,69,126,.08)}.theme-pastel .team-create-card{max-width:980px;margin:auto}.theme-pastel .game-title-purple{background:linear-gradient(90deg,#7249e5,#9564f2);color:#fff}.theme-pastel .team-invite-info{background:#f8f5ff;border-color:#cdbdf8}.theme-pastel input,.theme-pastel select,.theme-pastel textarea{border-radius:10px;border-color:#d8ddec;background:#fff}.theme-pastel button,.theme-pastel .btn{border-radius:10px;background:linear-gradient(135deg,#7249e6,#526eea)}

/* Pastel special task page matches the separate sidebar tab. */
body.theme-pastel .special-hero{background:linear-gradient(135deg,#faf7ff,#edf7ff)}

@media(max-width:1250px){.cg-bonus-grid-six{grid-template-columns:repeat(2,minmax(0,1fr))}body.theme-pastel .pastel-player-sidebar{width:176px}body.theme-pastel .pastel-player-topbar,body.theme-pastel .game-shell{margin-left:194px}body.theme-pastel .cg-main-grid{grid-template-columns:250px minmax(0,1fr)}body.theme-pastel .cg-right-col{grid-column:1/-1}}
@media(max-width:980px){body.theme-city .game-player-navbar,body.theme-heritage .game-player-navbar,body.theme-neon .game-player-navbar{position:relative}.special-task-grid{grid-template-columns:1fr}body.theme-pastel .pastel-player-sidebar{position:relative;width:auto;height:auto;bottom:auto;padding:10px 12px}.pastel-player-sidebar nav{display:flex;overflow-x:auto}.pastel-player-sidebar nav a{white-space:nowrap}.pastel-side-city{display:none}body.theme-pastel .pastel-player-topbar{margin:10px 12px;grid-template-columns:56px 1fr}.pastel-top-avatar{width:54px;height:54px}.pastel-top-actions{grid-column:1/-1;justify-content:flex-end}body.theme-pastel .game-shell{margin:0;padding:10px 12px 45px}body.theme-pastel .cg-main-grid{grid-template-columns:1fr}.theme-pastel .cg-left-col{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-pastel .cg-progress-card{grid-column:1/-1}.theme-pastel .cg-right-col{grid-column:auto}}
@media(max-width:660px){.cg-bonus-grid-six{grid-template-columns:1fr 1fr}.cg-special-link{font-size:0;padding:6px 8px}.cg-special-link::after{content:"🔓";font-size:15px}body.theme-pastel .cg-left-col{grid-template-columns:1fr}.pastel-player-sidebar nav a{padding:9px 10px}.pastel-player-sidebar nav a>span{display:none}}

/* Pastel Team 1:1 team-creation composition */
.pastel-team-summary{display:none}.pastel-team-create-layout{display:block}
body.theme-pastel .pastel-team-create-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);gap:18px;align-items:start}
body.theme-pastel .pastel-team-create-layout .team-create-card{max-width:none;margin:0}
body.theme-pastel .pastel-team-summary{display:grid;gap:14px;align-content:start}
.pastel-summary-card{border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(71,65,126,.10)}.pastel-summary-card h3{margin:0;padding:14px 16px;color:#fff;font-size:18px}.pastel-summary-card>div,.pastel-summary-card>p,.pastel-summary-card>a{margin-left:14px;margin-right:14px}.pastel-summary-card>div{padding:14px;border-radius:13px;background:rgba(255,255,255,.78)}.pastel-summary-card small,.pastel-summary-card strong,.pastel-summary-card span{display:block}.pastel-summary-card>p{display:flex;justify-content:space-between}.pastel-summary-card>a{display:block;padding:0 0 14px;text-decoration:none;font-weight:800}.pastel-rank{padding-bottom:2px;background:linear-gradient(145deg,#8a4de8,#bd63ee)}.pastel-rank h3{background:rgba(100,43,206,.18)}.pastel-rank>div strong{font-size:34px;color:#41208b}.pastel-rank>div span{font-size:11px;color:#74658d}.pastel-rank>p,.pastel-rank>a{color:#fff}.pastel-progress{padding-bottom:14px;background:linear-gradient(145deg,#408cf0,#79bbff)}.pastel-progress h3{background:rgba(29,101,205,.15)}.pastel-progress>div{display:grid;place-items:center;min-height:130px}.pastel-progress-ring{width:92px;height:92px;border-radius:50%;background:conic-gradient(#256fe0 calc(var(--p)*1%),#d7e8ff 0);position:relative}.pastel-progress-ring:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}.pastel-progress-ring b{position:relative;z-index:2;font-size:23px;color:#173b83}.pastel-progress>p{color:#fff}.pastel-progress>p strong{display:inline}.pastel-resources{padding-bottom:14px;background:linear-gradient(145deg,#55cb88,#9be6bc)}.pastel-resources h3{background:rgba(28,145,81,.12)}.pastel-resource-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:transparent!important;padding:0!important}.pastel-resource-grid a{display:grid;grid-template-columns:28px 1fr;gap:3px 7px;align-items:center;padding:9px;border-radius:12px;background:rgba(255,255,255,.82);text-decoration:none;color:#165135;font-size:19px}.pastel-resource-grid span{font-size:10px}.pastel-resource-grid b{grid-column:2;font-size:18px}.pastel-special-button{display:block;padding:13px 16px;border:1px solid #cbbaf4;border-radius:14px;background:#f7f2ff;color:#653bd0;text-align:center;text-decoration:none;font-weight:900}.pastel-start-disabled{padding:17px;border-radius:14px;background:#e9ebf2;color:#a0a7b6;text-align:center;font-size:18px;font-weight:900}.pastel-start-disabled small{display:block;margin-top:7px;font-size:10px;font-weight:700}
@media(max-width:1100px){body.theme-pastel .pastel-team-create-layout{grid-template-columns:1fr}.pastel-team-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pastel-resources,.pastel-special-button,.pastel-start-disabled{grid-column:1/-1}}
@media(max-width:660px){.pastel-team-summary{grid-template-columns:1fr}.pastel-resources,.pastel-special-button,.pastel-start-disabled{grid-column:auto}}

/* ======================================================================
   PLAYER UI FINAL 2026-09-03
   One horizontal shell for all seven themes. Legacy player sidebars and
   floating theme controls are disabled. Theme switching lives in Profile.
   ====================================================================== */
.theme-switcher,
.pastel-player-sidebar,
.pastel-player-topbar,
.game-player-navbar { display:none !important; }

body.player-app {
    --p-bg:#f3f7fb;
    --p-surface:#ffffff;
    --p-surface-2:#f8fbff;
    --p-text:#17233f;
    --p-muted:#66748f;
    --p-border:#dce4f0;
    --p-primary:#2f73e6;
    --p-primary-2:#6f4ee8;
    --p-accent:#18b7b0;
    --p-accent-2:#ffb020;
    --p-danger:#e84c65;
    --p-success:#29a85b;
    --p-nav:#ffffff;
    --p-nav-text:#1d2b4d;
    --p-shadow:0 14px 38px rgba(31,45,82,.10);
    background:var(--p-bg) !important;
    color:var(--p-text) !important;
    min-height:100vh;
}

body.player-app.theme-green {
    --p-bg:#eef5ed;--p-surface:#fffef9;--p-surface-2:#f6fbf2;--p-text:#17351f;--p-muted:#657666;--p-border:#ccdcc8;--p-primary:#2d7b39;--p-primary-2:#4c9a45;--p-accent:#6fac3f;--p-accent-2:#d6a52a;--p-nav:#f9fff6;--p-nav-text:#17351f;--p-shadow:0 14px 38px rgba(36,91,43,.12)
}
body.player-app.theme-kids {
    --p-bg:#fff4f6;--p-surface:#fffdf8;--p-surface-2:#fff8e8;--p-text:#4f2842;--p-muted:#8e657f;--p-border:#f2ccd9;--p-primary:#ef4f85;--p-primary-2:#f08e39;--p-accent:#ffbd32;--p-accent-2:#8c67e8;--p-nav:#fffaf4;--p-nav-text:#5b2747;--p-shadow:0 14px 38px rgba(174,67,112,.12)
}
body.player-app.theme-game {
    --p-bg:#edf6ff;--p-surface:#ffffff;--p-surface-2:#f4f9ff;--p-text:#132447;--p-muted:#61718f;--p-border:#cfdcf0;--p-primary:#2c83ee;--p-primary-2:#8b49e8;--p-accent:#32c46c;--p-accent-2:#ffb323;--p-nav:#ffffff;--p-nav-text:#173056;--p-shadow:0 16px 40px rgba(34,78,145,.12)
}
body.player-app.theme-city {
    --p-bg:#071d34;--p-surface:#0d2944;--p-surface-2:#0a2239;--p-text:#f5fbff;--p-muted:#a6b9cb;--p-border:#274863;--p-primary:#19c5c9;--p-primary-2:#1e80c9;--p-accent:#ff8b18;--p-accent-2:#ffd24c;--p-nav:#07182b;--p-nav-text:#effaff;--p-shadow:0 18px 45px rgba(0,0,0,.28)
}
body.player-app.theme-heritage {
    --p-bg:#f3eee2;--p-surface:#fffaf0;--p-surface-2:#f8f1e3;--p-text:#15372f;--p-muted:#6f6b5d;--p-border:#d8c9a8;--p-primary:#0f493a;--p-primary-2:#8c6b2c;--p-accent:#b78b2d;--p-accent-2:#d6b65b;--p-nav:#fff9ec;--p-nav-text:#15372f;--p-shadow:0 15px 36px rgba(74,58,28,.12)
}
body.player-app.theme-neon {
    --p-bg:#030c18;--p-surface:#071528;--p-surface-2:#091a2f;--p-text:#edf9ff;--p-muted:#8ba3bc;--p-border:#17415a;--p-primary:#10d9f0;--p-primary-2:#ff39aa;--p-accent:#abef1d;--p-accent-2:#ffd420;--p-nav:#040e1c;--p-nav-text:#eafaff;--p-shadow:0 0 28px rgba(16,217,240,.12)
}
body.player-app.theme-pastel {
    --p-bg:#f4f4ff;--p-surface:#ffffff;--p-surface-2:#faf9ff;--p-text:#18254b;--p-muted:#68748e;--p-border:#e0e3ef;--p-primary:#7a50ea;--p-primary-2:#a855e8;--p-accent:#37bf75;--p-accent-2:#4697f1;--p-nav:#ffffff;--p-nav-text:#1f2e58;--p-shadow:0 14px 36px rgba(73,65,126,.11)
}

body.player-app *, body.player-app *::before, body.player-app *::after { box-sizing:border-box; }
body.player-app a { color:inherit; }
body.player-app .muted { color:var(--p-muted) !important; }

/* one horizontal navigation */
.player-topnav { position:sticky;top:0;z-index:1200;background:var(--p-nav);border-bottom:1px solid var(--p-border);box-shadow:0 5px 20px rgba(24,38,71,.05); }
.player-topnav-inner { max-width:1540px;margin:auto;min-height:78px;padding:10px 24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:22px;align-items:center; }
.player-brand { display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--p-nav-text);font-size:20px;white-space:nowrap; }
.player-brand-mark { width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--p-primary),var(--p-accent));color:#fff;font-weight:950;font-size:13px; }
.player-main-links { display:flex;justify-content:center;align-items:center;gap:4px;min-width:0; }
.player-main-links a { position:relative;padding:12px 13px;border-radius:11px;text-decoration:none;color:var(--p-nav-text);font-size:14px;font-weight:800;white-space:nowrap; }
.player-main-links a:hover,.player-main-links a.active-link { background:color-mix(in srgb,var(--p-primary) 12%, transparent);color:var(--p-primary); }
.player-main-links a.active-link::after { content:"";position:absolute;left:18px;right:18px;bottom:3px;height:3px;border-radius:3px;background:var(--p-primary); }
.player-play-link { padding:12px 22px;border-radius:12px;background:linear-gradient(135deg,var(--p-accent-2),var(--p-primary));color:#fff !important;text-decoration:none;font-weight:950;letter-spacing:.04em;box-shadow:0 8px 18px color-mix(in srgb,var(--p-primary) 25%, transparent); }
.theme-neon .player-play-link { background:linear-gradient(135deg,#a9f20e,#16dcef);color:#02101a !important;box-shadow:0 0 18px rgba(169,242,14,.35); }
.theme-heritage .player-play-link { background:linear-gradient(135deg,#b99139,#0f493a); }
.theme-kids .player-play-link { background:linear-gradient(135deg,#ffc72f,#f04f84);color:#4a2440 !important; }
.player-account { display:flex;align-items:center;gap:8px; }
.player-account-link { display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--p-nav-text);min-width:0; }
.player-account-link>span:last-child { display:grid;line-height:1.15; }
.player-account-link strong { max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px; }
.player-account-link small { color:var(--p-muted);font-size:11px;margin-top:4px; }
.player-account-avatar,.player-profile-avatar { position:relative;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--p-primary) 18%,#fff),color-mix(in srgb,var(--p-accent) 22%,#fff));border:3px solid color-mix(in srgb,var(--p-primary) 14%,#fff); }
.player-account-avatar { width:44px;height:44px; }
.player-profile-avatar { width:112px;height:112px;flex:0 0 112px; }
.player-avatar-fallback { position:absolute;inset:0;display:grid;place-items:center;font-weight:950;font-size:22px;color:var(--p-primary); }
.player-profile-avatar .player-avatar-fallback { font-size:40px; }
.player-avatar-art { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none; }
body.theme-game.avatar-boy .avatar-art-game.avatar-art-boy,
body.theme-game.avatar-girl .avatar-art-game.avatar-art-girl,
body.theme-pastel.avatar-boy .avatar-art-pastel.avatar-art-boy,
body.theme-pastel.avatar-girl .avatar-art-pastel.avatar-art-girl { display:block; }
body.theme-game .player-avatar-fallback,body.theme-pastel .player-avatar-fallback { opacity:0; }
.player-logout { padding:9px 10px;border:1px solid var(--p-border);border-radius:10px;text-decoration:none;color:var(--p-muted);font-size:11px;font-weight:800; }

.player-app-main { max-width:1540px;margin:0 auto;padding:26px 28px 70px; }
.player-section-page,.player-dashboard { width:100%; }
.player-page-title,.player-dashboard-head { margin-bottom:18px; }
.player-page-title h1,.player-dashboard-head h1 { color:var(--p-text) !important;margin:.12em 0 .2em;font-size:clamp(30px,3vw,44px);line-height:1.04; }
.player-page-title>p:last-child,.player-dashboard-head>div>p:last-child { color:var(--p-muted);margin:0; }
.player-kicker { margin:0;color:var(--p-primary) !important;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.09em; }

/* dashboard */
.player-dashboard-head { display:grid;grid-template-columns:minmax(260px,.75fr) minmax(520px,1.5fr);gap:20px;align-items:center; }
.player-event-strip { min-height:98px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px 18px;background:var(--p-surface);border:1px solid var(--p-border);border-radius:18px;box-shadow:var(--p-shadow); }
.player-event-strip.has-event { border-color:color-mix(in srgb,var(--p-primary) 36%,var(--p-border));background:linear-gradient(135deg,var(--p-surface),color-mix(in srgb,var(--p-primary) 7%,var(--p-surface))); }
.player-event-strip .player-event-icon { width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--p-primary);color:#fff;font-size:22px; }
.player-event-strip strong,.player-event-strip span,.player-event-strip small { display:block;color:var(--p-text); }
.player-event-strip span { color:var(--p-muted);margin-top:3px; }
.player-event-strip small { color:var(--p-muted);margin-top:4px;font-size:11px; }
.player-event-strip>a { padding:9px 13px;border:1px solid color-mix(in srgb,var(--p-primary) 40%,var(--p-border));border-radius:10px;text-decoration:none;color:var(--p-primary);font-weight:900;font-size:12px; }
.player-dashboard-grid { display:grid;grid-template-columns:minmax(250px,.82fr) minmax(500px,1.55fr) minmax(285px,.9fr);gap:16px;align-items:start; }
.player-dashboard-left,.player-dashboard-center,.player-dashboard-right { display:grid;gap:16px;min-width:0; }
.player-panel-card { overflow:hidden;background:var(--p-surface);border:1px solid var(--p-border);border-radius:18px;box-shadow:var(--p-shadow);color:var(--p-text); }
.player-panel-card>header { min-height:42px;display:flex;align-items:center;gap:9px;padding:10px 14px;background:linear-gradient(90deg,color-mix(in srgb,var(--p-primary) 88%,#fff),var(--p-primary-2));color:#fff;font-size:14px;font-weight:900; }
.player-panel-card>header>a { margin-left:auto;color:inherit;text-decoration:none;font-size:11px;font-weight:850;opacity:.92; }
.player-profile-body { display:flex;gap:18px;align-items:center;padding:20px; }
.player-profile-body h2,.player-team-body h2 { margin:0 0 10px;color:var(--p-text);font-size:20px; }
.player-profile-body label { display:block;color:var(--p-primary);font-size:10px;font-weight:900;margin-top:5px; }
.player-profile-body p { margin:2px 0;color:var(--p-text);font-size:13px;overflow-wrap:anywhere; }
.player-team-body { display:flex;gap:16px;align-items:center;padding:18px; }
.player-team-emblem,.team-emblem { width:82px;height:96px;flex:0 0 82px;display:grid;place-items:center;color:#fff;font-size:29px;background:linear-gradient(155deg,var(--p-accent),var(--p-primary));clip-path:polygon(50% 0,92% 13%,86% 72%,50% 100%,14% 72%,8% 13%); }
.player-team-body p { margin:5px 0;color:var(--p-muted);font-size:13px; }.player-team-body p strong{color:var(--p-success)}
.player-member-bubbles { display:flex;gap:5px;margin:8px 0; }.player-member-bubbles span{width:27px;height:27px;border-radius:50%;border:1px dashed var(--p-border);display:grid;place-items:center;color:var(--p-muted);font-size:10px}.player-member-bubbles .filled{background:color-mix(in srgb,var(--p-primary) 12%,var(--p-surface));border-style:solid;color:var(--p-primary);font-weight:900}
.player-progress-small,.player-progress-bar { height:8px;border-radius:999px;background:color-mix(in srgb,var(--p-muted) 18%,transparent);overflow:hidden; }.player-progress-small i,.player-progress-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--p-primary),var(--p-accent));border-radius:inherit}
.player-progress-card { padding-bottom:16px; }.player-progress-card>div,.player-progress-card>small{margin-left:14px;margin-right:14px}.player-progress-row{display:flex;justify-content:space-between;margin-top:14px!important;margin-bottom:8px!important}.player-progress-row span{color:var(--p-muted)}
.player-task-dots { display:flex;gap:5px;margin-top:11px!important;flex-wrap:wrap; }.player-task-dots span{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:var(--p-surface-2);border:1px solid var(--p-border);font-size:11px}.player-task-dots .done{background:var(--p-success);border-color:var(--p-success);color:#fff}
.player-empty-card,.player-empty-state { padding:28px;text-align:center; }.player-empty-card h2,.player-empty-state h2{color:var(--p-text)}.player-empty-card p,.player-empty-state p{color:var(--p-muted)}
.player-resources-card>header { background:var(--p-surface-2);color:var(--p-text);border-bottom:1px solid var(--p-border); }
.player-resources-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px; }
.player-resources-grid a { min-height:92px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:13px;border-radius:14px;text-decoration:none;color:var(--p-text);border:1px solid var(--p-border);background:var(--p-surface-2); }
.player-resources-grid a>span { grid-row:1/3;font-size:31px; }.player-resources-grid small{font-size:11px;font-weight:850;color:var(--p-muted)}.player-resources-grid strong{font-size:20px;color:var(--p-text)}
.player-resources-grid .resource-life{background:#fff3f5;border-color:#ffb8c1}.player-resources-grid .resource-shield{background:#f1f7ff;border-color:#b7d6ff}.player-resources-grid .resource-hint{background:#fff9e9;border-color:#f6d47a}.player-resources-grid .resource-points{background:#f8f2ff;border-color:#d7b8ff}.player-resources-grid .resource-time{background:#f8f1ff;border-color:#d8b9ef}.player-resources-grid .resource-mult{background:#fff8e7;border-color:#edcc72}
.theme-city .player-resources-grid a,.theme-neon .player-resources-grid a { background:var(--p-surface-2);border-color:var(--p-border); }.theme-city .player-resources-grid small,.theme-neon .player-resources-grid small{color:var(--p-muted)}
.player-action-card { min-height:360px;padding:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,var(--p-surface),color-mix(in srgb,var(--p-accent-2) 9%,var(--p-surface)));border-color:color-mix(in srgb,var(--p-accent-2) 50%,var(--p-border)); }
.player-action-card h2{color:var(--p-text);font-size:27px;margin:12px 0 8px}.player-action-card p{max-width:610px;color:var(--p-muted);line-height:1.55}.player-lock-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;font-size:28px;background:color-mix(in srgb,var(--p-accent-2) 16%,var(--p-surface));border:1px solid color-mix(in srgb,var(--p-accent-2) 45%,var(--p-border))}
.player-action-primary,.player-start-button { display:inline-flex;justify-content:center;align-items:center;margin-top:16px;padding:14px 24px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--p-primary),var(--p-primary-2));color:#fff !important;text-decoration:none;font-weight:950;font-size:16px;cursor:pointer; }.theme-neon .player-action-primary,.theme-neon .player-start-button{background:linear-gradient(135deg,#9ce91e,#15d8ef);color:#04121c!important;box-shadow:0 0 20px rgba(16,217,240,.25)}
.player-dashboard-tip { display:flex;gap:10px;align-items:center;padding:12px 16px;border:1px solid var(--p-border);border-radius:14px;background:var(--p-surface);color:var(--p-text); }.player-dashboard-tip p{margin:0;color:var(--p-muted)}
.player-ranking-preview>header { background:linear-gradient(135deg,var(--p-primary-2),var(--p-primary)); }.player-rank-position{padding:18px;text-align:center}.player-rank-position small,.player-rank-position span{display:block;color:var(--p-muted)}.player-rank-position strong{display:block;margin:8px 0;color:var(--p-primary-2);font-size:42px}.player-top-list{list-style:none;margin:0;padding:0 14px 14px}.player-top-list li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--p-border);font-size:12px}.player-top-list li span{display:flex;gap:8px;align-items:center}.player-top-list li span b{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--p-accent-2) 35%,var(--p-surface));color:var(--p-text)}.player-card-link{display:block;margin:0 14px 14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--p-primary) 40%,var(--p-border));border-radius:10px;text-align:center;text-decoration:none;color:var(--p-primary)!important;font-weight:900;font-size:12px}.player-special-preview p{padding:14px;margin:0;color:var(--p-muted)}

/* shared page cards/forms/tables: fix contrast in every theme */
.player-app .card,.player-app .game-card { background:var(--p-surface)!important;color:var(--p-text)!important;border:1px solid var(--p-border)!important;box-shadow:var(--p-shadow);border-radius:18px; }
.player-app .card h1,.player-app .card h2,.player-app .card h3,.player-app .game-card h1,.player-app .game-card h2,.player-app .game-card h3,
.player-app label,.player-app .table td,.player-app .table th,.player-app p,.player-app strong { color:inherit; }
.player-app input,.player-app select,.player-app textarea { width:100%;background:var(--p-surface-2)!important;color:var(--p-text)!important;border:1px solid var(--p-border)!important;border-radius:11px;padding:11px 12px; }
.player-app input::placeholder,.player-app textarea::placeholder { color:color-mix(in srgb,var(--p-muted) 70%,transparent); }
.player-app input:disabled { opacity:.75; }
.player-app button,.player-app .btn { border:0;border-radius:11px;background:linear-gradient(135deg,var(--p-primary),var(--p-primary-2));color:#fff!important;font-weight:850;cursor:pointer;padding:10px 14px; }
.player-app button.secondary,.player-app .btn.secondary { background:var(--p-surface-2)!important;color:var(--p-primary)!important;border:1px solid color-mix(in srgb,var(--p-primary) 38%,var(--p-border))!important; }
.player-app button.danger,.player-app .danger { background:#c83f55!important;color:#fff!important; }
.player-app .table-wrap { overflow:auto; }.player-app .table{width:100%;border-collapse:collapse;background:var(--p-surface);color:var(--p-text)}.player-app .table thead th{background:color-mix(in srgb,var(--p-primary) 8%,var(--p-surface));color:var(--p-text)!important;font-size:11px;text-transform:uppercase;letter-spacing:.03em}.player-app .table th,.player-app .table td{padding:11px 12px;border-bottom:1px solid var(--p-border);text-align:left}.player-app .table a{color:var(--p-primary)!important}.player-app code{background:color-mix(in srgb,var(--p-primary) 10%,var(--p-surface));color:var(--p-text);padding:3px 6px;border-radius:6px}

/* Drużyna */
.team-create-layout { display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);gap:16px;align-items:start; }.team-management-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:16px;align-items:start}.team-management-grid main,.team-side-column{display:grid;gap:16px}.team-create-card>header,.join-team-card>header,.team-overview-card>header,.team-page .player-panel-card>header{background:linear-gradient(90deg,var(--p-primary),var(--p-primary-2));color:#fff}.team-create-form,.join-team-card form,.team-settings-card form{padding:16px}.team-create-fields{display:grid;grid-template-columns:1fr 220px;gap:12px}.team-invite-info{margin:14px 0;padding:13px;border:1px solid color-mix(in srgb,var(--p-primary) 25%,var(--p-border));border-radius:12px;background:color-mix(in srgb,var(--p-primary) 6%,var(--p-surface));color:var(--p-text)}.invite-rows{display:grid;gap:8px}.invite-row{display:grid;grid-template-columns:.7fr 1.2fr auto;gap:8px}.invite-remove{width:42px}.team-overview-body{display:flex;align-items:center;gap:20px;padding:20px}.team-ready-pill{margin-left:auto;padding:5px 9px;border-radius:999px;font-size:10px;background:#fff;color:var(--p-primary)}.team-ready-pill.ready{color:#187b3c}.team-member-list{padding:4px 14px}.team-member-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--p-border)}.member-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--p-primary) 10%,var(--p-surface));color:var(--p-primary);font-weight:900}.team-member-row small{display:block;color:var(--p-muted)}.member-role{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--p-primary) 10%,var(--p-surface));color:var(--p-primary);font-size:10px;font-weight:900}.team-ready-card{padding:24px;text-align:center}.team-ready-card .ready-icon{width:62px;height:62px;margin:auto;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--p-accent) 12%,var(--p-surface));color:var(--p-success);font-size:28px}.team-ready-card p{color:var(--p-muted)}.team-ready-check{display:flex;gap:10px;text-align:left;padding:12px;margin:14px 0;border:1px solid var(--p-border);border-radius:12px;background:var(--p-surface-2)}.team-ready-check input{width:auto!important}.team-ready-check small{display:block;color:var(--p-muted)}.credentials-once-card{margin-bottom:16px}.invite-badge{display:inline-block;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900}.invite-accepted,.invite-sent{background:#e8f8ee;color:#16723b}.invite-pending{background:#fff7d9;color:#8c6510}.invite-declined,.invite-cancelled,.invite-expired,.invite-failed{background:#fff0f2;color:#a63649}

/* GRAMY */
.event-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.event-choice-card{padding:18px;border:1px solid var(--p-border);border-radius:18px;background:var(--p-surface);box-shadow:var(--p-shadow);color:var(--p-text)}.event-choice-card.is-selected{border:2px solid var(--p-primary);background:linear-gradient(145deg,var(--p-surface),color-mix(in srgb,var(--p-primary) 7%,var(--p-surface)))}.event-choice-status{display:flex;justify-content:space-between;gap:8px;align-items:center}.event-status,.event-joined{padding:5px 8px;border-radius:999px;font-size:9px;font-weight:950;letter-spacing:.05em}.event-status-active{background:#e7f8ed;color:#17753c}.event-status-scheduled{background:#eef5ff;color:#285fa9}.theme-city .event-status-active,.theme-neon .event-status-active{background:#113d2a;color:#7ff5a8}.theme-city .event-status-scheduled,.theme-neon .event-status-scheduled{background:#0d3650;color:#73dfff}.event-joined{background:color-mix(in srgb,var(--p-primary) 10%,var(--p-surface));color:var(--p-primary)}.event-choice-card h2{margin:16px 0 4px;color:var(--p-text)}.event-choice-card>p{color:var(--p-muted)}.event-scenario{font-weight:900;color:var(--p-primary)!important}.event-choice-card dl{display:grid;gap:7px;margin:14px 0}.event-choice-card dl div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--p-border);padding-bottom:6px}.event-choice-card dt{color:var(--p-muted);font-size:11px}.event-choice-card dd{margin:0;text-align:right;font-size:11px;font-weight:800}.event-choice-card form button{width:100%}.selected-event-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:22px}.selected-event-panel h2{margin:4px 0}.selected-event-panel p{color:var(--p-muted)}.selected-event-readiness{display:grid;gap:7px;min-width:330px;text-align:right}.selected-event-readiness span{color:var(--p-muted);font-size:12px}.selected-event-readiness .btn{justify-self:end}.game-resource-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.game-resource-bar span{padding:8px 11px;border:1px solid var(--p-border);border-radius:999px;background:var(--p-surface);color:var(--p-text);font-size:12px;font-weight:850}.mission-card{max-width:850px;margin:auto;padding:28px;text-align:center}.mission-card h1{font-size:34px;color:var(--p-text)}.mission-riddle{font-size:19px;line-height:1.65;color:var(--p-text)}.mission-location{color:var(--p-primary);font-weight:800}.mission-stage-icon{width:72px;height:72px;margin:10px auto;display:grid;place-items:center;border-radius:22px;background:color-mix(in srgb,var(--p-primary) 10%,var(--p-surface));border:1px solid color-mix(in srgb,var(--p-primary) 35%,var(--p-border));color:var(--p-primary);font-size:25px;font-weight:950}.answer-form{margin-top:18px;text-align:left}.task-timer{font-size:24px;font-weight:900;color:var(--p-primary)!important}.task-timer.is-expired{color:var(--p-danger)!important}

/* Rankingi */
.ranking-event-switcher{margin-top:14px;max-width:480px}.ranking-event-switcher label{font-size:11px;font-weight:850}.ranking-hero-card{display:grid;grid-template-columns:1.4fr .6fr .6fr;gap:14px;align-items:center;margin-bottom:16px;padding:20px;border-radius:18px;background:linear-gradient(135deg,var(--p-primary-2),var(--p-primary));color:#fff;box-shadow:var(--p-shadow)}.ranking-hero-card h2{margin:4px 0;color:#fff}.ranking-hero-card span,.ranking-hero-card small{color:rgba(255,255,255,.82)}.ranking-my-stat{text-align:center;padding:12px;border-radius:14px;background:rgba(255,255,255,.12)}.ranking-my-stat strong{display:block;font-size:32px;color:#fff}.rankings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ranking-card>header{background:linear-gradient(90deg,var(--p-primary),var(--p-primary-2))}.ranking-full-list{list-style:none;margin:0;padding:0 14px 14px}.ranking-full-list li{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:11px 8px;border-bottom:1px solid var(--p-border);color:var(--p-text)}.ranking-full-list li.is-me{margin:5px 0;border:1px solid var(--p-primary);border-radius:12px;background:color-mix(in srgb,var(--p-primary) 8%,var(--p-surface))}.rank-number{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--p-surface-2);border:1px solid var(--p-border);font-weight:950}.rank-number.rank-1{background:#ffd955;color:#6d4b00}.rank-number.rank-2{background:#dce3ea;color:#44505d}.rank-number.rank-3{background:#e4a16a;color:#633211}.ranking-full-list small{display:block;color:var(--p-muted);font-size:10px}.ranking-empty{padding:18px}

/* Profile / theme selector. No floating controls. */
.profile-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.player-card-form{padding:16px}.appearance-card,.avatar-settings-card{margin-bottom:16px}.appearance-intro{padding:0 16px;color:var(--p-muted)!important}.player-theme-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:10px;padding:14px}.player-theme-choice{min-height:105px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:var(--p-surface-2)!important;color:var(--p-text)!important;border:2px solid var(--p-border)!important}.player-theme-choice>span{font-size:28px}.player-theme-choice small{color:var(--p-muted)}.player-theme-choice.active{border-color:var(--p-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--p-primary) 15%,transparent)}.theme-preview-green{background:linear-gradient(145deg,#eaf7e8,#c8e5bd)!important}.theme-preview-kids{background:linear-gradient(145deg,#fff0f5,#ffe8a9)!important}.theme-preview-game{background:linear-gradient(145deg,#e8f5ff,#e9dbff)!important}.theme-preview-city{background:linear-gradient(145deg,#0b2947,#14636a)!important;color:#fff!important}.theme-preview-heritage{background:linear-gradient(145deg,#fff5df,#d7c493)!important}.theme-preview-neon{background:linear-gradient(145deg,#061426,#10233c)!important;color:#91f7ff!important}.theme-preview-pastel{background:linear-gradient(145deg,#f7efff,#e9f8ff)!important}.avatar-choice-grid{display:flex;gap:12px;padding:14px}.avatar-choice-grid button{width:150px;display:grid;gap:7px;justify-items:center;background:var(--p-surface-2)!important;color:var(--p-text)!important;border:2px solid var(--p-border)!important}.avatar-choice-grid button.active{border-color:var(--p-primary)!important}.avatar-choice-grid img{width:86px;height:86px;object-fit:cover;border-radius:50%}

/* Help / Special */
.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.help-grid .player-panel-card p{padding:14px 14px 4px;margin:0;color:var(--p-muted)}
.special-task-page .card,.special-task-page .player-panel-card{background:var(--p-surface)!important;color:var(--p-text)!important}.special-task-page .special-hero{background:linear-gradient(135deg,var(--p-surface),color-mix(in srgb,var(--p-primary-2) 8%,var(--p-surface)))!important}.special-task-page .special-riddle,.special-task-page .special-body{color:var(--p-text)!important}

/* theme-catalog in the platform: seven choices only */
.theme-catalog-seven{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-choice-swatch{min-height:90px;display:grid;place-items:center;border-radius:14px;margin-bottom:10px}.theme-choice-swatch span{font-size:34px}.swatch-green{background:linear-gradient(135deg,#2d7b39,#88b84a)}.swatch-kids{background:linear-gradient(135deg,#ef4f85,#ffc93d)}.swatch-game{background:linear-gradient(135deg,#2c83ee,#8b49e8)}.swatch-city{background:linear-gradient(135deg,#071d34,#19c5c9)}.swatch-heritage{background:linear-gradient(135deg,#0f493a,#b78b2d)}.swatch-neon{background:linear-gradient(135deg,#04101f,#10d9f0 55%,#ff39aa)}.swatch-pastel{background:linear-gradient(135deg,#7a50ea,#55d3b0,#84c8ff)}

@media(max-width:1280px){
    .player-topnav-inner{grid-template-columns:auto 1fr auto}.player-account{display:none}.player-main-links{justify-content:flex-end}.player-dashboard-grid{grid-template-columns:minmax(245px,.8fr) minmax(0,1.5fr)}.player-dashboard-right{grid-column:1/-1;grid-template-columns:1fr 1fr}.event-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-theme-grid{grid-template-columns:repeat(4,minmax(110px,1fr))}
}
@media(max-width:900px){
    .player-topnav-inner{display:flex;gap:10px;overflow-x:auto;padding:9px 12px}.player-brand strong{display:none}.player-brand-mark{width:38px;height:38px}.player-main-links{display:flex;order:2;overflow-x:auto;justify-content:flex-start}.player-main-links a{padding:10px 9px;font-size:12px}.player-play-link{order:3;padding:10px 15px}.player-app-main{padding:18px 14px 50px}.player-dashboard-head{grid-template-columns:1fr}.player-event-strip{grid-template-columns:auto 1fr}.player-event-strip>a{grid-column:1/-1;text-align:center}.player-dashboard-grid{grid-template-columns:1fr}.player-dashboard-right{grid-column:auto;grid-template-columns:1fr}.player-dashboard-left{grid-template-columns:1fr 1fr}.player-progress-card{grid-column:1/-1}.team-create-layout,.team-management-grid,.rankings-grid,.profile-settings-grid{grid-template-columns:1fr}.event-choice-grid{grid-template-columns:1fr}.selected-event-panel,.ranking-hero-card{grid-template-columns:1fr}.selected-event-readiness{text-align:left;min-width:0}.selected-event-readiness .btn{justify-self:start}.player-theme-grid{grid-template-columns:repeat(3,minmax(100px,1fr))}.theme-catalog-seven{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
    .player-main-links a{font-size:11px}.player-topnav-inner{align-items:center}.player-play-link{font-size:12px}.player-dashboard-left{grid-template-columns:1fr}.player-profile-body{align-items:flex-start}.player-profile-avatar{width:86px;height:86px;flex-basis:86px}.player-resources-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-action-card{min-height:300px;padding:22px}.player-theme-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.avatar-choice-grid{flex-wrap:wrap}.team-create-fields{grid-template-columns:1fr}.invite-row{grid-template-columns:1fr}.invite-remove{width:100%}.help-grid,.theme-catalog-seven{grid-template-columns:1fr}
}
.player-resources-grid.bonus-detail-grid>div{min-height:92px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:13px;border-radius:14px;color:var(--p-text);border:1px solid var(--p-border);background:var(--p-surface-2)}
.player-resources-grid.bonus-detail-grid>div>span{grid-row:1/3;font-size:31px}.player-resources-grid.bonus-detail-grid>div small{font-size:11px;font-weight:850;color:var(--p-muted)}.player-resources-grid.bonus-detail-grid>div strong{font-size:20px;color:var(--p-text)}
.player-resources-grid.bonus-detail-grid .resource-life{background:#fff3f5;border-color:#ffb8c1}.player-resources-grid.bonus-detail-grid .resource-shield{background:#f1f7ff;border-color:#b7d6ff}.player-resources-grid.bonus-detail-grid .resource-hint{background:#fff9e9;border-color:#f6d47a}.player-resources-grid.bonus-detail-grid .resource-points{background:#f8f2ff;border-color:#d7b8ff}.player-resources-grid.bonus-detail-grid .resource-time{background:#f8f1ff;border-color:#d8b9ef}.player-resources-grid.bonus-detail-grid .resource-mult{background:#fff8e7;border-color:#edcc72}
.theme-city .player-resources-grid.bonus-detail-grid>div,.theme-neon .player-resources-grid.bonus-detail-grid>div{background:var(--p-surface-2);border-color:var(--p-border)}
.promo-code-card{margin-top:16px}.bonuses-page>.player-panel-card{margin-bottom:16px}.qr-scan-card{max-width:860px;margin:auto}.qr-scan-body{padding:20px}.qr-scan-body .actions{display:flex;gap:10px;flex-wrap:wrap}
.team-art-avatar{position:relative;overflow:hidden}.team-art-avatar .player-avatar-fallback{font-size:12px}.theme-game .team-art-avatar .player-avatar-fallback,.theme-pastel .team-art-avatar .player-avatar-fallback{opacity:0}

/* =========================================================
   HOTFIX 2026-09-03 — player running-game isolation
   Prevent legacy theme decoration layers from leaking into
   the unified player layout and keep the mission centered.
   ========================================================= */
body.player-app::before,
body.player-app::after {
    content: none !important;
    display: none !important;
    background: none !important;
}

body.player-app .running-game-page {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

body.player-app .running-game-page .game-resource-bar {
    width: 100%;
    justify-content: center;
    align-items: center;
    margin: 0 auto 16px;
}

body.player-app .running-game-page .mission-card {
    width: min(850px, 100%);
    max-width: 850px;
    min-width: 0;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    background: var(--p-surface) !important;
    color: var(--p-text) !important;
}

body.player-app .running-game-page .mission-card h1,
body.player-app .running-game-page .mission-card h2,
body.player-app .running-game-page .mission-card p,
body.player-app .running-game-page .mission-card label,
body.player-app .running-game-page .mission-card strong,
body.player-app .running-game-page .mission-card span:not(.mission-stage-icon):not(#task-timer) {
    visibility: visible;
}

@media (max-width: 900px) {
    body.player-app .running-game-page .game-resource-bar {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 4px;
        scrollbar-width: thin;
    }
    body.player-app .running-game-page .game-resource-bar span {
        flex: 0 0 auto;
    }
}

/* =========================================================
   PATCH 8–9 · 2026-09-03
   Larger resources + complete GRAMY event context / task map
   ========================================================= */
body.player-app .running-game-page {
    max-width: 1320px;
}

/* 8. Resources: larger, readable at a glance */
body.player-app .running-game-page .game-resource-bar {
    display: grid;
    grid-template-columns: repeat(6, minmax(132px, 1fr));
    gap: 10px;
    margin: 0 auto 18px;
}
body.player-app .running-game-page .game-resource-bar .game-resource-pill {
    min-height: 70px;
    padding: 10px 13px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    border: 1px solid var(--p-border);
    border-radius: 16px;
    background: var(--p-surface);
    color: var(--p-text);
    box-shadow: 0 7px 20px color-mix(in srgb, var(--p-text) 7%, transparent);
}
body.player-app .running-game-page .game-resource-icon {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    font-size: 25px;
    line-height: 1;
}
body.player-app .running-game-page .game-resource-pill > span:last-child {
    min-width: 0;
    display: grid;
    gap: 2px;
}
body.player-app .running-game-page .game-resource-pill small {
    color: var(--p-muted);
    font-size: 10px;
    font-weight: 850;
    line-height: 1.1;
}
body.player-app .running-game-page .game-resource-pill strong {
    color: var(--p-text);
    font-size: 17px;
    line-height: 1.1;
    white-space: nowrap;
}
body.player-app .running-game-page .resource-life { border-color: color-mix(in srgb, #ff5b72 38%, var(--p-border)); }
body.player-app .running-game-page .resource-shield { border-color: color-mix(in srgb, #4d9fff 38%, var(--p-border)); }
body.player-app .running-game-page .resource-hint { border-color: color-mix(in srgb, #f4b82f 48%, var(--p-border)); }
body.player-app .running-game-page .resource-points { border-color: color-mix(in srgb, #d8a928 48%, var(--p-border)); }
body.player-app .running-game-page .resource-time { border-color: color-mix(in srgb, #9d6bce 42%, var(--p-border)); }
body.player-app .running-game-page .resource-mult { border-color: color-mix(in srgb, #ff8f1f 48%, var(--p-border)); }

/* 9. Full event context during the game */
.game-event-overview {
    margin-bottom: 18px;
    padding: 20px 22px;
    overflow: visible;
}
.game-event-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--p-border);
}
.game-event-heading h1 {
    margin: 3px 0 5px;
    color: var(--p-text);
    font-size: clamp(24px, 2.4vw, 34px);
    line-height: 1.05;
}
.game-event-heading p:last-child {
    margin: 0;
    color: var(--p-muted);
    font-size: 13px;
}
.game-event-heading .event-status {
    flex: 0 0 auto;
    padding: 8px 11px;
    border: 1px solid var(--p-border);
}
.event-status-draft { background: #fff6df; color: #8d6207; }
.event-status-finished { background: #f0f2f5; color: #596273; }
.event-status-archived { background: #ececf1; color: #656575; }
.theme-city .event-status-draft,.theme-neon .event-status-draft { background:#3b3013;color:#ffd66c; }
.theme-city .event-status-finished,.theme-neon .event-status-finished,
.theme-city .event-status-archived,.theme-neon .event-status-archived { background:#17283a;color:#b6c4d2; }

.game-event-meta {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px;
    margin-top: 14px;
}
.game-event-meta > div {
    min-height: 74px;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 9px;
    align-items: center;
    padding: 10px 11px;
    border-radius: 13px;
    border: 1px solid var(--p-border);
    background: var(--p-surface-2);
    min-width: 0;
}
.game-event-meta > div > span {
    grid-row: 1 / 3;
    font-size: 22px;
}
.game-event-meta small {
    align-self: end;
    color: var(--p-muted);
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .035em;
}
.game-event-meta strong {
    align-self: start;
    color: var(--p-text);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.game-event-progress {
    margin-top: 14px;
}
.game-event-progress > div:first-child {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: var(--p-muted);
    font-size: 11px;
    font-weight: 800;
    margin-bottom: 6px;
}
.game-event-progress > div:first-child strong { color: var(--p-primary); }
.game-event-progress-track {
    height: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--p-border) 65%, var(--p-surface-2));
}
.game-event-progress-track > span {
    display: block;
    height: 100%;
    min-width: 2px;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--p-primary), var(--p-accent));
}

/* Current mission + event task list */
.game-running-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr);
    gap: 18px;
    align-items: start;
}
body.player-app .running-game-page .game-running-grid .mission-card {
    width: 100%;
    max-width: none;
    margin: 0;
    min-height: 500px;
}
.game-tasks-card {
    position: sticky;
    top: 104px;
    max-height: calc(100vh - 128px);
    overflow: hidden;
}
.game-tasks-card > header {
    justify-content: flex-start;
}
.game-tasks-card > header strong {
    margin-left: auto;
    color: inherit;
    font-size: 12px;
}
.game-task-list {
    max-height: min(540px, calc(100vh - 235px));
    overflow: auto;
    padding: 8px 12px;
}
.game-task-row {
    min-height: 58px;
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: 10px;
    align-items: center;
    padding: 9px 5px;
    border-bottom: 1px solid var(--p-border);
    color: var(--p-text);
}
.game-task-row:last-child { border-bottom: 0; }
.game-task-number {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 1px solid var(--p-border);
    background: var(--p-surface-2);
    color: var(--p-muted);
    font-size: 12px;
    font-weight: 950;
}
.game-task-row > div { min-width: 0; }
.game-task-row strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--p-text);
    font-size: 12px;
}
.game-task-row small {
    display: block;
    margin-top: 3px;
    color: var(--p-muted);
    font-size: 10px;
}
.game-task-row.is-current {
    margin: 5px 0;
    padding-left: 8px;
    padding-right: 8px;
    border: 1px solid color-mix(in srgb, var(--p-primary) 45%, var(--p-border));
    border-radius: 12px;
    background: color-mix(in srgb, var(--p-primary) 8%, var(--p-surface));
}
.game-task-row.is-current .game-task-number {
    background: var(--p-primary);
    border-color: var(--p-primary);
    color: #fff;
}
.game-task-row.is-current strong { color: var(--p-primary); }
.game-task-row.is-done .game-task-number { background:#e7f8ed;border-color:#a8dfba;color:#17753c; }
.game-task-row.is-missed .game-task-number { background:#fff4dc;border-color:#efd08c;color:#91610a; }
.game-task-row.is-locked { opacity:.68; }
.theme-city .game-task-row.is-done .game-task-number,.theme-neon .game-task-row.is-done .game-task-number { background:#113d2a;color:#7ff5a8;border-color:#2c7050; }
.theme-city .game-task-row.is-missed .game-task-number,.theme-neon .game-task-row.is-missed .game-task-number { background:#3b3013;color:#ffd66c;border-color:#6f5c2c; }
.game-special-link {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    margin: 8px 12px 12px;
    padding: 11px 12px;
    border: 1px solid color-mix(in srgb, var(--p-accent-2) 55%, var(--p-border));
    border-radius: 11px;
    background: color-mix(in srgb, var(--p-accent-2) 8%, var(--p-surface));
    color: var(--p-text);
    text-decoration: none;
    font-size: 11px;
    font-weight: 850;
}
.game-special-link strong { color: var(--p-primary); }

/* Lobby cards show enough event information before play. */
.play-lobby-page .event-choice-card dl { grid-template-columns: 1fr; }
.play-lobby-page .event-choice-card dl div { align-items: baseline; }

@media (max-width: 1180px) {
    body.player-app .running-game-page .game-resource-bar { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
    .game-event-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    body.player-app .running-game-page .game-resource-bar {
        display: flex;
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 5px;
    }
    body.player-app .running-game-page .game-resource-bar .game-resource-pill {
        flex: 0 0 150px;
    }
    .game-event-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .game-running-grid { grid-template-columns: 1fr; }
    .game-tasks-card { position: static;max-height:none; }
    .game-task-list { max-height:none; }
}
@media (max-width: 620px) {
    .game-event-overview { padding: 16px; }
    .game-event-heading { display: grid; }
    .game-event-heading .event-status { justify-self:start; }
    .game-event-meta { grid-template-columns: 1fr; }
    body.player-app .running-game-page .game-resource-bar .game-resource-pill { flex-basis: 142px;min-height:66px; }
    body.player-app .running-game-page .game-resource-icon { width:34px;height:34px;font-size:23px; }
}
/* Neutralize the old single-level resource-pill rule for the new nested markup. */
body.player-app .running-game-page .game-resource-bar .game-resource-pill span {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-weight: inherit;
}
body.player-app .running-game-page .game-resource-bar .game-resource-pill .game-resource-icon {
    font-size: 25px;
}

/* ========================================================================
   ORGANIZATION PANEL v1 — shared 7-theme shell
   ======================================================================== */
.auth-card-wide{max-width:1180px}.org-capability-table-wrap{display:grid}.capability-table .selected{outline:2px solid var(--primary);outline-offset:-2px;background:color-mix(in srgb,var(--primary) 7%,transparent)}.cap-yes{font-weight:900;color:#11884f}.cap-no{font-weight:800;color:#a85836}

body.org-app{min-height:100vh;background:var(--bg);color:var(--text)}
.org-topnav{position:sticky;top:0;z-index:1400;background:color-mix(in srgb,var(--card) 94%,transparent);border-bottom:1px solid var(--border-color);box-shadow:0 5px 22px rgba(30,45,75,.08);backdrop-filter:blur(15px)}
.org-topnav-inner{max-width:1680px;margin:auto;min-height:78px;padding:0 22px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px}.org-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-size:20px}.org-brand .brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--primary);color:#fff;font-weight:950}.org-main-links{display:flex;align-items:stretch;justify-content:center;min-width:0;overflow-x:auto}.org-main-links a{display:flex;align-items:center;padding:0 13px;min-height:78px;text-decoration:none;color:var(--text);font-weight:850;white-space:nowrap;border-bottom:4px solid transparent;transition:.15s}.org-main-links a:hover,.org-main-links a.active-link{color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,transparent);border-bottom-color:var(--primary)}
.org-mode-actions{display:flex;align-items:center;gap:8px}.org-mode-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:13px;text-decoration:none;font-weight:950;white-space:nowrap}.org-mode-play{background:var(--success,#19a25f);color:#fff}.org-create-game{background:var(--primary);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 24%,transparent)}.org-create-game.active-link{outline:3px solid color-mix(in srgb,var(--primary) 25%,transparent)}
.org-account{display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:center;min-width:180px}.org-account>a:first-child{grid-column:1/-1;text-decoration:none;color:var(--text);display:flex;flex-direction:column;line-height:1.15}.org-account small{color:var(--muted);font-size:11px}.org-mini-link,.org-logout{font-size:11px;color:var(--muted);text-decoration:none;font-weight:800}.org-logout{text-align:right}.org-main-shell{max-width:1500px;margin:0 auto;padding:28px 22px 70px;display:grid;gap:20px}
.org-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.org-page-head h1{margin:.15em 0}.org-primary-action{white-space:nowrap}.org-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:center;padding:30px}.org-hero h1{font-size:clamp(34px,5vw,58px);margin:.1em 0}.org-capability-card{display:grid;gap:10px;padding:20px;border-radius:18px;background:color-mix(in srgb,var(--primary) 8%,var(--card));border:1px solid color-mix(in srgb,var(--primary) 23%,var(--border-color))}.org-capability-card strong{font-size:19px}.org-capability-card span{display:flex;justify-content:space-between;gap:15px}
.org-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.org-kpi-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))}.org-kpi-card{min-height:118px;padding:18px;border-radius:20px;background:var(--card);border:1px solid var(--border-color);box-shadow:var(--shadow);display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;align-items:center}.org-kpi-card>span{grid-row:1/3;font-size:34px}.org-kpi-card strong{font-size:31px;line-height:1}.org-kpi-card small{color:var(--muted);font-weight:800}.org-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.org-next-event h2{font-size:30px}.org-event-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:16px 0 22px}.org-event-meta span{font-weight:800}.org-steps{list-style:none;padding:0;margin:15px 0 0;display:grid;gap:9px}.org-steps li{display:flex;align-items:center;gap:11px}.org-steps b{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:var(--primary);color:#fff}.org-steps span{font-weight:800}
.org-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.org-scenario-card{display:flex;flex-direction:column;gap:12px}.org-scenario-card h2{margin:0;font-size:23px}.org-scenario-card p{color:var(--muted);line-height:1.55;min-height:48px}.org-scenario-top,.org-scenario-stats{display:flex;flex-wrap:wrap;gap:8px}.org-scenario-stats{padding:12px 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.org-scenario-stats span{font-size:13px;font-weight:800}.org-scenario-card .actions{margin-top:auto}
.org-event-list{display:grid;gap:14px}.org-event-card{padding:20px}.org-event-card-main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.org-event-card-main h2{margin:8px 0 4px}.org-event-card-main p{margin:0;color:var(--muted)}.org-event-card-stats{display:flex;flex-wrap:wrap;gap:9px 18px;margin:16px 0;padding:13px 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.org-event-card-stats span{font-size:13px;font-weight:800}.org-inline-status{display:flex;align-items:center;justify-content:flex-end;gap:9px}.org-inline-status label{display:flex;align-items:center;gap:8px;font-weight:800}
.badge-ok{background:#dcf8e8!important;color:#0f7845!important}.badge-warn{background:#fff0d3!important;color:#935a00!important}.org-event-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.org-event-header h1{font-size:clamp(30px,4vw,48px);margin:.1em 0}.org-event-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.org-subtabs{display:flex;gap:7px;overflow-x:auto;padding:7px;border-radius:17px;background:var(--card);border:1px solid var(--border-color);box-shadow:var(--shadow)}.org-subtabs a{padding:11px 14px;border-radius:11px;text-decoration:none;color:var(--text);font-weight:850;white-space:nowrap}.org-subtabs a:hover,.org-subtabs a.active{background:var(--primary);color:#fff}.org-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.org-details div{padding:12px;border:1px solid var(--border-color);border-radius:13px}.org-details dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.org-details dd{margin:4px 0 0;font-weight:850}.org-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.org-action-grid a{display:flex;align-items:center;min-height:62px;padding:13px;border-radius:14px;border:1px solid var(--border-color);text-decoration:none;color:var(--text);font-weight:850;background:color-mix(in srgb,var(--card) 90%,var(--primary) 10%)}
.org-resource-list,.org-reward-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.org-resource-list li,.org-reward-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border-radius:13px;border:1px solid var(--border-color)}.org-resource-list span,.org-reward-list div{display:grid}.org-resource-list small,.org-reward-list small{color:var(--muted)}.org-reward-list>li>span{font-size:27px}.org-ranking-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.org-ranking-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--border-color);border-radius:13px}.org-ranking-list li>b:first-child{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary)}.org-ranking-list li span{display:grid;font-weight:850}.org-ranking-list small{color:var(--muted);font-weight:600}.org-ranking-list .rank-1{border-color:#d6ab35;background:color-mix(in srgb,#ffd86b 12%,var(--card))}.org-ranking-list .rank-2{background:color-mix(in srgb,#cbd5e1 15%,var(--card))}.org-ranking-list .rank-3{background:color-mix(in srgb,#ed9f61 11%,var(--card))}.org-ranking-summary{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.org-ranking-summary>div{display:grid;margin-right:auto}.org-ranking-summary small{color:var(--muted)}
.org-class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.org-class-card ul{margin:12px 0 0;padding-left:20px}.org-class-card li{padding:3px 0}.org-bonus-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.org-bonus-item{display:flex;gap:10px;align-items:center;padding:11px;border:1px solid var(--border-color);border-radius:12px}.org-bonus-item>span{font-size:28px}.org-bonus-item div{display:grid}.org-bonus-item small{color:var(--muted)}.org-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.org-help-grid article{position:relative}.org-help-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--primary);color:#fff;font-weight:950;font-size:20px}.org-help-grid a{font-weight:850}.org-permission-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.org-permission-form label{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:800}.org-permission-form input{width:auto}.player-mode-switch{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:12px;background:var(--card);border:1px solid var(--border-color);color:var(--text);text-decoration:none;font-size:12px;font-weight:950}

/* Theme-specific organization accents: same 7 skins as player */
body.theme-green.org-app{--org-accent:#2f8e57}body.theme-kids.org-app{--org-accent:#f05491}body.theme-game.org-app{--org-accent:#5b62e8}body.theme-city.org-app{--org-accent:#10c9c4}body.theme-heritage.org-app{--org-accent:#9b793c}body.theme-neon.org-app{--org-accent:#00dff4}body.theme-pastel.org-app{--org-accent:#8a6be8}
body.org-app .org-brand .brand-mark,body.org-app .org-create-game,body.org-app .org-main-links a:hover,body.org-app .org-main-links a.active-link,body.org-app .org-subtabs a:hover,body.org-app .org-subtabs a.active,body.org-app .org-steps b,body.org-app .org-help-icon{background:var(--org-accent,var(--primary))}body.org-app .org-main-links a:hover,body.org-app .org-main-links a.active-link{color:#fff;border-bottom-color:var(--org-accent,var(--primary))}body.org-app .org-create-game{box-shadow:0 8px 18px color-mix(in srgb,var(--org-accent,var(--primary)) 25%,transparent)}
body.theme-neon.org-app{background:#020914;color:#d7f8ff}body.theme-neon.org-app .org-topnav,body.theme-neon.org-app .card,body.theme-neon.org-app .org-subtabs,body.theme-neon.org-app .org-kpi-card{background:#061321;border-color:#0d455a;color:#d7f8ff;box-shadow:0 0 20px rgba(0,223,244,.07)}body.theme-neon.org-app .org-account small,body.theme-neon.org-app .muted{color:#85a9ba}body.theme-neon.org-app .table td,body.theme-neon.org-app .table th{border-color:#12394b;color:#cfeefa}body.theme-neon.org-app input,body.theme-neon.org-app select,body.theme-neon.org-app textarea{background:#071a28;color:#e6fbff;border-color:#18536c}
body.theme-heritage.org-app{background:#f5efe2}body.theme-heritage.org-app .org-topnav,body.theme-heritage.org-app .card,body.theme-heritage.org-app .org-kpi-card,body.theme-heritage.org-app .org-subtabs{background:#fffaf0;border-color:#d8c79e}body.theme-city.org-app{background:#031727;color:#dceef8}body.theme-city.org-app .org-topnav,body.theme-city.org-app .card,body.theme-city.org-app .org-kpi-card,body.theme-city.org-app .org-subtabs{background:#08263a;border-color:#17455c;color:#dceef8}body.theme-city.org-app input,body.theme-city.org-app select,body.theme-city.org-app textarea{background:#0b3047;color:#e9fbff;border-color:#1f5d77}body.theme-city.org-app .muted{color:#9bb8c8}
body.theme-pastel.org-app{background:#f6f5fd}body.theme-pastel.org-app .org-topnav,body.theme-pastel.org-app .card,body.theme-pastel.org-app .org-kpi-card,body.theme-pastel.org-app .org-subtabs{background:#fff;border-color:#e3def4}

@media(max-width:1250px){.org-topnav-inner{grid-template-columns:auto minmax(0,1fr) auto}.org-account{grid-column:1/-1;display:flex;justify-content:flex-end;padding-bottom:8px}.org-account>a:first-child{margin-right:auto}.org-main-links a{padding:0 9px;font-size:13px}.org-kpi-grid-five{grid-template-columns:repeat(3,minmax(0,1fr))}.org-scenario-grid,.org-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.org-topnav{position:relative}.org-topnav-inner{grid-template-columns:1fr auto;padding-top:10px}.org-main-links{grid-column:1/-1;order:3;justify-content:flex-start;border-top:1px solid var(--border-color)}.org-main-links a{min-height:54px}.org-mode-actions{grid-column:2}.org-account{order:4}.org-hero{grid-template-columns:1fr}.org-kpi-grid,.org-kpi-grid-five{grid-template-columns:repeat(2,minmax(0,1fr))}.org-dashboard-grid,.org-scenario-grid,.org-class-grid,.org-help-grid{grid-template-columns:1fr}.org-page-head,.org-event-header,.org-event-card-main{align-items:flex-start;flex-direction:column}.org-details,.org-action-grid{grid-template-columns:1fr}}
@media(max-width:560px){.org-main-shell{padding:16px 10px 50px}.org-topnav-inner{padding-left:10px;padding-right:10px}.org-kpi-grid,.org-kpi-grid-five{grid-template-columns:1fr}.org-mode-actions{flex-direction:column;align-items:stretch}.org-mode-actions a{font-size:11px;padding:0 10px}.org-bonus-catalog{grid-template-columns:1fr}.capability-table{min-width:830px}}
.org-mode-current{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 13px;border-radius:13px;border:2px solid var(--org-accent,var(--primary));color:var(--org-accent,var(--primary));font-size:11px;font-weight:950;white-space:nowrap;background:color-mix(in srgb,var(--org-accent,var(--primary)) 7%,var(--card))}

/* ========================================================================
   UI CONSISTENCY + COMMUNICATOR · 2026-09-03
   One-line account/navigation shell for player and organization panels.
   ======================================================================== */
.player-topnav-inner,
.org-topnav-inner{
    width:100%;
    max-width:1540px;
    min-height:78px;
    margin:0 auto;
    padding:10px 24px;
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:nowrap;
}
.player-brand,.org-brand{flex:0 0 auto;min-width:max-content}
.player-main-links,.org-main-links{
    flex:1 1 auto;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    overflow-x:auto;
    scrollbar-width:none;
}
.player-main-links::-webkit-scrollbar,.org-main-links::-webkit-scrollbar{display:none}
.org-main-links a{
    position:relative;
    min-height:0;
    padding:12px 11px;
    border:0;
    border-radius:11px;
    color:var(--text);
    font-size:13px;
    font-weight:850;
    line-height:1.1;
    white-space:nowrap;
}
.org-main-links a:hover,.org-main-links a.active-link{
    color:var(--org-accent,var(--primary));
    background:color-mix(in srgb,var(--org-accent,var(--primary)) 10%,transparent);
}
.org-main-links a.active-link::after{
    content:"";
    position:absolute;
    left:16px;right:16px;bottom:3px;height:3px;border-radius:3px;
    background:var(--org-accent,var(--primary));
}
.org-mode-actions,.player-account,.org-account{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}
.org-mode-actions a,.org-mode-current,.org-create-game,.org-mode-play,
.player-play-link,.player-mode-switch{min-height:44px;box-sizing:border-box}
.org-account{min-width:0}
.org-account-identity{
    display:flex!important;
    flex-direction:row!important;
    align-items:center;
    gap:8px;
    min-width:0;
    max-width:190px;
    text-decoration:none;
    color:var(--text);
}
.org-account-identity>span:last-child{display:grid;line-height:1.12;min-width:0}
.org-account-identity strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.org-account-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.org-account-avatar{
    flex:0 0 40px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(145deg,color-mix(in srgb,var(--org-accent,var(--primary)) 18%,#fff),color-mix(in srgb,var(--org-accent,var(--primary)) 35%,#fff));
    border:2px solid color-mix(in srgb,var(--org-accent,var(--primary)) 22%,#fff);
    color:var(--org-accent,var(--primary));font-weight:950;font-size:17px;
}
.player-icon-link,.org-icon-link{
    position:relative;
    flex:0 0 40px;
    width:40px;height:40px;
    display:grid!important;
    place-items:center;
    border:1px solid var(--p-border,var(--border-color));
    border-radius:12px;
    background:var(--p-surface,var(--card));
    color:var(--p-text,var(--text));
    text-decoration:none;
    font-size:17px;
    line-height:1;
}
.player-icon-link:hover,.org-icon-link:hover{
    border-color:var(--p-primary,var(--org-accent,var(--primary)));
    background:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 10%,var(--p-surface,var(--card)));
}
.player-icon-link b,.org-icon-link b{
    position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;
    display:grid;place-items:center;background:#ef476f;color:#fff;font-size:10px;font-weight:950;border:2px solid var(--p-nav,var(--card));
}
.player-logout,.org-logout{
    min-height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;
    border:1px solid var(--p-border,var(--border-color));border-radius:11px;
    background:var(--p-surface,var(--card));color:var(--p-text,var(--text));
    text-decoration:none;font-size:12px;font-weight:850;white-space:nowrap;
}
.org-main-shell{width:100%;max-width:1540px;padding:26px 28px 70px}

/* Communicator */
.message-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:18px;align-items:stretch;min-height:620px}
.message-sidebar,.message-conversation{min-width:0;overflow:hidden}
.message-sidebar{padding:0!important;display:flex;flex-direction:column}
.message-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 18px 12px;border-bottom:1px solid var(--p-border,var(--border-color))}
.message-sidebar-head h2{margin:2px 0 0}.message-total-badge{min-width:31px;height:31px;padding:0 8px;border-radius:16px;display:grid;place-items:center;background:var(--p-primary,var(--org-accent,var(--primary)));color:#fff;font-weight:950}
.message-compose{border-bottom:1px solid var(--p-border,var(--border-color));padding:0 16px 14px}.message-compose summary{cursor:pointer;padding:13px 0;font-weight:900;color:var(--p-primary,var(--org-accent,var(--primary)))}
.message-compose-form{display:grid;gap:8px;padding:10px;border:1px solid var(--p-border,var(--border-color));border-radius:13px;background:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 4%,var(--p-surface,var(--card)));margin-bottom:10px}.message-compose-form label{font-size:11px;font-weight:900}.message-compose-form select,.message-compose-form textarea,.message-reply-form textarea{width:100%;box-sizing:border-box}.message-channel-form{border-style:dashed}
.message-thread-list{display:grid;gap:4px;padding:10px;overflow:auto;max-height:480px}.message-thread-link{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px 10px;border-radius:12px;text-decoration:none;color:var(--p-text,var(--text));border:1px solid transparent}.message-thread-link>span{display:grid;min-width:0}.message-thread-link strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-thread-link small{color:var(--p-muted,var(--muted));font-size:10px;margin-top:3px}.message-thread-link b{min-width:23px;height:23px;padding:0 6px;border-radius:12px;display:grid;place-items:center;background:#ef476f;color:#fff;font-size:10px}.message-thread-link:hover,.message-thread-link.active{border-color:var(--p-primary,var(--org-accent,var(--primary)));background:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 9%,transparent)}
.message-conversation{padding:0!important;display:flex;flex-direction:column}.message-conversation-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px;border-bottom:1px solid var(--p-border,var(--border-color))}.message-conversation-head h2{margin:2px 0 0}.message-stream{flex:1 1 auto;min-height:390px;max-height:620px;overflow:auto;padding:20px;display:flex;flex-direction:column;gap:10px;background:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 2.5%,var(--p-surface,var(--card)))}
.message-bubble{max-width:min(74%,720px);padding:11px 13px;border-radius:15px;border:1px solid var(--p-border,var(--border-color));background:var(--p-surface,var(--card));color:var(--p-text,var(--text));box-shadow:0 4px 12px rgba(20,30,50,.04)}.message-bubble.mine{align-self:flex-end;background:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 12%,var(--p-surface,var(--card)));border-color:color-mix(in srgb,var(--p-primary,var(--org-accent,var(--primary))) 28%,var(--p-border,var(--border-color)))}.message-bubble.theirs{align-self:flex-start}.message-bubble header{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:5px}.message-bubble header strong{font-size:11px}.message-bubble time{font-size:9px;color:var(--p-muted,var(--muted))}.message-bubble p{margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.5}.message-reply-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:15px;border-top:1px solid var(--p-border,var(--border-color));background:var(--p-surface,var(--card))}.message-reply-form textarea{min-height:64px;resize:vertical}.message-reply-form button{min-width:110px}.message-no-thread{margin:auto;text-align:center;max-width:420px;padding:40px}.message-no-thread>span{font-size:52px}.message-empty{text-align:center}
body.player-app .message-sidebar,body.player-app .message-conversation{background:var(--p-surface);border-color:var(--p-border);color:var(--p-text)}
body.player-app .message-compose-form select,body.player-app .message-compose-form textarea,body.player-app .message-reply-form textarea{background:var(--p-surface);border-color:var(--p-border);color:var(--p-text)}
body.org-app .message-layout .card{color:var(--text)}

/* Global front-end guardrails: keep cards, icons and buttons inside their boxes. */
.landing-page img,.auth-page img,.org-app img,.player-app img{max-width:100%;height:auto}
.landing-page .btn,.landing-page button,.auth-page button,.org-app button,.player-app button{max-width:100%}
.landing-page .card,.auth-page .card,.org-app .card,.player-app .card{min-width:0}
.landing-page .portal-switch,.auth-page .portal-switch{align-items:stretch}
.landing-page .portal-card,.auth-page .portal-card{min-width:0;overflow:hidden}
.landing-page .portal-card span,.auth-page .portal-card span{overflow-wrap:anywhere}

@media(max-width:1320px){
    .player-topnav-inner,.org-topnav-inner{padding-left:14px;padding-right:14px;gap:9px}
    .player-main-links a,.org-main-links a{padding-left:8px;padding-right:8px;font-size:12px}
    .org-account-identity{max-width:135px}.org-account-identity small{display:none}
    .org-mode-actions a,.org-mode-current{padding-left:10px;padding-right:10px;font-size:10px}
}
@media(max-width:1080px){
    .player-topnav-inner,.org-topnav-inner{overflow-x:auto;scrollbar-width:thin}
    .player-main-links,.org-main-links{flex:0 0 auto;overflow:visible}
    .player-account-link>span:last-child,.org-account-identity>span:last-child{display:none}
    .org-account-identity{width:40px}
    .player-account,.org-account,.org-mode-actions{flex:0 0 auto}
    .message-layout{grid-template-columns:300px minmax(0,1fr)}
}
@media(max-width:760px){
    .player-topnav,.org-topnav{position:sticky}
    .player-topnav-inner,.org-topnav-inner{min-height:64px;padding:8px 10px}
    .player-brand strong,.org-brand strong{display:none}
    .player-main-links a,.org-main-links a{font-size:11px;padding:9px 7px}
    .player-play-link,.org-create-game,.org-mode-play,.org-mode-current{min-height:38px;padding:0 11px;font-size:10px}
    .player-icon-link,.org-icon-link{width:36px;height:36px;flex-basis:36px}.player-logout,.org-logout{min-height:36px;padding:0 9px;font-size:10px}
    .org-main-shell,.player-app-main{padding-left:12px;padding-right:12px}
    .message-layout{grid-template-columns:1fr;min-height:0}.message-thread-list{max-height:260px}.message-stream{min-height:320px;max-height:520px}.message-bubble{max-width:88%}
}
@media(max-width:520px){
    .message-reply-form{grid-template-columns:1fr}.message-reply-form button{width:100%}
    .message-bubble{max-width:94%}
}
.app-nav-user{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.app-nav-icon{position:relative;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border-color);border-radius:11px;background:var(--card);text-decoration:none;color:var(--text)}.app-nav-icon b{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;display:grid;place-items:center;background:#ef476f;color:#fff;font-size:9px;border:2px solid var(--card)}


/* ======================================================================
   PATCH 10A — compact shared skin selector (platform + player profile)
   ====================================================================== */
.theme-selector-panel{
    width:100%;
    max-width:none;
    padding:0!important;
    overflow:hidden;
    border:1px solid #d9e2f1!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 12px 32px rgba(39,58,100,.08)!important;
}
.theme-selector-header{
    min-height:46px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 18px!important;
    margin:0!important;
    color:#fff!important;
    background:linear-gradient(90deg,#3b82f6 0%,#7c3aed 100%)!important;
    border:0!important;
}
.theme-selector-header span{font-size:18px;line-height:1}
.theme-selector-header strong{color:#fff!important;font-size:16px;font-weight:900}
.theme-selector-intro{
    margin:0!important;
    padding:18px 18px 4px!important;
    color:#65718e!important;
    font-size:14px;
    line-height:1.5;
}
.theme-selector-grid{
    display:grid;
    grid-template-columns:repeat(7,minmax(118px,1fr));
    gap:10px;
    padding:14px 18px 16px;
}
.theme-selector-choice{
    appearance:none;
    -webkit-appearance:none;
    min-width:0;
    min-height:108px;
    margin:0;
    padding:12px 9px;
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    border:2px solid #d6dfed!important;
    border-radius:15px!important;
    box-shadow:none!important;
    cursor:pointer;
    text-align:center;
    font:inherit;
    transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.theme-selector-choice:hover{transform:translateY(-2px);border-color:#74a7ff!important;box-shadow:0 8px 18px rgba(48,94,170,.12)!important}
.theme-selector-choice.active{border-color:#2f80ed!important;box-shadow:0 0 0 3px rgba(47,128,237,.18)!important}
.theme-selector-icon{font-size:26px;line-height:1.1}
.theme-selector-choice strong{font-size:14px;font-weight:900;line-height:1.15;color:inherit!important}
.theme-selector-choice small{font-size:11px;font-weight:800;color:rgba(54,68,105,.82)}
.theme-selector-choice.theme-preview-city small,
.theme-selector-choice.theme-preview-neon small{color:rgba(232,247,255,.74)}
.org-app .theme-selector-panel{margin:0 0 20px}
.player-app .theme-selector-panel{margin-bottom:16px}
@media(max-width:1220px){.theme-selector-grid{grid-template-columns:repeat(4,minmax(118px,1fr))}}
@media(max-width:760px){.theme-selector-grid{grid-template-columns:repeat(2,minmax(120px,1fr));padding:12px}.theme-selector-intro{padding:14px 14px 2px!important}}
@media(max-width:430px){.theme-selector-grid{grid-template-columns:1fr}.theme-selector-choice{min-height:88px}}
/* readable labels on light and dark skin preview tiles */
.theme-selector-choice.theme-preview-green{color:#245c2a!important}
.theme-selector-choice.theme-preview-kids{color:#913b63!important}
.theme-selector-choice.theme-preview-game{color:#3a3c87!important}
.theme-selector-choice.theme-preview-heritage{color:#4f421f!important}
.theme-selector-choice.theme-preview-pastel{color:#49327b!important}
.theme-selector-choice.theme-preview-city{color:#ffffff!important}
.theme-selector-choice.theme-preview-neon{color:#91f7ff!important}

/* ======================================================================
   ENIGMIA PANEL SKINS — 4 additional layouts for GRAM + ORGANIZUJĘ
   Added as extras: existing 7 skins remain untouched. Total: 11.
   IDs: classic / shadow / relic / ice
   ====================================================================== */

/* Shared design tokens so the four new themes also work on auth/generic cards. */
body.theme-classic{
    --bg:#eef5ef;--surface:#fffdf6;--text:#17392e;--muted:#61736a;--primary:#126247;--primary-dark:#0a4935;--success:#1d9b5b;--warning:#c99228;--border-color:#d3dfd4;--gradient-main:linear-gradient(135deg,#126247,#2b9b6c);--shadow:0 18px 42px rgba(25,70,52,.12);
}
body.theme-shadow{
    --bg:#06111a;--surface:#0b1a24;--text:#f2e3bf;--muted:#98a8b3;--primary:#c89334;--primary-dark:#8e6221;--success:#2fa96d;--warning:#e3aa43;--danger:#e55f6f;--border-color:#27404c;--gradient-main:linear-gradient(135deg,#8d6728,#e0ae4e);--shadow:0 18px 48px rgba(0,0,0,.32);
}
body.theme-relic{
    --bg:#d9ba83;--surface:#f3e0b9;--text:#422a15;--muted:#755a3c;--primary:#6a4621;--primary-dark:#4b2f16;--success:#437a42;--warning:#b87924;--border-color:#b68a55;--gradient-main:linear-gradient(135deg,#5b3a1c,#a06b2c);--shadow:0 18px 44px rgba(81,48,18,.18);
}
body.theme-ice{
    --bg:#eaf7ff;--surface:#f9fdff;--text:#123a56;--muted:#5e7e95;--primary:#247fb7;--primary-dark:#155b86;--success:#239b83;--warning:#e3a72b;--border-color:#c1dff1;--gradient-main:linear-gradient(135deg,#1d75ae,#48b6e6);--shadow:0 18px 44px rgba(40,108,153,.14);
}

/* New themes use the modern shared player dashboard, exactly like the newer skins. */
body.theme-classic .classic-player-dashboard,
body.theme-shadow .classic-player-dashboard,
body.theme-relic .classic-player-dashboard,
body.theme-ice .classic-player-dashboard{display:none}
body.theme-classic .color-game-player-dashboard,
body.theme-shadow .color-game-player-dashboard,
body.theme-relic .color-game-player-dashboard,
body.theme-ice .color-game-player-dashboard{display:block}

/* PLAYER / GRAM */
body.player-app.theme-classic{
    --p-bg:#eef5ef;--p-surface:#fffdf7;--p-surface-2:#f4faf4;--p-text:#17392e;--p-muted:#68776e;--p-border:#cfdccf;--p-primary:#126247;--p-primary-2:#267d58;--p-accent:#c39031;--p-accent-2:#d7aa4b;--p-nav:#fffdf7;--p-nav-text:#17392e;--p-shadow:0 15px 38px rgba(34,77,57,.12)
}
body.player-app.theme-shadow{
    --p-bg:#06111a;--p-surface:#0b1a24;--p-surface-2:#0d202c;--p-text:#f4e6c4;--p-muted:#9dafba;--p-border:#294452;--p-primary:#d0a248;--p-primary-2:#8e6729;--p-accent:#2f9d79;--p-accent-2:#e2af50;--p-nav:#07141d;--p-nav-text:#f3e0b8;--p-shadow:0 18px 46px rgba(0,0,0,.32)
}
body.player-app.theme-relic{
    --p-bg:#d8b77f;--p-surface:#f3dfb7;--p-surface-2:#ead0a2;--p-text:#422a15;--p-muted:#73583b;--p-border:#b98b54;--p-primary:#68451f;--p-primary-2:#9a682e;--p-accent:#3e7950;--p-accent-2:#c18b37;--p-nav:#ead3a7;--p-nav-text:#422a15;--p-shadow:0 17px 40px rgba(82,48,19,.18)
}
body.player-app.theme-ice{
    --p-bg:#e8f6ff;--p-surface:#f9fdff;--p-surface-2:#eff9ff;--p-text:#113b57;--p-muted:#5d7d94;--p-border:#beddf0;--p-primary:#247fb7;--p-primary-2:#4fb6e4;--p-accent:#4bbfc4;--p-accent-2:#8fdcf7;--p-nav:#f5fbff;--p-nav-text:#123a56;--p-shadow:0 16px 40px rgba(39,108,153,.14)
}

body.player-app.theme-classic{background:linear-gradient(rgba(238,245,239,.94),rgba(238,245,239,.97)),url('../assets/enigmia-hero.png') center top/cover fixed no-repeat!important}
body.player-app.theme-shadow{background:radial-gradient(circle at 68% 10%,rgba(218,162,67,.15),transparent 28%),linear-gradient(rgba(4,15,22,.93),rgba(4,15,22,.97)),url('../assets/enigmia-hero.png') center top/cover fixed no-repeat!important}
body.player-app.theme-relic{background:radial-gradient(circle at 18% 12%,rgba(255,225,163,.2),transparent 28%),repeating-linear-gradient(4deg,rgba(93,54,20,.035) 0 1px,transparent 1px 24px),linear-gradient(#ddbb82,#c99658)!important}
body.player-app.theme-ice{background:radial-gradient(circle at 72% 7%,rgba(255,255,255,.85),transparent 28%),linear-gradient(rgba(229,246,255,.92),rgba(232,247,255,.96)),url('../assets/enigmia-hero.png') center top/cover fixed no-repeat!important}

body.player-app.theme-shadow .player-topnav{background:rgba(6,20,29,.95);box-shadow:0 8px 28px rgba(0,0,0,.28)}
body.player-app.theme-shadow .player-panel-card,
body.player-app.theme-shadow .cg-card,
body.player-app.theme-shadow .game-card{background:linear-gradient(180deg,#0d202b,#091923)!important;border-color:#2a4655!important;color:#f3e5c3!important}
body.player-app.theme-shadow input,body.player-app.theme-shadow select,body.player-app.theme-shadow textarea{background:#071722!important;color:#f7ead0!important;border-color:#345365!important}
body.player-app.theme-shadow .table th{background:#102632!important;color:#e2bd6b!important}
body.player-app.theme-shadow .table td{border-color:#28424f!important}

body.player-app.theme-relic .player-topnav{background:rgba(236,215,174,.96);border-bottom-color:#b78c58}
body.player-app.theme-relic .player-panel-card,
body.player-app.theme-relic .cg-card,
body.player-app.theme-relic .game-card{background:linear-gradient(180deg,#f4e4c1,#ead2a5)!important;border-color:#b98a54!important;color:#432c17!important;box-shadow:0 12px 28px rgba(82,48,18,.15)!important}
body.player-app.theme-relic input,body.player-app.theme-relic select,body.player-app.theme-relic textarea{background:#f8e9c9!important;color:#432c17!important;border-color:#b88953!important}
body.player-app.theme-relic .table th{background:#dfbd84!important;color:#4e3218!important}
body.player-app.theme-relic .table td{border-color:#bd935e!important}

body.player-app.theme-ice .player-topnav{background:rgba(245,251,255,.95);box-shadow:0 7px 24px rgba(47,112,154,.10)}
body.player-app.theme-ice .player-panel-card,
body.player-app.theme-ice .cg-card,
body.player-app.theme-ice .game-card{background:linear-gradient(180deg,rgba(252,254,255,.96),rgba(238,249,255,.96))!important;border-color:#b9ddf1!important;box-shadow:0 13px 32px rgba(43,112,158,.12)!important}
body.player-app.theme-ice input,body.player-app.theme-ice select,body.player-app.theme-ice textarea{background:#f8fdff!important;color:#153e59!important;border-color:#b4d9ee!important}
body.player-app.theme-ice .table th{background:#dcf2ff!important;color:#215a7e!important}

body.player-app.theme-classic .player-topnav{background:rgba(255,253,247,.96)}
body.player-app.theme-classic .player-panel-card,
body.player-app.theme-classic .cg-card,
body.player-app.theme-classic .game-card{background:linear-gradient(180deg,#fffef9,#f8fbf4)!important;border-color:#cfddcf!important}

/* ORGANIZUJĘ */
body.theme-classic.org-app{--org-accent:#176548;background:linear-gradient(rgba(239,246,240,.95),rgba(239,246,240,.97)),url('../assets/enigmia-hero.png') center top/cover fixed no-repeat}
body.theme-shadow.org-app{--org-accent:#d0a248;background:radial-gradient(circle at 70% 10%,rgba(208,162,72,.13),transparent 30%),#06111a;color:#f3e5c3}
body.theme-relic.org-app{--org-accent:#7a5126;background:repeating-linear-gradient(4deg,rgba(91,52,19,.035) 0 1px,transparent 1px 24px),linear-gradient(#ddb980,#c99859);color:#422a15}
body.theme-ice.org-app{--org-accent:#287fb6;background:radial-gradient(circle at 75% 4%,rgba(255,255,255,.9),transparent 25%),linear-gradient(#e8f7ff,#dceefa);color:#123a56}

body.theme-classic.org-app .org-topnav,body.theme-classic.org-app .card,body.theme-classic.org-app .platform-card,body.theme-classic.org-app .org-kpi-card,body.theme-classic.org-app .org-subtabs{background:rgba(255,253,247,.96);border-color:#cfddcf}
body.theme-shadow.org-app .org-topnav,body.theme-shadow.org-app .card,body.theme-shadow.org-app .platform-card,body.theme-shadow.org-app .org-kpi-card,body.theme-shadow.org-app .org-subtabs{background:#0b1b25;border-color:#2b4756;color:#f3e5c3;box-shadow:0 12px 30px rgba(0,0,0,.24)}
body.theme-shadow.org-app input,body.theme-shadow.org-app select,body.theme-shadow.org-app textarea{background:#071722;color:#f7ead0;border-color:#345365}
body.theme-shadow.org-app .muted,body.theme-shadow.org-app .org-account small{color:#9eb0bb}
body.theme-shadow.org-app .table th{background:#102632;color:#e2bd6b}body.theme-shadow.org-app .table td{border-color:#28424f;color:#f0e5ca}

body.theme-relic.org-app .org-topnav,body.theme-relic.org-app .card,body.theme-relic.org-app .platform-card,body.theme-relic.org-app .org-kpi-card,body.theme-relic.org-app .org-subtabs{background:rgba(243,224,185,.97);border-color:#b78a54;color:#422a15;box-shadow:0 12px 28px rgba(82,48,18,.14)}
body.theme-relic.org-app input,body.theme-relic.org-app select,body.theme-relic.org-app textarea{background:#f8e8c7;color:#422a15;border-color:#b68852}
body.theme-relic.org-app .muted,body.theme-relic.org-app .org-account small{color:#765b3e}
body.theme-relic.org-app .table th{background:#dfbd84;color:#4d3117}body.theme-relic.org-app .table td{border-color:#bc915c;color:#452c16}

body.theme-ice.org-app .org-topnav,body.theme-ice.org-app .card,body.theme-ice.org-app .platform-card,body.theme-ice.org-app .org-kpi-card,body.theme-ice.org-app .org-subtabs{background:rgba(249,253,255,.96);border-color:#bcddef;color:#123a56;box-shadow:0 12px 30px rgba(43,112,158,.10)}
body.theme-ice.org-app input,body.theme-ice.org-app select,body.theme-ice.org-app textarea{background:#f9fdff;color:#153e59;border-color:#b4d9ee}
body.theme-ice.org-app .muted,body.theme-ice.org-app .org-account small{color:#5d7d94}
body.theme-ice.org-app .table th{background:#dbf1ff;color:#225b7e}body.theme-ice.org-app .table td{border-color:#c2dfee;color:#153e59}

/* Selector tiles for the four new additional skins. */
.theme-preview-classic{background:linear-gradient(145deg,#f7f4e8,#dcebdc)!important;color:#234b39!important}
.theme-preview-shadow{background:radial-gradient(circle at 70% 20%,rgba(230,177,76,.22),transparent 32%),linear-gradient(145deg,#06131c,#102a38)!important;color:#f0cf85!important}
.theme-preview-relic{background:linear-gradient(145deg,#efd8a8,#ba8146)!important;color:#4a2d14!important}
.theme-preview-ice{background:linear-gradient(145deg,#f7fdff,#cfeeff 58%,#9fd8f5)!important;color:#145073!important}
.theme-selector-choice.theme-preview-shadow small{color:#d7bd88!important}
.theme-selector-choice.theme-preview-relic small{color:#694825!important}
.theme-selector-choice.theme-preview-ice small{color:#3d708f!important}

/* 11 tiles instead of the original 7, still responsive. */
.theme-selector-grid{grid-template-columns:repeat(6,minmax(118px,1fr))}
@media(max-width:1220px){.theme-selector-grid{grid-template-columns:repeat(4,minmax(118px,1fr))}}
@media(max-width:760px){.theme-selector-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}


/* === ENIGMIA LANDING LAYOUT RAIL v7 — shared fallback === */
#enigmia-layout-rail.enigmia-layout-rail{
  display:flex!important;visibility:visible!important;opacity:1!important;
  position:fixed!important;right:24px!important;top:50%!important;
  transform:translateY(-50%)!important;z-index:2147483647!important;
  width:72px!important;padding:10px 8px!important;flex-direction:column!important;
  align-items:center!important;gap:9px!important;border-radius:36px!important;
  background:rgba(5,18,26,.88)!important;border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.35)!important;backdrop-filter:blur(14px)!important;
  pointer-events:none!important;
}
#enigmia-layout-rail .rail-head{display:grid!important;place-items:center!important;width:50px!important;height:30px!important;border-radius:18px!important;color:#f3d98c!important;background:rgba(255,255,255,.09)!important;font-size:18px!important}
#enigmia-layout-rail .rail-sep{display:block!important;width:34px!important;height:1px!important;background:rgba(255,255,255,.2)!important}
#enigmia-layout-rail .skin-dot{display:grid!important;visibility:visible!important;opacity:1!important;place-items:center!important;position:relative!important;width:52px!important;height:52px!important;border-radius:50%!important;text-decoration:none!important;color:#fff!important;font:900 22px/1 Inter,system-ui,sans-serif!important;box-shadow:0 6px 16px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.28)!important;pointer-events:auto!important}
#enigmia-layout-rail .skin-dot.is-current{box-shadow:0 0 0 3px #fff,0 0 0 7px rgba(67,184,255,.6),0 8px 20px rgba(0,0,0,.35)!important}
#enigmia-layout-rail .skin-dot.is-fixed::before{content:'•'!important;position:absolute!important;right:-2px!important;top:-3px!important;width:17px!important;height:17px!important;border-radius:50%!important;background:#ffd55f!important;color:#22323b!important;border:2px solid #07151d!important;display:grid!important;place-items:center!important;font-size:12px!important}
#enigmia-layout-rail .skin-current{background:linear-gradient(145deg,#0d623c,#1b9b65 62%,#efd28e)!important}
#enigmia-layout-rail .skin-classic{background:linear-gradient(145deg,#f7e9bc 0 25%,#5f9b70 55%,#173e2f 100%)!important}
#enigmia-layout-rail .skin-shadow{background:radial-gradient(circle at 45% 42%,#f0b84f 0 11%,#172d36 29%,#050b10 72%)!important}
#enigmia-layout-rail .skin-relic{background:linear-gradient(145deg,#e7bd74,#8d5725 56%,#3b2414)!important}
#enigmia-layout-rail .skin-ice{background:linear-gradient(145deg,#f8fdff,#79c9f4 55%,#15527e)!important;color:#073858!important}
#enigmia-layout-rail .skin-random{background:linear-gradient(145deg,#7256df,#2d7ec4 55%,#0a4652)!important}
#enigmia-layout-rail .tip{position:absolute!important;right:62px!important;top:50%!important;transform:translateY(-50%)!important;display:none!important;white-space:nowrap!important;padding:8px 11px!important;border-radius:10px!important;background:#07151d!important;color:#fff!important;font:800 12px/1.2 Inter,system-ui,sans-serif!important}
#enigmia-layout-rail .skin-dot:hover .tip,#enigmia-layout-rail .skin-dot:focus-visible .tip{display:block!important}
@media(max-width:720px){#enigmia-layout-rail.enigmia-layout-rail{right:8px!important;width:60px!important;padding:8px 5px!important}#enigmia-layout-rail .skin-dot{width:44px!important;height:44px!important;font-size:19px!important}#enigmia-layout-rail .tip{display:none!important}}
.sabotage-live-actions>div{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.sabotage-live-actions .actions{margin-top:14px}.sabotage-live-page .table td{vertical-align:top}.sabotage-live-page .actions{display:flex;flex-wrap:wrap;gap:6px}
.platform-version-footer{display:block;margin:28px auto 12px;text-align:center;color:var(--muted,#667085);font-size:.75rem;letter-spacing:0}
.virus-live-summary .status-row,.virus-live-summary .actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.virus-live-summary form{display:flex;align-items:center;gap:8px;margin:0}
.virus-live-page .table td{vertical-align:middle}.virus-live-page .table form{margin:0}
@media(max-width:760px){.virus-live-summary form{width:100%}.virus-live-summary form>*{min-width:0}.virus-live-page .scenario-builder-header{align-items:flex-start;flex-direction:column}}
