*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --bg:      #020617;
    --card:    #060d1e;
    --card2:   #080f24;
    --bg-card: #0f172a;
    --border:  rgba(255,255,255,.07);
    --border2: rgba(255,255,255,.04);
    --border-em: rgba(0,245,212,.12);
    --em:      #00f5d4;
    --emerald: #00f5d4;
    --em-dk:   #00c4aa;
    --emerald-dk: #00c4aa;
    --em-bg:   rgba(0,245,212,.07);
    --em-bd:   rgba(0,245,212,.2);
    --glow:    rgba(0,245,212,.18);
    --gold:    #f59e0b;
    --silver:  #94a3b8;
    --bronze:  #cd7c2c;
    --red:     #ef4444;
    --purple:  #8b5cf6;
    --blue:    #3b82f6;
    --text:    #f1f5f9;
    --muted:   #64748b;
    --muted2:  #94a3b8;
    --live:    #22c55e;
    /* ── Tema: superficies translúcidas (nav / dropdown / bottom-nav) ── */
    --surface:      rgba(2,6,23,.97);
    --text2:        #cbd5e1;
    --shadow-menu:  0 20px 40px rgba(0,0,0,.5), 0 0 30px rgba(0,245,212,.06);
  }

  /* ═══════════════════════════════════════════════════════════════ */
  /* MODO CLARO                                                       */
  /* ═══════════════════════════════════════════════════════════════ */
  [data-theme="light"] {
    --bg:      #f8fafc;
    --card:    #ffffff;
    --card2:   #f1f5f9;
    --bg-card: #ffffff;
    --border:  rgba(15,23,42,.08);
    --border2: rgba(15,23,42,.05);
    --border-em: rgba(0,179,159,.18);
    --em:      #00b39f;
    --emerald: #00b39f;
    --em-dk:   #009985;
    --emerald-dk: #009985;
    --em-bg:   rgba(0,179,159,.08);
    --em-bd:   rgba(0,179,159,.25);
    --glow:    rgba(0,179,159,.12);
    --gold:    #d97706;
    --silver:  #64748b;
    --bronze:  #b45309;
    --red:     #dc2626;
    --purple:  #7c3aed;
    --blue:    #2563eb;
    --text:    #0f172a;
    --muted:   #64748b;
    --muted2:  #475569;
    --live:    #16a34a;
    --surface:      rgba(255,255,255,.92);
    --text2:        #334155;
    --shadow-menu:  0 20px 40px rgba(15,23,42,.12), 0 0 24px rgba(0,179,159,.10);
  }

  html { scroll-behavior: smooth; }
  body { background: var(--bg); color: var(--text); font-family: 'Inter', system-ui, sans-serif; overflow-x: hidden; transition: background-color .2s ease, color .2s ease; }
  .page-wrap{ max-width:1180px; margin:0 auto; }

  .grp-main{
      padding:.70rem .90rem;
  }

  .grp-main .grp-label{
      font-size:.74rem;
      letter-spacing:.12em;
  }

  .grp-main .grp-count{
      transform:scale(1.08);
  }

  .tab-panel {
    /* Obliga a la pestaña a ocupar el alto de la pantalla menos el espacio de arriba/abajo */
    min-height: calc(100vh - 200px); 
  }

  /* ── NAV ─────────────────────────────────────────────────────── */
nav {
    position: sticky; top: 0; z-index: 400; height: 54px;
    background: var(--surface); border-bottom: 1px solid var(--border);
    backdrop-filter: blur(20px);
  }
