:root {
  --ink: #172033;
  --muted: #687286;
  --line: #dfe4ec;
  --soft: #f5f7fb;
  --surface: #ffffff;
  --brand: #183b66;
  --brand-dark: #102c4d;
  --accent: #d89b3c;
  --danger: #b42318;
  --shadow: 0 22px 60px rgba(23, 32, 51, 0.10);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: #edf1f6;
  font-synthesis: none;
}

* { box-sizing: border-box; }

body { margin: 0; min-width: 320px; background: #edf1f6; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; touch-action: manipulation; }

.app-header {
  max-width: 1180px;
  margin: 0 auto;
  min-height: 64px;
  padding: 10px 24px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  position: relative;
  z-index: 40;
}

.app-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.brand-name { color: var(--brand); font-size: 0.78rem; font-weight: 850; letter-spacing: 0.12em; text-transform: uppercase; white-space: nowrap; }
.brand-divider { width: 1px; height: 25px; background: var(--line); }
.app-header h1 { margin: 0; font-size: 1.08rem; letter-spacing: -0.025em; white-space: nowrap; }
.eyebrow { margin: 0; color: var(--accent); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; }
.menu-shell { position: relative; }
.menu-button { width: 42px; height: 42px; display: grid; place-content: center; gap: 4px; border: 1px solid #cfd7e4; border-radius: 10px; background: white; color: var(--brand); }
.menu-button:hover, .menu-button:focus-visible { border-color: var(--brand); background: #f7f9fc; outline: none; }
.menu-button span { display: block; width: 19px; height: 2px; border-radius: 2px; background: currentColor; }
.app-menu { position: absolute; top: calc(100% + 8px); left: 0; width: 290px; padding: 8px; border: 1px solid var(--line); border-radius: 14px; background: white; box-shadow: 0 20px 55px rgba(23,32,51,.18); opacity: 0; visibility: hidden; transform: translateY(-7px); transition: opacity 150ms ease, transform 150ms ease, visibility 150ms; }
.app-menu.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
.app-menu > button:not(.menu-close) { width: 100%; display: grid; grid-template-columns: 36px 1fr; align-items: center; gap: 10px; padding: 10px; border: 0; border-radius: 9px; background: transparent; color: var(--ink); text-align: left; }
.app-menu > button:not(.menu-close):hover, .app-menu > button:not(.menu-close):focus-visible { background: var(--soft); outline: none; }
.app-menu > button[aria-current="page"] { background: #eaf0f7; }
.menu-icon { width: 36px; height: 36px; padding: 8px; border-radius: 9px; background: #eaf0f7; color: var(--brand); fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.menu-copy { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.menu-copy > span { font-weight: 750; }
.menu-copy small { color: var(--muted); font-size: .74rem; font-weight: 400; }
.menu-heading { display: none; }
.menu-close { display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 9px; background: var(--soft); color: var(--ink); font-size: 1.45rem; }
.menu-backdrop { display: none; position: fixed; inset: 0; z-index: 30; border: 0; background: rgba(15,23,42,.42); }
.menu-backdrop.is-open { display: block; }
.menu-open { overflow: hidden; }

.page-shell { max-width: 1180px; margin: 0 auto; padding: 0 24px 48px; }
.invoice-container { background: var(--surface); border-radius: 22px; padding: 42px; box-shadow: var(--shadow); }

.button { border: 1px solid transparent; border-radius: 10px; padding: 10px 15px; font-weight: 700; transition: 160ms ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { background: var(--brand); color: white; box-shadow: 0 8px 18px rgba(24, 59, 102, 0.2); }
.button-primary:hover { background: var(--brand-dark); }
.button-secondary { background: white; color: var(--brand); border-color: #cfd7e4; }
.button-secondary:hover { border-color: var(--brand); background: #f7f9fc; }
.text-button { border: 0; background: transparent; color: var(--danger); font-weight: 700; padding: 6px; }

.invoice-header { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; padding-bottom: 25px; border-bottom: 2px solid var(--brand); }
.invoice-kicker { margin: 0 0 4px; color: var(--muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.invoice-title { color: var(--brand); font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 750; letter-spacing: -0.05em; }
.invoice-meta { display: grid; grid-template-columns: repeat(2, minmax(145px, 1fr)); gap: 14px; }

.party-grid, .invoice-footer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 24px; }
.detail-card, .bank-card, .signature-card { border: 1px solid var(--line); border-radius: 15px; padding: 20px; background: #fff; }
.section-heading, .signature-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 17px; }
.section-heading > div, .signature-heading > div { display: flex; align-items: center; gap: 10px; }
.section-heading h2, .signature-heading h2, .section-title-row h2 { margin: 0; font-size: 1rem; }
.section-number { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: #eaf0f7; color: var(--brand); font-size: 0.7rem; font-weight: 800; }

.field { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; }
.field label, .amount-words label { color: var(--muted); font-size: 0.72rem; font-weight: 750; letter-spacing: 0.04em; text-transform: uppercase; }
input, textarea, select { width: 100%; border: 1px solid #ccd4e0; border-radius: 9px; background: white; color: var(--ink); padding: 9px 11px; outline: none; transition: 140ms ease; }
input:focus, textarea:focus, select:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(24, 59, 102, 0.10); }
textarea { resize: none; overflow: hidden; line-height: 1.45; }
.compact-field { margin: 0; }
#customerSelect { max-width: 210px; font-size: 0.82rem; }

.line-items-section { margin-top: 30px; }
.invoice-detail-table { display: contents; }
.section-title-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 15px; margin-bottom: 13px; }
.section-title-row .eyebrow { margin-bottom: 5px; }
.mobile-add-product { display: none; }
.table-scroll { overflow: visible; }
#invoiceTable { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--line); border-radius: 13px; overflow: visible; font-size: 0.82rem; }
#invoiceTable th { padding: 12px 9px; background: var(--brand); color: white; border: 0; font-size: 0.7rem; letter-spacing: 0.03em; text-transform: uppercase; text-align: center; }
#invoiceTable th:first-child { border-top-left-radius: 12px; }
#invoiceTable th:last-child { border-top-right-radius: 12px; }
#invoiceTable td { padding: 9px; border-top: 1px solid var(--line); vertical-align: middle; }
#invoiceTable tbody tr:hover { background: #f8fafc; }
#invoiceTable td input, #invoiceTable td textarea { padding: 7px 8px; border-radius: 7px; font-size: 0.8rem; }
#invoiceTable th:nth-child(1), #invoiceTable td:nth-child(1) { width: 6%; text-align: center; }
#invoiceTable th:nth-child(2), #invoiceTable td:nth-child(2) { width: 36%; }
#invoiceTable th:nth-child(3), #invoiceTable td:nth-child(3) { width: 11%; text-align: center; }
#invoiceTable th:nth-child(4), #invoiceTable td:nth-child(4) { width: 9%; text-align: center; }
#invoiceTable th:nth-child(5), #invoiceTable td:nth-child(5), #invoiceTable th:nth-child(6), #invoiceTable td:nth-child(6) { width: 14%; text-align: right; }
#invoiceTable th:nth-child(7), #invoiceTable td:nth-child(7) { width: 10%; text-align: center; }
.delete-line { border: 0; border-radius: 8px; padding: 7px 9px; background: #fff0ee; color: var(--danger); font-weight: 800; }

.product-input-wrap { display: flex; align-items: center; position: relative; }
.productDropdown { position: absolute; top: calc(100% + 4px); left: 0; right: 0; min-width: 190px; max-height: 210px; overflow-y: auto; z-index: 30; display: none; background: white; border: 1px solid #cbd5e1; border-radius: 9px; box-shadow: 0 14px 30px rgba(15, 23, 42, 0.15); }
.product-item { padding: 9px 11px; cursor: pointer; font-size: 0.8rem; }
.product-item:hover { background: #eef3f8; }

.summary-grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 26px; margin-top: 24px; }
.amount-words { border-radius: 13px; background: var(--soft); padding: 18px; }
.amount-words textarea { margin-top: 9px; border-color: transparent; background: transparent; padding: 0; font-weight: 650; }
.totals-card { border: 1px solid var(--line); border-radius: 13px; overflow: hidden; }
.total-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--line); font-size: 0.84rem; }
.total-row:last-child { border-bottom: 0; }
.tax-row { grid-template-columns: 1fr auto 90px; }
.tax-row > strong { text-align: right; }
.tax-row span { display: inline-flex; align-items: center; gap: 4px; color: var(--muted); }
.tax-row input { width: 64px; padding: 5px 6px; text-align: right; }
.payable-row { background: var(--brand); color: white; padding-block: 14px; font-size: 1rem; }

.bank-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; }
.full-width { grid-column: 1 / -1; }
.signature-card { text-align: right; }
.signature-card canvas { display: block; width: 100%; height: 120px; border: 1px dashed #aab4c2; border-radius: 10px; background: #fbfcfe; touch-action: none; }
.signature-card p { margin: 8px 0 0; color: var(--muted); font-size: 0.76rem; }

.action-bar { margin-top: 18px; border-radius: 16px; background: var(--brand-dark); color: white; padding: 18px 22px; display: flex; justify-content: space-between; align-items: center; gap: 20px; box-shadow: var(--shadow); }
.action-bar p { margin: 0; display: flex; flex-direction: column; gap: 3px; }
.action-bar p span { color: #c4d0df; font-size: 0.82rem; }
.action-bar > div { display: flex; gap: 9px; }
.whatsapp-share-button { display: none; align-items: center; justify-content: center; gap: 8px; border-color: #1f9d55; background: #128c4a; color: white; }
.whatsapp-share-button:hover { background: #0f7a40; }
.whatsapp-share-button svg { width: 18px; height: 18px; fill: currentColor; flex: 0 0 auto; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.print-only { display: none; }
.final-summary, .final-total-rows { display: contents; }

@media (max-width: 820px) {
  .invoice-header, .action-bar { align-items: stretch; flex-direction: column; }
  .invoice-container { padding: 24px; }
  .party-grid, .invoice-footer-grid, .summary-grid { grid-template-columns: 1fr; }
  .invoice-meta { width: 100%; }
  .table-scroll { overflow-x: auto; }
  #invoiceTable { min-width: 760px; }
  .action-bar > div { width: 100%; }
  .action-bar .button { flex: 1; }
}

@media (max-width: 640px) {
  .desktop-print-button { display: none; }
  .whatsapp-share-button { display: inline-flex; }
  .section-title-row > .button { display: none; }
  .table-scroll { overflow: visible; }
  #invoiceTable { display: block; min-width: 0; border: 0; border-radius: 0; background: transparent; }
  #invoiceTable thead { display: none; }
  #invoiceTable tbody { display: grid; gap: 12px; }
  #invoiceTable tbody tr { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 13px; background: white; box-shadow: 0 7px 20px rgba(23,32,51,.06); }
  #invoiceTable tbody tr:hover { background: white; }
  #invoiceTable td { display: flex; width: auto !important; padding: 0; border: 0; flex-direction: column; align-items: stretch; gap: 6px; text-align: left !important; }
  #invoiceTable td::before { content: attr(data-label); color: var(--muted); font-size: .66rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
  #invoiceTable td:nth-child(1) { position: absolute; top: 14px; left: 15px; width: auto !important; min-width: 62px; padding: 5px 9px; border-radius: 999px; background: #eaf0f7; color: var(--brand); flex-direction: row; align-items: center; gap: 4px; font-size: .72rem; font-weight: 800; }
  #invoiceTable td:nth-child(1)::before { color: inherit; font-size: inherit; letter-spacing: 0; text-transform: none; }
  #invoiceTable td:nth-child(2) { grid-column: 1 / -1; margin-top: 38px; }
  #invoiceTable td:nth-child(6) { justify-content: flex-end; padding: 9px 11px; border-radius: 9px; background: var(--soft); color: var(--brand); font-size: 1rem; font-weight: 800; }
  #invoiceTable td:nth-child(6)::before { color: var(--muted); }
  #invoiceTable td:nth-child(7) { position: absolute; top: 12px; right: 12px; width: auto !important; }
  #invoiceTable td:nth-child(7)::before { display: none; }
  #invoiceTable td input, #invoiceTable td textarea { min-height: 44px; padding: 10px 11px; font-size: 16px; }
  .delete-line { min-height: 34px; padding: 7px 10px; }
  .productDropdown { top: calc(100% + 5px); min-width: 100%; max-height: 230px; }
  .product-item { padding: 12px; font-size: .86rem; }
  .mobile-add-product { display: flex; width: 100%; justify-content: center; margin-top: 12px; min-height: 46px; align-items: center; }
}

@media (max-width: 520px) {
  .app-header, .page-shell { padding-left: 14px; padding-right: 14px; }
  .app-header { min-height: 58px; }
  .brand-name { font-size: .7rem; letter-spacing: .08em; }
  .brand-divider { height: 21px; }
  .app-header h1 { font-size: .94rem; }
  .menu-button { width: 40px; height: 40px; }
  .app-menu { position: fixed; top: 0; left: 0; width: min(86vw, 320px); height: 100dvh; padding: 14px; border: 0; border-radius: 0 18px 18px 0; transform: translateX(-100%); transition: transform 180ms ease, visibility 180ms; }
  .app-menu.is-open { transform: translateX(0); }
  .menu-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; padding: 4px 2px 12px 10px; border-bottom: 1px solid var(--line); }
  .invoice-container { padding: 18px; border-radius: 16px; }
  .invoice-meta, .bank-grid { grid-template-columns: 1fr; }
  .section-heading { align-items: stretch; flex-direction: column; }
  #customerSelect { max-width: none; }
  input, select, textarea { font-size: 16px; }
  .action-bar > div { width: 100%; }
}

@media print {
  @page { size: A4 portrait; margin: 10mm; }
  :root, body { background: white; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  body { color: #172033; font-family: Arial, sans-serif; }
  .no-print, .app-header, .action-bar, #invoiceTable th:last-child, #invoiceTable td:last-child { display: none !important; }
  .print-only { display: flex; }
  #invoiceTable { display: table; min-width: 0; }
  #invoiceTable thead { display: table-header-group; }
  #invoiceTable tbody { display: table-row-group; }
  #invoiceTable tbody tr { display: table-row; padding: 0; border: 0; box-shadow: none; }
  #invoiceTable td { display: table-cell; padding: 5px; }
  #invoiceTable td::before { display: none; }
  #invoiceTable td:nth-child(1), #invoiceTable td:nth-child(7) { position: static; width: auto !important; min-width: 0; padding: 5px; border-radius: 0; background: transparent; color: inherit; font-size: inherit; }
  #invoiceTable td:nth-child(2) { margin-top: 0; }
  #invoiceTable td:nth-child(6) { padding: 5px; border-radius: 0; background: transparent; color: inherit; font-size: inherit; font-weight: inherit; }
  .page-shell { max-width: none; margin: 0; padding: 0; }
  .invoice-container { width: 100%; margin: 0; padding: 0; border-radius: 0; box-shadow: none; }
  .invoice-header { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 14px; padding: 6px 8px; border-top: 1px solid #183b66; border-bottom: 1px solid #183b66; text-align: center; }
  .invoice-header > div:first-child { display: block; grid-column: 2; grid-row: 1; }
  .invoice-title { display: block !important; visibility: visible !important; color: #183b66 !important; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
  .invoice-meta { display: contents; }
  .invoice-meta .compact-field:first-child { grid-column: 1; grid-row: 1; align-items: flex-start; text-align: left; }
  .invoice-meta .compact-field:last-child { grid-column: 3; grid-row: 1; align-items: flex-end; text-align: right; }
  .invoice-meta .compact-field input { width: 90px; font-weight: 700; }
  .invoice-meta .compact-field:last-child input { text-align: right; }
  .field label, .amount-words label { color: #596579; font-size: 7px; letter-spacing: .06em; }
  .party-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0; margin-top: 8px; padding: 0; border: 1px solid #c8d0dc; }
  .party-grid > .detail-card { display: block; padding: 8px 10px; border: 0; border-radius: 0; break-inside: avoid; }
  .party-grid > .detail-card + .detail-card { border-left: 1px solid #c8d0dc; }
  .party-grid > .detail-card input,
  .party-grid > .detail-card textarea { font-weight: 600; }
  .party-grid > .detail-card .field { gap: 3px; margin-top: 7px; }
  .party-grid > .detail-card .field label { line-height: 1; }
  .detail-card { border-color: #c8d0dc; break-inside: avoid; }
  .detail-card, .bank-card, .signature-card { padding: 9px 10px; border-radius: 5px; }
  .section-heading, .signature-heading { margin-bottom: 5px; }
  .section-number { width: 22px; height: 22px; border-radius: 5px; background: #eaf0f7 !important; color: #183b66; font-size: 7px; }
  .section-heading h2, .signature-heading h2, .section-title-row h2 { font-size: 10px; }
  .field { gap: 2px; margin-top: 5px; }
  input, textarea, select { border: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0; color: #000; }
  input, textarea { min-height: 0; padding-left: 1px !important; font-size: 9px; line-height: 1.3; appearance: textfield; -webkit-appearance: none; }
  textarea { height: auto !important; overflow: visible; }
  input::-webkit-outer-spin-button, input::-webkit-inner-spin-button, input::-webkit-calendar-picker-indicator { display: none; margin: 0; -webkit-appearance: none; }
  #customerSelect { display: none; }
  .invoice-detail-table { display: block; margin-top: 7px; border: 1px solid #c8d0dc; border-radius: 0; overflow: hidden; box-shadow: none; }
  #invoiceTable { border: 0; border-radius: 0; overflow: hidden; font-size: 8.5px; }
  #invoiceTable th { color: white; background: #183b66 !important; border-bottom: 1px solid #183b66; border-radius: 0 !important; padding: 6px 4px; font-size: 7px; box-shadow: none !important; }
  #invoiceTable td { padding: 5px 4px; border-color: #dfe4ec; }
  #invoiceTable td input, #invoiceTable td textarea { height: auto !important; min-height: 0 !important; padding: 0; font-size: 8.5px; }
  #invoiceTable td:nth-child(3) input,
  #invoiceTable td:nth-child(4) input { text-align: center !important; }
  #invoiceTable td:nth-child(5) input { text-align: right !important; }
  #invoiceTable td:nth-child(3),
  #invoiceTable td:nth-child(4) { text-align: center !important; }
  #invoiceTable td:nth-child(5) { text-align: right !important; }
  #invoiceTable tr { break-inside: avoid; }
  .line-items-section { margin-top: 0; }
  .section-title-row { margin: 0; padding: 7px 9px; border-bottom: 1px solid #c8d0dc; background: white !important; }
  .section-title-row .eyebrow { display: none; }
  .summary-grid { display: block; margin-top: 0; border-top: 1px solid #c8d0dc; }
  .summary-grid > .amount-words { display: none; }
  .amount-words { padding: 9px; border: 0; border-radius: 0; background: white !important; }
  .amount-words textarea { display: none; }
  .pdf-amount-words-value { display: block; margin: 6px 0 0; color: #172033; font-size: 9px; font-weight: 700; }
  .totals-card { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)) 245px; grid-template-rows: repeat(3, 27px) auto; border: 0; border-radius: 0; }
  .totals-card > .subtotal-row,
  .totals-card > .pdf-tax-total,
  .totals-card > .grand-total-row { grid-column: 4; grid-template-columns: minmax(0,1fr) 88px; height: 27px; min-height: 0; padding: 0 8px; gap: 5px; border-left: 1px solid #c8d0dc; font-size: 8.5px; }
  .totals-card > .subtotal-row { grid-row: 1; }
  .totals-card > .pdf-tax-total { display: grid; grid-row: 2; }
  .totals-card > .grand-total-row { grid-row: 3; }
  .totals-card > .subtotal-row > strong,
  .totals-card > .pdf-tax-total > strong,
  .totals-card > .grand-total-row > strong { grid-column: 2; text-align: right; }
  .totals-card > .tax-row { display: contents; }
  .totals-card > .cgst-row > * { grid-column: 1; }
  .totals-card > .sgst-row > * { grid-column: 2; }
  .totals-card > .igst-row > * { grid-column: 3; }
  .totals-card > .tax-row > label,
  .totals-card > .tax-row > span,
  .totals-card > .tax-row > strong { display: flex; align-items: center; justify-content: center; width: 100%; height: 27px; min-height: 0; padding: 0 5px; border-right: 1px solid #c8d0dc; border-bottom: 1px solid #dfe4ec; font-size: 8.5px; }
  .totals-card > .tax-row > label { grid-row: 1; }
  .totals-card > .tax-row > span { grid-row: 2; }
  .totals-card > .tax-row > strong { grid-row: 3; }
  .totals-card > .tax-row > strong { text-align: center; }
  .tax-row input { width: 30px; text-align: right; }
  .final-summary { grid-column: 1 / -1; grid-row: 4; display: grid; grid-template-columns: minmax(0,1fr) 245px; border-top: 1px solid #c8d0dc; }
  .pdf-final-words { display: flex; flex-direction: column; justify-content: center; gap: 4px; min-height: 54px; padding: 7px 10px; }
  .pdf-final-words label { color: #596579; font-size: 7px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
  .pdf-final-words strong { color: #172033; font-size: 9px; }
  .final-total-rows { display: block; border-left: 1px solid #c8d0dc; }
  .final-total-rows .total-row { min-height: 54px; grid-template-columns: minmax(0,1fr) auto; padding: 7px 8px; }
  .final-total-rows .payable-row > strong { grid-column: 2; text-align: right; }
  .payable-row { color: white; background: #183b66 !important; font-size: 10px; }
  .invoice-footer-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0; margin-top: 0; border-top: 1px solid #c8d0dc; }
  .bank-card, .signature-card { border: 0; border-radius: 0; break-inside: avoid; }
  .signature-card { border-left: 1px solid #c8d0dc; }
  .bank-grid { column-gap: 12px; row-gap: 2px; }
  .bank-card .field { gap: 3px; margin-top: 7px; }
  .bank-card .field label { line-height: 1; }
  .signature-card canvas { border: 0; height: 58px; background: transparent !important; box-shadow: none !important; }
  .signature-card p { margin-top: 4px; font-size: 7px; }
  .pdf-footer { margin-top: 9px; padding-top: 7px; border-top: 1px solid #c8d0dc; align-items: center; justify-content: space-between; color: #596579; font-size: 7px; }
  .pdf-footer strong { color: #183b66; font-size: 8px; }
}
