
.to-ride-status,.to-driver-ride,.to-platform-fee{max-width:900px;margin:35px auto;padding:30px;background:#0a0b0c;color:#fff;border-radius:22px}
.to-ride-status-head span,.to-driver-ride-kicker,.to-fee-head span{color:#ffd000;font-size:11px;font-weight:900;letter-spacing:.15em}
.to-ride-title,.to-driver-ride h2,.to-fee-head h2{font-size:32px;margin:8px 0}
.to-ride-status p,.to-driver-ride p,.to-platform-fee p{color:#a5a8ad;line-height:1.5}
.to-ride-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin-top:24px}
.to-ride-route,.to-driver-box,.to-driver-fare,.to-driver-route,.to-driver-fee,.to-fee-note{border:1px solid #2d3034;background:#121416;border-radius:15px;padding:18px}
.to-ride-route{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center;gap:10px}
.to-ride-route small,.to-driver-route small,.to-driver-fare small,.to-driver-fee small,.to-driver-box small{display:block;color:#858990;font-size:10px;margin-bottom:7px;letter-spacing:.08em}
.to-ride-route strong,.to-driver-route strong{display:block;font-size:16px}
.to-arrow{color:#ffd000;text-align:center;font-size:22px}
.to-driver-box strong{display:block;font-size:19px;margin-bottom:6px}.to-driver-box span,.to-driver-box em{display:block;color:#aaa;font-size:13px;font-style:normal}
.to-ride-progress{display:flex;justify-content:space-between;gap:8px;margin-top:28px;position:relative}
.to-ride-progress:before{content:"";position:absolute;left:4%;right:4%;top:16px;height:1px;background:#383b3f}
.to-progress-step{position:relative;z-index:1;text-align:center;flex:1;color:#777}
.to-progress-step i{display:grid;place-items:center;margin:auto;width:32px;height:32px;border-radius:50%;background:#202326;border:1px solid #45484d;font-style:normal;font-size:12px}
.to-progress-step.done{color:#fff}.to-progress-step.done i{background:#ffd000;color:#090a0b;border-color:#ffd000}
.to-driver-fare{margin:20px 0}.to-driver-fare strong{font-size:36px;display:block;color:#ffd000}
.to-driver-route{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}
.to-driver-fee{border-color:#51470d}.to-driver-fee strong{font-size:28px;display:block;color:#ffd000}.to-driver-fee b{color:#ffd000}
.to-driver-next-status,.to-pay-fee{width:100%;border:0;border-radius:10px;background:#ffd000;color:#090a0b;padding:15px;font-weight:900;cursor:pointer;margin-top:15px}
.to-driver-status-message,.to-fee-message{min-height:22px;text-align:center;color:#ffd000;margin-top:10px}
.to-platform-fee{max-width:560px}.to-fee-amount{font-size:48px;font-weight:900;color:#ffd000;margin:18px 0}
.to-fee-note{margin-bottom:16px}.to-fee-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.to-fee-method{background:#151719;border:1px solid #33373a;color:#fff;border-radius:9px;padding:13px;font-weight:800;cursor:pointer}
.to-fee-method.active{border-color:#ffd000;box-shadow:0 0 0 1px #ffd000 inset}
.to-fee-method-panel{margin-top:12px;border:1px solid #2e3134;border-radius:12px;padding:20px;text-align:center}
.to-fee-qr{width:145px;height:145px;background:#fff;color:#111;margin:auto;display:grid;place-items:center;font-weight:900;letter-spacing:.1em}
.to-fee-card{padding:25px;color:#aaa}.to-fee-paid{padding:18px;border:1px solid #345a3c;border-radius:12px;color:#8fe0a1;margin-top:20px}
@media(max-width:700px){.to-ride-grid,.to-ride-route,.to-driver-route{grid-template-columns:1fr}.to-arrow{display:none}.to-ride-progress{overflow:auto}.to-progress-step{min-width:85px}}

.to-driver-rides{max-width:1200px;margin:28px auto;padding:0 30px 10px}
.to-my-rides-list{display:grid;gap:10px}
.to-my-ride-card{display:grid;grid-template-columns:80px minmax(0,1fr) 170px 130px;align-items:center;gap:18px;background:#fff;border:1px solid #e1e3e6;border-radius:16px;padding:16px 18px;box-shadow:0 6px 18px rgba(0,0,0,.04)}
.to-my-ride-time strong{display:block;font-size:20px}.to-my-ride-time small{color:#8b8f94}
.to-my-ride-route{display:grid;grid-template-columns:minmax(100px,1fr) 24px minmax(100px,1fr);align-items:center;gap:6px}.to-my-ride-route strong{font-size:14px}.to-my-ride-route span{text-align:center;color:#a2a5aa}.to-my-ride-route small{grid-column:1/-1;color:#8b8f94}
.to-my-ride-status{text-align:right}.to-my-ride-status b{display:block;color:#18834b;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.to-my-ride-status span{display:block;font-weight:800;margin-top:4px}
.to-my-ride-card.completed .to-my-ride-status b{color:#777}
.to-my-ride-open{color:#151719;font-weight:800;text-decoration:none;white-space:nowrap}.to-my-ride-open:hover{color:#c9a900}
.to-driver-ride-section{max-width:1200px;margin:0 auto;padding:0 30px 25px}.to-driver-ride-section .to-driver-ride{max-width:none;margin:0}
.to-confirmed-box{border:1px solid #345a3c;background:#101712;border-radius:15px;padding:18px;color:#fff}.to-confirmed-box strong{color:#8fe0a1;font-size:17px}.to-confirmed-box p{margin:8px 0 0;color:#b7beb9}
@media(max-width:900px){.to-my-ride-card{grid-template-columns:70px 1fr}.to-my-ride-status{text-align:left}.to-my-ride-open{justify-self:start}.to-my-ride-route{grid-column:2}.to-my-ride-status{grid-column:2}}

/* 1.10 customer live ride view */
.to-live-status-card{background:#0a0b0c;color:#fff;border-radius:18px;padding:28px;margin-bottom:22px;box-shadow:0 16px 40px rgba(0,0,0,.08)}
.to-live-status-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.to-live-status-top h2{font-size:32px;margin:5px 0 4px}.to-live-refresh{margin:0!important;color:#8c9197!important;font-size:12px!important}.to-live-dot{width:12px;height:12px;border-radius:50%;background:#ffd000;box-shadow:0 0 0 6px rgba(255,208,0,.12);margin:9px 5px 0 0}
.to-customer-progress{display:flex;gap:8px;justify-content:space-between;margin-top:28px;position:relative}.to-customer-progress:before{content:"";position:absolute;left:4%;right:4%;top:16px;height:1px;background:#35383b}.to-customer-progress-step{flex:1;position:relative;z-index:1;text-align:center;color:#6f747a}.to-customer-progress-step i{display:grid;place-items:center;width:32px;height:32px;margin:0 auto 7px;border-radius:50%;background:#202326;border:1px solid #42464a;font-style:normal;font-size:12px}.to-customer-progress-step.done{color:#fff}.to-customer-progress-step.done i{background:#ffd000;color:#08090a;border-color:#ffd000}.to-customer-progress-step.current span{font-weight:900;color:#ffd000}
.to-customer-confirmed-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.to-customer-confirmed-grid>div{border:1px solid #2d3034;background:#121416;border-radius:14px;padding:17px}.to-customer-confirmed-grid small{display:block;color:#858990;font-size:10px;letter-spacing:.08em;margin-bottom:7px}.to-customer-confirmed-grid strong{display:block;font-size:20px}.to-customer-confirmed-grid p{margin:5px 0 0;color:#a5a8ad!important;font-size:12px!important}.to-customer-payment-note{margin-top:12px;padding:14px 16px;border:1px solid #51470d;background:#15150f;border-radius:12px;color:#c7c7c0;font-size:12px}.to-customer-payment-note b{color:#ffd000}
.to-customer-action-card{margin-bottom:22px}.to-customer-action-card h2{font-size:42px;margin:7px 0}.to-customer-action-card .to-btn{margin-top:8px}
@media(max-width:760px){.to-customer-progress{overflow:auto;justify-content:flex-start}.to-customer-progress-step{min-width:72px}.to-customer-confirmed-grid{grid-template-columns:1fr}.to-live-status-top h2{font-size:26px}.to-live-status-card{padding:22px}}


/* 1.12 arrival acknowledgement */
.to-arrival-ack{margin:18px 0;padding:17px 18px;border:1px solid #51470d;background:#15150f;border-radius:14px}
.to-arrival-ack small{display:block;color:#858990;font-size:10px;letter-spacing:.08em;margin-bottom:7px}
.to-arrival-ack strong{display:block;color:#ffd000;font-size:16px}
.to-arrival-ack span{display:block;color:#a5a8ad;font-size:12px;margin-top:6px}
.to-arrival-ack.is-acknowledged{border-color:#345a3c;background:#101712}
.to-arrival-ack.is-acknowledged strong{color:#8fe0a1}
.to-arrival-customer-card{margin:18px 0;padding:24px;border:1px solid #ffd000;background:#15150f;border-radius:16px}
.to-arrival-customer-card.acknowledged{border-color:#345a3c;background:#101712}
.to-arrival-customer-card h3{font-size:25px;margin:7px 0 8px}
.to-arrival-customer-card p{color:#b9b9b2!important}
.to-arrival-badge{color:#ffd000;font-size:11px;font-weight:900;letter-spacing:.12em}
.to-arrival-customer-card.acknowledged .to-arrival-badge{color:#8fe0a1}
.to-arrival-ack-btn{margin-top:8px}
.to-arrival-ack-btn:disabled{opacity:.75;cursor:default}
.to-arrival-ack-message{min-height:20px;margin-top:10px;color:#8fe0a1;font-weight:700}


/* 1.13 ride event timeline */
.to-ride-timeline{margin-top:22px;padding:20px;border:1px solid #2d3034;background:#101214;border-radius:15px;color:#fff}
.to-ride-timeline-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}
.to-ride-timeline-head small{display:block;color:#858990;font-size:10px;letter-spacing:.1em}
.to-ride-timeline-head h3{margin:5px 0 0;font-size:20px}.to-ride-timeline-head>span{font-size:11px;color:#8b9197;padding-top:3px}
.to-ride-timeline ol{list-style:none;margin:0;padding:0;position:relative}.to-ride-timeline ol:before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:1px;background:#34383c}
.to-ride-timeline li{display:grid;grid-template-columns:18px 62px 1fr;gap:10px;align-items:start;position:relative;padding:8px 0}.to-ride-timeline li>i{width:9px;height:9px;border-radius:50%;background:#ffd000;border:2px solid #101214;box-shadow:0 0 0 1px #ffd000;margin-top:5px;z-index:1}
.to-event-time strong{display:block;font-size:13px}.to-event-time span{display:block;color:#70767d;font-size:10px;margin-top:2px}.to-event-body strong{display:block;font-size:13px}.to-event-body span{display:block;color:#858b91;font-size:10px;margin-top:3px}
.to-timeline-empty{color:#858990!important;font-size:12px!important;margin:5px 0!important}
.to-customer-timeline{max-width:900px;margin:22px auto 0;background:#0a0b0c}.to-customer-timeline .to-ride-timeline-head h3{font-size:22px}
@media(max-width:600px){.to-ride-timeline{padding:16px}.to-ride-timeline li{grid-template-columns:18px 48px 1fr}.to-ride-timeline-head{display:block}.to-ride-timeline-head>span{display:block;margin-top:7px}}

/* 1.14 waiting / customer no-show */
.to-waiting-panel{margin:18px 0;padding:18px;border:1px solid #51470d;background:#15150f;border-radius:14px}
.to-waiting-panel small{display:block;color:#858990;font-size:10px;letter-spacing:.1em;margin-bottom:7px}
.to-waiting-panel strong{display:block;color:#ffd000;font-size:16px}
.to-waiting-panel span{display:block;color:#a5a8ad;font-size:12px;margin-top:6px}
.to-waiting-panel.is-waiting{border-color:#6b5d12}
.to-waiting-panel.is-no-show{border-color:#6b3434;background:#171011}
.to-waiting-panel.is-no-show strong{color:#ffb0b0}
.to-driver-wait-action{margin-top:12px;width:100%;border:1px solid #ffd000;border-radius:10px;background:#ffd000;color:#090a0b;padding:13px;font-weight:900;cursor:pointer}
.to-driver-wait-action:disabled{opacity:.45;cursor:not-allowed}
.to-driver-no-show{background:#171011;color:#ffb0b0;border-color:#7a3b3b}
.to-waiting-message{min-height:18px!important;color:#ffd000!important;text-align:center}
.to-no-show-customer-card,.to-waiting-customer-card{margin:18px 0;padding:24px;border-radius:16px;border:1px solid #ffd000;background:#15150f}
.to-no-show-customer-card{border-color:#7a3b3b;background:#171011}
.to-no-show-customer-card h3,.to-waiting-customer-card h3{font-size:25px;margin:7px 0 8px}
.to-no-show-customer-card p,.to-waiting-customer-card p{color:#b9b9b2!important}
.to-no-show-customer-card .to-arrival-badge{color:#ffb0b0}


/* 1.14.1 – shared waiting state, customer responses and last-resort cancellation */
.to-customer-wait-response{margin-top:14px;padding:12px;border:1px solid #51470d;background:#11120d;border-radius:11px}.to-customer-wait-response small{display:block;color:#858990;font-size:9px;letter-spacing:.1em}.to-customer-wait-response strong{display:block;color:#ffd000!important;font-size:14px!important;margin-top:4px}.to-customer-wait-response span{display:block;color:#858990;font-size:10px;margin-top:3px}.to-customer-wait-response.is-empty{border-color:#2d3034;background:#121416}.to-customer-wait-response.is-empty span{color:#a5a8ad}.to-waiting-last-resort{font-size:10px!important;color:#858990!important}.to-no-show-reason-wrap{margin-top:12px}.to-no-show-reason-wrap label{display:block;color:#a5a8ad;font-size:10px;margin-bottom:6px}.to-no-show-reason{width:100%;box-sizing:border-box;border:1px solid #3b3f43;background:#0d0f10;color:#fff;border-radius:9px;padding:11px}.to-no-show-reason-wrap[hidden]{display:none}.to-customer-wait-timer{margin:14px 0;padding:13px 15px;border-radius:11px;background:#11120d;border:1px solid #51470d;color:#a5a8ad}.to-customer-wait-timer strong{color:#ffd000!important;font-size:20px!important}.to-wait-response-title{font-size:10px;color:#858990;letter-spacing:.08em;text-transform:uppercase;margin:14px 0 7px}.to-wait-response-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.to-wait-response-actions .to-btn{margin-top:0!important;font-size:11px;padding:11px}.to-btn-outline{background:transparent!important;border:1px solid #555!important;color:#fff!important}.to-wait-response-actions button:disabled{opacity:.55;cursor:default}@media(max-width:600px){.to-wait-response-actions{grid-template-columns:1fr}}

.to-ride-live-milestone,.to-customer-ride-live,.to-customer-wait-live{margin:18px 0;padding:18px 20px;border:1px solid #51470d;background:#11120d;border-radius:14px}.to-ride-live-milestone small,.to-customer-ride-live small,.to-customer-wait-live small{display:block;color:#858990;font-size:10px;letter-spacing:.12em;margin-bottom:7px}.to-ride-live-milestone strong,.to-customer-ride-live strong,.to-customer-wait-live strong{display:block;color:#ffd000;font-size:18px}.to-ride-live-milestone span,.to-customer-ride-live span,.to-customer-wait-live span{display:block;color:#a5a8ad;font-size:13px;margin-top:6px}.to-ride-live-milestone p,.to-customer-ride-live p{margin:8px 0 0;color:#a5a8ad}.to-ride-live-milestone.is-completed,.to-customer-ride-live.is-completed{border-color:#2d5b3d;background:#101510}.to-ride-live-milestone.is-completed strong,.to-customer-ride-live.is-completed strong{color:#75d39a}.to-customer-wait-live{background:#15150f}.to-customer-wait-live strong{font-size:19px}.to-customer-wait-live span{font-size:18px;color:#ffd000;font-weight:800}

/* 1.16 optional customer rating */
.to-customer-rating-card{margin:18px 0;padding:22px 24px;border:1px solid #2d3034;background:#101214;border-radius:16px;color:#fff}.to-rating-kicker{color:#ffd000;font-size:10px;font-weight:900;letter-spacing:.12em}.to-customer-rating-card h3{font-size:24px;margin:7px 0 6px}.to-customer-rating-card p{color:#a5a8ad!important;margin:0 0 14px}.to-rating-stars{display:flex;gap:4px;margin:8px 0 14px}.to-rating-star{border:0;background:transparent;color:#45494d;font-size:34px;line-height:1;padding:0 2px;cursor:pointer;transition:transform .12s,color .12s}.to-rating-star:hover,.to-rating-star.selected{color:#ffd000;transform:translateY(-1px)}.to-rating-comment{width:100%;min-height:78px;box-sizing:border-box;border:1px solid #34383d;background:#0b0d0f;color:#fff;border-radius:10px;padding:12px;resize:vertical}.to-rating-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.to-rating-submit{margin:0!important}.to-rating-submit:disabled{opacity:.45;cursor:not-allowed}.to-rating-skip{border:0;background:transparent;color:#8b9197;cursor:pointer;font-size:12px}.to-rating-message{min-height:18px;margin-top:9px;color:#8fe0a1;font-size:12px;font-weight:700}.to-customer-rating-card.is-rated{border-color:#345a3c;background:#101712}.to-rating-stars-static{font-size:24px;letter-spacing:2px;color:#ffd000;margin:8px 0}.to-customer-rating-card.is-rated h3{margin-bottom:4px}@media(max-width:600px){.to-rating-actions{align-items:stretch;flex-direction:column}.to-rating-submit{width:100%}.to-rating-skip{padding:8px}}


/* 1.23 mobile-first driver quick actions */
.to-driver-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 8px}
.to-quick-action{min-height:64px;border:1px solid #d8dde3;border-radius:14px;background:#fff;color:#111;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font:inherit;cursor:pointer;padding:8px 6px;box-sizing:border-box}
.to-quick-action:hover{border-color:#111;transform:translateY(-1px)}
.to-quick-action span{font-size:20px;line-height:1}
.to-quick-action b{font-size:12px}
.to-quick-action.is-disabled{opacity:.45;pointer-events:none}
.to-quick-action-message{min-height:20px;font-size:13px;color:#646970;margin:4px 0 10px;text-align:center}
@media(max-width:600px){.to-driver-quick-actions{position:sticky;bottom:10px;z-index:20;background:rgba(255,255,255,.96);padding:8px;border:1px solid #e1e5ea;border-radius:16px;box-shadow:0 8px 30px rgba(0,0,0,.12);grid-template-columns:repeat(4,1fr)}.to-quick-action{min-height:58px}.to-quick-action b{font-size:11px}}
