/* ==========================================================================
   Scoore.cz — detail události (event page + podstránky)
   Vše scoped pod .e-page, třídy prefixované e-  → žádná kolize s frontend.css.
   Recykluje tokeny z :root (--bg,--surface,--line,--accent,--text-*) a doplňuje
   lokální (--e-win,--e-yellow,--e-red,--e-bartrail,--e-surface3).
   ========================================================================== */
.e-page{
  --e-surface3:#10141d;
  --e-win:#00d26a;
  --e-yellow:#ffc60a;
  --e-red:#e91e63;
  --e-bartrail:#3a4154;
  max-width:820px;
}

/* lede / breadcrumbs už řeší frontend.css; perex eventu: */
.e-page .e-lede{font-size:15.5px;color:var(--text-2);line-height:1.6;margin:6px 0 22px;}
.e-page .e-lede b{color:var(--text);font-weight:700;}

/* ---- taby ---- */
.e-page .e-tabs{display:flex;gap:26px;margin-bottom:20px;flex-wrap:wrap;}
.e-page .e-tab a{color:var(--text-4);transition:.15s;display:inline-flex;align-items:center;gap:7px;font-weight:800;letter-spacing:-.025em;line-height:1;-webkit-font-smoothing:antialiased;font-size:24px;}
.e-page .e-tab a:hover{color:var(--text-2);}
.e-page .e-tab.e-on a{color:var(--accent);}

/* ---- scoreboard (dvě karty, stav uprostřed) ---- */
.e-page .e-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;margin-bottom:10px;margin-top: 30px;}
.e-page .e-score .e-card{background:var(--surface);border-radius:16px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;}
.e-page .e-score .e-card.e-r{flex-direction:row-reverse;}
.e-page .e-score .e-nm{font-size:15px;font-weight:700;color:#fff;}
.e-page .e-score .e-pt{font-size:34px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;}
.e-page .e-score .e-card.e-lose .e-nm{color:var(--text-2);font-weight:600;}
.e-page .e-score .e-card.e-lose .e-pt{color:var(--text-3);}
.e-page .e-score .e-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text-4);padding:0 6px;min-width:64px;}
.e-page .e-score .e-mid small{display:block;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--text-3);margin-top:4px;}
.e-page[data-state="active"] .e-score .e-mid,
.e-page .e-score[data-state="active"] .e-mid{color:var(--accent);}
.e-page[data-section="kurzy"] .e-score .e-card,
.e-page[data-section="predikce"] .e-score .e-card{padding:12px 16px;}
.e-page[data-section="kurzy"] .e-score .e-pt,
.e-page[data-section="predikce"] .e-score .e-pt{font-size:22px;color:var(--text-2);}

/* ---- sekce ---- */
.e-page .e-sec{margin-top:34px;}
.e-page .e-sec h2{font-size:20px;font-weight:800;letter-spacing:-.01em;margin:0 0 4px;text-transform: none; color: var(--text);}
.e-page .e-lead{font-size:13.5px;color:var(--text-3);margin:0 0 16px;}

