.contract-print-page{font-family:'Malgun Gothic','맑은 고딕',sans-serif;color:#111;margin:0;background:#e9edf2}.print-controls{padding:18px;display:flex;gap:18px;align-items:center;justify-content:center;background:#122b48;color:white;font-size:14px}.print-controls button{font:inherit;padding:9px 15px;cursor:pointer}.contract-paper{max-width:800px;margin:24px auto;padding:48px;background:white;line-height:1.85;font-size:14px;overflow-wrap:anywhere}.contract-paper h1{text-align:center;font-size:24px;margin:24px 0}.contract-paper h2{font-size:16px;margin:24px 0 10px}.contract-paper p{margin:8px 0}.contract-paper table{border-collapse:collapse;table-layout:fixed;width:100%;margin:16px 0;font-size:13px}.contract-paper th,.contract-paper td{border:1px solid #8e969f;padding:9px;vertical-align:top;white-space:normal;overflow-wrap:anywhere}.contract-paper th{background:#f0f2f5}.test-ribbon{border:2px solid #a04721;padding:10px;color:#873513;font-size:13px;font-weight:bold;text-align:center}.record-section{font-size:12px}.privacy-section{margin-top:35px}.print-link{text-decoration:none}.contract-form-grid{display:grid;gap:20px}.contract-save{margin-top:20px}.contract-toolbar{display:flex;flex-direction:column;gap:16px;margin-bottom:22px}.contract-buttons{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.contract-consents{display:grid;gap:12px;margin:20px 0}.contract-checks{display:grid;gap:15px;margin:20px 0}.contract-checks label{display:flex;gap:10px;align-items:center;font-weight:400}.contract-checks input{flex-shrink:0}.contract-paper .test-ribbon{line-height:1.5}
@page{size:A4;margin:18mm 16mm 20mm}
@media print{body{background:white}.print-controls{display:none}.contract-paper{max-width:none;margin:0;padding:0;font-size:10pt;line-height:1.6}.contract-paper h1{font-size:18pt}.contract-paper h2{font-size:11pt;break-after:avoid}.contract-paper p{orphans:3;widows:3}.contract-paper table{font-size:9pt}.contract-paper tr{break-inside:avoid}.contract-paper thead{display:table-header-group}.privacy-section,.record-section{break-before:page}.test-ribbon{font-size:9pt}.record-section{font-size:9pt}}
@media(max-width:720px){.contract-paper{padding:22px 14px}.contract-paper table{font-size:12px}.print-controls{flex-wrap:wrap}}

@media print{.renewal-print-item{break-before:page}}

#renewal-form .panel,#renewal-preview .panel{margin-bottom:20px}#renewal-counts{padding:18px 0;font-weight:600}#renewal-table{margin-top:18px}

#agreement-excel{margin-bottom:22px}#agreement-excel-controls,#agreement-excel-preview{margin-top:20px}#agreement-excel details{margin:18px 0}#agreement-excel summary{cursor:pointer;margin-bottom:14px}#agreement-excel-preview td{white-space:normal;overflow-wrap:anywhere}


.electronic-signature-table{break-inside:avoid}.electronic-signature-table td{vertical-align:middle}.electronic-signature-done{display:inline-flex;align-items:center;gap:8px;color:#16803c;font-weight:700}.electronic-signature-done svg{flex:0 0 24px}.electronic-signature-pending{color:#666}@media print{.electronic-signature-done{print-color-adjust:exact;-webkit-print-color-adjust:exact}.electronic-signature-done svg{width:19px;height:19px}}

.contract-paper table.worker-signature-row{width:100%;table-layout:fixed;border-collapse:collapse;break-inside:avoid;margin:16px 0}.contract-paper .worker-signature-row td{border:1px solid #8e969f;padding:14px 16px;vertical-align:middle;background:#fff}.contract-paper .worker-signature-row td:first-child{width:55%;text-align:left}.contract-paper .worker-signature-row td:last-child{width:45%;text-align:center}.contract-paper .worker-signature-row .electronic-signature-done{vertical-align:middle;justify-content:center}@media print{.contract-paper .worker-signature-row td{padding:10px 12px}}
.contract-paper .company-seal-table th:first-child{width:20%}.contract-paper .company-seal-table th:nth-child(2){width:48%}.contract-paper .company-seal-table th:last-child{width:32%}.contract-paper .company-seal-table td{vertical-align:middle}.contract-paper .company-seal-table td:last-child{text-align:center}.company-seal-label{display:block;font-size:12px;color:#333}.company-contract-seal{object-fit:contain;break-inside:avoid}.company-seal-table tr{break-inside:avoid}@media print{.company-contract-seal{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Contract party grouping approved 2026-09-21. Applies to screen and print. */
.contract-paper table.contract-party-group{border-collapse:separate;border-spacing:0;border:1px solid #d6dde7;border-radius:6px;overflow:hidden;margin:16px 0;break-inside:avoid}
.contract-paper .contract-party-group th,.contract-paper .contract-party-group td{padding:14px 16px;border:0;border-bottom:1px solid #e4e9f0;vertical-align:middle;line-height:1.6;text-align:left}
.contract-paper .contract-party-group tr:last-child>*{border-bottom:0}
.contract-paper .contract-party-group .party-group-label{width:22%;background:#edf3ff;color:#214f99;text-align:center;border-right:1px solid #d6dde7;border-bottom:0;font-size:16px}
.contract-paper .contract-party-worker .party-group-label{background:#ecf7f3;color:#236851}
.contract-paper .contract-party-group .party-field-label{width:19%;background:#fafbfd;color:#637084;font-weight:400;border-right:1px solid #e4e9f0}
@media(max-width:650px){.contract-paper .contract-party-group th,.contract-paper .contract-party-group td{padding:10px 8px}.contract-paper .contract-party-group .party-group-label{font-size:13px}}
@media print{.contract-paper .contract-party-group th,.contract-paper .contract-party-group td{padding:8px 10px}.contract-paper .contract-party-group .party-group-label{font-size:10pt}.contract-paper .contract-party-group th{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
