/* Print centre 0.25 — implemented from the approved visual mockups. */
.patient-print-bar{display:flex;justify-content:flex-end;margin:-2px 0 14px}
.print-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.print-menu>button{display:flex;align-items:center;gap:12px;text-align:right;border:1px solid var(--line,#dbe7e7);border-radius:14px;background:#fff;color:inherit;padding:14px}
.print-menu>button:hover{border-color:var(--teal,#096a70);background:#f3fbfb}
.print-menu .icon{color:var(--teal,#096a70);flex:0 0 auto}
.print-menu span,.print-treatment-menu span{display:flex;flex-direction:column;gap:3px}
.print-menu small,.print-treatment-menu small{color:var(--muted,#70878b)}
.print-menu-title{margin:22px 0 10px}
.print-treatment-menu{display:grid;gap:8px}
.print-treatment-menu>div{display:flex;align-items:center;gap:8px;border:1px solid var(--line,#dbe7e7);border-radius:13px;padding:10px}
.print-treatment-menu>div>span{margin-left:auto}

/* Zero page margins prevent Chrome's date/title/URL header and footer. */
@page clinic-a4{size:A4;margin:0}
@page clinic-a4-landscape{size:A4 landscape;margin:0}
@page clinic-a5{size:A5;margin:0}
@page clinic-a6-landscape{size:A6 landscape;margin:0}

@media print{
  :root{color-scheme:light}
  html,body{margin:0!important;padding:0!important;background:#fff!important;color:#071b37!important;font-family:'Vazirmatn Variable',Vazirmatn,Tahoma,Arial,sans-serif!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  #app,dialog,#toast{display:none!important}
  #printArea{display:block!important;margin:0!important;padding:0!important;background:#fff!important;color:#071b37!important;font-size:8.7pt;line-height:1.48}
  .print-document{--ink:#071b37;--navy:#111875;--teal:#087c83;--teal-2:#10b5bd;--cyan:#15bde8;--blue:#075ed0;--pale:#e9f8fb;--pale-2:#dff6f5;--line:#8ec4e8;--warn:#f2a000;position:relative;direction:rtl;box-sizing:border-box;margin:0;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 .3mm #a9b9c7;overflow:visible}
  .print-page-a4{page:clinic-a4;width:210mm;min-height:297mm;padding:8mm 9mm}
  .print-page-a4-landscape{page:clinic-a4-landscape;width:297mm;min-height:210mm;padding:6mm 8mm}
  .print-page-a5{page:clinic-a5;width:148mm;min-height:210mm;padding:6mm 7mm;font-size:7.7pt}
  .print-page-a6-landscape{page:clinic-a6-landscape;width:148mm;min-height:105mm;padding:5mm 6mm;font-size:8.5pt}

  .print-head{display:flex!important;justify-content:flex-start!important;align-items:center!important;border-bottom:.45mm solid var(--teal)!important;padding:0 1mm 3.3mm!important;margin:0 0 3mm!important;min-height:18mm}
  .print-clinic-identity{display:flex;align-items:center;justify-content:flex-start;gap:3mm;color:var(--teal)}
  .print-clinic-identity h1{margin:0!important;font-size:18pt!important;line-height:1.1!important;text-align:right!important;color:var(--teal)!important;font-weight:850!important}
  .print-logo,.print-fallback-logo{box-sizing:border-box;width:16mm;height:16mm;object-fit:contain;border:.45mm solid var(--teal);border-radius:3mm;padding:1.5mm;background:#fff}
  .print-fallback-logo{display:block;color:var(--teal);padding:1.5mm}
  .print-page-a5 .print-head{min-height:15mm;padding-bottom:2.5mm!important;margin-bottom:2.2mm!important}.print-page-a5 .print-logo,.print-page-a5 .print-fallback-logo{width:14mm;height:14mm}.print-page-a5 .print-clinic-identity h1{font-size:15pt!important}
  .print-page-a6-landscape .print-head{min-height:13mm;padding-bottom:2mm!important;margin-bottom:2mm!important}.print-page-a6-landscape .print-logo,.print-page-a6-landscape .print-fallback-logo{width:12mm;height:12mm}.print-page-a6-landscape .print-clinic-identity h1{font-size:14pt!important}

  .print-title{display:grid!important;grid-template-columns:1fr;gap:1.4mm;margin:0 1mm 3mm!important;border-bottom:.3mm solid #738899;padding-bottom:2mm;text-align:center}
  .print-title>div:first-child{display:flex;flex-direction:column;align-items:center;gap:.6mm}
  .print-title h2{font-size:19pt!important;line-height:1.15!important;margin:0!important;color:var(--ink)!important;font-weight:900!important}
  .print-subtitle{font:900 22pt Georgia,serif;color:var(--teal);line-height:.9}
  .print-title-label{display:inline-flex;align-items:center;align-self:center;font-size:7.4pt;color:var(--teal);background:var(--pale-2)!important;border:.3mm solid var(--teal);border-radius:6mm;padding:.5mm 3mm;order:2}
  .print-meta{display:flex;justify-content:space-between;align-items:center;gap:3mm;width:100%}
  .print-meta div{display:flex;flex-direction:row;align-items:baseline;gap:1.2mm;border:0!important;padding:0!important;min-width:0}
  .print-meta small{font-size:7.7pt;color:#344b65}.print-meta small:after{content:':'}.print-meta strong{font-size:8.3pt;color:var(--ink);overflow-wrap:anywhere}
  .print-page-a5 .print-title{margin-bottom:2.4mm!important;padding-bottom:1.4mm}.print-page-a5 .print-title h2{font-size:16pt!important}.print-page-a5 .print-subtitle{font-size:19pt}.print-page-a5 .print-meta small{font-size:6.8pt}.print-page-a5 .print-meta strong{font-size:7.2pt}
  .print-page-a6-landscape .print-title{border:0;margin-bottom:2mm!important}.print-page-a6-landscape .print-title h2{font-size:18pt!important}

  .print-body{display:block}.print-body p{margin:1.2mm 0}.print-body h3{margin:0!important}
  .print-section{margin-top:2.6mm;border:.3mm solid var(--cyan);border-radius:2mm;overflow:hidden;break-inside:avoid;background:#fff}
  .print-section>h3,.print-card-title{font-size:10.5pt!important;line-height:1.25!important;margin:0!important;padding:1.4mm 2.4mm!important;text-align:center;color:#fff!important;background:linear-gradient(100deg,var(--teal),var(--teal-2))!important;font-weight:800}
  .print-section>p,.print-section>ul,.print-section>dl,.print-section>.print-bars{margin:0!important;padding:2mm 3mm!important}
  .print-section.soft>h3{color:var(--teal)!important;background:linear-gradient(90deg,#fff,var(--pale),#fff)!important;border-bottom:.25mm solid var(--cyan)}
  .print-page-a5 .print-section{margin-top:2mm}.print-page-a5 .print-section>h3{font-size:8.5pt!important;padding:1mm 2mm!important}.print-page-a5 .print-section>p{padding:1.4mm 2mm!important}

  .print-body table{width:100%;border-collapse:separate;border-spacing:0;font-size:8.4pt!important;border:.3mm solid var(--cyan);border-radius:2mm;overflow:hidden;page-break-inside:auto}
  .print-body thead{display:table-header-group}.print-body tr{page-break-inside:avoid}
  .print-body th{background:linear-gradient(100deg,var(--teal),var(--teal-2))!important;color:#fff!important;font-weight:800}
  .print-body td,.print-body th{border:0;border-left:.22mm solid #91cce7;border-bottom:.22mm solid #a9d7ea;padding:1.45mm 1.6mm;white-space:normal;vertical-align:middle;text-align:right}
  .print-body th:last-child,.print-body td:last-child{border-left:0}.print-body tr:last-child td{border-bottom:0}.print-body tbody tr:nth-child(even) td{background:#f4fbfd!important}.print-body td small{display:block;color:#455f72;margin-top:.5mm}
  .print-page-a5 .print-body table{font-size:7.2pt!important}.print-page-a5 .print-body td,.print-page-a5 .print-body th{padding:1.1mm 1.2mm}

  .print-patient{display:grid;grid-template-columns:1fr 1fr;gap:0;border:.3mm solid #9ab8d8;padding:0;margin-bottom:2.6mm;border-radius:2mm;overflow:hidden;break-inside:avoid;background:#fff}
  .print-patient>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1mm;padding:1.35mm 2.2mm;border-left:.2mm solid #b7d8e8;border-bottom:.2mm solid #b7d8e8;min-width:0}.print-patient>div:nth-child(even){border-left:0}.print-patient>div:nth-last-child(-n+2){border-bottom:0}
  .print-patient small{font-size:7.6pt;color:var(--blue);font-weight:750}.print-patient small:after{content:':'}.print-patient strong{font-size:9.5pt;color:var(--ink);overflow-wrap:anywhere}.print-patient span{font-size:8pt;color:#263b50}
  .print-patient-contact{grid-template-columns:1fr}.print-patient-contact>div,.print-patient-contact>div:nth-child(even),.print-patient-contact>div:nth-last-child(-n+2){border-left:0;border-bottom:.2mm solid #b7d8e8}.print-patient-contact>div:last-child{border-bottom:0}
  .print-page-a5 .print-patient{margin-bottom:2mm}.print-page-a5 .print-patient>div{padding:1.1mm 1.6mm}.print-page-a5 .print-patient small{font-size:6.8pt}.print-page-a5 .print-patient strong,.print-page-a5 .print-patient span{font-size:7.4pt}

  .print-allergy,.print-warning,.print-notice{border:.35mm solid var(--warn);background:#fff7e7!important;color:#5b3b04;padding:1.8mm 2.5mm;margin:2mm 0;border-radius:2mm;break-inside:avoid}.print-allergy strong,.print-warning strong{color:#bc5800}.print-warning p{font-size:7.7pt}.print-notice{border-color:#18aeb9;background:var(--pale-2)!important;color:#174653;text-align:center;font-weight:700}
  .print-rx-list{display:grid;gap:2mm}.print-rx-line{position:relative;border:.3mm solid #66c9d4;border-radius:2mm;overflow:hidden;break-inside:avoid;background:#fff}
  .print-rx-number{position:absolute;right:0;top:0;display:grid;place-items:center;width:9mm;height:7.6mm;background:#eaf8f5!important;border-left:.3mm solid var(--teal);color:var(--teal);font-size:12pt;font-weight:900;z-index:2}
  .print-rx-line>div{display:grid;grid-template-columns:1fr 1fr}.print-rx-line>div>strong{grid-column:1/-1;display:block;background:linear-gradient(100deg,var(--teal),#006e73)!important;color:#fff!important;padding:1.2mm 11mm 1.2mm 2mm;font-size:9.2pt;text-align:left;direction:ltr}.print-rx-line p{margin:0!important;padding:1.3mm 2mm!important;font-size:7.3pt}.print-rx-line p b{color:var(--blue)}.print-rx-line small{grid-column:1/-1;display:block;text-align:center;background:var(--pale-2)!important;color:var(--teal);font-size:7pt;font-weight:700;padding:.8mm 2mm;border-top:.2mm solid #8fd6d8}
  .print-page-a5 .print-rx-list{gap:1.5mm}.print-page-a5 .print-rx-line>div>strong{font-size:8.4pt}.print-page-a5 .print-rx-line p{font-size:6.7pt;padding:1mm 1.6mm!important}

  .print-amount{border:.3mm solid #64c6cc;border-radius:2mm;padding:0;text-align:center;margin:2.5mm 0;overflow:hidden;background:linear-gradient(90deg,#fff,#e4f8f7,#fff)!important}.print-amount small{display:block;background:linear-gradient(100deg,var(--teal),var(--teal-2))!important;color:#fff!important;padding:1.4mm;font-size:9pt;font-weight:800}.print-amount strong{display:block;font-size:21pt;color:var(--teal);line-height:1.25;margin:1.5mm 0 .5mm}.print-amount span{display:block;font-size:8.5pt;padding-bottom:1.5mm}
  .print-page-a5 .print-amount small{font-size:8pt;padding:1mm}.print-page-a5 .print-amount strong{font-size:18pt;margin:1mm 0 .3mm}.print-page-a5 .print-amount span{font-size:7pt;padding-bottom:1mm}
  .print-payment-note{border:.25mm solid #b1c2d0;border-radius:2mm;padding:1.4mm 2mm;margin:2mm 0}.print-payment-note p{margin:.6mm 0}.print-payment-method{display:flex;align-items:center;gap:2mm;border:.25mm solid #b1c2d0;border-radius:2mm;padding:1.4mm 2mm;margin-top:2mm}
  .print-bottom-note{margin:2mm 0 0!important;padding:1.5mm 2mm 0!important;border-top:.35mm solid var(--teal);text-align:center;color:#344b65;font-size:7pt}
  .print-summary-wrap{margin-top:2mm}.print-summary-wrap>h3{font-size:9pt;margin:0!important;padding:1.2mm 2mm;background:#eef5f8!important;color:var(--ink);border:.25mm solid #aabcc8;border-bottom:0;border-radius:2mm 2mm 0 0}.print-summary{border-radius:0 0 2mm 2mm!important}.print-summary td:last-child{text-align:left}.print-total td{font-weight:800;background:#eef4f6!important}.print-balance-due td{color:var(--teal)!important;font-size:9.5pt;font-weight:900;background:var(--pale-2)!important}

  .print-balance,.print-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:2mm;margin:2.5mm 0;break-inside:avoid}.print-kpis{grid-template-columns:repeat(4,1fr)}
  .print-balance>div,.print-kpis>div{display:flex;flex-direction:column;justify-content:center;border:.3mm solid var(--cyan);padding:2mm;border-radius:2mm;background:linear-gradient(135deg,#fff,var(--pale))!important;min-height:13mm}.print-balance span,.print-kpis span{font-size:7.3pt;color:#233f61}.print-balance strong,.print-kpis strong{font-size:12pt;color:var(--navy)}.print-balance .balance-due,.print-kpis .featured{color:#fff!important;background:linear-gradient(135deg,var(--teal),var(--teal-2))!important}.print-balance .balance-due span,.print-balance .balance-due strong,.print-kpis .featured span,.print-kpis .featured strong{color:#fff!important}
  .print-kpis.kpis-5{grid-template-columns:repeat(5,1fr)}.print-kpis.kpis-6{grid-template-columns:repeat(3,1fr)}

  .print-order-total{display:flex;justify-content:space-between;align-items:center;border:.35mm solid var(--cyan);background:var(--pale-2)!important;padding:2.2mm 3mm;margin:2.5mm 0;border-radius:2mm}.print-order-total strong{font-size:13pt;color:var(--teal)}
  .print-order-facts{display:grid;grid-template-columns:repeat(2,1fr)}.print-order-facts>div{display:grid;grid-template-columns:auto 1fr;gap:1mm;padding:1.8mm 2.4mm;border-left:.2mm solid #9bd5e7;border-bottom:.2mm solid #9bd5e7;background:#f8fdfe!important}.print-order-facts>div:nth-child(even){border-left:0}.print-order-facts>div:nth-last-child(-n+2){border-bottom:0}.print-order-facts small{color:var(--blue);font-weight:750}.print-order-facts small:after{content:':'}.print-order-facts strong{color:var(--navy)}
  .print-party{display:grid;grid-template-columns:auto 1fr;gap:1mm 3mm;border:.3mm solid var(--cyan);padding:2.2mm 3mm;margin:2.5mm 0;border-radius:2mm;break-inside:avoid;background:#f8fdfe!important}.print-party small{color:var(--blue);font-size:7.5pt}.print-party strong{font-size:10pt}.print-party span{grid-column:1/-1}
  .print-decision,.consent-statement{border:.3mm solid var(--cyan);padding:2.5mm;margin:2.5mm 0;border-radius:2mm;break-inside:avoid;background:linear-gradient(90deg,#fff,var(--pale),#fff)!important}.consent-statement>strong,.print-decision>strong{display:block;text-align:center;color:var(--teal);font-size:11pt}.consent-statement p{line-height:1.9}
  .print-signatures{display:grid;grid-template-columns:repeat(2,1fr);gap:10mm;margin-top:3mm;border:.25mm solid #87aef0;border-radius:2mm;padding:2.5mm 5mm;break-inside:avoid}.print-signatures>div:only-child{grid-column:1/-1;width:55%;justify-self:center;text-align:center}.print-signatures>div{min-height:12mm;text-align:center}.print-signatures span{display:block;font-size:8pt;font-weight:700}.print-signatures i{display:block;border-bottom:.3mm solid #163d84;margin-top:8mm}
  .print-page-a5 .print-signatures{margin-top:2mm;padding:1.8mm 4mm}.print-page-a5 .print-signatures>div{min-height:10mm}.print-page-a5 .print-signatures i{margin-top:6mm}
  .print-footer{display:none!important}.print-void-stamp{position:fixed;top:43%;right:25%;transform:rotate(-18deg);font-size:30pt;font-weight:900;border:1.2mm solid #bb1f2a;color:#bb1f2a;padding:4mm 12mm;opacity:.24;z-index:10}
  .print-help{font-size:7.5pt;color:#2a435b;padding:1.5mm 2mm;border:.25mm solid #b4c7d3;border-radius:2mm;margin-top:2mm!important}.print-help b{color:var(--blue)}
  .print-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:2.5mm}.print-facts{margin:0}.print-facts>div{display:grid;grid-template-columns:27mm 1fr;border-bottom:.2mm solid #b9dbe8;padding:1.1mm 2mm}.print-facts>div:last-child{border-bottom:0}.print-facts dt{color:var(--blue);font-weight:750}.print-facts dd{margin:0;font-weight:600}
  .print-treatment-head,.print-request-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:2mm 0;border:.3mm solid var(--cyan);border-radius:2mm;overflow:hidden}.print-request-grid{grid-template-columns:repeat(2,1fr)}.print-treatment-head>div,.print-request-grid>div{display:flex;flex-direction:column;border-left:.2mm solid #9bd5e7;padding:1.6mm 2mm;background:#f7fdfe!important}.print-treatment-head>div:last-child,.print-request-grid>div:nth-child(even){border-left:0}.print-treatment-head small,.print-request-grid small{color:var(--blue);font-size:7.4pt}.print-treatment-head strong,.print-request-grid strong{font-size:8.5pt}
  .print-visit{border:.3mm solid var(--cyan);border-radius:2mm;overflow:hidden;margin:2mm 0;break-inside:avoid}.print-visit-head{display:flex;justify-content:space-between;background:linear-gradient(100deg,var(--teal),var(--teal-2))!important;color:#fff;padding:1.3mm 2.4mm}.print-visit ul,.print-check-list{columns:2;margin:0;padding:2mm 7mm 2mm 3mm}.print-visit li,.print-check-list li{break-inside:avoid;margin-bottom:.7mm}.print-visit p{padding:0 2mm 1.5mm!important}
  .print-result-space{min-height:25mm}.print-result-space>p{min-height:17mm}
  .appointment-ticket{display:grid;grid-template-columns:1fr 1fr;gap:2mm;border:.4mm solid var(--teal-2);border-radius:2mm;padding:3mm;background:linear-gradient(120deg,#fff,var(--pale))!important}.appointment-ticket>strong{grid-column:1/-1;font-size:15pt;color:var(--navy)}.appointment-ticket>span{grid-column:1/-1;border:.25mm solid var(--line);padding:1.4mm 2mm;border-radius:2mm}.appointment-ticket>div{display:flex;flex-direction:column;border:.3mm solid var(--teal-2);border-radius:2mm;padding:2mm;text-align:center;min-height:15mm}.appointment-ticket>div b{font-size:13pt;color:var(--navy)}.appointment-ticket>div:last-of-type{grid-column:1/-1}.appointment-ticket p{grid-column:1/-1;text-align:center;background:var(--pale-2)!important;color:var(--teal);font-weight:750;padding:1.6mm;border-radius:2mm;margin:0!important}
  .print-bars{display:grid;gap:1.2mm}.print-bars>div{display:grid;grid-template-columns:28mm 1fr 10mm;align-items:center;gap:1.5mm;font-size:7.4pt}.print-bars i{display:block;height:3.2mm;background:#e9eef1!important;border-radius:1mm;overflow:hidden}.print-bars b{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--teal-2))!important}.print-bars>div:nth-child(2n) b{background:linear-gradient(90deg,#f0a719,#ffc13f)!important}.print-bars>div:nth-child(3n) b{background:linear-gradient(90deg,#0878c9,#40a4ef)!important}.print-bars strong{text-align:left;color:var(--navy)}
  .print-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:2mm}.print-report-grid.three{grid-template-columns:repeat(3,1fr)}.print-report-grid .print-section{margin-top:0}.print-kind-report .print-section>h3{font-size:8.5pt!important;padding:1mm!important}.print-kind-report .print-body{font-size:7pt}.print-kind-report .print-kpis{margin:1.5mm 0 2mm}.print-kind-report .print-kpis>div{padding:1.4mm;min-height:11mm}.print-kind-report .print-kpis strong{font-size:13pt}.print-kind-report .print-help{margin-top:1.5mm!important;padding:1mm 2mm}.print-kind-report .print-signatures{margin-top:1.5mm;padding:1mm 5mm}.print-kind-report .print-signatures>div{min-height:7mm}.print-kind-report .print-signatures i{margin-top:3.5mm}
  .print-report-bottom{margin-top:2mm}.print-report-bottom>.print-help{margin:0!important;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--pale)!important;border-color:var(--cyan)}
  .print-overview-bars{border:.3mm solid var(--cyan);border-radius:2mm;padding:2mm 3mm;background:#fff}.print-overview-bars .print-bars>div{grid-template-columns:25mm 1fr 18mm}
  .print-odontogram .dental-scroll{overflow:visible!important;border:.3mm solid var(--cyan)!important;background:linear-gradient(120deg,#fff,#f2fbfd)!important;padding:1.5mm!important;border-radius:2mm}.print-odontogram .dental-board{min-width:0!important;width:100%!important}.print-odontogram .dental-unit{pointer-events:none}.print-odontogram .chart-caption{font-size:6.5pt}.print-odontogram .anatomical-tooth{height:17mm!important}.print-odontogram .fdi-number{font-size:6.5pt!important}.print-kind-odontogram .print-head{min-height:12mm;padding-bottom:1.5mm!important;margin-bottom:1.5mm!important}.print-kind-odontogram .print-title{position:absolute;top:8mm;left:10mm;width:105mm;border:0;margin:0!important}.print-kind-odontogram .print-title h2{font-size:19pt!important}.print-kind-odontogram .print-patient{grid-template-columns:repeat(3,1fr);margin-bottom:1.5mm}.print-kind-odontogram .print-two-columns{margin-top:2mm}
}

@media(max-width:640px){.print-menu{grid-template-columns:1fr}.print-treatment-menu>div{align-items:stretch;flex-wrap:wrap}.print-treatment-menu>div>span{width:100%}}
