:root{--bg: #fafaf9;--fg: #1c1917;--muted: #57534e;--accent: #15803d;--accent-soft: #f0fdf4;--card: #ffffff;--line: #e7e5e4;--danger-btn: #b91c1c;--up: #c2410c;--err: #b91c1c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,sans-serif}.container{max-width:760px;margin:0 auto;padding:24px 16px}h1{font-size:1.6rem;margin:0 0 4px}h2{font-size:1.2rem;margin:0 0 8px}h3{font-size:1.05rem;margin:18px 0 6px}h4{font-size:1rem;margin:0 0 4px}.lead{color:var(--muted);margin:0 0 8px}.small{font-size:.875rem;color:var(--muted)}label{display:block;font-weight:600;margin:10px 0 4px;font-size:.95rem}input,select,textarea,button{font:inherit;width:100%;min-height:44px;padding:8px 12px;border:1px solid #d6d3d1;border-radius:8px;background:var(--card);color:var(--fg)}textarea{resize:vertical;font-size:.95rem}input[aria-invalid=true]{border-color:var(--err)}button{background:var(--accent);color:#fff;border:1px solid var(--accent);cursor:pointer;margin-top:12px;font-weight:600}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,h3:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-secondary{background:var(--card);color:var(--accent)}.btn-danger{background:var(--card);color:var(--danger-btn);border-color:#fca5a5}.btn-link{width:auto;min-height:44px;margin:0;padding:0 8px;background:none;border:none;color:var(--danger-btn);text-decoration:underline}.btn-small{width:auto;margin-top:8px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin-top:16px}.card.empty{color:var(--muted)}.sec-title{margin-top:24px}.summary{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.summary[hidden]{display:none}.tile{background:var(--accent-soft);border:1px solid #bbf7d0;border-radius:10px;padding:10px 12px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}.tile strong{font-size:1.15rem;font-variant-numeric:tabular-nums}.tile-label{color:var(--muted);font-size:.9rem}.tile-up strong{color:var(--up)}.tile-up{background:#fff7ed;border-color:#fed7aa}.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preset-grid button{margin-top:0}.add-row{display:flex;gap:8px}.add-row button{width:auto;margin:0;padding:0 18px;flex:0 0 auto}.field-grid,.use-grid,.offer-grid,.par-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.field-grid>.field:first-child,.use-grid>.field:first-child,.offer-grid>.field:first-child{grid-column:1 / -1}.with-suffix{position:relative}.with-suffix input{padding-right:3em}.suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.field .small{margin:2px 0 0}.field .field-err{color:var(--err);font-weight:600;overflow-wrap:anywhere}.field-err[hidden]{display:none}.check-field{display:flex;align-items:flex-end}.check-label{display:flex;align-items:center;gap:8px;min-height:44px;margin:0;cursor:pointer}.check-label input{width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--accent)}.items{display:grid;gap:4px}.item-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.item-head h3{margin:0;font-size:1.15rem}.offer-list{display:grid;gap:10px;margin-top:10px}.offer-row{border:1px solid var(--line);border-radius:10px;padding:4px 12px 8px;margin:0;background:#fcfcfb;min-width:0}.offer-row.current{border-color:#a8a29e}.offer-row legend{font-weight:700;padding:0 4px;font-size:.95rem}.offer-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:8px}.offer-out{margin:0;flex:1 1 100%;font-size:.93rem;font-variant-numeric:tabular-nums}.badge-low{font-size:.8rem;font-weight:700;color:#fff;background:var(--accent);border-radius:999px;padding:0 10px}.ship{font-size:.85rem;color:var(--muted)}.known{color:var(--accent);font-size:.85rem;font-weight:600}[hidden]{display:none!important}.conclusion{margin-top:12px;padding:10px 12px;border-left:4px solid var(--fg);background:#f5f5f4;border-radius:0 8px 8px 0}.conclusion p{margin:2px 0}.verdict{font-weight:700}.verdict.v-none{font-weight:400;color:var(--muted)}.increase{color:var(--up);font-weight:600}.table-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}.tbl caption{text-align:left}.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:6px;text-align:center}.tbl th[scope=row]{text-align:left;white-space:nowrap}.tbl .today{background:var(--accent-soft);font-weight:700;border-left:2px solid var(--accent);border-right:2px solid var(--accent)}.par-rows{display:grid;gap:10px}.par-row{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.par-out{margin:8px 0 0;font-variant-numeric:tabular-nums}.btn-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-row button{margin-top:0}#copy-status{min-height:1.4em;margin:8px 0 0}footer p{margin:4px 0}#clear-all{max-width:14em}.print-only{display:none}.offers{margin-top:1.5rem;padding:1rem;border:1px solid #ddd;border-radius:8px}.offers h2{font-size:1rem;margin:0 0 .5rem}.offers ul{margin:0;padding-left:1.2rem}@media(min-width:600px){.summary{grid-template-columns:repeat(3,1fr)}.tile{flex-direction:column;align-items:flex-start;gap:0}.field-grid{grid-template-columns:repeat(3,1fr)}.use-grid{grid-template-columns:2fr 1fr}.use-grid>.field:first-child{grid-column:auto}.offer-grid{grid-template-columns:repeat(4,1fr)}.offer-grid>.field:first-child{grid-column:span 2}.btn-row{grid-template-columns:repeat(4,1fr)}}@media print{@page{size:A4;margin:12mm}body{background:#fff;color:#000;font-size:11pt}.screen-only,.offers,.vf-contact,#offers,#summary{display:none!important}.print-only{display:block!important}.container{max-width:none;padding:0}#print-sheet h1{font-size:16pt;margin:0 0 2pt}#print-sheet .basis{margin:0 0 6pt;font-weight:600}.print-tbl{font-size:10pt}.print-tbl th,.print-tbl td{border:1px solid #000;padding:5pt 4pt;height:22pt}.print-tbl thead th{font-weight:700;border-bottom:2px solid #000}.print-tbl td.strong{font-weight:700;text-align:left}.print-tbl td:nth-child(2){text-align:left}.print-tbl .today{background:none;font-weight:800;border-left:2.5px solid #000;border-right:2.5px solid #000}.sign{margin:12pt 0 0;font-weight:700}footer{font-size:8.5pt;padding:8pt 0 0}footer .small,.small{color:#000}}
