/* Explicit company font selections take precedence over screen/print language
   defaults. These rules only affect report papers with font settings. */
.paper[style*="--font-"] { font-family: var(--font-body) !important; }
.paper[style*="--font-"] :is(p,li,.st-addr,.st-period,.st-cur,.sign-place,.as-per-report,.sig-desg,.sig-name) { font-family: var(--font-body) !important; }
.paper[style*="--font-"] :is(.st-co,.note-h,.sign-for) { font-family: var(--font-heading) !important; }
.paper[style*="--font-"] :is(.st-title,.note-sub,.sub-h) { font-family: var(--font-title) !important; }
.paper[style*="--font-"] table.st,
.paper[style*="--font-"] table.st :is(th,td) { font-family: var(--font-number) !important; }
/* Formal financial statements; independent of the application colour theme. */
/* Management's mapping review uses a landscape schedule, separate from the FS pack. */
.mapping-review { max-width: 1320px; color: #202020; }
.mapping-review .st-head { text-align: center; border: 0; margin-bottom: 20px; }
.mapping-review .st-co { color: #111; font-size: 17pt; }
.mapping-review .st-title { color: #222; font-size: 13pt; }
.mapping-review .st-title::after { display: none; }
.mapping-review p { font: 10pt/1.5 var(--sans); margin: 10px 0; }
.mapping-review h3 { font-size: 12pt; color: #222; margin: 20px 0 8px; break-after: avoid; }
.mapping-review-table { table-layout: fixed; width: 100%; font: 9pt/1.4 var(--sans); }
.mapping-review-table th { color: #222; background: #f1f4f8; padding: 8px 5px; font-size: 8.5pt; text-transform: none; letter-spacing: 0; }
.mapping-review-table td { padding: 7px 5px; border-bottom: 1px solid #d5dbe3; vertical-align: top; white-space: normal; overflow-wrap: anywhere; }
.mapping-review-table td strong { font-weight: 600; }
.mapping-review-table small { display: block; color: #555; font-size: 8pt; }
.mapping-review-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.mapping-review-table [data-mapping-status="unmapped"] td:nth-child(4) { font-weight: 700; text-decoration: underline; }
.mapping-review-table [data-mapping-status="excluded"] { color: #555; background: #f6f6f6; }
.mapping-review-table .r-tot td { border-top: 1px solid #333; border-bottom: 3px double #333; font-weight: 700; color: #111; }
.mapping-review-foot { border-top: 1px solid #aaa; padding-top: 8px; }
html[lang="ne"] #paper-mapping-report,
html[lang="ne"] #paper-mapping-report table,
html[lang="ne"] #paper-mapping-report th,
html[lang="ne"] #paper-mapping-report td,
html[lang="ne"] #paper-mapping-report p { font-family: 'Nirmala UI', 'Mangal', sans-serif; }

/* Audit prose has its own readable rhythm instead of statement-table density. */
#paper-audit { color: #202020; max-width: 210mm; padding: 18mm; }
#paper-audit .aud-letterhead { text-align: center; margin: 0 0 5mm; }
#paper-audit .aud-letterhead img { max-height: 30mm; max-width: 100%; }
#paper-audit .aud { font-family: var(--font-body); font-size: 11pt; line-height: 1.5; }
#paper-audit .st-head { border: 0; padding: 0 0 5mm; margin: 0 0 5mm; border-bottom: 1px solid #777; }
#paper-audit .st-title { font-family: var(--font-heading); color: #111; font-size: 14pt; line-height: 1.35; margin: 0; letter-spacing: .025em; }
#paper-audit .st-title::after { display: none; }
#paper-audit .aud h3 { font: bold 12pt/1.4 var(--font-heading); color: #111; text-transform: none; letter-spacing: 0; border-bottom: 1px solid #aaa; margin: 6mm 0 3mm; padding: 0 0 2mm; }
#paper-audit .aud h4 { font: bold 11pt/1.4 var(--font-title); color: #111; margin: 5mm 0 2mm; }
#paper-audit .aud p { font-size: 11pt; line-height: 1.5; margin: 0 0 3.2mm; text-align: justify; text-justify: inter-word; hyphens: none; orphans: 3; widows: 3; }
#paper-audit .aud .audit-addressee { margin-bottom: 5mm; }
#paper-audit .aud ul, #paper-audit .aud ol { margin: 2mm 0 4mm; padding-left: 6mm; }
#paper-audit .aud li { font-size: 11pt; line-height: 1.5; margin: 0 0 2.5mm; padding-left: 1mm; text-align: justify; text-justify: inter-word; hyphens: none; orphans: 3; widows: 3; break-inside: avoid; }
#paper-audit .aud h3, #paper-audit .aud h4 { break-after: avoid; break-inside: avoid; }
#paper-audit .kam { font-size: 10pt; break-inside: auto; }
#paper-audit .kam th { background: #f4f4f4; color: #222; padding: 3mm; font-size: 10pt; }
#paper-audit .kam td { padding: 3mm; vertical-align: top; }
#paper-audit .kam td p { font-size: 10pt; margin: 2mm 0; }
#paper-audit .aud-sig { break-inside: avoid; margin-top: 8mm; font: 10pt/1.7 var(--font-body); }
#paper-audit .aud-sig .sig-line { margin-top: 16mm; width: 55mm; border-top: 1px solid #333; }
#paper-audit .aud-sig .sig-name { font-size: 11pt; font-weight: bold; margin-top: 1.5mm; }
#paper-audit .aud-sig .sig-role { font-size: 10pt; }
#paper-audit .aud-sig .sig-firm { font-size: 10.5pt; font-weight: bold; margin-top: .5mm; }
#paper-audit .aud-sig .sig-ca { font-size: 10pt; letter-spacing: .03em; }
#paper-audit .aud-sig .sig-details { font-size: 9pt; color: #333; }
html[lang="ne"] #paper-audit { --font-body: 'Nirmala UI', 'Mangal', sans-serif; --font-heading: 'Nirmala UI', 'Mangal', sans-serif; --font-title: 'Nirmala UI', 'Mangal', sans-serif; }
html[lang="ne"] #paper-audit .aud p, html[lang="ne"] #paper-audit .aud li { font-family: var(--font-body); }

.financial-paper { color: #202020; line-height: 1.4; }
.financial-paper::before { display: none; }
.financial-paper .st-head { border: 0; padding: 0; margin: 0 0 18px; text-align: center; }
.financial-paper .st-co { color: #161616; font-size: 15pt; line-height: 1.3; letter-spacing: .015em; }
.financial-paper .st-addr { color: #444; font-size: 9pt; margin-top: 3px; }
.financial-paper .st-title { color: #222; font-size: 11pt; line-height: 1.35; margin: 9px 0 3px; letter-spacing: .015em; }
.financial-paper .st-title::after { display: none; }
.financial-paper .st-period { color: #333; font-size: 10pt; margin-top: 2px; }
.financial-paper .st-cur { color: #444; font-size: 9pt; margin-top: 3px; }
.financial-paper table.st { color: #222; font-size: 10pt; line-height: 1.35; }
.financial-paper table.st th { background: transparent; color: #222; border-top: 1px solid #444; border-bottom: 1px solid #444; font-size: 9pt; letter-spacing: 0; text-transform: none; padding: 7px 5px; }
.financial-paper table.st td { padding: 4px 5px; }
.financial-paper table.st .note { text-align: center; color: #333; width: 8%; font-size: 9pt; }
.financial-paper table.st .num { font-variant-numeric: tabular-nums; font-feature-settings: 'tnum'; }
.financial-paper > table.st > thead .num { width: 22%; }
.financial-paper table.st .r-h td { font-size: 10pt; padding-top: 14px; padding-bottom: 5px; color: #181818; border: 0; letter-spacing: .01em; }
.financial-paper table.st .r-sec td { font-size: 10pt; font-style: normal; color: #222; padding-top: 9px; border: 0; }
.financial-paper table.st .r-line td { border: 0; background: transparent !important; }
.financial-paper table.st .r-line td.part { padding-left: 15px; }
.financial-paper table.st .r-sub td, .financial-paper table.st .r-sectot td { color: #222; border: 0; font-size: 10pt; padding-top: 6px; }
.financial-paper table.st .r-sub td.num, .financial-paper table.st .r-sectot td.num { border-top: 1px solid #777; }
.financial-paper table.st .r-tot td { color: #111; border: 0; padding-top: 7px; padding-bottom: 7px; font-size: 10pt; }
.financial-paper table.st .r-tot td.num { border-top: 1px solid #333; border-bottom: 3px double #333; }
.financial-paper .note-h, .financial-paper .nno, .financial-paper .note-sub { color: #222; }
.financial-paper .note-h { border-color: #aaa; }
.financial-paper .note-sub { border: 0; padding-left: 0; }
.note-editor details { border-top: 1px solid #d6deea; padding: .8rem 0; }
.note-editor summary { cursor: pointer; font-weight: 600; color: #22334d; }
.note-editor-fields { display: grid; gap: 1rem; padding-top: 1rem; }
.financial-paper .note-topic .note-h { margin-bottom: .45rem; }
.financial-paper .note-topic .note-sub { font-size: 1em; }
.financial-paper .note-detail-table, .financial-paper .note-classification { table-layout: fixed; }
.financial-paper .note-detail-table .num, .financial-paper .note-classification .num { width: 22%; }
.financial-paper .note-detail-table .part { overflow-wrap: anywhere; }
/* A layout table reserves the full header on every notes page without
   fixed-position overlays, so long company names never cover disclosures. */
#paper-notes .notes-document { width: 100%; table-layout: fixed; border-collapse: collapse; font: inherit; }
#paper-notes .notes-document > thead > tr > td,
#paper-notes .notes-document > tbody > tr > td { padding: 0; border: 0; vertical-align: top; background: none; }
#paper-notes .notes-document > thead .st-head { padding-bottom: 5mm; margin-bottom: 4mm; border-bottom: 1px solid #999; }
.notes-screen-footer { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid #999; padding-top: 10px; margin-top: 24px; font: 8pt/1.5 var(--sans); color: #555; }
html[lang="ne"] #paper-notes {
  --font-body: 'Nirmala UI', 'Mangal', 'Noto Sans Devanagari', sans-serif;
  --font-heading: 'Nirmala UI', 'Mangal', 'Noto Sans Devanagari', sans-serif;
  --font-title: 'Nirmala UI', 'Mangal', 'Noto Sans Devanagari', sans-serif;
}
html[lang="ne"] #paper-notes .note-h { font-family: var(--font-heading); }
html[lang="ne"] #paper-notes .note-sub { font-family: var(--font-title); }
html[lang="ne"] #paper-notes .st-co,
html[lang="ne"] #paper-notes .st-title { font-family: var(--font-heading); }
html[lang="ne"] #paper-notes .st-addr,
html[lang="ne"] #paper-notes .st-period,
html[lang="ne"] #paper-notes .st-cur { font-family: var(--font-body); }
html[lang="ne"] #paper-notes p,
html[lang="ne"] #paper-notes table.st,
html[lang="ne"] #paper-notes table.st th { font-family: var(--font-body); }
.financial-paper .fs-comparative { font: 9pt/1.4 var(--font-body, var(--serif)); color: #444; margin: 14px 0; }
.financial-paper .fs-signatures { display: grid; grid-template-columns: minmax(0,3fr) minmax(50mm,1.35fr); column-gap: 8mm; }
.financial-paper .fs-signatures > .stmt-sep, .financial-paper .fs-signatures > p, .financial-paper .sign-place { grid-column: 1 / -1; }
.financial-paper .sign-for, .financial-paper .signs:not(.aud-sign) { grid-column: 1; }
.financial-paper .fs-signatures > .aud-sign { grid-column: 2; grid-row: 4; }
.financial-paper .stmt-sep { border-top: 1px solid #aaa; margin: 18px 0 8px; }
.financial-paper .sign-for { margin-top: 16px; padding-top: 0; font-size: 10pt; color: #222; }
.financial-paper .signs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin-top: 5px; padding-top: 0; }
.financial-paper .sign { min-width: 0; }
.financial-paper .sig-line { width: 100%; max-width: 145px; margin-top: 14mm; border-top: 1px solid #555; }
.financial-paper .sig-name { font-size: 9pt; color: #222; overflow-wrap: anywhere; }
.financial-paper .sig-desg, .financial-paper .sign-place { font-size: 9pt; color: #444; overflow-wrap: anywhere; }
.financial-paper .aud-sign { display: block; border: 0; margin-top: 5px; padding-top: 0; }
.financial-paper .aud-sign .sig-line { margin-top: 14mm; }
.financial-paper .as-per-report { grid-column: 2; grid-row: 3; font-size: 9pt; font-weight: 400; margin-top: 16px; align-self: end; }
.fs-empty { padding: 32px 16px; border: 1px solid #cbd1d7; text-align: center; }
.fs-empty h3 { margin-bottom: 10px; font-size: 12pt; }
.fs-empty p { color: #444; font-size: 10pt; margin-bottom: 14px; }
.tax-depreciation-paper table.st { table-layout: fixed; width: 100%; }
.tax-depreciation-paper table.st th { white-space: normal; overflow-wrap: anywhere; }
.tax-depreciation-paper table.st th.part { width: 28%; }
.tax-depreciation-paper table.st th.num { width: auto; }
.tax-depreciation-paper table.st th small { display: block; font-size: .8em; font-weight: 400; margin-top: 3px; }
.tax-depreciation-paper table.st.tax-pools th.part { width: 34%; }
.tax-depreciation-paper table.st.tax-pools th.num { width: 13.2%; }
.tax-depreciation-paper table.st td.part { padding-left: 5px; }
.tax-depreciation-paper .sub-h { font-size: 10pt; font-style: normal; font-weight: 600; margin: 12px 0 6px; }
.soce-support .sub-h { font-size: 10pt; color: #222; font-weight: 600; font-style: normal; }
.appropriation-paper { margin-top: 28px; }
.appropriation-reference { text-align: center; font-style: italic; }
.appropriation-table { table-layout: fixed; }
.appropriation-table .part { width: 60%; overflow-wrap: anywhere; }
.appropriation-table .num { width: 20%; }
.soce-support table.soce-funds { table-layout: fixed; width: 100%; }
.soce-support table.soce-funds th.part { width: 28%; }
.soce-support table.soce-funds th.num { width: auto; white-space: normal; overflow-wrap: anywhere; }
.soce-support .fund-unallocated { font-style: italic; }
.soce-support .soce-component-title { font-size: 10pt; margin: 12px 0 4px; color: #222; }
.soce-support-meta { display: flex; justify-content: space-between; gap: 12px; font-size: 9pt; margin-top: 6px; }
.soce-support .soce-support-meta .st-period, .soce-support .soce-support-meta .st-cur { font-size: 9pt; margin: 0; }
@media screen {
  .tax-pool-inputs { min-width: 650px; table-layout: fixed; }
  .tax-pool-inputs th:first-child { width: 32%; }
  .tax-pool-inputs tbody th { text-align: left; font-weight: 500; font-size: .82rem; padding: 8px; }
  .financial-paper { width: 210mm; max-width: 100%; margin: 0 auto 24px; padding: 16mm 16mm 14mm; border-radius: 2px; border-color: #d6dce3; box-shadow: 0 3px 18px #172a420a; }
  .financial-paper:has(table.soce), .financial-paper:has(table.wide) { width: 260mm; }
  .financial-paper.soce-support { width: 260mm; margin-top: 28px; }
  .soce-support .soce-fund-section { overflow-x: auto; margin-top: 18px; }
  .statement-checks { max-width: 210mm; margin: 0 auto 16px; }
  .statement-checks .alert { font-size: .82rem; padding: 9px 12px; margin: 5px 0; }
  .financial-paper .tbl-wrap { overflow-x: auto; }
  @media (max-width: 700px) {
    .financial-paper { padding: 22px 14px; }
    .financial-paper .st-co { font-size: 12pt; }
    .financial-paper table.st td.num { min-width: 70px; }
    .financial-paper .signs { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .financial-paper .fs-signatures { display: block; }
  }
}
@media print {
  /* A scrolling flex workspace must become ordinary paged flow in print. */
  .layout:has(#paper-notes), .layout:has(#paper-soce) { display: block; min-height: 0; }
  #main:has(#paper-notes), #main:has(#paper-soce) { overflow: visible; padding: 0; }
  body:not(.print-all):has(#main #paper-notes) .layout,
  #main:has(#paper-notes), .print-sec:has(#paper-notes) { page: notes-report; }
  @page notes-report {
    size: A4 portrait; margin: 12mm 15mm 20mm;
    @bottom-left {
      width: 80%; border-top: .5pt solid #999; padding-top: 2.5mm;
      vertical-align: top; white-space: pre-line;
      font: 8pt/1.4 'Nirmala UI', Arial, sans-serif; color: #555;
    }
    @bottom-right {
      content: counter(page) " / " counter(pages);
      width: 20%; border-top: .5pt solid #999; padding-top: 2.5mm;
      vertical-align: top; text-align: right;
      font: 8pt/1.4 Arial, sans-serif; color: #555;
    }
  }
  #paper-notes { page: notes-report; }
  #paper-notes .notes-document > thead { display: table-header-group; break-inside: avoid; }
  #paper-notes .notes-document > tbody,
  #paper-notes .notes-document > tbody > tr,
  #paper-notes .notes-content { break-inside: auto; page-break-inside: auto; }
  @page mapping-review { size: A4 landscape; margin: 12mm 10mm; @bottom-right { content: counter(page) " / " counter(pages); font: 8pt Arial, sans-serif; color: #555; } }
  @page audit-report { size: A4 portrait; margin: 16mm 18mm 18mm; @bottom-right { content: counter(page) " / " counter(pages); font: 9pt Arial, sans-serif; color: #555; } }
  #paper-mapping-report { page: mapping-review; width: auto; max-width: none; padding: 0; margin: 0; }
  #paper-mapping-report .st-head { margin-bottom: 4mm; }
  #paper-mapping-report .st-co { font-size: 13pt; }
  #paper-mapping-report .st-title { font-size: 11pt; }
  #paper-mapping-report p { font-size: 9pt; margin: 2mm 0; }
  #paper-mapping-report h3 { margin: 4mm 0 2mm; font-size: 10pt; }
  #paper-mapping-report table { break-inside: auto; }
  #paper-mapping-report th { font-size: 8pt; padding: 2mm 1mm; }
  #paper-mapping-report td { font-size: 9pt; padding: 1mm; }
  #paper-mapping-report thead { display: table-header-group; }
  #paper-mapping-report tr { break-inside: avoid; }
  #paper-mapping-report tbody tr:nth-last-child(2) { break-after: avoid; }
  #paper-audit { page: audit-report; width: auto; max-width: none; padding: 0; margin: 0; }
  #paper-audit .aud, #paper-audit .aud p, #paper-audit .aud li { font-family: var(--font-body); }
  html[lang="ne"] #paper-audit .aud p, html[lang="ne"] #paper-audit .aud li { font-size: 10.5pt; line-height: 1.4; margin-bottom: 2.5mm; }
  html[lang="ne"] #paper-audit .aud h4 { margin-top: 4mm; }
  html[lang="ne"] #paper-audit .st-head { margin-bottom: 4mm; padding-bottom: 4mm; }
  @page equity-statement { size: A4 landscape; margin: 8mm 12mm; }
  @page appropriation-statement { size: A4 portrait; margin: 8mm 12mm; }
  .financial-paper.appropriation-paper { page: appropriation-statement; break-before: page; width: 186mm; max-width: 186mm; margin: 0; }
  .appropriation-paper .st-icon { display: none; }
  .appropriation-paper p.small { font-size: 9pt; line-height: 1.4; margin: 3mm 0; }
  .appropriation-table thead { display: table-header-group; }
  .appropriation-table tr { break-inside: avoid; }
  .statement-paper:has(table.soce) { page: equity-statement; }
  .financial-paper.soce-support { page: equity-statement; break-before: page; }
  .financial-paper.soce-support .st-co { font-size: 13pt; }
  .financial-paper.soce-support .st-title { font-size: 10pt; margin: 4px 0; }
  .financial-paper.soce-support .sub-h { break-after: avoid; margin: 1mm 0 .5mm; font-size: 9pt; }
  .financial-paper.soce-support table.soce-funds { font-size: 9pt; line-height: 1.2; }
  .financial-paper.soce-support table.soce-funds th { font-size: 9pt; padding: 1.3mm 1mm; }
  .financial-paper.soce-support table.soce-funds td { padding: .5mm 1mm; min-width: 0; }
  .financial-paper.soce-support table.soce-funds .r-tot td { padding: .8mm 1mm; font-size: 9pt; }
  .financial-paper.soce-support .soce-component-title { font-size: 10pt; margin: 2mm 0 1mm; break-after: avoid; }
  .soce-support table.soce-funds thead { display: table-header-group; }
  .soce-support table.soce-funds tr { break-inside: avoid; }
  .soce-support > p.small { font-size: 9pt; line-height: 1.3; }
  .financial-paper { width: auto; max-width: none; padding: 0; margin: 0; }
  .financial-paper .st-head { margin-bottom: 3mm; }
  .financial-paper table.st { font-size: 9pt; line-height: 1.2; }
  .financial-paper table.st th { padding: 1.8mm 1mm; }
  .financial-paper table.st td { padding: .5mm 1mm; }
  .financial-paper table.st .r-h td { font-size: 9pt; padding: 2.5mm 1mm 1mm; }
  .financial-paper table.st .r-sec td { font-size: 9pt; padding: 1.5mm 1mm .6mm; }
  .financial-paper table.st .r-sub td, .financial-paper table.st .r-sectot td,
  .financial-paper table.st .r-tot td { font-size: 9pt; padding: 1mm; }
  .financial-paper .fs-signatures { break-inside: avoid; }
  .financial-paper .signs { gap: 5mm; }
  .financial-paper .sig-line { margin-top: 14mm; }
  .financial-paper .sign-for, .financial-paper .as-per-report { margin-top: 3mm; }
  .financial-paper .stmt-sep { margin-top: 4mm; }
  .financial-paper .fs-signatures .muted { font-size: 9pt; color: #333; }
  /* Use the page for figures and signing space instead of oversized gaps. */
  .statement-paper table.st th { padding: 1.3mm 1mm; }
  .statement-paper table.st td { padding: .3mm 1mm; }
  .statement-paper table.st .r-h td { padding: 1.8mm 1mm .8mm; }
  .statement-paper table.st .r-sec td { padding: 1.1mm 1mm .5mm; }
  .statement-paper table.st .r-sub td, .statement-paper table.st .r-sectot td,
  .statement-paper table.st .r-tot td { padding: .7mm 1mm; }
  .statement-paper .stmt-sep { margin: 2mm 0 1mm; }
  .statement-paper .fs-signatures > p { margin: 1mm 0; }
  .statement-paper .sign-for, .statement-paper .as-per-report { margin-top: 2mm; }
  .statement-paper .st-head { margin-bottom: 2mm; }
  .statement-paper .sig-name, .statement-paper .sig-desg { font-size: 8pt; line-height: 1.25; }
  .statement-paper table.soce { table-layout: fixed; width: 100%; }
  .statement-paper table.soce th.part { width: 30%; }
  .statement-paper table.soce th.num { width: auto; white-space: normal; }
  .statement-paper table.soce, .statement-paper table.soce .r-sub td,
  .statement-paper table.soce .r-tot td { font-size: 9pt; }
  .statement-paper table.soce th { font-size: 9pt; }
  html[lang="ne"] .statement-paper table.soce th { font-size: 9pt; line-height: 1.2; }
  #paper-cf table.st { font-size: 8.5pt; line-height: 1.15; }
  #paper-cf table.st .note { width: 18%; font-size: 8pt; overflow-wrap: anywhere; }
  .financial-paper .tbl-wrap { overflow: visible; }
  .tax-depreciation-paper table.st { font-size: 8.5pt; }
  .tax-depreciation-paper table.st th { font-size: 8pt; padding: 1.5mm .8mm; }
  .tax-depreciation-paper table.st td { padding: .65mm .8mm; }
  .tax-depreciation-paper .sub-h { font-size: 9pt; margin: 2.5mm 0 1mm; break-after: avoid; }
  .tax-depreciation-paper > p.small { font-size: 8pt; line-height: 1.3; }
  /* A note can span pages. Keeping the whole policies section together
     leaves most of the preceding sheet empty. Keep only its small units. */
  .financial-paper .note-block { break-inside: auto; page-break-inside: auto; padding-top: 0; margin-bottom: 2mm; }
  .financial-paper .note-h, .financial-paper .note-sub {
    break-after: avoid; page-break-after: avoid;
    break-inside: avoid; page-break-inside: avoid;
  }
  .financial-paper .note-h { font-size: 11pt; margin: 3mm 0 1.5mm; }
  .financial-paper .note-h .nno { font-size: inherit; }
  .financial-paper .note-sub { font-size: 10pt; margin: 2mm 0 1mm; }
  .financial-paper .note-block p { font-size: 10pt; line-height: 1.4; margin: 1mm 0; orphans: 3; widows: 3; }
  html[lang="ne"] #paper-notes .note-h { font-size: 11pt; }
  html[lang="ne"] #paper-notes .note-sub,
  html[lang="ne"] #paper-notes p { font-size: 10pt; }
  .financial-paper .policy-block { break-inside: auto; page-break-inside: auto; margin-bottom: 2mm; }
  /* Keep short schedules together; tables taller than a page can still
     paginate, repeating their column headings and keeping rows intact. */
  .financial-paper .note-t { break-inside: avoid; page-break-inside: avoid; }
  .financial-paper .note-t thead { display: table-header-group; break-after: avoid; page-break-after: avoid; }
  .financial-paper .note-t tr { break-inside: avoid; page-break-inside: avoid; }

  @page asset-register { size: A4 landscape; margin: 10mm 12mm; @bottom-right { content: counter(page) " / " counter(pages); font: 8pt Arial, sans-serif; color: #555; } }
  @page tax-depreciation { size: A4 landscape; margin: 10mm 12mm; @bottom-right { content: counter(page) " / " counter(pages); font: 8pt Arial, sans-serif; color: #555; } }
  #paper-assets { page: asset-register; width: auto; max-width: none; padding: 0; margin: 0; }
  #paper-assets table.st { font-size: 8pt; table-layout: fixed; width: 100%; }
  #paper-assets table.st th { font-size: 7.5pt; padding: 1.5mm 1mm; white-space: normal; overflow-wrap: anywhere; text-align: center; vertical-align: bottom; }
  #paper-assets table.st th.part { width: 18%; text-align: left; white-space: nowrap; }
  #paper-assets table.st td { padding: .8mm 1mm; }
  #paper-assets table.st td.part { white-space: nowrap; }
  #paper-assets .sub-h { font-size: 9pt; margin: 2.5mm 0 1mm; break-after: avoid; }
  #paper-assets table.st thead { display: table-header-group; }
  #paper-assets table.st tr { break-inside: avoid; }
  .tax-depreciation-paper { page: tax-depreciation; width: auto; max-width: none; padding: 0; margin: 0; }

  /* Service documents (proposal, engagement, request, quotation) */
  @page service-doc { size: A4 portrait; margin: 16mm 20mm 18mm; @bottom-right { content: counter(page) " / " counter(pages); font: 8pt Arial, sans-serif; color: #555; } }
  .doc-print { page: service-doc; width: auto; max-width: none; padding: 0; margin: 0; }
  .doc-print .doc-cover { min-height: 100vh; padding: 20vh 15mm 15mm; justify-content: flex-start; }
  .doc-print .doc-cover-firm { font-size: 14pt; }
  .doc-print .doc-cover-title { font-size: 13pt; }
  .doc-print .doc-cover-client-name { font-size: 12pt; }
  .doc-print .doc-toc { padding: 10mm 0; max-width: none; }
  .doc-print .doc-toc-title { font-size: 11pt; }
  .doc-print .doc-toc-item { font-size: 10pt; }
  .doc-print .doc-body { padding: 0; }
  .doc-print .doc-section h3 { font-size: 10.5pt; }
  .doc-print .doc-section p { font-size: 10pt; line-height: 1.5; }
  .doc-print .doc-table { font-size: 9pt; }
  .doc-print .doc-table td, .doc-print .doc-table th { padding: 1.5mm 2mm; border-color: #666; }
  .doc-print .doc-editable { padding: 0; margin: 0; }
}
/* Explicit pages keep margins consistent when mixing portrait and landscape
   sections in a combined package (including Chromium's named-page transitions). */
@media print {
  @page financial-statement { size:A4 portrait; margin:8mm 15mm; @bottom-right { content:counter(page) " / " counter(pages); font:8pt Arial,sans-serif; color:#555; } }
  .statement-paper { page:financial-statement; }
  #paper-taxcomp, #paper-taxrec { page:financial-statement; }
  #paper-taxrec .tax-deferred-section { break-inside:avoid; }
  #paper-cf .st-co { font-size:13pt; }
  #paper-cf .st-head { margin-bottom:1mm; }
  #paper-cf table.st .r-h td { padding-top:1.2mm; }
  #paper-cf table.st .r-sub td,#paper-cf table.st .r-tot td { padding:.45mm 1mm; }
  #paper-cf .fs-signatures .sig-line { margin-top:10mm; }
  .member-report { page:mapping-review; }
}
