
    body{background:radial-gradient(circle at top left,rgba(31,78,216,.09),transparent 28%),radial-gradient(circle at bottom right,rgba(214,31,44,.08),transparent 32%),var(--bg)}
    .jb-page{padding:clamp(18px,3vw,36px) 0 42px}.jb-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;max-width:1180px;margin-inline:auto}.jb-panel,.jb-card{background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow2);overflow:hidden}.jb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface2) 92%,transparent))}.jb-brand{display:flex;align-items:center;gap:12px;min-width:0}.jb-mascot{width:58px;height:58px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 18%,transparent),color-mix(in srgb,var(--red) 14%,transparent));padding:3px;box-shadow:var(--shadow);flex:none;position:relative;overflow:hidden}.jb-mascot::after{content:'';position:absolute;inset:0;border-radius:inherit;border:1px solid color-mix(in srgb,var(--blue) 24%,transparent);pointer-events:none}.jb-mascot img{display:block;width:100%;height:100%;object-fit:contain;border-radius:17px;transition:filter .18s ease,transform .18s ease}.jb-mascot.thinking img{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--blue) 38%,transparent))}.jb-mascot.talking img{transform:scale(1.03);filter:drop-shadow(0 0 12px color-mix(in srgb,var(--red) 28%,transparent))}.jb-title h1{font-size:1.15rem;line-height:1.1;margin:0;letter-spacing:-.02em}.jb-title small{display:block;margin-top:4px;color:var(--muted);font-weight:800;font-size:12px}.jb-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.jb-messages{height:min(68vh,760px);min-height:430px;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth;background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 55%,transparent),transparent),radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--blue) 5%,transparent),transparent 26%),radial-gradient(circle at 86% 80%,color-mix(in srgb,var(--red) 4%,transparent),transparent 30%)}.jb-message{display:flex;gap:10px;align-items:flex-end;animation:jbFade .18s ease-out}.jb-message.user{justify-content:flex-end}.jb-avatar{width:42px;height:42px;min-width:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1;font-size:10px;font-weight:900;letter-spacing:.03em;border:1px solid var(--line);box-shadow:var(--shadow);background:color-mix(in srgb,var(--surface2) 92%,transparent);color:var(--text);overflow:hidden}.jb-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}.jb-message.user .jb-avatar{background:linear-gradient(135deg,var(--blue),color-mix(in srgb,var(--blue) 70%,var(--red)));border-color:transparent;color:#fff;font-size:9px}.jb-bubble-wrap{max-width:min(82%,740px);display:grid;gap:6px}.jb-bubble{padding:13px 15px;border-radius:20px;border-bottom-left-radius:8px;background:color-mix(in srgb,var(--surface2) 92%,transparent);border:1px solid var(--line);box-shadow:var(--shadow);line-height:1.58;overflow-wrap:anywhere}.jb-message.user .jb-bubble{border-radius:20px;border-bottom-right-radius:8px;background:linear-gradient(135deg,var(--blue),color-mix(in srgb,var(--blue) 72%,var(--red)));color:#fff;border-color:transparent}.jb-bubble strong{color:var(--blue)}.jb-message.user .jb-bubble strong{color:#fff}.jb-bubble ul,.jb-bubble ol{margin:.45rem 0 .25rem 1.15rem;padding:0}.jb-bubble li{margin:.22rem 0}.jb-bubble code{display:inline-block;padding:.1rem .35rem;border-radius:8px;background:color-mix(in srgb,var(--bg) 84%,black);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.jb-md-heading{display:block;margin:.35rem 0 .18rem;font-weight:950;letter-spacing:-.015em;color:var(--text)}.jb-md-heading.level2{font-size:1.04rem}.jb-md-heading.level3{font-size:.98rem;color:var(--blue)}.jb-message.user .jb-md-heading{color:#fff}.jb-copy{justify-self:start;border:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 90%,transparent);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;cursor:pointer}.jb-message.user .jb-copy{display:none}.jb-typing{display:flex;gap:5px;align-items:center;padding:12px 14px;border-radius:18px;border-bottom-left-radius:6px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 92%,transparent);width:fit-content;box-shadow:var(--shadow)}.jb-dot{width:8px;height:8px;border-radius:50%;background:var(--red);opacity:.55;animation:jbDot 1.2s infinite ease-in-out}.jb-dot:nth-child(2){animation-delay:.16s}.jb-dot:nth-child(3){animation-delay:.32s}.jb-suggestions{padding:0;display:flex;flex-wrap:wrap;gap:8px}.jb-chip{border:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 88%,transparent);color:var(--text);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:850;cursor:pointer;transition:transform .16s ease,border-color .16s ease}.jb-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--blue) 28%,var(--line))}.jb-composer{padding:16px 18px 18px;display:grid;gap:12px;border-top:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface2) 92%,transparent))}.jb-compose-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:end}.jb-file-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px dashed color-mix(in srgb,var(--blue) 26%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--surface2) 78%,transparent)}.jb-file-btn,.jb-file-remove{border:1px solid var(--line);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900;cursor:pointer;background:var(--surface);color:var(--blue)}.jb-file-row input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.jb-file-status{font-size:12px;color:var(--muted);font-weight:750}.jb-file-status.ok{color:#0f7b3f}.jb-file-status.err{color:#b91c1c}.jb-file-remove{color:var(--muted)}.jb-composer textarea{width:100%;min-height:56px;max-height:150px;resize:vertical;padding:13px 14px;border-radius:18px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;outline:none}.jb-composer textarea:focus{border-color:color-mix(in srgb,var(--blue) 42%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--blue) 11%,transparent)}.jb-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:12px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding-top:10px}.jb-side{display:grid;gap:14px}.jb-card{padding:18px}.jb-card h2,.jb-card h3{margin:0 0 8px;letter-spacing:-.02em}.jb-card p{color:var(--muted);margin:0 0 10px}.jb-card ul{margin:.5rem 0 0 1.1rem;color:var(--muted);padding:0}.jb-lead-form{display:grid;gap:9px}.jb-lead-form input,.jb-lead-form textarea,.jb-lead-form select{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:14px;padding:10px 11px;font:inherit}.jb-lead-form textarea{min-height:78px;resize:vertical}.jb-form-status{font-size:12px;color:var(--muted);min-height:18px}.jb-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jb-mini{border:1px solid var(--line);border-radius:16px;background:var(--surface2);padding:12px}.jb-mini strong{display:block;font-size:.92rem}.jb-mini span{display:block;color:var(--muted);font-size:.82rem;margin-top:4px}
.jb-table-wrap{overflow-x:auto;margin:.65rem 0;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.jb-table{width:100%;border-collapse:separate;border-spacing:0;min-width:520px;font-size:.94rem;line-height:1.45}
.jb-table th,.jb-table td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);border-right:1px solid color-mix(in srgb,var(--line) 72%,transparent)}
.jb-table th:last-child,.jb-table td:last-child{border-right:0}.jb-table tr:last-child td{border-bottom:0}
.jb-table th{background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 12%,var(--surface)),color-mix(in srgb,var(--red) 7%,var(--surface)));color:var(--text);font-weight:900}
.jb-table td{background:color-mix(in srgb,var(--surface2) 88%,transparent)}
.jb-message.user .jb-table-wrap{border-color:rgba(255,255,255,.25)}.jb-message.user .jb-table th,.jb-message.user .jb-table td{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08)}
.jb-helper-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.jb-helper-btn{width:100%}.jb-modal-backdrop{position:fixed;inset:0;z-index:90;background:rgba(8,18,38,.54);backdrop-filter:blur(7px);display:none;align-items:center;justify-content:center;padding:18px}.jb-modal-backdrop.open{display:flex}.jb-modal{width:min(720px,96vw);max-height:86vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow2);padding:20px}.jb-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.jb-modal-head h2{margin:0}.jb-modal-close{border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:999px;width:38px;height:38px;font-weight:900;cursor:pointer}.jb-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jb-check{border:1px solid var(--line);border-radius:16px;background:var(--surface2);padding:12px}.jb-check strong{display:block}.jb-check span{display:block;color:var(--muted);font-size:.86rem;margin-top:4px}
.jb-source-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.jb-source-links a,.jb-source-result{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 90%,transparent);color:var(--blue);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;text-decoration:none}.jb-source-links a:hover,.jb-source-result:hover{border-color:color-mix(in srgb,var(--blue) 35%,var(--line));transform:translateY(-1px)}.jb-source-search{display:grid;gap:10px}.jb-source-search input{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:14px;padding:11px 12px;font:inherit}.jb-reference-section{margin:16px 0 0;padding:16px 16px 18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface2) 92%,transparent));box-shadow:0 14px 34px rgba(16,37,63,.08)}.jb-reference-section h3{margin:0 0 6px;font-size:1rem;letter-spacing:-.02em}.jb-reference-below{width:100%;}.jb-reference-section p{margin:0 0 12px;color:var(--muted)}.jb-source-results{display:flex;flex-wrap:wrap;gap:8px}.jb-form-status.ok{color:#0f7b3f}.jb-form-status.warn{color:#a05a00}.jb-form-status.err{color:#b91c1c}.jb-form-status a{font-weight:900;color:var(--blue);text-decoration:underline}
@media(max-width:620px){.jb-table{min-width:470px;font-size:.88rem}.jb-check-grid{grid-template-columns:1fr}.jb-modal{padding:16px;border-radius:22px}}
@keyframes jbDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-7px);opacity:1}}@keyframes jbFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.jb-grid{grid-template-columns:1fr}.jb-side{order:0}.jb-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jb-card{padding:16px}}@media(max-width:620px){.jb-source-links a,.jb-source-result{width:100%;justify-content:center}.nav.assistant-nav .wrap{gap:10px}.nav.assistant-nav img.brand-logo{height:54px;max-width:min(260px,58vw)}.nav.assistant-nav .controls .btn{padding:10px 12px}.jb-page{padding-top:14px}.jb-head{align-items:flex-start}.jb-actions{display:none}.jb-messages{height:62vh;min-height:390px;padding:14px}.jb-bubble-wrap{max-width:86%}.jb-compose-row{grid-template-columns:1fr}.jb-compose-row .btn{width:100%}.jb-mini-grid{grid-template-columns:1fr}.jb-meta{font-size:11px}.jb-title h1{font-size:1rem}}
  
    .jb-suggestions{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding-bottom:10px;-webkit-overflow-scrolling:touch}
    .jb-suggestions::-webkit-scrollbar{height:8px}.jb-suggestions::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--blue) 25%,var(--line));border-radius:999px}
    .jb-chip{white-space:nowrap;flex:0 0 auto;scroll-snap-align:start}
    .jb-time{font-size:10.5px;font-weight:800;color:var(--muted);padding:0 2px;letter-spacing:.01em}
    .jb-message.user .jb-time{text-align:right;color:color-mix(in srgb,#fff 78%,transparent)}
    .jb-source-results{display:grid;gap:8px;margin-top:10px;max-height:360px;overflow:auto;padding-right:2px}
    .jb-source-result{width:100%;justify-content:flex-start}
    .jb-source-links::before{content:'Referensi resmi:';font-size:11px;font-weight:900;color:var(--muted);margin-right:2px;align-self:center}
    .iot-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.iot-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.iot-benefit-card{border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:18px;box-shadow:var(--shadow)}.iot-benefit-card strong{display:block;margin-bottom:6px}.iot-benefit-card span{color:var(--muted)}@media(max-width:860px){.iot-benefit-grid{grid-template-columns:1fr}}


    /* v38 public-ready layout: chat box first, references outside below chat panel, no side lead/checklist blocks */
    .jb-grid{grid-template-columns:minmax(0,1fr);gap:18px}
    .jb-panel{scroll-margin-top:92px}
    .jb-reference-strip{margin:16px 0 0;padding:16px 18px;border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--shadow2)}
    .jb-reference-strip h3{margin:0 0 6px;font-size:.98rem;letter-spacing:-.015em}
    .jb-reference-strip p{margin:0 0 10px;color:var(--muted);font-size:.9rem;line-height:1.45}
    .jb-input-guide{font-size:13px;font-weight:900;color:var(--text);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
    .jb-input-guide span{color:var(--muted);font-weight:750}
    .jb-composer textarea::placeholder{color:transparent}
    .jb-source-results{display:flex;flex-wrap:wrap;gap:8px;max-height:none;overflow:visible;padding-right:0}
    .jb-source-result{width:auto;justify-content:center}
    .jb-composer.guide-focus{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--blue) 24%,transparent);transition:box-shadow .35s ease}
    .jb-chip.active-guide{border-color:color-mix(in srgb,var(--blue) 45%,var(--line));background:color-mix(in srgb,var(--blue) 9%,var(--surface2))}


    /* v50: production polish, pinned sessions, file note, handoff */
    .jb-session-card.pinned{border-color:color-mix(in srgb,var(--red) 34%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--red) 5%,var(--surface2)),color-mix(in srgb,var(--blue) 4%,var(--surface2)))}
    .jb-pin-badge{display:inline-flex;align-items:center;gap:4px;margin-left:6px;border:1px solid color-mix(in srgb,var(--red) 28%,var(--line));border-radius:999px;padding:2px 7px;font-size:10px;font-weight:950;color:var(--red);vertical-align:middle}
    .jb-file-status.ok::before{content:'✓ ';font-weight:950}.jb-file-status.err::before{content:'! ';font-weight:950}
    .jb-handoff-action.whatsapp{color:#138a45}
    /* v44: chat messages restored inside chatbot; separate row manages conversation sessions */
    .jb-panel{overflow:hidden}
    .jb-panel .jb-messages{height:min(58vh,640px);min-height:380px;border-bottom:1px solid var(--line)}
    .jb-panel .jb-composer{border-top:0}
    .jb-conversation-section{overflow:hidden;scroll-margin-top:92px}
    .jb-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface2) 92%,transparent))}
    .jb-section-head h2{margin:0;font-size:1rem;letter-spacing:-.015em}
    .jb-section-head p{margin:4px 0 0;color:var(--muted);font-size:.88rem;font-weight:750}
    .jb-new-chat,.jb-session-toolbar .btn{white-space:nowrap}
    .jb-session-toolbar{display:flex;gap:10px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent);background:color-mix(in srgb,var(--surface2) 70%,transparent)}
    .jb-session-list{display:grid;gap:10px;padding:16px 18px;max-height:420px;overflow:auto}
    .jb-session-empty{border:1px dashed var(--line);border-radius:18px;padding:16px;color:var(--muted);font-weight:750;background:color-mix(in srgb,var(--surface2) 76%,transparent)}
    .jb-session-card{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:13px 14px;background:color-mix(in srgb,var(--surface2) 84%,transparent);box-shadow:var(--shadow);cursor:pointer;text-align:left;color:var(--text)}
    .jb-session-card:hover{border-color:color-mix(in srgb,var(--blue) 34%,var(--line));transform:translateY(-1px)}
    .jb-session-card.active{border-color:color-mix(in srgb,var(--blue) 52%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 10%,transparent),var(--shadow)}
    .jb-session-title{font-weight:950;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .jb-session-meta{margin-top:4px;color:var(--muted);font-size:12px;font-weight:750}.jb-session-actions{display:flex;gap:8px;align-items:center}.jb-session-delete{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900;cursor:pointer}.jb-session-delete:hover{color:#b91c1c;border-color:color-mix(in srgb,#b91c1c 35%,var(--line))}

    @media(max-width:620px){.jb-reference-section{margin:14px 0 0;padding:14px}.jb-source-result{width:100%;justify-content:center}.jb-input-guide{font-size:12px}.jb-messages{height:58vh}.jb-panel .jb-messages{min-height:340px}.jb-section-head{align-items:flex-start;flex-direction:column}.jb-new-chat,.jb-session-toolbar .btn{width:100%}.jb-session-card{grid-template-columns:1fr}.jb-session-actions{justify-content:flex-start}.jb-mascot{width:54px;height:54px}}
  
    /* v45: conversation manager polish */
    .jb-history-tools{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center;padding:14px 18px;border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent);background:color-mix(in srgb,var(--surface2) 70%,transparent)}
    .jb-history-search{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:11px 14px;font:inherit;font-weight:750;outline:none}
    .jb-history-search:focus{border-color:color-mix(in srgb,var(--blue) 42%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--blue) 10%,transparent)}
    .jb-session-count{color:var(--muted);font-size:12px;font-weight:850;white-space:nowrap}
    .jb-session-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
    .jb-session-action{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900;cursor:pointer}.jb-session-action:hover{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 32%,var(--line))}.jb-session-action.danger:hover{color:#b91c1c;border-color:color-mix(in srgb,#b91c1c 35%,var(--line))}
    .jb-session-preview{margin-top:4px;color:var(--muted);font-size:11.5px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:760px}.jb-history-note{padding:0 18px 14px;color:var(--muted);font-size:12px;font-weight:750}
    @media(max-width:620px){.jb-history-tools{grid-template-columns:1fr}.jb-session-count{white-space:normal}.jb-session-actions{justify-content:flex-start}.jb-session-preview{white-space:normal}}

    /* v46: compact service handoff and stronger customer support workflow */
    .jb-handoff-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;padding:9px;border:1px dashed color-mix(in srgb,var(--blue) 24%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--surface) 82%,transparent)}
    .jb-handoff-action{border:1px solid var(--line);background:var(--surface);color:var(--blue);border-radius:999px;padding:7px 10px;font-size:11.5px;font-weight:950;cursor:pointer;box-shadow:0 6px 16px rgba(16,37,63,.06)}
    .jb-handoff-action:hover{border-color:color-mix(in srgb,var(--blue) 38%,var(--line));transform:translateY(-1px)}
    .jb-handoff-action.secondary{color:var(--muted)}
    .jb-handoff-note{width:100%;font-size:11.5px;color:var(--muted);font-weight:750;line-height:1.45}
    .jb-toast{position:fixed;left:50%;bottom:22px;z-index:120;transform:translate(-50%,14px);opacity:0;pointer-events:none;background:color-mix(in srgb,var(--text) 92%,#000);color:var(--surface);border-radius:999px;padding:10px 14px;font-size:12px;font-weight:900;box-shadow:var(--shadow2);transition:opacity .2s ease,transform .2s ease}
    .jb-toast.show{opacity:1;transform:translate(-50%,0)}
    @media(max-width:620px){.jb-handoff-action{width:100%;text-align:center}.jb-handoff-actions{padding:8px}.jb-toast{width:calc(100% - 32px);text-align:center;border-radius:16px}}


    /* v47: reliability/status polish, draft autosave, regenerate support */
    .jb-system-status{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:color-mix(in srgb,var(--surface2) 82%,transparent);font-size:11px;font-weight:900;color:var(--muted)}
    .jb-system-status::before{content:'';width:8px;height:8px;border-radius:50%;background:color-mix(in srgb,var(--muted) 65%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--muted) 10%,transparent)}
    .jb-system-status.ok{color:#0f7b3f}.jb-system-status.ok::before{background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.13)}
    .jb-system-status.warn{color:#a05a00}.jb-system-status.warn::before{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.15)}
    .jb-system-status.err{color:#b91c1c}.jb-system-status.err::before{background:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.14)}
    .jb-draft-note{font-size:11px;font-weight:800;color:var(--muted)}
    .jb-retry-note{margin-top:8px;font-size:12px;color:var(--muted);font-weight:750}


    /* v49: public UI cleanup */
    .jb-file-row input[type=file]{display:none!important;appearance:none!important;-webkit-appearance:none!important}
    .jb-system-status[hidden],.jb-system-status.err,.jb-system-status.warn{display:none!important}
    .jb-system-status.warn{background:color-mix(in srgb,var(--surface2) 92%,transparent)}
    .jb-session-toolbar .btn,.jb-history-tools .btn{white-space:nowrap}
    @media (max-width:720px){.jb-actions{width:100%;justify-content:flex-start}.jb-head{align-items:flex-start}.jb-compose-row{grid-template-columns:1fr}.jb-compose-row .btn{width:100%}.jb-session-toolbar{grid-template-columns:1fr}.jb-history-tools{grid-template-columns:1fr}.jb-history-tools .btn{width:100%}}


    /* v1.4.4: response readability and isolated Javabot diagnostic */
    .jb-bubble p{margin:.34rem 0;line-height:1.58}
    .jb-bubble>p:first-child,.jb-bubble>.jb-md-heading:first-child,.jb-bubble>ul:first-child,.jb-bubble>ol:first-child{margin-top:0}
    .jb-bubble>p:last-child,.jb-bubble>ul:last-child,.jb-bubble>ol:last-child,.jb-bubble>.jb-table-wrap:last-child,.jb-bubble>pre:last-child{margin-bottom:0}
    .jb-bubble .jb-md-heading{margin:.76rem 0 .26rem;line-height:1.28}
    .jb-bubble .jb-md-heading+.jb-md-heading{margin-top:.34rem}
    .jb-bubble ul,.jb-bubble ol{margin:.3rem 0 .55rem 1.2rem}
    .jb-bubble pre.jb-code-block{overflow:auto;margin:.48rem 0;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 86%,black);white-space:pre-wrap}
    .jb-bubble pre.jb-code-block code{display:block;padding:0;background:transparent;white-space:pre-wrap}
    .jb-diagnostic-modal[hidden]{display:none!important}
    .jb-diagnostic-modal{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;padding:18px;background:rgba(7,15,28,.62);backdrop-filter:blur(8px)}
    .jb-diagnostic-dialog{width:min(920px,100%);max-height:min(88vh,860px);display:grid;grid-template-rows:auto auto minmax(260px,1fr);overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:0 32px 90px rgba(0,0,0,.34)}
    .jb-diagnostic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface2) 90%,transparent))}
    .jb-diagnostic-head h2{margin:0;font-size:1.08rem}.jb-diagnostic-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
    .jb-diagnostic-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 74%,transparent)}
    .jb-diagnostic-report{width:100%;height:100%;min-height:300px;resize:none;border:0;outline:0;padding:16px 18px;background:var(--surface);color:var(--text);font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:2}
    .jb-diagnostic-summary{margin-left:auto;align-self:center;color:var(--muted);font-size:12px;font-weight:850}
    body.jb-diagnostic-open{overflow:hidden}
    @media(max-width:680px){.jb-diagnostic-modal{padding:8px}.jb-diagnostic-dialog{max-height:94vh;border-radius:18px}.jb-diagnostic-actions .btn{flex:1 1 auto}.jb-diagnostic-summary{width:100%;margin-left:0}.jb-diagnostic-report{padding:13px;font-size:11px}}


    /* v1.4.8 intent-aware score and contextual handoff; scoped to the Javabot page. */
    .jb-bubble ul{list-style:disc}.jb-bubble ol{list-style:decimal}.jb-quality{margin-top:2px;border:1px solid color-mix(in srgb,var(--line) 88%,var(--blue));border-radius:15px;background:color-mix(in srgb,var(--surface2) 86%,transparent);overflow:hidden}.jb-quality summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;font-size:12px;font-weight:900;color:var(--text)}.jb-quality summary::-webkit-details-marker{display:none}.jb-quality summary::after{content:'+';font-size:15px;color:var(--muted)}.jb-quality[open] summary::after{content:'−'}.jb-quality-score{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.jb-quality-number{font-size:13px;color:var(--blue)}.jb-quality-grade{color:var(--muted);font-weight:800}.jb-quality-body{border-top:1px solid var(--line);padding:10px 11px;display:grid;gap:9px}.jb-quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.jb-quality-metric{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:10px;background:color-mix(in srgb,var(--surface) 78%,transparent);font-size:11px}.jb-quality-metric span{color:var(--muted)}.jb-quality-note{font-size:11px;color:var(--muted);line-height:1.45}.jb-quality-alert{padding:8px 9px;border-radius:11px;background:color-mix(in srgb,var(--red) 7%,var(--surface));font-size:11px;line-height:1.45}.jb-quality-list{margin:.15rem 0 0 1rem!important;font-size:11px;color:var(--muted)}.jb-quality-list li{margin:.15rem 0}.jb-quality[data-grade="strong_guidance"]{border-color:color-mix(in srgb,#138a51 40%,var(--line))}.jb-quality[data-grade="incomplete_review"],.jb-quality[data-grade="human_assistance_required"]{border-color:color-mix(in srgb,var(--red) 40%,var(--line))}@media(max-width:560px){.jb-quality-grid{grid-template-columns:1fr}.jb-quality summary{align-items:flex-start}}

    /* v1.4.9 functional integrity: atomic tables, clear composer boundary, wider desktop answers. */

    /* v1.4.10 version contract and system-map badge; scoped to Javabot header only. */
    .jb-version-badge{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:900;line-height:1.2;cursor:pointer;white-space:nowrap}
    .jb-version-badge[data-state="ready"]{color:#087a55;border-color:rgba(8,122,85,.28)}
    .jb-version-badge[data-state="verify"],.jb-version-badge[data-state="unverified"]{color:#8a5a00;border-color:rgba(138,90,0,.3)}
    .jb-version-badge[data-state="mismatch"]{color:#b42318;border-color:rgba(180,35,24,.34)}
    @media(max-width:680px){.jb-version-badge{font-size:10px;padding:2px 7px}.jb-title small{display:block}}

    .jb-message.bot .jb-bubble-wrap{max-width:min(94%,1040px)}
    .jb-message.user .jb-bubble-wrap{max-width:min(82%,740px)}
    .jb-table-fallback{white-space:pre-wrap;overflow:auto;margin:.65rem 0;padding:10px 12px;border:1px dashed var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 84%,transparent);font:inherit;font-size:.92rem}
    .jb-quality-penalties{margin:.15rem 0 0 1rem!important;font-size:11px;color:var(--muted)}
    .jb-quality-penalties li{margin:.15rem 0}
    .jb-message[data-reference-active="true"] .jb-bubble{box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 13%,transparent),var(--shadow)}
    @media(min-width:1180px){.jb-grid{max-width:1360px}.jb-page .container{max-width:min(1420px,calc(100% - 32px))}}


    /* v1.4.11 history workspace, accessibility and safe bulk actions. */
    body:not(.dark) .jb-time,body:not(.dark) .jb-message.user .jb-time{color:#475569}
    body.dark .jb-time,body.dark .jb-message.user .jb-time{color:#cbd5e1}
    .jb-time{font-size:12px;line-height:1.35;font-weight:800}
    .jb-workspace{display:grid;grid-template-columns:minmax(300px,340px) minmax(0,1fr);gap:16px;align-items:start;min-width:0}
    .jb-chat-column{display:grid;gap:16px;min-width:0}
    .jb-history-panel{padding:0;position:sticky;top:16px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;min-width:0;overflow:hidden}
    .jb-history-panel .jb-section-head{flex:none;padding:16px 16px 12px}
    .jb-history-panel .jb-section-head p{font-size:12px;line-height:1.45;margin-bottom:0}.jb-history-panel .jb-session-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px 14px}.jb-history-panel .jb-session-toolbar .btn{min-width:0;padding:7px 8px;font-size:11px}
    .jb-history-primary{display:grid;grid-template-columns:1fr auto;gap:8px;padding:0 14px 12px;border-bottom:1px solid var(--line)}
    .jb-history-primary .btn{min-width:0;padding-inline:10px}
    .jb-history-tools{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 14px}
    .jb-history-search{grid-column:1/-1}
    .jb-history-tools .btn{padding-inline:10px}
    .jb-session-count{align-self:center;white-space:normal}
    .jb-session-list{flex:1;min-height:160px;max-height:none;padding:12px 14px;overflow:auto}
    .jb-history-note{flex:none;padding:0 14px 12px;font-size:11px}
    .jb-history-close,.jb-history-toggle{display:none}
    .jb-history-bulk{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--blue) 5%,var(--surface2))}
    .jb-history-bulk[hidden]{display:none}
    .jb-history-selected-count{font-size:12px;font-weight:900;color:var(--text);margin-right:auto}
    .jb-history-bulk .btn{padding:7px 9px;font-size:11px}
    .jb-session-card{grid-template-columns:auto minmax(0,1fr) auto;padding:11px 12px;border-radius:16px;gap:9px}
    .jb-session-card.selection-mode{cursor:default}
    .jb-session-select{display:none;width:18px;height:18px;accent-color:var(--blue);cursor:pointer}
    .jb-session-card.selection-mode .jb-session-select{display:block}
    .jb-session-title{font-size:13px}.jb-session-preview{max-width:100%;font-size:11px}
    .jb-session-actions{position:relative;display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
    .jb-session-pin,.jb-session-menu-btn{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;cursor:pointer}
    .jb-session-pin:hover,.jb-session-menu-btn:hover{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 32%,var(--line))}
    .jb-session-menu{grid-column:1/-1;position:static;min-width:0;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}
    .jb-session-menu[hidden]{display:none}.jb-session-menu button{border:0;background:transparent;color:var(--text);text-align:left;padding:8px 9px;border-radius:9px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.jb-session-menu button:hover{background:var(--surface2)}.jb-session-menu button.danger{color:#b42318}
    .jb-history-backdrop{position:fixed;inset:0;z-index:998;background:rgba(2,6,23,.44);backdrop-filter:blur(2px)}
    .jb-history-backdrop[hidden]{display:none}
    body.jb-history-open{overflow:hidden}
    .jb-confirm-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:16px;background:rgba(2,6,23,.56);backdrop-filter:blur(4px)}
    .jb-confirm-modal[hidden]{display:none}.jb-confirm-dialog{width:min(460px,100%);border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow2);padding:20px}.jb-confirm-dialog h2{margin:0 0 8px;font-size:1.08rem}.jb-confirm-dialog p{margin:0 0 12px;color:var(--muted);line-height:1.5}.jb-confirm-meta{padding:10px 12px;border-radius:13px;background:var(--surface2);font-size:12px;line-height:1.5;margin-bottom:12px}.jb-confirm-guard{display:flex;gap:9px;align-items:flex-start;margin:12px 0;font-size:12px;color:var(--text)}.jb-confirm-guard[hidden]{display:none}.jb-confirm-guard input{margin-top:2px}.jb-confirm-actions{display:flex;justify-content:flex-end;gap:9px}.jb-danger-btn{background:#b42318!important;border-color:#b42318!important;color:#fff!important}.jb-danger-btn:disabled{opacity:.45;cursor:not-allowed}
    .jb-undo-toast{position:fixed;left:50%;bottom:22px;z-index:1200;transform:translateX(-50%);display:flex;align-items:center;gap:12px;max-width:min(92vw,560px);padding:11px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow2);color:var(--text);font-size:12px;font-weight:800}.jb-undo-toast[hidden]{display:none}.jb-undo-toast button{border:0;background:transparent;color:var(--blue);font-weight:950;cursor:pointer}
    .jb-history-layout-status{font-size:10px;color:var(--muted);font-weight:800}
    @media(max-width:1099px){
      .jb-workspace{grid-template-columns:minmax(0,1fr)}
      .jb-chat-column{grid-column:1}
      .jb-history-panel{position:fixed;left:0;top:0;bottom:0;z-index:999;width:min(88vw,360px);max-height:none;border-radius:0 24px 24px 0;transform:translateX(-104%);transition:transform .22s ease;box-shadow:var(--shadow2)}
      body.jb-history-open .jb-history-panel{transform:translateX(0)}
      .jb-history-close,.jb-history-toggle{display:inline-flex}
      .jb-history-close{margin-left:auto}
    }
    @media(max-width:620px){.jb-actions{display:flex;width:auto;margin-left:auto}.jb-actions>:not(.jb-history-toggle){display:none}.jb-history-toggle{display:inline-flex}.jb-history-primary{grid-template-columns:1fr}.jb-history-tools{grid-template-columns:1fr}.jb-history-tools .btn{width:100%}.jb-history-bulk{align-items:stretch}.jb-history-bulk .btn{flex:1 1 auto}.jb-session-card{grid-template-columns:auto minmax(0,1fr) auto}.jb-confirm-actions{flex-direction:column-reverse}.jb-confirm-actions .btn{width:100%}}


    /* v1.4.12: modern conversation workspace, transactional history safety, and simplified UX */
    :root{--jb-sidebar-width:288px;--jb-chat-max:860px;--jb-app-border:color-mix(in srgb,var(--line) 88%,transparent)}
    body{min-height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}
    body>.topbar{flex:none}.assistant-nav{flex:none}.assistant-nav .wrap{max-width:none;padding-inline:18px}
    main{flex:1;min-height:0;overflow:hidden}.footer{display:none!important}
    .jb-page{height:100%;padding:0}.jb-page>.wrap,.jb-grid{width:100%;height:100%;max-width:none!important;padding:0!important;margin:0!important}
    .jb-workspace{height:100%;min-height:0;display:grid;grid-template-columns:var(--jb-sidebar-width) minmax(0,1fr);gap:0;background:var(--surface);border-top:1px solid var(--jb-app-border)}
    .jb-chat-column{min-width:0;min-height:0;display:block}.jb-panel{height:100%;min-height:0;border:0;border-radius:0;box-shadow:none;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--surface);overflow:hidden}
    .jb-history-panel{position:relative;inset:auto;top:auto;height:100%;max-height:none;border:0;border-right:1px solid var(--jb-app-border);border-radius:0;box-shadow:none;background:color-mix(in srgb,var(--surface2) 88%,var(--surface));padding:0;display:flex;flex-direction:column;overflow:hidden}
    .jb-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 14px 10px}.jb-sidebar-identity{display:flex;align-items:center;gap:10px;min-width:0}.jb-sidebar-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),color-mix(in srgb,var(--blue) 55%,var(--red)));color:#fff;font-size:11px;font-weight:950;letter-spacing:.02em;box-shadow:0 6px 18px rgba(31,78,216,.16)}.jb-sidebar-identity strong{display:block;font-size:14px;line-height:1.1}.jb-sidebar-identity small{display:block;margin-top:3px;color:var(--muted);font-size:10.5px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .jb-sidebar-new{margin:2px 12px 10px;width:calc(100% - 24px);min-height:44px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--text);display:flex;align-items:center;gap:10px;justify-content:flex-start;padding:10px 12px;font:inherit;font-size:13px;font-weight:850;cursor:pointer;box-shadow:0 3px 10px rgba(15,23,42,.035)}.jb-sidebar-new:hover{background:color-mix(in srgb,var(--surface2) 78%,var(--surface));border-color:color-mix(in srgb,var(--blue) 28%,var(--line))}.jb-sidebar-new span{font-size:19px;font-weight:500;line-height:1}
    .jb-sidebar-search-wrap{position:relative;margin:0 12px 8px}.jb-sidebar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}.jb-history-search{width:100%;border:1px solid transparent;background:color-mix(in srgb,var(--surface) 72%,transparent);color:var(--text);border-radius:11px;padding:10px 12px 10px 34px;font:inherit;font-size:12px;font-weight:650;outline:none}.jb-history-search:focus{border-color:color-mix(in srgb,var(--blue) 40%,var(--line));background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 9%,transparent)}
    .jb-history-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 14px 8px}.jb-session-count{font-size:11px;color:var(--muted);font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jb-history-select-toggle{border:0;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:850;cursor:pointer;border-radius:8px;padding:6px 7px}.jb-history-select-toggle:hover{background:var(--surface);color:var(--text)}
    .jb-history-bulk{margin:0 10px 8px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:grid;grid-template-columns:1fr 1fr;gap:6px}.jb-history-bulk[hidden]{display:none}.jb-history-selected-count{grid-column:1/-1;font-size:11px;font-weight:850;color:var(--text);padding:2px 4px}.jb-history-bulk .btn{min-height:34px;padding:6px 8px;font-size:10.5px;border-radius:9px}.jb-history-bulk #cancelSelectionBtn{grid-column:1/-1}
    .jb-history-storage-banner{margin:0 10px 8px;padding:10px 11px;border:1px solid color-mix(in srgb,#d97706 38%,var(--line));border-radius:12px;background:color-mix(in srgb,#f59e0b 8%,var(--surface));color:var(--text);font-size:11px;line-height:1.45}.jb-history-storage-banner[hidden]{display:none}.jb-history-storage-banner strong{display:block;margin-bottom:3px}.jb-history-storage-banner-actions{display:flex;gap:6px;margin-top:8px}.jb-history-storage-banner .btn{padding:6px 8px;font-size:10.5px}
    .jb-session-list{flex:1;min-height:0;max-height:none;padding:2px 8px 10px;overflow:auto;scrollbar-width:thin}.jb-history-group{margin:0;padding:0;list-style:none}.jb-history-group-title{padding:10px 8px 5px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.jb-session-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;margin:1px 0;padding:3px;border:0;border-radius:10px;background:transparent;box-shadow:none}.jb-session-card:hover,.jb-session-card.active{background:color-mix(in srgb,var(--surface) 88%,transparent);border:0;box-shadow:none}.jb-session-card.active::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:99px;background:var(--blue)}.jb-session-open{min-width:0;border:0;background:transparent;color:var(--text);text-align:left;padding:8px 7px;border-radius:8px;cursor:pointer;font:inherit}.jb-session-open:focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 70%,transparent);outline-offset:1px}.jb-session-title{display:block;font-size:12px;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jb-session-meta{margin-top:3px;font-size:10px;font-weight:650;color:var(--muted)}.jb-session-preview{display:none}.jb-pin-badge{display:none}.jb-session-select{width:17px;height:17px;margin-left:5px}.jb-session-actions{display:flex;align-items:center;gap:2px}.jb-session-pin,.jb-session-menu-btn{width:30px;height:30px;border:0;background:transparent;border-radius:8px;color:var(--muted);opacity:.24}.jb-session-card:hover .jb-session-pin,.jb-session-card:hover .jb-session-menu-btn,.jb-session-card:focus-within .jb-session-pin,.jb-session-card:focus-within .jb-session-menu-btn,.jb-session-card.pinned .jb-session-pin{opacity:1}.jb-session-pin:hover,.jb-session-menu-btn:hover{background:var(--surface2);color:var(--text);border:0}.jb-session-menu{position:absolute;right:4px;top:37px;z-index:20;min-width:168px;display:grid;grid-template-columns:1fr;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 16px 40px rgba(15,23,42,.18)}.jb-session-menu[hidden]{display:none}.jb-session-menu button{padding:9px 10px;font-size:12px;border-radius:8px}.jb-session-empty{padding:22px 14px;color:var(--muted);font-size:12px;line-height:1.55;text-align:center}
    .jb-sidebar-manage{margin:0 10px 8px;border-top:1px solid var(--line);padding-top:7px}.jb-sidebar-manage summary{list-style:none;cursor:pointer;padding:7px 8px;border-radius:8px;color:var(--muted);font-size:11px;font-weight:800}.jb-sidebar-manage summary::-webkit-details-marker{display:none}.jb-sidebar-manage summary:hover{background:var(--surface);color:var(--text)}.jb-sidebar-manage-menu{display:grid;gap:5px;padding:5px 0}.jb-sidebar-manage-menu .btn{width:100%;justify-content:flex-start;min-height:34px;padding:7px 9px;font-size:10.5px;border-radius:9px}.jb-sidebar-bottom{flex:none;display:grid;gap:6px;padding:8px 12px 12px;border-top:1px solid var(--line)}.jb-sidebar-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.jb-sidebar-link{border:0;background:transparent;color:var(--muted);padding:7px 8px;border-radius:8px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;text-align:left}.jb-sidebar-link:hover{background:var(--surface);color:var(--text)}.jb-history-storage-status,.jb-sidebar-version{font-size:10px;color:var(--muted);font-weight:750}.jb-history-layout-status,.jb-history-note,.jb-legacy-history-controls{display:none!important}
    .jb-head{min-height:62px;padding:10px 18px;border-bottom:1px solid var(--jb-app-border);background:color-mix(in srgb,var(--surface) 98%,transparent);box-shadow:none}.jb-head-main{display:flex;align-items:center;gap:9px;min-width:0}.jb-brand{gap:9px}.jb-mascot{width:36px;height:36px;border-radius:12px;padding:2px;box-shadow:none}.jb-mascot img{border-radius:10px}.jb-title h1{max-width:min(48vw,560px);font-size:14px;font-weight:820;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jb-title small{margin-top:2px;font-size:10px;font-weight:680}.jb-actions{gap:5px;flex-wrap:nowrap}.jb-actions .btn{min-height:36px;padding:7px 10px;font-size:11px}.jb-version-badge{min-height:31px;padding:5px 9px}.jb-head-diagnostic{width:36px!important;padding:0!important;font-size:0!important}.jb-head-diagnostic::before{content:'⋯';font-size:18px;line-height:1}.jb-head .jb-history-toggle{width:36px!important;padding:0!important;font-size:0!important}.jb-head .jb-history-toggle::before{content:'☰';font-size:17px}
    .jb-messages{height:auto;min-height:0;padding:24px max(20px,calc((100% - var(--jb-chat-max))/2));gap:8px;overflow-y:auto;overflow-x:hidden;background:var(--surface);scroll-padding-bottom:140px}.jb-message{width:100%;max-width:var(--jb-chat-max);margin:0 auto;padding:13px 0;gap:13px;align-items:flex-start;animation:jbFade .14s ease-out}.jb-message.user{justify-content:flex-end;padding-block:8px}.jb-avatar{width:28px;height:28px;min-width:28px;border-radius:9px;box-shadow:none;background:transparent;border:0}.jb-message.user .jb-avatar{display:none}.jb-bubble-wrap{width:min(100%,calc(var(--jb-chat-max) - 42px));max-width:none;gap:7px}.jb-message.user .jb-bubble-wrap{width:auto;max-width:min(76%,650px);justify-items:end}.jb-bubble{width:100%;padding:1px 0;border:0;border-radius:0;background:transparent;box-shadow:none;line-height:1.66;font-size:14px}.jb-message.user .jb-bubble{width:auto;padding:10px 14px;border-radius:18px;background:color-mix(in srgb,var(--surface2) 92%,var(--blue) 2%);color:var(--text);border:1px solid color-mix(in srgb,var(--line) 88%,transparent);box-shadow:none}.jb-message.user .jb-bubble strong,.jb-bubble strong{color:inherit}.jb-time{font-size:10px!important;font-weight:650!important;color:var(--muted)!important;opacity:.82}.jb-message.user .jb-time{text-align:right}.jb-md-heading.level2{font-size:1.08rem;margin-top:.95rem}.jb-md-heading.level3{font-size:.98rem;color:var(--text);margin-top:.75rem}.jb-table-wrap{box-shadow:none;border-radius:12px}.jb-message-actions{display:flex;align-items:center;gap:3px;flex-wrap:wrap;margin-top:1px}.jb-message-action,.jb-message-actions>details>summary{min-height:30px;border:0;background:transparent;color:var(--muted);border-radius:8px;padding:6px 8px;font:inherit;font-size:10.5px;font-weight:800;cursor:pointer;list-style:none}.jb-message-action:hover,.jb-message-actions>details>summary:hover{background:var(--surface2);color:var(--text)}.jb-message-actions>details>summary::-webkit-details-marker{display:none}.jb-message-actions details{position:relative;border:0;background:transparent;overflow:visible;margin:0}.jb-message-actions .jb-quality summary{padding:6px 8px}.jb-message-actions .jb-quality-score{gap:3px}.jb-message-actions .jb-quality-number{font-size:10.5px}.jb-message-actions .jb-quality-grade{display:none}.jb-message-actions .jb-quality summary::after{display:none}.jb-message-actions .jb-quality-body,.jb-inline-sources-body,.jb-handoff-body{position:absolute;left:0;bottom:calc(100% + 7px);z-index:40;width:min(430px,calc(100vw - 34px));max-height:min(58vh,520px);overflow:auto;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 18px 52px rgba(15,23,42,.2)}.jb-message-actions .jb-quality-body{display:grid}.jb-inline-sources-body,.jb-handoff-body{display:grid;gap:6px}.jb-inline-sources-body a,.jb-handoff-body button{display:flex;width:100%;align-items:center;justify-content:flex-start;border:0;border-radius:9px;background:transparent;color:var(--text);padding:9px 10px;text-decoration:none;font:inherit;font-size:12px;font-weight:720;cursor:pointer}.jb-inline-sources-body a:hover,.jb-handoff-body button:hover{background:var(--surface2)}.jb-inline-sources[open] summary,.jb-handoff-menu[open] summary,.jb-quality[open] summary{background:var(--surface2);color:var(--text)}.jb-copy{display:none!important}.jb-handoff-actions,.jb-source-links{border:0;background:transparent;padding:0;margin:0;box-shadow:none}.jb-handoff-note{padding:5px 8px;font-size:11px}.jb-quality{margin:0;border:0;border-radius:0;background:transparent;overflow:visible}.jb-quality-alert{border-radius:10px}.jb-typing{border:0;background:transparent;box-shadow:none;padding:8px}
    .jb-composer{padding:8px 20px 14px;border-top:0;background:linear-gradient(180deg,transparent 0,var(--surface) 20%);gap:7px}.jb-composer>*{width:100%;max-width:var(--jb-chat-max);margin-inline:auto}.jb-input-guide{display:none}.jb-compose-row{display:flex;align-items:flex-end;gap:6px;padding:6px 7px;border:1px solid color-mix(in srgb,var(--line) 94%,transparent);border-radius:25px;background:var(--surface);box-shadow:0 8px 26px rgba(15,23,42,.08)}.jb-compose-row:focus-within{border-color:color-mix(in srgb,var(--blue) 40%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 8%,transparent),0 10px 28px rgba(15,23,42,.08)}.jb-composer textarea{flex:1;min-height:42px;max-height:160px;padding:10px 8px;border:0;border-radius:0;background:transparent;box-shadow:none!important;resize:none;line-height:1.45}.jb-composer textarea::placeholder{color:var(--muted)!important}.jb-file-btn{width:38px;height:38px;min-width:38px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:0;cursor:pointer}.jb-file-btn::before{content:'＋';font-size:21px;font-weight:430;line-height:1}.jb-file-btn:hover{background:var(--surface2);color:var(--text)}.jb-compose-row #sendBtn{width:38px;height:38px;min-width:38px;padding:0;border-radius:50%;font-size:0;display:grid;place-items:center}.jb-compose-row #sendBtn::before{content:'↑';font-size:19px;font-weight:900}.jb-compose-row #sendBtn[aria-label^='Hentikan']::before,.jb-compose-row #sendBtn[aria-label^='Stop']::before{content:'■';font-size:12px}.jb-compose-row #clearBtn{display:none!important}.jb-file-row{display:none;align-items:center;gap:8px;padding:5px 10px;border:0;border-radius:10px;background:transparent}.jb-file-row.has-file{display:flex}.jb-file-row .jb-file-btn,.jb-file-row input{display:none!important}.jb-file-status{font-size:10.5px}.jb-file-remove{padding:5px 7px;border:0;background:var(--surface2);font-size:10px}.jb-suggestions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 0 3px;overflow:visible}.jb-chip{min-height:54px;text-align:left;border-radius:13px;padding:9px 10px;font-size:11px;font-weight:760;background:color-mix(in srgb,var(--surface2) 64%,transparent);box-shadow:none}.jb-panel.jb-has-conversation .jb-suggestions{display:none}.jb-meta{justify-content:center;border:0;padding:0;font-size:10px;text-align:center}.jb-meta>span:last-child{display:none}.jb-system-status{padding:3px 7px;font-size:9px}.jb-reference-section{display:none!important}
    .jb-history-backdrop{z-index:998}.jb-confirm-dialog,.jb-diagnostic-dialog{border-radius:18px}.jb-confirm-dialog :focus-visible,.jb-diagnostic-dialog :focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 70%,transparent);outline-offset:2px}
    @media(max-width:1099px){body{overflow:hidden}.jb-workspace{grid-template-columns:minmax(0,1fr)}.jb-history-panel{position:fixed;left:0;top:0;bottom:0;z-index:999;width:min(86vw,320px);height:100%;border-right:1px solid var(--line);transform:translateX(-104%);transition:transform .2s ease}.jb-history-panel[inert]{pointer-events:none}.jb-chat-column{grid-column:1}.jb-head .jb-history-toggle,.jb-history-close{display:inline-grid}.jb-head{padding-inline:12px}.jb-messages{padding-inline:max(16px,calc((100% - var(--jb-chat-max))/2))}}
    @media(max-width:700px){body>.topbar{display:none}.assistant-nav{display:none}.jb-head{min-height:56px}.jb-mascot{display:none}.jb-title small{display:none}.jb-title h1{max-width:58vw}.jb-actions .jb-version-badge{display:none}.jb-messages{padding:15px 14px}.jb-message{padding:10px 0}.jb-avatar{width:25px;height:25px;min-width:25px}.jb-bubble-wrap{width:calc(100% - 38px)}.jb-message.user .jb-bubble-wrap{max-width:88%}.jb-composer{padding:7px 10px 10px}.jb-suggestions{grid-template-columns:repeat(2,minmax(0,1fr))}.jb-chip:nth-child(n+5){display:none}.jb-message-actions .jb-quality-body,.jb-inline-sources-body,.jb-handoff-body{position:fixed;left:10px;right:10px;bottom:78px;width:auto;max-height:60vh}.jb-history-bulk{grid-template-columns:1fr 1fr}.jb-confirm-actions{flex-direction:column-reverse}.jb-confirm-actions .btn{width:100%}}
    @media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.jb-mascot img{transition:none!important}}




    /* v1.4.13: verified workspace, UI precision, and compact conversational polish. */
    :root{--jb-sidebar-width:304px;--jb-chat-max:900px}
    body>.topbar .wrap{min-height:28px;padding:4px 18px;font-size:11px;line-height:1.25}
    body>.topbar .small{font-size:10.5px}
    .assistant-nav .wrap{min-height:62px;padding-block:7px}
    .assistant-nav .brand-logo{height:36px;width:auto}
    .assistant-nav .controls .btn{min-height:38px;padding:8px 13px;font-size:12px}
    .assistant-nav .controls .icon-btn{width:38px;height:38px}
    .jb-session-list{align-content:start;grid-auto-rows:max-content}
    .jb-history-group{align-self:start}
    .jb-history-group-title{align-self:start}
    .jb-sidebar-search-wrap .jb-history-search{padding-right:10px}
    .jb-panel{position:relative}
    .jb-empty-state{width:min(100%,720px);margin:auto;display:grid;place-items:center;align-content:center;gap:10px;padding:42px 22px;text-align:center;color:var(--text)}
    .jb-empty-state-mark{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 14%,var(--surface)),color-mix(in srgb,var(--red) 10%,var(--surface)));border:1px solid var(--line);font-size:24px;box-shadow:0 10px 30px rgba(15,23,42,.07)}
    .jb-empty-state h2{margin:2px 0 0;font-size:clamp(1.35rem,2.3vw,1.85rem);letter-spacing:-.035em}
    .jb-empty-state p{max-width:590px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}
    .jb-scroll-latest{position:absolute;left:50%;bottom:102px;z-index:34;transform:translateX(-50%);display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 96%,transparent);color:var(--text);box-shadow:0 10px 30px rgba(15,23,42,.15);font:inherit;font-size:11px;font-weight:850;cursor:pointer;backdrop-filter:blur(10px)}
    .jb-scroll-latest[hidden]{display:none}.jb-scroll-latest:hover{background:var(--surface2)}
    .jb-copy-message,.jb-regenerate-message{width:31px;min-width:31px;padding-inline:0!important;font-size:0!important;display:inline-grid!important;place-items:center}
    .jb-copy-message::before{content:'⧉';font-size:16px;font-weight:650}.jb-regenerate-message::before{content:'↻';font-size:16px;font-weight:750}
    .jb-message-action[aria-label]{position:relative}
    @media(min-width:1100px) and (max-width:1399px){:root{--jb-sidebar-width:272px;--jb-chat-max:850px}}
    @media(max-width:1099px){:root{--jb-sidebar-width:304px}.jb-scroll-latest{bottom:96px}}
    @media(max-width:700px){.jb-empty-state{padding:28px 14px}.jb-empty-state p{font-size:12px}.jb-scroll-latest{bottom:82px}.jb-copy-message,.jb-regenerate-message{width:auto;min-width:30px;font-size:10.5px!important;padding-inline:7px!important}.jb-copy-message::before,.jb-regenerate-message::before{margin-right:5px;font-size:14px}}

    /* v1.4.12 final app-shell integrity overrides. */
    html,body{height:100%}
    body{height:100vh;max-height:100vh;overflow:hidden}
    main{flex:1 1 0;height:0;min-height:0;overflow:hidden}
    .jb-page,.jb-page>.wrap,.jb-grid,.jb-workspace{height:100%;min-height:0;overflow:hidden}
    .jb-history-panel,.jb-chat-column,.jb-panel{height:100%;min-height:0;overflow:hidden}
    .jb-actions [hidden],.jb-legacy-history-controls[hidden]{display:none!important}
    .jb-message[data-reference-active="true"] .jb-bubble{box-shadow:none!important}


    /* v1.4.14: contextual follow-up, adaptive footer, and what-if shortcuts. */
    :root{--jb-footer-height:96px}
    .jb-panel{grid-template-rows:max-content minmax(0,1fr) max-content!important;align-content:stretch}
    .jb-panel .jb-messages{padding-bottom:14px;scroll-padding-bottom:calc(var(--jb-footer-height) + 16px);scroll-padding-top:86px}
    .jb-conversation-footer{display:grid;grid-template-rows:max-content max-content;align-content:start;min-height:0;background:var(--surface);border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);position:relative;z-index:22}
    .jb-composer{align-content:start!important;padding-top:6px!important;background:var(--surface)!important}
    .jb-followup-shelf{width:100%;max-width:var(--jb-chat-max);margin:0 auto;padding:8px 20px 2px;display:grid;gap:7px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 42%,transparent),transparent)}
    .jb-followup-shelf[hidden],.jb-followup-group[hidden]{display:none!important}
    .jb-followup-group{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:9px}
    .jb-followup-label{padding-top:7px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}
    .jb-followup-list{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
    .jb-followup-chip{min-height:34px;max-width:min(100%,360px);border:1px solid color-mix(in srgb,var(--line) 94%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface2) 62%,var(--surface));color:var(--text);padding:7px 11px;font:inherit;font-size:10.5px;font-weight:760;line-height:1.25;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease}
    .jb-followup-chip:hover{background:var(--surface2);border-color:color-mix(in srgb,var(--blue) 30%,var(--line));transform:translateY(-1px)}
    .jb-followup-chip[data-type="what_if"]::before{content:'↳ ';color:var(--blue);font-weight:950}
    .jb-followup-chip:focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 68%,transparent);outline-offset:2px}
    .jb-scroll-latest{bottom:calc(var(--jb-footer-height) + 10px)!important}
    .jb-panel.jb-has-conversation .jb-suggestions{display:none!important}
    .jb-panel:not(.jb-has-conversation) .jb-followup-shelf{display:none!important}
    @media(max-width:700px){
      .jb-followup-shelf{padding:7px 10px 1px;gap:5px;overflow:hidden}
      .jb-followup-group{grid-template-columns:1fr;gap:3px}
      .jb-followup-label{padding:0 2px;font-size:9px}
      .jb-followup-list{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:1px 2px 4px}
      .jb-followup-list::-webkit-scrollbar{display:none}
      .jb-followup-chip{flex:0 0 auto;max-width:82vw;min-height:32px;font-size:10px}
    }


    /* v1.4.16: conversation tail, context scenario engine, and composer control. */
    :root{--jb-footer-height:92px}
    .jb-conversation-footer{grid-template-rows:max-content!important;min-height:0}
    .jb-followup-shelf{display:none!important}
    .jb-message-followup{display:grid;gap:7px;margin:10px 0 1px;padding:0;max-width:100%}
    .jb-message-followup[hidden]{display:none!important}
    .jb-message-followup-title{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.025em}
    .jb-message-followup-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
    .jb-message-followup .jb-followup-chip{min-height:32px;max-width:min(100%,390px);padding:6px 10px;font-size:10.5px;background:color-mix(in srgb,var(--surface2) 72%,var(--surface));transform:none!important}
    .jb-followup-chip .jb-scenario-badge{display:inline-block;margin-right:6px;color:var(--blue);font-size:8.5px;font-weight:950;letter-spacing:.035em;text-transform:uppercase}
    .jb-followup-chip[data-type="what_if"]::before{content:none!important}
    .jb-followup-more{position:relative;margin:0;border:0;background:transparent;overflow:visible}
    .jb-followup-more>summary{list-style:none;display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:10.5px;font-weight:820;cursor:pointer}
    .jb-followup-more>summary::-webkit-details-marker{display:none}.jb-followup-more>summary:hover{background:var(--surface2);color:var(--text)}
    .jb-followup-more-body{position:absolute;left:0;top:calc(100% + 7px);z-index:48;width:min(430px,calc(100vw - 34px));max-height:min(54vh,460px);overflow:auto;padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 18px 52px rgba(15,23,42,.2);display:grid;gap:3px}
    .jb-followup-more-body button{width:100%;border:0;border-radius:9px;background:transparent;color:var(--text);padding:9px 10px;text-align:left;font:inherit;font-size:11px;font-weight:720;cursor:pointer}.jb-followup-more-body button:hover{background:var(--surface2)}
    .jb-message-followup[data-latest="false"]{display:none!important}
    .jb-composer{padding:6px 20px 8px!important}
    .jb-meta{min-height:16px;line-height:1.2}
    .jb-compose-row #sendBtn{border:0!important;background:var(--muted)!important;color:#fff!important;box-shadow:none!important;transition:background .15s ease,transform .15s ease,opacity .15s ease}
    .jb-compose-row #sendBtn::before{content:none!important}
    .jb-compose-row #sendBtn .jb-send-icon{display:grid;place-items:center;width:20px;height:20px}
    .jb-compose-row #sendBtn .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}
    .jb-compose-row #sendBtn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}
    .jb-compose-row #sendBtn[data-state="ready"]{background:var(--blue)!important;cursor:pointer;opacity:1}
    .jb-compose-row #sendBtn[data-state="ready"]:hover{background:color-mix(in srgb,var(--blue) 86%,#000)!important;transform:translateY(-1px)}
    .jb-compose-row #sendBtn[data-state="generating"]{background:var(--red)!important;cursor:pointer;opacity:1}
    .jb-compose-row #sendBtn[data-state="empty"]{background:color-mix(in srgb,var(--muted) 46%,var(--surface2))!important;color:color-mix(in srgb,var(--surface) 75%,#fff)!important;cursor:not-allowed;opacity:.72}
    .jb-compose-row #sendBtn:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 28%,transparent);outline-offset:2px}
    .jb-message-actions details.jb-popover-down>.jb-quality-body,.jb-message-actions details.jb-popover-down>.jb-inline-sources-body,.jb-message-actions details.jb-popover-down>.jb-handoff-body{top:calc(100% + 7px);bottom:auto}
    .jb-message-actions details.jb-popover-up>.jb-quality-body,.jb-message-actions details.jb-popover-up>.jb-inline-sources-body,.jb-message-actions details.jb-popover-up>.jb-handoff-body{top:auto;bottom:calc(100% + 7px)}
    .jb-followup-more.jb-popover-up>.jb-followup-more-body{top:auto;bottom:calc(100% + 7px)}
    .jb-scroll-latest{bottom:calc(var(--jb-footer-height) + 12px)!important}
    @media(max-width:700px){
      .jb-message-followup{margin-top:8px}.jb-message-followup-list{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.jb-message-followup-list::-webkit-scrollbar{display:none}.jb-message-followup .jb-followup-chip,.jb-followup-more>summary{flex:0 0 auto;max-width:82vw}
      .jb-followup-more-body{position:fixed;left:10px;right:10px;top:auto!important;bottom:76px!important;width:auto;max-height:55vh}
      .jb-composer{padding:6px 10px 8px!important}
    }



    /* v1.4.17: adaptive tail docking — remove the unused conversation gap without moving or overlaying the composer. */
    .jb-panel.jb-has-conversation .jb-messages::before{
      content:'';
      display:block;
      flex:1 0 0;
      min-height:0;
      pointer-events:none;
    }
    .jb-panel.jb-has-conversation .jb-messages>.jb-message,
    .jb-panel.jb-has-conversation .jb-messages>#typingRow{
      flex:0 0 auto;
    }
    .jb-panel .jb-messages{
      border-bottom:0!important;
      padding-bottom:14px!important;
    }
    .jb-conversation-footer{
      border-top:0!important;
    }
    .jb-panel[data-tail-dock="empty"] .jb-messages::before{
      display:none;
    }
    @media(max-width:700px){
      .jb-panel.jb-has-conversation .jb-messages::before{flex-basis:0}
    }

    /* v1.4.18: remove the legacy fixed 58vh message box that left an invisible grid row and clipped chat content. */
    .jb-panel .jb-messages{
      height:100%!important;
      block-size:100%!important;
      min-height:0!important;
      min-block-size:0!important;
      max-height:none!important;
      align-self:stretch!important;
      box-sizing:border-box;
    }
    .jb-panel.jb-has-conversation .jb-messages::before{
      flex:1 1 0;
      min-height:0;
    }
  
