/* ============================================================
   theme-d925.css - Mobile-first theme for casino plus app
   All custom classes use the "sd92-" prefix.
   Palette: #AFEEEE | #2D2D2D | #6495ED | #F0F8FF
   ============================================================ */

:root {
  --sd92-primary: #6495ED;
  --sd92-accent: #AFEEEE;
  --sd92-bg: #2D2D2D;
  --sd92-bg2: #1c1c1c;
  --sd92-surface: #3a3a3a;
  --sd92-text: #F0F8FF;
  --sd92-muted: #c9d4e8;
  --sd92-gold: #FFD27A;
  --sd92-danger: #ff6b6b;
  --sd92-radius: 14px;
  --sd92-shadow: 0 6px 22px rgba(0,0,0,.35);
  --sd92-header-h: 58px;
  --sd92-bottomnav-h: 62px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: "Segoe UI", Roboto, system-ui, -apple-system, Arial, sans-serif;
  background: linear-gradient(160deg, var(--sd92-bg) 0%, var(--sd92-bg2) 100%);
  color: var(--sd92-text);
  line-height: 1.55;
  font-size: 15px;
}

img { max-width: 100%; display: block; }
a { color: var(--sd92-accent); text-decoration: none; }

.sd92-container { width: 100%; max-width: 430px; margin: 0 auto; padding: 0 14px; }
.sd92-wrapper { padding-top: var(--sd92-header-h); padding-bottom: calc(var(--sd92-bottomnav-h) + 16px); }

/* ----------------------------------------------------------- Header */
.sd92-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  height: var(--sd92-header-h);
  background: linear-gradient(90deg, #1f1f1f 0%, #2D2D2D 100%);
  border-bottom: 1px solid rgba(100,149,237,.35);
  box-shadow: 0 2px 14px rgba(0,0,0,.4);
}
.sd92-header-inner {
  max-width: 430px; margin: 0 auto; height: 100%;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 12px;
}
.sd92-brand { display: flex; align-items: center; gap: 8px; color: var(--sd92-text); }
.sd92-brand img { width: 30px; height: 30px; border-radius: 8px; }
.sd92-brand-name { font-weight: 800; font-size: 16px; letter-spacing: .3px; }
.sd92-brand-name span { color: var(--sd92-primary); }

