/* ChampionChip Results / Live V2 shared design */

:root{
  --rm-blue:#075ca8;
  --rm-blue-dark:#063b70;
  --rm-blue-deep:#052d56;
  --rm-orange:#ff7800;
  --rm-bg:#edf4fa;
  --rm-card:#fff;
  --rm-line:#d6e2ee;
  --rm-line-soft:#e8eff5;
  --rm-text:#10213b;
  --rm-muted:#64748b;
}

html{
  background:var(--rm-bg);
}

body{
  margin:0;
  color:var(--rm-text);
  background:
    linear-gradient(180deg,#eaf2f9 0,#f5f8fb 420px,#edf4fa 100%);
  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    "Segoe UI",
    sans-serif;
}

/* HEADER */

header{
  background:
    linear-gradient(
      110deg,
      var(--rm-blue-deep),
      var(--rm-blue)
    ) !important;
  border-bottom:3px solid var(--rm-orange);
  box-shadow:0 2px 10px rgba(4,39,73,.16);
}

header .head{
  max-width:1260px;
  margin:0 auto;
  padding:17px 18px 16px;
}

header h1{
  margin:0;
  color:#fff;
  font-size:22px;
  line-height:1.15;
  font-weight:850;
  letter-spacing:.01em;
}

header .sub{
  margin-top:4px;
  color:#d7e7f7;
  font-size:11px;
  font-weight:600;
}

.status{
  color:#fff;
  font-weight:800;
  font-size:12px;
}

.status .dot{
  width:8px;
  height:8px;
  box-shadow:0 0 0 3px rgba(255,255,255,.12);
}

/* PAGE */

main{
  max-width:1260px;
  margin:0 auto;
  padding:13px 18px 22px;
}

.card{
  background:rgba(255,255,255,.96);
  border:1px solid var(--rm-line);
  border-radius:12px;
  box-shadow:
    0 2px 8px rgba(22,57,92,.055),
    0 9px 25px rgba(22,57,92,.035);
}

/* CONTROLS */

.controls{
  padding:10px;
  margin-bottom:10px;
}

.races{
  display:flex;
  gap:6px;
  overflow-x:auto;
  scrollbar-width:thin;
  padding-bottom:7px;
}

.races::-webkit-scrollbar{
  height:7px;
}

.races::-webkit-scrollbar-thumb{
  background:#8798a9;
  border-radius:10px;
}

.race{
  flex:0 0 auto;
  min-height:34px;
  padding:0 13px;
  border:1px solid #ccdae7;
  border-radius:8px;
  background:#f8fbfe;
  color:#153b61;
  font-weight:800;
  font-size:12px;
  cursor:pointer;
  transition:.12s ease;
}

.race:hover{
  border-color:#7ea9cf;
  background:#f0f7fd;
}

.race.active{
  background:var(--rm-orange);
  border-color:var(--rm-orange);
  color:#fff;
  box-shadow:0 2px 6px rgba(255,120,0,.22);
}

/* FILTERS */

.filters{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto;
  gap:7px;
  margin-top:1px;
}

.filters input,
.filters select{
  min-height:34px;
  border:1px solid #cbd9e7;
  border-radius:8px;
  background:#fff;
  color:var(--rm-text);
  padding:0 10px;
  font:inherit;
  font-size:12px;
  outline:none;
}

.filters input:focus,
.filters select:focus{
  border-color:#4f91ca;
  box-shadow:0 0 0 3px rgba(13,98,217,.08);
}

/* POINT / LAP TABS */

.point-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}

.point-tab{
  min-height:32px;
  padding:0 11px;
  border:1px solid #ccd9e6;
  border-radius:8px;
  background:#fff;
  color:#173c61;
  font:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.point-tab:hover{
  border-color:#80a9ce;
  background:#f5faff;
}

.point-tab.active{
  background:var(--rm-orange);
  border-color:var(--rm-orange);
  color:#fff;
}

/* SUMMARY */

.summary{
  min-height:35px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:0 12px;
  border-bottom:1px solid var(--rm-line);
  color:var(--rm-muted);
  font-size:11px;
}

.summary b{
  color:#0d3155;
  font-size:12px;
}

/* TABLE */

.table-wrap{
  overflow-x:auto;
}

table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
  table-layout:auto;
}

thead{
  position:sticky;
  top:0;
  z-index:2;
}

th{
  height:32px;
  padding:0 9px;
  border-bottom:1px solid var(--rm-line);
  background:#f2f7fb;
  color:#496176;
  font-size:10px;
  font-weight:850;
  text-align:left;
  white-space:nowrap;
}

td{
  height:34px;
  padding:0 9px;
  border-bottom:1px solid var(--rm-line-soft);
  color:#17324d;
  font-size:11px;
  vertical-align:middle;
}

tbody tr{
  transition:background .08s ease;
}

tbody tr:hover{
  background:#f5faff;
}

td.num,
th.num{
  text-align:right;
  font-variant-numeric:tabular-nums;
}

td.rank{
  color:#092f58;
  font-weight:900;
}

td.bib{
  color:#075eb4;
  font-weight:900;
}

td.name{
  min-width:220px;
  font-weight:800;
  color:#102b47;
}

td.name small,
td small{
  display:block;
  margin-top:1px;
  color:#718397;
  font-size:9px;
  font-weight:500;
}

td.time{
  color:#071f38;
  font-weight:900;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.muted{
  color:#667b91;
}

/* EMPTY */

.empty{
  padding:25px 12px !important;
  text-align:center !important;
  color:#73869a !important;
  font-weight:650;
}

/* PAGER overrides */

.auto-pager{
  border-top:0;
  padding:9px 8px 10px !important;
}

.auto-pager button{
  background:#fff !important;
  color:#123d66 !important;
  border-color:#c8d7e5 !important;
}

.auto-pager button.active{
  background:var(--rm-orange) !important;
  border-color:var(--rm-orange) !important;
  color:#fff !important;
}

.auto-pager button:hover:not(:disabled):not(.active){
  border-color:#4e8fc8 !important;
  background:#f1f8fe !important;
}

/* DETAIL */

#detail{
  backdrop-filter:blur(3px);
  background:rgba(2,24,45,.65);
}

.detail-card{
  border:1px solid #c7d8e7;
  border-radius:14px;
  box-shadow:0 20px 70px rgba(0,0,0,.28);
}

.detail-head{
  border-bottom:1px solid var(--rm-line);
  background:#f7fbfe;
}

.detail-head strong{
  color:#092f58;
  font-size:18px;
}

.close{
  border:0;
  border-radius:8px;
  background:#e8f0f7;
  color:#183d61;
  font-weight:800;
}

/* MOBILE */

@media(max-width:700px){

  header .head{
    padding:12px 10px;
  }

  header h1{
    font-size:17px;
  }

  header .sub{
    font-size:10px;
  }

  main{
    padding:7px 5px 14px;
  }

  .card{
    border-radius:9px;
  }

  .controls{
    padding:7px;
  }

  .race{
    min-height:31px;
    padding:0 9px;
    font-size:10px;
  }

  .filters{
    grid-template-columns:1fr auto auto;
    gap:5px;
  }

  .filters input,
  .filters select{
    min-height:31px;
    padding:0 7px;
    font-size:11px;
  }

  .point-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:2px;
  }

  .point-tab{
    flex:0 0 auto;
    min-height:30px;
    padding:0 9px;
    font-size:10px;
  }

  .summary{
    padding:0 8px;
    gap:8px;
    font-size:10px;
  }

  th{
    height:29px;
    padding:0 6px;
    font-size:9px;
  }

  td{
    height:31px;
    padding:0 6px;
    font-size:10px;
  }

  td.name{
    min-width:150px;
  }

  td.name small,
  td small{
    font-size:8px;
  }
}


/* =========================================================
   RM RESULTS / LIVE V2 – DESIGN POLISH 2026-10-10
   pouze vzhled, bez zásahu do datové logiky
   ========================================================= */

:root{
  --rm-blue:#0b58b8;
  --rm-blue2:#0d67cf;
  --rm-navy:#05294f;
  --rm-navy2:#073866;
  --rm-orange:#ff7800;
  --rm-orange-dark:#e96600;

  --rm-bg:#eef4f9;
  --rm-card:#ffffff;

  --rm-line:#d8e3ed;
  --rm-line-soft:#e9eff5;

  --rm-text:#172f49;
  --rm-muted:#667b90;
}


/* ---------- PAGE ---------- */

body{
  min-height:100vh;
  background:
    linear-gradient(
      180deg,
      #e9f1f8 0,
      #f5f8fb 290px,
      #eef4f9 100%
    );
}

main{
  max-width:1500px !important;
  padding:12px 18px 24px !important;
}


/* ---------- TOP HEADER ---------- */

header{
  background:
    linear-gradient(
      112deg,
      #05294f 0%,
      #073d78 48%,
      #0b58b8 100%
    ) !important;

  border-bottom:3px solid var(--rm-orange) !important;

  box-shadow:
    0 5px 18px rgba(5,41,79,.16) !important;
}

header .head{
  max-width:1500px !important;
  min-height:70px;
  padding:13px 18px 12px !important;
}

header h1{
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:-.02em;
}

header .sub{
  margin-top:3px !important;
  color:#cfe2f6 !important;
  font-size:10.5px !important;
  font-weight:650 !important;
}


/* ---------- CARDS ---------- */

.card{
  border:1px solid #d3e0eb !important;
  border-radius:14px !important;

  box-shadow:
    0 5px 18px rgba(6,42,82,.06) !important;

  background:#fff !important;
}

.controls{
  padding:10px 12px 11px !important;
  margin-bottom:10px !important;
}


/* ---------- RACE SELECTOR ---------- */

.races{
  gap:5px !important;
  padding-bottom:8px !important;
}

.race{
  min-height:33px !important;

  padding:0 12px !important;

  border-radius:8px !important;
  border:1px solid #c8d8e7 !important;

  background:
    linear-gradient(
      180deg,
      #ffffff,
      #f5f9fc
    ) !important;

  color:#173d63 !important;

  font-size:11px !important;
  font-weight:850 !important;

  box-shadow:none !important;
}

.race:hover{
  background:#edf6fd !important;
  border-color:#78a6d0 !important;
}

.race.active{
  background:
    linear-gradient(
      180deg,
      #ff8c17,
      #ff7200
    ) !important;

  border-color:#ff7200 !important;

  color:#fff !important;

  box-shadow:
    0 3px 9px rgba(255,113,0,.22) !important;
}


/* ---------- FILTERS ---------- */

.filters{
  gap:7px !important;
}

.filters input,
.filters select{
  height:34px !important;
  min-height:34px !important;

  border-radius:8px !important;
  border-color:#c8d7e5 !important;

  background:#fff !important;

  font-size:11px !important;

  box-shadow:
    inset 0 1px 2px rgba(5,41,79,.025);
}

.filters input:hover,
.filters select:hover{
  border-color:#9bb9d2 !important;
}

.filters input:focus,
.filters select:focus{
  border-color:#4a91d0 !important;

  box-shadow:
    0 0 0 3px rgba(13,103,207,.08) !important;
}


/* ---------- POINT / LAP SELECTOR ---------- */

.point-tabs{
  gap:5px !important;
  margin-top:8px !important;
}

.point-tab{
  min-height:31px !important;

  padding:0 11px !important;

  border-radius:8px !important;

  border:1px solid #cbd9e6 !important;

  background:#f8fbfd !important;

  color:#173d63 !important;

  font-size:10.5px !important;
  font-weight:850 !important;
}

.point-tab:hover{
  background:#eef6fd !important;
  border-color:#7da8ce !important;
}

.point-tab.active{
  background:
    linear-gradient(
      180deg,
      #126bd0,
      #0a58b2
    ) !important;

  border-color:#0a58b2 !important;

  color:#fff !important;

  box-shadow:
    0 2px 7px rgba(11,88,184,.18) !important;
}


/* ---------- SUMMARY LINE ---------- */

.summary{
  min-height:34px !important;

  padding:0 12px !important;

  border-bottom:1px solid #dbe5ee !important;

  background:
    linear-gradient(
      180deg,
      #fbfdff,
      #f7fafc
    );

  color:#687f94 !important;

  font-size:10px !important;
}

.summary b{
  color:#0a355f !important;
  font-size:11px !important;
  font-weight:900 !important;
}


/* ---------- TABLE ---------- */

.table-wrap{
  border-radius:0 0 13px 13px;
}

table{
  width:100%;
}

thead{
  position:sticky !important;
  top:0 !important;
  z-index:5 !important;
}

th{
  height:32px !important;

  padding:0 8px !important;

  background:
    linear-gradient(
      180deg,
      #f5f9fc,
      #edf4f9
    ) !important;

  border-bottom:1px solid #cad8e5 !important;

  color:#536b80 !important;

  font-size:9.5px !important;
  font-weight:900 !important;

  text-transform:none;
  letter-spacing:.01em;
}

td{
  height:35px !important;

  padding:0 8px !important;

  border-bottom:1px solid #e8eef4 !important;

  color:#213b54 !important;

  font-size:11px !important;
}

tbody tr:nth-child(even){
  background:#fbfdff;
}

tbody tr:hover{
  background:#eef7ff !important;
}


/* ---------- IMPORTANT COLUMNS ---------- */

td.rank{
  font-size:12px !important;
  font-weight:950 !important;
  color:#082f58 !important;
}

td.bib{
  font-size:12px !important;
  font-weight:950 !important;
  color:#075eb4 !important;
}

td.name{
  min-width:190px !important;

  font-size:11.5px !important;
  font-weight:850 !important;

  color:#142f49 !important;
}

td.time{
  font-size:12px !important;
  font-weight:950 !important;

  color:#071f38 !important;

  font-variant-numeric:tabular-nums;
}

td.num,
th.num{
  text-align:right !important;
  font-variant-numeric:tabular-nums;
}


/* ---------- LIVE POINT LABEL ---------- */

td b{
  font-weight:850;
}


/* ---------- EMPTY ---------- */

.empty{
  min-height:110px;

  padding:32px 12px !important;

  background:#fbfdff;

  color:#71869a !important;

  font-size:12px !important;
}


