
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#d8d8d8;color:#222;font-size:13px}

/* Banner top */
.top-banner{width:100%;height:90px;background:linear-gradient(135deg,#013369 0%,#0a1628 50%,#8b0000 100%);display:flex;align-items:center;justify-content:center}
.banner-logo{color:#fff;font-size:1.9rem;font-weight:900;text-decoration:none;letter-spacing:2px;font-family:'Arial Black',sans-serif}
.banner-logo span{color:#00d4ff}

/* Barra de nav */
header{background:#1a1a2e;border-bottom:1px solid #0d2244}
.header-inner{max-width:900px;margin:0 auto;display:flex;align-items:stretch;height:32px}
.nav-home{color:#fff;text-decoration:none;font-size:1rem;padding:0 12px;display:flex;align-items:center;background:#0d2244;border-right:1px solid #1a3a6a}
.nav-fecha{color:#ccc;font-size:0.8rem;padding:0 12px;display:flex;align-items:center;background:#0d2244;border-right:1px solid #1a3a6a;white-space:nowrap}
nav{display:flex}
nav a{color:#aac;text-decoration:none;font-size:0.82rem;padding:0 14px;display:flex;align-items:center;border-right:1px solid #0d2244}
nav a:hover{color:#fff;background:#0d2244}

.page-wrap{max-width:860px;margin:10px auto;padding:8px 8px 16px}
main{width:100%}

/* Feed centrado */
.feed{max-width:860px;margin:0 auto}

/* Bloques por día */
.dia-bloque{margin-bottom:6px;border-radius:4px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.dia-header{background:#b5463a;color:#fff;padding:5px 12px;display:flex;gap:10px;align-items:center}
.dia-nombre{font-weight:700;font-size:0.85rem}
.dia-fecha{font-size:0.85rem;font-weight:400}

/* Tabla partidos */
.partidos-tabla{width:100%;border-collapse:collapse;background:#fff}
.partido-row{border-bottom:1px solid #ececec}
.partido-row:last-child{border:none}
.partido-row:hover{background:#f7f9ff}
.partido-row td{padding:6px 8px;white-space:nowrap;vertical-align:middle}

/* Columnas */
.tipo-col{width:44px;text-align:center;padding:0 6px!important}
.team-vis{width:35%;font-weight:700;color:#1a3a6a;text-align:right;padding-right:10px!important}
.team-vis a,.team-loc a{color:inherit;text-decoration:none}
.team-vis a:hover,.team-loc a:hover{text-decoration:underline}
.centro-col{width:72px;text-align:center;padding:0!important}
.team-loc{width:35%;font-weight:700;color:#1a3a6a;padding-left:10px!important}
.canal-col{width:150px;color:#c0392b;font-size:0.76rem;font-weight:600;text-align:right;padding-right:6px!important}
.gcal-col{width:26px;padding:0 6px 0 0!important;text-align:center}
.gcal-btn{display:inline-flex;align-items:center;opacity:0.7;transition:opacity .15s}
.gcal-btn:hover{opacity:1}

.hora-txt{font-weight:700;font-size:0.83rem;color:#111}
.marcador-final{color:#777;font-size:0.8rem;font-weight:600}
.live{color:#d32f2f;font-weight:700;font-size:0.76rem;animation:pulse 1s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}
.libre-badge{display:inline-block;background:#e8f5e9;color:#2e7d32;font-size:0.68rem;font-weight:700;padding:1px 5px;border-radius:3px;border:1px solid #a5d6a7;margin-left:4px;vertical-align:middle}

/* Títulos */
.page-title{font-size:1.2rem;font-weight:800;color:#1a1a2e;margin:8px 0 4px}
.page-desc{color:#666;font-size:0.83rem;margin-bottom:10px}
.section-title{font-size:0.9rem;font-weight:700;color:#1a1a2e;margin:14px 0 6px;padding-bottom:4px;border-bottom:2px solid #1a1a2e}
.empty{color:#999;padding:16px;text-align:center}

/* Banners */
.offseason-banner{background:#fff8e1;border:1px solid #ffe082;border-radius:6px;padding:10px 14px;margin-bottom:10px;display:flex;flex-direction:column;gap:3px}
.offseason-banner strong{color:#e65100;font-size:0.9rem}
.offseason-banner span{color:#666;font-size:0.82rem}
.sb-banner{background:#1a1a2e;color:#fff;border-radius:6px;padding:12px 16px;margin-bottom:10px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sb-label{background:#c9a84c;color:#1a1a2e;font-size:0.72rem;font-weight:800;padding:2px 7px;border-radius:3px;text-transform:uppercase}
.sb-banner strong{font-size:1rem;flex:1}
.sb-ganador{color:#aac;font-size:0.82rem}
.btn-2026{display:inline-block;background:#013369;color:#fff;padding:8px 20px;border-radius:5px;text-decoration:none;font-weight:700;font-size:0.88rem}
.btn-2026:hover{background:#0a2244}

/* Página 2026 */
.fechas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin-bottom:16px}
.fecha-card{background:#fff;border:1px solid #ddd;border-radius:5px;padding:10px;display:flex;flex-direction:column;gap:3px}
.fecha-card.highlight{border-color:#c9a84c;background:#fffbf0}
.fecha-label{font-size:0.7rem;text-transform:uppercase;color:#999;letter-spacing:0.05em}
.fecha-card strong{font-size:0.9rem;color:#1a1a2e}
.fecha-card span{font-size:0.78rem;color:#666}
.canal-badge{display:inline-block;font-size:0.7rem;font-weight:600;padding:1px 6px;border-radius:3px;border:1px solid}

/* Texto SEO */
.seo-text{background:#fff;border-top:2px solid #e8e8e8;margin-top:20px;padding:20px 14px;font-size:0.88rem;line-height:1.7;color:#333}
.seo-text h2{font-size:1.1rem;font-weight:800;color:#1a1a2e;margin:0 0 10px}
.seo-text h3{font-size:0.95rem;font-weight:700;color:#1a1a2e;margin:18px 0 6px;padding-bottom:3px;border-bottom:1px solid #eee}
.seo-text p{margin-bottom:10px}
.seo-text ul{padding-left:18px;margin-bottom:10px}
.seo-text li{margin-bottom:4px}

/* Equipos por división */
.conf-header{display:flex;align-items:center;gap:10px;margin:20px 0 10px;padding:8px 14px;border-radius:6px;border-left:5px solid}
.conf-header.afc{background:#e8f0fc;border-color:#013369}
.conf-header.nfc{background:#fce8e8;border-color:#d50a0a}
.conf-header h2{font-size:1rem;font-weight:800;margin:0;letter-spacing:0.08em}
.conf-header.afc h2{color:#013369}
.conf-header.nfc h2{color:#d50a0a}
.conf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.division-block{background:#fff;border:1px solid #e0e0e0;border-radius:6px;overflow:hidden}
.division-title{font-size:0.75rem;font-weight:700;color:#fff;background:#0d2244;text-transform:uppercase;letter-spacing:0.06em;margin:0;padding:5px 12px}
.equipos-grid{list-style:none;padding:6px 10px;margin:0}
.equipos-grid li{margin-bottom:2px}
.equipos-grid a{display:flex;align-items:center;gap:8px;color:#1a1a2e;text-decoration:none;font-size:0.84rem;padding:3px 2px;border-radius:4px}
.equipos-grid a:hover{background:#f0f4ff;color:#013369}
.equipos-grid img{flex-shrink:0;width:28px;height:28px;object-fit:contain}
footer{background:#111318;margin-top:20px;padding:20px 16px 16px;text-align:center;border-top:1px solid #1e2235}
footer>.footer-inner>p:first-child{color:#3a3f55;font-size:0.72rem;margin-bottom:14px}
.footer-apps{display:flex;justify-content:center;gap:10px;margin:0 0 12px}
.store-badge{display:inline-flex;align-items:center;gap:10px;background:#000;border:1px solid #333;border-radius:10px;padding:8px 18px;text-decoration:none;color:#fff;transition:border-color .2s,background .2s}
.store-badge:hover{background:#111;border-color:#666}
.store-badge svg{flex-shrink:0}
.store-badge .badge-text{display:flex;flex-direction:column;text-align:left;line-height:1.3}
.store-badge .badge-small{font-size:0.6rem;color:#aaa;letter-spacing:0.02em}
.store-badge .badge-big{font-size:0.85rem;font-weight:600;white-space:nowrap}
.footer-contact{margin-top:4px}
.footer-contact a{color:#2d3249;font-size:0.72rem;text-decoration:none}
.footer-contact a:hover{color:#555}

/* Cookie banner */
.cookie-banner{display:none;position:fixed;bottom:0;left:0;right:0;background:#1a1a2e;border-top:2px solid #013369;padding:10px 16px;z-index:999;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cookie-banner p{color:#ccc;font-size:0.8rem;margin:0;flex:1}
.cookie-banner a{color:#4a9eff;text-decoration:none}
.cookie-btns{display:flex;gap:8px;flex-shrink:0}
.btn-accept{background:#013369;color:#fff;border:none;padding:6px 16px;border-radius:4px;font-size:0.8rem;cursor:pointer;font-weight:600}
.btn-accept:hover{background:#0a4a8a}
.btn-reject{background:transparent;color:#888;border:1px solid #444;padding:6px 16px;border-radius:4px;font-size:0.8rem;cursor:pointer}
.btn-reject:hover{color:#ccc;border-color:#888}

/* === RESPONSIVE === */

/* Tablet (≤768px) */
@media(max-width:768px){
  .conf-grid{grid-template-columns:1fr 1fr}
  .canal-col{font-size:0.72rem}
  .page-wrap{padding:6px 6px 16px}
}

/* Mobile (≤600px) */
@media(max-width:600px){
  /* Nav: scroll horizontal, ocultar fecha */
  .header-inner{height:auto;min-height:40px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .header-inner::-webkit-scrollbar{display:none}
  .nav-fecha{display:none}
  .nav-home{padding:0 10px;font-size:1.1rem;flex-shrink:0}
  nav{flex-shrink:0;display:flex}
  nav a{padding:0 12px;height:40px;font-size:0.8rem;flex-shrink:0;white-space:nowrap}
  .nav-long{display:none}
  .nav-short{display:inline}

  /* Banner */
  .top-banner{height:64px}
  .banner-logo{font-size:1.3rem;letter-spacing:1px}

  /* Layout */
  .page-wrap{padding:6px 4px 16px;margin:4px auto}

  /* Tabla partidos */
  .canal-col{display:none}
  .gcal-col{display:none}
  .tipo-col{width:28px;padding:0 3px!important}
  .team-vis{width:38%;padding-right:6px!important;font-size:0.8rem}
  .team-loc{width:38%;padding-left:6px!important;font-size:0.8rem}
  .centro-col{width:56px}
  .partido-row td{white-space:normal;padding:5px 4px}
  .hora-txt{font-size:0.8rem}
  .marcador-final{font-size:0.78rem}

  /* Divisiones */
  .conf-grid{grid-template-columns:1fr}
  .equipos-grid a{font-size:0.82rem}

  /* SEO text */
  .seo-text{padding:14px 10px;font-size:0.84rem}
  .seo-text h2{font-size:1rem}
  .seo-text h3{font-size:0.88rem}

  /* Banners */
  .sb-banner{padding:10px 12px;gap:8px}
  .sb-banner strong{font-size:0.88rem}
  .offseason-banner{padding:8px 12px}
}
