@media (prefers-reduced-motion: reduce){
  table.schedule.results tr.is-live,
  table.schedule.results tr.is-live td.score::before{
    animation: none !important;
  }
}

@media (min-width: 701px){
  .menu{ display:none !important; }
}

@media (max-width: 900px){
  .hero{ grid-template-columns: 1fr; }
  .grid{ grid-template-columns: 1fr; }
  .h1{ font-size: 28px; }
  .nav__item{ font-size: 13px; padding: 12px 6px; }
  .teammeta{ grid-template-columns: 1fr; }
  .gallery{ grid-template-columns: repeat(2, 1fr); }
  .partners__row{ grid-template-columns: 1fr 1fr; }
}

@media (max-width: 700px){
  .nav{ display:none; }
  .toplinks{ display:none; }
  .menubtn{ display:inline-flex; }
}

@media (max-width: 600px){
  .topbar__inner{ padding: 10px 0; }
  .nav__item{ padding: 9px 9px; font-size: 12px; }
  .h1{ font-size: 24px; }
  .btn{ width: 100%; }
  .footer__bar{ justify-content: center; }
  .gallery{ grid-template-columns: 1fr; }
  .footer__bar{
    flex-direction: column;
    gap: 12px;
  }
    .topbar__inner{
    padding-left: 16px;
    padding-right: 16px;
  }
  .schedule th,
  .schedule td{
    padding: 14px 10px;
    font-size: 14px;
  }
}

@media (max-width: 600px){
  .footer__bar{
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .socialbar{
    margin-left: 0;
    justify-content: center;
  }
}

@media (max-width: 700px){
  .scorewrap--stack .scorewrap__total{ font-size: 26px; }
  .scorewrap--stack .qscore__head{
    grid-template-columns: repeat(4, 38px);
    gap: 6px;
  }
  .scorewrap--stack .qscore__rows{
    grid-template-columns: 80px repeat(4, 38px);
    gap: 6px;
  }
  .scorewrap--stack .qscore__box{
    width: 38px;
    height: 32px;
    border-radius: 11px;
  }
}

@media (min-width: 901px){
  .day-switch{ display:none; }

}

@media (min-width: 601px){
  .brand { margin: 7px 10px; }
}

@media screen{
  col.col-score{ width: 0 !important; }
  th.col-score, td.col-score{ display: none !important; }

  /* ODKAZY doprava */
  th.col-links, td.col-links{
    text-align: right !important;
    white-space: nowrap;
  }

  th.col-links {
    padding-right: 20px;
  }

  td.col-links .matchlinks{
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
  }
}

@media screen {
  table.schedule > thead > tr > th:first-child,
  table.schedule > tbody > tr > td:first-child {
    width: 120px;
    min-width: 110px;
    white-space: nowrap;
  }

  #tbl-rozpis-patek col:first-child,
  #tbl-rozpis-sobota col:first-child,
  #tbl-rozpis-nedele col:first-child{
    width: 130px !important;
  }

    /* ČAS: nikdy ne tučně (hlavně u prvního/next/live řádku) */
  #tbl-rozpis-patek td:first-child,
  #tbl-rozpis-sobota td:first-child,
  #tbl-rozpis-nedele td:first-child,
  td.col-time,
  th.col-time {
    font-weight: 400 !important;
    font-size: 9pt !important;
    letter-spacing: 0 !important;
  }

    table.schedule:not(.results) tr.is-next td:first-child {
    font-weight: 400 !important;
  }

      /* Zarovnání obsahu sloupce SKÓRE víc doleva */
  table.schedule.results td.score{
    text-align: left;        /* místo center */
    padding-left: 12px;      /* jemný offset pod nadpis SKÓRE */
  }

  .score-main
  {
    text-align: left;
    margin-left: 36px;
  }
}

@media (max-width: 820px){
  .playoff-grid{
    grid-template-columns: 1fr;
  }
}

@media (min-width: 820px){
  .tbl thead th{
    position: sticky;
    top: 0;
    z-index: 1;
  }
}

@media (max-width: 640px){
  .tbl{
    font-size: 13px;
  }
  .tbl thead th{
    font-size: 11px;
  }
}

@media (min-width: 820px){
  table.standings thead th{
    position: sticky;
    top: 0;
    z-index: 1;
  }
}

@media (max-width: 520px){
  table.standings th:first-child,
  table.standings td:first-child{
    width: 34px;
    font-size: 12px;
  }
}

@media (max-width: 640px) {
  .standings th:nth-child(6),
  .standings td:nth-child(6),
  .standings th:nth-child(7),
  .standings td:nth-child(7) {
    display: none;
  }
}

/* hover – ať to působí “živě” */
@media (hover:hover){
  .game{ transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease; }
  .game:hover{
    transform: translateY(-2px);
    border-color: rgba(0,0,0,.22);
    box-shadow: 0 14px 32px rgba(0,0,0,.10);
  }
}

/* Responsive: bracket do jednoho sloupce dřív, ať to není rozsekaný */
@media (max-width: 980px){
  .playoff-grid{ grid-template-columns: 1fr; }
  .round-qf,.round-sf,.round-f{ grid-column:auto; grid-row:auto; }
}

/* optional: subtle hover (desktop only) */
@media (hover:hover){
  .qf-item:hover .qf-score{
    background: rgba(255,255,255,.14);
    border-color: rgba(255,255,255,.28);
  }
}

@media (max-width: 900px){
  .quick-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 900px){
  #teams-quick{ grid-template-columns: 1fr; }
  .team-search{ position: static; }
}

@media (max-width: 700px){
  .team-info{ grid-template-columns: 60px 1fr; }
  .team-info__grid{ grid-template-columns: 1fr; }
  .team-info__logo img, .team-logo-placeholder{
    width: 60px; height: 60px; border-radius: 14px;
  }
}