:root{--font-family: "Avenir Next", "Segoe UI", sans-serif;--color-text: #f7f1ed;--color-text-muted: rgba(247, 241, 237, .78);--color-border: rgba(255, 255, 255, .1);--color-surface: rgba(17, 17, 19, .8);--color-surface-strong: rgba(10, 10, 12, .88);--color-surface-soft: rgba(29, 29, 34, .74);--color-input: rgba(20, 20, 24, .78);--color-accent: #d6222a;--color-accent-strong: #b5151d;--color-accent-soft: rgba(214, 34, 42, .18);--color-highlight: #ffcfbf;--color-button-text: #fff8f5;--color-status: rgba(255, 255, 255, .08);--color-user-message: rgba(255, 255, 255, .055);--color-assistant-message: rgba(255, 255, 255, .13);--color-selected: rgba(255, 255, 255, .13);--color-history-title: rgba(247, 241, 237, .9);--app-background: radial-gradient(circle at top left, rgba(214, 34, 42, .24), transparent 34%), radial-gradient(circle at top right, rgba(255, 255, 255, .08), transparent 28%), linear-gradient(180deg, #090909 0%, #161618 42%, #0d0d0f 100%);font-family:var(--font-family);color:var(--color-text);background:var(--app-background)}:root[data-theme=light]{--color-text: #17222d;--color-text-muted: #5e6c79;--color-border: #dce2e8;--color-surface: rgba(255, 255, 255, .96);--color-surface-strong: #ffffff;--color-surface-soft: #f6f8fa;--color-input: #ffffff;--color-accent: #df1e2d;--color-accent-strong: #bd1624;--color-accent-soft: rgba(223, 30, 45, .075);--color-highlight: #991522;--color-button-text: #fff8f5;--color-status: #f0f3f6;--color-user-message: #f1f4f7;--color-assistant-message: #ffffff;--color-selected: #edf3f7;--color-history-title: #344352;--app-background: radial-gradient(circle at 50% -16%, rgba(255, 255, 255, .96), transparent 38%), linear-gradient(180deg, #f8fafb 0%, #f1f4f7 52%, #edf1f4 100%)}*{box-sizing:border-box}html{background:var(--app-background)}@media (min-width: 821px){html{font-size:90%}}body{margin:0;min-height:100vh;background:transparent;color:var(--color-text)}button,input,select,textarea{font:inherit}button{border:0;border-radius:999px;padding:.8rem 1.2rem;background:var(--color-accent);color:var(--color-button-text);cursor:pointer;transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease}button:hover{background:var(--color-accent-strong);transform:translateY(-1px)}button:disabled{cursor:not-allowed;transform:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--color-highlight) 38%,transparent);outline-offset:2px}.button-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.8rem 1.2rem;background:var(--color-accent);color:var(--color-button-text);text-decoration:none;transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease}.button-link:hover{background:var(--color-accent-strong);transform:translateY(-1px)}.button-link:disabled{cursor:not-allowed;opacity:.62;transform:none}input,select,textarea{width:100%;border:1px solid var(--color-border);border-radius:16px;background:var(--color-input);color:inherit;padding:.9rem 1rem}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:48px;padding-right:2.7rem;background:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%),var(--color-input);background-position:calc(100% - 1.15rem) 50%,calc(100% - .82rem) 50%,0 0;background-size:.38rem .38rem,.38rem .38rem,100% 100%;background-repeat:no-repeat;cursor:pointer}textarea{min-height:140px;resize:vertical}.app-frame{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.app-header,.app-footer{width:min(1400px,calc(100% - 2rem));margin:0 auto;display:flex;justify-content:space-between;gap:1rem;align-items:center}.app-header{padding:1.25rem 0 .5rem}.app-footer{flex-wrap:wrap;padding:.85rem 0 1rem;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:.82rem}.legal-links,.legal-links__item{display:inline-flex;align-items:center}.legal-links,.legal-links__item{gap:.65rem}.legal-links a{color:var(--color-text);text-decoration:none;text-underline-offset:.18em}.legal-links a:hover{color:var(--color-accent);text-decoration:underline}.legal-links__separator{color:var(--color-border)}.legal-screen__brand{color:var(--color-text);text-decoration:none}.legal-page{width:min(900px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 3rem}.legal-document{display:grid;gap:1.25rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.legal-document h1,.legal-document h2,.legal-document p{margin:0}.legal-document h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}.legal-document h2{margin-bottom:.45rem;font-size:1.05rem}.legal-document section{display:grid;gap:.35rem;line-height:1.65;color:var(--color-text-muted)}.legal-document__notice{padding:.8rem 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-weight:600}.legal-document__back{width:fit-content;color:var(--color-text);font-weight:700;text-underline-offset:.2em}.legal-document__back:hover{color:var(--color-accent)}.app-header__brand,.app-header__actions{display:flex;align-items:center;gap:.9rem}.app-header__copy{display:grid;gap:.1rem}.app-header__copy strong{font-size:1rem}.app-shell{width:min(1400px,calc(100% - 2rem));margin:0 auto;padding:.5rem 0 2rem}.app-alert{margin-bottom:1rem;padding:.85rem 1rem;border:1px solid var(--color-accent);border-radius:12px;background:var(--color-accent-soft);color:var(--color-text)}.brand-logo{width:clamp(72px,9vw,110px);height:auto;object-fit:contain;background:transparent;filter:invert(1) hue-rotate(180deg)}.app-header .brand-logo{width:86px}:root[data-theme=light] .brand-logo{filter:none}.theme-toggle{position:relative;display:grid;grid-template-columns:repeat(2,34px);align-items:center;justify-content:space-between;width:78px;min-width:78px;height:42px;min-height:42px;padding:3px;background:#ffffff12;color:var(--color-text);border:1px solid var(--color-border);border-radius:999px;isolation:isolate}.theme-toggle:before{content:"";position:absolute;z-index:-1;top:3px;left:3px;width:34px;height:34px;border-radius:50%;background:#ffffff21;box-shadow:0 2px 8px #00000038;transition:transform .16s ease}.theme-toggle[aria-pressed=true]:before{transform:translate(36px)}.theme-toggle__icon{display:inline-grid;place-items:center;width:34px;height:34px;color:var(--color-text-muted);transition:color .16s ease}.theme-toggle[aria-pressed=false] .theme-toggle__icon--sun,.theme-toggle[aria-pressed=true] .theme-toggle__icon--moon{color:var(--color-text)}.theme-toggle__icon svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.theme-toggle:hover{border-color:color-mix(in srgb,var(--color-highlight) 35%,var(--color-border));background:#ffffff1a;transform:none}:root[data-theme=light] .theme-toggle{border-color:#d6dee5;background:#e9eef2;color:#17222d;box-shadow:none}:root[data-theme=light] .theme-toggle:before{background:#fff;box-shadow:0 2px 7px #10182824}:root[data-theme=light] .theme-toggle:hover{border-color:#c5d0d9;background:#e4eaef}.control-with-tooltip,.composer-control{position:relative;display:inline-flex;align-items:center}.control-tooltip{position:absolute;z-index:30;top:calc(100% + .55rem);left:50%;width:max-content;max-width:min(220px,calc(100vw - 2rem));padding:.42rem .58rem;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:#f4f6f8;color:#15181c;box-shadow:0 8px 20px #00000047;font-size:.75rem;font-weight:650;line-height:1.2;opacity:0;pointer-events:none;transform:translate(-50%,-.2rem);transition:opacity .12s ease,transform .12s ease}.control-tooltip--end{right:0;left:auto;transform:translateY(-.2rem)}.control-with-tooltip:hover .control-tooltip,.composer-control:hover .control-tooltip,.composer-control:focus-within .control-tooltip{opacity:1;transform:translate(-50%)}.control-with-tooltip:hover .control-tooltip--end,.composer-control:hover .control-tooltip--end,.composer-control:focus-within .control-tooltip--end{transform:translateY(0)}:root[data-theme=light] .control-tooltip{border-color:#ffffff1a;background:#15171a;color:#fff}.user-menu{position:relative}.user-menu summary{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:.3rem .75rem .3rem .35rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-status);color:var(--color-text);cursor:pointer;list-style:none}.user-menu summary::-webkit-details-marker{display:none}.user-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--color-accent);color:var(--color-button-text);font-weight:700}.user-menu__name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu__panel{position:absolute;right:0;top:calc(100% + .5rem);z-index:20;display:grid;gap:.45rem;width:min(260px,calc(100vw - 2rem));padding:.85rem;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-strong);box-shadow:0 18px 44px #00000047;overflow:hidden}.user-menu__panel strong,.user-menu__panel span{min-width:0;overflow-wrap:anywhere}.user-menu__panel span{color:var(--color-text-muted);font-size:.88rem}.user-menu__panel button{display:block;width:auto;max-width:100%;min-width:0;margin:0;min-height:38px;padding:.45rem .65rem;border-radius:8px;text-align:left}.user-menu__panel button:disabled{cursor:not-allowed;opacity:.55;background:var(--color-status);color:var(--color-text-muted)}.status-line,.auth-summary p,.message span,.message p,label,li,pre{color:var(--color-text-muted)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--color-accent)}.workspace-grid{display:grid;grid-template-columns:minmax(280px,336px) minmax(0,1fr);gap:1.25rem;align-items:start;min-height:calc(100vh - 190px)}.workspace-grid--history-collapsed{grid-template-columns:38px minmax(0,1fr);gap:.65rem}.workspace-main{display:grid;gap:1rem;min-height:calc(100vh - 190px)}.active-workspace{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem .9rem;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-soft)}.active-workspace__copy{display:grid;gap:.32rem;min-width:0}.active-workspace__meta,.active-workspace__badges,.active-workspace__identity{display:flex;align-items:center;min-width:0}.active-workspace__meta{flex-wrap:wrap;gap:.45rem .65rem}.active-workspace__badges{flex-wrap:wrap;gap:.35rem}.active-workspace__identity{flex-wrap:wrap;gap:.38rem;line-height:1.25}.active-workspace p{margin:0}.active-workspace strong{overflow-wrap:anywhere;color:var(--color-text);font-size:clamp(.92rem,1.1vw,1.02rem);font-weight:650}.active-workspace__context{color:var(--color-text-muted);font-size:.82rem;font-weight:700;letter-spacing:.025em;white-space:nowrap}.active-workspace__separator{color:var(--color-text-muted);font-size:.78rem;opacity:.55}.active-workspace__business-unit,.active-workspace__type{flex:0 0 auto;border-radius:999px;font-size:.64rem;font-weight:750;letter-spacing:.085em;line-height:1.2;text-transform:uppercase}.active-workspace__business-unit{padding:.16rem .48rem;border:1px solid rgba(124,184,255,.28);background:#408be024;color:#a8d2ff}.active-workspace__business-unit--eis{border-color:#55d6c24d;background:#31ab9924;color:#8ee5d7}.active-workspace__business-unit--neutral{border-color:var(--color-border);background:var(--color-status);color:var(--color-text-muted)}.active-workspace__type{padding:.16rem .48rem;border:1px solid var(--color-border);background:var(--color-status);color:var(--color-text-muted)}:root[data-theme=light] .active-workspace__business-unit{border-color:#125ba733;background:#125ba714;color:#175a9d}:root[data-theme=light] .active-workspace__business-unit--eis{border-color:#0b776638;background:#0b776614;color:#08705f}.active-workspace button{flex:0 0 auto;min-height:38px;padding:.5rem .8rem;border:1px solid var(--color-border);border-radius:10px;background:var(--color-status);color:var(--color-text)}.workspace-change-control{flex:0 0 auto;align-self:center}.active-workspace .active-workspace__change{display:inline-grid;place-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border-radius:10px}.active-workspace__change svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.workspace-selection-actions{display:flex;align-items:center;gap:.65rem}.workspace-selection-actions .secondary-button{border:1px solid var(--color-border);background:var(--color-status);color:var(--color-text)}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:24px;padding:1.4rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-header h2{margin:.2rem 0 1rem}.auth-panel,.scope-grid,.chat-panel,.history-list{display:flex;flex-direction:column;gap:.9rem}.history-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem}.history-search input{min-width:0}.history-more{width:100%}.auth-panel{grid-column:span 3}.chat-panel{min-height:calc(100vh - 190px)}.history-panel{position:sticky;top:1rem;display:flex;flex-direction:column;gap:.9rem;max-height:calc(100vh - 190px);overflow:auto;padding:1.25rem;transition:padding .16s ease,border-radius .16s ease}.panel.history-panel--collapsed{display:flex;align-items:center;justify-content:center;min-height:58px;padding:0;border:0;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.history-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.history-panel__header h2{margin:0;font-size:1.35rem}.history-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:1px solid var(--color-border);border-radius:10px;background:var(--color-status);color:var(--color-text)}.history-toggle svg,.history-search__submit svg,.history-new svg,.voice-button svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.history-panel--collapsed .history-panel__header{justify-content:center}.history-panel--collapsed .history-toggle{width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border-radius:11px;background:var(--color-surface-soft)}.history-panel--collapsed .history-toggle svg{width:17px;height:17px;stroke-width:2.15}.prelogin-shell{min-height:calc(100vh - 220px);display:grid;align-items:center;padding:2rem 0}.auth-panel--signin{width:min(560px,100%);margin:0 auto}.auth-copy{color:var(--color-text-muted);margin:0}.auth-actions{margin-top:.35rem}.auth-actions .button-link,.auth-form>button,.workspace-selection-actions button{border-radius:10px}.auth-divider{display:flex;align-items:center;gap:.75rem;color:var(--color-text-muted);font-size:.82rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-top:1px solid var(--color-border)}.workspace-selection{width:min(620px,100%);margin:0 auto}.workspace-scope-picker{display:grid;gap:.65rem;padding:.75rem;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-soft)}.workspace-scope-picker label{display:grid;gap:.4rem}.workspace-scope-picker input[type=search]{min-height:48px}.workspace-scope-results{color:var(--color-text-muted);font-size:.78rem;line-height:1.3}.auth-form,.auth-form__grid{display:grid;gap:.9rem}.auth-form__grid label{display:grid;gap:.4rem}.auth-form__grid span{color:var(--color-text-muted)}.password-input{position:relative;width:100%}.password-input input{padding-right:3.25rem}.password-input__toggle{position:absolute;top:50%;right:.45rem;display:inline-grid;place-items:center;width:2.35rem;min-width:2.35rem;height:2.35rem;min-height:2.35rem;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-text-muted);transform:translateY(-50%)}.password-input__toggle:hover{background:var(--color-status);color:var(--color-text);transform:translateY(-50%)}.password-input__toggle svg{width:1.2rem;height:1.2rem;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.message-list{display:flex;flex-direction:column;flex:1 1 auto;gap:.8rem;min-height:120px}.message-list--empty{min-height:0;align-items:center;justify-content:center}.empty-chat-welcome{display:grid;gap:.45rem;max-width:440px;padding:2rem;text-align:center}.empty-chat-welcome h2,.empty-chat-welcome p{margin:0}.empty-chat-welcome h2{color:var(--color-text);font-size:clamp(1.4rem,2vw,1.85rem);font-weight:650;letter-spacing:-.025em}.empty-chat-welcome p{color:var(--color-text-muted);font-size:.95rem}.empty-state{border:1px dashed var(--color-border);border-radius:18px;padding:1rem 1.1rem;background:var(--color-status)}.empty-state p{margin:0;color:var(--color-text-muted)}.message{border-radius:20px;padding:1rem}.message-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.message-header>span{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.message.user{background:var(--color-user-message)}.message.assistant{background:var(--color-assistant-message)}.message-rich{display:grid;gap:.8rem;line-height:1.6}.message-rich p,.message-rich ul,.message-rich ol{margin:0}.message-rich h2,.message-rich h3,.message-rich h4,.message-rich h5{margin:.9rem 0 .35rem;color:var(--color-text);line-height:1.3}.message-rich h2:first-child,.message-rich h3:first-child,.message-rich h4:first-child,.message-rich h5:first-child{margin-top:0}.message-rich h2{font-size:1.12rem}.message-rich h3{font-size:1.04rem}.message-rich h4,.message-rich h5{font-size:.98rem}.message-rich ul,.message-rich ol{padding-left:1.3rem}.message-rich li+li{margin-top:.35rem}.message-rich strong{font-weight:700}.citation-list,.feedback-controls,.feedback-detail,.citation-actions,.thumbnail-row{display:flex;gap:.55rem}.citation-list,.feedback-detail{flex-direction:column}.citation-item{border-top:1px solid var(--color-border);padding-top:.65rem}.citation-item strong,.citation-item span{display:block;overflow-wrap:anywhere}.citation-locations{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin:.2rem 0}.citation-locations a{color:var(--color-highlight);font-size:.86rem;font-weight:600;text-decoration-color:color-mix(in srgb,var(--color-highlight) 55%,transparent);text-underline-offset:.16em}.citation-locations a:visited{color:var(--color-highlight)}.citation-locations a:hover{color:var(--color-text)}.citation-item .citation-status{color:#b42318;font-weight:600}.citation-visual{margin-top:.3rem;color:var(--color-text-muted)}.citation-visual summary{cursor:pointer;font-size:.88rem;font-weight:600}.citation-visual span{margin-top:.25rem}.citation-actions a{color:var(--color-highlight);font-size:.88rem}.evidence-coverage{display:grid;gap:.25rem;padding:.7rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-muted);font-size:.86rem}.evidence-coverage strong{color:var(--color-text)}.visual-evidence-list{display:grid;gap:.65rem;padding-top:.75rem}.visual-evidence-list>strong{font-size:.92rem}.visual-evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.visual-evidence-item{margin:0;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-surface)}.visual-evidence-item img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain;background:#fff;border-bottom:1px solid var(--color-border)}.visual-evidence-image-link{display:block;cursor:zoom-in}.visual-evidence-image-link img{transition:opacity .14s ease,transform .14s ease}.visual-evidence-image-link:hover img{opacity:.9;transform:scale(1.01)}.visual-evidence-image-link:focus-visible{outline:3px solid var(--color-highlight);outline-offset:-3px}.visual-evidence-item figcaption{display:grid;gap:.25rem;padding:.65rem;color:var(--color-text-muted);font-size:.86rem}.visual-evidence-item figcaption span{overflow-wrap:anywhere}.visual-evidence-item figcaption a{color:var(--color-highlight)}.thumbnail-row img{width:72px;height:54px;border-radius:8px;object-fit:cover;border:1px solid var(--color-border)}.feedback-controls{flex-wrap:wrap;margin-top:.75rem}.feedback-controls button{padding:.45rem .75rem;border-radius:8px;font-size:.88rem}.feedback-detail{flex-basis:100%}.feedback-detail textarea{min-height:80px}.feedback-confirmation{flex-basis:100%;color:var(--color-text-muted);font-size:.86rem;font-weight:600}.button-row{display:flex;flex-wrap:wrap;gap:.7rem}.history-list{list-style:none;padding:0;margin:0}.history-list li{display:block;padding:.3rem 0;border-bottom:1px solid var(--color-border)}.history-list strong{display:-webkit-box;color:var(--color-history-title);font-size:.91rem;font-weight:650;line-height:1.35;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.history-new,.history-item{width:100%;min-height:40px;border-radius:8px;text-align:left}.history-new{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:46px;background:var(--color-accent)}.history-item{display:grid;gap:.25rem;padding:.7rem .75rem;background:transparent;color:var(--color-text)}.history-item time{color:var(--color-text-muted);font-size:.68rem;font-weight:650;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.history-search{grid-template-columns:minmax(0,1fr) 44px;gap:.55rem}.history-search input{min-height:44px;padding:.7rem .85rem;border-radius:12px}.history-search__submit{display:inline-grid;place-items:center;width:44px;min-width:44px;height:44px;padding:0;border-radius:12px}.history-item:hover{background:var(--color-selected);transform:none}.history-item[aria-current=page]{background:var(--color-selected);box-shadow:inset 0 0 0 1px var(--color-border);transform:none}.chat-toolbar,.message-actions{display:flex;align-items:center;gap:.5rem}.chat-toolbar--conversation{justify-content:flex-end;padding-bottom:.7rem;border-bottom:1px solid var(--color-border)}.chat-toolbar button,.message-actions button,.voice-button{min-height:36px;padding:.45rem .7rem;border-radius:8px;background:var(--color-status);color:var(--color-text);border:1px solid var(--color-border)}.chat-toolbar .icon-action-button,.message-actions .icon-action-button{display:inline-grid;place-items:center;width:38px;min-width:38px;height:38px;min-height:38px;padding:0;border-radius:10px}.icon-action-button svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.chat-toolbar button:disabled{cursor:not-allowed;opacity:.45}.message-actions{justify-content:flex-end;flex:0 0 auto}.copy-action{position:relative}.message-actions .icon-action-button.is-success{color:var(--color-button-text);border-color:var(--color-accent);background:var(--color-accent)}.copy-feedback{position:absolute;z-index:5;top:calc(100% + .5rem);right:0;width:max-content;max-width:min(220px,calc(100vw - 3rem));padding:.45rem .65rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-strong);color:var(--color-text);box-shadow:0 10px 28px #00000047;font-size:.78rem;font-weight:600;line-height:1.2;pointer-events:none}.copy-feedback:before{content:"";position:absolute;right:.8rem;bottom:100%;border:5px solid transparent;border-bottom-color:var(--color-surface-strong)}.copy-feedback--error{color:var(--color-highlight)}.message-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.message-table-wrap table{width:100%;border-collapse:collapse;min-width:420px}.message-table-wrap th,.message-table-wrap td{padding:.55rem .7rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.message-table-wrap th{color:var(--color-text);background:var(--color-surface-soft)}.voice-button[aria-pressed=true]{background:var(--color-accent);color:var(--color-button-text)}.voice-button{display:inline-grid;place-items:center;flex:0 0 40px;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%}.voice-button:hover:not(:disabled){transform:none}.voice-button__progress{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:voice-spin .7s linear infinite}@keyframes voice-spin{to{transform:rotate(360deg)}}.chat-form{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.5rem;align-items:end;padding:.42rem .5rem;border:1px solid var(--color-border);border-radius:24px;background:var(--color-input);transition:border-color .16s ease,box-shadow .16s ease}.chat-form:focus-within{border-color:color-mix(in srgb,var(--color-highlight) 55%,var(--color-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--color-highlight) 14%,transparent)}.chat-form>textarea{grid-column:2;grid-row:1;min-width:0;min-height:44px;max-height:160px;padding:.68rem .35rem;border:0;border-radius:0;background:transparent;line-height:1.45;overflow-y:hidden;resize:none}.chat-form>textarea:focus,.chat-form>textarea:focus-visible{border:0;outline:0}.chat-actions{display:contents}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.composer-control--attachment{grid-column:1;grid-row:1;cursor:pointer}.file-picker__button{display:inline-grid;place-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border:1px solid transparent;border-radius:50%;background:var(--color-status);color:var(--color-text)}.file-picker__button svg,.chat-submit-button svg,.response-stop-button svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.file-picker--disabled{cursor:not-allowed}.file-picker--disabled .file-picker__button{color:var(--color-text-muted);opacity:.62;pointer-events:none}.composer-control--voice{grid-column:3;grid-row:1}.composer-control--submit{grid-column:4;grid-row:1}.chat-submit-button,.response-stop-button{display:inline-grid;place-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border-radius:50%}.chat-submit-button:disabled{background:var(--color-status);color:var(--color-text-muted);box-shadow:none;opacity:.72}.response-activity{display:inline-flex;align-items:center;gap:.6rem;width:fit-content;margin-top:.35rem;color:var(--color-text-muted);font-size:.82rem;font-weight:600}.chat-scroll-anchor{width:100%;height:1px;pointer-events:none}.response-activity__dots{display:inline-flex;align-items:center;gap:.24rem;min-width:1.8rem}.response-activity__dots span{width:.42rem;height:.42rem;border-radius:50%;background:var(--color-accent);animation:response-dot 1.15s ease-in-out infinite}.response-activity__dots span:nth-child(2){animation-delay:.14s}.response-activity__dots span:nth-child(3){animation-delay:.28s}@keyframes response-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-.22rem)}}@media (prefers-reduced-motion: reduce){.response-activity__dots span{animation:none;opacity:.72}}.panel-header h2{color:var(--color-text)}@media (max-width: 1440px),(max-height: 900px){.app-header{padding:.8rem 0 .35rem}.app-shell{padding:.35rem 0 1.25rem}.workspace-grid{grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:.9rem}.workspace-grid--history-collapsed{grid-template-columns:38px minmax(0,1fr);gap:.65rem}.workspace-main{gap:.75rem}.panel{padding:1rem;border-radius:18px}.active-workspace{gap:.75rem;padding:.65rem .8rem;border-radius:12px}.active-workspace button{min-height:40px;padding:.45rem .7rem}.chat-panel{min-height:calc(100vh - 230px);gap:.7rem}.history-panel{gap:.7rem;padding:1rem}.panel.history-panel--collapsed{padding:0}.history-panel__header h2{font-size:1.2rem}.history-new{min-height:42px}.history-list li{padding:.15rem 0}.history-item{padding:.55rem .65rem}.message{padding:.85rem}.chat-form{gap:.45rem}.chat-form>textarea{min-height:44px;padding:.68rem .35rem;border-radius:0}.file-picker__button{min-height:40px;padding:0}}@media (max-width: 820px){.theme-control .control-tooltip{right:auto;left:0;transform:translateY(-.2rem)}.theme-control:hover .control-tooltip{transform:translateY(0)}.workspace-grid{grid-template-columns:1fr;min-height:0}.history-panel{position:static;max-height:min(360px,42vh);overflow:auto}.panel.history-panel--collapsed{max-height:none}.workspace-main,.chat-panel{min-height:620px}}@media (max-width: 640px){.app-header,.app-footer{align-items:stretch;flex-direction:column}.app-header__actions{width:100%;justify-content:space-between}.user-menu__panel{left:auto;right:0}.workspace-main,.chat-panel{min-height:0}.active-workspace{align-items:stretch;flex-direction:column}.active-workspace button{width:100%}.active-workspace .workspace-change-control{align-self:flex-end}.workspace-selection-actions{align-items:stretch;flex-direction:column}.workspace-selection-actions button{width:100%}}@media print{.app-header,.app-footer,.history-panel,.chat-form,.chat-toolbar,.message-actions,.feedback-controls,.status-line{display:none!important}.app-shell,.workspace-grid,.workspace-main{display:block;width:100%;padding:0;margin:0}.panel,.message{color:#111;background:#fff;border:0;box-shadow:none}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#0000009e}.memory-panel{width:min(720px,100%);max-height:min(760px,calc(100vh - 2rem));overflow:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-strong);box-shadow:0 24px 70px #00000061}.memory-panel__header,.memory-panel__footer,.memory-consent{display:flex;align-items:center;justify-content:space-between;gap:1rem}.memory-panel__header{padding:1.1rem 1.25rem;border-bottom:1px solid var(--color-border)}.memory-panel__header h2{margin:.2rem 0 0;font-size:1.25rem;letter-spacing:0}.icon-button{width:40px;height:40px;padding:0;display:grid;place-items:center;border-radius:50%;background:var(--color-status);border:1px solid var(--color-border);color:var(--color-text);font-size:1.45rem;line-height:1}.memory-consent{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.memory-consent>div{display:grid;gap:.25rem}.memory-consent span,.memory-panel__footer span{color:var(--color-text-muted);font-size:.88rem}.toggle-control{width:48px;height:28px;min-width:48px;padding:3px;border-radius:999px;background:var(--color-status);border:1px solid var(--color-border)}.toggle-control span{display:block;width:20px;height:20px;border-radius:50%;background:var(--color-text-muted);transition:transform .16s ease,background-color .16s ease}.toggle-control[aria-checked=true]{background:var(--color-accent)}.toggle-control[aria-checked=true] span{transform:translate(18px);background:#fff}.memory-form{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(220px,1.4fr) auto;gap:.65rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.memory-form input,.memory-form select,.memory-item input,.memory-item select{min-height:42px;border-radius:6px;padding:.65rem .75rem}.memory-form button,.memory-item__actions button,.memory-panel__footer button{border-radius:6px;padding:.65rem .9rem}.memory-list{display:grid}.memory-item{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(220px,1.4fr) auto;gap:.65rem;align-items:center;padding:.8rem 1.25rem;border-bottom:1px solid var(--color-border)}.memory-item__actions{display:flex;gap:.45rem}.button-secondary{background:var(--color-status);color:var(--color-text);border:1px solid var(--color-border)}.button-secondary:hover{background:var(--color-accent-soft)}.memory-panel__footer{min-height:62px;padding:.8rem 1.25rem}.memory-panel__clear-actions{display:flex;gap:8px}.button-danger{background:#b42318;border-color:#b42318;color:#fff}.memory-list .empty-state{margin:0;padding:1.5rem 1.25rem;color:var(--color-text-muted)}@media (max-width: 700px){.memory-form,.memory-item{grid-template-columns:1fr}.memory-item__actions{justify-content:flex-end}}@media screen{:root[data-theme=dark] button:focus-visible,:root[data-theme=dark] a:focus-visible,:root[data-theme=dark] input:focus-visible,:root[data-theme=dark] select:focus-visible,:root[data-theme=dark] textarea:focus-visible,:root[data-theme=dark] summary:focus-visible{outline-color:#ff68747a}:root[data-theme=dark] input:focus,:root[data-theme=dark] select:focus,:root[data-theme=dark] textarea:focus{border-color:#ff687480}:root[data-theme=dark] .chat-form>textarea,:root[data-theme=dark] .chat-form>textarea:focus,:root[data-theme=dark] .chat-form>textarea:focus-visible{border:0;border-radius:0;background:transparent;box-shadow:none;outline:0}:root[data-theme=dark] .active-workspace button,:root[data-theme=dark] .history-toggle,:root[data-theme=dark] .chat-toolbar button,:root[data-theme=dark] .message-actions button,:root[data-theme=dark] .voice-button{border-color:#ffffff1f;background:#ffffff13;box-shadow:none}:root[data-theme=dark] .active-workspace button:hover,:root[data-theme=dark] .history-toggle:hover,:root[data-theme=dark] .chat-toolbar button:hover:not(:disabled),:root[data-theme=dark] .message-actions button:hover,:root[data-theme=dark] .voice-button:hover:not(:disabled){border-color:#ffffff2e;background:#ffffff1f;box-shadow:0 2px 8px #0003;transform:none}:root[data-theme=dark] .history-search__submit{border:1px solid rgba(255,255,255,.12);background:#ffffff13;color:#ff8b95;box-shadow:none}:root[data-theme=dark] .history-search__submit:hover:not(:disabled){border-color:#ff68744d;background:var(--color-accent-soft);color:#ffb0b6;transform:none}:root[data-theme=dark] .message-table-wrap{border-radius:10px}:root[data-theme=dark] .citation-list{padding:.8rem;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0003}:root[data-theme=dark] .citation-item:first-child{padding-top:0;border-top:0}:root[data-theme=dark] .visual-evidence-item{border-color:#ffffff1f;border-radius:12px;background:#ffffff0b}:root[data-theme=dark] .feedback-controls button{border:1px solid rgba(255,255,255,.12);background:#ffffff13;color:var(--color-text);box-shadow:none}:root[data-theme=dark] .feedback-controls button:hover{border-color:#ffffff2e;background:#ffffff1f;transform:none}:root[data-theme=dark] .file-picker--disabled{background:transparent;opacity:1}:root[data-theme=dark] .file-picker--disabled .file-picker__button{background:#ffffff12;color:#f7f1eda8}:root[data-theme=dark] .chat-actions .chat-submit-button:disabled{background:#ffffff14;color:#f7f1ed94;box-shadow:none;opacity:1}:root[data-theme=dark] .chat-toolbar button:disabled,:root[data-theme=dark] .voice-button:disabled{opacity:.56}:root[data-theme=dark] .user-menu summary:hover{border-color:#ffffff29;background:#ffffff1a}:root[data-theme=light] button:not(.theme-toggle):not(.voice-button):not(.icon-button):not(.toggle-control):not(.chat-submit-button):not(.response-stop-button),:root[data-theme=light] .button-link{font-weight:650}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{border-color:#d5dce3;border-radius:12px;box-shadow:inset 0 1px 2px #10182806}:root[data-theme=light] button:focus-visible,:root[data-theme=light] a:focus-visible,:root[data-theme=light] input:focus-visible,:root[data-theme=light] select:focus-visible,:root[data-theme=light] textarea:focus-visible,:root[data-theme=light] summary:focus-visible{outline:3px solid rgba(37,103,154,.3);outline-offset:2px}:root[data-theme=light] input:focus,:root[data-theme=light] select:focus,:root[data-theme=light] textarea:focus{border-color:#25679a9e}:root[data-theme=light] .panel,:root[data-theme=light] .memory-panel{border-color:#dfe4e9;border-radius:18px;background:#fffffff0;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 1px 2px #10182809,0 8px 22px #1018280b}:root[data-theme=light] .history-panel:not(.history-panel--collapsed){border-color:#d8e0e6;background:#f7f9fb}:root[data-theme=light] .chat-panel{background:#fff}:root[data-theme=light] .panel.history-panel--collapsed{border:0;background:transparent;box-shadow:none}:root[data-theme=light] .active-workspace{border-color:#dce2e8;background:#f9fbfc;box-shadow:0 3px 10px #10182809}:root[data-theme=light] .active-workspace button,:root[data-theme=light] .history-toggle,:root[data-theme=light] .chat-toolbar button,:root[data-theme=light] .message-actions button,:root[data-theme=light] .voice-button{border-color:#d8dfe6;background:#f7f9fb;color:#354454;box-shadow:0 1px 2px #10182809}:root[data-theme=light] .active-workspace button:hover,:root[data-theme=light] .history-toggle:hover,:root[data-theme=light] .chat-toolbar button:hover:not(:disabled),:root[data-theme=light] .message-actions button:hover,:root[data-theme=light] .voice-button:hover:not(:disabled){border-color:#cbd4dd;background:#eaf0f4;color:#17222d;box-shadow:0 2px 5px #1018280e;transform:none}:root[data-theme=light] .history-new,:root[data-theme=light] .chat-actions button[type=submit]{box-shadow:0 5px 12px #bd162429}:root[data-theme=light] .history-search__submit{border:1px solid #d8dfe6;background:#fff;color:var(--color-accent);box-shadow:0 1px 2px #10182809}:root[data-theme=light] .history-search__submit:hover:not(:disabled){border-color:#df1e2d3d;background:var(--color-accent-soft);color:var(--color-accent-strong);transform:none}:root[data-theme=light] .history-list li{border-bottom-color:#e7ebef}:root[data-theme=light] .history-item:hover,:root[data-theme=light] .history-item[aria-current=page]{background:#edf3f7}:root[data-theme=light] .history-item[aria-current=page]{box-shadow:inset 0 0 0 1px #dbe4eb}:root[data-theme=light] .chat-toolbar--conversation{border-bottom-color:#e8ecef}:root[data-theme=light] .message-list--empty{border-radius:16px;background:radial-gradient(circle at 50% 20%,rgba(223,30,45,.025),transparent 30%),linear-gradient(180deg,#f7f9fbb8,#fff0)}:root[data-theme=light] .message{border:1px solid #e3e8ed;border-radius:14px;background:#fbfcfd;box-shadow:none}:root[data-theme=light] .message.user{border-color:#dce3e9;background:#edf2f5;box-shadow:none}:root[data-theme=light] .message-table-wrap{border-color:#dbe2e8;border-radius:10px;background:#fff}:root[data-theme=light] .message-table-wrap th{background:#f0f3f6}:root[data-theme=light] .citation-list{padding:.8rem;border:1px solid #dfe5ea;border-radius:12px;background:#f7f9fb}:root[data-theme=light] .citation-item:first-child{padding-top:0;border-top:0}:root[data-theme=light] .visual-evidence-item{border-color:#dbe2e8;border-radius:12px;background:#f8fafb}:root[data-theme=light] .citation-locations a,:root[data-theme=light] .citation-actions a,:root[data-theme=light] .visual-evidence-item figcaption a{color:#245f92}:root[data-theme=light] .citation-locations a:hover,:root[data-theme=light] .citation-actions a:hover,:root[data-theme=light] .visual-evidence-item figcaption a:hover{color:#173f62}:root[data-theme=light] .feedback-controls button{border:1px solid #d8dfe6;background:#f5f7f9;color:#354454;box-shadow:none}:root[data-theme=light] .feedback-controls button:hover{border-color:#c6d1da;background:#e9eef2;color:#17222d;transform:none}:root[data-theme=light] .chat-form{padding:.42rem .5rem;border:1px solid #d8dfe6;background:#fff;box-shadow:0 2px 8px #1018280b}:root[data-theme=light] .chat-form:focus-within{border-color:#25679a9e;box-shadow:0 0 0 3px #25679a1f}:root[data-theme=light] .chat-form>textarea,:root[data-theme=light] .chat-form>textarea:focus,:root[data-theme=light] .chat-form>textarea:focus-visible{border:0;border-radius:0;background:transparent;box-shadow:none;outline:0}:root[data-theme=light] .file-picker__button{background:#edf1f4}:root[data-theme=light] .file-picker--disabled{background:transparent;opacity:1}:root[data-theme=light] .file-picker--disabled .file-picker__button{background:#e6ebef;color:#617181}:root[data-theme=light] .chat-actions .chat-submit-button:disabled{background:#c2c9cf;color:#f8fafb;box-shadow:none;opacity:1}:root[data-theme=light] .chat-toolbar button:disabled,:root[data-theme=light] .voice-button:disabled{opacity:.58}:root[data-theme=light] .user-menu summary{border-color:#d9e0e6;background:#ffffffdb;box-shadow:0 2px 8px #1018280b}:root[data-theme=light] .user-menu__panel{border-radius:14px;box-shadow:0 18px 44px #10182824}:root[data-theme=light] .app-footer{border-top-color:#d9e0e6}:root[data-theme=light] .history-new,:root[data-theme=light] .history-item,:root[data-theme=light] .history-search input,:root[data-theme=light] .history-search__submit,:root[data-theme=light] .history-toggle,:root[data-theme=light] .chat-toolbar .icon-action-button,:root[data-theme=light] .message-actions .icon-action-button{border-radius:10px}:root[data-theme=light] .chat-actions button[type=submit],:root[data-theme=light] .chat-actions .response-stop-button{border-radius:999px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
