:root{--bg:#f2f2f0;--panel:#fff;--panel-2:#fafaf9;--panel-3:#f4f4f2;--line:#e4e4e1;--line-2:#d2d2ce;--ink:#1b1b1a;--ink-dim:#6a6a67;--ink-faint:#9c9c98;--accent:#2f6feb;--accent-2:#6f9dff;--accent-strong:#2560d4;--accent-soft:#2f6feb26;--accent-line:#2f6feb6b;--danger:#dc2626;--warn:#d97706;--good:#16a34a;--danger-soft:#dc26261a;--danger-line:#dc262666;--hover:#1414140f;--hover-strong:#1414141c;--tip-bg:#2b2b29;--tip-fg:#f5f5f3;--r-xs:5px;--r-sm:7px;--r-md:9px;--r-lg:12px;--r-pill:999px;--ctl:30px;--ctl-sm:24px;--bar:54px;--status:26px;--sh-1:0 1px 2px #14141414;--sh-2:0 4px 14px #14141429;--sh-3:0 20px 60px #00000047;--ring:0 0 0 3px var(--accent-soft);--ease:cubic-bezier(.2, .8, .2, 1);--dur:.14s;--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Microsoft YaHei", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#161615;--panel:#212120;--panel-2:#1a1a19;--panel-3:#262625;--line:#333331;--line-2:#464643;--ink:#eaeae7;--ink-dim:#9d9d99;--ink-faint:#6d6d69;--accent-strong:#4a83f0;--accent-soft:#5a91f547;--accent-line:#5a91f58c;--danger:#f0736f;--warn:#e8a33d;--good:#55bd7a;--danger-soft:#f0736f2e;--danger-line:#f0736f80;--hover:#ffffff14;--hover-strong:#ffffff24;--tip-bg:#f0f0ee;--tip-fg:#1a1a19;--sh-1:0 1px 2px #00000073;--sh-2:0 6px 18px #00000080;--sh-3:0 20px 60px #0000009e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0}body.dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:content-box}::-webkit-scrollbar-track{background:0 0}@media print{@page{size:A4;margin:13mm 15mm}html,body,#app{background:#fff!important;height:auto!important;overflow:visible!important}.no-print,.md-pane,.divider,.toast,.drop-mask{display:none!important}.shell{height:auto!important;display:block!important;overflow:visible!important}.workspace{height:auto!important;min-height:0!important;display:block!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-tip]{position:relative}[data-tip]:before{content:attr(data-tip);z-index:500;border-radius:var(--r-sm);background:var(--tip-bg);color:var(--tip-fg);font-family:var(--font-ui);letter-spacing:0;white-space:nowrap;box-shadow:var(--sh-2);opacity:0;pointer-events:none;transition:opacity .11s var(--ease), transform .11s var(--ease);padding:5px 9px;font-size:11px;font-weight:400;line-height:1.45;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-3px)}[data-tip]:hover:before{opacity:1;transition-delay:.25s;transform:translate(-50%)}[data-tip]:focus-visible:before{opacity:1;transform:translate(-50%)}[data-tip-end]:before{left:auto;right:0;transform:translateY(-3px)}[data-tip-end]:hover:before,[data-tip-end]:focus-visible:before{transform:translateY(0)}.btn{--btn-bg:var(--panel);--btn-bg-hover:var(--panel-2);--btn-fg:var(--ink);--btn-fg-hover:var(--ink);--btn-bd:var(--line-2);--btn-bd-hover:var(--line-2);height:var(--ctl);border:1px solid var(--btn-bd);border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);justify-content:center;align-items:center;gap:6px;padding:0 12px;font-family:inherit;font-size:12px;line-height:1;text-decoration:none;display:inline-flex;position:relative}.btn:hover{background:var(--btn-bg-hover);border-color:var(--btn-bd-hover);color:var(--btn-fg-hover)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn--primary{--btn-bg:var(--accent);--btn-bg-hover:var(--accent-strong);--btn-fg:#fff;--btn-fg-hover:#fff;--btn-bd:var(--accent);--btn-bd-hover:var(--accent-strong)}.btn--outline{--btn-bg:transparent;--btn-bg-hover:var(--accent);--btn-fg:var(--accent);--btn-fg-hover:#fff;--btn-bd:var(--accent-line);--btn-bd-hover:var(--accent)}.btn--quiet{--btn-bg:transparent;--btn-bg-hover:var(--hover);--btn-fg:var(--ink-dim);--btn-fg-hover:var(--ink);--btn-bd:transparent;--btn-bd-hover:transparent}.btn--danger{--btn-bg:transparent;--btn-bg-hover:var(--danger-soft);--btn-fg:var(--danger);--btn-fg-hover:var(--danger);--btn-bd:var(--danger-line);--btn-bd-hover:var(--danger)}.btn--sm{height:var(--ctl-sm);border-radius:var(--r-xs);padding:0 9px;font-size:11px}.btn--icon{width:var(--ctl);padding:0}.btn--icon.btn--sm{width:var(--ctl-sm)}.btn svg{fill:none;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.seg{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--panel-3);align-items:center;gap:2px;padding:2px;display:inline-flex}.seg>button{height:var(--ctl-sm);border-radius:var(--r-xs);color:var(--ink-dim);white-space:nowrap;cursor:pointer;transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;padding:0 11px;font-family:inherit;font-size:12px;line-height:1}.seg>button:hover{background:var(--hover);color:var(--ink)}.seg>button.on,.seg>button.on:hover{background:var(--accent);color:#fff;box-shadow:var(--sh-1)}.seg>button:focus-visible{box-shadow:var(--ring);outline:none}.swatch{cursor:pointer;width:20px;height:20px;transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border:none;border-radius:50%;padding:0;position:relative;box-shadow:inset 0 0 0 1px #00000024}.swatch:hover{transform:scale(1.14)}.swatch:focus-visible{box-shadow:inset 0 0 0 1px #00000024, var(--ring);outline:none}.swatch.on{box-shadow:inset 0 0 0 1px #00000024, 0 0 0 2px var(--panel), 0 0 0 3.5px var(--accent)}.swatch.on:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.2l2.2 2.2 4.6-5' fill='none' stroke='%23fff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/11px 11px no-repeat;position:absolute;inset:0}
