:root{color-scheme:light;--paper:#f7f4ec;--ink:#253a36;--muted:#53615a;--teal:#24594f;--piece:#c9ddd3;--line:#c5c9bd;--border:#7d8980;--warning:#963f28;--warning-bg:#f1e2d7;--leftover:#e9e5d6;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;line-height:1.5}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{min-height:46px;min-width:44px;padding:10px 18px;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--ink);font-size:15px;font-weight:600;cursor:pointer;line-height:1.4}button:hover{background:#e9ece2;border-color:var(--teal)}button:active{background:#dce5d9}button:disabled{opacity:.58;cursor:not-allowed}button:disabled:hover{background:transparent;border-color:var(--border)}a{color:var(--teal);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}input{min-height:49px;width:100%;min-width:0;padding:10px 12px;border:1px solid var(--border);border-radius:4px;background:#fffefa;color:var(--ink);font-size:17px;font-variant-numeric:tabular-nums}input::placeholder{color:#73796d;opacity:1}input[aria-invalid="true"]{border:2px solid var(--warning)}label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(29px,3vw,38px);line-height:1.15;letter-spacing:-1.3px;margin-bottom:12px;font-weight:750}h2{font-size:22px;letter-spacing:-.45px;line-height:1.25;margin-bottom:12px}h3{font-size:18px;line-height:1.35}p{margin-bottom:14px}.small{font-size:14px;line-height:1.55}.muted{color:var(--muted)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.9px;color:var(--muted);margin-bottom:10px}.page-header,.workspace,.page-footer{max-width:1536px;margin-inline:auto;padding-inline:48px}.page-header nav{display:flex;min-height:60px;align-items:center}.projects-link{display:inline-flex;align-items:center;min-height:44px;min-width:44px;font-size:14px;font-weight:600}.header-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0 26px;border-bottom:1px solid var(--line)}.subtitle{color:var(--muted);margin-bottom:0}.file-actions{display:flex;gap:12px;flex-shrink:0;flex-wrap:wrap}.workspace{display:grid;grid-template-columns:352px minmax(0,1fr);gap:40px;padding-top:30px;padding-bottom:44px}.editor{border-right:1px solid var(--line);padding-right:32px;min-width:0}.intro{font-size:16px;margin-bottom:28px}.stock-fields{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:start}.field{min-width:0}#gap-help{margin:13px 0 30px}.pieces-fieldset{padding:0;border:0;margin:0 0 22px;min-width:0}.pieces-fieldset legend{font-size:20px;letter-spacing:-.4px;font-weight:700;padding:0;margin-bottom:16px}.piece-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 44px;gap:12px;margin-bottom:14px;align-items:start}.remove-row{width:44px;min-height:49px;padding:0;font-size:23px;font-weight:400;margin-top:29px}.row-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px}.row-actions span{text-align:right}.limits{margin:12px 0 0}.primary{background:var(--teal);border-color:var(--teal);color:white}.primary:hover{background:#19453d;color:white}.generate{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;font-size:17px;padding-inline:20px}.generate span{font-size:24px;font-weight:400}.edit-note{margin:17px 0 0;max-width:265px}.local-note{border-top:1px solid var(--line);padding-top:20px;margin-top:32px;color:var(--muted)}.worksheet{min-width:0}.worksheet-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.worksheet-heading h2{font-size:28px;letter-spacing:-.8px;margin-bottom:0}.status{flex-shrink:0;background:#dce8db;color:var(--teal);font-size:14px;font-weight:650;border:1px solid #c0d4bd;border-radius:20px;padding:5px 12px}.status.stale{background:var(--warning-bg);color:var(--warning);border-color:#cfa591}.empty-state{padding:52px 36px 44px;border-block:1px solid var(--line);margin-top:24px;min-height:440px}.empty-state h3{font-size:24px;letter-spacing:-.6px;max-width:430px}.empty-state p{max-width:460px;color:var(--muted)}.empty-state button{margin-top:13px;margin-bottom:12px;border-color:var(--teal);color:var(--teal)}.paper-sample{display:flex;gap:6px;max-width:440px;height:53px;margin-bottom:38px;transform:rotate(-2deg)}.paper-sample span{border:1px solid #678777;background:var(--piece);flex:1}.paper-sample span:last-child{flex:.26;background:repeating-linear-gradient(135deg,transparent 0 6px,#b9baaa 6px 7px),var(--leftover);border-color:#8a958b}.method{font-size:16px;color:var(--muted);margin-bottom:4px}.guarantee{margin-bottom:23px}.totals{display:flex;gap:28px;margin:0 0 24px;padding:8px 0 23px;border-bottom:1px solid var(--line);flex-wrap:wrap}.totals>div{display:flex;flex-direction:column;min-width:115px;padding-right:25px;border-right:1px solid var(--line)}.totals>div:last-child{border:0;padding-right:0}.totals dt{font-size:14px;color:var(--muted)}.totals dd{order:-1;margin:0;font-size:36px;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:-1px}.totals .has-unplaced,.count-invalid{color:var(--warning)}.sheet-key{font-size:14px;color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line)}.sheet-key p{margin-bottom:10px;overflow-wrap:anywhere}.legend{display:flex;flex-wrap:wrap;gap:18px}.legend span{display:inline-flex;gap:7px;align-items:center}.legend i{display:inline-block;width:20px;height:14px;border:1px solid #678777}.piece-swatch{background:var(--piece)}.gap-swatch{background:#fffefa}.leftover-swatch{background:repeating-linear-gradient(135deg,transparent 0 4px,#929a8a 4px 5px),var(--leftover)}.strip{margin:0;padding:23px 0 25px;border-bottom:1px solid var(--line);break-inside:avoid;page-break-inside:avoid}.strip-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:20px}.strip-heading h3{margin:0;font-size:17px;white-space:nowrap}.strip-heading p{margin:0;font-size:15px;text-align:right;overflow-wrap:anywhere}.ruler{display:flex;justify-content:space-between;border-bottom:1px solid #8a958b;position:relative;padding-bottom:7px;margin-bottom:13px;gap:8px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ruler:after{content:"";height:7px;position:absolute;bottom:-4px;left:0;right:0;background:repeating-linear-gradient(to right,#8a958b 0 1px,transparent 1px 10%);border-right:1px solid #8a958b}.strip-diagram{display:flex;width:100%;height:72px;border:1px solid #52786a;overflow:hidden;background:#fffefa}.segment{height:100%;flex:none;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.segment.piece{background:var(--piece);box-shadow:inset -1px 0 #52786a}.segment.gap{background:#fffefa;box-shadow:inset -1px 0 #52786a}.segment.leftover{background:repeating-linear-gradient(135deg,transparent 0 8px,#a0a795 8px 9px),var(--leftover)}.segment span{padding:3px 5px;overflow:hidden;text-overflow:ellipsis}.segment.leftover span{background:var(--leftover)}.piece-order{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 10px;list-style:none;margin:14px 0 7px;padding:0;counter-reset:piece;line-height:1.7;font-size:14px}.piece-order li{counter-increment:piece;overflow-wrap:anywhere;max-width:100%}.piece-order li:before{content:counter(piece) ": ";font-weight:700}.piece-order li:not(:last-child):after{content:" →";color:var(--muted);padding-left:9px}.strip-detail{font-size:14px;color:var(--muted);margin:0;overflow-wrap:anywhere}.unplaceable{margin:0 0 23px;padding:16px 18px;background:var(--warning-bg);border-left:4px solid var(--warning);color:#733a2c;overflow-wrap:anywhere}.unplaceable h3{font-size:16px;color:var(--warning);margin:0 0 6px}.unplaceable p{font-size:15px;margin:0 0 6px}.unplaceable ul{padding-left:22px;margin:0;font-size:15px}.outdated-notice{color:#733a2c;background:var(--warning-bg);border-left:4px solid var(--warning);padding:12px 16px;font-size:15px;margin-bottom:20px}.sheet-bottom{display:flex;justify-content:space-between;align-items:center;gap:26px;margin-top:24px}.sheet-bottom p{max-width:470px;margin:0}.sheet-bottom button{flex-shrink:0;color:var(--teal);border-color:var(--teal)}#export-help{margin-top:12px}.no-strips{padding:25px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:16px}.error{color:var(--warning);font-size:14px;line-height:1.45;overflow-wrap:anywhere}.field-error{margin:7px 0 0}.validation-summary,.import-error{background:var(--warning-bg);border-left:4px solid var(--warning);padding:12px 14px}.import-error{margin:16px 0 0}.page-footer{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:14px;padding-block:19px 28px;border-top:1px solid var(--line)}.page-footer>span{font-weight:600}.page-footer p{margin:0;max-width:600px;text-align:right}.skip-link{position:absolute;left:16px;top:-100px;z-index:10;background:var(--paper);padding:12px;min-height:44px}.skip-link:focus{top:12px}.noscript{padding:20px 48px;color:var(--warning)}[hidden]{display:none!important}
@media(min-width:1300px){.workspace{grid-template-columns:392px minmax(0,1fr);gap:48px}.editor{padding-right:40px}}
@media(max-width:1050px){.page-header,.workspace,.page-footer{padding-inline:28px}.workspace{grid-template-columns:320px minmax(0,1fr);gap:26px}.editor{padding-right:24px}.header-main{align-items:flex-start}.file-actions{max-width:150px}.file-actions button{width:100%}.worksheet-heading{align-items:flex-start;flex-wrap:wrap}.totals{gap:18px}.totals>div{min-width:90px;padding-right:15px}.sheet-bottom{align-items:flex-start;flex-direction:column}.strip-heading{flex-wrap:wrap}.strip-heading p{text-align:left}.empty-state{padding:40px 10px}.piece-row{gap:8px}}
@media(max-width:760px){.page-header,.workspace,.page-footer{padding-inline:20px}.header-main{display:block;padding-top:8px;padding-bottom:24px}.header-main .eyebrow{margin-top:8px}.file-actions{max-width:none;margin-top:22px}.file-actions button{width:auto;flex:1}.workspace{display:block;padding-top:26px}.editor{padding:0 0 28px;border-right:0;border-bottom:1px solid var(--line);margin-bottom:30px}.intro{margin-bottom:20px}.piece-row{gap:12px}.edit-note{max-width:none}.local-note{margin-top:18px;padding-top:14px}.worksheet-heading h2{font-size:27px}.empty-state{min-height:0;padding:35px 0}.empty-state h3{font-size:23px}.paper-sample{margin-inline:8px;margin-bottom:30px}.totals{gap:16px;justify-content:space-between}.totals>div{padding-right:12px;min-width:0}.totals dd{font-size:32px}.totals dt{font-size:14px}.strip-heading{display:block;margin-bottom:18px}.strip-heading h3{margin-bottom:5px}.strip-heading p{font-size:14px}.segment{font-size:14px}.strip-diagram{height:62px}.sheet-bottom{gap:18px}.sheet-bottom button{width:100%}.page-footer{flex-direction:column;gap:6px}.page-footer p{text-align:left}.worksheet-heading{gap:12px}}
@media(max-width:360px){.page-header,.workspace,.page-footer{padding-inline:16px}.stock-fields{gap:10px}.piece-row{gap:8px}.row-actions{flex-wrap:wrap}.totals{gap:12px}.totals>div{padding-right:8px}}
@media print{@page{margin:15mm}body{background:white;color:#111;font-size:16px}.page-header,.workspace,.page-footer{max-width:none;padding:0}.page-header nav,.file-actions,.editor,.page-footer,.skip-link,.import-error,.sheet-bottom button,#export-help,#download-error,#try-example,.noscript{display:none!important}.header-main{padding:0 0 15px;display:block;border-color:#777}.header-main .eyebrow{display:none}h1{font-size:26px;letter-spacing:-.5px}.subtitle{font-size:14px}.workspace{display:block;padding-top:22px}.worksheet-heading{flex-wrap:wrap}.worksheet-heading h2{font-size:25px}.method{font-size:15px}.small,.strip-detail,.piece-order{font-size:14px}.totals{gap:28px}.totals dd{font-size:29px}.strip{break-inside:avoid;page-break-inside:avoid;padding-block:18px}.strip-diagram{height:56px;border-color:#111}.segment.piece{background:#ddd;box-shadow:inset -1px 0 #333}.segment.gap{background:white;box-shadow:inset -1px 0 #333}.segment.leftover,.leftover-swatch{background:repeating-linear-gradient(135deg,white 0 6px,#888 6px 7px)}.segment.leftover span{background:white}.piece-swatch{background:#ddd}.status{color:#111;border:1px solid #555;background:white}.status.stale,.outdated-notice,.unplaceable{color:#111;background:#f3f3f3;border-color:#555}.unplaceable h3{color:#111}.sheet-bottom{margin-top:17px;display:block}.sheet-bottom p{max-width:none}.strip-heading{display:flex}.strip-heading p{font-size:14px}.empty-state{min-height:0}.paper-sample{display:none}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
