.npo-context-launcher{position:fixed;right:20px;bottom:22px;z-index:1025;border:0;border-radius:28px;background:#174d72;color:#fff;padding:14px 20px;font:600 15px/1.4 system-ui;box-shadow:0 5px 20px #16365333;cursor:pointer;max-width:calc(100vw - 32px)}
#npo-context-chat{box-sizing:border-box;width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #cddce7;border-radius:18px;color:#183047;background:#fff;box-shadow:0 20px 70px #132b4355;font:16px/1.5 system-ui;overflow:auto}
#npo-context-chat::backdrop{background:#142b4380}
#npo-context-chat *{box-sizing:border-box}
#npo-context-chat header{display:flex;align-items:center;gap:14px;padding:18px 22px;border-bottom:1px solid #dbe4ec;background:#f1f6fa}
#npo-context-chat h2{font:700 22px/1.3 system-ui;margin:0;color:#173b59}
#npo-context-chat .npo-context-close{margin-left:auto;border:0;background:none;color:#173b59;font:28px/1 system-ui;min-width:40px;min-height:40px;cursor:pointer}
#npo-context-chat .npo-context-body{padding:20px 22px}
#npo-context-chat .npo-context-page{font-size:13px;line-height:1.5;overflow-wrap:anywhere;color:#52687b;background:#f1f6fa;padding:10px 12px;border-radius:8px;margin:0 0 14px}
#npo-context-chat p{margin:0 0 14px}
#npo-context-chat fieldset{border:0;padding:0;margin:0;min-width:0}
#npo-context-chat [hidden]{display:none!important}
#npo-context-chat legend{font-weight:700;font-size:17px;margin-bottom:14px;float:none;width:auto}
#npo-context-chat label{display:block;margin-bottom:13px;font-size:14px;font-weight:600;color:#213d55}
#npo-context-chat :is(input:not([type=checkbox]),select,textarea){display:block;width:100%;padding:10px 12px;min-height:44px;border:1px solid #aebfce;border-radius:7px;font:16px/1.4 system-ui;background:#fff;color:#183047;margin-top:5px}
#npo-context-chat textarea{resize:vertical;min-height:90px;max-height:220px}
#npo-context-chat .npo-context-phone{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px}
#npo-context-chat .npo-context-consent{display:flex;gap:9px;align-items:flex-start;font-weight:400;line-height:1.5}
#npo-context-chat input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0}
#npo-context-chat .npo-context-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
#npo-context-chat .npo-context-actions button{border:1px solid #174d72;border-radius:8px;padding:11px 16px;min-height:44px;font:600 15px/1.4 system-ui;background:#174d72;color:#fff;cursor:pointer}
#npo-context-chat .npo-context-actions .npo-context-back{background:#fff;color:#174d72}
#npo-context-chat button:disabled{opacity:.65;cursor:wait}
#npo-context-chat :is(input,select,textarea,button):focus-visible,.npo-context-launcher:focus-visible{outline:3px solid #e97829;outline-offset:3px}
#npo-context-chat .npo-context-review{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:#f1f6fa;border-radius:8px;font-size:14px}
#npo-context-chat [role=status]{font-size:14px;color:#245b3d;margin:16px 0 0;overflow-wrap:anywhere}
#npo-context-chat .npo-context-note{font-size:12px;color:#52687b}
#npo-context-chat [aria-busy=true]::before{content:'';display:inline-block;width:13px;height:13px;border:2px solid #b5c8bb;border-top-color:#245b3d;border-radius:50%;margin-right:8px;vertical-align:-2px;animation:npo-context-spin 1s linear infinite}
@keyframes npo-context-spin{to{transform:rotate(360deg)}}
@media(max-width:1399px){.npo-context-launcher{bottom:calc(80px + env(safe-area-inset-bottom));right:12px;font-size:14px;padding:12px 17px}}
@media(max-width:575px){#npo-context-chat .npo-context-body{padding:16px}#npo-context-chat header{padding:14px 16px}#npo-context-chat h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){#npo-context-chat [aria-busy=true]::before{animation:none}}
@media print{.npo-context-launcher,#npo-context-chat{display:none!important}}
#npo-context-chat button[aria-disabled=true]{opacity:.65;cursor:wait}
