/* BNB palette shared by the original shell and creator / launch screens. */
:root,
:root.dark {
  color-scheme: dark;
  --background: 60 6% 3%;
  --background-hover: 42 15% 11%;
  --foreground: 45 22% 94%;
  --foreground-hover: 45 30% 98%;
  --primary: 45 22% 94%;
  --primary-hover: 45 30% 98%;
  --secondary: 42 7% 57%;
  --secondary-hover: 42 10% 74%;
  --card: 40 10% 7%;
  --border: 40 16% 15%;
  --input: 40 10% 8%;
  --field: 40 10% 8%;
  --accent: 46 91% 49%;
  --accent-hover: 46 100% 60%;
  --money: 46 91% 49%;
  --scroll-thumb-color: 40 18% 23%;
  --scroll-track-color: 60 6% 3%;
  --bnb-gold: #f0b90b;
  --bnb-gold-hover: #ffce34;
  --bnb-gold-soft: #ebce7b;
  --bnb-gold-muted: #ad9a6a;
  --bnb-ink: #171204;
  --bnb-surface: #11100e;
  --bnb-surface-raised: #191710;
  --bnb-surface-field: #161513;
  --bnb-gold-wash: #211c0f;
  --bnb-border: #2c2820;
  --bnb-border-gold: #59481c;
  --bnb-yellow: var(--bnb-gold);
  --flap-green: var(--bnb-gold);
}

::selection { background: #f0b90b40; color: #fff7df; }
input, textarea { caret-color: var(--bnb-gold); }
a:focus-visible, button:focus-visible {
  outline-color: var(--bnb-gold);
}

/* Retain the shell's spacing, type, and responsive navigation. */
[data-sidenav-panel] { border-color: var(--bnb-border); }
a[aria-label="UsePaid - home"] { color: var(--bnb-gold); }
nav[aria-label="Primary"] a[aria-current="page"],
nav[aria-label="Primary"] a.creator-nav-selected {
  color: var(--bnb-gold);
  background-color: #f0b90b0a;
}
nav[aria-label="Primary"] a:hover { color: var(--bnb-gold-soft); }
header a.bg-primary, a.bg-primary, button.bg-primary {
  background-color: var(--bnb-gold);
  color: var(--bnb-ink);
}
header a.bg-primary:hover, a.bg-primary:hover, button.bg-primary:hover {
  background-color: var(--bnb-gold-hover);
}
header button:not([aria-label]) {
  color: var(--bnb-gold-soft);
  border-color: var(--bnb-border-gold);
}
header button:not([aria-label]):hover { background: var(--bnb-gold-wash); }
header input:focus { color: #f6f2e8; }
header div:has(> input[aria-label="Search query"]):focus-within {
  border-color: var(--bnb-border-gold);
}
.replica-mobile-menu { background: hsl(var(--background)); }
.replica-mobile-menu a:hover { color: var(--bnb-gold); }
.replica-dialog, .replica-search-results, .replica-toast {
  background: var(--bnb-surface);
  border-color: var(--bnb-border-gold);
}
.replica-dialog button, .replica-search-results a:hover {
  background: var(--bnb-surface-raised);
  border-color: var(--bnb-border);
}
.replica-dialog button:hover { border-color: var(--bnb-border-gold); }
.replica-dialog .replica-close { background: transparent; }
.replica-selected {
  background: var(--bnb-gold)!important;
  color: var(--bnb-ink)!important;
  border-color: var(--bnb-gold)!important;
}

/* Platform logos and profile photos retain their original colors. */
.platform-huya, .platform-bilibili, .platform-douyin { color: var(--bnb-gold); }
.platform-selector button { background: var(--bnb-surface); border-color: var(--bnb-border); }
.platform-selector button:hover { color: var(--bnb-gold-soft); border-color: var(--bnb-border-gold); }
.platform-selector button[aria-pressed="true"],
.platform-selector button[data-platform][aria-pressed="true"] {
  color: var(--bnb-gold-soft);
  background: var(--bnb-gold-wash);
  border-color: var(--bnb-border-gold);
}
.platform-profile, .creator-claim-card, .creator-finder {
  background: var(--bnb-surface);
  border-color: var(--bnb-border);
}
.platform-profile-avatar { border-color: var(--bnb-surface); }
.platform-profile-cover {
  background: radial-gradient(ellipse at 20% 80%, #8b6919, transparent 58%), linear-gradient(120deg, #282117, #0b0b09);
}
.platform-profile-claim, .creator-claim-continue, .finder-use:not(:disabled) {
  background: var(--bnb-gold);
  color: var(--bnb-ink);
}
.platform-profile-claim:hover, .creator-claim-continue:hover, .finder-use:not(:disabled):hover {
  background: var(--bnb-gold-hover);
}
.finder-step input:focus, .picker-page-input:focus {
  outline-color: var(--bnb-gold);
  border-color: var(--bnb-gold);
}
.finder-search-link, .finder-inline-button { border-color: var(--bnb-border-gold); color: var(--bnb-gold-soft); }
.finder-search-link:hover, .finder-inline-button:hover { background: var(--bnb-gold-wash); color: var(--bnb-gold); }
.finder-account, .picker-manual-account { background: var(--bnb-surface-raised); border-color: var(--bnb-border); }
.picker-popup { background: var(--bnb-surface); border-color: var(--bnb-border-gold); }
.picker-account-row:hover, .picker-account-row[aria-selected="true"] { background: var(--bnb-gold-wash); }
.picker-account-row[aria-selected="true"] strong { color: var(--bnb-gold-soft); }
.picker-popup-footer { background: #0d0c0a; border-color: var(--bnb-border); }
.picker-popup-footer button { color: var(--bnb-gold-soft); }
.picker-account-row:focus-visible, .picker-popup-footer button:focus-visible { outline-color: var(--bnb-gold); }

.bnb-main { color: #f2eee5; }
.bnb-panel, .bnb-bento-card, .bnb-token-card, .bnb-creator-card, .bnb-link-list a, .bnb-review {
  background-color: var(--bnb-surface);
  border-color: var(--bnb-border);
}
.bnb-outline-button, .bnb-order-tabs { background: var(--bnb-surface-raised); border-color: var(--bnb-border); }
.bnb-outline-button:hover { background: #232016; border-color: var(--bnb-border-gold); }
.bnb-bento-open { color: var(--bnb-gold-soft); }
.bnb-platform-art img { background: var(--bnb-surface-raised); border-color: var(--bnb-border); }
.bnb-panel input:not([type="file"]), .bnb-panel textarea, .bnb-panel select, .bnb-search-input,
.finder-step input, .picker-page-input {
  background: var(--bnb-surface-field);
  border-color: #383227;
}
.bnb-panel .bnb-upload { background: var(--bnb-surface-field); border-color: #4b4027; }
.bnb-panel input:focus, .bnb-panel textarea:focus, .bnb-panel select:focus, .bnb-search-input:focus {
  border-color: var(--bnb-gold);
  box-shadow: 0 0 0 2px #f0b90b12;
}
.bnb-metric-grid strong { color: var(--bnb-gold); }
.bnb-launch-preview dl>div, .bnb-token-detail dl>div, .bnb-review dl>div { border-color: var(--bnb-border); }
.bnb-venue-filter button[aria-checked="false"] { background: var(--bnb-surface); border-color: var(--bnb-border); color: #858074; }
