
:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#22332f;background:#f4f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:85px;border-bottom:1px solid #d9ded4;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:#fafbf6}.brand{text-decoration:none;color:inherit;font-size:20px;font-weight:700;display:flex;align-items:center;gap:12px}.mark{background:#234e40;color:#e3f2b2;padding:3px 10px;border-radius:9px;font-size:30px}.brand small{font-size:10px;letter-spacing:1.4px;color:#758178;margin-left:12px}.privacy{font-size:12px;color:#68776f}main{max-width:1600px;margin:auto;padding:38px 4vw 20px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#678473}h1{font-size:36px;font-weight:600;letter-spacing:-1.4px;margin:12px 0}p{line-height:1.6}.intro>p:last-child{color:#748076;font-size:14px;margin-bottom:30px}nav{display:flex;gap:10px;margin-bottom:23px}button,input,select{font:inherit}button{cursor:pointer}nav button{text-align:left;border:1px solid #d7ded3;background:#fafbf7;border-radius:9px;padding:13px 20px;min-width:185px;color:#7b867c;font-size:10px}nav strong{display:block;font-size:13px;color:#384d42;margin-top:5px}nav button.active{background:#e8efde;border-color:#6a8662;box-shadow:inset 0 0 0 1px #6a8662}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);border:1px solid #d6ddd1;border-radius:12px;overflow:hidden;background:#fff;min-height:530px}aside{border-right:1px solid #dce2d8;padding:25px}.panel-heading>span{font-size:10px;letter-spacing:2px;color:#6c826c}h2{font-size:21px;margin:8px 0}.panel-heading p{font-size:12px;color:#738075;margin:0 0 22px}form{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:600;color:#506254}.wide{grid-column:1/-1}input,select{width:100%;border:1px solid #d7dfd1;border-radius:5px;background:#fafbf8;padding:10px;color:#24392d;min-width:0}input[type=file]{font-size:11px}input[type=checkbox]{width:auto;align-self:start}input:focus,select:focus,button:focus-visible{outline:2px solid #639473;outline-offset:2px}.hint{border-top:1px solid #e4e8df;padding-top:15px;margin-top:20px;color:#7b8479;font-size:11px;line-height:1.7}#error{color:#b3352c;font-size:12px}#error:empty{display:none}.preview-panel{display:flex;flex-direction:column;min-width:0;background:#fdfefb}.preview-toolbar{padding:17px 22px;border-bottom:1px solid #e1e6dc;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6c9461;margin-right:7px}#summary{font-size:11px;color:#83907e;margin-left:12px}#download{background:#254e3d;color:#fff;border:0;border-radius:6px;padding:11px 15px;font-size:12px}button:disabled{opacity:.4;cursor:default}.canvas{margin:20px;flex:1;min-height:340px;display:flex;align-items:center;justify-content:center;background-color:#f6f8f1;background-image:radial-gradient(#ced8c7 .7px,transparent .7px);background-size:16px 16px;border:1px solid #e1e7da;border-radius:6px;padding:25px;overflow:hidden}.canvas img{width:100%;max-height:380px;object-fit:contain}.canvas p{color:#7d8c77;font-size:13px}.preview-footer{display:flex;justify-content:space-between;padding:0 22px 16px;font-size:9px;letter-spacing:1px;color:#87947e}.preview-footer i{display:inline-block;width:7px;height:7px;margin:0 4px 0 12px}.cut{background:#d84343}.score{background:#2563eb}.engrave{background:#222}#packing-status,#status{font-size:11px;color:#687c61;padding:0 24px;margin-top:0}footer{display:flex;justify-content:space-between;font-size:10px;color:#89927f;padding-top:22px}@media(max-width:950px){.brand small,.privacy{display:none}nav{flex-wrap:wrap}nav button{flex:1;min-width:140px}.workspace{grid-template-columns:280px minmax(0,1fr)}.preview-toolbar{flex-wrap:wrap}.preview-footer{gap:10px;flex-wrap:wrap}}@media(max-width:650px){header{height:70px}.brand{font-size:17px}main{padding-top:20px}h1{font-size:28px}.workspace{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid #dce2d8}.canvas{min-height:260px}footer{gap:20px;line-height:1.6}.preview-footer span:last-child{display:none}}

