/* GENERÁLT FÁJL, kézzel ne szerkessze. Forrása: a DESIGN.md frontmattere
   (_bmad-output/planning-artifacts/ux-designs/ux-jegyzotars-2026-09-19/DESIGN.md);
   újragenerálás: uv run --frozen python tools/tokenek.py */

:root {
  color-scheme: light dark;
  --color-bg: #FBFAF7;
  --color-surface: #FFFFFF;
  --color-ink: #1B2430;
  --color-muted: #4A5565;
  --color-line: #D9DEE5;
  --color-control-border: #6B7686;
  --color-focus: #1F3A5F;
  --color-primary: #1F3A5F;
  --color-primary-foreground: #FFFFFF;
  --color-primary-soft: #E8EEF6;
  --color-flag: #6B5000;
  --color-flag-soft: #FFF1A8;
  --color-danger: #8C2F26;
  --color-danger-soft: #FBEAE8;
  --color-ok: #1D6B3A;
  --color-ok-soft: #E6F2EA;
  --font-display: 700 30px/1.2 Georgia, 'Times New Roman', 'Noto Serif', serif;
  --font-display-size: 30px;
  --font-heading: 700 21px/1.3 Georgia, 'Times New Roman', 'Noto Serif', serif;
  --font-heading-size: 21px;
  --font-body: 400 17px/1.6 system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans', sans-serif;
  --font-body-size: 17px;
  --font-label: 600 15px/1.4 system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans', sans-serif;
  --font-label-size: 15px;
  --font-subheading: 600 17px/1.4 system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans', sans-serif;
  --font-subheading-size: 17px;
  --font-small: 400 15px/1.5 system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans', sans-serif;
  --font-small-size: 15px;
  --font-mono: 400 15px/1.5 ui-monospace, 'Cascadia Mono', 'Segoe UI Mono', Menlo, Consolas, monospace;
  --font-mono-size: 15px;
  --rounded-sm: 3px;
  --rounded-md: 5px;
  --rounded-lg: 8px;
  --rounded-full: 9999px;
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 16px;
  --spacing-6: 24px;
  --spacing-8: 32px;
  --spacing-gutter: 16px;
  --spacing-section: 32px;
  --spacing-measure: 68ch;
  --spacing-touch-target: 44px;
  --elsodleges-gomb-background: var(--color-primary);
  --elsodleges-gomb-color: var(--color-primary-foreground);
  --elsodleges-gomb-min-height: var(--spacing-touch-target);
  --elsodleges-gomb-padding-x: 18px;
  --elsodleges-gomb-rounded: var(--rounded-md);
  --elsodleges-gomb-typography: var(--font-label);
  --masodlagos-gomb-background: transparent;
  --masodlagos-gomb-color: var(--color-ink);
  --masodlagos-gomb-border: 1px solid var(--color-control-border);
  --masodlagos-gomb-min-height: var(--spacing-touch-target);
  --masodlagos-gomb-rounded: var(--rounded-md);
  --beviteli-mezo-background: var(--color-surface);
  --beviteli-mezo-border: 1px solid var(--color-control-border);
  --beviteli-mezo-min-height: var(--spacing-touch-target);
  --beviteli-mezo-rounded: var(--rounded-md);
  --allapotcimke-rounded: var(--rounded-full);
  --allapotcimke-typography: var(--font-label);
  --allapotcimke-padding-x: var(--spacing-3);
  --allapotcimke-border: 1px solid;
  --tiltott-background: var(--color-line);
  --tiltott-color: var(--color-muted);
  --tiltott-border: 1px solid var(--color-control-border);
  --keresesi-kiemeles-font-weight: 700;
  --keresesi-kiemeles-border-bottom: 2px solid var(--color-primary);
  --keresesi-kiemeles-background: var(--color-primary-soft);
  --jeloles-background: var(--color-flag-soft);
  --jeloles-border-left: 3px solid var(--color-flag);
  --jeloles-color: var(--color-ink);
  --kartya-background: var(--color-surface);
  --kartya-border: 1px solid var(--color-line);
  --kartya-padding: var(--spacing-6);
  --kartya-rounded: var(--rounded-lg);
  --listasor-min-height: 52px;
  --listasor-border-bottom: 1px solid var(--color-line);
  --fokuszkeret-outline: 3px solid var(--color-focus);
  --fokuszkeret-outline-offset: 2px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-bg: #12161C;
    --color-surface: #1A2029;
    --color-ink: #E7EBF0;
    --color-muted: #AAB4C0;
    --color-line: #2C3440;
    --color-control-border: #7C8797;
    --color-focus: #8FB3E0;
    --color-primary: #8FB3E0;
    --color-primary-foreground: #0A1A2A;
    --color-primary-soft: #1F2A38;
    --color-flag: #E8C25A;
    --color-flag-soft: #332B12;
    --color-danger: #F0A8A0;
    --color-danger-soft: #45221E;
    --color-ok: #7FD3A0;
    --color-ok-soft: #173624;
  }
}


