:is(.sign-document,.contract-document).agreement-paper {
 border-top: 3px solid #c94b14;
 border-radius: 3px;
 background: #fff;
}

.agreement-paper .agreement-section { margin: 0 0 26px; min-width: 0; }
.agreement-paper .agreement-section > .agreement-heading {
 margin: 0 0 10px;
 padding: 7px 10px;
 border-left: 3px solid #c94b14;
 background: #f0f0f0;
 color: #202735;
 font-size: 16px;
 font-weight: 750;
 line-height: 1.6;
 overflow-wrap: anywhere;
}
.agreement-paper :is(.agreement-clause,.agreement-part) { margin: 14px 0; min-width: 0; }
.agreement-paper :is(.agreement-clause,.agreement-part) > .agreement-heading {
 margin: 0 0 6px;
 color: #202735;
 font-size: 15px;
 font-weight: 750;
 line-height: 1.65;
 overflow-wrap: anywhere;
}
.agreement-paper .agreement-clause > .agreement-heading {
 padding: 6px 9px;
 border-bottom: 1px solid #dedfe2;
 background: #f6f6f7;
}
.agreement-paper .agreement-paper-title {
 margin: 12px 0;
 color: #202735;
 font-size: clamp(20px, 4vw, 28px);
 font-weight: 750;
 line-height: 1.5;
}
.agreement-paper .agreement-text {
 margin: 0 0 10px;
 color: #202735;
 font-size: 15px;
 line-height: 1.85;
 white-space: pre-wrap;
 overflow-wrap: anywhere;
}
.agreement-paper .agreement-terms > .agreement-text { margin-bottom: 16px; }
.agreement-paper .agreement-terms > .agreement-consent { margin-top: 26px; }
.agreement-paper .agreement-table {
 width: 100%;
 margin: 10px 0;
 border-collapse: collapse;
 table-layout: fixed;
 font-size: 14px;
 line-height: 1.75;
}
.agreement-paper .agreement-table :is(th,td) {
 padding: 8px 10px;
 border: 1px solid #d7d9de;
 color: #202735;
 text-align: left;
 vertical-align: top;
 white-space: pre-wrap;
 overflow-wrap: anywhere;
}
.agreement-paper .agreement-table th { background: #f0f0f0; font-weight: 650; }
.agreement-paper .agreement-table th:first-child { width: 34%; }
.agreement-paper .agreement-fields th:first-child { width: 27%; }
.agreement-paper .agreement-parties {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 16px;
}
.agreement-paper .agreement-parties .agreement-fields th:first-child { width: 33%; }
.agreement-paper .agreement-identity-details > summary { cursor: pointer; }
.agreement-paper .agreement-identity-details > summary::after {
 content: " 자세히 보기";
 color: #274fb3;
 font-weight: 650;
}
.agreement-paper .agreement-identity-details[open] > summary::after { content: " 접기"; }
.agreement-paper .agreement-identity-details > p { margin: 7px 0 0; }
@media (max-width: 760px) {
 .agreement-paper .agreement-parties { grid-template-columns: minmax(0, 1fr); gap: 0; }
 .agreement-paper .agreement-fields th:first-child { width: 34%; }
 .agreement-paper .agreement-table :is(th,td) { padding: 7px 8px; }
}
@media print {
 .agreement-paper .agreement-table tr { break-inside: avoid; }
 .agreement-paper .agreement-heading { break-after: avoid; }
}
