/* Imperial Jackpots 1.0 — shared public, player and administration identity. */
:root, html[data-player-theme="charcoal"] {
  --bg:#080807; --bg-soft:#10100e; --panel:#12120f; --panel-strong:#1c1b16; --panel-light:#222018;
  --text:#f7f3e8; --muted:#bdb7a8; --muted-2:#aaa393; --gold:#d8b667; --gold-2:#f0d99e;
  --purple:#d8b667; --purple-2:#c29c48; --green:#79d6ac; --danger:#ff8997;
  --line:#302d23; --line-strong:#62573d; --preview-gold:#d8b667; --preview-ink:#080807; --preview-surface:#12120f;
  --lp-depth-bg:#080807; --lp-depth-gold:#d8b667; --lp-depth-gold-bright:#f0d99e; --lp-depth-violet:#a18142;
  --shadow:0 16px 48px #0005; --lp-shadow:0 12px 32px #0004;
  color-scheme:dark;
}
html,body { background:#080807; }
body,html[data-player-theme="charcoal"] body { color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid #efd699; outline-offset:4px; }
::selection { background:#d8b667; color:#11100b; }
.ambient,.premium-particle-field { display:none; }
html[data-player-theme="charcoal"] .sidebar { background:#0c0c0a; border-color:#302d23; }
html[data-player-theme="charcoal"] .topbar { background:#080807; }
html[data-player-theme="charcoal"] :is(.brand,.mobile-brand,.player-header-logo) { filter:none; }
html[data-player-theme="charcoal"] .player-brand-logo { padding:0; height:86px; display:flex; align-items:center; justify-content:center; }
html[data-player-theme="charcoal"] .player-brand-logo img { width:172px; height:64px; max-height:64px; object-fit:contain; filter:none; }
html[data-player-theme="charcoal"] .player-header-logo-image { width:158px; height:52px; max-height:52px; object-fit:contain; }
html[data-player-theme="charcoal"] .nav-link.active { color:#efd699; background:#272319; border-color:#66522e; }
html[data-player-theme="charcoal"] :is(.primary-btn,.hero-primary,.play-btn,.portal-play,.auth-submit),.admin-primary {
  color:#161208; background:linear-gradient(120deg,#edcf8a,#c8a14e); border:1px solid #e5c67c; box-shadow:inset 0 1px 0 #fff5,0 5px 18px #b18b2c12; text-shadow:none;
}
html[data-player-theme="charcoal"] :is(.primary-btn,.hero-primary,.play-btn,.portal-play,.auth-submit):hover,.admin-primary:hover { background:linear-gradient(120deg,#f4dfa9,#d8b667); color:#161208; }
html[data-player-theme="charcoal"] :is(.hero,.hero-slider) { border-radius:20px; }
html[data-player-theme="charcoal"] .hero-slider { border-color:#51432a; box-shadow:0 24px 60px #0005; }
html[data-player-theme="charcoal"] .hero-slide { background:radial-gradient(ellipse at 85% 50%,#68502033,transparent 53%),linear-gradient(115deg,#15140f,#0e0e0b); }
html[data-player-theme="charcoal"] .hero-copy { width:61%; max-width:620px; gap:16px; position:relative; z-index:2; }
html[data-player-theme="charcoal"] :is(.hero-copy h1,.hero-copy h2) { font-family:Georgia,"Times New Roman",serif; font-size:clamp(38px,4.4vw,65px); font-weight:500; letter-spacing:-.045em; line-height:1.02; color:#f7ebcc; }
html[data-player-theme="charcoal"] .hero-copy p { color:#d0c8b7; }
html[data-player-theme="charcoal"] .hero-copy small { color:#a9a18e; }
html[data-player-theme="charcoal"] .hero-kicker { letter-spacing:.2em; color:#d8b667; }
html[data-player-theme="charcoal"] .imperial-hero-art { position:absolute; display:grid; place-items:center; right:3%; top:7%; width:34%; height:78%; opacity:1; transform:none; }
html[data-player-theme="charcoal"] .imperial-hero-art img { position:absolute; inset:0; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; filter:drop-shadow(0 12px 28px #0007); }
html[data-player-theme="charcoal"] .hero-arrow { background:#14120f; border-color:#423923; }
html[data-player-theme="charcoal"] .player-benefits .player-benefit-card { background:#11110e; border-color:#332e20; border-radius:12px; }
html[data-player-theme="charcoal"] .player-benefit-copy strong { color:#ead49b; }
html[data-player-theme="charcoal"] .category-chip.active { background:#272215; color:#f1d99a; border-color:#6b552d; }
html[data-player-theme="charcoal"] .library-summary h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; font-size:32px; color:#f5e7c7; }
html[data-player-theme="charcoal"] .game-card-thumb { background:linear-gradient(150deg,#1d1b14,#0f0f0c); }
html[data-player-theme="charcoal"] .game-card:hover { border-color:#8c7039; transform:translateY(-3px); }
html[data-player-theme="charcoal"] .game-meta { background:#13120e; }
html[data-player-theme="charcoal"] :is(.game-badge,.favorite-btn) { background:#15130eee; }
html[data-player-theme="charcoal"] :is(.auth-modal,.wallet,.portal-card,.profile-panel,.modal-card,.support-channel,.recent-winners-section,.cashout-proof-card) { background:#14130f; border-color:#393222; }
html[data-player-theme="charcoal"] :is(input,select,textarea) { background:#0b0b09; border-color:#49402d; }
html[data-player-theme="charcoal"] :is(.portal-topbar,.portal-sidebar,.bottom-nav,.mobile-bottom-nav,.mobile-nav) { background:#0d0d0b; border-color:#373023; }
html[data-player-theme="charcoal"] .hero-slide.hero-has-image .imperial-hero-art { display:none; }
.admin-body { background:radial-gradient(ellipse at 80% 0%,#6b512416,transparent 45%),#080807; }
.admin-login-card { background:linear-gradient(145deg,#19170f,#0e0e0b); border:1px solid #5b4929; border-radius:20px; box-shadow:0 35px 100px #0009; }
.admin-login-brand { color:#e9cd8b; }
.admin-login-brand img { width:58px; height:58px; }
.admin-login-brand span { font-family:Georgia,serif; font-size:24px; font-weight:500; }
.admin-login-card h1 { letter-spacing:-.035em; }
.admin-login-card .admin-field { display:grid; gap:8px; margin:14px 0; }
.admin-login-card .admin-field.hidden { display:none; }
.admin-login-card .admin-help { margin:14px 0 20px; line-height:1.55; font-size:12px; }
html[data-player-theme="charcoal"] #supportBtn { display:flex; align-items:center; justify-content:center; gap:9px; width:auto; min-width:136px; height:48px; padding:0 16px; }
html[data-player-theme="charcoal"] #supportBtn .support-button-label { position:static; display:block; font-size:11px; line-height:1; letter-spacing:.08em; transform:none; }
html[data-player-theme="charcoal"] #supportBtn .support-button-icon { position:static; display:block; width:20px; height:20px; transform:none; }
.admin-sidebar { background:#0d0d0b; border-right:1px solid #332d1f; }
.admin-brand img { width:44px; height:44px; }
.admin-brand b { color:#edcf8b; font-family:Georgia,serif; font-size:20px; font-weight:500; }
.admin-brand small { letter-spacing:.14em; text-transform:uppercase; font-size:9px; }
.admin-nav button { color:#bdb6a5; }
.admin-nav button.active { background:linear-gradient(90deg,#332b18,#201d12); border-color:#6c5529; color:#f2d68f; box-shadow:none; }
.admin-body :is(.admin-topbar,.admin-header) { background:#10100d; border-color:#373023; }
.admin-body :is(.admin-card,.admin-panel,.admin-stat,.admin-stat-card,.admin-summary-card,.admin-modal-card,.admin-dialog,.admin-drawer) { background:#14130f; border-color:#3c3423; box-shadow:0 10px 30px #0002; }
.admin-body :is(input,select,textarea) { background:#0c0c0a; border-color:#4b412c; color:#f7f3e8; }
.admin-body :is(input,select,textarea):focus { border-color:#cfaa5a; box-shadow:0 0 0 3px #d8b66718; }
.admin-body .admin-kicker { color:#d8b667; letter-spacing:.17em; }
.admin-body :is(.admin-secondary,.admin-ghost) { background:#1b1911; border-color:#5a4a29; color:#e7d3a2; }
.admin-body table th { color:#cab98f; background:#19170f; }
.admin-body table td { border-color:#302b1e; }
.admin-body table tbody tr:hover { background:#211e15; }
.admin-body a { color:#e4c67f; }
@media(max-width:760px) {
  html[data-player-theme="charcoal"] .hero-copy { width:66%; gap:13px; }
  html[data-player-theme="charcoal"] :is(.hero-copy h1,.hero-copy h2) { font-size:clamp(32px,7.4vw,48px); }
  html[data-player-theme="charcoal"] .imperial-hero-art { width:31%; right:1.5%; top:16%; height:68%; }
  html[data-player-theme="charcoal"] .hero-copy p { font-size:13px; }
  html[data-player-theme="charcoal"] .hero-copy small { font-size:10px; }
  html[data-player-theme="charcoal"] .player-header-logo-image { width:142px; }
  html[data-player-theme="charcoal"] .game-card:hover { transform:none; }
}
@media(max-width:420px) {
  html[data-player-theme="charcoal"] .hero-copy { width:100%; padding-right:25%; }
  html[data-player-theme="charcoal"] .imperial-hero-art { width:27%; right:1%; top:20%; height:60%; opacity:.8; }
  html[data-player-theme="charcoal"] .hero-copy p { max-width:24ch; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }
