/* LaporinAja! - widget chat bantuan publik */
.la-chat-widget,.la-chat-widget *{box-sizing:border-box}
.la-chat-widget{font-family:inherit;color:#203a31;position:relative;z-index:99990}
.la-chat-launcher{position:fixed;right:24px;bottom:22px;width:60px;height:60px;border:0;border-radius:50%;background:#108044;color:#fff;box-shadow:0 10px 28px rgba(10,69,42,.27);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background .2s;z-index:99991}
.la-chat-launcher:hover{transform:translateY(-3px);background:#086b38}
.la-chat-launcher svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.la-chat-launcher-dot{position:absolute;right:1px;top:1px;width:13px;height:13px;background:#ffad4c;border:2px solid #fff;border-radius:50%}
.la-chat-popup{position:fixed;right:24px;bottom:96px;width:384px;height:min(560px,calc(100vh - 120px));min-height:390px;max-height:calc(100vh - 116px);display:flex;flex-direction:column;background:#f8fafc;border:1px solid rgba(14,79,48,.22);border-radius:17px;overflow:hidden;box-shadow:0 18px 54px rgba(13,41,29,.24);z-index:99992;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px) scale(.985);transform-origin:bottom right;transition:opacity .18s ease,transform .18s ease,visibility .18s}
.la-chat-popup.la-chat-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.la-chat-header{height:72px;flex:0 0 72px;padding:0 17px;display:flex;align-items:center;gap:12px;background:#17663e;color:#fff}
.la-chat-admin-avatar{width:43px;height:43px;flex:0 0 43px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;position:relative}
.la-chat-admin-avatar:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#70db94;right:-1px;bottom:0;border:2px solid #17663e}
.la-chat-admin-avatar svg{width:25px;height:25px;fill:#fff;stroke:#fff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
.la-chat-header-copy{min-width:0;display:flex;flex-direction:column;gap:4px;flex:1}
.la-chat-header-copy strong{font-size:14px;line-height:1.2;color:#fff;font-weight:800;white-space:nowrap}
.la-chat-header-copy span{font-size:9px;letter-spacing:1px;font-weight:800;color:#d7f3e0;display:flex;align-items:center;gap:6px}
.la-chat-header-copy span i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#70db94}
.la-chat-close{width:32px;height:32px;flex:0 0 32px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#fff;font-size:27px;line-height:1;cursor:pointer;border-radius:8px}
.la-chat-close:hover{background:rgba(255,255,255,.14)}
.la-chat-transcript{flex:1;min-height:0;overflow-y:auto;padding:17px 15px 18px;background:#f8fafc;scroll-behavior:smooth}
.la-chat-welcome-row,.la-chat-message-row{display:flex;align-items:flex-start;gap:9px;margin:0 0 15px}
.la-chat-bot-avatar{width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:#16834c;color:#fff;display:flex;align-items:center;justify-content:center;margin-top:4px}
.la-chat-bot-avatar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.la-chat-message-stack{max-width:calc(100% - 42px);display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.la-chat-bubble{max-width:100%;font-size:14px;line-height:1.55;padding:11px 13px;border-radius:0 16px 16px 16px;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}
.la-chat-bubble-admin{background:#fff;border:1px solid #dce5ee;box-shadow:0 2px 3px rgba(17,47,34,.035);color:#293d56}
.la-chat-message-stack small{font-size:10px;line-height:1.35;color:#8794a8;padding-left:4px}
.la-chat-message-row.la-chat-from-warga{justify-content:flex-end}
.la-chat-from-warga .la-chat-message-stack{align-items:flex-end}
.la-chat-from-warga .la-chat-bubble{background:#ddf6e5;border:1px solid #c5ebd1;color:#184f32;border-radius:16px 0 16px 16px}
.la-chat-from-warga .la-chat-message-stack small{padding:0 4px;text-align:right}
.la-chat-message-row.la-chat-from-admin .la-chat-bot-avatar{width:28px;height:28px;flex-basis:28px}
.la-chat-message-row.la-chat-from-admin .la-chat-bot-avatar svg{width:18px;height:18px}
.la-chat-message-meta{font-size:9px;color:#8995a4;margin-top:1px}
.la-chat-system-note{margin:4px 0 15px 41px;padding:9px 11px;background:#fff6df;border:1px solid #f4e2a8;border-radius:10px;color:#79551c;font-size:11px;line-height:1.45}
.la-chat-system-note[hidden],.la-chat-error[hidden]{display:none!important}
.la-chat-error{padding:8px 14px 0;color:#b42318;background:#f8fafc;font-size:11px;line-height:1.4}
.la-chat-composer{height:64px;flex:0 0 64px;display:flex;align-items:center;gap:9px;padding:10px 12px;border-top:1px solid #e0e7ef;background:#fff}
.la-chat-composer input{flex:1;min-width:0;height:41px;border:1px solid #cbd8e7;border-radius:22px;background:#f8fafc;padding:0 16px;color:#283c54;font-family:inherit;font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s}
.la-chat-composer input::placeholder{color:#8b98ac}
.la-chat-composer input:focus{border-color:#16834c;box-shadow:0 0 0 3px rgba(22,131,76,.1)}
.la-chat-composer button{width:41px;height:41px;flex:0 0 41px;border:0;border-radius:50%;background:#168344;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .15s}
.la-chat-composer button:hover{background:#0d6d38;transform:translateY(-1px)}
.la-chat-composer button:disabled{opacity:.55;cursor:wait;transform:none}
.la-chat-composer button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.la-chat-caption{flex:0 0 auto;padding:0 14px 9px;background:#fff;color:#8b98a7;font-size:9px;text-align:center;line-height:1.35}
.la-chat-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:520px){.la-chat-launcher{right:15px;bottom:15px;width:56px;height:56px}.la-chat-popup{right:10px;bottom:81px;width:calc(100vw - 20px);height:min(570px,calc(100dvh - 100px));min-height:360px;max-height:calc(100dvh - 92px);border-radius:16px}.la-chat-header{height:68px;flex-basis:68px}.la-chat-transcript{padding:15px 12px}.la-chat-bubble{font-size:13px}.la-chat-caption{font-size:9px}}
@media(prefers-reduced-motion:reduce){.la-chat-launcher,.la-chat-popup,.la-chat-composer button{transition:none}.la-chat-transcript{scroll-behavior:auto}}
