
:root{
  --primary:#07552d;
  --primary-dark:#043b20;
  --primary-soft:#eaf5ef;
  --accent:#d4a72c;
  --bg:#f3f7f5;
  --card:#ffffff;
  --text:#17221c;
  --muted:#6c7a72;
  --border:#dce6e0;
  --danger:#b42318;
  --success:#087a3d;
  --shadow:0 10px 35px rgba(22,61,40,.08);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{color:var(--primary);text-decoration:none}
button,input,select,textarea{font:inherit}
.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}
.sidebar{background:linear-gradient(180deg,var(--primary-dark),var(--primary));color:#fff;padding:26px 20px;position:sticky;top:0;height:100vh}
.brand{display:flex;gap:13px;align-items:center;padding:4px 6px 25px;border-bottom:1px solid rgba(255,255,255,.16)}
.brand-mark{width:46px;height:46px;border-radius:14px;background:#fff;color:var(--primary);display:grid;place-items:center;font-weight:800;font-size:20px}
.brand h1{font-size:16px;line-height:1.25;margin:0}.brand small{opacity:.72}
.side-nav{margin-top:24px;display:grid;gap:8px}
.side-nav a{color:#fff;padding:13px 14px;border-radius:10px;display:flex;gap:11px;align-items:center}
.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.14)}
.side-footer{position:absolute;left:20px;right:20px;bottom:22px}
.side-footer a{display:block;text-align:center;color:#fff;border:1px solid rgba(255,255,255,.28);padding:11px;border-radius:10px}
.content{min-width:0}
.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 34px}
.topbar h2{font-size:21px;margin:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}
.user-pill{background:var(--primary-soft);color:var(--primary);padding:10px 14px;border-radius:999px;font-weight:700;font-size:13px}
.page{padding:30px 34px 45px;max-width:1450px;margin:auto}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}
.form-card{overflow:hidden}
.card-header{padding:24px 28px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.card-header h3{margin:0;font-size:18px}.card-header p{margin:6px 0 0;color:var(--muted);font-size:13px}
.section{padding:26px 28px}
.section+.section{border-top:1px solid var(--border)}
.section-title{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-weight:800;margin:0 0 18px}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.form-group{display:flex;flex-direction:column;gap:8px}
.form-group.full{grid-column:1/-1}
.form-group.span-2{grid-column:span 2}
label{font-weight:700;font-size:13px;color:#314138}
.req{color:var(--danger)}
input,select,textarea{width:100%;border:1px solid #cfdad4;border-radius:10px;background:#fff;padding:12px 13px;outline:none;transition:.2s}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(7,85,45,.10)}
textarea{min-height:100px;resize:vertical}
.input-hint{font-size:11px;color:var(--muted)}
.form-actions{padding:20px 28px;background:#f9fbfa;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px}
.btn{border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}
.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}
.alert{background:#fff0ef;color:var(--danger);border:1px solid #ffd2cf;padding:13px 15px;border-radius:10px;margin-bottom:18px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}
.stat{padding:21px}.stat b{font-size:30px;display:block}.stat span{color:var(--muted);font-size:13px}
.toolbar{display:flex;gap:15px;justify-content:space-between;margin-bottom:18px}.toolbar form{display:flex;gap:10px;flex:1}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:14px 16px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.data-table th{font-size:12px;text-transform:uppercase;color:var(--muted);background:#f8faf9}
.status{font-weight:800;padding:5px 10px;border-radius:999px;font-size:12px}.pass{background:#def5e7;color:var(--success)}.fail{background:#ffe3e0;color:var(--danger)}
.login-body,.verify-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef7f1,#f8faf9)}
.login-card,.verify-card{width:min(92%,720px);padding:34px}
.receipt-actions{max-width:850px;margin:18px auto;display:flex;gap:10px}.receipt{background:#fff;max-width:850px;margin:0 auto 30px;padding:50px;box-shadow:var(--shadow)}
.receipt-head{display:flex;align-items:center;gap:25px;text-align:center}.receipt-head h1{font-size:28px;margin:0}.receipt-head h2{font-size:22px}.logo-placeholder{border:2px solid var(--primary);color:var(--primary);border-radius:50%;width:110px;height:110px;display:grid;place-items:center;font-weight:bold}
.receipt-grid{display:flex;justify-content:space-between;align-items:center}.receipt p{font-size:17px;border-bottom:1px solid #ddd;padding-bottom:9px}.signature{margin:55px 0 15px auto;border-top:1px solid #000;width:230px;text-align:center;padding-top:8px}.copy-label{background:var(--primary);color:#fff;border-radius:12px;padding:12px;text-align:center;font-weight:bold;width:300px;margin:25px auto}.receipt h3{text-align:center}.receipt table,.receipt th,.receipt td{border:1px solid #333;border-collapse:collapse;padding:10px}.receipt th{background:var(--primary);color:#fff}
.verified{background:#e4f7e9;color:var(--success);padding:12px;border-radius:8px;font-weight:bold}.invalid{background:#ffe3e3;color:var(--danger);padding:12px;border-radius:8px}.verify-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.verify-grid p{background:#f5f7f5;padding:14px;border-radius:8px}.verify-grid span{display:block;color:var(--muted);font-size:13px;margin-bottom:5px}
.mobile-nav{display:none}
@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-nav{display:flex}.form-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{padding:0 18px}.page{padding:20px 14px}.form-grid{grid-template-columns:1fr}.form-group.span-2{grid-column:auto}.stats{grid-template-columns:1fr}.card-header,.section,.form-actions{padding-left:18px;padding-right:18px}.toolbar{flex-direction:column}.verify-grid{grid-template-columns:1fr}.receipt{padding:22px}.receipt-head{flex-direction:column}.receipt-head h1{font-size:22px}}
@media print{body{background:#fff}.no-print{display:none}.receipt{box-shadow:none;margin:0;max-width:none;padding:20px}@page{size:A4;margin:10mm}}

/* V3 branding and invoice */
.top-branding{display:flex;align-items:center;gap:14px}
.top-branding img{object-fit:contain;display:block}
.top-gov-logo{width:58px;height:58px}
.top-transport-logo{width:92px;height:58px}
.top-branding-text h2{margin:0;font-size:20px}
.top-branding-text p{margin:4px 0 0;font-size:12px;color:var(--muted)}
.header-actions{display:flex;align-items:center;gap:10px}
.btn-danger-outline{background:#fff;color:#c62828;border:1px solid #ef5350}
.btn-danger-outline:hover{background:#fff3f3}
.invoice-page{position:relative;overflow:hidden}
.invoice-watermark{position:absolute;inset:24% 8% auto 28%;width:58%;opacity:.075;z-index:0;pointer-events:none}
.invoice-content{position:relative;z-index:1}
.invoice-header{display:grid;grid-template-columns:120px 1fr 120px;align-items:center;gap:18px;border-bottom:2px solid #123c25;padding-bottom:18px;margin-bottom:24px}
.invoice-header img{width:105px;height:105px;object-fit:contain}
.invoice-heading{text-align:center}
.invoice-heading h1{font-size:25px;margin:0;color:#083d22}
.invoice-heading h2{font-size:20px;margin:8px 0 0}
.invoice-heading p{font-size:12px;color:#657168;margin:7px 0 0}
.invoice-spacer{width:105px}
.invoice-meta{display:grid;grid-template-columns:1fr 155px;gap:24px;align-items:start}
.invoice-details{display:grid;grid-template-columns:190px 1fr;row-gap:11px;font-size:14px}
.invoice-details .label{color:#5d6a62}
.invoice-details .value{font-weight:700;border-bottom:1px solid #dfe6e1;padding-bottom:7px}
.qr-panel{text-align:center;border:1px solid #dce6e0;border-radius:12px;padding:13px;background:#fff}
.qr-panel small{display:block;color:#68756c;margin-top:8px}
.invoice-status{display:inline-block}
.invoice-bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:36px}
.invoice-box{border:1px solid #cfd9d3;border-radius:10px;overflow:hidden}
.invoice-box h3{background:#07552d;color:#fff;margin:0;padding:10px 13px;font-size:13px}
.invoice-box ul{margin:13px 18px;padding-left:17px;font-size:12px;line-height:1.7}
.invoice-box table{font-size:11px}
.invoice-box th,.invoice-box td{padding:7px;border:1px solid #d7dfda}
.signature-line{width:230px;margin:55px 0 10px auto;border-top:1px solid #222;text-align:center;padding-top:8px;font-size:12px}
.invoice-footer{margin:24px -50px -50px;background:#07552d;color:#fff;text-align:center;padding:13px;font-size:12px}
.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:18px}
.login-brand img{width:82px;height:82px;object-fit:contain}
.login-brand h1{margin:0;font-size:22px;color:#07552d}
.login-brand p{margin:5px 0 0;color:#6c7a72}
@media(max-width:800px){
  .top-transport-logo{display:none}
  .invoice-header{grid-template-columns:90px 1fr}
  .invoice-spacer{display:none}
  .invoice-header img{width:82px;height:82px}
  .invoice-meta,.invoice-bottom{grid-template-columns:1fr}
  .invoice-details{grid-template-columns:140px 1fr}
}
@media print{
  .invoice-footer{margin-left:-20px;margin-right:-20px;margin-bottom:-20px}
}

/* V4 admin header fix */
.topbar{
  min-height:84px;
  height:auto;
  overflow:hidden;
  gap:20px;
  flex-wrap:wrap;
}
.top-branding{
  min-width:0;
  flex:1;
  display:flex;
  align-items:center;
  gap:12px;
  overflow:hidden;
}
.top-branding img{
  position:static !important;
  inset:auto !important;
  max-width:none !important;
  object-fit:contain !important;
  flex:0 0 auto;
}
.top-gov-logo{
  width:58px !important;
  height:58px !important;
}
.top-transport-logo{
  width:78px !important;
  height:52px !important;
}
.top-branding-text{
  min-width:0;
}
.top-branding-text h2{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.content{
  overflow:hidden;
}
.page{
  position:relative;
  z-index:1;
}
.card,.table-wrap,.stats,.toolbar{
  position:relative;
  z-index:2;
}
.data-table{
  background:#fff;
}
@media(max-width:1100px){
  .top-transport-logo{display:none !important}
}
@media(max-width:760px){
  .topbar{padding:14px 18px}
  .top-branding-text h2{font-size:16px}
  .top-branding-text p{display:none}
  .header-actions{width:100%;justify-content:flex-end}
}

.receipt-v5{max-width:900px;padding:34px 38px 30px;border:1.5px solid #0b4f2b;border-radius:4px}
.receipt-top-row{display:grid;grid-template-columns:150px 1fr 155px;gap:20px;align-items:center}
.receipt-gov-logo-wrap{display:flex;justify-content:flex-start;align-items:center}
.receipt-gov-logo{width:132px;height:132px;object-fit:contain}
.receipt-title-block{text-align:center}
.receipt-title-block h1{margin:0;color:#064b29;font-size:27px;letter-spacing:.4px}
.receipt-title-block h2{margin:9px 0 0;color:#0b2819;font-size:21px}
.receipt-title-block p{margin:7px 0 0;color:#68756d;font-size:12px}
.receipt-qr-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #d5e0d9;border-radius:12px;background:#fff;padding:10px 8px}
.receipt-qr-wrap small{margin-top:7px;color:#637069;font-size:11px;text-align:center;line-height:1.3}
.receipt-divider{border-top:2px solid #0b4f2b;margin:20px 0 18px}
.receipt-info-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.88);position:relative;z-index:2}
.receipt-info-table th,.receipt-info-table td{border:1px solid #ced9d2;padding:11px 12px;vertical-align:middle}
.receipt-info-table th{width:19%;background:#eef6f1;color:#365044;font-size:12px;font-weight:700;text-align:left}
.receipt-info-table td{width:31%;color:#101a14;font-size:13px;font-weight:700}
.receipt-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.computer-generated-note{margin-top:22px;border-top:1px solid #0b4f2b;border-bottom:1px solid #0b4f2b;padding:12px;text-align:center;font-size:12px;font-style:italic;color:#263c31;background:#f7fbf8}
.computer-check{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#0a6b37;color:#fff;font-style:normal;font-weight:800;margin-right:8px}
.invoice-watermark-v5{inset:30% 12% auto 28%;width:55%;opacity:.055}
@media(max-width:760px){.receipt-top-row{grid-template-columns:1fr;text-align:center}.receipt-gov-logo-wrap{justify-content:center}.receipt-info-table th,.receipt-info-table td{display:block;width:100%}.receipt-bottom-grid{grid-template-columns:1fr}}
@media print{.receipt-v5{width:100%;max-width:none;border:1.5px solid #0b4f2b;padding:20px 24px}.receipt-top-row{grid-template-columns:135px 1fr 145px;gap:14px}.receipt-gov-logo{width:118px;height:118px}.receipt-info-table th,.receipt-info-table td{padding:8px 9px}}

/* V6 certificate */
.certificate-page{width:210mm;min-height:297mm;margin:20px auto;background:#fff;padding:8mm;box-shadow:0 8px 30px rgba(0,0,0,.12)}
.certificate-border{min-height:281mm;border:2px solid #0a4d2a;padding:8mm;position:relative}
.certificate-border:before{content:"";position:absolute;inset:5px;border:1px solid #7aa58c;pointer-events:none}
.certificate-header{display:grid;grid-template-columns:135px 1fr 135px;align-items:center;gap:18px;position:relative;z-index:1}
.certificate-transport-logo,.certificate-gov-logo{width:125px;height:125px;object-fit:contain}
.certificate-heading{text-align:center}
.certificate-heading h1{margin:0;color:#064c2a;font-size:27px;line-height:1.2}
.certificate-heading-line{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:12px;color:#0a4d2a}
.certificate-heading-line span{height:2px;background:#0a4d2a;width:150px}
.certificate-section-title{width:52%;margin:14px auto;background:#07552d;color:#fff;text-align:center;padding:8px 15px;border-radius:6px;font-size:19px;font-weight:800}
.small-title{width:34%;font-size:16px;margin-top:16px}
.table-title{width:100%;margin:14px 0 0;border-radius:5px 5px 0 0;font-size:16px}
.certificate-result-box{display:grid;grid-template-columns:150px 120px 150px 1fr;align-items:center;gap:16px;border:1.5px solid #0a4d2a;border-radius:10px;padding:16px 20px}
.certificate-qr{display:flex;justify-content:center}
.certificate-result-label{font-size:20px;font-weight:800;text-align:right}
.certificate-result{display:inline-block;text-align:center;padding:14px;border-radius:8px;font-size:32px;font-weight:900;color:#fff}
.certificate-result.pass{background:#138c2e}.certificate-result.fail{background:#b42318}
.certificate-report-no{border-left:1px solid #9bb5a5;padding-left:28px}
.certificate-report-no span{display:block;font-size:18px;font-weight:700}
.certificate-report-no strong{display:block;margin-top:5px;color:#08702e;font-size:19px}
.certificate-validity{border:1.5px solid #0a4d2a;border-radius:10px;padding:18px 26px;font-size:15px;line-height:1.8}
.certificate-summary-table,.certificate-info-table,.certificate-emission-table,.certificate-defect-table{width:100%;border-collapse:collapse}
.certificate-summary-table{margin-top:14px}
.certificate-summary-table th,.certificate-summary-table td,.certificate-info-table th,.certificate-info-table td,.certificate-emission-table td,.certificate-defect-table th,.certificate-defect-table td{border:1px solid #aabbb0;padding:8px 9px;font-size:12px}
.certificate-summary-table thead th,.certificate-defect-table thead th{background:#062f4c;color:#fff}
.certificate-summary-table td{text-align:center}
.certificate-info-table th{background:#07552d;color:#fff;width:4%;text-align:center}
.certificate-info-table td:nth-child(3n+2){background:#f4f8f5;color:#425348;width:11%}
.certificate-info-table td:nth-child(3n){font-weight:700;width:18%}
.certificate-emission-table td:nth-child(odd){background:#f4f8f5;font-weight:700}
.certificate-defect-table td{text-align:center}
.certificate-footer-note{margin:18px auto 0;text-align:center;font-size:12px;font-style:italic;color:#263c31}
.certificate-footer-note span{display:inline-grid;place-items:center;width:34px;height:34px;background:#08723a;color:#fff;border-radius:50%;font-style:normal;font-weight:900;margin-right:10px}
@media(max-width:900px){.certificate-page{width:100%;padding:12px}.certificate-header{grid-template-columns:1fr}.certificate-transport-logo,.certificate-gov-logo{margin:auto}.certificate-result-box{grid-template-columns:1fr;text-align:center}.certificate-report-no{border-left:0;border-top:1px solid #9bb5a5;padding:12px 0 0}.certificate-section-title,.small-title{width:100%}}
@media print{.certificate-page{margin:0;box-shadow:none;width:210mm;min-height:297mm;padding:6mm}.certificate-border{min-height:285mm}.no-print{display:none}@page{size:A4;margin:0}}

/* V7 PROFESSIONAL PDF / PRINT FIXES */

/* Prevent browser print scaling caused by responsive mobile rules */
@media print {
  html, body {
    width: 210mm !important;
    min-width: 210mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .no-print,
  .receipt-actions {
    display: none !important;
  }

  /* RECEIPT: force one-page A4 layout */
  .receipt-v5 {
    width: 194mm !important;
    max-width: 194mm !important;
    min-height: auto !important;
    height: auto !important;
    margin: 8mm auto 0 !important;
    padding: 7mm 8mm 6mm !important;
    border: 1.2px solid #0b4f2b !important;
    box-shadow: none !important;
    overflow: hidden !important;
    page-break-inside: avoid !important;
    break-inside: avoid-page !important;
  }

  .receipt-top-row {
    display: grid !important;
    grid-template-columns: 30mm 1fr 31mm !important;
    gap: 4mm !important;
    align-items: center !important;
  }

  .receipt-gov-logo-wrap {
    display: flex !important;
    justify-content: flex-start !important;
  }

  .receipt-gov-logo {
    width: 27mm !important;
    height: 27mm !important;
    object-fit: contain !important;
  }

  .receipt-title-block h1 {
    font-size: 18pt !important;
    line-height: 1.05 !important;
  }

  .receipt-title-block h2 {
    font-size: 13.5pt !important;
    margin-top: 2mm !important;
  }

  .receipt-title-block p {
    font-size: 8pt !important;
    margin-top: 1.5mm !important;
  }

  .receipt-qr-wrap {
    width: 31mm !important;
    min-width: 31mm !important;
    padding: 2mm !important;
    border-radius: 3mm !important;
  }

  .receipt-qr-wrap canvas,
  .receipt-qr-wrap img {
    width: 25mm !important;
    height: 25mm !important;
  }

  .receipt-qr-wrap small {
    font-size: 6.5pt !important;
    margin-top: 1mm !important;
  }

  .receipt-divider {
    margin: 4mm 0 3.5mm !important;
  }

  .receipt-info-table {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }

  .receipt-info-table tbody {
    display: table-row-group !important;
  }

  .receipt-info-table tr {
    display: table-row !important;
    page-break-inside: avoid !important;
  }

  .receipt-info-table th,
  .receipt-info-table td {
    display: table-cell !important;
    width: auto !important;
    padding: 2.2mm 2.4mm !important;
    font-size: 8.4pt !important;
    line-height: 1.15 !important;
    vertical-align: middle !important;
  }

  .receipt-info-table th {
    width: 19% !important;
  }

  .receipt-info-table td {
    width: 31% !important;
  }

  .receipt-bottom-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4mm !important;
    margin-top: 4mm !important;
  }

  .invoice-box {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .invoice-box h3 {
    padding: 2mm !important;
    font-size: 8pt !important;
  }

  .invoice-box ul {
    margin: 2.5mm 3mm !important;
    padding-left: 4mm !important;
    font-size: 7.2pt !important;
    line-height: 1.35 !important;
  }

  .invoice-box table {
    width: 100% !important;
    table-layout: fixed !important;
    font-size: 6.8pt !important;
  }

  .invoice-box th,
  .invoice-box td {
    padding: 1.5mm !important;
    font-size: 6.8pt !important;
  }

  .computer-generated-note {
    margin-top: 3.5mm !important;
    padding: 2mm !important;
    font-size: 7.5pt !important;
  }

  .computer-check {
    width: 5mm !important;
    height: 5mm !important;
    margin-right: 2mm !important;
  }

  .invoice-watermark-v5 {
    width: 48% !important;
    inset: 32% 12% auto 31% !important;
    opacity: .045 !important;
  }

  /* CERTIFICATE: force all content onto one A4 page */
  .certificate-page {
    width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 5mm !important;
    box-shadow: none !important;
    overflow: hidden !important;
    page-break-inside: avoid !important;
    break-inside: avoid-page !important;
  }

  .certificate-border {
    width: 200mm !important;
    height: 287mm !important;
    min-height: 287mm !important;
    padding: 5.5mm !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .certificate-header {
    display: grid !important;
    grid-template-columns: 26mm 1fr 26mm !important;
    gap: 4mm !important;
  }

  .certificate-transport-logo,
  .certificate-gov-logo {
    width: 24mm !important;
    height: 24mm !important;
  }

  .certificate-heading h1 {
    font-size: 17pt !important;
    line-height: 1.05 !important;
  }

  .certificate-heading-line {
    margin-top: 2mm !important;
  }

  .certificate-heading-line span {
    width: 28mm !important;
  }

  .certificate-section-title {
    width: 52% !important;
    margin: 2.5mm auto !important;
    padding: 1.5mm 3mm !important;
    font-size: 11pt !important;
  }

  .small-title {
    width: 36% !important;
    font-size: 9pt !important;
    margin-top: 2.5mm !important;
  }

  .table-title {
    width: 100% !important;
    margin: 2.5mm 0 0 !important;
    font-size: 9pt !important;
  }

  .certificate-result-box {
    display: grid !important;
    grid-template-columns: 28mm 22mm 30mm 1fr !important;
    gap: 3mm !important;
    padding: 3mm 4mm !important;
    border-radius: 3mm !important;
  }

  .certificate-qr canvas,
  .certificate-qr img {
    width: 24mm !important;
    height: 24mm !important;
  }

  .certificate-result-label {
    font-size: 10pt !important;
  }

  .certificate-result {
    padding: 3mm 2mm !important;
    font-size: 18pt !important;
  }

  .certificate-report-no {
    padding-left: 5mm !important;
  }

  .certificate-report-no span {
    font-size: 9pt !important;
  }

  .certificate-report-no strong {
    font-size: 10pt !important;
  }

  .certificate-validity {
    padding: 3mm 5mm !important;
    font-size: 8pt !important;
    line-height: 1.35 !important;
    border-radius: 3mm !important;
  }

  .certificate-validity p {
    margin: 1.5mm 0 !important;
  }

  .certificate-summary-table {
    margin-top: 2.5mm !important;
    table-layout: fixed !important;
  }

  .certificate-summary-table th,
  .certificate-summary-table td,
  .certificate-info-table th,
  .certificate-info-table td,
  .certificate-emission-table td,
  .certificate-defect-table th,
  .certificate-defect-table td {
    padding: 1.45mm 1.6mm !important;
    font-size: 6.8pt !important;
    line-height: 1.15 !important;
  }

  .certificate-info-table {
    table-layout: fixed !important;
  }

  .certificate-info-table th {
    width: 4% !important;
  }

  .certificate-info-table td:nth-child(3n+2) {
    width: 10% !important;
  }

  .certificate-info-table td:nth-child(3n) {
    width: 19% !important;
  }

  .certificate-footer-note {
    margin-top: 3mm !important;
    font-size: 7pt !important;
  }

  .certificate-footer-note span {
    width: 6mm !important;
    height: 6mm !important;
    margin-right: 2mm !important;
  }

  @page {
    size: A4 portrait;
    margin: 0;
  }
}

/* V8 RECEIPT WATERMARK FIX — keep the approved design unchanged */
.receipt-v5{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.receipt-v5 .invoice-watermark-v5{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;
  bottom:auto !important;
  width:58% !important;
  max-width:520px !important;
  height:auto !important;
  transform:translate(-50%,-42%) !important;
  opacity:.075 !important;
  object-fit:contain !important;
  z-index:0 !important;
  pointer-events:none !important;
  filter:none !important;
}
.receipt-v5 .invoice-content{
  position:relative !important;
  z-index:2 !important;
}
.receipt-v5 .receipt-info-table{
  background:transparent !important;
}
.receipt-v5 .receipt-info-table th{
  background:rgba(238,246,241,.90) !important;
}
.receipt-v5 .receipt-info-table td{
  background:rgba(255,255,255,.84) !important;
}
.receipt-v5 .invoice-box{
  background:rgba(255,255,255,.88) !important;
}
.receipt-v5 .invoice-box h3{
  position:relative;
  z-index:2;
}
.receipt-v5 .computer-generated-note{
  background:rgba(247,251,248,.92) !important;
}
@media print{
  .receipt-v5 .invoice-watermark-v5{
    width:56% !important;
    max-width:none !important;
    opacity:.065 !important;
    transform:translate(-50%,-40%) !important;
  }
  .receipt-v5 .receipt-info-table th{
    background:rgba(238,246,241,.90) !important;
  }
  .receipt-v5 .receipt-info-table td{
    background:rgba(255,255,255,.82) !important;
  }
  .receipt-v5 .invoice-box{
    background:rgba(255,255,255,.86) !important;
  }
}

/* V9 FINAL: no layout changes */
.receipt-v5 .invoice-watermark-v5{
  opacity:.11 !important;
}
@media print{
  .receipt-v5 .invoice-watermark-v5{
    opacity:.10 !important;
  }
}

/* V11 attractive compact login */
.login-body-v11{position:relative;background:#eef5f1 url("login-emission-bg.png") center/cover no-repeat fixed;overflow:hidden}
.login-overlay-v11{position:fixed;inset:0;background:rgba(244,250,247,.62);backdrop-filter:blur(1px)}
.login-card-v11{position:relative;z-index:2;width:min(92%,520px);padding:30px 34px;border:1px solid rgba(7,85,45,.12);box-shadow:0 20px 60px rgba(0,55,30,.18);backdrop-filter:blur(8px);background:rgba(255,255,255,.94)}
.login-brand-v11{justify-content:flex-start;margin-bottom:18px}
.login-brand-v11 img{width:72px;height:72px}
.login-brand-v11 h1{font-size:24px}
.login-welcome{text-align:center;margin:8px 0 20px}
.login-welcome h2{margin:0;color:#07552d;font-size:20px}
.login-welcome p{margin:5px 0 0;color:#718078;font-size:13px}
.compact-login-form label{display:block;margin:12px 0 7px}
.login-input-wrap{display:flex;align-items:center;border:1px solid #cfdad4;border-radius:11px;background:#fff;padding:0 12px}
.login-input-wrap span{font-size:17px}
.login-input-wrap input{border:0;box-shadow:none!important;padding:12px 10px}
.login-submit{width:100%;justify-content:center;margin-top:18px;padding:13px}
.login-authorized{text-align:center;color:#607068;margin:18px 0 0;font-size:13px}
.fuel-badge{display:inline-block;margin-top:8px;padding:5px 10px;border-radius:999px;background:#e6f4eb;color:#086432;font-weight:800;font-size:12px}
@media(max-width:650px){.login-card-v11{padding:24px 20px}.login-brand-v11{align-items:center}.login-brand-v11 h1{font-size:20px}}

.receipt-v12{max-width:900px;padding:34px 38px;border:1.5px solid #0b4f2b;position:relative;overflow:hidden}.invoice-header-v12{display:grid;grid-template-columns:135px 1fr 145px;gap:18px;align-items:center}.invoice-logo-left img{width:125px;height:125px;object-fit:contain}.invoice-heading-v12{text-align:center}.invoice-heading-v12 h1{margin:0;color:#07552d;font-size:27px}.invoice-heading-v12 h2{margin:8px 0 0;font-size:21px}.invoice-heading-v12 p{margin:7px 0 0;color:#6b7770;font-size:12px}.invoice-qr-right{display:flex;flex-direction:column;align-items:center;border:1px solid #d5e0d9;border-radius:12px;padding:8px;background:#fff}.invoice-qr-right small{margin-top:5px;font-size:11px}.invoice-section-title{margin-top:20px;background:#07552d;color:#fff;text-align:center;padding:9px;border-radius:8px 8px 0 0;font-weight:800}.invoice-table-v12{width:100%;border-collapse:collapse;background:rgba(255,255,255,.86)}.invoice-table-v12 th,.invoice-table-v12 td{border:1px solid #cfd9d3;padding:12px}.invoice-table-v12 th{background:rgba(238,246,241,.92);text-align:left;color:#365044;width:20%}.invoice-table-v12 td{font-weight:700;width:30%}.amount-box-v12{margin-top:22px;border:1px solid #cfd9d3;border-radius:10px;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.9)}.amount-box-v12 span{font-size:18px;font-weight:800;color:#07552d}.amount-box-v12 strong{background:#07552d;color:#fff;padding:12px 20px;border-radius:8px;font-size:22px}.invoice-watermark-v12{position:absolute!important;top:49%!important;left:50%!important;transform:translate(-50%,-42%)!important;width:58%!important;opacity:.1!important;z-index:0!important}.invoice-backside{margin-top:28px;border-top:1px dashed #789486;padding-top:20px}.backside-label{width:110px;margin:-33px auto 15px;background:#07552d;color:#fff;text-align:center;padding:5px;border-radius:999px;font-size:11px;font-weight:800}@media print{.receipt-v12{width:194mm!important;max-width:194mm!important;margin:6mm auto!important;padding:7mm!important;box-shadow:none!important}.invoice-header-v12{grid-template-columns:28mm 1fr 30mm!important;gap:4mm!important}.invoice-logo-left img{width:25mm!important;height:25mm!important}.invoice-qr-right canvas,.invoice-qr-right img{width:24mm!important;height:24mm!important}.invoice-backside{page-break-before:always!important;margin-top:0!important;border-top:none!important;padding-top:12mm!important}.backside-label{display:none!important}@page{size:A4 portrait;margin:0}}

/* V12.1 dashboard and invoice form fix */
.dashboard-panel{overflow:hidden}
.dashboard-filters{display:grid;grid-template-columns:1fr 230px auto auto;gap:12px;align-items:center}
.pending-status{background:#fff2cc;color:#8a5b00}
.action-links{font-weight:700}
.empty-state{text-align:center;padding:70px 20px}
.empty-icon{font-size:55px;color:#a7d7b7}
.empty-state h3{margin:12px 0 5px;font-size:22px}
.empty-state p{color:var(--muted);margin:0 0 20px}
@media(max-width:850px){.dashboard-filters{grid-template-columns:1fr}.top-branding-text p{display:none}}

/* V13 complete professional update */
.nav-heading{margin:18px 14px 6px;color:rgba(255,255,255,.58);font-size:10px;font-weight:800;letter-spacing:.08em}
.side-nav{overflow-y:auto;max-height:calc(100vh - 185px);padding-right:3px}
.side-nav a{padding:10px 12px;font-size:13px}
.side-nav a span:first-child{width:18px;text-align:center}
.side-nav a small{margin-left:auto;font-size:10px}
.nav-locked{opacity:.7}
.step-badge{background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:800;padding:8px 11px;border-radius:999px}
.vehicle-summary{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:18px;align-items:center;padding:18px 22px;margin-bottom:22px}
.vehicle-summary div{display:flex;flex-direction:column;gap:5px}
.vehicle-summary span{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:800}
.vehicle-summary strong{font-size:16px}
.fuel-pill{display:inline-flex;width:max-content;padding:5px 11px;border-radius:999px;background:#e2f3e8;color:#086733}
.inspection-form{overflow:hidden}
.fail-notice{grid-column:1/-1;margin-top:18px;padding:15px;border:1px solid #ffb4ad;background:#fff0ef;color:#8f1d14;border-radius:10px;display:flex;flex-direction:column;gap:5px}
.result-card{max-width:760px;margin:40px auto;padding:42px;text-align:center}
.result-icon{width:78px;height:78px;margin:auto;display:grid;place-items:center;border-radius:50%;font-size:40px;font-weight:900}
.result-fail .result-icon{background:#ffe3e0;color:#b42318}
.result-card h1{margin:18px 0 8px}
.result-card>p{color:var(--muted)}
.result-details{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:28px 0;text-align:left;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.result-details span,.result-details b{padding:12px;border-bottom:1px solid var(--border)}
.result-details span{background:#f4f8f5;color:var(--muted)}
.failure-message{padding:16px;background:#fff3f2;color:#8f1d14;border-radius:10px}
.result-actions{display:flex;justify-content:center;gap:10px;margin-top:25px}
.settings-list{display:grid;gap:0}
.settings-list div{display:flex;justify-content:space-between;padding:14px;border-bottom:1px solid var(--border)}
.settings-list span{color:var(--muted)}
.dashboard-filters{display:grid;grid-template-columns:minmax(260px,1fr) 200px 150px auto auto;gap:10px}
.pending-status{background:#fff1cb;color:#8a5a00}
.empty-state{text-align:center;padding:60px 20px}
.empty-icon{font-size:55px;color:#a5d5b5}
.action-links{white-space:nowrap}
input[readonly]{background:#f4f7f5;color:#35443b;cursor:not-allowed}
@media(max-width:1150px){.vehicle-summary{grid-template-columns:repeat(2,1fr)}.dashboard-filters{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.vehicle-summary{grid-template-columns:1fr}.dashboard-filters{grid-template-columns:1fr}.result-details{grid-template-columns:1fr}.result-actions{flex-direction:column}}

/* V13.1 invoice table and amount redesign — header/footer unchanged */
.invoice-data-card{position:relative;z-index:2;margin-top:20px;border:1px solid #b9cdc1;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.90);box-shadow:0 7px 20px rgba(7,85,45,.065)}
.invoice-data-heading{display:flex;align-items:center;gap:13px;padding:11px 16px;background:linear-gradient(90deg,#064b29,#08703b);color:#fff}
.invoice-heading-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);font-size:12px;font-weight:900}
.invoice-data-heading div{display:flex;flex-direction:column;gap:2px}
.invoice-data-heading strong{font-size:14px;letter-spacing:.045em}
.invoice-data-heading small{font-size:9px;font-weight:400;opacity:.76}
.invoice-detail-table{width:100%;border-collapse:collapse;table-layout:fixed;background:transparent}
.invoice-detail-table th,.invoice-detail-table td{padding:14px 15px;border-bottom:1px solid #cfddd4;vertical-align:middle}
.invoice-detail-table tr:last-child th,.invoice-detail-table tr:last-child td{border-bottom:0}
.invoice-detail-table th{width:21%;color:#365246;background:rgba(235,245,239,.87);font-size:12px;font-weight:800;text-align:left;border-right:1px solid #cfddd4}
.invoice-detail-table td{width:29%;color:#17231c;font-size:13px;font-weight:700;border-right:1px solid #cfddd4;background:rgba(255,255,255,.75)}
.invoice-detail-table td:last-child{border-right:0}
.invoice-detail-table .primary-value{color:#064b29;font-size:14px;letter-spacing:.015em}
.field-icon{display:inline-grid;width:22px;height:22px;place-items:center;margin-right:7px;border-radius:6px;background:#dcefe4;color:#07552d;font-size:10px;line-height:1}
.fuel-value{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;background:#e2f3e8;color:#076233;font-size:12px;font-weight:900}
.invoice-payment-panel{position:relative;z-index:2;margin-top:22px;min-height:82px;display:flex;justify-content:space-between;align-items:stretch;border:1px solid #adc7b8;border-radius:15px;overflow:hidden;background:rgba(255,255,255,.91);box-shadow:0 8px 22px rgba(7,85,45,.07)}
.payment-label{flex:1;display:flex;align-items:center;gap:14px;padding:15px 20px}
.payment-label>div,.payment-total{display:flex;flex-direction:column;gap:3px}
.payment-label small,.payment-total small{font-size:9px;color:#748279;letter-spacing:.08em;font-weight:800}
.payment-label strong{color:#07552d;font-size:18px}
.payment-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#e2f2e8;color:#07552d;font-size:12px;font-weight:900;border:1px solid #c4dccd}
.payment-total{min-width:250px;justify-content:center;padding:12px 24px;color:#fff;background:linear-gradient(135deg,#07552d,#0a7840);text-align:right}
.payment-total small{color:rgba(255,255,255,.70)}
.payment-total strong{font-size:24px;letter-spacing:.015em}
.receipt-v12 .invoice-watermark-v12{opacity:.15!important;width:61%!important;filter:saturate(.90) contrast(1.04)}
@media(max-width:720px){
.invoice-detail-table,.invoice-detail-table tbody,.invoice-detail-table tr,.invoice-detail-table th,.invoice-detail-table td{display:block;width:100%}
.invoice-detail-table th,.invoice-detail-table td{border-right:0}
.invoice-payment-panel{flex-direction:column}
.payment-total{min-width:0;text-align:left}
}
@media print{
.invoice-data-card{margin-top:3.3mm!important;border-radius:2.7mm!important;box-shadow:none!important}
.invoice-data-heading{padding:2mm 3mm!important}
.invoice-heading-icon{width:7mm!important;height:7mm!important}
.invoice-data-heading strong{font-size:8pt!important}
.invoice-data-heading small{font-size:5.5pt!important}
.invoice-detail-table{display:table!important;table-layout:fixed!important}
.invoice-detail-table tbody{display:table-row-group!important}
.invoice-detail-table tr{display:table-row!important}
.invoice-detail-table th,.invoice-detail-table td{display:table-cell!important;padding:2.2mm 2.5mm!important;font-size:7.6pt!important;line-height:1.15!important}
.invoice-detail-table th{width:21%!important}
.invoice-detail-table td{width:29%!important}
.field-icon{width:4.2mm!important;height:4.2mm!important;margin-right:1.2mm!important;font-size:6pt!important}
.invoice-detail-table .primary-value{font-size:8pt!important}
.fuel-value{padding:1mm 2mm!important;font-size:7pt!important}
.invoice-payment-panel{min-height:15mm!important;margin-top:3.5mm!important;border-radius:2.7mm!important;box-shadow:none!important}
.payment-label{padding:2.5mm 4mm!important;gap:2.5mm!important}
.payment-icon{width:9mm!important;height:9mm!important;font-size:6.5pt!important}
.payment-label small,.payment-total small{font-size:5.5pt!important}
.payment-label strong{font-size:10pt!important}
.payment-total{min-width:48mm!important;padding:2mm 4mm!important}
.payment-total strong{font-size:13pt!important}
.receipt-v12 .invoice-watermark-v12{opacity:.14!important;width:58%!important}
}

/* V13.2 final invoice front design — backside unchanged */
.invoice-data-card{
  border-radius:10px!important;
  box-shadow:none!important;
  border:1px solid #9eb9aa!important;
}
.invoice-data-heading{
  padding:10px 15px!important;
  background:#07552d!important;
}
.invoice-data-heading small{
  display:none!important;
}
.invoice-heading-icon{
  width:30px!important;
  height:30px!important;
  border-radius:7px!important;
}
.invoice-detail-table th{
  background:rgba(242,248,244,.93)!important;
}
.invoice-detail-table td{
  background:rgba(255,255,255,.78)!important;
}
.field-icon{
  background:transparent!important;
  border:0!important;
  width:auto!important;
  height:auto!important;
  margin-right:8px!important;
  font-size:12px!important;
  font-weight:900!important;
}
.fuel-value{
  background:transparent!important;
  color:#17231c!important;
  padding:0!important;
  border-radius:0!important;
  font-size:13px!important;
}
.invoice-payment-panel{
  display:none!important;
}
.invoice-payment-compact{
  position:relative;
  z-index:3;
  margin-top:20px;
  min-height:58px;
  padding:10px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:1px solid #9eb9aa;
  border-radius:10px;
  background:rgba(255,255,255,.88);
}
.compact-payment-label{
  display:flex;
  align-items:center;
  gap:12px;
}
.compact-payment-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e4f1e9;
  color:#07552d;
  font-size:11px;
  font-weight:900;
  border:1px solid #c6dbce;
}
.compact-payment-label strong{
  color:#07552d;
  font-size:17px;
}
.compact-payment-value{
  padding:10px 18px;
  border-radius:8px;
  background:#07552d;
  color:#fff;
  font-size:20px;
  font-weight:900;
  white-space:nowrap;
}
.receipt-v12{
  isolation:isolate;
}
.receipt-v12 .invoice-watermark-v12{
  position:absolute!important;
  top:52%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:54%!important;
  height:auto!important;
  max-width:480px!important;
  transform:translate(-50%,-43%)!important;
  opacity:.18!important;
  object-fit:contain!important;
  z-index:0!important;
  pointer-events:none!important;
  filter:none!important;
}
.receipt-v12 .invoice-content{
  position:relative!important;
  z-index:2!important;
}
.receipt-v12 .invoice-backside{
  background:#fff!important;
  position:relative!important;
  z-index:3!important;
}
@media(max-width:720px){
  .invoice-payment-compact{
    flex-direction:column;
    align-items:stretch;
  }
  .compact-payment-value{
    text-align:center;
  }
}
@media print{
  .invoice-data-heading{
    padding:1.8mm 3mm!important;
  }
  .invoice-heading-icon{
    width:6mm!important;
    height:6mm!important;
  }
  .invoice-data-heading strong{
    font-size:8pt!important;
  }
  .invoice-payment-compact{
    min-height:12mm!important;
    margin-top:3.2mm!important;
    padding:2mm 3mm!important;
    border-radius:2mm!important;
  }
  .compact-payment-icon{
    width:7mm!important;
    height:7mm!important;
    font-size:5.5pt!important;
  }
  .compact-payment-label strong{
    font-size:9pt!important;
  }
  .compact-payment-value{
    padding:1.8mm 4mm!important;
    border-radius:1.8mm!important;
    font-size:11pt!important;
  }
  .receipt-v12 .invoice-watermark-v12{
    width:52%!important;
    max-width:none!important;
    opacity:.17!important;
    transform:translate(-50%,-41%)!important;
  }
}

/* V13.3 receipt screen/PDF correction */
.receipt-v12{
  overflow:visible!important;
}
.invoice-content{
  position:relative!important;
  z-index:1!important;
}
.invoice-front-page{
  position:relative;
  isolation:isolate;
  min-height:0;
  overflow:hidden;
  padding-bottom:2px;
}
.invoice-front-watermark{
  position:absolute;
  left:50%;
  top:58%;
  width:52%;
  max-width:455px;
  height:auto;
  transform:translate(-50%,-50%);
  opacity:.13;
  object-fit:contain;
  z-index:-1;
  pointer-events:none;
}
.invoice-header-v12,
.invoice-data-card,
.invoice-payment-compact,
.computer-generated-note{
  position:relative;
  z-index:2;
}
.invoice-detail-table th{
  background:rgba(242,248,244,.94)!important;
}
.invoice-detail-table td{
  background:rgba(255,255,255,.82)!important;
}
.invoice-payment-compact{
  background:rgba(255,255,255,.90)!important;
}
.invoice-backside{
  position:relative;
  z-index:4;
  background:#fff!important;
}
.invoice-watermark-v12{
  display:none!important;
}

/* Improve screen proportions without changing information */
.receipt-v12{
  max-width:900px!important;
  margin:20px auto!important;
}
.invoice-header-v12{
  margin-bottom:14px;
}
.invoice-data-card{
  margin-top:16px!important;
}
.invoice-detail-table th,
.invoice-detail-table td{
  padding:12px 14px!important;
}
.invoice-payment-compact{
  margin-top:16px!important;
  min-height:54px!important;
}
.computer-generated-note{
  margin-top:16px!important;
}

/* Print front side on page 1 and backside on page 2 */
@media print{
  html,body{
    width:210mm!important;
    min-width:210mm!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .no-print,.receipt-actions{
    display:none!important;
  }
  .receipt-v12{
    width:194mm!important;
    max-width:194mm!important;
    margin:6mm auto 0!important;
    padding:6mm 7mm!important;
    border:1.2px solid #0b4f2b!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .invoice-front-page{
    min-height:270mm!important;
    max-height:270mm!important;
    overflow:hidden!important;
    page-break-after:always!important;
    break-after:page!important;
  }
  .invoice-front-watermark{
    top:55%!important;
    width:50%!important;
    max-width:none!important;
    opacity:.12!important;
    transform:translate(-50%,-50%)!important;
  }
  .invoice-header-v12{
    grid-template-columns:27mm 1fr 29mm!important;
    gap:4mm!important;
    margin-bottom:3mm!important;
  }
  .invoice-logo-left img{
    width:24mm!important;
    height:24mm!important;
  }
  .invoice-qr-right{
    padding:1.5mm!important;
  }
  .invoice-qr-right canvas,
  .invoice-qr-right img{
    width:22mm!important;
    height:22mm!important;
  }
  .invoice-heading-v12 h1{
    font-size:17pt!important;
  }
  .invoice-heading-v12 h2{
    font-size:12.5pt!important;
  }
  .invoice-heading-v12 p{
    font-size:7.5pt!important;
  }
  .invoice-data-card{
    margin-top:3mm!important;
    border-radius:2mm!important;
  }
  .invoice-data-heading{
    padding:1.7mm 2.5mm!important;
  }
  .invoice-heading-icon{
    width:5.5mm!important;
    height:5.5mm!important;
    font-size:6pt!important;
  }
  .invoice-data-heading strong{
    font-size:7.5pt!important;
  }
  .invoice-detail-table{
    display:table!important;
    width:100%!important;
    table-layout:fixed!important;
  }
  .invoice-detail-table tbody{
    display:table-row-group!important;
  }
  .invoice-detail-table tr{
    display:table-row!important;
  }
  .invoice-detail-table th,
  .invoice-detail-table td{
    display:table-cell!important;
    padding:2mm 2.2mm!important;
    font-size:7.3pt!important;
    line-height:1.15!important;
  }
  .invoice-detail-table th{
    width:21%!important;
  }
  .invoice-detail-table td{
    width:29%!important;
  }
  .field-icon{
    font-size:6pt!important;
    margin-right:1mm!important;
  }
  .invoice-payment-compact{
    min-height:11mm!important;
    margin-top:3mm!important;
    padding:1.7mm 2.5mm!important;
  }
  .compact-payment-icon{
    width:6.5mm!important;
    height:6.5mm!important;
    font-size:5pt!important;
  }
  .compact-payment-label strong{
    font-size:8.5pt!important;
  }
  .compact-payment-value{
    padding:1.5mm 3.5mm!important;
    font-size:10.5pt!important;
  }
  .computer-generated-note{
    margin-top:3mm!important;
    padding:1.7mm!important;
    font-size:6.8pt!important;
  }
  .computer-check{
    width:4.5mm!important;
    height:4.5mm!important;
  }
  .invoice-backside{
    page-break-before:auto!important;
    break-before:auto!important;
    min-height:270mm!important;
    margin-top:0!important;
    padding-top:10mm!important;
    border-top:0!important;
    background:#fff!important;
  }
  .backside-label{
    display:none!important;
  }
  .invoice-backside .receipt-bottom-grid{
    grid-template-columns:1fr 1fr!important;
    gap:4mm!important;
    margin-top:0!important;
  }
  @page{
    size:A4 portrait;
    margin:0;
  }
}

/* V13.4 invoice rebuilt to match approved PNG */
.invoice-document{
  width:100%;
}
.invoice-sheet{
  width:210mm;
  min-height:297mm;
  margin:18px auto;
  padding:8mm;
  box-sizing:border-box;
  background:#fff;
  border:1.4px solid #0b4f2b;
  position:relative;
  overflow:hidden;
  box-shadow:0 8px 28px rgba(0,0,0,.10);
}
.invoice-front-sheet{
  isolation:isolate;
}
.invoice-watermark-final{
  position:absolute;
  left:50%;
  top:58%;
  width:57%;
  max-width:550px;
  height:auto;
  transform:translate(-50%,-50%);
  opacity:.16;
  object-fit:contain;
  z-index:1;
  pointer-events:none;
}
.invoice-sheet-content{
  position:relative;
  z-index:2;
}
.invoice-main-header{
  display:grid;
  grid-template-columns:135px 1fr 145px;
  gap:18px;
  align-items:center;
}
.invoice-government-logo img{
  width:125px;
  height:125px;
  object-fit:contain;
}
.invoice-main-title{
  text-align:center;
}
.invoice-main-title h1{
  margin:0;
  color:#07552d;
  font-size:28px;
  line-height:1.08;
}
.invoice-main-title h2{
  margin:10px 0 0;
  color:#121a15;
  font-size:21px;
}
.invoice-main-title p{
  margin:8px 0 0;
  color:#666f69;
  font-size:12px;
}
.invoice-title-rule{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#07552d;
  margin-top:16px;
}
.invoice-title-rule span{
  width:110px;
  height:1px;
  background:#7aa28c;
}
.invoice-main-qr{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:8px;
  border:1px solid #b6cbbd;
  border-radius:10px;
  background:#fff;
}
.invoice-main-qr small{
  margin-top:6px;
  font-size:11px;
}
.simple-invoice-section{
  margin-top:26px;
}
.simple-section-title{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:300px;
  padding:8px 20px 8px 12px;
  color:#fff;
  background:#07552d;
  border-radius:10px 28px 0 0;
  position:relative;
  z-index:3;
}
.section-number{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.55);
  border-radius:7px;
  font-size:12px;
  font-weight:900;
}
.simple-section-title strong{
  font-size:16px;
  letter-spacing:.02em;
}
.simple-invoice-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  border:1px solid #6f8d7d;
  border-radius:0 12px 12px 12px;
  overflow:hidden;
  background:rgba(255,255,255,.68);
}
.simple-invoice-table th,
.simple-invoice-table td{
  padding:17px 18px;
  border-right:1px solid #bac9c0;
  border-bottom:1px solid #bac9c0;
  vertical-align:middle;
}
.simple-invoice-table tr:last-child th,
.simple-invoice-table tr:last-child td{
  border-bottom:0;
}
.simple-invoice-table th:last-of-type,
.simple-invoice-table td:last-child{
  border-right:0;
}
.simple-invoice-table th{
  width:24%;
  font-size:13px;
  text-align:left;
  color:#1f3227;
  background:rgba(244,248,245,.78);
  font-weight:800;
}
.simple-invoice-table td{
  width:26%;
  font-size:14px;
  font-weight:800;
  color:#161d18;
  background:rgba(255,255,255,.58);
}
.highlight-value{
  color:#07552d!important;
}
.real-icon{
  display:inline-flex;
  width:29px;
  height:29px;
  margin-right:10px;
  vertical-align:middle;
  align-items:center;
  justify-content:center;
  color:#07552d;
}
.real-icon svg,
.payment-svg svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.short-payment-row{
  margin-top:28px;
  min-height:74px;
  display:flex;
  align-items:center;
  border:1px solid #8faa9a;
  border-radius:12px;
  background:rgba(255,255,255,.76);
  overflow:hidden;
  position:relative;
  z-index:3;
}
.short-payment-label{
  flex:1;
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 22px;
  color:#07552d;
}
.payment-svg{
  width:34px;
  height:34px;
  display:inline-flex;
}
.short-payment-label strong{
  font-size:19px;
}
.short-payment-divider{
  width:1px;
  height:40px;
  background:#98ae9f;
}
.short-payment-value{
  margin:10px 18px;
  padding:11px 25px;
  border-radius:8px;
  background:#07552d;
  color:#fff;
  font-size:23px;
  font-weight:900;
  white-space:nowrap;
}
.invoice-computer-note{
  margin-top:28px;
  padding:15px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-top:1px dashed #99aa9f;
  border-bottom:1px solid #07552d;
  font-size:13px;
  background:rgba(255,255,255,.85);
  position:relative;
  z-index:3;
}
.note-shield{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#07552d;
  color:#fff;
  font-weight:900;
}
.invoice-back-sheet{
  background:#fff;
}
.back-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:18mm;
}
.invoice-back-sheet .invoice-box{
  background:#fff;
}
@media(max-width:900px){
  .invoice-sheet{
    width:calc(100% - 20px);
    min-height:auto;
    margin:10px;
    padding:20px;
  }
  .invoice-main-header{
    grid-template-columns:1fr;
    text-align:center;
  }
  .invoice-government-logo img{
    width:100px;
    height:100px;
  }
  .invoice-main-qr{
    width:max-content;
    margin:auto;
  }
  .simple-invoice-table,
  .simple-invoice-table tbody,
  .simple-invoice-table tr,
  .simple-invoice-table th,
  .simple-invoice-table td{
    display:block;
    width:100%;
  }
  .simple-invoice-table th,
  .simple-invoice-table td{
    border-right:0;
  }
  .short-payment-row{
    flex-direction:column;
    align-items:stretch;
  }
  .short-payment-divider{
    width:100%;
    height:1px;
  }
  .short-payment-value{
    text-align:center;
  }
  .back-grid{
    grid-template-columns:1fr;
  }
}
@media print{
  html,body{
    width:210mm!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .no-print,.receipt-actions{
    display:none!important;
  }
  .invoice-sheet{
    width:210mm!important;
    height:297mm!important;
    min-height:297mm!important;
    margin:0!important;
    padding:7mm!important;
    border:1px solid #0b4f2b!important;
    box-shadow:none!important;
    page-break-after:always!important;
    break-after:page!important;
  }
  .invoice-back-sheet{
    page-break-after:auto!important;
    break-after:auto!important;
  }
  .invoice-watermark-final{
    width:54%!important;
    max-width:none!important;
    top:58%!important;
    opacity:.17!important;
  }
  .invoice-main-header{
    grid-template-columns:28mm 1fr 29mm!important;
    gap:4mm!important;
  }
  .invoice-government-logo img{
    width:25mm!important;
    height:25mm!important;
  }
  .invoice-main-title h1{
    font-size:18pt!important;
  }
  .invoice-main-title h2{
    font-size:13pt!important;
  }
  .invoice-main-title p{
    font-size:7.5pt!important;
  }
  .invoice-title-rule{
    margin-top:3mm!important;
  }
  .invoice-main-qr{
    padding:1.5mm!important;
  }
  .invoice-main-qr canvas,
  .invoice-main-qr img{
    width:22mm!important;
    height:22mm!important;
  }
  .invoice-main-qr small{
    font-size:6pt!important;
  }
  .simple-invoice-section{
    margin-top:5mm!important;
  }
  .simple-section-title{
    min-width:58mm!important;
    padding:1.5mm 4mm 1.5mm 2mm!important;
    border-radius:2mm 5mm 0 0!important;
  }
  .section-number{
    width:6mm!important;
    height:6mm!important;
    font-size:6pt!important;
  }
  .simple-section-title strong{
    font-size:9pt!important;
  }
  .simple-invoice-table{
    display:table!important;
    border-radius:0 2.5mm 2.5mm 2.5mm!important;
  }
  .simple-invoice-table tbody{
    display:table-row-group!important;
  }
  .simple-invoice-table tr{
    display:table-row!important;
  }
  .simple-invoice-table th,
  .simple-invoice-table td{
    display:table-cell!important;
    padding:3mm 3.2mm!important;
    font-size:8pt!important;
    line-height:1.2!important;
  }
  .simple-invoice-table th{
    width:24%!important;
  }
  .simple-invoice-table td{
    width:26%!important;
  }
  .real-icon{
    width:5.5mm!important;
    height:5.5mm!important;
    margin-right:1.5mm!important;
  }
  .short-payment-row{
    min-height:13mm!important;
    margin-top:5mm!important;
    border-radius:2.5mm!important;
  }
  .short-payment-label{
    padding:2.5mm 4mm!important;
  }
  .payment-svg{
    width:6mm!important;
    height:6mm!important;
  }
  .short-payment-label strong{
    font-size:10pt!important;
  }
  .short-payment-divider{
    height:8mm!important;
  }
  .short-payment-value{
    margin:1.8mm 3mm!important;
    padding:2mm 5mm!important;
    font-size:12pt!important;
    border-radius:2mm!important;
  }
  .invoice-computer-note{
    margin-top:5mm!important;
    padding:2.5mm!important;
    font-size:7pt!important;
  }
  .note-shield{
    width:5.5mm!important;
    height:5.5mm!important;
  }
  .back-grid{
    grid-template-columns:1fr 1fr!important;
    gap:4mm!important;
    margin-top:15mm!important;
  }
  @page{
    size:A4 portrait;
    margin:0;
  }
}

/* V13.5 different table styles, alignment fix, and updated fees */

/* Shared alignment fix */
.simple-invoice-table th{
  white-space:nowrap;
  width:27%!important;
}
.simple-invoice-table td{
  width:23%!important;
}
.simple-invoice-table th,
.simple-invoice-table td{
  padding:15px 14px!important;
}
.real-icon{
  width:23px!important;
  height:23px!important;
  margin-right:7px!important;
  flex:0 0 23px!important;
}
.simple-invoice-table th{
  vertical-align:middle!important;
}
.simple-invoice-table th .real-icon{
  vertical-align:middle!important;
}
.simple-invoice-table th{
  line-height:1.15!important;
}

/* Table 1: formal boxed government style */
.invoice-details-style .simple-section-title{
  min-width:320px;
  border-radius:10px 30px 0 0;
  background:#07552d;
}
.invoice-details-style .simple-invoice-table{
  border:1.4px solid #6c8c7a;
  border-radius:0 12px 12px 12px;
  background:rgba(255,255,255,.82);
}
.invoice-details-style .simple-invoice-table th{
  background:#edf5f0!important;
  color:#193d2a;
}
.invoice-details-style .simple-invoice-table td{
  background:rgba(255,255,255,.87)!important;
}
.invoice-details-style .simple-invoice-table .highlight-value{
  color:#07552d!important;
}

/* Table 2: softer card-row style with alternate rows */
.vehicle-details-style .simple-section-title{
  min-width:385px;
  border-radius:10px 10px 0 0;
  background:linear-gradient(90deg,#0b5d34,#13804a);
}
.vehicle-details-style .simple-invoice-table{
  border:1px solid #8eac9a;
  border-radius:0 0 14px 14px;
  background:rgba(255,255,255,.72);
  box-shadow:inset 4px 0 0 #0f7844;
}
.vehicle-details-style .simple-invoice-table tr:nth-child(odd) th,
.vehicle-details-style .simple-invoice-table tr:nth-child(odd) td{
  background:rgba(235,246,239,.82)!important;
}
.vehicle-details-style .simple-invoice-table tr:nth-child(even) th,
.vehicle-details-style .simple-invoice-table tr:nth-child(even) td{
  background:rgba(255,255,255,.82)!important;
}
.vehicle-details-style .simple-invoice-table th{
  color:#17452d;
}
.vehicle-details-style .simple-invoice-table td{
  border-left:0;
}
.vehicle-details-style .real-icon{
  padding:4px;
  border-radius:6px;
  background:#e0f1e6;
}

/* Updated backside fee table */
.updated-fee-table{
  table-layout:fixed;
}
.updated-fee-table th:first-child,
.updated-fee-table td:first-child{
  width:16%;
  text-align:center;
}
.updated-fee-table th:nth-child(2),
.updated-fee-table td:nth-child(2){
  width:58%;
}
.updated-fee-table th:last-child,
.updated-fee-table td:last-child{
  width:26%;
  text-align:center;
  font-weight:800;
}

/* Make automatic amount field visually clear */
#amountPaid[readonly]{
  background:#edf6f0!important;
  color:#07552d!important;
  font-weight:900!important;
}

@media(max-width:900px){
  .simple-invoice-table th{
    white-space:normal;
  }
}

@media print{
  .simple-invoice-table th{
    width:27%!important;
    white-space:nowrap!important;
    font-size:7.5pt!important;
  }
  .simple-invoice-table td{
    width:23%!important;
    font-size:7.8pt!important;
  }
  .real-icon{
    width:4.5mm!important;
    height:4.5mm!important;
    margin-right:1mm!important;
  }
  .invoice-details-style .simple-section-title{
    min-width:62mm!important;
  }
  .vehicle-details-style .simple-section-title{
    min-width:75mm!important;
  }
  .updated-fee-table th,
  .updated-fee-table td{
    font-size:6.5pt!important;
    padding:1.5mm!important;
  }
}

/* V13.6 logo update */
.invoice-watermark-final,.invoice-front-watermark,.invoice-watermark-v12,.invoice-watermark{display:none!important}
.invoice-header-v136{display:grid!important;grid-template-columns:132px minmax(0,1fr) 150px!important;gap:18px!important;align-items:start!important}
.invoice-header-v136 .invoice-government-logo{display:flex;justify-content:flex-start}
.invoice-header-v136 .invoice-government-logo img{width:120px!important;height:120px!important;object-fit:contain!important}
.invoice-right-stack{display:flex;flex-direction:column;align-items:center;gap:10px}
.invoice-transport-logo{width:120px;height:92px;object-fit:contain}
.invoice-header-v136 .invoice-main-qr{width:112px;padding:7px!important}
.invoice-header-v136 .invoice-main-qr canvas,.invoice-header-v136 .invoice-main-qr img{width:98px!important;height:98px!important}
.invoice-header-v136 .invoice-main-title{padding-top:12px}
.certificate-header-v136{display:grid!important;grid-template-columns:32mm 1fr 32mm!important;gap:5mm!important;align-items:center!important}
.certificate-logo-large{width:31mm!important;height:31mm!important;object-fit:contain!important}
.certificate-header-v136 .certificate-gov-logo{justify-self:start!important}
.certificate-header-v136 .certificate-transport-logo{justify-self:end!important}
@media(max-width:900px){
.invoice-header-v136{grid-template-columns:1fr!important;text-align:center!important}
.invoice-header-v136 .invoice-government-logo{justify-content:center!important}
.invoice-right-stack{margin:auto}
}
@media print{
.invoice-header-v136{grid-template-columns:27mm 1fr 29mm!important;gap:4mm!important}
.invoice-header-v136 .invoice-government-logo img{width:25mm!important;height:25mm!important}
.invoice-transport-logo{width:25mm!important;height:19mm!important}
.invoice-header-v136 .invoice-main-qr{width:25mm!important;padding:1.2mm!important}
.invoice-header-v136 .invoice-main-qr canvas,.invoice-header-v136 .invoice-main-qr img{width:21mm!important;height:21mm!important}
.certificate-logo-large{width:30mm!important;height:30mm!important}
}

.camera-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.camera-preview-box{min-height:300px;background:#111;border-radius:12px;overflow:hidden}.camera-preview-box video,.camera-preview-box img{width:100%;height:300px;object-fit:cover}.camera-controls{display:flex;flex-direction:column;gap:12px}.certificate-media-pair{display:flex;gap:14px;align-items:center}.certificate-photo img,.photo-missing{width:132px;height:132px;object-fit:cover;border:1px solid #8ca895;border-radius:8px}.photo-missing{display:grid;place-items:center}.certificate-photo,.certificate-qr{display:flex;flex-direction:column;align-items:center;gap:5px}@media(max-width:900px){.camera-grid{grid-template-columns:1fr}}@media print{.certificate-photo img,.photo-missing,.certificate-qr canvas,.certificate-qr img{width:27mm!important;height:27mm!important}}

.camera-status{margin-top:4px;padding:10px 12px;border:1px solid #cfd9d3;border-radius:8px;background:#f5f8f6;color:#53635a;font-size:12px}.camera-status.success{border-color:#9dceb0;background:#eaf7ef;color:#07552d}.camera-status.error{border-color:#efb3ad;background:#fff0ef;color:#9b241a}

/* V14.3 camera button execution fix */
[hidden]{
  display:none!important;
}
.camera-controls button:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.camera-preview-box video{
  background:#111;
}

/* V14.4 compact certificate + single vehicle photo */
.certificate-section-title{
  width:max-content!important;
  min-width:260px!important;
  padding:8px 20px!important;
  margin:16px auto 10px!important;
  border-radius:7px!important;
  font-size:17px!important;
}
.certificate-result-box{
  grid-template-columns:150px 130px 170px!important;
  gap:18px!important;
  padding:18px 22px!important;
  align-items:center!important;
}
.certificate-qr{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:5px!important;
}
.certificate-qr canvas,
.certificate-qr img{
  width:108px!important;
  height:108px!important;
}
.certificate-result{
  padding:12px 22px!important;
  font-size:31px!important;
  border-radius:8px!important;
}
.certificate-validity-photo-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 190px!important;
  gap:24px!important;
  align-items:center!important;
  padding:22px 26px!important;
}
.certificate-validity-text p{
  margin:0!important;
  font-size:17px!important;
  line-height:1.6!important;
}
.validity-divider{
  margin:14px 0!important;
  border-top:1px dashed #4d9868!important;
}
.certificate-validity-photo{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}
.certificate-validity-photo img,
.certificate-validity-photo .photo-missing{
  width:172px!important;
  height:126px!important;
  object-fit:cover!important;
  border:1.5px solid #2d6d48!important;
  border-radius:9px!important;
  background:#f4f7f5!important;
}
.certificate-validity-photo .photo-missing{
  display:grid!important;
  place-items:center!important;
  padding:10px!important;
  text-align:center!important;
  color:#66766d!important;
  font-size:11px!important;
}
.certificate-media-pair,
.certificate-photo{
  display:none!important;
}
@media(max-width:800px){
  .certificate-result-box{
    grid-template-columns:1fr!important;
  }
  .certificate-validity-photo-layout{
    grid-template-columns:1fr!important;
  }
}
@media print{
  .certificate-section-title{
    min-width:47mm!important;
    padding:1.6mm 4.5mm!important;
    margin:2.5mm auto 1.8mm!important;
    font-size:9pt!important;
  }
  .certificate-result-box{
    grid-template-columns:30mm 28mm 37mm!important;
    gap:4mm!important;
    padding:3.5mm 5mm!important;
  }
  .certificate-qr canvas,
  .certificate-qr img{
    width:22mm!important;
    height:22mm!important;
  }
  .certificate-result{
    padding:2.5mm 5mm!important;
    font-size:17pt!important;
  }
  .certificate-validity-photo-layout{
    grid-template-columns:1fr 38mm!important;
    gap:5mm!important;
    padding:4.5mm 5.5mm!important;
  }
  .certificate-validity-text p{
    font-size:8.5pt!important;
    line-height:1.5!important;
  }
  .validity-divider{
    margin:2.4mm 0!important;
  }
  .certificate-validity-photo img,
  .certificate-validity-photo .photo-missing{
    width:35mm!important;
    height:25mm!important;
    border-radius:2mm!important;
  }
}

/* V14.5 certificate photo reliability and compact layout */

/* Compact top testing report */
.certificate-result-box{
  display:grid!important;
  grid-template-columns:150px minmax(220px,1fr) 180px!important;
  gap:18px!important;
  align-items:center!important;
  min-height:0!important;
  padding:20px 24px!important;
}
.certificate-result-box > *{
  align-self:center!important;
}
.certificate-qr{
  justify-self:center!important;
}
.certificate-qr canvas,
.certificate-qr img{
  width:104px!important;
  height:104px!important;
}
.certificate-result-label{
  justify-self:center!important;
  margin:0!important;
}
.certificate-result{
  margin:0!important;
  padding:12px 24px!important;
  font-size:30px!important;
  line-height:1!important;
}
.certificate-report-number{
  justify-self:center!important;
  min-width:145px!important;
  padding-left:18px!important;
  border-left:1px solid #7ca08a!important;
}
.certificate-report-number h3,
.certificate-report-number p{
  margin-top:0!important;
}

/* Validity box: clean text left, single photo right */
.certificate-validity-photo-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 175px!important;
  gap:26px!important;
  align-items:center!important;
  min-height:180px!important;
  padding:24px 28px!important;
}
.certificate-validity-text{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.validity-detail-row,
.validity-expiry-row{
  display:grid!important;
  grid-template-columns:145px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  margin:0 0 10px!important;
}
.validity-detail-row span,
.validity-expiry-row span{
  color:#4f6157!important;
  font-size:15px!important;
  font-weight:700!important;
}
.validity-detail-row strong,
.validity-expiry-row strong{
  color:#10261a!important;
  font-size:17px!important;
  font-weight:900!important;
  overflow-wrap:anywhere!important;
}
.validity-statement{
  margin:3px 0 0!important;
  color:#24362c!important;
  font-size:15px!important;
  line-height:1.5!important;
}
.validity-divider{
  width:100%!important;
  margin:14px 0!important;
  border-top:1px dashed #55a171!important;
}
.certificate-validity-photo{
  justify-self:end!important;
}
.certificate-validity-photo img,
.certificate-validity-photo .photo-missing{
  width:160px!important;
  height:118px!important;
  object-fit:cover!important;
  border:1.4px solid #2c6f47!important;
  border-radius:9px!important;
  background:#f4f7f5!important;
}
.certificate-validity-photo .photo-missing{
  display:grid!important;
  place-items:center!important;
  padding:10px!important;
  text-align:center!important;
  color:#66766d!important;
  font-size:11px!important;
}

/* Slightly reduce section heading sizes */
.certificate-section-title{
  min-width:245px!important;
  padding:7px 18px!important;
  font-size:16px!important;
  margin:15px auto 9px!important;
}

@media(max-width:800px){
  .certificate-result-box{
    grid-template-columns:1fr!important;
  }
  .certificate-report-number{
    border-left:0!important;
    border-top:1px solid #7ca08a!important;
    padding:14px 0 0!important;
  }
  .certificate-validity-photo-layout{
    grid-template-columns:1fr!important;
  }
  .certificate-validity-photo{
    justify-self:start!important;
  }
  .validity-detail-row,
  .validity-expiry-row{
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
}

@media print{
  .certificate-result-box{
    grid-template-columns:29mm 1fr 35mm!important;
    gap:4mm!important;
    padding:4mm 5mm!important;
  }
  .certificate-qr canvas,
  .certificate-qr img{
    width:21mm!important;
    height:21mm!important;
  }
  .certificate-result{
    padding:2.4mm 5mm!important;
    font-size:16pt!important;
  }
  .certificate-report-number{
    min-width:0!important;
    padding-left:4mm!important;
  }
  .certificate-section-title{
    min-width:44mm!important;
    padding:1.4mm 4mm!important;
    font-size:8.5pt!important;
    margin:2.5mm auto 1.7mm!important;
  }
  .certificate-validity-photo-layout{
    grid-template-columns:1fr 35mm!important;
    gap:5mm!important;
    min-height:36mm!important;
    padding:4.5mm 5.5mm!important;
  }
  .validity-detail-row,
  .validity-expiry-row{
    grid-template-columns:27mm 1fr!important;
    gap:2.5mm!important;
    margin-bottom:1.5mm!important;
  }
  .validity-detail-row span,
  .validity-expiry-row span{
    font-size:7pt!important;
  }
  .validity-detail-row strong,
  .validity-expiry-row strong{
    font-size:8pt!important;
  }
  .validity-statement{
    font-size:7.3pt!important;
  }
  .validity-divider{
    margin:2.2mm 0!important;
  }
  .certificate-validity-photo img,
  .certificate-validity-photo .photo-missing{
    width:33mm!important;
    height:24mm!important;
    border-radius:1.8mm!important;
  }
}

/* V14.6 certificate alignment and print readability */

/* Top testing report: QR | Result | Report */
.certificate-result-grid{
  display:grid!important;
  grid-template-columns:150px minmax(220px,1fr) 180px!important;
  gap:24px!important;
  align-items:center!important;
  padding:18px 24px!important;
  min-height:150px!important;
}
.certificate-result-qr{
  justify-self:start!important;
  align-self:center!important;
}
.certificate-result-qr canvas,
.certificate-result-qr img{
  width:108px!important;
  height:108px!important;
}
.certificate-result-center{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  min-width:0!important;
}
.certificate-result-label{
  margin:0!important;
  white-space:nowrap!important;
}
.certificate-result{
  margin:0!important;
  padding:13px 26px!important;
  min-width:130px!important;
  text-align:center!important;
  font-size:30px!important;
  line-height:1!important;
}
.certificate-report-number{
  justify-self:end!important;
  align-self:center!important;
  min-width:150px!important;
  padding-left:22px!important;
  border-left:1px solid #7ba18a!important;
}
.certificate-report-number h3,
.certificate-report-number p{
  margin-top:0!important;
  margin-bottom:7px!important;
}

/* Certificate validity */
.certificate-validity-photo-layout{
  min-height:160px!important;
  padding:20px 24px!important;
}
.certificate-validity-text{
  justify-content:center!important;
}
.certificate-validity-photo img,
.certificate-validity-photo .photo-missing{
  width:155px!important;
  height:112px!important;
}

/* Improve lower-table readability */
.certificate-table,
.vehicle-info-table,
.emission-table,
.defect-table{
  font-size:12px!important;
}
.certificate-table th,
.certificate-table td,
.vehicle-info-table th,
.vehicle-info-table td,
.emission-table th,
.emission-table td,
.defect-table th,
.defect-table td{
  padding:7px 8px!important;
  line-height:1.2!important;
}
.certificate-section-title{
  margin:12px auto 7px!important;
}

/* Keep footer fully inside page */
.certificate-footer-note{
  margin-top:10px!important;
  margin-bottom:10px!important;
  padding:8px 12px!important;
  position:relative!important;
  z-index:3!important;
}

/* Use page space better */
.certificate-sheet,
.certificate-page{
  padding-bottom:18px!important;
}

@media(max-width:900px){
  .certificate-result-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .certificate-result-qr,
  .certificate-report-number{
    justify-self:center!important;
  }
  .certificate-report-number{
    border-left:0!important;
    border-top:1px solid #7ba18a!important;
    padding:14px 0 0!important;
    text-align:center!important;
  }
}

@media print{
  @page{
    size:A4 portrait;
    margin:5mm;
  }

  html,body{
    width:200mm!important;
    min-height:287mm!important;
    overflow:visible!important;
  }

  .certificate-page,
  .certificate-sheet{
    width:200mm!important;
    min-height:287mm!important;
    height:auto!important;
    margin:0 auto!important;
    padding:5mm 5.5mm 7mm!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    page-break-inside:avoid!important;
  }

  .certificate-header{
    margin-bottom:1.8mm!important;
  }

  .certificate-result-grid{
    grid-template-columns:28mm 1fr 34mm!important;
    gap:4mm!important;
    min-height:31mm!important;
    padding:3.5mm 4.5mm!important;
  }
  .certificate-result-qr canvas,
  .certificate-result-qr img{
    width:20mm!important;
    height:20mm!important;
  }
  .certificate-result-center{
    gap:3mm!important;
  }
  .certificate-result-label{
    font-size:8pt!important;
  }
  .certificate-result{
    min-width:25mm!important;
    padding:2.5mm 5mm!important;
    font-size:16pt!important;
  }
  .certificate-report-number{
    min-width:0!important;
    padding-left:3.5mm!important;
  }
  .certificate-report-number h3{
    font-size:8.5pt!important;
  }
  .certificate-report-number p{
    font-size:8pt!important;
  }

  .certificate-validity-photo-layout{
    grid-template-columns:1fr 34mm!important;
    gap:4mm!important;
    min-height:31mm!important;
    padding:3.8mm 4.8mm!important;
  }
  .certificate-validity-photo img,
  .certificate-validity-photo .photo-missing{
    width:31mm!important;
    height:22mm!important;
  }

  .certificate-section-title{
    margin:1.8mm auto 1.2mm!important;
    padding:1.2mm 3.8mm!important;
    font-size:8pt!important;
  }

  .certificate-table,
  .vehicle-info-table,
  .emission-table,
  .defect-table{
    font-size:6.6pt!important;
  }
  .certificate-table th,
  .certificate-table td,
  .vehicle-info-table th,
  .vehicle-info-table td,
  .emission-table th,
  .emission-table td,
  .defect-table th,
  .defect-table td{
    padding:1.2mm 1.5mm!important;
    line-height:1.12!important;
  }

  .certificate-footer-note{
    margin-top:2mm!important;
    margin-bottom:0!important;
    padding:1.5mm 2mm!important;
    font-size:6.5pt!important;
    page-break-inside:avoid!important;
  }
}

/* V14.7 80mm thermal receipt */
.thermal-body{margin:0;padding:24px 0;background:#e9efeb;color:#000;font-family:Arial,sans-serif}
.thermal-toolbar{width:80mm;max-width:calc(100% - 20px);margin:0 auto 12px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.thermal-receipt{width:80mm;margin:0 auto;padding:4mm;box-sizing:border-box;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.15)}
.thermal-header{text-align:center}.thermal-header img{width:17mm;height:17mm;object-fit:contain;filter:grayscale(1)}
.thermal-header h1{font-size:11pt;margin:1mm 0}.thermal-header h2{font-size:8.5pt;margin:0}.thermal-header p{font-size:8pt;font-weight:700;margin:1mm 0}
.thermal-rule{border-top:1px dashed #000;margin:2.5mm 0}.thermal-rule.strong{border-top:2px solid #000}
.thermal-list{display:grid;gap:1.4mm}.thermal-list div{display:grid;grid-template-columns:28mm 1fr;gap:2mm}
.thermal-list span,.thermal-list b{font-size:8pt}.thermal-list b{text-align:right;overflow-wrap:anywhere}
.thermal-total{display:flex;justify-content:space-between;align-items:center}.thermal-total span{font-size:9pt;font-weight:800}.thermal-total b{font-size:13pt}
.thermal-qr{display:flex;flex-direction:column;align-items:center;text-align:center}.thermal-qr canvas,.thermal-qr img{width:31mm!important;height:31mm!important}.thermal-qr b{font-size:8pt;margin-top:1mm}.thermal-qr small{font-size:7pt}
.thermal-notes{font-size:7.5pt;line-height:1.4}.thermal-notes p{margin:1mm 0}
.thermal-footer{text-align:center;display:flex;flex-direction:column;gap:1mm;margin-top:3mm}.thermal-footer b{font-size:9pt}.thermal-footer span{font-size:7pt}
@media print{
html,body{width:80mm!important;margin:0!important;padding:0!important;background:#fff!important}
.thermal-toolbar,.no-print{display:none!important}
.thermal-receipt{width:72mm!important;margin:0 auto!important;padding:2.5mm!important;box-shadow:none!important}
.thermal-header img{width:14mm!important;height:14mm!important}
.thermal-header h1{font-size:9.5pt!important}.thermal-header h2{font-size:7.5pt!important}.thermal-header p{font-size:6.8pt!important}
.thermal-list div{grid-template-columns:25mm 1fr!important}.thermal-list span,.thermal-list b{font-size:6.8pt!important}
.thermal-total span{font-size:7.5pt!important}.thermal-total b{font-size:10.5pt!important}
.thermal-qr canvas,.thermal-qr img{width:27mm!important;height:27mm!important}
.thermal-notes{font-size:6.5pt!important}
@page{size:80mm auto;margin:0}
}

/* V14.8 certificate top alignment + thermal-only invoice */
.certificate-result-grid-v148{display:grid!important;grid-template-columns:150px minmax(240px,1fr) 175px!important;gap:22px!important;align-items:center!important;min-height:155px!important;padding:20px 24px!important}
.certificate-result-qr-v148{justify-self:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important}
.certificate-result-qr-v148 #certificateQr canvas,.certificate-result-qr-v148 #certificateQr img{width:110px!important;height:110px!important}
.certificate-result-center-v148{display:flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;white-space:nowrap!important}
.certificate-result-label-v148{font-size:21px!important;font-weight:900!important}
.certificate-result-badge-v148{min-width:150px!important;padding:16px 26px!important;border-radius:9px!important;background:#149536!important;color:#fff!important;text-align:center!important;font-size:34px!important;font-weight:900!important;line-height:1!important}
.certificate-result-badge-v148.fail{background:#c52a22!important}
.certificate-report-v148{justify-self:stretch!important;padding-left:22px!important;border-left:1px solid #7ea18c!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:7px!important}
.certificate-report-v148 span{font-size:18px!important;font-weight:800!important}
.certificate-report-v148 strong{font-size:20px!important;color:#078235!important}
.certificate-report-v148 em{padding:5px 12px!important;border-radius:999px!important;background:#e7f4ea!important;color:#087231!important;font-size:13px!important;font-style:normal!important;font-weight:800!important}
@media(max-width:850px){.certificate-result-grid-v148{grid-template-columns:1fr!important}.certificate-report-v148{border-left:0!important;border-top:1px solid #7ea18c!important;padding:14px 0 0!important;align-items:center!important}}
@media print{
.certificate-result-grid-v148{grid-template-columns:28mm 1fr 34mm!important;gap:4mm!important;min-height:30mm!important;padding:3.5mm 4.5mm!important}
.certificate-result-qr-v148 #certificateQr canvas,.certificate-result-qr-v148 #certificateQr img{width:20mm!important;height:20mm!important}
.certificate-result-label-v148{font-size:8pt!important}
.certificate-result-badge-v148{min-width:24mm!important;padding:2.6mm 4.8mm!important;font-size:16pt!important;border-radius:2mm!important}
.certificate-report-v148{padding-left:3.5mm!important;gap:1.3mm!important}
.certificate-report-v148 span{font-size:7.5pt!important}.certificate-report-v148 strong{font-size:8pt!important}.certificate-report-v148 em{font-size:6.3pt!important;padding:1mm 2mm!important}
}

/* V14.9 minor action + responsive table fixes */

/* Thermal page toolbar */
.thermal-toolbar{
  width:80mm!important;
  max-width:calc(100% - 20px)!important;
}
.thermal-toolbar .btn{
  flex:1 1 auto;
  min-width:110px;
  text-align:center;
}

/* Dashboard records table */
.responsive-records-wrap{
  width:100%;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch;
}
.responsive-records-table{
  width:100%!important;
  min-width:1180px!important;
  table-layout:auto!important;
}
.responsive-records-table th,
.responsive-records-table td{
  white-space:nowrap!important;
}
.responsive-records-table .responsive-actions,
.responsive-records-table td:last-child{
  min-width:240px!important;
  white-space:nowrap!important;
}
.responsive-records-table td:last-child a{
  display:inline-block;
  margin-right:5px;
}

/* Prevent the content area from clipping wide tables */
.content,
.page,
.card,
.table-wrap{
  min-width:0!important;
}
.app-shell{
  overflow-x:hidden;
}

/* Better layout on medium screens */
@media(max-width:1200px){
  .responsive-records-table{
    min-width:1080px!important;
  }
}

/* Mobile cards instead of a clipped wide table */
@media(max-width:760px){
  .responsive-records-wrap{
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  .responsive-records-table{
    display:block!important;
    min-width:0!important;
    width:100%!important;
  }
  .responsive-records-table thead{
    display:none!important;
  }
  .responsive-records-table tbody,
  .responsive-records-table tr,
  .responsive-records-table td{
    display:block!important;
    width:100%!important;
  }
  .responsive-records-table tr{
    margin-bottom:14px!important;
    padding:14px!important;
    border:1px solid #d5e0d9!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 4px 12px rgba(7,85,45,.06)!important;
  }
  .responsive-records-table td{
    position:relative!important;
    padding:8px 8px 8px 48%!important;
    border:0!important;
    border-bottom:1px solid #edf2ef!important;
    white-space:normal!important;
    min-height:36px!important;
  }
  .responsive-records-table td:last-child{
    border-bottom:0!important;
    padding-left:8px!important;
    padding-top:12px!important;
    min-width:0!important;
  }
  .responsive-records-table td::before{
    content:attr(data-label);
    position:absolute;
    left:8px;
    top:8px;
    width:42%;
    color:#4e6357;
    font-weight:800;
  }
  .responsive-records-table td:last-child::before{
    display:none!important;
  }
  .responsive-records-table td:last-child a{
    display:inline-flex!important;
    margin:4px 6px 4px 0!important;
    padding:8px 10px!important;
    border:1px solid #b7cbbf!important;
    border-radius:8px!important;
    background:#f7faf8!important;
  }
}

@media print{
  .thermal-toolbar{
    display:none!important;
  }
}

/* V15 Emission sticker */
.sticker-body{margin:0;padding:24px;background:#eef3ef;font-family:Arial,sans-serif}
.sticker-toolbar{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.emission-sticker{position:relative;width:100mm;height:100mm;margin:auto;border-radius:50%;background:#197b34;border:3mm solid #fff;outline:2mm solid #197b34;overflow:hidden;box-sizing:border-box;color:#fff}
.emission-sticker:before{content:"";position:absolute;inset:7mm;border:1.5mm solid #3bbc50;border-radius:50%;background:#fff}
.sticker-outer-text{position:absolute;left:0;right:0;z-index:3;text-align:center;font-weight:900;letter-spacing:4mm;font-size:11mm}
.sticker-top-text{top:8mm}.sticker-bottom-text{bottom:7mm}
.sticker-middle-band{position:absolute;z-index:4;left:5mm;right:5mm;top:36mm;height:29mm;background:#fff;display:grid;grid-template-columns:22mm 1fr 22mm;align-items:center;gap:2mm}
.sticker-middle-band>img{width:20mm;height:20mm;object-fit:contain}
.sticker-inner{height:47mm;width:47mm;margin:auto;margin-top:-9mm;border:1.5mm solid #202665;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#202665}
.sticker-inner #stickerQr canvas,.sticker-inner #stickerQr img{width:25mm!important;height:25mm!important}
.sticker-inner strong{font-size:5.5mm;line-height:1;margin-top:1mm;border-bottom:.6mm solid #202665}
.sticker-inner span{font-size:2.8mm;margin-top:1.5mm;font-weight:700}
.sticker-inner b{font-size:3.6mm}
.sticker-serial{position:absolute;z-index:5;left:0;right:0;bottom:3mm;text-align:center;font-size:2.5mm;letter-spacing:.5mm}
.sticker-help{text-align:center;color:#506158}
.registration-lookup-group{grid-column:span 2}
.registration-lookup-row{display:flex;gap:8px}.registration-lookup-row input{flex:1}
@media(max-width:700px){.emission-sticker{width:88vw;height:88vw}.registration-lookup-group{grid-column:span 1}.registration-lookup-row{flex-direction:column}}
@media print{
.sticker-body{padding:0;background:#fff}.sticker-toolbar,.sticker-help{display:none!important}
.emission-sticker{width:100mm!important;height:100mm!important;margin:0 auto!important;box-shadow:none!important}
@page{size:100mm 100mm;margin:0}
}

/* V15.1 automatic result and corrected sticker */
.auto-result-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:18px 20px;
  border:1px solid #cbd9d0;
  border-left:7px solid #75847b;
  border-radius:12px;
  background:#f6f8f7;
}
.auto-result-card div{display:flex;align-items:center;justify-content:space-between;gap:18px}
.auto-result-card span{font-weight:800;color:#53645a}
.auto-result-card strong{font-size:24px}
.auto-result-card p{margin:0;color:#526158}
.auto-result-card.pass{border-left-color:#13863e;background:#eaf7ef}.auto-result-card.pass strong{color:#087331}
.auto-result-card.fail{border-left-color:#c72d26;background:#fff0ef}.auto-result-card.fail strong{color:#aa201a}
.auto-result-card.enter-readings{border-left-color:#b58b20;background:#fff8e5}.auto-result-card.enter-readings strong{color:#8c6500}
.criteria-summary{display:flex;flex-direction:column;gap:5px;margin-top:12px;padding:12px 14px;border-radius:9px;background:#f0f5f2;color:#405248}
.criteria-summary span{font-size:12px}

/* Override old sticker CSS with a stable print-safe design */
.sticker-v151{
  position:relative!important;
  width:100mm!important;
  height:100mm!important;
  margin:auto!important;
  border-radius:50%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  border:2.2mm solid #fff!important;
  outline:1.8mm solid #197b34!important;
  background:#197b34!important;
  color:#fff!important;
}
.sticker-v151:before{
  content:""!important;
  position:absolute!important;
  inset:6mm!important;
  border:1.3mm solid #35ba50!important;
  border-radius:50%!important;
  background:#197b34!important;
}
.sticker-ring-title{
  position:absolute!important;
  z-index:4!important;
  left:12mm!important;
  right:12mm!important;
  top:8mm!important;
  text-align:center!important;
  font-size:8mm!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:2.4mm!important;
  color:#fff!important;
  white-space:nowrap!important;
}
.sticker-certified-title{
  top:auto!important;
  bottom:8mm!important;
  letter-spacing:1.8mm!important;
}
.sticker-center-panel{
  position:absolute!important;
  z-index:5!important;
  left:7mm!important;
  right:7mm!important;
  top:31mm!important;
  height:38mm!important;
  display:grid!important;
  grid-template-columns:19mm 1fr 19mm!important;
  align-items:center!important;
  gap:2mm!important;
  padding:0 2mm!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
.sticker-side-logo{
  width:17mm!important;
  height:17mm!important;
  object-fit:contain!important;
  display:block!important;
  margin:auto!important;
}
.sticker-core{
  width:43mm!important;
  height:43mm!important;
  margin:auto!important;
  border:1.2mm solid #202665!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#202665!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.sticker-core #stickerQr canvas,
.sticker-core #stickerQr img{
  width:22mm!important;
  height:22mm!important;
  display:block!important;
}
.sticker-core strong{
  margin-top:1mm!important;
  padding-bottom:.5mm!important;
  border-bottom:.45mm solid #202665!important;
  font-size:4.7mm!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.sticker-core span{
  margin-top:1.2mm!important;
  font-size:2.5mm!important;
  font-weight:800!important;
}
.sticker-core b{
  font-size:3.3mm!important;
  line-height:1.05!important;
}
.sticker-v151 .sticker-serial{
  position:absolute!important;
  z-index:6!important;
  left:0!important;
  right:0!important;
  bottom:2.8mm!important;
  text-align:center!important;
  color:#fff!important;
  font-size:2.4mm!important;
  letter-spacing:.7mm!important;
}
@media(max-width:700px){
  .sticker-v151{width:88vw!important;height:88vw!important}
}
@media print{
  .sticker-v151{width:100mm!important;height:100mm!important}
  @page{size:100mm 100mm;margin:0}
}

/* V15.2 final sticker layout correction */
.sticker-v152{
  position:relative!important;
  width:100mm!important;
  height:100mm!important;
  margin:0 auto!important;
  border-radius:50%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:#197b34!important;
  border:2mm solid #ffffff!important;
  outline:1.5mm solid #197b34!important;
  color:#ffffff!important;
}
.sticker-v152::before{
  content:""!important;
  position:absolute!important;
  inset:6mm!important;
  border:1.2mm solid #32ba4d!important;
  border-radius:50%!important;
  pointer-events:none!important;
}
.sticker-title{
  position:absolute!important;
  z-index:5!important;
  left:10mm!important;
  right:10mm!important;
  text-align:center!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.sticker-title-top{
  top:8.5mm!important;
  font-size:7.2mm!important;
  letter-spacing:1.9mm!important;
}
.sticker-title-bottom{
  bottom:8.5mm!important;
  font-size:6.7mm!important;
  letter-spacing:1.45mm!important;
}
.sticker-white-band{
  position:absolute!important;
  z-index:4!important;
  left:8mm!important;
  right:8mm!important;
  top:31mm!important;
  height:38mm!important;
  background:#ffffff!important;
  display:grid!important;
  grid-template-columns:19mm minmax(0,1fr) 19mm!important;
  align-items:center!important;
  gap:2mm!important;
  padding:0 2mm!important;
  box-sizing:border-box!important;
}
.sticker-logo{
  display:block!important;
  width:16mm!important;
  height:16mm!important;
  object-fit:contain!important;
  margin:auto!important;
  max-width:none!important;
}
.sticker-core-v152{
  width:42mm!important;
  height:42mm!important;
  margin:auto!important;
  border:1.1mm solid #232a72!important;
  border-radius:50%!important;
  background:#ffffff!important;
  color:#232a72!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding-top:1mm!important;
}
.sticker-qr-box{
  width:18.5mm!important;
  height:18.5mm!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  flex:0 0 18.5mm!important;
}
.sticker-qr-box canvas,
.sticker-qr-box img{
  width:18.5mm!important;
  height:18.5mm!important;
  max-width:18.5mm!important;
  max-height:18.5mm!important;
  display:block!important;
}
.sticker-registration{
  margin-top:.8mm!important;
  max-width:34mm!important;
  padding-bottom:.5mm!important;
  border-bottom:.4mm solid #232a72!important;
  font-size:4.3mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sticker-valid-label{
  margin-top:1.1mm!important;
  font-size:2.35mm!important;
  font-weight:800!important;
  line-height:1!important;
}
.sticker-valid-date{
  margin-top:.7mm!important;
  font-size:3.15mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.sticker-v152 .sticker-serial{
  position:absolute!important;
  z-index:6!important;
  left:0!important;
  right:0!important;
  bottom:2.5mm!important;
  text-align:center!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:2.2mm!important;
  letter-spacing:.65mm!important;
  line-height:1!important;
}
@media(max-width:700px){
  .sticker-v152{
    width:92vw!important;
    height:92vw!important;
  }
}
@media print{
  .sticker-v152{
    width:100mm!important;
    height:100mm!important;
    margin:0!important;
  }
  @page{
    size:100mm 100mm;
    margin:0;
  }
}

/* V15.3 final sticker correction */

/* Neutralize all older sticker pseudo-element backgrounds that created the huge white circle */
.emission-sticker.sticker-v153::before{
  content:""!important;
  position:absolute!important;
  inset:6mm!important;
  border:1.2mm solid #32ba4d!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  z-index:1!important;
  pointer-events:none!important;
}

/* Stable outer circle */
.emission-sticker.sticker-v153{
  position:relative!important;
  width:100mm!important;
  height:100mm!important;
  margin:0 auto!important;
  overflow:hidden!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
  background:#197b34!important;
  border:2mm solid #ffffff!important;
  outline:1.5mm solid #197b34!important;
  color:#ffffff!important;
}

/* Keep title text fully visible above every decorative layer */
.sticker-v153 .sticker-title{
  position:absolute!important;
  z-index:10!important;
  left:8mm!important;
  right:8mm!important;
  text-align:center!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.sticker-v153 .sticker-title-top{
  top:8mm!important;
  font-size:7mm!important;
  letter-spacing:1.6mm!important;
}
.sticker-v153 .sticker-title-bottom{
  bottom:8mm!important;
  font-size:6.5mm!important;
  letter-spacing:1.25mm!important;
}

/* Only one white horizontal band */
.sticker-v153 .sticker-white-band{
  position:absolute!important;
  z-index:6!important;
  left:8mm!important;
  right:8mm!important;
  top:31mm!important;
  height:38mm!important;
  display:grid!important;
  grid-template-columns:18mm minmax(0,1fr) 18mm!important;
  align-items:center!important;
  gap:2mm!important;
  padding:0 2mm!important;
  box-sizing:border-box!important;
  background:#ffffff!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
}

/* Logos stay fully within the white band */
.sticker-v153 .sticker-logo{
  width:15.5mm!important;
  height:15.5mm!important;
  object-fit:contain!important;
  display:block!important;
  margin:auto!important;
  max-width:none!important;
}

/* Center circle remains compact and above the white band */
.sticker-v153 .sticker-core-v152{
  position:relative!important;
  z-index:8!important;
  width:42mm!important;
  height:42mm!important;
  margin:auto!important;
  border:1.1mm solid #232a72!important;
  border-radius:50%!important;
  background:#ffffff!important;
  color:#232a72!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding:1mm 0 0!important;
  overflow:hidden!important;
}

/* QR fixed square */
.sticker-v153 .sticker-qr-box{
  width:18mm!important;
  height:18mm!important;
  flex:0 0 18mm!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.sticker-v153 .sticker-qr-box canvas,
.sticker-v153 .sticker-qr-box img{
  width:18mm!important;
  height:18mm!important;
  max-width:18mm!important;
  max-height:18mm!important;
  display:block!important;
}

/* Text fits inside center circle */
.sticker-v153 .sticker-registration{
  margin-top:.7mm!important;
  max-width:33mm!important;
  padding-bottom:.45mm!important;
  border-bottom:.4mm solid #232a72!important;
  font-size:4.1mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sticker-v153 .sticker-valid-label{
  margin-top:1mm!important;
  font-size:2.25mm!important;
  font-weight:800!important;
  line-height:1!important;
}
.sticker-v153 .sticker-valid-date{
  margin-top:.6mm!important;
  font-size:3mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* Serial stays below CERTIFIED without overlap */
.sticker-v153 .sticker-serial{
  position:absolute!important;
  z-index:11!important;
  left:0!important;
  right:0!important;
  bottom:2.3mm!important;
  color:#ffffff!important;
  text-align:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:2.1mm!important;
  letter-spacing:.6mm!important;
  line-height:1!important;
}

@media print{
  .sticker-v153{
    width:100mm!important;
    height:100mm!important;
    margin:0!important;
  }
  @page{
    size:100mm 100mm;
    margin:0;
  }
}

/* V15.4 exact sticker recreated with SVG geometry */
.sticker-svg-wrap{
  position:relative;
  width:100mm;
  height:100mm;
  margin:0 auto;
  overflow:hidden;
  border-radius:50%;
  background:#fff;
}
.sticker-svg-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.sticker-svg-bg .sticker-arc-text{
  fill:#ffffff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:92px;
  font-weight:900;
  letter-spacing:24px;
}
.sticker-svg-bg .sticker-arc-bottom{
  font-size:82px;
  letter-spacing:18px;
}
.sticker-svg-logo{
  position:absolute;
  top:41%;
  width:17%;
  height:17%;
  object-fit:contain;
  z-index:3;
}
.sticker-svg-gov{left:10.5%}
.sticker-svg-transport{right:10.5%}
.sticker-svg-center{
  position:absolute;
  z-index:4;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:41%;
  height:41%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#222a73;
  box-sizing:border-box;
}
.sticker-svg-qr{
  width:39%;
  height:39%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sticker-svg-qr canvas,
.sticker-svg-qr img{
  width:100%!important;
  height:100%!important;
  display:block!important;
}
.sticker-svg-registration{
  margin-top:2.5%;
  max-width:82%;
  padding-bottom:1.5%;
  border-bottom:2px solid #222a73;
  font-family:Arial,Helvetica,sans-serif;
  font-size:6.5mm;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sticker-svg-valid-label{
  margin-top:3%;
  font-family:Arial,Helvetica,sans-serif;
  font-size:3.1mm;
  font-weight:800;
  line-height:1;
}
.sticker-svg-valid-date{
  margin-top:1.5%;
  font-family:Arial,Helvetica,sans-serif;
  font-size:4.1mm;
  font-weight:900;
  line-height:1;
}
.sticker-svg-serial{
  position:absolute;
  z-index:5;
  left:0;
  right:0;
  bottom:2.9%;
  text-align:center;
  color:#ffffff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:2.8mm;
  letter-spacing:1.4mm;
  line-height:1;
}
@media(max-width:700px){
  .sticker-svg-wrap{
    width:92vw;
    height:92vw;
  }
}
@media print{
  .sticker-svg-wrap{
    width:100mm!important;
    height:100mm!important;
    margin:0!important;
  }
  @page{
    size:100mm 100mm;
    margin:0;
  }
}

/* V15.5 exact sticker final correction */
.sticker-v155{
  position:relative!important;
  width:100mm!important;
  height:100mm!important;
  margin:0 auto!important;
  overflow:hidden!important;
  border-radius:50%!important;
  background:#ffffff!important;
}
.sticker-v155 .sticker-svg-bg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
}
.sticker-v155 .sticker-arc-text{
  fill:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
}
.sticker-v155 .sticker-top-arc{
  font-size:88px!important;
  letter-spacing:22px!important;
}
.sticker-v155 .sticker-bottom-arc{
  font-size:76px!important;
  letter-spacing:16px!important;
}
.sticker-v155 .sticker-svg-logo{
  position:absolute!important;
  z-index:4!important;
  top:42.2%!important;
  width:16.5%!important;
  height:16.5%!important;
  object-fit:contain!important;
}
.sticker-v155 .sticker-svg-gov{
  left:9.8%!important;
}
.sticker-v155 .sticker-svg-transport{
  right:9.8%!important;
}
.sticker-v155 .sticker-svg-center{
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:40.5%!important;
  height:40.5%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  color:#222a73!important;
  box-sizing:border-box!important;
  padding-top:1%!important;
}
.sticker-v155 .sticker-svg-qr{
  width:34%!important;
  height:34%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  flex:0 0 auto!important;
}
.sticker-v155 .sticker-svg-qr canvas,
.sticker-v155 .sticker-svg-qr img{
  width:100%!important;
  height:100%!important;
  display:block!important;
}
.sticker-v155 .sticker-svg-registration{
  margin-top:2.3%!important;
  max-width:80%!important;
  padding-bottom:1.4%!important;
  border-bottom:2px solid #222a73!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:6.1mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sticker-v155 .sticker-svg-valid-label{
  margin-top:3%!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:3mm!important;
  font-weight:800!important;
  line-height:1!important;
}
.sticker-v155 .sticker-svg-valid-date{
  margin-top:1.4%!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:4mm!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.sticker-v155 .sticker-svg-serial{
  position:absolute!important;
  z-index:6!important;
  left:0!important;
  right:0!important;
  bottom:2.7%!important;
  text-align:center!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:2.5mm!important;
  letter-spacing:1.2mm!important;
  line-height:1!important;
}
@media(max-width:700px){
  .sticker-v155{
    width:92vw!important;
    height:92vw!important;
  }
}
@media print{
  .sticker-v155{
    width:100mm!important;
    height:100mm!important;
    margin:0!important;
  }
  @page{
    size:100mm 100mm;
    margin:0;
  }
}

/* V16 */
.other-input{margin-top:7px}
.verification-confirm-box{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid #cad9d0;border-radius:10px;background:#f7faf8}
.public-document-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}
.public-doc-body{background:#eef3ef;padding:24px;font-family:Arial,sans-serif}.public-doc-toolbar{text-align:center;margin-bottom:15px}.public-simple-doc{width:80mm;max-width:100%;margin:auto;background:#fff;padding:8mm;box-sizing:border-box;text-align:center}.public-simple-doc #publicQr{display:flex;justify-content:center;margin:10px}.public-simple-doc p{text-align:left;border-bottom:1px dashed #aaa;padding:7px 0}
.sticker-v155 .sticker-certified-straight{fill:#fff;font-family:Arial,sans-serif;font-size:72px;font-weight:900;letter-spacing:12px}
@media print{.no-print{display:none!important}.public-doc-body{padding:0;background:#fff}.public-simple-doc{box-shadow:none}}


/* ===== V17 STICKER: isolated layout, no overlap ===== */
.sticker-page-v17{margin:0;background:#eef3ef;font-family:Arial,Helvetica,sans-serif;padding:24px}
.sticker-page-v17 .sticker-toolbar{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:18px}
.emission-sticker-v17{position:relative;width:1000px;height:1000px;max-width:92vw;max-height:92vw;aspect-ratio:1/1;margin:0 auto;border-radius:50%;overflow:hidden;background:#147d34;box-sizing:border-box;color:#fff}
.emission-sticker-v17 .sticker-ring{position:absolute;border-radius:50%;pointer-events:none;box-sizing:border-box}
.emission-sticker-v17 .sticker-ring-one{inset:22px;border:14px solid #fff}
.emission-sticker-v17 .sticker-ring-two{inset:54px;border:18px solid #2fbd55}
.emission-sticker-v17 .sticker-heading{position:absolute;z-index:3;top:105px;left:0;right:0;text-align:center;font-size:82px;font-weight:900;letter-spacing:22px;line-height:1}
.emission-sticker-v17 .sticker-info-band{position:absolute;z-index:4;left:82px;right:82px;top:310px;height:400px;background:#fff;display:grid;grid-template-columns:260px 1fr 260px;align-items:center;color:#222a73;box-sizing:border-box;padding:22px}
.emission-sticker-v17 .sticker-side{height:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}
.emission-sticker-v17 .sticker-left-side{gap:8px}
.emission-sticker-v17 .sticker-qr-box{width:150px;height:150px;flex:0 0 150px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.emission-sticker-v17 .sticker-qr-box img,.emission-sticker-v17 .sticker-qr-box canvas{display:block!important;width:150px!important;height:150px!important}
.emission-sticker-v17 .sticker-reg{width:220px;min-height:52px;border-bottom:4px solid #222a73;text-align:center;font-weight:900;white-space:nowrap;overflow:hidden;line-height:1.15;padding:4px 0;box-sizing:border-box}
.emission-sticker-v17 .sticker-valid-label{font-size:22px;font-weight:800;line-height:1}
.emission-sticker-v17 .sticker-valid-date{font-size:30px;font-weight:900;line-height:1.1;white-space:nowrap}
.emission-sticker-v17 .sticker-gov-logo{width:135px;height:82px;object-fit:contain;margin-top:4px}
.emission-sticker-v17 .sticker-photo-zone{width:360px;height:360px;border:14px solid #222a73;border-radius:50%;background:#fff;overflow:hidden;justify-self:center;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.emission-sticker-v17 .sticker-photo-zone img{width:100%;height:100%;object-fit:cover;display:block}
.emission-sticker-v17 .photo-placeholder{text-align:center;font-size:28px;font-weight:900;color:#a4a9b7;line-height:1.2}
.emission-sticker-v17 .sticker-transport-logo{width:195px;height:185px;object-fit:contain}
.emission-sticker-v17 .sticker-cert-no{max-width:220px;margin-top:18px;font-size:18px;font-weight:800;text-align:center;overflow-wrap:anywhere;color:#222a73}
.emission-sticker-v17 .sticker-certified{position:absolute;z-index:3;left:0;right:0;bottom:105px;text-align:center;font-size:76px;font-weight:900;letter-spacing:16px;line-height:1}
.emission-sticker-v17 .sticker-serial{position:absolute;z-index:3;left:0;right:0;bottom:62px;text-align:center;font-size:20px;font-weight:700;letter-spacing:5px}
.sticker-help{text-align:center;color:#46544c}
[data-bike-optional][hidden]{display:none!important}
@media(max-width:900px){
 .emission-sticker-v17 .sticker-heading{top:10.5%;font-size:7.8vw;letter-spacing:2vw}
 .emission-sticker-v17 .sticker-info-band{left:8.2%;right:8.2%;top:31%;height:40%;grid-template-columns:26% 48% 26%;padding:2.2%}
 .emission-sticker-v17 .sticker-qr-box,.emission-sticker-v17 .sticker-qr-box img,.emission-sticker-v17 .sticker-qr-box canvas{width:15vw!important;height:15vw!important;flex-basis:15vw}
 .emission-sticker-v17 .sticker-reg{width:22vw;min-height:5vw;border-bottom-width:3px}
 .emission-sticker-v17 .sticker-valid-label{font-size:2.2vw}.emission-sticker-v17 .sticker-valid-date{font-size:3vw}
 .emission-sticker-v17 .sticker-gov-logo{width:13.5vw;height:8.2vw}
 .emission-sticker-v17 .sticker-photo-zone{width:36vw;height:36vw;border-width:1.4vw}
 .emission-sticker-v17 .sticker-transport-logo{width:19.5vw;height:18.5vw}.emission-sticker-v17 .sticker-cert-no{font-size:1.8vw;margin-top:1.8vw}
 .emission-sticker-v17 .sticker-certified{bottom:10.5%;font-size:7.2vw;letter-spacing:1.6vw}.emission-sticker-v17 .sticker-serial{bottom:6.2%;font-size:2vw;letter-spacing:.5vw}
}
@media print{
 .sticker-page-v17{padding:0;background:#fff}.emission-sticker-v17{width:100mm;height:100mm;max-width:none;max-height:none}
 .emission-sticker-v17 .sticker-ring-one{inset:2.2mm;border-width:1.4mm}.emission-sticker-v17 .sticker-ring-two{inset:5.4mm;border-width:1.8mm}
 @page{size:100mm 100mm;margin:0}
}

/* ===== V17.2 APPROVED ROUND STICKER ===== */
.sticker-page-v172{
  margin:0;
  padding:24px;
  min-height:100vh;
  background:#eef1ef;
  font-family:Arial,Helvetica,sans-serif;
  box-sizing:border-box;
}
.sticker-page-v172 .sticker-toolbar{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin:0 auto 18px;
}
.emission-sticker-v172{
  --green:#197c35;
  --bright-green:#2fbd55;
  --navy:#202665;
  position:relative;
  width:1000px;
  height:1000px;
  max-width:92vw;
  max-height:92vw;
  aspect-ratio:1/1;
  margin:0 auto;
  overflow:hidden;
  border-radius:50%;
  background:var(--green);
  color:#fff;
  box-sizing:border-box;
  isolation:isolate;
}
.emission-sticker-v172 *{box-sizing:border-box}
.emission-sticker-v172 .v172-ring{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.emission-sticker-v172 .v172-ring-outer{
  inset:18px;
  border:16px solid var(--green);
  box-shadow:inset 0 0 0 5px rgba(255,255,255,.2);
}
.emission-sticker-v172 .v172-ring-white{
  inset:37px;
  border:12px solid #fff;
}
.emission-sticker-v172 .v172-ring-inner{
  inset:58px;
  border:13px solid var(--bright-green);
}
.emission-sticker-v172 .v172-top-title,
.emission-sticker-v172 .v172-bottom-title{
  position:absolute;
  z-index:8;
  left:12%;
  right:12%;
  text-align:center;
  color:#fff;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.emission-sticker-v172 .v172-top-title{
  top:98px;
  font-size:86px;
  letter-spacing:28px;
  padding-left:28px;
}
.emission-sticker-v172 .v172-bottom-title{
  bottom:108px;
  font-size:80px;
  letter-spacing:20px;
  padding-left:20px;
}
.emission-sticker-v172 .v172-logo-band{
  position:absolute;
  z-index:2;
  left:72px;
  right:72px;
  top:360px;
  height:170px;
  background:#fff;
}
.emission-sticker-v172 .v172-side-logo{
  position:absolute;
  z-index:6;
  top:366px;
  width:190px;
  height:158px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  overflow:hidden;
  background:#fff;
}
.emission-sticker-v172 .v172-left-logo{left:80px}
.emission-sticker-v172 .v172-right-logo{right:80px}
.emission-sticker-v172 .v172-side-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.emission-sticker-v172 .v172-center-disc{
  position:absolute;
  z-index:10;
  left:50%;
  top:50%;
  width:430px;
  height:430px;
  transform:translate(-50%,-50%);
  border:11px solid var(--bright-green);
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px var(--navy);
  color:var(--navy);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.emission-sticker-v172 .v172-qr{
  width:245px;
  height:245px;
  flex:0 0 245px;
  margin-top:27px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#fff;
}
.emission-sticker-v172 .v172-qr canvas,
.emission-sticker-v172 .v172-qr img{
  display:block!important;
  width:245px!important;
  height:245px!important;
}
.emission-sticker-v172 .v172-divider{
  width:100%;
  height:13px;
  flex:0 0 13px;
  margin-top:6px;
  background:var(--bright-green);
}
.emission-sticker-v172 .v172-registration{
  width:315px;
  height:68px;
  padding:12px 5px 5px;
  overflow:hidden;
  border-bottom:5px solid var(--navy);
  color:var(--navy);
  font-size:62px;
  font-weight:900;
  line-height:.9;
  letter-spacing:8px;
  text-align:center;
  white-space:nowrap;
}
.emission-sticker-v172 .v172-valid-label{
  margin-top:9px;
  color:var(--navy);
  font-size:23px;
  font-weight:900;
  line-height:1;
}
.emission-sticker-v172 .v172-valid-date{
  margin-top:4px;
  color:var(--navy);
  font-size:29px;
  font-weight:900;
  line-height:1;
  letter-spacing:2px;
  white-space:nowrap;
}
.emission-sticker-v172 .v172-serial{
  position:absolute;
  z-index:8;
  left:0;
  right:0;
  bottom:60px;
  color:#fff;
  text-align:center;
  font-size:22px;
  font-weight:800;
  letter-spacing:7px;
  white-space:nowrap;
}
@media(max-width:900px){
  .emission-sticker-v172 .v172-ring-outer{inset:1.8%;border-width:1.6vw}
  .emission-sticker-v172 .v172-ring-white{inset:3.7%;border-width:1.2vw}
  .emission-sticker-v172 .v172-ring-inner{inset:5.8%;border-width:1.3vw}
  .emission-sticker-v172 .v172-top-title{top:9.8%;font-size:8.6vw;letter-spacing:2.8vw;padding-left:2.8vw}
  .emission-sticker-v172 .v172-bottom-title{bottom:10.8%;font-size:8vw;letter-spacing:2vw;padding-left:2vw}
  .emission-sticker-v172 .v172-logo-band{left:7.2%;right:7.2%;top:36%;height:17%}
  .emission-sticker-v172 .v172-side-logo{top:36.6%;width:19%;height:15.8%;padding:1.2%}
  .emission-sticker-v172 .v172-left-logo{left:8%}.emission-sticker-v172 .v172-right-logo{right:8%}
  .emission-sticker-v172 .v172-center-disc{width:43%;height:43%;border-width:1.1vw;box-shadow:0 0 0 .4vw var(--navy)}
  .emission-sticker-v172 .v172-qr{width:24.5vw;height:24.5vw;flex-basis:24.5vw;margin-top:2.7vw}
  .emission-sticker-v172 .v172-qr canvas,.emission-sticker-v172 .v172-qr img{width:24.5vw!important;height:24.5vw!important}
  .emission-sticker-v172 .v172-divider{height:1.3vw;flex-basis:1.3vw;margin-top:.6vw}
  .emission-sticker-v172 .v172-registration{width:31.5vw;height:6.8vw;padding:1.2vw .5vw .5vw;border-bottom-width:.5vw;font-size:6.2vw!important;letter-spacing:.8vw}
  .emission-sticker-v172 .v172-valid-label{margin-top:.9vw;font-size:2.3vw}
  .emission-sticker-v172 .v172-valid-date{margin-top:.4vw;font-size:2.9vw;letter-spacing:.2vw}
  .emission-sticker-v172 .v172-serial{bottom:6%;font-size:2.2vw;letter-spacing:.7vw}
}
@media print{
  .sticker-page-v172{padding:0;background:#fff}
  .sticker-page-v172 .sticker-toolbar,.sticker-page-v172 .sticker-help{display:none!important}
  .emission-sticker-v172{width:100mm!important;height:100mm!important;max-width:none!important;max-height:none!important;margin:0 auto!important}
  @page{size:100mm 100mm;margin:0}
}

/* ===== V17.2 RESPONSIVE DASHBOARD / STICKY NAVIGATION ===== */
@media(min-width:1001px){
  .app-shell{grid-template-columns:260px minmax(0,1fr)!important;overflow:visible!important}
  .sidebar{position:sticky!important;top:0!important;height:100vh!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .content{min-width:0!important;overflow:visible!important}
  .topbar{position:sticky!important;top:0!important;z-index:60!important;background:#fff!important}
  .responsive-records-wrap{position:relative!important;max-width:100%!important;overflow:auto!important}
  .responsive-records-table thead th{position:sticky!important;top:0!important;z-index:15!important;background:#f8faf9!important}
  .responsive-records-table th:last-child,
  .responsive-records-table td:last-child{position:sticky!important;right:0!important;z-index:12!important;background:#fff!important;box-shadow:-7px 0 10px rgba(0,0,0,.06)!important}
  .responsive-records-table thead th:last-child{z-index:20!important;background:#f8faf9!important}
}

/* ===== V17.2 THERMAL RECEIPT ===== */
.thermal-receipt .thermal-list>div{align-items:flex-start}

/* ===== V17.4 STABLE STICKER LAYOUT ===== */
.sticker-page-v174{
  margin:0;
  padding:24px;
  min-height:100vh;
  background:#eef1ef;
  font-family:Arial,Helvetica,sans-serif;
  box-sizing:border-box;
}
.sticker-page-v174 .sticker-toolbar{
  display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 18px;
}
.emission-sticker-v174{
  --green:#197c35;--bright-green:#2fbd55;--navy:#202665;
  position:relative;width:min(1000px,92vw);aspect-ratio:1/1;margin:0 auto;
  overflow:hidden;border-radius:50%;background:var(--green);color:#fff;
  box-sizing:border-box;isolation:isolate;
}
.emission-sticker-v174 *{box-sizing:border-box}
.emission-sticker-v174 .v174-ring{position:absolute;border-radius:50%;pointer-events:none}
.emission-sticker-v174 .v174-ring-outer{inset:1.8%;border:1.6cqw solid var(--green);box-shadow:inset 0 0 0 .5cqw rgba(255,255,255,.2)}
.emission-sticker-v174 .v174-ring-white{inset:3.7%;border:1.2cqw solid #fff}
.emission-sticker-v174 .v174-ring-inner{inset:5.8%;border:1.3cqw solid var(--bright-green)}
.emission-sticker-v174{container-type:inline-size}
.emission-sticker-v174 .v174-top-title,.emission-sticker-v174 .v174-bottom-title{
  position:absolute;z-index:8;left:12%;right:12%;text-align:center;color:#fff;
  font-weight:900;line-height:1;white-space:nowrap;
}
.emission-sticker-v174 .v174-top-title{top:9.6%;font-size:8.6cqw;letter-spacing:2.6cqw;padding-left:2.6cqw}
.emission-sticker-v174 .v174-bottom-title{bottom:10.6%;font-size:8cqw;letter-spacing:1.8cqw;padding-left:1.8cqw}
.emission-sticker-v174 .v174-logo-band{position:absolute;z-index:2;left:7.2%;right:7.2%;top:36%;height:17%;background:#fff}
.emission-sticker-v174 .v174-side-logo{
  position:absolute;z-index:6;top:36.7%;width:19%;height:15.6%;display:flex;
  align-items:center;justify-content:center;padding:1.2%;overflow:hidden;background:#fff;
}
.emission-sticker-v174 .v174-left-logo{left:8%}.emission-sticker-v174 .v174-right-logo{right:8%}
.emission-sticker-v174 .v174-side-logo img{display:block;width:100%;height:100%;object-fit:contain}
.emission-sticker-v174 .v174-center-disc{
  position:absolute;z-index:10;left:28.5%;top:28.5%;width:43%;height:43%;
  border:1.1cqw solid var(--bright-green);border-radius:50%;background:#fff;
  box-shadow:0 0 0 .4cqw var(--navy);color:var(--navy);overflow:hidden;
}
.emission-sticker-v174 .v174-qr{
  position:absolute;left:22%;top:6.5%;width:56%;height:56%;display:flex;
  align-items:center;justify-content:center;overflow:hidden;background:#fff;
}
.emission-sticker-v174 .v174-qr canvas,.emission-sticker-v174 .v174-qr img{
  display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
}
.emission-sticker-v174 .v174-divider{position:absolute;left:0;right:0;top:61%;height:3%;background:var(--bright-green)}
.emission-sticker-v174 .v174-registration{
  position:absolute;left:14%;top:65%;width:72%;height:14%;padding:1.2% 1% .5%;
  overflow:hidden;border-bottom:.5cqw solid var(--navy);color:var(--navy);
  font-size:5.4cqw;font-weight:900;line-height:1;letter-spacing:.65cqw;text-align:center;white-space:nowrap;
}
.emission-sticker-v174 .v174-valid-label{
  position:absolute;left:10%;right:10%;top:82%;color:var(--navy);font-size:2.15cqw;
  font-weight:900;line-height:1;text-align:center;
}
.emission-sticker-v174 .v174-valid-date{
  position:absolute;left:10%;right:10%;top:88%;color:var(--navy);font-size:2.8cqw;
  font-weight:900;line-height:1;text-align:center;letter-spacing:.18cqw;white-space:nowrap;
}
.emission-sticker-v174 .v174-serial{
  position:absolute;z-index:8;left:0;right:0;bottom:5.8%;color:#fff;text-align:center;
  font-size:2.2cqw;font-weight:800;letter-spacing:.65cqw;white-space:nowrap;
}
@media print{
  .sticker-page-v174{padding:0;background:#fff}
  .sticker-page-v174 .sticker-toolbar,.sticker-page-v174 .sticker-help{display:none!important}
  .emission-sticker-v174{width:100mm!important;height:100mm!important;max-width:none!important;margin:0 auto!important}
  @page{size:100mm 100mm;margin:0}
}

/* V19 consolidated responsive management and reporting */
.content{min-width:0}.topbar{position:sticky;top:0;z-index:80}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto}.records-table-wrapper{width:100%;overflow-x:auto;overscroll-behavior-x:contain}.records-table{min-width:1100px;border-collapse:separate;border-spacing:0}.records-table thead th{position:sticky;top:0;z-index:12;background:#f4f8f5}.records-table .sticky-action{position:sticky;right:0;z-index:16;background:#fff;box-shadow:-8px 0 12px rgba(0,0,0,.06)}.records-table thead .sticky-action{z-index:22;background:#f4f8f5}.user-management-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:22px;margin-bottom:22px}.user-create-card{margin:0}.access-note{padding:24px;align-self:start}.access-note h3{margin-top:0}.user-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.form-group-wide{grid-column:span 2}.switch-row{display:flex!important;align-items:center;gap:10px;min-height:44px}.switch-row input{width:auto}.table-card{overflow:visible}.table-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid #e6ece8}.table-card-head h3,.table-card-head p{margin:0}.compact-search{max-width:280px}.table-subtext{display:block;color:#718078;margin-top:4px}.role-badge,.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-weight:700;font-size:12px;text-transform:capitalize}.role-super_admin{background:#e9e8ff;color:#4d46a5}.role-admin{background:#e4f2ff;color:#16619d}.role-operator{background:#ecf8ef;color:#1f7337}.status-badge.active{background:#e3f7e8;color:#176b31}.status-badge.inactive{background:#fde8e8;color:#a52d2d}.inline-form{display:inline-flex;align-items:center;gap:6px;margin:3px}.reset-form input{width:130px;padding:8px}.btn-small{padding:8px 10px;font-size:12px}.protected-label{font-size:12px;color:#6f7b74;font-weight:700}.report-filter{padding:22px;margin-bottom:22px}.dual-camera-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:20px}.camera-box video,.camera-box img{width:100%;max-height:390px;object-fit:contain;background:#111;border-radius:12px}.camera-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.verification-panel{padding:18px;border:1px solid #dce7df;border-radius:12px;background:#f8fbf9}.verification-panel pre{white-space:pre-wrap;max-height:200px;overflow:auto;background:#fff;padding:12px;border-radius:8px;border:1px solid #e1e8e3}
@media(max-width:900px){.sidebar{position:fixed;left:-290px;width:280px;z-index:120;transition:left .2s}.sidebar.open{left:0}.content{width:100%}.user-management-grid,.dual-camera-grid{grid-template-columns:1fr}.user-stats{grid-template-columns:repeat(2,1fr)}.form-group-wide{grid-column:auto}.topbar{padding:14px}.page{padding:14px}.header-actions .user-pill{display:none}}
@media(max-width:560px){.user-stats{grid-template-columns:1fr}.table-card-head{align-items:stretch;flex-direction:column}.compact-search{max-width:none}.form-grid{grid-template-columns:1fr!important}.camera-actions .btn{width:100%}}

/* ===== V19.4 MOBILE-FIRST RESPONSIVE + STICKY TABLE COLUMNS ===== */
html,body{max-width:100%;overflow-x:hidden}
.app-shell,.content,.page,.card,.table-card{min-width:0;max-width:100%}
.mobile-menu-btn{display:none;border:0;background:#edf6f0;color:#07552d;width:44px;height:44px;border-radius:10px;font-size:23px;font-weight:800;cursor:pointer;flex:0 0 auto}
.sidebar-overlay{display:none}
.records-table-wrapper,.responsive-records-wrap{position:relative;width:100%;max-width:100%;overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.records-table,.responsive-records-table{width:max-content!important;min-width:1100px!important;border-collapse:separate!important;border-spacing:0!important}
.records-table th,.records-table td,.responsive-records-table th,.responsive-records-table td{white-space:nowrap}
.records-table thead th,.responsive-records-table thead th{position:sticky!important;top:0!important;z-index:20!important;background:#f4f8f5!important}
.records-table th:first-child,.records-table td:first-child,.responsive-records-table th:first-child,.responsive-records-table td:first-child{position:sticky!important;left:0!important;z-index:18!important;background:#fff!important;box-shadow:7px 0 12px rgba(0,0,0,.07)!important}
.records-table thead th:first-child,.responsive-records-table thead th:first-child{z-index:30!important;background:#f4f8f5!important}
.records-table th:last-child,.records-table td:last-child,.responsive-records-table th:last-child,.responsive-records-table td:last-child,.records-table .sticky-action{position:sticky!important;right:0!important;z-index:18!important;background:#fff!important;box-shadow:-7px 0 12px rgba(0,0,0,.07)!important}
.records-table thead th:last-child,.responsive-records-table thead th:last-child,.records-table thead .sticky-action{z-index:30!important;background:#f4f8f5!important}
.prefix-input{display:flex;align-items:stretch;width:100%;border:1px solid #cbd9d0;border-radius:10px;overflow:hidden;background:#fff}
.prefix-input:focus-within{border-color:#08733e;box-shadow:0 0 0 3px rgba(8,115,62,.12)}
.prefix-input span{display:flex;align-items:center;padding:0 14px;background:#eaf4ed;color:#07552d;font-weight:900;border-right:1px solid #cbd9d0;white-space:nowrap}
.prefix-input input{border:0!important;border-radius:0!important;box-shadow:none!important;flex:1;min-width:0}
.report-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.report-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.action-links{min-width:260px}
@media(max-width:1000px){
  .mobile-menu-btn{display:inline-grid;place-items:center}
  .sidebar{position:fixed!important;left:-290px!important;top:0!important;width:280px!important;height:100vh!important;z-index:200!important;transition:left .22s ease!important;overflow-y:auto!important}
  body.nav-open .sidebar{left:0!important}
  .sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:190;opacity:0;visibility:hidden;transition:.2s}
  body.nav-open .sidebar-overlay{opacity:1;visibility:visible}
  .content{width:100%!important;margin:0!important}
  .topbar{position:sticky!important;top:0!important;z-index:100!important;padding:10px 12px!important;gap:8px}
  .top-branding{min-width:0;gap:8px}.top-gov-logo{width:42px;height:42px}.top-branding-text h2{font-size:18px}.top-branding-text p{display:none}
  .header-actions .user-pill{display:none}.btn-danger-outline{padding:10px 12px!important}
  .page{padding:12px!important}
  .stats,.user-stats,.report-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
  .form-grid,.report-filter-grid,.dashboard-filters{grid-template-columns:1fr!important}
  .form-group,.form-group.full,.form-group-wide{grid-column:auto!important}
  .form-actions,.camera-actions{display:flex;flex-direction:column;align-items:stretch!important;gap:10px}
  .form-actions .btn,.camera-actions .btn{width:100%}
  input,select,textarea,button,.btn{font-size:16px;min-height:44px}
  .records-table,.responsive-records-table{display:table!important;min-width:1050px!important}
  .records-table thead,.responsive-records-table thead{display:table-header-group!important}
  .records-table tbody,.responsive-records-table tbody{display:table-row-group!important}
  .records-table tr,.responsive-records-table tr{display:table-row!important;border:0!important;padding:0!important}
  .records-table td,.responsive-records-table td{display:table-cell!important;width:auto!important;padding:12px 14px!important;border-bottom:1px solid #e1e8e3!important;text-align:left!important}
  .records-table td::before,.responsive-records-table td::before{display:none!important}
  .responsive-records-table td:last-child{display:table-cell!important;width:auto!important;margin:0!important;border:0!important;border-bottom:1px solid #e1e8e3!important}
  .responsive-records-table td:last-child a{display:inline!important;margin:0!important}
}
@media(max-width:560px){
  .stats,.user-stats,.report-stats{grid-template-columns:1fr!important}
  .top-gov-logo{display:none}.top-branding-text h2{font-size:16px}
  .records-table,.responsive-records-table{min-width:980px!important}
  .card-header,.section,.report-filter,.table-card-head{padding-left:14px!important;padding-right:14px!important}
}


/* V19.6 invoice record view/print and mobile card fix */
.mobile-invoice-cards{display:none}
.responsive-records-wrap{position:relative;max-width:100%;overflow-x:auto!important;overflow-y:visible!important}
.responsive-records-table th:first-child,
.responsive-records-table td:first-child{position:sticky;left:0;z-index:22;background:#fff;box-shadow:5px 0 10px rgba(7,85,45,.08)}
.responsive-records-table th:last-child,
.responsive-records-table td:last-child{position:sticky;right:0;z-index:22;background:#fff;box-shadow:-5px 0 10px rgba(7,85,45,.08)}
.responsive-records-table thead th{position:sticky;top:0;z-index:25;background:#f8faf9}
.responsive-records-table thead th:first-child,
.responsive-records-table thead th:last-child{z-index:35;background:#f8faf9}
.mobile-delete-form{margin:0}
@media(max-width:760px){
  .desktop-records-only{display:none!important}
  .mobile-invoice-cards{display:grid;gap:14px;padding:0 14px 16px}
  .mobile-invoice-card{background:#fff;border:1px solid #d7e3dc;border-radius:16px;overflow:hidden;box-shadow:0 7px 20px rgba(7,85,45,.07)}
  .mobile-invoice-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 16px 12px;background:#f8fbf9;border-bottom:1px solid #e3ebe6}
  .mobile-invoice-head small,.mobile-invoice-grid small{display:block;color:#68786f;font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.4px;margin-bottom:4px}
  .mobile-invoice-head h4{margin:0;color:#07552d;font-size:18px;overflow-wrap:anywhere}
  .mobile-invoice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}
  .mobile-invoice-grid>div{min-width:0;padding-bottom:10px;border-bottom:1px solid #edf2ef}
  .mobile-invoice-grid b{display:block;overflow-wrap:anywhere}
  .mobile-invoice-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 16px}
  .mobile-invoice-actions .btn,.mobile-invoice-actions form,.mobile-invoice-actions form .btn{width:100%;margin:0;text-align:center;justify-content:center;min-height:46px}
  .mobile-empty{margin:0}
}
@media(max-width:430px){
  .mobile-invoice-grid,.mobile-invoice-actions{grid-template-columns:1fr}
  .card-header{align-items:flex-start}
  .card-header .btn{width:auto;max-width:48%}
}


/* V19.7 definitive mobile invoice records layout */
html,body{width:100%;max-width:100%;overflow-x:hidden}
.dashboard-panel{min-width:0;overflow:hidden}
.desktop-records-only{display:block}
.mobile-invoice-cards{display:none}
@media (max-width:900px){
  .desktop-records-only{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important}
  .desktop-records-only table{display:none!important}
  .mobile-invoice-cards{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;width:100%!important;max-width:100%!important;padding:14px!important;box-sizing:border-box!important;overflow:hidden!important}
  .mobile-invoice-card{width:100%!important;max-width:100%!important;min-width:0!important;background:#fff;border:1px solid #d9e5de;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(7,85,45,.08)}
  .mobile-invoice-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important;padding:16px!important;background:#f7fbf8;border-bottom:1px solid #e2ebe5}
  .mobile-invoice-head>div{min-width:0}
  .mobile-invoice-head h4{margin:2px 0 0!important;font-size:18px!important;line-height:1.25!important;color:#063f24!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  .mobile-invoice-head small,.mobile-invoice-grid small{display:block!important;margin:0 0 5px!important;color:#6d7d74!important;font-size:11px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.5px!important;text-transform:uppercase!important}
  .mobile-invoice-head .status{white-space:nowrap!important;align-self:start!important}
  .mobile-invoice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;padding:0 16px!important}
  .mobile-invoice-grid>div{min-width:0!important;padding:13px 8px 13px 0!important;border-bottom:1px solid #edf2ef!important}
  .mobile-invoice-grid>div:nth-child(even){padding-left:10px!important;padding-right:0!important;border-left:1px solid #edf2ef!important}
  .mobile-invoice-grid b{display:block!important;font-size:15px!important;line-height:1.35!important;color:#17221c!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  .mobile-invoice-grid .status{display:inline-flex!important;max-width:100%!important}
  .mobile-invoice-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:16px!important;background:#fbfdfc!important}
  .mobile-invoice-actions>a,.mobile-invoice-actions>form,.mobile-invoice-actions>form>button{min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important}
  .mobile-invoice-actions .btn{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:10px 8px!important;font-size:14px!important;line-height:1.2!important;white-space:normal!important;text-align:center!important;border-radius:11px!important}
  .mobile-delete-form{grid-column:1/-1!important}
  .mobile-delete-form .btn{min-height:46px!important}
  .dashboard-panel>.card-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:start!important}
  .dashboard-panel>.card-header .btn{width:auto!important;max-width:155px!important;min-height:48px!important;padding:10px 14px!important;white-space:normal!important;text-align:center!important}
  .dashboard-filters{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .dashboard-filters>*{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
}
@media (max-width:480px){
  .mobile-invoice-grid{grid-template-columns:1fr!important}
  .mobile-invoice-grid>div,.mobile-invoice-grid>div:nth-child(even){padding:12px 0!important;border-left:0!important}
  .mobile-invoice-actions{grid-template-columns:1fr!important}
  .mobile-delete-form{grid-column:auto!important}
  .dashboard-panel>.card-header{grid-template-columns:1fr!important}
  .dashboard-panel>.card-header .btn{width:100%!important;max-width:none!important}
}


/* V19.8 compact mobile dashboard and desktop-only reports/export */
@media (max-width:900px){
  .desktop-report-nav{display:none!important}
  .desktop-report-page{display:none!important}
  .stats:not(.report-stats){
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    margin-bottom:14px!important;
  }
  .stats:not(.report-stats) .stat{
    min-height:78px!important;
    padding:10px 5px!important;
    border-radius:14px!important;
    text-align:center!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .stats:not(.report-stats) .stat b{
    font-size:24px!important;
    line-height:1!important;
    margin-bottom:6px!important;
  }
  .stats:not(.report-stats) .stat span{
    font-size:10px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
}
@media (max-width:430px){
  .stats:not(.report-stats){gap:4px!important}
  .stats:not(.report-stats) .stat{min-height:70px!important;padding:8px 3px!important}
  .stats:not(.report-stats) .stat b{font-size:21px!important}
  .stats:not(.report-stats) .stat span{font-size:8.5px!important}
}
@media (min-width:901px){
  .desktop-export-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important}
}


/* V20 Professional responsive refinements */
.dashboard-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
@media (min-width:901px){
  .desktop-report-nav{display:flex!important}
  .desktop-report-page{display:block!important}
}
@media (max-width:900px){
  .desktop-report-nav,.desktop-report-page,.desktop-report-cta{display:none!important}
  .stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  .stats .stat{min-height:76px!important;padding:9px 4px!important;text-align:center!important}
  .stats .stat b{font-size:23px!important;line-height:1!important}
  .stats .stat span{font-size:9px!important;line-height:1.1!important}
  .dashboard-header-actions{width:100%;display:grid;grid-template-columns:1fr}
  .dashboard-header-actions .btn{width:100%!important;max-width:none!important}
}
@media (max-width:420px){
  .stats{gap:4px!important}
  .stats .stat{min-height:68px!important;padding:7px 2px!important}
  .stats .stat b{font-size:20px!important}
  .stats .stat span{font-size:8px!important}
}

/* V20.1 Daily working report for every user */
.daily-report-cards{display:none}
.report-actions{display:flex;gap:10px;flex-wrap:wrap}
.report-actions .btn{min-width:145px}
@media(max-width:900px){
  .daily-report-page{display:block!important;padding:12px!important}
  .daily-report-page .report-filter{padding:14px!important}
  .daily-report-page .report-filter-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .daily-report-page .report-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .daily-report-page .report-actions .btn{width:100%!important;min-width:0!important;min-height:44px!important;padding:9px 6px!important;font-size:13px!important}
  .daily-report-page .report-stats{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important}
  .daily-report-page .report-stats .stat{min-height:70px!important;padding:8px 3px!important}
  .daily-report-page .report-stats .stat b{font-size:17px!important;overflow-wrap:anywhere!important}
  .daily-report-page .report-stats .stat span{font-size:8px!important}
  .desktop-report-table{display:none!important}
  .daily-report-cards{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:12px!important}
  .daily-report-card{background:#fff;border:1px solid #d9e5de;border-radius:16px;overflow:hidden;box-shadow:0 7px 20px rgba(7,85,45,.07)}
  .daily-report-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px;background:#f7fbf8;border-bottom:1px solid #e3ebe6}
  .daily-report-card-head small,.daily-report-card-grid small{display:block;color:#68786f;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.35px;margin-bottom:4px}
  .daily-report-card-head b{display:block;color:#07552d;font-size:15px;overflow-wrap:anywhere}
  .daily-report-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 14px}
  .daily-report-card-grid>div{min-width:0;padding:11px 8px 11px 0;border-bottom:1px solid #edf2ef}
  .daily-report-card-grid>div:nth-child(even){padding-left:8px;padding-right:0;border-left:1px solid #edf2ef}
  .daily-report-card-grid b{display:block;font-size:13px;line-height:1.3;overflow-wrap:anywhere}
}
@media(max-width:430px){
  .daily-report-page .report-filter-grid{grid-template-columns:1fr!important}
  .daily-report-page .report-actions{grid-template-columns:1fr 1fr!important}
  .daily-report-page .report-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .daily-report-page .report-stats .stat b{font-size:14px!important}
  .daily-report-page .report-stats .stat span{font-size:7px!important}
}
@media print{
  .sidebar,.topbar,.report-filter,.daily-report-cards{display:none!important}
  .desktop-report-table{display:block!important}
  .daily-report-page{padding:0!important}
}


/* ===== V20.2 MOBILE DRAWER + ROLE-SAFE NAVIGATION ===== */
@media (max-width:1000px){
  .sidebar{
    display:block!important;
    visibility:visible!important;
    transform:none!important;
  }
  body:not(.nav-open) .sidebar{left:-290px!important}
  body.nav-open .sidebar{left:0!important}
  .mobile-menu-btn{display:inline-grid!important;place-items:center!important;position:relative;z-index:210}
  .sidebar-overlay{display:block!important}
}
@media (min-width:1001px){
  .sidebar{display:block!important}
  .sidebar-overlay{display:none!important}
}
