/* RiverX V179 — focused visual refinement.
   This final cascade intentionally changes presentation only. Poker artwork,
   seat geometry, element IDs, application routes, and financial behavior stay
   owned by the existing V157–V169 layers and RiverX runtime. */

:root {
  --rx179-radius-card: 14px;
  --rx179-radius-control: 10px;
  --rx179-card-padding: 18px;
  --rx179-border: rgba(151, 174, 204, 0.14);
  --rx179-border-strong: rgba(151, 174, 204, 0.24);
  --rx179-shadow-card: 0 10px 26px rgba(0, 0, 0, 0.16);
  --rx179-shadow-modal: 0 24px 64px rgba(0, 0, 0, 0.34);
  --rx179-purple: #7c63ff;
  --rx179-purple-hover: #8c75ff;
  --rx179-purple-soft: rgba(124, 99, 255, 0.12);
  --rx179-gold: #d8ad59;
  --rx179-green: #21b979;
  --rx179-red: #ef5f70;
  --rx179-muted: #8798ad;
}

/* Quieter atmosphere and a smaller, repeatable typography scale. */
body.rx-v157 {
  background:
    radial-gradient(circle at 78% -20%, rgba(100, 77, 224, 0.085), transparent 38rem),
    linear-gradient(180deg, #091523 0%, var(--rx157-bg) 48%, #050c15 100%) !important;
}

body.rx-v157::before {
  opacity: 0.2 !important;
}

body.rx-v157 :where(.section-heading h2, .rx-lobby-row-heading h2) {
  font-size: clamp(1.65rem, 2.5vw, 2.25rem) !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}

body.rx-v157 :where(.section-heading p, .rx-home-hero-copy-v157 p, .rx-lobby-row-heading p) {
  color: var(--rx179-muted) !important;
  font-size: 0.875rem !important;
  line-height: 1.55 !important;
}

body.rx-v157 :where(
  #topWalletBalance,
  #rxTopbarWalletBalance,
  #cashierBalanceText,
  #yourChipBalance,
  #tableBalanceRequirement,
  #potText,
  #playerCountText,
  #blindText,
  #buyInText,
  .table-player-count,
  .live-player-count,
  .rx-home-table-live-count,
  .rx-table-card-stats-v157 strong,
  .rx-home-table-stat-v158 strong,
  .rx-deposit-info-card strong,
  .rx-deposit-payment-status-row strong,
  .rx-withdraw-quote-summary-v145 strong,
  .admin-stat-card strong,
  input[type="number"]
) {
  font-variant-numeric: tabular-nums lining-nums !important;
}

body.rx-v157 :where(.eyebrow, .rx-kicker-v157, .rx-section-kicker-v157) {
  color: #a99cff !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.12em !important;
}

/* One surface language across cards and panels. */
body.rx-v157 :where(
  .rx-home-table-graphic-card,
  .table-card,
  .balance-card,
  .kyc-card,
  .legal-hero-panel,
  .compliance-status-card,
  .legal-doc-card,
  .readiness-card,
  .admin-surface-card,
  .admin-stat-card,
  .rx-account-overview-card-v98,
  .rx-account-balance-card-v98,
  .rx-account-security-card-v100,
  .rx-deposit-top-panel,
  .rx-deposit-create-form,
  .rx-deposit-payment-v130,
  .rx-withdraw-step-card-v145
) {
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  box-shadow: var(--rx179-shadow-card) !important;
}

body.rx-v157 :where(.home-table-grid, .table-grid, .rx-compact-table-row) {
  grid-auto-rows: 1fr !important;
  gap: 16px !important;
}

body.rx-v157 :where(.rx-home-table-graphic-card, .table-card) {
  height: 100% !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.15) !important;
}

body.rx-v157 :where(.rx-home-table-graphic-card, .table-card):hover {
  border-color: rgba(151, 133, 255, 0.4) !important;
  box-shadow: 0 13px 30px rgba(0, 0, 0, 0.2) !important;
  transform: translateY(-1px) !important;
}

body.rx-v157 :where(.rx-home-table-media-v157 img, .table-preview-frame img) {
  filter: saturate(0.94) contrast(1.02) !important;
}

body.rx-v157 :where(.rx-home-table-graphic-card, .table-card):hover :where(.rx-home-table-media-v157 img, .table-preview-frame img) {
  filter: saturate(1) contrast(1.03) !important;
  transform: scale(1.02) !important;
}

body.rx-v157 .rx-home-table-content-v157 {
  min-height: 158px !important;
  padding: var(--rx179-card-padding) !important;
  gap: 11px !important;
}

body.rx-v157 .table-card-content {
  height: 100% !important;
  padding: var(--rx179-card-padding) !important;
  gap: 12px !important;
  grid-template-rows: auto auto minmax(36px, 1fr) auto auto !important;
}

