:root{--orchat-bg:#0b0d12;--orchat-surface:#121620;--orchat-surface-2:#1a2030;--orchat-border:#94a3b829;--orchat-user-bubble:#6d5dfc;--orchat-accent-2:#32c5ff;--orchat-radius:16px;--orchat-shadow:0 16px 44px #00000038}[data-bs-theme=light]{--orchat-bg:#fff;--orchat-surface:#f6f8fa;--orchat-surface-2:#eef1f4;--orchat-border:#d0d7de;--orchat-user-bubble:#0d6efd;--orchat-accent-2:#0ea5e9;--orchat-shadow:0 16px 44px #0f172a1f}html,body,#root{height:100%;margin:0}body{background:var(--orchat-bg);overscroll-behavior:none}.app-layout{height:100dvh;display:flex;overflow:hidden}.app-sidebar{background:var(--orchat-surface);border-right:1px solid var(--orchat-border);flex-shrink:0;width:280px;box-shadow:12px 0 32px #00000014}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.mobile-topbar{border-bottom:1px solid var(--orchat-border);background:var(--orchat-surface);min-height:56px}.app-brand{color:var(--bs-body-color);letter-spacing:-.02em;align-items:center;gap:9px;display:inline-flex}.app-brand-mark,.welcome-orb{color:#fff;background:linear-gradient(135deg, var(--orchat-user-bubble), var(--orchat-accent-2));border-radius:11px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;box-shadow:0 8px 20px #6d5dfc47}.app-brand strong,.app-brand small{line-height:1.05;display:block}.app-brand strong{font-size:.95rem}.app-brand small{color:var(--bs-secondary-color);margin-top:3px;font-size:.68rem}.mobile-brand{margin-left:2px}.chat-view{flex:1;min-height:0}.chat-header{border-bottom:1px solid var(--orchat-border);background:var(--orchat-surface);min-height:64px}.chat-model-btn{max-width:50vw;font-size:.9rem}.sidebar-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--bs-secondary-color);font-size:.7rem}.sidebar-item{cursor:pointer;color:var(--bs-body-color);border-radius:8px;justify-content:space-between;align-items:center;gap:4px;padding:8px 10px;display:flex}.sidebar-item:hover{background:var(--orchat-surface-2)}.sidebar-item.active{background:var(--orchat-surface-2);font-weight:500}.sidebar-item-title{flex:1;min-width:0;font-size:.875rem}.sidebar-item-actions{flex-shrink:0;display:none}.sidebar-item:hover .sidebar-item-actions{display:inline-flex}.messages{scroll-behavior:smooth}.message-row{margin-bottom:16px;display:flex}.message-user{justify-content:flex-end}.message-assistant{justify-content:flex-start}.message-bubble{border-radius:var(--orchat-radius);max-width:min(85%,760px);padding:10px 14px}.bubble-user{background:var(--orchat-user-bubble);color:#fff;border-bottom-right-radius:4px}.bubble-assistant{background:var(--orchat-surface);border:1px solid var(--orchat-border);border-bottom-left-radius:4px}.user-text{white-space:pre-wrap;word-break:break-word}.message-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.bubble-user .message-meta{color:#ffffffb3!important}.message-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex}.message-bubble:hover .message-actions,.message-bubble:focus-within .message-actions{opacity:1}@media (hover:none){.message-actions{opacity:1}}.btn-action{cursor:pointer;color:var(--bs-secondary-color);background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:.9rem;line-height:1}.btn-action:hover{background:var(--orchat-surface-2);color:var(--bs-body-color)}.btn-action.active{background:var(--orchat-surface-2)}.markdown-body{word-break:break-word;font-size:.925rem}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body pre{background:var(--orchat-surface-2);border:1px solid var(--orchat-border);border-radius:8px;padding:12px;font-size:.85rem;overflow-x:auto}[data-bs-theme=light] .markdown-body pre{background:#f6f8fa}.markdown-body code{font-size:.85em}.markdown-body table{border-collapse:collapse;margin:8px 0;display:block;overflow-x:auto}.markdown-body th,.markdown-body td{border:1px solid var(--orchat-border);padding:6px 10px;font-size:.85rem}.attachment-image{border-radius:8px;max-width:220px;max-height:220px;display:block}.attachment-badge{font-size:.75rem}.bubble-user .attachment-badge{color:#fff;background:#ffffff40!important}.composer{padding:12px max(12px, 3vw) calc(16px + env(safe-area-inset-bottom));background:var(--orchat-bg)}.composer-notice{margin-bottom:8px}.composer-box{background:var(--orchat-surface);border:1px solid var(--orchat-border);box-shadow:var(--orchat-shadow);border-radius:18px;align-items:flex-end;gap:6px;padding:9px 11px;transition:border-color .15s;display:flex}.composer-box:focus-within{border-color:var(--orchat-user-bubble)}.composer.drag-over .composer-box{border-color:var(--orchat-user-bubble);border-style:dashed}.composer-textarea{resize:none;color:var(--bs-body-color);background:0 0;border:none;outline:none;flex:1;max-height:200px;padding:4px 2px;font-size:.95rem;line-height:1.4}.composer-textarea::placeholder{color:var(--bs-secondary-color)}.btn-send,.btn-stop{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.btn-send{background:linear-gradient(135deg, var(--orchat-user-bubble), #897cff);color:#fff}.btn-send:disabled{opacity:.4;cursor:default}.btn-stop{background:var(--bs-danger);color:#fff}.btn-attach{flex-shrink:0;font-size:1.1rem}.composer-attachments{padding:0 4px}.attachment-chip{background:var(--orchat-surface);border:1px solid var(--orchat-border);border-radius:10px;align-items:center;gap:6px;max-width:220px;padding:4px 8px;display:inline-flex}.attachment-thumb{object-fit:cover;border-radius:6px;width:32px;height:32px}.attachment-icon{font-size:1.2rem}.attachment-name{max-width:120px;font-size:.8rem}.btn-remove{padding:2px 4px;font-size:.75rem}.params-panel{background:var(--orchat-surface)}.empty-model-btn{border:1px dashed var(--orchat-border);background:var(--orchat-surface);max-width:100%;color:var(--bs-body-color);border-radius:999px;align-items:center;gap:10px;padding:12px 24px;font-size:1rem;font-weight:500;transition:border-color .15s,background .15s,transform .15s;display:inline-flex}.empty-model-btn:hover{border-color:var(--orchat-user-bubble);background:var(--orchat-surface-2);transform:translateY(-1px)}.empty-model-btn:active{transform:translateY(0)}.welcome-kicker{color:var(--orchat-accent-2);letter-spacing:.16em;margin-bottom:10px;font-size:.68rem;font-weight:700;display:block}.welcome-title{letter-spacing:-.035em;font-weight:700}.welcome-orb{border-radius:18px;width:54px;height:54px;margin-inline:auto;font-size:1.35rem}.model-list{max-height:55vh;overflow-y:auto}.model-item{cursor:pointer;border:1px solid #0000;border-radius:10px;padding:10px 12px}.model-item:hover{background:var(--orchat-surface-2)}.model-item.active{border-color:var(--orchat-user-bubble);background:var(--orchat-surface-2)}.model-id{font-family:monospace;font-size:.75rem}.min-w-0{min-width:0}.install-banner{background:var(--orchat-surface);border:1px solid var(--orchat-border);z-index:1050;border-radius:12px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:10px 14px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0000004d}.sidebar-brand{justify-content:space-between;align-items:center;padding:18px 16px 8px;display:flex}.sidebar-close{display:none}@media (width<=767.98px){.sidebar-brand{padding-top:max(18px, env(safe-area-inset-top))}.sidebar-close{display:inline-flex}.chat-header{min-height:60px}.model-pill{max-width:calc(100vw - 72px)}.model-pill-copy strong{max-width:calc(100vw - 148px)}.composer{padding-inline:10px}.composer-textarea{min-height:28px;font-size:1rem}.app-sidebar{z-index:1040;width:min(300px,85vw);transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:1035;background:#00000080;position:fixed;inset:0}.message-bubble{max-width:92%}}*{scrollbar-width:thin;scrollbar-color:var(--orchat-border) transparent}.model-pill{border:1px solid var(--orchat-border);min-width:0;max-width:min(440px,70vw);color:var(--bs-body-color);background:var(--orchat-surface-2);text-align:left;border-radius:12px;align-items:center;gap:9px;padding:7px 10px 7px 7px;transition:border-color .15s,transform .15s,background .15s;display:inline-flex}.model-pill:hover{background:var(--orchat-surface);border-color:#6d5dfcb3;transform:translateY(-1px)}.model-pill-icon{color:#fff;background:linear-gradient(135deg, var(--orchat-user-bubble), var(--orchat-accent-2));border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.model-pill-copy{min-width:0}.model-pill-copy small,.model-pill-copy strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.model-pill-copy small{color:var(--bs-secondary-color);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem}.model-pill-copy strong{max-width:min(290px,48vw);font-size:.86rem}.model-pill-chevron{color:var(--bs-secondary-color);margin-left:2px;font-size:1.1rem}
