:root{--app-bg:#1b1b1b;--panel-bg:#2a2a2a;--panel-header:#232323;--panel-border:#151515;--divider:#3a3a3a;--input-bg:#1d1d1d;--input-border:#444;--hover:#3a3a3a;--active:#474747;--text:#e3e3e3;--text-dim:#a4a4a4;--text-faint:#6d6d6d;--accent:#5b5b4b;--accent-strong:#5b5b4b;--accent-hover:#6d6d59;--accent-soft:#39392d;--accent-ring:#88886d;--danger:#e5484d;--warn:#e8c35a;--surface-raised:#2f2f2f;--surface-edge:#111;--surface-sunken:#333;--field-bg:#ffffff0a;--panel-active:#ffffff14;--canvas-bg:#3a3a3a;--scrollbar:#444;--shadow-strong:0 10px 30px #00000080;--shadow-soft:0 1px 4px #00000073;--mark-highlight:#ffffff59;--page:#fff;--page-edge:#00000026;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--radius:4px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (color:lab(0% 0 0)){:root{--accent:lab(38.2553% -2.31101 9.30823);--accent-strong:lab(38.2553% -2.31101 9.30823);--accent-hover:lab(45.7179% -2.75385 11.1896);--accent-soft:lab(23.5979% -1.82623 7.46971);--accent-ring:lab(56.2325% -3.60298 14.9923)}}:root[data-theme=light]{--app-bg:#dedcd7;--panel-bg:#f4f3f0;--panel-header:#e9e7e2;--panel-border:#c4c1ba;--divider:#d5d2cb;--input-bg:#fff;--input-border:#c2bfb7;--hover:#e4e2dc;--active:#d8d5cd;--text:#22221f;--text-dim:#5d5b53;--text-faint:#8d8a80;--accent:#5b5b4b;--accent-strong:#5b5b4b;--accent-hover:#494936;--accent-soft:#d8d9ca;--accent-ring:#747458;--danger:#c5343a;--warn:#9a6b07;--surface-raised:#fbfaf8;--surface-edge:#bdbab2;--surface-sunken:#e7e5df;--field-bg:#00000008;--panel-active:#00000012;--canvas-bg:#dad8d3;--scrollbar:#c3c0b8;--shadow-strong:0 10px 30px #0000002e;--shadow-soft:0 1px 4px #00000029;--mark-highlight:#fffc;--page:#fff;--page-edge:#0000002e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:lab(0% 0 0)){:root[data-theme=light]{--accent:lab(38.2553% -2.31101 9.30823);--accent-strong:lab(38.2553% -2.31101 9.30823);--accent-hover:lab(30.6298% -2.63427 11.3214);--accent-soft:lab(86.2488% -1.98507 7.32365);--accent-ring:lab(48.1077% -3.53193 15.0723)}}*{box-sizing:border-box}html,body{background:var(--app-bg);height:100%;color:var(--text);font:12px/1.35 var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}button{font:inherit;color:inherit}input,select{font:inherit;color:var(--text)}.app{grid-template-rows:30px 38px 1fr;grid-template-columns:48px 1fr 290px;width:100vw;height:100vh;display:grid}.app.panels-hidden{grid-template-rows:30px 0 1fr;grid-template-columns:0 1fr 0}.app.panels-hidden .toolbar,.app.panels-hidden .dock,.app.panels-hidden .controlbar{display:none}.menubar{background:var(--app-bg);border-bottom:1px solid var(--panel-border);z-index:50;grid-column:1/-1;align-items:stretch;gap:2px;padding:0 8px;display:flex;position:relative}.menu-root{display:flex;position:relative}.menu-title{cursor:default;background:0 0;border:0;border-radius:3px;margin:3px 0;padding:0 9px}.menu-title:hover,.menu-root.open .menu-title{background:var(--hover)}.menu{background:var(--surface-raised);border:1px solid var(--surface-edge);min-width:250px;box-shadow:var(--shadow-strong);z-index:100;border-radius:6px;padding:4px;position:absolute;top:calc(100% + 2px);left:0}.context-menu{z-index:200;position:fixed;top:0;left:0}.menu .menu{top:-5px;left:100%}.menu-item{text-align:left;white-space:nowrap;cursor:default;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;width:100%;padding:4px 10px 4px 22px;display:flex;position:relative}.menu-item .check{font-size:11px;position:absolute;left:7px}.menu-item .shortcut{color:var(--text-dim);margin-left:auto;padding-left:24px;font-size:11px}.menu-item .arrow{color:var(--text-dim);margin-left:auto}.menu-item:not(:disabled):hover,.menu-item.open{background:var(--accent-strong);color:#fff}.menu-item:not(:disabled):hover .shortcut,.menu-item:not(:disabled):hover .arrow{color:#dfdfd0;color:lab(88.5689% -1.98734 7.32183)}.menu-item:disabled{color:var(--text-faint)}.menu-sep{background:var(--scrollbar);height:1px;margin:4px 6px}.menu-sub{position:relative}.menu-items{display:block}.menu-search-row{border-bottom:1px solid var(--divider);margin-bottom:4px;padding:2px 4px 6px}.menu-search{background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;outline:none;width:100%;height:24px;padding:0 8px}.menu-search:focus{border-color:var(--accent-ring)}.menu-result{padding-left:10px}.menu-result.active:not(:disabled){background:var(--accent-strong);color:#fff}.menu-result .path{color:var(--text-dim);margin-left:8px;font-size:11px}.menu-result.active .path{color:#d8d9ca;color:lab(86.2488% -1.98507 7.32365)}.field.checkbox{cursor:default}.doc-title{color:var(--text-dim);align-items:center;margin-left:auto;padding-right:6px;display:flex}.controlbar{background:var(--panel-bg);border-bottom:1px solid var(--panel-border);scrollbar-width:none;white-space:nowrap;grid-column:1/-1;align-items:center;gap:10px;padding:0 10px;display:flex;overflow:auto hidden}.controlbar>*{flex:none}.controlbar .kind{min-width:96px;color:var(--text);font-weight:600}.controlbar .group{align-items:center;gap:5px;display:flex}.controlbar .sep{background:var(--divider);align-self:stretch;width:1px;margin:8px 2px}.label{color:var(--text-dim)}.toolbar{background:var(--panel-bg);border-right:1px solid var(--panel-border);scrollbar-width:none;flex-direction:column;grid-area:3/1;align-items:center;gap:1px;padding:6px 0;display:flex;overflow:hidden auto}.tool{width:34px;height:30px;color:var(--text);background:0 0;border:0;border-radius:5px;flex:none;place-items:center;display:grid;position:relative}.tool:hover{background:var(--hover)}.tool.active{background:var(--text-faint)}.tool.unavailable{color:var(--text-dim)}.tool .flyout-mark{border-left:3px solid #0000;border-bottom:3px solid var(--text-dim);width:0;height:0;position:absolute;bottom:3px;right:3px}.toolbar-sep{background:var(--divider);flex:none;width:28px;height:1px;margin:4px 0}.flyout{background:var(--surface-raised);border:1px solid var(--surface-edge);box-shadow:var(--shadow-strong);z-index:200;border-radius:6px;min-width:230px;padding:4px;position:fixed}.flyout-item{text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;width:100%;padding:4px 8px;display:flex}.flyout-item:hover{background:var(--accent-strong)}.flyout-item .shortcut{color:var(--text-dim);margin-left:auto}.flyout-item.soon .name:after{content:"soon";color:var(--text-dim);border:1px solid var(--input-border);border-radius:3px;margin-left:6px;padding:0 3px;font-size:10px}.fill-stroke{flex:none;width:40px;height:40px;margin:6px 0 2px;position:relative}.fs-box{border:1px solid var(--surface-edge);cursor:default;border-radius:3px;width:26px;height:26px;padding:0;position:absolute}.fs-box.fill{top:0;left:0}.fs-box.stroke{bottom:0;right:0}.fs-box.stroke:after{content:"";background:var(--panel-bg);border:1px solid var(--surface-edge);position:absolute;inset:6px}.fs-box.front{z-index:2}.fs-mini{gap:4px;margin-bottom:4px;display:flex}.fs-mini button{color:var(--text-dim);background:0 0;border:0;padding:0 2px;font-size:10px}.fs-mini button:hover{color:var(--text)}.workspace{background:var(--hover);flex-direction:column;grid-area:3/2;min-width:0;min-height:0;display:flex}.tabs{background:var(--panel-header);border-bottom:1px solid var(--panel-border);flex:none;height:28px;display:flex;overflow:hidden}.tab{border:0;border-right:1px solid var(--panel-border);color:var(--text-dim);white-space:nowrap;background:0 0;align-items:center;gap:6px;max-width:260px;padding:0 8px 0 12px;display:flex}.tab.active{background:var(--hover);color:var(--text)}.tab .close{opacity:.6;border-radius:3px;place-items:center;width:16px;height:16px;display:grid}.tab .close:hover{opacity:1;background:var(--hover)}.canvas-host{flex:1;min-height:0;position:relative;overflow:hidden}.canvas-host canvas{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.text-edit{transform-origin:0 0;resize:none;box-shadow:0 0 0 1px var(--accent-ring);caret-color:currentColor;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;margin:0;padding:0;position:absolute;top:0;left:0;overflow:hidden}.text-edit.on-path{caret-color:#0000;box-shadow:none;pointer-events:none;color:#0000!important}.text-edit.on-path::selection{background:0 0}.statusbar{background:var(--panel-header);border-top:1px solid var(--panel-border);height:24px;color:var(--text-dim);white-space:nowrap;flex:none;align-items:center;gap:12px;padding:0 8px;display:flex;overflow:hidden}.statusbar select{background:var(--input-bg);border:1px solid var(--input-border);border-radius:3px;height:18px;padding:0 2px}.statusbar .spacer{flex:1}.dock{background:var(--panel-bg);border-left:1px solid var(--panel-border);flex-direction:column;grid-area:3/3;min-height:0;display:flex;overflow:hidden}.panel-group{border-bottom:1px solid var(--panel-border);flex-direction:column;min-height:0;display:flex}.panel-group.grow{flex:1}.panel-tabs{background:var(--panel-header);scrollbar-width:none;flex:none;height:27px;display:flex;overflow-x:auto}.panel-tabs::-webkit-scrollbar{display:none}.panel-tab{color:var(--text-dim);white-space:nowrap;background:0 0;border:0;flex:none;padding:0 9px;font-weight:500}.panel-tab.active{color:var(--text);background:var(--panel-bg)}.panel-tab:hover:not(.active){color:var(--text)}.panel-body{min-height:0;padding:8px 10px 10px;overflow-y:auto}.panel-group.grow .panel-body{flex:1}.section{border-bottom:1px solid var(--divider);padding:6px 0 8px}.section:last-child{border-bottom:0}.section-title{color:var(--text);margin-bottom:7px;font-weight:600}.row{align-items:center;gap:6px;margin-bottom:6px;display:flex}.row:last-child{margin-bottom:0}.grid2{grid-template-columns:1fr 1fr;gap:6px 8px;display:grid}.muted{color:var(--text-faint)}.empty{color:var(--text-faint);padding:8px 0}.num{background:var(--input-bg);border:1px solid var(--input-border);border-radius:3px;align-items:center;min-width:0;height:22px;display:flex}.num:focus-within{border-color:var(--accent-ring)}.num .num-label{color:var(--text-dim);cursor:ew-resize;flex:none;padding:0 4px 0 6px}.num input{font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;width:100%;min-width:0;height:20px;padding:0 5px 0 2px}.num.narrow{width:70px}.num.medium{width:96px}.btn{border:1px solid var(--input-border);background:var(--surface-sunken);border-radius:3px;height:22px;padding:0 8px}.btn:hover:not(:disabled){background:var(--hover)}.btn:disabled{color:var(--text-faint)}.btn.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.icon-btn{width:26px;height:24px;color:var(--text);background:0 0;border:0;border-radius:3px;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--hover)}.icon-btn.on{background:var(--active)}.icon-btn:disabled{color:var(--text-faint)}.select{background:var(--input-bg);border:1px solid var(--input-border);border-radius:3px;min-width:0;height:22px;padding:0 4px}.swatch{border:1px solid var(--surface-edge);background-color:#0000;border-radius:3px;flex:none;width:22px;height:22px;padding:0;position:relative}.swatch.stroke-swatch:after{content:"";border:1px solid var(--surface-edge);background:var(--panel-bg);position:absolute;inset:5px}.swatch.none{background:#fff;overflow:hidden}.swatch.none:before{content:"";background:var(--danger);height:2px;position:absolute;top:50%;left:-4px;right:-4px;transform:rotate(-45deg)}.swatch.mixed{background:conic-gradient(#f55 0 25%, #5f5 0 50%, #55f 0 75%, #ff5 0)}.checker{background-image:linear-gradient(45deg,#bbb 25%,#0000 25%),linear-gradient(-45deg,#bbb 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#bbb 75%),linear-gradient(-45deg,#0000 75%,#bbb 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px;background-color:var(--page)}.popover{z-index:300;background:var(--surface-raised);border:1px solid var(--surface-edge);box-shadow:var(--shadow-strong);border-radius:7px;padding:10px;position:fixed}.picker{width:236px}.picker-sv{cursor:crosshair;border-radius:4px;height:150px;margin-bottom:8px;position:relative}.picker-sv .knob,.picker-hue .knob{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0009}.picker-hue{cursor:pointer;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:6px;height:12px;margin-bottom:10px;position:relative}.picker-hue .knob{top:50%}.picker-swatches{grid-template-columns:repeat(10,1fr);gap:3px;margin-top:8px;display:grid}.picker-swatches button{border:1px solid var(--surface-edge);border-radius:2px;height:18px;padding:0}.slider-row{grid-template-columns:14px 1fr 46px;align-items:center;gap:6px;margin-bottom:5px;display:grid}.slider-row input[type=range]{width:100%;accent-color:var(--accent)}.slider-row .num{height:20px}.layers{flex-direction:column;display:flex}.layer-row{border-bottom:1px solid var(--divider);align-items:center;gap:2px;height:24px;padding-right:4px;display:flex}.layer-row:hover{background:var(--panel-header)}.layer-row.selected{background:var(--accent-soft)}.layer-row .toggle{width:22px;height:22px;color:var(--text-dim);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.layer-row .toggle.off{color:var(--text-faint)}.layer-row .twisty{width:14px;height:22px;color:var(--text-dim);background:0 0;border:0;flex:none;padding:0}.layer-row .color-chip{border-radius:1px;flex:none;width:3px;height:16px;margin-right:4px}.layer-row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.layer-row .sel-mark{border:1px solid;flex:none;width:9px;height:9px;margin-left:4px}.layer-row .sel-mark.filled{background:currentColor}.panel-footer{border-top:1px solid var(--divider);flex:none;justify-content:flex-end;gap:2px;padding:4px 6px;display:flex}.font-field{border:1px solid var(--input-border);background:var(--field-bg);min-width:0;height:22px;color:var(--text);font:inherit;cursor:pointer;border-radius:4px;flex:1;align-items:center;padding:0 8px;display:flex}.font-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.font-picker{flex-direction:column;gap:6px;width:260px;padding:8px;display:flex}.font-list{flex-direction:column;max-height:320px;display:flex;overflow-y:auto}.font-row{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:baseline;gap:8px;padding:4px 6px;font-size:13px;display:flex}.font-row.active{background:var(--panel-active)}.font-sample{color:var(--text-faint)}.modal.new-document{width:760px;max-width:94vw}.new-document-body{grid-template-columns:1fr 280px;gap:16px;display:grid}.template-tabs{border-bottom:1px solid var(--divider);flex-wrap:wrap;gap:4px;margin:2px 0 10px;display:flex}.template-tab{color:var(--text-faint);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:4px 8px}.template-tab.active{border-bottom-color:var(--accent);color:var(--text)}.template-grid{grid-template-columns:repeat(3,1fr);gap:10px;max-height:330px;padding:2px;display:grid;overflow-y:auto}.preset-details{border-left:1px solid var(--divider);flex-direction:column;gap:6px;padding-left:14px;display:flex}.detail{grid-template-columns:90px 1fr;align-items:center;gap:6px;display:grid}.bleed-grid{grid-template-columns:1fr 1fr auto;align-items:center;gap:4px;display:grid}.bleed-grid .icon-btn{grid-area:1/3/span 2}.bleed-grid .num,.new-document .num{min-width:0}.new-document .num input{width:100%;min-width:0}.template{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-rows:92px auto auto;align-content:start;justify-items:center;gap:4px;padding:6px;display:grid}.template:hover{background:var(--panel-active)}.template.active{border-color:var(--accent-ring);background:var(--panel-active)}.template-preview{place-items:center;width:100%;height:92px;display:grid}.template-page{background:var(--page);max-width:100%;max-height:100%;box-shadow:var(--shadow-soft);border-radius:2px;display:block}.template-name{text-align:center;font-size:11px}.template-size{color:var(--text-faint);font-size:10px}.new-document .settings{flex-direction:column;gap:6px;display:flex}.start-mark{color:var(--text);opacity:.09;filter:drop-shadow(0 1px 0 var(--mark-highlight));margin-bottom:4px}.start-screen{background:var(--canvas-bg);color:var(--text-faint);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:none;position:absolute;inset:0}.app.no-document .start-screen{display:flex}.app.no-document canvas,.app.no-document .tabs{display:none}.start-title{color:var(--text);font-size:15px}.start-screen .button-row{gap:8px}.three-kinds{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.three-kind{flex-direction:column;align-items:center;gap:2px;height:auto;padding:6px 2px;font-size:11px;display:flex}.three-rotation{align-items:stretch;gap:8px;margin-top:6px;display:flex}.three-pad{border:1px solid var(--divider);background:var(--field-bg);cursor:grab;touch-action:none;border-radius:6px;flex:none;place-items:center;width:72px;display:grid}.three-pad:active{cursor:grabbing}.three-axes{flex:1;gap:4px;min-width:0;display:grid}.button-row{flex-wrap:wrap;gap:2px;display:flex}.ref-point{grid-template-columns:repeat(3,8px);gap:3px;padding:2px;display:grid}.ref-point button{border:1px solid var(--input-border);background:0 0;width:8px;height:8px;padding:0}.ref-point button.on{background:var(--text);border-color:var(--text)}.modal-backdrop{z-index:500;background:#00000059;place-items:center;display:grid;position:fixed;inset:0}.consent-backdrop{background:var(--app-bg);z-index:900}.modal.consent{width:420px;max-width:92vw}.modal.consent p{margin:0 0 10px;line-height:1.45}.modal{background:var(--surface-raised);border:1px solid var(--surface-edge);border-radius:8px;min-width:300px;padding:14px 16px 12px;box-shadow:0 20px 60px #0009}.modal h2{margin:0 0 12px;font-size:13px}.modal .actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.modal .field{grid-template-columns:90px 1fr;align-items:center;gap:8px;margin-bottom:8px;display:grid}.modal.about{text-align:center;flex-direction:column;align-items:center;width:220px;min-width:0;padding:22px 20px 20px;display:flex}.about-name{margin-top:8px;font-size:16px;font-weight:650}.about-version{color:var(--text-dim);margin-top:2px}.toasts{z-index:600;pointer-events:none;flex-direction:column;gap:6px;display:flex;position:fixed;bottom:40px;left:50%;transform:translate(-50%)}.toast{background:var(--surface-raised);border:1px solid var(--surface-edge);color:var(--text);box-shadow:var(--shadow-strong);border-radius:6px;padding:7px 12px}.loading{color:var(--text-dim);place-items:center;display:grid;position:absolute;inset:0}@media (max-width:900px){.app{grid-template-columns:44px 1fr 0}.dock{display:none}}.gradient-ramp{height:20px;margin:18px 6px 24px;position:relative}.gradient-ramp:before{content:"";background-image:linear-gradient(45deg,#bbb 25%,#0000 25%),linear-gradient(-45deg,#bbb 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#bbb 75%),linear-gradient(-45deg,#0000 75%,#bbb 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px;background-color:var(--page);border-radius:2px;position:absolute;inset:0}.gradient-ramp.disabled{opacity:.4;pointer-events:none}.gradient-track{border:1px solid var(--panel-border);cursor:copy;border-radius:2px;position:absolute;inset:0}.gradient-stops,.gradient-mids{height:12px;position:absolute;left:0;right:0}.gradient-stops{bottom:-14px}.gradient-mids{top:-12px}.gstop{border:1px solid var(--input-border);background:var(--stop-color,#fff);clip-path:polygon(50% 0,100% 36%,100% 100%,0 100%,0 36%);cursor:ew-resize;border-radius:0 0 2px 2px;width:11px;height:13px;margin-left:-6px;padding:0;position:absolute;top:0}.gstop.active{box-shadow:0 0 0 1px var(--accent-ring);border-color:#fff}.gmid{border:1px solid var(--surface-edge);background:var(--text-dim);cursor:ew-resize;width:8px;height:8px;margin-left:-4px;padding:0;position:absolute;bottom:0;transform:rotate(45deg)}.gradient-thumb{cursor:pointer}.hint{color:var(--text-dim);margin-top:8px;font-size:11px;line-height:1.5}.hidden{display:none!important}.info-row{align-items:baseline;gap:8px;padding:2px 0;display:flex}.info-row .label{flex:none;width:60px}.info-value{font-family:var(--mono);color:var(--text);font-size:11px}.history-list{flex-direction:column;max-height:260px;display:flex;overflow-y:auto}.history-item{color:var(--text);text-align:left;background:0 0;border:0;border-radius:3px;padding:3px 6px}.history-item:hover{background:var(--hover)}.history-item.active{background:var(--accent);color:#fff}.history-item.undone{color:var(--text-dim);font-style:italic}.graph-modal{max-width:min(720px,100vw - 32px)}.graph-table-wrap{border:1px solid var(--surface-edge);border-radius:4px;max-height:320px;margin-top:8px;overflow:auto}.graph-table{border-collapse:collapse}.graph-table td{border:1px solid var(--divider);padding:0}.graph-table input{background:var(--input-bg);width:84px;color:var(--text);font:inherit;border:0;padding:4px 6px}.graph-table input.head{background:var(--surface-sunken);font-weight:600}.graph-table input:focus{outline:1px solid var(--accent-strong)}.feature-row{flex-wrap:wrap}.feature-btn{min-width:26px;font-size:12px}.glyph-grid{grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:2px;max-height:260px;margin:6px 0;display:grid;overflow-y:auto}.glyph-grid.recent{max-height:none;margin-top:2px}.glyph{border:1px solid var(--divider);background:var(--input-bg);height:28px;color:var(--text);border-radius:3px;padding:0;font-size:15px}.glyph:hover{background:var(--accent-strong);color:#fff}.script-modal{width:min(720px,100vw - 32px)}.script-editor{resize:vertical;background:var(--input-bg);width:100%;height:260px;color:var(--text);border:1px solid var(--surface-edge);tab-size:2;border-radius:4px;padding:8px;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.script-output{background:var(--input-bg);border:1px solid var(--surface-edge);white-space:pre-wrap;border-radius:4px;height:120px;margin:0;padding:6px 8px;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.script-output .warn{color:var(--warn,#b9860b)}.script-output .error{color:var(--danger)}.script-output .info{color:var(--text-dim)}.fx-badge{color:var(--text-dim);text-align:center;width:22px;font-style:italic;font-weight:600}.brush-list{flex-direction:column;max-height:280px;display:flex;overflow-y:auto}.brush-item{color:var(--text);text-align:left;background:0 0;border:0;border-radius:3px;align-items:center;gap:8px;padding:2px 6px;display:flex}.brush-item:hover{background:var(--hover)}.brush-item.active{background:var(--accent);color:#fff}.brush-preview{flex:none;width:96px;height:22px}.brush-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.isolation-bar{background:var(--panel-header);border-bottom:1px solid var(--panel-border);flex:none;align-items:center;gap:2px;padding:3px 8px;font-size:11px;display:flex}.crumb{color:var(--text-dim);background:0 0;border:0;border-radius:3px;padding:2px 6px}.crumb:hover{background:var(--hover);color:var(--text)}.crumb.current{color:var(--text);font-weight:600}.crumb.back{font-size:14px;line-height:1}.crumb-sep{color:var(--text-dim)}.appearance-list{flex-direction:column;gap:3px;display:flex}.appearance-row{align-items:center;gap:5px;display:flex}.appearance-row.off{opacity:.5}.style-chip{aspect-ratio:1;background-clip:padding-box;border-style:solid;border-radius:4px;padding:0}.navigator-stage{background:var(--panel-header);cursor:grab;line-height:0;display:inline-block;position:relative}.navigator-thumb{border:1px solid var(--panel-border);display:block}.navigator-frame{border:1px solid var(--danger);pointer-events:none;position:absolute}
