/* Időpontfoglalás és foglalás-kezelés (kártya 473149e4, 2. kör). Csak a meglévő /styles.css tokenjeit használja; a /styles.css-t nem módosítja. */
.fg{max-width:760px;display:flex;flex-direction:column;gap:22px}
.fg-uzenet{padding:16px 18px;border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--paper-2);color:var(--text)}
.fg-hiba{padding:14px 16px;border:1px solid #B3261E;border-left:4px solid #B3261E;background:#FFF4F3;color:#6B1410;font-size:15.5px}
.fg-form{display:flex;flex-direction:column;gap:22px}
.fg-form fieldset{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:10px}
.fg-form legend{padding:0;margin-bottom:6px;font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.fg-sor{display:flex;flex-direction:column;gap:6px}
.fg-sor label,.fg-form .fg-cimke{font-weight:600;font-size:15.5px}
.fg-form input[type=text],.fg-form input[type=tel],.fg-form input[type=email],.fg-form select,.fg-form textarea{
  width:100%;font:inherit;font-size:16px;color:var(--text);background:var(--paper);border:1px solid #8C8A82;border-radius:3px;padding:12px 12px;min-height:46px}
.fg-form textarea{min-height:96px;resize:vertical}
.fg-form input:focus-visible,.fg-form select:focus-visible,.fg-form textarea:focus-visible,.fg-chip:focus-visible,.fg-check input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.fg-info{font-size:14.5px;color:var(--muted)}
.fg-chips{display:flex;flex-wrap:wrap;gap:8px}
.fg-chip{font:inherit;font-size:15.5px;min-height:46px;padding:8px 14px;background:var(--paper);color:var(--text);border:1px solid #8C8A82;border-radius:3px;cursor:pointer}
.fg-chip:hover{border-color:var(--ink)}
.fg-chip[aria-pressed=true]{background:var(--accent);border-color:var(--ink);color:var(--accent-ink);font-weight:700}
.fg-chip--ido{min-width:74px;text-align:center}
.fg-lapozas{display:flex;gap:10px;flex-wrap:wrap}
.fg-check{display:flex;gap:12px;align-items:flex-start;padding:10px 0}
.fg-check input{width:22px;height:22px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--ink)}
.fg-check span{font-size:15.5px}
.fg-valasztott{font-weight:700}
.fg-kuld{align-self:flex-start;min-height:50px}
.fg-kuld[disabled]{opacity:.45;cursor:not-allowed}
.fg-siker{padding:22px;border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--paper-2);display:flex;flex-direction:column;gap:14px}
.fg-siker h2{font-size:clamp(24px,4vw,32px)}
.fg-szabaly-szoveg{font-size:15.5px;color:var(--text);margin:0}
.fg-adatok{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0}
.fg-adatok dt{font-weight:600;color:var(--muted)}
.fg-adatok dd{margin:0;overflow-wrap:anywhere}
.fg-muvelet{display:flex;gap:10px;flex-wrap:wrap}
.fg-panel{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);background:var(--paper)}
.fg-panel h3{font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.02em;margin:0}
.fg-panel textarea{width:100%;font:inherit;font-size:16px;color:var(--text);background:var(--paper);border:1px solid #8C8A82;border-radius:3px;padding:12px;min-height:84px;resize:vertical}
.fg-panel textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
/* 815533fd: havi naptár-rács (7 oszlop, hétfővel kezdve); a szabad nap kattintható kocka, a többi tiltott */
.fg-naptar{max-width:430px;border:1px solid var(--line);background:var(--paper);padding:12px;display:flex;flex-direction:column;gap:10px}
.fg-honapsor{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px}
.fg-honap{margin:0;text-align:center;font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;font-weight:700;font-size:21px;text-transform:uppercase;letter-spacing:.02em}
.fg-honap-gomb{width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--paper);color:var(--text);border:1px solid #8C8A82;border-radius:3px;cursor:pointer}
.fg-honap-gomb:hover:not(:disabled){border-color:var(--ink)}
.fg-honap-gomb:disabled{opacity:.3;cursor:not-allowed}
.fg-racs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.fg-het{text-align:center;font-size:13px;font-weight:700;color:var(--muted);padding:2px 0 4px;text-transform:uppercase}
.fg-nap{font:inherit;font-size:16px;font-weight:600;aspect-ratio:1/1;min-height:40px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--paper);color:var(--text);border:1px solid #8C8A82;border-radius:3px;cursor:pointer}
.fg-ures{aspect-ratio:1/1;min-height:40px}
.fg-nap:hover:not(:disabled){border-color:var(--ink)}
.fg-nap:disabled{background:transparent;border-color:transparent;color:var(--muted);opacity:.55;cursor:not-allowed;font-weight:400}
.fg-nap--ma{box-shadow:inset 0 0 0 2px var(--ink)}
.fg-nap[aria-pressed=true]{background:var(--accent);border-color:var(--ink);color:var(--accent-ink);font-weight:700}
.fg-honap-gomb:focus-visible,.fg-nap:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
/* 611889f8: szolgáltatás-változat rádiók (a csoportos választó alatt; csak a meglévő tokenekkel) */
.fg-form .fg-valtozat{margin-top:4px}
.fg-form .fg-valtozat legend{font-family:inherit;font-weight:600;font-size:15.5px;text-transform:none;letter-spacing:0;margin-bottom:4px}
.fg-radiok{display:flex;flex-direction:column;gap:8px}
.fg-radio{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;background:var(--paper);color:var(--text);border:1px solid #8C8A82;border-radius:3px;cursor:pointer}
.fg-radio:hover{border-color:var(--ink)}
.fg-radio input{width:22px;height:22px;margin:0;flex:0 0 auto;accent-color:var(--ink)}
.fg-form .fg-radio input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.fg-radio-szoveg{display:flex;flex-direction:column;gap:2px;min-width:0}
.fg-radio-cimke{font-weight:700;overflow-wrap:anywhere}
.fg-radio-reszlet{font-size:14.5px}
.fg-radio--be{background:var(--accent);border-color:var(--ink);color:var(--accent-ink)}
/* 473149e4: a ragadós fejléc (.hdr, position:sticky) ne takarja a siker-doboz tetejét, amikor a lap odagörget */
.fg-siker{scroll-margin-top:96px}
@media (max-width:560px){
  .fg-chip{flex:1 1 calc(50% - 8px)}
  .fg-chip--ido{flex:1 1 calc(25% - 8px);min-width:64px;padding-inline:6px}
  .fg-kuld{align-self:stretch}
  .fg-adatok{grid-template-columns:1fr;gap:2px}
  .fg-adatok dd{margin-bottom:10px}
  .fg-muvelet .btn{flex:1 1 100%}
  .fg-naptar{padding:8px}
  .fg-racs{gap:3px}
  .fg-siker{padding:14px}
  .fg-panel{padding:10px}
}