/* v1.5.4 — home navigation, Java dialog, definitive search rendering & sidebar hierarchy. Built on v1.5.2 trust/answer UX. */
/* v1.5.2 — trust, mascot, answer presentation & search-icon polish. This layer intentionally neutralizes legacy page chrome
       while preserving existing IDs, behavior hooks, diagnostic surfaces, and accessibility states. */
    :root{
      --jb-v15-sidebar:280px;
      --jb-v15-sidebar-collapsed:64px;
      --jb-v15-header:58px;
      --jb-v15-chat-max:920px;
      --jb-v15-composer-max:920px;
      --jb-v15-radius:18px;
    }
    html,body{height:100%;}
    body.jb-app-v15{
      margin:0!important;
      min-height:100dvh!important;
      height:100dvh!important;
      overflow:hidden!important;
      background:var(--surface)!important;
      color:var(--text);
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    }
    body.jb-app-v15 .jb-app-main,
    body.jb-app-v15 .jb-page,
    body.jb-app-v15 .jb-grid,
    body.jb-app-v15 .jb-workspace{
      width:100%!important;
      max-width:none!important;
      height:100%!important;
      min-height:0!important;
      margin:0!important;
      padding:0!important;
      overflow:hidden!important;
    }
    body.jb-app-v15 .jb-workspace{
      display:grid!important;
      grid-template-columns:var(--jb-v15-sidebar) minmax(0,1fr)!important;
      gap:0!important;
      background:var(--surface)!important;
      border:0!important;
      transition:grid-template-columns .18s ease;
    }
    body.jb-app-v15.jb-sidebar-collapsed .jb-workspace{
      grid-template-columns:var(--jb-v15-sidebar-collapsed) minmax(0,1fr)!important;
    }
    body.jb-app-v15 .jb-chat-column{
      display:block!important;
      min-width:0!important;
      min-height:0!important;
      height:100%!important;
      overflow:hidden!important;
      background:var(--surface)!important;
    }
    body.jb-app-v15 .jb-panel{
      height:100%!important;
      min-height:0!important;
      display:grid!important;
      grid-template-rows:auto minmax(0,1fr) auto!important;
      border:0!important;
      border-radius:0!important;
      box-shadow:none!important;
      overflow:hidden!important;
      background:var(--surface)!important;
    }

    /* Sidebar */
    body.jb-app-v15 .jb-history-panel{
      position:relative!important;
      min-width:0!important;box-sizing:border-box!important;
      inset:auto!important;
      top:auto!important;
      width:auto!important;
      height:100%!important;
      max-height:none!important;
      padding:0!important;
      display:flex!important;
      flex-direction:column!important;
      overflow:hidden!important;
      border:0!important;
      border-right:1px solid var(--line)!important;
      border-radius:0!important;
      box-shadow:none!important;
      background:color-mix(in srgb,var(--surface2) 91%,var(--surface))!important;
      transition:width .18s ease,transform .2s ease;
    }
    body.jb-app-v15 .jb-sidebar-head{
      flex:none;
      min-height:62px;
      padding:13px 10px 9px 14px!important;
      display:flex!important;
      align-items:center!important;
      justify-content:space-between!important;
      gap:8px!important;
      border:0!important;
      background:transparent!important;
    }
    body.jb-app-v15 .jb-sidebar-identity{display:flex;align-items:center;min-width:0;padding-left:2px;}
    body.jb-app-v15 .jb-sidebar-mark{display:none!important;}
    body.jb-app-v15 .jb-sidebar-name{min-width:0;display:flex;align-items:center;}
    body.jb-app-v15 .jb-sidebar-name strong{font-size:19px;line-height:1;letter-spacing:-.035em;font-weight:760;color:var(--text);}
    body.jb-app-v15 .jb-sidebar-name small{display:none!important;}
    body.jb-app-v15 .jb-sidebar-head-actions{display:flex;align-items:center;gap:3px;}
    body.jb-app-v15 .jb-sidebar-collapse,
    body.jb-app-v15 .jb-history-close{
      width:34px!important;height:34px!important;min-width:34px!important;
      display:grid;place-items:center;border:0!important;border-radius:9px!important;
      background:transparent!important;color:var(--muted)!important;font:700 21px/1 Inter,sans-serif;cursor:pointer;
    }
    body.jb-app-v15 .jb-sidebar-collapse:hover,
    body.jb-app-v15 .jb-history-close:hover{background:var(--surface)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-history-close{display:none!important;}
    body.jb-app-v15 .jb-sidebar-new{
      flex:none;width:calc(100% - 16px)!important;min-height:40px!important;margin:2px 8px 6px!important;padding:8px 10px!important;
      display:flex!important;align-items:center!important;gap:10px!important;border:0!important;border-radius:9px!important;
      background:transparent!important;color:var(--text)!important;box-shadow:none!important;font-size:12px!important;font-weight:680!important;text-align:left!important;cursor:pointer;
    }
    body.jb-app-v15 .jb-sidebar-new:hover{background:var(--surface)!important;}
    body.jb-app-v15 .jb-sidebar-new span:first-child{width:22px;text-align:center;font-size:20px;font-weight:380;line-height:1;}
    body.jb-app-v15 .jb-sidebar-search-wrap{
      flex:none;margin:0 8px 8px!important;min-height:38px!important;
      display:flex!important;align-items:center!important;gap:8px!important;
      padding:0 10px!important;border:1px solid transparent!important;border-radius:9px!important;
      background:transparent!important;
    }
    body.jb-app-v15 .jb-sidebar-search-wrap:hover,
    body.jb-app-v15 .jb-sidebar-search-wrap:focus-within{background:var(--surface)!important;border-color:color-mix(in srgb,var(--line) 88%,transparent)!important;}
    body.jb-app-v15 .jb-sidebar-search-icon{color:var(--muted);font-size:15px;}
    body.jb-app-v15 .jb-history-search{
      width:100%!important;min-width:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
      padding:8px 0!important;border-radius:0!important;color:var(--text)!important;font:500 12px/1.3 Inter,sans-serif!important;outline:0!important;
    }
    body.jb-app-v15 .jb-history-summary{
      flex:none;display:flex!important;align-items:center!important;justify-content:space-between!important;
      padding:3px 12px 5px 16px!important;border:0!important;background:transparent!important;
    }
    body.jb-app-v15 .jb-session-count{font-size:10px!important;font-weight:650!important;color:var(--muted)!important;}
    body.jb-app-v15 .jb-history-select-toggle{
      border:0!important;background:transparent!important;color:var(--muted)!important;border-radius:7px!important;
      padding:5px 7px!important;font-size:10px!important;font-weight:700!important;cursor:pointer;
    }
    body.jb-app-v15 .jb-history-select-toggle:hover{background:var(--surface)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-session-list{
      flex:1!important;min-height:0!important;max-height:none!important;overflow:auto!important;
      padding:2px 8px 8px!important;scrollbar-width:thin;
    }
    body.jb-app-v15 .jb-history-group-title{
      padding:11px 8px 5px!important;color:var(--muted)!important;font-size:9px!important;font-weight:760!important;
      text-transform:none!important;letter-spacing:.02em!important;
    }
    body.jb-app-v15 .jb-history-group{margin:0!important;padding:0!important;list-style:none!important;}
    body.jb-app-v15 .jb-session-card{
      position:relative!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;
      align-items:center!important;gap:3px!important;margin:1px 0!important;padding:2px!important;
      border:0!important;border-radius:9px!important;background:transparent!important;box-shadow:none!important;transform:none!important;
    }
    body.jb-app-v15 .jb-session-card:hover,
    body.jb-app-v15 .jb-session-card.active{background:color-mix(in srgb,var(--surface) 88%,transparent)!important;}
    body.jb-app-v15 .jb-session-card.active::before{content:none!important;}
    body.jb-app-v15 .jb-session-open{
      min-width:0!important;border:0!important;background:transparent!important;color:var(--text)!important;
      text-align:left!important;padding:8px 7px!important;border-radius:7px!important;cursor:pointer!important;font:inherit!important;
    }
    body.jb-app-v15 .jb-session-title{display:-webkit-box!important;font-size:11.5px!important;font-weight:650!important;line-height:1.35!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
    body.jb-app-v15 .jb-session-meta{display:none!important;}
    body.jb-app-v15 .jb-session-actions{display:flex!important;align-items:center!important;gap:1px!important;}
    body.jb-app-v15 .jb-session-pin,
    body.jb-app-v15 .jb-session-menu-btn{
      width:27px!important;height:27px!important;border:0!important;background:transparent!important;border-radius:7px!important;
      color:var(--muted)!important;opacity:0!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-session-card:hover .jb-session-menu-btn,
    body.jb-app-v15 .jb-session-card:focus-within .jb-session-menu-btn,
    body.jb-app-v15 .jb-session-card.pinned .jb-session-pin{opacity:1!important;}
    body.jb-app-v15 .jb-session-card:hover .jb-session-pin{opacity:.65!important;}
    body.jb-app-v15 .jb-session-pin:hover,
    body.jb-app-v15 .jb-session-menu-btn:hover{background:var(--surface2)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-session-menu{
      right:3px!important;top:34px!important;z-index:80!important;min-width:160px!important;padding:5px!important;
      border:1px solid var(--line)!important;border-radius:11px!important;background:var(--surface)!important;
      box-shadow:0 16px 44px rgba(15,23,42,.18)!important;
    }
    body.jb-app-v15 .jb-history-bulk{
      margin:0 8px 7px!important;padding:8px!important;border:1px solid var(--line)!important;border-radius:10px!important;
      background:var(--surface)!important;gap:5px!important;
    }
    body.jb-app-v15 .jb-history-bulk .btn{font-size:10px!important;padding:6px 8px!important;border-radius:7px!important;}
    body.jb-app-v15 .jb-history-storage-banner{margin:0 9px 8px!important;border-radius:10px!important;padding:9px!important;font-size:10px!important;}
    body.jb-app-v15 .jb-sidebar-manage{flex:none;margin:3px 10px 7px!important;border:0!important;background:transparent!important;}
    body.jb-app-v15 .jb-sidebar-manage>summary{
      padding:7px 8px!important;border-radius:8px!important;color:var(--muted)!important;font-size:10px!important;font-weight:700!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-sidebar-manage>summary:hover{background:var(--surface)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-sidebar-manage-menu{padding:6px!important;gap:4px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;}
    body.jb-app-v15 .jb-sidebar-manage-menu .btn{width:100%!important;justify-content:flex-start!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:10.5px!important;}
    body.jb-app-v15 .jb-sidebar-bottom{
      flex:none;display:grid!important;gap:2px!important;padding:7px 8px 10px!important;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)!important;
      background:transparent!important;
    }
    body.jb-app-v15 .jb-sidebar-link{
      min-height:36px!important;width:100%!important;display:flex!important;align-items:center!important;gap:10px!important;
      padding:7px 9px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--muted)!important;
      text-decoration:none!important;text-align:left!important;font:650 10.5px/1.2 Inter,sans-serif!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-sidebar-link:hover{background:var(--surface)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-sidebar-icon-link>span:first-child{width:20px;text-align:center;font-size:14px;flex:none;}
    body.jb-app-v15 .jb-sidebar-status-row{
      display:none!important;align-items:center!important;gap:6px!important;padding:6px 9px 0!important;color:var(--muted)!important;font-size:9px!important;
    }
    body.jb-app-v15 .jb-history-storage-status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    body.jb-app-v15 .jb-history-layout-status{display:none!important;}
    body.jb-app-v15 .jb-sidebar-version{margin-left:auto;white-space:nowrap;font-size:9px!important;}
    body.jb-app-v15 .jb-history-note{display:none!important;}

    /* Collapsed desktop sidebar */
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-head{padding-inline:8px!important;justify-content:center!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-identity{display:none!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-head-actions{width:100%;justify-content:center;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-collapse{transform:rotate(180deg);}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-new{
      width:40px!important;height:40px!important;margin:3px auto 8px!important;padding:0!important;justify-content:center!important;border-color:transparent!important;background:transparent!important;
    }
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-new span:last-child,
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-search-wrap,
    body.jb-app-v15.jb-sidebar-collapsed .jb-history-summary,
    body.jb-app-v15.jb-sidebar-collapsed .jb-history-bulk,
    body.jb-app-v15.jb-sidebar-collapsed .jb-history-storage-banner,
    body.jb-app-v15.jb-sidebar-collapsed .jb-session-list,
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-manage,
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-status-row{display:none!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-bottom{margin-top:auto;align-items:center;padding-inline:8px!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-link{width:40px!important;height:40px!important;min-height:40px!important;margin-inline:auto!important;padding:0!important;justify-content:center!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-link-label{display:none!important;}
    body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-icon-link>span:first-child{width:auto;}

    /* Conversation header */
    body.jb-app-v15 .jb-head{
      position:relative!important;box-sizing:border-box!important;z-index:40!important;height:auto!important;min-height:var(--jb-v15-header)!important;
      display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
      padding:9px 12px!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;
      background:color-mix(in srgb,var(--surface) 97%,transparent)!important;backdrop-filter:blur(12px)!important;
    }
    body.jb-app-v15 .jb-head-main{min-width:0!important;flex:1 1 auto!important;display:flex!important;align-items:center!important;gap:9px!important;}
    body.jb-app-v15 .jb-history-toggle{
      display:none!important;width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;
      place-items:center!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--muted)!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-history-toggle:hover{background:var(--surface2)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-history-toggle>span:first-child{font-size:18px;line-height:1;}
    body.jb-app-v15 .jb-history-toggle-label{display:none!important;}
    body.jb-app-v15 .jb-brand{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;flex:1 1 auto!important;}
    body.jb-app-v15 .jb-mascot{
      width:32px!important;height:32px!important;min-width:32px!important;padding:0!important;border-radius:9px!important;
      background:color-mix(in srgb,var(--surface2) 88%,transparent)!important;box-shadow:none!important;overflow:hidden!important;
    }
    body.jb-app-v15 .jb-mascot::after{border-radius:9px!important;border-color:color-mix(in srgb,var(--line) 90%,transparent)!important;}
    body.jb-app-v15 .jb-mascot img{border-radius:9px!important;}
    body.jb-app-v15 .jb-title{min-width:0!important;flex:1 1 auto!important;}
    body.jb-app-v15 .jb-title h1{
      max-width:none!important;margin:0!important;font-size:13.5px!important;line-height:1.3!important;font-weight:710!important;
      letter-spacing:-.017em!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;
      display:block!important;
    }
    body.jb-app-v15 .jb-title small{margin-top:2px!important;font-size:9.5px!important;font-weight:540!important;color:var(--muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
    body.jb-app-v15 .jb-panel.jb-has-conversation .jb-title small{display:none!important;}
    body.jb-app-v15 .jb-head-menu{position:relative!important;margin-left:0!important;flex:0 0 auto!important;border:0!important;}
    body.jb-app-v15 .jb-head-menu>summary{
      list-style:none!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;
      border:0!important;border-radius:9px!important;background:transparent!important;color:var(--muted)!important;font-size:20px!important;line-height:1!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-head-menu>summary::-webkit-details-marker{display:none!important;}
    body.jb-app-v15 .jb-head-menu>summary:hover{background:var(--surface2)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-head-menu-body{
      position:absolute!important;right:0!important;top:calc(100% + 6px)!important;z-index:90!important;
      width:220px!important;padding:6px!important;display:grid!important;gap:2px!important;
      border:1px solid var(--line)!important;border-radius:12px!important;background:var(--surface)!important;box-shadow:0 18px 48px rgba(15,23,42,.18)!important;
    }
    body.jb-app-v15 .jb-head-menu:not([open]) .jb-head-menu-body{display:none!important;}
    body.jb-app-v15 .jb-head-menu-item{
      width:100%!important;min-height:36px!important;padding:8px 9px!important;display:flex!important;align-items:center!important;
      border:0!important;border-radius:8px!important;background:transparent!important;color:var(--text)!important;box-shadow:none!important;
      text-align:left!important;font:650 11px/1.25 Inter,sans-serif!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-head-menu-item:hover{background:var(--surface2)!important;}
    body.jb-app-v15 .jb-version-badge[data-state="ready"]{color:#18794e!important;}
    body.jb-app-v15 .jb-version-badge[data-state="mismatch"]{color:#b42318!important;}

    /* Message canvas */
    body.jb-app-v15 .jb-messages{
      position:relative!important;min-height:0!important;height:auto!important;overflow:auto!important;overscroll-behavior:contain!important;
      display:flex!important;flex-direction:column!important;gap:0!important;
      padding:22px max(18px,calc((100% - var(--jb-v15-chat-max))/2)) 26px!important;
      background:var(--surface)!important;scroll-behavior:smooth!important;scroll-padding-bottom:118px!important;
    }
    body.jb-app-v15 .jb-panel.jb-has-conversation .jb-messages::before{content:none!important;display:none!important;}
    body.jb-app-v15 .jb-message{
      width:100%!important;max-width:var(--jb-v15-chat-max)!important;margin:0 auto!important;padding:11px 0!important;
      display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:start!important;gap:12px!important;
      animation:jbFade .16s ease-out!important;
    }
    body.jb-app-v15 .jb-message.user{
      display:flex!important;justify-content:flex-end!important;align-items:flex-start!important;padding:9px 0 13px!important;
    }
    body.jb-app-v15 .jb-message.user .jb-avatar{display:none!important;}
    body.jb-app-v15 .jb-avatar{
      width:28px!important;height:28px!important;min-width:28px!important;border-radius:8px!important;
      border:1px solid color-mix(in srgb,var(--line) 88%,transparent)!important;background:var(--surface2)!important;
      box-shadow:none!important;font-size:8px!important;overflow:hidden!important;
    }
    body.jb-app-v15 .jb-avatar img{border-radius:7px!important;}
    body.jb-app-v15 .jb-bubble-wrap{
      min-width:0!important;max-width:none!important;width:auto!important;display:grid!important;gap:5px!important;
    }
    body.jb-app-v15 .jb-message.user .jb-bubble-wrap{width:auto!important;max-width:min(76%,640px)!important;}
    body.jb-app-v15 .jb-bubble{
      padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
      color:var(--text)!important;line-height:1.65!important;font-size:14px!important;overflow-wrap:anywhere!important;
    }
    body.jb-app-v15 .jb-message.user .jb-bubble{
      padding:10px 14px!important;border:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;border-radius:18px!important;
      background:color-mix(in srgb,var(--surface2) 88%,var(--surface))!important;color:var(--text)!important;box-shadow:none!important;line-height:1.5!important;
    }
    body.jb-app-v15 .jb-bubble strong{color:var(--text)!important;font-weight:750!important;}
    body.jb-app-v15 .jb-message.user .jb-bubble strong{color:var(--text)!important;}
    body.jb-app-v15 .jb-bubble p{margin:.42rem 0!important;line-height:1.65!important;}
    body.jb-app-v15 .jb-bubble .jb-md-heading{margin:1rem 0 .35rem!important;line-height:1.28!important;color:var(--text)!important;font-weight:780!important;}
    body.jb-app-v15 .jb-bubble .jb-md-heading.level2{font-size:1.05rem!important;}
    body.jb-app-v15 .jb-bubble .jb-md-heading.level3{font-size:.96rem!important;}
    body.jb-app-v15 .jb-bubble ul,
    body.jb-app-v15 .jb-bubble ol{margin:.35rem 0 .72rem 1.25rem!important;padding:0!important;}
    body.jb-app-v15 .jb-bubble li{margin:.28rem 0!important;padding-left:.08rem!important;}
    body.jb-app-v15 .jb-bubble code{border-radius:6px!important;background:color-mix(in srgb,var(--surface2) 92%,transparent)!important;padding:.12rem .32rem!important;}
    body.jb-app-v15 .jb-bubble pre.jb-code-block{
      margin:.7rem 0!important;padding:12px 14px!important;border:1px solid var(--line)!important;border-radius:11px!important;
      background:color-mix(in srgb,var(--surface2) 86%,var(--surface))!important;
    }
    body.jb-app-v15 .jb-table-wrap{margin:.72rem 0!important;border-radius:12px!important;box-shadow:none!important;}
    body.jb-app-v15 .jb-time{
      margin-top:1px!important;color:var(--muted)!important;font-size:9px!important;font-weight:520!important;opacity:.72!important;
    }
    body.jb-app-v15 .jb-message.user .jb-time{text-align:right!important;color:var(--muted)!important;}
    body.jb-app-v15 .jb-claim-guard{margin:10px 0 2px!important;border-radius:10px!important;padding:9px 10px!important;font-size:10.5px!important;line-height:1.55!important;}
    body.jb-app-v15 .jb-claim-guard strong{display:inline!important;margin-right:.38em!important;}

    /* Response actions — deliberately quiet until needed. */
    body.jb-app-v15 .jb-message-actions{
      display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:1px!important;margin-top:2px!important;min-height:29px!important;
    }
    body.jb-app-v15 .jb-message-action,
    body.jb-app-v15 .jb-inline-sources>summary,
    body.jb-app-v15 .jb-message-more>summary{
      min-height:28px!important;padding:5px 7px!important;border:0!important;border-radius:7px!important;background:transparent!important;
      color:var(--muted)!important;box-shadow:none!important;font:620 10px/1.2 Inter,sans-serif!important;cursor:pointer!important;list-style:none!important;
    }
    body.jb-app-v15 .jb-message-action:hover,
    body.jb-app-v15 .jb-inline-sources>summary:hover,
    body.jb-app-v15 .jb-message-more>summary:hover{background:var(--surface2)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-inline-sources,
    body.jb-app-v15 .jb-message-more{position:relative!important;border:0!important;background:transparent!important;margin:0!important;overflow:visible!important;}
    body.jb-app-v15 .jb-inline-sources>summary::-webkit-details-marker,
    body.jb-app-v15 .jb-message-more>summary::-webkit-details-marker{display:none!important;}
    body.jb-app-v15 .jb-inline-sources-body,
    body.jb-app-v15 .jb-message-more-body{
      position:absolute!important;left:0!important;top:calc(100% + 6px)!important;bottom:auto!important;z-index:70!important;
      width:min(360px,calc(100vw - 34px))!important;max-height:min(52vh,430px)!important;overflow:auto!important;
      padding:7px!important;display:grid!important;gap:4px!important;border:1px solid var(--line)!important;border-radius:12px!important;
      background:var(--surface)!important;box-shadow:0 18px 52px rgba(15,23,42,.18)!important;
    }
    body.jb-app-v15 .jb-inline-sources:not([open])>.jb-inline-sources-body,
    body.jb-app-v15 .jb-message-more:not([open])>.jb-message-more-body{display:none!important;}
    body.jb-app-v15 .jb-inline-sources-body a{padding:9px 10px!important;border:0!important;border-radius:8px!important;background:transparent!important;font-size:11px!important;}
    body.jb-app-v15 .jb-inline-sources-body a:hover{background:var(--surface2)!important;}
    body.jb-app-v15 .jb-message-more-body>.jb-quality,
    body.jb-app-v15 .jb-message-more-body>.jb-handoff{margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;}
    body.jb-app-v15 .jb-message-more-body>.jb-quality>summary,
    body.jb-app-v15 .jb-message-more-body>.jb-handoff>summary{
      padding:9px 10px!important;border-radius:8px!important;background:transparent!important;font-size:11px!important;font-weight:680!important;
    }
    body.jb-app-v15 .jb-message-more-body>.jb-quality>summary:hover,
    body.jb-app-v15 .jb-message-more-body>.jb-handoff>summary:hover{background:var(--surface2)!important;}
    body.jb-app-v15 .jb-message-more-body .jb-quality-body,
    body.jb-app-v15 .jb-message-more-body .jb-handoff-body{
      position:static!important;width:auto!important;max-width:none!important;max-height:none!important;margin:2px 0 5px!important;padding:9px!important;
      border:1px solid var(--line)!important;border-radius:9px!important;background:color-mix(in srgb,var(--surface2) 72%,var(--surface))!important;box-shadow:none!important;
    }

    /* Follow-up tail */
    body.jb-app-v15 .jb-message-followup{margin:12px 0 0!important;gap:7px!important;}
    body.jb-app-v15 .jb-message-followup-title{font-size:9.5px!important;font-weight:620!important;color:var(--muted)!important;}
    body.jb-app-v15 .jb-message-followup-list{display:flex!important;flex-wrap:wrap!important;gap:6px!important;}
    body.jb-app-v15 .jb-message-followup .jb-followup-chip,
    body.jb-app-v15 .jb-followup-more>summary{
      min-height:32px!important;max-width:340px!important;padding:6px 11px!important;border:1px solid var(--line)!important;border-radius:999px!important;
      background:transparent!important;color:var(--text)!important;font:600 10.5px/1.3 Inter,sans-serif!important;box-shadow:none!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-message-followup .jb-followup-chip:hover,
    body.jb-app-v15 .jb-followup-more>summary:hover{background:var(--surface2)!important;}
    body.jb-app-v15 .jb-scenario-badge{display:none!important;}
    body.jb-app-v15 .jb-followup-more-body{border-radius:11px!important;box-shadow:0 16px 44px rgba(15,23,42,.18)!important;}

    /* Empty state */
    body.jb-app-v15 .jb-empty-state{
      width:min(100%,650px)!important;margin:auto!important;padding:40px 18px 18px!important;display:grid!important;place-items:center!important;align-content:center!important;
      gap:8px!important;text-align:center!important;color:var(--text)!important;
    }
    body.jb-app-v15 .jb-empty-state-mark{
      width:42px!important;height:42px!important;border-radius:12px!important;display:grid!important;place-items:center!important;
      background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 90%,#fff),color-mix(in srgb,var(--red) 70%,var(--blue)))!important;
      border:0!important;color:#fff!important;font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important;box-shadow:none!important;
    }
    body.jb-app-v15 .jb-empty-state-mark img{width:100%;height:100%;object-fit:contain;display:block;border-radius:11px;}
    body.jb-app-v15 .jb-empty-state h2{margin:4px 0 0!important;font-size:clamp(1.35rem,2vw,1.75rem)!important;font-weight:730!important;letter-spacing:-.035em!important;}
    body.jb-app-v15 .jb-empty-state p{max-width:520px!important;margin:0!important;color:var(--muted)!important;font-size:12.5px!important;line-height:1.55!important;}

    /* Composer */
    body.jb-app-v15 .jb-conversation-footer{
      position:relative!important;z-index:35!important;flex:none!important;border:0!important;background:linear-gradient(180deg,transparent 0,var(--surface) 18%)!important;
      padding:0 max(14px,calc((100% - var(--jb-v15-composer-max))/2)) 9px!important;
    }
    body.jb-app-v15 .jb-composer{
      width:100%!important;max-width:var(--jb-v15-composer-max)!important;margin:0 auto!important;padding:0!important;display:grid!important;gap:8px!important;
      border:0!important;background:transparent!important;box-shadow:none!important;
    }
    body.jb-app-v15 .jb-suggestions{
      display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:0 2px 2px!important;
    }
    body.jb-app-v15 .jb-panel.jb-has-conversation .jb-suggestions{display:none!important;}
    body.jb-app-v15 .jb-chip{
      min-height:62px!important;padding:10px 12px!important;display:grid!important;gap:3px!important;align-content:center!important;
      border:1px solid var(--line)!important;border-radius:12px!important;background:var(--surface)!important;color:var(--text)!important;
      text-align:left!important;box-shadow:none!important;transform:none!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-chip strong{font-size:11.5px!important;font-weight:700!important;}
    body.jb-app-v15 .jb-chip span{color:var(--muted)!important;font-size:9.8px!important;line-height:1.35!important;font-weight:500!important;}
    body.jb-app-v15 .jb-chip:hover{background:var(--surface2)!important;border-color:color-mix(in srgb,var(--blue) 28%,var(--line))!important;transform:none!important;}
    body.jb-app-v15 .jb-compose-shell{
      width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important;padding:6px 7px!important;border:1px solid color-mix(in srgb,var(--line) 94%,transparent)!important;border-radius:20px!important;background:var(--surface)!important;
      box-shadow:0 5px 20px rgba(15,23,42,.065)!important;transition:border-color .16s ease,box-shadow .16s ease!important;
    }
    body.jb-app-v15 .jb-compose-shell:focus-within{border-color:color-mix(in srgb,var(--blue) 42%,var(--line))!important;box-shadow:0 5px 22px rgba(15,23,42,.07),0 0 0 2px color-mix(in srgb,var(--blue) 7%,transparent)!important;}
    body.jb-app-v15 .jb-compose-row{
      width:100%!important;box-sizing:border-box!important;padding:0!important;min-height:48px!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px!important;gap:4px!important;align-items:center!important;
    }
    body.jb-app-v15 .jb-file-btn{
      width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;display:grid!important;place-items:center!important;align-self:center!important;
      border:0!important;border-radius:10px!important;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;font-size:22px!important;font-weight:400!important;cursor:pointer!important;
    }
    body.jb-app-v15 .jb-file-btn:hover{background:var(--surface2)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-composer textarea{
      width:100%!important;box-sizing:border-box!important;min-height:42px!important;max-height:168px!important;resize:none!important;padding:10px 6px 8px!important;
      border:0!important;border-radius:0!important;background:transparent!important;color:var(--text)!important;box-shadow:none!important;
      font:500 14px/1.5 Inter,sans-serif!important;outline:0!important;
    }
    body.jb-app-v15 .jb-composer textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)!important;}
    body.jb-app-v15 #sendBtn{
      width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;display:grid!important;place-items:center!important;align-self:center!important;
      border:0!important;border-radius:12px!important;background:var(--text)!important;color:var(--surface)!important;box-shadow:none!important;
    }
    body.jb-app-v15 #sendBtn:disabled{opacity:.24!important;cursor:not-allowed!important;}
    body.jb-app-v15 #sendBtn[data-state="generating"]{background:var(--text)!important;opacity:1!important;}
    body.jb-app-v15 .jb-send-icon svg{width:17px!important;height:17px!important;stroke:currentColor!important;stroke-width:2.1!important;fill:none!important;}
    body.jb-app-v15 .jb-file-row{
      display:none!important;align-items:center!important;gap:7px!important;margin:4px 2px 0!important;padding:7px 8px!important;
      border:0!important;border-radius:9px!important;background:var(--surface2)!important;
    }
    body.jb-app-v15 .jb-file-row.has-file{display:flex!important;}
    body.jb-app-v15 .jb-file-status{min-width:0!important;flex:1!important;font-size:9.8px!important;font-weight:560!important;color:var(--muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
    body.jb-app-v15 .jb-file-remove{border:0!important;background:transparent!important;padding:5px 7px!important;border-radius:7px!important;font-size:9.5px!important;font-weight:650!important;color:var(--muted)!important;}
    body.jb-app-v15 .jb-file-remove:hover{background:var(--surface)!important;color:var(--text)!important;}
    body.jb-app-v15 .jb-meta{
      min-height:14px!important;display:flex!important;justify-content:center!important;gap:8px!important;flex-wrap:wrap!important;
      padding:0 8px!important;border:0!important;color:color-mix(in srgb,var(--muted) 84%,transparent)!important;font-size:8.8px!important;line-height:1.25!important;text-align:center!important;
    }
    body.jb-app-v15 .jb-system-status{display:none!important;}
    body.jb-app-v15 .jb-scroll-latest{
      position:absolute!important;left:50%!important;bottom:calc(var(--jb-footer-height,80px) + 8px)!important;transform:translateX(-50%)!important;
      min-height:34px!important;padding:7px 10px!important;border:1px solid var(--line)!important;border-radius:999px!important;background:var(--surface)!important;
      color:var(--muted)!important;box-shadow:0 8px 22px rgba(15,23,42,.10)!important;font-size:10px!important;font-weight:650!important;z-index:34!important;
    }

    /* Dialogs, toast, diagnostic */
    body.jb-app-v15 .jb-confirm-modal,
    body.jb-app-v15 .jb-diagnostic-modal{backdrop-filter:blur(8px)!important;}
    body.jb-app-v15 .jb-confirm-dialog,
    body.jb-app-v15 .jb-diagnostic-dialog{border-radius:16px!important;box-shadow:0 26px 80px rgba(0,0,0,.28)!important;}
    body.jb-app-v15 .jb-diagnostic-dialog{width:min(980px,100%)!important;}
    body.jb-app-v15 .jb-diagnostic-head{padding:15px 16px!important;background:var(--surface)!important;}
    body.jb-app-v15 .jb-diagnostic-actions{padding:10px 16px!important;background:var(--surface2)!important;}
    body.jb-app-v15 .jb-toast{bottom:18px!important;}

    /* Focus and reduced motion */
    body.jb-app-v15 button:focus-visible,
    body.jb-app-v15 a:focus-visible,
    body.jb-app-v15 summary:focus-visible,
    body.jb-app-v15 input:focus-visible,
    body.jb-app-v15 textarea:focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 72%,transparent)!important;outline-offset:2px!important;}
    body.jb-app-v15 .jb-compose-shell textarea:focus-visible{outline:0!important;outline-offset:0!important;box-shadow:none!important;}
    @media(prefers-reduced-motion:reduce){body.jb-app-v15 *,body.jb-app-v15 *::before,body.jb-app-v15 *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;}}

    /* Tablet / mobile */
    @media(max-width:1099px){
      :root{--jb-v15-header:56px;}
      body.jb-app-v15 .jb-workspace,
      body.jb-app-v15.jb-sidebar-collapsed .jb-workspace{grid-template-columns:minmax(0,1fr)!important;}
      body.jb-app-v15 .jb-history-panel{
        position:fixed!important;left:0!important;top:0!important;bottom:0!important;z-index:1100!important;
        width:min(86vw,316px)!important;height:100dvh!important;transform:translateX(-104%)!important;
        border-right:1px solid var(--line)!important;box-shadow:0 24px 72px rgba(15,23,42,.24)!important;
      }
      body.jb-app-v15.jb-history-open .jb-history-panel{transform:translateX(0)!important;}
      body.jb-app-v15 .jb-history-panel[inert]{pointer-events:none!important;}
      body.jb-app-v15 .jb-history-close{display:grid!important;}
      body.jb-app-v15 .jb-sidebar-collapse{display:none!important;}
      body.jb-app-v15 .jb-history-toggle{display:grid!important;}
      body.jb-app-v15 .jb-messages{padding-inline:max(16px,calc((100% - var(--jb-v15-chat-max))/2))!important;}
      body.jb-app-v15 .jb-conversation-footer{padding-inline:max(12px,calc((100% - var(--jb-v15-composer-max))/2))!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-identity{display:flex!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-new{width:calc(100% - 20px)!important;height:auto!important;margin:4px 10px 8px!important;padding:9px 11px!important;justify-content:flex-start!important;border-color:color-mix(in srgb,var(--line) 88%,transparent)!important;background:var(--surface)!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-new span:last-child,
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-search-wrap,
      body.jb-app-v15.jb-sidebar-collapsed .jb-history-summary,
      body.jb-app-v15.jb-sidebar-collapsed .jb-session-list,
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-manage,
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-status-row{display:revert!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-bottom{margin-top:0!important;align-items:stretch!important;padding-inline:8px!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-link{width:100%!important;height:auto!important;min-height:36px!important;margin:0!important;padding:7px 9px!important;justify-content:flex-start!important;}
      body.jb-app-v15.jb-sidebar-collapsed .jb-sidebar-link-label{display:inline!important;}
    }
    @media(max-width:700px){
      body.jb-app-v15 .jb-head{padding-inline:8px!important;}
      body.jb-app-v15 .jb-mascot{width:29px!important;height:29px!important;min-width:29px!important;}
      body.jb-app-v15 .jb-title h1{max-width:none!important;font-size:12px!important;line-height:1.28!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important;}
      body.jb-app-v15 .jb-title small{display:none!important;}
      body.jb-app-v15 .jb-messages{padding:15px 12px 20px!important;}
      body.jb-app-v15 .jb-message{grid-template-columns:32px minmax(0,1fr)!important;gap:9px!important;padding:10px 2px!important;}
      body.jb-app-v15 .jb-avatar{width:25px!important;height:25px!important;min-width:25px!important;}
      body.jb-app-v15 .jb-bubble{font-size:13.5px!important;line-height:1.62!important;}
      body.jb-app-v15 .jb-message.user .jb-bubble-wrap{max-width:88%!important;}
      body.jb-app-v15 .jb-message.user .jb-bubble{padding:9px 12px!important;border-radius:16px!important;}
      body.jb-app-v15 .jb-suggestions{grid-template-columns:1fr!important;gap:6px!important;max-height:146px!important;overflow:auto!important;padding-bottom:2px!important;}
      body.jb-app-v15 .jb-chip{min-height:54px!important;padding:9px 11px!important;}
      body.jb-app-v15 .jb-chip span{display:none!important;}
      body.jb-app-v15 .jb-conversation-footer{padding:0 8px 7px!important;}
      body.jb-app-v15 .jb-compose-shell{padding:6px!important;border-radius:16px!important;}
      body.jb-app-v15 .jb-compose-row{grid-template-columns:38px minmax(0,1fr) 38px!important;}
      body.jb-app-v15 .jb-composer textarea{font-size:16px!important;padding-inline:5px!important;}
      body.jb-app-v15 .jb-meta{font-size:8.5px!important;padding-inline:5px!important;}
      body.jb-app-v15 .jb-message-followup-list{flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important;padding-bottom:2px!important;}
      body.jb-app-v15 .jb-message-followup-list::-webkit-scrollbar{display:none!important;}
      body.jb-app-v15 .jb-message-followup .jb-followup-chip,
      body.jb-app-v15 .jb-followup-more>summary{flex:0 0 auto!important;max-width:82vw!important;}
      body.jb-app-v15 .jb-inline-sources-body,
      body.jb-app-v15 .jb-message-more-body,
      body.jb-app-v15 .jb-followup-more-body{
        position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:8px!important;width:auto!important;max-height:58vh!important;
        z-index:1400!important;border-radius:15px!important;padding:8px!important;
      }
      body.jb-app-v15 .jb-empty-state{padding:26px 12px 16px!important;}
      body.jb-app-v15 .jb-empty-state h2{font-size:1.3rem!important;}
      body.jb-app-v15 .jb-empty-state p{font-size:11.5px!important;}
    }

/* Legacy pseudo-elements are disabled because V1.5 uses explicit accessible icons. */
body.jb-app-v15 .jb-file-btn::before,
body.jb-app-v15 #sendBtn::before{content:none!important;display:none!important;}

body.jb-app-v15 .jb-copy-message,
body.jb-app-v15 .jb-regenerate-message{
  width:auto!important;min-width:0!important;padding:5px 7px!important;font-size:10px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;
}
body.jb-app-v15 .jb-copy-message::before,
body.jb-app-v15 .jb-regenerate-message::before{margin:0!important;font-size:13px!important;line-height:1!important;}

/* V1.5.1 final invariants */
body.jb-app-v15 .jb-sidebar-status-row{display:none!important;}


/* V1.5.2 — Java mascot, trust UX, response presentation, source/validation actions. */
body.jb-app-v15 .jb-sidebar-search-icon{width:18px!important;height:18px!important;display:grid!important;place-items:center!important;flex:0 0 18px!important;font-size:0!important;line-height:0!important;}
body.jb-app-v15 .jb-sidebar-search-icon svg{width:15px!important;height:15px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
body.jb-app-v15 .jb-history-search{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-variant-ligatures:none!important;letter-spacing:0!important;}

body.jb-app-v15 .jb-empty-state{width:min(100%,760px)!important;gap:14px!important;padding:26px 18px 22px!important;align-content:center!important;}
body.jb-app-v15 .jb-empty-hero{display:grid!important;place-items:center!important;gap:8px!important;text-align:center!important;}
body.jb-app-v15 .jb-empty-state-mark{width:148px!important;height:148px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;overflow:visible!important;}
body.jb-app-v15 .jb-empty-state-mark img{width:100%!important;height:100%!important;object-fit:contain!important;border-radius:0!important;filter:drop-shadow(0 18px 28px rgba(16,37,63,.12))!important;}
body.jb-app-v15 .jb-empty-state h2{margin:0!important;font-size:clamp(1.45rem,2.2vw,1.95rem)!important;font-weight:760!important;letter-spacing:-.04em!important;}
body.jb-app-v15 .jb-empty-state p{max-width:610px!important;font-size:12.5px!important;line-height:1.55!important;}
body.jb-app-v15 .jb-empty-trust{width:min(100%,660px)!important;margin-top:4px!important;padding:12px!important;border:1px solid color-mix(in srgb,var(--blue) 14%,var(--line))!important;border-radius:15px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 3%,var(--surface)),color-mix(in srgb,var(--red) 2%,var(--surface)))!important;box-shadow:0 8px 28px rgba(16,37,63,.05)!important;text-align:left!important;}
body.jb-app-v15 .jb-empty-trust-head{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:9px!important;align-items:start!important;}
body.jb-app-v15 .jb-empty-trust-icon{width:22px!important;height:22px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--blue) 10%,var(--surface))!important;color:var(--blue)!important;font-size:11px!important;font-weight:900!important;}
body.jb-app-v15 .jb-empty-trust-head strong{display:block!important;font-size:11px!important;line-height:1.35!important;}
body.jb-app-v15 .jb-empty-trust-head span:not(.jb-empty-trust-icon){display:block!important;margin-top:2px!important;color:var(--muted)!important;font-size:10px!important;line-height:1.5!important;}
body.jb-app-v15 .jb-empty-trust-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin-top:9px!important;}
body.jb-app-v15 .jb-empty-trust-item{min-width:0!important;padding:8px 9px!important;border-radius:10px!important;background:color-mix(in srgb,var(--surface2) 76%,transparent)!important;}
body.jb-app-v15 .jb-empty-trust-item strong{display:block!important;font-size:9.8px!important;line-height:1.3!important;}
body.jb-app-v15 .jb-empty-trust-item span{display:block!important;margin-top:2px!important;color:var(--muted)!important;font-size:8.9px!important;line-height:1.4!important;}

body.jb-app-v15 .jb-bubble ul,body.jb-app-v15 .jb-bubble ol{margin:.52rem 0 .68rem 1.25rem!important;padding:0!important;}
body.jb-app-v15 .jb-bubble li{margin:.32rem 0!important;padding-left:.12rem!important;}
body.jb-app-v15 .jb-table-wrap{margin:.75rem 0 1rem!important;border-color:color-mix(in srgb,var(--line) 90%,var(--blue))!important;box-shadow:0 5px 18px rgba(16,37,63,.04)!important;}
body.jb-app-v15 .jb-table th{font-size:11.5px!important;letter-spacing:-.01em!important;background:color-mix(in srgb,var(--blue) 5%,var(--surface2))!important;}
body.jb-app-v15 .jb-table td{font-size:11.5px!important;background:var(--surface)!important;}
body.jb-app-v15 .jb-table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--surface2) 56%,var(--surface))!important;}
body.jb-app-v15 .jb-response-callout{position:relative!important;margin:.75rem 0!important;padding:9px 11px 9px 33px!important;border-radius:11px!important;border:1px solid var(--line)!important;background:var(--surface2)!important;font-size:11.5px!important;line-height:1.55!important;}
body.jb-app-v15 .jb-response-callout::before{position:absolute!important;left:10px!important;top:9px!important;width:16px!important;height:16px!important;border-radius:50%!important;display:grid!important;place-items:center!important;font-size:9px!important;font-weight:900!important;content:'i';}
body.jb-app-v15 .jb-callout-verify{border-color:color-mix(in srgb,#d97706 30%,var(--line))!important;background:color-mix(in srgb,#f59e0b 6%,var(--surface))!important;}
body.jb-app-v15 .jb-callout-verify::before{background:color-mix(in srgb,#f59e0b 14%,var(--surface))!important;color:#a05a00!important;content:'!';}
body.jb-app-v15 .jb-callout-safety{border-color:color-mix(in srgb,var(--red) 28%,var(--line))!important;background:color-mix(in srgb,var(--red) 5%,var(--surface))!important;}
body.jb-app-v15 .jb-callout-safety::before{background:color-mix(in srgb,var(--red) 12%,var(--surface))!important;color:var(--red)!important;content:'!';}
body.jb-app-v15 .jb-callout-next{border-color:color-mix(in srgb,var(--blue) 26%,var(--line))!important;background:color-mix(in srgb,var(--blue) 4%,var(--surface))!important;}
body.jb-app-v15 .jb-callout-next::before{background:color-mix(in srgb,var(--blue) 10%,var(--surface))!important;color:var(--blue)!important;content:'→';}
body.jb-app-v15 .jb-callout-info::before{background:color-mix(in srgb,var(--blue) 10%,var(--surface))!important;color:var(--blue)!important;}

body.jb-app-v15 .jb-answer-trust{margin:5px 0 1px!important;padding:7px 8px!important;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important;color:var(--muted)!important;}
body.jb-app-v15 .jb-answer-trust-main{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 360px!important;}
body.jb-app-v15 .jb-answer-trust-badge{flex:none!important;padding:3px 6px!important;border-radius:999px!important;background:color-mix(in srgb,var(--blue) 6%,var(--surface2))!important;color:var(--text)!important;font-size:9px!important;font-weight:760!important;white-space:nowrap!important;}
body.jb-app-v15 .jb-answer-trust[data-tone="verify"] .jb-answer-trust-badge,body.jb-app-v15 .jb-answer-trust[data-tone="attention"] .jb-answer-trust-badge{background:color-mix(in srgb,#f59e0b 9%,var(--surface2))!important;}
body.jb-app-v15 .jb-answer-trust-note{font-size:9px!important;line-height:1.4!important;}
body.jb-app-v15 .jb-answer-trust-actions{display:flex!important;align-items:center!important;gap:2px!important;flex-wrap:wrap!important;}
body.jb-app-v15 .jb-answer-trust-actions button{border:0!important;background:transparent!important;color:var(--muted)!important;border-radius:7px!important;padding:5px 6px!important;font:inherit!important;font-size:9px!important;font-weight:720!important;cursor:pointer!important;}
body.jb-app-v15 .jb-answer-trust-actions button:hover{background:var(--surface2)!important;color:var(--text)!important;}
body.jb-app-v15 .jb-claim-guard{margin:8px 0 3px!important;padding:8px 10px!important;border:1px solid color-mix(in srgb,#f59e0b 25%,var(--line))!important;background:color-mix(in srgb,#f59e0b 5%,var(--surface))!important;}

@media(max-width:700px){
  body.jb-app-v15 .jb-empty-state{padding:18px 10px 14px!important;gap:10px!important;}
  body.jb-app-v15 .jb-empty-state-mark{width:104px!important;height:104px!important;}
  body.jb-app-v15 .jb-empty-state h2{font-size:1.3rem!important;}
  body.jb-app-v15 .jb-empty-state p{font-size:11px!important;}
  body.jb-app-v15 .jb-empty-trust{padding:10px!important;border-radius:13px!important;}
  body.jb-app-v15 .jb-empty-trust-grid{grid-template-columns:1fr!important;gap:4px!important;}
  body.jb-app-v15 .jb-empty-trust-item{padding:6px 8px!important;}
  body.jb-app-v15 .jb-answer-trust{align-items:flex-start!important;padding:7px 3px!important;}
  body.jb-app-v15 .jb-answer-trust-main{display:grid!important;gap:4px!important;flex-basis:100%!important;}
  body.jb-app-v15 .jb-answer-trust-actions{width:100%!important;overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none!important;}
  body.jb-app-v15 .jb-answer-trust-actions::-webkit-scrollbar{display:none!important;}
  body.jb-app-v15 .jb-answer-trust-actions button{flex:0 0 auto!important;}
}


/* V1.5.4 — Home navigation, Java modal, definitive search rendering, full header title. */
body.jb-app-v15 .jb-sidebar-home{
  appearance:none!important;-webkit-appearance:none!important;border:0!important;background:transparent!important;color:inherit!important;
  padding:4px 5px!important;margin:-4px -5px!important;border-radius:9px!important;cursor:pointer!important;text-align:left!important;
}
body.jb-app-v15 .jb-sidebar-home:hover,body.jb-app-v15 .jb-sidebar-home:focus-visible{background:var(--surface)!important;}
body.jb-app-v15 .jb-sidebar-home:focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 58%,transparent)!important;outline-offset:2px!important;}
body.jb-app-v15 .jb-history-summary{display:none!important;}
body.jb-app-v15 .jb-sidebar-manage-menu #selectSessionsBtn{display:flex!important;width:100%!important;justify-content:flex-start!important;}

/* Search: our SVG is the only search icon; native WebKit search decoration is disabled. */
body.jb-app-v15 .jb-sidebar-search-wrap{position:relative!important;}
body.jb-app-v15 .jb-sidebar-search-icon{
  position:static!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;
  width:17px!important;height:17px!important;flex:0 0 17px!important;margin:0!important;overflow:visible!important;
}
body.jb-app-v15 .jb-sidebar-search-icon svg{width:16px!important;height:16px!important;overflow:visible!important;}
body.jb-app-v15 .jb-history-search{-webkit-appearance:none!important;appearance:none!important;padding:8px 0!important;}
body.jb-app-v15 .jb-history-search::-webkit-search-decoration,
body.jb-app-v15 .jb-history-search::-webkit-search-cancel-button,
body.jb-app-v15 .jb-history-search::-webkit-search-results-button,
body.jb-app-v15 .jb-history-search::-webkit-search-results-decoration{-webkit-appearance:none!important;display:none!important;}
body.jb-app-v15 .jb-history-search::-ms-clear,body.jb-app-v15 .jb-history-search::-ms-reveal{display:none!important;width:0!important;height:0!important;}

/* Header uses the complete first-question title on desktop rather than the shortened history label. */
body.jb-app-v15 .jb-panel.jb-has-conversation .jb-head{height:auto!important;min-height:62px!important;align-items:flex-start!important;}
body.jb-app-v15 .jb-panel.jb-has-conversation .jb-head-main{align-items:flex-start!important;min-width:0!important;flex:1 1 auto!important;}
body.jb-app-v15 .jb-panel.jb-has-conversation .jb-brand{align-items:flex-start!important;min-width:0!important;}
body.jb-app-v15 .jb-panel.jb-has-conversation .jb-title h1{
  max-width:none!important;width:auto!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  display:block!important;-webkit-line-clamp:unset!important;-webkit-box-orient:unset!important;overflow-wrap:anywhere!important;word-break:normal!important;
  line-height:1.35!important;padding-top:5px!important;
}

/* Dedicated Java Electrindo new-conversation confirmation. */
body.jb-app-v15 .jb-new-chat-modal{background:rgba(8,16,30,.46)!important;backdrop-filter:blur(7px)!important;}
body.jb-app-v15 .jb-new-chat-dialog{
  position:relative!important;width:min(500px,100%)!important;padding:0!important;overflow:hidden!important;border-radius:20px!important;
  border:1px solid color-mix(in srgb,var(--blue) 16%,var(--line))!important;background:var(--surface)!important;
  box-shadow:0 28px 90px rgba(8,24,48,.28)!important;
}
body.jb-app-v15 .jb-new-chat-dialog::before{content:''!important;display:block!important;height:4px!important;background:linear-gradient(90deg,var(--blue),color-mix(in srgb,var(--blue) 48%,var(--red)),var(--red))!important;}
body.jb-app-v15 .jb-new-chat-brand{display:flex!important;align-items:center!important;gap:10px!important;padding:17px 20px 6px!important;}
body.jb-app-v15 .jb-new-chat-brand img{width:42px!important;height:42px!important;object-fit:contain!important;filter:drop-shadow(0 8px 14px rgba(16,37,63,.12))!important;}
body.jb-app-v15 .jb-new-chat-brand strong{display:block!important;font-size:13px!important;letter-spacing:-.02em!important;}
body.jb-app-v15 .jb-new-chat-brand span{display:block!important;margin-top:2px!important;color:var(--muted)!important;font-size:9.5px!important;font-weight:600!important;}
body.jb-app-v15 .jb-new-chat-dialog h2{margin:8px 20px 5px!important;font-size:18px!important;letter-spacing:-.035em!important;}
body.jb-app-v15 .jb-new-chat-dialog>p{margin:0 20px 12px!important;color:var(--muted)!important;font-size:11.5px!important;line-height:1.55!important;}
body.jb-app-v15 .jb-new-chat-context{margin:0 20px 16px!important;padding:11px 12px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:color-mix(in srgb,var(--surface2) 74%,transparent)!important;color:var(--muted)!important;font-size:10.5px!important;line-height:1.5!important;}
body.jb-app-v15 .jb-new-chat-context ul{margin:0!important;padding-left:17px!important;}
body.jb-app-v15 .jb-new-chat-context li+li{margin-top:4px!important;}
body.jb-app-v15 .jb-new-chat-dialog .jb-confirm-actions{margin:0!important;padding:13px 20px 18px!important;border-top:1px solid var(--line)!important;background:color-mix(in srgb,var(--surface2) 40%,var(--surface))!important;}
body.jb-app-v15 .jb-new-chat-dialog .jb-confirm-actions .btn{min-height:38px!important;border-radius:10px!important;font-size:11px!important;}
body.jb-app-v15.jb-new-conversation-open{overflow:hidden!important;}

body.jb-app-v15 .jb-new-chat-dialog #newConversationConfirmBtn{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important;box-shadow:none!important;}
body.jb-app-v15 .jb-new-chat-dialog #newConversationConfirmBtn:hover{background:color-mix(in srgb,var(--blue) 88%,#000)!important;}
body.jb-app-v15 .jb-new-chat-dialog #newConversationCancelBtn{background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--text)!important;box-shadow:none!important;}

@media(max-width:700px){
  body.jb-app-v15 .jb-panel.jb-has-conversation .jb-title h1{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important;padding-top:2px!important;}
  body.jb-app-v15 .jb-new-chat-modal{place-items:end center!important;padding:8px!important;}
  body.jb-app-v15 .jb-new-chat-dialog{width:100%!important;border-radius:18px 18px 14px 14px!important;}
  body.jb-app-v15 .jb-new-chat-brand{padding:15px 16px 4px!important;}
  body.jb-app-v15 .jb-new-chat-dialog h2{margin-inline:16px!important;}
  body.jb-app-v15 .jb-new-chat-dialog>p{margin-inline:16px!important;}
  body.jb-app-v15 .jb-new-chat-context{margin-inline:16px!important;}
  body.jb-app-v15 .jb-new-chat-dialog .jb-confirm-actions{padding:12px 16px 16px!important;}
}


/* V1.5.4 — single-surface composer + structured response intelligence foundation. */
body.jb-app-v15 .jb-compose-shell{
  min-height:60px!important;padding:8px 9px!important;border:1px solid color-mix(in srgb,var(--line) 94%,transparent)!important;border-radius:24px!important;
  background:var(--surface)!important;box-shadow:0 7px 24px rgba(15,23,42,.075)!important;
}
body.jb-app-v15 .jb-compose-shell:focus-within{
  border-color:color-mix(in srgb,var(--blue) 42%,var(--line))!important;box-shadow:0 8px 26px rgba(15,23,42,.08),0 0 0 2px color-mix(in srgb,var(--blue) 7%,transparent)!important;
}
/* Kill the legacy inner pill. The shell above is the only visual composer surface. */
body.jb-app-v15 .jb-compose-row,
body.jb-app-v15 .jb-compose-row:focus-within{
  min-height:44px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;
}
body.jb-app-v15 .jb-compose-row textarea,
body.jb-app-v15 .jb-compose-row textarea:hover,
body.jb-app-v15 .jb-compose-row textarea:focus,
body.jb-app-v15 .jb-compose-row textarea:focus-visible{
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;
}
body.jb-app-v15 .jb-file-btn,body.jb-app-v15 #sendBtn{position:relative!important;z-index:1!important;}

body.jb-app-v15 .jb-answer-trust-main{flex-wrap:wrap!important;}
body.jb-app-v15 .jb-answer-trust-source{
  display:inline-flex!important;align-items:center!important;min-height:20px!important;padding:3px 7px!important;border:1px solid color-mix(in srgb,var(--line) 88%,transparent)!important;
  border-radius:999px!important;background:var(--surface)!important;color:var(--muted)!important;font-size:9px!important;font-weight:700!important;white-space:nowrap!important;
}
body.jb-app-v15 .jb-answer-trust[data-source-mode="internal"] .jb-answer-trust-source{color:color-mix(in srgb,var(--blue) 82%,var(--text))!important;background:color-mix(in srgb,var(--blue) 5%,var(--surface))!important;}
body.jb-app-v15 .jb-answer-trust[data-source-mode="general"] .jb-answer-trust-source,
body.jb-app-v15 .jb-answer-trust[data-source-mode="dynamic_external"] .jb-answer-trust-source{color:#9a5b00!important;background:color-mix(in srgb,#f59e0b 7%,var(--surface))!important;border-color:color-mix(in srgb,#f59e0b 24%,var(--line))!important;}

body.jb-app-v15 .jb-fact-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin:8px 0 14px!important;
}
body.jb-app-v15 .jb-fact-grid .jb-fact-item{
  margin:0!important;padding:9px 10px!important;border:1px solid color-mix(in srgb,var(--line) 90%,transparent)!important;border-radius:11px!important;background:color-mix(in srgb,var(--surface2) 58%,transparent)!important;
  font-size:12px!important;line-height:1.45!important;
}
body.jb-app-v15 .jb-fact-grid .jb-fact-item strong{display:block!important;margin-bottom:2px!important;color:var(--text)!important;font-size:10px!important;letter-spacing:.01em!important;}
body.jb-app-v15 .jb-verification-list{
  list-style:none!important;margin:8px 0 14px!important;padding:0!important;display:grid!important;gap:5px!important;
}
body.jb-app-v15 .jb-verification-list li{position:relative!important;margin:0!important;padding:7px 9px 7px 29px!important;border-radius:10px!important;background:color-mix(in srgb,var(--surface2) 52%,transparent)!important;}
body.jb-app-v15 .jb-verification-list li::before{content:'✓'!important;position:absolute!important;left:10px!important;top:7px!important;color:var(--blue)!important;font-weight:900!important;}
body.jb-app-v15 .jb-message.bot .jb-bubble>ol{counter-reset:jb-step!important;list-style:none!important;margin:9px 0 14px!important;padding:0!important;display:grid!important;gap:6px!important;}
body.jb-app-v15 .jb-message.bot .jb-bubble>ol>li{counter-increment:jb-step!important;position:relative!important;margin:0!important;padding:8px 9px 8px 34px!important;border-radius:10px!important;background:color-mix(in srgb,var(--surface2) 46%,transparent)!important;}
body.jb-app-v15 .jb-message.bot .jb-bubble>ol>li::before{content:counter(jb-step)!important;position:absolute!important;left:9px!important;top:8px!important;width:18px!important;height:18px!important;border-radius:6px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--blue) 9%,var(--surface2))!important;color:var(--blue)!important;font-size:9px!important;font-weight:850!important;}

@media(max-width:700px){
  body.jb-app-v15 .jb-compose-shell{min-height:56px!important;padding:7px!important;border-radius:19px!important;}
  body.jb-app-v15 .jb-fact-grid{grid-template-columns:1fr!important;}
  body.jb-app-v15 .jb-answer-trust-source{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;}
}

/* V1.6.0 — context-aware knowledge + verified external-source presentation. */
body.jb-app-v15 .jb-answer-trust[data-source-mode="web"] .jb-answer-trust-source{
  color:#075f55!important;background:color-mix(in srgb,#0f9f8d 8%,var(--surface))!important;border-color:color-mix(in srgb,#0f9f8d 26%,var(--line))!important;
}
body.jb-app-v15 .jb-inline-sources-body a[data-source-type="web"]{
  position:relative!important;padding-left:12px!important;border-left:2px solid color-mix(in srgb,#0f9f8d 54%,var(--line))!important;
}
body.jb-app-v15 .jb-source-marker{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:24px!important;height:19px!important;margin:0 2px!important;padding:0 5px!important;
  border:1px solid color-mix(in srgb,#0f9f8d 28%,var(--line))!important;border-radius:999px!important;background:color-mix(in srgb,#0f9f8d 7%,var(--surface))!important;
  color:#087466!important;font-size:9px!important;font-weight:850!important;line-height:1!important;vertical-align:baseline!important;
}
body.jb-dark.jb-app-v15 .jb-answer-trust[data-source-mode="web"] .jb-answer-trust-source,
body.jb-dark.jb-app-v15 .jb-source-marker{color:#7be0d3!important;}
/* Integrated Javabot workspace */
body.jb-integrated #historyToggleBtn::before,body.jb-integrated #historyToggleBtn::after{content:none!important;display:none!important}
body.jb-integrated #historyToggleBtn{display:inline-flex!important;align-items:center!important;justify-content:center!important}
@media(min-width:1100px){body.jb-integrated #historyToggleBtn{display:none!important}}
@media(max-width:700px){body.jb-integrated .jb-suggestions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}body.jb-integrated .jb-suggestions .jb-chip{width:100%!important;min-width:0!important}}
:root{--jb-v15-sidebar:260px;--jb-v15-chat-max:820px;--jb-v15-composer-max:820px}
body.jb-integrated{--surface:#ffffff;--surface2:#f5f7fa;--text:#17283e;--muted:#596b80;--line:#dee5ed;--blue:#145baf;font-size:16px!important;height:var(--jb-viewport-height,100dvh)!important;min-height:0!important;background:var(--surface)!important}
body.jb-integrated.dark{--surface:#111b2b;--surface2:#182538;--text:#e6edf7;--muted:#a5b5ca;--line:#2e4057;--blue:#8abcff}
body.jb-integrated .jb-history-panel{background:var(--surface2)!important}
body.jb-integrated .jb-head{padding:10px 22px!important;min-height:62px!important;border-bottom:1px solid var(--line)!important}
body.jb-integrated .jb-title h1{font-size:15px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.jb-integrated .jb-title small{font-size:11px!important}
body.jb-integrated .jb-sidebar-new span{font-size:14px!important}body.jb-integrated .jb-sidebar-new{font-size:14px!important;min-height:44px!important;background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:10px!important;margin-bottom:14px!important}
body.jb-integrated .jb-session-title{font-size:13px!important;line-height:1.45!important}
body.jb-integrated .jb-history-search{font-size:14px!important;min-height:44px!important}
body.jb-integrated .jb-empty-state{max-width:720px!important;padding:24px 16px!important;gap:24px!important;margin:auto!important}body.jb-integrated .jb-empty-state .jb-suggestions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}body.jb-integrated .jb-empty-state .jb-chip{width:100%!important;min-width:0!important;text-align:left!important}body.jb-integrated .jb-empty-state .jb-chip span{white-space:normal!important}
body.jb-integrated .jb-empty-state-mark{width:60px!important;height:60px!important;margin:0 auto 12px!important}
body.jb-integrated .jb-empty-state h2{font-size:clamp(24px,2.6vw,32px)!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:700!important}
body.jb-integrated .jb-empty-state p{font-size:14px!important;line-height:1.7!important;max-width:520px!important;margin:12px auto 0!important}
body.jb-integrated .jb-messages{padding-top:24px!important;padding-bottom:24px!important;scroll-behavior:auto!important}
body.jb-integrated .jb-message{margin-bottom:22px!important;max-width:100%!important;min-width:0!important}
body.jb-integrated .jb-bubble,body.jb-integrated .jb-stream-text{font-size:16px!important;line-height:1.75!important;font-weight:400!important;overflow-wrap:anywhere!important}
body.jb-integrated .jb-bubble p{font-size:inherit!important;line-height:inherit!important;margin:0 0 12px!important}
body.jb-integrated .jb-bubble li{font-size:inherit!important;line-height:1.7!important;margin-bottom:5px!important}
body.jb-integrated .jb-bubble :is(h2,h3,h4){font-size:18px!important;line-height:1.45!important;margin:22px 0 10px!important}
body.jb-integrated .jb-bubble-wrap{min-width:0!important;max-width:100%!important}
body.jb-integrated .jb-message.user .jb-bubble{background:var(--surface2)!important;color:var(--text)!important;border:0!important;border-radius:16px!important;padding:12px 16px!important}
body.jb-integrated .jb-table-wrap,body.jb-integrated .jb-code-block{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain}
body.jb-integrated .jb-bubble a{color:var(--blue)!important;text-decoration:underline!important;text-underline-offset:3px}
body.jb-integrated .jb-stream-text{grid-column:2!important;min-width:0!important;max-width:100%!important;white-space:normal!important;padding:2px 0!important;width:100%!important}
body.jb-integrated .jb-stream-preview{padding-inline:0!important}
body.jb-integrated .jb-stream-text::after{content:'●';color:var(--blue);font-size:10px;margin-left:5px}
body.jb-integrated .jb-answer-trust{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:10px 0!important;box-shadow:none!important}
body.jb-integrated .jb-answer-trust-note{display:none!important}
body.jb-integrated .jb-answer-trust-actions button{min-height:36px!important;font-size:12px!important}
body.jb-integrated .jb-answer-trust-actions button:last-child{display:none!important}
body.jb-integrated .jb-message-actions :is(button,summary){min-height:36px!important;font-size:12px!important}
body.jb-integrated .jb-inline-sources-body{max-width:min(420px,calc(100vw - 32px))!important;background:var(--surface)!important;color:var(--text)!important}
body.jb-integrated .jb-inline-sources-body a{font-size:13px!important;line-height:1.5!important;padding:10px!important}
body.jb-integrated .jb-chip{min-height:64px!important;padding:12px 14px!important;border-radius:12px!important}
body.jb-integrated .jb-chip strong{font-size:13px!important}
body.jb-integrated .jb-chip span{font-size:12px!important;line-height:1.4!important}
body.jb-integrated .jb-compose-shell{padding:8px!important;border-radius:18px!important;box-shadow:0 4px 20px #17283e09!important;background:var(--surface)!important}
body.jb-integrated .jb-mode-bar{display:flex;align-items:center;gap:14px;padding:0 7px 6px;border-bottom:1px solid var(--line);margin-bottom:5px;min-width:0}
body.jb-integrated .jb-mode-bar label{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}
body.jb-integrated .jb-mode-bar select{min-height:36px;max-width:125px;border:0;border-radius:8px;background:var(--surface2);color:var(--text);font:600 12px/1.4 inherit;padding:5px 8px;cursor:pointer}
body.jb-integrated .jb-shop-shortcut{margin-left:auto;font-size:12px;color:var(--blue);white-space:nowrap}
body.jb-integrated .jb-compose-row{grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:end!important}
body.jb-integrated #userInput{font-size:16px!important;line-height:1.5!important;min-height:48px!important;max-height:150px!important;padding:12px 8px!important;resize:none!important}
body.jb-integrated :is(#sendBtn,.jb-file-btn){width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
body.jb-integrated #sendBtn[data-state=ready],body.jb-integrated #sendBtn[data-state=generating]{background:#145baf!important;color:white!important}
body.jb-integrated .jb-meta{font-size:11px!important;line-height:1.4!important;padding:5px 0!important}
body.jb-integrated .jb-file-row.has-file{display:flex!important;gap:8px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:var(--surface2)!important;margin:6px!important;padding:10px!important}
body.jb-integrated .jb-file-status{overflow-wrap:anywhere;font-size:12px!important}
body.jb-integrated :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--blue)!important;outline-offset:3px}
body.jb-integrated .jb-version-badge{display:none!important}
@media(max-width:1099px){body.jb-integrated .jb-history-panel{height:var(--jb-viewport-height,100dvh)!important}}
@media(max-width:700px){
 body.jb-integrated .jb-head{padding:8px 12px!important;min-height:56px!important}
 body.jb-integrated .jb-empty-state{padding:20px 0!important;gap:20px!important}
 body.jb-integrated .jb-empty-state-mark{width:48px!important;height:48px!important;margin-bottom:10px!important}
 body.jb-integrated .jb-empty-state h2{font-size:24px!important}
 body.jb-integrated .jb-empty-state p{font-size:13px!important}
 body.jb-integrated .jb-chip{min-height:50px!important;padding:10px!important}
 body.jb-integrated .jb-empty-state .jb-chip span{display:block!important;font-size:11px!important}
 body.jb-integrated .jb-conversation-footer{padding:0 10px max(6px,env(safe-area-inset-bottom))!important}
 body.jb-integrated .jb-messages{padding:16px!important}
 body.jb-integrated .jb-mode-bar{gap:8px;padding-inline:0}
 body.jb-integrated .jb-mode-bar label>span{display:none}
 body.jb-integrated .jb-mode-bar select{min-height:40px;font-size:13px;max-width:112px}
 body.jb-integrated .jb-meta{font-size:10px!important}
 body.jb-integrated .jb-inline-sources-body{position:static!important;width:100%!important;max-width:100%!important;max-height:45dvh!important;transform:none!important;margin:8px 0!important}
 body.jb-integrated .jb-inline-sources{width:auto;max-width:100%}
 body.jb-integrated .jb-inline-sources[open]{flex-basis:100%}
}
@media(max-height:600px){body.jb-integrated .jb-empty-state-mark{display:none!important}body.jb-integrated .jb-empty-state{padding:10px!important}body.jb-integrated .jb-suggestions{display:none!important}}
@media(prefers-reduced-motion:reduce){body.jb-integrated *,body.jb-integrated *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body.jb-integrated .jb-message[data-transient-error] .jb-copy{display:inline-flex!important;min-height:44px!important;padding:10px 14px!important;font-size:13px!important;border:1px solid var(--line)!important;background:var(--surface2)!important;color:var(--text)!important}body.jb-integrated .jb-typing{font-size:14px!important;color:var(--muted)!important}body.jb-integrated .jb-sidebar-new>span:first-child,body.jb-integrated .jb-file-btn>span{font-family:Arial,sans-serif!important}

body.jb-integrated .jb-bubble,body.jb-integrated .jb-bubble p,body.jb-integrated .jb-table td{color:var(--text)!important}body.jb-integrated .jb-edit-question{font-size:12px!important;min-height:36px!important;color:var(--muted)!important;margin-left:auto;display:block}body.jb-integrated .jb-copy-message::before,body.jb-integrated .jb-regenerate-message::before{content:none!important}body.jb-integrated .jb-copy-message,body.jb-integrated .jb-regenerate-message{width:auto!important;padding-inline:8px!important}body.jb-integrated #historyToggleBtn{width:44px!important;height:44px!important;min-width:44px!important}

body.jb-integrated .jb-source-group{font-size:11px;line-height:1.5;padding:9px 10px 2px;color:var(--muted)}

body.jb-integrated .jb-stream-pending{display:block!important;white-space:pre-wrap!important;word-break:normal!important;overflow-wrap:anywhere!important;font:inherit!important;line-height:inherit!important;min-width:0;max-width:100%}body.jb-integrated .jb-stream-complete:empty{display:none!important}
