/* Légvár Birodalom Baja: közös foglaló komponens (a host oldal stílusától független, .lbf alatt él) */
.lbf{
  --lbf-ink:#12263a; --lbf-mut:#5d6f80; --lbf-line:#dbe4ec; --lbf-bg:#f3f7fb; --lbf-card:#fff;
  --lbf-accent:#e8453a; --lbf-accent-d:#c9352b; --lbf-cta:#ffc531; --lbf-cta-ink:#2a1d00;
  --lbf-ok:#1f9d55; --lbf-ok-bg:#e3f6ea; --lbf-brk:#2563eb; --lbf-brk-bg:#e4edff; --lbf-grp-bg:#fdf0dc; --lbf-grp:#b45309;
  --lbf-r:14px;
  font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; color:var(--lbf-ink);
  background:var(--lbf-card); border:1px solid var(--lbf-line); border-radius:20px; box-shadow:0 10px 30px rgba(18,38,58,.08);
  max-width:640px; margin:0 auto; overflow:hidden; text-align:left;
}
.lbf *,.lbf *::before,.lbf *::after{box-sizing:border-box}
.lbf button{font:inherit;color:inherit;cursor:pointer}
.lbf [hidden]{display:none!important}
.lbf h3{margin:0 0 .6rem;font-size:1.25rem;line-height:1.25}
.lbf p{margin:.35rem 0}
.lbf .lbf-mut{color:var(--lbf-mut);font-size:.9rem}