body.rx-v157 :where(.rx-home-table-title-v157, .rx-table-card-title-v157 > div > strong) {
  font-size: 1rem !important;
  font-weight: 780 !important;
}

body.rx-v157 .rx-home-table-live-count,
body.rx-v157 .table-card .live-player-count {
  min-height: 28px !important;
  padding: 0 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #d7d1ff !important;
  background: var(--rx179-purple-soft) !important;
  border: 1px solid rgba(124, 99, 255, 0.22) !important;
  border-radius: 999px !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
}

body.rx-v157 .rx-home-table-live-count::before {
  width: 5px !important;
  height: 5px !important;
  margin-right: 6px !important;
  background: #a99cff !important;
  box-shadow: none !important;
}

body.rx-v157 :where(.rx-home-table-live-count, .table-card .live-player-count)[data-full="true"] {
  color: #ffc7cf !important;
  background: rgba(239, 95, 112, 0.1) !important;
  border-color: rgba(239, 95, 112, 0.24) !important;
}

/* Purple owns interaction; green and red retain semantic meaning. */
body.rx-v157 :where(.primary-btn, .rx-btn-purple, .rx-topbar-cashier-btn, .rx-cashier-submit) {
  color: #fff !important;
  background: var(--rx179-purple) !important;
  border-color: var(--rx179-purple) !important;
}

body.rx-v157 .rx-topbar-register-btn.button-64 {
  color: #fff !important;
  background: var(--rx179-purple) !important;
  border-color: var(--rx179-purple) !important;
}

body.rx-v157 .rx-topbar-register-btn.button-64:hover {
  background: var(--rx179-purple-hover) !important;
  border-color: var(--rx179-purple-hover) !important;
}

body.rx-v157 :where(.primary-btn, .rx-btn-purple, .rx-topbar-cashier-btn, .rx-cashier-submit):hover:not(:disabled) {
  background: var(--rx179-purple-hover) !important;
  border-color: var(--rx179-purple-hover) !important;
  box-shadow: 0 8px 20px rgba(86, 63, 214, 0.2) !important;
}

body.rx-v157 :where(.rx-btn, .primary-btn, .secondary-btn, .ghost-btn, .danger-btn, .btn-3) {
  border-radius: var(--rx179-radius-control) !important;
}

/* Compact shell and unmistakable active navigation. */
body.rx-v157 .rx-fixed-top-nav {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15) !important;
}

body.rx-v157 .app-sidebar,
body.rx-v157 .app-sidebar.rx-clean-sidebar {
  padding: 18px 12px !important;
}

body.rx-v157 .app-sidebar .rx-main-menu {
  gap: 4px !important;
}

body.rx-v157 .app-sidebar button,
body.rx-v157 .app-sidebar.rx-clean-sidebar button {
  min-height: 42px !important;
  border-radius: 9px !important;
}

body.rx-v157 .app-sidebar button.active {
  color: #fff !important;
  background: rgba(124, 99, 255, 0.15) !important;
  border-color: rgba(151, 133, 255, 0.3) !important;
}

body.rx-v157 .app-sidebar button.active > span {
  color: #d2cbff !important;
}

body.rx-v157 .app-sidebar button.active::after {
  inset-block: 10px !important;
  width: 2px !important;
  box-shadow: none !important;
}

body.rx-v157 .rx-topbar-session-actions,
body.rx-v157 .rx-topbar-balance-cluster,
body.rx-v157 .rx-topbar-user-cluster {
  gap: 6px !important;
}

body.rx-v157 .rx-topbar-account-btn {
  min-height: 38px !important;
  padding: 3px 9px 3px 3px !important;
  border-color: var(--rx179-border) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

/* Lobby picker: restrained filters and fixed information order. */
body.rx-v157 .rx-nlh-table-picker {
  --rx179-picker-ui-accent: var(--rx179-purple);
}

body.rx-v157 .rx-nlh-table-picker[data-category="high-limit-nlh"],
body.rx-v157 .rx-nlh-table-picker[data-category="high-roller-nlh"] {
  --rx179-picker-ui-accent: var(--rx179-gold);
}

body.rx-v157 .rx-nlh-table-picker-backdrop {
  background: rgba(2, 6, 14, 0.88) !important;
  backdrop-filter: blur(8px) saturate(0.9) !important;
}

body.rx-v157 .rx-nlh-table-picker-panel {
  grid-template-rows: auto auto minmax(0, 1fr) auto !important;
  gap: 14px !important;
  padding: 20px !important;
  background: linear-gradient(155deg, rgba(12, 23, 38, 0.995), rgba(5, 10, 18, 0.995)) !important;
  border-color: var(--rx179-border-strong) !important;
  border-radius: 16px !important;
  box-shadow: var(--rx179-shadow-modal) !important;
}

body.rx-v157 .rx-nlh-table-picker-header {
  padding-bottom: 13px !important;
  border-bottom-color: var(--rx179-border) !important;
}

body.rx-v157 .rx-nlh-table-picker-header h2 {
  font-size: clamp(1.35rem, 2.2vw, 1.8rem) !important;
}

body.rx-v157 .rx-lobby-filters-v179 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(150px, 210px)) minmax(150px, 1fr) !important;
  align-items: end !important;
  gap: 9px !important;
}

