/* ============================================
   pinas77 bet - theme-d731.css
   Mobile-first responsive casino design
   Class prefix: ui73-
   Palette: #CD5C5C (brand) | #3A3A3A (bg)
   ============================================ */

/* ---- CSS Variables ---- */
:root{
  --ui73-bg:#3A3A3A;
  --ui73-bg-alt:#2c2c2c;
  --ui73-bg-card:#474747;
  --ui73-bg-card-2:#505050;
  --ui73-primary:#CD5C5C;
  --ui73-primary-light:#e07a7a;
  --ui73-primary-dark:#a84a4a;
  --ui73-accent:#F0C040;
  --ui73-accent-soft:#d9a82e;
  --ui73-text:#f5f5f5;
  --ui73-text-muted:#b8b8b8;
  --ui73-success:#4caf50;
  --ui73-border:#5c5c5c;
  --ui73-radius:10px;
  --ui73-radius-sm:6px;
  --ui73-shadow:0 4px 18px rgba(0,0,0,.45);
  --ui73-shadow-sm:0 2px 8px rgba(0,0,0,.35);
  --ui73-header-h:56px;
  --ui73-bottomnav-h:62px;
  --ui73-max:430px;
}

/* ---- Base Reset ---- */
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:62.5%}
body{
  font-family:'Segoe UI',Roboto,system-ui,Arial,sans-serif;
  background:var(--ui73-bg);
  color:var(--ui73-text);
  font-size:1.5rem;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:var(--ui73-primary-light);text-decoration:none;transition:color .2s}
a:hover{color:var(--ui73-accent)}
img{max-width:100%;display:block}
ul{list-style:none}

/* ---- Layout Helpers ---- */
.ui73-container{max-width:var(--ui73-max);margin:0 auto;padding:0 12px;width:100%}
.ui73-wrapper{max-width:var(--ui73-max);margin:0 auto;background:var(--ui73-bg-alt);min-height:100vh;box-shadow:var(--ui73-shadow)}
.ui73-section{padding:18px 12px}
.ui73-hide{display:none!important}

/* ---- Header ---- */
.ui73-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:var(--ui73-header-h);
  background:linear-gradient(90deg,var(--ui73-bg-alt),#333);
  border-bottom:2px solid var(--ui73-primary);
  box-shadow:0 2px 10px rgba(0,0,0,.5);
}
.ui73-header-inner{
  max-width:var(--ui73-max);margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;padding:0 12px;
}
.ui73-logo{display:flex;align-items:center;gap:8px}
.ui73-logo img{width:30px;height:30px;border-radius:6px}
.ui73-logo span{font-size:1.7rem;font-weight:800;color:var(--ui73-text);letter-spacing:.3px}
.ui73-logo b{color:var(--ui73-primary-light)}
.ui73-header-actions{display:flex;align-items:center;gap:8px}
.ui73-menu-btn{
  background:none;border:none;color:var(--ui73-text);font-size:2.2rem;cursor:pointer;
  padding:4px 6px;display:flex;align-items:center;
}

