:root,:root[data-theme=dark]{--bg:#0c0f15;--bg-panel:#141924;--bg-hover:#1b2331;--bg-elevated:#1a2130;--border:#94a3b824;--border-strong:#94a3b842;--text:#e7ecf3;--text-dim:#9aa7bb;--placeholder:#c1cde0;--accent:#5b8cff;--accent-hover:#7da6ff;--accent-soft:#5b8cff24;--accent-softer:#5b8cff12;--danger:#ff6b6b;--danger-soft:#ff6b6b1f;--success:#34c98e;--success-soft:#34c98e1f;--warning:#e0a32a;--warning-soft:#e0a32a1f;--warning-bg:#e0a32a1f;--warning-border:#e0a32a57;--code-bg:#0d1117;--code-text:#c9d1d9;--shadow-sm:0 1px 2px #00000040;--shadow-md:0 4px 16px #00000047;--shadow-lg:0 12px 40px #00000061;--sheet-mask:#03060c8c;--glow:radial-gradient(60% 40% at 50% 0%, #5b8cff12, transparent 70%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f5f6f8;--bg-panel:#fff;--bg-hover:#edf0f5;--bg-elevated:#fff;--border:#0f172a1a;--border-strong:#0f172a33;--text:#1b2434;--text-dim:#64748b;--placeholder:#6e7e94;--accent:#2f63e0;--accent-hover:#4a7dff;--accent-soft:#2f63e01a;--accent-softer:#2f63e00d;--danger:#e23e4e;--danger-soft:#e23e4e1a;--success:#0fa968;--success-soft:#0fa9681a;--warning:#b45309;--warning-soft:#b453091a;--warning-bg:#fff6e3;--warning-border:#b4530947;--code-bg:#f4f6f9;--code-text:#33415c;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 4px 14px #0f172a14;--shadow-lg:0 12px 36px #0f172a1f;--sheet-mask:#0f172a52;--glow:radial-gradient(60% 40% at 50% 0%, #2f63e00f, transparent 70%);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--panel:var(--bg-panel)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:var(--glow);background-repeat:no-repeat;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6;transition:background-color .25s,color .25s}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{background:var(--bg-hover);color:var(--text);cursor:pointer;border:1px solid #0000;border-radius:9px;padding:7px 14px;font-family:inherit;font-size:13px;line-height:1.4;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .12s}button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #5b8cff40}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}button.soft{background:var(--accent-soft);color:var(--accent);border-color:#0000;font-weight:600}button.soft:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent-hover)}button.danger{color:var(--danger)}button.danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.icon-btn{color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text);border-color:#0000}.theme-toggle{width:32px;height:32px;color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s,transform .2s;display:inline-flex}.theme-toggle:hover:not(:disabled){background:var(--bg-hover);color:var(--text);border-color:#0000}.theme-toggle:active:not(:disabled){transform:rotate(20deg)scale(.95)}input,textarea,select{background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:10px;outline:none;width:100%;padding:9px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s,background-color .25s}input::placeholder,textarea::placeholder{color:var(--placeholder);opacity:1}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft), 0 4px 14px var(--accent-soft);border-radius:10px;outline:none}select{cursor:pointer;appearance:auto}.error-text{color:var(--danger);margin-top:6px;font-size:12px;line-height:1.5}.ok-text{color:var(--success);margin-top:6px;font-size:12px;line-height:1.5}.dim{color:var(--text-dim);font-size:12px}.mono{font-family:var(--mono,"SF Mono", "JetBrains Mono", Menlo, Consolas, monospace)}.check-icon{color:var(--success)}.spin{border:2px solid var(--border-strong);border-top-color:var(--accent);vertical-align:-2px;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.page-loading{background:var(--bg);justify-content:center;align-items:center;height:100%;display:flex}.page-loading-bar{background:var(--accent-softer);border-radius:999px;width:64px;height:3px;position:relative;overflow:hidden}.page-loading-bar:after{content:"";transform-origin:0;background:linear-gradient(90deg,#607af4,#49bfae);border-radius:999px;animation:1.1s ease-in-out infinite loading-slide;position:absolute;inset:0}@keyframes loading-slide{0%{transform:scaleX(0)}50%{transform:scaleX(.8)}to{transform-origin:100%;transform:scaleX(0)}}.lazy-fallback,.monaco-loading{height:100%;min-height:120px;color:var(--text-dim);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.page{flex-direction:column;height:100%;display:flex}.page-body{flex:1;padding:28px 32px;overflow:auto}.new-project-form{flex-direction:column;gap:14px;max-width:440px;margin-top:16px;display:flex}.new-project-form label{color:var(--text-dim);margin-bottom:5px;font-size:12px;display:block}.app-shell{flex-direction:column;height:100%;display:flex}.topbar{z-index:20;background:color-mix(in srgb, var(--bg-panel) 88%, transparent);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;height:52px;padding:0 18px;display:flex;position:relative}.topbar:after{content:"";pointer-events:none;background:linear-gradient(90deg,#5b8cff8c,#35d0ba59 38%,#0000 70%);height:1px;position:absolute;bottom:-1px;left:18px;right:18px}.brand{color:var(--text);cursor:pointer;letter-spacing:.3px;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;padding:4px 6px;font-size:15px;font-weight:700;display:flex}.brand span{background:linear-gradient(90deg,#5b8cff,#35d0ba);color:#0000;-webkit-background-clip:text;background-clip:text}.topbar-nav{flex:1;gap:4px;display:flex}.nav-item{color:var(--text-dim);background:0 0;border:none;border-radius:8px;padding:7px 14px;font-size:14px;font-weight:500;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{color:var(--accent);background:0 0;font-weight:600}.nav-item.active:after{content:"";background:linear-gradient(90deg,#5b8cff,#35d0ba);border-radius:3px;width:26px;height:3px;position:absolute;bottom:2px;left:50%;transform:translate(-50%);box-shadow:0 1px 6px #5b8cff59}.topbar-right{align-items:center;gap:6px;display:flex}.app-main{flex:1;min-height:0}.login-page{background:var(--bg);justify-content:center;align-items:center;height:100%;display:flex;position:relative}.login-theme{position:absolute;top:18px;right:22px}.login-card{background:var(--bg-panel);border:1px solid var(--border);width:340px;box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;padding:36px 32px 32px;display:flex}.login-brand{letter-spacing:.4px;justify-content:center;align-items:center;gap:10px;margin-bottom:2px;font-size:22px;font-weight:700;display:flex}.login-brand span{background:linear-gradient(90deg,#5b8cff,#35d0ba);color:#0000;-webkit-background-clip:text;background-clip:text}.login-subtitle{text-align:center;color:var(--text-dim);letter-spacing:.6px;margin:6px 0 4px;font-size:12.5px}.login-tabs{border-bottom:1px solid var(--border);margin:18px 0 16px;display:flex}.login-tabs .tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:1;margin-bottom:-1px;padding:9px 0;font-size:14px;font-weight:500}.login-tabs .tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.login-card input+input{margin-top:12px}.project-card{background:var(--bg-panel);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);content-visibility:auto;contain-intrinsic-size:auto 160px;border-radius:14px;padding:18px;transition:border-color .18s,box-shadow .18s,transform .18s}.project-card h3{font-size:15px;font-weight:600}.editor-page{height:100%;display:flex;position:relative}.editor-left{border-right:1px solid var(--border);background:var(--bg-panel);flex-direction:column;width:252px;min-width:190px;display:flex}.editor-mid{background:var(--bg);flex-direction:column;flex:1;min-width:320px;display:flex}.editor-right{border-left:1px solid var(--border);background:var(--bg-panel);flex-direction:column;width:380px;min-width:300px;display:flex}.statusbar{background:var(--bg-panel);border-top:1px solid var(--border);z-index:10;align-items:center;gap:12px;height:32px;padding:0 14px;font-size:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.statusbar>span{color:var(--text-dim)}.editor-page .editor-left,.editor-page .editor-mid,.editor-page .editor-right{padding-bottom:32px}.toast{background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text);box-shadow:var(--shadow-md);white-space:nowrap;border-radius:999px;padding:7px 16px;font-size:12px;position:absolute;top:-40px;right:130px}.filetree{flex-direction:column;height:100%;min-height:0;display:flex}.ft-head{color:var(--text-dim);border-bottom:1px solid var(--border);letter-spacing:.4px;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.ft-body{-webkit-user-select:none;user-select:none;flex:1;padding:6px;overflow:auto}.ft-row{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:7px;padding:4px 10px;font-size:12.5px;transition:background-color .12s,color .12s;overflow:hidden}.ft-row:hover{background:var(--bg-hover);color:var(--text)}.ft-row.active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.ft-row.ft-dir{color:var(--text-dim);font-weight:600}.ft-arrow{width:14px;color:var(--text-dim);font-size:10px;display:inline-block}.tabs{border-bottom:1px solid var(--border);background:var(--bg);scrollbar-width:none;flex-shrink:0;align-items:stretch;min-height:36px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs .tab{cursor:pointer;border-right:1px solid var(--border);color:var(--text-dim);white-space:nowrap;background:0 0;border-radius:0;align-items:center;gap:6px;max-width:200px;padding:0 12px;font-size:12.5px;display:flex;position:relative}.tabs .tab:hover{background:var(--bg-hover);color:var(--text)}.tabs .tab.active{background:var(--bg-panel);color:var(--text);font-weight:500}.tabs .tab.active:before{content:"";background:linear-gradient(90deg,#5b8cff,#35d0ba);height:2px;position:absolute;top:0;left:0;right:0}.tab-close{color:var(--text-dim);border-radius:4px;padding:0 3px;font-size:14px}.tab-close:hover{color:var(--danger);background:var(--danger-soft)}.editor-body{flex:1;min-height:0}.chat{flex-direction:column;height:100%;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.chat-body{flex-direction:column;flex:1;gap:12px;padding:14px;display:flex;overflow:auto}.msg{gap:8px;animation:.18s msg-in;display:flex}@keyframes msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.msg.user{flex-direction:row-reverse}.msg-label{background:var(--bg-hover);color:var(--text-dim);letter-spacing:.3px;border-radius:999px;height:fit-content;margin-top:2px;padding:3px 8px;font-size:10.5px}.msg-body{background:var(--bg-hover);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;border-radius:12px;max-width:85%;padding:10px 13px;font-size:13px;line-height:1.65}.msg.user .msg-body{background:var(--accent-soft);border-color:#0000}.cursor{color:var(--accent);animation:1s infinite blink}@keyframes blink{50%{opacity:0}}.files-preview{color:var(--text-dim);margin-top:6px;font-size:12px}.fpath{color:var(--text);padding:2px 0}.pending-bar{border-top:1px solid var(--border);background:var(--accent-softer);color:var(--text-dim);padding:10px 14px;font-size:12.5px}.config-hint{border:1px solid var(--warning-border);color:var(--text-dim);background:var(--warning-bg);border-radius:10px;margin:0 14px 8px;padding:10px 13px;font-size:12.5px;line-height:1.55}.config-hint strong{color:var(--warning);font-weight:700}.chat-input{border-top:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;gap:8px;padding:12px 14px;display:flex;position:relative}.chat-input textarea{resize:none;flex:1}.chat-input button{align-self:flex-end}.chat-img-btn{color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.chat-img-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--accent);border-color:#0000}.ws-page{height:100%;display:flex}.ws-sidebar{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;width:208px;min-width:176px;padding:14px 10px;display:flex}.ws-brand{cursor:pointer;letter-spacing:.3px;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:8px 10px 18px;font-size:15px;font-weight:700;display:flex}.ws-brand span{background:linear-gradient(90deg,#5b8cff,#35d0ba);color:#0000;-webkit-background-clip:text;background-clip:text}.ws-nav-group{flex-direction:column;gap:3px;display:flex}.ws-nav{text-align:left;color:var(--text-dim);background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:9px 11px;font-size:13.5px;font-weight:500;display:flex}.ws-nav:hover{background:var(--bg-hover);color:var(--text)}.ws-nav.active{background:var(--accent-softer);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft);font-weight:600}.ws-nav-icon{width:20px;color:inherit;justify-content:center;display:inline-flex}.ws-main{flex-direction:column;flex:1;min-width:0;display:flex}.ws-chat{flex-direction:column;flex:1;min-height:0;display:flex}.ws-chat-top{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;display:flex}.ws-chat-top h2{letter-spacing:.2px;font-size:17px;font-weight:700}.ws-chat-body{flex-direction:column;flex:1;min-height:0;display:flex}.ws-chat-body .chat{flex:1}.ws-pane{flex:1;padding:28px 32px;overflow:auto}.ws-pane h2{margin-bottom:4px;font-size:17px;font-weight:700}.ws-guide{background:var(--bg-panel);border:1px dashed var(--border-strong);box-shadow:var(--shadow-sm);border-radius:14px;flex-shrink:0;margin:16px 24px;padding:20px 22px;line-height:1.7}.file-drop{text-align:center;border:1.5px dashed var(--border-strong);cursor:pointer;color:var(--text-dim);border-radius:12px;margin-top:8px;padding:30px 18px;font-size:13px;transition:border-color .15s,color .15s,background-color .15s;display:block}.file-drop:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-softer)}.file-drop input{display:none}.imp-steps{margin-top:18px}.imp-steps .dim{margin-bottom:6px}.toast-fixed{background:var(--bg-elevated);border:1px solid var(--border-strong);z-index:2000;box-shadow:var(--shadow-lg);border-radius:999px;padding:10px 20px;font-size:13px;animation:.2s toast-in;position:fixed;bottom:60px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.import-done{background:var(--bg-panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;padding:26px}.sheet-mask{background:var(--sheet-mask);z-index:3000;animation:.2s fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sheet{z-index:3001;background:var(--bg-panel);border-top:1px solid var(--border);border-radius:20px 20px 0 0;flex-direction:column;max-height:82vh;transition:transform .3s cubic-bezier(.22,.9,.3,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -14px 50px #00000059}.sheet.open{transform:translateY(0)}.sheet-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 22px 12px;display:flex}.sheet-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 9px;font-size:16px}.sheet-close:hover{color:var(--text);background:var(--bg-hover)}.sheet-body{padding:10px 22px 30px;overflow-y:auto}.sheet-back{cursor:pointer;color:var(--text-dim);border-radius:6px;padding:4px 6px;font-size:14px}.sheet-back:hover{color:var(--text);background:var(--bg-hover)}.settings-menu{flex-direction:column;display:flex}.settings-menu-item{cursor:pointer;border-radius:12px;align-items:center;gap:13px;padding:14px 10px;transition:background .12s;display:flex}.settings-menu-item:hover{background:var(--bg-hover)}.settings-menu-item.danger .settings-menu-main>div:first-child{color:var(--danger)}.settings-menu-icon{text-align:center;width:32px;font-size:19px}.settings-menu-main{flex:1;min-width:0}.settings-menu-main>div:first-child{font-size:14px;font-weight:600}.settings-menu-arrow{color:var(--text-dim);font-size:20px}.settings-view{padding:10px 6px}.settings-view-title{margin-bottom:16px;font-size:15px;font-weight:700}.guide-h{margin:18px 0 6px;font-size:14px;font-weight:600}.guide-h:first-of-type{margin-top:4px}.settings-view p{line-height:1.75}.settings-view ul,.settings-view ol{margin:6px 0;padding-left:20px;line-height:1.8}.settings-view li{margin:3px 0;font-size:13px}.sheet-group{border-bottom:1px solid var(--border);padding:18px 0}.sheet-group:last-child{border-bottom:none}.sheet-group-title{color:var(--text);margin-bottom:10px;font-size:14px;font-weight:600}.sheet-group-body label{color:var(--text-dim);margin-bottom:5px;font-size:12.5px;display:block}.guide-panel{z-index:3002;background:var(--bg-panel);border:1px solid var(--border);opacity:0;width:min(680px,94vw);max-height:90vh;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;transition:all .22s;display:flex;position:fixed;top:5vh;left:50%;transform:translate(-50%,12px)}.guide-panel.open{opacity:1;transform:translate(-50%)}.guide-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.guide-body{padding:18px 24px 28px;font-size:13.5px;line-height:1.75;overflow-y:auto}.guide-body h4{margin:20px 0 6px;font-size:14px}.guide-body ul,.guide-body ol{margin:6px 0;padding-left:20px}.guide-body li{margin:4px 0}.guide-code{background:var(--code-bg);border:1px solid var(--border);color:var(--code-text);border-radius:10px;margin:8px 0;padding:13px 15px;font-size:12px;line-height:1.6;overflow-x:auto}.guide-warn{background:#e0a32a14;border:1px solid #e0a32a59;border-radius:10px;margin:8px 0;padding:10px 13px;font-size:12.5px}.guide-table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12.5px}.guide-table th,.guide-table td{border:1px solid var(--border);text-align:left;padding:8px 11px}.guide-table th{background:var(--bg-hover);font-weight:600}.studio-page{flex-direction:column;height:100%;display:flex}.studio-toolbar{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;height:48px;padding:0 16px;display:flex}.studio-toolbar>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.studio-toolbar a{display:contents}.studio-main{flex:1;min-height:0;display:flex}.studio-canvas{background:#fff;flex:1;min-width:0;position:relative;overflow:hidden}.studio-chat{border-left:1px solid var(--border);background:var(--bg-panel);flex-direction:column;width:360px;min-width:300px;display:flex}.studio-seltools{z-index:1500;background:var(--bg-panel);border:1px solid var(--accent);box-shadow:var(--shadow-lg);border-radius:10px;align-items:center;gap:6px;padding:7px 12px;display:flex;position:absolute;top:56px;left:50%;transform:translate(-50%)}.studio-seltools button{padding:3px 10px;font-size:12px}.studio-hint{border:1px solid var(--accent);color:#e7ecf3;z-index:1501;pointer-events:none;background:#0c0f15eb;border-radius:999px;padding:8px 20px;font-size:12px;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim);background-clip:padding-box}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=900px){.editor-right{width:320px}.studio-chat{width:300px}.ws-sidebar{width:176px}}@media (width<=720px){.page-body{padding:18px 14px}.ws-page{flex-direction:column}.ws-sidebar{border-right:none;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;width:100%;min-width:0;padding:8px 12px}.ws-brand{padding:6px 10px}.ws-nav-group{flex-direction:row;flex:1;justify-content:flex-end}.ws-chat-top{flex-direction:column;align-items:flex-start;padding:14px 16px}.topbar{padding:0 12px}.btn-label{display:none}}:root,:root[data-theme=dark]{--bg:#101514;--bg-panel:#171e1d;--bg-hover:#222a28;--bg-elevated:#1d2523;--border:#cbddd81d;--border-strong:#cbddd83b;--text:#f2f6f4;--text-dim:#a3b0ad;--placeholder:#879692;--accent:#607af4;--accent-hover:#7891ff;--accent-soft:#607af426;--accent-softer:#607af413;--danger:#ff7781;--danger-soft:#ff77811f;--success:#58c7a7;--success-soft:#58c7a71f;--warning:#e1b869;--warning-soft:#e1b8691c;--warning-bg:#e1b8691a;--warning-border:#e1b86957;--code-bg:#0d1211;--code-text:#d6e1dd;--shadow-sm:0 1px 2px #0000003d;--shadow-md:0 12px 26px #0003;--shadow-lg:0 24px 60px #00000061;--sheet-mask:#05090899;--glow:radial-gradient(820px 420px at 78% -10%, #5690ab1a, transparent 63%), radial-gradient(620px 380px at 3% 108%, #42ac910f, transparent 68%)}:root[data-theme=light]{--bg:#f4f6f4;--bg-panel:#fbfcfb;--bg-hover:#e9eeeb;--bg-elevated:#fff;--border:#192b271b;--border-strong:#192b2730;--text:#1b2824;--text-dim:#667772;--placeholder:#788884;--accent:#4969d8;--accent-hover:#5c7be6;--accent-soft:#4969d81c;--accent-softer:#4969d80e;--danger:#d94f5c;--danger-soft:#d94f5c1a;--success:#208e71;--success-soft:#208e711a;--warning:#9c6b19;--warning-soft:#9c6b191a;--warning-bg:#fff7e6;--warning-border:#9c6b1942;--code-bg:#f1f5f2;--code-text:#31413c;--shadow-sm:0 1px 2px #1626210d;--shadow-md:0 10px 28px #16262113;--shadow-lg:0 24px 58px #1626211f;--sheet-mask:#16262157;--glow:radial-gradient(880px 420px at 82% -14%, #4969d813, transparent 62%), radial-gradient(640px 360px at 4% 106%, #208e710e, transparent 69%)}body{letter-spacing:.005em;background-attachment:fixed;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button{border-radius:8px;font-weight:520}button.primary{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 78%, #394f9c));box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 20%, transparent);border-color:#0000}button.primary:hover:not(:disabled){box-shadow:0 10px 22px color-mix(in srgb, var(--accent) 27%, transparent);transform:translateY(-1px)}button.soft{border:1px solid color-mix(in srgb, var(--accent) 16%, transparent)}input,textarea,select{background:color-mix(in srgb, var(--bg-elevated) 82%, transparent);border-radius:8px}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px var(--accent-soft)}.topbar{background:color-mix(in srgb, var(--bg-panel) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);gap:22px;height:56px;padding:0 26px}.topbar:after{background:linear-gradient(90deg, var(--accent), #51b9a38c, transparent 44%);opacity:.5;left:26px;right:26px}.brand{padding:4px 2px}.brand:hover{background:0 0}.brand span,.login-brand span{background:linear-gradient(105deg, var(--accent), #49bfae);-webkit-background-clip:text;background-clip:text}.nav-item{border-radius:7px;padding:7px 10px;font-size:13px}.nav-item.active:after{background:linear-gradient(90deg, var(--accent), #49bfae);left:10px;right:10px}.theme-toggle{background:var(--bg-hover);border-color:var(--border)}.icon-btn{border-radius:7px}.login-page{background-image:var(--glow)}.login-card{border-color:var(--border);width:min(390px,100vw - 42px);box-shadow:var(--shadow-lg);border-radius:16px;padding:34px}.login-brand{gap:10px}.login-subtitle{letter-spacing:.32px}.login-tabs{gap:8px}.login-tabs .tab{border-radius:7px 7px 0 0}.editor-left,.editor-right{background:color-mix(in srgb, var(--bg-panel) 86%, transparent)}.editor-left{border-right-color:var(--border)}.editor-right{border-left-color:var(--border)}.statusbar{background:color-mix(in srgb, var(--bg-panel) 92%, transparent)}.ft-head{letter-spacing:.08em;text-transform:uppercase;padding:13px 14px 10px;font-size:10.5px}.ft-row{border-radius:6px;padding-top:5px;padding-bottom:5px}.ft-row.active{box-shadow:inset 2px 0 0 var(--accent)}.tabs{background:color-mix(in srgb, var(--bg-panel) 72%, transparent)}.tabs .tab.active{background:var(--bg-elevated)}.chat-head{letter-spacing:.02em;padding:13px 16px;font-size:12px}.chat-body{gap:14px;padding:18px 16px}.msg-body{border-radius:12px}.chat-input{background:color-mix(in srgb, var(--bg-panel) 93%, transparent);padding:14px 16px 16px}.ws-sidebar{background:color-mix(in srgb, var(--bg-panel) 84%, transparent);width:216px;padding:16px 10px 12px}.ws-sidebar-label{color:var(--text);letter-spacing:.02em;flex-direction:column;gap:1px;padding:8px 11px 17px;font-size:14px;font-weight:650;display:flex}.ws-sidebar-kicker{color:var(--text-dim);font-family:var(--mono,ui-monospace, monospace);letter-spacing:.13em;font-size:9px;font-weight:600}.ws-nav-group{gap:4px}.ws-nav{min-height:38px;color:var(--text-dim);border-radius:7px;padding:8px 10px;font-weight:520}.ws-nav.active{color:var(--text);background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.ws-nav-icon{color:color-mix(in srgb, var(--text-dim) 86%, var(--accent))}.ws-nav.active .ws-nav-icon{color:var(--accent)}.ws-chat-top{background:linear-gradient(110deg, color-mix(in srgb, var(--bg-panel) 72%, transparent), transparent);align-items:flex-start;min-height:118px;padding:25px 28px 20px}.ws-title-block{flex-direction:column;gap:3px;display:flex}.ws-eyebrow{color:var(--accent);font-family:var(--mono,ui-monospace, monospace);letter-spacing:.12em;font-size:10px;font-weight:650}.ws-title{letter-spacing:-.025em;font-size:clamp(20px,2vw,26px);font-weight:680;line-height:1.25}.ws-preview-button{border-color:var(--border-strong);color:var(--text);background:0 0}.ws-preview-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent)}.ws-guide{border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;justify-content:space-between;gap:32px;margin:0 28px 20px;padding:24px 0 23px;display:flex}.ws-guide-copy{flex-direction:column;align-items:flex-start;gap:7px;max-width:520px;display:flex}.ws-guide-copy strong{letter-spacing:-.015em;font-size:17px}.ws-guide-copy p{color:var(--text-dim);font-size:13px;line-height:1.7}.ws-guide-copy button{margin-top:5px}.ws-guide-steps{grid-template-columns:repeat(3,minmax(68px,1fr));align-self:center;min-width:300px;display:grid}.ws-guide-steps>div{border-left:1px solid var(--border);flex-direction:column;gap:1px;min-height:62px;padding:0 14px;display:flex}.ws-guide-steps>div:first-child{border-left:0}.ws-guide-steps span{color:var(--accent);font-family:var(--mono,ui-monospace, monospace);letter-spacing:.1em;font-size:10px}.ws-guide-steps b{font-size:13px;font-weight:620}.ws-guide-steps small{color:var(--text-dim);white-space:nowrap;font-size:11px}.ws-pane{padding:32px 34px}.ws-pane h2{letter-spacing:-.025em;font-size:22px}.project-card{background:color-mix(in srgb, var(--bg-panel) 84%, transparent);box-shadow:none;border-radius:12px}.project-card:hover{border-color:color-mix(in srgb, var(--accent) 50%, var(--border));box-shadow:var(--shadow-md);transform:translateY(-2px)}.file-drop{background:color-mix(in srgb, var(--bg-panel) 55%, transparent);border-radius:10px}.import-done{box-shadow:var(--shadow-md);border-radius:12px}.project-card,.settings-menu-item,.sheet-group{content-visibility:auto;contain-intrinsic-size:auto 84px}@media (width<=720px){.topbar{padding:0 14px}.topbar:after{left:14px;right:14px}.ws-sidebar{width:100%;padding:6px 8px}.ws-sidebar-label{display:none}.ws-chat-top{gap:14px;min-height:0;padding:18px 16px}.ws-title{font-size:20px}.ws-guide{flex-direction:column;gap:18px;margin:0 16px 16px;padding:18px 0}.ws-guide-steps{width:100%;min-width:0}.ws-guide-steps>div{padding:0 9px}.ws-guide-steps small{white-space:normal}.ws-pane{padding:22px 16px}.ws-sidebar{scrollbar-width:none;align-items:center;gap:4px;display:flex;overflow-x:auto}.ws-sidebar::-webkit-scrollbar{display:none}.ws-sidebar .ws-nav-group{display:contents}.ws-nav{white-space:nowrap;flex:1 0 68px;justify-content:center;gap:4px;min-width:68px;min-height:40px;padding:8px 5px;font-size:12px}.ws-nav-icon{width:17px}}
