/* Taxi-only presentation; deliberately does not alter the generic CIUDAD map or Baños. */
#qg-app .qg-taxi-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:start;margin:0;padding:13px;border:1px solid #e7ecef;border-radius:21px;background:#fff;box-shadow:0 7px 22px rgba(17,38,63,.065);color:var(--qg-navy,#12243a);cursor:pointer;transition:box-shadow .16s,border-color .16s}
#qg-app .qg-taxi-card:hover{border-color:#dce5eb;box-shadow:0 10px 28px rgba(17,38,63,.09)}
#qg-app .qg-taxi-card:focus-visible{outline:3px solid rgba(24,119,220,.3);outline-offset:2px}
#qg-app .qg-taxi-card-icon,#qg-app .qg-taxi-detail-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:#eaf4ff;color:#2f73b8;box-shadow:inset 0 0 0 1px rgba(47,115,184,.06)}
#qg-app .qg-taxi-card-icon .qg-city-icon,#qg-app .qg-taxi-detail-icon .qg-city-icon{display:grid;place-items:center;width:30px;height:30px}
#qg-app .qg-taxi-card-icon svg,#qg-app .qg-taxi-detail-icon svg{width:28px;height:28px;fill:currentColor}
#qg-app .qg-taxi-card-main{min-width:0}
#qg-app .qg-taxi-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
#qg-app .qg-taxi-card-top>div{min-width:0}
#qg-app .qg-taxi-card-top h3{margin:0;font-size:15px;line-height:1.25;color:#14283d;overflow-wrap:anywhere}
#qg-app .qg-taxi-card-top p{margin:4px 0 0;font-size:12px;color:#657483;line-height:1.4}
#qg-app .qg-taxi-card-top b{flex:none;font-size:12px;color:#2471b3;white-space:nowrap}
#qg-app .qg-taxi-capacity{display:block;margin-top:6px;color:#576d7d;font-size:11px}
#qg-app .qg-taxi-presence{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:6px 9px;border-radius:10px;font-size:11px;font-weight:800;line-height:1.25}
#qg-app .qg-taxi-presence-dot{display:inline-block;flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:currentColor}
#qg-app .qg-taxi-presence--high{background:#edf9f2;color:#187247}
#qg-app .qg-taxi-presence--medium{background:#fff6e8;color:#a65f00}
#qg-app .qg-taxi-presence--variable{background:#f1f4f6;color:#61717d}
#qg-app .qg-taxi-presence-detail{margin:14px 0;padding:13px 14px;border:1px solid #e5ebef;border-radius:16px;background:#fbfcfd}
#qg-app .qg-taxi-presence-detail>small{display:block;margin-bottom:2px;color:#6a7b87;font-size:11px;font-weight:750}
#qg-app .qg-taxi-presence-detail .qg-taxi-presence{margin-top:6px;font-size:12px}
#qg-app .qg-taxi-call-fallback{margin:14px 0 0;padding:14px;border:1px solid #dfeaf3;border-radius:16px;background:#f7fbff}
#qg-app .qg-taxi-call-fallback strong{display:block;color:#173b5b;font-size:13px;line-height:1.35}
#qg-app .qg-taxi-call-fallback p{margin:6px 0 12px;color:#647889;font-size:12px;line-height:1.5}
#qg-app .qg-taxi-call-main{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:44px;padding:11px 14px;border-radius:13px;background:#216fb8;color:#fff!important;text-decoration:none;font-size:14px;font-weight:850;line-height:1.2}
#qg-app .qg-taxi-call-main:focus-visible{outline:3px solid rgba(24,119,220,.3);outline-offset:2px}
#qg-app .qg-taxi-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px;align-items:center}
#qg-app .qg-taxi-actions a,#qg-app .qg-taxi-actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:36px;padding:7px 11px;border-radius:11px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none;cursor:pointer}
#qg-app .qg-taxi-actions a{background:#216fb8;color:#fff;border:1px solid #216fb8}
#qg-app .qg-taxi-actions button{background:#f0f6fc;color:#2164a4;border:1px solid #dceaf6}
.qg-taxi-marker{background:transparent!important;border:0!important}
.qg-taxi-marker>span{width:36px;height:36px;border-radius:13px 13px 13px 4px;transform:rotate(-45deg);display:grid;place-items:center;background:#2079b9;border:3px solid #fff;box-shadow:0 8px 18px rgba(20,40,58,.2)}
.qg-taxi-marker .qg-city-icon{width:20px;height:20px;transform:rotate(45deg);display:grid;place-items:center;color:#fff}
.qg-taxi-marker .qg-city-icon svg{width:19px;height:19px;fill:currentColor}
.qg-taxi-cluster{border:0!important;background:transparent!important}
.qg-taxi-cluster span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#267bb7;border:3px solid #fff;box-shadow:0 5px 12px rgba(20,40,58,.23);color:#fff;font-size:11px;font-weight:850}
.qg-taxi-map-popup{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}
.qg-taxi-map-popup-icon{display:grid;place-items:center;width:34px;height:34px;background:#eaf4ff;color:#267bb7;border-radius:11px}
.qg-taxi-map-popup-icon .qg-city-icon{display:grid;place-items:center;width:23px;height:23px}
.qg-taxi-map-popup-icon svg{width:20px;height:20px;fill:currentColor}
.qg-taxi-map-popup strong,.qg-taxi-map-popup span,.qg-taxi-map-popup small{display:block;line-height:1.4}
.qg-taxi-map-popup strong{font-size:13px;color:#14283d}
.qg-taxi-map-popup span,.qg-taxi-map-popup small{font-size:11px;color:#657483;margin-top:4px}
.qg-taxi-map-popup button{border:0;border-radius:9px;background:#2079b9;color:#fff;font-size:12px;font-weight:800;padding:8px 11px;margin-top:8px;cursor:pointer}
.qg-taxi-viewer{width:min(560px,calc(100vw - 20px));max-width:560px;max-height:94dvh;padding:0;border:0;border-radius:22px;box-shadow:0 18px 70px rgba(15,33,54,.25);color:#14283d}
.qg-taxi-viewer::backdrop{background:rgba(12,27,41,.59)}
.qg-taxi-viewer-shell{max-height:94dvh;display:flex;flex-direction:column;overflow:hidden}
.qg-taxi-viewer header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;border-bottom:1px solid #e8edf1;padding:13px 16px;min-height:55px}
.qg-taxi-viewer header strong{text-align:center;font-size:15px}
.qg-taxi-viewer header button{grid-column:3;display:grid;place-items:center;width:36px;height:36px;justify-self:end;border:0;border-radius:50%;background:#f3f6f9;color:#314a61;padding:0;line-height:1;cursor:pointer}.qg-taxi-viewer header button svg{display:block;width:17px;height:17px;fill:currentColor}
.qg-taxi-viewer-body{overflow-y:auto;padding:16px 16px max(24px,env(safe-area-inset-bottom))}
.qg-taxi-detail-hero{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px;align-items:start}
#qg-app .qg-taxi-detail-icon{width:60px;height:60px}
.qg-taxi-detail-hero small{color:#577287;font-size:11px}
.qg-taxi-detail-hero h2{margin:4px 0;font-size:21px;line-height:1.2;overflow-wrap:anywhere}
.qg-taxi-detail-hero p{margin:4px 0;font-size:13px;color:#657483}
.qg-taxi-detail-facts{display:grid;gap:9px;margin-top:20px}
.qg-taxi-detail-facts>div{display:grid;gap:3px;padding:12px;border:1px solid #e8edf1;border-radius:13px;background:#fafcfe}
.qg-taxi-detail-facts small{font-size:11px;color:#697988}
.qg-taxi-detail-facts strong{font-size:13px;color:#193b59}
.qg-taxi-detail-note{font-size:12px;line-height:1.5;color:#627488;margin:16px 0}
.qg-taxi-directions-main{display:flex;justify-content:center;align-items:center;gap:8px;background:#216fb8;border-radius:13px;padding:13px;color:#fff!important;text-decoration:none;font-size:14px;font-weight:850}
@media(max-width:520px){#qg-app .qg-taxi-card{grid-template-columns:48px minmax(0,1fr);padding:12px;gap:10px}#qg-app .qg-taxi-card-icon{width:48px;height:48px;border-radius:16px}#qg-app .qg-taxi-actions a,#qg-app .qg-taxi-actions button{flex:1;min-width:85px;padding-inline:6px}}

/* 2.19.222: restore the yellow taxi marker from 2.19.220, with Taxi blue instead of the generic teal. */
#qg-app .qg-city-map-icon.qg-city-utility-marker.qg-taxi-map-marker span{background:#2079b9!important}
#qg-app .qg-city-map-icon.qg-city-utility-marker.qg-taxi-map-marker span i{font-size:17px;line-height:1}