*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--color-bg); color: var(--color-ink); font: var(--font-body); overflow-wrap: break-word; }
[hidden] { display: none !important; }

/* Billentyűs fókusz: DESIGN.md → components.fokuszkeret, mindenhol ugyanaz. */
:focus-visible { outline: var(--fokuszkeret-outline); outline-offset: var(--fokuszkeret-outline-offset); }

.oldal { max-width: 1000px; margin: 0 auto; padding: 0 var(--spacing-gutter) var(--spacing-section); }
h1, h2, h3, p, ul { margin: 0; }
h1 { font: var(--font-display); margin: var(--spacing-6) 0 var(--spacing-4); }
h2 { font: var(--font-heading); margin: var(--spacing-section) 0 var(--spacing-3); }
p { max-width: var(--spacing-measure); }
p + p, p + form, form + p, form + form { margin-top: var(--spacing-4); }
a { color: var(--color-primary); }
.small { font: var(--font-small); }
.muted { color: var(--color-muted); }
.mono { font: var(--font-mono); overflow-wrap: anywhere; }

.csak-felolvasva {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.ugras:not(:focus) {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.ugras { display: inline-flex; align-items: center; min-height: var(--spacing-touch-target); }

/* Felső sáv — nem rögzített (DESIGN.md: semmi fixed/sticky). */
.felso-sav { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--spacing-1) var(--spacing-6); padding: var(--spacing-2) 0; border-bottom: 1px solid var(--color-line); }
.marka { font: var(--font-heading); }
.felso-sav nav { justify-self: center; }
.felso-sav ul { list-style: none; display: flex; flex-wrap: wrap; gap: var(--spacing-1); padding: 0; }
.felso-sav nav a { display: inline-flex; align-items: center; justify-content: center; min-height: var(--spacing-touch-target); min-width: var(--spacing-touch-target); padding: 0 var(--spacing-2); font: var(--font-small); color: var(--color-ink); text-decoration: none; border-bottom: 2px solid transparent; }
.felso-sav nav a[aria-current="page"] { font-weight: 700; border-bottom-color: var(--color-primary); }
.felhasznalo { display: flex; flex-wrap: wrap; align-items: center; gap: 0 var(--spacing-3); font: var(--font-small); }
.felhasznalo form { margin: 0; }
/* A Kilépés hivatkozásként néz ki (DESIGN.md, Felső sáv); POST-űrlap, hogy egy levélszűrő
   előnézete vagy egy előtöltés ne léptessen ki. */
.kilepes { display: inline-flex; align-items: center; min-height: var(--spacing-touch-target); min-width: var(--spacing-touch-target); margin: 0; padding: 0; background: none; border: 0; color: var(--color-primary); text-decoration: underline; font: var(--font-small); cursor: pointer; }

/* Gombok — DESIGN.md → components.elsodleges-gomb, masodlagos-gomb, tiltott */
.gomb { display: inline-flex; align-items: center; justify-content: center; min-height: var(--spacing-touch-target); min-width: var(--spacing-touch-target); padding: var(--spacing-2) var(--spacing-4); border-radius: var(--rounded-md); font: var(--font-label); text-align: left; cursor: pointer; margin: 0; }
.gomb-elsodleges { background: var(--elsodleges-gomb-background); color: var(--elsodleges-gomb-color); min-height: var(--elsodleges-gomb-min-height); border: 1px solid var(--color-primary); border-radius: var(--elsodleges-gomb-rounded); padding-left: var(--elsodleges-gomb-padding-x); padding-right: var(--elsodleges-gomb-padding-x); font: var(--elsodleges-gomb-typography); }
.gomb-masodlagos { background: var(--masodlagos-gomb-background); color: var(--masodlagos-gomb-color); border: var(--masodlagos-gomb-border); min-height: var(--masodlagos-gomb-min-height); border-radius: var(--masodlagos-gomb-rounded); }
/* Tiltott állapot, átlátszóság nélkül; a tabulátorsorrendben marad (aria-disabled). */
.gomb[aria-disabled="true"], .mezo[aria-disabled="true"] { background: var(--tiltott-background); color: var(--tiltott-color); border: var(--tiltott-border); cursor: not-allowed; }

/* Beviteli mező — DESIGN.md → components.beviteli-mezo; 17 px, hogy telefonon a
   fókusz ne nagyítson rá a lapra. */
.mezo-csoport { margin-top: var(--spacing-4); }
.mezo-csoport label { display: block; font: var(--font-label); margin-bottom: var(--spacing-1); }
.mezo { display: block; width: 100%; max-width: 34rem; min-height: var(--beviteli-mezo-min-height); padding: var(--spacing-2) var(--spacing-3); background: var(--beviteli-mezo-background); color: var(--color-ink); border: var(--beviteli-mezo-border); border-radius: var(--beviteli-mezo-rounded); font: var(--font-body); margin: 0; }
.mezo-kod { max-width: 14rem; font: var(--font-body); letter-spacing: 0.15em; }
.mezo[aria-invalid="true"] { border: 2px solid var(--color-danger); }
.mezo-sugo { font: var(--font-small); color: var(--color-muted); margin-top: var(--spacing-1); }
.mezo-hiba { font: var(--font-small); color: var(--color-danger); margin-top: var(--spacing-1); }
.urlap-gomb { margin-top: var(--spacing-4); }

/* Kártya — DESIGN.md → components.kartya */
.kartya { background: var(--kartya-background); border: var(--kartya-border); border-radius: var(--kartya-rounded); padding: var(--kartya-padding); }
.kartya h2 { margin-top: 0; }

/* A munkamenet-figyelmeztetés: nem rögzített; megjelenéskor a fókusz a gombjára kerül,
   így a böngésző magától odagördít. */
.figyelmeztetes { margin-top: var(--spacing-4); border: 2px solid var(--color-control-border); }

.muszaki-kod { margin-top: var(--spacing-section); font: var(--font-small); color: var(--color-muted); }

/* Lábléc — DESIGN.md → Components: Lábléc; minden lapon ugyanott, nem nyomtatódik. */
.lablec { margin-top: 48px; padding-top: var(--spacing-4); border-top: 1px solid var(--color-line); font: var(--font-small); display: flex; flex-wrap: wrap; gap: 0 var(--spacing-6); align-items: center; }
.lablec p { margin: 0; }
.lablec a { display: inline-flex; align-items: center; min-height: var(--spacing-touch-target); min-width: var(--spacing-touch-target); }

/* Hivatkozás gombként (navigál, nem műveletet indít): aláhúzás nélkül. */
a.gomb { text-decoration: none; }

/* Ülések (1.6) — a lap címsora a lapozás célja (#lap-cim, tabindex="-1"). */
.betoltes { margin-top: var(--spacing-4); }
/* A „Betöltés…” szkript és animáció nélkül tűnik el: amint a lista megérkezett. */
main:has(.ulesek-tartalom) .betoltes { display: none; }
.hol-tartott { margin-bottom: var(--spacing-4); }
.lap-gomb { margin: var(--spacing-4) 0 var(--spacing-6); }

/* Lista — egy jelölés mindkét nézetre: <ol> soronként címsorral és <dl> mezőkkel.
   Alap: keskeny nézet, kártyák látható címkékkel (DESIGN.md → components.kartya). */
.lista { list-style: none; margin: 0; padding: 0; }
.oszlopfej { display: none; }
.sor { background: var(--kartya-background); border: var(--kartya-border); border-radius: var(--kartya-rounded); padding: var(--kartya-padding); margin: 0 0 var(--spacing-3); }
.sor-cim { font: var(--font-subheading); margin: 0 0 var(--spacing-2); }
.mezok { margin: 0; }
.mezok > div { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); column-gap: var(--spacing-2); margin-bottom: var(--spacing-1); }
.mezok dt { font: var(--font-label); color: var(--color-muted); padding-top: 2px; }
.mezok dt::after { content: ":"; }
.mezok dd { margin: 0; }

