:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#efe6d4;--paper:#fffdf8;--ink:#171717;--muted:#4a4338;--line:#1a1a1a;--accent:#1e4d8c;--accent-dark:#153868;--voice:#8b1e1e;--chip:#fff;--shadow:0 8px 24px #2818081f;--sans:"Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--serif:"Noto Serif KR", "Batang", "Nanum Myeongjo", serif;font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:20px;line-height:1.45}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100%;margin:0}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}.app{max-width:720px;min-height:100svh;margin:0 auto;padding:16px 16px 40px}.step,.preview{flex-direction:column;gap:16px;display:flex}.step-bar{justify-content:space-between;align-items:center;min-height:56px;display:flex}.step-progress{color:var(--accent);margin:0;font-size:22px;font-weight:700}.step-title{letter-spacing:-.03em;margin:0;font-size:34px;line-height:1.25}.lead,.hint,.kicker{color:var(--muted);margin:0}.lead{font-size:22px}.hint{font-size:18px}.hint.error{color:var(--voice)}.kicker{margin-bottom:8px;font-weight:700}.stack{flex-direction:column;gap:12px;display:flex}.step>.btn,.stack>.btn{width:100%}.row{flex-wrap:wrap;gap:10px;display:flex}.btn{border:2px solid var(--line);background:var(--paper);min-height:64px;box-shadow:var(--shadow);border-radius:14px;padding:12px 16px;font-size:24px;font-weight:700}.btn small{color:var(--muted);margin-top:4px;font-size:16px;font-weight:500;display:block}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent-dark)}.btn-voice{border-color:var(--voice);color:var(--voice);background:#fff4f0}.btn-sub{border-color:var(--accent);color:var(--accent-dark);background:#e8eef8}.btn-muted{background:#ece7dc;border-color:#8a8173}.btn-back{min-height:48px;box-shadow:none;padding:8px 16px;font-size:20px}.field{border:3px solid var(--line);background:#fff;border-radius:14px;width:100%;min-height:72px;padding:12px 16px;font-size:26px}.field.area{resize:vertical;min-height:120px}.big-value{text-align:center;margin:0;font-size:40px;font-weight:800}.big-value small{margin-left:8px;font-size:22px;font-weight:600}.calc-live{text-align:center;color:var(--accent-dark);margin:0;font-size:20px;font-weight:700}.chips-block{margin-top:8px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:2px solid var(--accent);background:var(--chip);color:var(--accent-dark);border-radius:999px;min-height:48px;padding:8px 16px;font-size:18px;font-weight:700}.pad-shortcuts{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;display:grid}.pad-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.overlay{z-index:20;background:#140e088c;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.overlay-card{background:var(--paper);border-radius:20px 20px 16px 16px;flex-direction:column;gap:16px;width:min(640px,100%);padding:24px 20px 28px;display:flex}.overlay-kicker{color:var(--muted);margin:0;font-size:20px;font-weight:700}.heard-text{margin:0;font-size:32px;line-height:1.35}.toast{color:#fff;z-index:15;background:#3b2a1a;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.toast button{color:#fff;background:0 0;border:1px solid #fff;border-radius:10px;min-height:44px;padding:8px 12px}.sum-banner{border:2px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:4px;margin:0;padding:14px 16px;font-size:22px;display:flex}.sum-banner strong{font-size:28px}.howto{color:var(--muted);margin:0;padding-left:28px;font-size:20px}.howto li+li{margin-top:6px}.sheet-scale{background:#d8d0c0;border-radius:12px;width:100%;overflow:hidden}.sheet-scale-inner{transform-origin:0 0;width:210mm}.sheet{color:#111;width:210mm;min-height:297mm;font-family:var(--serif);background:#fff;padding:12mm 12mm 10mm}.sheet-frame{border:2px solid #111;flex-direction:column;min-height:273mm;padding:5mm 5mm 6mm;display:flex}.sheet-head{grid-template-columns:1.15fr .85fr;align-items:stretch;gap:4mm;margin-bottom:3mm;display:grid}.sheet-head-left{min-height:42mm;position:relative}.sheet-no{align-items:flex-end;gap:2mm;margin:0;font-size:11pt;font-style:italic;display:flex}.sheet-no-line{border-bottom:1px solid #111;width:28mm;height:0;margin-bottom:2px;display:inline-block}.sheet-title{text-align:center;letter-spacing:.4em;text-underline-offset:3px;margin:1mm 0 4mm;font-size:22pt;font-weight:700;text-decoration:underline}.sheet-date,.sheet-client,.sheet-lead{margin:0 0 2.2mm;font-size:11pt}.sheet-date,.sheet-client-name{border-bottom:1px solid #111;min-width:38mm;padding:0 2mm 1px;display:inline-block}.sheet-client{justify-content:space-between;align-items:flex-end;padding-right:4mm;display:flex}.sheet-letterhead{background:#fff;border:1px solid #4a6ea8;overflow:hidden}.sheet-letterhead img{object-fit:contain;object-position:center;width:100%;height:42mm;display:block}.sheet-sum{border:1px solid #111;grid-template-columns:28mm 1fr;margin-bottom:0;display:grid}.sheet-sum-label{text-align:center;border-right:1px solid #111;flex-direction:column;justify-content:center;padding:2mm;font-size:10pt;font-weight:700;display:flex}.sheet-sum-label small{font-size:8pt;font-weight:500}.sheet-sum-value{text-align:center;justify-content:center;align-items:center;padding:2.5mm 3mm;font-size:12pt;display:flex}.sheet-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:9pt}.sheet-table th,.sheet-table td{text-align:center;vertical-align:middle;word-break:break-all;border:1px solid #111;height:7.2mm;padding:0 1.2mm}.sheet-table thead th{background:#ececec;height:8mm;font-weight:700}.sheet-table .left{text-align:left}.sheet-project td{letter-spacing:.04em;font-weight:700}.sheet-total td{font-weight:700}.c-name{width:22%}.c-spec{width:18%}.c-qty{width:9%}.c-price{width:13%}.c-supply{width:15%}.c-tax{width:13%}.c-note{width:10%}.sheet-note{text-align:center;margin:6mm 0 0;font-size:11pt}.sheet-cont{text-align:center;margin:0 0 4mm;font-size:14pt}@media print{:root,html,body,#root,.app,.preview{max-width:none;margin:0;padding:0;background:#fff!important}.no-print{display:none!important}.sheet-scale,.sheet-scale-inner{background:#fff;border-radius:0;width:210mm!important;height:auto!important;overflow:visible!important;transform:none!important}.sheet{box-shadow:none;page-break-after:always}.sheet:last-child{page-break-after:auto}@page{size:A4;margin:0}}
