:root{--t24-navy:#17364b;--t24-blue:#2d7890;--t24-light:#edf5f5;--t24-yellow:#ffd34e;--t24-shadow:0 24px 70px rgba(18,54,75,.22)}
.t24-sepru-app,.t24-sepru-app *{box-sizing:border-box}.t24-sepru-app{font-family:inherit;color:var(--t24-navy)}
.t24-sepru-hero{width:100%;height:100%;min-height:360px;display:flex;align-items:center;justify-content:center;position:relative;z-index:4;pointer-events:none}
.t24-sepru-character{appearance:none;border:0;background:transparent;padding:0;width:min(430px,100%);cursor:pointer;position:relative;pointer-events:auto;transform-origin:50% 85%;opacity:0;filter:drop-shadow(0 20px 26px rgba(23,54,75,.16))}
.t24-sepru-character.is-arriving{animation:t24FlyIn 1.8s cubic-bezier(.16,.78,.22,1) forwards}
.t24-sepru-character.is-ready{opacity:1;animation:t24Float 4.2s ease-in-out infinite}
.t24-sepru-character.is-dancing{animation:t24Dance 1.25s ease-in-out!important}
.t24-sepru-character:hover{filter:drop-shadow(0 24px 32px rgba(23,54,75,.24))}.t24-broom-svg{display:block;width:100%;height:auto;overflow:visible}
.t24-sepru-hint{position:absolute;left:50%;bottom:2%;transform:translateX(-50%) translateY(10px);background:#fff;border:1px solid rgba(23,54,75,.12);border-radius:999px;padding:9px 15px;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 10px 28px rgba(23,54,75,.12);opacity:0;transition:.25s}
.t24-sepru-character:hover .t24-sepru-hint,.t24-sepru-character:focus-visible .t24-sepru-hint{opacity:1;transform:translateX(-50%) translateY(0)}
.t24-broom-arm{transform-box:fill-box;transform-origin:20% 78%;animation:t24Wave 2.6s ease-in-out infinite}.t24-broom-hand{transform-box:fill-box;transform-origin:center;animation:t24HandWave 1.3s ease-in-out infinite}
.t24-eye-right{transform-box:fill-box;transform-origin:center;animation:t24Blink 5.4s infinite}.t24-broom-sparkles{animation:t24Sparkle 2.1s ease-in-out infinite;transform-origin:center}.t24-broom-body{animation:t24BodyBreath 3.3s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.t24-sepru-fly-trail{position:absolute;inset:44% 78% auto auto;width:120px;height:70px;opacity:0}.is-arriving .t24-sepru-fly-trail{animation:t24Trail 1.2s .15s both}.t24-sepru-fly-trail i{position:absolute;height:3px;border-radius:9px;background:linear-gradient(90deg,transparent,var(--t24-blue));right:0}.t24-sepru-fly-trail i:nth-child(1){width:110px;top:5px}.t24-sepru-fly-trail i:nth-child(2){width:78px;top:31px}.t24-sepru-fly-trail i:nth-child(3){width:94px;top:57px}
.t24-sepru-panel{position:fixed;z-index:999999;width:min(390px,calc(100vw - 28px));max-height:min(650px,calc(100vh - 32px));right:24px;bottom:24px;background:#fff;border:1px solid rgba(23,54,75,.12);border-radius:26px;box-shadow:var(--t24-shadow);padding:18px;opacity:0;visibility:hidden;transform:translateY(18px) scale(.96);transition:.28s ease;overflow:auto}.t24-sepru-panel.is-open{opacity:1;visibility:visible;transform:none}.t24-sepru-panel.is-public.on-hero{position:absolute;right:6%;bottom:9%;width:min(370px,44vw)}
.t24-sepru-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}.t24-sepru-panel-head strong,.t24-sepru-panel-head span{display:block}.t24-sepru-panel-head strong{font-size:20px}.t24-sepru-panel-head span{font-size:13px;opacity:.72;margin-top:3px}.t24-sepru-panel-close{border:0;background:#edf4f5;width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:22px;color:var(--t24-navy)}
.t24-sepru-greeting{padding:12px 14px;background:#f4f9f9;border-radius:16px;margin-bottom:12px}.t24-sepru-greeting b,.t24-sepru-greeting span{display:block}.t24-sepru-greeting span{font-size:13px;margin-top:3px;opacity:.76}
.t24-sepru-actions{display:grid;gap:9px}.t24-sepru-action{display:grid;grid-template-columns:38px 1fr;column-gap:9px;align-items:center;text-align:left;padding:12px;border:1px solid rgba(23,54,75,.12);border-radius:16px;background:#fff;color:var(--t24-navy);text-decoration:none;cursor:pointer}.t24-sepru-action>span{grid-row:1/3;font-size:23px}.t24-sepru-action b,.t24-sepru-action small{display:block}.t24-sepru-action small{opacity:.68}.t24-sepru-action:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,54,75,.1)}.t24-sepru-action.t24-primary{background:var(--t24-navy);color:#fff;border-color:var(--t24-navy)}
.t24-sepru-form{display:none;margin-top:12px;padding-top:12px;border-top:1px solid rgba(23,54,75,.1)}.t24-sepru-form.is-open{display:block}.t24-sepru-form label{display:block;font-size:13px;font-weight:800;margin:10px 0}.t24-sepru-form input,.t24-sepru-form textarea{width:100%;margin-top:5px;border:1px solid rgba(23,54,75,.18);border-radius:12px;padding:10px 12px;font:inherit}.t24-sepru-submit{width:100%;border:0;border-radius:13px;padding:12px;background:var(--t24-blue);color:#fff;font-weight:800;cursor:pointer}.t24-sepru-hp{position:absolute!important;left:-9999px!important}.t24-sepru-status{font-size:13px;margin-top:8px}
.t24-sepru-dock{position:fixed;right:20px;bottom:20px;z-index:999998;opacity:0;visibility:hidden;transform:translateY(15px);transition:.25s}.t24-sepru-dock.is-visible{opacity:1;visibility:visible;transform:none}.t24-sepru-launcher{border:0;background:#fff;border-radius:999px;padding:6px 16px 6px 7px;display:flex;align-items:center;gap:9px;box-shadow:0 12px 32px rgba(23,54,75,.2);font:inherit;font-weight:800;color:var(--t24-navy);cursor:pointer}.t24-sepru-mini{width:52px;height:52px;display:block}.t24-sepru-mini .t24-broom-svg{width:100%;height:100%}.t24-sepru-badge{min-width:24px;height:24px;border-radius:99px;background:#e63535;color:#fff;display:grid;place-items:center;font-size:12px}
.t24-sepru-internal-alert,.t24-sepru-pending,.t24-sepru-panel-today{padding:12px;border-radius:15px;background:#f2f7f7;margin-bottom:10px}.t24-sepru-internal-alert{background:#fff5d7}.t24-sepru-internal-alert b,.t24-sepru-internal-alert span,.t24-sepru-pending b,.t24-sepru-pending span{display:block}.t24-sepru-panel-task{display:flex;gap:8px;margin-top:8px;font-size:13px}.t24-sepru-no-task{display:block;margin-top:6px;font-size:13px}.t24-sepru-guide summary{cursor:pointer;font-weight:800;padding:10px 0}.t24-sepru-guide-list{display:grid;gap:8px}.t24-sepru-guide-item{display:grid;grid-template-columns:28px 1fr;gap:8px}.t24-sepru-guide-item b,.t24-sepru-guide-item small{display:block}.t24-sepru-guide-item small{opacity:.72;line-height:1.35}
@keyframes t24FlyIn{0%{opacity:0;transform:translate(65vw,-20vh) rotate(28deg) scale(.35)}45%{opacity:1;transform:translate(-24px,18px) rotate(-9deg) scale(1.07)}72%{transform:translate(12px,-10px) rotate(4deg) scale(.98)}100%{opacity:1;transform:none}}
@keyframes t24Float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-16px) rotate(1.5deg)}}@keyframes t24Wave{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg)}50%{transform:rotate(8deg)}75%{transform:rotate(-6deg)}}@keyframes t24HandWave{0%,100%{transform:rotate(0)}50%{transform:rotate(12deg)}}
@keyframes t24Blink{0%,43%,47%,100%{transform:scaleY(1)}44%,46%{transform:scaleY(.08)}}@keyframes t24Sparkle{0%,100%{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}@keyframes t24BodyBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.018)}}@keyframes t24Dance{0%,100%{transform:translateY(0) rotate(0) scale(1)}18%{transform:translateY(-26px) rotate(-9deg) scale(1.04)}36%{transform:translateY(0) rotate(10deg) scale(.98)}55%{transform:translateY(-19px) rotate(-7deg) scale(1.03)}73%{transform:translateY(0) rotate(8deg)}88%{transform:translateY(-8px) rotate(-3deg)}}@keyframes t24Trail{0%{opacity:0;transform:translateX(30px)}30%{opacity:1}100%{opacity:0;transform:translateX(-50px)}}
@media(max-width:900px){.t24-sepru-hero{min-height:310px}.t24-sepru-character{width:min(340px,88vw)}.t24-sepru-panel.is-public.on-hero{position:fixed;right:14px;bottom:14px;width:calc(100vw - 28px)}}
@media(max-width:600px){.t24-sepru-hero{min-height:270px}.t24-sepru-character{width:min(280px,82vw)}.t24-sepru-hint{font-size:12px}.t24-sepru-launcher-text{display:none}.t24-sepru-launcher{padding:5px}.t24-sepru-dock{right:12px;bottom:12px}.t24-sepru-panel{right:10px;bottom:10px;width:calc(100vw - 20px);max-height:calc(100vh - 20px)}}
@media(prefers-reduced-motion:reduce){.t24-sepru-character,.t24-broom-arm,.t24-broom-hand,.t24-eye-right,.t24-broom-sparkles,.t24-broom-body{animation:none!important}.t24-sepru-character{opacity:1!important}}

/* v2.4 – vendég hero-interakció */
.t24-sepru-character.is-playing{opacity:1!important}
.t24-sepru-character.is-dancing{animation:t24DancePro 1.5s cubic-bezier(.4,0,.2,1)!important}
.t24-sepru-character.is-boombox{animation:t24BoomboxBounce .55s ease-in-out infinite!important}
.t24-sepru-character.is-double-wave{animation:t24Float 2.2s ease-in-out infinite!important}
.t24-broom-arm-left-extra,.t24-boombox{opacity:0;pointer-events:none;transform-box:fill-box;transform-origin:center;transition:opacity .2s ease}
.is-double-wave .t24-broom-arm-left-extra{opacity:1;animation:t24LeftWave .72s ease-in-out infinite}
.is-double-wave .t24-broom-arm-right{animation:t24RightWave .72s ease-in-out infinite}
.is-boombox .t24-boombox{opacity:1;animation:t24RadioPulse .45s ease-in-out infinite alternate}
.is-boombox .t24-broom-arm-right{transform:rotate(-34deg) translate(-8px,28px)}
.is-boombox .t24-broom-arm-left-extra{opacity:1;transform:rotate(34deg) translate(8px,28px)}
.is-boombox .t24-music-notes{animation:t24Notes .8s ease-in-out infinite}
.t24-sepru-panel.is-public.on-hero{right:-2%;top:8%;bottom:auto;width:min(285px,34vw);max-height:500px;padding:13px;border-radius:20px;transform:translate(12px,8px) scale(.94);transform-origin:left bottom}
.t24-sepru-panel.is-public.on-hero.is-open{transform:none}
.t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head{margin-bottom:8px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head strong{font-size:16px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head span{font-size:11px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-greeting{padding:9px 10px;margin-bottom:8px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-actions{gap:6px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action{grid-template-columns:30px 1fr;padding:8px 9px;border-radius:12px;column-gap:7px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action>span{font-size:18px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action b{font-size:12px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action small{font-size:10px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-panel-close{width:28px;height:28px;font-size:18px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-form{font-size:12px}
@keyframes t24DancePro{0%,100%{transform:translateY(0) rotate(0) scale(1)}15%{transform:translateY(-20px) rotate(-10deg) scale(1.05)}30%{transform:translateY(2px) rotate(11deg) scale(.98)}48%{transform:translateY(-14px) rotate(-7deg) scale(1.03)}64%{transform:translateY(0) rotate(9deg)}80%{transform:translateY(-8px) rotate(-4deg)}92%{transform:translateY(0) rotate(2deg)}}
@keyframes t24BoomboxBounce{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-18px) rotate(2deg)}}
@keyframes t24RadioPulse{from{transform:scale(.96)}to{transform:scale(1.05)}}
@keyframes t24Notes{0%{opacity:.2;transform:translateY(5px)}50%{opacity:1}100%{opacity:.15;transform:translateY(-12px)}}
@keyframes t24LeftWave{0%,100%{transform:rotate(8deg)}50%{transform:rotate(-18deg)}}
@keyframes t24RightWave{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(18deg)}}
@media(max-width:900px){.t24-sepru-panel.is-public.on-hero{position:absolute;right:0;top:4%;bottom:auto;width:min(260px,72vw)}}
@media(max-width:600px){.t24-sepru-panel.is-public.on-hero{right:2%;top:1%;width:min(235px,78vw);padding:10px}.t24-sepru-panel.is-public.on-hero .t24-sepru-greeting{display:none}}

/* v2.5 – javított, valóban bezárható kompakt hero panel */
.t24-sepru-panel{isolation:isolate}
.t24-sepru-panel-close{position:relative;z-index:20;display:grid;place-items:center;flex:0 0 36px;min-width:36px;min-height:36px;line-height:1;touch-action:manipulation}
.t24-sepru-panel.is-public.on-hero{
  left:72%;
  right:auto;
  top:4%;
  bottom:auto;
  width:min(300px,31vw);
  max-height:430px;
  padding:13px;
  overflow:hidden;
  z-index:30;
  transform:translate(14px,8px) scale(.94);
  transform-origin:left center;
}
.t24-sepru-panel.is-public.on-hero.is-open{transform:translate(0,0) scale(1)}
.t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head{position:sticky;top:0;z-index:10;background:#fff;margin:-2px -2px 8px;padding:2px 2px 6px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-greeting{padding:9px 11px;margin-bottom:8px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-actions{gap:7px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action{padding:9px 10px;border-radius:13px;grid-template-columns:30px 1fr;column-gap:7px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action>span{font-size:18px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action b{font-size:13px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-action small{font-size:10.5px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-form{
  max-height:230px;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:5px;
  scrollbar-width:thin;
}
.t24-sepru-panel.is-public.on-hero.has-form{max-height:470px}
.t24-sepru-panel.is-public.on-hero.has-form .t24-sepru-greeting{display:none}
.t24-sepru-panel.is-public.on-hero.has-form .t24-sepru-actions .t24-sepru-action:not(.t24-message-toggle){display:none}
.t24-sepru-panel.is-public.on-hero .t24-sepru-form label{margin:7px 0;font-size:12px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-form input,
.t24-sepru-panel.is-public.on-hero .t24-sepru-form textarea{padding:8px 9px;border-radius:10px}
.t24-sepru-panel.is-public.on-hero .t24-sepru-submit{padding:10px}
@media (max-width:1100px){
 .t24-sepru-panel.is-public.on-hero{left:64%;top:2%;width:min(285px,36vw)}
}
@media (max-width:900px){
 .t24-sepru-panel.is-public.on-hero{position:fixed;left:auto;right:14px;top:84px;bottom:auto;width:min(300px,calc(100vw - 28px));max-height:calc(100vh - 110px)}
 .t24-sepru-panel.is-public.on-hero.has-form{max-height:calc(100vh - 110px)}
 .t24-sepru-panel.is-public.on-hero .t24-sepru-form{max-height:42vh}
}
@media (max-width:600px){
 .t24-sepru-panel.is-public.on-hero{right:10px;top:72px;width:calc(100vw - 20px);max-height:calc(100vh - 92px)}
 .t24-sepru-panel.is-public.on-hero .t24-sepru-actions{grid-template-columns:1fr}
}


/* v3.0 – külön mobil élmény */
.t24-sepru-sheet-handle{display:none}
@media(max-width:767px){
  .t24-sepru-app.is-mobile .t24-sepru-hero{min-height:250px;align-items:flex-end;padding:8px 0 0;overflow:visible}
  .t24-sepru-app.is-mobile .t24-sepru-character{width:min(250px,72vw);max-width:250px;filter:drop-shadow(0 14px 18px rgba(23,54,75,.16))}
  .t24-sepru-app.is-mobile .t24-sepru-hint{display:none}
  .t24-sepru-app.is-mobile .t24-sepru-panel.is-public.on-hero,
  .t24-sepru-panel.is-public.on-hero{position:fixed!important;left:0!important;right:0!important;top:auto!important;bottom:0!important;width:100%!important;max-width:none!important;max-height:min(78svh,680px)!important;border-radius:24px 24px 0 0!important;padding:10px 16px max(18px,env(safe-area-inset-bottom))!important;overflow:auto!important;z-index:999999!important;opacity:0;visibility:hidden;transform:translateY(105%)!important;transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .2s ease,visibility .2s ease!important;box-shadow:0 -18px 60px rgba(10,31,46,.24)!important}
  .t24-sepru-panel.is-public.on-hero.is-open{opacity:1;visibility:visible;transform:translateY(0)!important}
  .t24-sepru-sheet-handle{display:block;width:46px;height:5px;border-radius:999px;background:rgba(23,54,75,.18);margin:2px auto 10px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head{position:sticky;top:-10px;margin:0 -4px 8px;padding:4px 4px 10px;background:#fff;z-index:12}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head strong{font-size:20px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-panel-head span{font-size:13px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-greeting{display:block;padding:12px 14px;margin-bottom:10px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-actions{gap:9px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-action{grid-template-columns:38px 1fr;padding:12px 13px;border-radius:15px;min-height:64px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-action>span{font-size:23px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-action b{font-size:15px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-action small{font-size:12px}
  .t24-sepru-panel.is-public.on-hero .t24-sepru-form{font-size:14px;max-height:none;overflow:visible}
  .t24-sepru-panel.is-public.on-hero.has-form .t24-sepru-actions .t24-sepru-action:not(.t24-message-toggle){display:none}
  .t24-sepru-panel-close{width:40px;height:40px;min-width:40px;min-height:40px;font-size:24px}
}
@media(max-width:420px){
  .t24-sepru-app.is-mobile .t24-sepru-hero{min-height:220px}
  .t24-sepru-app.is-mobile .t24-sepru-character{width:min(220px,68vw)}
}

/* v3.0.1 – mobil vendégnél nincs elsötétítés */
@media(max-width:767px){
  .t24-sepru-panel.is-public.on-hero{z-index:2147483646!important}
}

/* 3.0.2: nincs sotetito reteg sem asztali, sem mobil nezetben */
.t24-sepru-backdrop{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;backdrop-filter:none!important;background:transparent!important}
html.t24-sheet-open,html.t24-sheet-open body{overflow:auto!important}


/* v3.0.3 – bejelentkezett kollégáknál bal alsó elhelyezés */
.t24-sepru-dock.is-internal{left:20px!important;right:auto!important;bottom:20px!important}
.t24-sepru-panel.is-internal{left:24px!important;right:auto!important;bottom:94px!important;transform-origin:left bottom}
@media(max-width:767px){
  .t24-sepru-app[data-logged-in="1"]{display:none!important}
}
@media(min-width:768px) and (max-width:1024px){
  .t24-sepru-dock.is-internal{left:14px!important;bottom:14px!important}
  .t24-sepru-panel.is-internal{left:14px!important;bottom:86px!important;width:min(390px,calc(100vw - 28px))}
}
