#bubke{--chat-viewport-height:100dvh;--chat-accent:#005e68;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.45;color:#172b35}
#bubke *,#bubke *::before,#bubke *::after{box-sizing:border-box}
#bubke [hidden]{display:none!important}
#bubke button,#bubke textarea{font:inherit}
#bubke button,#bubke summary,#bubke a{touch-action:manipulation}
#bubke button{min-height:44px;padding:7px 11px;border:1px solid #b8cbd0;border-radius:8px;cursor:pointer}
#bubke button:disabled{opacity:.65;cursor:wait}
#bubke button:focus-visible,#bubke summary:focus-visible,#bubke a:focus-visible,#bubke textarea:focus-visible,#bubkeResize:focus-visible{outline:2px solid #a8d8ee;outline-offset:2px}
#bubke a{color:var(--chat-accent);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
#bubke .bubke-launcher{position:fixed;right:24px;bottom:24px;z-index:9998;display:flex;align-items:center;gap:8px;background:var(--chat-accent);color:white;border:0;border-radius:28px;padding:9px 16px;box-shadow:0 4px 18px #0003}
#bubke .bubke-launcher img{width:32px;height:32px;object-fit:contain}
#bubke .bubke-panel{position:fixed;z-index:9999;right:24px;bottom:88px;display:flex;flex-direction:column;width:392px;height:620px;max-width:calc(100vw - 28px);max-height:calc(var(--chat-viewport-height) - 110px);min-width:0;background:#fff;border:1px solid #aec3c9;border-radius:14px;overflow:hidden;box-shadow:0 12px 45px #0003}
#bubke .bubke-head{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:10px 12px;background:#123d47;color:white}
#bubke .bubke-logo{width:52px;max-height:40px;object-fit:contain}
#bubke .bubke-head-avatar{display:none}
#bubke .bubke-head>div:not(.head-actions){min-width:0;flex:1}
#bubke .bubke-head strong{display:block;font-size:15px}
#bubke .bubke-head small{display:block;font-size:11px;color:#e4f0f1}
#bubke .head-actions{display:flex;gap:4px}
#bubke .head-actions button{padding:0;width:44px;background:transparent;color:white;border-color:#62828a;font-size:22px}
#bubke .bubke-toolbar{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#edf5f5;font-size:11px;flex:0 0 auto}
#bubke .bubke-toolbar span:nth-child(2){flex:1;min-width:0}
#bubke .bubke-toolbar button{padding:5px 8px;font-size:11px;background:transparent;border:0;box-shadow:none;min-height:36px}
#bubke .bubke-messages{flex:1 1 auto;min-height:0;overflow:auto;padding:12px;overscroll-behavior:contain;scrollbar-gutter:stable}
#bubke .chat-line{display:flex;gap:6px;align-items:flex-start;margin:0 0 12px;min-width:0}
#bubke .chat-line.user{justify-content:flex-end}
#bubke .chat-avatar{flex:0 0 28px;width:28px;height:28px;object-fit:contain}
#bubke .chat-bubble{min-width:0;max-width:100%;padding:10px 12px;background:#f0f5f6;border:1px solid #d8e4e7;border-radius:10px;overflow-wrap:anywhere}
#bubke .chat-line.user .chat-bubble{background:#e0f1ef;max-width:90%}
#bubke .chat-bubble p{margin:0;white-space:pre-wrap}
#bubke .chat-bubble p+p{margin-top:10px}
#bubke .chat-more{margin:10px 0;border-top:1px solid #ccdce0;padding-top:8px}
#bubke .chat-more summary{font-weight:650;cursor:pointer;color:var(--chat-accent);padding:5px 0;min-height:32px}
#bubke .chat-more p{margin-top:8px}
#bubke .chat-inline-citation,#bubke .chat-source{display:block;font-size:11px;line-height:1.45;margin-top:9px;color:#395b65}
#bubke .chat-source{background:transparent;border:0;border-radius:0;padding:4px 0}
#bubke .chat-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}
#bubke .chat-actions button{background:transparent;border:0;box-shadow:none;color:#194c56;font-size:12px}
#bubke .chat-actions [role=status]{font-size:11px;flex-basis:100%}
#bubke .bubke-bottom{flex:0 0 auto;padding:9px 10px;background:white;border-top:1px solid #d8e4e7}
#bubke .bubke-privacy{font-size:11px;line-height:1.35;color:#435b65;margin:0 0 7px}
#bubke #bubkeForm{display:flex;gap:6px;align-items:flex-end;margin:0;padding:0;border:0;background:transparent;outline:0;box-shadow:none}
#bubke #bubkeForm:focus-within{border:0;outline:0;box-shadow:none}
#bubke #bubkeInput{display:block;min-width:0;flex:1;min-height:46px;max-height:100px;resize:none;padding:11px 10px;border:1px solid #b9dcec;border-radius:9px;background:white;outline:0;box-shadow:none;color:#172b35;font-size:16px;line-height:22px}
#bubke #bubkeInput:focus,#bubke #bubkeInput:focus-visible{border-color:#7bbbd8;outline:2px solid #c5e8f5;outline-offset:1px;box-shadow:none}
#bubke #bubkeSend,#bubke #bubkeCancel{width:44px;flex:0 0 44px;height:46px;background:var(--chat-accent);color:white;border:0;outline:0;box-shadow:none}
#bubke #bubkeSend:focus-visible,#bubke #bubkeCancel:focus-visible{outline:0;box-shadow:inset 0 0 0 2px #a8d8ee}
#bubke .bubke-resize{position:absolute;left:0;top:0;width:20px;height:20px;cursor:nwse-resize;font-size:12px;color:white}
#bubke .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}
.chat-r4-quality{margin:8px 0 14px;border:1px solid #d2e0e3;border-radius:8px;padding:8px 10px}
.chat-r4-quality>summary{cursor:pointer;font-weight:650}
.chat-r4-quality dl{display:flex;flex-wrap:wrap;gap:8px 22px}
.chat-r4-quality dl div{min-width:110px}
.chat-r4-quality dt,.chat-r4-quality small{font-size:12px;color:#405a64}
.chat-r4-quality dd{margin:0;font-size:19px;font-weight:650}
.chat-r4-quality article{border-top:1px solid #d2e0e3;padding:9px 0}
.chat-r4-quality small{display:block;margin:3px 0}
.chat-r4-quality form{display:inline-block;margin:4px 0 4px 10px}
.chat-r4-quality article a,.chat-r4-quality li a{overflow-wrap:anywhere}
.chat-r4-quality li{margin:8px 0}
@media(max-width:700px){
 #bubke .bubke-panel{left:8px;right:8px;bottom:8px;width:calc(100vw - 16px)!important;max-width:none;height:calc(var(--chat-viewport-height) - 16px)!important;max-height:calc(var(--chat-viewport-height) - 16px);border-radius:12px}
 #bubke .bubke-launcher{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}
 #bubke .bubke-head{padding:8px 10px;gap:7px}
 #bubke .bubke-logo{width:42px}
 #bubke .bubke-head strong{font-size:14px}
 #bubke .bubke-toolbar button{min-height:44px}
 #bubke .bubke-messages{padding:10px 8px}
 #bubke .bubke-bottom{padding-bottom:max(9px,env(safe-area-inset-bottom))}
 #bubke .bubke-resize{display:none}
 .chat-r4-quality button{min-height:44px}
}
@media(prefers-reduced-motion:reduce){#bubke *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
