:root{--accent: #111111;--accent-hover: #333333;--accent-light: #eaeaec;--bg: #f7f7f8;--surface: #ffffff;--sidebar-bg: #f7f7f8;--text: #09090b;--text-secondary: #52525b;--text-tertiary: #a1a1aa;--border: #e4e4e7;--radius: 12px;--radius-sm: 8px;--shadow: 0 8px 30px rgba(0, 0, 0, .04), 0 1px 3px rgba(0, 0, 0, .02);--font: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--bg-outer: #f0f0f2;--hover-bg: rgba(0, 0, 0, .04);--error-bg: #fef2f2;--error-text: #ef4444;--success-bg: #f0fdf4;--success-text: #22c55e;--warning-bg: #fffbeb;--warning-text: #f59e0b;--table-hover: #fafafa;--surface-2: #f4f4f5;--surface-1: #f9f9fa;--surface-3: #e4e4e7;--muted: #63636e}[data-theme=dark]{--accent: #ffffff;--accent-hover: #e4e4e7;--accent-light: #27272a;--bg: #09090b;--surface: #18181b;--sidebar-bg: #09090b;--text: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--border: #27272a;--shadow: 0 8px 30px rgba(0, 0, 0, .2), 0 1px 3px rgba(0, 0, 0, .1);--bg-outer: #000000;--hover-bg: rgba(255, 255, 255, .08);--error-bg: #450a0a;--error-text: #fca5a5;--success-bg: #052e16;--success-text: #86efac;--warning-bg: #451a03;--warning-text: #fde047;--table-hover: #1f1f22;--surface-2: #1f1f22;--surface-1: #232327;--surface-3: #27272a;--muted: #a1a1aa}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;margin:0;padding:0;overflow-x:hidden;position:relative;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{overscroll-behavior-y:contain}#root{height:100%;display:flex;flex-direction:column;overflow-x:hidden;font-family:var(--font);background:var(--bg-outer);color:var(--text)}.app-shell{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@media(display-mode:standalone){html,body{overscroll-behavior:none;-webkit-user-select:none;user-select:none}.msg-body,.chat-textarea,textarea,input,pre,code,.plan-document-readable{-webkit-user-select:text;user-select:text}body{position:fixed;width:100%;height:100%}#root{height:100%;overflow:hidden}@media(max-width:600px){.chat-input-container{padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.chat-input-box{border-radius:12px;padding:8px 10px}.chat-textarea{font-size:16px}}.chat-input-container.standalone{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.sidebar{padding-top:calc(16px + env(safe-area-inset-top))}.mobile-header{padding-top:calc(8px + env(safe-area-inset-top))}}::selection{background:color-mix(in srgb,var(--accent) 15%,transparent);color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 15%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 30%,transparent);background-clip:content-box}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 15%,transparent) transparent}button{font-family:inherit;cursor:pointer;border:none;background:none;touch-action:manipulation}input,textarea,select{font-family:inherit;border:none;outline:none;background:transparent}select{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;font-size:13px}option{background:var(--surface);color:var(--text)}select:hover{background:var(--surface-2);border-color:var(--text-tertiary)}select:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.app-shell{display:flex;height:100dvh;width:100%;overflow:hidden}.main{flex:1;display:flex;flex-direction:column;background:var(--bg);overflow:hidden;position:relative}.header-glow-overlay{position:absolute;top:0;left:0;right:0;height:400px;overflow:hidden;pointer-events:none;z-index:0;animation:glowFadeIn .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes glowFadeIn{0%{opacity:0}to{opacity:1}}@keyframes glowPulse{0%{opacity:.65;transform:scaleY(1)}50%{opacity:.95;transform:scaleY(1.08)}to{opacity:.65;transform:scaleY(1)}}.chat-top-glow{position:absolute;top:0;left:0;right:0;height:320px;pointer-events:none;z-index:1;transform-origin:top center;background:radial-gradient(ellipse 80% 60% at 50% -10%,color-mix(in srgb,var(--accent) 24%,transparent) 0%,color-mix(in srgb,var(--accent) 8%,transparent) 50%,transparent 100%),linear-gradient(to bottom,color-mix(in srgb,var(--accent) 12%,transparent) 0%,transparent 100%);animation:glowFadeIn .5s cubic-bezier(.16,1,.3,1) forwards,glowPulse 3.5s ease-in-out infinite alternate}:root{--glow-size: 380px;--glow-blur: 100px;--glow-opacity-light: .28;--glow-opacity-dark: .45;--glow-speed-factor: 1;--glow-color-1: #f43f5e;--glow-color-2: #8b5cf6;--glow-color-3: #0d9488;--glow-color-4: #eab308}.glow-orb{position:absolute;width:var(--glow-size);height:var(--glow-size);border-radius:50%;filter:blur(var(--glow-blur));will-change:transform;transform-origin:center center}[data-theme=light] .glow-orb{opacity:var(--glow-opacity-light);mix-blend-mode:normal}[data-theme=dark] .glow-orb{opacity:var(--glow-opacity-dark);mix-blend-mode:plus-lighter}[data-glow-style=custom]{--glow-opacity-light: calc(var(--glow-opacity, .45) * .6);--glow-opacity-dark: var(--glow-opacity, .45)}.orb-1{top:-100px;left:10%;background:radial-gradient(circle,var(--glow-color-1) 0%,color-mix(in srgb,var(--glow-color-1) 40%,transparent) 40%,transparent 70%);animation:float-orb-1 calc(18s / var(--glow-speed-factor)) ease-in-out infinite alternate}.orb-2{top:-80px;right:10%;background:radial-gradient(circle,var(--glow-color-2) 0%,color-mix(in srgb,var(--glow-color-2) 40%,transparent) 40%,transparent 70%);animation:float-orb-2 calc(22s / var(--glow-speed-factor)) ease-in-out infinite alternate}.orb-3{top:-150px;left:40%;background:radial-gradient(circle,var(--glow-color-3) 0%,color-mix(in srgb,var(--glow-color-3) 40%,transparent) 40%,transparent 70%);animation:float-orb-3 calc(20s / var(--glow-speed-factor)) ease-in-out infinite alternate}.orb-4{top:-50px;left:25%;background:radial-gradient(circle,var(--glow-color-4) 0%,color-mix(in srgb,var(--glow-color-4) 40%,transparent) 40%,transparent 70%);animation:float-orb-4 calc(16s / var(--glow-speed-factor)) ease-in-out infinite alternate}[data-theme=light][data-glow-style=standard]{--glow-color-1: #fda4af;--glow-color-2: #c084fc;--glow-color-3: #2dd4bf;--glow-color-4: #fef08a}[data-glow-style=disabled] .glow-orb{display:none!important}[data-glow-style=colorful]{--glow-size: 460px;--glow-blur: 85px;--glow-opacity-light: .38;--glow-opacity-dark: .65;--glow-color-1: #ff1493;--glow-color-2: #a855f7;--glow-color-3: #06b6d4;--glow-color-4: #f97316}[data-glow-style=standard]{--glow-size: 380px;--glow-blur: 100px;--glow-opacity-light: .28;--glow-opacity-dark: .45;--glow-color-1: #f43f5e;--glow-color-2: #8b5cf6;--glow-color-3: #0d9488;--glow-color-4: #eab308}@keyframes float-orb-1{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-80px,30px,0) scale(1.15)}to{transform:translate3d(40px,-20px,0) scale(.9)}}@keyframes float-orb-2{0%{transform:translateZ(0) scale(1.1)}50%{transform:translate3d(60px,-40px,0) scale(.85)}to{transform:translate3d(-40px,40px,0) scale(1.05)}}@keyframes float-orb-3{0%{transform:translateZ(0) scale(.9)}50%{transform:translate3d(50px,50px,0) scale(1.2)}to{transform:translate3d(-60px,-30px,0) scale(1)}}@keyframes float-orb-4{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-30px,-60px,0) scale(.8)}to{transform:translate3d(70px,40px,0) scale(1.15)}}.main.responding{overflow:hidden}.sidebar{width:60px;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:16px 0;gap:10px;position:relative;z-index:30;flex-shrink:0;box-sizing:border-box}.sidebar-top{display:flex;flex-direction:column;align-items:center;gap:6px}.logo{margin-bottom:6px}.nav-btn{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);position:relative;transition:all .22s cubic-bezier(.16,1,.3,1)}.nav-btn:hover{background:var(--hover-bg);color:var(--text);border-radius:10px;transform:scale(1.04)}.nav-btn.active{background:var(--surface);color:var(--accent);border-radius:10px;box-shadow:0 4px 12px #0000000d}.workspace-item:before,.nav-btn:before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%) scale(0);width:4px;height:4px;background:var(--accent);border-radius:0 4px 4px 0;transition:all .22s cubic-bezier(.16,1,.3,1);transform-origin:left center}.workspace-item:hover:before,.nav-btn:hover:before{transform:translateY(-50%) scale(1);height:12px}.workspace-item.active:before,.nav-btn.active:before{transform:translateY(-50%) scale(1);height:22px;background:var(--accent)}.nav-btn.avatar{padding:0;border-radius:50%;border:2px solid transparent;transition:all .22s cubic-bezier(.16,1,.3,1)}.nav-btn.avatar:hover{border-color:var(--accent);transform:scale(1.06)}.nav-btn.avatar img{width:32px;height:32px;border-radius:50%;display:block}.sidebar-divider{width:28px;height:1px;background:var(--border);opacity:.55;margin:6px 0}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:8px}.workspace-rail{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.workspace-item{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;font-weight:700;cursor:pointer;position:relative;transition:all .22s cubic-bezier(.16,1,.3,1);border:1px solid transparent;box-shadow:0 2px 5px #0000000d}.workspace-item:hover{border-radius:10px;transform:scale(1.05);box-shadow:0 4px 10px #00000014}.workspace-item.active{border-radius:10px;transform:scale(1.02);border-color:var(--accent);box-shadow:0 4px 12px #0000001a}.workspace-item.global{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;border-color:#ffffff14}[data-theme=light] .workspace-item.global{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#334155;border-color:#cbd5e1}.workspace-item.global:hover svg{transform:rotate(15deg)}.workspace-item.global svg{transition:transform .25s ease}.workspace-item.add{color:var(--text-tertiary);border:1px dashed var(--border);background:transparent;box-shadow:none}.workspace-item.add:hover{background:var(--hover-bg);color:var(--accent);border-color:var(--accent);border-style:solid}.workspace-item .ssh-badge{position:absolute;bottom:-4px;right:-4px;background:#3b82f6;color:#fff;font-size:8px;padding:1px 3px;border-radius:4px;font-weight:700;transform:scale(.75);box-shadow:0 1px 3px #00000026}.workspace-running-dot{position:absolute;top:-2px;right:-2px;width:9px;height:9px;border-radius:50%;background:#10b981;border:1.5px solid var(--sidebar-bg);box-shadow:0 0 6px #10b981b3;animation:running-pulse 2s infinite;z-index:10}@keyframes running-pulse{0%{transform:scale(1);box-shadow:0 0 #10b98166}70%{transform:scale(1);box-shadow:0 0 0 5px #10b98100}to{transform:scale(1);box-shadow:0 0 #10b98100}}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%) translate(-6px) scale(.92);background:#09090b;color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:550;letter-spacing:.01em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #0003;border:1px solid #27272a;z-index:1000}[data-tooltip]:hover:after{opacity:1;transform:translateY(-50%) translate(0) scale(1)}[data-theme=light] [data-tooltip]:after{background:#fff;color:#09090b;border-color:#e4e4e7;box-shadow:0 4px 16px #00000014}.session-list{position:absolute;left:100%;top:0;bottom:0;width:260px;background:var(--surface);border-right:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:4px;z-index:10;overflow-y:auto}.session-list h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:8px;padding:0 4px}.side-panel{position:absolute;left:100%;top:0;bottom:0;width:260px;background:var(--surface);border-right:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:4px;z-index:35;overflow-y:auto}.side-panel h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:8px;padding:0 4px}.side-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px}.side-panel-header h4{margin-bottom:0;padding:0}.search-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg);margin-bottom:8px;color:var(--text-secondary);transition:box-shadow .2s ease}.search-row:focus-within{box-shadow:0 0 0 1.5px var(--accent)}.search-input{flex:1;font-size:13px;color:var(--text)}.panel-list{display:flex;flex-direction:column;gap:2px}.web-side-panel{width:340px}.web-search-panel{display:flex;flex-direction:column;gap:10px;min-width:0}.web-search-input-row{padding-right:6px}.web-search-submit{width:26px;height:26px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.web-search-submit:hover:not(:disabled){background:var(--accent-light);color:var(--text)}.web-search-submit:disabled{opacity:.45;cursor:not-allowed}.web-search-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:4px}.web-search-controls select,.web-site-input{min-width:0;height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:12px;padding:0 10px}.web-site-input:disabled{opacity:.55;cursor:not-allowed}.web-search-status,.web-search-empty,.web-search-error{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;font-size:12px;color:var(--text-secondary);background:var(--bg)}.web-search-error{border-color:var(--error-text);background:var(--error-bg);color:var(--error-text)}.web-result-list{display:flex;flex-direction:column;gap:8px}.web-result-item{display:flex;flex-direction:column;gap:5px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.web-result-item:hover{border-color:var(--accent);background:var(--accent-light)}.web-result-topline{display:flex;align-items:center;gap:6px;min-width:0}.web-provider-badge{border-radius:999px;padding:2px 6px;font-size:10px;line-height:1.2;font-weight:700;text-transform:uppercase;color:#2563eb;background:#2563eb1a;flex-shrink:0}.web-provider-badge.provider-wikipedia{color:#475569;background:#4755691f}.web-quality-badge,.web-cluster-badge{border-radius:999px;padding:2px 6px;font-size:10px;line-height:1.2;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);flex-shrink:0;text-transform:uppercase}.web-quality-badge.quality-primary,.web-quality-badge.quality-high{color:var(--success-text);background:var(--success-bg);border-color:transparent}.web-result-url{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-tertiary);font-size:11px}.web-result-title{color:var(--text);font-size:13px;font-weight:650;line-height:1.3;overflow-wrap:anywhere;text-decoration:none}.web-result-title:hover{color:var(--accent)}.web-result-snippet{color:var(--text-secondary);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.web-result-actions{display:flex;justify-content:flex-end}.web-page-preview{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);padding:10px}.web-page-preview-title{color:var(--text);font-size:13px;font-weight:700;line-height:1.3;margin-bottom:4px}.web-page-preview p{margin-top:8px;color:var(--text-secondary);font-size:12px;line-height:1.45}.session-row{display:flex;align-items:center;gap:2px}.session-row .session-item{flex:1;min-width:0}.session-row .icon-btn.del{opacity:0;width:28px;height:28px;border-radius:6px;color:var(--text-tertiary);flex-shrink:0}.session-row:hover .icon-btn.del{opacity:1}.session-item{display:flex;align-items:center;gap:8px;padding:8px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;text-align:left;transition:background .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-item:hover{background:var(--accent-light);color:var(--text)}.session-item.session-active{background:#4a9eff14;color:#4a9eff}.session-item.session-running{color:var(--text)}.session-running-pill{margin-left:auto;padding:2px 6px;border-radius:999px;background:#ff95001f;color:#ff9500;font-size:10px;font-weight:700;line-height:1.2;flex-shrink:0}.session-active-dot{margin-left:4px;width:8px;height:8px;border-radius:50%;background:#4a9eff;flex-shrink:0;animation:session-pulse 2s ease-in-out infinite}@keyframes session-pulse{0%,to{opacity:1;box-shadow:0 0 #4a9eff66}50%{opacity:.7;box-shadow:0 0 0 4px #4a9eff00}}.session-date-header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding:10px 8px 4px;border-top:1px solid var(--border);margin-top:4px}.session-date-header:first-child{border-top:none;margin-top:0}.prompt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.prompt-card{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;text-align:left;display:flex;flex-direction:column;gap:6px;min-height:72px;transition:background .15s ease,border-color .15s ease;cursor:pointer}.prompt-card:hover{border-color:var(--text-secondary);background:var(--surface)}.prompt-text{font-size:14px;color:var(--text);line-height:1.4}.prompt-icon{color:var(--text-secondary)}.refresh-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);margin-bottom:32px;transition:color .15s ease;opacity:.7}.refresh-btn:hover{color:var(--text);opacity:1}.prev-workspaces{margin-bottom:24px}.prev-workspaces-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.prev-workspaces-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.prev-workspace-item{display:flex;align-items:center;gap:14px;background:transparent;border:1px solid var(--border);border-radius:10px;padding:12px 16px;text-align:left;transition:background .15s ease,border-color .15s ease;cursor:pointer}.prev-workspace-item:hover{border-color:var(--text-secondary);background:var(--surface)}.prev-ws-icon{flex-shrink:0;color:var(--text-tertiary);width:36px;height:36px;border-radius:8px;background:transparent;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);transition:all .15s ease}.prev-workspace-item:hover .prev-ws-icon{color:var(--text-secondary);border-color:var(--text-secondary)}.prev-ws-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.prev-ws-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prev-ws-path{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.prev-ws-subtitle{font-size:11px;color:var(--text-secondary)}.prev-ws-session-title{color:var(--accent);font-weight:500}.prev-ws-arrow{flex-shrink:0;color:var(--text-secondary);display:flex;align-items:center;opacity:0;transition:opacity .15s ease}.prev-workspace-item:hover .prev-ws-arrow{opacity:1}.chat-input-container{width:100%;position:sticky;bottom:0;display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0;padding:16px 24px;background:transparent;z-index:20}.chat-input-container:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:780px;height:380px;background:radial-gradient(ellipse 50% 60% at 50% 100%,color-mix(in srgb,var(--accent) 38%,transparent) 0%,color-mix(in srgb,var(--accent) 15%,transparent) 50%,transparent 100%);pointer-events:none;opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);z-index:-1;filter:blur(24px);transform:translate(-50%) translateY(10px) scale(.95)}.chat-input-container.is-typing:before{opacity:1;transform:translate(-50%) translateY(0) scale(1);animation:typing-glow-pulse 4s ease-in-out infinite alternate}@keyframes typing-glow-pulse{0%{opacity:.95;filter:blur(24px);transform:translate(-50%) translateY(0) scale(1)}50%{opacity:1;filter:blur(30px);transform:translate(-50%) translateY(-2px) scale(1.02)}to{opacity:.95;filter:blur(24px);transform:translate(-50%) translateY(0) scale(1)}}.chat-input-container.standalone{margin-top:auto;flex-shrink:0}@keyframes input-glow-pulse{0%,to{opacity:.85}50%{opacity:1}}.chat-input-box{background:var(--surface);border-radius:16px;border:1px solid var(--border);padding:12px 14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 4px 20px #0000000a,0 1px 2px #00000005;transition:border-color .2s ease,box-shadow .25s ease,transform .2s ease;width:100%}.chat-input-box:focus-within{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 0 0 1px var(--accent),0 8px 24px #00000014}.slash-command-dropdown{max-height:280px;overflow-y:auto;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 32px #0000001f}.slash-command-item{display:flex;align-items:center;gap:8px;padding:10px 14px;cursor:pointer;transition:background .12s ease;border-bottom:1px solid var(--border)}.slash-command-item:last-child{border-bottom:none}.slash-command-item:hover,.slash-command-item.selected{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.slash-command-name{font-size:14px;font-weight:600;color:var(--accent);flex-shrink:0;font-family:var(--font-mono, monospace)}.slash-command-desc{font-size:12px;color:var(--text-secondary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-command-cat{font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--accent) 8%,var(--bg));color:var(--text-tertiary);flex-shrink:0}.chat-row{display:flex;align-items:center;gap:8px}.chat-textarea{flex:1;min-width:0;resize:none;font-size:15px;line-height:1.45;min-height:24px;max-height:110px;color:var(--text);overflow-y:auto;border:none;outline:none;background:transparent;font-weight:400}.chat-textarea::placeholder{color:var(--text-tertiary)}.mode-tag{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));color:var(--accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;height:34px;box-sizing:border-box;box-shadow:0 2px 8px #00000005;transition:all .2s ease;-webkit-user-select:none;user-select:none}.mode-tag-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block;box-shadow:0 0 8px var(--accent);animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.mode-tag .remove-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;color:var(--accent);opacity:.6;cursor:pointer;transition:all .15s ease;padding:0;border:none;background:transparent;line-height:1}.mode-tag .remove-btn:hover{background:color-mix(in srgb,var(--accent) 20%,transparent);opacity:1}.toolbar-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);transition:color .15s ease}.toolbar-btn:hover{color:var(--text)}.attach-wrap{position:relative}.plus-btn{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);background:var(--bg);border:1px solid var(--border);transition:all .2s ease}.plus-btn:hover{background:color-mix(in srgb,var(--accent) 5%,var(--bg));color:var(--accent);border-color:var(--accent-light);transform:scale(1.05)}.plus-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);transform:rotate(45deg)}.plus-btn.has-skills:not(.active){color:var(--accent);border-color:var(--accent-light);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.attach-dropdown{position:absolute;left:0;bottom:calc(100% + 8px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:2px;min-width:220px;max-width:min(320px,calc(100vw - 32px));max-height:340px;overflow-y:auto;z-index:20}.attach-dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998}.attach-option{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;color:var(--text-secondary);transition:background .15s ease;text-align:left}.attach-option.active{color:var(--accent);background:var(--bg)}.attach-option:hover{background:var(--bg);color:var(--text)}.attach-menu-divider{height:1px;margin:4px 2px;background:var(--border)}.attach-menu-label{padding:4px 8px 2px;color:var(--text-tertiary);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.voice-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--text-secondary);background:var(--bg);padding:0;border-radius:10px;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--border);transition:all .2s ease}.voice-btn:hover{background:var(--surface);border-color:var(--text-tertiary);color:var(--text)}.voice-btn.active{background:#ef44441a;border-color:#ef444466;color:#ef4444;animation:pulse-red 2s infinite}@keyframes pulse-red{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 6px #ef444400}to{box-shadow:0 0 #ef444400}}.speech-error-inline{font-size:11px;color:var(--error-text);margin-left:8px;display:inline-flex;align-items:center}.speech-status{margin-top:8px;padding:8px 12px;border-radius:8px;background:var(--error-bg);color:var(--error-text);font-size:12px;border:1px solid var(--border)}.char-count{font-size:12px;color:var(--text-tertiary);-webkit-user-select:none;user-select:none}.attachment-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;background:var(--accent-light);color:var(--accent);font-size:12px}.attachment-chip.image{background:var(--success-bg);color:var(--success-text)}.chip-x{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;line-height:1;margin-left:2px;color:inherit;opacity:.6}.chip-x:hover{opacity:1}.web-select-wrap,.provider-select-wrap{position:relative}.web-dropdown{position:absolute;right:0;bottom:calc(100% + 8px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:4px;display:flex;flex-direction:column;gap:2px;min-width:140px;z-index:20}.web-dropdown.provider-dropdown,.web-dropdown.model-dropdown{right:auto;left:0;max-height:280px;overflow-y:auto;min-width:180px}.web-dropdown.unified-selector{min-width:240px;max-height:450px}.model-dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998}.model-group-header{padding:10px 12px 6px;font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb,var(--surface) 98%,var(--bg-outer));position:sticky;top:0;z-index:8;border-bottom:1px solid var(--border);box-shadow:0 -6px color-mix(in srgb,var(--surface) 98%,var(--bg-outer))}.model-group-header.loading{text-transform:none;font-style:italic;font-weight:400}.web-option.indent{padding-left:20px}.web-option{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;color:var(--text-secondary);transition:background .15s ease}.web-option:hover{background:var(--bg);color:var(--text)}.web-option.active{color:var(--accent);background:var(--bg)}.model-search-wrap{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);margin:-4px -4px 0;position:sticky;top:-4px;background:var(--surface);z-index:10}.model-search-icon{flex-shrink:0;color:var(--text-secondary);opacity:.5}.model-search-input{flex:1;border:none;outline:none;background:transparent;font-size:13px;color:var(--text);padding:2px 0;font-family:inherit}.model-search-input::placeholder{color:var(--text-secondary);opacity:.5}.model-list{display:flex;flex-direction:column;gap:2px}.model-option-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-checkmark{flex-shrink:0;color:var(--accent)}.send-btn{min-width:36px;height:36px;padding:0 10px;border-radius:10px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 20%,transparent)}.send-btn-label{font-size:12px;font-weight:700;line-height:1}.send-btn:hover{background:var(--accent-hover);transform:scale(1.05) translateY(-1px);box-shadow:0 4px 15px color-mix(in srgb,var(--accent) 30%,transparent)}.send-btn:active{transform:scale(.95)}.send-btn.disabled{background:var(--bg);color:var(--text-tertiary);box-shadow:none;pointer-events:none}.chat-view{height:100%;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative;background:var(--bg)}.chat-header{display:flex;align-items:center;gap:12px;padding:12px 24px;background-color:transparent;flex-shrink:0;position:relative;z-index:10}.chat-title{font-weight:600;font-size:.8rem}.chat-running-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#ff95001f;color:#ff9500;font-size:11px;font-weight:700}.chat-running-badge.background{background:#4a9eff1a;color:#4a9eff}.chat-running-badge.retry{background:#ff950029;color:#f97316}.chat-running-dot{width:7px;height:7px;border-radius:50%;background:currentColor;animation:session-pulse 1.6s ease-in-out infinite}.background-run-panel{margin:8px 24px 0;padding:10px 12px;border:1px solid rgba(74,158,255,.18);border-radius:8px;background:#4a9eff0f;display:flex;flex-direction:column;gap:6px}.background-run-main{display:flex;align-items:center;gap:8px;min-width:0}.background-run-label{padding:2px 6px;border-radius:999px;background:#4a9eff1f;color:#4a9eff;font-size:10px;font-weight:800;text-transform:uppercase;flex-shrink:0}.background-run-message{color:var(--text);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.background-run-meta,.background-run-queued{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px;min-width:0}.background-run-meta span:not(:last-child):after{content:"";display:inline-block;width:3px;height:3px;margin-left:8px;border-radius:50%;background:currentColor;vertical-align:middle;opacity:.5}.background-run-queued span:first-child{color:#ff9500;font-weight:700;flex-shrink:0}.background-run-queued span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-panel{border:1px solid rgba(74,158,255,.18);border-radius:8px;background:#4a9eff0f;overflow:hidden;margin:0 24px}.writing-panel-header{display:flex;align-items:center;gap:8px;padding:8px 12px;color:#4a9eff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.writing-panel-header svg{flex-shrink:0}.writing-panel-elapsed{margin-left:auto;color:var(--text-secondary);font-weight:400;text-transform:none;font-size:11px}.writing-panel-content{border-top:1px solid rgba(74,158,255,.12);padding:8px 12px;max-height:200px;overflow-y:auto;font-size:12px;line-height:1.5}.writing-line{display:flex;gap:6px;align-items:flex-start}.writing-line-connector{color:#4a9eff;flex-shrink:0;opacity:.6;font-family:var(--mono-font, "JetBrains Mono", "Fira Code", monospace)}.writing-line-text{color:var(--text);white-space:pre-wrap;word-break:break-word;min-width:0}.chat-messages{flex:1;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;padding:24px;display:flex;flex-direction:column;gap:16px;position:relative;z-index:2}.msg{display:flex;gap:8px;max-width:70%}.msg.user{align-self:flex-end;flex-direction:row-reverse}.msg.assistant{align-self:flex-start}.msg.assistant.streaming .msg-body{position:relative}.msg.assistant:has(.msg-body table){max-width:min(840px,88%)}.msg-avatar{width:24px;height:24px;border-radius:7px;background:var(--accent-light);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #0000000a;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease}.msg-avatar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--text-secondary);opacity:.85;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z'/%3E%3C/svg%3E");-webkit-mask-size:13px;mask-size:13px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transition:opacity .2s ease}.msg.user .msg-avatar{background:var(--accent);box-shadow:0 2px 6px #0000000f}.msg.user .msg-avatar:after{background-color:var(--surface);opacity:1;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");-webkit-mask-size:13px;mask-size:13px}.msg:hover .msg-avatar{transform:translateY(-1px) scale(1.04)}.msg.user:hover .msg-avatar{box-shadow:0 4px 12px #0000001f}.msg.assistant:hover .msg-avatar{box-shadow:0 4px 10px #0000000a,inset 0 0 0 1px #00000005}.msg-body{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:13px;line-height:1.5;color:var(--text);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.msg.assistant .msg-body{max-width:min(680px,100%);padding:12px 14px;border-radius:8px;border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface) 96%,var(--bg));box-shadow:0 1px 2px #0f172a09}.msg.assistant:has(.msg-body table) .msg-body{max-width:100%}.msg-body p{margin:0 0 8px}.msg-body p:last-child{margin-bottom:0}.msg-body ul,.msg-body ol{margin:0 0 8px;padding-left:20px}.msg-body li{margin-bottom:4px}.msg-body pre{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px;overflow-x:auto;margin:8px 0}.msg-body code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 4px;font-family:monospace;font-size:12px}.msg-body pre code{background:none;border:none;padding:0}.msg.user .msg-body{background:var(--surface);color:var(--text);border-color:var(--border)}.msg-body.typing{color:var(--text-secondary);font-style:italic}.skill-indicator{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.skill-indicator-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--accent) 6%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 14%,var(--border));font-size:10px;font-weight:600;color:var(--text-secondary);letter-spacing:.01em;white-space:nowrap}.skill-trigger-auto{background:color-mix(in srgb,#ff9500 8%,var(--bg));border-color:color-mix(in srgb,#ff9500 18%,var(--border));color:#ff9500}.msg-content-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}.msg.user .msg-content-wrap{align-items:flex-end}.msg-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-height:22px;opacity:0;transform:translateY(-2px);transition:opacity .15s ease,transform .15s ease}.msg.user:hover .msg-actions,.msg.user:focus-within .msg-actions,.msg.assistant:hover .msg-actions,.msg.assistant:focus-within .msg-actions{opacity:1;transform:translateY(0)}.msg-action-btn{width:24px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.msg-action-btn:hover{color:var(--text);background:var(--hover-bg);border-color:var(--border)}.msg-action-btn:disabled{cursor:not-allowed;opacity:.45}.msg-action-btn.text{width:auto;min-width:56px;padding:0 10px;font-size:12px;font-weight:600}.msg-edit-panel{width:min(520px,70vw);display:flex;flex-direction:column;gap:8px}.msg-edit-input{width:100%;min-height:92px;resize:vertical;border:1px solid var(--accent);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 12px;font:inherit;line-height:1.5;outline:none}.msg-edit-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.msg-edit-actions{display:flex;justify-content:flex-end;gap:6px}.routing-badge{display:inline-flex;align-items:center;gap:0;padding:0;background:none;border:none;font-size:11px;font-weight:400;color:var(--text-tertiary);width:fit-content;cursor:default;transition:opacity .15s ease;letter-spacing:.01em;opacity:.5}.routing-badge:hover{opacity:1}.routing-badge:hover .routing-tier-label,.routing-badge:hover .routing-expand{display:inline-flex}.routing-tier-label,.routing-expand{display:none}.routing-tier-dot{width:5px;height:5px;border-radius:0;flex-shrink:0;margin-right:5px}.routing-tier-dot.tier-simple{background:#34c759}.routing-tier-dot.tier-standard{background:#5b5fc7}.routing-tier-dot.tier-complex{background:#ff9500}.routing-tier-dot.tier-reasoning{background:#ff3b30}.routing-tier-dot.tier-web_search{background:#0ea5e9}.routing-tier-dot.tier-code_search{background:#10b981}.routing-tier-label{font-weight:500;color:var(--text-secondary);font-size:10px;margin-right:4px}.routing-model-label{color:var(--text-tertiary);font-size:10px;font-family:monospace}.routing-expand{display:none;align-items:center;gap:4px;margin-left:4px}.tool-call-details{background:transparent;border:0;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:0;padding:0;font-size:13px;color:var(--text);overflow:visible;transition:background .15s ease}.tool-call-details:hover{background:color-mix(in srgb,var(--hover-bg) 45%,transparent)}.tool-call-details summary{font-weight:500;color:var(--text-secondary);list-style:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;line-height:1.4;min-height:32px;cursor:pointer;background:transparent;outline:none}.tool-call-details summary::-webkit-details-marker,.tool-calls-group-summary::-webkit-details-marker{display:none}.tool-call-details summary:before{content:"";width:4px;height:4px;border-right:1.25px solid currentColor;border-bottom:1.25px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease;color:var(--text-tertiary);margin-right:2px}.tool-call-details[open] summary:before{transform:rotate(45deg)}.tool-call-details summary.tool-error{color:var(--error-text)}.tool-call-details summary .tool-dot{width:6px;height:6px;border-radius:50%;background:var(--success-text);flex-shrink:0}.tool-call-details summary .tool-dot-error{background:var(--error-text)}.tool-call-details summary .tool-dot-running{background:var(--warning-text);animation:toolPulse 1.2s infinite ease-in-out}@keyframes toolPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}.tool-call-details summary .tool-name{min-width:0;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.tool-call-details summary .tool-status{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-tertiary);background:transparent;padding:0;border:none;display:inline-flex;align-items:center}.tool-pulse{color:var(--warning-text)}.tool-empty{padding:16px;font-size:13px;color:var(--text-tertiary);display:block;text-align:center}.tool-call-clean-body{border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:transparent}.tool-command-preview{display:flex;flex-direction:row;align-items:center;gap:12px;padding:8px 12px}.tool-command-preview span{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);background:color-mix(in srgb,var(--border) 40%,transparent);padding:2px 6px;border-radius:4px;flex-shrink:0;-webkit-user-select:none;user-select:none}.tool-command-preview code{display:block;flex:1;min-width:0;padding:6px 10px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:6px;background:color-mix(in srgb,var(--bg) 82%,transparent);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.tool-output-details{border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.tool-output-details summary{display:flex;min-height:0;padding:8px 12px;color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:transparent}.tool-output-details summary:before{content:none}.tool-call-details pre{margin:0;padding:10px 12px;white-space:pre-wrap;overflow-wrap:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45;color:var(--text-secondary);background:var(--bg);border-top:1px solid var(--border);max-height:320px;overflow-y:auto}.tool-calls-group{align-self:flex-start;max-width:min(680px,92%);display:flex;gap:10px;align-items:flex-start}.tool-calls-group>.msg-avatar,.tool-edit-standalone-group>.msg-avatar{margin-top:4px;flex-shrink:0}.tool-edit-standalone-group{align-self:flex-start;max-width:min(760px,95%);display:flex;gap:10px;align-items:flex-start}.tool-calls-group-details{width:100%;background:transparent;border:none;padding:0;font-size:13px;box-shadow:none}.tool-calls-group-summary{display:flex;align-items:center;gap:7px;padding:7px 10px;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;font-size:12px;color:var(--text-secondary);min-height:32px;background:transparent;outline:none}.tool-group-icon{width:10px;height:10px;border-radius:50%;background:transparent;border:1.5px solid var(--success-text);position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center}.tool-group-icon:after{content:none}.tool-group-icon.running{border-color:var(--warning-text)}.tool-group-icon.running:after{width:4px;height:4px;border:0;border-radius:50%;background:var(--warning-text);transform:none;box-shadow:none;animation:toolPulse 1.2s infinite ease-in-out;margin-bottom:0}.tool-group-label{font-weight:600;color:var(--text);white-space:nowrap;letter-spacing:-.01em}.tool-group-chips{display:flex;gap:6px;flex-wrap:wrap;overflow:hidden}.tool-chip{display:inline-flex;align-items:center;gap:6px;padding:1px 6px;background:color-mix(in srgb,var(--bg) 78%,transparent);border:none;border-radius:999px;font-size:10.5px;font-weight:500;color:var(--text-tertiary);white-space:nowrap}.tool-chip-error{color:var(--error-text);background:var(--error-bg)}.tool-chip-running{color:var(--warning-text);background:var(--warning-bg)}.tool-chip-count{color:var(--text-tertiary);font-weight:600}.tool-calls-group-body{border-top:1px solid color-mix(in srgb,var(--border) 58%,transparent);padding:8px 0 8px 12px;display:flex;flex-direction:column;gap:8px;background:transparent;position:relative}.tool-call-details-nested{border:0;border-radius:0;background:transparent;box-shadow:none;position:relative;padding-left:20px}.tool-call-details-nested:before{content:"";position:absolute;left:0;top:-12px;bottom:0;width:1.5px;background:color-mix(in srgb,var(--border) 60%,transparent)}.tool-call-details-nested:first-child:before{top:16px}.tool-call-details-nested:last-child:before{bottom:auto;height:28px}.tool-call-details-nested:after{content:"";position:absolute;left:0;top:16px;width:14px;height:1.5px;background:color-mix(in srgb,var(--border) 60%,transparent)}.tool-calls-bash-group .tool-calls-group-details{background:transparent;border-color:transparent}.tool-calls-bash-group .tool-calls-group-summary{padding:6px 9px}.tool-calls-bash-group .tool-group-icon{width:8px;height:8px;border-width:1.25px}.tool-calls-bash-group .tool-group-label{font-size:12px}.tool-calls-bash-group .tool-chip{background:transparent;padding:0}.tool-calls-bash-group .tool-call-details summary{grid-template-columns:auto auto minmax(0,1fr) auto;min-height:28px;padding:5px 9px;gap:6px}.tool-calls-bash-group .tool-call-details summary:before{width:3px;height:3px}.tool-calls-bash-group .tool-call-details summary .tool-name{font-size:12px;font-weight:600}.tool-calls-bash-group .tool-call-details summary .tool-status{justify-self:end;font-size:9.5px;color:var(--text-tertiary)}.tool-calls-group{max-width:min(680px,92%)}.tool-calls-group-details{background:transparent;border-color:transparent;box-shadow:none}.tool-calls-group-summary{min-height:36px;padding:8px 12px;gap:8px;border-bottom:0}.tool-group-label,.tool-call-details summary .tool-name{letter-spacing:0}.tool-group-icon{width:8px;height:8px;border-width:1.5px}.tool-group-chips{gap:5px}.tool-chip{padding:2px 6px;background:color-mix(in srgb,var(--bg) 62%,transparent);border:1px solid color-mix(in srgb,var(--border) 48%,transparent);font-size:10px}.tool-calls-group-body{padding:8px 12px 8px 16px;display:flex;flex-direction:column;gap:8px;border-top:1px solid color-mix(in srgb,var(--border) 35%,transparent);background:color-mix(in srgb,var(--bg) 32%,transparent);position:relative}.tool-calls-group-body .tool-call-details{border:none;background:transparent;margin-bottom:2px;border-radius:4px;position:relative;padding-left:24px}.tool-calls-group-body .tool-call-details:hover{background:color-mix(in srgb,var(--hover-bg) 20%,transparent)}.tool-calls-group-body .tool-call-details[open]{background:transparent;border:none;box-shadow:none}.tool-calls-group-body .tool-call-details:before{content:"";position:absolute;left:8px;top:-12px;bottom:0;width:1.5px;background:color-mix(in srgb,var(--border) 60%,transparent)}.tool-calls-group-body .tool-call-details:first-child:before{top:16px}.tool-calls-group-body .tool-call-details:last-child:before{bottom:auto;height:28px}.tool-calls-group-body .tool-call-details:first-child:last-child:before{display:none}.tool-calls-group-body .tool-call-details:after{content:"";position:absolute;left:8px;top:16px;width:16px;height:1.5px;background:color-mix(in srgb,var(--border) 60%,transparent)}.tool-calls-group-body .tool-call-details summary{min-height:28px;padding:4px 8px;gap:8px;display:flex;align-items:center;font-size:11.5px}.tool-calls-group-body .tool-call-details[open] summary{border-bottom:none}.tool-calls-group-body .tool-call-details summary:before{width:4px;height:4px;margin-right:0}.tool-calls-group-body .tool-call-details summary .tool-status{margin-left:auto;font-size:9px;letter-spacing:.04em;display:inline-flex;align-items:center}.tool-calls-group-body .tool-call-clean-body{padding:4px 0 6px;border-left:none;margin-left:8px;border-radius:0}.tool-call-details summary .tool-name{display:flex;align-items:center;gap:8px;overflow:hidden;min-width:0;flex:1}.tool-summary-command{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:var(--text-secondary);background:color-mix(in srgb,var(--border) 25%,transparent);padding:1px 6px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;max-width:min(380px,45vw);display:inline-block}.tool-direct-output-wrapper{margin:0;display:flex;flex-direction:column;border:1px solid color-mix(in srgb,var(--border) 52%,transparent);border-radius:6px;background:color-mix(in srgb,var(--bg) 82%,var(--surface));overflow:hidden}.tool-output-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;color:var(--text-tertiary);padding:4px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);background:color-mix(in srgb,var(--bg) 60%,var(--surface));-webkit-user-select:none;user-select:none}.tool-direct-output{margin:0;padding:8px 10px;border:none;background:transparent;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.4;white-space:pre-wrap;word-break:break-all;overflow-x:auto;max-height:320px;overflow-y:auto}.tool-rich-output-wrapper{margin:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;box-shadow:0 2px 12px #00000005}.tool-rich-output-body{padding:14px 18px;background:transparent;color:var(--text);overflow-y:auto;max-height:520px}.tool-calls-bash-group .tool-calls-group-details{background:transparent}.tool-calls-bash-group .tool-calls-group-summary{padding:8px 12px}.tool-calls-bash-group .tool-chip{padding:2px 6px;background:color-mix(in srgb,var(--bg) 62%,transparent)}.tool-calls-bash-group .tool-call-details summary{min-height:34px;padding:7px 9px;gap:8px}.tool-edit-preview{border-top:1px solid var(--border);background:#0c0c0e;color:#d4d4d8;overflow:hidden}.tool-edit-preview-standalone{width:min(720px,100%);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000001f}.tool-edit-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.08);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:#a1a1aa}.tool-edit-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-edit-stats{display:inline-flex;gap:8px;font-weight:700}.tool-edit-add{color:#86efac}.tool-edit-remove{color:#fca5a5}.tool-edit-lines{max-height:260px;overflow:auto;padding:4px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.45}.tool-edit-line{display:grid;grid-template-columns:42px 22px minmax(0,1fr);min-height:18px}.tool-edit-line code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre;color:inherit}.tool-edit-number{color:#71717a;text-align:right;padding-right:10px;-webkit-user-select:none;user-select:none}.tool-edit-mark{color:#71717a;-webkit-user-select:none;user-select:none}.tool-edit-line.line-add{background:#22c55e29;color:#dcfce7}.tool-edit-line.line-remove{background:#ef444424;color:#fee2e2}.tool-edit-line.line-hunk{color:#93c5fd}.tool-edit-more{padding:6px 10px 8px 74px;color:#71717a;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;border-top:1px solid rgba(255,255,255,.06)}.plan-document-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--surface);width:720px;max-width:100%;transition:all .2s cubic-bezier(.4,0,.2,1)}.plan-document-card:not(.expanded){border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 12px #0000001f;align-self:flex-start}.plan-document-card.expanded{border-radius:0;min-width:auto}.plan-document-main{display:flex;align-items:center;gap:12px;min-width:0;padding:0;background:transparent;color:var(--text);text-align:left}.plan-document-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));flex-shrink:0}.plan-document-text{display:flex;flex-direction:column;gap:3px;min-width:0}.plan-document-kicker{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.plan-document-title{font-size:14px;font-weight:750;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-document-summary{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-document-actions{display:flex;align-items:center;gap:8px;align-self:flex-end}.plan-document-comment-btn{align-self:center;height:34px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text-secondary);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.plan-document-comment-btn:hover,.plan-document-comment-btn.active{color:var(--accent);border-color:var(--accent-light);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.plan-document-review-btn{align-self:center;height:34px;padding:0 12px;border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.plan-document-review-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.plan-document-review-btn.hasPending{background:#10b981;border-color:#10b981;box-shadow:0 0 14px #10b9814d;transition:all .2s cubic-bezier(.2,.8,.2,1)}.plan-document-review-btn.hasPending:hover{background:#059669;border-color:#059669;box-shadow:0 0 18px #10b98173}.plan-document-comment-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.plan-document-comment-selection{min-height:40px;max-height:100px;overflow:auto;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-family:var(--font-mono, monospace);font-size:12px;line-height:1.45;white-space:pre-wrap}.plan-document-comment-input{min-height:56px;resize:vertical;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:13px;line-height:1.45}.plan-document-comment-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.plan-document-comment-status{margin-right:auto;color:var(--success-text);font-size:12px}.plan-document-comment-status.error{color:var(--error-text)}.plan-document-preview{width:100%;max-height:min(620px,62vh);overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.inline-comment-btn{position:absolute;right:12px;width:28px;height:28px;border-radius:6px;background:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s ease,transform .15s ease,background .15s ease;z-index:10;box-shadow:0 2px 8px #0003;transform:translateY(-2px)}.plan-document-preview:hover .inline-comment-btn{opacity:1}.inline-comment-btn:hover{transform:translateY(-2px) scale(1.05);background:var(--accent-hover)}.plan-document-loading,.plan-document-error{padding:18px;color:var(--text-secondary);font-size:13px}.plan-document-error{color:var(--error-text)}.plan-document-readable{max-width:820px;padding:22px 26px 28px;color:var(--text);font-size:14px;line-height:1.65;overflow-wrap:anywhere}.plan-document-readable>*:first-child{margin-top:0}.plan-document-readable>*:last-child{margin-bottom:0}.plan-document-readable h1,.plan-document-readable h2,.plan-document-readable h3{color:var(--text);line-height:1.28;margin:24px 0 10px;font-weight:750}.plan-document-readable h1{font-size:22px}.plan-document-readable h2{font-size:18px;padding-top:4px}.plan-document-readable h3{font-size:15px}.plan-document-readable p{margin:10px 0}.plan-document-readable ul,.plan-document-readable ol{margin:10px 0 14px;padding-left:22px}.plan-document-readable li{margin:5px 0}.plan-document-readable strong{font-weight:750}.plan-document-readable code{padding:1px 5px;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-size:.92em}.plan-document-readable pre{margin:14px 0;padding:12px;overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface);line-height:1.6}.plan-document-readable pre code{padding:0;border:0;background:transparent}.plan-document-readable hr{margin:22px 0;border:0;border-top:1px solid var(--border)}.think-block{background:var(--bg);border:1px solid var(--border);border-radius:6px;margin:4px 0;overflow:hidden}.think-block summary{padding:3px 8px;font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;font-weight:600;-webkit-user-select:none;user-select:none;cursor:pointer;list-style:none;display:flex;align-items:center;gap:4px}.think-block summary:before{content:"▶";font-size:7px;display:inline-block;transition:transform .15s ease}.think-block[open] summary:before{transform:rotate(90deg)}.think-block pre{margin:0;padding:4px 8px;font-size:12px;line-height:1.45;color:var(--text-secondary);white-space:pre-wrap}.typing-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--text-tertiary);animation:typingBounce 1.2s infinite ease-in-out;margin-right:3px}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.chat-abort-mini-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;height:32px;border-radius:999px;background:var(--error-bg);color:var(--error-text);font-size:12px;font-weight:600;border:none;cursor:pointer;transition:opacity .15s ease;margin-right:8px}.chat-abort-mini-btn:hover{opacity:.85}.queued-badge{display:inline-block;margin-top:4px;padding:2px 10px;border-radius:10px;background:var(--warning-bg);color:var(--warning-text);font-size:11px;font-weight:600;letter-spacing:.03em}.msg.queued .msg-body{opacity:.7}.abort-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;background:var(--error-bg);border:1px solid transparent;color:var(--error-text);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.abort-btn:hover{border-color:var(--error-text)}.tool-abort-btn{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;border-radius:4px;background:#d9302514;border:1px solid rgba(217,48,37,.2);color:var(--error-text);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.tool-abort-btn:hover{background:#d9302526;border-color:var(--error-text)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}@media(max-width:600px){.modal-overlay{align-items:flex-end;padding:0}.modal{width:100%;max-width:100%;max-height:90vh;border-radius:16px 16px 0 0;margin:0}}.close-btn{width:28px;height:28px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer}.close-btn:hover{background:var(--bg);color:var(--text)}.modal-confirm{background:var(--surface);border-radius:12px;padding:24px;max-width:380px;width:90%;border:1px solid var(--border);box-shadow:0 12px 40px #0000001f}.modal-confirm p{margin:0 0 20px;font-size:.95rem;color:var(--text)}.modal-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.modal-confirm-actions .ml-danger-btn{padding:6px 14px;border:none;border-radius:6px;background:var(--error-text);color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.modal-confirm-actions .ml-danger-btn:hover{opacity:.85}.modal-tabs{display:flex;gap:4px;padding:16px 24px 0;border-bottom:1px solid var(--border);overflow-x:auto;white-space:nowrap;scrollbar-width:none}.modal-tabs::-webkit-scrollbar{display:none}.modal-tab{padding:8px 12px;font-size:14px;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.modal-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.accent-btn{background:var(--accent);color:#fff;padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;transition:background .15s ease}.accent-btn:hover{background:var(--accent-hover)}.secondary-btn{background:var(--bg);color:var(--text);padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;border:1px solid var(--border);transition:background .15s ease}.secondary-btn:hover{background:var(--sidebar-bg)}.key-form{display:flex;flex-direction:column;gap:12px;background:var(--bg);padding:16px;border-radius:var(--radius-sm);margin-bottom:20px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row label{font-size:13px;font-weight:500;color:var(--text-secondary)}.form-row input,.form-row select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font-size:14px;color:var(--text)}.form-row input:focus,.form-row select:focus{border-color:var(--accent)}.checkbox-row{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.form-error{color:var(--error-text);font-size:13px}.ws-modal{max-width:680px;max-height:80vh}.ws-picker-modal{width:420px;max-width:95vw;height:auto;max-height:80vh;padding:0;overflow:hidden;animation:wsPickerIn .18s cubic-bezier(.2,.8,.2,1)}@keyframes wsPickerIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ws-picker-header{padding:20px 22px 14px;border-bottom:1px solid var(--border)}.ws-picker-header h2{font-size:17px;font-weight:700;margin:0 0 4px;color:var(--text)}.ws-picker-desc{font-size:13px;color:var(--text-tertiary);margin:0;line-height:1.4}.ws-picker-list{padding:8px 10px;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.ws-picker-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:all .12s ease}.ws-picker-item:hover{background:var(--accent-light)}.ws-picker-item.ws-picker-selected{background:var(--accent-light);border-color:var(--accent)}.ws-picker-item-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg);color:var(--text-secondary)}.ws-picker-item.ws-picker-selected .ws-picker-item-icon{background:var(--accent);color:#fff}.ws-picker-item-icon-none{background:var(--surface);color:var(--text-tertiary)}.ws-picker-item.ws-picker-selected .ws-picker-item-icon-none{background:var(--text-tertiary);color:#fff}.ws-picker-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ws-picker-item-name{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-picker-item-desc{font-size:12px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-picker-check{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--accent)}.ws-picker-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--border)}.ws-picker-cancel{padding:7px 16px;border-radius:8px;font-size:13px;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid var(--border);cursor:pointer;transition:all .12s ease}.ws-picker-cancel:hover{background:var(--bg);color:var(--text)}.ws-picker-confirm{padding:7px 20px;border-radius:8px;font-size:13px;font-weight:600;color:#fff;background:var(--accent);border:none;cursor:pointer;transition:background .12s ease}.ws-picker-confirm:hover{background:var(--accent-hover)}.path-input-row{display:flex;gap:6px}.path-input-row .path-input{flex:1}.dir-browser{margin-top:8px;border:1px solid var(--border);border-radius:6px;overflow:hidden}.dir-browser-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg);border-bottom:1px solid var(--border);font-size:13px}.dir-path{flex:1;font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dir-search-row{display:flex;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid var(--border);color:var(--text-secondary)}.dir-filter-input{flex:1;font-size:13px;color:var(--text);background:transparent;border:none;outline:none;padding:2px 0}.dir-list{max-height:220px;overflow-y:auto}.dir-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;color:var(--text);text-align:left;transition:background .1s ease}.dir-item:hover{background:var(--accent-light)}.dir-item+.dir-item{border-top:1px solid var(--border)}.dir-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn.sm{width:28px;height:28px}.keys-table-wrap{overflow-x:auto}.keys-table{width:100%;border-collapse:collapse;font-size:13px}.keys-table th,.keys-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.keys-table th{color:var(--text-secondary);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.keys-table td{color:var(--text)}.status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;-webkit-user-select:none;user-select:none}.status-badge.active{background:var(--success-bg);color:var(--success-text)}.status-badge.rate_limited{background:var(--warning-bg);color:var(--warning-text)}.status-badge.exhausted{background:var(--error-bg);color:var(--error-text)}.empty-state{text-align:center;color:var(--text-tertiary);font-size:14px;padding:24px;background:var(--bg)}.general-section h3{font-size:16px;font-weight:600;margin-bottom:8px}.general-section .desc{font-size:14px;color:var(--text-secondary);line-height:1.5}.color-preview{display:flex;align-items:center;gap:10px;margin-top:12px}.color-swatch{width:32px;height:32px;border-radius:8px;border:1px solid var(--border)}.icon-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.icon-btn:hover{background:var(--bg);color:var(--text)}.icon-btn.del:hover{background:var(--error-bg);color:var(--error-text)}.provider-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text);font-weight:500}.provider-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.url-hint{display:block;font-size:11px;color:var(--text-tertiary);margin-top:2px}.keys-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.keys-toolbar-spacer{flex:1;min-width:8px}.keys-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.keys-header h3{font-size:16px;font-weight:600}.keys-stats{display:flex;gap:8px}.stat-pill{font-size:12px;font-weight:600;color:var(--text-tertiary);background:var(--bg);border:1px solid var(--border);padding:4px 10px;border-radius:20px}.stat-pill.active{background:var(--success-bg);color:var(--success-text);border-color:#c6ebd2}.stat-pill.main{background:#eef0fd;color:var(--accent);border-color:#dce0f6}.search-row.compact{width:auto;min-width:180px;padding:6px 10px;margin-bottom:0;background:var(--bg);border:1px solid var(--border);flex-shrink:0}.search-row.compact input{min-width:120px}.form-grid.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:540px){.form-grid.two-col{grid-template-columns:1fr}}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:10px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid var(--text-tertiary);pointer-events:none}.select-wrap select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%}.email-cell{display:inline-block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.main-star{color:#f4b400;display:inline-flex;align-items:center}.key-actions{display:flex;align-items:center;gap:2px}.action-divider{width:1px;height:18px;background:var(--border);margin:0 2px}.keys-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm)}.keys-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.keys-table thead{position:sticky;top:0;z-index:1}.keys-table th,.keys-table td{text-align:left;padding:10px 12px;white-space:nowrap}.keys-table th{background:var(--bg);color:var(--text-tertiary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.keys-table td{color:var(--text);border-bottom:1px solid var(--border)}.keys-table tbody tr:last-child td{border-bottom:none}.keys-table tbody tr:hover td{background:var(--table-hover)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid transparent;transition:transform .1s ease;line-height:1.4}.status-badge:hover{transform:translateY(-1px)}.status-badge.active{background:var(--success-bg);color:var(--success-text);border-color:#c6ebd2}.status-badge.rate_limited{background:var(--warning-bg);color:var(--warning-text);border-color:#f5d9b3}.status-badge.exhausted{background:var(--error-bg);color:var(--error-text);border-color:#f0c0c0}.icon-btn.danger:hover{background:var(--error-bg);color:var(--error-text)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;gap:8px}.empty-icon{color:var(--text-tertiary);opacity:.5;margin-bottom:8px}.empty-title{font-size:15px;font-weight:600;color:var(--text-secondary)}.empty-desc{font-size:13px;color:var(--text-tertiary);margin-bottom:8px}.general-section h3{font-size:16px;font-weight:600;margin-bottom:12px}.setting-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;display:flex;flex-direction:column;gap:14px}.setting-label{display:flex;align-items:center;gap:12px}.setting-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.setting-info{display:flex;flex-direction:column;gap:2px}.setting-title{font-size:14px;font-weight:600;color:var(--text)}.setting-desc{font-size:13px;color:var(--text-tertiary)}.color-picker-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.color-preset{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s ease,border-color .15s ease;display:flex;align-items:center;justify-content:center}.color-preset:hover{transform:scale(1.1)}.color-preset:focus{border-color:var(--text)}.color-native{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);transition:box-shadow .15s ease,border-color .15s ease;position:relative;overflow:hidden}.color-native:hover{border-color:var(--text-secondary)}.color-native input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;padding:0;border:none}.color-live-preview{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;color:#fff;letter-spacing:.02em}.key-form{display:flex;flex-direction:column;gap:12px;background:var(--surface);padding:20px;border-radius:var(--radius-sm);margin-bottom:20px;border:1px solid var(--border);box-shadow:var(--shadow)}.form-actions button{display:inline-flex;align-items:center;gap:6px}.accent-btn.sm{padding:6px 12px;font-size:13px}.accent-btn:disabled{opacity:.6;cursor:not-allowed}.modal{background:var(--surface);border-radius:12px;width:95%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;border:1px solid var(--border);box-shadow:0 20px 50px #0003;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 0}.modal-header h2{font-size:16px;font-weight:600}.modal-body{padding:16px 20px 20px;overflow-y:auto}.workspace-switcher{display:flex;align-items:center;gap:6px;margin-bottom:10px}.workspace-switcher select{flex:1;min-width:0;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;padding:0 28px 0 10px}.workspace-add-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);color:var(--text-secondary);background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.workspace-add-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--text-tertiary)}.workspace-header{display:flex;align-items:center;gap:6px;padding:6px 8px;margin-top:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);border-radius:var(--radius-sm)}.workspace-toggle{cursor:pointer;transition:background .15s ease;width:100%}.workspace-toggle:hover{background:var(--bg)}.workspace-count{margin-left:auto;font-size:11px;font-weight:600;color:var(--text-tertiary);background:var(--bg);padding:1px 6px;border-radius:10px}.new-session-btn{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px}.dir-error-row{padding:8px 12px;background:var(--error-bg);border-bottom:1px solid #e5b5b5;display:flex;align-items:center}.dir-error{font-size:12px;color:#c5221f}.providers-tab{display:flex;flex-direction:column;gap:12px}.providers-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.tab-title{font-size:20px;font-weight:700;color:var(--text)}.providers-header-right{display:flex;align-items:center;gap:10px}.keys-count-badge{font-size:12px;font-weight:600;color:var(--text-tertiary);background:var(--bg);padding:4px 10px;border-radius:20px}.provider-search{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);margin-bottom:4px}.provider-search input{flex:1;font-size:13px;color:var(--text);background:transparent;border:none;outline:none}.provider-search input::placeholder{color:var(--text-tertiary)}.provider-rows{display:flex;flex-direction:column;gap:10px}.provider-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.provider-card:hover{border-color:var(--border);box-shadow:var(--shadow)}.provider-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;gap:12px;-webkit-user-select:none;user-select:none}.provider-card-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.provider-card-name{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap}.provider-card-model{font-size:13px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-card-right{display:flex;align-items:center;gap:4px;flex-shrink:0}.provider-meta.muted{font-size:12px;color:var(--text-tertiary);white-space:nowrap}.icon-btn.flat{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);background:none;transition:background .15s ease,color .15s ease}.icon-btn.flat:hover{background:var(--bg);color:var(--text)}.icon-btn.flat.chevron{transition:transform .2s ease}.icon-btn.flat.chevron.open{transform:rotate(180deg)}.provider-keys-list{padding:0 16px 10px;display:flex;flex-direction:column;gap:4px}.provider-key-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;gap:10px;transition:background .1s ease}.provider-key-row:hover{background:var(--bg)}.key-row-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.key-email{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.key-model{font-size:12px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:right}.key-row-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.edit-key-form{border-top:1px solid var(--border);margin-top:4px;padding-top:10px}.key-input-wrap{display:flex;align-items:center;gap:4px;position:relative}.key-input-wrap input{flex:1;padding-right:36px}.key-input-wrap input.password-prompt-input{padding-right:120px}.key-reveal-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);opacity:.6;transition:opacity .15s ease}.key-reveal-btn:hover{opacity:1}.key-locked-row{display:flex;align-items:center;gap:8px}.key-dots{font-size:13px;color:var(--fg-muted);letter-spacing:2px;-webkit-user-select:none;user-select:none}.key-password-gate{display:flex;flex-direction:row;align-items:center;gap:6px}.key-password-row{display:flex;align-items:center;gap:6px}.key-password-row input{flex:1;min-width:0}.key-password-error{font-size:11px;color:#d93025}.ghost-btn{background:transparent;color:var(--fg-muted);border:1px solid var(--border);border-radius:6px;padding:5px 14px;cursor:pointer;font-size:12px;transition:all .15s ease}.ghost-btn:hover{background:var(--hover-bg);color:var(--fg)}.ghost-btn.sm{padding:4px 10px;font-size:11px}.provider-detail{display:flex;flex-direction:column;gap:16px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.detail-header{display:flex;align-items:center;gap:10px}.detail-back{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:background .15s ease}.detail-back:hover{background:var(--bg);color:var(--text)}.detail-title{font-size:16px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px}.key-detail-form{display:flex;flex-direction:column;gap:14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px}.key-detail-form .form-row{gap:6px}.key-detail-form .form-row label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.key-detail-form .form-row input,.key-detail-form .form-row select{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:14px;color:var(--text)}.field-hint{font-size:12px;color:var(--text-tertiary);margin-top:2px}.form-error-box{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;border:1px solid #f0c0c0;background:var(--error-bg);color:#c5221f;font-size:13px}.detail-actions{display:flex;align-items:center;gap:10px;margin-top:6px}.detail-actions-spacer{flex:1}.text-btn{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;padding:8px 12px;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);transition:background .15s ease,color .15s ease}.text-btn:hover{background:var(--bg);color:var(--text)}.text-btn.danger{color:var(--error-text)}.text-btn.danger:hover{background:var(--error-bg)}.rotation-section{display:flex;flex-direction:column;gap:8px}.rotation-section h4{font-size:14px;font-weight:600;color:var(--text)}.rotation-desc{font-size:12px;color:var(--text-tertiary)}.rotation-list{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.rotation-key-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;cursor:pointer;gap:10px;background:var(--surface);border-bottom:1px solid var(--border);transition:background .1s ease}.rotation-key-row:last-child{border-bottom:none}.rotation-key-row:hover{background:var(--bg)}.rotation-reqs{font-size:12px;color:var(--text-tertiary);white-space:nowrap}.provider-body{padding:0 16px 16px;display:flex;flex-direction:column;gap:8px}.provider-inline-form{display:flex;flex-direction:column;gap:12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 14px 16px;margin-top:2px}.inline-form-title{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:2px}.inline-form-actions{display:flex;justify-content:flex-start;margin-top:4px}.provider-card.expanded{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-light),var(--shadow)}@media(max-width:900px){.prompt-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.provider-card-right .provider-meta{display:none}}.profile-clean-modal{width:380px;max-width:95vw}.profile-clean-body{display:flex;flex-direction:column;gap:20px}.profile-avatar-center{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0}.profile-avatar-circle{width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.profile-avatar-circle.large{width:72px;height:72px;font-size:24px}.profile-avatar-img.large{width:72px;height:72px;border-radius:50%;object-fit:cover}.profile-display-name{font-size:18px;font-weight:600;color:var(--text);margin-top:4px}.profile-display-email{font-size:13px;color:var(--text-tertiary)}.profile-form{display:flex;flex-direction:column;gap:14px}.profile-form-actions{margin-top:4px}.profile-form-actions .accent-btn{width:100%;padding:10px 16px;font-size:14px}.profile-danger-zone{display:flex;justify-content:center;padding-top:8px;border-top:1px solid var(--border)}.text-btn.danger{color:var(--text-tertiary);font-size:13px}.text-btn.danger:hover{color:var(--error-text);background:var(--error-bg)}.analytics-overlay .analytics-modal{max-width:1020px;width:95vw;max-height:90vh;overflow:hidden}.analytics-modal .modal-header{padding:24px 32px 18px;border-bottom:1px solid var(--border)}.analytics-modal .modal-header h2{font-size:21px;line-height:1.2;font-weight:700}.analytics-modal .modal-tabs{gap:26px;padding:14px 32px 0}.analytics-modal .modal-tab{border-radius:4px 4px 0 0;font-size:14px;padding:10px 0 12px;color:var(--text-tertiary);outline:none}.analytics-modal .modal-tab:focus-visible{color:var(--text);box-shadow:0 2px 0 var(--accent)}.analytics-modal .modal-tab:hover{color:var(--text);background:transparent}.analytics-modal .modal-tab.active{background:transparent;color:var(--text)}.analytics-body{max-height:calc(90vh - 138px);overflow-y:auto;padding:28px 32px 32px}.analytics-overview{display:flex;flex-direction:column;gap:22px}.stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.stat-card{background:transparent;border:1px solid var(--border);border-radius:8px;padding:16px 18px;display:flex;flex-direction:column;gap:7px;min-height:104px;box-shadow:none}.stat-label{font-size:10px;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary, #6b7280);font-weight:700}.stat-value{font-size:26px;line-height:1;font-weight:750;color:var(--text, #1f2937)}.stat-meta{margin-top:auto;font-size:11px;color:var(--text-secondary, #6b7280);line-height:1.3}.cache-stats{background:color-mix(in srgb,var(--surface) 94%,var(--bg) 6%);border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:14px 16px}.cache-stats h4{margin:0 0 8px;font-size:13px;color:var(--text-secondary, #6b7280)}.stats-row{display:flex;gap:20px;font-size:13px;color:var(--text-secondary, #6b7280)}.stats-row strong{color:var(--text, #1f2937)}.section-title{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:0;color:var(--text, #1f2937);font-weight:700}.analytics-chart-card{background:transparent;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:18px 18px 14px}.analytics-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.section-subtitle{margin:5px 0 0;color:var(--text-secondary, #6b7280);font-size:12px}.section-total{font-size:20px;line-height:1;font-weight:750;color:var(--text)}.daily-chart{display:flex;align-items:flex-end;gap:8px;height:150px;padding:14px 0 26px;border-bottom:1px solid var(--border, #e5e7eb);background:linear-gradient(to top,color-mix(in srgb,var(--border) 70%,transparent) 1px,transparent 1px) 0 0 / 100% 33.333%,transparent}.daily-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;min-width:0;height:100%;position:relative}.daily-bar{width:100%;max-width:34px;background:var(--accent);border-radius:4px 4px 2px 2px;position:relative;min-height:4px;opacity:.82;transition:opacity .15s,transform .15s;box-shadow:none}.daily-bar:hover{opacity:1;transform:translateY(-2px)}.daily-bar-tooltip{display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--text, #1f2937);color:#fff;font-size:10px;padding:3px 6px;border-radius:4px;white-space:nowrap;z-index:1;margin-bottom:4px}.daily-bar:hover .daily-bar-tooltip{display:block}.daily-bar-label{position:absolute;bottom:-20px;font-size:11px;color:var(--text-secondary, #6b7280);white-space:nowrap}@media(max-width:1100px){.analytics-overlay .analytics-modal{max-width:92vw}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.analytics-table-wrap{overflow-x:auto;border-top:1px solid var(--border);background:transparent}.analytics-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.analytics-table th{text-align:left;padding:14px 18px 12px;font-size:10px;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary, #9ca3af);font-weight:700;border-bottom:1px solid var(--border, #e5e7eb);white-space:nowrap}.analytics-table td{padding:17px 18px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--text, #1f2937);white-space:nowrap;font-variant-numeric:tabular-nums}.analytics-table tr:hover td{background:color-mix(in srgb,var(--surface) 88%,var(--text) 4%)}.analytics-table tbody tr:last-child td{border-bottom:0}.analytics-table .model-name-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;color:var(--text, #1f2937);font-weight:600}.analytics-table .key-cell{max-width:160px;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:var(--text-secondary, #6b7280)}.provider-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:650;background:color-mix(in srgb,var(--chip-color, #6b7280) 16%,var(--surface));color:color-mix(in srgb,var(--chip-color, #6b7280) 72%,var(--text));border:1px solid color-mix(in srgb,var(--chip-color, #6b7280) 24%,transparent);white-space:nowrap}.provider-chip.sm{padding:2px 7px;font-size:11px}.provider-chip-dot{width:7px;height:7px;border-radius:50%;background:var(--chip-color, #6b7280);flex-shrink:0}.analytics-sessions{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border)}.session-analytics-card{border:0;border-bottom:1px solid var(--border, #e5e7eb);border-radius:0;overflow:hidden;background:transparent}.session-analytics-header{padding:18px 28px 18px 0;cursor:pointer;display:flex;flex-direction:column;gap:10px;position:relative}.session-analytics-header:hover{background:transparent}.session-analytics-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.session-analytics-title{font-weight:600;font-size:15px;color:var(--text, #1f2937)}.session-analytics-date{font-size:12px;color:var(--text-secondary, #9ca3af);flex-shrink:0}.session-analytics-stats-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.session-stat{font-size:13px;color:var(--text-secondary, #6b7280)}.session-stat.cost{color:var(--accent, #5b5fc7);font-weight:600}.session-analytics-chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:transform .15s;color:var(--text-secondary, #9ca3af)}.session-analytics-chevron.open{transform:translateY(-50%) rotate(180deg)}.session-analytics-detail{border-top:1px solid var(--border, #e5e7eb);padding:22px 0 26px;display:flex;flex-direction:column;gap:22px;background:transparent}.breakdown-grid{display:flex;gap:32px;flex-wrap:wrap}.breakdown-item{display:flex;flex-direction:column;gap:2px}.breakdown-label{font-size:11px;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary, #9ca3af);font-weight:650}.breakdown-value{font-size:18px;font-weight:700;color:var(--text, #1f2937)}.session-model-breakdown h5,.session-chat-history h5{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary, #9ca3af);font-weight:700}.model-breakdown-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0;font-size:13px;color:var(--text-secondary, #6b7280)}.chat-history-list{display:flex;flex-direction:column;gap:12px;max-height:none;overflow:visible}.chat-history-msg{padding:16px 18px;border-radius:8px;border:1px solid var(--border, #e5e7eb);background:transparent;position:relative}.chat-history-msg.user{border-left-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.chat-history-msg.assistant{border-left-color:color-mix(in srgb,#10a37f 60%,var(--border))}.chat-history-msg.tool{border-left-color:color-mix(in srgb,#f59e0b 60%,var(--border));background:transparent}.chat-history-role{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary, #9ca3af);display:block;margin-bottom:10px}.chat-history-content{font-size:14px;line-height:1.55;color:var(--text, #1f2937);margin:0;white-space:pre-wrap;word-break:break-word;max-height:none;overflow:visible;font-family:inherit;background:none;border:none;padding:0}.chat-history-time{font-size:11px;color:var(--text-secondary, #9ca3af);display:block;margin-top:12px;text-align:right}.chat-usage-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--accent, #5b5fc7);background:color-mix(in srgb,var(--accent, #5b5fc7) 10%,transparent);padding:3px 8px;border-radius:12px;font-weight:600;white-space:nowrap}.explorer-container{display:flex;flex-direction:column;height:100%;max-height:100%;overflow-y:auto}.explorer-tabs{display:flex;align-items:center;background:#0000000a;padding:2px;border-radius:8px;margin-bottom:8px}.explorer-tab-btn{flex:1;padding:4px 6px;text-align:center;border-radius:6px;font-size:11px;font-weight:600;color:var(--text-secondary);transition:all .15s ease}.explorer-tab-btn:hover{color:var(--text);background:#00000005}.explorer-tab-btn.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000000f}.explorer-actions{display:flex;gap:6px;padding:0 4px}.explorer-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--text-secondary);transition:all .2s cubic-bezier(.4,0,.2,1);background:var(--bg-secondary);border:1px solid var(--border-subtle, rgba(0, 0, 0, .05));cursor:pointer;box-shadow:0 1px 2px #0000000d}.explorer-action-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--accent-rgb),.3)}.explorer-action-btn svg{opacity:.8}.explorer-action-btn:hover svg{opacity:1}.explorer-action-btn:active{transform:translateY(0)}.explorer-body{flex:1;overflow-y:auto}.explorer-loading{font-size:12px;color:var(--text-secondary);text-align:center;padding:8px 0}.explorer-tree-root{display:flex;flex-direction:column}.explorer-tree-item{display:flex;flex-direction:column;border-radius:4px}.explorer-item-btn{display:flex;align-items:center;gap:6px;padding:5px 4px;width:100%;text-align:left;border-radius:6px;font-size:12px;color:#c9d1d9;color:var(--text);transition:background .1s ease}.explorer-item-btn:hover{background:var(--bg)}.explorer-item-btn.is-dir{font-weight:500}.explorer-chevron{transition:transform .1s ease;color:var(--text-tertiary)}.explorer-chevron.expanded{transform:rotate(90deg)}.file-icon{flex-shrink:0;color:var(--text-secondary);display:flex;align-items:center}.file-icon.md{color:#5b5fc7}.file-icon.code{color:#e36209}.file-icon.json{color:#dbab09}.explorer-item-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.explorer-children-list{display:flex;flex-direction:column}.file-editor-view{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;height:100%;background:var(--surface);overflow:hidden}.file-editor-header{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 10px;background:var(--surface);border-bottom:1px solid var(--border)}.file-editor-title{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.file-editor-title .file-name{font-weight:500;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-editor-title .file-path{font-size:11px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:350px}.file-save-status{flex-shrink:0;padding:2px 6px;border-radius:999px;background:transparent;color:var(--text-tertiary);border:0;font-size:10px;font-weight:500}.file-save-status.error{background:var(--error-bg);color:var(--error-text);border-color:#d9302540}.doc-comment-btn{flex-shrink:0;height:28px;padding:0 10px;border-radius:7px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:12px;font-weight:600}.doc-comment-btn:hover,.doc-comment-btn.active{color:var(--accent);border-color:var(--accent-light);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.doc-comment-panel{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1.4fr);gap:10px;padding:10px;border-bottom:1px solid var(--border);background:var(--bg)}.doc-comment-selection{min-height:72px;max-height:130px;overflow:auto;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-family:var(--font-mono, monospace);font-size:12px;line-height:1.45;white-space:pre-wrap}.doc-comment-input{min-height:72px;resize:vertical;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:13px;line-height:1.45}.doc-comment-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:8px}.doc-comment-status{margin-right:auto;color:var(--success-text);font-size:12px}.doc-comment-status.error{color:var(--error-text)}.file-editor-content{flex:1;position:relative;overflow:hidden;background:#1e1e1e}.file-editor-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#1e1e1ecc;color:#fff;z-index:5;font-size:13px}.ws-modal-modern{max-width:600px;background:var(--surface);border-radius:14px;box-shadow:0 25px 50px -12px #00000040;border:1px solid var(--border);overflow:hidden;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.ws-modal-modern .modal-header{border-bottom:1px solid var(--border);padding:14px 20px}.ws-modal-modern .modal-header h2{font-size:16px;font-weight:600;color:var(--text)}.ws-modal-modern .modal-body{padding:20px;display:flex;flex-direction:column;gap:16px}.ws-modal-modern .form-row{display:flex;flex-direction:column;gap:6px}.ws-modal-modern .form-row label{font-size:12px;font-weight:600;color:var(--text-secondary)}.ws-modal-modern .form-row input[type=text],.ws-modal-modern .form-row input[type=number]{border-radius:8px;border:1px solid var(--border);background:var(--bg);padding:9px 12px;font-size:13px;color:var(--text);transition:all .15s ease}.ws-modal-modern .form-row input[type=text]:focus,.ws-modal-modern .form-row input[type=number]:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.ws-modal-modern .form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.ws-modal-modern .accent-btn{background:var(--accent);color:#fff;padding:9px 18px;border-radius:8px;font-weight:600;font-size:13px;border:none;cursor:pointer;transition:background .15s ease}.ws-modal-modern .accent-btn:hover{background:var(--accent-hover)}.ws-modal-modern .secondary-btn{background:transparent;color:var(--text);padding:9px 18px;border-radius:8px;font-weight:600;font-size:13px;border:1px solid var(--border);cursor:pointer;transition:all .15s ease}.ws-modal-modern .secondary-btn:hover{background:var(--bg);border-color:var(--text-tertiary)}.mobile-menu-btn{display:none;width:36px;height:36px;border-radius:8px;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;border:none;flex-shrink:0;cursor:pointer;transition:background .2s ease,color .2s ease}.mobile-menu-btn:hover{background:color-mix(in srgb,var(--text-secondary) 8%,transparent);color:var(--text)}.mobile-header,.sidebar-backdrop{display:none}.side-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25}@media(max-width:768px){.app-shell{flex-direction:column}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:50;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);width:48px;height:100dvh;background:var(--sidebar-bg);padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));gap:8px;overflow:visible!important}.sidebar.open{transform:translate(0)}.workspace-rail,.sidebar-top,.sidebar-bottom{gap:8px}.sidebar-bottom{padding-bottom:2px}.workspace-item,.nav-btn{width:36px;height:36px}.nav-btn.avatar img{width:28px;height:28px}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:49}.session-list,.side-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9}.side-panel{position:fixed!important;left:48px!important;top:0;bottom:0;width:calc(100vw - 48px);max-width:300px;z-index:55;background:var(--surface);border-right:1px solid var(--border);box-shadow:4px 0 15px #0000001a;transform:translate(-150%);transition:transform .25s cubic-bezier(.4,0,.2,1)}.sidebar.open .session-list,.sidebar.open .side-panel{transform:translate(0)}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;flex-shrink:0}.mobile-header.is-home{position:absolute;top:0;left:0;right:0;z-index:10;background:transparent!important;border-bottom:none!important;box-shadow:none!important}.mobile-header-title{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:center}.main>.db-client-header{display:none}.mobile-menu-btn{display:flex}.main{width:100%;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;background:none}.home-view{overflow:visible}}@media(max-width:768px)and (max-height:720px){.sidebar{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom));gap:4px}.workspace-rail,.sidebar-top,.sidebar-bottom{gap:4px}.workspace-item,.nav-btn{width:32px;height:32px;border-radius:9px}.nav-btn.avatar img{width:26px;height:26px}.sidebar-divider{margin:2px 0}}.home-view{height:100%;display:flex;flex-direction:column;align-items:center;width:100%;position:relative;overflow:hidden;background:var(--bg)}.home-content{max-width:720px;width:100%;flex:1;display:flex;flex-direction:column;min-height:0;margin:0 auto;padding:0 clamp(1rem,4vw,2rem);position:relative;z-index:2}.home-hero{text-align:center;padding:1.5rem 0 .5rem;flex-shrink:0}.home-hero .greeting{font-size:28px;margin-bottom:4px;background:linear-gradient(135deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-hero .sub-greeting{font-size:16px;opacity:.65;font-weight:500}.home-chat-input{flex-shrink:0}.home-chat-input .chat-input-container{position:static;padding:.5rem 0}.prompt-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;padding:.25rem 0 1rem}.prompt-chip{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .18s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;flex-shrink:0}.prompt-chip:hover{border-color:var(--text-tertiary);color:var(--text);background:var(--surface-2)}.prompt-chip-refresh{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--text-tertiary);flex-shrink:0}.prompt-chip-refresh:hover{color:var(--text)}.home-scroll-area{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;justify-content:center}.home-recent{flex-shrink:0;padding:0 0 1.25rem}.home-recent-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.home-recent-title{font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;opacity:.8}.home-workspaces{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:12px}.home-workspace-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;cursor:pointer;min-width:0;transition:all .25s cubic-bezier(.16,1,.3,1)}.home-workspace-section:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.home-workspace-header{display:flex;justify-content:space-between;align-items:center;min-width:0}.home-workspace-name{font-weight:600;color:var(--text);font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;display:flex;align-items:center;gap:8px}.home-ws-icon{color:var(--accent);opacity:.8;flex-shrink:0}.home-workspace-sessions-count{font-size:10px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);padding:2px 7px;border-radius:99px;font-weight:700}.home-workspace-sessions{display:flex;flex-direction:column;gap:2px;margin-top:4px}.home-session-row{display:flex;justify-content:space-between;align-items:center;padding:4px 6px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text-secondary);transition:all .15s ease;min-width:0}.home-session-row:hover{background:var(--hover-bg);color:var(--text)}.home-session-title{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:12px;font-size:12px;display:flex;align-items:center}.home-session-bullet{color:var(--text-tertiary);margin-right:6px;opacity:.6;font-size:9px}.home-session-row:hover .home-session-title{color:var(--text)}.home-session-date{color:var(--text-tertiary);font-size:10.5px;flex-shrink:0}@media(max-width:768px){.glow-orb{width:200px;height:200px}.orb-1{top:-60px;left:5%}.orb-2{top:-40px;right:5%}.orb-3{top:-80px;left:35%}.orb-4{top:-30px;left:20%}.home-content{max-width:100%;padding:calc(56px + env(safe-area-inset-top)) 1rem 0}.home-hero .greeting{font-size:22px}.home-hero .sub-greeting{font-size:14px}.prompt-chip{font-size:11px;padding:5px 12px;max-width:160px}.home-workspaces{grid-template-columns:1fr}.home-workspace-section{padding:10px 12px;gap:6px}.home-workspace-name{font-size:13px}.home-workspace-sessions-count{font-size:10px;padding:1px 6px}.home-workspace-sessions{gap:1px}.home-session-row{padding:4px 6px;font-size:12px}.home-session-title{font-size:12px}.home-session-date{font-size:10px}.chat-view{height:100%}.chat-view>.chat-header{display:none}.chat-title{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.chat-messages{padding:12px;gap:12px}.msg{max-width:90%}}.msg-body{font-size:14px;padding:10px 12px;line-height:1.62;color:var(--text);overflow-wrap:anywhere}.msg-body>:first-child{margin-top:0}.msg-body>:last-child{margin-bottom:0}.msg-body p,.msg-body ul,.msg-body ol,.msg-body blockquote,.msg-body pre,.msg-body table,.msg-body hr{margin:0 0 .9rem}.msg-body h1,.msg-body h2,.msg-body h3,.msg-body h4,.msg-body h5,.msg-body h6{margin:1rem 0 .45rem;line-height:1.25;color:var(--text)}.msg-body h1{font-size:1.2rem}.msg-body h2{font-size:1.08rem}.msg-body h3{font-size:1rem}.msg-body ul,.msg-body ol{padding-left:1.3rem}.msg-body li+li{margin-top:.35rem}.msg-body blockquote{padding:.75rem .9rem;border-left:3px solid color-mix(in srgb,var(--accent),transparent 55%);background:color-mix(in srgb,var(--surface-2),transparent 35%);border-radius:0 8px 8px 0;color:var(--text-secondary)}.msg-body pre{padding:.9rem 1rem;border-radius:10px;background:#0f0f12;border:1px solid #2c2c35;overflow-x:auto}.msg-body pre code{color:#f4f4f5;background:transparent;border:none;padding:0;white-space:pre}.msg-body code{padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--border),transparent 12%);border:1px solid color-mix(in srgb,var(--border),transparent 45%);font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:.92em}.msg-body a{color:var(--accent);font-weight:500;text-decoration:none;border-bottom:1.5px solid color-mix(in srgb,var(--accent) 30%,transparent);transition:border-color .2s ease,background-color .2s ease}.msg-body a:hover{border-bottom-color:var(--accent);background-color:color-mix(in srgb,var(--accent) 6%,transparent)}.msg-body hr{border:0;border-top:1px solid var(--border)}.msg-body strong{color:var(--text)}.msg-body em{color:color-mix(in srgb,var(--text),transparent 12%)}.msg-body>:is(p,ul,ol,blockquote,pre,table):last-child{margin-bottom:0}.msg-screenshots{display:flex;flex-direction:column;gap:10px;margin-top:10px}.msg-screenshot-item{border-radius:8px;overflow:hidden;border:1px solid var(--border, #2a2a3e);background:var(--bg-secondary, #1a1a2e)}.msg-screenshot-header{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:12px;color:var(--text-secondary, #a0a0b8);background:var(--bg-tertiary, #16162a);border-bottom:1px solid var(--border, #2a2a3e)}.msg-screenshot-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-screenshot-img{display:block;width:100%;max-width:640px;height:auto;cursor:zoom-in;transition:opacity .2s}.msg-screenshot-img:hover{opacity:.92}@media(max-width:768px){.chat-input-container{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.chat-input-box{padding:10px 12px;border-radius:16px;gap:6px}.chat-row{gap:6px}.send-btn{width:36px;height:36px;border-radius:10px}.web-dropdown{min-width:130px}.attach-dropdown{width:min(320px,calc(100vw - 32px));max-height:min(340px,55vh)}.web-dropdown.unified-selector{min-width:0;width:280px;max-width:calc(100vw - 40px);max-height:50vh}.model-group-header{top:0;padding:8px 10px 4px;background:color-mix(in srgb,var(--surface) 98%,var(--bg-outer))}.model-search-wrap{padding:8px 10px}.tool-calls-group{max-width:100%}.chat-usage-badge{display:none}.modal{max-width:100vw;max-height:100vh;border-radius:0;width:100%}.modal-overlay{align-items:flex-end}.modal-header h2{font-size:15px}.modal-body{padding:12px 16px}.ws-modal{width:100%;max-height:90vh;border-radius:16px 16px 0 0}.ws-modal-modern{border-radius:16px 16px 0 0}.form-grid.two-col{grid-template-columns:1fr}.path-input-row{flex-direction:column}.dir-browser-bar{flex-wrap:wrap}.refresh-btn{margin-bottom:20px}.keys-table th,.keys-table td{padding:8px 6px;font-size:12px}.email-cell{max-width:100px}.analytics-overlay .analytics-modal{max-width:100vw;max-height:100vh;border-radius:0}.analytics-modal .modal-header{padding:18px 16px 14px}.analytics-modal .modal-tabs{padding:10px 16px 0;overflow-x:auto}.analytics-body{padding:16px;max-height:calc(100vh - 112px)}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card{min-height:104px}.stat-value{font-size:24px}.daily-chart{height:130px;gap:6px}.provider-card-header{padding:10px 12px}.provider-card-name{font-size:14px}.provider-card-model{display:none}.prev-workspace-item{padding:10px 12px}.prev-ws-arrow,.prev-ws-subtitle{display:none}.plan-document-card{min-width:0;gap:10px;padding:10px}.plan-document-actions{width:100%;display:flex;gap:8px;align-self:stretch}.plan-document-comment-btn,.plan-document-review-btn{flex:1;text-align:center}.plan-document-preview{max-height:min(400px,50vh)}.plan-document-readable{padding:14px 12px 18px;font-size:13px}.plan-document-comment-panel{padding:8px}.plan-document-comment-input{min-height:48px;font-size:16px}.plan-document-comment-selection{font-size:13px;min-height:36px}.plan-document-comment-actions .accent-btn,.plan-document-comment-actions .secondary-btn{min-height:36px;padding:0 14px;font-size:13px}}@media(max-width:480px){.prompt-grid{display:none}.prompt-card{min-height:auto;padding:8px 10px}.greeting{font-size:26px;margin-bottom:2px}.sub-greeting{font-size:26px}.prompt-card{min-height:auto;padding:8px}.prompt-icon{padding-top:6px}.msg{max-width:95%}.toolbar-btn span{display:none}.web-dropdown.unified-selector{width:calc(100vw - 32px)}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:12px}.stat-meta{font-size:10px}.analytics-chart-card{padding:14px 12px 12px}.analytics-section-header{align-items:flex-start}.section-total{font-size:18px}}.router-settings-v2{display:flex;flex-direction:column;gap:32px;padding:16px 0;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{margin-bottom:20px}.section-title{font-size:16px;font-weight:800;color:var(--text);letter-spacing:-.02em;margin-bottom:4px}.section-desc{font-size:13px;color:var(--text-secondary);opacity:.8}.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.tier-card-v2{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:24px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000008}.tier-card-v2:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 24px #0000000f}.tier-card-glow{position:absolute;top:-50px;right:-50px;width:150px;height:150px;border-radius:50%;filter:blur(60px);opacity:.05;pointer-events:none;transition:opacity .3s ease}.tier-card-v2:hover .tier-card-glow{opacity:.15}.tier-simple .tier-card-glow{background:#34c759}.tier-standard .tier-card-glow{background:#5b5fc7}.tier-complex .tier-card-glow{background:#ff9500}.tier-reasoning .tier-card-glow{background:#ff3b30}.tier-web_search .tier-card-glow{background:#0ea5e9}.tier-code_search .tier-card-glow{background:#10b981}.tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tier-identity{display:flex;align-items:center;gap:12px}.tier-icon-wrap{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:20px;background:var(--bg);border:1px solid var(--border)}.tier-meta{display:flex;flex-direction:column}.tier-label{font-size:15px;font-weight:800;color:var(--text);letter-spacing:-.01em}.tier-badge-pill{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em}.add-model-trigger{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);transition:all .2s ease}.add-model-trigger:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.tier-description{font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:20px;height:36px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tier-models-stack{display:flex;flex-direction:column;gap:8px}.model-pill{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg);border-radius:12px;border:1px solid transparent;transition:all .2s ease}.model-pill:hover{background:var(--surface);border-color:var(--border)}.prio-dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);opacity:.4}.prio-dot.active{background:var(--accent);opacity:1;box-shadow:0 0 8px var(--accent)}.model-path{flex:1;font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-path strong{color:var(--text);font-family:var(--font-mono)}.model-remove{font-size:16px;color:var(--text-tertiary);opacity:0;transition:opacity .2s ease;padding:0 4px}.model-pill:hover .model-remove{opacity:1}.model-remove:hover{color:#ff3b30}.empty-stack-placeholder{font-size:11px;color:var(--text-tertiary);font-style:italic;text-align:center;padding:16px;border:1px dashed var(--border);border-radius:12px}.budget-dashboard{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:24px;box-shadow:0 10px 30px #00000014}.budget-overview{display:flex;gap:48px}.budget-stat{display:flex;flex-direction:column;gap:6px}.stat-lbl{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.08em}.stat-val-group{display:flex;align-items:baseline;gap:4px}.currency{font-size:18px;font-weight:600;color:var(--text-secondary)}.val{font-size:32px;font-weight:800;color:var(--text);font-family:var(--font-mono);letter-spacing:-.04em}.budget-progress-container{display:flex;flex-direction:column;gap:8px}.progress-track{height:8px;background:color-mix(in srgb,var(--text) 10%,var(--bg));border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#a855f7);border-radius:4px;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.progress-labels{display:flex;justify-content:space-between;font-size:12px;font-weight:600;color:var(--text)}.budget-controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:20px;border-top:1px solid var(--border)}.form-group.full-width{grid-column:span 2}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:12px;font-weight:700;color:var(--text-secondary)}.form-group select,.form-group input{background:color-mix(in srgb,var(--bg) 82%,#000);border:1px solid var(--border);padding:10px 14px;border-radius:12px;font-size:14px;color:var(--text);transition:all .2s ease}.form-group select:focus,.form-group input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.router-model-search{margin-bottom:2px}.model-route-chip{color:var(--text-tertiary);font-size:11px;white-space:nowrap}.toggle-row{display:flex;justify-content:space-between;align-items:center;background:color-mix(in srgb,var(--bg) 75%,#000);padding:16px;border-radius:16px;cursor:pointer;border:1px solid var(--border)}.toggle-info{display:flex;flex-direction:column;gap:2px}.toggle-title{font-size:14px;font-weight:700;color:var(--text)}.toggle-desc{font-size:12px;color:var(--text-secondary);font-weight:400}.apply-budget-btn{grid-column:span 2;background:var(--accent);color:#fff;font-weight:700;padding:14px;border-radius:14px;margin-top:8px;transition:all .2s ease}.apply-budget-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 35%,transparent)}.apply-budget-btn:disabled{opacity:.55;transform:none;box-shadow:none;cursor:not-allowed}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.refresh-pill{display:flex;align-items:center;gap:6px;background:var(--bg);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;color:var(--text-secondary);transition:all .2s ease}.refresh-pill:hover{background:var(--accent-light);color:var(--accent)}.analysis-table-container{background:var(--surface);border:1px solid var(--border);border-radius:20px;overflow:hidden}.analysis-table{width:100%;border-collapse:collapse}.analysis-table th{text-align:left;padding:16px;background:var(--bg);font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em}.analysis-table td{padding:16px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary)}.time-col{font-family:var(--font-mono);font-size:12px;opacity:.7}.tier-pill{padding:4px 10px;border-radius:8px;font-size:11px;font-weight:800;text-transform:uppercase}.tier-pill.tier-simple{background:#34c75915;color:#34c759}.tier-pill.tier-standard{background:#5b5fc715;color:#5b5fc7}.tier-pill.tier-complex{background:#ff950015;color:#ff9500}.tier-pill.tier-reasoning{background:#ff3b3015;color:#ff3b30}.tier-pill.tier-web_search{background:#0ea5e915;color:#0ea5e9}.tier-pill.tier-code_search{background:#10b98115;color:#10b981}.model-col strong{color:var(--text);font-family:var(--font-mono)}.score-col{width:120px}.score-bar-wrap{display:flex;align-items:center;gap:12px}.score-bar{flex:1;height:6px;background:var(--bg);border-radius:3px;position:relative;overflow:hidden}.score-bar:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:var(--accent);transform-origin:left;animation:growWidth 1s ease-out}@keyframes growWidth{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.analysis-empty{padding:48px;text-align:center;color:var(--text-tertiary);font-style:italic;font-size:14px}.tier-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0000007a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tier-modal-glass{background:var(--surface);border:1px solid var(--border);border-radius:18px;width:min(520px,calc(100vw - 48px));max-height:min(720px,calc(100vh - 48px));box-shadow:0 32px 90px #00000059;display:flex;flex-direction:column;overflow:hidden}.tier-modal-glass .modal-header{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.tier-modal-glass .modal-header h4{font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.tier-modal-glass .close-modal{font-size:24px;color:var(--text-tertiary);line-height:1;width:32px;height:32px;border-radius:8px}.tier-modal-glass .close-modal:hover{color:var(--text);background:var(--bg)}.tier-modal-glass .modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.tier-modal-glass .modal-footer{padding:16px 20px;background:var(--bg);border-top:1px solid var(--border)}.tier-modal-glass .form-group label{color:var(--text-secondary)}.tier-modal-glass .form-group select,.tier-modal-glass .form-group input{width:100%;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:10px}.tier-modal-glass .form-group select{min-height:40px}.tier-modal-glass .form-group select[size],.tier-modal-glass .form-group select:not([size]){max-width:100%}.save-btn{width:100%;background:var(--accent);color:#fff;font-weight:800;padding:12px 14px;border-radius:12px;transition:all .2s ease}.save-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 8px 20px #5b5fc74d}.save-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.budget-overview{flex-direction:column;gap:20px}.budget-controls-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}}.programmatic-router-panel{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:24px;animation:fadeIn .3s ease-out}.programmatic-router-panel .panel-header{margin-bottom:20px}.programmatic-router-panel .panel-header .section-title{font-size:16px;font-weight:800;color:var(--text);letter-spacing:-.02em;margin:0 0 6px}.programmatic-router-panel .panel-header .section-desc{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.5}.programmatic-router-panel .panel-form{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.programmatic-router-panel .form-group label{display:block;font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.programmatic-router-panel .message-input,.programmatic-router-panel input[type=text]{width:100%;padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:12px;color:var(--text);font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.programmatic-router-panel .message-input:focus,.programmatic-router-panel input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.programmatic-router-panel .form-row{display:flex;gap:12px;align-items:flex-end}.programmatic-router-panel .form-row .form-group{flex:1}.programmatic-router-panel .run-test-btn{background:var(--accent);color:#fff;font-weight:700;font-size:13px;padding:12px 20px;border-radius:12px;white-space:nowrap;transition:all .2s;min-height:44px}.programmatic-router-panel .run-test-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 30%,transparent)}.programmatic-router-panel .run-test-btn:disabled{opacity:.55;cursor:not-allowed}.programmatic-router-panel .panel-error{background:color-mix(in srgb,#ef4444 12%,transparent);border:1px solid color-mix(in srgb,#ef4444 25%,transparent);border-radius:12px;padding:12px 16px;color:#ef4444;font-size:13px;margin-bottom:16px}.programmatic-router-panel .error-label{font-weight:700}.programmatic-router-panel .panel-result{background:var(--bg);border:1px solid var(--border);border-radius:16px;overflow:hidden}.programmatic-router-panel .result-header{display:flex;align-items:center;gap:16px;padding:16px 20px;background:color-mix(in srgb,var(--surface) 60%,var(--bg));border-bottom:1px solid var(--border)}.programmatic-router-panel .result-mode-badge{padding:6px 14px;border-radius:20px;color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.programmatic-router-panel .result-confidence{flex:1;display:flex;align-items:center;gap:10px}.programmatic-router-panel .confidence-label{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.programmatic-router-panel .confidence-bar-wrap{flex:1;display:flex;align-items:center;gap:10px}.programmatic-router-panel .confidence-bar{height:6px;border-radius:3px;transition:width .4s ease-out}.programmatic-router-panel .confidence-value{font-size:14px;font-weight:800;min-width:40px;text-align:right}.programmatic-router-panel .result-details{padding:16px 20px;display:flex;flex-direction:column;gap:14px}.programmatic-router-panel .result-row{display:flex;gap:12px;align-items:flex-start}.programmatic-router-panel .result-label{font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;min-width:130px;padding-top:4px}.programmatic-router-panel .result-value{flex:1;display:flex;flex-wrap:wrap;gap:6px}.programmatic-router-panel .empty-value{color:var(--text-tertiary);font-size:13px;font-style:italic}.programmatic-router-panel .tool-chip{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);padding:4px 10px;border-radius:8px;font-size:12px;font-weight:700;font-family:SF Mono,Fira Code,monospace}.programmatic-router-panel .signal-list{display:flex;flex-wrap:wrap;gap:6px}.programmatic-router-panel .signal-chip{background:color-mix(in srgb,#f59e0b 12%,transparent);color:#f59e0b;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;font-family:SF Mono,Fira Code,monospace}.programmatic-router-panel .script-chip{background:color-mix(in srgb,#8b5cf6 12%,transparent);color:#8b5cf6;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:capitalize}.programmatic-router-panel .scores-grid{flex-direction:column;gap:8px;width:100%}.programmatic-router-panel .score-item{display:flex;align-items:center;gap:10px}.programmatic-router-panel .score-tool{font-size:12px;font-weight:700;color:var(--text);font-family:SF Mono,Fira Code,monospace;min-width:100px}.programmatic-router-panel .score-bar-wrap{flex:1;display:flex;align-items:center;gap:8px}.programmatic-router-panel .score-bar-wrap .score-bar{height:4px;background:var(--accent);border-radius:2px;transition:width .3s ease-out}.programmatic-router-panel .score-bar-wrap .score-value{font-size:12px;font-weight:700;color:var(--text-secondary);min-width:36px;text-align:right}.programmatic-router-panel .reason-text{font-size:13px;color:var(--text-secondary);line-height:1.5;font-style:italic}@media(max-width:640px){.programmatic-router-panel .form-row{flex-direction:column}.programmatic-router-panel .result-header{flex-direction:column;align-items:flex-start}.programmatic-router-panel .result-row{flex-direction:column;gap:4px}.programmatic-router-panel .result-label{min-width:auto}}.skills-tab{padding:0}.skills-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.skills-description{font-size:13px;color:var(--text-muted);margin-bottom:16px;line-height:1.5}.skill-form-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:16px}.skill-prompt-input{width:100%;min-height:120px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-family:SF Mono,Monaco,Menlo,monospace;font-size:12px;line-height:1.5;resize:vertical}.skill-prompt-input:focus{outline:none;border-color:var(--accent)}.form-error{color:#ef4444;font-size:13px;margin:8px 0}.skill-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:10px;transition:border-color .15s}.skill-card.disabled{opacity:.55}.skill-card:hover{border-color:var(--accent)}.skill-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.skill-card-info{display:flex;align-items:center;gap:8px}.skill-card-name{font-weight:600;font-size:14px;display:flex;align-items:center;gap:6px;color:var(--text-primary)}.skill-card-name svg{color:var(--accent)}.skill-builtin-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--accent);color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.skill-card-actions{display:flex;align-items:center;gap:6px}.skill-card-actions .toggle-btn{padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-muted);font-size:12px;cursor:pointer;transition:all .15s}.skill-card-actions .toggle-btn.on{background:var(--accent);color:#fff;border-color:var(--accent)}.skill-card-actions .toggle-btn:hover{opacity:.85}.skill-card-actions .icon-btn.danger{color:#ef4444}.skill-card-actions .icon-btn.danger:hover{background:#ef44441a}.skill-card-desc{font-size:13px;color:var(--text-muted);margin:6px 0 0;line-height:1.4}.skill-keywords{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.skill-keyword-chip{font-size:11px;padding:2px 8px;border-radius:4px;background:#5b5fc71a;color:var(--accent);font-family:SF Mono,Monaco,Menlo,monospace}.skill-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;padding:0;border-radius:0;background:none;color:var(--text-tertiary);margin-left:6px;font-weight:400}.skill-select-wrap{position:relative}.skill-dropdown{min-width:200px;max-height:260px;overflow-y:auto}.skill-option{display:flex;align-items:center;justify-content:space-between;gap:8px}.attach-dropdown .skill-option{justify-content:flex-start}.skill-option-name{flex:1;text-align:left}.skill-empty{padding:12px;text-align:center;font-size:13px;color:var(--text-muted)}.chat-input-container .chat-web-select.active.has-skills{color:var(--accent)}.thinking-msg{max-width:70%;align-self:flex-start;display:flex;gap:8px}.thinking-indicator{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;font-size:13px;max-width:100%;min-width:160px}.thinking-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.thinking-icon{display:none}.thinking-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.thinking-pulse{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);animation:thinkPulse 1.4s ease-in-out infinite}@keyframes thinkPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.7)}}.thinking-details{margin-top:2px}.thinking-summary{list-style:none;cursor:pointer;font-size:11px;color:var(--text-tertiary);font-weight:500;-webkit-user-select:none;user-select:none;padding:2px 0;width:max-content;outline:none}.thinking-summary:focus-visible{color:var(--text-secondary);box-shadow:0 1px color-mix(in srgb,var(--text-tertiary) 45%,transparent)}.thinking-summary::-webkit-details-marker{display:none}.thinking-summary:before{content:"▸ ";font-size:9px;transition:transform .15s ease;display:inline-block}.thinking-details[open] .thinking-summary:before{content:"▾ "}.thinking-content{margin:5px 0 0 5px;padding:2px 0 2px 10px;background:transparent;border:0;border-left:1px solid var(--border);border-radius:0;font-size:11.5px;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;font-family:inherit}.rep-warning{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#fef3e8;border:1px solid #f5d9b3;border-radius:8px;font-size:11px;font-weight:600;color:#b06000;margin-top:6px}.question-card-outer{width:100%;max-width:780px;margin:0 auto;padding:0 16px;box-sizing:border-box;z-index:30;animation:slideUpFade .4s cubic-bezier(.16,1,.3,1)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.question-card{width:100%;background:color-mix(in srgb,var(--surface) 92%,var(--accent) 3%);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:16px;padding:24px;box-shadow:0 20px 48px #0006,inset 0 1px #ffffff0d;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transition:all .3s cubic-bezier(.4,0,.2,1);max-height:80vh;overflow-y:auto}.question-card::-webkit-scrollbar,.terminal-body::-webkit-scrollbar{width:6px;height:6px}.question-card::-webkit-scrollbar-track,.terminal-body::-webkit-scrollbar-track{background:transparent}.question-card::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-tertiary) 20%,transparent);border-radius:99px}.question-card::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-tertiary) 40%,transparent)}.terminal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:99px}.terminal-body::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.question-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 24px 56px #00000073,0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}.question-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.question-icon{width:20px;height:20px;border-radius:7px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));position:relative;flex-shrink:0}.question-icon-single:after{content:"";position:absolute;left:5px;top:5px;width:8px;height:6px;border:1.5px solid var(--accent);border-radius:5px}.question-icon-single:before{content:"";position:absolute;left:8px;top:11px;width:4px;height:4px;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:skew(-20deg)}.question-icon-list:before,.question-icon-list:after{content:"";position:absolute;left:6px;right:5px;height:1.5px;background:var(--accent);border-radius:2px}.question-icon-list:before{top:6px;box-shadow:0 4px 0 var(--accent)}.question-icon-list:after{top:14px}.question-label{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:11px;font-weight:800;opacity:.85}.question-text{font-size:14.5px;color:var(--text);margin-bottom:16px;line-height:1.55;font-weight:550;white-space:pre-wrap}.question-parsed-container{display:flex;flex-direction:column;gap:12px;width:100%}.question-prompt{font-size:15px;font-weight:600;color:var(--text);line-height:1.5}.question-command-terminal{display:flex;flex-direction:column;background:#18181c;border:1px solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:10px;overflow:hidden;box-shadow:0 8px 24px #00000040;margin:4px 0 16px}.terminal-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.05);-webkit-user-select:none;user-select:none}.terminal-buttons{display:flex;gap:6px}.terminal-dot{width:8px;height:8px;border-radius:50%;opacity:.8}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.terminal-title{font-size:10.5px;font-weight:700;color:#ffffff59;text-transform:uppercase;letter-spacing:.08em}.terminal-copy-btn{display:flex;align-items:center;gap:4px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:4px;color:#ffffff80;font-size:10px;font-weight:600;padding:2px 6px;cursor:pointer;transition:all .15s ease}.terminal-copy-btn:hover{background:#ffffff0d;color:#fff;border-color:#ffffff2e}.terminal-body{padding:14px 16px;overflow:auto;max-height:240px}.terminal-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;color:#f1f1f4;line-height:1.55;white-space:pre-wrap;word-break:break-all}.terminal-footer{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#00000026;border-top:1px solid rgba(255,255,255,.03);color:#ffffff73;font-size:11px}.terminal-footer .folder-icon{opacity:.5;color:var(--accent)}.terminal-footer .cwd-label{font-weight:500}.terminal-footer .cwd-path{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#fffc;background:#ffffff0f;padding:1px 6px;border-radius:4px;font-size:10.5px}.question-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 14px;border:1px solid var(--border);border-radius:999px;background:var(--bg);color:var(--text-secondary);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000d}.chip:hover{border-color:color-mix(in srgb,var(--accent) 60%,var(--border));color:var(--text);transform:translateY(-1px);box-shadow:0 4px 10px #00000014}.chip-icon{flex-shrink:0;opacity:.7}.chip:hover .chip-icon{opacity:1}.chip-active{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.chip-active .chip-icon{color:var(--accent);opacity:1}.chip-custom{border-style:dashed;color:var(--text-tertiary)}.chip-custom:hover{color:var(--accent)}.question-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:13.5px;outline:none;transition:all .2s ease;box-shadow:inset 0 1px 2px #0000000d}.question-input:focus{border-color:var(--accent);background:var(--surface);box-shadow:inset 0 1px 2px #00000005,0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.question-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.question-submit-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 20px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #0000001f}.question-submit-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #0003}.question-submit-btn:active:not(:disabled){transform:translateY(0)}.question-submit-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.question-skip-btn,.question-skip-all-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 16px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.question-skip-btn:hover,.question-skip-all-btn:hover{border-color:color-mix(in srgb,var(--error-text) 35%,var(--border));color:var(--error-text);background:var(--error-bg)}.question-multi{display:flex;flex-direction:column;gap:16px}.question-item{border:1px solid var(--border);border-radius:10px;padding:16px;background:var(--bg);box-shadow:0 1px 3px #00000005}.question-item .question-text{font-size:13.5px;margin-bottom:12px}.question-item .question-input{margin-top:10px;background:var(--surface)}.question-item .question-skip-btn{margin-top:10px;min-height:30px;padding:6px 12px;font-size:12px}.question-single{display:flex;flex-direction:column}.task-list-panel{margin:8px 16px 0;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface) 95%,var(--bg-outer));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 20px #0000000f,inset 0 1px #ffffff05;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1)}.task-list-header{width:100%;min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background-color .15s ease}.task-list-header:hover{background:color-mix(in srgb,var(--accent) 3%,transparent)}.task-list-title-wrap{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0}.task-list-kicker{font-size:8.5px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;opacity:.85}.task-list-title{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-list-meta{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:10px;color:var(--text-tertiary)}.task-list-progress{width:50px;height:3px;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent);overflow:hidden}.task-list-progress>span{display:block;height:100%;background:var(--accent);transition:width .3s ease}.task-list-caret{color:var(--text-tertiary);font-size:10px;font-weight:600;opacity:.6}.task-list-active-line{display:flex;align-items:center;gap:8px;padding:0 12px 6px;font-size:11px;color:var(--accent);font-weight:500}.task-list-items{display:flex;flex-direction:column;border-top:1px solid color-mix(in srgb,var(--border) 50%,transparent);max-height:150px;overflow-y:auto;padding:4px 0}.task-list-item{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:4px 12px;border:0;background:transparent;color:var(--text);text-align:left;transition:background-color .15s ease}.task-list-item:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}.task-list-dot{width:7px;height:7px;margin-top:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-tertiary) 60%,transparent);background:transparent;box-sizing:border-box;flex-shrink:0;transition:all .2s ease}.task-list-dot.status-in_progress,.task-list-dot.status-delegated{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 40%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.task-list-dot.status-done{background:var(--success-text);border-color:var(--success-text)}.task-list-dot.status-blocked{border-color:var(--warning-text);background:color-mix(in srgb,var(--warning-text) 30%,transparent)}.task-list-dot.status-failed{border-color:var(--error-text);background:color-mix(in srgb,var(--error-text) 30%,transparent)}.task-list-item-main{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:1px;min-width:0}.task-list-item-title{font-size:11.5px;line-height:1.2;font-weight:450;color:var(--text);opacity:.9}.task-list-item.status-done .task-list-item-title{text-decoration:line-through;opacity:.4}.task-list-item-sub{display:inline-flex;gap:4px;font-size:9.5px;color:var(--text-tertiary);font-family:var(--font-mono, ui-monospace, monospace);opacity:.55}.task-list-item-sub span{position:relative}.task-list-item-sub span:not(:last-child):after{content:"·";margin-left:4px}.task-list-item-result{font-size:9.5px;color:var(--text-tertiary);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8;margin-top:1px}.task-list-item-status{font-size:9px;color:var(--text-tertiary);font-weight:600;font-family:var(--font-mono, ui-monospace, monospace);text-transform:uppercase;letter-spacing:.02em;opacity:.4;transition:opacity .2s ease}.task-list-item.status-todo .task-list-item-status{opacity:0}.task-list-item.status-todo:hover .task-list-item-status{opacity:.3}.delegated-tasks-group{align-self:flex-start;max-width:90%;display:flex;gap:8px;align-items:flex-start}.delegated-tasks-group>.msg-avatar{margin-top:2px;flex-shrink:0}.delegated-tasks-list{display:flex;flex-direction:column;flex:1;min-width:0}.delegated-task-card{display:flex;flex-direction:column;gap:2px;padding:8px 0;border:none;border-bottom:1px solid var(--border);background:none;cursor:pointer;text-align:left;width:100%;transition:background .1s ease}.delegated-task-card:last-child{border-bottom:none}.delegated-task-card:hover{background:#00000005}.task-card-header{display:flex;align-items:center;gap:6px}.task-status-dot{display:none}.task-agent-name{font-size:12px;font-weight:500;color:var(--text)}.task-status-badge{display:inline-flex;align-items:center;gap:3px;margin-left:auto;padding:0;border:none;border-radius:0;background:none;font-size:10px;font-weight:500;text-transform:capitalize;letter-spacing:0}.task-status-badge.badge-running{color:#b06000}.task-status-badge.badge-completed{color:#1e8e3e}.task-status-badge.badge-failed{color:#d93025}.task-spinner{display:inline-block;width:8px;height:8px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.task-card-body{font-size:11px;color:var(--text-secondary);line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.task-card-tools{display:flex;gap:6px;flex-wrap:wrap}.task-tool-chip{display:inline;font-size:10px;font-weight:400;color:var(--text-tertiary);background:none;border:none;border-radius:0;padding:0}.task-tool-chip.chip-running{color:#b06000}.task-tool-chip.chip-done{color:#1e8e3e}.task-tool-dot{display:none}.task-card-preview{font-size:10px;color:var(--text-tertiary);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-route-view{display:flex;flex-direction:column;height:100%;background:var(--bg)}.workspace-route-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.workspace-route-title{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-route-count{font-size:11px;font-weight:500;color:var(--text-tertiary);background:var(--surface);border:1px solid var(--border);padding:0 7px;line-height:18px;border-radius:10px}.workspace-route-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--text-tertiary);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;flex-shrink:0}.workspace-route-icon-btn:hover{background:var(--surface);color:var(--text)}.workspace-route-icon-btn.danger:hover{background:#ef44441a;color:#ef4444}.workspace-route-icon-btn:disabled{opacity:.25;cursor:default}.workspace-route-icon-btn:disabled:hover{background:transparent;color:var(--text-tertiary)}.workspace-route-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}.workspace-route-list::-webkit-scrollbar{width:4px}.workspace-route-list::-webkit-scrollbar-track{background:transparent}.workspace-route-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-tertiary) 15%,transparent);border-radius:2px}.workspace-route-list::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-tertiary) 25%,transparent)}.workspace-route-session{display:flex;align-items:center;gap:10px;padding:9px 12px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;width:100%;transition:all .15s ease;color:var(--text);position:relative}.workspace-route-session:hover{background:var(--surface)}.workspace-route-session.wrs-selected{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.wrs-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1.5px solid var(--border);border-radius:4px;flex-shrink:0;color:transparent;transition:all .15s ease}.workspace-route-session:hover .wrs-check{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.workspace-route-session.wrs-selected .wrs-check{border-color:var(--accent);background:var(--accent);color:#fff}.wrs-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.wrs-title{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.wrs-date{font-size:11px;color:var(--text-tertiary)}.wrs-arrow{flex-shrink:0;color:var(--text-tertiary);opacity:.3;transition:all .15s ease}.workspace-route-session:hover .wrs-arrow{opacity:.7;color:var(--text-secondary)}.workspace-route-session.wrs-selected .wrs-arrow{opacity:.5}.workspace-route-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 40px;flex:1;text-align:center;animation:dbFadeIn .3s ease both}.workspace-route-empty-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--text-tertiary)}.workspace-route-empty p{margin:0;font-size:13px;color:var(--text-tertiary);max-width:200px;line-height:1.5}.workspace-route-empty .workspace-route-new-btn{padding:7px 16px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.workspace-route-empty .workspace-route-new-btn:hover{border-color:var(--accent);color:var(--accent)}.sub-session-view{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--bg);z-index:50;animation:subSessionSlideIn .18s ease-out}@keyframes subSessionSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sub-session-header{display:flex;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0}.sub-session-back-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:8px;font-size:12px;font-weight:600;color:var(--text-secondary);border:1px solid var(--border);transition:background .15s ease,color .15s ease,border-color .15s ease}.sub-session-back-btn:hover{background:var(--surface);color:var(--text)}.sub-session-header-center{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sub-session-agent-row{display:flex;align-items:center;gap:8px}.sub-session-agent-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);flex-shrink:0}.sub-session-agent-name{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sub-session-back-link{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:28px}.sub-session-status-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.02em;flex-shrink:0}.sub-session-status-pill.pill-running{background:var(--warning-bg);color:var(--warning-text)}.sub-session-status-pill.pill-completed{background:var(--success-bg);color:var(--success-text)}.sub-session-status-pill.pill-failed{background:var(--error-bg);color:var(--error-text)}.sub-session-spinner{display:inline-block;width:10px;height:10px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.sub-session-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:22px;max-width:980px;width:100%;min-width:0;box-sizing:border-box;margin:0 auto}.sub-session-task-desc{background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:0 0 20px;box-shadow:none}.sub-session-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-secondary);margin-bottom:8px}.sub-session-task-text{font-size:15px;color:var(--text);line-height:1.55}.sub-session-tools-section{background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:0 0 22px;box-shadow:none}.sub-session-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sub-session-section-header .sub-session-section-label{margin-bottom:0}.sub-session-tools-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:10px;background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);font-size:10px;font-weight:700}.sub-session-tools-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:8px;overflow:hidden}.sub-session-tool-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;font-size:13px;transition:background .15s ease}.sub-session-tool-item:last-child{border-bottom:0}.sub-session-tool-item.tool-item-running{background:color-mix(in srgb,var(--warning-bg) 42%,transparent)}.sub-session-tool-item.tool-item-done{background:transparent}.sub-session-tool-indicator{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;flex-shrink:0}.sub-session-tool-indicator.indicator-running{background:var(--warning-bg);color:var(--warning-text)}.sub-session-tool-indicator.indicator-done{background:var(--success-bg);color:var(--success-text)}.sub-session-tool-spinner{display:block;width:10px;height:10px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.sub-session-tool-name{font-weight:600;color:var(--text);font-size:13px}.sub-session-tool-status{margin-left:auto;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:10px}.sub-session-tool-status.status-running{color:var(--warning-text);background:var(--warning-bg)}.sub-session-tool-status.status-done{color:var(--success-text);background:var(--success-bg)}.sub-session-output-section{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;min-width:0}.sub-session-output{font-size:15px;line-height:1.65;color:var(--text);padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--surface);min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden;overflow-wrap:anywhere;word-break:normal}.sub-session-output p{margin:0 0 8px;max-width:100%}.sub-session-output p:last-child{margin-bottom:0}.sub-session-output pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px 14px;font-size:12px;line-height:1.5;max-width:100%;box-sizing:border-box;overflow-x:auto;white-space:pre}.sub-session-output code{font-family:var(--font);font-size:12px;background:var(--bg);padding:1px 5px;border-radius:4px;overflow-wrap:anywhere}.sub-session-output pre code{display:block;min-width:0;padding:0;background:transparent;overflow-wrap:normal;white-space:inherit}.sub-session-output ol,.sub-session-output ul{max-width:100%;padding-left:1.35rem;margin:0 0 12px}.sub-session-output li{max-width:100%;padding-left:.15rem}.sub-session-empty{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);padding:18px;border:1px dashed var(--border);border-radius:8px}.sub-session-empty-spinner{display:inline-block;width:12px;height:12px;border:1.5px solid var(--border);border-top-color:var(--text-secondary);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.sub-session-error-section{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.sub-session-error{margin:0;padding:12px 14px;background:var(--error-bg);border:1px solid rgba(217,48,37,.15);border-radius:8px;font-size:12px;line-height:1.5;color:var(--error-text);white-space:pre-wrap;overflow-wrap:break-word;font-family:SF Mono,Fira Code,Cascadia Code,monospace}.kanban-board{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg)}.kanban-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 14px;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0}.kanban-header h2{font-size:20px;font-weight:700;color:var(--text)}.kanban-title-group{display:flex;flex-direction:column;gap:2px;min-width:0}.kanban-title-group span{font-size:12px;color:var(--text-secondary)}.kanban-header-actions{display:flex;align-items:center;gap:8px}.kanban-auto-refresh{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);cursor:pointer}.kanban-auto-refresh input{cursor:pointer}.kanban-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;font-size:13px;font-weight:600;color:var(--text-secondary);background:transparent;border:1px solid var(--border);transition:background .15s ease,color .15s ease,border-color .15s ease}.kanban-btn:hover{background:var(--surface);color:var(--text)}.kanban-btn:disabled{opacity:.5;cursor:not-allowed}.kanban-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.kanban-btn-primary:hover{background:var(--accent-hover);color:#fff}.kanban-btn-danger{color:#ff3b30;border-color:#ff3b30}.kanban-btn-danger:hover{background:#ff3b30;color:#fff}.kanban-icon-btn{width:32px;height:32px;padding:0;justify-content:center}.kanban-toolbar{display:flex;align-items:center;gap:12px;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;flex-shrink:0}.kanban-search{display:flex;align-items:center;gap:8px;min-width:260px;flex:1;padding:8px 11px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary)}.kanban-search input{min-width:0;width:100%;border:0;outline:0;color:var(--text);background:transparent;font-size:13px}.kanban-toolbar select{height:36px;padding:0 12px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:transparent;font-size:13px}.kanban-priority-filter{display:flex;gap:4px;padding:3px;border:1px solid var(--border);border-radius:8px;background:transparent}.kanban-priority-filter button{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:0;border-radius:6px;color:var(--text-secondary);background:transparent;font-size:12px;font-weight:500}.kanban-priority-filter button.active{color:var(--text);background:var(--surface)}.kanban-priority-filter span{width:6px;height:6px;border-radius:50%}.kanban-due-toggle{padding:0 2px;white-space:nowrap}.kanban-metrics{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;padding:16px 24px;background:var(--bg);flex-shrink:0;border-bottom:1px solid var(--border)}.kanban-metrics div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.kanban-metrics div:last-child{border-right:1px solid var(--border)}.kanban-metrics strong{color:var(--text);font-size:22px;line-height:1}.kanban-metrics span{color:var(--text-secondary);font-size:12px;font-weight:600}.kanban-columns{display:flex;gap:14px;padding:18px 24px 24px;overflow-x:auto;flex:1;align-items:flex-start}.kanban-column{min-width:300px;max-width:360px;flex:1;background:transparent;border-radius:8px;display:flex;flex-direction:column;max-height:100%;transition:box-shadow .2s ease,border-color .2s ease;border:1px solid var(--border)}.kanban-column-drag-over{box-shadow:0 0 0 2px var(--accent),0 4px 12px #5b5fc733}.kanban-column-header{display:flex;align-items:center;gap:8px;padding:13px 14px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);flex-shrink:0}.kanban-column-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.kanban-column-title{flex:1}.kanban-column-count{font-size:11px;font-weight:500;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1px 7px}.kanban-column-body{padding:10px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px;min-height:100px}.kanban-empty-column{display:flex;min-height:88px;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px;border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:8px;color:var(--text-secondary);background:transparent;text-align:center}.kanban-empty-column strong{color:var(--text);font-size:12px}.kanban-card{background:var(--surface);border-radius:8px;padding:13px;cursor:pointer;border:1px solid var(--border);transition:border-color .15s ease,background .15s ease,transform .15s ease;position:relative}.kanban-card:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:none;transform:translateY(-1px)}.kanban-card.dragging{opacity:.5;transform:rotate(2deg)}.kanban-card.urgent{border-left:3px solid #ff3b30}.kanban-card.overdue{border-color:color-mix(in srgb,#ff9500 70%,var(--border));box-shadow:none}.kanban-card-header{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}.kanban-card-priority{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:6px}.kanban-card-title{font-size:14px;font-weight:600;color:var(--text);line-height:1.4;word-break:break-word}.kanban-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.kanban-card-meta span{max-width:100%;padding:2px 7px;border-radius:999px;color:var(--text-secondary);background:var(--bg);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card-desc{font-size:12px;color:var(--text-secondary);line-height:1.4;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kanban-card-schedule,.kanban-card-ai{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);margin-top:6px}.kanban-card-ai svg{color:#ff9500}.kanban-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:6px;border-top:1px solid var(--border)}.kanban-card-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.kanban-card-actions button{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);background:transparent}.kanban-card-actions button:hover{color:var(--text);border-color:var(--accent)}.kanban-card-time{font-size:11px;color:var(--text-secondary)}.kanban-card-running{display:flex;align-items:center;gap:4px;font-size:11px;color:#007aff}.kanban-spinner{width:10px;height:10px;border:2px solid #007aff30;border-top-color:#007aff;border-radius:50%;animation:kanban-spin .6s linear infinite}@keyframes kanban-spin{to{transform:rotate(360deg)}}.kanban-modal{width:560px;max-width:95vw;max-height:90vh;overflow-y:auto}.kanban-form{display:flex;flex-direction:column;gap:14px;padding:16px 20px}.kanban-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary)}.kanban-form input[type=text],.kanban-form input[type=datetime-local],.kanban-form textarea,.kanban-form select{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text);background:var(--bg)}.kanban-form input:focus,.kanban-form textarea:focus,.kanban-form select:focus{border-color:var(--accent);outline:none}.kanban-form textarea{resize:vertical;min-height:60px}.kanban-form-row{display:flex;gap:12px}.kanban-form-row label{flex:1}.kanban-form-actions{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--border)}.kanban-form-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.kanban-schedule-section{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg);border-radius:8px}.kanban-schedule-tabs{display:flex;gap:4px}.kanban-schedule-tabs button{padding:5px 12px;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);transition:all .15s ease}.kanban-cron-presets{display:flex;flex-wrap:wrap;gap:6px}.kanban-cron-presets button{padding:5px 9px;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);background:var(--surface);font-size:12px;font-weight:500}.kanban-cron-presets button.active{color:#fff;background:var(--accent);border-color:var(--accent)}.kanban-schedule-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.kanban-checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:400;color:var(--text);cursor:pointer}.kanban-checkbox-label input{cursor:pointer}.kanban-hint{font-size:11px;color:var(--text-tertiary);font-style:italic}.kanban-detail{display:flex;flex-direction:column;gap:10px;padding:16px 20px}.kanban-detail-row{display:flex;align-items:center;gap:12px;font-size:13px}.kanban-detail-label{font-size:12px;font-weight:600;color:var(--text-tertiary);min-width:80px}.kanban-detail-block{display:flex;flex-direction:column;gap:4px}.kanban-detail-block p{font-size:13px;color:var(--text);line-height:1.5}.kanban-detail-pre{padding:10px 12px;background:var(--bg);border-radius:8px;font-size:12px;color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;margin:0}.kanban-detail-result{border:1px solid var(--border)}.kanban-status-badge{padding:2px 10px;border-radius:10px;font-size:11px;font-weight:600;text-transform:capitalize}.kanban-status-badge[data-status=todo]{background:#e5e5ea;color:#636366}.kanban-status-badge[data-status=in_progress]{background:#dceeff;color:#007aff}.kanban-status-badge[data-status=done]{background:#d4f7dc;color:#34c759}.kanban-status-badge[data-status=failed]{background:var(--error-bg);color:#ff3b30}.kanban-priority-badge{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;color:#fff}@media(max-width:900px){.kanban-board{overflow:auto}.kanban-header{position:sticky;top:0;z-index:5;padding:8px 12px}.kanban-header-actions{gap:6px}.kanban-auto-refresh span{display:none}.kanban-btn{padding:6px 10px}.kanban-toolbar{padding:10px 12px;align-items:stretch}.kanban-search{min-width:100%;flex-basis:100%}.kanban-toolbar select{flex:1;min-width:160px}.kanban-priority-filter{width:100%;overflow-x:auto}.kanban-priority-filter button{flex:0 0 auto}.kanban-metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.kanban-metrics div{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:12px}.kanban-columns{display:grid;grid-template-columns:1fr;gap:12px;padding:12px;overflow:visible}.kanban-column{min-width:0;max-width:none;max-height:none}.kanban-column-body{max-height:none;overflow:visible}}@media(max-width:520px){.kanban-header{align-items:flex-start}.kanban-title-group span{display:none}.kanban-header-actions{flex-wrap:wrap;justify-content:flex-end}.kanban-btn-primary{max-width:112px;white-space:nowrap}.kanban-metrics{grid-template-columns:1fr}.kanban-metrics div{padding:12px}.kanban-card-footer{align-items:flex-start;gap:8px;flex-wrap:wrap}.kanban-card-actions{order:3;width:100%;margin-left:0}.kanban-modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.kanban-form-row{flex-direction:column}.kanban-form-actions{padding:10px 14px;flex-wrap:wrap}.kanban-form-actions .kanban-btn{flex:1;justify-content:center}.kanban-cron-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}.memory-tab{display:flex;flex-direction:column;gap:16px}.memory-header,.memory-card-header,.memory-actions,.memory-form-row,.memory-filters,.memory-prefs,.memory-foot{display:flex;align-items:center;gap:10px}.memory-header{justify-content:space-between}.memory-description{color:var(--muted);font-size:13px;margin:4px 0 0}[data-theme=dark] .memory-description{color:#c4c4cc}.memory-repo-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);font-size:12px;overflow:hidden}[data-theme=dark] .memory-repo-strip{background:#111114;color:#b8b8c2}.memory-repo-strip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.memory-repo-strip code,.memory-foot code{color:var(--accent);font-size:12px}[data-theme=dark] .memory-repo-strip code,[data-theme=dark] .memory-foot code{color:#ff9b72}.memory-prefs{flex-wrap:wrap;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}[data-theme=dark] .memory-prefs{background:#131316}.memory-limit{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}[data-theme=dark] .memory-limit{color:#c4c4cc}.memory-limit input{width:64px}[data-theme=dark] .memory-limit input{background:#0e0e11;border:1px solid #353540;color:#fafafa;border-radius:8px;padding:8px 10px}.memory-create{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}[data-theme=dark] .memory-create{background:#131316}.memory-form-row,.memory-filters{flex-wrap:wrap}.memory-form-row select,.memory-filters select,.memory-edit select{min-height:34px}[data-theme=dark] .memory-form-row select,[data-theme=dark] .memory-filters select,[data-theme=dark] .memory-edit select,[data-theme=dark] .memory-input,[data-theme=dark] .memory-edit textarea,[data-theme=dark] .memory-search,[data-theme=dark] .provider-search.memory-search{background:#0e0e11;border:1px solid #353540;color:#fafafa}[data-theme=dark] .memory-form-row select,[data-theme=dark] .memory-filters select,[data-theme=dark] .memory-edit select{border-radius:8px;padding:8px 10px}.memory-input,.memory-edit textarea{width:100%;resize:vertical}[data-theme=dark] .memory-input,[data-theme=dark] .memory-edit textarea{border-radius:8px;padding:10px 12px}.memory-search{flex:1 1 240px;margin:0}[data-theme=dark] .memory-search{margin:0}[data-theme=dark] .memory-search input::placeholder,[data-theme=dark] .memory-input::placeholder,[data-theme=dark] .memory-edit textarea::placeholder{color:#7f7f8d}.memory-list{display:flex;flex-direction:column;gap:10px}.memory-card{border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface)}[data-theme=dark] .memory-card{background:#131316}.memory-card.archived{opacity:.75}.memory-card.deleted{opacity:.55}.memory-card-header{justify-content:space-between;align-items:flex-start}.memory-meta,.memory-card-actions{display:flex;flex-wrap:wrap;gap:6px}.memory-card-actions{justify-content:flex-end}.memory-meta span{padding:3px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;text-transform:capitalize}[data-theme=dark] .memory-meta span{background:#202028;color:#c7c7d1}.memory-content{margin:10px 0;line-height:1.45;white-space:pre-wrap;color:var(--text)}.memory-edit{display:flex;flex-direction:column;gap:8px;margin-top:10px}.memory-foot{justify-content:space-between;color:var(--muted);font-size:12px}.memory-create .accent-btn{background:#ff8f66;color:#111;border:1px solid rgba(255,255,255,.08);box-shadow:0 1px #ffffff1f inset}.memory-create .accent-btn:hover{background:#ffa37f}.memory-create .accent-btn:disabled{background:#4a3a34;color:#b9a9a3;opacity:1;cursor:not-allowed}.memory-filters .provider-search{background:#0e0e11;border-color:#353540}.memory-filters .provider-search svg{color:#8f8f9d}.form-section-toggle{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.form-section-toggle .toggle-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);border-radius:6px;padding:6px 12px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.form-section-toggle .toggle-btn:hover{background:var(--surface-2);color:var(--text)}.ssh-config-section{margin-top:12px;padding:12px;background:var(--surface-1);border:1px solid var(--border);border-radius:8px}.ssh-config-section .form-row{margin-bottom:10px}.ssh-key-type-selector{display:flex;gap:8px;margin-bottom:12px}.ssh-key-type-option{flex:1;justify-content:center;border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);font-weight:500}.ssh-key-type-option:hover{border-color:#dd704f73;background:#dd704f14;color:var(--text)}.ssh-key-type-option.active,.ssh-key-type-option.active:hover{border-color:#dd704f;background:#dd704f;color:#fff;font-weight:700}.ssh-key-type-option:focus-visible{outline:2px solid rgba(221,112,79,.4);outline-offset:2px}.form-row-inline{display:flex;gap:12px}.form-row-inline .form-field{flex:1;display:flex;flex-direction:column;gap:4px}.ssh-test-ok{color:#1e8e3e;font-size:12px;margin-left:8px}.ssh-test-fail{color:#d93025;font-size:12px;margin-left:8px}.remote-badge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:4px;background:#1a5a8a;color:#fff;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-left:6px}.chat-layout-wrapper{display:flex;flex-direction:row;height:100%;width:100%;overflow:hidden}.chat-layout-wrapper>.chat-view{flex:1;min-width:0;min-height:0}.chat-side-panel{width:600px;max-width:45vw;border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;flex-shrink:0;animation:slideInRight .25s ease-out;position:relative;z-index:10}@media(max-width:768px){.chat-side-panel{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;max-width:100%;z-index:1000}}.plan-document-header-row{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%}.plan-document-card.expanded{height:100%;padding:0;border-top:none;border-radius:0;background:transparent;display:flex;flex-direction:column}.plan-document-card.expanded .plan-document-header-row{padding:16px 20px;border-bottom:1px solid var(--border);background:var(--sidebar-bg)}.plan-document-card.expanded .plan-document-preview{flex:1;max-height:none;border:none;border-radius:0}.plan-document-comment-panel.inline-comment-panel{position:absolute;right:16px;width:320px;z-index:20;box-shadow:0 4px 20px #0000004d;border:1px solid var(--accent);background:var(--surface)}.chat-messages-container{position:relative;flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.scroll-down-btn{position:absolute;bottom:20px;right:24px;width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--surface) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid color-mix(in srgb,var(--border) 40%,transparent);box-shadow:0 4px 16px #0000001a;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;z-index:40;transition:all .25s cubic-bezier(.175,.885,.32,1.275);animation:scrollBtnEntrance .3s cubic-bezier(.34,1.56,.64,1)}.scroll-down-btn:hover{transform:translateY(-3px) scale(1.08);background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 8px 20px #5b5fc74d}.scroll-down-btn:active{transform:translateY(0) scale(.95);transition-duration:.1s}@keyframes scrollBtnEntrance{0%{opacity:0;transform:translateY(20px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-side-panel.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw!important;max-width:100vw!important;height:100vh!important;z-index:2000;border-left:none;border-radius:0;background:var(--surface);animation:slideUpFullscreen .35s cubic-bezier(.2,.8,.2,1)}@keyframes slideUpFullscreen{0%{opacity:.85;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-side-panel.fullscreen .plan-document-card{height:100%;border-radius:0;max-width:100%;width:100%}.chat-side-panel.fullscreen .plan-document-readable{max-width:960px;margin:0 auto;width:100%}.canvas-sandbox-panel{background:var(--bg);display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.canvas-sandbox-panel.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw!important;max-width:100vw!important;height:100vh!important;z-index:2000;border-left:none;animation:slideUpFullscreen .35s cubic-bezier(.2,.8,.2,1)}.canvas-sandbox-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;gap:8px}.canvas-sandbox-title{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-sandbox-title svg{flex-shrink:0;color:var(--accent)}.canvas-sandbox-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.canvas-sandbox-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s}.canvas-sandbox-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--border)}.canvas-sandbox-close:hover{color:var(--danger);border-color:var(--danger)}.canvas-sandbox-body{flex:1;position:relative;min-height:0;overflow:hidden}.canvas-sandbox-iframe{width:100%;height:100%;border:none;display:block;background:#fff}.canvas-sandbox-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--bg);color:var(--text-muted);font-size:.85rem;z-index:5}.canvas-sandbox-spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.canvas-sandbox-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg);color:var(--danger);font-size:.85rem;z-index:5}@keyframes spin{to{transform:rotate(360deg)}}.tool-group-icon.review-icon{background:#10b981;border-color:#10b9814d;display:flex;align-items:center;justify-content:center;color:#fff!important}.tool-group-icon.review-icon:after{display:none}.review-group .tool-calls-group-summary{cursor:pointer;transition:background .15s ease}.review-group .tool-calls-group-summary:hover{background:#10b9810d}.msg-body table,.plan-document-readable table{display:block;width:100%;min-width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;border-spacing:0;margin:1rem 0;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface),transparent 20%);font-size:.82rem;box-shadow:none}.msg-body table thead,.msg-body table tbody,.msg-body table tr,.plan-document-readable table thead,.plan-document-readable table tbody,.plan-document-readable table tr{display:table;width:100%;table-layout:auto}.msg-body thead th,.plan-document-readable thead th{background:color-mix(in srgb,var(--border),transparent 55%);color:var(--text);font-weight:700;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.msg-body tbody td,.plan-document-readable tbody td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--border),transparent 65%);color:var(--text-secondary);vertical-align:top;line-height:1.45;transition:background .2s ease,color .2s ease;word-break:normal;overflow-wrap:anywhere;white-space:normal}.msg-body tbody td:last-child,.plan-document-readable tbody td:last-child{white-space:normal;min-width:160px}.msg-body tbody td:first-child,.plan-document-readable tbody td:first-child{white-space:nowrap;font-weight:600;color:var(--text)}.msg-body tbody tr:nth-child(2n),.plan-document-readable tbody tr:nth-child(2n){background:color-mix(in srgb,var(--border),transparent 93%)}.msg-body tbody tr:last-child td,.plan-document-readable tbody tr:last-child td{border-bottom:none}.msg-body tbody tr:hover td,.plan-document-readable tbody tr:hover td{background:color-mix(in srgb,var(--accent-light),transparent 88%);color:var(--text)}.msg-body td code,.plan-document-readable td code{background:color-mix(in srgb,var(--border),transparent 15%);padding:3px 7px;border-radius:6px;font-family:var(--font-mono, monospace);font-size:.82em;color:var(--text);border:1px solid color-mix(in srgb,var(--border),transparent 60%);white-space:nowrap}.model-dropdown.unified-selector{width:420px!important;max-width:90vw;border-radius:12px;background:color-mix(in srgb,var(--surface) 98%,var(--bg-outer));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:0 8px 32px #00000038,0 2px 6px #00000014;overflow:hidden}.model-list{padding:6px 0;max-height:380px;overflow-y:auto}.model-item-v2{display:flex!important;align-items:center;justify-content:space-between;padding:8px 16px!important;width:100%;border:0;background:transparent;text-align:left;cursor:pointer;gap:12px;transition:all .15s ease;border-left:3px solid transparent}.model-item-v2:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)!important}.model-item-v2.active{background:color-mix(in srgb,var(--accent) 8%,transparent)!important;border-left:3px solid var(--accent)}.model-item-left{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.model-item-row1{display:flex;align-items:center;gap:8px;min-width:0}.model-option-name-v2{font-size:13.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-option-name-v2.text-accent{color:var(--accent)}.model-item-row2{font-size:10px;color:var(--text-tertiary);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono, ui-monospace, monospace)}.model-tag-bar{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.model-badge{font-size:8.5px;font-weight:750;letter-spacing:.02em;padding:2px 5px;border-radius:4px;text-transform:uppercase;line-height:1}.badge-size{background:color-mix(in srgb,#5856d6 15%,transparent);color:#9b9bff;border:1px solid color-mix(in srgb,#5856d6 30%,transparent)}.badge-perf{background:color-mix(in srgb,#ff9500 15%,transparent);color:#ffb74d;border:1px solid color-mix(in srgb,#ff9500 30%,transparent)}.badge-capability{background:color-mix(in srgb,#30d158 12%,transparent);color:#34c759;border:1px solid color-mix(in srgb,#30d158 25%,transparent)}.badge-recommended{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.badge-misc{background:color-mix(in srgb,#5ac8fa 12%,transparent);color:#64d2ff;border:1px solid color-mix(in srgb,#5ac8fa 25%,transparent)}.model-checkmark{color:var(--accent);flex-shrink:0}.ckpt-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:13px}.ckpt-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0;gap:8px}.ckpt-filters{display:flex;gap:2px;background:color-mix(in srgb,var(--border) 45%,transparent);border-radius:7px;padding:2px}.ckpt-filter{background:none;border:none;padding:4px 11px;font-size:11px;font-weight:600;color:var(--text-secondary);cursor:pointer;border-radius:5px;transition:all .15s ease;letter-spacing:.01em}.ckpt-filter.active{background:var(--surface);color:var(--text);box-shadow:0 1px 4px #0000001a}[data-theme=dark] .ckpt-filter.active{background:#252530;color:#f0f0f5}.ckpt-actions{display:flex;gap:2px}.ckpt-icon-btn{background:none;border:none;padding:5px 6px;color:var(--text-tertiary);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.ckpt-icon-btn:hover{background:color-mix(in srgb,var(--border) 60%,transparent);color:var(--text)}.ckpt-prune-btn:hover{color:#f87171!important;background:color-mix(in srgb,#ef4444 10%,transparent)!important}.ckpt-loading{display:flex;align-items:center;justify-content:center;padding:48px 0}.ckpt-loading-dots{display:flex;gap:5px}.ckpt-loading-dots span{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);animation:ckptDotPulse 1.2s infinite ease-in-out}.ckpt-loading-dots span:nth-child(2){animation-delay:.2s}.ckpt-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes ckptDotPulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.ckpt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-tertiary);gap:10px;text-align:center}.ckpt-empty p{margin:0;font-weight:600;font-size:14px;color:var(--text-secondary)}.ckpt-empty span{font-size:12px;color:var(--text-tertiary);max-width:220px;line-height:1.5}.ckpt-list{flex:1;overflow-y:auto;padding:6px 0 12px}.ckpt-batch-group{margin-bottom:2px;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.ckpt-batch-header{display:flex;align-items:center;gap:6px;width:100%;padding:7px 12px 7px 10px;background:none;border:none;cursor:pointer;text-align:left;background:var(--surface);transition:background .12s}.ckpt-batch-header:hover{background:color-mix(in srgb,var(--border) 25%,var(--surface))}[data-theme=dark] .ckpt-batch-header{background:#0e0e12}[data-theme=dark] .ckpt-batch-header:hover{background:#141420}.ckpt-batch-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}.ckpt-batch-title-row{display:flex;align-items:center;gap:6px}.ckpt-batch-title{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ckpt-tag{font-size:9px;font-weight:700;letter-spacing:.05em;padding:2px 6px;border-radius:4px;border:1px solid transparent;flex-shrink:0;line-height:1}.ckpt-batch-meta{display:flex;align-items:center;gap:5px;font-size:10.5px;color:var(--text-tertiary);margin-top:2px}.ckpt-dot-sep{width:3px;height:3px;border-radius:50%;background:var(--text-tertiary);opacity:.4;flex-shrink:0}.ckpt-batch-files{padding:4px 0 8px 18px}.ckpt-file-item-wrapper{margin-bottom:2px}.ckpt-file-item{display:flex;align-items:center;padding:5px 12px 5px 8px;gap:8px;border-radius:6px;cursor:pointer;transition:background .12s ease}.ckpt-file-item:hover{background:color-mix(in srgb,var(--border) 20%,transparent)}.ckpt-file-item.ckpt-viewing{background:color-mix(in srgb,#34d399 5%,transparent)}[data-theme=dark] .ckpt-file-item:hover{background:#ffffff08}[data-theme=dark] .ckpt-file-item.ckpt-viewing{background:#34d3990d}.ckpt-file-icon-wrapper{color:var(--text-tertiary);display:flex;align-items:center;flex-shrink:0}.ckpt-file-details{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}.ckpt-file-size{font-size:10px;color:var(--text-tertiary)}.ckpt-file-actions{display:flex;gap:2px;opacity:0;transition:opacity .12s ease;flex-shrink:0}.ckpt-file-item:hover .ckpt-file-actions{opacity:1}.ckpt-action-btn{background:none;border:none;width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease;color:var(--text-tertiary)}.ckpt-restore-btn:hover{background:color-mix(in srgb,#34d399 14%,transparent);color:#34d399}.ckpt-delete-btn:hover{background:color-mix(in srgb,#ef4444 14%,transparent);color:#f87171}.ckpt-spinner{display:inline-block;width:12px;height:12px;border:2px solid color-mix(in srgb,#34d399 30%,transparent);border-top-color:#34d399;border-radius:50%;animation:ckptSpin .6s linear infinite}@keyframes ckptSpin{to{transform:rotate(360deg)}}.ckpt-diff-panel{margin:0 12px 8px 46px;border:1px solid var(--border);border-radius:8px;overflow:hidden;animation:ckptSlideDown .18s ease-out}[data-theme=dark] .ckpt-diff-panel{border-color:#252530}@keyframes ckptSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ckpt-diff-loading{display:flex;align-items:center;justify-content:center;padding:20px}.ckpt-diff-deleted-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:color-mix(in srgb,#ef4444 8%,transparent);border-bottom:1px solid color-mix(in srgb,#ef4444 15%,transparent);font-size:11.5px;font-weight:600;color:#f87171}.ckpt-diff-error{padding:20px;text-align:center;color:var(--text-tertiary);font-size:12px}.ckpt-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:10px 18px;border-radius:10px;background:#18181e;color:#f0f0f5;font-size:13px;font-weight:500;box-shadow:0 8px 32px #00000047;z-index:9999;animation:ckptToastIn .28s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(52,211,153,.25);white-space:nowrap}.ckpt-toast.ckpt-toast-err{border-color:#ef44444d;background:#1e1218;color:#fca5a5}@keyframes ckptToastIn{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.92)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.ckpt-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.ckpt-filters{display:flex;gap:2px;background:color-mix(in srgb,var(--border) 40%,transparent);border-radius:6px;padding:2px}.ckpt-filter{background:none;border:none;padding:4px 10px;font-size:11px;font-weight:600;color:var(--text-secondary);cursor:pointer;border-radius:5px;transition:all .15s ease}.ckpt-filter:hover{color:var(--text)}.ckpt-filter.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #00000014}[data-theme=dark] .ckpt-filter.active{background:#2a2a35;color:#f0f0f5}.ckpt-actions{display:flex;gap:4px}.ckpt-icon-btn{background:none;border:none;padding:5px;color:var(--text-secondary);cursor:pointer;border-radius:5px;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.ckpt-icon-btn:hover{background:color-mix(in srgb,var(--border) 50%,transparent);color:var(--text)}.ckpt-loading,.ckpt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-secondary);gap:10px;text-align:center}.ckpt-empty p{margin:0;font-weight:600;font-size:14px;color:var(--text)}.ckpt-empty span{font-size:12px;color:var(--text-tertiary);max-width:220px;line-height:1.4}.ckpt-list{flex:1;overflow-y:auto;padding:8px 0}.ckpt-file-group{margin-bottom:4px}.ckpt-file-header{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:11px;font-weight:700;color:var(--text-secondary);letter-spacing:.02em;position:sticky;top:0;background:var(--surface);z-index:2}[data-theme=dark] .ckpt-file-header{background:#0e0e12;color:#a0a0b0}.ckpt-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.ckpt-file-count{padding:1px 6px;border-radius:99px;background:color-mix(in srgb,var(--border) 60%,transparent);font-size:10px;font-weight:700;color:var(--text-secondary)}.ckpt-item{display:flex;align-items:center;padding:6px 14px 6px 22px;gap:4px;transition:background .12s ease;cursor:default}.ckpt-item:hover{background:color-mix(in srgb,var(--border) 25%,transparent)}.ckpt-item.ckpt-viewing{background:color-mix(in srgb,var(--accent) 6%,transparent)}[data-theme=dark] .ckpt-item:hover{background:#1a1a24}[data-theme=dark] .ckpt-item.ckpt-viewing{background:#34d3990f}.ckpt-item-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0;cursor:pointer}.ckpt-trigger-icon{font-size:14px;width:20px;text-align:center;flex-shrink:0;opacity:.5}.ckpt-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ckpt-item-label{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.ckpt-item-meta{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--text-tertiary);white-space:nowrap}.ckpt-trigger-tag{padding:1px 5px;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.ckpt-trigger-auto{background:color-mix(in srgb,#34d399 12%,transparent);color:#34d399;border:1px solid color-mix(in srgb,#34d399 20%,transparent)}.ckpt-trigger-manual{background:color-mix(in srgb,#60a5fa 12%,transparent);color:#60a5fa;border:1px solid color-mix(in srgb,#60a5fa 20%,transparent)}.ckpt-trigger-pre_restore{background:color-mix(in srgb,#fbbf24 12%,transparent);color:#fbbf24;border:1px solid color-mix(in srgb,#fbbf24 20%,transparent)}.ckpt-trigger-pre_agent{background:color-mix(in srgb,#a78bfa 12%,transparent);color:#a78bfa;border:1px solid color-mix(in srgb,#a78bfa 20%,transparent)}.ckpt-item-actions{display:flex;gap:2px;opacity:0;transition:opacity .12s ease}.ckpt-item:hover .ckpt-item-actions{opacity:1}.ckpt-action-btn{background:none;border:none;width:24px;height:24px;border-radius:5px;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease;color:var(--text-secondary)}.ckpt-restore-btn:hover{background:color-mix(in srgb,#34d399 15%,transparent);color:#34d399}.ckpt-delete-btn:hover{background:color-mix(in srgb,#ef4444 15%,transparent);color:#ef4444}.ckpt-action-btn:disabled{opacity:.4;cursor:not-allowed}.ckpt-diff-panel{margin:0 14px 8px 22px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface);animation:ckptDiffSlide .2s ease-out}[data-theme=dark] .ckpt-diff-panel{background:#0c0c10;border-color:#2a2a35}@keyframes ckptDiffSlide{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.ckpt-diff-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;color:var(--text-secondary)}[data-theme=dark] .ckpt-diff-header{border-color:#2a2a35}.ckpt-diff-deleted{padding:1px 6px;border-radius:4px;background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444;font-size:10px;font-weight:700}.ckpt-diff-content{max-height:320px;overflow-y:auto;font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);font-size:11.5px;line-height:1.55}.ckpt-diff-line{display:flex;padding:0 12px;min-height:20px}.ckpt-diff-ln{width:36px;flex-shrink:0;text-align:right;padding-right:10px;color:var(--text-tertiary);opacity:.5;-webkit-user-select:none;user-select:none}.ckpt-diff-prefix{width:14px;flex-shrink:0;text-align:center;-webkit-user-select:none;user-select:none;font-weight:700}.ckpt-diff-text{flex:1;min-width:0;white-space:pre;overflow-x:auto}.ckpt-diff-same{color:var(--text-secondary);opacity:.45}.ckpt-diff-add{background:color-mix(in srgb,#34d399 8%,transparent);color:#34d399}.ckpt-diff-add .ckpt-diff-prefix{color:#34d399}.ckpt-diff-remove{background:color-mix(in srgb,#ef4444 8%,transparent);color:#f87171}.ckpt-diff-remove .ckpt-diff-prefix{color:#f87171}.ckpt-diff-loading,.ckpt-diff-error{padding:20px;text-align:center;color:var(--text-secondary);font-size:12px}.ckpt-diff-error{color:#ef4444}.ckpt-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:10px;background:#1a1a24;color:#f0f0f5;font-size:13px;font-weight:500;box-shadow:0 8px 32px #0000004d;z-index:9999;animation:ckptToastIn .3s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(52,211,153,.2)}@keyframes ckptToastIn{0%{opacity:0;transform:translate(-50%) translateY(12px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.ckpt-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 7px 1px 5px;border-radius:99px;background:color-mix(in srgb,#34d399 10%,transparent);color:#34d399;font-size:9.5px;font-weight:700;letter-spacing:.03em;border:1px solid color-mix(in srgb,#34d399 18%,transparent);margin-left:4px;animation:ckptBadgeIn .35s cubic-bezier(.34,1.56,.64,1);flex-shrink:0}.ckpt-badge svg{opacity:.7}@keyframes ckptBadgeIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.diff-view{font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);font-size:11.5px;line-height:1.55}.diff-file-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 4%,var(--surface));position:sticky;top:0;z-index:2}[data-theme=dark] .diff-file-header{background:#0c0c10;border-color:#2a2a35}.diff-file-path{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;color:var(--text-secondary)}.diff-file-stats{display:flex;gap:6px;flex-shrink:0}.diff-stat-add{font-size:11px;font-weight:700;color:#34d399}.diff-stat-remove{font-size:11px;font-weight:700;color:#f87171}.diff-content{max-height:400px;overflow-y:auto}.diff-line{display:flex;padding:0 8px;min-height:20px;align-items:stretch}.diff-ln-old,.diff-ln-new{width:32px;flex-shrink:0;text-align:right;padding-right:6px;color:var(--text-tertiary);opacity:.45;-webkit-user-select:none;user-select:none;font-size:10.5px}.diff-prefix{width:14px;flex-shrink:0;text-align:center;-webkit-user-select:none;user-select:none;font-weight:700;font-size:11px}.diff-text{flex:1;min-width:0;white-space:pre;overflow-x:auto}.diff-same{color:var(--text-secondary);opacity:.5}.diff-add{background:color-mix(in srgb,#34d399 8%,transparent)}.diff-add .diff-prefix,.diff-add .diff-text{color:#34d399}.diff-remove{background:color-mix(in srgb,#ef4444 8%,transparent)}.diff-remove .diff-prefix,.diff-remove .diff-text{color:#f87171}.diff-text kw{color:var(--accent);font-weight:600}.diff-changes-list{display:flex;flex-direction:column;gap:2px;padding:4px 0}.diff-change-item{border-bottom:1px solid var(--border)}.diff-change-item:last-child{border-bottom:none}.diff-change-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;text-align:left;font-size:13px;color:var(--text);background:none;border:none;cursor:pointer;transition:background .12s ease}.diff-change-header:hover{background:var(--hover-bg)}.diff-chevron{flex-shrink:0;color:var(--text-tertiary);transition:transform .15s ease}.diff-chevron.expanded{transform:rotate(90deg)}.diff-change-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.diff-change-checkpoints{font-size:10px;color:var(--text-tertiary);padding:1px 5px;border-radius:4px;background:color-mix(in srgb,var(--border) 40%,transparent);flex-shrink:0}.diff-change-deleted{font-size:10px;font-weight:700;color:#ef4444;padding:1px 5px;border-radius:4px;background:color-mix(in srgb,#ef4444 12%,transparent);flex-shrink:0}.diff-change-item .diff-view{border-top:1px solid var(--border)}.wh-panel{display:flex;flex-direction:column;gap:16px;max-width:720px;margin:0 auto;width:100%}.wh-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.wh-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.wh-header-info h2{font-size:16px;font-weight:600;margin:0;color:var(--text);letter-spacing:-.01em}.wh-header-info p{font-size:13px;color:var(--text-secondary);margin:4px 0 0;line-height:1.4}.wh-create-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;border-radius:8px;background:#3b82f6;color:#fff;border:none;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.wh-create-btn:hover{background:#2563eb}.wh-loading{padding:40px;text-align:center;color:var(--text-secondary);font-size:13px}.wh-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;text-align:center;border:1px dashed var(--border);border-radius:12px;background:var(--surface)}.wh-empty p{font-weight:600;font-size:15px;color:var(--text);margin:0}.wh-empty span{font-size:13px;color:var(--text-tertiary);max-width:360px;line-height:1.5}.wh-empty .wh-create-btn{margin-top:8px}.wh-list{display:flex;flex-direction:column;gap:8px}.wh-card{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:16px;transition:border-color .15s ease,box-shadow .15s ease}.wh-card:hover{border-color:var(--text-tertiary);box-shadow:0 1px 6px #0000000a}.wh-card.wh-disabled{opacity:.45}.wh-card-body{display:flex;flex-direction:column;gap:10px}.wh-card-main{display:flex;align-items:flex-start;gap:12px}.wh-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.wh-card-title-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.wh-card-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wh-card-desc{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wh-card-meta{display:flex;align-items:center;gap:6px}.wh-provider-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:5px;font-size:10px;font-weight:600;color:var(--provider-color);background:var(--provider-bg);border:1px solid var(--provider-border)}.wh-locale-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.04em;color:#6366f1;background:#6366f114;border:1px solid #6366f126;text-transform:uppercase}.wh-status-indicator{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:5px;font-size:10px;font-weight:500;color:var(--text-tertiary);background:var(--surface-2)}.wh-status-indicator.wh-status-success{color:#16a34a;background:#16a34a14}.wh-status-indicator.wh-status-failed{color:#dc2626;background:#dc262614}.wh-status-indicator.wh-status-running{color:#d97706;background:#d9770614}.wh-status-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.7}.wh-url-row{display:flex;align-items:center;gap:6px}.wh-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;padding:6px 10px;border-radius:6px;background:var(--bg);color:var(--text-secondary);border:1px solid var(--border);font-family:var(--font-mono)}.wh-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--text-secondary);border:1px solid var(--border);background:transparent;flex-shrink:0;cursor:pointer;transition:all .12s ease}.wh-icon-btn:hover{background:var(--hover-bg);color:var(--text)}.wh-card-stats{display:flex;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--text-tertiary)}.wh-error-badge{color:#dc2626;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px 6px;border-radius:4px;background:#dc26260f}.wh-card-actions{display:flex;gap:6px;padding-top:10px;border-top:1px solid var(--border)}.wh-action-btn{padding:5px 12px;font-size:11px;font-weight:500;border-radius:6px;color:var(--text-secondary);background:transparent;border:1px solid var(--border);cursor:pointer;transition:all .12s ease}.wh-action-btn:hover{background:var(--hover-bg);color:var(--text)}.wh-action-btn:disabled{opacity:.5;cursor:not-allowed}.wh-action-test:hover{background:#3b82f614;color:#3b82f6;border-color:#3b82f633}.wh-action-toggle:hover{background:#d9770614;color:#d97706;border-color:#d9770633}.wh-action-delete:hover{background:#dc262614;color:#dc2626;border-color:#dc262633}.wh-payload-details{margin-top:8px;font-size:11px}.wh-payload-details summary{cursor:pointer;color:var(--text-tertiary);font-weight:500;font-size:11px;padding:4px 0;-webkit-user-select:none;user-select:none}.wh-payload-details pre{margin-top:6px;padding:10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:10px;max-height:160px;overflow:auto;font-family:var(--font-mono);color:var(--text-secondary);line-height:1.5}.wh-format-details{margin-top:4px;border:1px solid var(--border);border-radius:7px;overflow:hidden}.wh-format-summary{display:flex;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg)}.wh-format-summary svg{flex-shrink:0;opacity:.6}.wh-format-body{padding:10px 12px 12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.wh-format-docs a{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:#3b82f6;text-decoration:none;padding:4px 8px;border-radius:5px;background:#3b82f60f;transition:background .12s ease}.wh-format-docs a:hover{background:#3b82f61f}.wh-format-section{display:flex;flex-direction:column;gap:6px}.wh-format-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.wh-format-json{padding:10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:10px;font-family:var(--font-mono);color:var(--text-secondary);line-height:1.5;overflow:auto;max-height:200px;white-space:pre}.wh-preview-text{font-size:11px;color:var(--text);white-space:pre-wrap;max-height:240px}.wh-event-chips{display:flex;flex-wrap:wrap;gap:4px}.wh-event-chip{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:500;background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border)}.wh-template-table{display:flex;flex-direction:column;gap:4px}.wh-template-row{display:flex;align-items:baseline;gap:8px;padding:3px 0}.wh-template-key{font-family:var(--font-mono);font-size:11px;font-weight:600;color:#3b82f6;min-width:100px;flex-shrink:0}.wh-template-desc{font-size:11px;color:var(--text-secondary)}.wh-test-panel{margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--bg);display:flex;flex-direction:column;gap:8px}.wh-test-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.wh-test-textarea{width:100%;resize:vertical;min-height:80px;padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:11px;font-family:var(--font-mono);line-height:1.5;box-sizing:border-box}.wh-test-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f;outline:none}.wh-test-actions{display:flex;align-items:center;gap:10px}.wh-test-result{font-size:11px;font-weight:500;padding:4px 8px;border-radius:4px;background:#16a34a14;color:#16a34a}.wh-form{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:20px}.wh-form-header{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--text);margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--border)}.wh-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wh-field{display:flex;flex-direction:column;gap:6px}.wh-field-wide{grid-column:1 / -1}.wh-label{font-size:13px;font-weight:500;color:var(--text)}.wh-required{color:#dc2626;font-weight:600}.wh-input{width:100%;padding:8px 12px;border-radius:7px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;line-height:1.4;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}.wh-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f;outline:none}.wh-input-mono{font-family:var(--font-mono);font-size:12px}.wh-select{width:100%;padding:8px 12px;border-radius:7px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;cursor:pointer;box-sizing:border-box}.wh-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f;outline:none}.wh-textarea{width:100%;resize:vertical;min-height:72px;padding:10px 12px;border-radius:7px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;font-family:var(--font-mono);line-height:1.5;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}.wh-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f;outline:none}.wh-hint{font-size:11px;color:var(--text-tertiary);line-height:1.4}.wh-provider-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:5px}.wh-provider-pill{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:6px;border:1px solid var(--border);background:var(--bg);cursor:pointer;transition:all .12s ease;min-width:0}.wh-provider-pill:hover{border-color:var(--p-color);background:var(--p-bg)}.wh-provider-pill-selected{border-color:var(--p-color)!important;background:var(--p-bg)!important;box-shadow:0 0 0 1px var(--p-color)}.wh-pill-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.wh-pill-label{font-size:11px;font-weight:500;color:var(--text);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wh-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 0;-webkit-user-select:none;user-select:none}.wh-checkbox-label input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;cursor:pointer;accent-color:#3B82F6}.wh-checkbox-label span{font-size:13px;font-weight:500;color:var(--text);line-height:1}.wh-form-error{padding:10px 14px;background:#dc26260f;color:#dc2626;border-radius:7px;font-size:13px;margin-top:12px;border:1px solid rgba(220,38,38,.12)}.wh-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.wh-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .12s ease;border:none}.wh-btn:disabled{opacity:.5;cursor:not-allowed}.wh-btn-primary{background:#3b82f6;color:#fff}.wh-btn-primary:hover:not(:disabled){background:#2563eb}.wh-btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.wh-btn-secondary:hover{background:var(--hover-bg);color:var(--text)}.wh-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:8px;background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:500;box-shadow:0 4px 20px #0000001f;z-index:100;animation:wh-toast-in .2s ease-out}@keyframes wh-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.ml-error{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--error-bg);color:var(--error-text);font-size:.8rem;margin:0 32px;border-radius:6px}.ml-error button{background:none;border:none;color:var(--error-text);cursor:pointer;font-size:1rem;padding:0}.ml-empty{text-align:center;padding:40px 0;color:var(--text-tertiary);font-size:.85rem}.ml-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:ml-spin .6s linear infinite;margin-right:6px;vertical-align:middle}@keyframes ml-spin{to{transform:rotate(360deg)}}.ml-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-left:6px}.ml-dot-pulse{background:#f59e0b;animation:ml-pulse 1.5s infinite}@keyframes ml-pulse{0%,to{opacity:1}50%{opacity:.4}}.ml-dot-sm{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.ml-status-pending{background:var(--text-tertiary)}.ml-status-running{background:#f59e0b;animation:ml-pulse 1.5s infinite}.ml-status-completed{background:#22c55e}.ml-status-failed{background:#ef4444}.ml-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#f59e0b;color:#000;font-size:.65rem;font-weight:700;margin-left:5px;line-height:1}.ml-badge-ok{font-size:.65rem;padding:1px 6px;border-radius:4px;background:var(--success-bg);color:var(--success-text);font-weight:600}.ml-primary-btn{padding:6px 14px;border:none;border-radius:6px;background:var(--accent);color:var(--bg);font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.ml-primary-btn:hover{opacity:.9}.ml-primary-btn:disabled{opacity:.4;cursor:not-allowed}.ml-primary-btn.sm{padding:4px 10px;font-size:.75rem}.ml-ghost-btn{padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:background .1s}.ml-ghost-btn:hover{background:var(--hover-bg)}.ml-ghost-btn.sm{padding:4px 10px;font-size:.75rem}.ml-danger-text{color:var(--error-text);border-color:#ef444433}.ml-danger-text:hover{background:var(--error-bg)}.ml-link{background:none;border:none;color:var(--accent);font-size:.75rem;cursor:pointer;padding:0}.ml-link:hover{text-decoration:underline}.ml-select{padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.8rem;cursor:pointer}.ml-overview{display:flex;flex-direction:column;gap:20px}.ml-top-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.ml-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.ml-stat{padding:14px 16px;border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:2px}.ml-stat-val{font-size:1.4rem;font-weight:700;line-height:1.1;color:var(--text)}.ml-stat-lbl{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:var(--text-tertiary)}.ml-stat-sub{font-size:.7rem;color:var(--text-tertiary)}.ml-section{border-top:1px solid var(--border);padding-top:16px}.ml-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:.8rem;font-weight:600;color:var(--text)}.ml-cards{display:flex;flex-direction:column;gap:6px}.ml-card{padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.ml-card-flagged{border-left:3px solid #f59e0b}.ml-card-top{display:flex;align-items:center;gap:8px}.ml-card-top.clickable{cursor:pointer;border-radius:8px;margin:-10px -14px;padding:10px 14px;transition:background .1s}.ml-card-top.clickable:hover{background:var(--hover-bg)}.ml-card-title{font-size:.82rem;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-card-status{font-size:.7rem;font-weight:600;text-transform:uppercase;flex-shrink:0}.ml-card-desc{font-size:.78rem;color:var(--text-secondary);margin:6px 0 0 16px;line-height:1.4}.ml-card-meta{display:flex;gap:10px;margin-top:6px;padding-left:16px;font-size:.7rem;color:var(--text-tertiary)}.ml-card-meta-inline{font-size:.7rem;color:var(--text-tertiary)}.ml-card-actions{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.ml-resolved{display:block;margin-top:6px;font-size:.72rem;color:var(--text-tertiary);font-style:italic}.ml-code-sm{font-size:.75rem;line-height:1.4;color:var(--text-secondary);background:var(--surface-2);padding:8px 10px;border-radius:6px;margin-top:8px;white-space:pre-wrap;word-break:break-word;max-height:150px;overflow-y:auto}.ml-chev{transition:transform .15s;color:var(--text-tertiary);flex-shrink:0}.ml-chev.open{transform:rotate(180deg)}.ml-detail{padding:12px 14px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 8px 8px}.ml-detail-section{margin-bottom:12px}.ml-detail-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:8px}.ml-detail-footer{display:flex;justify-content:flex-end;margin-top:8px}.ml-reviewers{display:flex;gap:8px;flex-wrap:wrap}.ml-reviewer{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.75rem}.ml-reviewer.failed{border-color:#ef44444d}.ml-reviewer-name{font-weight:600;text-transform:capitalize}.ml-reviewer-model{color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-reviewer-err{color:var(--error-text);font-size:.7rem}.ml-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;font-size:.68rem;font-weight:600;text-transform:capitalize;flex-shrink:0}.ml-status-badge.completed{background:#22c55e26;color:#22c55e}.ml-status-badge.running{background:#f59e0b26;color:#f59e0b}.ml-status-badge.failed{background:#ef444426;color:#ef4444}.ml-status-badge.pending{background:#a1a1aa26;color:var(--text-tertiary)}.ml-status-badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.ml-status-badge.running .ml-status-badge-dot{animation:ml-pulse 1.5s infinite}.ml-review-summary{display:flex;align-items:center;gap:14px;margin-top:8px;padding-left:16px;font-size:.72rem;color:var(--text-secondary);flex-wrap:wrap}.ml-review-summary-item{display:inline-flex;align-items:center;gap:4px}.ml-review-summary-label{color:var(--text-tertiary)}.ml-severity-group{display:inline-flex;align-items:center;gap:6px}.ml-sev-item{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:600}.ml-sev-dot{width:8px;height:8px;border-radius:50%}.ml-consensus-bar{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--text-secondary)}.ml-consensus-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden;max-width:120px}.ml-consensus-fill{height:100%;border-radius:2px;background:#22c55e;transition:width .3s}.ml-reviewer-card{display:flex;flex-direction:column;gap:4px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);min-width:160px}.ml-reviewer-card.failed{border-color:#ef44444d}.ml-reviewer-card-header{display:flex;align-items:center;gap:6px}.ml-reviewer-card-meta{display:flex;align-items:center;gap:10px;font-size:.68rem;color:var(--text-tertiary);padding-left:14px}.ml-cfg{display:flex;flex-direction:column;gap:12px}.ml-cfg-group{padding:14px 16px;border:1px solid var(--border);border-radius:8px}.ml-cfg-group-danger{border-color:#ef444433}.ml-slots{display:flex;flex-direction:column;gap:8px;margin-top:4px}.ml-slot{display:flex;align-items:center;gap:8px}.ml-slot-num{font-size:.75rem;font-weight:600;color:var(--text-tertiary);min-width:24px}.ml-slot .ml-select{flex:1;min-width:0}.ml-cfg-head{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:12px}.ml-cfg-field{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.ml-cfg-lbl{font-size:.8rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.ml-cfg-hint{font-size:.72rem;color:var(--text-tertiary);margin-top:2px;margin-bottom:8px;line-height:1.3}.ml-cfg-warn{color:var(--warning-text);font-weight:500}.ml-presets{display:flex;gap:3px;flex-wrap:wrap}.ml-preset{padding:3px 9px;border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all .1s}.ml-preset:hover{background:var(--hover-bg)}.ml-preset.on{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}.ml-stepper{display:flex;align-items:center;gap:4px}.ml-stepper button{width:26px;height:26px;border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--text);font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.ml-stepper button:hover{background:var(--hover-bg)}.ml-stepper span{min-width:20px;text-align:center;font-size:.82rem;font-weight:600}.ml-slider-wrap{display:flex;align-items:center;gap:10px;flex:1;max-width:260px}.ml-slider{flex:1;accent-color:var(--accent)}.ml-slider-val{font-size:.78rem;font-weight:600;color:var(--text-secondary);min-width:32px}.ml-toggle-row{display:flex;align-items:center;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.ml-toggle{width:36px;height:20px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;position:relative;flex-shrink:0;padding:0;transition:background .15s,border-color .15s}.ml-toggle.on{background:var(--accent);border-color:var(--accent)}.ml-toggle-dot{display:block;width:14px;height:14px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:transform .15s;box-shadow:0 1px 2px #0000001f}.ml-toggle.on .ml-toggle-dot{transform:translate(16px)}.ml-toggle-text{font-size:.78rem;color:var(--text-secondary)}.ml-kf{display:flex;flex-direction:column;gap:8px}.ml-kf-error{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--error-bg);color:var(--error-text);font-size:.75rem;border-radius:5px}.ml-kf-error-close{background:none;border:none;color:var(--error-text);cursor:pointer;font-size:.9rem;padding:0 2px;line-height:1}.ml-kf-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.ml-kf-path-info{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.ml-kf-path-code{font-size:.78rem;color:var(--text-secondary);background:var(--surface-2);padding:3px 8px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-kf-status{font-size:.6rem;font-weight:700;padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.ml-kf-ok{background:var(--success-bg);color:var(--success-text)}.ml-kf-missing{background:var(--warning-bg);color:var(--warning-text)}.ml-kf-btns{display:flex;gap:4px;flex-shrink:0}.ml-kf-explorer{border:1px solid var(--border);border-radius:6px;overflow:hidden}.ml-kf-crumbs{display:flex;align-items:center;gap:2px;padding:6px 8px;background:var(--surface-2);border-bottom:1px solid var(--border);overflow-x:auto}.ml-kf-crumb{background:none;border:none;color:var(--text-secondary);font-size:.72rem;cursor:pointer;padding:2px 4px;border-radius:3px}.ml-kf-crumb:hover{background:var(--hover-bg)}.ml-kf-dir-list{max-height:160px;overflow-y:auto;padding:2px}.ml-kf-dir-item{display:block;width:100%;padding:5px 10px;border:none;border-radius:4px;background:none;color:var(--text);font-size:.76rem;cursor:pointer;text-align:left}.ml-kf-dir-item:hover{background:var(--hover-bg)}.ml-kf-dir-item.ml-kf-up{color:var(--text-tertiary)}.ml-kf-empty{padding:12px;text-align:center;font-size:.72rem;color:var(--text-tertiary)}.ml-kf-pick-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid var(--border);background:var(--surface-2)}.ml-kf-name-input{padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:.78rem;width:150px}.ml-kf-preview-path{flex:1;font-size:.7rem;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace}.ml-kf-preview{border:1px solid var(--border);border-radius:6px;overflow:hidden}.ml-kf-preview pre{padding:10px;font-size:.75rem;line-height:1.4;color:var(--text-secondary);max-height:120px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;margin:0}.ml-kf-editor{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.78rem;line-height:1.4;resize:vertical;font-family:var(--font)}.ml-kf-editor:focus{outline:none;border-color:var(--accent)}.ml-prompt-wrap{border:1px solid var(--border);border-radius:6px;overflow:hidden}.ml-prompt-area{width:100%;padding:10px 12px;border:none;background:var(--surface);color:var(--text);font-size:.78rem;line-height:1.45;resize:vertical;font-family:var(--font)}.ml-prompt-area:focus{outline:none}.ml-prompt-foot{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;background:var(--surface-2);border-top:1px solid var(--border);font-size:.7rem;color:var(--text-tertiary)}.ml-cfg-danger-row{display:flex;align-items:center;justify-content:space-between;gap:12px}@media(max-width:768px){.ml-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:480px){.ml-stats{grid-template-columns:repeat(2,1fr)}}.msg-thinking{margin:0 0 8px;background:transparent;border:0;border-radius:0;overflow:visible}.msg-thinking summary{padding:1px 0;cursor:pointer;font-size:11px;font-weight:500;color:color-mix(in srgb,var(--text-tertiary) 86%,transparent);display:flex;align-items:center;gap:4px;-webkit-user-select:none;user-select:none;background:transparent;width:max-content;outline:none}.msg-thinking summary:hover{color:var(--text);background:transparent}.msg-thinking summary:focus-visible{color:var(--text-secondary);box-shadow:0 1px color-mix(in srgb,var(--text-tertiary) 45%,transparent)}.msg-thinking summary::-webkit-details-marker{display:none}.msg-thinking summary:before{content:"";display:inline-block;width:7px;height:7px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center;transition:transform .2s ease}[data-theme=dark] .msg-thinking summary:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E")}.msg-thinking[open] summary:before{transform:rotate(90deg)}.msg-thinking[open] summary{border-bottom:0}.msg-thinking-content{margin:5px 0 0 3px;padding:2px 0 2px 9px;border-left:1px solid color-mix(in srgb,var(--border) 72%,transparent);font-size:12px;line-height:1.5;color:var(--text-secondary);background:transparent}.msg-thinking-content>*:first-child{margin-top:0}.msg-thinking-content>*:last-child{margin-bottom:0}.connectors-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg);position:relative}.connectors-page:before{content:"";position:absolute;top:-30%;left:-20%;width:90%;height:90%;background:radial-gradient(circle,rgba(138,43,226,.045) 0%,transparent 70%);filter:blur(100px);z-index:0;pointer-events:none;animation:mesh-glow-1 30s infinite alternate ease-in-out}.connectors-page:after{content:"";position:absolute;bottom:-30%;right:-20%;width:90%;height:90%;background:radial-gradient(circle,rgba(30,144,255,.045) 0%,transparent 70%);filter:blur(100px);z-index:0;pointer-events:none;animation:mesh-glow-2 30s infinite alternate ease-in-out}@keyframes mesh-glow-1{0%{transform:translate(0) scale(1)}to{transform:translate(10%,15%) scale(1.15)}}@keyframes mesh-glow-2{0%{transform:translate(0) scale(1)}to{transform:translate(-10%,-15%) scale(1.15)}}.connectors-header{display:flex;align-items:center;padding:20px 32px;border-bottom:1px solid var(--border);background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0;z-index:10}[data-theme=dark] .connectors-header{background:#18181bb3}.connectors-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}.connectors-title-row h2{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.03em;margin:0;display:inline-flex;align-items:center;gap:8px}.connectors-title-row p{margin:6px 0 0;color:var(--text-secondary);font-size:13px}.connectors-summary{display:flex;align-items:center;gap:12px;flex-shrink:0}.connector-stat{display:flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--border);border-radius:20px;background:#ffffff80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 2px #00000005}[data-theme=dark] .connector-stat{background:#18181b80}.connector-stat:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000008}.connector-stat.connected{border-color:color-mix(in srgb,var(--success-text) 30%,var(--border))}.connector-stat.configured{border-color:color-mix(in srgb,var(--warning-text) 30%,var(--border))}.connector-stat .indicator{width:7px;height:7px;border-radius:50%;background:var(--text-tertiary);transition:all .3s ease}.connector-stat.connected .indicator{background:var(--success-text);box-shadow:0 0 8px var(--success-text);animation:status-pulse-green 2s infinite ease-in-out}.connector-stat.configured .indicator{background:var(--warning-text);box-shadow:0 0 8px var(--warning-text);animation:status-pulse-orange 2s infinite ease-in-out}@keyframes status-pulse-green{0%,to{transform:scale(1);opacity:1;box-shadow:0 0 4px var(--success-text)}50%{transform:scale(1.25);opacity:.7;box-shadow:0 0 12px var(--success-text)}}@keyframes status-pulse-orange{0%,to{transform:scale(1);opacity:1;box-shadow:0 0 4px var(--warning-text)}50%{transform:scale(1.25);opacity:.7;box-shadow:0 0 12px var(--warning-text)}}.connector-stat strong{color:var(--text);font-size:14px;font-weight:700;line-height:1}.connector-stat span{color:var(--text-secondary);font-size:12px;font-weight:500}.connectors-dashboard-layout{display:flex;flex:1;overflow:hidden;background:transparent;z-index:1}.connectors-main-column{flex:1;display:flex;flex-direction:column;padding:24px 32px;overflow-y:auto}.connectors-directory-column{width:380px;min-width:380px;max-width:380px;display:flex;flex-direction:column;padding:24px;background:#fff6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:1px solid var(--border);overflow-y:auto}[data-theme=dark] .connectors-directory-column{background:#18181b66}.section-title-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-shrink:0}.section-title-bar h3{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin:0;display:inline-flex;align-items:center;gap:6px}.section-title-bar .count-pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:99px;background:#0000000a;color:var(--text-secondary);border:1px solid var(--border)}[data-theme=dark] .section-title-bar .count-pill{background:#ffffff0a}.connector-directory-search{margin-bottom:20px;position:relative;display:flex;align-items:center}.connector-directory-search input{width:100%;height:42px;padding:0 36px 0 16px;border-radius:24px;border:1px solid var(--border);background:#fff9;color:var(--text);font-size:13px;transition:all .3s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=dark] .connector-directory-search input{background:#18181b99}.connector-directory-search input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.connector-directory-search .search-shortcut{position:absolute;right:14px;font-size:11px;font-weight:750;color:var(--text-tertiary);background:var(--border);width:18px;height:18px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;pointer-events:none;border:1px solid rgba(0,0,0,.05)}.connectors-provider-grid{display:flex;flex-direction:column;gap:12px}.connector-provider-card{position:relative;display:flex;align-items:flex-start;gap:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:#ffffff80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:left;color:var(--text);transition:all .3s cubic-bezier(.16,1,.3,1);overflow:hidden;cursor:pointer}[data-theme=dark] .connector-provider-card{background:#18181b80}.connector-provider-card:hover{border-color:var(--provider-color);transform:translateY(-2px) scale(1.02);box-shadow:0 10px 30px #0000000a,0 0 24px color-mix(in srgb,var(--provider-color) 12%,transparent);background:#ffffffd9}[data-theme=dark] .connector-provider-card:hover{background:#1e1e23d9}.connector-provider-icon-box{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface);border:1px solid var(--border);transition:all .3s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .connector-provider-icon-box{background:#ffffff08}.connector-provider-card:hover .connector-provider-icon-box{background:color-mix(in srgb,var(--provider-color) 8%,var(--surface));border-color:color-mix(in srgb,var(--provider-color) 30%,var(--border));transform:scale(1.05)}.connector-provider-meta{display:flex;flex-direction:column;min-width:0;flex:1}.connector-provider-label-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:3px}.connector-provider-name{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.connector-active-pill{font-size:9px;font-weight:800;color:var(--provider-color);background:color-mix(in srgb,var(--provider-color) 12%,transparent);padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}.connector-provider-category{font-size:11px;font-weight:600;color:var(--text-tertiary);margin-bottom:8px}.connector-provider-desc{font-size:12px;color:var(--text-secondary);line-height:1.5;padding-right:48px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color .25s ease}.connector-provider-card:hover .connector-provider-desc{color:var(--text)}.connector-provider-hover-action{position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--provider-color);opacity:0;transform:translate(6px);transition:all .3s cubic-bezier(.16,1,.3,1)}.connector-provider-card:hover .connector-provider-hover-action{opacity:1;transform:translate(0)}.connectors-active-grid{display:flex;flex-direction:column;gap:12px;width:100%}.connector-row-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .25s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:var(--shadow);position:relative;animation:card-appear .4s cubic-bezier(.16,1,.3,1) both}[data-theme=dark] .connector-row-card{background:#18181b99}@keyframes card-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.connector-row-card:hover{border-color:var(--provider-color);transform:translate(4px);box-shadow:0 4px 16px #0000000a,0 0 16px color-mix(in srgb,var(--provider-color) 12%,transparent)}.connector-row-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px}.connector-brand-info{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.connector-brand-icon{width:40px;height:40px;border-radius:10px;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .25s ease}[data-theme=dark] .connector-brand-icon{background:#18181b}.connector-row-card:hover .connector-brand-icon{background:color-mix(in srgb,var(--provider-color) 8%,var(--bg));border-color:color-mix(in srgb,var(--provider-color) 25%,var(--border));transform:scale(1.05) rotate(-3deg)}.connector-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.connector-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.connector-title-line h4{font-size:15px;font-weight:750;color:var(--text);letter-spacing:-.015em;margin:0;display:inline-flex;align-items:center;gap:6px}.connector-provider-tag{font-size:9px;font-weight:700;padding:1px 6px;border-radius:4px;background:#0000000a;border:1px solid var(--border);color:var(--text-secondary)}[data-theme=dark] .connector-provider-tag{background:#ffffff0a}.connector-account-label{font-size:9px;font-weight:700;color:var(--text-tertiary);background:transparent;padding:1px 6px;border-radius:4px;border:1px solid var(--border);text-transform:uppercase;letter-spacing:.02em}.connector-meta-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.connector-status-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.connector-status-badge .status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary)}.connector-status-badge.status-connected{color:var(--success-text)}.connector-status-badge.status-connected .status-dot{background:var(--success-text);box-shadow:0 0 8px var(--success-text);animation:status-pulse-green 2s infinite ease-in-out}.connector-status-badge.status-configured{color:var(--warning-text)}.connector-status-badge.status-configured .status-dot{background:var(--warning-text);box-shadow:0 0 8px var(--warning-text);animation:status-pulse-orange 2s infinite ease-in-out}.connector-status-badge.status-disabled{color:var(--text-tertiary)}.connector-secured-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:var(--success-text);background:color-mix(in srgb,var(--success-text) 8%,transparent);border:1px solid color-mix(in srgb,var(--success-text) 20%,transparent);padding:2px 8px;border-radius:20px;letter-spacing:.02em}.connector-secured-badge svg{width:10px;height:10px}.connector-subid-badge{font-family:var(--font-mono, monospace);font-size:10px;color:var(--text-tertiary);background:#00000008;border:1px solid var(--border);padding:1px 6px;border-radius:4px}[data-theme=dark] .connector-subid-badge{background:#ffffff08}.connector-row-actions{display:flex;align-items:center;gap:8px}.connector-action-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#fff6;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}[data-theme=dark] .connector-action-btn{background:#18181b66}.connector-action-btn:hover{background:var(--surface);border-color:var(--provider-color, var(--text-secondary));color:var(--provider-color, var(--text));transform:translateY(-2px) scale(1.06);box-shadow:0 4px 12px #0000000d}.connector-action-btn svg{transition:transform .3s ease}.connector-action-btn:hover svg{transform:rotate(15deg)}.connector-action-btn[title="Connection Settings"]:hover svg{transform:rotate(60deg)}.connector-action-btn[title="Test Connection"]:hover svg{animation:dispatch-shimmer .6s ease infinite alternate}@keyframes dispatch-shimmer{0%{transform:translate(0) scale(1)}to{transform:translate(2px,-2px) scale(1.05)}}.connector-action-btn.active{background:color-mix(in srgb,var(--provider-color) 12%,var(--surface));border-color:var(--provider-color);color:var(--provider-color);box-shadow:0 0 10px color-mix(in srgb,var(--provider-color) 20%,transparent)}.connector-action-btn.btn-danger{color:var(--text-secondary)}.connector-action-btn.btn-danger:hover{background:var(--error-bg);border-color:var(--error-text);color:var(--error-text)}.connector-action-btn.btn-primary,.connector-action-btn.btn-secondary{width:auto;border-radius:8px;padding:8px 16px;white-space:nowrap}.connector-scopes-toggle-row{border-top:1px solid var(--border);background:#00000005}[data-theme=dark] .connector-scopes-toggle-row{background:#ffffff03}.connector-scopes-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .2s ease}.connector-scopes-toggle-btn:hover{background:#00000005}[data-theme=dark] .connector-scopes-toggle-btn:hover{background:#ffffff05}.connector-scopes-toggle-btn span{font-size:12px;font-weight:600;color:var(--text-secondary)}.connector-scopes-toggle-btn:hover span{color:var(--text)}.connector-scopes-toggle-btn .chevron{color:var(--text-tertiary);transition:transform .3s cubic-bezier(.16,1,.3,1)}.connector-scopes-toggle-btn:hover .chevron{color:var(--text-secondary)}.connector-scopes-toggle-btn .chevron.open{transform:rotate(180deg)}.connector-capabilities-row{padding:16px 20px;background:#00000003;border-top:1px dashed var(--border)}[data-theme=dark] .connector-capabilities-row{background:#ffffff03}.capabilities-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.capability-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px;background:#fff6;border:1px solid color-mix(in srgb,var(--provider-color, var(--border)) 30%,var(--border));color:var(--text-secondary);transition:all .2s ease}.capability-tag:hover{color:var(--text);border-color:var(--provider-color, var(--text-secondary));background:var(--surface);transform:translateY(-1px)}.connector-error-box{display:flex;align-items:flex-start;gap:10px;padding:14px 20px;background:var(--error-bg);color:var(--error-text);border-top:1px solid var(--border);font-size:12px;font-weight:500}.connector-error-box svg{flex-shrink:0;margin-top:1px}.connector-error-box p{line-height:1.5;margin:0}.connector-test-drawer-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.16,1,.3,1),opacity .3s ease;opacity:0;overflow:hidden}.connector-test-drawer-wrapper.open{grid-template-rows:1fr;opacity:1;border-top:1px solid var(--border)}.connector-test-drawer{min-height:0;padding:18px 20px;background:#00000005;display:flex;flex-direction:column;gap:14px}[data-theme=dark] .connector-test-drawer{background:#ffffff04}.test-drawer-header h5{font-size:13px;font-weight:700;color:var(--text);margin:0 0 4px;display:flex;align-items:center;gap:6px}.test-drawer-header p{font-size:12px;color:var(--text-secondary);margin:0}.test-drawer-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.test-input-wrapper{min-width:160px;flex:1}.test-input-wrapper input{width:100%;height:38px;padding:0 12px;border-radius:8px;background:var(--surface);border:1px solid var(--border);font-size:13px;color:var(--text);transition:all .3s cubic-bezier(.16,1,.3,1)}.test-input-wrapper input:focus{outline:none;border-color:var(--provider-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--provider-color) 12%,transparent)}.connector-send-btn{height:38px;padding:0 18px;border-radius:8px;background:var(--provider-color);color:#fff;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.16,1,.3,1);border:none;cursor:pointer;box-shadow:0 2px 8px color-mix(in srgb,var(--provider-color) 20%,transparent)}.connector-send-btn:hover:not(:disabled){opacity:.95;transform:translateY(-1px);box-shadow:0 4px 14px color-mix(in srgb,var(--provider-color) 35%,transparent)}.connector-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.connector-test-result-log{display:flex;flex-direction:column;gap:6px;margin-top:4px}.connector-test-result-log .log-label{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em}.connector-test-result-log pre{padding:12px 14px;border-radius:8px;background:#00000008;color:var(--text);font-family:var(--font-mono, monospace);font-size:11px;white-space:pre-wrap;word-break:break-all;border:1px solid var(--border);margin:0}[data-theme=dark] .connector-test-result-log pre{background:#ffffff08}.telegram-drive-panel{padding:16px;background:var(--surface);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.telegram-drive-upload{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(180px,1fr) auto;gap:10px;align-items:start}.telegram-drive-upload input,.telegram-drive-upload textarea{width:100%;border-radius:8px;background:var(--bg);border:1px solid var(--border);font-size:12px;color:var(--text)}.telegram-drive-upload input{height:38px;padding:0 12px}.telegram-drive-file-picker{height:38px;display:flex;align-items:center;padding:0 12px;border-radius:8px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:12px;font-weight:650;overflow:hidden}.telegram-drive-file-picker input{display:none}.telegram-drive-file-picker span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.telegram-drive-toolbar{display:flex;align-items:center;justify-content:flex-start}.telegram-drive-file-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.telegram-drive-file{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:11px;text-align:left}.telegram-drive-file:hover{border-color:var(--provider-color);color:var(--text)}.telegram-drive-file-name{color:var(--text);font-size:12px;font-weight:750;word-break:break-word}.telegram-drive-preview{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:8px;border:1px solid var(--border);background:var(--bg)}.telegram-drive-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.telegram-drive-preview-header a,.telegram-drive-generic-preview a{color:var(--provider-color);font-weight:750}.telegram-drive-preview img,.telegram-drive-preview video,.telegram-drive-preview iframe{width:100%;max-height:420px;border-radius:8px;border:1px solid var(--border);background:var(--surface);object-fit:contain}.telegram-drive-preview audio{width:100%}.telegram-drive-preview iframe{height:420px}.telegram-drive-generic-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-radius:8px;border:1px dashed var(--border);color:var(--text-secondary);font-size:12px}.connector-modal{width:min(640px,calc(100vw - 32px))!important;height:auto!important;max-height:88vh!important;border-radius:20px!important;background:#ffffffd9!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;box-shadow:0 24px 64px #00000026!important;display:flex!important;flex-direction:column!important;border:1px solid rgba(255,255,255,.4)!important;overflow:hidden!important;position:relative!important;margin:auto!important}[data-theme=dark] .connector-modal{background:#18181bd9!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 24px 64px #0006!important}.connector-form{display:flex!important;flex-direction:column!important;flex:1!important;min-height:0!important;height:100%!important;overflow:hidden!important}.connector-modal-body{flex:1!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;gap:20px!important;padding:24px 30px!important}.modal-title-group{display:flex;align-items:center;gap:12px}.modal-title-brand-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--provider-color) 12%,transparent);color:var(--provider-color)}.connector-quick-note{display:flex;align-items:flex-start;gap:10px;padding:14px;border-radius:12px;background:#00000005;border:1px solid var(--border);font-size:12px;color:var(--text-secondary);line-height:1.5}[data-theme=dark] .connector-quick-note{background:#ffffff05}.connector-quick-note .secure-icon{flex-shrink:0;color:var(--success-text);margin-top:1px}.connector-credential-guide{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#00000004;color:var(--text-secondary);font-size:12px;line-height:1.5}[data-theme=dark] .connector-credential-guide{background:#ffffff03}.credential-guide-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.credential-guide-heading span{color:var(--text);font-weight:750}.credential-guide-heading a{color:var(--provider-color, var(--accent));font-weight:700;text-decoration:none;white-space:nowrap}.credential-guide-heading a:hover{text-decoration:underline}.credential-env-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.credential-env-list code{padding:2px 7px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:11px;font-family:var(--font-mono, monospace)}.oauth-app-credential-form{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff6}[data-theme=dark] .oauth-app-credential-form{background:#0003}.oauth-app-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text);font-size:12px;font-weight:750}.oauth-app-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.oauth-app-inputs label{display:flex;flex-direction:column;gap:6px;min-width:0}.oauth-app-inputs label span{color:var(--text-secondary);font-size:11px;font-weight:700}.oauth-app-inputs input{min-width:0;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:12px;transition:all .25s ease}.oauth-app-inputs input:focus{border-color:var(--provider-color, var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--provider-color, var(--accent)) 12%,transparent)}.oauth-app-credential-form button{align-self:flex-start;height:36px;border-radius:8px}.oauth-app-credential-form button:disabled{opacity:.55;cursor:not-allowed}.oauth-app-message{margin:0;color:var(--text-secondary);font-size:11px}.connector-credential-guide ol{margin:0;padding-left:18px}.connector-credential-guide li+li{margin-top:6px}.connector-oauth-section{display:flex;flex-direction:column;gap:14px}.connector-oauth-explainer{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary)}.connector-oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;border:2px solid var(--provider-color, var(--accent));border-radius:12px;background:color-mix(in srgb,var(--provider-color, var(--accent)) 8%,transparent);color:var(--provider-color, var(--accent));font-size:14px;font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.connector-oauth-btn:hover:not(:disabled){background:color-mix(in srgb,var(--provider-color, var(--accent)) 15%,transparent);transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--provider-color, var(--accent)) 20%,transparent)}.connector-oauth-btn:disabled{opacity:.6;cursor:not-allowed}.oauth-divider{display:flex;align-items:center;gap:12px;color:var(--text-tertiary);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.oauth-divider:before,.oauth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.form-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.connector-field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:var(--text-secondary)}.connector-field input,.connector-field select{height:42px;padding:0 14px;border-radius:8px;background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:13px;width:100%;transition:all .25s cubic-bezier(.16,1,.3,1)}.connector-field input:focus,.connector-field select:focus{border-color:var(--provider-color, var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--provider-color, var(--accent)) 12%,transparent)}.connector-field-section{display:flex;flex-direction:column;gap:10px}.field-section-label{font-size:11px;font-weight:800;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.connector-capability-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.connector-capability-chip{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;background:#00000005;border:1px solid var(--border);color:var(--text-secondary);font-size:12px;font-weight:600;text-align:left;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .connector-capability-chip{background:#ffffff05}.connector-capability-chip:hover{background:var(--surface-2);color:var(--text);transform:translateY(-1px)}.connector-capability-chip.active{background:var(--surface);border-color:var(--provider-color, var(--accent));color:var(--text);box-shadow:0 4px 12px #0000000a}.chip-check{width:16px;height:16px;border-radius:5px;border:1.5px solid var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.connector-capability-chip.active .chip-check{border-color:var(--provider-color, var(--accent));background:var(--provider-color, var(--accent));color:var(--surface)}.chip-dot{width:4px;height:4px;border-radius:50%;background:transparent}.connector-secret-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;width:100%!important}.connector-input-container{position:relative!important;width:100%!important}.connector-input-container input{height:42px!important;padding:0 38px 0 14px!important;border-radius:8px!important;background:var(--surface)!important;border:1px solid var(--border)!important;color:var(--text)!important;font-size:13px!important;width:100%!important;box-sizing:border-box!important;transition:all .25s cubic-bezier(.16,1,.3,1)}.connector-input-container input:focus{border-color:var(--provider-color, var(--accent))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--provider-color, var(--accent)) 12%,transparent)!important}.connector-input-container input[readonly]{color:var(--text-secondary)!important;background:var(--surface-2)!important}.input-lock-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.connector-modal-error-box{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:8px;background:var(--error-bg);color:var(--error-text);font-size:12px;font-weight:500}.connector-modal-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;padding:18px 30px!important;border-top:1px solid var(--border)!important;background:#00000004!important;flex-shrink:0!important}[data-theme=dark] .connector-modal-actions{background:#ffffff03!important}.connector-modal-actions button{height:40px;padding:0 20px;font-size:13px;font-weight:700;border-radius:8px}.connector-modal-actions .btn-primary{background:var(--accent);color:var(--surface);border:1px solid var(--accent);transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #0000000d}.connector-modal-actions .btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.td-category-filters{display:flex;padding:4px;background:#0000000a;border-radius:99px;gap:2px;border:1px solid var(--border);position:relative;margin-bottom:16px;align-self:flex-start}[data-theme=dark] .td-category-filters{background:#ffffff0a}.td-category-tab{border-radius:99px;border:none;background:transparent;padding:6px 16px;font-size:12px;font-weight:650;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:6px}.td-category-tab:hover{color:var(--text)}.td-category-tab.active{background:var(--surface);color:var(--text);box-shadow:0 2px 8px #0000000f}[data-theme=dark] .td-category-tab.active{box-shadow:0 2px 8px #0003}.td-category-tab .count-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px;background:#0000000d;color:var(--text-secondary)}[data-theme=dark] .td-category-tab .count-badge{background:#ffffff14}.td-category-tab.active .count-badge{background:var(--accent);color:var(--surface)}@media(max-width:1024px){.connectors-dashboard-layout{flex-direction:column-reverse;overflow-y:auto}.connectors-main-column{border-right:none;overflow-y:visible;padding:20px 24px}.connectors-directory-column{width:100%;max-width:none;min-width:0;border-left:none;border-bottom:1px solid var(--border);overflow-y:visible;padding:20px 18px}.connectors-provider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.connector-provider-hover-action{display:none}}@media(max-width:768px){.connectors-page{overflow-y:auto}.connectors-dashboard-layout{overflow-y:visible}.connectors-main-column,.connectors-directory-column{padding:14px 16px}.connectors-provider-grid{grid-template-columns:1fr;gap:8px}.connector-provider-card{padding:12px 14px}.connector-provider-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.connector-row-header{padding:16px;flex-wrap:wrap}.connector-row-actions{width:100%;justify-content:flex-start;gap:6px}.connector-action-btn{width:32px;height:32px}.connector-capabilities-row{padding:10px 16px}.connector-modal{width:calc(100vw - 16px)!important;max-height:92vh!important;border-radius:12px!important}.connector-modal-body{padding:16px 20px!important;gap:16px!important}.connector-modal-actions{padding:14px 20px!important;flex-wrap:wrap}.connector-modal-actions button{flex:1;min-width:0;justify-content:center}.credential-guide-heading{flex-direction:column;align-items:flex-start;gap:4px}.oauth-app-credential-form button{width:100%;justify-content:center}.test-drawer-form{flex-direction:column;align-items:stretch}.test-input-wrapper{width:100%;min-width:0}.connector-send-btn{width:100%}}@media(max-width:480px){.connectors-header{padding:12px 16px}.connectors-title-row{flex-direction:column;align-items:flex-start;gap:10px}.connectors-title-row h2{font-size:18px}.connectors-summary{width:100%}.connector-stat{flex:1;min-width:0;justify-content:center}.connectors-main-column,.connectors-directory-column{padding:10px 12px}.connector-brand-icon{width:40px;height:40px}.connector-title-line h4{font-size:15px}.connector-action-btn{width:30px;height:30px}.form-fields-grid,.connector-secret-grid,.oauth-app-inputs{grid-template-columns:1fr!important}.connector-capability-picker{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px}.connector-capability-chip{padding:6px 10px;font-size:11px}.td-category-filters{align-self:stretch;flex-wrap:wrap;border-radius:12px}.td-category-tab{flex:1;justify-content:center;padding:6px 8px}}.nav-btn-container{position:relative;display:inline-flex}.floating-menu{position:absolute;left:calc(100% + 8px);bottom:0;width:180px;background:#ffffffc7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:6px;box-shadow:0 10px 30px #0000000f,0 1px 3px #00000005;display:flex;flex-direction:column;gap:3px;z-index:150;animation:menu-slide-in .22s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .floating-menu{background:#18181bd9;border-color:#ffffff14;box-shadow:0 10px 30px #00000059,0 1px 3px #00000026}.floating-menu-header{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding:6px 8px 4px;-webkit-user-select:none;user-select:none}.floating-menu .menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border-radius:8px;background:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;text-align:left;transition:all .15s cubic-bezier(.16,1,.3,1)}.floating-menu .menu-item:hover{background:var(--hover-bg);color:var(--text);transform:translate(2px)}.floating-menu .menu-divider{height:1px;background:var(--border);margin:3px 4px}@keyframes menu-slide-in{0%{opacity:0;transform:translate(-4px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}.td-overlay{background:#0a0a0c73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;padding:20px}.td-app-modal{width:min(1100px,95vw);height:85vh;display:flex;flex-direction:column;background:var(--surface);border-radius:20px;overflow:hidden;box-shadow:0 32px 80px -16px #00000059,0 0 0 1px #ffffff0d;animation:td-modal-in .3s cubic-bezier(.16,1,.3,1);border:1px solid var(--border)}@keyframes td-modal-in{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.td-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.td-header-left{display:flex;align-items:center;gap:12px}.td-brand{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.td-brand.telegram{background:linear-gradient(135deg,#2aabee,#229ed9);color:#fff;box-shadow:0 4px 12px #229ed933}.td-brand.google{background:#fff;border:1px solid var(--border-medium, rgba(0, 0, 0, .1));box-shadow:0 2px 8px #0000000f}.td-title-text{display:flex;flex-direction:column}.td-title-text h2{margin:0;font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.td-title-text p{margin:0;font-size:11px;color:var(--text-tertiary);font-weight:500}.td-header-right{display:flex;align-items:center;gap:8px}.td-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:all .2s}.td-icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.td-icon-btn.active{background:var(--surface-3);color:var(--text);border-color:var(--border)}.td-select-btn{color:var(--text-secondary);transition:all .2s cubic-bezier(.16,1,.3,1)}.td-select-btn:hover:not(:disabled){color:#229ed9;background:#229ed914}.td-selection-toolbar{display:flex;align-items:center;gap:4px;background:#229ed90f;border:1px solid rgba(34,158,217,.15);border-radius:10px;padding:4px 8px 4px 4px;animation:slideInRight .25s cubic-bezier(.16,1,.3,1)}@keyframes slideInRight{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.td-selection-count{font-size:12px;font-weight:700;color:#229ed9;padding:0 6px;white-space:nowrap}.td-select-all-btn{color:#229ed9}.td-select-all-btn:hover:not(:disabled){background:#229ed91f}.td-bulk-delete-btn{color:#ff453a}.td-bulk-delete-btn:hover:not(:disabled){background:#ff453a14}.td-bulk-delete-btn:disabled{opacity:.35;cursor:not-allowed}.td-file-checkbox{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:6px;border:2px solid color-mix(in srgb,currentColor 40%,transparent);background:var(--surface-2);display:flex;align-items:center;justify-content:center;z-index:5;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px #00000014}.td-file-checkbox:hover{border-color:#229ed9;background:#229ed914}.td-file-checkbox.checked{background:#229ed9;border-color:#229ed9;color:#fff}.td-file-item.selected{border-color:#229ed9;background:#229ed90d;box-shadow:0 0 0 1px #229ed926,0 4px 12px #229ed90f}.view-grid .td-file-item.selected:hover{border-color:#229ed9;box-shadow:0 0 0 1px #229ed940,0 8px 20px #229ed91a}.view-list .td-file-item.selected{background:#229ed914;border-color:#229ed933}.td-close-btn{width:24px;height:24px;border-radius:50%;border:none;background:#ff3c3c1a;color:#ff453a;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:all .2s}.td-close-btn:hover{background:#ff453a;color:#fff}.td-body{display:flex;flex:1;min-height:0;background:var(--bg)}.td-sidebar{width:230px;border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;padding:20px 16px}.td-sidebar-title{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:14px;padding-left:8px;text-transform:uppercase}.td-folder-list{display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto}.td-folder-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;text-align:left;transition:all .2s ease;min-width:0}.td-folder-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.td-folder-item:hover{background:var(--surface-2);color:var(--text)}.td-folder-item.active{background:linear-gradient(90deg,rgba(34,158,217,.1),transparent);color:#229ed9;border-left:3px solid #229ED9;border-radius:4px 8px 8px 4px}.td-folder-item.active svg{fill:#229ed933}.td-upload-zone{margin-top:auto;padding:0;background:transparent;border:none;display:flex;flex-direction:column;gap:12px}.td-upload-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:10px;background:#229ed914;color:#229ed9;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);border:1px dashed rgba(34,158,217,.4);min-width:0}.td-upload-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.td-upload-btn:hover{background:#229ed926;border-color:#229ed9;transform:translateY(-1px)}.td-upload-btn input{display:none}.td-upload-actions{display:flex;flex-direction:column;gap:8px}.td-upload-input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:12px;outline:none;transition:border-color .2s}.td-upload-input:focus{border-color:#229ed9}.td-upload-submit{padding:8px;border-radius:8px;border:none;background:#229ed9;color:#fff;font-weight:600;cursor:pointer;transition:opacity .2s}.td-upload-submit:hover{opacity:.9}.td-status-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;margin:16px 24px 0;border-radius:8px;font-size:13px;font-weight:500;line-height:1.4;animation:slideDownStatus .2s ease-out}@keyframes slideDownStatus{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.td-status-banner.error{background:#ef444414;color:#f87171;border:1px solid rgba(239,68,68,.15)}.td-status-banner.success{background:#10b98114;color:#34d399;border:1px solid rgba(16,185,129,.15)}.td-status-banner-content{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.td-status-icon{flex-shrink:0}.td-status-icon.error{color:#ef4444}.td-status-icon.success{color:#10b981}.td-status-close{background:none;border:none;padding:4px;margin-left:8px;color:#fff6;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.td-status-close:hover{color:#fffc;background:#ffffff0d}.td-status-banner.error .td-status-close:hover{color:#f87171;background:#ef44441a}.td-status-banner.success .td-status-close:hover{color:#34d399;background:#10b9811a}.td-main{flex:1;display:flex;flex-direction:column;min-width:0}.td-main-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--border)}.td-current-folder{margin:0;font-size:18px;font-weight:700;color:var(--text);display:flex;align-items:baseline;gap:8px}.td-file-count{font-size:12px;font-weight:500;color:var(--text-tertiary)}.td-folder-selector{position:relative}.td-folder-selector-btn{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:8px;transition:background .15s}.td-folder-selector-btn:hover{background:var(--surface-2)}.td-folder-chevron{transition:transform .2s;color:var(--text-tertiary);flex-shrink:0}.td-folder-chevron.open{transform:rotate(180deg)}.td-folder-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:1000;min-width:200px;max-width:90vw;max-height:50vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 40px #00000026,0 4px 12px #00000014;padding:4px;animation:td-dropdown-in .15s ease}@keyframes td-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.td-folder-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;border-radius:6px;font-size:13px;font-weight:500;color:var(--text);cursor:pointer;text-align:left;transition:background .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.td-folder-dropdown-item:hover{background:var(--surface-2)}.td-folder-dropdown-item.active{background:#229ed91a;color:#229ed9;font-weight:600}.td-toolbar-actions{display:flex;align-items:center;gap:12px}.td-mobile-upload-btn{display:none!important}.td-search-box{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 12px;color:var(--text-tertiary);width:180px;transition:all .2s cubic-bezier(.16,1,.3,1)}.td-search-box:focus-within{border-color:#229ed9;box-shadow:0 0 0 2px #229ed91a;width:210px;color:#229ed9;background:var(--surface-3)}.td-search-box input{background:transparent;border:none;color:var(--text);font-size:12px;outline:none;width:100%}.td-search-box input::placeholder{color:var(--text-tertiary)}.td-view-toggles{display:flex;background:var(--surface-2);border-radius:8px;padding:2px;border:1px solid var(--border)}.td-files-container{flex:1;overflow-y:auto;padding:24px;display:flex;align-content:flex-start}.td-empty-state{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:14px;margin-top:10vh}.td-folder-item.active{background:#229ed9!important;color:#fff!important;border-left:none;box-shadow:0 4px 12px #229ed940}.td-folder-item.active svg{stroke:#fff;fill:#fff3}.td-category-filters{display:flex;align-items:center;gap:8px;padding:12px 24px;border-bottom:1px solid var(--border);background:var(--surface);overflow-x:auto;flex-shrink:0;scrollbar-width:none}.td-category-filters::-webkit-scrollbar{display:none}.td-category-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap}.td-category-tab:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-medium)}.td-category-tab.active{background:var(--text);color:var(--bg);border-color:var(--text)}.td-category-tab .count-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px;background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-secondary);transition:all .2s}.td-category-tab.active .count-badge{background:color-mix(in srgb,var(--bg) 20%,transparent);color:var(--bg)}.td-file-preview.cat-docs{--cat-color: #ff453a;--cat-bg: rgba(255, 69, 58, .08)}.td-file-preview.cat-images{--cat-color: #0a84ff;--cat-bg: rgba(10, 132, 255, .08)}.td-file-preview.cat-media{--cat-color: #bf5af2;--cat-bg: rgba(191, 90, 242, .08)}.td-file-preview.cat-archives{--cat-color: #ff9f0a;--cat-bg: rgba(255, 159, 10, .08)}.td-file-preview.cat-folder{--cat-color: #ffb300;--cat-bg: rgba(255, 179, 0, .08)}.td-file-preview.cat-other{--cat-color: var(--text-secondary);--cat-bg: var(--surface-3)}.td-file-ext-badge{position:absolute;top:8px;right:8px;padding:2px 6px;border-radius:4px;background:var(--surface);color:var(--cat-color, var(--text-tertiary));border:1px solid color-mix(in srgb,var(--cat-color, var(--border)) 30%,var(--border));font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 2px 4px #0000000d;z-index:2}.td-icon-circle{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--cat-bg);color:var(--cat-color);border:1px solid color-mix(in srgb,var(--cat-color) 15%,transparent);transition:all .25s cubic-bezier(.16,1,.3,1)}.td-files-container.view-grid{flex-direction:row;flex-wrap:wrap;gap:16px}.view-grid .td-file-item{width:calc(33.333% - 11px);display:flex;flex-direction:column;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);padding:0;position:relative;box-shadow:0 1px 2px #00000005}.view-grid .td-file-item:hover{transform:translateY(-2px);box-shadow:0 12px 24px -8px #0000001f;border-color:color-mix(in srgb,var(--cat-color, #229ed9) 60%,var(--border))}.view-grid .td-file-item.active{border-color:#229ed9;background:color-mix(in srgb,#229ED9 3%,var(--surface-2));box-shadow:0 0 0 2px #229ed933,0 12px 30px #229ed91a}.view-grid .td-file-preview{width:100%;height:100px;background:var(--surface-3, rgba(0,0,0,.03));display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--border);color:var(--text-tertiary);transition:background-color .2s ease;position:relative}.view-grid .td-file-preview img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.view-grid .td-file-item:hover .td-file-preview img{transform:scale(1.05)}.view-grid .td-file-item:hover .td-icon-circle{transform:scale(1.08);box-shadow:0 6px 20px color-mix(in srgb,var(--cat-color) 20%,transparent)}.view-grid .td-file-info{padding:10px 12px;display:flex;flex-direction:column;gap:2px;text-align:left}.view-grid .td-file-name{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-grid .td-file-size{font-size:10px;color:var(--text-tertiary);font-weight:500}.td-files-container.view-list{flex-direction:column;gap:4px}.view-list .td-file-item{display:flex;align-items:center;gap:16px;padding:10px 16px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.view-list .td-file-item:hover{background:var(--surface-2)}.view-list .td-file-item.active{background:#229ed914}.view-list .td-file-item.active .td-file-name{color:#229ed9}.view-list .td-file-preview{width:32px;height:32px;border-radius:6px;background:var(--surface-3);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text-tertiary)}.view-list .td-file-preview img{width:100%;height:100%;object-fit:cover}.view-list .td-file-info{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex:1}.td-file-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-file-size{font-size:11px;color:var(--text-tertiary)}.td-preview-pane{width:340px;border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column}.td-preview-header{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.td-preview-header h3{margin:0;font-size:14px;font-weight:700;color:var(--text);word-break:break-all;flex:1;min-width:0;line-height:1.4}.td-download-btn,.td-delete-btn-drive{width:32px;height:32px;border-radius:50%;background:var(--surface-2);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s cubic-bezier(.16,1,.3,1);border:none;cursor:pointer}.td-download-btn svg,.td-delete-btn-drive svg{stroke:currentColor;fill:none}.td-download-btn:hover{background:#229ed9;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #229ed94d}.td-delete-btn-drive:hover{background:var(--error);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.td-preview-content{padding:24px;display:flex;align-items:center;justify-content:center;background:var(--surface-3);border-bottom:1px solid var(--border);min-height:220px}.td-media-preview,.td-pdf-preview{width:100%;max-height:380px;border-radius:12px;border:1px solid var(--border);box-shadow:0 12px 36px #00000014;background:var(--surface);object-fit:contain}.td-audio-preview{width:100%}.td-text-preview{width:100%;height:200px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:14px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.5;text-align:left}.td-text-preview pre{margin:0;white-space:pre-wrap;word-break:break-all}.td-text-preview-loading{display:block;text-align:center;color:var(--text-tertiary);padding:24px}.td-table-preview{width:100%;max-height:360px;display:flex;flex-direction:column;border-radius:10px;border:1px solid var(--border);background:var(--surface);overflow:hidden}.td-table-wrapper{width:100%;overflow:auto;flex:1}.td-data-table{width:100%;border-collapse:collapse;font-size:11px;line-height:1.4;text-align:left}.td-data-table thead{position:sticky;top:0;z-index:2}.td-data-table th{background:var(--surface-3);color:var(--text);font-weight:700;padding:8px 10px;border-bottom:2px solid var(--border);white-space:nowrap;text-transform:uppercase;font-size:10px;letter-spacing:.03em}.td-data-table td{padding:6px 10px;border-bottom:1px solid var(--border-light, color-mix(in srgb, var(--border) 50%, transparent));color:var(--text);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-data-table tbody tr:hover{background:var(--surface-2)}.td-data-table .td-row-num{width:36px;text-align:center;color:var(--text-tertiary);font-size:10px;font-weight:500;background:var(--surface-2);border-right:1px solid var(--border)}.td-data-table thead .td-row-num{background:var(--surface-3)}.td-table-footer{padding:8px 14px;font-size:10px;color:var(--text-tertiary);font-weight:600;border-top:1px solid var(--border);background:var(--surface-2);text-align:left;letter-spacing:.02em}.td-table-loading,.td-table-empty{display:flex;align-items:center;justify-content:center;height:120px;color:var(--text-tertiary);font-size:12px}.td-generic-preview{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-tertiary)}.td-generic-preview p{font-size:12px;margin:0}.td-preview-details{padding:20px 24px;display:flex;flex-direction:column;gap:10px}.td-detail-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.04)}.td-detail-row:last-child{border-bottom:none;padding-bottom:0}.td-detail-row span:first-child{color:var(--text-tertiary);font-weight:600}.td-detail-row span:last-child{color:var(--text);text-align:right;max-width:60%;word-break:break-all}.td-detail-caption{margin-top:8px;padding:12px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border)}.td-detail-caption strong{display:block;font-size:10px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:6px}.td-detail-caption p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.td-confirm-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10010;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;animation:td-confirm-in .2s cubic-bezier(.16,1,.3,1);border-radius:16px}.td-confirm-modal{width:min(340px,90vw);background:var(--surface);border-radius:16px;padding:24px;border:1px solid var(--border);box-shadow:0 24px 60px #0003;display:flex;flex-direction:column;align-items:center;text-align:center}.td-confirm-icon{width:48px;height:48px;border-radius:50%;background:#ff453a1a;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.td-confirm-modal h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--text)}.td-confirm-modal p{margin:0 0 20px;font-size:13px;color:var(--text-secondary);line-height:1.5}.td-confirm-modal p strong{color:var(--text);word-break:break-all}.td-confirm-actions{display:flex;gap:10px;width:100%}.td-confirm-btn-cancel,.td-confirm-btn-delete{flex:1;padding:10px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.td-confirm-btn-cancel{background:var(--surface-2);color:var(--text-secondary)}.td-confirm-btn-cancel:hover{background:var(--surface-3);color:var(--text)}.td-confirm-btn-delete{background:#ff453a;color:#fff}.td-confirm-btn-delete:hover{background:#ff3b30;box-shadow:0 4px 12px #ff3b304d}@keyframes td-confirm-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.td-inline-rename-btn:hover{background:var(--surface-2)!important;color:#229ed9!important}.td-rename-input:focus{border-color:#229ed9!important;box-shadow:0 0 0 2px #229ed926}.td-rename-action-btn{transition:all .2s cubic-bezier(.16,1,.3,1)}.td-rename-action-btn:hover{transform:scale(1.05)}.td-rename-action-btn.save:hover{opacity:.95}.td-rename-action-btn.cancel:hover{background:var(--surface-3)!important}.td-upload-btn span,.td-folder-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%}@media(max-width:900px){.td-app-modal{width:95vw;height:90vh;height:90dvh;border-radius:12px}.td-body{flex-direction:column}.td-sidebar,.td-upload-zone{display:none!important}.td-main{min-height:0}.td-main-toolbar{flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px}.td-toolbar-actions{width:100%}.td-search-box{flex:1;min-width:0}.td-files-container{padding:12px}.td-files-container.view-grid{gap:8px}.view-grid .td-file-item{width:calc(50% - 4px)!important}.td-preview-pane{width:100%;border-left:none;border-top:1px solid var(--border);max-height:50vh}.td-preview-header{flex-wrap:wrap;gap:6px}.td-upload-actions{flex-direction:column}.td-upload-actions input,.td-upload-actions button{width:100%}.td-mobile-upload-btn{display:flex!important;background:#229ed914;color:#229ed9;border-color:#229ed933}.td-mobile-upload-btn:hover{background:#229ed926}.td-mobile-upload-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:td-fade-in .2s ease}@keyframes td-fade-in{0%{opacity:0}to{opacity:1}}.td-mobile-upload-sheet{width:100%;max-height:80vh;background:var(--surface);border-radius:16px 16px 0 0;display:flex;flex-direction:column;overflow:hidden;animation:td-sheet-up .3s cubic-bezier(.16,1,.3,1);box-shadow:0 -8px 32px #0003}@keyframes td-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.td-mobile-upload-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}.td-mobile-upload-header h3{margin:0;font-size:16px;font-weight:700;color:var(--text)}.td-mobile-upload-body{display:flex;flex-direction:column;gap:12px;padding:20px;overflow-y:auto}.td-mobile-file-picker{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border:2px dashed var(--border);border-radius:12px;background:var(--bg);cursor:pointer;transition:all .2s;color:var(--text-tertiary);text-align:center;min-height:100px}.td-mobile-file-picker:hover{border-color:#229ed9;background:#229ed90a}.td-mobile-file-picker input[type=file]{display:none}.td-mobile-file-picker span{font-size:13px;font-weight:500}.td-mobile-file-name{color:var(--text)!important;font-weight:600!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%;text-align:center}.td-mobile-file-size{font-size:11px!important;color:var(--text-tertiary)!important}.td-mobile-upload-submit{width:100%;padding:14px;border:none;border-radius:10px;background:#229ed9;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s}.td-mobile-upload-submit:hover:not(:disabled){background:#1e8bc4}.td-mobile-upload-submit:disabled{opacity:.5;cursor:not-allowed}}@media(max-width:768px){.td-app-modal{width:100vw;height:100vh;height:100dvh;border-radius:0}}@media(max-width:480px){.td-header{padding:8px 12px}.td-title-text h2{font-size:13px}.td-title-text p{display:none}.td-main-toolbar{padding:8px 10px}.td-current-folder{font-size:14px}.td-search-box{width:100%;padding:5px 10px}.td-files-container{padding:8px}.view-grid .td-file-item{width:100%!important}.view-grid .td-file-item:hover{transform:none}.td-preview-pane{max-height:40vh}.td-upload-btn{padding:8px;font-size:12px}.td-upload-actions{gap:6px}.td-upload-input{font-size:11px}}.td-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10001;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;animation:td-confirm-in .25s cubic-bezier(.16,1,.3,1);border-radius:16px}.td-preview-modal{width:min(500px,90vw);max-height:80vh;background:var(--surface);border-radius:16px;border:1px solid var(--border);box-shadow:0 24px 60px #00000040;display:flex;flex-direction:column;overflow-y:auto;animation:td-confirm-in .25s cubic-bezier(.16,1,.3,1)}.storage-page{display:flex;flex-direction:column;height:100%;width:100%;background:var(--surface);overflow:hidden}.sp-mobile-header-drive{display:none}.storage-page-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:40px}.sp-no-connectors{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-tertiary);text-align:center}.sp-no-connectors p{margin:0;font-size:14px}.sp-inline-empty{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-tertiary)}.sp-inline-empty p{margin:0;font-size:14px}.sp-layout{display:flex;flex-direction:column;height:100%;overflow:hidden}.sp-topbar{display:flex;align-items:center;padding:8px 16px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.sp-connector-dropdown{position:relative}.sp-connector-trigger{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-1);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;transition:all .15s;max-width:240px}.sp-connector-trigger:hover{border-color:#229ed9;background:var(--surface)}.sp-connector-trigger-label{color:var(--text-tertiary);font-weight:500}.sp-connector-trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-connector-trigger-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--text-tertiary)}.sp-connector-trigger-dot.status-connected{background:#34d399}.sp-connector-trigger-dot.status-configured{background:#fbbf24}.sp-connector-trigger-dot.status-error{background:#f87171}.sp-connector-chevron{flex-shrink:0;color:var(--text-tertiary);transition:transform .15s}.sp-connector-chevron.open{transform:rotate(180deg)}.sp-connector-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;background:var(--surface-1);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:4px;z-index:50;animation:spDropdownIn .12s ease-out}@keyframes spDropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sp-connector-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:7px;background:transparent;color:var(--text);cursor:pointer;font-size:12px;transition:background .1s;text-align:left}.sp-connector-option:hover{background:var(--surface-2)}.sp-connector-option.active{background:#229ed914}.sp-connector-option-name{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-connector-option-type{font-size:10px;color:var(--text-tertiary);font-weight:500}.sp-connector-manage-link{display:block;padding:7px 10px;margin-top:2px;border-top:1px solid var(--border);font-size:11px;color:#229ed9;text-decoration:none;font-weight:600;border-radius:0 0 8px 8px;transition:background .1s}.sp-connector-manage-link:hover{background:#229ed90f}.sp-panel{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.sp-toolbar{display:flex;flex-direction:column;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-shrink:0;transition:all .2s ease}@media(min-width:1024px){.sp-toolbar{flex-direction:row;align-items:center;justify-content:space-between;padding:14px 24px;gap:20px;background:var(--surface-1)}}.sp-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}@media(min-width:1024px){.sp-toolbar-row{width:auto}.sp-toolbar-row.header-row{justify-content:flex-start;gap:16px;flex-shrink:0;min-height:0}.sp-toolbar-row.actions-row{justify-content:flex-end;gap:16px;flex-grow:1;min-height:0}}.sp-actions-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.sp-mobile-tool-toggle{display:none}.sp-secondary-actions{display:contents}.sp-meta-capsule{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:99px;color:var(--text-secondary);font-size:11px;font-weight:500;line-height:1.2;transition:all .2s ease}.sp-meta-capsule:hover{background:var(--surface-3);color:var(--text)}.sp-meta-dot{opacity:.5;margin:0 1px}.sp-meta-count,.sp-meta-size{font-weight:600}.sp-toolbar-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.sp-mobile-portal-container{display:flex;align-items:center;justify-content:flex-end;width:36px;min-width:36px}.sp-desktop-connector{display:block}.sp-toolbar-connector .sp-connector-menu{left:auto;right:0}.sp-breadcrumb{display:flex;align-items:center;gap:6px;min-width:0;flex:1;overflow:visible;white-space:nowrap}.sp-breadcrumb-path{display:flex;align-items:center;gap:4px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.sp-breadcrumb-path::-webkit-scrollbar{display:none}.sp-breadcrumb-nav{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.sp-breadcrumb-back{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--surface-1);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.sp-breadcrumb-back:hover{background:var(--surface-3);color:#229ed9;border-color:#229ed94d;transform:translate(-1px)}.sp-breadcrumb-back:active{transform:translate(0)}.sp-breadcrumb-root-label{font-size:13px;font-weight:500;color:var(--text-tertiary);-webkit-user-select:none;user-select:none}.sp-breadcrumb .sp-connector-dropdown .sp-connector-trigger{border:1px solid transparent;background:transparent;padding:4px 8px;border-radius:6px;font-size:13px;box-shadow:none;color:var(--text);transition:all .2s cubic-bezier(.16,1,.3,1)}.sp-breadcrumb .sp-connector-dropdown .sp-connector-trigger:hover{background:var(--hover-bg);border-color:var(--border)}.sp-breadcrumb-sep{color:var(--text-tertiary);font-size:12px;font-weight:500;-webkit-user-select:none;user-select:none;opacity:.5;margin:0 2px}.sp-breadcrumb-part{background:none;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .15s ease;white-space:nowrap}.sp-breadcrumb-part:hover{background:var(--hover-bg);color:var(--text)}.sp-breadcrumb-part.last{color:var(--text);font-weight:600;cursor:default;pointer-events:none}.sp-file-count{font-size:11px;color:var(--text-tertiary);font-weight:600;margin-left:6px;white-space:nowrap;background:var(--surface-3);padding:2px 8px;border-radius:6px}.sp-storage-used{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid rgba(34,158,217,.15);border-radius:6px;background:#229ed90d;color:#229ed9;font-size:10px;font-weight:700;white-space:nowrap;letter-spacing:.02em}.sp-toolbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.sp-category-grid.folders-grid.view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.sp-folder-card{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);min-width:0}.sp-folder-card:hover{transform:translateY(-1px);background:var(--surface-3);border-color:#229ed9;box-shadow:0 4px 12px #229ed90f}.sp-folder-card:active{transform:translateY(0)}.sp-folder-card.active{background:#229ed90f;border-color:#229ed9}.sp-folder-card-icon{display:flex;align-items:center;justify-content:center;color:#229ed9;flex-shrink:0}.sp-folder-card-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none}.sp-folder-card-wrapper{position:relative}.sp-folder-delete-btn{position:absolute;top:6px;right:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:#0006;color:#ff453a;cursor:pointer;opacity:0;transition:opacity .15s ease;z-index:2}.sp-folder-card-wrapper:hover .sp-folder-delete-btn{opacity:1}.sp-folder-delete-btn:hover{background:#ff453a;color:#fff}.sp-breadcrumb-delete-folder{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:5px;background:transparent;color:var(--text-tertiary);cursor:pointer;margin-left:4px;transition:all .15s ease;flex-shrink:0}.sp-breadcrumb-delete-folder:hover{background:#ff453a1f;color:#ff453a}.sp-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:8px;border:1px solid transparent;background:#229ed9;color:#fff;font-size:11.5px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 6px #229ed926}.sp-upload-btn:hover{background:#1b8bc4;color:#fff;border-color:transparent;transform:translateY(-.5px);box-shadow:0 4px 12px #229ed940}.sp-upload-btn:active{transform:translateY(0)}.sp-upload-btn input{display:none}.sp-toolbar-row.upload-row{margin-top:6px;width:100%}.sp-upload-meta{display:flex;flex-direction:column;gap:12px;width:100%;background:color-mix(in srgb,var(--accent) 5%,var(--surface-3));padding:12px 16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 15%,var(--border));box-sizing:border-box;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sp-upload-header-row{display:flex;align-items:center;gap:12px;width:100%;flex-wrap:wrap}.sp-upload-count{font-size:12px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-1));padding:6px 12px;border-radius:99px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.sp-upload-select,.sp-upload-input{padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;outline:none;transition:all .2s ease;height:36px;box-sizing:border-box}.sp-upload-select:focus,.sp-upload-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.sp-upload-select{min-width:160px;flex-grow:1;max-width:260px;width:auto!important}.sp-upload-input{flex-grow:2;min-width:180px;width:auto!important}.sp-upload-actions{display:flex;gap:8px;margin-left:auto;align-items:center}.sp-upload-cancel,.sp-upload-submit{height:36px;padding:8px 16px;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all .2s ease;box-sizing:border-box}.sp-upload-cancel{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.sp-upload-cancel:hover{background:var(--surface-2);color:var(--text)}.sp-upload-submit{background:var(--accent);border:1px solid transparent;color:#fff;min-width:80px}.sp-upload-submit:hover{background:color-mix(in srgb,var(--accent) 85%,black);transform:translateY(-1px)}.sp-upload-submit:active{transform:translateY(0)}.sp-upload-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1500;display:flex;align-items:center;justify-content:center;animation:spFadeIn .25s cubic-bezier(.16,1,.3,1) forwards;padding:16px;box-sizing:border-box}.sp-upload-modal{width:100%;max-width:680px;max-height:90vh;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 48px #0006;display:flex;flex-direction:column;overflow:hidden;animation:spModalSlideUp .3s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes spFadeIn{0%{opacity:0}to{opacity:1}}@keyframes spModalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.sp-upload-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--border);background:var(--surface-1)}.sp-upload-modal-header h3{font-size:16px;font-weight:700;margin:0;color:var(--text);letter-spacing:-.3px}.sp-upload-modal-close{background:none;border:none;color:var(--text-secondary);font-size:22px;cursor:pointer;padding:4px;line-height:1;transition:color .15s ease}.sp-upload-modal-close:hover{color:var(--text)}.sp-upload-modal-body{padding:0;display:flex;flex:1;min-height:0}.sp-upload-modal-body.split-layout{display:flex;gap:0;height:400px;box-sizing:border-box}.sp-upload-options-col{flex:1;display:flex;flex-direction:column;gap:16px;padding:24px;min-width:0;box-sizing:border-box}.sp-upload-queue-col{flex:1.2;display:flex;flex-direction:column;gap:14px;padding:24px;min-width:0;border-left:1px solid var(--border);background:var(--surface-1);box-sizing:border-box}.sp-upload-field{display:flex;flex-direction:column;gap:6px}.sp-upload-field label{font-size:10px;font-weight:800;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.8px}.sp-upload-static-val{padding:9px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text-secondary)}.sp-upload-select{padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;outline:none;transition:all .2s ease;width:100%!important;max-width:none;box-sizing:border-box}.sp-upload-input{padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;outline:none;transition:all .2s ease;width:100%!important;box-sizing:border-box}.sp-upload-select:focus,.sp-upload-input:focus,.sp-upload-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.sp-upload-textarea{padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;outline:none;resize:none;transition:border-color .2s;box-sizing:border-box}.sp-upload-queue-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.sp-upload-badge{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:11px;font-weight:700;padding:4px 10px;border-radius:99px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.sp-upload-total-size{font-size:11px;color:var(--text-tertiary);font-weight:600}.sp-upload-previews-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1;padding-right:4px}.sp-preview-list-item{position:relative;display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;transition:all .2s ease}.sp-preview-list-item.clickable{cursor:pointer}.sp-preview-list-item.clickable:hover{border-color:var(--accent);background:var(--surface-2);transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.sp-preview-meta-info{display:flex;flex-direction:column;min-width:0;flex:1;padding-right:16px}.sp-upload-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border);background:var(--surface-2)}.sp-upload-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;width:100%;border-top:1px solid color-mix(in srgb,var(--accent) 10%,var(--border));padding-top:12px;margin-top:4px}.sp-preview-card{position:relative;display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .2s ease}.sp-preview-card:hover{border-color:var(--accent);background:var(--surface-2)}.sp-preview-card.clickable{transition:all .2s cubic-bezier(.16,1,.3,1)}.sp-preview-card.clickable:hover{box-shadow:0 4px 12px #229ed91f;transform:translateY(-1px)}.sp-preview-thumb{width:32px;height:32px;border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--surface-2);flex-shrink:0;border:1px solid var(--border)}.sp-preview-thumb img{width:100%;height:100%;object-fit:cover}.sp-preview-icon{color:var(--accent);display:flex;align-items:center;justify-content:center}.sp-preview-details{display:flex;flex-direction:column;min-width:0;flex:1;padding-right:12px}.sp-preview-name{font-size:11px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-preview-size{font-size:9px;color:var(--text-tertiary);margin-top:1px}.sp-preview-remove{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text-tertiary);font-size:16px;font-weight:700;cursor:pointer;padding:2px;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease;width:18px;height:18px}.sp-preview-remove:hover{background:#ff453a1f;color:#ff453a}@media(max-width:767px){.sp-upload-modal{max-height:95vh}.sp-upload-modal-body.split-layout{flex-direction:column;height:auto;max-height:65vh;overflow-y:auto}.sp-upload-options-col{padding:16px;gap:12px}.sp-upload-queue-col{border-left:none;border-top:1px solid var(--border);padding:16px;gap:12px}.sp-upload-previews-list{max-height:240px}}.sp-inline-input{padding:4px 7px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);font-size:11px;width:110px;outline:none}.sp-inline-input:focus{border-color:#229ed9}.sp-btn-sm{padding:4px 9px;border-radius:5px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;text-decoration:none;display:inline-flex;align-items:center}.sp-btn-sm:hover{background:var(--surface-3)}.sp-btn-primary{background:#229ed9;border-color:#229ed9;color:#fff}.sp-btn-primary:hover{background:#1b8bc4}.sp-btn-danger{background:transparent;border-color:#ff453a;color:#ff453a}.sp-btn-danger:hover{background:#ff453a14}.sp-search{display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-tertiary);transition:all .2s cubic-bezier(.16,1,.3,1)}.sp-search:focus-within{border-color:#229ed9;box-shadow:0 0 0 2px #229ed91f;background:var(--surface)}.sp-search input{border:none;background:transparent;color:var(--text);font-size:12px;outline:none;width:100px;transition:width .2s cubic-bezier(.16,1,.3,1)}.sp-search input:focus{width:140px}.sp-search input::placeholder{color:var(--text-tertiary)}.sp-view-toggles{display:flex;gap:1px;background:var(--surface-1);border:1px solid var(--border);border-radius:8px;padding:2px}.sp-icon-sm{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all .15s}.sp-icon-sm:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.sp-icon-sm.active{background:var(--surface);color:#229ed9;box-shadow:0 1px 2px #0000000d}.sp-icon-sm:disabled{opacity:.4;cursor:default}.sp-category-filters{display:flex;gap:2px;padding:2px;background:var(--surface-1);border:1px solid var(--border);border-radius:99px;flex-shrink:0;box-shadow:inset 0 1px 2px #00000005}.sp-cat-tab{display:flex;align-items:center;gap:6px;padding:5px 12px;border:none;border-radius:99px;background:transparent;color:var(--text-secondary);font-size:11.5px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.sp-cat-tab:hover{background:var(--hover-bg);color:var(--text)}.sp-cat-tab.active{background:var(--surface);color:#229ed9;border:none;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.sp-cat-count{font-size:9px;color:var(--text-tertiary);background:var(--surface-2);padding:1px 5px;border-radius:99px;font-weight:700;border:none;transition:all .2s}.sp-cat-tab.active .sp-cat-count{background:#229ed914;color:#229ed9}.sp-status{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;font-size:11px;font-weight:600;flex-shrink:0}.sp-status.success{background:#34d39914;color:#34d399;border-bottom:1px solid rgba(52,211,153,.15)}.sp-status.error{background:#f8717114;color:#f87171;border-bottom:1px solid rgba(248,113,113,.15)}.sp-status button{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;padding:0 4px;opacity:.6}.sp-status button:hover{opacity:1}.sp-status-action{background:none;border:1px solid currentColor;color:inherit;cursor:pointer;font-size:10px;padding:2px 8px;border-radius:4px;font-weight:700;opacity:.8}.sp-status-action:hover{opacity:1}.sp-files{flex:1;overflow-y:auto;padding:14px 16px;min-height:0}.sp-category-group{margin-bottom:20px}.sp-category-group:last-child{margin-bottom:0}.sp-category-header{display:flex;align-items:center;gap:7px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.sp-category-header-label{font-size:12px;font-weight:700;color:var(--text);letter-spacing:-.01em}.sp-category-header-count{font-size:9px;font-weight:600;color:var(--text-tertiary);background:var(--surface-3);padding:1px 6px;border-radius:5px}.sp-category-grid.view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;align-content:start}.sp-category-grid.view-list{display:flex;flex-direction:column;gap:3px}.sp-file-item{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);padding:0;color:var(--text);text-align:left}.view-grid .sp-file-item{box-shadow:0 1px 2px #00000005}.view-grid .sp-file-item:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000000a,0 2px 6px #00000005;border-color:color-mix(in srgb,var(--cat-color, #229ED9) 30%,var(--border))}.view-grid .sp-file-item.active{border-color:#229ed9;background:var(--surface);box-shadow:0 0 0 3px #229ed91f,0 6px 20px #229ed90f}.view-list .sp-file-item{flex-direction:row;align-items:center;gap:12px;padding:8px 14px;border-radius:10px;background:var(--surface);margin-bottom:2px}.view-list .sp-file-item:hover{background:var(--surface-2);border-color:var(--border);transform:translate(2px)}.view-list .sp-file-item.active{background:#229ed90a;border-color:#229ed933;box-shadow:0 2px 8px #229ed90a}.sp-file-thumb{display:flex;align-items:center;justify-content:center;background:var(--surface-2);overflow:hidden;transition:background .25s ease;position:relative}.view-grid .sp-file-thumb{height:120px;border-bottom:1px solid var(--border)}.sp-file-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.16,1,.3,1)}.sp-file-item:hover .sp-file-thumb img{transform:scale(1.04)}.sp-file-icon-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--cat-color, var(--text-tertiary));opacity:.85;transition:transform .25s cubic-bezier(.16,1,.3,1)}.sp-file-item:hover .sp-file-icon-circle{transform:scale(1.06)}.sp-file-ext{font-size:8px;font-weight:700;text-transform:uppercase;color:var(--text-secondary);background:var(--surface);padding:2px 6px;border-radius:4px;letter-spacing:.04em;box-shadow:0 1px 2px #0000000d}.sp-file-item.cat-folder{--cat-color: #ffb300}.sp-file-item.cat-images{--cat-color: #0a84ff}.sp-file-item.cat-media{--cat-color: #bf5af2}.sp-file-item.cat-archives{--cat-color: #ff9f0a}.sp-file-item.cat-docs{--cat-color: #ff453a}.sp-file-item.cat-other{--cat-color: #8e8e93}.view-grid .sp-file-thumb.cat-folder{background:color-mix(in srgb,#ffb300 6%,var(--surface-2))}.view-grid .sp-file-thumb.cat-images{background:color-mix(in srgb,#0a84ff 6%,var(--surface-2))}.view-grid .sp-file-thumb.cat-media{background:color-mix(in srgb,#bf5af2 6%,var(--surface-2))}.view-grid .sp-file-thumb.cat-archives{background:color-mix(in srgb,#ff9f0a 6%,var(--surface-2))}.view-grid .sp-file-thumb.cat-docs{background:color-mix(in srgb,#ff453a 6%,var(--surface-2))}.view-grid .sp-file-thumb.cat-other{background:var(--surface-2)}.view-list .sp-file-thumb{width:32px;height:32px;flex-shrink:0;border-radius:6px}.view-grid .sp-file-info{padding:8px 10px}.sp-file-info{display:flex;flex-direction:column;gap:2px;min-width:0}.sp-file-name{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.sp-file-folder{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.sp-file-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px;width:100%}.sp-file-account-badge{font-size:9px;color:var(--text-tertiary);background:var(--surface-3);padding:2px 6px;border-radius:4px;font-weight:600;display:inline-flex;align-items:center;gap:3px;white-space:nowrap;max-width:100px;overflow:hidden;text-overflow:ellipsis}.sp-file-size{font-size:10px;color:var(--text-tertiary);font-weight:500}.sp-loading,.sp-empty{padding:40px 0;text-align:center;color:var(--text-tertiary);font-size:13px}.sp-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .15s ease}.sp-preview-modal{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;width:90vw;max-width:800px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0003}.sp-preview-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);gap:10px;flex-shrink:0}.sp-preview-header h3{margin:0;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sp-preview-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.sp-preview-close{background:none;border:none;font-size:18px;color:var(--text-tertiary);cursor:pointer;padding:0 4px;line-height:1}.sp-preview-close:hover{color:var(--text)}.sp-preview-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:16px;min-height:0}.sp-media-preview{max-width:100%;max-height:65vh;border-radius:8px}.sp-audio-preview{width:100%;max-width:400px}.sp-pdf-preview{width:100%;height:65vh;border:none;border-radius:8px}.sp-text-preview{width:100%;max-height:65vh;overflow:auto;background:var(--surface-2);border-radius:8px;padding:14px}.sp-text-preview pre{margin:0;font-family:SF Mono,Fira Code,monospace;font-size:12px;line-height:1.5;color:var(--text);white-space:pre-wrap;word-break:break-word}.sp-generic-preview{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-tertiary)}.sp-generic-preview p{margin:0;font-size:13px}.sp-loading-text{color:var(--text-tertiary);font-size:12px}.sp-docx-preview{width:100%;height:65vh;min-height:500px;overflow:auto;background:var(--surface-2);border-radius:4px;color:#000}.docx-wrapper{background:transparent!important;padding:30px!important;display:inline-flex!important;flex-direction:column!important;align-items:center!important;min-width:100%;box-sizing:border-box}.sp-docx-preview.unsqueezed .docx-wrapper{padding:40px 100px!important}.docx-wrapper>section.docx{background:#fff!important;box-shadow:0 4px 12px #00000026!important;border-radius:4px;margin-bottom:20px;text-align:left}.sp-preview-title-area{min-width:0;flex:1}.sp-preview-title-area h3{margin:0;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.sp-preview-title-area h3:hover{color:#229ed9}.sp-title-edit-input{width:100%;padding:3px 8px;border:1px solid #229ED9;border-radius:5px;background:var(--surface);color:var(--text);font-size:13px;font-weight:700;outline:none}.sp-zoom-controls{display:flex;align-items:center;gap:2px;background:var(--surface-1);border:1px solid var(--border);border-radius:7px;padding:2px}.sp-zoom-label{font-size:10px;font-weight:700;color:var(--text-secondary);min-width:38px;text-align:center;-webkit-user-select:none;user-select:none}.sp-editor{border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.sp-editor-tabs{display:flex;align-items:center;gap:0;padding:0 12px;border-bottom:1px solid var(--border);background:var(--surface-1)}.sp-editor-tab{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-tertiary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.sp-editor-tab:hover{color:var(--text);background:var(--surface-2)}.sp-editor-tab.active{color:#229ed9;border-bottom-color:#229ed9}.sp-editor-tabs-right{margin-left:auto;display:flex;align-items:center;gap:8px}.sp-editor-reset{padding:6px 14px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.sp-editor-reset:hover{background:var(--surface-3);color:var(--text)}.sp-save-split{display:flex;position:relative}.sp-editor-save{padding:6px 14px;border:none;border-radius:7px 0 0 7px;background:#229ed9;color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap}.sp-editor-save:hover{background:#1b8bc4}.sp-editor-save:disabled{opacity:.6;cursor:default}.sp-save-arrow{padding:6px 8px;border:none;border-left:1px solid rgba(255,255,255,.2);border-radius:0 7px 7px 0;background:#229ed9;color:#fff;cursor:pointer;transition:all .15s;display:flex;align-items:center}.sp-save-arrow:hover{background:#1b8bc4}.sp-save-arrow:disabled{opacity:.6;cursor:default}.sp-save-menu{position:absolute;bottom:calc(100% + 6px);right:0;min-width:220px;background:#232327!important;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000024;padding:4px;z-index:1000;animation:spMenuIn .12s ease-out;isolation:isolate}@keyframes spMenuIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sp-save-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:7px;background:transparent;color:var(--text);cursor:pointer;text-align:left;transition:background .1s}.sp-save-option:hover{background:var(--surface-2)}.sp-save-option svg{flex-shrink:0;color:var(--text-tertiary)}.sp-save-option-title{display:block;font-size:12px;font-weight:700;color:var(--text)}.sp-save-option-desc{display:block;font-size:10px;color:var(--text-tertiary);margin-top:1px}.sp-editor-panel{padding:14px 16px}.sp-editor-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.sp-editor-row:last-child{margin-bottom:0}.sp-editor-slider-label{font-size:12px;font-weight:600;color:var(--text-secondary);min-width:72px;flex-shrink:0}.sp-editor-slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border-radius:3px;outline:none;cursor:pointer}.sp-editor-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#229ed9;cursor:pointer;box-shadow:0 1px 3px #00000026}.sp-editor-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#229ed9;cursor:pointer;border:none;box-shadow:0 1px 3px #00000026}.sp-editor-slider-val{font-size:12px;font-weight:700;color:var(--text-secondary);min-width:40px;text-align:right}.sp-editor-btn-row{display:flex;gap:10px;flex-wrap:wrap}.sp-editor-action-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 18px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1);color:var(--text);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;min-width:80px}.sp-editor-action-btn:hover{background:var(--surface-3);border-color:#229ed9;color:#229ed9}.sp-draw-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sp-draw-tool{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-1);color:var(--text-secondary);font-size:10px;font-weight:600;cursor:pointer;transition:all .15s;min-width:60px}.sp-draw-tool:hover{background:var(--surface-3);color:var(--text)}.sp-draw-tool.active{background:#229ed91a;border-color:#229ed9;color:#229ed9}.sp-draw-separator{width:1px;height:36px;background:var(--border);flex-shrink:0}.sp-draw-color-pick{display:flex;align-items:center;cursor:pointer;position:relative}.sp-draw-color-pick input{position:absolute;opacity:0;width:0;height:0}.sp-draw-color-swatch{width:32px;height:32px;border-radius:8px;border:2px solid var(--border);cursor:pointer;transition:border-color .15s}.sp-draw-color-swatch:hover{border-color:#229ed9}.sp-draw-size-control{display:flex;align-items:center;gap:10px;min-width:160px}.sp-image-container{position:relative;display:inline-block;transform-origin:center center}.sp-draw-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:auto}.sp-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:110;animation:fadeIn .12s ease}.sp-confirm-modal{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:24px;max-width:380px;width:90%;box-shadow:0 16px 48px #00000026}.sp-confirm-modal h3{margin:0 0 8px;font-size:15px;font-weight:700}.sp-confirm-modal p{margin:0 0 18px;font-size:12px;color:var(--text-secondary);line-height:1.5}.sp-confirm-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:768px){.sp-toolbar{padding:10px 12px;flex-direction:column;align-items:stretch;gap:8px;background:var(--surface-2)}.sp-toolbar-row{flex-direction:column;align-items:stretch;gap:8px;width:100%}.sp-toolbar-row.bottom-row{border-top:1px dashed var(--border);padding-top:10px;margin-top:2px}.sp-toolbar-left{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;flex-wrap:nowrap}.sp-mobile-portal-container{display:flex;align-items:center;justify-content:flex-end;width:36px;min-width:36px;height:100%}.sp-mobile-portal-container:has(*){width:auto;min-width:130px;max-width:170px}.sp-mobile-portal-container .sp-connector-dropdown{width:100%;position:relative}.sp-mobile-portal-container .sp-connector-trigger{width:100%;max-width:none;padding:5px 8px;font-size:12px;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;background:var(--surface-1);border:1px solid var(--border);border-radius:6px;height:28px}.sp-mobile-portal-container .sp-connector-options{right:0;left:auto;min-width:160px;z-index:999}.sp-desktop-connector{display:none}.sp-breadcrumb{flex:1;min-width:0;display:flex;align-items:center;gap:4px;overflow:visible}.sp-breadcrumb-nav{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.sp-breadcrumb-path{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;display:flex;align-items:center;gap:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sp-breadcrumb-path::-webkit-scrollbar{display:none}.sp-breadcrumb-part{padding:3px 6px;font-size:12px}.sp-breadcrumb-sep{font-size:11px}.sp-file-count{font-size:10px;padding:1px 6px}.sp-storage-used{height:22px;padding:0 8px;font-size:9px}.sp-toolbar-row.header-row{flex-direction:row;align-items:center;justify-content:space-between;gap:8px;width:100%}.sp-toolbar-row.actions-row{flex-direction:column;align-items:stretch;gap:8px;width:100%}.sp-actions-right{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.sp-search{flex:1;min-width:0;padding:6px 10px}.sp-search input{width:100%;min-width:0}.sp-search input:focus{width:100%}.sp-upload-btn{padding:6px 12px;font-size:11.5px;border-radius:8px}.sp-view-toggles{display:flex}.sp-category-filters{padding:2px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%;box-sizing:border-box;display:flex;gap:4px;border:none;background:transparent}.sp-category-filters::-webkit-scrollbar{display:none}.sp-cat-tab{flex-shrink:0;padding:5px 10px;font-size:11px}.sp-files{padding:10px 12px}.sp-category-grid.view-grid{grid-template-columns:repeat(2,1fr);gap:10px}.sp-category-grid.folders-grid.view-grid{grid-template-columns:repeat(2,1fr);gap:8px}.view-grid .sp-file-thumb{height:110px}.sp-preview-modal{width:95vw;max-width:none;max-height:90vh;border-radius:10px}.sp-preview-header{padding:10px 14px}.sp-preview-header h3{font-size:12px}.sp-confirm-modal{margin:0 16px;max-width:none;padding:20px}.sp-confirm-modal h3{font-size:14px}.sp-confirm-modal p{font-size:11px}.sp-upload-btn{padding:5px 9px;font-size:10px}.sp-zoom-controls{display:flex}.sp-editor-tabs{padding:0 8px;overflow-x:auto;scrollbar-width:none}.sp-editor-tabs::-webkit-scrollbar{display:none}.sp-editor-tab{padding:8px 12px;font-size:11px}.sp-editor-tab span{display:none}.sp-editor-panel{padding:10px 12px}.sp-editor-btn-row{gap:8px}.sp-editor-action-btn{padding:10px 14px;min-width:70px;font-size:10px}.sp-draw-toolbar{gap:6px}.sp-draw-tool{padding:8px 10px;min-width:50px;font-size:9px}.sp-draw-size-control{min-width:120px}.sp-inline-input{width:90px;font-size:10px}.sp-btn-sm{padding:4px 7px;font-size:10px}.view-list .sp-file-thumb{width:28px;height:28px}}@media(max-width:480px){.sp-category-grid.view-grid{grid-template-columns:repeat(2,1fr)}.view-grid .sp-file-thumb{height:100px}.sp-toolbar-right{flex-direction:row;align-items:center;gap:6px}.sp-view-toggles{align-self:center}.sp-upload-meta{flex-direction:row;align-items:center}.sp-inline-input{width:90px}.sp-preview-actions{gap:4px}.sp-confirm-actions{flex-direction:column}.sp-confirm-actions .sp-btn-sm{text-align:center}.sp-loading,.sp-empty{padding:30px 0;font-size:12px}}@media(max-width:768px){.mobile-header:has(+.storage-page){justify-content:flex-start;gap:10px;padding-top:9px;padding-bottom:9px;padding-right:12px;background:var(--surface-2);border-bottom:0;box-shadow:none}.mobile-header:has(+.storage-page) .mobile-header-title{display:none}.mobile-header:has(+.storage-page)>div[style]{display:none}.sp-mobile-header-drive{display:block;position:fixed;top:8px;left:auto;right:12px;width:max-content;max-width:calc(100vw - 112px);z-index:24}.sp-mobile-header-drive .sp-connector-dropdown{width:max-content;max-width:100%}.sp-mobile-header-drive .sp-connector-trigger{width:auto;height:34px;max-width:100%;padding:5px 10px;border-radius:10px;background:var(--surface-1);border-color:color-mix(in srgb,var(--border) 70%,transparent);box-shadow:none}.sp-mobile-header-drive .sp-connector-trigger-name{max-width:calc(100vw - 160px)}.sp-mobile-header-drive .sp-connector-menu{left:auto;right:0;width:min(330px,calc(100vw - 68px));min-width:0}.storage-page:has(.sp-upload-modal-backdrop) .sp-mobile-header-drive{display:none}.storage-page,.sp-panel{background:var(--bg)}.sp-toolbar{position:sticky;top:0;z-index:12;padding:10px 14px 8px;gap:6px;background:var(--surface-2);border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);box-shadow:none}.sp-toolbar-row.header-row{align-items:center;justify-content:space-between;gap:8px}.sp-breadcrumb{min-width:0;flex:1 1 auto}.sp-toolbar-connector{display:none}.sp-breadcrumb .sp-connector-dropdown{min-width:0;max-width:calc(100vw - 140px)}.sp-breadcrumb .sp-connector-dropdown .sp-connector-trigger{padding:0;min-width:0;max-width:100%;background:transparent;border:0}.sp-connector-trigger-name{max-width:calc(100vw - 210px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-breadcrumb-root-label,.sp-breadcrumb-path{color:var(--text-tertiary);font-size:11px}.sp-meta-capsule{flex-shrink:0;margin-left:auto;padding:5px 9px;gap:5px;background:var(--surface-1);border-color:color-mix(in srgb,var(--border) 70%,transparent);font-size:10px}.sp-mobile-search-toggle{flex-shrink:0}.sp-upload-modal-backdrop{align-items:flex-start;justify-content:center;min-height:100dvh;padding:max(24px,calc(env(safe-area-inset-top) + 14px)) 14px max(16px,env(safe-area-inset-bottom));overflow-y:auto}.sp-upload-modal{margin:0 auto auto;max-height:calc(100dvh - 32px);border-radius:14px}.sp-category-filters{flex:1 1 auto;min-width:0;max-width:100%;gap:6px;padding:2px;margin:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;justify-content:flex-start;background:var(--surface-1);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:12px}.sp-category-filters::-webkit-scrollbar{display:none}.sp-cat-tab{min-height:32px;padding:7px 10px;border-radius:10px;background:transparent;color:var(--text-tertiary);font-size:12px}.sp-cat-tab.active{background:color-mix(in srgb,#229ED9 14%,var(--surface-1));color:var(--text);box-shadow:none}.sp-cat-count{padding:1px 6px;background:color-mix(in srgb,var(--text-tertiary) 12%,transparent);font-size:9px}.sp-actions-right{display:flex;flex:0 0 0;gap:0;align-items:center;justify-content:flex-end;margin-left:0;min-width:0}.sp-toolbar-row.actions-row{position:relative;flex-direction:row;align-items:center;justify-content:stretch;gap:8px;min-height:0}.sp-mobile-tool-toggle{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--border) 76%,transparent);border-radius:10px;background:var(--surface-1);color:var(--text-secondary);cursor:pointer}.sp-mobile-tool-toggle.active{color:#229ed9;background:color-mix(in srgb,#229ED9 12%,var(--surface-1));border-color:color-mix(in srgb,#229ED9 32%,var(--border))}.sp-search{display:none;position:static;width:100%;min-height:38px;padding:0 12px;border-radius:10px;background:var(--surface-1);border-color:color-mix(in srgb,var(--border) 76%,transparent);z-index:30;box-shadow:0 12px 28px #00000047}.sp-toolbar:has(.sp-actions-right.search-open) .sp-category-filters{display:none}.sp-actions-right.search-open{flex:1 1 auto}.sp-actions-right.search-open .sp-search{display:flex}.sp-search input{width:100%;font-size:14px}.sp-secondary-actions{display:none;position:fixed;right:18px;width:44px;box-sizing:border-box;bottom:max(142px,calc(env(safe-area-inset-bottom) + 136px));z-index:27;flex-direction:column;align-items:center;gap:8px;padding:4px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:15px;background:color-mix(in srgb,var(--surface-1) 92%,transparent);box-shadow:0 12px 28px #0000004d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sp-actions-right.tools-open .sp-secondary-actions{display:flex}.sp-view-toggles{display:flex;flex-direction:column;height:auto;gap:8px;border:none;background:transparent}.sp-icon-sm{width:36px;height:36px;border-radius:8px}.sp-upload-btn{position:fixed;right:18px;bottom:max(22px,calc(env(safe-area-inset-bottom) + 16px));z-index:28;display:flex;align-items:center;justify-content:center;gap:0;width:44px;height:44px;padding:0;border-radius:15px;box-shadow:0 14px 32px #229ed952}.sp-actions-right>.sp-mobile-tool-toggle:first-of-type{position:fixed;right:18px;bottom:max(88px,calc(env(safe-area-inset-bottom) + 82px));z-index:28;width:44px;height:44px;border-radius:15px;box-shadow:0 10px 24px #00000038}.sp-actions-right.tools-open>.sp-mobile-tool-toggle:first-of-type{bottom:max(88px,calc(env(safe-area-inset-bottom) + 82px));background:color-mix(in srgb,#229ED9 18%,var(--surface-1));border-color:color-mix(in srgb,#229ED9 42%,var(--border));color:#229ed9}.sp-actions-right.tools-open>.sp-mobile-tool-toggle:first-of-type svg{transform:rotate(45deg)}.sp-upload-btn svg{width:20px;height:20px;display:block}.sp-upload-btn:hover,.sp-upload-btn:active{transform:none}.sp-upload-btn span{display:none}.storage-page:has(.sp-upload-modal-backdrop) .sp-upload-btn{display:none}.storage-page:has(.sp-upload-modal-backdrop) .sp-secondary-actions,.storage-page:has(.sp-upload-modal-backdrop) .sp-actions-right>.sp-mobile-tool-toggle:first-of-type{display:none}.sp-files{padding:14px 16px 96px;background:var(--bg)}.sp-category-group{margin-bottom:26px}.sp-category-header{margin:0 0 12px;padding:0;border-bottom:0}.sp-category-header-label{font-size:14px;letter-spacing:0}.sp-category-header-count{padding:2px 7px;border-radius:999px;background:var(--surface-2);font-size:10px}.sp-category-grid.folders-grid.view-grid{gap:10px}.sp-folder-card{min-height:52px;padding:0 13px;gap:11px;border-radius:10px;background:var(--surface-1);border-color:color-mix(in srgb,var(--border) 78%,transparent);box-shadow:none}.sp-folder-card-icon{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,#229ED9 12%,transparent)}.sp-folder-card-name{font-size:14px;line-height:1.2}.sp-category-grid.view-grid{gap:12px}.view-grid .sp-file-item{border-radius:10px;background:var(--surface-1);border-color:color-mix(in srgb,var(--border) 74%,transparent);box-shadow:none}.view-grid .sp-file-thumb{height:104px;background:#111;border-bottom-color:color-mix(in srgb,var(--border) 65%,transparent)}.view-grid .sp-file-info{padding:9px 10px 10px;gap:5px}.sp-file-name{font-size:13px;line-height:1.25}.sp-file-meta-row{margin-top:0}.sp-file-size{font-size:11px}}@media(min-width:769px)and (max-width:1024px){.sp-category-grid.view-grid{grid-template-columns:repeat(3,1fr)}}.ie-modal-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0cd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:ieFadeIn .3s cubic-bezier(.16,1,.3,1);padding:20px}@keyframes ieFadeIn{0%{opacity:0}to{opacity:1}}.ie-modal-container{background:#0b0b0d;border:1px solid rgba(255,255,255,.05);border-radius:16px;width:100%;max-width:1020px;height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #0000008c;animation:ieScaleIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes ieScaleIn{0%{transform:scale(.95) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.ie-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.04);background:#0b0b0d}.ie-header-left{display:flex;align-items:center;gap:12px;min-width:0}.ie-file-badge{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;background:#229ed91f;color:#229ed9;border-radius:4px;border:1px solid rgba(34,158,217,.2);flex-shrink:0}.ie-file-name{margin:0;font-size:14px;font-weight:600;color:var(--text, #fff);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ie-header-right{display:flex;align-items:center;gap:12px}.ie-btn-reset{background:transparent;border:1px solid var(--border, rgba(255, 255, 255, .1));color:var(--text-secondary, #a1a1aa);padding:8px 14px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.ie-btn-reset:hover{background:var(--surface-3, rgba(255, 255, 255, .04));color:var(--text, #fff);border-color:var(--text-secondary)}.ie-close-btn{background:transparent;border:none;font-size:24px;color:var(--text-tertiary, #71717a);cursor:pointer;padding:0 4px;line-height:1;transition:color .15s}.ie-close-btn:hover{color:#ff453a}.save-split-container{display:flex;position:relative}.ie-btn-save-main{background:#229ed9;color:#fff;border:none;padding:8px 16px;font-size:12px;font-weight:700;border-radius:8px 0 0 8px;cursor:pointer;transition:background .15s}.ie-btn-save-main:hover{background:#1b8bc4}.ie-btn-save-arrow{background:#229ed9;color:#fff;border:none;border-left:1px solid rgba(255,255,255,.25);padding:8px 10px;border-radius:0 8px 8px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.ie-btn-save-arrow:hover{background:#1b8bc4}.ie-save-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:250px;background:var(--surface-2, #202023);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:10px;box-shadow:0 12px 32px #00000059;padding:6px;z-index:10000;display:flex;flex-direction:column;gap:2px;animation:ieDropdownIn .2s cubic-bezier(.16,1,.3,1)}@keyframes ieDropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ie-dropdown-item{display:flex;align-items:flex-start;gap:12px;padding:10px;background:transparent;border:none;border-radius:6px;color:var(--text, #fff);cursor:pointer;text-align:left;transition:background .15s}.ie-dropdown-item:hover{background:var(--surface-3, rgba(255, 255, 255, .05))}.ie-dropdown-icon{font-size:16px;margin-top:1px}.ie-dropdown-title{font-size:12px;font-weight:700}.ie-dropdown-desc{font-size:10px;color:var(--text-tertiary, #71717a);margin-top:2px;line-height:1.3}.ie-body{flex:1;background:#0b0b0d;display:flex;flex-direction:row;position:relative;overflow:hidden}.ie-workspace{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 32px 96px;overflow:auto;min-width:0;position:relative}.ie-canvas-stage{position:relative;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.ie-image-wrap{position:relative;display:inline-block;-webkit-user-select:none;user-select:none;max-width:100%;box-shadow:0 24px 64px #000000a6;border:1px solid rgba(255,255,255,.08)}.ie-main-image{display:block;max-width:100%;max-height:52vh;object-fit:contain;pointer-events:none}.ie-draw-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.ie-crop-box{position:absolute;border:2px solid #229ED9;box-shadow:0 0 0 9999px #00000080;cursor:move;box-sizing:border-box}.crop-grid-line{position:absolute;background:#ffffff4d}.crop-grid-line.h1{top:33.3%;left:0;right:0;height:1px}.crop-grid-line.h2{top:66.6%;left:0;right:0;height:1px}.crop-grid-line.v1{left:33.3%;top:0;bottom:0;width:1px}.crop-grid-line.v2{left:66.6%;top:0;bottom:0;width:1px}.crop-handle{position:absolute;width:12px;height:12px;background:#fff;border:2px solid #229ED9;border-radius:50%;box-shadow:0 2px 6px #0000004d}.crop-handle.nw{top:-6px;left:-6px;cursor:nwse-resize}.crop-handle.ne{top:-6px;right:-6px;cursor:nesw-resize}.crop-handle.se{bottom:-6px;right:-6px;cursor:nwse-resize}.crop-handle.sw{bottom:-6px;left:-6px;cursor:nesw-resize}.ie-floating-container{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;z-index:100;max-width:92%;width:max-content;pointer-events:auto}.ie-floating-shelf{background:#121216d9;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);border-radius:16px;padding:12px 18px;box-shadow:0 12px 40px #00000080;display:flex;flex-direction:column;align-items:stretch;animation:ieShelfFadeUp .25s cubic-bezier(.16,1,.3,1);max-width:100%}@keyframes ieShelfFadeUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ie-floating-dock{display:flex;align-items:center;gap:4px;padding:5px;border-radius:99px;background:#121216d9;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);box-shadow:0 12px 40px #00000080}.ie-dock-btn{background:transparent;border:none;padding:8px 16px;border-radius:99px;font-size:11px;font-weight:600;color:var(--text-secondary, #a1a1aa);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:8px;outline:none}.ie-dock-btn:hover{color:#fff;background:#ffffff0d}.ie-dock-btn.active{color:#fff;background:#ffffff1a;box-shadow:0 2px 8px #0003}.ie-filter-grid-floating{display:flex;gap:8px;overflow-x:auto;max-width:520px;padding:2px 0;scrollbar-width:none}.ie-filter-grid-floating::-webkit-scrollbar{display:none}.ie-filter-card-floating{display:flex;flex-direction:column;align-items:center;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;padding:5px;cursor:pointer;transition:all .15s ease;width:68px;flex-shrink:0}.ie-filter-card-floating:hover{border-color:#229ed9;background:#ffffff0d;transform:translateY(-2px)}.ie-filter-card-floating.active{border-color:#229ed9;background:#229ed91a}.ie-filter-preview-box-floating{width:58px;height:44px;border-radius:4px;overflow:hidden;margin-bottom:4px}.ie-filter-card-label{font-size:10px;font-weight:600;color:var(--text-secondary, #a1a1aa);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.ie-adjust-panel-floating{display:flex;gap:20px;padding:4px 0;overflow-x:auto;max-width:600px;scrollbar-width:none}.ie-adjust-panel-floating::-webkit-scrollbar{display:none}.ie-adjust-panel-floating .ie-adjust-group{flex-shrink:0;width:110px;display:flex;flex-direction:column;gap:6px}.adjust-header{display:flex;justify-content:space-between;font-size:10px;font-weight:600;color:var(--text-secondary, #a1a1aa)}.ie-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.ie-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#229ed9;box-shadow:0 0 4px #0006;cursor:pointer;transition:transform .1s}.ie-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.ie-crop-panel-floating{display:flex;gap:20px;align-items:center}.ie-crop-panel-floating .crop-section{display:flex;flex-direction:column;gap:6px}.border-left-floating{border-left:1px solid rgba(255,255,255,.08);padding-left:20px}.section-title-floating{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary, #71717a);margin-bottom:2px}.ratio-buttons,.transform-buttons{display:flex;gap:6px}.ratio-btn,.transform-btn{background:#ffffff05;border:1px solid rgba(255,255,255,.04);color:var(--text, #fff);padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px}.ratio-btn:hover,.transform-btn:hover{background:#ffffff0a;border-color:#229ed9;color:#229ed9}.ratio-btn.active,.transform-btn.active{background:#229ed91f;border-color:#229ed9;color:#229ed9}.ie-annotate-panel-floating{display:flex;gap:20px;align-items:center}.ie-annotate-panel-floating .tool-selections{display:flex;gap:6px}.tool-btn{background:#ffffff05;border:1px solid rgba(255,255,255,.04);color:var(--text, #fff);padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.tool-btn:hover{background:#ffffff0a;border-color:#229ed9}.tool-btn.active{background:#229ed91f;border-color:#229ed9;color:#229ed9}.tool-options-floating{display:flex;align-items:center;gap:16px}.ie-color-picker{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;background:transparent;padding:0}.ie-color-picker::-webkit-color-swatch-wrapper{padding:0}.ie-color-picker::-webkit-color-swatch{border:1px solid rgba(255,255,255,.2);border-radius:50%}.size-picker-wrap{display:flex;align-items:center;gap:8px}.ie-brush-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:80px;height:4px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.ie-brush-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#229ed9;box-shadow:0 0 4px #0006;cursor:pointer}.size-label{font-size:11px;font-weight:600;color:var(--text-secondary, #a1a1aa);min-width:30px}.annotation-actions{display:flex;gap:6px}.anno-action-btn{background:#ffffff05;border:1px solid rgba(255,255,255,.04);color:var(--text, #fff);padding:6px 12px;border-radius:6px;font-size:11px;cursor:pointer;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s}.anno-action-btn:hover{background:#ffffff0a;border-color:#229ed9}.anno-action-btn.warning{border-color:#ff453a33}.anno-action-btn.warning:hover{background:#ff453a14;color:#ff453a;border-color:#ff453a}.activity-status-indicator{align-self:flex-start;max-width:min(680px,92%);width:100%;display:flex;flex-direction:column;gap:8px;background:color-mix(in srgb,var(--surface) 94%,var(--bg));border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:12px;padding:10px 14px;box-shadow:0 4px 16px #00000008,0 1px 2px #00000004;transition:all .25s cubic-bezier(.4,0,.2,1);animation:activitySlideUp .3s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .activity-status-indicator{background:color-mix(in srgb,var(--surface) 96%,var(--bg));box-shadow:0 4px 20px #00000040,0 1px 3px #0000001a}@keyframes activitySlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.activity-status-content{display:flex;flex-direction:column;gap:8px;width:100%}.activity-status-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.activity-status-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;flex-shrink:0;transition:all .25s ease}.activity-status-icon.phase-connecting{background:#0a84ff1f;color:#0a84ff}.activity-status-icon.phase-routing{background:#5e5ce61f;color:#5e5ce6}.activity-status-icon.phase-retry{background:#ff9f0a1f;color:#ff9f0a}.activity-status-icon.phase-thinking{background:#ff375f1f;color:#ff375f}.activity-status-icon.phase-writing{background:#30d1581f;color:#30d158}.activity-status-icon.phase-tool{background:#64d2ff1f;color:#64d2ff}.activity-status-icon.phase-idle{background:#8e8e931f;color:#8e8e93}.activity-status-icon svg{width:14px;height:14px}.activity-status-icon.phase-connecting svg,.activity-status-icon.phase-routing svg,.activity-status-icon.phase-retry svg{animation:activitySpin 1.4s linear infinite}.activity-status-icon.phase-thinking svg{animation:activityPulse 1.4s ease-in-out infinite}@keyframes activitySpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes activityPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.activity-status-label{font-size:13px;font-weight:600;color:var(--text);letter-spacing:-.01em}.activity-status-message{font-size:12px;font-weight:500;color:var(--text-secondary);background:color-mix(in srgb,var(--border) 35%,transparent);padding:2px 8px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.activity-status-elapsed{font-size:11px;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;background:color-mix(in srgb,var(--border) 25%,transparent);padding:2px 6px;border-radius:4px;margin-left:auto;border:1px solid color-mix(in srgb,var(--border) 35%,transparent)}.activity-status-meta{display:flex;align-items:center;gap:6px;margin-top:2px;flex-wrap:wrap}.activity-meta-chip{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--border) 35%,transparent);color:var(--text-secondary);border:1px solid color-mix(in srgb,var(--border) 50%,transparent);letter-spacing:.02em;text-transform:uppercase}.activity-meta-chip.model{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:none;color:var(--text);background:color-mix(in srgb,var(--accent) 6%,transparent);border-color:color-mix(in srgb,var(--accent) 12%,transparent)}.activity-meta-chip.tier{font-weight:700}.activity-meta-chip.tier-simple{background:#30d1581f;color:#30d158;border-color:#30d15833}.activity-meta-chip.tier-standard{background:#5e5ce61f;color:#5e5ce6;border-color:#5e5ce633}.activity-meta-chip.tier-complex{background:#ff9f0a1f;color:#ff9f0a;border-color:#ff9f0a33}.activity-meta-chip.tier-reasoning{background:#ff375f1f;color:#ff375f;border-color:#ff375f33}.activity-status-indicator .thinking-details{border-top:1px solid color-mix(in srgb,var(--border) 45%,transparent);margin-top:8px;padding-top:8px}.activity-status-indicator .thinking-summary{font-size:11px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none;background:transparent;width:max-content;outline:none}.activity-status-indicator .thinking-content{margin-top:6px;padding:8px 10px;background:#09090b!important;color:#a1a1aa!important;border:1px solid #27272a!important;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;font-size:11.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow-y:auto}.gk-modal{max-width:min(680px,95vw)}.gk-body{max-height:65vh;overflow-y:auto;padding:16px 20px}.gk-tabs{display:flex;gap:1px;background:var(--border);margin:0 16px;border-radius:8px;overflow:hidden}.gk-tab-btn{flex:1;padding:8px 12px;border:none;cursor:pointer;font-weight:600;font-size:12px;transition:background .15s,color .15s}.gk-tab-btn.active{background:var(--accent);color:#fff}.gk-tab-btn:not(.active){background:var(--bg);color:var(--text)}.gk-section{padding:12px 0}.gk-env-card{background:var(--surface);border-radius:8px;padding:12px;margin-bottom:8px;border:1px solid var(--border)}.gk-env-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.gk-env-header strong{font-size:13px}.gk-env-badge{font-size:10px;color:var(--text-tertiary);background:var(--bg);padding:2px 6px;border-radius:4px}.gk-env-details{font-size:12px;color:var(--text-tertiary);display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}.gk-env-actions{display:flex;gap:6px;margin-top:8px}.gk-btn-sm{padding:4px 10px;font-size:11px;border-radius:6px}.gk-btn-secondary{background:var(--surface);border:1px solid var(--border)}.gk-btn-danger{padding:4px 10px;font-size:11px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer}.gk-btn-cancel{padding:7px 14px;border-radius:6px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:13px;color:var(--text)}.gk-empty{text-align:center;padding:24px;color:var(--text-tertiary);font-size:13px}.gk-add-btn{margin-top:8px;width:100%}.gk-form-card{background:var(--surface);border-radius:8px;padding:12px;margin-top:8px;border:1px solid var(--border)}.gk-form-title{margin:0 0 12px;font-size:14px;font-weight:600}.gk-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gk-span-2{grid-column:1 / -1}.gk-field{margin-bottom:0}.gk-label{display:block;font-size:11px;font-weight:600;margin-bottom:4px;color:var(--text-secondary)}.gk-input{width:100%;padding:7px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;box-sizing:border-box}.gk-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.gk-textarea{width:100%;min-height:52px;padding:7px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;box-sizing:border-box;font-family:inherit;resize:vertical}.gk-subhead{margin:12px 0 6px;font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);padding-bottom:4px}.gk-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.gk-env-select{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.gk-select-inline{width:auto;min-width:200px}.gk-tool-list{display:flex;flex-direction:column;gap:.5rem}.gk-tool-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--surface);border-radius:6px;border:1px solid var(--border)}.gk-tier-dot{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.7rem;flex-shrink:0}.gk-tool-name{flex:1;font-weight:600;font-size:.9rem}.gk-tool-controls{font-size:.75rem;color:var(--text-muted, #999);display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.gk-tool-slider{display:flex;align-items:center;gap:.3rem}.gk-tool-value{min-width:40px;text-align:right}.gk-number-input{width:60px;padding:.15rem;border-radius:4px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.75rem}.gk-tool-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem}.gk-tier-select{padding:.2rem;border-radius:4px;border:1px solid var(--border);font-size:.75rem;background:var(--bg);color:var(--text)}.gk-check-label{font-size:.75rem;display:flex;align-items:center;gap:.3rem}.gk-filter-row{display:flex;gap:.5rem;margin-bottom:1rem}.gk-audit-list{display:flex;flex-direction:column;gap:.3rem}.gk-audit-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;background:var(--surface);border-radius:4px;border:1px solid var(--border);font-size:.8rem}.gk-tier-tag{font-weight:700;min-width:40px}.gk-audit-time{color:var(--text-muted, #999);min-width:90px}.gk-audit-tool{font-weight:600;min-width:100px}.gk-audit-cmd{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted, #999)}.gk-audit-approval{font-size:.7rem}.gk-audit-duration{color:var(--text-muted, #999);font-size:.7rem;min-width:60px;text-align:right}.drawing-pad-container{display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg);overflow:hidden;position:relative}.canvas-bg-dots{background-image:radial-gradient(color-mix(in srgb,var(--text) 15%,transparent) 1px,transparent 0);background-size:24px 24px;background-position:center}.drawing-pad-toolbar{position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:3px;padding:5px 8px;max-width:calc(100vw - 32px);background:color-mix(in srgb,var(--surface) 75%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--border) 55%,transparent);border-radius:999px;box-shadow:0 8px 32px #00000038,0 0 0 1px #ffffff0d inset;overflow:visible;transition:box-shadow .25s,transform .25s cubic-bezier(.34,1.56,.64,1);white-space:nowrap}.drawing-pad-toolbar:hover{box-shadow:0 12px 40px #00000047,0 0 0 1px #ffffff14 inset;transform:translate(-50%) translateY(-2px)}.dtb-group{display:flex;align-items:center;gap:1px;flex-shrink:0}.dtb-group--params{gap:4px;padding:0 2px}.dtb-divider{width:1px;height:20px;background:color-mix(in srgb,var(--border) 55%,transparent);margin:0 3px;flex-shrink:0;border-radius:1px}.dtb-divider--xs{height:14px;margin:0 1px}.dtb-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,transform .15s;flex-shrink:0;position:relative}.dtb-btn:hover{background:var(--hover-bg);color:var(--text);transform:scale(1.08)}.dtb-btn.active{background:var(--accent);color:#fff;box-shadow:0 3px 10px color-mix(in srgb,var(--accent) 40%,transparent)}.dtb-btn:disabled{opacity:.25;cursor:not-allowed;transform:none}.dtb-btn--accent{color:var(--accent)}.dtb-btn--accent:hover{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.dtb-unsaved-dot{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--warning-text);box-shadow:0 0 6px var(--warning-text);border:1px solid var(--surface);pointer-events:none}.dtb-layer-badge{position:absolute;top:1px;right:1px;min-width:13px;height:13px;border-radius:999px;background:var(--accent);color:#fff;font-size:8px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 2px;pointer-events:none;line-height:1}.dtb-color-btn{width:22px;height:22px;border-radius:50%;cursor:pointer;flex-shrink:0;transition:transform .15s;box-shadow:0 2px 6px #00000040}.dtb-color-btn:hover{transform:scale(1.18)}.dtb-color-pop{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--border) 55%,transparent);border-radius:14px;padding:10px;box-shadow:0 12px 40px #0000004d,0 0 0 1px #ffffff0f inset;z-index:200;animation:popIn .18s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{opacity:0;transform:translate(-50%) scale(.88) translateY(6px)}to{opacity:1;transform:translate(-50%) scale(1) translateY(0)}}.dtb-color-pop-grid{display:grid;grid-template-columns:repeat(5,24px);gap:6px}.dtb-color-pop-swatch{width:24px;height:24px;border-radius:50%;cursor:pointer;flex-shrink:0;transition:transform .15s,outline .1s;box-shadow:0 2px 5px #0003}.dtb-color-pop-swatch:hover{transform:scale(1.22)}.dtb-color-pop-swatch.active{outline:2px solid var(--accent);outline-offset:3px;transform:scale(1.12)}.dtb-color-pop-custom{position:relative;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.dtb-color-pop-custom input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0}.dtb-color-pop-custom span{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px dashed rgba(255,255,255,.4);transition:transform .15s;pointer-events:none;box-shadow:0 2px 5px #0003}.dtb-color-pop-custom:hover span{transform:scale(1.22)}.dtb-color-pop-custom span svg{opacity:.8;color:#fff;mix-blend-mode:difference}.dtb-size-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:background .15s,transform .15s;flex-shrink:0}.dtb-size-btn:hover{background:var(--hover-bg);transform:scale(1.08)}.dtb-size-dot{border-radius:50%;background:var(--text-secondary);flex-shrink:0;transition:background .15s}.dtb-size-pop{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:8px 10px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--border) 55%,transparent);border-radius:12px;box-shadow:0 12px 40px #0000004d,0 0 0 1px #ffffff0f inset;z-index:200;animation:popIn .18s cubic-bezier(.34,1.56,.64,1)}.dtb-size-pop-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:7px;background:transparent;cursor:pointer;transition:background .15s}.dtb-size-pop-btn:hover{background:var(--hover-bg)}.dtb-size-pop-btn.active{background:color-mix(in srgb,var(--accent) 18%,transparent)}.dtb-size-pop-btn.active .dtb-size-dot{background:var(--text)}.dtb-text-size-label{font-size:9px;font-weight:800;color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase}.dtb-size-pop-btn.active .dtb-text-size-label{color:var(--accent)}.dtb-opacity-wrap{display:flex;align-items:center;gap:4px;flex-shrink:0}.dtb-opacity-slider{width:60px;accent-color:var(--accent);cursor:pointer}.dtb-opacity-label{font-size:10px;font-weight:700;color:var(--text-secondary);min-width:28px;text-align:right}.dtb-zoom-label{font-size:10px;font-weight:700;color:var(--text-secondary);min-width:34px;text-align:center;background:none;border:none;cursor:pointer;padding:3px 4px;border-radius:6px;transition:background .15s,color .15s;flex-shrink:0}.dtb-zoom-label:hover{background:var(--hover-bg);color:var(--text)}@media(max-width:900px){.drawing-pad-toolbar{gap:2px;padding:5px 7px}.dtb-opacity-label{display:none}.dtb-opacity-slider{width:48px}}@media(max-width:700px){.drawing-pad-toolbar{gap:1px;padding:4px 6px;bottom:12px}.dtb-btn{width:28px;height:28px;border-radius:7px}.dtb-divider{margin:0 2px}.dtb-opacity-wrap{display:none}.dtb-zoom-label{min-width:28px;font-size:9px}}@media(max-width:480px){.drawing-pad-toolbar{gap:0px;padding:4px 5px;border-radius:16px}.dtb-btn{width:26px;height:26px;border-radius:6px}.dtb-color-btn{width:20px;height:20px}.dtb-size-btn{width:26px;height:26px}.dtb-divider{margin:0 1px}.dtb-zoom-label{display:none}}.drawing-toolbar-group{display:flex;align-items:center;gap:4px;flex-shrink:0}.drawing-toolbar-divider{width:1px;height:24px;background:color-mix(in srgb,var(--border) 60%,transparent);margin:0 4px;flex-shrink:0;border-radius:1px}.drawing-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275);flex-shrink:0;position:relative}.drawing-toolbar-btn:hover{background:var(--hover-bg);color:var(--text);transform:scale(1.1)}.drawing-toolbar-btn.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 40%,transparent)}.drawing-toolbar-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.drawing-toolbar-btn.accent{color:var(--accent)}.drawing-toolbar-btn.accent:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}.drawing-unsaved-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--warning-text);box-shadow:0 0 8px var(--warning-text);border:1px solid var(--surface)}.drawing-colors-scroll{display:flex;gap:8px;padding:4px 0}.drawing-color-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 2px 4px #0000001a}.drawing-color-swatch:hover{transform:scale(1.2);box-shadow:0 4px 8px #0003}.drawing-color-swatch.active{outline:2px solid var(--accent);outline-offset:3px;transform:scale(1.15)}.drawing-color-swatch.fill{border-radius:6px;width:24px;height:24px}.drawing-size-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:transparent;cursor:pointer;flex-shrink:0;transition:all .2s ease}.drawing-size-btn.active,.drawing-size-btn:hover{background:var(--hover-bg);transform:scale(1.1)}.drawing-size-dot{border-radius:50%;background:var(--text-secondary);transition:all .2s ease}.drawing-size-btn.active .drawing-size-dot{background:var(--text)}.drawing-opacity-slider{width:70px;accent-color:var(--accent);cursor:pointer}.drawing-opacity-label{font-size:12px;font-weight:600;color:var(--text-secondary);min-width:32px;text-align:center}.drawing-size-input{width:36px;padding:2px 4px;background:color-mix(in srgb,var(--bg) 50%,transparent);border:1px solid color-mix(in srgb,var(--border) 50%,transparent);border-radius:4px;color:var(--text);font-size:11px;text-align:center}.drawing-pad-canvas-wrap{flex:1;display:flex;align-items:stretch;justify-content:stretch;overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;touch-action:none}.drawing-pad-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.drawing-layers-panel{position:absolute;top:16px;right:16px;width:260px;max-height:calc(100% - 110px);display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface) 80%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:16px;box-shadow:0 8px 32px #00000047,0 0 0 1px #ffffff0d inset;z-index:110;overflow:hidden;animation:slideInRight .22s cubic-bezier(.175,.885,.32,1.275)}@keyframes slideInRight{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.drawing-layers-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);flex-shrink:0}.drawing-layers-title{font-size:13px;font-weight:700;color:var(--text);letter-spacing:.02em}.drawing-layers-list{overflow-y:auto;overflow-x:hidden;flex:1;padding:6px;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--border) 60%,transparent) transparent}.drawing-layer-item{border-radius:10px;padding:8px 10px 6px;cursor:pointer;transition:background .15s,box-shadow .15s;border:1.5px solid transparent;background:color-mix(in srgb,var(--bg) 50%,transparent)}.drawing-layer-item:hover{background:color-mix(in srgb,var(--hover-bg) 70%,transparent)}.drawing-layer-item.active{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent) inset}.drawing-layer-row{display:flex;align-items:center;gap:6px}.drawing-layer-name{flex:1;font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:text}.drawing-layer-name-input{flex:1;font-size:12px;font-weight:500;color:var(--text);background:color-mix(in srgb,var(--bg) 80%,transparent);border:1px solid var(--accent);border-radius:5px;padding:2px 6px;outline:none;min-width:0}.drawing-layer-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.drawing-layer-item:hover .drawing-layer-actions,.drawing-layer-item.active .drawing-layer-actions{opacity:1}.drawing-layer-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;padding:0;transition:background .12s,color .12s,transform .12s;flex-shrink:0}.drawing-layer-icon-btn:hover{background:var(--hover-bg);color:var(--text);transform:scale(1.12)}.drawing-layer-icon-btn.danger:hover{background:color-mix(in srgb,#ef4444 20%,transparent);color:#ef4444}.drawing-layer-icon-btn:disabled{opacity:.2;cursor:not-allowed;transform:none}.drawing-layer-opacity-row{display:flex;align-items:center;gap:6px;margin-top:6px;padding-top:4px;border-top:1px solid color-mix(in srgb,var(--border) 25%,transparent)}.drawing-layer-opacity-label{font-size:10px;font-weight:600;color:var(--text-secondary);min-width:42px;text-transform:uppercase;letter-spacing:.04em}.drawing-active-layer-badge{position:absolute;bottom:90px;left:16px;display:flex;align-items:center;gap:6px;padding:5px 12px 5px 10px;background:color-mix(in srgb,var(--surface) 75%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid color-mix(in srgb,var(--border) 50%,transparent);border-radius:999px;font-size:11px;font-weight:600;color:var(--text-secondary);cursor:pointer;z-index:100;-webkit-user-select:none;user-select:none;transition:background .15s,color .15s;box-shadow:0 4px 16px #00000026}.drawing-active-layer-badge:hover{background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--text)}.drawing-layer-count-badge{position:absolute;top:2px;right:2px;min-width:14px;height:14px;border-radius:999px;background:var(--accent);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;pointer-events:none;line-height:1}.drawing-text-edit{position:absolute;z-index:50;background:transparent;border:1.5px dashed rgba(56,189,248,.6);border-radius:4px;padding:0 4px;resize:none;overflow:hidden;outline:none;font-family:Inter,system-ui,sans-serif;line-height:1.35;white-space:pre;min-width:6ch;box-shadow:0 0 0 4px #38bdf81a;caret-color:currentColor}.drawing-custom-color-wrap{position:relative;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.drawing-custom-color-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.drawing-custom-color-swatch{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .15s;border:2px solid rgba(255,255,255,.25);flex-shrink:0;overflow:hidden;pointer-events:none}.drawing-custom-color-wrap:hover .drawing-custom-color-swatch{transform:scale(1.2)}.drawing-custom-color-swatch svg{opacity:.8;color:#fff;mix-blend-mode:difference}.drawing-selection-bar{position:absolute;top:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:6px 12px;background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:999px;font-size:12px;font-weight:600;color:var(--text-secondary);z-index:90;pointer-events:auto;box-shadow:0 4px 20px #0003;white-space:nowrap;text-transform:capitalize;animation:fadeInDown .15s ease}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%) translateY(-6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.drawing-sel-delete-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:none;border-radius:999px;background:color-mix(in srgb,#ef4444 18%,transparent);color:#f87171;cursor:pointer;font-size:11px;font-weight:600;transition:background .15s,color .15s}.drawing-sel-delete-btn:hover{background:color-mix(in srgb,#ef4444 30%,transparent);color:#fca5a5}.diagram-selected-info{display:flex;align-items:center;gap:6px}.diagram-selected-type{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:0 6px;background:var(--hover-bg);border-radius:4px}.drawing-save-modal{width:min(90vw,420px);max-height:80vh;height:auto!important;display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface) 80%,transparent)!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid color-mix(in srgb,var(--border) 50%,transparent)!important;box-shadow:0 24px 64px #0006,0 0 0 1px #ffffff0d inset!important;border-radius:16px!important}@media(max-width:600px){.save-modal-overlay{align-items:center;padding:16px}.drawing-save-modal{width:100%;max-width:400px;max-height:85vh;height:auto;border-radius:16px!important;margin:0}}.drawing-save-modal .modal-body{overflow-y:auto;flex:1;padding:16px 20px 20px}.drawing-save-modal .modal-header{border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent);padding:14px 20px}.drawing-save-modal .form-row{margin-bottom:12px}.drawing-save-modal .drawing-save-list-header{margin:12px 0 8px}@media(max-width:480px){.drawing-save-modal .modal-header{padding:12px 16px}.drawing-save-modal .modal-body{padding:12px 16px 16px}}.drawing-save-list-header{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin:16px 0 12px}.drawing-save-list{display:flex;flex-direction:column;gap:6px}.drawing-save-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-secondary);background:color-mix(in srgb,var(--surface) 40%,transparent);border:1px solid transparent;transition:all .2s ease}.drawing-save-item:hover{background:var(--hover-bg);color:var(--text);border-color:color-mix(in srgb,var(--border) 50%,transparent);transform:translate(4px)}.drawing-save-thumb{width:40px;height:40px;border-radius:6px;object-fit:cover;border:1px solid color-mix(in srgb,var(--border) 50%,transparent);background:#1a1a2e;box-shadow:0 2px 8px #0003}.save-loc-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.save-loc-tab{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;background:color-mix(in srgb,var(--surface) 40%,transparent);border:1px solid color-mix(in srgb,var(--border) 25%,transparent);color:var(--text-tertiary);transition:all .15s ease;white-space:nowrap}.save-loc-tab:hover{background:var(--hover-bg);color:var(--text-secondary);border-color:color-mix(in srgb,var(--border) 40%,transparent)}.save-loc-tab.active{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent)}.save-loc-tab svg{flex-shrink:0;opacity:.6}.save-loc-tab.active svg{opacity:1}.text-edit-modal{width:min(90vw,380px);height:auto!important;max-height:90vh;display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface) 85%,transparent)!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid color-mix(in srgb,var(--border) 45%,transparent)!important;box-shadow:0 24px 64px #0006,0 0 0 1px #ffffff0d inset!important;border-radius:16px!important;animation:modalScaleIn .22s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.text-edit-modal .modal-header{padding:18px 20px 12px;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.text-edit-modal .modal-header h2{font-size:16px;font-weight:600;color:var(--text)}.text-edit-modal .modal-body{padding:16px 20px 20px}.text-edit-textarea{width:100%;background:#00000026!important;color:var(--text)!important;border:1px solid color-mix(in srgb,var(--border) 60%,transparent)!important;border-radius:10px!important;padding:12px!important;font-size:14px!important;line-height:1.5!important;font-family:inherit!important;resize:none!important;outline:none!important;transition:all .2s ease!important}.text-edit-textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)!important;background:#00000040!important}.text-edit-overlay{display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important}.workspace-select-list{display:flex;flex-direction:column;gap:10px;max-height:380px;overflow-y:auto;padding-right:4px}.workspace-select-option{width:100%;display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:12px;border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1)}.workspace-select-option:hover{transform:translateY(-2px) scale(1.01);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 3%,var(--surface));box-shadow:0 8px 24px #0000000a}.workspace-select-option:active{transform:translateY(0) scale(1)}.workspace-select-option .ws-avatar{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:#fff;flex-shrink:0}.workspace-select-option.global-option .ws-avatar{background:linear-gradient(135deg,#1e293b,#0f172a)}[data-theme=light] .workspace-select-option.global-option .ws-avatar{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#334155;border:1px solid #cbd5e1}.workspace-select-option .ws-details{display:flex;flex-direction:column;gap:2px;min-width:0}.workspace-select-option .ws-name{font-size:15px;font-weight:600;color:var(--text)}.workspace-select-option .ws-path{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-select-overlay{display:flex!important;align-items:center!important;justify-content:center!important}.workspace-select-modal{width:480px!important;max-width:90vw!important;height:auto!important;max-height:85vh!important;margin:auto!important}.settings-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0b10a6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:settingsFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes settingsFadeIn{0%{opacity:0}to{opacity:1}}.settings-modal{background:var(--surface);border-radius:20px;width:95%;max-width:920px;height:85vh;display:flex!important;flex-direction:row!important;border:1px solid var(--border);box-shadow:0 32px 64px -16px #0006,0 0 1px 1px #ffffff14;overflow:hidden!important;animation:settingsSpringIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes settingsSpringIn{0%{opacity:0;transform:scale(.94) translateY(15px)}to{opacity:1;transform:scale(1) translateY(0)}}.settings-sidebar{width:240px;background:var(--bg);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:24px 16px;flex-shrink:0}.settings-sidebar-header{margin-bottom:24px;padding:0 12px}.settings-sidebar-header h2{font-size:18px;font-weight:800;color:var(--text);letter-spacing:-.02em;margin:0}.settings-sidebar-tabs{display:flex;flex-direction:column;gap:6px;flex:1}.settings-sidebar-tab{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;font-size:13px;font-weight:550;color:var(--text-secondary);background:transparent;border:none;border-radius:12px;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.settings-sidebar-tab svg{color:var(--text-tertiary);transition:color .2s ease,transform .2s ease;flex-shrink:0}.settings-sidebar-tab:hover{background:var(--surface);color:var(--text)}.settings-sidebar-tab:hover svg{color:var(--text-secondary);transform:translate(1px)}.settings-sidebar-tab.active{background:var(--accent-light, rgba(91, 95, 199, .12));color:var(--accent);font-weight:600}.settings-sidebar-tab.active svg{color:var(--accent)}.settings-content{flex:1;display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface)}.settings-content-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px 12px;border-bottom:1px solid transparent}.settings-content-header h3{font-size:16px;font-weight:700;color:var(--text);margin:0;text-transform:capitalize}.settings-close-btn{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .15s ease}.settings-close-btn:hover{background:var(--bg);color:var(--text);transform:rotate(90deg)}.settings-content-body{flex:1;padding:12px 32px 32px;overflow-y:auto}.settings-card-premium{background:var(--surface-1, rgba(255, 255, 255, .015));border:1px solid var(--border);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:0 4px 12px #00000005;transition:all .25s cubic-bezier(.16,1,.3,1);margin-bottom:16px}.settings-card-premium:hover{border-color:var(--border-hover, color-mix(in srgb, var(--accent) 30%, var(--border)));box-shadow:0 8px 24px #0000000a}.color-preset-premium{width:32px;height:32px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1.5px var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.color-preset-premium:hover{transform:scale(1.15);box-shadow:0 0 0 2px var(--text-secondary)}.color-preset-premium.active{transform:scale(1.1);box-shadow:0 0 0 2.5px var(--accent)}.orb-color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;background:var(--bg);padding:16px;border-radius:14px;border:1px solid var(--border)}.orb-color-widget{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s ease;position:relative}.orb-color-widget:hover{border-color:var(--text-tertiary);transform:translateY(-1px)}.orb-color-widget input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.orb-glow-preview{width:32px;height:32px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15);position:relative;box-shadow:0 0 10px var(--orb-color, #ff1493),inset 0 2px 4px #fff3;background:radial-gradient(circle at 35% 35%,#fff 0%,var(--orb-color) 40%,color-mix(in srgb,var(--orb-color) 80%,#000) 100%);transition:transform .2s ease}.orb-color-widget:hover .orb-glow-preview{transform:scale(1.1) rotate(15deg)}.orb-widget-info{display:flex;flex-direction:column;gap:2px}.orb-widget-name{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.orb-widget-hex{font-size:12px;font-weight:600;color:var(--text-secondary);font-family:monospace}.premium-range-group{display:flex;flex-direction:column;gap:6px;background:var(--bg);padding:12px 16px;border-radius:12px;border:1px solid var(--border)}.premium-range-header{display:flex;justify-content:space-between;font-size:12px;font-weight:600}.premium-range-title{color:var(--text-secondary)}.premium-range-value{color:var(--accent)}.premium-slider{-webkit-appearance:none;width:100%;height:6px;border-radius:3px;background:var(--border);outline:none;accent-color:var(--accent);transition:all .2s ease}.premium-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent);border:2.5px solid var(--surface);box-shadow:0 0 8px var(--accent);cursor:pointer;transition:transform .15s ease,background-color .15s ease}.premium-slider::-webkit-slider-thumb:hover{transform:scale(1.25);background:var(--accent-hover)}@media(max-width:768px){.settings-modal{flex-direction:column!important;width:100%!important;max-width:100%!important;height:95vh!important;border-radius:24px 24px 0 0!important;margin:0!important;align-self:flex-end}.settings-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);padding:12px 16px 8px}.settings-sidebar-header{display:none!important}.settings-sidebar-tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;gap:4px}.settings-sidebar-tabs::-webkit-scrollbar{display:none}.settings-sidebar-tab{padding:6px 12px;white-space:nowrap;border-radius:8px;font-size:12px}.settings-content{height:auto!important;min-height:0!important;flex:1!important}.settings-content-header{padding:12px 16px 6px}.settings-content-body{padding:8px 16px 20px}}@media(max-width:480px){.orb-color-grid{grid-template-columns:1fr!important;gap:12px!important}}.msg-saved-memories{margin:12px 14px;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--accent) 4%,var(--surface));border:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);font-size:13px;transition:border-color .2s ease,background .2s ease;animation:savedMemorySlideIn .3s cubic-bezier(.16,1,.3,1) both}.msg-saved-memories:hover{background:color-mix(in srgb,var(--accent) 7%,var(--surface));border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.saved-memories-header{font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px;margin-bottom:6px;letter-spacing:-.01em}.memory-saved-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.saved-memories-list{display:flex;flex-direction:column;gap:4px}.saved-memory-item{display:flex;align-items:baseline;color:var(--text-secondary);font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12px}.saved-memory-prefix{color:var(--text-tertiary);margin-right:6px;font-weight:700;opacity:.7}.saved-memory-link{color:var(--accent);background:none;border:none;padding:0;margin:0;font-family:inherit;font-size:inherit;font-weight:600;cursor:pointer;border-bottom:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);transition:all .2s ease}.saved-memory-link:hover{color:color-mix(in srgb,var(--accent) 80%,var(--text));border-bottom-style:solid}.saved-memory-desc{margin-left:4px;color:var(--text-secondary);opacity:.85}@keyframes savedMemorySlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.db-connection-manager{display:flex;flex-direction:column;gap:24px;animation:dbFadeIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes dbFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.db-connections-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:16px;margin-bottom:4px}[data-theme=light] .db-connections-header{border-bottom-color:#0000000f}.db-connections-header h3{font-size:20px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text),color-mix(in srgb,var(--accent) 70%,var(--text)));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.db-connection-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999;display:flex;justify-content:flex-end;animation:drawerFadeIn .25s cubic-bezier(.16,1,.3,1) both}.db-connection-drawer{width:420px;max-width:90vw;height:100%;background:var(--surface);box-shadow:-8px 0 32px #0006;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;animation:drawerSlideIn .35s cubic-bezier(.16,1,.3,1) both}[data-theme=light] .db-connection-drawer{background:#fff;border-left-color:#00000014;box-shadow:-8px 0 32px #0000001a}@keyframes drawerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes drawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.db-drawer-header{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between}[data-theme=light] .db-drawer-header{border-bottom-color:#0000000d}.db-drawer-header h4{font-size:16px;font-weight:750;color:var(--text);margin:0}.db-drawer-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.db-drawer-close:hover{background:#ffffff0d;color:var(--text)}[data-theme=light] .db-drawer-close:hover{background:#0000000d}.db-connection-form{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.db-connection-form .form-row{display:flex;flex-direction:column;gap:6px}.db-connection-form .form-row label{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.db-connection-form .form-row input,.db-connection-form .form-row select{padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#0003;color:var(--text);font-size:13.5px;outline:none;transition:border-color .2s,box-shadow .2s}[data-theme=light] .db-connection-form .form-row input,[data-theme=light] .db-connection-form .form-row select{background:#f8fafc;border-color:#0000001a}.db-connection-form .form-row input:focus,.db-connection-form .form-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.db-connection-form .form-actions{display:flex;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}[data-theme=light] .db-connection-form .form-actions{border-top-color:#0000000d}.db-connections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.db-connection-card{position:relative;display:flex;flex-direction:column;padding:20px;border-radius:12px;background:var(--surface);border:1px solid rgba(128,128,128,.12);box-shadow:0 1px 3px #0000000a;transition:box-shadow .2s ease,border-color .2s ease}[data-theme=light] .db-connection-card{background:#fff;border-color:#00000014;box-shadow:0 1px 2px #00000008}.db-connection-card:hover{border-color:#3b82f64d;box-shadow:0 4px 12px #0000000f}[data-theme=light] .db-connection-card:hover{box-shadow:0 4px 16px #0000000a}.db-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.db-brand-wrap{display:flex;align-items:center;gap:12px}.db-brand-icon-circle{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600}.db-connection-card[data-type=postgres] .db-brand-icon-circle{background:#3367911a;color:#336791;border:1px solid rgba(51,103,145,.15)}.db-connection-card[data-type=mysql] .db-brand-icon-circle{background:#f291111a;color:#d97706;border:1px solid rgba(242,145,17,.15)}.db-connection-card[data-type=sqlite] .db-brand-icon-circle{background:#008cc21a;color:#008cc2;border:1px solid rgba(0,140,194,.15)}.db-card-name-sec{display:flex;flex-direction:column;gap:2px}.db-card-name{font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em}.db-card-type{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:capitalize}.db-status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500;background:#8080800f;color:var(--text-secondary)}.db-status-dot{width:5px;height:5px;border-radius:50%;background:var(--text-tertiary)}.db-status-badge.online{background:#16a34a14;color:#16a34a}.db-status-badge.online .db-status-dot{background:#16a34a}.db-status-badge.failed{background:#dc262614;color:#dc2626}.db-status-badge.failed .db-status-dot{background:#dc2626}.db-card-middle{margin-bottom:20px}.db-meta-info{display:flex;flex-direction:column;gap:6px}.db-meta-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.db-meta-item svg{opacity:.5;flex-shrink:0}.db-meta-item .db-val{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-card-actions{display:flex;gap:8px;border-top:1px solid rgba(128,128,128,.08);padding-top:14px;margin-top:auto}[data-theme=light] .db-card-actions{border-top-color:#0000000f}.db-card-actions button{flex:1;padding:7px 10px;border-radius:8px;border:1px solid rgba(128,128,128,.1);background:transparent;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}[data-theme=light] .db-card-actions button{border-color:#00000014}.db-card-actions button:hover{background:#8080800f;color:var(--text);border-color:#80808026}.db-card-actions button.accent-action{background:#3b82f6;color:#fff;border-color:#3b82f6}.db-card-actions button.accent-action:hover{background:#2563eb;border-color:#2563eb}.db-card-actions button.danger-action:hover{background:#dc262614;color:#dc2626;border-color:#dc262633}.db-card-actions button.icon-action{flex:0 0 auto;width:32px;height:32px;padding:0}.db-toasts-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:10000;pointer-events:none}.db-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-radius:12px;background:#14151ce6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 40px #0006;color:#fff;font-size:13px;width:320px;animation:toastFadeIn .3s cubic-bezier(.16,1,.3,1) both;transition:all .25s ease}[data-theme=light] .db-toast{background:#fffffff2;border-color:#00000014;box-shadow:0 10px 40px #0000001f;color:#1f2937}@keyframes toastFadeIn{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.db-toast.success{border-left:4px solid #10b981}.db-toast.error{border-left:4px solid #ef4444}.db-toast.info{border-left:4px solid var(--accent)}.db-toast-icon{flex-shrink:0;margin-top:2px}.db-toast-icon.success{color:#10b981}.db-toast-icon.error{color:#ef4444}.db-toast-icon.info{color:var(--accent)}.db-toast-content{flex:1}.db-toast-title{font-weight:750;margin-bottom:2px}.db-toast-msg{opacity:.8;font-size:12px;word-break:break-word}.db-toast-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;opacity:.6;transition:opacity .2s;padding:2px;border-radius:6px;display:flex;align-items:center;justify-content:center}.db-toast-close:hover{opacity:1}.db-confirm-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:drawerFadeIn .2s ease both}.db-confirm-dialog{width:400px;max-width:90vw;background:var(--surface);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:24px;box-shadow:0 20px 50px #0006;animation:confirmScaleIn .3s cubic-bezier(.16,1,.3,1) both}[data-theme=light] .db-confirm-dialog{background:#fff;border-color:#00000014;box-shadow:0 20px 50px #0000001f}@keyframes confirmScaleIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.db-confirm-icon{width:48px;height:48px;border-radius:12px;background:#ef44441a;color:#ef4444;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}.db-confirm-title{font-size:16px;font-weight:800;color:var(--text);margin-bottom:8px}.db-confirm-msg{font-size:13.5px;color:var(--text-secondary);line-height:1.5;margin-bottom:24px}.db-confirm-actions{display:flex;justify-content:flex-end;gap:12px}.db-client-panel{display:flex;flex-direction:column;height:100%;min-height:55vh;margin:0;overflow:hidden;position:relative;background:var(--surface);animation:dbFadeIn .35s cubic-bezier(.16,1,.3,1) both}.db-client-panel:before{display:none}.db-client-header{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border);z-index:10;flex-shrink:0}.db-client-title{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.db-client-conn-name{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-client-type-badge{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.db-client-type-badge svg{width:12px;height:12px}.db-client-db-detail{display:none}.back-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;color:var(--text-secondary);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0;padding:0}.back-btn:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--text);border-color:color-mix(in srgb,var(--accent) 15%,transparent)}.refresh-schema-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;color:var(--text-secondary);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0;padding:0}.refresh-schema-btn:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--text);border-color:color-mix(in srgb,var(--accent) 15%,transparent)}.back-btn:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text);border-color:color-mix(in srgb,var(--accent) 20%,transparent);transform:translate(-2px)}.back-btn svg{transition:transform .2s ease}.back-btn:hover svg{transform:translate(-2px)}.refresh-schema-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;font-weight:650;font-size:12px;color:var(--text-secondary);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;flex-shrink:0}.refresh-schema-btn:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text);border-color:color-mix(in srgb,var(--accent) 20%,transparent)}.refresh-schema-btn svg{transition:transform .4s cubic-bezier(.16,1,.3,1)}.refresh-schema-btn:active svg{transform:rotate(180deg)}.db-client-layout{display:flex;flex:1;min-height:0;position:relative}.db-client-sidebar{width:240px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--accent) 1%,var(--surface));display:flex;flex-direction:column;flex-shrink:0}.db-client-sidebar .sidebar-list::-webkit-scrollbar{width:3px}.db-client-sidebar .sidebar-list::-webkit-scrollbar-track{background:transparent}.db-client-sidebar .sidebar-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.db-client-sidebar .sidebar-list::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sidebar-search{padding:12px;border-bottom:1px solid var(--border)}.sidebar-search input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;outline:none;transition:all .25s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.sidebar-search input::placeholder{color:var(--text-tertiary)}.sidebar-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.sidebar-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.sidebar-section-title{font-size:9px;font-weight:800;color:var(--text-tertiary);letter-spacing:.1em;padding:12px 8px 4px;text-transform:uppercase;opacity:.6}.sidebar-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);font-size:12.5px;font-weight:550;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.sidebar-item:hover{background:#ffffff0a;color:var(--text)}[data-theme=light] .sidebar-item:hover{background:#00000008}.sidebar-item.active{background:color-mix(in srgb,var(--accent) 12%,var(--bg))!important;color:var(--accent);font-weight:700;box-shadow:inset 2px 0 0 var(--accent)}.sql-editor-shortcut{font-weight:700;margin-bottom:6px;border:1px solid var(--border);background:#ffffff03;border-radius:8px}.sql-editor-shortcut:hover{border-color:var(--accent);background:#ffffff0a;color:var(--accent)}[data-theme=light] .sql-editor-shortcut:hover{background:#00000005}.sql-editor-shortcut.active{border-color:transparent}.table-icon{font-size:14px;opacity:.5}.sidebar-item.active .table-icon{opacity:1}.table-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.db-client-main{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;background:color-mix(in srgb,var(--accent) 1%,var(--bg))}.main-panel-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) .5%,var(--surface));flex-shrink:0;gap:8px}.main-panel-toolbar h4{font-size:13px;font-weight:800;color:var(--text);margin:0;white-space:nowrap}.table-highlight{color:var(--accent);font-family:var(--font-mono, monospace);font-weight:800;background:color-mix(in srgb,var(--accent) 8%,transparent);padding:1px 6px;border-radius:4px}.rows-count-indicator{font-size:10.5px;color:var(--text-tertiary);margin-left:6px;font-weight:600}.toolbar-actions-section{display:flex;align-items:center;gap:8px}.row-search-input{padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:11.5px;outline:none;width:140px;transition:all .25s cubic-bezier(.16,1,.3,1)}.row-search-input:focus{border-color:var(--accent);width:180px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.sql-console-view{display:flex;flex-direction:column;height:100%;padding:20px;overflow:hidden}.sql-console-top-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}.sql-console-top-actions h4{font-size:14px;font-weight:700;color:var(--text-secondary);letter-spacing:-.01em}.sql-templates-select{padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;outline:none;cursor:pointer;transition:all .2s}.sql-templates-select:focus{border-color:var(--accent)}.sql-textarea-wrapper{height:160px;margin-bottom:10px;flex-shrink:0;position:relative;border-radius:10px;overflow:hidden}.sql-editor-textarea{width:100%;height:100%;padding:14px 16px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:13px;line-height:1.65;resize:none;outline:none;box-sizing:border-box;transition:all .25s ease;-moz-tab-size:2;tab-size:2}.sql-editor-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 8%,transparent)}.sql-textarea-mirror{position:absolute;top:0;left:0;width:100%;height:100%;padding:14px 16px;box-sizing:border-box;font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:13px;line-height:1.65;white-space:pre-wrap;word-wrap:break-word;pointer-events:none;overflow:hidden;background:transparent;z-index:1}.mirror-value{color:transparent!important}.mirror-ghost{color:#ffffff59!important;font-weight:550;-webkit-user-select:none;user-select:none}[data-theme=light] .mirror-ghost{color:#00000059!important}.sql-editor-textarea{position:relative;z-index:2;background:transparent!important}.mirror-ghost-fix{color:#ffffff47!important;font-weight:550;-webkit-user-select:none;user-select:none;white-space:pre-wrap;word-wrap:break-word}[data-theme=light] .mirror-ghost-fix{color:#00000047!important}.ai-fix-hint-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.02em;white-space:nowrap;-webkit-user-select:none;user-select:none;flex-shrink:0;animation:hintPillFadeIn .3s ease}@keyframes hintPillFadeIn{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:translate(0)}}.ai-fixing-indicator{display:inline-flex;align-items:center;flex-shrink:0}.ai-quick-fix-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.ai-quick-fix-btn:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 40%,transparent)}.ai-quick-fix-btn:disabled{opacity:.6;cursor:not-allowed}.ai-fix-suggestion-box{margin-top:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;overflow:hidden}[data-theme=light] .ai-fix-suggestion-box{background:#00000005;border:1px solid rgba(0,0,0,.06)}.ai-fix-suggestion-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.08);font-size:11px;font-weight:700;color:var(--text-secondary)}[data-theme=light] .ai-fix-suggestion-header{background:#00000003;border-bottom:1px solid rgba(0,0,0,.06)}.ai-apply-fix-btn{padding:3px 8px;background:#10b981;color:#fff;border:none;border-radius:4px;font-size:10px;font-weight:700;cursor:pointer;transition:all .2s ease}.ai-apply-fix-btn:hover{background:#059669;box-shadow:0 0 8px #10b98166}.ai-fix-code{margin:0;padding:10px;font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:12px;line-height:1.5;color:#34d399!important;white-space:pre-wrap;word-wrap:break-word;background:#0003!important;text-align:left}[data-theme=light] .ai-fix-code{background:#00000008!important;color:#059669!important}.sql-autocomplete-dropdown{position:absolute;left:16px;bottom:12px;width:240px;max-height:120px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 6px 16px -4px #00000059;display:flex;flex-direction:column;overflow-y:auto;z-index:100;padding:3px}[data-theme=light] .sql-autocomplete-dropdown{box-shadow:0 6px 16px -4px #0000001a}.sql-autocomplete-item{display:flex;align-items:center;gap:6px;padding:3px 7px;border-radius:4px;font-size:11px;color:var(--text-secondary);cursor:pointer;transition:background .08s ease;-webkit-user-select:none;user-select:none;line-height:1.3}.sql-autocomplete-item:hover{background:#ffffff0a;color:var(--text)}[data-theme=light] .sql-autocomplete-item:hover{background:#00000008}.sql-autocomplete-item.active{background:var(--accent)!important;color:#fff!important}.hint-category-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.hint-cat-keyword{background:#c084fc}.hint-cat-table{background:#38bdf8}.hint-cat-column{background:#34d399}.sql-autocomplete-item.active .hint-category-dot{background:#fff!important}.hint-label-main{flex:1;font-family:var(--font-mono, monospace);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hint-category-tag{font-size:8px;font-weight:700;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.04em;opacity:.6}.sql-autocomplete-item.active .hint-category-tag{color:#ffffffb3!important}.hint-shortcut-pill{font-size:7px;font-weight:800;background:#fff3;color:#fff!important;padding:1px 4px;border-radius:3px;text-transform:uppercase;margin-left:4px;letter-spacing:.04em;font-family:var(--font-mono, monospace);box-shadow:0 1px #00000026;-webkit-user-select:none;user-select:none;flex-shrink:0}.sql-inline-suggestions{display:flex;flex-direction:column;gap:6px;margin:6px 0 10px}.inline-hints-strip{display:flex;flex-wrap:wrap;gap:4px}.inline-hint-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-secondary);font-size:11px;font-family:var(--font-mono, monospace);cursor:pointer;transition:all .15s;white-space:nowrap}.inline-hint-chip:hover{border-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.hint-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.hint-dot.hint-table{background:#3b82f6}.hint-dot.hint-column{background:#8b5cf6}.hint-dot.hint-keyword{background:#10b981}.inline-ai-thinking{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:11px;color:var(--text-secondary);background:color-mix(in srgb,var(--accent) 5%,var(--surface));border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 15%,transparent)}.inline-ai-strip{display:flex;flex-wrap:wrap;gap:4px}.inline-ai-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:6px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));color:var(--accent);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s}.inline-ai-chip:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:var(--accent)}.sql-ask-ai-bar{display:flex;align-items:center;gap:6px;padding:8px 10px;margin-bottom:10px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:8px;background:color-mix(in srgb,var(--accent) 4%,var(--surface));flex-shrink:0}.sql-ask-ai-bar input{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:12px;outline:none}.sql-ask-ai-bar input:focus{border-color:var(--accent)}.sql-actions-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}.sql-left-actions{display:flex;gap:8px}.sql-exec-metrics{font-size:12px;color:#10b981;font-weight:600;display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:#10b9810f;border:1px solid rgba(16,185,129,.12)}.sql-shortcut-tip{font-size:11px;color:var(--text-tertiary)}.sql-shortcut-tip kbd{display:inline-flex;align-items:center;padding:1px 5px;border-radius:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);font-family:var(--font-mono, monospace);font-size:10px;color:var(--text-secondary);margin:0 2px}.sql-history-header{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em;margin-top:16px;display:flex;align-items:center;justify-content:space-between}.sql-history-list{display:flex;gap:6px;overflow-x:auto;padding:4px 0 8px;flex-shrink:0;scrollbar-width:none}.sql-history-list::-webkit-scrollbar{display:none}.sql-history-item{padding:6px 12px;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:var(--text-secondary);font-family:var(--font-mono, monospace);font-size:11.5px;cursor:pointer;white-space:nowrap;max-width:180px;text-overflow:ellipsis;overflow:hidden;transition:all .2s}.sql-history-item:hover{background:#ffffff14;border-color:var(--accent);color:var(--text)}.sql-output-panel{flex:1;overflow-y:auto;margin-top:6px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px;display:flex;flex-direction:column;gap:8px}.console-box{padding:8px 12px;border-radius:8px;font-size:12px}.console-box.error{background:var(--error-bg);border:1px solid color-mix(in srgb,var(--error-text) 25%,transparent);color:var(--error-text)}.console-box.success{background:var(--success-bg);border:1px solid color-mix(in srgb,var(--success-text) 25%,transparent);color:var(--success-text);display:flex;align-items:center;justify-content:space-between}.console-box-title{font-weight:700;margin-bottom:2px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.console-msg{font-family:JetBrains Mono,Fira Code,monospace;white-space:pre-wrap;margin:0;line-height:1.4;font-size:12px}.sql-results-table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.sql-results-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.table-viewer-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.table-rows-wrapper{flex:1;overflow:auto;padding:0;position:relative;background:var(--bg)}.db-data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;text-align:left}.db-data-table thead{position:sticky;top:0;z-index:10}.db-data-table th{position:sticky;top:0;background:color-mix(in srgb,var(--accent) 4%,var(--surface));padding:11px 14px;border-bottom:1.5px solid var(--border);border-right:1px solid var(--border);font-weight:700;font-size:12px;color:var(--text-secondary);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s;letter-spacing:.01em}.db-data-table th:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.db-data-table th:last-child{border-right:none}.db-data-table td{padding:9px 14px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--text);white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;background:transparent;transition:all .2s cubic-bezier(.16,1,.3,1);font-size:12.5px}.db-data-table td:last-child{border-right:none}.db-data-table tr:hover td{background:color-mix(in srgb,var(--accent) 3%,var(--surface))!important}.table-th-wrap{display:flex;align-items:center;gap:8px}.pk-badge-icon{color:#fbbf24;display:inline-flex;align-items:center;flex-shrink:0}.col-name-label{color:var(--text);font-weight:700}.col-type-label{font-size:9px;font-weight:800;text-transform:uppercase;padding:2px 6px;border-radius:6px;letter-spacing:.02em;background:#ffffff0f;color:var(--text-secondary)}.col-type-label[data-type*=int],.col-type-label[data-type*=number],.col-type-label[data-type*=decimal]{background:#10b9811f;color:#34d399}.col-type-label[data-type*=char],.col-type-label[data-type*=text],.col-type-label[data-type*=string]{background:#8b5cf61f;color:#c084fc}.col-type-label[data-type*=double],.col-type-label[data-type*=real],.col-type-label[data-type*=float]{background:#f973161f;color:#fb923c}.col-type-label[data-type*=date],.col-type-label[data-type*=time]{background:#06b6d41f;color:#22d3ee}.null-val{font-style:italic;font-weight:700;font-size:11px;background:#f43f5e14;color:#fb7185cc;padding:2px 6px;border-radius:6px;letter-spacing:.04em}.actions-column-header{width:80px;text-align:center!important}.db-data-table td.cell-actions{text-align:center;padding:4px 6px;border-right:none;background:color-mix(in srgb,var(--accent) .5%,var(--surface))}.cell-action-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);cursor:pointer;margin:0 2px;transition:all .2s cubic-bezier(.16,1,.3,1)}.cell-action-btn:hover{background:#ffffff0f;color:var(--text);border-color:#ffffff14}.cell-action-btn.danger:hover{background:#f43f5e1a;color:#f43f5e;border-color:#f43f5e33}.cell-action-btn.check{color:#10b981}.cell-action-btn.check:hover{background:#10b9811a;border-color:#10b98133}.cell-action-btn.x{color:#ef4444}.cell-action-btn.x:hover{background:#ef44441a;border-color:#ef444433}.is-row-editing td{background:color-mix(in srgb,var(--accent) 8%,var(--surface))!important}.cell-editor-input{width:100%;padding:5px 8px;border-radius:5px;border:1.5px solid var(--accent);background:var(--bg);color:var(--text);font-size:12.5px;outline:none;box-sizing:border-box}.cell-editor-input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.insert-row-tr td{background:color-mix(in srgb,var(--accent) 12%,var(--surface))!important}.insert-row-tr .cell-editor-input{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.table-state-msg{display:flex;align-items:center;justify-content:center;padding:60px;font-size:14px;color:var(--text-secondary);font-weight:500}.table-state-msg.error{color:#fda4af;background:#f43f5e0a;border:1.5px dashed rgba(244,63,94,.2);border-radius:12px;margin:20px;font-family:var(--font-mono, monospace);font-size:12px;text-align:left;line-height:1.5}.table-empty-body{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 40px;text-align:center;color:var(--text-secondary)}.table-empty-body p{margin:0;font-size:14px;font-weight:550}.db-sort-indicator{font-size:10px;color:var(--accent)}.db-pagination-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--accent) .5%,var(--surface));flex-shrink:0}[data-theme=light] .db-pagination-bar{border-top-color:#0000000d;background:#00000005}.db-pagination-info{font-size:12px;color:var(--text-secondary);font-weight:550}.db-pagination-controls{display:flex;align-items:center;gap:6px}.db-pagination-btn{padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px}.db-pagination-btn:hover:not(:disabled){background:#ffffff14;color:var(--text);border-color:var(--accent)}.db-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.db-pagination-page-num{font-size:12.5px;color:var(--text);font-weight:700;padding:0 8px}.db-page-size-selector{padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:12px;outline:none;cursor:pointer}.db-cell-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;display:flex;justify-content:flex-end}.db-cell-drawer{width:480px;max-width:90vw;height:100%;background:var(--surface);box-shadow:-8px 0 32px #0000004d;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;animation:drawerSlideIn .3s cubic-bezier(.16,1,.3,1) both}[data-theme=light] .db-cell-drawer{background:#fff;border-left-color:#00000014;box-shadow:-8px 0 32px #00000014}.db-cell-drawer-body{flex:1;overflow-y:auto;padding:24px}.db-cell-drawer-meta{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:12px;margin-bottom:20px;font-size:12px;display:flex;flex-direction:column;gap:4px}.db-cell-drawer-meta-row{display:flex;justify-content:space-between}.db-cell-drawer-meta-row .label{color:var(--text-secondary);font-weight:600}.db-cell-drawer-meta-row .value{color:var(--text);font-family:var(--font-mono, monospace);font-weight:700}.db-cell-drawer-content-box{padding:16px;border-radius:12px;background:#0d0e12;border:1px solid rgba(255,255,255,.08);color:#e5e7eb;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-all;overflow-x:auto}[data-theme=light] .db-cell-drawer-content-box{background:#f3f4f6;border-color:#00000014;color:#1f2937}.table-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.16,1,.3,1);font-size:10px;padding:0;margin:0}.table-tree-toggle:hover{background:#ffffff14;color:var(--text)}.table-tree-toggle.expanded{transform:rotate(90deg);color:var(--accent)}[data-theme=light] .table-tree-toggle:hover{background:#0000000d}.table-columns-sublist{display:flex;flex-direction:column;margin-left:20px;padding-left:8px;border-left:1px solid rgba(255,255,255,.08);margin-top:2px;gap:1px;overflow:hidden;animation:sublistSlideIn .2s cubic-bezier(.16,1,.3,1) both}[data-theme=light] .table-columns-sublist{border-left:1px solid rgba(0,0,0,.08)}@keyframes sublistSlideIn{0%{opacity:0;max-height:0;transform:translateY(-4px)}to{opacity:1;max-height:500px;transform:translateY(0)}}.sidebar-column-item{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;font-size:11.5px;color:var(--text-tertiary);transition:all .2s ease;cursor:default;white-space:nowrap}.sidebar-column-item:hover{background:#ffffff08;color:var(--text-secondary)}[data-theme=light] .sidebar-column-item:hover{background:#00000005}.sidebar-column-pk{color:#fbbf24;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-column-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-column-required{color:#ef4444;font-weight:700;font-size:11px;margin-left:-2px;margin-right:4px;display:inline-block;cursor:help;-webkit-user-select:none;user-select:none}.sidebar-column-type-badge{font-size:8px;font-weight:700;text-transform:uppercase;padding:1px 5px;border-radius:4px;letter-spacing:.02em;margin-left:auto;flex-shrink:0}.sidebar-column-type-badge.int-type,.sidebar-column-type-badge.number-type,.sidebar-column-type-badge.decimal-type{background:#10b9811a;color:#34d399}.sidebar-column-type-badge.text-type,.sidebar-column-type-badge.char-type,.sidebar-column-type-badge.string-type{background:#8b5cf61a;color:#c084fc}.sidebar-column-type-badge.float-type,.sidebar-column-type-badge.real-type,.sidebar-column-type-badge.double-type{background:#f973161a;color:#fb923c}.sidebar-column-type-badge.date-type,.sidebar-column-type-badge.time-type{background:#06b6d41a;color:#22d3ee}.sidebar-column-type-badge.bool-type{background:#ec48991a;color:#f472b6}.sidebar-column-type-badge.blob-type,.sidebar-column-type-badge.binary-type{background:#a855f714;color:#a78bfa}.db-cell-number{font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);text-align:right!important;font-weight:600;color:#34d399;letter-spacing:-.01em}.db-cell-text{max-width:300px}.db-cell-date{color:#22d3ee;font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:12px;font-weight:500}.db-cell-bool{display:inline-flex;align-items:center;gap:4px}.db-bool-indicator{width:8px;height:8px;border-radius:50%;display:inline-block}.db-bool-indicator.true{background:#10b981;box-shadow:0 0 6px #10b98180}.db-bool-indicator.false{background:#6b7280;opacity:.5}.db-bool-label{font-size:12px;font-weight:700}.db-bool-label.true{color:#34d399}.db-bool-label.false{color:#9ca3af}.db-cell-json{color:#c084fc;font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:12px}.db-cell-large{cursor:pointer;color:var(--accent);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--accent) 30%,transparent);transition:all .2s}.db-cell-large:hover{text-decoration-color:var(--accent);color:var(--accent)}.db-column-stats-bar{display:flex;gap:16px;padding:10px 24px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 1%,var(--bg));overflow-x:auto;flex-shrink:0;animation:statsSlideIn .3s cubic-bezier(.16,1,.3,1) both}@keyframes statsSlideIn{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:100px}}.db-stat-pill{display:flex;flex-direction:column;gap:2px;padding:6px 12px;border-radius:8px;background:var(--surface);border:1px solid var(--border);flex-shrink:0;min-width:100px}.db-stat-pill-name{font-size:9px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.db-stat-pill-values{display:flex;gap:8px;font-size:11px}.db-stat-item{display:flex;gap:4px;align-items:baseline}.db-stat-item-label{font-size:9px;color:var(--text-tertiary);font-weight:600}.db-stat-item-value{font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-weight:700;color:var(--text);font-size:12px}.db-export-wrapper{position:relative;display:inline-flex}.db-export-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.db-export-btn:hover{background:#ffffff14;color:var(--text);border-color:#ffffff26}.db-export-btn svg{opacity:.6}.db-export-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 40px #0003;padding:4px;z-index:50;animation:dropdownFadeIn .15s cubic-bezier(.16,1,.3,1) both;overflow:hidden}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.db-export-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12.5px;font-weight:550;cursor:pointer;transition:all .15s ease;text-align:left}.db-export-option:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text)}.db-export-option svg{opacity:.5;flex-shrink:0}.db-export-option .shortcut-hint{margin-left:auto;font-size:10px;color:var(--text-tertiary);font-weight:600;opacity:.6}.db-json-tree{padding:0;margin:0;list-style:none}.db-json-tree-item{display:flex;align-items:flex-start;gap:6px;padding:2px 0;font-family:"JetBrains Mono","Fira Code",var(--font-mono, monospace);font-size:12.5px;line-height:1.5}.db-json-key{color:#c084fc;font-weight:600;flex-shrink:0}.db-json-separator{color:var(--text-tertiary);flex-shrink:0}.db-json-string{color:#34d399;word-break:break-all}.db-json-number{color:#fb923c}.db-json-boolean{color:#f472b6;font-weight:700}.db-json-null{color:var(--text-tertiary);font-style:italic;font-weight:600}.db-cell-inspector-type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.db-cell-inspector-type-badge.string-type{background:#8b5cf61f;color:#c084fc}.db-cell-inspector-type-badge.number-type{background:#10b9811f;color:#34d399}.db-cell-inspector-type-badge.bool-type{background:#ec48991f;color:#f472b6}.db-cell-inspector-type-badge.null-type{background:#6b72801f;color:#9ca3af}.db-cell-inspector-type-badge.json-type{background:#a855f71f;color:#a78bfa}.db-cell-inspector-type-badge.date-type{background:#06b6d41f;color:#22d3ee}.db-card-skeleton{padding:20px;border-radius:16px;background:color-mix(in srgb,var(--accent) 2%,var(--surface));border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:14px}.db-skeleton-line{height:12px;border-radius:6px;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:skeletonShimmer 1.5s infinite}.db-skeleton-line.short{width:60%}.db-skeleton-line.medium{width:80%}.db-skeleton-line.title{height:16px;width:45%}.db-skeleton-line.badge{width:70px;height:22px;border-radius:20px}.db-skeleton-line.actions{width:100%;height:32px;margin-top:8px}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.db-connection-card{-webkit-backdrop-filter:none;backdrop-filter:none}.db-test-result{font-size:11.5px;padding:8px 12px;border-radius:8px;font-weight:600;animation:resultSlideIn .25s cubic-bezier(.16,1,.3,1) both}@keyframes resultSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.db-test-result.success{background:#10b98114;border:1px solid rgba(16,185,129,.2);color:#34d399}.db-test-result.error{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#f87171}.db-data-table tr.row-even td{background:#ffffff04}[data-theme=light] .db-data-table tr.row-even td{background:#00000003}.db-pagination-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.db-pagination-btn{position:relative;overflow:hidden}.db-pagination-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:currentColor;opacity:0;transition:opacity .2s}.db-pagination-btn:hover:not(:disabled):before{opacity:.04}.sidebar-count-badge{margin-left:auto;font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px;background:#ffffff0d;color:var(--text-tertiary);flex-shrink:0}.table-rows-wrapper::-webkit-scrollbar{width:6px;height:6px}.table-rows-wrapper::-webkit-scrollbar-track{background:transparent}.table-rows-wrapper::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 18%,transparent);border-radius:3px}.table-rows-wrapper::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 30%,transparent)}.actions-column-header,.db-data-table td.cell-actions{position:sticky!important;right:0!important;z-index:5!important;background:color-mix(in srgb,var(--accent) .5%,var(--surface))!important;border-left:1px solid var(--border)!important;box-shadow:-4px 0 10px #0000000a}.db-data-table th.actions-column-header{background:color-mix(in srgb,var(--accent) 4%,var(--surface))!important;z-index:15!important}.mobile-sidebar-toggle{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:var(--text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.mobile-sidebar-toggle:hover{background:#ffffff14;color:var(--text);border-color:#ffffff26}[data-theme=light] .mobile-sidebar-toggle{border-color:#00000014;background:#00000005}[data-theme=light] .mobile-sidebar-toggle:hover{background:#0000000d}.db-sidebar-mobile-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;animation:drawerFadeIn .2s ease both}@media(max-width:1024px){.db-connections-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.db-client-sidebar{width:220px}.main-panel-toolbar{padding:10px 16px;flex-wrap:wrap;gap:8px}.toolbar-title-section{min-width:0;flex:1}.main-panel-toolbar h4{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions-section{gap:6px;flex-wrap:wrap}.row-search-input{width:140px}.row-search-input:focus{width:180px}.db-client-header{padding:10px 16px}.db-client-db-detail{display:none}}@keyframes dbModalScaleIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:768px){.db-connection-manager{gap:16px}.db-connections-header{flex-direction:column;align-items:stretch;gap:12px;padding-bottom:12px}.db-connections-header h3{font-size:17px}.db-connections-grid{grid-template-columns:1fr;gap:12px}.db-connection-card{padding:16px}.db-connection-drawer-overlay{display:flex!important;justify-content:center!important;align-items:center!important;padding:16px!important}.db-connection-drawer{width:100%!important;max-width:440px!important;height:auto!important;max-height:calc(100vh - 32px)!important;margin:auto!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 20px 40px #0000004d!important;animation:dbModalScaleIn .3s cubic-bezier(.16,1,.3,1) both!important}[data-theme=light] .db-connection-drawer{border-color:#00000014!important;box-shadow:0 20px 40px #00000014!important}.db-connection-form{padding:20px 24px}.db-client-panel{border-radius:0}.db-client-header{padding:8px 10px}.mobile-sidebar-toggle{display:flex}.db-client-title{gap:6px;min-width:0;flex:1}.db-client-conn-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-client-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;z-index:100;transform:translate(-100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:none;border-right:none}.db-client-sidebar.mobile-open{transform:translate(0);box-shadow:8px 0 32px #0006}[data-theme=light] .db-client-sidebar.mobile-open{box-shadow:8px 0 32px #0000001a}.db-sidebar-mobile-overlay{display:block}.db-client-layout{position:relative}.db-client-main{margin-left:0;width:100%}.main-panel-toolbar{padding:8px 12px;flex-wrap:wrap;gap:6px}.main-panel-toolbar h4{font-size:12px}.toolbar-actions-section{gap:4px;flex-wrap:wrap;width:100%;order:2}.toolbar-actions-section .accent-btn.sm{font-size:11px;padding:4px 8px}.toolbar-title-section{order:1;width:100%}.row-search-input{width:100%;flex:1;min-width:80px}.row-search-input:focus{width:100%}.db-pagination-bar{flex-direction:column;gap:8px;padding:10px 12px}.db-pagination-info{font-size:11px;text-align:center}.db-pagination-controls{width:100%;justify-content:center;flex-wrap:wrap}.sql-console-view{padding:12px}.sql-console-top-actions{flex-direction:column;align-items:stretch;gap:8px}.sql-console-top-actions h4{font-size:14px}.sql-textarea-wrapper{height:120px}.sql-editor-textarea{font-size:12px;padding:12px}.sql-actions-bar{flex-wrap:wrap;gap:8px}.sql-left-actions{width:100%}.sql-left-actions .accent-btn,.sql-left-actions .cancel-btn{flex:1;font-size:12px}.sql-shortcut-tip{display:none}.db-column-stats-bar{padding:8px 12px;gap:10px;overflow-x:auto;-webkit-overflow-scrolling:touch}.db-stat-pill{min-width:80px;padding:4px 10px;flex-shrink:0}.db-stat-pill-name{font-size:8px}.db-stat-pill-values{font-size:10px;flex-wrap:wrap}.db-cell-drawer{width:100%;max-width:100%}.db-confirm-dialog{width:90vw;padding:20px}.db-toasts-container{bottom:12px;right:12px;left:12px}.db-toast{padding:10px 14px;font-size:12px}.db-export-dropdown{right:auto;left:0;min-width:120px}.db-data-table{font-size:12px}.db-data-table th,.db-data-table td{padding:8px 10px}.db-cell-number{font-size:12px}}@media(max-width:480px){.db-connection-manager{gap:12px}.db-connection-drawer{max-width:100%}.db-connections-grid{gap:10px}.db-connection-card{padding:14px;border-radius:12px}.db-connection-card .db-card-actions button{font-size:11px;padding:6px 8px}.db-client-header{padding:8px 10px}.db-client-conn-name{font-size:13px}.db-client-panel{border-radius:0}.main-panel-toolbar{padding:6px 10px}.db-pagination-bar{padding:8px 10px}.db-data-table th,.db-data-table td{padding:6px 8px;font-size:11px}.actions-column-header{width:60px}.cell-action-btn{width:22px;height:22px}.sql-textarea-wrapper{height:100px}.col-type-label{display:none}.db-column-stats-bar{padding:6px 10px;gap:6px}.db-stat-pill{min-width:70px;padding:3px 8px}}@media(max-width:768px){.workspace-route-header{padding:10px 12px;gap:6px}.workspace-route-title{font-size:13px}.workspace-route-count{font-size:10px}.workspace-route-list{padding:6px;gap:3px}.workspace-route-session{padding:8px 10px;border-radius:6px;gap:8px}.wrs-title{font-size:12px}.wrs-date{font-size:10px}.workspace-route-empty{padding:40px 20px}.workspace-route-empty-icon{width:36px;height:36px}}.ai-assistant-panel{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;margin-top:12px}.ai-assistant-header{display:flex;align-items:center;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 5%,transparent)}.ai-assistant-tabs{display:flex;flex:1}.ai-tab{padding:10px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;display:flex;align-items:center;gap:6px}.ai-tab:hover{color:var(--text);background:#ffffff08}.ai-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.ai-assistant-content{padding:16px}.nl2sql-tab,.suggestions-tab,.watches-tab{display:flex;flex-direction:column;gap:12px}.suggestions-toolbar{display:flex;justify-content:space-between;align-items:center}.suggestions-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.suggestions-loading,.suggestions-empty{padding:20px;text-align:center;font-size:12px;color:var(--text-secondary);background:var(--surface);border:1px dashed var(--border);border-radius:8px}.suggestions-error{padding:10px 12px;background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:8px;color:var(--danger);font-size:12px}.spin{animation:spin 1s linear infinite}.ai-model-selector-bar{display:flex;gap:8px;flex-wrap:wrap}.ai-model-selector-bar select,.ai-model-selector-bar input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:11px;font-weight:500}.ai-model-selector-bar select:focus{outline:none;border-color:var(--accent)}.nl-input-section{display:flex;flex-direction:column;gap:8px}.nl-input-section label,.watch-form label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.nl-input-section textarea{width:100%;min-height:80px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:13px;font-family:var(--font-mono, monospace);resize:vertical}.nl-input-section textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.generated-sql-section{display:flex;flex-direction:column;gap:8px;padding:12px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:8px}.generated-sql-section label{font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase}.sql-review{padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-family:var(--font-mono, monospace);font-size:12px;color:var(--text);white-space:pre-wrap;max-height:200px;overflow-y:auto}.use-sql-btn{align-self:flex-end;padding:6px 14px;border-radius:6px;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:12px;font-weight:600;cursor:pointer}.use-sql-btn:hover{background:color-mix(in srgb,var(--accent) 25%,transparent)}.suggestion-card{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);transition:all .2s}.suggestion-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 3%,var(--surface))}.suggestion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.suggestion-category{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent);letter-spacing:.05em}.use-suggestion-btn{padding:4px 10px;border-radius:6px;border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer}.use-suggestion-btn:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}.suggestion-label{font-size:13px;font-weight:600;color:var(--text);margin-bottom:6px}.suggestion-sql{padding:8px 10px;background:var(--bg);border-radius:6px;font-family:var(--font-mono, monospace);font-size:11px;color:var(--text-secondary);white-space:pre-wrap;max-height:100px;overflow-y:auto}.suggestions-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);padding:4px 0;border-bottom:1px solid var(--border);margin-bottom:4px}.live-suggestions-section,.ai-suggestions-section{display:flex;flex-direction:column;gap:4px}.live-suggestion-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text);transition:background .15s}.live-suggestion-item:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.live-suggestion-icon{width:6px;height:6px;border-radius:50%;flex-shrink:0}.live-suggestion-icon.live-table{background:#3b82f6}.live-suggestion-icon.live-column{background:#8b5cf6}.live-suggestion-icon.live-keyword{background:#10b981}.live-suggestion-label{flex:1;font-family:var(--font-mono, monospace);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-suggestion-card{padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:8px;background:color-mix(in srgb,var(--accent) 4%,var(--surface));cursor:pointer;transition:all .2s}.ai-suggestion-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.ai-suggestion-header{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--accent);margin-bottom:6px}.ai-suggestion-sql{padding:8px 10px;background:var(--bg);border-radius:6px;font-family:var(--font-mono, monospace);font-size:11px;color:var(--text);white-space:pre-wrap;max-height:80px;overflow-y:auto;margin-bottom:6px}.watch-form{display:flex;flex-direction:column;gap:10px;padding:12px;background:color-mix(in srgb,var(--accent) 3%,transparent);border-radius:8px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:11px;font-weight:600;color:var(--text-secondary)}.form-group input,.form-group select{padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:12px}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent)}.watches-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.watches-list h4{font-size:13px;font-weight:700;color:var(--text)}.watch-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.watch-info{display:flex;align-items:center;gap:8px;font-size:12px}.watch-info strong{color:var(--text)}.watch-type{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--accent);padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--accent) 15%,transparent)}.danger-btn{padding:4px 10px;border-radius:6px;border:1px solid #ef4444;background:#ef44441a;color:#ef4444;font-size:11px;font-weight:600;cursor:pointer}.danger-btn:hover{background:#ef444433}.sql-console-header-section{margin-bottom:16px;flex-shrink:0}.sql-console-title{margin:0;font-size:16px;font-weight:800;color:var(--text);letter-spacing:-.015em}.sql-console-subtitle{display:block;font-size:11.5px;color:var(--text-tertiary);margin-top:2px;font-weight:500}.sql-editor-frame{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden;transition:border-color .22s ease,box-shadow .22s ease;margin-bottom:16px;flex-shrink:0}.sql-editor-frame:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 8%,transparent),var(--shadow)}.sql-editor-tab-bar{display:flex;align-items:center;justify-content:space-between;height:38px;background:color-mix(in srgb,var(--accent) 2%,var(--surface-1));border-bottom:1px solid var(--border);padding:0 12px;-webkit-user-select:none;user-select:none}.sql-editor-tab{display:flex;align-items:center;gap:6px;height:38px;padding:0 16px;background:var(--surface);border-right:1px solid var(--border);border-left:1px solid transparent;color:var(--text);font-size:11.5px;font-family:var(--font-mono);font-weight:700;position:relative}.sql-editor-tab.active:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent)}.sql-tab-icon{color:var(--text-secondary);opacity:.8}.sql-tab-dot{width:5px;height:5px;background:#10b981;border-radius:50%;box-shadow:0 0 6px #10b981}.sql-editor-tab-actions{display:flex;align-items:center;gap:8px}.sql-preset-label{font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.sql-editor-frame .sql-templates-select{padding:4px 8px;border-radius:6px;font-size:11px;font-weight:600}.sql-clear-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--text-secondary);font-size:11px;font-weight:650;padding:4px 8px;border-radius:6px;cursor:pointer;transition:all .15s}.sql-clear-btn:hover{background:var(--hover-bg);color:var(--error-text)}.sql-editor-ai-prompt{display:flex;align-items:center;gap:12px;padding:10px 16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 3%,var(--surface)),color-mix(in srgb,#8b5cf6 3%,var(--surface)));border-bottom:1px solid var(--border);animation:slideDown .22s cubic-bezier(.16,1,.3,1)}.ai-sparkle-glow{color:#8b5cf6;filter:drop-shadow(0 0 3px rgba(139,92,246,.45));animation:pulseGlow 2.5s infinite ease-in-out;display:flex;align-items:center}.sql-editor-ai-prompt input{flex:1;border:none;background:transparent;color:var(--text);font-size:12.5px;font-family:var(--font);outline:none}.sql-editor-ai-prompt input::placeholder{color:var(--text-secondary);opacity:.65;font-style:italic}.sql-ai-actions{display:flex;align-items:center;gap:8px}.ai-generate-btn{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#4f46e5,#3b82f6);border:none;color:#fff;font-size:11.5px;font-weight:750;padding:6px 14px;border-radius:8px;cursor:pointer;box-shadow:0 2px 8px #4f46e540;transition:all .2s cubic-bezier(.16,1,.3,1)}.ai-generate-btn:hover{box-shadow:0 4px 12px #4f46e566;transform:translateY(-1px);filter:brightness(1.05)}.ai-generate-btn:disabled{background:var(--border);color:var(--text-tertiary);box-shadow:none;cursor:not-allowed;transform:none;filter:none}.ai-close-btn{background:transparent;border:none;color:var(--text-tertiary);padding:6px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.ai-close-btn:hover{background:var(--hover-bg);color:var(--text)}.sql-editor-footer{display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--accent) 1%,var(--surface-1));border-top:1px solid var(--border);padding:8px 16px;gap:12px}.sql-footer-left,.sql-footer-right{display:flex;align-items:center;gap:10px}.sql-run-btn{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--bg);border:none;padding:7px 16px;font-size:12px;font-weight:750;border-radius:8px;cursor:pointer;box-shadow:0 1px 3px #0000000d;transition:all .2s cubic-bezier(.16,1,.3,1)}.sql-run-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 3px 8px #00000014}.sql-run-btn:disabled{background:var(--border);color:var(--text-tertiary);cursor:not-allowed;box-shadow:none}.run-icon{font-size:9px;opacity:.9}.sql-ai-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid color-mix(in srgb,#8b5cf6 30%,transparent);background:color-mix(in srgb,#8b5cf6 4%,transparent);color:#8b5cf6;font-size:11.5px;font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.sql-ai-toggle-btn:hover{background:color-mix(in srgb,#8b5cf6 8%,transparent);border-color:#8b5cf6;box-shadow:0 0 0 3px color-mix(in srgb,#8b5cf6 15%,transparent)}.sql-ai-toggle-btn.active{background:color-mix(in srgb,#8b5cf6 12%,var(--surface))!important;border-color:#8b5cf6!important;color:#8b5cf6!important;box-shadow:0 0 12px color-mix(in srgb,#8b5cf6 15%,transparent),inset 0 1px 1px #ffffff1a!important}@keyframes pulseGlow{0%,to{transform:scale(1);filter:drop-shadow(0 0 3px rgba(139,92,246,.45))}50%{transform:scale(1.04);filter:drop-shadow(0 0 6px rgba(139,92,246,.7))}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-spin-icon{display:inline-block;animation:spin 1.5s linear infinite}@media(max-width:600px){.sql-editor-tab-bar{height:auto;flex-direction:column;align-items:stretch;padding:8px;gap:8px}.sql-editor-tab{border-right:none;border-bottom:1px solid var(--border);height:32px;padding:0 8px}.sql-editor-tab-actions{flex-wrap:wrap;justify-content:space-between}.sql-editor-ai-prompt{flex-direction:column;align-items:stretch;gap:8px;padding:12px}.sql-ai-actions{justify-content:flex-end}.sql-editor-footer{flex-direction:column;align-items:stretch;padding:12px;gap:12px}.sql-footer-left{justify-content:space-between}.sql-run-btn,.sql-ai-toggle-btn{flex:1;justify-content:center}.sql-footer-right{justify-content:space-between;font-size:11px}}.email-client{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--surface)}.email-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);gap:12px;flex-shrink:0}.email-header-left{flex:1;max-width:480px}.email-search-wrap{position:relative;display:flex;align-items:center}.email-search-icon{position:absolute;left:10px;color:var(--text-tertiary);pointer-events:none}.email-search-input{width:100%;padding:7px 10px 7px 32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:13px;outline:none;transition:border-color .15s}.email-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.email-header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.email-header-btn{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;white-space:nowrap}.email-header-btn:hover{background:var(--hover-bg);border-color:var(--text-tertiary)}.email-notification{padding:8px 16px;font-size:12px;border-bottom:1px solid var(--border);flex-shrink:0}.email-notification.error{background:var(--error-bg);color:var(--error-text)}.email-notification.success{background:var(--success-bg);color:var(--success-text)}.email-ai-summary{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border);background:var(--surface-1);flex-shrink:0;flex-wrap:wrap}.email-ai-summary-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-right:4px}.email-ai-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:9999px;border:1px solid transparent;font-size:12px;cursor:pointer;transition:all .15s;background:var(--surface-2);color:var(--text-secondary)}.email-ai-badge:hover{opacity:.8}.email-ai-badge.active{border-color:var(--accent);background:var(--accent-light);color:var(--text)}.email-ai-badge.critical.active{border-color:var(--error-text)}.email-ai-badge.medium.active{border-color:var(--warning-text)}.email-ai-badge.low.active{border-color:var(--success-text)}.email-ai-unread{font-size:12px;color:var(--text-tertiary);margin-left:auto}.email-clear-filter{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;text-decoration:underline}.email-accounts-bar{flex-shrink:0}.email-accounts-row{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--bg)}.email-account-select{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:13px;outline:none;cursor:pointer}.email-account-select:focus{border-color:var(--accent)}.email-add-account-mini{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.email-add-account-mini:hover{background:var(--hover-bg);color:var(--text)}.email-account-detail{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:var(--surface-1);border-bottom:1px solid var(--border);gap:8px;flex-wrap:wrap}.email-account-info{display:flex;align-items:center;gap:6px;min-width:0}.email-account-label-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.email-account-project{font-size:12px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.email-account-addr{font-size:11px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-account-project,.email-account-addr{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-account-actions{display:flex;gap:6px;flex-shrink:0}.email-account-action-btn{padding:4px 10px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer}.email-account-action-btn:hover{background:var(--hover-bg);color:var(--text)}.email-account-action-btn.danger{color:var(--error-text);border-color:transparent}.email-account-action-btn.danger:hover{background:var(--error-bg)}.email-account-bar{display:flex;align-items:center;gap:6px;padding:6px 16px;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0}.email-account-count{color:var(--text-tertiary);font-size:11px}.email-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:8px;color:var(--text-tertiary);padding:40px}.email-empty-state h3{margin:0;font-size:16px;font-weight:600;color:var(--text-secondary)}.email-empty-state p{margin:0;font-size:13px}.email-add-account{display:flex;gap:8px;margin-top:12px;width:100%;max-width:340px}.email-add-input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:13px;outline:none}.email-add-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.email-add-btn{padding:8px 16px;background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.email-add-btn:disabled{opacity:.5;cursor:not-allowed}.email-account-edit-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-tertiary);cursor:pointer;margin-left:auto;flex-shrink:0}.email-account-edit-btn:hover{color:var(--text);border-color:var(--text-tertiary)}.email-edit-panel{border-bottom:1px solid var(--border);background:var(--surface-1);padding:12px 16px;flex-shrink:0}.email-edit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.email-edit-title{font-size:13px;font-weight:500;color:var(--text)}.email-edit-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px}.email-edit-close:hover{background:var(--hover-bg);color:var(--text)}.email-edit-body{display:flex;flex-direction:column;gap:8px;max-width:480px}.email-edit-row{display:flex;gap:8px}.email-edit-row .email-add-input{flex:1}.email-edit-footer{display:flex;gap:8px;margin-top:10px}.email-edit-save{padding:7px 16px;background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer}.email-edit-save:disabled{opacity:.5;cursor:not-allowed}.email-edit-cancel{padding:7px 16px;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;cursor:pointer}.email-edit-cancel:hover{background:var(--hover-bg)}.email-imap-toggle{background:none;border:none;color:var(--text-tertiary);font-size:12px;cursor:pointer;text-decoration:underline;margin-top:4px}.email-imap-toggle:hover{color:var(--text-secondary)}.email-imap-fields{display:flex;flex-direction:column;gap:8px;width:100%;max-width:400px;margin-top:8px}.email-imap-row{display:flex;gap:8px}.email-imap-row .email-add-input{flex:1}.email-imap-port{max-width:80px;flex-shrink:0}.email-imap-hint{font-size:11px;color:var(--text-tertiary);line-height:1.4}.email-imap-hint a{color:var(--accent)}.email-setup-guide{width:100%;max-width:480px;margin-top:8px;padding:12px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm)}.email-setup-guide-title{font-size:12px;font-weight:600;color:var(--text);margin-bottom:8px}.email-setup-table{width:100%;border-collapse:collapse;font-size:12px}.email-setup-table th{text-align:left;padding:4px 8px;border-bottom:1px solid var(--border);color:var(--text-secondary);font-weight:500}.email-setup-table td{padding:4px 8px;border-bottom:1px solid var(--border);color:var(--text)}.email-setup-table a{color:var(--accent)}.email-setup-guide-note{font-size:11px;color:var(--text-tertiary);margin-top:8px;line-height:1.5}.email-setup-guide-note a{color:var(--accent)}.email-content{display:flex;flex-direction:column;flex:1;overflow:hidden}.email-list{overflow-y:auto;flex:1;min-height:80px}.email-list.with-preview{border-bottom:none;flex-basis:0}.email-row{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--border);position:relative}.email-row:hover{background:var(--hover-bg)}.email-row.selected{background:var(--accent-light)}.email-row.unread .email-row-sender,.email-row.unread .email-row-subject{font-weight:600}.email-row-dot{flex-shrink:0;font-size:10px;margin-top:4px;line-height:1}.email-row-info{flex:1;min-width:0}.email-row-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}.email-row-sender{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-row-time{font-size:11px;color:var(--text-tertiary);flex-shrink:0}.email-row-subject{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:1px}.email-row-preview{font-size:12px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-row-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;opacity:0;transition:opacity .15s}.email-row:hover .email-row-actions{opacity:1}.email-row-mark-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px}.email-row-mark-btn:hover{background:var(--hover-bg);color:var(--text)}.email-ai-reason-tooltip{font-size:10px;color:var(--text-tertiary);background:var(--surface-2);padding:2px 6px;border-radius:4px;white-space:nowrap}.email-list-empty{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-tertiary);font-size:13px}.email-preview{flex:1;flex-basis:0;min-height:100px;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:12px;background:var(--surface)}.email-preview-header{display:flex;align-items:center;justify-content:space-between}.email-preview-category{font-size:12px;font-weight:500}.email-preview-reason{font-weight:400;color:var(--text-tertiary)}.email-preview-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px}.email-preview-close:hover{background:var(--hover-bg);color:var(--text)}.email-split-handle{height:5px;cursor:row-resize;flex-shrink:0;background:transparent;position:relative;z-index:1}.email-split-handle:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40px;height:3px;border-radius:2px;background:var(--border);transition:background .15s,width .15s}.email-split-handle:hover:after,.email-split-handle:active:after{background:var(--accent);width:60px;height:4px}.email-preview-title{font-size:18px;font-weight:600;color:var(--text);line-height:1.3}.email-preview-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--border)}.email-preview-from{font-size:13px;color:var(--text)}.email-preview-addr{color:var(--text-tertiary);margin-left:4px;font-size:12px}.email-preview-date{font-size:12px;color:var(--text-tertiary)}.email-preview-body{font-size:14px;color:var(--text);line-height:1.6;flex:1;white-space:pre-wrap}.email-preview-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.email-action-btn{padding:8px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:13px;cursor:pointer;transition:all .15s}.email-action-btn:hover{background:var(--hover-bg);border-color:var(--text-tertiary)}.email-compose-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.email-compose-modal{width:100%;max-width:560px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:80vh}.email-compose-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-weight:600;font-size:14px}.email-compose-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px}.email-compose-close:hover{background:var(--hover-bg)}.email-compose-body{padding:12px 16px;display:flex;flex-direction:column;gap:8px;flex:1}.email-compose-field{width:100%;padding:8px 0;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font-size:13px;outline:none}.email-compose-field:focus{border-bottom-color:var(--accent)}.email-compose-textarea{width:100%;flex:1;min-height:200px;padding:8px 0;border:none;background:transparent;color:var(--text);font-size:13px;resize:none;outline:none;line-height:1.5;font-family:var(--font)}.email-compose-footer{display:flex;justify-content:flex-end;padding:12px 16px;border-top:1px solid var(--border)}.email-compose-send{padding:8px 20px;background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s}.email-compose-send:hover{opacity:.9}.email-settings-loading{padding:20px;text-align:center;color:var(--text-tertiary)}.email-settings-section{margin-bottom:20px}.email-settings-label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:500;color:var(--text);margin-bottom:6px}.email-settings-hint{font-size:11px;font-weight:400;color:var(--text-tertiary)}.email-settings-textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:13px;resize:vertical;outline:none;font-family:var(--font);line-height:1.5;box-sizing:border-box}.email-settings-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.email-settings-input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:13px;outline:none;box-sizing:border-box}.email-settings-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.email-settings-checkboxes{display:flex;flex-direction:column;gap:8px}.email-settings-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer}.email-settings-checkbox input{accent-color:var(--accent)}.email-settings-save{width:100%;padding:10px 16px;background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s}.email-settings-save:hover{opacity:.9}.email-settings-save:disabled{opacity:.5;cursor:not-allowed}.email-settings-modal{max-width:520px;width:90vw}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}@media(min-width:769px){.email-content{flex-direction:row!important}.email-list.with-preview{border-right:1px solid var(--border);border-bottom:none}.email-split-handle.desktop-handle{width:5px;height:100%;cursor:col-resize}.email-split-handle.desktop-handle:after{width:3px;height:40px}.email-split-handle.desktop-handle:hover:after,.email-split-handle.desktop-handle:active:after{width:4px;height:60px}}.email-preview-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:999;padding:20px}.email-preview-modal-window{width:760px;height:580px;max-width:92vw;max-height:85vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 10px 40px #00000040;display:flex;flex-direction:column;overflow:hidden;position:relative;animation:modalScaleIn .22s cubic-bezier(.34,1.56,.64,1)}@keyframes modalScaleIn{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.email-preview-drag-dots{font-size:14px;font-weight:700;letter-spacing:1px;cursor:move}.email-layout-toggle-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px;transition:background .15s,color .15s}.email-layout-toggle-btn:hover{background:var(--hover-bg);color:var(--text)}.email-sidebar{width:200px;flex-shrink:0;border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;padding:16px 8px;gap:6px}.email-sidebar-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);background:transparent;border:none;width:100%;text-align:left}.email-sidebar-item:hover{background:var(--hover-bg);color:var(--text)}.email-sidebar-item.active{background:var(--accent-light);color:var(--accent)}.email-sidebar-item-left{display:flex;align-items:center;gap:10px}.email-sidebar-item-badge{background:var(--accent);color:var(--bg);font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px}.email-folders-mobile-bar{display:flex;gap:8px;padding:8px 16px;background:var(--surface-1);border-bottom:1px solid var(--border)}.email-folders-mobile-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 4px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all .15s ease}.email-folders-mobile-btn:hover{background:var(--hover-bg);color:var(--text)}.email-folders-mobile-btn.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.email-header-account-wrap{display:flex;align-items:center;gap:8px;background:var(--surface-1);border:1px solid var(--border);border-radius:20px;padding:4px 12px;max-width:320px;transition:all .2s ease;box-sizing:border-box}.email-header-account-wrap:hover{border-color:var(--accent)}.email-account-header-select{border:none;background:transparent;color:var(--text);font-size:13px;font-weight:500;outline:none;cursor:pointer;max-width:180px;overflow:hidden;text-overflow:ellipsis}.email-account-header-actions{display:flex;align-items:center;gap:4px;border-left:1px solid var(--border);padding-left:8px}.email-account-header-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-secondary);border-radius:50%;cursor:pointer;transition:all .15s ease;padding:0}.email-account-header-action-btn:hover{background:var(--hover-bg);color:var(--text)}.email-account-header-action-btn.danger:hover{background:var(--error-bg);color:var(--error-text)}.email-add-account-mini{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-secondary);border-radius:50%;cursor:pointer;transition:all .15s ease;padding:0}.email-add-account-mini:hover{background:var(--hover-bg);color:var(--accent)}.email-compose-ai-panel{display:flex;flex-direction:column;gap:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;margin-top:6px;box-shadow:0 4px 16px #00000014;animation:slideDown .25s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.email-compose-ai-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.email-tone-pills{display:flex;flex-wrap:wrap;gap:6px}.email-tone-pill{padding:5px 12px;font-size:11px;font-weight:500;border-radius:9999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;white-space:nowrap}.email-tone-pill:hover{background:var(--hover-bg);border-color:var(--text-tertiary);color:var(--text)}.email-tone-pill.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.email-ai-custom-wrap{display:flex;gap:8px;align-items:center}.email-ai-custom-input{flex:1;padding:7px 12px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);outline:none;transition:border-color .15s ease}.email-ai-custom-input:focus{border-color:var(--accent)}.email-rewrite-preview-box{background:var(--surface);border-left:3px solid var(--accent);border-radius:4px;padding:12px;display:flex;flex-direction:column;gap:8px;margin-top:4px}.email-rewrite-preview-header{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent);letter-spacing:.5px}.email-rewrite-preview-content{font-size:12px;color:var(--text);line-height:1.5;white-space:pre-wrap;max-height:120px;overflow-y:auto}.email-rewrite-preview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.email-compose-ai-toggle-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.email-compose-ai-toggle-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--text-tertiary)}.email-compose-ai-toggle-btn.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.sp-draw-toolbar-overlay{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000004d}.sp-preview-container-main{display:flex;flex:1;min-height:0;position:relative;width:100%}.sp-notes-sidebar{width:320px;border-left:1px solid var(--border);background:var(--surface-1);display:flex;flex-direction:column;flex-shrink:0;animation:slideInRight .2s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.sp-notes-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.sp-notes-header h4{margin:0;font-size:13px;font-weight:600}.sp-notes-editor{flex:1;border:none;background:transparent;color:var(--text);padding:16px;font-family:inherit;font-size:13px;line-height:1.6;resize:none;outline:none}
