:root{--qubi-dock-right:20px;--qubi-dock-bottom:max(18px,env(safe-area-inset-bottom,0px));--qubi-dock-width:84px;--qubi-dock-height:90px;--qubi-dock-gap:12px}
#qubi-launcher{position:fixed;right:var(--qubi-dock-right);bottom:var(--qubi-dock-bottom);z-index:1500;width:var(--qubi-dock-width);height:var(--qubi-dock-height);padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer;display:block}
#qubi-launcher[hidden],#qubi-panel[hidden]{display:none!important}
#qubi-launcher img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 7px #13285830);transition:transform .2s}
#qubi-launcher:hover img{transform:translateY(-4px) rotate(-5deg)}
#qubi-launcher:focus-visible{outline:3px solid #245df5;border-radius:20px}
#qubi-launcher span{position:absolute;bottom:0;left:9px;background:#11235a;color:white;font-size:10px;letter-spacing:1px;padding:2px 7px;border-radius:20px}
#qubi-panel{--qubi-panel-bottom:calc(var(--qubi-dock-bottom) + var(--qubi-dock-height) + var(--qubi-dock-gap) + var(--qubi-toast-reserve,0px));position:fixed;inset:auto var(--qubi-dock-right) var(--qubi-panel-bottom) auto;margin:0;padding:0;width:min(570px,calc(100vw - 24px));max-width:none;height:min(740px,calc(100dvh - var(--qubi-panel-bottom) - 18px));max-height:none;border:1px solid #d5def0;border-radius:20px;background:#fff;color:#182944;box-shadow:0 18px 64px #10245a38;z-index:1501;overflow:auto}
#qubi-panel[open]{display:flex;flex-direction:column}
#qubi-panel *{box-sizing:border-box}
#qubi-panel .qubi-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #e0e7f3;background:#f6f8ff}
#qubi-panel .qubi-head img{width:42px;height:46px;object-fit:contain}
#qubi-panel .qubi-head div{flex:1;min-width:0}
#qubi-panel h2{font-size:17px;margin:0;line-height:1.4}
#qubi-panel .qubi-head small{font-size:11px;color:#5d6b86}
#qubi-panel button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;margin:0;padding:7px 10px;cursor:pointer;font:inherit;border:1px solid #d5def0;border-radius:9px;background:#fff;color:#234277;flex:0 0 auto}
#qubi-panel button:disabled{opacity:.55;cursor:wait}
#qubi-panel .qubi-scope{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px;border-bottom:1px solid #e0e7f3}
#qubi-panel .qubi-scope label{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0;font-size:11px;margin:0!important}
#qubi-panel .qubi-scope label:first-child{grid-column:1/-1}
#qubi-panel input,#qubi-panel select,#qubi-panel textarea{width:100%;min-width:0;margin:0;padding:8px;border:1px solid #ccd8ef;border-radius:8px;font:13px system-ui;background:white;color:#182944;box-sizing:border-box}
#qubi-panel .qubi-messages{flex:1;min-height:120px;overflow:auto;padding:16px;overscroll-behavior:contain}
#qubi-panel .qubi-bubble{padding:12px 14px;margin:0 0 14px;border:1px solid #e0e7f3;border-radius:14px;font:13px/1.6 system-ui;overflow-wrap:anywhere}
#qubi-panel .qubi-user{margin-left:36px;background:#edf2ff;border-color:#d8e3ff}
#qubi-panel .qubi-bubble p{margin:0 0 8px;white-space:pre-wrap}
#qubi-panel .qubi-bubble p:last-child{margin-bottom:0}
#qubi-panel .qubi-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
#qubi-panel .qubi-suggestions button{font-size:12px;text-align:left}
#qubi-panel .qubi-entry{display:grid!important;grid-template-columns:1fr 42px!important;gap:8px;align-items:end;margin:0!important;padding:12px 16px;border-top:1px solid #e0e7f3;background:#f6f8ff}
#qubi-panel textarea{resize:vertical;min-height:62px;max-height:140px}
#qubi-panel .qubi-send{height:42px;background:#245df5;color:#fff;border:0}
#qubi-panel .qubi-disclosure{font:10px/1.5 system-ui;margin:0;padding:0 16px 10px;background:#f6f8ff;color:#687792}
#qubi-panel .qubi-table{max-width:100%;overflow:auto;margin:10px 0}
#qubi-panel table{border-collapse:collapse;width:100%;font-size:11px;line-height:1.4}
#qubi-panel th,#qubi-panel td{padding:7px 8px;text-align:left;border-bottom:1px solid #e1e7f1;min-width:75px;vertical-align:top}
#qubi-panel th{background:#f3f6fc;white-space:nowrap}
#qubi-panel .qubi-note{color:#677690;font-size:11px}
#qubi-panel .qubi-error{border-color:#e5a2a8;color:#a72e3b}
.qubi-source{width:min(900px,calc(100vw - 28px));max-height:85vh;overflow:auto;padding:24px;border:1px solid #d5def0;border-radius:16px}
.qubi-source pre{white-space:pre-wrap;font:13px/1.7 system-ui}
#qubi-launcher.qubi-thinking img{animation:qubi-think 1.1s ease-in-out infinite alternate}
@keyframes qubi-think{to{transform:translateY(-5px) rotate(6deg)}}
@media(prefers-reduced-motion:reduce){#qubi-launcher img{animation:none!important;transition:none!important}}
@media(max-width:600px){:root{--qubi-dock-right:12px;--qubi-dock-bottom:max(12px,env(safe-area-inset-bottom,0px));--qubi-dock-width:68px;--qubi-dock-height:74px}#qubi-panel{border-radius:16px}#qubi-panel .qubi-scope{padding:9px 12px}#qubi-panel .qubi-messages{padding:12px}}

/* Reserve the same dock for QUBI and every shared notification. */
body:has(>#qubi-launcher:not([hidden]))>#qevo-notifications{bottom:calc(var(--qubi-dock-bottom) + var(--qubi-dock-height) + var(--qubi-dock-gap));max-height:min(45dvh,calc(100dvh - var(--qubi-dock-bottom) - var(--qubi-dock-height) - var(--qubi-dock-gap) - 18px));overflow:auto;overscroll-behavior:contain}
body:has(>#qubi-launcher:not([hidden])):has(>#qubi-panel[open])>#qevo-notifications{max-height:min(35dvh,max(64px,calc(100dvh - var(--qubi-dock-bottom) - var(--qubi-dock-height) - var(--qubi-dock-gap) - 290px)))}

#qubi-panel .qubi-head{padding-right:58px}#qubi-panel > .qevo-popup-close{position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;z-index:2}
#qubi-panel.qevo-dialog:has(>.qevo-popup-close){padding:0!important}

#qubi-launcher .qubi-indicator{display:none;position:absolute;top:1px;right:0;width:25px;height:25px;box-sizing:border-box;border:3px solid white;border-radius:50%;font:700 15px/19px system-ui;text-align:center;box-shadow:0 2px 7px #10245a40;background:#fff;color:white}
#qubi-launcher[data-status=thinking] .qubi-indicator{display:block;border-color:#d9e4ff;border-top-color:#245df5;border-right-color:#245df5;animation:qubi-spin .8s linear infinite}
#qubi-launcher[data-status=ready] .qubi-indicator{display:block;background:#14824d;animation:qubi-notice 1s ease-out 3}
#qubi-launcher[data-status=error] .qubi-indicator{display:block;background:#b83c32}
@keyframes qubi-spin{to{transform:rotate(360deg)}}
@keyframes qubi-notice{50%{box-shadow:0 0 0 5px #14824d25}}
@media(prefers-reduced-motion:reduce){#qubi-launcher .qubi-indicator{animation:none!important}}

/* QUBI: independent header and readable question list. */
#qubi-panel .qubi-head{position:sticky;top:0;z-index:1;padding:12px 14px!important;gap:10px;flex-shrink:0}
#qubi-panel .qubi-entry,#qubi-panel .qubi-disclosure{flex-shrink:0}
#qubi-panel .qubi-head [data-clear],#qubi-panel .qubi-head [data-qubi-close]{position:static!important;width:36px;height:36px;min-width:36px;min-height:36px;padding:0!important;line-height:1;transform:none!important;align-self:center}
#qubi-panel .qubi-scope{flex-shrink:0;padding:10px 14px!important}
#qubi-panel .qubi-scope label:first-child{grid-column:auto}
#qubi-panel .qubi-suggestions{display:flex;flex-direction:column;gap:7px}
#qubi-panel .qubi-suggestions button{display:block!important;width:100%!important;height:auto!important;min-height:42px;text-align:left;white-space:normal;justify-content:flex-start;padding:10px 12px!important;font-size:13px;line-height:1.4;border-radius:10px;background:#f7f9ff;color:#163b83}
#qubi-panel .qubi-suggestions button:hover{background:#edf2ff;border-color:#87a8f5}
#qubi-panel .qubi-suggestions button:focus-visible,#qubi-panel a:focus-visible{outline:2px solid #245df5;outline-offset:2px}
#qubi-panel .qubi-examples{margin-top:14px;border:0;padding:0}
#qubi-panel .qubi-examples summary{cursor:pointer;font-size:13px;font-weight:600;color:#234277}
#qubi-panel .qubi-examples .qubi-note{margin-top:10px}
#qubi-panel .qubi-screen-link{display:block;margin:7px 0 10px;font-size:12px}
#qubi-panel a{color:#164dcc;text-decoration:underline;text-underline-offset:3px}
#qubi-panel .qubi-result-link{font-weight:600}
