/* GO Club — shared app theme (account, wallet, auth pages) */
:root {
    --d3-accent: #087BFF;
    --d3-accent-2: #0664D6;
    --d3-accent-soft: rgba(8, 123, 255, .16);
    --d3-violet: #00D9FF;
    --d3-violet-soft: rgba(0, 217, 255, .16);
    --d3-ink: #0B1024;
    --d3-surface: #101632;
    --d3-card: #151B36;
    --d3-line: rgba(232, 238, 255, .1);
    --d3-text: #E8EEFF;
    --d3-muted: #9AA8D0;
    --d3-gold: #FFC83D;
}

html { background-color: var(--d3-ink); }

body {
    font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
    background-color: var(--d3-ink) !important;
    background-image:
        radial-gradient(60% 40% at 85% -10%, rgba(0, 217, 255, .2), transparent 70%),
        radial-gradient(45% 35% at 0% 0%, rgba(8, 123, 255, .12), transparent 70%),
        radial-gradient(rgba(255, 255, 255, .05) 1px, transparent 1.4px) !important;
    background-size: 100% 100%, 100% 100%, 22px 22px !important;
    background-attachment: fixed !important;
    color: var(--d3-text);
    -webkit-font-smoothing: antialiased;
}

::selection { background: rgba(8, 123, 255, .45); color: #E8EEFF; }

h1, h2, .d3-display {
    font-family: 'Unbounded', 'Manrope', system-ui, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    line-height: 1.05;
}

input, select, textarea, button { font-family: inherit; }
input:focus, select:focus, textarea:focus { caret-color: var(--d3-accent); }

* { scrollbar-width: thin; scrollbar-color: var(--d3-violet) transparent; }
*::-webkit-scrollbar { width: 6px; height: 6px; }
*::-webkit-scrollbar-thumb { background: var(--d3-violet); border-radius: 999px; }
*::-webkit-scrollbar-track { background: transparent; }

/* Brand lockup */
.d3-logo {
    display: inline-flex;
    align-items: center;
    gap: .3em;
    font-size: 26px;
    line-height: 1;
    color: var(--d3-text);
    text-decoration: none;
}
.d3-logo__img { height: 34px; width: auto; display: block; flex: none; }
.d3-logo--sm .d3-logo__img { height: 28px; }
.d3-logo--lg .d3-logo__img { height: 56px; }
.d3-logo--sm { font-size: 20px; }
.d3-logo--md { font-size: 26px; }
.d3-logo--lg { font-size: 54px; }

/* Shared primary button look */
.btn-gradient,
.d3-btn {
    background: linear-gradient(180deg, #4DA8FF 0%, var(--d3-accent) 50%, var(--d3-accent-2) 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 24px rgba(8, 123, 255, .28) !important;
    border: 0 !important;
}

button:hover, .btn:hover, .btn-gradient:hover, a.btn:hover {
    box-shadow: 0 10px 22px rgba(0, 0, 0, .55), 0 0 18px rgba(0, 217, 255, .3) !important;
}

/* Bootstrap layout pages (Layout/usergame, usergame2) */
body.dark-bg-main:not(:has(.app-header)) { padding-top: 0 !important; }
body.dark-bg-main .sub-header {
    background: var(--d3-card) !important;
    border: 1px solid var(--d3-line);
    border-radius: 18px 18px 0 0;
}
body.dark-bg-main .accordian-body {
    background: var(--d3-surface) !important;
    border: 1px solid var(--d3-line);
    color: var(--d3-text);
}
body.dark-bg-main .legal-section {
    background: var(--d3-surface) !important;
    border-top: 1px solid var(--d3-line);
}
body.dark-bg-main .legal-section a { color: var(--d3-muted) !important; }
body.dark-bg-main .legal-section a:hover { color: var(--d3-accent) !important; }
body.dark-bg-main .support-float {
    bottom: calc(100px + env(safe-area-inset-bottom)) !important;
    background: linear-gradient(135deg, #7CC4FF, var(--d3-accent-2)) !important;
    color: var(--d3-ink) !important;
    box-shadow: 0 8px 24px rgba(255, 200, 61, .3) !important;
}

.app-header .w-btn {
    background: var(--d3-accent) !important;
    color: var(--d3-ink) !important;
    box-shadow: 0 4px 14px rgba(255, 200, 61, .3) !important;
}

/* Tailwind Play CDN pages: neutral surfaces get a violet-black tint */
.bg-black { background-color: var(--d3-ink) !important; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
