/* IVA 4.1.19 — simplified consultation booking + booking payment/invoice */
body.ivc-public-v300 .ivc429-progress{grid-template-columns:repeat(5,1fr)}
body.ivc-public-v300 .ivc429-session-options{grid-template-columns:repeat(2,minmax(0,1fr))}
body.ivc-public-v300 .ivc429-session-options .ivc-booking-service-option span{min-height:130px;display:flex;flex-direction:column;justify-content:center;gap:8px}
body.ivc-public-v300 .ivc429-session-options small{color:#687b78;font-weight:700}
body.ivc-public-v300 .ivc429-select-row{display:grid;grid-template-columns:minmax(260px,420px);gap:14px}
body.ivc-public-v300 .ivc429-select-row label{display:grid;gap:8px;font-weight:800;color:#173f3d}
body.ivc-public-v300 .ivc429-select-row select{min-height:50px;border:1px solid #d9d2c8;border-radius:12px;background:#fff;padding:0 14px;font:inherit;color:#173f3d}
body.ivc-public-v300 .ivc429-payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.ivc-public-v300 .ivc429-payment-options label{position:relative;cursor:pointer}
body.ivc-public-v300 .ivc429-payment-options label>input{position:absolute;opacity:0;pointer-events:none}
body.ivc-public-v300 .ivc429-payment-options label>span,body.ivc-public-v300 .ivc429-payment-options label:not(:has(>span)){min-height:88px}
body.ivc-public-v300 .ivc429-payment-options label>span{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #ddd6cc;border-radius:16px;background:#fff;transition:.2s ease}
body.ivc-public-v300 .ivc429-payment-options label>span img{width:68px;height:34px;object-fit:contain}
body.ivc-public-v300 .ivc429-payment-options label>span b{font-size:14px;color:#173f3d}
body.ivc-public-v300 .ivc429-payment-options label:has(input:checked)>span{border-color:#c56c49;box-shadow:0 0 0 3px rgba(197,108,73,.12);background:#fffaf6}
body.ivc-public-v300 .ivc429-payment-options label[data-pay-later-option]{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 12px;padding:15px;border:1px solid #ddd6cc;border-radius:16px;background:#fff;transition:.2s ease}
body.ivc-public-v300 .ivc429-payment-options label[data-pay-later-option][hidden]{display:none!important}
body.ivc-public-v300 .ivc429-payment-options label[data-pay-later-option]:has(input:checked){border-color:#173f3d;box-shadow:0 0 0 3px rgba(23,63,61,.10);background:#f4f8f7}
body.ivc-public-v300 .ivc429-payment-options label[data-pay-later-option] b{color:#173f3d}
body.ivc-public-v300 .ivc429-payment-options label[data-pay-later-option] small{grid-column:2;color:#697775;line-height:1.6}
body.ivc-public-v300 .ivc429-pay-later-icon{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#f0e9de;font-size:20px}
body.ivc-public-v300 .ivc429-total{margin-top:15px;padding:15px 18px;border-radius:14px;background:#173f3d;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}
body.ivc-public-v300 .ivc429-total strong{font-size:21px}
body.ivc-public-v300 .ivc429-booking-result{padding:48px 0 70px}
body.ivc-public-v300 .ivc429-booking-result .ivc-result-card.pending{background:#fff8ed;border-color:#ead7ba}
body.ivc-public-v300 .ivc429-result-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;margin:0 auto 14px;background:#173f3d;color:#fff;font-size:26px}
body.ivc-public-v300 .ivc429-booking-invoice{max-width:900px;margin:24px auto 0;padding:28px;border:1px solid #ddd6cc;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(23,49,50,.07)}
body.ivc-public-v300 .ivc429-booking-invoice>header{display:flex;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid #e7e1d8}
body.ivc-public-v300 .ivc429-booking-invoice header small{display:block;color:#687775;margin-bottom:6px}
body.ivc-public-v300 .ivc429-booking-invoice h2{margin:0;color:#173f3d}
body.ivc-public-v300 .ivc429-invoice-number{text-align:end}.ivc429-invoice-number span{display:block;font-size:12px;color:#7c8582}.ivc429-invoice-number b{display:block;margin-top:4px;color:#173f3d}
body.ivc-public-v300 .ivc429-invoice-status{display:inline-flex;margin:18px 0;padding:7px 12px;border-radius:999px;font-weight:900;font-size:12px}.ivc429-invoice-status.is-paid{background:#e8f5ef;color:#155a3f}.ivc429-invoice-status.is-pending{background:#fff0d8;color:#8a5b16}
body.ivc-public-v300 .ivc429-booking-invoice dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.ivc429-booking-invoice dl>div{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid #eee9e1}.ivc429-booking-invoice dt{color:#73807d}.ivc429-booking-invoice dd{margin:0;font-weight:800;color:#173f3d}
body.ivc-public-v300 .ivc429-invoice-total{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding:18px;border-radius:14px;background:#173f3d;color:#fff}.ivc429-invoice-total strong{font-size:24px}
body.ivc-public-v300 .ivc429-paid-ref{display:flex;justify-content:space-between;gap:20px;margin-top:14px;padding:12px 0;color:#5f6e6b;font-size:12px;word-break:break-all}
body.ivc-public-v300 .ivc429-result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px auto 0}
@media(max-width:760px){body.ivc-public-v300 .ivc429-progress{grid-template-columns:repeat(5,minmax(84px,1fr));overflow:auto}body.ivc-public-v300 .ivc429-session-options,body.ivc-public-v300 .ivc429-payment-options{grid-template-columns:1fr}body.ivc-public-v300 .ivc429-booking-invoice{padding:18px}body.ivc-public-v300 .ivc429-booking-invoice>header{display:grid}body.ivc-public-v300 .ivc429-invoice-number{text-align:start}body.ivc-public-v300 .ivc429-booking-invoice dl{grid-template-columns:1fr}}
@media print{body.ivc-public-v300 .ivc-v3-header,body.ivc-public-v300 .ivc-v3-footer,body.ivc-public-v300 .ivc429-booking-result>.container>.alert,body.ivc-public-v300 .ivc429-result-actions,body.ivc-public-v300 .ivc-result-card{display:none!important}body.ivc-public-v300 .ivc429-booking-result{padding:0}body.ivc-public-v300 .ivc429-booking-invoice{box-shadow:none;border:0;max-width:none;margin:0;padding:0}}
