
  :root{
    --font-body: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol",sans-serif;
  }
  html,body{margin:0;padding:0;font-family:var(--font-body);}
  .icon-box{
    width:100%;
    height:40px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
  }
  .icon-box.cw{ background-size:contain; }
  .share-btn{ width:100%; height:40px; display:flex; align-items:center; justify-content:center; }
  .td-share{ padding:2px 4px; }
  .th-share{ padding:2px 4px; }
  .td-time{ font-weight:800; font-size:16px; text-align:left; }



  body.pdf-only #genderFilter,
  body.pdf-only #genderSeg,
  body.pdf-only #searchBox,
  body.pdf-only #catFilter,
  body.pdf-only #catSeg,
  body.pdf-only #results,
  body.pdf-only #timeline,
  body.pdf-only #selPoint,
  body.pdf-only #pager,
  body.pdf-only #exportPdfBtn,
  body.pdf-only table,
  body.pdf-only thead,
  body.pdf-only tbody {
    display: none !important;
  }



:root{ --bg:#000; --card:#0b1220; --line:#233040; --txt:#e5e7eb; --muted:#94a3b8; --accent:#10b981; --accent-d:#064e3b; --detail:#0f1d33; }
html,body{ background:var(--bg); color:var(--txt); font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica, Arial, sans-serif; }
.header{ border-bottom:1px solid #0f172a; background:#000; position:sticky; top:0; z-index:50; }
.wrap{ max-width: 1200px; margin:0 auto; padding:12px; }
@media (max-width: 520px){ .wrap{ max-width: 480px; } }
.logo{ height:36px }
.small{ color:var(--muted); font-size:.9rem }
.card{ background:var(--card); border:1px solid var(--line); border-radius:16px; padding:16px; }
.table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.table{ width:max-content; min-width:100%; table-layout:auto; }
.table{ width:100%; border-collapse:separate; border-spacing:0; }
.th,.td{ text-align:left; border-bottom:1px solid var(--line); padding:.25rem .5rem; vertical-align:middle; }
.tr:nth-child(odd){ background:#0b1220; }
.tr:nth-child(even){ background:#102034; }

/* timeline */
.timeline{ display:flex; align-items:center; justify-content:center; gap:0; overflow-x:auto; padding:6px 0; -webkit-overflow-scrolling: touch; }
.point-wrap{ position:relative; display:flex; align-items:center; }
.point-wrap:not(:last-child)::after{ content:""; display:block; height:2px; width:56px; background:#1f2a3b; margin:0 10px; }
.point{ background:#0b1220; border:1px solid var(--line); color:#a7f3d0; border-radius:999px; padding:.5rem .85rem; font-weight:800; white-space:nowrap; cursor:pointer; font-size:.9rem }
.point.active{ background:var(--accent-d); border-color:var(--accent); }
.point.active::before{ content:"●"; display:inline-block; margin-right:.35rem; }

/* detail */
.details{ background:var(--detail); border:1px solid #22c55e; border-radius:14px; padding:14px; box-shadow: 0 10px 24px rgba(0,0,0,.45); }
.details h4{ font-weight:800; color:#a7f3d0; margin:0 0 6px 0; }

.details-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 6px 0; }
.details-head h4{ margin:0; }
.details-right{ display:flex; align-items:center; gap:10px;  position:relative; }
.cromo-banner{ position:absolute; right:0; top:calc(100% + 10px); display:block; }
.cromo-banner img{ height:126px; width:auto; max-width:100%; display:block; }

@media (max-width: 640px){
  }
.kv{ display:grid; grid-template-columns: 150px 1fr; gap:6px; font-size:.95rem }
.kv div:nth-child(odd){ color:#93c5fd }
.kv div:nth-child(even){ color:#e5e7eb }
.pill{ display:inline-flex; border:1px solid #2dd4bf; color:#99f6e4; background:#0e3b33; border-radius:999px; padding:.2rem .55rem; font-weight:800; font-size:.9rem }
.pill-sm{ display:inline-flex; border:1px solid #64748b; color:#cbd5e1; background:#0b1220; border-radius:999px; padding:.15rem .5rem; font-weight:800; font-size:.75rem }

.tr--highlight{ background:#113c36 !important; }
.row-open{ outline:2px solid #34d399; outline-offset:-2px; }

/* filters */
.filters{ display:grid; grid-template-columns: 1fr auto; gap:16px; align-items:end; }
.filters .group{ display:flex; gap:16px; flex-wrap:wrap; align-items:end; }
.label{ color:var(--muted); font-size:.85rem; }
.select{ background:#000; border:1px solid #334155; color:#e5e7eb; border-radius:10px; padding:.5rem .6rem; min-width:200px; }
.input{ background:#000; border:1px solid #334155; color:#e5e7eb; border-radius:10px; padding:.5rem .6rem; min-width:220px; }
.filters .group > div,
.search-inline-fields .inline-field{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.filters .group > div > .label,
.search-inline-fields .inline-field > .label{
  min-height:18px;
  display:block;
}
.segmented{ display:inline-flex; gap:6px; align-items:center; background:#0b1220; border:1px solid #334155; padding:4px; border-radius:999px; }
.segmented button{ padding:.35rem .8rem; border-radius:999px; font-weight:800; border:1px solid transparent; color:#cbd5e1; background:transparent; }
.segmented a{ display:inline-flex; align-items:center; justify-content:center; padding:.35rem .8rem; border-radius:999px; font-weight:800; border:1px solid transparent; color:#cbd5e1; background:transparent; }
.segmented button.seg-active{ background:#059669; color:#fff; border-color:#047857; box-shadow: 0 0 0 2px rgba(5,150,105,.18) inset; }
.segmented a.seg-active{ background:#059669; color:#fff; border-color:#047857; box-shadow: 0 0 0 2px rgba(5,150,105,.18) inset; }
#modeSegWrap{
  background:linear-gradient(180deg, #111827 0%, #0f172a 100%);
  border-color:#334155;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 6px 18px rgba(0,0,0,.16);
}
#modeSegWrap a{
  min-height:36px;
  min-width:92px;
  color:#d1d5db;
  transition:background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
#modeSegWrap a:hover{
  color:#ffffff;
  background:rgba(255,255,255,.06);
}
#modeSegWrap a:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(34,211,238,.18);
}
#modeSegWrap a.seg-active{
  background:linear-gradient(180deg, #10b981 0%, #059669 100%);
  color:#ffffff;
  border-color:#047857;
  box-shadow:0 0 0 2px rgba(16,185,129,.18) inset, 0 8px 18px rgba(5,150,105,.28);
}

.btn-primary{ background:#059669; border:1px solid #047857; color:#fff; border-radius:10px; padding:.5rem .75rem; font-weight:800; }
.btn-primary:hover{ filter:brightness(1.04); }

/* Barra superior: misma altura y ritmo visual */
#catFilter,
#bibFilter,
#searchBox,
#btnClear{
  min-height:46px;
  border-radius:14px;
}
#catFilter,
#bibFilter,
#searchBox{
  border-width:1px;
}
#btnClear{
  padding:.65rem 1rem;
  box-shadow:0 8px 18px rgba(5,150,105,.18);
}
#catFilter{
  min-width:240px;
}
#searchBox{
  min-width:280px;
}
#bibFilter{
  min-width:220px;
}

@media (max-width: 900px){
  .filters{ grid-template-columns: 1fr; }
}
@media (max-width: 768px){
  .logo{ height:30px }
  .kv{ grid-template-columns: 120px 1fr; }
  .select{ min-width:160px; }
}

/* --- Accesibilidad táctil y mejoras móviles --- */
:root{ --tap-min: 44px; }
button, .btn, .chip, .tab, select, .select{ min-height: var(--tap-min); padding:.6rem 1rem; font-size:1rem; }
.filters .btn, .filters .chip{ margin:.25rem; }
#eventSelect{ font-size:1.15rem; padding:.75rem 1rem; min-height:50px; width:100%; }
.banner{ display:none; padding:.75rem 1rem; border-radius:10px; background:#fff7e6; border:1px solid #ffe2b8; color:#7a3d00; margin:.75rem 0; }
.banner.show{ display:block; }
.empty-state{ display:none; text-align:center; padding:1.25rem; color:#555; }
.empty-state.show{ display:block; }

/* --- Share bar --- */
.sharebar{ display:flex; gap:.5rem; flex-wrap:wrap; align-items:center; margin-top:.75rem; }
.sharebar .shbtn{ display:inline-flex; align-items:center; gap:.5rem; border-radius:12px; padding:.55rem .8rem; border:1px solid #e6e6e6; background:#fff; box-shadow:0 1px 1.5px rgba(0,0,0,.06); cursor:pointer; user-select:none; }
.sharebar .shbtn:hover{ transform:translateY(-1px); box-shadow:0 2px 5px rgba(0,0,0,.08); }
.sharebar .ico{ width:18px; height:18px; display:inline-block; }
.sharebar .sep{ flex-basis:100%; height:0; }
@media (min-width:640px){ .sharebar .sep{ display:none; } }
.sharebar .shbtn.primary{ background:#111; color:#fff; border-color:#111; }
.sharebar .shbtn.ghost{ background:#f8f8f8; }
.th-share{ width:480px; text-align:center; padding:2px 4px; }
.td-share{ text-align:center;  padding:2px 4px;  min-height:44px; display:flex; align-items:center; justify-content:center; }

.share-btn{ background:transparent; border:0; padding:0.15rem; cursor:pointer; }
.share-icon{ display:block; }

/* video column */
.th-video{ width:44px; text-align:center; }
.td-video{ text-align:center; }
.video-btn{ background:transparent; border:0; padding:0.2rem; cursor:pointer; line-height:0; }
.video-icon{ width:18px; height:18px; display:inline-block; vertical-align:middle; fill:#f9fafb; }
.video-icon path{ fill:#f9fafb; }

/* extra */

.seg-loader{font-size:.85rem;opacity:.8;padding:.2rem .4rem;border-radius:6px;border:1px dashed #1db954}
.evt-fade{transition:opacity .2s ease}
.evt-fade[aria-busy="true"]{opacity:.35;pointer-events:none}
.evt-overlay{position:fixed;inset:auto 0 0 auto;right:1rem;bottom:1rem;background:#0b1220cc;color:#cfead9;border:1px solid #1db954;border-radius:10px;padding:.4rem .6rem;font:500 12px/1.1 system-ui, -apple-system, Segoe UI, Roboto}
.evt-overlay.hidden{display:none}
.seg-btn[disabled]{opacity:.5;cursor:wait}

/* -- row height tweak + share styles (minimal) -- */
.th-share{ width:44px; text-align:center; }
.td-share{ text-align:center; }
.share-btn{ background:transparent; border:0; padding:0.2rem; cursor:pointer; }
.share-icon{ display:block; }
.tr .td{ padding-top:2px; padding-bottom:2px; } /* tableRows compact */ /* slightly shorter tableRows */


.share-btn{background:transparent;border:none;padding:0;margin:0;cursor:pointer;line-height:0}
.share-inline .share-icon,.share-inline .share-icon path{fill:#000!important}

/* === Layout en 2 filas (desktop→móvil) === */
.filters{
  display:grid;
  grid-template-columns: repeat(3, minmax(240px, 1fr)); /* Fila 1: Evento · Género · Categoría */
  gap:16px;
  align-items:end;
  grid-auto-tableRows:auto;
}
.filters .group{ display:contents; }
.filters .group > div{ min-width:0; }

/* Fila 2 contenedor (Vista a la izquierda, filtros a la derecha) */
.filters .row2{
  grid-column: 1 / -1;
  display:flex; align-items:end; justify-content:space-between; gap:16px; flex-wrap:wrap;
  margin-top:.25rem;
}

/* Vista (Individual/Equipos) a la izquierda */
.row2 .left{ display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
.row2 .left .label{ font-size:.95rem; color:#9ca3af; }

.row2 .left .segmented{
  display:inline-flex; gap:6px;
  border-radius:999px; padding:4px;
  border:1px solid #334155; background:#0b1220;
}
.row2 .left .segmented button{
  padding:.45rem 1rem; border-radius:999px; font-weight:800;
  border:1px solid transparent; color:#cbd5e1; background:transparent;
  cursor:pointer; min-height:44px; transition:background-color .2s, color .2s;
}
.row2 .left .segmented button.active{
  background:#10b981; color:#001510;
  box-shadow:0 2px 12px rgba(16,185,129,.15), inset 0 0 0 2px rgba(16,185,129,.18);
}

/* Controles a la derecha (Dorsal, Buscar, Borrar) */
.row2 .right{ display:flex; align-items:end; gap:12px; flex-wrap:wrap; margin-left:auto; }
.row2 .right .field{ display:flex; flex-direction:column; gap:6px; min-width:220px; }
.row2 .right .label{ font-size:.85rem; color:#9ca3af; }
#searchBox, #bibFilter, .select, .input, .btn-primary{ min-height:44px }
.search-inline-fields{ display:flex; align-items:end; gap:12px; flex-wrap:nowrap; width:100%; }
#searchDock{
  grid-column:1 / -1;
}
#clearDock{
  display:none;
}
.search-inline-fields .inline-field{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.search-inline-fields .inline-field-search{ flex:1 1 auto; }
.search-inline-fields .inline-field-bib{ flex:0 0 220px; }
.search-inline-fields .inline-field-clear{ flex:0 0 auto; justify-content:flex-end; }
.search-inline-fields .inline-field input{ width:100%; }
.search-inline-fields .inline-field-clear .btn-primary{ min-height:44px; white-space:nowrap; }
.select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  padding-right:2.4rem;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M5 7.5L10 12.5L15 7.5' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;
  background-position:right .8rem center;
  background-size:16px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.select::-ms-expand{ display:none; }
.select:hover{ border-color:#475569; }
.select:focus{
  outline:none;
  border-color:#22d3ee;
  box-shadow:0 0 0 3px rgba(34,211,238,.15);
}
#catFilter{
  min-width:220px;
  background-color:#0b1220;
  border-radius:14px;
  font-weight:700;
}
.category-inline-tools{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.category-inline-tools #catFilter{
  flex:0 1 240px;
}
.category-inline-tools #modeSegWrap{
  flex:0 0 auto;
}
#modeSegWrap{
  min-height:46px;
  padding:4px;
  border-radius:14px;
}
#modeSegWrap a{
  min-height:36px;
  border-radius:10px;
}
#exportBlock{
  justify-self:end;
}
.event-loading-notice{
  display:none;
  margin-top:10px;
  padding:10px 14px;
  border-radius:12px;
  background:#059669;
  color:#ffffff;
  font-weight:800;
  width:100%;
  box-sizing:border-box;
  justify-content:center;
}
.event-loading-notice.show{ display:inline-flex; align-items:center; }

/* Buscador con icono */
#searchBox{
  background-repeat:no-repeat; background-position:10px 50%; background-size:18px;
  padding-left:40px; border-radius:10px; transition:border-color .2s, box-shadow .2s;
  background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%238aa1b1'>\
<path d='M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16a6.471 6.471 0 0 0 4.23-1.57l.27.28v.79L20 21.5 21.5 20l-6-6zM9.5 14C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/>\
</svg>");
}
#searchBox:focus{ outline:none; border-color:#22d3ee; box-shadow:0 0 0 3px rgba(34,211,238,.15); }

/* Responsive */
@media (max-width:1100px){
  .filters{ grid-template-columns: repeat(2, minmax(220px, 1fr)); }
}
@media (max-width:900px){
  .filters{ grid-template-columns: 1fr; }
  .filters .row2{ flex-direction:column; align-items:stretch }
  .row2 .right{ margin-left:0 }
  .search-inline-fields{ flex-wrap:wrap; }
  .search-inline-fields .inline-field-bib,
  .search-inline-fields .inline-field-search,
  .search-inline-fields .inline-field-clear{ flex:1 1 100%; }
}

/* Layout final de filtros: 1a fila genero | categoria | exportar ; 2a fila buscadores */
.filters{
  display:grid;
  grid-template-columns:minmax(320px, 1fr) minmax(220px, auto) auto auto;
  gap:16px 16px;
  align-items:end;
}
.filters .group{
  display:contents !important;
}
.filters .group > div:first-child{
  grid-column:1 / -1;
}
#genderBlock{ grid-column:1; }
#categoryBlock{ grid-column:2; }
#viewBlock{ grid-column:3; }
#exportBlock{ grid-column:4; }
#searchDock{ grid-column:1 / -1; }
#filterBadge{ grid-column:1 / -1; }

@media (max-width:900px){
  .filters{
    grid-template-columns:1fr;
  }
  #genderBlock,
  #categoryBlock,
  #viewBlock,
  #exportBlock,
  #searchDock,
  #filterBadge{
    grid-column:1;
  }
}

/* Mejoras específicas para móvil */
@media (max-width:768px){
  .wrap{ padding:10px; }
  .card{ padding:12px; border-radius:14px; }
  .filters{ gap:12px !important; }
  #genderBlock .flex{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  #genderSeg,
  #modeSegWrap{
    width:100%;
    overflow-x:auto;
    justify-content:flex-start;
  }
  #viewBlock{
    width:100%;
  }
  #categoryBlock .select,
  #exportBlock .btn-primary{
    width:100%;
  }
  .search-inline-fields{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  .search-inline-fields .inline-field-bib,
  .search-inline-fields .inline-field-search,
  .search-inline-fields .inline-field-clear{
    flex:1 1 100%;
  }
  .search-inline-fields .inline-field-clear .btn-primary{
    width:100%;
  }
  .timeline{
    justify-content:flex-start;
    padding:4px 0 8px;
  }
  .point-wrap:not(:last-child)::after{
    width:28px;
    margin:0 6px;
  }
  .point{
    font-size:.82rem;
    padding:.45rem .7rem;
  }
  .th,.td{
    padding:.38rem .42rem;
    font-size:.92rem;
  }
  /* En móvil ocultamos Club para reducir scroll horizontal */
  #theader tr > .th:nth-child(5),
  #tbody > tr > .td:nth-child(5){
    display:none;
  }
  .details{
    padding:12px;
  }
  .details-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .details-right{
    width:100%;
    flex-wrap:wrap;
    gap:8px;
  }
  .cromo-banner{
    position:static;
    margin-top:10px;
  }
  .cromo-banner img{
    height:96px;
  }
  #status{
    line-height:1.4;
  }
}


/* --- Visual tweaks: green group title + 25px indent for title and team name --- */
.table.teams-mode tr.group-row td { color:#10b981; } /* emerald green */
.table.teams-mode tr.group-row td .group-title{ display:inline-block; padding-left:25px; }
.table.teams-mode th.indent-name, .table.teams-mode td.indent-name{ padding-left:50px; }


/* Minimal arrow-only toggle for tableRows */
.toggle-arrow{
  background:transparent !important;
  border:none !important;
  padding:0 2px !important;
  line-height:1 !important;
  color:#10b981 !important; /* green */
  font-size:18px;
  cursor:pointer;
}
.tr.row-open .toggle-arrow{ color:#059669 !important; }


/* Extra compact tableRows */
.table tbody tr td, .tr .td { padding-top: 2px !important; padding-bottom: 2px !important; }
.table tbody tr { line-height: 1.0; }


/* centrar icono cabecera compartir */
.th-share{ text-align:center; }
.th-share svg{ display:inline-block; vertical-align:middle; opacity:.9 }

/* exact-bib: hide tableRows marked as .hide */
.table tbody tr.hide{ display:none !important; }


/* share icon asset: always dark */
.th-share img.share-icon,
.td-share img.share-icon,
.share-inline img.share-icon{ filter: none !important; opacity: .9; }
:root.light .th-share img.share-icon,
:root.light .td-share img.share-icon,
:root.light .share-inline img.share-icon{ filter: none !important; opacity: .9; }

/* make Cronowin/Compartir icon as large as possible inside its reserved column (no distortion) */
.th-share img.share-icon,
.td-share img.share-icon,
.share-inline img.share-icon{
  width: 100% !important;
  height: 44px !important;
  max-width: 240px;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}




/* Cromowin.png es muy rectangular: recortar márgenes transparentes sin deformar */
.th-share img.share-icon[src*="cromowin.png"],
.td-share img.share-icon[src*="cromowin.png"],
.share-inline img.share-icon[src*="cromowin.png"]{
  object-fit: cover !important;
}



/* theme-toggle */
:root{ --bg:#000; --card:#0b1220; --line:#233040; --txt:#e5e7eb; --muted:#94a3b8; --accent:#10b981; --accent-d:#064e3b; --detail:#0f1d33; }
:root.light{
  --bg:#ffffff; --card:#ffffff; --line:#e5e7eb; --txt:#111827; --muted:#6b7280; --accent:#10b981; --accent-d:#065f46; --detail:#f3f4f6;
}
/* apply variables */
html,body{ background:var(--bg); color:var(--txt); }
.header{ background:var(--bg); border-bottom:1px solid var(--line); }
.card{ background:var(--card); border-color:var(--line); }
.small,.label{ color:var(--muted); }
.segmented{ background:var(--card); border:1px solid var(--line); }
.segmented button{ color:var(--muted); }
.segmented a{ color:var(--muted); }
.segmented button.seg-active{ background:#059669; color:#fff; border-color:#047857; box-shadow:0 0 0 2px rgba(5,150,105,.18) inset; }
.segmented a.seg-active{ background:#059669; color:#fff; border-color:#047857; box-shadow:0 0 0 2px rgba(5,150,105,.18) inset; }
:root.light #modeSegWrap{
  background:linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
  border-color:#cbd5e1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 4px 14px rgba(15,23,42,.08);
}
:root.light #modeSegWrap a{
  color:#334155;
}
:root.light #modeSegWrap a:hover{
  color:#0f172a;
  background:rgba(15,23,42,.06);
}
:root.light #modeSegWrap a.seg-active{
  background:linear-gradient(180deg, #22c55e 0%, #16a34a 100%);
  color:#ffffff;
  border-color:#15803d;
  box-shadow:0 0 0 2px rgba(34,197,94,.16) inset, 0 8px 16px rgba(34,197,94,.18);
}

/* table tableRows */
.tr:nth-child(odd){ background: var(--card); }
.tr:nth-child(even){ background: color-mix(in srgb, var(--card) 90%, #000 10%); }
:root.light .tr:nth-child(even){ background:#f9fafb; }

/* inputs & selects */
.select, .input, #searchBox{
  background:var(--card); color:var(--txt); border-color:var(--line);
}
:root.light .select{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M5 7.5L10 12.5L15 7.5' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}
:root.light #catFilter{
  background-color:#ffffff;
  border-color:#cbd5e1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 4px 12px rgba(15,23,42,.05);
  background-image:none !important;
  -webkit-appearance:menulist;
  -moz-appearance:menulist;
  appearance:menulist;
  padding-right:.8rem;
}
:root.light #btnClear{
  box-shadow:0 8px 16px rgba(34,197,94,.14);
}

/* details/pills */
.details{ background:var(--detail); border-color:#22c55e; }
.pill{ border-color:#2dd4bf; color:#065f46; background:#dcfce7; }
.pill-sm{ border-color:#d1d5db; color:#374151; background:#fff; }

/* timeline points */
.point{ background:var(--card); border-color:var(--line); color:#047857; }
.point.active{ background:var(--accent-d); border-color:var(--accent); color:#a7f3d0; }

/* theme toggle button */
#themeToggle{ position:fixed; top:12px; right:12px; z-index:60;
  background:var(--card); color:var(--txt); border:1px solid var(--line);
  border-radius:999px; padding:.35rem .6rem; line-height:1; font-size:.95rem; cursor:pointer; }
#themeToggle:hover{ filter:brightness(1.05); }



/* --- Fix: que el selector de eventos envuelva en varias líneas --- */
#eventSeg.segmented{
  display: flex;        /* override del inline-flex */
  flex-wrap: wrap;      /* permite varias líneas */
  width: 100%;          /* ocupa toda la columna del grid */
  gap: 6px;             /* conserva el espaciado entre chips */
  align-items: center;
}



/* Mejorar altura visible de la línea de eventos (sin cambiar el diseño) */
#eventSeg.segmented{
  padding: 10px 4px !important;
  min-height: 52px !important;   /* asegura que las burbujas no queden cortadas */
  align-items: center !important; /* centra verticalmente las burbujas */
}

/* Ajuste sutil de las burbujas para legibilidad */
#eventSeg .seg-btn{
  padding: .55rem 1rem;
  line-height: 1.15;
  font-size: 0.95rem;
}



/* --- Fila 1: Evento a todo lo ancho. Fila 2: Género (izq) + Categoría (der). Fila 3: Buscar (full) --- */
.filters{
  display: grid;
  grid-template-columns: 1fr 1fr;        /* 2 columnas en la fila 2 */
  gap: 16px 20px;
  align-items: end;
}
.filters .group{ display: contents; }    /* los hijos de .group son items del grid */

/* Evento (primer bloque de la group) → ocupa toda la fila superior */
.filters .group > div:first-child{ grid-column: 1 / -1; }

/* Género (segundo) a la izquierda; Categoría (tercero) a la derecha */
.filters .group > div:nth-child(2){ grid-column: 1; }
.filters .group > div:nth-child(3){ grid-column: 2; justify-self: end; }

/* Buscar (cuarto) ocupa toda la anchura por debajo */
.filters .group > div:nth-child(4){ grid-column: 1 / -1; }

/* Botón "Borrar filtros" alineado a la derecha, en la fila de debajo */
.filters > .text-right{ grid-column: 2; justify-self: end; }

/* En móvil: una sola columna, orden vertical natural */
@media (max-width: 900px){
  .filters{ grid-template-columns: 1fr; }
  .filters > .text-right{ grid-column: 1; justify-self: stretch; }
}

/* --- Línea de eventos a lo ancho y en UNA sola línea (si no caben, desplazamiento suave) --- */
#eventSeg.segmented{
  display: inline-flex !important;
  width: 100% !important;
  flex-wrap: nowrap !important;     /* una sola línea */
  gap: 8px;
  background: transparent;
  border: none;
  padding: 10px 4px 8px;
  overflow-x: auto;                  /* permite ver todos si no caben */
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
#eventSeg.segmented::-webkit-scrollbar{ height: 8px; }
#eventSeg.segmented::-webkit-scrollbar-thumb{ background: #1f2a3b; border-radius: 999px; }
#eventSeg.segmented::-webkit-scrollbar-track{ background: transparent; }

/* "Burbujas" de evento */
#eventSeg .seg-btn{
  flex: 0 0 auto;
  background:#0b1220;
  border:1px solid #334155;
  color:#cbd5e1;
  border-radius:999px;
  padding:.55rem 1rem;
  font-weight:800;
  white-space: nowrap;
  line-height:1.15;
  cursor:pointer;
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease, border-color .15s ease;
}
#eventSeg .seg-btn.seg-active{
  background:#059669;
  color:#fff;
  border-color:#047857;
  box-shadow: 0 0 0 2px rgba(5,150,105,.18) inset, 0 4px 14px rgba(5,150,105,.22);
}



/* === Override: Evento ocupa todo el ancho y envuelve a varias líneas === */
#eventSeg.segmented{
  display: flex !important;        /* use flex so it spans tableRows nicely */
  flex-wrap: wrap !important;      /* allow 2, 3... lines */
  width: 100% !important;          /* take full width */
  overflow-x: visible !important;
  overflow-y: visible !important;
  gap: 8px;
}
#eventSeg .seg-btn{
  flex: 0 0 auto;                   /* keep natural size */
  white-space: nowrap;              /* no text wrapping inside chips */
}
/* Ensure Evento block is first row full width (reinforce existing rule) */
.filters .group > div:first-child{ grid-column: 1 / -1; }



/* En móvil en vertical: Género y Categoría uno debajo de otro para evitar solaparse */
@media (max-width: 768px){
  .filters .group{
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .filters .group > div{
    width: 100%;
    grid-column: auto !important;       /* anula el 1/2 que usamos en escritorio */
    justify-self: stretch !important;
  }
}



:root{--ux-green:#22c55e;--ux-green-2:#10b981;--ux-green-dark:#064e3b;--ux-shadow:0 18px 45px rgba(0,0,0,.26)}
html:not(.light) body{background:radial-gradient(circle at 15% 0%,rgba(34,197,94,.18),transparent 30%),radial-gradient(circle at 85% 5%,rgba(14,165,233,.10),transparent 28%),#020617}
:root.light body{background:radial-gradient(circle at 10% 0%,rgba(34,197,94,.13),transparent 28%),#f6f8fb}
.header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(0,0,0,.72)!important;box-shadow:0 12px 32px rgba(0,0,0,.22)}
:root.light .header{background:rgba(255,255,255,.84)!important}#raceTitle{letter-spacing:-.02em;font-size:clamp(1.05rem,2.3vw,1.55rem);color:#34d399!important}#hdrInfo{font-weight:700}.logo{height:42px;filter:drop-shadow(0 8px 18px rgba(16,185,129,.18))}
.card{border-radius:22px!important;box-shadow:var(--ux-shadow);background:linear-gradient(180deg,rgba(15,23,42,.92),rgba(2,6,23,.86))!important;border:1px solid rgba(148,163,184,.20)!important}
:root.light .card{background:rgba(255,255,255,.92)!important;box-shadow:0 18px 45px rgba(15,23,42,.10);border-color:#e5e7eb!important}
.segmented{border-radius:18px!important;background:rgba(15,23,42,.72)!important;border-color:rgba(148,163,184,.25)!important}:root.light .segmented{background:#f8fafc!important}.segmented button,.segmented a,#eventSeg .seg-btn{border-radius:999px!important;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease}.segmented button:hover,.segmented a:hover,#eventSeg .seg-btn:hover{transform:translateY(-1px)}.segmented button.seg-active,.segmented a.seg-active,#eventSeg .seg-btn.seg-active{background:linear-gradient(180deg,#34d399,#059669)!important;color:#001b12!important;border-color:#10b981!important;box-shadow:0 10px 24px rgba(16,185,129,.25),inset 0 0 0 1px rgba(255,255,255,.18)!important}#eventSeg .seg-btn.seg-active{color:#fff!important}.select,.input,#searchBox,#bibFilter{border-radius:16px!important;min-height:50px!important;font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.btn-primary{border-radius:16px!important;min-height:50px!important;background:linear-gradient(180deg,#22c55e,#059669)!important;color:#fff!important;box-shadow:0 12px 25px rgba(5,150,105,.23)!important}.btn-primary:hover{transform:translateY(-1px);filter:none!important}
.timeline{padding:10px 2px!important}.point{border-radius:16px!important;box-shadow:0 10px 24px rgba(0,0,0,.16);transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.point:hover{transform:translateY(-2px) scale(1.03)}.point.active{background:linear-gradient(180deg,#10b981,#047857)!important;color:#fff!important;box-shadow:0 0 0 3px rgba(16,185,129,.18),0 12px 30px rgba(16,185,129,.28)!important}.point-wrap:not(:last-child)::after{background:linear-gradient(90deg,rgba(16,185,129,.55),rgba(148,163,184,.18))!important}
.table{border-collapse:separate!important;border-spacing:0 8px!important}#theader .tr{background:transparent!important}#theader .th{border-bottom:0!important;color:#94a3b8;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;padding:.45rem .65rem!important}#tbody>tr.tr{background:rgba(15,23,42,.78)!important;box-shadow:0 8px 22px rgba(0,0,0,.16);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}:root.light #tbody>tr.tr{background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.06)}#tbody>tr.tr:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(0,0,0,.22);background:rgba(30,41,59,.90)!important}:root.light #tbody>tr.tr:hover{background:#f8fafc!important}#tbody>tr.tr>.td{border-bottom:0!important;padding:.55rem .65rem!important;vertical-align:middle}#tbody>tr.tr>.td:first-child{border-radius:16px 0 0 16px}#tbody>tr.tr>.td:last-child{border-radius:0 16px 16px 0}#tbody>tr.row-open{outline:2px solid rgba(52,211,153,.85)!important;background:linear-gradient(90deg,rgba(6,78,59,.92),rgba(15,23,42,.88))!important}:root.light #tbody>tr.row-open{background:#ecfdf5!important}
#tbody>tr.tr>.td:nth-child(2){font-weight:950;font-size:1rem;color:#e5e7eb}:root.light #tbody>tr.tr>.td:nth-child(2){color:#0f172a}#tbody>tr.tr:nth-of-type(1)>.td:nth-child(2)::before,#tbody>tr.tr:nth-of-type(2)>.td:nth-child(2)::before,#tbody>tr.tr:nth-of-type(3)>.td:nth-child(2)::before{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;margin-right:6px;font-size:16px;box-shadow:0 8px 18px rgba(0,0,0,.18)}#tbody>tr.tr:nth-of-type(1)>.td:nth-child(2)::before{content:'🥇'}#tbody>tr.tr:nth-of-type(2)>.td:nth-child(2)::before{content:'🥈'}#tbody>tr.tr:nth-of-type(3)>.td:nth-child(2)::before{content:'🥉'}
#tbody>tr.tr>.td:nth-child(3){color:#a7f3d0;font-weight:900;white-space:nowrap}#tbody>tr.tr>.td:nth-child(4){font-weight:950;font-size:1rem;letter-spacing:-.01em;color:#f8fafc;max-width:420px}:root.light #tbody>tr.tr>.td:nth-child(4){color:#0f172a}#tbody>tr.tr>.td:nth-child(5){color:#94a3b8;font-size:.82rem;font-weight:700}:root.light #tbody>tr.tr>.td:nth-child(5){color:#64748b}#tbody>tr.tr>.td:nth-child(6),.td-time{color:#34d399!important;font-size:1.13rem!important;font-weight:1000!important;letter-spacing:.01em;white-space:nowrap;text-align:left!important}#tbody>tr.tr:nth-of-type(1)>.td:nth-child(6){color:#fff!important;text-shadow:0 0 16px rgba(52,211,153,.55)}
.toggle-arrow{min-width:34px!important;min-height:34px!important;border-radius:999px!important;background:rgba(16,185,129,.13)!important;color:#34d399!important}.video-btn,.share-btn{transition:transform .16s ease,opacity .16s ease}.video-btn:hover,.share-btn:hover{transform:scale(1.08)}.video-icon{width:24px!important;height:24px!important}.icon-box{height:46px!important}
.details{border-radius:20px!important;background:linear-gradient(180deg,rgba(15,23,42,.98),rgba(6,78,59,.28))!important;border-color:rgba(52,211,153,.65)!important;box-shadow:0 24px 55px rgba(0,0,0,.34)!important}:root.light .details{background:#f0fdf4!important}.details h4{font-size:1.05rem;color:#6ee7b7!important}.kv div:nth-child(odd){color:#93c5fd!important;font-weight:800}.kv div:nth-child(even){font-weight:750}
@media(max-width:768px){.wrap{padding:10px!important}.logo{height:34px}.card{border-radius:18px!important;padding:12px!important}#eventSeg.segmented{gap:7px!important}#eventSeg .seg-btn{padding:.48rem .82rem!important;font-size:.88rem!important}#tbody>tr.tr>.td{padding:.58rem .48rem!important}#tbody>tr.tr>.td:nth-child(2){font-size:.95rem}#tbody>tr.tr>.td:nth-child(3){font-size:.85rem}#tbody>tr.tr>.td:nth-child(4){font-size:.94rem;min-width:150px}#tbody>tr.tr>.td:nth-child(6){font-size:1rem!important}#tbody>tr.tr>.td:first-child{border-radius:14px 0 0 14px}#tbody>tr.tr>.td:last-child{border-radius:0 14px 14px 0}}



/* Ajuste pedido: sin # delante del dorsal y filas más compactas */
#tbody>tr.tr>.td:nth-child(3)::before{content:none!important;display:none!important;}
.table{border-spacing:0 4px!important;}
#tbody>tr.tr>.td{padding-top:.32rem!important;padding-bottom:.32rem!important;}
#tbody>tr.tr{box-shadow:0 5px 14px rgba(0,0,0,.13)!important;}
#tbody>tr.tr>.td:nth-child(2){font-size:.94rem!important;}
#tbody>tr.tr>.td:nth-child(4){font-size:.94rem!important;font-weight:900!important;}
#tbody>tr.tr>.td:nth-child(6),.td-time{font-size:1rem!important;}
#tbody>tr.tr>.td:first-child{border-radius:12px 0 0 12px!important;}
#tbody>tr.tr>.td:last-child{border-radius:0 12px 12px 0!important;}
.toggle-arrow{min-width:28px!important;min-height:28px!important;}
.video-icon{width:20px!important;height:20px!important}.icon-box{height:38px!important}
@media(max-width:768px){#tbody>tr.tr>.td{padding-top:.34rem!important;padding-bottom:.34rem!important}.table{border-spacing:0 3px!important;}#tbody>tr.tr>.td:nth-child(4){font-size:.9rem!important}#tbody>tr.tr>.td:nth-child(6){font-size:.95rem!important}}



:root{--v3-line:rgba(148,163,184,.22);--v3-text:#f8fafc;--v3-green:#46f06f;--v3-green-2:#22c55e;}
html:not(.light) body{background:radial-gradient(circle at 12% -8%,rgba(70,240,111,.12),transparent 28%),radial-gradient(circle at 82% 0%,rgba(14,165,233,.08),transparent 26%),linear-gradient(180deg,#03070b 0%,#020609 45%,#000 100%)!important;color:var(--v3-text)}
:root.light body{background:#f5f7fb!important;color:#0f172a}.wrap{max-width:1500px!important;padding:10px 14px!important}
.header{position:sticky;top:0;z-index:70;background:rgba(0,0,0,.78)!important;border-bottom:1px solid rgba(148,163,184,.18)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 14px 35px rgba(0,0,0,.25)}
:root.light .header{background:rgba(255,255,255,.86)!important}.logo{height:46px!important;max-width:160px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(34,197,94,.20))}
#raceTitle{font-size:clamp(1.25rem,2.3vw,1.75rem)!important;line-height:1.05;color:#f8fafc!important;letter-spacing:-.035em}:root.light #raceTitle{color:#0f172a!important}
#hdrInfo{font-size:.95rem!important;color:#d1d5db!important;font-weight:650}:root.light #hdrInfo{color:#475569!important}#hdrInfo::before{content:'●';color:var(--v3-green);margin-right:8px;text-shadow:0 0 12px rgba(70,240,111,.9)}
#themeToggle{top:14px!important;right:14px!important;border-radius:12px!important;opacity:.72}
.card{border-radius:10px!important;background:linear-gradient(180deg,rgba(14,25,36,.90),rgba(7,14,22,.92))!important;border:1px solid var(--v3-line)!important;box-shadow:none!important;padding:14px 18px!important}:root.light .card{background:#fff!important;border-color:#e2e8f0!important}
.label{font-size:.78rem!important;text-transform:uppercase;letter-spacing:.045em;color:#e5e7eb!important;font-weight:900!important}:root.light .label{color:#334155!important}.filters{gap:12px 28px!important}
.segmented,.select,.input,#searchBox,#catFilter,#modeSegWrap{background:rgba(3,7,12,.62)!important;border:1px solid rgba(148,163,184,.28)!important;border-radius:8px!important;color:#f8fafc!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important}
:root.light .segmented,:root.light .select,:root.light .input,:root.light #searchBox,:root.light #catFilter,:root.light #modeSegWrap{background:#fff!important;color:#0f172a!important;border-color:#cbd5e1!important}
.segmented button,.segmented a,#eventSeg .seg-btn{border-radius:7px!important;color:#e5e7eb!important;font-weight:750!important}
.segmented button.seg-active,.segmented a.seg-active,#eventSeg .seg-btn.seg-active{background:linear-gradient(180deg,#16a34a,#047a36)!important;color:#fff!important;border-color:#28e65c!important;box-shadow:0 0 0 1px rgba(70,240,111,.45),0 8px 18px rgba(34,197,94,.24)!important}
#eventSeg.segmented{background:transparent!important;border:none!important;padding:6px 0!important;gap:8px!important}#eventSeg .seg-btn{background:rgba(12,22,32,.86)!important;border:1px solid rgba(148,163,184,.25)!important;border-radius:999px!important;min-height:36px!important;padding:.42rem .85rem!important;font-size:.86rem!important}
.select,.input,#searchBox{min-height:44px!important;padding-top:.55rem!important;padding-bottom:.55rem!important;font-size:1rem!important}#searchBox{padding-left:44px!important}
.btn-primary{min-height:44px!important;border-radius:7px!important;background:transparent!important;color:var(--v3-green)!important;border:1px solid var(--v3-green-2)!important;box-shadow:0 0 0 1px rgba(34,197,94,.08),inset 0 0 18px rgba(34,197,94,.06)!important}.btn-primary:hover{background:rgba(34,197,94,.10)!important;transform:none!important}
#timelineTitle{color:#f8fafc!important;font-size:.95rem;text-transform:uppercase;letter-spacing:.04em}.timeline{padding:8px 4px!important;justify-content:space-between!important}.point-wrap{flex:1 0 auto;justify-content:center}.point-wrap:not(:last-child)::after{height:1px!important;flex:1!important;width:auto!important;min-width:44px!important;background:linear-gradient(90deg,rgba(70,240,111,.8),rgba(148,163,184,.28))!important}.point{min-height:34px!important;padding:.35rem .62rem!important;border-radius:999px!important;background:rgba(10,18,27,.9)!important;border-color:rgba(148,163,184,.35)!important;color:#f8fafc!important;font-size:.83rem!important}.point.active{background:transparent!important;border:4px solid var(--v3-green)!important;color:#fff!important;box-shadow:0 0 18px rgba(70,240,111,.36)!important}.point.active::before{display:none!important}
.table{border-collapse:separate!important;border-spacing:0 3px!important;width:100%!important}#theader .tr{background:linear-gradient(180deg,rgba(16,29,40,.96),rgba(10,18,27,.96))!important}#theader .th{border-top:1px solid var(--v3-line)!important;border-bottom:1px solid var(--v3-line)!important;color:#f1f5f9!important;font-size:.76rem!important;letter-spacing:.025em;text-transform:uppercase;font-weight:900!important;padding:.46rem .55rem!important;white-space:nowrap}#theader .th:first-child{border-radius:7px 0 0 0!important;border-left:1px solid var(--v3-line)!important}#theader .th:last-child{border-radius:0 7px 0 0!important;border-right:1px solid var(--v3-line)!important}
#tbody>tr.tr{background:linear-gradient(180deg,rgba(12,23,33,.92),rgba(8,17,25,.94))!important;box-shadow:none!important;transition:background-color .14s ease,transform .14s ease}:root.light #tbody>tr.tr{background:#fff!important}#tbody>tr.tr:hover{background:linear-gradient(180deg,rgba(17,32,46,.98),rgba(10,24,34,.98))!important;transform:none!important;box-shadow:none!important}:root.light #tbody>tr.tr:hover{background:#f8fafc!important}
#tbody>tr.tr>.td{border-top:1px solid rgba(148,163,184,.14)!important;border-bottom:1px solid rgba(148,163,184,.14)!important;padding:.26rem .55rem!important;line-height:1.08!important;vertical-align:middle!important;font-size:.94rem!important}#tbody>tr.tr>.td:first-child{border-left:1px solid rgba(148,163,184,.14)!important;border-radius:6px 0 0 6px!important}#tbody>tr.tr>.td:last-child{border-right:1px solid rgba(148,163,184,.14)!important;border-radius:0 6px 6px 0!important}#tbody>tr.tr:nth-of-type(1)>.td:first-child{box-shadow:inset 4px 0 0 var(--v3-green)!important}
#tbody>tr.tr>.td:nth-child(2){font-size:1rem!important;font-weight:900!important;color:#f8fafc!important;text-align:center;min-width:50px}:root.light #tbody>tr.tr>.td:nth-child(2){color:#0f172a!important}#tbody>tr.tr:nth-of-type(1)>.td:nth-child(2)::before,#tbody>tr.tr:nth-of-type(2)>.td:nth-child(2)::before,#tbody>tr.tr:nth-of-type(3)>.td:nth-child(2)::before{display:none!important;content:none!important}
#tbody>tr.tr>.td:nth-child(3){color:#f8fafc!important;font-weight:750!important;white-space:nowrap}#tbody>tr.tr>.td:nth-child(4){font-size:1rem!important;font-weight:950!important;color:#f8fafc!important;letter-spacing:-.025em}:root.light #tbody>tr.tr>.td:nth-child(4){color:#0f172a!important}#tbody>tr.tr>.td:nth-child(5){color:#cbd5e1!important;font-size:.9rem!important;font-weight:650!important}#tbody>tr.tr>.td:nth-child(6),.td-time{font-size:1.14rem!important;font-weight:1000!important;color:var(--v3-green)!important;white-space:nowrap!important}
.td-country{width:58px!important;text-align:center!important;font-size:0!important}.td-country .flag-only{font-size:1.6rem!important;line-height:1!important;display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}th.th-country{text-align:center!important;width:58px!important}
.toggle-arrow{min-width:26px!important;min-height:26px!important;width:26px!important;height:26px!important;border-radius:999px!important;background:rgba(70,240,111,.10)!important;color:var(--v3-green)!important;font-size:13px!important;display:inline-flex;align-items:center;justify-content:center}.video-btn{border:1px solid rgba(70,240,111,.75)!important;border-radius:6px!important;min-width:36px!important;min-height:30px!important;display:inline-flex;align-items:center;justify-content:center;background:rgba(34,197,94,.08)!important}.video-icon{width:20px!important;height:20px!important}.th-video,.td-video{width:54px!important;text-align:center!important}.th-video[style*="none"],.td-video[style*="none"]{display:none!important}.td-share,.th-share{width:54px!important;text-align:center!important}.share-btn{height:30px!important;min-height:30px!important}.icon-box{height:30px!important;max-width:48px!important}
.details{border-radius:10px!important;background:linear-gradient(180deg,rgba(9,18,28,.98),rgba(6,42,31,.68))!important;border-color:rgba(70,240,111,.45)!important;box-shadow:none!important;padding:12px!important}.details h4{color:#f8fafc!important}.pill,.pill-sm{border-radius:999px!important}
@media(max-width:900px){.wrap{padding:8px!important}.logo{height:38px!important}.card{padding:11px!important}.timeline{justify-content:flex-start!important}.point-wrap{flex:0 0 auto}.point-wrap:not(:last-child)::after{min-width:28px!important}.table{border-spacing:0 2px!important}#tbody>tr.tr>.td{padding:.24rem .42rem!important;font-size:.86rem!important}#tbody>tr.tr>.td:nth-child(4){font-size:.91rem!important;min-width:155px}.td-country{width:42px!important}.td-country .flag-only{font-size:1.35rem!important}#tbody>tr.tr>.td:nth-child(6),.td-time{font-size:1rem!important}}



/* Ajustes V3 pedidos: medallas, tiempo verde, club neutro y columnas extra solo desktop */
#tbody>tr.tr>.td-pos{min-width:58px!important;text-align:center!important;font-weight:950!important;}
.medpos{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border-radius:999px;font-weight:1000;font-size:1.02rem;line-height:1;box-shadow:0 8px 16px rgba(0,0,0,.28), inset 0 0 0 2px rgba(255,255,255,.22);}
.medpos-1{background:linear-gradient(180deg,#ffe879,#f5b400)!important;color:#111827!important;}
.medpos-2{background:linear-gradient(180deg,#f5f7fb,#aeb7c2)!important;color:#111827!important;}
.medpos-3{background:linear-gradient(180deg,#ffbf86,#c46a2d)!important;color:#111827!important;}
.medpos-rest{background:transparent!important;color:#f8fafc!important;box-shadow:none!important;min-width:auto;height:auto;padding:0;}
:root.light .medpos-rest{color:#0f172a!important;}
#tbody>tr.tr>.td-name{font-weight:950!important;color:#f8fafc!important;}
:root.light #tbody>tr.tr>.td-name{color:#0f172a!important;}
#tbody>tr.tr>.td-club{color:#cbd5e1!important;font-weight:600!important;}
:root.light #tbody>tr.tr>.td-club{color:#475569!important;}
#tbody>tr.tr>.td-time{color:var(--v3-green)!important;font-weight:1000!important;font-size:1.13rem!important;text-align:left!important;white-space:nowrap!important;}
#tbody>tr.tr>.td-category{color:#e5e7eb!important;font-weight:750!important;white-space:nowrap!important;}
#tbody>tr.tr>.td-catpos{color:#f8fafc!important;font-weight:900!important;text-align:center!important;white-space:nowrap!important;}
:root.light #tbody>tr.tr>.td-category{color:#334155!important;}
:root.light #tbody>tr.tr>.td-catpos{color:#0f172a!important;}
#theader .th-category,#theader .th-catpos{text-align:left!important;}
#theader .th-catpos{text-align:center!important;}
#tbody>tr.tr>.td:nth-child(5),#tbody>tr.tr>.td:nth-child(6){font-size:.94rem!important;}
@media(max-width:900px){
  #theader .th-category,#theader .th-catpos,#tbody>tr.tr>.td-category,#tbody>tr.tr>.td-catpos{display:none!important;}
  #tbody>tr.tr>.td-pos{min-width:46px!important;}
  .medpos{min-width:30px;height:30px;font-size:.94rem;}
  #tbody>tr.tr>.td-time{font-size:1rem!important;}
}



#typeBlock{grid-column:2!important;justify-self:start!important;}
#categoryBlock{grid-column:3!important;justify-self:start!important;}
#typeBlock #modeSegWrap{display:inline-flex;}
#typeBlock[hidden],#modeSegWrap[hidden]{display:none!important;}
@media(max-width:900px){
  #genderBlock,#typeBlock,#categoryBlock,#exportBlock,#searchDock{grid-column:1!important;justify-self:stretch!important;width:100%!important;}
  #typeBlock #modeSegWrap,#catFilter{width:100%!important;}
}



#lapEmbedSection{display:none}
#lapEmbedFrame{
  width:100%;
  border:0;
  min-height:760px;
  display:block;
  background:transparent;
  border-radius:16px;
}
body.lap-mode #topFiltersRow,
body.lap-mode #clearDock,
body.lap-mode #protectedDniDock,
body.lap-mode #searchDock,
body.lap-mode #attributeBlock,
body.lap-mode #filterBadge,
body.lap-mode #pdfLinksInline,
body.lap-mode #status,
body.lap-mode #timelineCard,
body.lap-mode #resultsCard{display:none!important}
body.lap-mode #lapEmbedSection{display:block!important}
.lap-embed-card{padding:14px 16px}



body.lap-screen-mode{overflow:hidden!important}
body.lap-screen-mode > header,body.lap-screen-mode > #themeToggle,body.lap-screen-mode main > :not(#lapEmbedSection){display:none!important}
body.lap-screen-mode #lapEmbedFrame{position:fixed;inset:0;z-index:9999;width:100%;max-width:100%;height:100dvh!important;min-height:0;border-radius:0;background:var(--bg,#03080c)}
body.lap-mode #lapEmbedSection{padding:0!important;min-width:0;background:transparent!important;border:0!important;box-shadow:none!important}
body.lap-mode .wrap{width:100%!important;max-width:none!important;min-width:0;box-sizing:border-box;padding-left:clamp(8px,1vw,24px)!important;padding-right:clamp(8px,1vw,24px)!important}



/* Teams table alignment and group visuals */
.table.teams-mode th, .table.teams-mode td { vertical-align: middle; }
.table.teams-mode th.ta-r, .table.teams-mode td.ta-r { text-align: right; }
.table.teams-mode th.ta-c, .table.teams-mode td.ta-c { text-align: center; }
.table.teams-mode th.ta-l, .table.teams-mode td.ta-l { text-align: left; }
.table.teams-mode td.mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace; }
.table.teams-mode tr.group-row td {
  font-weight: 800; background: #0b1220; border-bottom: 1px solid #233040;
  position: sticky; top: 0; z-index: 1;
}
.table.teams-mode tr.group-row small.badge {
  font-weight: 600; background: #0f1d33; border: 1px solid #233040; border-radius: 999px;
  padding: 2px 8px; margin-left: 6px; font-size: 11px; color: #9fb3c8;
}
/* Hide share button in team mode via body class */
body.mode-team [data-role="share"], body.mode-team .share-btn, body.mode-team #btnShare { display: none !important; }

/* Compactar filas de participantes (solo altura, sin cambiar diseño) */
.table tbody tr td { padding-top: 6px !important; padding-bottom: 6px !important; }
.table tbody tr { line-height: 1.2; }
.tr .td { padding-top: 6px !important; padding-bottom: 6px !important; }

/* ==== Loading modal (popup with filling circle) ==== */
.loading-modal{ position:fixed; inset:0; display:flex; align-items:center; justify-content:center; z-index:2147483647; background:rgba(0,0,0,.45); }
.loading-modal[hidden]{ display:none !important; }
.loading-modal .loading-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.45); backdrop-filter:saturate(120%) blur(2px); pointer-events:auto; }
.loading-modal .loading-card{
  position:relative;
  background:#ffffff; color:#065f46; border:2px solid #d1fae5; border-radius:16px;
  padding:22px 22px 18px; width:min(92vw, 360px); text-align:center; box-shadow:0 15px 50px rgba(0,0,0,.25);
  font-weight:800;
  z-index:1;
  pointer-events:auto;
}
.loading-modal .loading-text{ margin-top:10px; font-size:1.15rem; color:#047857; }
.ring{ display:block; }
.ring-bg{ fill:none; stroke:#e5e7eb; stroke-width:10; }
.ring-fg{ fill:none; stroke:#10b981; stroke-width:10; stroke-linecap:round;
  stroke-dasharray:276; stroke-dashoffset:276; animation:fillring 1.6s cubic-bezier(.4,0,.2,1) infinite alternate; }
@keyframes fillring{ 0%{ stroke-dashoffset:276; } 100%{ stroke-dashoffset:0; } }
@media (prefers-color-scheme: dark){
  .loading-modal .loading-card{ background:#0b1117; color:#c7f1df; border-color:#134e4a; }
  .loading-modal .loading-text{ color:#34d399; }
  .ring-bg{ stroke:#1f2937; }
}
/* Center text inside ring */
.loading-card .ring-wrap{ position:relative; display:inline-block; }
.loading-card .ring-center{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  font-weight:900; font-size:1.25rem; color:#047857;
  width: 210px; text-align:center; line-height:1.15;
}

/* === Bigger & spinning loading ring (320px) === */
.loading-card .ring{ 
  width: 140px !important; 
  height: 140px !important; 
  animation: ringspin 1.1s linear infinite; 
  transform-origin: 50% 50%;
}
@keyframes ringspin { to { transform: rotate(360deg); } }

/* centrar icono cabecera compartir */
.th-share{ text-align:center; }
.th-share svg{ display:inline-block; vertical-align:middle; opacity:.9 }

/* === Share icon in black (header + tableRows) === */
.th-share svg,
.th-share .share-icon,
.td-share svg,
.td-share .share-icon,
.th-share svg path,
.td-share svg path{
  fill:#000 !important;
  stroke:#000 !important;
}
/* If the icon is an <img>, force black-ish via filter (remove inversion) */
.th-share img.share-icon,
.td-share img.share-icon{
  filter: none;
}



/* ultra-compact FINAL: tbody font 0.90rem, padding 2px, line-height 1.06 */
.table tbody td { font-size: 0.90rem !important; padding-top: 2px !important; padding-bottom: 2px !important; }
.table tbody tr { line-height: 1.06 !important; }
.tr .td { padding-top: 2px !important; padding-bottom: 2px !important; }

/* --- Make share column visible on mobile: sticky at right --- */
@media (max-width: 768px){
  .th-share, .td-share{
    position: sticky;
    right: 0;
    background: var(--card);
    z-index: 3;
    min-width: 48px;
  }
  .td-share .share-btn{ padding:.35rem; }
}




/* --- Light theme tweaks per request --- */

/* 1) Ficha de detalle: todo el texto en negro (títulos y valores) */
:root.light .details h4 { color: #111827 !important; }            /* gris casi negro */
:root.light .kv div { color: #111827 !important; }                /* etiquetas y valores */

/* 2) Fondo del tiempo activo (fila resaltada en el detalle) en verde claro */
:root.light .tr--highlight { background: #dcfce7 !important; }    /* emerald-100 */
:root.light .tr--highlight .td { color: #111827 !important; }     /* texto oscuro */

/* 3) El selector inline de vista se personaliza con #modeSegWrap */



#theader .th-country,#tbody .td-country{text-align:center!important;width:64px!important;min-width:64px!important;}
#tbody .td-country{font-size:0!important;}
#tbody .td-country .flag-only{font-size:1.72rem!important;line-height:1!important;display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35));}
#tbody>tr.tr>.td-club{color:#f8fafc!important;font-weight:560!important;}
:root.light #tbody>tr.tr>.td-club{color:#0f172a!important;}
#tbody>tr.tr>.td-time{color:var(--v3-green)!important;font-weight:1000!important;font-size:1.13rem!important;text-align:left!important;white-space:nowrap!important;}
#tbody>tr.tr>.td-catcombo{color:#f8fafc!important;font-weight:850!important;white-space:nowrap!important;text-align:left!important;}
:root.light #tbody>tr.tr>.td-catcombo{color:#0f172a!important;}
#theader .th-catcombo{text-align:left!important;}
#tbody>tr.tr>.td-name{color:#f8fafc!important;font-weight:950!important;}
#tbody>tr.tr>.td-dorsal{color:#f8fafc!important;font-weight:750!important;}
:root.light #tbody>tr.tr>.td-name,:root.light #tbody>tr.tr>.td-dorsal{color:#0f172a!important;}
@media(max-width:900px){
  #theader .th-catcombo,#tbody>tr.tr>.td-catcombo{display:none!important;}
  #theader .th-country,#tbody .td-country{width:48px!important;min-width:48px!important;}
  #tbody .td-country .flag-only{font-size:1.42rem!important;}
}
@media(max-width:640px){
  #theader .th-country,#tbody .td-country{width:42px!important;min-width:42px!important;}
  #tbody .td-country .flag-only{font-size:1.3rem!important;}
}



/* Filtros: Evento arriba; debajo Género + Categoría + acciones a la derecha */
.filters{display:grid!important;grid-template-columns:minmax(320px,1fr) minmax(260px,auto) auto auto!important;gap:12px 16px!important;align-items:end!important;}
.filters .group{display:contents!important;}
.filters .group>div:first-child{grid-column:1 / -1!important;}
#genderBlock{grid-column:1!important;}
#categoryBlock{grid-column:2!important;justify-self:start!important;}
#viewBlock{display:none!important;}
#exportBlock{grid-column:3!important;justify-self:end!important;}
#themeModeBlock{grid-column:4!important;justify-self:end!important;}
#searchDock{grid-column:1 / -1!important;}
#exportBlock .label{display:none!important;}
#exportPdfBtn{min-height:38px!important;padding:.38rem .72rem!important;font-size:.88rem!important;border-radius:9px!important;white-space:nowrap!important;}
#themeModeBlock .label{display:none!important;}
#themeModeSelect{min-height:38px!important;min-width:150px!important;padding:.35rem 2rem .35rem .7rem!important;border-radius:9px!important;font-size:.88rem!important;font-weight:800!important;}
#themeToggle{display:none!important;}
#genderSeg{min-height:38px!important;padding:3px!important;}
#genderSeg button{min-height:32px!important;padding:.32rem .76rem!important;font-size:.9rem!important;}
#catFilter{min-height:38px!important;min-width:250px!important;font-size:.9rem!important;border-radius:9px!important;padding-top:.35rem!important;padding-bottom:.35rem!important;}
@media(max-width:900px){.filters{grid-template-columns:1fr!important;}#genderBlock,#categoryBlock,#exportBlock,#themeModeBlock,#searchDock{grid-column:1!important;justify-self:stretch!important;}#exportBlock,#themeModeBlock{width:100%;}#exportPdfBtn,#themeModeSelect,#catFilter{width:100%!important;}#genderBlock .flex{align-items:stretch!important;}#genderSeg{width:100%!important;justify-content:flex-start!important;}}

/* País: solo bandera, sin código textual */
#tbody .td-country{font-size:0!important;}
#tbody .td-country .flag-only{font-size:1.75rem!important;}

/* Top 3: círculo con laureles alrededor, como la imagen */
#tbody>tr.tr>.td-pos{font-size:0!important;text-align:center!important;min-width:72px!important;width:72px!important;}
#tbody>tr.tr>.td-pos .pos-medal{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;font-size:18px!important;font-weight:1000!important;line-height:1;box-shadow:0 7px 18px rgba(0,0,0,.22);}
#tbody>tr.tr>.td-pos .pos-medal::before,#tbody>tr.tr>.td-pos .pos-medal::after{position:absolute;top:50%;transform:translateY(-50%);font-size:20px;font-weight:900;line-height:1;opacity:.98;}
#tbody>tr.tr>.td-pos .pos-medal::before{content:'‹';left:-14px;}
#tbody>tr.tr>.td-pos .pos-medal::after{content:'›';right:-14px;}
#tbody>tr.tr>.td-pos .pos-medal.medal-1{background:linear-gradient(180deg,#fff3a3,#facc15 52%,#ca8a04);color:#111827;border:1px solid #fde68a;}
#tbody>tr.tr>.td-pos .pos-medal.medal-1::before,#tbody>tr.tr>.td-pos .pos-medal.medal-1::after{color:#facc15;text-shadow:0 1px 8px rgba(250,204,21,.3);}
#tbody>tr.tr>.td-pos .pos-medal.medal-2{background:linear-gradient(180deg,#f8fafc,#cbd5e1 52%,#94a3b8);color:#111827;border:1px solid #e2e8f0;}
#tbody>tr.tr>.td-pos .pos-medal.medal-2::before,#tbody>tr.tr>.td-pos .pos-medal.medal-2::after{color:#cbd5e1;}
#tbody>tr.tr>.td-pos .pos-medal.medal-3{background:linear-gradient(180deg,#fed7aa,#fb923c 52%,#c2410c);color:#111827;border:1px solid #fdba74;}
#tbody>tr.tr>.td-pos .pos-medal.medal-3::before,#tbody>tr.tr>.td-pos .pos-medal.medal-3::after{color:#fb923c;}
#tbody>tr.tr>.td-pos .pos-normal{font-size:.95rem!important;color:#f8fafc!important;font-weight:900!important;}
:root.light #tbody>tr.tr>.td-pos .pos-normal{color:#0f172a!important;}

/* Solo el tiempo en verde. Club y Pos Cat/Categoría en blanco/neutro */
#tbody>tr.tr>.td-club{color:#f8fafc!important;font-weight:650!important;}
#tbody>tr.tr>.td-catcombo{color:#f8fafc!important;font-weight:850!important;}
#tbody>tr.tr>.td-time{color:var(--v3-green)!important;font-weight:1000!important;}
:root.light #tbody>tr.tr>.td-club,:root.light #tbody>tr.tr>.td-catcombo{color:#111827!important;}

/* Tema blanco redefinido completo */
:root.light{--bg:#f4f7fb!important;--card:#ffffff!important;--line:#d9e2ef!important;--txt:#0f172a!important;--muted:#64748b!important;--detail:#f1f5f9!important;--v3-text:#0f172a!important;--v3-line:#d7e0eb!important;--v3-green:#16a34a!important;--v3-green-2:#16a34a!important;}
:root.light body{background:linear-gradient(180deg,#f8fafc 0%,#eef4f8 100%)!important;color:#0f172a!important;}
:root.light .header{background:rgba(255,255,255,.94)!important;border-bottom:1px solid #dbe4ef!important;box-shadow:0 10px 28px rgba(15,23,42,.08)!important;}
:root.light .card{background:#ffffff!important;border:1px solid #dbe4ef!important;box-shadow:0 8px 24px rgba(15,23,42,.06)!important;}
:root.light .label,:root.light .small{color:#64748b!important;}
:root.light #raceTitle{color:#15803d!important;}
:root.light #hdrInfo{color:#475569!important;}
:root.light .select,:root.light .input,:root.light #searchBox,:root.light #themeModeSelect{background:#ffffff!important;color:#0f172a!important;border-color:#cbd5e1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 2px 8px rgba(15,23,42,.04)!important;}
:root.light .segmented{background:#f1f5f9!important;border-color:#cbd5e1!important;}
:root.light .segmented button,:root.light .segmented a,:root.light #eventSeg .seg-btn{color:#334155!important;}
:root.light .segmented button.seg-active,:root.light .segmented a.seg-active,:root.light #eventSeg .seg-btn.seg-active{background:linear-gradient(180deg,#22c55e,#16a34a)!important;color:#fff!important;border-color:#16a34a!important;}
:root.light #theader .tr{background:linear-gradient(180deg,#eef2f7,#e8eef6)!important;}
:root.light #theader .th{color:#334155!important;border-color:#dbe4ef!important;}
:root.light #tbody>tr.tr{background:#ffffff!important;box-shadow:0 4px 12px rgba(15,23,42,.04)!important;}
:root.light #tbody>tr.tr:hover{background:#f8fafc!important;}
:root.light #tbody>tr.tr>.td{color:#0f172a!important;border-color:#e2e8f0!important;}
:root.light #tbody>tr.tr>.td-time{color:#16a34a!important;}
:root.light #timelineTitle{color:#0f172a!important;}
:root.light #selPoint{color:#334155!important;}
:root.light .point{background:#ffffff!important;color:#0f172a!important;border-color:#cbd5e1!important;}
:root.light .point.active{background:#166534!important;border-color:#15803d!important;color:#fff!important;}
:root.light .details{background:#f8fafc!important;border-color:#22c55e!important;color:#0f172a!important;}
:root.light .btn-primary{background:#ffffff!important;color:#16a34a!important;border-color:#16a34a!important;box-shadow:none!important;}
:root.light .btn-primary:hover{background:#ecfdf5!important;}

@media(max-width:768px){#tbody>tr.tr>.td-pos{min-width:58px!important;width:58px!important;}#tbody>tr.tr>.td-pos .pos-medal{width:34px;height:34px;font-size:16px!important;}#tbody>tr.tr>.td-pos .pos-medal::before,#tbody>tr.tr>.td-pos .pos-medal::after{font-size:17px;}#tbody>tr.tr>.td-pos .pos-medal::before{left:-11px;}#tbody>tr.tr>.td-pos .pos-medal::after{right:-11px;}}



/* Segunda línea de filtros: Género + Categoría juntos; acciones a la derecha */
.filters{
  display:grid!important;
  grid-template-columns:auto auto minmax(18px,1fr) auto auto!important;
  gap:8px 10px!important;
  align-items:end!important;
}
.filters .group{display:contents!important;}
.filters .group>div:first-child{grid-column:1 / -1!important;}
#genderBlock{grid-column:1!important;justify-self:start!important;}
#categoryBlock{grid-column:2!important;justify-self:start!important;margin-left:0!important;}
#viewBlock{display:none!important;}
#exportBlock{grid-column:4!important;justify-self:end!important;}
#themeModeBlock{grid-column:5!important;justify-self:end!important;}
#searchDock{grid-column:1 / -1!important;}
#genderBlock .flex{gap:8px!important;}
#genderSeg{min-height:38px!important;padding:3px!important;}
#genderSeg button{min-height:32px!important;padding:.32rem .76rem!important;font-size:.9rem!important;}
#catFilter{min-height:38px!important;min-width:230px!important;font-size:.9rem!important;border-radius:999px!important;padding:.34rem 2rem .34rem .8rem!important;}
#exportBlock .label,#themeModeBlock .label{display:none!important;}
#exportPdfBtn{min-height:36px!important;padding:.34rem .68rem!important;font-size:.82rem!important;border-radius:999px!important;}

/* Selector fondo negro/blanco con el mismo estilo que Masculino/Femenino */
#themeModeSelect{display:none!important;}
#themeSeg.segmented{display:inline-flex!important;min-height:38px!important;padding:3px!important;border-radius:999px!important;gap:4px!important;}
#themeSeg button{min-height:32px!important;padding:.32rem .76rem!important;font-size:.86rem!important;font-weight:900!important;border-radius:999px!important;border:1px solid transparent!important;background:transparent!important;color:#cbd5e1!important;cursor:pointer!important;}
#themeSeg button.seg-active{background:linear-gradient(180deg,#34d399,#059669)!important;color:#fff!important;border-color:#10b981!important;box-shadow:0 6px 16px rgba(16,185,129,.22)!important;}
:root.light #themeSeg button{color:#334155!important;}
:root.light #themeSeg button.seg-active{background:linear-gradient(180deg,#22c55e,#16a34a)!important;color:#fff!important;border-color:#16a34a!important;}
:root.light #eventSeg.segmented{
  background:#eef2f7!important;
  border:1px solid #cbd5e1!important;
  padding:6px!important;
}
:root.light #eventSeg .seg-btn{
  background:#ffffff!important;
  color:#334155!important;
  border:1px solid #cbd5e1!important;
  box-shadow:none!important;
}
:root.light #eventSeg .seg-btn:hover{
  background:#f8fafc!important;
  color:#0f172a!important;
  border-color:#94a3b8!important;
}
:root.light #eventSeg .seg-btn.seg-active{
  background:linear-gradient(180deg,#22c55e,#16a34a)!important;
  color:#fff!important;
  border-color:#16a34a!important;
}

/* Desplegable: ficha en 2 columnas, más clara y cercana al JPG */
.details{
  background:linear-gradient(180deg,rgba(10,20,29,.98),rgba(7,16,24,.98))!important;
  border:1px solid rgba(52,211,153,.55)!important;
  border-radius:18px!important;
  padding:18px!important;
  box-shadow:0 18px 40px rgba(0,0,0,.34)!important;
}
.details-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
  margin-bottom:14px!important;
}
.details-head h4{
  margin:0!important;
  color:#f8fafc!important;
  font-size:1.1rem!important;
  font-weight:780!important;
  letter-spacing:-.02em!important;
}
.details-right{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:10px!important;
  position:static!important;
}
.details-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.details-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.details-btn{
  min-height:38px!important;
  padding:.48rem .9rem!important;
  border-radius:12px!important;
  font-size:.92rem!important;
  font-weight:680!important;
  text-decoration:none!important;
}
.details-btn-dark{
  background:#101826!important;
  border-color:#334155!important;
  color:#f8fafc!important;
}
.inline-diploma-btn{
  min-height:36px!important;
  padding:.34rem .62rem!important;
  border-radius:10px!important;
  font-size:.84rem!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:768px){
  .inline-diploma-btn{
    min-height:32px!important;
    padding:.28rem .48rem!important;
    font-size:.76rem!important;
  }
}
.details-overview{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,280px)!important;
  gap:12px!important;
  align-items:stretch!important;
}
.details-chip-wrap{display:grid!important;gap:10px!important;min-width:0!important;}
.details-chip-row{display:grid!important;gap:10px!important;}
.details-chip-row-top{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.details-chip-row-bottom{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.details-status-note{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  align-items:flex-start!important;
  margin-top:10px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  border:1px solid rgba(251,191,36,.38)!important;
  background:linear-gradient(180deg,rgba(120,53,15,.2),rgba(67,20,7,.14))!important;
}
.details-status-note-label{
  color:#fde68a!important;
  font-size:.76rem!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.details-status-note-value{
  color:#f8fafc!important;
  font-size:.92rem!important;
  font-weight:620!important;
  line-height:1.35!important;
  min-width:0!important;
  flex:1 1 240px!important;
}
.detail-chip{
  background:linear-gradient(180deg,rgba(14,27,40,.96),rgba(10,20,31,.96))!important;
  border:1px solid rgba(34,197,94,.62)!important;
  border-radius:18px!important;
  padding:11px 16px!important;
  min-height:72px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)!important;
}
.detail-chip-time{min-height:92px!important;}
.detail-chip-time-body{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.detail-chip-title{
  color:#93c5fd!important;
  font-size:.78rem!important;
  font-weight:700!important;
  letter-spacing:.015em!important;
}
.detail-chip-value{
  color:#f8fafc!important;
  font-size:1.18rem!important;
  font-weight:760!important;
  line-height:1.02!important;
}
.detail-chip-time .detail-chip-value{
  color:#ffffff!important;
  font-size:1.95rem!important;
  font-weight:820!important;
}
.details-chip-row-top .detail-chip-time .detail-chip-value{
  margin-top:-2px!important;
}
.details-chip-row-top .detail-chip-time:first-child .detail-chip-value{
  color:var(--v3-green,#46f06f)!important;
  text-shadow:0 0 14px rgba(70,240,111,.14)!important;
}
.detail-chip-meta{
  color:#b6f5d0!important;
  font-size:.74rem!important;
  font-weight:680!important;
}
.detail-chip-meta-inline{
  align-self:flex-start!important;
  white-space:nowrap!important;
  margin-top:.42rem!important;
  text-align:right!important;
}
.detail-chip-general .detail-chip-title{color:#60a5fa!important;}
.detail-chip-gender .detail-chip-title{color:#86efac!important;}
.detail-chip-category .detail-chip-title{color:#facc15!important;}
:root.light .details-head h4{color:#0f172a!important;}
:root.light .details-btn,
:root.light .details-btn-dark{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:#cbd5e1!important;
  box-shadow:none!important;
}
:root.light .detail-chip{
  background:#ffffff!important;
  border-color:#22c55e!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
}
:root.light .detail-chip-time{
  background:#ffffff!important;
}
:root.light .detail-chip-value,
:root.light .detail-chip-time .detail-chip-value{
  color:#0f172a!important;
}
:root.light .details-chip-row-top .detail-chip-time:first-child .detail-chip-value{
  color:#16a34a!important;
  text-shadow:none!important;
}
:root.light .detail-chip-meta{
  color:#475569!important;
}
:root.light .details-status-note{
  background:linear-gradient(180deg,rgba(254,249,195,.92),rgba(255,251,235,.95))!important;
  border-color:rgba(217,119,6,.34)!important;
}
:root.light .details-status-note-label{color:#b45309!important;}
:root.light .details-status-note-value{color:#1f2937!important;}
.details-video-card{
  display:block!important;
  min-height:100%!important;
  border-radius:16px!important;
  overflow:hidden!important;
  border:1px solid rgba(52,211,153,.55)!important;
  background:#020617!important;
  box-shadow:0 16px 28px rgba(0,0,0,.26)!important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease!important;
}
.details-video-card:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 20px 34px rgba(0,0,0,.34)!important;
  border-color:rgba(74,222,128,.8)!important;
}
.details-video-card-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:168px!important;
  object-fit:cover!important;
}
:root.light .details-video-card{
  background:#ffffff!important;
  border-color:#22c55e!important;
  box-shadow:0 14px 26px rgba(15,23,42,.12)!important;
}
.pill-sm{
  border-color:rgba(148,163,184,.28)!important;
  background:#111827!important;
  color:#e5e7eb!important;
  font-weight:620!important;
}
:root.light .pill-sm{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:#cbd5e1!important;
}
@media(max-width:768px){
  .details-overview{grid-template-columns:1fr!important;}
  .details-chip-row-top,.details-chip-row-bottom{grid-template-columns:1fr!important;}
  .details-head,.details-right,.details-meta,.details-actions{align-items:flex-start!important;justify-content:flex-start!important;}
  .details-video-card-img{min-height:140px!important;}
  .detail-chip-time-body{flex-direction:column!important;align-items:flex-start!important;}
  .detail-chip-meta-inline{margin-top:0!important;text-align:left!important;}
}

/* MUY IMPORTANTE: tipografía más ligera y club siempre blanco */
#theader .th{font-weight:720!important;letter-spacing:.018em!important;}
#theader .th:first-child,
#tbody>tr.tr>.td-toggle{
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  padding-left:.18rem!important;
  padding-right:.18rem!important;
  text-align:center!important;
}
#theader .th:nth-child(2),#tbody>tr.tr>.td-pos{
  width:56px!important;
  min-width:56px!important;
  max-width:56px!important;
}
#theader .th:nth-child(3),#tbody>tr.tr>.td-dorsal{
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
}
#theader .th:nth-child(4),#tbody>tr.tr>.td-name{width:30%!important;max-width:30%!important;}
#theader .th:nth-child(5),#tbody>tr.tr>.td-club{width:20%!important;max-width:20%!important;}
#theader .th:nth-child(6),#tbody>tr.tr>.td-time{width:6%!important;max-width:6%!important;}
#theader .th:nth-child(7),#tbody>tr.tr>.td-catcombo{width:14%!important;max-width:14%!important;}
#theader .th,
#tbody>tr.tr>.td{
  padding-left:.32rem!important;
  padding-right:.32rem!important;
}
#theader .th:nth-child(2),
#tbody>tr.tr>.td-pos{
  padding-left:.08rem!important;
  padding-right:.08rem!important;
  text-align:center!important;
}
#theader .th:nth-child(3),
#tbody>tr.tr>.td-dorsal{
  padding-left:.12rem!important;
  padding-right:.12rem!important;
}
#tbody>tr.tr>.td-name{
  color:#f8fafc!important;
  font-weight:660!important;
  position:relative!important;
  display:table-cell!important;
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  padding-left:2.08rem!important;
  padding-top:.22rem!important;
  padding-bottom:.22rem!important;
  line-height:1.05!important;
  vertical-align:middle!important;
}
#tbody>tr.tr>.td-name .name-main{
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  display:inline-block!important;
  vertical-align:middle!important;
  line-height:1.05!important;
}
#tbody>tr.tr>.td-name .name-flag{
  position:absolute!important;
  left:.34rem!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:2!important;
  pointer-events:none!important;
}
#tbody>tr.tr>.td-name .flag-inline{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:24px!important;
  height:16px!important;
  visibility:visible!important;
  opacity:1!important;
}
#tbody>tr.tr>.td-name .flag-inline-img{
  display:block!important;
  width:24px!important;
  height:16px!important;
  object-fit:cover!important;
  border-radius:3px!important;
  box-shadow:0 1px 3px rgba(0,0,0,.24)!important;
  visibility:visible!important;
  opacity:1!important;
}
#tbody>tr.tr>.td-dorsal{color:#f8fafc!important;font-weight:560!important;}
#tbody>tr.tr>.td-club{
  color:#f8fafc!important;
  font-weight:430!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#tbody>tr.tr>.td-country,
#tbody>tr.tr>.td-catcombo{
  color:#dbe4ee!important;
  font-weight:500!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#theader .th{
  font-size:.7rem!important;
}
#tbody>tr.tr>.td{
  font-size:.88rem!important;
}
#tbody>tr.tr>.td-time,
#tbody>tr.tr>.td.td-time,
#tbody>tr.tr>td.td-time strong{
  color:var(--v3-green,#46f06f)!important;
  font-weight:760!important;
  font-size:.96rem!important;
  text-shadow:0 0 12px rgba(70,240,111,.22)!important;
  text-align:left!important;
}
:root #theader .th:nth-child(6){text-align:left!important;padding-right:0!important;}
#tbody>tr.tr>.td-time{padding-right:0!important;text-align:left!important;}
:root.light #tbody>tr.tr>.td-name,
:root.light #tbody>tr.tr>.td-dorsal{color:#0f172a!important;}
:root.light #tbody>tr.tr>.td-club{color:#0f172a!important;}
:root.light #tbody>tr.tr>.td-country,
:root.light #tbody>tr.tr>.td-catcombo{color:#1f2937!important;}
:root.light #tbody>tr.tr>.td-time,
:root.light #tbody>tr.tr>.td.td-time,
:root.light #tbody>tr.tr>td.td-time strong{color:#16a34a!important;}

/* Top 3: fondo claramente tipo medalla */
#tbody>tr.tr>.td-pos{font-size:0!important;text-align:center!important;min-width:56px!important;width:56px!important;overflow:visible!important;}
#theader .th-share,
#tbody>tr.tr>.td-share{
  width:54px!important;
  min-width:54px!important;
  max-width:54px!important;
}
#tbody>tr.tr>.td-share{
  display:table-cell!important;
  text-align:center!important;
  vertical-align:middle!important;
  overflow:hidden!important;
}
#tbody>tr.tr>.td-share .share-btn,
#tbody>tr.tr>.td-share .inline-diploma-btn,
#tbody>tr.tr>.td-video .video-btn{
  display:inline-flex!important;
  margin:0 auto!important;
}
.inline-diploma-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:50px!important;
  min-height:34px!important;
  padding:.16rem .18rem!important;
  border-radius:12px!important;
  font-size:.64rem!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
@media(max-width:768px){
  #theader .th:first-child,
  #tbody>tr.tr>.td-toggle{
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    padding-left:.1rem!important;
    padding-right:.1rem!important;
  }
  #theader .th:nth-child(4),#tbody>tr.tr>.td-name{width:auto!important;max-width:none!important;}
  #theader .th:nth-child(5),#tbody>tr.tr>.td-club{width:18%!important;max-width:18%!important;}
  #theader .th:nth-child(6),#tbody>tr.tr>.td-time{
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
  }
  #theader .th:nth-child(7),#tbody>tr.tr>.td-catcombo{width:9%!important;max-width:9%!important;}
  #theader .th-share,
  #tbody>tr.tr>.td-share{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
  }
  .inline-diploma-btn{
    max-width:40px!important;
    min-height:28px!important;
    font-size:.5rem!important;
    padding:.08rem .08rem!important;
  }
  #tbody>tr.tr>.td-pos .pos-medal::before,
  #tbody>tr.tr>.td-pos .pos-medal::after{
    display:none!important;
    content:none!important;
  }
}
#tbody>tr.tr>.td-pos .pos-medal{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:40px!important;
  border-radius:999px!important;
  font-size:17px!important;
  font-weight:760!important;
  line-height:1!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.52), inset 0 -4px 0 rgba(0,0,0,.18), 0 8px 18px rgba(0,0,0,.25)!important;
  z-index:1!important;
}
#tbody>tr.tr>.td-pos .pos-medal{
  text-shadow:0 1px 0 rgba(255,255,255,.28)!important;
}
#tbody>tr.tr>.td-pos .pos-medal::before,
#tbody>tr.tr>.td-pos .pos-medal::after{
  content:none!important;
  display:none!important;
}
#tbody>tr.tr>.td-pos .pos-medal.medal-1{
  background:
    radial-gradient(circle at 33% 28%, rgba(255,255,255,.9) 0 10%, transparent 11%),
    radial-gradient(circle at 32% 28%,#fffbe3 0%,#fde68a 18%,#facc15 48%,#d4a10b 72%,#9a6700 100%)!important;
  color:#111827!important;
  border:1px solid #fde68a!important;
}
#tbody>tr.tr>.td-pos .pos-medal.medal-2{
  background:
    radial-gradient(circle at 33% 28%, rgba(255,255,255,.92) 0 10%, transparent 11%),
    radial-gradient(circle at 32% 28%,#ffffff 0%,#f8fafc 18%,#cbd5e1 48%,#94a3b8 72%,#64748b 100%)!important;
  color:#111827!important;
  border:1px solid #e2e8f0!important;
}
#tbody>tr.tr>.td-pos .pos-medal.medal-3{
  background:
    radial-gradient(circle at 33% 28%, rgba(255,255,255,.78) 0 10%, transparent 11%),
    radial-gradient(circle at 32% 28%,#fff1e7 0%,#fed7aa 18%,#fb923c 48%,#c2410c 72%,#7c2d12 100%)!important;
  color:#111827!important;
  border:1px solid #fdba74!important;
}
#tbody>tr.tr>.td-pos .pos-normal{font-size:.88rem!important;color:#f8fafc!important;font-weight:620!important;}
:root.light #tbody>tr.tr>.td-pos .pos-normal{color:#0f172a!important;}

@media(max-width:900px){
  .filters{grid-template-columns:1fr!important;gap:10px!important;}
  #genderBlock,#categoryBlock,#exportBlock,#searchDock{grid-column:1!important;justify-self:stretch!important;width:100%!important;}
  #catFilter,#exportPdfBtn,#themeSeg{width:100%!important;}
  #genderBlock .flex{align-items:stretch!important;}
  #genderSeg{width:100%!important;justify-content:flex-start!important;}
  #themeHeaderDock{margin-left:auto!important;}
  #themeHeaderDock #themeSeg{justify-content:flex-end!important;}
}
@media(max-width:768px){
  #tbody>tr.tr>.td-pos{min-width:62px!important;width:62px!important;}
  #tbody>tr.tr>.td-pos .pos-medal{width:34px!important;height:34px!important;font-size:15px!important;}
  #exportBlock{display:none!important;}
  .header .wrap{align-items:flex-start!important;flex-wrap:wrap!important;overflow-x:clip!important;}
  .header .wrap > *{min-width:0!important;}
  #themeHeaderDock{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    flex-basis:100%!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-top:8px!important;
    justify-content:flex-start!important;
    gap:8px!important;
    overflow:hidden!important;
  }
  #themeHeaderDock .live-lang-inline{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr)!important;
    align-items:center!important;
    justify-content:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:8px!important;
  }
  #themeHeaderDock .live-lang-select{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }
  #themeHeaderDock #themeModeBlock{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  #themeHeaderDock #themeSeg{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-content:stretch!important;
  }
  #themeHeaderDock #themeSeg button{padding:.3rem .62rem!important;font-size:.8rem!important;}
  #themeHeaderDock #themeSeg button{
    min-width:0!important;
    width:100%!important;
  }
}



#topFiltersRow{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:16px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
#topFiltersRow > div{
  min-width:0!important;
}
#typeBlock[hidden],#modeSegWrap[hidden]{
  display:none!important;
}
.search-controls-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px!important;
  align-items:end!important;
  width:100%!important;
}
.search-inline-fields{
  display:grid!important;
  grid-template-columns:minmax(180px,220px) minmax(280px,1fr)!important;
  gap:12px!important;
  width:100%!important;
  align-items:end!important;
}
.search-inline-fields .inline-field-bib{
  min-width:180px!important;
}
.search-inline-fields .inline-field-search{
  min-width:280px!important;
}
.search-controls-row .inline-field-clear{
  min-width:96px!important;
}
.search-controls-row .inline-field-clear .btn-primary{
  width:auto!important;
  min-width:96px!important;
}
#typeBlock{
  flex:0 0 auto!important;
}
#genderBlock{
  order:1!important;
  flex:0 0 auto!important;
}
#attributeBlock{
  order:4!important;
  flex:1 0 100%!important;
  grid-column:1 / -1!important;
  width:100%!important;
  margin-top:2px!important;
}
#categoryBlock{
  order:2!important;
  flex:1 1 240px!important;
}
#exportBlock{
  order:3!important;
  flex:0 0 auto!important;
  margin-left:0!important;
}
#categoryBlock #catFilter{
  width:100%!important;
  min-width:220px!important;
}
#attributeBlock .label{
  margin-bottom:6px!important;
}
#attributeFilters{
  width:100%!important;
}
#attributeFilters .attribute-filter-row{
  display:flex!important;
  align-items:flex-end!important;
  gap:12px!important;
  flex-wrap:nowrap!important;
  flex:0 0 auto!important;
  min-width:0!important;
}
#attributeFilters .attribute-filter-title{
  min-width:auto!important;
  line-height:38px!important;
  font-size:13px!important;
  font-weight:800!important;
  color:#6a7892!important;
  white-space:nowrap!important;
}
#attributeFilters .segmented{
  min-height:38px!important;
  padding:3px!important;
}
#attributeFilters .segmented button{
  min-height:32px!important;
  padding:.32rem .76rem!important;
  font-size:.9rem!important;
}
#attributeFilters .attribute-clear-seg{
  margin-left:auto!important;
}
#timeline{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  overflow-x:auto!important;
  gap:0!important;
}
#timeline .point-wrap{
  flex:0 0 auto!important;
  justify-content:center!important;
}
#timeline .point-wrap:not(:last-child)::after{
  flex:0 0 auto!important;
  width:56px!important;
  min-width:56px!important;
}
@media(min-width:901px){
  .filters{
    grid-template-columns:1fr auto!important;
    align-items:end!important;
  }
  #searchDock{
    min-width:0!important;
    width:100%!important;
  }
  .search-controls-row{
    grid-template-columns:220px minmax(360px,1fr) auto!important;
    align-items:end!important;
  }
  .search-inline-fields{
    display:contents!important;
  }
  .search-inline-fields .inline-field-bib{
    grid-column:1!important;
    min-width:0!important;
  }
  .search-inline-fields .inline-field-search{
    grid-column:2!important;
    min-width:0!important;
  }
  .search-controls-row .inline-field-clear{
    grid-column:3!important;
    min-width:0!important;
  }
  .search-inline-fields .inline-field-bib .input,
  .search-inline-fields .inline-field-search .input{
    width:100%!important;
    min-width:0!important;
  }
  #typeBlock,#genderBlock,#categoryBlock,#exportBlock,#attributeBlock{
    grid-column:auto!important;
    justify-self:auto!important;
    display:block!important;
  }
  #typeBlock #modeSegWrap{display:inline-flex!important;white-space:nowrap!important;}
}
@media(max-width:900px){
  .filters{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  .filters > *{
    width:100%!important;
  }
  #topFiltersRow{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  #typeBlock,
  #genderBlock,
  #attributeBlock,
  #categoryBlock,
  #exportBlock{
    flex:none!important;
    margin-left:0!important;
  }
  #attributeFilters .attribute-filter-row{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    flex:1 1 100%!important;
  }
  #attributeFilters .attribute-filter-title{
    min-width:0!important;
    line-height:1.35!important;
  }
  #attributeFilters .attribute-clear-seg{
    width:100%!important;
    margin-left:0!important;
  }
  #attributeFilters .attribute-clear-seg button{
    width:100%!important;
  }
  .search-controls-row{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .search-inline-fields{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #genderBlock,#attributeBlock,#typeBlock,#categoryBlock,#exportBlock,#searchDock{grid-column:1!important;justify-self:stretch!important;width:100%!important;}
  #typeBlock #modeSegWrap,#categoryBlock #catFilter{width:100%!important;}
  #exportBlock{margin-left:0!important;}
  #timeline{
    justify-content:center!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
  #timeline .point-wrap{
    flex:0 0 auto!important;
  }
  #timeline .point-wrap:not(:last-child)::after{
    width:28px!important;
    min-width:28px!important;
  }
  #clearDock{display:none!important;}
  #clearDock .label{
    display:none!important;
  }
  #clearDock .btn-primary{
    width:100%!important;
  }
  .search-controls-row .inline-field-clear,
  .search-controls-row .inline-field-clear .btn-primary{
    width:100%!important;
    min-width:0!important;
  }
  #searchDock .input,
  #searchDock .btn-primary,
  #categoryBlock #catFilter,
  #genderSeg,
  #modeSegWrap{
    width:100%!important;
  }
  #searchDock .inline-field{
    gap:5px!important;
  }
  #searchDock{
    margin-top:2px!important;
  }
}



.export-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
#genderBlock .flex{
  min-width:0!important;
  flex-wrap:wrap!important;
}
#genderSeg{
  min-width:0!important;
  flex:1 1 auto!important;
}
#pdfBtn{
  max-width:100%!important;
  min-width:0!important;
  flex:0 1 auto!important;
}
#trophiesTopBtn{
  background:linear-gradient(180deg,#facc15,#eab308)!important;
  color:#1f2937!important;
  border-color:#ca8a04!important;
  box-shadow:0 8px 20px rgba(234,179,8,.22)!important;
  font-weight:900!important;
}
#trophiesTopBtn:hover{
  background:linear-gradient(180deg,#fde047,#facc15)!important;
}
#tbody>tr.tr>.td{
  padding-top:.16rem!important;
  padding-bottom:.16rem!important;
}
.table{
  border-spacing:0 2px!important;
  table-layout:fixed!important;
}
#tbody>tr.tr{
  box-shadow:0 4px 10px rgba(0,0,0,.11)!important;
}
#tbody>tr.tr>.td-pos .pos-medal{
  width:34px!important;
  height:34px!important;
  font-size:15px!important;
}
#tbody>tr.tr>.td-pos .pos-medal::before,
#tbody>tr.tr>.td-pos .pos-medal::after{
  font-size:17px!important;
}
#tbody>tr.tr>.td-pos .pos-medal::before{
  left:-12px!important;
}
#tbody>tr.tr>.td-pos .pos-medal::after{
  right:-12px!important;
}
.toggle-arrow{
  min-width:24px!important;
  min-height:24px!important;
}
.video-icon{
  width:18px!important;
  height:18px!important;
}
.inline-diploma-btn{
  min-height:30px!important;
}
@media(max-width:768px){
  #pdfBtn{
    width:100%!important;
  }
  #exportBlock{
    display:block!important;
    width:100%!important;
    justify-self:stretch!important;
  }
  .export-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .export-actions .btn-primary{
    width:100%;
    text-align:center;
    justify-content:center;
  }
  #trophiesTopBtn,
  #exportPdfBtn{
    width:100%!important;
  }
  #tbody>tr.tr>.td{
    padding-top:.18rem!important;
    padding-bottom:.18rem!important;
  }
  .table{
    border-spacing:0 2px!important;
  }
}
@media(max-width:640px){
  #tbody>tr.tr>.td{
    padding-left:.2rem!important;
    padding-right:.2rem!important;
    font-size:.8rem!important;
  }
  #theader .th:first-child,
  #tbody>tr.tr>.td-toggle{
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    padding-left:.06rem!important;
    padding-right:.06rem!important;
  }
  #theader .th:nth-child(2),
  #tbody>tr.tr>.td-pos{
    min-width:44px!important;
    width:44px!important;
    max-width:44px!important;
  }
  #theader .th:nth-child(3),
  #tbody>tr.tr>.td-dorsal{
    min-width:40px!important;
    width:40px!important;
    max-width:40px!important;
  }
  #tbody>tr.tr>.td-pos .pos-medal{
    width:26px!important;
    height:26px!important;
    font-size:12px!important;
  }
  #tbody>tr.tr>.td-pos .pos-medal::before,
  #tbody>tr.tr>.td-pos .pos-medal::after{
    font-size:15px!important;
  }
  #tbody>tr.tr>.td-pos .pos-medal::before{
    left:-9px!important;
  }
  #tbody>tr.tr>.td-pos .pos-medal::after{
    right:-9px!important;
  }
  #tbody>tr.tr>.td-name{
    padding-left:1.42rem!important;
    font-size:.78rem!important;
  }
  #tbody>tr.tr>.td-name .name-flag{
    left:.12rem!important;
  }
  #tbody>tr.tr>.td-name .flag-inline,
  #tbody>tr.tr>.td-name .flag-inline-img{
    width:14px!important;
    height:10px!important;
  }
  #tbody>tr.tr>.td-time{
    min-width:66px!important;
    width:66px!important;
    max-width:66px!important;
    font-size:.84rem!important;
  }
  .th-video,.td-video{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
  }
  .video-btn{
    min-width:28px!important;
    min-height:28px!important;
    padding:.08rem!important;
    border-radius:6px!important;
  }
  .video-icon{
    width:15px!important;
    height:15px!important;
  }
  #theader .th-share,
  #tbody>tr.tr>.td-share{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
  }
  .share-btn{
    min-height:24px!important;
    height:24px!important;
    padding:0!important;
  }
  .icon-box{
    height:20px!important;
    max-width:26px!important;
  }
  .inline-diploma-btn{
    max-width:34px!important;
    min-height:24px!important;
    font-size:.46rem!important;
    padding:.04rem .04rem!important;
  }
}