/* ---------- PAGER ---------- */

.auto-pager{
  gap:5px !important;

  padding:9px 8px 10px !important;

  background:#fff;

  border-radius:0 0 13px 13px;
}

.auto-pager button{
  min-width:33px !important;
  height:31px !important;

  padding:0 8px !important;

  border-radius:7px !important;

  background:#fff !important;

  border:1px solid #c7d6e4 !important;

  color:#173d63 !important;

  font-size:11px !important;
  font-weight:900 !important;
}

.auto-pager button:hover:not(:disabled):not(.active){
  background:#edf6fd !important;
  border-color:#6e9fc9 !important;
}

.auto-pager button.active{
  background:
    linear-gradient(
      180deg,
      #ff8a10,
      #ff7100
    ) !important;

  border-color:#ff7100 !important;

  color:#fff !important;
}

.auto-pager .page-info{
  color:#71869a !important;

  font-size:10px !important;
  font-weight:750 !important;
}


/* ---------- DETAIL ---------- */

#detail{
  background:rgba(2,23,47,.62) !important;

  backdrop-filter:blur(2px);
}

.detail-card{
  border-radius:18px !important;

  border:1px solid rgba(255,255,255,.55) !important;

  box-shadow:
    0 30px 90px rgba(2,23,47,.38) !important;
}

.detail-head{
  padding:15px 17px !important;

  background:
    linear-gradient(
      112deg,
      #05294f,
      #0b58b8
    ) !important;

  border-bottom:3px solid var(--rm-orange) !important;

  color:#fff !important;
}

.detail-head strong{
  color:#fff !important;
  font-size:18px !important;
  font-weight:950 !important;
}

.close{
  width:34px;
  height:32px;

  border:1px solid rgba(255,255,255,.45) !important;

  background:#fff !important;
  color:#082f5c !important;

  border-radius:8px !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

  body{
    background:#eef4f9;
  }

  header .head{
    min-height:0;

    padding:
      9px
      8px
      8px !important;
  }

  header h1{
    font-size:16px !important;
    line-height:1.05;
  }

  header .sub{
    margin-top:2px !important;
    font-size:9px !important;
  }

  main{
    width:100%;

    padding:
      5px
      4px
      12px !important;
  }

  .card{
    border-radius:9px !important;
  }

  .controls{
    padding:6px !important;
    margin-bottom:6px !important;
  }


  /* Races horizontal */

  .races{
    flex-wrap:nowrap !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;

    gap:4px !important;

    padding-bottom:5px !important;

    scrollbar-width:none;
  }

  .races::-webkit-scrollbar{
    display:none;
  }

  .race{
    flex:0 0 auto !important;

    min-height:29px !important;

    padding:0 8px !important;

    border-radius:7px !important;

    font-size:9.5px !important;
  }


  /* filters compact */

  .filters{
    grid-template-columns:
      minmax(0,1fr)
      auto
      auto !important;

    gap:4px !important;
  }

  .filters input,
  .filters select{
    min-width:0 !important;

    height:30px !important;
    min-height:30px !important;

    padding:0 6px !important;

    font-size:10px !important;
  }


  /* point selector */

  .point-tabs{
    flex-wrap:nowrap !important;

    overflow-x:auto !important;

    gap:4px !important;

    margin-top:5px !important;

    padding-bottom:1px;

    scrollbar-width:none;
  }

  .point-tabs::-webkit-scrollbar{
    display:none;
  }

  .point-tab{
    flex:0 0 auto !important;

    min-height:28px !important;

    padding:0 8px !important;

    font-size:9px !important;
  }


  /* table */

  .summary{
    min-height:29px !important;

    padding:0 6px !important;

    gap:6px !important;

    font-size:9px !important;
  }

  .summary b{
    font-size:9.5px !important;
  }

  th{
    height:27px !important;

    padding:0 4px !important;

    font-size:8px !important;
  }

  td{
    height:31px !important;

    padding:0 4px !important;

    font-size:9.5px !important;
  }

  td.rank,
  td.bib,
  td.time{
    font-size:10px !important;
  }

  td.name{
    min-width:130px !important;

    font-size:10px !important;

    line-height:1.08;
  }


  /* pager */

  .auto-pager{
    gap:3px !important;

    padding:
      6px
      4px
      7px !important;
  }

  .auto-pager button{
    min-width:29px !important;
    height:28px !important;

    padding:0 6px !important;

    font-size:10px !important;
  }

  .auto-pager .page-info{
    font-size:9px !important;
  }
}


/* extra narrow phones */

@media(max-width:430px){

  header h1{
    font-size:15px !important;
  }

  .filters{
    grid-template-columns:
      minmax(0,1fr)
      84px
      72px !important;
  }

  td.name{
    min-width:115px !important;
  }

}



/* =========================================================
   RESULTS / LIVE V2 – PRODUCTION LOOK V3
   podle ostrého results.php
   ========================================================= */

html{
  background:#edf4fa;
}

body{
  background:
    linear-gradient(
      180deg,
      #edf5fb 0,
      #f8fbfe 360px,
      #f3f7fb 100%
    ) !important;
}


/* =========================================================
   HERO
   ========================================================= */

header{
  position:relative;
  padding:0 !important;

  min-height:114px;

  overflow:hidden;

  background:
    linear-gradient(
      105deg,
      #03284f 0%,
      #064887 46%,
      #0d61c9 100%
    ) !important;

  border-bottom:0 !important;

  box-shadow:
    0 8px 28px rgba(3,35,70,.22) !important;
}

header:before{
  content:"";
  position:absolute;
  inset:0;

  background:
    radial-gradient(
      circle at 68% 10%,
      rgba(37,145,255,.36),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      transparent 54%,
      rgba(255,255,255,.055) 54% 55%,
      transparent 55%
    ),
    linear-gradient(
      180deg,
      rgba(2,20,43,.02),
      rgba(2,20,43,.18)
    );

  pointer-events:none;
}

header:after{
  content:"";
  position:absolute;

  left:0;
  right:0;
  bottom:0;

  height:3px;

  background:
    linear-gradient(
      90deg,
      #ff7800 0,
      #ff9a22 24%,
      rgba(255,120,0,0) 62%
    );
}

header .head{
  position:relative;
  z-index:1;

  max-width:1500px !important;
  min-height:114px !important;

  margin:0 auto;

  padding:14px 18px !important;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:24px;
}

header h1{
  margin:0;

  font-size:24px !important;
  font-weight:950 !important;

  line-height:1.05;

  letter-spacing:-.025em;

  color:#fff;

  text-shadow:
    0 1px 0 rgba(0,0,0,.10);
}

header .sub{
  margin-top:7px !important;

  color:#d8eaff !important;

  font-size:11px !important;
}

.status{
  font-size:12px !important;
  font-weight:900 !important;
}


/* =========================================================
   MAIN
   ========================================================= */

main{
  max-width:1500px !important;

  margin:0 auto !important;

  padding:
    14px
    18px
    22px !important;
}


/* =========================================================
   CONTROL CARD
   ========================================================= */

.card.controls{
  padding:12px 14px !important;
  margin-bottom:11px !important;

  border:1px solid #d5e2ee !important;
  border-radius:14px !important;

  background:
    rgba(255,255,255,.98) !important;

  box-shadow:
    0 7px 22px rgba(6,42,82,.07) !important;
}


/* =========================================================
   RACES
   ========================================================= */

.races{
  gap:8px !important;

  padding:1px 1px 8px !important;

  scrollbar-width:thin;
}

.race{
  min-height:0 !important;

  padding:
    10px
    16px !important;

  border:
    1px solid
    #c7d6e5 !important;

  border-radius:8px !important;

  background:
    linear-gradient(
      180deg,
      #fff,
      #f3f7fb
    ) !important;

  color:#12345c !important;

  font-size:12px !important;
  font-weight:900 !important;

  box-shadow:
    0 1px 2px rgba(6,42,82,.04) !important;

  transition:
    .14s ease !important;
}

.race:hover{
  border-color:#6ea9ee !important;

  background:#edf6ff !important;

  color:#0754b4 !important;
}

.race.active{
  transform:translateY(-1px);

  background:
    linear-gradient(
      180deg,
      #ff8c12,
      #ff7200
    ) !important;

  border-color:#ff7200 !important;

  color:#fff !important;

  box-shadow:
    0 5px 15px rgba(255,113,0,.25) !important;
}


/* =========================================================
   FILTERS
   ========================================================= */

.filters{
  grid-template-columns:
    minmax(160px,1fr)
    auto
    auto !important;

  gap:8px !important;

  margin-top:4px !important;
}

.filters input,
.filters select{
  min-height:36px !important;
  height:auto !important;

  padding:
    8px
    10px !important;

  border:
    1px solid
    #c7d6e5 !important;

  border-radius:8px !important;

  background:#fff !important;

  color:#10213b !important;

  font-size:12.5px !important;
  font-weight:400 !important;

  outline:none;
}

.filters input:focus,
.filters select:focus{
  border-color:#1685ff !important;

  box-shadow:
    0 0 0 3px
    rgba(22,133,255,.13) !important;
}


/* =========================================================
   POINTS / LAPS
   produkční vzhled: bez button boxu, oranžové podtržení
   ========================================================= */

.point-tabs{
  display:flex !important;

  align-items:center !important;

  justify-content:flex-start !important;

  gap:0 !important;

  margin-top:6px !important;

  padding:
    1px
    0
    2px !important;

  overflow-x:auto;
}

.point-tab{
  position:relative;

  min-height:0 !important;

  padding:
    9px
    16px
    10px !important;

  border:0 !important;
  border-radius:0 !important;

  background:transparent !important;

  color:#0b3768 !important;

  font-size:12px !important;
  font-weight:950 !important;

  letter-spacing:.02em;

  box-shadow:none !important;
}

.point-tab + .point-tab:before{
  content:"";

  position:absolute;

  left:0;
  top:10px;
  bottom:11px;

  width:1px;

  background:#b8c9dc;
}

.point-tab:hover{
  color:#0d62d9 !important;

  background:transparent !important;
}

.point-tab.active{
  color:#062a52 !important;

  background:transparent !important;

  border:0 !important;

  box-shadow:none !important;
}

.point-tab.active:after{
  content:"";

  position:absolute;

  left:12px;
  right:12px;
  bottom:2px;

  height:3px;

  border-radius:3px;

  background:
    linear-gradient(
      90deg,
      #ff7800,
      #ff9a22
    );

  box-shadow:
    0 1px 5px rgba(255,120,0,.28);
}


/* =========================================================
   TABLE CARD
   ========================================================= */

main > .card:not(.controls){
  overflow:hidden;

  border:
    1px solid
    #d5e2ee !important;

  border-radius:13px !important;

  background:#fff !important;

  box-shadow:
    0 10px 30px rgba(6,42,82,.08) !important;
}


/* =========================================================
   SUMMARY
   ========================================================= */

.summary{
  min-height:42px !important;

  display:flex !important;

  align-items:center !important;

  gap:7px !important;

  flex-wrap:wrap;

  padding:
    7px
    10px !important;

  background:#fff !important;

  border-bottom:
    1px solid
    #dfe8f1 !important;

  color:#64748b !important;

  font-size:10px !important;
}

/*
 * Pokud jsou počty ve spanech,
 * vypadají jako produkční summary pills.
 */
.summary > span{
  display:inline-flex;

  gap:5px;

  align-items:baseline;

  padding:
    5px
    9px;

  border:
    1px solid
    #d9e4ef;

  border-radius:999px;

  background:#fff;

  color:#64748b;

  box-shadow:
    0 2px 7px rgba(6,42,82,.035);
}

.summary > span:first-child{
  background:
    linear-gradient(
      180deg,
      #0b3e75,
      #062a52
    );

  border-color:#062a52;

  color:#cfe4fb;
}

.summary > span b{
  color:#10213b !important;

  font-size:12px !important;
  font-weight:900 !important;
}

.summary > span:first-child b{
  color:#fff !important;
}


/* =========================================================
   TABLE
   ========================================================= */

.table-wrap{
  overflow:auto;

  border-radius:0 !important;
}

table{
  width:100%;

  border-collapse:separate !important;
  border-spacing:0 !important;

  font-size:12.5px !important;

  white-space:nowrap;
}

th,
td{
  padding:
    10px
    11px !important;

  height:auto !important;

  border-bottom:
    1px solid
    #e8eff6 !important;

  text-align:left;
}


/* nejvýraznější rozdíl proti prototypu */

th{
  position:sticky !important;
  top:0;

  z-index:2;

  background:
    linear-gradient(
      180deg,
      #074985,
      #063565
    ) !important;

  color:#fff !important;

  font-size:9.5px !important;
  font-weight:900 !important;

  text-transform:uppercase;

  letter-spacing:.055em;

  border-bottom-color:#05294f !important;
}

th:first-child{
  border-radius:
    8px 0 0 0;
}

th:last-child{
  border-radius:
    0 8px 0 0;
}

tbody tr:last-child td{
  border-bottom:0 !important;
}

tbody tr:nth-child(even){
  background:#fbfdff !important;
}

tbody tr:hover{
  background:#eef7ff !important;

  box-shadow:
    inset 4px 0 0
    #1685ff !important;
}


/* =========================================================
   IMPORTANT VALUES
   ========================================================= */

td.rank{
  width:58px;

  text-align:right;

  font-size:14px !important;
  font-weight:950 !important;

  color:#0c2d50 !important;
}

td.bib{
  font-size:12.5px !important;
  font-weight:950 !important;

  color:#075cc7 !important;
}

td.name{
  min-width:190px !important;

  color:#0f2742 !important;

  font-size:12px !important;
  font-weight:900 !important;
}

td.time{
  color:#071f3a !important;

  font-size:13.5px !important;
  font-weight:950 !important;

  font-variant-numeric:
    tabular-nums;
}

td.num,
th.num{
  text-align:right !important;

  font-variant-numeric:
    tabular-nums;
}


/* =========================================================
   PAGER
   ========================================================= */

.auto-pager{
  padding:
    9px
    10px
    10px !important;

  border-top:
    1px solid
    #edf2f7;

  background:#fff;
}