body.rx-v157 .rx-lobby-filters-v179 label {
  min-width: 0 !important;
  display: grid !important;
  gap: 5px !important;
}

body.rx-v157 .rx-lobby-filters-v179 label > span {
  color: var(--rx179-muted) !important;
  font-size: 0.64rem !important;
  font-weight: 750 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

body.rx-v157 .rx-lobby-filters-v179 select {
  min-height: 38px !important;
  padding: 7px 31px 7px 10px !important;
  color: var(--rx157-text-soft) !important;
  background-color: rgba(255, 255, 255, 0.03) !important;
  border-color: var(--rx179-border) !important;
  border-radius: 9px !important;
  font-size: 0.75rem !important;
}

body.rx-v157 .rx-lobby-filters-v179 select:focus {
  border-color: color-mix(in srgb, var(--rx179-picker-ui-accent) 70%, #ffffff 5%) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--rx179-picker-ui-accent) 12%, transparent) !important;
}

body.rx-v157 .rx-lobby-filter-summary-v179 {
  justify-self: end !important;
  align-self: center !important;
  color: var(--rx179-muted) !important;
  font-size: 0.72rem !important;
  font-variant-numeric: tabular-nums !important;
}

body.rx-v157 .rx-nlh-table-picker-grid {
  align-items: stretch !important;
  gap: 12px !important;
  padding: 2px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.rx-v157 .rx-nlh-table-card {
  height: 100% !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 0 !important;
  overflow: hidden !important;
  color: var(--rx157-text) !important;
  background: rgba(13, 26, 41, 0.78) !important;
  border: 1px solid var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16) !important;
  filter: none !important;
  outline: 0 !important;
  transform: none !important;
}

body.rx-v157 .rx-nlh-table-card:hover,
body.rx-v157 .rx-nlh-table-card:focus-visible {
  background: rgba(18, 34, 54, 0.94) !important;
  border-color: color-mix(in srgb, var(--rx179-picker-ui-accent) 56%, transparent) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22) !important;
  filter: none !important;
  outline: 2px solid color-mix(in srgb, var(--rx179-picker-ui-accent) 64%, transparent) !important;
  outline-offset: 2px !important;
  transform: translateY(-1px) !important;
}

body.rx-v157 .rx-nlh-table-card.is-current {
  border-color: var(--rx179-picker-ui-accent) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rx179-picker-ui-accent) 38%, transparent) !important;
  outline: 0 !important;
}

body.rx-v157 .rx-nlh-table-card-image {
  overflow: hidden !important;
  background: #050a12 !important;
  border-bottom: 1px solid var(--rx179-border) !important;
}

body.rx-v157 .rx-nlh-table-card-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  filter: saturate(0.92) contrast(1.02) !important;
}

body.rx-v157 .rx-nlh-table-card:hover .rx-nlh-table-card-image img {
  filter: saturate(1) contrast(1.03) !important;
}

body.rx-v157 .rx-nlh-table-card-body-v179 {
  min-width: 0 !important;
  padding: 13px !important;
  display: grid !important;
  align-content: start !important;
  gap: 8px !important;
  text-align: left !important;
}

body.rx-v157 .rx-nlh-table-card-title-v179 {
  overflow: hidden !important;
  color: var(--rx157-text) !important;
  font-size: 0.82rem !important;
  font-weight: 780 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 small {
  color: var(--rx179-muted) !important;
  font-size: 0.64rem !important;
  font-weight: 650 !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 :where(b, em) {
  overflow: hidden !important;
  color: var(--rx157-text-soft) !important;
  font-size: 0.7rem !important;
  font-style: normal !important;
  font-weight: 780 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.rx-v157 .rx-nlh-table-card-count {
  width: auto !important;
  min-width: 48px !important;
  margin: 0 !important;
  padding: 3px 7px !important;
  display: inline-flex !important;
  justify-content: center !important;
  color: #e5e1ff !important;
  background: var(--rx179-purple-soft) !important;
  border: 1px solid rgba(124, 99, 255, 0.22) !important;
  border-radius: 999px !important;
  font-size: 0.74rem !important;
  letter-spacing: 0.02em !important;
  text-shadow: none !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 em[data-tone="open"] {
  color: #cfc8ff !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 em[data-tone="seated"] {
  color: #bdf4da !important;
}

body.rx-v157 .rx-nlh-table-card-row-v179 em[data-tone="full"] {
  color: #ffc3cc !important;
}

body.rx-v157 .rx-nlh-table-card.is-full {
  opacity: 0.64 !important;
}

body.rx-v157 .rx-lobby-filter-empty-v179 {
  grid-column: 1 / -1 !important;
  min-height: 180px !important;
  display: grid !important;
  place-content: center !important;
  gap: 5px !important;
  color: var(--rx179-muted) !important;
  border: 1px dashed var(--rx179-border-strong) !important;
  border-radius: var(--rx179-radius-card) !important;
  text-align: center !important;
}

body.rx-v157 .rx-lobby-filter-empty-v179 strong {
  color: var(--rx157-text-soft) !important;
}

/* Live table: artwork first, compact context, stable controls below it. */
body.rx-v157 #view-table .table-shell {
  gap: 10px !important;
}

body.rx-v157 #view-table .table-info-card {
  min-height: 64px !important;
  padding: 9px 12px !important;
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  background: rgba(9, 20, 33, 0.9) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.15) !important;
}

body.rx-v157 #view-table .table-info-card .table-meta > div {
  min-height: 42px !important;
  background: rgba(255, 255, 255, 0.022) !important;
  border-color: rgba(255, 255, 255, 0.055) !important;
  border-radius: 9px !important;
}

