/* Meridian content classes inside Beridian shell */
body.beridian-shell {
  font-family: 'Pretendard', 'Noto Sans KR', sans-serif;
}
body.beridian-shell .wrap {
  max-width: 1400px;
  margin: 0 auto;
}
body.beridian-shell .page-head h1,
body.beridian-shell .section-h h2,
body.beridian-shell .display,
body.beridian-shell .hero h1 {
  color: #fff;
  font-weight: 800;
}
body.beridian-shell .page-head p,
body.beridian-shell .hero p,
body.beridian-shell .hint,
body.beridian-shell .login-meta {
  color: #9ca3af;
}
body.beridian-shell .section { margin: 2rem 0; }
body.beridian-shell .section-h {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
body.beridian-shell .section-h a { color: #0082f0; font-size: 13px; font-weight: 700; }
body.beridian-shell .game-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
}
body.beridian-shell .game-card {
  background: #1a2235;
  border: 1px solid #1f2937;
  border-radius: 14px;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  transition: border-color .2s, transform .2s;
}
body.beridian-shell .game-card:hover {
  border-color: #0082f0;
  transform: translateY(-2px);
}
body.beridian-shell .game-card .thumb-wrap,
body.beridian-shell .game-card .thumb {
  /* Beridian casino/slot cards: aspect-[3/4] (≈212×283 media → ~334 total with meta) */
  aspect-ratio: 3 / 4;
  width: 100%;
  background: #111827;
  object-fit: cover;
  object-position: center center;
  display: block;
}
body.beridian-shell .game-card .thumb-fallback {
  aspect-ratio: 3 / 4;
  background: linear-gradient(135deg, #1a2235, #0f172a);
}
body.beridian-shell .game-card .meta {
  padding: 10px 12px 12px;
}
body.beridian-shell .game-card .meta h3 {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.beridian-shell .game-card .meta span {
  font-size: 11px;
  color: #9ca3af;
}
body.beridian-shell .game-card .fav-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  border: 0;
  background: rgba(0,0,0,.45);
  color: #fff;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  cursor: pointer;
}
body.beridian-shell .game-card .fav-btn.on { color: #f87171; }
body.beridian-shell .game-card .tag {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  font-size: 10px;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 6px;
  background: #0082f0;
  color: #fff;
}
body.beridian-shell .game-card .tag.hot { background: #ef4444; }
body.beridian-shell .game-card .tag.new { background: #00c74d; }
body.beridian-shell .thumb-loader { display: none; }

body.beridian-shell .panel,
body.beridian-shell .auth-card,
body.beridian-shell .signup-card {
  background: #1a2235;
  border: 1px solid #1f2937;
  border-radius: 16px;
  padding: 20px;
}
body.beridian-shell .grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
@media (max-width: 900px) {
  body.beridian-shell .grid-2 { grid-template-columns: 1fr; }
}
body.beridian-shell .form-row { margin-bottom: 14px; }
body.beridian-shell .form-row label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #9ca3af;
  margin-bottom: 6px;
}
body.beridian-shell .form-row input,
body.beridian-shell .form-row select,
body.beridian-shell .form-row textarea,
body.beridian-shell .catalog-search-input {
  width: 100%;
  background: #090f1e;
  border: 1px solid #1f2937;
  border-radius: 12px;
  color: #fff;
  padding: 12px 14px;
  outline: none;
}
body.beridian-shell .form-row input:focus,
body.beridian-shell .form-row select:focus {
  border-color: #0082f0;
}
body.beridian-shell .btn,
body.beridian-shell button.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: 12px;
  font-weight: 800;
  font-size: 13px;
  padding: 11px 16px;
  border: 0;
  cursor: pointer;
  text-decoration: none;
}
body.beridian-shell .btn-primary { background: #0082f0; color: #fff; }
body.beridian-shell .btn-primary:hover { background: #0070d1; }
body.beridian-shell .btn-ghost,
body.beridian-shell .btn-teal {
  background: #243049;
  color: #fff;
}
body.beridian-shell .btn-block { width: 100%; }
body.beridian-shell .msg {
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 13px;
}
body.beridian-shell .msg.err { background: rgba(239,68,68,.12); border: 1px solid rgba(239,68,68,.35); color: #fecaca; }
body.beridian-shell .msg.ok { background: rgba(0,199,77,.12); border: 1px solid rgba(0,199,77,.35); color: #bbf7d0; }
body.beridian-shell .amount-quick {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
body.beridian-shell .amount-quick-btn {
  background: #090f1e;
  border: 1px solid #1f2937;
  color: #d1d5db;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
body.beridian-shell .amount-quick-btn:hover { border-color: #0082f0; color: #fff; }
body.beridian-shell .hero {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  padding: 36px 28px;
  margin-bottom: 24px;
  background: linear-gradient(135deg, #1a2235 0%, #0b1224 55%, #132038 100%);
  border: 1px solid #1f2937;
}
body.beridian-shell .hero-geo { display: none; }
body.beridian-shell .hero-eyebrow { color: #0082f0; font-weight: 800; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 10px; }
body.beridian-shell .hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
body.beridian-shell .ticker { display: none; }
body.beridian-shell .trust {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  color: #9ca3af;
  font-size: 12px;
  margin-bottom: 20px;
}
body.beridian-shell .home-live-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 1000px) {
  body.beridian-shell .home-live-grid { grid-template-columns: 1fr; }
}
body.beridian-shell .home-live-col {
  background: #1a2235;
  border: 1px solid #1f2937;
  border-radius: 14px;
  padding: 14px;
}
body.beridian-shell .home-live-list { list-style: none; margin: 0; padding: 0; }
body.beridian-shell .home-live-row {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 0;
  border-bottom: 1px solid #1f2937;
  color: #d1d5db;
  text-decoration: none;
  font-size: 13px;
}
body.beridian-shell .catalog-providers-track {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 8px;
}
body.beridian-shell .provider-filter {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #1a2235;
  border: 1px solid #1f2937;
  color: #d1d5db;
  border-radius: 999px;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}
body.beridian-shell .provider-filter.is-active {
  border-color: #0082f0;
  color: #fff;
  background: #132038;
}
body.beridian-shell .provider-section-head {
  grid-column: 1 / -1;
  margin-top: 8px;
  font-weight: 800;
  color: #fff;
}
body.beridian-shell .banner {
  display: flex;
  gap: 14px;
  align-items: center;
  background: #1a2235;
  border: 1px solid #1f2937;
  border-radius: 16px;
  padding: 16px;
  margin: 12px 0 18px;
}
body.beridian-shell .banner h2 { margin: 0; color: #fff; }
body.beridian-shell .banner p { margin: 4px 0 0; color: #9ca3af; font-size: 13px; }
body.beridian-shell .roll-panel {
  background: #090f1e;
  border: 1px solid #1f2937;
  border-radius: 12px;
  padding: 12px;
}
body.beridian-shell .roll-panel-track {
  height: 8px;
  background: #111827;
  border-radius: 999px;
  overflow: hidden;
}
body.beridian-shell .roll-panel-fill {
  display: block;
  height: 100%;
  background: #0082f0;
}
body.beridian-shell a { color: inherit; }

/* —— Beridian catalog: provider grid (casino.html 3:4 cards) —— */
body.beridian-shell .beridian-catalog-back { margin: 0 0 16px; }
body.beridian-shell .beridian-provider-grid {
  display: grid;
  /* Match casino.html: grid-cols-2 sm:3 md:4 lg:5 xl:6 */
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
@media (min-width: 640px) {
  body.beridian-shell .beridian-provider-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
}
@media (min-width: 768px) {
  body.beridian-shell .beridian-provider-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
}
@media (min-width: 1024px) {
  body.beridian-shell .beridian-provider-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
}
@media (min-width: 1280px) {
  /* ~212px card width inside max-w-[1400px] content ≈ original 212.66 × 333.89 */
  body.beridian-shell .beridian-provider-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
}
body.beridian-shell .beridian-provider-card {
  display: block;
  background: #111827;
  border: 1px solid rgba(31, 41, 55, .5);
  border-radius: 12px; /* rounded-xl */
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  position: relative;
  box-shadow: 0 4px 14px rgba(0,0,0,.2);
  transition: border-color .2s, transform .2s;
}
body.beridian-shell .beridian-provider-card:hover {
  border-color: rgba(0, 130, 240, .55);
  transform: translateY(-2px);
}
body.beridian-shell .beridian-provider-thumb {
  position: relative;
  /* Original live/slot provider media: aspect-[3/4] */
  aspect-ratio: 3 / 4;
  background: #111827;
  overflow: hidden;
}
body.beridian-shell .beridian-provider-thumb .game-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: transform .45s;
}
body.beridian-shell .beridian-provider-card:hover .game-img { transform: scale(1.05); }
body.beridian-shell .beridian-provider-thumb.is-empty {
  background: linear-gradient(145deg, #152033 0%, #0d1424 100%);
}
body.beridian-shell .beridian-provider-empty {
  width: 100%;
  height: 100%;
  background:
    repeating-linear-gradient(-45deg, transparent, transparent 8px, rgba(255,255,255,.03) 8px, rgba(255,255,255,.03) 16px);
}
body.beridian-shell .beridian-provider-hover {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .25s;
}
body.beridian-shell .beridian-provider-card:hover .beridian-provider-hover { opacity: 1; }
body.beridian-shell .beridian-provider-play {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: #0082f0;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 3px;
  box-shadow: 0 8px 24px rgba(0,130,240,.45);
}
body.beridian-shell .beridian-provider-meta {
  padding: 10px; /* p-2.5 */
}
body.beridian-shell .beridian-provider-meta h3 {
  margin: 0;
  font-size: 12px;
  font-weight: 800;
  color: #e5e7eb;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.beridian-shell .beridian-provider-meta p {
  margin: 3px 0 0;
  font-size: 10px;
  color: #6b7280;
  font-weight: 600;
}
body.beridian-shell .catalog-empty {
  grid-column: 1 / -1;
  color: #9ca3af;
  padding: 24px 0;
}

/* —— Beridian home: hero + dense cards —— */
body.beridian-shell .beridian-hero-slide {
  background-size: cover;
  background-position: center;
}
body.beridian-shell .beridian-hero-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.72) 0%, rgba(0,0,0,.15) 55%, transparent 100%);
  z-index: 0;
  pointer-events: none;
}
body.beridian-shell .beri-home-grid {
  display: grid;
  gap: 12px;
}
body.beridian-shell .beri-home-grid-hot {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 640px) {
  body.beridian-shell .beri-home-grid-hot { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
}
@media (min-width: 1024px) {
  body.beridian-shell .beri-home-grid-hot { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
}
@media (min-width: 1280px) {
  body.beridian-shell .beri-home-grid-hot { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
body.beridian-shell .beri-home-grid-sports {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 640px) {
  body.beridian-shell .beri-home-grid-sports { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 768px) {
  body.beridian-shell .beri-home-grid-sports { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  body.beridian-shell .beri-home-grid-sports { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
body.beridian-shell .beri-home-grid-catalog {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 640px) {
  body.beridian-shell .beri-home-grid-catalog { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 768px) {
  body.beridian-shell .beri-home-grid-catalog { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  body.beridian-shell .beri-home-grid-catalog { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (min-width: 1280px) {
  body.beridian-shell .beri-home-grid-catalog { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}

body.beridian-shell .beri-home-card {
  display: block;
  background: #111827;
  border: 1px solid rgba(31, 41, 55, .8);
  border-radius: 14px;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
  position: relative;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
  transition: border-color .2s, transform .2s;
}
body.beridian-shell a.beri-home-card { cursor: pointer; }
body.beridian-shell .beri-home-card:hover {
  border-color: rgba(0, 130, 240, .55);
  transform: translateY(-2px);
}
body.beridian-shell .beri-home-media {
  position: relative;
  overflow: hidden;
  background: #0d1424;
}
body.beridian-shell .beri-home-media.is-portrait { aspect-ratio: 3 / 4; }
body.beridian-shell .beri-home-media.is-square { aspect-ratio: 1; }
body.beridian-shell .beri-home-media .game-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s;
}
body.beridian-shell .beri-home-card:hover .game-img { transform: scale(1.05); }
body.beridian-shell .beri-home-empty {
  width: 100%;
  height: 100%;
  min-height: 100%;
  background:
    linear-gradient(145deg, #152033 0%, #0d1424 100%),
    repeating-linear-gradient(-45deg, transparent, transparent 8px, rgba(255,255,255,.03) 8px, rgba(255,255,255,.03) 16px);
}
body.beridian-shell .beri-home-media.is-empty {
  background: linear-gradient(145deg, #152033 0%, #0d1424 100%);
}
body.beridian-shell .beri-home-hover {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .3s;
  z-index: 10;
}
body.beridian-shell .beri-home-card:hover .beri-home-hover { opacity: 1; }
body.beridian-shell .beri-home-play {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: #0082f0;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 3px;
  box-shadow: 0 10px 28px rgba(0,130,240,.45);
  transform: scale(.9);
  transition: transform .3s;
}
body.beridian-shell .beri-home-card:hover .beri-home-play { transform: scale(1); }
body.beridian-shell .beri-home-badge {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 20;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .02em;
  padding: 3px 7px;
  border-radius: 6px;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.35);
  background: #0082f0;
}
body.beridian-shell .beri-home-badge.is-hot { background: #ef4444; }
body.beridian-shell .beri-home-badge.is-new { background: #00c74d; }
body.beridian-shell .beri-home-badge.is-pre { background: #FF7500; }
body.beridian-shell .beri-home-meta {
  padding: 10px 12px 12px;
}
body.beridian-shell .beri-home-meta h3 {
  margin: 0;
  font-size: 12px;
  font-weight: 800;
  color: #e5e7eb;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.beridian-shell .beri-home-meta p {
  margin: 3px 0 0;
  font-size: 10px;
  color: #6b7280;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.beridian-shell .beri-home-empty-msg {
  grid-column: 1 / -1;
  color: #9ca3af;
  font-size: 13px;
  padding: 12px 0;
}

/* —— Header auth chip: always show login id + balance (Tailwind xs was unreliable) —— */
body.beridian-shell .beri-header-user {
  display: flex !important;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.15;
  min-width: 0;
}
body.beridian-shell .beri-header-login {
  color: #9ca3af;
  font-size: 12px;
  font-weight: 500;
}
body.beridian-shell .beri-header-bal {
  color: #fff;
  font-weight: 900;
}
/* Sports home cards stay 1:1; live/slot provider + portrait games use 3:4 */
body.beridian-shell .beri-home-grid-sports .beri-home-media.is-square {
  aspect-ratio: 1;
}
body.beridian-shell .beri-home-grid-catalog,
body.beridian-shell .beri-home-grid-hot {
  /* Align with casino.html column rhythm where possible */
}
@media (min-width: 1280px) {
  body.beridian-shell .beri-home-grid-catalog {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

/* —— Beridian style auth panels (page-based, modal look) —— */
body.beridian-shell .beri-auth-page {
  min-height: calc(100vh - 120px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 0 32px;
}
body.beridian-shell .beri-auth-panel {
  position: relative;
  width: 100%;
  background: #111827;
  border: 1px solid #1f2937;
  border-radius: 16px;
  box-shadow: 0 24px 64px rgba(0,0,0,.45);
  padding: 28px 24px 24px;
}
@media (min-width: 640px) {
  body.beridian-shell .beri-auth-panel { padding: 32px; }
}
body.beridian-shell .beri-auth-panel--login { max-width: 28rem; }
body.beridian-shell .beri-auth-panel--register { max-width: 42rem; }
body.beridian-shell .beri-auth-close {
  position: absolute;
  top: 14px;
  right: 16px;
  color: #9ca3af;
  font-size: 18px;
  line-height: 1;
}
body.beridian-shell .beri-auth-close:hover { color: #fff; }
body.beridian-shell .beri-auth-head { margin-bottom: 22px; padding-right: 28px; }
body.beridian-shell .beri-auth-head--border {
  border-bottom: 1px solid #1f2937;
  padding-bottom: 18px;
  margin-bottom: 22px;
}
body.beridian-shell .beri-auth-title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: -0.02em;
  color: #fff;
  line-height: 1.25;
}
body.beridian-shell .beri-auth-title-accent {
  color: #FF7500;
  font-weight: 300;
}
body.beridian-shell .beri-auth-sub {
  margin: 6px 0 0;
  font-size: 12px;
  color: #9ca3af;
  font-weight: 600;
}
body.beridian-shell .beri-auth-site-note {
  font-size: 11px;
  line-height: 1.45;
  color: #9ca3af;
  margin: 0 0 16px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(0,130,240,.28);
  background: rgba(0,130,240,.06);
}
body.beridian-shell .beri-auth-form { display: flex; flex-direction: column; gap: 14px; }
body.beridian-shell .beri-auth-field label {
  display: block;
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #9ca3af;
}
body.beridian-shell .beri-auth-field .req { color: #f87171; text-transform: none; }
body.beridian-shell .beri-auth-field input,
body.beridian-shell .beri-auth-field select,
body.beridian-shell .beri-auth-phone select,
body.beridian-shell .beri-auth-phone input {
  width: 100%;
  background: #1f2937;
  border: 1px solid #374151;
  border-radius: 10px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 14px;
  outline: none;
}
body.beridian-shell .beri-auth-field input:focus,
body.beridian-shell .beri-auth-field select:focus,
body.beridian-shell .beri-auth-phone select:focus,
body.beridian-shell .beri-auth-phone input:focus {
  border-color: #0082f0;
}
body.beridian-shell .beri-auth-field input::placeholder { color: #6b7280; font-weight: 500; }
body.beridian-shell .beri-auth-hint {
  margin: 6px 0 0;
  font-size: 11px;
  color: #6b7280;
}
body.beridian-shell .beri-auth-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  padding-top: 2px;
}
body.beridian-shell .beri-auth-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #9ca3af;
  cursor: pointer;
  user-select: none;
}
body.beridian-shell .beri-auth-link { color: #0082f0; font-weight: 600; }
body.beridian-shell .beri-auth-link:hover { text-decoration: underline; }
body.beridian-shell .beri-auth-link-strong {
  color: #00c74d;
  font-weight: 800;
  margin-left: 4px;
}
body.beridian-shell .beri-auth-link-strong:hover { text-decoration: underline; }
body.beridian-shell .beri-auth-submit {
  width: 100%;
  margin-top: 4px;
  padding: 14px 16px;
  background: #0082f0;
  color: #fff;
  font-weight: 800;
  font-size: 15px;
  border: 0;
  border-radius: 12px;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(0,130,240,.25);
  transition: background .15s, transform .1s;
}
body.beridian-shell .beri-auth-submit:hover { background: #006fd1; }
body.beridian-shell .beri-auth-submit:active { transform: scale(.98); }
body.beridian-shell .beri-auth-foot {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #1f2937;
  text-align: center;
  font-size: 12px;
  color: #9ca3af;
}
body.beridian-shell .beri-auth-section { margin-bottom: 8px; }
body.beridian-shell .beri-auth-section-h {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #1f2937;
}
body.beridian-shell .beri-auth-section-h h2 {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 900;
  color: #fff;
}
body.beridian-shell .beri-auth-section-icon {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}
body.beridian-shell .beri-auth-section-icon.is-green {
  background: rgba(0,199,77,.12);
  color: #00c74d;
}
body.beridian-shell .beri-auth-section-icon.is-blue {
  background: rgba(0,130,240,.12);
  color: #0082f0;
}
body.beridian-shell .beri-auth-badge {
  display: none;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
}
@media (min-width: 640px) {
  body.beridian-shell .beri-auth-badge { display: inline-block; }
}
body.beridian-shell .beri-auth-badge.is-green {
  background: rgba(0,199,77,.12);
  color: #00c74d;
}
body.beridian-shell .beri-auth-badge.is-blue {
  background: rgba(0,130,240,.12);
  color: #0082f0;
}
body.beridian-shell .beri-auth-grid {
  display: grid;
  gap: 14px;
}
@media (min-width: 768px) {
  body.beridian-shell .beri-auth-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.beridian-shell .beri-auth-span-2 { grid-column: 1 / -1; }
}
body.beridian-shell .beri-auth-pw { position: relative; }
body.beridian-shell .beri-auth-pw input { padding-right: 44px; }
body.beridian-shell .beri-auth-pw .pw-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: #9ca3af;
  cursor: pointer;
  padding: 4px;
}
body.beridian-shell .beri-auth-phone {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 8px;
}
body.beridian-shell .beri-auth-omit-note {
  margin: 10px 0 0;
  font-size: 11px;
  color: #6b7280;
}
body.beridian-shell .beri-auth-terms {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 8px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #1f2937;
  background: rgba(31,41,55,.55);
  font-size: 12px;
  line-height: 1.5;
  color: #9ca3af;
  cursor: pointer;
  user-select: none;
}
body.beridian-shell .beri-auth-terms input { margin-top: 2px; flex-shrink: 0; }
body.beridian-shell .beri-auth-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
  padding-top: 16px;
  border-top: 1px solid #1f2937;
}
@media (min-width: 640px) {
  body.beridian-shell .beri-auth-actions {
    flex-direction: row;
    align-items: stretch;
  }
  body.beridian-shell .beri-auth-actions .beri-auth-submit { flex: 1; margin-top: 0; }
}
body.beridian-shell .beri-auth-cancel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  border-radius: 12px;
  border: 1px solid #374151;
  background: #1f2937;
  color: #d1d5db;
  font-weight: 800;
  text-decoration: none;
}
body.beridian-shell .beri-auth-cancel:hover { background: #243049; color: #fff; }

/* Hide legacy Meridian auth-card chrome if any leftover */
body.beridian-shell .auth-card .login-brand { display: none; }

/* —— Auth modals (Beridian overlay) —— */
body.beridian-shell .beri-modal.opacity-0 { opacity: 0; }
body.beridian-shell .beri-modal.opacity-100 { opacity: 1; }
body.beridian-shell .beri-modal .modal-content.scale-95 { transform: scale(.95); }
body.beridian-shell .beri-modal .modal-content.scale-100 { transform: scale(1); }
body.beridian-shell #register-modal .beri-auth-form {
  max-height: calc(92vh - 110px);
}
body.beridian-shell #login-btn,
body.beridian-shell #register-btn {
  border: 0;
}
body.beridian-shell .beri-auth-foot button {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  font: inherit;
}

/* —— Shared pagination partial (partials.bets-pager) — pill style to match Beridian tone —— */
body.beridian-shell .bets-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 0;
  padding: 16px 20px;
  border-top: 1px solid #1f2937;
}
body.beridian-shell .bets-pager-info {
  font-size: 12px;
  color: #6b7280;
  font-family: ui-monospace, "IBM Plex Mono", monospace;
}
body.beridian-shell .bets-pager-links { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
body.beridian-shell .bets-pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-radius: 10px;
  border: 1px solid #1f2937;
  background: #090f1e;
  color: #9ca3af;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  transition: all .15s;
}
body.beridian-shell a.bets-pager-btn:hover { border-color: #0082f0; color: #fff; }
body.beridian-shell .bets-pager-btn.is-current {
  background: #0082f0;
  border-color: #0082f0;
  color: #fff;
  box-shadow: 0 0 0 3px rgba(0, 130, 240, .15);
}
body.beridian-shell .bets-pager-btn.is-disabled { opacity: .35; pointer-events: none; }
body.beridian-shell .bets-pager-ellipsis { color: #6b7280; padding: 0 4px; font-size: 13px; }
