/* =======================
   AJUSTES FINALES LIGAS + TALÓN
======================= */
.app-layout{grid-template-columns:240px minmax(720px,1fr) 340px}

.ligas-panel .panel-heading h2{font-size:20px; line-height:1.1}
.lista-ligas{gap:10px}
.liga-item{
  min-height:54px;
  align-items:center;
  padding:10px 12px;
}
.liga-item span{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  line-height:1.15;
  max-height:2.3em;
  font-size:14px;
}
.liga-item strong{
  min-width:38px;
  height:26px;
  font-size:13px;
  margin-left:auto;
}

.betslip-header{
  background:linear-gradient(180deg,#24211d,#17181d);
}
.betslip-header h3{color:#ffbe2f;font-size:17px}
.selection-count{
  width:38px;height:38px;font-size:18px;
  background:var(--lime); color:#111;
}
.betslip-board{
  padding:10px 14px 0;
}
.betslip-board-field{
  position:relative;
  height:168px;
  border:1px solid #323641;
  border-radius:8px;
  background:linear-gradient(180deg,#0d1016,#07090d);
  overflow:hidden;
}
.betslip-board-field::before,
.betslip-board-field::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  border:2px solid rgba(255,255,255,.28);
}
.betslip-board-field::before{
  inset:16px 34px;
  clip-path:polygon(22% 0,78% 0,100% 100%,0 100%);
  border-radius:2px;
}
.betslip-board-field::after{
  width:76px;height:76px;top:46px;border-radius:50%;
}
.betslip-board-field:before{box-shadow:0 0 0 999px rgba(0,0,0,0)}
.betslip-board-field .x{display:none}
.betslip-selecciones{padding-top:10px}
.betslip-empty{font-size:14px; line-height:1.45}
.betslip-summary{padding:0 14px}
.linea{padding:10px 0 8px;border-bottom:1px solid #232938}
.linea:last-of-type{border-bottom:0}
.linea span{font-size:14px;color:#eef2ff}
.linea strong{font-size:17px}
.linea-apuestas strong{color:#fff}
.monto-control-wrap{display:grid; gap:10px}
.monto-control{height:46px}
.monto-atajos{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:8px;
}
.monto-chip{
  min-height:40px;
  border-radius:5px;
  border:1px solid #373d49;
  background:linear-gradient(180deg,#4c5059,#2f333a);
  color:#fff;
  font-weight:800;
  font-size:15px;
}
.monto-chip:hover{filter:brightness(1.08)}
.monto-chip.activo{background:linear-gradient(180deg,#5968ff,#3342e3); border-color:#7381ff}
.monto-chip.limpiar{background:linear-gradient(180deg,#ec3325,#b50000)}
.pago-potencial{
  margin-top:14px;
  border:1px solid rgba(255,255,255,.08);
}
.ticket-actions{padding-top:12px}
.ticket-actions button{font-size:16px}
#descargar-ticket{background:var(--lime)}
#imprimir-ticket{background:#1cb65c;color:#fff}

@media (max-width: 1440px){
  .app-layout{grid-template-columns:224px minmax(620px,1fr) 320px}
}

@media (max-width: 1180px){
  .app-layout{grid-template-columns:minmax(0,1fr) 320px}
}

@media (max-width: 720px){
  .monto-atajos{grid-template-columns:repeat(3,1fr)}
  .ligas-panel .panel-heading h2{font-size:18px}
}


/* OVERRIDES: talón sin campo y monto +/- */
.betslip-selecciones{padding-top:14px}
.betslip-board{display:none !important}
.monto-control-wrap{display:grid;gap:10px}
.monto-stepper{
  display:grid;
  grid-template-columns:56px minmax(0,1fr) 56px;
  gap:8px;
  align-items:stretch;
}
.step-btn{
  min-height:46px;
  border-radius:6px;
  border:1px solid #3b4250;
  background:linear-gradient(180deg,#474d58,#2d3138);
  color:#31e47a;
  font-size:24px;
  font-weight:900;
}
.step-btn:hover{filter:brightness(1.08)}
.monto-display{
  display:flex;
  align-items:center;
  gap:8px;
  height:46px;
  border:1px solid #3a4760;
  border-radius:8px;
  background:#101520;
  padding:0 12px;
  color:#fff;
}
.monto-display span{color:#d8e1f3;font-weight:800}
.monto-display #monto-apuesta{width:100%;border:0;background:transparent;color:#fff;outline:none;font-size:18px;font-weight:800}
.monto-atajos{grid-template-columns:repeat(6,1fr)}
.monto-chip{min-height:40px}
.monto-chip.limpiar{background:linear-gradient(180deg,#ec3325,#b50000)}
@media (max-width: 720px){
  .monto-stepper{grid-template-columns:48px minmax(0,1fr) 48px}
  .monto-atajos{grid-template-columns:repeat(6,1fr);gap:6px}
  .monto-chip{font-size:14px;padding:0}
}


/* OVERRIDES: input monto sin flechas y talón sin scroll interno */
#monto-apuesta::-webkit-outer-spin-button,
#monto-apuesta::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
#monto-apuesta[type=number]{
  -moz-appearance: textfield;
  appearance: textfield;
}

.betslip-panel{
  max-height:none !important;
  overflow:visible !important;
}

/* Selecciones más compactas para soportar varias apuestas sin barra interna */
.seleccion-evento{
  padding:10px 34px 10px 10px;
}
.seleccion-evento + .seleccion-evento{margin-top:8px}
.seleccion-liga{
  font-size:10px;
  margin-bottom:2px;
}
.info-apuesta .equipos{
  font-size:14px;
  line-height:1.15;
}
.info-apuesta .mercado{
  margin-top:3px;
  font-size:12px;
}
.cuota-betslip{
  margin-top:6px;
}
.cuota-betslip strong{
  font-size:16px;
}

.monto-atajos{grid-template-columns:repeat(5,1fr)}

@media (max-width: 720px){
  .monto-atajos{grid-template-columns:repeat(5,1fr)}
}


/* AJUSTES FINALES DEL MONTO */
.monto-display{
  justify-content:center;
}
.monto-display > span{
  flex:0 0 auto;
}
.monto-display #monto-apuesta{
  flex:0 1 auto;
  width:92px;
  text-align:center;
  padding:0;
}
.linea-apuestas{
  display:none !important;
}

/* AJUSTE: columna de ligas más ancha y nombres en una sola línea */
.app-layout{
  grid-template-columns:290px minmax(700px,1fr) 340px;
}
.liga-item{
  min-height:48px;
  padding:8px 12px;
}
.liga-item span{
  display:block;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  max-height:none;
  font-size:14px;
  line-height:1.2;
}

@media (max-width: 1440px){
  .app-layout{grid-template-columns:270px minmax(600px,1fr) 320px}
}

@media (max-width: 1180px){
  .app-layout{grid-template-columns:minmax(0,1fr) 320px}
}


/* =======================
   PAGO POTENCIAL DESTACADO
======================= */
