.line{grid-template-columns:130px minmax(120px,1fr) 90px 65px 60px 105px 85px 25px}
.link.danger{color:#b42318;margin-left:10px}
.document-row-actions{white-space:nowrap}.document-row-actions .link{margin:0 4px}.document-row-actions .link.danger{margin-left:10px}
.customer-actions{display:flex;gap:8px;align-items:center}.bulk-dialog{max-height:92vh;overflow:auto}.bulk-steps{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.bulk-file,.bulk-mode{display:grid;gap:6px;font-size:13px;font-weight:750}.bulk-file input,.bulk-mode select{min-width:220px}.bulk-summary{padding:12px 14px;margin:15px 0;background:#f2f7f3;border-radius:8px;font-weight:750}.bulk-preview-wrap{max-height:390px;overflow:auto}.bulk-preview{min-width:650px}.bulk-preview th,.bulk-preview td{padding:10px 12px}.bulk-status.error{color:#b42318}.bulk-status.update{color:#176c3f}.bulk-status.skip{color:#68766e}.bulk-dialog .dialog-foot{position:sticky;bottom:0;background:#fff}@media(max-width:700px){.customer-actions{flex-wrap:wrap;justify-content:flex-end}.bulk-steps{display:grid}.bulk-file input,.bulk-mode select{min-width:0;width:100%}}
.customer-actions{display:flex;gap:8px;align-items:center}.customers-notice:empty{display:none}.customers-notice{padding:12px 14px;margin:0 0 16px;background:#e9f4ec;color:#176c3f;border-radius:8px;font-weight:750}.bulk-dialog{max-height:92vh;overflow:auto}.bulk-steps{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.bulk-file,.bulk-mode{display:grid;gap:6px;font-size:13px;font-weight:750}.bulk-file input,.bulk-mode select{min-width:220px}.bulk-summary{padding:12px 14px;margin:15px 0;background:#f2f7f3;border-radius:8px;font-weight:750}.bulk-preview-wrap{max-height:390px;overflow:auto}.bulk-preview{min-width:650px}.bulk-preview th,.bulk-preview td{padding:10px 12px}.bulk-status.error{color:#b42318}.bulk-status.update{color:#176c3f}.bulk-status.skip{color:#68766e}.bulk-dialog .dialog-foot{position:sticky;bottom:0;background:#fff}@media(max-width:700px){.customer-actions{flex-wrap:wrap;justify-content:flex-end}.bulk-steps{display:grid}.bulk-file input,.bulk-mode select{min-width:0;width:100%}}
.customer-actions{display:flex;gap:8px;align-items:center}.customers-notice:empty{display:none}.customers-notice{padding:12px 14px;margin:0 0 16px;background:#e9f4ec;color:#176c3f;border-radius:8px;font-weight:750}.bulk-dialog{max-height:92vh;overflow:auto}.bulk-steps{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.bulk-file,.bulk-mode{display:grid;gap:6px;font-size:13px;font-weight:750}.bulk-file input,.bulk-mode select{min-width:220px}.bulk-summary{padding:12px 14px;margin:15px 0;background:#f2f7f3;border-radius:8px;font-weight:750}.bulk-preview-wrap{max-height:390px;overflow:auto}.bulk-preview{min-width:650px}.bulk-preview th,.bulk-preview td{padding:10px 12px}.bulk-status.error{color:#b42318}.bulk-status.update{color:#176c3f}.bulk-status.skip{color:#68766e}.bulk-dialog .dialog-foot{position:sticky;bottom:0;background:#fff}.ad-slot{margin-top:22px;min-height:96px;border:1px dashed #d6dfd8;border-radius:12px;background:#f9fbf9;color:#9aa79d;display:flex;align-items:center;justify-content:center;font-size:13px;pointer-events:none}@media(max-width:700px){.customer-actions{flex-wrap:wrap;justify-content:flex-end}.bulk-steps{display:grid}.bulk-file input,.bulk-mode select{min-width:0;width:100%}.ad-slot{min-height:72px}}@media print{.ad-slot{display:none!important}}
.customer-actions{display:flex;gap:8px;align-items:center}.customers-notice:empty{display:none}.customers-notice{padding:12px 14px;margin:0 0 16px;background:#e9f4ec;color:#176c3f;border-radius:8px;font-weight:750}.bulk-dialog{max-height:92vh;overflow:auto}.bulk-steps{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.bulk-file,.bulk-mode{display:grid;gap:6px;font-size:13px;font-weight:750}.bulk-file input,.bulk-mode select{min-width:220px}.bulk-summary{padding:12px 14px;margin:15px 0;background:#f2f7f3;border-radius:8px;font-weight:750}.bulk-preview-wrap{max-height:390px;overflow:auto}.bulk-preview{min-width:650px}.bulk-preview th,.bulk-preview td{padding:10px 12px}.bulk-status.error{color:#b42318}.bulk-status.update{color:#176c3f}.bulk-status.skip{color:#68766e}.bulk-dialog .dialog-foot{position:sticky;bottom:0;background:#fff}.quote-customer-tabs{display:flex;gap:8px;margin-bottom:14px}.quote-customer-tab{border:1px solid #d8e2db;background:#fff;color:var(--muted);padding:10px 15px;border-radius:8px;font:inherit;font-weight:750;cursor:pointer}.quote-customer-tab.active{border-color:var(--green);background:#e9f4ec;color:var(--green)}.quote-customer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fbfdfb}.quote-customer-fields[hidden]{display:none!important}.quote-customer-fields label{font-size:13px;font-weight:750}.quote-customer-fields input,.quote-customer-fields select{display:block;width:100%;margin-top:7px}.quote-customer-fields small{grid-column:1/-1;color:var(--muted)}.ad-slot{margin-top:22px;min-height:96px;border:1px dashed #d6dfd8;border-radius:12px;background:#f9fbf9;color:#9aa79d;display:flex;align-items:center;justify-content:center;font-size:13px;pointer-events:none}@media(max-width:700px){.customer-actions{flex-wrap:wrap;justify-content:flex-end}.bulk-steps{display:grid}.bulk-file input,.bulk-mode select{min-width:0;width:100%}.quote-customer-fields{grid-template-columns:1fr}.ad-slot{min-height:72px}}@media print{.ad-slot{display:none!important}}
#quotesPage .table-wrap th:first-child,#quotesPage .table-wrap td:first-child,#statementsPage .table-wrap th:first-child,#statementsPage .table-wrap td:first-child{width:65px;text-align:center}
.card .link{margin-top:12px}
.back-settings{border:0;background:transparent;color:var(--green);font:inherit;font-weight:750;cursor:pointer;padding:0;margin:0 0 18px}.back-settings:hover{text-decoration:underline}
.document-toolbar{display:grid;grid-template-columns:1.1fr 1.1fr 145px 125px 125px 130px auto;align-items:end;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px}.document-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750}.document-toolbar input,.document-toolbar select{width:100%;min-width:0}.document-toolbar .clear-filters{white-space:nowrap;height:42px}@media(max-width:1100px){.document-toolbar{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.document-toolbar{grid-template-columns:1fr 1fr}.document-toolbar .clear-filters{grid-column:1/-1}}
.quote-number-setting{padding-top:8px;border-top:1px solid var(--line)}.quote-number-setting small{display:block;margin-top:7px;color:var(--muted);font-weight:400}.quote-number-setting input{text-transform:uppercase}
.yesform-statement .yesform-copy.yesform-copy{font-size:13px}.yesform-statement .yesform-items.yesform-items{font-size:12px}.yesform-statement .yesform-sign{grid-template-columns:1fr 1fr 1fr 1fr}.yesform-statement .vertical{font-size:12px}.yesform-statement .yesform-copy h1 small{font-size:13px}
.yesform-statement .yesform-parties{border-bottom:2px solid var(--doc)}.yesform-statement .customer-party .party-fields{display:grid;grid-template-rows:repeat(4,1fr)}.yesform-statement .supplier-party .party-fields{display:grid;grid-template-rows:repeat(5,1fr)}.yesform-statement .yesform-items thead th{border-top:1px solid var(--doc)}
.yesform-statement .owner-stamp{position:relative;justify-content:center;min-height:38px;isolation:isolate}.yesform-statement .owner-name{position:relative;z-index:2;font-weight:700}.yesform-statement .supplier-seal{position:absolute;z-index:1;left:50%;top:50%;width:52px;max-width:52px;height:52px;max-height:52px;margin:0;transform:translate(-42%,-50%);object-fit:contain;opacity:.82}
@media print{@page{size:A4 portrait;margin:10mm}.yesform-statement{display:block;width:100%;min-width:0}.yesform-statement .yesform-copy{width:100%;max-width:100%;break-inside:avoid;page-break-inside:avoid;break-after:page;page-break-after:always;box-sizing:border-box}.yesform-statement .yesform-copy:last-child{break-after:auto;page-break-after:auto}.yesform-statement .cut-line{display:none}.document-dialog:has(.yesform-statement){margin:0!important;padding:0!important}.document-dialog:has(.yesform-statement) .paper{margin:0!important;padding:0!important;width:100%!important;overflow:visible!important}.yesform-statement .yesform-items{width:100%;table-layout:fixed}.yesform-statement .party-fields span,.yesform-statement .party-fields strong{overflow-wrap:anywhere}}
.form-grid textarea{display:block;width:100%;min-height:110px;margin-top:7px;resize:vertical}.form-grid label>small{display:block;margin-top:7px;color:var(--muted);font-weight:400}.quote-terms-label{display:block;margin-top:18px;font-weight:750;font-size:13px}.quote-terms-label textarea{display:block;width:100%;min-height:110px}.biz-document.quotation{font-size:14px}.quotation .info-table{font-size:12px}.quotation .items-table{font-size:12px}.quotation .items-table th,.quotation .items-table td{padding:7px 4px}.quotation .terms{font-size:13px}.yesform-statement .yesform-copy{font-size:11px}.yesform-statement .yesform-items{font-size:11px}.yesform-statement .yesform-items th,.yesform-statement .yesform-items td{height:21px}
.top-back{border:1px solid var(--line);background:#fff;color:var(--green);border-radius:8px;padding:9px 15px;font:inherit;font-weight:750;cursor:pointer}.top-back:hover{background:#e9f4ec}.product-editor{width:100vw;max-width:none;height:100vh;max-height:none;border-radius:0;margin:0}.product-editor .dialog-head{position:sticky;top:0;background:#fff;z-index:2}.product-editor #entityFields{display:block;max-width:900px;width:100%;margin:0 auto;padding:30px}.product-editor .dialog-foot{position:sticky;bottom:0;background:#fff;z-index:2}.product-editor .dialog-foot .primary{min-width:150px}.product-basic{background:#fff;border:1px solid var(--line);border-radius:13px;padding:23px}.product-basic h3{margin:0 0 18px}
.customer-editor #entityFields{display:block}
.yesform-statement{width:100%;min-width:720px}.document-dialog:has(.yesform-statement) .paper{overflow-x:auto}.supplier-party .party-fields>div:nth-child(5){grid-template-columns:72px 1fr 48px 1fr}.owner-stamp{position:relative;gap:5px}.supplier-seal{max-width:32px;object-fit:contain}

@media print{@page{size:A4 portrait;margin:7mm}.yesform-statement{width:100%;min-width:0}.document-dialog:has(.yesform-statement),.document-dialog:has(.yesform-statement) .paper{width:100%;max-width:none;overflow:visible}.yesform-statement .yesform-copy h1{font-size:21px;padding:4px}.yesform-statement .party{min-height:112px}.yesform-statement .party-fields>div{min-height:25px}.yesform-statement .yesform-items th,.yesform-statement .yesform-items td{height:16px;padding:1px 3px}.yesform-statement .yesform-sign{min-height:28px}.yesform-statement .cut-line{margin:10px 0}}
.document-dialog .doc-actions{flex-wrap:wrap;align-items:center}.doc-actions [hidden]{display:none!important}.share-status{margin-right:auto;color:var(--muted);font-size:12px}.doc-actions button:disabled{opacity:.45;cursor:wait}@media print{.share-status{display:none}}

/* 도장은 대표자명 마지막 글자에 살짝 겹치도록 크게 표시합니다. */
.owner-stamp{position:relative!important;display:inline-flex!important;align-items:center;justify-content:center;min-width:48px;isolation:isolate}.owner-name{position:relative;z-index:2;font-weight:700}.supplier-seal{position:absolute!important;z-index:1;left:auto!important;right:3px!important;top:50%!important;width:60px!important;max-width:none!important;height:60px!important;max-height:none!important;margin:0!important;transform:translate(0,-50%)!important;object-fit:contain;opacity:.82}.supplier-seal.seal-generated{right:7px!important;width:44px!important;height:44px!important}
.yesform-statement .supplier-party .party-fields>div:nth-child(2){min-height:64px}.biz-document .info-table tr:nth-child(2)>*{height:64px}
.biz-document .quote-owner,.yesform-statement .supplier-party .quote-owner{display:grid!important;grid-template-columns:minmax(32px,1fr) 56px;align-items:center;width:100%;min-height:58px}.biz-document .quote-seal-box,.yesform-statement .supplier-party .quote-seal-box{height:58px;display:grid;place-items:center}.biz-document .quote-seal-box .supplier-seal,.yesform-statement .supplier-party .quote-seal-box .supplier-seal{position:static!important;transform:none!important;margin:0!important;width:52px!important;height:52px!important}.biz-document .quote-seal-box .seal-generated,.yesform-statement .supplier-party .quote-seal-box .seal-generated{width:40px!important;height:40px!important}
.yesform-statement .supplier-party .party-fields>div:nth-child(2){grid-template-columns:72px minmax(0,1fr) 48px minmax(32px,1fr) 60px}.yesform-statement .statement-owner-name{min-width:0;overflow:hidden;white-space:nowrap}.yesform-statement .statement-seal-box{height:62px;display:grid!important;place-items:center;padding:0!important}.yesform-statement .statement-seal-box .supplier-seal{position:static!important;transform:none!important;margin:0!important;width:52px!important;height:52px!important}.yesform-statement .statement-seal-box .seal-generated{width:40px!important;height:40px!important}

/* 모바일에서도 환경설정 메뉴를 표시합니다. */
@media(max-width:800px){.sidebar-foot{display:block;margin:0;flex:none}.sidebar-foot small{display:none}.sidebar-foot .nav{padding:10px 8px;font-size:13px}}
.dialog-foot [hidden],.quote-terms-label[hidden],#quoteDialog .form-grid label[hidden]{display:none!important}@media(max-width:700px){#statementsPage .section-title{align-items:flex-start;gap:12px;flex-wrap:wrap}}
.yesform-statement{font-family:"Malgun Gothic",sans-serif;background:#fff;color:#111}.yesform-copy{--doc:#0645d8;color:var(--doc);border:2px solid var(--doc);font-size:9px}.yesform-copy.red{--doc:#ed1717}.yesform-copy h1{text-align:center;font-size:25px;letter-spacing:8px;font-weight:500;margin:0;padding:6px;border-bottom:2px solid var(--doc)}.yesform-copy h1 small{font-size:11px;letter-spacing:1px}.yesform-parties{display:grid;grid-template-columns:1fr 1.05fr}.party{display:grid;grid-template-columns:28px 1fr;min-height:122px}.customer-party{border-right:2px solid var(--doc)}.vertical{writing-mode:vertical-rl;display:grid;place-items:center;letter-spacing:5px;border-right:1px solid var(--doc);font-size:10px}.party-fields>div{display:grid;grid-template-columns:72px 1fr;min-height:30px;border-bottom:1px solid var(--doc)}.party-fields>div:last-child{border-bottom:0}.party-fields label,.party-fields span,.party-fields strong{display:flex;align-items:center;padding:3px 7px}.party-fields label{justify-content:center;text-align:center;border-right:1px solid var(--doc);font-weight:500}.party-fields strong{font-weight:600}.supplier-party .party-fields>div:nth-child(2),.supplier-party .party-fields>div:nth-child(4){grid-template-columns:72px 1fr 48px 1fr}.party-fields .mini{border-left:1px solid var(--doc)}.yesform-copy .seal{height:24px}.yesform-items{width:100%;min-width:0;margin:0;border-collapse:collapse;color:var(--doc);font-size:9px}.yesform-items th,.yesform-items td{height:19px;padding:2px 4px;text-align:center;border:1px solid var(--doc);border-left:0;border-bottom:0}.yesform-items th:last-child,.yesform-items td:last-child{border-right:0}.yesform-items th:nth-child(1),.yesform-items th:nth-child(2){width:28px}.yesform-items th:nth-child(3){width:27%}.yesform-items th:nth-child(4){width:16%}.yesform-items th:nth-child(5){width:12%}.yesform-items th:nth-child(6){width:13%}.yesform-items th:nth-child(7){width:16%}.yesform-items .left{text-align:left}.yesform-sign{display:grid;grid-template-columns:1fr .8fr 1fr 1.2fr 1fr 1.4fr;min-height:34px}.yesform-sign>*{display:grid;place-items:center;border-right:1px solid var(--doc);border-top:1px solid var(--doc)}.yesform-sign>*:last-child{border-right:0}.cut-line{border-top:1px solid #777;margin:17px 0}.document-dialog:has(.yesform-statement){width:min(940px,calc(100% - 28px));padding:22px}.document-dialog:has(.yesform-statement) .paper{padding:24px}

.customer-editor{width:100vw;max-width:none;height:100vh;max-height:none;border-radius:0;margin:0}.customer-editor .dialog-head{position:sticky;top:0;background:#fff;z-index:2}.customer-editor .dialog-body{max-width:1100px;width:100%;margin:0 auto;padding:30px}.customer-editor .dialog-foot{position:sticky;bottom:0;background:#fff;z-index:2}.customer-editor .dialog-foot .primary{min-width:150px}.customer-basic,.contact-editor{background:#fff;border:1px solid var(--line);border-radius:13px;padding:23px}.customer-basic h3,.contact-editor h3{margin:0 0 18px}.contact-editor{margin-top:18px}.contact-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.contact-title h3{margin-bottom:5px}.contact-title p{margin:0 0 16px;color:var(--muted);font-size:13px}.contact-edit-row{display:grid;grid-template-columns:1fr 1.5fr 1fr 78px 62px;gap:8px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:10px;margin-top:8px}.contact-edit-row input{width:100%}.contact-check,.contact-remove{height:42px;border:0;border-radius:8px;font-weight:750;cursor:pointer}.contact-check{background:#e9f4ec;color:var(--green)}.contact-edit-row.checked{border-color:#58a978;background:#f4fbf6}.contact-edit-row.checked .contact-check{background:var(--green);color:#fff}.contact-remove{background:#fff0ef;color:#b42318}.verify-line{display:flex;align-items:center;gap:12px;margin-top:16px}.verify-line small{color:var(--muted)}
@media(max-width:700px){.customer-editor .dialog-body{padding:16px}.customer-basic,.contact-editor{padding:16px}.contact-title{align-items:flex-start;flex-direction:column}.contact-edit-row{grid-template-columns:1fr 1fr}.contact-edit-row .contact-email,.contact-edit-row .contact-tel{grid-column:1/-1}.contact-check,.contact-remove{width:100%}}
@media(max-width:800px){.line{grid-template-columns:1fr 1fr 1fr 34px;gap:8px;padding:11px;margin-bottom:10px;border:1px solid var(--line);border-radius:11px;background:#fbfdfb}.line>*{min-width:0}.line-product{display:block;grid-column:1/4;grid-row:1}.line .remove{grid-column:4;grid-row:1;padding:0}.line-name{grid-column:1/-1;grid-row:2}.line-spec{grid-column:1/3;grid-row:3}.line-unit{grid-column:3/-1;grid-row:3}.line-qty{grid-column:1;grid-row:4}.line-price{grid-column:2/-1;grid-row:4}.line-total{display:block;grid-column:1/-1;grid-row:5;text-align:right;font-size:14px}}
.product-actions{display:flex;gap:8px;align-items:center}.products-notice:empty{display:none}.products-notice{padding:12px 14px;margin:0 0 16px;background:#e9f4ec;color:#176c3f;border-radius:8px;font-weight:750}@media(max-width:700px){.product-actions{flex-wrap:wrap;justify-content:flex-end}}
.data-delete-all{border:1px solid #f1c8c4;background:#fff5f4;color:#b42318;padding:10px 12px;border-radius:10px;font:inherit;font-weight:750;cursor:pointer}
.biz-document{position:relative;color:#111;font-family:"Malgun Gothic",Arial,sans-serif;font-size:12px}.biz-document h1{text-align:center;font-size:27px;letter-spacing:12px;text-decoration:underline;text-underline-offset:7px;margin:4px 0 18px}.doc-no{position:absolute;left:0;top:5px;font-size:11px}.doc-date{text-align:center;margin:-9px 0 12px}.doc-top{display:grid;grid-template-columns:1fr 1.45fr;border:2px solid #222}.recipient{padding:24px 17px;font-size:15px;display:flex;flex-direction:column;justify-content:center}.recipient p{font-size:12px;margin:16px 0 5px}.info-table{border-collapse:collapse;width:100%;font-size:10px}.info-table th,.info-table td{border:1px solid #333;padding:4px}.info-table th{background:#f1f1f1;text-align:center}.supplier-label{font-size:13px;width:22px}.seal{height:28px;vertical-align:middle;margin-left:7px}.amount-band{display:flex;justify-content:space-between;align-items:center;border:2px solid #222;border-top:0;padding:9px 13px;font-size:15px}.amount-band strong{font-size:18px}.items-table{border-collapse:collapse;width:100%;min-width:0;margin:10px 0 0;font-size:10px}.items-table th,.items-table td{border:1px solid #333;padding:5px 3px;text-align:center}.items-table th{background:#ededed}.items-table .left{text-align:left}.items-table .blank-row{height:28px}.items-table tfoot th,.items-table tfoot td{font-weight:700;background:#f5f5f5}.terms{border:1px solid #333;border-top:0;min-height:115px;padding:11px 14px}.terms p{margin:5px 0}.statement-totals{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #333;border-top:0}.statement-totals span{padding:9px;border-right:1px solid #333;text-align:center}.statement-totals span:last-child{border:0}.statement-totals b{display:block;margin-top:4px}.document-dialog .paper{padding:35px}.document-dialog{width:min(900px,calc(100% - 28px))}@media print{.biz-document{font-size:11px}.document-dialog .paper{padding:0}.biz-document h1{font-size:25px}}

/* 모바일 문서 확인 화면: 원래 문서 폭(720px)을 화면 폭에 맞춰 축소해 전체를 보여줍니다. */
@media screen and (max-width:800px){
.document-dialog,.document-dialog:has(.yesform-statement){width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;padding:44px 0 0!important;border-radius:0;overflow-x:hidden;overflow-y:auto}
.document-dialog .paper,.document-dialog:has(.yesform-statement) .paper{width:720px!important;max-width:none!important;min-height:0;margin:0 auto!important;padding:0!important;overflow:visible!important;zoom:var(--doc-zoom,.5)}
.document-dialog .doc-close{position:fixed;right:8px;top:5px;z-index:5;background:#fff;border-radius:50%;width:34px;height:34px;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.document-dialog .doc-actions{position:sticky;bottom:0;z-index:4;justify-content:center;background:#eef2ef;padding:10px 8px;border-top:1px solid var(--line)}
}

/* 홈 화면: 한 화면에 모두 보이도록 구성 */
#dashboardPage .quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
#dashboardPage .quick-link{border:1px solid var(--line);background:#f4faf5;color:var(--green);border-radius:12px;padding:16px 8px;min-height:64px;font:inherit;font-weight:750;line-height:1.35;word-break:keep-all;text-align:center;cursor:pointer}
#dashboardPage .quick-link:hover{background:#e9f4ec}
@media(max-width:800px){
#dashboardPage.page{padding-top:14px}
#dashboardPage .stats{grid-template-columns:repeat(3,1fr);gap:8px}
#dashboardPage .stats article{padding:12px 10px}
#dashboardPage .stats span{font-size:12px}
#dashboardPage .stats strong{font-size:22px;margin:6px 0 4px}
#dashboardPage .stats small{font-size:11px;line-height:1.35}
#dashboardPage .two-col{grid-template-columns:1fr;gap:10px;margin-top:10px}
#dashboardPage .panel{padding:14px}
#dashboardPage .recent{padding:10px 2px}
#recentQuotes .recent:nth-child(n+4){display:none}
#dashboardPage .guide p{margin:6px 0 0;font-size:13px;line-height:1.45}
#dashboardPage .quick-links{gap:8px;margin-top:10px}
#dashboardPage .quick-link{padding:12px 4px;min-height:60px;font-size:13px}
}

/* 견적서·거래명세표 검색창: 거래처·작성일·상태만 남기고 작게 */
.document-toolbar label[hidden]{display:none}
.document-toolbar{grid-template-columns:minmax(180px,280px) 150px 120px auto;justify-content:start;gap:8px;padding:9px 11px;margin-bottom:12px}
.document-toolbar label{gap:4px;font-size:11px}
.document-toolbar input,.document-toolbar select{padding:8px 10px}
.document-toolbar .clear-filters{height:36px;padding:0 12px}
@media(max-width:700px){.document-toolbar{grid-template-columns:1fr 1fr auto}.document-toolbar label:has(#quoteCustomerSearch),.document-toolbar label:has(#statementCustomerSearch){grid-column:1/-1}.document-toolbar .clear-filters{grid-column:auto}}

/* 홈 화면 광고 영역: 폰에서도 한 화면에 들어가도록 낮게 */
@media(max-width:800px){#dashboardPage .ad-slot{margin-top:10px;min-height:72px}}

/* 품목 추가/수정 창: 단가 입력 중 단위를 함께 표시 */
.price-row{display:flex;align-items:center;gap:8px;margin-top:7px}
.price-row input{flex:1;min-width:0;margin-top:0}
.price-unit{white-space:nowrap;color:var(--green);font-size:16px;font-weight:800}
.price-preview{display:block;margin-top:8px;padding:9px 11px;background:#f2f7f3;border-radius:8px;color:var(--green);font-size:17px;font-weight:800}

/* 품목 목록: 번호가 있는 한 줄 목록 */
.list-tools{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.list-tools input{flex:1;min-width:0;max-width:360px}
.list-tools .muted{white-space:nowrap}
#productsGrid{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
#productsGrid>p{margin:0;padding:18px}
.prod-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}
.prod-row:last-child{border-bottom:0}
.prod-no{color:var(--muted);font-weight:700;text-align:center}
.prod-main b{display:block;overflow-wrap:anywhere}
.prod-main span{color:var(--muted);font-size:13px}
.prod-price{font-weight:800;text-align:right;white-space:nowrap}
.prod-price small{color:var(--muted);font-weight:600;font-size:13px}
.prod-actions{white-space:nowrap}
.prod-actions .link{padding:6px 4px}
.list-more{display:block;width:100%;margin-top:10px;padding:12px}
.list-more[hidden]{display:none}
@media(max-width:700px){.prod-row{grid-template-columns:30px minmax(0,1fr) auto;gap:6px 10px}.prod-actions{grid-column:2/-1;text-align:right}}

/* 견적서·거래명세표 목록: 작성일 · 거래처 · 합계금액 · 상태 (가로 스크롤 없이 확인/수정/삭제가 보이게) */
#quotesPage table,#statementsPage table{min-width:0}
#quotesPage td:nth-child(3),#statementsPage td:nth-child(3){white-space:nowrap}
@media(max-width:800px){
#quotesPage thead,#statementsPage thead{display:none}
#quotesPage table,#quotesPage tbody,#statementsPage table,#statementsPage tbody{display:block;width:100%}
#quotesPage tr,#statementsPage tr{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:6px 10px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line)}
#quotesPage tr:last-child,#statementsPage tr:last-child{border-bottom:0}
#quotesPage td,#statementsPage td{display:block;padding:0;border:0;font-size:14px;text-align:left}
#quotesPage td:nth-child(1),#statementsPage td:nth-child(1){grid-column:1;grid-row:1;color:var(--muted);font-size:13px;white-space:nowrap}
#quotesPage td:nth-child(2),#statementsPage td:nth-child(2){grid-column:2;grid-row:1;font-weight:800;overflow-wrap:anywhere}
#quotesPage td:nth-child(3),#statementsPage td:nth-child(3){grid-column:3;grid-row:1;font-weight:800;text-align:right}
#quotesPage td:nth-child(4),#statementsPage td:nth-child(4){grid-column:1;grid-row:2}
#quotesPage td.document-row-actions,#statementsPage td.document-row-actions{grid-column:2/-1;grid-row:2;text-align:right;white-space:nowrap}
#quotesPage td[colspan],#statementsPage td[colspan]{grid-column:1/-1!important;grid-row:auto!important;text-align:center;color:var(--muted)}
}

/* 견적서·거래명세표: 상단 제목/설명 중복 제거 (위 제목과 같아서 새 견적/작성 버튼만 남김) */
#quotesPage>.section-title>div:first-child,#statementsPage>.section-title>div:first-child{display:none}
#quotesPage>.section-title,#statementsPage>.section-title{justify-content:flex-start;margin:0 0 10px}

/* 견적서·거래명세표: 새 견적/작성 버튼을 오른쪽 위 제목줄로, 초기화 버튼 제거, 목록은 3건 높이로 스크롤 */
#quotesPage,#statementsPage{position:relative;padding-top:0}
#quotesPage>.section-title,#statementsPage>.section-title{position:absolute;top:-56px;right:0;margin:0;z-index:2}
#quotesPage>.section-title .primary,#statementsPage>.section-title .primary{padding:0 14px;height:38px;font-size:14px}
.document-toolbar .clear-filters{display:none}
@media(max-width:800px){
#quotesPage .document-toolbar,#statementsPage .document-toolbar{grid-template-columns:1fr 1fr;margin:4px 0 10px}
#quotesPage .table-wrap,#statementsPage .table-wrap{max-height:250px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
}
/* 홈: 한 화면에 광고 영역까지 보이게 더 압축 */
@media(max-width:800px){
body:has(#dashboardPage.active) header.top{padding:6px 0}
body:has(#dashboardPage.active) #crumb{display:none}
body:has(#dashboardPage.active) #pageTitle{font-size:21px}
#dashboardPage.page{padding-top:8px}
#dashboardPage .stats small{display:none}
#dashboardPage .stats article{padding:9px 10px}
#dashboardPage .stats strong{font-size:20px;margin:3px 0 0}
#dashboardPage .two-col{gap:8px;margin-top:8px}
#dashboardPage .panel{padding:10px 14px}
#dashboardPage .panel h2{font-size:17px}
#dashboardPage .recent{padding:7px 2px}
#dashboardPage .guide p{display:none}
#dashboardPage .quick-links{margin-top:8px}
#dashboardPage .quick-link{min-height:46px;padding:8px 4px}
#dashboardPage .ad-slot{margin-top:8px;min-height:56px}
}

/* 견적 작성: 검색 후 선택하는 품목·거래처 창 */
.search-choice{display:flex;align-items:center;gap:10px;margin-top:7px}.search-choice b{font-size:14px;overflow-wrap:anywhere}.picker-dialog{width:min(600px,calc(100% - 28px));height:min(560px,calc(100dvh - 28px))}.picker-dialog .dialog-body{display:grid;grid-template-rows:auto minmax(0,1fr);gap:13px;height:calc(100% - 85px)}.picker-dialog input{width:100%}.picker-results{display:grid;align-content:start;gap:7px;min-height:0;overflow:auto}.picker-result{display:grid;gap:4px;width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:13px;text-align:left;cursor:pointer;font:inherit}.picker-result:hover,.picker-result:focus{border-color:var(--green);background:#f1f8f3}.picker-result span{color:var(--muted);font-size:13px}.picker-empty{margin:0;padding:18px;text-align:center}.line-product{white-space:nowrap}.line .line-product{padding:9px 8px}
@media(max-width:800px){.search-choice{align-items:flex-start;flex-direction:column}.line .line-product{display:block;grid-column:1/4;grid-row:1}.picker-dialog{width:min(600px,calc(100% - 20px))}}

/* 거래명세표: 공급받는자 영역을 1/3으로 줄이고 공급자·서명란의 선을 정렬합니다. */
.yesform-statement .yesform-parties{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.yesform-statement .party{min-height:104px}
.yesform-statement .party-fields>div{min-height:26px}
.yesform-statement .supplier-party .party-fields>div:nth-child(2){grid-template-columns:64px minmax(0,1.35fr) 42px minmax(44px,.7fr) 54px;min-height:30px}
.yesform-statement .statement-owner-name{padding-left:5px;padding-right:5px}
.yesform-statement .statement-seal-box{height:30px}
.yesform-statement .statement-seal-box .supplier-seal{width:42px!important;height:42px!important}
.yesform-statement .statement-seal-box .seal-generated{width:34px!important;height:34px!important}
.yesform-statement .yesform-sign{grid-template-columns:62px minmax(0,1fr) 62px minmax(0,1fr);min-height:30px}
.yesform-statement .yesform-sign>*{border-top:1px solid var(--doc);border-right:1px solid var(--doc)}
.yesform-statement .yesform-sign span{font-weight:600}
.yesform-statement .yesform-sign b{display:block;min-width:0}
@media print{.yesform-statement .yesform-parties{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.yesform-statement .party{min-height:94px}.yesform-statement .party-fields>div{min-height:23px}.yesform-statement .supplier-party .party-fields>div:nth-child(2){min-height:26px}.yesform-statement .yesform-sign{min-height:26px}}

/* 공급받는자·공급자는 같은 폭으로, 상호·성명·도장 행은 고정 칸으로 정렬합니다. */
.yesform-statement .yesform-parties{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.yesform-statement .supplier-party .party-fields>div:nth-child(2){grid-template-columns:64px minmax(0,1.2fr) 44px minmax(68px,.8fr) 46px}
.yesform-statement .supplier-party .party-fields>div:nth-child(4),.yesform-statement .supplier-party .party-fields>div:nth-child(5){grid-template-columns:64px minmax(0,1fr) 44px minmax(0,1fr)}
@media print{.yesform-statement .yesform-parties{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* 공급자 정보의 모든 세로 구분선을 같은 열에 고정합니다. */
.yesform-statement .supplier-party .party-fields>div{grid-template-columns:64px minmax(0,1fr)}
.yesform-statement .supplier-party .party-fields>div:nth-child(2){grid-template-columns:64px 118px 44px minmax(52px,1fr) 46px}
.yesform-statement .supplier-party .party-fields>div:nth-child(4),.yesform-statement .supplier-party .party-fields>div:nth-child(5){grid-template-columns:64px 118px 44px minmax(0,1fr)}

/* 홈 화면 광고영역 위: 휴대폰 바로가기 추가 안내 */
.mobile-home-guide{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:13px}.mobile-home-guide h2{margin:0 0 5px;font-size:17px}.mobile-home-guide .crumb{margin-bottom:4px}.mobile-home-guide a{color:var(--green);font-size:13px;font-weight:750}.home-guide-steps{display:flex;gap:10px}.home-guide-steps p{display:grid;gap:4px;min-width:205px;margin:0;padding:10px 12px;border-radius:9px;background:#f3f8f4;font-size:13px}.home-guide-steps b{color:var(--green)}.home-guide-steps span{color:var(--muted)}@media(max-width:800px){.mobile-home-guide{display:grid;gap:12px;margin-top:10px;padding:14px}.mobile-home-guide h2{font-size:16px}.home-guide-steps{display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-guide-steps p{min-width:0;padding:9px;font-size:12px}}