/* Compact phone controls; desktop layout and data loading are unchanged. */
@media(max-width:768px){
:is(body,#compact-mobile-controls) .header{position:relative!important;top:auto!important}
:is(body,#compact-mobile-controls) .header .wrap{padding:6px 8px!important;gap:6px!important;min-height:0!important}
:is(body,#compact-mobile-controls) .header-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
:is(body,#compact-mobile-controls) .header .brand{width:100%!important;gap:8px!important;min-width:0!important}
:is(body,#compact-mobile-controls) .header .logo{height:30px!important;width:auto!important;max-width:90px!important}
:is(body,#compact-mobile-controls) #raceTitle,:is(body,#compact-mobile-controls) #headerTitle{font-size:15px!important;line-height:1.2!important;margin:0!important}
:is(body,#compact-mobile-controls) #hdrInfo{font-size:11px!important;line-height:1.2!important;margin:2px 0 0!important}
:is(body,#compact-mobile-controls) .head-sub{display:none!important}
:is(body,#compact-mobile-controls) .header-tools,:is(body,#compact-mobile-controls) #themeHeaderDock{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;width:auto!important;min-width:0!important;margin:0!important;flex-basis:auto!important;flex-direction:row!important}
:is(body,#compact-mobile-controls) .header-tools>*{width:auto!important;min-width:0!important;max-width:100%!important}
:is(body,#compact-mobile-controls) #liveLangControl{display:flex!important;align-items:center!important;padding:0!important;gap:3px!important;width:auto!important;flex:0 1 auto!important}
:is(body,#compact-mobile-controls) .live-lang-label,:is(body,#compact-mobile-controls) .live-lang-flag,:is(body,#compact-mobile-controls) #liveLangFlag{display:none!important}
:is(body,#compact-mobile-controls) #liveLangSelect{width:110px!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:5px 22px 5px 8px!important;font-size:12px!important}
:is(body,#compact-mobile-controls) #themeSeg{display:flex!important;width:auto!important;min-width:0!important;gap:2px!important;padding:2px!important;flex:0 0 auto!important}
:is(body,#compact-mobile-controls) #themeSeg button{font-size:0!important;min-width:36px!important;width:36px!important;height:32px!important;min-height:32px!important;padding:0!important;flex:none!important}
:is(body,#compact-mobile-controls) #themeSeg button::before{font-size:17px;line-height:1;content:'☀'}
:is(body,#compact-mobile-controls) #themeSeg button[data-theme="dark"]::before{content:'☾'}
:is(body,#compact-mobile-controls) .nav-row{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:5px!important;margin-top:6px!important;padding:0 0 2px!important}
:is(body,#compact-mobile-controls) .nav-row .navbtn{flex:0 0 auto!important;min-height:36px!important;padding:7px 9px!important;font-size:12px!important;white-space:nowrap!important}
:is(body,#compact-mobile-controls) main.wrap{padding:8px!important;gap:8px!important}
:is(body,#compact-mobile-controls) main>.card{padding:8px!important;margin-bottom:8px!important}
:is(body,#compact-mobile-controls) #eventSeg{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;max-width:100%!important;gap:5px!important;padding:2px 0 5px!important;min-width:0!important}
:is(body,#compact-mobile-controls) #eventSeg button,:is(body,#compact-mobile-controls) #eventSeg a{flex:0 0 auto!important;min-height:38px!important;padding:7px 10px!important;font-size:12px!important;white-space:nowrap!important}
:is(body,#compact-mobile-controls) .filters{gap:7px!important;padding:0!important}
:is(body,#compact-mobile-controls) .filters .label,:is(body,#compact-mobile-controls) .filters .muted{font-size:10px!important;line-height:1.2!important;margin-bottom:3px!important}
:is(body,#compact-mobile-controls) .filters .inline-field{min-width:0!important;width:100%!important}
:is(body,#compact-mobile-controls) .filters input{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
:is(body,#compact-mobile-controls) .filters select,:is(body,#compact-mobile-controls) .filters input[type="search"],:is(body,#compact-mobile-controls) .filters button.select{min-height:40px!important;height:40px!important;font-size:13px!important;padding-top:6px!important;padding-bottom:6px!important}
:is(body,#compact-mobile-controls) .controls-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;margin-top:0!important}
:is(body,#compact-mobile-controls) .search-panel{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
:is(body,#compact-mobile-controls) .search-panel-title{display:none!important}
:is(body,#compact-mobile-controls) .search-controls-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:6px!important;padding:0!important}
:is(body,#compact-mobile-controls) .search-inline-fields{gap:6px!important;min-width:0!important}
:is(body,#compact-mobile-controls) #searchRow,:is(body,#compact-mobile-controls) #clearBlock{width:auto!important;min-width:0!important}
:is(body,#compact-mobile-controls) #btnClear{width:auto!important;min-width:0!important;padding:8px!important;font-size:12px!important;min-height:40px!important}
:is(body,#compact-mobile-controls) .status-line{margin-top:4px!important;gap:4px!important;font-size:11px!important}
:is(body,#compact-mobile-controls) #filterInfo:empty,:is(body,#compact-mobile-controls) #statusMeta:empty{display:none!important}
:is(body,#compact-mobile-controls) #filtersCard #topFiltersRow{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
:is(body,#compact-mobile-controls) #filtersCard .filters>.group{margin:0!important}
:is(body,#compact-mobile-controls) #filtersCard #genderSeg{display:flex!important;flex-wrap:nowrap!important;gap:4px!important}
:is(body,#compact-mobile-controls) #filtersCard #genderSeg button{min-height:36px!important;padding:6px 10px!important;font-size:12px!important}
:is(body,#compact-mobile-controls) #filtersCard .export-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:6px!important}
:is(body,#compact-mobile-controls) #filtersCard .export-actions>*{flex:1!important;width:auto!important;min-height:36px!important;padding:6px!important;font-size:12px!important}
:is(body,#compact-mobile-controls) #filtersCard #searchDock{padding:0!important;margin:0!important}
:is(body,#compact-mobile-controls) #filtersCard .search-inline-fields{display:grid!important;grid-template-columns:90px minmax(0,1fr)!important}
:is(body,#compact-mobile-controls) #filtersCard .search-controls-row{grid-template-columns:minmax(0,1fr)!important}
:is(body,#compact-mobile-controls) #filtersCard .inline-field-clear{justify-self:end!important}
:is(body,#compact-mobile-controls) #timelineCard{padding:8px!important}
:is(body,#compact-mobile-controls) #timelineTitle{font-size:11px!important}
:is(body,#compact-mobile-controls) #timelineCard .timeline{margin:0!important;padding:4px 0!important}
}
@media(max-width:768px){
body #themeHeaderDock #themeModeBlock{width:auto!important;flex:none!important;min-width:0!important}
body #themeHeaderDock #themeSeg{display:flex!important;width:auto!important;flex:none!important}
body #themeHeaderDock #themeSeg button{font-size:0!important;width:36px!important;min-width:36px!important;padding:0!important}
body #themeHeaderDock #liveLangControl{display:flex!important;width:auto!important}
body #themeHeaderDock #liveLangSelect{width:110px!important}
body #filtersCard #eventSeg{flex-wrap:nowrap!important;overflow-x:auto!important}
body #filtersCard #searchDock .inline-field{width:100%!important;min-width:0!important}
body #filtersCard #searchDock input{width:100%!important;min-width:0!important;max-width:100%!important}
}
@media(max-width:768px){.header>.wrap{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important}#themeHeaderDock{grid-column:1/-1!important}.header .flex-1{min-width:0!important}#topFiltersRow>#typeBlock:has(#modeSegWrap[style*="display: none"]){display:none!important}}

/* Shared mobile overrides must never unhide the conventional lap filters. */
:is(body,#compact-mobile-controls).lap-mode #filtersCard #topFiltersRow{display:none!important}
.results-mobile-filters{display:none}
@media(max-width:768px){
  body:not(.lap-mode):not(.pdf-only) .results-mobile-filters{display:inline-flex;align-items:center;justify-content:center;min-height:36px;white-space:nowrap}
  body.lap-mode .results-mobile-filters{display:none!important}
  :is(body,#compact-mobile-controls).results-mobile-ready:not(.results-filters-expanded):not(.lap-mode) #filtersCard #genderBlock,
  :is(body,#compact-mobile-controls).results-mobile-ready:not(.results-filters-expanded):not(.lap-mode) #filtersCard #categoryBlock,
  :is(body,#compact-mobile-controls).results-mobile-ready:not(.results-filters-expanded):not(.lap-mode) #filtersCard #attributeBlock{display:none!important}
  body.results-mobile-ready #searchDock .inline-field-clear{display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important}
  body.results-mobile-ready #searchDock .inline-field-clear .btn-primary{width:auto!important;flex:1!important;min-height:36px!important}
}
