/* =====================================================
   FutData - Hoja de estilos
   Extraido de FUTDATA10.html (bloques <style>)
   ===================================================== */

body {
            font-family: 'Montserrat', sans-serif;
            background-color: #07041a;
            background-image:
                radial-gradient(900px 600px at 0% 0%, rgba(193,69,58,0.30), transparent 60%),
                radial-gradient(800px 600px at 100% 8%, rgba(149,90,46,0.24), transparent 60%),
                radial-gradient(900px 700px at 0% 100%, rgba(122,31,168,0.30), transparent 60%),
                radial-gradient(900px 700px at 100% 100%, rgba(42,127,140,0.30), transparent 60%);
            background-attachment: fixed;
            color: #f1effa;
        }
        .scrollbar-thin::-webkit-scrollbar {
            width: 6px;
            height: 6px;
        }
        .scrollbar-thin::-webkit-scrollbar-track {
            background: #07041a;
        }
        .scrollbar-thin::-webkit-scrollbar-thumb {
            background: linear-gradient(180deg, #c1453a, #7a1fa8, #2a7f8c);
            border-radius: 9999px;
        }

        /* Paleta FutData: rojo / naranja / violeta / azul / turquesa */
        header {
            box-shadow: 0 8px 30px -12px rgba(122,31,168,0.55);
        }
        header::after {
            content: '';
            position: absolute;
            left: 0; right: 0; bottom: 0;
            height: 3px;
            background: linear-gradient(90deg, #c1453a 0%, #955a2e 25%, #7a1fa8 55%, #1e2060 78%, #2a7f8c 100%);
        }
        .bg-cardbg {
            background-image: linear-gradient(155deg, rgba(193,69,58,0.10) 0%, rgba(122,31,168,0.10) 50%, rgba(42,127,140,0.12) 100%);
            border-color: rgba(122,31,168,0.35);
            box-shadow: 0 10px 40px -18px rgba(122,31,168,0.65);
        }
        .bg-brand-600 {
            background-image: linear-gradient(135deg, #c1453a 0%, #7a1fa8 55%, #2a7f8c 100%);
        }
        .bg-brand-600.text-slate-950 { color: #ffffff; }
        .hover\:bg-brand-500:hover {
            background-image: linear-gradient(135deg, #e0604f 0%, #9b35cf 55%, #3a9aa8 100%);
            background-color: #9b35cf;
        }
        .text-brand-400 { color: #ff9a7a; }
        .hover\:border-brand-500:hover { border-color: #b24fe0; box-shadow: 0 0 0 1px rgba(178,79,224,0.35), 0 8px 24px -10px rgba(178,79,224,0.6); }
        .group:hover .group-hover\:text-brand-400 { color: #ff9a7a; }
        .hover\:text-brand-400:hover { color: #ff9a7a; }
        tbody tr:hover { background-color: rgba(122,31,168,0.22) !important; }
        thead { background-image: linear-gradient(90deg, rgba(193,69,58,0.20), rgba(122,31,168,0.22), rgba(42,127,140,0.22)); }
        footer { border-image: linear-gradient(90deg, #c1453a, #7a1fa8, #2a7f8c) 1; }

/* ===== MENÚ LATERAL (agregado) ===== */
        .side-panel { border: 1px solid rgba(122,31,168,0.35); border-radius: 1rem; overflow: hidden;
            background-image: linear-gradient(155deg, rgba(193,69,58,0.10) 0%, rgba(122,31,168,0.10) 50%, rgba(42,127,140,0.12) 100%);
            background-color: #150e33; box-shadow: 0 10px 40px -18px rgba(122,31,168,0.65); }
        .side-title { padding: 12px 16px; font-size: 14px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; color: #fff;
            background: linear-gradient(90deg, rgba(193,69,58,0.22), rgba(122,31,168,0.25), rgba(42,127,140,0.22));
            border-bottom: 1px solid rgba(42,33,88,0.9); }
        .side-link { display: flex; align-items: center; justify-content: space-between; width: 100%; text-align: left;
            padding: 10px 16px; font-size: 13px; font-weight: 600; color: #e3e0f3;
            border-bottom: 1px solid rgba(42,33,88,0.7); background: transparent; transition: background .15s, color .15s; cursor: pointer; }
        .side-link:hover { background: rgba(122,31,168,0.22); color: #ff9a7a; }
        .side-chev { font-size: 10px; color: #ff9a7a; transition: transform .2s; }
        .side-group.open > .side-link .side-chev { transform: rotate(180deg); }
        .side-group.open > .side-link { color: #ff9a7a; }
        .side-sub { display: none; background: rgba(7,4,26,0.45); }
        .side-group.open > .side-sub { display: block; }
        .side-sub .side-link { padding-left: 28px; font-size: 12px; font-weight: 500; color: #cdc9e6; }
        #side-toggle { position: fixed; left: 0; top: 38%; z-index: 45; width: 28px; height: 52px; display: flex; align-items: center; justify-content: center;
            color: #fff; border-radius: 0 12px 12px 0; border: 0; cursor: pointer;
            background-image: linear-gradient(135deg, #c1453a 0%, #7a1fa8 55%, #2a7f8c 100%); box-shadow: 0 6px 20px -4px rgba(122,31,168,0.7); }
        #side-overlay { position: fixed; inset: 0; z-index: 60; background: rgba(7,4,26,0.72); backdrop-filter: blur(3px); display: none; }
        #side-overlay.open { display: block; }
        #side-drawer { position: fixed; top: 0; left: 0; bottom: 0; width: 288px; max-width: 86vw; z-index: 70; display: flex; flex-direction: column;
            background: #0b0720; border-right: 1px solid #2a2158; transform: translateX(-100%); transition: transform .28s ease; }
        #side-drawer.open { transform: none; }
        @media (min-width: 1280px) { #side-toggle, #side-overlay, #side-drawer { display: none !important; } }

/* ===== EFECTO VIDRIO SUTIL (agregado, no modifica estilos existentes) ===== */
        :root {
            --glass-sheen:
                linear-gradient(180deg, rgba(255,255,255,0.13) 0, rgba(255,255,255,0) 1px),
                linear-gradient(0deg, rgba(0,0,0,0.16) 0, rgba(0,0,0,0) 1px),
                linear-gradient(115deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.04) 24%, rgba(255,255,255,0) 44%),
                linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.012) 45%, rgba(255,255,255,0) 100%);
        }
        /* Paneles */
        body .bg-cardbg {
            background-image: var(--glass-sheen), linear-gradient(155deg, rgba(193,69,58,0.10) 0%, rgba(122,31,168,0.10) 50%, rgba(42,127,140,0.12) 100%);
        }
        body .side-panel {
            background-image: var(--glass-sheen), linear-gradient(155deg, rgba(193,69,58,0.10) 0%, rgba(122,31,168,0.10) 50%, rgba(42,127,140,0.12) 100%);
        }
        body .side-title {
            background-image: var(--glass-sheen), linear-gradient(90deg, rgba(193,69,58,0.22), rgba(122,31,168,0.25), rgba(42,127,140,0.22));
        }
        body .bg-slate-900:not(input),
        body .bg-slate-800,
        body #side-drawer,
        body header {
            background-image: var(--glass-sheen);
        }
        body .bg-slate-950\/95 {
            background-image: var(--glass-sheen);
        }
        /* Botones con gradiente de marca */
        body .bg-brand-600 {
            background-image: var(--glass-sheen), linear-gradient(135deg, #c1453a 0%, #7a1fa8 55%, #2a7f8c 100%);
        }
        body .bg-brand-600.hover\:bg-brand-500:hover {
            background-image: var(--glass-sheen), linear-gradient(135deg, #e0604f 0%, #9b35cf 55%, #3a9aa8 100%);
        }
        body #side-toggle {
            background-image: var(--glass-sheen), linear-gradient(135deg, #c1453a 0%, #7a1fa8 55%, #2a7f8c 100%);
        }

/* ===== ESCALA EN PC (el tamaño de todo en pantallas grandes) =====
   La web entera se agranda o se achica cambiando SOLO este numero:
     1     = tamaño normal
     1.134 = 13.4% mas grande que lo normal (es el que se usa ahora:
             antes era 1.08 y se subio un 5%: 1.08 x 1.05 = 1.134)
     0.9   = 10% mas chico que lo normal
   Los "calc(100vh / var(--zoom-pc))" de abajo dividen por el mismo
   numero para que el alto de la pantalla y el tope de la barra lateral
   sigan quedando bien. */
:root { --zoom-pc: 1.134; }
        @media (min-width: 1024px) {
            html { zoom: var(--zoom-pc); }
            body.min-h-screen { min-height: calc(100vh / var(--zoom-pc)); }
            #side-desktop { max-height: calc(100vh / var(--zoom-pc) - 112px); }
        }

.br-click{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
        .br-click:hover{border-color:#6d5ef0;box-shadow:0 6px 18px rgba(109,94,240,.35);transform:translateY(-1px)}
        #brm-overlay{position:fixed;inset:0;z-index:9999;background:rgba(5,3,18,.72);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px}
        #brm-box{width:100%;max-width:440px;max-height:88vh;overflow:auto;background:#160f33;border:1px solid #352c6e;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.55);color:#e6e3f7}
        .brm-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #241c52}
        .brm-title{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#a9a4cc}
        .brm-x{background:none;border:0;color:#a9a4cc;font-size:18px;cursor:pointer;padding:2px 6px}
        .brm-x:hover{color:#fff}
        .brm-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:12px}
        .brm-leg{border:1px solid #241c52;border-radius:10px;padding:10px 12px;background:#120b2b}
        .brm-tag{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ff9a7a;margin-bottom:8px}
        .brm-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:13px}
        .brm-team{display:flex;align-items:center;gap:6px;min-width:0;font-weight:600}
        .brm-team span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
        .brm-team.r{justify-content:flex-end;text-align:right}
        .brm-win{color:#34d399}
        .brm-sc{font-size:18px;font-weight:800;color:#fff;text-align:center;white-space:nowrap}
        .brm-info{font-size:11px;color:#7d78a8;text-align:center;margin-top:8px}
        .brm-glob{text-align:center;border-top:1px dashed #352c6e;padding-top:12px}
        .brm-glob .brm-tag{color:#34d399}
        .brm-note{font-size:11px;color:#a9a4cc;text-align:center}
        .brm-leg-go{cursor:pointer;transition:border-color .15s,background-color .15s}
        .brm-leg-go:hover,.brm-leg-go:focus-visible{border-color:#5b4fb0;background:#1a1140}
        .brm-leg-go:focus-visible{outline:2px solid #5b4fb0;outline-offset:2px}
        .brm-aviso{font-size:11px;color:#a9a4cc;text-align:center}
        .brm-aviso[hidden]{display:none}
        .br-wrap{display:grid;grid-template-columns:repeat(4,190px);column-gap:28px;min-width:844px;padding:2px 2px 6px}
        .br-head{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#a9a4cc;text-align:center;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #241c52}
        .br-head.br-final{color:#ff9a7a}
        .br-slot{position:relative;display:flex;align-items:center}
        .br-card{position:relative;width:100%;border:1px solid #241c52;border-radius:8px;background:#160f33;box-shadow:0 4px 14px rgba(0,0,0,.25)}
        .br-row{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px;font-size:12px;color:#cdc9e6}
        .br-row+.br-row{border-top:1px solid #241c52}
        .br-row:first-child{border-radius:7px 7px 0 0}
        .br-row:last-child{border-radius:0 0 7px 7px}
        .br-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
        .br-score{font-weight:700;min-width:12px;text-align:right}
        .br-win{color:#34d399;font-weight:700;background:rgba(52,211,153,.08)}
        .br-tbd{color:#7d78a8}
        .br-out .br-card::after{content:'';position:absolute;left:100%;top:50%;width:14px;border-top:1px solid #352c6e}
        .br-in .br-card::before{content:'';position:absolute;right:100%;top:50%;width:14px;border-top:1px solid #352c6e}
        .br-top::after{content:'';position:absolute;left:calc(100% + 14px);top:50%;height:100%;border-left:1px solid #352c6e}

/* ===== NAVEGACION: resaltar la seccion activa (INICIO / LIGAS / COPAS) ===== */
[data-nav].nav-active,
[data-nav].nav-active i { color: #ff9a7a !important; }

/* ===== BRILLO DEL LOGO EN INICIO (agregado) =====
   drop-shadow sigue la forma del PNG (no es un recuadro), asi el brillo
   queda pegado a los bordes del logo. Se apilan dos: uno blanco bien
   chico y otro violeta apenas mas abierto = brillo chico y denso. */
.logo-glow {
    filter:
        drop-shadow(0 0 2px rgba(255, 255, 255, 0.85))
        drop-shadow(0 0 6px rgba(168, 96, 235, 0.90));
}

/* ===== PARTIDOS (selector de dia + filtros + paneles; datos de ESPN) ===== */
[data-part-filtro], [data-part-dia], [data-ali-club] { color: #a9a4cc; cursor: pointer; transition: background .15s, color .15s; }
[data-part-filtro]:hover, [data-part-dia]:hover, [data-ali-club]:hover { color: #fff; }
[data-part-filtro].part-tab-on, [data-part-dia].part-tab-on, [data-ali-club].part-tab-on { background: rgba(122,31,168,0.40); color: #ff9a7a; }

/* Etiqueta del canal de TV en el pie de cada partido (para los canales de
   los que no hay logo oficial). Hace de "logo": nombre corto en un recuadro. */
.tv-chip {
    display: inline-block;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1;
    padding: 2px 4px;
    border-radius: 4px;
    border: 1px solid rgba(255,255,255,0.18);
    vertical-align: middle;
    margin-right: 3px;
}

/* Logo oficial del canal (PNG con fondo transparente) en el pie del partido.
   OJO: "display: inline-block" es a proposito. Tailwind le pone display:block
   a todas las imagenes, y asi el logo se iria a la izquierda en vez de
   quedar centrado junto al nombre del canal. */
.tv-logo {
    display: inline-block;
    height: 16px;
    width: auto;
    max-width: 48px;
    object-fit: contain;
    vertical-align: middle;
    margin-right: 4px;
}

/* ===== FECHAS DE UNA COMPETENCIA (panel de la derecha) =====
   Aparece en lugar del post de Instagram cuando entras a una temporada:
   el selector de fecha (como el de Ayer/Hoy/Manana) y la lista de fechas. */

/* El panel entero un 10% mas chico (textos, escudos, espacios y botones).
   Con "zoom" se achica todo junto y el panel sigue ocupando el mismo ancho. */
#fechas-panel { zoom: 0.9; }

#fechas-panel .fx-arrow {
    width: 34px; height: 38px; border-radius: 12px; cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
    background: #160f33; border: 1px solid #2a2158; color: #a9a4cc;
    font-size: 11px; transition: color .15s, border-color .15s, background .15s;
}
#fechas-panel .fx-arrow:hover:not(:disabled) { color: #ff9a7a; border-color: rgba(178,79,224,0.6); }
#fechas-panel .fx-arrow:disabled { opacity: .35; cursor: default; }
#fechas-panel .fx-lista {
    position: absolute; z-index: 30; left: 0; right: 0; margin-top: 8px;
    max-height: 288px; overflow-y: auto; background: #0b0720;
    border: 1px solid #2a2158; border-radius: 14px; box-shadow: 0 22px 50px -14px rgba(0,0,0,.85);
}
#fechas-panel .fx-item {
    display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
    width: 100%; text-align: left; padding: 9px 12px; cursor: pointer;
    background: transparent; border: 0; border-bottom: 1px solid rgba(42,33,88,0.7);
    transition: background .12s;
}
#fechas-panel .fx-item:last-child { border-bottom: 0; }
#fechas-panel .fx-item:hover { background: rgba(122,31,168,0.28); }
#fechas-panel .fx-item.fx-on { background: rgba(122,31,168,0.45); }
#fechas-panel .fx-nom { font-size: 12.5px; font-weight: 700; color: #fff; }
#fechas-panel .fx-item.fx-on .fx-nom { color: #ff9a7a; }
#fechas-panel .fx-rango { font-size: 10.5px; color: #7d78a8; white-space: nowrap; }

/* ===== INICIO: el logo arranca alineado con las columnas de los costados =====
   En Inicio la barra de arriba (la casita "INICIO") queda oculta, pero
   Tailwind le seguia dejando su margen "space-y-6" al contenido. Aca lo
   sacamos para que el logo de FutData arranque a la misma altura que la
   barra de la izquierda y el post de la derecha. */
#ligas-content-view.vista-inicio { margin-top: 0; }

/* ===== PAGINA DE UN CLUB: LOS PARTIDOS EN EL CELULAR =====
   En la compu los partidos del club (proximos y anteriores) van en la
   columna de la derecha, en #equipos-panel. En el celular esa columna no
   entra, asi que los mismos partidos se muestran adentro de la tarjeta del
   club y ARRIBA de la plantilla, en #equipos-partidos-movil.
   Para que no aparezcan dos veces, cada uno se ve solo en su tamano:
   - pantalla chica (menos de 1024px): se ve el de adentro de la tarjeta.
   - pantalla grande (1024px o mas): se ve el de la columna de la derecha. */
@media (max-width: 1023px) {
    #equipos-panel { display: none !important; }
}
@media (min-width: 1024px) {
    #equipos-partidos-movil { display: none !important; }
}

/* ===== PAGINA DE UN PARTIDO: EL ORDEN DE LOS BLOQUES =====
   Los bloques del centro son: cabecera (el marcador), formacion (la cancha),
   datos del partido (las estadisticas), eventos y alineaciones. Con "order"
   se cambia el orden sin mover nada del HTML.
   El orden es el mismo en la compu y en el celular: cabecera, formacion,
   estadisticas, eventos y alineaciones.
   OJO: en la compu los eventos NO van aca: van en la columna de la derecha
   (#partido-panel). En el celular los agrega js/partido.js como bloque
   pt-eventos, asi quedan arriba de las alineaciones. */
.pt-col { display: flex; flex-direction: column; gap: 1rem; }
.pt-cabeza { order: 1; }
.pt-formacion { order: 2; }
.pt-datos { order: 3; }
.pt-eventos { order: 4; }
.pt-alineacion { order: 5; }

/* ===== PAGINA DE UN PARTIDO: LAS ALINEACIONES EN EL CELULAR =====
   En el celular se ve la lista de jugadores de UN club por vez, y los dos
   botones de arriba (con el nombre de cada club) pasan de uno al otro. En la
   compu se ven las dos listas, una al lado de la otra, y los botones quedan
   escondidos (en el HTML llevan la clase lg:hidden de Tailwind).
   La clase ali-ver-casa / ali-ver-fuera del cuadro la cambia js/partido.js. */
@media (max-width: 1023.98px) {
    .ali-caja .ali-club { display: none; }
    .ali-caja.ali-ver-casa .ali-club-casa { display: block; }
    .ali-caja.ali-ver-fuera .ali-club-fuera { display: block; }
}
