:root{--bg:#fff;--surface:#f5f5f5;--surface-warm:#fafafa;--fg:#0d0d0d;--fg-2:#1a1a1a;--muted:#6e6e6e;--meta:#9b9b9b;--border:#e5e5e5;--border-soft:#ededed;--accent:#10a37f;--accent-on:#fff;--accent-hover:#0a7a5e;--accent-soft:#e8f5f0;--warn:#f5a623;--warn-soft:#fdf3df;--danger:#ef4146;--danger-soft:#fef0f0;--success:#16a34a;--success-soft:#e8f8ef;--info:#4f6ef7;--info-soft:#eef2ff;--diff-add:#2e7d32;--diff-del:#c62828;--diff-chg:#f9a825;--font-display:"Signifier", "Source Serif Pro", "Source Han Serif SC", "Songti SC", "STSong", Georgia, ui-serif, serif;--font-body:"Söhne", "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--font-mono:"Söhne Mono", ui-monospace, "JetBrains Mono", Menlo, Consolas, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--text-4xl:36px;--leading-body:1.55;--leading-tight:1.18;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--sidebar-w:248px;--sidebar-w-collapsed:48px;--topbar-h:52px;--motion-fast:.15s;--motion-base:.22s;--ease-standard:cubic-bezier(.16, 1, .3, 1);--shadow-xs:0 1px 2px #0d0d0d26;--shadow-sm:0 6px 20px #0d0d0d0f;--shadow-md:0 2px 24px #0d0d0d14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-appearance=dark]{--bg:#111;--surface:#1c1c1c;--surface-warm:#161616;--fg:#f4f4f4;--fg-2:#ebebeb;--muted:#a0a0a0;--meta:#7a7a7a;--border:#2e2e2e;--border-soft:#242424;--warn:#f0b429;--warn-soft:#2a2110;--danger:#f07178;--danger-soft:#2a1416;--success:#3dd68c;--success-soft:#10261c;--info:#7b93ff;--info-soft:#171d33;--diff-add:#4caf50;--diff-del:#ef5350;--diff-chg:#ffb300;--shadow-xs:0 1px 2px #00000073;--shadow-sm:0 6px 20px #00000059;--shadow-md:0 2px 24px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=green]{--accent:#10a37f;--accent-on:#fff;--accent-hover:#0a7a5e;--accent-soft:#e8f5f0}[data-theme=blue]{--accent:#2563eb;--accent-on:#fff;--accent-hover:#1d4ed8;--accent-soft:#eff6ff}[data-theme=slate]{--accent:#475569;--accent-on:#fff;--accent-hover:#334155;--accent-soft:#f1f5f9}[data-appearance=dark][data-theme=green]{--accent:#1fbf93;--accent-hover:#3dd6ad;--accent-soft:#12352c}[data-appearance=dark][data-theme=blue]{--accent:#3b82f6;--accent-hover:#60a5fa;--accent-soft:#15233f}[data-appearance=dark][data-theme=slate]{--accent:#94a3b8;--accent-hover:#cbd5e1;--accent-on:#111;--accent-soft:#232a33}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}input,textarea,select{font:inherit;color:inherit}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{text-wrap:pretty;margin:0}h1,h2,h3{text-wrap:balance;margin:0}.auth-boot{min-height:100vh;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);background:var(--bg);place-items:center;display:grid}.btn{border-radius:var(--radius-sm);color:inherit;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.btn:disabled{cursor:not-allowed}.btn svg{flex-shrink:0;width:14px;height:14px}.btn-md{font-size:var(--text-sm);padding:7px 14px}.btn-sm{font-size:var(--text-xs);gap:5px;padding:5px 10px;font-weight:400}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:disabled{background:var(--surface);border-color:var(--surface);color:var(--meta)}.btn-outline{background:var(--bg);border-color:var(--border);color:var(--muted);font-weight:400}.btn-outline:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-outline.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000;font-weight:400}.btn-ghost:hover:not(:disabled){background:var(--surface);color:var(--fg)}.btn-ink{background:var(--fg);border-color:var(--fg);color:var(--bg)}.btn-ink:hover:not(:disabled){background:var(--fg-2);border-color:var(--fg-2)}.btn-ink:disabled{background:var(--surface);border-color:var(--surface);color:var(--meta)}.icon-btn{border-radius:var(--radius-sm);color:var(--muted);transition:background var(--motion-fast), color var(--motion-fast);place-items:center;display:grid}.icon-btn:hover:not(:disabled){background:var(--surface);color:var(--fg)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn svg{width:16px;height:16px}.icon-btn-md{width:32px;height:32px}.icon-btn-sm{width:30px;height:30px}.icon-btn-xs{border-radius:4px;width:26px;height:26px}.icon-btn-xs svg{width:14px;height:14px}.toggle-switch{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--fg);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.toggle-switch input{display:none}.toggle-track{background:var(--border);border-radius:var(--radius-pill);width:30px;height:18px;transition:background var(--motion-fast);position:relative}.toggle-track:after{content:"";border-radius:var(--radius-pill);background:var(--surface);width:14px;height:14px;box-shadow:var(--shadow-xs);transition:transform var(--motion-fast) var(--ease-standard);position:absolute;top:2px;left:2px}.toggle-switch input:checked+.toggle-track{background:var(--accent)}.toggle-switch input:checked+.toggle-track:after{transform:translate(12px)}.chip{border-radius:var(--radius-pill);background:var(--surface-warm);border:1px solid var(--border);color:var(--fg);font-size:var(--text-xs);cursor:pointer;transition:border-color var(--motion-fast), color var(--motion-fast), background var(--motion-fast);align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.chip:hover{border-color:var(--accent);color:var(--accent);background:var(--bg)}.chip svg{width:12px;height:12px}.confirm-overlay{z-index:1000;padding:var(--space-6);background:color-mix(in oklab, var(--fg) 32%, transparent);place-items:center;display:grid;position:fixed;inset:0}.confirm-dialog{width:min(360px,100%);padding:var(--space-5);background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:16px}.confirm-title{font-size:var(--text-lg);color:var(--fg);margin:0;font-weight:600;line-height:1.35}.confirm-desc{font-size:var(--text-sm);color:var(--muted);margin:8px 0 0;line-height:1.55}.confirm-actions{margin-top:var(--space-5);justify-content:flex-end;gap:8px;display:flex}.confirm-btn-danger{background:var(--danger);border-color:var(--danger);color:var(--accent-on)}.confirm-btn-danger:hover:not(:disabled){background:color-mix(in oklab, var(--danger) 88%, var(--fg));border-color:color-mix(in oklab, var(--danger) 88%, var(--fg))}.login-page{--bg:#fff;--surface:#f5f5f5;--surface-warm:#fafafa;--fg:#0d0d0d;--fg-2:#1a1a1a;--muted:#6e6e6e;--meta:#9b9b9b;--border:#e5e5e5;--border-soft:#ededed;--accent:#10a37f;--accent-on:#fff;--accent-hover:#0a7a5e;--accent-soft:#e8f5f0;--warn:#f5a623;--warn-soft:#fdf3df;--danger:#ef4146;--danger-soft:#fef0f0;--success:#16a34a;--success-soft:#e8f8ef;--info:#4f6ef7;--info-soft:#eef2ff;--shadow-xs:0 1px 2px #0d0d0d26;--shadow-sm:0 6px 20px #0d0d0d0f;--shadow-md:0 2px 24px #0d0d0d14;--login-bg:#f4f3f0;--login-ink:#171717;--login-muted:#6b6b6b;--login-display:"Libre Baskerville", Georgia, "Times New Roman", "Songti SC", "STSong", "Noto Serif SC", "SimSun", ui-serif, serif;--login-sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", system-ui, sans-serif;--login-num:"IBM Plex Sans", "SF Pro Text", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;background:radial-gradient(ellipse 50% 40% at 12% 0%, #00000009, transparent 70%), var(--login-bg);min-height:100vh;color:var(--login-ink);font-family:var(--login-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;flex-direction:column;display:flex;position:relative}.login-shell{box-sizing:border-box;flex:1;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(24px,3vw,40px);min-height:100vh;padding:clamp(48px,6vh,80px) clamp(28px,4vw,56px) clamp(28px,4vh,48px) clamp(24px,3.5vw,48px);display:grid}.login-left{justify-content:center;align-items:center;min-width:0;display:flex}.login-left-inner{text-align:center;flex-direction:column;align-items:center;gap:clamp(14px,2vh,20px);width:100%;max-width:480px;animation:.52s ease-out both login-rise;display:flex}.login-brand-lockup{align-items:center;gap:10px;display:inline-flex}.login-brand-lockup--corner{z-index:5;position:absolute;top:clamp(18px,2.8vh,28px);left:clamp(24px,3.5vw,48px)}.login-logo-mark{background:var(--login-ink);color:#fff;width:30px;height:30px;font-family:var(--login-display);letter-spacing:-.02em;border-radius:8px;flex-shrink:0;place-items:center;font-size:1.05rem;font-weight:700;line-height:1;display:grid}.login-wordmark{font-family:var(--login-display);letter-spacing:-.02em;color:var(--login-ink);margin:0;font-size:clamp(1.35rem,1.6vw,1.55rem);font-weight:700;line-height:1}.login-hero{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.login-hero-title{font-family:var(--login-display);letter-spacing:-.015em;color:var(--login-ink);white-space:nowrap;margin:0;font-size:clamp(2.1rem,3.1vw,2.85rem);font-weight:700;line-height:1.25}.login-hero-sub{font-family:var(--login-display);color:var(--login-muted);white-space:nowrap;margin:0;font-size:clamp(1.28rem,1.7vw,1.55rem);font-weight:400;line-height:1.4}.login-right{box-sizing:border-box;align-items:stretch;min-width:0;min-height:0;padding-block:clamp(8px,2vh,24px);display:flex}.login-visual{background:linear-gradient(145deg,#d9d4cb 0%,#b7b2a8 48%,#8f8a82 100%);border-radius:clamp(24px,2.8vw,32px);flex:1;width:100%;max-height:100%;animation:.7s ease-out both login-fade;overflow:hidden;box-shadow:0 1px 2px #0f121c0a,0 20px 48px #0f121c14}.login-visual-img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform 1.2s;display:block;transform:scale(1.01)}.login-visual:hover .login-visual-img{transform:scale(1.03)}.login-card{gap:var(--space-5);text-align:left;flex-direction:column;width:100%;max-width:460px;display:flex}.login-card--float{gap:var(--space-4);background:#fff;border:1px solid #1717170f;border-radius:22px;max-width:460px;padding:28px 28px 22px;box-shadow:0 1px 2px #0f121c0a,0 12px 28px #0f121c12,0 36px 72px #0f121c0f}.login-panel{width:100%;display:block;position:relative}.login-panel-pane--phone{visibility:hidden;pointer-events:none;flex-direction:column;gap:14px;width:100%;display:flex}.login-panel-pane--phone.is-active{visibility:visible;pointer-events:auto}.login-panel-pane--wechat{visibility:hidden;pointer-events:none;flex-direction:column;justify-content:center;align-items:stretch;display:flex;position:absolute;inset:0}.login-panel-pane--wechat.is-active{visibility:visible;pointer-events:auto}.login-panel-pane--wechat .wechat-panel{flex:1;justify-content:center;gap:8px;padding:0}.login-feedback{min-height:20px}.login-feedback .auth-error{margin:0}@keyframes login-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes login-fade{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login-tabs{align-items:center;gap:var(--space-6);margin-bottom:var(--space-2);display:flex}.login-tab{padding:0 0 var(--space-2);font-size:var(--text-lg);color:var(--meta);cursor:pointer;transition:color var(--motion-fast);background:0 0;border:0;font-weight:500;position:relative}.login-tab:hover{color:var(--muted)}.login-tab.is-active{color:var(--fg);font-weight:700}.login-tab.is-active:after{content:"";background:var(--fg);border-radius:1px;height:2px;position:absolute;bottom:0;left:0;right:0}.segmented{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-soft);grid-template-columns:1fr 1fr;gap:2px;padding:3px;display:grid}.segmented-item{border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-sm);color:var(--muted);transition:background var(--motion-fast), color var(--motion-fast);padding:9px 12px;font-weight:500}.segmented-item:hover:not(.active){color:var(--fg)}.segmented-item.active{background:var(--fg);color:var(--bg)}.login-input-wrap{display:block;position:relative}.login-input{border:1px solid var(--border);background:var(--bg);width:100%;height:50px;font-family:var(--login-num);font-size:var(--text-lg);letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--fg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);border-radius:12px;outline:none;padding:0 16px;font-weight:400}.login-input::placeholder{font-family:var(--login-sans);font-size:var(--text-base);letter-spacing:0;color:var(--meta);font-weight:400}.login-input:focus{border-color:color-mix(in oklab, var(--fg) 45%, var(--border));box-shadow:0 0 0 3px color-mix(in oklab, var(--fg) 6%, transparent)}.login-input-wrap--code .login-input{padding-right:112px}.login-get-code{right:var(--space-3);font-family:var(--login-sans);font-size:var(--text-sm);color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.login-get-code:hover:not(:disabled){color:var(--accent-hover)}.login-get-code:disabled{color:var(--meta);cursor:default}.auth-field{gap:var(--space-2);flex-direction:column;display:flex}.auth-label{font-size:var(--text-sm);color:var(--fg);font-weight:500}.auth-label-row{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.phone-field{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);align-items:center;gap:0;display:flex;overflow:hidden}.phone-field:focus-within{border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in oklab, var(--fg) 8%, transparent)}.phone-prefix{padding:0 var(--space-3);font-family:var(--login-num);font-size:var(--text-base);color:var(--fg);border-right:1px solid var(--border);background:var(--surface-warm);flex-shrink:0;place-items:center;height:48px;font-weight:400;display:grid}.phone-input{min-width:0;padding:0 var(--space-3);height:48px;font-family:var(--login-num);font-size:var(--text-lg);letter-spacing:.02em;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;flex:1;font-weight:400}.phone-input::placeholder{font-family:var(--login-sans);font-size:var(--text-base);letter-spacing:0;color:var(--meta);font-weight:400}.otp-row{gap:var(--space-2);grid-template-columns:repeat(6,1fr);display:grid}.otp-cell{aspect-ratio:1;text-align:center;width:100%;max-height:52px;font-family:var(--login-num);font-size:var(--text-xl);font-variant-numeric:tabular-nums;letter-spacing:.02em;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none;font-weight:400}.otp-cell:focus{border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in oklab, var(--fg) 8%, transparent)}.send-code-btn{font-size:var(--text-xs);color:var(--accent);padding:0;font-weight:500}.send-code-btn:hover:not(:disabled){color:var(--accent-hover)}.send-code-btn:disabled{color:var(--meta);cursor:default}.captcha-row{gap:var(--space-2);grid-template-columns:1fr 96px;align-items:center;display:grid}.captcha-question{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-warm);height:44px;font-size:var(--text-base);font-variant-numeric:tabular-nums;letter-spacing:.02em;place-items:center;font-weight:600;display:grid}.captcha-input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);height:44px;padding:0 var(--space-3);font-size:var(--text-base);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none}.captcha-input:focus{border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in oklab, var(--fg) 8%, transparent)}.auth-hint{margin:calc(-1 * var(--space-2)) 0 0;font-size:var(--text-xs);color:var(--meta)}.auth-error{font-size:var(--text-sm);color:var(--danger);margin:0}.auth-agree{align-items:flex-start;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.5;display:flex}.auth-agree input{opacity:0;width:0;height:0;position:absolute}.auth-check{border:1.5px solid var(--border);background:var(--bg);width:16px;height:16px;transition:background var(--motion-fast), border-color var(--motion-fast);border-radius:4px;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.auth-agree--circle .auth-check{border-radius:50%}.auth-agree--circle .auth-check:after{content:"";background:var(--fg);opacity:0;width:8px;height:8px;transition:opacity var(--motion-fast), transform var(--motion-fast);border-radius:50%;transform:scale(.6)}.auth-agree input:checked+.auth-check{background:var(--accent);border-color:var(--accent)}.auth-agree--circle input:checked+.auth-check{background:var(--bg);border-color:var(--fg)}.auth-agree--circle input:checked+.auth-check:after{opacity:1;transform:scale(1)}.auth-check svg{width:10px;height:10px;color:var(--accent-on);opacity:0}.auth-agree input:checked+.auth-check svg{opacity:1}.auth-agree a{color:var(--fg);text-underline-offset:2px;text-decoration:underline}.auth-agree a:hover{color:var(--accent)}.login-submit{width:100%;height:44px;font-size:var(--text-base);border-radius:var(--radius-md)}.login-footnote{text-align:center;font-size:var(--text-xs);color:var(--meta);margin:0}.wechat-panel{text-align:center;align-items:center;gap:var(--space-2);flex-direction:column;padding:0;display:flex}.wechat-qr{aspect-ratio:1;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);width:min(156px,42%);height:auto;padding:var(--space-3);flex-shrink:0;place-items:center;margin-bottom:2px;display:grid}.qr-svg{width:100%;height:100%;color:var(--fg)}.wechat-title{font-size:var(--text-base);margin:0;font-weight:600}.wechat-desc{font-size:var(--text-sm);color:var(--muted);margin:0}.login-footer{justify-content:center;gap:var(--space-4);font-size:var(--text-xs);color:var(--login-muted);flex-wrap:wrap;margin-top:2px;display:flex}.login-footer a:hover{color:var(--login-ink)}.slide-captcha-overlay{z-index:80;padding:var(--space-4);place-items:center;display:grid;position:fixed;inset:0}.slide-captcha-backdrop{cursor:pointer;background:#0f121c73;border:0;position:absolute;inset:0}.slide-captcha-modal{color:#111;background:#fff;border-radius:16px;width:min(100%,360px);padding:18px 18px 14px;position:relative;box-shadow:0 18px 48px #0000002e}.slide-captcha-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:14px;display:flex}.slide-captcha-eyebrow{color:#9aa0a6;margin:0;font-size:12px}.slide-captcha-title{letter-spacing:-.01em;margin:4px 0 0;font-size:16px;font-weight:700}.slide-captcha-close{color:#666;cursor:pointer;background:#f1f3f5;border:0;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;display:grid}.slide-captcha-close:hover{color:#222;background:#e8eaed}.slide-captcha-stage{aspect-ratio:320/160;background:#dfe3e8;border-radius:8px;width:100%;max-width:320px;margin:0 auto;position:relative;overflow:hidden}.slide-captcha-bg{width:100%;height:auto;display:block}.slide-captcha-piece{pointer-events:none;filter:drop-shadow(0 2px 4px #00000059);position:absolute}.slide-captcha-badge{color:#fff;background:#00000059;border-radius:4px;padding:2px 6px;font-size:10px;line-height:1.4;position:absolute;bottom:8px;right:8px}.slide-captcha-track{-webkit-user-select:none;user-select:none;touch-action:none;background:#f0f2f5;border-radius:999px;max-width:320px;height:40px;margin:14px auto 10px;position:relative;overflow:hidden}.slide-captcha-track.is-ok{background:var(--success-soft)}.slide-captcha-track.is-fail{background:var(--danger-soft)}.slide-captcha-track-fill{background:color-mix(in oklab, var(--accent) 18%, transparent);pointer-events:none;position:absolute;top:0;bottom:0;left:0}.slide-captcha-track.is-ok .slide-captcha-track-fill{background:color-mix(in oklab, var(--success) 22%, transparent)}.slide-captcha-track-hint{color:#9aa0a6;pointer-events:none;place-items:center;padding-left:36px;font-size:12px;display:grid;position:absolute;inset:0}.slide-captcha-handle{background:var(--accent);width:36px;height:36px;color:var(--accent-on);cursor:grab;box-shadow:0 2px 8px color-mix(in oklab, var(--accent) 35%, transparent);touch-action:none;z-index:1;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:2px;left:2px}.slide-captcha-handle:active{cursor:grabbing}.slide-captcha-track.is-ok .slide-captcha-handle{background:var(--success);box-shadow:none}.slide-captcha-grip{opacity:.95;background-color:#0000;background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:0 0,6px 0,12px 0;background-repeat:no-repeat;background-size:2px 100%,2px 100%,2px 100%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;width:14px;height:12px}.slide-captcha-tools{gap:8px;padding-left:2px;display:flex}.slide-captcha-tool{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;font-weight:600;display:grid}.slide-captcha-tool:hover{color:#374151;background:#f8fafc}@media (width<=960px){.login-shell{grid-template-columns:1fr;padding:64px 18px 36px}.login-brand-lockup--corner{top:16px;left:18px}.login-right{order:-1;width:100%;max-width:520px;min-height:220px;margin:0 auto;padding-block:8px}.login-visual{border-radius:24px;min-height:200px}.login-left-inner{gap:18px;max-width:440px}.login-hero-title,.login-hero-sub{white-space:normal}}@media (width<=480px){.login-right{display:none}.login-hero-title{white-space:normal;font-size:1.75rem}.login-hero-sub{font-size:1.18rem}.otp-row{gap:6px}.login-card{max-width:100%}.login-card--float{border-radius:18px;padding:22px 18px 18px}.login-tabs{gap:var(--space-5)}.slide-captcha-modal{padding:16px 14px 12px}}.compare-wb-overlay{z-index:120;background:var(--bg,#fff);flex-direction:column;gap:0;display:flex;position:fixed;inset:0;overflow:hidden}.compare-wb-overlay-bar{border-bottom:1px solid color-mix(in oklab, var(--border,#ccc) 80%, transparent);flex-shrink:0;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.compare-wb-overlay-meta{opacity:.75;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.8rem;overflow:hidden}.compare-wb-overlay .compare-wb{flex:1;min-width:0;min-height:0;padding:.75rem 1rem 1rem;overflow:hidden}.compare-wb{flex-direction:column;gap:.75rem;min-width:0;min-height:0;display:flex}.compare-wb-toolbar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.compare-wb-check{align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.compare-wb-zoom{align-items:center;gap:.35rem;display:inline-flex}.compare-wb-zoom button{width:1.75rem;height:1.75rem}.compare-wb-stats{opacity:.8;font-size:.8rem}.compare-wb-warn{color:var(--warn)}.compare-wb-panes{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem;min-width:0;min-height:0;display:grid}@media (width<=900px){.compare-wb-panes{grid-template-columns:minmax(0,1fr)}}.compare-wb-pane{border:1px solid color-mix(in oklab, var(--border,#ccc) 80%, transparent);border-radius:6px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.compare-wb-pane .pdf-viewer{flex:1;min-width:0;min-height:0}.compare-wb-pane-bar{background:color-mix(in oklab, var(--surface,#f5f5f5) 90%, transparent);justify-content:space-between;align-items:center;padding:.35rem .5rem;font-size:.8rem;display:flex}.compare-wb-pagenav{align-items:center;gap:.35rem;display:inline-flex}.compare-wb-pagenav button{width:1.5rem;height:1.5rem}.compare-wb-changes{flex-shrink:0;max-height:10rem;overflow:auto}.compare-wb-change-list{flex-direction:column;gap:.25rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.compare-wb-change{text-align:left;background:color-mix(in oklab, var(--surface,#fafafa) 100%, transparent);cursor:pointer;border:1px solid #0000;border-radius:4px;flex-direction:column;gap:.15rem;width:100%;padding:.4rem .5rem;display:flex}.compare-wb-change:hover{border-color:color-mix(in oklab, var(--accent,#666) 40%, transparent)}.compare-wb-change.kind-removed{border-left:3px solid var(--diff-del)}.compare-wb-change.kind-added{border-left:3px solid var(--diff-add)}.compare-wb-change.kind-changed{border-left:3px solid var(--diff-chg)}.compare-wb-change-meta{opacity:.75;font-size:.72rem}.compare-wb-change-label{word-break:break-word;font-size:.85rem}.compare-wb-pixel{border:1px solid color-mix(in oklab, var(--border,#ccc) 80%, transparent);border-radius:6px;flex-direction:column;flex-shrink:0;gap:.5rem;max-height:40vh;padding:.5rem;display:flex}.compare-wb-pixel-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.compare-wb-pixel-stage{gap:.5rem;min-height:0;display:grid;overflow:auto}.compare-wb-pixel-stage.view-side{grid-template-columns:1fr 1fr}@media (width<=900px){.compare-wb-pixel-stage.view-side{grid-template-columns:1fr}}.compare-wb-pixel-stage figure{flex-direction:column;gap:.25rem;margin:0;display:flex}.compare-wb-pixel-stage figcaption{opacity:.75;font-size:.75rem}.compare-wb-pixel-stage img{background:var(--bg);border-radius:4px;width:100%;height:auto}.tools-panel{flex-direction:column;flex:1;min-height:0;display:flex}.tools-panel-head{padding:var(--space-4) var(--space-5) var(--space-3);border-bottom:1px solid var(--border-soft);background:var(--bg);flex-shrink:0}.tools-panel-hint{margin:0 0 var(--space-3);font-size:var(--text-xs);color:var(--meta);line-height:1.5}.tools-group-tabs{flex-wrap:wrap;gap:6px;display:flex}.tools-group-tab{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg);font-size:var(--text-xs);color:var(--muted);transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);padding:5px 10px}.tools-group-tab:hover{color:var(--fg);border-color:color-mix(in oklab, var(--accent) 40%, var(--border))}.tools-group-tab.active{background:var(--accent-soft);border-color:color-mix(in oklab, var(--accent) 45%, transparent);color:var(--accent-hover);font-weight:500}.tools-panel-body{padding:var(--space-4) var(--space-5) var(--space-6);gap:var(--space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}.tools-section-head{margin-bottom:var(--space-3)}.tools-section-title{font-size:var(--text-sm);color:var(--fg);margin:0;font-weight:600}.tools-section-desc{font-size:var(--text-xs);color:var(--meta);margin:4px 0 0}.tools-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));display:grid}.tool-tile{padding:var(--space-3) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-warm);text-align:center;transition:border-color var(--motion-fast), background var(--motion-fast), transform var(--motion-fast);flex-direction:column;align-items:center;gap:8px;display:flex}.tool-tile:hover{border-color:color-mix(in oklab, var(--accent) 50%, var(--border));background:var(--bg);transform:translateY(-1px)}.tool-tile:focus-visible{outline:2px solid color-mix(in oklab, var(--accent) 55%, transparent);outline-offset:2px}.tool-tile-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:40px;height:40px;color:var(--accent-hover);place-items:center;display:grid}.tool-tile-label{font-size:var(--text-xs);color:var(--fg);font-weight:500;line-height:1.35}.tool-tile-phase{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--radius-pill);color:var(--meta);background:var(--surface);padding:1px 6px;font-size:10px}.tool-tile-phase.phase-1{color:var(--accent-hover);background:var(--accent-soft)}.tool-tile-phase.phase-2{color:var(--warn);background:var(--warn-soft)}.tool-tile-phase.phase-3{color:var(--muted);background:var(--surface)}.tool-detail{min-height:0;padding:var(--space-4) var(--space-5) var(--space-6);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.tool-detail-back{font-size:var(--text-xs);color:var(--muted);align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.tool-detail-back:hover{color:var(--accent-hover)}.tool-detail-hero{gap:var(--space-3);align-items:flex-start;display:flex}.tool-detail-icon{border-radius:var(--radius-md);background:var(--accent-soft);width:44px;height:44px;color:var(--accent-hover);flex-shrink:0;place-items:center;display:grid}.tool-detail-title{font-size:var(--text-lg);color:var(--fg);margin:0;font-weight:600}.tool-detail-desc{font-size:var(--text-sm);color:var(--muted);margin:4px 0 0;line-height:1.5}.tool-detail-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tool-meta-chip{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border-soft);color:var(--fg-2);padding:3px 8px;font-size:11px}.tool-meta-chip code{font-family:var(--font-mono);font-size:11px}.tool-meta-chip.muted{color:var(--meta)}.tool-form-placeholder{gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-warm);color:var(--muted);display:flex}.tool-form-placeholder svg{color:var(--warn);flex-shrink:0;margin-top:2px}.tool-form-title{font-size:var(--text-sm);color:var(--fg);margin:0 0 4px;font-weight:500}.tool-form-copy{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.55}.tool-detail-actions{gap:var(--space-2);padding-top:var(--space-2);flex-wrap:wrap;margin-top:auto;display:flex}.tools-result-bar{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid color-mix(in oklab, var(--accent) 30%, transparent);font-size:var(--text-xs);color:var(--accent-hover);padding:8px 10px;display:flex}.tools-result-bar button{font-size:var(--text-xs);color:var(--accent-hover);text-underline-offset:2px;text-decoration:underline}.tools-result-bar button:disabled{opacity:.5;cursor:not-allowed}.tool-tile.wired .tool-tile-icon{background:color-mix(in oklab, var(--accent) 22%, transparent)}.tool-form{gap:var(--space-4);flex-direction:column;display:flex}.tool-form-field{gap:var(--space-2);flex-direction:column;display:flex}.tool-form-label{font-size:var(--text-sm);color:var(--fg);font-weight:500}.tool-form-seg{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-soft);grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.tool-form-seg-item{border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-sm);color:var(--muted);transition:background var(--motion-fast), color var(--motion-fast);padding:8px 10px;font-weight:500}.tool-form-seg-item:hover:not(.active):not(:disabled){color:var(--fg)}.tool-form-seg-item.active{background:var(--fg);color:var(--bg)}.tool-form-seg-item:disabled{opacity:.5;cursor:not-allowed}.tool-form-error{font-size:var(--text-sm);color:var(--danger);margin:0;line-height:1.5}.tool-form-ok{font-size:var(--text-xs);color:var(--accent-hover);margin:0;line-height:1.5}.tool-form-hint{font-size:var(--text-xs);color:var(--meta);margin:0;line-height:1.55}.tool-form-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;font-size:var(--text-sm);color:var(--fg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none;padding:8px 10px}.tool-form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 14%, transparent)}.tool-form-input:disabled{opacity:.6;cursor:not-allowed}.tool-form-color{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;flex-shrink:0;width:40px;height:36px;padding:2px}.tool-form-color:disabled{opacity:.6;cursor:not-allowed}.tool-form-seg-4{grid-template-columns:repeat(4,1fr)}.tool-position-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tool-position-cell{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-warm);font-size:var(--text-xs);color:var(--muted);transition:border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast);padding:10px 6px}.tool-position-cell:hover:not(.active):not(:disabled){color:var(--fg);border-color:color-mix(in oklab, var(--accent) 40%, var(--border))}.tool-position-cell.active{background:var(--accent-soft);border-color:color-mix(in oklab, var(--accent) 45%, transparent);color:var(--accent-hover);font-weight:500}.tool-position-cell:disabled{opacity:.5;cursor:not-allowed}.tool-form-row{align-items:center;gap:var(--space-3);display:flex}.tool-form-range{accent-color:var(--accent);flex:1}.tool-form-value{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg);text-align:right;min-width:3.2em}.tool-form-check{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--fg-2);cursor:pointer;display:flex}.tool-form-check input{accent-color:var(--accent)}.tool-form-checks{gap:var(--space-2);flex-direction:column;display:flex}.tool-form-textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;font-size:var(--text-sm);color:var(--fg);resize:vertical;min-height:88px;transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none;padding:8px 10px;font-family:inherit;line-height:1.5}.tool-form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 14%, transparent)}.tool-form-textarea:disabled{opacity:.6;cursor:not-allowed}.tool-edit-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.tool-edit-add,.tool-edit-remove{color:var(--accent);font-size:var(--text-xs);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:2px 4px;display:inline-flex}.tool-edit-add:hover:not(:disabled),.tool-edit-remove:hover:not(:disabled){background:color-mix(in oklab, var(--accent) 10%, transparent)}.tool-edit-add:disabled,.tool-edit-remove:disabled{opacity:.4;cursor:not-allowed}.tool-edit-remove{color:var(--meta);flex-shrink:0}.tool-edit-rows{flex-direction:column;gap:8px;margin-top:6px;display:flex}.tool-edit-row{grid-template-columns:1.4em 1fr 1fr auto;align-items:center;gap:6px;display:grid}.tool-edit-index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);text-align:right}@media (width<=420px){.tool-edit-row{grid-template-columns:1.4em 1fr auto}.tool-edit-row .tool-form-input:nth-of-type(2){grid-column:2/-1}}.tool-form-grid-2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.tool-select-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg-2);font-size:var(--text-sm);cursor:pointer;align-items:center;padding:7px 12px;display:inline-flex}.tool-select-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.tool-select-btn.active{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 12%, transparent);color:var(--accent)}.tool-select-btn:disabled{opacity:.5;cursor:not-allowed}.tool-area-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-warm,var(--surface));grid-template-columns:1.4em 1fr auto;align-items:center;gap:6px;padding:6px 8px;display:grid}.tool-area-meta{font-size:var(--text-xs);color:var(--fg-2);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-json-result{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);font-family:var(--font-mono);color:var(--fg-2);white-space:pre-wrap;word-break:break-word;max-height:280px;margin:0;font-size:11px;line-height:1.5;overflow:auto}.tool-file-list{flex-direction:column;gap:6px;display:flex}.tool-file-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-warm);font-size:var(--text-xs);align-items:center;gap:8px;padding:8px 10px;display:flex}.tool-file-row.pinned{border-color:color-mix(in oklab, var(--accent) 35%, var(--border));background:var(--accent-soft)}.tool-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--fg);flex:1;font-weight:500;overflow:hidden}.tool-file-size{font-family:var(--font-mono);color:var(--meta);flex-shrink:0}.tool-file-tag{border-radius:var(--radius-pill);background:var(--bg);color:var(--accent-hover);flex-shrink:0;padding:1px 6px;font-size:10px}.tool-file-remove{color:var(--meta);flex-shrink:0;place-items:center;display:grid}.tool-file-remove:hover:not(:disabled){color:var(--danger)}.tool-file-add{border:1px dashed var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--muted);background:var(--bg);justify-content:center;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.tool-file-add:hover:not(:disabled){color:var(--accent-hover);border-color:color-mix(in oklab, var(--accent) 45%, var(--border))}.tool-file-add:disabled{opacity:.5;cursor:not-allowed}.mode-switch{padding:var(--space-3) var(--space-5) 0;background:var(--bg);flex-shrink:0}.mode-switch .segmented{max-width:220px}.mode-switch .segmented-item{font-size:var(--text-xs);padding:7px 10px}.chat-stream{padding:var(--space-5) var(--space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-thinking{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);align-self:flex-start}.chat-msg{margin-bottom:var(--space-5);min-width:0;max-width:88%}.chat-msg:last-child{margin-bottom:var(--space-2)}.chat-msg.agent{align-self:flex-start;width:100%;max-width:100%}.chat-msg.user{align-self:flex-end;margin-left:auto}.chat-msg.user .msg-text{background:var(--accent-soft);border-radius:var(--radius-lg);margin:0;padding:10px 14px;display:inline-block}.msg-text{font-size:var(--text-base);color:var(--fg);margin:0 0 var(--space-2);white-space:pre-wrap;line-height:1.65}.msg-text:last-child{margin-bottom:0}.clarify-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-warm);padding:var(--space-3) var(--space-4);max-width:36rem}.clarify-question{font-size:var(--text-base);margin:0 0 var(--space-3);color:var(--fg);line-height:1.6}.clarify-options{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.clarify-option{text-align:left;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;color:var(--fg);cursor:pointer;font:inherit;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.clarify-option:hover{border-color:var(--accent);background:var(--accent-soft)}.clarify-option-label{font-size:var(--text-sm);font-weight:600}.clarify-option-desc{font-size:var(--text-xs);color:var(--fg-2);line-height:1.45}.clarify-custom-toggle{color:var(--accent);font-size:var(--text-sm);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.clarify-custom-form{gap:var(--space-2);flex-direction:column;display:flex}.clarify-custom-input{resize:vertical;border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:3.5rem;font:inherit;font-size:var(--text-sm);background:var(--surface);color:var(--fg);padding:8px 10px}.clarify-resolved-hint{font-size:var(--text-xs);color:var(--meta);margin:0}.plan-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-warm);padding:var(--space-3) var(--space-4)}.plan-summary{font-size:var(--text-base);margin:0 0 var(--space-3);color:var(--fg);line-height:1.6}.plan-steps{margin:0 0 var(--space-3);padding-left:var(--space-5);font-size:var(--text-sm);color:var(--fg-2);flex-direction:column;gap:6px;line-height:1.5;display:flex}.plan-step-tool{font-family:var(--font-mono);background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-pill);margin-right:6px;padding:1px 6px;font-size:11px}.plan-note{border-top:1px solid var(--border);padding-top:var(--space-2);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted)}.plan-note-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--meta);font-size:10px}.plan-note.risk .plan-note-label{color:var(--warn)}.plan-note ul{padding-left:var(--space-4);margin:4px 0 0;line-height:1.6}.plan-options{border-top:1px solid var(--border);padding-top:var(--space-2);margin-top:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.plan-option{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--fg-2);cursor:pointer;display:flex}.plan-option input{accent-color:var(--accent)}.preview-disclaimer{font-size:var(--text-xs);color:var(--meta);margin:0}.gate-actions{align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.gate-hint{font-size:var(--text-xs);color:var(--meta)}.result-card{border:1px solid color-mix(in oklab, var(--accent) 30%, transparent);background:var(--accent-soft);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.download-link{margin-top:var(--space-2);border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);font-size:var(--text-sm);color:var(--accent-hover);align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.download-link:hover{border-color:var(--accent)}.download-size{font-family:var(--font-mono);color:var(--meta);font-size:11px}.error-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid color-mix(in oklab, var(--danger) 35%, transparent);background:color-mix(in oklab, var(--danger) 8%, transparent);font-size:var(--text-sm);color:var(--fg);line-height:1.55;display:flex}.error-card svg{color:var(--danger);flex-shrink:0;margin-top:2px}.tool-call{align-items:center;gap:var(--space-2);padding:8px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);margin:var(--space-2) 0;font-size:var(--text-sm);background:var(--bg);display:flex}.tool-call svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.tool-call-name{font-family:var(--font-mono);color:var(--fg);font-size:var(--text-xs)}.tool-call-args{color:var(--muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-call-status{font-size:var(--text-xs);color:var(--accent);flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.tool-call-status.failed,.tool-call-status.failed svg{color:var(--danger)}.input-area{padding:var(--space-3) var(--space-6) var(--space-5);background:0 0;border-top:0;flex-shrink:0}.composer{border:1px solid var(--border);background:var(--bg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);border-radius:24px;padding:12px 14px;box-shadow:0 2px 8px #0d0d0d0a,0 8px 28px #0d0d0d14}.composer:focus-within{border-color:color-mix(in oklab, var(--border) 60%, var(--accent));box-shadow:0 2px 8px #0d0d0d0d,0 10px 32px #0d0d0d1a}.composer-main{flex-wrap:nowrap;align-items:flex-end;gap:6px;min-width:0;display:flex}.composer-attach-btn{color:var(--muted);flex-shrink:0;margin-bottom:2px}.composer-attach-btn:hover:not(:disabled){color:var(--fg);background:var(--surface-warm)}.composer-file-menu{flex-shrink:0;margin-bottom:2px;position:relative}.composer-pdf-btn{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in oklab, var(--accent) 28%, transparent);transition:background var(--motion-fast), border-color var(--motion-fast);place-items:center;display:grid;position:relative}.composer-pdf-btn:hover:not(:disabled){background:color-mix(in oklab, var(--accent-soft) 70%, var(--bg));border-color:color-mix(in oklab, var(--accent) 45%, transparent)}.composer-pdf-btn:disabled{opacity:.5;cursor:not-allowed}.composer-pdf-check{background:var(--accent);width:12px;height:12px;color:var(--accent-on);border:1.5px solid var(--bg);border-radius:50%;place-items:center;line-height:0;display:grid;position:absolute;bottom:-3px;right:-3px}.composer-version-popover{z-index:20;background:var(--bg);border:1px solid var(--border);border-radius:14px;width:min(280px,100vw - 48px);padding:10px;position:absolute;bottom:calc(100% + 10px);left:0;box-shadow:0 4px 16px #0d0d0d14,0 12px 36px #0d0d0d1a}.composer-version-hint{font-size:var(--text-xs);color:var(--muted);margin:0 0 8px;padding:0 4px;line-height:1.45}.composer-version-list{flex-direction:column;gap:2px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.composer-version-item{text-align:left;width:100%;color:var(--fg);transition:background var(--motion-fast);border-radius:10px;align-items:flex-start;gap:8px;padding:8px;display:flex}.composer-version-item:hover:not(:disabled){background:var(--surface-warm)}.composer-version-item.is-selected{background:var(--accent-soft)}.composer-version-item:disabled{opacity:.5;cursor:not-allowed}.composer-version-radio{border:1.5px solid var(--border);width:16px;height:16px;color:var(--accent-on);background:var(--bg);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.composer-version-item.is-selected .composer-version-radio{border-color:var(--accent);background:var(--accent)}.composer-version-text{flex-direction:column;gap:2px;min-width:0;display:flex}.composer-version-title{font-size:var(--text-sm);font-weight:500;line-height:1.3}.composer-version-label{font-size:var(--text-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.composer-version-actions{border-top:1px solid var(--border-soft);gap:8px;margin-top:8px;padding-top:8px;display:flex}.composer-version-lock-hint{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.45}.composer-version-action{font-size:var(--text-xs);color:var(--muted);padding:2px 4px}.composer-version-action:hover:not(:disabled){color:var(--fg)}.composer-version-action.is-danger:hover:not(:disabled){color:var(--danger)}.composer-version-action:disabled{opacity:.45;cursor:not-allowed}.composer-textarea{resize:none;min-width:0;font-size:var(--text-base);min-height:32px;max-height:160px;color:var(--fg);background:0 0;border:0;outline:none;flex:1;padding:6px 4px;font-family:inherit;line-height:1.5;overflow-y:auto}.composer-textarea:placeholder-shown{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.composer-textarea::placeholder{color:var(--meta)}.composer-send-btn{background:var(--accent);width:34px;height:34px;color:var(--accent-on);box-shadow:0 2px 8px color-mix(in oklab, var(--accent) 35%, transparent);transition:background var(--motion-fast), box-shadow var(--motion-fast), opacity var(--motion-fast), transform var(--motion-fast);border:0;border-radius:50%;flex-shrink:0;place-items:center;margin-bottom:1px;display:grid}.composer-send-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 3px 10px color-mix(in oklab, var(--accent) 45%, transparent);transform:translateY(-1px)}.composer-send-btn:disabled{background:var(--surface);color:var(--meta);box-shadow:none;cursor:not-allowed;opacity:.7}.composer-send-btn svg{width:16px;height:16px}.home{background:var(--bg);flex-direction:column;flex:1;min-height:0;display:flex}.home.dragging{background:var(--accent-soft)}.home-body{min-height:0;padding:var(--space-10) var(--space-8) var(--space-8);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;overflow-y:auto}.home-mark{border-radius:var(--radius-lg);background:var(--bg);border:1px solid var(--border);width:64px;height:64px;margin-bottom:var(--space-5);flex-shrink:0;place-items:center;display:grid}.home-mark svg{width:30px;height:30px;color:var(--accent)}.home-title{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.015em;margin:0 0 var(--space-2);color:var(--fg);font-weight:400;line-height:1.18}.home-subtitle{font-size:var(--text-base);color:var(--muted);margin:0 0 var(--space-8)}.home-link{color:var(--accent);border-bottom:1px dashed color-mix(in oklab, var(--accent) 50%, transparent);padding:0}.home-link:hover{color:var(--accent-hover)}.home-error{margin:calc(-1 * var(--space-6)) 0 var(--space-6);font-size:var(--text-sm);color:var(--danger)}.home-cards{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:760px;display:grid}.home-card{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);text-align:left;transition:border-color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);display:flex}.home-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.home-card-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:36px;height:36px;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.home-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.home-card-title{font-size:var(--text-sm);color:var(--fg);font-weight:600}.home-card-desc{font-size:var(--text-xs);color:var(--muted);line-height:1.5}.home-composer{flex-shrink:0;justify-content:center;display:flex}.home-composer .input-area{border-top:0;width:100%;max-width:760px;padding-top:0}.history-overlay{top:0;bottom:0;right:0;left:var(--sidebar-w);z-index:100;background:color-mix(in oklab, var(--fg) 12%, transparent);animation:histFadeIn var(--motion-fast) var(--ease-standard);justify-content:flex-start;display:flex;position:fixed}.history-overlay.is-sidebar-collapsed{left:var(--sidebar-w-collapsed)}@keyframes histFadeIn{0%{opacity:0}to{opacity:1}}.history-panel{background:var(--bg);border-right:1px solid var(--border);width:400px;max-width:100%;height:100%;animation:histSlideIn var(--motion-base) var(--ease-standard);box-shadow:var(--shadow-md);flex-direction:column;display:flex}@keyframes histSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.hist-header{padding:0 var(--space-4);height:var(--topbar-h);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.hist-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}.hist-list{padding:var(--space-3);flex:1;overflow-y:auto}.hist-empty{justify-content:center;align-items:center;gap:var(--space-3);height:100%;color:var(--meta);font-size:var(--text-sm);flex-direction:column;display:flex}.hist-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);transition:background var(--motion-fast);margin-bottom:2px;display:flex}.hist-item:hover{background:var(--surface)}.hist-item-icon{border-radius:var(--radius-sm);background:var(--surface);width:36px;height:36px;color:var(--muted);flex-shrink:0;place-items:center;display:grid}.hist-item-info{flex:1;min-width:0}.hist-item-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.hist-item-meta{font-size:var(--text-xs);color:var(--meta);margin-top:2px}.hist-badge{border-radius:var(--radius-pill);flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:500}.hist-badge.succeeded{background:var(--accent-soft);color:var(--accent)}.hist-badge.failed{background:var(--danger-soft);color:var(--danger)}.hist-badge.awaiting_plan,.hist-badge.created{background:var(--warn-soft);color:var(--warn)}.hist-badge.executing{background:var(--info-soft);color:var(--info)}.hist-actions{flex-shrink:0;gap:2px;display:flex}.hist-item{cursor:pointer}.hist-item.active{background:var(--surface);outline:1px solid var(--border)}.app{background:var(--bg);height:100vh;display:flex;overflow:hidden}.workarea{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.wa-topbar{height:var(--topbar-h);align-items:center;gap:var(--space-4);padding:0 var(--space-6);background:var(--bg);flex-shrink:0;display:flex}.wa-breadcrumb{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-sm);color:var(--muted);flex:1;display:flex}.wa-title-btn{border-radius:var(--radius-sm);min-width:0;max-width:min(520px,100%);color:var(--fg);transition:background var(--motion-fast);align-items:center;gap:6px;margin:0 -8px;padding:4px 8px;font-weight:500;display:inline-flex}.wa-title-btn:hover:not(:disabled){background:var(--surface)}.wa-title-btn.is-readonly{cursor:default;color:var(--fg)}.wa-title-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wa-title-edit{color:var(--meta);opacity:0;transition:opacity var(--motion-fast);flex-shrink:0}.wa-title-btn:hover:not(:disabled) .wa-title-edit{opacity:1}.wa-title-input{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--bg);width:min(420px,100%);max-width:100%;color:var(--fg);font-size:var(--text-sm);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 14%, transparent);outline:none;margin:0 -8px;padding:4px 8px;font-family:inherit;font-weight:500}.wa-breadcrumb .sep{color:var(--meta)}.wa-breadcrumb .current{color:var(--fg);font-weight:500}.wa-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.wa-status-chip{border-radius:var(--radius-pill);background:var(--surface);font-size:var(--text-xs);color:var(--muted);align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.wa-status-chip .dot{border-radius:var(--radius-pill);background:var(--accent);width:6px;height:6px}.wa-status-chip.busy .dot{animation:pulse 2.4s var(--ease-standard) infinite}.wa-status-chip.is-failed{color:var(--danger);background:color-mix(in oklab, var(--danger) 10%, var(--surface))}.wa-status-chip.is-failed .dot{background:var(--danger)}.wa-status-chip.is-succeeded .dot{background:var(--accent)}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab, var(--accent) 50%, transparent)}70%{box-shadow:0 0 0 8px #0000}to{box-shadow:0 0 #0000}}.split{flex:1;grid-template-columns:40% 1px 1fr;min-height:0;display:grid}.split-handle{cursor:col-resize;background:var(--border);z-index:1;position:relative}.split-handle:after{content:"";position:absolute;inset:0 -4px}.split-handle:hover,.split-handle.dragging{background:var(--accent)}.panel{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.pdf-toolbar{--pdf-toolbar-compact:640px;--pdf-toolbar-floor:480px;border-bottom:1px solid var(--border);background:var(--bg);min-height:var(--topbar-h);box-sizing:border-box;z-index:10;flex-direction:column;flex-shrink:0;gap:6px;padding:8px 16px;display:flex;position:relative;overflow:visible;container:pdf-toolbar/inline-size}.pdf-toolbar-row{flex-wrap:nowrap;align-items:center;gap:10px;width:100%;min-width:0;display:flex;overflow:visible}.pdf-toolbar-identity{flex:auto;align-items:center;gap:8px;min-width:0;display:flex;position:relative;overflow:visible}.pdf-file-static{min-width:0;max-width:min(200px,100%);color:inherit;text-align:left;flex:0 auto;align-items:center;gap:8px;display:inline-flex;overflow:hidden}.pdf-file-icon{width:16px;height:16px;color:var(--danger);flex-shrink:0}.pdf-file-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:500;overflow:hidden}.pdf-toolbar-view{flex:none;align-items:center;gap:8px;display:flex}.pdf-toolbar-actions{flex:none;align-items:center;gap:6px;margin-left:auto;display:flex}.pdf-action-btn{white-space:nowrap;flex-shrink:0}.pdf-action-label{white-space:nowrap}.file-badge-wrap{z-index:20;flex-shrink:0;position:relative}.file-badge{border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);font-size:var(--text-xs);white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-weight:400;line-height:1.2;display:inline-flex}.file-badge:before{content:"";border-radius:var(--radius-pill);background:var(--accent);flex-shrink:0;width:6px;height:6px}.file-badge-trigger{cursor:pointer;pointer-events:auto;transition:background var(--motion-fast), color var(--motion-fast)}.file-badge-trigger:hover:not(:disabled),.file-badge-trigger.is-open{background:color-mix(in oklab, var(--surface) 70%, var(--accent-soft));color:var(--fg)}.file-badge-trigger:disabled{opacity:.55;cursor:not-allowed}.file-version-action{border-radius:var(--radius-pill);border:1px solid color-mix(in oklab, var(--accent) 36%, var(--border));background:color-mix(in oklab, var(--accent-soft) 70%, var(--bg));height:28px;font-size:var(--text-xs);color:var(--accent);white-space:nowrap;will-change:box-shadow, border-color, background-color;flex-shrink:0;justify-content:center;align-items:center;padding:0 12px;font-weight:500;line-height:1;animation:2.2s ease-in-out infinite version-action-breathe;display:inline-flex}.file-version-action:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:var(--accent-on);box-shadow:none;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;animation:none}.file-version-action:disabled{opacity:.45;cursor:not-allowed;animation:none}@keyframes version-action-breathe{0%,to{background-color:color-mix(in oklab, var(--accent-soft) 70%, var(--bg));border-color:color-mix(in oklab, var(--accent) 32%, var(--border));box-shadow:0 0 0 0 color-mix(in oklab, var(--accent) 0%, transparent)}50%{background-color:color-mix(in oklab, var(--accent) 14%, var(--bg));border-color:color-mix(in oklab, var(--accent) 62%, var(--bg));box-shadow:0 0 0 5px color-mix(in oklab, var(--accent) 14%, transparent)}}.pdf-version-popover{z-index:200;background:var(--bg);border:1px solid var(--border);border-radius:14px;width:min(280px,100vw - 24px);padding:8px;position:fixed;box-shadow:0 4px 16px #0d0d0d14,0 12px 36px #0d0d0d1a}.pdf-version-list{flex-direction:column;gap:2px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pdf-version-item{text-align:left;width:100%;color:var(--fg);transition:background var(--motion-fast);border-radius:10px;align-items:flex-start;gap:8px;padding:8px;display:flex}.pdf-version-item:hover:not(:disabled){background:var(--surface-warm)}.pdf-version-item.is-selected{background:var(--accent-soft)}.pdf-version-item:disabled{opacity:.5;cursor:not-allowed}.pdf-version-radio{border:1.5px solid var(--border);width:16px;height:16px;color:var(--accent-on);background:var(--bg);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.pdf-version-item.is-selected .pdf-version-radio{border-color:var(--accent);background:var(--accent)}.pdf-version-text{flex-direction:column;gap:2px;min-width:0;display:flex}.pdf-version-title{font-size:var(--text-sm);font-weight:500;line-height:1.3}.pdf-version-label{font-size:var(--text-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.control-group{border:1px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;align-items:center;gap:0;padding:2px;display:flex}.control-display{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg);padding:0 var(--space-2);text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:52px}.control-display-zoom{min-width:44px}@container pdf-toolbar (width<=720px){.pdf-file-static{max-width:min(120px,100%)}}@container pdf-toolbar (width<=640px){.pdf-toolbar-row{gap:8px}.pdf-file-static{max-width:min(72px,100%)}.pdf-toolbar-view{gap:6px}.control-group{padding:1px}.control-group .icon-btn-xs{width:22px;height:22px}.control-group .icon-btn-xs svg{width:12px;height:12px}.control-display{min-width:44px;padding:0 4px;font-size:11px}.control-display-zoom{min-width:38px}.pdf-toolbar-actions{gap:6px}.pdf-toolbar-actions .btn.pdf-action-btn,.pdf-toolbar-actions .pdf-action-btn{box-sizing:border-box;flex:0 0 28px;gap:0;width:28px;min-width:28px;max-width:28px;height:28px;padding:0;overflow:hidden}.pdf-toolbar-actions .pdf-action-label{display:none}.file-version-action{padding:0 10px}}@container pdf-toolbar (width<=480px){.pdf-toolbar-row{gap:6px}.pdf-toolbar-identity{flex:0 auto;max-width:none}.pdf-file-static{flex:none}.pdf-file-name{display:none}.pdf-toolbar-view{gap:4px}.control-group{border-radius:6px;padding:0}.control-group .icon-btn-xs{width:20px;height:20px}.control-group .icon-btn-xs svg{width:11px;height:11px}.control-display{min-width:36px;padding:0 2px;font-size:10px}.control-display-zoom{min-width:30px}.pdf-toolbar-actions{gap:4px}.pdf-toolbar-actions .btn.pdf-action-btn,.pdf-toolbar-actions .pdf-action-btn{flex:0 0 28px;width:28px;min-width:28px;max-width:28px;height:28px;padding:0}}.pdf-panel{background:var(--bg);flex-direction:column;flex:1;min-height:0;display:flex}.pdf-panel.fullscreen{z-index:120;background:var(--bg);position:fixed;inset:0}.pdf-canvas{background:var(--surface-warm);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.pdf-compare{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}.pdf-compare .pdf-viewer+.pdf-viewer{border-left:1px solid var(--border)}.pdf-placeholder{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-10);text-align:center;color:var(--muted);flex-direction:column;flex:1;display:flex}.pdf-placeholder svg{color:var(--meta)}.pdf-placeholder-title{font-size:var(--text-base);color:var(--fg);margin:var(--space-2) 0 0}.pdf-placeholder-desc{font-size:var(--text-sm);color:var(--meta);margin:0}.pdf-viewer{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.pdf-viewer-label{padding:6px var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted);border-bottom:1px solid var(--border-soft);background:var(--bg);flex-shrink:0;display:none}.pdf-viewer.show-label .pdf-viewer-label{display:block}.pdf-viewer-scroll{align-items:center;gap:var(--space-5);min-height:0;padding:var(--space-5);overscroll-behavior:contain;flex-direction:column;flex:1;display:flex;overflow:auto}.pdf-viewer-status{font-size:var(--text-sm);color:var(--muted);font-family:var(--font-mono);margin:auto}.pdf-viewer-status.error{color:var(--danger)}.pdf-page-sheet{background:var(--bg);border:1px solid var(--border-soft);box-shadow:var(--shadow-md);border-radius:2px;flex-shrink:0;line-height:0}.pdf-page-sheet.selectable{cursor:crosshair}.pdf-page-sheet canvas{max-width:none;display:block}.pdf-page-placeholder{background:var(--bg)}.pdf-select-banner{padding:6px var(--space-4);font-size:var(--text-xs);color:var(--accent);background:color-mix(in oklab, var(--accent) 10%, var(--bg));border-bottom:1px solid color-mix(in oklab, var(--accent) 22%, var(--border));flex-shrink:0}.pdf-select-overlay{z-index:3;touch-action:none;cursor:crosshair;position:absolute;inset:0}.pdf-select-rect{z-index:2;pointer-events:none;border:1.5px solid var(--accent);background:color-mix(in oklab, var(--accent) 18%, transparent);box-sizing:border-box;position:absolute}.pdf-select-rect.live{border-style:dashed}.pdf-select-rect.committed{border-style:solid}.pdf-select-rect.kind-removed{border-color:var(--diff-del);background:color-mix(in oklab, var(--diff-del) 28%, transparent)}.pdf-select-rect.kind-added{border-color:var(--diff-add);background:color-mix(in oklab, var(--diff-add) 28%, transparent)}.pdf-select-rect.flash{animation:.9s pdf-hl-flash}@keyframes pdf-hl-flash{0%,to{outline:0 solid #0000}30%,70%{outline:3px solid var(--diff-chg)}}.pdf-viewer.selecting .pdf-viewer-scroll{-webkit-user-select:none;user-select:none}.preview-grid,.export-grid{gap:var(--space-4);padding:var(--space-5);flex:1;grid-template-columns:minmax(0,1fr);display:grid;overflow:auto}.preview-grid.split{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-figure{flex-direction:column;gap:6px;min-width:0;margin:0;display:flex}.preview-figure figcaption{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted)}.preview-figure img{background:var(--bg);border:1px solid var(--border-soft);width:100%;height:auto;box-shadow:var(--shadow-md);border-radius:4px}.export-file{align-items:center;gap:var(--space-2);padding:10px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);font-size:var(--text-sm);color:var(--fg);display:inline-flex}.export-file:hover{border-color:var(--accent);color:var(--accent)}.export-text-preview{flex:1;min-height:0}.export-text-body{padding:var(--space-4);white-space:pre-wrap;word-break:break-word;max-height:min(70vh,720px);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg);background:var(--bg);border:1px solid var(--border-soft);box-shadow:var(--shadow-md);border-radius:4px;margin:0;line-height:1.55;overflow:auto}.sidebar{width:var(--sidebar-w);background:var(--surface-warm);border-right:1px solid var(--border);transition:width var(--motion-base) var(--ease-standard);z-index:110;flex-direction:column;flex-shrink:0;display:flex;position:relative;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-w-collapsed);background:var(--bg)}.sidebar.collapsed .sb-text,.sidebar.collapsed .sb-nav-label,.sidebar.collapsed .sb-profile-info,.sidebar.collapsed .sb-item.active:before,.sidebar.collapsed .sb-logo,.sidebar.collapsed .sb-header-actions>:not(.sb-toggle){display:none}.sidebar.collapsed .sb-header{justify-content:center;padding:0}.sidebar.collapsed .sb-header-actions{justify-content:center;width:100%;margin-left:0}.sidebar.collapsed .sb-toggle{width:32px;height:32px}.sidebar.collapsed .sb-nav{padding:var(--space-2) 0}.sidebar.collapsed .sb-item{justify-content:center;gap:0;width:36px;height:36px;margin:0 auto 2px;padding:0}.sidebar.collapsed .sb-profile{padding:var(--space-2) 0;justify-content:center}.sb-header{align-items:center;gap:var(--space-2);padding:0 var(--space-3);height:var(--topbar-h);flex-shrink:0;display:flex}.sb-header-actions{flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:flex}.sb-logo{border-radius:var(--radius-sm);background:var(--fg);width:28px;height:28px;color:var(--surface);font-family:var(--font-display);letter-spacing:-.02em;flex-shrink:0;place-items:center;font-size:13px;font-weight:600;display:grid}.sb-nav{padding:var(--space-4) var(--space-3);flex:1;overflow-y:auto}.sb-nav-label{color:var(--meta);letter-spacing:.08em;text-transform:uppercase;padding:0 var(--space-2);margin-bottom:var(--space-2);font-size:11px;font-weight:500}.sb-item{align-items:center;gap:var(--space-3);padding:8px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--fg);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast);margin-bottom:2px;display:flex}.sb-item:hover{background:var(--surface)}.sb-item.active{background:var(--surface);color:var(--accent)}.sb-item.active:before{content:"";background:var(--accent);border-radius:1px;width:2px;height:14px;margin-left:-8px;margin-right:6px}.sb-item svg{flex-shrink:0;width:16px;height:16px}.sb-item .badge{font-family:var(--font-mono);background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-pill);margin-left:auto;padding:1px 6px;font-size:10px;font-weight:500}.sb-item .kbd{font-family:var(--font-mono);color:var(--meta);border:1px solid var(--border);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10px}.sb-profile{padding:var(--space-3);align-items:center;gap:var(--space-2);display:flex;position:relative}.sb-avatar{border-radius:var(--radius-pill);background:var(--accent);width:32px;height:32px;color:var(--accent-on);font-size:var(--text-sm);transition:box-shadow var(--motion-fast), transform var(--motion-fast);flex-shrink:0;place-items:center;font-weight:600;display:grid}.sb-avatar:hover{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent)}.sb-profile-trigger{width:100%;min-width:0;color:inherit;text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.sb-profile-trigger:hover .sb-avatar{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent)}.sb-profile-trigger.is-collapsed{justify-content:center}.sb-profile-info{flex-direction:column;flex:1;min-width:0;display:flex}.sb-profile-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sb-profile-email{font-size:var(--text-xs);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sb-profile-menu{z-index:1200;background:var(--bg);border:1px solid var(--border);width:210px;box-shadow:var(--shadow-md);border-radius:12px;padding:6px;position:fixed}.sb-profile-menu.is-measuring{visibility:hidden;pointer-events:none}.sb-profile-menu-meta{border-bottom:1px solid var(--border-soft);margin-bottom:4px;padding:8px 10px 10px}.sb-profile-menu-name{font-size:var(--text-sm);color:var(--fg);font-weight:500}.sb-profile-menu-sub{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.sb-profile-menu-item{width:100%;font-size:var(--text-sm);color:var(--fg);text-align:left;transition:background var(--motion-fast);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.sb-profile-menu-item:hover,.sb-profile-menu-item.is-active{background:var(--surface)}.sb-profile-menu-item svg{color:var(--muted);flex-shrink:0}.sb-profile-menu-item-label{flex:1;min-width:0}.sb-profile-menu-item-meta{font-size:var(--text-xs);color:var(--muted)}.sb-profile-menu-item--nav .sb-profile-menu-chevron{margin-left:2px}.sb-profile-menu-back{width:100%;font-size:var(--text-sm);color:var(--fg);text-align:left;transition:background var(--motion-fast);border-radius:8px;align-items:center;gap:6px;margin-bottom:2px;padding:8px 10px;font-weight:500;display:flex}.sb-profile-menu-back:hover{background:var(--surface)}.sb-profile-menu-back svg{color:var(--muted)}.sb-profile-menu-section-label{letter-spacing:.02em;color:var(--meta);padding:8px 10px 4px;font-size:11px;font-weight:500}.sb-profile-appearance{grid-template-columns:1fr 1fr;gap:4px;padding:0 4px 6px;display:grid}.sb-profile-appearance-btn{border:1px solid var(--border);background:var(--bg);font-size:var(--text-xs);color:var(--muted);transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 6px;display:inline-flex}.sb-profile-appearance-btn:hover{color:var(--fg);border-color:color-mix(in oklab, var(--accent) 35%, var(--border))}.sb-profile-appearance-btn.is-active{color:var(--accent);border-color:color-mix(in oklab, var(--accent) 45%, var(--border));background:var(--accent-soft)}.sb-profile-appearance-btn svg{flex-shrink:0}.sb-profile-theme-list{flex-direction:column;gap:2px;display:flex}.sb-profile-theme-swatch{background:var(--swatch);width:14px;height:14px;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--fg) 12%, transparent);border-radius:50%;flex-shrink:0}.sb-profile-theme-check{color:var(--accent)!important}.sb-profile-theme-item.is-active{color:var(--accent)}.te-page{background:var(--surface);height:100vh;color:var(--fg);display:flex}.te-sidebar{width:420px;padding:var(--space-6);gap:var(--space-5);background:var(--bg);border-right:1px solid var(--border);flex-direction:column;display:flex;overflow:auto}.te-title{font-size:var(--text-2xl);margin:0;font-weight:700}.te-lead{color:var(--muted);font-size:var(--text-sm);margin:0}.te-label{font-size:var(--text-sm);color:var(--fg-2);margin-bottom:6px;font-weight:600;display:block}.te-file-input{box-sizing:border-box;width:100%;font-size:var(--text-sm);border:2px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-warm);color:var(--fg);cursor:pointer;padding:8px 12px;display:block}.te-file-meta{font-size:var(--text-xs);color:var(--meta);margin:4px 0 0}.te-section-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.te-section-title{font-size:var(--text-sm);color:var(--fg-2);font-weight:600}.te-add-btn{font-size:var(--text-xs);border:1px solid var(--border);background:var(--surface);color:var(--fg);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.te-add-btn:hover{border-color:var(--accent);color:var(--accent)}.te-rows{flex-direction:column;gap:8px;display:flex}.te-row{align-items:center;gap:6px;display:flex}.te-input{min-width:0;font-size:var(--text-sm);border:1px solid var(--border);background:var(--bg);color:var(--fg);border-radius:6px;outline:none;flex:1;padding:6px 10px}.te-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 14%, transparent)}.te-arrow{color:var(--meta);font-size:var(--text-sm)}.te-remove{cursor:pointer;color:var(--danger);background:0 0;border:none;padding:4px;display:inline-flex}.te-remove:disabled{cursor:default;opacity:.3}.te-primary,.te-success{border-radius:var(--radius-sm);width:100%;font-size:var(--text-lg);cursor:pointer;color:var(--accent-on);border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:600;display:flex}.te-primary{background:var(--accent)}.te-primary:hover:not(:disabled){background:var(--accent-hover)}.te-primary:disabled{background:var(--border);color:var(--meta);cursor:default}.te-success{background:var(--success)}.te-success:hover{filter:brightness(1.05)}.te-status{border-radius:var(--radius-sm);font-size:var(--text-sm);border:1px solid #0000;padding:12px}.te-status.is-error{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in oklab, var(--danger) 28%, var(--border))}.te-status.is-done{background:var(--success-soft);color:var(--success);border-color:color-mix(in oklab, var(--success) 28%, var(--border))}.te-status.is-info{background:var(--info-soft);color:var(--info);border-color:color-mix(in oklab, var(--info) 28%, var(--border))}.te-preview{background:var(--surface);flex-direction:column;flex:1;min-width:0;display:flex}.te-preview-bar{border-bottom:1px solid var(--border);background:var(--bg);font-size:var(--text-sm);color:var(--muted);align-items:center;gap:8px;padding:12px 20px;font-weight:600;display:flex}.te-preview-frame{background:var(--bg);border:none;flex:1;width:100%}.te-preview-fallback{color:var(--meta);text-align:center;padding:40px}.te-preview-empty{color:var(--meta);font-size:var(--text-lg);flex:1;justify-content:center;align-items:center;display:flex}
