/* --- Base --- */
* {
  box-sizing: border-box;
}

body {
  margin: 15px;
  padding: 0;
  background: #F8DD61;
  font-family: Arial, sans-serif;
  color: #663333;
  font-size: 16px;
}

/* Obrázky na stránce (kde používáš class) */
.img-class {
  max-width: 20vw;
  height: auto;
}

/* --- Left menu --- */
.menu {
  width: 15%;
  padding: 5px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;

  position: fixed;
  left: 15px;           /* navazuje na margin body */
  top: 15px;
  bottom: 15px;

  overflow-y: auto;     /* když je menu delší, ať se dá scrollovat */
  font-size: 2vw;       /* fallback pro velmi velké obrazovky */
}

/* --- Responsive menu font sizes --- */
@media (max-width: 1000px) {
  .menu { font-size: 10px; }
}
@media (min-width: 1001px) and (max-width: 1600px) {
  .menu { font-size: 12px; }
}
@media (min-width: 1601px) and (max-width: 2000px) {
  .menu { font-size: 14px; }
}
@media (min-width: 2001px) {
  .menu { font-size: 16px; }
}

/* --- Content area --- */
.content {
  /* místo flex-grow + body:flex používáme stabilní margin-left */
  margin-left: calc(15% + 30px); /* 15% menu + mezera */
  padding: 10px;

  /* když chceš obsah centrovaný, nech; jinak změň na left */
  text-align: center;
}

/* “tlapky” rámeček */
.tlapky {
  border: 10px solid transparent;
  padding: 5px;
  border-image: url(images/paw.jpg) 24 repeat;
  width: 100%;
  max-width: 900px;     /* aby se tabulka na velké obrazovce neroztáhla moc */
  margin: 0 auto;       /* vycentrování */
}

/* Links */
a {
  font-family: Arial, sans-serif;
  color: #663333;
  text-decoration: none;
}

a:hover {
  color: #663333;
  text-decoration: underline;
}

a:visited {
  color: #663333;
}

/* --- Mobile layout: menu nahoře, content pod ním --- */
@media (max-width: 900px) {
  body {
    margin: 10px;
  }

  .menu {
    position: static;
    width: 100%;
    left: auto;
    top: auto;
    bottom: auto;
    height: auto;

    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    padding: 10px;

    overflow: visible;
  }

  .menu > div {
    padding: 4px 6px;
  }

  .content {
    margin-left: 0;
    padding: 10px;
  }

  .img-class {
    max-width: 60vw;
  }
}