/* ---- průběh zápasu (zebra bez páteře: domácí vlevo, hosté vpravo, minuta uprostřed) ---- */
.e-page .e-tl{border:1px solid var(--line);border-radius:18px;padding:16px 14px;margin-bottom:14px;}
.e-page .e-half{text-align:center;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2);margin-bottom:8px;}
.e-page .e-ps{color:var(--text-4);margin-left:8px;font-variant-numeric:tabular-nums;}
.e-page .e-spine{padding:2px 0;}
.e-page .e-ev{display:grid;grid-template-columns:1fr 58px 1fr;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;}
.e-page .e-spine .e-ev:nth-child(even){}
.e-page .e-ev.e-g{background:var(--surface);}
.e-page .e-min{text-align:center;}
.e-page .e-h{text-align:right;}
.e-page .e-a{text-align:left;}
.e-page .e-line{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;}
.e-page .e-a .e-line{justify-content:flex-start;}
.e-page .e-h .e-line{justify-content:flex-end;}
.e-page .e-pl{font-size:14.5px;color:var(--text-2);font-weight:600;}
.e-page .e-ev.e-g .e-pl{color:#fff;font-weight:700;}
.e-page .e-out{color:var(--text-4);font-weight:400;font-size:13px;}
.e-page .e-evmeta{display:block;margin-top:2px;font-size:11.5px;color:var(--text-4);}
.e-page .e-tc{font-size:11px;font-weight:700;background:var(--surface-2);border-radius:6px;padding:2px 7px;color:var(--text-3);font-variant-numeric:tabular-nums;}
.e-page .e-sc{font-size:11px;font-weight:800;background:var(--accent);color:#fff;border-radius:6px;padding:2px 7px;}
.e-page .e-ico-ball{width:14px;height:14px;display:inline-block;vertical-align:middle;}
.e-page .e-ycard{display:inline-block;width:9px;height:13px;border-radius:2px;background:var(--e-yellow);}
.e-page .e-rcard{display:inline-block;width:9px;height:13px;border-radius:2px;background:var(--e-red);}
.e-page .e-x{color:var(--e-red);font-weight:800;}
.e-page .e-subic{display:inline-flex;flex-direction:column;line-height:.7;font-size:9px;font-weight:900;}
.e-page .e-subic .u{color:var(--e-win);}
.e-page .e-subic .d{color:var(--e-red);}

/* ---- statistiky ---- */
.e-stats { display: flex; flex-direction: column; gap: 16px; border: 1px solid var(--line); border-radius: 18px; padding: 10px 0px 20px 0px; }
.e-stats .e-fhead{border:none !important}
.e-page .e-panel{padding:0px 22px;}
.e-page .e-st{padding:7px 0 12px;}
.e-page .e-st-top{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin-bottom:8px;}
.e-page .e-sv{font-weight:800;font-variant-numeric:tabular-nums;min-width:58px;color:#fff;}
.e-page .e-sv.e-a{text-align:right;}
.e-page .e-sl{color:var(--text-2);font-size:13px;text-align:center;flex:1;}
.e-page .e-stsub{font-size:11px;color:var(--text-4);font-weight:600;}
.e-page .e-st-bar{display:flex;height:6px;gap:10px;}
.e-page .e-bar-l{width:50%;display:flex;justify-content:flex-end;background:#1b1f2d;border-radius:3px;}
.e-page .e-bar-r{width:50%;display:flex;justify-content:flex-start;background:#1b1f2d;border-radius:3px;}
.e-page .e-fill{height:100%;min-width:3px;border-radius:3px;transition:width .4s ease;}
.e-page .e-fill.win{background:var(--accent);}
.e-page .e-fill.trail{background:var(--e-bartrail);}

/* ---- informace ---- */
.e-page .e-info{border:1px solid var(--line);border-radius:18px;padding:6px 24px;}
.e-page .e-info table{width:100%;border-collapse:collapse;font-size:14px;}
.e-page .e-info tr{border-bottom:1px solid var(--line);}
.e-page .e-info tr:last-child{border-bottom:none;}
.e-page .e-info td{padding:13px 0;}
.e-page .e-info td.e-k{color:var(--text-2);}
.e-page .e-info td.e-v{text-align:right;font-weight:600;}
.e-page .e-muted{color:var(--text-4);font-weight:400;}

/* ---- forma (vzdušné řádky: vlevo zápas, vpravo výsledek) ---- */
.e-page .e-form{display:flex;flex-direction:column;gap:16px;}
.e-page .e-fteam{border:1px solid var(--line);border-radius:18px;padding:6px 22px;}
.e-page .e-fhead{display:flex;align-items:baseline;justify-content:space-between;padding:14px 0 12px;}
.e-page .e-fn{font-size:15px;font-weight:800;letter-spacing:-.01em;}
.e-page .e-flbl{color: var(--text-4); font-size: 12.5px;}
.e-page .e-frow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;}
.e-page .e-frow+.e-frow{border-top:1px solid var(--line);}
.e-page .e-fmatch{color:var(--text-2);font-size:14px;}
.e-page .e-fm-res{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;flex:none;}
.e-page .e-fm-res.e-w{background:var(--e-win);color: #00d26a; background: rgb(0 210 106 / 10%);}
.e-page .e-fm-res.e-l{background:var(--accent);color: #e91f63; background: rgb(233 31 99 / 10%);}
.e-page .e-fm-res.e-d{background: var(--surface-2); color: var(--text-3);background: rgb(20 24 34);}
.e-page .e-fm-res.e-u{background:var(--line-2);}

/* ---- H2H (jednořádkové: vlevo zápas, vpravo datum + skóre + výsledek) ---- */
.e-page .e-h2h{border:1px solid var(--line);border-radius:18px;padding:4px 22px;}
.e-page .e-hm{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;font-size:14px;}
.e-page .e-hm+.e-hm{border-top:1px solid var(--line);}
.e-page .e-hm-match{color:var(--text-2);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.e-page .e-hm-right{display:flex;align-items:center;gap:14px;flex:none;}
.e-page .e-hm-date{color:var(--text-4);font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap;}
.e-page .e-hm-score{font-weight:800;font-size:16px;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;}

/* ---- faq ---- */
.e-page .e-faq{border:1px solid var(--line);border-radius:18px;padding:4px 24px;}
.e-page .e-faq details{border-bottom:1px solid var(--line);}
.e-page .e-faq details:last-child{border-bottom:none;}
.e-page .e-faq summary{list-style:none;cursor:pointer;padding:16px 0;font-size:14.5px;font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.e-page .e-faq summary::-webkit-details-marker{display:none;}
.e-page .e-faq summary::after{content:"+";color:var(--text-4);font-size:18px;}
.e-page .e-faq details[open] summary::after{content:"–";}
.e-page .e-fa{padding:0 0 16px;font-size:14px;color:var(--text-2);line-height:1.55;}
.e-page .e-fa b{color:#fff;}

/* ---- kurzy: nejlepší kurz ---- */
.e-page .e-bestbar{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.e-page .e-bestcard{border:1px solid var(--line);border-radius:16px;padding:16px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;}
.e-page .e-bestcard.e-top{border-color:var(--accent);}
.e-page .e-pick{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-weight:700;}
.e-page .e-pick b{color:var(--text-2);}
.e-page .e-od{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:2px 0;}
.e-page .e-bk{font-size:12px;color:var(--text-4);}

/* ---- kurzy: tabulka ---- */
.e-page .e-oddspanel{padding:6px 0px;}
.e-page .e-odds{width:100%;border-collapse:collapse;font-size:14px;}
.e-page .e-odds th{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);font-weight:700;text-align:center;padding:14px 0 12px;}
.e-page .e-odds th.e-bkn{text-align:left;}
.e-page .e-odds th.e-po{text-align:right;}
.e-page .e-odds td{padding:11px 0;border-top:1px solid var(--line);text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:15px;}
.e-page .e-odds td.e-bkn{text-align:left;color:var(--text);font-weight:700;font-size:14px;}
.e-page .e-vv{display:inline-flex;align-items:center;gap:5px;justify-content:center;}
.e-page .e-hit{display:inline-flex;align-items:center;gap:5px;background:rgba(233,30,99,.14);color:#ff6d9d;border-radius:9px;padding:4px 10px;font-weight:800;}
.e-page .e-hit .e-tr-up,.e-page .e-hit .e-tr-dn{opacity:.9;}
.e-page .e-hitmark{color:#ff6d9d;}
.e-page .e-tr-up{color:var(--e-win);font-size:9px;}
.e-page .e-tr-dn{color:var(--e-red);font-size:9px;}
.e-page .e-po{font-variant-numeric:tabular-nums;font-weight:700;text-align:right;}
.e-page td.e-po{text-align:right;}
.e-page .e-pct{font-size:14.5px;font-weight:800;}
.e-page .e-po.e-bestpay .e-pct{color:var(--e-win);}
.e-page .e-po small{display:block;font-size:11px;color:var(--text-4);font-weight:400;margin-top:2px;}
.e-page .e-pobar{display:block;height:3px;width:64px;background:var(--line-2);border-radius:2px;margin:6px 0 0 auto;}
.e-page .e-pobar i{display:block;height:100%;background:var(--e-win);border-radius:2px;}
.e-page .e-odds tr.e-avg td{color:var(--text-3);font-weight:600;font-size:13.5px;border-top:1px solid var(--line-2);}
.e-page .e-odds tr.e-avg .e-pct{font-weight:600;}
.e-page .e-odds tr.e-avg td.e-bkn{text-transform:uppercase;letter-spacing:.06em;font-size:11px;}
.e-page .e-oleg{display:flex;gap:20px;justify-content:flex-end;font-size:11.5px;color:var(--text-4);margin:10px 0 14px;}
.e-page .e-oleg b{font-weight:700;}
.e-page .e-mtip{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin-top:14px;font-size:13px;color:var(--text-2);line-height:1.55;}
.e-page .e-mk{font-size:18px;color:var(--accent);line-height:1;}
.e-page .e-mtip b{color:#fff;}

/* ---- predikce ---- */
.e-page .e-prhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px;}
.e-page .e-prsrc{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text-3);}
.e-page .e-ic{width:18px;height:18px;color:var(--text-2);}
.e-page .e-prtag{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);border:1px solid var(--line-2);border-radius:6px;padding:3px 9px;white-space:nowrap;}
.e-page .e-prbar{display:flex;height:36px;border-radius:9px;overflow:hidden;gap:3px;}
.e-page .e-seg{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff;font-variant-numeric:tabular-nums;min-width:30px;}
.e-page .e-segwin{background:var(--accent);}
.e-page .e-segmut{background:var(--e-bartrail);}
.e-page .e-prleg{display:flex;justify-content:space-between;font-size:11.5px;color:var(--text-3);margin-top:8px;gap:8px;}
.e-page .e-prleg b{color:var(--text-2);font-weight:700;}
.e-page .e-prtip{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line);flex-wrap:wrap;}
.e-page .e-prlab{color:var(--text-3);font-size:13px;}
.e-page .e-prwho{font-weight:800;font-size:15px;color:#fff;}
.e-page .e-prconf{margin-left:auto;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:4px 10px;}
.e-page .e-prconf.e-hi{background:rgba(31,191,117,.16);color:var(--e-win);}
.e-page .e-prconf.e-mid{background:rgba(255,198,10,.16);color:var(--e-yellow);}
.e-page .e-prconf.e-low{background:rgba(123,129,146,.20);color:var(--text-2);}
.e-page .e-panel-pad{padding:22px 22px;}
.e-page .e-prfoot{font-size:12px;color:var(--text-4);line-height:1.55;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);}

/* ---- predikce: varianta „ticket" (kurzy) — zaoblené segmenty, % v akcentu ---- */
.e-page .e-pr-ticket{padding:20px 0px;}
.e-page .e-pr-ticket .e-prbar{height:34px;border-radius:0;overflow:visible;}
.e-page .e-pr-ticket .e-seg{border-radius:8px;font-size:12.5px;}
.e-page .e-pr-ticket .e-prwho i{font-style:normal;color:var(--accent);margin-left:5px;}
.e-page .e-pr-ticket .e-prfoot{border-top:none;padding-top:0;margin-top:13px;font-size:11.5px;}

/* ---- disclaimer / empty ---- */
.e-page .e-disc{font-size:11.5px;color:var(--text-4);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-top:32px;line-height:1.6;}
.e-page .e-disc b{color:var(--text-3);}
.e-page .e-empty{border-radius:14px;padding:10px;text-align:center;color:var(--text-3);font-size:14px;}

/* ==========================================================================
   CYKLISTIKA (e-cy-*) — závodový model: board s trasou (= přepínač etap),
   tabulky, group-cards
   ========================================================================== */

/* ---- board: trasa jako hero nahoře (band) + název etapy dole (body) ---- */
.e-page .e-cy-board{border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:30px 0 10px;}
.e-page .e-cy-band{background:var(--surface);padding:16px 22px 16px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px;}
.e-page .e-cy-body{padding:16px 22px 16px;display:flex;flex-direction:column;gap:12px;}
.e-page .e-cy-btop{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.e-page .e-cy-status{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);}
.e-page .e-cy-board[data-state="active"] .e-cy-status{color:var(--accent);}
.e-page .e-cy-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:e-cy-pulse 1.6s ease-in-out infinite;}
@keyframes e-cy-pulse{0%,100%{opacity:1;}50%{opacity:.35;}}
.e-page .e-cy-bstage{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);font-variant-numeric:tabular-nums;white-space:nowrap;}
.e-page .e-cy-bstage b{color:var(--text-2);}
.e-page .e-cy-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--text-3);}
.e-page .e-cy-sep{width:3px;height:3px;border-radius:50%;background:var(--text-4);display:inline-block;}

/* trasa: města + klikací segmenty */
.e-page .e-cy-cities{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:700;color:var(--text);}
.e-page .e-cy-cities small{display:block;font-size:10.5px;font-weight:600;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase;margin-top:1px;}
.e-page .e-cy-cities .e-cy-to{text-align:right;}
.e-page .e-cy-track{position:relative;height:26px;margin-top:6px;}
.e-page .e-cy-segs{position:absolute;inset:0;display:flex;gap:3px;align-items:center;}
.e-page .e-cy-seg{appearance:none;border:none;background:none;flex:1;height:100%;position:relative;padding:0;cursor:pointer;}
.e-page .e-cy-seg::before{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:4px;border-radius:2px;background:var(--line-2);transition:.15s;}
.e-page .e-cy-seg--done::before{background:rgba(233,30,99,.55);}
.e-page .e-cy-seg--live::before{background:var(--accent);animation:e-cy-pulse 1.6s ease-in-out infinite;}
.e-page .e-cy-seg:hover::before{height:8px;}
.e-page .e-cy-seg.e-on::before{height:8px;background:var(--accent);}
.e-page .e-cy-hint{font-size:11px;color:var(--text-4);margin:6px 0 0;}

/* vybraná etapa (velký název) + šipky */
.e-page .e-cy-selrow{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.e-page .e-cy-selttl{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.05;}
.e-page .e-cy-selsub{display:block;font-size:13px;color:var(--text-3);margin-top:6px;font-weight:400;}
.e-page .e-cy-bnav{display:flex;gap:6px;flex:none;}
.e-page .e-cy-bnav button{appearance:none;width:32px;height:32px;border:1px solid var(--line);background:transparent;color:var(--text-3);border-radius:9px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:.15s;}
.e-page .e-cy-bnav button:hover{color:var(--text);border-color:var(--line-2);}
.e-page .e-cy-bnav button:disabled{opacity:.35;cursor:default;}

/* ---- hlavička tabulky ---- */
.e-page .e-cy-tbl{border:1px solid var(--line);border-radius:18px;padding:6px 22px 14px;}
.e-page .e-cy-tblhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0 2px;}
.e-page .e-cy-ttl{font-size:15px;font-weight:800;letter-spacing:-.01em;}
.e-page .e-cy-cnt{color:var(--text-4);font-size:12.5px;}
.e-page .e-cy-sub{font-size:12.5px;color:var(--text-4);padding:2px 0 10px;}

/* ---- tabulka jezdců ---- */
.e-page .e-cy-table{width:100%;border-collapse:collapse;font-size:14px;}
.e-page .e-cy-table tbody tr{transition:background .12s;}
.e-page .e-cy-table tbody tr:hover td{background:rgba(255,255,255,.02);}
.e-page .e-cy-table th{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);font-weight:700;text-align:left;padding:10px 0 8px;border-bottom:1px solid var(--line);}
.e-page .e-cy-table th.e-num,.e-page .e-cy-table td.e-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.e-page .e-cy-table th.e-num:first-child,.e-page .e-cy-table td.e-num:first-child{text-align:left;}
.e-page .e-cy-table td{padding:9px 0;border-top:1px solid var(--line);vertical-align:middle;}
.e-page .e-cy-table tbody tr:first-child td{border-top:none;}
.e-page .e-cy-table tbody.e-cy-morebody tr:first-child td{border-top:1px solid var(--line);}
.e-page .e-cy-pos{width:36px;color:var(--text-3);font-weight:700;padding-right:10px;}
.e-page .e-cy-pos.e-cy-lead{color:var(--accent);}
.e-page .e-cy-rider{min-width:0;}
.e-page .e-cy-flag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;color:var(--text-4);background:var(--surface-2);border-radius:4px;padding:2px 5px;margin-right:8px;vertical-align:1px;}
.e-page .e-cy-flag--cz{color:#fff;background:var(--accent);}
.e-page .e-cy-nm{font-weight:700;color:var(--text);}
.e-page .e-cy-team{display:block;font-size:12px;color:var(--text-4);margin-top:1px;}
.e-page .e-cy-time{font-weight:700;color:var(--text-2);white-space:nowrap;padding-left:10px;}
.e-page .e-cy-time.e-cy-lead{color:#fff;font-weight:800;}
.e-page .e-cy-out td{opacity:.55;}
.e-page .e-cy-out .e-cy-pos{font-size:11px;letter-spacing:.04em;}

/* startovní listina — bez pozic a časů */
.e-page .e-cy-table--start .e-cy-pos,.e-page .e-cy-table--start .e-cy-time{display:none;}
.e-page .e-cy-table--start th.e-num{display:none;}

/* trikoty */
.e-page .e-cy-jers{display:inline-flex;gap:3px;margin-left:7px;vertical-align:-1px;}
.e-page .e-cy-jer{display:inline-flex;width:14px;height:14px;}
.e-page .e-cy-jer svg{width:100%;height:100%;}
.e-page .e-cy-jer--yellow{color:#ffd23e;}
.e-page .e-cy-jer--green{color:#39d07a;}
.e-page .e-cy-jer--white{color:#f4f6fa;}
.e-page .e-cy-jer--red{color:#ff5261;}
.e-page .e-cy-jer--pink{color:#ff6d9d;}
.e-page .e-cy-jer--blue{color:#4ea3ff;}
.e-page .e-cy-jer--dark-grey{color:#8b93a7;}
.e-page .e-cy-jer--light-grey{color:#c3c9d6;}

/* ---- „Zobrazit všechny" ---- */
.e-page .e-cy-morebtn{appearance:none;width:100%;margin-top:10px;border:1px dashed var(--line-2);background:transparent;color:var(--text-3);font:inherit;font-size:13px;font-weight:700;border-radius:10px;padding:9px 0;cursor:pointer;transition:.15s;}
.e-page .e-cy-morebtn:hover{color:var(--text-2);border-color:var(--text-4);}

/* ---- group-cards (živá etapa) ---- */
.e-page .e-cy-groups{display:flex;flex-direction:column;gap:10px;padding-top:6px;}
.e-page .e-cy-gcard{border:1px solid var(--line);border-radius:14px;padding:4px 16px 8px;}
.e-page .e-cy-gcard--lead{border-color:var(--accent);}
.e-page .e-cy-gcard--out{opacity:.8;}
/* "V cíli" — dojetí jezdci nad skupinami. Zelený nádech je odliší od
   růžového leadera (čelo na trati). Tabulka je bez --grp, takže # a čas
   zůstávají vidět (průběžné konečné pořadí těch, co protli cíl). */
.e-page .e-cy-gcard--fin{border-color:#39d07a;}
.e-page .e-cy-gcard--fin .e-cy-glbl{color:#39d07a;}
.e-page .e-cy-ghead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0 6px;}
.e-page .e-cy-glbl{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);}
.e-page .e-cy-gcard--lead .e-cy-glbl{color:var(--accent);}
.e-page .e-cy-gcnt{margin-left:8px;color:var(--text-4);font-weight:700;letter-spacing:.04em;text-transform:none;font-size:11.5px;}
.e-page .e-cy-gtime{font-size:14px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;}
.e-page .e-cy-table--grp .e-cy-pos,.e-page .e-cy-table--grp .e-cy-time{display:none;}
.e-page .e-cy-table--grp td{padding:7px 0;}

/* ==========================================================================
   FORMULE 1 (e-f1-*) — závodový model: board, startovní rošt, leaderboard
   ========================================================================== */

/* ---- board: sessions víkendu jako hero nahoře (band) + název session dole (body) ---- */
.e-page .e-f1-board{border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:30px 0 10px;}
.e-page .e-f1-band{background:var(--surface);padding:16px 22px 16px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px;}
.e-page .e-f1-body{padding:16px 22px 16px;display:flex;flex-direction:column;gap:12px;}
.e-page .e-f1-status{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);}
.e-page .e-f1-board[data-state="active"] .e-f1-status{color:var(--accent);}
.e-page .e-f1-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:e-cy-pulse 1.6s ease-in-out infinite;}
.e-page .e-f1-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--text-3);}
.e-page .e-f1-sep{width:3px;height:3px;border-radius:50%;background:var(--text-4);display:inline-block;}

/* ---- víkendový board (víc než 1 session) — port z cyklistiky ---- */
.e-page .e-f1-btop{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.e-page .e-f1-bsession{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);font-variant-numeric:tabular-nums;white-space:nowrap;}
.e-page .e-f1-bsession b{color:var(--text-2);}
.e-page .e-f1-route{display:flex;flex-direction:column;gap:0;}
.e-page .e-f1-cities{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:700;color:var(--text);}
.e-page .e-f1-cities small{display:block;font-size:10.5px;font-weight:600;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase;margin-top:1px;}
.e-page .e-f1-cities .e-f1-to{text-align:right;}
.e-page .e-f1-track{position:relative;height:26px;margin-top:6px;}
.e-page .e-f1-segs{position:absolute;inset:0;display:flex;gap:3px;align-items:center;}
.e-page .e-f1-seg{appearance:none;border:none;background:none;flex:1;height:100%;position:relative;padding:0;cursor:pointer;}
.e-page .e-f1-seg::before{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:4px;border-radius:2px;background:var(--line-2);transition:.15s;}
.e-page .e-f1-seg--done::before{background:rgba(233,30,99,.55);}
.e-page .e-f1-seg--live::before{background:var(--accent);animation:e-cy-pulse 1.6s ease-in-out infinite;}
.e-page .e-f1-seg:hover::before{height:8px;}
.e-page .e-f1-seg.e-on::before{height:8px;background:var(--accent);}
.e-page .e-f1-hint{font-size:11px;color:var(--text-4);margin:6px 0 0;}
.e-page .e-f1-selrow{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.e-page .e-f1-selttl{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.05;}
.e-page .e-f1-selsub{display:block;font-size:13px;color:var(--text-3);margin-top:6px;font-weight:400;}
.e-page .e-f1-bnav{display:flex;gap:6px;flex:none;}
.e-page .e-f1-bnav button{appearance:none;width:32px;height:32px;border:1px solid var(--line);background:transparent;color:var(--text-3);border-radius:9px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:.15s;}
.e-page .e-f1-bnav button:hover{color:var(--text);border-color:var(--line-2);}
.e-page .e-f1-bnav button:disabled{opacity:.35;cursor:default;}

/* ---- kontejner + hlavička ---- */
.e-page .e-f1-tbl{border:1px solid var(--line);border-radius:18px;padding:6px 22px 14px;}
.e-page .e-f1-tblhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0 2px;}
.e-page .e-f1-ttl{font-size:15px;font-weight:800;letter-spacing:-.01em;}
.e-page .e-f1-sub{font-size:12.5px;color:var(--text-4);padding:2px 0 10px;}

/* ---- leaderboard ---- */
.e-page .e-f1-table{width:100%;border-collapse:collapse;font-size:14px;}
.e-page .e-f1-table th{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);font-weight:700;text-align:left;padding:10px 0 8px;border-bottom:1px solid var(--line);}
.e-page .e-f1-table th.e-num,.e-page .e-f1-table td.e-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.e-page .e-f1-table th.e-num:first-child,.e-page .e-f1-table td.e-num:first-child{text-align:left;}
.e-page .e-f1-table td{padding:9px 0;border-top:1px solid var(--line);vertical-align:middle;}
.e-page .e-f1-table tbody tr:first-child td{border-top:none;}
.e-page .e-f1-pos{width:36px;color:var(--text-3);font-weight:700;padding-right:10px;}
.e-page .e-f1-pos.e-f1-lead{}
.e-page .e-f1-drv{min-width:0;}
.e-page .e-f1-stripe{display:inline-block;width:3px;height:26px;border-radius:2px;margin-right:10px;vertical-align:middle;}
.e-page .e-f1-drvbox{display:inline-block;vertical-align:middle;}
.e-page .e-f1-nmline{display:block;}
.e-page .e-f1-flag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;color:var(--text-4);background:var(--surface-2);border-radius:4px;padding:2px 5px;margin-right:8px;vertical-align:1px;}
.e-page .e-f1-nm{font-weight:700;color:var(--text);}
.e-page .e-f1-team{display:block;font-size:12px;color:var(--text-4);margin-top:1px;}
.e-page .e-f1-time{font-weight:700;color:var(--text-2);white-space:nowrap;padding-left:10px;}
.e-page .e-f1-time.e-f1-lead{color:#fff;font-weight:800;}
.e-page .e-f1-laps,.e-page .e-f1-box{color:var(--text-3);padding-left:14px;width:44px;}
.e-page .e-f1-out td{opacity:.55;}
.e-page .e-f1-out .e-f1-pos{font-size:11px;letter-spacing:.04em;}

/* ---- startovní rošt (2sloupcový offset layout) ---- */
.e-page .e-f1-grid{display:flex;flex-direction:column;gap:8px;padding-top:8px;}
.e-page .e-f1-grow{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;}
.e-page .e-f1-grow>:nth-child(2){transform:translateY(14px);}
.e-page .e-f1-gslot{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-left:3px solid var(--f1c,#444);border-radius:10px;padding:8px 12px;background:var(--surface);}
.e-page .e-f1-gslot--empty{border:none;background:transparent;}
.e-page .e-f1-gpos{font-size:17px;font-weight:800;color:var(--text-3);font-variant-numeric:tabular-nums;min-width:22px;text-align:right;}
.e-page .e-f1-gslot:first-child .e-f1-gpos{color:var(--text-2);}
.e-page .e-f1-gdrv{min-width:0;}
.e-page .e-f1-gnm{display:block;font-weight:700;color:var(--text);font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.e-page .e-f1-gteam{display:block;font-size:11.5px;color:var(--text-4);margin-top:1px;}

@media (max-width:560px){
  .e-page .e-score{grid-template-columns:1fr;gap:8px;}
  .e-page .e-score .e-mid{padding:2px 0;min-width:0;}
  .e-page .e-ev{grid-template-columns:1fr 46px 1fr;gap:8px;}
  .e-page .e-pl{font-size:13.5px;}
  .e-page .e-tab a{font-size:20px;}
  .e-page .e-bestbar{grid-template-columns:1fr;}
  .e-page .e-cy-band,.e-page .e-cy-body,.e-page .e-f1-band,.e-page .e-f1-body{padding-left:16px;padding-right:16px;}
  .e-page .e-cy-selttl,.e-page .e-f1-selttl{font-size:23px;}
  .e-page .e-cy-tbl{padding:4px 14px 12px;}
  .e-page .e-cy-nm{font-size:13.5px;}
  .e-page .e-cy-team{font-size:11px;}
  .e-page .e-cy-flag{margin-right:6px;}
  .e-page .e-cy-meta{font-size:12px;}
  .e-page .e-f1-tbl{padding:4px 14px 12px;}
  .e-page .e-f1-nm{font-size:13.5px;}
  .e-page .e-f1-team{font-size:11px;}
  .e-page .e-f1-flag{margin-right:6px;}
  .e-page .e-f1-meta{font-size:12px;}
  .e-page .e-f1-table th:nth-child(5),.e-page .e-f1-table td:nth-child(5){display:none;}
  .e-page .e-f1-grow{grid-template-columns:1fr;gap:8px;}
  .e-page .e-f1-grow>:nth-child(2){transform:none;}
  .e-page .e-f1-gslot--empty{display:none;}
}