.nav-inner {
  max-width: 1180px; margin: 0 auto; height: 100%;
  display: flex; align-items: center;
  padding: 0 1.25rem;
  gap: 12px;
}
.nav-right { display: flex; align-items: center; gap: .4rem; margin-left: auto; }
.nav-brand { font-family: 'Teko', sans-serif; font-size: 1.75rem; text-decoration: none; line-height: 1; letter-spacing: -.5px; display: flex; align-items: center; gap: .35rem; }
  .nav-logo-img { height: 34px; width: auto; }
  .nav-brand .w { color: var(--text); } .nav-brand .e { color: var(--em); }
  .nav-acc { padding: .32rem .85rem; color: var(--muted2); text-decoration: none; font-size: .78rem; font-weight: 500; border-radius: 7px; transition: color .2s; }
  .nav-acc:hover { color: var(--em); }
  .nav-cta { padding: .32rem 1rem; background: var(--em); color: #020617; border-radius: 7px; text-decoration: none; font-size: .78rem; font-weight: 700; white-space: nowrap; }

  /* ── TOGGLE TEMA CLARO/OSCURO ────────────────────────────────── */
.theme-toggle-btn {
  background: none; border: none; cursor: pointer;
  color: var(--muted);
  padding: 6px 1px 6px 4px;   /* antes: 6px 8px */
  font-size: 1rem;
  display: flex; align-items: center; justify-content: center;
  transition: color .2s;
}
.theme-toggle-btn:hover { color: var(--em); }

  /* ── CAMPANA NOTIFICACIONES ──────────────────────────────────── */
  .btn-campana {
    position: relative; background: none; border: none;
    padding: 6px 0px 6px 8px; color: var(--muted); transition: color .2s;
    text-decoration: none; display: flex; align-items: center;
  }
  .btn-campana:hover { color: var(--gold); }
  .btn-campana .fa-bell { font-size: 1.05rem; }
  .btn-campana.tiene-notif .fa-bell { color: var(--gold); animation: campanada 3s ease-in-out infinite; }
  @keyframes campanada {
    0%, 100%      { transform: rotate(0deg); }
    5%, 15%, 25%  { transform: rotate(-18deg); }
    10%, 20%, 30% { transform: rotate(18deg); }
    35%, 100%     { transform: rotate(0deg); }
  }
  .notif-badge {
    position: absolute; top: 2px; right: 4px;
    background: var(--red); color: #fff; font-size: .55rem; font-weight: 700;
    min-width: 16px; height: 16px; border-radius: 20px;
    display: flex; align-items: center; justify-content: center;
    padding: 0 3px; border: 2px solid var(--bg); line-height: 1;
  }

  /* ── MENÚ USUARIO (logueado) — mismo estilo que la app ─────────── */
  .user-menu { position: relative; }
  .btn-usuario {
    background: none; border: none; cursor: pointer;
    color: var(--text); font-weight: 600; font-size: .82rem;
    display: flex; align-items: center; gap: 6px;
    padding: .32rem .5rem .32rem .7rem;
    font-family: 'Inter', system-ui, sans-serif;
  }
  .btn-usuario .fa-chevron-down { font-size: .65rem; color: var(--muted); transition: transform .2s; }
  .btn-usuario.open .fa-chevron-down { transform: rotate(180deg); }
  .badge-dorsal {
    background: var(--em-bg); border: 1px solid var(--em-bd);
    color: var(--em); padding: .15rem .55rem; border-radius: 8px;
    font-family: 'Teko', sans-serif; font-size: 1.1rem; line-height: 1;
  }
  .user-dropdown-menu {
    position: absolute; top: calc(100% + 8px); right: 0; min-width: 230px;
    background: var(--surface); border: 1px solid var(--border-em);
    border-radius: 16px; box-shadow: var(--shadow-menu);
    overflow: hidden; padding: 6px; display: none; list-style: none; z-index: 500;
  }
  .user-dropdown-menu.show { display: block; }
  .dropdown-section-label {
    color: var(--muted); font-size: .6rem; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; padding: 8px 14px 4px;
  }
  .dropdown-item {
    color: var(--text2); border-radius: 10px; padding: 9px 14px; font-size: .85rem;
    font-weight: 500; display: flex; align-items: center; gap: 10px;
    transition: background .15s, color .15s; text-decoration: none;
  }
  .dropdown-item:hover { background: var(--em-bg); color: var(--text); }
  .dropdown-item i { width: 16px; text-align: center; font-size: .9rem; flex-shrink: 0; }
  .icon-admin    { color: var(--gold); }
  .icon-fraude   { color: var(--red); }
  .icon-partidos { color: #38bdf8; }
  .icon-clasif   { color: var(--em); }
  .icon-perfil   { color: var(--muted2); }
  .icon-salir    { color: var(--red); }
  .icon-support  { color: var(--em); opacity: .8; }
  .icon-ranking  { color: var(--gold); }
  .dropdown-sep  { border: none; border-top: 1px solid var(--border2); margin: 4px 0; }
  .dropdown-item-danger:hover { background: rgba(239,68,68,.08); color: var(--red); }

  /* ── MAIN TABS ────────────────────────────────────────────────── */
  /* ── Bottom Navigation ────────────────────────────────────────── */
  .bottom-nav{
    position:fixed;bottom:0;top:auto;left:0;right:0;z-index:300;height:auto;
    display:flex;align-items:stretch;
    background:var(--surface);backdrop-filter:blur(16px);
    border-top:1px solid var(--border);
    padding-bottom:env(safe-area-inset-bottom);
  }
  .bn-btn{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:.18rem;padding:.6rem .25rem .5rem;
    background:none;border:none;color:var(--muted);
    font-family:'Inter',sans-serif;font-size:.58rem;font-weight:700;
    letter-spacing:.3px;cursor:pointer;text-decoration:none;
    transition:color .18s;-webkit-tap-highlight-color:transparent;
  }
  .bn-btn i{font-size:1.15rem;transition:color .18s;}
  .bn-btn span{line-height:1;}
  .bn-btn.active{color:var(--em);}
  .bn-btn.active i{color:var(--em);}
  .bn-btn:hover{color:var(--muted2);}
  body{padding-bottom:calc(62px + env(safe-area-inset-bottom));}
  .tab-panel{display:none;}
  .tab-panel.active{display:block;}

  /* ── AD SLOT ─────────────────────────────────────────────────── */
  .ad-slot { display: none; width: 100%; text-align: center; padding: .75rem 0; }

  /* ═══════════════════════════════════════════════════════════════ */
  /* MARCADORES / RESULTADOS                                         */
  /* ═══════════════════════════════════════════════════════════════ */
  .res-comps{
  
      display:flex;
    
      gap:0;
  
      padding:0 1rem;
      
      overflow-x:auto;
  
      scrollbar-width:none;
  
      border-bottom:1px solid var(--border);
  
      background:var(--card);
  
  }
  .res-comps::-webkit-scrollbar { display: none; }
  .res-comp-btn { flex-shrink: 0; padding: .75rem 1rem; font-size: .75rem; font-weight: 600; background: transparent; border: none; border-bottom: 2px solid transparent; color: var(--muted); cursor: pointer; transition: all .2s; white-space: nowrap; font-family: 'Inter', sans-serif; display: flex; align-items: center; gap: .35rem; }
  .res-comp-btn:hover { color: var(--muted2); }
  .res-comp-btn.active { color: var(--em); border-bottom-color: var(--em); }
  .res-status{
  
      display:flex;
    
      gap:.5rem;
  
      padding:.85rem 1rem;
      
      overflow-x:auto;
  
      scrollbar-width:none;
  
  }
  .res-status::-webkit-scrollbar { display: none; }
  .res-status-btn { flex-shrink: 0; padding: .35rem .9rem; border-radius: 20px; font-size: .72rem; font-weight: 600; border: 1px solid var(--border); background: transparent; color: var(--muted); cursor: pointer; transition: all .2s; font-family: 'Inter', sans-serif; display: flex; align-items: center; gap: .35rem; }
  .res-status-btn.active { background: var(--em-bg); border-color: var(--em-bd); color: var(--em); }
  .res-status-btn.live-btn.active { background: rgba(239,68,68,.1); border-color: rgba(239,68,68,.35); color: var(--red); }
  .live-badge-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--red); opacity: .35; }
  .live-badge-dot.has-live { animation: blink 1.4s infinite; opacity: 1; }
  @keyframes blink { 0%,100%{opacity:1} 50%{opacity:.2} }
  .res-content { padding: .5rem 1rem 1.5rem; max-width: 980px; margin: 0 auto; }

  /* Acordeón grupos */
  .grp-block { border: 1px solid var(--border); border-radius: 11px; margin-bottom: .45rem; overflow: hidden; }
  .grp-toggle { width: 100%; display: flex; align-items: center; gap: .5rem; padding: .45rem .75rem; background: var(--card); border: none; cursor: pointer; text-align: left; transition: background .15s; font-family: 'Inter', sans-serif; }
  .grp-toggle:hover { background: var(--border2); }
  .grp-toggle.open { background: rgba(0,245,212,.05); }
  .grp-label { font-size: .65rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted2); flex: 1; }
  .grp-toggle.open .grp-label { color: var(--em); }
  .grp-count { font-size: .6rem; color: var(--muted); background: var(--border2); padding: .05rem .4rem; border-radius: 20px; }
  .grp-arrow { font-size: .6rem; color: var(--muted); transition: transform .2s; margin-left: .15rem; }
  .grp-toggle.open .grp-arrow { transform: rotate(180deg); color: var(--em); }
  .grp-body { display: none; margin-left:14px; padding-left:12px; border-left:1px solid var(--border); }
  .grp-body.open { display: block; }
  .grp-body .grp-body { margin-left: 0; padding-left: 0; border-left: none;}

  /* Fila partido compacta */
  .mrow { display: grid; grid-template-columns: 1fr 72px 1fr 44px; align-items: center; padding: .28rem .7rem; border-top: 1px solid var(--border2); font-size: .74rem; gap: .25rem; }
  .mrow:first-child { border-top: none; }
  .mrow-team { display: flex; align-items: center; gap: .3rem; min-width: 0; }
  .mrow-team-r { display: flex; align-items: center; gap: .3rem; justify-content: flex-end; min-width: 0; }
  .mflag { font-size: .95rem; line-height: 1; flex-shrink: 0; }
  .mname { font-weight: 600; font-size: .72rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .mrow-score { font-family: 'Teko', sans-serif; font-size: 1.15rem; font-weight: 700; text-align: center; color: var(--text); line-height: 1; display: flex; align-items: center; justify-content: center; gap: .1rem; white-space: nowrap; }
  .mrow-score small { font-size: .6rem; font-weight: 600; color: var(--muted); margin-left: 1px; }
  .msep { font-size: .8rem; color: var(--muted); margin: 0 .05rem; }
  .mrow-st { font-size: .52rem; font-weight: 700; letter-spacing: 1px; text-align: right; padding-right: .1rem; line-height: 1.3; white-space: nowrap; }
  .mst-live { color: var(--red); }
  .mst-fin { color: var(--muted); }
  .mst-prox { color: var(--em); }

  /* Clasificaciones */
  .clasif-table { table-layout: fixed; width: 100%; border-collapse: collapse; font-size: .75rem; margin-bottom: 1rem; }
  .clasif-table th { text-align: left; padding: .22rem .3rem; color: var(--muted); font-size: .58rem; font-weight: 600; letter-spacing: .5px; text-transform: uppercase; }
  .clasif-table td { padding: .28rem .3rem; border-bottom: 1px solid var(--border2); }
  .clasif-table tr:last-child td { border-bottom: none; }
  .clasif-pos { color: var(--muted); font-size: .7rem; }
  .clasif-equipo { display: flex; align-items: center; gap: .35rem; }
  .clasif-nombre { font-weight: 600; font-size: .75rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .clasif-flag { font-size: .95rem; line-height: 1; flex-shrink: 0; }
  .clasif-goles { color: var(--muted2); font-size: .7rem; }
  .clasif-pts { font-family: 'Teko', sans-serif; font-size: 1.05rem; color: var(--text); font-weight: 700; }
  .clasif-clasificado td:first-child { border-left: 2px solid var(--em); }
  .res-empty { text-align: center; padding: 3rem 1rem; color: var(--muted); }
  .res-empty i { font-size: 2.5rem; color: var(--em); opacity: .3; margin-bottom: 1rem; display: block; }
  .res-empty strong { display: block; color: var(--muted2); margin-bottom: .35rem; font-size: .95rem; }

  /* ── SEPARADOR ────────────────────────────────────────────────── */
  .landing-sep { display: flex; align-items: center; gap: 1rem; padding: 1.5rem 1.25rem .5rem; max-width: 860px; margin: 0 auto; }
  .landing-sep-line { flex: 1; height: 1px; background: var(--border); }
  .landing-sep-txt { font-size: .6rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted); white-space: nowrap; }

  /* ═══════════════════════════════════════════════════════════════ */
  /* HERO                                                            */
  /* ═══════════════════════════════════════════════════════════════ */
  .hero { position: relative; padding: 4rem 1.25rem 2.5rem; overflow: hidden; display: flex; flex-direction: column; align-items: center; }
  .hero-glow { position: absolute; width: 700px; height: 700px; background: radial-gradient(circle, rgba(0,245,212,.06) 0%, transparent 70%); top: 50%; left: 50%; transform: translate(-50%,-50%); pointer-events: none; }
  .hero-grid { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(0,245,212,.025) 1px, transparent 1px), linear-gradient(90deg,rgba(0,245,212,.025) 1px, transparent 1px); background-size: 64px 64px; }
  .hero-particles { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
  .particle { position: absolute; border-radius: 50%; opacity: 0; animation: pfloat linear infinite; }
  @keyframes pfloat { 0%{transform:translateY(100vh) translateX(0);opacity:0} 10%{opacity:.5} 90%{opacity:.2} 100%{transform:translateY(-10vh) translateX(var(--drift));opacity:0} }
  .hero-content { position: relative; text-align: center; max-width: 820px; }
  .hero-badge { display: inline-flex; align-items: center; gap: .5rem; background: rgba(0,245,212,.08); border: 1px solid rgba(0,245,212,.2); color: var(--em); font-size: .68rem; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; padding: .35rem 1rem; border-radius: 20px; margin-bottom: 1.5rem; }
  .hero-badge .bdot { width: 6px; height: 6px; background: var(--em); border-radius: 50%; animation: blink 2s ease-in-out infinite; }
  .hero h1 { font-family: 'Teko', sans-serif; font-size: clamp(3.2rem,10vw,6rem); font-weight: 700; line-height: .88; margin-bottom: 1.25rem; letter-spacing: -1px; }
  .hero h1 .ac { color: var(--em); }
  .hero h1 .sk { -webkit-text-stroke: 2px var(--em); color: transparent; }
  .hero-sub { font-size: 1rem; color: var(--muted2); max-width: 520px; margin: 0 auto 2rem; line-height: 1.75; }
  .hero-ctas { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }
  .btn-main { display: inline-flex; align-items: center; gap: .5rem; padding: .85rem 2rem; background: var(--em); color: var(--bg); border-radius: 12px; font-weight: 700; font-size: .95rem; text-decoration: none; transition: all .2s; box-shadow: 0 0 30px rgba(0,245,212,.28); }
  .btn-main:hover { background: var(--em-dk); transform: translateY(-2px); box-shadow: 0 0 40px rgba(0,245,212,.4); }
  .btn-sec { display: inline-flex; align-items: center; gap: .5rem; padding: .85rem 2rem; border: 1px solid var(--border-em); color: var(--muted2); border-radius: 12px; font-weight: 500; font-size: .95rem; text-decoration: none; transition: all .2s; }
  .btn-sec:hover { color: var(--text); border-color: rgba(255,255,255,.25); }

  /* TICKER */
  .ticker-wrap { width: 100%; overflow: hidden; background: rgba(0,245,212,.04); border-top: 1px solid var(--border-em); border-bottom: 1px solid var(--border-em); padding: .6rem 0; }
  .ticker-track { display: flex; animation: tick 38s linear infinite; white-space: nowrap; }
  .t-item { display: inline-flex; align-items: center; gap: .4rem; padding: 0 2.5rem; font-size: .78rem; color: var(--muted2); font-weight: 500; }
  .t-score { color: var(--text); font-family: 'Teko',sans-serif; font-size: .95rem; }
  .t-sep { color: var(--em); opacity: .6; }
  @keyframes tick { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

  /* STATS */
  .stats-s { padding: 3rem 1.25rem; border-bottom: 1px solid var(--border); }
  .stats-grid { max-width: 860px; margin: 0 auto; display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
  .sc { text-align: center; padding: 1.5rem 1rem; background: var(--card); border: 1px solid var(--border-em); border-radius: 16px; transition: border-color .3s, box-shadow .3s; }
  .sc:hover { border-color: rgba(0,245,212,.3); box-shadow: 0 0 30px rgba(0,245,212,.06); }
  .sn { font-family: 'Teko',sans-serif; font-size: 2.5rem; font-weight: 700; color: var(--em); line-height: 1; }
  .sl { color: var(--muted2); font-size: .75rem; font-weight: 500; margin-top: .4rem; text-transform: uppercase; letter-spacing: 1px; }

  .pstat-wrap { display: flex; flex-direction: column; gap: 1.2rem; }
  .pstat-team-hdr {
    font-family: 'Teko', sans-serif;
    font-size: 1.3rem;
    letter-spacing: .5px;
    color: var(--text);
    border-bottom: 1px solid var(--border-em);
    padding-bottom: 6px;
    margin-bottom: 8px;
  }
  .pstat-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--border2);
  }
  .pstat-row:last-child { border-bottom: none; }
  .pstat-rating {
    flex-shrink: 0;
    width: 34px;
    height: 24px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Teko', sans-serif;
    font-size: 1rem;
    font-weight: 700;
  }
  .pstat-rating-empty { background: var(--border2); color: var(--muted); }
  .pstat-body { flex: 1; min-width: 0; }
  .pstat-top { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
  .pstat-num { color: var(--muted2); font-size: .72rem; font-weight: 700; }
  .pstat-name { color: var(--text); font-size: .85rem; font-weight: 600; }
  .pstat-capt { color: var(--em); font-size: .7rem; }
  .pstat-sub { color: var(--muted); font-size: .7rem; margin-top: 2px; }

  /* APP PREVIEW */
  .preview-s { padding: 4rem 1.25rem; }
  .preview-inner { max-width: 1000px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
  .ptext .ey { color: var(--em); font-size: .62rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: .6rem; }
  .ptext h2 { font-family: 'Teko',sans-serif; font-size: clamp(2rem,4vw,3rem); font-weight: 700; line-height: 1; margin-bottom: 1rem; }
  .ptext p { color: var(--muted2); font-size: .9rem; line-height: 1.75; margin-bottom: 1.5rem; }
  .pchecks { list-style: none; display: flex; flex-direction: column; gap: .6rem; }
  .pchecks li { display: flex; align-items: center; gap: .65rem; font-size: .86rem; color: var(--muted2); }
  .pchecks li i { color: var(--em); font-size: .8rem; width: 16px; }
  .phone-wrap { display: flex; justify-content: center; }
  .phone { width: 260px; background: #050c1a; border-radius: 38px; border: 2px solid rgba(255,255,255,.09); box-shadow: 0 0 0 1px rgba(0,0,0,.5), 0 50px 90px rgba(0,0,0,.65), 0 0 60px rgba(0,245,212,.07); overflow: hidden; }
  .ph-notch { height: 26px; background: #050c1a; display: flex; align-items: center; justify-content: center; }
  .ph-notch-bar { width: 72px; height: 7px; background: rgba(255,255,255,.08); border-radius: 4px; }
  .ph-screen { background: #060e1e; padding: .7rem; }
  .ph-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: .7rem; padding: .4rem .3rem; }
  .ph-title { font-family: 'Teko',sans-serif; font-size: .95rem; color: var(--em); }
  .ph-sec { font-size: .52rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted2); padding: 0 .3rem; margin-bottom: .45rem; }
  .ph-row { display: flex; align-items: center; gap: .45rem; padding: .5rem .4rem; border-radius: 8px; margin-bottom: .2rem; font-size: .74rem; border: 1px solid transparent; }
  .ph-row.me { background: rgba(0,245,212,.07); border-color: rgba(0,245,212,.14); }
  .ph-pos { width: 16px; text-align: center; font-family: 'Teko',sans-serif; font-size: .88rem; font-weight: 700; }
  .ph-av { width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: .55rem; font-weight: 700; flex-shrink: 0; }
  .ph-name { flex: 1; font-size: .72rem; font-weight: 500; }
  .ph-pts { font-family: 'Teko',sans-serif; font-size: .9rem; color: var(--em); }
  .ph-match { margin-top: .65rem; background: rgba(0,245,212,.04); border: 1px solid var(--border-em); border-radius: 10px; padding: .65rem; }
  .ph-match-meta { font-size: .5rem; color: var(--muted2); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: .4rem; }
  .ph-match-teams { display: flex; align-items: center; gap: .35rem; font-size: .68rem; font-weight: 600; }
  .ph-match-vs { color: var(--muted2); font-size: .58rem; }
  .ph-match-score { display: flex; align-items: center; gap: .3rem; margin-top: .4rem; font-family: 'Teko',sans-serif; font-size: 1.1rem; color: var(--em); }

  /* HOW IT WORKS */
  .hiw-s { padding: 4rem 1.25rem; background: var(--card); }
  .sec-header { text-align: center; max-width: 600px; margin: 0 auto 3rem; }
  .ey { color: var(--em); font-size: .62rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: .6rem; }
  .h2 { font-family: 'Teko',sans-serif; font-size: clamp(2.2rem,5vw,3rem); font-weight: 700; line-height: 1; margin-bottom: .75rem; }
  .desc { color: var(--muted2); font-size: .9rem; }
  .hiw-grid { max-width: 860px; margin: 0 auto; display: grid; grid-template-columns: repeat(4,1fr); gap: 0; position: relative; }
  .hiw-grid::before { content: ''; position: absolute; top: 32px; left: 12.5%; right: 12.5%; height: 1px; background: linear-gradient(90deg,transparent,rgba(0,245,212,.25),rgba(0,245,212,.25),transparent); }
  .hiw-step { text-align: center; padding: 0 1.25rem; }
  .hiw-icon-wrap { width: 64px; height: 64px; border-radius: 50%; background: var(--bg); border: 1px solid var(--border-em); display: flex; align-items: center; justify-content: center; margin: 0 auto 1.25rem; position: relative; transition: border-color .3s, box-shadow .3s; }
  .hiw-step:hover .hiw-icon-wrap { border-color: var(--em); box-shadow: 0 0 20px rgba(0,245,212,.15); }
  .hiw-icon { font-size: 1.3rem; color: var(--em); }
  .hiw-num { position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; background: var(--em); color: var(--bg); border-radius: 50%; font-size: .62rem; font-weight: 700; display: flex; align-items: center; justify-content: center; }
  .hiw-step h3 { font-weight: 600; font-size: .88rem; margin-bottom: .4rem; }
  .hiw-step p { color: var(--muted2); font-size: .8rem; line-height: 1.55; }

  /* MATCH DEMO */
  .match-demo-s { padding: 4rem 1.25rem; position: relative; overflow: hidden; }
  .match-demo-s::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(0,245,212,.04) 0%, transparent 70%); }
  .match-inner { max-width: 700px; margin: 0 auto; text-align: center; }
  .match-demo-card { background: var(--card); border: 1px solid var(--border-em); border-radius: 22px; padding: 2rem 1.5rem; margin-top: 2.5rem; position: relative; }
  .match-demo-card::before { content: 'LALIGA · JORNADA 36'; position: absolute; top: -11px; left: 50%; transform: translateX(-50%); background: var(--card); padding: 0 1rem; font-size: .58rem; font-weight: 700; letter-spacing: 2px; color: var(--muted2); }
  .match-teams { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1.25rem; margin-bottom: 1.5rem; }
  .m-team { display: flex; flex-direction: column; align-items: center; gap: .5rem; }
  .m-shield { width: 56px; height: 56px; border-radius: 50%; border: 2px solid var(--border-em); display: flex; align-items: center; justify-content: center; font-size: 1.7rem; }
  .m-name { font-weight: 600; font-size: .9rem; }
  .m-vs { font-family: 'Teko',sans-serif; font-size: 1.8rem; color: var(--muted2); }
  .pred-label { font-size: .68rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted2); margin-bottom: .9rem; }
  .pred-inputs { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-bottom: 1.25rem; }
  .pred-box { width: 64px; height: 64px; background: rgba(0,245,212,.06); border: 2px solid rgba(0,245,212,.22); border-radius: 14px; font-family: 'Teko',sans-serif; font-size: 2.5rem; color: var(--em); display: flex; align-items: center; justify-content: center; }
  .pred-sep { font-family: 'Teko',sans-serif; font-size: 2rem; color: var(--muted2); }
  .pred-save { display: inline-flex; align-items: center; gap: .5rem; padding: .75rem 1.8rem; background: var(--em); color: var(--bg); border-radius: 10px; font-weight: 700; font-size: .9rem; }
  .pred-deadline { margin-top: .9rem; font-size: .75rem; color: var(--muted2); display: flex; align-items: center; justify-content: center; gap: .4rem; }
  .pred-deadline i { color: var(--gold); }

  /* FEATURES */
  .feat-s { padding: 4rem 1.25rem; background: var(--card); }
  .feat-grid { max-width: 860px; margin: 2.5rem auto 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 1.1rem; }
  .fc { background: var(--bg); border: 1px solid var(--border-em); border-radius: 16px; padding: 1.6rem; transition: border-color .3s, transform .3s; }
  .fc:hover { border-color: rgba(0,245,212,.25); transform: translateY(-3px); }
  .fc-icon { width: 44px; height: 44px; background: rgba(0,245,212,.08); border-radius: 10px; display: flex; align-items: center; justify-content: center; color: var(--em); font-size: 1.1rem; margin-bottom: 1rem; }
  .fc h4 { font-weight: 600; font-size: .88rem; margin-bottom: .4rem; }
  .fc p { color: var(--muted2); font-size: .8rem; line-height: 1.55; }

  /* TESTIMONIALS */
  .test-s { padding: 4rem 1.25rem; }
  .test-grid { max-width: 860px; margin: 2.5rem auto 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 1.1rem; }
  .tc { background: var(--card); border: 1px solid var(--border-em); border-radius: 16px; padding: 1.6rem; }
  .tc-stars { color: var(--gold); font-size: .82rem; letter-spacing: 2px; margin-bottom: .75rem; }
  .tc-text { color: var(--muted2); font-size: .84rem; line-height: 1.65; margin-bottom: 1.25rem; font-style: italic; }
  .tc-author { display: flex; align-items: center; gap: .75rem; }
  .tc-av { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: .78rem; }
  .tc-name { font-weight: 600; font-size: .84rem; }
  .tc-meta { color: var(--muted2); font-size: .73rem; }

  /* COMUNIDAD */
  .com-s { padding: 4rem 1.25rem; background: var(--card); }
  .com-grid { max-width: 860px; margin: 2.5rem auto 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 1.1rem; }
  .com-card { background: var(--bg); border: 1px solid var(--border-em); border-radius: 16px; padding: 1.4rem; transition: border-color .3s; }
  .com-card:hover { border-color: rgba(0,245,212,.22); }
  .com-teams { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .75rem; }
  .com-team { font-size: .78rem; font-weight: 600; flex: 1; }
  .com-team.right { text-align: right; }
  .com-score { font-family: 'Teko',sans-serif; font-size: 1.45rem; font-weight: 700; color: var(--em); padding: .1rem .55rem; background: rgba(0,245,212,.08); border-radius: 8px; border: 1px solid rgba(0,245,212,.15); flex-shrink: 0; }
  .com-divider { height: 1px; background: var(--border); margin: .75rem 0; }
  .com-label { font-size: .6rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted2); margin-bottom: .65rem; }
  .com-bar-row { margin-bottom: .5rem; }
  .com-bar-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: .25rem; }
  .com-bar-name { font-size: .7rem; color: var(--muted2); }
  .com-bar-pct { font-size: .72rem; font-weight: 700; font-family: 'Teko',sans-serif; }
  .com-bar-track { height: 6px; background: var(--border2); border-radius: 3px; overflow: hidden; }
  .com-bar-fill { height: 100%; border-radius: 3px; width: 0; transition: width 1.2s cubic-bezier(.4,0,.2,1); }
  .com-bar-fill.local { background: var(--em); }
  .com-bar-fill.empate { background: #94a3b8; }
  .com-bar-fill.visitante { background: var(--gold); }
  .com-footer { margin-top: .75rem; font-size: .68rem; color: var(--muted2); display: flex; align-items: center; gap: .35rem; }
  .com-loading, .com-empty { grid-column: 1/-1; text-align: center; padding: 3rem; color: var(--muted2); font-size: .85rem; }
  .com-empty i { display: block; font-size: 2rem; opacity: .3; margin-bottom: .75rem; }

  /* CTA FINAL */
  .cta-s { padding: 5rem 1.25rem; text-align: center; position: relative; overflow: hidden; }
  .cta-s::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(0,245,212,.07) 0%, transparent 70%); }
  .cta-s h2 { font-family: 'Teko',sans-serif; font-size: clamp(2.5rem,7vw,4.5rem); font-weight: 700; line-height: .92; margin-bottom: 1rem; position: relative; }
  .cta-s p { color: var(--muted2); font-size: 1rem; margin-bottom: 2.5rem; position: relative; }
  .cta-s .btn-main { position: relative; }

  /* SCROLL REVEAL */
  .reveal { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
  .reveal.visible { opacity: 1; transform: translateY(0); }

  /* ═══════════════════════════════════════════════════════════════ */
  /* NOTICIAS                                                        */
  /* ═══════════════════════════════════════════════════════════════ */
  .cat-strip { display: flex; overflow-x: auto; scrollbar-width: none; background: var(--card); border-bottom: 1px solid var(--border); padding: 0 1rem; }
  .cat-strip::-webkit-scrollbar { display: none; }
  .cat-btn { flex-shrink: 0; padding: .7rem .95rem; font-size: .74rem; font-weight: 600; background: transparent; border: none; border-bottom: 2px solid transparent; color: var(--muted); cursor: pointer; transition: all .2s; white-space: nowrap; font-family: 'Inter', sans-serif; }
  .cat-btn:hover { color: var(--muted2); }
  .cat-btn.active { color: var(--em); border-bottom-color: var(--em); }

  /* Editorial */
  .editorial-feed { padding: 1.25rem 1rem 0; max-width: 1200px; margin: 0 auto; }
  .ed-section { margin-bottom: 2rem; }
  .ed-hdr { display: flex; align-items: center; justify-content: space-between; padding: .6rem 0 .75rem; border-bottom: 1px solid var(--border); margin-bottom: .85rem; }
  .ed-hdr-left { display: flex; align-items: center; gap: .6rem; }
  .ed-comp-dot { width: 3px; height: 20px; border-radius: 2px; flex-shrink: 0; }
  .ed-comp-name { font-family: 'Teko',sans-serif; font-size: 1.25rem; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; }
  .ed-comp-emoji { font-size: 1.1rem; }
  .ed-ver-mas { font-size: .72rem; font-weight: 600; color: var(--muted); text-decoration: none; display: flex; align-items: center; gap: .3rem; transition: color .2s; }
  .ed-ver-mas:hover { color: var(--em); }
  .ed-grid { display: grid; grid-template-columns: 1fr; gap: .6rem; }
  @media(min-width:640px) { .ed-grid { grid-template-columns: 5fr 3fr; gap: .75rem; } }
  .hero-card { position: relative; border-radius: 14px; overflow: hidden; cursor: pointer; background: var(--card); aspect-ratio: 16/10; transition: transform .25s; display: block; text-decoration: none; }
  @media(min-width:640px) { .hero-card { aspect-ratio: auto; height: 100%; min-height: 240px; } }
  .hero-card:hover { transform: translateY(-2px); }
  .hero-card img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .hero-fb { width: 100%; height: 100%; background: linear-gradient(135deg,rgba(0,245,212,.06),#040a18); display: flex; align-items: center; justify-content: center; font-size: 3rem; }
  .hero-overlay { position: absolute; inset: 0; background: linear-gradient(to top,rgba(2,6,23,.95) 0%,rgba(2,6,23,.2) 60%,transparent 100%); }
  .hero-body { position: absolute; bottom: 0; left: 0; right: 0; padding: 1rem; }
  .hero-tag { display: inline-flex; background: rgba(0,245,212,.15); border: 1px solid rgba(0,245,212,.3); color: var(--em); font-size: .5rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; padding: .12rem .5rem; border-radius: 3px; margin-bottom: .45rem; }
  .hero-title { font-family: 'Teko',sans-serif; font-size: clamp(1.15rem,3.5vw,1.6rem); font-weight: 700; line-height: 1.08; color: var(--text); text-shadow: 0 1px 8px rgba(0,0,0,.6); }
  .hero-time { font-size: .65rem; color: var(--muted); margin-top: .3rem; }
  .small-stack { display: flex; flex-direction: column; gap: .55rem; }
  .small-card { display: flex; gap: .65rem; background: var(--card); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; cursor: pointer; transition: border-color .2s,transform .2s; padding: 0; align-items: stretch; }
  .small-card:hover { border-color: var(--em-bd); transform: translateY(-1px); }
  .small-img-wrap { width: 85px; flex-shrink: 0; overflow: hidden; background: #060e1e; }
  @media(min-width:640px){ .small-img-wrap { width: 100px; } }
  .small-img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .small-fb { width: 100%; height: 100%; background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
  .small-body { padding: .6rem .75rem .6rem 0; flex: 1; display: flex; flex-direction: column; justify-content: center; gap: .2rem; min-width: 0; }
  .small-title { font-size: .79rem; font-weight: 600; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .small-time { font-size: .62rem; color: var(--muted); }

  /* Grid noticias */
  .grid-section { padding: 1rem 1rem 3rem; max-width: 1200px; margin: 0 auto; }
  .grid-hdr { display: flex; align-items: center; gap: .75rem; margin-bottom: 1rem; }
  .grid-hdr-title { font-size: .72rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted); }
  .grid-hdr-line { flex: 1; height: 1px; background: var(--border); }

  /* .nc y .nc-img-wrap se mantienen para las ed-extras y nc-card de editorial */
  .nc-img-wrap { width: 100%; aspect-ratio: 16/9; overflow: hidden; background: #060e1e; }
  .nc-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
  .nc-img-fb { width: 100%; aspect-ratio: 16/9; background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 1.8rem; }
  .nc-tag { display: inline-flex; align-self: flex-start; background: var(--em-bg); border: 1px solid var(--em-bd); color: var(--em); font-size: .5rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; padding: .1rem .45rem; border-radius: 3px; }
  .nc-title { font-size: .82rem; font-weight: 600; line-height: 1.38; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
  .nc-time { font-size: .62rem; color: var(--muted); }

  /* ── MÁS NOTICIAS: cabecera + tag compartido ─────────────────── */
  .ngl-header { display: flex; align-items: center; gap: .7rem; padding: 2.2rem 0 1.3rem; }
  .ngl-accent { width: 3px; height: 22px; background: var(--em); border-radius: 2px; flex-shrink: 0; box-shadow: 0 0 8px var(--glow); }
  .ngl-hdr-title { font-family: 'Teko', sans-serif; font-size: 1.4rem; font-weight: 700; color: var(--text); letter-spacing: .5px; }
  .ngl-tag { display: inline-flex; align-self: flex-start; background: var(--em-bg); border: 1px solid var(--em-bd); font-size: .5rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; padding: .1rem .45rem; border-radius: 3px; }
  .ngl-meta { font-size: .6rem; color: var(--muted); }

  /* ── BLOQUE A: Featured grande + 2 horizontales ──────────────── */
  .nga-block { margin-bottom: 1.75rem; }
  .nga-feat { background: var(--card); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; cursor: pointer; margin-bottom: .65rem; transition: border-color .22s; }
  .nga-feat:hover { border-color: var(--em-bd); }
  .nga-feat-img { width: 100%; aspect-ratio: 16/8; overflow: hidden; background: #060e1e; }
  .nga-feat-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
  .nga-feat:hover .nga-feat-img img { transform: scale(1.03); }
  .nga-feat-img-fb { background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 2.5rem; }
  .nga-feat-body { padding: .9rem 1.1rem 1.1rem; display: flex; flex-direction: column; gap: .35rem; }
  .nga-feat-title { font-family: 'Teko', sans-serif; font-size: clamp(1.25rem,3.5vw,1.65rem); font-weight: 700; line-height: 1.1; }
  .nga-feat-excerpt { font-size: .78rem; color: var(--muted2); line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .nga-smalls { display: flex; flex-direction: column; gap: .5rem; }
  .nga-sm { display: flex; align-items: center; gap: .75rem; background: var(--card); border: 1px solid var(--border); border-radius: 11px; overflow: hidden; cursor: pointer; text-align: left; color: var(--text); width: 100%; padding: 0; transition: border-color .2s; }
  .nga-sm:hover { border-color: var(--em-bd); }
  .nga-sm-img { width: 84px; height: 64px; flex-shrink: 0; overflow: hidden; background: #060e1e; }
  .nga-sm-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .nga-sm-img-fb { background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 1.3rem; }
  .nga-sm-body { flex: 1; padding: .5rem .75rem .5rem 0; display: flex; flex-direction: column; gap: .2rem; min-width: 0; }
  .nga-sm-title { font-size: .77rem; font-weight: 600; line-height: 1.36; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

  /* ── BLOQUE B: 3 columnas verticales ─────────────────────────── */
  .ngb-block { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: .65rem; margin-bottom: 1.75rem; align-items: start; }
  @media(max-width:500px){ .ngb-block { grid-template-columns: 1fr; } }
  .ngb-card { background: var(--card); border: 1px solid var(--border); border-radius: 13px; overflow: hidden; cursor: pointer; display: flex; flex-direction: column; text-align: left; color: var(--text); padding: 0; width: 100%; transition: border-color .22s,transform .22s; }
  .ngb-card:hover { border-color: var(--em-bd); transform: translateY(-2px); }
  .ngb-img { width: 100%; overflow: hidden; background: #060e1e; }
  .ngb-img-tall { aspect-ratio: 3/4; }
  .ngb-img-sq  { aspect-ratio: 4/3; }
  .ngb-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
  .ngb-card:hover .ngb-img img { transform: scale(1.04); }
  .ngb-img-fb { display: flex; align-items: center; justify-content: center; font-size: 2rem; background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); }
  .ngb-body { padding: .75rem .9rem .95rem; flex: 1; display: flex; flex-direction: column; gap: .3rem; }
  .ngb-title { font-size: .8rem; font-weight: 600; line-height: 1.38; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
  .ngb-title-lg { font-size: .9rem; -webkit-line-clamp: 4; }

  /* ── BLOQUE C: Horizontal + 2 pequeñas ───────────────────────── */
  .ngc-block { margin-bottom: 1.75rem; }
  .ngc-horiz { display: flex; background: var(--card); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; cursor: pointer; margin-bottom: .65rem; min-height: 145px; text-align: left; color: var(--text); padding: 0; width: 100%; transition: border-color .22s; }
  .ngc-horiz:hover { border-color: var(--em-bd); }
  .ngc-feat-img { width: 40%; flex-shrink: 0; overflow: hidden; background: #060e1e; }
  .ngc-feat-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
  .ngc-horiz:hover .ngc-feat-img img { transform: scale(1.04); }
  .ngc-feat-img-fb { background: linear-gradient(135deg,rgba(0,245,212,.06),#040a18); display: flex; align-items: center; justify-content: center; font-size: 2.5rem; }
  .ngc-feat-body { flex: 1; padding: 1rem 1.15rem; display: flex; flex-direction: column; justify-content: center; gap: .4rem; }
  .ngc-feat-title { font-family: 'Teko', sans-serif; font-size: clamp(1.05rem,2.8vw,1.45rem); font-weight: 700; line-height: 1.1; }
  .ngc-feat-excerpt { font-size: .74rem; color: var(--muted2); line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .ngc-pair { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
  .ngc-sm { background: var(--card); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; cursor: pointer; display: flex; flex-direction: column; text-align: left; color: var(--text); padding: 0; width: 100%; transition: border-color .2s,transform .2s; }
  .ngc-sm:hover { border-color: var(--em-bd); transform: translateY(-2px); }
  .ngc-sm-img { width: 100%; aspect-ratio: 16/9; overflow: hidden; background: #060e1e; }
  .ngc-sm-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
  .ngc-sm:hover .ngc-sm-img img { transform: scale(1.05); }
  .ngc-sm-img-fb { background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; }
  .ngc-sm-body { padding: .6rem .75rem .8rem; flex: 1; display: flex; flex-direction: column; gap: .25rem; }
  .ngc-sm-title { font-size: .76rem; font-weight: 600; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
  @media(max-width:480px){
    .ngc-horiz { flex-direction: column; }
    .ngc-feat-img { width: 100%; aspect-ratio: 16/9; }
    .ngc-feat-body { padding: .85rem .95rem; }
  }

  /* Skeleton y loading */
  @keyframes shimmer { 0%{background-position:200% 0} 100%{background-position:-200% 0} }
  .skel { background: linear-gradient(90deg,var(--border2) 0%,var(--border) 50%,var(--border2) 100%); background-size: 200% 100%; animation: shimmer 1.4s ease-in-out infinite; border-radius: 5px; }
  .nc-skel { background: var(--card); border: 1px solid var(--border); border-radius: 13px; overflow: hidden; }
  .nc-skel-img { aspect-ratio: 16/9; } .nc-skel-body { padding: .75rem .9rem; }
  .nc-skel-line { height: 9px; margin-bottom: 7px; border-radius: 4px; }
  #sentinel { height: 1px; margin-top: 1rem; }
  .loading-more { text-align: center; padding: 2rem; color: var(--muted); font-size: .82rem; display: none; }
  .loading-more i { display: block; font-size: 1.3rem; margin-bottom: .4rem; color: var(--em); opacity: .5; }

  /* ── READER ───────────────────────────────────────────────────── */
  .reader-overlay { position: fixed; inset: 0; z-index: 500; background: var(--bg); overflow-y: auto; transform: translateY(100%); transition: transform .4s cubic-bezier(.32,0,.15,1); visibility: hidden; }
  .reader-overlay.open { transform: translateY(0); visibility: visible; }
  .reader-bar { position: sticky; top: 0; z-index: 10; height: 50px; display: flex; align-items: center; gap: 1rem; padding: 0 1.25rem; background: var(--surface); border-bottom: 1px solid var(--border); backdrop-filter: blur(16px); }
  .reader-back { display: flex; align-items: center; gap: .4rem; background: transparent; border: 1px solid var(--border); color: var(--muted2); font-family: 'Inter',sans-serif; font-size: .78rem; font-weight: 500; padding: .32rem .8rem; border-radius: 7px; cursor: pointer; transition: all .2s; }
  .reader-back:hover { color: var(--text); border-color: var(--em-bd); }
  .reader-orig { display: flex; align-items: center; gap: .4rem; font-size: .72rem; color: var(--muted); text-decoration: none; border: 1px solid var(--border); padding: .28rem .75rem; border-radius: 7px; white-space: nowrap; margin-left: auto; transition: all .2s; }
  .reader-orig:hover { color: var(--text); }
  .read-progress { position: fixed; top: 50px; left: 0; height: 2px; background: var(--em); z-index: 501; width: 0; transition: width .08s linear; }
  .reader-img-wrap { width: calc(100% - 2.5rem); max-width: 700px; margin: 1.5rem auto 0; height: clamp(200px,40vw,480px); overflow: hidden; border-radius: 14px; }
  .reader-img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .reader-img-fb { width: 100%; height: clamp(200px,35vw,420px); background: linear-gradient(135deg,rgba(0,245,212,.06),#040a18); display: flex; align-items: center; justify-content: center; font-size: 4rem; }
  .reader-body { max-width: 700px; margin: 0 auto; padding: 2.25rem 1.25rem 6rem; }
  .reader-cat { display: inline-flex; background: var(--em-bg); border: 1px solid var(--em-bd); color: var(--em); font-size: .58rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; padding: .16rem .6rem; border-radius: 4px; margin-bottom: .9rem; }
  .reader-title { font-family: 'Teko',sans-serif; font-size: clamp(1.9rem,5vw,2.9rem); font-weight: 700; line-height: 1.02; margin-bottom: .8rem; }
  .reader-byline { display: flex; align-items: center; gap: .5rem; font-size: .72rem; color: var(--muted); padding-bottom: 1.4rem; margin-bottom: 1.6rem; border-bottom: 1px solid var(--border); }
  .reader-text { font-size: 1rem; line-height: 1.84; color: var(--text2); }
  .reader-text p { margin-bottom: 1.35rem; }
  .reader-text p:first-child::first-letter { float: left; font-family: 'Teko',sans-serif; font-size: 3.6rem; font-weight: 700; color: var(--em); line-height: .78; margin: .05em .1em 0 0; }
  .reader-credit { margin-top: 2rem; padding-top: 1.2rem; border-top: 1px solid var(--border); font-size: .74rem; color: var(--muted); }
  .reader-credit a { color: var(--em); text-decoration: none; }
  .related-section { margin-top: 2.75rem; padding-top: 2rem; border-top: 1px solid var(--border); }
  .related-title { font-family: 'Teko',sans-serif; font-size: 1.2rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; color: var(--muted2); margin-bottom: 1.1rem; }
  .related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .75rem; }
  @media(max-width:600px){ .related-grid { grid-template-columns: 1fr; } }
  .rel-card { background: var(--card); border: 1px solid var(--border); border-radius: 11px; overflow: hidden; cursor: pointer; transition: border-color .2s,transform .2s; }
  .rel-card:hover { border-color: var(--em-bd); transform: translateY(-2px); }
  .rel-img-wrap { width: 100%; aspect-ratio: 16/9; overflow: hidden; background: #060e1e; }
  .rel-img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .rel-img-fb { width: 100%; aspect-ratio: 16/9; background: linear-gradient(135deg,rgba(0,245,212,.05),#060e1e); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
  .rel-body { padding: .65rem .8rem .8rem; }
  .rel-title { font-size: .76rem; font-weight: 600; line-height: 1.36; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: .28rem; }
  .rel-time { font-size: .62rem; color: var(--muted); }
  .reader-loading { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 50vh; gap: 1rem; color: var(--muted); font-size: .86rem; }
  .reader-loading i { font-size: 2rem; color: var(--em); opacity: .5; }

  /* ── MODAL CONTACTO ───────────────────────────────────────────── */
  .modal-overlay { position: fixed; inset: 0; z-index: 9000; background: rgba(2,6,23,.85); backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; padding: 1.5rem; opacity: 0; pointer-events: none; transition: opacity .25s ease; }
  .modal-overlay.open { opacity: 1; pointer-events: all; }
  .modal-box { background: var(--card); border: 1px solid var(--border-em); border-radius: 24px; padding: 2.5rem; width: 100%; max-width: 520px; position: relative; box-shadow: 0 40px 80px rgba(0,0,0,.6),0 0 60px rgba(0,245,212,.05); transform: translateY(20px); transition: transform .3s ease; }
  .modal-overlay.open .modal-box { transform: translateY(0); }
  .modal-close { position: absolute; top: 1.25rem; right: 1.25rem; width: 32px; height: 32px; border-radius: 50%; background: var(--border2); border: 1px solid var(--border); color: var(--muted2); cursor: pointer; font-size: .85rem; display: flex; align-items: center; justify-content: center; transition: all .2s; }
  .modal-close:hover { background: rgba(239,68,68,.1); color: #ef4444; border-color: rgba(239,68,68,.3); }
  .modal-eyebrow { color: var(--em); font-size: .62rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: .5rem; }
  .modal-title { font-family: 'Teko',sans-serif; font-size: 2.2rem; font-weight: 700; line-height: 1; margin-bottom: .5rem; }
  .modal-desc { color: var(--muted2); font-size: .85rem; margin-bottom: 2rem; }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
  .form-group { display: flex; flex-direction: column; gap: .4rem; margin-bottom: 1rem; }
  .form-label { font-size: .72rem; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--muted2); }
  .form-input, .form-textarea { background: var(--bg); border: 1px solid var(--border-em); border-radius: 10px; padding: .75rem 1rem; color: var(--text); font-family: 'Inter',sans-serif; font-size: .9rem; transition: border-color .2s,box-shadow .2s; outline: none; width: 100%; }
  .form-input:focus, .form-textarea:focus { border-color: rgba(0,245,212,.4); box-shadow: 0 0 0 3px rgba(0,245,212,.08); }
  .form-input::placeholder, .form-textarea::placeholder { color: var(--muted); }
  .form-textarea { resize: vertical; min-height: 120px; }
  .form-submit { width: 100%; padding: .9rem; background: var(--em); color: var(--bg); border: none; border-radius: 12px; font-family: 'Inter',sans-serif; font-size: 1rem; font-weight: 700; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: .5rem; transition: all .2s; box-shadow: 0 0 20px rgba(0,245,212,.2); }
  .form-submit:hover:not(:disabled) { background: var(--em-dk); transform: translateY(-1px); }
  .form-submit:disabled { opacity: .6; cursor: not-allowed; transform: none; }
  .form-feedback { text-align: center; padding: 1rem; border-radius: 10px; font-size: .88rem; margin-top: 1rem; display: none; }
  .form-feedback.ok { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.25); color: #4ade80; }
  .form-feedback.err { background: rgba(239,68,68,.1); border: 1px solid rgba(239,68,68,.25); color: #f87171; }

/* ── FOOTER ───────────────────────────────────────────────────── */
  footer { border-top: 1px solid var(--border); padding: 1.75rem 1.25rem; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .9rem; }
  .f-brand { font-family: 'Teko',sans-serif; font-size: 1.4rem; text-decoration: none; }
  
  /* CORRECCIÓN: column-gap a 0 para que no interfiera con los márgenes del palito. 
     Dejamos un poco de row-gap por si la pantalla es enana y los enlaces saltan de línea */
  .f-links { display: flex; column-gap: 0; row-gap: 0.5rem; flex-wrap: wrap; }
  
  .f-links a { color: var(--muted2); text-decoration: none; font-size: .75rem; transition: color .2s; }
  .f-links a:hover { color: var(--em); }
  
  /* CORRECCIÓN: Márgenes simétricos para centrar el separador. 
     Uso var(--muted) para que no brille tanto como el texto y quede como en tu captura */
  .f-links a:not(:last-child)::after { 
    content: "|"; 
    margin-left: 0.6rem; 
    margin-right: 0.6rem; 
    color: var(--muted); 
  }
  
  .f-copy { color: var(--muted); font-size: .72rem; }
  
  @media(max-width:540px){ 
    footer { flex-direction: column; text-align: center; } 
    .f-links { justify-content: center; } 
  }

  /* ── RESPONSIVE ───────────────────────────────────────────────── */
  @media(max-width:900px){
    .preview-inner { grid-template-columns: 1fr; }
    .phone-wrap { order: -1; }
    .hiw-grid { grid-template-columns: repeat(2,1fr); gap: 2.5rem; }
    .hiw-grid::before { display: none; }
    .feat-grid { grid-template-columns: repeat(2,1fr); }
    .test-grid { grid-template-columns: 1fr; }
    .stats-grid { grid-template-columns: repeat(2,1fr); }
    .com-grid { grid-template-columns: repeat(2,1fr); }
  }
  @media(max-width:600px){
    .hiw-grid { grid-template-columns: 1fr; }
    .feat-grid { grid-template-columns: 1fr; }
    .com-grid { grid-template-columns: 1fr; }
  }
  @media(max-width:500px){ .form-row { grid-template-columns: 1fr; } .modal-box { padding: 1.75rem 1.25rem; } }
  
  /* ── Secciones padre (Fase de Grupos / Eliminatorias / Clasificaciones) ── */
  .seccion-bloque { margin-bottom: .5rem; }
  .seccion-toggle {
    width: 100%; display: flex; align-items: center; gap: .6rem;
    padding: .55rem 1rem; border-radius: 12px;
    background: rgba(0,245,212,.06); border: 1px solid rgba(0,245,212,.18);
    cursor: pointer; transition: all .18s; font-family: 'Inter', sans-serif;
  }
  .seccion-toggle:hover { background: rgba(0,245,212,.1); }
  .seccion-toggle.open { background: rgba(0,245,212,.12); border-color: rgba(0,245,212,.35); }
  .seccion-label { font-size: .68rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--em); flex: 1; }
  .seccion-count { font-size: .58rem; color: var(--muted); background: var(--border2); padding: .04rem .5rem; border-radius: 20px; }
  .seccion-flecha { font-size: .65rem; color: var(--em); transition: transform .2s; opacity: .7; }
  .seccion-toggle.open .seccion-flecha { transform: rotate(180deg); }
  .seccion-body { display: none; padding: .3rem 0 .1rem; }
  .seccion-body.open { display: block; }
  /* Grupos anidados dentro de sección */
  .seccion-body .grp-block { margin: .25rem .15rem; border-radius: 9px; }
  

/* ===== Rediseño separadores de secciones ===== */
.section-divider{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin:1.4rem .15rem .8rem;
}
.section-divider::before,
.section-divider::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--border);
}
.section-divider span{
  color:var(--muted2);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
}

@media (min-width: 1100px){

    /* Pestañas superiores */
    .main-tabs{
        max-width:1280px;
        margin:0 auto;
    }

    .main-tab{
        flex:1;
    }

    .res-comps{
        justify-content:center;
    }

    .res-status{
        justify-content:center;
    }

    .cat-strip{
        justify-content:center;
    }

    /* Noticias */
    .cat-strip{
        justify-content:center;
    }

    /* Carrusel */
    .carousel-wrap{
        max-width:1280px;
        margin:0 auto;
    }

    .carousel{
        aspect-ratio:16/6;
        max-height:420px;
    }

    /* Editorial */
    .editorial-feed{
        max-width:1280px;
        margin:auto;
    }

}

@media (max-width: 640px){

    .main-tab{
        gap:.55rem;
        padding:1rem 0;
    }

    .main-tab:first-child{
        padding-right:0.8rem;
    }

    .main-tab:last-child{
        padding-left:0.8rem;
    }

}

  .fi{vertical-align:middle;border-radius:2px;flex-shrink:0}
  .mflag .fi,.clasif-flag .fi{font-size:1rem}

  /* ── TOP HERO ESTÁTICO ─────────────────────────────────────────────── */
  #topHero { padding: 1rem 1rem 0; max-width: 1200px; margin: 0 auto; }
  .top-hero {
    position: relative; border-radius: 18px; overflow: hidden; cursor: pointer;
    aspect-ratio: 21/9; min-height: 260px; display: flex; align-items: flex-end;
    background: var(--card); transition: transform .25s;
  }
  .top-hero:hover { transform: translateY(-2px); }
  .top-hero-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(2,6,23,.96) 0%, rgba(2,6,23,.3) 55%, transparent 100%);
  }
  .top-hero-body {
    position: relative; z-index: 1; padding: 1.75rem 2rem; width: 100%; max-width: 720px;
  }
  .top-hero-tag {
    display: inline-flex; font-size: .55rem; font-weight: 800; letter-spacing: 2px;
    text-transform: uppercase; padding: .14rem .55rem; border-radius: 4px; margin-bottom: .55rem;
    background: rgba(0,245,212,.15); border: 1px solid rgba(0,245,212,.3);
  }
  .top-hero-title {
    font-family: 'Teko', sans-serif; font-size: clamp(1.9rem, 5vw, 3rem);
    font-weight: 700; line-height: 1.03; color: #fff;
    text-shadow: 0 2px 10px rgba(0,0,0,.6); margin-bottom: .4rem;
  }
  .top-hero-time { font-size: .7rem; color: rgba(255,255,255,.55); }
  @media(max-width:640px) {
    .top-hero { aspect-ratio: 16/9; min-height: 190px; }
    .top-hero-body { padding: 1rem 1.25rem; }
    .top-hero-title { font-size: 1.5rem; }
  }
  
  /* ── AD SLOTS ──────────────────────────────────────────────────────── */
  .ad-wrap {
    max-width: 1200px; margin: 1.25rem auto; padding: 0 1rem;
    min-height: 100px; display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    background: var(--border2); border-radius: 10px;
    border: 1px dashed var(--border);
  }
  .ad-label {
    font-size: .52rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--muted); display: block; margin-bottom: .4rem;
  }
  
  /* ── LO ÚLTIMO ─────────────────────────────────────────────────────── */
  .lo-ultimo-section { max-width: 1200px; margin: .5rem auto 1.5rem; padding: 0 1rem; }
  .lo-ultimo-hdr {
    font-family: 'Teko', sans-serif; font-size: 1.2rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1px; color: var(--em);
    padding-bottom: .5rem; margin-bottom: .9rem;
    border-bottom: 2px solid var(--em);
    display: flex; align-items: center; gap: .4rem;
  }
  .lo-ultimo-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: .75rem; }
  @media(max-width:900px) { .lo-ultimo-grid { grid-template-columns: repeat(3, 1fr); } }
  @media(max-width:540px) { .lo-ultimo-grid { grid-template-columns: repeat(2, 1fr); } }
  .lu-card { cursor: pointer; }
  .lu-card:hover .lu-img { transform: scale(1.04); }
  .lu-img-wrap { width: 100%; aspect-ratio: 16/9; border-radius: 10px; overflow: hidden; margin-bottom: .45rem; background: var(--card); }
  .lu-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
  .lu-img-fb { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; }
  .lu-tag { font-size: .52rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: .2rem; }
  .lu-title { font-size: .74rem; font-weight: 600; line-height: 1.35; color: var(--text); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .lu-time { font-size: .62rem; color: var(--muted); margin-top: .2rem; }
  
  /* ── EXTRAS EN SECCIÓN EDITORIAL (fila adicional) ─────────────────── */
  .ed-extras {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem;
    margin-top: .75rem; padding-top: .75rem;
    border-top: 1px solid var(--border);
  }
  @media(max-width:640px) { .ed-extras { grid-template-columns: 1fr; } }
  .nc-card {
    background: var(--card); border: 1px solid var(--border); border-radius: 13px;
    overflow: hidden; display: flex; flex-direction: column; cursor: pointer;
    transition: border-color .22s, transform .22s;
  }
  .nc-card:hover { border-color: var(--em-bd); transform: translateY(-2px); }
  .nc-card .nc-img-wrap { width: 100%; aspect-ratio: 16/9; }
  .nc-card .nc-body { padding: .7rem .85rem .85rem; flex: 1; display: flex; flex-direction: column; gap: .3rem; }
  .nc-card .nc-title { font-size: .8rem; font-weight: 600; line-height: 1.36; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
  .nc-card .nc-meta { font-size: .62rem; color: var(--muted); }
  
  /* ── FEATURED CARD EN GRID MÁS NOTICIAS ───────────────────────────── */
  .nc-featured {
    grid-column: 1 / -1; display: flex; cursor: pointer;
    background: var(--card); border: 1px solid var(--border); border-radius: 16px;
    overflow: hidden; transition: border-color .22s, transform .22s;
  }
  .nc-featured:hover { border-color: var(--em-bd); transform: translateY(-2px); }
  .nc-feat-img { width: 45%; flex-shrink: 0; min-height: 180px; overflow: hidden; }
  .nc-feat-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .nc-feat-img-fb { background: linear-gradient(135deg,rgba(0,245,212,.06),#040a18); display: flex; align-items: center; justify-content: center; font-size: 3rem; }
  .nc-feat-body { padding: 1.5rem; flex: 1; display: flex; flex-direction: column; justify-content: center; gap: .5rem; }
  .nc-feat-title { font-family: 'Teko', sans-serif; font-size: clamp(1.3rem, 3vw, 1.8rem); font-weight: 700; line-height: 1.1; }
  .nc-feat-excerpt { font-size: .8rem; color: var(--muted2); line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .nc-feat-meta { font-size: .65rem; color: var(--muted); }
  @media(max-width:600px) {
    .nc-featured { flex-direction: column; }
    .nc-feat-img { width: 100%; min-height: 0; aspect-ratio: 16/9; }
    .nc-feat-body { padding: 1rem; }
  }

/* ── NOTICIAS DESTACADAS ──────────────────────────────────────────── */
.destacadas-section { max-width:1200px; margin:0 auto 1.5rem; padding:0 1rem; }
.dest-hdr {
  font-family:'Teko',sans-serif; font-size:1.2rem; font-weight:700;
  text-transform:uppercase; letter-spacing:1px; color:var(--text);
  padding-bottom:.5rem; margin-bottom:.9rem;
  border-bottom:2px solid var(--border);
  display:flex; align-items:center; gap:.4rem;
}
.dest-hdr i { color:var(--em); }
.destacadas-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.75rem; }
@media(max-width:640px){ .destacadas-grid{ grid-template-columns:1fr; } }
.dest-card {
  position:relative; border-radius:14px; overflow:hidden; cursor:pointer;
  aspect-ratio:16/10; background:var(--card); transition:transform .25s;
}
.dest-card:hover { transform:translateY(-2px); }
.dest-card img { width:100%; height:100%; object-fit:cover; display:block; }
.dest-card-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top,rgba(2,6,23,.95) 0%,rgba(2,6,23,.1) 60%,transparent 100%);
}
.dest-card-body { position:absolute; bottom:0; left:0; right:0; padding:.85rem; }
.dest-tag {
  font-size:.5rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  padding:.1rem .45rem; border-radius:3px; margin-bottom:.35rem;
  background:rgba(0,245,212,.15); border:1px solid rgba(0,245,212,.3);
  display:inline-flex;
}
.dest-title {
  font-family:'Teko',sans-serif; font-size:1.1rem; font-weight:700;
  line-height:1.08; color:var(--text);
}

/* ── LO ÚLTIMO CAROUSEL ────────────────────────────────────────────── */
.lo-ultimo-section { max-width:1200px; margin:0 auto 1.5rem; padding:0 1rem; }
.lo-ultimo-hdr {
  font-family:'Teko',sans-serif; font-size:1.2rem; font-weight:700;
  text-transform:uppercase; letter-spacing:1px; color:var(--em);
  padding-bottom:.5rem; margin-bottom:.9rem;
  border-bottom:2px solid var(--em);
  display:flex; align-items:center; gap:.4rem;
}
.lo-ultimo-carousel { position:relative; display:flex; align-items:center; gap:.4rem; }
.lo-ultimo-grid {
  display:flex; flex:1;
  overflow-x:auto; scroll-snap-type:x mandatory;
  gap:.75rem; padding-bottom:.4rem;
  scrollbar-width:none;
}
.lo-ultimo-grid::-webkit-scrollbar { display:none; }
.lu-card { flex:0 0 calc(50% - .375rem); scroll-snap-align:start; cursor:pointer; }
@media(min-width:640px){ .lu-card { flex:0 0 calc(33.333% - .5rem); } }
@media(min-width:900px){ .lu-card { flex:0 0 calc(20% - .6rem); } }
.lu-card:hover .lu-img { transform:scale(1.04); }
.lu-img-wrap { width:100%; aspect-ratio:16/9; border-radius:10px; overflow:hidden; margin-bottom:.45rem; background:var(--card); }
.lu-img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s; }
.lu-img-fb { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; }
.lu-tag { font-size:.52rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:.2rem; }
.lu-title { font-size:.74rem; font-weight:600; line-height:1.35; color:var(--text); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.lu-time { font-size:.62rem; color:var(--muted); margin-top:.2rem; }
.lu-arrow {
  flex-shrink:0; width:34px; height:34px;
  background:var(--border2); border:1px solid var(--border);
  border-radius:50%; color:var(--text); font-size:1.2rem; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s;
}
.lu-arrow:hover { background:var(--em-bg); border-color:var(--em); color:var(--em); }
@media(min-width:900px){ .lu-arrow { display:none; } }

/* ── LO MÁS LEÍDO ──────────────────────────────────────────────────── */
.mas-leido-section { max-width:1200px; margin:0 auto 1.5rem; padding:0 1rem; }
.mas-leido-list { display:flex; flex-direction:column; gap:.55rem; }
.ml-card {
  display:flex; align-items:center; gap:.85rem;
  background:var(--card); border:1px solid var(--border); border-radius:12px;
  overflow:hidden; cursor:pointer; transition:border-color .2s,transform .2s; padding:.5rem;
}
.ml-card:hover { border-color:var(--em-bd); transform:translateX(3px); }
.ml-num {
  font-family:'Teko',sans-serif; font-size:2rem; font-weight:700;
  color:rgba(0,245,212,.25); line-height:1; min-width:32px;
  text-align:center; flex-shrink:0;
}
.ml-img-wrap { width:72px; height:52px; border-radius:8px; overflow:hidden; flex-shrink:0; background:var(--card); }
.ml-img-wrap img { width:100%; height:100%; object-fit:cover; display:block; }
.ml-img-fb { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:1.4rem; }
.ml-body { flex:1; min-width:0; }
.ml-title { font-size:.78rem; font-weight:600; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ml-meta { font-size:.6rem; color:var(--muted); margin-top:.2rem; }
.ml-views { display:flex; align-items:center; gap:.25rem; }
.ml-views i { font-size:.55rem; color:var(--em); opacity:.7; }
/* ── MODAL DE ESTADÍSTICAS DE PARTIDO (En Directo / Finalizados) ─── */
.mrow-click { cursor:pointer; transition:background .15s; border-radius:6px; }
.mrow-click:hover { background:rgba(0,245,212,.06); }

#statsModal .modal-box { max-width:600px; max-height:82vh; overflow-y:auto; }

.stats-header { display:flex; justify-content:center; margin-bottom:.75rem; }
.stats-live-badge {
  display:inline-flex; align-items:center; gap:.35rem; font-size:.65rem; font-weight:700;
  letter-spacing:.5px; color:#ef4444; background:rgba(239,68,68,.1);
  border:1px solid rgba(239,68,68,.25); padding:.25rem .6rem; border-radius:20px;
}
.stats-fin-badge {
  font-size:.65rem; font-weight:700; letter-spacing:.5px; color:var(--muted2);
  background:var(--border2); border:1px solid var(--border);
  padding:.25rem .6rem; border-radius:20px;
}

/* Header con banderas de ambos equipos, reutilizado en Alineaciones y Estadísticas */
.stats-teams-header {
  display:flex; align-items:center; justify-content:space-between; gap:.5rem;
  margin-bottom:1rem; padding-bottom:.85rem; border-bottom:1px solid var(--border);
}
.sth-team { display:flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:700; color:var(--text); }
.sth-team-r { flex-direction:row-reverse; }
.sth-vs { font-size:.62rem; color:var(--muted); font-weight:700; }
.stats-teams-header .fi { border-radius:3px; width:1.2em; }

.stats-tabs {
  display: flex;
  overflow-x: auto;
  flex-wrap: nowrap !important;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.stats-tabs::-webkit-scrollbar { display: none; }
.stats-tabs .stats-tab {
  flex-shrink: 0;
}
.stats-tab {
  background:transparent; border:1px solid var(--border); color:var(--muted);
  padding:.4rem 1rem; border-radius:20px; font-size:.72rem; font-weight:600;
  cursor:pointer; transition:all .2s; font-family:'Inter',sans-serif;
}
.stats-tab:hover { color:var(--muted2); }
.stats-tab.active { background:var(--emerald); color:var(--bg); border-color:var(--emerald); }

.stats-panel { display:none; }
.stats-panel.active { display:block; }

/* ── Resumen: eventos con icono ─────────────────────────────────── */
.stats-events { display:flex; flex-direction:column; gap:.15rem; max-height:360px; overflow-y:auto; }
.stats-event {
  display:flex; align-items:flex-start; gap:.65rem;
  padding:.6rem 0; border-bottom:1px solid var(--border2);
}
.se-icon {
  width:28px; height:28px; border-radius:50%; flex-shrink:0;
  display:flex; align-items:center; justify-content:center; font-size:.72rem;
}
.se-icon.ev-goal { background:rgba(0,245,212,.12); color:var(--emerald); }
.se-icon.ev-goal-missed { background:rgba(148,163,184,.12); color:var(--muted2); }
.se-icon.ev-subst { background:rgba(59,130,246,.12); color:#3b82f6; }
.se-icon.ev-var { background:rgba(148,163,184,.12); color:var(--muted2); }
.se-icon.ev-otro { background:rgba(148,163,184,.1); color:var(--muted); }
.se-icon-card { background:var(--border2); }
.ev-card { width:11px; height:15px; border-radius:2px; display:inline-block; }
.ev-card-yellow { background:#eab308; }
.ev-card-red { background:#ef4444; }

.se-body { flex:1; min-width:0; }
.se-top { display:flex; align-items:center; gap:.35rem; font-size:.68rem; color:var(--muted2); margin-bottom:.15rem; }
.se-min-badge { color:var(--emerald); font-weight:700; }
.se-top .fi { border-radius:2px; width:1.1em; }
.se-team { font-weight:600; color:var(--muted2); }
.se-desc { font-size:.8rem; color:var(--text); line-height:1.3; }

/* ── Alineaciones: campo táctico ──────────────────────────────── */
.pitch-venue {
  display:flex; align-items:center; gap:.35rem; justify-content:center;
  font-size:.72rem; color:var(--muted); margin-bottom:.5rem;
}
.pitch-formations {
  display:flex; justify-content:space-between; align-items:flex-start; padding:0 .25rem .6rem;
}
.pitch-form-side { display:flex; flex-direction:column; gap:.15rem; }
.pitch-form-side-r { align-items:flex-end; text-align:right; }
.pitch-form-num { font-size:.72rem; font-weight:700; color:var(--muted2); letter-spacing:.5px; }
.pitch-form-coach { font-size:.62rem; color:var(--muted); }
.pitch-wrap {
  position:relative; width:100%; aspect-ratio:2/3; max-height:560px;
  border-radius:14px; overflow:hidden; margin-bottom:1rem;
  border:1px solid var(--border);
  background:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(180deg, #0c3a22 0%, #0f4c2c 50%, #0c3a22 100%);
  background-size: 100% 11.11%, 12.5% 100%, 100% 100%;
}
.pitch-markings { position:absolute; inset:0; pointer-events:none; }
.pitch-markings::before {
  content:''; position:absolute; top:50%; left:0; right:0; height:2px;
  background:rgba(255,255,255,.4); transform:translateY(-1px);
}
.pitch-markings::after {
  content:''; position:absolute; top:50%; left:50%; width:90px; height:90px;
  border:2px solid rgba(255,255,255,.4); border-radius:50%; transform:translate(-50%,-50%);
}
.pitch-box { position:absolute; left:50%; width:56%; height:11%; border:2px solid rgba(255,255,255,.35); transform:translateX(-50%); }
.pitch-box-top { top:0; border-top:none; }
.pitch-box-bottom { bottom:0; border-bottom:none; }

.pitch-team { position:absolute; left:0; right:0; height:47%; display:flex; flex-direction:column; }
.pitch-team-home { top:0; }
.pitch-team-away { bottom:0; }
.pitch-line { display:flex; justify-content:space-evenly; align-items:center; flex:1; padding:.15rem .3rem; }
.pitch-line-gk { flex:0 0 auto; padding-bottom:.3rem; }
.pitch-team-home .pitch-line-gk { padding-bottom:0; padding-top:.3rem; }

.pchip { display:flex; flex-direction:column; align-items:center; gap:.2rem; width:15%; min-width:42px; position:relative; }
.pchip-av {
  width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-size:.64rem; font-weight:800; color:#fff; box-shadow:0 2px 6px rgba(0,0,0,.4);
  border:2px solid rgba(255,255,255,.9); position:relative; flex-shrink:0;
}
.pchip-av.home { background:var(--emerald); color:#02111d; }
.pchip-av.away { background:#3151b0; }
.pchip-name {
  font-size:.55rem; font-weight:700; color:#fff; text-align:center; line-height:1.15;
  text-shadow:0 1px 3px rgba(0,0,0,.85); max-width:58px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.pchip-badge {
  position:absolute; top:-5px; right:-4px; width:15px; height:15px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:.58rem; line-height:1;
  background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.5);
}

.pitch-subs { margin-top:.25rem; }
.pitch-subs-title-main {
  display:flex; align-items:center; gap:.4rem; font-size:.7rem; font-weight:700;
  color:var(--muted); text-transform:uppercase; letter-spacing:1px; margin-bottom:.6rem;
}
.pitch-subs-cols { display:grid; grid-template-columns:1fr 1fr; gap:0 1rem; }
.pitch-subs-title {
  font-size:.68rem; font-weight:700; color:var(--em); margin-bottom:.4rem;
  padding-bottom:.3rem; border-bottom:1px solid var(--border);
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.pitch-subs-col:last-child .pitch-subs-title { text-align:right; }
.pitch-sub-row {
  display:flex; align-items:center; gap:.5rem; padding:.28rem 0;
  border-bottom:1px solid var(--border2); font-size:.76rem; color:var(--text2);
}
.pitch-subs-col:last-child .pitch-sub-row { flex-direction:row-reverse; text-align:right; }
.pitch-sub-num {
  width:20px; height:20px; border-radius:50%; background:var(--border2);
  display:flex; align-items:center; justify-content:center; font-size:.62rem;
  font-weight:800; color:var(--muted2); flex-shrink:0;
}
.pitch-sub-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pitch-sub-badge { margin-left:4px; font-size:.7rem; flex-shrink:0; }

@media(max-width:400px){
  .pchip-name { display:none; }
  .pitch-wrap { max-height:460px; }
  .pitch-subs-cols { gap:0 .5rem; }
}


/* ── Estadísticas: filas con barra de progreso comparativa ──────── */
.stats-grid { display:flex; flex-direction:column; gap:.9rem; }
.stats-parte-selector { display:flex; gap:.4rem; justify-content:center; flex-wrap:wrap; margin:0 0 .9rem; }
.stats-parte-btn {
  background:transparent; border:1px solid var(--border); color:var(--muted);
  padding:.32rem .85rem; border-radius:20px; font-size:.68rem; font-weight:600;
  cursor:pointer; transition:all .2s; font-family:'Inter',sans-serif;
}
.stats-parte-btn:hover { color:var(--muted2); }
.stats-parte-btn.active { background:var(--em-bg); border-color:var(--em-bd); color:var(--em); }
.stats-row-top { display:grid; grid-template-columns:56px 1fr 56px; align-items:center; gap:.5rem; font-size:.75rem; text-align:center; margin-bottom:.3rem; }
.stats-label { color:var(--muted2); font-size:.68rem; }
.stats-val { font-weight:700; color:var(--text); }
.stats-bar {
  display:flex; width:100%; height:6px; border-radius:4px; overflow:hidden;
  background:var(--border2);
}
.stats-bar-home { background:var(--emerald); height:100%; transition:width .3s ease; }
.stats-bar-away { background:#f97316; height:100%; transition:width .3s ease; }

@media(max-width:500px){
  #statsModal .modal-box { padding:1.5rem 1.1rem; }
  .stats-event { gap:.5rem; }
  .se-desc { font-size:.75rem; }
}
  /* ═══════════════════════════════════════════════════════════════ */
  /* NOTICIAS — OPCIÓN C (sin fotos, texto editorial)               */
  /* ═══════════════════════════════════════════════════════════════ */

  /* Ocultar imágenes en todas las news cards */
  .hero-card-img, .hero-img-wrap, .c-slide img, .nc-img-wrap,
  .small-img-wrap, .ed-feat-img, .ed-sm-img,
  .nc-feat-img, .la-hero img, .la-item-img { display:none !important; }
  .hero-fb, .nc-img-fb, .small-fb, .nc-feat-img-fb { display:none !important; }

  /* Hero de noticias — sin imagen, solo texto con acento izquierdo */
  .hero-card{
    background:var(--card);border:1px solid var(--border);border-radius:14px;
    overflow:hidden;cursor:pointer;padding:1.1rem 1.1rem 1.1rem 1.3rem;
    border-left:4px solid var(--em);margin-bottom:.65rem;
    transition:border-color .2s;aspect-ratio:unset;
  }
  .hero-card:hover{border-color:var(--em);}
  .hero-overlay{display:none;}
  .hero-body{position:static;padding:0;}
  .hero-tag{display:inline-flex;background:var(--em-bg);border:1px solid var(--em-bd);
    color:var(--em);font-size:.48rem;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;padding:.1rem .4rem;border-radius:3px;margin-bottom:.45rem;}
  .hero-title{font-family:'Teko',sans-serif;font-size:1.35rem;font-weight:700;
    line-height:1.1;color:var(--text);margin-bottom:.35rem;}
  .hero-time{font-size:.6rem;color:var(--muted);}

  /* Small cards de sección editorial */
  .small-card{
    display:flex;align-items:flex-start;gap:.75rem;padding:.7rem .9rem;
    background:var(--card);border:1px solid var(--border);border-radius:11px;
    cursor:pointer;margin-bottom:.5rem;transition:border-color .2s;
  }
  .small-card:hover{border-color:var(--em-bd);}
  .small-body{flex:1;}
  .small-title{font-size:.78rem;font-weight:600;line-height:1.36;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .small-time{font-size:.6rem;color:var(--muted);margin-top:.2rem;}

  /* nc cards (grid más noticias) */
  .nc{background:var(--card);border:1px solid var(--border);border-radius:13px;
    overflow:hidden;padding:.75rem 1rem;cursor:pointer;border-left:3px solid var(--border);
    transition:border-color .2s;text-align:left;color:var(--text);}
  .nc:hover{border-left-color:var(--em);}
  .nc-body{padding:0;}
  .nc-title{font-size:.8rem;font-weight:600;line-height:1.38;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .nc-time{font-size:.6rem;color:var(--muted);margin-top:.3rem;}

  /* Número grande de artículo (estilo periódico) */
  .nc::before{
    content:attr(data-num);
    font-family:'Teko',sans-serif;font-size:2rem;font-weight:700;
    color:var(--border);float:right;line-height:1;margin-left:.5rem;
  }

  /* Featured nc (primero del grid) */
  .nc-featured{
    background:var(--card);border:1px solid var(--border);border-radius:14px;
    padding:1rem 1.1rem 1rem 1.3rem;cursor:pointer;border-left:4px solid var(--em);
    margin-bottom:.65rem;grid-column:1/-1;transition:border-color .2s;
  }
  .nc-featured:hover{border-left-color:var(--em);}
  .nc-feat-body{padding:0;}
  .nc-feat-title{font-family:'Teko',sans-serif;font-size:1.2rem;font-weight:700;
    line-height:1.1;margin-bottom:.35rem;}
  .nc-feat-excerpt{font-size:.76rem;color:var(--muted2);line-height:1.5;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    margin-bottom:.35rem;}
  .nc-feat-meta{font-size:.6rem;color:var(--muted);}

  /* ═══════════════════════════════════════════════════════════════ */
  /* COMUNIDAD                                                       */
  /* ═══════════════════════════════════════════════════════════════ */

  .com-loading{
    display:flex;align-items:center;justify-content:center;gap:.6rem;
    padding:3rem 1rem;color:var(--muted);font-size:.82rem;
  }
  .com-loading i{color:var(--em);}

  /* Section header comunidad */
  .com-sec-hdr{display:flex;align-items:center;justify-content:space-between;
    padding:1rem 1rem .75rem;position:sticky;top:0;z-index:5;
    background:var(--surface);backdrop-filter:blur(10px);}
  .com-sec-left{display:flex;align-items:center;gap:.55rem;}
  .com-accent{width:3px;height:20px;background:var(--em);border-radius:2px;
    box-shadow:0 0 8px var(--glow);flex-shrink:0;}
  .com-title{font-family:'Teko',sans-serif;font-size:1.2rem;font-weight:700;letter-spacing:.3px;}
  .com-sub{font-size:.6rem;color:var(--muted);}

  /* Tabs Próximos / Resultados */
  .com-sub-tabs{display:flex;border-bottom:1px solid var(--border);margin:0 1rem .75rem;}
  .com-sub-tab{flex:1;padding:.6rem 0;text-align:center;font-size:.7rem;font-weight:700;
    color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;
    background:none;border-left:none;border-right:none;border-top:none;
    transition:color .2s,border-color .2s;letter-spacing:.3px;}
  .com-sub-tab.active{color:var(--em);border-bottom-color:var(--em);}

  /* Tabs torneos (scroll horizontal para privados) */
  .torneo-tabs{display:flex;gap:.45rem;overflow-x:auto;padding:.5rem 1rem .65rem;
    scrollbar-width:none;}
  .torneo-tabs::-webkit-scrollbar{display:none;}
  .torneo-tab{flex-shrink:0;background:var(--card);border:1px solid var(--border);
    border-radius:20px;padding:.35rem .85rem;font-size:.7rem;font-weight:600;
    color:var(--muted2);cursor:pointer;white-space:nowrap;transition:all .2s;
    display:flex;align-items:center;gap:.35rem;}
  .torneo-tab.active{background:var(--em-bg);border-color:var(--em-bd);color:var(--em);}

  /* Grupo de fecha */
  .com-date-group{margin:0 1rem .5rem;}
  .com-date-hdr{
    display:flex;align-items:center;justify-content:space-between;
    padding:.5rem .75rem;background:var(--card2);border:1px solid var(--border);
    border-radius:10px;cursor:pointer;margin-bottom:.5rem;transition:background .2s;
  }
  .com-date-hdr:hover{background:var(--border2);}
  .com-date-label{font-size:.72rem;font-weight:700;color:var(--text);
    display:flex;align-items:center;gap:.4rem;}
  .com-date-dot{width:6px;height:6px;border-radius:50%;background:var(--em);flex-shrink:0;}
  .com-date-count{font-size:.6rem;color:var(--muted);}
  .com-date-arrow{font-size:.65rem;color:var(--muted);transition:transform .2s;}
  .com-date-hdr.open .com-date-arrow{transform:rotate(180deg);}
  .com-date-body{display:none;}
  .com-date-body.open{display:block;}

  /* Partido card (comunidad) */
  .com-match{background:var(--card);border:1px solid var(--border);
    border-radius:14px;overflow:hidden;margin-bottom:.6rem;transition:border-color .2s;}
  .com-match:hover{border-color:var(--em-bd);}
  .com-match-top{padding:.7rem 1rem .6rem;}
  .com-match-comp{font-size:.5rem;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;}
  .com-teams{display:flex;align-items:center;gap:.5rem;}
  .com-team{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;}
  .com-team-name{font-size:.75rem;font-weight:700;text-align:center;}
  .com-center{text-align:center;min-width:78px;}
  .com-vs{font-family:'Teko',sans-serif;font-size:1.05rem;color:var(--muted);display:block;}
  .com-time{font-size:.78rem;font-weight:800;color:var(--em);display:block;}
  .com-date-sm{font-size:.58rem;color:var(--muted);display:block;}
  .com-closing{font-size:.52rem;color:#f59e0b;display:inline-flex;align-items:center;
    gap:.2rem;margin-top:.2rem;background:rgba(245,158,11,.08);
    border:1px solid rgba(245,158,11,.18);padding:.1rem .4rem;border-radius:3px;}

  /* Análisis */
  .com-analisis{padding:.65rem 1rem;border-top:1px solid var(--border2);
    background:rgba(0,245,212,.02);}
  .com-analisis-hdr{display:flex;align-items:center;gap:.35rem;margin-bottom:.45rem;}
  .com-analisis-badge{font-size:.48rem;font-weight:700;letter-spacing:1px;
    text-transform:uppercase;background:var(--em-bg);border:1px solid var(--em-bd);
    color:var(--em);padding:.1rem .4rem;border-radius:3px;}
  .com-analisis-txt{font-size:.72rem;color:var(--muted2);line-height:1.55;
    border-left:2px solid var(--em);padding-left:.65rem;}

  /* Stats del análisis */
  .com-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;
    padding:.6rem 1rem;border-top:1px solid var(--border2);}
  .com-stat{background:var(--border2);border-radius:8px;
    padding:.45rem .5rem;text-align:center;}
  .com-stat-val{font-family:'Teko',sans-serif;font-size:1.05rem;font-weight:700;
    color:var(--text);line-height:1;}
  .com-stat-lbl{font-size:.5rem;color:var(--muted);margin-top:.1rem;line-height:1.3;}

  /* Predicciones comunidad */
  .com-pred{padding:.65rem 1rem .75rem;border-top:1px solid var(--border2);}
  .com-pred-hdr{font-size:.55rem;font-weight:700;letter-spacing:1px;
    text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;}
  .com-pred-row{display:flex;justify-content:space-between;margin-bottom:.4rem;}
  .com-pred-lbl{text-align:center;flex:1;}
  .com-pred-opt{font-size:.62rem;font-weight:600;color:var(--muted2);display:block;}
  .com-pred-pct{font-family:'Teko',sans-serif;font-size:1.25rem;font-weight:700;
    line-height:1;display:block;}
  .com-pred-bars{display:flex;height:7px;border-radius:4px;overflow:hidden;
    gap:2px;margin-bottom:.5rem;}
  .com-bar{border-radius:3px;transition:width .4s;}
  .com-bar-1{background:linear-gradient(90deg,#3b82f6,#60a5fa);}
  .com-bar-x{background:#334155;}
  .com-bar-2{background:linear-gradient(90deg,#dc2626,#ef4444);}
  .com-pred-footer{display:flex;align-items:center;justify-content:space-between;}
  .com-pred-total{font-size:.6rem;color:var(--muted);display:flex;align-items:center;gap:.25rem;}
  .com-pred-total i{color:var(--em);font-size:.55rem;}
  .diff-badge{font-size:.5rem;font-weight:700;padding:.1rem .35rem;border-radius:3px;}
  .diff-easy{background:rgba(34,197,94,.1);color:#4ade80;border:1px solid rgba(34,197,94,.2);}
  .diff-med{background:rgba(245,158,11,.1);color:#fbbf24;border:1px solid rgba(245,158,11,.2);}
  .diff-hard{background:rgba(239,68,68,.1);color:#f87171;border:1px solid rgba(239,68,68,.2);}

  /* Botón de pronóstico — 3 estados */
  .com-action{padding:.5rem 1rem .75rem;border-top:1px solid var(--border2);}
  .com-btn-register{
    display:flex;align-items:center;justify-content:center;gap:.4rem;
    width:100%;padding:.55rem;border-radius:9px;font-size:.74rem;font-weight:700;
    background:var(--em-bg);border:1px solid var(--em-bd);color:var(--em);
    text-decoration:none;transition:background .2s;
  }
  .com-btn-register:hover{background:rgba(0,245,212,.12);}
  .com-btn-predict{
    display:flex;align-items:center;justify-content:center;gap:.4rem;
    width:100%;padding:.55rem;border-radius:9px;font-size:.74rem;font-weight:700;
    background:var(--em);color:#020617;border:none;cursor:pointer;
    text-decoration:none;transition:opacity .2s;
  }
  .com-btn-predict:hover{opacity:.88;}
  .com-my-pred{
    background:rgba(0,245,212,.05);border:1px solid rgba(0,245,212,.12);
    border-radius:9px;padding:.45rem .8rem;
    display:flex;align-items:center;justify-content:space-between;
  }
  .com-my-pred-lbl{font-size:.58rem;color:var(--muted);}
  .com-my-pred-val{font-size:.76rem;font-weight:700;color:var(--em);}
  .com-my-pred-btn{
    font-size:.62rem;font-weight:700;color:var(--em);
    background:var(--em-bg);border:1px solid var(--em-bd);
    padding:.22rem .65rem;border-radius:6px;cursor:pointer;
    text-decoration:none;white-space:nowrap;
  }

  /* Partido finalizado */
  .com-result-score{
    font-family:'Teko',sans-serif;font-size:2rem;font-weight:700;
    color:var(--text);letter-spacing:2px;display:block;line-height:1;
  }
  .com-result-sub{font-size:.52rem;color:var(--muted);}
  .com-accuracy{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;
    font-size:.68rem;color:var(--muted2);}
  .com-accuracy-pct{font-family:'Teko',sans-serif;font-size:1.1rem;font-weight:700;}
  .com-my-result-ok{color:#4ade80;}
  .com-my-result-fail{color:#f87171;}

  /* Ranking */
  .com-ranking{margin:0 1rem 1rem;background:var(--card);
    border:1px solid var(--border);border-radius:14px;overflow:hidden;}
  .com-ranking-hdr{padding:.65rem 1rem;border-bottom:1px solid var(--border2);
    display:flex;align-items:center;justify-content:space-between;}
  .com-ranking-title{font-family:'Teko',sans-serif;font-size:1rem;font-weight:700;}
  .com-ranking-link{font-size:.62rem;color:var(--em);text-decoration:none;}
  .com-rank-item{display:flex;align-items:center;gap:.6rem;
    padding:.5rem 1rem;border-bottom:1px solid var(--border2);}
  .com-rank-item:last-child{border-bottom:none;}
  .com-rank-item.me{background:rgba(0,245,212,.04);}
  .com-rank-pos{font-family:'Teko',sans-serif;font-size:.95rem;font-weight:700;
    color:var(--muted);min-width:18px;text-align:center;}
  .com-rank-pos.g{color:#f59e0b;}
  .com-rank-pos.s{color:#94a3b8;}
  .com-rank-pos.b{color:#b87333;}
  .com-rank-pos.e{color:var(--em);}
  .com-rank-avatar{width:26px;height:26px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:.6rem;font-weight:700;color:#fff;flex-shrink:0;}
  .com-rank-info{flex:1;}
  .com-rank-user{font-size:.75rem;font-weight:600;}
  .com-rank-detail{font-size:.56rem;color:var(--muted);}
  .com-rank-pts{font-family:'Teko',sans-serif;font-size:.95rem;font-weight:700;color:var(--em);}
  .com-rank-sep{height:1px;background:rgba(0,245,212,.12);margin:0 1rem;}

  /* Sin torneos */
  .com-empty{text-align:center;padding:3rem 1rem;color:var(--muted);}
  .com-empty i{font-size:2rem;display:block;margin-bottom:.75rem;color:var(--em);opacity:.4;}
  .com-empty p{font-size:.8rem;line-height:1.6;margin-bottom:.75rem;}
  .com-empty a{color:var(--em);text-decoration:none;font-weight:700;}
@media(min-width:700px){
  #panel-comunidad { max-width:700px !important; margin:0 auto !important; }
  #panel-noticias  { max-width:700px !important; margin:0 auto !important; }
  #comContent > * { max-width:700px; margin-left:auto; margin-right:auto; }
}

  /* Ocultar fotos en toda la sección Noticias (Opción C) */
  #panel-noticias .lu-img-wrap,
  #panel-noticias .lu-img,
  #panel-noticias .dest-img-wrap,
  #panel-noticias .dest-card > img,
  #panel-noticias .mas-l-img,
  #panel-noticias .top-hero,
  #topHero { display:none !important; }

  /* Ajustar lu-card sin imagen */
  #panel-noticias .lu-card { min-width:160px; max-width:200px; }
  #panel-noticias .dest-card { padding:.9rem 1rem; background:var(--card); border:1px solid var(--border); border-radius:13px; }

  /* Más noticias — Opción C: ocultar todas las imágenes de los bloques A/B/C */
  #panel-noticias .nga-feat-img,
  #panel-noticias .nga-feat-img-fb,
  #panel-noticias .nga-sm-img,
  #panel-noticias .nga-sm-img-fb,
  #panel-noticias .ngb-img,
  #panel-noticias .ngb-img-fb,
  #panel-noticias .ngb-img-tall,
  #panel-noticias .ngb-img-sq,
  #panel-noticias .ngc-feat-img,
  #panel-noticias .ngc-feat-img-fb,
  #panel-noticias .ngc-sm-img,
  #panel-noticias .ngc-sm-img-fb { display:none !important; }

  /* Ajustar cards sin imagen para que no queden con espacio vacío */
  #panel-noticias .ngc-horiz { min-height:auto; }
  #panel-noticias .nga-feat-body { padding-top:1rem; }