body.rx-v157 #view-table .table-info-card .table-meta span {
  color: var(--rx179-muted) !important;
  font-size: 0.62rem !important;
}

body.rx-v157 #view-table .table-info-card .table-meta strong {
  color: var(--rx157-text) !important;
  font-size: 0.76rem !important;
}

body.rx-v157 #view-table .poker-table,
body.rx-v157 #view-table .poker-table:not(.exact-art-mode),
body.rx-v157 #view-table .poker-table.exact-art-mode {
  border-color: rgba(151, 133, 255, 0.24) !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.38), 0 0 34px color-mix(in srgb, var(--accent, #7c63ff) 7%, transparent) !important;
}

body.rx-v157 #view-table .poker-table .actual-table-art {
  filter: saturate(1.01) contrast(1.02) brightness(1.01) !important;
}

body.rx-v157 #view-table .poker-table::after {
  background: radial-gradient(ellipse at center, transparent 56%, rgba(0, 0, 0, 0.06) 78%, rgba(0, 0, 0, 0.2) 100%) !important;
}

body.rx-v157 #view-table .poker-table .pot-display {
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2) !important;
}

body.rx-v157 #view-table .action-panel {
  padding: 9px !important;
  gap: 9px !important;
  background: rgba(7, 14, 25, 0.96) !important;
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.18) !important;
}

body.rx-v157 #view-table .action-panel .action-buttons button {
  min-height: 44px !important;
}

body.rx-v157 #view-table .side-console {
  gap: 9px !important;
}

body.rx-v157 #view-table .side-console .wallet-card,
body.rx-v157 #view-table .side-console .log-card {
  min-height: 84px !important;
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  box-shadow: 0 7px 20px rgba(0, 0, 0, 0.14) !important;
}

/* Open seats keep motion, but at a slower and quieter premium cadence. */
body.rx-v157 #view-table .poker-table {
  --rx-seat-motion-duration: 5.4s !important;
  --rx-seat-interaction-duration: 3.1s !important;
  --rx-seat-core-hot: rgba(203, 139, 255, 0.56) !important;
}

body.rx-v157 #view-table .poker-table.has-spade-seat-art[data-table] .seat.is-open-seat .seat-ripple-wave {
  animation-duration: 5.4s !important;
  box-shadow: 0 0 6px color-mix(in srgb, var(--accent, #8a63ff) 30%, transparent), inset 0 0 4px rgba(255, 255, 255, 0.08) !important;
  filter: opacity(0.66) saturate(0.94) !important;
}

body.rx-v157 #view-table .poker-table.has-spade-seat-art[data-table] .seat.is-open-seat .seat-ripple-wave-two {
  animation-duration: 7.2s !important;
}

body.rx-v157 #view-table .poker-table.has-spade-seat-art .seat.is-open-seat .seat-ripple-target:hover .seat-ripple-wave,
body.rx-v157 #view-table .poker-table.has-spade-seat-art .seat.is-open-seat .seat-ripple-target:focus-visible .seat-ripple-wave,
body.rx-v157 #view-table .poker-table.has-spade-seat-art .seat.is-open-seat.is-seat-joining .seat-ripple-wave {
  filter: brightness(1.18) saturate(1.04) drop-shadow(0 0 7px var(--rx-seat-core-hot)) !important;
}

body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat .seat-ripple-core {
  box-shadow: 0 0 8px rgba(163, 73, 245, 0.2), inset 0 0 6px rgba(181, 103, 255, 0.08) !important;
  animation-duration: 5.6s !important;
}

body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat .seat-ripple-wave-one {
  box-shadow: 0 0 6px rgba(157, 62, 239, 0.4), inset 0 0 5px rgba(198, 120, 255, 0.12) !important;
  animation-duration: 5.2s !important;
  filter: opacity(0.68) !important;
}

