/* contrast.css: loaded last. Fixes washed or invisible text found by the pixel audit (WCAG AA). */
/* Rider: secondary buttons sit on light glass, so text must be dark */
body:not(.driver-app) .secondary-cta,body:not(.driver-app) .os-decline{color:#10243a!important}
body:not(.driver-app) .secondary-cta.compact,body:not(.driver-app) #receiptSend,body:not(.driver-app) #riderPaid,body:not(.driver-app) #addStopRide,body:not(.driver-app) #shareRide{color:#10243a!important}
.add-stop{color:#0b4bb3!important}
/* Round badges that glass.css turned light */
.arrived-icon,.td-check{background:#0a8f55!important;color:#fff!important;border:0!important;box-shadow:0 4px 12px rgba(10,143,85,.35)!important;-webkit-text-fill-color:#fff}
.driver-avatar{background:#10243a!important;color:#fff!important;-webkit-text-fill-color:#fff}
/* Small captions */
#sourceLabel{color:#10243a!important;background:rgba(255,255,255,.92)!important;padding:2px 8px;border-radius:999px;font-weight:700}
.vehicle small,.option small,.ride-option small,.quote-card small,small{--cap:#475467}
.ride-sheet small,.quote-list small,.fare-options small,.vehicle-grid small{color:#475467}
.rating-star{color:#7a8798}
.rating-star.on,.rating-star.active,.rating-star[aria-pressed="true"]{color:#b86e00}
/* Placeholders on light fields */
input::placeholder,textarea::placeholder{color:#5b6b80!important;opacity:1}
.driver-app .glass-card input::placeholder,.driver-app .auth-card input::placeholder{color:#8aa0b8!important}
.driver-app .auth-card input::placeholder{color:#5b6b80!important}
/* Driver */
.driver-app .primary-cta:disabled{filter:none!important;opacity:1!important;background:#5a5346!important;color:#fff!important;-webkit-text-fill-color:#fff;box-shadow:none!important}
.driver-app label span,.driver-app .change-types span{color:#d5deeb}
.mini-topbar{background:rgba(9,18,32,.88)!important;backdrop-filter:blur(16px)}
.mini-topbar small{color:#cfd9e8!important}
/* Receipt and trip summary party block */
.rcpt-party,.ts-party{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line,#d0d5dd);border-radius:12px;background:#f7f9fc;color:#10243a;font-size:13px;font-weight:700}
.rcpt-party .rcpt-id,.ts-party .rcpt-id,#rcptRiderId,#tsRiderId{font:600 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:#475467;letter-spacing:.02em}
.driver-app .ts-party,.ts-party{background:#f7f9fc!important;border:1px solid #d0d5dd!important;color:#101828!important}
.ts-party #tsRider,.ts-party strong,.ts-party span{color:#101828!important}
.ts-party #tsRiderId{color:#475467!important}
.vx-steps li.done i,.ts-check{background:#0a8f55!important;color:#fff!important}
#requestButton:disabled,.primary-cta:disabled{filter:none!important;opacity:1!important;background:#c9ced6!important;color:#3a4350!important;-webkit-text-fill-color:#3a4350;box-shadow:none!important}
.driver-meta .car-line{color:#1d2939!important}
.post-trip-money small,.post-trip-experience small{color:#475467!important}
.driver-app .post-trip-money small{color:#cfd9e8!important}
/* Typed PIN digits were white on a light field. White field, black digits. */
.trip-pin input,#tripPin,.rs-pin input,.driver-app .trip-pin input{background:#fff!important;color:#0b1b2b!important;-webkit-text-fill-color:#0b1b2b!important;caret-color:#0b1b2b;border-color:#98a2b3!important}
.trip-pin input::placeholder{color:#5b6b80!important;-webkit-text-fill-color:#5b6b80;opacity:1}
/* Driver receipt after a trip: white card, black text */
.driver-app .completed-trip-panel{background:#fff!important;color:#101828!important;border:1px solid #d0d5dd;border-radius:22px;padding:16px}
.driver-app .completed-trip-panel .eyebrow{color:#9a5b00!important}
.driver-app .completed-trip-panel h3,.driver-app .completed-trip-panel strong,.driver-app .completed-trip-panel b{color:#101828!important}
.driver-app .completed-trip-panel p,.driver-app .completed-trip-panel small,.driver-app .completed-trip-panel span,.driver-app .completed-trip-panel div,.driver-app .completed-trip-panel .form-status{color:#344054!important}
.driver-app .completed-trip-panel .job-card{background:#f7f9fc!important;border:1px solid #d0d5dd;color:#101828!important}
.driver-app .completed-trip-panel .trip-stage-chip{background:#fff1d6!important;color:#7a4a00!important}
.driver-app .completed-trip-panel #driverPaymentIssue,.driver-app .completed-trip-panel .secondary-cta{background:#fff!important;color:#b42318!important;-webkit-text-fill-color:#b42318;border:1.5px solid #f04438!important}
.driver-app .completed-trip-panel .primary-cta{color:#1a1204!important;-webkit-text-fill-color:#1a1204}
/* Driver documents: expiry card and upload rows, black on white */
.driver-app .doc-expiry{background:#fff!important;border:2px solid #f79009!important}
.driver-app .doc-expiry,.driver-app .doc-expiry span,.driver-app .doc-expiry-title,.driver-app .doc-expiry-help{color:#101828!important}
.driver-app .doc-expiry-help{color:#475467!important}
.driver-app .doc-expiry input{background:#fff!important;color:#101828!important;-webkit-text-fill-color:#101828;border:1px solid #98a2b3!important}
.driver-app .doc-upload select,.driver-app .doc-upload input[type=file]{background:#fff!important;color:#101828!important;-webkit-text-fill-color:#101828}
.driver-app .doc-row,.driver-app .doc-row strong{color:#101828!important}.driver-app .doc-row small{color:#475467!important}
.doc-status.approved{color:#067647!important}.doc-status.pending{color:#7a4a00!important}.doc-status.rejected{color:#b42318!important}
/* Rider and Arrivo ID rows: label on the left, value on the right, never run together */
.rcpt-party>div,.ts-party>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;text-align:left}
.rcpt-party small,.ts-party small{color:#475467!important;font-weight:600;font-size:12px}
.rcpt-party b,.ts-party b{color:#101828!important;text-align:right;overflow-wrap:anywhere}
