.nesting-tool{--bg:#f2f0ea;--ink:#172d30;--muted:#718185;--green:#d64f23;--line:#dce4e2}.nesting-tool *{box-sizing:border-box}.nesting-tool{margin:0;background:var(--bg);color:var(--ink);font:14px system-ui,-apple-system,sans-serif}.nesting-tool button,.nesting-tool input,.nesting-tool select{font:inherit}.nesting-tool button,.nesting-tool select{cursor:pointer}.nesting-tool button{border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);padding:10px 14px;font-weight:600}.nesting-tool button:hover{background:#eaf4ef}.nesting-tool button:disabled{opacity:.4;cursor:default}.nesting-tool header{height:80px;background:white;border-bottom:1px solid var(--line);padding:0 4%;display:flex;align-items:center;gap:25px}.nesting-tool .brand{display:flex;align-items:center;gap:10px;color:var(--green);text-decoration:none;font-size:31px}.nesting-tool .brand b{font-size:24px;letter-spacing:-1px;color:var(--ink)}.nesting-tool .brand span{color:#84918e;font-weight:400}.nesting-tool .badge{font-size:10px;letter-spacing:1.4px;padding-left:25px;border-left:1px solid var(--line);color:var(--muted)}.nesting-tool header button{margin-left:auto}.nesting-tool .quiet{border:0}.nesting-tool main{max-width:1500px;padding:44px 4% 0;margin:auto}.nesting-tool .intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.nesting-tool .eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:750}.nesting-tool h1{font-size:44px;letter-spacing:-1.8px;line-height:1.13;margin:14px 0}.nesting-tool h1 span{color:var(--green)}.nesting-tool .intro p{color:#6a7e80;line-height:1.7}.nesting-tool .intro-note{font-size:12px;padding:20px;border-left:1px solid var(--line)}.nesting-tool .intro-note small{display:block;color:var(--muted);margin:10px 0 0 14px}.nesting-tool .dot{display:inline-block;background:#1da17b;width:6px;height:6px;border-radius:50%;margin-right:7px}.nesting-tool .workspace{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start}.nesting-tool .card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:18px}.nesting-tool .section-title{display:flex;gap:10px;align-items:center;margin-bottom:21px}.nesting-tool h2{font-size:15px;margin:0;letter-spacing:-.2px}.nesting-tool .step{font-size:10px;border:1px solid var(--line);padding:5px 6px;border-radius:5px;color:var(--green)}.nesting-tool .counter{margin-left:auto;background:var(--bg);padding:3px 8px;border-radius:5px;font-size:12px}.nesting-tool .drop{border:1.5px dashed #a5c4b7;border-radius:9px;background:#f4faf7;display:flex;flex-direction:column;align-items:center;padding:22px 10px;gap:7px;cursor:pointer}.nesting-tool .drop input{display:none}.nesting-tool .upload{font-size:26px;color:var(--green)}.nesting-tool .drop small{font-size:10px;color:var(--muted)}.nesting-tool .drop:hover{background:#e6f4ec}.nesting-tool .unitrow{margin:18px 0 9px;display:flex;align-items:center;gap:8px;font-size:11px}.nesting-tool .unitrow select{width:150px;margin-left:auto;padding:7px}.nesting-tool .hint{font-size:10px;color:var(--muted);line-height:1.6;margin:9px 0 0}.nesting-tool .parts{max-height:320px;overflow:auto;margin-top:16px}.nesting-tool .empty-list{text-align:center;padding:12px;color:#8e9c9e;font-size:11px}.nesting-tool .part{display:grid;grid-template-columns:35px 1fr 55px 24px;align-items:center;gap:9px;border-top:1px solid #edf0ee;padding:13px 0}.nesting-tool .part strong{font-size:11px;display:block;overflow-wrap:anywhere}.nesting-tool .part small{font-size:10px;color:var(--muted)}.nesting-tool .part input{padding:8px;width:55px}.nesting-tool .part button{border:0;padding:4px;color:#9a6b61}.nesting-tool .part svg{width:32px;height:35px}.nesting-tool .label{font-size:11px;display:block;margin-bottom:8px}.nesting-tool select,.nesting-tool input{border:1px solid var(--line);background:#fff;border-radius:6px;padding:11px;color:var(--ink);width:100%}.nesting-tool input:focus,.nesting-tool select:focus{outline:2px solid #f7ae8b;outline-offset:1px}.nesting-tool .fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:18px 0}.nesting-tool .fields label{font-size:11px}.nesting-tool .fields label span{float:right;color:#91a19d}.nesting-tool .fields input{margin-top:8px;font-size:14px}.nesting-tool .check{font-size:11px;display:flex;align-items:center;gap:8px;margin:20px 0}.nesting-tool .check input{width:15px;height:15px;accent-color:var(--green)}.nesting-tool .primary{background:var(--green);color:white;width:100%;padding:14px;border-color:var(--green)}.nesting-tool .primary:hover{background:#a74320}.nesting-tool .stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:20px}.nesting-tool .stats>div{background:white;border:1px solid var(--line);border-radius:10px;padding:20px}.nesting-tool .stats small{font-size:9px;letter-spacing:.8px;color:var(--muted)}.nesting-tool .stats b{font-size:33px;display:block;letter-spacing:-1px;margin:9px 0 5px}.nesting-tool .stats>div:first-child b{color:var(--green)}.nesting-tool .stats span{font-size:10px;color:var(--muted)}.nesting-tool .drawing-card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.nesting-tool .drawing-top{padding:22px;display:flex;justify-content:space-between;gap:10px}.nesting-tool .drawing-top p{font-size:10px;color:var(--muted);margin:7px 0 0}.nesting-tool .drawing-actions{display:flex;gap:7px;align-items:flex-start}.nesting-tool .drawing-actions button{font-size:11px}.nesting-tool .tabs{display:flex;gap:5px;padding:0 22px;overflow:auto}.nesting-tool .tabs:empty{display:none}.nesting-tool .tabs button{font-size:10px;white-space:nowrap;border-radius:6px 6px 0 0}.nesting-tool .tabs button.active{color:var(--green);background:#eef8f3;border-bottom-color:#eef8f3}.nesting-tool .canvas{min-height:430px;background-color:#f5f8f7;background-image:radial-gradient(#d1dcd7 .7px,transparent .7px);background-size:16px 16px;padding:22px;display:flex;align-items:center;justify-content:center}.nesting-tool .canvas>svg{width:100%;height:490px;max-width:100%}.nesting-tool .canvas-empty{text-align:center;color:#718682}.nesting-tool .outline-icon{font-size:64px;color:#a4bab2}.nesting-tool .canvas-empty h3{color:var(--ink);font-size:17px;font-weight:550}.nesting-tool .canvas-empty p{font-size:12px;line-height:1.8}.nesting-tool .canvas-empty button{font-size:11px;margin-top:10px;background:white}.nesting-tool .drawing-bottom{padding:15px 22px;display:flex;gap:18px;font-size:10px;color:#6d827c}.nesting-tool .drawing-bottom i{display:inline-block;background:#b7dbce;width:8px;height:8px;margin-right:5px}.nesting-tool .muted{color:#96a39f}.nesting-tool .purchase{background:#fae9de;border:1px solid #e7cdbb;border-radius:10px;display:flex;gap:17px;padding:20px;margin-top:20px}.nesting-tool .purchase[hidden]{display:none}.nesting-tool .purchase-icon{font-size:28px;color:var(--green)}.nesting-tool .purchase h3{font-size:14px;margin:0 0 6px}.nesting-tool .purchase p{font-size:11px;color:#638174;margin:0;line-height:1.7}.nesting-tool .method{font-size:10px;color:#82928c;line-height:1.8;padding:4px 3px}.nesting-tool #notice{background:#fff1d7;border:1px solid #edcd8c;color:#77521a;border-radius:8px;padding:14px;margin-bottom:16px;line-height:1.6;font-size:12px}.nesting-tool footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0;margin-top:35px;font-size:9px;letter-spacing:1px;color:#8c9d95}.nesting-tool footer span{letter-spacing:0}@media(min-width:1500px){.nesting-tool main{padding-top:55px}}@media(max-width:950px){.nesting-tool .workspace{grid-template-columns:290px minmax(0,1fr);gap:16px}.nesting-tool .card{padding:17px}.nesting-tool .stats>div{padding:14px}.nesting-tool .stats small{font-size:8px}.nesting-tool .intro-note{display:none}.nesting-tool .stats span{font-size:9px}.nesting-tool .drawing-top{flex-wrap:wrap}}@media(max-width:700px){.nesting-tool header{height:66px}.nesting-tool .badge{display:none}.nesting-tool .brand{font-size:25px}.nesting-tool .brand b{font-size:21px}.nesting-tool header button{font-size:11px}.nesting-tool main{padding:30px 16px 0}.nesting-tool h1{font-size:37px}.nesting-tool .intro{margin-bottom:23px}.nesting-tool .intro p{font-size:12px}.nesting-tool .workspace{display:flex;flex-direction:column}.nesting-tool .workspace>aside,.nesting-tool .result{width:100%}.nesting-tool .stats{gap:7px}.nesting-tool .stats>div{padding:13px 10px}.nesting-tool .stats b{font-size:27px}.nesting-tool .stats small{font-size:8px;letter-spacing:0}.nesting-tool .stats span{font-size:9px}.nesting-tool .canvas{padding:10px;min-height:330px}.nesting-tool .canvas>svg{height:420px}.nesting-tool .drawing-bottom{padding:14px;gap:8px;flex-wrap:wrap}.nesting-tool .fields input{min-height:46px}.nesting-tool .part input{min-height:43px}.nesting-tool .part button{min-height:43px}.nesting-tool footer span{display:none}}@media print{.nesting-tool header,.nesting-tool .intro,.nesting-tool aside,.nesting-tool .method,.nesting-tool .drawing-actions,.nesting-tool .drawing-bottom,.nesting-tool footer,.nesting-tool .tabs,.nesting-tool #notice{display:none!important}.nesting-tool main{padding:0}.nesting-tool .workspace{display:block}.nesting-tool .canvas{background:white}.nesting-tool .drawing-card{break-inside:avoid}.nesting-tool .canvas>svg{height:650px}.nesting-tool .stats{margin-top:15px}}.nesting-tool .piece-mini{background:#171e28;border-radius:4px}.nesting-tool .color-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:5px}.nesting-tool .color-tag{display:inline-flex;align-items:center;gap:4px;font-size:9px;border:1px solid #dce4e2;border-radius:4px;padding:2px 4px;white-space:nowrap}.nesting-tool .color-tag i{width:9px;height:9px;border:1px solid #88928f;border-radius:2px}.nesting-tool .part{grid-template-columns:35px minmax(0,1fr) 55px 24px}.nesting-tool .part strong{line-height:1.4}.nesting-tool .part small{display:block;margin-top:3px}.nesting-tool .optimization-fields{margin:16px 0}.nesting-tool .optimization-fields select{margin-bottom:14px}.nesting-tool .optimizer-status{margin:0;padding:0 22px 14px;color:#d64f23;font-size:11px;line-height:1.6}.nesting-tool .optimizer-status:empty{display:none}.nesting-tool #cancelOptimization{width:100%;margin-top:8px}.nesting-tool #cancelOptimization[hidden]{display:none}.nesting-tool .primary:disabled{opacity:.65}.nesting-tool #methodDetail{display:block;margin:4px 0;color:#486b5e}@media print{.nesting-tool .optimizer-status{display:none}}

.nesting-tool{--green:#d64f23;--bg:#f2f0ea;background:#f2f0ea;min-height:85vh}.nesting-tool main{padding-top:30px}.nesting-tool .tool-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:30px;font-size:11px}.nesting-tool .tool-toolbar a{color:#786659;text-decoration:underline;text-underline-offset:4px}.nesting-tool .tool-toolbar button{margin-left:auto}.nesting-tool .intro p{max-width:620px}.nesting-tool .intro-note{max-width:270px;line-height:1.7}.nesting-tool .purchase{flex-wrap:wrap}.nesting-tool .nesting-quote-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin-top:14px}.nesting-tool .nesting-quote-controls label{font-size:11px}.nesting-tool .nesting-quote-controls input,.nesting-tool .nesting-quote-controls select{margin-top:6px}.nesting-tool #prepare-nesting-quote{grid-column:1/-1}.nesting-tool .quote-help{width:100%;font-size:11px;line-height:1.7}.nesting-tool .intro h1{font-size:44px}.nesting-tool #optimizerStatus{color:#ab431f}.nesting-tool #methodDetail{color:#785840}.nesting-tool footer{font-size:10px;letter-spacing:0}.nesting-tool .check{color:#172d30}@media(max-width:700px){.nesting-tool .intro h1{font-size:37px}.nesting-tool .tool-toolbar{margin-bottom:25px}.nesting-tool .tool-toolbar span{display:none}}@media print{.header,.skip-link,.nesting-quote-controls,.quote-help{display:none!important}.nesting-tool main{padding-top:0}}

.nesting-tool .cut-export-controls{display:flex;flex-wrap:wrap;gap:10px;width:100%;margin-top:16px}.nesting-tool .cut-export-controls>label{width:100%;margin:0}.nesting-tool .cut-export-controls>select{width:100%;max-width:100%}.nesting-tool .cut-export-controls .primary{flex:1;min-width:180px}.nesting-tool .cut-export-controls button{min-height:46px}.nesting-tool #download-all-dxf[hidden]{display:none}.nesting-tool #download-dxf-top{color:#c84e22;border-color:#d78e6a}.nesting-tool .drawing-actions{flex-wrap:wrap}@media print{.nesting-tool .cut-export-controls{display:none}}

.nesting-tool .preview-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:15px 22px 8px;border-top:1px solid #e1e5df}.nesting-tool .preview-tools button{min-width:44px;min-height:44px;padding:9px 12px}.nesting-tool .preview-tools output{min-width:61px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;color:#69564a}.nesting-tool .preview-tools input[type=range]{width:110px;height:30px;min-width:80px;accent-color:#d64f23;padding:0;border:0}.nesting-tool .preview-tools label{display:flex;align-items:center;gap:7px;font-size:11px;margin-left:auto}.nesting-tool .preview-tools label input{width:15px;height:15px;accent-color:#d64f23}.nesting-tool .preview-measure-status{font-size:11px;color:#79695a;margin:0;padding:0 22px 13px;line-height:1.6}.nesting-tool .canvas{position:relative;padding:0;overflow:hidden;min-height:400px;outline-offset:-3px}.nesting-tool .canvas>svg{display:block;flex:0 0 100%;width:100%;height:520px;max-width:100%}.nesting-tool .canvas[data-view-active=true]{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.nesting-tool .canvas[data-dragging=true]{cursor:grabbing}.nesting-tool .canvas:focus-visible{outline:2px solid #d64f23}.nesting-tool .preview-gap-overlay{pointer-events:none}.nesting-tool .preview-gap-dimension line,.nesting-tool .preview-gap-dimension path{fill:none;stroke:#ffd174;stroke-width:1.4px;vector-effect:non-scaling-stroke}.nesting-tool .preview-gap-dimension .preview-gap-leader{stroke-width:1px;opacity:.75}.nesting-tool .preview-gap-dimension circle{fill:#ffd174;stroke:#101820;stroke-width:.6px;vector-effect:non-scaling-stroke}.nesting-tool .preview-gap-dimension rect{fill:#171e28;stroke:#ffd174;stroke-width:1px;vector-effect:non-scaling-stroke}.nesting-tool .preview-gap-dimension text{fill:#ffe5a1;font-family:system-ui,sans-serif;font-weight:600;stroke:none;paint-order:stroke}.nesting-tool svg[data-preview-magnified=true] [data-plan-label]{opacity:0}@media(max-width:700px){.nesting-tool .preview-tools{padding-inline:12px;gap:6px}.nesting-tool .preview-tools label{margin-left:0;min-height:38px}.nesting-tool .preview-tools input[type=range]{flex:1;min-width:72px;max-width:160px}.nesting-tool .preview-measure-status{padding-inline:14px}.nesting-tool .canvas>svg{height:440px}}@media print{.nesting-tool .preview-tools,.nesting-tool .preview-measure-status,.nesting-tool .preview-gap-overlay{display:none!important}.nesting-tool svg [data-plan-label]{opacity:1!important}.nesting-tool .canvas>svg{height:650px}}

.nesting-tool .print-brand{display:none}
/* Compact print sheet: brand/purchase summary, totals, then the selected plan. */
@page{size:A4 portrait;margin:10mm}
@media print{
 html,body{margin:0!important;padding:0!important;background:#fff!important}
 .nesting-tool{min-height:0;background:#fff;font-size:9pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .nesting-tool main{width:100%;max-width:none;margin:0;padding:0!important}
 .nesting-tool .tool-toolbar{display:none!important}
 .nesting-tool .workspace{display:block;margin:0;padding:0}
 .nesting-tool .result{display:flex;flex-direction:column;gap:3mm;width:100%;margin:0;padding:0}
 .nesting-tool .purchase{display:grid;grid-template-columns:45mm minmax(0,1fr);align-items:center;order:0;margin:0;padding:2mm 0 3mm;background:transparent;border:0;border-bottom:1px solid #bbb;border-radius:0;gap:4mm;break-inside:avoid}
 .nesting-tool .print-brand{display:flex;align-items:center;gap:2mm;color:#172d30;line-height:1.25}
 .nesting-tool .print-brand img{display:block;width:13mm;height:13mm;flex:none;object-fit:contain;filter:brightness(0)}
 .nesting-tool .print-brand span{font-size:8pt}
 .nesting-tool .print-brand strong{display:block;font-size:8.5pt}
 .nesting-tool .purchase-icon{display:none}
 .nesting-tool .purchase h3{margin:0 0 1mm;font-size:11pt;line-height:1.25;color:#172d30}
 .nesting-tool .purchase p{margin:0;font-size:8pt;line-height:1.35;color:#43544d}
 .nesting-tool .stats{order:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:2mm;margin:0}
 .nesting-tool .stats>div{padding:2mm;border-radius:1mm;break-inside:avoid}
 .nesting-tool .stats small{font-size:6.5pt;letter-spacing:.2px}
 .nesting-tool .stats b{font-size:16pt;line-height:1.1;margin:1mm 0}
 .nesting-tool .stats span{font-size:7pt;line-height:1.2}
 .nesting-tool .drawing-card{order:2;margin:0;border-radius:1mm;break-inside:avoid}
 .nesting-tool .drawing-top{display:block;padding:2mm 3mm}
 .nesting-tool .drawing-top h2{font-size:10pt;line-height:1.2}
 .nesting-tool .drawing-top p{font-size:7pt;line-height:1.3;margin:1mm 0 0}
 .nesting-tool .canvas{height:200mm;min-height:0;padding:0;background:#fff;overflow:hidden}
 .nesting-tool .canvas>svg{width:100%;height:200mm;max-width:100%}
}