body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat .seat-ripple-wave-two {
  animation-duration: 8s !important;
  filter: opacity(0.68) drop-shadow(0 0 4px rgba(181, 91, 255, 0.44)) !important;
}

body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat .seat-ripple-target:hover .seat-ripple-wave,
body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat .seat-ripple-target:focus-visible .seat-ripple-wave,
body.rx-v157 #view-table .poker-table[data-table="roberts"] .seat.is-open-seat.is-seat-joining .seat-ripple-wave {
  filter: brightness(1.16) saturate(1.06) drop-shadow(0 0 7px rgba(208, 139, 255, 0.62)) !important;
  animation-duration: 3.2s !important;
}

/* Cashier: equal cards, skeleton loading, clear selection, calm progression. */
body.rx-v157 .rx-cashier-modal {
  width: min(980px, 100%) !important;
  max-width: 980px !important;
  border-radius: 16px !important;
  box-shadow: var(--rx179-shadow-modal) !important;
}

body.rx-v157 .rx-cashier-main-tab.is-active {
  color: #fff !important;
  background: var(--rx179-purple) !important;
  border-color: var(--rx179-purple) !important;
  box-shadow: none !important;
}

body.rx-v157 .rx-crypto-card-grid {
  grid-auto-rows: 1fr !important;
  gap: 10px !important;
}

body.rx-v157 .rx-crypto-card {
  min-height: 166px !important;
  height: 100% !important;
  padding: 15px !important;
  grid-template-columns: 40px minmax(0, 1fr) auto !important;
  gap: 11px !important;
  background: rgba(13, 26, 41, 0.86) !important;
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
  box-shadow: none !important;
}

body.rx-v157 .rx-crypto-card:hover:not(:disabled) {
  background: rgba(18, 34, 54, 0.96) !important;
  border-color: rgba(151, 133, 255, 0.4) !important;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.16) !important;
  transform: translateY(-1px) !important;
}

