:root{--bg-page: #383838;--bg-panel: #535353;--bg-toolbar: #535353;--bg-input: #454545;--bg-surface: #585858;--bg-hover: #5e5e5e;--bg-button: #5c5c5c;--bg-button-hover: #676767;--bg-deep: #454545;--border-color: #383838;--border-strong: #2f2f2f;--text-primary: #dedede;--text-muted: #a5a5a5;--text-dim: #9a9a9a;--text-dimmer: #c6c6c6;--accent: #268d63;--accent-hover: #2fb57d;--accent-rgb: 38,141,99;--status-ok: #4caf50;--danger: #e5534b;--canvas-check-1: #2e2e2e;--canvas-check-2: #363636;--table-border: #383838;--list-border: #3f3f3f;--row-selected: #45514b;--swatch-border: rgba(255,255,255,.14);--swatch-border-strong: rgba(255,255,255,.2);--swatch-border-hover: rgba(255,255,255,.3);--thumb-border: rgba(255,255,255,.1);--symbol-bg: #f4f4f2;--symbol-glyph: #1a1a1a;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23a5a5a5' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #454545;--ui-scale: 1}body.theme-light{--bg-page: #f5f5f7;--bg-panel: #f9fafc;--bg-toolbar: #eef0f3;--bg-input: #ffffff;--bg-surface: #f2f3f7;--bg-hover: #e8eaf0;--bg-button: #eef0f3;--bg-button-hover: #dfe2e8;--bg-deep: #e2e4e9;--border-color: #d5d8de;--border-strong: #c2c6ce;--text-primary: #22242a;--text-muted: #5b5e68;--text-dim: #6b6e78;--text-dimmer: #4a4d56;--accent: #1f7a54;--accent-hover: #268f61;--accent-rgb: 31,122,84;--status-ok: #4caf50;--danger: #e5534b;--canvas-check-1: #eceef2;--canvas-check-2: #e2e5ea;--table-border: #e2e4e9;--list-border: #dfe2e8;--row-selected: #e0ece8;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%235b5e68' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fff}body.theme-cozy{--bg-page: #f7ede1;--bg-panel: #fbf4ea;--bg-toolbar: #f3e4d3;--bg-input: #fffaf3;--bg-surface: #f5e9da;--bg-hover: #ecd9c2;--bg-button: #f3e4d3;--bg-button-hover: #e8cfae;--bg-deep: #e8cfae;--border-color: #ddc3a0;--border-strong: #c9a878;--text-primary: #4a3627;--text-muted: #8a6f54;--text-dim: #967a5c;--text-dimmer: #5c4732;--accent: #c9773d;--accent-hover: #d98a4f;--accent-rgb: 201,119,61;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #f0ddc4;--canvas-check-2: #e6cca8;--table-border: #ddc3a0;--list-border: #ddc3a0;--row-selected: #f0dcc0;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238a6f54' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fff8ef}body.theme-spring{--bg-page: #eef8f0;--bg-panel: #f5fbf3;--bg-toolbar: #e3f4e6;--bg-input: #ffffff;--bg-surface: #eaf7ec;--bg-hover: #dcf0e0;--bg-button: #e3f4e6;--bg-button-hover: #cdeacf;--bg-deep: #cdeacf;--border-color: #c3e6c8;--border-strong: #9fd4a8;--text-primary: #244430;--text-muted: #4f7a5c;--text-dim: #5c8768;--text-dimmer: #2f5a3c;--accent: #3f9e5e;--accent-hover: #4bb56c;--accent-rgb: 63,158,94;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #e0f2e2;--canvas-check-2: #d2ead6;--table-border: #c3e6c8;--list-border: #c3e6c8;--row-selected: #d9f0dc;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%234f7a5c' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #ffffff}body.theme-forest{--bg-page: #e8f0e4;--bg-panel: #eff5ec;--bg-toolbar: #dfebda;--bg-input: #f5f9f2;--bg-surface: #e3eee0;--bg-hover: #d3e3cd;--bg-button: #dfebda;--bg-button-hover: #c9ddc1;--bg-deep: #c9ddc1;--border-color: #bcd4b2;--border-strong: #8fb87e;--text-primary: #1f3319;--text-muted: #4a6b3e;--text-dim: #557647;--text-dimmer: #26421c;--accent: #3f7d2c;--accent-hover: #4c9435;--accent-rgb: 63,125,44;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #dcebd6;--canvas-check-2: #cfe0c7;--table-border: #bcd4b2;--list-border: #bcd4b2;--row-selected: #dbe9d2;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%234a6b3e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #f4f9f1}body.theme-lavender{--bg-page: #f2eefb;--bg-panel: #f8f5fd;--bg-toolbar: #ece4f9;--bg-input: #fdfbff;--bg-surface: #efe8fa;--bg-hover: #e2d6f5;--bg-button: #ece4f9;--bg-button-hover: #dcc9f2;--bg-deep: #dcc9f2;--border-color: #d0bbec;--border-strong: #b596dd;--text-primary: #362249;--text-muted: #6b4f88;--text-dim: #7a5c99;--text-dimmer: #452c5e;--accent: #8452c7;--accent-hover: #9563d8;--accent-rgb: 132,82,199;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #ede0f8;--canvas-check-2: #e0cff2;--table-border: #d0bbec;--list-border: #d0bbec;--row-selected: #e6d7f5;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%236b4f88' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fbf8ff}body.theme-blossom{--bg-page: #fdedf1;--bg-panel: #fff4f7;--bg-toolbar: #fbe0e7;--bg-input: #fff8fa;--bg-surface: #fce7ec;--bg-hover: #f8d2dc;--bg-button: #fbe0e7;--bg-button-hover: #f5c1cf;--bg-deep: #f5c1cf;--border-color: #f0aec0;--border-strong: #e587a2;--text-primary: #4a1f2c;--text-muted: #8c4f61;--text-dim: #995a6c;--text-dimmer: #5c2635;--accent: #d94f76;--accent-hover: #e8608a;--accent-rgb: 217,79,118;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #fbdce4;--canvas-check-2: #f6c9d5;--table-border: #f0aec0;--list-border: #f0aec0;--row-selected: #f9d3de;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238c4f61' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fff9fb}body.theme-rain{--bg-page: #e7edf2;--bg-panel: #eff3f7;--bg-toolbar: #dde6ed;--bg-input: #f4f8fb;--bg-surface: #e2e9ef;--bg-hover: #d0dce5;--bg-button: #dde6ed;--bg-button-hover: #c4d3de;--bg-deep: #c4d3de;--border-color: #b6c9d6;--border-strong: #8fabbe;--text-primary: #1e2c36;--text-muted: #4c6577;--text-dim: #587184;--text-dimmer: #263845;--accent: #4380a3;--accent-hover: #4f93ba;--accent-rgb: 67,128,163;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #dce6ed;--canvas-check-2: #cddae4;--table-border: #b6c9d6;--list-border: #b6c9d6;--row-selected: #d5e2ea;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%234c6577' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #f6fafc}body.theme-sand{--bg-page: #f3e9d8;--bg-panel: #f8f1e4;--bg-toolbar: #ecdfc7;--bg-input: #fdfaf5;--bg-surface: #f0e4d0;--bg-hover: #e6d4b8;--bg-button: #ecdfc7;--bg-button-hover: #e0c7a5;--bg-deep: #d8bd96;--border-color: #d3b990;--border-strong: #b19272;--text-primary: #553c2e;--text-muted: #7a5c45;--text-dim: #8a6d52;--text-dimmer: #6b4d38;--accent: #c57c60;--accent-hover: #d38f74;--accent-rgb: 197,124,96;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #ecdfc7;--canvas-check-2: #e0cfab;--table-border: #d3b990;--list-border: #d3b990;--row-selected: #ecd9b6;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%237a5c45' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fdf8f0}body.theme-sunset{--bg-page: #fdece0;--bg-panel: #fff3ea;--bg-toolbar: #fbe0cb;--bg-input: #fff7f0;--bg-surface: #fce6d5;--bg-hover: #f8d2b4;--bg-button: #fbe0cb;--bg-button-hover: #f3c396;--bg-deep: #f3c396;--border-color: #eeae7a;--border-strong: #e08a4d;--text-primary: #4a2510;--text-muted: #8c5a30;--text-dim: #996537;--text-dimmer: #5c2f14;--accent: #e0592e;--accent-hover: #ef6b3f;--accent-rgb: 224,89,46;--status-ok: #4caf50;--danger: #d1453b;--canvas-check-1: #fbdcc0;--canvas-check-2: #f5c9a3;--table-border: #eeae7a;--list-border: #eeae7a;--row-selected: #f7d7b8;--select-chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238c5a30' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");--navblock-bg: #fffaf5}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-page);color:var(--text-primary);height:100vh;overflow:hidden}#app{display:flex;flex-direction:column;height:100vh}#toolbar,#toolsPanel,#rightPanel,#statusBar,.isFloatingContainer,.modalOverlay,.subtoolsPopup,.colorPalettePopup{zoom:var(--ui-scale)}#toolbar,#toolsPanel,#rightPanel,#statusBar,.isFloatingContainer,.modalOverlay,.subtoolsPopup,.colorPalettePopup{user-select:none}#toolbar{display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--bg-toolbar);border-bottom:1px solid var(--border-color);height:58px;min-height:58px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;position:relative;z-index:1001}.navSection{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;justify-content:flex-end}.navSection.navBlock{border:1px solid var(--border-color);border-radius:0;background:var(--navblock-bg);padding:3px 12px;margin:3px 0}.navSection.navBlock.navBrandSection{align-self:stretch;justify-content:center}body:not([class*=theme-]) .navSection.navBlock.navBrandSection{background:#383838}.navBlockPushRight{margin-left:auto}.navGroup{display:flex;align-items:center;gap:6px;flex-shrink:0;height:28px}.navBrandMark{height:28px;flex-shrink:0;display:flex;align-items:center;color:var(--text-primary);padding:4px 10px;border-radius:6px;cursor:pointer}.navBrandMark svg{height:100%;width:auto;display:block}.navDivider{width:1px;height:14px;background:var(--border-color);margin:0 4px;flex-shrink:0}.groupLabel{font-size:9px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;color:var(--text-primary);white-space:nowrap}.navFieldControl{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;height:28px;padding:1px 10px;background:transparent;border:none;border-radius:6px;cursor:pointer}.navFieldControl:hover{background:var(--bg-hover)}.navFieldLabel{font-size:10px;line-height:1;color:var(--text-dim);white-space:nowrap;pointer-events:none}.navFieldChevron{font-size:9px;line-height:1;color:var(--text-dim);pointer-events:none}.navSelectOverlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:none;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}.navSelectOverlay option{background-color:var(--bg-panel);color:var(--text-primary)}#lightCustomDivider.hidden,#lightCustomWrap.hidden{display:none}.navNumberInput{width:48px;background:transparent;border:none;color:var(--text-primary);font-size:11px;text-align:center;padding:0}.navNumberInput:focus{outline:none}.navBtn{background:transparent;border:none;border-radius:6px;color:var(--text-primary);height:28px;padding:0 9px;font-size:12px;display:flex;align-items:center;gap:6px;cursor:pointer;box-sizing:border-box;transition:background .15s ease}.navBtn:hover{background:var(--bg-hover)}.navBtn:disabled{opacity:.4;cursor:not-allowed;background:transparent}#btnHelp{position:absolute;top:50%;right:14px;transform:translateY(-50%);background:none;border:none;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;z-index:1}#btnHelp:hover{opacity:.85}.zoomDisplay{padding:0 6px;min-width:40px;justify-content:center}.renderModeDropdown{position:relative}.renderBox{width:18px;height:18px;border:1px solid var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;font-family:monospace;border-radius:2px;flex-shrink:0}.renderDropdownContent{display:none;position:fixed;background-color:var(--bg-panel);border:1px solid var(--border-color);box-shadow:0 10px 30px #00000080;z-index:999999;min-width:150px;padding:6px}.renderDropdownContent.show{display:block}.renderDropdownTitle{color:var(--text-dim);font-size:11px;padding:4px 8px;margin-bottom:2px}.renderOption{display:flex;align-items:center;gap:12px;width:100%;padding:6px 8px;background:transparent;border:none;border-radius:6px;color:var(--text-primary);font-size:12px;cursor:pointer;text-align:left}.renderOption:hover:not(:disabled){background:var(--bg-hover)}.renderOption.active{color:var(--accent)}.renderOption.active .renderBox{border-color:var(--accent);color:var(--accent)}svg.icon,.icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle;overflow:visible}.exportMenuItem{display:flex;align-items:center;gap:6px}.exportMenuItem svg.icon{width:14px;height:14px}#btnMenuHamburger svg.icon{width:27.04px;height:27.04px}#selectionContextMenu button{display:inline-flex;align-items:center;gap:5px}#selectionContextMenu svg.icon{width:13px;height:13px}#layersToolbar button{display:inline-flex;align-items:center;justify-content:center}#layersToolbar svg.icon{width:14px;height:14px}.eyeToggle{cursor:pointer;user-select:none}.eyeToggle input[type=checkbox]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.eyeToggleInner{display:flex;align-items:center}.eyeToggle:has(input:checked){color:var(--accent)}.exportMenuItem{padding:7px 10px;font-size:12px;border-radius:5px;cursor:pointer;white-space:nowrap}.exportMenuItem:hover{background:var(--bg-hover)}.renderDropdownDivider{height:1px;background:var(--border-color);margin:5px 4px}.exportMenuItem.inert{opacity:.5;cursor:not-allowed;pointer-events:none}.hamburgerTopItem{justify-content:space-between}.hamburgerChevron{color:var(--text-dim);font-size:13px;line-height:1}.hamburgerSubmenu{min-width:170px}.themeToggle{gap:8px}.themeBtn{width:22px;height:22px;border-radius:50%;padding:0;border:2px solid var(--border-strong);cursor:pointer}.themeBtn.dark{background:#16171b}.themeBtn.light{background:#f5f5f7}.themeBtn.active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.3)}.themeBtn.rainbow{background:conic-gradient(from 0deg,#ff5f6d,#ffc371,#f9f871,#6dffb0,#6dc9ff,#a56dff,#ff5f6d)}.themeBtn.rainbow.cozy{background:linear-gradient(135deg,#f3d9b1,#e8b88a)}.themeBtn.rainbow.spring{background:linear-gradient(135deg,#d7f0d2,#a8e0c2)}.themeBtn.rainbow.forest{background:linear-gradient(135deg,#b7d9a8,#8fb87e)}.themeBtn.rainbow.lavender{background:linear-gradient(135deg,#d9c3f2,#b596dd)}.themeBtn.rainbow.blossom{background:linear-gradient(135deg,#f8c3d3,#e587a2)}.themeBtn.rainbow.rain{background:linear-gradient(135deg,#c3d8e5,#8fabbe)}.themeBtn.rainbow.sand{background:linear-gradient(135deg,#e0c7a5,#c57c60)}.themeBtn.rainbow.sunset{background:linear-gradient(135deg,#f3b98a,#e08a4d)}button{background:var(--bg-button);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:0;padding:6px 10px;cursor:pointer;font-size:11px;transition:background-color .15s ease,border-color .15s ease}button:hover{background:var(--bg-button-hover)}button:disabled{opacity:.4;cursor:not-allowed}select,input[type=text],input[type=number]{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:0;padding:5px 8px;font-size:11px;transition:background-color .15s ease,border-color .15s ease}#body{flex:1;display:flex;min-height:0;position:relative}.floatingToolbar{position:fixed;top:56px;left:50px;width:96px;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:0;box-shadow:none;display:flex;flex-direction:column;align-items:center;gap:0;padding:5px 6px 6px;overflow:visible;z-index:30;user-select:none;transition:border-color .2s ease,box-shadow .2s ease}.floatingToolbar.toolbarDockedLeft{position:absolute;left:0!important;top:0;bottom:0;transform:none;background:var(--bg-panel);border-radius:0;box-shadow:none;justify-content:flex-start;width:calc(96px + var(--scrollbar-comp, 0px));overflow-y:auto}.floatingToolbar.toolbarNearLeftEdge{box-shadow:0 0 20px var(--accent)}.toolbarHeader{width:100%;height:11px;display:flex;justify-content:center;align-items:center;padding:0 4px;margin-bottom:2px;cursor:grab;flex-shrink:0;touch-action:none}.toolbarHeader:active{cursor:grabbing}[data-tooldock-promotable]{touch-action:none}.toolbarGripDots{display:flex;gap:2px}.toolbarGripDots span{width:2px;height:2px;background:var(--text-muted);border-radius:50%}.toolContainer.toolGroup{position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%}.toolContainer.isFloatingContainer{position:fixed;z-index:500;background:var(--bg-panel);border:1px solid var(--accent);border-radius:0;box-shadow:0 8px 25px #000000b3,0 0 10px rgba(var(--accent-rgb),.75);padding:6px}.toolContainer.toolGroup.isFloatingContainer{width:96px}.toolContainer.isFloatingContainer:not(.toolGroup){width:max-content}.toolContainer.isFloatingContainer:not(.toolGroup) .toolIconBtn{width:40px;height:30px;aspect-ratio:auto}.toolGroupHeader{width:100%;margin:5px 0 3px;padding:0;display:flex;align-items:center;gap:6px;cursor:grab;touch-action:none}.toolGroupHeader:before,.toolGroupHeader:after{content:"";flex:1;height:1px;background:var(--border-strong)}.toolGroupHeader:first-of-type{margin-top:0}.toolGroupHeader:hover:before,.toolGroupHeader:hover:after{background:var(--text-dim)}.toolGroupHeader:active{cursor:grabbing}.toolGroupLabel{font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);white-space:nowrap}.tool,.stitchType,.toolRow{display:flex;align-items:center;gap:7px;width:100%;padding:2px 3px;margin:0 -3px;background:transparent;border:1px solid transparent;border-radius:3px;text-align:left;position:relative}.tool:hover,.stitchType:hover,.toolRow:hover{background:#ffffff0f;border-color:transparent}.tool.active,.stitchType.active,.toolRow.active{background:rgba(var(--accent-rgb),.18);border-color:var(--accent)}.tool svg.icon,.stitchType svg.icon,.toolRow svg.icon{width:19px;height:16px;color:var(--text-muted);flex-shrink:0;stroke-width:2.4}.tool:hover svg.icon,.toolRow:hover svg.icon{color:var(--text-primary)}.tool.active svg.icon{color:var(--accent)}.toolIconGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;width:100%}.toolIconBtn{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;min-width:0;min-height:0;margin:0;padding:0;gap:0;border-radius:4px}.toolIconBtn svg.icon{width:13px;height:13px;stroke-width:2}.toolIconBtn:hover{background:#ffffff14;border-color:transparent}.toolIconBtn:active{background:#ffffff24}.toolIconBtn:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.toolIconBtn.active{background:transparent;border-color:var(--accent)}.toolIconBtn.active:hover{background:rgba(var(--accent-rgb),.1)}.toolIconGrid.tbGrid{grid-template-columns:repeat(2,1fr);gap:2px}.tbGrid .toolIconBtn{aspect-ratio:auto;height:30px;border-radius:4px;border:1px solid transparent}.tbGrid .toolIconBtn:hover{background:var(--bg-hover)}.tbGrid .toolIconBtn:active{background:var(--bg-button)}.tbGrid .toolIconBtn.active{background:rgba(var(--accent-rgb),.16);border-color:var(--accent)}.tbGrid .toolIconBtn.active:hover{background:rgba(var(--accent-rgb),.24)}svg.icon.tbGlyph{fill:currentColor;stroke:none;width:21px;height:21px;color:var(--text-dimmer)}.tbGrid .toolIconBtn:hover svg.tbGlyph{color:var(--text-primary)}.tbGrid .toolIconBtn.active svg.tbGlyph{color:var(--text-primary)}.tbFlyoutCell{position:relative;display:flex}.tbFlyoutCell .toolIconBtn{width:100%}.flyoutArrow{position:absolute;right:2px;bottom:2px;width:0;height:0;border-left:4px solid transparent;border-bottom:4px solid var(--text-dim);pointer-events:none}.tbFlyoutCell .toolIconBtn:hover .flyoutArrow,.tbFlyoutCell .toolIconBtn.active .flyoutArrow{border-bottom-color:var(--text-primary)}.tbHeroCard{display:flex;align-items:center;gap:6px;width:100%;padding:3px;margin-bottom:3px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:4px}.tbHeroSwatch{width:22px;height:22px;flex-shrink:0;border-radius:3px;border:1px solid var(--swatch-border-strong);background:var(--bg-deep)}.tbHeroInfo{min-width:0;display:flex;flex-direction:column;gap:1px}.tbHeroCode{font-size:11px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tbHeroName{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}svg.icon.toolIconColor{stroke:none;width:16px;height:16px}svg.icon.stitchColorFull{color:#2ecc71}svg.icon.stitchColorHalf{color:#f39c12}svg.icon.stitchColorQuarter{color:#f1c40f}svg.icon.stitchColorThreeQuarter{color:#9b59b6}svg.icon.stitchColorBackstitch{color:#9b59b6}svg.icon.stitchColorStraight{color:#3498db;stroke-width:3.2}svg.icon.stitchColorKnot{color:#e67e22}.toolRowWithPopup{position:relative;width:100%}.subtoolsPopup{position:absolute;left:100%;top:0;margin-left:4px;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 5px 20px #00000080;display:none;flex-direction:row;padding:4px;gap:2px;z-index:501}.subtoolsPopup.flyoutOpen{display:flex}.toolContainer.isFloatingContainer .subtoolsPopup{position:static;display:flex;box-shadow:none;border:none;background:transparent;padding:0;margin-top:2px;left:auto;top:auto}.subBtn{width:22px;height:22px;padding:0;background:transparent;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center}.subBtn:hover{background:var(--bg-hover)}.subBtn.active svg.icon{color:var(--accent)}.subBtn svg.icon{width:11px;height:11px;color:var(--text-muted)}.bsStepBtn{font-size:11px;font-weight:600;color:var(--text-muted)}.bsStepBtn.active{color:var(--accent)}.quickColorsGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;width:100%;padding:1px}.toolbarDockedLeft>.toolGroup:not(#groupQuickColors){flex-shrink:0}.toolbarDockedLeft>#groupQuickColors{flex:1 1 0;min-height:0}.toolbarDockedLeft>#groupQuickColors>.toolGroupHeader,.toolbarDockedLeft>#groupQuickColors>.tbHeroCard{flex-shrink:0}.toolbarDockedLeft>#groupQuickColors>.quickColorsGrid{flex:1 1 0;min-height:60px;overflow-y:auto;align-content:start}.paletteColorSwatch{width:100%;min-width:0;aspect-ratio:1;border-radius:0;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:transform .1s ease,border-color .1s ease}.paletteColorSwatch:hover{transform:scale(1.08);border-color:#fff}.paletteColorSwatch:active{transform:scale(.96)}.paletteColorSwatch:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.paletteColorSwatch.active{border:1px solid var(--accent)}.quickColorAddBtn{display:flex;align-items:center;justify-content:center;background:transparent;border:1px dashed var(--border-strong);padding:0;margin:0}.quickColorAddBtn:hover{border-color:var(--accent);transform:none}.quickColorAddBtn svg.icon{width:12px;height:12px;color:var(--text-muted)}.quickColorAddBtn:hover svg.icon{color:var(--accent)}.ccMeta{display:flex;flex-direction:column;font-size:12px;line-height:1.4;overflow:hidden}.ccMeta strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccMeta span{color:var(--text-muted);font-size:11px}.paletteHeader{display:flex;align-items:center;gap:6px;justify-content:space-between}.paletteHeader h3{margin:14px 0 8px;flex:1}.paletteHeader button{padding:2px 9px;font-size:15px;line-height:1}.paletteHeaderBtns{display:flex;gap:4px}.paletteHeaderBtns #btnBrowseDmc{font-size:10px;padding:3px 7px}.sectionChevron{background:transparent;border:none;padding:2px 4px;font-size:10px;color:var(--text-dim);flex-shrink:0;margin:14px 0 8px}.sectionChevron:hover{color:var(--text-primary);background:transparent}#colorsSection.sectionCollapsed,#layersSection.sectionCollapsed{height:auto!important;min-height:0!important}#colorsSection.sectionCollapsed>*:not(.paletteHeader),#layersSection.sectionCollapsed>*:not(.paletteHeader){display:none}.modalOverlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1500;display:flex;align-items:center;justify-content:center}.modalOverlay.hidden{display:none}.loadingBox{display:flex;flex-direction:column;align-items:center;gap:14px;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;padding:28px 36px;box-shadow:0 10px 30px #00000080}.loadingSpinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:loadingSpin .8s linear infinite}@keyframes loadingSpin{to{transform:rotate(360deg)}}.loadingMessage{margin:0;font-size:13px;color:var(--text-primary);text-align:center;white-space:nowrap}.modalBox{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 30px #00000080;width:720px;max-width:92vw;max-height:82vh;padding:16px;display:flex;flex-direction:column;gap:10px}.modalHeader{display:flex;align-items:center;justify-content:space-between}.modalHeader h2{margin:0;font-size:14px}#dmcSearchInput{width:100%}#dmcLibraryGrid{overflow-y:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding-right:4px}.dmcLibItem{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border-radius:0;cursor:pointer;border:1px solid transparent;touch-action:none}.dmcLibItem:hover{border-color:var(--accent)}.dmcLibItem .dmcSwatch{width:40px;height:40px;border-radius:0;border:1px solid var(--swatch-border-strong)}.dmcLibItem .dmcCode{font-size:11px;font-weight:600}.dmcLibItem .dmcName{font-size:9px;color:var(--text-muted);text-align:center;line-height:1.2}.qcPickerBox{width:860px}.qcPickerBody{display:flex;gap:12px;min-height:0;flex:1}.qcPickerPane{display:flex;flex-direction:column;gap:8px;min-height:0}.qcPickerCatalog{flex:1.6}.qcPickerSelected{flex:1;border-left:1px solid var(--border-color);padding-left:12px}.qcBrandFilter{display:flex;gap:6px}.qcBrandBtn{padding:3px 10px;font-size:11px;border-radius:4px;background:var(--bg-deep);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer}.qcBrandBtn:hover{border-color:var(--accent);color:var(--text-primary)}.qcBrandBtn.active{background:rgba(var(--accent-rgb),.18);border-color:var(--accent);color:var(--accent)}.qcBrandCount{font-size:10px;font-weight:400;color:var(--text-dim)}.qcBrandBtn.active .qcBrandCount{color:var(--accent);opacity:.7}.qcSelectedHeader{font-size:11px;font-weight:600;color:var(--text-muted)}.qcSelectedHeader #qcSelectedCount{color:var(--accent)}.qcGrid{overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,46px);gap:3px;padding-right:4px;flex:1;align-content:start}.qcGrid .dmcLibItem{padding:2px;gap:0}.qcGrid:not(.qcShowLabels) .dmcCode,.qcGrid:not(.qcShowLabels) .dmcName{display:none}#qcCatalogGrid.qcShowLabels{grid-template-columns:1fr;gap:2px}#qcCatalogGrid.qcShowLabels .dmcLibItem{flex-direction:row;align-items:center;gap:8px;padding:3px 6px}#qcCatalogGrid.qcShowLabels .dmcSwatch{width:22px;height:22px;flex-shrink:0}#qcCatalogGrid.qcShowLabels .dmcCode{font-size:11px;flex-shrink:0}#qcCatalogGrid.qcShowLabels .dmcName{flex:1;min-width:0;font-size:10px;text-align:left;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qcSearchRow{display:flex;align-items:center;gap:6px}.qcSearchRow #qcSearchInput{flex:1;min-width:0}.qcSearchRow .panelOptionsWrap{flex-shrink:0}.qcAlreadyPicked{opacity:.45}.qcAlreadyPicked .dmcSwatch{border-color:var(--accent)}.qcPickerSelected .dmcLibItem{position:relative}.qcPickerSelected .dmcLibItem:hover{border-color:#d9534f}.qcPickerSelected .dmcLibItem:hover:after{content:"\2715";position:absolute;top:2px;right:2px;font-size:9px;color:#d9534f;background:var(--bg-panel);border-radius:50%;width:12px;height:12px;display:flex;align-items:center;justify-content:center;line-height:1}.qcPickerSelected .dmcLibItem{cursor:grab}.qcPickerSelected .dmcLibItem:active{cursor:grabbing}.qcPickerSelected .dmcLibItem.qcDragging{opacity:.35}.qcPickerSelected .dmcLibItem.qcDragOver{outline:2px solid var(--accent);outline-offset:-2px}.paletteTable{width:100%;border-collapse:collapse;font-size:12px;margin-top:6px}.paletteTable th{text-align:left;color:var(--text-dim);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:6px;border-bottom:1px solid var(--border-color)}.paletteTable td{padding:8px 6px;border-bottom:1px solid var(--table-border);vertical-align:middle;transition:background-color .15s ease}.paletteTable tr{cursor:pointer}.paletteTable tr:hover td{background:var(--bg-hover)}.paletteTable tr.selected td{background:var(--row-selected)}.paletteTable .qtyCell{color:var(--text-muted);text-align:right;width:40px;font-variant-numeric:tabular-nums}.paletteTable .swatchCell{width:32px}.paletteTable .rowSwatch{width:26px;height:26px;border-radius:5px;border:1px solid var(--swatch-border);box-shadow:inset 0 0 0 1px #00000026}.paletteTable .symbolCell{width:28px}.paletteTable .rowSymbol{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--symbol-bg);border-radius:5px;flex-shrink:0}.paletteTable .rowSymbol svg{width:82%;height:82%}.paletteTable .rowSymbol .charGlyph{color:var(--symbol-glyph);font-size:11px}.paletteTable .colorInfoCell{line-height:1.35;overflow:hidden;padding-left:4px}.paletteTable .colorInfoCell .codeLine{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.paletteTable .colorInfoCell .nameLine{color:var(--text-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#paletteScrollWrap.symbolsHidden .symbolCell,#paletteScrollWrap.symbolsHidden .symbolColHeader{display:none}.paletteTabs{display:flex;gap:6px;margin:8px 0}.paletteTab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border-radius:0;background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-muted);font-size:11px;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.paletteTab:hover{background:var(--bg-hover)}.paletteTab.active{background:rgba(var(--accent-rgb),.16);border-color:var(--accent);color:var(--text-primary)}.paletteTab.active:hover{background:rgba(var(--accent-rgb),.22)}#paletteColorsTab,#paletteSymbolsTab{display:flex;flex-direction:column;flex:1;min-height:0}#paletteColorsTab.hidden,#paletteSymbolsTab.hidden{display:none}#paletteSymbolTarget{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:8px;background:var(--bg-surface);border:1px solid var(--border-color)}#paletteSymbolTarget .paletteHeroSwatch{width:34px;height:34px}#paletteSymbolGrid{overflow-y:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;flex:1;min-height:0;align-content:start;padding-right:4px}.symbolPickItem.current{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.4)}#paletteHeroCard{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:0}.paletteHeroSwatch{width:34px;height:34px;border-radius:4px;flex-shrink:0;border:1px solid var(--swatch-border-strong);background:var(--bg-input)}.paletteHeroInfo{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.paletteHeroCode{font-size:12px;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paletteHeroName{font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panelOptionsMenu .menuItem.current{color:var(--text-dim)}.panelOptionsMenu .menuItem.current:after{content:" \2713";color:var(--accent)}.paletteSelectorRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.paletteSelectorLabel{font-size:11px;color:var(--text-muted);flex-shrink:0}.paletteSelectorRow #paletteTotalCount{font-size:10px;color:var(--text-dim);font-weight:500;flex-shrink:0;white-space:nowrap}.paletteFilterBtn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-muted);font-size:10px;padding:0 8px;opacity:.5;cursor:not-allowed;display:flex;align-items:center;justify-content:center;flex-shrink:0}.paletteViewHidden{display:none}.paletteQuickColorAddBtn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-muted);padding:0 7px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.paletteQuickColorAddBtn svg.icon{width:12px;height:12px}.paletteQuickColorAddBtn:hover{background:var(--bg-hover);color:var(--accent);border-color:var(--accent)}#paletteCardGrid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}#paletteCardGrid.paletteViewHidden{display:none}.paletteCard{position:relative;display:flex;flex-direction:column;align-items:center;padding:2px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-input);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.paletteCard:hover{background:var(--bg-hover);border-color:var(--accent)}.paletteCard.selected{border-color:var(--accent);background:var(--row-selected)}.paletteCardSwatch{width:100%;aspect-ratio:1;border-radius:0;border:1px solid var(--swatch-border)}.paletteCard.selected:after{content:"\2713";position:absolute;bottom:2px;right:2px;width:14px;height:14px;border-radius:50%;background:var(--accent);color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center;line-height:1}.paletteCardSymbol{position:absolute;top:2px;left:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:var(--symbol-bg);border-radius:3px}.paletteCardSymbol svg{width:82%;height:82%}.paletteCardSymbol .charGlyph{color:var(--symbol-glyph);font-size:9px}.paletteCardSymbol img{width:82%;height:82%;object-fit:contain}.modalBox.small{width:320px}.editPreview{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg-deep);border-radius:8px}.editPreview .dmcSwatch{width:34px;height:34px;border-radius:6px;border:1px solid var(--swatch-border-strong);flex-shrink:0}.peSymbolPreview{width:28px;height:28px;background:var(--symbol-bg);border-radius:5px;display:flex;align-items:center;justify-content:center}.peSymbolPreview svg{width:75%;height:75%}.peSymbolPreview .charGlyph{color:var(--symbol-glyph);font-size:15px}.editActions{display:flex;flex-direction:column;gap:8px}.aboutBox{align-items:center;text-align:center;gap:8px;padding-bottom:20px;border-radius:0}.aboutBox .modalHeader{width:100%}.modalBox.small.aboutBox{width:380px}.aboutReleaseNotes{align-self:stretch;text-align:left;margin-top:4px;padding:12px 14px;background:rgba(var(--accent-rgb),.08);border:1px solid rgba(var(--accent-rgb),.25)}.aboutReleaseNotesHeader{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.aboutReleaseNotesHeader svg.icon{width:14px;height:14px;flex-shrink:0}.aboutReleaseNotes .brandTipsList li{color:var(--text-primary)}.modalBox.small.fileNewOpenBox{border-radius:0;gap:0;width:640px;max-width:92vw;padding:20px;overflow-y:auto}.fnoHeaderMain{display:flex;align-items:center;gap:12px}.fnoHeaderIcon{width:46px;height:46px;flex-shrink:0;border:2px solid var(--accent);border-radius:12px;color:var(--accent);display:flex;align-items:center;justify-content:center}.fnoHeaderIcon svg.icon{width:22px;height:22px}.fnoHeaderText h2{font-size:19px}.fnoSubtitle{margin:2px 0 0;font-size:11px;color:var(--text-dim)}.fnoCloseBtn{width:30px;height:30px;flex-shrink:0;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.fnoCloseBtn:hover{color:var(--text-primary)}.fnoBody{display:flex;gap:20px;margin-top:14px}.fnoCol{display:flex;flex-direction:column;min-width:0}.fnoColLeft{flex:1.2;gap:12px}.fnoColRight{flex:1;min-width:0}.fnoColDivider{width:1px;background:var(--border-color);flex-shrink:0;align-self:stretch}.fnoBody .importSection{gap:8px}.fnoInputIcon{display:flex;align-items:center;gap:8px;border:1px solid var(--border-strong);background:var(--bg-input);padding:0 8px;min-width:0}.fnoInputIcon svg.icon{color:var(--text-dim)}.fnoInputIcon input,.fnoInputIcon select{flex:1;min-width:0;border:none;background:transparent;padding:7px 0}.fnoFieldRow{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fnoFieldRow .field{min-width:0}.fileNewOpenBox .fnoPrimaryBtn{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;padding:10px}.fileNewOpenBox .fnoPrimaryBtn:hover{filter:brightness(1.08);background:var(--accent)}.fnoPrimaryBtn svg.icon{width:15px;height:15px}.fnoDivider{display:flex;align-items:center;gap:10px;color:var(--text-dim);font-size:10px;letter-spacing:.5px}.fnoDivider:before,.fnoDivider:after{content:"";flex:1;height:1px;background:var(--border-color)}.fnoActionGrid{gap:8px}.fnoActionCard{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--bg-input);border:1px solid var(--border-color);padding:12px 6px;color:var(--text-primary);font-size:11px}.fnoActionCard:hover{background:var(--bg-hover);border-color:var(--text-muted)}.fnoActionCard svg.icon{width:18px;height:18px;color:var(--text-dim)}.fnoAutosaveLabel{display:flex;align-items:center;gap:6px}.fnoAutosaveLabel svg.icon{width:13px;height:13px;flex-shrink:0}.fnoAutosaveList{max-height:220px;overflow-y:auto;padding-right:2px}.fnoAutosaveList li{padding:10px}.fnoFooter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border-color)}.fnoTip{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:11px}.fnoTip svg.icon{color:var(--accent);flex-shrink:0}.fnoTip strong{color:var(--text-dimmer)}.fnoFooterBtns{display:flex;gap:8px;flex-shrink:0}.fnoCancelBtn,.fileNewOpenBox .fnoFooterBtns .fnoPrimaryBtn{padding:9px 16px}.modalBox.small.fileNewOpenBox.brandingBox{width:760px;max-height:88vh}.brandColLeft{flex:1.3;gap:10px}.brandColRight{flex:1;gap:14px}.labelText.brandLabelIcon{display:flex;align-items:center;gap:6px}.brandLabelIcon svg.icon{width:13px;height:13px;color:var(--text-dim);flex-shrink:0}.brandCharCount{align-self:flex-end;font-size:10px;color:var(--text-dim)}.brandPreviewCard{background:#f4f1ea;border:1px dashed rgba(0,0,0,.25);border-radius:2px;padding:28px 20px;text-align:center;color:#2a2a2a}.brandPreviewTitle{font-size:19px;font-weight:700}.brandPreviewBy{font-size:11px;color:#6b6b6b;margin-top:4px}.brandPreviewRule{width:60px;height:1px;background:#0003;margin:16px auto}.brandPreviewShop{font-size:13px;font-weight:700}.brandPreviewShopLink{font-size:10.5px;color:#6b6b6b;margin-top:2px}.brandPreviewSocials{display:flex;justify-content:center;gap:10px;margin:18px 0}.brandPreviewSocialIcon{width:22px;height:22px;border-radius:6px;background:#1a1a1a;color:#f4f1ea;display:flex;align-items:center;justify-content:center;opacity:.25;transition:opacity .15s ease}.brandPreviewSocialIcon.hasValue{opacity:1}.brandPreviewSocialIcon svg.icon{width:13px;height:13px}.brandPreviewCopyright{font-size:10px;color:#6b6b6b;margin-top:4px}.brandPreviewRights{font-size:10px;color:#6b6b6b}.brandTipsList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.brandTipsList li{position:relative;padding-left:14px;font-size:11px;line-height:1.5;color:var(--text-dim)}.brandTipsList li:before{content:"";position:absolute;left:0;top:6px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.modalBox.small.fileNewOpenBox.legalBox{width:620px;max-height:88vh}.legalBody{display:block}.legalCol{flex:1}.legalText{margin:0;font-size:12px;line-height:1.6;color:var(--text-dim)}.legalText+.legalText{margin-top:8px}.legalText code{font-family:monospace;font-size:11px;background:var(--bg-input);padding:1px 4px;border-radius:2px}.modalBox.small.fileNewOpenBox.legalBox.helpBox{width:680px}.helpBox .legalText strong{color:var(--text-primary)}.helpSectionFlash{animation:helpSectionFlash 1.2s ease-out;border-radius:6px}@keyframes helpSectionFlash{0%{background:rgba(var(--accent-rgb),.14)}to{background:transparent}}.gettingStartedList{list-style:none;counter-reset:gsStep;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.gettingStartedList li{counter-increment:gsStep;position:relative;padding-left:34px;font-size:12px;line-height:1.6;color:var(--text-dim)}.gettingStartedList li strong{color:var(--text-primary)}.gettingStartedList li:before{content:counter(gsStep);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:rgba(var(--accent-rgb),.16);color:var(--accent);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}@media(max-width:640px){.modalBox.small.fileNewOpenBox{width:92vw}.fnoBody{flex-direction:column}.fnoColDivider{display:none}.fnoFooter{flex-direction:column;align-items:stretch}}.aboutLogo{color:var(--text-primary);width:200px;max-width:74%;margin:6px 0 2px}.aboutLogo svg{display:block;width:100%;height:auto}.aboutTagline{margin:0;font-size:12px;font-weight:650;color:var(--text-primary)}.aboutVersion{margin:4px 0 0;font-size:10px;color:var(--text-dim)}.confirmMessage{margin:0;font-size:12px;line-height:1.5;color:var(--text-primary)}.confirmCheckboxRow{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-size:11px;color:var(--text-dim);cursor:pointer}.confirmCheckboxRow input[type=checkbox]{margin:0;cursor:pointer}.confirmCheckboxRow.hidden{display:none}.confirmActions{display:flex;justify-content:flex-end;gap:8px}.confirmActions button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.confirmActions button.danger:hover{filter:brightness(1.1)}#symbolPickerGrid{overflow-y:auto;display:grid;grid-template-columns:repeat(8,1fr);gap:6px;padding-right:4px}.symbolPickItem{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);cursor:pointer;background:var(--symbol-bg)}.symbolPickItem:hover{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.3)}.symbolPickItem svg{width:65%;height:65%}.symbolPickItem .charGlyph{font-weight:700;font-size:14px;color:var(--symbol-glyph)}.symbolPickItem img{width:70%;height:70%;object-fit:contain}.hint{font-size:10px;color:var(--text-dim);line-height:1.4;margin:0 0 8px}.hint.hidden{display:none}#layerSearchInput{width:100%;margin-bottom:6px}#layersList{display:flex;flex-direction:column;gap:6px;font-size:12px;max-height:320px;overflow-y:auto}.layerRow{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;background:var(--bg-input);transition:background-color .15s ease,border-color .15s ease;touch-action:none}.layerDragGhost{position:fixed;z-index:2000;pointer-events:none;padding:4px 10px;font-size:11px;font-weight:600;color:var(--text-primary);background:var(--bg-panel);border:1px solid var(--accent);border-radius:3px;box-shadow:0 4px 12px #0006;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.layerRow:hover{background:var(--bg-hover)}.layerRow.selected,.layerRow.activeLayer{border-color:var(--accent);background:rgba(var(--accent-rgb),.08)}.layerRow.multiSelected{background:rgba(var(--accent-rgb),.18)}.layerRow.dragOver{border:1px dashed var(--accent)}.layerRow.blueprintLayerRow{border-left:3px solid #8b5cf6;background:#8b5cf614}.layerRow.blueprintLayerRow:hover{background:#8b5cf624}.layerRow.blueprintLayerRow.selected{border-color:#8b5cf6;background:#8b5cf629}.layerLeft{display:flex;align-items:center;gap:8px;min-width:0}.layerRight{display:flex;align-items:center;gap:12px;flex-shrink:0}.layerChevron{width:12px;text-align:center;flex-shrink:0;font-size:10px;cursor:pointer;opacity:.6}.layerChevron:hover{opacity:1}.layerRow.locked{opacity:.7}.layerEye,.layerLock{width:14px;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.55;color:var(--text-muted)}.layerEye.hidden-off,.layerLock.locked-on,.layerEye:hover,.layerLock:hover{opacity:1}.layerThumb{width:24px;height:24px;border-radius:0;flex-shrink:0;background:var(--symbol-bg);display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--border-color)}.layerThumb canvas{width:100%;height:100%;image-rendering:pixelated}.layerName{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:11px}.layerName input{width:100%;font-size:11px;padding:2px 4px}.layerDragHandle{cursor:grab;opacity:.4;flex-shrink:0;color:var(--text-muted);display:flex;align-items:center;justify-content:center}#layersToolbar{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-top:6px;padding-top:8px;border-top:1px solid var(--border-color)}.layerToolBtn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px;font-size:8px;font-weight:500;line-height:1.1;text-align:center;background:var(--bg-input);border:1px solid var(--border-color);border-radius:0}.layerToolBtn svg.icon{width:12px;height:12px}.layerToolBtn.accent{background:rgba(var(--accent-rgb),.15);border-color:rgba(var(--accent-rgb),.4);color:#4ade80}.layerToolBtn.accent svg.icon{color:#4ade80}.layerToolBtn.danger{color:var(--danger)}.layerToolBtn.danger svg.icon{color:var(--danger)}#layersSection .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#layersSection .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}#colorsSection .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#colorsSection .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}#rightPanel{width:260px;background:var(--bg-panel);overflow:hidden;border-left:1px solid var(--border-color);flex-shrink:0;transition:width .18s ease,padding .18s ease;display:flex;flex-direction:column;box-shadow:-8px 0 24px #00000059}#rightPanel.collapsed{width:14px;padding:0;overflow:hidden;border-left:1px solid var(--accent)}#rightPanel h3{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin:14px 0 8px}#rightPanel h3:first-of-type{margin-top:0}#colorsSection{padding:16px 16px 10px;border-bottom:1px solid var(--border-color);flex:1;display:flex;flex-direction:column;min-height:320px;overflow:hidden}#paletteScrollWrap{overflow-y:auto;flex:1;min-height:0}#paletteCardGrid{overflow-y:auto;flex:1;min-height:0;align-content:start}.sc-panel ::-webkit-scrollbar,.modalBox ::-webkit-scrollbar,.modalBox::-webkit-scrollbar,#toolsPanel::-webkit-scrollbar,#toolsPanel ::-webkit-scrollbar,#lowerTabContent::-webkit-scrollbar,#lowerTabContent ::-webkit-scrollbar{width:7px;height:7px}.sc-panel ::-webkit-scrollbar-track,.modalBox ::-webkit-scrollbar-track,.modalBox::-webkit-scrollbar-track,#toolsPanel::-webkit-scrollbar-track,#toolsPanel ::-webkit-scrollbar-track,#lowerTabContent::-webkit-scrollbar-track,#lowerTabContent ::-webkit-scrollbar-track{background:var(--bg-panel)}.sc-panel ::-webkit-scrollbar-thumb,.modalBox ::-webkit-scrollbar-thumb,.modalBox::-webkit-scrollbar-thumb,#toolsPanel::-webkit-scrollbar-thumb,#toolsPanel ::-webkit-scrollbar-thumb,#lowerTabContent::-webkit-scrollbar-thumb,#lowerTabContent ::-webkit-scrollbar-thumb{background:var(--border-strong);border:1px solid var(--bg-panel);border-radius:0}.sc-panel ::-webkit-scrollbar-thumb:hover,.modalBox ::-webkit-scrollbar-thumb:hover,.modalBox::-webkit-scrollbar-thumb:hover,#toolsPanel::-webkit-scrollbar-thumb:hover,#toolsPanel ::-webkit-scrollbar-thumb:hover,#lowerTabContent::-webkit-scrollbar-thumb:hover,#lowerTabContent ::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.paletteTabs,#paletteHeroCard,#paletteColorsTab .hint,.paletteSelectorRow,.searchFilterRow{flex-shrink:0}#layersSection{padding:16px 16px 10px;border-bottom:1px solid var(--border-color);flex:1;min-height:260px;display:flex;flex-direction:column;overflow:hidden}#layersList{overflow-y:auto;flex:1;min-height:0}.layersDragHint,#layersToolbar{flex-shrink:0}.layersDragHint{flex-shrink:0;text-align:center;border:1px dashed var(--border-strong);border-radius:6px;padding:8px;margin:8px 0 0}.panelOptionsMenu .menuItem.inert{opacity:.5;cursor:not-allowed;pointer-events:none;font-size:9px}#patternCanvasSection{padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}#patternCanvasSection.sectionCollapsed{padding-bottom:10px}#patternCanvasSection.sectionCollapsed>*:not(.paletteHeader){display:none}.patternCanvasGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:12.5px}.pcCol{display:flex;flex-direction:column;gap:8px}.pcBoxRow{display:flex;flex-direction:column;gap:4px}.pcBox{background:var(--bg-input);border:1px solid var(--border-strong);border-radius:6px;padding:5px 8px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.pcRow{display:flex;justify-content:space-between;align-items:baseline}.pcLabel{color:var(--text-muted);font-size:11px}.pcValue{font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.panelDivider{height:6px;flex-shrink:0;cursor:row-resize;background:var(--bg-toolbar);position:relative;touch-action:none}.panelDivider:after{content:"";position:absolute;top:2px;left:50%;width:28px;height:2px;background:var(--border-strong);transform:translate(-50%);border-radius:1px}.panelDivider:hover,.panelDivider.dragging{background:var(--accent)}#lowerTabArea{flex:1;display:flex;min-height:0}#rightTabBar{display:flex;flex-direction:column;gap:2px;width:38px;flex-shrink:0;padding:8px 4px;background:var(--bg-toolbar);border-right:1px solid var(--border-color)}.rightTab{padding:8px 2px;font-size:15px;border-radius:6px;border:1px solid transparent;background:transparent}.rightTab.active{background:var(--accent);border-color:var(--accent)}#lowerTabContent{flex:1;overflow-y:auto;padding:12px;min-width:0}.rightTabPanel.hidden{display:none}.panelOptionsWrap{position:relative}.panelOptionsMenu{position:absolute;right:0;top:100%;z-index:20;min-width:180px;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:0;box-shadow:0 8px 24px #0000004d;padding:6px}.panelOptionsMenu.hidden{display:none}.panelOptionsMenu .menuSectionTitle{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);padding:4px 8px 2px}.panelOptionsMenu .menuItem{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;font-size:12px;border-radius:0;cursor:pointer;white-space:nowrap}.panelOptionsMenu .menuItem:hover{background:var(--bg-hover)}.panelOptionsMenu .menuItem.danger{color:var(--danger)}.panelOptionsMenu .menuDivider{height:1px;background:var(--border-color);margin:4px 2px}.menuCheckIcon{display:none;width:12px;height:12px;color:var(--accent);flex-shrink:0}.menuItem.checked .menuCheckIcon{display:block}.panelOptionsMenu .menuRadioRow,.panelOptionsMenu .menuCheckRow{justify-content:flex-start;padding-left:22px;position:relative}.panelOptionsMenu .menuRadioRow:before,.panelOptionsMenu .menuCheckRow:before{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:9px;height:9px;border:1px solid var(--text-dim)}.panelOptionsMenu .menuRadioRow:before{border-radius:50%}.panelOptionsMenu .menuRadioRow.checked:before{border-color:var(--accent);background:radial-gradient(var(--accent) 0 45%,transparent 46%)}.panelOptionsMenu .menuCheckRow.checked:before{border-color:var(--accent);background:var(--accent)}.panelOptionsMenu .menuRadioRow.checked,.panelOptionsMenu .menuCheckRow.checked{color:var(--text-primary)}.motifLibraryDropdown{display:flex;align-items:center;gap:8px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;padding:8px 10px}.motifLibraryDropdown svg.icon{width:14px;height:14px;color:var(--text-muted);flex-shrink:0}.motifLibraryDropdown select{appearance:none;-webkit-appearance:none;background:transparent;border:none;color:var(--text-primary);font-size:12px;flex:1;padding:0;min-width:0;cursor:pointer}.motifLibraryDropdown select:focus{outline:none}.motifLibraryChevron{pointer-events:none}.searchFilterRow{display:flex;gap:6px;margin-bottom:6px}.searchFilterRow input{flex:1;width:100%}.searchBox{flex:1;display:flex;align-items:center;gap:6px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;padding:0 8px}.searchBox svg{flex-shrink:0;opacity:.6;color:var(--text-dim)}.searchBox input[type=text]{background:transparent;border:none;border-radius:0;padding:6px 0;font-size:11px;width:100%}.searchBox input[type=text]:focus{outline:none}.filterPillsRow{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.filterPill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:11px;border-radius:0;background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.filterPill svg.icon{width:10px;height:10px}.filterPill:hover{background:var(--bg-hover)}.filterPill.active{background:var(--accent);border-color:var(--accent);color:#fff}#motifLibraryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.motifLibraryItem{background:var(--symbol-bg);border:2px solid transparent;border-radius:6px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px var(--border-color);transition:border-color .15s ease;touch-action:none}.motifLibraryItem:hover{border-color:var(--text-muted)}.motifLibraryItem.selected{border-color:var(--accent)}.motifLibraryItem canvas{width:80%;height:80%;image-rendering:pixelated}.motifSelectedBadge{display:none;position:absolute;bottom:4px;right:4px;background:var(--accent);border-radius:0;width:14px;height:14px;align-items:center;justify-content:center}.motifLibraryItem.selected .motifSelectedBadge{display:flex}.motifSelectedBadge svg.icon{width:9px;height:9px;color:#fff}.motifFavBtn{position:absolute;top:3px;left:3px;background:#00000073;border:none;border-radius:0;color:#fff;font-size:10px;line-height:1;padding:2px 3px;cursor:pointer}.motifFavBtn.active{color:#ffd24a}.motifDragBanner{border:1px dashed var(--border-strong);border-radius:6px;padding:8px;text-align:center;font-size:11px;color:var(--text-dim);display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px}.motifDragBanner svg.icon{width:14px;height:14px}.motifFooterActions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-color)}.motifActionBtn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;padding:6px 4px;color:var(--text-primary);font-size:11px;font-weight:500;display:flex;flex-direction:column;align-items:center;gap:2px}.motifActionBtn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.motifActionBtn svg.icon{width:12px;height:12px}.motifActionBtn.primary{background:rgba(var(--accent-rgb),.15);border-color:rgba(var(--accent-rgb),.4);color:#4ade80}.motifActionBtn:disabled{opacity:.5;cursor:default}#tabMotifs{padding:16px 16px 10px}#tabMotifs .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#tabMotifs .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}#tabMotifs .importSection{margin-bottom:8px}#tabText{padding:16px 16px 10px}#tabText .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#tabText .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}#tabText .importSection{margin-bottom:10px}#textToolPreviewWrap{min-height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-input);border:1px solid var(--border-color);margin-bottom:10px;padding:10px}#textToolPreview{display:none;image-rendering:pixelated;cursor:grab}#textToolPreview:active{cursor:grabbing}#textToolEmptyHint{margin:0}#textToolCurve{width:100%;accent-color:var(--accent)}#textToolCurveValue{color:var(--text-dim);font-weight:400;text-transform:none;letter-spacing:0}.textToolFontRow{display:flex;gap:6px;align-items:stretch}.textToolFontRow .pdfControlSelect{flex:1;min-width:0}.textToolStyleToggle{display:flex;flex-shrink:0;border:1px solid var(--border-color)}.textStyleBtn{display:flex;align-items:center;justify-content:center;width:28px;font-size:12px;color:var(--text-muted);background:var(--bg-input);cursor:pointer;user-select:none}.textToolStyleToggle .textStyleBtn+.textStyleBtn{border-left:1px solid var(--border-color)}.textStyleBtn:hover{background:var(--bg-hover);color:var(--text-primary)}.textStyleBtn input{position:absolute;opacity:0;pointer-events:none}.textStyleBtn:has(input:checked){background:var(--accent);color:#fff}.textToolColorHint{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--text-dim)}.textToolColorSwatch{width:12px;height:12px;border:1px solid var(--swatch-border-strong);background:var(--bg-input);flex-shrink:0}.textToolColorHint.noColor{color:#d97706}#textToolAddBtn{flex-direction:row;justify-content:center;gap:6px;width:100%;padding:8px 10px;margin-top:4px}#textToolAddBtn svg.icon{width:14px;height:14px}.miniBtn{padding:3px 8px;font-size:13px;line-height:1;font-weight:700}.field label{font-size:11px;color:var(--text-dimmer)}button.wide{width:100%;margin-top:6px}#autosaveList,#modalAutosaveList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px;font-size:11px}#autosaveList.isScrolling,#modalAutosaveList.isScrolling{max-height:168px;overflow-y:auto;padding-right:2px}.autosaveCount{color:var(--text-dim);font-weight:500}#autosaveList li,#modalAutosaveList li{background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:6px 8px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}#autosaveList li:hover,#modalAutosaveList li:hover{background:var(--bg-hover);border-color:var(--text-muted)}#autosaveList li button,#modalAutosaveList li button{padding:1px 6px;font-size:11px;background:transparent;border:none;color:var(--text-muted)}#tabPattern{padding:16px 16px 10px}#tabPattern .importSection{margin-bottom:10px}#tabPattern .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#tabPattern .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}.importSection{display:flex;flex-direction:column;gap:6px}.labelText.accent{color:var(--accent)}.importSourceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.importSourceCard{background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;position:relative;transition:border-color .2s ease,background-color .2s ease}.importSourceCard:hover{background:var(--bg-hover);border-color:var(--text-muted)}.importSourceCard.selected{border-color:var(--accent);background:rgba(var(--accent-rgb),.08)}.importSourceCard.disabled{opacity:.5;cursor:not-allowed}.importSourceCard svg.icon{width:20px;height:20px;color:var(--text-muted)}.importSourceCard.selected svg.icon{color:var(--accent)}.importSourceTitle{font-size:10px;font-weight:500;color:var(--text-primary)}.importSourceSub{font-size:8px;color:var(--text-muted);text-align:center}.importSourceBadge{display:none;position:absolute;top:4px;right:4px;background:var(--accent);border-radius:0;width:12px;height:12px;align-items:center;justify-content:center}.importSourceCard.selected .importSourceBadge{display:flex}.importSourceBadge svg.icon{width:8px;height:8px;color:#fff}.importModeGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.importModeCard{background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:6px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.importModeCard:hover{background:var(--bg-hover)}.importModeCard.selected{border-color:var(--accent);background:rgba(var(--accent-rgb),.08)}.importModeHeader{display:flex;align-items:center;gap:6px}.importRadio{width:12px;height:12px;border:1px solid var(--text-muted);border-radius:50%;flex-shrink:0;box-sizing:border-box}.importModeCard.selected .importRadio{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 2px var(--bg-input)}.importModeTitle{font-size:11px;font-weight:600;color:var(--text-primary)}.importModeDesc{font-size:9px;color:var(--text-muted);line-height:1.3}.modalBox.small.fileNewOpenBox.importPatternBox{width:960px;max-height:92vh}.ipmBody{margin-top:14px}.ipmCol{flex:1;gap:0}.ipmPreviewEmpty.hidden,.ipmCompare.hidden,.ipmCropOverlay.hidden,.ipmCropToggle.hidden,.ipmUpdating.hidden{display:none}.ipmPreview.hero{position:relative;height:620px;border:1px solid var(--border-color);border-radius:10px;overflow:hidden;background:var(--bg-input)}.ipmPreviewEmpty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-muted)}.ipmDropIcon{width:40px;height:40px;opacity:.55}.ipmDropTitle{font-size:15px;font-weight:700;color:var(--text-dim);margin:0}.ipmDropOr,.ipmChooseHint{font-size:11px;color:var(--text-muted)}.ipmCompare{position:relative;height:100%;overflow:hidden;user-select:none}.ipmOriginalImg,.ipmPatternClip{background-image:linear-gradient(45deg,#e2e2e2 25%,transparent 25%),linear-gradient(-45deg,#e2e2e2 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e2e2e2 75%),linear-gradient(-45deg,transparent 75%,#e2e2e2 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:#fff}.ipmOriginalImg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-origin:0 0}.ipmPatternClip{position:absolute;inset:0;overflow:hidden}.ipmPatternClip canvas{position:absolute;inset:0;width:100%;height:100%}.ipmGridCanvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ipmOriginalImg,.ipmPatternClip canvas{cursor:grab}.ipmCompare.ipmPanning .ipmOriginalImg,.ipmCompare.ipmPanning .ipmPatternClip canvas{cursor:grabbing}.ipmZoomBadge,.ipmCropToggle,.ipmControlsPanel{cursor:default}.ipmLabel{position:absolute;top:12px;background:#141416bf;color:#fff;font-size:11px;font-weight:600;letter-spacing:.3px;padding:5px 12px;border-radius:20px;pointer-events:none}.ipmLabelOriginal{left:12px}.ipmLabelPattern{right:12px}.ipmHandle{position:absolute;top:0;bottom:0;left:50%;width:28px;margin-left:-14px;display:flex;align-items:center;justify-content:center;cursor:ew-resize}.ipmHandle:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:#ffffffd9}.ipmHandle svg.icon{position:relative;width:30px;height:30px;color:#1a1a1a;background:#fff;border-radius:50%;padding:6px;box-sizing:border-box;box-shadow:0 2px 6px #00000059}.ipmUpdating{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#141416bf;color:#fff;font-size:10px;padding:4px 12px;border-radius:10px;pointer-events:none}.ipmZoomBadge{position:absolute;left:12px;bottom:12px;display:flex;align-items:center;gap:6px;background:#141416bf;color:#fff;font-size:11px;font-weight:600;padding:6px 12px;border-radius:20px}.ipmCropToggle{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:#141416bf;color:#fff;border:none;border-radius:8px;cursor:pointer}.ipmCropToggle svg.icon{width:14px;height:14px}.ipmCropOverlay{position:absolute;inset:0;background:#00000059}.ipmCropRect{position:absolute;border:1.5px dashed #fff;box-shadow:0 0 0 2000px #00000073;cursor:move}.ipmCropHandle{position:absolute;background:#fff;border:1.5px solid var(--accent);box-sizing:border-box}.ipmCropHandleCorner{width:12px;height:12px;border-radius:50%;margin:-6px;cursor:nwse-resize}.ipmCropHandle[data-corner=nw]{top:0;left:0}.ipmCropHandle[data-corner=ne]{top:0;right:0;margin-right:-6px;cursor:nesw-resize}.ipmCropHandle[data-corner=sw]{bottom:0;left:0;margin-bottom:-6px;cursor:nesw-resize}.ipmCropHandle[data-corner=se]{bottom:0;right:0;margin:-6px}.ipmCropHandleEdge{width:10px;height:10px;border-radius:3px}.ipmCropHandleN{top:0;left:50%;margin:-5px 0 0 -5px;cursor:ns-resize}.ipmCropHandleS{bottom:0;left:50%;margin:0 0 -5px -5px;cursor:ns-resize}.ipmCropHandleW{left:0;top:50%;margin:-5px 0 0 -5px;cursor:ew-resize}.ipmCropHandleE{right:0;top:50%;margin:-5px -5px 0 0;cursor:ew-resize}.ipmControlsPanel{position:absolute;top:52px;right:12px;max-height:calc(100% - 108px);width:174px;display:flex;flex-direction:column;gap:8px;padding:10px;background:#121214d1;backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:10px;overflow-y:auto;color:#f2f2f2}.ipmControlsPanel .importSection{gap:3px}.ipmControlsPanel .labelText{color:#ffffffeb;font-size:10px}.ipmPresetGrid{display:grid;grid-template-columns:1fr;gap:5px}.ipmPresetCard{background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:5px 8px;display:flex;flex-direction:column;align-items:flex-start;gap:1px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.ipmPresetCard:hover{background:#ffffff1a}.ipmPresetCard.selected{border-color:var(--accent);background:rgba(var(--accent-rgb),.25)}.ipmPresetTitle{font-size:10px;font-weight:600;color:#fff}.ipmPresetSub{font-size:8px;color:#fff9;white-space:nowrap}.ipmSliderRow{display:flex;align-items:center;gap:6px}.ipmSliderRow input[type=range]{flex:1;accent-color:var(--accent);min-width:0}.ipmSliderRow input[type=number]{width:40px;flex-shrink:0;padding:2px 4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.ipmControlsPanel select{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.ipmAutoReduceRow{display:flex;align-items:center;justify-content:space-between;gap:6px}.ipmAutoReduce{display:flex;align-items:center;gap:4px;font-size:10px;color:#f2f2f2;white-space:nowrap}.ipmAutoReduce svg.icon{width:11px;height:11px;color:#fff9}.ipmStatsBlock{display:flex;flex-direction:column;gap:2px;padding-top:6px;border-top:1px solid rgba(255,255,255,.14)}.ipmSliderInfo,.ipmStats{font-size:9px;color:#fff9;line-height:1.4}.ipmResetLink{display:flex;align-items:center;gap:4px;background:transparent;border:none;color:#ffffffbf;font-size:10px;font-weight:600;padding:0;cursor:pointer;flex-shrink:0}.ipmResetLink:hover{color:#fff}.ipmResetLink svg.icon{width:11px;height:11px}.ipmOverlayFooter{display:flex;gap:6px;padding-top:2px}.ipmOverlayFooter .fnoCancelBtn{flex:1;padding:7px;font-size:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#f2f2f2}.ipmOverlayFooter .fnoCancelBtn:hover{background:#ffffff24}.ipmOverlayFooter .fnoPrimaryBtn{flex:1.4;padding:7px;font-size:10px}.importPreviewCard{background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:8px;display:flex;gap:10px;align-items:center}.importPreviewThumb{width:64px;height:64px;border-radius:0;background:var(--symbol-bg);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);flex-shrink:0;overflow:hidden}.importPreviewThumb img{width:100%;height:100%;object-fit:cover}.importPreviewMeta{display:flex;flex-direction:column;gap:3px;overflow:hidden;flex:1;min-width:0}.importPreviewTitleRow{display:flex;justify-content:space-between;align-items:center;gap:6px}.importPreviewFilename{font-size:11px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.importStatusPill{background:rgba(var(--accent-rgb),.15);color:#4ade80;font-size:8px;padding:2px 6px;border-radius:0;font-weight:500;white-space:nowrap;flex-shrink:0}.importStatusPill.hidden,.importSection.hidden{display:none}.importMetaLine{font-size:9px;color:var(--text-muted)}.importProjectGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.fnoActionGrid.importProjectGrid{grid-template-columns:repeat(4,1fr)}.extraActionBtn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-primary);font-size:11px;font-weight:500;padding:6px 10px;width:100%;text-align:center;transition:background-color .2s ease,border-color .2s ease}.extraActionBtn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.importActionRow{display:grid;grid-template-columns:1fr 2fr;gap:6px}.importActionRow.soloMain{grid-template-columns:1fr}.importActionRow.soloMain .importBtnSec{display:none}.importBtnSec{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-primary);font-size:11px;font-weight:500;padding:6px 10px;display:flex;align-items:center;justify-content:center;gap:6px}.importBtnSec:hover{background:var(--bg-hover);border-color:var(--text-muted)}.importBtnSec svg.icon{width:14px;height:14px}.importActionMain{background:var(--accent);border:none;border-radius:0;color:#fff;font-size:11px;font-weight:600;padding:6px 10px;display:flex;align-items:center;justify-content:center;gap:6px}.importActionMain:hover{background:var(--accent-hover)}.importActionMain svg.icon{width:14px;height:14px}#tabExport{padding:16px 16px 0}#tabExport:not(.hidden){display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#tabExport .paletteHeader{margin:-16px -16px 8px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}#tabExport .paletteHeader h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.5px}.pdfSection{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.pdfSection.hidden{display:none}.exportTabs,.importTabs{display:flex;gap:6px;margin:8px 0;flex-shrink:0}.exportTab,.importTab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 10px;background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-muted);font-size:11px;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.exportTab:hover,.importTab:hover{background:var(--bg-hover)}.exportTab.active,.importTab.active{background:rgba(var(--accent-rgb),.16);border-color:var(--accent);color:var(--text-primary)}.exportTab.active:hover,.importTab.active:hover{background:rgba(var(--accent-rgb),.22)}.exportTabDot{width:5px;height:5px;border-radius:50%;background:var(--accent);display:none}.exportTab.hasContent .exportTabDot{display:block}.exportTabBody{flex:1;min-height:0;overflow-y:auto}#exportOutputTab.hidden,#exportBrandingTab.hidden,#importImportTab.hidden,#importNewTab.hidden{display:none}.importActionMain:disabled{background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-dim);cursor:not-allowed}.pdfFooter .pdfSection{margin-bottom:0}.labelText{font-size:11px;font-weight:650;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.pdfRowSplit{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.pdfInput,.pdfControlSelect{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;padding:8px 10px;color:var(--text-primary);font-size:11px;width:100%}.pdfControlSelect{font-size:12px}.pdfInput:focus{border-color:var(--accent);outline:none}textarea.pdfInput{font-family:inherit;line-height:1.4;resize:vertical;min-height:64px}.pdfTypeRow{display:flex;gap:6px}.pdfTypeRow .pdfControlSelect{flex:1}.pdfEyeBtn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-muted);padding:0 8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pdfEyeBtn:hover{color:var(--text-primary);background:var(--bg-hover)}.pdfEyeBtn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-input)}.pdfEyeBtn svg.icon{width:14px;height:14px}.pdfNumberWrap{display:flex;align-items:center;background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;padding:0 8px;gap:4px}.pdfNumberWrap input{background:transparent;border:none;color:var(--text-primary);font-size:11px;width:100%;padding:8px 0;outline:none}.pdfNumberWrap input::-webkit-outer-spin-button,.pdfNumberWrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pdfNumberUnit{font-size:10px;color:var(--text-dim);flex-shrink:0}.pdfStepperBtns{display:flex;flex-direction:column;flex-shrink:0}.pdfStepperBtn{background:transparent;border:none;padding:0;color:var(--text-muted);cursor:pointer;line-height:0}.pdfStepperBtn:hover{color:var(--text-primary)}.pdfStepperBtn svg.icon{width:10px;height:10px}.pdfHelperText{font-size:9px;color:var(--text-dim)}.pdfWarnText{display:block;margin-top:4px;color:#d97706;font-weight:500}.pdfWarnText.hidden{display:none}.pdfCheckboxRow{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--text-dim);cursor:pointer}.pdfCheckboxRow input[type=checkbox]{margin:0;cursor:pointer}.pdfCheckboxRow.hidden{display:none}.pdfNumberWrap.disabled{opacity:.5;pointer-events:none}.pdfPageBreakdown{font-size:10px;color:var(--text-dim)}.pdfBtnSm{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--text-primary);font-size:11px;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;flex:1}.pdfBtnSm svg.icon{width:12px;height:12px}.pdfBtnDanger{background:var(--bg-input);border:1px solid var(--border-color);border-radius:0;color:var(--danger);padding:6px 10px;display:flex;align-items:center;justify-content:center}.pdfBtnDanger svg.icon{width:12px;height:12px}.pdfLogoCard{background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.pdfLogoLeft{display:flex;align-items:center;gap:8px;overflow:hidden;min-width:0}.pdfLogoThumb{width:32px;height:32px;border-radius:0;background:var(--symbol-bg);border:1px solid var(--border-color);flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.pdfLogoThumb img{width:100%;height:100%;object-fit:contain}.pdfLogoMeta{display:flex;flex-direction:column;overflow:hidden;min-width:0}.pdfLogoTitle{font-size:11px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdfLogoActions{display:flex;gap:4px;flex-shrink:0}.pdfFooter{display:flex;flex-direction:column;gap:6px;flex-shrink:0;margin:8px -16px 0;padding:10px 16px;background:var(--bg-surface);border-top:1px solid var(--border-color)}.pdfActionMain{background:var(--accent);border:none;border-radius:0;color:#fff;font-size:11px;font-weight:600;padding:6px 10px;width:100%;display:flex;align-items:center;justify-content:center;gap:6px}.pdfActionMain:hover{background:var(--accent-hover)}.pdfActionMain svg.icon{width:14px;height:14px}.pdfActionSubtext{font-size:9px;color:var(--text-dim);text-align:center}#canvasArea{flex:1;overflow:auto;position:relative;background:var(--bg-deep)}#canvasArea.sc-canvas-loading{visibility:hidden}#gridWrap{display:grid;grid-template-columns:34px 1fr;grid-template-rows:22px 1fr;width:max-content}#rulerCorner{position:sticky;top:0;left:0;z-index:3;background:var(--bg-panel);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}#rulerTop{position:sticky;top:0;z-index:2;background:var(--bg-panel);border-bottom:1px solid var(--border-color)}#rulerRight{position:sticky;left:0;z-index:2;background:var(--bg-panel);border-right:1px solid var(--border-color)}#canvasStack{position:relative;background:repeating-conic-gradient(var(--canvas-check-1) 0% 25%,var(--canvas-check-2) 0% 50%) 50% / 20px 20px;touch-action:none}body.rulerModeArtboard #gridWrap{display:block;position:relative}body.rulerModeArtboard #rulerTop,body.rulerModeArtboard #rulerRight{position:absolute;z-index:2}body.rulerModeArtboard #rulerCorner{display:none}body.rulerModeArtboard #rulerTop{background:var(--bg-panel);border-bottom:1px solid var(--border-color)}body.rulerModeArtboard #rulerRight{background:var(--bg-panel);border-left:1px solid var(--border-color);border-right:none}#stitchCanvas,#overlayCanvas{image-rendering:pixelated;display:block}#selectionContextMenu{position:absolute;display:flex;flex-wrap:wrap;gap:4px;max-width:280px;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:7px;padding:4px;box-shadow:0 4px 14px #00000059;z-index:1001;pointer-events:auto}#selectionContextMenu.hidden{display:none}#selectionContextMenu button,#selectionContextMenu select{font-size:11px;padding:5px 9px;white-space:nowrap}#blueprintOpacityControl{position:absolute;display:flex;align-items:center;gap:6px;background:var(--bg-panel);border:1px solid #8b5cf6;border-radius:7px;padding:5px 9px;box-shadow:0 4px 14px #00000059;z-index:1001;pointer-events:auto}#blueprintOpacityControl.hidden{display:none}#blueprintOpacityControl svg.icon{width:13px;height:13px;color:#8b5cf6;flex-shrink:0}#blueprintOpacityControl input[type=range]{width:90px;accent-color:#8b5cf6;cursor:pointer}#blueprintOpacityControl span{font-size:11px;color:var(--text-muted);width:32px;text-align:right;flex-shrink:0}#overlayCanvas{position:absolute;top:0;left:0;pointer-events:none}#statusBar{height:29px;padding:0 16px;background:var(--bg-toolbar);border-top:1px solid var(--border-color);font-size:11.5px;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center;gap:12px;position:relative;overflow:hidden;z-index:1001}#statusText{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#statusText:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--status-ok);flex-shrink:0}#liveStatsText{white-space:nowrap;color:var(--text-dimmer);font-size:12.5px;font-weight:500;flex-shrink:0}#rendererIndicatorText{display:none}.statusLegalLink{background:none;border:none;padding:0;margin:0;font:inherit;font-size:11.5px;color:var(--text-dim);white-space:nowrap;flex-shrink:0;cursor:pointer}
