/* Asztalfoglalás — a /d/ design tokenjeivel (oldal.css után töltődik). Kézzel írt, az export_uj.py nem törli. */
.fg{max-width:880px}
.fg-form{display:flex;flex-direction:column;gap:clamp(40px,5vw,64px)}
.fg-step{display:flex;flex-direction:column;gap:22px;padding-top:clamp(28px,3vw,40px);border-top:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}
.fg-step:first-child{border-top:0;padding-top:0}
.fg-step-h{display:flex;align-items:center;gap:18px}
.fg-num{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;font-family:var(--font-nav);font-size:13px;letter-spacing:.1em;color:var(--gold);flex:0 0 auto}
.fg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px 24px}
.fg-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.fg-field>span,.fg-zones legend,.fg-sub{font-family:var(--font-nav);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 70%,transparent)}
.fg-field input,.fg-field select,.fg-field textarea{width:100%;padding:14px 16px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);background:#fff;color:var(--ink);font:inherit;font-size:18px;border-radius:0;appearance:none;-webkit-appearance:none}
.fg-field select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2320160F' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:40px}
.fg-field input:focus,.fg-field select:focus,.fg-field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 22%,transparent)}
.fg-field textarea{min-height:110px;resize:vertical}
.fg-field.is-err input,.fg-field.is-err select{border-color:#9b2c1e}
.fg-full{grid-column:1/-1}
.fg-zones{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.fg-chips{display:flex;flex-wrap:wrap;gap:8px}
.fg-chip{position:relative}
.fg-chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.fg-chip span{display:inline-flex;align-items:center;padding:11px 16px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);font-family:var(--font-nav);font-size:12px;letter-spacing:.14em;text-transform:uppercase;transition:all .18s}
.fg-chip input:checked+span{background:var(--gomb);border-color:var(--gomb);color:var(--cream)}
.fg-chip input:focus-visible+span{box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 30%,transparent)}
.fg-note{margin:0;font-size:16px;line-height:1.55;color:color-mix(in srgb,var(--ink) 72%,transparent);max-width:62ch}
.fg-hint{margin:0;font-size:17px;color:color-mix(in srgb,var(--ink) 65%,transparent)}
.fg-err{margin:0;color:#9b2c1e;font-size:16px;font-style:normal}
.fg-slots{display:flex;flex-direction:column;gap:18px}
.fg-slot-group{display:flex;flex-direction:column;gap:10px}
.fg-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.fg-slot{padding:13px 6px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);background:#fff;font-family:var(--font-nav);font-size:14px;letter-spacing:.08em;cursor:pointer;transition:all .18s;color:var(--ink)}
.fg-slot:hover{border-color:var(--gold);color:var(--gold)}
.fg-slot.is-selected{background:var(--gomb);border-color:var(--gomb);color:var(--cream)}
.fg-slot:disabled{opacity:.32;cursor:not-allowed;text-decoration:line-through}
.fg-slot:disabled:hover{border-color:color-mix(in srgb,var(--ink) 35%,transparent);color:var(--ink)}
.fg-sel{font-size:18px}
.fg-sel b{font-weight:400;color:var(--gold)}
.fg-details{border:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}
.fg-details summary{padding:14px 18px;cursor:pointer;font-family:var(--font-nav);font-size:12px;letter-spacing:.2em;text-transform:uppercase;list-style:none;display:flex;justify-content:space-between;align-items:center}
.fg-details summary::-webkit-details-marker{display:none}
.fg-details summary::after{content:"+";font-size:18px}
.fg-details[open] summary::after{content:"–"}
.fg-details>div{padding:4px 18px 18px}
.fg-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 16px}
.fg-check{display:flex;align-items:center;gap:10px;font-size:17px;cursor:pointer}
.fg-check input{width:18px;height:18px;accent-color:var(--gomb);flex:0 0 auto}
.fg-consent{display:flex;flex-direction:column;gap:12px}
.fg-consent .fg-check{align-items:flex-start;font-size:16px;line-height:1.5}
.fg-consent .fg-check input{margin-top:4px}
.fg-consent a{color:var(--gold)}
.fg-submit{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px}
.fg-submit .btn{padding:19px 34px}
.fg-policy{margin:0;font-size:15px;line-height:1.6;color:color-mix(in srgb,var(--ink) 65%,transparent);white-space:pre-line;max-width:70ch}
.fg-alert{padding:16px 20px;border:1px solid #9b2c1e;color:#9b2c1e;font-size:17px}
.fg-card{border:1px solid var(--gold);padding:clamp(22px,3vw,34px);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px 28px;max-width:720px}
.fg-card div{display:flex;flex-direction:column;gap:4px}
.fg-card span{font-family:var(--font-nav);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 65%,transparent)}
.fg-card b{font-weight:400;font-size:22px}
.fg-status{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid var(--gold);font-family:var(--font-nav);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.fg-status.is-ok{background:var(--gomb);border-color:var(--gomb);color:var(--cream)}
.fg-status.is-off{border-color:#9b2c1e;color:#9b2c1e}
.fg-tel{display:flex;flex-direction:column;gap:18px;max-width:60ch}
.fg-tel .tel{font-family:var(--font-head);font-size:clamp(30px,4vw,46px);color:var(--ink);text-decoration:none}
.csapda{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:640px){.fg-slot-grid{grid-template-columns:repeat(4,1fr)}.fg-field input,.fg-field select,.fg-field textarea{font-size:17px}}
/* 1. lépés finomhangolás: azonos magasságú mezők, lazább ritmus, csendesebb segédszöveg, telefon külön sorban */
.fg-step{gap:26px}
.fg-grid--mikor{grid-template-columns:repeat(auto-fit,minmax(220px,300px));gap:18px 28px}
.fg-field input,.fg-field select{min-height:56px}
.fg-field>span,.fg-zones legend{display:flex;align-items:baseline;gap:10px;margin-bottom:2px}
.fg-legend-hint{font-style:normal;font-family:var(--font-body);font-size:14px;letter-spacing:0;text-transform:none;color:color-mix(in srgb,var(--ink) 55%,transparent)}
.fg-zones{gap:12px}
.fg-chips{gap:10px}
.fg-chip span{min-height:48px;padding:0 20px;border-color:color-mix(in srgb,var(--ink) 35%,transparent);font-size:11px;letter-spacing:.2em}
.fg-chip:hover span{border-color:var(--gold);color:var(--gold)}
.fg-chip input:checked+span{color:var(--cream)}
.fg-note--tel{display:flex;flex-direction:column;gap:10px;max-width:56ch;padding:18px 22px;border-left:1px solid var(--gold);background:color-mix(in srgb,var(--gold) 7%,transparent)}
.fg-tel{display:inline-flex;align-items:baseline;gap:12px;color:var(--ink);text-decoration:none;font-size:20px;letter-spacing:.02em}
.fg-tel span{font-family:var(--font-nav);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.fg-tel:hover{color:var(--gold)}
/* Visszaigazoló / kezelő oldal: a státusz nem gomb, hanem pöttyös felirat; egy gomb + szöveges linkek */
.fg-status{padding:0;border:0;gap:12px;color:var(--gold)}
.fg-status::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--gold);flex:0 0 auto}
.fg-status.is-ok{background:none;color:var(--gomb)}.fg-status.is-ok::before{background:var(--gomb)}
.fg-status.is-off{color:#9b2c1e}.fg-status.is-off::before{background:#9b2c1e}
.fg-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-nav);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--ink) 35%,transparent);padding-bottom:4px;transition:color .2s,border-color .2s}
.fg-link:hover{color:var(--gold);border-bottom-color:var(--gold)}
.fg-link i{font-style:normal}
.fg-valtozik{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin:30px 0 0;font-size:18px}
.fg-valtozik span{flex-basis:100%;font-size:15px;color:color-mix(in srgb,var(--ink) 60%,transparent)}
.fg-tovabb{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;margin-top:40px}
.fg-szabalyzat p{font-size:17px;line-height:1.65;max-width:70ch}
.fg-szabalyzat strong{color:var(--ink)}
.fg-consent a{color:var(--gold)}
/* születésnap (hónap + nap) és kiemelt idősáv-gombok */
.fg-szul{display:grid;grid-template-columns:1.4fr 1fr;gap:8px}
.fg-slot--sav{grid-column:span 2;font-size:13px;letter-spacing:.06em}
.fg-slot--sav.is-selected{background:var(--gomb)}