.auto-pager button{
  min-width:34px !important;
  height:31px !important;

  border:
    1px solid
    #c7d6e5 !important;

  border-radius:7px !important;

  background:
    linear-gradient(
      180deg,
      #fff,
      #f5f8fb
    ) !important;

  color:#12345c !important;

  font-size:11px !important;
  font-weight:900 !important;
}

.auto-pager button.active{
  background:
    linear-gradient(
      180deg,
      #ff8c12,
      #ff7200
    ) !important;

  border-color:#ff7200 !important;

  color:#fff !important;

  box-shadow:
    0 3px 10px rgba(255,113,0,.20);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

  header{
    min-height:86px;
  }

  header .head{
    min-height:86px !important;

    padding:
      8px
      9px
      9px !important;
  }

  header h1{
    font-size:17px !important;
  }

  header .sub{
    margin-top:3px !important;

    font-size:10px !important;
  }

  main{
    width:100% !important;

    max-width:100% !important;

    padding:7px !important;
  }

  .card.controls{
    padding:
      6px
      7px !important;

    margin-bottom:6px !important;

    border-radius:10px !important;
  }

  .races{
    gap:5px !important;

    padding:0 0 5px !important;

    scrollbar-width:none;
  }

  .races::-webkit-scrollbar{
    display:none;
  }

  .race{
    padding:
      7px
      9px !important;

    font-size:10px !important;
  }

  .filters{
    gap:5px !important;
  }

  .filters input,
  .filters select{
    min-height:32px !important;

    padding:
      6px
      7px !important;

    font-size:10px !important;
  }

  .point-tabs{
    margin-top:3px !important;

    padding-bottom:4px !important;
  }

  .point-tab{
    padding:
      6px
      10px
      7px !important;

    font-size:9.5px !important;
  }

  .point-tab.active:after{
    left:8px;
    right:8px;

    height:2px;
  }

  .point-tab + .point-tab:before{
    top:8px;
    bottom:9px;
  }

  main > .card:not(.controls){
    border-radius:10px !important;
  }

  .summary{
    min-height:0 !important;

    padding:
      5px
      6px !important;

    gap:4px !important;

    font-size:8.5px !important;
  }

  .summary > span{
    padding:
      4px
      7px;
  }

  .summary > span b{
    font-size:10px !important;
  }

  table{
    font-size:10.8px !important;
  }

  th,
  td{
    padding:
      6px
      3px !important;
  }

  th{
    font-size:9px !important;
  }

  td.rank{
    width:40px;

    padding-right:3px !important;

    font-size:11px !important;
  }

  td.bib{
    font-size:10.5px !important;
  }

  td.name{
    min-width:130px !important;

    font-size:10.5px !important;

    white-space:normal;

    overflow-wrap:anywhere;

    line-height:1.12;
  }

  td.time{
    font-size:10px !important;

    white-space:nowrap;
  }

  .auto-pager{
    padding:
      6px
      4px
      7px !important;
  }

  .auto-pager button{
    min-width:29px !important;
    height:28px !important;

    padding:
      0
      6px !important;

    font-size:10px !important;
  }
}



/* =========================================================
   RM RESULTS / LIVE V2
   PRODUCTION STRUCTURE V4
   ========================================================= */


/* HERO --------------------------------------------------- */

.public-hero-v4{
  min-height:114px !important;
}

.hero-inner-v4{
  position:relative;
  z-index:1;

  max-width:1500px;
  min-height:114px;

  margin:0 auto;

  padding:14px 18px;

  display:grid;

  grid-template-columns:
    minmax(120px,175px)
    minmax(260px,1fr)
    auto
    auto
    minmax(105px,145px);

  gap:20px;

  align-items:center;
}

.hero-event-logo-v4{
  min-width:0;
}

.event-logo-v4{
  display:block;

  max-width:175px;
  max-height:72px;

  width:auto;
  height:auto;

  object-fit:contain;
}

.hero-copy-v4{
  min-width:0;
}

.hero-copy-v4 h1{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.hero-copy-v4 .sub{
  display:flex;
  align-items:center;

  gap:8px;

  flex-wrap:wrap;
}

.hero-copy-v4 .sub strong{
  color:#fff;

  font-weight:900;
}

.hero-dot-v4{
  width:5px;
  height:5px;

  border-radius:50%;

  background:#ff7800;
}


.hero-nav-v4{
  display:flex;

  align-items:center;

  gap:27px;

  white-space:nowrap;

  font-size:15px;
  font-weight:950;
}

.hero-nav-v4 a{
  position:relative;

  padding:12px 0;

  color:#fff;

  text-decoration:none;
}

.hero-nav-v4 a:hover{
  color:#fff;
}

.hero-nav-v4 a.active:after{
  content:"";

  position:absolute;

  left:0;
  right:0;
  bottom:3px;

  height:4px;

  border-radius:4px;

  background:#ff7800;
}


.public-hero-v4 .status{
  white-space:nowrap;
}


.hero-timing-logo-v4{
  display:flex;

  justify-content:flex-end;

  min-width:0;
}

.timing-logo-v4{
  display:block;

  max-width:145px;
  max-height:58px;

  width:auto;
  height:auto;

  object-fit:contain;

  padding:6px 9px;

  background:#fff;

  border-radius:10px;

  box-shadow:
    0 5px 18px rgba(0,0,0,.16);
}

.timing-fallback-v4{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-height:48px;

  padding:7px 11px;

  border-radius:9px;

  background:#fff;

  color:#082f5c;

  font-size:10px;
  font-weight:950;

  box-shadow:
    0 5px 18px rgba(0,0,0,.16);
}


/* CONTROLS ----------------------------------------------- */

.controls-v4{
  display:grid !important;

  grid-template-columns:
    minmax(280px,380px)
    minmax(0,1fr);

  gap:18px !important;

  align-items:end;
}


.race-select-field-v4,
.filter-field-v4{
  display:flex;

  flex-direction:column;

  gap:4px;

  min-width:0;
}

.race-select-field-v4 > span,
.filter-field-v4 > span{
  color:#5e7188;

  font-size:9px;
  font-weight:900;

  text-transform:uppercase;

  letter-spacing:.06em;
}

.race-select-field-v4 select{
  width:100%;

  min-height:36px;

  padding:7px 10px;

  border:
    1px solid #7ea8d2;

  border-radius:8px;

  background:#fff;

  color:#10213b;

  font-size:12.5px;
  font-weight:900;

  outline:none;

  box-shadow:
    0 0 0 1px rgba(22,133,255,.08);
}


.controls-v4 .filters{
  display:flex !important;

  align-items:end;

  justify-content:flex-end;

  gap:8px !important;

  margin:0 !important;
}

.controls-v4 .filters input,
.controls-v4 .filters select{
  min-height:36px !important;
}

.search-field-v4{
  flex:1 1 220px;
  max-width:290px;
}

.search-field-v4 input{
  width:100%;
}

.controls-v4 #cat{
  min-width:150px;
}

.controls-v4 #sex{
  min-width:92px;
}


/*
 * Desktop používá select.
 * Původní Race buttons necháváme v DOM pro stávající JS.
 */

.controls-v4 > .races{
  display:none !important;
}


/* MID STRIP ---------------------------------------------- */

.mid-strip-v4{
  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:18px;

  min-height:45px;

  margin:
    0
    4px
    8px;
}


.mid-strip-v4 .point-tabs{
  flex:1 1 auto;

  justify-content:flex-start !important;

  margin:0 !important;
}


.mid-strip-v4 .summary{
  flex:0 0 auto;

  min-height:0 !important;

  padding:0 !important;

  border:0 !important;

  background:transparent !important;
}


/* TABLE -------------------------------------------------- */

.table-card-v4{
  overflow:hidden;
}


.table-titlebar-v4{
  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:10px;

  padding:
    13px
    16px;

  border-bottom:
    1px solid #dfe8f1;

  background:#fff;
}


.table-titlebar-v4 h2{
  margin:0;

  color:#082f5c;

  font-size:17px;
  font-weight:950;

  letter-spacing:-.015em;
}


.table-titlebar-v4 small{
  color:#64748b;

  font-size:10px;
}


/* BIB jako v produkci */

.table-card-v4 td.bib{
  color:#075cc7 !important;
}

.table-card-v4 td.bib{
  font-weight:950 !important;
}


/* první tři výsledky */

.table-card-v4 tbody tr:nth-child(1){
  background:
    linear-gradient(
      90deg,
      #fff3c9 0,
      #fff9e8 34%,
      #fff 72%
    );
}

.table-card-v4 tbody tr:nth-child(2){
  background:
    linear-gradient(
      90deg,
      #edf3f9 0,
      #f8fbfd 35%,
      #fff 72%
    );
}

.table-card-v4 tbody tr:nth-child(3){
  background:
    linear-gradient(
      90deg,
      #fbe9dc 0,
      #fff7f0 35%,
      #fff 72%
    );
}


/* MOBILE ------------------------------------------------- */

@media(max-width:1120px){

  .hero-inner-v4{
    grid-template-columns:
      minmax(90px,130px)
      minmax(180px,1fr)
      auto
      auto;

    gap:14px;
  }

  .hero-timing-logo-v4{
    display:none;
  }

  .hero-nav-v4{
    gap:14px;

    font-size:12px;
  }

}


@media(max-width:700px){

  .hero-inner-v4{
    min-height:86px;

    grid-template-columns:
      auto
      minmax(0,1fr)
      auto;

    grid-template-areas:
      "logo copy status"
      "logo nav nav";

    column-gap:8px;
    row-gap:3px;

    padding:
      8px
      9px
      9px;
  }

  .hero-event-logo-v4{
    grid-area:logo;
  }

  .event-logo-v4{
    max-width:88px;
    max-height:42px;
  }

  .hero-copy-v4{
    grid-area:copy;
  }

  .hero-copy-v4 h1{
    font-size:16px !important;
  }

  .hero-copy-v4 .sub{
    font-size:9px !important;
  }

  .hero-nav-v4{
    grid-area:nav;

    justify-content:flex-end;

    gap:10px;

    font-size:9.5px;
  }

  .hero-nav-v4 a{
    padding:
      2px
      0
      6px;
  }

  .hero-nav-v4 a.active:after{
    bottom:0;

    height:3px;
  }

  .public-hero-v4 .status{
    grid-area:status;

    font-size:9px !important;
  }


  /*
   * Na mobilu Race jako horizontální tlačítka.
   */

  .controls-v4{
    display:block !important;

    padding:
      6px
      7px !important;
  }

  .race-select-field-v4{
    display:none;
  }

  .controls-v4 > .races{
    display:flex !important;

    margin-bottom:5px;

    overflow-x:auto;

    scrollbar-width:none;
  }

  .controls-v4 > .races::-webkit-scrollbar{
    display:none;
  }


  .controls-v4 .filters{
    display:grid !important;

    grid-template-columns:
      minmax(0,1fr)
      auto
      auto !important;

    gap:5px !important;
  }

  .filter-field-v4 > span{
    display:none;
  }

  .search-field-v4{
    max-width:none;
  }

  .controls-v4 #cat{
    min-width:0;
    max-width:115px;
  }

  .controls-v4 #sex{
    min-width:66px;
  }


  .mid-strip-v4{
    display:block;

    min-height:0;

    margin:
      0
      0
      6px;
  }

  .mid-strip-v4 .summary{
    margin:
      0
      0
      4px !important;
  }

  .mid-strip-v4 .point-tabs{
    margin:0 !important;
  }


  .table-titlebar-v4{
    display:none;
  }

}


/* very small */

@media(max-width:430px){

  .public-hero-v4 .status span:last-child{
    display:none;
  }

}


/* V2: zruseni bileho titulku nad tabulkou */
.table-titlebar-v4{
  display:none !important;
}



/* =========================================================
   RESULTS + LIVE V2
   TABLE DESIGN V5
   ========================================================= */


/* zruseni drivejsiho chybneho "podium podle prvnich 3 radku" */

.table-card-v4 tbody tr:nth-child(1),
.table-card-v4 tbody tr:nth-child(2),
.table-card-v4 tbody tr:nth-child(3){
  background:transparent !important;
}

.table-card-v4 tbody tr:nth-child(even){
  background:#f9fcff !important;
}


/* ---------------------------------------------------------
   TABLE CARD
   --------------------------------------------------------- */

.table-card-v4{
  border:1px solid #cfdeeb !important;
  border-radius:12px !important;

  background:#fff !important;

  box-shadow:
    0 8px 26px rgba(6,42,82,.075) !important;
}

.table-card-v4 .table-wrap{
  width:100%;
  overflow-x:auto;
  overflow-y:visible;

  background:#fff;
}


/* ---------------------------------------------------------
   TABLE BASE
   --------------------------------------------------------- */

.table-card-v4 table{
  width:100%;

  border-collapse:separate !important;
  border-spacing:0 !important;

  table-layout:auto;

  white-space:nowrap;

  font-size:12.5px !important;

  color:#18334e;
}


/* ---------------------------------------------------------
   HEADER
   --------------------------------------------------------- */

.table-card-v4 thead th{
  position:sticky !important;
  top:0;
  z-index:5;

  height:36px !important;

  padding:0 10px !important;

  background:
    linear-gradient(
      180deg,
      #084d8d 0%,
      #063565 100%
    ) !important;

  border-bottom:1px solid #042d58 !important;

  color:#fff !important;

  font-size:9.5px !important;
  line-height:1;

  font-weight:900 !important;

  text-transform:uppercase;
  letter-spacing:.055em;

  vertical-align:middle;
}

.table-card-v4 thead th:first-child{
  border-radius:8px 0 0 0;
}

.table-card-v4 thead th:last-child{
  border-radius:0 8px 0 0;
}


/* ---------------------------------------------------------
   BODY
   --------------------------------------------------------- */

.table-card-v4 tbody td{
  height:42px !important;

  padding:7px 10px !important;

  border-bottom:1px solid #e5edf5 !important;

  background:transparent;

  vertical-align:middle;

  font-size:12px !important;
}

.table-card-v4 tbody tr{
  position:relative;

  transition:
    background .10s ease,
    box-shadow .10s ease;
}

