:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#25262b;background:#f5f5f7;font-synthesis:none;--blue:#1769e0;--muted:#81838d;--line:#ececef;--shadow:0 3px 8px #22223003,0 1px 2px #22223003}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #7bb1ff;outline-offset:3px}input:focus,select:focus{outline:2px solid #8ab7f5;outline-offset:1px}svg.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.topbar{height:78px;border-bottom:1px solid #e3e3e8;background:#ffffffcb;display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;gap:20px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#202127;font-size:19px;font-weight:450;letter-spacing:-.7px}.brand strong{font-weight:650}.top-center{font-size:12px;color:#90919a;letter-spacing:.1px}.top-actions{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;border:1px solid #dedee4;border-radius:9px;min-height:37px;padding:8px 13px;color:#45464e;font-size:12px;font-weight:550;box-shadow:0 1px 2px #00000003}.button:hover{background:#f5f7fa}.button.subtle{background:transparent;border-color:transparent;box-shadow:none}.button.primary{background:var(--blue);border-color:var(--blue);color:white}.button .icon{width:15px;height:15px}main{max-width:1540px;padding:41px 4.2% 0;margin:auto}.project-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:33px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.7px;color:#93949d;margin-bottom:13px}.title-row{display:flex;align-items:center;gap:12px}.title-row input{font-size:32px;letter-spacing:-1.2px;font-weight:650;background:transparent;border:0;padding:0;width:390px;max-width:100%;color:#26272d}.title-edit{color:#acadb5;display:flex}.title-edit .icon{width:16px;height:16px}.project-heading p{font-size:13px;color:#888993;margin:10px 0 0}.saved-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#91929c;align-self:flex-end;margin-bottom:3px}.status-dot{width:5px;height:5px;border-radius:50%;background:#67a888}.workspace{display:grid;grid-template-columns:minmax(370px,440px) minmax(0,1fr);gap:30px;align-items:start}.inputs-column{display:flex;flex-direction:column;gap:17px}.card{border:1px solid #e5e5ea;border-radius:15px;background:white;box-shadow:var(--shadow);overflow:hidden}.card-heading{display:flex;justify-content:space-between;align-items:center;padding:21px 21px 16px}.section-title{display:flex;align-items:center;gap:11px}h2{font-size:14px;letter-spacing:-.25px;font-weight:650;margin:0}.card-heading p{font-size:11px;color:#95959f;margin:5px 0 0}.icon-tile{width:33px;height:33px;border-radius:9px;display:flex;align-items:center;justify-content:center}.blue{color:#4682dd;background:#edf3ff}.peach{color:#bc9264;background:#faf1e7}.gray{color:#7d828d;background:#f0f1f5}.icon-button{display:flex;justify-content:center;align-items:center;background:transparent;border-radius:7px;color:#9597a1;padding:7px}.icon-button:hover{color:var(--blue);background:#edf3ff}.icon-button .icon{width:16px;height:16px}.table-scroll{overflow-x:auto}.editor-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:12px}.editor-table th{text-align:left;font-size:8px;letter-spacing:.8px;font-weight:600;color:#9899a3;background:#fafafb;height:30px;border-block:1px solid #f0f0f3}.editor-table th:first-child,.editor-table td:first-child{padding-left:21px;width:37%}.editor-table th:nth-child(2),.editor-table th:nth-child(3){width:21%}.editor-table th:nth-child(4){width:12%}.editor-table th:last-child{width:9%}.editor-table td{border-bottom:1px solid #f2f2f5;height:47px;padding:5px 5px 5px 0}.editor-table input{width:100%;min-width:0;border:1px solid transparent;background:transparent;padding:6px 3px;font-size:11px;color:#51525d;border-radius:4px;font-variant-numeric:tabular-nums}.editor-table input:hover{border-color:#e4e7ed;background:#fcfcff}.editor-table input.name-input{font-weight:520}.row-name{display:flex;align-items:center;gap:7px}.color-dot{display:inline-block;width:7px;height:7px;border-radius:2px;flex-shrink:0}.delete-row{font-size:17px;background:transparent;color:#c2c3cb;padding:4px}.delete-row:hover{color:#d44a52}.card-bottom{display:flex;align-items:center;justify-content:space-between;padding:13px 21px}.text-button{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:550;background:transparent;color:#3678d7;padding:3px 0}.text-button .icon{width:13px;height:13px}.unit-hint{font-size:9px;color:#a3a3ad}.unit-hint b{font-weight:500}.advanced{font-size:11px;border-top:1px solid #f0f0f3;padding:12px 21px;color:#858792}.advanced summary{cursor:pointer;font-size:10px;list-style:none}.advanced summary:before{content:'›';display:inline-block;margin-right:8px;transition:transform .2s}.advanced[open] summary:before{transform:rotate(90deg)}.helper{font-size:11px;line-height:1.65;color:#8a8b95}.detail-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.detail-row>span{width:80px;font-weight:550;color:#555966;overflow:hidden;text-overflow:ellipsis}.detail-row input[type=text]{width:120px}.detail-row label{display:flex;align-items:center;gap:3px;font-size:10px}.detail-row input[type=checkbox]{accent-color:var(--blue)}.detail-row select{width:95px}.detail-row input[type=text],.detail-row select{border:1px solid #e4e5eb;border-radius:5px;padding:6px;background:white;color:#666b76;font-size:10px}.settings-card .card-heading{padding-bottom:19px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 16px;padding:0 21px 18px}.settings-grid label{font-size:10px;color:#7e818d;position:relative}.settings-grid input,.settings-grid select{display:block;margin-top:7px;width:100%;background:#fafafb;border:1px solid #e6e6ec;border-radius:7px;height:34px;font-size:11px;color:#50545d;padding:0 9px}.field-unit{position:absolute;right:9px;top:31px;font-size:10px;color:#9b9da5;pointer-events:none}.toggle-row{padding:14px 21px;border-top:1px solid #f1f1f4;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#5f626d}.toggle-row small{display:block;font-size:9px;color:#a1a3ab;margin-top:5px}.toggle-row input{appearance:none;width:31px;height:19px;flex-shrink:0;border-radius:20px;background:#d9dce2;position:relative;cursor:pointer;transition:background .2s}.toggle-row input:checked{background:#3c8bea}.toggle-row input:before{content:'';position:absolute;left:2px;top:2px;width:15px;height:15px;background:white;border-radius:50%;box-shadow:0 1px 3px #0002;transition:transform .2s}.toggle-row input:checked:before{transform:translateX(12px)}.settings-more .toggle-row{padding:14px 0}.optimize-button{background:#246de0;color:white;display:flex;align-items:center;justify-content:center;position:relative;gap:10px;width:100%;min-height:49px;border-radius:11px;font-size:13px;font-weight:600;box-shadow:0 3px 5px #226cdb20;transition:background .2s,transform .2s}.optimize-button:hover{background:#155dcc;transform:translateY(-1px)}.shortcut{font-size:10px;position:absolute;right:18px;opacity:.55}.local-note{display:flex;align-items:center;justify-content:center;gap:5px;color:#a0a2ac;font-size:9px;margin:-5px 0 0}.local-note .icon{width:12px;height:12px}.results-header{display:flex;justify-content:space-between;align-items:center;min-height:62px;margin:0 0 22px}.results-header .eyebrow{font-size:9px;margin-bottom:9px;letter-spacing:1.45px}h1{font-size:23px;font-weight:650;letter-spacing:-.8px;margin:0}.export-wrap{position:relative}.dropdown{position:absolute;right:0;top:44px;width:190px;padding:6px;background:white;box-shadow:0 10px 35px #20243120;border:1px solid #e5e5ec;border-radius:10px;z-index:10}.dropdown button{display:block;background:transparent;width:100%;text-align:left;padding:10px;border-radius:6px;font-size:12px;color:#515561}.dropdown button:hover{background:#eef4ff;color:var(--blue)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:21px}.metric{border:1px solid #e5e5eb;border-radius:12px;padding:18px 19px;background:white;min-height:103px}.metric-label{color:#9395a0;font-size:10px;display:flex;align-items:center;gap:7px}.metric-label .icon{width:13px;height:13px}.metric-number{font-size:28px;font-weight:620;letter-spacing:-1px;margin-top:9px;color:#383b44;font-variant-numeric:tabular-nums}.metric-number small{font-size:10px;font-weight:450;letter-spacing:0;margin-left:6px;color:#9799a3}.metric.green{background:#f3f8f5;border-color:#deebe3}.metric.green .metric-number{color:#4d8a69}.metric.green .metric-label{color:#6e9480}.plan-toolbar{display:flex;gap:16px;align-items:center;padding:15px 19px;border-bottom:1px solid #ececf1}.segmented{display:flex;padding:3px;background:#f0f1f4;border-radius:7px}.segmented button{padding:6px 13px;border-radius:5px;font-size:10px;background:transparent;color:#999aa5}.segmented button.active{background:white;color:#545965;box-shadow:0 1px 3px #00000012}.labels-control{display:flex;gap:5px;align-items:center;font-size:9px;color:#8a8d99;margin-left:auto}.labels-control input{accent-color:#4988e4;width:11px;height:11px}.plan-scale{font-size:9px;color:#a1a4af}.sheet-tabs{display:flex;gap:7px;overflow:auto;padding:19px 22px 0}.sheet-tab{border:1px solid transparent;background:transparent;color:#9396a2;font-size:10px;padding:7px 11px;white-space:nowrap;border-radius:6px}.sheet-tab.active{background:#edf3fe;color:#467dd1;border-color:#e0eafa}.sheet-tab span{margin-left:7px;font-size:9px;opacity:.7}.sheet-meta{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;font-size:10px;color:#969aa7}.sheet-meta strong{font-weight:500;color:#6c707b}.drawing{padding:8px 15px 15px;background:radial-gradient(#cbd0d535 .6px,transparent .6px);background-size:10px 10px;margin:14px 12px 5px;min-height:290px;display:flex;align-items:center;justify-content:center}.drawing svg{display:block;width:100%;max-height:440px;overflow:visible}.sheet-svg .piece{cursor:pointer;transition:filter .2s}.sheet-svg .piece:hover{filter:brightness(.95)}.sheet-svg text{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;pointer-events:none}.sheet-svg .piece.selected rect{stroke:#246de0;stroke-width:7}.plan-footer{padding:16px 23px;display:flex;align-items:center;gap:20px;border-top:1px solid #eeeef3;font-size:9px;color:#989ca8}.plan-footer>span{display:flex;align-items:center;gap:6px}.legend-swatch{width:11px;height:11px;border:1px solid #e1e3e9;border-radius:2px}.offcut{background:repeating-linear-gradient(135deg,#f2f3f5,#f2f3f5 2px,#e3e6eb 2px,#e3e6eb 3px)}.kerf-mark{height:10px;width:2px;background:#c4c9d4}.plan-footer b{font-weight:400}.grain-key{margin-left:auto}.breakdown-card{margin-top:20px}.breakdown-header{display:flex;justify-content:space-between;align-items:center;padding:21px 22px 18px}.breakdown-header h2{font-size:13px}.breakdown-header p{font-size:10px;color:#9a9da7;margin:7px 0 0}.complete-badge{font-size:9px;color:#62927a;background:#f0f7f2;padding:5px 8px;border-radius:5px;white-space:nowrap}.piece-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0 22px 14px}.legend-item{display:flex;align-items:center;gap:9px;padding:11px 0;font-size:11px;min-width:0}.legend-item .color-dot{width:10px;height:10px;border-radius:3px}.legend-item .legend-label{color:#686c77;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legend-item small{margin-left:auto;padding-right:18px;color:#9fa2ac;font-size:9px}.tip{display:flex;gap:10px;margin:19px 4px;color:#9ea1ac}.tip .icon{width:16px;height:16px;margin-top:2px;flex-shrink:0}.tip p{font-size:10px;line-height:1.8;margin:0}.tip strong{font-weight:550;color:#7a7f8c}.page-footer{margin-top:42px;padding:25px 0;border-top:1px solid #e4e5e9;display:flex;align-items:center;gap:22px;font-size:10px;color:#acaeb6}.footer-brand{font-weight:600;color:#888d99}.page-footer button{margin-left:auto;font-size:10px}.feedback{padding:12px 15px;margin-bottom:17px;border-radius:9px;background:#fff4e6;color:#9b6d34;font-size:12px;line-height:1.6}.feedback.error{background:#fff0ee;color:#b14440}.empty-state{padding:70px 30px;text-align:center;color:#9298a5;font-size:13px;line-height:1.8}.empty-state .icon{width:38px;height:38px;margin-bottom:12px;color:#8faad1}.cut-table{width:100%;border-collapse:collapse;font-size:11px;margin-top:16px}.cut-table th,.cut-table td{text-align:left;padding:11px 20px;border-bottom:1px solid #f0f1f4}.cut-table th{color:#8d93a0;font-weight:500}.cuts-wrap{max-height:420px;overflow:auto}.cut-note{font-size:10px;padding:15px 20px;color:#9398a4;line-height:1.6}.unplaced-card{margin-top:17px;background:#fff5ed;border:1px solid #f0dfd0;border-radius:11px;padding:16px 20px;color:#a26a3d;font-size:11px;line-height:1.8}.unplaced-card h3{margin:0 0 5px;font-size:12px}.unplaced-card ul{padding-left:18px;margin-bottom:0}dialog{border:1px solid #e3e5eb;border-radius:18px;box-shadow:0 20px 90px #1e283330;width:480px;max-width:calc(100% - 32px);padding:25px;color:#3b414d}dialog::backdrop{background:#27303d40;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialog-heading h2{font-size:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}.project-entry{display:flex;align-items:center;gap:8px;border-bottom:1px solid #eceef2;padding:13px 0}.project-entry .project-open{flex:1;text-align:left;background:transparent;color:#485363;padding:6px;font-size:13px}.project-entry small{display:block;margin-top:5px;color:#939ba7;font-size:10px}dialog dt{font-size:12px;font-weight:650;margin-top:18px}dialog dd{font-size:12px;line-height:1.7;color:#8b929e;margin:5px 0}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);background:#2f3949;color:white;border-radius:10px;padding:13px 23px;box-shadow:0 8px 30px #0002;font-size:12px;z-index:30;max-width:90vw}#print-content{display:none}[hidden]{display:none!important}
@media(min-width:1500px){.workspace{grid-template-columns:440px minmax(0,1fr)}.drawing{min-height:360px}}
@media(max-width:1100px){main{padding:30px 3% 0}.topbar{padding-inline:3%}.workspace{grid-template-columns:360px minmax(0,1fr);gap:20px}.top-center{display:none}.metric{padding:15px 13px}.metric-number{font-size:24px}.plan-scale{display:none}.plan-toolbar{padding:15px 12px;gap:6px}.sheet-meta{padding-inline:18px}.drawing{min-height:250px}.plan-footer{gap:12px;padding-inline:16px}.complete-badge{font-size:8px}.breakdown-header{padding-inline:17px}}
@media(max-width:820px){.workspace{grid-template-columns:1fr}.inputs-column{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:start}.input-card:first-child{grid-column:1/-1}.settings-card{grid-column:2;grid-row:2/4}.stock-card{grid-column:1;grid-row:2}.optimize-button{grid-column:1;grid-row:3}.local-note{grid-column:1;grid-row:4}.results-column{margin-top:15px}.project-heading{margin-bottom:27px}.saved-status{font-size:9px}.drawing{min-height:300px}.card-heading{padding:18px}.editor-table th:first-child,.editor-table td:first-child{padding-left:18px}.settings-grid{padding-inline:18px;gap:12px}.settings-grid select{font-size:10px}.plan-scale{display:block}}
@media(max-width:550px){.topbar{height:66px;padding:0 18px}.brand{font-size:16px;gap:8px}.brand img{width:28px;height:28px}.top-actions{gap:2px}.top-actions .button{font-size:10px;padding:7px 9px;min-height:33px}.top-actions .subtle .icon{display:none}main{padding:28px 17px 0}.project-heading{display:block}.title-row{gap:6px}.title-row input{font-size:26px;width:calc(100% - 25px)}.eyebrow{font-size:8px;letter-spacing:1.3px}.project-heading p{font-size:11px}.saved-status{margin-top:16px}.inputs-column{display:flex;gap:14px}.card{border-radius:13px}.card-heading{padding:18px}.editor-table input{font-size:12px}.editor-table td{height:47px}.settings-grid label{font-size:11px}.settings-grid input,.settings-grid select{font-size:12px;height:38px}.field-unit{top:34px}.settings-card .toggle-row{font-size:12px}.settings-card small{font-size:10px}.results-header{margin-top:9px}h1{font-size:22px}.metrics{gap:8px}.metric{padding:14px 11px;min-height:96px}.metric-label{font-size:9px;gap:4px}.metric-label .icon{width:12px;height:12px}.metric-number{font-size:23px}.metric-number small{font-size:8px;margin-left:3px}.plan-scale{display:none}.sheet-meta{font-size:9px;gap:8px}.drawing{min-height:215px;margin-inline:3px;padding-inline:5px}.plan-footer{font-size:8px;gap:12px;padding-inline:13px}.breakdown-header{gap:10px}.breakdown-header h2{font-size:12px}.piece-legend{padding-inline:17px}.legend-item{font-size:10px;gap:6px}.legend-item small{padding-right:10px;font-size:8px}.page-footer{gap:10px;flex-wrap:wrap;margin-top:30px;font-size:9px}.page-footer button{width:100%;margin-top:7px}.cut-table th,.cut-table td{padding:10px 12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before{transition:none!important;scroll-behavior:auto!important}}
@media print{body{background:white}body>header,body>main,body>dialog,.toast{display:none!important}#print-content{display:block}.print-sheet{break-after:page;padding:16px}.print-sheet h1{font-size:24px}.print-sheet p{font-size:12px;color:#555}.print-sheet svg{width:100%;max-height:65vh}.print-sheet table{font-size:11px;width:100%;border-collapse:collapse}.print-sheet td,.print-sheet th{padding:7px;text-align:left;border-bottom:1px solid #ddd}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:14mm;size:A4 landscape}}

.trim-explanation{font-size:10px;line-height:1.6;color:#727886;padding:0 21px 13px;margin:0}.input-feedback{background:#fff4e6;border:1px solid #ead4b7;border-radius:10px;padding:13px 16px;color:#825723;font-size:11px;line-height:1.7}.input-feedback ul{padding-left:17px;margin:7px 0 0}.input-feedback li+li{margin-top:7px}.unplaced-card li+li{margin-top:10px}

.board-pieces{padding:0 23px 20px}.board-pieces p{font-size:11px;color:#717987;margin:0 0 12px}.board-pieces ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;margin:0;padding:0;list-style-position:inside}.board-pieces li{background:#f5f7fa;border-radius:7px;padding:10px;font-size:11px;color:#8490a0}.board-pieces strong{font-weight:550;color:#535e6f}.board-pieces span{display:block;margin-top:6px;color:#576c88;font-variant-numeric:tabular-nums}
