:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #17251f; background: #dde5de; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; }
body.gateway-open { overflow: hidden; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
.platform-gateway { position: fixed; z-index: 2000; inset: 0; display: grid; place-items: center; overflow: auto; padding: 22px; background: radial-gradient(circle at 85% 8%, #ffb45a55, transparent 26%), linear-gradient(145deg, #0c2d22 0%, #174c38 55%, #0d241c 100%); }
.platform-gateway[hidden] { display: none; }
.gateway-card { width: min(100%, 480px); padding: clamp(25px, 6vw, 42px); border: 1px solid #ffffff26; border-radius: 30px; background: #fbfcf8; box-shadow: 0 28px 90px #06171088; }
.gateway-brand { display: flex; align-items: center; gap: 11px; margin-bottom: 24px; color: #12372a; font-size: 18px; font-weight: 900; }
.gateway-brand img { width: 45px; height: 45px; object-fit: contain; }
.gateway-brand small { display: block; margin-top: 2px; color: #d77816; font-size: 9px; letter-spacing: 2.4px; text-transform: uppercase; }
.gateway-card h1 { max-width: 430px; margin-bottom: 14px; font-size: clamp(31px, 7vw, 46px); letter-spacing: -2px; }
.gateway-intro { margin: 0 0 24px; color: #61736a; font-size: 14px; line-height: 1.65; }
.app-install { margin: 0 0 18px; padding: 14px; border: 1px solid #dce7df; border-radius: 18px; background: linear-gradient(135deg, #eef6f1, #fff8ef); }
.app-install[hidden] { display: none; }
.app-install-copy { display: flex; align-items: center; gap: 10px; margin-bottom: 11px; }
.app-install-copy > span:last-child { min-width: 0; }
.app-install-copy strong, .app-install-copy small, .app-install-actions strong, .app-install-actions small { display: block; }
.app-install-copy strong { margin-bottom: 2px; color: #17382c; font-size: 13px; }
.app-install-copy small { color: #667970; font-size: 9px; line-height: 1.35; }
.app-install-icon { flex: 0 0 37px; width: 37px; height: 37px; display: grid; place-items: center; border-radius: 12px; background: #ff9518; color: #080808; font-weight: 950; }
.app-install-actions { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.app-install-actions button { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; padding: 10px 8px; border: 1px solid #d1ddd5; border-radius: 12px; background: #fff; color: #18372c; text-align: left; }
.app-install-actions button:hover, .app-install-actions button:focus-visible { border-color: #ff9518; box-shadow: 0 5px 15px #ff951821; }
.app-install-actions button > span:first-child { color: #db7300; font-size: 17px; }
.app-install-actions small { color: #78877f; font-size: 7px; }
.app-install-actions strong { font-size: 11px; }
.app-install-help { min-height: 14px; margin: 8px 1px 0; color: #61736a; font-size: 8px; line-height: 1.4; text-align: center; }
.app-install-help.success { color: #126044; font-weight: 750; }
.gateway-start { width: 100%; border: 0; border-radius: 16px; padding: 16px; background: #e98219; color: #fff; font-weight: 850; box-shadow: 0 10px 25px #cf6d1735; }
.role-choices { display: grid; gap: 10px; margin-top: 22px; }
.role-choices[hidden] { display: none; }
.role-choices > p { margin: 0 0 3px; color: #5d7066; font-size: 11px; font-weight: 850; letter-spacing: 1.2px; text-transform: uppercase; }
.role-choice { width: 100%; display: grid; grid-template-columns: 44px 1fr auto; gap: 12px; align-items: center; padding: 13px; border: 1px solid #dde5de; border-radius: 16px; background: #fff; color: #19382d; text-align: left; text-decoration: none; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.role-choice:hover, .role-choice:focus-visible { transform: translateY(-2px); border-color: #8aac9b; box-shadow: 0 10px 25px #153a2b16; outline: none; }
.role-choice .role-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: #e3efe8; color: #176044; font-weight: 900; }
.role-choice.owner .role-icon { background: #fff0df; color: #c66912; }
.role-choice.driver .role-icon { background: #e8ecea; color: #243b31; }
.role-choice strong, .role-choice small { display: block; }
.role-choice strong { margin-bottom: 3px; font-size: 14px; }
.role-choice small { color: #73827a; font-size: 10px; line-height: 1.35; }
.gateway-legal { margin: 19px 4px 0; color: #7d8a83; font-size: 9px; line-height: 1.5; text-align: center; }
.gateway-legal a { color: #315d49; }
.app-shell { min-height: 100vh; max-width: 480px; margin: 0 auto; background: #f8faf6; box-shadow: 0 0 60px #10261d30; position: relative; overflow: hidden; }
.map { height: 43vh; min-height: 330px; position: relative; overflow: hidden; background: #e7eadf; }
.map-canvas { position: absolute; inset: 0; z-index: 0; }
.map::after { content: ""; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 -45px 42px -38px #12372a55; z-index: 1; }
.leaflet-control-attribution { font-size: 9px; }
.hub-map-pin { width: 24px; height: 24px; border: 5px solid #fff; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); box-shadow: 0 4px 16px #19382d55; }
.hub-map-pin.pickup-marker { background: #13704b; }
.hub-map-pin.destination-marker { background: #e16c32; }
.map-help { position: absolute; z-index: 500; left: 50%; bottom: 42px; transform: translateX(-50%); width: max-content; max-width: calc(100% - 40px); margin: 0; padding: 8px 12px; border-radius: 99px; background: #12372ae8; color: #fff; font-size: 10px; font-weight: 750; box-shadow: 0 4px 18px #10261d44; }
.map-grid { position: absolute; inset: 0; opacity: .55; background-image: linear-gradient(28deg, transparent 46%, #fff 47% 52%, transparent 53%), linear-gradient(120deg, transparent 44%, #d0d8cb 45% 48%, transparent 49%); background-size: 120px 95px, 150px 160px; }
.road { position: absolute; height: 17px; width: 130%; left: -15%; background: #fff; border: 1px solid #d6dbd1; transform: rotate(-15deg); }
.road::after { content: ""; display: block; margin-top: 7px; border-top: 2px dashed #d9cba8; }
.road-a { top: 36%; }.road-b { top: 68%; transform: rotate(23deg); }.road-c { top: 10%; transform: rotate(71deg); }
.brand { position: absolute; z-index: 500; left: 20px; top: 20px; display: flex; align-items: center; gap: 9px; font-weight: 850; letter-spacing: -.4px; background: #ffffffea; padding: 7px 10px; border-radius: 14px; box-shadow: 0 5px 20px #284a3c20; }
.brand small { display: block; color: #557066; font-size: 9px; letter-spacing: 2.5px; text-transform: uppercase; }
.brand-mark { display: grid; place-items: center; color: white; background: #12372a; width: 34px; height: 34px; border-radius: 12px; }
.safety { position: absolute; z-index: 500; right: 18px; top: 20px; border: 0; border-radius: 99px; background: #fff; color: #284a3c; padding: 10px 14px; box-shadow: 0 5px 20px #284a3c20; font-size: 12px; font-weight: 750; }
.driver-link { position: absolute; z-index: 500; right: 18px; top: 68px; border: 0; color: #244c3b; background: #ffffffed; border-radius: 99px; padding: 8px 11px; text-decoration: none; font-size: 10px; font-weight: 800; box-shadow: 0 4px 14px #284a3c18; }
.pin { position: absolute; width: 27px; height: 27px; border: 7px solid #fff; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); box-shadow: 0 4px 16px #19382d40; }
.pin span { display: block; width: 13px; height: 13px; border-radius: 50%; }
.pickup { left: 24%; top: 49%; background: #13704b; }.pickup span { background: #13704b; }.destination { right: 24%; top: 26%; background: #e16c32; }.destination span { background: #e16c32; }
.car { position: absolute; left: 60%; top: 61%; background: #153c2d; color: #fff; border: 4px solid #fff; width: 35px; height: 35px; display: grid; place-items: center; border-radius: 50%; transform: rotate(32deg); box-shadow: 0 4px 16px #19382d40; }
.map-label { position: absolute; color: #718078; font-size: 11px; font-weight: 650; }.label-one { top: 27%; left: 27%; }.label-two { top: 74%; right: 12%; }
.ride-panel { position: relative; margin-top: -30px; min-height: calc(57vh + 30px); background: #fbfcf8; border-radius: 28px 28px 0 0; padding: 14px 22px 26px; box-shadow: 0 -8px 35px #223a3020; }
.handle { width: 42px; height: 5px; border-radius: 9px; background: #d9ded7; margin: 0 auto 20px; }
.eyebrow { margin: 0 0 5px; color: #587064; text-transform: uppercase; letter-spacing: 1.7px; font-size: 10px; font-weight: 850; }.eyebrow.success { color: #13704b; }
h1, h2 { margin: 0 0 18px; letter-spacing: -1.1px; font-size: 27px; line-height: 1.08; }
.location-field { background: #fff; border: 1px solid #e3e7e0; border-radius: 15px; display: flex; align-items: center; gap: 13px; padding: 11px 13px; margin-bottom: 9px; box-shadow: 0 3px 14px #253d3310; }
.location-field > span:last-child { flex: 1; }.location-field small, .estimate small, .driver-card small, .trip-code small { display: block; color: #7a8981; font-size: 10px; font-weight: 650; margin-bottom: 2px; }
.location-field input { width: 100%; border: 0; outline: 0; padding: 0; color: #17251f; font-weight: 700; background: transparent; }
.dot { width: 10px; height: 10px; border-radius: 50%; box-shadow: 0 0 0 5px #e9f3ed; }.green { background: #13704b; }.orange { background: #e16c32; box-shadow: 0 0 0 5px #f8ece6; }
.quick-places { display: flex; gap: 7px; margin: 11px 0 14px; }.quick-places button { border: 0; background: #edf1eb; border-radius: 99px; padding: 8px 12px; color: #50635a; font-size: 11px; font-weight: 750; }
.estimate { display: flex; justify-content: space-between; background: #f0f4ec; border-radius: 14px; padding: 12px 14px; margin-bottom: 13px; }.estimate span:last-child { text-align: right; }.estimate strong { font-size: 13px; }
.primary, .secondary { width: 100%; border: 0; border-radius: 15px; padding: 15px; font-weight: 800; }.primary { background: #12372a; color: #fff; box-shadow: 0 8px 18px #12372a2c; }.secondary { background: #eef1ec; color: #34483f; }
.primary:disabled { cursor: wait; opacity: .65; }.error-message { color: #a53a2b; background: #fff0ed; border-radius: 10px; padding: 9px 11px; margin: 0 0 10px; font-size: 12px; }
.back { border: 0; background: transparent; padding: 0; margin-bottom: 14px; color: #557066; font-size: 12px; font-weight: 750; }
.vehicle-list { display: grid; gap: 9px; margin: 12px 0; }.vehicle { display: grid; grid-template-columns: 43px 1fr auto; gap: 11px; align-items: center; text-align: left; background: #fff; border: 1px solid #e1e6df; border-radius: 16px; padding: 13px; color: inherit; }.vehicle.selected { border: 2px solid #1c6047; background: #f1f7f2; }.vehicle small { display: block; margin-top: 3px; color: #75827b; }.vehicle-icon { display: grid; place-items: center; height: 38px; color: #fff; background: #276048; border-radius: 12px; }.vehicle-icon.comfort { background: #b87827; }.vehicle b { font-size: 13px; }
.payment { display: flex; justify-content: space-between; width: 100%; border: 0; border-top: 1px solid #e5e9e3; background: transparent; padding: 14px 3px; color: #50635a; font-size: 12px; font-weight: 750; }
.payment-methods{border:0;border-top:1px solid #e5e9e3;margin:10px 0 12px;padding:12px 0 0}.payment-methods legend{padding:0;color:#687970;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.payment-methods>div{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.payment-option{display:flex;gap:8px;align-items:center;border:1px solid #e1e6df;border-radius:11px;padding:9px;background:#fff;cursor:pointer}.payment-option.selected{border-color:#1c6047;background:#f1f7f2}.payment-option.unavailable{cursor:not-allowed;background:#f4f5f3;color:#78827d;opacity:.72}.payment-option.unavailable input{cursor:not-allowed}.payment-option.unavailable small{color:#8b4b29;font-weight:750}.payment-option input{width:auto;margin:0;accent-color:#176044}.payment-option strong,.payment-option small{display:block}.payment-option strong{font-size:11px}.payment-option small{margin-top:2px;color:#75827b;font-size:8px}.payment-note{margin:7px 2px 0;color:#7a8981;font-size:9px;line-height:1.35}
.status-view { text-align: center; padding-top: 9px; }.status-view p:not(.eyebrow) { color: #687970; line-height: 1.5; font-size: 13px; max-width: 310px; margin: 0 auto 24px; }
.pulse { width: 80px; height: 80px; border-radius: 50%; background: #dcebe2; margin: 5px auto 20px; display: grid; place-items: center; animation: pulse 1.4s infinite; }.pulse span { display: grid; place-items: center; color: #fff; background: #12372a; width: 46px; height: 46px; border-radius: 17px; font-weight: 900; font-size: 20px; }
.progress { height: 5px; background: #e3e8e1; border-radius: 9px; overflow: hidden; margin: 0 0 25px; }.progress i { display: block; width: 42%; height: 100%; background: #1b6d4d; animation: search 1.2s infinite ease-in-out; }
.driver-card { display: grid; grid-template-columns: 48px 1fr auto; gap: 11px; align-items: center; background: #fff; border: 1px solid #e1e6df; padding: 14px; border-radius: 17px; }.avatar { width: 46px; height: 46px; border-radius: 16px; display: grid; place-items: center; background: #dce9e0; color: #174c37; font-weight: 850; }.driver-card small { margin-top: 4px; }.plate { text-align: right; }.plate strong { border: 1px solid #bbc4bd; padding: 4px 6px; border-radius: 5px; font-size: 11px; }
.trip-code { display: flex; align-items: center; justify-content: space-between; padding: 15px 5px; }.trip-code strong { letter-spacing: 7px; font-size: 21px; }.trip-code button { border: 0; border-radius: 99px; padding: 9px 12px; background: #eaf1eb; color: #315543; font-size: 11px; font-weight: 750; }
.driver-actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin-bottom: 14px; }.driver-actions button { border: 0; border-radius: 12px; padding: 12px 4px; background: #eef2ed; color: #42574d; font-size: 11px; font-weight: 750; }
.tracking-note { margin: 12px 0 0; text-align: center; color: #718078; font-size: 11px; }
.route-mark, .success-mark { width: 66px; height: 66px; margin: 3px auto 17px; display: grid; place-items: center; border-radius: 24px; background: #dcebe2; color: #166044; font-size: 30px; font-weight: 900; }
.receipt-ticket { position: relative; overflow: hidden; padding: 20px; border: 1px solid #dfe7df; border-radius: 24px; background: #fff; box-shadow: 0 18px 50px #16372b12; }
.receipt-open .map { display: none; }.receipt-open .ride-panel { min-height: 100vh; margin-top: 0; border-radius: 0; padding-top: 20px; }
.receipt-ticket::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg, #12372a 0 72%, #ff9518 72%); }
.receipt-header, .receipt-brand, .receipt-intro, .receipt-total, .receipt-actions { display: flex; align-items: center; }
.receipt-header { justify-content: space-between; gap: 12px; padding-bottom: 17px; border-bottom: 1px dashed #ced8d0; }
.receipt-brand { gap: 9px; color: #12372a; font-size: 12px; font-weight: 950; letter-spacing: .5px; }.receipt-brand img { width: 35px; height: 35px; object-fit: contain; }.receipt-brand small { display: block; margin-top: 1px; color: #78877f; font-size: 8px; font-weight: 750; letter-spacing: .7px; }
.receipt-status { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 99px; background: #e5f3e9; color: #126044; font-size: 9px; font-weight: 850; white-space: nowrap; }.receipt-status i { width: 17px; height: 17px; display: grid; place-items: center; border-radius: 50%; background: #176b4c; color: #fff; font-size: 10px; font-style: normal; }.receipt-status.pending { background: #fff1df; color: #92500f; }.receipt-status.pending i { background: #d77816; }
.receipt-intro { gap: 13px; padding: 20px 0 15px; }.receipt-intro .success-mark { flex: 0 0 53px; width: 53px; height: 53px; margin: 0; border-radius: 17px; font-size: 24px; }.receipt-intro h2 { margin: 0 0 5px; font-size: 23px; }.receipt-intro p:last-child { margin: 0; color: #718078; font-size: 10px; }
.receipt-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 12px; }.receipt-meta div { min-width: 0; padding: 10px 11px; border-radius: 11px; background: #f3f6f1; }.receipt-meta dt, .receipt-total small, .receipt-route dt, .receipt-details dt { color: #7a8981; font-size: 9px; font-weight: 700; }.receipt-meta dd { overflow-wrap: anywhere; margin: 3px 0 0; font-size: 10px; font-weight: 800; }
.receipt-total { justify-content: space-between; gap: 18px; margin: 0 0 15px; padding: 17px; border-radius: 17px; background: #12372a; color: #fff; }.receipt-total > span { display: grid; gap: 4px; }.receipt-total > span:last-child { justify-items: end; text-align: right; }.receipt-total small { color: #b9ccc2; }.receipt-total strong { font-size: 27px; letter-spacing: -.8px; }.receipt-total b { color: #eef5f1; font-size: 10px; }
.receipt-route { display: grid; grid-template-columns: 19px 1fr; gap: 10px; margin: 0 0 12px; padding: 14px; border: 1px solid #e1e6df; border-radius: 15px; background: #fcfdfb; }.receipt-route-line { position: relative; display: flex; flex-direction: column; align-items: center; padding: 5px 0; }.receipt-route-line::before { content: ""; position: absolute; top: 10px; bottom: 10px; width: 2px; background: #d6dfd8; }.receipt-route-line i, .receipt-route-line span { z-index: 1; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #13704b; box-shadow: 0 0 0 2px #d5e7dc; }.receipt-route-line span { margin-top: auto; background: #e16c32; box-shadow: 0 0 0 2px #f2ddd2; }.receipt-route dl { margin: 0; }.receipt-route dl div { padding: 0 0 15px; }.receipt-route dl div:last-child { padding: 0; }.receipt-route dd { margin: 3px 0 0; color: #20372d; font-size: 12px; font-weight: 800; line-height: 1.35; }
.receipt-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; margin: 0 0 16px; padding: 4px 14px; border: 1px solid #e1e6df; border-radius: 16px; background: #fff; }.receipt-details div { min-width: 0; padding: 10px 0; border-bottom: 1px solid #edf0eb; }.receipt-details div:last-child { border-bottom: 0; }.receipt-details dd { overflow-wrap: anywhere; margin: 3px 0 0; font-size: 11px; font-weight: 800; }
.receipt-actions { gap: 8px; }.receipt-actions button { min-height: 45px; padding: 12px 10px; font-size: 10px; }.receipt-action-message { min-height: 15px; margin: 8px 0 0; color: #50635a; font-size: 9px; text-align: center; }.receipt-ticket footer { margin: 12px -20px -20px; padding: 11px 20px; background: #f1f5f0; color: #708078; font-size: 8px; text-align: center; }
.receipt-aftercare { margin-top: 17px; padding: 18px; border: 1px solid #e1e6df; border-radius: 20px; background: #fff; }.receipt-help-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.receipt-help-actions .secondary { min-height: 44px; padding: 11px 8px; font-size: 10px; }
#rating-form fieldset { margin: 0 0 10px; padding: 0; border: 0; text-align: center; }#rating-form legend { width: 100%; margin-bottom: 7px; font-size: 12px; font-weight: 750; }
.rating { display: flex; flex-direction: row-reverse; justify-content: center; gap: 5px; }.rating input { position: absolute; opacity: 0; pointer-events: none; }.rating label { color: #cbd2cc; cursor: pointer; font-size: 31px; line-height: 1; }.rating label:hover, .rating label:hover ~ label, .rating input:checked ~ label { color: #e3a62f; }.rating input:focus-visible + label { outline: 3px solid #76a991; outline-offset: 3px; border-radius: 4px; }
.rating-message { min-height: 18px; margin: 0 0 6px; text-align: center; color: #50635a; font-size: 11px; }
.active-safety-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0; }
.digital-payment-panel { display: grid; gap: 8px; margin: 12px 0; padding: 14px; border: 1px solid #dce5dd; border-radius: 15px; background: #fff; text-align: left; }
.digital-payment-panel[hidden] { display: none; }
.digital-payment-panel label { color: #50635a; font-size: 11px; font-weight: 750; }
.digital-payment-panel input { width: 100%; border: 1px solid #dce3dc; border-radius: 12px; padding: 11px; color: #17251f; }
.digital-payment-panel p { min-height: 16px; margin: 0; color: #50635a; font-size: 10px; line-height: 1.4; }
.danger { border: 0; border-radius: 15px; padding: 14px; background: #b42318; color: #fff; font-weight: 850; }.danger.wide { width: 100%; }
.support-dialog { width: min(430px, calc(100vw - 24px)); padding: 0; border: 0; border-radius: 24px; color: inherit; box-shadow: 0 25px 90px #10261d66; }.support-dialog::backdrop { background: #10261d99; backdrop-filter: blur(4px); }
.dialog-card { position: relative; padding: 26px; background: #fbfcf8; }.dialog-card > p:not(.eyebrow) { color: #687970; font-size: 13px; line-height: 1.5; }.dialog-close { position: absolute; top: 15px; right: 15px; width: 34px; height: 34px; border: 0; border-radius: 50%; background: #edf1eb; color: #42574d; font-size: 22px; }
.dialog-card .secondary { margin-top: 9px; }.support-field { display: grid; gap: 6px; margin: 14px 0; color: #50635a; font-size: 12px; font-weight: 750; }.support-field input, .support-field textarea { width: 100%; border: 1px solid #dce3dc; border-radius: 12px; padding: 11px; background: #fff; color: #17251f; resize: vertical; }.support-message { min-height: 19px; color: #315543; font-size: 12px; }
@keyframes pulse { 50% { box-shadow: 0 0 0 22px #dcebe255; } } @keyframes search { from { transform: translateX(-100%); } to { transform: translateX(340%); } }
@media (min-width: 760px) { body:not(.gateway-open) { padding: 24px; }.app-shell { min-height: calc(100vh - 48px); border-radius: 28px; }.map { height: 44vh; }.ride-panel { min-height: calc(56vh + 30px); }.receipt-open .app-shell { max-width: 480px; }.receipt-open .map { display: none; }.receipt-open .ride-panel { min-height: calc(100vh - 48px); padding: 20px 22px 26px; }.receipt-open .handle { display: none; } }
@media (max-height: 760px) { .gateway-card { padding: 22px; }.gateway-brand { margin-bottom: 14px; }.gateway-card h1 { font-size: 29px; margin-bottom: 8px; }.gateway-intro { margin-bottom: 12px; }.app-install { margin-bottom: 12px; }.gateway-legal { margin-top: 12px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; } }
@media (max-width: 420px) { .receipt-ticket { margin-inline: -8px; padding: 17px; border-radius: 20px; }.receipt-ticket footer { margin: 12px -17px -17px; }.receipt-meta { grid-template-columns: 1fr; }.receipt-details { grid-template-columns: 1fr 1fr; }.receipt-actions, .receipt-help-actions { display: grid; grid-template-columns: 1fr; }.receipt-intro .success-mark { flex-basis: 47px; width: 47px; height: 47px; }.receipt-intro h2 { font-size: 21px; } }
@media print { @page { margin: 12mm; } body, body.receipt-open { padding: 0 !important; background: #fff !important; }.platform-gateway, .map, .handle, .receipt-aftercare, .receipt-actions, .receipt-action-message { display: none !important; }.app-shell, .receipt-open .app-shell { display: block; width: 100%; max-width: none; min-height: 0; margin: 0; border-radius: 0; box-shadow: none; }.ride-panel, .receipt-open .ride-panel { min-height: 0; margin: 0; padding: 0; border-radius: 0; box-shadow: none; }.receipt-open #receipt-view { max-width: 180mm; margin: 0 auto; }.receipt-ticket { break-inside: avoid; box-shadow: none; }.receipt-ticket footer { -webkit-print-color-adjust: exact; print-color-adjust: exact; }.receipt-total, .receipt-ticket::before, .receipt-status, .success-mark { -webkit-print-color-adjust: exact; print-color-adjust: exact; } }
