/*!
Theme Name: EveryOne
Nomini Casino — midnight emerald base, teal links, orange CTA (2026 refresh)
*/

/* Nomini Casino — deep teal night #051816, orange accent #f97316 */
:root {
    --rc-bg: #051816;
    --rc-surface: #0c2622;
    --rc-surface-2: #134a42;
    --rc-text: #ecfeff;
    --rc-text-muted: #99f6e4;
    --rc-link: #2dd4bf;
    --rc-accent: #f97316;
    --rc-accent-hover: #fb923c;
    --rc-gold: #fbbf24;
    --rc-on-accent: #0f172a;
    --rc-focus: rgba(249, 115, 22, 0.55);
    --rc-teal-deep: #0f766e;
    --rc-teal-glow: #14b8a6;
    --rc-red-wine: #c2410c;
}

body {
    background-color: var(--rc-bg) !important;
    color: var(--rc-text) !important;
    padding-top: 100px !important; /* offset for fixed header so headings don't sit under it */
    background-image:
        radial-gradient(ellipse 100% 55% at 75% 0%, rgba(20, 184, 166, 0.28), transparent 52%),
        radial-gradient(ellipse 90% 50% at 10% 100%, rgba(249, 115, 22, 0.07), transparent 48%),
        radial-gradient(ellipse 70% 40% at 50% 50%, rgba(13, 148, 136, 0.08), transparent 55%),
        repeating-linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.02) 0,
            rgba(255, 255, 255, 0.02) 1px,
            transparent 1px,
            transparent 14px
        );
    background-attachment: fixed;
}

/* Extra top spacing so first heading is clearly below the header on all pages */
.page-content.page-section,
#page-text.page-section {
    padding-top: 1.5rem !important;
}

.header,
.header .menu-item-has-children .sub-menu {
    background: #0a2e2a !important;
    border-bottom: 1px solid rgba(45, 212, 191, 0.22) !important;
}

.header {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
}

.header .nav a,
.header .mobile-nav a {
    color: #ecfeff !important;
}

.header .nav a:hover,
.header .mobile-nav a:hover {
    color: var(--rc-accent-hover) !important;
}

.footer {
    background-color: var(--rc-bg) !important;
}

/* Footer payment SVGs are dark-on-transparent — invert so they read on dark bg */
.footer .pay-row .pay-item img {
    width: auto !important;
    max-width: min(140px, 100%);
    max-height: 42px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.9;
}

.main-text-content a,
.page-text a {
    color: var(--rc-link) !important;
}

.main-text-content a:hover,
.page-text a:hover {
    color: var(--rc-accent-hover) !important;
}

/* Tables: unified dark theme (all pages) */
.main-text-content table,
.page-text table,
.responsible-gambling table {
    width: 100%;
    border-collapse: collapse;
    margin: 24px 0;
    font-size: 14px;
    line-height: 1.5;
    background-color: var(--rc-surface) !important;
    border: 1px solid var(--rc-surface-2);
}

.main-text-content table th,
.main-text-content table td,
.page-text table th,
.page-text table td,
.responsible-gambling table th,
.responsible-gambling table td {
    border: 1px solid var(--rc-surface-2);
    padding: 12px 14px;
    text-align: left;
    vertical-align: top;
    color: #ecfeff !important;
}

.main-text-content table thead th,
.page-text table thead th,
.responsible-gambling table thead th {
    background-color: var(--rc-surface-2) !important;
    font-weight: 600;
    color: #ecfeff !important;
}

.main-text-content table tbody tr:nth-child(even),
.page-text table tbody tr:nth-child(even),
.responsible-gambling table tbody tr:nth-child(even) {
    background-color: rgba(12, 38, 34, 0.88) !important;
}

.main-text-content table tbody tr:nth-child(even) td,
.page-text table tbody tr:nth-child(even) td,
.responsible-gambling table tbody tr:nth-child(even) td {
    color: #ecfeff !important;
}

.main-text-content table tbody tr:hover,
.page-text table tbody tr:hover,
.responsible-gambling table tbody tr:hover {
    background-color: var(--rc-surface-2) !important;
}

.main-text-content table a,
.page-text table a,
.responsible-gambling table a {
    color: var(--rc-link) !important;
    text-decoration: underline;
}

.main-text-content table a:hover,
.page-text table a:hover,
.responsible-gambling table a:hover {
    color: var(--rc-accent-hover) !important;
    text-decoration: none;
}

@media (max-width: 768px) {
    .main-text-content table,
    .main-text-content thead,
    .main-text-content tbody,
    .main-text-content th,
    .main-text-content td,
    .main-text-content tr,
    .page-text table,
    .page-text thead,
    .page-text tbody,
    .page-text th,
    .page-text td,
    .page-text tr,
    .responsible-gambling table,
    .responsible-gambling thead,
    .responsible-gambling tbody,
    .responsible-gambling th,
    .responsible-gambling td,
    .responsible-gambling tr {
        display: block;
    }

    .main-text-content thead,
    .page-text thead,
    .responsible-gambling thead {
        display: none;
    }

    .main-text-content tr,
    .page-text tr,
    .responsible-gambling tr {
        margin-bottom: 16px;
        border: 1px solid var(--rc-surface-2);
        padding: 10px;
        background-color: var(--rc-surface) !important;
    }

    .main-text-content td,
    .page-text td,
    .responsible-gambling td {
        border: none;
        padding: 6px 0;
        color: #ecfeff !important;
    }

    .main-text-content td::before,
    .page-text td::before,
    .responsible-gambling td::before {
        content: attr(data-label);
        font-weight: 600;
        display: block;
        margin-bottom: 4px;
        color: var(--rc-link);
    }
}

body.banner-background .screen-content {
    background: transparent !important;
}

.offer-title,
.offer-desc {
    color: var(--rc-text) !important;
}

.btn,
.btn.btn-primary,
.btn.btn-danger,
.btn.offer-btn,
.header .btn-danger {
    background: linear-gradient(180deg, #fbbf24 0%, #f97316 52%, #ea580c 100%) !important;
    color: var(--rc-on-accent) !important;
    border: 1px solid rgba(251, 191, 36, 0.45);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.15);
}

.btn:hover,
.btn.btn-primary:hover,
.btn.btn-danger:hover,
.btn.offer-btn:hover,
.header .btn-danger:hover {
    background: linear-gradient(180deg, #fde68a 0%, #fb923c 45%, #f97316 100%) !important;
    color: var(--rc-on-accent) !important;
}

.btn:focus,
.btn:focus-visible,
.header .btn-danger:focus-visible,
.btn.btn-primary:focus-visible,
.btn.btn-danger:focus-visible,
.btn.offer-btn:focus-visible {
    outline: 2px solid var(--rc-focus) !important;
    outline-offset: 2px;
}

/* Horizontal Nomini Casino wordmark */
.custom-logo-link {
    display: inline-flex;
    align-items: center;
    line-height: 0;
}

img.custom-logo {
    width: auto !important;
    height: 48px !important;
    max-width: min(300px, 58vw);
    object-fit: contain;
}

@media (max-width: 700px) {
    img.custom-logo {
        height: 40px !important;
        max-width: min(260px, 70vw);
    }
}

.mobile-wrap {
    background-color: var(--rc-surface) !important;
    border-right: 1px solid rgba(45, 212, 191, 0.25);
}

.page-item,
.reviews-item .inner {
    background-color: var(--rc-surface) !important;
    border: 1px solid rgba(45, 212, 191, 0.22);
}

.section-title {
    color: var(--rc-text) !important;
}