.table-card-v4 tbody tr:hover{
  background:#edf7ff !important;

  box-shadow:
    inset 4px 0 0 #1685ff !important;
}

.table-card-v4 tbody tr:last-child td{
  border-bottom:0 !important;
}


/* ---------------------------------------------------------
   COLUMN ALIGNMENT
   funguje i po zmene poradi sloupcu v administraci
   --------------------------------------------------------- */

.table-card-v4
[data-rm-col="rank"],
.table-card-v4
[data-rm-col="bib"],
.table-card-v4
[data-rm-col="catrank"],
.table-card-v4
[data-rm-col="live_rank"],
.table-card-v4
[data-rm-col="laps"],
.table-card-v4
[data-rm-col="lap"],
.table-card-v4
[data-rm-col="time"],
.table-card-v4
[data-rm-col="chip"],
.table-card-v4
[data-rm-col="gap"]{
  text-align:right !important;

  font-variant-numeric:
    tabular-nums;
}


.table-card-v4
[data-rm-col="sex"],
.table-card-v4
[data-rm-col="year"],
.table-card-v4
[data-rm-col="category"],
.table-card-v4
[data-rm-col="nation"]{
  text-align:center !important;
}


/* ---------------------------------------------------------
   PORADI
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="rank"]{
  min-width:52px;

  color:#082f5c !important;

  font-size:13.5px !important;
  font-weight:950 !important;
}


/* ---------------------------------------------------------
   BIB
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="bib"]{
  min-width:55px;

  color:#075cc7 !important;

  font-size:12.5px !important;
  font-weight:950 !important;
}


/* ---------------------------------------------------------
   JMENO
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="name"]{
  min-width:235px;

  color:#102b47 !important;

  font-size:12.5px !important;
  font-weight:900 !important;

  letter-spacing:-.005em;
}


/* ---------------------------------------------------------
   KLUB
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="club"]{
  min-width:205px;

  color:#29445e !important;

  font-size:11.5px !important;
}


/* ---------------------------------------------------------
   NARODNOST / KATEGORIE
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="nation"]{
  min-width:64px;

  color:#38516a !important;
}

.table-card-v4
tbody
td[data-rm-col="category"]{
  min-width:62px;

  color:#38516a !important;

  font-weight:750;
}


/* ---------------------------------------------------------
   KATEGORIE PORADI
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="catrank"]{
  min-width:80px;

  color:#193b5d !important;

  font-weight:900 !important;
}


/* ---------------------------------------------------------
   CAS
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="time"]{
  min-width:92px;

  color:#071f3a !important;

  font-size:13.5px !important;
  font-weight:950 !important;

  letter-spacing:.005em;
}


/* ---------------------------------------------------------
   CHIP CAS
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="chip"]{
  min-width:92px;

  color:#405b73 !important;

  font-size:11.5px !important;
}


/* ---------------------------------------------------------
   ZTRATA
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="gap"]{
  min-width:88px;

  color:#587089 !important;

  font-size:11px !important;
}


/* ---------------------------------------------------------
   KOLA
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="laps"],
.table-card-v4
tbody
td[data-rm-col="lap"]{
  min-width:58px;

  color:#29445e !important;

  font-weight:750;
}


/* =========================================================
   LIVE SPECIFIC
   ========================================================= */

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"]{
  min-width:145px;

  color:#163a5d !important;
}

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"] b{
  display:block;

  color:#082f5c;

  font-size:11.5px;
  font-weight:950;

  line-height:1.05;
}

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"] small{
  display:block;

  margin-top:3px;

  color:#7890a5;

  font-size:9px;

  font-weight:500;

  font-variant-numeric:
    tabular-nums;
}


/*
 * LIVE ma byt prehled pruchodu.
 * Zadna pseudo-medailova barevnost radku.
 */

.rm-live-v2
.table-card-v4
tbody tr{
  background:#fff !important;
}

.rm-live-v2
.table-card-v4
tbody tr:nth-child(even){
  background:#f9fcff !important;
}

.rm-live-v2
.table-card-v4
tbody tr:hover{
  background:#edf7ff !important;
}


/* =========================================================
   RESULTS SPECIFIC
   ========================================================= */

.rm-results-v2
.table-card-v4
tbody
td[data-rm-col="rank"]{
  font-size:14px !important;
}

.rm-results-v2
.table-card-v4
tbody
td[data-rm-col="name"]{
  font-weight:900 !important;
}


/* ---------------------------------------------------------
   EMPTY
   --------------------------------------------------------- */

.table-card-v4 .empty{
  height:auto !important;

  padding:34px 12px !important;

  text-align:center !important;

  color:#71869a !important;

  font-size:12px !important;
  font-weight:650 !important;

  background:#fbfdff !important;
}


/* =========================================================
   PAGER jako soucast tabulky
   ========================================================= */

.table-card-v4 + .auto-pager,
.auto-pager{
  min-height:46px;

  padding:7px 10px 9px !important;

  border-top:1px solid #edf2f7;

  background:#fff;

  border-radius:0 0 11px 11px;
}

.auto-pager button{
  min-width:32px !important;
  height:31px !important;

  padding:0 8px !important;

  border:1px solid #c7d6e5 !important;
  border-radius:7px !important;

  background:
    linear-gradient(
      180deg,
      #fff,
      #f5f8fb
    ) !important;

  color:#12345c !important;

  font-size:11px !important;
  font-weight:900 !important;

  box-shadow:
    0 1px 2px rgba(6,42,82,.04);
}

.auto-pager button:hover:not(:disabled):not(.active){
  border-color:#73a5d0 !important;

  background:#edf6ff !important;
}

.auto-pager button.active{
  background:
    linear-gradient(
      180deg,
      #ff8c12,
      #ff7200
    ) !important;

  border-color:#ff7200 !important;

  color:#fff !important;

  box-shadow:
    0 3px 9px rgba(255,113,0,.20);
}

.auto-pager .page-info{
  color:#61778d !important;

  font-size:10px !important;
  font-weight:750 !important;
}


/* =========================================================
   MOBILE TABLE
   ========================================================= */

@media(max-width:700px){

  .table-card-v4{
    border-radius:9px !important;
  }

  .table-card-v4 .table-wrap{
    overflow-x:hidden;
  }

  .table-card-v4 table{
    width:100%;

    table-layout:fixed;

    white-space:normal;

    font-size:10.5px !important;
  }

  .table-card-v4 thead th{
    height:29px !important;

    padding:0 3px !important;

    font-size:8px !important;

    letter-spacing:.025em;
  }

  .table-card-v4 tbody td{
    height:34px !important;

    padding:5px 3px !important;

    font-size:9.5px !important;

    overflow:hidden;

    text-overflow:ellipsis;
  }

  .table-card-v4
  tbody
  td[data-rm-col="rank"]{
    min-width:0;
    width:37px;

    font-size:10.5px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="bib"]{
    min-width:0;
    width:43px;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="name"]{
    min-width:0;
    width:auto;

    white-space:normal;

    overflow-wrap:anywhere;

    line-height:1.08;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="time"]{
    min-width:0;
    width:66px;

    white-space:nowrap;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="gap"]{
    min-width:0;
    width:60px;

    white-space:nowrap;

    font-size:9px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="club"]{
    min-width:0;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"]{
    min-width:0;

    font-size:9px !important;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"] b{
    font-size:9.5px;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"] small{
    font-size:7.5px;
  }

}



/* =========================================================
   RESULTS + LIVE V2
   TABLE DESIGN V5
   ========================================================= */


/* zruseni drivejsiho chybneho "podium podle prvnich 3 radku" */

.table-card-v4 tbody tr:nth-child(1),
.table-card-v4 tbody tr:nth-child(2),
.table-card-v4 tbody tr:nth-child(3){
  background:transparent !important;
}

.table-card-v4 tbody tr:nth-child(even){
  background:#f9fcff !important;
}


/* ---------------------------------------------------------
   TABLE CARD
   --------------------------------------------------------- */

.table-card-v4{
  border:1px solid #cfdeeb !important;
  border-radius:12px !important;

  background:#fff !important;

  box-shadow:
    0 8px 26px rgba(6,42,82,.075) !important;
}

.table-card-v4 .table-wrap{
  width:100%;
  overflow-x:auto;
  overflow-y:visible;

  background:#fff;
}


/* ---------------------------------------------------------
   TABLE BASE
   --------------------------------------------------------- */

.table-card-v4 table{
  width:100%;

  border-collapse:separate !important;
  border-spacing:0 !important;

  table-layout:auto;

  white-space:nowrap;

  font-size:12.5px !important;

  color:#18334e;
}


/* ---------------------------------------------------------
   HEADER
   --------------------------------------------------------- */

.table-card-v4 thead th{
  position:sticky !important;
  top:0;
  z-index:5;

  height:36px !important;

  padding:0 10px !important;

  background:
    linear-gradient(
      180deg,
      #084d8d 0%,
      #063565 100%
    ) !important;

  border-bottom:1px solid #042d58 !important;

  color:#fff !important;

  font-size:9.5px !important;
  line-height:1;

  font-weight:900 !important;

  text-transform:uppercase;
  letter-spacing:.055em;

  vertical-align:middle;
}

.table-card-v4 thead th:first-child{
  border-radius:8px 0 0 0;
}

.table-card-v4 thead th:last-child{
  border-radius:0 8px 0 0;
}


/* ---------------------------------------------------------
   BODY
   --------------------------------------------------------- */

.table-card-v4 tbody td{
  height:42px !important;

  padding:7px 10px !important;

  border-bottom:1px solid #e5edf5 !important;

  background:transparent;

  vertical-align:middle;

  font-size:12px !important;
}

.table-card-v4 tbody tr{
  position:relative;

  transition:
    background .10s ease,
    box-shadow .10s ease;
}

.table-card-v4 tbody tr:hover{
  background:#edf7ff !important;

  box-shadow:
    inset 4px 0 0 #1685ff !important;
}

.table-card-v4 tbody tr:last-child td{
  border-bottom:0 !important;
}


/* ---------------------------------------------------------
   COLUMN ALIGNMENT
   funguje i po zmene poradi sloupcu v administraci
   --------------------------------------------------------- */

.table-card-v4
[data-rm-col="rank"],
.table-card-v4
[data-rm-col="bib"],
.table-card-v4
[data-rm-col="catrank"],
.table-card-v4
[data-rm-col="live_rank"],
.table-card-v4
[data-rm-col="laps"],
.table-card-v4
[data-rm-col="lap"],
.table-card-v4
[data-rm-col="time"],
.table-card-v4
[data-rm-col="chip"],
.table-card-v4
[data-rm-col="gap"]{
  text-align:right !important;

  font-variant-numeric:
    tabular-nums;
}


.table-card-v4
[data-rm-col="sex"],
.table-card-v4
[data-rm-col="year"],
.table-card-v4
[data-rm-col="category"],
.table-card-v4
[data-rm-col="nation"]{
  text-align:center !important;
}


/* ---------------------------------------------------------
   PORADI
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="rank"]{
  min-width:52px;

  color:#082f5c !important;

  font-size:13.5px !important;
  font-weight:950 !important;
}


/* ---------------------------------------------------------
   BIB
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="bib"]{
  min-width:55px;

  color:#075cc7 !important;

  font-size:12.5px !important;
  font-weight:950 !important;
}


/* ---------------------------------------------------------
   JMENO
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="name"]{
  min-width:235px;

  color:#102b47 !important;

  font-size:12.5px !important;
  font-weight:900 !important;

  letter-spacing:-.005em;
}


/* ---------------------------------------------------------
   KLUB
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="club"]{
  min-width:205px;

  color:#29445e !important;

  font-size:11.5px !important;
}


/* ---------------------------------------------------------
   NARODNOST / KATEGORIE
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="nation"]{
  min-width:64px;

  color:#38516a !important;
}

.table-card-v4
tbody
td[data-rm-col="category"]{
  min-width:62px;

  color:#38516a !important;

  font-weight:750;
}


/* ---------------------------------------------------------
   KATEGORIE PORADI
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="catrank"]{
  min-width:80px;

  color:#193b5d !important;

  font-weight:900 !important;
}


/* ---------------------------------------------------------
   CAS
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="time"]{
  min-width:92px;

  color:#071f3a !important;

  font-size:13.5px !important;
  font-weight:950 !important;

  letter-spacing:.005em;
}


/* ---------------------------------------------------------
   CHIP CAS
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="chip"]{
  min-width:92px;

  color:#405b73 !important;

  font-size:11.5px !important;
}


/* ---------------------------------------------------------
   ZTRATA
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="gap"]{
  min-width:88px;

  color:#587089 !important;

  font-size:11px !important;
}


/* ---------------------------------------------------------
   KOLA
   --------------------------------------------------------- */

.table-card-v4
tbody
td[data-rm-col="laps"],
.table-card-v4
tbody
td[data-rm-col="lap"]{
  min-width:58px;

  color:#29445e !important;

  font-weight:750;
}


/* =========================================================
   LIVE SPECIFIC
   ========================================================= */

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"]{
  min-width:145px;

  color:#163a5d !important;
}

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"] b{
  display:block;

  color:#082f5c;

  font-size:11.5px;
  font-weight:950;

  line-height:1.05;
}

.rm-live-v2
.table-card-v4
tbody
td[data-rm-col="point"] small{
  display:block;

  margin-top:3px;

  color:#7890a5;

  font-size:9px;

  font-weight:500;

  font-variant-numeric:
    tabular-nums;
}


/*
 * LIVE ma byt prehled pruchodu.
 * Zadna pseudo-medailova barevnost radku.
 */

.rm-live-v2
.table-card-v4
tbody tr{
  background:#fff !important;
}

.rm-live-v2
.table-card-v4
tbody tr:nth-child(even){
  background:#f9fcff !important;
}

.rm-live-v2
.table-card-v4
tbody tr:hover{
  background:#edf7ff !important;
}


/* =========================================================
   RESULTS SPECIFIC
   ========================================================= */

.rm-results-v2
.table-card-v4
tbody
td[data-rm-col="rank"]{
  font-size:14px !important;
}

