/* Goalkeeper Chilean FP — estilos (todo vive dentro del iframe, no afecta al tema) */
:root{--fp-verde:#1C3A27;--fp-crema:#D9C5B2;--fp-grafito:#222;--fp-dorado:#D3A243;--fp-azul:#2f80c9;--fp-rojo:#D71920}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:#111;color:#fff;font-family:Arial,Helvetica,sans-serif;-webkit-user-select:none;user-select:none;overflow:hidden}
button{font:inherit}
.fpgk-app{position:relative;width:100%;height:100%;overflow:hidden;background:#000}
.fpgk-pantalla{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .35s ease;display:flex;flex-direction:column;background:var(--fp-grafito);padding:24px}
.fpgk-pantalla.activa{opacity:1;pointer-events:auto;z-index:10}
.fpgk-rayado{background:repeating-linear-gradient(90deg,#222 0 2px,#1a1a1a 2px 4px)}
.fpgk-centrado{align-items:center;justify-content:center}
.fpgk-kicker{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--fp-dorado);margin-bottom:8px}
.fpgk-trunc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}

/* Botones */
.fpgk-btn{background:linear-gradient(#3498db,#2980b9);border:2px solid #2980b9;border-radius:4px;color:#fff;font-weight:700;padding:10px 22px;cursor:pointer;text-shadow:1px 1px 2px rgba(0,0,0,.7);box-shadow:0 4px 6px rgba(0,0,0,.3);transition:filter .2s}
.fpgk-btn:hover{filter:brightness(1.15)}
.fpgk-btn:disabled{opacity:.5;cursor:wait;filter:none}
.fpgk-btn--grande{padding:13px 30px;font-size:16px;text-transform:uppercase;letter-spacing:.08em}
.fpgk-btn--sec{background:linear-gradient(#555,#3a3a3a);border-color:#3a3a3a}
.fpgk-btn--mini{padding:4px 10px;font-size:11px}
.fpgk-pie-acciones{position:absolute;right:24px;bottom:24px;display:flex;gap:12px}
.fpgk-fila-btn{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* Menú: portada */
.fpgk-portada{padding:0;background:#06100b}
.fpgk-portada-img{position:absolute;inset:0}
.fpgk-portada-img img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}
.fpgk-portada::after{content:"";position:absolute;inset:auto 0 0 0;height:30%;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}
.fpgk-menu-acciones{position:absolute;right:22px;bottom:20px;z-index:2;display:flex;flex-direction:column;gap:8px;width:210px}
.fpgk-fila-mini{display:flex;gap:6px}
.fpgk-fila-mini .fpgk-btn{flex:1 1 auto;padding:6px 4px;font-size:10px;white-space:nowrap;letter-spacing:0}
.fpgk-carga{margin:0;text-align:center;font-size:11px;color:var(--fp-crema);text-shadow:0 1px 3px #000}
.fpgk-creditos ul{font-size:13px}
.fpgk-creditos p{color:#ccc;font-size:13px}
.fpgk-creditos a{color:var(--fp-dorado)}

/* Paneles */
.fpgk-panel{background:rgba(0,0,0,.85);border:2px solid #555;border-radius:8px;padding:28px 32px;max-width:560px;width:100%;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.6)}
.fpgk-panel h2{margin:0 0 14px;font-size:28px;font-weight:900;text-transform:uppercase}
.fpgk-panel ul{text-align:left;color:#ccc;font-size:14px;line-height:1.55;padding-left:20px;margin:0 0 20px}

/* Pestaña tipo consola */
.fpgk-pestana{align-self:flex-start;background:#1f8a3b;padding:8px 22px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.1em;border:2px solid #999;border-bottom:0;margin-bottom:18px;box-shadow:0 2px 0 #1e3f8a}

/* Selección de club */
.fpgk-grid-equipos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:70px}
.fpgk-equipo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 8px;background:linear-gradient(#555,#2e2e2e);border:1px solid #111;border-radius:6px;color:#fff;cursor:pointer;box-shadow:0 4px 8px rgba(0,0,0,.4);transition:transform .15s,filter .15s}
.fpgk-equipo:hover{transform:translateY(-2px);filter:brightness(1.2)}
.fpgk-equipo-nombre{font-size:13px;font-weight:700}

/* Camiseta dibujada con CSS (colores del equipo) */
.fpgk-camiseta{display:inline-block;width:46px;height:50px;position:relative;flex:none;
  background:linear-gradient(var(--c1),var(--c1)) 0 0/100% 64% no-repeat,linear-gradient(var(--c2),var(--c2)) 0 100%/100% 36% no-repeat;
  clip-path:polygon(22% 0,40% 6%,60% 6%,78% 0,100% 16%,90% 32%,80% 28%,80% 64%,92% 64%,96% 100%,54% 100%,50% 86%,46% 100%,4% 100%,8% 64%,20% 64%,20% 28%,10% 32%,0 16%);
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.5))}
.fpgk-chip{display:inline-block;width:14px;height:14px;border-radius:50%;flex:none;background:linear-gradient(90deg,var(--c1) 50%,var(--c2) 50%);border:1px solid rgba(255,255,255,.6)}

/* Cuadro del torneo */
.fpgk-cuadro-mensaje{margin:-6px 0 14px;color:var(--fp-crema);font-size:14px}
.fpgk-cuadro{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;flex:1;min-height:0;padding-bottom:70px}
.fpgk-cuadro-col{display:flex;flex-direction:column;justify-content:space-around;gap:10px}
.fpgk-cuadro-col h3{margin:0 0 4px;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--fp-dorado)}
.fpgk-llave{background:rgba(0,0,0,.6);border:1px solid #444;border-radius:4px;overflow:hidden}
.fpgk-llave small{display:block;font-size:10px;color:#999;padding:2px 10px 4px;text-align:right}
.fpgk-llave-eq{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:13px}
.fpgk-llave-eq+.fpgk-llave-eq{border-top:1px solid #333}
.fpgk-llave-eq b{margin-left:auto;font-family:Georgia,serif}
.fpgk-llave-eq--yo{background:rgba(52,152,219,.25);font-weight:700}
.fpgk-llave-eq--fuera{opacity:.45}
.fpgk-llave-eq--vacio{color:#666;font-style:italic}

/* VS */
.fpgk-ronda{margin:0 0 20px;color:var(--fp-dorado);font-size:28px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.fpgk-vs{display:flex;align-items:center;justify-content:center;gap:22px;width:min(720px,100%);background:rgba(0,0,0,.9);border:2px solid #555;border-radius:8px;padding:24px}
.fpgk-vs-equipo{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:22px;font-weight:900;text-align:center}
.fpgk-vs-equipo .fpgk-camiseta{width:64px;height:70px}
.fpgk-vs-x{font-size:12px;background:#444;padding:4px 12px;border-radius:4px}
.fpgk-vs-nota{color:#999;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-top:14px}

/* Juego */
#pantalla-juego{padding:0}
.fpgk-escena{position:relative;flex:1;min-height:0;background:#0b1424;overflow:hidden;cursor:none;touch-action:none}
.fpgk-canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.fpgk-feedback{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%) scale(.9);font-size:clamp(36px,8vw,72px);font-weight:900;font-style:italic;text-transform:uppercase;white-space:nowrap;text-shadow:0 6px 10px #000;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:5}
.fpgk-feedback.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.fpgk-feedback--atajada{color:#5dade2}
.fpgk-feedback--gol-favor{color:#f4d03f}
.fpgk-feedback--gol-rival{color:#e74c3c}
.fpgk-feedback--atrapada{color:#f4d03f;text-shadow:0 0 24px rgba(211,162,67,.9),0 6px 10px #000}
.fpgk-aviso-ms{position:absolute;top:14px;left:50%;transform:translateX(-50%);background:var(--fp-rojo);padding:4px 14px;border-radius:3px;font-weight:900;font-size:13px;text-transform:uppercase;letter-spacing:.12em;display:none;z-index:5}
.fpgk-aviso-ms.visible{display:block}
.fpgk-marcador{flex:none;height:50px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 18px;background:linear-gradient(#d35400,#a04000);border-top:2px solid #f39c12}
.fpgk-marcador-lado{flex:1;display:flex;align-items:center;gap:10px;font-weight:700;min-width:0}
.fpgk-marcador-lado--der{justify-content:flex-end}
.fpgk-marcador-lado strong{font-size:24px;font-family:Georgia,serif}
.fpgk-marcador-centro{display:flex;flex-direction:column;align-items:center;gap:3px}
#score-tiros{background:linear-gradient(#f1c40f,#e67e22);border:2px solid #f9e79f;border-radius:999px;padding:1px 14px;color:#000;font-weight:700;font-size:12px;white-space:nowrap}
.fpgk-ciclo{display:flex;gap:4px}
.fpgk-ciclo i{width:8px;height:8px;border-radius:50%;background:rgba(0,0,0,.35);border:1px solid #f9e79f}
.fpgk-ciclo i.on{background:#f4d03f}
.fpgk-salir{position:absolute;top:8px;right:8px;z-index:20}
.fpgk-barra-sup{position:absolute;top:8px;left:8px;z-index:20;display:flex;gap:6px}

/* Resultado y campeón */
.fpgk-res-marcador{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;font-size:18px;margin:6px 0 10px}
.fpgk-res-marcador b{font-family:Georgia,serif;font-size:28px;padding:0 8px}
.fpgk-gana{color:#f4d03f}
.fpgk-pierde{color:#e74c3c}
#res-detalle,#campeon-detalle{color:#bbb;margin:0 0 20px}
.fpgk-panel--campeon h2{color:#f4d03f;font-size:34px}
.fpgk-copa{width:90px;height:110px;margin:6px auto 16px;background:linear-gradient(#f9e79f,var(--fp-dorado));
  clip-path:polygon(10% 0,90% 0,88% 30%,100% 18%,100% 34%,84% 46%,62% 62%,60% 78%,74% 86%,74% 100%,26% 100%,26% 86%,40% 78%,38% 62%,16% 46%,0 34%,0 18%,12% 30%);
  filter:drop-shadow(0 0 20px rgba(211,162,67,.6))}

/* Móvil */
@media (max-width:640px){
  .fpgk-pantalla{padding:14px}
  .fpgk-grid-equipos{grid-template-columns:repeat(2,1fr);gap:8px;overflow:auto}
  .fpgk-equipo{padding:10px 6px}
  .fpgk-cuadro{grid-template-columns:1fr;overflow:auto;gap:12px}
  .fpgk-menu-acciones{left:14px;right:14px;width:auto;bottom:14px}
  .fpgk-portada-img img{object-position:50% 30%}

  .fpgk-pie-acciones{left:14px;right:14px;bottom:14px;justify-content:flex-end}
  .fpgk-vs{flex-direction:column;gap:12px}
  .fpgk-marcador{padding:0 8px;font-size:12px}
  #btn-full{display:none}
}

/* Pantallas verticales (celular): la portada completa arriba, sin recortar el título */
@media (max-aspect-ratio:1/1){
  .fpgk-portada{background:radial-gradient(ellipse at 50% 30%,#1d4b33,#06100b 70%)}
  .fpgk-portada-img img{object-fit:contain;object-position:50% 32%}
  .fpgk-portada::after{display:none}
}
.fpgk-cuadro-col .fpgk-cuadro-sub{margin-top:12px;color:#c9a46a}

/* v1.3: ajustes de sensibilidad */
.fpgk-ajuste{display:block;text-align:left;margin:0 0 20px}
.fpgk-ajuste>span{display:flex;justify-content:space-between;font-weight:700;font-size:14px;margin-bottom:10px}
.fpgk-ajuste b{color:var(--fp-dorado);font-family:Georgia,serif;font-size:18px}
.fpgk-ajuste input{width:100%;accent-color:var(--fp-dorado);cursor:pointer}
.fpgk-ajuste small{display:flex;justify-content:space-between;color:#999;font-size:11px;margin-top:4px}
.fpgk-sens-mini{display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.55);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700;color:#fff;cursor:default}
.fpgk-sens-mini input{width:90px;accent-color:var(--fp-dorado);cursor:pointer}
.fpgk-sens-mini b{color:var(--fp-dorado);min-width:22px}
.fpgk-escena .fpgk-sens-mini,.fpgk-barra-sup{cursor:default}

/* v1.3: 16 equipos y cuadro de 4 rondas, más compactos */
.fpgk-grid-equipos{grid-template-columns:repeat(4,1fr);gap:8px}
.fpgk-equipo{padding:8px 6px;gap:6px}
.fpgk-equipo .fpgk-camiseta{width:34px;height:37px}
.fpgk-equipo-nombre{font-size:12px}
.fpgk-cuadro{grid-template-columns:repeat(4,1fr);gap:12px;overflow:auto}
.fpgk-cuadro-col{gap:5px}
.fpgk-llave-eq{padding:3px 8px;font-size:11.5px;gap:6px}
.fpgk-llave-eq .fpgk-chip{width:11px;height:11px}
.fpgk-llave small{padding:0 8px 2px;font-size:9px}
.fpgk-cuadro-col{position:relative;padding-top:22px}
.fpgk-cuadro-col>h3:first-child{position:absolute;top:0;left:0;margin:0}

/* v1.4: elección de torneo y división */
#pantalla-seleccion .fpgk-pestana{margin-bottom:12px}
.fpgk-torneos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.fpgk-torneo{display:flex;flex-direction:column;gap:2px;text-align:left;padding:8px 12px;background:rgba(0,0,0,.55);border:1px solid #555;border-radius:4px;color:#fff;cursor:pointer}
.fpgk-torneo strong{font-size:14px;text-transform:uppercase;letter-spacing:.04em}
.fpgk-torneo span{font-size:11px;color:#aaa}
.fpgk-torneo.activo{border-color:var(--fp-dorado);background:rgba(211,162,67,.15)}
.fpgk-torneo.activo strong{color:var(--fp-dorado)}
.fpgk-divs{display:flex;gap:6px;margin-bottom:10px}
.fpgk-divs:empty{display:none}
.fpgk-div{padding:5px 14px;background:#333;border:1px solid #555;border-radius:999px;color:#ddd;font-size:12px;font-weight:700;cursor:pointer}
.fpgk-div.activo{background:#1f8a3b;border-color:#1f8a3b;color:#fff}
.fpgk-grid-equipos{overflow:auto}
@media (max-width:640px){.fpgk-torneos{grid-template-columns:1fr}.fpgk-torneo{flex-direction:row;justify-content:space-between;align-items:center}}
.fpgk-cuadro-col:last-child{justify-content:center;gap:10px}
.fpgk-libres{margin:0 0 4px;font-size:10.5px;color:#c9a46a}
