.loopi-widget{--lp-ink:#0c4754;--lp-lime:#c4e550;--lp-paper:var(--al-surface,#fff);--loopi-bottom:max(12px, env(safe-area-inset-bottom));right:20px;bottom:var(--loopi-bottom);z-index:75;color:var(--al-text,#0c4754);pointer-events:none;font-family:inherit;position:fixed}.loopi-widget button,.loopi-widget input,.loopi-chat{pointer-events:auto}.loopi-widget button{cursor:pointer;font:inherit}.loopi-widget button:disabled{opacity:.55;cursor:wait}.loopi-widget button:focus-visible,.loopi-widget input:focus-visible{outline-offset:3px;outline:3px solid #6e9918}.loopi-dock{justify-content:flex-end;display:flex;position:relative}.loopi-launcher{color:var(--al-text,#0c4754);background:0 0;border:0;flex-direction:column;justify-content:flex-end;align-items:center;width:118px;min-height:128px;padding:0;display:flex;position:relative}.loopi-character{pointer-events:none;width:118px;height:118px;display:block;position:relative;container-type:inline-size}.loopi-body{transform-origin:50% 94%;filter:drop-shadow(0 2px 2px #102e3924)drop-shadow(0 5px 7px #102e3933);animation:4.8s ease-in-out infinite loopi-breathe;position:absolute;inset:0}.loopi-sprite{background-repeat:no-repeat;background-size:400% 400%;position:absolute;inset:0}.loopi-character[data-loaded=false]{opacity:0}.loopi-character[data-pose=waking] .loopi-body{animation:none}.loopi-badge{pointer-events:none;flex-direction:column;align-items:center;gap:1.2cqw;width:13%;display:flex;position:absolute;transform:translate(-50%,-50%)}.loopi-badge img{width:42%}.loopi-badge span{color:#0c4754;background:#fff;border:.2cqw solid #d5dce0;border-radius:.7cqw;padding:.5cqw .8cqw;font:600 2.5cqw/1.1 system-ui}.loopi-label{background:var(--lp-paper);white-space:nowrap;border:1px solid #cbd7d5;border-radius:99px;padding:6px 11px;font-size:11px;font-weight:600;line-height:1.2;box-shadow:0 2px 9px #102b3112}.loopi-tuck{z-index:2;background:var(--lp-paper);color:var(--al-text,#0c4754);border:1px solid #d7e1df;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:1px;right:0}.loopi-launcher.is-small{width:auto;min-height:32px}.loopi-chat{width:min(420px,100vw - 40px);max-height:min(660px, calc(100dvh - var(--loopi-bottom) - 164px));background:var(--lp-paper);transform-origin:92% 100%;border:1px solid #c8d7d4;border-radius:22px;flex-direction:column;animation:.34s cubic-bezier(.2,.8,.2,1) both loopi-open;display:flex;position:absolute;bottom:143px;right:0;overflow:clip;box-shadow:0 18px 65px #082d4030}.loopi-chat-head{color:#fff;background:#0c4754;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:17px 19px;display:flex}.loopi-chat-head strong{font-family:var(--al-font-display);font-size:21px;display:block}.loopi-chat-head span{color:#d8e7e6;margin-top:2px;font-size:12px;display:block}.loopi-chat-head>div:last-child{gap:4px;display:flex}.loopi-chat-head button{color:#fff;background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.loopi-chat-head button:hover{background:#ffffff20}.loopi-messages{overscroll-behavior:contain;min-height:0;color:var(--al-text,#193b42);flex-direction:column;flex:auto;gap:12px;padding:18px 16px 8px;font-size:14px;line-height:1.55;display:flex;overflow-y:auto}.loopi-message{background:var(--al-surface-muted,#f0f5f3);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px 16px 16px;flex-shrink:0;margin:0;padding:12px 14px;position:relative}.loopi-message--you{color:#193b42;background:#e4eecb;border-radius:16px 4px 16px 16px;align-self:flex-end;max-width:91%}.loopi-message small{color:var(--al-text-muted,#627778);margin-top:10px;font-size:10px;line-height:1.4;display:block}.loopi-sources{white-space:normal;margin-top:10px;font-size:12px}.loopi-sources summary{cursor:pointer;color:var(--al-text-muted,#627778)}.loopi-sources strong{margin-top:10px;display:block}.loopi-sources blockquote{border-left:2px solid #afc1bc;margin:5px 0 0;padding-left:10px;font-size:12px}.loopi-action{text-align:left;color:#fff;background:#0c4754;border:0;border-radius:9px;width:100%;margin-top:12px;padding:10px 12px;display:block;font-size:12px!important;font-weight:600!important}.loopi-topics{flex-wrap:wrap;flex-shrink:0;gap:6px;padding:10px 16px;display:flex}.loopi-topics button{color:inherit;text-align:left;background:0 0;border:1px solid #cfdbd8;border-radius:20px;padding:6px 9px;font-size:11px}.loopi-topics button:hover{color:#0c4754;background:#eaf2df}.loopi-library{flex-direction:column;flex:0 180px;gap:6px;min-height:0;margin:0 16px 8px;display:flex}.loopi-library input{border:1px solid var(--al-border,#cfdbd8);background:var(--lp-paper);width:100%;min-width:0;color:inherit;font:inherit;border-radius:8px;padding:8px;font-size:12px}.loopi-library-results{min-height:0;overflow-y:auto}.loopi-library-results button{border:0;border-bottom:1px solid var(--al-border,#cfdbd8);text-align:left;width:100%;color:inherit;background:0 0;padding:9px 3px;font-size:12px;display:block}.loopi-library-results button:hover{color:#0c4754;background:#eaf2df}.loopi-library-results p{font-size:12px}.loopi-input{border:1px solid #c8d4d1;border-radius:13px;flex-shrink:0;align-items:center;gap:8px;margin:4px 15px 0;padding:5px 6px 5px 12px;display:flex}.loopi-input input{width:100%;min-width:0;font:inherit;color:var(--al-text,#193b42);height:32px;padding:0;font-size:13px;box-shadow:none!important;background:0 0!important;border:0!important}.loopi-input button{background:var(--lp-lime);color:#173d32;border:0;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.loopi-footnote{color:var(--al-text-muted,#627778);margin:9px 17px 13px;font-size:10px;line-height:1.4}.loopi-status{margin:0;font-size:12px}.loopi-error{color:#a63627;margin:8px 16px;font-size:13px;line-height:1.5}.loopi-sr{clip-path:inset(50%);width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.loopi-highlight{outline-offset:6px;border-radius:5px;scroll-margin:100px;outline:3px solid #a5c52e!important;box-shadow:0 0 0 10px #c4e55025!important}:is(.pf-ai:has(>div:not([hidden])>.loopi-admin),.loopi-admin){grid-template-columns:minmax(0,1fr)}.loopi-admin{gap:18px;display:grid}.loopi-admin-intro>div,.loopi-setting>span,.loopi-field{min-width:0}.loopi-admin-intro{align-items:center;gap:18px;margin-bottom:18px;display:flex}.loopi-admin-intro img{width:42px}.loopi-admin h2{margin:0 0 8px}.loopi-admin p{line-height:1.6}.loopi-setting{align-items:flex-start;gap:12px;padding:14px 0;display:flex}.loopi-setting input{accent-color:#0c4754;margin-top:4px}.loopi-setting small{color:var(--al-text-muted,#627778);margin-top:5px;font-size:13px;line-height:1.5;display:block}.loopi-field{flex-direction:column;gap:7px;margin:12px 0;font-size:13px;font-weight:600;display:flex}.loopi-field input,.loopi-field textarea,.loopi-field select{border:1px solid var(--al-border,#ccd8d5);background:var(--al-surface,#fff);width:100%;color:inherit;font:inherit;border-radius:8px;padding:10px 12px;font-weight:400}.loopi-field textarea{resize:vertical;line-height:1.5}.loopi-admin-note{color:var(--al-text-muted,#627778);font-size:13px}.loopi-knowledge{border-top:1px solid var(--al-border,#d5dfdc);padding:14px 0}.loopi-knowledge summary{cursor:pointer;padding:6px 0;font-weight:600}.loopi-knowledge summary span{float:right;color:var(--al-text-muted,#627778);font-size:11px;font-weight:400}.loopi-admin-save{background:var(--al-surface,#fff);border:1px solid var(--al-border,#ccd8d5);z-index:5;border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex;position:sticky;bottom:12px;box-shadow:0 5px 20px #102b3112}.loopi-admin-save span{flex:1;font-size:13px}@keyframes loopi-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.005,1.012)}}@keyframes loopi-open{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:700px){.loopi-widget{--loopi-bottom:max(8px, env(safe-area-inset-bottom));left:12px;right:12px}.loopi-character{width:86px;height:86px}.loopi-launcher{width:86px;min-height:100px}.loopi-chat{width:100%;max-width:370px;max-height:calc(100dvh - var(--loopi-bottom) - 134px);bottom:112px}.loopi-admin-save{flex-wrap:wrap}.loopi-admin-save span{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.loopi-body,.loopi-chat{animation:none!important}}body:has(.sf-save,.loopi-admin-save) .loopi-widget{--loopi-bottom:96px}@media (max-width:700px){body:has(.sf-save,.loopi-admin-save) .loopi-widget{--loopi-bottom:max(96px, calc(env(safe-area-inset-bottom) + 88px))}}
