.service-tabs { display: flex; gap: .6rem; margin: 1rem 0; }
.service-summary { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 1rem; margin: 1rem 0; }
.service-summary > div { background: #fff; border: 1px solid var(--border); padding: 1rem; border-radius: 8px; }
.service-summary span, .service-summary strong { display: block; }
.service-summary span { color: var(--txt2); font-size: .8rem; }
.service-summary strong { margin-top: .4rem; font-size: 1.4rem; color: #17465d; }
.service-editor table { width: 100%; border-collapse: collapse; }
.service-editor td { min-width: 160px; vertical-align: bottom; padding: .4rem; border-bottom: 1px solid var(--border); }
.service-editor td:last-child { min-width: 40px; }
.service-editor .fld { margin: 0; }
.service-editor .fld span { font-size: .72rem; }
.service-editor input, .service-editor select { width: 100%; min-width: 110px; }
.service-inputs h3 { margin-bottom: 1rem; }
.service-inputs .fld span { font-size: .82rem; color: var(--txt2); }
.service-inputs > p { margin: .8rem 0; }
.service-stamp { padding: .5rem; margin-bottom: 1rem; text-align: center; border: 1px solid #d5b894; color: #81541b; font: 700 .8rem var(--sans); letter-spacing: .06em; }
.service-narrative { white-space: pre-wrap; overflow-wrap: anywhere; margin-bottom: 1rem; }
.service-schedule { margin: 1.5rem 0; }
.nta-item { margin: .8rem 0; padding: .8rem; border: 1px solid var(--border, #dce3ed); border-radius: 6px; }
.nta-item summary { cursor: pointer; font-weight: 600; padding: .4rem 0; }
.nta-item[open] summary { margin-bottom: .8rem; }
.service-schedule h3 { margin-bottom: .5rem; }
.service-table { font-size: .8rem; }
.service-table th { white-space: normal; }
.service-table td { overflow-wrap: anywhere; }
.service-signature { margin-top: 2rem; }
.nta-entry { padding: 1rem 0; border-bottom: 1px solid var(--border); }
.nta-report-page { max-width: 210mm; margin: 1.5rem auto; padding: 18mm; }
.nta-report-page .service-narrative { font-size: 10pt; line-height: 1.5; }
.nta-report-page h3 { font-size: 11pt; margin: .8rem 0 .3rem; }
.nta-report-page .service-table { width: 100%; }
.nta-report-page .service-table td:last-child { white-space: pre-wrap; }
@page nta-report { size: A4 portrait; margin: 16mm; }
@media print {
  .nta-report-page { page: nta-report; width: 100%; max-width: none; margin: 0; padding: 0; box-shadow: none; border: 0; }
  .nta-report-page + .nta-report-page { break-before: page; page-break-before: always; }
  .nta-report-page table { width: 100%; font-size: 9pt; }
  .nta-report-page th, .nta-report-page td { padding: 5px; }
  .nta-report-page thead { display: table-header-group; }
  .nta-report-page tr, .nta-report-page .service-signature { break-inside: avoid; }
  .nta-notes-page table { table-layout: fixed; font-size: 8.5pt; line-height: 1.25; }
  .nta-notes-page th:first-child { width: 28%; }
  .nta-notes-page th:nth-child(2), .nta-notes-page th:nth-child(3) { width: 13%; }
  .nta-notes-page th:last-child { width: 46%; }
  .nta-notes-page th, .nta-notes-page td { padding: 3px; }
}
@page service-report { size: A4 landscape; margin: 12mm; }
@media print {
  .service-inputs, .service-tabs, .service-summary { display: none !important; }
  .service-paper { width: 100%; page: service-report; }
  .service-paper .service-stamp { color: #333; border-color: #555; }
  .service-paper .service-schedule { break-before: auto; }
  .service-paper .service-schedule h3 { break-after: avoid; }
  .service-paper table { width: 100%; font-size: 7pt; }
  .service-paper th, .service-paper td { padding: 3px; min-width: 0 !important; }
  .service-paper thead { display: table-header-group; }
  .service-paper tr { break-inside: avoid; }
}
.networth-certificate { max-width:210mm; margin:24px auto; padding:18mm; font-family:var(--font-body,'Times New Roman'),serif; color:#18263b; }
.networth-header { text-align:center; border-bottom:1px solid #263b52; padding-bottom:16px; margin-bottom:14px; }
.networth-header h1 { font-size:17pt; letter-spacing:.03em; margin:15px 0 12px; }
.networth-header h2 { font-size:13pt; margin:8px 0; }
.networth-header p { font-size:10pt; margin:5px 0; text-align:center; }
.networth-firm { font-weight:700; font-size:11pt; }
.networth-meta { display:flex; justify-content:space-between; font-size:9pt; margin:14px 0; }
.certificate-wording { font-size:11pt; line-height:1.6; margin:22px 0; }
.networth-statement { width:100%; table-layout:fixed; margin:18px 0; }
.networth-statement th:first-child { width:56%; }
.networth-statement th,.networth-statement td { font-size:10pt; padding:9px 6px; }
.networth-statement th { text-transform:none; color:#18263b; background:#f5f7fa; }
.networth-statement .r-tot { font-weight:700; }
.networth-statement .r-tot td.num { border-top:1px solid #263b52; border-bottom:3px double #263b52; }
.networth-statement .num { text-align:right; font-variant-numeric:tabular-nums; }
.networth-formula { font-size:9pt; color:#475569; margin:12px 0; }
.networth-signature { margin-top:18mm; font-size:10pt; line-height:1.6; break-inside:avoid; }
.networth-signature .sig-line { width:58mm; border-top:1px solid #475569; margin-bottom:6px; }
.certificate-warning { color:#b42318; padding:8px 0; }
.networth-editor td:first-child { width:65%; }
.networth-editor .fld>span { display:none; }
@media print {
  @page networth-certificate { size:A4 portrait; margin:16mm 18mm; }
  .networth-certificate { page:networth-certificate; padding:0; width:auto; max-width:none; margin:0; border:0; box-shadow:none; color:#111; }
  .networth-certificate th,.networth-certificate td { padding:2.2mm 1.2mm; font-size:10pt; }
  .networth-certificate thead { display:table-header-group; }
  .networth-certificate tr { break-inside:avoid; }
  .networth-certificate .r-tot { break-before:avoid; }
}