/* lépésjelző */
.lbf-steps{display:flex;list-style:none;margin:0;padding:14px 16px 0;gap:6px}
.lbf-steps li{flex:1;display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--lbf-mut);padding-bottom:10px;border-bottom:3px solid var(--lbf-line)}
.lbf-steps i{font-style:normal;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--lbf-line);font-size:.8rem;font-weight:700;flex:none}
.lbf-steps li.is-on{color:var(--lbf-ink);border-color:var(--lbf-accent);font-weight:600}
.lbf-steps li.is-on i{background:var(--lbf-accent);color:#fff}
.lbf-steps li.is-done{color:var(--lbf-ok);border-color:var(--lbf-ok);cursor:pointer}
.lbf-steps li.is-done i{background:var(--lbf-ok);color:#fff}
@media(max-width:420px){.lbf-steps span{display:none}.lbf-steps li.is-on span{display:inline}}

.lbf-body{padding:18px 16px 8px}
.lbf-panel{display:none}.lbf-panel.is-on{display:block;animation:lbfIn .25s ease}
@keyframes lbfIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.lbf-panel.is-on{animation:none}}

/* naptár */
.lbf-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.lbf-dh{font-size:.72rem;color:var(--lbf-mut);text-align:center;padding:2px 0;text-transform:uppercase;letter-spacing:.04em}
.lbf-mo{grid-column:1/-1;font-weight:700;font-size:.95rem;margin:8px 0 0}
.lbf-day{border:1.5px solid var(--lbf-line);background:var(--lbf-card);border-radius:10px;padding:6px 2px 5px;min-height:54px;text-align:center;line-height:1.1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.lbf-day b{font-size:1rem}
.lbf-day small{font-size:.62rem;color:var(--lbf-mut);letter-spacing:.02em}
.lbf-day.t-break{background:var(--lbf-ok-bg);border-color:#9ad8b3}
.lbf-day.t-weekend{background:var(--lbf-brk-bg);border-color:#b7cdfa}
.lbf-day.t-group{background:var(--lbf-grp-bg);border-color:#efd3a6}
.lbf-day:disabled{opacity:.38;cursor:not-allowed}
.lbf-day.is-on{outline:3px solid var(--lbf-accent);outline-offset:1px;border-color:var(--lbf-accent)}
.lbf-day:not(:disabled):hover{border-color:var(--lbf-accent)}
.lbf-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0 0;font-size:.78rem;color:var(--lbf-mut)}
.lbf-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;background:var(--c);border:1px solid rgba(0,0,0,.15)}

/* időtartam-váltó + idősávok */
.lbf-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0 4px}
.lbf-seg button{border:1.5px solid var(--lbf-line);background:var(--lbf-card);border-radius:12px;padding:9px 6px;text-align:center;line-height:1.2}
.lbf-seg button b{display:block;font-size:.98rem}
.lbf-seg button small{color:var(--lbf-mut);font-size:.75rem}
.lbf-seg button[aria-pressed=true]{border-color:var(--lbf-accent);background:#fff4f2;box-shadow:inset 0 0 0 1px var(--lbf-accent)}
.lbf-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;margin-top:10px}
.lbf-slot{border:1.5px solid var(--lbf-line);background:var(--lbf-card);border-radius:10px;padding:10px 4px;font-weight:600}
.lbf-slot.is-on{background:var(--lbf-accent);border-color:var(--lbf-accent);color:#fff}
.lbf-slot:hover:not(.is-on){border-color:var(--lbf-accent)}
.lbf-note{background:var(--lbf-bg);border-radius:10px;padding:10px 12px;font-size:.9rem;color:var(--lbf-mut);margin:12px 0 0}
.lbf-note a,.lbf-link{color:var(--lbf-accent-d);font-weight:600}
.lbf-link{background:none;border:0;padding:0;text-decoration:underline;font-size:inherit}
.lbf-groupcta{margin:14px 0 0;padding:10px 12px;border:1.5px dashed #e0b97a;background:var(--lbf-grp-bg);border-radius:12px;font-size:.92rem}

/* jegyek */
.lbf-tix{display:grid;gap:8px}
.lbf-t{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1.5px solid var(--lbf-line);border-radius:12px;padding:10px 12px}
.lbf-t b{display:block;font-size:.98rem}
.lbf-t small{color:var(--lbf-mut);font-size:.78rem}
.lbf-tp{font-weight:700;white-space:nowrap}
.lbf-st{display:flex;align-items:center;gap:6px}
.lbf-st button{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--lbf-line);background:var(--lbf-card);font-size:1.2rem;line-height:1}
.lbf-st button:disabled{opacity:.35;cursor:not-allowed}
.lbf-st output{min-width:22px;text-align:center;font-weight:700}
.lbf-fam{background:var(--lbf-ok-bg);border-radius:10px;padding:9px 12px;font-size:.9rem;margin-top:10px}
.lbf-more{margin-top:10px}
@media(max-width:420px){.lbf-t{grid-template-columns:1fr auto}.lbf-tp{grid-column:1;grid-row:2}.lbf-st{grid-column:2;grid-row:1/3}}

/* adatok */
.lbf-lines{border:1.5px solid var(--lbf-line);border-radius:12px;padding:10px 12px;margin-bottom:12px;font-size:.92rem}
.lbf-lines div{display:flex;justify-content:space-between;gap:10px;padding:2px 0}
.lbf-form{display:grid;gap:10px}
.lbf-form label{display:grid;gap:4px;font-size:.88rem;font-weight:600}
.lbf-form input,.lbf-form select,.lbf-form textarea{font:inherit;font-weight:400;border:1.5px solid var(--lbf-line);border-radius:10px;padding:11px 12px;background:#fff;color:var(--lbf-ink);width:100%}
.lbf-form input:focus,.lbf-form select:focus,.lbf-form textarea:focus{outline:3px solid #ffd9d5;border-color:var(--lbf-accent)}
.lbf-form .is-bad{border-color:#d92d20;background:#fff5f4}
.lbf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:480px){.lbf-row{grid-template-columns:1fr}}
.lbf-check{display:flex!important;grid-template-columns:none;align-items:flex-start;gap:10px;font-weight:400!important;font-size:.85rem!important}
.lbf-check input{width:20px;height:20px;margin-top:2px;flex:none}
.lbf-pay{display:grid;gap:8px;margin:14px 0 4px}
.lbf-pm{display:flex;align-items:center;gap:10px;border:1.5px solid var(--lbf-line);border-radius:12px;padding:11px 12px;cursor:pointer;font-weight:600}
.lbf-pm:has(input:checked){border-color:var(--lbf-accent);background:#fff4f2}
.lbf-pm small{display:block;font-weight:400;color:var(--lbf-mut);font-size:.78rem}
.lbf-card{margin-top:10px}
.lbf-hp{position:absolute!important;left:-9999px!important;opacity:0}

/* lábrész */
.lbf-err{margin:0 16px 8px;background:#fff1f0;border:1px solid #f4b4ae;color:#8a1c14;border-radius:10px;padding:10px 12px;font-size:.9rem}
.lbf-demo{margin:0 16px 10px;background:#fff8e1;border:1px solid #f1d98a;color:#6b5200;border-radius:10px;padding:8px 12px;font-size:.82rem}
.lbf-foot{display:flex;align-items:center;gap:12px;padding:12px 16px 16px;border-top:1px solid var(--lbf-line);background:var(--lbf-bg);position:sticky;bottom:0}
.lbf-tot{margin-left:auto;text-align:right;line-height:1.1}
.lbf-tot span{display:block;font-size:.72rem;color:var(--lbf-mut)}
.lbf-tot b{font-size:1.2rem}
.lbf-go{border:0;background:var(--lbf-cta);color:var(--lbf-cta-ink);font-weight:800;border-radius:12px;padding:13px 18px;box-shadow:0 3px 0 rgba(0,0,0,.14)}
.lbf-go:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.lbf-go:not(:disabled):hover{filter:brightness(1.05)}
.lbf-back{border:0;background:none;color:var(--lbf-mut);font-weight:600;padding:8px 4px}
.lbf-done{padding:26px 18px 30px;text-align:center}
.lbf-done h3{font-size:1.5rem}
.lbf-done .lbf-ok{width:56px;height:56px;border-radius:50%;background:var(--lbf-ok);color:#fff;display:grid;place-items:center;font-size:1.8rem;margin:0 auto 10px}
.lbf-grp-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}

/* nagy jegyválasztó (1. nézet) */
.lbf::before{content:'';display:block;height:6px;background:linear-gradient(90deg,var(--lbf-accent),var(--lbf-cta) 55%,#38bdf8)}
.lbf-big-h{font-size:1.55rem;text-align:center;margin:.3rem 0 1rem}
.lbf-bigs{display:grid;gap:12px}
.lbf-bigc{display:grid;grid-template-columns:auto 1fr;grid-template-areas:'i t' 'i p';align-items:center;column-gap:16px;row-gap:6px;text-align:left;width:100%;
  border:2px solid var(--lbf-line);background:var(--lbf-card);border-radius:18px;padding:16px 18px;box-shadow:0 2px 0 rgba(18,38,58,.05);transition:transform .15s,border-color .15s,box-shadow .15s}
.lbf-bigc:hover{border-color:var(--lbf-accent);transform:translateY(-2px);box-shadow:0 8px 18px rgba(232,69,58,.14)}
.lbf-bigc:active{transform:none}
.lbf-bigi{grid-area:i;width:60px;height:60px;border-radius:16px;background:#fff1ef;color:var(--lbf-accent);display:grid;place-items:center}
.lbf-bigi svg{width:34px;height:34px}
.lbf-bigt{grid-area:t;display:block;line-height:1.25}
.lbf-bigt b{display:block;font-size:1.25rem}
.lbf-bigt small{display:block;color:var(--lbf-mut);font-size:.88rem;margin-top:2px}
.lbf-bigp{grid-area:p;justify-self:start;background:var(--lbf-cta);color:var(--lbf-cta-ink);font-weight:800;font-size:.92rem;border-radius:99px;padding:3px 12px}
.lbf-bigc.is-group{border-style:dashed;background:var(--lbf-grp-bg);border-color:#e0b97a}
.lbf-bigc.is-group .lbf-bigi{background:#fff;color:var(--lbf-grp)}
.lbf-bigc.is-group .lbf-bigp{background:#fff;color:var(--lbf-grp);border:1.5px solid #e0b97a}
@media(min-width:560px){.lbf-bigs{grid-template-columns:repeat(3,1fr)}.lbf-bigc{grid-template-columns:1fr;grid-template-areas:'i' 't' 'p';padding:20px 18px;text-align:left;row-gap:10px}.lbf-bigc.is-group{grid-column:1/-1;grid-template-columns:auto 1fr auto;grid-template-areas:'i t p';column-gap:16px}}
.lbf-chosen{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff4f2;border:1.5px solid #f7c7c1;border-radius:12px;padding:9px 14px;margin-bottom:14px;font-size:.95rem}
.lbf-sel-h{margin-top:18px;font-size:1.1rem}

.lbf-addr{border:1.5px dashed var(--lbf-line);border-radius:12px;padding:10px 12px 12px;margin:2px 0 0;display:grid;gap:10px;min-width:0}
.lbf-addr legend{font-size:.88rem;font-weight:600;padding:0 6px}
.lbf-addr legend small{font-weight:400;color:var(--lbf-mut)}
.lbf-pmi{width:46px;height:34px;flex:none}
.lbf-addr[hidden]{display:none}
.lbf-form label.lbf-pm{display:flex;align-items:center;gap:12px;font-size:1rem;font-weight:600}
.lbf-form .lbf-pm input{width:auto;padding:0;border:0;flex:none;margin:0}
.lbf-form .lbf-pm small{font-size:.78rem}
.lbf-day.t-group:disabled{opacity:.62}
.lbf-day.is-past:disabled{opacity:.3}

/* "Mikorra gondoltok?": látványosabb naptár-lépés */
.lbf-cal{gap:7px}
.lbf-day{min-height:60px;border-radius:14px;transition:transform .12s,box-shadow .12s,border-color .12s}
.lbf-day b{font-size:1.08rem}
.lbf-day:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(18,38,58,.14)}
.lbf-day.is-on{background:var(--lbf-accent)!important;border-color:var(--lbf-accent)!important;color:#fff;outline:0;box-shadow:0 8px 18px rgba(232,69,58,.35);transform:translateY(-2px)}
.lbf-day.is-on small{color:#ffe3df}
.lbf-day.is-today{border-style:dashed;border-color:var(--lbf-accent)}
.lbf-mo{font-size:1.02rem;display:flex;align-items:center;gap:10px}
.lbf-mo::after{content:'';flex:1;height:2px;background:linear-gradient(90deg,var(--lbf-line),transparent)}
.lbf-slot{border-radius:99px;font-weight:700;transition:transform .12s,box-shadow .12s}
.lbf-slot:hover:not(.is-on){transform:translateY(-1px);box-shadow:0 4px 10px rgba(18,38,58,.12)}
.lbf-slot.is-on{box-shadow:0 6px 14px rgba(232,69,58,.32)}
@media(max-width:480px){.lbf-cal{gap:5px}.lbf-day{min-height:54px;border-radius:12px}}
.lbf-gwhen{display:grid;gap:8px}
.lbf-glabel{font-size:.88rem;font-weight:600}
.lbf-cal--g .lbf-day{min-height:50px}
.lbf-gsel{margin:0!important;font-size:.9rem;color:var(--lbf-mut)}
.lbf-gsel.is-set{color:var(--lbf-ink);font-weight:700}
.lbf-bigi{width:66px;height:66px}
.lbf-bigi svg{width:44px;height:44px}

/* letisztult ikon-csempék */
.lbf-bigc .lbf-bigi{width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#ff9a6b,#e8453a);color:#fff;box-shadow:0 10px 18px rgba(232,69,58,.28);transition:transform .2s}
.lbf-bigc .lbf-bigi svg{width:32px;height:32px}
.lbf-bigc:hover .lbf-bigi{transform:rotate(-6deg) scale(1.07)}
.lbf-bigc.is-group .lbf-bigi{background:linear-gradient(135deg,#ffcb6b,#f59e0b);color:#fff;box-shadow:0 10px 18px rgba(245,158,11,.3)}
@media(prefers-reduced-motion:reduce){.lbf-bigc:hover .lbf-bigi{transform:none}}

.lbf-day.t-break small{font-size:.58rem;letter-spacing:0}
@media(max-width:480px){.lbf-day.t-break small{font-size:.52rem}}

/* telefon: 4 oszlopos naptár, a hét napja a csempén (2026-10-22); a specifikusság szándékosan magasabb, mint a WP "További CSS"-ben futó szabályoké */
.lbf-day .lbf-wd{display:none;font-style:normal}
@media(max-width:480px){
.lbf-cal[data-r="cal"]{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.lbf-cal[data-r="cal"] .lbf-dh{display:none}
.lbf-cal[data-r="cal"] .lbf-day.is-past{display:none}
.lbf-cal[data-r="cal"] .lbf-day{min-height:78px;padding:8px 2px 7px;gap:3px}
.lbf-cal[data-r="cal"] .lbf-day .lbf-wd{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--lbf-mut)}
.lbf-cal[data-r="cal"] .lbf-day b{font-size:1.3rem}
.lbf-cal[data-r="cal"] .lbf-day small,.lbf-cal[data-r="cal"] .lbf-day.t-break small{font-size:.68rem;letter-spacing:.02em}
.lbf-cal[data-r="cal"] .lbf-day.is-on .lbf-wd{color:#ffe3df}
}

/* telefon: a csoportos ajánlatkérés naptára is 4 oszlopos, a hét napja a csempén (2026-10-23) */
@media(max-width:480px){
.lbf-cal[data-r="gcal"]{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.lbf-cal[data-r="gcal"] .lbf-dh{display:none}
.lbf-cal[data-r="gcal"] .lbf-day.is-past{display:none}
.lbf-cal[data-r="gcal"] .lbf-day{min-height:78px;padding:8px 2px 7px;gap:3px}
.lbf-cal[data-r="gcal"] .lbf-day .lbf-wd{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--lbf-mut)}
.lbf-cal[data-r="gcal"] .lbf-day b{font-size:1.3rem}
.lbf-cal[data-r="gcal"] .lbf-day small{font-size:.68rem;letter-spacing:.02em}
.lbf-cal[data-r="gcal"] .lbf-day.is-on .lbf-wd{color:#ffe3df}
}
