/* ==== 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: 989px) {
  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; }
}

/* ==== Gosztola Gábor – tablet és mobil nézet ====
 * Eredeti: Zen-alapú, fix 990px, fejléckép (990×200) + 3 oszlop (menü | tartalom | blokkok),
 * az oszlopok sötét háttere egy 990px-es csík (alap.gif).
 * Tablet: fejléc arányosan, lenyíló menü, tartalom | blokkok.
 * Mobil:  fejléc középre vágva (név + aláírás), menü, tartalom, blokkok egymás alatt.
 */
@media (max-width: 989px) {
  #page-wrapper { width: auto; background-image: none; background-color: #1c1c1c; }
  #page { width: auto; margin: 0; }
  #header #logo { display: block; margin: 0; }
  #header #logo img { display: block; width: 100%; height: auto; }

  #main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    grid-template-areas: "gomb gomb" "menu menu" "tartalom jobb";
  }
  #main::before, #main::after { content: none; display: none; }
  #main > .hm-menu-btn { grid-area: gomb; color: #ccc; background: #1c1c1c; border-bottom: 1px solid #333; }
  #main > #content, #main > .region-sidebar-first, #main > .region-sidebar-second {
    float: none; width: auto !important; margin: 0 !important;
  }
  #main > #content { grid-area: tartalom; min-width: 0; }
  #main > .region-sidebar-first { grid-area: menu; background: #1c1c1c; }
  #main > .region-sidebar-first .section { margin: 0; padding: 4px 16px 14px; }
  #main > .region-sidebar-second { grid-area: jobb; background: #1c1c1c; }
  #main > .region-sidebar-second .section { margin: 0; padding: 10px; }
  #content .section { padding: 18px 20px; }

  #footer .nka { float: none; display: inline-block; margin: 10px 0 0; }
}

@media (max-width: 599px) {
  #header #logo img { height: 120px; object-fit: cover; object-position: 42% center; }
  #main {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "gomb" "menu" "tartalom" "jobb";
  }
  #content .section { padding: 16px 14px; }
  #main > .region-sidebar-second .section { padding: 14px; }
}
