/* Egyszerű, reszponzív alapstílus — framework nélkül (spec 0.3) */
:root { --fo: #33402e; --kiem: #c9974c; --hatter: #f2efe6; --szurke: #d7d7d7; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, sans-serif; background: var(--hatter); color: #222; }
main { max-width: 1200px; margin: 0 auto; padding: 16px; }
.topbar { display: flex; justify-content: space-between; align-items: center;
  background: var(--fo); color: #fff; padding: 10px 16px; flex-wrap: wrap; }
.topbar a { color: #fff; text-decoration: none; margin-left: 14px; }
.brand { font-weight: 700; margin-left: 0; }
h1 { font-size: 1.3rem; } h2 { font-size: 1.05rem; }
.flash { background: #fff3cd; border: 1px solid #e0c869; padding: 8px 12px; margin: 10px 0; border-radius: 6px; }
.warn { color: #a33; font-weight: 700; }
.btn { display: inline-block; background: #fff; border: 1px solid #999; border-radius: 6px;
  padding: 6px 12px; cursor: pointer; text-decoration: none; color: #222; font-size: 0.9rem; }
.btn-primary { background: var(--fo); color: #fff; border-color: var(--fo); }
.btn-kicsi { padding: 2px 8px; font-size: 0.8rem; }
.login-box { max-width: 420px; margin: 60px auto; background: #fff; padding: 24px; border-radius: 10px; text-align: center; }
.modul-racs { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; margin-top: 16px; }
.modul-kartya { background: #fff; border-radius: 10px; padding: 18px; text-decoration: none; color: #222;
  border: 1px solid #ddd; }
.modul-kartya:hover { border-color: var(--kiem); }
.modul-ikon { font-size: 2rem; }
.modul-nev { font-weight: 700; margin-top: 6px; }
.modul-leiras { font-size: 0.85rem; color: #555; }
.urlap { max-width: 480px; display: flex; flex-direction: column; gap: 10px; background: #fff;
  padding: 16px; border-radius: 10px; }
.urlap label { display: flex; flex-direction: column; font-size: 0.9rem; gap: 4px; }
.urlap input, .urlap textarea, select, input { padding: 5px 7px; border: 1px solid #bbb; border-radius: 5px; font: inherit; }
.tabla { border-collapse: collapse; background: #fff; width: 100%; margin: 10px 0; }
.tabla th, .tabla td { border: 1px solid #ccc; padding: 4px 6px; font-size: 0.85rem; text-align: center; }
.tabla th { background: #e8e4d8; }
.szuro { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin: 8px 0; }
.fejlec-adatok { display: flex; gap: 16px; flex-wrap: wrap; align-items: center; background: #fff;
  padding: 10px; border-radius: 8px; margin-bottom: 10px; }
/* Munyi rács */
.munyi-het td.szurke, .munyi-het th.szurke { background: var(--szurke); }
.munyi-het input.ora { width: 52px; text-align: center; }
.munyi-het select { max-width: 110px; }
.munyi-het .sor-cim { text-align: left; min-width: 130px; }
.munyi-het .ossz { font-weight: 700; background: #f6f3ea; }
.mentve { outline: 2px solid #7bb661; }
.hiba { outline: 2px solid #c0392b; }
/* Gépkocsi */
#ut-tabla input { width: 100%; min-width: 70px; }
#ut-tabla input.km { min-width: 60px; text-align: right; }
#ut-tabla .osszeg-cella, #ut-tabla .dij-cella { text-align: right; }
.szeles { width: 100%; max-width: 600px; }
.keskeny { width: 60px; }
.apro { font-size: 0.75rem; text-align: left; }
/* Admin naptár */
.naptar-honap { display: inline-block; vertical-align: top; margin: 6px; background: #fff; padding: 8px; border-radius: 8px; }
.naptar-honap h3 { margin: 2px 0 6px; font-size: 0.9rem; text-align: center; }
.naptar-honap table { border-collapse: collapse; }
.naptar-honap td { width: 26px; height: 24px; text-align: center; font-size: 0.75rem;
  border: 1px solid #ddd; cursor: pointer; }
.naptar-honap td.hetvege { background: var(--szurke); }
.naptar-honap td.unnep { background: #e9b7b7; }
.naptar-honap td.tanitasi_szunet { background: #b7cbe9; }
.naptar-honap td.munkanap-kivetel { background: #c9e9b7; }
@media (max-width: 700px) {
  .munyi-het { display: block; overflow-x: auto; }
  #ut-tabla { display: block; overflow-x: auto; }
}
/* Képfeltöltés modul */
.rejtve { display: none; }
.fajl-lista { list-style: none; padding: 0; }
.fajl-lista li { display: flex; align-items: center; gap: 10px; background: #fff;
  border: 1px solid #ddd; border-radius: 8px; padding: 6px 10px; margin-bottom: 6px; flex-wrap: wrap; }
.fajl-lista img { width: 56px; height: 56px; object-fit: cover; border-radius: 6px; }
.fajl-lista progress { flex: 1; min-width: 120px; }