.rm-results-v2
.table-card-v4
tbody
td[data-rm-col="name"]{
  font-weight:900 !important;
}


/* ---------------------------------------------------------
   EMPTY
   --------------------------------------------------------- */

.table-card-v4 .empty{
  height:auto !important;

  padding:34px 12px !important;

  text-align:center !important;

  color:#71869a !important;

  font-size:12px !important;
  font-weight:650 !important;

  background:#fbfdff !important;
}


/* =========================================================
   PAGER jako soucast tabulky
   ========================================================= */

.table-card-v4 + .auto-pager,
.auto-pager{
  min-height:46px;

  padding:7px 10px 9px !important;

  border-top:1px solid #edf2f7;

  background:#fff;

  border-radius:0 0 11px 11px;
}

.auto-pager button{
  min-width:32px !important;
  height:31px !important;

  padding:0 8px !important;

  border:1px solid #c7d6e5 !important;
  border-radius:7px !important;

  background:
    linear-gradient(
      180deg,
      #fff,
      #f5f8fb
    ) !important;

  color:#12345c !important;

  font-size:11px !important;
  font-weight:900 !important;

  box-shadow:
    0 1px 2px rgba(6,42,82,.04);
}

.auto-pager button:hover:not(:disabled):not(.active){
  border-color:#73a5d0 !important;

  background:#edf6ff !important;
}

.auto-pager button.active{
  background:
    linear-gradient(
      180deg,
      #ff8c12,
      #ff7200
    ) !important;

  border-color:#ff7200 !important;

  color:#fff !important;

  box-shadow:
    0 3px 9px rgba(255,113,0,.20);
}

.auto-pager .page-info{
  color:#61778d !important;

  font-size:10px !important;
  font-weight:750 !important;
}


/* =========================================================
   MOBILE TABLE
   ========================================================= */

@media(max-width:700px){

  .table-card-v4{
    border-radius:9px !important;
  }

  .table-card-v4 .table-wrap{
    overflow-x:hidden;
  }

  .table-card-v4 table{
    width:100%;

    table-layout:fixed;

    white-space:normal;

    font-size:10.5px !important;
  }

  .table-card-v4 thead th{
    height:29px !important;

    padding:0 3px !important;

    font-size:8px !important;

    letter-spacing:.025em;
  }

  .table-card-v4 tbody td{
    height:34px !important;

    padding:5px 3px !important;

    font-size:9.5px !important;

    overflow:hidden;

    text-overflow:ellipsis;
  }

  .table-card-v4
  tbody
  td[data-rm-col="rank"]{
    min-width:0;
    width:37px;

    font-size:10.5px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="bib"]{
    min-width:0;
    width:43px;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="name"]{
    min-width:0;
    width:auto;

    white-space:normal;

    overflow-wrap:anywhere;

    line-height:1.08;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="time"]{
    min-width:0;
    width:66px;

    white-space:nowrap;

    font-size:10px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="gap"]{
    min-width:0;
    width:60px;

    white-space:nowrap;

    font-size:9px !important;
  }

  .table-card-v4
  tbody
  td[data-rm-col="club"]{
    min-width:0;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"]{
    min-width:0;

    font-size:9px !important;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"] b{
    font-size:9.5px;
  }

  .rm-live-v2
  .table-card-v4
  tbody
  td[data-rm-col="point"] small{
    font-size:7.5px;
  }

}



/* =========================================================
   STARTLIST V2
   ========================================================= */

.rm-startlist-v2
.table-card-v4
tbody td[data-rm-col="bib"]{
  min-width:65px;

  color:#075cc7 !important;

  font-size:12.5px !important;
  font-weight:950 !important;
}

.rm-startlist-v2
.table-card-v4
tbody td[data-rm-col="name"]{
  min-width:250px;

  color:#102b47 !important;

  font-size:12.5px !important;
  font-weight:900 !important;
}

.rm-startlist-v2
.table-card-v4
tbody td[data-rm-col="year"]{
  text-align:right !important;

  font-variant-numeric:tabular-nums;
}

.rm-startlist-v2
.table-card-v4
tbody tr:nth-child(even){
  background:#f9fcff !important;
}

.rm-startlist-v2
.table-card-v4
tbody tr:hover{
  background:#edf7ff !important;

  box-shadow:
    inset 4px 0 0 #1685ff !important;
}

@media(max-width:700px){

  .rm-startlist-v2
  .table-card-v4
  tbody td[data-rm-col="bib"]{
    min-width:0;
    width:47px;

    font-size:10px !important;
  }

  .rm-startlist-v2
  .table-card-v4
  tbody td[data-rm-col="name"]{
    min-width:0;
    width:auto;

    white-space:normal;

    font-size:10px !important;

    overflow-wrap:anywhere;
  }

}



/* =========================================================
   STARTLIST V2 – PRODUCTION ROW DESIGN
   ========================================================= */

.rm-startlist-v2 .table-card-v4 table{
  font-size:12px !important;
}


/* BIB ---------------------------------------------------- */

.rm-startlist-v2 .bib-cell{
  width:92px;
  text-align:right !important;
}

.rm-startlist-v2 .bib-pill{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-width:38px;

  padding:3px 7px;

  border:1px solid #d2e7ff;
  border-radius:7px;

  background:#e7f2ff;

  color:#075cc7;

  font-size:12px;
  font-weight:950;

  line-height:1.1;

  font-variant-numeric:tabular-nums;
}


/* JMENO -------------------------------------------------- */

.rm-startlist-v2 .person-cell{
  min-width:300px !important;

  white-space:normal;
}

.rm-startlist-v2 .person-main{
  display:flex;

  min-width:0;

  align-items:flex-start;
}

.rm-startlist-v2 .person-main b{
  display:block;

  color:#0f2742;

  font-size:12.5px;
  font-weight:900;

  line-height:1.1;
}

.rm-startlist-v2 .person small{
  display:block;

  margin-top:3px;

  color:#718299;

  font-size:9px;
  font-weight:400;

  line-height:1.05;

  white-space:nowrap;
}


/* COUNTRY ------------------------------------------------ */

.rm-startlist-v2 .country-cell{
  display:inline-flex;

  align-items:center;

  gap:6px;

  white-space:nowrap;
}

.rm-startlist-v2 .country-flag{
  flex:0 0 auto;

  width:20px;
  height:auto;
  max-height:15px;

  margin:0;

  border-radius:1px;

  object-fit:contain;

  box-shadow:
    0 0 0 1px rgba(15,23,42,.10);
}


/* ROW ---------------------------------------------------- */

.rm-startlist-v2
.table-card-v4
tbody td{
  height:47px !important;

  padding:
    6px
    10px !important;
}

.rm-startlist-v2
.table-card-v4
tbody tr:nth-child(even){
  background:#fbfdff !important;
}

.rm-startlist-v2
.table-card-v4
tbody tr:hover{
  background:#eef7ff !important;

  box-shadow:
    inset 4px 0 0 #1685ff !important;
}


/* ostatni sloupce méně roztažené */

.rm-startlist-v2
.table-card-v4
[data-rm-col="sex"]{
  width:70px;
}

.rm-startlist-v2
.table-card-v4
[data-rm-col="year"]{
  width:75px;
}

.rm-startlist-v2
.table-card-v4
[data-rm-col="category"]{
  width:75px;
}

.rm-startlist-v2
.table-card-v4
[data-rm-col="nation"]{
  width:100px;
}

.rm-startlist-v2
.table-card-v4
[data-rm-col="club"]{
  min-width:260px;
}


/* MOBILE ------------------------------------------------- */

@media(max-width:700px){

  .rm-startlist-v2
  .table-card-v4
  tbody td{
    height:39px !important;

    padding:
      4px
      3px !important;
  }

  .rm-startlist-v2 .bib-cell{
    width:48px;
  }

  .rm-startlist-v2 .bib-pill{
    min-width:30px;

    padding:
      2px
      3px;

    font-size:10px;
  }

  .rm-startlist-v2 .person-cell{
    min-width:0 !important;
  }

  .rm-startlist-v2 .person-main b{
    font-size:10px;

    white-space:normal;

    overflow-wrap:anywhere;
  }

  .rm-startlist-v2 .person small{
    margin-top:1px;

    font-size:7.5px;

    white-space:normal;

    overflow-wrap:anywhere;
  }

  .rm-startlist-v2 .country-flag{
    width:16px;
    max-height:12px;
  }

}



/* STARTLIST V2 – compact single-line rows */

.rm-startlist-v2
.table-card-v4
tbody td{
  height:38px !important;
  padding:4px 10px !important;
  vertical-align:middle !important;
  line-height:1.1 !important;
}

.rm-startlist-v2 .person-cell{
  vertical-align:middle !important;
}

.rm-startlist-v2 .person-main{
  display:flex;
  align-items:center;
  min-height:28px;
}

.rm-startlist-v2 .person-main b{
  line-height:1.1 !important;
}

@media(max-width:700px){

  .rm-startlist-v2
  .table-card-v4
  tbody td{
    height:34px !important;
    padding:3px 4px !important;
  }

  .rm-startlist-v2 .person-main{
    min-height:24px;
  }

}



/* =========================================================
   STARTLIST V2 – DETAIL
   ========================================================= */

.rm-startlist-v2 #detail{
  padding:18px !important;

  background:rgba(5,28,52,.60) !important;

  backdrop-filter:blur(2px);
}


/* hlavní okno */

.rm-startlist-v2 .detail-card{
  width:min(790px,calc(100vw - 36px)) !important;
  max-height:82vh !important;

  padding:0 !important;

  overflow:auto !important;

  border:1px solid rgba(255,255,255,.70) !important;
  border-radius:17px !important;

  background:#f7fafc !important;

  box-shadow:
    0 28px 80px rgba(2,23,47,.36) !important;
}


/* modrá hlavička */

.rm-startlist-v2 .detail-head{
  min-height:70px;

  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;

  gap:15px !important;

  padding:13px 16px !important;

  border-bottom:3px solid #ff7200 !important;

  background:
    linear-gradient(
      110deg,
      #073e77 0%,
      #0c5ab3 100%
    ) !important;

  color:#fff !important;
}

.rm-startlist-v2 .detail-head-copy{
  min-width:0;

  flex:1 1 auto;
}


/* #BIB + vlajka + jméno */

.rm-startlist-v2 .detail-name{
  display:flex;
  align-items:center;

  min-width:0;

  gap:5px;

  color:#fff;

  font-size:18px;
  font-weight:950;

  line-height:1.08;
}

.rm-startlist-v2 .detail-bib{
  flex:0 0 auto;

  font-variant-numeric:tabular-nums;
}

.rm-startlist-v2 .detail-name .country-flag{
  flex:0 0 auto;

  width:21px !important;
  max-height:15px !important;

  margin:0 1px !important;

  box-shadow:
    0 0 0 1px rgba(255,255,255,.22);
}

.rm-startlist-v2 .detail-person-name{
  min-width:0;

  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}


/* klub · race · kat · země */

.rm-startlist-v2 .detail-meta{
  margin-top:5px;

  color:#d9e9fa !important;

  font-size:10px;
  font-weight:550;

  line-height:1.2;

  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* X */

.rm-startlist-v2 .detail-head .close{
  flex:0 0 auto;

  width:32px !important;
  min-width:32px !important;
  height:32px !important;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 !important;

  border:1px solid rgba(255,255,255,.55) !important;
  border-radius:8px !important;

  background:#fff !important;

  color:#0a417d !important;

  font-size:20px !important;
  font-weight:500 !important;
  line-height:1 !important;

  cursor:pointer;
}

.rm-startlist-v2 .detail-head .close:hover{
  background:#eef6ff !important;
}


/* =========================================================
   INFO KARTY
   ========================================================= */

.rm-startlist-v2 .detail-info-grid{
  display:grid;

  grid-template-columns:
    1.25fr
    1fr
    1fr
    1fr;

  gap:7px;

  padding:9px 13px 10px;

  background:#eef4f9;

  border-bottom:1px solid #d9e4ee;
}

.rm-startlist-v2 .detail-info-card{
  min-width:0;

  padding:7px 8px;

  border:1px solid #d5e1ec;
  border-radius:8px;

  background:#fff;

  box-shadow:
    0 1px 2px rgba(12,49,83,.025);
}

.rm-startlist-v2 .detail-info-card span{
  display:block;

  margin-bottom:3px;

  color:#6d8094;

  font-size:8px;
  font-weight:650;

  line-height:1;
}

.rm-startlist-v2 .detail-info-card b{
  display:block;

  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;

  color:#092e58;

  font-size:11px;
  font-weight:900;

  line-height:1.15;
}


/* =========================================================
   MEZIČASY
   ========================================================= */

.rm-startlist-v2 .detail-splits{
  padding:10px 13px 13px;

  background:#f9fbfd;
}

.rm-startlist-v2 .detail-splits .empty{
  padding:22px 10px !important;

  color:#6d8094;

  font-size:10px;
  font-weight:600;
}

.rm-startlist-v2 .detail-splits .split{
  min-height:38px;

  display:grid;

  grid-template-columns:
    minmax(150px,1fr)
    auto
    auto;

  align-items:center;

  gap:12px;

  padding:7px 10px;

  border-bottom:1px solid #e2eaf1;

  background:#fff;
}

.rm-startlist-v2 .detail-splits .split:first-child{
  border-radius:8px 8px 0 0;
}

.rm-startlist-v2 .detail-splits .split:last-child{
  border-bottom:0;

  border-radius:0 0 8px 8px;
}

.rm-startlist-v2 .detail-splits .split b{
  color:#173a5e;

  font-size:11px;
}

.rm-startlist-v2 .detail-splits .split > span:not(.muted){
  color:#092e58;

  font-size:12px;
  font-weight:900;

  font-variant-numeric:tabular-nums;
}

.rm-startlist-v2 .detail-splits .split .muted{
  min-width:72px;

  text-align:right;

  font-size:9px;
}


/* =========================================================
   DETAIL MOBILE
   ========================================================= */

@media(max-width:700px){

  .rm-startlist-v2 #detail{
    padding:8px !important;
  }

  .rm-startlist-v2 .detail-card{
    width:100% !important;

    max-height:90vh !important;

    border-radius:13px !important;
  }

  .rm-startlist-v2 .detail-head{
    min-height:61px;

    padding:10px 11px !important;
  }

  .rm-startlist-v2 .detail-name{
    font-size:15px;

    gap:4px;
  }

  .rm-startlist-v2 .detail-meta{
    margin-top:4px;

    font-size:8px;
  }

  .rm-startlist-v2 .detail-info-grid{
    grid-template-columns:1fr 1fr;

    gap:5px;

    padding:7px;
  }

  .rm-startlist-v2 .detail-info-card{
    padding:6px 7px;
  }

  .rm-startlist-v2 .detail-splits{
    padding:7px;
  }

  .rm-startlist-v2 .detail-splits .split{
    grid-template-columns:1fr auto;

    gap:7px;

    padding:6px 7px;
  }

  .rm-startlist-v2
  .detail-splits
  .split
  .muted{
    grid-column:1/-1;

    text-align:left;
  }

}





