/* NomadCue — "Boarding Pass" motif utilities.
   Travel-ticket geometry for plan/provider cards: perforations, punched
   notches, barcode strips, rotated stamp badges, and mono numerics. */

.ticket-card {
  position: relative;
  background: var(--color-card);
  border: 1px solid var(--color-border);
  border-radius: 0.875rem;
  box-shadow: 0 1px 3px rgba(124, 45, 18, .05), 0 1px 2px rgba(124, 45, 18, .04);
  transition: box-shadow 150ms ease, transform 150ms ease;
}
.ticket-card:hover {
  box-shadow: 0 6px 16px rgba(124, 45, 18, .10), 0 2px 6px rgba(124, 45, 18, .06);
  transform: translateY(-2px);
}

/* dashed "tear here" perforation divider */
.ticket-perf {
  border: none;
  border-top: 2px dashed var(--color-border);
  margin: 0;
}

/* punched notches on the left/right edges of a row */
.ticket-notch { position: relative; }
.ticket-notch::before,
.ticket-notch::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 16px;
  height: 16px;
  background: var(--color-page);
  border: 1px solid var(--color-border);
  border-radius: 9999px;
  transform: translateY(-50%);
}
.ticket-notch::before { left: -9px; }
.ticket-notch::after  { right: -9px; }

/* decorative barcode strip */
.ticket-barcode {
  height: 2.25rem;
  background-image: repeating-linear-gradient(90deg,
    var(--color-body) 0, var(--color-body) 2px, transparent 2px, transparent 4px,
    var(--color-body) 4px, var(--color-body) 5px, transparent 5px, transparent 8px);
  opacity: .85;
  border-radius: 2px;
}

/* rotated "stamp" badge (sponsored / best-value) */
.stamp {
  display: inline-block;
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: .7rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-cta);
  border: 2px solid var(--color-cta);
  border-radius: .375rem;
  padding: .2rem .5rem;
  transform: rotate(-3deg);
  background: var(--color-cta-bg);
}

/* mono numerics — price-per-GB, data amount, validity (departures board) */
.ticket-num {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  letter-spacing: -.01em;
}
