:root{--ink:#20392f;--muted:#738078;--green:#204c3c;--lime:#dce9af;--paper:#fafaf4;--line:#dce0d6;--wood:#c99761;--danger:#9c382f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,label.import-label{touch-action:manipulation}button{cursor:pointer}a{color:inherit}.topbar{max-width:1420px;margin:auto;padding:23px 50px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-size:25px;font-weight:800;letter-spacing:-1px}.brand-icon{display:grid;place-items:center;background:var(--green);color:#eee7cf;width:43px;height:43px;border-radius:12px;font-size:28px}.brand small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:-4px}.status{font-size:12px;color:var(--muted)}.status i{display:inline-block;background:#5f9367;width:6px;height:6px;border-radius:100%;margin-right:7px}main{max-width:1320px;margin:auto;padding:0 0 45px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:350px;padding:44px 30px 45px;gap:60px}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:700;color:#7a8469;margin:0 0 14px}h1{font-size:54px;letter-spacing:-2.5px;line-height:1.15;margin:0 0 18px;font-weight:760}h1 span{color:#8e987b}.intro{color:#778276;line-height:1.8;margin:0}.hero-art{transform:rotate(-5deg);padding:30px 20px 15px;max-width:510px}.measure{border-top:1px solid #b5b7a5;border-left:1px solid #b5b7a5;border-right:1px solid #b5b7a5;height:10px;text-align:center;margin:0 0 15px}.measure span{position:relative;top:-15px;background:var(--paper);padding:0 15px;font-size:11px;color:#90967d}.wood{display:flex;gap:3px;height:51px;box-shadow:0 8px 0 #b18759;background:#f7f4eb;border:1px solid #b18759}.wood span{display:grid;place-items:center;flex:9;background:repeating-linear-gradient(0deg,#d6b083,#d6b083 9px,#d1a676 11px,#d6b083 12px);font-family:monospace;color:#795533}.wood span:nth-child(3){flex:5.8}.wood i{flex:.3;background:#ebe4d6}.wood.second{margin-top:22px;width:100%;box-shadow:0 8px 0 #55705b}.wood.second span{background:#70947a;color:#e3ebdf;flex:12}.wood.second span:nth-child(2){flex:9}.wood.second i{flex:2.9;font-style:normal;background:#c4ccad;font-size:10px;display:grid;place-items:center;color:#5f6c4a}.art-tag{display:inline-flex;gap:8px;align-items:center;background:#f0f0e5;color:#718264;font-size:12px;padding:8px 14px;margin:35px 0 0 100px;border-radius:5px}.art-tag span{font-size:19px}.workspace{display:grid;grid-template-columns:460px minmax(0,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white;box-shadow:0 10px 30px #2b3f3610}.input-panel{padding:27px 28px;background:#fff;border-right:1px solid var(--line)}.panel-heading,.section-heading,.result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading{padding-bottom:19px;border-bottom:1px solid var(--line)}h2{font-size:20px;letter-spacing:-.7px;margin:0}h3{font-size:15px;margin:0;letter-spacing:-.4px}.text-button{border:none;background:none;color:#7a8469;padding:4px 0;font-size:11px;text-decoration:none}.text-button:hover{color:var(--green);text-decoration:underline}.section-heading{margin-top:25px;margin-bottom:9px}.section-heading h3 span{font-family:monospace;font-weight:500;font-size:12px;margin-right:9px;color:#a2ac94}.hint{font-size:10px;color:#90988b}.field-help{font-size:11px;color:#8a9185;line-height:1.65;margin:7px 0 12px}.row-head,.input-row{display:grid;gap:8px;align-items:center}.stock-head,.stock-row{grid-template-columns:1fr 1.25fr 25px}.cut-head,.cut-row{grid-template-columns:1.1fr 1fr .5fr 25px}.row-head{font-size:10px;color:#87917f;margin:12px 0 7px}.input-row{margin-bottom:8px}input,select,textarea{width:100%;min-width:0;border:1px solid #dde2d7;background:#fcfdf9;border-radius:6px;padding:9px 10px;color:var(--ink);outline:none}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-inner-spin-button{appearance:none}input:focus,select:focus,textarea:focus{border-color:#70947a;box-shadow:0 0 0 3px #70947a20}button:focus-visible,summary:focus-visible,.import-label:focus-within{outline:3px solid #a0b671;outline-offset:3px}.remove{border:0;background:#f5f6f0;color:#9aa192;border-radius:5px;width:25px;height:30px;padding:0;font-size:20px}.remove:hover{color:var(--danger);background:#fbefea}.add-button{border:1px dashed #d6dece;background:#fbfcf8;color:#7b8d6a;width:100%;padding:8px;border-radius:6px;font-size:11px}.add-button:hover{border-color:#7d967b}.bulk{margin-top:12px;color:#86917d;font-size:11px}.bulk summary{cursor:pointer}.bulk textarea{height:90px;resize:vertical;font-size:12px}.bulk .small-button{margin-top:7px}.setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.setting-grid label,.objective-label{font-size:11px;color:#7e8976}.setting-grid input{margin-top:6px}.objective-label{display:block}.objective-label select{display:block;margin-top:6px;font-size:12px}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-radius:7px;margin-top:20px;padding:15px 17px;color:#f7faef;background:var(--green);font-weight:600;font-size:14px}.primary:hover{background:#306149}.primary span{font-size:20px}.privacy{text-align:center;font-size:9px;color:#9ba28f;margin:10px 0 18px}.bottom-tools{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px}.import-label{cursor:pointer}.notice{font-size:11px;min-height:1em;margin:8px 0 0;color:#6c8258}.error{background:#fff2ec;color:var(--danger);padding:12px;border-radius:6px;margin-top:12px;font-size:12px}.results-panel{padding:28px 30px;background:#f8f9f3;min-width:0}.result-heading{align-items:flex-start;margin-bottom:22px}.result-heading .eyebrow{font-size:9px;margin-bottom:5px}.result-pill{font-size:10px;border:1px solid #dde5d4;border-radius:100px;padding:5px 10px;white-space:nowrap;color:#7a8a68}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{background:white;border:1px solid #e2e7da;border-radius:9px;padding:15px 15px 13px}.metric:first-child{background:#e6edcc;border-color:#e0e8c4}.metric-label{font-size:11px;color:#7b8b64}.metric-value{font-size:28px;font-weight:650;letter-spacing:-1px;margin-top:4px}.metric-value small{font-size:12px;font-weight:500;letter-spacing:0;margin-left:5px}.metric-sub{font-size:10px;color:#93a07d}.purchase{background:white;border:1px solid #e0e6d7;border-radius:9px;margin-top:14px;padding:16px}.subhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.subhead h3{font-size:13px}.subhead span{font-size:10px;color:#8f9a82}.purchase-row{display:flex;justify-content:space-between;font-size:12px;margin:7px 0;gap:8px}.purchase-row strong{font-variant-numeric:tabular-nums}.cost-total{border-top:1px solid var(--line);padding-top:10px;margin-top:10px;font-weight:600}.balance{display:flex;gap:12px;flex-wrap:wrap;margin:13px 0 26px;color:#8c977e;font-size:10px}.plan-title{margin-bottom:12px;display:flex;align-items:baseline;justify-content:space-between}.plan-title h3{font-size:16px}.plan-title span{font-size:10px;color:#8d997f}.plan-card{border:1px solid #e0e5d6;border-radius:9px;background:white;margin-bottom:12px;padding:16px}.plan-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:10px}.plan-number{font-size:10px;color:#879577;border-right:1px solid var(--line);padding-right:9px;margin-right:8px}.plan-name{font-size:13px;font-weight:600}.repeat{background:#eff3e2;color:#7f9064;border-radius:4px;font-size:10px;padding:3px 7px;white-space:nowrap}.bar{width:100%;height:39px;display:flex;border-radius:5px;overflow:hidden;background:#eee;outline:1px solid #e3e5d9}.bar-segment{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;white-space:nowrap;font-size:10px;color:white;position:relative}.bar-segment.piece{border-right:1px solid #ffffff50}.bar-segment.kerf{background:#f6f3dc}.bar-segment.trim{background:repeating-linear-gradient(45deg,#d4c4ae,#d4c4ae 2px,#ede5d9 2px,#ede5d9 4px)}.bar-segment.leftover{background:repeating-linear-gradient(45deg,#e9eddb,#e9eddb 3px,#e1e7cf 3px,#e1e7cf 6px);color:#89976c}.cut-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.cut-chip{display:flex;align-items:center;gap:5px;border:1px solid #e3e7dc;padding:3px 7px;border-radius:4px;font-size:10px;color:#6c7d60}.dot{height:6px;width:6px;border-radius:2px;display:inline-block}.plan-foot{display:flex;justify-content:space-between;gap:10px;margin-top:12px;border-top:1px solid #edf0e7;padding-top:9px;font-size:10px;color:#95a084}.plan-foot strong{font-weight:600;color:#7a8b65}.result-actions{display:flex;gap:8px;margin-top:18px}.small-button{background:white;border:1px solid #d8e0ce;border-radius:5px;padding:7px 12px;color:#788a66;font-size:11px}.small-button:hover{background:#edf2e2}.small-button:disabled{opacity:.45;cursor:not-allowed}.guide{border-top:1px solid #dfe5d5;margin-top:26px;padding-top:19px}.guide h3{font-size:12px;color:#7c8c68}.guide ul{font-size:10px;color:#919c83;padding-left:15px;line-height:1.9;margin:7px 0}.monetization{border-top:1px solid #e3e7dc;padding-top:12px;margin-top:17px;font-size:9px;color:#a0a88f}.howto{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;padding:40px 25px 10px}.howto span{font-size:9px;letter-spacing:1.7px;color:#a3ac94}.howto h3{font-size:13px;margin:9px 0 6px;color:#728365}.howto p{font-size:11px;color:#9ba48e;margin:0;line-height:1.8}footer{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:22px 8px;color:#9aa38d;font-size:10px}.footer-brand{font-size:20px;font-weight:700;color:#819172}footer a{text-decoration:none}.stale{border:1px solid #e9dba6;background:#fffbe7;color:#9e8339;padding:10px 12px;font-size:11px;border-radius:6px;margin-bottom:15px}.empty{padding:60px 20px;text-align:center;color:#8c9a7f;font-size:13px}#results.obsolete{opacity:.6}body.is-stale .result-actions{opacity:.5}[hidden]{display:none!important}@media(max-width:1400px){main,footer{margin-left:35px;margin-right:35px}.topbar{padding-left:35px;padding-right:35px}.workspace{grid-template-columns:420px minmax(0,1fr)}.input-panel{padding:26px 24px}.results-panel{padding:27px 24px}}@media(max-width:1000px){.workspace{grid-template-columns:370px minmax(0,1fr)}.metrics{gap:7px}.metric{padding:12px}.metric-value{font-size:23px}.result-heading{display:block}.result-pill{display:inline-block;margin-top:8px}.hero{gap:20px;padding:35px 12px}.hero-art{padding:25px 8px}h1{font-size:48px}.input-panel,.results-panel{padding:23px 18px}}@media(max-width:800px){main,footer{margin-left:18px;margin-right:18px}.topbar{padding:17px 20px}.status{font-size:9px}.brand{font-size:23px}.brand-icon{width:37px;height:37px}.brand small{font-size:7px}.hero{padding:32px 8px;min-height:270px;gap:12px}.hero-art{padding:25px 4px;max-width:330px}.art-tag{margin-left:15px;margin-top:25px;font-size:9px;padding:6px 10px}.wood{height:38px}.wood.second{margin-top:19px}h1{font-size:40px}.intro{font-size:12px}.eyebrow{font-size:9px}.workspace{grid-template-columns:1fr}.input-panel{border-right:0;border-bottom:1px solid var(--line);padding:23px}.results-panel{padding:25px 23px}.result-heading{display:flex}.result-pill{margin-top:0}.result-heading h2{font-size:20px}.metric-value{font-size:29px}.howto{gap:24px;padding:30px 5px 0}.howto span{font-size:8px}.howto h3{font-size:12px}.howto p{font-size:10px}.privacy{font-size:10px}.input-panel .field-help,.input-panel label{font-size:12px}.row-head{font-size:11px}.input-row input{padding:11px 9px}button.small-button{min-height:38px}}@media(max-width:480px){.hero{grid-template-columns:1fr;position:relative;min-height:300px;padding-bottom:30px}.hero-art{position:absolute;width:160px;right:0;top:90px;opacity:.85;transform:rotate(-9deg);pointer-events:none}.measure{margin-bottom:8px}.measure span{font-size:8px}.wood{height:26px;box-shadow:0 5px 0 #b18759;font-size:8px}.wood.second{margin-top:12px;box-shadow:0 5px 0 #55705b}.wood.second i{font-size:6px}.art-tag{display:none}.hero h1{font-size:42px}.intro{max-width:210px;font-size:10px}.hero .eyebrow{font-size:9px}.topbar{padding:15px 18px}.status{font-size:8px}.brand{gap:8px}.brand small{display:none}.input-panel,.results-panel{padding:21px 16px}.hint{font-size:9px}.result-heading{display:block}.result-heading h2{font-size:18px}.result-pill{margin-top:7px}.metric{padding:12px 10px}.metric-value{font-size:26px}.metric-label{font-size:10px}.metric-sub{font-size:9px}.metric-value small{font-size:10px;margin-left:3px}.plan-card{padding:13px 12px}.plan-name{font-size:12px}.plan-foot{font-size:9px}.howto{grid-template-columns:1fr;gap:18px}.howto div{border-bottom:1px solid #e5e8de;padding-bottom:15px}.howto h3{display:inline;margin-left:10px;font-size:12px}.howto p{margin-top:5px}footer{font-size:9px;padding:18px 0}footer>span:nth-child(2){display:none}.cut-head,.cut-row{grid-template-columns:1fr 1fr .5fr 22px}.stock-head,.stock-row{grid-template-columns:1fr 1.15fr 22px}.row-head,.input-row{gap:6px}.remove{width:22px}.input-row input{font-size:13px}.result-actions{gap:6px}.small-button{padding:7px 10px}.balance{gap:7px}.bottom-tools{gap:7px}.bottom-tools .text-button{font-size:10px}}@media print{body{background:#fff;color:#000;font-size:12px}.topbar,.hero,.input-panel,.result-actions,.howto,footer,.monetization,.result-pill,.stale{display:none!important}main{max-width:none;margin:0;padding:0}.workspace{display:block;border:0;box-shadow:none}.results-panel{padding:0;background:#fff}.result-heading{margin-bottom:15px}.metric,.purchase,.plan-card{break-inside:avoid}.plan-card{margin-bottom:10px}.bar,.bar-segment,.metric{-webkit-print-color-adjust:exact;print-color-adjust:exact}.guide{font-size:10px}.plan-title{margin-top:15px}.metrics{gap:10px}.result-heading .eyebrow{color:#444}.guide ul,.guide h3,.plan-foot{color:#333}#results.obsolete{opacity:1}}
/* Keep small functional copy readable, while decorative labels stay quiet. */
.field-help,.hint,.privacy,.metric-label,.metric-sub,.balance,.plan-foot,.guide ul,.monetization,.row-head,.purchase .field-help,.howto p{color:#6a785f}.field-help,.privacy,.guide ul{font-size:11px}.metric-sub,.plan-foot,.balance{font-size:10px}.plan-foot strong{color:#546847}.setting-grid label,.objective-label,.text-button{color:#657957}.plan-title>span,.subhead>span{color:#697c5d}.guide h3{color:#576d49}