/* =========================================================
   RESULTS + LIVE V2 – FLAGS / MEDALS / TRENDS / PODIUM
   ========================================================= */


/* ---------- NÁRODNOST ---------- */

.rm-results-v2 .country-cell,
.rm-live-v2 .country-cell{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  gap:5px;

  white-space:nowrap;
}

.rm-results-v2 .country-flag,
.rm-live-v2 .country-flag{
  flex:0 0 auto;

  width:19px;
  height:auto;
  max-height:14px;

  border-radius:1px;

  object-fit:contain;

  box-shadow:
    0 0 0 1px rgba(15,23,42,.10);
}


/* ---------- POŘADÍ + MEDAILE + ŠIPKA ---------- */

.rm-results-v2 .rank-visual,
.rm-live-v2 .rank-visual{
  width:100%;

  display:inline-grid;

  grid-template-columns:
    19px
    minmax(18px,auto)
    13px;

  align-items:center;
  justify-content:end;

  column-gap:3px;

  line-height:1;
}

.rm-results-v2 .cat-rank-visual,
.rm-live-v2 .cat-rank-visual{
  grid-template-columns:
    19px
    minmax(18px,auto)
    13px;
}

.rm-results-v2 .rank-number,
.rm-live-v2 .rank-number{
  text-align:right;

  font-variant-numeric:tabular-nums;
}


/* medaile */

.rm-results-v2 .rank-medal,
.rm-live-v2 .rank-medal{
  width:19px;

  display:inline-flex;

  align-items:center;
  justify-content:center;

  overflow:visible;

  font-size:15px;
  line-height:1;

  transform:translateY(-.5px);
}


/* šipka */

.rm-results-v2 .rank-trend,
.rm-live-v2 .rank-trend{
  width:13px;
  height:16px;

  display:inline-flex;

  align-items:center;
  justify-content:center;

  font-size:10px;
  font-weight:950;

  line-height:1;
}

.rm-results-v2 .rank-trend-up,
.rm-live-v2 .rank-trend-up{
  color:#11843f;
}

.rm-results-v2 .rank-trend-down,
.rm-live-v2 .rank-trend-down{
  color:#d13c32;
}

.rm-results-v2 .rank-trend-empty,
.rm-live-v2 .rank-trend-empty{
  visibility:hidden;
}


/*
 * Protože medaile + šipka jsou uvnitř stejné buňky,
 * nezmění se fyzické indexy sloupců pro administraci.
 */

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="rank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="rank"]{
  min-width:88px !important;
}

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="catrank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="catrank"]{
  min-width:96px !important;
}


/* ---------- PODIUM PODBARVENÍ ---------- */

/*
 * Podbarvení se řídí třídou podle SKUTEČNÉHO ranku,
 * nikoliv nth-child.
 */

.rm-results-v2
.table-card-v4
tbody tr.podium-1,
.rm-live-v2
.table-card-v4
tbody tr.podium-1{
  background:
    linear-gradient(
      90deg,
      #fff4c9 0%,
      #fff9e9 36%,
      #fffdfa 100%
    ) !important;

  box-shadow:
    inset 4px 0 0 #e6b51f !important;
}

.rm-results-v2
.table-card-v4
tbody tr.podium-2,
.rm-live-v2
.table-card-v4
tbody tr.podium-2{
  background:
    linear-gradient(
      90deg,
      #edf1f5 0%,
      #f7f9fb 38%,
      #ffffff 100%
    ) !important;

  box-shadow:
    inset 4px 0 0 #98a6b4 !important;
}

.rm-results-v2
.table-card-v4
tbody tr.podium-3,
.rm-live-v2
.table-card-v4
tbody tr.podium-3{
  background:
    linear-gradient(
      90deg,
      #f8e2d2 0%,
      #fcf1e9 38%,
      #ffffff 100%
    ) !important;

  box-shadow:
    inset 4px 0 0 #b97849 !important;
}


/* TD musí nechat prosvítit barvu řádku */

.rm-results-v2
.table-card-v4
tbody tr.podium-1 td,
.rm-results-v2
.table-card-v4
tbody tr.podium-2 td,
.rm-results-v2
.table-card-v4
tbody tr.podium-3 td,
.rm-live-v2
.table-card-v4
tbody tr.podium-1 td,
.rm-live-v2
.table-card-v4
tbody tr.podium-2 td,
.rm-live-v2
.table-card-v4
tbody tr.podium-3 td{
  background:transparent !important;
}


/* hover zachová podium */

.rm-results-v2
.table-card-v4
tbody tr.podium-1:hover,
.rm-live-v2
.table-card-v4
tbody tr.podium-1:hover{
  background:#fff3bf !important;

  box-shadow:
    inset 4px 0 0 #d9a800 !important;
}

.rm-results-v2
.table-card-v4
tbody tr.podium-2:hover,
.rm-live-v2
.table-card-v4
tbody tr.podium-2:hover{
  background:#e9eef3 !important;

  box-shadow:
    inset 4px 0 0 #8797a7 !important;
}

.rm-results-v2
.table-card-v4
tbody tr.podium-3:hover,
.rm-live-v2
.table-card-v4
tbody tr.podium-3:hover{
  background:#f6dfce !important;

  box-shadow:
    inset 4px 0 0 #aa6d40 !important;
}


/* ---------- ČAS ---------- */

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="time"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="time"]{
  color:#061d36 !important;

  font-size:13.5px !important;
  font-weight:950 !important;

  font-variant-numeric:tabular-nums;
}


/* ---------- LIVE BOD ---------- */

.rm-live-v2
.table-card-v4
tbody td[data-rm-col="point"] b{
  color:#123d66;

  font-weight:900;
}

.rm-live-v2
.table-card-v4
tbody td[data-rm-col="point"] small{
  display:block;

  margin-top:2px;

  color:#7b8b9c;

  font-size:8.5px;

  font-variant-numeric:tabular-nums;
}


/* ---------- MOBILE ---------- */

@media(max-width:700px){

  .rm-results-v2 .country-flag,
  .rm-live-v2 .country-flag{
    width:16px;
    max-height:12px;
  }

  .rm-results-v2 .rank-medal,
  .rm-live-v2 .rank-medal{
    width:15px;

    font-size:12px;
  }

  .rm-results-v2 .rank-visual,
  .rm-live-v2 .rank-visual{
    grid-template-columns:
      15px
      minmax(14px,auto)
      10px;

    column-gap:1px;
  }

  .rm-results-v2 .rank-trend,
  .rm-live-v2 .rank-trend{
    width:10px;

    font-size:8px;
  }

  .rm-results-v2
  .table-card-v4
  tbody td[data-rm-col="rank"],
  .rm-live-v2
  .table-card-v4
  tbody td[data-rm-col="rank"]{
    min-width:57px !important;
  }

  .rm-results-v2
  .table-card-v4
  tbody td[data-rm-col="catrank"],
  .rm-live-v2
  .table-card-v4
  tbody td[data-rm-col="catrank"]{
    min-width:60px !important;
  }

}



/* =========================================================
   RESULTS + LIVE V2 – FINAL ARROWS
   ========================================================= */

.rm-results-v2 .rank-visual,
.rm-live-v2 .rank-visual{
  grid-template-columns:
    18px
    minmax(16px,auto)
    9px !important;

  column-gap:2px !important;
}

.rm-results-v2 .rank-trend,
.rm-live-v2 .rank-trend{
  width:9px !important;
  height:18px !important;

  margin-left:0 !important;

  font-size:14px !important;
  font-weight:950 !important;

  line-height:1 !important;

  transform:translateY(-1px);
}

.rm-results-v2 .rank-trend-up,
.rm-live-v2 .rank-trend-up{
  color:#138844 !important;
}

.rm-results-v2 .rank-trend-down,
.rm-live-v2 .rank-trend-down{
  color:#d33a32 !important;
}

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="rank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="rank"]{
  min-width:76px !important;
}

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="catrank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="catrank"]{
  min-width:82px !important;
}


/* =========================================================
   RESULTS + LIVE V2 – DETAIL
   ========================================================= */

.rm-results-v2 #detail,
.rm-live-v2 #detail{
  padding:18px !important;

  background:rgba(5,28,52,.60) !important;

  backdrop-filter:blur(2px);
}

.rm-results-v2 .detail-card,
.rm-live-v2 .detail-card{
  width:min(790px,calc(100vw - 36px)) !important;
  max-height:82vh !important;

  padding:0 !important;
  overflow:auto !important;

  border:1px solid rgba(255,255,255,.70) !important;
  border-radius:17px !important;

  background:#f7fafc !important;

  box-shadow:
    0 28px 80px rgba(2,23,47,.36) !important;
}


/* HEAD */

.rm-results-v2 .detail-head,
.rm-live-v2 .detail-head{
  min-height:70px;

  display:flex !important;

  align-items:center !important;
  justify-content:space-between !important;

  gap:15px !important;

  padding:13px 16px !important;

  border-bottom:3px solid #ff7200 !important;

  background:
    linear-gradient(
      110deg,
      #073e77 0%,
      #0c5ab3 100%
    ) !important;

  color:#fff !important;
}

.rm-results-v2 .detail-head-copy,
.rm-live-v2 .detail-head-copy{
  min-width:0;

  flex:1 1 auto;
}


/* BIB + FLAG + NAME */

.rm-results-v2 .detail-name,
.rm-live-v2 .detail-name{
  display:flex;

  align-items:center;

  min-width:0;

  gap:5px;

  color:#fff;

  font-size:18px;
  font-weight:950;

  line-height:1.08;
}

.rm-results-v2 .detail-bib,
.rm-live-v2 .detail-bib{
  flex:0 0 auto;

  font-variant-numeric:tabular-nums;
}

.rm-results-v2 .detail-name .country-flag,
.rm-live-v2 .detail-name .country-flag{
  flex:0 0 auto;

  width:21px !important;
  max-height:15px !important;

  margin:0 1px !important;

  box-shadow:
    0 0 0 1px rgba(255,255,255,.22);
}

.rm-results-v2 .detail-person-name,
.rm-live-v2 .detail-person-name{
  min-width:0;

  overflow:hidden;

  text-overflow:ellipsis;
  white-space:nowrap;
}


/* META */

.rm-results-v2 .detail-meta,
.rm-live-v2 .detail-meta{
  margin-top:5px;

  color:#d9e9fa !important;

  font-size:10px;
  font-weight:550;

  line-height:1.2;

  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* CLOSE X */

.rm-results-v2 .detail-head .close,
.rm-live-v2 .detail-head .close{
  flex:0 0 auto;

  width:32px !important;
  min-width:32px !important;
  height:32px !important;

  display:flex;

  align-items:center;
  justify-content:center;

  padding:0 !important;

  border:1px solid rgba(255,255,255,.55) !important;
  border-radius:8px !important;

  background:#fff !important;

  color:#0a417d !important;

  font-size:20px !important;
  font-weight:500 !important;

  line-height:1 !important;

  cursor:pointer;
}


/* INFO */

.rm-results-v2 .detail-info-grid,
.rm-live-v2 .detail-info-grid{
  display:grid;

  grid-template-columns:
    1.25fr
    1fr
    1fr
    1fr;

  gap:7px;

  padding:9px 13px 10px;

  background:#eef4f9;

  border-bottom:1px solid #d9e4ee;
}

.rm-results-v2 .detail-info-card,
.rm-live-v2 .detail-info-card{
  min-width:0;

  padding:7px 8px;

  border:1px solid #d5e1ec;
  border-radius:8px;

  background:#fff;
}

.rm-results-v2 .detail-info-card span,
.rm-live-v2 .detail-info-card span{
  display:block;

  margin-bottom:3px;

  color:#6d8094;

  font-size:8px;
  font-weight:650;

  line-height:1;
}

.rm-results-v2 .detail-info-card b,
.rm-live-v2 .detail-info-card b{
  display:block;

  overflow:hidden;

  text-overflow:ellipsis;
  white-space:nowrap;

  color:#092e58;

  font-size:11px;
  font-weight:900;

  line-height:1.15;
}


/* SPLITS */

.rm-results-v2 .detail-splits,
.rm-live-v2 .detail-splits{
  padding:10px 13px 13px;

  background:#f9fbfd;
}

.rm-results-v2 .detail-splits .empty,
.rm-live-v2 .detail-splits .empty{
  padding:22px 10px !important;

  color:#6d8094;

  font-size:10px;
  font-weight:600;
}

.rm-results-v2 .detail-splits .split,
.rm-live-v2 .detail-splits .split{
  min-height:38px;

  display:grid;

  grid-template-columns:
    minmax(150px,1fr)
    auto
    auto;

  align-items:center;

  gap:12px;

  padding:7px 10px;

  border-bottom:1px solid #e2eaf1;

  background:#fff;
}

.rm-results-v2 .detail-splits .split b,
.rm-live-v2 .detail-splits .split b{
  color:#173a5e;

  font-size:11px;
}

.rm-results-v2
.detail-splits
.split > span:not(.muted),
.rm-live-v2
.detail-splits
.split > span:not(.muted){
  color:#092e58;

  font-size:12px;
  font-weight:900;

  font-variant-numeric:tabular-nums;
}


/* MOBILE */

@media(max-width:700px){

  .rm-results-v2 #detail,
  .rm-live-v2 #detail{
    padding:8px !important;
  }

  .rm-results-v2 .detail-card,
  .rm-live-v2 .detail-card{
    width:100% !important;

    max-height:90vh !important;

    border-radius:13px !important;
  }

  .rm-results-v2 .detail-name,
  .rm-live-v2 .detail-name{
    font-size:15px;
  }

  .rm-results-v2 .detail-meta,
  .rm-live-v2 .detail-meta{
    font-size:8px;
  }

  .rm-results-v2 .detail-info-grid,
  .rm-live-v2 .detail-info-grid{
    grid-template-columns:1fr 1fr;

    gap:5px;

    padding:7px;
  }

  .rm-results-v2 .detail-splits,
  .rm-live-v2 .detail-splits{
    padding:7px;
  }

}



