/* Perinvo V17 assistant widget. Desktop: floating panel. Phones: full-screen sheet sized to the visual viewport. */
.pa,.pa *{box-sizing:border-box}
.pa{--pa-navy:#10283f;--pa-teal:#0c9daa;--pa-lift:0px;position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + var(--pa-lift) + env(safe-area-inset-bottom));z-index:950;font-family:inherit;color:#1d3448}
.pa-launcher{display:inline-flex;align-items:center;gap:9px;min-height:52px;padding:0 20px 0 16px;border:0;border-radius:999px;background:var(--pa-navy);color:#fff;font:700 14px/1 inherit;box-shadow:0 12px 30px #0f2c4459;cursor:pointer;transition:transform .15s,background .15s}
.pa-launcher svg{width:22px;height:22px;color:#30dce4}
.pa-launcher:hover{background:#16405d;transform:translateY(-1px)}
.pa-launcher:focus-visible,.pa button:focus-visible,.pa a:focus-visible,.pa textarea:focus-visible,.pa input:focus-visible{outline:3px solid #19a7b3;outline-offset:2px}
.pa.is-open .pa-launcher{display:none}
.pa-panel{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + var(--pa-lift) + env(safe-area-inset-bottom));width:min(400px,calc(100vw - 36px));height:min(620px,calc(100dvh - 36px - var(--pa-lift)));display:flex;flex-direction:column;background:#fff;border:1px solid #d3e3eb;border-radius:20px;box-shadow:0 28px 80px #122b4166;overflow:hidden}
.pa-panel[hidden]{display:none}
.pa-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 14px 18px;background:linear-gradient(110deg,#112c45,#176e7d);color:#fff;flex:0 0 auto}
.pa-head strong{display:block;font-size:15px}.pa-head small{display:block;font-size:11px;color:#cfe8ef;margin-top:3px;line-height:1.35}
.pa-head-actions{display:flex;gap:6px}
.pa-head-actions button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:10px;background:#ffffff1f;color:#fff;cursor:pointer}
.pa-head-actions button:hover{background:#ffffff33}.pa-head-actions svg{width:20px;height:20px}
.pa-log{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:10px;padding:16px;background:#f5f8fa}
.pa-msg{max-width:88%;align-self:flex-start;padding:11px 13px;border-radius:14px 14px 14px 4px;background:#fff;border:1px solid #e1ebf0;font-size:14px;line-height:1.6;overflow-wrap:anywhere;word-break:break-word;unicode-bidi:plaintext}
.pa-msg.is-user{align-self:flex-end;background:#dff4f7;border-color:#c9ebf0;border-radius:14px 14px 4px 14px}
.pa-msg.is-error{background:#fff6f6;border-color:#f3d2d6}
.pa-text{white-space:pre-wrap}
.pa-text a,.pa-sources a{color:#0c6f7c;text-decoration:underline;text-underline-offset:2px}
.pa-sources{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;padding-top:8px;border-top:1px dashed #d9e5ea;font-size:12px}
.pa-sources span{color:#5d7385;font-weight:700}
.pa-sources a{background:#eef7f9;border-radius:999px;padding:3px 9px;text-decoration:none}
.pa-mode{display:block;margin-top:6px;font-size:10.5px;color:#7a8d9c}
.pa-retry,.pa-handoff{margin-top:8px;border:1px solid #bcdce3;background:#fff;color:#0c6f7c;border-radius:999px;padding:8px 14px;font:600 13px inherit;cursor:pointer;min-height:40px}
.pa-handoff{align-self:flex-start}
.pa-typing{display:flex;gap:5px;align-items:center;min-height:40px}
.pa-typing span{width:7px;height:7px;border-radius:50%;background:#8fb5c2;animation:pa-dot 1.2s infinite ease-in-out}
.pa-typing span:nth-child(2){animation-delay:.15s}.pa-typing span:nth-child(3){animation-delay:.3s}
@keyframes pa-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.pa-suggest{display:flex;gap:7px;overflow-x:auto;padding:8px 12px;background:#f5f8fa;border-top:1px solid #e6eef2;flex:0 0 auto;scrollbar-width:thin}
.pa-suggest[hidden]{display:none}
.pa-suggest button{flex:0 0 auto;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid #cfe3e8;background:#fff;color:#19516a;border-radius:999px;padding:8px 13px;font:600 12.5px inherit;cursor:pointer;min-height:38px}
.pa-suggest button:hover{background:#e9f7f9}
.pa-form{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid #e3ecf0;background:#fff;flex:0 0 auto}
.pa-form[hidden]{display:none}
.pa-form textarea{flex:1;min-width:0;resize:none;max-height:120px;min-height:44px;border:1px solid #d3e0e7;border-radius:12px;padding:11px 12px;font:inherit;font-size:15px;line-height:1.4;color:#17344a;background:#fff;unicode-bidi:plaintext}
.pa-form button{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:12px;background:var(--pa-teal);color:#fff;cursor:pointer}
.pa-form button svg{width:21px;height:21px}
.pa-escalate{display:grid;gap:9px;padding:12px 14px;border-top:1px solid #e3ecf0;background:#fbfdfe;flex:0 0 auto;max-height:60%;overflow-y:auto}
.pa-escalate[hidden]{display:none}
.pa-escalate p{margin:0;font-size:13px;line-height:1.45}.pa-escalate small{color:#5d7385}
.pa-escalate label{display:grid;gap:4px;font-size:12px;font-weight:700;color:#35506a}
.pa-escalate input:not([type=checkbox]),.pa-escalate textarea{width:100%;border:1px solid #d3e0e7;border-radius:10px;padding:10px;font:inherit;font-size:15px;font-weight:400}
.pa-escalate .pa-consent{display:flex;gap:8px;align-items:flex-start;font-weight:500}
.pa-row{display:flex;gap:8px;flex-wrap:wrap}.pa-row button{min-height:44px;padding:0 16px;border-radius:10px;border:1px solid #cfe0e7;background:#fff;font:600 14px inherit;cursor:pointer}
.pa-row .pa-primary{background:var(--pa-navy);color:#fff;border-color:var(--pa-navy)}
.pa-note{margin:0;padding:6px 14px 10px;font-size:10.5px;line-height:1.4;color:#677b89;background:#fff;flex:0 0 auto}
.pa-note a{color:#0c6f7c}
.pa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:640px){
  .pa{right:max(14px,env(safe-area-inset-right));bottom:calc(14px + var(--pa-lift) + env(safe-area-inset-bottom))}
  .pa-launcher{width:56px;height:56px;min-height:56px;padding:0;justify-content:center;border-radius:50%}
  .pa-launcher-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pa-panel{left:0;right:0;top:0;bottom:auto;width:100%;max-width:100vw;height:100dvh;border-radius:0;border:0}
  .pa-head{padding-top:calc(12px + env(safe-area-inset-top))}
  .pa-form{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .pa-msg{max-width:94%}
}
html.pa-lock,html.pa-lock body{overflow:hidden}
[dir=rtl] .pa{right:auto;left:max(18px,env(safe-area-inset-left))}
[dir=rtl] .pa-panel{right:auto;left:max(18px,env(safe-area-inset-left))}
@media (max-width:640px){[dir=rtl] .pa-panel{left:0}}
@media (prefers-reduced-motion:reduce){.pa *{animation:none!important;transition:none!important}}
@media print{.pa{display:none!important}}