.sd92-header-actions { display: flex; align-items: center; gap: 8px; }
.sd92-btn {
  border: none; cursor: pointer; border-radius: 999px;
  font-weight: 700; font-size: 13px; padding: 8px 14px;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  display: inline-flex; align-items: center; gap: 6px; color: #fff;
}
.sd92-btn:hover { transform: translateY(-1px); filter: brightness(1.08); }
.sd92-btn-register { background: linear-gradient(135deg, #6495ED, #4f78d6); box-shadow: 0 4px 12px rgba(100,149,237,.5); }
.sd92-btn-login { background: linear-gradient(135deg, #FFD27A, #e0b25c); color: #2D2D2D; box-shadow: 0 4px 12px rgba(255,210,122,.4); }

.sd92-menu-btn {
  background: transparent; border: 0; color: var(--sd92-text);
  font-size: 22px; padding: 6px 8px; cursor: pointer; border-radius: 8px;
}
.sd92-menu-btn.sd92-active { background: rgba(100,149,237,.25); }

/* ----------------------------------------------------------- Mobile menu */
.sd92-mobile-menu {
  position: fixed; top: var(--sd92-header-h); right: 0; left: 0; z-index: 9999;
  background: #232323; border-bottom: 1px solid rgba(100,149,237,.3);
  max-height: 0; overflow: hidden; transition: max-height .28s ease;
}
.sd92-mobile-menu.sd92-menu-open { max-height: 520px; box-shadow: var(--sd92-shadow); }
.sd92-mobile-menu ul { list-style: none; margin: 0; padding: 8px 14px; }
.sd92-mobile-menu li { border-bottom: 1px solid rgba(255,255,255,.06); }
.sd92-mobile-menu li:last-child { border-bottom: 0; }
.sd92-mobile-menu a {
  display: flex; align-items: center; gap: 10px;
  color: var(--sd92-text); padding: 12px 6px; font-weight: 600;
}
.sd92-mobile-menu a:hover { color: var(--sd92-accent); }
.sd92-mobile-menu i { color: var(--sd92-primary); width: 22px; text-align: center; }

/* ----------------------------------------------------------- Hero / carousel */
.sd92-hero { margin-top: 12px; }
.sd92-carousel { position: relative; border-radius: var(--sd92-radius); overflow: hidden; box-shadow: var(--sd92-shadow); }
.sd92-slide {
  display: none; position: relative; cursor: pointer;
}
.sd92-slide.sd92-active { display: block; }
.sd92-slide img { width: 100%; height: 190px; object-fit: cover; }
.sd92-slide-cap {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 14px; background: linear-gradient(0deg, rgba(0,0,0,.75), transparent);
  color: #fff;
}
.sd92-slide-cap h2 { margin: 0 0 4px; font-size: 17px; }
.sd92-slide-cap p { margin: 0; font-size: 12px; color: var(--sd92-accent); }
.sd92-dots { display: flex; gap: 6px; justify-content: center; padding: 8px 0; }
.sd92-dot {
  width: 8px; height: 8px; border-radius: 50%; background: rgba(240,248,255,.3);
  border: 0; cursor: pointer; padding: 0;
}
.sd92-dot.sd92-active { background: var(--sd92-primary); width: 22px; border-radius: 4px; }

/* ----------------------------------------------------------- Section title */
.sd92-section { margin: 22px 0; }
.sd92-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.sd92-section-title { font-size: 18px; font-weight: 800; color: var(--sd92-text); display: flex; align-items: center; gap: 8px; }
.sd92-section-title i { color: var(--sd92-primary); }
.sd92-section-link { font-size: 12px; color: var(--sd92-accent); font-weight: 600; }

/* ----------------------------------------------------------- Game grid */
.sd92-chips { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 6px; margin-bottom: 10px; scrollbar-width: none; }
.sd92-chips::-webkit-scrollbar { display: none; }
.sd92-chip {
  flex: 0 0 auto; padding: 6px 12px; border-radius: 999px;
  background: var(--sd92-surface); color: var(--sd92-text);
  font-size: 12px; font-weight: 600; cursor: pointer; border: 1px solid rgba(255,255,255,.08);
  white-space: nowrap;
}
.sd92-chip.sd92-chip-active { background: var(--sd92-primary); color: #fff; border-color: transparent; }

.sd92-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.sd92-game {
  background: var(--sd92-surface); border-radius: 12px; overflow: hidden;
  cursor: pointer; position: relative; border: 1px solid rgba(100,149,237,.18);
  transition: transform .15s ease, box-shadow .15s ease;
}
.sd92-game:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(100,149,237,.3); }
.sd92-game img { width: 100%; height: 84px; object-fit: cover; }
.sd92-game-name {
  font-size: 11px; text-align: center; padding: 5px 4px; color: var(--sd92-text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 600;
}
.sd92-game-tag {
  position: absolute; top: 4px; left: 4px; background: var(--sd92-gold);
  color: #2D2D2D; font-size: 9px; padding: 2px 6px; border-radius: 6px; font-weight: 700;
}

/* ----------------------------------------------------------- Cards / content */
.sd92-card {
  background: var(--sd92-surface); border-radius: var(--sd92-radius);
  padding: 14px; box-shadow: var(--sd92-shadow); border: 1px solid rgba(255,255,255,.05);
  margin-bottom: 14px;
}
.sd92-card h3 { margin: 0 0 8px; font-size: 16px; color: var(--sd92-accent); display: flex; align-items: center; gap: 8px; }
.sd92-card p { margin: 0 0 8px; color: var(--sd92-muted); font-size: 13.5px; }
.sd92-card ul { margin: 0; padding-left: 18px; color: var(--sd92-muted); font-size: 13px; }
.sd92-card li { margin-bottom: 4px; }
.sd92-card a { color: var(--sd92-primary); font-weight: 700; }
.sd92-card a:hover { text-decoration: underline; }

.sd92-cta {
  display: inline-flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, #FFD27A, #6495ED);
  color: #2D2D2D; font-weight: 800; padding: 11px 22px; border-radius: 999px;
  border: none; cursor: pointer; font-size: 14px; box-shadow: 0 6px 16px rgba(100,149,237,.45);
}
.sd92-cta:hover { transform: translateY(-1px); }

/* ----------------------------------------------------------- Stat strip */
.sd92-stats { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.sd92-stat { background: rgba(100,149,237,.12); border-radius: 10px; padding: 10px; text-align: center; }
.sd92-stat-num { font-size: 18px; font-weight: 800; color: var(--sd92-gold); }
.sd92-stat-label { font-size: 11px; color: var(--sd92-muted); }

/* ----------------------------------------------------------- Testimonials */
.sd92-testi { display: flex; gap: 10px; align-items: flex-start; padding: 10px 0; border-bottom: 1px dashed rgba(255,255,255,.08); }
.sd92-testi:last-child { border-bottom: 0; }
.sd92-testi-avatar { width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, #6495ED, #AFEEEE); display: flex; align-items: center; justify-content: center; color: #2D2D2D; font-weight: 800; flex: 0 0 auto; }
.sd92-testi-name { font-weight: 700; color: var(--sd92-accent); font-size: 13px; }
.sd92-testi-stars { color: var(--sd92-gold); font-size: 11px; }
.sd92-testi-text { font-size: 12.5px; color: var(--sd92-muted); margin-top: 2px; }

/* ----------------------------------------------------------- Payment */
.sd92-pay { display: flex; flex-wrap: wrap; gap: 8px; }
.sd92-pay-item { background: #fff; color: #2D2D2D; border-radius: 8px; padding: 8px 12px; font-size: 12px; font-weight: 700; display: flex; align-items: center; gap: 6px; }

/* ----------------------------------------------------------- Footer */
.sd92-footer { background: #1a1a1a; padding: 22px 14px calc(var(--sd92-bottomnav-h) + 22px); border-top: 1px solid rgba(100,149,237,.25); }
.sd92-footer-inner { max-width: 430px; margin: 0 auto; }
.sd92-footer p { color: var(--sd92-muted); font-size: 12.5px; line-height: 1.6; }
.sd92-footer-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.sd92-footer-links a { background: var(--sd92-surface); color: var(--sd92-text); padding: 6px 10px; border-radius: 8px; font-size: 11.5px; font-weight: 600; }
.sd92-footer-links a:hover { color: var(--sd92-accent); }
.sd92-footer-copy { font-size: 11px; color: #888; margin-top: 8px; }

/* ----------------------------------------------------------- Mobile bottom nav */
.sd92-bottomnav {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 1000;
  height: var(--sd92-bottomnav-h);
  background: linear-gradient(180deg, #232323 0%, #1a1a1a 100%);
  border-top: 1px solid rgba(100,149,237,.4);
  display: flex; justify-content: space-around; align-items: stretch;
  box-shadow: 0 -4px 18px rgba(0,0,0,.4);
}
.sd92-bottomnav button {
  flex: 1; background: transparent; border: 0; color: var(--sd92-muted);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 2px; cursor: pointer; min-width: 60px; min-height: 60px;
  font-size: 11px; font-weight: 600; padding: 4px; position: relative;
  transition: color .15s ease, transform .15s ease;
}
.sd92-bottomnav button:hover { color: var(--sd92-accent); transform: translateY(-1px); }
.sd92-bottomnav button.sd92-bn-current { color: var(--sd92-primary); }
.sd92-bottomnav button.sd92-bn-current::after {
  content: ''; position: absolute; top: 0; width: 24px; height: 3px;
  background: var(--sd92-primary); border-radius: 0 0 4px 4px;
}
.sd92-bottomnav button i { font-size: 22px; }
.sd92-bottomnav .material-icons { font-size: 24px; }
.sd92-bn-promo { color: var(--sd92-gold); }
.sd92-bn-badge {
  position: absolute; top: 4px; right: 18px; background: var(--sd92-danger);
  color: #fff; font-size: 9px; font-weight: 700; border-radius: 999px;
  padding: 1px 5px; min-width: 14px; text-align: center;
}

/* ----------------------------------------------------------- Desktop hide bottom nav */
@media (min-width: 769px) {
  .sd92-bottomnav { display: none; }
  .sd92-footer { padding-bottom: 22px; }
  .sd92-wrapper { padding-bottom: 22px; }
}

/* ----------------------------------------------------------- Mobile safety padding */
@media (max-width: 768px) {
  main { padding-bottom: calc(var(--sd92-bottomnav-h) + 14px); }
}

/* ----------------------------------------------------------- Utility */
.sd92-text-center { text-align: center; }
.sd92-mt8 { margin-top: 8px; }
.sd92-promo-text {
  color: var(--sd92-gold); font-weight: 800; cursor: pointer;
}
.sd92-promo-text:hover { text-decoration: underline; }
.sd92-banner {
  border-radius: var(--sd92-radius); overflow: hidden; margin: 10px 0;
  box-shadow: var(--sd92-shadow); cursor: pointer; border: 1px solid rgba(100,149,237,.2);
}
.sd92-banner img { width: 100%; height: 120px; object-fit: cover; }