/* =========================================================
   V2 – HISTORICAL RANK ARROWS
   stejna logika jako puvodni Results
   ========================================================= */

.rm-results-v2 .rank-shift,
.rm-live-v2 .rank-shift{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  gap:3px;

  min-width:13px;

  white-space:nowrap;

  line-height:1;

  font-weight:1000;
}

.rm-results-v2 .rank-shift.up,
.rm-live-v2 .rank-shift.up{
  color:#16a34a;
}

.rm-results-v2 .rank-shift.down,
.rm-live-v2 .rank-shift.down{
  color:#dc2626;
}

.rm-results-v2 .rank-triangle,
.rm-live-v2 .rank-triangle{
  display:inline-block;

  width:12px;
  height:16px;

  flex:0 0 12px;

  background:currentColor;
}

.rm-results-v2 .rank-shift.up .rank-triangle,
.rm-live-v2 .rank-shift.up .rank-triangle{
  clip-path:
    polygon(
      50% 0,
      100% 44%,
      69% 44%,
      69% 100%,
      31% 100%,
      31% 44%,
      0 44%
    );
}

.rm-results-v2 .rank-shift.down .rank-triangle,
.rm-live-v2 .rank-shift.down .rank-triangle{
  clip-path:
    polygon(
      31% 0,
      69% 0,
      69% 56%,
      100% 56%,
      50% 100%,
      0 56%,
      31% 56%
    );
}

.rm-results-v2 .rank-shift-num,
.rm-live-v2 .rank-shift-num{
  min-width:10px;

  font-size:10px;
  font-weight:1000;

  font-variant-numeric:tabular-nums;

  text-align:left;
}

.rm-results-v2 .rank-trend-placeholder,
.rm-live-v2 .rank-trend-placeholder{
  display:inline-block;

  width:12px;
  height:16px;
}


/* tabulka: medaile | poradi | sipka */

.rm-results-v2 .rank-visual,
.rm-live-v2 .rank-visual{
  grid-template-columns:
    18px
    minmax(16px,auto)
    14px !important;

  column-gap:2px !important;
}


/* =========================================================
   V2 DETAIL – RANK HISTORY TABLE
   ========================================================= */

.rm-results-v2 .detail-info-card b,
.rm-live-v2 .detail-info-card b{
  min-height:22px;

  display:flex;

  align-items:center;
}

.rm-results-v2 .detail-rank-line,
.rm-live-v2 .detail-rank-line{
  display:inline-grid;

  grid-template-columns:
    38px
    auto;

  align-items:center;

  column-gap:3px;

  min-width:66px;
}

.rm-results-v2
.detail-rank-line
.rank-shift,
.rm-live-v2
.detail-rank-line
.rank-shift{
  justify-content:flex-start;
}

.rm-results-v2 .detail-rank-main,
.rm-live-v2 .detail-rank-main{
  display:inline-flex;

  align-items:center;

  gap:3px;

  font-weight:950;
}

.rm-results-v2 .detail-rank-main .rank-medal,
.rm-live-v2 .detail-rank-main .rank-medal{
  font-size:13px;
}


.rm-results-v2 .detail-table-wrap,
.rm-live-v2 .detail-table-wrap{
  overflow:auto;

  border:1px solid #d9e4ee;
  border-radius:9px;

  background:#fff;
}

.rm-results-v2 .detail-table-v2,
.rm-live-v2 .detail-table-v2{
  width:100%;

  border-collapse:collapse;

  font-size:11px;

  white-space:nowrap;
}

.rm-results-v2
.detail-table-v2 th,
.rm-live-v2
.detail-table-v2 th{
  height:30px;

  padding:5px 9px;

  background:
    linear-gradient(
      180deg,
      #084d8d,
      #063565
    );

  color:#fff;

  font-size:8.5px;
  font-weight:900;

  text-transform:uppercase;

  letter-spacing:.04em;
}

.rm-results-v2
.detail-table-v2 td,
.rm-live-v2
.detail-table-v2 td{
  height:38px;

  padding:6px 9px;

  border-bottom:1px solid #e5edf5;

  color:#18334e;
}

.rm-results-v2
.detail-table-v2
tr:last-child td,
.rm-live-v2
.detail-table-v2
tr:last-child td{
  border-bottom:0;
}

.rm-results-v2
.detail-table-v2 .num,
.rm-live-v2
.detail-table-v2 .num{
  text-align:right;

  font-variant-numeric:tabular-nums;
}

.rm-results-v2
.detail-table-v2 td:first-child b,
.rm-live-v2
.detail-table-v2 td:first-child b{
  display:block;

  color:#143b63;

  font-size:11px;
}

.rm-results-v2
.detail-table-v2 td:first-child small,
.rm-live-v2
.detail-table-v2 td:first-child small{
  display:block;

  margin-top:2px;

  color:#73869a;

  font-size:8px;
}

.rm-results-v2 .detail-time,
.rm-live-v2 .detail-time{
  color:#071f3a !important;

  font-size:12px;

  font-weight:950;
}

.rm-results-v2
.detail-current-row td,
.rm-live-v2
.detail-current-row td{
  border-top:2px solid #ff7a00 !important;

  background:#fff8ef !important;
}

.rm-results-v2 .detail-note-v2,
.rm-live-v2 .detail-note-v2{
  padding:8px 4px 0;

  color:#718299;

  font-size:9px;

  line-height:1.35;
}


@media(max-width:700px){

  .rm-results-v2 .detail-rank-line,
  .rm-live-v2 .detail-rank-line{
    grid-template-columns:
      34px
      auto;

    min-width:60px;
  }

  .rm-results-v2
  .detail-table-v2 th,
  .rm-results-v2
  .detail-table-v2 td,
  .rm-live-v2
  .detail-table-v2 th,
  .rm-live-v2
  .detail-table-v2 td{
    padding-left:5px;
    padding-right:5px;
  }

}



/* =========================================================
   V2 – ORDER ALIGNMENT + CLEAN DETAIL
   ========================================================= */


/* ---------------------------------------------------------
   PORADI
   vždy přesně:
   MEDAILE | CISLO | SIPKA
   --------------------------------------------------------- */

.rm-results-v2 .rank-visual,
.rm-live-v2 .rank-visual{
  display:inline-grid !important;

  grid-template-columns:
    18px
    22px
    14px !important;

  width:58px !important;

  align-items:center !important;
  justify-content:end !important;

  column-gap:2px !important;
}

.rm-results-v2 .rank-medal,
.rm-live-v2 .rank-medal{
  grid-column:1 !important;

  width:18px !important;

  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
}

.rm-results-v2 .rank-medal-empty,
.rm-live-v2 .rank-medal-empty{
  visibility:hidden !important;
}

.rm-results-v2 .rank-number,
.rm-live-v2 .rank-number{
  grid-column:2 !important;

  width:22px !important;

  display:block !important;

  text-align:right !important;

  font-variant-numeric:tabular-nums;
}

.rm-results-v2 .rank-shift,
.rm-live-v2 .rank-shift,
.rm-results-v2 .rank-trend-placeholder,
.rm-live-v2 .rank-trend-placeholder{
  grid-column:3 !important;

  width:14px !important;

  margin:0 !important;
}


/* cela bunka poradi */

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="rank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="rank"]{
  min-width:78px !important;
  width:78px !important;

  padding-left:6px !important;
  padding-right:6px !important;

  text-align:right !important;
}


/* Kat. poradi stejne */

.rm-results-v2 .cat-rank-visual,
.rm-live-v2 .cat-rank-visual{
  width:58px !important;
}

.rm-results-v2
.table-card-v4
tbody td[data-rm-col="catrank"],
.rm-live-v2
.table-card-v4
tbody td[data-rm-col="catrank"]{
  min-width:88px !important;

  padding-left:6px !important;
  padding-right:6px !important;

  text-align:right !important;
}


/* ---------------------------------------------------------
   DETAIL – hlavní okno
   --------------------------------------------------------- */

.rm-results-v2 .detail-card,
.rm-live-v2 .detail-card{
  width:min(760px,calc(100vw - 36px)) !important;

  max-height:82vh !important;

  overflow:hidden !important;

  display:flex !important;
  flex-direction:column !important;
}


/* hlavicka kompaktnější */

.rm-results-v2 .detail-head,
.rm-live-v2 .detail-head{
  flex:0 0 auto;

  min-height:62px !important;

  padding:11px 14px !important;
}

.rm-results-v2 .detail-name,
.rm-live-v2 .detail-name{
  font-size:17px !important;
}

.rm-results-v2 .detail-meta,
.rm-live-v2 .detail-meta{
  margin-top:4px !important;

  font-size:9.5px !important;
}


/* ---------------------------------------------------------
   4 zakladni karty
   --------------------------------------------------------- */

.rm-results-v2 .detail-info-grid,
.rm-live-v2 .detail-info-grid{
  flex:0 0 auto;

  grid-template-columns:
    1.35fr
    1fr
    .8fr
    .8fr !important;

  gap:6px !important;

  padding:8px 10px !important;
}

.rm-results-v2 .detail-info-card,
.rm-live-v2 .detail-info-card{
  padding:6px 8px !important;

  border-radius:7px !important;
}

.rm-results-v2 .detail-info-card span,
.rm-live-v2 .detail-info-card span{
  margin-bottom:3px !important;

  font-size:7.5px !important;
}

.rm-results-v2 .detail-info-card b,
.rm-live-v2 .detail-info-card b{
  min-height:0 !important;

  display:block !important;

  font-size:10.5px !important;
}


/* ---------------------------------------------------------
   PRUBEHY
   --------------------------------------------------------- */

.rm-results-v2 .detail-splits,
.rm-live-v2 .detail-splits{
  flex:1 1 auto;

  min-height:0;

  padding:8px 10px 9px !important;

  overflow:auto !important;
}


/*
 * Žádný vodorovný scrollbar.
 * Tabulka má pevně rozdělenou šířku modalu.
 */

.rm-results-v2 .detail-table-wrap,
.rm-live-v2 .detail-table-wrap{
  width:100% !important;

  overflow:hidden !important;

  border-radius:8px !important;
}

.rm-results-v2 .detail-table-v2,
.rm-live-v2 .detail-table-v2{
  width:100% !important;

  table-layout:fixed !important;

  white-space:normal !important;
}


/* 4 sloupce */

.rm-results-v2 .detail-col-point,
.rm-live-v2 .detail-col-point{
  width:38%;
}

.rm-results-v2 .detail-col-time,
.rm-live-v2 .detail-col-time{
  width:18%;
}

.rm-results-v2 .detail-col-rank,
.rm-live-v2 .detail-col-rank{
  width:22%;
}

.rm-results-v2 .detail-col-catrank,
.rm-live-v2 .detail-col-catrank{
  width:22%;
}


/* header */

.rm-results-v2 .detail-table-v2 th,
.rm-live-v2 .detail-table-v2 th{
  height:28px !important;

  padding:4px 8px !important;

  font-size:8px !important;
}


/* rows */

.rm-results-v2 .detail-table-v2 td,
.rm-live-v2 .detail-table-v2 td{
  height:37px !important;

  padding:5px 8px !important;

  vertical-align:middle !important;
}

.rm-results-v2 .detail-point b,
.rm-live-v2 .detail-point b{
  display:block;

  overflow:hidden;

  text-overflow:ellipsis;
  white-space:nowrap;

  font-size:10.5px !important;
}

.rm-results-v2 .detail-point small,
.rm-live-v2 .detail-point small{
  display:block;

  margin-top:1px;

  color:#73869a;

  font-size:7.5px !important;

  white-space:nowrap;
}


/* pořadí v detailu */

.rm-results-v2 .detail-rank-line,
.rm-live-v2 .detail-rank-line{
  display:inline-grid !important;

  grid-template-columns:
    40px
    28px !important;

  width:70px !important;

  min-width:70px !important;

  align-items:center !important;

  column-gap:2px !important;
}

.rm-results-v2
.detail-rank-line > span:first-child,
.rm-live-v2
.detail-rank-line > span:first-child{
  width:40px;

  display:flex;

  justify-content:flex-start;
}

.rm-results-v2 .detail-rank-main,
.rm-live-v2 .detail-rank-main{
  width:28px;

  display:flex !important;

  align-items:center;
  justify-content:flex-end;

  gap:2px !important;

  font-size:11px;
}


/* číslo změny jen v detailu */

.rm-results-v2 .detail-rank-line .rank-shift-num,
.rm-live-v2 .detail-rank-line .rank-shift-num{
  font-size:9px !important;
}


/* poslední / aktuální průchod */

.rm-results-v2 .detail-current-row td,
.rm-live-v2 .detail-current-row td{
  background:#fff9f1 !important;

  border-top:2px solid #ff7800 !important;
}


/* poznámka */

