@font-face{font-family:Workshop;src:url(Workshop-latin.woff2) format('woff2');font-display:swap;font-weight:100 900}
:root{font-family:Workshop,Arial,sans-serif;color:#272923;background:#f5f2e9;font-synthesis:none;--orange:#c6441c;--line:#d8d8cb;--muted:#666a5d;--green:#263f33}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary,.import-label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.import-label:focus-within{outline:3px solid #bb431d;outline-offset:4px}a{color:inherit;text-decoration:none}.site-header{max-width:1440px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:bold;letter-spacing:-1.2px;display:flex;align-items:center;gap:10px}.brand-mark{background:var(--orange);color:#fff9ee;width:34px;height:34px;display:grid;place-items:center;font-size:25px;border-radius:3px}.edition{font-size:9px;letter-spacing:2px;border-left:1px solid #bfc1b5;padding-left:14px;margin-left:10px;color:var(--muted)}.local-note{font-size:11px;color:var(--muted)}.local-note span{color:#4b7450;font-size:9px;margin-right:7px}main{max-width:1440px;margin:auto;padding:0 5%}.intro{padding:64px 0 58px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2px;margin:0 0 18px;color:var(--muted)}h1{font-family:Georgia,serif;font-size:clamp(46px,5vw,76px);font-weight:400;letter-spacing:-2px;line-height:1.02;margin:0}h1 em{font-weight:400;color:var(--orange)}.intro-copy{font-size:14px;line-height:1.8;color:var(--muted);margin:24px 0 0}.intro-diagram{transform:rotate(-5deg);padding:20px 0 20px 25px}.dimension{font-size:11px;letter-spacing:1px;display:flex;align-items:center;gap:10px;margin:0 0 10px}.dimension span{flex:1;text-align:right;border-bottom:1px solid #9c9d90;line-height:1}.sample-bar{display:flex;height:78px;border:1px solid #b14320;box-shadow:6px 8px 0 #e4e0d3}.sample-bar span{display:grid;place-items:center;color:#fff9ee;background:#b94c27;border-right:4px solid #f5f2e9;width:33%;font-size:16px}.sample-bar span:nth-child(2){background:#bd4720}.sample-bar span:nth-child(3){width:25%;background:#ae542c}.sample-bar span:last-child{width:9%;border:0;background:repeating-linear-gradient(135deg,#ddd8c9 0 4px,#f5f2e9 4px 8px)}.diagram-caption{display:flex;justify-content:space-between;margin-top:20px;font-size:8px;letter-spacing:1.5px;color:var(--muted)}.diagram-caption span:last-child{font-size:28px;line-height:.5}.workspace{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cfd1c2;border-radius:8px;overflow:hidden;background:#fffdf7}.editor{padding:30px}.project-heading,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.project-heading{margin-bottom:22px}.project-heading .eyebrow{margin-bottom:8px}h2{font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.16;margin:0}.text-button{background:none;border:0;padding:8px 0;color:var(--orange);font-size:11px;white-space:nowrap}.field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:10px;color:#555b4f;font-weight:bold}.field input,.field select{width:100%;min-width:0;background:#fffefb;border:1px solid #cccec2;border-radius:4px;padding:10px;color:#2a3025;font-size:12px;font-weight:normal;height:39px}.field input:hover,.field select:hover{border-color:#949d87}.field small{font-size:9px;font-weight:normal;color:var(--muted)}.project-name{margin-bottom:25px}.input-section{border-top:1px solid var(--line);padding-top:19px;margin-top:20px}h3{font-size:13px;font-weight:bold;margin:0;display:flex;gap:11px;align-items:center}h3 span{font-size:9px;color:var(--muted);letter-spacing:1px}.hint{font-size:10px;color:var(--muted);line-height:1.65;margin:8px 0 15px}.input-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 28px;gap:8px;margin-top:12px;align-items:end}.cut-row{grid-template-columns:1.2fr 1.1fr .55fr 28px}.offcut-row{grid-template-columns:1fr .6fr 28px}.remove-row{border:0;background:none;padding:10px 0;color:#777b6e;font-size:19px;height:39px}.offcut-section{margin-top:22px;border:1px dashed #ced1c0;border-radius:4px;padding:13px}.offcut-section summary{cursor:pointer;font-size:11px}.offcut-section summary span{font-size:9px;color:var(--muted);margin-left:8px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 12px;margin-top:18px}.check-field{display:flex;align-items:center;gap:7px;margin-top:20px;font-size:10px}.check-field input{accent-color:var(--orange)}.check-field span{color:var(--muted);font-size:9px}.measurement-help{font-size:10px;line-height:1.7;color:var(--muted);margin:22px 0 15px}.measurement-help strong{font-weight:normal;color:#30352b}.primary-button{border:0;border-radius:4px;background:var(--orange);color:#fffaf1;width:100%;display:flex;justify-content:space-between;align-items:center;padding:15px 18px;font-size:13px}.primary-button:hover{background:#a53918}.primary-button span{font-size:20px;line-height:1}.notice{font-size:11px;line-height:1.6;margin:12px 0;min-height:18px;color:#355c3e}.notice.error{color:#a4311a}.file-tools{display:flex;justify-content:center;flex-wrap:wrap;gap:20px}.file-tools button,.import-label{font-size:10px;color:var(--muted);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.import-label input{position:absolute;width:1px;height:1px;opacity:0}.save-status{font-size:9px;text-align:center;color:var(--muted);margin-bottom:0}.results{background:#ebeddf;border-left:1px solid #cfd1c2;padding:30px;min-width:0}.result-heading .eyebrow{color:#5c6851}.result-heading h2{font-size:34px;letter-spacing:-.6px}.result-heading>p:last-child{font-size:11px;color:#5c6851;line-height:1.7;max-width:290px}.empty-plan{text-align:center;padding:70px 20px 45px;color:#5c6851;font-family:Georgia,serif;font-size:22px;line-height:1.4}.empty-bars{width:170px;margin:auto;transform:rotate(-12deg);display:grid;gap:9px}.empty-bars span{display:block;height:24px;background:#d2d8c2;border:1px solid #bfc8ae}.empty-bars span:nth-child(2){width:80%;background:#dde2d1}.empty-bars span:nth-child(3){width:60%;background:#e1e5d7}.empty-plan p{margin-top:40px}.quality-line{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:26px 0 15px;font-size:10px}.quality{border-radius:3px;background:#d7dfca;color:#30442e;padding:6px 8px;font-weight:bold}#plan-name{overflow-wrap:anywhere;color:#5c6851}.summary-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;border-top:1px solid #ccd2bd;border-bottom:1px solid #ccd2bd;padding:18px 0}.stat strong{display:block;font-size:24px;font-weight:normal;letter-spacing:-.5px;overflow-wrap:anywhere}.stat span{font-size:9px;color:#69735d;display:block;margin-top:4px}.stat small{font-size:10px;display:block;margin-top:5px;color:#69735d}.legend{display:flex;flex-wrap:wrap;gap:13px;font-size:9px;color:#65705a;margin:22px 0 15px}.stock-plan{background:#f8f9f1;border:1px solid #d4dac7;border-radius:4px;padding:17px;margin-bottom:12px}.stock-title{display:flex;justify-content:space-between;gap:10px;font-size:11px;align-items:center}.stock-title strong{font-weight:bold}.stock-title span{color:#647058;font-size:10px}.stock-bar{display:flex;width:100%;height:38px;margin:14px 0 12px;border:1px solid #738765;overflow:hidden}.cut-segment{background:#68805a;color:#fffef6;border-right:2px solid #f4f6e9;min-width:0;flex-shrink:1;display:grid;place-items:center;font-size:10px;overflow:hidden}.cut-segment:nth-child(even){background:#849771}.remainder-segment{background:repeating-linear-gradient(135deg,#dce2ce 0 4px,#eff2e5 4px 8px);min-width:0;flex-shrink:1}.stock-sequence{font-size:10px;line-height:1.8;color:#4e5d43;overflow-wrap:anywhere;margin:0}.stock-tail{margin:9px 0 0;font-size:9px;color:#68755c;line-height:1.7}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.result-actions button{background:transparent;border:1px solid #aab79a;border-radius:3px;font-size:10px;padding:11px 13px;color:#344d2d}.result-actions button:hover{background:#dfe5d3}.safety-note{font-size:9px;color:#6a765d;line-height:1.8;margin-top:18px}.stale-warning{background:#fff0d5;border-left:3px solid #ab681c;padding:12px;font-size:11px;line-height:1.7;color:#764e16}.principles{display:grid;grid-template-columns:1fr 1fr 1fr;padding:42px 0;gap:30px}.principles>div{border-right:1px solid var(--line);padding-right:18px}.principles>div:last-child{border:0}.principles span{font-size:8px;letter-spacing:1.1px;color:var(--muted)}.principles p{font-family:Georgia,serif;font-size:20px;line-height:1.35;margin:13px 0 0}footer{max-width:1440px;margin:auto;padding:27px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:21px;gap:0}.footer-dot{color:var(--orange)}footer p{font-size:10px;color:var(--muted)}footer>span{font-size:7px;letter-spacing:1px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){.intro{padding-top:78px;padding-bottom:70px}.editor,.results{padding:38px}}@media(max-width:900px){.intro{gap:28px}.editor,.results{padding:22px}.input-row{gap:5px}.field input,.field select{padding:8px}.project-heading{align-items:flex-start}.project-heading h2{font-size:24px}.summary-grid{gap:5px}.stat strong{font-size:21px}.edition{display:none}}@media(max-width:700px){.site-header{padding-top:19px;padding-bottom:19px}.brand{font-size:22px}.local-note{font-size:9px}.intro{grid-template-columns:1fr;padding:39px 0 40px;gap:26px}.intro-diagram{max-width:450px;padding:15px 10px 0 5px;width:100%;transform:rotate(-3deg)}.sample-bar{height:54px}.diagram-caption{margin-top:14px}.intro-copy{font-size:13px;margin-top:20px}h1{font-size:55px}.workspace{grid-template-columns:1fr}.results{border-left:0;border-top:1px solid #cfd1c2;min-height:420px}.editor,.results{padding:23px 18px}.project-heading h2{font-size:26px}.empty-plan{padding:45px 10px 20px}.principles{gap:16px;padding:30px 0}.principles p{font-size:16px}.principles span{font-size:7px;line-height:1.8;display:block}.principles>div{padding-right:9px}footer{flex-wrap:wrap;gap:10px}footer p{font-size:9px}footer>span{width:100%;text-align:right}.check-field{flex-wrap:wrap}.field{font-size:9px}.field input,.field select{font-size:11px}.text-button{font-size:10px}.input-row{grid-template-columns:1.3fr 1fr 1fr 22px}.cut-row{grid-template-columns:1fr 1.2fr .55fr 22px}.offcut-row{grid-template-columns:1fr .6fr 22px}.stat strong{font-size:24px}.result-heading h2{font-size:31px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease}.stock-plan{animation:appear .25s ease}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}}
.field{font-size:11px}.field input,.field select{font-size:14px;height:44px}.remove-row{height:44px}.hint,.measurement-help,.stock-tail,.legend,.safety-note{font-size:11px}.stock-sequence{font-size:12px}.stock-title{font-size:12px}.stock-title span{font-size:11px}.stat span{font-size:10px}.file-tools button,.import-label,.result-actions button{font-size:11px}.notice{font-size:12px}.save-status{font-size:10px}
@media(max-width:700px){.field{font-size:10px}.field input,.field select{font-size:16px}.field select{padding-left:5px;padding-right:2px;font-size:13px}.input-row input{padding-left:6px;padding-right:5px}.check-field{font-size:11px}.check-field span{font-size:10px}.result-heading h2{font-size:29px}.stock-title{align-items:flex-start}.stock-title span{text-align:right}}
.site-header{gap:16px;flex-wrap:wrap}.local-note{margin-left:auto}.local-note [data-i18n]{font-size:inherit;color:inherit;margin:0}.language-button{min-height:44px;padding:9px 14px;border:1px solid #aeb2a2;border-radius:4px;background:#fffdf7;color:#344d2d;font-size:12px}.language-button:hover{background:#ebeddf}h3 [data-i18n]{font-size:inherit;color:inherit;letter-spacing:normal}.primary-button [data-i18n]{font-size:inherit;line-height:1.4}.text-button{min-height:44px;white-space:normal;text-align:right;flex-shrink:0;max-width:42%}.project-heading>div{min-width:0}.field small{font-size:10px;line-height:1.5}.check-field [data-i18n]:first-of-type{font-size:inherit;color:inherit}.stock-tail,.stat small{overflow-wrap:anywhere}.settings-grid{align-items:start}.field select{height:auto;min-height:44px}.summary-grid>div{min-width:0}
@media(max-width:700px){.site-header{gap:8px 14px}.site-header .brand{margin-right:auto}.local-note{order:3;width:100%;text-align:right}.language-button{margin-left:auto}.settings-grid{grid-template-columns:1fr}.project-heading h2{font-size:24px}.principles{grid-template-columns:1fr}.principles>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}.quality-line{align-items:flex-start;flex-wrap:wrap}h1{font-size:clamp(40px,13vw,55px)}}
.stat span,.stat small,.legend,.safety-note{color:#56634b}.cut-segment{background:#516b43}.cut-segment:nth-child(even){background:#5b724c}
/* Keep every interactive hit area usable with a thumb, including row removal. */
button,a,summary,.import-label{min-width:44px;min-height:44px}
.brand,.import-label{align-items:center}
.import-label{position:relative;display:inline-flex}
.import-label input{inset:0;width:100%;height:100%;cursor:pointer}
.file-tools button,.import-label{padding:12px 4px}
.input-row{grid-template-columns:minmax(44px,1.5fr) minmax(44px,1fr) minmax(44px,1fr) 44px}
.cut-row{grid-template-columns:minmax(44px,1.2fr) minmax(44px,1.1fr) minmax(44px,.55fr) 44px}
.offcut-row{grid-template-columns:minmax(44px,1fr) minmax(44px,.6fr) 44px}
.offcut-section summary,.advanced-section summary{padding:12px 0;cursor:pointer;font-size:12px;line-height:20px}
.advanced-section{margin-top:20px;border-top:1px solid var(--line)}
.advanced-section .settings-grid{margin-top:12px}
.check-field{min-height:44px;cursor:pointer;line-height:1.6}
.check-field input{width:20px;height:20px;flex-shrink:0}
@font-face{font-family:WorkshopPrint;src:url(NotoSans-Regular.ttf) format('truetype');font-display:swap;font-weight:100 900}
@media print{:root{font-family:WorkshopPrint,Arial,sans-serif}body{background:white;color:black}.site-header,.intro,.editor,.principles,footer,.result-actions,.safety-note{display:none}main{max-width:none;padding:0}.workspace{display:block;border:0}.results{background:white;border:0;padding:0}.result-heading h2{font-size:28px}.stock-plan{break-inside:avoid;print-color-adjust:exact}.stock-bar{print-color-adjust:exact}.stale-warning{display:block!important}.stale-warning[hidden]{display:none!important}.summary-grid{margin-bottom:20px}}
