:root{--ip-orange:#ffae00;--ip-orange-deep:#ef9d00;--ip-ink:#171717;--ip-muted:#707070;--ip-bg:#fff;--ip-soft:#fff4cf;--ip-radius:18px}
.ip-widget,.integroo-points-quiz{font-family:Poppins,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box}.ip-widget *,.integroo-points-quiz *{box-sizing:border-box}.ip-widget [hidden],.integroo-points-quiz [hidden]{display:none!important}
.ip-fab{position:fixed;right:18px;bottom:18px;z-index:2147483001;border:0;background:var(--ip-ink);color:#fff;min-width:72px;height:54px;border-radius:999px;padding:0 18px;display:flex;gap:9px;align-items:center;justify-content:center;font:700 16px/1 Poppins,system-ui;box-shadow:0 12px 34px rgba(0,0,0,.25);cursor:pointer;transform-origin:center;will-change:transform}
.ip-fab-dot{width:12px;height:12px;border-radius:50%;background:var(--ip-orange);box-shadow:0 0 0 4px rgba(255,174,0,.16)}

.ip-balance.is-loading{display:inline-block;min-width:20px;color:rgba(255,255,255,.72);letter-spacing:2px;animation:ipBalanceLoading 1.05s ease-in-out infinite}.ip-panel .ip-balance.is-loading{color:#8a8a8a}.ip-panel-balance .ip-pkt-label{white-space:nowrap}@keyframes ipBalanceLoading{0%,100%{opacity:.35}50%{opacity:1}}
.ip-panel{position:fixed;right:18px;bottom:84px;width:min(390px,calc(100vw - 24px));max-height:min(650px,calc(100vh - 110px));overflow:auto;z-index:2147483002;background:#fff;color:var(--ip-ink);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:20px;opacity:0;transform:translateY(10px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.ip-widget[data-state="open"] .ip-panel{opacity:1;transform:none;pointer-events:auto}.ip-panel-head{position:relative;display:block;min-height:44px;padding-right:48px}.ip-eyebrow{font-weight:800;font-size:12px;letter-spacing:.08em;color:#8a5f00}.ip-panel-balance{font-size:34px;font-weight:800;line-height:1.15;margin-top:4px}
.ip-close{position:absolute;top:-4px;right:-4px;width:36px;height:36px;border:0;background:transparent;border-radius:50%;cursor:pointer;color:#666;transition:background .15s ease,color .15s ease,transform .15s ease}.ip-close:before,.ip-close:after{content:"";position:absolute;left:50%;top:50%;width:15px;height:2px;border-radius:99px;background:currentColor;transform-origin:center}.ip-close:before{transform:translate(-50%,-50%) rotate(45deg)}.ip-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.ip-close:hover{background:#f3f3f3;color:#171717}.ip-close:active{transform:scale(.94)}.ip-close:focus-visible{outline:3px solid rgba(255,174,0,.35);outline-offset:2px}
.ip-panel-section{border-top:1px solid #ececec;margin-top:18px;padding-top:16px}.ip-muted{color:var(--ip-muted);font-size:13px;line-height:1.45}.ip-history-row{display:flex;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #f1f1f1;font-size:14px}.ip-history-row strong{color:#8a5f00;min-width:42px}.ip-email-form{display:flex;gap:8px;margin-top:10px}.ip-email-form input{min-width:0;flex:1;border:1px solid #d9d9d9;border-radius:12px;padding:11px 12px;font:inherit}.ip-email-form button{border:0;background:var(--ip-orange);color:#171717;border-radius:12px;font-weight:800;padding:0 15px;cursor:pointer}.ip-email-message{font-size:12px;margin-top:8px;color:#486b14}

.integroo-points-quiz{position:relative;width:min(620px,100%);margin:28px auto;padding:20px;border-radius:24px;background:var(--ip-orange);border:0;overflow:hidden;box-shadow:0 12px 32px rgba(122,82,0,.10)}.ip-quiz-label{display:inline-flex;background:rgba(23,23,23,.92);color:#fff;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:800;letter-spacing:.09em;margin-bottom:14px}.ip-quiz-conversation{display:flex;flex-direction:column;gap:11px;transition:opacity .15s ease}.ip-chat-row{display:flex;width:100%}.ip-chat-row-left{justify-content:flex-start}.ip-chat-bubble{max-width:78%;border-radius:18px;padding:13px 16px;line-height:1.48;box-shadow:0 4px 12px rgba(0,0,0,.08)}.ip-chat-question{background:#fff;color:#171717;font-weight:600;border-bottom-left-radius:7px}
.ip-quiz-answers{display:flex;flex-direction:column;align-items:flex-end;gap:9px;margin-top:1px}.ip-answer{appearance:none;width:auto;max-width:78%;display:flex;gap:7px;align-items:flex-start;text-align:left;border:1px solid rgba(23,23,23,.08);background:#fff3c9;color:#171717;border-radius:18px;border-bottom-right-radius:7px;padding:11px 14px;font:600 14px/1.4 Poppins,system-ui;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.07);transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.ip-answer:hover{background:#fff8df;transform:translateY(-1px);box-shadow:0 7px 16px rgba(0,0,0,.1)}.ip-answer.is-selected{background:#fff;color:#171717;transform:none}.ip-answer:disabled{cursor:default}.ip-answer-letter{font-weight:800;opacity:.55;flex:0 0 auto}.ip-answer-text{min-width:0}.ip-quiz-result{margin-top:1px}.ip-chat-result{background:#fff;color:#171717;border-bottom-left-radius:7px;max-width:78%;box-shadow:0 4px 12px rgba(0,0,0,.08)}.ip-chat-result strong{display:block;font-size:15px;margin-bottom:5px}.ip-result-explanation{margin-top:4px;color:#4c4c4c}.ip-points-earned{display:inline-flex;align-items:center;margin-top:10px;background:#171717;color:#fff;border-radius:999px;padding:7px 11px;font-weight:800}.ip-complete-message{background:#fff;color:#171717}.ip-error{color:#8b1717;background:#fff0f0;border-radius:12px;padding:10px}
.ip-awaiting-state .ip-quiz-conversation{display:none}.ip-awaiting-state:after{content:"Ładowanie quizu…";display:block;width:max-content;max-width:100%;background:#fff;border-radius:14px;padding:10px 13px;font-size:12px;font-weight:700;color:#6b5600;box-shadow:0 4px 12px rgba(0,0,0,.06)}.is-complete .ip-quiz-conversation{gap:0}.is-complete .ip-quiz-result{margin:0}.is-complete .ip-chat-bubble{max-width:78%}

.ip-points-fly{position:fixed;z-index:2147483003;transform:translate(-50%,0) scale(.8);opacity:0;background:var(--ip-orange);color:#171717;border-radius:999px;padding:7px 11px;font:800 14px/1 Poppins,system-ui;box-shadow:0 8px 24px rgba(0,0,0,.18);pointer-events:none;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .8s ease}.ip-points-fly.is-active{transform:translate(-50%,-42px) scale(1.05);opacity:1}
@keyframes ipAwardPulse{0%{transform:scale(1)}35%{transform:scale(1.13)}58%{transform:scale(.98)}100%{transform:scale(1)}}.ip-fab.is-award-pulse{animation:ipAwardPulse .7s ease}

@media(min-width:601px){.ip-fab{right:64px;bottom:7px}}
@media(max-width:600px){.ip-fab{right:14px;bottom:max(72px,calc(16px + env(safe-area-inset-bottom)));height:50px;min-width:68px}.ip-panel{right:12px;bottom:max(134px,calc(78px + env(safe-area-inset-bottom)));padding:17px;border-radius:20px}.integroo-points-quiz{width:100%;margin:20px 0;padding:16px;border-radius:20px}.ip-chat-bubble,.ip-answer,.ip-chat-result,.is-complete .ip-chat-bubble{max-width:88%}.ip-answer{font-size:14px}.ip-email-form{flex-direction:column}.ip-email-form button{min-height:42px}.ip-awaiting-state:after{left:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.ip-panel,.ip-close,.ip-answer,.ip-points-fly{transition:none!important}.ip-fab.is-award-pulse,.ip-balance.is-loading{animation:none!important}.ip-balance.is-loading{opacity:.7}}

/* EventON/custom-template fallback: JS moves the quiz under the event description. */
.ip-quiz-fallback-host{display:none}.ip-quiz-fallback-host.ip-fallback-visible{display:block;max-width:620px;margin:24px auto}


/* EventON lightbox / popup support (v0.1.7).
 * EventON renders its modal in a separate high-z-index layer and may load the
 * event card asynchronously. The JS injects the quiz into the active event card.
 */
.ip-eventon-popup-quiz-host{display:block;width:100%;padding:0 12px;clear:both}
.evo_lightbox .ip-eventon-popup-quiz-host .integroo-points-quiz,
.evo_lightboxes .ip-eventon-popup-quiz-host .integroo-points-quiz,
.evo_pop_body .ip-eventon-popup-quiz-host .integroo-points-quiz{width:min(620px,100%);margin:18px auto}
#integroo-points-widget .ip-fab,#integroo-points-widget .ip-panel{isolation:isolate}
@media(min-width:601px){.ip-fab{right:64px;bottom:7px}}
@media(max-width:600px){
  .ip-eventon-popup-quiz-host{padding:0 8px}
  .evo_lightbox .ip-eventon-popup-quiz-host .integroo-points-quiz,
  .evo_lightboxes .ip-eventon-popup-quiz-host .integroo-points-quiz,
  .evo_pop_body .ip-eventon-popup-quiz-host .integroo-points-quiz{margin:14px auto}
}
