/* compartir-alineacion.css - OPTIMIZADO */
/* Basado en tu archivo original :contentReference[oaicite:4]{index=4} */

/* ============ Tokens simples (para evitar repetición) ============ */
:root{
  --white-10: rgba(255,255,255,.10);
  --white-12: rgba(255,255,255,.12);
  --white-16: rgba(255,255,255,.16);
  --white-18: rgba(255,255,255,.18);
  --black-18: rgba(0,0,0,.18);
  --black-25: rgba(0,0,0,.25);
  --black-30: rgba(0,0,0,.30);
  --black-35: rgba(0,0,0,.35);
  --orange: #f5a623;

  --shadow-soft: 0 10px 24px rgba(0,0,0,.20);
  --shadow-hard: 0 16px 44px rgba(0,0,0,.28);

  --grad-headerblue:
  radial-gradient(900px 420px at 18% 15%, rgba(255,255,255,.18), rgba(255,255,255,0) 60%),
  radial-gradient(700px 360px at 88% 0%, rgba(120,170,255,.22), rgba(255,255,255,0) 55%),
  linear-gradient(135deg,#1b2a4f 0%, #2a4f87 55%, #1f3d73 100%);
}

/* ============ Layout containers ============ */
#cuerpo_campo,
.contenedor_campo{ position:relative; }

/* ============ Banner superior (share-banner) ============ */
.share-banner{
  width:100%;
  margin:10px auto 14px;
  position:relative;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(0,0,0,.22);
  border:1px solid var(--white-18);
  color:#fff;
  z-index:3;
}
.share-banner__glow{
  position:absolute; inset:-40px;
  background:
  radial-gradient(circle at 20% 20%, rgba(255,153,0,.45), transparent 55%),
  radial-gradient(circle at 80% 10%, rgba(0,255,180,.25), transparent 55%),
  radial-gradient(circle at 50% 120%, rgba(0,0,0,.35), transparent 60%);
  filter:blur(6px);
  opacity:.95;
}
.share-banner__inner{
  position:relative;
  padding:10px 12px 12px;
  background:linear-gradient(135deg, rgba(4,20,35,.75), rgba(8,40,55,.55));
  backdrop-filter:blur(8px);
}
.share-banner__kicker{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  margin-bottom:6px;
}
.share-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2px;
  background:rgba(255,153,0,.92);
  color:#1b1b1b;
}
.share-pill--soft{
  background:var(--white-16);
  color:#fff;
  border:1px solid rgba(255,255,255,.2);
}
.share-banner__title{
  text-align:center;
  font-size:16px;
  font-weight:900;
  line-height:1.15;
  margin:0;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}
.share-banner__desc{
  text-align:center;
  margin-top:6px;
  font-size:12px;
  opacity:.95;
  line-height:1.25;
}

/* ============ Drag & Drop ============ */
.js-player-wrap{ display:block; width:100%; }

.drag-badge{
  position:absolute; top:6px; left:6px;
  background:var(--black-35);
  color:#fff;
  font-size:10px;
  padding:2px 6px;
  border-radius:999px;
  z-index:5;
  visibility:hidden;
}

body.is-dragging .drag-badge{ visibility:visible; }

body.is-dragging .lineup-row,
body.is-dragging #bench_zone{
  outline:2px dashed rgba(255,153,0,.65);
  outline-offset:-10px;
  border-radius:14px;
}

/* ✅ Unificada: antes estaba duplicada con colores distintos */
.dropzone-highlight{
  outline:3px dashed rgba(255,153,0,.95) !important;
  outline-offset:-10px;
  box-shadow:0 0 0 6px rgba(255,153,0,.10) inset;
}

/* evita que se “estrechen” por wrappers */
.lineup-row .nomarginpadding,
.bench-grid .nomarginpadding{
  padding-left:0 !important;
  padding-right:0 !important;
}
.bench-grid.row{ margin-left:0; margin-right:0; }

/* ============ Cabecera overlay (alineacion-header) ============ */
.alineacion-header{
  position:absolute;
  top:10px;
  left:50%;
  transform:translateX(-50%);
  width:100%;
  border-radius:16px;
  overflow:hidden;
  margin:0;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  color:#fff;
  z-index:6;
}
.alineacion-header__bg{
  position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(12,150,70,.95), rgba(9,110,200,.55));
}
.alineacion-header__bg:before{
  content:"";
  position:absolute; inset:-40%;
  background:
  radial-gradient(circle at 20% 10%, rgba(255,170,0,.55), transparent 55%),
  radial-gradient(circle at 80% 0%, rgba(0,210,255,.35), transparent 60%),
  radial-gradient(circle at 80% 90%, rgba(0,0,0,.25), transparent 60%);
  transform:rotate(8deg);
}
.alineacion-header__inner{
  position:relative;
  padding:14px 14px 12px;
  backdrop-filter:blur(6px);
}
.alineacion-header__top{ margin-bottom:6px; }

.ah-pill,
.ah-meta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--white-18);
}
.ah-pill{
  background:var(--black-25);
  padding:6px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
}
.alineacion-header__title{
  font-size:20px;
  font-weight:1000;
  letter-spacing:.2px;
  line-height:1.15;
  margin:2px 0 4px;
  text-shadow:0 2px 10px rgba(0,0,0,.25);
}
.alineacion-header__desc{
  font-size:13px;
  opacity:.95;
  line-height:1.25;
  margin:0 0 10px;
}
.alineacion-header__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ah-meta{
  background:var(--white-12);
  padding:6px 10px;
  border-radius:12px;
  font-size:12px;
  font-weight:800;
}

/* ============ Editor (tuplantilla) ============ */
.form-group{ margin-bottom:15px; }
label{
  display:block;
  margin-bottom:5px;
  font-weight:bold;
  color:#555;
}

/* Fila jugadores */
.player-row-help{
  display:flex;
  justify-content:space-evenly;
  flex-wrap:wrap;
  width:100%;
  margin:30px 0;
  align-items:flex-start;
}

/* Slots */
.player-slot,
.bench-add-button{
  box-sizing:border-box;
  transition: box-shadow .2s ease, background-color .2s ease, border-color .2s ease, opacity .2s ease;
}

.player-slot{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  cursor:pointer;
  color:#fff;
  margin:1px;
  overflow:hidden;
  text-align:center;
  font-weight:800;
  position:relative;
}

.player-slot.empty{
  width:68px;
  height:68px;
  border-radius:50%;
  background-color:var(--black-30);
  border:3px solid var(--orange);
  box-shadow:0 6px 16px rgba(0,0,0,.18);
}
.player-slot.empty:hover{
  opacity:.92;
  transform:none !important;
  box-shadow:2px 2px 6px rgba(0,0,0,.30);
}

/* ✅ Unificada: estaba duplicada */
.player-slot.filled{
  border:none;
  background:transparent;
  box-shadow:none;
  padding:0;
  width:auto;
  height:auto;
  min-width:70px;
  min-height:70px;
  max-width: 90px;
}

