:root{color-scheme:light;--bg: #efe6d6;--ink: #1c1914;--muted: #5e584e;--card: #fffaf3;--line: #e3d5c0;--accent: #1e4a3a;--accent-soft: #e5f0ea;--seal: #8d2d2a;--shadow: 0 16px 40px rgba(60, 42, 20, .08);font-family:IBM Plex Sans KR,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.04em}h2{font-size:18px;letter-spacing:-.03em}h3{font-size:14px;margin:8px 0;color:var(--muted)}.top,.layout,.wizard,.pick,.foot{width:min(1120px,calc(100% - 28px));margin:0 auto}.top{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;padding:22px 0 8px;flex-wrap:wrap}.mark{color:var(--seal);font-size:12px;letter-spacing:.14em;text-transform:lowercase;font-weight:600}.top-actions,.result-actions,.nav{display:flex;flex-wrap:wrap;gap:8px}.tab,.ghost,.primary,.pick-card,.choice{border-radius:12px;border:1px solid var(--line);background:var(--card)}.tab,.ghost,.primary{padding:10px 14px}.tab.on,.choice.on{background:var(--accent);color:#f7f3ea;border-color:var(--accent)}.primary{background:var(--seal);color:#fff;border-color:var(--seal)}.ghost{background:transparent}.primary:disabled,.ghost:disabled{opacity:.4;cursor:not-allowed}.hero{font-size:18px;line-height:1.55;max-width:40rem;margin:12px 0 18px}.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pick-card{text-align:left;padding:22px;box-shadow:var(--shadow);min-height:180px}.pick-card span{color:var(--seal);font-size:12px;letter-spacing:.12em}.pick-card strong{display:block;font-size:28px;margin:10px 0;letter-spacing:-.04em}.pick-card em{display:block;font-style:normal;color:var(--muted);line-height:1.5}.layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:18px;align-items:start;padding-bottom:32px}.forms,.wizard{display:flex;flex-direction:column;gap:14px}.block,.result,.cardlet,.inset{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow)}.inset{box-shadow:none;background:#f7f1e6;margin-bottom:12px}.cardlet{box-shadow:none;margin-bottom:10px}.lead,.assume,.foot,.print-note,.print-foot{color:var(--muted);line-height:1.55;font-size:13px;overflow-wrap:anywhere}.lead{margin:6px 0 12px}.field{display:flex;flex-direction:column;gap:6px;margin:8px 0;font-size:14px}.field small,.rows small{color:var(--muted);font-size:12px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px;font-size:16px}.field textarea{font-size:14px;line-height:1.5;resize:vertical}.field input[type=range]{padding:0}.choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px}.choices.bands{grid-template-columns:repeat(5,minmax(0,1fr))}.choice{text-align:left;padding:12px}.choice strong{display:block;font-size:15px}.choice em{display:block;font-style:normal;color:var(--muted);font-size:12px;margin-top:4px;line-height:1.4}.choice.on em{color:#efe6d4}.check{display:flex;gap:10px;align-items:flex-start;margin:8px 0;line-height:1.45}.check input{margin-top:3px;width:18px;height:18px}.grid2,.grid3{display:grid;gap:8px}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr 1fr 1fr}.stack{display:flex;flex-direction:column;gap:8px}.row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.plain{border:0;margin:0;padding:0;min-inline-size:0}fieldset:disabled{opacity:.55}.result{position:sticky;top:12px}.eyebrow{letter-spacing:.16em;font-size:12px;color:var(--seal);font-weight:600}.total{font-size:34px;font-weight:700;letter-spacing:-.04em;margin:4px 0 6px;font-variant-numeric:tabular-nums}.supply{color:var(--muted);font-size:13px;margin-bottom:10px}.rows{margin:0}.rows div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.rows dt{font-size:14px}.rows dd{margin:0;font-variant-numeric:tabular-nums;font-weight:600}.steps{margin:8px 0 0;padding-left:18px}.steps li,.print-sheet li{margin:6px 0;line-height:1.45}details{margin-top:10px}summary{cursor:pointer;font-weight:600}.assume{margin-top:8px}.wizard{padding-bottom:28px}.dots{display:flex;gap:6px;flex-wrap:wrap}.dot{width:12px;height:12px;border-radius:99px;padding:0;background:#ddcbb3;border:0}.dot.on{background:var(--accent)}.step-label{font-size:13px;color:var(--muted)}.live{background:var(--accent);color:#f6f1e6;border-radius:14px;padding:12px 14px;font-weight:600}.nav{margin-top:4px}.nav .primary,.nav .ghost{flex:1}.foot{padding:8px 0 28px}.signstack{display:flex;flex-direction:column;width:34px;border:1px solid var(--line);border-radius:10px;overflow:hidden;flex:0 0 auto;align-self:center}.signstack button{border:0;background:#f7f1e6;padding:1px 0 2px;line-height:1.05;font-size:14px;border-radius:0}.signstack button+button{border-top:1px solid var(--line)}.signstack button.on{background:var(--accent);color:#f7f3ea}.units{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.unit.on{background:var(--accent);color:#f7f3ea;border-color:var(--accent)}.unit{border:1px solid var(--line);background:#f7f1e6;border-radius:999px;padding:6px 10px;font-size:13px}.notice{background:#f8e8e4;color:var(--seal);border-radius:10px;padding:8px 10px;font-weight:700;margin:8px 0}.slice-math{margin:8px 0 12px}.slice-math ul{margin:6px 0 0;padding-left:18px}.slice-math li{margin:4px 0;line-height:1.45;font-variant-numeric:tabular-nums}.print-sheet{display:none}.quote-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;overflow:auto;background:#1c191473;padding:24px 16px 48px}.quote-layout{width:min(1100px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:16px;align-items:start}.quote-editor-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.quote-sheet{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:28px 32px 32px;min-height:720px;box-shadow:var(--shadow)}.quote-head h1{font-size:26px;margin-bottom:12px}.quote-meta{margin:0}.quote-meta div{display:grid;grid-template-columns:72px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid var(--line)}.quote-meta dt{color:var(--muted)}.quote-meta dd{margin:0;min-height:1.4em;overflow-wrap:anywhere}.quote-figure{display:flex;flex-direction:column;gap:4px;margin:18px 0 8px}.quote-figure span{color:var(--muted);font-size:13px}.quote-figure strong{font-size:28px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.quote-disclaimer{margin:8px 0 16px;color:var(--muted);font-size:13px;line-height:1.55;white-space:pre-wrap}.quote-sheet table{width:100%;border-collapse:collapse;margin-top:8px}.quote-sheet th,.quote-sheet td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:7px 8px 7px 0}.quote-sheet td{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.quote-sheet tr.section th{color:var(--muted);font-size:12px;letter-spacing:.08em;padding-top:14px}.quote-sheet tr.grand th,.quote-sheet tr.grand td{font-size:18px;font-weight:700}.quote-supplier{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-top:28px}.quote-supplier img{display:block;max-height:72px;max-width:200px;object-fit:contain;margin:8px 0}.quote-office{font-size:18px;font-weight:700;margin-top:4px;min-height:1.3em}.quote-date{font-weight:600}@media(max-width:900px){.layout,.quote-layout{display:flex;flex-direction:column}.pick-grid,.grid3{grid-template-columns:1fr}.choices.bands{grid-template-columns:1fr 1fr}.result{order:-1;position:static}h1{font-size:24px}.total{font-size:30px}}@media(max-width:520px){.grid2,.row{grid-template-columns:1fr}.top,.layout,.wizard,.pick,.foot{width:min(1120px,calc(100% - 20px))}}.bill-sheet{background:#fff;color:#111;border:1px solid var(--line);border-radius:4px;padding:28px 26px 36px;box-shadow:var(--shadow)}.bill-page+.bill-page{margin-top:28px;padding-top:22px;border-top:1px dashed var(--line)}.bill-page h1{text-align:center;font-size:22px;letter-spacing:.12em;margin:0 0 14px}.bill-page h2{font-size:14px;margin:16px 0 6px;letter-spacing:0;color:inherit}.bill-id{display:flex;justify-content:space-between;gap:12px;font-size:13px}.bill-gold{font-size:16px;font-weight:700;margin:10px 0;letter-spacing:-.02em}.bill-meta{margin:0 0 10px}.bill-meta div{display:grid;grid-template-columns:92px 1fr;gap:8px;padding:3px 0}.bill-meta dt{color:var(--muted)}.bill-meta dd{margin:0;min-height:1.2em}.bill-table{width:100%;border-collapse:collapse;font-size:12px}.bill-table th,.bill-table td{border:1px solid #222;padding:4px 6px;vertical-align:middle;font-weight:500;text-align:left}.bill-table thead th{text-align:center;background:#f4f0e8}.bill-table td.num,.bill-table .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:650}.bill-table tr.grand th,.bill-table tr.grand td{font-weight:800}.bill-foot,.bill-formula,.bill-split{font-size:12px;line-height:1.55;margin:8px 0}.bill-accounts{white-space:pre-wrap;font-size:13px;margin:0;min-height:1.2em}.bill-supplier{margin-top:18px;text-align:right}.bill-supplier img{display:block;margin-left:auto;max-height:64px;max-width:180px;object-fit:contain}.bill-office{font-size:16px;font-weight:700;margin-top:4px}.bill-date{margin-top:6px;font-weight:600}.bill-lines{margin:4px 0 8px;padding-left:18px;font-variant-numeric:tabular-nums}.bill-lines li{margin:2px 0}@media print{body{background:#fff}.no-print{display:none!important}.print-sheet{display:block;color:#000;font-size:12px}.print-head h1{font-size:22px;margin:4px 0}.print-sheet h2{font-size:14px;margin:16px 0 6px}.print-sheet table{width:100%;border-collapse:collapse}.print-sheet th,.print-sheet td{border-bottom:1px solid #ccc;text-align:left;vertical-align:top;padding:5px 8px 5px 0}.print-sheet td{text-align:right}.print-sheet tr.grand th,.print-sheet tr.grand td{font-size:16px;font-weight:700}.assume,.print-note,.print-foot{font-size:11px}.print-sheet,.bill-sheet{box-shadow:none;border:0;padding:0}.bill-page{break-inside:avoid}.bill-page+.bill-page{break-before:page;page-break-before:always;border-top:0;margin-top:0;padding-top:0}.bill-table thead th{background:#fff}body:not(.print-quote) .quote-overlay{display:none!important}body.print-quote .print-sheet{display:none!important}body.print-quote .quote-overlay{position:static;background:#fff;padding:0;overflow:visible}body.print-quote .quote-layout{display:block;width:auto}body.print-quote .quote-sheet{border:0;box-shadow:none;min-height:0;padding:0;border-radius:0}body.print-quote .quote-disclaimer{font-size:11px}body.print-quote .quote-sheet img{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.wizard .nav{position:sticky;bottom:12px}.wizard .nav .primary{flex:1;min-height:52px;font-size:18px;font-weight:700}
