:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary:#ff6900;--color-primary-strong:#e65e00;--color-primary-hover:#e65e00;--color-primary-light:#ff69001f;--color-primary-medium:#ff690038;--color-blue:#3b82f6;--color-green:#10b981;--color-red:#ef4444;--color-yellow:#eab308;--color-purple:#8b5cf6;--text-primary:#f0eeeb;--text-secondary:#b7b1a9;--text-tertiary:#99938b;--text-white:#fff;--text-on-primary:#10182b;--text-danger:var(--color-red);--bg-primary:#191817;--bg-secondary:#201f1d;--bg-tertiary:#292725;--bg-grouped:#191817;--bg-gray5:#2e2b29;--bg-gray6:#383431;--bg-elevated:#242220;--bg-input:#201f1d;--bubble-user-start:#ff6900;--bubble-user-end:#fb2c36;--bubble-assistant-start:#292725;--bubble-assistant-end:#2e2b29;--thinking-bg:#ff690014;--thinking-border:#ff69002e;--thinking-content-bg:#292725;--badge-primary:#ff690033;--badge-blue:#3b82f633;--badge-green:#10b98133;--badge-purple:#8b5cf633;--badge-red:#ef444433;--badge-yellow:#eab30833;--badge-gray:#a8a29b33;--status-green:#10b981;--status-orange:#ff6900;--status-red:#ef4444;--status-gray:#757069;--status-blue:#3b82f6;--border-light:#ffffff17;--border-medium:#ffffff0f;--border-strong:#ffffff29;--separator:#2e2b29;--divider:#2e2b29;--control-track-off:#7e766e;--shadow-default:#00000040;--shadow-medium:#00000059;--shadow-accent:#ff690038;--ring-pulse-from:#ff690066;--ring-pulse-to:#ff690000;--elevation-sm:0 1px 2px #0000002e;--elevation-md:0 4px 16px #0000003d;--elevation-lg:0 12px 40px #00000057;--overlay-light:#0000004d;--overlay-medium:#00000080;--overlay-dark:#000000b3;--focus-ring:0 0 0 3px #ff690059;--font-family:"Figtree", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--font-mono:"SF Mono", ui-monospace, "Fira Code", "Cascadia Code", "Consolas", monospace;--font-size-xs:.6875rem;--font-size-sm:.75rem;--font-size-base:.9375rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:1.75rem;--font-size-3xl:2.25rem;--font-size-display:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-xxs:2px;--space-xs:4px;--space-sm:6px;--space-sm-md:8px;--space-md:10px;--space-md-lg:12px;--space-regular:14px;--space-lg:16px;--space-xl:20px;--space-2xl:30px;--space-3xl:40px;--radius-sm:4px;--radius-md:6px;--radius-regular:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:14px;--radius-card:16px;--radius-bubble:18px;--radius-modal:20px;--radius-composer:28px;--radius-full:9999px;--duration-micro:.12s;--duration-standard:.24s;--duration-emphasis:.4s;--duration-hero:.7s;--duration-quick:var(--duration-micro);--duration-fast:var(--duration-standard);--duration-regular:var(--duration-standard);--duration-slow:var(--duration-emphasis);--duration-very-slow:var(--duration-hero);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--ambient-breathe:1.6s;--ambient-shimmer:1.2s;--ambient-spin:1s;--chart-accent:var(--color-primary);--icon-sm:18px;--icon-md:28px;--icon-lg:48px;--icon-xl:60px;--icon-2xl:72px;--button-height-sm:28px;--button-height-md:44px;--button-height-lg:72px;--tab-bar-height:56px;--toolbar-height:48px;--hit-min:24px;--hit-touch:44px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text-primary:#1d1b19;--text-secondary:#4e4a45;--text-tertiary:#68625c;--bg-primary:#fcfbfa;--bg-secondary:#f6f4f1;--bg-tertiary:#efece8;--bg-grouped:#f6f4f1;--bg-gray5:#e5e1dc;--bg-gray6:#efece8;--bg-elevated:#fff;--bg-input:#f6f4f1;--color-primary-hover:#cc5400;--chart-accent:var(--color-primary-strong);--text-danger:#c4262a;--bubble-assistant-start:#efece8;--bubble-assistant-end:#f4f1ed;--thinking-content-bg:#f4f1ed;--badge-gray:#57534d24;--border-light:#1d1b1914;--border-medium:#1d1b190d;--border-strong:#1d1b1924;--separator:#e5e1dc;--divider:#d6d1ca;--control-track-off:#8e857d;--shadow-default:#1d1b1914;--shadow-medium:#1d1b191f;--elevation-sm:0 1px 2px #1d1b190f;--elevation-md:0 4px 16px #1d1b1914;--elevation-lg:0 12px 40px #1d1b191f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background:var(--bg-primary);min-height:100vh;transition:background var(--duration-fast), color var(--duration-fast);overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--color-primary)}.text-success{color:var(--color-green)}.text-error{color:var(--color-red)}.bg-primary{background:var(--bg-primary)}.bg-secondary{background:var(--bg-secondary)}.bg-tertiary{background:var(--bg-tertiary)}.font-mono{font-family:var(--font-mono)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sr-only{white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none!important}.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.flex-row{flex-direction:row;display:flex}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-end{justify-content:flex-end}.flex-center{justify-content:center;align-items:center;display:flex}.flex-col-center{flex-direction:column;justify-content:center;align-items:center;display:flex}.gap-xxs{gap:var(--space-xxs)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.gap-3xl{gap:var(--space-3xl)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.inset-0{top:0;bottom:0;left:0;right:0}.w-full{width:100%}.h-full{height:100%}.max-w-sm{max-width:300px}.max-w-md{max-width:400px}.max-w-lg{max-width:600px}.p-0{padding:0}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.p-3xl{padding:var(--space-3xl)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.px-xl{padding-left:var(--space-xl);padding-right:var(--space-xl)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.uppercase{text-transform:uppercase;letter-spacing:.05em}.whitespace-pre-wrap{white-space:pre-wrap}.whitespace-nowrap{white-space:nowrap}.text-white{color:var(--text-white)}.text-blue{color:var(--color-blue)}.text-green{color:var(--color-green)}.text-red{color:var(--color-red)}.text-purple{color:var(--color-purple)}.text-yellow{color:var(--color-yellow)}.bg-elevated{background:var(--bg-elevated)}.bg-input{background:var(--bg-input)}.bg-blue{background:var(--color-blue)}.bg-green{background:var(--color-green)}.bg-orange{background:var(--color-primary)}.bg-purple{background:var(--color-purple)}.border{border:1px solid var(--border-light)}.border-b{border-bottom:1px solid var(--border-light)}.border-t{border-top:1px solid var(--border-light)}.border-none{border:none}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.select-none{user-select:none}.pointer-events-none{pointer-events:none}.transition-fast{transition:all var(--duration-fast)}.transition-regular{transition:all var(--duration-regular)}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inline-code{font-family:var(--font-mono);background:#0003;border-radius:3px;padding:1px 4px;font-size:.85em}.btn-ghost{color:var(--text-secondary);cursor:pointer;padding:var(--space-sm-md);border-radius:var(--radius-regular);transition:color var(--duration-fast), background var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-tertiary)}.section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.helper-text,.label{font-size:var(--font-size-sm);color:var(--text-secondary)}.content-panel{padding:var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);min-height:100px;line-height:var(--line-height-relaxed);color:var(--text-primary);white-space:pre-wrap}.error-text{color:var(--color-red);font-size:var(--font-size-sm);text-align:center}.muted-text{color:var(--text-tertiary);text-align:center;padding:var(--space-xl)}.consumer-drawer__footer{padding-top:var(--space-md);border-top:1px solid var(--border-medium);margin-top:auto}.consumer-runtime{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-md-lg);border-radius:var(--radius-xl);background:var(--bg-secondary);border:1px solid var(--border-light);cursor:default;display:flex}.consumer-runtime__icon{color:var(--color-green);flex-shrink:0;display:flex}.consumer-runtime--unavailable .consumer-runtime__icon{color:var(--color-yellow)}.consumer-runtime__text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.consumer-runtime__headline{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:var(--line-height-tight)}.consumer-runtime__detail{font-size:var(--font-size-xs);color:var(--text-tertiary);line-height:var(--line-height-tight);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.accel-badge{padding:3px var(--space-sm-md);border-radius:var(--radius-full);font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;white-space:nowrap;flex-shrink:0;line-height:1.4}.accel-badge--gpu{background:var(--badge-green);color:var(--color-green)}.accel-badge--cpu{background:var(--bg-tertiary);color:var(--text-secondary)}.accel-badge--unavailable{background:var(--badge-yellow);color:var(--color-yellow)}#app{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.consumer-shell{background:var(--bg-primary);flex-direction:column;width:100%;height:100%;display:flex}.consumer-topbar{align-items:center;gap:var(--space-lg);height:58px;padding:0 var(--space-lg);border-bottom:1px solid var(--border-light);background:color-mix(in srgb, var(--bg-secondary) 88%, transparent);backdrop-filter:blur(18px);z-index:150;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.consumer-topbar__side{align-items:center;gap:var(--space-sm-md);min-width:0;display:flex}.consumer-topbar__side--right{justify-content:flex-end}.consumer-brand{align-items:center;gap:var(--space-sm-md);min-width:0;display:inline-flex}.consumer-brand__mark{flex-shrink:0;width:30px;height:30px;display:inline-block}.consumer-brand__name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);white-space:nowrap}.consumer-model-slot{justify-content:center;min-width:0;display:flex}.consumer-layout{flex:1;grid-template-columns:280px minmax(0,1fr);min-height:0;display:grid}.consumer-main{background:var(--bg-primary);flex-direction:column;min-width:0;min-height:0;display:flex}.consumer-drawer{background:var(--bg-secondary);border-right:1px solid var(--border-light);min-height:0;padding:var(--space-lg);gap:var(--space-lg);flex-direction:column;display:flex;overflow-y:auto}.consumer-drawer__header{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.consumer-drawer__eyebrow,.consumer-section-title{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:0}.consumer-drawer__title{margin-top:var(--space-xs);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.consumer-drawer__close.shell-icon-btn{display:none}.shell-icon-btn,.composer-icon-btn{border-radius:var(--radius-full);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast), transform var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.shell-icon-btn:hover,.composer-icon-btn:hover:not(:disabled),.composer-icon-btn.active{color:var(--color-primary);background:var(--color-primary-light)}.composer-icon-btn:disabled{color:var(--text-tertiary);cursor:not-allowed}.shell-icon-btn:active,.composer-icon-btn:active{transform:scale(.96)}.shell-icon-btn svg,.composer-icon-btn svg{width:20px;height:20px}.consumer-new-chat{border-radius:var(--radius-full);background:var(--color-primary);height:42px;color:var(--text-on-primary);justify-content:center;align-items:center;gap:var(--space-sm);font-weight:var(--font-weight-semibold);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;box-shadow:0 3px 12px var(--shadow-accent);transition:filter var(--duration-quick), transform var(--duration-quick);border:none;display:flex}.consumer-new-chat:hover{filter:brightness(1.06)}.consumer-new-chat:active{transform:scale(.98)}.consumer-new-chat svg{width:18px;height:18px}.consumer-recents{gap:var(--space-sm-md);flex-direction:column;display:flex}.consumer-recent-list{gap:var(--space-xs);flex-direction:column;display:flex}.consumer-recents__empty{padding:var(--space-sm) var(--space-md);color:var(--text-tertiary);font-size:var(--font-size-sm);margin:0}.consumer-recent-entry{border-radius:var(--radius-lg);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.consumer-recent-entry.active{background:var(--bg-tertiary)}.consumer-recent-row{text-align:left;border-radius:var(--radius-lg);min-width:0;color:var(--text-primary);padding:var(--space-md);cursor:pointer;transition:background var(--duration-quick);background:0 0;border:none}.consumer-recent-row:hover{background:var(--bg-tertiary)}.consumer-recent-delete{width:30px;height:30px;margin-right:var(--space-xs);border-radius:var(--radius-full);color:var(--text-tertiary);cursor:pointer;font:inherit;font-size:var(--font-size-lg);opacity:0;background:0 0;border:none;line-height:1}.consumer-recent-entry:hover .consumer-recent-delete,.consumer-recent-delete:focus-visible{opacity:1}.consumer-recent-delete:hover{background:var(--badge-red);color:var(--status-red)}@media (hover:none){.consumer-recent-delete{opacity:1}}.consumer-recent-row__title,.consumer-recent-row__meta{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.consumer-recent-row__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.consumer-recent-row__meta{color:var(--text-tertiary);font-size:var(--font-size-xs);margin-top:2px}.tab-bar.consumer-nav{justify-content:flex-start;align-items:stretch;gap:var(--space-lg);z-index:auto;background:0 0;border:none;flex-direction:column;height:auto;padding:0;display:flex}.consumer-nav-section{gap:var(--space-sm-md);flex-direction:column;display:flex}.tab-item.consumer-nav-item{align-items:center;gap:var(--space-md);width:100%;min-height:42px;padding:var(--space-sm) var(--space-sm-md);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;text-align:left;transition:background var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast);background:0 0;border:1px solid #0000;grid-template-columns:30px minmax(0,1fr);display:grid;position:relative}.tab-item.consumer-nav-item:hover,.tab-item.consumer-nav-item.active{background:var(--bg-tertiary);border-color:var(--border-light);color:var(--text-primary)}@keyframes nav-indicator-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.tab-item.consumer-nav-item.active:before{content:"";border-radius:var(--radius-full);background:var(--color-primary);width:3px;animation:nav-indicator-grow var(--duration-fast) var(--ease-out);position:absolute;top:25%;bottom:25%;left:-1px}.consumer-nav-item.active .consumer-nav-item__icon{background:var(--color-primary-light);color:var(--color-primary)}.consumer-nav-item__icon{border-radius:var(--radius-regular);background:0 0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.consumer-nav-item__icon svg{width:18px;height:18px}.consumer-nav-item__text,.consumer-nav-item__label,.consumer-nav-item__description{min-width:0;display:block}.consumer-nav-item__label{color:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.consumer-nav-item__description{display:none}.tab-content{flex:1;position:relative;overflow:hidden}.tab-panel{flex-direction:column;display:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}@keyframes panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tab-panel.active{animation:panel-enter var(--duration-fast) var(--ease-out);display:flex;position:absolute}.toolbar{height:var(--toolbar-height);padding:0 var(--space-lg);border-bottom:1px solid var(--border-light);background:var(--bg-secondary);z-index:2;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.toolbar-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.toolbar-model-btn{border-radius:var(--radius-full);background:var(--bg-tertiary);border:1.5px solid var(--border-light);cursor:pointer;max-width:min(360px,42vw);transition:all var(--duration-fast);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);align-items:center;gap:8px;padding:6px 14px 6px 12px;line-height:1.3;display:inline-flex;box-shadow:0 1px 3px #0000000f}.toolbar-model-btn:hover{background:var(--bg-hover);border-color:var(--color-primary);box-shadow:0 2px 8px #ff69001f}.toolbar-model-btn:active{transform:scale(.97)}.toolbar-model-btn svg.chevron{opacity:.6;width:14px;height:14px;transition:transform var(--duration-fast);flex-shrink:0}.toolbar-model-btn:hover svg.chevron{opacity:1;transform:translateY(1px)}.toolbar-model-btn svg.model-icon{opacity:.8;width:16px;height:16px;color:var(--color-primary);flex-shrink:0}#chat-toolbar-model-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toolbar-actions{gap:var(--space-sm-md);align-items:center;margin-left:auto;display:flex}.toolbar-back{margin-left:calc(var(--space-sm) * -1);margin-right:var(--space-xs);flex-shrink:0}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm-md) var(--space-lg);border:1px solid var(--border-light);border-radius:var(--radius-regular);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-fast);user-select:none;white-space:nowrap;display:inline-flex}.btn:hover:not(:disabled){background:var(--bg-gray5);border-color:var(--border-strong)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{cursor:not-allowed}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-on-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn:disabled,.btn-primary:disabled{background:var(--bg-tertiary);border-color:var(--border-light);color:var(--text-tertiary);box-shadow:none}.btn-icon{border-radius:var(--radius-regular);width:36px;height:36px;padding:0}.btn-circle{border-radius:var(--radius-full)}.btn-sm{padding:var(--space-xs) var(--space-sm-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--space-md-lg) var(--space-xl);font-size:var(--font-size-md)}.card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-card);padding:var(--space-lg)}.card-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md-lg);display:flex}.card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.card-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary)}.message-row{margin-bottom:var(--space-md-lg);padding:0 var(--space-lg);flex-direction:column;display:flex}.message-row.user{align-items:flex-end}.message-row.assistant{align-items:flex-start}.message-bubble{max-width:80%;padding:var(--space-md) var(--space-regular);border-radius:var(--radius-bubble);font-size:var(--font-size-base);line-height:var(--line-height-normal);word-wrap:break-word;overflow-wrap:break-word}.message-bubble.user{background:linear-gradient(135deg, var(--bubble-user-start), var(--bubble-user-end));color:var(--text-white);border-bottom-right-radius:var(--radius-sm)}.message-bubble.assistant{background:linear-gradient(135deg, var(--bubble-assistant-start), var(--bubble-assistant-end));color:var(--text-primary);border-bottom-left-radius:var(--radius-sm)}.model-badge{font-size:10px;font-weight:var(--font-weight-medium);color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-sm);align-items:center;gap:4px;margin-bottom:4px;padding:2px 8px;display:inline-flex}.model-badge svg{opacity:.6;width:10px;height:10px}.message-metrics{align-items:center;gap:var(--space-sm-md);padding:0 var(--space-xs);color:var(--text-tertiary);opacity:.7;margin-top:4px;font-size:11px;display:flex}.message-metrics .metric{align-items:center;gap:3px;display:inline-flex}.message-metrics .metric-value{font-weight:var(--font-weight-medium);color:var(--text-secondary)}.message-metrics .metric-separator{color:var(--border-strong);margin:0 2px}.thinking-section{background:var(--thinking-bg);border:1px solid var(--thinking-border);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-sm);cursor:pointer}.thinking-header{align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-medium);display:flex}.thinking-content{margin-top:var(--space-sm-md);padding:var(--space-sm-md);background:var(--thinking-content-bg);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);max-height:200px;display:none;overflow-y:auto}.thinking-section.expanded .thinking-content{display:block}.chat-input-area{align-items:flex-end;gap:var(--space-sm-md);padding:var(--space-md-lg) var(--space-lg);border-top:1px solid var(--border-light);background:var(--bg-secondary);display:flex}.chat-input{padding:var(--space-md) var(--space-regular);background:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-xl);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-base);resize:none;min-height:40px;max-height:120px;line-height:var(--line-height-normal);outline:none;flex:1}.chat-input:focus{border-color:var(--color-primary)}.chat-input::placeholder{color:var(--text-tertiary)}.send-btn{border-radius:var(--radius-full);background:var(--color-primary);width:40px;height:40px;color:var(--text-on-primary);cursor:pointer;transition:background var(--duration-fast), transform var(--duration-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send-btn:hover{background:var(--color-primary-hover)}.send-btn:active{transform:scale(.95)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.send-btn svg{width:18px;height:18px}.chat-panel-consumer{background:var(--bg-primary)}.chat-scroll{padding:var(--space-xl) max(var(--space-lg), calc((100% - 860px) / 2)) var(--space-xl)}.chat-composer-shell{width:100%;max-width:860px;padding:var(--space-sm-md) var(--space-lg) var(--space-lg);background:var(--bg-primary);flex-shrink:0;margin:0 auto}.chat-composer-shell--dropping .chat-input-area{border-color:var(--color-primary);background:var(--bg-tertiary);border-style:dashed}.chat-panel-consumer .chat-input-area{align-items:flex-end;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--border-light);border-radius:var(--radius-composer);background:var(--bg-elevated);box-shadow:var(--elevation-md);transition:border-color var(--duration-fast), box-shadow var(--duration-fast);display:flex}.chat-panel-consumer .chat-input-area:focus-within{border-color:var(--color-primary-medium);box-shadow:var(--elevation-md), 0 0 0 3px var(--color-primary-light)}.chat-panel-consumer .chat-input{min-height:40px;max-height:160px;padding:var(--space-md) var(--space-xs);font-size:var(--font-size-md);background:0 0;border:none;border-radius:0}.chat-panel-consumer .chat-input:focus{box-shadow:none;border:none}.chat-panel-consumer .composer-icon-btn{background:0 0;border:none}.chat-panel-consumer .composer-icon-btn:hover:not(:disabled),.chat-panel-consumer .composer-icon-btn.active{background:var(--color-primary-light)}.chat-panel-consumer .send-btn{border-radius:var(--radius-full);width:40px;height:40px}.chat-panel-consumer .send-btn:not(:disabled){box-shadow:0 4px 14px var(--shadow-accent)}.composer-menu-wrap{position:relative}.composer-menu{left:0;bottom:calc(100% + var(--space-sm-md));width:min(320px,100vw - 32px);padding:var(--space-sm-md);border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--bg-elevated);box-shadow:0 18px 48px var(--shadow-medium);z-index:90;position:absolute}.composer-menu button{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-sm-md);border-radius:var(--radius-regular);color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:34px minmax(0,1fr);display:grid}.composer-menu button:hover{background:var(--bg-tertiary)}.composer-menu svg{width:20px;height:20px;color:var(--color-primary)}.composer-menu strong,.composer-menu small{min-width:0;display:block}.composer-menu strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.composer-menu small{color:var(--text-tertiary);font-size:var(--font-size-xs);margin-top:1px}.composer-status-pill{align-items:center;gap:var(--space-sm-md);width:fit-content;max-width:100%;margin:0 0 var(--space-sm-md);padding:var(--space-sm-md) var(--space-md);border:1px solid var(--border-light);border-radius:var(--radius-regular);background:var(--bg-secondary);color:var(--text-primary);box-shadow:0 4px 16px var(--shadow-default);display:inline-flex}.composer-status-pill svg{width:18px;height:18px;color:var(--color-primary);flex-shrink:0}.composer-status-pill span{min-width:0}.composer-status-pill strong,.composer-status-pill small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.composer-status-pill strong{font-size:var(--font-size-sm)}.composer-status-pill small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.composer-status-pill button{border-radius:var(--radius-full);background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;display:flex}.composer-status-pill button svg{color:currentColor;width:15px;height:15px}.composer-status-pill--tools{color:var(--color-primary);background:var(--color-primary-light);border-color:var(--color-primary-medium)}.chat-message{gap:var(--space-xs);margin-bottom:var(--space-xl);animation:chat-message-in var(--duration-fast) var(--ease-out);flex-direction:column;display:flex}@keyframes chat-message-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-message--user{align-items:flex-end}.chat-message--assistant{align-items:flex-start}.chat-message .chat-bubble{line-height:var(--line-height-relaxed);overflow-wrap:anywhere}.chat-message--user .chat-bubble{max-width:min(76%,560px);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-bubble);border-bottom-right-radius:var(--radius-md);background:linear-gradient(135deg, var(--bubble-user-start), var(--bubble-user-end));color:var(--text-white);box-shadow:var(--elevation-sm)}.chat-message--assistant .chat-bubble{max-width:100%;padding:var(--space-xs) 0;color:var(--text-primary);background:0 0;border:none}.chat-cursor{width:9px;height:9px;margin-left:var(--space-xs);border-radius:var(--radius-full);background:var(--color-primary);vertical-align:baseline;animation:chat-cursor-pulse var(--ambient-breathe) linear infinite;display:inline-block}@keyframes chat-cursor-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.chat-msg-actions{gap:var(--space-xs);margin-top:var(--space-xs);opacity:0;transition:opacity var(--duration-quick) var(--ease-out);display:flex}.chat-message:hover .chat-msg-actions,.chat-msg-actions:focus-within{opacity:1}.chat-action-btn{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm-md);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration-quick), color var(--duration-quick);background:0 0;border:none;display:inline-flex}.chat-action-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chat-action-btn svg{width:14px;height:14px}.chat-thinking{width:fit-content;max-width:100%;margin-bottom:var(--space-sm);border:1px solid var(--thinking-border);border-radius:var(--radius-xl);background:var(--thinking-bg);overflow:hidden}.chat-thinking summary{align-items:center;gap:var(--space-sm);padding:var(--space-sm-md) var(--space-md-lg);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;user-select:none;list-style:none;display:flex}.chat-thinking summary::-webkit-details-marker{display:none}.chat-thinking summary:before{content:"";width:7px;height:7px;transition:transform var(--duration-quick) var(--ease-out);border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;transform:rotate(-45deg)}.chat-thinking[open] summary:before{transform:rotate(45deg)}.chat-thinking-content{margin:0 var(--space-md-lg) var(--space-md-lg);padding:var(--space-md);border-radius:var(--radius-regular);background:var(--thinking-content-bg);color:var(--text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family);line-height:var(--line-height-relaxed);max-height:240px;overflow-y:auto}.md-p,.md-heading,.md-list,.md-quote,.md-code,.md-rule{margin:0}.md-p+*,.md-heading+*,.md-list+*,.md-quote+*,.md-code+*,.md-rule+*{margin-top:var(--space-sm-md)}.md-p{line-height:var(--line-height-relaxed)}.md-heading{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}*+.md-heading{margin-top:var(--space-lg)}.md-heading--1,.md-heading--2{font-size:var(--font-size-lg)}.md-heading--3{font-size:var(--font-size-md)}.md-heading--4,.md-heading--5,.md-heading--6{font-size:var(--font-size-base)}.md-list{padding-left:var(--space-xl);line-height:var(--line-height-relaxed)}.md-list li+li,.md-list .md-list{margin-top:var(--space-xs)}.md-list::marker,.md-list li::marker{color:var(--text-tertiary)}.md-quote{padding-left:var(--space-md-lg);border-left:3px solid var(--border-medium);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.md-rule{border:0;border-top:1px solid var(--border-light)}.md-code{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-secondary);overflow:hidden}.md-code__head{justify-content:space-between;align-items:center;gap:var(--space-sm-md);min-height:32px;padding:0 var(--space-sm-md) 0 var(--space-regular);border-bottom:1px solid var(--border-light);background:var(--bg-tertiary);display:flex}.md-code__lang{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:lowercase}.md-code__copy{padding:var(--space-xs) var(--space-sm-md);border-radius:var(--radius-sm);color:var(--text-tertiary);font-family:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--duration-micro) var(--ease-standard), background var(--duration-micro) var(--ease-standard);background:0 0;border:0;margin-left:auto}.md-code__copy:hover{color:var(--text-primary);background:var(--bg-secondary)}.md-code__copy:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.md-code__body{padding:var(--space-md) var(--space-regular);font-family:var(--font-mono);font-size:var(--font-size-sm);white-space:pre;margin:0;line-height:1.6;overflow-x:auto}.md-code__body code{font:inherit;background:0 0;padding:0}.chat-bubble code,.docs-answer-text code{font-family:var(--font-mono);border-radius:var(--radius-sm);background:var(--bg-tertiary);padding:1px 5px;font-size:.9em}.chat-message--user .chat-bubble code{background:#00000038}.chat-message--user .md-code{color:var(--text-white);background:#00000038;border-color:#ffffff2e}.chat-message--user .md-code__head{background:#0000002e;border-color:#ffffff2e}.chat-message--user .md-code__lang,.chat-message--user .md-code__copy{color:#ffffffb8}.chat-message--user .md-code__copy:hover{color:var(--text-white);background:#0000003d}.chat-message--user .md-quote{color:#ffffffe0;border-left-color:#fff6}.chat-message--user .md-rule{border-top-color:#ffffff3d}.chat-message--user .md-list::marker,.chat-message--user .md-list li::marker{color:#fff9}.chat-message--user .chat-bubble a{color:var(--text-white)}.chat-bubble-typing{color:var(--text-tertiary)}.chat-error{color:var(--text-danger);line-height:var(--line-height-relaxed);margin:0}.chat-attachment-card{align-items:center;gap:var(--space-sm-md);width:min(280px,100%);margin-bottom:var(--space-sm-md);padding:var(--space-sm-md);border-radius:var(--radius-regular);background:#ffffff24;display:flex}.chat-message--assistant .chat-attachment-card{background:var(--bg-tertiary)}.chat-attachment-card svg{flex-shrink:0;width:18px;height:18px}.chat-attachment-card span,.chat-attachment-card strong,.chat-attachment-card small{min-width:0;display:block}.chat-attachment-card strong,.chat-attachment-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-attachment-card strong{font-size:var(--font-size-sm)}.chat-attachment-card small{opacity:.82;font-size:var(--font-size-xs)}.chat-tool-stack{gap:var(--space-sm);flex-direction:column;width:100%;display:flex}.chat-tool-call{border:1px solid var(--border-light);border-radius:var(--radius-regular);background:var(--bg-secondary);overflow:hidden}.chat-tool-call summary{align-items:center;gap:var(--space-sm-md);padding:var(--space-sm-md) var(--space-md);cursor:pointer;color:var(--text-primary);display:flex}.chat-tool-call summary svg{width:16px;height:16px;color:var(--color-primary)}.chat-tool-call summary small{color:var(--text-tertiary);font-size:var(--font-size-xs);margin-left:auto}.chat-tool-call pre,.chat-thinking-content,.chat-source span{white-space:pre-wrap;overflow-wrap:break-word}.chat-tool-call pre{padding:var(--space-md);border-top:1px solid var(--border-light);background:var(--bg-tertiary);color:var(--text-secondary);font-size:var(--font-size-xs);font-family:var(--font-mono);margin:0}.chat-source-strip{margin-top:var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.chat-source-strip__label{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:0}.chat-source{padding:var(--space-sm-md);border-radius:var(--radius-regular);background:var(--bg-tertiary);flex-direction:column;gap:2px;display:flex}.chat-source strong{font-size:var(--font-size-xs)}.chat-source span{color:var(--text-secondary);font-size:var(--font-size-xs)}.modal-backdrop{background:var(--overlay-medium);z-index:200;animation:fade-in var(--duration-fast) ease-out;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-sheet{background:var(--bg-secondary);border-radius:var(--radius-modal) var(--radius-modal) 0 0;width:100%;max-width:600px;max-height:85vh;animation:slide-up var(--duration-regular) var(--ease-out);flex-direction:column;display:flex}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (min-width:720px){.modal-backdrop{padding:var(--space-2xl);align-items:center}.modal-sheet{border-radius:var(--radius-modal);border:1px solid var(--border-light);box-shadow:var(--elevation-lg);max-height:min(720px,85vh);animation:dialog-in var(--duration-fast) var(--ease-out)}.modal-sheet .modal-handle{display:none}.modal-sheet .modal-header{padding-top:var(--space-lg)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-handle{background:var(--border-strong);border-radius:var(--radius-full);width:36px;height:4px;margin:var(--space-sm-md) auto var(--space-md)}.modal-header{padding:0 var(--space-lg) var(--space-md-lg);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.modal-body{padding:var(--space-lg);flex:1;overflow-y:auto}.model-section{margin-bottom:var(--space-lg)}.model-section__title{align-items:baseline;gap:var(--space-sm-md);padding:var(--space-sm) var(--space-md-lg);color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;display:flex}.model-section__title small{font-weight:var(--font-weight-normal);text-transform:none;letter-spacing:0}.model-row{align-items:center;gap:var(--space-md-lg);padding:var(--space-md-lg);border-radius:var(--radius-xl);cursor:pointer;transition:background var(--duration-fast);display:flex}.model-row:hover{background:var(--bg-tertiary)}.model-row--loaded{background:var(--color-primary-light)}.model-description{color:var(--text-secondary);font-size:var(--font-size-xs);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin-top:1px;display:-webkit-box;overflow:hidden}.model-capability-badge{border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-medium);padding:1px 6px}.model-capability-badge--thinking{background:var(--badge-purple);color:var(--color-purple)}.model-logo{border-radius:var(--radius-regular);background:var(--bg-gray5);width:40px;height:40px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.model-info{flex:1;min-width:0}.model-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-base);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.model-meta{align-items:center;gap:var(--space-sm);margin-top:2px;display:flex}.model-framework-badge{border-radius:var(--radius-sm);background:var(--badge-primary);color:var(--color-primary);font-size:10px;font-weight:var(--font-weight-medium);padding:1px 6px}.model-size{font-size:var(--font-size-xs);color:var(--text-tertiary)}.model-action-btn{padding:var(--space-sm-md) var(--space-regular);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:var(--font-family);cursor:pointer;transition:transform var(--duration-quick), filter var(--duration-quick);border:none;flex-shrink:0}.model-action-btn:not(:disabled):hover{filter:brightness(1.08)}.model-action-btn:not(:disabled):active{transform:scale(.97)}.model-action-btn.download{background:var(--color-primary);color:var(--text-on-primary);box-shadow:0 2px 10px var(--shadow-accent)}.model-action-btn.load{background:var(--badge-green);color:var(--color-green)}.model-action-btn.loaded{background:var(--badge-green);color:var(--color-green);cursor:pointer}.model-action-btn--progress{background:var(--bg-tertiary);color:var(--text-secondary);font-variant-numeric:tabular-nums}.model-action-btn--retry{background:var(--badge-red);color:var(--color-red)}.model-action-btn--cancel{background:var(--bg-tertiary);color:var(--text-secondary)}.model-action-btn--cancel:not(:disabled):hover{background:var(--badge-red);color:var(--color-red)}.model-action-btn--unavailable{background:var(--bg-tertiary);max-width:168px;color:var(--text-tertiary);cursor:not-allowed;line-height:1.15}.model-compatibility-reason{color:var(--text-secondary);font-size:var(--font-size-xs);white-space:normal;margin-top:6px;line-height:1.4}.model-compatibility-reason a{color:var(--color-primary);font-weight:var(--font-weight-medium)}.model-row-error{font-size:var(--font-size-xs);color:var(--color-red);margin-top:4px}.device-banner{align-items:center;gap:var(--space-md-lg);padding:var(--space-md-lg) var(--space-lg);margin-bottom:var(--space-lg);border-radius:var(--radius-card);background:linear-gradient(135deg, var(--color-primary-light), var(--bg-tertiary));border:1px solid var(--border-light);display:flex}.device-banner__glyph{border-radius:var(--radius-regular);width:40px;height:40px;color:var(--color-primary);background:var(--bg-secondary);box-shadow:var(--elevation-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.device-banner__glyph svg{width:22px;height:22px}.device-banner__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.device-banner__meta{color:var(--text-secondary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;letter-spacing:.01em;margin-top:2px}.engine-banner{align-items:flex-start;gap:var(--space-md-lg);padding:var(--space-md-lg) var(--space-lg);margin-bottom:var(--space-lg);border-radius:var(--radius-card);background:var(--badge-yellow);border:1px solid var(--color-yellow);display:flex}.engine-banner__glyph{border-radius:var(--radius-regular);width:40px;height:40px;color:var(--color-yellow);background:var(--bg-secondary);box-shadow:var(--elevation-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.engine-banner__text{flex:1;min-width:0}.engine-banner__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.engine-banner__meta{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);margin-top:2px}.engine-banner__details{margin-top:var(--space-sm);font-size:var(--font-size-xs)}.engine-banner__details summary{cursor:pointer;color:var(--text-tertiary);padding:var(--space-xs) 0}.engine-banner__details summary:hover{color:var(--text-secondary)}.engine-banner__diagnostic{margin:var(--space-xs) 0 0;padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;font-size:11px;line-height:1.5;overflow-y:auto}.model-search{margin-bottom:var(--space-lg);position:relative}.model-search__icon{left:var(--space-md-lg);width:16px;height:16px;color:var(--text-tertiary);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.model-search__input{width:100%;padding:var(--space-sm-md) var(--space-md-lg) var(--space-sm-md) 38px;border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-input);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);transition:border-color var(--duration-fast), box-shadow var(--duration-fast)}.model-search__input::placeholder{color:var(--text-tertiary)}.model-search__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.model-search__input::-webkit-search-cancel-button{cursor:pointer}.model-empty{padding:var(--space-xl) var(--space-md);text-align:center}.model-sheet-hf-btn{align-items:center;gap:var(--space-xs);margin:0 0 var(--space-md);display:inline-flex}.hf-hint{font-size:var(--font-size-xs);margin:0 0 var(--space-md)}.hf-empty,.hf-error{padding:var(--space-lg) var(--space-md);text-align:center;font-size:var(--font-size-sm)}.hf-repo-list{gap:var(--space-xs);flex-direction:column;display:flex}.hf-repo-row{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--bg-input);color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--duration-fast), border-color var(--duration-fast);display:flex}.hf-repo-row:hover{background:var(--bg-tertiary);border-color:var(--border-strong)}.hf-repo-row__info{flex:1;min-width:0}.hf-repo-row__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);word-break:break-word}.hf-repo-row__meta{gap:var(--space-md);color:var(--text-tertiary);font-size:var(--font-size-xs);margin-top:2px;display:flex}.hf-repo-row__chevron{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.hf-repo-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);word-break:break-word;margin-bottom:var(--space-md)}.hf-back-btn{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md);padding:var(--space-xs) var(--space-sm-md);color:var(--color-primary);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;display:inline-flex}.hf-file-list{gap:var(--space-xs);flex-direction:column;display:flex}.hf-file-row{align-items:center;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--border-light);border-radius:var(--radius-xl);display:flex}.hf-file-row__info{flex:1;min-width:0}.hf-file-row__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);word-break:break-word}.hf-file-row__meta{align-items:center;gap:var(--space-sm-md);margin-top:4px;display:flex}.hf-file-row__size{color:var(--text-tertiary);font-size:var(--font-size-xs)}.hf-file-row__warning{margin-top:var(--space-sm);color:var(--color-warning,#ff9800);font-size:var(--font-size-xs);line-height:1.4}.model-section__title--reco{align-items:center;gap:var(--space-xs);color:var(--color-primary);display:flex}.reco-grid{gap:var(--space-md);margin-bottom:var(--space-md-lg);flex-direction:column;display:flex}.reco-card{padding:var(--space-md-lg) var(--space-lg);border-radius:var(--radius-card);background:var(--bg-tertiary);border:1px solid var(--border-light);transition:border-color var(--duration-fast), transform var(--duration-quick), box-shadow var(--duration-fast)}.reco-card:hover{border-color:var(--border-strong);box-shadow:var(--elevation-sm);transform:translateY(-1px)}.reco-card--default{background:linear-gradient(135deg, var(--color-primary-light), var(--bg-tertiary));border-color:var(--color-primary-medium);box-shadow:0 4px 18px var(--shadow-accent)}.reco-card--loaded{border-color:var(--color-green)}.reco-card__head{align-items:center;gap:var(--space-md-lg);display:flex}.reco-card__logo{width:36px;height:36px}.reco-card__title-wrap{flex:1;min-width:0}.reco-card__name{align-items:center;gap:var(--space-sm);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);flex-wrap:wrap;display:flex}.reco-card__best{font-size:10px;font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);background:var(--color-primary);color:var(--text-on-primary);text-transform:uppercase;letter-spacing:.03em;padding:2px 8px}.reco-card__size{color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;margin-top:2px}.reco-card__tags{gap:var(--space-xs);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.model-subsection__title{padding:var(--space-sm) var(--space-md-lg);color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.family-list{gap:var(--space-md);flex-direction:column;display:flex}.family-card{border-radius:var(--radius-card);background:var(--bg-tertiary);border:1px solid var(--border-light);transition:border-color var(--duration-fast), box-shadow var(--duration-fast);overflow:hidden}.family-card:hover{border-color:var(--border-strong)}.family-card--expanded{border-color:var(--border-strong);box-shadow:var(--elevation-sm)}.family-card__head{align-items:center;gap:var(--space-md-lg);width:100%;padding:var(--space-md-lg) var(--space-lg);cursor:pointer;font-family:var(--font-family);color:inherit;text-align:left;background:0 0;border:none;display:flex}.family-card__logo{width:40px;height:40px}.family-card__body{flex:1;min-width:0}.family-card__name-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.family-card__name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.family-card__tagline{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);margin-top:2px}.family-card__status{font-size:10px;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);background:var(--badge-gray);color:var(--text-secondary);padding:2px 8px}.family-card__status--active{background:var(--badge-green);color:var(--color-green)}.family-card__aside{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.family-card__count{color:var(--text-tertiary);font-size:var(--font-size-xs);white-space:nowrap}.family-card__chevron{color:var(--text-tertiary);transition:transform var(--duration-fast) var(--ease-out)}.family-card--expanded .family-card__chevron{transform:rotate(180deg)}.family-variants{padding:0 var(--space-lg) var(--space-md-lg);gap:var(--space-xs);border-top:1px solid var(--border-light);flex-direction:column;display:flex}.variant-row{align-items:center;gap:var(--space-md-lg);padding:var(--space-md) var(--space-md);margin-top:var(--space-sm);border-radius:var(--radius-lg);transition:background var(--duration-fast);display:flex}.variant-row:hover{background:var(--bg-gray5)}.variant-row--best{background:var(--color-primary-light)}.variant-row--loaded{background:var(--badge-green)}.variant-row__info{flex:1;min-width:0}.variant-row__name{align-items:center;gap:var(--space-sm);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.variant-row__best{font-size:10px;font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);background:var(--color-primary);color:var(--text-on-primary);text-transform:uppercase;letter-spacing:.03em;padding:1px 7px}.variant-row__meta{align-items:center;gap:var(--space-sm);color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;flex-wrap:wrap;margin-top:3px;display:flex}.variant-row__size{font-weight:var(--font-weight-medium);color:var(--text-secondary)}.variant-row__feel{color:var(--text-tertiary)}.backend-pill{font-size:10px;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);background:var(--badge-gray);color:var(--text-secondary);white-space:nowrap;padding:1px 7px}.tag-pill{font-size:10px;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);padding:2px 8px;line-height:1.5}.tag-pill--feel{background:var(--badge-gray);color:var(--text-secondary)}.tag-pill--capability{background:var(--badge-blue);color:var(--color-blue)}.setup-card{margin:var(--space-lg);max-width:720px;padding:var(--space-xl);border-radius:var(--radius-card);background:linear-gradient(135deg, var(--color-primary-light), var(--bg-secondary));border:1px solid var(--border-light)}.setup-card--plain{background:var(--bg-secondary)}.setup-card__head{align-items:center;gap:var(--space-md-lg);margin-bottom:var(--space-lg);display:flex}.setup-card__glyph{border-radius:var(--radius-regular);width:44px;height:44px;color:var(--color-primary);background:var(--bg-secondary);box-shadow:var(--elevation-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.setup-card__glyph svg{width:24px;height:24px}.setup-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.setup-card__subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin-top:2px}.setup-card__slots{gap:var(--space-sm);flex-direction:column;display:flex}.model-slot{align-items:center;gap:var(--space-md-lg);padding:var(--space-md-lg);border-radius:var(--radius-xl);background:var(--bg-secondary);border:1px solid var(--border-light);transition:border-color var(--duration-fast);display:flex}.model-slot--loaded{border-color:var(--color-green)}.model-slot--error{border-color:var(--color-red)}.model-slot--missing{opacity:.6}.model-slot--blocked{border-color:var(--color-yellow)}.model-slot__icon{border-radius:var(--radius-regular);background:var(--bg-gray5);width:36px;height:36px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.model-slot__body{flex:1;min-width:0}.model-slot__label{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.model-slot__opt{margin-left:var(--space-xs);font-weight:var(--font-weight-normal);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.model-slot__hint{color:var(--text-secondary);font-size:var(--font-size-xs);margin-top:2px}.model-slot__progress{margin-top:var(--space-sm);max-width:220px}.model-slot__blocked{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);overflow-wrap:anywhere}.model-slot__aside{align-items:center;gap:var(--space-md);flex-shrink:0;display:flex}.model-slot__state{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap}.model-slot__state--ready{color:var(--color-green)}.model-slot__state--error{color:var(--color-red)}.model-slot__state--blocked{color:var(--color-yellow)}.model-slot__state--pending{color:var(--text-tertiary)}.model-slot__change{cursor:pointer;font-family:var(--font-family);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);background:0 0;border:none}.model-slot__change:hover{background:var(--color-primary-light)}.setup-card__actions{margin-top:var(--space-lg);align-items:flex-start;gap:var(--space-sm);flex-direction:column;display:flex}.setup-card__note,.setup-card__ready{color:var(--text-secondary);font-size:var(--font-size-xs)}.setup-card__ready{align-items:center;gap:var(--space-sm);display:flex}.chat-model-overlay{min-height:0;padding:var(--space-xl);flex:1;justify-content:center;align-items:safe center;display:flex;position:relative;overflow-y:auto}.chat-model-overlay.hidden,.chat-model-overlay.chat-model-overlay--conversation-visible{display:none!important}.chat-panel--model-blocked>#chat-messages{display:none}.chat-model-overlay-card{width:100%;max-width:420px;padding:var(--space-xl);text-align:center;animation:chat-message-in var(--duration-regular) var(--ease-out);flex-direction:column;align-items:center;margin:auto;display:flex}.chat-model-overlay-glyph{width:84px;height:84px;margin-bottom:var(--space-xl);border-radius:var(--radius-full);background:radial-gradient(circle at 30% 30%, var(--color-primary-medium), var(--color-primary-light));color:var(--color-primary);justify-content:center;align-items:center;display:flex}.chat-model-overlay-glyph svg{width:40px;height:40px}.chat-model-overlay-glyph--warning{background:var(--badge-yellow);color:var(--color-yellow)}.chat-model-overlay-details{width:100%;max-width:340px;margin-top:var(--space-lg);text-align:left}.chat-model-overlay-title{margin:0 0 var(--space-md);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em}.chat-model-overlay-description{color:var(--text-secondary);margin:0 0 var(--space-xl);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);max-width:340px}.chat-model-overlay-privacy{align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);color:var(--text-tertiary);font-size:var(--font-size-sm);display:inline-flex}.chat-model-overlay-privacy svg{width:14px;height:14px}@media (max-height:560px){.chat-model-overlay{padding:var(--space-md) var(--space-xl)}.chat-model-overlay-card{padding:0}.chat-model-overlay-glyph{width:52px;height:52px;margin-bottom:var(--space-md)}.chat-model-overlay-glyph svg{width:26px;height:26px}.chat-model-overlay-title{margin-bottom:var(--space-sm);font-size:var(--font-size-xl)}.chat-model-overlay-description{margin-bottom:var(--space-lg);font-size:var(--font-size-base);line-height:var(--line-height-normal)}.chat-model-overlay-privacy,.chat-model-overlay-details{margin-top:var(--space-md)}@media (min-width:640px){.chat-model-overlay-card{column-gap:var(--space-lg);text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:start;max-width:620px;display:grid}.chat-model-overlay-card>*{grid-column:2;justify-self:start}.chat-model-overlay-glyph{grid-area:1/1;margin-bottom:0}.chat-model-overlay-description{max-width:none}}}.badge{border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-medium);align-items:center;padding:2px 8px;display:inline-flex}.badge-green{background:var(--badge-green);color:var(--color-green)}.badge-blue{background:var(--badge-blue);color:var(--color-blue)}.badge-grey{background:var(--badge-gray);color:var(--text-secondary)}.badge-red{background:var(--badge-red);color:var(--color-red)}.badge-yellow{background:var(--badge-yellow);color:var(--color-yellow)}.storage-model-list{gap:var(--space-sm);flex-direction:column;display:flex}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.progress-bar{background:var(--bg-gray5);border-radius:var(--radius-full);width:100%;height:4px;overflow:hidden}.progress-fill{background:var(--color-primary);border-radius:var(--radius-full);height:100%;transition:width var(--duration-standard) var(--ease-in-out)}.progress-bar--indeterminate .progress-fill{background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary) 35%, color-mix(in srgb, var(--color-primary) 45%, white) 50%, var(--color-primary) 65%, var(--color-primary) 100%);animation:progress-sweep var(--ambient-shimmer) linear infinite;background-size:220% 100%}@keyframes progress-sweep{0%{background-position:120% 0}to{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.progress-bar--indeterminate .progress-fill{animation:none}}.progress-detail{margin-top:var(--space-xs);color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.toast{top:var(--space-lg);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-xl);align-items:center;gap:var(--space-sm-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);box-shadow:0 8px 32px var(--shadow-default);backdrop-filter:blur(20px);z-index:300;transition:transform var(--duration-regular) ease-out;pointer-events:none;display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(-100%)}.toast.show{transform:translate(-50%)translateY(0)}.toast--success>svg{color:var(--color-green)}.toast--warning>svg{color:var(--color-primary)}.toast--info>svg{color:var(--color-blue)}.toast>span{color:var(--text-primary)}.voice-canvas-container{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.voice-canvas{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.mic-btn{width:var(--icon-2xl);height:var(--icon-2xl);border-radius:var(--radius-full);background:var(--color-primary);color:#fff;cursor:pointer;z-index:10;transition:transform var(--duration-fast), box-shadow var(--duration-fast);border:none;justify-content:center;align-items:center;display:flex;position:relative}.mic-btn:hover{box-shadow:0 0 30px var(--shadow-accent);transform:scale(1.05)}.mic-btn:active{transform:scale(.95)}.mic-btn.listening{animation:mic-pulse var(--ambient-breathe) linear infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 0 var(--ring-pulse-from)}50%{box-shadow:0 0 0 20px var(--ring-pulse-to)}}.mic-btn svg{width:28px;height:28px}.voice-interface{flex-direction:column;flex:1}.voice-interface:not(.hidden){display:flex}.voice-status-panel{padding:var(--space-lg);text-align:center}.voice-response-area{max-height:150px;margin-top:var(--space-md);text-align:left}.feature-list{padding:var(--space-lg);gap:var(--space-sm);flex-direction:column;display:flex}.feature-row{align-items:center;gap:var(--space-lg);padding:var(--space-md-lg) var(--space-lg);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--duration-fast);display:flex}.feature-row:hover{background:var(--bg-tertiary)}.feature-icon{border-radius:var(--radius-lg);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.feature-text{flex:1}.feature-text h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.feature-text p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:2px}.settings-form{padding:var(--space-lg);gap:var(--space-xl);flex-direction:column;flex:1;display:flex;overflow-y:auto}.settings-section{gap:var(--space-md);flex-direction:column;display:flex}.settings-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:0 var(--space-xs)}.setting-row{padding:var(--space-md-lg) var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;display:flex}.setting-label{font-size:var(--font-size-base)}.setting-value{font-size:var(--font-size-base);color:var(--text-secondary)}.setting-row--link{color:var(--color-primary);transition:background var(--duration-micro) var(--ease-standard);text-decoration:none}.setting-row--link:hover{background:var(--bg-tertiary)}.setting-row--link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.setting-hint{padding:0 var(--space-xs);color:var(--text-tertiary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.setting-row+.setting-hint{margin-top:calc(-1 * var(--space-sm));padding-left:var(--space-lg);padding-right:var(--space-lg)}.setting-hint a{color:var(--color-primary)}.setting-hint code{font-family:var(--font-mono);font-size:.95em}.setting-saved{padding:0 var(--space-xs);color:var(--color-green);font-size:var(--font-size-sm);line-height:var(--line-height-normal);opacity:0;min-height:1.5em;transition:opacity var(--duration-fast);margin:0}.setting-saved--visible{opacity:1}.setting-saved--error{color:var(--color-yellow)}.setting-row--stacked{align-items:stretch;gap:var(--space-sm-md);flex-direction:column}input[type=range]{appearance:none;width:120px;height:var(--hit-touch);cursor:pointer;background:0 0;outline:none;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:var(--control-track-off);height:4px}input[type=range]::-moz-range-track{border-radius:var(--radius-full);background:var(--control-track-off);height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border-radius:var(--radius-full);background:var(--color-primary);cursor:pointer;width:18px;height:18px;box-shadow:0 0 0 1px var(--bg-primary);margin-top:-7px}input[type=range]::-moz-range-thumb{border:1px solid var(--bg-primary);border-radius:var(--radius-full);background:var(--color-primary);cursor:pointer;width:18px;height:18px}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--focus-ring)}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:var(--focus-ring)}.speak-rate{align-items:center;gap:var(--space-md-lg);margin:var(--space-md-lg) 0;display:flex}.speak-rate__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.speak-rate__slider{flex:1;max-width:240px}.speak-rate__value{min-width:3.25rem;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--text-secondary)}.toggle{border-radius:var(--radius-full);background:var(--control-track-off);cursor:pointer;width:48px;height:28px;transition:background var(--duration-fast);border:none;flex:none;padding:0;position:relative}.toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.toggle.on{background:var(--color-primary)}.toggle:after{content:"";border-radius:var(--radius-full);width:24px;height:24px;transition:transform var(--duration-fast);background:#fff;position:absolute;top:2px;left:2px;box-shadow:0 0 0 1px #3a3733}.toggle.on:after{transform:translate(20px)}.text-input{padding:var(--space-sm-md) var(--space-md-lg);background:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-regular);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-base);outline:none;width:200px}.text-input:focus{border-color:var(--color-primary)}.loading-screen{background:var(--bg-primary);z-index:1000;justify-content:center;align-items:center;gap:var(--space-2xl);transition:opacity var(--duration-slow), visibility var(--duration-slow);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.loading-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.loading-logo{width:100px;height:100px;animation:logo-pulse var(--ambient-breathe) linear infinite}@keyframes logo-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}.loading-text{text-align:center}.loading-text h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm-md)}.loading-text p{color:var(--text-secondary);font-size:var(--font-size-base)}.loading-bar{background:var(--bg-gray5);border-radius:var(--radius-full);width:200px;height:3px;overflow:hidden}.loading-bar-fill{background:var(--color-primary);border-radius:var(--radius-full);width:40%;height:100%;animation:loading-sweep var(--ambient-shimmer) linear infinite;will-change:transform}@keyframes loading-sweep{0%{transform:translate(-100%)}to{transform:translate(250%)}}.error-view{justify-content:center;align-items:center;gap:var(--space-xl);padding:var(--space-3xl);text-align:center;flex-direction:column;flex:1;display:flex}.error-icon{color:var(--color-primary);font-size:60px}.scroll-area{flex:1;overflow:hidden auto}.sub-view{background:var(--bg-primary);z-index:60;flex-direction:column;display:none;position:absolute;top:0;bottom:0;left:0;right:0}.sub-view.active{display:flex}.back-btn{align-items:center;gap:var(--space-xs);color:var(--color-primary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--space-sm-md);background:0 0;border:none;display:flex}.storage-overview{gap:var(--space-md);padding:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.storage-stat{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center}.storage-stat .value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.storage-stat .label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.device-info{gap:var(--space-md);padding:var(--space-md-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);display:flex}.device-info-item{text-align:center;flex:1}.device-info-item .value{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.device-info-item .label{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:2px}.stt-mode-btn{padding:var(--space-sm-md) var(--space-md-lg);border-radius:var(--radius-regular);border:1.5px solid var(--border-light);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-fast);background:0 0;justify-content:center;align-items:center;gap:6px;display:inline-flex}.stt-mode-btn:hover{border-color:var(--border-strong)}.stt-mode-btn.active{border-color:var(--color-blue);color:var(--color-blue);background:#3b82f614}.stt-mode-btn svg{flex-shrink:0;width:14px;height:14px}.vision-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.vision-camera-container{background:#000;flex:1;min-height:0;position:relative;overflow:hidden}.vision-camera-container video{object-fit:cover;width:100%;height:100%}.vision-processing-overlay{background:linear-gradient(#0000,#0009);justify-content:center;align-items:center;gap:8px;padding:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.vision-description-panel{padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-top:1px solid var(--border-light);max-height:150px;overflow-y:auto}.vision-description-header{margin-bottom:var(--space-xs);justify-content:space-between;align-items:center;display:flex}.vision-description-text{font-size:var(--font-size-sm);color:var(--text-primary);white-space:pre-wrap;line-height:1.5}.vision-metrics{align-items:center;gap:var(--space-sm);font-size:var(--font-size-xs);color:var(--text-tertiary);padding-top:var(--space-xs);display:flex}.vision-control-bar{padding:var(--space-md) var(--space-lg);background:var(--bg-primary);border-top:1px solid var(--border-light);justify-content:center;align-items:center;gap:24px;display:flex}.vision-control-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);border-radius:var(--radius-md);transition:color var(--duration-fast);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:4px 8px;display:flex}.vision-control-btn:hover{color:var(--text-primary)}.vision-control-btn.active,.vision-control-btn.active span{color:var(--color-green)}.vision-capture-btn{border:3px solid var(--color-primary);background:var(--color-primary-medium);width:64px;height:64px;color:var(--color-primary);cursor:pointer;transition:all var(--duration-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.vision-capture-btn:hover{background:#ff690040;transform:scale(1.05)}.vision-analyzing-label{font-size:var(--font-size-xs);color:#fffc}.vision-capture-btn:active{transform:scale(.95)}.vision-capture-btn.live{border-color:var(--color-red);color:var(--color-red);background:#ef444426}.tool-call-pill{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--bg-tertiary);border:1px solid var(--border-light);cursor:pointer;transition:background var(--duration-fast);align-items:center;gap:4px;margin:4px 2px;padding:3px 10px;display:inline-flex}.tool-call-pill:hover{background:var(--bg-secondary)}.tool-call-pill.success{border-color:var(--badge-green);color:var(--color-green)}.tool-call-pill.error{border-color:var(--badge-red);color:var(--color-red)}.tool-call-pill svg{width:12px;height:12px}.tool-call-detail{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-md);margin-top:var(--space-sm);font-size:var(--font-size-sm)}.tool-call-detail pre{background:var(--bg-tertiary);padding:var(--space-sm);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--font-size-xs);margin:var(--space-xs) 0;white-space:pre-wrap;word-break:break-all;overflow-x:auto}.tool-call-detail h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs)}.chat-tools-row{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);flex-shrink:0;display:flex}.tools-badge-text{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap}.tools-toggle-pill{border-radius:var(--radius-full);border:1.5px solid var(--border-light);background:var(--bg-tertiary);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-fast);user-select:none;align-items:center;gap:8px;padding:6px 10px;display:inline-flex}.tools-toggle-pill:hover{border-color:var(--color-blue);background:var(--bg-hover)}.tools-toggle-pill.active{border-color:var(--color-blue);color:var(--color-blue);background:#3b82f614}.tools-toggle-icon{align-items:center;display:flex}.tools-toggle-icon svg{width:15px;height:15px}.tools-toggle-label{line-height:1}.tools-toggle-switch{background:var(--border-light);width:30px;height:16px;transition:background var(--duration-fast);border-radius:8px;flex-shrink:0;position:relative}.tools-toggle-pill.active .tools-toggle-switch{background:var(--color-blue)}.tools-toggle-knob{width:12px;height:12px;transition:transform var(--duration-fast);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.tools-toggle-pill.active .tools-toggle-knob{transform:translate(14px)}.chat-empty-state{min-height:100%;padding:var(--space-xl) var(--space-lg);text-align:center;justify-content:center;align-items:center;gap:var(--space-md);animation:chat-message-in var(--duration-regular) var(--ease-out);flex-direction:column;display:flex;position:relative}.chat-empty-state:before{content:"";background:radial-gradient(ellipse at center, var(--color-primary-light), transparent 70%);filter:blur(40px);pointer-events:none;width:min(560px,90%);height:420px;position:absolute;top:8%;left:50%;transform:translate(-50%)}.chat-empty-state>*{position:relative}.chat-empty-state .empty-logo{border-radius:var(--radius-full);background:radial-gradient(circle at 30% 30%, var(--color-primary-medium), var(--color-primary-light));width:72px;height:72px;color:var(--color-primary);margin-bottom:var(--space-sm);justify-content:center;align-items:center;display:flex}.chat-empty-state .empty-logo svg{width:34px;height:34px}.chat-empty-state h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em;color:var(--text-primary);margin:0}.chat-empty-state p{font-size:var(--font-size-base);color:var(--text-secondary);max-width:340px;margin:0}.suggestion-chips{gap:var(--space-sm-md);width:min(480px,100%);margin-top:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.suggestion-chip{align-items:center;gap:var(--space-sm-md);padding:var(--space-md) var(--space-regular);border-radius:var(--radius-card);border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family);cursor:pointer;transition:border-color var(--duration-quick), color var(--duration-quick), background var(--duration-quick), transform var(--duration-quick);text-align:left;line-height:1.4;display:flex}.suggestion-chip svg{width:17px;height:17px;color:var(--color-primary);flex-shrink:0}.suggestion-chip:hover{border-color:var(--color-primary-medium);color:var(--text-primary);background:var(--bg-tertiary);transform:translateY(-1px)}.suggestion-chip:active{transform:translateY(0)scale(.99)}@media (max-width:520px){.suggestion-chips{grid-template-columns:minmax(0,1fr)}}.tools-badge{border-radius:var(--radius-md);color:var(--color-blue);font-size:11px;font-weight:var(--font-weight-medium);background:#3b82f61a;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.tools-badge svg{width:11px;height:11px}.stt-mode-bar{gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);display:flex}.stt-content{flex-direction:column;flex:1;display:flex}.stt-ready-state{justify-content:center;align-items:center;gap:var(--space-lg);padding:var(--space-3xl);flex-direction:column;flex:1;display:flex}.stt-result-panel{padding:var(--space-lg);flex:1;display:none}.stt-result-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.stt-controls{padding:var(--space-md) var(--space-lg) var(--space-xl);align-items:center;gap:var(--space-md);border-top:1px solid var(--border-light);background:var(--bg-secondary);flex-direction:column;display:flex}.mic-btn-lg{width:72px;height:72px}.tts-layout{align-items:center;gap:var(--space-xl);padding:var(--space-3xl);flex-direction:column;display:flex}.tts-textarea{width:100%;max-width:400px;min-height:120px}.tts-speed-row{align-items:center;gap:var(--space-lg);width:100%;max-width:400px;display:flex}.tts-speed-label{font-size:var(--font-size-sm);color:var(--text-secondary);min-width:50px}.tts-speed-value{font-size:var(--font-size-sm);text-align:right;min-width:30px}.tts-message{font-size:var(--font-size-sm);text-align:center;width:100%;max-width:400px;display:none}.tts-speak-btn{background:var(--color-purple);border-color:var(--color-purple);width:100%;max-width:400px}.tts-speak-btn.stopping{background:var(--color-red);border-color:var(--color-red)}.storage-models-list{padding:var(--space-lg)}.storage-actions{padding:0 var(--space-lg) var(--space-lg)}.btn-danger{width:100%;color:var(--color-red)}.dialog-backdrop{backdrop-filter:blur(4px);z-index:500;padding:var(--space-lg);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.dialog-box{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-xl);width:100%;max-width:360px;box-shadow:0 16px 48px var(--shadow-default)}.dialog-box--wide{max-width:420px}.dialog-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-sm) 0}.dialog-message{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--space-lg) 0;line-height:1.5}.dialog-actions{gap:var(--space-sm-md);justify-content:flex-end;display:flex}.dialog-btn{padding:var(--space-sm-md) var(--space-lg);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:1px solid var(--border-light);transition:all var(--duration-fast)}.dialog-btn:disabled{opacity:.4;cursor:not-allowed}.dialog-btn--cancel{background:var(--bg-secondary);color:var(--text-primary)}.dialog-btn--cancel:hover{background:var(--bg-tertiary)}.dialog-btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.dialog-btn--primary:hover{filter:brightness(1.1)}.dialog-btn--danger{background:var(--color-red);color:#fff;border-color:var(--color-red)}.dialog-btn--danger:hover{filter:brightness(1.1)}.dialog-btn--danger:disabled{filter:none}.eviction-meter{padding:var(--space-sm-md) var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-md);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;display:flex}.eviction-meter-label{color:var(--text-secondary)}.eviction-meter-value{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.eviction-candidates{max-height:200px;margin-bottom:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex;overflow-y:auto}.eviction-row{align-items:center;gap:var(--space-sm-md);padding:var(--space-sm-md) var(--space-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);transition:background var(--duration-fast);display:flex}.eviction-row:hover{background:var(--bg-secondary)}.eviction-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0}.eviction-model-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.eviction-model-size{color:var(--text-secondary);flex-shrink:0}.model-last-used{font-size:var(--font-size-xs);color:var(--text-tertiary,var(--text-secondary));margin-top:2px}.docs-section{border-bottom:1px solid var(--border-light,#ffffff0f);padding:16px}.docs-section h3{margin-top:0;margin-bottom:8px}.docs-section>p{max-width:68ch}.docs-actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.field{gap:var(--space-sm);margin:var(--space-md-lg) 0;flex-direction:column;display:flex}.field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.field .chat-input{flex:none;width:100%}.docs-dropzone{align-items:center;gap:var(--space-xs);width:100%;margin:var(--space-md-lg) 0 0;padding:var(--space-xl);background:var(--bg-secondary);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;text-align:center;transition:background var(--duration-fast), border-color var(--duration-fast);flex-direction:column;font-family:inherit;display:flex}.docs-dropzone:hover{background:var(--bg-tertiary);border-color:var(--color-primary)}.docs-dropzone:focus-visible{box-shadow:var(--focus-ring);outline:none}.docs-dropzone--active{background:var(--bg-tertiary);border-color:var(--color-primary);border-style:solid}.docs-dropzone-glyph{width:28px;height:28px;color:var(--text-tertiary)}.docs-dropzone--active .docs-dropzone-glyph,.docs-dropzone:hover .docs-dropzone-glyph{color:var(--color-primary)}.docs-dropzone-title{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.docs-dropzone-hint{color:var(--text-tertiary);font-size:var(--font-size-sm)}.docs-dropzone:disabled{cursor:not-allowed;opacity:.5}.docs-dropzone:disabled:hover{background:var(--bg-secondary);border-color:var(--border-strong)}.model-pair{gap:var(--space-md-lg);margin:var(--space-md-lg) 0 0;flex-wrap:wrap;display:flex}.model-pair__field{gap:var(--space-sm);flex-direction:column;flex:260px;min-width:0;display:flex}.model-pair__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.model-pair__row{align-items:center;gap:var(--space-sm-md);min-width:0;display:flex}.model-pair__select{min-width:0;padding:var(--space-sm-md) var(--space-md-lg);background:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-regular);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-sm);text-overflow:ellipsis;flex:1}.model-pair__select:focus-visible{box-shadow:var(--focus-ring);outline:none}.model-pair__select:disabled{opacity:.6;cursor:not-allowed}.segmented{gap:var(--space-xxs);margin:0 0 var(--space-md-lg);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-lg);flex-wrap:wrap;max-width:100%;padding:3px;display:inline-flex}.segmented__option{min-height:var(--hit-touch);padding:var(--space-sm-md) var(--space-lg);border-radius:calc(var(--radius-lg) - 3px);color:var(--text-secondary);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:none;flex:1}.segmented__option:hover:not([aria-checked=true]):not(:disabled){color:var(--text-primary)}.segmented__option[aria-checked=true]{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 1px 2px var(--shadow-default)}.segmented__option:focus-visible{box-shadow:var(--focus-ring);outline:none}.segmented__option:disabled{cursor:not-allowed;opacity:.55}.surface-empty{align-items:center;gap:var(--space-md-lg);padding:var(--space-2xl) var(--space-lg);border:1px dashed var(--border-light);border-radius:var(--radius-lg);color:var(--text-tertiary);text-align:center;flex-direction:column;display:flex}.surface-empty svg{width:26px;height:26px}.surface-empty p{font-size:var(--font-size-sm);margin:0}.metric-grid{gap:var(--space-md-lg);margin:var(--space-md-lg) 0 0;flex-wrap:wrap;display:flex}.metric-grid__cell{padding:var(--space-md-lg) var(--space-regular);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);flex:8rem}.metric-grid dt{margin:0 0 var(--space-xs);color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.metric-grid dd{color:var(--text-primary);font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;margin:0}.docs-list{margin:12px 0;padding:0;list-style:none}.docs-empty{text-align:center;color:var(--text-secondary,#94a3b8);border:1px dashed var(--border-light,#ffffff1a);border-radius:8px;padding:16px;font-size:14px}.docs-item{background:var(--bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px 12px;display:flex}.docs-item-title{font-size:14px;font-weight:500}.docs-item-meta{color:var(--text-secondary,#94a3b8);margin-top:2px;font-size:12px}.docs-status{color:var(--text-secondary,#94a3b8);min-height:18px;margin-top:8px;font-size:13px}.docs-status.error{color:var(--color-red);background:var(--badge-red);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.docs-pre{margin:var(--space-sm) 0 0;padding:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;line-height:1.55;overflow-y:auto}.docs-pre--partial{color:var(--text-secondary);border-left:2px solid var(--color-primary);transition:color var(--duration-standard) var(--ease-out);font-style:italic}.solution-card__graph{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);overflow-wrap:anywhere}.docs-query{border:1px solid var(--border-light,#ffffff1a);background:var(--bg-secondary);width:100%;color:inherit;resize:vertical;border-radius:8px;margin-bottom:8px;padding:12px;font-family:inherit;font-size:14px}.docs-answer{margin-top:16px;font-size:14px}.docs-answer-text{background:var(--bg-secondary);white-space:pre-wrap;border-radius:8px;padding:12px}.docs-sources{gap:8px;margin-top:12px;display:grid}.docs-source{background:var(--bg-tertiary);border:1px solid var(--border-light,#ffffff0f);border-radius:8px;padding:8px 12px}.docs-source pre{white-space:pre-wrap;color:var(--text-secondary,#94a3b8);margin:4px 0 0;font-size:12px}.model-row-error{color:#fca5a5;white-space:pre-wrap;background:#ef444414;border:1px solid #ef44444d;border-radius:6px;margin-top:6px;padding:6px 10px;font-size:12px;line-height:1.4}.feature-unavailable{padding:var(--space-3xl) var(--space-xl);text-align:center;align-items:center;gap:var(--space-md);max-width:560px;margin:var(--space-2xl) auto 0;color:var(--text-primary);animation:chat-message-in var(--duration-regular) var(--ease-out);flex-direction:column;display:flex}.feature-unavailable__icon{border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-light);width:72px;height:72px;color:var(--text-secondary);margin-bottom:var(--space-sm);justify-content:center;align-items:center;display:flex}.feature-unavailable h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em;margin:0}.feature-unavailable__description,.feature-unavailable__hint{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-secondary);max-width:400px;margin:0}.feature-unavailable__hint{font-size:var(--font-size-sm);color:var(--text-tertiary)}.feature-unavailable__list{text-align:left;margin:var(--space-md) 0 0;padding:var(--space-lg);border:1px solid var(--border-light);border-radius:var(--radius-card);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);list-style:none}.feature-unavailable__list li+li{margin-top:var(--space-md)}.feature-unavailable code{font-family:var(--font-mono);font-size:var(--font-size-xs);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);overflow-wrap:anywhere;padding:1px 6px}.advanced-hub{padding:var(--space-xl) max(var(--space-lg), calc((100% - 780px) / 2))}.advanced-hub__intro{margin-bottom:var(--space-xl)}.advanced-hub__intro h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.advanced-hub__intro p{max-width:620px;margin-top:var(--space-sm-md);color:var(--text-secondary)}.advanced-hub__section{gap:var(--space-sm-md);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.advanced-row{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);border:1px solid var(--border-light);border-radius:var(--radius-regular);background:var(--bg-secondary);color:var(--text-primary);text-align:left;cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast), transform var(--duration-fast);grid-template-columns:40px minmax(0,1fr);display:grid}.advanced-row:hover{border-color:var(--border-strong);background:var(--bg-tertiary)}.advanced-row:active{transform:scale(.99)}.advanced-row__icon{border-radius:var(--radius-regular);background:var(--color-primary-light);width:40px;height:40px;color:var(--color-primary);justify-content:center;align-items:center;display:flex}.advanced-row__icon svg{width:20px;height:20px}.advanced-row strong,.advanced-row small{min-width:0;display:block}.advanced-row strong{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.advanced-row small{color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:2px}@media (max-width:920px){.consumer-layout{grid-template-columns:minmax(0,1fr)}.consumer-drawer{z-index:260;width:min(320px,100vw - 40px);transition:transform var(--duration-regular) var(--ease-out);box-shadow:18px 0 44px var(--shadow-medium);position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.consumer-drawer__close.shell-icon-btn{display:flex}.consumer-drawer-scrim{background:var(--overlay-medium);z-index:250;opacity:0;transition:opacity var(--duration-regular) var(--ease-out);border:none;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.consumer-drawer-open .consumer-drawer{transform:translate(0)}.consumer-drawer-open .consumer-drawer-scrim{opacity:1;animation:fade-in var(--duration-regular) var(--ease-out);display:block}}@media (min-width:921px){.consumer-drawer-scrim,.shell-menu-btn,.consumer-drawer__header{display:none}}@media (max-width:700px){.consumer-topbar{gap:var(--space-sm-md);padding:0 var(--space-sm-md);grid-template-columns:auto minmax(0,1fr) auto}.consumer-brand__name{display:none}.consumer-model-slot{justify-content:stretch}.toolbar-model-btn{width:100%;max-width:100%;padding-left:var(--space-sm-md);padding-right:var(--space-sm-md);justify-content:center}.consumer-topbar__side--right{gap:var(--space-xs)}.chat-scroll{padding:var(--space-lg) var(--space-md) var(--space-lg)}.chat-composer-shell{padding:var(--space-sm-md) var(--space-md) calc(var(--space-md) + env(safe-area-inset-bottom,0px))}.chat-panel-consumer .chat-input-area{gap:var(--space-xs);padding:var(--space-xs)}.chat-panel-consumer .chat-input{padding:var(--space-sm-md) var(--space-md);font-size:var(--font-size-base)}.chat-message--user .chat-bubble{max-width:92%}}.model-slot__change:after,.btn-sm:after{content:"";width:100%;height:var(--hit-min);min-width:var(--hit-min);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.model-slot__change,.btn-sm{position:relative}@media (pointer:coarse){.shell-icon-btn,.composer-icon-btn,.send-btn,.chat-panel-consumer .send-btn,.btn-ghost{min-width:var(--hit-touch);min-height:var(--hit-touch)}.composer-icon-btn,.chat-panel-consumer .send-btn{width:var(--hit-touch);height:var(--hit-touch)}.btn,.toolbar-model-btn,.model-action-btn,.consumer-new-chat,.text-input,.model-search__input,.model-pair__select,.chat-input,select.chat-input,.chat-panel-consumer .chat-input{min-height:var(--hit-touch)}.btn-sm{min-height:var(--hit-touch);padding-top:0;padding-bottom:0}.toggle{box-sizing:content-box;background-clip:content-box;border:8px solid #0000}.toggle:after{top:10px;left:10px}}.hf-suggestions__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.hf-suggestions__subtext{margin:2px 0 var(--space-md);color:var(--text-tertiary);font-size:var(--font-size-xs)}.hf-suggestion-list{gap:var(--space-xs);flex-direction:column;display:flex}.hf-suggestion{align-items:flex-start}.hf-suggestion__info{flex:1;min-width:0}.hf-suggestion__head{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.hf-suggestion__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.hf-suggestion__repo{color:var(--text-tertiary);font-size:var(--font-size-xs);word-break:break-word;margin-top:2px}.hf-suggestion__blurb{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.45}.hf-suggestion .hf-repo-row__chevron{margin-top:3px}.tag-pill--params{background:var(--badge-gray);color:var(--text-secondary);font-variant-numeric:tabular-nums}.hf-repo-row__meta{align-items:center}.hf-suggestion{animation:hf-suggestion-in var(--duration-standard) var(--ease-out) both;animation-delay:calc(var(--hf-i,0) * 22ms)}@keyframes hf-suggestion-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hf-suggestion{animation:none}}.bench-charts{gap:var(--space-xl);margin-top:var(--space-md-lg);display:grid}.bench-chart{min-width:0;margin:0;overflow-x:auto}.bench-chart__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.bench-chart__subtitle{color:var(--text-tertiary);font-size:var(--font-size-xs);margin-top:2px}.bench-chart__note{margin-top:var(--space-md);color:var(--text-secondary);font-size:var(--font-size-sm)}.bench-chart__plot{margin-top:var(--space-md);display:block}.bench-chart__bar{fill:var(--chart-accent);transform-box:fill-box;transform-origin:0;animation:bench-bar-in var(--duration-standard) var(--ease-out) both}@keyframes bench-bar-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.bench-chart__axis{stroke:var(--separator);stroke-width:1px}.bench-chart__label,.bench-chart__value{font-family:var(--font-family);font-size:var(--font-size-xs)}.bench-chart__label{fill:var(--text-secondary)}.bench-chart__value{fill:var(--text-primary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}
