:root{--sidebar-width: 260px;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace}*,*:before,*:after{box-sizing:border-box}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased}a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,.nav-link:focus-visible{outline:2px solid rgba(var(--bs-primary-rgb),.5);outline-offset:2px}.app-shell{min-height:100vh;min-height:100dvh}.skip-link{position:fixed;left:.75rem;top:-2.5rem;z-index:2000;padding:.35rem .6rem;border-radius:.4rem;background-color:var(--bs-primary);color:var(--bs-white);text-decoration:none;transition:top .2s ease}.skip-link:focus{top:.75rem}.sidebar{width:var(--sidebar-width);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden;transition:width .3s cubic-bezier(.4,0,.2,1);z-index:100;background-color:var(--bs-tertiary-bg);border-right:1px solid var(--bs-border-color)}.sidebar .nav{min-height:0;overflow-y:auto;padding-bottom:.5rem}.sidebar .nav::-webkit-scrollbar{width:5px}.sidebar .nav::-webkit-scrollbar-thumb{border-radius:999px;background-color:rgba(var(--bs-secondary-rgb),.36)}.sidebar .nav-link{color:var(--bs-secondary-color);padding:.75rem 1rem;margin:.25rem .75rem;border-radius:.5rem;font-size:.95rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:.75rem}.sidebar .nav-link:hover,.sidebar .nav-link.active{color:var(--bs-emphasis-color);background-color:var(--bs-secondary-bg)}.sidebar .nav-link svg{opacity:.95}.sidebar-chat-group{margin-top:.6rem;padding:.45rem .75rem .2rem;border-top:1px solid rgba(var(--bs-border-color-rgb),.7)}.sidebar-chat-group-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.45rem}.sidebar-chat-group-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bs-secondary-color)}.sidebar-chat-new-btn{border:1px solid rgba(var(--bs-border-color-rgb),.9);border-radius:.45rem;min-height:2rem;padding:.3rem .62rem;font-size:.78rem;line-height:1.2;background-color:var(--bs-body-bg);color:var(--bs-emphasis-color)}.sidebar-chat-new-btn:hover:not(:disabled),.sidebar-chat-new-btn:focus-visible:not(:disabled){border-color:rgba(var(--bs-primary-rgb),.6);background-color:rgba(var(--bs-primary-rgb),.08)}.sidebar-chat-new-btn:disabled{opacity:.55}.sidebar-chat-list{display:flex;flex-direction:column;gap:.24rem}.sidebar-chat-item{width:100%;min-width:0;border:1px solid transparent;border-radius:.52rem;padding:.4rem .52rem;text-align:left;background-color:transparent;color:var(--bs-secondary-color);display:flex;flex-direction:column;gap:.2rem}.sidebar-chat-item:hover,.sidebar-chat-item:focus-visible{border-color:rgba(var(--bs-primary-rgb),.32);background-color:rgba(var(--bs-primary-rgb),.08);color:var(--bs-emphasis-color)}.sidebar-chat-item.active{border-color:rgba(var(--bs-primary-rgb),.42);background-color:rgba(var(--bs-primary-rgb),.14);color:var(--bs-emphasis-color)}.sidebar-chat-item-title{display:block;font-size:.82rem;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-chat-item-preview{font-size:.72rem;line-height:1.25;color:var(--bs-secondary-color);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sidebar-chat-state{border:1px dashed rgba(var(--bs-border-color-rgb),.9);border-radius:.5rem;padding:.46rem .52rem;font-size:.74rem;line-height:1.3;color:var(--bs-secondary-color);background-color:rgba(var(--bs-body-bg-rgb),.68)}.sidebar-chat-state--error{border-color:rgba(var(--bs-danger-rgb),.5);color:var(--bs-danger-text-emphasis);background-color:rgba(var(--bs-danger-rgb),.08)}.nav-tabs{--bs-nav-link-color: var(--bs-secondary-color);--bs-nav-link-hover-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color)}.nav-tabs .nav-link{color:var(--bs-secondary-color)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus,.nav-tabs .nav-link.active{color:var(--bs-emphasis-color)}.sidebar-brand{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;padding:1.5rem 1.5rem 1rem;display:flex;align-items:center;gap:.75rem;color:var(--bs-emphasis-color)}.brand-icon{font-size:1.5rem;line-height:1}.topbar{height:64px;background-color:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:90}.topbar-icon-btn{width:2.125rem;height:2.125rem;border-radius:.5rem}.topbar-action-btn{height:2.125rem;border-radius:.5rem}.main-content{background-color:var(--bs-body-bg);min-height:100vh}.dashboard-main{padding:1.5rem}.section-header{margin-bottom:1.25rem}.section-header h4{letter-spacing:-.01em}.page-header{margin-bottom:1rem}.page-header p{color:var(--bs-secondary-color)}.chat-page-layout{display:flex;flex-direction:row;height:100%;width:100%;overflow:hidden}.chat-container{display:flex;flex-direction:column;flex:1;min-width:0;height:100%;background:radial-gradient(1200px 420px at 50% -260px,rgba(var(--bs-primary-rgb),.08),transparent 70%),var(--bs-body-bg)}.chat-window{flex:1;overflow-y:auto;padding:1.1rem 1rem .65rem;scroll-behavior:smooth;background:linear-gradient(to bottom,rgba(var(--bs-body-bg-rgb),.95),rgba(var(--bs-body-bg-rgb),1)),var(--bs-body-bg)}.chat-window::-webkit-scrollbar{width:6px}.chat-window::-webkit-scrollbar-thumb{border-radius:999px;background-color:rgba(var(--bs-secondary-rgb),.4)}.chat-content-shell{width:min(980px,100%);margin:0 auto}.chat-empty-state{margin-bottom:1rem;border:1px solid rgba(var(--bs-primary-rgb),.18);border-radius:1rem;padding:1rem;background:linear-gradient(145deg,rgba(var(--bs-primary-rgb),.08),rgba(var(--bs-primary-rgb),.03))}.chat-empty-state-icon{width:2.4rem;height:2.4rem;border-radius:.75rem;display:inline-flex;align-items:center;justify-content:center;margin-bottom:.7rem;background-color:rgba(var(--bs-primary-rgb),.14);color:var(--bs-primary)}.chat-empty-state-title{margin:0;font-size:1.05rem;letter-spacing:-.01em;color:var(--bs-emphasis-color)}.chat-empty-state-text{margin:.35rem 0 .9rem;max-width:62ch;font-size:.9rem;color:var(--bs-secondary-color)}.chat-starter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.chat-starter-card{width:100%;border:1px solid rgba(var(--bs-primary-rgb),.2);border-radius:.8rem;background-color:rgba(var(--bs-body-bg-rgb),.8);text-align:left;padding:.6rem .65rem;display:flex;flex-direction:column;gap:.3rem;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.chat-starter-card:hover,.chat-starter-card:focus-visible{transform:translateY(-1px);border-color:rgba(var(--bs-primary-rgb),.45);background-color:rgba(var(--bs-primary-rgb),.07)}.chat-starter-title{font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--bs-primary-text-emphasis)}.chat-starter-text{font-size:.78rem;line-height:1.4;color:var(--bs-secondary-color)}.message-row{display:flex;width:100%}.message-row--assistant{justify-content:flex-start}.message-row--user{justify-content:flex-end}.message-bubble{max-width:min(760px,86%);padding:.95rem 1.15rem;border-radius:1.15rem;margin-bottom:.85rem;font-size:.95rem;line-height:1.58;overflow-wrap:anywhere;overflow:hidden;position:relative;border:1px solid transparent;box-shadow:0 6px 18px #0f172a0a;animation:message-pop .3s cubic-bezier(.34,1.56,.64,1)}.message-bubble.user{white-space:pre-wrap;color:var(--bs-emphasis-color);background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.2),rgba(var(--bs-primary-rgb),.12));border-color:rgba(var(--bs-primary-rgb),.28);margin-left:auto;border-bottom-right-radius:.35rem}.message-bubble.assistant{color:var(--bs-body-color);background-color:rgba(var(--bs-body-bg-rgb),.96);border:1px solid rgba(var(--bs-border-color-rgb),.85);margin-right:auto;border-bottom-left-radius:.35rem;box-shadow:0 8px 24px #0f172a0d}.message-bubble.assistant .assistant-message-body p{margin-bottom:.5rem}.message-bubble.assistant .assistant-message-body p,.message-bubble.assistant .assistant-message-body ul,.message-bubble.assistant .assistant-message-body ol,.message-bubble.assistant .assistant-message-body blockquote{max-width:68ch}.message-bubble.assistant .assistant-message-body p:last-child{margin-bottom:0}.message-bubble.assistant code{font-family:var(--font-mono);font-size:.85rem;padding:.15rem .35rem;border-radius:.25rem;background-color:var(--bs-secondary-bg)}.message-bubble.assistant pre{padding:.75rem;border-radius:.5rem;margin:.5rem 0;font-family:var(--font-mono);font-size:.85rem;background-color:var(--bs-secondary-bg);overflow-x:auto;max-width:100%}.message-bubble.assistant pre code{padding:0;background:none}.message-bubble.assistant ul,.message-bubble.assistant ol{padding-left:1.5rem;margin-bottom:.5rem}.message-bubble.assistant table{width:100%;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:.5rem 0;font-size:.9rem}.message-bubble.assistant table th,.message-bubble.assistant table td{border:1px solid var(--bs-border-color);padding:.35rem .5rem;white-space:nowrap}.message-bubble.assistant table th{background-color:var(--bs-secondary-bg)}.message-bubble.assistant blockquote{border-left:3px solid var(--bs-border-color);padding-left:.75rem;margin:.5rem 0;color:var(--bs-secondary-color)}.message-bubble pre{padding:.75rem;border-radius:.5rem;margin-top:.5rem;font-family:var(--font-mono);font-size:.85rem}.assistant-message-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem}.assistant-tier-chip{--bs-badge-padding-y: .34em;--bs-badge-padding-x: .58em;--bs-badge-font-size: .65rem;letter-spacing:.04em;text-transform:uppercase}.assistant-model-label{font-size:.74rem;line-height:1.3;color:var(--bs-secondary-color)}.message-bubble--pending{border-style:dashed;border-color:rgba(var(--bs-primary-rgb),.52)}.message-bubble--failed{border-color:rgba(var(--bs-danger-rgb),.5);background:rgba(var(--bs-danger-rgb),.1)!important}.message-bubble-status{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.78rem;line-height:1.2}.message-retry-btn{font-size:.78rem;line-height:1.2}.user-command-token{display:inline-block;padding:.08rem .45rem;margin-right:.2rem;border-radius:.45rem;background-color:rgba(var(--bs-primary-rgb),.2);font-family:var(--font-mono);font-size:.86rem;font-weight:600}.user-command-args{white-space:pre-wrap}@keyframes message-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-input-area{padding:.8rem 1rem max(1rem,env(safe-area-inset-bottom));border-top:1px solid rgba(var(--bs-border-color-rgb),.85);background:linear-gradient(to top,rgba(var(--bs-body-bg-rgb),1),rgba(var(--bs-body-bg-rgb),.92));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chat-input-form{width:min(980px,100%);margin:0 auto}.chat-input-shell{width:100%;padding:.5rem;border:1px solid rgba(var(--bs-border-color-rgb),.85);border-radius:1.2rem;background-color:rgba(var(--bs-body-bg-rgb),.95);position:relative;box-shadow:0 10px 24px #0f172a0f,0 1px #ffffff8c inset;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.chat-input-shell textarea.form-control{border-radius:.95rem;padding:.82rem .95rem;border:none;transition:all .2s ease;background-color:transparent}.chat-input-shell textarea.form-control::placeholder{opacity:.68;font-size:.95rem}.chat-input-shell--focused{border-color:var(--bs-primary);box-shadow:0 0 0 .22rem rgba(var(--bs-primary-rgb),.16),0 12px 26px #0f172a17}.chat-drop-target-active{border-color:var(--bs-primary);box-shadow:0 0 0 .24rem rgba(var(--bs-primary-rgb),.22),0 12px 28px #0f172a1c;background-color:rgba(var(--bs-primary-rgb),.03)}.chat-input-actions{display:flex;align-items:center;justify-content:space-between;padding:.38rem .25rem .1rem;border-top:1px solid rgba(var(--bs-border-color-rgb),.45)}.chat-inline-actions{display:flex;align-items:center;gap:.25rem}.chat-inline-icon-btn{width:2.75rem;height:2.75rem;border-radius:.65rem;border:1px solid transparent;background-color:rgba(var(--bs-secondary-rgb),.08);color:rgba(var(--bs-emphasis-color-rgb),.65);flex-shrink:0}.chat-inline-icon-btn:hover,.chat-inline-icon-btn:focus{background-color:rgba(var(--bs-primary-rgb),.12);border-color:rgba(var(--bs-primary-rgb),.22);color:var(--bs-emphasis-color)}.chat-textarea{resize:none;max-height:200px;overflow-y:auto;min-height:46px;transition:height .1s ease}.chat-send-btn{width:42px;height:42px;flex-shrink:0;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}.chat-send-btn.btn-primary{border:none;background:linear-gradient(140deg,var(--bs-primary),rgba(var(--bs-primary-rgb),.75));box-shadow:0 8px 16px rgba(var(--bs-primary-rgb),.35)}.chat-send-btn:not(:disabled):hover{transform:scale(1.05);box-shadow:0 10px 18px rgba(var(--bs-primary-rgb),.4)}.chat-send-btn:disabled{opacity:.4}.chat-command-menu{position:absolute;left:.75rem;right:.75rem;bottom:calc(100% + .4rem);background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.85rem;box-shadow:0 16px 36px #0f172a24;padding:.25rem;max-height:240px;overflow-y:auto;z-index:20;animation:command-menu-in .15s ease}.chat-command-item{width:100%;border:none;border-radius:.55rem;background:transparent;color:var(--bs-body-color);display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:.45rem .6rem;position:relative}.chat-command-item:hover,.chat-command-item.active{background-color:rgba(var(--bs-primary-rgb),.08)}.chat-command-item:hover:before,.chat-command-item.active:before{content:"";position:absolute;left:.1rem;top:.28rem;bottom:.28rem;width:3px;border-radius:999px;background-color:rgba(var(--bs-primary-rgb),.8)}.chat-command-name{font-family:var(--font-mono);font-size:.84rem;font-weight:600;color:var(--bs-primary)}.chat-command-desc{font-size:.78rem;color:var(--bs-secondary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-input-hint{width:100%;margin:.4rem auto 0;padding-left:0;font-size:.78rem;transition:opacity .3s ease,max-height .3s ease;max-height:2rem;overflow:hidden}.chat-input-shortcut{display:inline-block;padding:.05rem .33rem;margin-right:.2rem;border-radius:.35rem;border:1px solid rgba(var(--bs-border-color-rgb),.8);background-color:rgba(var(--bs-secondary-rgb),.08);color:var(--bs-emphasis-color);font-family:var(--font-mono);font-size:.72rem;line-height:1.1}.chat-input-separator{margin:0 .35rem;color:rgba(var(--bs-secondary-rgb),.95)}.chat-input-hint--hidden{opacity:0;max-height:0;margin:0;padding:0}.chat-attachments-row{display:flex;flex-wrap:wrap;gap:.5rem;padding:.25rem .25rem 0}.chat-attachment-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .4rem;border:1px solid var(--bs-border-color);border-radius:.6rem;background-color:var(--bs-tertiary-bg);max-width:220px}.chat-attachment-thumb{width:42px;height:42px;object-fit:cover;border-radius:.45rem;border:1px solid var(--bs-border-color)}.chat-attachment-name{font-size:.78rem;color:var(--bs-body-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-attachment-remove{border:none;background:transparent;color:var(--bs-secondary-color);padding:0;line-height:1}.chat-attachment-remove:hover{color:var(--bs-danger)}.chat-toolbar{padding:.72rem 1rem;background:linear-gradient(to bottom,rgba(var(--bs-tertiary-bg-rgb),.92),rgba(var(--bs-tertiary-bg-rgb),.72));border-bottom:1px solid rgba(var(--bs-border-color-rgb),.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chat-toolbar-inner{width:min(980px,100%);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.chat-toolbar-main{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex:1;min-width:0}.chat-toolbar-title-group{min-width:0}.chat-toolbar-title{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:.94rem;font-weight:700;letter-spacing:-.01em;color:var(--bs-emphasis-color)}.chat-toolbar-title svg{color:rgba(var(--bs-primary-rgb),.9)}.chat-toolbar-subtitle{display:block;margin-top:.1rem;font-size:.74rem;color:var(--bs-secondary-color)}.chat-toolbar-status{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .5rem;border-radius:.6rem;background-color:rgba(var(--bs-body-bg-rgb),.58);border:1px solid rgba(var(--bs-border-color-rgb),.6)}.chat-toolbar-actions{display:inline-flex;align-items:center;gap:.5rem}.chat-toolbar-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem}.chat-history-load-btn{border-radius:999px;padding-inline:.75rem}.chat-history-load-btn:not(:disabled):hover,.chat-history-load-btn:not(:disabled):focus-visible{filter:brightness(.95)}.chat-history-state{display:flex;align-items:center;justify-content:center;gap:.5rem;border:1px dashed var(--bs-border-color);border-radius:.75rem;padding:.6rem .75rem;margin-bottom:.75rem;background-color:var(--bs-tertiary-bg)}.panel-toggle-btn{min-width:7.5rem}@keyframes command-menu-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.context-panel{width:320px;min-width:320px;height:100%;overflow-y:auto;border-left:1px solid var(--bs-border-color);background:linear-gradient(180deg,rgba(var(--bs-tertiary-bg-rgb),.96),rgba(var(--bs-tertiary-bg-rgb),.84));padding:1rem;transition:width .3s ease,min-width .3s ease,opacity .3s ease}.context-panel::-webkit-scrollbar{width:4px}.context-panel-header{margin-bottom:.85rem}.context-panel-title{font-size:.95rem;font-weight:700;letter-spacing:-.01em;color:var(--bs-emphasis-color)}.context-section{padding:.75rem;margin-bottom:.65rem;border:1px solid rgba(var(--bs-border-color-rgb),.72);border-radius:.72rem;background-color:rgba(var(--bs-body-bg-rgb),.68)}.section-label{font-size:.73rem;font-weight:600;letter-spacing:.09em;color:var(--bs-secondary-color);text-transform:uppercase;margin-bottom:.5rem}.section-value{font-size:.92rem;color:var(--bs-emphasis-color)}.font-mono{font-family:var(--font-mono);font-size:.85rem}.token-grid{display:grid;grid-template-columns:auto 1fr;gap:.15rem .75rem;font-size:.85rem}.context-meter{height:8px;border-radius:4px}.goal-item{margin-bottom:.75rem}.goal-item:last-child{margin-bottom:0}.goal-title{font-size:.85rem;color:var(--bs-emphasis-color)}.task-list{list-style:none;padding-left:0;margin-top:.35rem;margin-bottom:0}.task-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;padding:.15rem 0}.task-status-icon{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.task-status-icon.pending{border:1.5px solid var(--bs-secondary-color)}.task-status-icon.in_progress{border:1.5px solid var(--bs-primary);border-top-color:transparent;animation:spin 1s linear infinite}.task-status-icon.completed{background-color:var(--bs-success)}.task-status-icon.failed{background-color:var(--bs-danger)}.task-status-icon.skipped{background-color:var(--bs-secondary-color)}@keyframes spin{to{transform:rotate(360deg)}}.tool-call-card{border:1px solid rgba(var(--bs-border-color-rgb),.8);border-radius:.65rem;margin-bottom:.5rem;overflow:hidden;background-color:rgba(var(--bs-secondary-rgb),.04)}.tool-call-header{display:flex;align-items:center;gap:.5rem;width:100%;border:none;padding:.46rem .75rem;background-color:rgba(var(--bs-secondary-rgb),.1);cursor:pointer;text-align:left;color:var(--bs-body-color);font:inherit;font-size:.8rem;font-weight:500}.tool-call-header:hover{background-color:rgba(var(--bs-secondary-rgb),.18)}.tool-call-icon{font-size:.65rem;color:var(--bs-secondary-color)}.tool-call-name{font-family:var(--font-mono);color:var(--bs-emphasis-color)}.tool-call-body{padding:.5rem .75rem;border-top:1px solid var(--bs-border-color)}.tool-call-body pre{margin:0;font-size:.8rem;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.settings-card{border-radius:.75rem;transition:box-shadow .2s ease}.settings-card:hover{box-shadow:var(--bs-box-shadow-sm)}.tools-card{margin-bottom:.9rem!important}.tools-card .card-body{padding:1rem}.settings-card-title,.tools-card-title{display:flex;align-items:center;gap:.3rem;letter-spacing:-.01em;margin-top:0}.settings-catalog-title{display:flex;align-items:center;gap:.5rem;margin-top:0}.tools-note{line-height:1.45}.tools-toggle-row{gap:.35rem}.tools-toggle-row .form-check{margin-top:.1rem;flex-shrink:0}.tools-row-desc{line-height:1.35}.tools-browser-status{min-height:2.25rem}.tools-savebar{border-top:1px solid var(--bs-border-color);padding-top:.75rem}.settings-savebar{border-top:1px solid var(--bs-border-color);margin-top:.75rem;padding-top:.75rem}.memory-preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.55rem}.memory-preset-option{width:100%;border:1px solid var(--bs-border-color);border-radius:.65rem;background-color:var(--bs-body-bg);text-align:left;padding:.55rem .65rem;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.memory-preset-option:hover{border-color:rgba(var(--bs-primary-rgb),.45);background-color:var(--bs-tertiary-bg)}.memory-preset-option:focus-visible{outline:2px solid rgba(var(--bs-primary-rgb),.5);outline-offset:2px}.memory-preset-option.is-selected{border-color:rgba(var(--bs-primary-rgb),.75);background-color:var(--bs-primary-bg-subtle);box-shadow:0 0 0 1px rgba(var(--bs-primary-rgb),.3) inset}.memory-preset-option-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.memory-preset-option-title{font-size:.83rem;font-weight:700;color:var(--bs-emphasis-color)}.memory-preset-option-id{font-family:var(--font-mono);font-size:.69rem;line-height:1;color:var(--bs-secondary-color)}.memory-preset-option-comment{display:block;margin-top:.22rem;font-size:.77rem;line-height:1.4;color:var(--bs-secondary-color)}.memory-preset-actions{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.55rem}.updates-card .card-body{display:flex;flex-direction:column}.voice-status-badges{flex-wrap:wrap}.voice-provider-links{margin-top:.25rem}.voice-route-shortcut{width:auto}.voice-inline-actions{max-width:100%}.tier-card{border-radius:.75rem;transition:box-shadow .2s ease}.tier-card:hover{box-shadow:var(--bs-box-shadow-sm)}.stat-card{border-radius:.75rem}.dashboard-table td,.dashboard-table th{vertical-align:middle}.period-toggle-group>.btn{min-width:3.5rem}.meta-text{font-size:.8rem;color:var(--bs-secondary-color)}.code-text{font-family:var(--font-mono);font-size:.85rem}.setting-tip{display:inline-flex;align-items:center;margin-left:.25rem;color:var(--bs-secondary-color);vertical-align:middle;border:0;padding:0;background:transparent;line-height:1}.setting-tip-btn{cursor:help}.setting-tip-btn:hover{color:var(--bs-emphasis-color)}.setting-tip-btn:focus-visible{color:var(--bs-emphasis-color);outline:2px solid var(--bs-primary);outline-offset:2px;border-radius:999px}.setting-tip-btn svg{pointer-events:none}.cursor-pointer{cursor:pointer}.min-w-0{min-width:0}.provider-url-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessions-actions,.providers-actions,.invite-actions,.webhook-actions{justify-content:flex-end}.sessions-modal-body{max-height:60vh;overflow-y:auto}.sessions-message{white-space:pre-wrap}.sessions-message-meta{font-size:.7rem;color:var(--bs-secondary-color)}.webhook-editor-card,.provider-editor-card{background-color:var(--bs-tertiary-bg)}.login-page{min-height:100vh;min-height:100dvh}.login-card{width:min(400px,100%)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 3px rgba(var(--bs-body-bg-rgb),.82)}.status-dot.online{background-color:var(--bs-success);animation:status-pulse 1.9s ease-in-out infinite}.status-dot.offline{background-color:var(--bs-danger)}@keyframes status-pulse{0%,to{box-shadow:0 0 0 3px rgba(var(--bs-body-bg-rgb),.82),0 0 rgba(var(--bs-success-rgb),.45)}60%{box-shadow:0 0 0 3px rgba(var(--bs-body-bg-rgb),.82),0 0 0 5px rgba(var(--bs-success-rgb),0)}}.typing-indicator{display:inline-flex;align-items:center;gap:.45rem;padding:.62rem .9rem;border-radius:.95rem .95rem .95rem .25rem;margin-bottom:.85rem;width:fit-content;background-color:rgba(var(--bs-body-bg-rgb),.94);border:1px solid rgba(var(--bs-border-color-rgb),.78);box-shadow:0 8px 20px #0f172a0d}.typing-label{font-size:.76rem;letter-spacing:.03em;text-transform:uppercase;color:var(--bs-secondary-color)}.typing-dots{display:inline-flex;align-items:center;gap:4px}.typing-dots span{background-color:var(--bs-secondary-color);width:6px;height:6px;border-radius:50%;animation:typing-bounce 1.4s infinite ease-in-out both}.typing-dots span:nth-child(1){animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.fade-in{animation:fade-in-up .2s ease}@keyframes fade-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sidebar-overlay{display:none;border:none;padding:0}.sidebar-close-btn{display:none;background:transparent;border:none;padding:.25rem;color:var(--bs-secondary-color);cursor:pointer}.sidebar-close-btn:hover{color:var(--bs-emphasis-color)}@media(max-width:991.98px){.context-panel{display:none}}.context-panel-offcanvas{width:320px;max-width:85vw}.context-panel-offcanvas .context-panel{display:block!important;width:100%;min-width:0;border-left:none;height:auto}@media(max-width:767.98px){.topbar-icon-btn,.topbar-action-btn{width:2.75rem;height:2.75rem}.dashboard-main{padding:.75rem}.section-label{font-size:.75rem}.chat-input-hint,.chat-command-desc{font-size:.82rem}.sidebar-footer-text{display:none}.section-header{margin-bottom:1rem}.sidebar{position:fixed;left:0;top:0;height:100vh;height:100dvh;width:var(--sidebar-width);transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1050}.sidebar.mobile-open{transform:translate(0)}.sidebar .sidebar-link-text,.sidebar .sidebar-brand-text,.sidebar .sidebar-footer-text{display:block}.sidebar .sidebar-brand{padding:1rem 1.25rem}.sidebar .nav-link{padding:.75rem 1rem;justify-content:flex-start}.sidebar-close-btn{display:flex;align-items:center;justify-content:center}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;z-index:1040;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.message-bubble{max-width:94%}.chat-window{padding:.75rem .75rem .25rem}.chat-input-area{padding:.5rem .75rem max(.85rem,env(safe-area-inset-bottom))}.chat-input-shell{gap:.5rem!important;padding:.4rem}.chat-toolbar-inner{align-items:flex-start;flex-direction:column}.chat-toolbar-main{width:100%}.chat-toolbar-subtitle{display:none}.chat-toolbar-actions{width:100%;justify-content:flex-end}.chat-toolbar-btn span{display:none}.panel-toggle-btn{min-width:2.25rem}.chat-empty-state{padding:.85rem}.chat-starter-grid{grid-template-columns:1fr}.chat-inline-icon-btn{width:2.75rem;height:2.75rem}.chat-send-btn{width:44px;height:44px}.chat-input-hint{padding-left:0;line-height:1.45}.chat-attachments-row{gap:.3rem}.chat-attachment-chip{max-width:100%}.responsive-table thead{display:none}.responsive-table,.responsive-table tbody,.responsive-table tr{display:block;width:100%}.responsive-table tr{border:1px solid var(--bs-border-color);border-radius:.75rem;padding:.45rem .6rem;margin-bottom:.6rem;background-color:var(--bs-body-bg)}.responsive-table tr:last-child{margin-bottom:0}.responsive-table td[data-label]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;border:none;padding:.35rem .1rem;text-align:right}.responsive-table td[data-label]:before{content:attr(data-label);color:var(--bs-secondary-color);font-weight:600;text-align:left;flex-shrink:0}.responsive-table td[data-label=Actions]{display:block;text-align:left;padding-top:.55rem}.responsive-table td[data-label=Actions]:before{display:block;margin-bottom:.35rem}.responsive-table .sessions-empty-cell{display:block;border:none;text-align:center!important;padding:.6rem .1rem}.sessions-actions,.providers-actions,.invite-actions,.webhook-actions{justify-content:flex-start}.diagnostics-table td[data-label=Value]{text-align:left}.diagnostics-table td[data-label=Value]:before{margin-right:.5rem}.provider-url-cell{max-width:none;white-space:normal;overflow-wrap:anywhere}.tools-card .card-body{padding:.85rem}.tools-card-title{font-size:.95rem}.tools-toggle-row{padding-top:.55rem!important;padding-bottom:.55rem!important}.tools-toggle-row .form-check{margin-right:.65rem!important}.tools-tab .form-label.small.fw-medium{font-size:.8rem}.tools-tab .meta-text{font-size:.78rem}.tools-savebar{position:sticky;bottom:0;z-index:5;background-color:var(--bs-body-bg);margin-top:.2rem;padding:.6rem 0 max(.6rem,env(safe-area-inset-bottom))}.settings-savebar{position:sticky;bottom:0;z-index:4;background-color:var(--bs-body-bg);margin-top:.2rem;padding:.6rem 0 max(.6rem,env(safe-area-inset-bottom))}}@media(max-width:575.98px){.dashboard-main{padding:.5rem}.page-header h4,.section-header h4{font-size:1.15rem}.stat-card h3{font-size:1.25rem}.stat-card h5{font-size:1rem}.settings-card .card-body,.tier-card .card-body{padding:.75rem}.sessions-action-btn,.provider-action-btn,.invite-action-btn,.webhook-action-btn{padding:.2rem .4rem;font-size:.78rem}.tools-savebar{flex-wrap:wrap}.tools-savebar .btn{min-height:2.25rem}.settings-savebar{flex-wrap:wrap}.settings-savebar .btn{min-height:2.25rem}.memory-preset-actions{flex-direction:column;align-items:stretch}.memory-preset-actions .btn{width:100%}.updates-step .d-flex{flex-wrap:wrap}.updates-step .form-control,.updates-history-table td[data-label=Message]{min-width:0}.voice-inline-actions,.voice-inline-actions .btn,.voice-route-shortcut{width:100%}}@media(prefers-reduced-motion:reduce){.chat-window{scroll-behavior:auto}.message-bubble,.typing-indicator span,.task-status-icon.in_progress,.settings-card,.tier-card,.sidebar .nav-link{animation:none!important;transition:none!important}}.plan-control-section .btn{--bs-btn-padding-y: .2rem;--bs-btn-padding-x: .55rem;--bs-btn-font-size: .75rem}.plan-control-list{display:flex;flex-direction:column;gap:.5rem}.plan-control-item{border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.55rem;background-color:var(--bs-body-bg)}.plan-control-item--active{border-color:rgba(var(--bs-primary-rgb),.55);box-shadow:0 0 0 1px rgba(var(--bs-primary-rgb),.2) inset}.plan-control-title{font-size:.82rem;font-weight:600;color:var(--bs-emphasis-color)}.logs-header{padding-top:.45rem;padding-bottom:.45rem}.logs-toolbar{margin-bottom:1rem}.logs-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.logs-toolbar-meta{display:flex;flex-wrap:wrap;gap:.8rem}.logs-viewport{height:min(62vh,700px);overflow:auto;overscroll-behavior:contain;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;border-top:1px solid var(--bs-border-color);outline:none}.logs-viewport:focus-visible{box-shadow:inset 0 0 0 2px rgba(var(--bs-primary-rgb),.5)}.logs-row{width:100%;border:0;border-bottom:1px solid rgba(var(--bs-secondary-rgb),.2);background:transparent;color:inherit;text-align:left;display:grid;grid-template-columns:195px 68px minmax(180px,34%) 1fr;gap:.6rem;align-items:center;padding:0 .75rem;height:28px;cursor:pointer;-webkit-user-select:none;user-select:none}.logs-row:hover{background-color:rgba(var(--bs-primary-rgb),.08)}.logs-row.selected{background-color:rgba(var(--bs-primary-rgb),.16)}.logs-cell{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logs-cell-time{color:var(--bs-secondary-color)}.logs-cell-level{font-weight:700;letter-spacing:.02em}.logs-cell-logger{color:var(--bs-body-color);opacity:.8}.logs-cell-message{color:var(--bs-emphasis-color)}.logs-empty{min-height:180px;display:flex;align-items:center;justify-content:center;font-size:.92rem}.logs-details{max-height:36vh;overflow:auto}.logs-detail-meta{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.logs-detail-pre{margin:0;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.65rem;background-color:rgba(var(--bs-secondary-rgb),.08);white-space:pre-wrap;word-break:break-word;font-size:.8rem;line-height:1.35}@media(max-width:991.98px){.logs-toolbar-actions{width:100%;justify-content:stretch}.logs-toolbar-actions .btn-group{flex:1 1 260px}.logs-toolbar-actions .btn{flex:1 1 auto}.logs-row{grid-template-columns:170px 60px 160px 1fr;gap:.5rem;padding:0 .55rem}.logs-cell{font-size:.74rem}}@media(max-width:767.98px){.logs-toolbar-meta{font-size:.75rem;gap:.5rem}.logs-viewport{height:min(56vh,560px)}.logs-row{grid-template-columns:142px 52px 1fr}.logs-cell-logger{display:none}.logs-details{max-height:42vh}}.ide-page{width:100%;padding:1rem}.ide-layout{gap:0;min-height:0}.ide-sidebar-card{width:var(--ide-sidebar-width, 320px);min-width:240px;max-width:520px;border-top-right-radius:0;border-bottom-right-radius:0}.ide-editor-card{flex:1;min-width:0;border-top-left-radius:0;border-bottom-left-radius:0}.ide-sidebar-resizer{width:8px;cursor:col-resize;background:transparent;border-top:1px solid var(--bs-border-color);border-bottom:1px solid var(--bs-border-color)}.ide-sidebar-resizer:hover{background:rgba(var(--bs-primary-rgb),.15)}.ide-toolbar{row-gap:.4rem}.ide-search-group{min-width:220px}.ide-tree-panel{width:100%;min-height:0;position:relative}.ide-tree-node{display:flex;align-items:center;gap:.35rem;height:100%;padding:0 .35rem;border-radius:.35rem;color:var(--bs-body-color)}.ide-tree-node.selected{background:rgba(var(--bs-primary-rgb),.2);color:var(--bs-emphasis-color)}.ide-tree-chevron{width:12px;color:var(--bs-secondary-color)}.ide-tree-icon{color:var(--bs-secondary-color)}.ide-tree-name{flex:1;min-width:0;font-size:.9rem}.ide-tree-dirty-dot{width:8px;height:8px;border-radius:999px;background:var(--bs-warning)}.ide-tree-context-menu{position:fixed;z-index:2000;min-width:160px;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);box-shadow:0 .4rem 1rem #00000029;border-radius:.4rem;padding:.35rem}.ide-tree-context-item{width:100%;border:none;background:transparent;color:var(--bs-body-color);text-align:left;font-size:.87rem;border-radius:.3rem;padding:.38rem .5rem}.ide-tree-context-item:hover{background:rgba(var(--bs-primary-rgb),.12)}.ide-tree-context-item.danger{color:var(--bs-danger-text-emphasis)}.ide-tree-context-item.danger:hover{background:rgba(var(--bs-danger-rgb),.12)}.ide-tabs{display:flex;align-items:center;gap:.25rem;padding:.35rem;border-bottom:1px solid var(--bs-border-color);overflow-x:auto}.ide-tab{display:inline-flex;align-items:center;border:1px solid var(--bs-border-color);background:var(--bs-body-bg);color:var(--bs-body-color);border-radius:.5rem;padding:0;white-space:nowrap}.ide-tab-main{display:inline-flex;align-items:center;gap:.4rem;border:none;background:transparent;color:inherit;padding:.2rem .35rem .2rem .6rem}.ide-tab-main:focus-visible,.ide-tab-close:focus-visible{outline:2px solid var(--bs-primary);outline-offset:1px;border-radius:.35rem}.ide-tab.active{border-color:rgba(var(--bs-primary-rgb),.65);background:rgba(var(--bs-primary-rgb),.12)}.ide-tab-title{font-size:.85rem}.ide-tab-dirty{font-size:.6rem;line-height:1}.ide-tab-close{--bs-btn-padding-y: 0;--bs-btn-padding-x: .35rem;color:var(--bs-secondary-color)}.ide-tab-close:hover{color:var(--bs-emphasis-color)}.ide-statusbar{background:var(--bs-tertiary-bg);min-height:34px}.ide-editor,.ide-editor .cm-editor{height:100%}.ide-editor .cm-scroller{font-family:var(--font-mono);font-size:.88rem}.ide-editor .cm-minimap{border-left:1px solid var(--bs-border-color);opacity:.85}.ide-quick-open-list{max-height:360px;overflow-y:auto}.ide-quick-open-pin{line-height:1}.ide-quick-open-pin:hover{text-decoration:none}@media(max-width:991.98px){.ide-layout{flex-direction:column;gap:.75rem}.ide-sidebar-card{width:100%;max-width:none;min-width:0;height:240px;border-radius:var(--bs-card-border-radius)}.ide-editor-card{border-radius:var(--bs-card-border-radius)}.ide-sidebar-resizer{display:none}}
