/* Revision 2 (CVS feedback): voucher number + booking ref, provider instructions, check-in steps */
.voucher-card .booking-ref { font: 500 11px var(--font-sans); color: var(--slate-500); margin-top: 6px; }
.voucher-card .booking-ref strong { color: var(--mw-ink); font-family: var(--font-mono); letter-spacing: .04em; }
.voucher-card .provider-box { margin-top: 14px; padding: 11px 13px; border-radius: 10px; background: #fff; border: 1px dashed var(--border-default); font: 400 11px/1.55 var(--font-sans); color: var(--slate-600); }
.voucher-card .provider-box .label { font: 700 8.5px var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--slate-400); margin-bottom: 6px; }
.voucher-card .provider-box .pv-line + .pv-line { margin-top: 4px; }
.checkin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.checkin-grid .before-go { margin-top: 0; }
.before-go .item .num { width: 18px; height: 18px; flex: none; border-radius: 50%; background: var(--mw-red-1); color: #fff; font: 700 10px/18px var(--font-sans); text-align: center; }
@media (max-width: 900px) { .checkin-grid { grid-template-columns: 1fr; } }
@media print { .site-footer, .console-topbar, .hero-banner, #railRoot, .voucher-actions, .step-footer .btn { display: none !important; } }

/* Revision 2b: price breakdown groups + patient share */
.price-group { margin-top: 10px; }
.price-group .pg-head { display: flex; justify-content: space-between; font: 700 11px var(--font-sans); color: var(--mw-ink); padding: 4px 0 2px; border-bottom: 1px solid var(--border-hairline); margin-bottom: 2px; }
.price-group .estimate-line { padding-left: 10px; }
.estimate-card .split, .coverage-card .split { margin-top: 8px; display: grid; gap: 2px; }
.muted { color: var(--slate-400); font-weight: 400; }
.fee-tiles.two { grid-template-columns: repeat(2, 1fr); }
.share-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-top: 12px; padding: 13px 16px; border: 1px solid var(--border-default); border-radius: 12px; background: var(--slate-50); font: 400 12px/1.5 var(--font-sans); }
.share-row .seg { display: inline-flex; border: 1px solid var(--border-default); border-radius: 999px; overflow: hidden; background: #fff; }
.share-row .seg span { padding: 6px 14px; cursor: pointer; font: 600 12px var(--font-sans); color: var(--slate-500); }
.share-row .seg span.on { background: var(--gradient-brand-135); color: #fff; }
.share-row .share-amt { display: inline-flex; align-items: center; gap: 6px; font: 600 12px var(--font-sans); color: var(--mw-grey-dark); }
.share-row .share-amt input { width: 90px; padding: 7px 9px; border: 1px solid var(--border-default); border-radius: 8px; font: 600 13px var(--font-sans); }