/* Állapotcímke — DESIGN.md → components.allapotcimke; a felirat hordozza a jelentést. */
.cimke { display: inline-block; padding: 0 var(--allapotcimke-padding-x); border: var(--allapotcimke-border); border-radius: var(--allapotcimke-rounded); font: var(--allapotcimke-typography); white-space: nowrap; }
.cimke-folyamat { background: var(--color-primary-soft); color: var(--color-primary); border-color: var(--color-primary); }
.cimke-kesz { background: var(--color-ok-soft); color: var(--color-ok); border-color: var(--color-ok); }
.cimke-beavatkozas { background: var(--color-danger-soft); color: var(--color-danger); border-color: var(--color-danger); }

/* Lapozó — DESIGN.md: „Előző” és „Következő” Másodlagos gomb, köztük az oldalszám. */
.lapozo { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-2) var(--spacing-4); margin-top: var(--spacing-6); }
.lapozo p { margin: 0; font: var(--font-small); }

/* Az ülés-sor címsora hivatkozás az Ülés részleteire (1.7); 44 px-es célfelület. */
.sor-cim a { display: inline-flex; align-items: center; min-height: var(--spacing-touch-target); }

/* Új ülés és Ülés részletei (1.7) — a mockup (key-uj-ules.html, key-ules-reszletei.html)
   jelölése, a tokenekből. */