.rm-results-v2 .detail-note-v2,
.rm-live-v2 .detail-note-v2{
  padding:7px 2px 0 !important;

  font-size:8px !important;

  line-height:1.25;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media(max-width:700px){

  .rm-results-v2 .detail-card,
  .rm-live-v2 .detail-card{
    width:100% !important;

    max-height:90vh !important;
  }

  .rm-results-v2 .detail-info-grid,
  .rm-live-v2 .detail-info-grid{
    grid-template-columns:
      1fr
      1fr !important;
  }

  .rm-results-v2 .detail-col-point,
  .rm-live-v2 .detail-col-point{
    width:34%;
  }

  .rm-results-v2 .detail-col-time,
  .rm-live-v2 .detail-col-time{
    width:20%;
  }

  .rm-results-v2 .detail-col-rank,
  .rm-live-v2 .detail-col-rank,
  .rm-results-v2 .detail-col-catrank,
  .rm-live-v2 .detail-col-catrank{
    width:23%;
  }

  .rm-results-v2 .detail-table-v2 th,
  .rm-results-v2 .detail-table-v2 td,
  .rm-live-v2 .detail-table-v2 th,
  .rm-live-v2 .detail-table-v2 td{
    padding-left:3px !important;
    padding-right:3px !important;
  }

}



/* =========================================================
   STARTLIST V2 – DETAIL WITHOUT SPLITS
   Startovka zobrazuje pouze udaje prihlaseneho.
   Mezicasy patri do Results / LIVE.
   ========================================================= */

.rm-startlist-v2 .detail-splits{
  display:none !important;
}

.rm-startlist-v2 .detail-card{
  overflow:hidden !important;
}

.rm-startlist-v2 .detail-info-grid{
  border-bottom:0 !important;
}



/* =========================================================
   V2 – PRODUCTION HERO
   Results / Startlist / Live
   stejné proporce jako produkční results.php
   ========================================================= */


/* ---------------------------------------------------------
   HERO BASE
   --------------------------------------------------------- */

.public-hero-v4{
  position:relative !important;

  width:100% !important;
  min-height:114px !important;

  overflow:hidden !important;

  color:#fff !important;

  background:
    linear-gradient(
      105deg,
      #03284f 0%,
      #064887 46%,
      #0d61c9 100%
    ) !important;

  border-bottom:
    1px solid rgba(255,255,255,.14) !important;

  box-shadow:
    0 8px 28px rgba(3,35,70,.22) !important;
}


.public-hero-v4::before{
  content:"";

  position:absolute;
  inset:0;

  pointer-events:none;

  background:
    radial-gradient(
      circle at 68% 10%,
      rgba(37,145,255,.36),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      transparent 54%,
      rgba(255,255,255,.055) 54%,
      rgba(255,255,255,.055) 55%,
      transparent 55%
    ),
    linear-gradient(
      180deg,
      rgba(2,20,43,.02),
      rgba(2,20,43,.18)
    );
}


.public-hero-v4::after{
  content:"";

  position:absolute;

  left:0;
  right:0;
  bottom:0;

  height:3px;

  background:
    linear-gradient(
      90deg,
      #ff7800 0%,
      #ff9a22 24%,
      rgba(255,120,0,0) 62%
    );
}


/* ---------------------------------------------------------
   VNITŘNÍ GRID
   logo | název | navigace | timing logo
   --------------------------------------------------------- */

.hero-inner-v4{
  position:relative !important;
  z-index:1 !important;

  width:100% !important;
  max-width:1500px !important;

  min-height:114px !important;

  margin:0 auto !important;

  padding:14px 18px !important;

  display:grid !important;

  grid-template-columns:
    auto
    minmax(180px,1fr)
    auto
    auto !important;

  align-items:center !important;

  gap:24px !important;
}


/* ---------------------------------------------------------
   EVENT LOGO
   --------------------------------------------------------- */

.hero-event-logo-v4{
  display:flex !important;

  align-items:center !important;

  min-width:0 !important;

  margin:0 !important;
  padding:0 !important;
}

.hero-event-logo-v4:empty{
  display:none !important;
}

.event-logo-v4{
  display:block !important;

  width:auto !important;
  height:auto !important;

  max-width:205px !important;
  max-height:72px !important;

  padding:0 !important;

  border:0 !important;
  border-radius:0 !important;

  background:transparent !important;

  box-shadow:none !important;

  object-fit:contain !important;
}


/* ---------------------------------------------------------
   EVENT TITLE
   --------------------------------------------------------- */

.hero-copy-v4{
  min-width:0 !important;

  margin:0 !important;
  padding:0 !important;
}

.hero-copy-v4 h1{
  margin:0 !important;

  overflow:hidden !important;

  color:#fff !important;

  font-size:24px !important;
  font-weight:950 !important;

  line-height:1.05 !important;

  letter-spacing:-.025em !important;

  text-overflow:ellipsis !important;
  white-space:nowrap !important;

  text-shadow:
    0 1px 0 rgba(0,0,0,.10) !important;
}


.hero-copy-v4 .sub{
  display:flex !important;

  align-items:center !important;
  flex-wrap:wrap !important;

  gap:9px !important;

  margin-top:7px !important;

  color:#d8eaff !important;

  font-size:11px !important;
  line-height:1.2 !important;
}

.hero-copy-v4 .sub strong{
  color:#fff !important;

  font-weight:900 !important;
}

.hero-dot-v4{
  width:5px !important;
  height:5px !important;

  flex:0 0 5px !important;

  display:inline-block !important;

  border-radius:50% !important;

  background:#ff7800 !important;
}


/* ---------------------------------------------------------
   NAVIGACE
   --------------------------------------------------------- */

.hero-nav-v4{
  display:flex !important;

  align-items:center !important;

  gap:30px !important;

  margin:0 !important;

  white-space:nowrap !important;

  color:#fff !important;

  font-size:16px !important;
  font-weight:950 !important;

  letter-spacing:.01em !important;
}


.hero-nav-v4 a{
  position:relative !important;

  display:block !important;

  padding:12px 0 !important;

  color:#fff !important;

  text-decoration:none !important;

  font:inherit !important;
}


.hero-nav-v4 a:hover{
  color:#fff !important;
}


.hero-nav-v4 a.active::after{
  content:"";

  position:absolute;

  left:0;
  right:0;
  bottom:3px;

  height:4px;

  border-radius:4px;

  background:#ff7800;
}


/* ---------------------------------------------------------
   WS STATUS
   necháme funkční, ale NESMÍ měnit grid záhlaví
   --------------------------------------------------------- */

.public-hero-v4 .status{
  position:absolute !important;

  right:181px !important;
  bottom:13px !important;

  display:flex !important;

  align-items:center !important;

  gap:5px !important;

  margin:0 !important;

  color:#d8eaff !important;

  font-size:9px !important;
  font-weight:800 !important;

  white-space:nowrap !important;
}

.public-hero-v4 .status .dot{
  width:7px !important;
  height:7px !important;

  flex:0 0 7px !important;
}


/* ---------------------------------------------------------
   TIMING LOGO
   --------------------------------------------------------- */

.hero-timing-logo-v4{
  display:flex !important;

  align-items:center !important;
  justify-content:flex-end !important;

  min-width:0 !important;

  margin:0 !important;
}


.timing-logo-v4{
  display:block !important;

  width:auto !important;
  height:auto !important;

  max-width:145px !important;
  max-height:58px !important;

  padding:6px 9px !important;

  border-radius:10px !important;

  background:#fff !important;

  object-fit:contain !important;

  box-shadow:
    0 5px 18px rgba(0,0,0,.16) !important;
}


/* fallback jen pokud není timing logo */

.timing-fallback-v4{
  display:flex !important;

  align-items:center !important;
  justify-content:center !important;

  min-width:116px !important;
  min-height:48px !important;

  padding:6px 9px !important;

  border-radius:10px !important;

  background:#fff !important;

  color:#082f5c !important;

  font-size:10px !important;
  font-weight:950 !important;

  letter-spacing:.05em !important;

  box-shadow:
    0 5px 18px rgba(0,0,0,.16) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:900px){

  .hero-inner-v4{
    min-height:92px !important;

    gap:14px !important;
  }

  .public-hero-v4{
    min-height:92px !important;
  }

  .hero-copy-v4 h1{
    font-size:21px !important;
  }

  .event-logo-v4{
    max-width:155px !important;
    max-height:58px !important;
  }

  .timing-logo-v4{
    max-width:120px !important;
    max-height:46px !important;
  }

  .hero-nav-v4{
    gap:18px !important;

    font-size:13px !important;
  }

  .public-hero-v4 .status{
    display:none !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

  .public-hero-v4{
    min-height:76px !important;
  }

  .hero-inner-v4{
    min-height:76px !important;

    padding:8px 9px !important;

    grid-template-columns:
      auto
      minmax(0,1fr)
      auto !important;

    gap:8px !important;
  }

  .hero-copy-v4 h1{
    font-size:16px !important;
  }

  .hero-copy-v4 .sub{
    margin-top:3px !important;

    font-size:9px !important;
  }

  .event-logo-v4{
    max-width:88px !important;
    max-height:42px !important;
  }

  .timing-logo-v4{
    max-width:68px !important;
    max-height:32px !important;

    padding:3px 4px !important;
  }

  .timing-fallback-v4{
    min-width:62px !important;
    min-height:30px !important;

    padding:3px 4px !important;

    font-size:7px !important;
  }

  .hero-nav-v4{
    display:none !important;
  }

  .public-hero-v4 .status{
    display:none !important;
  }

}


/* RM_V2_RESULTS_MOBILE_COLUMNS_FIX_20261011 */
@media(max-width:700px){

  .rm-results-v2 .table-card-v4 table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  .rm-results-v2 #headRow th,
  .rm-results-v2 #rows td{
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .rm-results-v2 #headRow [data-rm-col="rank"],
  .rm-results-v2 #rows [data-rm-col="rank"]{
    width:66px !important;
  }

  .rm-results-v2 #headRow [data-rm-col="bib"],
  .rm-results-v2 #rows [data-rm-col="bib"]{
    width:45px !important;
  }

  .rm-results-v2 #headRow [data-rm-col="name"],
  .rm-results-v2 #rows [data-rm-col="name"]{
    width:auto !important;
  }

  .rm-results-v2 #headRow [data-rm-col="time"],
  .rm-results-v2 #rows [data-rm-col="time"]{
    width:72px !important;
  }

}

/* RM_V2_MOBILE_HERO_NAV_20261011 */
@media(max-width:700px){

  .hero-inner-v4{
    grid-template-columns:
      auto
      minmax(0,1fr)
      auto !important;

    grid-template-areas:
      "event copy timing"
      ". nav nav" !important;

    grid-template-rows:
      auto
      auto !important;

    row-gap:2px !important;
  }

  .hero-event-logo-v4{
    grid-area:event !important;
  }

  .hero-copy-v4{
    grid-area:copy !important;
  }

  .hero-timing-logo-v4{
    grid-area:timing !important;
  }

  .hero-nav-v4{
    grid-area:nav !important;

    display:flex !important;

    align-items:center !important;
    justify-content:flex-end !important;

    gap:11px !important;

    min-width:0 !important;

    margin:0 !important;
    padding:0 !important;

    font-size:9px !important;
    line-height:1 !important;

    white-space:nowrap !important;
  }

  .hero-nav-v4 a{
    padding:3px 0 6px !important;
  }

}

/* RM_V2_LIVE_MOBILE_COLUMNS_FIX_20261011 */
@media(max-width:700px){

  .rm-live-v2 .table-card-v4 table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  .rm-live-v2 #headRow th,
  .rm-live-v2 #rows td{
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .rm-live-v2 #headRow [data-rm-col="rank"],
  .rm-live-v2 #rows [data-rm-col="rank"]{
    width:58px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="bib"],
  .rm-live-v2 #rows [data-rm-col="bib"]{
    width:48px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="name"],
  .rm-live-v2 #rows [data-rm-col="name"]{
    width:auto !important;
  }

  .rm-live-v2 #headRow [data-rm-col="time"],
  .rm-live-v2 #rows [data-rm-col="time"]{
    width:72px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="point"],
  .rm-live-v2 #rows [data-rm-col="point"]{
    width:82px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="lap"],
  .rm-live-v2 #rows [data-rm-col="lap"]{
    width:42px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="catrank"],
  .rm-live-v2 #rows [data-rm-col="catrank"]{
    width:58px !important;
  }

  .rm-live-v2 #headRow [data-rm-col="gap"],
  .rm-live-v2 #rows [data-rm-col="gap"]{
    width:62px !important;
  }

}

/* RM_V2_STARTLIST_MOBILE_COLUMNS_FIX_20261011 */
@media(max-width:700px){

  .rm-startlist-v2 .table-card-v4 table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  .rm-startlist-v2 #headRow th,
  .rm-startlist-v2 #rows td{
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="bib"],
  .rm-startlist-v2 #rows [data-rm-col="bib"]{
    width:55px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="name"],
  .rm-startlist-v2 #rows [data-rm-col="name"]{
    width:auto !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="sex"],
  .rm-startlist-v2 #rows [data-rm-col="sex"]{
    width:38px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="year"],
  .rm-startlist-v2 #rows [data-rm-col="year"]{
    width:48px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="category"],
  .rm-startlist-v2 #rows [data-rm-col="category"]{
    width:68px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="nation"],
  .rm-startlist-v2 #rows [data-rm-col="nation"]{
    width:55px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="club"],
  .rm-startlist-v2 #rows [data-rm-col="club"]{
    width:auto !important;
  }

}

/* RM_V2_STARTLIST_MOBILE_COLUMNS_FIX_20261011 */
@media(max-width:700px){

  .rm-startlist-v2 .table-card-v4 table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  .rm-startlist-v2 #headRow th,
  .rm-startlist-v2 #rows td{
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="bib"],
  .rm-startlist-v2 #rows [data-rm-col="bib"]{
    width:55px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="name"],
  .rm-startlist-v2 #rows [data-rm-col="name"]{
    width:auto !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="sex"],
  .rm-startlist-v2 #rows [data-rm-col="sex"]{
    width:38px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="year"],
  .rm-startlist-v2 #rows [data-rm-col="year"]{
    width:48px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="category"],
  .rm-startlist-v2 #rows [data-rm-col="category"]{
    width:68px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="nation"],
  .rm-startlist-v2 #rows [data-rm-col="nation"]{
    width:55px !important;
  }

  .rm-startlist-v2 #headRow [data-rm-col="club"],
  .rm-startlist-v2 #rows [data-rm-col="club"]{
    width:auto !important;
  }

}