.player-slot::before{
  content:"+";
  font-size:1.8em;
  color:rgba(255,255,255,.7);
  position:absolute;
  top:50%; left:50%;
  transform:translate(-50%, -50%);
  opacity:1;
  z-index:1;
  pointer-events:none;
  text-shadow:1px 1px 2px rgba(0,0,0,.5);
}
.player-slot.filled::before,
.player-slot.loading::before,
.player-slot:not(.empty)::before{ content:""; }

.player-slot > *{ display:block; overflow:hidden; }
.player-slot:hover > *{ transform:none !important; }

/* Banquillo */
#bench-container{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:10px;
  align-items:flex-start;
  background:transparent;
  min-height:90px;
  padding:6px 0;
}
.bench-slot{
  display:block;
  cursor:pointer;
  margin:6px;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  overflow:visible;
  position:relative;
  box-sizing:border-box;
}
.bench-slot.filled{ background:transparent; border:none; box-shadow:none; padding:0; }
.bench-slot.filled::before{ content:""; }
.bench-slot.filled > *{ display:block; }
.bench-slot.filled:hover,
.bench-slot.filled:hover > *{ transform:none !important; box-shadow:none; }

.bench-add-button{
  height:68px;
  width:68px;
  border-radius:50%;
  background-color:var(--black-30);
  border:3px solid var(--orange);
  color:rgba(255,255,255,.90);
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:2.2em;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
  margin:6px;
}
.bench-add-button:hover{
  opacity:.92;
  box-shadow:2px 2px 6px rgba(0,0,0,.30);
}

/* Loading / Error */
.player-slot.loading,
.bench-slot.filled.loading{
  position:relative;
  min-height:50px;
  background-color:rgba(0,0,0,.10);
}
.bench-slot.filled.loading{
  background-color:#f0f0f0;
  width:68px;
  height:68px;
}
.loading-spinner{
  box-sizing:border-box;
  border:3px solid rgba(255,255,255,.3);
  border-radius:50%;
  border-top-color:#fff;
  width:25px;
  height:25px;
  animation:spin 1s linear infinite;
  position:absolute;
  top:50%; left:50%;
  margin-top:-12.5px;
  margin-left:-12.5px;
  z-index:2;
}
.bench-slot.filled.loading .loading-spinner{
  border:3px solid rgba(0,0,0,.1);
  border-top-color:#555;
}
@keyframes spin{ 0%{transform:rotate(0deg);} 100%{transform:rotate(360deg);} }

