/* SIC · estilos de lo replicado desde Lanús (2026-11-09), con la paleta clara de SIC:
   fondo #f4f7fa, tarjetas blancas, texto #15325c, azul #123a6b / #1b5fa8, celeste #6aa524. */
:root{--sic-azul:#123a6b;--sic-azul2:#1b5fa8;--sic-celeste:#6aa524;--sic-borde:#dbe3ec;--sic-suave:#f4f7fb;--sic-texto:#15325c;--sic-ok:#1f8a5b;--sic-aviso:#b7791f;--sic-mal:#c62828}

/* Sesión: aviso de club suspendido (solo administrador global) */
#aviso-suspension{margin:0;padding:12px 16px;text-align:center;background:#fff4d6;color:#5c4300;border-bottom:2px solid #e0b84a;font-size:14px}
#aviso-suspension a{color:#5c4300;font-weight:700;text-decoration:underline}

/* Usuarios: cuenta del club, alta, bajas, equipos, matrícula */
#club-estado{border:2px solid var(--sic-ok)!important;margin:0 0 18px}
#club-estado[hidden]{display:none!important}
#club-estado.suspendida{border-color:var(--sic-aviso)!important;background:#fffaf0}
#club-estado .club-estado-nota{font-size:13px}
#club-estado-boton{min-height:42px;padding:10px 20px;font-size:15px;font-weight:700;border-radius:10px;cursor:pointer}
button.danger{background:var(--sic-mal)!important;border:1px solid var(--sic-mal)!important;color:#fff!important;font-weight:700;border-radius:8px;cursor:pointer}
button.danger:hover{background:#9f1d1d!important}
button.primary,.primary{background:var(--sic-azul);color:#fff;border:1px solid var(--sic-azul);border-radius:8px}
.member-row.dado-de-baja{opacity:.65;border-style:dashed!important}
.alta-resultado{margin-top:14px;padding:14px;border:2px solid var(--sic-azul2);border-radius:12px;background:var(--sic-suave)}
.alta-resultado input{width:100%;margin:8px 0;font-size:13px;padding:8px;border:1px solid var(--sic-borde);border-radius:8px}
.alta-acciones{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
a.button-link{display:inline-block;padding:8px 14px;border-radius:8px;background:var(--sic-azul);color:#fff!important;text-decoration:none;font-weight:600}
.team-picker.multi{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 12px;margin:6px 0 4px;padding:10px;border:1px solid var(--sic-borde);border-radius:10px;background:var(--sic-suave)}
.team-picker.multi label{display:flex!important;align-items:center;gap:8px;margin:0!important;font-weight:500;font-size:14px;cursor:pointer}
.team-picker.multi input{width:18px;height:18px;accent-color:var(--sic-azul)}
.editar-equipos{margin-top:10px;padding-top:10px;border-top:1px solid var(--sic-borde)}
.editar-equipos summary{cursor:pointer;font-weight:700;color:var(--sic-azul2)}
.editar-equipos .rol-label{display:flex;align-items:center;gap:8px;margin:10px 0 4px}
.editar-equipos>button{margin-top:8px}
.mat-label{display:flex!important;flex-direction:column;gap:5px;margin-top:8px}
.mat-label[hidden]{display:none!important}
.mat-label input{max-width:320px}

/* Mi deporte: panel de categorías (administradores) */
#gestion-categorias{margin-top:22px;padding:18px;background:#fff;border:1px solid var(--sic-borde);border-radius:14px}
.cat-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:10px 0 14px}
.cat-form label{display:flex;flex-direction:column;gap:5px;font-weight:600}
.cat-form input{min-height:40px;padding:8px 12px;font-size:15px;border:1px solid var(--sic-borde);border-radius:8px;min-width:180px}
.cat-form button{min-height:40px;padding:8px 16px;font-weight:700;cursor:pointer}
.cat-list{display:flex;flex-wrap:wrap;gap:8px}
.cat-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border-radius:999px;background:var(--sic-suave);border:1px solid var(--sic-borde);font-size:13px}
.cat-chip button{padding:3px 10px;border-radius:999px;font-size:11px;border:1px solid var(--sic-borde);background:#fff;cursor:pointer}
.cat-chip button:hover{background:var(--sic-mal);color:#fff}
.club-nav a[hidden],.team-module[hidden],a[hidden]{display:none!important}

/* Cuerpo médico. Estados: disponible verde, recuperación ámbar, lesionado rojo. */
body:has(#cm-staff) main,body:has(#cm-player) main{max-width:1300px;margin:auto;padding:26px 4%}
.cm-eyebrow{display:block;margin-top:6px;font-size:11px;font-weight:800;letter-spacing:2px;color:var(--sic-azul2)}
#cm-team{color:var(--sic-azul2)}
.card.cm-lista,.card.cm-detalle,.card.cm-player{background:#fff;border:1px solid var(--sic-borde);border-radius:14px;padding:18px}
.cm-resumen{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}
.cm-kpi{padding:10px 16px;border-radius:12px;background:#fff;border:2px solid var(--sic-borde);font-size:13px}
.cm-kpi b{font-size:22px;margin-right:4px}
.cm-kpi.est-disponible{border-color:var(--sic-ok)}.cm-kpi.est-recuperacion{border-color:var(--sic-aviso)}.cm-kpi.est-lesionado{border-color:var(--sic-mal)}.cm-kpi.k-aviso{border-color:#e0b84a}
.cm-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:18px;align-items:start}
.cm-lista input[type=search]{width:100%;margin:0 0 10px;min-height:40px;padding:8px 10px;border:1px solid var(--sic-borde);border-radius:8px}
#cm-jugadores{display:flex;flex-direction:column;gap:6px;max-height:70vh;overflow:auto}
.cm-jugador{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;border-radius:10px;background:var(--sic-suave);border:1px solid var(--sic-borde);color:var(--sic-texto);cursor:pointer;font:inherit}
.cm-jugador:hover{border-color:var(--sic-azul2)}
.cm-jugador.activo{border:2px solid var(--sic-azul);background:#e6eef8}
.cm-num{display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:var(--sic-azul);color:#fff;font-weight:800;flex-shrink:0}
.cm-num.grande{min-width:52px;height:52px;font-size:20px}
.cm-nombre{display:flex;flex-direction:column;flex:1;min-width:0}
.cm-nombre small{color:#586b7d}
.cm-chip{padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap;border:1px solid;background:#fff}
.cm-chip.est-disponible{color:var(--sic-ok);border-color:var(--sic-ok)}
.cm-chip.est-recuperacion{color:var(--sic-aviso);border-color:var(--sic-aviso)}
.cm-chip.est-lesionado{color:var(--sic-mal);border-color:var(--sic-mal)}
.cm-chip.est-alta{color:#607d8b;border-color:#90a4ae}
.cm-alerta{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e0b84a;color:#3a2a00;font-weight:900;flex-shrink:0}
.cm-det-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.cm-det-head h2{margin:0}
.cm-det-head .muted{margin:2px 0 0}
.cm-apto{margin-left:auto;padding:6px 12px;border-radius:10px;font-weight:700;font-size:13px;border:1px solid;background:#fff}
.cm-player .cm-apto{display:inline-block;margin:6px 0 12px}
.cm-apto.k-ok{color:var(--sic-ok)}.cm-apto.k-aviso{color:var(--sic-aviso)}.cm-apto.k-mal{color:var(--sic-mal)}.cm-apto.k-sin{color:#586b7d}
.cm-emergencia{margin:6px 0 14px;padding:8px 12px;border-radius:10px;background:var(--sic-suave)}
.cm-form{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.cm-form h3{margin:6px 0 0}
.cm-form label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px}
.cm-form textarea,.cm-form input,.cm-form select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--sic-borde);font:inherit;background:#fff}
.cm-form textarea{resize:vertical}
.cm-form .primary{align-self:flex-start;min-height:40px;padding:8px 18px;font-weight:700;cursor:pointer}
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.cm-lesion{padding:10px 12px;margin:0 0 8px;border-radius:10px;background:var(--sic-suave);border:1px solid var(--sic-borde);border-left-width:4px}
.cm-lesion.est-lesionado{border-left-color:var(--sic-mal)}.cm-lesion.est-recuperacion{border-left-color:var(--sic-aviso)}.cm-lesion.est-alta{border-left-color:#90a4ae;opacity:.85}
.cm-lesion-head{display:flex;justify-content:space-between;gap:8px;align-items:center}
.cm-lesion p{margin:6px 0}
.cm-lesion small{color:#586b7d}
.cm-lesion-edit{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-top:8px}
.cm-lesion-edit label{display:flex;flex-direction:column;gap:4px;font-size:12px}
.cm-lesion-edit button{padding:6px 12px;border-radius:8px;border:1px solid var(--sic-borde);cursor:pointer}
.cm-nueva,.cm-historial{margin:10px 0}
.cm-nueva summary,.cm-historial summary,.cm-player summary{cursor:pointer;font-weight:700;color:var(--sic-azul2)}
.cm-datos{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:0 0 14px}
.cm-datos dt{font-weight:700;color:var(--sic-azul2)}.cm-datos dd{margin:0}
@media(max-width:900px){.cm-layout{grid-template-columns:1fr}#cm-jugadores{max-height:none}.cm-apto{margin-left:0}}
#cm-staff *,#cm-player *,#gestion-categorias *,.alta-resultado *{box-sizing:border-box}

/* Video: Biblioteca de partidos */
#match-picker{position:relative;margin:0 0 18px;padding:14px 16px;border:2px solid var(--sic-azul2);border-radius:14px;background:#fff;box-shadow:0 4px 16px #16334b0d}
#match-picker *{box-sizing:border-box}
.match-picker-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.match-current{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:2px}
.match-picker-label{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--sic-azul2)}
#match-current-title{font-size:22px;line-height:1.2;color:var(--sic-texto);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#match-current-meta{font-size:12px;color:#586b7d}
.match-search{flex:1 1 320px;display:flex;align-items:center;gap:8px;min-width:0;padding:0 6px 0 12px;border:2px solid var(--sic-azul);border-radius:10px;background:var(--sic-suave);color:var(--sic-azul)}
.match-search:focus-within{box-shadow:0 0 0 3px #8dd4ed88}
.match-search svg{flex-shrink:0}
.match-search input{flex:1;min-width:0;width:auto!important;min-height:46px;font-size:16px;border:0!important;background:transparent!important;padding:8px 4px;outline:none}
#match-toggle{min-height:36px;min-width:40px;border:0;background:var(--sic-azul);color:#fff;font-size:16px;font-weight:800;border-radius:8px;cursor:pointer}
#match-panel{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--sic-borde)}
#match-panel[hidden]{display:none}
.match-panel-title{margin:0 0 8px;font-weight:700;display:flex;align-items:center;gap:8px}
#match-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px;max-height:360px;overflow:auto}
.match-option{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;width:100%;padding:10px 12px;border-radius:10px;background:var(--sic-suave);border:1px solid var(--sic-borde);color:var(--sic-texto);cursor:pointer;font:inherit}
.match-option small{font-size:11px;color:#586b7d}
.match-option:hover{border-color:var(--sic-azul2)}
.match-option[aria-selected="true"]{background:#e6eef8;border:2px solid var(--sic-azul)}
#match-playlists:empty{display:none!important}

/* Video: contador de cortes y corte actual */
.cut-counter{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 4px;padding:10px 14px;border-radius:12px;background:#fff;border:2px solid var(--sic-azul2)}
.cut-counter[hidden]{display:none!important}
.cc-info{display:flex;align-items:baseline;gap:4px 12px;flex-wrap:wrap;min-width:0}
.cc-label{font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--sic-azul2)}
.cc-num{font-size:15px}.cc-num b{font-size:28px;line-height:1;color:var(--sic-azul)}
.cc-title{font-size:12px;color:#586b7d;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.cc-modo{flex-basis:100%;font-size:11px;font-weight:700;color:var(--sic-azul2)}
.cc-actions{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
.cc-actions button{min-height:36px;font-weight:700;padding:6px 12px;border-radius:8px;border:1px solid var(--sic-borde);background:#fff;cursor:pointer}
.cc-actions button.primary{background:var(--sic-azul);color:#fff;border-color:var(--sic-azul)}
.cc-actions button:disabled{opacity:.45;cursor:default}
.cc-cadena{flex-basis:100%;display:flex;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:600;cursor:pointer}
.cc-cadena input{width:16px;height:16px;accent-color:var(--sic-azul)}
.cut-actual{outline:2px solid var(--sic-azul2);background:#e6eef8!important;border-radius:8px}
.section-add{width:100%;min-height:30px;margin:4px 0 8px;padding:5px;border-radius:8px;font-size:12px;font-weight:700;background:#fff;border:1px dashed var(--sic-azul2);color:var(--sic-azul2);cursor:pointer}
.section-add:hover{background:var(--sic-azul2);color:#fff}

/* Video: playlist con varios partidos, estado, biblioteca y "guardar antes" */
#playlist .pl-partido{margin:14px 0 6px;padding:4px 10px;border-left:4px solid var(--sic-azul2);font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--sic-azul);background:var(--sic-suave)}
#playlist .pl-partido:first-child{margin-top:4px}
#playlist .pl-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:start;padding:8px;margin:0 0 6px;border-radius:10px}
#playlist .pl-item .row{grid-column:1/-1;margin:4px 0 0;gap:4px}
#playlist .pl-pos{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--sic-azul);color:#fff;font-size:11px;font-weight:700}
#playlist .pl-info{min-width:0}
#playlist .pl-info strong{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#playlist .pl-corte{color:var(--sic-azul2);text-transform:uppercase;font-size:12px;letter-spacing:.5px}
#playlist .pl-info small{font-size:11px;color:#586b7d}
.pl-estado{margin:6px 0 10px;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:700;background:var(--sic-suave);border:1px solid var(--sic-borde)}
.pl-estado.sin-guardar{border-color:#e0b84a;color:#7a5600;background:#fffaf0}
.pl-estado.guardada{border-color:var(--sic-ok);color:var(--sic-ok)}
#saved-search{width:100%;max-width:420px;margin:0 0 12px;min-height:40px;padding:8px 10px;border:1px solid var(--sic-borde);border-radius:8px}
.saved-playlist-card[hidden]{display:none!important}
.saved-playlist-card.en-edicion{border:2px solid var(--sic-azul2)!important}
.saved-playlist-card.en-edicion h3:after{content:' · en edición';font-size:12px;color:var(--sic-azul2)}
#guardarAntes{max-width:480px;border:1px solid var(--sic-borde);border-radius:14px;padding:20px}
#guardarAntes::backdrop{background:#102d5080}
#guardarAntes label{display:flex;flex-direction:column;gap:6px;font-weight:600}
#guardarAntes input{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--sic-borde);border-radius:8px;box-sizing:border-box}
#ga-error{color:var(--sic-mal);min-height:18px}
.my-playlists-link{display:inline-block!important;margin:8px 0 14px 12px!important;vertical-align:middle}

/* Convocatoria: fecha, número y rival; convocatorias guardadas por fecha; disponibilidad médica */
#match-info{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:end;margin:0 0 22px;padding:16px 20px;border:2px solid var(--sic-azul2);background:#fff;border-radius:14px}
#match-info *{box-sizing:border-box}
#match-info[hidden],.match-info-field[hidden]{display:none!important}
.match-info-field{display:flex;flex-direction:column;gap:6px;flex:0 1 170px;min-width:0}
.match-info-field:has(#mi-dia){flex-basis:210px}
.match-info-field.wide{flex:1 1 260px}
.match-info-field label{font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--sic-azul2)}
.match-info-field input{width:100%;font-size:20px;font-weight:700;padding:10px 12px;border-radius:10px;border:1px solid var(--sic-borde);color:var(--sic-texto)}
.match-info-text{margin:0;font-size:22px;font-weight:800;color:var(--sic-azul)}
.summary-match{font-size:16px;margin:0 0 10px}
#conv-historial{margin-top:22px}
#conv-historial[hidden]{display:none}
#historial-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.historial-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;background:var(--sic-suave);border:1px solid var(--sic-borde)}
.historial-item:hover{border-color:var(--sic-azul2)}
.historial-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.historial-info strong{font-size:15px;color:var(--sic-texto)}
.historial-info small{font-size:12px;color:#586b7d}
.historial-actions{display:flex;gap:6px;flex-shrink:0}
#roster .salud-badge{display:inline-block;margin-top:3px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;border:1px solid;width:fit-content;background:#fff}
#roster .salud-lesionado{color:var(--sic-mal);border-color:var(--sic-mal)}
#roster .salud-recuperacion{color:var(--sic-aviso);border-color:var(--sic-aviso)}
#roster .salud-apto{color:#b45309;border-color:#f59e0b}
#pitch .player.no-disponible{outline:2px solid var(--sic-mal);outline-offset:2px;border-radius:8px;position:absolute}
#pitch .player.no-disponible:after{content:'✚';position:absolute;top:-9px;right:-9px;width:18px;height:18px;border-radius:50%;background:var(--sic-mal);color:#fff;font-size:11px;line-height:18px;text-align:center}
#bench span.no-disponible{position:relative;outline:2px solid var(--sic-mal)}
#bench span.no-disponible:after{content:'✚';position:absolute;top:-7px;right:-7px;width:16px;height:16px;border-radius:50%;background:var(--sic-mal);color:#fff;font-size:10px;line-height:16px;text-align:center}
@media(max-width:600px){.historial-item{flex-direction:column;align-items:flex-start}#historial-list{grid-template-columns:1fr}}

#match-delete{min-height:42px;padding:8px 14px;border-radius:10px;font-weight:700;flex-shrink:0}#match-delete[hidden]{display:none!important}

/* Video: editor de corte debajo del video (2026-11-10) */
#editDialog.clip-editor{position:static;display:none;width:100%;max-width:none;margin:10px 0;padding:14px 16px;border:2px solid var(--sic-azul2);border-radius:12px;background:#fff;color:var(--sic-texto);box-sizing:border-box}
#editDialog.clip-editor[open]{display:block}
.clip-editor *{box-sizing:border-box}
.ce-cab{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.ce-cab h2{margin:0;font-size:17px}
#ce-sub{font-size:12px;font-weight:700;color:var(--sic-azul2);text-transform:uppercase;letter-spacing:.5px}
.ce-nombre{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:13px;margin:0 0 10px}
.ce-nombre input{width:100%;padding:8px 10px;border:1px solid var(--sic-borde);border-radius:8px}
.ce-fila{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0;padding:8px;border-radius:10px;background:var(--sic-suave)}
.ce-et{min-width:44px;font-weight:800;color:var(--sic-azul)}
.ce-ajustes{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.ce-ajustes button,.ce-ahora{min-height:34px;padding:4px 10px;border-radius:8px;border:1px solid var(--sic-borde);background:#fff;font-weight:700;cursor:pointer}
.ce-ajustes button:hover,.ce-ahora:hover{border-color:var(--sic-azul2);background:#e3eefa}
.ce-ahora{margin-left:auto;color:var(--sic-azul)}
.ce-valor{display:flex;flex-direction:column;align-items:center;gap:1px}
.ce-valor input{width:88px;text-align:center;padding:6px;border:1px solid var(--sic-azul2);border-radius:8px;font-weight:700}
.ce-valor small{font-size:11px;color:#5b7085}
.ce-barra{position:relative;height:14px;margin:12px 0 4px;border-radius:7px;background:#dfe7ef;overflow:hidden}
.ce-original{position:absolute;top:0;bottom:0;background:#b9c9d8}
.ce-rango{position:absolute;top:3px;bottom:3px;border-radius:5px;background:var(--sic-azul2);box-shadow:0 0 0 2px #fff inset}
.ce-duracion{margin:4px 0 8px;font-size:13px;font-weight:700}
.ce-duracion.mal{color:var(--sic-mal)}
#editDialog .row{display:flex;gap:8px;flex-wrap:wrap}

/* Video: el editor de corte ahora es una ventana con su propio video (2026-11-10) */
#editDialog.clip-editor{position:fixed;inset:0;margin:auto;width:min(880px,94vw);max-height:94vh;overflow:auto;padding:16px 18px;border-radius:16px;box-shadow:0 20px 60px #05122266}
#editDialog.clip-editor::backdrop{background:#0b2240b3}
.ce-cab{align-items:center}
.ce-cerrar{margin-left:auto;min-width:36px;min-height:36px;border-radius:50%;border:1px solid var(--sic-borde);background:#fff;font-size:16px;cursor:pointer}
.ce-video{position:relative;width:100%;aspect-ratio:16/9;background:#0b2240;border-radius:12px;overflow:hidden;margin:6px 0 8px}
.ce-video iframe,.ce-video #ce-player{position:absolute;inset:0;width:100%;height:100%;border:0}
.ce-ayuda{margin:0 0 8px;font-size:13px;color:#5b7085}
.ce-et{display:flex;flex-direction:column;min-width:70px}
.ce-et small{font-size:10px;font-weight:600;color:#5b7085;white-space:nowrap}
.ce-ajustes button{min-width:64px;min-height:40px;font-size:14px;user-select:none;touch-action:manipulation}
.ce-ajustes button:active{background:var(--sic-azul2);color:#fff}
.ce-fila{justify-content:space-between}
#editDialog .row{margin-top:6px}
@media(max-width:600px){.ce-ajustes button{min-width:52px;padding:4px 6px}.ce-valor input{width:72px}}

/* Video: ventana grande del reproductor al ver cortes (2026-11-10) */
.visor-cab{display:none}
#visor-fondo{display:none}
body.visor-abierto #visor-fondo{display:block;position:fixed;inset:0;background:#0b2240c7;z-index:900}
body.visor-abierto .visor{position:fixed;z-index:901;top:2vh;left:0;right:0;margin:0 auto;width:min(1120px,95vw);max-height:96vh;overflow:auto;padding:12px 16px 14px;background:#fff;border-radius:16px;box-shadow:0 24px 70px #05122288;box-sizing:border-box}
body.visor-abierto .visor-cab{display:flex;align-items:center;gap:10px;margin:0 0 8px}
.visor-cab strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sic-azul);font-size:15px}
#visor-cerrar{min-width:38px;min-height:38px;border-radius:50%;border:1px solid var(--sic-borde);background:#fff;font-size:17px;cursor:pointer}
body.visor-abierto #annotation-stage{border-radius:12px}
.visor-controles{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:space-between;margin:10px 0 2px}
.vc-grupo{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.vc-et{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--sic-azul2);margin-right:2px}
.vc-grupo button{min-height:38px;padding:6px 12px;border-radius:9px;border:1px solid var(--sic-borde);background:#fff;font-weight:700;cursor:pointer;user-select:none}
.vc-grupo button:hover{border-color:var(--sic-azul2);background:#e3eefa}
.vc-grupo button.activa{background:var(--sic-azul);color:#fff;border-color:var(--sic-azul)}
#vc-pausa{min-width:48px;font-size:16px}
@media(max-width:700px){.visor-controles{justify-content:center}.vc-grupo button{padding:6px 8px;font-size:12px}}
.vc-teclado{flex-basis:100%;order:3;margin:2px 0 0;font-size:12px;color:#5b7085}
.vc-teclado kbd{display:inline-block;min-width:22px;padding:1px 6px;border:1px solid var(--sic-borde);border-bottom-width:2px;border-radius:5px;background:#fff;font:700 11px system-ui;text-align:center;color:var(--sic-azul)}

/* Video: ventana de edición "al tacto" (flecha / contraflecha y guardado automático) */
.ce-flechas{display:flex;gap:8px;flex-wrap:wrap}
.ce-flecha{min-width:130px;min-height:46px;padding:8px 14px;border-radius:10px;border:2px solid var(--sic-borde);background:#fff;font-size:15px;font-weight:800;color:var(--sic-azul);cursor:pointer;user-select:none;touch-action:none}
.ce-flecha:hover{border-color:var(--sic-azul2)}
.ce-flecha.elegida{border-color:var(--sic-azul);background:#e3eefa;box-shadow:0 0 0 3px #8dd4ed88}
.ce-flecha:active{background:var(--sic-azul);color:#fff}
.ce-num{width:90px;text-align:center;padding:6px;border:1px solid var(--sic-borde);border-radius:8px;font-weight:700}
.ce-et small{font-size:12px;font-weight:700;color:var(--sic-azul2)}
.ce-guardado{min-height:18px;margin:2px 0 6px;font-size:13px;font-weight:700;color:var(--sic-ok)}
.ce-ayuda kbd{display:inline-block;min-width:20px;padding:0 5px;border:1px solid var(--sic-borde);border-bottom-width:2px;border-radius:5px;background:#fff;font:700 11px system-ui;color:var(--sic-azul)}

/* Video: cartel del corte arriba del video y aviso de atajos (2026-11-10) */
.corte-cartel{position:absolute;top:10px;left:10px;right:60px;z-index:6;pointer-events:none;padding:6px 12px;border-radius:8px;background:#0b2240d9;color:#fff;font-size:14px;font-weight:800;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:fit-content;max-width:calc(100% - 80px)}
.corte-cartel[hidden],.corte-aviso[hidden]{display:none!important}
.corte-aviso{position:absolute;left:50%;bottom:16%;transform:translateX(-50%);z-index:7;pointer-events:none;padding:10px 18px;border-radius:12px;background:#1f8a5bee;color:#fff;font-size:16px;font-weight:800;box-shadow:0 6px 18px #0006}

/* Flechas del corte sobre el video (inicio a la izquierda, fin a la derecha): chicas y semitransparentes */
.bordes{position:absolute;inset:0;pointer-events:none;z-index:6}
.bordes[hidden]{display:none}
.borde-ctrl{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:rgba(10,30,60,.28);pointer-events:auto;opacity:.55;transition:opacity .15s,background .15s}
.borde-ctrl.izq{left:6px}.borde-ctrl.der{right:6px}
.borde-ctrl:hover,.borde-ctrl:has(.elegida){opacity:1;background:rgba(10,30,60,.5)}
.borde-btn{width:30px;height:30px;min-height:0;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.12);color:#fff;font-size:13px;line-height:1;cursor:pointer;touch-action:none;user-select:none}
.borde-btn:hover{background:rgba(255,255,255,.28)}
.borde-btn.elegida{background:var(--sic-azul2,#2f7fd1);border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.6)}
.borde-et{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7);padding:0 3px}

/* Editar video con la botonera: ventana con el partido completo, botonera abajo y cortes agrupados al costado */
#match-botonera{white-space:nowrap}
.vb-botonera[hidden],.vb-lista[hidden]{display:none}
body.visor-botonera .visor{width:min(1420px,97vw);display:grid;grid-template-columns:minmax(0,1fr) 290px;grid-template-areas:"cab cab" "stage lista" "ctrl lista" "bot lista";grid-template-rows:auto auto auto 1fr;column-gap:16px;align-items:start}
body.visor-botonera .visor-cab{grid-area:cab}
body.visor-botonera #annotation-stage{grid-area:stage;width:min(100%,calc((94vh - 330px) * 16 / 9));justify-self:center}
body.visor-botonera #cut-counter{display:none}
body.visor-botonera .visor-controles{grid-area:ctrl;margin:14px 0 0}
body.visor-botonera .vc-teclado{display:none}
.vb-botonera{grid-area:bot;margin-top:8px}
.vb-ayuda{margin:0 0 6px;font-size:12px;color:#4a5f78}
.vb-botonera .row{margin:0 0 6px}
.vb-botonera #tagboard{padding:10px;gap:7px}
.vb-botonera #tagboard button{min-height:44px;font-size:15px}
.vb-lista{grid-area:lista;align-self:stretch;border:1px solid var(--sic-borde,#cfe0f1);border-radius:12px;padding:10px;background:var(--sic-suave,#f3f8fd);max-height:calc(96vh - 80px);overflow:auto;box-sizing:border-box}
.vb-lista h3{margin:0 0 8px;font-size:14px;color:var(--sic-azul,#0c3c78)}
.vb-grupo{margin:0 0 10px}
.vb-grupo h4{display:flex;justify-content:space-between;align-items:center;margin:0 0 5px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--sic-azul,#0c3c78)}
.vb-items{display:flex;flex-wrap:wrap;gap:5px}
.vb-item{display:inline-flex;border:1px solid var(--sic-borde,#cfe0f1);border-radius:8px;background:#fff;overflow:hidden}
.vb-item button{border:0;background:none;padding:4px 7px;min-height:0;font-size:12px;cursor:pointer}
.vb-item button:hover{background:#e7f0fa}
.vb-item .vb-borrar{color:var(--sic-mal,#b3261e);border-left:1px solid var(--sic-borde,#cfe0f1)}
.vb-item.vb-nuevo{border-color:var(--sic-ok,#1f8a4c);box-shadow:0 0 0 2px #1f8a4c40;animation:vbNuevo 1.2s ease-out}
@keyframes vbNuevo{from{background:#d9f3e3}to{background:#fff}}
@media(max-width:900px){body.visor-botonera .visor{display:block}body.visor-botonera #annotation-stage{width:100%}.vb-lista{margin-top:10px;max-height:none}}

/* Editor tipo programa de video: video izquierda, botonera derecha, línea de tiempo abajo */
body.visor-botonera .visor{top:1vh;width:98vw;height:98vh;max-height:98vh;overflow:hidden;grid-template-columns:minmax(0,1fr) 360px;grid-template-areas:"cab cab" "stage bot" "ctrl bot" "linea linea";grid-template-rows:auto minmax(0,1fr) auto 32vh;padding:10px 14px}
body.visor-botonera #annotation-stage{width:min(100%,calc((98vh - 32vh - 160px) * 16 / 9));justify-self:center;align-self:start}
body.visor-botonera .visor-controles{margin:8px 0 0}
.vb-botonera{grid-area:bot;margin:0;overflow:auto;min-height:0;align-self:stretch;padding:0 2px 8px 4px}
body.visor-botonera #tagboard{grid-template-columns:1fr 1fr;padding:10px;gap:7px}
body.visor-botonera #tagboard button{grid-column:auto!important;grid-row:auto!important;min-height:40px;font-size:14px;border-radius:7px}
.vb-nuevo-btn{width:100%;margin-top:8px;border:1px dashed var(--sic-azul2,#2f7fd1);background:#fff;color:var(--sic-azul,#0c3c78);font-weight:700;border-radius:8px;min-height:38px;cursor:pointer}
.vb-nuevo{margin-top:8px;padding:10px;border:1px solid var(--sic-borde,#cfe0f1);border-radius:10px;background:var(--sic-suave,#f3f8fd)}
.vb-nuevo[hidden]{display:none}
.vb-nuevo label{display:block;margin:0 0 6px;font-size:12px;font-weight:600}
.vb-nuevo input:not([type=checkbox]){width:100%;box-sizing:border-box}
.vbn-chk{display:flex!important;align-items:center;gap:6px;font-weight:400!important}
.vbn-t{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vbn-error{color:var(--sic-mal,#b3261e);font-size:12px;margin:2px 0 6px;min-height:0}
.vb-linea{grid-area:linea;display:flex;flex-direction:column;min-height:0;margin-top:8px;border-top:1px solid var(--sic-borde,#cfe0f1);padding-top:6px}
.vb-linea[hidden]{display:none}
.tl-barra{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 0 6px}
.tl-barra>button,.tl-info button{min-height:30px;padding:4px 10px;font-size:12px;border-radius:7px}
.tl-reloj{font:600 18px/1 ui-monospace,Menlo,monospace;background:#0f2238;color:#fff;padding:6px 10px;border-radius:8px;letter-spacing:.03em}
.tl-info{flex:1;min-width:200px;font-size:13px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tl-borrar{color:var(--sic-mal,#b3261e)}
.tl-ley{font-size:11px;color:#4a5f78;display:flex;align-items:center;gap:4px}
.tl-ley i{display:inline-block;width:18px;height:10px;border-radius:3px;background:#ca50c8;margin-left:6px}
.tl-ley .tl-ley-x{background:#ca50c8 repeating-linear-gradient(135deg,rgba(255,255,255,.5) 0 3px,transparent 3px 6px)}
.tl-cuerpo{flex:1;min-height:0;display:flex;overflow-y:auto;overflow-x:hidden;border:1px solid var(--sic-borde,#cfe0f1);border-radius:10px;background:#fbfdff}
.tl-etiquetas{flex:0 0 140px;border-right:1px solid var(--sic-borde,#cfe0f1);background:#f2f7fc}
.tl-et{height:26px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:4px;padding:0 8px 0 6px;font-size:11px;font-weight:700;text-transform:uppercase;color:#1d3554;border-bottom:1px solid #e3ecf5;border-left:4px solid #ca50c8}
.tl-et.rival{border-left-color:#351caf}
.tl-et span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tl-et b{font-weight:600;color:#4a5f78}
.tl-et-regla{height:22px;border-left-color:transparent;background:#e8f0f8;border-bottom-color:var(--sic-borde,#cfe0f1)}
.tl-pista{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;cursor:pointer}
.tl-lienzo{position:relative;min-height:100%}
.tl-regla{height:22px;box-sizing:border-box;position:relative;background:#e8f0f8;border-bottom:1px solid var(--sic-borde,#cfe0f1)}
.tl-marca{position:absolute;top:0;height:22px;border-left:1px solid #9fb4cb;padding-left:4px;font-size:10px;line-height:22px;color:#4a5f78;white-space:nowrap}
.tl-fila{height:26px;box-sizing:border-box;position:relative;border-bottom:1px solid #e3ecf5}
.tl-bloque{position:absolute;top:3px;height:19px;min-height:0;padding:0;border:0;border-radius:4px;background:#ca50c8;cursor:pointer}
.tl-bloque.rival{background:#351caf}
.tl-bloque.xml{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.4) 0 4px,transparent 4px 8px)}
.tl-bloque:hover{filter:brightness(1.15)}
.tl-bloque.sel{outline:2px solid #ffb300;outline-offset:1px;z-index:2}
.tl-cabezal{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#e53935;pointer-events:none;z-index:3}
.tl-cabezal::before{content:'';position:absolute;top:0;left:-5px;border:6px solid transparent;border-top-color:#e53935}
.tl-vacio{position:absolute;top:26px;left:10px;margin:0;font-size:13px;color:#4a5f78}
@media(max-width:900px){body.visor-botonera .visor{display:block;height:auto;overflow:auto}body.visor-botonera #annotation-stage{width:100%}.vb-linea{height:45vh}}
body.visor-botonera .visor{grid-template-rows:auto minmax(0,1fr) auto 30vh}
body.visor-botonera #annotation-stage{align-self:stretch;justify-self:start;height:100%;width:auto;max-width:100%;aspect-ratio:16/9;min-height:0}

/* Editor: tamaño ajustable con la manija del video y línea de tiempo tipo planilla */
body.visor-botonera .visor{padding:8px 12px;grid-template-columns:minmax(0,1fr) var(--vb-bot,320px);grid-template-rows:auto minmax(0,1fr) auto var(--vb-linea,26vh)}
body.visor-botonera .visor-cab{margin:0 0 6px}
.vb-tirador{position:absolute;right:0;bottom:0;width:30px;height:30px;z-index:8;cursor:nwse-resize;touch-action:none;border-bottom-right-radius:12px;background:linear-gradient(135deg,transparent 0 45%,rgba(255,255,255,.75) 45% 52%,transparent 52% 62%,rgba(255,255,255,.75) 62% 69%,transparent 69% 79%,rgba(255,255,255,.75) 79% 86%,transparent 86%);opacity:.7}
.vb-tirador:hover{opacity:1;background-color:rgba(10,30,60,.35)}
.vb-tirador[hidden]{display:none}
body.vb-arrastrando{cursor:nwse-resize;user-select:none}
body.vb-arrastrando iframe{pointer-events:none}
.tl-cuerpo{display:block;overflow:auto;overscroll-behavior:contain;outline:none}
.tl-lienzo{position:relative;min-height:100%}
.tl-fila{display:flex;height:26px}
.tl-fila>.tl-et{flex:0 0 140px;width:140px;position:sticky;left:0;z-index:6;background:#f2f7fc;border-right:1px solid var(--sic-borde,#cfe0f1)}
.tl-carril{position:relative;flex:none;height:100%}
.tl-fila-regla{position:sticky;top:0;z-index:4;height:22px;background:#e8f0f8;border-bottom:1px solid var(--sic-borde,#cfe0f1)}
.tl-fila-regla>.tl-et{height:22px;background:#e8f0f8;border-left-color:transparent;z-index:7}
.tl-fila-regla .tl-marca{height:22px}
.tl-cabezal{z-index:5}
.tl-vacio{left:150px}
body.visor-botonera .vb-linea{align-self:stretch;min-height:0;overflow:hidden}
.tl-fila-regla{z-index:8}body.visor-botonera #tagboard button{min-width:0;overflow-wrap:anywhere;padding:4px}

/* Editor: sin fila Mover/Velocidad; la botonera queda pegada al video */
body.visor-botonera .visor-controles{display:none}
body.visor-botonera .visor{column-gap:12px;grid-template-rows:auto minmax(0,1fr) 0 var(--vb-linea,26vh)}
.tl-vel{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#4a5f78;margin:0}
.tl-vel select{min-height:30px;padding:2px 6px;border-radius:7px;font-size:12px}
.tl-vel select{width:auto!important;flex:none}
.tl-bloque.activo{outline:2px solid #e53935;outline-offset:1px;z-index:3}

/* Videoteca */
.tl-crear{background:var(--sic-azul,#0c3c78)!important;color:#fff!important;border-color:var(--sic-azul,#0c3c78)!important;font-weight:700}
.videoteca{margin-top:18px}
.vt-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:10px}
.vt-card{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:start;border:1px solid var(--sic-borde,#cfe0f1);border-radius:14px;padding:12px;background:#fff;box-shadow:0 2px 8px #0c3c7812}
.vt-icono{grid-row:span 2;width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--sic-azul,#0c3c78),var(--sic-azul2,#2f7fd1));display:grid;place-items:center;font-size:22px}
.vt-datos h3{margin:0 0 2px;font-size:15px;color:var(--sic-azul,#0c3c78);overflow-wrap:anywhere}
.vt-datos p{margin:0;font-size:13px;color:#33475f}
.vt-datos small{color:#5f738a}
.vt-acciones{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}
.vt-acciones button{min-height:34px;padding:5px 10px;font-size:13px;border-radius:8px}
.vt-acciones .team-visibility-eye{margin-left:auto}
.vt-borrar{color:var(--sic-mal,#b3261e)}
.vt-cortes{grid-column:1/-1;margin:6px 0 0;padding:8px 8px 8px 28px;background:var(--sic-suave,#f3f8fd);border-radius:10px;font-size:13px}
.vt-cortes[hidden]{display:none}
.vt-cortes li{display:flex;align-items:center;gap:4px;padding:2px 0}
.vt-cortes li span{flex:1}
.vt-cortes button{min-height:26px;padding:2px 8px;font-size:12px}
@media(max-width:600px){.vt-lista{grid-template-columns:1fr}.vt-acciones button{min-height:40px}}