body.rx-v157 .rx-crypto-card.is-selected,
body.rx-v157 .rx-crypto-card[aria-pressed="true"] {
  background: rgba(124, 99, 255, 0.09) !important;
  border-color: rgba(151, 133, 255, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(151, 133, 255, 0.2) !important;
}

body.rx-v157 .rx-crypto-card-copy {
  align-content: start !important;
  gap: 5px !important;
}

body.rx-v157 .rx-crypto-card-copy strong {
  font-size: 0.8rem !important;
  font-weight: 780 !important;
}

body.rx-v157 .rx-crypto-card-network-v179 {
  color: var(--rx179-muted) !important;
  font-size: 0.66rem !important;
}

body.rx-v157 .rx-crypto-card-detail-v179 {
  min-width: 0 !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

body.rx-v157 .rx-crypto-card-detail-v179 small {
  color: var(--rx179-muted) !important;
  font-size: 0.62rem !important;
  font-weight: 650 !important;
}

body.rx-v157 .rx-crypto-card-detail-v179 b {
  overflow: hidden !important;
  color: var(--rx157-text-soft) !important;
  font-size: 0.65rem !important;
  font-variant-numeric: tabular-nums !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.rx-v157 .rx-crypto-card-status {
  margin-top: auto !important;
  color: #cbc5ee !important;
  font-size: 0.63rem !important;
}

body.rx-v157 .rx-crypto-card-status[data-tone="available"] {
  color: #cbc5ee !important;
}

body.rx-v157 .rx-crypto-card-status[data-tone="unavailable"] {
  color: #ffbec8 !important;
}

body.rx-v157 .rx-crypto-card-ticker {
  color: #a99cff !important;
  font-size: 0.62rem !important;
}

body.rx-v157 .rx-crypto-skeleton {
  pointer-events: none !important;
}

body.rx-v157 .rx-crypto-skeleton-icon,
body.rx-v157 .rx-crypto-skeleton-copy i {
  display: block !important;
  overflow: hidden !important;
  background: linear-gradient(100deg, rgba(255, 255, 255, 0.045) 24%, rgba(255, 255, 255, 0.085) 42%, rgba(255, 255, 255, 0.045) 60%) !important;
  background-size: 220% 100% !important;
  animation: rx179Skeleton 1.8s ease-in-out infinite !important;
}

body.rx-v157 .rx-crypto-skeleton-icon {
  width: 40px !important;
  height: 40px !important;
  border-radius: 11px !important;
}

body.rx-v157 .rx-crypto-skeleton-copy {
  grid-column: 2 / -1 !important;
  display: grid !important;
  align-content: start !important;
  gap: 10px !important;
}

body.rx-v157 .rx-crypto-skeleton-copy i {
  width: 100% !important;
  height: 9px !important;
  border-radius: 999px !important;
}

body.rx-v157 .rx-crypto-skeleton-copy i:nth-child(1) { width: 58% !important; height: 12px !important; }
body.rx-v157 .rx-crypto-skeleton-copy i:nth-child(2) { width: 78% !important; }
body.rx-v157 .rx-crypto-skeleton-copy i:nth-child(3) { width: 68% !important; }
body.rx-v157 .rx-crypto-skeleton-copy i:nth-child(4) { width: 44% !important; }

@keyframes rx179Skeleton {
  from { background-position: 100% 0; }
  to { background-position: -120% 0; }
}

body.rx-v157 .rx-deposit-progress-v179 {
  margin: 0 0 13px !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  list-style: none !important;
}

body.rx-v157 .rx-deposit-progress-v179 li {
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 7px 9px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: var(--rx179-muted) !important;
  background: rgba(255, 255, 255, 0.022) !important;
  border: 1px solid var(--rx179-border) !important;
  border-radius: 9px !important;
}

body.rx-v157 .rx-deposit-progress-v179 li > span {
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--rx179-muted) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border-radius: 50% !important;
  font-size: 0.65rem !important;
  font-weight: 800 !important;
}

body.rx-v157 .rx-deposit-progress-v179 strong {
  overflow: hidden !important;
  font-size: 0.7rem !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.rx-v157 .rx-deposit-progress-v179 li.is-complete {
  color: var(--rx157-text-soft) !important;
}

body.rx-v157 .rx-deposit-progress-v179 li.is-complete > span {
  color: #cfc9ff !important;
  background: var(--rx179-purple-soft) !important;
}

body.rx-v157 .rx-deposit-progress-v179 li.is-current {
  color: #fff !important;
  background: rgba(124, 99, 255, 0.09) !important;
  border-color: rgba(151, 133, 255, 0.46) !important;
}

body.rx-v157 .rx-deposit-progress-v179 li.is-current > span {
  color: #fff !important;
  background: var(--rx179-purple) !important;
}

body.rx-v157 .rx-deposit-screen-v131.is-payment-ready .rx-deposit-progress-v179 li:nth-child(2) {
  color: var(--rx157-text-soft) !important;
  background: rgba(255, 255, 255, 0.022) !important;
  border-color: var(--rx179-border) !important;
}

body.rx-v157 .rx-deposit-screen-v131.is-payment-ready .rx-deposit-progress-v179 li:nth-child(2) > span {
  color: #cfc9ff !important;
  background: var(--rx179-purple-soft) !important;
}

body.rx-v157 .rx-deposit-screen-v131.is-payment-ready .rx-deposit-progress-v179 li:nth-child(3) {
  color: #fff !important;
  background: rgba(124, 99, 255, 0.09) !important;
  border-color: rgba(151, 133, 255, 0.46) !important;
}

body.rx-v157 .rx-deposit-screen-v131.is-payment-ready .rx-deposit-progress-v179 li:nth-child(3) > span {
  color: #fff !important;
  background: var(--rx179-purple) !important;
}

body.rx-v157 .rx-deposit-hero-v131,
body.rx-v157 .rx-withdraw-hero-v145 {
  padding: 16px !important;
  background: linear-gradient(135deg, rgba(124, 99, 255, 0.075), rgba(255, 255, 255, 0.015)) !important;
  border-color: var(--rx179-border) !important;
  border-radius: var(--rx179-radius-card) !important;
}

body.rx-v157 .rx-deposit-secure-pill-v131,
body.rx-v157 .rx-withdraw-security-badge-v145 {
  color: var(--rx157-text-soft) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border-color: var(--rx179-border) !important;
}

body.rx-v157 .rx-deposit-secure-pill-v131 strong,
body.rx-v157 .rx-withdraw-security-badge-v145 strong {
  color: var(--rx157-text-soft) !important;
}

body.rx-v157 .rx-deposit-secure-pill-v131 small {
  color: var(--rx179-muted) !important;
}

body.rx-v157 .rx-deposit-create-form {
  align-items: end !important;
}

body.rx-v157 .rx-deposit-amount-field .rx-cashier-input-shell {
  max-width: 330px !important;
}

body.rx-v157 .rx-deposit-amount-field .rx-cashier-input-shell > b {
  left: 13px !important;
  color: #d8d3ee !important;
  font-size: 0.95rem !important;
  font-weight: 750 !important;
}

body.rx-v157 #cashierDepositAmount {
  padding-left: 28px !important;
  text-align: left !important;
}

body.rx-v157 .rx-deposit-create-btn {
  min-height: 48px !important;
  font-size: 0.86rem !important;
}

body.rx-v157 .rx-cashier-info-strip {
  background: rgba(6, 15, 25, 0.74) !important;
  border-color: var(--rx179-border) !important;
}

/* Tablet and mobile layouts are composed for the available width. */
@media (max-width: 1024px) {
  body.rx-v157 :where(.home-table-grid, .table-grid, .rx-compact-table-row) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.rx-v157 .rx-lobby-filters-v179 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.rx-v157 .rx-lobby-filter-summary-v179 {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
  }

  body.rx-v157 .rx-nlh-table-picker-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  body.rx-v157 {
    padding-bottom: calc(66px + env(safe-area-inset-bottom)) !important;
  }

  body.rx-v157 .app-sidebar,
  body.rx-v157 .app-sidebar.rx-clean-sidebar,
  body.rx-v157.rx-sidebar-collapsed .app-sidebar,
  body.rx-v157.rx-sidebar-collapsed .app-sidebar.rx-clean-sidebar {
    position: fixed !important;
    inset: auto 0 0 0 !important;
    height: calc(66px + env(safe-area-inset-bottom)) !important;
    min-height: calc(66px + env(safe-area-inset-bottom)) !important;
    padding-top: 6px !important;
  }

  body.rx-v157 .app-sidebar button,
  body.rx-v157 .app-sidebar.rx-clean-sidebar button {
    min-height: 50px !important;
    border-radius: 9px !important;
  }

  body.rx-v157 .app-sidebar button.active {
    background: rgba(124, 99, 255, 0.14) !important;
    border-color: rgba(151, 133, 255, 0.24) !important;
  }

  body.rx-v157 main,
  body.rx-v157.rx-sidebar-collapsed main {
    padding: 18px 14px 30px !important;
  }

  body.rx-v157 .rx-lobby-category-tabs {
    gap: 5px !important;
    padding: 5px !important;
  }

  body.rx-v157 .rx-lobby-category-tabs button {
    min-height: 38px !important;
    padding-inline: 10px !important;
    font-size: 0.68rem !important;
  }

  body.rx-v157 .rx-nlh-table-picker {
    align-items: flex-end !important;
    padding: 8px !important;
  }

  body.rx-v157 .rx-nlh-table-picker-panel {
    width: 100% !important;
    max-height: calc(100dvh - 8px) !important;
    padding: 14px !important;
    border-radius: 16px 16px 8px 8px !important;
  }

  body.rx-v157 .rx-lobby-filters-v179 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.rx-v157 .rx-lobby-filters-v179 label:first-child {
    grid-column: 1 / -1 !important;
  }

  body.rx-v157 .rx-nlh-table-picker-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.rx-v157 #view-table.rx-dedicated-game-screen {
    padding-inline: 8px !important;
  }

  body.rx-v157 #view-table .table-info-card {
    padding: 9px !important;
  }

  body.rx-v157 #view-table .poker-table,
  body.rx-v157 #view-table .poker-table:not(.exact-art-mode),
  body.rx-v157 #view-table .poker-table.exact-art-mode {
    aspect-ratio: 16 / 9 !important;
    border-radius: 14px !important;
  }

  body.rx-v157 #view-table .action-panel .action-buttons button {
    min-height: 48px !important;
  }

  body.rx-v157 .rx-cashier-modal-body {
    padding-bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  }

  body.rx-v157 .rx-crypto-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.rx-v157 .rx-deposit-create-btn,
  body.rx-v157 .rx-withdraw-review-btn-v145 {
    position: sticky !important;
    z-index: 6 !important;
    bottom: 0 !important;
    min-height: 50px !important;
    box-shadow: 0 -8px 20px rgba(6, 14, 24, 0.46), 0 8px 20px rgba(68, 47, 182, 0.18) !important;
  }
}

