:root{--bg:#f4f5f7;--surface:#ffffff;--surface-alt:#fafbfc;--border:#dde1e6;--border-hover:#c5cad1;--text:#1a1a1a;--muted:#5c6670;--accent:#c41e3a;--accent-hover:#a01830;--chat-user:#eef3ff;--chat-bot:#f8f9fa;--btn-secondary:#eef0f3;--btn-secondary-hover:#e2e5ea;--btn-secondary-deep-hover:#d0d5dc;--banner:#fff8e6;--banner-border:#f0d88a;--banner-muted:#f0f2f5;--input-bg:#ffffff;--hover:#eef3ff;--radius:8px;--font:"Segoe UI",system-ui,sans-serif;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121417;--surface:#1a1d21;--surface-alt:#15181c;--border:#2e333a;--border-hover:#4a515a;--text:#e8eaed;--muted:#9aa3ad;--accent:#e03a54;--accent-hover:#c82d45;--chat-user:#1e2a44;--chat-bot:#22262b;--btn-secondary:#2a2f36;--btn-secondary-hover:#353b43;--btn-secondary-deep-hover:#1e2228;--banner:#3a3018;--banner-border:#6b5420;--banner-muted:#25292e;--input-bg:#15181c;--hover:#243044;color-scheme:dark}}[data-theme=dark]{--bg:#121417;--surface:#1a1d21;--surface-alt:#15181c;--border:#2e333a;--border-hover:#4a515a;--text:#e8eaed;--muted:#9aa3ad;--accent:#e03a54;--accent-hover:#c82d45;--chat-user:#1e2a44;--chat-bot:#22262b;--btn-secondary:#2a2f36;--btn-secondary-hover:#353b43;--btn-secondary-deep-hover:#1e2228;--banner:#3a3018;--banner-border:#6b5420;--banner-muted:#25292e;--input-bg:#15181c;--hover:#243044;color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;height:100%;min-width:300px;font-family:var(--font);color:var(--text);background:var(--bg)}.app{min-width:300px;height:100vh;height:100dvh}.app,.header{display:flex;flex-direction:column}.header{position:relative;z-index:20;align-items:stretch;gap:8px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border)}.header-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.header-measure{position:absolute;visibility:hidden;pointer-events:none;left:0;top:0}.brand{position:relative;display:flex;flex-direction:row;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:36px;height:36px;flex:0 0 36px;color:var(--accent)}.brand-smile{width:1.15em;height:1.15em;flex-shrink:0;color:var(--accent)}.btn.secondary.btn-app-action:hover .brand-smile,a.btn.secondary.btn-app-action:hover .brand-smile{color:#fff}.brand-text{display:flex;flex-direction:column;gap:1px}.brand-name{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.25}.brand-1c{display:inline-block;color:#fff;background:var(--accent);border-radius:4px;padding:0 .22em .02em;margin:0 .04em;line-height:1.2}.brand-1c-text{color:var(--accent);font-weight:600}.brand-tagline{font-size:.85rem;color:var(--muted)}.brand.hide-tagline .brand-tagline{position:absolute;visibility:hidden;pointer-events:none;white-space:nowrap;width:max-content}.brand.hide-logo .brand-mark{display:none}.header-actions{display:flex;gap:8px;flex-shrink:0}.header-menu{position:relative;flex-shrink:0}.header-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:var(--radius);background:var(--btn-secondary);color:inherit;cursor:pointer}.header-menu-toggle:hover,.header-menu-toggle[aria-expanded=true]{background:var(--btn-secondary-hover)}.header-menu-icon{width:20px;height:20px;display:block}.header-actions-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;flex-direction:column;align-items:stretch;min-width:200px;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 8px 24px rgb(0 0 0/12%)}.header-actions-menu .btn{width:100%;justify-content:center}.btn.theme-toggle.theme-toggle-labeled{gap:8px;min-width:0;padding:8px 14px}.main{flex:1 1;position:relative}.main,.panel{display:flex;min-height:0}.panel{flex-direction:column;min-width:0;background:var(--surface)}.chat-panel{flex:0 0 var(--chat-pct,50%);width:var(--chat-pct,50%);overflow:visible}.files-panel{flex:1 1;min-width:0}.split-gutter{flex:0 0 1px;width:1px;position:relative;z-index:1;cursor:col-resize;background:var(--border);touch-action:none}.split-gutter:after{content:"";position:absolute;top:0;bottom:0;left:-4px;width:9px}.split-gutter:focus-visible,.split-gutter:hover{background:var(--border-hover);outline:none}body.is-resizing,body.is-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.panel-title{padding:10px 16px;font-weight:600;border-bottom:1px solid var(--border);background:var(--surface-alt)}.panel-title-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:none;color:inherit;font:inherit;font-weight:600;text-align:left;cursor:pointer}.panel-title-toggle:hover{background:var(--btn-secondary)}.panel-title-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-title-chevron{width:16px;height:16px;flex-shrink:0;color:var(--muted);transition:transform .15s ease}.panel-title-toggle[aria-expanded=false] .panel-title-chevron{transform:rotate(-90deg)}.chat-title-collapse{display:none}.chat-title-bar{gap:6px;padding:6px 8px 6px 10px;z-index:3;overflow:visible}.chat-history,.chat-title-bar{display:flex;align-items:center;position:relative}.chat-history{gap:4px;min-width:0;flex:1 1}.chat-history-clock,.chat-history-new,.chat-title-collapse{align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0}.chat-history-clock,.chat-history-new{display:inline-flex}.chat-history-title{min-width:0;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;padding:0 8px}.chat-title-collapse{border:none;border-radius:var(--radius);background:transparent;color:var(--muted);cursor:pointer}.chat-title-collapse:hover{background:var(--btn-secondary);color:var(--text)}.chat-title-collapse[aria-expanded=false] .panel-title-chevron{transform:rotate(-90deg)}.chat-history-menu{position:absolute;z-index:8;top:calc(100% + 6px);left:0;width:100%;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden}.chat-history-list{overflow-x:clip;overflow-y:auto;overscroll-behavior:contain;padding:4px}.chat-history-empty{padding:12px 10px;color:var(--muted);font-size:.9rem}.chat-history-item{display:flex;align-items:center;gap:2px;min-width:0;max-width:100%;overflow:hidden;border-radius:8px}.chat-history-item.selected{background:var(--hover)}.chat-history-item:hover{background:var(--btn-secondary)}.chat-history-pick{flex:1 1;min-width:0;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:8px 10px}.chat-history-item-title{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.chat-history-item-when{font-size:.75rem;color:var(--muted)}.chat-history-delete{flex-shrink:0;width:28px;height:28px;margin-right:4px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer}.chat-history-delete:hover{background:var(--btn-secondary-hover);color:var(--text)}.preview-title{flex-shrink:0;font-weight:500}.files-panel.list-collapsed .preview-title{border-top:none}.files-panel.preview-collapsed .file-list{flex:1 1;max-height:none;border-bottom:none}.banner{margin:12px 16px 0;padding:10px 12px;border-radius:var(--radius);background:var(--banner);border:1px solid var(--banner-border);font-size:.9rem}.banner.muted{background:var(--banner-muted);border-color:var(--border);color:var(--muted)}.banner-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.banner-row>span{flex:1 1 12rem;min-width:0;overflow-wrap:anywhere}.banner-row>.btn{flex:0 0 auto}.messages{flex:1 1;overflow:auto;padding:16px}.empty,.hint{color:var(--muted);font-size:.95rem}.msg-block{margin-bottom:12px}.file-save-prompt{margin:0 24px 0 0;font-size:.9rem}.msg-block .msg{margin-bottom:8px}.msg{margin-bottom:12px;padding:12px 14px;border-radius:var(--radius);line-height:1.5;font-size:.95rem}.msg.user{background:var(--chat-user);margin-left:24px}.msg.assistant{background:var(--chat-bot);margin-right:24px;border:1px solid var(--border)}.guest-auth-copy{display:flex;align-items:center;gap:.4em}.msg.assistant.guest-auth-message{margin-right:8px}.guest-auth-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.guest-auth-actions .btn{width:100%;padding-inline:8px}.msg.typing{color:var(--muted);font-style:italic}.msg p:first-child{margin-top:0}.msg p:last-child{margin-bottom:0}.composer-shell{padding:12px 16px 14px;border-top:1px solid var(--border)}.composer-row{display:flex;flex-direction:row;align-items:stretch;gap:8px}.composer-row.stacked{flex-direction:column;align-items:stretch}.composer-row.stacked .composer-send{align-self:stretch;width:100%}.composer-row.stacked .composer-pill-trigger{min-height:32px;align-items:center}.composer-box{flex:1 1;min-width:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;background:var(--input-bg);overflow:visible}.composer-input{width:100%;min-height:52px;max-height:calc(1.45em * 4 + 20px);padding:12px 14px 8px;border:none;outline:none;resize:none;overflow-x:hidden;overflow-y:auto;font:inherit;font-size:.95rem;line-height:1.45;color:var(--text);background:transparent}.composer-input::placeholder{color:var(--muted)}.composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px 8px;min-width:0}.composer-toolbar-left,.composer-toolbar-right{display:flex;align-items:center;gap:4px;min-width:0}.composer-toolbar-left{flex:1 1}.composer-toolbar-right{flex-shrink:0;margin-left:auto}.composer-pill-group{position:relative;display:flex;align-items:stretch;justify-content:flex-start;gap:0;width:auto;max-width:100%;min-width:0}.composer-pill-group.guest-locked .composer-pill-trigger{opacity:.5}.composer-pill-measure{position:absolute;visibility:hidden;white-space:nowrap;font-size:.82rem;font-weight:500;pointer-events:none}.composer-pill-group .composer-dropdown.compact{width:36px;min-width:36px;max-width:36px;flex:0 0 36px}.composer-pill-group .composer-dropdown.compact .composer-pill-trigger{justify-content:center;padding:5px}.composer-dropdown-item-icon img,.composer-dropdown-item-icon svg,.composer-pill-icon,.composer-pill-icon img,.composer-provider-icon{width:18px;height:18px;display:block;object-fit:contain}.composer-pill-icon{color:var(--text)}.composer-dropdown-item-icon .brand-mark,.composer-pill-icon .brand-mark{width:18px;height:18px;flex:none;color:var(--accent)}[data-theme=dark] .composer-provider-icon-gigachat{filter:invert(1)}.composer-dropdown-item{display:flex;flex-direction:row;align-items:center;gap:8px}.composer-dropdown-item-text{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.composer-dropdown-item-icon{flex-shrink:0;color:var(--muted)}.composer-dropdown-item.active .composer-dropdown-item-icon,.composer-dropdown-item.selected .composer-dropdown-item-icon{color:var(--text)}.composer-pill-group .composer-dropdown,.composer-pill-group .composer-pill{width:auto;min-width:36px;max-width:152px;flex:0 1 auto;border:1px solid var(--border)}.composer-pill-group .composer-dropdown:has(+.composer-dropdown),.composer-pill-group .composer-pill:has(+.composer-pill){border-top-right-radius:0;border-bottom-right-radius:0;border-right-color:var(--border)}.composer-pill-group .composer-dropdown+.composer-dropdown,.composer-pill-group .composer-pill+.composer-pill{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.composer-pill-group .composer-dropdown+.composer-dropdown.open,.composer-pill-group .composer-dropdown+.composer-dropdown:hover,.composer-pill-group .composer-dropdown.open+.composer-dropdown,.composer-pill-group .composer-dropdown:hover+.composer-dropdown,.composer-pill-group .composer-pill+.composer-pill:hover,.composer-pill-group .composer-pill:hover+.composer-pill{border-left-color:var(--border)}.composer-dropdown{position:relative;display:inline-flex;align-items:center;flex-shrink:0;border-radius:8px;background:var(--surface);transition:background .15s,border-color .15s}.composer-dropdown.open,.composer-dropdown:hover{background:var(--btn-secondary)}.composer-pill-trigger{position:relative;display:flex;align-items:center;gap:6px;width:100%;border:none;background:transparent;color:var(--text);font:inherit;font-size:.82rem;font-weight:500;padding:5px 22px 5px 8px;cursor:pointer;outline:none;text-align:left}.composer-pill-trigger:disabled{opacity:.6;cursor:not-allowed}.composer-pill-trigger .composer-chevron{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:14px;height:14px;pointer-events:none;color:var(--muted)}.composer-pill-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1;min-width:0}.project-name-s{color:var(--accent)}.composer-dropdown-menu{position:absolute;bottom:calc(100% + 6px);left:0;z-index:30;min-width:100%;width:max-content;max-width:220px;margin:0;padding:4px;list-style:none;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 8px 24px rgb(0 0 0/12%)}.composer-dropdown-item{align-items:flex-start;gap:1px;width:100%;border:none;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:.82rem;font-weight:500;text-align:left;padding:7px 10px;cursor:pointer}.composer-dropdown-menu .composer-dropdown-item{flex-direction:row;align-items:center;gap:8px}.composer-dropdown-item.active,.composer-dropdown-item:hover{background:var(--btn-secondary);color:var(--text)}.composer-dropdown-item.selected{background:var(--btn-secondary-hover);color:var(--text)}.composer-dropdown-item.locked,.composer-dropdown-item:disabled{opacity:.45}.composer-dropdown-item:disabled{cursor:not-allowed}.composer-dropdown-item.locked{cursor:pointer}.composer-dropdown-hint{font-size:.72rem;font-weight:400;color:var(--muted)}.composer-dropdown-empty{padding:8px 10px;font-size:.8rem;color:var(--muted)}.composer-attachments{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px 0}.composer-attachment-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 6px 2px 2px;border-radius:8px;background:var(--surface);border:1px solid var(--border);font-size:.78rem}.composer-attachment-thumb{width:24px;height:24px;border-radius:4px;object-fit:cover}.composer-attachment-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.composer-attachment-remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 2px}.composer-attachment-remove:hover{color:var(--text)}.composer-context-ring{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;cursor:default}.composer-context-track{stroke:var(--border)}.composer-context-fill{stroke:var(--muted);stroke-linecap:round;transition:stroke-dashoffset .2s ease}.composer-context-fill.hot{stroke:var(--accent)}.composer-pill{position:relative;display:inline-flex;align-items:center;flex-shrink:0;border-radius:8px;background:var(--surface);border:1px solid transparent;transition:background .15s,border-color .15s}.composer-pill:hover{background:var(--btn-secondary);border-color:var(--border)}.composer-pill-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text);font:inherit;font-size:.82rem;font-weight:500;padding:5px 22px 5px 10px;cursor:pointer;outline:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-pill-select:disabled{opacity:.6;cursor:not-allowed}.composer-chevron{position:absolute;right:6px;width:14px;height:14px;pointer-events:none;color:var(--muted)}.composer-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0}.composer-icon-btn:hover:not(:disabled){background:var(--btn-secondary);color:var(--text)}.composer-icon-btn:disabled{opacity:.5;cursor:not-allowed}.composer-icon-btn.listening{animation:mic-pulse 1.1s ease-in-out infinite}.composer-icon-btn.listening,.composer-icon-btn.listening:hover:not(:disabled){background:var(--accent);color:#fff}.composer-icon-btn svg{width:18px;height:18px}.composer-send{flex:0 0 auto;align-self:stretch;min-width:96px;padding:8px 14px;font-size:.88rem}.composer-send.stop{min-width:112px}@keyframes mic-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 0 rgb(196 30 58/55%)}50%{transform:scale(1.08);box-shadow:0 0 0 8px rgb(196 30 58/0)}}@media (prefers-reduced-motion:reduce){.composer-icon-btn.listening{animation:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{border:none;border-radius:var(--radius);padding:8px 14px;font:inherit;cursor:pointer}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.chat-history-clock,.btn.chat-history-new{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0}.btn.chat-history-new{color:#fff}.btn.chat-history-clock.open{background:var(--btn-secondary-hover)}.btn.chat-history-clock svg,.btn.chat-history-new svg{width:18px;height:18px;display:block;flex-shrink:0}.btn.primary:disabled{opacity:.6;cursor:not-allowed}.btn.secondary{background:var(--btn-secondary);color:var(--text)}.btn.secondary:hover:not(:disabled){background:var(--btn-secondary-hover)}.btn-app-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:0;text-align:center;white-space:normal;line-height:1.25;text-decoration:none}.btn-app-action-row{width:100%}.btn.secondary.btn-app-action:hover:not(:disabled),a.btn.secondary.btn-app-action:hover{background:var(--accent);color:#fff}.btn.theme-toggle{display:flex;align-items:center;justify-content:center;min-width:40px;padding:8px}.btn.theme-toggle svg{width:20px;height:20px}.app-tooltip{position:fixed;z-index:200;width:max-content;max-width:min(260px,calc(100vw - 16px));padding:6px 10px;border-radius:var(--radius);background:var(--text);color:var(--surface);font-size:.8rem;font-weight:500;line-height:1.3;text-align:center;pointer-events:none;opacity:0;box-shadow:0 4px 14px rgba(0,0,0,.16)}.app-tooltip.visible{opacity:1}.theme-icon-sun{display:none}[data-theme=dark] .theme-icon-sun{display:block}[data-theme=dark] .theme-icon-moon{display:none}.file-list{list-style:none;margin:0;padding:8px;max-height:180px;overflow:auto;border-bottom:1px solid var(--border)}.file-list button{width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;border-radius:6px;cursor:pointer;font:inherit;color:var(--text)}.file-list button.active,.file-list button:hover{background:var(--hover)}.file-preview{flex:1 1;overflow:auto;padding:16px;font-size:.95rem;line-height:1.55}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100}.modal{width:min(480px,92vw);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.15)}.modal,.modal-header{background:var(--surface)}.modal-header{flex-shrink:0;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.modal-header .modal-title{margin:0;text-align:center;font-size:1.25rem;font-weight:700;line-height:1.3}.modal-body{flex:1 1;min-height:0;overflow:auto;padding:24px 24px 8px}.modal-title{margin:0 0 8px;font-size:1rem;font-weight:500}.paste-zone{margin-top:14px;min-height:88px;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-alt);display:flex;align-items:center;justify-content:center;padding:12px;cursor:pointer;color:var(--muted);font-size:.9rem;text-align:center}.paste-zone:hover{border-color:var(--border-hover)}.paste-zone.has-preview{min-height:0;cursor:default}.paste-preview{position:relative;display:inline-block;max-width:100%;padding-right:28px}.paste-zone img{display:block;max-width:100%;max-height:160px;border-radius:6px}.paste-clear{position:absolute;top:0;right:0;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#3a3f45;color:#fff;font-size:18px;line-height:1;cursor:pointer}.paste-clear:hover{background:var(--accent)}.parse-status{margin:8px 0 0;font-size:.85rem;color:var(--muted)}.modal label{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:.9rem}.modal input:not([type=radio]),.modal input[type=text]{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font:inherit;color:var(--text);background:var(--input-bg)}.modal fieldset{margin-top:16px;border:1px solid var(--border);border-radius:var(--radius);padding:12px}.modal .radio{flex-direction:row;align-items:center;gap:8px;margin-top:8px}.modal-actions{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:nowrap;padding:16px 24px 24px;border-top:1px solid var(--border);background:var(--surface)}.modal-actions .btn{white-space:nowrap;flex:0 0 auto}.help-backdrop{z-index:110}.help-steps{margin:14px 0 0;padding-left:20px;font-size:.9rem;line-height:1.5}.help-steps li+li{margin-top:8px}.modal kbd{display:inline-block;padding:1px 6px;border:1px solid var(--border);border-radius:4px;background:var(--banner-muted);font-size:.8em}.help-figure{margin:16px 0 0}.help-figure img{width:100%;max-height:320px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt)}.help-figure figcaption{margin-top:8px;font-size:.85rem}.muted{color:var(--muted);font-size:.9rem}@media (max-width:499px){.header{padding:8px 10px;gap:8px}.brand-name{font-size:1rem}.main{flex-direction:column-reverse}.split-gutter{display:none}.chat-panel{flex:2 1 40%;width:100%;border-top:1px solid var(--border)}.chat-panel.chat-collapsed{flex:0 0 auto}.chat-title-collapse{display:flex;flex-shrink:0}.chat-panel.chat-collapsed .banner,.chat-panel.chat-collapsed .chat-history-menu,.chat-panel.chat-collapsed .composer-shell,.chat-panel.chat-collapsed .messages{display:none}.files-panel{flex:1 1 30%;min-height:0}.files-panel.list-collapsed.preview-collapsed{flex:0 0 auto}.file-list{max-height:120px}.composer-row{flex-direction:column;align-items:stretch}.composer-row .composer-send{align-self:stretch;width:100%}.modal-actions{flex-wrap:wrap}}.site-gate{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.site-gate-card{width:100%;max-width:420px;padding:28px 28px 32px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.site-gate-card--dialog{max-height:90vh;overflow:auto;overflow-x:hidden;min-width:0}.app-dialog{display:flex;flex-direction:column;max-height:min(90vh,calc(100dvh - 48px));overflow:hidden}.site-gate-card.app-dialog{padding:0;overflow:hidden}.app-dialog-head{flex-shrink:0;padding:20px 24px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.app-dialog-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px 24px 8px}.app-dialog-foot{flex-shrink:0;padding:16px 24px 24px;border-top:1px solid var(--border);background:var(--surface)}.account-panel--anchored{position:fixed;z-index:81;width:min(420px,calc(100vw - 24px));max-height:min(90vh,calc(100dvh - 80px));margin:0;overflow:hidden}.account-dialog-body,.account-dialog-foot{padding-top:16px}.auth-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;container-type:inline-size;container-name:auth-dialog-head}.auth-dialog-head .site-gate-brand{margin-bottom:0;min-width:0;flex:1 1 auto}.auth-dialog-head>.btn{flex-shrink:0}@media (max-width:499px){.tariffs-overlay{padding:12px}.app-dialog-head{padding:14px 16px 12px}.auth-dialog-head{align-items:center;gap:8px}.auth-dialog-head .site-gate-brand{gap:8px}.auth-dialog-head .brand-mark{width:28px;height:28px;flex:0 0 28px}.auth-dialog-head .brand-name{font-size:.95rem}.auth-dialog-head .site-gate-title{margin:0;font-size:1.1rem;min-width:0}}@container auth-dialog-head (max-width: 420px){.site-gate-brand .brand-mark{display:none}}.account-dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.account-dialog-top-main{display:flex;align-items:center;gap:10px;min-width:0}.account-dialog-top-main .brand-mark{flex-shrink:0;width:36px;height:36px}.account-dialog-user-block,.account-dialog-user-link{display:flex;flex-direction:column;align-items:flex-start;min-width:0;text-align:left}.account-dialog-user-link{color:inherit;text-decoration:none;border:none;font:inherit;cursor:pointer;background:transparent;border-radius:var(--radius);margin:-4px -6px;padding:4px 6px;transition:background .15s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none}.account-dialog-user-link:hover:not(:disabled){background:var(--btn-secondary)}.account-profile-dialog{width:min(420px,calc(100vw - 32px))}.account-profile-title{margin:0;text-align:left}.account-page-nav{margin-top:16px}.admin-page-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.admin-page-tools{display:flex;flex-direction:column;gap:12px;margin-bottom:4px}.admin-search-form{margin:0}.account-profile-form{margin-top:12px}.account-profile-readonly{opacity:.85;cursor:default}.account-profile-meta{margin-top:-4px}.account-profile-saved{color:var(--muted)}.account-profile-delete{margin-top:4px}.account-profile-delete .account-dialog-divider{margin:16px 0 12px}.account-profile-delete-hint{margin:8px 0 0}.btn.secondary.account-profile-delete-btn:hover:not(:disabled){background:var(--accent);color:#fff}.account-dialog-divider{height:1px;margin:16px 0;background:var(--border)}.account-dialog-name{font-size:.95rem;font-weight:600;line-height:1.25}.account-dialog-email,.account-dialog-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12rem}.account-dialog-email{margin:2px 0 0;color:var(--muted);font-size:.85rem}.account-dialog-signout{flex-shrink:0}.btn.secondary.account-dialog-signout:hover:not(:disabled){background:var(--accent);color:#fff}.account-dialog-section{display:flex;flex-direction:column;gap:8px}.account-dialog-section-title{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.account-dialog-tariff-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0}.account-dialog-tariff-tagline{margin:0;flex:1 1;min-width:0;font-size:.92rem;line-height:1.35;color:var(--muted)}.account-dialog-tariff-btn{flex-shrink:0}.account-dialog-tariff-foot{display:flex;flex-direction:column;gap:4px;min-width:0}.account-dialog-admin-panel{display:block;width:100%;margin-top:4px;padding:10px 14px;text-align:center;text-decoration:none;box-sizing:border-box}.account-dialog-guest-limit{margin:0}.account-dialog-tariff-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:0;min-width:0}.account-dialog-tariff-action{flex:1 1 auto;min-width:0;max-width:100%}.site-gate-card a.account-dialog-tariff-action{color:var(--text)}.account-dialog-settings-actions{display:flex;flex-wrap:wrap;gap:8px}.account-dialog-settings-btn{flex:1 1 auto;min-width:0}.account-dialog-foot .theme-segmented,.account-dialog-section .theme-segmented{margin-top:0}.btn.secondary.account-dialog-ask{margin-top:12px;width:100%;padding:10px 14px}.btn.secondary.account-dialog-ask:hover:not(:disabled){background:var(--btn-secondary-deep-hover)}.usage-limit{display:flex;flex-direction:column;gap:4px}.usage-limit-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.85rem;color:var(--muted)}.usage-limit-head strong{color:var(--text);font-weight:600}.usage-limit-track{height:6px;border-radius:999px;background:var(--btn-secondary);overflow:hidden}.usage-limit-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .25s ease}.usage-limit-fill.warn{background:#d4a017}.usage-limit-fill.exhausted{background:var(--border);width:0!important}.usage-limit-meta{margin:0;font-size:.85rem;line-height:1.3;color:var(--muted)}.auth-inline-link{display:inline;padding:0;border:0;background:none;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.header-user-chip{display:inline-flex;align-items:center;gap:8px;max-width:13.5rem;min-height:40px;padding:8px 12px 8px 8px}.header-user-chip[aria-expanded=true]{background:var(--btn-secondary-hover)}.header-user-avatar{flex-shrink:0;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff}.header-user-avatar svg{width:12px;height:12px}.header-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}.header-user-caret{flex-shrink:0;width:10px;height:10px;color:var(--muted)}.header-actions-menu .header-user-chip{width:100%;max-width:none;justify-content:flex-start}.header-menu-footer{margin-top:6px;padding:8px 4px 4px;border-top:1px solid var(--border)}.auth-modal-footer{margin:0;padding:0;border:none}.theme-segmented-label{display:block;margin-bottom:8px;font-size:.85rem;color:var(--muted)}.theme-segmented-row{display:flex;gap:2px;padding:3px;border-radius:var(--radius);background:var(--btn-secondary)}.theme-segmented-row button{flex:1 1;display:flex;align-items:center;justify-content:center;min-width:0;padding:7px 8px;border:none;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--muted);cursor:pointer}.theme-segmented-row button svg{width:18px;height:18px}.theme-segmented-row button:hover{color:var(--text)}.theme-segmented-row button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgb(0 0 0/10%)}.site-gate-brand{margin-bottom:20px}.site-gate-title{margin:0 0 8px;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;line-height:1.3}.site-gate-hint{margin:0 0 20px;color:var(--muted);font-size:.95rem}.site-gate-form{display:flex;flex-direction:column;gap:8px}.smart-captcha-wrap{margin:4px 0 8px}.auth-verify-resend{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.site-gate-label{font-size:.9rem}.site-gate-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font:inherit;color:var(--text);background:var(--input-bg)}.site-gate-input:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.site-gate-error{margin:0;color:var(--accent);font-size:.9rem}.site-gate-submit{margin-top:8px;width:100%;padding:10px 14px}.auth-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px}.auth-actions .site-gate-submit{margin-top:0}.auth-forgot-row{display:flex;justify-content:flex-end;margin-top:4px}.auth-forgot-btn{width:auto;min-height:34px;padding:6px 12px;font-size:.9rem}.auth-divider{margin:16px 0 12px;text-align:center;color:var(--muted);font-size:.9rem}.auth-yandex-btn{width:100%;padding:10px 14px;background:#fc3f1d;border:1px solid #e03518;color:#fff;font-weight:600}.auth-yandex-btn:hover:not(:disabled){background:#e03518}.auth-yandex-btn:disabled{opacity:.55;cursor:not-allowed}.account-overlay{position:fixed;inset:0;z-index:80}.account-overlay--anchored{background:transparent}.header-user-anchor{position:relative;flex-shrink:0}.tariffs-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:rgb(0 0 0/45%)}.tariffs-dialog{width:min(920px,100%);max-height:90vh;overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:28px 28px 32px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.tariffs-dialog--stable{min-height:min(420px,calc(90vh - 48px));display:flex;flex-direction:column}.tariffs-dialog-list{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.tariffs-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.tariffs-dialog-head h2{margin:0;font-size:1.2rem}.tariffs-lead{margin:8px 0 16px;color:var(--muted);font-size:.92rem}.tariffs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.tariffs-card{position:relative;border:1px solid var(--border);border-radius:12px;padding:16px;background:var(--bg);display:flex;flex-direction:column;gap:12px}.tariffs-card-main{flex:1 1 auto;min-width:0;cursor:pointer;text-align:left;border-radius:calc(var(--radius) - 2px);margin:-4px;padding:4px;transition:background .15s ease}.tariffs-card-main:hover{background:color-mix(in srgb,var(--btn-secondary) 65%,transparent)}.tariffs-card-main:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tariffs-card-more{width:100%;background:var(--btn-secondary-deep-hover);border:1px solid color-mix(in srgb,var(--border) 65%,var(--text))}.tariffs-card-more:hover:not(:disabled){border-color:var(--accent)}.tariffs-dialog-foot{margin-top:auto;padding-top:20px;display:flex;flex-direction:column;gap:6px}.tariffs-guide-link{width:100%;color:var(--text);gap:.4em}.tariffs-guide-hint{margin:0;text-align:center}.tariffs-card.recommended{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.tariffs-card.current{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.tariffs-card h3{margin:8px 0 6px;font-size:1.05rem}.tariffs-card p{margin:0;font-size:.88rem;color:var(--muted)}.tariffs-badge{display:inline-block;font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent)}.tariffs-badge.soon{background:var(--btn-secondary)}.tariffs-current{margin-top:10px!important;font-weight:600;color:var(--text)!important}.tariffs-detail-body{flex:1 1 auto;min-height:0}.tariffs-detail-badge{margin-bottom:8px}.tariffs-detail-body h2{margin:0 0 8px;font-size:1.2rem}.tariffs-detail-tagline{margin:0 0 16px;color:var(--muted);font-size:.92rem}.tariffs-detail-list{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:8px;color:var(--text);font-size:.92rem;line-height:1.45}.tariffs-detail-list li{padding-left:2px}.auth-check{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;font-size:.85rem;color:var(--muted);line-height:1.35}.auth-check input{margin-top:3px}.site-gate-card a{color:var(--accent)}.account-page{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:32px 16px 64px}.account-card{width:min(720px,100%);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.account-card h1{margin:0 0 12px;font-size:1.4rem}.admin-user-list{list-style:none;padding:0;margin:16px 0;max-height:240px;overflow:auto}.admin-user-list button{width:100%;text-align:left;padding:8px 10px;border:0;background:transparent;color:inherit;cursor:pointer}.admin-user-list button.current-session{background:color-mix(in srgb,var(--accent) 10%,var(--banner-muted));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 45%,transparent);padding-left:7px}.admin-user-list button.current-session.active,.admin-user-list button.current-session:hover{background:color-mix(in srgb,var(--accent) 16%,var(--banner-muted))}.admin-user-list button.active,.admin-user-list button:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.btn.primary.admin-save-done{background:color-mix(in srgb,#2e7d32 78%,var(--accent))}.admin-invite-form{margin-top:20px;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt)}.admin-invite-form h2{margin:0 0 4px;font-size:1.05rem}.admin-notice{margin:16px 0 0;padding:10px 12px;border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.admin-list{display:flex;flex-direction:column;gap:10px;margin-top:20px}.admin-list-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--border);border-radius:var(--radius)}.admin-list-main{display:flex;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere}.admin-status{color:var(--muted);font-size:.85rem}.admin-status--active{color:#258048}.admin-status--pending{color:#a66a00}.admin-status--disabled{color:var(--accent)}.admin-list-actions{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.btn.secondary.admin-disable-btn:hover:not(:disabled){background:var(--accent);color:#fff}@media (max-width:640px){.admin-list-item{align-items:stretch;flex-direction:column}.admin-list-actions{justify-content:stretch}.admin-list-actions .btn{width:100%}}.legal-article p{color:var(--muted);line-height:1.5}.usage-banner{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}