.player-content-error{
  font-weight:bold;
  text-align:center;
  padding:5px;
  font-size:.8em;
  position:absolute;
  top:50%; left:50%;
  transform:translate(-50%, -50%);
  width:90%;
  background-color:rgba(255,0,0,.30);
  border-radius:3px;
}
.player-slot .player-content-error{ color:#fff; text-shadow:1px 1px 1px #000; }
.bench-slot.filled .player-content-error{ color:#D32F2F; background-color:rgba(255,0,0,.10); }
.bench-slot.filled.error{ background-color:#ffeeee; box-shadow:0 0 0 1px #D32F2F inset; }

/* Modal */
.modal-body .list-unstyled{ max-height:350px; overflow-y:scroll; width:100%; }
.modal-body .list-unstyled li{
  cursor:pointer;
  padding:8px 10px;
  border-bottom:1px solid #eee;
  display:flex;
  align-items:center;
  transition:background-color .2s ease;
}
.modal-body .list-unstyled li:hover{ background-color:#f0f5fa; }
.modal-body .list-unstyled li img{
  width:35px; height:35px;
  margin-right:12px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid #ddd;
}
.modal-body .list-unstyled li span{ font-size:.9em; color:#333; }
.modal-body .list-unstyled li small{ font-size:.8em; color:#666; margin-left:5px; }
.modal-body .text-muted{ color:#888; font-style:italic; padding:8px 10px; }

/* ============ Banner dentro del campo (pitch) ============ */
#pitch-container{
  position:relative;
  padding-top:120px; /* espacio para el banner superior */
}

/* ✅ Una sola definición (antes: base + override duplicado) */
.pitch-share-banner{
  position:absolute;
  top:14px;
  left:50%;
  transform:translateX(-50%);
  z-index:5;
  width:calc(100% - 28px);
  max-width:580px;
  border-radius:16px;
  padding:14px 16px 12px;
  box-shadow:0 14px 34px rgba(0,0,0,.32);
  border:1px solid var(--white-10);
  background:var(--grad-headerblue);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  overflow:hidden;
}
.pitch-share-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:
  linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0) 38%),
  radial-gradient(circle at 18% 0%, rgba(245,166,35,0.38), rgba(245,166,35,0) 58%),
  radial-gradient(circle at 88% 110%, rgba(23,208,179,0.24), rgba(23,208,179,0) 62%);
  pointer-events:none;
}
.pitch-share-banner::after{
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:4px;
  background:linear-gradient(180deg, #ffb13b, #ff6a00);
  opacity:.95;
}
.pitch-share-banner > *{ position:relative; z-index:1; }

.pitch-share-title{
  font-size:24px;
  font-weight:900;
  color:#fff;
  line-height:1.15;
  letter-spacing:.2px;
  text-align:center;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
  text-transform:uppercase;
}
.pitch-share-desc{
  margin:7px 0 0 0;
  font-size:12.5px;
  color:rgba(255,255,255,.92);
  text-align:center;
  text-shadow:0 1px 8px rgba(0,0,0,.25);
}
.pitch-share-meta{
  margin-top:10px;
  display:flex;
  gap:8px;
  justify-content:center;
  flex-wrap:wrap;
}
.pitch-share-pill{
  font-size:14px;
  font-weight:800;
  color:#fff;
  background:linear-gradient(180deg, rgba(10,24,52,.65), rgba(4,14,34,.65));
  border:1px solid var(--white-10);
  padding:4px 9px;
  border-radius:999px;
  box-shadow:0 4px 12px rgba(0,0,0,.18);
}

/* === Modal IA Mejorar Once === */
.ai-modal .modal-dialog { max-width: 980px; }
.ai-modal .modal-content { border-radius: 10px; overflow: hidden; }

.ai-modal__header{
  background: linear-gradient(135deg,#0b6b3a 0%, #0a5db3 55%, #0aa6a6 100%);
  color:#fff;
  padding:16px 18px;
  border-bottom: 0;
}
.ai-modal__close{ color:#fff; opacity:.9; text-shadow:none; }
.ai-modal__icon{
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:10px;
  background: rgba(255,255,255,.18);
  margin-right:10px;
}
.ai-modal__subtitle{ margin-top:6px; opacity:.9; font-size:13px; }

.ai-tip{
  background:#f6fbff;
  border:1px solid #d9edf7;
  border-radius:10px;
  padding:10px 12px;
  margin-bottom:14px;
}
.ai-tip .fa{ margin-right:8px; }

.ai-criteria .btn{
  padding:12px 10px;
  border-radius:10px !important;
  font-weight:600;
}
.ai-criteria .btn .fa{ display:block; font-size:16px; margin-bottom:6px; }
.ai-criteria__txt{ display:block; font-size:12px; }
.ai-criteria .btn.active{
  background:#0a5db3; color:#fff; border-color:#0a5db3;
  box-shadow: 0 8px 18px rgba(10,93,179,.18);
}
.ai-criteria__help{ font-size:12px; opacity:.75; margin-top:8px; }

.ai-actions{ margin-top:6px; }
.ai-cta{
  border-radius:12px;
  padding:14px 16px;
  font-weight:700;
  letter-spacing:.2px;
}

.ai-results{ margin-top:16px; }
.ai-results__empty{
  background:#f7f7f7;
  border:1px dashed #dcdcdc;
  border-radius:12px;
  padding:14px 12px;
  color:#666;
}
.ai-results__empty .fa{ margin-right:8px; }

.ai-modal__footer{ background:#fafafa; }

/* Compactar el modal */
.ai-modal .modal-body { padding: 14px 16px; }
.ai-tip { margin-bottom: 10px; padding: 8px 10px; }
.ai-modal label { margin-bottom: 6px; }

/* Botones 2x2 */
.ai-criteria-2x2 { display: block; }
.ai-criteria-2x2 .ai-btn{
  width: calc(50% - 6px);
  margin: 0 6px 8px 0;
  border-radius: 12px !important;
  padding: 12px 8px;
  font-weight: 800;
  border: 0;
  color: #fff;
  text-align: center;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
}
.ai-criteria-2x2 .ai-btn:nth-child(2n){ margin-right: 0; }

.ai-emoji{ display:block; font-size: 18px; line-height: 18px; margin-bottom: 6px; }
.ai-txt{ display:block; font-size: 12px; letter-spacing: .3px; }

/* Colores por criterio */
.ai-btn--totales{ background: linear-gradient(135deg,#1f7a39 0%, #18a66b 100%); }
.ai-btn--media{   background: linear-gradient(135deg,#0b4fb4 0%, #2f88ff 100%); }
.ai-btn--forma{   background: linear-gradient(135deg,#b54800 0%, #ff8a1f 100%); }
.ai-btn--titular{ background: linear-gradient(135deg,#5c2db3 0%, #a06bff 100%); }

/* Estado activo (más marcado) */
.ai-criteria-2x2 .ai-btn.active{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.18);
  outline: 2px solid rgba(255,255,255,.35);
}

/* Tip inferior compacto */
.ai-criteria-help{
  font-size: 12px;
  opacity: .78;
  margin-top: 2px;
}

/* CTA más “pegado” */
.ai-actions{ margin-top: 8px; }
.ai-cta{ padding: 12px 14px; border-radius: 12px; font-weight: 800; }

/* ===== Modal Asistente IA: botones rápidos ===== */
.rec-quick-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:10px;
  margin-top:6px;
}
@media (max-width: 767px){
  .rec-quick-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.rec-quick-btn{
  border:0;
  padding:10px 10px;
  border-radius:12px;
  font-weight:800;
  letter-spacing:.2px;
  color:#fff;
  background: linear-gradient(180deg, #2b79c2, #1f5f9b);
  box-shadow: 0 10px 22px rgba(0,0,0,.18);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
  outline:none;
}
.rec-quick-btn:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(0,0,0,.22);
}
.rec-quick-btn:active{
  transform: translateY(0px) scale(.98);
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}
.rec-quick-btn.is-active{
  background: linear-gradient(180deg, #083b7b, #052a55);
  box-shadow: 0 0 0 3px rgba(255,255,255,.16), 0 14px 28px rgba(0,0,0,.26);
}
.rec-quick-btn.is-loading{
  opacity:.75;
  cursor: progress;
}
.rec-quick-btn[disabled]{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
}

/* Hint + loading */
.rec-quick-hint{
  margin-top:8px;
  font-size:12px;
  opacity:.8;
}
.rec-loading{
  padding:10px 12px;
  border-radius:10px;
  background: rgba(0,0,0,.04);
  font-weight:700;
}

/* Efecto para botones de 'historial atrás' (si existen en resultados) */
.rec-back-btn,
.rec-history-back,
.btn-history-back{
  border:0;
  border-radius:12px;
  padding:8px 12px;
  font-weight:800;
  background: linear-gradient(180deg, #0f2f62, #0a2044);
  color:#fff;
  box-shadow: 0 10px 22px rgba(0,0,0,.18);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.rec-back-btn:hover,
.rec-history-back:hover,
.btn-history-back:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(0,0,0,.22);
}
.rec-back-btn:active,
.rec-history-back:active,
.btn-history-back:active{
  transform: translateY(0) scale(.98);
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}

/* =========================================================
FIX: Botones rápidos del Asistente IA (forzar estilo)
- En algunos temas Bootstrap/override, los <button> heredan estilos.
- Esto fuerza el look "headerblue" y garantiza consistencia.
========================================================= */
.ai-modal .rec-quick-grid{
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap:12px !important;
  margin-top:8px !important;
}
@media (max-width: 767px){
  .ai-modal .rec-quick-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
.ai-modal button.rec-quick-btn{
  -webkit-appearance:none;
  appearance:none;
  border:0 !important;
  width:100%;
  padding:12px 10px !important;
  border-radius:14px !important;
  font-weight:900 !important;
  letter-spacing:.2px;
  color:#fff !important;
  background: linear-gradient(180deg, #2b79c2, #1f5f9b) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
  outline:none !important;
}
.ai-modal button.rec-quick-btn:hover{
  filter: brightness(1.06);
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(0,0,0,.22) !important;
}
.ai-modal button.rec-quick-btn:active{
  transform: translateY(0px) scale(.985);
  box-shadow: 0 8px 18px rgba(0,0,0,.18) !important;
}
.ai-modal button.rec-quick-btn.is-active{
  background: linear-gradient(180deg, #083b7b, #052a55) !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,.16), 0 14px 28px rgba(0,0,0,.26) !important;
}
.ai-modal button.rec-quick-btn.is-loading{
  opacity:.75 !important;
  cursor: progress !important;
}
.ai-modal button.rec-quick-btn[disabled]{
  opacity:.6 !important;
  cursor:not-allowed !important;
  transform:none !important;
  filter:none !important;
}

/* Hint */
.ai-modal .rec-quick-hint{
  margin-top:10px;
  font-size:12px;
  opacity:.8;
}


/* =========================================================
   TU PLANTILLA 2.0 · PRODUCCIÓN
   Capa visual aislada. No modifica el CSS general de la web.
   ========================================================= */

.lineup-tool{
  --lt-ink:#11223a;
  --lt-muted:#637083;
  --lt-line:#dfe6ed;
  --lt-surface:#ffffff;
  --lt-soft:#f4f7fa;
  --lt-navy:#112b50;
  --lt-blue:#1769aa;
  --lt-green:#0e8b58;
  --lt-orange:#f39a22;
  --lt-danger:#bd2d3a;
  --lt-shadow:0 18px 45px rgba(17,34,58,.10);
  --lt-shadow-soft:0 10px 28px rgba(17,34,58,.08);
  color:var(--lt-ink);
  margin-bottom:28px;
}

.lineup-tool *,
.lineup-tool *::before,
.lineup-tool *::after{
  box-sizing:border-box;
}

.lineup-page-intro{
  position:relative;
  margin:0 0 20px;
  padding:0 0 16px;
  border-bottom:1px solid var(--lt-line);
}

.lineup-page-intro .linea_titulo{
  margin:0 0 8px;
  color:var(--lt-ink);
  font-size:30px;
  line-height:1.08;
  font-weight:400;
}

.lineup-page-intro .linea_titulo strong{
  font-weight:900;
}

.lineup-page-intro p{
  max-width:850px;
  margin:0;
  color:var(--lt-muted);
  font-size:14px;
  line-height:1.55;
}

.lineup-legacy-actions{
  display:flex;
  align-items:center;
  margin-top:13px;
}

.lineup-legacy-button{
  position:relative;
  z-index:2;
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  align-items:center;
  gap:10px;
  min-height:50px;
  padding:8px 13px 8px 8px;
  border:1px solid #087a43;
  border-radius:13px;
  background:linear-gradient(135deg,#0ca85d 0%,#078b4d 58%,#056f3d 100%);
  box-shadow:0 8px 22px rgba(5,126,68,.24), inset 0 1px 0 rgba(255,255,255,.18);
  color:#fff !important;
  text-decoration:none !important;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, filter .18s ease;
}

.lineup-legacy-button:hover,
.lineup-legacy-button:focus{
  border-color:#045f34;
  background:linear-gradient(135deg,#0db966 0%,#078f50 58%,#056838 100%);
  box-shadow:0 11px 28px rgba(5,126,68,.34), inset 0 1px 0 rgba(255,255,255,.22);
  color:#fff !important;
  text-decoration:none !important;
  transform:translateY(-2px);
  filter:saturate(1.06);
}

.lineup-legacy-button__icon{
  display:grid;
  place-items:center;
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:10px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

.lineup-legacy-button__icon svg{
  display:block;
  width:20px;
  height:20px;
}

.lineup-legacy-button__text{
  display:flex;
  flex-direction:column;
  min-width:0;
  line-height:1.15;
}

.lineup-legacy-button__text small{
  margin-bottom:3px;
  color:rgba(255,255,255,.78);
  font-size:10px;
  font-weight:700;
}

.lineup-legacy-button__text strong{
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.lineup-legacy-button__arrow{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  margin-left:3px;
  color:#fff;
  opacity:.92;
}

.lineup-legacy-button__arrow svg{
  display:block;
  width:16px;
  height:16px;
}

.lineup-card-kicker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  text-transform:uppercase;
  letter-spacing:.85px;
  font-size:11px;
  line-height:1;
  font-weight:900;
}

.lineup-workspace-row{
  margin-left:-8px;
  margin-right:-8px;
}

.lineup-workspace-row > [class*="col-"],
.lineup-stage-row > [class*="col-"]{
  padding-left:8px;
  padding-right:8px;
}

.lineup-control-card,
.lineup-stage-card,
.lineup-actionbar{
  border:1px solid var(--lt-line);
  border-radius:18px;
  background:var(--lt-surface);
  box-shadow:var(--lt-shadow-soft);
}

.lineup-control-card{
  padding:22px;
  margin-bottom:16px;
}

.lineup-card-heading,
.lineup-stage-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.lineup-card-heading{
  padding-bottom:16px;
  margin-bottom:18px;
  border-bottom:1px solid #edf1f4;
}

.lineup-card-kicker{
  color:var(--lt-green);
}

.lineup-card-heading h2,
.lineup-stage-heading h2{
  margin:5px 0 0;
  color:var(--lt-ink);
  font-family:'Fira Sans Condensed',sans-serif;
  font-weight:900;
  line-height:1.1;
}

.lineup-card-heading h2{
  font-size:24px;
}

.lineup-stage-heading h2{
  font-size:21px;
}

.lineup-card-heading h2 i,
.lineup-stage-heading h2 i{
  margin-right:6px;
  color:var(--lt-blue);
}

.lineup-autosave,
.lineup-stage-help{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
}

.lineup-autosave{
  padding:7px 10px;
  color:#087148;
  background:#eaf8f1;
  border:1px solid #c9ebdc;
}

.lineup-stage-help{
  padding:6px 9px;
  color:#687689;
  background:#f2f5f7;
  border:1px solid #e1e7ec;
}

.lineup-field{
  margin-bottom:15px;
}

.lineup-tool .lineup-field label{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:7px;
  color:#283b52;
  font-size:13px;
  font-weight:800;
}

.lineup-tool .lineup-field label i{
  color:var(--lt-green);
}

.lineup-tool .lineup-field .form-control,
.tool-modal .form-control{
  height:46px;
  border:1px solid #d6dfe7;
  border-radius:11px;
  color:#1d2f45;
  background:#fbfcfd;
  box-shadow:none;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.lineup-tool .lineup-field textarea.form-control,
.tool-modal textarea.form-control{
  height:auto;
  min-height:86px;
  resize:vertical;
}

.lineup-tool .lineup-field .form-control:focus,
.tool-modal .form-control:focus{
  border-color:#3c91cb;
  background:#fff;
  box-shadow:0 0 0 3px rgba(23,105,170,.11);
}

.lineup-field-meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:6px;
  color:#7a8796;
  font-size:10.5px;
}

.lineup-field-meta span{
  flex-shrink:0;
  color:#536174;
  font-weight:800;
}

.lineup-stage-row{
  display:flex;
  flex-wrap:wrap;
  margin-left:-8px;
  margin-right:-8px;
}

.lineup-stage-row > [class*="col-"]{
  display:flex;
  flex-direction:column;
}

.lineup-stage-card{
  position:relative;
  padding:16px;
  margin-bottom:16px;
}

.lineup-stage-card--pitch{
  height:calc(100% - 16px);
}

.lineup-stage-card--bench{
  min-height:260px;
}

.lineup-stage-card--alerts{
  min-height:170px;
}

.lineup-stage-heading{
  padding:3px 3px 14px;
}

.lineup-stage-heading--compact{
  padding-bottom:8px;
}

.lineup-pitch-surface{
  width:100%;
  max-width:none;
  position:relative;
  margin:0 auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.10), 0 16px 30px rgba(19,61,42,.18);
}

.lineup-tool #pitch-container{
  width:100%;
  max-width:none;
  position:relative;
  margin:0 auto;
  overflow:hidden;
  padding-top:140px;
  min-height:650px;
}

.lineup-tool .compartir-campo-footer{
  padding:12px;
  background:linear-gradient(180deg,rgba(4,27,20,.12),rgba(4,27,20,.34));
  border-top:1px solid rgba(255,255,255,.16);
}

.lineup-btn{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:58px;
  padding:9px 14px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:14px !important;
  color:#fff !important;
  text-align:left;
  box-shadow:0 13px 26px rgba(0,0,0,.22);
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.lineup-btn:hover,
.lineup-btn:focus{
  color:#fff !important;
  transform:translateY(-1px);
  filter:brightness(1.04);
  box-shadow:0 16px 30px rgba(0,0,0,.27);
}

.lineup-btn--ai{
  background:
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.15),transparent 33%),
    linear-gradient(135deg,#6645b8,#156cae 58%,#0f8c75) !important;
}

.lineup-btn__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 38px;
  width:38px;
  height:38px;
  border-radius:11px;
  background:rgba(255,255,255,.16);
  font-size:18px;
}

.lineup-btn strong,
.lineup-btn small{
  display:block;
}

.lineup-btn strong{
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.2px;
}

.lineup-btn small{
  margin-top:2px;
  color:rgba(255,255,255,.75);
  font-size:10.5px;
}

.lineup-btn__arrow{
  margin-left:auto;
  opacity:.8;
}

.lineup-tool #bench-container{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
  gap:8px;
  min-height:150px;
  margin-top:3px;
  padding:13px;
  border:1px dashed #cad5df;
  border-radius:14px;
  background:
    radial-gradient(circle at 100% 0,rgba(23,105,170,.07),transparent 35%),
    #f7f9fb;
}

.lineup-tool #bench-container .bench-slot,
.lineup-tool #bench-container .bench-add-button{
  justify-self:center;
}

.lineup-tool #bench-container .bench-slot{
  margin:2px;
  max-width:100%;
}

.lineup-tool #bench-container .bench-add-button{
  width:64px;
  height:64px;
  margin:4px;
  border:2px dashed #8092a5;
  color:#53687c;
  background:#fff;
  box-shadow:0 8px 18px rgba(17,34,58,.08);
}

.lineup-empty-state{
  display:flex;
  align-items:center;
  gap:8px;
  padding:13px;
  border:1px dashed #d4dde5;
  border-radius:12px;
  color:#6f7d8d;
  background:#f8fafb;
  font-size:12px;
  line-height:1.45;
}

.lineup-stage-card--alerts .linea_titulo{
  margin:12px 0 7px;
  padding:0 0 7px;
  border-bottom:1px solid #e7ecef;
  color:#293b50;
  font-size:16px;
  text-align:left;
}

.lineup-stage-card--alerts .alert{
  margin:7px 0;
  border-radius:10px;
  font-size:11px;
}

.lineup-actionbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 17px;
  margin:0 0 22px;
}

.lineup-actionbar__info{
  display:flex;
  align-items:center;
  gap:8px;
  color:#6f7d8c;
  font-size:11.5px;
  line-height:1.4;
}

.lineup-actionbar__info i{
  color:var(--lt-blue);
  font-size:16px;
}

.lineup-actionbar__buttons{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:9px;
}

.lineup-action{
  min-height:42px;
  padding:9px 14px !important;
  border-radius:11px !important;
  border:1px solid transparent !important;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.25px;
  box-shadow:0 8px 18px rgba(17,34,58,.09);
}

.lineup-action i{
  margin-right:6px;
}

.lineup-action--danger{
  color:#a62432 !important;
  border-color:#efc7cc !important;
  background:#fff2f3 !important;
}

.lineup-action--info{
  color:#0e668e !important;
  border-color:#c3e2ef !important;
  background:#edf9fd !important;
}

.lineup-action--primary{
  color:#fff !important;
  background:linear-gradient(135deg,#0c8756,#0f6c89) !important;
  box-shadow:0 10px 24px rgba(12,135,86,.22);
}

.lineup-action:hover{
  transform:translateY(-1px);
  filter:brightness(.99);
}

/* Banner translúcido dentro del campo */
.lineup-tool .pitch-share-banner{
  top:14px;
  width:calc(100% - 28px);
  max-width:620px;
  padding:13px 16px 14px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:18px;
  background:
    linear-gradient(135deg,rgba(7,22,42,.78),rgba(12,64,76,.68)),
    radial-gradient(circle at 12% 0,rgba(247,172,61,.28),transparent 42%);
  box-shadow:0 18px 42px rgba(0,0,0,.30), inset 0 1px rgba(255,255,255,.12);
  backdrop-filter:blur(14px) saturate(130%);
  -webkit-backdrop-filter:blur(14px) saturate(130%);
}

.lineup-tool .pitch-share-banner::after{
  width:3px;
  background:linear-gradient(180deg,#ffd067,#f28b23,#31d29a);
}

.pitch-share-banner__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
  color:rgba(255,255,255,.70);
  font-size:9px;
  font-weight:900;
  letter-spacing:1px;
}

.pitch-share-banner__top > span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.pitch-share-live{
  padding:4px 7px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.08);
}

.pitch-share-live .fa-circle{
  color:#43de9d;
  font-size:6px;
  text-shadow:0 0 7px rgba(67,222,157,.75);
}

.lineup-tool .pitch-share-title{
  font-size:25px;
  letter-spacing:.1px;
  text-transform:none;
}

.lineup-tool .pitch-share-desc{
  margin-top:6px;
  color:rgba(255,255,255,.82);
  font-size:11.5px;
}

.lineup-tool .pitch-share-meta{
  margin-top:9px;
  gap:7px;
}

.lineup-tool .pitch-share-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-color:rgba(255,255,255,.18);
  color:rgba(255,255,255,.90);
  background:rgba(2,12,25,.28);
  font-size:10px;
  font-weight:800;
}

/* Modales */
.tool-modal .modal-dialog{
  margin-top:7vh;
}

.tool-modal .modal-content{
  overflow:hidden;
  border:0;
  border-radius:18px;
  box-shadow:0 28px 70px rgba(8,25,44,.30);
}

.tool-modal__header{
  position:relative;
  padding:17px 19px;
  border:0;
  color:#fff;
}

.tool-modal__header::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 55%);
}

.tool-modal__header--share{ background:linear-gradient(135deg,#116b95,#174a89); }
.tool-modal__header--success{ background:linear-gradient(135deg,#0d8a57,#176e78); }
.tool-modal__header--ai{ background:linear-gradient(135deg,#563b9f,#12679d 58%,#0c8c72); }
.tool-modal__header--comunio{ background:linear-gradient(135deg,#169d9c,#126b97); }
.tool-modal__header--player{ background:linear-gradient(135deg,#203c63,#17698c); }

.tool-modal__heading{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:11px;
  padding-right:28px;
}

.tool-modal__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(255,255,255,.13);
  font-size:18px;
}

.tool-modal__header .modal-title{
  color:#fff;
  font-size:18px;
  font-weight:900;
}

.tool-modal__subtitle{
  margin-top:3px;
  color:rgba(255,255,255,.76);
  font-size:11px;
}

.tool-modal__close{
  position:relative;
  z-index:2;
  color:#fff !important;
  opacity:.85 !important;
  text-shadow:none !important;
}

.tool-modal .modal-body{
  padding:20px;
  background:#fff;
}

.tool-modal .modal-footer{
  padding:13px 18px;
  border-top:1px solid #e8edf1;
  background:#f8fafb;
}

.tool-modal .modal-footer .btn{
  border-radius:9px;
  font-weight:800;
}

.ai-tip{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:0 0 15px;
  padding:10px 12px;
  border:1px solid #d9e8f1;
  border-radius:11px;
  color:#456274;
  background:#f2f8fb;
  font-size:11.5px;
  line-height:1.45;
}

.ai-tip i{
  margin-top:2px;
  color:#e28b16;
  font-size:15px;
}

.ai-modal .rec-quick-grid{
  gap:10px !important;
}

.ai-modal button.rec-quick-btn{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:105px;
  padding:14px !important;
  border:1px solid #dce4eb !important;
  color:#27394e !important;
  background:#fff !important;
  box-shadow:0 8px 20px rgba(17,34,58,.07) !important;
  text-align:left;
}

.ai-modal button.rec-quick-btn i{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-bottom:9px;
  border-radius:9px;
  color:#fff;
  font-size:14px;
}

.ai-modal button.rec-quick-btn strong{
  font-size:13px;
}

.ai-modal button.rec-quick-btn small{
  display:block;
  margin-top:3px;
  color:#7a8795;
  font-size:9.5px;
  font-weight:600;
}

.ai-modal button.rec-quick-btn--points i{ background:#d89a24; }
.ai-modal button.rec-quick-btn--average i{ background:#2874b7; }
.ai-modal button.rec-quick-btn--streak i{ background:#d85d2e; }
.ai-modal button.rec-quick-btn--lineup i{ background:#19875c; }

.ai-modal button.rec-quick-btn:hover{
  border-color:#9fb7c9 !important;
  background:#f9fbfc !important;
  transform:translateY(-2px);
  box-shadow:0 14px 26px rgba(17,34,58,.11) !important;
}

.ai-modal button.rec-quick-btn.is-active{
  border-color:#1769aa !important;
  color:#163b5b !important;
  background:#edf6fc !important;
  box-shadow:0 0 0 3px rgba(23,105,170,.10),0 14px 28px rgba(17,34,58,.12) !important;
}

.ai-modal button.rec-quick-btn.is-loading{
  opacity:.55 !important;
}

.recommendation-results{
  margin-top:14px;
}

.recommendation-results .alert{
  margin-bottom:0;
  border-radius:11px;
  font-size:12px;
}

.rec-loading{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:55px;
  border:1px solid #dce6ed;
  color:#466175;
  background:#f5f9fb;
}

.share-link-box{
  display:flex;
  gap:8px;
}

.share-link-box .form-control{
  flex:1;
  background:#f7f9fa;
}

.share-link-box .btn{
  flex:0 0 auto;
  border-radius:10px;
  font-weight:800;
}

.share-copy-success{
  margin-top:10px;
  padding:9px 11px;
  border:1px solid #caeadb;
  border-radius:9px;
  color:#0a784b;
  background:#edf9f3;
  font-size:11px;
  font-weight:800;
}

.player-search-wrap{
  position:relative;
  margin-bottom:11px;
}

.player-search-wrap > i{
  position:absolute;
  top:50%;
  left:14px;
  z-index:2;
  color:#8290a0;
  transform:translateY(-50%);
}

.player-search-wrap .form-control{
  padding-left:38px;
}

.player-picker-modal .modal-body .list-unstyled{
  max-height:430px;
  margin:0;
  border:1px solid #e1e7ec;
  border-radius:12px;
  overflow-y:auto;
}

.player-picker-modal .modal-body .list-unstyled li{
  padding:9px 11px;
  border-bottom:1px solid #edf1f4;
}

.player-picker-modal .modal-body .list-unstyled li:last-child{
  border-bottom:0;
}

.player-picker-modal .modal-body .list-unstyled li:hover{
  background:#f1f7fa;
}

@media (max-width:991px){
  .lineup-stage-card--pitch{
    height:auto;
  }

  .lineup-tool #pitch-container{
    min-height:620px;
  }

  .lineup-actionbar{
    align-items:flex-start;
    flex-direction:column;
  }

  .lineup-actionbar__buttons{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width:767px){
  .lineup-page-intro{
    margin-bottom:14px;
    padding-bottom:12px;
  }

  .lineup-page-intro .linea_titulo{
    margin-bottom:6px;
    font-size:25px;
  }

  .lineup-page-intro p{
    font-size:13px;
    line-height:1.45;
  }

  .lineup-legacy-actions{
    margin-top:10px;
  }

  .lineup-legacy-button{
    width:100%;
    min-height:46px;
    padding-right:10px;
  }

  .lineup-legacy-button__text{
    flex:1 1 auto;
  }

  .lineup-legacy-button__text strong{
    font-size:11px;
  }

  .lineup-control-card,
  .lineup-stage-card{
    padding:14px;
    border-radius:15px;
  }

  .lineup-card-heading,
  .lineup-stage-heading{
    display:block;
  }

  .lineup-autosave,
  .lineup-stage-help{
    margin-top:9px;
  }

  .lineup-card-heading h2{
    font-size:21px;
  }

  .lineup-tool #pitch-container{
    min-height:560px;
    padding-top:132px;
  }

  .lineup-tool #bench-container{
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding:8px;
  }

  .lineup-actionbar{
    padding:13px;
  }

  .lineup-actionbar__buttons{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .lineup-action--primary{
    grid-column:1 / -1;
  }

  .lineup-action{
    width:100%;
  }

  .tool-modal .modal-dialog{
    margin:12px;
  }

  .tool-modal .modal-body{
    padding:15px;
  }

  .share-link-box{
    display:block;
  }

  .share-link-box .btn{
    width:100%;
    margin-top:8px;
  }
}

@media (max-width:480px){
  .lineup-hero__features{
    display:grid;
    grid-template-columns:1fr;
  }

  .lineup-tool #pitch-container{
    min-height:530px;
    padding-top:128px;
  }

  .lineup-tool .pitch-share-banner{
    width:calc(100% - 18px);
    padding:11px 12px 12px;
  }

  .lineup-tool .pitch-share-title{
    font-size:21px;
  }

  .pitch-share-banner__top{
    font-size:8px;
  }

  .lineup-tool .pitch-share-pill{
    font-size:9px;
  }

  .lineup-tool #bench-container{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .lineup-actionbar__buttons{
    grid-template-columns:1fr;
  }

  .lineup-action--primary{
    grid-column:auto;
  }

  .ai-modal .rec-quick-grid{
    grid-template-columns:1fr 1fr !important;
  }

  .ai-modal button.rec-quick-btn{
    min-height:98px;
    padding:11px !important;
  }
}

/* =========================================================
   AJUSTE 2026-07-24 · Banner fuera del césped + icono Forma
   ========================================================= */

/* El resumen de la alineación vive ahora entre la cabecera de sección y el campo. */
.lineup-tool .pitch-share-banner-host{
  width:100%;
  margin:0 0 12px;
}

.lineup-tool .pitch-share-banner-host:empty{
  display:none;
}

.lineup-tool .pitch-share-banner-host .pitch-share-banner{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0;
  padding:12px 15px 13px;
  border-radius:14px;
  box-shadow:0 11px 28px rgba(17,34,58,.18), inset 0 1px rgba(255,255,255,.10);
}

.lineup-tool .pitch-share-banner-host .pitch-share-banner__top{
  margin-bottom:5px;
}

.lineup-tool .pitch-share-banner-host .pitch-share-title{
  font-size:21px;
  line-height:1.12;
}

.lineup-tool .pitch-share-banner-host .pitch-share-desc{
  margin-top:4px;
}

.lineup-tool .pitch-share-banner-host .pitch-share-meta{
  margin-top:8px;
}

/* Al no existir ya un overlay, el césped comienza directamente con los jugadores. */
.lineup-tool #pitch-container{
  padding-top:0 !important;
  min-height:520px;
}

/* SVG propio para no depender de que el paquete local de Font Awesome incluya fa-fire. */
.ai-modal button.rec-quick-btn .rec-quick-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-bottom:9px;
  border-radius:9px;
  color:#fff;
  background:#d85d2e;
}

.ai-modal button.rec-quick-btn .rec-quick-icon svg{
  width:17px;
  height:17px;
  display:block;
  fill:currentColor;
}

@media (max-width:767px){
  .lineup-tool .pitch-share-banner-host{
    margin-bottom:9px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-banner{
    padding:10px 12px 11px;
    border-radius:12px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-title{
    font-size:18px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-desc{
    font-size:10.5px;
    line-height:1.3;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-meta{
    gap:5px;
    margin-top:7px;
  }

  .lineup-tool #pitch-container{
    min-height:520px;
  }
}

@media (max-width:480px){
  .lineup-tool .pitch-share-banner-host .pitch-share-banner__top{
    margin-bottom:4px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-title{
    font-size:17px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-pill{
    padding:3px 7px;
    font-size:9px;
  }
}

/* =========================================================
   AJUSTE 2026-07-24 v5 · Pitch share banner light
   ========================================================= */
.lineup-tool .pitch-share-banner-host .pitch-share-banner{
  isolation:isolate;
  position:relative !important;
  display:block;
  min-height:0;
  padding:0;
  overflow:hidden;
  color:#162438;
  border:1px solid #d9e5e1;
  border-radius:17px;
  background:
    radial-gradient(420px 170px at 96% -28%, rgba(46,196,142,.13), transparent 64%),
    radial-gradient(330px 170px at -7% 118%, rgba(245,166,35,.11), transparent 65%),
    linear-gradient(135deg,#ffffff 0%,#f8fbfa 58%,#f3f8f6 100%);
  box-shadow:
    0 13px 30px rgba(29,61,73,.11),
    inset 0 1px 0 rgba(255,255,255,.9);
}

.lineup-tool .pitch-share-banner-host .pitch-share-banner::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    linear-gradient(105deg,rgba(255,255,255,.82),transparent 35%),
    linear-gradient(180deg,rgba(255,255,255,.25),rgba(225,239,234,.18));
}

.lineup-tool .pitch-share-banner-host .pitch-share-banner::after{
  content:"";
  position:absolute;
  z-index:3;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:linear-gradient(180deg,#f5a623 0%,#ffd76c 43%,#18a66b 100%);
  box-shadow:1px 0 10px rgba(24,166,107,.12);
}

.pitch-share-banner__decoration{
  position:absolute;
  z-index:-1;
  width:210px;
  height:210px;
  right:-57px;
  top:-74px;
  border:1px solid rgba(20,139,91,.09);
  border-radius:50%;
  pointer-events:none;
}

.pitch-share-banner__decoration::before,
.pitch-share-banner__decoration::after{
  content:"";
  position:absolute;
  pointer-events:none;
}

.pitch-share-banner__decoration::before{
  width:1px;
  height:240px;
  left:50%;
  top:-14px;
  background:rgba(20,139,91,.07);
  transform:rotate(28deg);
}

.pitch-share-banner__decoration::after{
  width:62px;
  height:62px;
  left:73px;
  top:73px;
  border:1px solid rgba(20,139,91,.08);
  border-radius:50%;
}

.pitch-share-banner__main{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px 16px 11px 18px;
}

.pitch-share-emblem{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border:1px solid #cce9dc;
  border-radius:14px;
  color:#087a4c;
  background:linear-gradient(145deg,#f4fff9,#e2f7ec);
  box-shadow:0 7px 18px rgba(16,114,76,.11), inset 0 1px #fff;
}

.pitch-share-emblem i{
  font-size:22px;
  text-shadow:none;
}

.pitch-share-copy{
  min-width:0;
}

.pitch-share-eyebrow{
  margin-bottom:2px;
  color:#0b8f59;
  font-size:9px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:1.15px;
  text-transform:uppercase;
}

.lineup-tool .pitch-share-banner-host .pitch-share-title{
  overflow:hidden;
  color:#14243a;
  font-family:'Fira Sans Condensed',sans-serif;
  font-size:23px;
  font-weight:900;
  line-height:1.05;
  letter-spacing:0;
  text-align:left;
  text-overflow:ellipsis;
  text-shadow:none;
  text-transform:none;
  white-space:nowrap;
}

.lineup-tool .pitch-share-banner-host .pitch-share-desc{
  overflow:hidden;
  margin:4px 0 0;
  color:#6b7888;
  font-size:11px;
  line-height:1.3;
  text-align:left;
  text-overflow:ellipsis;
  text-shadow:none;
  white-space:nowrap;
}

.pitch-share-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  align-self:start;
  margin-top:1px;
  padding:5px 8px;
  border:1px solid #ccebdc;
  border-radius:999px;
  color:#17764f;
  background:#ebfaf2;
  box-shadow:inset 0 1px rgba(255,255,255,.9);
  font-size:8px;
  font-weight:900;
  letter-spacing:.7px;
  text-transform:uppercase;
}

.pitch-share-live .fa-circle{
  color:#22b977;
  font-size:6px;
  text-shadow:0 0 7px rgba(34,185,119,.35);
}

.lineup-tool .pitch-share-banner-host .pitch-share-meta{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:0 14px 0 18px;
  border-top:1px solid #e1ebe7;
  background:rgba(245,249,247,.88);
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  min-width:0;
  padding:9px 12px 10px 0;
  border:0;
  border-radius:0;
  color:#14243a;
  background:transparent;
  box-shadow:none;
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill + .pitch-share-pill{
  padding-left:14px;
  border-left:1px solid #e0e9e5;
}

.pitch-share-pill__icon{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  width:27px;
  height:27px;
  border:1px solid #d7e6df;
  border-radius:9px;
  color:#148357;
  background:#fff;
  box-shadow:0 3px 9px rgba(34,69,58,.07);
  font-size:11px;
}

.lineup-formation-icon{
  display:inline-block;
  width:15px;
  height:15px;
  flex:0 0 auto;
  overflow:visible;
  vertical-align:-3px;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.lineup-field > label .lineup-formation-icon{
  margin-right:5px;
  color:#16885b;
}

.pitch-share-pill__icon .lineup-formation-icon{
  width:16px;
  height:16px;
  vertical-align:0;
}

.pitch-share-pill__copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  line-height:1.05;
}

.pitch-share-pill__copy small{
  margin-bottom:2px;
  color:#829087;
  font-size:7.5px;
  font-weight:900;
  letter-spacing:.8px;
  text-transform:uppercase;
}

.pitch-share-pill__copy strong{
  overflow:hidden;
  color:#17263a;
  font-size:10px;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media (max-width:767px){
  .lineup-tool .pitch-share-banner-host .pitch-share-banner{
    border-radius:14px;
  }

  .pitch-share-banner__main{
    grid-template-columns:39px minmax(0,1fr) auto;
    gap:9px;
    padding:11px 11px 9px 14px;
  }

  .pitch-share-emblem{
    width:39px;
    height:39px;
    border-radius:12px;
  }

  .pitch-share-emblem i{
    font-size:19px;
  }

  .pitch-share-eyebrow{
    font-size:8px;
    letter-spacing:.9px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-title{
    font-size:19px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-desc{
    margin-top:3px;
    font-size:9.5px;
  }

  .pitch-share-live{
    gap:5px;
    padding:5px 7px;
    font-size:7px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-meta{
    padding-left:14px;
    padding-right:10px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-pill{
    gap:7px;
    padding-top:8px;
    padding-bottom:8px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-pill + .pitch-share-pill{
    padding-left:10px;
  }

  .pitch-share-pill__icon{
    width:24px;
    height:24px;
    border-radius:8px;
    font-size:10px;
  }

  .pitch-share-pill__icon .lineup-formation-icon{
    width:14px;
    height:14px;
  }
}

@media (max-width:420px){
  .pitch-share-banner__main{
    grid-template-columns:36px minmax(0,1fr) auto;
    gap:8px;
    padding-right:9px;
  }

  .pitch-share-emblem{
    width:36px;
    height:36px;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-title{
    font-size:17px;
  }

  .pitch-share-live__text{
    display:none;
  }

  .pitch-share-live{
    width:23px;
    height:23px;
    justify-content:center;
    padding:0;
  }

  .lineup-tool .pitch-share-banner-host .pitch-share-desc{
    max-width:210px;
  }

  .pitch-share-pill__copy small{
    font-size:7px;
  }

  .pitch-share-pill__copy strong{
    font-size:9px;
  }
}

/* Selector de vista dentro del banner compartido: reutiliza las clases existentes. */
.lineup-tool .pitch-share-banner-host .pitch-share-pill form{
  width:100%;
  margin:0;
}

/* La tarjeta que contiene el selector gana presencia sin necesitar otra clase. */
.lineup-tool .pitch-share-banner-host .pitch-share-pill:has(#modo_alineacion){
  border-color:#9bd9ba;
  background:linear-gradient(135deg,#f4fff9 0%,#e8f8f0 100%);
  box-shadow:0 7px 18px rgba(21,137,85,.10);
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill:has(#modo_alineacion) .pitch-share-pill__icon{
  color:#fff;
  background:linear-gradient(135deg,#1cb56e,#087a47);
  box-shadow:0 5px 12px rgba(8,122,71,.22);
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill .form-control{
  width:100%;
  height:38px;
  margin:2px 0 0;
  padding:6px 40px 6px 12px;
  color:#075f39;
  border:2px solid #42b883;
  border-radius:10px;
  outline:0;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20'%3E%3Cpath d='m5 7 5 5 5-5' fill='none' stroke='%23087a47' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 11px center;
  background-size:18px 18px;
  box-shadow:0 5px 13px rgba(8,122,71,.12), inset 0 1px #fff;
  font-size:12.5px;
  font-weight:900;
  line-height:22px;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease, background-color .2s ease;
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill .form-control:hover{
  border-color:#087a47;
  background-color:#f8fffb;
  box-shadow:0 7px 17px rgba(8,122,71,.17), inset 0 1px #fff;
  transform:translateY(-1px);
}

.lineup-tool .pitch-share-banner-host .pitch-share-pill .form-control:focus{
  border-color:#087a47;
  background-color:#fff;
  box-shadow:0 0 0 4px rgba(28,181,110,.17),0 7px 17px rgba(8,122,71,.14);
}

@media (max-width:767px){
  .lineup-tool .pitch-share-banner-host .pitch-share-pill .form-control{
    height:36px;
    padding:5px 38px 5px 10px;
    background-position:right 9px center;
    font-size:11.5px;
  }
}

@media (max-width:420px){
  .lineup-tool .pitch-share-banner-host .pitch-share-pill .form-control{
    height:35px;
    padding-left:9px;
    padding-right:35px;
    font-size:11px;
  }
}

/* ============ Banquillo público ordenado ============ */
#bench_zone{
  padding:12px 8px 16px;
}

#bench_zone .bench-grid.row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:flex-end;
  row-gap:16px;
  margin:0;
}

#bench_zone .bench-grid > .js-player-wrap{
  flex:0 0 33.333333%;
  width:33.333333%;
  max-width:33.333333%;
  min-width:0;
  padding:0 3px;
  box-sizing:border-box;
  text-align:center;
}

#bench_zone .bench-grid > .clearfix{
  display:none;
}

#bench_zone .bench-grid .js-player-wrap > .nomarginpadding,
#bench_zone .bench-grid .js-player-wrap > [class*="col-"]{
  float:none !important;
  width:100% !important;
  max-width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

#bench_zone .bench-grid .jugador{
  margin-left:auto;
  margin-right:auto;
}

@media (max-width:380px){
  #bench_zone .bench-grid > .js-player-wrap{
    flex-basis:50%;
    width:50%;
    max-width:50%;
  }
}
