/* Royal Black · Noche eléctrica
   Application chrome only. Game artwork, card suits and roulette colors retain
   their own palettes; green/red continue to mean positive/negative results. */
:root {
  --bg: #0c0c1e;
  --surface: #17172e;
  --surface2: #20203d;
  --surface3: #2b294a;
  --line: #393651;
  --muted: #aaa9c6;
  --text: #f5f3ff;
  --gold: #c5a9ff;
  --gold2: #9170e8;
  --green: #80dfb4;
  --red: #ff9fa9;
  --rb-cyan: #73e9ee;
  --rb-coral: #ffb09c;
  --rb-violet: #a782ff;
  --rb-focus: #9af4f2;
}

body {
  background:
    radial-gradient(ellipse 85% 620px at 88% 0, #582c8a25, transparent 75%),
    radial-gradient(ellipse 60% 500px at 15% 40%, #17496b15, transparent 75%),
    var(--bg);
  color: var(--text);
}
::selection { background: #8767d7; color: #fff; }
:is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid var(--rb-focus);
  outline-offset: 4px;
}
:is(input, select, textarea) {
  background: #111125;
  border-color: #4c4669;
  color: #f3f0ff;
  caret-color: var(--rb-cyan);
}
:is(input, textarea)::placeholder { color: #aaa3bc; opacity: 1; }
:is(input, select, textarea):focus {
  border-color: var(--rb-cyan);
  box-shadow: 0 0 0 3px #73e9ee16;
}
label { color: #c9c5db; }
input[type="checkbox"] { accent-color: #b08cff; }

/* Persistent navigation and account controls. */
.sidebar {
  background: linear-gradient(170deg, #19142e, #111126 65%);
  border-right-color: #51416d66;
  box-shadow: 12px 0 35px #00000016;
}
.brand small { color: var(--rb-cyan); }
.brand strong { color: #f7f2ff; }
.nav-label { color: #a59bbd; }
.nav-item { color: #c0b9d4; }
.nav-item:hover { background: #b08cff12; color: #fff; }
.nav-item.active {
  color: #dfcdff;
  background: linear-gradient(100deg, #9b6bfa30, #9b6bfa08);
  box-shadow: inset 0 0 0 1px #b891ff26;
}
.nav-item.active:before {
  background: linear-gradient(var(--rb-cyan), var(--rb-violet));
  box-shadow: 0 0 15px #9a75ed55;
}
.nav-item .count { background: #9481bb21; color: #dbd1f3; }
.topbar { background: #0e0d25eb; border-bottom-color: #4a3b645c; }
.top-link { color: #b6adc9; }
.top-link.active { color: #e2cdff; border-bottom-color: var(--rb-cyan); }
.top-link:hover { color: #f2e9ff; }
.icon-btn { color: #c8bfdc; border-color: #504666; background: #24203855; }
.icon-btn:hover { color: var(--rb-cyan); border-color: #73e9ee8c; }
.wallet-pill {
  background: #142a35;
  border-color: #4b9ca26b;
  color: #abf7f4;
}
.wallet-pill small { color: #a9c7cd; }
.user-pill {
  color: #efe5ff;
  background: linear-gradient(140deg, #744bbe, #3d2a69);
  border-color: #b991f57d;
  box-shadow: 0 3px 15px #8256ce20;
}
.demo-box {
  background: linear-gradient(140deg, #25384a, #20203a);
  border-color: #7498bc45;
}
.demo-box strong { color: #b0eeef; }
.demo-box p { color: #bcbdd4; }
.side-footer { color: #aba0bf; }
.age { border-color: #77668d; }
.originals-seal { border-color: #8371ac45; color: #c2b5d7; }
.originals-seal .icon { color: var(--rb-cyan); }

/* Primary violet actions and a distinct cyan wallet shortcut. */
.btn { background: #2b2645; color: #e4dcf2; }
.btn-gold {
  color: #170e2e;
  background: linear-gradient(120deg, #c39eff, #ab8cff 66%, #93bbff);
  border-color: #e1caff40;
  box-shadow: 0 5px 22px #a271f52b, inset 0 1px #ffffff30;
}
.btn-gold:hover { filter: brightness(1.08); box-shadow: 0 6px 26px #a271f546; }
.header-recharge {
  background: linear-gradient(110deg, #88f0e8, #63d7f4);
  color: #0c2434;
  border-color: #b9fcff66;
  box-shadow: 0 4px 20px #54cde123;
}
.btn-outline { background: #26213a44; border-color: #75618c; color: #e1d5f1; }
.btn-outline:hover { background: #b58aff13; border-color: #b58aff; }
.btn-ghost { background: transparent; color: #c7bdd8; }
.btn-glass, .hero .btn-glass { background: #211a40b0; border-color: #c5a9ff77; color: #ece1ff; }
.btn-green { background: #183d35; border-color: #5bbd9470; color: #a7ecc9; }
.btn-danger { background: #4c243144; border-color: #dc788b77; color: #ffb0bc; }
.btn:disabled { filter: none; box-shadow: none; }
.skip-link { background: var(--rb-cyan); color: #11152b; }
.eyebrow, .text-link { color: var(--rb-cyan); }
.breadcrumb { color: #a9a0bc; }
.breadcrumb strong { color: #ddd5e9; }

/* Keep the existing illustrated worlds, with richer framing and lighting. */
.hero { border-color: #b389ff75; box-shadow: 0 18px 55px #00000040, 0 0 35px #7838b318; }
.hero:before {
  background: linear-gradient(90deg, #160e32f5 0%, #21133de8 35%, #38255352 76%, #0e263c30);
}
.hero:after { background: linear-gradient(0deg, #21163d85, transparent 55%); }
.hero h1 { color: #faf6ff; }
.hero h1 em { color: #cdaeff; }
.hero p { color: #d1c8df; }
.hero-badge { background: #b181f424; border-color: #c79aff70; color: #ead6ff; }
.hero-badge span { background: var(--rb-cyan); box-shadow: 0 0 10px #73e9ee55; animation: none; }
.hero-bottom { color: #dac3ed; }
.hero-facts strong { color: #e6d2ff; }
.hero-facts span { color: #c1b9d5; }
.hero-facts > div { border-color: #ad8bda4d; }
.lobby-welcome { color: #bdb1ce; }
.lobby-welcome > span:last-child { color: #c7aed9; }
.collection-links > a {
  border-color: #8161ae55;
  background: linear-gradient(120deg, #29213e, #1c1b34);
  box-shadow: inset 0 1px #ffffff05;
}
.collection-links > a:nth-child(2) { background: linear-gradient(120deg, #17343e, #1b203b); border-color: #579ca15c; }
.collection-links > a:nth-child(3) { background: linear-gradient(120deg, #3c243d, #221c35); border-color: #ad74825c; }
.collection-links > a:hover { border-color: #c19afa; box-shadow: 0 5px 20px #0003; }
.collection-links strong { color: #f0e7fa; }
.collection-links div > span { color: #bfb4d1; }
.collection-icon { background: #b38aff1c; color: #d4b9ff; border-color: #b08af04d; }
.collection-links > a:nth-child(2) .collection-icon { color: var(--rb-cyan); background: #73e9ee12; border-color: #73e9ee3b; }
.collection-links > a:nth-child(3) .collection-icon { color: var(--rb-coral); background: #ffb09c12; border-color: #ffb09c3b; }
.collection-links > a > .icon { color: #c9b5de; }
.feature { background: #211c35; border-color: #564171; }
.feature .feature-icon { background: #b084ff1c; color: #c8a7ff; }
.feature p, .results-line { color: #aaa3bd; }
.section-top h2 .icon { color: var(--rb-cyan); }
.section-top h2 { color: #f5edff; }
.game-art { border-color: #b3a0d23d; box-shadow: 0 12px 28px #0006, inset 0 1px #d4c1ff27; }
.game-art:after { border-color: #d8baff3d; }
.game-art:hover, .game-art:focus-visible {
  border-color: #b28aff;
  box-shadow: 0 16px 36px #0009, 0 0 24px #a26cf53b;
}
.card-title-art small { color: #e0ceff; }
.card-status { background: #19102edb; border-color: #b996ed70; color: #ebd8ff; }
.card-status.playable { background: #c9adff; color: #201238; }
.game-meta strong { color: #ede5fa; }
.game-meta small { color: #aba0bc; }
.favorite { background: #151126b8; color: #e4daef; border-color: #bb9de742; }
.favorite:hover, .favorite.on { color: #e1c0ff; background: #48286ca8; border-color: #c09ae6; }
.favorite.on svg { fill: #d0adff; }
.play-hover { background: #d6bcff; color: #251242; box-shadow: 0 0 0 8px #c49aff1c, 0 8px 25px #0005; }
.card-play-label { color: #e1ceff; }
.searchbox input, .catalog-tools select { background: #18162d; border-color: #554467; }
.searchbox .icon { color: #b6a4cd; }
.category { background: #1d192f; border-color: #493d60; color: #c0b5d3; }
.category.active { background: #a778f72b; border-color: #c294ff8c; color: #ead7ff; }
.category:hover { border-color: #ac83df; }
.categories, .ac-nav { scrollbar-color: #8267a8 transparent; }
.collection-heading { background: linear-gradient(90deg, #24143aef, #24204080), url('scenes/royal-salon.webp') center 40%/cover; border-color: #9b72ca66; }
.collection-heading p { color: #c9bdd8; }
.collection-emblem { background: #a57bdf14; border-color: #c5a1f66b; color: #d8bbff; box-shadow: 0 0 0 13px #b58dff08, 0 0 0 14px #b58dff12; }
.table-banner { border-color: #8c86d678; }
.table-banner:before { background: linear-gradient(90deg, #181238f2, #29214aba 45%, #112e4d47); }
.table-banner:after { border-color: #bfb0ef2b; }
.table-banner .eyebrow { color: var(--rb-cyan); }
.table-banner p { color: #cdc4db; }
.originals-promise { background: linear-gradient(110deg, #201938f0, #19243be0), url('scenes/emerald-temple.webp') center/cover; border-color: #7973ae60; }
.originals-promise > span { border-color: #70cbd46e; background: #52b2c816; color: var(--rb-cyan); }
.footer { border-color: #4a3b5f88; }
.footer strong { color: #cbc0de; }
.footer p, .footer-links { color: #a79db9; }
.footer-links > a:hover { color: var(--rb-cyan); }

/* Shared administration, forms, tables and modal surfaces. */
.surface, .account-app .surface, .help-list details {
  background: linear-gradient(135deg, #211d36, #17172d);
  border-color: #5a49734d;
}
.stat, .ac-stat { background: linear-gradient(135deg, #27213c, #1a1b33); border-color: #65508066; }
.stat.gold, .ac-stat.gold { background: linear-gradient(125deg, #44305e, #242043); border-color: #b28be78c; }
.stat.gold strong, .ac-stat.gold > strong { color: #ddc3ff; }
.stat-label, .stat small { color: #bbb0ca; }
.stat-label .icon { color: #c4a3eb; }
.panel-tabs { border-color: #504063; }
.panel-tab { color: #bdb0cf; }
.panel-tab.active { border-bottom-color: var(--rb-cyan); color: var(--rb-cyan); }
.table-wrap { background: #151427; border-color: #544568; }
thead { background: #2c2241; color: #cbb9df; }
td, .account-app td { color: #d6cfe3; border-color: #44365494; }
td strong { color: #f0e7fa; }
tbody tr:hover { background: #a482e610; }
.user-cell small { color: #afa0c1; }
.avatar { background: #af7dee20; border-color: #a979e84d; color: #d9b7ff; }
.network-card, .settings-check, .demo-accounts { border-color: #514160; }
.network-card .icon { color: var(--rb-cyan); }
.network-card small, .tree-hint, .field-help, .note { color: #ada1c0; }
.chart-bar { background: linear-gradient(#b68bff, #6754aa); }
.chart-value { color: #c8b1e4; }
.balance-large { color: #d5b9ff; }
.system-card { background: #171327; border-color: #514061; }
.system-card strong { color: #dcd0ed; }
.system-card code { color: #cfa9ff; }
.account-details small { color: #afa0c3; }
.modal-backdrop { background: #080516c9; }
.modal { background: linear-gradient(145deg, #29203b, #17152c 75%); border-color: #9e7dce88; box-shadow: 0 30px 120px #0009, 0 0 45px #854fc522; }
.modal-close { background: #af8ce318; }
.modal-bottom, .demo-accounts summary { color: #b2a4c6; }
.modal-bottom button { color: #d1acff; }
.demo-buttons button { background: #31253f; border-color: #6d5284; color: #e0cfef; }
.empty, .ac-empty { background: #241b351f; border-color: #7e629388; }
.empty .icon, .ac-empty > .icon { color: #c4a3e4; }
.tag-gold { background: #bf8af226; color: #dfbbff; }
.tag-blue { background: #70dce91b; color: #92e8f0; }
.tag-green { background: #80dfb417; color: #9ce9c4; }
.tag-red { background: #ff9fa919; color: #ffb0b8; }
.positive { color: #8ce4b7; }
.negative { color: #ffa8b2; }
.info-banner, .account-app .info-banner { background: #1b304044; border-color: #55899877; }
.info-banner p, .account-app .info-banner p { color: #bbcdd9; }
.info-banner .icon { color: var(--rb-cyan); }
.info-banner.warn, .offline-bar { background: #3c2b284d; border-color: #a67f6477; color: #efc7a7; }
.form-error, .ac-inline-result.error { color: #ffc0c4; background: #49232e; border-color: #ba687c77; }
.toast { background: #1a3832; border-color: #72b895; color: #dbf4e3; }
.toast.error { background: #462635; border-color: #cd829b; color: #ffdce6; }

/* Profile, wallet and the account control center. */
.account-app { --a-line: #58436c77; --a-gold: #d1b1ff; --a-muted: #b5aac9; }
.ac-demo-notice { background: #18313d; border-color: #45839377; color: #bfdae1; }
.ac-demo-notice > .icon { color: #8fe3e7; }
.ac-nav a { color: #bfb1d2; }
.ac-nav a.active { background: #b47aff21; border-color: #b78af570; color: #e1c8ff; }
.ac-nav a:hover { background: #ad80e517; }
.ac-profile-card { background: #24183d!important; border-color: #b288df6b!important; }
.ac-profile-card:before { background: linear-gradient(90deg, #1b1238fa 5%, #2c1b49e8 60%, #1a344a9c), url('scenes/emerald-temple.webp') center/cover; }
.ac-profile-card:after { color: #c99bf815; }
.ac-avatar { background: linear-gradient(140deg, #9864d78c, #38265e); border-color: #c496ed8c; color: #f3ddff; box-shadow: 0 10px 28px #140b2955; }
.ac-identity p, .ac-balance > span { color: #d0c0e0; }
.ac-balance strong { color: #eedfff; }
.ac-balance small { color: #c1acd6; }
.ac-intro-card .ac-intro-mark { border-color: #8ce7ed35; box-shadow: 0 0 0 20px #8ce7ed09, 0 0 0 40px #8ce7ed04; }
.ac-mini-row, .ac-game-row { border-color: #7153854a; }
.ac-stat > span { color: #cec0dc; }
.ac-stat > span > .icon { color: #c3a3e3; }
.ac-stat > small { color: #b5a5c8; }
.ac-game-row img { border-color: #8e6eae5c; }
.ac-code { background: #1a1231; border-color: #bc95ec99; }
.ac-code strong { color: #d6b8ff; }
.ac-ledger-summary div, .ac-status-card { background: #1b172e; border-color: #59457388; }
.ac-amount-field input { color: #dfc8ff; }
.ac-amounts button { background: #2a1f3e; border-color: #7b5b9b; color: #e5d2f7; }
.ac-amounts button:hover { background: #b783ff24; border-color: #cba2ff; }
.ac-quote { background: linear-gradient(140deg, #292046, #172d3a); border-color: #799ac184; }
.ac-quote dt { color: #c8bfdf; }
.ac-quote dd { color: #f1e9fc; }
.ac-quote .ac-total { border-color: #8d78aa60; }
.ac-total dd { color: #baf6f3; }
.ac-total dd small { color: #b6ccd7; }
.ac-payout-map { background: #24203c; border-color: #7e61a380; }
.ac-payout-map span { color: #c9b5da; }
.ac-payout-map strong { color: #ddbeff; }
.ac-payout-map > .icon { color: #8ce3ed; }
.ac-rule-list li { color: #bcb0cc; }
.ac-rule-list strong { color: #e5d8f2; }
.ac-rule-list li:before { background: #bb8dff12; border-color: #b18ad277; color: #d6b6f5; }
.ac-stepper span { background: #42324f; }
.ac-toolbar { background: linear-gradient(115deg, #2a203d, #1e2037); border-color: #8767a66b; }
.ac-user-link { color: #d3adff!important; }
.ac-history-detail pre { background: #131022; border-color: #59406d; color: #d1c2df; }
.ac-policy-grid strong { color: #cfb0ff; }
.ac-owner-warning { background: #3b2d2b; border-color: #ae866473; color: #efcead; }
.ac-management-link { background: linear-gradient(110deg, #3c2657, #173640); border-color: #a387d575; color: #eee1fa; }
.ac-management-link .icon { color: var(--rb-cyan); }
.ac-management-link small { color: #c1b5d4; }
.ac-modal .ac-readonly-grid input { color: #c5b6d9; }

/* User funding desk: the same palette, with cyan for the available balance. */
.ac-funding-hero {
  background:
    radial-gradient(ellipse at 100% 0, #69dce323, transparent 65%),
    linear-gradient(115deg, #35214f, #1c2540);
  border-color: #b18bdd80;
  box-shadow: inset 0 1px #ddc4ff10, 0 12px 36px #08061622;
}
.ac-funding-hero .eyebrow { color: #9becef; }
.ac-funding-hero p { color: #d0c0e0; }
.ac-funding-stats > div {
  background: #1c19327a;
  border-color: #b391d651;
}
.ac-funding-stats :is(span, small) { color: #c4b4d5; }
.ac-funding-stats strong { color: #e4ccff; }
.ac-funding-person .avatar {
  background: linear-gradient(140deg, #8e62c344, #38294f);
  color: #ead2ff;
  border-color: #b38bd55c;
}
.ac-funding-person small { color: #b7a6ca; }
.ac-funding-balance { color: #a6eeed; }
.ac-funding-summary {
  background: linear-gradient(125deg, #2a2041, #1b2e3a);
  border-color: #8997bf70;
}
.ac-funding-summary :is(dt, small) { color: #c2b8d2; }
.ac-funding-summary dd { color: #edddff; }
.ac-quick-amounts button {
  background: #302243;
  border-color: #9372af99;
  color: #e2c8fa;
}
.ac-quick-amounts button:hover {
  background: #b98af32b;
  border-color: #cb9fff;
}
.ac-quick-amounts button[aria-pressed="true"] {
  background: #3b3460;
  border-color: #a7dedf;
  color: #d2ffff;
}
.ac-funding-receipt {
  background: linear-gradient(120deg, #18372e, #1b2a35);
  border-color: #67b39488;
  color: #d1efde;
}
.ac-funding-receipt .icon { color: #90e3b5; }
.ac-funding-receipt small { color: #b4cfbf; }

@media (max-width: 800px) {
  .sidebar { box-shadow: 15px 0 55px #0007; }
  .mobile-shade.open { background: #080516c9; }
  .ac-profile-card:before { background: linear-gradient(90deg, #20143af5, #2a2044cf), url('scenes/emerald-temple.webp') center/cover; }
}
@media (max-width: 700px) {
  .hero:before { background: linear-gradient(90deg, #1d123aef, #2c1d4694); }
  .hero:after { background: linear-gradient(0deg, #1b123e8f, transparent 80%); }
  .table-banner:before { background: linear-gradient(90deg, #191238ef, #29214288); }
  .topbar { box-shadow: 0 5px 24px #05051530; }
}
@media (hover: none) {
  .game-art:hover { box-shadow: 0 12px 28px #0006; }
  .btn-gold:hover { filter: none; }
}
@media (prefers-reduced-motion: reduce) {
  :is(.game-art, .game-art img, .game-art:after, .card-title-art, .card-play-label, .btn, .sidebar) { transition: none!important; }
  :is(.game-art:hover, .game-art:hover img, .game-art:hover .card-title-art, .btn:hover) { transform: none; }
}
html[data-motion="reduced"] :is(.game-art:after, .sidebar) { transition: none!important; }

/* Keep the operational banner vivid without tinting the game surfaces. */
.account-app .surface.ac-funding-hero {
  background: radial-gradient(ellipse at 100% 0, #68e4ee30, transparent 70%), linear-gradient(115deg, #432563, #1b2c50);
  border-color: #a77de29c;
}
.ac-funding-person .ac-avatar { background: linear-gradient(140deg,#7852ba,#29274d); color:#f1e7ff; border-color:#ba94f866; }
.ac-funding-summary { background:transparent; }
.ac-funding-summary > div { background:linear-gradient(125deg,#2a2041,#1b2e3a); }
.ac-funding-receipt { background:transparent; color:#e5f5ef; }

/* Royal Black public identity */
.boot img{width:118px;height:118px;object-fit:contain;margin:0 auto 4px;filter:drop-shadow(0 16px 32px #0008) drop-shadow(0 0 20px #d6af5d24)}
.boot-crown{display:none}.brand img,.footer-brand>img,.modal-logo,.rv-game-name img{object-fit:contain;filter:drop-shadow(0 5px 12px #0008) drop-shadow(0 0 8px #d8b66026)}
.brand img{width:45px;height:45px;margin-left:-4px}.footer-brand>img{width:38px;height:38px;opacity:1}.modal-logo{width:76px;height:76px}
.hero{background:#080d12;box-shadow:0 28px 80px #02030a99,inset 0 1px #f4d79a20}
.hero-art{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;opacity:.96!important;mix-blend-mode:normal!important;filter:saturate(.94) contrast(1.04)!important;z-index:0}
.hero:after{background:linear-gradient(90deg,#080d12fa 0%,#080d12de 30%,#080d1288 48%,#080d1212 72%),linear-gradient(0deg,#070912a8 0%,transparent 45%)}
.hero:before{z-index:1;background:linear-gradient(135deg,#f3ce8610,transparent 28%,transparent 72%,#6edee910)}
.hero-copy{position:relative}.hero-bottom{position:absolute}
.fair-play-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:12px 0 34px;border:1px solid #4b3c695e;border-radius:12px;overflow:hidden;background:#4b3c6938;box-shadow:0 16px 36px #05030e45}
.fair-play-strip span{display:flex;align-items:center;justify-content:center;gap:9px;padding:13px 16px;background:linear-gradient(135deg,#161126,#101829);font-size:8px;font-weight:800;letter-spacing:1.35px;color:#b9b4c9}.fair-play-strip .icon{width:15px;height:15px;color:#d6b86d}
@media(max-width:800px){.brand img{width:48px;height:48px}.hero-art{object-position:57% center!important}.hero:after{background:linear-gradient(90deg,#080d12fa 0%,#080d12d9 48%,#080d1240 82%),linear-gradient(0deg,#070912b5 0%,transparent 55%)}.fair-play-strip{margin-bottom:28px}}
@media(max-width:620px){.hero-art{object-position:64% center!important;opacity:.74!important}.hero:after{background:linear-gradient(90deg,#080d12fc 0%,#080d12dc 58%,#080d1255 100%),linear-gradient(0deg,#070912ed 0%,transparent 60%)}.fair-play-strip{grid-template-columns:1fr}.fair-play-strip span{justify-content:flex-start;padding:12px 15px}.boot img{width:96px;height:96px}}
