:root{--workspace-bg:#f7f7f5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html,body{overscroll-behavior-x:none;min-height:100%;margin:0;overflow-x:clip}body{color:#242424;background:#f7f7f5;min-height:100dvh}main{text-align:center;place-content:center;gap:.75rem;min-height:100dvh;padding:2rem;display:grid}.projects-page{text-align:left;background:#111827;place-content:start;min-height:100dvh;padding:clamp(1rem,4vw,4rem);display:grid}.projects-header{justify-content:space-between;align-items:end;gap:1rem;width:min(70rem,100%);margin:0 auto 2rem;display:flex}.projects-header h1{margin:.25rem 0;font-size:clamp(1.8rem,4vw,3.2rem)}.projects-header p{color:#cbd5e1}.projects-header a,.project-card a{justify-self:auto}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#5eead4!important}.project-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem;width:min(70rem,100%);margin:0 auto;display:grid}.project-card{background:#1e293b;border:1px solid #334155;border-radius:.75rem;gap:1rem;padding:1rem;display:grid}.project-card h2{margin:0 0 .35rem;font-size:1rem}.project-card p{color:#cbd5e1;margin:0;font-size:.82rem}.project-card a{color:inherit;background:#334155;border-radius:.45rem;padding:.45rem .65rem;font-weight:700;text-decoration:none}.empty-state{color:#cbd5e1}h1,p{margin:0}a{color:#111827;background:#f9fafb;border-radius:.5rem;justify-self:center;padding:.75rem 1.2rem;font-weight:700;text-decoration:none}button{color:inherit;cursor:pointer;font:inherit;background:#334155;border:0;border-radius:.45rem;padding:.45rem .65rem}button:hover:not(:disabled),button.is-active{background:#0f766e}button:disabled{cursor:not-allowed;opacity:.45}.editor-shell{min-height:100dvh;overflow:hidden}.editor-workspace{touch-action:pan-y pinch-zoom;background:#1e293b;width:100vw;height:100dvh}.workspace-svg{cursor:crosshair;width:100%;height:100%;display:block}.workspace-svg.is-panning{cursor:grabbing}.document-boundary{fill:#f8fafc;stroke:#0f172a;stroke-width:.3px}.transform-bounding-box{fill:none;stroke:#facc15;stroke-width:.35px;stroke-dasharray:1 .7;pointer-events:none}.development-path{fill:#0f766e26;stroke:#0f766e;stroke-width:.4px;vector-effect:non-scaling-stroke}.selection-rectangle{fill:#0ea5e91f;stroke:#38bdf8;stroke-dasharray:1 .7;stroke-width:.2px}.floating-panel{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172af0;border:1px solid #94a3b859;border-radius:.75rem;min-width:12rem;max-width:min(22rem,100vw - 1rem);position:fixed;overflow:hidden;box-shadow:0 1rem 2.5rem #02061757}.floating-panel__header{cursor:grab;justify-content:space-between;align-items:center;gap:.5rem;min-height:2.5rem;padding:.35rem .45rem .35rem .75rem;font-size:.85rem;font-weight:700;display:flex}.floating-panel__header button{font-size:.75rem}.floating-panel__content{gap:.5rem;padding:0 .65rem .65rem;display:grid}.editor-toolbar{top:max(.75rem, env(safe-area-inset-top));left:50%;transform:translate(-50%)}.editor-toolbar .toolbar-row:not(.workflow-tabs),.editor-toolbar .mobile-only-controls{display:none}.workflow-tabs{align-items:center;padding:.45rem}.workflow-tabs button{white-space:nowrap}.canvas-controls{z-index:11;top:max(4.25rem, calc(env(safe-area-inset-top) + 3.5rem));left:max(.75rem, env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ae6;border:1px solid #94a3b859;border-radius:.7rem;gap:.35rem;padding:.35rem;display:flex;position:fixed}.canvas-controls button{font-size:.75rem}.tool-panel{top:5rem;left:max(.75rem, env(safe-area-inset-left))}.inspector-panel{top:5rem;right:max(.75rem, env(safe-area-inset-right))}.image-panel,.trace-panel{top:8.5rem;right:max(.75rem, env(safe-area-inset-right))}.operation-panel{top:8.5rem;right:max(.75rem, env(safe-area-inset-right));bottom:auto}.layers-panel{top:17rem;left:max(.75rem, env(safe-area-inset-left));max-height:18rem;overflow:auto}.laser-check-panel{top:33rem;left:max(.75rem, env(safe-area-inset-left))}.material-panel{top:30rem;right:max(.75rem, env(safe-area-inset-right))}.laser-check-panel p{margin:0;font-size:.78rem}.validation-issue-button{text-align:left;background:0 0;width:100%;padding:.2rem 0;font-size:.78rem;display:block}.validation-error{color:#fca5a5}.validation-warning{color:#fde68a}.validation-info{color:#bbf7d0}.layer-row{grid-template-columns:minmax(5rem,1fr) auto auto;gap:.25rem;display:grid}.tool-group-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin:.35rem 0 0;font-size:.72rem}.layer-row button{font-size:.72rem}.selection-summary,.laser-legend{color:#cbd5e1;margin:0;font-size:.78rem}.laser-legend{gap:.2rem;display:grid}.laser-legend .cut{color:#f87171}.laser-legend .fill{color:#e2e8f0}.laser-legend .line{color:#60a5fa}.laser-legend .ignore{color:#94a3b8}.operation-cut{fill:none;stroke:red}.operation-engrave_fill{fill:#000;stroke:none}.operation-engrave_line{fill:none;stroke:#00f}.operation-ignore{fill:#9ca3af44;stroke:#9ca3af}.development-path.is-selected{stroke:#facc15;stroke-width:1px}.trace-status{color:#cbd5e1;margin:0;font-size:.78rem}.recovery-notice{z-index:30;background:#0f172a;border:1px solid #facc15;border-radius:.75rem;gap:.75rem;width:min(22rem,100vw - 2rem);padding:1rem;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1rem 3rem #0206178c}.control-row{justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.control-row input[type=range]{width:7rem}.control-row select{color:inherit;background:#1e293b;border:1px solid #64748b;border-radius:.35rem;padding:.3rem}.toolbar-row{flex-wrap:wrap;gap:.35rem;display:flex}.mobile-only-controls{display:none}.toolbar-row button{font-size:.72rem}.tool-button{text-align:left}.inspector-list{gap:.5rem;margin:0;font-size:.86rem;display:grid}.inspector-list div{justify-content:space-between;gap:1rem;display:flex}.inspector-list dt{color:#94a3b8}.inspector-list dd{text-align:right;margin:0}.status-bar{right:.75rem;bottom:max(.75rem, env(safe-area-inset-bottom));z-index:9;color:#cbd5e1;background:#0f172ae0;border:1px solid #94a3b840;border-radius:.6rem;justify-content:center;gap:1rem;padding:.45rem .75rem;font-size:.75rem;display:flex;position:fixed;left:.75rem}.mobile-menu-button{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.import-error{z-index:12;top:max(.75rem, env(safe-area-inset-top));color:#fff;background:#991b1b;border-radius:.5rem;margin:0;padding:.6rem .8rem;font-size:.85rem;position:fixed;left:50%;transform:translate(-50%)}.modal-backdrop{z-index:20;background:#020617b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.result-preview-overlay{z-index:30;background:#0f172a;grid-template-rows:auto 1fr;gap:1rem;padding:1rem;display:grid;position:fixed;inset:0}.result-preview-overlay button{justify-self:start}.result-preview{width:100%;height:100%;min-height:0}.preview-3d{grid-template-rows:minmax(0,1fr) auto;gap:.5rem;width:100%;height:100%;min-height:0;display:grid;position:relative}.preview-3d__canvas{touch-action:none;border:1px solid #334155;border-radius:.6rem;min-height:0;position:relative;overflow:hidden}.preview-3d__canvas canvas{width:100%;height:100%;display:block}.preview-3d__error{color:#fca5a5;position:absolute;inset:1rem}.preview-3d__controls{justify-content:center}.editor-shell{text-align:left;padding:0;display:block}.editor-workspace{background:var(--workspace-bg)}.canvas-controls{background:#fff;border:0;border-bottom:1px solid #e4e4e1;border-radius:0;flex-wrap:wrap;min-height:60px;padding:12px 24px;top:0;left:0;right:0}.app-brand{letter-spacing:-.6px;align-self:center;align-items:center;gap:10px;margin-right:28px;font-size:20px;display:inline-flex}.app-brand__logo{object-fit:contain;filter:drop-shadow(0 1px 2px #0000002e);width:36px;height:36px;display:block}.theme-toggle{margin-left:auto}.editor-shell[data-theme=dark]{--workspace-bg:#202122;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ededeb}.editor-shell[data-theme=dark] .canvas-controls,.editor-shell[data-theme=dark] .editor-toolbar,.editor-shell[data-theme=dark] .status-bar{color:#ededeb;background:#292a2c;border-color:#424345}.editor-shell[data-theme=dark] button{color:#eee;background:#363739;border-color:#505153}.editor-shell[data-theme=dark] button.is-active,.editor-shell[data-theme=dark] button[aria-pressed=true]{color:#222;background:#dededb}.editor-shell[data-theme=dark] .stage-settings input[type=number]{color:#eee;background:#363739;border-color:#505153}.editor-shell[data-theme=dark] .selection-summary,.editor-shell[data-theme=dark] .trace-status{color:#bcbcb7}.editor-shell button{color:#333;background:#f0f0ed;border:1px solid #e1e1dd;border-radius:8px;padding:9px 12px;font-size:13px}.editor-shell button:hover:not(:disabled),.editor-shell button.is-active,.editor-shell button[aria-pressed=true]{color:#fff;background:#252525;border-color:#252525}.editor-shell .editor-toolbar{background:#fff;border:1px solid #e2e2df;width:340px;max-height:calc(100dvh - 120px);inset:84px auto auto 24px;overflow:auto;transform:none;box-shadow:0 8px 28px #0000000a}.editor-toolbar .floating-panel__header{padding:18px;font-size:16px}.editor-toolbar .floating-panel__content{gap:16px;padding:0 18px 18px}.editor-toolbar .toolbar-row:not(.workflow-tabs){flex-wrap:wrap;display:flex}.workflow-tabs{flex-wrap:wrap;gap:4px;padding:0;display:flex}.workflow-tabs button{padding:8px!important;font-size:11px!important}.stage-settings{gap:14px;display:grid}.stage-settings input{accent-color:#333}.stage-settings input[type=number]{color:#222;background:#fafaf9;border:1px solid #ddd;border-radius:6px;padding:6px}.selection-summary,.trace-status,.status-bar{color:#73736d}.status-bar{background:#ffffffed;border-top:1px solid #e4e4e1}@media (max-width:700px){.editor-shell .editor-toolbar{width:min(340px,100vw - 24px);max-height:calc(100dvh - 170px);top:100px;left:12px}.canvas-controls{padding:10px 12px}.app-brand{margin-right:12px}}.physical-size-dialog{background:#0f172a;border:1px solid #475569;border-radius:.85rem;gap:.85rem;width:min(28rem,100%);padding:1.25rem;display:grid}.physical-size-dialog h2,.physical-size-dialog p{margin:0}.physical-size-dialog p{color:#cbd5e1;font-size:.9rem}.physical-size-dialog label{color:#e2e8f0;align-items:center;gap:.5rem;display:flex}.physical-size-dialog input[type=number]{width:6rem;color:inherit;font:inherit;background:#1e293b;border:1px solid #64748b;border-radius:.35rem;margin-left:auto;padding:.4rem}.physical-size-dialog .checkbox-label{justify-content:flex-start}.physical-size-dialog .checkbox-label input{width:1rem;height:1rem}.dialog-actions{justify-content:flex-end;gap:.5rem;display:flex}.form-error{color:#fca5a5!important}@media (max-width:700px){.floating-panel.is-mobile-hidden{display:none}.editor-toolbar,.tool-panel,.inspector-panel,.image-panel,.trace-panel,.operation-panel,.layers-panel,.laser-check-panel{max-width:none;position:fixed;inset:auto .5rem 3.9rem;transform:none}.tool-panel,.inspector-panel,.image-panel,.trace-panel,.operation-panel,.layers-panel,.laser-check-panel{display:none}.floating-panel__header{cursor:default}.floating-panel__content{align-content:start;max-height:min(54dvh,30rem);overflow:auto}.mobile-only-controls{gap:.45rem;display:grid}.toolbar-row{gap:.45rem}.toolbar-row button{flex:5.5rem;min-height:2.75rem}.mobile-menu-button{right:1rem;bottom:max(1rem, env(safe-area-inset-bottom));z-index:11;border-radius:999px;display:block;position:fixed}.status-bar{right:5.6rem;bottom:max(1rem, env(safe-area-inset-bottom));white-space:nowrap;justify-content:flex-start;left:.5rem;overflow:hidden}.status-bar span:nth-child(n+3){display:none}}