@media (max-width: 520px) {
  body.rx-v157 :where(.home-table-grid, .table-grid, .rx-compact-table-row) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.rx-v157 .rx-home-table-content-v157,
  body.rx-v157 .table-card-content {
    min-height: 0 !important;
    padding: 15px !important;
  }

  body.rx-v157 .rx-fixed-top-nav {
    padding-inline: 9px !important;
    gap: 6px !important;
  }

  body.rx-v157 .rx-fixed-brand {
    width: 82px !important;
    min-width: 82px !important;
  }

  body.rx-v157 .rx-fixed-top-actions,
  body.rx-v157 .rx-topbar-session-actions,
  body.rx-v157 .rx-topbar-balance-cluster,
  body.rx-v157 .rx-topbar-user-cluster {
    gap: 4px !important;
  }

  body.rx-v157 .rx-topbar-balance-btn {
    min-width: 66px !important;
    padding-inline: 7px !important;
  }

  body.rx-v157 .rx-topbar-balance-icon,
  body.rx-v157 .rx-topbar-balance-caret {
    display: none !important;
  }

  body.rx-v157 .rx-topbar-cashier-btn {
    width: 38px !important;
    min-width: 38px !important;
    padding: 0 !important;
  }

  body.rx-v157 .rx-topbar-cashier-btn > span:last-child {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
  }

  body.rx-v157 .rx-topbar-account-btn {
    width: 38px !important;
    min-width: 38px !important;
    padding: 2px !important;
  }

  body.rx-v157 .rx-topbar-logout-btn {
    width: 38px !important;
    min-width: 38px !important;
    padding: 0 !important;
    font-size: 0 !important;
  }

  body.rx-v157 .rx-topbar-logout-btn::before {
    content: "↪" !important;
    font-size: 0.95rem !important;
  }

  body.rx-v157 .rx-topbar-admin-btn:not([hidden]) {
    min-width: 42px !important;
    padding-inline: 7px !important;
    font-size: 0.62rem !important;
  }

  body.rx-v157 .rx-lobby-filters-v179 {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.rx-v157 .rx-lobby-filters-v179 label:first-child,
  body.rx-v157 .rx-lobby-filter-summary-v179 {
    grid-column: auto !important;
  }

  body.rx-v157 .rx-nlh-table-picker-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.rx-v157 .rx-nlh-table-card {
    width: 100% !important;
    max-width: 360px !important;
    margin-inline: auto !important;
  }

  body.rx-v157 #view-table .table-info-card .table-meta {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.rx-v157 #view-table .table-info-card .table-meta > div {
    min-height: 39px !important;
    padding: 5px 6px !important;
  }

  body.rx-v157 #view-table .action-panel {
    padding: 8px !important;
  }

  body.rx-v157 #view-table .action-panel .action-buttons,
  body.rx-v157 #view-table .action-panel:not(.is-awaiting-seat) .action-buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.rx-v157 #view-table .side-console {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.rx-v157 .rx-crypto-card-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.rx-v157 .rx-crypto-card {
    min-height: 150px !important;
  }

  body.rx-v157 .rx-deposit-progress-v179 {
    gap: 5px !important;
  }

  body.rx-v157 .rx-deposit-progress-v179 li {
    min-height: 48px !important;
    padding: 6px !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 4px !important;
    text-align: center !important;
  }

  body.rx-v157 .rx-deposit-progress-v179 strong {
    width: 100% !important;
    font-size: 0.62rem !important;
  }

  body.rx-v157 .rx-deposit-hero-v131 {
    display: none !important;
  }

  body.rx-v157 .rx-deposit-top-panel,
  body.rx-v157 .rx-deposit-create-form,
  body.rx-v157 .rx-deposit-payment-v130,
  body.rx-v157 .rx-withdraw-step-card-v145 {
    padding: 14px !important;
  }

  body.rx-v157 .rx-deposit-amount-field .rx-cashier-input-shell {
    max-width: none !important;
  }

  body.rx-v157 :where(button, .rx-btn, input, select, textarea) {
    touch-action: manipulation !important;
  }
}