/* ---- Buttons ---- */
.ui73-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:8px 16px;border:none;border-radius:var(--ui73-radius-sm);
  font-size:1.4rem;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .2s;
  min-height:38px;text-align:center;line-height:1.2;
}
.ui73-btn:active{transform:scale(.96)}
.ui73-btn-primary{background:linear-gradient(135deg,var(--ui73-primary),var(--ui73-primary-dark));color:#fff;box-shadow:0 3px 10px rgba(205,92,92,.4)}
.ui73-btn-primary:hover{box-shadow:0 4px 14px rgba(205,92,92,.6);color:#fff}
.ui73-btn-accent{background:linear-gradient(135deg,var(--ui73-accent),var(--ui73-accent-soft));color:#3a2a00;box-shadow:0 3px 10px rgba(240,192,64,.35)}
.ui73-btn-accent:hover{color:#3a2a00}
.ui73-btn-ghost{background:transparent;border:1.5px solid var(--ui73-primary);color:var(--ui73-primary-light)}
.ui73-btn-ghost:hover{background:rgba(205,92,92,.15);color:var(--ui73-primary-light)}
.ui73-btn-block{display:block;width:100%}
.ui73-btn-sm{padding:5px 12px;font-size:1.3rem;min-height:32px}
.ui73-btn-lg{padding:12px 24px;font-size:1.6rem;min-height:46px}

/* ---- Mobile Menu (slide down) ---- */
.ui73-mobile-menu{
  position:fixed;top:var(--ui73-header-h);left:0;right:0;z-index:9999;
  background:var(--ui73-bg-alt);border-bottom:2px solid var(--ui73-primary);
  max-height:0;overflow:hidden;transition:max-height .3s ease;
  box-shadow:var(--ui73-shadow);
}
.ui73-mobile-menu.ui73-open{max-height:460px}
.ui73-mobile-menu ul{padding:8px 12px}
.ui73-mobile-menu li{border-bottom:1px solid #444}
.ui73-mobile-menu li:last-child{border-bottom:none}
.ui73-mobile-menu a{
  display:flex;align-items:center;gap:10px;padding:12px 8px;
  color:var(--ui73-text);font-size:1.5rem;font-weight:600;
}
.ui73-mobile-menu a:hover{color:var(--ui73-accent);background:rgba(205,92,92,.1)}
.ui73-mobile-menu i,.ui73-mobile-menu span.mi{font-size:1.9rem;color:var(--ui73-primary-light);width:24px;text-align:center}

/* ---- Hero Carousel ---- */
.ui73-hero{padding-top:calc(var(--ui73-header-h) + 8px)}
.ui73-carousel{position:relative;overflow:hidden;border-radius:0 0 14px 14px}
.ui73-carousel-track{display:flex;transition:transform .45s ease}
.ui73-carousel-slide{min-width:100%;position:relative;cursor:pointer}
.ui73-carousel-slide img{width:100%;height:auto;display:block}
.ui73-carousel-dots{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:6px}
.ui73-carousel-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);cursor:pointer;transition:background .2s}
.ui73-carousel-dots span.ui73-active{background:var(--ui73-accent);width:20px;border-radius:4px}

/* ---- Section Titles ---- */
.ui73-sec-title{
  display:flex;align-items:center;gap:8px;
  font-size:1.9rem;font-weight:800;color:var(--ui73-text);
  margin:6px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--ui73-primary);
}
.ui73-sec-title i,.ui73-sec-title span.mi{color:var(--ui73-accent);font-size:2.1rem}
.ui73-sec-title small{margin-left:auto;font-size:1.2rem;color:var(--ui73-primary-light);font-weight:600;cursor:pointer}
.ui73-h1{
  font-size:2.2rem;font-weight:800;line-height:1.25;margin:10px 0 8px;
  color:var(--ui73-text);
}
.ui73-h1 b{color:var(--ui73-primary-light)}
.ui73-h2{font-size:1.8rem;font-weight:700;margin:14px 0 8px;color:var(--ui73-accent)}
.ui73-h3{font-size:1.6rem;font-weight:700;margin:10px 0 6px;color:var(--ui73-primary-light)}
.ui73-p{margin:6px 0;color:var(--ui73-text-muted);line-height:1.55}

/* ---- Game Grid ---- */
.ui73-game-cat{margin-bottom:20px}
.ui73-game-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
}
.ui73-game-card{
  background:var(--ui73-bg-card);border-radius:var(--ui73-radius-sm);
  overflow:hidden;cursor:pointer;transition:transform .18s,box-shadow .2s;
  border:1px solid #555;text-align:center;
}
.ui73-game-card:active{transform:scale(.95)}
.ui73-game-card:hover{box-shadow:0 4px 12px rgba(205,92,92,.35);border-color:var(--ui73-primary)}
.ui73-game-card img{width:100%;aspect-ratio:1;object-fit:cover}
.ui73-game-card span{display:block;padding:5px 4px;font-size:1.15rem;font-weight:600;color:var(--ui73-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---- Info Cards / Modules ---- */
.ui73-card{background:var(--ui73-bg-card);border-radius:var(--ui73-radius);padding:14px;margin-bottom:12px;box-shadow:var(--ui73-shadow-sm);border:1px solid #555}
.ui73-card-accent{border-left:4px solid var(--ui73-primary)}
.ui73-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.ui73-feature-item{background:var(--ui73-bg-card-2);border-radius:var(--ui73-radius-sm);padding:10px;text-align:center}
.ui73-feature-item i,.ui73-feature-item span.mi{font-size:2.4rem;color:var(--ui73-accent);display:block;margin-bottom:4px}
.ui73-feature-item b{display:block;font-size:1.3rem;color:var(--ui73-text)}
.ui73-feature-item p{font-size:1.2rem;color:var(--ui73-text-muted);margin-top:2px}

/* ---- Promo Banner ---- */
.ui73-promo-banner{
  background:linear-gradient(135deg,var(--ui73-primary-dark),var(--ui73-primary));
  border-radius:var(--ui73-radius);padding:16px;text-align:center;margin-bottom:12px;
}
.ui73-promo-banner h3{color:#fff;font-size:1.8rem;margin-bottom:4px}
.ui73-promo-banner p{color:rgba(255,255,255,.85);font-size:1.3rem;margin-bottom:10px}

/* ---- Payment Methods ---- */
.ui73-pay-grid{display:flex;flex-wrap:wrap;gap:8px}
.ui73-pay-item{
  background:var(--ui73-bg-card-2);border-radius:var(--ui73-radius-sm);
  padding:8px 12px;display:flex;align-items:center;gap:6px;border:1px solid #555;
}
.ui73-pay-item i,.ui73-pay-item span.mi{color:var(--ui73-accent);font-size:1.8rem}
.ui73-pay-item span:nth-child(2){font-size:1.25rem;font-weight:600;color:var(--ui73-text)}

/* ---- Testimonials ---- */
.ui73-testimonial{background:var(--ui73-bg-card-2);border-radius:var(--ui73-radius-sm);padding:12px;margin-bottom:8px;border-left:3px solid var(--ui73-accent)}
.ui73-testimonial-stars{color:var(--ui73-accent);font-size:1.3rem;margin-bottom:4px}
.ui73-testimonial p{font-size:1.3rem;color:var(--ui73-text-muted);font-style:italic}
.ui73-testimonial b{display:block;margin-top:4px;font-size:1.2rem;color:var(--ui73-primary-light)}

/* ---- Winners ---- */
.ui73-winner-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #444}
.ui73-winner-row:last-child{border-bottom:none}
.ui73-winner-row i,.ui73-winner-row span.mi{color:var(--ui73-accent);font-size:1.7rem}
.ui73-winner-row .ui73-w-name{font-size:1.3rem;font-weight:700;color:var(--ui73-text)}
.ui73-winner-row .ui73-w-game{font-size:1.15rem;color:var(--ui73-text-muted)}
.ui73-winner-row .ui73-w-amount{margin-left:auto;font-size:1.4rem;font-weight:800;color:var(--ui73-success)}

/* ---- Steps ---- */
.ui73-steps{counter-reset:step}
.ui73-step{display:flex;gap:10px;margin-bottom:12px}
.ui73-step-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--ui73-primary);color:#fff;font-weight:800;font-size:1.4rem;display:flex;align-items:center;justify-content:center}
.ui73-step-body b{display:block;font-size:1.4rem;color:var(--ui73-text)}
.ui73-step-body p{font-size:1.3rem;color:var(--ui73-text-muted)}

/* ---- Inline promo link ---- */
.ui73-link-inline{color:var(--ui73-accent);font-weight:700;cursor:pointer}
.ui73-link-inline:hover{color:var(--ui73-primary-light)}

/* ---- Footer ---- */
.ui73-footer{background:var(--ui73-bg-alt);border-top:2px solid var(--ui73-primary);padding:18px 12px 80px}
.ui73-footer-brand{font-size:1.3rem;color:var(--ui73-text-muted);margin-bottom:12px;line-height:1.5}
.ui73-footer-promos{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.ui73-footer-links{display:flex;flex-wrap:wrap;gap:6px 14px;margin-bottom:12px}
.ui73-footer-links a{font-size:1.25rem;color:var(--ui73-text-muted)}
.ui73-footer-links a:hover{color:var(--ui73-accent)}
.ui73-footer-copy{font-size:1.15rem;color:#888;text-align:center;border-top:1px solid #444;padding-top:10px}

/* ---- Mobile Bottom Nav ---- */
.ui73-bottomnav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;
  height:var(--ui73-bottomnav-h);
  background:linear-gradient(180deg,#333,#222);
  border-top:2px solid var(--ui73-primary);
  display:flex;justify-content:space-around;align-items:center;
  box-shadow:0 -3px 12px rgba(0,0,0,.5);
}
.ui73-bottomnav-item{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:60px;min-height:60px;cursor:pointer;flex:1;
  color:var(--ui73-text-muted);transition:color .2s;position:relative;background:none;border:none;
}
.ui73-bottomnav-item.ui73-active{color:var(--ui73-accent)}
.ui73-bottomnav-item:active{color:var(--ui73-primary-light)}
.ui73-bottomnav-item i,.ui73-bottomnav-item span.mi,.ui73-bottomnav-item ion-icon{font-size:2.3rem;transition:transform .2s}
.ui73-bottomnav-item span:not(.mi):not(.material-icons){font-size:1.05rem;margin-top:2px;font-weight:600}
.ui73-bottomnav-item ion-icon{font-size:2.3rem}
.ui73-bottomnav-item.ui73-center{
  transform:translateY(-14px);
  background:linear-gradient(135deg,var(--ui73-primary),var(--ui73-primary-dark));
  width:50px;height:50px;border-radius:50%;min-width:50px;min-height:50px;
  box-shadow:0 4px 12px rgba(205,92,92,.5);border:3px solid var(--ui73-bg-alt);
}
.ui73-bottomnav-item.ui73-center i,.ui73-bottomnav-item.ui73-center ion-icon{font-size:2.4rem;color:#fff}
.ui73-bottomnav-badge{position:absolute;top:4px;right:14px;background:var(--ui73-primary);color:#fff;font-size:.95rem;font-weight:700;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center}

/* ---- Desktop / Responsive ---- */
@media(min-width:769px){
  .ui73-bottomnav{display:none}
  .ui73-footer{padding-bottom:18px}
  .ui73-wrapper{box-shadow:0 0 30px rgba(0,0,0,.5)}
}
@media(min-width:431px){
  .ui73-game-grid{grid-template-columns:repeat(4,1fr)}
  .ui73-feature-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:768px){
  .ui73-main{padding-bottom:calc(var(--ui73-bottomnav-h) + 8px)}
}
