.chat-shell{max-width:700px;margin:0 auto;padding-bottom:4.5rem}.chat-scroll{display:flex;flex-direction:column;gap:.6rem;padding:.5rem 0 1rem;min-height:40vh}.chat-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;color:#000b6380}.chat-welcome-icon{font-size:2.5rem;margin-bottom:.5rem}.chat-welcome-text{font-size:1.1rem;font-weight:600;color:#000b63;margin:0}.chat-welcome-hint{font-size:.85rem;margin:0}.chat-bubble{max-width:88%;padding:.65rem .85rem;border-radius:14px;line-height:1.45;font-size:.9rem}.user-bubble{align-self:flex-end;background:#000b63;color:#fff;border-bottom-right-radius:4px;display:flex;align-items:baseline;gap:.5rem}.bubble-mode{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.6;flex-shrink:0}.bubble-query{word-break:break-word}.ai-bubble{align-self:flex-start;background:#000b630d;color:#000b63;border-bottom-left-radius:4px}.error-bubble{background:#d9770614;border:1px solid rgba(217,119,6,.25)}.bubble-error-title{font-weight:600;color:#b45014;font-size:.82rem;margin:0 0 .2rem}.bubble-error-msg{color:#000b63;font-size:.85rem;margin:0}.bubble-empty{color:#000b6399;margin:0}.bubble-summary{font-size:.8rem;color:#000b638c;margin:0 0 .5rem;font-weight:600}.loading-dots{color:#000b638c;font-style:italic}.hit-card{border:1px solid rgba(0,11,99,.1);border-radius:8px;padding:.6rem;margin-bottom:.5rem;background:#fff}.hit-title{margin:0 0 .2rem;font-size:.88rem}.hit-title a{color:#000b63;text-decoration:none;font-weight:600}.hit-title a:hover{text-decoration:underline}.hit-passage{font-size:.78rem;color:#000b638c;margin:0 0 .2rem}.hit-excerpt{font-size:.82rem;color:#000b63;line-height:1.5;margin:0 0 .35rem}.hit-footer{display:flex;align-items:center;gap:.5rem;font-size:.7rem}.hit-kind{padding:1px 6px;background:#000b6314;color:#000b63;border-radius:3px;font-weight:500}.show-more-btn{width:100%;padding:.5rem;border:1px dashed rgba(0,11,99,.2);border-radius:8px;background:transparent;color:#000b63;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .16s ease,border-color .16s ease}.show-more-btn:hover{background:#000b630a;border-color:#000b6359}.branches{display:flex;flex-direction:column;gap:.35rem}.branch{border:1px solid rgba(0,11,99,.1);border-radius:8px;overflow:hidden}.branch-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .7rem;border:none;background:#000b6308;font:inherit;font-size:.82rem;font-weight:600;color:#000b63;cursor:pointer;text-align:left;transition:background .12s ease}.branch-header:hover{background:#000b6312}.branch-label{flex:1}.branch-count{font-size:.7rem;font-weight:700;min-width:1.4rem;text-align:center;padding:0 5px;background:#000b631a;border-radius:8px;line-height:1.5}.branch-chevron{font-size:.7rem;opacity:.5}.branch-items{padding:.3rem .5rem .5rem}.branch-more{font-size:.78rem;color:#000b6380;text-align:center;margin:.3rem 0 0;font-style:italic}.branch-open>.branch-header{border-bottom:1px solid rgba(0,11,99,.08)}.answer-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.confidence-badge{display:inline-block;padding:1px 7px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#fff;border-radius:3px}.cite-count{font-size:.75rem;color:#000b6380}.answer-body{font-size:.88rem;line-height:1.6;white-space:pre-wrap}.citations-details{margin-top:.6rem}.citations-summary{display:block;width:100%;padding:.5rem;border:1px dashed rgba(0,11,99,.25);border-radius:8px;background:transparent;font-size:.82rem;font-weight:600;color:#000b63;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;transition:background .16s ease,border-color .16s ease;list-style:none}.citations-summary::-webkit-details-marker{display:none}.citations-summary:hover{background:#000b630a;border-color:#000b6366}.citations-details[open]>.citations-summary{margin-bottom:.5rem;border-style:solid;border-color:#000b6326}.citations-list{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.5rem}.citation-item{display:flex;gap:.4rem;align-items:flex-start;padding:.5rem;border-radius:6px;background:#fff;border:1px solid rgba(0,11,99,.08)}.citation-n{font-size:.7rem;font-family:monospace;color:#000b6373;min-width:1.3rem}.citation-body{flex:1}.citation-title{color:#000b63;font-weight:600;font-size:.82rem;text-decoration:none}.citation-title:hover{text-decoration:underline}.citation-passage{font-size:.7rem;color:#000b6380;margin-left:.3rem}.citation-excerpt{font-size:.78rem;color:#000b63;line-height:1.45;margin:2px 0 0}.chat-input-bar{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border-top:1px solid rgba(0,11,99,.1);background:#fffffff7;backdrop-filter:blur(8px);z-index:50;max-width:700px;margin:0 auto;box-sizing:border-box}.chat-form{display:flex;flex:1;gap:0}.chat-input{flex:1;padding:.55rem .75rem;border:1px solid rgba(0,11,99,.2);border-right:0;border-radius:20px 0 0 20px;font:inherit;font-size:.9rem;color:#000b63;outline:none}.chat-input:focus{border-color:#000b63}.chat-send{padding:.55rem .75rem;border:1px solid rgb(0,11,99);border-radius:0 20px 20px 0;background:#000b63;color:#fff;font-size:1rem;cursor:pointer;line-height:1}.chat-send:disabled{opacity:.4;cursor:default}.mode-toggle{padding:.45rem .6rem;border:1px solid rgba(0,11,99,.2);border-radius:20px;background:transparent;font:inherit;font-size:.75rem;font-weight:700;color:#000b63;cursor:pointer;white-space:nowrap;flex-shrink:0}.mode-toggle.premium{background:#000b63;color:#fff;border-color:#000b63}.clear-btn{width:28px;height:28px;border:none;background:#000b630f;color:#000b6380;border-radius:999px;font-size:1rem;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.clear-btn:hover{background:#000b631f;color:#000b63}.modal-backdrop{position:fixed;inset:0;background:#0006;display:grid;place-items:center;z-index:100}.modal-box{background:#fff;border-radius:12px;padding:1.5rem;width:min(360px,90vw);box-shadow:0 20px 60px #0000004d}.modal-title{font-size:1.1rem;font-weight:700;color:#000b63;margin:0 0 1rem}.modal-input{width:100%;padding:.6rem;border:1px solid rgba(0,11,99,.2);border-radius:6px;font:inherit;margin-bottom:1rem;box-sizing:border-box}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem}.modal-cancel,.modal-ok{padding:.4rem 1rem;border-radius:6px;font:inherit;font-weight:600;cursor:pointer;border:1px solid rgba(0,11,99,.2)}.modal-cancel{background:transparent;color:#000b63}.modal-ok{background:#000b63;color:#fff;border-color:#000b63}
