:root{--brand:#2b3990;--brand-strong:#1f2a6e;--on-brand:#fff;--gold:#c9a227;--gold-strong:#a8861a;--on-gold:#1a1a1a;--radius-sm:4px;--radius:6px;--radius-lg:10px;--font-sans:"Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Roboto Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f5fa;--surface:#fff;--surface-2:#eceef6;--hover:#2b399014;--border:#d5d9ea;--text:#1c2140;--text-dim:#5d6384;--accent:#2b3990;--brand-soft:#2b39901f;--gold-soft:#c9a22729;--pattern:#2b39900b;--success:#2e7d32;--warning:#b7791f;--error:#c62828;--shadow:0 4px 14px #1c21401a;--shadow-lg:0 12px 32px #1c21402e;--overlay:#14183273;--board-light:#efe3c2;--board-dark:#6c78b5;--syn-keyword:#2b3990;--syn-heading:#1f2a6e;--syn-function:#7a3fb0;--syn-string:#2e7d32;--syn-number:#b35c00;--syn-comment:#8a90ad;--syn-escape:#a8861a;--syn-property:#3a6ea5;--syn-raw:#b0306a;--syn-operator:#5d6384;--editor-selection:#2b39902e;--editor-active-line:#2b39900d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12152a;--surface:#1a1e38;--surface-2:#242a4a;--hover:#ffffff12;--border:#323a62;--text:#e3e6f3;--text-dim:#9aa0c0;--accent:#8f9cf0;--brand-soft:#8f9cf029;--gold-soft:#c9a22733;--pattern:#8f9cf00d;--success:#66bb6a;--warning:#e0b341;--error:#ef5350;--shadow:0 4px 14px #00000059;--shadow-lg:0 12px 32px #00000080;--overlay:#0009;--board-light:#e6d8b2;--board-dark:#5a67a8;--syn-keyword:#8f9cf0;--syn-heading:#e8c65a;--syn-function:#c792ea;--syn-string:#9ccc65;--syn-number:#f0a860;--syn-comment:#6c7399;--syn-escape:#e0b341;--syn-property:#82b1ff;--syn-raw:#f48fb1;--syn-operator:#9aa0c0;--editor-selection:#8f9cf040;--editor-active-line:#ffffff0a}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12152a;--surface:#1a1e38;--surface-2:#242a4a;--hover:#ffffff12;--border:#323a62;--text:#e3e6f3;--text-dim:#9aa0c0;--accent:#8f9cf0;--brand-soft:#8f9cf029;--gold-soft:#c9a22733;--pattern:#8f9cf00d;--success:#66bb6a;--warning:#e0b341;--error:#ef5350;--shadow:0 4px 14px #00000059;--shadow-lg:0 12px 32px #00000080;--overlay:#0009;--board-light:#e6d8b2;--board-dark:#5a67a8;--syn-keyword:#8f9cf0;--syn-heading:#e8c65a;--syn-function:#c792ea;--syn-string:#9ccc65;--syn-number:#f0a860;--syn-comment:#6c7399;--syn-escape:#e0b341;--syn-property:#82b1ff;--syn-raw:#f48fb1;--syn-operator:#9aa0c0;--editor-selection:#8f9cf040;--editor-active-line:#ffffff0a}:root{--bg-panel:var(--surface);--bg-elevated:var(--surface-2);--bg-hover:var(--hover)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;font-family:inherit;font-size:13px;transition:background .12s,border-color .12s,color .12s}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.55;cursor:not-allowed}button.active{border-color:var(--accent);color:var(--accent);background:var(--brand-soft)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:1px}input,textarea,select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font-family:inherit;font-size:13px}input:focus,textarea:focus,select:focus{border-color:var(--accent)}.btn-primary,button.btn-primary{background:var(--brand);color:var(--on-brand);border-color:var(--brand-strong)}.btn-primary:hover:not(:disabled){background:var(--brand-strong);border-color:var(--gold)}.btn-accent,button.btn-accent{background:var(--gold);color:var(--on-gold);border-color:var(--gold-strong);font-weight:600}.btn-accent:hover:not(:disabled){background:var(--gold-strong)}.btn-ghost,button.btn-ghost{color:var(--text-dim);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--hover);color:var(--text);border-color:#0000}.app-loading{justify-content:center;align-items:center;height:100%;display:flex}.entry-page{background-color:var(--bg);background-image:repeating-conic-gradient(var(--pattern) 0% 25%, transparent 0% 50%);background-size:48px 48px;justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.entry-card{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--brand);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-form{flex-direction:column;align-items:center;gap:14px;width:min(360px,100%);padding:32px 28px 28px;display:flex}.entry-title{text-align:center;margin:4px 0 0;font-size:20px;font-weight:700}.entry-slogan{color:var(--gold);letter-spacing:.04em;margin:-8px 0 8px;font-weight:600}.entry-field{flex-direction:column;gap:6px;width:100%;font-size:13px;font-weight:500;display:flex}.entry-field input{height:38px;font-size:14px}.entry-submit{width:100%;height:40px;font-size:14px;font-weight:600}.entry-hint{color:var(--text-dim);margin:0;font-size:12px}.entry-hint code{font-family:var(--font-mono);border-radius:var(--radius-sm);background:var(--surface-2);padding:1px 4px}.login-error{width:100%;color:var(--error);text-align:center;font-size:13px}.picker-page{flex-direction:column;justify-content:flex-start;padding:0}.picker-topbar{background:var(--surface);border-top:3px solid var(--brand);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;width:100%;padding:10px 20px;display:flex}.picker-main{flex-direction:column;gap:24px;width:min(760px,100%);padding:40px 16px 60px;display:flex}.picker-heading{margin:0;font-size:26px}.picker-sub{color:var(--text-dim);margin:-16px 0 0;font-size:14px}.picker-section h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0 0 12px;font-size:13px;font-weight:700}.recent-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.recent-card{text-align:left;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);grid-template-columns:auto 1fr;grid-template-areas:"icon name""icon path""icon time";gap:2px 12px;padding:14px;display:grid}.recent-card:hover:not(:disabled){border-color:var(--gold)}.recent-icon{color:var(--gold);grid-area:icon;align-self:center}.recent-name{text-overflow:ellipsis;white-space:nowrap;grid-area:name;font-size:14px;font-weight:600;overflow:hidden}.recent-path{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;grid-area:path;font-size:12px;overflow:hidden}.recent-time{color:var(--accent);grid-area:time;font-size:11.5px}.open-card{padding:20px}.open-project{flex-direction:column;gap:10px;display:flex}.open-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.open-actions button{align-items:center;gap:6px;height:36px;display:inline-flex}.workspace{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.resizing-overlay{z-index:9999;cursor:col-resize;-webkit-user-select:none;user-select:none;background:0 0;position:fixed;inset:0}.workspace-header{background:var(--bg-panel);border-top:3px solid var(--brand);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:6px 12px;display:flex}.brand-mark{flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.brand-mark svg{display:block}.brand-mark-text{color:var(--text);white-space:nowrap;font-size:15px;font-weight:400}.brand-mark-text b{color:var(--accent);font-weight:700}.theme-toggle{width:30px;height:28px;padding:0;font-size:15px}.hdr-group{align-items:center;gap:6px;min-width:0;display:flex}.hdr-left{flex-shrink:0}.hdr-center{flex:1;justify-content:center}.hdr-right{flex-shrink:0}.hdr-btn{white-space:nowrap;align-items:center;gap:6px;height:30px;padding:0 10px;font-size:12.5px;display:inline-flex}.hdr-toggle-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);align-items:center;gap:2px;padding:2px;display:flex}.hdr-toggle-group .hdr-btn{height:26px;color:var(--text-dim);background:0 0;border-color:#0000}.hdr-toggle-group .hdr-btn:hover:not(:disabled){background:var(--hover);color:var(--text);border-color:#0000}.hdr-toggle-group .hdr-btn.active{background:var(--brand-soft);color:var(--accent);box-shadow:inset 0 -2px 0 var(--gold)}.project-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;font-weight:600;overflow:hidden}.breadcrumb{min-width:0;color:var(--text-dim);white-space:nowrap;align-items:center;font-size:12.5px;display:flex;overflow:hidden}.crumb{align-items:center;gap:2px;display:inline-flex}.crumb-sep{opacity:.6;margin:0 2px}.crumb-current{color:var(--text);font-weight:500}.dirty-dot{background:var(--gold);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-left:8px}.save-btn:disabled{opacity:.7}.export-control{gap:4px;display:flex}.export-control select{height:30px;padding:0 6px;font-size:12px}@media (width<=1280px){.hdr-toggle-group .hdr-label{display:none}}@media (width<=1000px){.hdr-label{display:none}.project-name{max-width:120px}}.status-bar{background:var(--brand);color:#ffffffe0;flex-shrink:0;align-items:center;gap:14px;height:24px;padding:0 12px;font-size:11.5px;display:flex}.status-item{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.status-brand{color:var(--gold);letter-spacing:.02em;font-weight:600}.status-spacer{flex:1}.status-error{color:#ffb4b4}.status-warning{color:#ffe08a}.status-dirty{color:var(--gold);font-weight:600}.chess-modal-container.prompt-dialog{max-width:440px}.prompt-dialog-body{flex-direction:column;gap:10px;padding:16px;display:flex}.prompt-dialog-field{flex-direction:column;gap:6px;font-size:13px;display:flex}.prompt-dialog-hint{color:var(--text-dim);margin:0;font-size:12px}.prompt-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.workspace-body{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.panel-resizer{z-index:10;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;background:0 0;flex-shrink:0;width:5px;margin:0 -2px;transition:background-color .2s;position:relative}.panel-resizer:focus-visible{outline:none}.panel-resizer:focus-visible:after{background:var(--gold);width:3px;left:1px}.icon{flex-shrink:0}.panel-resizer:after{content:"";background:var(--border);width:1px;transition:all .15s;position:absolute;top:0;bottom:0;left:2px}.panel-resizer:hover:after,.panel-resizer.active:after{background:var(--gold);width:3px;box-shadow:0 0 6px var(--gold-soft);left:1px}.workspace-filetree{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;min-width:160px;max-width:500px;padding:0;display:flex;overflow-y:auto}.file-tree-container{flex-direction:column;gap:6px;width:100%;display:flex}.file-tree-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:6px 6px 6px 10px;display:flex}.file-tree-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);font-size:11px;font-weight:700}.file-tree-actions{gap:2px;display:flex}.tree-action-btn{justify-content:center;align-items:center;width:26px;height:26px;padding:0;display:inline-flex}.tree-error-msg{color:var(--error);background:color-mix(in srgb, var(--error) 10%, transparent);border-radius:var(--radius-sm);margin:0 8px;padding:6px 8px;font-size:12px}.file-tree{padding:0 4px 8px}.file-tree-empty{color:var(--text-dim);padding:12px;font-size:12px}.context-menu{z-index:3000;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:190px;box-shadow:var(--shadow-lg);flex-direction:column;padding:4px;display:flex;position:fixed}.context-menu-item{text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:flex}.context-menu-item:hover,.context-menu-item:focus-visible{background:var(--brand-soft);outline:none}.context-menu-item.danger{color:var(--error)}.btn-danger,button.btn-danger{background:var(--error);color:var(--on-brand);border-color:var(--error)}.workspace-middle-area{flex:1;min-width:0;display:flex;overflow:hidden}.workspace-editor{min-width:200px;height:100%;display:flex;overflow:hidden}.editor-host{flex:1;min-width:0;overflow:auto}.no-file-open,.no-file-open-welcome{width:100%;color:var(--text-dim);justify-content:center;align-items:center;display:flex}.welcome-chess-card{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--brand);border-radius:var(--radius-lg);text-align:center;width:min(460px,90%);box-shadow:var(--shadow);flex-direction:column;align-items:center;padding:28px 28px 24px;display:flex}.welcome-chess-card h3{color:var(--text);margin:12px 0 6px;font-size:18px}.welcome-chess-card p{color:var(--text-dim);margin:0 0 16px;font-size:13px;line-height:1.5}.welcome-file-list{flex-direction:column;gap:4px;width:100%;margin:0 0 16px;padding:0;list-style:none;display:flex}.welcome-file{text-align:left;background:var(--bg);border-color:var(--border);align-items:center;gap:8px;width:100%;font-size:13px;display:flex}.welcome-file:hover:not(:disabled){background:var(--brand-soft)}.welcome-file .icon{color:var(--accent)}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.welcome-btn{border-radius:var(--radius);align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:500;display:inline-flex}.welcome-btn:not(.btn-primary){background:var(--bg)}.welcome-btn:not(.btn-primary):hover{background:var(--hover)}.workspace-preview{border-left:1px solid var(--border);min-width:200px;height:100%;display:flex;overflow:hidden}.preview-pane{background:var(--surface-2);flex-direction:column;width:100%;height:100%;display:flex}.preview-toolbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;height:34px;padding:0 6px 0 10px;font-size:12px;display:flex}.preview-toolbar-spacer{flex:1}.preview-status{color:var(--text-dim);align-items:center;gap:6px;display:inline-flex}.preview-status-ready{color:var(--success)}.preview-status-error{color:var(--error)}.preview-tool{justify-content:center;align-items:center;width:28px;height:26px;padding:0;display:inline-flex}.preview-body{flex:1;min-height:0;display:flex;position:relative}.preview-pdf{border:none;width:100%;height:100%}.preview-loading{text-align:center;width:100%;height:100%;color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:13px;display:flex}.preview-error{background:var(--surface);border:1px solid var(--error);border-radius:var(--radius);max-height:60%;box-shadow:var(--shadow-lg);border-left-width:4px;padding:12px 14px;position:absolute;bottom:12px;left:12px;right:12px;overflow:auto}.preview-error-title{color:var(--error);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.preview-error-message{font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background:var(--surface-2);border-radius:var(--radius-sm);margin:8px 0;padding:8px;font-size:12px}.preview-error-hint{color:var(--text-dim);margin:0;font-size:12px}.spinner{border:2px solid var(--border);border-top-color:var(--gold);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}.spinner-lg{border-width:3px;width:28px;height:28px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.workspace-side-panel{border-left:1px solid var(--border);background:var(--surface);flex-shrink:0;min-width:260px;max-width:650px;overflow-y:auto}@media (width<=1100px){.workspace-body{position:relative}.workspace-side-panel{z-index:50;max-width:90%;box-shadow:var(--shadow-lg);position:absolute;top:0;bottom:0;right:0}.resizer-sidepanel{display:none}}.file-tree-row{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;height:26px;padding-right:4px;font-size:13px;display:flex}.file-tree-row:hover{background:var(--hover)}.file-tree-caret{width:12px;color:var(--text-dim);flex-shrink:0;display:inline-flex}.file-tree-name{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.file-icon{color:var(--text-dim)}.file-icon-folder{color:var(--gold)}.file-icon-file-text{color:var(--accent)}.file-icon-scroll{color:var(--success)}.file-tree-row.active .file-icon,.file-tree-row.active .file-tree-caret{color:inherit}.file-tree-more{visibility:hidden;height:20px;color:inherit;background:0 0;border:none;padding:0 6px;font-size:14px;line-height:1}.file-tree-row:hover .file-tree-more,.file-tree-row:focus-within .file-tree-more{visibility:visible}@media (hover:none){.file-tree-more{visibility:visible}}.file-tree-row.active{background:var(--brand);color:var(--on-brand);box-shadow:inset 3px 0 0 var(--gold)}.file-tree-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cm-typstify-hover{white-space:pre-wrap;max-width:400px;padding:4px 8px;font-size:12px}.agent-chat{flex-direction:column;height:100%;display:flex}.agent-chat-status{min-height:38px;color:var(--text-dim);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:flex}.agent-chat-status-text{flex:1}.status-dot{background:var(--text-dim);border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.online{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 25%, transparent)}.status-dot.connecting{background:var(--gold);animation:1.2s ease-in-out infinite pulse}.status-dot.offline{background:var(--error)}@keyframes pulse{50%{opacity:.35}}.chat-retry-btn{align-items:center;gap:4px;padding:3px 10px;font-size:11.5px;display:inline-flex}.chat-pending-images{flex-wrap:wrap;gap:6px;padding:8px 10px 0;display:flex}.chat-pending-image{border:1px solid var(--border);border-radius:var(--radius);width:56px;height:56px;position:relative;overflow:hidden}.chat-pending-image img{object-fit:cover;width:100%;height:100%;display:block}.chat-pending-image-remove{background:var(--surface);border-radius:50%;width:18px;height:18px;padding:0;font-size:12px;line-height:1;position:absolute;top:2px;right:2px}.agent-chat-log{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.chat-empty{text-align:center;color:var(--text-dim);margin:auto 8px;padding:20px 16px;font-size:13px;line-height:1.5}.chat-empty .icon{color:var(--gold)}.chat-empty p{margin:6px 0}.chat-empty-title{color:var(--text);font-size:15px;font-weight:700}.chat-empty-hint{color:var(--accent);font-size:12px}.chat-entry{border-radius:var(--radius-lg);white-space:pre-wrap;word-break:break-word;max-width:92%;padding:8px 12px;font-size:13px;line-height:1.5}.chat-entry-user{background:var(--brand);color:var(--on-brand);border-bottom-right-radius:var(--radius-sm);align-self:flex-end}.chat-entry-agent{background:var(--surface-2);border-bottom-left-radius:var(--radius-sm);white-space:normal;align-self:flex-start}.chat-entry-thought{color:var(--text-dim);border-left:3px solid var(--border);white-space:normal;border-radius:0;align-self:flex-start;padding:2px 10px;font-size:12px;font-style:italic}.chat-entry-plan{color:var(--text-dim);align-self:center;padding:2px 10px;font-size:11.5px}.chat-entry-error{max-width:none;color:var(--error);background:color-mix(in srgb, var(--error) 10%, transparent);border:1px solid color-mix(in srgb, var(--error) 35%, transparent);align-self:stretch;font-size:12.5px}.chat-entry-tool{align-self:stretch;max-width:none;padding:0}.chat-text-markdown p{margin:0 0 6px}.chat-text-markdown p:last-child{margin-bottom:0}.chat-text-markdown code{font-family:var(--font-mono);background:var(--surface);border-radius:3px;padding:1px 4px;font-size:12px}.chat-text-markdown pre{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px;overflow-x:auto}.chat-text-markdown pre code{background:0 0;padding:0}.chat-text-markdown a{color:var(--accent)}.chat-text-markdown ul,.chat-text-markdown ol{margin:0 0 6px;padding-left:20px}.chat-entry-waiting{max-width:none;color:var(--text-dim);background:var(--gold-soft);justify-content:space-between;align-self:stretch;align-items:center;gap:8px;font-style:italic;display:flex}.chat-cancel-btn{flex-shrink:0;padding:3px 10px;font-size:12px;font-style:normal}.tool-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.tool-card.tool-completed{border-left-color:var(--success)}.tool-card.tool-failed{border-left-color:var(--error)}.tool-status{color:var(--accent);flex-shrink:0;align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.tool-completed .tool-status{color:var(--success)}.tool-failed .tool-status{color:var(--error)}.tool-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.permission-card{background:var(--gold-soft);border:1px solid var(--gold);border-radius:var(--radius);margin:0 10px 10px;padding:10px}.permission-title{font-size:12.5px;font-weight:600}.permission-options{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.quick-actions{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:8px 10px 4px;display:flex}.quick-actions-row{scrollbar-width:thin;align-items:center;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.quick-actions-label{text-transform:uppercase;letter-spacing:.04em;width:54px;color:var(--text-dim);flex-shrink:0;font-size:10.5px;font-weight:700}.quick-action-btn{background:var(--surface);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:12px}.quick-action-btn.chess{border-color:color-mix(in srgb, var(--gold) 55%, var(--border))}.quick-action-input{gap:6px;display:flex}.quick-action-input input{flex:1;min-width:0}.agent-chat-input{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:8px 10px 10px;display:flex}.chat-config-row{gap:6px;display:flex}.chat-model-select{text-overflow:ellipsis;flex:1;min-width:0;padding:3px 6px;font-size:11.5px}.chat-compose{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:flex-end;gap:6px;padding:4px;display:flex}.chat-compose:focus-within{border-color:var(--accent)}.chat-compose textarea{resize:none;background:0 0;border:none;outline:none;flex:1;height:48px}.chat-send{border-radius:var(--radius);justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.package-manager{flex-direction:column;gap:10px;height:100%;padding:10px;display:flex}.package-search{gap:6px;display:flex}.package-search input{flex:1}.package-list{flex-direction:column;gap:8px;display:flex;overflow-y:auto}.package-card{border:1px solid var(--border);border-radius:6px;padding:8px;font-size:12px}.package-card-header{justify-content:space-between;font-weight:600;display:flex}.package-version{color:var(--text-dim);font-weight:400}.package-description{color:var(--text-dim);margin:4px 0}.package-footer{justify-content:space-between;align-items:center;display:flex}.package-cached{color:var(--success);font-size:11px}.auth-card{flex-direction:column;gap:10px;padding:16px;display:flex}.auth-card-title{font-size:14px;font-weight:600}.auth-methods{flex-direction:column;gap:10px;display:flex}.auth-method{border:1px solid var(--border);border-radius:6px;padding:10px}.auth-method-name{font-size:13px;font-weight:600}.auth-method-desc{color:var(--text-dim);margin:4px 0 8px;font-size:12px}.auth-in-progress{color:var(--text-dim);flex-direction:column;gap:6px;font-size:12px;display:flex}.auth-open-link{color:var(--accent);align-self:flex-start}.settings-panel{flex-direction:column;gap:10px;padding:14px 12px;display:flex}.settings-title{margin:0;font-size:16px}.settings-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.settings-section>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:10px 12px;font-size:13px;font-weight:600;list-style:none;display:flex}.settings-section>summary::-webkit-details-marker{display:none}.settings-section[open]>summary{border-bottom:1px solid var(--border)}.settings-caret{color:var(--text-dim);transition:transform .15s}.settings-section[open]>summary .settings-caret{transform:rotate(90deg)}.settings-section-body{padding:12px}.settings-field{flex-direction:column;gap:4px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.settings-field small{color:var(--text-dim);font-weight:400}.settings-actions{align-items:center;gap:10px;display:flex}.settings-hint{color:var(--text-dim);margin:0 0 10px;font-size:12px;line-height:1.5}.agent-registry-row{gap:6px;display:flex}.agent-registry-row select{flex:1}.agent-registry-detail{border:1px solid var(--border);border-radius:6px;margin-top:10px;padding:8px;font-size:12px}.agent-registry-detail-header{margin-bottom:4px;font-weight:600}.agent-registry-version{color:var(--text-dim);font-weight:400}.terms-warning{border:1px solid var(--warning);color:var(--warning);border-radius:6px;margin-top:12px;padding:8px;font-size:11px}.settings-saved{color:var(--success);align-items:center;gap:4px;font-size:12px;display:inline-flex}.error{color:var(--error);margin-top:6px;font-size:12px}.editor-container-with-toolbar{flex-direction:column;width:100%;height:100%;display:flex}.chess-toolbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.chess-toolbar-group{align-items:center;gap:3px;display:flex}.chess-toolbar-divider{background:var(--border);width:1px;height:20px;margin:0 2px}.chess-tool-btn{white-space:nowrap;align-items:center;gap:5px;height:28px;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.chess-tool-btn:not(.btn-primary){background:var(--bg)}.tb-glyph{color:var(--accent);font-size:13px;font-weight:700;line-height:1}.chess-sym-btn{background:var(--bg);justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 5px;font-size:12px;display:flex}.chess-sym-btn.nag{color:var(--accent);font-weight:700}.chess-sym-btn:hover{background:var(--hover)}.editor-container-with-toolbar{container-type:inline-size}@container (width<=640px){.quick-nags{display:none}}@container (width<=480px){.chess-toolbar .chess-tool-btn:not(.btn-primary) .tb-label{display:none}}.popover-anchor{position:relative}.chess-popover{z-index:1500;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:6px;position:fixed}.pieces-popover{grid-template-columns:repeat(6,52px);gap:4px;display:grid}.piece-cell{background:var(--bg);flex-direction:column;align-items:center;gap:2px;padding:4px 0;display:flex}.piece-cell:hover{background:var(--brand-soft)}.piece-glyph{font-size:24px;line-height:1}.piece-name{color:var(--text-dim);font-size:10.5px}.nags-popover{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;width:372px;display:grid}.nag-row,.template-row{text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:6px 8px;display:flex}.nag-row:hover,.template-row:hover{background:var(--brand-soft)}.nag-glyph{text-align:center;min-width:26px;color:var(--accent);font-size:14px;font-weight:700}.nag-desc{font-size:12px}.templates-popover{flex-direction:column;width:320px;display:flex}.template-row{border-left:3px solid #0000;flex-direction:column;align-items:flex-start;gap:2px}.template-row:hover{border-left-color:var(--gold)}.template-name{font-size:13px;font-weight:600}.template-desc{color:var(--text-dim);font-size:11.5px}.chess-modal-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.chess-modal-container{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--brand);border-radius:var(--radius-lg);width:90%;max-width:860px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.chess-modal-container.pgn-modal{max-width:600px}.chess-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chess-modal-header h3{align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.chess-modal-header h3 .icon{color:var(--gold)}.chess-modal-close{justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.board-coord{pointer-events:none;opacity:.75;font-size:9px;font-weight:700;line-height:1;position:absolute}.board-coord.rank{top:2px;left:2px}.board-coord.file{bottom:2px;right:2px}.chess-square.light .board-coord{color:var(--board-dark)}.chess-square.dark .board-coord{color:var(--board-light)}.chess-piece[draggable=true]{cursor:grab}.chess-modal-body{gap:20px;padding:16px;display:flex;overflow-y:auto}.chess-board-area{flex-direction:column;align-items:center;gap:12px;display:flex}.chess-board-grid{border:2px solid var(--brand);box-shadow:var(--shadow);border-radius:4px;flex-direction:column;display:flex;overflow:hidden}.chess-board-row{display:flex}.chess-square{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:relative}.chess-square.light{background-color:var(--board-light)}.chess-square.dark{background-color:var(--board-dark)}.chess-piece{font-size:28px;line-height:1}.chess-piece.white{color:#fff;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000}.chess-piece.black{color:#1a1a1a}.chess-piece-palette{flex-direction:column;gap:6px;width:100%;display:flex}.palette-label{color:var(--text-dim);font-size:11px}.palette-row{gap:4px;display:flex}.palette-btn{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:4px;flex:1;justify-content:center;align-items:center;height:32px;font-size:20px;display:flex}.palette-btn.selected{border-color:var(--accent);background:var(--brand-soft)}.board-actions-row{gap:6px;margin-top:6px;display:flex}.small-action-btn{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:4px;flex:1;justify-content:center;align-items:center;gap:5px;padding:4px 6px;font-size:11px;display:inline-flex}.chess-config-area{flex-direction:column;flex:1;gap:10px;display:flex}.config-group{flex-direction:column;gap:4px;display:flex}.config-group label{color:var(--text-dim);font-size:11px;font-weight:500}.config-grid-2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.chess-select,.chess-input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:4px;padding:6px 8px;font-size:12px}.chess-code-preview{background:var(--bg);border:1px solid var(--border);white-space:pre-wrap;border-radius:4px;max-height:120px;padding:8px;font-family:monospace;font-size:11px;overflow-y:auto}.chess-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.copy-fen-btn{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 12px;font-size:12px;display:inline-flex}.insert-code-btn{background:var(--brand);color:var(--on-brand);border:1px solid var(--brand-strong);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.insert-code-btn:hover{background:var(--brand-strong)}.pgn-input-section{flex-direction:column;gap:8px;width:100%;display:flex}.pgn-input-header{justify-content:space-between;align-items:center;display:flex}.pgn-input-header label{color:var(--text-dim);font-size:12px}.pgn-file-upload-btn{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:4px 8px;font-size:11px;display:inline-flex}.pgn-textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);resize:vertical;border-radius:4px;padding:8px;font-family:monospace;font-size:12px}
