:root{--bg: #fafafa;--bg-surface: #f2f0ed;--bg-input: #ffffff;--text: #2c2c2c;--text-dim: #888;--accent: #d4713b;--border: #e0ddd9;--user-bg: #fff7f0;--assistant-bg: #ffffff;--tool-bg: #f6f4f1;--surface: #ffffff;--surface-hover: #f5f3f0;--error: #c44;--success: #2a7d3f;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg);color:var(--text);font-size:16px;height:100dvh;overflow:hidden}#root{height:100dvh;display:flex;flex-direction:column}.app{display:flex;flex-direction:column;height:100dvh}.header{display:flex;align-items:center;padding:8px 16px;gap:8px;border-bottom:1px solid var(--border);background:var(--bg-surface)}.header h1{font-size:16px;font-weight:600;color:var(--accent)}.home-btn{background:transparent;border:none;font-size:18px;cursor:pointer;color:var(--text-dim);padding:2px 4px;line-height:1}.home-btn:hover{color:var(--text)}.dev-badge{font-size:10px;font-weight:700;color:#fff;background:#e74c3c;padding:1px 5px;border-radius:4px;margin-left:6px;vertical-align:middle;letter-spacing:.5px}.resize-handle{width:4px;cursor:col-resize;background:transparent;flex-shrink:0;position:relative;z-index:10}.resize-handle:hover,.resize-handle:active{background:var(--accent);opacity:.4}.compact-btn{font-size:11px;padding:3px 8px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);cursor:pointer}.compact-btn:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.compact-btn:disabled{opacity:.4;cursor:default}.main{display:flex;flex:1;overflow:hidden}.sidebar{position:relative;border-right:1px solid var(--border);background:var(--bg-surface);padding:12px;overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column;width:240px}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:4px}.sidebar h2{font-size:13px;color:var(--text-dim);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.task-list-md{font-size:11px;padding:4px;font-family:SF Mono,Monaco,Consolas,monospace;line-height:1.4}.task-list-md ul{list-style:none;padding-left:0;margin:0}.task-list-md li{padding:2px 0}.task-list-md ul ul{padding-left:16px;font-size:12px}.chat-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.header-space-title{font-size:13px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.header-tabs{display:flex;align-items:stretch;flex-shrink:0}.header-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-dim);cursor:pointer;font-size:12px;padding:4px 5px;transition:color .15s;white-space:nowrap}.header-tab:hover{color:var(--text)}.header-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tab-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:4px;vertical-align:middle}.status-tab{flex:1;overflow-y:auto;padding:16px}.status-section{margin-bottom:16px}.status-section h3{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.status-space-info{display:flex;flex-direction:column;gap:2px}.status-space-name{font-size:14px;font-weight:600}.status-space-cwd{font-size:12px;color:var(--text-dim);font-family:monospace;-webkit-user-select:text;user-select:text;cursor:text}.status-space-id{font-size:11px;color:var(--text-dim);opacity:.6;font-family:monospace;-webkit-user-select:text;user-select:text;cursor:text}.status-context{display:flex;flex-direction:column;gap:4px}.status-context-row{display:flex;justify-content:space-between;font-size:13px}.status-label{color:var(--text-dim)}.status-value{font-weight:500}.status-empty,.tab-empty{font-size:13px;color:var(--text-dim);text-align:center;padding:40px 16px}.settings-tab{flex:1;overflow-y:auto;padding:16px}.settings-section{margin-bottom:20px}.settings-section h3{font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.settings-space-info{margin-bottom:10px}.settings-space-name{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-space-actions{display:flex;gap:8px}.messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;display:flex;flex-direction:column;gap:12px}.message{position:relative;padding:10px 14px;border-radius:3px;max-width:90%;font-size:15px;line-height:1.55;word-break:break-word}.msg-delete-btn{position:absolute;top:-1px;right:-16px;opacity:0;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;color:var(--text-dim);font-size:14px;line-height:1;width:20px;height:20px;cursor:pointer;transition:opacity .15s;display:flex;align-items:center;justify-content:center}.msg-delete-btn-inline{position:static;opacity:0}.message:hover>.msg-delete-btn,.message:hover>.msg-delete-btn-inline{opacity:1}.msg-delete-btn:hover{color:var(--error);border-color:var(--error)}.message p{margin:0 0 8px}.message p:last-child{margin-bottom:0}.message pre{background:none;border:1px solid rgba(0,0,0,.08);border-radius:4px;padding:8px 10px;overflow-x:auto;font-size:12px;margin:6px 0}.message pre code.hljs{background:none;padding:0}.message code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9em}.message :not(pre)>code{background:var(--tool-bg);border:1px solid var(--border);border-radius:3px;padding:1px 4px}.message ul,.message ol{margin:4px 0;padding-left:20px}.message li{margin-bottom:2px}.message li p{margin:0}.message table{border-collapse:collapse;margin:6px 0;font-size:13px}.message th,.message td{border:1px solid var(--border);padding:4px 8px}.message th{background:var(--tool-bg);font-weight:600}.message blockquote{border-left:3px solid var(--accent);margin:6px 0;padding:4px 12px;color:var(--text-dim)}.message h1,.message h2,.message h3,.message h4{margin:8px 0 4px;font-size:1em;font-weight:600}.message-user{background:var(--user-bg);align-self:flex-end;border:1px solid #f0ddd0}.user-text{white-space:pre-wrap;word-break:break-word}.message-user p{margin:0}.message-user p+p{margin-top:4px}.message-system-reminder{font-size:12px;opacity:.8}.system-reminder-text{margin:0;font-family:inherit;font-size:12px;line-height:1.4;white-space:pre-wrap}.message-thinking{font-size:13px;color:var(--text-dim);cursor:pointer;padding:4px 8px;margin:4px 0;border-left:2px solid var(--border);border-radius:2px;-webkit-user-select:none;user-select:none}.message-thinking:hover{background:var(--tool-bg)}.thinking-toggle{margin-right:4px;font-size:11px}.thinking-label{font-weight:600;margin-right:8px;color:var(--text-dim)}.thinking-preview{opacity:.7;font-style:italic}.thinking-full{margin-top:6px;white-space:pre-wrap;font-size:12px;line-height:1.5;opacity:.85}.message-user ul,.message-user ol{margin:2px 0;padding-left:20px}.message-user li{margin:0;line-height:1.4}.message-user li:empty{display:none}.message-user li p{margin:0}.message-user p+ul,.message-user p+ol{margin-top:2px}.message-user ul+p,.message-user ol+p{margin-top:2px}.message-user h1,.message-user h2,.message-user h3,.message-user h4{margin:4px 0 2px}.resend-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:0 4px;opacity:.7;vertical-align:middle}.resend-btn:hover{opacity:1}.message-ts{font-size:10px;color:var(--text-dim);font-family:SF Mono,Monaco,Consolas,monospace}.message-ts-pending{opacity:.6;font-style:italic;margin-left:auto}.message-footer{display:flex;align-items:center;gap:6px;margin-top:4px}.message-assistant{background:var(--assistant-bg);align-self:flex-start;border:1px solid var(--border)}.message-tool{background:var(--tool-bg);align-self:flex-start;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;border:1px solid var(--border)}.message-tool .tool-label{font-size:11px;color:var(--accent);margin-bottom:4px;font-weight:600}.tool-state{font-weight:400;color:var(--text-dim);font-style:italic}.message-runjs{background:var(--tool-bg);align-self:flex-start;font-size:12px;border:1px solid var(--border)}.message-runjs .tool-label{font-size:11px;color:var(--accent);font-weight:600;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--border)}.message-runjs pre{margin:0;background:none;border:none;padding:0}.message-error{color:var(--error);font-size:13px;align-self:center;background:#fdd;border:1px solid #f5c6c6}.message-streaming{border-left:2px solid var(--accent)}.collapsible.collapsed{max-height:400px;overflow:hidden;position:relative;mask-image:linear-gradient(to bottom,black 85%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 85%,transparent 100%)}.expand-btn{background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);font-size:11px;padding:2px 8px;cursor:pointer}.expand-btn:hover{color:var(--accent);border-color:var(--accent)}.message-runjs-status{align-self:flex-start;background:var(--tool-bg);border:1px solid var(--border);border-left:2px solid var(--accent);padding:6px 12px;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;display:flex;align-items:center;gap:8px}.runjs-label{color:var(--accent);font-weight:600}.runjs-status{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:500px}.message-compact-status{align-self:center;color:var(--text-dim);font-size:13px;padding:8px 16px;animation:pulse 1.5s ease-in-out infinite}.compact-status-icon{display:inline-block;animation:spin 1s linear infinite}.space-roles{position:relative;display:flex}.roles-toggle-btn{background:transparent;border:1px solid var(--accent);border-radius:3px;color:var(--accent);font-size:10px;font-weight:600;padding:3px;cursor:pointer;white-space:nowrap;font-family:SF Mono,Monaco,Consolas,monospace;line-height:1.2;letter-spacing:.5px}.roles-toggle-btn:hover{background:var(--accent);color:#fff}.roles-count{background:var(--accent);color:#fff;border-radius:8px;padding:0 5px;font-size:10px;margin-left:4px}.roles-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:4px;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px;min-width:240px;z-index:100;box-shadow:0 4px 16px #0006;-webkit-backdrop-filter:none;backdrop-filter:none}.roles-empty{color:var(--text-dim);font-size:12px;padding:4px}.role-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.role-item label{display:flex;align-items:center;gap:6px;flex:1;cursor:pointer}.role-item:hover{color:var(--accent)}.role-id{font-weight:600;white-space:nowrap}.role-order-btns{display:flex;gap:2px;margin-left:auto}.role-order-btn{background:none;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-size:11px;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center}.role-order-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.role-order-btn:disabled{opacity:.3;cursor:default}.space-settings{position:relative;display:flex}.settings-toggle-btn{background:transparent;border:1px solid var(--accent);border-radius:3px;color:var(--accent);font-size:10px;font-weight:600;padding:3px;cursor:pointer;white-space:nowrap;font-family:SF Mono,Monaco,Consolas,monospace;line-height:1.2;letter-spacing:.5px}.settings-toggle-btn:hover{background:var(--accent);color:#fff}.settings-count{background:var(--accent);color:#fff;border-radius:8px;padding:0 5px;font-size:10px;margin-left:4px}.settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.settings-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:4px;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px;min-width:340px;max-width:500px;z-index:100;box-shadow:0 4px 16px #0006;max-height:400px;overflow-y:auto}.settings-section{margin-bottom:10px}.settings-section:last-child{margin-bottom:0}.settings-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:2px}.settings-hint{font-size:11px;color:var(--text-dim);margin-bottom:4px}.settings-path{display:flex;align-items:center;gap:4px;font-size:12px;padding:2px 0;font-family:var(--font-mono)}.settings-path-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.settings-path-rm{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.settings-path-rm:hover{color:#e55}.settings-add{display:flex;gap:4px;margin-top:2px}.settings-input{flex:1;background:var(--input-bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:12px;padding:3px 6px;font-family:var(--font-mono)}.settings-input::placeholder{color:var(--text-dim)}.settings-add-btn{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-dim);cursor:pointer;font-size:14px;width:26px;display:flex;align-items:center;justify-content:center}.settings-add-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.settings-add-btn:disabled{opacity:.3;cursor:default}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.tool-stream-args{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;white-space:pre-wrap;word-break:break-all;margin:4px 0 0;max-height:300px;overflow-y:auto}.message-summary{background:#f0ede8;align-self:stretch;border:1px solid var(--border);border-left:3px solid var(--accent);font-size:13px;color:var(--text);opacity:.85}.message-system{align-self:center;background:none;border:none;padding:4px 12px}.system-label{font-size:12px;color:var(--text-secondary);opacity:.6;text-align:center;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border);padding:4px 0}.message-images{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.message-image{max-height:200px;max-width:100%;border-radius:3px}.summary-label{font-size:11px;font-weight:600;color:var(--accent);margin-bottom:6px}.messages-loading{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-dim);font-size:13px}.load-older-indicator{text-align:center;padding:8px 12px;font-size:12px;color:var(--text-dim)}.load-older-hint{cursor:default;opacity:.6}.message-runjs-compact{padding:2px 8px;opacity:.6;border:1px solid color-mix(in srgb,var(--border) 50%,transparent);cursor:pointer;font-size:11px}.message-tool-compact{padding:2px 8px;font-size:11px;opacity:.6;border:none;cursor:pointer;display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}.tool-compact-status{font-weight:700}.tool-compact-status{color:var(--accent)}.tool-compact-status.error{color:var(--error)}.tool-compact-elapsed,.llm-elapsed-inline{opacity:.7}.tool-compact-detail{width:100%;margin-top:4px}.action-items{width:100%;margin-top:4px;font-size:11px;color:var(--text-dim);line-height:1.5}.action-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-item-more{opacity:.5;font-style:italic}.action-error{width:100%;margin-top:4px;font-size:11px;color:var(--error)}.archive-divider{height:1px;background:var(--border);margin:12px 0;opacity:.5}.message-think{background:#f9f5f0;align-self:flex-start;font-size:13px;color:var(--text-dim);font-style:italic;border:1px dashed var(--border)}.message-think .think-label{font-size:11px;font-weight:600;color:var(--accent);margin-bottom:4px;font-style:normal}.chat-status{align-self:flex-start;padding:8px 16px}.chat-status-dots{display:inline-flex;gap:4px;align-items:center;background:var(--assistant-bg);border:1px solid var(--border);border-radius:3px;padding:8px 14px}.chat-status-dots span{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:dot-pulse 1.4s ease-in-out infinite}.chat-status-dots span:nth-child(2){animation-delay:.2s}.chat-status-dots span:nth-child(3){animation-delay:.4s}@keyframes dot-pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.send-error{text-align:center;color:#e74c3c;font-size:13px;padding:4px 0;animation:fade-in .2s}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.input-area{padding:12px 16px;border-top:1px solid var(--border);background:var(--bg-surface)}.input-row{display:flex;gap:6px;align-items:stretch}.toolbar{display:flex;gap:3px;padding-top:6px;align-items:center;flex-wrap:wrap}.toolbar-spacer{flex:1}.tb,.toolbar .settings-toggle-btn,.toolbar .roles-toggle-btn{background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;padding:2px 6px;font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;line-height:1.4}.tb:hover,.toolbar .settings-toggle-btn:hover,.toolbar .roles-toggle-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.tb:disabled{opacity:.3;cursor:not-allowed}.tb:disabled:hover{background:transparent;color:var(--text-dim);border-color:var(--border)}.image-previews{display:flex;gap:8px;padding-bottom:8px;flex-wrap:wrap}.image-preview{position:relative}.image-preview img{height:60px;border-radius:3px;border:1px solid var(--border)}.image-remove{position:absolute;top:-6px;right:-6px;background:var(--bg-surface);border:1px solid var(--border);border-radius:50%;width:18px;height:18px;font-size:12px;line-height:16px;text-align:center;cursor:pointer;color:var(--text-secondary)}.image-remove:hover{color:var(--error)}.input-row textarea{flex:1;background:var(--bg-input);border:1px solid var(--border);border-radius:3px;color:var(--text);padding:10px 14px;font-size:15px;font-family:inherit;resize:none;outline:none;min-height:42px;max-height:none}.input-row textarea:focus{border-color:var(--accent)}.input-row .send-btn{background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:0 10px;font-size:13px;font-weight:600;flex-shrink:0;cursor:pointer}.input-row .send-btn:hover{background:var(--accent);color:#fff}.input-row .send-btn:disabled{opacity:.3;cursor:not-allowed}.input-row .cancel-btn{background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:4px;padding:0 10px;font-size:13px;font-weight:600;flex-shrink:0;cursor:pointer}.input-row .cancel-btn:hover{opacity:.85}.space-list{display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto}.space-btn{width:100%;background:transparent;border:1px solid var(--border);color:var(--text);padding:8px;border-radius:3px;cursor:pointer;font-size:14px;text-align:left}.space-btn:hover{background:var(--bg-input)}.space-btn.active{border-color:var(--accent);background:var(--bg-input)}.space-delete-btn{opacity:0;font-size:18px;line-height:1;color:var(--text-dim);cursor:pointer;padding:2px 4px;transition:opacity .15s}.space-delete-btn:hover{color:var(--error)}.space-pin-btn{opacity:0;font-size:13px;line-height:1;color:var(--text-dim);cursor:pointer;padding:2px 4px;transition:opacity .15s}.space-pin-btn.pinned{opacity:1;color:var(--accent)}.space-pin-btn:hover{color:var(--accent)}.space-actions{display:flex;align-items:center;gap:6px}.space-btn:hover .space-delete-btn,.space-btn:hover .space-pin-btn{opacity:1}.space-rename-input{font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--accent);border-radius:3px;padding:1px 4px;outline:none;width:100%}.create-space-modal{min-width:360px;max-width:480px;width:90vw}.form-label{display:block;font-size:12px;font-weight:500;color:var(--text-dim);margin-bottom:4px}.form-input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);padding:8px 10px;font-size:13px;outline:none;box-sizing:border-box}.form-input:focus{border-color:var(--accent)}.form-error{color:var(--error);font-size:12px;margin-top:8px}.modal-footer{display:flex;gap:8px;justify-content:flex-end;padding:12px 16px;border-top:1px solid var(--border)}.btn{padding:6px 16px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;border:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-dim);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-hover)}.ss-settings-btn{width:100%;padding:8px 12px;text-align:left;font-size:13px;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;margin-top:6px}.ss-settings-btn:first-child{margin-top:0}.ss-settings-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.login-container{display:flex;align-items:center;justify-content:center;height:100dvh;background:var(--bg)}.login-form{display:flex;flex-direction:column;gap:12px;width:320px;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.login-form h2{margin:0 0 8px;text-align:center;color:var(--text)}.login-form input{padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:14px}.login-form input:focus{outline:none;border-color:var(--accent)}.login-form button{padding:10px;border:none;border-radius:6px;background:var(--accent);color:#fff;font-size:14px;cursor:pointer}.login-form button:disabled{opacity:.5;cursor:not-allowed}.login-error{color:#ef4444;font-size:13px;text-align:center}.user-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006;z-index:200}.modal-form{display:flex;flex-direction:column;gap:10px;width:340px;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0003}.modal-form h3{margin:0 0 4px;font-size:16px;color:var(--text)}.modal-form input{padding:8px 10px;border:1px solid var(--border);border-radius:5px;background:var(--bg);color:var(--text);font-size:13px}.modal-form input:focus{outline:none;border-color:var(--accent)}.modal-error{color:#ef4444;font-size:13px}.modal-success{color:#22c55e;font-size:13px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.modal-actions button{padding:6px 14px;font-size:13px;border:none;border-radius:5px;cursor:pointer;background:var(--accent);color:#fff}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.modal-cancel{background:transparent!important;color:var(--text-muted)!important;border:1px solid var(--border)!important}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:100}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface);border-radius:8px;box-shadow:0 8px 32px #0003;z-index:101;min-width:420px;max-width:600px;width:90vw}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);font-weight:600;font-size:14px}.modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-dim);padding:0 4px}.modal-close:hover{color:var(--text)}.modal-body{padding:16px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.modal-btn{padding:6px 16px;border-radius:4px;border:1px solid var(--border);background:var(--bg);cursor:pointer;font-size:13px}.modal-btn:hover{background:var(--surface-hover)}.modal-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-btn-primary:hover{opacity:.9}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.settings-modal{min-width:360px;max-width:520px}.settings-modal .modal-body{max-height:60vh;overflow-y:auto}.instructions-editor{width:100%;min-height:200px;max-height:400px;padding:12px;border:1px solid var(--border);border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.5;resize:vertical;background:var(--bg-input);color:var(--text)}.instructions-editor:focus{outline:none;border-color:var(--accent)}.memory-modal{min-width:560px;max-width:800px;width:90vw;max-height:70vh;display:flex;flex-direction:column}.memory-empty{color:var(--text-dim);font-size:13px}.memory-layout{display:flex;flex:1;min-height:0;max-height:60vh}.memory-sidebar{width:180px;min-width:140px;border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0}.memory-file-list{flex:1;overflow-y:auto;padding:4px 0}.memory-sidebar-toggle{padding:4px;background:transparent;border:none;border-top:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:14px;text-align:center}.memory-sidebar-toggle:hover{background:var(--surface-hover);color:var(--text)}.memory-sidebar-toggle.collapsed{border-right:1px solid var(--border);padding:8px 4px;align-self:stretch}.memory-file{display:block;width:100%;padding:6px 12px;border:none;background:none;text-align:left;cursor:pointer;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.memory-file:hover{background:var(--surface-hover);color:var(--text)}.memory-file.active{background:var(--accent-bg, rgba(59,130,246,.1));color:var(--accent);font-weight:500}.memory-content{flex:1;min-width:0;overflow:auto;padding:12px 16px}.memory-pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;line-height:1.6;color:var(--text)}.memory-archive-toggle{display:block;width:100%;padding:6px 12px;border:none;border-top:1px solid var(--border);background:none;text-align:left;cursor:pointer;font-size:11px;color:var(--text-dim);margin-top:4px}.memory-archive-toggle:hover{background:var(--surface-hover)}.memory-file.archived{color:var(--text-dim);font-size:11px;padding-left:20px}.memory-loading{color:var(--text-dim);font-size:13px;padding:8px 0}.debugger-modal{min-width:560px;max-width:800px;width:90vw;max-height:80vh;display:flex;flex-direction:column}.debugger-mode-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:2px 10px;cursor:pointer;font-size:12px;border-radius:0}.debugger-mode-btn:first-child{border-radius:4px 0 0 4px}.debugger-mode-btn:last-child{border-radius:0 4px 4px 0;margin-left:-1px}.debugger-mode-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.debugger-body{display:flex;flex-direction:column;padding:12px;gap:8px;min-height:0;flex:1}.debugger-input{font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:10px;min-height:120px;max-height:200px;resize:vertical;-moz-tab-size:2;tab-size:2;line-height:1.5}.debugger-input:focus{outline:none;border-color:var(--accent)}.debugger-toolbar{display:flex;align-items:center;gap:8px}.debugger-run-btn{background:var(--accent);color:#fff;border:none;border-radius:4px;padding:5px 14px;cursor:pointer;font-size:13px;font-weight:500}.debugger-run-btn:hover{opacity:.9}.debugger-run-btn:disabled{opacity:.5;cursor:default}.debugger-hint{font-size:11px;color:var(--text-dim)}.debugger-output{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:10px;overflow:auto;max-height:300px;white-space:pre-wrap;word-break:break-all;margin:0;color:var(--text);line-height:1.5}.debugger-output.error{color:#e55;border-color:#e553}.bash-logs-modal{min-width:560px;max-width:800px;width:90vw;max-height:70vh;display:flex;flex-direction:column}.bash-logs-layout{display:flex;flex:1;min-height:0;max-height:60vh}.bash-logs-dates{width:120px;min-width:100px;border-right:1px solid var(--border);overflow-y:auto;padding:4px 0;flex-shrink:0}.bash-logs-date{display:block;width:100%;padding:6px 12px;border:none;background:none;text-align:left;cursor:pointer;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--text-dim)}.bash-logs-date:hover{background:var(--surface-hover)}.bash-logs-date.active{background:var(--surface-hover);color:var(--text);font-weight:600}.bash-logs-entries{flex:1;min-width:0;overflow-y:auto;padding:8px}.bash-log-entry{padding:6px 10px;border-radius:6px;margin-bottom:4px;border-left:3px solid var(--border)}.bash-log-entry.bash-log-denied{border-left-color:#e55}.bash-log-entry.bash-log-approved{border-left-color:#5a5}.bash-log-entry.bash-log-auto{border-left-color:var(--border)}.bash-log-header{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-dim);margin-bottom:2px}.bash-log-time{font-family:SF Mono,Monaco,Consolas,monospace}.bash-log-decision{font-weight:500}.bash-log-exit{margin-left:auto}.bash-log-exit.ok{color:var(--text-dim)}.bash-log-exit.fail{color:#e55}.bash-log-cmd{display:block;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;word-break:break-all;color:var(--text)}.bash-log-reason{font-size:11px;color:var(--text-dim);margin-top:2px}.message-compact-marker{cursor:pointer;padding:4px 0;margin:8px 0}.compact-marker-line{display:flex;align-items:center;gap:8px}.compact-marker-dash{flex:1;height:1px;background:var(--border)}.compact-marker-label{font-size:11px;color:var(--text-dim);white-space:nowrap;font-weight:500}.message-compact-marker:hover .compact-marker-label{color:var(--text)}.compact-marker-summary{margin-top:8px;padding:8px 12px;border-left:2px solid var(--border);font-size:12px;color:var(--text-dim)}.reflection-block{margin:8px 0;border-left:2px solid var(--border);border-radius:4px}.reflection-header{display:flex;align-items:center;gap:6px;padding:6px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.reflection-header:hover{background:var(--bg-hover)}.reflection-toggle{font-size:11px;color:var(--text-dim)}.reflection-label{font-size:12px;color:var(--text-dim);font-weight:500}.reflection-active{border-left-color:var(--accent)}.reflection-active .reflection-label{color:var(--accent)}.reflection-content{padding:0 8px 8px;opacity:.85}.menu-btn{background:none;border:none;font-size:20px;color:var(--text);cursor:pointer;display:flex;align-items:center;padding:4px 8px;margin-right:4px;line-height:1}.sidebar-mobile-backdrop{display:none}@media(max-width:767px){body{font-size:16px}.header.has-space h1{display:none}.header{padding:6px 10px;gap:4px}.header h1{font-size:14px}.space-info{font-size:13px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resize-handle{display:none}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:100;width:280px!important;border-right:1px solid var(--border);box-shadow:4px 0 20px #00000026}.sidebar-mobile-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:99}.space-btn .space-pin-btn,.space-btn .space-delete-btn{opacity:.6}.messages{padding:10px;gap:8px}.message{max-width:100%;font-size:15px;padding:8px 10px}.message pre{font-size:11px;padding:6px 8px}.input-area{padding:8px 10px}.input-row textarea{font-size:16px;padding:8px 10px}.input-row .send-btn,.input-row .cancel-btn{padding:0 8px;font-size:12px}.toolbar{gap:4px;padding-top:4px}.tb,.toolbar .settings-toggle-btn,.toolbar .roles-toggle-btn{padding:4px 8px;font-size:12px;min-height:32px;display:flex;align-items:center}.login-form{width:90vw;max-width:320px;padding:24px}.modal{width:95vw!important;min-width:0!important;max-width:none!important}.create-space-modal{width:95vw!important;min-width:0!important}.modal-form{width:90vw;max-width:none}}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:300}.confirm-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:301;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px;min-width:280px;max-width:90vw;box-shadow:0 8px 32px #00000026}.confirm-message{font-size:14px;line-height:1.5;margin:0 0 16px;color:var(--text)}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.confirm-btn{padding:6px 16px;border-radius:4px;font-size:13px;cursor:pointer;border:1px solid var(--border)}.confirm-btn.cancel{background:var(--bg);color:var(--text)}.confirm-btn.cancel:hover{background:var(--bg-surface)}.confirm-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.confirm-btn.primary:hover{opacity:.85}.confirm-btn.danger{background:var(--error);color:#fff;border-color:var(--error)}.confirm-btn.danger:hover{opacity:.85}.welcome-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;padding:24px}.welcome-screen h2{color:var(--text);font-size:22px;font-weight:600}.welcome-balance{font-size:14px;color:var(--text-dim)}.welcome-create-btn{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:600;cursor:pointer;margin-top:4px}.welcome-create-btn:hover{opacity:.85}.welcome-recent{margin-top:16px;width:100%;max-width:320px}.welcome-recent h3{font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.welcome-space-btn{display:block;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:10px 12px;font-size:13px;color:var(--text);cursor:pointer;margin-bottom:4px}.welcome-space-btn:hover{border-color:var(--accent);background:var(--bg-input)}.new-space-btn-sm{background:transparent;border:1px solid var(--accent);padding:4px 10px;border-radius:3px;cursor:pointer;font-size:12px;font-weight:600;color:var(--accent)}.new-space-btn-sm:hover{background:var(--accent);color:#fff}.sidebar-refresh-btn{background:transparent;border:none;padding:2px 6px;cursor:pointer;font-size:16px;color:var(--text-dim);border-radius:3px;line-height:1}.sidebar-refresh-btn:hover{background:var(--surface-hover);color:var(--text)}.space-btn-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-pin-dot{color:var(--accent);font-size:8px;margin-right:4px;vertical-align:middle}.sidebar-user-row{position:relative;margin-top:auto;border-top:1px solid var(--border);padding:8px 4px}.sidebar-user-btn{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;color:var(--text);cursor:pointer;padding:6px 8px;border-radius:4px;font-size:13px;text-align:left}.sidebar-user-btn:hover{background:var(--surface-hover)}.sidebar-user-avatar{font-size:16px}.sidebar-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-menu{position:absolute;bottom:100%;left:8px;right:8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 -4px 16px #0000001f;z-index:100;padding:4px;margin-bottom:4px}.sidebar-user-menu button{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:8px 12px;font-size:13px;cursor:pointer;border-radius:4px}.sidebar-user-menu button:hover{background:var(--bg-surface)}.ss-action-btn{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:3px;line-height:1}.ss-action-btn:hover{color:var(--accent);background:var(--bg-surface)}.ss-action-btn.danger{font-size:12px}.ss-action-btn.danger:hover{color:var(--error)}.ss-action-btn.close{font-size:16px;font-weight:600;margin-left:4px}.ss-text-btn{background:none;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:13px;padding:6px 12px;border-radius:4px}.ss-text-btn:hover{color:var(--accent);border-color:var(--accent)}.ss-text-btn.danger:hover{color:var(--error);border-color:var(--error)}.mobile-only{display:none}@media(max-width:767px){.mobile-only{display:inline-block}}.pair-page{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--bg);padding:20px}.pair-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:32px;max-width:420px;width:100%}.pair-card h2{margin:0 0 16px;font-size:20px}.pair-desc{color:var(--text-dim);font-size:13px;margin:8px 0;line-height:1.5}.pair-status{color:var(--text-dim);font-size:14px;padding:12px 0}.pair-success{color:var(--accent)}.pair-error{color:var(--error)}.pair-actions{display:flex;gap:8px;margin-top:16px}.dock-group{display:flex;flex-direction:column;gap:4px;margin-bottom:2px}.dock-group-header{display:flex;align-items:center;width:100%;color:var(--text-dim);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.dock-group-label{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:4px 0 4px 12px;background:none;border:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;text-align:left}.dock-group-label:hover{color:var(--text)}.dock-group-toggle{padding:4px 12px 4px 4px;background:none;border:none;color:inherit;cursor:pointer}.dock-group-toggle:hover{color:var(--text)}.dock-group-icon{font-size:12px}.dock-group-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim);opacity:.4;flex-shrink:0}.dock-status-dot.online{background:#3c3;opacity:1;box-shadow:0 0 4px #3c3a}.dock-group-count{color:var(--text-dim);font-size:10px;opacity:.6}.dock-group-chevron{font-size:10px;transition:transform .15s}.dock-group-chevron.collapsed{transform:rotate(-90deg)}.dock-space-btn{padding-left:16px!important}.dock-expand-btn{display:block;width:100%;padding:4px 12px 4px 28px;background:none;border:none;color:var(--text-dim);font-size:12px;cursor:pointer;text-align:left;opacity:.7}.dock-expand-btn:hover{color:var(--accent);opacity:1}.dock-page{padding:32px 24px;max-width:500px;margin:0 auto}.dock-page-header{margin-bottom:24px}.dock-page-status{font-size:13px;color:var(--text-dim)}.dock-page-name{font-size:22px;font-weight:600;margin:4px 0 0;cursor:pointer}.dock-page-name:hover{color:var(--accent)}.dock-page-name-edit{display:flex;align-items:center;gap:8px;margin-top:4px}.dock-page-name-edit .form-input{flex:1;font-size:16px}.dock-page-info{margin-bottom:20px}.dock-page-info-row{display:flex;gap:12px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--border)}.dock-page-label{color:var(--text-dim);min-width:80px}.dock-page-value{color:var(--text);word-break:break-all}.dock-page-actions{display:flex;gap:12px;margin-bottom:28px}.dock-page-actions .danger{color:var(--danger, #e55)}.dock-page-spaces h3{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--text-dim)}.dock-page-empty{font-size:13px;color:var(--text-dim);margin:0}.dock-page-space-list{display:flex;flex-direction:column;gap:4px}.dock-page-space-btn{display:block;width:100%;padding:8px 12px;background:var(--bg-secondary, var(--bubble-bg));border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;cursor:pointer;text-align:left}.dock-page-space-btn:hover{border-color:var(--accent)}.bash-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bash-modal{max-width:520px;width:90%;max-height:80vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.bash-confirm{margin:0;padding:12px 16px;background:#fff8f0;border:1px solid #e8a060;border-radius:8px}.bash-confirm-header{font-weight:600;font-size:13px;display:flex;align-items:center;gap:6px}.bash-confirm-space{color:#d4713b;font-weight:700;font-size:13px;color:#b85a2a;margin-bottom:6px}.bash-confirm-cmd{font-family:var(--font-mono, "SF Mono", Menlo, monospace);font-size:12px;background:#f5f0eb;padding:8px 10px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:4px 0 6px;color:#2c2c2c}.bash-confirm-reason{font-size:12px;color:#888;margin-bottom:8px}.bash-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.bash-confirm-approve,.bash-confirm-deny{padding:5px 16px;border-radius:5px;font-size:13px;cursor:pointer;border:none;font-weight:500}.bash-confirm-approve{background:#d4713b;color:#fff}.bash-confirm-approve:hover{background:#c0632f}.bash-confirm-deny{background:#eee;color:#666}.bash-confirm-deny:hover{background:#ddd}.settings-group-title{font-size:13px;font-weight:600;color:#555;margin:12px 0 4px;padding:0}.settings-group-title:first-child{margin-top:0}.job-section{margin-top:8px}.job-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.job-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text)}.job-empty{color:var(--text-dim);font-size:13px;padding:12px 0}.job-card{border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-bottom:8px;background:var(--bg)}.job-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.job-card-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.job-name{font-weight:600;font-size:14px;color:var(--text)}.job-schedule{font-size:12px;color:var(--text-dim);font-family:monospace;background:var(--bg-surface);padding:1px 6px;border-radius:3px}.job-manual{font-style:italic}.job-card-status{font-size:12px;white-space:nowrap}.job-running{color:var(--accent);font-weight:500}.job-next{color:var(--text-dim)}.job-disabled{color:var(--text-dim);font-style:italic}.job-prompt-preview{font-size:12px;color:var(--text-dim);margin:4px 0 6px;line-height:1.4}.job-actions{display:flex;gap:4px;flex-wrap:wrap}.job-actions .ss-text-btn{font-size:12px;padding:2px 6px}.job-history{margin-top:8px;border-top:1px solid var(--border);padding-top:6px}.job-exec-row{display:flex;align-items:center;gap:8px;font-size:12px;padding:3px 0;flex-wrap:wrap}.job-exec-status{width:16px;text-align:center}.job-exec-time{color:var(--text-dim);min-width:100px}.job-exec-duration{color:var(--text-dim);min-width:50px}.job-exec-label{font-size:11px}.job-status-ok{color:#2a7d3f}.job-status-err{color:#c44}.job-status-run{color:var(--accent)}.job-exec-detail{width:100%;margin:8px 0;border:1px solid var(--border);border-radius:6px;background:var(--bg-surface);max-height:500px;overflow-y:auto;padding:8px}.job-form-modal{max-width:500px;width:500px}.job-form-modal label{display:block;font-size:12px;color:var(--text-dim);font-weight:500;margin-top:12px;margin-bottom:4px}.job-form-modal input,.job-form-modal textarea{width:100%;box-sizing:border-box;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-family:inherit}.job-form-modal input:focus,.job-form-modal textarea:focus{outline:none;border-color:var(--accent)}.job-form-modal textarea{resize:vertical;min-height:60px}.job-form-row{display:flex;gap:12px}.job-form-row>div{flex:1}.job-form-row input{width:100%;box-sizing:border-box}.job-label-hint{font-weight:400;color:var(--text-dim);opacity:.7}.job-cron-input-row{display:flex;gap:6px;align-items:center}.job-cron-input-row input{flex:1}.job-cron-help-btn{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--bg);color:var(--text-dim);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.job-cron-help-btn:hover{border-color:var(--accent);color:var(--accent)}.job-cron-format{font-size:11px;color:var(--text-dim);opacity:.6;margin-top:2px;font-family:monospace;letter-spacing:.5px}.job-cron-preview{font-size:11px;color:var(--accent);display:block;margin-top:2px}.job-cron-help-bubble{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-top:6px;font-size:11px}.job-cron-help-bubble code{display:block;font-family:monospace;font-size:11px;line-height:1.5;color:var(--text);background:none;padding:0}.job-cron-help-title{font-weight:600;font-size:11px;color:var(--text-dim);margin-bottom:4px}.job-form-divider{border-top:1px solid var(--border);margin:14px 0 6px}.job-form-section-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:4px}.job-item{padding:8px 0;border-bottom:1px solid var(--border)}.job-item.disabled{opacity:.5}.job-item-header{display:flex;justify-content:space-between;align-items:center}.job-toggle{display:flex;align-items:center;gap:6px;cursor:pointer}.job-toggle input{margin:0}.job-item-actions{display:flex;gap:2px}.job-btn{background:none;border:none;cursor:pointer;padding:2px 6px;font-size:13px;color:var(--text-dim);border-radius:3px}.job-btn:hover{background:var(--bg-surface);color:var(--text)}.job-btn.danger:hover{color:#c44}.job-detail{font-size:12px;color:var(--text-dim);margin-top:2px;display:flex;gap:8px;flex-wrap:wrap}.job-prompt{opacity:.7}.job-edit-form{display:flex;flex-direction:column;gap:8px}.job-edit-form input,.job-edit-form textarea{width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:13px;background:var(--bg);color:var(--text);font-family:inherit}.job-edit-form textarea{resize:vertical;min-height:60px}.job-edit-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.job-edit-actions button{padding:4px 12px;border-radius:4px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text);cursor:pointer;font-size:13px}.job-edit-actions button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.cron-hint{font-size:11px;color:var(--text-dim);line-height:1.5}.cron-hint code{font-size:11px;background:var(--bg-surface);padding:1px 4px;border-radius:3px}.worker-section{margin-bottom:16px}.worker-label{display:block;font-size:13px;font-weight:600;color:var(--text);margin-bottom:6px}.worker-hint{font-size:12px;color:var(--text-dim);margin-top:4px}.worker-section select{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:13px;background:var(--bg);color:var(--text)}.worker-list{display:flex;flex-direction:column;gap:4px}.worker-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 0;font-size:13px}.worker-toggle input{margin:0}.empty-hint{color:var(--text-dim);font-size:13px;font-style:italic}.notify-settings{max-width:400px;min-width:340px}.notify-channel-list{display:flex;flex-direction:column;gap:6px}.notify-channel-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:4px}.notify-channel-info{display:flex;flex-direction:column;gap:2px;min-width:0}.notify-channel-type{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px}.notify-channel-label{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notify-unbind-btn{font-size:12px;padding:4px 10px;border:1px solid var(--border);flex-shrink:0;border-radius:4px;background:var(--bg);color:var(--text-dim);cursor:pointer}.notify-unbind-btn:hover{color:#e55;border-color:#e55}.notify-empty{color:var(--text-dim);font-size:13px;font-style:italic}.notify-add-section{margin-top:16px}.notify-add-label{font-size:13px;color:var(--text-dim);margin-bottom:8px}.notify-btn{font-size:13px;padding:6px 14px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);cursor:pointer}.notify-btn:hover{background:var(--hover)}.notify-btn:disabled{opacity:.5;cursor:default}.notify-btn-dim{color:var(--text-dim)}.notify-btn-dim:hover{color:var(--text)}.notify-btn-row{display:flex;gap:8px;flex-wrap:wrap}.notify-bind-link{margin-top:12px;padding:12px;background:var(--hover);border-radius:6px;font-size:13px}.notify-bind-link a{display:inline-block;margin:8px 0;color:#2a9df4;font-weight:600}.notify-bind-hint{color:var(--text-dim);font-size:12px;margin-top:8px}.notify-webhook-form{margin-top:16px}.notify-webhook-header{font-size:14px;font-weight:600;margin-bottom:8px}.notify-webhook-input{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-family:SF Mono,Monaco,Consolas,monospace;box-sizing:border-box}.notify-error{color:#e55;font-size:13px;margin-top:8px}.notify-loading{color:var(--text-dim);font-size:13px;margin-top:8px}.notifications-page{display:flex;flex-direction:column;height:100%;padding:20px;max-width:700px;margin:0 auto;width:100%}.notifications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-shrink:0}.notifications-header h2{margin:0;font-size:18px;font-weight:600}.notifications-tabs{display:flex;gap:4px}.notifications-tab{padding:6px 14px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-dim);cursor:pointer;font-size:13px}.notifications-tab.active{background:var(--hover);color:var(--text);border-color:var(--text-dim)}.notifications-tab:hover{background:var(--hover)}.notifications-filter{display:flex;gap:4px;margin-bottom:12px}.notifications-filter-btn{padding:4px 10px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--text-dim);cursor:pointer;font-size:12px}.notifications-filter-btn.active{background:var(--hover);color:var(--text);border-color:var(--text-dim)}.notifications-list-container{flex:1;overflow-y:auto}.notifications-list{display:flex;flex-direction:column;gap:8px}.notifications-empty,.notifications-loading{color:var(--text-dim);font-size:14px;text-align:center;margin-top:40px}.notification-item{padding:10px 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg)}.notification-item.notification-warn{border-left:3px solid #e6a817}.notification-item.notification-urgent{border-left:3px solid #e55}.notification-top{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px}.notification-type-badge{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim)}.notification-space{color:var(--accent, #6af);cursor:pointer;font-weight:500}.notification-space:hover{text-decoration:underline}.notification-time{color:var(--text-dim);margin-left:auto}.notification-message{font-size:13px;line-height:1.4;white-space:pre-wrap}.notifications-settings-container{flex:1;overflow-y:auto}.notify-settings-inline h3{margin:0 0 12px;font-size:15px;font-weight:600}.notify-toast-container{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:8px;max-width:380px}.notify-toast{padding:10px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary, var(--bg));box-shadow:0 4px 12px #0000004d;animation:toast-in .3s ease}.notify-toast-warn{border-left:3px solid #e6a817}.notify-toast-urgent{border-left:3px solid #e55}.notify-toast-header{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-dim);margin-bottom:4px}.notify-toast-close{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:16px;padding:0 2px;line-height:1}.notify-toast-close:hover{color:var(--text)}.notify-toast-message{font-size:13px;line-height:1.4;white-space:pre-wrap}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