.workspace-bar{position:relative;display:flex;align-items:stretch;gap:8px;margin:0 0 12px;min-width:0}.project-strip{display:flex;gap:8px;flex:0 1 auto;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}.project-tabs{display:flex;gap:6px;flex:none}.project-tab-group{display:flex;flex:none;border:1px solid #d7ded3;border-radius:7px;background:#fafbf7;overflow:hidden}.project-tab-group:has([aria-selected=true]){background:#e8efde;border-color:#6a8662;box-shadow:inset 0 -2px #52764d}.project-tab-group button{background:transparent;border:0;padding:9px 12px;color:#42583f;font-size:12px}.project-tab-group [role=tab]{max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-tab-group [aria-selected=true]{font-weight:700}.project-tab-group .tab-actions{padding:5px 9px;font-size:18px;border-left:1px solid #dce3d3}#new-project{flex:none;align-self:flex-start;padding:5px 14px;font-size:23px;border:1px solid #c8d4bd;border-radius:7px;background:#fafbf7;color:#42583f}.project-actions{position:fixed;z-index:4;min-width:min(170px,calc(100vw - 16px));max-width:min(260px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow:auto;background:#fff;border:1px solid #cad5c3;border-radius:7px;padding:8px;box-shadow:0 5px 20px #22332f22}.project-actions strong{display:block;padding:6px;font-size:11px;overflow-wrap:anywhere}.project-actions button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:9px;color:#344d36;font-size:12px}.project-actions button:hover{background:#edf2e6}#workspace-message,.file-info{font-size:11px;line-height:1.6;color:#6c7a61;overflow-wrap:anywhere}#workspace-message:empty{display:none}dialog{border:1px solid #c5d1bd;border-radius:10px;padding:24px;width:min(400px,90vw);color:#22332f}dialog::backdrop{background:#18281f66}#rename-form{display:block}#rename-form h2{margin:0 0 20px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.dialog-actions button{border:1px solid #c7d3bd;border-radius:5px;padding:9px 12px;background:#edf2e6;color:#284735}#rename-error{color:#b3352c;font-size:12px}
.kerf-field{display:flex;flex-direction:column;gap:6px;min-width:0}.kerf-label{display:flex;align-items:center;gap:10px}.kerf-label label{display:block}#kerf-help-trigger{border:0;background:transparent;padding:0;color:#597451;font-size:10px;text-decoration:underline;text-underline-offset:2px}#kerf-help-dialog{width:min(510px,90vw);max-height:85vh;overflow-y:auto;font-size:13px;line-height:1.6}#kerf-help-dialog h2{font-size:21px;margin:0 0 16px}#kerf-help-dialog p{margin:12px 0}#kerf-help-dialog li{margin:5px 0}#kerf-help-dialog ol,#kerf-help-dialog ul{padding-left:23px}
.generate-tools{display:flex;gap:8px;flex-wrap:wrap;margin:-10px 0 18px}.generate-tools[hidden]{display:none}.generate-tools button{border:1px solid #d2dccb;border-radius:6px;background:#fafbf7;color:#50634a;padding:8px 12px;font-size:12px}.generate-tools button.active{background:#e8efde;border-color:#6a8662;font-weight:600}
.parameter{display:flex;flex-direction:column;gap:6px;min-width:0}input[type=range]{accent-color:#52764d;padding:0;height:18px;border:0;background:transparent;cursor:pointer;min-width:0}.preview-modes{display:flex;gap:5px;padding:14px 22px 6px}.preview-modes button,.camera-buttons button{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:8px 11px;font-size:12px}.preview-modes [aria-pressed=true],.camera-buttons [aria-pressed=true]{background:#e8efde;border-color:#69855d;font-weight:600}.assembly-controls{padding:8px 22px 0}.camera-buttons{display:flex;gap:5px;flex-wrap:wrap}.camera-buttons button{font-size:11px;padding:6px 9px}.assembly-controls label{max-width:300px;margin:14px 0 7px}.assembly-controls label>span{display:flex;justify-content:space-between;font-size:10px;color:#7a876f;font-weight:400}.assembly-controls small{font-size:10px;color:#7a876f}.assembly-controls[hidden],#assembly-canvas[hidden],[data-preview][hidden]{display:none}#assembly-canvas{display:block;width:100%;height:clamp(340px,48vh,520px);touch-action:none;cursor:grab;outline-offset:3px}#assembly-canvas:active{cursor:grabbing}@media(max-width:650px){#assembly-canvas{height:340px}.preview-modes,.assembly-controls{padding-left:16px;padding-right:16px}.camera-buttons button{padding:6px 8px}}
.assembly-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,210px);gap:8px 12px;align-items:center}.assembly-controls .camera-buttons{grid-column:1;grid-row:1}.assembly-controls label{grid-column:2;grid-row:1;margin:0}.assembly-controls small{grid-column:1/-1}@media(max-width:900px){.assembly-controls{grid-template-columns:1fr}.assembly-controls label{grid-column:1;grid-row:2;width:min(300px,100%)}.assembly-controls small{grid-row:3}}
#assembly-canvas{min-width:0;max-width:100%}
#preview-error{max-width:480px;padding:18px;border:1px solid #e0b7ab;border-radius:7px;background:#fff8f4;color:#a13f2f;font-size:13px;line-height:1.6}#preview-error[hidden]{display:none}#stack-info,#stack-message{margin:0}
#stack-message:not(:empty){padding:10px;background:#edf3e6;border-radius:6px;color:#425b39;font-size:12px;line-height:1.5}
.cut-controls{padding:8px 22px 0}.cut-controls[hidden],.cut-viewport[hidden]{display:none}.cut-buttons{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.cut-buttons button{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:7px 9px;font-size:11px}.cut-buttons output{font-size:11px;min-width:45px;text-align:center;color:#496043}.cut-buttons label{display:flex;flex-direction:row;align-items:center;margin-left:5px;gap:5px;font-size:11px}.cut-buttons input{width:auto}.cut-controls small{display:block;color:#7a876f;font-size:10px;margin-top:7px}.cut-viewport{position:relative;width:100%;height:clamp(340px,48vh,520px);min-width:0;overflow:hidden;touch-action:none;cursor:grab;user-select:none}.cut-viewport:active{cursor:grabbing}.cut-scene{position:absolute;left:0;top:0;transform-origin:0 0}.cut-scene>svg{display:block;max-width:none;overflow:visible}.canvas .cut-source{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.canvas{position:relative}@media(max-width:650px){.cut-controls{padding-left:16px;padding-right:16px}.cut-viewport{height:340px}}
.sheet-setup { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.sheet-setup[hidden],.sheet-controls[hidden] { display:none; }
.sheet-setup small,.sheet-controls small { color:var(--muted,#65705e); font-size:11px; line-height:1.5; }
.sheet-controls { display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px; padding:10px 22px; border-top:1px solid #e2e5dc; font-size:12px; }
.sheet-controls label { display:flex; gap:8px; align-items:center; }
.sheet-controls select { width:auto; min-width:95px; }
.sheet-controls small { flex-basis:100%; }
/* A lid has its own assembly control; keep it off the explosion control's cell. */
.assembly-controls [data-lid-control]{grid-column:2;grid-row:2;margin:0}.assembly-controls [data-lid-control][hidden]{display:none}
@media(max-width:900px){.assembly-controls [data-lid-control]{grid-column:1;grid-row:3;width:min(300px,100%)}.assembly-controls:has([data-lid-control]:not([hidden])) small{grid-row:4}}
.machine-panel{margin:16px 0;border:1px solid #cdd9c4;border-radius:8px;background:#fafbf7;padding:12px 16px}.machine-panel summary{cursor:pointer;font-size:13px;font-weight:600;color:#496043}.machine-panel form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.machine-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px}.machine-panel input,.machine-panel select{width:100%;padding:8px;border:1px solid #d5dacd;border-radius:5px;box-sizing:border-box}.machine-panel input[type=checkbox]{width:auto;align-self:flex-start}.machine-panel p{font-size:12px;margin-bottom:0}#machine-error{color:#9e3b2e}.continuation-tab{border-style:dashed!important;background:#f5f7ef}.continuation-tab [role=tab]{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.continuation-tab small{font-size:10px;font-weight:400;color:#71816b}@media(max-width:650px){.machine-panel form{grid-template-columns:repeat(2,minmax(0,1fr))}}
#material-setup label[hidden]{display:none}
.lid-section{min-width:0;border:1px solid #d5dacd;border-radius:6px;padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lid-section legend{font-size:12px;font-weight:600;color:#496043;padding:0 5px}.lid-section .parameter[hidden],.lid-section label[hidden]{display:none}
/* Material coupons sit with the existing kerf test, below the primary shape tools. */
.generate-tools{align-items:flex-start}.material-tests{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.material-tests details>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.material-tests summary{cursor:pointer;padding:8px;font-size:12px;font-weight:600;color:#496043}
.fit-results{margin-top:16px;padding:12px;border:1px solid #d7dfd1;border-radius:6px}.fit-results[hidden]{display:none}.fit-results h3{font-size:13px;margin:0 0 8px}.fit-results p{font-size:11px;font-weight:400;color:#738075;margin:8px 0;line-height:1.5}.fit-results select{max-width:100%;font-size:11px}.fit-results button{display:block;margin-top:7px;border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:7px 9px;font-size:11px}.fit-results button:disabled{opacity:.5;cursor:default}
#divider-full-height{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:7px 9px;font-size:11px}.lid-section #divider-setup[hidden]{display:none}
.lid-section #tray-setup[hidden]{display:none}.assembly-controls [data-tray-control]{grid-column:2;grid-row:3;margin:0}.assembly-controls [data-tray-control][hidden]{display:none}.assembly-controls:has([data-tray-control]:not([hidden])) small{grid-row:4}@media(max-width:900px){.assembly-controls [data-tray-control]{grid-column:1;grid-row:4;width:min(300px,100%)}.assembly-controls:has([data-tray-control]:not([hidden])) small{grid-row:5}}
.lid-section #drawer-setup[hidden],#drawer-restriction[hidden]{display:none}.lid-section:disabled{opacity:.55}.assembly-controls [data-drawer-control]{grid-column:2;grid-row:3;margin:0}.assembly-controls [data-drawer-control][hidden]{display:none}.assembly-controls:has([data-drawer-control]:not([hidden])) small{grid-row:4}@media(max-width:900px){.assembly-controls [data-drawer-control]{grid-column:1;grid-row:4;width:min(300px,100%)}.assembly-controls:has([data-drawer-control]:not([hidden])) small{grid-row:5}}
.assembly-controls [data-selected-drawer-control]{grid-column:2;grid-row:3;margin:0}.assembly-controls [data-selected-drawer-control][hidden]{display:none}.assembly-controls:has([data-selected-drawer-control]:not([hidden])) [data-drawer-control]{grid-row:4}.assembly-controls:has([data-selected-drawer-control]:not([hidden])) small{grid-row:5}@media(max-width:900px){.assembly-controls [data-selected-drawer-control]{grid-column:1;grid-row:4;width:min(300px,100%)}.assembly-controls:has([data-selected-drawer-control]:not([hidden])) [data-drawer-control]{grid-row:5}.assembly-controls:has([data-selected-drawer-control]:not([hidden])) small{grid-row:6}}
.lid-section#base-section{display:block;padding:12px}.lid-section#base-section summary{cursor:pointer;font-size:12px;font-weight:600;color:#496043}.lid-section#base-section fieldset{border:0;padding:12px 0 0;margin:0;min-width:0}#feet-setup[hidden],#base-restriction[hidden]{display:none}
#frame-section{display:block}#frame-section summary{cursor:pointer;font-size:12px;font-weight:600;color:#496043}#frame-section>.sheet-setup{margin-top:12px}#frame-setup[hidden]{display:none}
.export-actions{display:flex;align-items:flex-end;gap:10px}.export-actions label{font-size:10px}.export-actions select{padding:7px;min-width:70px}.export-note{font-size:11px;line-height:1.5;color:#687c61;margin:12px 22px 0}.export-actions #download{white-space:nowrap}@media(max-width:650px){.export-actions{flex-wrap:wrap}.export-note{margin-left:16px;margin-right:16px}}

.history-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.65rem 0}.history-controls[hidden]{display:none}.history-controls button{padding:.4rem .75rem;border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;font-size:12px;cursor:pointer}.history-controls button:disabled{opacity:.5;cursor:default}.history-controls small{color:#758178}

.project-files{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.65rem 0}.project-files button{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:.4rem .75rem;font-size:12px;cursor:pointer}.project-files button:disabled{opacity:.5;cursor:default}.project-files small{color:#758178;font-size:11px}#project-file-error{color:#9d3325}#project-file-message:empty,#project-file-error:empty{display:none}
/* Physical artwork layers use the existing panel and inspector. */
.physical-layers,.artwork-items{display:grid;gap:.5rem;min-width:0}.physical-layer{border:1px solid #d7ddce;border-radius:8px;padding:.6rem;display:flex;flex-wrap:wrap;gap:.35rem;min-width:0}.physical-layer>button:first-child{width:100%;text-align:left}.physical-layer input[type=text]{min-width:0;width:100%;box-sizing:border-box}.physical-layer label{display:flex;gap:.5rem;align-items:center}.physical-layer button,.artwork-items button,#controls>button{font:inherit;padding:.45rem .65rem;cursor:pointer}.physical-layer [aria-pressed=true],.artwork-items [aria-pressed=true]{background:#dcebd9;border-color:#397a57}.artwork-items{max-height:240px;overflow:auto}.artwork-selected{outline:2px solid #287ddb;outline-offset:2px}#controls>small{grid-column:1/-1}body.artwork-mode .export-actions,body.artwork-mode .preview-footer{display:none}body.artwork-mode #controls{display:flex;flex-direction:column;gap:.65rem}
body.artwork-mode #preview-modes,body.artwork-mode #assembly-controls,body.artwork-mode #sheet-controls{display:none!important}#artwork-import-error{color:#9a392c}
.physical-layers{max-height:420px;overflow:auto}body.artwork-mode #project-bed-info{display:none}
body.artwork-mode #controls button{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;font-size:11px}body.artwork-mode #controls button[aria-pressed=true]{background:#dcebd9;border-color:#397a57}body.artwork-mode .canvas{flex:0 0 auto}
/* A three-step artwork workflow; all container tool layouts stay unchanged. */
#artwork-workflow[hidden],#artwork-actions[hidden]{display:none}body:not(.artwork-mode) #artwork-workflow,body:not(.artwork-mode) #artwork-actions{display:none}
body.artwork-mode .intro,body.artwork-mode #machine-panel,body.artwork-mode #save-project,body.artwork-mode #project-file-scope,body.artwork-mode aside>.panel-heading,body.artwork-mode #hint,body.artwork-mode #status,body.artwork-mode #export-note{display:none}
body.artwork-mode main{padding-top:20px}#artwork-workflow{margin:14px 0}#artwork-workflow h2{font-size:20px}.artwork-progress{list-style:none;display:flex;gap:8px;padding:0;margin:12px 0 0}.artwork-progress li{flex:1;min-width:0}.artwork-progress button{width:100%;border:1px solid #d6dfcf;background:#fafbf7;border-radius:7px;padding:10px;color:#506254;font-size:12px}.artwork-progress [aria-current=step]{background:#e4efdb;border-color:#57794f;color:#254e3d;font-weight:700}
body.artwork-mode .workspace{grid-template-columns:minmax(0,1fr) 290px}body.artwork-mode .preview-panel{grid-column:1;grid-row:1}body.artwork-mode aside{grid-column:2;grid-row:1;border-right:0;border-left:1px solid #dce2d8;padding:16px}body.artwork-mode #controls{gap:12px}body.artwork-mode #controls h3{font-size:15px;margin:0}body.artwork-mode #controls p{font-size:12px;margin:0}
body.artwork-mode[data-artwork-stage=open] .workspace{display:block;min-height:300px}body.artwork-mode[data-artwork-stage=open] .preview-panel{display:none}body.artwork-mode[data-artwork-stage=open] aside{border:0;padding:28px}body.artwork-mode:not([data-artwork-stage=arrange]) #design-history{display:none}
.artwork-open-area{max-width:640px;margin:0 auto;width:100%;padding:36px 28px;border:2px dashed #b8cdb0;background:#f8fbf3;border-radius:12px;text-align:center;display:grid;gap:18px}.artwork-open-area h3{font-size:22px!important}.artwork-open-area p{font-size:15px!important;line-height:1.6}.artwork-open-area small{font-size:12px;color:#72816c}body.artwork-mode #controls .artwork-open-area #import-artwork,body.artwork-mode #controls .artwork-primary{background:#254e3d;color:white;border-color:#254e3d;font-size:15px;padding:14px 20px;font-weight:600}
#artwork-actions{padding:12px 22px;background:#f6faef;border-bottom:1px solid #dce5d3}#artwork-actions p{font-size:13px;margin:0 0 8px}#artwork-actions label{display:flex;flex-direction:row;align-items:center;font-size:12px;gap:7px}#artwork-actions input[type=checkbox]{align-self:auto;width:auto}#artwork-actions button{border:1px solid #c7d5bf;border-radius:5px;background:#fff;color:#31533b;padding:8px 12px;font-size:12px}.artwork-move-area{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.artwork-move-area strong{font-size:13px}.artwork-move-area select{width:auto;max-width:220px;padding:8px}.artwork-move-area #assign-artwork{background:#254e3d;color:white}#artwork-confirmation{margin-top:10px!important;color:#315a36;font-weight:600}
.artwork-layer-heading{display:flex;gap:8px;justify-content:space-between;align-items:center}.artwork-layer-heading button{white-space:nowrap}body.artwork-mode .physical-layers{max-height:490px;overflow:auto;gap:10px}body.artwork-mode .physical-layer{display:grid;gap:7px;padding:10px;min-width:0}body.artwork-mode .physical-layer>.artwork-layer-title{display:flex;gap:10px;align-items:center;text-align:left;padding:4px;border:0;background:none;width:100%;min-width:0}body.artwork-mode .physical-layer>.artwork-layer-title[aria-pressed=true]{background:#e7f0df;outline:1px solid #9ab48e}.artwork-thumbnail{width:66px;height:52px;object-fit:contain;background:#fff;border:1px solid #d9e1d4;border-radius:4px;flex:none}.artwork-layer-title>span{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.artwork-layer-title strong{font-size:13px}.artwork-layer-title small{font-size:11px;color:#63765d}
.artwork-layer-options summary,#artwork-select-list summary,.artwork-inspection summary{cursor:pointer;color:#526b49;font-size:12px;padding:5px 0}.artwork-layer-options[open]{display:grid;gap:8px;border-top:1px solid #dce4d5;padding-top:6px}.artwork-layer-options>button{width:100%;text-align:left;margin-top:5px}.artwork-layer-options label{font-size:11px!important}.artwork-layer-options label:has(input[type=checkbox]){flex-direction:row}.artwork-items{padding:8px 0;gap:8px}.artwork-items label{flex-direction:row;align-items:center;font-size:12px;gap:8px}.artwork-items input{align-self:auto}.artwork-stage-navigation{display:flex;justify-content:space-between;gap:8px;margin-top:6px}.artwork-inspection{margin-top:8px}.artwork-inspection label{display:flex;flex-direction:row;gap:6px;font-size:12px}.artwork-inspection input{width:auto}.artwork-inspection button{font-size:11px;border:1px solid #cdd9c4;background:#fafbf7;border-radius:5px;padding:7px 9px;margin-right:10px}
@media(max-width:750px){body.artwork-mode .workspace{display:flex;flex-direction:column}body.artwork-mode .preview-panel{order:0}body.artwork-mode aside{order:1;border-left:0;border-top:1px solid #dce2d8}body.artwork-mode .physical-layers{max-height:420px}.artwork-progress{gap:4px}.artwork-progress button{font-size:11px;padding:8px 4px}.artwork-open-area{padding:22px 16px}#artwork-actions{padding:12px 16px}}
.outline-choices{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-bottom:12px}.outline-choices button{font-weight:600}.outline-choices button:first-child{grid-column:1;grid-row:1}.outline-choices small:first-of-type{grid-column:1;grid-row:2}.outline-choices button:nth-of-type(2){grid-column:2;grid-row:1}.outline-choices small:last-of-type{grid-column:2;grid-row:2}.outline-choices small{font-size:11px;color:#687a60}.outline-choices p{grid-column:1/-1}.outline-choices .outline-prominent{background:#254e3d!important;color:white!important}#outline-error{color:#9b392d}#outline-dimensions{line-height:1.6}#outline-input-status{font-size:11px;color:#80552e}body.artwork-mode #controls .parameter{display:grid;grid-template-columns:1fr 90px;gap:6px;align-items:center}body.artwork-mode #controls .parameter input[type=range]{grid-column:1/-1}#generate-outline{background:#254e3d!important;color:white!important;font-weight:600}

.artwork-layer-title>.outline-swatch{display:inline-flex;white-space:nowrap;flex:none;overflow-wrap:normal;align-items:center;justify-content:center;min-width:2.7em;border:3px solid;padding:.2em;font-size:.8rem;background:#fff;color:#222} #outline-progress:not(:empty){border-left:3px solid var(--accent,#24543e);padding:.5rem} #outline-save-reason:empty{display:none}

.artwork-reset-dialog{max-width:440px;border:1px solid #a5b49c;border-radius:10px;padding:24px;color:#233b30;background:#fafbf5}.artwork-reset-dialog::backdrop{background:#13291e66}.artwork-reset-dialog button{margin:8px 8px 0 0;padding:8px 14px}#artwork-cutting-controls{display:flex;flex-direction:column;gap:10px;border-top:1px solid #d7ddce;padding-top:14px}#artwork-cutting-controls label{display:flex;flex-direction:column;gap:4px}#native-download-state:empty{display:none}
#lightburn-arrangement{width:min(560px,calc(100vw - 48px));max-width:560px;max-height:85vh;overflow:auto}#lightburn-arrangement label{display:block;margin:16px 0;line-height:1.45}#lightburn-arrangement input[type=radio]{width:auto;margin-right:8px}#lightburn-arrangement small{display:block;margin:4px 0 0 24px;font-weight:400}#lightburn-arrangement-warning:empty{display:none}#lightburn-arrangement-warning{padding:12px;background:#f6edce;border-radius:6px}
body.artwork-mode.shadow-box-mode #preview-modes:not([hidden]){display:flex!important}body.artwork-mode.shadow-box-mode #assembly-controls:not([hidden]){display:grid!important}
.trace-original {margin:0}.trace-original img {display:block;max-width:100%;max-height:180px;object-fit:contain;background:white;border:1px solid var(--line,#ccc)}.trace-original img[hidden]{display:none}
.trace-controls p {font-size:12px;font-weight:400;line-height:1.5;margin:0}.trace-controls figcaption {font-size:12px;font-weight:600;margin-bottom:6px}.trace-controls .trace-actions {display:flex;flex-wrap:wrap;gap:6px}.trace-controls button {background:#fafbf7;border:1px solid #d7ded3;border-radius:5px;padding:6px 9px;color:#384d42;font-size:11px}.trace-controls details {font-size:12px;font-weight:400}.trace-mode #preview-modes {display:none}

/* Fixed-template preview exposes only its diameter and style selector. */
#controls.traditional-lotus-controls [hidden]{display:none}
/* Wall Art has its own staged workspace; existing tool layouts are unchanged. */
#wall-art-workspace[hidden],#active-workspace[hidden],#wall-art-workspace [hidden]{display:none}
#wall-art-workspace{background:#fff;border:1px solid #d6dfce;border-radius:10px;padding:22px}.wall-stages,.wall-view-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.wall-stages [aria-current=step]{background:#e4eedc;font-weight:700}.wall-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px}.wall-grid aside{padding:14px;background:#fafbf7;border:1px solid #e0e7d9;border-radius:8px}.wall-grid label{display:block;margin:10px 0}.wall-grid input[type=checkbox]{width:auto}.wall-grid input,.wall-grid select{max-width:100%}.wall-grid button,.wall-stages button{border:1px solid #b8cbb0;border-radius:5px;background:#f7faf3;color:#395336;padding:9px 12px;margin:4px 0}.wall-grid button:disabled{opacity:.5}.wall-grid p{font-size:13px;line-height:1.5}.wall-preview{min-width:0}#wall-drawing-wrap{background:#dce1d8;border:1px solid #bbc8b5;overflow:hidden;min-height:300px}#wall-drawing{display:block;width:100%;height:550px;touch-action:none;cursor:grab}#wall-individual{background:white;border:1px solid #d6dfce;margin:12px 0}#wall-individual>svg,#wall-individual>img{width:100%;max-height:270px;object-fit:contain;display:block}.wall-warning{padding:12px;background:#fff6d9;border:1px solid #e1d3a5}#wall-error{color:#9e3c2b}@media(max-width:850px){.wall-grid{grid-template-columns:1fr}#wall-art-workspace{padding:14px}#wall-drawing{height:400px}}
#wall-trace-area { min-width: 0; }
#wall-trace-preview svg { width: 100%; height: auto; }
#wall-trace-form { min-width: 0; }

/* Sign controls share the workshop palette without affecting other tools. */
.sign-mode #controls textarea{font:inherit;resize:vertical;min-height:80px;width:100%;border:1px solid #d7dfd1;border-radius:5px;background:#fafbf8;padding:10px;color:#24392d}
.sign-mode #controls textarea:focus{outline:2px solid #639473;outline-offset:2px}
.sign-mode #controls p{font-size:11px;font-weight:400;line-height:1.6;margin:6px 0;color:#687c61}
.sign-mode #controls button{border:1px solid #cdd9c4;border-radius:5px;background:#fafbf7;color:#496043;padding:7px 9px;font-size:11px}
.sign-mode .canvas{flex:0 0 auto}

.sign-mode #controls [hidden]{display:none}.sign-mode #controls details{font-size:11px;margin-top:8px}.sign-mode #sign-font{font-size:14px}.sign-mode #sign-radius-range{font-variant-numeric:tabular-nums}
.generate-tools{margin:0 0 18px;justify-content:flex-start;gap:8px;display:flex;flex-wrap:wrap}
#generate-tools button{flex:0 0 auto;min-width:0;padding:8px 12px;font-size:12px;text-align:center}
#generate-tools .start-project{background:#254e3d;color:#fff;border-color:#254e3d;font-weight:600}
#fit-tests-menu{font-size:12px;border:1px solid #d2dccb;border-radius:6px;padding:8px 12px;background:#fafbf7}
#fit-tests-menu>summary{cursor:pointer}#fit-tests-menu[open]{display:flex}#fit-tests-menu button{display:block;margin-top:6px}
.machine-library-row{display:flex;align-items:end;flex-wrap:wrap;gap:8px;margin:14px 0}.machine-library-row label{display:grid;gap:5px;font-size:12px;min-width:180px}
.machine-library-row select,.machine-library-row button,.machine-dialog button{padding:8px;border:1px solid #cbd6c5;border-radius:5px;background:#fafbf7;color:#294b37}
.machine-dialog{max-width:440px}.machine-dialog label{display:grid;gap:6px;margin-bottom:12px}.machine-dialog input,.machine-dialog select{padding:8px;max-width:100%}.machine-dialog .dialog-actions{flex-wrap:wrap}
.slider-help{display:block;grid-column:1/-1;font-size:10px;line-height:1.4;color:#62765b;margin-top:2px}.slider-help[hidden]{display:none}input[type=range]{touch-action:none}
body.launcher #active-workspace,body.launcher #wall-art-workspace,body.launcher #artwork-workflow,body.launcher #artwork-actions,body.launcher #design-history,body.launcher #project-bed-info{display:none!important}

.workspace-bar[hidden]{display:none!important}
