/* Colour tokens — override to re-skin the effect:
   --ink    main text colour (defaults to currentColor)
   --ink-2  primary accent   --ink-3  secondary accent */
:root { --ink: currentColor; --ink-2: #FF4FD8; --ink-3: #4FF8FF; }

/* 66 Rubber-Stamp — the word slams down like an ink stamp, then fades off the page */
.fx-stamp {
  font: 600 26px/1 "JetBrains Mono", monospace;
  letter-spacing: .14em;
  color: var(--ink-2);
  padding: .38em .5em;
  border: 3px solid var(--ink-2);
  border-radius: 8px;
  box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--ink-2) 55%, transparent);
  animation: fx-stamp 3.2s cubic-bezier(.22, 1.4, .36, 1) infinite;
}
@keyframes fx-stamp {
  0%, 6%    { transform: rotate(-6deg) scale(2.4); opacity: 0; filter: blur(4px); }
  14%       { transform: rotate(-6deg) scale(.96); opacity: 1; filter: blur(0); }
  18%       { transform: rotate(-6deg) scale(1.04); }
  22%, 78%  { transform: rotate(-6deg) scale(1); opacity: 1; filter: blur(0); }
  94%, 100% { transform: rotate(-6deg) scale(1); opacity: 0; filter: blur(.6px); }
}

/* Intrinsic size and the resting frame also support any replacement word. */
.fx-stamp {
  display: inline-block;
  white-space: nowrap;
  transform: rotate(-6deg) scale(1);
  opacity: 1;
  filter: blur(0);
}

/* Keep the stamp's impact clear of the invoice amounts. The exact stamp
   markup stays inside a layout wrapper instead of inheriting image rules. */
#invoiceBox .veora-invoice-v186 .veora-summary-card--paid-stamp,
.portal-invoice .veora-invoice-v186 .veora-summary-card--paid-stamp,
.pdf-export-document .veora-invoice-v186 .veora-summary-card--paid-stamp,
.pdf-export-document.veora-invoice-v186 .veora-summary-card--paid-stamp {
  grid-template-columns: minmax(0, 1fr) !important;
}
.veora-paid-stamp-slot {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 130px;
  padding: 8px;
}

@media (prefers-reduced-motion: reduce) {
  .fx-stamp {
    animation: none !important;
    transform: rotate(-6deg) scale(1) !important;
    opacity: 1 !important;
    filter: none !important;
  }
}

/* html2pdf captures a DOM clone rather than print media. Always capture a
   visible resting stamp and omit color-mix, which html2canvas cannot parse. */
.pdf-export-document .fx-stamp,
[data-veora-pdf-export] .fx-stamp {
  animation: none !important;
  transform: rotate(-6deg) scale(1) !important;
  opacity: 1 !important;
  filter: none !important;
  box-shadow: none !important;
}
.pdf-export-document .veora-paid-stamp-slot,
[data-veora-pdf-export] .veora-paid-stamp-slot { min-height: 72px; }

@media print {
  .fx-stamp {
    animation: none !important;
    transform: rotate(-6deg) scale(1) !important;
    opacity: 1 !important;
    filter: none !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  .veora-paid-stamp-slot { min-height: 72px; }
}