.vissza { display: inline-flex; align-items: center; min-height: var(--spacing-touch-target); min-width: var(--spacing-touch-target); font: var(--font-small); margin-top: var(--spacing-4); }
.vissza + h1 { margin-top: var(--spacing-2); }
.szakasz { margin-top: var(--spacing-section); }
.szakasz > h2 { margin-top: 0; }
h3 { font: var(--font-subheading); margin: 0; }
ol { margin: 0; }
.tiltas-oka { font: var(--font-small); color: var(--color-ink); }
.nyilatkozat { background: var(--color-primary-soft); border: var(--kartya-border); border-radius: var(--kartya-rounded); padding: var(--kartya-padding); }
.nyilatkozat .small { margin-top: var(--spacing-2); }
.nyilatkozat .tiltas-oka { margin-top: var(--spacing-3); font-weight: 600; }
.jelolo { display: flex; align-items: center; gap: var(--spacing-3); min-height: var(--spacing-touch-target); font: var(--font-body); font-weight: 600; cursor: pointer; max-width: var(--spacing-measure); }
.jelolo input { -webkit-appearance: none; appearance: none; flex: none; display: inline-grid; place-content: center; width: 28px; height: 28px; margin: 0; background: var(--color-surface); border: 2px solid var(--color-control-border); border-radius: var(--rounded-sm); cursor: pointer; }
.jelolo input:checked { background: var(--color-primary); border-color: var(--color-primary); }
.jelolo input:checked::before { content: "\2713"; color: var(--color-primary-foreground); font-weight: 700; font-size: 20px; line-height: 1; }
.jelolo input[aria-disabled="true"] { background: var(--tiltott-background); border-color: var(--color-control-border); cursor: not-allowed; }
.jelolo input[aria-disabled="true"]::before { color: var(--tiltott-color); }

/* Feltöltő mező — DESIGN.md: szaggatott control-border keret; fölé húzott fájlnál primary-soft. */
.feltolto { border: 2px dashed var(--color-control-border); border-radius: var(--rounded-lg); padding: var(--spacing-6); }
.feltolto.fole { background: var(--color-primary-soft); }
.feltolto-valaszto { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-2) var(--spacing-4); }
.reszek-cim { margin-top: var(--spacing-6); }
.reszek { list-style: none; padding: 0; margin-top: var(--spacing-2); border-top: 1px solid var(--color-line); }
.resz { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr) auto; gap: var(--spacing-1) var(--spacing-4); align-items: center; min-height: var(--listasor-min-height); padding: var(--spacing-3) 0; border-bottom: var(--listasor-border-bottom); }
.resz p + p { margin-top: 0; }
.resz-gombok { display: flex; flex-wrap: wrap; gap: var(--spacing-2); }
.resz .tiltas-oka { grid-column: 2 / -1; color: var(--color-muted); }
.nagy-fajl { font: var(--font-small); font-weight: 600; margin-top: var(--spacing-1); }
.osszesen { margin-top: var(--spacing-3); font: var(--font-label); }

