/* Vault Thunder Board: compact UI pass (mobile-first) */

/* Buttons above the grid */
#reserveBtn,#stripeBtn,#bankPayBtn,#bankSmartBtn,#clearBtn{
  height:48px !important;
  min-height:48px !important;
  padding:8px 14px !important;
  font-size:14px !important;
  line-height:1.1 !important;
  border-radius:10px !important;
  box-sizing:border-box !important;
}

/* The CTA container shouldn’t stretch children */
.panel-cta{
  align-items:center !important;         /* flex */
  gap:8px !important;                     /* flex/grid */
  row-gap:8px !important;
  grid-auto-rows:min-content !important;  /* grid safety */
}

/* Number grid & tiles */
#grid{ gap:8px !important; }
#grid button{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  min-height:44px !important;
  padding:0 !important;
  font-size:14px !important;
  border-radius:10px !important;
}

/* Inputs above CTAs */
input[type="text"],input[type="email"],input[type="tel"],.form-control,.input{
  height:40px !important;
  padding:.5rem .75rem !important;
  font-size:14px !important;
  border-radius:10px !important;
}

/* Panels / cards / hero poster */
.panel,.card,details.panel{ border-radius:12px !important; }
.game-hero,.poster,.game .media{
  min-height:160px !important;
  border-radius:12px !important;
}

/* General buttons smaller by default */
button.btn{ padding:8px 12px !important; font-size:14px !important; border-radius:10px !important; }

.mini-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
}

.mini-grid .vc-cell{
  font:inherit;
  padding:.35rem .25rem;
  text-align:center;
  border-radius:6px;
}

.mini-grid .vc-cell.is-sold{ opacity:.45; }

.mini-grid .vc-cell.is-res{
  outline:1px solid var(--brand,#6c5ce7);
}
