.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-muted);border-radius:var(--radius-md);background-color:var(--surface-raised);color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--text-primary);border-color:var(--border-color);background-color:var(--bg-secondary)}.modern-layout-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family)}.skip-to-content{position:absolute;top:-100px;left:1rem;background:var(--accent-primary);color:#fff;padding:.5rem 1rem;z-index:1000;border-radius:4px;font-weight:600;text-decoration:none;transition:top .2s ease-in-out}.modern-header{position:sticky;top:0;z-index:100;background:var(--overlay-chrome);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-muted)}.modern-nav-wrapper{max-width:var(--container-max-width);margin:0 auto;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;position:relative}.modern-brand-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.brand-initials{font-family:var(--font-mono);font-size:.95rem;font-weight:700;letter-spacing:-.02em;color:var(--accent-primary)}.brand-divider{color:var(--text-muted);font-weight:300}.brand-title{letter-spacing:-.01em}.modern-nav-list{display:flex;align-items:center;gap:.5rem;list-style:none;margin:0;padding:0}.modern-nav-item{position:relative}.modern-nav-link{display:inline-flex;align-items:center;padding:.5rem .85rem;color:var(--text-muted);text-decoration:none;font-size:.9rem;font-weight:500;border-radius:8px;transition:all .15s ease-in-out}.modern-nav-link:hover{color:var(--text-primary);background-color:var(--overlay-soft)}.modern-nav-link.active{color:var(--accent-primary);background-color:var(--overlay-soft)}.modern-nav-dropdown-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .85rem;color:var(--text-muted);background:transparent;border:none;font-family:inherit;font-size:.9rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s ease-in-out}.modern-nav-dropdown-toggle:hover{color:var(--text-primary);background-color:var(--overlay-soft)}.modern-nav-dropdown-toggle.active{color:var(--accent-primary);background-color:var(--overlay-soft)}.dropdown-caret{font-size:.75rem;transition:transform .2s ease;line-height:1}.modern-dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;min-width:200px;background:var(--overlay-menu);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-muted);border-radius:var(--radius-md);padding:.5rem;list-style:none;margin:0;box-shadow:var(--shadow-pop);display:none;flex-direction:column;gap:.25rem;z-index:1000}.modern-dropdown-menu.show{display:flex;animation:modernDropdownFadeIn .15s ease-out}@keyframes modernDropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.modern-dropdown-item{display:block;padding:.5rem .75rem;color:var(--text-muted);text-decoration:none;font-size:.85rem;font-weight:500;border-radius:6px;transition:all .15s ease}.modern-dropdown-item:hover{color:var(--text-primary);background:var(--overlay-soft)}.modern-dropdown-item.active{color:var(--accent-primary);background:var(--overlay-soft);font-weight:600}.modern-nav-controls{display:flex;align-items:center;gap:.75rem}.modern-mobile-menu-toggle{display:none;background:transparent;border:1px solid var(--border-muted);color:var(--text-primary);font-size:1.1rem;padding:.4rem .6rem;border-radius:6px;cursor:pointer;align-items:center;justify-content:center;min-height:36px;min-width:36px}.modern-main{flex:1}.modern-content-wrapper{max-width:var(--container-max-width);margin:0 auto;padding:2.5rem 1.5rem 4rem}.modern-footer{padding:2.5rem 1.5rem 2rem;margin-top:auto;border-top:1px solid var(--border-muted)}.modern-footer-card{max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;gap:2rem}.modern-footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}.modern-footer-whoami{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border-muted);padding:.2rem .55rem;border-radius:var(--radius-chip)}.modern-footer-brand{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-muted)}.modern-footer-brand .brand-initials{font-family:var(--font-mono);font-size:.95rem;font-weight:700;color:var(--accent-primary)}.modern-footer-brand .brand-divider{color:var(--text-muted);font-weight:300}.modern-footer-brand .brand-name{color:var(--text-primary);font-weight:600}.modern-footer-brand .brand-role{color:var(--text-muted);font-size:.85rem}.modern-footer-copy{font-size:.85rem;color:var(--text-muted);margin:0}.modern-footer-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.modern-footer-col{display:flex;flex-direction:column;gap:.5rem}.modern-footer-heading{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.modern-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.modern-footer-link{font-size:.85rem;color:var(--text-muted);text-decoration:none;transition:color .15s ease}.modern-footer-link:hover{color:var(--accent-primary)}.modern-footer-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;border-top:1px solid var(--border-muted);padding-top:1.25rem}.modern-footer-copy{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);margin:0}.modern-footer-copy-email{display:inline-flex;align-items:center;gap:.4rem;min-height:32px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);background:transparent;border:1px solid var(--border-muted);border-radius:var(--radius-chip);padding:.3rem .75rem;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}.modern-footer-copy-email span{display:inline-block;min-width:21ch;text-align:left}.modern-footer-copy-email:hover,.modern-footer-copy-email:focus-visible{color:var(--text-primary);border-color:var(--text-primary);background:var(--bg-secondary)}.modern-footer-clock{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}@media (max-width: 768px){.modern-nav-wrapper{flex-wrap:wrap;padding:.75rem 1rem;gap:.75rem}.modern-mobile-menu-toggle{display:inline-flex}.modern-nav{order:3;width:100%;display:none;padding:.5rem 0}.modern-nav.open{display:block;animation:modernNavSlideDown .2s ease-out}@keyframes modernNavSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.modern-nav-list{flex-direction:column;align-items:stretch;gap:.35rem}.modern-nav-link,.modern-nav-dropdown-toggle{white-space:nowrap;font-size:.95rem;min-height:44px;padding:.65rem .85rem;display:flex;justify-content:space-between;align-items:center;width:100%}.modern-dropdown-menu{position:static;display:none;box-shadow:none;background-color:var(--overlay-softer);border:none;border-left:2px solid var(--accent-primary);border-radius:0;margin:.25rem 0 .5rem .75rem;padding:.35rem 0 .35rem .5rem;gap:.2rem}.modern-dropdown-menu.show{display:flex}.modern-dropdown-item{font-size:.9rem;min-height:40px;display:flex;align-items:center;padding:.55rem .85rem}.modern-content-wrapper{padding:1.5rem 1rem 3rem}.modern-footer{padding:0 1rem 2rem}.modern-footer-card{gap:1.25rem;padding:1.25rem}.modern-footer-copy-email{min-height:40px}.modern-footer-top{flex-direction:column;align-items:flex-start;gap:.75rem}.modern-footer-brand{flex-wrap:wrap}.modern-footer-nav{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (max-width: 480px){.modern-footer{padding-bottom:5rem}.modern-footer-nav{grid-template-columns:1fr;gap:1rem}}.error-boundary-container{padding:3rem 1.5rem;max-width:600px;margin:4rem auto;text-align:center;font-family:sans-serif;color:#fff;background-color:#121316;border-radius:8px;border:1px solid var(--border-color)}.error-boundary-title{color:#f4ab6a;margin-top:0}.error-boundary-message{color:#8b949e;margin-bottom:1.5rem}.error-boundary-reload-btn{padding:.6rem 1.2rem;background-color:#f4ab6a;color:#121316;border:none;border-radius:4px;font-weight:700;cursor:pointer}.box-container{border:1px solid var(--border-muted);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-card);padding:1.5rem 1.75rem;overflow:hidden}.box-section-heading{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--header-color);letter-spacing:-.01em;margin:0 0 1.1rem;padding:0 0 .7rem;border-bottom:1px solid var(--border-muted)}.ascii-box-content{color:var(--text-primary)}@media (max-width: 640px){.box-container{padding:1.15rem 1.1rem}.box-section-heading{font-size:1.1rem;margin-bottom:.9rem;padding-bottom:.55rem}}.sources-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:sourcesFadeIn var(--transition-fast) ease-out}@keyframes sourcesFadeIn{0%{opacity:0}to{opacity:1}}.sources-modal__dialog{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);width:100%;max-width:820px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;position:relative;animation:sourcesSlideUp var(--transition-base) ease-out}@keyframes sourcesSlideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sources-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.25rem;border-bottom:1px solid var(--border-color);background:var(--surface-sunken)}.sources-modal__title-group{display:flex;align-items:center;gap:.65rem}.sources-modal__title-icon{color:var(--accent-primary)}.sources-modal__title{font-size:var(--text-md);font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.sources-modal__badge{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--text-xs);font-weight:500;padding:.2rem .55rem;border-radius:var(--radius-chip);background:var(--accent-subtle);color:var(--accent-primary);border:1px solid var(--border-muted)}.sources-modal__header-actions{display:flex;align-items:center;gap:.5rem}.sources-modal__btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:var(--text-xs);font-weight:500;color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.sources-modal__btn:hover{background:var(--surface-sunken);border-color:var(--text-muted)}.sources-modal__close-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.sources-modal__close-btn:hover{color:var(--text-primary);background:var(--surface-raised);border-color:var(--border-color)}.sources-modal__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;padding:.85rem 1.25rem;background:var(--surface-sunken);border-bottom:1px solid var(--border-muted)}.sources-modal__stat{display:flex;flex-direction:column;gap:.15rem}.sources-modal__stat-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.sources-modal__stat-value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.sources-modal__controls{padding:.85rem 1.25rem;border-bottom:1px solid var(--border-muted);display:flex;flex-direction:column;gap:.75rem}.sources-modal__search-wrapper{position:relative;display:flex;align-items:center}.sources-modal__search-icon{position:absolute;left:.75rem;color:var(--text-muted);pointer-events:none}.sources-modal__search-input{width:100%;padding:.5rem .75rem .5rem 2.2rem;font-size:var(--text-sm);background:var(--surface-raised);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;transition:border-color var(--transition-fast)}.sources-modal__search-input:focus{border-color:var(--accent-primary)}.sources-modal__categories{display:flex;flex-wrap:wrap;gap:.4rem}.sources-modal__category-pill{padding:.25rem .65rem;font-size:var(--text-xs);font-weight:500;background:var(--surface-sunken);border:1px solid var(--border-muted);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.sources-modal__category-pill:hover{color:var(--text-primary);border-color:var(--border-color)}.sources-modal__category-pill--active{background:var(--accent-subtle);border-color:var(--accent-primary);color:var(--accent-primary);font-weight:600}.sources-modal__content{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.sources-modal__empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:var(--text-sm)}.sources-modal__empty--error{display:flex;flex-direction:column;align-items:center;gap:.35rem;color:var(--text-primary)}.sources-modal__error-detail{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);word-break:break-word}.sources-modal__error-hint{font-size:var(--text-xs);color:var(--text-muted)}.sources-modal__retry-btn{margin-top:.75rem}.sources-modal__retry-btn:disabled{opacity:.6;cursor:default}.source-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-raised);overflow:hidden;flex-shrink:0;transition:border-color var(--transition-fast)}.source-card:hover{border-color:var(--text-muted)}.source-card__header{padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer;background:var(--surface-sunken);-webkit-user-select:none;user-select:none}.source-card__title-row{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;min-width:0}.source-card__category-tag{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:var(--radius-chip);background:var(--surface-raised);border:1px solid var(--border-muted);color:var(--text-muted)}.source-card__title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-card__route-link{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--accent-primary);text-decoration:none;padding:.1rem .35rem;border-radius:var(--radius-chip);background:var(--accent-subtle);display:inline-flex;align-items:center;gap:.2rem}.source-card__route-link:hover{text-decoration:underline}.source-card__meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.source-card__token-badge{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);background:var(--surface-raised);padding:.15rem .4rem;border-radius:var(--radius-chip);border:1px solid var(--border-muted)}.source-card__chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.source-card__chevron--expanded{transform:rotate(180deg)}.source-card__drawer{padding:.85rem 1rem;border-top:1px solid var(--border-muted);background:var(--bg-card);display:flex;flex-direction:column;gap:.65rem}.source-card__drawer-actions{display:flex;justify-content:flex-end;gap:.5rem}.source-card__copy-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:var(--text-xs);background:var(--surface-sunken);border:1px solid var(--border-muted);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.source-card__copy-btn:hover{color:var(--text-primary);border-color:var(--border-color)}.source-card__code-view{font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.5;color:var(--text-primary);background:var(--surface-sunken);border:1px solid var(--border-muted);border-radius:var(--radius-sm);padding:.75rem;max-height:260px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.sources-modal__footer{padding:.75rem 1.25rem;border-top:1px solid var(--border-color);background:var(--surface-sunken);display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs);color:var(--text-muted)}@media (max-width: 640px){.sources-modal__dialog{max-height:92vh}.sources-modal__stats{grid-template-columns:repeat(2,1fr)}.source-card__title{max-width:180px}}.chat-launcher{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000;height:40px;padding:0 1.1rem;border-radius:var(--radius-md);border:1px solid transparent;background-color:var(--text-primary);color:var(--text-inverse);font-weight:600;font-size:.85rem;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:opacity .2s ease,transform .2s ease,background-color var(--transition-fast);box-shadow:0 4px 16px #0000002e}.chat-launcher:hover{background-color:var(--header-color)}.chat-launcher:hover{transform:translateY(-2px)}.chat-launcher--hidden{opacity:0;pointer-events:none;transform:scale(.8)}.chat-launcher__label{font-size:.875rem;font-weight:500;line-height:1}.chat-launcher__label--short{display:none}@media (max-width: 480px){.chat-launcher__label--full{display:none}.chat-launcher__label--short{display:inline}}@media (prefers-reduced-motion: no-preference){.chat-launcher__pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-chip);border:2px solid var(--accent-primary);animation:chat-pulse 2.5s ease-out infinite;pointer-events:none}@keyframes chat-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}}.chat-panel{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1001;width:min(380px,calc(100vw - 2rem));max-height:min(600px,calc(100vh - 3rem));display:flex;flex-direction:column;font-family:var(--font-family);opacity:0;transform:translateY(16px) scale(.98);pointer-events:none;transition:width .25s ease,opacity .22s ease,transform .22s ease}.chat-panel--open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chat-panel--companion{width:min(780px,calc(100vw - 2rem))}.chat-panel .box-container{display:flex;flex-direction:column;max-height:inherit;margin:0}.chat-panel .ascii-box-content{display:flex;flex-direction:column;min-height:0}.chat-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-muted, var(--border-color))}.chat-panel__title-group{display:flex;flex-direction:column;gap:.25rem;min-width:0}.chat-panel__title-text{font-weight:700;color:var(--text-primary);font-size:.95rem}.chat-panel__model-select select{background-color:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border-muted, var(--border-color));border-radius:4px;padding:.15rem .35rem;font-family:var(--font-family);font-size:.75rem;cursor:pointer;max-width:180px}.chat-panel__actions{display:flex;gap:.25rem}.chat-panel__icon-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .15s ease,background-color .15s ease}.chat-panel__icon-btn:hover:not(:disabled){color:var(--accent-primary);background-color:var(--bg-secondary)}.chat-panel__icon-btn:disabled{opacity:.4;cursor:not-allowed}.chat-panel__icon-btn--active{color:var(--accent-primary);background-color:#f4ab6a1f;border:1px solid rgba(244,171,106,.3)}.chat-panel__banner{display:flex;align-items:center;gap:.4rem;padding:.4rem .6rem;margin:.5rem 0;background-color:var(--bg-secondary);border:1px solid var(--border-muted, var(--border-color));border-radius:4px;color:var(--text-muted);font-size:.75rem}.chat-panel__messages{flex:1;overflow-y:auto;padding:.75rem 0;display:flex;flex-direction:column;gap:.6rem;min-height:200px;max-height:400px}.chat-panel__empty{display:flex;flex-direction:column;gap:.75rem;justify-content:center;height:100%}.chat-panel__greeting{color:var(--text-muted);font-size:.85rem;margin:0}.chat-panel__starters{display:flex;flex-direction:column;gap:.4rem}.chat-panel__starter{text-align:left;background:transparent;border:1px solid var(--border-muted, var(--border-color));color:var(--text-primary);padding:.45rem .6rem;border-radius:var(--radius-chip);font-family:var(--font-family);font-size:.8rem;cursor:pointer;transition:border-color .15s ease,color .15s ease}.chat-panel__starter:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary)}.chat-panel__starter:disabled{opacity:.5;cursor:not-allowed}.chat-msg{display:flex;flex-direction:column;gap:.15rem}.chat-msg__role{font-size:.65rem;letter-spacing:.08em;font-weight:700;color:var(--text-muted)}.chat-msg--user .chat-msg__role{color:var(--accent-secondary)}.chat-msg--assistant .chat-msg__role{color:var(--accent-primary)}.chat-msg__content{color:var(--text-primary);font-size:.85rem;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}.chat-msg__cursor{display:inline-block;margin-left:1px;color:var(--accent-primary);animation:chat-blink 1s steps(2,start) infinite}@keyframes chat-blink{to{visibility:hidden}}.chat-msg__thought{margin-bottom:.4rem;border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border-muted);overflow:hidden;transition:all var(--transition-fast)}.chat-msg__thought--expanded{border-color:var(--border-color)}.chat-msg__thought-header{width:100%;padding:.35rem .55rem;display:flex;align-items:center;justify-content:space-between;background:transparent;border:none;cursor:pointer;color:var(--text-muted);font-family:var(--font-family);font-size:var(--text-xs);transition:color var(--transition-fast)}.chat-msg__thought-header:hover{color:var(--text-primary)}.chat-msg__thought-badge{display:inline-flex;align-items:center;gap:.35rem;font-weight:500}.chat-msg__thought-icon{color:var(--accent-primary);flex-shrink:0}.chat-msg__thought-icon--pulse{animation:cotPulse 1.4s ease-in-out infinite}@keyframes cotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.chat-msg__thought-chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.chat-msg__thought-chevron--open{transform:rotate(180deg)}.chat-msg__thought-body{padding:.45rem .65rem .6rem;border-top:1px dashed var(--border-muted);background:var(--bg-card)}.chat-msg__thought-content{font-family:var(--font-mono);font-size:.72rem;line-height:1.45;color:var(--text-muted);white-space:pre-wrap;word-break:break-word;max-height:220px;overflow-y:auto}.chat-panel__input-row{display:flex;gap:.4rem;padding-top:.6rem;border-top:1px solid var(--border-muted, var(--border-color))}.chat-panel__input{flex:1;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-muted, var(--border-color));border-radius:4px;padding:.5rem .65rem;font-family:var(--font-family);font-size:.85rem;outline:none;transition:border-color .15s ease}.chat-panel__input:focus{border-color:var(--accent-primary)}.chat-panel__input::placeholder{color:var(--text-muted)}.chat-panel__send{font-size:.85rem;background-color:var(--text-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-md);padding:0 .9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease}.chat-panel__send:hover:not(:disabled){opacity:.85}.chat-panel__send:disabled{opacity:.4;cursor:not-allowed}.chat-panel__root{display:flex;flex-direction:column}.chat-panel--embedded{width:100%}.chat-panel--embedded .chat-panel__messages{max-height:min(460px,55vh);padding:.85rem 0}.chat-panel--embedded .chat-panel__greeting{font-size:.95rem;line-height:1.5;color:var(--text-primary);margin-bottom:.25rem}.chat-panel--embedded .chat-panel__starters{flex-direction:row;flex-wrap:wrap;gap:.6rem}.chat-panel--embedded .chat-panel__starter{border-radius:var(--radius-chip);padding:.55rem .95rem;font-size:.85rem;font-weight:500;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);transition:all .2s ease}.chat-panel--embedded .chat-panel__starter:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary);background-color:var(--bg-secondary);transform:translateY(-2px);box-shadow:0 4px 14px #f4ab6a1f}.chat-panel--embedded .chat-panel__input-row{padding-top:.85rem;gap:.5rem}.chat-panel--embedded .chat-panel__input{padding:.75rem 1rem;font-size:.95rem;border-radius:8px;background-color:var(--bg-secondary);transition:border-color .2s ease,box-shadow .2s ease}.chat-panel--embedded .chat-panel__input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #f4ab6a26}.chat-panel--embedded .chat-panel__send{font-size:.85rem;padding:0 1.1rem;border-radius:8px;font-weight:600;transition:transform .15s ease,opacity .15s ease}.chat-panel--embedded .chat-panel__send:hover:not(:disabled){transform:translateY(-1px)}.chat-panel__skeleton{display:flex;flex-direction:column;gap:.6rem;justify-content:center;height:100%}.chat-panel__skeleton-line{height:.75rem;border-radius:4px;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--border-muted, var(--border-color)) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:chat-skeleton-shimmer 1.4s ease infinite}.chat-panel__skeleton-line--short{width:55%}@keyframes chat-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.chat-msg__markdown{white-space:normal;display:block}.chat-msg__markdown .chat-paragraph{margin:0 0 .4em}.chat-msg__markdown .chat-paragraph:last-child{margin-bottom:0}.chat-msg__markdown .chat-list,.chat-msg__markdown .chat-ordered-list{margin:.2em 0 .4em 1.1em;padding:0}.chat-msg__markdown .chat-list-item{margin:.1em 0}.chat-link{color:var(--accent-primary);text-decoration:underline}.chat-link:hover{opacity:.8}.chat-msg__markdown .chat-inline-code{background-color:var(--bg-secondary);border:1px solid var(--border-muted, var(--border-color));border-radius:3px;padding:0 .25em;font-size:.85em}.chat-panel__body--split{display:flex;gap:.75rem;overflow:hidden}.chat-panel__chat-col{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.chat-panel__chat-col>.chat-panel__root{flex:1;min-height:0}.chat-panel__obs-col{width:280px;flex-shrink:0;overflow-y:auto;max-height:min(400px,calc(100vh - 10rem));font-size:.85rem}.chat-panel__tabs{display:none}.chat-panel__tab{flex:1;padding:.4rem;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-family);font-size:.8rem;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.chat-panel__tab:hover{color:var(--text-primary)}.chat-panel__tab--active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}@media (max-width: 639px){.chat-panel__tabs{display:flex;gap:0;border-bottom:1px solid var(--border-muted, var(--border-color));margin-bottom:0}.chat-panel__body--split .chat-panel__chat-col,.chat-panel__body--split .chat-panel__obs-col{display:none}.chat-panel__body--split .chat-panel__chat-col.chat-panel__chat-col--active{display:flex}.chat-panel__body--split .chat-panel__obs-col.chat-panel__obs-col--active{display:block}}@media (min-width: 640px){.chat-panel__body--split .chat-panel__chat-col,.chat-panel__body--split .chat-panel__obs-col{display:flex}.chat-panel__body--split .chat-panel__obs-col{display:block}.chat-panel__tabs{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-backdrop{display:none}@media (max-width: 480px){.chat-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:1000}.chat-panel{width:calc(100vw - 1.5rem);right:.75rem;bottom:.75rem;max-height:min(520px,80dvh)}.chat-panel--companion{width:calc(100vw - 1rem)}.chat-launcher{right:1rem;bottom:1rem}.chat-panel__input{font-size:1rem}}.obs-panel__summary{padding:.75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color, #333);border-radius:6px;margin-bottom:.75rem}.obs-panel__summary-title{font-family:var(--font-family);font-size:.8rem;font-weight:700;color:var(--accent-secondary);margin:0 0 .6rem;border-bottom:1px dashed var(--border-color, #333);padding-bottom:.4rem}.obs-panel__summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.obs-panel__metric{display:flex;flex-direction:column;gap:.1rem}.obs-panel__metric-label{font-family:var(--font-family);font-size:.7rem;color:var(--text-muted)}.obs-panel__metric-value{font-family:var(--font-family);font-size:.85rem;font-weight:700;color:var(--text-primary)}.obs-panel__status{font-family:var(--font-family);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin-left:.3rem}.obs-panel__status--fast{color:#2ecc71}.obs-panel__status--moderate{color:#f1c40f}.obs-panel__status--slow{color:#e74c3c}.obs-panel__model-comparison{margin-top:.5rem;padding-top:.4rem;border-top:1px dashed var(--border-muted, var(--border-color));font-family:var(--font-family);font-size:.7rem;color:var(--text-muted);line-height:1.5}.obs-panel__model-comparison strong{color:var(--text-primary);font-weight:600}.obs-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;color:var(--text-muted);text-align:center}.obs-panel__empty-icon{opacity:.4}.obs-panel__empty-text{font-family:var(--font-family);font-size:.8rem;margin:0}.obs-panel__sparkline{margin-bottom:.75rem}.obs-panel__sparkline-title{font-family:var(--font-family);font-size:.75rem;font-weight:700;color:var(--text-muted);margin:0 0 .4rem;text-transform:uppercase;letter-spacing:.05em}.obs-panel__sparkline-bars{display:flex;align-items:flex-end;gap:3px;height:40px;padding:.2rem 0}.obs-panel__sparkline-bar-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;flex:1;min-width:0}.obs-panel__sparkline-bar{width:100%;min-height:3px;border-radius:2px;transition:opacity .15s ease;cursor:default}.obs-panel__sparkline-bar--fast{background-color:#2ecc71}.obs-panel__sparkline-bar--moderate{background-color:#f1c40f}.obs-panel__sparkline-bar--slow{background-color:#e74c3c}.obs-panel__sparkline-label{font-family:var(--font-family);font-size:.6rem;font-weight:600;color:var(--text-muted);margin-top:2px;white-space:nowrap}.obs-panel__sparkline-tooltip{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background-color:var(--bg-primary);border:1px solid var(--border-color, #333);border-radius:4px;padding:.25rem .4rem;font-family:var(--font-family);font-size:.65rem;color:var(--text-primary);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:2}.obs-panel__sparkline-bar-wrapper:hover .obs-panel__sparkline-tooltip,.obs-panel__sparkline-bar-wrapper:focus-within .obs-panel__sparkline-tooltip{opacity:1}.obs-panel__live{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background-color:var(--bg-secondary);border:1px solid var(--accent-primary);border-radius:4px;margin-bottom:.75rem;font-family:var(--font-family);font-size:.8rem;color:var(--text-primary)}.obs-panel__live-pulse{width:8px;height:8px;border-radius:50%;background-color:#2ecc71;animation:obs-live-pulse 1.2s ease-in-out infinite;flex-shrink:0}@keyframes obs-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.obs-panel__live-stats{display:flex;gap:.6rem;flex-wrap:wrap}.obs-panel__live-stat{display:flex;flex-direction:column;gap:.05rem}.obs-panel__live-stat-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.obs-panel__live-stat-value{font-size:.8rem;font-weight:700;color:var(--accent-primary)}.obs-panel__metrics-title{font-family:var(--font-family);font-size:.75rem;font-weight:700;color:var(--text-muted);margin:0 0 .4rem;text-transform:uppercase;letter-spacing:.05em}.obs-panel__metrics-list{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.75rem}.obs-panel__metric-row{padding:.5rem .65rem;background-color:var(--bg-secondary);border:1px solid var(--border-muted, var(--border-color));border-radius:4px;font-family:var(--font-family);font-size:.75rem}.obs-panel__metric-row-header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.3rem}.obs-panel__metric-preview{color:var(--text-muted);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.obs-panel__metric-model-badge{font-size:.65rem;font-weight:700;color:var(--accent-highlight);background-color:#38bdf81a;border:1px solid rgba(56,189,248,.25);border-radius:3px;padding:.1rem .35rem;white-space:nowrap;flex-shrink:0}.obs-panel__ttft-bar{display:flex;height:16px;border-radius:3px;overflow:hidden;margin-bottom:.3rem;position:relative}.obs-panel__ttft-segment{height:100%;position:relative;overflow:hidden;transition:width .15s ease}.obs-panel__ttft-segment--network{background-color:#6b7280}.obs-panel__ttft-segment--server{background-color:#5b9bd5}.obs-panel__ttft-segment--llm{background-color:var(--accent-primary)}.obs-panel__ttft-segment--unknown{background-color:#6b7280}.obs-panel__ttft-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.55rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px;pointer-events:none}.obs-panel__ttft-segment[data-narrow=true] .obs-panel__ttft-label{display:none}.obs-panel__ttft-total{font-family:var(--font-family);font-size:.7rem;font-weight:700;color:var(--text-primary);margin-left:.3rem;white-space:nowrap}.obs-panel__detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.2rem .5rem;font-size:.7rem}.obs-panel__detail-label{color:var(--text-muted)}.obs-panel__detail-value{color:var(--text-primary);font-weight:600;text-align:right}.obs-panel__detail-estimated{color:var(--text-muted);font-style:italic;font-size:.65rem}.obs-panel__grounding{padding:.6rem .75rem;background-color:var(--bg-secondary);border:1px solid var(--border-muted, var(--border-color));border-radius:var(--radius-sm);margin-bottom:.75rem;font-family:var(--font-family)}.obs-panel__grounding-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.obs-panel__grounding-title{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em}.obs-panel__grounding-desc{font-size:.72rem;color:var(--text-muted);line-height:1.35;margin:0}.obs-panel__sources-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:.72rem;font-weight:600;color:var(--accent-primary);background:var(--surface-raised);border:1px solid var(--accent-primary);border-radius:var(--radius-chip);cursor:pointer;transition:all var(--transition-fast)}.obs-panel__sources-btn:hover{background:var(--accent-subtle)}.obs-panel__footer{padding-top:.5rem;border-top:1px dashed var(--border-muted, var(--border-color));font-family:var(--font-family);font-size:.7rem;color:var(--text-muted);text-align:center;line-height:1.4}.obs-panel__footer a{color:var(--accent-highlight);text-decoration:none;transition:color .15s ease}.obs-panel__footer a:hover{text-decoration:underline}.obs-panel__footer-icon{margin-right:.25rem;vertical-align:middle;opacity:.7}:root{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-card: #ffffff;--surface-raised: #ffffff;--surface-sunken: #fafafa;--text-primary: #0a0a0a;--text-muted: #475467;--text-inverse: #ffffff;--header-color: #0a0a0a;--accent-primary: #175cd3;--accent-secondary: #0a0a0a;--accent-highlight: #1849a9;--accent-purple: #175cd3;--accent-subtle: rgba(23, 92, 211, .08);--accent-glow: rgba(16, 24, 40, .06);--border-color: #d0d5dd;--border-muted: #e4e7ec;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-family);--font-serif: "Instrument Serif", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs: .72rem;--text-sm: .85rem;--text-md: 1rem;--text-lg: 1.3rem;--text-xl: 1.8rem;--text-2xl: 2.5rem;--radius-sm: 6px;--radius-chip: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 999px;--shadow-card: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04);--shadow-pop: 0 12px 32px rgba(16, 24, 40, .12);--transition-fast: .15s cubic-bezier(.25, 1, .5, 1);--transition-base: .22s cubic-bezier(.25, 1, .5, 1);--overlay-chrome: rgba(255, 255, 255, .82);--overlay-menu: #ffffff;--overlay-soft: rgba(16, 24, 40, .05);--overlay-softer: rgba(16, 24, 40, .03);--accent-border: #d0d5dd;--status-ok-text: #1a7f37;--status-ok-border: #1a7f37;--status-ok-bg: rgba(26, 127, 55, .1);--status-warn-text: #9a6700;--status-warn-border: #9a6700;--status-warn-bg: rgba(156, 103, 0, .1);--status-bad-text: #cf222e;--status-bad-border: #cf222e;--status-bad-bg: rgba(207, 34, 46, .08);--status-neutral-text: var(--text-muted);--status-neutral-bg: var(--overlay-soft);--container-max-width: 1040px}[data-theme=dark]{--bg-primary: #101013;--bg-secondary: #16181c;--bg-card: #16181c;--surface-raised: #191b20;--surface-sunken: #0c0d10;--text-primary: #f4f5f7;--text-muted: #9aa1ad;--text-inverse: #101013;--header-color: #f4f5f7;--accent-primary: #7cb0ff;--accent-secondary: #f4f5f7;--accent-highlight: #a5cbff;--accent-purple: #7cb0ff;--accent-subtle: rgba(124, 176, 255, .12);--accent-glow: rgba(124, 176, 255, .16);--border-color: rgba(255, 255, 255, .16);--border-muted: rgba(255, 255, 255, .09);--shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .3);--shadow-pop: 0 12px 32px rgba(0, 0, 0, .45);--overlay-chrome: rgba(16, 16, 19, .78);--overlay-menu: #191b20;--overlay-soft: rgba(255, 255, 255, .06);--overlay-softer: rgba(255, 255, 255, .03);--accent-border: rgba(255, 255, 255, .22);--status-ok-text: #2ecc71;--status-ok-border: #2ecc71;--status-ok-bg: rgba(46, 204, 113, .15);--status-warn-text: #f1c40f;--status-warn-border: #f1c40f;--status-warn-bg: rgba(241, 196, 15, .15);--status-bad-text: #ff7b72;--status-bad-border: #ff7b72;--status-bad-bg: rgba(255, 123, 114, .12);--status-neutral-text: var(--text-muted);--status-neutral-bg: var(--overlay-soft)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.skip-to-content{position:absolute;top:-100px;left:1rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;z-index:9999;text-decoration:none;font-family:var(--font-family);transition:top .2s ease-in-out}.skip-to-content:focus{top:1rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);font-size:15px;line-height:1.6;min-height:100vh;min-height:100dvh;width:100%;max-width:100vw;overflow-x:hidden;transition:background-color .2s ease,color .2s ease}body{display:flex;flex-direction:column;align-items:center}p{line-height:1.65;margin-bottom:.85rem}p:last-child{margin-bottom:0}ul,ol{padding-left:0;margin-left:0;list-style-position:inside}li{padding-left:0;margin-left:0}#root{width:100%;min-height:100vh;min-height:100dvh;margin:0;padding:0;box-sizing:border-box}button,a,input,select,textarea{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width: 768px){input[type=text],input[type=search],input[type=number],input[type=email],input[type=url],select:not(.chat-panel__model-select select),textarea{font-size:max(16px,1rem)}}h1,h2,h3,h4,h5,h6{color:var(--header-color, var(--accent-highlight));font-weight:700;letter-spacing:-.01em}a{color:var(--accent-primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-highlight);text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}.inline-icon-label{display:inline-flex;align-items:center;gap:.4rem}.inline-icon-label.centered{justify-content:center}.inline-icon{flex-shrink:0;vertical-align:text-bottom}.inline-icon.accent{color:var(--accent-primary)}
