/* Shared lobby chrome and route content use the same shell dimensions. */
body.bl-theme {
  --bl-shell-sidebar: 260px;
  --bl-shell-header: 88px;
  --bl-shell-gutter: 40px;
}

.bl-header-wallet-actions { display: flex; align-items: center; gap: 9px; }
.bl-header-wallet-actions .bl-button { min-height: 39px; padding: 0 15px; gap: 8px; }
.bl-header-wallet-actions .bl-button-outline { border-color: #6b6145; color: #e0c58e; }

body.bl-theme .bl-app-download-banner {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 13px;
  margin: calc(var(--bl-shell-header) + 18px) var(--bl-shell-gutter) 0 calc(var(--bl-shell-sidebar) + var(--bl-shell-gutter));
  padding: 14px 18px;
  border: 1px solid #3a4536;
  border-radius: 9px;
  background: linear-gradient(105deg, #243127, #1a2320);
  color: #e9eee2;
  font-family: Arial, Helvetica, sans-serif;
}
.bl-app-download-banner > .bl-icon { width: 27px; height: 27px; color: #dfbb75; }
.bl-app-download-banner > div { flex: 1; min-width: 0; }
.bl-app-download-banner strong { display: block; font-size: 13px; font-weight: 600; }
.bl-app-download-banner span { display: block; margin-top: 3px; font-size: 10px; color: #aebba9; }
.bl-app-download-banner .bl-button { font: inherit; font-size: 11px !important; min-height: 37px; padding: 0 16px; cursor: pointer; }
body.bl-theme .bl-app-download-banner + #mkApp { margin-top: 0 !important; }

body.bl-theme .bl-shared-footer {
  margin: 0 var(--bl-shell-gutter) 0 calc(var(--bl-shell-sidebar) + var(--bl-shell-gutter));
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.5;
}
.bl-shared-footer *, .bl-app-download-banner * { box-sizing: border-box; }
.bl-shared-footer .bl-site-footer { display: block !important; visibility: visible !important; pointer-events: auto !important; }
.bl-shared-footer button { font-family: inherit; cursor: pointer; appearance: none; }
.bl-shared-footer a { color: inherit; text-decoration: none; }
.bl-shared-footer p { margin: 0; }
.bl-shared-footer button:focus-visible, .bl-shared-footer a:focus-visible,
.bl-app-download-banner button:focus-visible { outline: 2px solid #dfb86c; outline-offset: 4px; }

/* Account navigation stays beside its content, inside the main lobby column. */
body.bl-theme:not(.bl-home) {
  --mk-account-header-height: var(--bl-shell-header);
  background: var(--bl-bg) !important;
}
body.bl-theme.mk-account-mode .custom-navbar,
body.bl-theme.mk-account-pending .custom-navbar,
body.bl-theme:not(.bl-home) .secondary-nav-container,
body.bl-theme:not(.bl-home) #mobile-footer-nav.mobile-only-footer,
body.bl-theme:not(.bl-home) #mobileLeftSidebar,
body.bl-theme:not(.bl-home) #leftSidebarOverlay { display: none !important; }
body.bl-theme:not(.bl-home) #mkApp { padding-top: 22px !important; min-height: 55vh; }
body.bl-theme:not(.bl-home) :is(.mk-account-page, .mk-details-page, .mk-statement-page) { background: transparent; overflow: visible; }
body.bl-theme:not(.bl-home) .mk-account-layout {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 20px;
  padding: 0 0 20px !important;
  min-height: 55vh;
  background: transparent;
}
body.bl-theme:not(.bl-home) .mk-account-sidebar {
  position: sticky;
  top: calc(var(--bl-shell-header) + 20px);
  left: auto;
  flex: 0 0 215px;
  width: 215px;
  height: auto;
  min-height: 0;
  max-height: calc(100vh - var(--bl-shell-header) - 40px);
  align-self: flex-start;
  overflow-y: auto;
  z-index: 3;
  border: 1px solid #303932;
  border-radius: 9px;
  background: #171e1c;
  box-shadow: none;
}
body.bl-theme:not(.bl-home) .mk-account-content { flex: 1; width: 0; min-width: 0; margin-left: 0; padding: 0; }
body.bl-theme:not(.bl-home) .mk-account-inner { max-width: 100%; }
body.bl-theme:not(.bl-home) .mk-side-title { background: #1e2822; color: #dfc38c; border-bottom: 1px solid #3c4636; font-size: 12px; letter-spacing: 1.3px; }
body.bl-theme:not(.bl-home) .mk-side-menu { padding: 8px; }
body.bl-theme:not(.bl-home) .mk-side-menu a { min-height: 47px; padding-left: 10px; padding-right: 25px; border-radius: 5px; color: #bac4bf; font-size: 10px; font-weight: 600; }
body.bl-theme:not(.bl-home) .mk-side-menu a i { flex-basis: 18px; width: 18px; font-size: 14px; color: #9eac9f; }
body.bl-theme:not(.bl-home) .mk-side-menu a::after { right: 9px; color: #a6966d; }
body.bl-theme:not(.bl-home) .mk-side-menu li.active a { background: #303427; color: #e5c585; }
body.bl-theme:not(.bl-home) .mk-side-menu li.active a i { color: #e5c585; }
body.bl-theme:not(.bl-home) .mk-side-menu a:hover { background: #263029; color: #f0e9d8; }
body.bl-theme:not(.bl-home) .mk-side-menu a span { white-space: normal; line-height: 1.4; }
body.bl-theme:not(.bl-home) .mk-account-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 0; }
body.bl-theme:not(.bl-home) .mk-dw-shell { min-height: 0; padding: 0; }

/* Keep account forms readable on the charcoal surfaces. */
body.bl-theme:not(.bl-home) :is(.mk-card, .mk-statement-card, .mk-dw-card) {
  background: #1a211f;
  border: 1px solid #303a32;
  border-radius: 9px;
  color: #e3e7de;
  box-shadow: none;
  min-height: 0;
}
body.bl-theme:not(.bl-home) :is(.mk-card-head, .mk-statement-filters, .mk-dw-tab, .mk-games-tabs-wrap, .mk-game-tab, .mk-activity-head) { background: #222c25; color: #e2d2a9; border-color: #374335; }
body.bl-theme:not(.bl-home) .mk-card-head { font-size: 17px; border-bottom: 1px solid #374335; }
body.bl-theme:not(.bl-home) .mk-card-body { padding: 25px 22px; }
body.bl-theme:not(.bl-home) :is(.mk-details-page label, .mk-filter > span, .mk-empty-title, .mk-empty-text, .mk-activity-title) { color: #c4cfc3; }
body.bl-theme:not(.bl-home) :is(.mk-account-content .form-control, .mk-dw-amount-input, .mk-wd-input, .mk-wd-selectbtn, .mk-wd-bank-search, .mk-ui-txn) { background: #121a17; color: #e5e8de; border-color: #46533e; border-radius: 6px; color-scheme: dark; }
body.bl-theme:not(.bl-home) .mk-account-content .form-control:focus,
body.bl-theme:not(.bl-home) :is(.mk-dw-amount-input, .mk-wd-input):focus { border-color: #d0ae68; outline: 2px solid #d0ae6829; }
body.bl-theme:not(.bl-home) :is(.mk-card-actions .btn, .input-group-btn .btn, .mk-apply-btn, .mk-dw-next, .mk-ui-deposit, .mk-wd-savebtn) { background: #dfbb75; border-color: #dfbb75; color: #20271e; border-radius: 6px; }
body.bl-theme:not(.bl-home) .mk-dw-tab.active { color: #efd197; border-bottom-color: #dfbb75; background: #2a3429; }
body.bl-theme:not(.bl-home) :is(.mk-statement-table, .mk-statement-table td) { color: #d4ddd1; border-color: #374136; }
body.bl-theme:not(.bl-home) .mk-statement-table thead th { background: #293329; color: #d7c99f; border-color: #3d4939; }
body.bl-theme:not(.bl-home) .mk-statement-table tbody tr:nth-child(odd) { background: #1a211f !important; }
body.bl-theme:not(.bl-home) .mk-statement-table tbody tr:nth-child(even) { background: #202923 !important; }
body.bl-theme:not(.bl-home) .mk-game-tab { color: #bac6b8; }
body.bl-theme:not(.bl-home) .mk-game-tab.mk-active { background: #343a2b; color: #e2c587; }
body.bl-theme:not(.bl-home) .mk-dw-body { color: #d4decf; }
body.bl-theme:not(.bl-home) .mk-terms-link { color: #d9bd7f; }
body.bl-theme:not(.bl-home) :is(.mk-dw-note, .mk-dw-rate-hint, .mk-dw-terms, .mk-wd-minhint, .mk-wd-reqnote) { color: #a9baa4; }
body.bl-theme:not(.bl-home) :is(.mk-dw-amount-label, .mk-dw-amount-box-label, .mk-wd-head, .mk-wd-edit-head, .mk-wd-label, .mk-wd-reqtitle) { color: #dfc58d; }
body.bl-theme:not(.bl-home) :is(.mk-dw-quick-btn, .mk-dw-merchant, .mk-wd-item, .mk-wd-formbox, .mk-wd-reqbox, .mk-wd-backbtn, .mk-dw-bankbox, .mk-dw-notebox, .mk-ui-address, .mk-ui-btn, .mk-dw-method, .mk-dw-gateway-card, .mk-dw-gateway-stat, .mk-dw-gateway-channel, .mk-wd-select-menu, .mk-wd-bank-menu, .mk-wd-select-option, .mk-dw-qrbox, .mk-ui-attach) { background: #222c25; border-color: #43503c; color: #dce5d7; box-shadow: none; }
body.bl-theme:not(.bl-home) :is(.mk-wd-topnote, .mk-wd-item-btn, .mk-ui-accountName) { background: #303c2c; color: #e5d1a2; }
body.bl-theme:not(.bl-home) .mk-dw-quick-btn:hover { border-color: #c6aa6c; background: #303a2c; }
body.bl-theme:not(.bl-home) .mk-dw-body :is(.mk-dw-field-error, .mk-dw-stepmsg) { color: #ef9d92; }

/* Embedded games fit the available column while preserving their own iframe. */
html:has(body.bl-theme #mkApp .game-container),
body.bl-theme:has(#mkApp .game-container) { overflow: auto !important; height: auto !important; }
body.bl-theme:not(.bl-home) #mkApp .game-container {
  position: relative;
  inset: auto;
  width: 100%;
  height: calc(100dvh - var(--bl-shell-header) - 125px);
  min-height: 500px;
  border: 1px solid #303a32;
  border-radius: 9px;
  background: #111716;
}
body.bl-theme #mkApp .game-container iframe { width: 100%; max-width: 100%; }
body.bl-theme #mkApp .mobile-game-header { display: none !important; }

@media (min-width: 1750px) { body.bl-theme { --bl-shell-gutter: 52px; } }
@media (max-width: 1600px) { body.bl-theme:not(.bl-home) .mk-account-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 1380px) { body.bl-theme { --bl-shell-sidebar: 225px; --bl-shell-gutter: 30px; } }
@media (max-width: 1250px) { body.bl-signed-in .bl-header-context { display: none; } body.bl-signed-in .bl-header-actions { gap: 12px; } }
@media (max-width: 1120px) { body.bl-signed-in .bl-header-download, body.bl-signed-in .bl-header-separator { display: none; } }
@media (max-width: 960px) {
  body.bl-theme { --bl-shell-sidebar: 0px; --bl-shell-header: 76px; --bl-shell-gutter: 24px; }
  body.bl-theme:not(.bl-home) .mk-account-sidebar { flex-basis: 200px; width: 200px; }
  .bl-header-wallet-actions .bl-button { padding: 0 12px; }
}
@media (max-width: 767px) {
  body.bl-theme:not(.bl-home) .mk-account-sidebar { display: none !important; }
  body.bl-theme:not(.bl-home) .mk-account-content { width: 100%; }
  body.bl-theme:not(.bl-home) .mk-account-layout { padding-bottom: 12px !important; }
  body.bl-theme:not(.bl-home) .mk-account-grid { display: grid; gap: 14px; }
  body.bl-theme:not(.bl-home) .mk-card { margin: 0; border-radius: 9px; }
  body.bl-theme:not(.bl-home) #mkApp .game-container { min-height: 420px; height: 65dvh; }
}
@media (max-width: 740px) {
  body.bl-theme { --bl-shell-header: 70px; --bl-shell-gutter: 18px; }
  body.bl-theme.bl-signed-in { --bl-shell-header: 112px; }
  body.bl-signed-in .bl-site-header { height: var(--bl-shell-header); flex-wrap: wrap; align-content: center; row-gap: 7px; padding-top: 7px; padding-bottom: 7px; }
  body.bl-signed-in .bl-header-left { width: 100%; height: 35px; }
  body.bl-signed-in .bl-header-actions { width: 100%; justify-content: flex-end; gap: 7px; }
  body.bl-signed-in .bl-header-wallet-actions { gap: 6px; }
  body.bl-signed-in .bl-header-wallet-actions .bl-button { min-height: 32px; padding: 0 12px; font-size: 10px !important; }
  body.bl-signed-in .bl-balance-button { margin-right: auto; min-height: 32px; }
  body.bl-signed-in .bl-header-wallet-actions .bl-icon { display: none; }
  body.bl-theme .bl-app-download-banner { margin-top: calc(var(--bl-shell-header) + 12px); padding: 11px 12px; gap: 10px; }
  .bl-app-download-banner > .bl-icon { width: 23px; height: 23px; }
  .bl-app-download-banner strong { font-size: 11px; }
  .bl-app-download-banner span { font-size: 8px; line-height: 1.5; }
  .bl-app-download-banner .bl-button { min-height: 34px; padding: 0 11px; font-size: 10px !important; gap: 6px; }
  .bl-app-download-banner .bl-button .bl-icon { display: none; }
  body.bl-theme:not(.bl-home) #mkApp { padding-top: 16px !important; }
  body.bl-theme:not(.bl-home) .mk-card-body { padding: 22px 16px; }
}
@media (max-width: 480px) {
  body.bl-theme { --bl-shell-gutter: 14px; }
  body.bl-signed-in .bl-header-actions { gap: 5px; }
  body.bl-signed-in .bl-header-wallet-actions { gap: 5px; }
  body.bl-signed-in .bl-header-wallet-actions .bl-button { padding: 0 10px; }
  .bl-app-download-banner span { max-width: 145px; }
  body.bl-theme:not(.bl-home) .mk-account-layout { gap: 0; }
}
