/* ==== Közös reszponzív alap (generálva: build/assets/_base.css) ====
 * Asztali nézetben semmi nem változik: a beszúrt menügomb rejtett,
 * minden más szabály a site töréspontja ALATT lép életbe.
 */
.hm-menu-btn { display: none; }

/* Clearbox lightbox: az eredeti a KÉP szélességéből számolja a bal margót (left:50% + margin-left),
 * de keskeny képnél a hosszú felirat szélesebbre nyújtja az ablakot, ami így jobbra csúszik.
 * Javítás minden nézetben: a tényleges szélesség szerint középre igazítva. */
#CB_Window { left: 0 !important; right: 0 !important; margin-left: auto !important; margin-right: auto !important; width: -moz-fit-content; width: fit-content; }
/* A bélyegkép-sáv (#CB_Thumbs) szélessége a képé, de a bal szélhez igazodik, a kép viszont középen van
 * → keskeny képnél a sáv balra csúszik. Javítás: a sáv is középen, pontosan a kép alatt
 * (a szélességét a JS állítja és abból számolja a görgetést, ahhoz nem nyúlunk). */
#CB_Thumbs { left: 0 !important; right: 0 !important; margin-left: auto !important; margin-right: auto !important; }

@media (max-width: 951px) {
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body { min-width: 0 !important; overflow-x: hidden; }

  /* a Clearbox lightbox (#CB_All) képeit kihagyjuk: méretüket és helyüket a saját JS-e számolja
   * (pl. a bélyegképsor 50px magas képei height:auto mellett egymásra csúsznának).
   * :where() → a specifikusság marad 0,0,1, a sablonok saját képszabályai továbbra is erősebbek. */
  :where(img, video, object, embed):where(:not(#CB_All *)) { max-width: 100%; }
  :where(img):where(:not(#CB_All *)) { height: auto; }
  iframe { max-width: 100%; }
  iframe[width][height], video[width][height] {
    width: 100% !important; height: auto !important; aspect-ratio: var(--hm-ratio, 16 / 9);
  }
  .hm-audio { width: 100% !important; max-width: 460px; }

  /* hosszú szavak, URL-ek ne lógjanak ki */
  .hm-content, .hm-content p, .hm-content td, .hm-content li { overflow-wrap: anywhere; }

  /* menü gomb */
  .hm-menu-btn {
    display: flex; align-items: center; gap: 10px;
    width: 100%; box-sizing: border-box; margin: 0; padding: 12px 16px;
    border: 0; background: transparent; color: inherit;
    font: bold 15px/1.2 Tahoma, Arial, Helvetica, sans-serif; text-align: left; cursor: pointer;
  }
  .hm-burger { display: inline-flex; flex-direction: column; justify-content: space-between; width: 20px; height: 14px; }
  .hm-burger i { display: block; height: 2px; background: currentColor; border-radius: 1px; transition: transform .2s, opacity .2s; }
  .hm-menu-btn.hm-open .hm-burger i:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .hm-menu-btn.hm-open .hm-burger i:nth-child(2) { opacity: 0; }
  .hm-menu-btn.hm-open .hm-burger i:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .hm-menu:not(.hm-open) { display: none !important; }

  /* galériák: a 3 oszlopos táblázat megmarad, a cellák arányosan zsugorodnak */
  table.keptar_table { width: 100% !important; table-layout: fixed; }
  table.keptar_table td { width: auto !important; box-sizing: border-box; }
  table.keptar_table img { max-width: calc(100% - 8px); }
  table.keptar_table td.keptar_td, table.keptar_table td.keptar_td_vege { height: auto !important; padding: 8px 0; }

  /* űrlap mezők ne lógjanak ki */
  input.form-text, textarea, select { max-width: 100%; box-sizing: border-box; }
}

/* ==== Kovács László – tablet és mobil nézet ====
 * Eredeti: fejléckép (950×120) + 3 oszlop (piros menü | szürke tartalom | sötét blokkok), 952px.
 * Tablet: fejléc, lenyíló piros menü, tartalom | sötét oszlop.
 * Mobil:  fejléc (balra igazítva, a név olvasható marad), menü, tartalom, blokkok egymás alatt.
 */
/* a CAPTCHA-kép helyére került ellenőrző kérdés (az asztali nézetben is) */
.hm-kerdes { font-weight: bold; font-size: 13px; margin: 6px 0 2px; color: #363636; }

@media (max-width: 951px) {
  body { background-color: #efefef; }
  table.alap, table.alap > tbody { display: block; width: auto; margin: 0; border: 0; }
  table.alap > tbody > tr { display: block; }
  td.alap_fej { display: block; height: auto; }
  td.alap_fej img { display: block; width: 100%; height: auto; }

  table.alap > tbody > tr:nth-child(2) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 190px;
    grid-template-areas: "gomb gomb" "menu menu" "kozep jobb";
  }
  .hm-menu-btn { grid-area: gomb; background: #7B1E14; color: #fff; border-bottom: 1px solid #9F473B; }
  td.alap_bal { grid-area: menu; display: block; width: auto; background: #7B1E14; padding: 4px 0 12px; }
  td.alap_bal ul.menu_bal { width: auto; margin: 0; }
  ul.menu_bal a, ul.menu_bal li.cim { width: auto; padding: 8px 16px; }
  ul.menu_bal a.almenu_1 { width: auto; padding-left: 32px; }
  ul.menu_bal a.almenu_2 { width: auto; padding-left: 46px; }
  ul.menu_bal a:hover, ul.menu_bal a.active { background-image: none; background-color: #6B3836; }

  td.alap_kozep { grid-area: kozep; display: block; width: auto; background-image: none; }
  td.alap_kozep .tartalom { width: auto; margin: 18px 16px; }
  td.alap_jobb { grid-area: jobb; display: block; width: auto; border-left: 4px solid #fff; }

  td.alap_lab { display: block; height: auto; padding: 10px 16px; }
  td.alap_lab .szerzok { float: none; margin: 6px 0 0; padding-bottom: 6px; }

  /* "Az oldal támogatói": az inline logók (80×80) egyedi margói (10px bal, 8px fent) a keskenyebb
   * oszlopban lépcsőzetes tördelést adnak → egységes, rugalmas sor 10px-es térközzel;
   * tableten 2 logó fér egy sorba (8+80+10+80+8 = 186px), mobilon mind a 3 */
  #block-block-1 .content { margin: 0 8px; }
  #block-block-1 .content p { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 10px; }
  #block-block-1 .content a { margin: 0 !important; line-height: 0; }
  #block-block-1 .content img { margin: 0 !important; }

  /* filmek, irodalom: a 74px-es bal behúzás mobilon sok */
  .tax_adat { padding-left: 0; }
}

@media (max-width: 599px) {
  /* a fejlécképből a bal oldali rész (a név) látszik, nagyobb méretben */
  td.alap_fej img { height: 72px; object-fit: cover; object-position: left center; }
  table.alap > tbody > tr:nth-child(2) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "gomb" "menu" "kozep" "jobb";
  }
  td.alap_jobb { border-left: 0; border-top: 4px solid #fff; }
  #block-block-1 .content { margin: 0 10px; }
  td.alap_kozep .tartalom { margin: 16px 14px; }
}
