/* ── U-925..U-936 (2026-09-14): az éjszakai ötletkör új felületelemei ──────
   Minden szabály a saját funkciójához tartozik, és a hozzá tartozó JS-fájl
   eltávolításával magától hatástalanná válik. */

/* U-926 — javasolt cselekvés-chipek a beviteli mező alatt */
.mx-suggest-row {
  display: flex; flex-wrap: wrap; align-items: center; gap: .4rem;
  margin: .35rem 0 .1rem; padding: 0 .1rem;
}
/* U-938 (2026-09-14, hibajavítás): l. a .mx-view-panel[hidden] szabály
   fenti magyarázatát -- ugyanaz a buktató itt is: a JS `.hidden = true`-t
   állít, de az author `display:flex` felülírta a böngésző alap-
   [hidden]{display:none} szabályát. */
.mx-suggest-row[hidden] { display: none; }
.mx-suggest-label { font-size: .78rem; color: var(--dim); flex: 0 0 auto; }
.mx-suggest-chip {
  font: inherit; font-size: .82rem; line-height: 1.1;
  padding: .3rem .7rem; border-radius: 999px; cursor: pointer;
  border: 1px solid var(--border); background: var(--panel-raised); color: var(--text);
  transition: border-color .15s, background .15s;
}
.mx-suggest-chip:hover { border-color: var(--accent); background: var(--panel); }
.mx-suggest-chip:focus-visible { outline: 2px solid var(--accent-bright); outline-offset: 1px; }

/* U-930 — "Írd meg másképp" gomb az utolsó narráció alatt */
.mx-regen-btn {
  display: block; margin: .5rem 0 0 auto; font-size: .78rem; opacity: .75;
}
.mx-regen-btn:hover { opacity: 1; }

/* U-931 — melyik motor válaszolt (csak tartalék/mind3 esetén villan fel) */
.mx-engine-badge {
  position: fixed; right: 1rem; bottom: 1rem; z-index: 70; max-width: 22rem;
  background: var(--panel-raised); border: 1px solid var(--border);
  border-radius: 10px; padding: .5rem .8rem; font-size: .82rem;
  box-shadow: 0 6px 20px rgba(0,0,0,.35);
}
.mx-engine-badge.warn { border-color: var(--danger, #c0605a); }

/* U-929 — állandó jelenet-fejléc a napló fölött */
.mx-scene-head {
  display: flex; flex-wrap: wrap; align-items: center; gap: .45rem;
  padding: .35rem .7rem; margin: 0 0 .3rem;
  font-size: .82rem; color: var(--text);
  background: color-mix(in srgb, var(--panel-raised) 75%, transparent);
  border: 1px solid var(--border); border-radius: 8px;
}
/* U-938 (2026-09-14, hibajavítás): ua. a [hidden]-buktató, l. fent. */
.mx-scene-head[hidden] { display: none; }
.mx-scene-head-key { color: var(--accent); font-weight: 600; font-size: .74rem; text-transform: uppercase; letter-spacing: .04em; }
.mx-scene-head-sep { color: var(--dim); }
.mx-scene-head-part { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 28rem; }

/* U-936 — "Nézet" panel (a négy megjelenítési gomb egy helyen) */
.mx-view-panel {
  position: fixed; z-index: 80; min-width: 15rem; max-width: 17rem;
  background: var(--panel-raised); border: 1px solid var(--border);
  border-radius: 10px; padding: .45rem; box-shadow: 0 8px 26px rgba(0,0,0,.4);
  display: flex; flex-direction: column; gap: .2rem;
}
/* U-938 (2026-09-14, hibajavítás): a fenti `display:flex` -- mivel szerzői
   (author) CSS -- FELÜLÍRTA a böngésző [hidden]{display:none} alap-
   szabályát (az mindig gyengébb, a forrás-eredet miatt, nem a
   specificitás miatt) -- emiatt a panel MINDIG látszott, rögtön oldal-
   betöltéskor, a bal-felső sarokban (0,0-nál, mert a place() sosem futott
   le). Ez a szabály (magasabb specificitású: osztály+attribútum) most
   már visszaadja a várt "alapból rejtett" viselkedést. */
.mx-view-panel[hidden] { display: none; }
.mx-view-row { display: flex; align-items: center; gap: .55rem; padding: .15rem .25rem; border-radius: 7px; }
.mx-view-row:hover { background: color-mix(in srgb, var(--accent) 12%, transparent); }
.mx-view-label { font-size: .85rem; cursor: pointer; flex: 1 1 auto; }

/* U-928 — kereszt-katalógus kereső */
.mx-lex-search-wrap { position: relative; padding: .4rem .6rem 0; }
#mxLexSearch {
  width: 100%; font: inherit; font-size: .88rem; padding: .45rem .7rem;
  border-radius: 8px; border: 1px solid var(--border); background: var(--panel); color: var(--text);
}
.mx-lex-results {
  position: absolute; left: .6rem; right: .6rem; top: 100%; z-index: 40;
  max-height: 20rem; overflow-y: auto; background: var(--panel-raised);
  border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 8px 26px rgba(0,0,0,.4);
  padding: .25rem;
}
.mx-lex-hit {
  display: block; width: 100%; text-align: left; font: inherit; font-size: .86rem;
  background: none; border: none; color: var(--text); padding: .32rem .5rem;
  border-radius: 6px; cursor: pointer;
}
.mx-lex-hit:hover { background: color-mix(in srgb, var(--accent) 14%, transparent); }
.mx-lex-tag {
  display: inline-block; min-width: 5.2rem; font-size: .72rem; color: var(--accent);
  text-transform: uppercase; letter-spacing: .03em;
}

/* U-925 — Kezdő mód: a haladó elemek elrejtése (a JS a body-ra teszi az osztályt) */
body.mx-kezdo-mod .mx-gm-only { display: none !important; }

/* U-935 — beugró kalandok (kész nyitójelenetek) */
.mx-starter-ov {
  position: fixed; inset: 0; z-index: 75; background: rgba(0,0,0,.72);
  display: flex; align-items: center; justify-content: center; padding: 1.2rem;
}
/* U-938 (2026-09-14, hibajavítás): ua. a [hidden]-buktató, l. fent -- e
   nélkül a "Bezárás" (ov.hidden=true) NEM tüntette volna el az overlay-t,
   a teljes képernyőt eltakarva hagyta volna, amíg egyszer meg nem nyitották. */
.mx-starter-ov[hidden] { display: none; }
.mx-starter-box {
  background: var(--panel-raised); border: 1px solid var(--border); border-radius: 12px;
  max-width: 46rem; width: 100%; max-height: 88vh; overflow-y: auto; padding: 1rem 1.2rem 1.3rem;
  box-shadow: 0 12px 40px rgba(0,0,0,.5);
}
.mx-starter-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.mx-starter-card {
  border: 1px solid var(--border); border-radius: 10px; padding: .7rem .85rem; margin-top: .7rem;
  background: color-mix(in srgb, var(--panel) 70%, transparent);
}
.mx-starter-title { font-weight: 600; color: var(--accent); }
.mx-starter-place { font-weight: 400; font-size: .82rem; color: var(--dim); }
.mx-starter-text { font-size: .88rem; margin: .35rem 0 .5rem; line-height: 1.45; }
.mx-starter-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; }
.mx-starter-hint {
  font-size: .76rem; color: var(--dim); border: 1px dashed var(--border);
  border-radius: 999px; padding: .15rem .55rem;
}

