/* FlashKart recepciós portál v4 – minden publikus szabály a saját névtérben marad */
.fkb-portal,
.fkb-portal-login,
.fkb-portal-denied{
  --fkb-orange:#ff6a00;
  --fkb-teal:#22d3c5;
  --fkb-ink:#062f33;
  --fkb-ink-2:#0a4449;
  --fkb-paper:#f4f7f6;
  --fkb-white:#fff;
  --fkb-copy:#17383b;
  --fkb-muted:#667d80;
  --fkb-line:#d8e2e1;
  --fkb-danger:#c53543;
  --fkb-success:#25a968;
  --fkb-warning:#d98616;
  box-sizing:border-box;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:var(--fkb-copy);
}
.fkb-portal *,
.fkb-portal *::before,
.fkb-portal *::after,
.fkb-portal-login *,
.fkb-portal-login *::before,
.fkb-portal-login *::after{box-sizing:border-box}
.fkb-portal button,
.fkb-portal input,
.fkb-portal select,
.fkb-portal textarea,
.fkb-portal-login button,
.fkb-portal-login input{font:inherit}
.fkb-portal button{cursor:pointer}
.fkb-portal button:disabled{cursor:not-allowed;opacity:.55}
.fkb-portal{
  position:relative;
  left:50%;
  width:min(1440px,calc(100vw - 28px));
  margin:24px 0 48px;
  transform:translateX(-50%);
  background:var(--fkb-paper);
  color:var(--fkb-copy);
  box-shadow:0 20px 60px rgba(6,47,51,.11);
  overflow:hidden;
  isolation:isolate;
}
.fkb-portal__stripe,
.fkb-portal-login__stripe{
  height:6px;
  background:repeating-linear-gradient(90deg,var(--fkb-orange) 0 46px,var(--fkb-ink) 46px 53px,var(--fkb-teal) 53px 99px,var(--fkb-ink) 99px 106px);
}
.fkb-portal__header{
  min-height:180px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:30px 36px;
  background:linear-gradient(115deg,var(--fkb-ink) 0%,var(--fkb-ink-2) 100%);
  color:#fff!important;
}
.fkb-portal__brand{min-width:0}
.fkb-portal__eyebrow{
  display:inline-flex;
  padding:5px 9px;
  border:1px solid rgba(34,211,197,.55);
  color:var(--fkb-teal)!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.11em!important;
  text-transform:uppercase;
}
.fkb-portal__header h1{
  margin:12px 0 0!important;
  color:#fff!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(42px,5.2vw,68px)!important;
  font-weight:900!important;
  line-height:.94!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
.fkb-portal__header p{
  margin:10px 0 0!important;
  color:#eaf5f5!important;
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.4!important;
}
.fkb-portal__account{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.fkb-portal__account span{color:#fff;font-size:14px;font-weight:800}
.fkb-portal__account a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.25);
  color:#fff!important;
  background:rgba(255,255,255,.04);
  text-decoration:none!important;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
}
.fkb-portal__main-nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  background:#fff;
  border-bottom:1px solid var(--fkb-line);
}
.fkb-portal__main-nav button{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:58px;
  border:0;
  border-right:1px solid var(--fkb-line);
  background:#fff;
  color:#789092;
  font-size:13px;
  font-weight:1000;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.fkb-portal__main-nav button:last-child{border-right:0}
.fkb-portal__main-nav button span{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid #cbd8d7;
  color:#7b9395;
  font-size:10px;
}
.fkb-portal__main-nav button.is-active{color:var(--fkb-ink);box-shadow:inset 0 -4px 0 var(--fkb-orange)}
.fkb-portal__main-nav button.is-active span{border-color:var(--fkb-orange);background:var(--fkb-orange);color:#fff}
.fkb-portal__global-stats{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  padding:22px 26px 14px;
}
.fkb-portal__global-stats button{
  min-height:92px;
  padding:14px 16px;
  border:1px solid var(--fkb-line);
  background:#fff;
  color:var(--fkb-copy);
  text-align:left;
  transition:.15s ease;
}
.fkb-portal__global-stats button:hover{border-color:var(--fkb-teal);transform:translateY(-1px)}
.fkb-portal__global-stats button.is-active{border-color:var(--fkb-teal);box-shadow:inset 4px 0 0 var(--fkb-teal)}
.fkb-portal__global-stats span{display:block;color:var(--fkb-ink);font-size:30px;font-weight:1000;line-height:1}
.fkb-portal__global-stats small{display:block;margin-top:8px;color:var(--fkb-muted);font-size:11px;font-weight:900;line-height:1.25;text-transform:uppercase}
.fkb-portal__toolbar{
  display:grid;
  grid-template-columns:minmax(240px,2fr) minmax(140px,.7fr) minmax(170px,.8fr) repeat(4,auto);
  gap:12px;
  align-items:end;
  padding:8px 26px 0;
}
.fkb-portal__toolbar label{display:block;min-width:0}
.fkb-portal__toolbar label>span{
  display:block;
  margin-bottom:6px;
  color:var(--fkb-muted);
  font-size:10px;
  font-weight:1000;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.fkb-portal__toolbar input,
.fkb-portal__toolbar select{
  width:100%;
  min-height:46px;
  padding:0 13px;
  border:1px solid #bfd0cf;
  background:#fff;
  color:var(--fkb-copy);
  font-size:14px;
  outline:none;
}
.fkb-portal__toolbar input:focus,
.fkb-portal__toolbar select:focus{border-color:var(--fkb-teal);box-shadow:0 0 0 3px rgba(34,211,197,.12)}
.fkb-portal__refresh,
.fkb-portal__demo-action{
  min-height:46px;
  padding:0 18px;
  border:0;
  background:var(--fkb-orange);
  color:#fff;
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
}
.fkb-portal__demo-action{background:#eaf4f2;color:var(--fkb-ink);border:1px solid #bfd0cf;font-weight:900}
.fkb-portal__demo-action.is-danger{background:#fff2f3;color:#9a2634;border-color:#e6b2b8}
.fkb-portal__live{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 26px 16px;
  color:var(--fkb-muted);
  font-size:11px;
}
.fkb-portal__live>span{width:8px;height:8px;border-radius:50%;background:var(--fkb-success);box-shadow:0 0 0 5px rgba(37,169,104,.1)}
.fkb-portal__live strong{color:#2b7564;font-size:11px}
.fkb-portal__workspace{padding:0 26px 28px}
.fkb-view{display:none}
.fkb-view.is-active{display:block}
.fkb-daybar{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto 46px;
  align-items:center;
  gap:10px;
  padding:18px 20px;
  background:var(--fkb-ink);
  color:#fff;
}
.fkb-daybar__nav,
.fkb-daybar__today{
  min-height:42px;
  border:1px solid rgba(255,255,255,.22);
  background:transparent;
  color:#fff;
  font-weight:900;
}
.fkb-daybar__nav{font-size:19px}
.fkb-daybar__today{padding:0 16px;font-size:11px;text-transform:uppercase}
.fkb-daybar__date{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-width:0}
.fkb-daybar__date>span{color:var(--fkb-teal);font-size:10px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-daybar__date>strong{overflow:hidden;color:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:28px;font-weight:900;line-height:1;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.fkb-daybar__date>input{min-height:40px;padding:0 10px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#fff;color-scheme:dark}
.fkb-day-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  padding:14px 0;
}
.fkb-day-summary article{padding:15px 17px;border:1px solid var(--fkb-line);background:#fff;box-shadow:0 7px 18px rgba(6,47,51,.04)}
.fkb-day-summary article.is-green{border-top:3px solid var(--fkb-success)}
.fkb-day-summary article.is-orange{border-top:3px solid var(--fkb-orange)}
.fkb-day-summary small{display:block;color:var(--fkb-muted);font-size:9px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-day-summary strong{display:block;margin-top:5px;color:var(--fkb-ink);font-size:29px;font-weight:1000;line-height:1}
.fkb-day-summary span{display:block;margin-top:5px;color:var(--fkb-muted);font-size:11px;line-height:1.35}
.fkb-day-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:12px;border:1px solid var(--fkb-line);background:#fff}
.fkb-chip{min-height:34px;padding:0 11px;border:1px solid #c9d8d7;background:#fff;color:#637d80;font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-chip.is-active{border-color:var(--fkb-orange);background:var(--fkb-orange);color:#fff}
.fkb-toggle{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--fkb-muted);font-size:11px;font-weight:800}
.fkb-toggle input{accent-color:var(--fkb-orange)}
.fkb-day-board{display:grid;gap:18px}
.fkb-location-day{border:1px solid var(--fkb-line);background:#fff;box-shadow:0 10px 25px rgba(6,47,51,.05)}
.fkb-location-day.is-blocked{border-color:#efb3b8}
.fkb-location-day__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:18px;
  padding:18px 20px;
  border-bottom:1px solid var(--fkb-line);
  background:linear-gradient(90deg,#f9fcfb,#eef7f6);
}
.fkb-location-day__head>div:first-child>span{color:var(--fkb-orange);font-size:9px;font-weight:1000;letter-spacing:.11em;text-transform:uppercase}
.fkb-location-day__head h2{margin:3px 0 0!important;color:var(--fkb-ink)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:29px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important}
.fkb-location-day__head p{margin:5px 0 0!important;color:var(--fkb-muted)!important;font-size:11px!important;line-height:1.35!important}
.fkb-location-day__numbers{text-align:right}
.fkb-location-day__numbers strong{display:block;color:var(--fkb-ink);font-size:14px;font-weight:1000}
.fkb-location-day__numbers span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:11px}
.fkb-location-day__head>button{min-height:38px;padding:0 12px;border:1px solid #b9cdcb;background:#fff;color:var(--fkb-ink);font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-location-day.is-blocked .fkb-location-day__head{background:#fff2f3}
.fkb-location-day__slots{display:grid;gap:0}
.fkb-slot{border-bottom:1px solid #e8efee;background:#fff}
.fkb-slot:last-child{border-bottom:0}
.fkb-slot.is-blocked{background:#fff8f8}
.fkb-slot.is-full{box-shadow:inset 4px 0 0 var(--fkb-orange)}
.fkb-slot__head{
  display:grid;
  grid-template-columns:110px minmax(260px,1fr) auto;
  gap:18px;
  align-items:center;
  padding:14px 18px;
  background:#fbfdfd;
}
.fkb-slot.is-blocked .fkb-slot__head{background:#fff0f1}
.fkb-slot__time strong{display:block;color:var(--fkb-ink);font-size:25px;font-weight:1000;line-height:1}
.fkb-slot__time span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:10px;font-weight:800}
.fkb-slot.is-blocked .fkb-slot__time span{color:var(--fkb-danger)}
.fkb-slot__capacity{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:14px;min-width:0}
.fkb-slot__capacity strong{display:block;color:var(--fkb-ink);font-size:12px;font-weight:1000}
.fkb-slot__capacity span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:10px}
.fkb-slot__capacity>i{display:block;height:7px;background:#dbe7e6;overflow:hidden}
.fkb-slot__capacity>i>span{display:block;height:100%;background:linear-gradient(90deg,var(--fkb-teal),var(--fkb-success))}
.fkb-slot.is-full .fkb-slot__capacity>i>span{background:var(--fkb-orange)}
.fkb-slot.is-blocked .fkb-slot__capacity>i>span{background:var(--fkb-danger)}
.fkb-slot__head-actions{display:flex;align-items:center;gap:8px}
.fkb-slot__head-actions>button{min-height:34px;padding:0 10px;border:1px solid #c5d6d4;background:#fff;color:var(--fkb-ink);font-size:9px;font-weight:1000;text-transform:uppercase}
.fkb-slot__note{padding:5px 7px;background:#fff5e7;color:#8d5d18;font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-slot__body{padding:0 18px 16px}
.fkb-slot__group{padding-top:12px}
.fkb-slot__group h4{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px!important;color:var(--fkb-ink)!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.fkb-slot__group h4 span{color:var(--fkb-muted);font-size:9px;font-weight:900}
.fkb-slot__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.fkb-slot__empty{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;color:var(--fkb-muted)}
.fkb-slot__empty strong{color:#3b7770;font-size:12px}
.fkb-slot__empty span{font-size:10px}
.fkb-booking-card{position:relative;border:1px solid var(--fkb-line);background:#fff;transition:.15s ease}
.fkb-booking-card:hover{border-color:var(--fkb-teal);box-shadow:0 8px 18px rgba(6,47,51,.06)}
.fkb-booking-card.fkb-status-confirmed{border-left:4px solid var(--fkb-success)}
.fkb-booking-card.fkb-status-new{border-left:4px solid var(--fkb-orange)}
.fkb-booking-card.fkb-status-contacted{border-left:4px solid #4c8fd8}
.fkb-booking-card.fkb-status-rejected,
.fkb-booking-card.fkb-status-cancelled{opacity:.72;border-left:4px solid #a8b4b5}
.fkb-booking-card__open{display:block;width:100%;padding:13px;border:0;background:transparent;color:inherit;text-align:left}
.fkb-booking-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fkb-booking-card__id{color:var(--fkb-orange);font-size:9px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}
.fkb-booking-card__status{padding:5px 7px;font-size:8px;font-weight:1000;line-height:1;text-transform:uppercase}
.fkb-status-new{background:#fff0e5;color:#a94600}
.fkb-status-contacted{background:#edf5ff;color:#286da9}
.fkb-status-confirmed{background:#e9f8ef;color:#187444}
.fkb-status-rejected{background:#fff0f2;color:#a32736}
.fkb-status-cancelled{background:#eff2f2;color:#637577}
.fkb-booking-card__name{display:block;margin-top:8px;color:var(--fkb-ink);font-size:15px;font-weight:1000;line-height:1.2}
.fkb-booking-card__meta{display:block;margin-top:5px;color:var(--fkb-copy);font-size:11px;line-height:1.4}
.fkb-booking-card__open small{display:block;margin-top:6px;color:var(--fkb-muted);font-size:9px;line-height:1.35}
.fkb-booking-card__actions{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--fkb-line)}
.fkb-booking-card__actions button{min-height:32px;padding:0 6px;border:0;border-right:1px solid var(--fkb-line);background:#fafcfc;color:#5e777a;font-size:8px;font-weight:1000;text-transform:uppercase}
.fkb-booking-card__actions button:last-child{border-right:0}
.fkb-booking-card__actions button.is-accept{color:#177443}
.fkb-booking-card__actions button.is-reject{color:#a32736}
.fkb-booking-card.is-compact{min-width:0}
.fkb-day-empty{padding:28px;border:1px dashed #c6d6d5;background:#fff;color:var(--fkb-muted);font-size:13px;line-height:1.5;text-align:center}
.fkb-calendar-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;padding:17px 19px;background:var(--fkb-ink);color:#fff}
.fkb-calendar-head button{height:40px;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font-size:18px;font-weight:900}
.fkb-calendar-head>div{text-align:center}
.fkb-calendar-head span{display:block;color:var(--fkb-teal);font-size:9px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-calendar-head strong{display:block;margin-top:4px;color:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:26px;font-weight:900;text-transform:uppercase}
.fkb-calendar-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:11px 15px;border:1px solid var(--fkb-line);border-top:0;background:#fff;color:var(--fkb-muted);font-size:10px;font-weight:800}
.fkb-calendar-legend span{display:flex;align-items:center;gap:6px}
.fkb-calendar-legend i{width:9px;height:9px;border-radius:50%}
.fkb-calendar-legend i.is-confirmed{background:var(--fkb-success)}
.fkb-calendar-legend i.is-pending{background:var(--fkb-orange)}
.fkb-calendar-legend i.is-blocked{background:var(--fkb-danger)}
.fkb-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;border:1px solid var(--fkb-line);background:var(--fkb-line)}
.fkb-calendar__weekday{padding:10px 8px;background:#eef5f4;color:var(--fkb-muted);font-size:9px;font-weight:1000;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.fkb-calendar__empty{min-height:125px;background:#f7faf9}
.fkb-calendar__day{min-height:148px;display:flex;flex-direction:column;gap:8px;padding:9px;border:0;background:#fff;color:inherit;text-align:left;overflow:hidden}
.fkb-calendar__day:hover{background:#f5fbfa}
.fkb-calendar__day.has-data{box-shadow:inset 0 3px 0 var(--fkb-teal)}
.fkb-calendar__day.is-today{box-shadow:inset 0 3px 0 var(--fkb-orange)}
.fkb-calendar__daytop{display:flex;align-items:center;justify-content:space-between;gap:6px}
.fkb-calendar__daytop strong{display:grid;place-items:center;width:27px;height:27px;background:#eef4f3;color:var(--fkb-ink);font-size:13px;font-weight:1000}
.fkb-calendar__day.is-today .fkb-calendar__daytop strong{background:var(--fkb-orange);color:#fff}
.fkb-calendar__daytop span{color:#257b5c;font-size:10px;font-weight:1000}
.fkb-calendar__mini{display:grid;gap:5px;min-height:67px}
.fkb-calendar__slotline{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 6px;background:#edf8f5;color:#245b50;font-size:8px;line-height:1.2}
.fkb-calendar__slotline b{font-weight:1000}
.fkb-calendar__slotline em{font-style:normal;text-align:right}
.fkb-calendar__slotline.is-blocked{background:#fff0f2;color:#9a2634}
.fkb-calendar__free{color:#9aabad;font-size:9px}
.fkb-calendar__mini small{color:var(--fkb-muted);font-size:8px}
.fkb-calendar__day footer{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-top:auto;padding-top:6px;border-top:1px solid #edf2f2;color:var(--fkb-muted);font-size:8px}
.fkb-inbox-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 20px;background:var(--fkb-ink);color:#fff}
.fkb-inbox-head>div>span{color:var(--fkb-teal);font-size:9px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-inbox-head h2{margin:5px 0 0!important;color:#fff!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:27px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important}
.fkb-inbox-head label>span{display:block;margin-bottom:5px;color:#bad4d5;font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-inbox-head input{min-height:40px;padding:0 10px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;color-scheme:dark}
.fkb-inbox{display:grid;gap:16px;padding-top:14px}
.fkb-inbox-day{border:1px solid var(--fkb-line);background:#fff}
.fkb-inbox-day>header{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:18px;padding:15px 18px;border-bottom:1px solid var(--fkb-line);background:#f7fbfa}
.fkb-inbox-day>header>div:first-child>span{color:var(--fkb-orange);font-size:9px;font-weight:1000;text-transform:uppercase}
.fkb-inbox-day>header h2{margin:3px 0 0!important;color:var(--fkb-ink)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:24px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important}
.fkb-inbox-day>header>div:nth-child(2){text-align:right}
.fkb-inbox-day>header>div:nth-child(2) strong{display:block;color:var(--fkb-ink);font-size:12px}
.fkb-inbox-day>header>div:nth-child(2) span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:10px}
.fkb-inbox-day>header button{min-height:36px;padding:0 11px;border:1px solid #bfd0cf;background:#fff;color:var(--fkb-ink);font-size:9px;font-weight:1000;text-transform:uppercase}
.fkb-inbox-day__categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:0}
.fkb-inbox-category{padding:15px;border-right:1px solid var(--fkb-line);border-bottom:1px solid var(--fkb-line)}
.fkb-inbox-category:nth-child(2n){border-right:0}
.fkb-inbox-category h3{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px!important;color:var(--fkb-ink)!important;font-size:11px!important;font-weight:1000!important;text-transform:uppercase!important}
.fkb-inbox-category h3 span{color:var(--fkb-muted);font-size:9px}
.fkb-inbox-category>div{display:grid;gap:8px}
.fkb-portal__backdrop{position:fixed;inset:0;z-index:99998;background:rgba(3,28,31,.66);opacity:0;transition:.18s ease}
.fkb-portal__backdrop.is-open{opacity:1}
.fkb-portal__modal,
.fkb-portal__slot-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:22px;opacity:0;transform:scale(.985);transition:.18s ease}
.fkb-portal__modal.is-open,
.fkb-portal__slot-modal.is-open{opacity:1;transform:scale(1)}
.fkb-portal__modal-dialog,
.fkb-portal__slot-dialog{position:relative;width:min(1080px,100%);max-height:calc(100vh - 44px);overflow:auto;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.3)}
.fkb-portal__slot-dialog{width:min(720px,100%)}
.fkb-portal__detail-close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border:1px solid #c8d8d7;background:#fff;color:var(--fkb-ink);font-size:24px;font-weight:500;line-height:1}
.fkb-detail{padding:28px}
.fkb-detail__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-right:46px}
.fkb-detail__eyebrow{display:block;color:var(--fkb-orange);font-size:9px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-detail__top h2,
.fkb-slot-editor h2{margin:6px 0 0!important;color:var(--fkb-ink)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:37px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important}
.fkb-detail__top p,
.fkb-slot-editor>p{margin:7px 0 0!important;color:var(--fkb-muted)!important;font-size:12px!important;line-height:1.45!important}
.fkb-detail__status-pill{padding:8px 10px;font-size:9px;font-weight:1000;text-transform:uppercase}
.fkb-detail__contact{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}
.fkb-detail__contact a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;background:var(--fkb-ink);color:#fff!important;text-decoration:none!important;font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-detail__contact a:last-child{background:var(--fkb-teal);color:var(--fkb-ink)!important}
.fkb-detail__hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}
.fkb-detail__hero>div{padding:13px;border:1px solid var(--fkb-line);background:#f8fbfa}
.fkb-detail__hero small,
.fkb-detail__row small,
.fkb-detail__formgrid label>span,
.fkb-detail__field>span,
.fkb-slot-editor__field>span{display:block;color:var(--fkb-muted);font-size:8px;font-weight:1000;letter-spacing:.09em;text-transform:uppercase}
.fkb-detail__hero strong{display:block;margin-top:7px;color:var(--fkb-ink);font-size:14px;font-weight:1000;line-height:1.3}
.fkb-detail__capacity{display:grid;grid-template-columns:1fr 250px;align-items:center;gap:16px;padding:13px 14px;border-left:4px solid var(--fkb-teal);background:#edf9f7;margin-bottom:11px}
.fkb-detail__capacity small{display:block;color:#4f7471;font-size:8px;font-weight:1000;text-transform:uppercase}
.fkb-detail__capacity strong{display:block;margin-top:5px;color:var(--fkb-ink);font-size:14px}
.fkb-detail__capacity span{display:block;margin-top:3px;color:var(--fkb-muted);font-size:10px}
.fkb-detail__capacity>i{height:7px;background:#cfe3df;overflow:hidden}
.fkb-detail__capacity>i>span{display:block;height:100%;background:linear-gradient(90deg,var(--fkb-teal),var(--fkb-success))}
.fkb-detail__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10px}
.fkb-detail__section{padding:16px;border:1px solid var(--fkb-line);background:#fff}
.fkb-detail__section h3{margin:0 0 11px!important;color:var(--fkb-ink)!important;font-size:12px!important;font-weight:1000!important;text-transform:uppercase!important}
.fkb-detail__row{padding:10px 0;border-bottom:1px solid #edf2f2}
.fkb-detail__row:last-child{border-bottom:0}
.fkb-detail__row strong{display:block;margin-top:5px;color:var(--fkb-copy);font-size:12px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}
.fkb-detail__row.is-error strong{color:var(--fkb-danger)}
.fkb-detail__formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}
.fkb-detail__formgrid label{display:block}
.fkb-detail__formgrid input,
.fkb-detail__formgrid select,
.fkb-detail__field textarea,
.fkb-slot-editor__field input,
.fkb-slot-editor__field textarea{display:block;width:100%;margin-top:6px;padding:10px 11px;border:1px solid #bfd0cf;background:#fff;color:var(--fkb-copy);font-size:12px;outline:none}
.fkb-detail__field{display:block;margin-top:10px}
.fkb-detail__field textarea{min-height:92px;resize:vertical}
.fkb-detail__decision{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.fkb-detail__decision button{min-height:36px;border:1px solid #c4d4d3;background:#fff;color:var(--fkb-copy);font-size:9px;font-weight:1000;text-transform:uppercase}
.fkb-detail__decision button.is-accept{border-color:#91d4ae;color:#147140}
.fkb-detail__decision button.is-reject{border-color:#e8b3b9;color:#a42736}
.fkb-detail__save{width:100%;min-height:42px;margin-top:8px;border:0;background:var(--fkb-orange);color:#fff;font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-detail__history{margin:8px 0 0!important;color:var(--fkb-muted)!important;font-size:9px!important}
.fkb-detail__technical{margin-top:10px;border:1px solid var(--fkb-line);background:#f8fbfa}
.fkb-detail__technical summary{padding:12px 14px;color:var(--fkb-ink);font-size:10px;font-weight:1000;text-transform:uppercase;cursor:pointer}
.fkb-detail__technical>div{padding:0 14px 12px}
.fkb-slot-editor{padding:27px}
.fkb-slot-editor__numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}
.fkb-slot-editor__numbers article{padding:13px;border:1px solid var(--fkb-line);background:#f7fbfa}
.fkb-slot-editor__numbers small{display:block;color:var(--fkb-muted);font-size:8px;font-weight:1000;text-transform:uppercase}
.fkb-slot-editor__numbers strong{display:block;margin-top:6px;color:var(--fkb-ink);font-size:18px;font-weight:1000}
.fkb-slot-editor__switch{display:flex;align-items:flex-start;gap:9px;margin:15px 0;padding:13px;border-left:4px solid var(--fkb-danger);background:#fff1f2;color:#73303a;font-size:11px;font-weight:800;line-height:1.4}
.fkb-slot-editor__switch input{margin-top:2px;accent-color:var(--fkb-danger)}
.fkb-slot-editor__field{display:block;margin-top:13px}
.fkb-slot-editor__field textarea{min-height:100px;resize:vertical}
.fkb-slot-editor__field small{display:block;margin-top:5px;color:var(--fkb-muted);font-size:9px}
.fkb-slot-editor__history{margin:10px 0 0!important;color:var(--fkb-muted)!important;font-size:9px!important}
.fkb-slot-editor__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.fkb-slot-editor__actions button{min-height:42px;border:0;background:var(--fkb-orange);color:#fff;font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-slot-editor__actions button:last-child{border:1px solid #bfd0cf;background:#fff;color:var(--fkb-ink)}
.fkb-toast{position:fixed;right:22px;bottom:22px;z-index:100000;max-width:390px;padding:13px 15px;background:var(--fkb-ink);color:#fff;font-size:11px;font-weight:800;line-height:1.45;box-shadow:0 14px 36px rgba(0,0,0,.22)}
.fkb-toast.is-error{background:#8e2330}
.fkb-portal-login{width:min(520px,calc(100% - 28px));margin:50px auto;background:#fff;box-shadow:0 20px 60px rgba(6,47,51,.13)}
.fkb-portal-login__body{padding:28px}
.fkb-portal-login__body>span{display:inline-flex;padding:5px 9px;border:1px solid rgba(34,211,197,.55);color:#168d87;font-size:9px;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}
.fkb-portal-login__body h2{margin:10px 0 0!important;color:var(--fkb-ink)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:40px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important}
.fkb-portal-login__body p{color:var(--fkb-muted);font-size:12px;line-height:1.5}
.fkb-portal-login label{display:block;color:var(--fkb-ink);font-size:11px;font-weight:900}
.fkb-portal-login input[type=text],
.fkb-portal-login input[type=password]{width:100%;min-height:44px;margin-top:6px;padding:0 11px;border:1px solid #bfd0cf}
.fkb-portal-login input[type=submit]{min-height:42px;padding:0 18px;border:0;background:var(--fkb-orange);color:#fff;font-size:10px;font-weight:1000;text-transform:uppercase}
.fkb-portal-denied{width:min(520px,calc(100% - 28px));margin:50px auto;padding:24px;border-left:4px solid var(--fkb-danger);background:#fff1f2;color:#73303a;line-height:1.55}
@media(max-width:1180px){
  .fkb-portal__global-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fkb-slot__cards{grid-template-columns:1fr}
  .fkb-calendar__day{min-height:138px}
}
@media(max-width:900px){
  .fkb-portal{left:50%;width:100vw;margin:0;transform:translateX(-50%);box-shadow:none}
  .fkb-portal__header{min-height:150px;padding:24px}
  .fkb-portal__global-stats{grid-template-columns:repeat(3,minmax(0,1fr));padding:16px}
  .fkb-portal__toolbar{grid-template-columns:1fr 1fr;padding:6px 16px 0}
  .fkb-portal__live{padding:10px 16px 14px}
  .fkb-portal__workspace{padding:0 16px 22px}
  .fkb-day-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-slot__head{grid-template-columns:90px 1fr;gap:12px}
  .fkb-slot__head-actions{grid-column:1/-1;justify-content:flex-end}
  .fkb-slot__capacity{grid-template-columns:1fr 150px}
  .fkb-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}
  .fkb-calendar__weekday{display:none}
  .fkb-calendar__empty{display:none}
  .fkb-detail__hero{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-detail__grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .fkb-portal__header{align-items:flex-start;flex-direction:column;gap:16px;padding:22px 16px}
  .fkb-portal__header h1{font-size:38px!important}
  .fkb-portal__header p{font-size:14px!important}
  .fkb-portal__account{width:100%;justify-content:space-between}
  .fkb-portal__main-nav{grid-template-columns:1fr}
  .fkb-portal__main-nav button{justify-content:flex-start;padding:0 16px;border-right:0;border-bottom:1px solid var(--fkb-line)}
  .fkb-portal__global-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}
  .fkb-portal__global-stats button{min-height:78px;padding:12px}
  .fkb-portal__global-stats span{font-size:25px}
  .fkb-portal__toolbar{grid-template-columns:1fr;padding:4px 12px 0}
  .fkb-portal__refresh{width:100%}
  .fkb-portal__live{padding:10px 12px 12px}
  .fkb-portal__workspace{padding:0 12px 18px}
  .fkb-daybar{grid-template-columns:40px 1fr 40px;padding:12px}
  .fkb-daybar__date{grid-column:2;grid-row:1/3;display:block;text-align:center}
  .fkb-daybar__date>span{display:block}
  .fkb-daybar__date>strong{display:block;margin-top:5px;font-size:20px}
  .fkb-daybar__date>input{width:100%;margin-top:8px}
  .fkb-daybar__today{grid-column:1/-1;grid-row:3}
  .fkb-day-summary{grid-template-columns:1fr 1fr;gap:8px}
  .fkb-day-summary article{padding:12px}
  .fkb-day-summary strong{font-size:24px}
  .fkb-toggle{width:100%;margin-left:0;padding-top:4px}
  .fkb-location-day__head{grid-template-columns:1fr;gap:10px;padding:15px}
  .fkb-location-day__numbers{text-align:left}
  .fkb-location-day__head>button{width:100%}
  .fkb-slot__head{grid-template-columns:1fr;padding:12px}
  .fkb-slot__capacity{grid-template-columns:1fr}
  .fkb-slot__head-actions{grid-column:auto;justify-content:flex-start}
  .fkb-slot__body{padding:0 12px 12px}
  .fkb-booking-card__actions{grid-template-columns:1fr}
  .fkb-booking-card__actions button{border-right:0;border-bottom:1px solid var(--fkb-line)}
  .fkb-booking-card__actions button:last-child{border-bottom:0}
  .fkb-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-inbox-head{align-items:flex-start;flex-direction:column}
  .fkb-inbox-head label{width:100%}
  .fkb-inbox-head input{width:100%}
  .fkb-inbox-day>header{grid-template-columns:1fr;padding:13px}
  .fkb-inbox-day>header>div:nth-child(2){text-align:left}
  .fkb-inbox-day>header button{width:100%}
  .fkb-inbox-day__categories{grid-template-columns:1fr}
  .fkb-inbox-category{border-right:0}
  .fkb-portal__modal,.fkb-portal__slot-modal{padding:8px}
  .fkb-portal__modal-dialog,.fkb-portal__slot-dialog{max-height:calc(100vh - 16px)}
  .fkb-detail,.fkb-slot-editor{padding:20px 14px}
  .fkb-detail__top{display:block;padding-right:40px}
  .fkb-detail__status-pill{display:inline-block;margin-top:10px}
  .fkb-detail__top h2,.fkb-slot-editor h2{font-size:29px!important}
  .fkb-detail__hero{grid-template-columns:1fr}
  .fkb-detail__capacity{grid-template-columns:1fr}
  .fkb-detail__formgrid{grid-template-columns:1fr}
  .fkb-detail__decision{grid-template-columns:1fr}
  .fkb-slot-editor__numbers{grid-template-columns:1fr}
  .fkb-slot-editor__actions{grid-template-columns:1fr}
  .fkb-toast{right:12px;bottom:12px;left:12px;max-width:none}
}
.fkb-slot__carry{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:12px;padding:10px 12px;border-left:4px solid #4c8fd8;background:#f1f6fd;color:#315c89}
.fkb-slot__carry strong{font-size:10px;font-weight:1000;text-transform:uppercase;white-space:nowrap}
.fkb-slot__carry span{font-size:10px;line-height:1.4;text-align:right}
@media(max-width:640px){.fkb-slot__carry{display:block}.fkb-slot__carry span{display:block;margin-top:5px;text-align:left}}
.fkb-booking-card.is-duplicate{box-shadow:inset 0 -3px 0 #d98616}
.fkb-booking-card__duplicate{display:inline-flex;margin-top:8px;padding:4px 6px;background:#fff4df;color:#8a5a12;font-size:8px;font-style:normal;font-weight:1000;text-transform:uppercase}
.fkb-detail__duplicate{display:flex;align-items:flex-start;gap:10px;margin:14px 0;padding:11px 12px;border-left:4px solid #d98616;background:#fff7e9;color:#76501b}
.fkb-detail__duplicate strong{font-size:10px;text-transform:uppercase;white-space:nowrap}
.fkb-detail__duplicate span{font-size:10px;line-height:1.4}
.fkb-booking-card.is-overdue:not(.fkb-status-confirmed){background:#fffaf2}
.fkb-booking-card.is-overdue:not(.fkb-status-confirmed)::after{content:"VÁR";position:absolute;right:7px;bottom:38px;padding:3px 5px;background:#d98616;color:#fff;font-size:7px;font-weight:1000;letter-spacing:.08em}
.fkb-no-time{
  margin:14px 16px 18px;
  padding:14px;
  border:1px solid var(--fkb-line);
  background:#f7fbfa;
}
.fkb-no-time h3{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px!important;
  color:var(--fkb-ink)!important;
font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:1.1!important;
  text-transform:uppercase;
}
.fkb-no-time h3 span{
  display:inline-grid;
  place-items:center;
  min-width:28px;
  height:28px;
  padding:0 8px;
  background:var(--fkb-ink);
  color:#fff;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:10px;
  border-radius:999px;
}
.fkb-no-time>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:980px){.fkb-no-time>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.fkb-no-time{margin:10px 12px 14px}.fkb-no-time>div{grid-template-columns:1fr}}

/* === v5 napi használatra optimalizált felület === */
.fkb-portal,
.fkb-portal *,
.fkb-portal-login,
.fkb-portal-login *,
.fkb-portal__modal,
.fkb-portal__modal *,
.fkb-portal__slot-modal,
.fkb-portal__slot-modal *,
.fkb-portal__manual-modal,
.fkb-portal__manual-modal *,
.fkb-toast{
  font-family:system-ui,-apple-system,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-stretch:normal!important;
}
.fkb-portal{
  left:auto!important;
  width:min(1440px,calc(100vw - 32px))!important;
  margin:28px auto 52px!important;
  transform:none!important;
  overflow:visible!important;
  border-radius:22px;
}
.fkb-portal__stripe{border-radius:22px 22px 0 0}
.fkb-portal__header{border-radius:0;overflow:hidden}
.fkb-portal__header h1,
.fkb-daybar__date>strong,
.fkb-location-day__head h2,
.fkb-calendar-head strong,
.fkb-week-head strong,
.fkb-inbox-head h2,
.fkb-detail__top h2,
.fkb-slot-editor h2,
.fkb-manual h2,
.fkb-no-time h3{
  font-family:system-ui,-apple-system,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  letter-spacing:0!important;
}
.fkb-portal__header p{font-family:system-ui,-apple-system,"Segoe UI",Arial,Helvetica,sans-serif!important;font-weight:650!important;letter-spacing:0!important}
.fkb-portal__main-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
.fkb-portal__global-stats{grid-template-columns:repeat(6,minmax(0,1fr))}
.fkb-portal__toolbar{grid-template-columns:minmax(240px,2fr) minmax(140px,.65fr) minmax(170px,.8fr) repeat(4,auto)}
.fkb-portal__primary-action{min-height:46px;padding:0 18px;border:0;background:var(--fkb-ink);color:#fff;font-size:12px;font-weight:900;text-transform:uppercase}
.fkb-portal__primary-action:hover{background:var(--fkb-ink-2)}
.fkb-ops-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}
.fkb-ops-strip button{min-height:102px;padding:14px 15px;border:1px solid var(--fkb-line);background:#fff;color:var(--fkb-copy);text-align:left;box-shadow:0 7px 18px rgba(6,47,51,.04)}
.fkb-ops-strip button:hover{border-color:var(--fkb-teal)}
.fkb-ops-strip button.is-alert{border-color:#e8a2a9;background:#fff6f7}
.fkb-ops-strip button.is-warning{border-color:#e8c68c;background:#fffaf1}
.fkb-ops-strip small{display:block;color:var(--fkb-muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fkb-ops-strip strong{display:block;margin-top:6px;color:var(--fkb-ink);font-size:26px;line-height:1}
.fkb-ops-strip span{display:block;margin-top:7px;color:var(--fkb-muted);font-size:11px;line-height:1.35}
.fkb-chip--utility{border-color:#8eaaa8;background:#f7fbfa;color:var(--fkb-ink)}
.fkb-status-accepted{background:#e9f8ef!important;color:#187444!important}
.fkb-status-waitlist{background:#fff4df!important;color:#8a5a12!important}
.fkb-status-arrived{background:#e2f8ff!important;color:#0b687d!important}
.fkb-status-completed{background:#e7f7ed!important;color:#236f45!important}
.fkb-status-no_show{background:#f2edf5!important;color:#6a4b78!important}
.fkb-booking-card__flags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.fkb-booking-card__assigned,.fkb-booking-card__source,.fkb-booking-card__demo{display:inline-flex;padding:4px 6px;background:#eaf5f4;color:#2e6668;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}
.fkb-booking-card__source{background:#eef1f6;color:#536276}
.fkb-booking-card__demo{background:#fff4df;color:#8a5a12}
.fkb-booking-card__actions{grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}
.fkb-booking-card__actions .is-arrived{background:#e2f8ff;color:#0b687d}
.fkb-slot__head-actions{flex-wrap:wrap}
.fkb-slot__head-actions button.is-accept{background:var(--fkb-success);color:#fff;border-color:var(--fkb-success)}
.fkb-slot-editor__queue{margin:16px 0;padding:14px;border:1px solid var(--fkb-line);background:#f7fbfa}
.fkb-slot-editor__queue header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.fkb-slot-editor__queue h3{margin:0!important;color:var(--fkb-ink)!important;font-size:15px!important;font-weight:900!important}
.fkb-slot-editor__queue header button{min-height:36px;padding:0 12px;border:0;background:var(--fkb-success);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase}
.fkb-slot-editor__queue>div{display:grid;gap:7px}
.fkb-slot-editor__queue>div>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 12px;border:1px solid #d4e2e1;background:#fff;text-align:left}
.fkb-slot-editor__queue strong{font-size:12px;color:var(--fkb-ink)}
.fkb-slot-editor__queue span{font-size:10px;color:var(--fkb-muted)}
.fkb-slot-editor__queue em{grid-column:2;grid-row:1/3;align-self:center;padding:4px 7px;background:#fff2df;color:#9a5d0d;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}
.fkb-slot-editor__queue em.is-accepted{background:#e5f7ec;color:#267247}
.fkb-detail__timeline{margin-top:16px;padding:18px;border:1px solid var(--fkb-line);background:#fff}
.fkb-detail__timeline h3{margin:0 0 12px!important;color:var(--fkb-ink)!important;font-size:17px!important;font-weight:900!important}
.fkb-detail__timeline ol{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.fkb-detail__timeline li{position:relative;padding:0 0 10px 18px;border-bottom:1px solid #edf2f2}
.fkb-detail__timeline li::before{content:"";position:absolute;left:0;top:5px;width:8px;height:8px;border-radius:50%;background:var(--fkb-teal)}
.fkb-detail__timeline li strong{display:block;color:var(--fkb-ink);font-size:12px}
.fkb-detail__timeline li span,.fkb-detail__timeline li small{display:block;margin-top:3px;color:var(--fkb-muted);font-size:10px;line-height:1.35}
.fkb-detail__decision{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.fkb-detail__decision .is-arrived{background:#dff7ff;color:#0c6073}
.fkb-portal__manual-modal{position:fixed;inset:0;z-index:10002;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:.18s ease}
.fkb-portal__manual-modal[hidden]{display:none!important}
.fkb-portal__manual-modal.is-open{opacity:1;visibility:visible}
.fkb-portal__manual-dialog{position:relative;width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;box-shadow:0 25px 80px rgba(0,0,0,.28)}
.fkb-manual{padding:30px}
.fkb-manual h2{margin:6px 0 8px!important;color:var(--fkb-ink)!important;font-size:38px!important;line-height:1!important}
.fkb-manual>p{margin:0 0 18px;color:var(--fkb-muted);font-size:13px;line-height:1.5}
.fkb-manual__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.fkb-manual label{display:block}
.fkb-manual label>span{display:block;margin-bottom:6px;color:var(--fkb-muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fkb-manual input,.fkb-manual select,.fkb-manual textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid #bfd0cf;background:#fff;color:var(--fkb-copy);font-size:13px}
.fkb-manual textarea{min-height:86px;resize:vertical}
.fkb-manual__wide{margin-top:12px}
.fkb-manual__actions{display:flex;justify-content:flex-end;margin-top:16px}
.fkb-manual__actions button{min-height:44px;padding:0 18px;border:0;background:var(--fkb-orange);color:#fff;font-size:11px;font-weight:900;text-transform:uppercase}
.fkb-week-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto 44px;gap:10px;align-items:center;padding:16px 18px;background:var(--fkb-ink);color:#fff}
.fkb-week-head button{min-height:40px;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font-weight:900}
.fkb-week-head>div span{display:block;color:var(--fkb-teal);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.fkb-week-head>div strong{display:block;margin-top:4px;color:#fff;font-size:22px}
.fkb-week-board{display:grid;grid-template-columns:repeat(7,minmax(190px,1fr));gap:10px;margin-top:14px;overflow-x:auto;padding-bottom:6px}
.fkb-week-day{min-width:190px;border:1px solid var(--fkb-line);background:#fff}
.fkb-week-day.is-today{border-color:var(--fkb-teal);box-shadow:inset 0 4px 0 var(--fkb-teal)}
.fkb-week-day>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid var(--fkb-line)}
.fkb-week-day>header span{display:block;color:var(--fkb-muted);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-week-day>header strong{display:block;margin-top:3px;color:var(--fkb-ink);font-size:15px}
.fkb-week-day>header button{padding:5px 7px;border:1px solid #c9d8d7;background:#fff;color:var(--fkb-ink);font-size:8px;font-weight:900;text-transform:uppercase}
.fkb-week-day__stats{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;background:#f6faf9;color:var(--fkb-muted);font-size:9px;font-weight:800}
.fkb-week-location{padding:10px 12px;border-top:1px solid #edf2f2}
.fkb-week-location h4{margin:0 0 7px!important;color:var(--fkb-ink)!important;font-size:11px!important;font-weight:900!important}
.fkb-week-location p{margin:0;color:#8aa0a2;font-size:9px}
.fkb-week-slot{display:grid;gap:2px;width:100%;margin-top:6px;padding:8px;border:1px solid #d9e5e4;background:#fff;text-align:left}
.fkb-week-slot strong{font-size:12px;color:var(--fkb-ink)}
.fkb-week-slot span,.fkb-week-slot small{font-size:9px;color:var(--fkb-muted);line-height:1.25}
.fkb-week-slot.is-blocked{border-color:#e7b3b7;background:#fff7f7}
@media(max-width:1100px){
  .fkb-ops-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fkb-portal__toolbar{grid-template-columns:1fr 1fr 1fr}
  .fkb-portal__primary-action,.fkb-portal__refresh,.fkb-portal__demo-action{width:100%}
}
@media(max-width:900px){
  .fkb-portal{left:auto!important;width:100%!important;margin:0!important;transform:none!important;border-radius:0}
  .fkb-portal__stripe{border-radius:0}
  .fkb-portal__main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-portal__global-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){
  .fkb-portal__main-nav{grid-template-columns:1fr}
  .fkb-ops-strip{grid-template-columns:1fr 1fr}
  .fkb-manual__grid{grid-template-columns:1fr}
  .fkb-portal__manual-modal{padding:8px}
  .fkb-manual{padding:22px 14px}
  .fkb-manual h2{font-size:30px!important}
  .fkb-week-head{grid-template-columns:40px 1fr 40px}
  .fkb-week-head>button:nth-of-type(2){grid-column:1/-1;grid-row:2}
}
@media print{
  body.fkb-print-day *{visibility:hidden!important}
  body.fkb-print-day .fkb-portal,
  body.fkb-print-day .fkb-portal *{visibility:visible!important}
  body.fkb-print-day .fkb-portal{position:absolute!important;left:0!important;top:0!important;width:100%!important;margin:0!important;box-shadow:none!important}
  body.fkb-print-day .fkb-portal__header,
  body.fkb-print-day .fkb-portal__main-nav,
  body.fkb-print-day .fkb-portal__global-stats,
  body.fkb-print-day .fkb-portal__toolbar,
  body.fkb-print-day .fkb-portal__live,
  body.fkb-print-day .fkb-ops-strip,
  body.fkb-print-day .fkb-day-actions,
  body.fkb-print-day .fkb-booking-card__actions,
  body.fkb-print-day .fkb-slot__head-actions{display:none!important}
  body.fkb-print-day .fkb-portal__workspace{padding:0!important}
  body.fkb-print-day .fkb-location-day,body.fkb-print-day .fkb-slot{break-inside:avoid;box-shadow:none!important}
}
.fkb-portal__modal,.fkb-portal__slot-modal,.fkb-portal__manual-modal,.fkb-portal__backdrop,.fkb-toast{
  --fkb-orange:#ff6a00;--fkb-teal:#22d3c5;--fkb-ink:#062f33;--fkb-ink-2:#0a4449;--fkb-paper:#f4f7f6;--fkb-white:#fff;--fkb-copy:#17383b;--fkb-muted:#667d80;--fkb-line:#d8e2e1;--fkb-danger:#c53543;--fkb-success:#25a968;--fkb-warning:#d98616;
}

/* v5.1 – élő beérkező sáv, tömör napi pályaterv és stabil kézi foglalás */
.fkb-portal__modal,
.fkb-portal__slot-modal,
.fkb-portal__manual-modal,
.fkb-toast{
  --fkb-orange:#ff6a00;
  --fkb-teal:#22d3c5;
  --fkb-ink:#062f33;
  --fkb-ink-2:#0a4449;
  --fkb-paper:#f4f7f6;
  --fkb-white:#fff;
  --fkb-copy:#17383b;
  --fkb-muted:#667d80;
  --fkb-line:#d8e2e1;
  --fkb-danger:#c53543;
  --fkb-success:#25a968;
  --fkb-warning:#d98616;
  color:var(--fkb-copy);
}
.fkb-incoming-queue{margin:0 0 18px;border:1px solid #bdd9d6;background:#fff;box-shadow:0 12px 28px rgba(6,47,51,.06)}
.fkb-incoming-queue__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--fkb-line);background:linear-gradient(90deg,#eefaf8,#fff8f2)}
.fkb-incoming-queue__head span{display:block;color:var(--fkb-orange);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.fkb-incoming-queue__head h2{margin:4px 0 0!important;color:var(--fkb-ink)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:24px!important;font-weight:900!important;line-height:1.05!important;letter-spacing:0!important}
.fkb-incoming-queue__head p{margin:6px 0 0;color:var(--fkb-muted);font-size:12px;line-height:1.45}
.fkb-incoming-queue__head button{flex:0 0 auto;min-height:40px;padding:0 14px;border:1px solid var(--fkb-ink);background:#fff;color:var(--fkb-ink);font-size:10px;font-weight:900;text-transform:uppercase}
.fkb-incoming-queue__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(285px,340px);gap:12px;overflow-x:auto;padding:14px;scroll-snap-type:x proximity}
.fkb-incoming-card{display:grid;grid-template-rows:1fr auto;border:1px solid #d3e2e1;background:#fff;scroll-snap-align:start;min-height:190px}
.fkb-incoming-card.is-overdue{border-color:#e8a2a9;box-shadow:inset 4px 0 0 var(--fkb-danger)}
.fkb-incoming-card__open{display:block;width:100%;padding:14px;border:0;background:transparent;text-align:left}
.fkb-incoming-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.fkb-incoming-card__top span{color:var(--fkb-orange);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.fkb-incoming-card__top em{font-size:9px;font-style:normal;font-weight:900;color:var(--fkb-danger)}
.fkb-incoming-card__open>strong{display:block;color:var(--fkb-ink);font-size:17px;line-height:1.2}
.fkb-incoming-card__open>b{display:block;margin-top:7px;color:var(--fkb-copy);font-size:12px}
.fkb-incoming-card__open>small{display:block;margin-top:7px;color:var(--fkb-muted);font-size:11px;line-height:1.4}
.fkb-incoming-card__actions{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--fkb-line)}
.fkb-incoming-card__actions button{min-height:38px;border:0;border-right:1px solid var(--fkb-line);background:#f8fbfa;color:var(--fkb-ink);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-incoming-card__actions button:last-child{border-right:0}.fkb-incoming-card__actions .is-accept{background:#e8f7ee;color:#247046}.fkb-incoming-card__actions .is-reject{background:#fff3f4;color:#9a3741}
.fkb-incoming-empty{grid-column:1/-1;padding:22px;border:1px dashed #c9dcda;background:#f8fbfa}
.fkb-incoming-empty strong{display:block;color:var(--fkb-ink);font-size:14px}.fkb-incoming-empty span{display:block;margin-top:5px;color:var(--fkb-muted);font-size:11px}
.fkb-location-day.is-compact-view{padding-bottom:14px}
.fkb-compact-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}
.fkb-compact-slot{display:grid;gap:8px;min-height:132px;padding:12px;border:1px solid #d4e2e1;background:#fff;text-align:left;transition:.15s ease}
.fkb-compact-slot:hover{transform:translateY(-1px);border-color:var(--fkb-teal);box-shadow:0 8px 18px rgba(6,47,51,.08)}
.fkb-compact-slot.has-pending{box-shadow:inset 0 4px 0 var(--fkb-orange)}
.fkb-compact-slot.is-full{background:#fff7f1;border-color:#edba96}.fkb-compact-slot.is-blocked{background:#fff5f6;border-color:#e4b2b7}
.fkb-compact-slot__top,.fkb-compact-slot__numbers{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fkb-compact-slot__top strong{color:var(--fkb-ink);font-size:19px}.fkb-compact-slot__top span{padding:4px 6px;background:#edf7f5;color:#286a68;font-size:8px;font-weight:900;text-transform:uppercase}
.fkb-compact-slot__numbers b{color:var(--fkb-copy);font-size:11px}.fkb-compact-slot__numbers em{color:var(--fkb-orange);font-size:9px;font-style:normal;font-weight:900}
.fkb-compact-slot>i{display:block;height:5px;overflow:hidden;background:#e8efee}.fkb-compact-slot>i span{display:block;height:100%;background:linear-gradient(90deg,var(--fkb-teal),var(--fkb-orange))}
.fkb-compact-slot__names{color:var(--fkb-muted);font-size:10px;line-height:1.4}.fkb-compact-slot__names small{display:block;margin-top:3px;color:var(--fkb-ink);font-weight:900}
.fkb-manual__error{margin:0 0 14px;padding:12px 14px;border:1px solid #e5aab0;background:#fff3f4;color:#8d2d38;font-size:12px;font-weight:700;line-height:1.45}
.fkb-manual__wide-grid{grid-column:1/-1}
.fkb-manual__capacity{grid-column:1/-1;margin-top:14px;padding:13px 14px;border:1px solid #cbdcda;background:#f8fbfa}
.fkb-manual__capacity strong{display:block;color:var(--fkb-ink);font-size:13px}.fkb-manual__capacity span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:11px;line-height:1.4}
.fkb-manual__capacity.is-good{border-color:#9bd1b0;background:#effaf3}.fkb-manual__capacity.is-error{border-color:#e4a9ae;background:#fff3f4}
.fkb-manual__actions{gap:10px}.fkb-manual__actions button:first-child{background:#edf3f2;color:var(--fkb-ink)}
@media(max-width:1150px){.fkb-compact-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.fkb-compact-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fkb-incoming-queue__head{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.fkb-compact-slot-grid{grid-template-columns:1fr}.fkb-incoming-queue__rail{grid-auto-columns:minmax(270px,88vw)}.fkb-incoming-queue__head h2{font-size:21px!important}}
.fkb-compact-empty{grid-column:1/-1;padding:22px;border:1px dashed #c8d9d7;background:#f8fbfa}
.fkb-compact-empty strong{display:block;color:var(--fkb-ink);font-size:13px}.fkb-compact-empty span{display:block;margin-top:5px;color:var(--fkb-muted);font-size:10px;line-height:1.4}

/* v5.3 – hétfői demo: munkapult, idővonal, ügyfelek, analitika */
.fkb-portal__main-nav{grid-template-columns:repeat(6,minmax(0,1fr))}
.fkb-booking-card.fkb-status-accepted{border-left:4px solid var(--fkb-success)}
.fkb-booking-card.fkb-status-arrived{border-left:4px solid #0b87a3}
.fkb-booking-card.fkb-status-completed{border-left:4px solid #1d7d4b}
.fkb-booking-card.fkb-status-waitlist{border-left:4px solid var(--fkb-warning)}
.fkb-arrivals-strip{margin:0 0 16px;border:1px solid var(--fkb-line);background:#fff}
.fkb-arrivals-strip header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--fkb-line);background:#f5fbfa}
.fkb-arrivals-strip header span{color:var(--fkb-orange);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-arrivals-strip header h2{margin:0!important;color:var(--fkb-ink)!important;font-size:19px!important;font-weight:900!important;line-height:1.1!important}
.fkb-arrivals-strip__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
.fkb-arrival-card{display:grid;gap:5px;padding:12px;border:1px solid #d4e2e1;background:#fff;text-align:left}
.fkb-arrival-card:hover{border-color:var(--fkb-teal)}
.fkb-arrival-card strong{color:var(--fkb-ink);font-size:13px}
.fkb-arrival-card span,.fkb-arrival-card em{color:var(--fkb-muted);font-size:10px;line-height:1.35}
.fkb-arrival-card em{font-style:normal;font-weight:800}
.fkb-arrivals-strip__empty{padding:16px;border-left:4px solid var(--fkb-teal);background:#f7fbfa}
.fkb-arrivals-strip__empty strong{display:block;color:var(--fkb-ink);font-size:13px}.fkb-arrivals-strip__empty span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:11px}
.fkb-timeline{min-width:780px;padding:14px;border-top:1px solid var(--fkb-line);overflow-x:auto}
.fkb-timeline__scale{display:grid;grid-template-columns:repeat(var(--cols),minmax(70px,1fr));gap:4px;margin-bottom:8px}
.fkb-timeline__tick{min-height:42px;padding:6px;border:1px solid #d6e3e2;background:#f8fbfa;text-align:left}
.fkb-timeline__tick strong{display:block;color:var(--fkb-ink);font-size:11px}.fkb-timeline__tick span{display:block;margin-top:3px;color:var(--fkb-muted);font-size:8px}
.fkb-timeline__tick.is-full{background:#fff7f1;border-color:#edba96}.fkb-timeline__tick.is-blocked{background:#fff3f4;border-color:#e2aeb5}
.fkb-timeline__lane{display:grid;grid-template-columns:repeat(var(--cols),minmax(70px,1fr));grid-auto-rows:minmax(62px,auto);gap:6px;align-items:stretch}
.fkb-timeline__block{grid-column:var(--start)/span var(--span);display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:1px solid #cfe0df;background:#fff;text-align:left;box-shadow:0 6px 14px rgba(6,47,51,.06)}
.fkb-timeline__block strong{overflow:hidden;color:var(--fkb-ink);font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.fkb-timeline__block span{overflow:hidden;color:var(--fkb-muted);font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.fkb-timeline__block em{justify-self:start;padding:3px 6px;background:#edf5f4;color:#2a6c66;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}
.fkb-timeline__block.fkb-status-new,.fkb-timeline__block.fkb-status-contacted,.fkb-timeline__block.fkb-status-waitlist{border-top:4px solid var(--fkb-orange)}
.fkb-timeline__block.fkb-status-accepted,.fkb-timeline__block.fkb-status-confirmed,.fkb-timeline__block.fkb-status-arrived{border-top:4px solid var(--fkb-success)}
.fkb-timeline__block.is-private,.fkb-timeline__block.is-exclusive{background:#062f33;color:#fff;border-color:#062f33}
.fkb-timeline__block.is-private strong,.fkb-timeline__block.is-private span,.fkb-timeline__block.is-exclusive strong,.fkb-timeline__block.is-exclusive span{color:#fff}
.fkb-timeline__block.is-blocked{background:#fff3f4;border-color:#e0a9b0;color:#8e2330}
.fkb-timeline__empty{grid-column:1/-1;padding:18px;border:1px dashed #c8d9d7;background:#f8fbfa;color:var(--fkb-muted);font-size:12px}
.fkb-calendar-switch{display:flex;gap:8px;margin-bottom:12px;padding:10px;border:1px solid var(--fkb-line);background:#fff}
.fkb-calendar-switch button{min-height:36px;padding:0 14px;border:1px solid #c7d8d6;background:#fff;color:var(--fkb-ink);font-size:10px;font-weight:900;text-transform:uppercase}
.fkb-calendar-switch button.is-active{background:var(--fkb-orange);border-color:var(--fkb-orange);color:#fff}
.fkb-daybar--calendar{margin-bottom:12px}
.fkb-module-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;background:var(--fkb-ink);color:#fff}
.fkb-module-head span{display:block;color:var(--fkb-teal);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-module-head h2{margin:4px 0 0!important;color:#fff!important;font-size:25px!important;font-weight:900!important;line-height:1.05!important}
.fkb-module-head a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.25);color:#fff!important;text-decoration:none!important;font-size:10px;font-weight:900;text-transform:uppercase}
.fkb-bookings-table{padding-top:14px;overflow-x:auto}
.fkb-bookings-table table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--fkb-line)}
.fkb-bookings-table th{padding:11px 12px;background:#eef5f4;color:var(--fkb-muted);font-size:9px;font-weight:900;text-align:left;text-transform:uppercase}
.fkb-bookings-table td{padding:12px;border-top:1px solid #edf2f2;vertical-align:top}
.fkb-bookings-table strong{display:block;color:var(--fkb-ink);font-size:12px}.fkb-bookings-table span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:10px;line-height:1.35}
.fkb-bookings-table em{display:inline-flex;padding:5px 7px;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}
.fkb-bookings-table button{min-height:32px;padding:0 10px;border:1px solid #bfd0cf;background:#fff;color:var(--fkb-ink);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-customers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:14px}
.fkb-customer-card{padding:15px;border:1px solid var(--fkb-line);background:#fff}
.fkb-customer-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.fkb-customer-card header strong{display:block;color:var(--fkb-ink);font-size:15px}.fkb-customer-card header span{display:block;margin-top:4px;color:var(--fkb-muted);font-size:10px;line-height:1.35}
.fkb-customer-card header b{flex:0 0 auto;padding:5px 7px;background:#eef7f5;color:#226d65;font-size:9px;text-transform:uppercase}
.fkb-customer-card__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0}
.fkb-customer-card__stats span{padding:9px;background:#f7fbfa;color:var(--fkb-muted);font-size:9px;line-height:1.25}.fkb-customer-card__stats strong{display:block;color:var(--fkb-ink);font-size:15px}
.fkb-customer-card p{margin:0 0 12px;color:var(--fkb-copy);font-size:11px;line-height:1.45}
.fkb-customer-card button{min-height:34px;padding:0 11px;border:0;background:var(--fkb-ink);color:#fff;font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-analytics{display:grid;gap:14px;padding-top:14px}
.fkb-analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fkb-analytics-kpis article,.fkb-analytics-grid article,.fkb-settings-grid article,.fkb-settings-list{padding:16px;border:1px solid var(--fkb-line);background:#fff}
.fkb-analytics-kpis small,.fkb-settings-grid small{display:block;color:var(--fkb-muted);font-size:9px;font-weight:900;text-transform:uppercase}
.fkb-analytics-kpis strong,.fkb-settings-grid strong{display:block;margin-top:6px;color:var(--fkb-ink);font-size:28px;line-height:1}
.fkb-analytics-kpis span,.fkb-settings-grid span{display:block;margin-top:6px;color:var(--fkb-muted);font-size:11px;line-height:1.35}
.fkb-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fkb-analytics-grid h3,.fkb-settings-list h3{margin:0 0 12px!important;color:var(--fkb-ink)!important;font-size:15px!important;font-weight:900!important}
.fkb-analytics-bar{display:grid;grid-template-columns:150px minmax(0,1fr) 36px;gap:10px;align-items:center;margin-top:8px}
.fkb-analytics-bar span{color:var(--fkb-copy);font-size:11px}.fkb-analytics-bar i{height:8px;background:#e6efee;overflow:hidden}.fkb-analytics-bar b{display:block;height:100%;background:linear-gradient(90deg,var(--fkb-teal),var(--fkb-orange))}.fkb-analytics-bar strong{font-size:11px;text-align:right}
.fkb-settings-panel{display:grid;gap:14px;padding-top:14px}
.fkb-settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fkb-settings-list{display:grid;gap:8px}
.fkb-settings-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #edf2f2}
.fkb-settings-list strong{color:var(--fkb-ink);font-size:12px}.fkb-settings-list span{color:var(--fkb-muted);font-size:11px;text-align:right}
.fkb-settings-link{justify-self:start;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;background:var(--fkb-orange);color:#fff!important;text-decoration:none!important;font-size:10px;font-weight:900;text-transform:uppercase}
.fkb-portal__manual-modal{z-index:99999}
@media(max-width:1180px){
  .fkb-portal__main-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fkb-arrivals-strip__grid,.fkb-customers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-analytics-kpis,.fkb-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .fkb-portal__main-nav,.fkb-arrivals-strip__grid,.fkb-customers,.fkb-analytics-kpis,.fkb-analytics-grid,.fkb-settings-grid{grid-template-columns:1fr}
  .fkb-module-head{align-items:flex-start;flex-direction:column}
  .fkb-calendar-switch{overflow-x:auto}
  .fkb-timeline{min-width:680px}
  .fkb-analytics-bar{grid-template-columns:110px minmax(0,1fr) 30px}
}

/* v5.4 - true fullscreen reception app template */
html:has(body.fkb-portal-app-template){margin:0!important;background:#eef5f4}
body.fkb-portal-app-template{margin:0!important;min-height:100vh;background:#eef5f4!important;overflow-x:hidden;color:#17383b}
body.fkb-portal-app-template #wpadminbar{display:none!important}
body.fkb-portal-app-template .fkb-portal,
body.fkb-portal-app-template .fkb-portal-login,
body.fkb-portal-app-template .fkb-portal-denied{width:100%!important;max-width:none!important;margin:0!important;border-radius:0!important;box-shadow:none!important}
body.fkb-portal-app-template .fkb-portal{min-height:100vh}
body.fkb-portal-app-template .fkb-portal__workspace{max-width:none;margin:0 auto;padding-left:24px;padding-right:24px}
body.fkb-portal-app-template .fkb-portal__header,
body.fkb-portal-app-template .fkb-portal__main-nav,
body.fkb-portal-app-template .fkb-portal__global-stats,
body.fkb-portal-app-template .fkb-portal__toolbar,
body.fkb-portal-app-template .fkb-portal__live{max-width:none}
body.fkb-portal-app-template .fkb-portal *,
body.fkb-portal-app-template .fkb-portal-login *{max-width:none}
@media(max-width:760px){
  body.fkb-portal-app-template .fkb-portal__workspace{padding-left:12px;padding-right:12px}
}

/* v5.4.1 – vertical app navigation and calmer information hierarchy */
body.fkb-portal-app-template{
  --fkb-sidebar-width:256px;
  --fkb-app-bg:#eef3f2;
  --fkb-surface:#ffffff;
  --fkb-surface-soft:#f7faf9;
  --fkb-border:#d9e4e2;
  --fkb-shadow-sm:0 8px 24px rgba(6,47,51,.055);
  --fkb-shadow-md:0 18px 44px rgba(6,47,51,.10);
}
body.fkb-portal-app-template .fkb-portal{
  left:auto!important;
  display:grid;
  grid-template-columns:var(--fkb-sidebar-width) minmax(0,1fr);
  width:100%!important;
  min-height:100vh;
  margin:0!important;
  transform:none!important;
  overflow:visible;
  background:var(--fkb-app-bg);
  box-shadow:none;
}
body.fkb-portal-app-template .fkb-portal__stripe{
  position:fixed;
  z-index:1003;
  top:0;
  left:0;
  right:0;
  height:4px;
}
.fkb-portal__sidebar{
  position:sticky;
  z-index:1000;
  top:0;
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100vh;
  padding:4px 14px 16px;
  overflow-y:auto;
  background:linear-gradient(180deg,#052f33 0%,#073c40 100%);
  color:#fff;
  border-right:1px solid rgba(255,255,255,.06);
}
.fkb-portal__sidebar-brand{
  display:grid;
  gap:5px;
  padding:28px 14px 24px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.fkb-portal__sidebar-brand>span{
  color:var(--fkb-teal);
  font-size:10px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.fkb-portal__sidebar-brand>strong{
  color:#fff;
  font-size:22px;
  font-weight:900;
  line-height:1.05;
}
.fkb-portal__sidebar-brand>small{
  color:#9bbabc;
  font-size:12px;
  font-weight:600;
  line-height:1.35;
}
.fkb-portal__main-nav{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  gap:6px;
  padding:18px 0;
  background:transparent;
  border:0;
}
.fkb-portal__main-nav button{
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  justify-content:stretch;
  gap:11px;
  width:100%;
  min-height:58px;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:#b9cecf;
  text-align:left;
  letter-spacing:0;
  text-transform:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.fkb-portal__main-nav button:hover{
  border-color:rgba(255,255,255,.08);
  background:rgba(255,255,255,.055);
  color:#fff;
  transform:translateX(2px);
}
.fkb-portal__main-nav button:focus-visible{
  outline:3px solid rgba(34,211,197,.34);
  outline-offset:2px;
}
.fkb-portal__main-nav button.is-active{
  border-color:rgba(255,255,255,.12);
  background:#fff;
  color:var(--fkb-ink);
  box-shadow:0 12px 28px rgba(0,0,0,.16),inset 4px 0 0 var(--fkb-orange);
  transform:none;
}
.fkb-portal__main-nav .fkb-nav-icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:9px;
  background:rgba(255,255,255,.055);
  color:var(--fkb-teal);
}
.fkb-portal__main-nav button.is-active .fkb-nav-icon{
  border-color:#dbe8e6;
  background:#edf7f5;
  color:var(--fkb-orange);
}
.fkb-portal__main-nav .fkb-nav-icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.fkb-portal__main-nav .fkb-nav-copy{
  display:grid;
  min-width:0;
  gap:2px;
}
.fkb-portal__main-nav .fkb-nav-copy strong{
  overflow:hidden;
  color:inherit;
  font-size:14px;
  font-weight:850;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fkb-portal__main-nav .fkb-nav-copy small{
  overflow:hidden;
  color:#809fa1;
  font-size:10px;
  font-weight:650;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fkb-portal__main-nav button.is-active .fkb-nav-copy small{color:#638083}
.fkb-portal__sidebar-account{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 12px 0;
  border-top:1px solid rgba(255,255,255,.10);
}
.fkb-portal__sidebar-account div{min-width:0}
.fkb-portal__sidebar-account span{
  display:block;
  color:#7fa2a4;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}
.fkb-portal__sidebar-account strong{
  display:block;
  overflow:hidden;
  margin-top:3px;
  color:#fff;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fkb-portal__sidebar-account a{
  flex:0 0 auto;
  padding:8px 9px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  color:#fff!important;
  text-decoration:none!important;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.fkb-portal__app{
  min-width:0;
  min-height:100vh;
  background:var(--fkb-app-bg);
}
.fkb-portal__topbar{
  position:sticky;
  z-index:80;
  top:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:96px;
  padding:21px 26px 18px;
  border-bottom:1px solid var(--fkb-border);
  background:rgba(255,255,255,.96);
  box-shadow:0 7px 22px rgba(6,47,51,.045);
  backdrop-filter:blur(12px);
}
.fkb-portal__page-heading{min-width:0}
.fkb-portal__page-heading>span{
  display:block;
  color:var(--fkb-orange);
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.fkb-portal__page-heading h1{
  margin:4px 0 0!important;
  color:var(--fkb-ink)!important;
  font-size:clamp(25px,2.1vw,32px)!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.fkb-portal__page-heading p{
  margin:6px 0 0!important;
  color:var(--fkb-muted)!important;
  font-size:13px!important;
  font-weight:550!important;
  line-height:1.4!important;
}
.fkb-portal__topbar-meta{
  display:flex;
  align-items:center;
  gap:9px;
  flex:0 0 auto;
  padding:9px 11px;
  border:1px solid var(--fkb-border);
  border-radius:11px;
  background:var(--fkb-surface-soft);
}
.fkb-portal__user-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--fkb-success);
  box-shadow:0 0 0 5px rgba(37,169,104,.11);
}
.fkb-portal__topbar-meta small{
  display:block;
  color:var(--fkb-muted);
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}
.fkb-portal__topbar-meta strong{
  display:block;
  margin-top:2px;
  color:var(--fkb-ink);
  font-size:12px;
}
.fkb-portal__menu-toggle{
  display:none;
  flex:0 0 auto;
  width:42px;
  height:42px;
  padding:10px;
  border:1px solid var(--fkb-border);
  border-radius:10px;
  background:#fff;
}
.fkb-portal__menu-toggle span{
  display:block;
  height:2px;
  margin:4px 0;
  border-radius:2px;
  background:var(--fkb-ink);
}
.fkb-portal__sidebar-backdrop{
  position:fixed;
  z-index:999;
  inset:0;
  border:0;
  background:rgba(3,27,30,.54);
  backdrop-filter:blur(2px);
}
.fkb-portal__global-stats{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  padding:22px 24px 10px;
}
.fkb-portal__global-stats button{
  min-height:78px;
  padding:13px 14px;
  border:1px solid var(--fkb-border);
  border-radius:12px;
  background:var(--fkb-surface);
  box-shadow:var(--fkb-shadow-sm);
  text-align:left;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.fkb-portal__global-stats button:hover{
  border-color:#aacdca;
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(6,47,51,.08);
}
.fkb-portal__global-stats button.is-active{
  border-color:var(--fkb-teal);
  box-shadow:inset 0 3px 0 var(--fkb-teal),var(--fkb-shadow-sm);
}
.fkb-portal__global-stats button.fkb-stat--priority{
  background:linear-gradient(145deg,#fff 0%,#fff7f1 100%);
  box-shadow:inset 0 3px 0 var(--fkb-orange),var(--fkb-shadow-sm);
}
.fkb-portal__global-stats button.fkb-stat--arrival{
  background:linear-gradient(145deg,#fff 0%,#eef9f3 100%);
  box-shadow:inset 0 3px 0 var(--fkb-success),var(--fkb-shadow-sm);
}
.fkb-portal__global-stats button.fkb-stat--secondary{background:#f9fbfa;box-shadow:none}
.fkb-portal__global-stats span{
  display:block;
  color:var(--fkb-ink);
  font-size:27px;
  font-weight:900;
  line-height:1;
}
.fkb-portal__global-stats small{
  display:block;
  margin-top:8px;
  color:var(--fkb-muted);
  font-size:10px;
  font-weight:850;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.fkb-portal__toolbar{
  display:flex;
  align-items:flex-end;
  gap:10px;
  margin:0 24px;
  padding:13px;
  border:1px solid var(--fkb-border);
  border-radius:14px;
  background:var(--fkb-surface);
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-portal__toolbar label{flex:0 0 160px;min-width:0}
.fkb-portal__toolbar .fkb-portal__search{flex:1 1 320px}
.fkb-portal__toolbar label>span{
  margin-bottom:6px;
  color:#60777a;
  font-size:9px;
  font-weight:850;
  letter-spacing:.07em;
}
.fkb-portal__toolbar input,
.fkb-portal__toolbar select{
  min-height:44px;
  border:1px solid #c8d8d6;
  border-radius:9px;
  background:#fbfdfc;
}
.fkb-portal__toolbar input:focus,
.fkb-portal__toolbar select:focus{
  border-color:var(--fkb-teal);
  background:#fff;
  box-shadow:0 0 0 4px rgba(34,211,197,.12);
}
.fkb-portal__primary-action,
.fkb-portal__refresh,
.fkb-portal__demo-action{
  min-height:44px;
  border-radius:9px;
  padding:0 15px;
  white-space:nowrap;
}
.fkb-portal__primary-action{
  border:1px solid var(--fkb-orange);
  background:var(--fkb-orange);
  color:#fff;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  box-shadow:0 8px 18px rgba(255,106,0,.18);
}
.fkb-portal__refresh{
  border:1px solid #bfd0cf;
  background:#f7faf9;
  color:var(--fkb-ink);
}
.fkb-portal__admin-tools{
  display:flex;
  align-items:center;
  gap:7px;
  margin-left:auto;
  padding-left:10px;
  border-left:1px solid var(--fkb-border);
}
.fkb-portal__demo-action{font-size:9px}
.fkb-portal__live{
  gap:7px;
  padding:9px 26px 14px;
  font-size:10px;
}
.fkb-portal__workspace{
  max-width:none!important;
  padding:0 24px 34px!important;
}
.fkb-view{min-width:0}
.fkb-incoming-queue{
  margin:0 0 20px;
  overflow:hidden;
  border:1px solid var(--fkb-border);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-incoming-queue__head{
  align-items:center;
  padding:19px 20px;
  border-bottom:1px solid var(--fkb-border);
  background:linear-gradient(105deg,#fff 0%,#f5fbfa 70%,#fff8f2 100%);
}
.fkb-incoming-queue__head h2{
  margin-top:4px!important;
  font-size:22px!important;
  letter-spacing:0!important;
}
.fkb-incoming-queue__head p{max-width:760px;font-size:12px}
.fkb-incoming-queue__head button{
  min-height:40px;
  border-radius:9px;
  background:var(--fkb-ink);
  color:#fff;
}
.fkb-incoming-queue__rail{
  display:grid;
  grid-auto-flow:row;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  overflow:visible;
  padding:14px;
  scroll-snap-type:none;
}
.fkb-incoming-card{
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid #d8e4e2;
  border-radius:12px;
  background:#fff;
  scroll-snap-align:none;
  box-shadow:0 5px 15px rgba(6,47,51,.035);
}
.fkb-incoming-card.is-overdue{box-shadow:inset 4px 0 0 var(--fkb-danger),0 5px 15px rgba(6,47,51,.035)}
.fkb-incoming-card__open{padding:15px 16px}
.fkb-incoming-card__open>strong{font-size:16px}
.fkb-incoming-card__open>b{font-size:12px}
.fkb-incoming-card__open>small{font-size:11px}
.fkb-incoming-card__actions{gap:1px;padding:7px;border-top:1px solid var(--fkb-border);background:#f6f9f8}
.fkb-incoming-card__actions button{
  min-height:36px;
  border:0;
  border-radius:7px;
  background:#fff;
  font-size:9px;
}
.fkb-incoming-card__actions .is-accept{background:#e7f7ed}
.fkb-incoming-card__actions .is-reject{background:#fff0f2}
.fkb-arrivals-strip{margin-bottom:20px}
.fkb-arrivals-strip__empty{
  padding:12px 15px;
  border:1px solid #d7e5e3;
  border-left:4px solid var(--fkb-teal);
  border-radius:10px;
  background:#f8fbfa;
}
.fkb-daybar{
  margin-top:24px;
  border-radius:14px;
  background:linear-gradient(105deg,var(--fkb-ink),#0c4d51);
  box-shadow:0 12px 24px rgba(6,47,51,.12);
}
.fkb-ops-strip{
  gap:10px;
  margin-top:14px;
}
.fkb-ops-strip button{
  border-radius:11px;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-day-summary article,
.fkb-location-day,
.fkb-module-head,
.fkb-bookings-table table,
.fkb-customer-card,
.fkb-analytics-kpis article,
.fkb-analytics-grid article,
.fkb-settings-grid article,
.fkb-settings-list{
  border-radius:12px;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-day-actions{
  border-radius:12px;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-chip{border-radius:8px}
.fkb-module-head{
  padding:18px 20px;
  border:1px solid var(--fkb-border);
  background:#fff;
  color:var(--fkb-copy);
}
.fkb-module-head span{color:var(--fkb-orange)}
.fkb-module-head h2{color:var(--fkb-ink)!important;font-size:22px!important;letter-spacing:0!important}
.fkb-module-head a{border-color:#bfd0cf;border-radius:8px;color:var(--fkb-ink)!important;background:#f8fbfa}
.fkb-inbox-head{
  border-radius:12px;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-calendar-switch{
  border-radius:12px;
  box-shadow:var(--fkb-shadow-sm);
}
.fkb-calendar-switch button{border-radius:8px}
.fkb-bookings-table{border-radius:12px}
.fkb-bookings-table table{overflow:hidden}
.fkb-bookings-table th{position:sticky;top:0;z-index:2}
.fkb-portal__modal-dialog,
.fkb-portal__slot-dialog,
.fkb-portal__manual-dialog{border-radius:16px;box-shadow:var(--fkb-shadow-md)}

@media(max-width:1280px){
  .fkb-portal__global-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fkb-portal__toolbar{flex-wrap:wrap}
  .fkb-portal__toolbar .fkb-portal__search{flex:1 1 calc(100% - 350px)}
  .fkb-portal__admin-tools{margin-left:0}
}
@media(max-width:1024px){
  body.fkb-portal-app-template .fkb-portal{display:block}
  .fkb-portal__sidebar{
    position:fixed;
    left:0;
    top:0;
    width:min(290px,86vw);
    transform:translateX(-104%);
    transition:transform .2s ease;
    box-shadow:18px 0 45px rgba(0,0,0,.25);
  }
  .fkb-portal.is-sidebar-open .fkb-portal__sidebar{transform:translateX(0)}
  .fkb-portal__menu-toggle{display:block}
  .fkb-portal__topbar{padding-left:18px;padding-right:18px}
  .fkb-portal__workspace{padding-left:18px!important;padding-right:18px!important}
  .fkb-portal__global-stats{padding-left:18px;padding-right:18px}
  .fkb-portal__toolbar{margin-left:18px;margin-right:18px}
  .fkb-incoming-queue__rail{grid-template-columns:1fr}
}
@media(max-width:760px){
  .fkb-portal__topbar{
    align-items:flex-start;
    min-height:82px;
    padding-top:15px;
    padding-bottom:14px;
  }
  .fkb-portal__topbar-meta{display:none}
  .fkb-portal__page-heading h1{font-size:24px!important}
  .fkb-portal__page-heading p{display:none}
  .fkb-portal__global-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:14px}
  .fkb-portal__global-stats button{min-height:70px;padding:11px 12px}
  .fkb-portal__toolbar{align-items:stretch;gap:8px;padding:10px}
  .fkb-portal__toolbar label,
  .fkb-portal__toolbar .fkb-portal__search{flex:1 1 100%}
  .fkb-portal__primary-action,.fkb-portal__refresh{flex:1 1 calc(50% - 4px)}
  .fkb-portal__admin-tools{width:100%;padding:8px 0 0;border-left:0;border-top:1px solid var(--fkb-border)}
  .fkb-portal__admin-tools>*{flex:1}
  .fkb-portal__workspace{padding-left:12px!important;padding-right:12px!important}
  .fkb-incoming-queue__head{align-items:flex-start;flex-direction:column}
  .fkb-incoming-card__actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fkb-daybar{grid-template-columns:40px minmax(0,1fr) 40px;padding:13px 10px}
  .fkb-daybar__today{grid-column:1/-1;grid-row:2}
  .fkb-daybar__date{grid-template-columns:1fr;gap:4px;text-align:center}
  .fkb-daybar__date>input{width:100%}
}
@media(max-width:460px){
  .fkb-portal__global-stats{grid-template-columns:1fr 1fr}
  .fkb-portal__global-stats span{font-size:24px}
  .fkb-portal__menu-toggle{width:40px;height:40px}
  .fkb-portal__page-heading>span{font-size:9px}
  .fkb-portal__page-heading h1{font-size:21px!important}
}
@media print{
  body.fkb-print-day .fkb-portal__sidebar,
  body.fkb-print-day .fkb-portal__topbar{display:none!important}
  body.fkb-print-day .fkb-portal{display:block!important}
}
/* Reset legacy horizontal-nav span sizing for the new sidebar copy block. */
.fkb-portal__main-nav button .fkb-nav-copy,
.fkb-portal__main-nav button.is-active .fkb-nav-copy{
  width:auto;
  height:auto;
  border:0;
  background:transparent;
  color:inherit;
  font-size:inherit;
  place-items:initial;
}

/* v5.4.2 – typography, sticky navigation and responsive overflow polish */
body.fkb-portal-app-template .fkb-portal,
body.fkb-portal-app-template .fkb-portal button,
body.fkb-portal-app-template .fkb-portal input,
body.fkb-portal-app-template .fkb-portal select,
body.fkb-portal-app-template .fkb-portal textarea{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
  font-optical-sizing:auto;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body.fkb-portal-app-template .fkb-portal{
  font-size:15px;
  line-height:1.45;
}

/* Keep the navigation visible without allowing it to drift with the document. */
.fkb-portal__sidebar{
  position:sticky;
  top:4px;
  align-self:start;
  height:calc(100dvh - 4px);
  max-height:calc(100dvh - 4px);
  overscroll-behavior:contain;
}
.fkb-portal__main-nav .fkb-nav-copy strong{
  font-size:15px;
  font-weight:650;
  letter-spacing:-.01em;
}
.fkb-portal__main-nav .fkb-nav-copy small{
  font-size:11px;
  font-weight:450;
  line-height:1.3;
}
.fkb-portal__sidebar-brand>span,
.fkb-portal__sidebar-account span{
  font-weight:600;
  letter-spacing:.08em;
}
.fkb-portal__sidebar-brand>strong{font-weight:700;letter-spacing:-.02em}
.fkb-portal__sidebar-brand>small{font-weight:400}
.fkb-portal__sidebar-account strong{font-weight:600}
.fkb-portal__sidebar-account a{font-weight:650;letter-spacing:0;text-transform:none}

/* Modern, calmer hierarchy: use weight only where it carries meaning. */
.fkb-portal__page-heading>span,
.fkb-incoming-queue__head span,
.fkb-module-head span,
.fkb-detail__eyebrow,
.fkb-location-day__head>div:first-child>span,
.fkb-day-summary small,
.fkb-analytics-kpis small,
.fkb-settings-grid small{
  font-weight:600!important;
  letter-spacing:.06em!important;
}
.fkb-portal__page-heading h1,
.fkb-incoming-queue__head h2,
.fkb-module-head h2,
.fkb-location-day__head h2,
.fkb-inbox-head h2,
.fkb-inbox-day>header h2,
.fkb-slot-editor h2,
.fkb-calendar-head strong,
.fkb-week-head strong{
  font-weight:700!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}
.fkb-portal__page-heading p,
.fkb-incoming-queue__head p,
.fkb-location-day__head p{
  font-weight:400!important;
}
.fkb-portal__global-stats span,
.fkb-day-summary strong,
.fkb-analytics-kpis strong,
.fkb-settings-grid strong,
.fkb-location-day__numbers strong,
.fkb-slot__time strong,
.fkb-slot__capacity strong{
  font-weight:700!important;
  letter-spacing:-.025em;
}
.fkb-portal__global-stats small,
.fkb-portal__toolbar label>span,
.fkb-chip,
.fkb-toggle,
.fkb-booking-card__id,
.fkb-booking-card__status,
.fkb-booking-card__actions button,
.fkb-incoming-card__top span,
.fkb-incoming-card__top em,
.fkb-incoming-card__actions button,
.fkb-bookings-table th,
.fkb-bookings-table em,
.fkb-bookings-table button,
.fkb-calendar-switch button,
.fkb-location-day__head>button,
.fkb-slot__head-actions>button,
.fkb-slot__note,
.fkb-detail__status-pill,
.fkb-detail__decision button,
.fkb-detail__save,
.fkb-manual label>span,
.fkb-manual__actions button{
  font-weight:600!important;
  letter-spacing:0!important;
}
.fkb-portal__global-stats small,
.fkb-chip,
.fkb-booking-card__actions button,
.fkb-incoming-card__actions button,
.fkb-bookings-table button,
.fkb-location-day__head>button,
.fkb-detail__decision button,
.fkb-detail__save,
.fkb-manual__actions button{
  text-transform:none!important;
}
.fkb-booking-card__name,
.fkb-incoming-card__open>strong,
.fkb-detail__hero strong,
.fkb-customer-card strong,
.fkb-arrival-card strong{
  font-weight:650!important;
  letter-spacing:-.01em;
}
.fkb-booking-card__meta,
.fkb-booking-card__open small,
.fkb-incoming-card__open>small,
.fkb-detail__row strong,
.fkb-detail__timeline li span,
.fkb-detail__timeline li small{
  font-weight:400!important;
}

/* Date controls and lane containers must shrink inside the app instead of escaping it. */
.fkb-daybar,
.fkb-daybar__date,
.fkb-day-board,
.fkb-location-day,
.fkb-location-day__head,
.fkb-location-day__slots,
.fkb-timeline,
.fkb-week-board,
.fkb-month-grid{
  min-width:0;
  max-width:100%;
}
.fkb-daybar{
  grid-template-columns:44px minmax(0,1fr) auto 44px;
  overflow:hidden;
}
.fkb-daybar__date{
  grid-template-columns:minmax(0,1fr) minmax(138px,auto);
  grid-template-areas:"weekday picker" "title picker";
  column-gap:16px;
  row-gap:4px;
}
.fkb-daybar__date>span{
  grid-area:weekday;
  font-weight:600;
  letter-spacing:.06em;
}
.fkb-daybar__date>strong{
  grid-area:title;
  min-width:0;
  font-size:clamp(21px,1.8vw,27px);
  font-weight:700;
  letter-spacing:-.025em;
  text-transform:none;
}
.fkb-daybar__date>input{
  grid-area:picker;
  width:100%;
  min-width:138px;
  max-width:170px;
  justify-self:end;
  border-radius:8px;
}
.fkb-daybar__today{
  min-width:56px;
  padding-inline:14px;
  font-weight:650;
  text-transform:none;
}
.fkb-location-day{
  overflow:hidden;
}
.fkb-location-day__head{
  grid-template-columns:minmax(0,1fr) auto auto;
}
.fkb-location-day__head>*{min-width:0}
.fkb-location-day__numbers{white-space:nowrap}
.fkb-location-day__head>button{
  max-width:100%;
  white-space:normal;
  line-height:1.25;
}
.fkb-timeline{
  width:100%;
  min-width:0!important;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  scrollbar-gutter:stable;
}
.fkb-timeline__scale,
.fkb-timeline__lane{
  width:max-content;
  min-width:100%;
}
.fkb-day-actions{
  min-width:0;
  overflow:hidden;
}
.fkb-chip{white-space:nowrap}

/* App cards need breathing room, but should not become typographic billboards. */
.fkb-portal__global-stats button{padding:15px 16px}
.fkb-portal__global-stats span{font-size:26px}
.fkb-portal__global-stats small{font-size:11px;line-height:1.35}
.fkb-incoming-card__open>strong{font-size:16px;line-height:1.3}
.fkb-incoming-card__open>b{font-size:13px;font-weight:600}
.fkb-incoming-card__open>small{font-size:12px;line-height:1.45}
.fkb-incoming-card__actions button{font-size:11px}
.fkb-chip{font-size:12px}
.fkb-toggle{font-size:12px;font-weight:500!important}
.fkb-bookings-table th{font-size:11px}
.fkb-bookings-table td{font-size:13px;line-height:1.4}

@media(max-width:1360px){
  .fkb-location-day__head{
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px 18px;
  }
  .fkb-location-day__head>button{
    grid-column:1/-1;
    justify-self:start;
  }
  .fkb-day-actions{gap:7px}
  .fkb-chip{min-height:38px}
}
@media(max-width:1180px){
  .fkb-daybar{
    grid-template-columns:42px minmax(0,1fr) 42px;
  }
  .fkb-daybar__today{
    grid-column:1/-1;
    grid-row:2;
    justify-self:center;
    min-height:36px;
  }
  .fkb-daybar__date{grid-column:2;grid-row:1}
  .fkb-daybar>.fkb-daybar__nav:first-child{grid-column:1;grid-row:1}
  .fkb-daybar>.fkb-daybar__nav:last-child{grid-column:3;grid-row:1}
}
@media(max-width:1024px){
  .fkb-portal__sidebar{
    position:fixed;
    top:0;
    height:100dvh;
    max-height:100dvh;
  }
}
@media(max-width:760px){
  .fkb-daybar{
    grid-template-columns:40px minmax(0,1fr) 40px;
    gap:8px;
    padding:12px 10px;
  }
  .fkb-daybar__date{
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"weekday" "title" "picker";
    gap:5px;
    text-align:center;
  }
  .fkb-daybar__date>strong{
    font-size:20px;
    white-space:normal;
  }
  .fkb-daybar__date>input{
    width:min(100%,190px);
    min-width:0;
    justify-self:center;
  }
  .fkb-location-day__head{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
  }
  .fkb-location-day__numbers{text-align:left;white-space:normal}
  .fkb-location-day__head>button{grid-column:auto}
}

/* Standardized modern weight scale: 400 / 500 / 600 / 700 only. */
body.fkb-portal-app-template .fkb-portal h1,
body.fkb-portal-app-template .fkb-portal h2{font-weight:700!important}
body.fkb-portal-app-template .fkb-portal h3,
body.fkb-portal-app-template .fkb-portal h4,
body.fkb-portal-app-template .fkb-portal strong,
body.fkb-portal-app-template .fkb-portal b{font-weight:650!important}
body.fkb-portal-app-template .fkb-portal button,
body.fkb-portal-app-template .fkb-portal label{font-weight:550!important}
body.fkb-portal-app-template .fkb-portal small,
body.fkb-portal-app-template .fkb-portal p{font-weight:400!important}

/* v5.4.3 – dedicated receptionist sign-in */
body.fkb-portal-app-template:has(.fkb-login-screen){
  margin:0!important;
  min-height:100dvh;
  overflow-x:hidden;
  background:#edf3f2!important;
}
body.fkb-portal-app-template:has(.fkb-login-screen) #wpadminbar{display:none!important}
body.fkb-portal-app-template:has(.fkb-login-screen) html{margin-top:0!important}
.fkb-login-screen,
.fkb-login-screen *{box-sizing:border-box}
.fkb-login-screen{
  --fkb-login-ink:#063a3e;
  --fkb-login-ink-deep:#042f33;
  --fkb-login-teal:#22d3c5;
  --fkb-login-orange:#ff6a00;
  --fkb-login-bg:#edf3f2;
  --fkb-login-line:#d5e1df;
  --fkb-login-copy:#193b3e;
  --fkb-login-muted:#6a7f81;
  position:relative;
  display:grid;
  grid-template-columns:minmax(420px,1.05fr) minmax(440px,.95fr);
  width:100%;
  min-height:100dvh;
  margin:0;
  overflow:hidden;
  background:var(--fkb-login-bg);
  color:var(--fkb-login-copy);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
.fkb-login-screen__stripe{
  position:absolute;
  inset:0 0 auto;
  z-index:5;
  height:7px;
  background:repeating-linear-gradient(90deg,var(--fkb-login-orange) 0 42px,var(--fkb-login-ink-deep) 42px 48px,var(--fkb-login-teal) 48px 90px,var(--fkb-login-ink-deep) 90px 96px);
}
.fkb-login-screen__brand{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:0;
  padding:clamp(52px,6vw,92px) clamp(34px,5.5vw,96px) 38px;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 12%,rgba(34,211,197,.15),transparent 34%),
    linear-gradient(145deg,var(--fkb-login-ink-deep),var(--fkb-login-ink));
  color:#fff;
}
.fkb-login-screen__brand::after{
  content:"";
  position:absolute;
  right:-110px;
  bottom:-130px;
  width:360px;
  height:360px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.018);
}
.fkb-login-screen__brand-inner{position:relative;z-index:1;max-width:650px}
.fkb-login-screen__eyebrow,
.fkb-login-card__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border:1px solid rgba(34,211,197,.55);
  border-radius:999px;
  color:var(--fkb-login-teal);
  font-size:12px;
  font-weight:650;
  letter-spacing:.045em;
}
.fkb-login-screen__brand h1{
  max-width:680px;
  margin:24px 0 0!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:clamp(44px,5.7vw,86px)!important;
  font-weight:720!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  text-transform:none!important;
}
.fkb-login-screen__brand-inner>p{
  max-width:600px;
  margin:22px 0 0!important;
  color:rgba(255,255,255,.78)!important;
  font-size:clamp(16px,1.4vw,20px)!important;
  font-weight:400!important;
  line-height:1.55!important;
}
.fkb-login-screen__features{
  display:grid;
  gap:12px;
  max-width:620px;
  margin-top:clamp(38px,6vh,70px);
}
.fkb-login-screen__features>div{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  column-gap:14px;
  row-gap:3px;
  align-items:center;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(255,255,255,.045);
  backdrop-filter:blur(6px);
}
.fkb-login-screen__features span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  background:rgba(34,211,197,.12);
  color:var(--fkb-login-teal);
  font-size:12px;
  font-weight:700;
}
.fkb-login-screen__features strong{color:#fff;font-size:15px;font-weight:650;line-height:1.25}
.fkb-login-screen__features small{color:rgba(255,255,255,.62);font-size:13px;font-weight:400;line-height:1.45}
.fkb-login-screen__brand-footer{position:relative;z-index:1;color:rgba(255,255,255,.5);font-size:12px;font-weight:550;letter-spacing:.06em}
.fkb-login-screen__form-side{
  display:grid;
  place-items:center;
  min-width:0;
  padding:clamp(32px,5vw,78px);
  background:
    linear-gradient(rgba(255,255,255,.74),rgba(255,255,255,.74)),
    radial-gradient(circle at 16% 14%,rgba(34,211,197,.14),transparent 26%);
}
.fkb-login-card{
  width:min(100%,500px);
  padding:clamp(28px,4vw,48px);
  border:1px solid rgba(6,58,62,.1);
  border-radius:22px;
  background:rgba(255,255,255,.94);
  box-shadow:0 28px 80px rgba(4,47,51,.12);
}
.fkb-login-card__eyebrow{border-color:#b5dfdc;color:#177e78;background:#f3fbfa}
.fkb-login-card h2{
  margin:20px 0 0!important;
  color:var(--fkb-login-ink-deep)!important;
  font-family:inherit!important;
  font-size:clamp(34px,4vw,50px)!important;
  font-weight:710!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  text-transform:none!important;
}
.fkb-login-card__intro{margin:12px 0 0!important;color:var(--fkb-login-muted)!important;font-size:15px!important;font-weight:400!important;line-height:1.55!important}
.fkb-login-message{margin-top:20px;padding:13px 15px;border-radius:11px;font-size:14px;font-weight:550;line-height:1.45}
.fkb-login-message.is-error{border:1px solid #efb6bc;background:#fff1f2;color:#932d39}
.fkb-login-message.is-success{border:1px solid #a8ddbf;background:#effbf4;color:#196c43}
.fkb-login-form{display:grid;gap:19px;margin-top:28px}
.fkb-login-form>label{display:grid;gap:8px;margin:0;color:var(--fkb-login-copy);font-size:14px;font-weight:600}
.fkb-login-form input[type="text"],
.fkb-login-form input[type="password"]{
  width:100%;
  min-height:52px;
  margin:0;
  padding:0 15px;
  border:1px solid #c8d6d4;
  border-radius:11px;
  outline:0;
  background:#fff;
  color:var(--fkb-login-copy);
  font-size:16px;
  font-weight:450;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.fkb-login-form input[type="text"]:focus,
.fkb-login-form input[type="password"]:focus{border-color:#1ab9ae;box-shadow:0 0 0 4px rgba(34,211,197,.13)}
.fkb-login-form__password-wrap{position:relative;display:block}
.fkb-login-form__password-wrap input{padding-right:78px!important}
.fkb-login-form__password-toggle{
  position:absolute;
  top:50%;
  right:7px;
  min-width:62px;
  min-height:38px;
  padding:0 10px;
  transform:translateY(-50%);
  border:0;
  border-radius:8px;
  background:#edf5f4;
  color:#22696a;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}
.fkb-login-form__password-toggle:hover{background:#e1f1ef}
.fkb-login-form__options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:-2px}
.fkb-login-form__remember{display:flex!important;align-items:center;gap:9px!important;color:var(--fkb-login-muted)!important;font-size:13px!important;font-weight:500!important;cursor:pointer}
.fkb-login-form__remember input{width:17px;height:17px;margin:0;accent-color:var(--fkb-login-orange)}
.fkb-login-form__options a{color:#196f70!important;font-size:13px;font-weight:600;text-decoration:none!important}
.fkb-login-form__options a:hover{text-decoration:underline!important}
.fkb-login-form__submit{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:54px;
  padding:0 18px;
  border:0;
  border-radius:11px;
  background:var(--fkb-login-orange);
  color:#fff;
  font-size:15px;
  font-weight:650;
  cursor:pointer;
  box-shadow:0 12px 26px rgba(255,106,0,.22);
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.fkb-login-form__submit:hover{transform:translateY(-1px);background:#ed6200;box-shadow:0 15px 30px rgba(255,106,0,.27)}
.fkb-login-form__submit:focus-visible{outline:3px solid rgba(255,106,0,.25);outline-offset:3px}
.fkb-login-form__submit span{font-size:22px;font-weight:400;line-height:1}
.fkb-login-card__help{margin:24px 0 0!important;padding-top:20px;border-top:1px solid var(--fkb-login-line);color:var(--fkb-login-muted)!important;font-size:12px!important;font-weight:400!important;line-height:1.55!important}
.fkb-login-card__help strong{color:var(--fkb-login-copy);font-weight:650}

@media(max-width:920px){
  .fkb-login-screen{grid-template-columns:1fr}
  .fkb-login-screen__brand{min-height:auto;padding:54px 28px 38px}
  .fkb-login-screen__brand h1{font-size:clamp(42px,10vw,64px)!important}
  .fkb-login-screen__features{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:32px}
  .fkb-login-screen__features>div{grid-template-columns:1fr;padding:13px;align-content:start}
  .fkb-login-screen__features span{grid-row:auto;width:36px;height:36px;margin-bottom:5px}
  .fkb-login-screen__features small{font-size:12px}
  .fkb-login-screen__brand-footer{margin-top:30px}
  .fkb-login-screen__form-side{padding:38px 22px 50px}
}
@media(max-width:620px){
  .fkb-login-screen__brand{padding:46px 18px 30px}
  .fkb-login-screen__brand-inner>p{font-size:15px!important}
  .fkb-login-screen__features{grid-template-columns:1fr}
  .fkb-login-screen__features>div{grid-template-columns:42px minmax(0,1fr)}
  .fkb-login-screen__features span{grid-row:1/3;margin:0}
  .fkb-login-screen__form-side{padding:24px 12px 38px}
  .fkb-login-card{padding:25px 18px;border-radius:17px}
  .fkb-login-card h2{font-size:36px!important}
  .fkb-login-form__options{align-items:flex-start;flex-direction:column;gap:12px}
}

/* Compatibility fallback for the dedicated login template. */
body.fkb-portal-login-template{
  margin:0!important;
  min-height:100dvh;
  overflow-x:hidden;
  background:#edf3f2!important;
}
body.fkb-portal-login-template #wpadminbar{display:none!important}
html:has(body.fkb-portal-login-template){margin-top:0!important}
.fkb-portal-denied a{display:inline-flex;margin-top:16px;color:#7e2130!important;font-weight:650;text-decoration:underline!important}