/* Dátummező — a címke alatt látható formátumminta. */
.formatum { font: var(--font-small); color: var(--color-muted); margin: 0 0 var(--spacing-1); }
.mezo-datum { width: auto; min-width: 14rem; }

/* Indítás; az élő régiók üresen is a DOM-ban állnak. */
.inditas { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-2) var(--spacing-4); }
#fut-ok { margin-top: var(--spacing-3); }
.riasztas:not(:empty) { margin-top: var(--spacing-4); font-weight: 600; }
.haladas:not(:empty) { margin-top: var(--spacing-3); }

/* Az Ülés részletei fejléce. */
#ules-helye:not(:empty) { margin-top: var(--spacing-section); border-top: 1px solid var(--color-line); }
.ules-fejlec { margin-top: var(--spacing-4); }
.ules-fejlec h1 { margin: var(--spacing-1) 0 var(--spacing-3); }
.ules-fejlec .testulet { font: var(--font-label); color: var(--color-muted); }
.fejlec-adatok { display: flex; flex-wrap: wrap; gap: var(--spacing-2) var(--spacing-section); margin: 0; }
.fejlec-adatok div { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-2); }
.fejlec-adatok dt { font: var(--font-label); }
.fejlec-adatok dd { margin: 0; }
.felvetel-reszek { padding-left: 0; list-style: none; }
.felvetel-reszek li { min-height: var(--spacing-touch-target); display: flex; flex-wrap: wrap; align-items: center; column-gap: 0.3em; border-bottom: var(--listasor-border-bottom); }

/* Széles nézet (720 px-től): a lista rácsba rendezve, látható oszlopfejjel
   (listasor token); a dt ekkor csak felolvasva szól. */
@media (min-width: 720px) {
  .oszlopfej, .ules-sor { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr); column-gap: var(--spacing-4); align-items: center; }
  .oszlopfej { font: var(--font-label); color: var(--color-muted); padding: var(--spacing-2) var(--spacing-3); border-bottom: var(--listasor-border-bottom); }
  .ules-sor { background: transparent; border: 0; border-bottom: var(--listasor-border-bottom); border-radius: 0; min-height: var(--listasor-min-height); padding: var(--spacing-1) var(--spacing-3); margin: 0; }
  .ules-sor .sor-cim { margin: 0; }
  .ules-sor .mezok { grid-column: 2 / 4; display: grid; grid-template-columns: subgrid; align-items: center; }
  .ules-sor .mezok > div { display: block; margin: 0; }
  .ules-sor .mezok dt { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}

/* Keskeny nézet (720 px alatt): a név és a Kilépés a felületnevek alá kerül. */
@media (max-width: 719.98px) {
  .felso-sav { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .felso-sav nav { justify-self: start; }
  /* A részek kártyán, egymás alatt (mockup, keskeny nézet). */
  .feltolto { padding: var(--spacing-4); }
  .reszek { border-top: 0; }
  .resz { display: block; min-height: 0; background: var(--kartya-background); border: var(--kartya-border); border-radius: var(--kartya-rounded); padding: var(--spacing-4); margin-bottom: var(--spacing-3); }
  .resz-gombok { margin-top: var(--spacing-3); }
  .resz .tiltas-oka { margin-top: var(--spacing-2); }
  .mezo-datum { width: 100%; min-width: 0; }
}

@media print {
  :root { --color-bg: #FFFFFF; --color-surface: #FFFFFF; --color-ink: #000000; --color-muted: #000000; --color-line: #000000; --color-primary: #000000; color-scheme: light; }
  html, body { background: #FFFFFF; color: #000000; }
  .felso-sav, .lablec, .gomb, button, .figyelmeztetes, .ugras { display: none !important; }
  .oldal { max-width: none; padding: 0; }
  /* Állapotcímke: háttér nélkül, 1 px-es fekete kerettel (DESIGN.md nyomtatási sora). */
  .cimke { background: none !important; color: #000000 !important; border: 1px solid #000000 !important; }
  .betoltes { display: none !important; }
  .vissza { display: none !important; }
  .feltolto { border: 1px dashed #000000; }
  .nyilatkozat { background: none; border: 1px solid #000000; }
  /* A gombok nem nyomtatódnak, ezért a hozzájuk tartozó tiltási ok sem áll meg magában. */
  .resz .tiltas-oka, .inditas .tiltas-oka { display: none !important; }
}