/* U-949 (2026-09-15): a U-944-es ideiglenes emoji+CSS megoldás (izzó
   szem-glow .mx-view-eye-hez, "Aa"-jelvény .mx-fonticon-hoz) törölve --
   a user legenerálta + bemásolta a valódi festett ikonokat (Menu Icon
   Grid.png), a Nézet-gomb és a betűméret-gomb mostantól sima <img
   class="icon-img"> (l. 63-nezet-panel.js / 47-betumenu.js), amihez nem
   kell egyedi CSS, mint minden más ikon_ui_*-nak sem. */

/* U-945 (2026-09-15, user screenshot: "a nezetet helyezd a kereso melle
   es a babut a sor vegere") -- a #mxLogToolRow (kereső sor) `display:flex`,
   ezért `order`-rel garantálható a sorrend FÜGGETLENÜL attól, melyik script
   melyik sorrendben, mikor illeszti be az elemeket (63-nezet-panel.js a
   #mxViewBtn-t, 42-egyseges-menuk.js a #woundMapBtn-t) -- nincs verseny-
   feltétel: keresés (alap order:0) → Nézet (1) → ... → sérülés-térkép
   ikonja MINDIG legutolsó (99), a sor jobb szélén, ahogy a user a nyíllal
   jelezte. */
#mxLogToolRow #mxViewBtn { order: 1; }
/* a jobb-szélre-tolás (margin-left:auto) NEM ide kerül -- a woundMapBtn-en
   inline `margin:0!important` fut (42-egyseges-menuk.js), amit egy külső
   (akár !important-es) CSS-szabály SOHA nem tud felülírni; a margó-tolást
   ezért közvetlenül OTT, inline-nal végezzük, csak az `order` marad itt. */
#mxLogToolRow #woundMapBtn { order: 99; }

/* U-947 (2026-09-15, user: "a mobilon is egybehozod ezt a 4 dolgot...
   a szemes ikon moge") -- mobilon a #mxViewBtn a #mobileQuickBar-ba kerül
   (63-nezet-panel.js), a ☰ mellé -- ott a korábbi proxy-gombokhoz hasonló,
   kompakt, csak-ikon megjelenést kap (a "Nézet" felirat elrejtve, nincs
   hozzá hely egy 2.2rem-es sávban). */
body.mx-mobile-mode #mobileQuickBar #mxViewBtn {
  width: 2.2rem; height: 2.2rem; padding: 0;
  display: inline-flex; align-items: center; justify-content: center;
}
body.mx-mobile-mode #mobileQuickBar #mxViewBtn .mx-view-trigger-text { display: none; }

/* U-951 (2026-09-15, user screenshot: "meg mindig nem latom egysegesitve
   ez az 5 ikon legyen azonos meret") -- az 5 ikon (a Nézet-gomb sajat
   szeme + a panel 4 sora: Téma/Betűméret/Fókusz/Időjárás) HÁROM különböző
   forrásból jött, mindegyik MÁS természetes mérettel: a festett PNG-k
   (`img.icon-img`) az alap `2.53em`-es szabályt öröklik, de attól
   függően, hogy VAN-e köztük egy `<span class="icon">` wrapper (a
   Fókusz-gombnál van, a Nézeten/Betűméretnél nincs), a végeredmény MÁR
   EGYMÁS KÖZT SEM egyezett (34px vs 38px, mérve) -- a nyers emoji-k
   (Téma ☀️/🌙, Időjárás 🌦) meg csak a normál szövegméretben jelentek
   meg (15-19px), TÖREDÉKE a festett ikonoknak. Egy közös, explicit,
   `em`-mentes méret mindkét fajtát (kép ÉS emoji) egyformára hozza,
   FÜGGETLENÜL attól, van-e köztes wrapper span vagy sem. */
#mxViewBtn .icon-img,
.mx-view-row .icon-img {
  width: 1.6rem; height: 1.6rem;
}
.mx-view-row .icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 1.6rem; height: 1.6rem; font-size: 1.3rem; line-height: 1;
}
