/* Shared BlueRabbit presentation. Page state and game layouts remain page-owned. */
body[data-site-chrome="bluerabbit"] {
  --body:"Segoe UI",Arial,"Helvetica Neue",sans-serif;
  --site-width:1180px;
  --site-gutter:28px;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--body);
  -webkit-font-smoothing:antialiased;
}
:root:not([data-theme]) body[data-site-chrome="bluerabbit"],
:root[data-theme="dark"] body[data-site-chrome="bluerabbit"] {
  --paper:#101126;
  --surface:#171b39;
  --raised:#202549;
  --ink:#edf0ff;
  --muted:#929abd;
  --accent:#716bff;
  --lavender:#afaaff;
  --line:#292d4c;
  --neon:#3939ff;
  --theme-on-accent:#fff;
  --theme-field:#12162e;
}
html[data-theme] body[data-site-chrome="bluerabbit"] { background:var(--paper); color:var(--ink); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) > :is(.site-header,.merchant-payment-header) {
  position:sticky;
  top:var(--ncb-tg-inset-top,0px);
  z-index:35;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  width:100%;
  max-width:none;
  min-height:76px;
  margin:0;
  padding:12px max(var(--site-gutter),calc((100% - var(--site-width))/2));
  gap:12px;
  border:0;
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--paper) 96%,transparent);
  backdrop-filter:blur(18px);
  box-shadow:none;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.site-header .brand,.payment-brand) {
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-inline-end:auto;
  color:var(--ink);
  text-decoration:none;
  flex:none;
  white-space:nowrap;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.site-header .brand-logo,.payment-brand .brand-logo) {
  display:block;
  width:44px;
  height:44px;
  flex:none;
  border-radius:0;
  object-fit:contain;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.brand,.payment-brand) > .lobby-brand-wordmark {
  display:flex;
  flex-direction:column;
  gap:0;
  font-size:19px;
  font-weight:900;
  line-height:.85;
  letter-spacing:-.5px;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.brand,.payment-brand) > .lobby-brand-wordmark > span {
  font-size:15px;
  font-weight:900;
  line-height:.85;
  letter-spacing:.4px;
}
html[data-theme="light"] body[data-site-chrome="bluerabbit"] :is(.site-header,.merchant-payment-header) .brand-logo { filter:brightness(0) saturate(100%) opacity(.85); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header .header-actions { flex-wrap:wrap; gap:12px; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header :is(.button,.theme-button,.sound-toggle) { min-height:44px; border-radius:10px; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header .header-usd-balance {
  width:auto; max-width:250px; min-width:120px; min-height:48px;
  margin:0; padding:7px 12px; border:1px solid var(--line);
  border-radius:11px; background:var(--theme-field,var(--surface)); box-shadow:none;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.button-dark,.form-submit) {
  background:var(--neon,var(--accent)); color:var(--theme-on-accent,#fff); border-color:transparent; box-shadow:none;
}
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.button-dark,.form-submit):hover { background:var(--accent); transform:none; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.button-outline,.auth-input-shell,.auth-google) { border-color:var(--line); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .button-outline { background:var(--theme-field,var(--surface)); color:var(--ink); box-shadow:none; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.button-outline,.auth-google):hover { background:var(--raised); border-color:var(--accent); transform:none; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.auth-input-shell,.auth-google) { background:var(--theme-field,var(--surface)); color:var(--ink); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.profile-identity,.profile-overview-card,.profile-level-card,.profile-stat,.profile-referrals,.profile-withdrawals,.contact-card,.contact-resource,.fair-card,.settings-card,.terms-contents,.terms-content) {
  border-color:var(--line); background:var(--surface); box-shadow:none;
}
body[data-site-chrome="bluerabbit"].profile-overview-page .profile-hero { background:var(--surface); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.profile-achievement,.profile-referral-claim,.withdrawal-request,.withdrawal-amount-card) { border-color:var(--line); background:var(--theme-field,var(--paper)); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .profile-achievement.is-unlocked { border-color:color-mix(in srgb,var(--accent) 50%,var(--line)); background:color-mix(in srgb,var(--accent) 7%,var(--paper)); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .settings-games .advanced-game-option { border-color:var(--line); background:var(--theme-field,var(--paper)); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .settings-games .advanced-game-option:where(:hover,:has(input:checked)) { border-color:color-mix(in srgb,var(--accent) 50%,var(--line)); background:color-mix(in srgb,var(--accent) 7%,var(--surface)); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .profile-identity::before { content:none; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.fair-action-status,.fair-verification):not([data-state]) { color:var(--muted); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.profile-avatar,.profile-level-chip,.profile-referral-rate,.profile-icon) { color:var(--accent); border-color:var(--line); background:var(--raised); box-shadow:none; }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .profile-referral-url { color:var(--ink); border-color:var(--line); background:var(--theme-field); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.profile-eyebrow,.fair-intro,.fair-details summary,.fair-proof-summary) { color:var(--muted); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .fair-card :is(input,textarea,select) { background:var(--theme-field); border-color:var(--line); color:var(--ink); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .fair-card label { color:var(--ink); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .fair-chip { color:var(--muted); border-color:var(--line); background:var(--raised); }
body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.site-footer,.profile-footer,.fair-footer) { color:var(--muted); border-color:var(--line); }
body[data-site-chrome="bluerabbit"].merchant-payment-page {
  --payment-bg:var(--paper); --payment-panel:var(--surface); --payment-ink:var(--ink);
  --payment-muted:var(--muted); --payment-line:var(--line); --payment-accent:var(--neon,var(--accent));
  --payment-field:var(--theme-field); --payment-focus:var(--accent);
}
@media(max-width:600px) {
  body[data-site-chrome="bluerabbit"] { --site-gutter:16px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) > :is(.site-header,.merchant-payment-header) { min-height:76px; gap:10px; padding-block:12px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.site-header .brand-logo,.payment-brand .brand-logo) { width:38px; height:38px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.site-header .brand,.payment-brand) { gap:7px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.brand,.payment-brand) > .lobby-brand-wordmark { font-size:17px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) :is(.brand,.payment-brand) > .lobby-brand-wordmark > span { font-size:13px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header .header-actions { gap:8px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header :is(.button,.theme-button) { font-size:12px; padding:10px 12px; }
  body[data-site-chrome="bluerabbit"]:not([data-lobby-layout]) .site-header .header-usd-balance { max-width:180px; }
}
@media print {
  body[data-site-chrome="bluerabbit"].terms-page { --paper:#fff; --ink:#000; --muted:#444; background:#fff; color:#000; }
  body[data-site-chrome="bluerabbit"].terms-page > .site-header { position:static; backdrop-filter:none; }
}

/* The same navigation appears before content in every admin template. */
.admin-main-nav { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 22px; padding:0 0 20px; border:0; border-bottom:1px solid var(--line); }
.admin-main-nav > a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:12px 16px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:var(--theme-field,var(--paper)); font:700 13px/1.4 var(--body); text-align:center; text-decoration:none; overflow-wrap:anywhere; }
.admin-main-nav > a:hover { border-color:var(--accent); }
.admin-main-nav > a[aria-current] { color:var(--accent); border-color:var(--accent); background:var(--raised); }
.admin-main-nav > a:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }

/* Sapphire Rabbit: preserve the selected brand colours in every theme. */
body[data-site-chrome="bluerabbit"] img.brand-logo,
body[data-site-chrome="bluerabbit"] .provider-brand > img { border:0; border-radius:0; box-shadow:none; filter:none!important; object-fit:contain; }
body[data-site-chrome="bluerabbit"] .lobby-brand-wordmark { font-style:normal; }
body[data-site-chrome="bluerabbit"] .provider-brand-wordmark { font-size:16px; font-weight:800; letter-spacing:1.2px; }
body[data-site-chrome="bluerabbit"] .lobby-footer-brand { flex-direction:row; align-items:center; gap:10px; }
body[data-site-chrome="bluerabbit"] .lobby-footer-brand > .brand-logo { width:38px; height:48px; }
body[data-site-chrome="bluerabbit"] .lobby-footer-brand > .lobby-brand-wordmark { align-items:flex-start; font-size:18px; line-height:.9; letter-spacing:0; }
body[data-site-chrome="bluerabbit"] .lobby-footer-brand > .lobby-brand-wordmark > span { font-size:14px; line-height:1; letter-spacing:.8px; }
