*, *::before, *::after
 {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
 }

html, body
 {
  margin: 20px;
  margin-top: 10px;
 }

body
 {
  background-color: #fff;
  font-family: 'Roboto', sans-serif;
  font-size: 14pt;
  line-height: 1.5em;
  color: #000;
 }

@font-face
 {
  font-family: 'Roboto';
  src: url('fonty/Roboto-VariableFont_wdth,wght.ttf') format('truetype');
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-style: normal;
 }

@font-face
 {
  font-family: 'Roboto';
  src: url('fonty/Roboto-Italic-VariableFont_wdth,wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: italic;
 }

img
 {
  border: none;
 }

table
 {
  border-collapse: collapse;
 }

table td
 {
  vertical-align: middle;
  padding: 5px;
  padding-right: 30px;
  min-width: 50px;
 }

table tr td:last-child
 {
  padding-right: 5px;
 }

table td.doprava
 {
  text-align: right;
 }

table td.stred
 {
  text-align: center;
 }

table td a
 {
  color: #000;
 }

#hlavni-stredeni
 {
  display: flex;
  justify-content: center;
 }

#hlavni-ramecek
 {
  /* max-width: 1600px; */
  margin: 0 auto;
  padding-bottom: 50px;
 }

#zahlavi
 {
  text-align: right;
  margin-bottom: 35px;
  line-height: 1.2em;
 }

#obsah
 {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
 }

#obsah .sloupec
 {
  min-width: 370px;
  max-width: 420px;
 }

#obsah .sloupec100
 {
  min-width: unset;
  max-width: 1300px;
 }

.blok
 {
  border-left: 1px solid #666;
  border-top: 1px solid #666;
  margin-bottom: 60px;  /* jako gap */
 }

.blok.vyska1
 {
  height: 40vh;
 }

.blok-hlavicka
 {
  display: flex;
  align-items: baseline;
  position: relative;
  margin: -15px 0 0 10px;  /* posun nahoru přes horní čáru */
  padding: 0;
  background: white;
 }

.blok-nadpis,
a.blok-nadpis
 {
  font-weight: bold;
  font-size: 11pt;
  color: #333;
  white-space: nowrap;
  margin-right: -7px;  /* extra mezera za nadpisem */
  letter-spacing: 1px;
  padding: 0 10px;
  text-transform: uppercase;
 }

a.blok-nadpis
 {
  text-decoration: none;
 }

a.blok-nadpis:hover
 {
  text-decoration: underline;
 }

.blok-cara
 {
  flex-grow: 1;
  border-bottom: 1px solid #666;
  margin: 0 5px;
  align-self: center;
 }

a.blok-cas
 {
  text-decoration: none;
  font-size: 10pt;
  color: #999;
  white-space: nowrap;
  margin-left: 3px;
 }

.blok-odkazu
 {
  margin-bottom: 60px;  /* jako gap */
 }

.blok-odkazu a
 {
  color: #fff;
  background-color: #a5a5a5;
  text-decoration: none;
  padding: 10px;
  margin-right: 5px;
 }

.blok-odkazu a:hover
 {
  background-color: #949494;
 }

.blok-obsah
 {
  /* background-color: yellow; */
  margin: 5px 0 0 15px;
  color: #333;
  line-height: 1.4;
 }

.blok-obsah div.delsi-obsah
 {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
 }

.blok-obsah div.delsi-obsah p
 {
  margin-right: 10px;  /* odsazení od posuvníku */
 }

.blok-obsah p
 {
  margin-bottom: 5px;
  padding: 4px 15px 3px 15px;
 }

.blok-obsah p.sedy1
 {
  background-color: #efefef;
 }

.blok-obsah p.zeleny1
 {
  background-color: #e9f3ea;
 }

.blok-obsah p.zeleny2
 {
  background-color: #faffe7;
 }

.blok-obsah p.cerveny2
 {
  background-color: #fce0ce;
 }

.blok-obsah div.hra,
.blok-obsah div.pocasi
 {
  margin-bottom: 5px;
  padding: 4px 15px 3px 15px;
  background-color: #efefef;
 }

.blok-obsah div.hra.cerveny1
 {
  background-color: #f6e8e8;
 }

.blok-obsah div.hra .nadpis,
.blok-obsah div.pocasi .nadpis
 {
  font-size: .85em;
  margin: 6px 0 5px 0;
 }

.blok-obsah div.pocasi .nadpis a
 {
  text-decoration: none;
  color: #000;
 }

.blok-obsah div.pocasi .nadpis a:hover
 {
  text-decoration: underline;
 }

.blok-obsah div.hra .text,
.blok-obsah div.pocasi .text
 {
  font-size: 1.4em;
  margin-bottom: 6px;
 }

.blok-obsah div.pocasi .text
 {
  margin-bottom: 20px;
 }

.blok-obsah div.hra .text .svetly
 {
  color: #a4a4a4;
 }

#pocasi-ikonka
 {
  float: left;
  width: 72px;
  text-align: right;
  margin-right: 7px;
 }

#pocasi-text
 {
  padding-top: 10px;
 }

h1
 {
  margin-top: 35px;
 }

.stred
 {
  text-align: center;
 }

.tucne
 {
  font-weight: bold;
 }

form
 {
  margin-top: 35px;
 }

form.inline
 {
  display: inline;
 }

label + input[type=text], label + input[type=password], label + input[type=date], label + select  /* zalomit text v label jen pro tyto typy inputů  */
 {
  display: block;
  /* margin-bottom: 10px; */
 }

input[type=submit]
 {
  padding: 12px 20px;
  margin: 8px 0;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  background-image: radial-gradient(#353535, #000);
  text-shadow: 0px 0px 5px #0f286d;
  color: #fff;
  font-size: 1.05em;
  letter-spacing: 1px;
 }

input:focus, select:focus, textarea:focus
 {
  outline: none;
  border: 1px solid #9f9f9f;
  box-shadow: 0px 0px 5px rgba(204,204,204,.90);
 }

input[type=text], input[type=password], input[type=url], input[type=date], input[type=time],
input[type=datetime-local], input[list],
select, textarea
 {
  width: 400px;
  max-width: 100%;
  padding: 12px 15px;
  margin: 8px 0;
  color: #000;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: 0px 0px 5px rgba(204,204,204,.50);
  font-size: 1em;
 }

.chyba_text
 {
  color: #b93b3b;
  margin-top: 35px;
 }

a.navrat
 {
  display: inline-block;
  margin-bottom: 50px;
  text-decoration: none;
  color: #fff;
  background-color: #353535;
  font-size: 1.2em;
  padding: 5px 20px 5px 15px;
 }

.flexbulka
 {
  display: flex;
  gap: 10px;
 }

.uprava-casu input[type="time"]
 {
  width: 120px;
  margin-right: 4px;
 }

.uprava-casu-tlacitko
 {
  padding: 2px 6px;
  font-size: 0.9em;
 }

.pismo-zmensujici-se
 {
  font-size: 1em;
 }

@media (max-width: 1475px)
 {

  #obsah
   {
    gap: 40px;
   }

  .blok-odkazu
   {
    margin-bottom: 40px;  /* jako gap */
   }

  .blok
   {
    margin-bottom: 0px;
   }

  .mezi_bloky_v_jednom_sloupci
   {
    margin-bottom: 50px;
   }

  #obsah .sloupec
   {
    width: calc(50% - 20px);
    min-width: unset;
    max-width: unset;
   }

 }


@media (max-width: 930px)
 {

  html, body
   {
    margin-left: 15px;
    margin-right: 15px;
   }

  #zahlavi
   {
    font-size: 13pt;
   }

  #obsah
   {
    gap: 30px;
   }

  .blok-odkazu
   {
    margin-bottom: 30px;  /* jako gap */
   }

  .blok
   {
    margin-bottom: 10px;
   }

  .mezi_bloky_v_jednom_sloupci
   {
    margin-bottom: 40px;
   }

  #obsah .sloupec
   {
    width: 100%;
    min-width: unset;
    max-width: unset;
   }

  .pismo-zmensujici-se
   {
    font-size: .9em;
   }

 }

@media (max-width: 640px)
 {

  html, body
   {
    margin-left: 5px;
    margin-right: 5px;
   }

  #zahlavi
   {
    font-size: 12pt;
   }

  .blok
   {
    margin-bottom: 0px;
   }

  .mezi_bloky_v_jednom_sloupci
   {
    margin-bottom: 30px;
   }

  table td
   {
    padding-right: 5px;
   }

  .skryt-pri-nejuzsim
   {
    display: none;
   }

  .pismo-zmensujici-se
   {
    font-size: .8em;
   }

  .blok-odkazu
   {
    margin-bottom: 10px;
    margin-top: 35px;
   }

 }