@media (max-width: 430px) {
  body.rx-v157 main,
  body.rx-v157.rx-sidebar-collapsed main {
    padding-inline: 10px !important;
  }

  body.rx-v157 .rx-cashier-modal-header,
  body.rx-v157 .rx-cashier-main-tabs {
    padding-inline: 11px !important;
  }

  body.rx-v157 .rx-cashier-modal-body {
    padding-inline: 11px !important;
  }

  body.rx-v157 #view-table.rx-dedicated-game-screen {
    padding-inline: 5px !important;
  }
}

@media (max-width: 390px) {
  body.rx-v157 .rx-fixed-brand {
    width: 74px !important;
    min-width: 74px !important;
  }

  body.rx-v157 .rx-topbar-balance-btn {
    min-width: 60px !important;
    font-size: 0.62rem !important;
  }

  body.rx-v157 .rx-cashier-balance-chip {
    min-width: 78px !important;
    padding-inline: 8px !important;
  }

  body.rx-v157 .rx-cashier-wallet-mark {
    display: none !important;
  }

  body.rx-v157 .rx-deposit-progress-v179 li > span {
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
  }
}

@media (max-width: 375px) {
  body.rx-v157 .rx-fixed-top-nav {
    padding-inline: 7px !important;
  }

  body.rx-v157 .rx-fixed-brand {
    width: 68px !important;
    min-width: 68px !important;
  }

  body.rx-v157 .rx-topbar-balance-btn {
    min-width: 56px !important;
    padding-inline: 5px !important;
  }

  body.rx-v157 .rx-topbar-cashier-btn,
  body.rx-v157 .rx-topbar-account-btn,
  body.rx-v157 .rx-topbar-logout-btn {
    width: 36px !important;
    min-width: 36px !important;
  }

  body.rx-v157 .rx-lobby-category-tabs button {
    padding-inline: 7px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.rx-v157 .rx-crypto-skeleton-icon,
  body.rx-v157 .rx-crypto-skeleton-copy i,
  body.rx-v157 #view-table .seat-ripple-wave,
  body.rx-v157 #view-table .seat-ripple-core {
    animation: none !important;
  }
}
