.viewer-frame.svelte-2p005c{touch-action:none;background:#120805;border:1px solid #ffd3b229;border-radius:24px;height:clamp(460px,100vh - 132px,720px);position:relative;overflow:hidden;box-shadow:inset 1px 1px #ffecdc1a,inset -1px -1px #0000006b,0 26px 68px #0000006b}canvas.svelte-2p005c{cursor:grab;width:100%;height:100%;display:block}.viewer-frame.draw-mode.svelte-2p005c canvas:where(.svelte-2p005c),.viewer-frame.plane-mode.svelte-2p005c canvas:where(.svelte-2p005c){cursor:crosshair}canvas.svelte-2p005c:active{cursor:grabbing}.viewer-frame.updating.svelte-2p005c canvas:where(.svelte-2p005c){filter:blur(2px);opacity:.68}.viewer-badge.svelte-2p005c,.reset-tool.svelte-2p005c,.viewer-fallback.svelte-2p005c,.viewer-progress.svelte-2p005c{color:#ffbd86;text-transform:uppercase;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#1e0d08c7;border:1px solid #ffccaa2e;font-size:.74rem;font-weight:800;position:absolute}.viewer-badge.svelte-2p005c{letter-spacing:.06em;border-radius:999px;padding:6px 10px;top:14px;left:14px}.viewer-hint.svelte-2p005c{color:#ffd7bd;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;background:#1e0d08c7;border:1px solid #ffccaa2e;border-radius:999px;max-width:min(72%,340px);padding:6px 12px;font-size:.72rem;font-weight:800;position:absolute;top:14px;left:50%;transform:translate(-50%)}.reset-tool.svelte-2p005c{color:#ffd7bd;cursor:pointer;border-radius:12px;place-items:center;width:38px;height:38px;display:grid;top:14px;right:14px}.viewer-progress.svelte-2p005c,.viewer-fallback.svelte-2p005c{border-radius:999px;align-items:center;gap:8px;padding:8px 14px;display:flex;bottom:18px;left:50%;transform:translate(-50%)}.viewer-progress.svelte-2p005c i:where(.svelte-2p005c){background:#ff7a2e;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite svelte-2p005c-pulse}@keyframes svelte-2p005c-pulse{50%{opacity:.35}}.cut-error-dialog.svelte-nhy6hc{color:#ffe6d8;background:#25150e;border:1px solid #875337;border-radius:20px;width:min(460px,100vw - 32px);padding:28px;box-shadow:0 24px 90px #0009}.cut-error-dialog.svelte-nhy6hc::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d0704b8}.cut-error-heading.svelte-nhy6hc{color:#ffb454;align-items:center;gap:12px;display:flex}.cut-error-heading.svelte-nhy6hc h2:where(.svelte-nhy6hc){margin:0;font-size:1.25rem}.cut-error-dialog.svelte-nhy6hc p:where(.svelte-nhy6hc){margin:18px 0 24px;line-height:1.6}.cut-error-dialog.svelte-nhy6hc form:where(.svelte-nhy6hc){justify-content:flex-end;display:flex}.cut-error-dialog.svelte-nhy6hc button:where(.svelte-nhy6hc){color:#25150e;min-width:100px;font:inherit;cursor:pointer;background:#e59850;border:1px solid #f1b277;border-radius:10px;padding:10px 22px;font-weight:750}.cut-error-dialog.svelte-nhy6hc button:where(.svelte-nhy6hc):focus-visible{outline-offset:4px;outline:2px solid #ffe6d8}*{box-sizing:border-box}html{scroll-behavior:smooth;color:#ffe6d8;background:#140b08}body{color:#ffe6d8;background:#140b08;margin:0;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:4px;outline:3px solid #ffbd7f}.tool-page.svelte-nhy6hc{color:#ffe6d8;background-color:#140b08;background-image:linear-gradient(#ffb77b0b 1px,#0000 1px),linear-gradient(90deg,#ffb77b0b 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:44px 44px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;min-height:100vh;font-family:Geist,Segoe UI,sans-serif}.tool-shell.svelte-nhy6hc{gap:24px;padding:clamp(18px,2.8vw,34px) clamp(18px,5vw,64px) clamp(28px,5vw,64px);display:grid}.back-link.svelte-nhy6hc{color:#ffbd86;text-transform:uppercase;align-items:center;gap:8px;font-size:.82rem;font-weight:800;display:inline-flex}h1.svelte-nhy6hc,h2.svelte-nhy6hc,p.svelte-nhy6hc{margin:0}h1.svelte-nhy6hc,h2.svelte-nhy6hc{font-family:Bricolage Grotesque,Geist,sans-serif}h1.svelte-nhy6hc{color:#ffe4d8;margin-top:10px;font-size:clamp(1.45rem,2.35vw,2.15rem);font-weight:800;line-height:1}.tool-copy.svelte-nhy6hc p:where(.svelte-nhy6hc){color:#d7bcaa;margin-top:10px;font-size:.9rem;font-weight:700;line-height:1.45}.tool-copy.svelte-nhy6hc p:where(.svelte-nhy6hc) a:where(.svelte-nhy6hc){color:#ffbd86;text-underline-offset:3px;text-decoration:underline}.tool-workbench.svelte-nhy6hc{grid-template-columns:minmax(0,1fr) minmax(300px,400px);align-items:start;gap:22px;display:grid}.control-stack.svelte-nhy6hc,.preview-panel.svelte-nhy6hc,.control-panel.svelte-nhy6hc{min-width:0}.preview-loading.svelte-nhy6hc{color:#d7bcaa;background:#120805;border:1px solid #ffd3b229;border-radius:24px;place-items:center;height:clamp(460px,100vh - 132px,720px);font-weight:700;display:grid}.control-panel.svelte-nhy6hc{background:#26140d;border:1px solid #ffd3b229;border-radius:24px;gap:14px;padding:clamp(18px,2.4vw,24px);display:grid}.panel-heading.svelte-nhy6hc{align-items:center;gap:14px;display:flex}.panel-heading.svelte-nhy6hc p:where(.svelte-nhy6hc){color:#ffbd86;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}.panel-icon.svelte-nhy6hc{color:#241006;background:#c97835;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.panel-heading.svelte-nhy6hc h2:where(.svelte-nhy6hc){color:#ffe4d8;font-size:1.5rem;line-height:1}.section-note.svelte-nhy6hc,.meta.svelte-nhy6hc{color:#cdb19f;font-size:.85rem;font-weight:650;line-height:1.45}.file-button.svelte-nhy6hc,.cut-button.svelte-nhy6hc,.ghost-button.svelte-nhy6hc,.tool-chip.svelte-nhy6hc,.stepper.svelte-nhy6hc button:where(.svelte-nhy6hc){color:#ffd7bd;cursor:pointer;min-height:42px;font:inherit;background:#180b0699;border:1px solid #ffccaa2e;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.file-button.svelte-nhy6hc{width:100%;position:relative}.file-button.svelte-nhy6hc input:where(.svelte-nhy6hc){opacity:0;cursor:pointer;position:absolute;inset:0}.chip-section.svelte-nhy6hc{gap:8px;display:grid}.chip-label.svelte-nhy6hc{color:#ffbd86;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.chip-grid.svelte-nhy6hc{gap:6px;display:grid}.chip-grid.three.svelte-nhy6hc{grid-template-columns:repeat(3,minmax(0,1fr))}.chip-grid.four.svelte-nhy6hc{grid-template-columns:repeat(2,minmax(0,1fr))}.chip-grid.five.svelte-nhy6hc{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-chip.svelte-nhy6hc{letter-spacing:.04em;text-transform:uppercase;border-radius:14px;flex-direction:column;gap:4px;min-height:58px;padding:8px 4px 7px;font-size:.68rem}.tool-chip.svelte-nhy6hc span:where(.svelte-nhy6hc){white-space:nowrap}.tool-chip.compact.svelte-nhy6hc{min-height:52px}.tool-chip.active.svelte-nhy6hc{color:#241006;background:#c97835;border-color:#c97835}.connector-tune.svelte-nhy6hc{gap:10px;display:grid}.stepper.svelte-nhy6hc{color:#ffd7bd;grid-template-columns:1fr auto auto auto;align-items:center;gap:6px;font-weight:800;display:grid}.stepper.svelte-nhy6hc button:where(.svelte-nhy6hc){border-radius:10px;width:36px;min-height:36px;padding:0}.stepper.svelte-nhy6hc button:where(.svelte-nhy6hc):disabled{opacity:.4;cursor:not-allowed}.stepper.svelte-nhy6hc output:where(.svelte-nhy6hc){text-align:center;color:#ffe4d8;font-variant-numeric:tabular-nums;min-width:1.4rem}.size-slider.svelte-nhy6hc input:where(.svelte-nhy6hc){accent-color:#c97835;width:100%}.preview-panel.svelte-nhy6hc{position:relative}.viewport-dock.svelte-nhy6hc{background:#26140df5;border:1px solid #ffccaa3d;border-radius:16px;width:min(360px,100% - 32px);padding:6px;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000003d}.viewport-dock.svelte-nhy6hc p:where(.svelte-nhy6hc){color:#d7bcaa;text-align:center;margin:8px 8px 4px;font-size:.75rem;line-height:1.4}.pointer-tools.svelte-nhy6hc{grid-template-columns:1fr 1fr;gap:4px;display:grid}.pointer-btn.svelte-nhy6hc{color:#d7bcaa;cursor:pointer;min-height:42px;font:inherit;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:.86rem;font-weight:700;display:flex}.pointer-btn.svelte-nhy6hc:hover{color:#ffe4d8;background:#ffccaa14}.pointer-btn.active.svelte-nhy6hc{color:#241006;background:#c97835;border-color:#dc9558}.pointer-btn.svelte-nhy6hc kbd:where(.svelte-nhy6hc){font:inherit;opacity:.65;margin-left:8px;font-size:.65rem}.pointer-btn.svelte-nhy6hc:disabled{opacity:.45;cursor:wait}.pointer-btn.svelte-nhy6hc:focus-visible,.seam-pick.svelte-nhy6hc:focus-visible,.seam-delete.svelte-nhy6hc:focus-visible,.tool-chip.svelte-nhy6hc:focus-visible{outline-offset:3px;outline:2px solid #ffbd86}.seam-tools.svelte-nhy6hc .tool-chip:where(.svelte-nhy6hc){letter-spacing:0;text-transform:none;flex-flow:wrap;justify-content:start;align-items:start;gap:7px;padding:12px;font-size:.85rem}.seam-tools.svelte-nhy6hc .tool-chip:where(.svelte-nhy6hc) small:where(.svelte-nhy6hc){text-align:left;color:#cdb19f;flex-basis:100%;font-size:.7rem;font-weight:500}.seam-tools.svelte-nhy6hc .tool-chip.active:where(.svelte-nhy6hc){color:#ffbd86;background:#c9783529;border-color:#c97835;box-shadow:inset 0 0 0 1px #c97835}.seam-tools.svelte-nhy6hc .tool-chip:where(.svelte-nhy6hc):hover{border-color:#c97835}.seam-heading.svelte-nhy6hc{justify-content:space-between;align-items:center;display:flex}.seam-heading.svelte-nhy6hc .chip-label:where(.svelte-nhy6hc) span:where(.svelte-nhy6hc){color:#cdb19f;background:#ffccaa0f;border-radius:6px;margin-left:6px;padding:2px 7px;font-size:.7rem}.seam-add.svelte-nhy6hc{color:#ffbd86;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:5px 0 5px 8px;font-size:.75rem;font-weight:650;display:inline-flex}.seam-add.svelte-nhy6hc:hover{color:#ffe4d8}.seam-add.svelte-nhy6hc:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #ffbd86}.seam-dock.svelte-nhy6hc{gap:8px;display:grid}.seam-list.svelte-nhy6hc{gap:6px;display:grid}.seam-item.svelte-nhy6hc{text-transform:none;color:#ffd7bd;background:#ffccaa0d;border:1px solid #ffccaa1a;border-radius:10px;justify-content:space-between;align-items:stretch;gap:0;padding:0;display:flex;position:relative;overflow:visible}.seam-item.active.svelte-nhy6hc{color:#ffd7bd;background:#c9783533;border-color:#c9783580}.part-item.svelte-nhy6hc{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;width:100%;min-height:54px;padding:9px 12px}.seam-item.warn-amber.svelte-nhy6hc{border-left:3px solid #ffb454}.seam-item.warn-red.svelte-nhy6hc{border-left:3px solid #ff5b45}.seam-pick.svelte-nhy6hc{min-height:54px;color:inherit;font:inherit;text-transform:none;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:3px;padding:9px 12px;display:flex}.seam-name.svelte-nhy6hc{font-size:.85rem;font-weight:700}.seam-detail.svelte-nhy6hc{color:#cdb19f;font-size:.72rem}.seam-delete.svelte-nhy6hc{width:36px;color:inherit;cursor:pointer;opacity:.78;background:0 0;border:0;border-left:1px solid #ffccaa24;place-items:center;display:grid}.seam-delete.svelte-nhy6hc:hover{opacity:1}.seam-empty.svelte-nhy6hc{color:#c9a38c;border:1px dashed #fca3;border-radius:12px;margin:0;padding:18px 14px;font-size:.78rem;font-weight:650;line-height:1.65}.seam-warn.svelte-nhy6hc{color:#ffb020;cursor:help;background:0 0;border:0;border-left:1px solid #ffccaa24;flex-shrink:0;place-items:center;width:28px;display:grid;position:relative}.seam-warn.amber.svelte-nhy6hc{color:#ffb454}.seam-warn.red.svelte-nhy6hc{color:#ff5b45}.seam-warn-tip.svelte-nhy6hc{z-index:8;color:#ffd7bd;text-align:left;text-transform:none;letter-spacing:0;background:#180b06f0;border:1px solid #ffccaa38;border-radius:10px;width:220px;padding:8px 10px;font-size:.72rem;font-weight:650;line-height:1.35;display:none;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 12px 28px #00000059}.seam-warn.amber.svelte-nhy6hc .seam-warn-tip:where(.svelte-nhy6hc){color:#ffddb0;border-color:#ffb45473}.seam-warn.red.svelte-nhy6hc .seam-warn-tip:where(.svelte-nhy6hc){color:#ffd2c8;border-color:#ff5b4580}.seam-warn-tip.svelte-nhy6hc strong:where(.svelte-nhy6hc){margin-bottom:3px;font-size:.74rem;display:block}.seam-warn.svelte-nhy6hc:hover .seam-warn-tip:where(.svelte-nhy6hc),.seam-warn.svelte-nhy6hc:focus .seam-warn-tip:where(.svelte-nhy6hc),.seam-warn.svelte-nhy6hc:focus-visible .seam-warn-tip:where(.svelte-nhy6hc){display:block}.cut-button.svelte-nhy6hc{color:#241006;background:#c97835;border-color:#c97835;width:100%}.ghost-button.svelte-nhy6hc{color:#ffd7bd;background:#180b0699;border-color:#ffccaa2e}.cut-button.svelte-nhy6hc:disabled{opacity:.45;cursor:not-allowed}label.svelte-nhy6hc{color:#ffd7bd;gap:7px;font-weight:800;display:grid}.tool-notes.svelte-nhy6hc{color:#d7bcaa;gap:12px;max-width:720px;display:grid}.tool-notes.svelte-nhy6hc h2:where(.svelte-nhy6hc){color:#ffe4d8;font-size:1.3rem}.tool-notes.svelte-nhy6hc ul:where(.svelte-nhy6hc){gap:8px;margin:0;padding-left:20px;line-height:1.55;display:grid}.drop-overlay.svelte-nhy6hc{color:#ffe4d8;z-index:40;pointer-events:none;background:#140804b8;place-items:center;font-size:1.4rem;font-weight:800;display:grid;position:fixed;inset:0}@media (width<=980px){.tool-workbench.svelte-nhy6hc{grid-template-columns:1fr}}@media (width<=420px){.chip-grid.five.svelte-nhy6hc{grid-template-columns:repeat(3,minmax(0,1fr))}}
