@import url("theme-teal-coral.css");
@import url("theme-buttons.css");
:root{--bdp-black:#090909;--bdp-black2:#171717;--bdp-gold:#c9a227;--bdp-gold2:#e0c769;--bdp-warm:#f7f4ef;--bdp-card:#fff;--bdp-text:#171717;--bdp-muted:#79746b;--bdp-line:#e4ded3;--bdp-green:#1e9b66;--bdp-blue:#2d78d5;--bdp-orange:#d88527;--bdp-red:#c34646;--bdp-shadow:0 18px 50px rgba(20,15,5,.10)}
.bdp-direct-assignment-notice{display:flex;flex-direction:column;gap:4px;margin:10px 0;padding:11px 13px;border:1px solid rgba(21,144,163,.28);border-left:4px solid #1590a3;border-radius:12px;background:#eef9fb;color:#073441;box-shadow:0 5px 16px rgba(7,52,65,.08)}.bdp-direct-assignment-notice strong{font-size:11px;letter-spacing:.08em;color:#1590a3}.bdp-direct-assignment-notice span{font-size:13px;font-weight:750;line-height:1.35}
.bdp-browser-guide{margin:12px 0;padding:18px;border:1px solid #c9dce3;border-left:5px solid #ff2f68;border-radius:15px;background:#fff;color:#073441;box-shadow:0 10px 28px rgba(7,52,65,.09)}.bdp-browser-guide>small{color:#1590a3;font-weight:900;letter-spacing:.09em}.bdp-browser-guide h2{margin:6px 0 8px!important;color:#073441!important;font-size:20px!important}.bdp-browser-guide h3{margin:16px 0 7px!important;font-size:15px!important}.bdp-browser-guide p,.bdp-browser-guide li,.bdp-browser-guide-block span{line-height:1.45}.bdp-browser-guide ol{margin:8px 0 15px 22px}.bdp-browser-guide-block{display:flex;flex-direction:column;gap:3px;margin:9px 0;padding:11px;border-radius:10px;background:#eef7f9}.bdp-browser-guide-block.is-face{background:#fff1f5;border:1px solid #ffd0dd}.bdp-browser-guide-block strong{color:#073441}.bdp-browser-support{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none}.bdp-browser-guide.is-compact ol,.bdp-browser-guide.is-compact h3{display:none}.bdp-browser-face-modal .bdp-face-request-card{max-width:620px!important}.bdp-browser-face-modal .bdp-browser-guide{margin:0;box-shadow:none}
.bdp-password-field{position:relative!important}.bdp-password-field input[type=password],.bdp-password-field input[type=text]{padding-right:64px!important}.bdp-password-toggle{position:absolute!important;right:10px!important;bottom:18px!important;width:42px!important;height:38px!important;min-height:38px!important;padding:0!important;border:1px solid #cfe0e6!important;border-radius:10px!important;background:#eef7f9!important;color:#10202b!important;box-shadow:0 3px 10px rgba(7,23,34,.08)!important;font-size:20px!important;line-height:1!important;font-weight:400!important;cursor:pointer!important;display:grid!important;place-items:center!important}.bdp-password-toggle:focus{outline:3px solid rgba(57,210,230,.22)!important}

.bdp-device-replaced .bdp-app-shell{pointer-events:none;filter:grayscale(.35)}

.bdp-future-intro{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;overflow:hidden;background:#02080d;color:#fff;transition:opacity .45s ease}.bdp-future-intro:before{content:"";position:absolute;inset:-50%;background:linear-gradient(rgba(57,210,230,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(57,210,230,.09) 1px,transparent 1px);background-size:42px 42px;transform:perspective(420px) rotateX(62deg) translateY(26%);animation:bdp-grid-drive 2.2s linear infinite}.bdp-future-intro:after{content:"";position:absolute;width:75vmax;height:75vmax;border:1px solid rgba(57,210,230,.24);border-radius:50%;box-shadow:0 0 90px rgba(57,210,230,.13),inset 0 0 90px rgba(255,47,104,.08);animation:bdp-intro-orbit 4s linear infinite}.bdp-future-intro-content{position:relative;z-index:2;text-align:center;padding:30px}.bdp-future-intro-logo{width:104px;height:104px;border-radius:26px;box-shadow:0 0 0 1px rgba(57,210,230,.45),0 0 55px rgba(57,210,230,.28);animation:bdp-intro-pulse 1.4s ease-in-out infinite}.bdp-future-intro h1{margin:22px 0 4px!important;color:#fff!important;font-size:30px!important;letter-spacing:4px}.bdp-future-intro p{margin:0;color:#39d2e6;font-size:11px;font-weight:800;letter-spacing:3px}.bdp-future-intro button{position:fixed;right:18px;top:max(18px,env(safe-area-inset-top));z-index:3;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(0,0,0,.4);color:#fff;padding:9px 14px;font-weight:700}.bdp-future-intro.out{opacity:0;pointer-events:none}@keyframes bdp-grid-drive{to{background-position:0 42px,42px 0}}@keyframes bdp-intro-orbit{to{transform:rotate(360deg)}}@keyframes bdp-intro-pulse{50%{transform:scale(1.055);filter:brightness(1.25)}}
.bdp-protected-chat .bdp-chat-messages,.bdp-protected-chat .bdp-chat-msg{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.bdp-protected-chat .bdp-chat-msg{-webkit-user-drag:none!important}
.bdp-closed-service-notice{display:grid;gap:6px;margin:16px 0;padding:18px;border:1px solid #b9dfc7;border-left:6px solid #20a957;border-radius:14px;background:#effbf3;color:#174b2b}.bdp-closed-service-notice strong{font-size:15px}.bdp-closed-service-notice span{font-size:13px;line-height:1.5}
.bdp-guest-driver-card{display:flex;align-items:center;gap:15px;background:#111;color:#fff;border:2px solid #c9a227;border-radius:18px;padding:15px;margin-bottom:14px}.bdp-guest-driver-card img{width:82px;height:82px;object-fit:cover;border-radius:50%;border:3px solid #c9a227}.bdp-guest-driver-card small,.bdp-guest-driver-card strong,.bdp-guest-driver-card span{display:block}.bdp-guest-driver-card small{color:#d7bd66;text-transform:uppercase;font-size:10px;letter-spacing:1px}.bdp-guest-driver-card strong{font-size:19px;margin:4px 0}.bdp-guest-driver-card span{color:#ddd;font-size:13px}
/* v0.5.3 dedicated Guest login: keep controls visible across mobile themes. */
.bdp-guest-login-form{display:grid;gap:14px;margin-top:22px}.bdp-guest-login-form label{display:grid;gap:6px;color:#171717}.bdp-guest-login-form input[type=email],.bdp-guest-login-form input[type=password]{display:block!important;visibility:visible!important;width:100%!important;min-height:48px!important;margin:0!important;padding:12px 14px!important;border:1px solid #cfc8bc!important;border-radius:11px!important;background:#fff!important;color:#111!important;font-size:16px!important;line-height:1.25!important;-webkit-appearance:none}.bdp-guest-login-form button{display:block;width:100%;min-height:50px;border:0;border-radius:12px;background:#111;color:#fff;font-weight:800;font-size:14px;cursor:pointer}.bdp-login-remember{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important}.bdp-login-remember input{display:inline-block!important;visibility:visible!important;width:18px!important;height:18px!important;margin:0!important;accent-color:#111}.bdp-login-error{margin:16px 0 0;padding:12px 14px;border:1px solid #efb5b5;border-radius:11px;background:#fff0f0;color:#8a1f1f;font-size:13px;font-weight:700}.bdp-login-help{margin:16px 0 0!important;text-align:center;font-size:13px}.bdp-login-help a{color:#111;text-decoration:underline}@media(max-width:520px){.bdp-login-shell{min-height:100svh;padding:14px}.bdp-login-card{padding:25px 20px;border-radius:18px}.bdp-login-card h1{font-size:25px!important}.bdp-guest-login-form{margin-top:18px}}
body:has(.bdp-app-shell),body:has(.bdp-login-shell){background:#eceff1!important}.bdp-app-shell,.bdp-login-shell,.bdp-access-denied{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;box-sizing:border-box}.bdp-app-shell *,.bdp-login-shell *{box-sizing:border-box}.bdp-app-shell{width:100%;max-width:980px;margin:0 auto;min-height:100vh;background:linear-gradient(180deg,#0b0b0b 0,#111 205px,#eef1f3 206px);color:var(--bdp-text);position:relative;padding-bottom:92px}.bdp-app-loading{min-height:420px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#fff}.bdp-loader-ring{width:38px;height:38px;border:3px solid rgba(255,255,255,.22);border-top-color:var(--bdp-gold);border-radius:50%;animation:bdp-spin .8s linear infinite}@keyframes bdp-spin{to{transform:rotate(360deg)}}.bdp-topbar{padding:22px 20px 18px;color:#fff;display:flex;justify-content:space-between;align-items:center}.bdp-logo{display:flex;align-items:center;gap:12px}.bdp-logo-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--bdp-gold2),var(--bdp-gold));color:#080808;font-family:Georgia,serif;font-size:24px;font-weight:700;box-shadow:0 8px 24px rgba(201,162,39,.28)}.bdp-logo-copy strong{display:block;font-family:Georgia,serif;font-size:21px;letter-spacing:.3px}.bdp-logo-copy small{display:block;color:#bcbcbc;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;margin-top:2px}.bdp-top-actions{display:flex;align-items:center;gap:8px}.bdp-icon-btn{width:40px;height:40px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;border-radius:12px;display:grid;place-items:center;cursor:pointer}.bdp-icon-btn-whatsapp{background:#1f9d62;border-color:#1f9d62;color:#fff;text-decoration:none}.bdp-icon-btn-whatsapp:hover{background:#188352}.bdp-hero{padding:8px 20px 30px;color:#fff}.bdp-hero small{color:var(--bdp-gold2);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700}.bdp-hero h1{color:#fff!important;font-size:30px!important;line-height:1.15!important;margin:6px 0 8px!important}.bdp-hero p{margin:0;color:#bdbdbd;font-size:14px}.bdp-content{padding:0 16px 20px}.bdp-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:-2px;margin-bottom:17px}.bdp-summary-card{background:#fff;border:1px solid rgba(228,222,211,.8);border-radius:16px;padding:15px;box-shadow:0 12px 35px rgba(17,17,17,.06)}.bdp-summary-card small{display:block;color:var(--bdp-muted);font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:700}.bdp-summary-card strong{display:block;margin-top:5px;font-size:20px}.bdp-section-head{display:flex;justify-content:space-between;align-items:end;margin:18px 2px 11px}.bdp-section-head h2{font-size:18px!important;margin:0!important;color:var(--bdp-text)!important}.bdp-section-head button{border:0;background:none;color:var(--bdp-gold);font-weight:700;cursor:pointer}.bdp-service-card{border:1px solid var(--bdp-line);border-radius:18px;background:#fff;padding:0;margin-bottom:13px;overflow:hidden;box-shadow:0 10px 30px rgba(22,18,10,.055);cursor:pointer;transition:.2s ease}.bdp-service-card:active{transform:scale(.99)}.bdp-service-card-top{display:flex;justify-content:space-between;gap:12px;padding:17px 17px 12px}.bdp-service-time{font-weight:800;font-size:18px;color:var(--bdp-black)}.bdp-service-date{font-size:12px;color:var(--bdp-muted);margin-top:2px}.bdp-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:10px;line-height:1;font-weight:800;text-transform:uppercase;letter-spacing:.55px;background:#eee}.bdp-badge.assigned{background:#eee9df;color:#6d614d}.bdp-badge.accepted{background:#e5efff;color:#225ea8}.bdp-badge.en_route{background:#e0efff;color:#1669a6}.bdp-badge.arrived{background:#ffefd6;color:#9d5d16}.bdp-badge.passenger_on_board{background:#dcf4e7;color:#126743}.bdp-badge.completed,.bdp-badge.closed{background:#dff3e6;color:#135f3d}.bdp-badge.declined{background:#f7e0e0;color:#963737}.bdp-route{padding:2px 17px 16px;display:grid;grid-template-columns:18px minmax(6em,1fr);column-gap:10px}.bdp-route-line{position:relative}.bdp-route-line:before{content:"";position:absolute;left:7px;top:9px;bottom:-18px;width:2px;background:linear-gradient(var(--bdp-gold),#d8d3ca)}.bdp-route-dot{width:16px;height:16px;border:4px solid #fff;background:var(--bdp-gold);border-radius:50%;box-shadow:0 0 0 1px var(--bdp-gold);position:relative;z-index:1}.bdp-route-row{padding-bottom:13px}.bdp-route-row:last-child{padding-bottom:0}.bdp-route-row small{display:block;color:var(--bdp-muted);font-size:10px;text-transform:uppercase;letter-spacing:.75px;font-weight:700}.bdp-route-row strong{display:block;font-size:14px;line-height:1.35;margin-top:2px}.bdp-service-footer{border-top:1px solid #eee9e0;padding:11px 17px;display:flex;justify-content:space-between;gap:10px;color:var(--bdp-muted);font-size:12px;background:#fcfbf9}.bdp-empty{padding:26px;text-align:center;background:#fff;border:1px dashed #d6d0c5;border-radius:16px;color:var(--bdp-muted)}.bdp-bottom-nav{position:fixed;z-index:30;left:50%;transform:translateX(-50%);bottom:0;width:min(980px,100%);background:rgba(10,10,10,.96);backdrop-filter:blur(18px);padding:9px 12px max(9px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.08)}.bdp-nav-btn{border:0;background:transparent;color:#898989;padding:7px 3px;font-size:10px;font-weight:700;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer}.bdp-nav-btn span{font-size:20px}.bdp-nav-btn.active{color:var(--bdp-gold2)}.bdp-detail-header{padding:18px 18px 26px;color:#fff}.bdp-back{border:0;background:rgba(255,255,255,.08);color:#fff;width:40px;height:40px;border-radius:12px;cursor:pointer;font-size:20px}.bdp-detail-title{margin-top:18px}.bdp-detail-title small{color:var(--bdp-gold2);font-weight:700;letter-spacing:1px}.bdp-detail-title h1{color:#fff!important;margin:6px 0!important;font-size:28px!important}.bdp-detail-title p{margin:0;color:#c1c1c1}.bdp-detail-body{padding:0 16px 24px}.bdp-timeline{display:flex;justify-content:space-between;background:#fff;border:1px solid var(--bdp-line);border-radius:17px;padding:17px 10px;margin-bottom:14px;box-shadow:var(--bdp-shadow);overflow:auto}.bdp-timeline-step{min-width:64px;text-align:center;position:relative;color:#a6a19a}.bdp-timeline-step:after{content:"";position:absolute;top:10px;left:55%;right:-45%;height:2px;background:#ddd7cd}.bdp-timeline-step:last-child:after{display:none}.bdp-timeline-dot{width:22px;height:22px;margin:0 auto 6px;border-radius:50%;background:#ddd7cd;position:relative;z-index:2;border:5px solid #fff;box-shadow:0 0 0 1px #ddd7cd}.bdp-timeline-step.done{color:var(--bdp-green)}.bdp-timeline-step.done .bdp-timeline-dot{background:var(--bdp-green);box-shadow:0 0 0 1px var(--bdp-green)}.bdp-timeline-step.done:after{background:var(--bdp-green)}.bdp-timeline-step small{font-size:9px;font-weight:700}.bdp-info-card{background:#fff;border:1px solid var(--bdp-line);border-radius:17px;margin-bottom:13px;overflow:hidden;box-shadow:0 9px 28px rgba(15,12,8,.05)}.bdp-info-head{padding:14px 16px;background:linear-gradient(90deg,#f4f0e8,#fff);font-size:14px;font-weight:800;display:flex;justify-content:space-between;align-items:center}.bdp-info-head:after{content:"";width:34px;height:3px;border-radius:3px;background:var(--bdp-gold)}.bdp-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bdp-info-item{padding:13px 16px;border-top:1px solid #eee9e0}.bdp-info-item:nth-child(odd){border-right:1px solid #eee9e0}.bdp-info-item small{display:block;color:var(--bdp-muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:700}.bdp-info-item strong{display:block;margin-top:4px;font-size:14px;line-height:1.4}.bdp-locked{background:#121212!important;color:#fff;padding:19px;border-radius:16px;margin-bottom:13px}.bdp-locked strong{color:var(--bdp-gold2)}.bdp-action-stack{display:grid;gap:10px;margin:15px 0}.bdp-primary-action,.bdp-secondary-action,.bdp-danger-action{min-height:54px;border-radius:14px;border:0;padding:13px 18px;font-weight:800;font-size:13px;letter-spacing:.35px;text-transform:uppercase;cursor:pointer}.bdp-primary-action{background:linear-gradient(135deg,var(--bdp-gold2),var(--bdp-gold));color:#111;box-shadow:0 12px 28px rgba(201,162,39,.24)}.bdp-secondary-action{background:#111;color:#fff}.bdp-danger-action{background:#fff0f0;color:var(--bdp-red);border:1px solid #f0caca}.bdp-action-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.bdp-chat-panel{position:fixed;z-index:50;inset:0;background:#eef1f3;display:flex;flex-direction:column;max-width:980px;margin:0 auto}.bdp-chat-head{padding:16px;background:#0b0b0b;color:#fff;display:flex;align-items:center;gap:12px}.bdp-chat-head h2{color:#fff!important;font-size:18px!important;margin:0!important}.bdp-chat-head small{color:#bcbcbc}.bdp-chat-messages{flex:1;overflow:auto;padding:16px}.bdp-chat-msg{max-width:80%;margin:8px 0;padding:11px 13px;border-radius:14px;background:#fff;border:1px solid var(--bdp-line);box-shadow:0 5px 18px rgba(0,0,0,.04)}.bdp-chat-msg.driver{margin-left:auto;background:#121212;color:#fff;border-color:#121212}.bdp-chat-msg.operations{border-left:4px solid var(--bdp-gold)}.bdp-chat-msg.system{max-width:100%;text-align:center;background:transparent;border:0;box-shadow:none;color:var(--bdp-muted);font-size:12px}.bdp-chat-msg strong{display:block;font-size:11px;margin-bottom:3px}.bdp-chat-msg time{display:block;font-size:9px;opacity:.65;text-align:right;margin-top:5px}.bdp-chat-compose{padding:12px;background:#fff;border-top:1px solid var(--bdp-line);display:flex;gap:8px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.bdp-chat-compose textarea{flex:1;border:1px solid #d8d2c8;border-radius:13px;padding:11px;resize:none;min-height:48px;max-height:100px}.bdp-chat-compose button{width:48px;border:0;border-radius:13px;background:var(--bdp-gold);color:#111;font-size:20px}.bdp-modal{position:fixed;z-index:70;inset:0;background:rgba(0,0,0,.65);display:grid;place-items:end center;padding:14px}.bdp-modal-card{width:min(650px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px 22px 16px 16px;padding:21px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.bdp-modal-card h2{font-size:21px!important;margin:0 0 8px!important}.bdp-modal-card p{color:var(--bdp-muted)}.bdp-modal-card label{display:block;font-weight:700;font-size:12px;margin:13px 0}.bdp-modal-card textarea,.bdp-modal-card input,.bdp-modal-card select{width:100%;border:1px solid #d9d3c8;border-radius:11px;padding:11px;margin-top:6px}.bdp-modal-actions{display:grid;grid-template-columns:1fr 2fr;gap:9px;margin-top:16px}.bdp-toast{position:fixed;z-index:100;left:50%;transform:translateX(-50%);bottom:88px;width:min(90%,520px);padding:13px 15px;border-radius:13px;background:#111;color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.28);font-size:13px}.bdp-toast.error{background:#9f3434}.bdp-login-shell{min-height:80vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,#262116,#0b0b0b 44%)}.bdp-login-card{width:min(430px,100%);background:#fff;border-radius:22px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.bdp-brand-mark{width:58px;height:58px;border-radius:17px;background:var(--bdp-gold);display:grid;place-items:center;font-family:Georgia,serif;font-size:32px;margin-bottom:20px}.bdp-eyebrow{font-size:10px;letter-spacing:1.5px;color:#8a7440;font-weight:800}.bdp-login-card h1{font-size:29px!important;margin:7px 0!important}.bdp-login-card p{color:var(--bdp-muted)}.bdp-login-card label{font-weight:700;font-size:12px}.bdp-login-card input[type=text],.bdp-login-card input[type=password]{width:100%;border:1px solid #d9d3c8;border-radius:11px;padding:12px;margin:5px 0 13px}.bdp-login-card input[type=submit]{width:100%;border:0;border-radius:12px;background:#111;color:#fff;padding:14px;font-weight:800}.bdp-access-denied{max-width:600px;margin:50px auto;padding:25px;border-radius:16px;background:#fff;border:1px solid var(--bdp-line);text-align:center}.bdp-profile-card,.bdp-earnings-card{background:#fff;border:1px solid var(--bdp-line);border-radius:17px;padding:18px;margin-bottom:13px}.bdp-language-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.bdp-language-btn{border:1px solid var(--bdp-line);border-radius:12px;padding:12px;background:#fff;font-weight:700}.bdp-language-btn.active{background:#111;color:#fff;border-color:#111}.bdp-customer-shell{max-width:760px;background:linear-gradient(180deg,#0b0b0b 0,#111 180px,#eef1f3 181px);padding-bottom:20px}.bdp-customer-chat-wrap{padding:20px}.bdp-customer-hero{color:#fff;padding:12px 4px 28px}.bdp-customer-hero h1{color:#fff!important;margin:8px 0!important}.bdp-customer-chat-card{background:#fff;border-radius:20px;border:1px solid var(--bdp-line);overflow:hidden;box-shadow:var(--bdp-shadow)}.bdp-customer-chat-card .bdp-chat-messages{height:55vh}.bdp-install-banner{margin:0 16px 14px;background:linear-gradient(135deg,#2a2415,#0e0e0e);border:1px solid rgba(201,162,39,.45);color:#fff;border-radius:15px;padding:13px 15px;display:flex;justify-content:space-between;align-items:center;gap:12px}.bdp-install-banner button{border:0;border-radius:10px;background:var(--bdp-gold);padding:9px 12px;font-weight:800}.bdp-hidden{display:none!important}
@media(min-width:700px){.bdp-app-shell{min-height:calc(100vh - 40px);margin-top:20px;margin-bottom:20px;border-radius:26px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.16)}.bdp-bottom-nav{bottom:20px;border-radius:0 0 26px 26px}.bdp-modal{place-items:center}.bdp-modal-card{border-radius:22px}.bdp-content{padding-left:24px;padding-right:24px}.bdp-detail-body{padding-left:24px;padding-right:24px}}
@media(max-width:560px){.bdp-summary-grid{grid-template-columns:repeat(3,1fr)}.bdp-summary-card{padding:12px}.bdp-summary-card strong{font-size:17px}.bdp-info-grid{grid-template-columns:1fr}.bdp-info-item:nth-child(odd){border-right:0}.bdp-action-row{grid-template-columns:1fr}.bdp-topbar{padding-top:max(18px,env(safe-area-inset-top))}}
html:has(body.bdp-standalone-body){margin-top:0!important;background:#eceff1}body.bdp-standalone-body{margin:0!important;padding:0!important;min-height:100vh;background:#eceff1!important;overflow-x:hidden}body.bdp-standalone-body #bdp-standalone-main{min-height:100vh;margin:0;padding:0}body.bdp-standalone-body>.site-header,body.bdp-standalone-body>.site-footer,body.bdp-standalone-body header.site-header,body.bdp-standalone-body footer.site-footer{display:none!important}.bdp-test-banner{margin:0 16px 12px;padding:13px 15px;border-radius:15px;background:linear-gradient(135deg,#fff3cf,#f6d66f);border:1px solid #c9a227;color:#2f260d;display:grid;gap:3px}.bdp-test-banner strong{font-size:12px;letter-spacing:.8px}.bdp-test-banner span{font-size:11px;line-height:1.4}.bdp-gps-card{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--bdp-line);border-left:4px solid var(--bdp-orange);border-radius:16px;padding:14px 15px;margin-bottom:13px;box-shadow:0 10px 30px rgba(22,18,10,.055)}.bdp-gps-card.ready{border-left-color:var(--bdp-green)}.bdp-gps-card small{display:block;color:var(--bdp-muted);font-size:9px;letter-spacing:.8px;font-weight:800}.bdp-gps-card strong{display:block;font-size:13px;margin-top:3px}.bdp-gps-card button{border:0;border-radius:10px;background:#111;color:#fff;padding:10px 12px;font-weight:800;font-size:11px}.bdp-single-action{grid-template-columns:1fr!important}

/* Blacklux Driver v0.1.5: standalone app isolation */
html:has(body.bdp-standalone-body),body.bdp-standalone-body{margin-top:0!important}
body.bdp-standalone-body #wpadminbar,
body.bdp-standalone-body #tidio-chat,
body.bdp-standalone-body .crisp-client,
body.bdp-standalone-body #hubspot-messages-iframe-container,
body.bdp-standalone-body [id*="tawk" i],
body.bdp-standalone-body [class*="tawk" i],
body.bdp-standalone-body [id*="chaty" i],
body.bdp-standalone-body [class*="chaty" i],
body.bdp-standalone-body [id*="joinchat" i],
body.bdp-standalone-body [class*="joinchat" i],
body.bdp-standalone-body [id*="jivo" i],
body.bdp-standalone-body [class*="jivo" i],
body.bdp-standalone-body [id*="chatbot" i],
body.bdp-standalone-body [class*="chatbot" i],
body.bdp-standalone-body iframe[title*="chat" i],
body.bdp-standalone-body iframe[src*="chat" i]{display:none!important;visibility:hidden!important;pointer-events:none!important}
.bdp-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px 15px;border-top:1px solid #eee9e0;background:#fff}
.bdp-card-actions .bdp-primary-action,.bdp-card-actions .bdp-danger-action{min-height:46px;font-size:11px;padding:10px 12px}
.bdp-install-card .bdp-primary-action{width:100%;margin-top:8px}


/* v0.1.6: the Driver Platform is a standalone application and never embeds third-party frames. */
body.bdp-standalone-body > iframe,
body.bdp-standalone-body iframe:not(.bdp-allowed-frame) {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

.bdp-no-collection {
  margin: 0 0 16px;
  padding: 16px 18px;
  border: 2px solid #e7a91c;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff7df 0%, #fff 100%);
  color: #8a3000;
  text-align: center;
  font-size: 15px;
  line-height: 1.35;
  letter-spacing: .03em;
  box-shadow: 0 10px 28px rgba(201,162,39,.16);
}
.bdp-no-collection strong { font-weight: 900; }

.bdp-assignment-alert{margin:0 0 14px;padding:16px;border-radius:16px;background:linear-gradient(135deg,#0b0b0b,#2a2415);border:1px solid rgba(201,162,39,.65);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 14px 34px rgba(0,0,0,.18)}.bdp-assignment-alert div{display:grid;gap:4px}.bdp-assignment-alert small{color:#c9a227;font-size:9px;letter-spacing:1.4px;font-weight:800}.bdp-assignment-alert strong{font-size:15px}.bdp-assignment-alert span{font-size:11px;color:#d5d1c9;line-height:1.4}.bdp-assignment-alert button{border:0;border-radius:11px;background:#c9a227;color:#0b0b0b;padding:11px 13px;font-weight:800;white-space:nowrap}@media(max-width:480px){.bdp-assignment-alert{align-items:flex-start;flex-direction:column}.bdp-assignment-alert button{width:100%}}

.bdp-install-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:12px}.bdp-install-actions .bdp-primary-action,.bdp-install-actions .bdp-secondary-action{width:100%;margin:0}

/* v0.2.0 customer reminders, secure chat instructions and booking modifications */
.bdp-customer-info-card,.bdp-customer-change-card{background:#fff;border:1px solid var(--bdp-line);border-radius:18px;overflow:hidden;box-shadow:0 12px 36px rgba(20,15,5,.07);margin-bottom:14px}
.bdp-customer-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.bdp-customer-details-grid>div{padding:14px 16px;border-top:1px solid #eee9e0}
.bdp-customer-details-grid>div:nth-child(odd){border-right:1px solid #eee9e0}
.bdp-customer-details-grid .bdp-customer-wide{grid-column:1/-1;border-right:0}
.bdp-customer-details-grid small{display:block;color:var(--bdp-muted);font-size:9px;text-transform:uppercase;letter-spacing:.75px;font-weight:800}
.bdp-customer-details-grid strong{display:block;margin-top:5px;font-size:14px;line-height:1.45;overflow-wrap:break-word}
.bdp-customer-change-body{padding:17px}
.bdp-customer-change-body>p{margin:0 0 14px;color:var(--bdp-muted);font-size:13px;line-height:1.6}
.bdp-customer-change-card.is-closed{border-left:4px solid var(--bdp-orange)}
.bdp-deadline-pill{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:12px;background:#f7f4ef;border:1px solid #e4ded3;margin-bottom:15px}
.bdp-deadline-pill span{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--bdp-muted);font-weight:800}
.bdp-deadline-pill strong{font-size:12px;text-align:right}
.bdp-customer-change-form{display:grid;gap:13px}
.bdp-customer-change-form label{display:block;margin:0;color:var(--bdp-text);font-size:11px;font-weight:800}
.bdp-customer-change-form input,.bdp-customer-change-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #d8d2c8;border-radius:12px;padding:11px 12px;background:#fff;color:var(--bdp-text);font:inherit;resize:vertical;box-sizing:border-box}
.bdp-customer-change-form input:focus,.bdp-customer-change-form textarea:focus{outline:2px solid rgba(201,162,39,.28);border-color:var(--bdp-gold)}
.bdp-customer-change-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bdp-customer-change-form .bdp-primary-action{width:100%;margin-top:2px}
.bdp-chat-guidance{display:flex;gap:12px;padding:16px;background:linear-gradient(135deg,#fff7dd,#fff);border-bottom:1px solid #eadfbd}
.bdp-chat-guidance-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:#0b0b0b;color:var(--bdp-gold);display:grid;place-items:center;font-size:18px}
.bdp-chat-guidance strong{display:block;font-size:13px;line-height:1.4;color:#18150f}
.bdp-chat-guidance p{margin:5px 0 0;color:#685f4e;font-size:12px;line-height:1.55}
.bdp-customer-privacy{text-align:center;color:#79746b;font-size:11px;line-height:1.5;margin:14px 8px 4px}
.bdp-customer-chat-card .bdp-chat-head{justify-content:space-between}
.bdp-customer-chat-card .bdp-chat-messages{height:min(52vh,500px);min-height:260px}
.bdp-customer-chat-card .bdp-chat-msg.customer{margin-left:auto;background:#121212;color:#fff;border-color:#121212}
@media(max-width:520px){.bdp-customer-chat-wrap{padding:14px}.bdp-customer-details-grid,.bdp-customer-change-grid{grid-template-columns:1fr}.bdp-customer-details-grid>div:nth-child(odd){border-right:0}.bdp-customer-details-grid .bdp-customer-wide{grid-column:auto}.bdp-deadline-pill{align-items:flex-start;flex-direction:column}.bdp-deadline-pill strong{text-align:left}.bdp-customer-chat-card .bdp-chat-messages{height:46vh}}

/* v0.2.2 private driver quotation workflow */
.bdp-badge.quote_requested{background:#fff0cf;color:#7b5200;border:1px solid #e7c66d}
.bdp-quote-service-card{border-color:#d6b95d;box-shadow:0 14px 36px rgba(125,94,10,.12)}
.bdp-quote-notice{display:grid;gap:6px;margin:0 0 16px;padding:16px 18px;border:1px solid #d7b953;border-radius:14px;background:linear-gradient(135deg,#fff8df,#fff);color:#3e3210;box-shadow:0 10px 28px rgba(201,162,39,.12)}
.bdp-quote-notice strong{font-size:15px}
.bdp-quote-notice span{font-size:12px;line-height:1.55;color:#66582b}
.bdp-modal-card input[type="number"]{display:block;width:100%;margin-top:7px;border:1px solid #d8d2c8;border-radius:12px;padding:12px;background:#fff;color:var(--bdp-text);font:inherit;box-sizing:border-box}

/* v0.3.1 richer quotation details and mandatory compliance acceptance */
.bdp-large-modal{width:min(780px,100%)}
.bdp-modal-service-summary{margin:16px 0;border:1px solid var(--bdp-line);border-radius:15px;overflow:hidden;background:#fbfaf7}
.bdp-modal-service-summary h3{margin:0;padding:13px 15px;background:linear-gradient(90deg,#f2ede4,#fff);font-size:14px;color:var(--bdp-text)}
.bdp-compliance-card{margin:14px 0;border:2px solid var(--bdp-gold);border-radius:16px;background:linear-gradient(180deg,#fffaf0,#fff);overflow:hidden;box-shadow:0 12px 30px rgba(201,162,39,.12)}
.bdp-compliance-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;background:#17140d;color:#fff}
.bdp-compliance-head small{display:block;color:var(--bdp-gold2);font-size:9px;font-weight:800;letter-spacing:1px}
.bdp-compliance-head h3{margin:4px 0 0!important;color:#fff!important;font-size:17px!important}
.bdp-compliance-card>p{margin:0;padding:14px 17px;color:#655b48;font-size:12px;line-height:1.55;border-bottom:1px solid #eadfbd}
.bdp-compliance-scroll{max-height:360px;overflow:auto;white-space:pre-wrap;padding:17px;background:#fff;color:#28241b;font-size:12px;line-height:1.62;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.bdp-compliance-check{display:flex!important;align-items:flex-start;gap:11px;margin:16px 0!important;padding:15px;border:1px solid #d5b85b;border-radius:13px;background:#fff8df;color:#2d260f;line-height:1.5;cursor:pointer}
.bdp-compliance-check input{width:20px!important;height:20px!important;min-width:20px;margin:1px 0 0!important;accent-color:#c9a227}
.bdp-compliance-check span{font-size:12px;font-weight:800}
.bdp-compliance-summary .bdp-info-grid{background:#fff}
@media(max-width:560px){.bdp-compliance-scroll{max-height:300px}.bdp-large-modal{padding:17px}.bdp-modal-actions{grid-template-columns:1fr}.bdp-compliance-check span{font-size:11px}}

/* v0.4.0 Blacklux Guest App and complete chat archive */
.bdp-guest-shell{max-width:760px;background:linear-gradient(180deg,#0b0b0b 0,#111 245px,#eef1f3 246px);padding-bottom:86px}
.bdp-guest-hero{padding:8px 22px 34px;color:#fff}.bdp-guest-hero small{color:var(--bdp-gold2);font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}.bdp-guest-hero h1{color:#fff!important;font-size:30px!important;line-height:1.15!important;margin:8px 0!important}.bdp-guest-hero p{margin:0;color:#c8c8c8;font-size:13px;line-height:1.5}
.bdp-guest-page-title{padding:10px 22px 31px;color:#fff}.bdp-guest-page-title h1{color:#fff!important;margin:0 0 6px!important;font-size:29px!important}.bdp-guest-page-title p{margin:0;color:#bdbdbd}
.bdp-guest-content{padding:0 16px 24px}.bdp-guest-status{margin-top:-4px;margin-bottom:14px;padding:17px 18px;border-radius:16px;background:linear-gradient(135deg,#fff8df,#fff);border:1px solid #e1c978;box-shadow:0 12px 32px rgba(201,162,39,.12)}.bdp-guest-status small{display:block;color:#746437;font-size:9px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.bdp-guest-status strong{display:block;margin-top:5px;font-size:19px;color:#1d190f}
.bdp-guest-trip-card,.bdp-guest-panel,.bdp-guest-chat{background:#fff;border:1px solid var(--bdp-line);border-radius:18px;box-shadow:0 12px 36px rgba(20,15,5,.07);overflow:hidden;margin-bottom:14px}.bdp-guest-trip-card{padding:18px}.bdp-guest-trip-date{font-weight:800;font-size:15px;margin-bottom:16px}.bdp-guest-route{display:grid;gap:13px;margin-bottom:16px}.bdp-guest-route div{border-left:3px solid var(--bdp-gold);padding-left:12px}.bdp-guest-route small,.bdp-guest-details small{display:block;color:var(--bdp-muted);font-size:9px;text-transform:uppercase;letter-spacing:.75px;font-weight:800}.bdp-guest-route strong,.bdp-guest-details strong{display:block;margin-top:4px;font-size:14px;line-height:1.45;overflow-wrap:break-word}.bdp-guest-trip-card .bdp-secondary-action{width:100%}
.bdp-guest-quick{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bdp-guest-quick .bdp-primary-action,.bdp-guest-quick .bdp-secondary-action,.bdp-guest-quick .bdp-whatsapp-action{display:flex;align-items:center;justify-content:center;text-decoration:none;text-align:center}.bdp-guest-quick .bdp-primary-action{grid-column:1/-1}
.bdp-whatsapp-action{min-height:54px;border-radius:14px;padding:13px 18px;background:#1f9d62;color:#fff!important;font-weight:800;font-size:13px;letter-spacing:.3px;text-transform:uppercase;text-decoration:none;display:flex;align-items:center;justify-content:center}.bdp-whatsapp-action:hover{color:#fff;background:#188352}
.bdp-guest-panel>h2{margin:0!important;padding:15px 17px;background:linear-gradient(90deg,#f4f0e8,#fff);font-size:16px!important;color:var(--bdp-text)!important}.bdp-guest-panel>p{padding:17px;margin:0;color:var(--bdp-muted);line-height:1.6}.bdp-guest-panel .bdp-deadline-pill{margin:15px 17px}.bdp-guest-panel .bdp-customer-change-form{padding:0 17px 18px}
.bdp-guest-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bdp-guest-details>div{padding:14px 16px;border-top:1px solid #eee9e0}.bdp-guest-details>div:nth-child(odd){border-right:1px solid #eee9e0}.bdp-guest-details .bdp-guest-wide{grid-column:1/-1;border-right:0}
.bdp-guest-timeline{display:grid;grid-template-columns:repeat(5,minmax(70px,1fr));gap:0;overflow:auto;background:#fff;border:1px solid var(--bdp-line);border-radius:17px;padding:18px 8px;margin-bottom:14px;box-shadow:var(--bdp-shadow)}.bdp-guest-timeline>div{text-align:center;color:#a6a19a;position:relative;min-width:70px}.bdp-guest-timeline>div:after{content:"";position:absolute;height:2px;background:#ddd7cd;top:10px;left:55%;right:-45%}.bdp-guest-timeline>div:last-child:after{display:none}.bdp-guest-timeline span{display:block;width:22px;height:22px;margin:0 auto 7px;border-radius:50%;background:#ddd7cd;border:5px solid #fff;box-shadow:0 0 0 1px #ddd7cd;position:relative;z-index:2}.bdp-guest-timeline small{font-size:9px;font-weight:800}.bdp-guest-timeline .done{color:var(--bdp-green)}.bdp-guest-timeline .done span{background:var(--bdp-green);box-shadow:0 0 0 1px var(--bdp-green)}.bdp-guest-timeline .done:after{background:var(--bdp-green)}
.bdp-guest-chat .bdp-chat-messages{height:min(55vh,560px);min-height:300px}.bdp-guest-chat .bdp-chat-msg.customer{margin-left:auto;background:#111;color:#fff;border-color:#111}.bdp-guest-chat .bdp-chat-compose{position:sticky;bottom:0}.bdp-export-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:16px}.bdp-export-actions a,.bdp-chat-export-bar a{display:flex;align-items:center;justify-content:center;text-align:center;border-radius:10px;border:1px solid #d8d2c8;background:#fff;color:#171717;text-decoration:none;font-weight:800;font-size:11px;padding:10px}.bdp-export-actions a:hover,.bdp-chat-export-bar a:hover{border-color:var(--bdp-gold);color:#171717}
.bdp-help-card{padding-bottom:17px}.bdp-help-card .bdp-secondary-action,.bdp-help-card .bdp-whatsapp-action{width:calc(100% - 34px);margin:0 17px 10px}.bdp-privacy-callout{margin:7px 17px 0;padding:13px;border-radius:12px;background:#fff5e1;border:1px solid #ead3a0;color:#6a4d13;font-size:12px;line-height:1.5}
.bdp-language-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:17px}.bdp-language-grid button{min-height:48px;border-radius:12px;border:1px solid #d8d2c8;background:#fff;font-weight:800;cursor:pointer}.bdp-language-grid button.active{background:#0b0b0b;color:#fff;border-color:#0b0b0b}.bdp-guest-panel .bdp-install-actions{padding:0 17px 17px}.bdp-guest-full{display:flex!important;width:100%;align-items:center;justify-content:center;text-decoration:none}
.bdp-guest-nav{position:fixed;z-index:40;left:50%;transform:translateX(-50%);bottom:0;width:min(760px,100%);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(8,8,8,.97);backdrop-filter:blur(18px);border-top:1px solid rgba(255,255,255,.08);padding:8px 5px max(8px,env(safe-area-inset-bottom))}.bdp-guest-nav button{border:0;background:transparent;color:#858585;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:9px;font-weight:800;padding:6px 2px;cursor:pointer}.bdp-guest-nav button span{font-size:19px}.bdp-guest-nav button.active{color:var(--bdp-gold2)}
.bdp-chat-export-bar{padding:11px 14px;background:#f7f4ef;border-bottom:1px solid var(--bdp-line);display:flex;align-items:center;justify-content:space-between;gap:10px}.bdp-chat-export-bar strong{font-size:11px}.bdp-chat-export-bar>div{display:flex;gap:7px;flex-wrap:wrap}.bdp-chat-export-bar a{padding:7px 9px;font-size:9px}
@media(max-width:560px){.bdp-guest-details{grid-template-columns:1fr}.bdp-guest-details>div:nth-child(odd){border-right:0}.bdp-guest-details .bdp-guest-wide{grid-column:auto}.bdp-guest-quick{grid-template-columns:1fr}.bdp-guest-quick .bdp-primary-action{grid-column:auto}.bdp-export-actions{grid-template-columns:1fr}.bdp-chat-export-bar{align-items:flex-start;flex-direction:column}.bdp-chat-export-bar>div{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.bdp-guest-hero h1{font-size:27px!important}}
.bdp-login-help{text-align:center;margin:15px 0 0!important}.bdp-login-help a{color:#695310;font-weight:800}.bdp-account-trips{display:grid;gap:9px;margin-bottom:14px}.bdp-account-trips h2{margin:14px 2px 2px!important;font-size:17px!important}.bdp-account-trip{width:100%;display:grid;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:14px;align-items:center;padding:15px;border:1px solid var(--bdp-line);border-radius:15px;background:#fff;color:#111;text-align:left;cursor:pointer;box-shadow:0 8px 22px rgba(15,12,8,.05)}.bdp-account-trip.active{border:2px solid var(--bdp-gold);background:#fffaf0}.bdp-account-trip small{display:block;color:#85703a;font-size:9px;font-weight:800;letter-spacing:.7px}.bdp-account-trip strong{display:block;margin-top:3px}.bdp-account-route{font-size:12px;line-height:1.45;color:#4f5557}@media(max-width:560px){.bdp-account-trip{grid-template-columns:1fr}.bdp-account-route{padding-top:8px;border-top:1px solid #eee9e0}}

/* v0.4.1 — Blacklux driver acceptance and quotation usability */
.bdp-app-shell[data-view="driver"] .bdp-primary-action,.bdp-modal .bdp-primary-action{background:#0b0b0b!important;color:#fff!important;box-shadow:0 12px 28px rgba(0,0,0,.18)!important}
.bdp-app-shell[data-view="driver"] .bdp-primary-action:hover,.bdp-app-shell[data-view="driver"] .bdp-primary-action:focus,.bdp-modal .bdp-primary-action:hover,.bdp-modal .bdp-primary-action:focus{background:#1a1a1a!important;color:#fff!important}
.bdp-app-shell .bdp-hero{background:#111!important;padding:18px 20px 30px!important}.bdp-app-shell .bdp-hero h1{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.28)}.bdp-app-shell .bdp-hero p{color:#e0e0e0!important;font-weight:500}.bdp-app-shell .bdp-hero small{color:#f05a7d!important;font-weight:900}.bdp-app-shell .bdp-section-head h2,.bdp-app-shell .bdp-service-card strong,.bdp-app-shell .bdp-summary-card strong,.bdp-app-shell .bdp-profile-card h2,.bdp-app-shell .bdp-earnings-card h2{color:#111!important}.bdp-app-shell .bdp-section-head button{color:#c42452!important;font-weight:900}.bdp-app-shell .bdp-empty{color:#555!important}.bdp-app-shell .bdp-summary-card small,.bdp-app-shell .bdp-info-item small{color:#625d55!important}.bdp-app-shell .bdp-test-banner{color:#2b2108!important}.bdp-app-shell .bdp-test-banner span{color:#40320d!important}.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{color:#c1c1c1}.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn.active{color:#ff4775}
.bdp-permission-actions{display:grid;grid-template-columns:1fr;gap:18px;margin:24px 0}.bdp-permission-actions .bdp-primary-action,.bdp-permission-actions .bdp-secondary-action{width:100%;margin:0;background:#0b0b0b!important;color:#fff!important;box-shadow:0 12px 28px rgba(0,0,0,.16)}.bdp-enrollment-gate video{display:block;width:100%;max-height:52vh;object-fit:cover;border-radius:16px;background:#111;margin:20px 0;transform:scaleX(-1)}.bdp-enrollment-gate .bdp-primary-action{width:100%;background:#0b0b0b!important;color:#fff!important}.bdp-enrollment-gate>small{color:#9a7a1d;font-weight:800;letter-spacing:1.2px}
.bdp-compliance-check input{accent-color:#0b0b0b!important}
.bdp-modal-card input[type="text"],.bdp-modal-card input[type="number"]{background:#fff!important;color:#0b0b0b!important;-webkit-text-fill-color:#0b0b0b!important;opacity:1!important;pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important}
.bdp-modal-card input:focus{outline:3px solid rgba(11,11,11,.12)!important;border-color:#0b0b0b!important}
.bdp-face-request-modal{background:rgba(65,0,0,.9)!important}.bdp-face-request-card{border:0!important;border-top:9px solid #d60000!important;box-shadow:0 0 0 5px rgba(214,0,0,.16),0 30px 80px rgba(0,0,0,.55)!important}.bdp-face-request-card>small{display:block;color:#b00000;font-weight:900;letter-spacing:1px;margin-bottom:8px}.bdp-face-request-card h2{color:#b00000!important;font-size:25px!important}.bdp-face-safety-note{margin:16px 0;padding:14px;border-radius:13px;background:#fff0f0;border:1px solid #efb4b4;color:#6f0000;font-weight:700;line-height:1.45}.bdp-face-required-label{display:inline-block;padding:7px 10px;border-radius:9px;background:#fff0f0;color:#b00000}.bdp-face-request-card .bdp-primary-action{background:#d60000!important;border-color:#d60000!important;color:#fff!important}.bdp-face-request-card .bdp-primary-action:disabled{opacity:.7;cursor:wait}
.bdp-modal-card{padding-bottom:max(26px,calc(env(safe-area-inset-bottom) + 18px))}.bdp-modal-actions{position:sticky;bottom:0;background:#fff;padding:10px 0 max(4px,env(safe-area-inset-bottom));z-index:2}
.bdp-quote-amount-label input{font-size:18px!important;font-weight:800!important;letter-spacing:.02em}
.bdp-modal .bdp-quote-submit{background:linear-gradient(135deg,#ff2864,#ed1552)!important;color:#fff!important;border:1px solid #ff4f7d!important;box-shadow:0 12px 28px rgba(237,21,82,.28)!important}
.bdp-modal .bdp-quote-submit:hover,.bdp-modal .bdp-quote-submit:focus{background:linear-gradient(135deg,#ff3c72,#d90f47)!important;color:#fff!important;outline:2px solid rgba(56,211,230,.32)!important}
.bdp-modal .bdp-quote-submit:disabled{opacity:.55!important;cursor:wait!important}
.bdp-compliance-details{margin:0;background:#fff}
.bdp-compliance-details summary{padding:12px 17px;color:#17140d;font-size:12px;font-weight:850;cursor:pointer;list-style:none;border-top:1px solid #eadfbd}
.bdp-compliance-details summary::-webkit-details-marker{display:none}
.bdp-compliance-details summary:after{content:"+";float:right;color:var(--bdp-gold);font-size:18px;line-height:14px}
.bdp-compliance-details[open] summary:after{content:"−"}
.bdp-compliance-details:not([open]) .bdp-compliance-scroll{display:none}
.bdp-driver-footer{display:grid;gap:12px;margin:18px 0 6px}
.bdp-support-block,.bdp-driver-install{border-radius:17px;overflow:hidden;box-shadow:var(--bdp-shadow)}
.bdp-support-block{padding:17px;background:#fff;border:1px solid var(--bdp-line)}
.bdp-support-block h3,.bdp-driver-install h3{margin:0 0 5px!important;font-size:16px!important}
.bdp-support-block p,.bdp-driver-install p{margin:0 0 13px;font-size:12px;line-height:1.5}
.bdp-support-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bdp-support-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid #d8d2c8;border-radius:11px;background:#fff;color:#111;text-align:center;text-decoration:none;font-size:10px;font-weight:850}
.bdp-driver-install{display:grid;grid-template-columns:1fr 112px;align-items:center;gap:16px;padding:17px;background:#102229;color:#fff;border:1px solid rgba(201,162,39,.35)}
.bdp-driver-install h3{color:#fff!important}.bdp-driver-install p{color:#c5cfd1}.bdp-driver-install img{width:112px;height:112px;border-radius:10px;background:#fff;padding:5px}.bdp-driver-install .bdp-install-actions{grid-template-columns:1fr 1fr}.bdp-driver-install .bdp-secondary-action{border:1px solid rgba(255,255,255,.25)}
@media(max-width:560px){.bdp-support-actions{grid-template-columns:1fr}.bdp-driver-install{grid-template-columns:1fr}.bdp-driver-install img{width:104px;height:104px}.bdp-driver-install .bdp-install-actions{grid-template-columns:1fr}}

/* v0.4.2 — vivid operational status colours and black compliance selector */
.bdp-badge.assigned{background:#ffe500!important;color:#171300!important;border:1px solid #d6bd00!important}
.bdp-badge.accepted{background:#ff8a00!important;color:#1b0d00!important;border:1px solid #db7300!important}
.bdp-badge.completed,.bdp-badge.closed{background:#20b85a!important;color:#fff!important;border:1px solid #12823d!important}
.bdp-service-card:has(.bdp-badge.assigned){border-left:6px solid #ffe500!important}
.bdp-service-card:has(.bdp-badge.assigned),.bdp-assignment-alert{animation:bdp-driver-response-alert 1.05s ease-in-out infinite}
@keyframes bdp-driver-response-alert{0%,100%{box-shadow:0 10px 30px rgba(255,40,0,.12)}50%{box-shadow:0 0 0 5px rgba(255,40,0,.42);transform:scale(.985)}}
@media (prefers-reduced-motion:reduce){.bdp-service-card:has(.bdp-badge.assigned),.bdp-assignment-alert{animation:none;outline:4px solid #ff2800}}
.bdp-service-card:has(.bdp-badge.accepted){border-left:6px solid #ff8a00!important}
.bdp-service-card:has(.bdp-badge.completed),.bdp-service-card:has(.bdp-badge.closed){border-left:6px solid #20b85a!important}
.bdp-compliance-check input[type="checkbox"]{-webkit-appearance:none!important;appearance:none!important;width:21px!important;height:21px!important;min-width:21px!important;border:2px solid #0b0b0b!important;border-radius:50%!important;background:#fff!important;display:grid!important;place-items:center!important;cursor:pointer!important}
.bdp-compliance-check input[type="checkbox"]:checked{background:#0b0b0b!important;box-shadow:inset 0 0 0 4px #fff!important}
.bdp-compliance-check input[type="checkbox"]:checked:after{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#0b0b0b}
.bdp-app-shell[data-view="driver"] button[data-service-action="accepted"],.bdp-modal button[data-modal-submit]{background:#0b0b0b!important;color:#fff!important;border-color:#0b0b0b!important;background-image:none!important}
.bdp-badge.assigned{background:#ffe100!important;color:#1c1800!important;border-color:#d4bc00!important}.bdp-badge.accepted,.bdp-badge.arrived,.bdp-badge.passenger_on_board,.bdp-badge.passenger_dropped_off{background:#ff8a00!important;color:#fff!important;border-color:#d97000!important}.bdp-badge.completed,.bdp-badge.closed{background:#20a957!important;color:#fff!important;border-color:#14783c!important}.bdp-service-card:has(.bdp-badge.arrived),.bdp-service-card:has(.bdp-badge.passenger_on_board),.bdp-service-card:has(.bdp-badge.passenger_dropped_off){border-left:6px solid #ff8a00!important}
.bdp-login-card>.bdp-driver-login-logo{display:block!important;width:78px!important;height:78px!important;max-width:78px!important;min-width:78px!important;object-fit:cover!important;border-radius:20px!important;margin:0 0 18px 0!important;box-shadow:0 8px 20px rgba(0,0,0,.2)!important}.bdp-app-logo-image{width:44px;height:44px;object-fit:cover;border-radius:13px;box-shadow:0 8px 24px rgba(0,0,0,.3)}.bdp-login-card,.bdp-login-card label,.bdp-login-card p,.bdp-login-card .bdp-eyebrow{color:#111!important}.bdp-login-card input[type=submit]{background:#111!important;color:#fff!important}
.bdp-map-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bdp-map-actions:has(button:only-child){grid-template-columns:1fr}@media(max-width:520px){.bdp-map-actions{grid-template-columns:1fr}}
.bdp-login-card #loginform>p>label,.bdp-login-card #loginform .login-remember label,.bdp-login-card #loginform .login-remember,.bdp-login-card #loginform label{color:#111!important;-webkit-text-fill-color:#111!important}.bdp-login-card #loginform .login-remember input{accent-color:#111!important}.bdp-login-card .bdp-eyebrow{color:#ff2f68!important;-webkit-text-fill-color:#ff2f68!important}

/* v0.7.80 — unified Blacklux Control restyling for Driver and Guest apps */
:root{--bdp-black:#071722;--bdp-black2:#102633;--bdp-gold:#39d2e6;--bdp-gold2:#65e5f2;--bdp-warm:#edf3f6;--bdp-card:#fff;--bdp-text:#10202b;--bdp-muted:#657883;--bdp-line:#d5e3e8;--bdp-green:#17a673;--bdp-blue:#25b8d0;--bdp-orange:#ff8a00;--bdp-red:#f51f5b;--bdp-shadow:0 16px 42px rgba(7,23,34,.10)}
html,body.bdp-standalone-body,body:has(.bdp-app-shell),body:has(.bdp-login-shell){background:#edf3f6!important;color:#10202b}
.bdp-app-shell{background:linear-gradient(180deg,#071722 0,#102633 218px,#edf3f6 219px)!important;color:#10202b}
.bdp-guest-shell{background:linear-gradient(180deg,#071722 0,#102633 245px,#edf3f6 246px)!important}
.bdp-topbar{background:linear-gradient(135deg,#071722,#102633);border-bottom:1px solid rgba(57,210,230,.18)}
.bdp-logo-mark,.bdp-brand-mark{background:#102d3b!important;color:#65e5f2!important;border:1px solid rgba(57,210,230,.38);box-shadow:0 10px 26px rgba(0,0,0,.22)!important}
.bdp-logo-copy strong{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:800}.bdp-logo-copy small{color:#65e5f2!important}
.bdp-icon-btn,.bdp-back{background:#122d3b!important;border-color:rgba(57,210,230,.25)!important;color:#65e5f2!important}
.bdp-hero,.bdp-app-shell .bdp-hero{background:linear-gradient(135deg,#071722,#102633)!important}.bdp-hero small,.bdp-app-shell .bdp-hero small,.bdp-guest-hero small,.bdp-detail-title small{color:#65e5f2!important}.bdp-hero p,.bdp-app-shell .bdp-hero p,.bdp-guest-hero p,.bdp-guest-page-title p{color:#c5d5dc!important}
.bdp-summary-card,.bdp-service-card,.bdp-info-card,.bdp-profile-card,.bdp-earnings-card,.bdp-guest-trip-card,.bdp-guest-panel,.bdp-guest-chat,.bdp-account-trip,.bdp-timeline,.bdp-guest-timeline,.bdp-support-block{border-color:#d5e3e8!important;box-shadow:var(--bdp-shadow)!important}
.bdp-service-card{border-top:3px solid #39d2e6}.bdp-service-card-top{background:linear-gradient(180deg,#fff,#f9fcfd)}
.bdp-route-line:before{background:linear-gradient(#39d2e6,#b9d9e1)}.bdp-route-dot{background:#39d2e6;box-shadow:0 0 0 1px #39d2e6}
.bdp-service-footer,.bdp-chat-export-bar{background:#f3f8fa!important;border-color:#d5e3e8!important}
.bdp-info-head,.bdp-guest-panel>h2,.bdp-modal-service-summary h3{background:linear-gradient(90deg,#eaf5f8,#fff)!important}.bdp-info-head:after{background:#39d2e6}
.bdp-locked{background:#071722!important;border:1px solid rgba(57,210,230,.35)!important}.bdp-locked strong{color:#65e5f2!important}
.bdp-primary-action,.bdp-app-shell[data-view="driver"] .bdp-primary-action,.bdp-modal .bdp-primary-action,.bdp-login-card input[type=submit],.bdp-guest-login-form button{background:linear-gradient(135deg,#ff2f68,#ed1552)!important;color:#fff!important;border-color:#ff4f7d!important;box-shadow:0 12px 28px rgba(237,21,82,.24)!important}
.bdp-primary-action:hover,.bdp-primary-action:focus,.bdp-app-shell[data-view="driver"] .bdp-primary-action:hover,.bdp-app-shell[data-view="driver"] .bdp-primary-action:focus,.bdp-modal .bdp-primary-action:hover,.bdp-modal .bdp-primary-action:focus{background:linear-gradient(135deg,#ff477b,#d90f47)!important;color:#fff!important}
.bdp-secondary-action{background:#071722!important;color:#fff!important;border:1px solid #183847!important}.bdp-secondary-action:hover{background:#102d3b!important;color:#65e5f2!important}
.bdp-danger-action{background:#fff1f5!important;color:#cf174a!important;border-color:#ffc1d2!important}
.bdp-whatsapp-action{background:#17a673!important}.bdp-whatsapp-action:hover{background:#11865c!important}
.bdp-bottom-nav,.bdp-guest-nav{background:rgba(7,23,34,.98)!important;border-top-color:rgba(57,210,230,.2)!important}.bdp-bottom-nav .bdp-nav-btn,.bdp-guest-nav button{color:#a9bdc6!important}.bdp-bottom-nav .bdp-nav-btn.active,.bdp-guest-nav button.active{color:#65e5f2!important}
.bdp-chat-panel{background:#edf3f6}.bdp-chat-head{background:#071722!important;border-bottom:3px solid #39d2e6}.bdp-chat-msg.driver,.bdp-guest-chat .bdp-chat-msg.customer{background:#102633!important;border-color:#102633!important}.bdp-chat-msg.operations{border-left-color:#39d2e6!important}.bdp-chat-compose button{background:#f51f5b!important;color:#fff!important}
.bdp-modal{background:rgba(3,13,20,.76)}.bdp-modal-card{border:1px solid #cfe0e6;border-top:4px solid #39d2e6}.bdp-modal-card input:focus,.bdp-modal-card textarea:focus,.bdp-modal-card select:focus{outline:3px solid rgba(57,210,230,.18)!important;border-color:#39d2e6!important}
.bdp-compliance-card{border-color:#39d2e6!important;background:linear-gradient(180deg,#eefafd,#fff)!important;box-shadow:0 12px 30px rgba(57,210,230,.12)!important}.bdp-compliance-head{background:#071722!important}.bdp-compliance-head small{color:#65e5f2!important}.bdp-compliance-check{border-color:#8edce7!important;background:#edfafd!important}.bdp-compliance-check input[type="checkbox"]{border-color:#071722!important}.bdp-compliance-check input[type="checkbox"]:checked{background:#071722!important}
.bdp-install-banner,.bdp-driver-install{background:linear-gradient(135deg,#071722,#123442)!important;border-color:rgba(57,210,230,.38)!important}.bdp-install-banner button{background:#f51f5b!important;color:#fff!important}
.bdp-guest-status{background:linear-gradient(135deg,#e9fafd,#fff)!important;border-color:#91dde7!important;box-shadow:0 12px 32px rgba(57,210,230,.12)!important}.bdp-guest-status small{color:#167f91!important}.bdp-guest-route div{border-left-color:#39d2e6!important}
.bdp-guest-driver-card{background:#071722!important;border-color:#39d2e6!important}.bdp-guest-driver-card img{border-color:#39d2e6!important}.bdp-guest-driver-card small{color:#65e5f2!important}
.bdp-account-trip.active{border-color:#39d2e6!important;background:#eefafd!important}.bdp-account-trip small{color:#16899b!important}
.bdp-language-grid button.active,.bdp-language-btn.active{background:#071722!important;color:#65e5f2!important;border-color:#39d2e6!important}
.bdp-deadline-pill,.bdp-privacy-callout{background:#eefafd!important;border-color:#a5dfe7!important;color:#315866!important}
.bdp-login-shell{min-height:100svh!important;background:radial-gradient(circle at 20% 0,#123c4b 0,#071722 42%,#03101a 100%)!important;position:relative;overflow:hidden}.bdp-login-shell:before{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(57,210,230,.15);border-radius:50%;top:-170px;right:-130px;box-shadow:0 0 80px rgba(57,210,230,.09)}
.bdp-login-card{position:relative;width:min(440px,100%);border:1px solid rgba(57,210,230,.35)!important;border-top:4px solid #39d2e6!important;border-radius:22px!important;background:#fff!important;box-shadow:0 34px 90px rgba(0,0,0,.38)!important}
.bdp-login-card:after{content:"SECURE ACCESS";position:absolute;top:20px;right:24px;color:#1590a3;font-size:9px;font-weight:900;letter-spacing:1.2px}.bdp-login-card .bdp-eyebrow{color:#1590a3!important;-webkit-text-fill-color:#1590a3!important}.bdp-login-card h1{color:#071722!important}.bdp-login-card p{color:#657883!important}
.bdp-login-card input[type=text],.bdp-login-card input[type=email],.bdp-login-card input[type=password]{border-color:#cfe0e6!important;background:#fafdfe!important;color:#10202b!important}.bdp-login-card input:focus{outline:3px solid rgba(57,210,230,.18);border-color:#39d2e6!important}.bdp-login-card .bdp-login-help a{color:#147f90!important}.bdp-login-card #loginform .login-remember input,.bdp-login-remember input{accent-color:#39d2e6!important}
.bdp-app-loading{color:#fff}.bdp-loader-ring{border-color:rgba(255,255,255,.18);border-top-color:#39d2e6}
.bdp-access-denied{border-color:#cfe0e6!important;border-top:4px solid #f51f5b!important;box-shadow:var(--bdp-shadow)}
.bdp-test-banner{background:linear-gradient(135deg,#fff2c8,#fff9e5)!important;border-color:#ffcf4a!important}
@media(min-width:700px){.bdp-app-shell{box-shadow:0 28px 80px rgba(7,23,34,.18)!important}}
@media(max-width:520px){.bdp-login-card:after{display:none}.bdp-login-card{border-radius:18px!important}.bdp-app-shell{background:linear-gradient(180deg,#071722 0,#102633 205px,#edf3f6 206px)!important}}

/* v0.7.94 — mandatory GPS arrival reminder */
.bdp-gps-alarm{position:fixed;inset:0;z-index:2147483647;background:#d80018;color:#fff;display:grid;place-items:center;padding:24px;text-align:center;animation:bdpGpsPulse 1.15s infinite alternate}
.bdp-gps-alarm-card{width:min(560px,100%);display:grid;gap:18px;justify-items:center}.bdp-gps-alarm small{font-weight:900;letter-spacing:2px}.bdp-gps-alarm h1{margin:0;color:#fff;font-size:clamp(34px,9vw,64px);line-height:.98}.bdp-gps-alarm p{margin:0;color:#fff;font-size:20px;font-weight:700}.bdp-gps-alarm button{width:100%;min-height:72px;border:0;border-radius:18px;background:#fff;color:#b40014;font-size:22px;font-weight:950;padding:18px;box-shadow:0 16px 40px rgba(0,0,0,.3)}
@keyframes bdpGpsPulse{from{background:#c90017}to{background:#f1132c}}

/* v0.7.96 — keep the current service confirmation within thumb reach */
.bdp-action-stack>[data-service-action],.bdp-action-stack>[data-action="open-complete"]{position:sticky;bottom:92px;z-index:12;box-shadow:0 15px 35px rgba(7,23,34,.28)!important}

/* v0.7.116 — separate commitments, calendar and completed-service history. */
.bdp-app-shell .bdp-bottom-nav{padding-left:6px!important;padding-right:6px!important}.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{min-width:0}.bdp-calendar-month{margin:0 0 22px}.bdp-calendar-month>h2{text-transform:capitalize;font-size:20px!important}.bdp-calendar-entry{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;margin:9px 0;padding:13px;border:1px solid var(--bdp-line);border-radius:16px;background:#fff;box-shadow:var(--bdp-shadow);cursor:pointer}.bdp-calendar-day{display:grid;place-items:center;padding:7px;border-radius:12px;background:#071722;color:#fff}.bdp-calendar-day strong{font-size:23px}.bdp-calendar-day small{text-transform:uppercase;color:#63e5f2}.bdp-calendar-entry>div:nth-child(2){display:grid;gap:4px}.bdp-calendar-entry>div:nth-child(2)>span{color:var(--bdp-muted);font-size:11px}@media(max-width:520px){.bdp-calendar-entry{grid-template-columns:50px 1fr}.bdp-calendar-entry>.bdp-badge{grid-column:2;justify-self:start}.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{font-size:7px!important}}
.bdp-gps-alarm-actions{display:grid;gap:12px;width:min(440px,100%);margin:20px auto 0}.bdp-gps-alarm-actions button{width:100%}.bdp-gps-alarm-actions [data-gps-dismiss]{background:#fff!important;color:#8b0000!important;border:3px solid #8b0000!important}
.bdp-change-list{display:grid;gap:9px;margin:16px 0}.bdp-change-list h3{margin:0;color:#a40000}.bdp-change-list article{padding:12px;border:1px solid #efb2b2;border-radius:12px;background:#fff5f5}.bdp-change-list article>strong{display:block;margin-bottom:7px}.bdp-change-list article>div{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.bdp-change-list article span:last-child{font-weight:900;color:#087743}
.bdp-permission-status-list{display:grid;gap:8px;margin:15px 0}.bdp-permission-status-list>div{display:grid;grid-template-columns:14px 1fr auto;gap:9px;align-items:center;padding:10px;border-radius:10px;background:#eef3f5}.bdp-permission-status-list span{width:12px;height:12px;border-radius:50%}.bdp-permission-status-list .active span{background:#16b85a;box-shadow:0 0 10px #16b85a}.bdp-permission-status-list .inactive span{background:#d71920;box-shadow:0 0 10px #d71920}.bdp-permission-status-list b{font-size:10px}.bdp-permission-status-list .active b{color:#08753a}.bdp-permission-status-list .inactive b{color:#a40000}.bdp-permission-profile-actions{display:grid;gap:9px}.bdp-permission-profile-actions button{width:100%}

/* v0.7.124 — real glass-fragment intro videos for Driver and Guest login. */
.bdp-gps-alarm-actions button{position:relative!important;z-index:2!important;pointer-events:auto!important;touch-action:manipulation!important}.bdp-gps-alarm-actions button:disabled{opacity:.72!important;cursor:wait!important}
.bdp-video-intro:before,.bdp-video-intro:after{display:none!important}.bdp-video-intro{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#000!important}.bdp-video-intro video{display:block!important;position:absolute!important;z-index:1!important;inset:0!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;max-width:none!important;height:100vh!important;max-height:none!important;margin:0!important;padding:0!important;transform:none!important;object-fit:cover!important;object-position:50% 50%!important;background:#000!important}.bdp-video-intro button{z-index:4!important}

.bdp-fuel-driver-card{border:2px solid #d5ad39!important;background:linear-gradient(135deg,#0b2029,#172f38)!important;box-shadow:0 10px 30px rgba(213,173,57,.18)!important}.bdp-fuel-driver-card .bdp-info-head{color:#f3d77d!important;font-size:18px!important}.bdp-fuel-driver-card strong{font-size:20px!important}.bdp-fuel-driver-card p{margin:12px 0 0;color:#d7e2e7}

/* ------------------------------------------------------------------
   0.7.486 — Riquadri servizio che si allungavano a dismisura.
   Gli elementi disposti in riga non avevano una larghezza minima: quando
   un testo contiene una parola lunga senza spazi (un indirizzo scritto
   tutto attaccato, un codice, un collegamento) la colonna collassa e il
   testo va a capo una lettera per riga, allungando il riquadro per tutta
   la pagina. Le altre schede sembravano a posto solo perche' i loro testi
   avevano spazi in cui spezzarsi.
   ------------------------------------------------------------------ */

.bdp-service-card-top,
.bdp-service-footer,
.bdp-gps-card,
.bdp-guest-driver-card {
    min-width: 0;
}

.bdp-service-card-top > *,
.bdp-service-footer > *,
.bdp-gps-card > *,
.bdp-guest-driver-card > * {
    min-width: 0;
}

/* Le parole lunghe si spezzano dove serve, ma senza mai ridurre la
   colonna a un carattere per riga. */
.bdp-service-card,
.bdp-service-card * {
    overflow-wrap: break-word;
    word-break: normal;
}

/* Indirizzi e note su piu righe restano leggibili senza allungare la
   scheda: oltre le quattro righe il testo viene troncato con i puntini. */
.bdp-service-card .bdp-route-row strong {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Servizio accettato dal vettore ma ancora senza autista.
   Colore acceso perche e una cosa che va chiusa entro 24 ore dalla partenza. */
.bdp-badge-scoperto{background:#ffe8e2;color:#c0392b;border:1px solid #f0a999;font-weight:800;letter-spacing:.06em;text-align:center;border-radius:8px;padding:6px 10px;font-size:11px}
.bdp-scoperto-card{border-left:4px solid #c0392b}
.bdp-scelta-autista span{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#7b8b99;font-weight:700}
.bdp-ingresso .bdp-modal-card{text-align:center;max-width:420px}
.bdp-ingresso [data-ingresso].active{outline:2px solid #1239a2;outline-offset:2px}

/* Viaggio aperto a tutti i vettori: lo prende chi arriva primo. */
.bdp-badge-disponibile{background:#e6f7ee;color:#0b5f3a;border:1px solid #7fd0a8;font-weight:800;letter-spacing:.06em;border-radius:8px;padding:6px 10px;font-size:11px}
.bdp-disponibile-card{border-left:4px solid #0b5f3a}

/* Compenso del vettore sul viaggio disponibile: e il dato su cui decide. */
.bdp-disponibile-compenso{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#e6f7ee;border:1px solid #7fd0a8}
.bdp-disponibile-compenso small{font-size:10.5px;letter-spacing:.09em;color:#0b5f3a;font-weight:800}
.bdp-disponibile-compenso strong{font-size:19px;color:#0b5f3a}

/* FILIGRANA. Un velo sopra tutto che non intercetta i clic: firma la schermata
   con il marchio e con chi la sta guardando. Non impedisce la fotografia dello
   schermo, che da una pagina web non si puo impedire: la rende riconoscibile. */
.bdp-filigrana{position:fixed;inset:0;z-index:99998;pointer-events:none;overflow:hidden;user-select:none}
/* Il disegno e un motivo che si ripete, impostato dal programma: qui restano
   solo la posizione e il fatto che non intercetta i clic. */
@media print{.bdp-filigrana{opacity:2}}

/* Contenuto offuscato quando l app va in secondo piano: e il momento in cui si
   fotografa dalla schermata delle app aperte. */
body.bdp-nascondi .bdp-app-shell,body.bdp-nascondi .bdp-modal{filter:blur(13px)}

/* Le sezioni spostate dentro Profilo: pulsanti grandi da toccare. */
.bdp-altre-viste{display:grid;gap:10px;margin-top:12px}
.bdp-altre-viste button{width:100%;padding:15px 16px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.06);color:inherit;font:inherit;font-size:15px;font-weight:700;text-align:left;cursor:pointer}

/* BARRA IN BASSO.
   Era impostata su QUATTRO colonne fisse: con cinque voci la quinta usciva dalla
   riga e le altre restavano strette. Il testo era fissato a 10px da una regola
   piu forte della mia, per questo il primo tentativo non si vedeva.
   Qui le colonne diventano cinque e le misure sono imposte. */
.bdp-app-shell .bdp-bottom-nav{grid-template-columns:repeat(5,1fr)!important;row-gap:4px!important;padding:8px 6px max(8px,env(safe-area-inset-bottom))!important}
.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{font-size:15px!important;font-weight:700!important;padding:11px 3px 12px!important;gap:6px!important;min-height:82px!important;line-height:1.1!important;
    /* Con cinque voci per riga lo spazio in larghezza e poco: le parole lunghe
       come Calendario devono restare intere e rimpicciolirsi appena, non
       spezzarsi a meta ne uscire dalla colonna. */
    overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn>span{font-size:34px!important;line-height:1!important;white-space:normal!important}
@media (max-width:400px){.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{font-size:13.5px!important}}
@media (max-width:340px){.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{font-size:12.5px!important}.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn>span{font-size:31px!important}}

/* Le sezioni spostate dentro Profilo: pulsanti grandi da toccare. */
.bdp-altre-viste{display:grid;gap:10px;margin-top:12px}
.bdp-altre-viste button{width:100%;padding:15px 16px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.06);color:inherit;font:inherit;font-size:15px;font-weight:700;text-align:left;cursor:pointer}

/* La barra ora puo occupare due righe: il contenuto sopra deve avere lo spazio
   per non finirci sotto. */
.bdp-app-shell{padding-bottom:206px!important}

/* Posti liberi della barra: si VEDONO, cosi si capisce che la griglia e di dieci
   caselle e due sono ancora da assegnare, ma non si possono premere. Sbiaditi
   apposta, per non sembrare comandi guasti. */
.bdp-app-shell .bdp-bottom-nav .bdp-nav-libero{opacity:.28;pointer-events:none;cursor:default;user-select:none}

/* FRECCIA INDIETRO PIU GRANDE E PIU VISIBILE.
   Era 40x40 con la freccia a 20px: sotto la misura minima per un dito, che e
   circa 44, e con poco contrasto sul fondo scuro. Ora e 52x52 con la freccia a
   30px, un bordo netto e un fondo piu marcato. */
.bdp-app-shell .bdp-back{width:52px!important;height:52px!important;font-size:30px!important;line-height:1!important;
    border-radius:15px!important;border:1.5px solid rgba(101,229,242,.55)!important;
    background:rgba(18,45,59,.95)!important;color:#7df0fb!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    box-shadow:0 2px 10px rgba(0,0,0,.28)!important}
.bdp-app-shell .bdp-back:active{background:rgba(101,229,242,.22)!important}

/* RIQUADRO DEL CONTROLLO FACCIALE.
   Il pulsante risultava mezzo coperto: il riquadro non lasciava spazio sotto e
   con la barra in basso diventata piu alta il fondo finiva sotto di essa.
   Qui il pulsante prende aria sopra e sotto e non puo essere ritagliato. */
.bdp-app-shell .bdp-browser-guide{overflow:visible!important;margin-bottom:22px!important;padding-bottom:22px!important}
.bdp-app-shell .bdp-browser-guide .bdp-browser-support{width:100%!important;min-height:56px!important;margin-top:16px!important;font-size:14px!important}

/* Anteprima sulla scheda del servizio: veicolo, passeggeri e compenso, i tre
   dati su cui un vettore decide senza dover aprire il servizio. */
.bdp-app-shell .bdp-service-anteprima{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 0;padding:10px 12px;border-radius:11px;background:#eef4f7;border:1px solid #d6e3ea}
.bdp-app-shell .bdp-service-anteprima span{font-size:13px;color:#3a4653;font-weight:600}
.bdp-app-shell .bdp-service-anteprima strong{font-size:18px;color:#0b5f3a}

/* La filigrana vale anche prima dell accesso e sull app clienti: sta sopra
   tutto, comprese le finestre, e non intercetta mai i clic. */
.bdp-filigrana{z-index:99998!important}

/* I DATI SU CUI SI DECIDE, IN GRASSETTO.
   Riferimento, data, tipo di auto e prezzo devono saltare all occhio: sono
   quelli che un vettore legge di sfuggita mentre fa altro. */
.bdp-app-shell .bdp-service-card .bdp-service-date{font-weight:800!important;color:#17242d!important;font-size:13.5px!important}
.bdp-app-shell .bdp-service-card .bdp-service-footer span{font-weight:800!important;color:#17242d!important;font-size:13.5px!important}
.bdp-app-shell .bdp-service-anteprima span{font-weight:800!important;color:#17242d!important;font-size:13.5px!important}
.bdp-app-shell .bdp-service-anteprima strong{font-weight:900!important;font-size:19px!important}

/* Le tre voci del supporto operativo erano piccole rispetto al riquadro. */
.bdp-app-shell .bdp-support-actions a,.bdp-app-shell .bdp-support-actions button{font-size:16px!important;font-weight:800!important;min-height:56px!important;padding:14px 16px!important}

/* NON INCASSARE — deve essere impossibile non vederlo.
   Prima era giallo pallido su bianco e si perdeva fra gli altri riquadri.
   Ora fondo rosso pieno, testo bianco e un lampeggio lento del contorno.
   Il lampeggio agisce SOLO sull ombra e su un elemento solo: non costringe il
   browser a ridisegnare la pagina, che e l errore fatto a suo tempo con la
   cornice della modalita prova. */
.bdp-app-shell .bdp-no-collection{
    border:3px solid #7a2e00!important;
    /* Arancione PIENO, non a righe: le strisce diagonali danno l aria da
       cantiere e, quando il testo bianco cade sulla banda chiara, perde
       contrasto. Un fondo pieno si legge sempre uguale. */
    background:linear-gradient(135deg,#ff6a00 0%,#d95000 100%)!important;
    color:#fff!important;
    font-size:17px!important;
    font-weight:900!important;
    letter-spacing:.03em!important;
    padding:20px 18px!important;
    text-shadow:0 1px 2px rgba(0,0,0,.35)!important;
    animation:bdpNonIncassare 1.6s ease-in-out infinite!important}
.bdp-app-shell .bdp-no-collection strong{color:#fff!important}
@keyframes bdpNonIncassare{
    0%,100%{box-shadow:0 0 0 0 rgba(255,106,0,.6)}
    50%{box-shadow:0 0 0 9px rgba(255,106,0,0)}}
/* Chi ha chiesto al telefono di ridurre le animazioni non deve vederlo pulsare:
   resta comunque rosso pieno e ben visibile. */
@media (prefers-reduced-motion:reduce){
    .bdp-app-shell .bdp-no-collection{animation:none!important;box-shadow:0 0 0 4px rgba(255,106,0,.45)!important}}

/* ==================================================================
   FILIGRANA LEGGIBILE — 0.7.679
   L inclinazione ora e QUI e non piu dentro il disegno: ruotando il
   velo intero nessuna scritta puo essere tagliata a meta parola,
   che era il difetto di prima.
   Il velo viene fatto molto piu grande dello schermo e ricentrato,
   perche ruotando un rettangolo gli angoli resterebbero scoperti.
   ================================================================== */
.bdp-filigrana{
    top:-50%!important;left:-50%!important;right:auto!important;bottom:auto!important;
    width:200%!important;height:200%!important;
    transform:rotate(-22deg);transform-origin:center center}

/* ==================================================================
   FINESTRE CHE SI RAGGIUNGONO SEMPRE — 0.7.680
   Il pulsante del controllo biometrico si vedeva per un quarto.
   CAUSA: .bdp-modal centra la scheda ma NON puo scorrere. Quando la
   scheda e piu alta dello schermo, centrandola viene tagliata sopra
   e sotto INSIEME, e non c e modo di arrivare al pulsante in fondo.
   Ecco perche succedeva "a volte": dipende da quanto testo c e nella
   finestra e da quanto e alto il telefono.
   RIMEDIO: la finestra scorre; su schermi bassi la scheda parte
   dall alto invece che dal centro, cosi scendendo col dito si arriva
   in fondo; su schermi alti resta centrata come prima.
   In fondo si lascia spazio per la barra di sistema del telefono,
   altrimenti sulle app installate il pulsante finisce sotto di essa.
   ================================================================== */
.bdp-modal{
    overflow-y:auto!important;
    overscroll-behavior:contain;
    padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px))!important;
    place-items:start center!important}
@media (min-height:780px){.bdp-modal{place-items:center!important}}
/* La scheda non deve imporsi un altezza: deve poter crescere e farsi
   scorrere. */
.bdp-modal>*{max-height:none!important;margin-bottom:0!important}
/* Il pulsante in fondo resta staccato dal bordo, sempre raggiungibile. */
.bdp-face-request-card{padding-bottom:18px!important}

/* ==================================================================
   FINESTRE DELL APP: PULSANTE COPERTO E SPUNTA NASCOSTA — 0.7.683

   1) IL PULSANTE COPERTO DA UNA BARRA.
      La finestra era alta "tutto lo schermo", ma sul telefono lo
      schermo vero e piu corto: la barra del browser e quella di
      sistema stanno SOPRA. Cosi il fondo della finestra, dove sta il
      pulsante, finiva dietro quella barra.
      Si usa ora l altezza REALE della finestra visibile (dvh), che
      tiene conto delle barre, piu spazio in fondo.

   2) LA SPUNTA CHE NON SI VEDE.
      La casella "accetto il regolamento" stava in fondo a un testo
      lungo: bisognava scorrere e molti non se ne accorgevano, quindi
      non riuscivano a confermare e non capivano perche.
      Ora la casella e i pulsanti restano INCOLLATI IN FONDO alla
      finestra, sempre visibili mentre si scorre il testo sopra.
   ================================================================== */
.bdp-modal{
    height:100dvh!important;max-height:100dvh!important;
    padding-bottom:calc(30px + env(safe-area-inset-bottom,0px))!important}

/* La spunta resta sempre in vista, con un fondo suo per staccarsi
   dal testo che le scorre dietro. */
.bdp-modal .bdp-compliance-check{
    position:sticky!important;bottom:0;z-index:3;
    display:flex!important;align-items:center;gap:10px;
    margin:10px 0 0!important;padding:13px 14px!important;
    border:2px solid #d60000;border-radius:12px;
    background:#fff7f7;box-shadow:0 -8px 18px rgba(0,0,0,.10);
    font-weight:800}
.bdp-modal .bdp-compliance-check input{
    width:26px!important;height:26px!important;flex:0 0 26px;accent-color:#d60000}
/* Il testo lungo delle condizioni scorre dentro il suo riquadro,
   invece di allungare tutta la finestra. */
.bdp-modal .bdp-compliance-scroll{max-height:34dvh!important;overflow-y:auto!important}
/* I pulsanti di conferma restano sotto la spunta, sempre raggiungibili. */
.bdp-modal .bdp-action-row{
    position:sticky!important;bottom:0;z-index:2;
    padding:10px 0 2px!important;background:inherit}

/* ==================================================================
   SCHERMATA DI AVVIO FALLITO — 0.7.696
   Prima l app poteva restare completamente vuota: solo filigrana e
   nessuna spiegazione. Qui il riquadro e sempre leggibile e porta due
   vie d uscita, cosi l autista non resta mai bloccato.
   ================================================================== */
.bdp-avvio-fallito{
    background:#fff!important;color:#10132b!important;
    max-width:min(600px,92vw)!important;margin:34px auto!important;
    padding:26px 22px!important;text-align:left!important}
.bdp-avvio-fallito h2{
    margin:0 0 10px;font-size:21px;font-weight:900;color:#10132b}
.bdp-avvio-fallito p{margin:0 0 12px;font-size:15px;line-height:1.5;color:#3a4c5c}
.bdp-avvio-dettaglio{
    padding:9px 12px;border-radius:9px;background:#f4f7fa;
    font-size:12.5px!important;color:#5b6b7b!important;word-break:break-word}
.bdp-avvio-azioni{display:grid;gap:10px;margin-top:16px}
.bdp-avvio-azioni button,
.bdp-avvio-azioni a{
    display:block;width:100%;min-height:52px;line-height:52px;
    border:0;border-radius:12px;cursor:pointer;
    font-size:16px;font-weight:800;text-align:center;text-decoration:none}
.bdp-avvio-azioni button{background:#10132b;color:#fff}
.bdp-avvio-azioni a{background:#fff;color:#10132b;border:2px solid #10132b;line-height:48px}

/* Riquadro che spiega perche la schermata e vuota — 0.7.699.
   Compare solo quando non c e nessun viaggio da mostrare. */
.bdp-diagnostica{
    margin:14px 0 0;padding:16px 15px;border-radius:14px;
    border:2px dashed #b9c6d4;background:#fff;color:#10132b}
.bdp-diagnostica h3{margin:0 0 10px;font-size:16px;font-weight:900}
.bdp-diagnostica p{margin:0 0 7px;font-size:14px;line-height:1.45;word-break:break-word}
.bdp-diagnostica b{font-weight:800}
.bdp-diagnostica-nota{
    margin-top:11px!important;padding:10px 12px;border-radius:9px;
    background:#f4f7fa;font-size:12.5px!important;color:#3a4c5c}

/* Scheda ridotta di un servizio con dati incompleti — 0.7.700.
   Meglio una scheda povera che una lista che non si disegna. */
.bdp-scheda-ridotta{border-left:4px solid #d97706!important}
.bdp-scheda-ridotta .bdp-service-date{color:#92400e!important;font-weight:700}

/* AVVISO SOTTO LA SFOCATURA.
   La sfocatura di riservatezza colpisce .bdp-app-shell ma non il corpo
   della pagina, percio questa scritta resta nitida. Se per qualsiasi
   motivo la sfocatura dovesse ancora restare incollata, il driver legge
   cosa fare invece di vedere una schermata bianca senza spiegazioni. */
body.bdp-nascondi::after{
  content:"TOCCA LO SCHERMO PER RIPRENDERE";
  position:fixed;left:0;right:0;
  bottom:calc(env(safe-area-inset-bottom,0px) + 96px);
  z-index:99999;text-align:center;pointer-events:none;
  font:700 14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  letter-spacing:.4px;color:#fff;background:rgba(10,14,24,.86);
  padding:12px 16px;
}

/* ======================================================================
   INTERFACCIA COMPATTA — 0.7.725
   Tutto in fondo al file APPOSTA: cosi non viene toccata NESSUNA riga
   esistente e nessuna delle cinque zone blindate di questo foglio.
   Vince per ordine di lettura, non per forza. Se un giorno non piacesse,
   si cancella da questo commento in giu e l app torna esattamente com era.
   Misure ridotte di circa il 15-20 per cento su testi, spazi e icone.
   ====================================================================== */

/* --- testa della pagina: logo, saluto, titolo --- */
.bdp-app-shell .bdp-topbar{padding:14px 14px 11px!important}
.bdp-app-shell .bdp-logo-mark{width:34px!important;height:34px!important;font-size:19px!important;border-radius:11px!important}
.bdp-app-shell .bdp-logo-copy strong{font-size:17px!important}
.bdp-app-shell .bdp-icon-btn{width:34px!important;height:34px!important;border-radius:10px!important}
.bdp-app-shell .bdp-hero{padding:10px 14px 18px!important}
.bdp-app-shell .bdp-hero h1{font-size:22px!important;margin:4px 0 5px!important}
.bdp-app-shell .bdp-hero p{font-size:12.5px!important}
.bdp-app-shell .bdp-hero small{font-size:10px!important}
/* La banda scura in cima e alta a misura fissa: accorciata insieme alla testa,
   altrimenti resterebbe scoperta sotto il saluto. */
.bdp-app-shell{background:linear-gradient(180deg,#071722 0,#102633 185px,#edf3f6 186px)!important}

/* --- riquadri del riepilogo --- */
.bdp-app-shell .bdp-content{padding:0 11px 14px!important}
.bdp-app-shell .bdp-summary-grid{gap:8px!important;margin-bottom:11px!important}
.bdp-app-shell .bdp-summary-card{padding:10px!important;border-radius:13px!important}
.bdp-app-shell .bdp-summary-card small{font-size:9px!important}
.bdp-app-shell .bdp-summary-card strong{font-size:16px!important;margin-top:3px!important}
.bdp-app-shell .bdp-section-head{margin:12px 2px 7px!important}
.bdp-app-shell .bdp-section-head h2{font-size:15px!important}

/* --- schede dei servizi: e qui che si guadagna piu spazio --- */
.bdp-app-shell .bdp-service-card{margin-bottom:8px!important;border-radius:14px!important}
.bdp-app-shell .bdp-service-card-top{padding:11px 12px 8px!important}
.bdp-app-shell .bdp-service-time{font-size:15px!important}
.bdp-app-shell .bdp-service-card .bdp-service-date{font-size:11.5px!important}
.bdp-app-shell .bdp-badge{padding:4px 8px!important;font-size:9px!important}
.bdp-app-shell .bdp-route{padding:2px 12px 11px!important}
.bdp-app-shell .bdp-route-row{padding-bottom:8px!important}
.bdp-app-shell .bdp-route-row small{font-size:9px!important}
.bdp-app-shell .bdp-route-row strong{font-size:12.5px!important;line-height:1.3!important}
.bdp-app-shell .bdp-route-dot{width:13px!important;height:13px!important;border-width:3px!important}
.bdp-app-shell .bdp-service-footer{padding:8px 12px!important}
.bdp-app-shell .bdp-service-card .bdp-service-footer span{font-size:11.5px!important}
.bdp-app-shell .bdp-card-actions{padding:9px 11px 11px!important;gap:8px!important}
.bdp-app-shell .bdp-card-actions .bdp-primary-action,
.bdp-app-shell .bdp-card-actions .bdp-danger-action{min-height:40px!important;font-size:10.5px!important;padding:8px 10px!important}

/* --- scheda aperta del singolo servizio --- */
.bdp-app-shell .bdp-detail-header{padding:14px 14px 20px!important}
.bdp-app-shell .bdp-detail-title{margin-top:13px!important}
.bdp-app-shell .bdp-detail-title h1{font-size:21px!important;margin:4px 0!important}
.bdp-app-shell .bdp-detail-body{padding:0 11px 18px!important}
.bdp-app-shell .bdp-info-card{margin-bottom:9px!important;border-radius:14px!important}
.bdp-app-shell .bdp-info-head{padding:10px 13px!important;font-size:13px!important}
.bdp-app-shell .bdp-info-item{padding:9px 13px!important}
.bdp-app-shell .bdp-info-item small{font-size:8.5px!important}
.bdp-app-shell .bdp-info-item strong{font-size:12.5px!important;margin-top:3px!important;line-height:1.35!important}
.bdp-app-shell .bdp-timeline{padding:12px 8px!important;margin-bottom:10px!important}
.bdp-app-shell .bdp-timeline-dot{width:18px!important;height:18px!important;border-width:4px!important;margin-bottom:5px!important}
.bdp-app-shell .bdp-action-stack{gap:8px!important;margin:11px 0!important}

/* --- pulsanti: piu bassi ma sempre sopra i 44 pixel, si premono col guanto --- */
.bdp-app-shell .bdp-primary-action,
.bdp-app-shell .bdp-secondary-action,
.bdp-app-shell .bdp-danger-action{min-height:44px!important;padding:10px 14px!important;font-size:12px!important;border-radius:12px!important}

/* --- barra in basso: cinque per due, resta com e ma piu bassa --- */
.bdp-app-shell .bdp-bottom-nav{padding:6px 6px max(6px,env(safe-area-inset-bottom))!important}
.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn{font-size:11.5px!important;padding:7px 2px 8px!important;gap:3px!important;min-height:60px!important}
.bdp-app-shell .bdp-bottom-nav .bdp-nav-btn>span{font-size:24px!important}
.bdp-app-shell{padding-bottom:152px!important}
.bdp-app-shell .bdp-back{width:42px!important;height:42px!important;font-size:24px!important}

/* --- calendario e finestre --- */
.bdp-app-shell .bdp-calendar-entry{margin:6px 0!important;padding:10px!important;gap:9px!important}
.bdp-app-shell .bdp-calendar-day strong{font-size:19px!important}
.bdp-app-shell .bdp-calendar-month>h2{font-size:16px!important}
.bdp-modal-card{padding:16px!important}
.bdp-modal-card h2{font-size:17px!important}

/* ======================================================================
   RITOCCHI 0.7.735 — respiro in alto e compensi leggibili.
   In coda apposta: nessuna riga esistente viene toccata e il registro
   delle funzioni bloccate non si muove.
   ====================================================================== */

/* 1) RESPIRO IN ALTO. La banda scura schiacciava "Ciao, LINO" contro la
      barra di stato e la fotocamera. Si alza il punto di partenza e si
      rispetta la zona sicura del telefono, quella dove sta il notch. */
.bdp-app-shell .bdp-topbar{padding-top:calc(env(safe-area-inset-top,0px) + 18px)!important}
.bdp-app-shell .bdp-hero{padding-top:16px!important;padding-bottom:22px!important}
.bdp-app-shell .bdp-hero h1{margin:6px 0 7px!important;line-height:1.25!important}
.bdp-app-shell .bdp-summary-grid{margin-top:6px!important}

/* 3) COMPENSI LEGGIBILI. Il riquadro del carburante ha lo sfondo scuro ma i
      testi restavano scuri: nero su nero. Qui dentro si scrive BIANCO. */
.bdp-app-shell .bdp-fuel-driver-card,
.bdp-app-shell .bdp-fuel-driver-card *{color:#ffffff!important}
.bdp-app-shell .bdp-fuel-driver-card .bdp-info-head{color:#f3d77d!important}
.bdp-app-shell .bdp-fuel-driver-card small{color:#ffffff!important;opacity:.92}
.bdp-app-shell .bdp-fuel-driver-card strong{color:#ffffff!important}

/* RIQUADRO COMPENSI — RIFINITURA 0.7.736.
   Dall ingrandimento della fotografia: il corpo del riquadro e quasi nero,
   ma la sua fascia del titolo resta CHIARA, quindi il titolo oro su bianco
   si legge male. Si rende la fascia trasparente cosi il fondo scuro del
   riquadro passa sotto e l oro torna a contrastare. */
.bdp-app-shell .bdp-fuel-driver-card .bdp-info-head{background:transparent!important;border-bottom-color:rgba(243,215,125,.35)!important}
.bdp-app-shell .bdp-fuel-driver-card .bdp-info-item{border-bottom-color:rgba(255,255,255,.14)!important}

/* FRECCIA INDIETRO — 0.7.737.
   Toccava il bordo alto e finiva sotto l orologio e la batteria. Si rispetta
   la zona sicura del telefono, quella dove stanno ora, segnale e fotocamera,
   e si scende sotto quella linea. La misura la dichiara il telefono, quindi
   vale su tutti i modelli e non solo su questo. */
.bdp-app-shell .bdp-detail-header{padding-top:calc(env(safe-area-inset-top,0px) + 24px)!important}
.bdp-app-shell .bdp-back{margin-top:6px!important;margin-left:2px!important}

/* ======================================================================
   0.7.738 — conferma 24 ore e etichette della linea stati
   ====================================================================== */

/* Riquadro della conferma obbligatoria. Copre tutto: non c e modo di
   passare oltre se non premendo il tasto che conferma. */
.bdp-conferma24{position:fixed;inset:0;z-index:200001;display:flex;align-items:center;justify-content:center;background:rgba(4,12,20,.88);padding:18px}
.bdp-conferma24-card{background:#fff;border-radius:18px;max-width:560px;width:100%;padding:22px 22px 20px;box-shadow:0 26px 70px rgba(0,0,0,.55);border-top:9px solid #c8102e;text-align:left;max-height:88vh;overflow:auto}
.bdp-conferma24-card small{display:block;letter-spacing:1.2px;font-size:10.5px;font-weight:800;color:#c8102e;margin-bottom:6px}
.bdp-conferma24-card h1{margin:0 0 10px;font-size:21px;line-height:1.25;color:#0b1c28;font-weight:800}
.bdp-conferma24-ref{margin:0 0 12px;font-size:14px;color:#1f2d3a}
.bdp-conferma24-legale{margin:0 0 18px;font-size:14px;line-height:1.55;color:#1f2d3a;background:#fdf2f3;border-left:4px solid #c8102e;padding:12px 14px;border-radius:10px}
.bdp-conferma24-ok{display:block;width:100%;padding:16px 18px;border:0;border-radius:12px;background:#c8102e;color:#fff;font-size:16px;font-weight:800;letter-spacing:.3px;cursor:pointer}
.bdp-conferma24-ok:disabled{opacity:.7}

/* Etichette della linea degli stati: si toccavano dopo la grafica compatta.
   Ogni passo prende il suo spazio e le parole lunghe vanno a capo. */
.bdp-app-shell .bdp-timeline{gap:4px!important}
.bdp-app-shell .bdp-timeline-step{padding:0 3px!important;min-width:0!important}
.bdp-app-shell .bdp-timeline-step small,
.bdp-app-shell .bdp-timeline small{display:block!important;font-size:8.5px!important;line-height:1.25!important;padding:0 2px!important;word-break:break-word!important;hyphens:auto!important}

/* ==================================================================
   PREFERENZE DEL PASSEGGERO — 0.7.852
   La scheda compare solo quando il cliente ha scelto qualcosa, quindi
   quello che c'e scritto conta sempre: si evidenzia invece di essere
   l'ennesimo riquadro da saltare.
   ================================================================== */
.bdp-preferenze .bdp-info-head{background:linear-gradient(90deg,#eef7f9,#fff)}
.bdp-preferenze .bdp-info-head:after{background:#39d2e6}
.bdp-pref-riga{display:flex;flex-direction:column;gap:3px;border-right:0!important}
.bdp-pref-riga small{color:var(--bdp-muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:700}
.bdp-pref-riga strong{font-size:15px;line-height:1.35;color:var(--bdp-text)}

/* Passeggero senza nome: l'autista deve accorgersene prima di partire,
   non davanti all'albergo. */
.bdp-manca-passeggero .bdp-info-head{background:linear-gradient(90deg,#fff4e8,#fff)}
.bdp-manca-passeggero .bdp-info-head:after{background:#e0a325}
.bdp-manca-passeggero .bdp-info-item strong{color:#a8621a}
.bdp-manca-passeggero .bdp-info-item small{display:block;margin-top:3px;color:var(--bdp-muted)}

/* ==========================================================================
   0.7.911 — I PULSANTI DELLA LINGUA ERANO BIANCHI SU BIANCO
   --------------------------------------------------------------------------
   Segnalato da chi usa l app: nella schermata Profilo i nomi delle lingue non
   si vedevano, e comparivano solo premendo il pulsante.

   LA CAUSA. Quei pulsanti dichiarano lo sfondo bianco ma NON dichiarano il
   colore del testo. In quel caso il colore lo sceglie il browser, e sui
   telefoni con il tema scuro attivo il browser lo sceglie CHIARO: testo
   bianco su sfondo bianco. Premendolo diventava "attivo", e la regola
   dell attivo un colore ce l ha: per questo il nome si vedeva solo al tocco.
   Non era un difetto della 0.7.906: c era da sempre, e si e visto adesso
   perche i pulsanti sono passati da quattro a nove.

   IL RIMEDIO, in due mosse.
   1. color-scheme: light dice al browser che questa e una schermata chiara e
      di non ridipingere da solo i comandi.
   2. ogni pulsante che dichiara uno sfondo dichiara ANCHE il suo colore, cosi
      resta leggibile pure dove color-scheme non viene applicato.
   ========================================================================== */
body:has(.bdp-app-shell), body:has(.bdp-login-shell) { color-scheme: light; }
.bdp-app-shell, .bdp-login-shell { color-scheme: light; }

.bdp-language-btn,
.bdp-language-grid button,
.bdp-install-banner button { color: #10202b; }

/* L attivo conserva il suo colore: la regola con !important sta piu in alto. */
.bdp-language-btn.active,
.bdp-language-grid button.active { color: #65e5f2; }
