:root {
  --navy: #101935;
  --navy-2: #162243;
  --navy-3: #22305a;
  --coral: #ff6f61;
  --coral-dark: #ed5a4d;
  --aqua: #42d9c7;
  --blue: #4a7df2;
  --gold: #f7b955;
  --green: #2dbb83;
  --red: #dd4c57;
  --ink: #18213a;
  --text: #46516b;
  --muted: #7e879c;
  --line: #e4e8f1;
  --surface: #ffffff;
  --canvas: #f4f6fb;
  --radius: 18px;
  --shadow: 0 16px 45px rgba(24, 33, 58, .09);
  --shadow-soft: 0 7px 22px rgba(24, 33, 58, .07);
}

/* Panel de agencia: estilos aislados para no alterar las superficies existentes. */
.agency-page{padding-top:34px;padding-bottom:54px}.agency-page .section-tabs{display:flex;gap:7px;margin:20px 0 24px;padding:5px;overflow-x:auto;background:#e9eef1;border-radius:14px}.agency-page .section-tabs a{flex:0 0 auto;padding:10px 15px;color:var(--muted);border-radius:10px;font-size:12px;font-weight:800}.agency-page .section-tabs a.active{color:#fff;background:var(--navy);box-shadow:0 4px 12px rgba(16,25,53,.16)}.agency-page .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.agency-page .stats-grid .stat-card{display:grid;align-content:start;gap:7px;min-height:125px}.agency-page .stats-grid .stat-card>span{color:var(--muted);font-size:12px;font-weight:750}.agency-page .stats-grid .stat-card>strong{align-self:end;font-size:28px}.agency-page .stats-grid .stat-card>small{color:var(--muted);font-size:11px}.agency-page .content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.agency-page .card-list{display:grid;gap:14px;margin-bottom:20px}.agency-page .card{padding:22px}.agency-page .card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.agency-page .card-heading h2{margin:2px 0 3px}.agency-page .simple-list{display:grid}.agency-page .simple-list a{display:flex;justify-content:space-between;gap:18px;padding:12px 0;color:inherit;border-bottom:1px solid var(--line)}.agency-page .simple-list a:last-child{border-bottom:0}.agency-page .code-display{display:inline-block;margin:8px 0 18px;padding:12px 18px;background:#eefaf7;border:1px dashed #63cdb8;border-radius:12px;letter-spacing:.14em}.agency-page .button-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.agency-page .filter-row{display:flex;justify-content:flex-end;margin:0 0 16px}.agency-page .filter-row label{min-width:170px}.agency-page .form-stack{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-bottom:10px}.agency-page .form-stack label{display:grid;gap:6px}.agency-page .status-pill{white-space:nowrap}
@media (max-width:900px){.agency-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-page .content-grid{grid-template-columns:1fr}}
@media (max-width:600px){.agency-page{padding-top:24px}.agency-page .section-tabs{margin-top:15px}.agency-page .stats-grid{gap:9px}.agency-page .stats-grid .stat-card{min-height:105px;padding:14px}.agency-page .stats-grid .stat-card>strong{font-size:22px}.agency-page .card{padding:17px}.agency-page .card-heading{display:grid}.agency-page .form-stack{grid-template-columns:1fr}.agency-page .simple-list a{display:grid;gap:4px}}
@media (max-width:680px){.mobile-nav.mobile-nav-agency{grid-template-columns:repeat(4,1fr)}}

.notification-kind.broadcast_information{color:#a36b13;background:#fff3dd}.notification-kind.broadcast_announcement{color:#6652b8;background:#f0edff}.notification-kind.broadcast_delivery{color:#168275;background:#e9faf7}.notification-kind.broadcast_community{color:#3d68bf;background:#edf3ff}.notification-kind.broadcast_security{color:#16765c;background:#e8f8f3}
.notification-item>span:nth-child(2)>p{margin:4px 0 0;color:var(--text);font-size:12px;font-weight:400;line-height:1.5;white-space:pre-wrap}.notification-item>span:nth-child(2)>p+small{margin-top:6px}

.coverage-field{display:grid;gap:8px;min-width:0;color:var(--ink);font-size:13px;font-weight:700}
.coverage-field>small{color:var(--muted);font-weight:400}

* { box-sizing: border-box; }
html,
body,
body * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}
input,
textarea,
[contenteditable="true"] {
  -webkit-touch-callout: default;
  -webkit-user-select: text;
  user-select: text;
}
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body, input, button, select, textarea { font-size: 16px; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; height: 100%; object-fit: cover; -webkit-user-drag: none; user-select: none; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3, .brand, .button, strong { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.shell { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.narrow-shell { width: min(760px, calc(100% - 40px)); padding: 54px 0 100px; }
.icon { width: 20px; height: 20px; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--coral-dark); font: 700 12px/1 "Manrope", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow > span { width: 24px; height: 2px; background: currentColor; }
.eyebrow-light { color: var(--aqua); }
.optional { color: var(--muted); font-size: 12px; font-weight: 400; }
.muted { color: var(--muted); }

.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--navy); font-size: 21px; font-weight: 800; letter-spacing: -.04em; }
.brand-name { display: inline-flex; align-items: flex-start; line-height: 1; }
.brand-word { display: inline-block; }
.taxi-brand-surface { --taxi-brand-yellow: #ffc94a; --taxi-brand-yellow-hover: #ffd665; --taxi-brand-ink: #171100; }
.brand-r-accent { color: var(--taxi-brand-yellow, #ffc94a); }
.taxi-header-label { margin-left: -6px; color: var(--taxi-brand-yellow, #ffc94a); font-size: 1em; font-weight: 800; line-height: 1; letter-spacing: -.04em; }
.brand-light { color: #fff; }
.brand-mark { display: grid; place-items: center; width: 34px; height: 34px; color: #030712; background: #34e0bf; border-radius: 11px; }
.brand-mark svg { width: 21px; height:21px; }
header .taxi-brand .brand-mark { background: #ffc94a; }
.offline-state-page .app-header .brand-mark{background:#ffc94a}
.offline-state-page .offline-saved-state>span{color:#8a6200;background:#fff2c7}
.offline-state-page .offline-saved-state .button-primary{color:#171100;background:#ffc94a;box-shadow:0 9px 20px rgba(190,139,0,.2)}
.taxi-brand-surface .eyebrow { color: #9a6900; }
.taxi-brand-surface .button-primary { color: var(--taxi-brand-ink); background: var(--taxi-brand-yellow); box-shadow: 0 9px 18px rgba(255,193,36,.24); }
.taxi-brand-surface .button-primary:hover:not(:disabled) { color: var(--taxi-brand-ink); background: var(--taxi-brand-yellow-hover); box-shadow: 0 12px 22px rgba(255,193,36,.32); }
.taxi-brand-surface .button-primary:focus-visible { outline-color: rgba(255,201,74,.62); }
.header-inner { height: 72px; display: flex; align-items: center; justify-content: space-between; }
.public-header { position: absolute; inset: 0 0 auto; z-index: 10; }
.public-nav, .desktop-nav { display: flex; align-items: center; gap: 26px; }
.public-nav > .public-login-link { color: rgba(255,255,255,.78); font-weight: 600; }
.public-nav > .public-register-link { display: inline-flex; }
.apk-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;color:#fff;background:linear-gradient(135deg,#ffae45 0%,#f05b79 52%,#7865ed 100%);border-radius:11px;box-shadow:0 4px 13px rgba(240,91,121,.3)}.apk-icon svg{width:28px;height:28px;stroke:none}
.app-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.68); border: 0; -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.desktop-nav > a { color: var(--muted); font-weight: 600; }
.desktop-nav > a:hover, .desktop-nav > a.active { color: var(--ink); }
.nav-icon-link { position: relative; padding: 9px; }
.notification-dot { position: absolute; top: 0; right: 0; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-width: 18px; height: 18px; padding: 0 4px; color: #fff; background: var(--coral); border: 2px solid #fff; border-radius: 10px; font-size: 9px; line-height: 1!important; text-align: center; font-variant-numeric: tabular-nums; }

.button { appearance: none; border: 0; border-radius: 12px; min-height: 44px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-weight: 700; font-size: 14px; cursor: pointer; transition: transform .18s, box-shadow .18s, background .18s, border-color .18s; }
.button:hover:not(:disabled) { transform: translateY(-1px); }
.button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid rgba(74,125,242,.22); outline-offset: 2px; }
.button svg { width: 18px; height: 18px; }
.button:disabled { opacity: .46; cursor: not-allowed; }
.button-primary { color: #fff; background: var(--navy); box-shadow: 0 9px 18px rgba(16,25,53,.16); }
.button-primary:hover:not(:disabled) { background: var(--navy-2); box-shadow: 0 12px 22px rgba(16,25,53,.22); }
.button-accent { color: var(--navy); background: var(--aqua); box-shadow: 0 10px 25px rgba(66,217,199,.2); }
.button-light { color: var(--navy); background: #fff; border: 1px solid transparent; }
.button-light:hover:not(:disabled) { color: #0b1631; background: #f4f7fb; border-color: #8e9bb0; box-shadow: 0 9px 20px rgba(5,15,42,.18); }
.button-taxi { color: #111827; background: #ffc94a; border: 1px solid #f2b900; box-shadow: 0 10px 25px rgba(255,193,36,.3); }
.button-taxi:hover:not(:disabled) { color: #080d18; background: #ffd665; border-color: #ffc21c; box-shadow: 0 13px 28px rgba(255,193,36,.4); }
.button-taxi:focus-visible { outline-color: rgba(255,220,105,.92); }
.taxi-button-car { display:inline-block;flex:0 0 38px;width:38px;height:25px;margin:-2px 0;background:url("../icons/taxi-map-car-e.png") center/44px 44px no-repeat;filter:drop-shadow(0 3px 3px rgba(69,48,0,.3)) }
.button-affiliate { color: #fff; background: #386bdc; box-shadow: 0 10px 24px rgba(33,80,193,.28); }
.button-affiliate:hover:not(:disabled) { color: #fff; background: #2e5ac4; box-shadow: 0 12px 26px rgba(33,80,193,.36); }
.admin-settings-page>.admin-panel{max-width:680px}.admin-settings-form{display:grid;gap:11px}.admin-settings-form label{display:block;cursor:pointer}.admin-settings-form label>span{display:grid;gap:5px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff}.admin-settings-form label strong{font-size:14px}.admin-settings-form label small{color:var(--muted);font-size:12px;line-height:1.5}.admin-settings-form input{position:absolute;opacity:0}.admin-settings-form input:checked+span{border-color:var(--blue);background:#f2f6ff;box-shadow:0 0 0 3px rgba(74,125,242,.1)}.admin-settings-form input:focus-visible+span{outline:3px solid rgba(74,125,242,.22);outline-offset:2px}.admin-settings-form .button{justify-self:start;margin-top:9px}
.admin-settings-page>.admin-panel+.admin-panel{margin-top:20px}.admin-security-notice-form{display:grid;gap:14px}.admin-security-notice-form label:not(.admin-security-notice-toggle){display:grid;gap:6px;font-size:13px;font-weight:700}.admin-security-notice-form input:not([type="checkbox"]),.admin-security-notice-form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font:inherit}.admin-security-notice-form textarea{resize:vertical;line-height:1.5}.admin-security-notice-toggle{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700}.admin-security-notice-toggle input{width:18px;height:18px;accent-color:var(--blue)}.admin-security-notice-form .button{justify-self:start}
.admin-dashboard-actions{display:flex;flex-wrap:wrap;gap:10px}
.registration-photo-grid .photo-upload b{font-size:17px}.registration-photo-grid .photo-upload small{font-size:14px;line-height:1.5}.registration-photo-grid .identity-privacy b{font-size:14px}.registration-photo-grid .identity-privacy small{font-size:13px}
.button-ghost-light { color: #fff; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.06); }
.button-secondary { color: var(--ink); background: #fff; border: 1px solid var(--line); box-shadow: none; }
.button-text { color: var(--text); background: transparent; }
.button-danger { color: var(--red); background: #fff; border: 1px solid #f0c8cc; }
.button-danger-solid{color:#fff;background:var(--red);border:1px solid var(--red)}.button-danger-solid:hover:not(:disabled){background:#c8444c;border-color:#c8444c;box-shadow:0 8px 20px rgba(220,76,84,.2)}
.button-small { min-height: 38px; padding-inline: 16px; font-size: 13px; border-radius: 10px; }
.button-large { min-height: 52px; padding-inline: 24px; }
.button-full { width: 100%; }
.admin-correction-options{display:grid;gap:7px;margin:0;padding:0;border:0}.admin-correction-options legend{font-size:13px;font-weight:700}.admin-correction-options>small{color:var(--muted);font-size:11px}.admin-correction-combobox{position:relative}.admin-correction-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;box-sizing:border-box;width:100%;min-height:42px;padding:9px 11px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:9px;font:inherit;font-size:13px;text-align:left;list-style:none;cursor:pointer}.admin-correction-toggle::-webkit-details-marker{display:none}.admin-correction-toggle>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-correction-toggle svg{flex:0 0 auto;width:14px;height:14px;transition:transform .15s}.admin-correction-combobox[open] .admin-correction-toggle{border-color:var(--blue);outline:3px solid rgba(74,125,242,.14)}.admin-correction-combobox[open] .admin-correction-toggle svg{transform:rotate(180deg)}.admin-correction-list{position:absolute;z-index:20;top:calc(100% + 5px);right:0;left:0;max-height:220px;overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 28px rgba(16,25,53,.16)}.admin-correction-list label{display:flex!important;align-items:center;gap:9px;min-height:39px;padding:7px 10px;border-bottom:1px solid var(--line);font-size:13px;font-weight:500;cursor:pointer}.admin-correction-list label:last-child{border-bottom:0}.admin-correction-list label:hover,.admin-correction-list label:has(input:checked){background:#f2f6ff}.admin-correction-list input{flex:0 0 auto;width:16px!important;height:16px;margin:0;accent-color:var(--blue)}.admin-correction-optional{color:var(--muted);font-size:11px;font-weight:400}.admin-correction-submit{color:#fff;background:var(--green);border:2px solid var(--green);box-shadow:0 9px 18px rgba(45,187,131,.2)}.admin-correction-submit:hover:not(:disabled){color:#fff;background:#23966a;border-color:#23966a;box-shadow:0 12px 22px rgba(35,150,106,.26)}
.icon-button { border: 0; background: transparent; color: var(--muted); padding: 6px; cursor: pointer; }
.back-link { display: inline-block; margin-bottom: 24px; color: var(--muted); font-weight: 600; font-size: 13px; }
.back-link:hover { color: var(--ink); }

/* Landing */
.hero { position: relative; min-height: 720px; overflow: hidden; color: #fff; background: var(--navy); }
.hero::before { content: ""; position: absolute; inset: 0; opacity: .13; background-image: radial-gradient(rgba(255,255,255,.7) .6px, transparent .6px); background-size: 22px 22px; mask-image: linear-gradient(90deg, #000, transparent 60%); }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(1px); }
.hero-orb-one { width: 420px; height: 420px; right: -100px; top: -160px; background: radial-gradient(circle, rgba(74,125,242,.36), transparent 68%); }
.hero-orb-two { width: 380px; height: 380px; left: 32%; bottom: -250px; background: radial-gradient(circle, rgba(66,217,199,.2), transparent 66%); }
.hero-grid { position: relative; z-index: 1; min-height: 720px; padding: 125px 0 70px; display: grid; grid-template-columns: .93fr 1.07fr; align-items: center; gap: 60px; }
.hero-copy h1 { max-width: 660px; margin: 20px 0 22px; font-family: "DM Sans", system-ui, sans-serif; font-size: clamp(48px, 4.5vw, 68px); font-weight: 700; line-height: 1.08; letter-spacing: -.04em; }
.hero-copy h1 em { color: var(--aqua); font-style: normal; }
.hero-copy > p { max-width: 590px; color: rgba(255,255,255,.68); font-size: 18px; line-height: 1.7; }
.hero-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; width: min(100%, 520px); margin-top: 33px; }
.hero-actions > .button { width: 100%; }
.hero-account-cta{display:grid;gap:6px;width:fit-content;max-width:100%;padding:15px 24px;color:var(--navy);background:#fff;border:1px solid transparent;border-radius:15px;box-shadow:0 10px 25px rgba(5,15,42,.2);transition:transform .2s,box-shadow .2s,background .2s}.hero-account-cta:hover,.hero-account-cta:focus-visible{color:var(--navy);background:#f4f7fb;box-shadow:0 14px 30px rgba(5,15,42,.28);transform:translateY(-2px)}.hero-account-cta:focus-visible{outline:3px solid rgba(255,255,255,.8);outline-offset:3px}.hero-account-cta-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:800}.hero-account-cta-title>svg{width:19px;height:19px}.hero-account-cta-description{padding-left:28px;color:#233252;font-size:12px;font-weight:650;line-height:1.45}
@media(max-width:680px){.hero-account-cta{width:100%;padding:14px 17px}.hero-account-cta-description{padding-left:28px;font-size:11px}}
.hero-apk-link{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:7px 12px 7px 7px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:14px;text-align:left;transition:background .2s,border-color .2s,transform .2s}.hero-apk-link:hover,.hero-apk-link:focus-visible{color:#fff;background:rgba(255,255,255,.14);border-color:#ee91b2;transform:translateY(-2px)}.hero-apk-link:focus-visible{outline:2px solid #fff;outline-offset:3px}.hero-apk-copy{display:grid;gap:3px;min-width:0}.hero-apk-copy b{font-size:14px;font-weight:750;line-height:1.35}.hero-apk-copy small{color:#bfcbdf;font-size:11px;line-height:1.25}
.hero-apk-link-text-only{gap:0;padding:12px 16px}
.trust-line { display: flex; align-items: center; gap: 14px; margin-top: 38px; }
.map-card { position: relative; height: 485px; max-width: 560px; margin-left: auto; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 32px; background: #1e2c50; box-shadow: 0 40px 80px rgba(0,0,0,.25); transform: perspective(1000px) rotateY(-2deg) rotateX(1deg); }
.hero-map-visual{position:relative;width:min(650px,100%);margin:0 0 0 auto;overflow:hidden;border:0;border-radius:14px;background:transparent;box-shadow:none}.hero-map-visual::after{display:none}.hero-map-image{display:block;width:100%;height:auto;object-fit:contain}
.map-grid { position: absolute; inset: 0; opacity: .24; background-image: linear-gradient(37deg, transparent 47%, #6b7898 48%, #6b7898 51%, transparent 52%), linear-gradient(-23deg, transparent 47%, #6b7898 48%, #6b7898 51%, transparent 52%); background-size: 100px 75px, 140px 90px; }
.map-grid::before, .map-grid::after { content:""; position:absolute; background:#73809c; opacity:.5; transform:rotate(-30deg); border-radius: 20px; }
.map-grid::before { width:680px;height:8px;left:-50px;top:170px; }.map-grid::after { width:520px;height:6px;left:70px;top:340px; transform:rotate(26deg); }
.map-route { position:absolute; width:270px;height:230px;left:115px;top:90px;border:4px dashed var(--aqua);border-width:0 4px 4px 0;border-radius:0 80px 90px 0;transform:rotate(15deg);filter:drop-shadow(0 0 5px rgba(66,217,199,.5)); }
.map-pin { position:absolute; z-index:2; }.pin-start{left:105px;top:105px}.pin-end{right:72px;top:315px}
.map-pin > span { display:grid;place-items:center;width:48px;height:48px;color:var(--navy);background:var(--aqua);border:5px solid rgba(255,255,255,.22);box-shadow:0 7px 20px rgba(0,0,0,.25);border-radius:50% 50% 50% 4px;transform:rotate(-45deg); }.map-pin svg{width:20px;transform:rotate(45deg)}.pin-end>span{color:#fff;background:var(--coral)}
.courier-chip { position:absolute;z-index:4;top:28px;right:24px;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;color:var(--ink);background:rgba(255,255,255,.95);box-shadow:var(--shadow);border-radius:14px; }
.courier-chip .avatar{width:38px;height:38px}.courier-chip div{display:grid}.courier-chip b{font-size:11px}.courier-chip small{font-size:9px;color:var(--muted)}.live-dot{width:8px;height:8px;background:var(--green);box-shadow:0 0 0 4px rgba(45,187,131,.15);border-radius:50%;}
.order-floating-card { position:absolute;z-index:4;left:24px;bottom:24px;width:260px;padding:20px;color:var(--ink);background:rgba(255,255,255,.97);box-shadow:var(--shadow);border-radius:18px; }
.order-floating-card h3{margin:10px 0 15px;font-size:16px}.mini-route{position:relative;display:flex;gap:11px;padding-bottom:13px}.mini-route i{flex:0 0 9px;height:9px;margin-top:3px;border:2px solid var(--blue);border-radius:50%}.mini-route:nth-of-type(2) i{border-color:var(--coral)}.mini-route:first-of-type::after{content:"";position:absolute;width:1px;height:19px;left:4px;top:12px;background:var(--line)}.mini-route span{display:grid}.mini-route b{font-size:11px}.mini-route small{font-size:9px;color:var(--muted)}.floating-total{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.floating-total b{font-size:12px;color:var(--ink)}
.section { padding: 105px 0; }
.section-heading { max-width: 620px; margin-bottom: 55px; }.section-heading.centered{text-align:center;margin-inline:auto}.section-heading h2,.split-grid h2{margin:14px 0 14px;font-size:40px;line-height:1.15;letter-spacing:-.045em}.section-heading p,.split-grid>div>p{color:var(--text);font-size:17px;line-height:1.7}
.how-section { background:var(--canvas); }.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step-card{position:relative;padding:32px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);transition:.2s}.step-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.step-number{position:absolute;right:25px;top:25px;color:#8799bf;font:800 32px/1 "Manrope"}.feature-icon,.stat-icon,.card-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px}.feature-icon svg{width:24px}.coral{color:var(--coral-dark);background:#fff0ed}.blue{color:var(--blue);background:#edf2ff}.green{color:var(--green);background:#eaf9f4}.gold{color:#cf8d22;background:#fff7e6}.step-card h3{margin:24px 0 9px;font-size:18px}.step-card p{margin:0;color:var(--text);line-height:1.65}
.how-section .step-card{background:#fff;border-color:#dfe4ed;box-shadow:0 10px 28px rgba(24,33,58,.07)}.how-section .step-card:hover{box-shadow:0 16px 38px rgba(24,33,58,.11)}
.security-section{background:#fff;border-block:1px solid var(--line)}.security-heading{max-width:700px}.security-heading p{max-width:610px;margin-inline:auto}.security-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.security-protocol{position:relative;display:grid;justify-items:center;padding:30px 24px 27px;background:#fff;border:1px solid #dce9e5;border-radius:19px;box-shadow:0 9px 26px rgba(25,69,58,.06);text-align:center}.security-protocol:not(:last-child)::after{content:"→";position:absolute;z-index:2;top:50%;right:-17px;display:grid;place-items:center;width:32px;height:32px;color:#29957b;background:#fff;border:1px solid #cfd8e4;border-radius:50%;font:800 16px/1 "Manrope";transform:translateY(-50%)}.security-protocol-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;color:#176b5b;background:#dff5ee;border-radius:17px}.security-protocol:nth-child(2) .security-protocol-icon{color:#345fbe;background:#e8efff}.security-protocol:nth-child(3) .security-protocol-icon{color:#c7594f;background:#fff0ed}.security-protocol-icon svg{width:27px;height:27px}.security-protocol small{color:#23845f;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.security-protocol h3{margin:8px 0 8px;font-size:18px}.security-protocol p{max-width:280px;margin:0;color:var(--text);font-size:13px;line-height:1.55}.security-alert{display:flex;align-items:center;justify-content:center;gap:13px;width:min(760px,100%);margin:24px auto 0;padding:15px 18px;background:#fff;border:1px solid #d8e6e2;border-radius:15px;box-shadow:0 6px 18px rgba(25,69,58,.04)}.security-alert>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#176b5b;background:#e3f6f0;border-radius:11px}.security-alert svg{width:20px;height:20px}.security-alert p{display:grid;gap:2px;margin:0}.security-alert b{font-size:13px}.security-alert small{color:var(--muted);font-size:11px;line-height:1.4}
.security-protocol:nth-child(2) .security-protocol-icon svg{width:32px;height:32px;overflow:visible}
.security-protocol:not(:last-child)::after{right:-26px}
.split-section{padding-bottom:0;background:#fff}.split-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.check-list{display:grid;gap:15px;margin:25px 0 0;padding:0;list-style:none}.check-list li{display:flex;align-items:center;gap:10px;font-weight:600}.check-list svg{width:21px;color:var(--green)}.stats-panel{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.stats-panel>div{display:grid;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stats-panel strong{font-size:36px;letter-spacing:-.05em}.stats-panel span{color:var(--muted);font-size:12px}.stats-highlight{grid-column:1/-1;display:flex!important;flex-direction:row;align-items:center;gap:15px!important;background:var(--navy);border:0!important;color:#fff}.stats-highlight svg{width:34px;height:34px;color:var(--aqua)}.stats-highlight span{display:grid}.stats-highlight b{color:#fff}.site-footer{padding:45px 0;background:#0b1229;color:#fff}.footer-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:32px}.footer-inner .brand{justify-self:start}.footer-copy{margin:0;color:rgba(255,255,255,.68);font-size:15px;font-weight:500;line-height:1.45;text-align:center}.footer-links,.footer-contact{display:grid;gap:10px}.footer-links{justify-items:start;font-size:13px}.footer-contact{margin:0;font-style:normal}.footer-contact strong{font-size:13px}.footer-links a{color:rgba(255,255,255,.8);overflow-wrap:anywhere}.footer-links a:hover,.footer-links a:focus-visible{color:var(--aqua);text-decoration:underline}.privacy-hero{padding:150px 0 65px;color:#fff;background:var(--navy)}.privacy-hero h1{margin:0 0 10px;font-size:clamp(32px,5vw,52px)}.privacy-hero p{margin:0;color:rgba(255,255,255,.75)}.privacy-content{max-width:800px;padding-top:64px;padding-bottom:80px}.privacy-content h2{margin:28px 0 10px;font-size:21px}.privacy-content h2:first-child{margin-top:0}.privacy-content p{color:var(--text);line-height:1.7}.privacy-content a{color:#315fbd;text-decoration:underline}

.local-delivery-visual{position:relative;display:grid;place-items:center;min-height:500px;margin:0;isolation:isolate}.local-delivery-visual::before{content:"";position:absolute;z-index:-1;width:84%;aspect-ratio:1;max-width:470px;background:radial-gradient(circle,#fff 0 50%,rgba(223,245,238,.78) 51% 67%,transparent 68%);border-radius:50%}.local-delivery-visual::after{content:"";position:absolute;z-index:-1;right:4%;bottom:11%;width:92px;height:92px;background:#ffe7e3;border-radius:28px;transform:rotate(14deg)}.local-delivery-visual img{position:relative;z-index:1;width:min(100%,540px);height:auto;object-fit:contain;filter:drop-shadow(0 22px 24px rgba(24,33,58,.12))}
.local-expansion-banner{width:100%;margin-top:34px;padding:11px 0;color:#49556c;background:#fff}.local-expansion-inner{display:flex;align-items:center;justify-content:flex-start;gap:11px;text-align:left}.local-expansion-icon{flex:0 0 17px;width:17px;height:17px;color:#4a6aa8}.local-expansion-banner p{margin:0;font-size:12px;line-height:1.4;text-align:left;white-space:nowrap}.local-expansion-banner b{color:#263652;font-size:12px}.local-expansion-banner a{display:inline-flex;align-items:center;gap:5px;color:#315fbd;font-size:12px;font-weight:800;white-space:nowrap}.local-expansion-banner a svg{width:14px;height:14px}
@media(max-width:920px){.local-delivery-visual{min-height:450px}.local-delivery-visual img{width:min(100%,500px)}}
@media(max-width:680px){.local-delivery-visual{min-height:390px}.local-delivery-visual img{width:min(100%,440px)}}
@media(max-width:680px){.local-expansion-banner{margin-top:24px;padding:10px 0}.local-expansion-inner{flex-wrap:wrap}.local-expansion-banner p{flex:1 1 calc(100% - 30px);white-space:normal}.local-expansion-banner a{white-space:normal}}

/* Auth and forms */
.auth-page { background:var(--canvas); }.auth-page .public-header{position:absolute}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-form-side{display:grid;place-items:center;padding:120px 30px 60px}.auth-card{width:min(440px,100%)}.auth-card-wide{width:min(620px,100%)}.auth-card h1{margin:13px 0 8px;font-size:40px;letter-spacing:-.05em}.form-intro{margin-bottom:28px;color:var(--muted)}
.form-stack{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:8px;color:var(--ink);font-size:13px;font-weight:700}label small{color:var(--muted);font-weight:400}input,select,textarea{width:100%;min-height:48px;padding:12px 14px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;outline:none;transition:.18s}textarea{resize:vertical;line-height:1.5}input::placeholder,textarea::placeholder{color:#a4abbb}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}
.auth-login-error{padding:12px 14px;color:#9f2934;background:#fff1f2;border:1px solid #efc2c7;border-radius:11px;font-size:12px;font-weight:700;line-height:1.45}.auth-login-error[hidden]{display:none!important}
.taxi-existing-account-notice{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;margin:18px 0;padding:16px;color:#593f0b;background:#fff7d9;border:2px solid #e8bd3d;border-radius:14px;box-shadow:0 8px 22px rgba(116,82,8,.12)}.taxi-existing-account-notice>span{display:grid;place-items:center;width:38px;height:38px;color:#fff;background:#d99b0b;border-radius:50%}.taxi-existing-account-notice svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2}.taxi-existing-account-notice>div{display:grid;gap:6px}.taxi-existing-account-notice strong{color:#473000;font-size:16px;line-height:1.25}.taxi-existing-account-notice p{margin:0;font-size:13px;font-weight:650;line-height:1.5}.taxi-existing-account-notice a{width:max-content;color:#7b5000;font-size:12px;font-weight:850;text-decoration:underline;text-underline-offset:3px}.taxi-existing-account-notice a:hover,.taxi-existing-account-notice a:focus-visible{color:#3f2900;outline:none}
.taxi-registration-account-conflict{width:min(450px,calc(100% - 28px));max-width:none;margin:auto;padding:0;overflow:visible;color:var(--ink);background:transparent;border:0}.taxi-registration-account-conflict::backdrop{background:rgba(8,20,38,.58);backdrop-filter:blur(4px)}.taxi-registration-account-conflict-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;padding:28px;background:#fff;border:1px solid rgba(218,224,234,.9);border-radius:20px;box-shadow:0 24px 70px rgba(8,20,38,.28)}.taxi-registration-account-conflict-icon{display:grid;place-items:center;width:44px;height:44px;color:#161616;background:#ffca46;border-radius:13px}.taxi-registration-account-conflict-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2}.taxi-registration-account-conflict-copy{display:grid;gap:11px}.taxi-registration-account-conflict strong{color:var(--navy);font-size:18px;line-height:1.35}.taxi-registration-account-conflict p{margin:0;color:#526078;font-size:14px;font-weight:600;line-height:1.65}.taxi-registration-account-conflict small{color:#7a8599;font-size:11px;line-height:1.5}.taxi-registration-account-conflict-actions{grid-column:1/-1;display:grid;gap:10px;margin-top:10px}.taxi-registration-account-conflict-actions .button{display:flex;align-items:center;justify-content:center;min-height:48px;margin:0;padding:12px 15px;font-size:13px;text-align:center}.taxi-registration-account-access{color:#fff!important;background:#111!important;border-color:#111!important;box-shadow:0 8px 18px rgba(17,17,17,.16)}.taxi-registration-account-access:hover,.taxi-registration-account-access:focus-visible{color:#fff!important;background:#000!important;border-color:#000!important}.taxi-registration-account-conflict:not([open]){display:none}@media(max-width:480px){.taxi-registration-account-conflict-card{grid-template-columns:40px minmax(0,1fr);gap:14px;padding:23px 20px;border-radius:18px}.taxi-registration-account-conflict-icon{width:40px;height:40px}.taxi-registration-account-conflict strong{font-size:17px}.taxi-registration-account-conflict p{font-size:13.5px}}
.auth-switch{text-align:center;margin:24px 0 0;color:var(--muted)}.auth-switch a{color:var(--coral-dark);font-weight:700}.auth-visual{position:relative;display:flex;align-items:flex-end;padding:70px;overflow:hidden;background:linear-gradient(145deg,rgba(16,25,53,.35),rgba(16,25,53,.88)),linear-gradient(135deg,#4a7df2,#42d9c7)}.auth-visual::before{content:"";position:absolute;width:480px;height:480px;right:-100px;top:-100px;border:80px solid rgba(255,255,255,.08);border-radius:50%}.auth-quote,.auth-benefits{position:relative;z-index:1;max-width:470px;color:#fff}.auth-quote>svg{width:44px;height:44px;color:var(--aqua)}.auth-quote blockquote{margin:25px 0;font:700 31px/1.35 "Manrope";letter-spacing:-.035em}.auth-quote span{color:rgba(255,255,255,.65)}
.login-shell .auth-switch{font-size:12px;line-height:1.45}
.auth-shell-returning{grid-template-columns:1fr}.auth-shell-returning .auth-form-side{padding-inline:20px}.auth-shell-returning .auth-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft)}
.role-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;padding:0;border:0}.role-picker legend{margin-bottom:9px;font-size:13px;font-weight:700}.role-picker label{display:block}.role-picker input{position:absolute;opacity:0;pointer-events:none}.role-picker label>span{display:grid;grid-template-columns:42px 1fr;column-gap:11px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.role-picker svg{grid-row:1/3;width:27px;height:27px;align-self:center;color:var(--blue)}.role-picker b{font-size:13px}.role-picker small{font-size:11px}.role-picker input:checked+span{border-color:var(--blue);box-shadow:0 0 0 3px rgba(74,125,242,.09);background:#f7f9ff}.role-picker input:checked+span::after{content:"✓";position:absolute;align-self:start;justify-self:end;color:#fff;background:var(--blue);border-radius:50%;width:18px;height:18px;text-align:center;font-size:11px;line-height:18px}.courier-fields{display:grid;gap:17px}.photo-upload{grid-template-columns:auto 1fr auto;align-items:center;padding:13px;border:1px dashed #cbd2df;border-radius:13px;background:#fff;cursor:pointer}.photo-upload input{display:none}.photo-preview{display:grid;place-items:center;width:48px;height:48px;color:var(--blue);background:#edf2ff;border-radius:12px;overflow:hidden}.photo-upload>span:nth-of-type(2){display:grid}.photo-upload em{padding:8px 11px;color:var(--blue);background:#edf2ff;border-radius:8px;font-style:normal;font-size:11px}.terms{grid-template-columns:auto 1fr;align-items:start;font-weight:400;color:var(--text)}.terms input{width:18px;min-height:18px;margin:0;accent-color:var(--navy)}.auth-visual-courier{align-items:center;background:linear-gradient(145deg,rgba(16,25,53,.18),rgba(16,25,53,.72)),linear-gradient(135deg,#273e75,#34bcae)}.auth-benefits h2{margin:17px 0 30px;font-size:38px}.auth-benefits ul{display:grid;gap:16px;padding:0;list-style:none}.auth-benefits li{display:flex;align-items:center;gap:12px;font-weight:600}.auth-benefits li span{display:grid;place-items:center;width:32px;height:32px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:9px;color:var(--aqua)}

/* App dashboards */
.page-bg{min-height:calc(100vh - 72px);background:var(--canvas)}.dashboard-shell{padding:48px 0 100px}.welcome-row,.courier-welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.welcome-row h1,.courier-welcome h1,.page-heading h1,.form-page-heading h1,.detail-heading h1{margin:9px 0 5px;font-size:34px;letter-spacing:-.045em}.welcome-row p,.courier-welcome p,.page-heading p,.form-page-heading p,.detail-heading p{margin:0;color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:35px}.stat-grid.courier-stats{grid-template-columns:repeat(4,1fr)}.stat-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-soft)}.stat-card div{display:grid}.stat-card small{color:var(--muted);font-size:12px}.stat-card strong{font-size:25px;letter-spacing:-.04em}.stat-icon{flex:0 0 44px;width:44px;height:44px}.stat-icon svg{width:22px}
.content-section{margin-top:24px}.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.section-title-row h2{margin:0 0 3px;font-size:20px;letter-spacing:-.025em}.section-title-row p{margin:0;color:var(--muted);font-size:12px}.count-badge{padding:7px 11px;color:var(--blue);background:#e8efff;border-radius:20px;font-size:11px;font-weight:700}.order-list{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.order-row{position:relative;display:grid;grid-template-columns:1.4fr 1fr .55fr 24px;align-items:center;gap:24px;padding:20px 22px;border-bottom:1px solid var(--line);transition:background .15s}.order-row:last-child{border-bottom:0}.order-row:hover{background:#fafbfe}.order-main{display:flex;align-items:flex-start;gap:14px;min-width:0}.package-mark{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;color:var(--coral-dark);background:#fff0ed;border-radius:12px}.order-main>div:last-child{min-width:0}.order-title-line{display:flex;align-items:center;gap:9px}.order-title-line h3{margin:0;font-size:14px}.order-main p{margin:5px 0;color:var(--text);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-date{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.order-date svg{width:13px;height:13px}.status-pill{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 9px;border-radius:20px;font-size:10px;font-weight:700;white-space:nowrap}.status-pill i{width:6px;height:6px;background:currentColor;border-radius:50%}.status-publicado{color:#cf7b17;background:#fff4e2}.status-aceptado{color:#416dcc;background:#e9efff}.status-recogido{color:#7753c4;background:#f0ebff}.status-en_camino{color:#238b80;background:#e6faf6}.status-entregado{color:#25885f;background:#e6f8f0}.status-cancelado{color:#be4550;background:#fcebed}.order-route{position:relative;display:grid;gap:11px}.order-route::before{content:"";position:absolute;left:4px;top:10px;height:24px;border-left:1px dashed #cbd2df}.order-route span{position:relative;display:grid;padding-left:18px;min-width:0}.route-dot{position:absolute;left:0;top:3px;width:9px;height:9px;border:2px solid var(--blue);background:#fff;border-radius:50%}.route-dot.end{border-color:var(--coral)}.order-route b{font-size:11px}.order-route small{color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-side{display:grid;justify-items:end;gap:8px}.order-side>strong{font-size:15px}.order-side>strong small,.active-top strong small{display:block;color:var(--muted);font-size:8px;text-align:right}.assigned{display:flex;align-items:center;gap:6px;color:var(--text);font-size:10px}.avatar{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;overflow:hidden;color:#fff;background:linear-gradient(145deg,var(--blue),#7753c4);border-radius:50%;font-style:normal;font-weight:700}.avatar-sm{width:36px;height:36px;font-size:12px}.avatar-xs{width:25px;height:25px;font-size:9px}.avatar-lg{width:64px;height:64px;font-size:22px}.avatar-xl{width:94px;height:94px;font-size:30px}.row-arrow{width:17px;color:#a3abba}.empty-state{padding:65px 25px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.empty-state>span,.standalone-state>span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;color:var(--blue);background:#edf2ff;border-radius:20px}.empty-state h3{margin-bottom:7px}.empty-state p{color:var(--muted)}.empty-state.compact{padding:45px 24px}.empty-state.compact>span{width:52px;height:52px}
.section-history-link{flex:0 0 auto;color:var(--blue);font-size:11px;font-weight:700}
.courier-identity{display:flex;align-items:center;gap:15px}.courier-welcome p{display:flex;align-items:center;gap:5px;font-size:12px}.availability{display:flex;align-items:center;gap:10px;min-width:155px;padding:10px 14px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.availability>i{width:11px;height:11px;border-radius:50%}.availability.online>i{background:var(--green);box-shadow:0 0 0 5px rgba(45,187,131,.12)}.availability.offline>i{background:#aaa}.availability span{display:grid;text-align:left}.availability b{font-size:12px}.availability small{color:var(--muted);font-size:9px}.live-label{display:inline-flex;align-items:center;gap:7px;margin-bottom:6px;color:var(--green);font-size:10px;font-weight:700;text-transform:uppercase}.live-label i{width:7px;height:7px;background:var(--green);box-shadow:0 0 0 4px rgba(45,187,131,.12);border-radius:50%}.active-delivery-card{display:grid;grid-template-columns:.6fr 1.5fr .75fr;align-items:center;gap:24px;padding:22px;background:var(--navy);border-radius:var(--radius);box-shadow:0 18px 35px rgba(16,25,53,.15);color:#fff}.active-top{display:grid;gap:15px}.active-top>strong{font-size:23px}.active-route{display:grid;grid-template-columns:1fr 1fr;gap:18px}.active-route>div{display:flex;gap:10px}.active-route i{flex:0 0 11px;width:11px;height:11px;margin-top:4px;border:3px solid var(--aqua);border-radius:50%}.active-route>div:last-child i{border-color:var(--coral)}.active-route span{display:grid}.active-route small{color:rgba(255,255,255,.5);font-size:9px;text-transform:uppercase}.active-route b{font-size:12px}.active-route p{margin:3px 0 0;color:rgba(255,255,255,.65);font-size:10px}.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.offer-card{padding:21px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.offer-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding-bottom:16px;border-bottom:1px solid var(--line)}.shop-avatar{display:grid;place-items:center;width:39px;height:39px;color:var(--coral-dark);background:#fff0ed;border-radius:11px;font-weight:800}.offer-head>div{display:grid}.offer-head>div b{font-size:12px}.offer-head>div span{display:flex;align-items:center;gap:3px;color:#cf8d22;font-size:10px}.offer-head>div svg{width:12px;height:12px;fill:currentColor}.offer-head>strong{font-size:18px;text-align:right}.offer-head>strong small{display:block;color:var(--muted);font-size:8px}.offer-package{display:flex;gap:10px;padding:15px 0}.offer-package>svg{flex:0 0 20px;color:var(--coral)}.offer-package span{display:grid}.offer-package b{font-size:12px}.offer-package small{margin-top:2px;color:var(--muted);font-size:10px}.offer-route{position:relative;display:grid;gap:12px;padding:12px 14px;background:var(--canvas);border-radius:12px}.offer-route::before{content:"";position:absolute;left:19px;top:28px;height:24px;border-left:1px dashed #bdc5d5}.offer-route>div{display:flex;gap:10px}.offer-route i{position:relative;z-index:1;width:9px;height:9px;margin-top:3px;background:#fff;border:2px solid var(--blue);border-radius:50%}.offer-route>div:last-child i{border-color:var(--coral)}.offer-route span{display:grid}.offer-route b{font-size:11px}.offer-route small{color:var(--muted);font-size:9px}.offer-actions{display:grid;grid-template-columns:.7fr 1fr;gap:9px;margin-top:15px}.offer-actions form,.offer-actions button{width:100%}.card-detail-link{display:block;margin-top:12px;color:var(--blue);text-align:center;font-size:10px;font-weight:700}.notice-card{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:13px 16px;color:#805d23;background:#fff8e9;border:1px solid #f4dfb9;border-radius:12px}.notice-card>svg{color:#cf8d22}.notice-card span{display:grid}.notice-card b{font-size:12px}.notice-card small{font-size:10px}
.active-delivery-section>.active-delivery-card~.active-delivery-card{margin-top:16px}
.offline-pickup-code-reminder{display:flex;align-items:center;gap:12px;margin-top:13px;padding:10px 12px;color:var(--navy);background:var(--aqua);border-radius:13px}.offline-pickup-code-reminder span{display:grid;flex:0 0 auto}.offline-pickup-code-reminder small{font-size:8px;font-weight:900;letter-spacing:.07em}.offline-pickup-code-reminder strong{font-size:22px;line-height:1;letter-spacing:.16em}.offline-pickup-code-reminder p{margin:0!important;color:#174f48!important;font-size:10px!important;line-height:1.35!important}.offline-courier-empty{max-width:680px;margin-inline:auto}.offline-courier-empty .empty-state>span{color:#6d7890;background:#eef1f6}.offline-courier-empty .empty-state h3{margin-bottom:8px}.offline-courier-empty .empty-state p{max-width:430px;margin:0 auto;line-height:1.55}@media(max-width:520px){.offline-pickup-code-reminder{align-items:flex-start;flex-direction:column;gap:7px}.offline-pickup-code-reminder strong{font-size:25px}}

/* New order and detail */
.form-page-shell,.detail-shell{padding:44px 0 100px}.form-page-heading{max-width:650px;margin-bottom:30px}.order-form{display:grid;gap:18px}.form-card,.detail-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.form-card-heading,.card-heading{display:flex;align-items:center;gap:13px;margin-bottom:23px}.form-card-heading>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;color:#fff;background:var(--navy);border-radius:11px;font-weight:700}.form-card-heading h2,.card-heading h2{margin:0 0 3px;font-size:17px}.form-card-heading p,.card-heading p{margin:0;color:var(--muted);font-size:11px}.route-form-line{position:relative;display:grid;gap:20px}.route-form-line::before{content:"";position:absolute;left:4px;top:23px;height:70px;border-left:1px dashed #bfc7d6}.route-form-fields{position:relative;padding-left:23px}.route-form-fields>.route-dot{top:20px;background:#fff}.money-input{position:relative}.money-input span{position:absolute;left:14px;top:50%;color:var(--muted);transform:translateY(-50%)}.money-input input{padding-left:30px}.package-payment-fields{align-items:start}.package-payment-fields>label{gap:4px}.package-payment-fields select,.package-payment-fields input,.package-payment-fields .money-input{height:48px;min-height:48px}.package-payment-fields select{padding-block:0}.form-submit-row{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:#eaf9f4;border:1px solid #c8eadf;border-radius:14px}.form-submit-row>div{display:flex;align-items:center;gap:11px}.form-submit-row>div>svg{color:var(--green)}.form-submit-row span{display:grid}.form-submit-row b{font-size:12px}.form-submit-row small{color:var(--text);font-size:10px}
.detail-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.detail-heading h1{margin-top:13px}.detail-price{font-size:28px;text-align:right}.detail-price small{display:block;color:var(--muted);font-size:10px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px}.detail-main{display:grid;gap:18px}.card-icon{width:42px;height:42px}.large-route{position:relative;display:grid;gap:23px;padding:5px 0 3px}.large-route::before{content:"";position:absolute;left:7px;top:18px;height:57px;border-left:2px dashed #cfd5df}.large-route>div{display:flex;gap:16px}.large-route i{position:relative;z-index:1;flex:0 0 15px;width:15px;height:15px;margin-top:3px;background:#fff;border:4px solid var(--blue);border-radius:50%}.large-route>div:last-child i{border-color:var(--coral)}.large-route span{display:grid}.large-route small,.info-grid small,.contact-item small,.recipient-box small{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em}.large-route b{margin-top:3px;font-size:14px}.large-route p{margin:2px 0 0;color:var(--text);font-size:12px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.info-grid>div{display:grid;padding:13px;background:var(--canvas);border-radius:11px}.info-grid b{margin-top:3px;font-size:12px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-item{display:flex;align-items:center;gap:11px;padding:13px;background:var(--canvas);border-radius:12px}.contact-item>div{display:grid}.contact-item b{font-size:12px}.contact-item a{display:flex;align-items:center;gap:4px;margin-top:3px;color:var(--blue);font-size:10px}.contact-item a svg{width:12px;height:12px}.recipient-box{display:grid;grid-template-columns:1fr auto;margin-top:13px;padding:13px 15px;background:#fff8e9;border:1px solid #f2e1bd;border-radius:11px}.recipient-box small{grid-column:1/-1}.recipient-box b,.recipient-box a{font-size:12px}.recipient-box a{color:var(--blue)}.detail-aside{position:sticky;top:93px;display:grid;gap:15px}.timeline-card h2{font-size:17px}.timeline{display:grid}.timeline-event{position:relative;display:flex;gap:11px;padding-bottom:24px}.timeline-event:last-child{padding-bottom:0}.timeline-event::before{content:"";position:absolute;left:13px;top:27px;height:calc(100% - 25px);border-left:1px solid var(--line)}.timeline-event:last-child::before{display:none}.timeline-event>i{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;color:#fff;background:#c9cfdb;border-radius:50%}.timeline-event>i svg{width:14px}.timeline-event.complete>i{background:var(--green)}.timeline-event.current>i{background:var(--blue);box-shadow:0 0 0 5px rgba(74,125,242,.1)}.timeline-event>span{display:grid}.timeline-event b{font-size:12px}.timeline-event small{margin-top:2px;color:var(--muted);font-size:9px}.timeline-event p{margin:4px 0 0;color:var(--text);font-size:10px}.action-card{padding:24px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.action-card h2{margin:10px 0 8px;font-size:19px}.action-card p{color:var(--muted);font-size:12px;line-height:1.5}.action-card form+form{margin-top:7px}.action-card-primary{color:#fff;background:var(--navy);border:0}.action-card-primary p{color:rgba(255,255,255,.62)}.danger-details{padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:13px;color:var(--muted);font-size:11px}.danger-details summary{cursor:pointer;font-weight:700}.danger-details p{margin:12px 0}.rating-card{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.rating-card h2{margin:10px 0 5px}.rating-card p{margin:0;color:var(--muted);font-size:12px}.rating-card form{display:grid;gap:10px}.star-picker{display:flex;flex-direction:row-reverse;justify-content:flex-end}.star-picker input{position:absolute;opacity:0}.star-picker label{display:block;color:#d8dce5;font-size:28px;cursor:pointer}.star-picker input:checked~label,.star-picker label:hover,.star-picker label:hover~label{color:var(--gold)}.rated-note{display:flex;align-items:center;gap:9px;padding:15px;color:#946419;background:#fff7e6;border:1px solid #f3ddb4;border-radius:13px;font-size:12px}.rated-note svg{fill:currentColor}

/* Profile, notifications, states */
.profile-shell{padding:45px 0 100px}.profile-banner{display:flex;align-items:center;gap:20px;margin-bottom:27px;padding:28px;color:#fff;background:linear-gradient(120deg,var(--navy),#263c74);border-radius:22px;box-shadow:var(--shadow)}.profile-avatar-wrap{position:relative}.profile-role{position:absolute;right:-7px;bottom:-5px;padding:4px 7px;color:var(--navy);background:var(--aqua);border:3px solid #1c2c58;border-radius:12px;font-size:8px;font-weight:800;text-transform:uppercase}.profile-banner h1{margin:0 0 5px;font-size:27px}.profile-banner p{margin:0;color:rgba(255,255,255,.55)}.rating-display{display:flex;align-items:center;gap:5px;margin-top:7px;color:var(--gold);font-size:11px}.rating-display svg{width:14px;fill:currentColor}.profile-grid{display:grid;grid-template-columns:1fr 300px;align-items:start;gap:18px}.profile-form{display:grid;gap:18px}.compact-upload{margin-top:0}.switch-row{position:relative;display:flex;align-items:center;justify-content:space-between;padding:15px;background:var(--canvas);border-radius:12px}.switch-row>span{display:grid}.switch-row input{position:absolute;opacity:0}.switch-row>i{position:relative;width:44px;height:25px;background:#cbd1db;border-radius:20px;transition:.2s}.switch-row>i::after{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.2s}.switch-row input:checked+i{background:var(--green)}.switch-row input:checked+i::after{transform:translateX(19px)}.profile-aside{display:grid;gap:13px}.profile-aside h2{font-size:17px}.profile-aside dl{display:grid;margin:0}.profile-aside dl div{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid var(--line)}.profile-aside dl div:last-child{border-bottom:0}.profile-aside dt{color:var(--muted);font-size:10px}.profile-aside dd{margin:0;font-size:12px;font-weight:600}.page-heading{margin-bottom:25px}.notification-list{padding:0;overflow:hidden}.notification-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:17px 19px;border-bottom:1px solid var(--line);transition:.15s}.notification-item:last-child{border-bottom:0}.notification-item:hover{background:#fafbfe}.notification-item.unread{background:#f7f9ff}.notification-kind{display:grid;place-items:center;width:42px;height:42px;color:var(--blue);background:#edf2ff;border-radius:12px}.notification-kind.new_order{color:var(--coral-dark);background:#fff0ed}.notification-item>span:nth-child(2){display:grid}.notification-item b{font-size:12px}.notification-item small{margin-top:3px;color:var(--muted);font-size:10px}.standalone-state{display:grid;justify-items:center;align-content:center;min-height:calc(100vh - 72px);padding:40px;text-align:center;background:var(--canvas)}.standalone-state h1{margin-bottom:10px;font-size:35px}.standalone-state p{max-width:500px;color:var(--muted);line-height:1.7}.toast-stack{position:fixed;z-index:500;top:calc(env(safe-area-inset-top,0px) + 85px);right:18px;display:grid;gap:9px;width:min(390px,calc(100% - 36px))}.toast:empty{display:none!important}.toast{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:13px 14px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);font-size:12px;animation:toast-in .25s ease}.toast-symbol{display:grid;place-items:center;width:25px;height:25px;color:#fff;background:var(--green);border-radius:50%;font-weight:800}.toast-error .toast-symbol{background:var(--red)}.toast-close{border:0;background:transparent;color:var(--muted);cursor:pointer}.toast-close svg{width:17px}.toast.hiding{opacity:0;transform:translateY(-6px);transition:.2s}@keyframes toast-in{from{opacity:0;transform:translateY(-10px)}}
@media(max-width:680px){.toast-stack:not(.notification-reminder-stack){top:calc(env(safe-area-inset-top,0px) + 70px)}}
.login-lockout{display:grid;grid-template-columns:auto 1fr;gap:13px;margin:18px 0 14px;padding:16px;color:#713f12;background:#fff8e7;border:1px solid #f0d38a;border-radius:14px}.login-lockout-icon{display:grid;place-items:center;width:38px;height:38px;color:#95600d;background:#ffe6a8;border-radius:11px}.login-lockout-icon svg{width:21px;height:21px}.login-lockout strong{display:block;margin:1px 0 5px;color:#653d09;font-size:13px}.login-lockout p{margin:0;color:#76501b;font-size:11px;line-height:1.55}.login-lockout small{display:block;margin-top:7px;color:#8b6a39;font-size:9px;line-height:1.5}.login-lockout-actions{display:grid;gap:9px}.login-lockout-actions .button-text{margin-top:1px}
.toast-promotion{border-color:#bfe6d3}.toast-promotion .toast-symbol{background:#2b9c72}.toast-promotion .toast-symbol svg{width:14px;height:14px}.toast-promotion .toast-copy{display:grid;gap:5px;line-height:1.4}.toast-promotion .toast-copy>a{justify-self:start;color:#176b50;font-size:11px;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.notification-permission-toast .toast-symbol{background:var(--coral)}.notification-permission-toast .toast-copy{display:grid;gap:4px;line-height:1.4}.notification-permission-toast .toast-copy a{width:max-content;color:var(--blue);font-size:11px;font-weight:800}
.notification-reminder-stack{z-index:1300;top:calc(env(safe-area-inset-top,0px) + 8px);right:auto;left:50%;width:min(410px,calc(100% - 20px));transform:translateX(-50%);pointer-events:none}.notification-reminder-stack .notification-permission-toast{grid-template-columns:30px minmax(0,1fr) 36px;gap:9px;width:100%;padding:10px 10px 10px 12px;border-color:#e2e6ef;border-radius:14px;box-shadow:0 8px 24px rgba(16,25,53,.15);pointer-events:auto}.notification-reminder-stack .toast-symbol{width:28px;height:28px}.notification-reminder-stack .toast-symbol svg{width:15px;height:15px}.notification-reminder-stack .toast-copy{min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.notification-reminder-stack .toast-copy span{font-size:12px;line-height:1.3}.notification-reminder-stack .toast-copy a{padding:6px 9px;color:#fff;background:var(--blue);border-radius:9px;font-size:10px;line-height:1.2}.notification-reminder-stack .toast-close{display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:10px}.notification-reminder-stack .toast-close:active{background:var(--canvas)}
.passenger-notification-overlay{position:fixed;z-index:1600;inset:0;display:grid;place-items:center;padding:20px;background:rgba(8,18,36,.56);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:opacity .2s}.passenger-notification-overlay.hiding{opacity:0;pointer-events:none}.passenger-notification-prompt{grid-template-columns:52px minmax(0,1fr)!important;align-items:start!important;gap:15px!important;width:min(390px,100%);box-sizing:border-box;padding:22px!important;border-color:rgba(255,255,255,.8)!important;border-radius:22px!important;box-shadow:0 24px 70px rgba(5,15,32,.32)!important}.passenger-notification-prompt .toast-symbol{width:52px;height:52px;background:var(--blue);border-radius:16px}.passenger-notification-prompt .toast-symbol svg{width:25px;height:25px}.passenger-notification-prompt .toast-copy{display:grid;grid-template-columns:1fr!important;align-items:start!important;gap:7px!important}.passenger-notification-prompt .toast-copy small{color:#64748b;font-size:9px;font-weight:900;letter-spacing:.12em}.passenger-notification-prompt .toast-copy strong{color:#111827;font-size:19px;line-height:1.2}.passenger-notification-prompt .toast-copy>span{color:#526074;font-size:12px!important;line-height:1.5!important}.passenger-notification-prompt .toast-copy button{justify-self:stretch;min-height:45px;margin-top:7px;padding:10px 14px;color:#fff;background:var(--blue);border:0;border-radius:12px;font-size:12px;font-weight:850;line-height:1.2;cursor:pointer}.passenger-notification-prompt .toast-copy button:focus-visible{outline:3px solid rgba(74,125,242,.24);outline-offset:3px}.passenger-notification-prompt .toast-copy button:disabled{cursor:wait;opacity:.7}@media(max-width:420px){.passenger-notification-overlay{padding:16px}.passenger-notification-prompt{grid-template-columns:46px minmax(0,1fr)!important;padding:19px!important}.passenger-notification-prompt .toast-symbol{width:46px;height:46px}.passenger-notification-prompt .toast-copy strong{font-size:18px}}
.passenger-notification-prompt .toast-copy>.passenger-notification-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:7px}.passenger-notification-prompt .passenger-notification-actions button{margin-top:0}.passenger-notification-prompt .passenger-notification-actions .passenger-notification-later{min-width:82px;color:#425066;background:#eef2f7}@media(max-width:420px){.passenger-notification-prompt .toast-copy>.passenger-notification-actions{grid-template-columns:1fr}.passenger-notification-prompt .passenger-notification-actions .passenger-notification-later{min-height:38px}}
.profile-location-card{display:grid;gap:10px}.profile-location-card h2,.profile-location-card p{margin:0}.profile-location-card p,.profile-location-card small,.courier-last-location small{color:var(--muted);font-size:12px;line-height:1.5}.profile-location-card .button svg{width:16px;height:16px}.courier-last-location{margin-bottom:18px}.courier-last-location p{margin:8px 0}.courier-last-location a{overflow-wrap:anywhere}
[data-location-settings-link][hidden]{display:none}.toast-location-settings{grid-column:2;grid-row:2;justify-self:start}
[data-courier-geolocation][hidden]{display:none}.profile-location-card geolocation{display:block;width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;font-size:14px}
@media(max-width:420px){.notification-reminder-stack .notification-permission-toast{grid-template-columns:27px minmax(0,1fr) 34px;gap:7px;padding-left:9px}.notification-reminder-stack .toast-symbol{width:27px;height:27px}.notification-reminder-stack .toast-copy{grid-template-columns:1fr;gap:5px}.notification-reminder-stack .toast-copy a{justify-self:start;padding:4px 8px}.notification-reminder-stack .toast-close{width:34px;height:34px}}
.availability-expiry-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin:-10px 0 22px;padding:15px 17px;color:#704d16;background:#fff7e6;border:1px solid #efd69e;border-radius:14px}.availability-expiry-card>svg{width:25px;height:25px;color:#c47b12}.availability-expiry-card>span{display:grid;gap:3px}.availability-expiry-card b{font-size:13px}.availability-expiry-card small{color:#806b48;font-size:11px;line-height:1.45}.availability-expiry-card form{margin:0}.availability-expiry-card .button{white-space:nowrap}@media(max-width:680px){.availability-expiry-card{grid-template-columns:auto 1fr;margin-top:-3px}.availability-expiry-card form{grid-column:1/-1}.availability-expiry-card .button{width:100%}}
.install-banner{position:fixed;z-index:90;left:50%;bottom:22px;transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;width:min(660px,calc(100% - 30px));padding:13px;color:#fff;background:var(--navy);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 20px 50px rgba(10,17,38,.3)}.install-banner[hidden]{display:none}.install-icon{display:grid;place-items:center;width:42px;height:42px;color:#030712;background:#34e0bf;border-radius:12px 12px 12px 4px}.install-banner>div:nth-child(2){display:grid}.install-banner strong{font-size:12px}.install-banner p{margin:2px 0 0;color:rgba(255,255,255,.58);font-size:10px}.install-banner .icon-button{color:#fff}.mobile-nav{display:none}
@keyframes installProgressSpin{to{transform:rotate(360deg)}}@keyframes installProgressPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(52,224,191,.24)}50%{transform:scale(1.06);box-shadow:0 0 0 9px rgba(52,224,191,0)}}.install-progress-button.is-installing{cursor:wait;opacity:1}.install-progress-button.is-installing::before{content:"";flex:0 0 16px;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:installProgressSpin .7s linear infinite}.install-banner.is-installing .install-icon,.app-requirements-mark.is-installing{animation:installProgressPulse 1.25s ease-in-out infinite}.app-requirement-state.is-installing{display:inline-flex;align-items:center;gap:6px;color:#315cb5;background:#eaf0ff}.app-requirement-state.is-installing::before{content:"";width:7px;height:7px;background:currentColor;border-radius:50%;animation:installProgressPulse 1s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.install-progress-button.is-installing::before,.install-banner.is-installing .install-icon,.app-requirements-mark.is-installing,.app-requirement-state.is-installing::before{animation-duration:2s}}

@media (max-width: 920px) {
  .hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:140px}.hero-copy{text-align:center}.hero-copy>p,.hero-copy h1{margin-inline:auto}.hero-actions,.trust-line{justify-content:center}.hero-visual{width:100%;max-width:620px;margin-inline:auto}.map-card{margin:auto}.hero{min-height:1180px}.steps-grid{grid-template-columns:1fr}.security-flow{grid-template-columns:1fr}.security-protocol:not(:last-child)::after{content:"↓";top:auto;right:auto;left:50%;bottom:-17px;transform:translateX(-50%)}.split-grid{grid-template-columns:1fr;gap:45px}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.register-shell .auth-form-side{padding-top:110px}.stat-grid.courier-stats{grid-template-columns:repeat(3,1fr)}.desktop-only{display:none}.order-row{grid-template-columns:1.2fr .85fr .45fr 18px;gap:14px}.active-delivery-card{grid-template-columns:.55fr 1.4fr}.active-actions{grid-column:1/-1}.detail-grid{grid-template-columns:1fr}.detail-aside{position:static;grid-template-columns:1fr 1fr}.timeline-card{grid-row:span 2}.profile-grid{grid-template-columns:1fr}.profile-aside{grid-template-columns:1fr auto}.profile-aside>form{align-self:end}.form-grid.three{grid-template-columns:1fr 1fr}.form-grid.three label:last-child{grid-column:1/-1}
  .hero-actions{margin-inline:auto}
  .security-protocol:not(:last-child)::after{bottom:-26px}
}

@media (max-width: 680px) {
  body{padding-bottom:78px}.public-page,.auth-page{padding-bottom:0}.shell,.narrow-shell{width:min(100% - 28px,1160px)}.public-header .header-inner{height:64px}.public-nav{gap:12px}.public-nav>.public-login-link{display:none}.hero{min-height:auto}.hero-grid{padding:112px 0 50px;gap:45px}.hero-copy h1{font-size:43px}.hero-copy>p{font-size:15px}.hero-actions{grid-template-columns:1fr;width:100%}.trust-line{margin-top:28px}.map-card{height:410px;border-radius:24px}.order-floating-card{left:15px;bottom:15px}.courier-chip{right:14px;top:15px}.pin-start{left:60px}.pin-end{right:50px;top:275px}.map-route{left:70px;top:83px}.section{padding:75px 0}.section-heading{margin-bottom:35px}.section-heading h2,.split-grid h2{font-size:31px}.security-flow{gap:16px}.security-protocol{padding:25px 18px 22px}.security-protocol-icon{width:52px;height:52px;margin-bottom:14px;border-radius:15px}.security-protocol-icon svg{width:24px;height:24px}.security-protocol h3{font-size:16px}.security-protocol p{font-size:12px}.security-alert{align-items:flex-start;justify-content:flex-start;margin-top:21px;padding:14px}.security-alert b{font-size:12px}.split-grid{gap:30px}.stats-panel>div{padding:21px}.stats-panel strong{font-size:28px}.footer-inner{display:grid;justify-items:center;gap:15px;text-align:center}.app-header .header-inner{height:62px}.desktop-nav{display:none}.mobile-nav{position:fixed;z-index:40;inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;height:72px;padding:7px max(18px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:rgba(255,255,255,.96);border-top:1px solid var(--line);box-shadow:0 -5px 24px rgba(24,33,58,.07);backdrop-filter:blur(14px)}.mobile-nav>a{display:grid;justify-items:center;gap:2px;color:var(--muted);font-size:9px;font-weight:600}.mobile-nav>a>svg{width:22px;height:22px}.mobile-nav>a.active{color:var(--navy)}.mobile-main-action{position:relative;top:-15px}.mobile-main-action>span{position:relative;display:grid;place-items:center;width:50px;height:50px;color:#fff;background:var(--navy);border:5px solid var(--canvas);border-radius:17px;box-shadow:0 8px 20px rgba(16,25,53,.22)}.mobile-main-action svg{width:23px}.mobile-main-action b{position:absolute;top:-5px;right:-6px;display:grid;place-items:center;min-width:18px;height:18px;color:#fff;background:var(--coral);border:2px solid #fff;border-radius:10px;font-size:8px}.mobile-main-action small{font-size:9px}.dashboard-shell,.profile-shell,.form-page-shell,.detail-shell,.narrow-shell{padding-top:28px;padding-bottom:38px}.welcome-row,.courier-welcome{align-items:flex-start}.welcome-row .button{width:44px;padding:0;font-size:0}.welcome-row .button svg{margin:0}.welcome-row h1,.courier-welcome h1,.page-heading h1,.form-page-heading h1,.detail-heading h1{font-size:27px}.welcome-row p{font-size:12px}.stat-grid,.stat-grid.courier-stats{grid-template-columns:repeat(3,1fr);gap:9px}.stat-card{display:grid;justify-items:start;gap:10px;padding:13px}.stat-icon{width:38px;height:38px}.stat-card small{font-size:9px}.stat-card strong{font-size:21px}.courier-welcome{display:grid;gap:15px}.availability{width:100%}.courier-identity .avatar-lg{width:53px;height:53px}.order-list{display:grid;gap:11px;background:transparent;border:0;box-shadow:none}.order-row{grid-template-columns:1fr auto;gap:15px;padding:16px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow-soft)}.order-main{grid-column:1/-1}.order-route{grid-column:1/2}.order-side{align-self:end}.row-arrow{display:none}.offer-grid{grid-template-columns:1fr}.active-delivery-card{grid-template-columns:1fr}.active-route{grid-template-columns:1fr}.active-actions{grid-column:auto}.active-top{display:flex;align-items:center;justify-content:space-between}.form-grid,.form-grid.three{grid-template-columns:1fr}.form-grid.three label:last-child{grid-column:auto}.form-card,.detail-card{padding:19px}.form-submit-row{display:grid;gap:15px}.form-submit-row .button{width:100%}.detail-heading{align-items:center}.detail-price{font-size:21px}.detail-grid{gap:14px}.detail-aside{grid-template-columns:1fr}.timeline-card{grid-row:auto}.info-grid,.contact-grid{grid-template-columns:1fr}.rating-card{grid-template-columns:1fr}.profile-banner{padding:20px}.avatar-xl{width:72px;height:72px}.profile-banner h1{font-size:21px}.profile-grid{gap:13px}.profile-aside{grid-template-columns:1fr}.profile-aside>form{width:100%}.notification-list{padding:0}.auth-form-side{padding:98px 18px 45px}.auth-card h1{font-size:33px}.role-picker{grid-template-columns:1fr}.register-shell .auth-form-side{padding-top:92px}.install-banner{bottom:84px;grid-template-columns:auto 1fr auto}.install-banner .button{grid-column:2/3}.install-banner>.icon-button{grid-column:3;grid-row:1}.install-banner p{display:none}
  .security-protocol:not(:last-child)::after{bottom:-24px}
  .trust-line{gap:12px;margin-top:30px}
}

@media (max-width: 680px) {
  .auth-shell-returning .auth-form-side{padding:94px 14px 32px}.auth-shell-returning .auth-card{padding:24px 20px;border-radius:17px}.auth-shell-returning .auth-card h1{font-size:29px}.auth-shell-returning .form-intro{margin-bottom:23px}
}

@media (display-mode: standalone) {
  .public-header,.app-header{padding-top:env(safe-area-inset-top)}
  .mobile-nav{height:calc(72px + env(safe-area-inset-bottom))}
}

@media (prefers-reduced-motion: reduce) { *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important} }

.notification-heading { display: flex; align-items: flex-end; justify-content: space-between; }
.notification-heading-actions{display:flex;align-items:center;gap:9px}.notification-heading-actions form{margin:0}.notification-clear{min-height:42px;padding-inline:15px;color:var(--muted);font-size:11px;box-shadow:none}
.form-page-heading .back-link { display: block; width: max-content; }

@media (max-width: 680px) {
  .stat-card.desktop-only { display: none; }
  .notification-heading { display: grid; grid-template-columns: 1fr; align-items: start; gap: 16px; }
  .notification-heading-actions{flex-wrap:wrap}
  .notification-heading .button { justify-self: start; width: auto; min-height: 46px; padding: 0 17px; font-size: 12px; border-radius: 12px; }
  .notification-heading .button svg { width: 17px; height: 17px; }
  .notification-heading .button.notification-enabled { color: #176b5b; background: #e2f5ed; box-shadow: none; }
}

/* Chat, evidencias y selector accesible de calificación */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.chat-card{scroll-margin-top:90px}.chat-messages{display:grid;gap:9px;max-height:390px;margin-top:4px;padding:17px;overflow:auto;background:var(--canvas);border:1px solid var(--line);border-radius:14px}.chat-message{display:flex}.chat-message.mine{justify-content:flex-end}.chat-message>span{display:grid;max-width:min(82%,520px);padding:10px 13px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:4px 14px 14px 14px;font-size:12px;line-height:1.45}.chat-message.mine>span{color:#fff;background:var(--navy);border-color:var(--navy);border-radius:14px 4px 14px 14px}.chat-message b{margin-bottom:2px;font-size:9px}.chat-message small{margin-top:4px;color:var(--muted);font-size:8px}.chat-message.mine small{color:rgba(255,255,255,.6)}.chat-empty{padding:26px 10px;color:var(--muted);font-size:12px;text-align:center}.chat-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:11px}.chat-form textarea{min-height:48px;resize:vertical}.chat-closed{margin-top:11px;padding:11px;color:var(--muted);background:var(--canvas);border-radius:10px;font-size:10px;text-align:center}.delivery-upload-grid{display:grid;gap:9px;margin:13px 0}.delivery-upload-grid label{display:grid;gap:5px;padding:11px;color:var(--ink);background:#fff;border-radius:10px}.delivery-upload-grid span{font-size:11px;font-weight:700}.delivery-upload-grid input{width:100%;font-size:10px}.delivery-upload-grid small{color:var(--muted);font-size:8px}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.evidence-grid a{position:relative;height:190px;overflow:hidden;background:var(--canvas);border:1px solid var(--line);border-radius:13px}.evidence-grid a::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(16,25,53,.78))}.evidence-grid span{position:absolute;z-index:1;left:13px;bottom:11px;color:#fff;font-size:11px;font-weight:700}
.chat-send-button{display:grid!important;place-items:center;width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;padding:0!important;color:#246f61!important;background:#e7f3ef!important;border:1px solid #d3e9e2!important;border-radius:11px!important;box-shadow:none!important}.chat-send-button:hover{color:#185e52!important;background:#dceee8!important}.chat-send-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.star-fieldset{min-width:0;margin:0;padding:0;border:0}.star-fieldset legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.star-picker{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:3px;width:max-content}.star-option{position:relative;display:grid!important;place-items:center;width:38px;height:42px;color:#d8dce5!important;font-size:30px!important;line-height:1;cursor:pointer;transition:color .15s,transform .15s}.star-option:hover{transform:translateY(-1px)}.star-option input{position:absolute!important;inset:3px;width:32px;height:36px;margin:0;opacity:0;cursor:pointer}.star-option:focus-within{border-radius:8px;outline:3px solid rgba(74,125,242,.22);outline-offset:1px}.star-picker:has(.star-option:nth-child(1):hover) .star-option:nth-child(-n+1),.star-picker:has(.star-option:nth-child(2):hover) .star-option:nth-child(-n+2),.star-picker:has(.star-option:nth-child(3):hover) .star-option:nth-child(-n+3),.star-picker:has(.star-option:nth-child(4):hover) .star-option:nth-child(-n+4),.star-picker:has(.star-option:nth-child(5):hover) .star-option:nth-child(-n+5),.star-picker:has(input[value="1"]:checked) .star-option:nth-child(-n+1),.star-picker:has(input[value="2"]:checked) .star-option:nth-child(-n+2),.star-picker:has(input[value="3"]:checked) .star-option:nth-child(-n+3),.star-picker:has(input[value="4"]:checked) .star-option:nth-child(-n+4),.star-picker:has(input[value="5"]:checked) .star-option:nth-child(-n+5){color:var(--gold)!important}
@media (max-width:680px){.chat-form{grid-template-columns:1fr}.chat-form .button{width:100%}.evidence-grid{grid-template-columns:1fr}.evidence-grid a{height:220px}}
.identity-upload{margin-top:12px}.identity-privacy{display:flex;align-items:flex-start;gap:11px;margin-top:12px;padding:14px;color:#246b57;background:#eaf9f4;border:1px solid #c8eadf;border-radius:12px}.identity-privacy>svg{flex:0 0 22px;margin-top:1px}.identity-privacy>span{display:grid;gap:3px}.identity-privacy b{font-size:11px}.identity-privacy small{font-size:10px;line-height:1.5}
.notification-item small{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.notification-status{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:12px;font-style:normal;font-size:8px;font-weight:700}.notification-status i{width:5px;height:5px;background:currentColor;border-radius:50%}
.status-sin_mensajero,.order-state-sin_mensajero{color:#b63845!important;background:#fde8eb!important}.status-vencido,.order-state-vencido{color:#9a6814!important;background:#fff3d8!important}.order-closure-note{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding:15px 17px;color:#9a6814;background:#fff7e7;border:1px solid #f1dfb9;border-radius:14px}.order-closure-note.all_declined,.order-closure-note.delivery_failed{color:#a73b47;background:#fff0f2;border-color:#f2d0d4}.order-closure-note>svg{flex:0 0 20px;width:20px;height:20px;margin-top:1px}.order-closure-note h2{margin:0 0 3px;font-size:14px}.order-closure-note p{margin:0;color:var(--text);font-size:11px;line-height:1.5}
.business-offer-policy,.order-search-policy{display:flex;align-items:flex-start;gap:13px;margin-bottom:16px;padding:16px 18px;color:#1e5b50;background:#eaf9f5;border:1px solid #bce8dd;border-radius:15px}.business-offer-policy>svg,.order-search-policy>svg{flex:0 0 23px;width:23px;height:23px}.business-offer-policy>span{display:grid;gap:4px}.business-offer-policy b,.order-search-policy h2{font-size:16px}.business-offer-policy small,.order-search-policy p{margin:0;color:#415c58;font-size:14px!important;line-height:1.5}.order-search-policy div{display:grid;gap:5px}.order-search-policy h2{margin:0}.order-search-policy span{font-size:13px}.offer-feedback-summary{display:grid!important;gap:3px;margin-top:8px;color:#596477!important;font-size:12px!important}.offer-feedback-summary b{color:#9a6814}
.avatar{color:#fff;background:linear-gradient(145deg,#315fc8,#5533a1);font-size:15px;font-weight:850;line-height:1;text-transform:uppercase;text-shadow:0 1px 2px rgba(10,17,37,.35)}.avatar-sm{font-size:14px}.avatar-xs{font-size:11px}.avatar-lg{font-size:24px}.avatar-xl{font-size:32px}.admin-avatar,.admin-sidebar-account>span{font-size:15px;font-weight:900;line-height:1;text-transform:uppercase}.admin-sidebar-account>span{color:#07132f;background:#59e2d4}
.evidence-grid{grid-template-columns:minmax(150px,.72fr) minmax(230px,1.28fr);align-items:start}.evidence-grid a{display:grid;height:auto;overflow:hidden;background:#f4f6fa}.evidence-grid a::after{display:none}.evidence-grid img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#eef1f6}.evidence-grid .evidence-proof img{aspect-ratio:1}.evidence-grid .evidence-identity img{aspect-ratio:900/567;padding:8px}.evidence-grid span{position:static;padding:10px 12px;color:var(--ink);background:#fff;border-top:1px solid var(--line);font-size:10px}.evidence-grid .evidence-proof{max-width:300px}@media(max-width:680px){.evidence-grid{grid-template-columns:1fr}.evidence-grid a{height:auto}.evidence-grid .evidence-proof{width:min(100%,280px);margin-inline:auto}.evidence-grid .evidence-identity{width:100%}}
.recipient-phone-inline,.courier-phone-inline{color:var(--blue);font-size:.95em;font-weight:700;white-space:nowrap;text-decoration:none}.recipient-phone-inline:hover,.courier-phone-inline:hover{text-decoration:underline}
.contact-item-recipient{align-items:flex-start}.recipient-address{display:flex;align-items:flex-start;gap:5px;margin-top:6px;color:var(--text);font-size:11px;line-height:1.4}.recipient-address svg{flex:0 0 13px;width:13px;height:13px;margin-top:1px;color:var(--blue)}
.business-contact-grid{align-items:stretch}.business-contact-grid .contact-item{align-items:flex-start}.business-contact-grid .contact-item>div{align-content:start;min-width:0}.business-contact-grid .contact-item>.avatar{margin-inline:17px}
.card-icon.evidence-confirmation-icon{color:#6747ad;background:#eee8ff}
.evidence-grid{grid-template-columns:220px 290px;justify-content:start}.evidence-grid .evidence-proof{width:220px;max-width:220px}.evidence-grid .evidence-identity{width:290px;max-width:100%}@media(max-width:680px){.evidence-grid{grid-template-columns:1fr;justify-items:start}.evidence-grid .evidence-proof{width:min(100%,260px);margin-inline:0}.evidence-grid .evidence-identity{width:min(100%,290px)}}
.desktop-nav a.avatar{color:#fff}
.status-entrega_reportada,.order-state-entrega_reportada{color:#315fc8!important;background:#e8efff!important}
[data-role-fields][hidden]{display:none!important}
[data-address-optional][hidden],.municipality-menu[hidden]{display:none!important}.municipality-control{position:relative}.municipality-menu{position:absolute;z-index:35;top:calc(100% + 6px);left:0;right:0;display:grid;max-height:245px;padding:6px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px rgba(24,33,58,.16)}.municipality-option{width:100%;padding:10px 11px;color:var(--text);background:transparent;border:0;border-radius:8px;text-align:left;font-size:12px;cursor:pointer}.municipality-option:hover,.municipality-option.active{color:var(--ink);background:#edf2ff}
.municipality-control::after{content:"";position:absolute;right:12px;top:50%;width:20px;height:20px;background:var(--muted);transform:translateY(-50%);pointer-events:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4.5 7.5 10 13l5.5-5.5' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/20px 20px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4.5 7.5 10 13l5.5-5.5' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/20px 20px no-repeat}.municipality-control input{padding-right:44px;cursor:pointer}
.coverage-picker{position:relative}.coverage-control{position:relative;display:grid;width:100%;min-height:48px;overflow:hidden;background:#fff;border:1px solid #dce1eb;border-radius:11px;transition:border-color .15s,box-shadow .15s}.coverage-control:has(.coverage-toggle[aria-expanded="true"]){border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}.coverage-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:11px 14px;color:var(--ink);background:transparent;border:0;text-align:left;cursor:pointer}.coverage-toggle [data-coverage-summary]:empty{display:none}.coverage-control>.coverage-chips:not(:empty)+.coverage-toggle{position:absolute;top:0;right:0;bottom:0;width:auto;min-width:76px;min-height:0;padding:0 12px;justify-content:center;color:var(--blue);font-size:12px;font-weight:850}.coverage-control>.coverage-chips:not(:empty)+.coverage-toggle svg{display:none}.coverage-toggle svg{width:17px;transform:rotate(90deg);transition:transform .2s}.coverage-toggle[aria-expanded="true"] svg{transform:rotate(-90deg)}.coverage-menu{position:absolute;z-index:36;top:calc(100% + 6px);left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:3px;max-height:280px;padding:8px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px rgba(24,33,58,.16)}.coverage-menu[hidden]{display:none!important}.coverage-all{grid-column:1/-1;width:100%;padding:9px 11px;color:var(--blue);background:#edf2ff;border:1px solid transparent;border-radius:8px;text-align:left;font-size:11px;font-weight:800;cursor:pointer}.coverage-all:hover,.coverage-all[aria-pressed="true"]{color:#fff;background:var(--blue)}.coverage-option{display:flex;grid-template:none;align-items:center;gap:8px;padding:9px;border-radius:8px;font-size:11px;font-weight:500;cursor:pointer}.coverage-option:hover{background:#edf2ff}.coverage-option input{flex:0 0 auto;width:17px;min-height:17px;margin:0;accent-color:var(--blue)}
.coverage-control>.coverage-chips{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:48px;padding:10px 86px 10px 12px}.coverage-control>.coverage-chips:empty{display:none}.coverage-chip{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;color:var(--text);background:#f7f8fa;border:1px solid #d7dce5;border-radius:999px;font-size:11px;font-weight:600;line-height:1.2}
.coverage-native-fallback{display:grid;gap:7px}.coverage-native-fallback[hidden]{display:none!important}.coverage-native-fallback select{width:100%;min-height:172px;padding:5px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;font:inherit}.coverage-native-fallback option{padding:8px 9px;border-radius:7px}.coverage-native-fallback small{color:var(--muted);font-size:12px!important;line-height:1.4}
.profile-coverage-picker .coverage-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px 8px 11px;overflow:visible}.profile-coverage-picker .coverage-control>.coverage-chips{grid-column:1;min-height:0;padding:0}.profile-coverage-summary{grid-column:1;min-width:0;padding:2px 3px;color:var(--muted);font-size:14px;line-height:1.4}.profile-coverage-summary[hidden]{display:none!important}.profile-coverage-picker .profile-coverage-edit,.profile-coverage-picker .coverage-chips:not(:empty)~.profile-coverage-edit{position:static;grid-column:2;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:40px;padding:8px 5px;color:var(--blue);background:transparent;border:0;border-radius:0;font-size:13px;font-weight:800;text-align:center}.profile-coverage-picker .profile-coverage-edit:hover,.profile-coverage-picker .profile-coverage-edit[aria-expanded="true"]{color:#315fc0;background:transparent;border-color:transparent}.profile-coverage-picker .profile-coverage-edit svg,.profile-coverage-picker .coverage-chips:not(:empty)~.profile-coverage-edit svg{display:none}@media(max-width:680px){.profile-delivery-coverage-field{margin-top:10px}}@media(max-width:420px){.profile-coverage-picker .coverage-control{gap:6px;padding-inline:8px}.profile-coverage-picker .profile-coverage-edit,.profile-coverage-picker .coverage-chips:not(:empty)~.profile-coverage-edit{min-width:0;padding-inline:5px}.profile-coverage-picker .coverage-chip{font-size:10.5px}}
@media (max-width:680px){.coverage-menu{grid-template-columns:1fr}}

/* Selector de cobertura en una ventana propia, sin depender del espacio del formulario. */
.registration-municipality-picker{width:100%}
.municipality-modal-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:11px 14px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;font-size:16px;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.municipality-modal-toggle:hover,.municipality-modal-toggle[aria-expanded="true"]{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}
.municipality-modal-toggle.is-invalid{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}
.municipality-modal-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.municipality-modal-toggle svg{flex:0 0 18px;width:18px;height:18px;color:var(--muted);transform:rotate(90deg)}
body.coverage-dialog-open{overflow:hidden}
.coverage-dialog[hidden]{display:none!important}
.coverage-dialog{position:fixed;z-index:500;inset:0;display:grid;place-items:center;width:100%;height:100%;padding:16px;overflow:hidden;color:var(--ink);background:rgba(7,13,30,.68);border:0;backdrop-filter:blur(3px)}
.coverage-dialog-card{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(580px,100%);height:min(640px,calc(100vh - 32px));height:min(640px,calc(100dvh - 32px));overflow:hidden;background:#fff;border:1px solid #dfe4ed;border-radius:24px;box-shadow:0 28px 90px rgba(7,13,30,.34)}
.coverage-dialog-header{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 58px 14px 20px;border-bottom:1px solid var(--line)}
.coverage-dialog-header>div{display:grid;gap:4px;min-width:0}
.coverage-dialog-header small{color:var(--blue);font-size:10px!important;font-weight:850;letter-spacing:.1em}
.coverage-dialog-header h2{margin:0;font-size:21px;line-height:1.25}
.coverage-dialog-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:32px;height:32px;padding:0;color:#5f6a7e;background:#f1f3f7;border:1px solid #e1e5ec;border-radius:10px;font-size:22px;line-height:1;cursor:pointer}
.coverage-dialog-close:hover,.coverage-dialog-close:focus-visible{color:var(--navy);background:#e8edf5;outline:3px solid rgba(74,125,242,.18);outline-offset:2px}
.coverage-dialog-options{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:7px;min-height:0;padding:16px 18px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.coverage-dialog .coverage-option{display:flex;align-items:center;gap:11px;min-height:52px;padding:12px 13px;background:#fafbfc;border:1px solid #e2e6ed;border-radius:12px;font-size:15px;font-weight:500;line-height:1.3;cursor:pointer}
.coverage-dialog .coverage-option:hover{background:#f2f6ff;border-color:#c8d6f4}
.coverage-dialog .coverage-option:has(input:checked){color:var(--navy);background:#eaf9f4;border-color:#9fd8c7}
.coverage-dialog .coverage-option input{flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:0;accent-color:var(--green)}
.coverage-dialog .coverage-option:has(input:disabled){opacity:.48;cursor:not-allowed}
.coverage-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px calc(16px + env(safe-area-inset-bottom));background:#f7f8fb;border-top:1px solid var(--line)}
.coverage-dialog-count{color:var(--muted);font-size:13px;font-weight:700}
.coverage-dialog-save{min-width:190px}
.coverage-close-confirmation[hidden]{display:none!important}
.coverage-close-confirmation{position:absolute;z-index:2;inset:0;display:grid;place-items:center;padding:18px;background:rgba(7,13,30,.6)}
.coverage-close-confirmation-card{display:grid;gap:11px;width:min(390px,100%);padding:22px;background:#fff;border:1px solid #dfe4ed;border-radius:18px;box-shadow:0 22px 70px rgba(7,13,30,.35)}
.coverage-close-confirmation-card strong{font-size:19px;line-height:1.3}
.coverage-close-confirmation-card>span{color:var(--muted);font-size:14px;line-height:1.45}
.coverage-close-confirmation-card>div{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}

@media(max-width:680px){
  .coverage-dialog{place-items:end center;padding:0}
  .coverage-dialog-card{width:100%;max-width:none;height:min(88vh,720px);height:min(88dvh,720px);max-height:calc(100vh - 10px);max-height:calc(100dvh - max(10px,env(safe-area-inset-top)));border-radius:24px 24px 0 0;box-shadow:0 -18px 60px rgba(7,13,30,.3)}
  .coverage-dialog-header{padding:12px 52px 12px 16px}
  .coverage-dialog-header h2{font-size:19px}
  .coverage-dialog-close{top:8px;right:8px;width:30px;height:30px;border-radius:9px;font-size:21px}
  .coverage-dialog-options{grid-template-columns:1fr;gap:7px;padding:13px 14px 18px}
  .coverage-dialog .coverage-option{min-height:54px;padding:13px 14px;font-size:16px}
  .coverage-dialog-footer{display:grid;grid-template-columns:1fr;gap:10px;padding:13px 14px max(14px,env(safe-area-inset-bottom))}
  .coverage-dialog-count{text-align:center}
  .coverage-dialog-save{width:100%;min-height:50px}
  .coverage-close-confirmation{place-items:end center;padding:14px 14px max(14px,env(safe-area-inset-bottom))}
  .coverage-close-confirmation-card{padding:20px 17px;border-radius:18px}
  .coverage-close-confirmation-card>div{display:grid;grid-template-columns:1fr 1fr}
  .coverage-close-confirmation-card .button{width:100%;min-width:0}
}
@media (max-width:680px){.site-footer .footer-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center}.site-footer .footer-inner>*{margin-inline:auto}.site-footer .brand{justify-content:center}.site-footer p,.site-footer small{width:100%;text-align:center}.site-footer .footer-links,.site-footer .footer-contact{justify-items:center}}
@media(max-width:680px){.site-footer{padding:32px 0}.site-footer .footer-copy{font-size:12px;line-height:1.4}}
.business-photo-upload{margin-top:17px}
.photo-upload{display:grid}.photo-upload [data-photo-upload-action]{padding:8px 11px;color:var(--blue);background:#edf2ff;border:0;border-radius:8px;font:inherit;font-size:11px;font-weight:750;cursor:pointer}.photo-upload[data-camera-field]{cursor:default}[data-web-camera]{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none;clip:rect(0,0,0,0)}
.web-camera[hidden]{display:none!important}.web-camera{--camera-aspect:4/3;box-sizing:border-box;position:fixed;z-index:1200;inset:0;display:grid;width:auto;max-width:none;height:auto;max-height:none;margin:0;padding:14px;place-items:center;overflow:auto;background:rgba(10,16,35,.8);border:0;overscroll-behavior:contain}.web-camera::backdrop{background:transparent}.web-camera-card{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(560px,100%);max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:20px;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 26px 80px rgba(7,13,30,.38)}body.web-camera-open{overflow:hidden}.web-camera-card>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.web-camera-card>header>div{display:grid;gap:3px}.web-camera-card>header small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em}.web-camera-card h2{margin:0;font-size:21px}.web-camera-card>header button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;color:var(--muted);background:var(--canvas);border:0;border-radius:12px;font-size:27px;cursor:pointer}.web-camera-card>p{margin:9px 0 14px;color:var(--muted);font-size:12px;line-height:1.45}.web-camera-preview{position:relative;justify-self:center;width:min(100%,500px,58vh);width:min(100%,500px,58dvh);aspect-ratio:var(--camera-aspect);overflow:hidden;background:#10172b;border:3px solid #fff;border-radius:16px;outline:2px solid var(--aqua);outline-offset:2px}.web-camera-preview video{display:block;width:100%;height:100%;object-fit:contain}.web-camera[data-camera-kind="selfie"] .web-camera-preview video{object-fit:cover}.web-camera[data-camera-facing="user"] .web-camera-preview video{transform:scaleX(-1)}.web-camera-preview>span{position:absolute;inset:6%;border:2px dashed rgba(255,255,255,.72);border-radius:10px;pointer-events:none}.web-camera[data-camera-kind="selfie"] .web-camera-preview{width:min(100%,420px,55vh);width:min(100%,420px,55dvh);aspect-ratio:1;border-radius:50%}.web-camera[data-camera-kind="selfie"] .web-camera-preview>span{inset:9%;border-radius:50%}.web-camera[data-camera-kind="document"] .web-camera-preview>span{inset:5%;border-width:3px}.web-camera-actions{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9px;margin-top:18px}.web-camera-actions .button{width:100%;min-width:0;min-height:48px;padding-inline:12px}.web-camera.is-unavailable .web-camera-preview{display:none}.web-camera.is-unavailable .web-camera-actions{grid-template-columns:1fr}.web-camera.is-unavailable [data-web-camera-capture]{display:none}
.web-camera[data-camera-kind="selfie"] .web-camera-preview>span,.web-camera[data-camera-kind="document"] .web-camera-preview>span{display:none}.web-camera[data-camera-only="true"] .web-camera-actions,.web-camera[data-camera-kind="selfie"] .web-camera-actions{grid-template-columns:1fr}.web-camera[data-camera-kind="selfie"] [data-web-camera-gallery]{display:none!important}.web-camera.is-unavailable[data-camera-only="true"] .web-camera-actions,.web-camera.is-unavailable[data-camera-kind="selfie"] .web-camera-actions{display:grid;grid-template-columns:1fr}.web-camera.is-unavailable[data-camera-only="true"] [data-web-camera-gallery],.web-camera.is-unavailable[data-camera-kind="selfie"] [data-web-camera-gallery]{display:inline-flex!important}
@media(max-width:680px){.web-camera{place-items:end center;padding:0}.web-camera-card{width:100%;max-height:calc(100vh - 8px);max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));padding:16px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-radius:24px 24px 0 0}.web-camera-card h2{font-size:19px}.web-camera-preview{width:min(calc(100vw - 38px),520px,48vh);width:min(calc(100vw - 38px),520px,48dvh)}.web-camera[data-camera-kind="selfie"] .web-camera-preview{width:min(calc(100vw - 62px),330px,47vh);width:min(calc(100vw - 62px),330px,47dvh)}.web-camera-actions{margin-top:15px}.web-camera-actions .button{font-size:12px}}
.vehicle-field select{height:48px!important;min-height:48px!important;padding-block:0!important}
.courier-vehicle-toggle{height:auto;min-height:48px}
.courier-vehicle-toggle:disabled{color:var(--ink);background:#f5f7fa;cursor:default}
.courier-vehicle-selection{min-width:0;flex-wrap:wrap;gap:6px}
.courier-vehicle-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;color:var(--navy);background:#eaf9f4;border:1px solid #b7dfd2;border-radius:999px;font-size:13px;font-weight:650;white-space:nowrap}
.courier-vehicle-chip svg,.courier-vehicle-dialog .courier-vehicle-option svg{flex:none;width:20px;height:20px;color:var(--blue)}
.courier-vehicle-dialog .coverage-dialog-options{grid-template-columns:1fr}
.courier-vehicle-dialog .courier-vehicle-option{min-height:58px}
.courier-vehicle-dialog .coverage-dialog-header small{display:block;margin-top:4px;color:var(--muted);font-size:13px}
@media(max-width:680px){.courier-vehicle-dialog .coverage-dialog-card{height:auto;max-height:calc(100dvh - 12px)}.courier-vehicle-dialog .coverage-dialog-options{padding:13px 14px}.courier-vehicle-dialog .courier-vehicle-option{min-height:56px}.courier-vehicle-dialog .coverage-dialog-footer{display:grid;grid-template-columns:1fr}.courier-vehicle-dialog .coverage-dialog-save{width:100%}}
.auth-back-link{display:block;width:max-content;margin-bottom:18px}
.required-mark{color:var(--red)!important;font-style:normal;font-weight:800}[data-address-required][hidden]{display:none!important}
.role-picker.single{grid-template-columns:1fr}
.image-editor{box-sizing:border-box;position:fixed;z-index:250;inset:0;display:grid;width:auto;max-width:none;height:auto;max-height:none;margin:0;padding:14px;place-items:center;overflow:auto;background:rgba(10,16,35,.78);border:0}.image-editor::backdrop{background:transparent}.image-editor[hidden]{display:none!important}.image-editor-card{width:min(620px,100%);max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:22px;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(10,16,35,.28)}body.image-editor-open{overflow:hidden}.image-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.image-editor-heading small{color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.image-editor-heading h2{margin:3px 0 0;font-size:21px}.image-editor-card>p{margin:8px 0 17px;color:var(--muted);font-size:11px}.image-editor-close{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;padding:0;color:var(--muted);background:var(--canvas);border:0;border-radius:10px;font-size:24px;line-height:1;cursor:pointer}.image-editor-stage{display:grid;place-items:center;padding:0;overflow:hidden;background:#f4f6fb;border:1px solid var(--line);border-radius:15px}.image-editor-stage:has(canvas[hidden]){min-height:150px}.image-editor canvas{display:block;width:auto;height:auto;max-width:100%;max-height:52vh;touch-action:none;cursor:grab}.image-editor canvas:active{cursor:grabbing}.image-editor-zoom{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:13px;margin-top:17px}.image-editor-zoom span{font-size:11px;font-weight:800}.image-editor-zoom input{min-height:24px;padding:0;accent-color:var(--blue)}.image-editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.image-edit-status{color:var(--aqua);font-size:9px}@media(max-width:680px){.image-editor{place-items:start center;padding:10px}.image-editor-card{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);padding:17px}.image-editor-actions{display:grid;grid-template-columns:1fr}.image-editor-actions .button{padding-inline:10px}.image-editor canvas{max-height:42vh}}

.image-editor-stage{min-height:150px}

/* Verificación visual del mensajero junto al código de recogida */
.pickup-courier-verification{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin:15px 0;padding:0;background:transparent;border:0}.pickup-courier-verification>div{display:grid;gap:3px}.pickup-courier-verification>div>small{color:var(--aqua);font-size:9px;font-weight:850;letter-spacing:.09em}.pickup-courier-verification>div>b{color:#fff;font-size:14px}.pickup-courier-photo{display:grid;justify-items:center;width:94px;padding:0;color:#fff;background:transparent;border:0;cursor:pointer;transition:width .22s ease}.pickup-courier-photo>span{display:grid;place-items:center;width:88px;aspect-ratio:1;overflow:hidden;color:var(--navy);background:var(--aqua);border-radius:50%;font-size:28px;font-weight:850;box-shadow:0 8px 20px rgba(0,0,0,.2);transition:width .22s}.pickup-courier-photo img{width:100%;height:100%;object-fit:cover}.pickup-courier-photo.is-expanded{grid-column:1/-1;justify-self:center;width:min(210px,100%)}.pickup-courier-photo.is-expanded>span{width:min(190px,100%)}.pickup-courier-photo:focus-visible{outline:3px solid var(--aqua);outline-offset:4px;border-radius:50%}.pickup-courier-photo:disabled{cursor:default}@media(max-width:420px){.pickup-courier-verification{grid-template-columns:1fr;justify-items:center;text-align:center}.pickup-courier-photo{width:118px}.pickup-courier-photo>span{width:112px}.pickup-courier-photo.is-expanded>span{width:min(190px,100%)}}
.pickup-qr-panel-close{display:grid;place-items:center;width:32px;height:32px;margin:2px 0 8px auto;padding:0;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:9px;font-size:22px;line-height:1;cursor:pointer}.pickup-offline-qr-closable{position:relative}.pickup-offline-qr-caption{display:flex;align-items:center;justify-content:center;gap:10px;width:100%}.pickup-offline-qr-closable>.pickup-qr-panel-close{position:absolute;z-index:2;top:10px;right:10px;margin:0;color:var(--navy);background:#eef2f7;border:1px solid #dce2eb}.pickup-qr-panel-close:focus-visible{outline:2px solid var(--aqua);outline-offset:2px}

/* Contacto directo con quien recibe el pedido */
.delivery-recipient-share{display:grid;gap:9px;margin:14px 0;padding:14px;background:#f5f7fb;border:1px solid var(--line);border-radius:13px}.delivery-recipient-share>span{display:grid;gap:2px}.delivery-recipient-share>span small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.08em}.delivery-recipient-share>span b{color:var(--navy);font-size:18px;line-height:1.25}.delivery-recipient-share>a{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;color:var(--blue);font-size:11px;font-weight:750}.delivery-recipient-share>a svg,.recipient-email-send button svg{flex:0 0 15px;width:15px;height:15px}.delivery-recipient-share .recipient-phone-link{margin-top:3px;color:var(--navy);font-size:18px;font-weight:850;letter-spacing:.01em}.delivery-recipient-share .recipient-phone-link svg{width:19px;height:19px;color:var(--blue)}.recipient-email-address{overflow-wrap:anywhere}.recipient-email-send{display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;padding-top:2px}.recipient-email-send button{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;color:#fff;background:var(--blue);border:1px solid var(--blue);border-radius:9px;font-size:11px;font-weight:800;cursor:pointer}.recipient-email-send small{color:var(--muted);font-size:9px}.recipient-email-send .email-sent{color:#287657}.recipient-email-send .email-pending{color:#927022}.recipient-email-send .email-failed{color:#a33c45}.delivery-recipient-share .recipient-whatsapp-link{display:none;padding:10px 12px;color:#fff;background:#168b5b;border-radius:10px;text-align:center}@media(max-width:920px){.delivery-recipient-share .recipient-whatsapp-link{display:flex;justify-content:center;width:100%;margin-top:4px}}

/* Administración */
.admin-page{min-height:100vh;background:#f2f4f8}.admin-shell{width:min(1220px,calc(100% - 40px));margin-inline:auto}.admin-header{position:sticky;z-index:50;top:0;color:#fff;background:#101935;border-bottom:1px solid rgba(255,255,255,.1)}.admin-header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:35px;min-height:68px}.admin-brand{display:flex;align-items:center;gap:10px}.admin-brand span,.admin-login-mark{display:grid;place-items:center;width:36px;height:36px;color:#101935;background:var(--aqua);border-radius:11px;font-weight:900}.admin-header nav{display:flex;gap:5px}.admin-header nav a{padding:9px 12px;color:rgba(255,255,255,.62);border-radius:9px;font-size:11px;font-weight:700}.admin-header nav a:hover,.admin-header nav a.active{color:#fff;background:rgba(255,255,255,.1)}.admin-header form button{padding:8px 11px;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.22);border-radius:9px;cursor:pointer}.admin-content{padding:38px 0 80px}.admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.admin-title>div>small{color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.13em}.admin-title h1{margin:5px 0 5px;font-size:31px}.admin-title p{margin:0;color:var(--muted);font-size:12px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.admin-stat-grid>a{display:grid;gap:5px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-soft)}.admin-stat-grid small{color:var(--muted);font-size:9px;font-weight:700}.admin-stat-grid strong{font-size:29px}.admin-stat-grid em{color:var(--blue);font-size:9px;font-style:normal}.admin-two-columns{display:grid;grid-template-columns:1.2fr .8fr;align-items:start;gap:18px}.admin-panel{padding:21px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}.admin-panel h2{margin-bottom:17px;font-size:16px}.admin-panel-title{display:flex;align-items:start;justify-content:space-between;margin-bottom:14px}.admin-panel-title h2{margin:0 0 3px}.admin-panel-title p{margin:0;color:var(--muted);font-size:10px}.admin-panel-title>a{color:var(--blue);font-size:10px;font-weight:700}.admin-list{display:grid}.admin-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.admin-list>a:last-child{border-bottom:0}.admin-list>a>span:nth-child(2){display:grid}.admin-list b{font-size:11px}.admin-list small,.admin-list time{color:var(--muted);font-size:8px}.admin-avatar{display:grid;place-items:center;width:35px;height:35px;color:var(--blue);background:#edf2ff;border-radius:10px;font-weight:800}.admin-audit-mini{display:grid;gap:11px}.admin-audit-mini>div{display:grid;padding-bottom:10px;border-bottom:1px solid var(--line)}.admin-audit-mini b{font-size:10px}.admin-audit-mini span,.admin-audit-mini small{color:var(--muted);font-size:8px}.admin-empty{margin:0;padding:24px;color:var(--muted);text-align:center;font-size:11px}.admin-filters{display:grid;grid-template-columns:1fr 190px 170px auto;gap:9px;margin-bottom:15px}.admin-filters input,.admin-filters select{min-height:43px}.admin-table-wrap{padding:0;overflow:auto}.admin-table{width:100%;border-collapse:collapse;white-space:nowrap}.admin-table th{padding:12px 15px;color:var(--muted);background:#f8f9fc;text-align:left;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.admin-table td{padding:14px 15px;border-top:1px solid var(--line);font-size:10px}.admin-table td:first-child{display:grid;gap:2px}.admin-table td small{color:var(--muted);font-size:8px}.admin-table td>a{color:var(--blue);font-weight:700}.admin-status{display:inline-flex;padding:5px 8px;color:#355bba;background:#edf2ff;border-radius:12px;font-size:8px;font-weight:800}.admin-status.pending{color:#946419;background:#fff4d8}.admin-status.approved{color:#207052;background:#e8f8f1}.admin-status.rejected,.admin-status.suspended{color:#a33c45;background:#ffeaec}.admin-status.large{padding:8px 12px;font-size:9px}.admin-back{display:inline-block;margin-bottom:17px;color:var(--blue);font-size:10px;font-weight:700}.admin-review-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:18px}.admin-review-main,.admin-review-aside{display:grid;gap:16px}.admin-review-aside{position:sticky;top:86px}.admin-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0}.admin-data-grid>div{display:grid;gap:4px;padding:12px;background:#f7f8fb;border-radius:10px}.admin-data-grid .wide{grid-column:1/-1}.admin-data-grid dt{color:var(--muted);font-size:8px;font-weight:700;text-transform:uppercase}.admin-data-grid dd{margin:0;font-size:11px;font-weight:600}.admin-doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.admin-doc-grid>a{display:grid;gap:5px;padding:10px;background:#f7f8fb;border:1px solid var(--line);border-radius:12px}.admin-doc-grid img{height:210px;border-radius:8px}.admin-doc-grid b{font-size:11px}.admin-doc-grid small{color:var(--muted);font-size:8px}.admin-doc-grid .private-doc{align-content:center;min-height:210px;padding:25px;color:#fff;background:linear-gradient(145deg,#172344,#263d74);border:0}.private-doc span{width:max-content;padding:5px 8px;color:var(--aqua);background:rgba(66,217,199,.12);border-radius:8px;font-size:8px}.admin-review-history{display:grid}.admin-review-history>div{display:flex;gap:11px;padding-bottom:17px}.admin-review-history i{flex:0 0 9px;width:9px;height:9px;margin-top:4px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 4px #edf2ff}.admin-review-history span{display:grid}.admin-review-history b{font-size:10px}.admin-review-history small{color:var(--muted);font-size:8px}.admin-review-history p{margin:5px 0 0;color:var(--text);font-size:9px}.admin-account-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.admin-account-stats>div{display:grid;gap:2px}.admin-account-stats strong{font-size:19px}.admin-account-stats small{color:var(--muted);font-size:8px}.admin-decision{display:grid;gap:12px}.admin-decision h2{margin-bottom:0}.admin-decision form{display:grid;gap:8px}.admin-decision label{font-size:9px}.admin-privacy-note p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.admin-login-shell{display:grid;place-items:center;min-height:100vh;padding:24px;background:radial-gradient(circle at 70% 20%,#253c73,#101935 55%)}.admin-login-card{width:min(410px,100%);padding:30px;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.admin-login-card>small{display:block;margin-top:18px;color:var(--blue);font-size:8px;font-weight:800;letter-spacing:.13em}.admin-login-card h1{margin:6px 0}.admin-login-card>p{color:var(--muted);font-size:11px}.admin-login-card>a{display:block;margin-top:20px;color:var(--muted);font-size:9px;text-align:center}.review-status-shell{display:grid;place-items:center;min-height:100vh;padding:100px 20px 50px;background:var(--canvas)}.review-status-card{width:min(640px,100%);padding:30px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);text-align:center}.review-status-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;color:#fff;background:var(--blue);border-radius:18px;font-size:22px;font-weight:800}.review-status-card h1{margin:9px 0;font-size:29px}.review-status-card>p{max-width:510px;margin:0 auto 22px;color:var(--muted);font-size:12px;line-height:1.65}.review-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;max-width:380px;margin:28px auto 8px}.review-progress span{display:grid;place-items:center;width:29px;height:29px;color:var(--muted);background:#e8ebf2;border-radius:50%;font-size:10px;font-weight:800}.review-progress span.done{color:#fff;background:var(--green)}.review-progress i{height:2px;background:#e1e5ed}.review-progress-labels{display:grid;grid-template-columns:repeat(3,1fr);max-width:430px;margin:0 auto 25px;color:var(--muted)}.review-correction{margin:20px 0;text-align:left}.review-correction summary{padding:13px;color:var(--blue);background:#edf2ff;border-radius:11px;font-size:11px;font-weight:800;cursor:pointer}.review-correction form{margin-top:15px}.review-status-card>form:last-child{margin-top:18px}
.admin-stat-grid.admin-stat-grid-accounts{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.admin-stat-live{border-color:#bfe4d5!important;background:#f3fbf7!important}.admin-stat-live em{color:#197451!important}.admin-stat-live em>i{display:inline-block;width:7px;height:7px;margin-right:3px;background:#2dbb83;border-radius:50%;box-shadow:0 0 0 4px rgba(45,187,131,.13)}.admin-stat-searching{border-color:#ead7ae!important;background:#fffaf0!important}.admin-stat-searching em{color:#946419!important}.admin-status.active{color:#197451;background:#e4f6ed}.admin-status.active::before{content:"";width:6px;height:6px;margin-right:5px;background:#2dbb83;border-radius:50%}
@media(max-width:850px){.admin-header-inner{grid-template-columns:1fr auto;gap:10px}.admin-header nav{grid-column:1/-1;grid-row:2;overflow:auto;padding-bottom:8px}.admin-content{padding-top:25px}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-stat-grid.admin-stat-grid-accounts{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-two-columns,.admin-review-grid{grid-template-columns:1fr}.admin-review-aside{position:static}.admin-filters{grid-template-columns:1fr 1fr}.admin-filters input{grid-column:1/-1}.admin-table{min-width:760px}}
@media(max-width:520px){.admin-shell{width:min(100% - 24px,1220px)}.admin-header-inner{padding-top:8px}.admin-brand b{font-size:12px}.admin-header nav a{padding:8px;font-size:9px}.admin-title{align-items:flex-start}.admin-title h1{font-size:25px}.admin-title>.button{padding-inline:12px;font-size:10px}.admin-stat-grid{gap:9px}.admin-stat-grid.admin-stat-grid-accounts{grid-template-columns:1fr}.admin-stat-grid>a{padding:15px}.admin-stat-grid strong{font-size:23px}.admin-data-grid,.admin-doc-grid{grid-template-columns:1fr}.admin-filters{grid-template-columns:1fr}.admin-filters input{grid-column:auto}.review-status-card{padding:22px 17px}.review-status-card h1{font-size:24px}}

/* Legibilidad del panel administrativo */
.admin-page{font-size:16px}.admin-header nav a{font-size:14px}.admin-header form button{font-size:13px}.admin-title>div>small{font-size:12px}.admin-title p{font-size:14px}.admin-stat-grid small{font-size:13px}.admin-stat-grid em{font-size:12px}.admin-panel h2{font-size:19px}.admin-panel-title p,.admin-panel-title>a{font-size:13px}.admin-list b{font-size:14px}.admin-list small,.admin-list time{font-size:12px}.admin-audit-mini b{font-size:13px}.admin-audit-mini span,.admin-audit-mini small{font-size:12px}.admin-empty{font-size:14px}.admin-filters input,.admin-filters select{font-size:14px}.admin-table th{font-size:11px}.admin-table td{font-size:14px}.admin-table td small{font-size:12px}.admin-status{padding:6px 10px;font-size:12px}.admin-status.large{padding:9px 13px;font-size:13px}.admin-back{font-size:13px}.admin-data-grid dt{font-size:11px}.admin-data-grid dd{font-size:14px}.admin-doc-grid b{font-size:14px}.admin-doc-grid small,.private-doc span{font-size:12px}.admin-review-history b{font-size:14px}.admin-review-history small{font-size:12px}.admin-review-history p{font-size:13px}.admin-account-stats small{font-size:11px}.admin-decision label{font-size:13px}.admin-privacy-note p{font-size:13px}.admin-login-card>small{font-size:11px}.admin-login-card>p{font-size:14px}.admin-login-card>a{font-size:12px}
@media(max-width:520px){.admin-brand b{font-size:14px}.admin-header nav a{font-size:12px}.admin-title>.button{font-size:12px}.admin-stat-grid small{font-size:11px}.admin-stat-grid em{font-size:10px}}

/* Lectura del vínculo promocional en la ficha de cuenta. */
.admin-account-promotion,.admin-account-promotion h2,.admin-account-promotion .admin-data-grid>div{text-align:left}
.admin-account-promotion .admin-data-grid>div{min-width:0;justify-items:start}
.admin-account-promotion .admin-data-grid dd{width:100%;overflow-wrap:anywhere}
.admin-account-promotion .admin-data-grid dd>small{display:block;margin-top:4px;color:var(--muted);line-height:1.45}
.admin-order-offer-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.admin-order-offer-stats>div{display:grid;gap:4px;padding:14px;background:#f7f8fb;border-radius:10px}.admin-order-offer-stats strong{font-size:24px}.admin-order-offer-stats span{color:var(--muted);font-size:12px}.admin-order-offer-list{display:grid}.admin-order-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:12px 0;border-top:1px solid var(--line)}.admin-order-offer>div{display:grid;gap:3px}.admin-order-offer b{font-size:14px}.admin-order-offer small{color:var(--muted);font-size:12px}.admin-order-offer>.admin-status{align-self:start}.admin-order-offer>small{grid-column:1/-1}
.admin-data-grid dd small{display:block;margin-top:5px;color:var(--muted);font-weight:500}.admin-data-grid dd a{color:var(--blue)}.admin-order-price{border:1px solid #dbe3f5}.admin-order-price.suggested{background:#f5f8ff}.admin-order-price.offered{background:#edf9f5;border-color:#c9eadf}.admin-order-price dd{font-size:17px}
.admin-fraud-alert{display:grid;gap:17px;margin:0 0 20px;padding:20px;color:#6f111b;background:linear-gradient(135deg,#fff0f1,#ffe2e5);border:2px solid #dc4c54;border-radius:16px;box-shadow:0 12px 30px rgba(151,27,40,.12)}.admin-fraud-alert-heading{display:flex;align-items:flex-start;gap:13px}.admin-fraud-alert-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#fff;background:#c92e3b;border-radius:50%;font-size:24px;font-weight:950}.admin-fraud-alert-heading small{font-size:10px;font-weight:900;letter-spacing:.12em}.admin-fraud-alert-heading h2{margin:3px 0 5px;color:#71121c;font-size:22px}.admin-fraud-alert-heading p{margin:0;color:#8b3941;font-size:13px;line-height:1.5}.admin-fraud-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admin-fraud-signal{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;background:rgba(255,255,255,.72);border:1px solid #efb1b7;border-radius:11px}.admin-fraud-signal>span{align-self:start;padding:4px 7px;color:#fff;background:#c92e3b;border-radius:7px;font-size:11px;font-weight:900}.admin-fraud-signal strong{display:block;font-size:13px}.admin-fraud-signal p{margin:3px 0 0;color:#87414a;font-size:11px;line-height:1.45}.admin-fraud-signal.severity-critical{border-color:#a10f1d;background:#fff}.admin-fraud-proof-state{display:flex;flex-wrap:wrap;gap:7px}.admin-fraud-proof-state span{padding:6px 9px;border-radius:999px;font-size:10px;font-weight:850}.admin-fraud-proof-state .verified{color:#176b50;background:#dff5ec}.admin-fraud-proof-state .missing{color:#921e2b;background:#fff;border:1px solid #e7a1a8}@media(max-width:700px){.admin-fraud-signals{grid-template-columns:1fr}.admin-fraud-alert{padding:16px}.admin-fraud-alert-heading h2{font-size:19px}}
.admin-taxi-referrer-info em.current{color:#6b4e00;background:#fff1b8}
.admin-account-promotion code{display:inline-block;max-width:100%;overflow-wrap:anywhere;white-space:normal}
.admin-taxi-referrer-current{display:grid;gap:4px;padding:12px;background:#f7f8fb;border-radius:10px}.admin-taxi-referrer-current>a{color:var(--blue)}.admin-taxi-referrer-current>small,.admin-taxi-referrer-current>span{color:var(--muted);font-size:11px}.admin-taxi-referrer-current>.admin-status{justify-self:start;color:#355bba}.admin-taxi-referrer-current>.admin-status.suspended{color:#a33c45}.admin-taxi-referrer-current code{width:max-content;padding:4px 7px;background:#e8edf7;border-radius:6px;font-weight:800}.admin-taxi-referrer-picker{display:grid;gap:6px}.admin-taxi-referrer-picker>small{color:var(--muted);font-size:11px;text-align:center}.admin-taxi-referrer-dialog{width:min(680px,calc(100% - 22px));max-height:min(760px,calc(100dvh - 28px));padding:0;overflow:hidden;background:transparent;border:0}.admin-taxi-referrer-dialog::backdrop{background:rgba(8,17,38,.66);backdrop-filter:blur(4px)}.admin-taxi-referrer-dialog>section{display:grid;gap:15px;max-height:inherit;padding:23px;background:#fff;border:1px solid rgba(255,255,255,.45);border-radius:22px;box-shadow:0 28px 90px rgba(8,17,38,.35)}.admin-taxi-referrer-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-taxi-referrer-dialog header>div{display:grid;gap:3px}.admin-taxi-referrer-dialog header>div>small{color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.11em}.admin-taxi-referrer-dialog h2{margin:0;font-size:23px}.admin-taxi-referrer-dialog header p{margin:0;color:var(--muted);font-size:12px}.admin-taxi-referrer-dialog header>button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;color:#4f5c73;background:#f0f3f7;border:0;border-radius:11px;font-size:23px;cursor:pointer}.admin-taxi-referrer-search{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important;padding:0 13px;color:#66758c;background:#f5f7fa;border:1px solid #dce2eb;border-radius:12px}.admin-taxi-referrer-search:focus-within{background:#fff;border-color:#7596e2;box-shadow:0 0 0 3px rgba(67,110,207,.12)}.admin-taxi-referrer-search>span:first-child{font-size:24px;line-height:1;transform:rotate(-18deg)}.admin-taxi-referrer-search input{width:100%;min-height:48px;padding:0;background:transparent;border:0;outline:0;font-size:14px}.admin-taxi-referrer-filters{display:flex;gap:7px;overflow:auto;padding-bottom:2px}.admin-taxi-referrer-filters button{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;color:#59677d;background:#f3f5f8;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}.admin-taxi-referrer-filters button span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;background:rgba(79,95,121,.1);border-radius:999px;font-size:9px}.admin-taxi-referrer-filters button.active{color:#244fba;background:#eaf0ff;border-color:#c8d7fa}.admin-taxi-referrer-dialog form{min-height:0}.admin-taxi-referrer-results{display:grid;gap:8px;max-height:370px;padding-right:3px;overflow:auto;overscroll-behavior:contain}.admin-taxi-referrer-option{display:grid!important;grid-template-columns:auto 46px minmax(0,1fr) auto!important;align-items:center;gap:11px!important;padding:11px!important;background:#fff;border:1px solid #dfe5ed;border-radius:13px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.admin-taxi-referrer-option:hover{background:#f8faff;border-color:#b9c9e8}.admin-taxi-referrer-option:has(input:checked){background:#f1f6ff;border-color:#6f91df;box-shadow:0 0 0 2px rgba(75,116,210,.1)}.admin-taxi-referrer-option[hidden]{display:none!important}.admin-taxi-referrer-option>input{width:18px;height:18px;min-height:18px;margin:0;accent-color:#3565ce}.admin-taxi-referrer-avatar{display:grid;place-items:center;width:46px;height:46px;overflow:hidden;color:#204aaf;background:linear-gradient(145deg,#e8efff,#d8e4ff);border-radius:13px;font-size:16px;font-weight:900}.admin-taxi-referrer-avatar img{width:100%;height:100%;object-fit:cover}.admin-taxi-referrer-info{display:grid;gap:3px;min-width:0}.admin-taxi-referrer-info>span{display:flex;align-items:center;gap:7px;min-width:0}.admin-taxi-referrer-info b,.admin-taxi-referrer-info small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-taxi-referrer-info b{font-size:13px}.admin-taxi-referrer-info small{color:var(--muted);font-size:10px}.admin-taxi-referrer-info em{flex:0 0 auto;padding:4px 7px;color:#2452bc;background:#e8efff;border-radius:999px;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}.admin-taxi-referrer-info em.taxi_passenger{color:#12715a;background:#e2f7ef}.admin-taxi-referrer-option>i{display:grid;place-items:center;width:25px;height:25px;color:transparent;background:#fff;border:1px solid #ced6e2;border-radius:50%;font-size:12px;font-style:normal}.admin-taxi-referrer-option:has(input:checked)>i{color:#fff;background:#3565ce;border-color:#3565ce}.admin-taxi-referrer-empty{display:grid;justify-items:center;gap:5px;padding:40px 20px;color:var(--muted);text-align:center}.admin-taxi-referrer-empty b{color:var(--text);font-size:14px}.admin-taxi-referrer-empty span{font-size:11px}.admin-taxi-referrer-dialog form>footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:14px;border-top:1px solid #e5e9f0}.admin-taxi-referrer-dialog form>footer>span{overflow:hidden;color:#526078;font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.admin-taxi-referrer-dialog form>footer>div{display:flex;gap:8px}.admin-taxi-referrer-dialog form>footer .button{min-height:43px;padding:10px 16px}@media(max-width:600px){.admin-taxi-referrer-dialog>section{padding:17px 14px;border-radius:18px}.admin-taxi-referrer-dialog h2{font-size:20px}.admin-taxi-referrer-results{max-height:46vh}.admin-taxi-referrer-option{grid-template-columns:auto 40px minmax(0,1fr) auto!important;padding:9px!important}.admin-taxi-referrer-avatar{width:40px;height:40px;border-radius:11px}.admin-taxi-referrer-info em{display:none}.admin-taxi-referrer-dialog form>footer{grid-template-columns:1fr}.admin-taxi-referrer-dialog form>footer>div{display:grid;grid-template-columns:1fr 1fr}.admin-taxi-referrer-dialog form>footer .button{width:100%}}
@media(max-width:520px){.admin-account-promotion{padding:18px 16px}.admin-account-promotion h2{width:100%;margin-bottom:14px}.admin-account-promotion .admin-data-grid{gap:8px}.admin-account-promotion .admin-data-grid>div{align-items:start;width:100%;padding:12px}.admin-account-promotion .admin-data-grid dt,.admin-account-promotion .admin-data-grid dd{justify-self:start;text-align:left}}

/* Navegación administrativa lateral */
.admin-page{padding-bottom:0}.admin-sidebar{position:fixed;z-index:60;top:0;bottom:auto;left:0;display:flex;flex-direction:column;width:244px;height:100vh;height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 17px calc(18px + env(safe-area-inset-bottom)) calc(17px + env(safe-area-inset-left));overflow-x:hidden;overflow-y:auto;color:#fff;background:#101935;border-right:1px solid rgba(255,255,255,.1);box-shadow:8px 0 30px rgba(16,25,53,.08);overscroll-behavior:contain}.admin-sidebar .admin-brand,.admin-sidebar nav,.admin-sidebar-account,.admin-sidebar>form{flex:0 0 auto}.admin-sidebar .admin-brand{padding:0 8px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-sidebar nav{display:grid;gap:6px;margin-top:24px}.admin-sidebar nav a{padding:13px 14px;color:rgba(255,255,255,.68);border-radius:10px;font-size:14px;font-weight:700}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:rgba(255,255,255,.11)}.admin-sidebar-account{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-top:auto;padding:15px 8px;border-top:1px solid rgba(255,255,255,.1)}.admin-sidebar-account>span{display:grid;place-items:center;width:36px;height:36px;color:var(--navy);background:var(--aqua);border-radius:10px;font-weight:800}.admin-sidebar-account>div{display:grid;min-width:0}.admin-sidebar-account b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-sidebar-account small{color:rgba(255,255,255,.55);font-size:10px}.admin-sidebar>form button{width:100%;padding:10px;color:rgba(255,255,255,.72);background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:9px;font-size:12px;cursor:pointer}.admin-sidebar>form button:hover{color:#fff;background:rgba(255,255,255,.08)}.admin-main{min-height:100vh;margin-left:244px}.admin-menu-toggle,.admin-menu-button,.admin-menu-overlay{display:none}
.admin-sidebar>form .admin-logout-button{color:#ffdfe1;background:rgba(220,76,84,.18);border-color:rgba(255,132,139,.42)}.admin-sidebar>form .admin-logout-button:hover{color:#fff;background:#c8444c;border-color:#c8444c}
.statistics-title{align-items:center}.statistics-periods{display:flex;gap:4px;padding:4px;background:#e4e8ef;border-radius:12px}.statistics-periods a{padding:9px 12px;color:#657086;border-radius:9px;font-size:12px;font-weight:800;white-space:nowrap}.statistics-periods a.active{color:#fff;background:var(--navy);box-shadow:0 3px 10px rgba(16,25,53,.18)}.statistics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.statistics-kpi{position:relative;display:grid;gap:5px;min-height:132px;padding:20px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}.statistics-kpi:after{position:absolute;right:-17px;bottom:-22px;width:75px;height:75px;background:currentColor;border-radius:50%;content:"";opacity:.08}.statistics-kpi>span{color:var(--muted);font-size:12px;font-weight:750}.statistics-kpi>strong{align-self:end;color:var(--navy);font-size:30px;letter-spacing:-.04em}.statistics-kpi>small{color:#667188;font-size:11px}.statistics-kpi.kpi-orders{color:#3a62b8;border-top:3px solid #3a62b8}.statistics-kpi.kpi-delivered{color:#22906b;border-top:3px solid #22906b}.statistics-kpi.kpi-value{color:#b27b20;border-top:3px solid #d59b35}.statistics-kpi.kpi-users{color:#7558bd;border-top:3px solid #7558bd}.statistics-trend-panel{margin-bottom:18px}.statistics-panel-title{align-items:center}.statistics-legend{display:flex;flex-wrap:wrap;gap:13px;color:#657086;font-size:11px;font-weight:700}.statistics-legend span:before{display:inline-block;width:8px;height:8px;margin-right:5px;background:#426dc8;border-radius:3px;content:""}.statistics-legend .is-delivered:before{background:#29a77d}.statistics-legend .is-cancelled:before{background:#e36b70}.statistics-chart-scroll{padding:14px 2px 2px;overflow-x:auto}.statistics-bar-chart{display:grid;grid-template-columns:repeat(var(--chart-days),minmax(28px,1fr));align-items:end;gap:5px;min-width:max(100%,calc(var(--chart-days) * 34px));height:255px;padding:11px 5px 0;border-bottom:1px solid #d9dee8;background:repeating-linear-gradient(to bottom,#edf0f5 0,#edf0f5 1px,transparent 1px,transparent 25%)}.statistics-day{display:grid;grid-template-rows:215px 24px;align-items:end;min-width:0}.statistics-bars{display:flex;align-items:end;justify-content:center;gap:2px;height:100%}.statistics-bars i{position:relative;width:27%;height:max(2px,var(--bar-height));background:#426dc8;border-radius:4px 4px 1px 1px}.statistics-bars i.is-delivered{background:#29a77d}.statistics-bars i.is-cancelled{background:#e36b70}.statistics-bars i span{position:absolute;top:-16px;left:50%;display:none;color:#516078;font-size:9px;font-style:normal;transform:translateX(-50%)}.statistics-bars i:hover span{display:block}.statistics-day time{overflow:hidden;color:#788194;font-size:9px;text-align:center;white-space:nowrap}.statistics-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;margin-bottom:18px}.statistics-rank-list{display:grid;gap:13px}.statistics-rank-list>a,.statistics-rank-list>div{display:grid;gap:6px;color:inherit}.statistics-rank-list>a>span,.statistics-rank-list>div>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.statistics-rank-list b{font-size:12px}.statistics-rank-list strong{color:var(--navy);font-size:12px}.statistics-rank-list i{height:7px;overflow:hidden;background:#edf0f5;border-radius:6px}.statistics-rank-list i em{display:block;min-width:2px;height:100%;background:#5279cf;border-radius:6px}.statistics-rank-list i .status-aceptado,.statistics-rank-list i .status-recogido,.statistics-rank-list i .status-en_camino{background:#df9e32}.statistics-rank-list i .status-entregado{background:#29a77d}.statistics-rank-list i .status-cancelado{background:#e36b70}.statistics-rank-list.compact i em{background:#42bda9}.statistics-rank-list.compact.delivery i em{background:#e98069}.statistics-rank-list.compact.vehicle i em{background:#7966bd}.statistics-resolution{display:grid;grid-template-columns:minmax(125px,1fr) .8fr;align-items:center;gap:22px}.statistics-donut{display:grid;place-items:center;width:145px;max-width:100%;aspect-ratio:1;margin:auto;background:conic-gradient(#29a77d calc(var(--delivery-rate) * 1%),#e36b70 0);border-radius:50%}.statistics-donut:before{grid-area:1/1;width:72%;height:72%;background:#fff;border-radius:50%;content:""}.statistics-donut>span{z-index:1;grid-area:1/1;display:grid;text-align:center}.statistics-donut strong{font-size:24px}.statistics-donut small{color:var(--muted);font-size:10px}.statistics-resolution dl{display:grid;gap:10px;margin:0}.statistics-resolution dl>div{padding:10px;background:#f5f7fa;border-radius:10px}.statistics-resolution dt{color:var(--muted);font-size:10px}.statistics-resolution dd{margin:2px 0 0;font-size:18px;font-weight:850}.statistics-location-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.statistics-location-grid .admin-panel{min-width:0}
@media(max-width:1050px){.statistics-kpis{grid-template-columns:1fr 1fr}.statistics-location-grid{grid-template-columns:1fr 1fr}.statistics-location-grid .admin-panel:last-child{grid-column:1/-1}}
.statistics-bar-chart.is-single-series .statistics-bars i{width:68%}.statistics-bar-chart.is-single-series .statistics-bars i span{display:block}.statistics-bar-chart.is-accounts .statistics-bars i{background:#29a77d}
@media(max-width:700px){.statistics-title{align-items:flex-start;flex-direction:column}.statistics-periods{width:100%;overflow:auto}.statistics-periods a{flex:1;text-align:center}.statistics-kpis,.statistics-grid,.statistics-location-grid{grid-template-columns:1fr}.statistics-location-grid .admin-panel:last-child{grid-column:auto}.statistics-kpi{min-height:115px}.statistics-panel-title{display:grid;gap:10px}.statistics-resolution{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.statistics-kpis{grid-template-columns:1fr 1fr}.statistics-kpi{min-height:126px;padding:15px}.statistics-kpi>strong{font-size:24px}.statistics-kpi>small{font-size:10px}.statistics-resolution{grid-template-columns:1fr}.statistics-donut{width:135px}}
.statistics-views{display:flex;gap:5px;width:max-content;max-width:100%;margin:0 0 18px;padding:5px;background:#e4e8ef;border-radius:12px}.statistics-views a{min-width:115px;padding:10px 16px;color:#657086;border-radius:9px;font-size:13px;font-weight:800;text-align:center}.statistics-views a.active{color:#fff;background:var(--navy)}.statistics-secondary-kpis{display:flex;flex-wrap:wrap;gap:10px;margin:-5px 0 18px}.statistics-secondary-kpis>div{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:11px}.statistics-secondary-kpis span{color:var(--muted);font-size:11px;font-weight:700}.statistics-secondary-kpis strong{color:var(--navy);font-size:15px}.statistics-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.statistics-extra-grid .admin-panel,.statistics-coverage-grid .admin-panel{min-width:0}.statistics-cancellations{margin-bottom:18px}.statistics-scope-note{margin:0 0 18px;color:var(--muted);font-size:12px}.statistics-municipalities{margin-bottom:18px}.statistics-table-scroll{overflow-x:auto}.statistics-municipality-table{width:100%;min-width:650px}.statistics-municipality-table td strong{color:#22906b}.statistics-municipality-table td a{font-size:12px;font-weight:800;white-space:nowrap}.statistics-coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}
.statistics-account-map{margin-bottom:18px;padding:0;overflow:hidden}.statistics-account-map-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px 18px;background:linear-gradient(135deg,#101935 0%,#172c57 64%,#184f67 100%);color:#fff}.statistics-account-map-heading>div:first-child{display:grid;gap:4px}.statistics-account-map-heading h2{margin:0;color:#fff;font-size:24px}.statistics-account-map-heading p{max-width:680px;margin:0;color:rgba(255,255,255,.68);font-size:12px;line-height:1.5}.statistics-map-eyebrow{color:var(--aqua);font-size:9px;font-weight:900;letter-spacing:.13em}.statistics-account-map-summary{display:grid;flex:0 0 auto;min-width:132px;padding:12px 15px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:13px;text-align:right}.statistics-account-map-summary strong{color:#fff;font-size:25px;line-height:1}.statistics-account-map-summary span{margin-top:4px;color:rgba(255,255,255,.67);font-size:10px}.statistics-account-map-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:11px;padding:15px 18px;background:#f7f9fc;border-bottom:1px solid var(--line)}.statistics-account-map-filters label{display:grid;gap:5px}.statistics-account-map-filters label>span{color:#627087;font-size:10px;font-weight:800}.statistics-account-map-filters select{width:100%;min-height:40px;background:#fff}.statistics-map-reset{min-height:40px;padding:0 14px;color:#365f9e;background:#e9f0fc;border:1px solid #d5e0f2;border-radius:9px;font-size:11px;font-weight:800;cursor:pointer}.statistics-map-reset:hover{background:#dfe9fa}.statistics-account-map-canvas{position:relative;height:520px;overflow:hidden;background:#dce7e8;cursor:grab;touch-action:none}.statistics-account-map-canvas.is-dragging{cursor:grabbing}.statistics-map-tiles,.statistics-map-points{position:absolute;inset:0}.statistics-map-tiles img{position:absolute;width:256px;height:256px;max-width:none;user-select:none;pointer-events:none}.statistics-map-points{pointer-events:none}.statistics-map-point{position:absolute;z-index:2;width:18px;height:18px;padding:0;transform:translate(-50%,-50%);background:#2467d1;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(16,25,53,.38),0 0 0 4px rgba(36,103,209,.16);cursor:pointer;pointer-events:auto;transition:transform .15s ease,box-shadow .15s ease}.statistics-map-point.courier{background:#e0474f;box-shadow:0 2px 8px rgba(16,25,53,.38),0 0 0 4px rgba(224,71,79,.17)}.statistics-map-point:hover,.statistics-map-point:focus-visible,.statistics-map-point.is-selected{z-index:4;transform:translate(-50%,-50%) scale(1.3);outline:0;box-shadow:0 3px 12px rgba(16,25,53,.48),0 0 0 5px rgba(255,255,255,.8)}.statistics-map-popup{position:absolute;z-index:6;width:230px;padding:14px;transform:translate(-50%,calc(-100% - 17px));color:var(--text);background:#fff;border:1px solid rgba(16,25,53,.12);border-radius:13px;box-shadow:0 14px 34px rgba(16,25,53,.24);pointer-events:none}.statistics-map-popup:after{position:absolute;top:100%;left:50%;width:12px;height:12px;background:#fff;border-right:1px solid rgba(16,25,53,.12);border-bottom:1px solid rgba(16,25,53,.12);content:"";transform:translate(-50%,-6px) rotate(45deg)}.statistics-map-popup small{display:block;margin-bottom:4px;color:#58709b;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.statistics-map-popup strong{display:block;color:var(--navy);font-size:14px;line-height:1.3}.statistics-map-popup p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.statistics-map-popup em{display:inline-flex;margin-top:9px;padding:4px 7px;color:#176b50;background:#def5ea;border-radius:8px;font-size:9px;font-style:normal;font-weight:800}.statistics-map-popup em.inactive,.statistics-map-popup em.rejected{color:#8b611c;background:#fff1cf}.statistics-map-popup em.suspended{color:#a43e48;background:#fde7e9}.statistics-map-popup em.pending{color:#4e5c76;background:#edf0f5}.statistics-map-controls{position:absolute;z-index:7;top:15px;right:15px;display:grid;gap:4px}.statistics-map-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;color:var(--navy);background:#fff;border:1px solid #c8d2dc;border-radius:9px;box-shadow:0 3px 9px rgba(16,25,53,.14);font-size:24px;line-height:1;cursor:pointer}.statistics-map-legend{position:absolute;z-index:5;bottom:14px;left:14px;display:flex;gap:12px;padding:9px 12px;color:#35435a;background:rgba(255,255,255,.94);border:1px solid rgba(16,25,53,.1);border-radius:10px;box-shadow:0 3px 10px rgba(16,25,53,.12);font-size:10px;font-weight:800;pointer-events:none}.statistics-map-legend span{display:flex;align-items:center;gap:6px}.statistics-map-legend i{width:10px;height:10px;background:#2467d1;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #9eacc0}.statistics-map-legend i.courier{background:#e0474f}.statistics-map-attribution{position:absolute;z-index:5;right:7px;bottom:5px;padding:2px 5px;color:#34404c;background:rgba(255,255,255,.88);border-radius:3px;font-size:9px}.statistics-map-empty{position:absolute;z-index:5;inset:0;display:grid;place-items:center;align-content:center;gap:5px;padding:30px;background:rgba(235,241,242,.82);text-align:center;pointer-events:none}.statistics-map-empty[hidden]{display:none}.statistics-map-empty strong{color:var(--navy);font-size:16px}.statistics-map-empty span{color:var(--muted);font-size:12px}.statistics-map-note{margin:0;padding:11px 18px;color:#697489;background:#fafbfc;border-top:1px solid var(--line);font-size:10px;line-height:1.5}
@media(max-width:780px){.statistics-account-map-filters{grid-template-columns:1fr 1fr}.statistics-map-reset{width:100%}.statistics-account-map-canvas{height:440px}}
@media(max-width:520px){.statistics-account-map-heading{align-items:flex-start;padding:19px 17px}.statistics-account-map-heading h2{font-size:21px}.statistics-account-map-summary{min-width:85px;padding:10px}.statistics-account-map-filters{grid-template-columns:1fr;padding:13px}.statistics-account-map-canvas{height:410px}.statistics-map-legend{bottom:12px;left:10px}.statistics-map-popup{width:205px}}
.statistics-map-point{width:44px;height:49px;padding:0;transform:translate(-50%,-100%);background:transparent;border:0;border-radius:0;box-shadow:none;transition:transform .15s ease}.statistics-map-point>span{position:absolute;top:2px;left:5px;display:grid;place-items:center;width:34px;height:34px;color:#fff;background:#2467d1;border:3px solid #fff;border-radius:50% 50% 50% 7px;box-shadow:0 4px 10px rgba(16,25,53,.38);transform:rotate(-45deg)}.statistics-map-point>span svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;transform:rotate(45deg)}.statistics-map-point.courier{background:transparent;box-shadow:none}.statistics-map-point.courier>span{background:#53657d}.statistics-map-point.courier.vehicle-bicicleta>span{background:#168b62}.statistics-map-point.courier.vehicle-triciclo>span{background:#d97706}.statistics-map-point.courier.vehicle-moto>span{background:#dc3f52}.statistics-map-point.courier.vehicle-carro>span{background:#7651c9}.statistics-map-point.courier.vehicle-camion>span{background:#087f91}.statistics-map-point:hover,.statistics-map-point:focus-visible,.statistics-map-point.is-selected{transform:translate(-50%,-100%) scale(1.16);box-shadow:none}.statistics-map-point:hover>span,.statistics-map-point:focus-visible>span,.statistics-map-point.is-selected>span{box-shadow:0 5px 15px rgba(16,25,53,.5),0 0 0 4px rgba(255,255,255,.72)}.statistics-map-popup{transform:translate(-50%,calc(-100% - 57px))}.statistics-account-map-summary{justify-items:center;text-align:center}.statistics-account-map-filters{grid-template-columns:repeat(4,minmax(135px,1fr)) auto}.statistics-account-map-filters select{min-height:50px;padding:11px 42px 11px 14px;border-radius:11px;font-size:13px;font-weight:700}.statistics-account-map-filters .statistics-map-reset{min-height:50px;padding-inline:17px;border-radius:11px}.statistics-map-legend{flex-wrap:wrap;max-width:calc(100% - 90px)}.statistics-map-legend i.vehicle-bicicleta{background:#168b62}.statistics-map-legend i.vehicle-triciclo{background:#d97706}.statistics-map-legend i.vehicle-moto{background:#dc3f52}.statistics-map-legend i.vehicle-carro{background:#7651c9}.statistics-map-legend i.vehicle-camion{background:#087f91}
@media(max-width:1050px){.statistics-account-map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-account-map-filters .statistics-map-reset{width:100%}}
@media(max-width:520px){.statistics-account-map-filters{grid-template-columns:1fr}}
.admin-page .statistics-account-map-filters select{box-sizing:border-box;height:60px!important;min-height:60px!important;padding:0 48px 0 18px!important;border-radius:13px;font-size:16px!important;font-weight:700;line-height:60px}.admin-page .statistics-account-map-filters label{gap:8px}.admin-page .statistics-account-map-filters label>span{font-size:12px}.admin-page .statistics-account-map-filters .statistics-map-reset{height:60px!important;min-height:60px!important;padding-inline:20px;font-size:13px}
.statistics-account-map-host{min-width:0}.statistics-account-map-heading-actions{display:flex;align-items:center;gap:10px}.statistics-map-expand{display:grid;grid-template-columns:auto auto;align-items:center;gap:7px;min-height:48px;padding:0 14px;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.17);border-radius:12px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.statistics-map-expand:hover{background:rgba(255,255,255,.18)}.statistics-map-expand b{font-size:20px;font-weight:500;line-height:1}.statistics-map-dialog{width:calc(100vw - 32px);max-width:none;height:calc(100vh - 32px);height:calc(100dvh - 32px);max-height:none;margin:auto;padding:0;overflow:hidden;background:#fff;border:0;border-radius:18px;box-shadow:0 28px 80px rgba(3,10,28,.42)}.statistics-map-dialog::backdrop{background:rgba(7,14,31,.72);backdrop-filter:blur(4px)}.statistics-map-dialog-content{width:100%;height:100%}.statistics-map-dialog-close{position:absolute;z-index:20;top:12px;right:12px;display:grid;place-items:center;width:42px;height:42px;padding:0;color:#fff;background:rgba(8,16,36,.72);border:1px solid rgba(255,255,255,.3);border-radius:50%;box-shadow:0 5px 18px rgba(0,0,0,.25);font:400 29px/1 Arial,sans-serif;cursor:pointer}.statistics-map-dialog-close:hover{background:#d64a55}.statistics-account-map.is-modal{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:100%;height:100%;margin:0;border:0;border-radius:0;box-shadow:none}.statistics-account-map.is-modal .statistics-account-map-heading{padding-right:70px}.statistics-account-map.is-modal .statistics-map-expand{display:none}.statistics-account-map.is-modal .statistics-account-map-canvas{height:auto;min-height:0}@media(max-width:700px){.statistics-map-expand{grid-template-columns:auto;width:48px;padding:0}.statistics-map-expand span{display:none}.statistics-map-dialog{width:calc(100vw - 12px);height:calc(100dvh - 12px);border-radius:14px}.statistics-account-map.is-modal .statistics-account-map-heading{padding-right:62px}.statistics-account-map.is-modal .statistics-account-map-heading-actions{margin-left:auto}.statistics-account-map.is-modal .statistics-account-map-summary{display:none}.statistics-map-dialog-close{top:9px;right:9px}}
.statistics-vehicles{margin-bottom:18px;scroll-margin-top:18px}.statistics-vehicles-heading{gap:20px}.statistics-vehicles-heading>div{max-width:700px}.statistics-vehicle-summary{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 10px}.statistics-vehicle-summary>div{display:grid;gap:4px;min-width:160px;padding:12px 16px;background:#f2f6fc;border:1px solid #e2e9f4;border-radius:11px}.statistics-vehicle-summary span{color:#657086;font-size:11px;font-weight:700}.statistics-vehicle-summary strong{color:var(--navy);font-size:24px;line-height:1}.statistics-vehicle-note{margin:0 0 16px;color:var(--muted);font-size:11px;line-height:1.5}.statistics-vehicle-table{min-width:760px}.statistics-vehicle-table th{white-space:nowrap}.statistics-vehicle-table th button{display:inline-flex;align-items:center;gap:5px;padding:0;color:inherit;background:none;border:0;font:inherit;cursor:pointer}.statistics-vehicle-table th button:hover,.statistics-vehicle-table th button:focus-visible{color:var(--blue)}.statistics-vehicle-table th button span{width:10px;color:#8190a8;font-size:11px;text-align:center}.statistics-vehicle-table td:first-child{display:table-cell}.statistics-vehicle-table td:not(:first-child){text-align:center}.statistics-vehicle-table td strong{color:#6550ab;font-size:13px}.statistics-vehicle-table tr:hover td{background:#fafbfe}.statistics-vehicle-table .statistics-vehicle-empty td{padding:24px;color:var(--muted);text-align:center}
@media(max-width:700px){.statistics-vehicles-heading{flex-direction:column}.statistics-vehicle-summary>div{flex:1;min-width:130px}}
.admin-account-filters{grid-template-columns:minmax(180px,1fr) repeat(3,minmax(140px,170px)) auto}
@media(max-width:850px){.admin-account-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-account-filters .admin-account-search{grid-column:1/-1}}
@media(max-width:520px){.admin-account-filters{grid-template-columns:1fr}.admin-account-filters .admin-account-search{grid-column:auto}}
@media(max-width:700px){.statistics-extra-grid,.statistics-coverage-grid{grid-template-columns:1fr}}
.admin-push-button{flex:0 0 auto;width:100%;margin:0 0 8px;padding:10px;color:#101935;background:#59e2d4;border:0;border-radius:9px;font-size:12px;font-weight:750;cursor:pointer}.admin-push-button:hover:not(:disabled){background:#9af2e9}.admin-push-button:disabled{opacity:.8;cursor:default}
@media(max-width:850px){.admin-sidebar{width:min(250px,calc(100vw - 28px));transform:translateX(-102%);transition:transform .22s ease}.admin-menu-toggle:checked+.admin-sidebar{transform:translateX(0)}.admin-main{margin-left:0}.admin-menu-button{position:fixed;z-index:59;top:calc(13px + env(safe-area-inset-top));left:calc(13px + env(safe-area-inset-left));display:grid;place-items:center;width:42px;height:42px;color:#fff;background:var(--navy);border-radius:11px;box-shadow:0 7px 18px rgba(16,25,53,.2);font-size:20px;cursor:pointer}.admin-menu-overlay{position:fixed;z-index:58;inset:0;display:none;background:rgba(10,16,35,.48)}.admin-menu-toggle:checked~.admin-menu-overlay{display:block}.admin-content{padding-top:18px}.admin-content>.admin-title:first-child{padding-left:52px}.admin-content>.admin-back:first-child{margin-left:52px}}
.admin-password-reset{display:grid;gap:10px}.admin-password-reset h2{margin:0}.admin-password-reset>p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.admin-password-reset form{display:grid;gap:10px}.admin-password-reset label{font-size:13px}.forced-password-shell{display:grid;place-items:center;min-height:100vh;padding:100px 20px 50px;background:var(--canvas)}.forced-password-card{width:min(470px,100%);padding:30px;background:#fff;border:1px solid var(--line);border-radius:21px;box-shadow:var(--shadow)}.forced-password-card h1{margin:10px 0;font-size:29px}.forced-password-card>p{margin-bottom:23px;color:var(--muted);font-size:13px;line-height:1.6}
.admin-delete-account{display:grid;gap:10px;border-color:#efc9cd;background:#fffafb}.admin-delete-account h2{margin:0;color:#a6323b}.admin-delete-account>p{margin:0;color:#745158;font-size:13px;line-height:1.5}
.admin-order-correction{border-color:#cfdafa}.admin-order-correction>p{margin:-6px 0 16px;color:var(--muted);font-size:13px;line-height:1.55}.admin-order-correction form{display:grid;gap:12px}.admin-order-correction label{display:grid;gap:6px;font-size:13px;font-weight:700}.admin-order-correction select,.admin-order-correction textarea{width:100%;font-size:14px}.admin-order-correction textarea{min-height:100px;resize:vertical}
.email-health{padding:8px 12px;color:#8b611c;background:#fff1cf;border-radius:16px;font-size:12px;font-weight:800}.email-health.is-enabled{color:#176b50;background:#def5ea}.admin-email-tabs{display:flex;gap:7px;margin-bottom:18px;padding:5px;background:#e7eaf0;border-radius:13px;width:max-content}.admin-email-tabs a{padding:10px 16px;color:var(--muted);border-radius:9px;font-size:13px;font-weight:800}.admin-email-tabs a.active{color:var(--navy);background:#fff;box-shadow:0 3px 10px rgba(16,25,53,.08)}.admin-email-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px}.admin-email-settings form,.admin-email-test form{display:grid;gap:15px}.email-enable{display:flex!important;align-items:flex-start;gap:10px;padding:13px;background:#f2f8f5;border:1px solid #d6ebe3;border-radius:11px}.email-enable input{flex:0 0 auto;width:18px;min-height:18px;margin-top:2px;accent-color:var(--green)}.email-enable span{display:grid;gap:2px}.email-enable b{font-size:13px}.email-enable small{color:var(--muted);font-size:11px;font-weight:500}.email-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.email-form-grid label,.admin-email-test label,.email-template-card label{display:grid;gap:6px;font-size:13px;font-weight:700}.email-form-grid label.wide{grid-column:1/-1}.email-form-grid label>small{color:var(--muted);font-weight:500}.admin-email-test>p{margin:-7px 0 17px;color:var(--muted);font-size:13px;line-height:1.55}.admin-email-history{margin-top:18px;padding:0;overflow:hidden}.admin-email-history>.admin-panel-title{padding:20px 21px 12px}.email-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.email-counts span{padding:5px 8px;color:var(--muted);background:#f0f2f6;border-radius:10px;font-size:11px}.email-delivery-status{display:inline-flex;padding:5px 8px;border-radius:11px;font-size:11px;font-weight:800}.email-delivery-status.pending,.email-delivery-status.sending{color:#8b611c;background:#fff1cf}.email-delivery-status.sent{color:#176b50;background:#def5ea}.email-delivery-status.failed{color:#a43e48;background:#fde7e9}.email-error{max-width:430px;color:#a43e48!important;white-space:normal}.email-retry,.email-template-restore button{padding:5px;color:var(--blue);background:transparent;border:0;font-size:12px;font-weight:800;cursor:pointer}.email-template-help{margin-bottom:14px}.email-template-help h2{margin-bottom:6px}.email-template-help>p{margin:0 0 13px;color:var(--muted);font-size:13px}.email-template-help>div{display:flex;flex-wrap:wrap;gap:6px}.email-template-help code{padding:5px 8px;color:#36547f;background:#edf3ff;border-radius:7px;font-size:11px}.email-template-list{display:grid;gap:11px}.email-template-card{padding:0;overflow:hidden}.email-template-card summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;cursor:pointer;list-style:none}.email-template-card summary::-webkit-details-marker{display:none}.email-template-card summary>span:first-child{display:grid;gap:3px}.email-template-card summary b{font-size:15px}.email-template-card summary small{color:var(--muted);font-size:11px}.email-template-state{padding:5px 8px;color:#8b611c;background:#fff1cf;border-radius:11px;font-size:11px;font-weight:800}.email-template-state.enabled{color:#176b50;background:#def5ea}.email-template-card>form:not(.email-template-restore){display:grid;gap:13px;padding:19px 20px;border-top:1px solid var(--line);background:#fafbfc}.email-template-card textarea{resize:vertical;line-height:1.55}.email-template-preview{padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}.email-template-preview small{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.08em}.email-template-preview p{margin:10px 0 0;font-size:13px;line-height:1.55;white-space:pre-wrap}.email-template-actions{display:flex;justify-content:flex-end}.email-template-restore{padding:0 20px 15px;text-align:right;background:#fafbfc}.email-template-restore button{color:#a43e48}
@media(max-width:850px){.admin-email-grid{grid-template-columns:1fr}.email-form-grid{grid-template-columns:1fr}.email-form-grid label.wide{grid-column:auto}.admin-email-tabs{width:100%}.admin-email-tabs a{flex:1;text-align:center}.email-counts{justify-content:flex-start}.admin-email-history>.admin-panel-title{display:grid;gap:10px}}
.email-template-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px}.email-template-sidebar{position:sticky;top:20px;padding:0;overflow:hidden}.email-template-sidebar-heading{display:grid;gap:4px;padding:18px 17px;border-bottom:1px solid var(--line)}.email-template-sidebar-heading>small{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.1em}.email-template-sidebar-heading>b{font-size:15px}.email-template-sidebar nav{display:grid;max-height:calc(100vh - 245px);overflow-y:auto;padding:7px}.email-template-sidebar nav button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px 10px;color:var(--text);background:transparent;border:0;border-radius:9px;text-align:left;cursor:pointer}.email-template-sidebar nav button:hover{background:#f4f6fa}.email-template-sidebar nav button.active{color:var(--navy);background:#eaf0ff}.email-template-sidebar nav button>span{display:grid;gap:2px;min-width:0}.email-template-sidebar nav button b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.email-template-sidebar nav button small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.email-template-sidebar nav button i{width:8px;height:8px;background:#d99c36;border-radius:50%;box-shadow:0 0 0 3px #fff1cf}.email-template-sidebar nav button i.enabled{background:#2b9a73;box-shadow:0 0 0 3px #def5ea}.email-template-editors{min-width:0}.email-template-editor[hidden]{display:none!important}.email-template-editor{padding:0;overflow:hidden}.email-template-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 22px;border-bottom:1px solid var(--line)}.email-template-editor-heading>div{display:grid;gap:3px}.email-template-editor-heading small{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.09em}.email-template-editor-heading h2{margin:0;font-size:20px}.email-template-editor-heading p{margin:0;color:var(--muted);font-size:11px}.email-template-editor-heading .email-template-admin-note{max-width:680px;margin-top:7px;color:#46566f;font-size:12px;line-height:1.55}.email-template-editor>form:not(.email-template-restore){display:grid;gap:15px;padding:20px 22px;background:#fafbfc}.email-template-editor label:not(.email-enable){display:grid;gap:6px;font-size:13px;font-weight:700}.email-template-variables{padding:11px 13px;background:#f0f3f8;border-radius:10px}.email-template-variables summary{color:var(--blue);font-size:12px;font-weight:800;cursor:pointer}.email-template-variables>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.email-template-variables code{padding:5px 7px;color:#36547f;background:#fff;border:1px solid #dce4f5;border-radius:7px;font-size:10px}.email-template-preview>b{display:block;margin-top:12px;font-size:15px}.email-template-editor .email-template-restore{padding:0 22px 18px}.email-template-editor .email-template-restore button{padding-right:0}
.email-template-sidebar nav{gap:10px;background:#f5f7fb}.email-template-nav-group{display:grid;gap:3px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:12px}.email-template-nav-group+ .email-template-nav-group{padding-top:7px;border-top:1px solid var(--line)}.email-template-nav-group>header{display:grid;gap:5px;margin:-7px -7px 3px;padding:11px 12px;border-radius:11px 11px 8px 8px;background:#edf2ff}.email-template-nav-group>header>small{color:#5270ad;font-size:9px;font-weight:900;line-height:1;letter-spacing:.12em}.email-template-nav-group>header>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.email-template-nav-group>header b{color:var(--navy);font-size:14px;line-height:1.25}.email-template-nav-group>header em{flex:0 0 auto;padding:3px 6px;color:#52617c;background:rgba(255,255,255,.7);border-radius:8px;font-size:9px;font-style:normal;font-weight:750}.email-template-nav-group>header p{margin:0;color:#59667d;font-size:10px;line-height:1.4}.email-template-group-business>header{background:#eaf1ff}.email-template-group-business>header>small,.email-template-group-business>header b{color:#315fb8}.email-template-group-courier>header{background:#e7f7f1}.email-template-group-courier>header>small,.email-template-group-courier>header b{color:#16735f}.email-template-group-recipient>header{background:#fff3dc}.email-template-group-recipient>header>small,.email-template-group-recipient>header b{color:#946419}.email-template-group-shared>header{background:#f0edff}.email-template-group-shared>header>small,.email-template-group-shared>header b{color:#6652b8}.email-template-nav-group>button.active{box-shadow:inset 3px 0 0 currentColor}
@media(max-width:900px){.email-template-workspace{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:680px){.email-template-workspace{grid-template-columns:1fr}.email-template-sidebar{position:static}.email-template-sidebar nav{display:grid;max-height:430px;overflow:auto;padding:7px}.email-template-sidebar nav button{width:100%}.email-template-editor-heading{align-items:flex-start;padding:17px}.email-template-editor>form:not(.email-template-restore){padding:17px}.email-template-editor .email-template-restore{padding:0 17px 15px}}
@media (max-width:680px){.public-page .public-nav{gap:9px}.public-page .public-nav>.public-login-link{display:inline-flex;padding:9px 6px;color:#fff;font-size:12px}.public-page .public-nav .button{padding-inline:13px;font-size:12px}}
@media (max-width:380px){.public-page .brand{font-size:18px}.public-page .brand-mark{width:31px;height:31px}.public-page .public-nav{gap:5px}.public-page .public-nav .button{padding-inline:10px}}
.mobile-header-notifications{display:none}
@media (max-width:680px){.mobile-header-notifications{position:relative;display:grid;place-items:center;width:32px;height:32px;color:#687287;background:transparent;border:0;border-radius:0;box-shadow:none}.mobile-header-notifications .icon{width:16px;height:16px;stroke-width:1.8}.mobile-header-notifications .notification-dot{top:-3px;right:-3px;min-width:18px;height:18px;padding:0 3px;border-width:1.5px;font-size:10px!important;line-height:1!important}}
.mobile-header-actions{display:none}.connection-header-indicator{display:inline-grid;place-items:center;flex:0 0 31px;width:31px;height:31px;color:#d93643;background:transparent;border:0;border-radius:50%}.connection-header-indicator[hidden]{display:none!important}.connection-header-indicator svg{width:21px;height:21px;stroke-width:2.2}@media(max-width:680px){.mobile-header-actions{display:flex;align-items:center;gap:7px}.mobile-header-actions .connection-header-indicator{flex-basis:29px;width:29px;height:29px}.mobile-header-actions .connection-header-indicator svg{width:20px;height:20px}}
.history-filters{display:flex;gap:8px;margin:0 0 20px;overflow:auto;padding-bottom:3px}.history-filter{flex:0 0 auto;padding:8px 13px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:20px;font-size:11px;font-weight:700}.history-filter.active{color:#fff;background:var(--navy);border-color:var(--navy)}
.history-list{display:grid;gap:11px}.history-order{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-soft)}.history-order summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:13px;padding:16px 18px;list-style:none;cursor:pointer}.history-order summary::-webkit-details-marker{display:none}.history-order summary:hover{background:#fafbfe}.history-order-title{display:grid;min-width:0}.history-order-title b{font-size:13px}.history-order-title small{margin-top:3px;color:var(--muted);font-size:9px}.history-order summary>strong{font-size:14px;text-align:right}.history-order summary>strong small{display:block;color:var(--muted);font-size:8px}.history-chevron{width:17px;color:var(--muted);transition:transform .2s}.history-order[open] .history-chevron{transform:rotate(90deg)}.history-order-details{display:grid;gap:14px;padding:17px 18px 18px;border-top:1px solid var(--line);background:#fafbfe}.history-route{display:grid;grid-template-columns:1fr 1fr;gap:12px}.history-route>div,.history-extra>span{display:grid;gap:3px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:11px}.history-route small,.history-extra small{color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.08em}.history-route b,.history-extra b{font-size:11px}.history-route span{color:var(--text);font-size:10px}.history-extra{display:grid;grid-template-columns:1fr;gap:12px}
.history-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px}.history-pagination .button{min-width:96px;padding:10px 14px}.history-pagination span{color:var(--muted);font-size:12px;font-weight:700}
.taxi-earnings-days,.taxi-earnings-chart-panel{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}.taxi-earnings-days>header,.taxi-earnings-chart-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.taxi-earnings-days header h2,.taxi-earnings-chart-panel header h2{margin:0;color:var(--navy);font-size:17px}.taxi-earnings-days header p,.taxi-earnings-chart-panel header p{margin:4px 0 0;color:var(--muted);font-size:11px}.taxi-earnings-days>header>span{padding:6px 9px;color:#765400;background:#fff5d7;border-radius:9px;font-size:9px;font-weight:800}.taxi-earnings-list{display:grid}.taxi-earnings-row{display:grid;grid-template-columns:minmax(125px,1.15fr) minmax(130px,1fr) minmax(125px,1fr) minmax(110px,.8fr);align-items:center;gap:14px;padding:14px 20px;border-top:1px solid #edf0f4}.taxi-earnings-row:first-child{border-top:0}.taxi-earnings-head{padding-block:9px;color:var(--muted);background:#f7f8fa;font-size:9px;font-weight:850;text-transform:uppercase}.taxi-earnings-row>div{display:grid;gap:2px}.taxi-earnings-row time{font-size:12px;font-weight:800}.taxi-earnings-row div small{color:var(--muted);font-size:9px}.taxi-earnings-row>strong{color:#18805e;font-size:15px}.taxi-earnings-row>strong small{color:var(--muted);font-size:8px}.taxi-earnings-row>span{display:flex;align-items:center;gap:6px;color:#536077;font-size:11px;font-weight:700}.taxi-earnings-row>span svg{width:15px;height:15px;color:#a87800}.taxi-earnings-chart-panel{margin-top:20px}.taxi-earnings-chart-panel>header>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:800}.taxi-earnings-chart-panel>header>span i{width:9px;height:9px;background:#ffc94a;border-radius:3px}.taxi-earnings-chart-scroll{padding:20px 16px 14px;overflow-x:auto}.taxi-earnings-chart{display:grid;grid-template-columns:repeat(var(--earnings-days),minmax(42px,1fr));align-items:end;gap:8px;min-width:max(100%,calc(var(--earnings-days)*50px));height:235px;padding:8px 3px 0;border-bottom:1px solid #dce1e8;background:repeating-linear-gradient(to bottom,#edf0f4 0,#edf0f4 1px,transparent 1px,transparent 25%)}.taxi-earnings-chart-day{display:grid;grid-template-rows:190px 24px;align-items:end;height:100%}.taxi-earnings-bar-track{display:flex;align-items:flex-end;justify-content:center;height:100%}.taxi-earnings-bar-track i{position:relative;width:68%;height:max(3px,var(--earnings-height));background:linear-gradient(#ffda70,#e9ad13);border-radius:6px 6px 2px 2px}.taxi-earnings-bar-track b{position:absolute;top:-18px;left:50%;display:none;color:#5e4a14;font-size:9px;white-space:nowrap;transform:translateX(-50%)}.taxi-earnings-chart-day:hover b{display:block}.taxi-earnings-chart-day time{overflow:hidden;color:var(--muted);font-size:9px;text-align:center;white-space:nowrap}
@media (max-width:680px){.history-filters{margin-inline:-2px}.history-order summary{grid-template-columns:auto minmax(0,1fr) auto;padding:14px;gap:10px}.history-order summary>.status-pill{grid-column:2/3}.history-order summary>strong{grid-column:3;grid-row:1}.history-chevron{grid-column:3;grid-row:2;justify-self:end}.history-route,.history-extra{grid-template-columns:1fr}}
@media (max-width:680px){.taxi-earnings-days>header,.taxi-earnings-chart-panel>header{align-items:flex-start;padding:16px}.taxi-earnings-head{display:none}.taxi-earnings-row{grid-template-columns:1fr 1fr;gap:12px;padding:15px 16px}.taxi-earnings-row>strong{text-align:right}.taxi-earnings-row>span:last-child{justify-content:flex-end}.taxi-earnings-chart-scroll{padding-inline:10px}}
.taxi-rides-page .page-bg{background:#f4f6f8}.taxi-rides-history{padding-bottom:64px}.taxi-rides-history .page-heading{margin-bottom:16px}.taxi-rides-history .page-heading h1{color:#111827;letter-spacing:-.035em}.taxi-rides-history .history-filters{gap:6px;margin-bottom:22px;padding:4px;background:#e9edf2;border-radius:14px;scrollbar-width:none}.taxi-rides-history .history-filters::-webkit-scrollbar{display:none}.taxi-rides-history .history-filter{padding:9px 14px;color:#606a7b;background:transparent;border:0;border-radius:10px;font-size:12px!important}.taxi-rides-history .history-filter.active{color:#171200;background:#ffc94a;border:0;box-shadow:0 4px 12px rgba(190,137,0,.2)}
.taxi-earnings-overview{position:relative;display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:0;margin-bottom:18px;overflow:hidden;color:#fff;background:radial-gradient(circle at 10% 0,#405571 0,#273b56 42%,#142238 100%);border:1px solid rgba(255,255,255,.08);border-radius:22px;box-shadow:0 18px 38px rgba(20,34,56,.18)}.taxi-earnings-overview:after{position:absolute;right:-65px;top:-100px;width:230px;height:230px;background:#ffc94a;border-radius:50%;content:"";opacity:.08}.taxi-earnings-total{display:grid;align-content:center;min-height:190px;padding:28px 30px;border-right:1px solid rgba(255,255,255,.1)}.taxi-earnings-total>small,.taxi-earnings-days>header>div>small,.taxi-earnings-chart-panel>header>div>small{color:#ffc94a;font-size:9px;font-weight:900;letter-spacing:.13em}.taxi-earnings-total>div{display:flex;align-items:baseline;gap:6px;margin-top:9px}.taxi-earnings-total>div>span{color:#ffc94a;font-size:22px;font-weight:800}.taxi-earnings-total>div>strong{font-size:42px;font-weight:500;letter-spacing:-.045em;line-height:1}.taxi-earnings-total>div>em{color:#b7c2d1;font-size:10px;font-style:normal;font-weight:850;letter-spacing:.12em}.taxi-earnings-total>p{margin:10px 0 0;color:#aebaca;font-size:11px}.taxi-earnings-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;padding:24px}.taxi-earnings-kpis article{display:grid;justify-items:center;gap:10px;min-width:0;padding:13px;text-align:center}.taxi-earnings-kpis article+article{border-left:1px solid rgba(255,255,255,.1)}.taxi-earnings-kpis article>span{display:grid;place-items:center;width:36px;height:36px;color:#171200;background:#ffc94a;border-radius:11px}.taxi-earnings-kpis svg{width:18px;height:18px}.taxi-earnings-kpis article>div{display:grid;gap:4px;min-width:0}.taxi-earnings-kpis strong{overflow:hidden;color:#fff;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.taxi-earnings-kpis small{color:#9faec1;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.taxi-earnings-days,.taxi-earnings-chart-panel{border:1px solid #e0e5eb;border-radius:20px;box-shadow:0 10px 28px rgba(21,35,55,.06)}.taxi-earnings-days>header,.taxi-earnings-chart-panel>header{padding:21px 23px;background:#fff;border-bottom:1px solid #e9edf2}.taxi-earnings-days header h2,.taxi-earnings-chart-panel header h2{margin-top:4px;color:#141d2d;font-size:20px;letter-spacing:-.025em}.taxi-earnings-days header p,.taxi-earnings-chart-panel header p{font-size:11px}.taxi-earnings-days>header>span{padding:7px 10px;color:#6e5208;background:#fff4d1;border:1px solid #f3dd96;border-radius:999px;font-size:9px}.taxi-earnings-list{gap:10px;padding:13px;background:#f7f8fa}.taxi-earnings-row{grid-template-columns:minmax(210px,1.2fr) minmax(145px,.72fr) minmax(145px,.72fr) minmax(130px,.64fr);gap:18px;padding:15px 17px;background:#fff;border:1px solid #e7ebf0!important;border-radius:15px;box-shadow:0 4px 13px rgba(22,36,56,.035)}.taxi-earnings-date{display:flex!important;align-items:center;gap:12px}.taxi-earnings-date>span{display:grid;place-items:center;flex:0 0 47px;width:47px;height:47px;color:#1b2638;background:#ffc94a;border-radius:13px;line-height:1}.taxi-earnings-date>span b{font-size:18px}.taxi-earnings-date>span small{margin-top:-5px;color:#5d470b!important;font-size:8px!important;font-weight:800}.taxi-earnings-date>div{display:grid;gap:3px}.taxi-earnings-date time{color:#192438;font-size:13px}.taxi-earnings-date>div small{color:#7b8595;font-size:9px}.taxi-earnings-day-amount{display:grid;gap:4px;padding-left:17px;border-left:1px solid #edf0f4}.taxi-earnings-day-amount>small,.taxi-earnings-day-stat small{color:#8a93a2!important;font-size:8px!important;font-weight:850;letter-spacing:.08em}.taxi-earnings-day-amount>strong{color:#111827;font-size:19px;font-weight:850}.taxi-earnings-day-amount em{color:#8b94a2;font-size:8px;font-style:normal;letter-spacing:.08em}.taxi-earnings-day-stat{display:flex!important;align-items:center;gap:10px}.taxi-earnings-day-stat>span{display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;color:#765800;background:#fff4cf;border-radius:10px}.taxi-earnings-day-stat svg{width:16px;height:16px}.taxi-earnings-day-stat>div{display:grid;gap:3px}.taxi-earnings-day-stat strong{color:#354156;font-size:12px}.taxi-earnings-chart-panel{margin-top:20px;background:#fff}.taxi-earnings-chart-panel>header>span i{background:#ffc94a;box-shadow:0 0 0 3px #fff2c7}.taxi-earnings-chart-scroll{padding:25px 20px 18px}.taxi-earnings-chart{height:265px;padding:12px 7px 0;border-bottom-color:#d9dfe7;background:repeating-linear-gradient(to bottom,#edf0f4 0,#edf0f4 1px,transparent 1px,transparent 25%)}.taxi-earnings-chart-day{grid-template-rows:215px 27px}.taxi-earnings-bar-track i{width:64%;background:linear-gradient(180deg,#ffd864,#f2b817);border-radius:8px 8px 3px 3px;box-shadow:0 5px 12px rgba(219,159,0,.18);transition:filter .18s,transform .18s}.taxi-earnings-chart-day:hover i{filter:saturate(1.12);transform:translateY(-2px)}.taxi-earnings-bar-track b{top:-20px;padding:3px 5px;color:#313b4b;background:#fff;border:1px solid #e1e5eb;border-radius:5px;box-shadow:0 3px 8px rgba(20,32,50,.08);font-size:8px;font-style:normal}.taxi-earnings-chart-day time{padding-top:7px;color:#6e7889;font-size:9px;font-weight:750}.taxi-rides-history .history-pagination{margin:18px 0}.taxi-rides-history .history-pagination .button{border-radius:11px}.taxi-rides-history .history-pagination span{color:#536074}
@media(max-width:760px){.taxi-rides-history{padding-inline:14px}.taxi-rides-history .page-heading p{font-size:12px}.taxi-rides-history .history-filters{margin-inline:0;padding:3px}.taxi-rides-history .history-filter{padding:9px 12px}.taxi-earnings-overview{grid-template-columns:1fr;border-radius:19px}.taxi-earnings-total{min-height:0;padding:23px 22px 20px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.taxi-earnings-total>div>strong{font-size:37px}.taxi-earnings-kpis{padding:10px 7px 13px}.taxi-earnings-kpis article{gap:7px;padding:10px 5px}.taxi-earnings-kpis article>span{width:31px;height:31px;border-radius:9px}.taxi-earnings-kpis svg{width:15px;height:15px}.taxi-earnings-kpis strong{font-size:13px}.taxi-earnings-kpis small{font-size:7px}.taxi-earnings-days>header,.taxi-earnings-chart-panel>header{padding:18px}.taxi-earnings-days header h2,.taxi-earnings-chart-panel header h2{font-size:18px}.taxi-earnings-list{gap:9px;padding:9px}.taxi-earnings-row{grid-template-columns:minmax(0,1fr) auto;gap:13px;padding:14px}.taxi-earnings-date>span{flex-basis:43px;width:43px;height:43px;border-radius:12px}.taxi-earnings-date>span b{font-size:16px}.taxi-earnings-date time{font-size:12px}.taxi-earnings-day-amount{align-content:center;padding-left:12px;text-align:right}.taxi-earnings-day-amount>strong{font-size:17px}.taxi-earnings-day-stat{padding-top:11px;border-top:1px solid #edf0f4}.taxi-earnings-day-stat:last-child{justify-content:flex-end}.taxi-earnings-day-stat>span{flex-basis:29px;width:29px;height:29px}.taxi-earnings-day-stat svg{width:14px;height:14px}.taxi-earnings-chart-scroll{padding:20px 10px 14px}.taxi-earnings-chart{height:235px}.taxi-earnings-chart-day{grid-template-rows:188px 27px}}
.business-history-overview{display:grid;gap:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px}.business-history-route,.business-history-info-card,.business-history-state{padding:14px 15px;background:transparent;border:0;border-radius:0}.business-history-section-label{color:#768095;font-size:8px;font-weight:850;letter-spacing:.09em}.business-history-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:10px}.business-history-location{display:flex;align-items:flex-start;gap:9px;min-width:0}.business-history-location>i{flex:0 0 9px;width:9px;height:9px;margin-top:4px;background:#42d9c7;border:2px solid #dff8f4;border-radius:50%;box-shadow:0 0 0 2px #42d9c7}.business-history-location.delivery>i{background:#ff7069;border-color:#ffe5e3;box-shadow:0 0 0 2px #ff7069}.business-history-location>span{display:grid;gap:2px;min-width:0}.business-history-location small{color:var(--muted);font-size:8px;font-weight:800}.business-history-location b{font-size:12px;line-height:1.35}.business-history-location em{color:var(--muted);font-size:10px;font-style:normal}.business-history-info-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);gap:0;border-top:1px solid var(--line)}.business-history-info-card{display:grid;align-content:start;gap:6px}.business-history-recipient{border-left:1px solid var(--line)}.business-history-info-card>b{font-size:12px;line-height:1.4}.business-history-info-card>p{margin:1px 0 0;color:var(--muted);font-size:10px;line-height:1.45}.business-history-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.business-history-tags span{padding:4px 7px;color:#52617b;background:#f1f4f9;border-radius:7px;font-size:9px;font-weight:750}.business-history-recipient>a{display:inline-flex;align-items:center;gap:6px;width:max-content;color:var(--blue);font-size:11px;font-weight:800}.business-history-recipient>a svg{width:14px;height:14px}.business-history-state{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr) auto;align-items:center;gap:16px;background:#f3f7ff;border-top:1px solid #dbe5f5}.business-history-state.order-state-publicado,.business-history-state.order-state-cancelado,.business-history-state.order-state-sin_mensajero,.business-history-state.order-state-vencido{grid-template-columns:1fr}.business-history-state.order-state-entregado{background:#eff9f5;border-color:#cfe8dd}.business-history-state.order-state-entrega_reportada{background:#eef3ff;border-color:#ccdaf5}.business-history-state.order-state-cancelado,.business-history-state.order-state-sin_mensajero,.business-history-state.order-state-vencido{background:#f6f7f9;border-color:#e0e3e9}.business-history-state>div>small,.business-history-state-copy>small{display:block;margin-bottom:3px}.business-history-state b{font-size:12px}.business-history-state p{margin:3px 0 0;color:#59677e;font-size:10px;line-height:1.45}.business-history-courier{display:flex;align-items:center;gap:9px;min-width:0}.business-history-courier>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;overflow:hidden;color:var(--navy);background:#dce7ff;border:2px solid #fff;border-radius:11px;font-size:14px;font-weight:850;box-shadow:0 3px 9px rgba(24,42,78,.12)}.business-history-courier img{width:100%;height:100%;object-fit:cover}.business-history-courier>div{display:grid;gap:1px;min-width:0}.business-history-courier>div>small{color:var(--muted);font-size:8px;font-weight:800}.business-history-courier>div>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.business-history-courier em{color:#99691c;font-size:9px;font-style:normal}.business-history-call{display:flex;align-items:center;gap:8px;padding:8px 10px;color:var(--navy);background:#fff;border:1px solid #d8e1f0;border-radius:9px}.business-history-call>svg{flex:0 0 17px;width:17px;height:17px;color:var(--blue)}.business-history-call>span{display:grid}.business-history-call small{color:var(--muted);font-size:7px;font-weight:800}.business-history-call b{font-size:10px;white-space:nowrap}@media(max-width:760px){.business-history-route-grid,.business-history-info-grid{grid-template-columns:1fr}.business-history-route-grid{gap:12px}.business-history-recipient{border-top:1px solid var(--line);border-left:0}.business-history-state{grid-template-columns:1fr;gap:12px}.business-history-call{width:max-content}.business-history-route,.business-history-info-card,.business-history-state{padding:13px}.business-history-location b,.business-history-info-card>b,.business-history-state b{font-size:13px}.business-history-location em,.business-history-info-card>p,.business-history-state p{font-size:11px}}
@media (max-width:680px){body{padding-bottom:90px}.mobile-nav{height:84px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.install-banner{bottom:96px}}
@media (max-width:680px) and (display-mode:standalone){.mobile-nav{height:calc(84px + env(safe-area-inset-bottom))}}
.package-payment-fields{margin-top:10px}
.package-payment-fields>label,.package-payment-fields>.price-offered-field,.package-payment-fields>.payment-timing-field{min-width:0}.payment-timing-field{display:grid;align-content:start;gap:8px}.payment-timing-field small{color:var(--muted);font-size:12px}@media(min-width:921px){.form-grid.package-payment-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}
.payment-timing-field label{display:block;white-space:nowrap}
.payment-timing-label{display:inline;white-space:nowrap}
.payment-timing-field select{font-size:14px}
.package-payment-fields>.vehicle-picker-field,.package-payment-fields>.price-offered-field,.package-payment-fields>.payment-timing-field{display:grid;grid-template-rows:20px 48px auto;gap:8px;align-content:start}
.package-payment-fields>.vehicle-picker-field>span,.order-field-header label{line-height:20px}
.price-offered-field [data-order-price-estimate]{color:var(--navy);font-size:13px;font-weight:400;line-height:1.4}
.price-offered-field [data-order-price-estimate-amount]{font-weight:700}
.price-offered-field [data-order-price-estimate][hidden]{display:none}
.price-offered-field .order-field-header label{font-size:14px;font-weight:800}
.price-offered-field .money-input input{padding-left:38px;font-size:17px;font-weight:400}
.price-offered-field .money-input>span{font-size:16px;font-weight:400}
.order-field-header{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:3px;min-width:0;height:20px}
.order-field-info-button{display:grid;flex:0 0 25px;place-items:center;width:25px;height:25px;padding:0;color:var(--blue);background:#edf3ff;border:0;border-radius:50%;cursor:pointer}
.order-field-info-button svg{width:16px;height:16px}
.order-field-info-button:hover,.order-field-info-button[aria-expanded="true"]{background:#dbe8ff}
.order-field-info-button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.order-field-info-popover{position:absolute;z-index:45;top:calc(100% + 12px);right:0;width:min(300px,calc(100vw - 40px));padding:13px 15px;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px rgba(24,33,58,.16);font-size:12px;font-weight:500;line-height:1.5}
.order-field-info-popover[hidden]{display:none}
.offer-head>.offer-price-line{display:grid;align-self:start;justify-items:end;gap:3px;white-space:nowrap}.offer-price-amount{display:inline-flex;align-items:baseline;gap:3px}.offer-price-amount small{color:var(--muted);font-size:9px}.offer-price-line .offer-payment-timing{color:var(--ink);font-size:10px;font-weight:700;line-height:1.2}
.status-entrega_reportada{color:#8a641e;background:#fff4d8}
.nav-message-link{position:relative;display:flex!important;align-items:center;gap:6px}.nav-message-link .icon{width:18px;height:18px}.nav-message-link b,.mobile-message-link b{position:absolute;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;color:#fff;background:var(--coral);border:2px solid #fff;border-radius:10px;font-size:8px}.nav-message-link b{top:-8px;right:-10px}.messages-shell{padding-top:38px;padding-bottom:90px}.messages-heading{margin-bottom:23px}.conversation-section{display:grid;gap:11px;margin-top:22px}.conversation-section>h2{margin:0;font-size:16px}.conversation-list{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}.conversation-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:72px;padding:13px 16px;border-bottom:1px solid var(--line)}.conversation-row:last-child{border-bottom:0}.conversation-row[href]:hover{background:#fafbfe}.conversation-avatar{display:grid;place-items:center;width:43px;height:43px;color:var(--blue);background:#edf2ff;border-radius:13px}.conversation-avatar svg{width:21px;height:21px}.conversation-copy{display:grid;min-width:0}.conversation-copy b{font-size:12px}.conversation-copy small{margin-top:3px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-row>em{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;color:#fff;background:var(--coral);border-radius:12px;font-size:9px;font-style:normal;font-weight:800}.closed-conversations{margin-top:30px}.conversation-closed{color:#9299a8;background:#eef0f4;filter:grayscale(1)}.conversation-closed .conversation-avatar{color:#9299a8;background:#dfe2e8}.conversation-lock{font-size:9px;font-weight:700}.conversation-page{max-width:780px}.conversation-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.conversation-heading>div{display:flex;align-items:center;gap:12px}.conversation-heading>div>span:last-child{display:grid}.conversation-heading small{color:var(--blue);font-size:8px;font-weight:800;letter-spacing:.08em}.conversation-heading h1{margin:2px 0 0;font-size:18px}.conversation-heading p{margin:1px 0 0;color:var(--muted);font-size:10px}.conversation-heading>a{color:var(--blue);font-size:10px;font-weight:700}.chat-messages-page{height:min(55vh,520px);max-height:none}.message-action-card .button{margin-top:13px}
@media(max-width:680px){.mobile-message-link{position:relative}.mobile-message-link b{top:-4px;right:calc(50% - 19px)}.messages-shell{padding-top:24px}.conversation-row{grid-template-columns:auto minmax(0,1fr) auto;padding:12px}.conversation-row>.row-arrow{display:block}.conversation-lock{display:none}.conversation-heading{align-items:flex-start}.chat-messages-page{height:52vh}.conversation-page .detail-card{padding:15px}.chat-form{grid-template-columns:1fr}.chat-form .button{width:100%}}
@media(max-width:680px){.mobile-nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.mobile-nav>a,.mobile-nav>.account-menu{min-width:0}.mobile-nav>a>span,.mobile-nav>a>small,.mobile-nav>.account-menu summary>span{max-width:100%;text-align:center;overflow-wrap:anywhere}}
.desktop-nav .nav-message-link{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center;white-space:nowrap;line-height:1}.desktop-nav .nav-message-link>span{display:inline!important}.desktop-nav .nav-message-link>svg{display:block;flex:0 0 18px}
.courier-coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.courier-coverage-grid>label{min-width:0}.messages-heading{padding-bottom:20px;border-bottom:1px solid var(--line)}.messages-heading h1{margin-bottom:7px}.messages-heading p{max-width:620px}.conversation-section>h2{font-size:15px}.conversation-list{border-radius:18px}.conversation-row{min-height:82px;padding:15px 18px;transition:background .18s ease}.conversation-avatar{width:46px;height:46px;color:#fff;background:var(--navy);border-radius:14px}.conversation-copy b{font-size:13px}.conversation-copy>span{margin-top:2px;color:var(--blue);font-size:9px;font-weight:700}.conversation-copy small{margin-top:5px;font-size:10px}.conversation-lock{padding:6px 9px;background:#e1e4ea;border-radius:12px}.conversation-page .back-link{display:inline-flex;margin-bottom:14px}.conversation-page .chat-card{padding:0;overflow:hidden;border-radius:20px}.conversation-heading{margin:0;padding:20px 22px;border-bottom:1px solid var(--line)}.conversation-heading h1{font-size:20px}.conversation-heading p{font-size:11px}.conversation-heading>a{padding:9px 12px;background:#eef3ff;border-radius:10px}.conversation-security{display:flex;align-items:center;gap:8px;padding:11px 22px;color:#3b5d56;background:#effaf7;border-bottom:1px solid #d7eee8;font-size:10px;font-weight:600}.conversation-security svg{flex:0 0 16px;width:16px;height:16px;color:#247461}.chat-messages-page{height:min(54vh,520px);margin:0;padding:24px 22px;background:#f5f7fa;border:0;border-radius:0}.chat-message{margin-bottom:2px}.chat-message>span{max-width:min(72%,540px);padding:11px 14px;border-color:#e1e5ec;border-radius:6px 16px 16px;font-size:13px;line-height:1.5;box-shadow:0 2px 8px rgba(16,25,53,.04)}.chat-message.mine>span{border-radius:16px 6px 16px 16px}.chat-message b{margin-bottom:3px;font-size:10px}.chat-message small{font-size:9px}.chat-empty{align-self:center;padding:42px 16px;font-size:12px}.conversation-page .chat-form{grid-template-columns:1fr auto;gap:11px;margin:0;padding:16px 20px;background:#fff;border-top:1px solid var(--line)}.conversation-page .chat-form textarea{min-height:52px;max-height:130px;padding:14px 16px;background:#fafbfc;border-color:#dce1e9;border-radius:13px;font-size:13px;resize:none}.conversation-page .chat-form .button{min-height:52px;padding-inline:20px}.conversation-closed{filter:none}.conversation-closed .conversation-avatar{color:#878e9c;background:#dfe2e8}
@media(max-width:680px){.courier-coverage-grid{grid-template-columns:1fr}.messages-heading{padding-bottom:16px}.conversation-row{min-height:76px;padding:13px}.conversation-page .chat-card{padding:0}.conversation-heading{display:grid;padding:16px}.conversation-heading>a{justify-self:start;margin-left:58px}.conversation-security{padding:10px 16px}.chat-messages-page{height:50vh;padding:18px 14px}.chat-message>span{max-width:86%;font-size:12px}.conversation-page .chat-form{grid-template-columns:1fr;padding:12px}.conversation-page .chat-form .button{width:100%}}

/* Panel del mensajero: valoración compacta y entrega activa legible */
.stat-grid.courier-stats{grid-template-columns:repeat(3,1fr)}.courier-avatar-rating{display:grid;justify-items:center;gap:4px}.courier-rating{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-height:11px;color:var(--gold);line-height:1}.courier-rating>svg{width:8px;height:8px;fill:currentColor}.courier-rating small{color:var(--muted);font-size:8px;font-weight:800;white-space:nowrap}.active-price{display:inline-flex!important;align-items:baseline;gap:5px;white-space:nowrap}.active-price>span{font-size:23px}.active-price>small{display:inline!important;color:rgba(255,255,255,.74)!important;font-size:10px!important;line-height:1;text-align:left!important}.active-delivery-card .status-pill{line-height:1.35;white-space:normal}.active-route small{color:rgba(255,255,255,.76);font-size:10px;font-weight:700;letter-spacing:.035em}.active-route b{margin-top:3px;font-size:14px}.active-route p{margin-top:4px;color:rgba(255,255,255,.88);font-size:12px;line-height:1.45}
@media(max-width:680px){.courier-avatar-rating{gap:3px}.courier-rating{gap:2px}.courier-rating>svg{width:7px;height:7px}.courier-rating small{font-size:7px}.active-price>span{font-size:20px}.active-route small{font-size:9px}.active-route b{font-size:13px}.active-route p{font-size:11px}}

/* Conversación compacta */
.conversation-page{max-width:900px}.conversation-page .chat-card{box-shadow:0 16px 42px rgba(16,25,53,.09)}.conversation-heading{padding:18px 20px}.conversation-security{padding:9px 20px}.chat-messages-page{display:flex;flex-direction:column;align-items:stretch;gap:9px;height:min(58vh,560px);min-height:360px;padding:20px;overflow-y:auto}.chat-message{display:flex;flex:0 0 auto;margin:0}.chat-message.mine{justify-content:flex-end}.chat-bubble{width:fit-content;max-width:min(68%,560px);padding:9px 12px 8px;color:var(--ink);background:#fff;border:1px solid #dde2ea;border-radius:5px 15px 15px;box-shadow:0 2px 7px rgba(16,25,53,.04)}.chat-message.mine .chat-bubble{color:#fff;background:var(--navy);border-color:var(--navy);border-radius:15px 5px 15px 15px}.chat-bubble b{display:block;margin-bottom:3px;font-size:9px;line-height:1.2}.chat-bubble p{margin:0;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.chat-bubble small{display:block;margin-top:4px;color:var(--muted);font-size:8px;line-height:1.2;text-align:right}.chat-message.mine .chat-bubble small{color:rgba(255,255,255,.62)}.chat-empty{margin:auto;padding:24px;color:var(--muted);font-size:11px}.conversation-page .chat-form{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 13px}.conversation-page .chat-form textarea{height:46px;min-height:46px;max-height:100px;padding:12px 14px;border-radius:12px;font-size:12px;line-height:20px}.conversation-page .chat-form .button{min-width:92px;min-height:46px;padding:0 16px;font-size:11px}
@media(max-width:680px){.conversation-heading{padding:14px}.conversation-security{padding:8px 14px;font-size:9px}.chat-messages-page{height:52vh;min-height:310px;padding:14px 11px;gap:7px}.chat-bubble{max-width:82%;padding:8px 10px}.chat-bubble p{font-size:11px}.conversation-page .chat-form{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px}.conversation-page .chat-form textarea{height:43px;min-height:43px;padding:10px 12px}.conversation-page .chat-form .button{width:auto!important;min-width:70px;min-height:43px;padding:0 12px}}

/* Acceso obligatorio desde la aplicación instalada */
.app-requirements-page{min-height:100vh;padding:0;background:radial-gradient(circle at 50% 0,#e8fffb 0,#f4f6fb 46%,#edf1f8 100%)}.app-requirements-page .public-header{position:absolute}.app-requirements-shell{display:grid;place-items:center;min-height:100vh;padding:92px 20px 38px}.app-requirements-card{width:min(570px,100%);padding:34px;background:#fff;border:1px solid var(--line);border-radius:25px;box-shadow:0 24px 70px rgba(16,25,53,.13);text-align:center}.app-requirements-mark{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 18px;color:var(--navy);background:var(--aqua);border-radius:22px 22px 22px 8px;box-shadow:0 13px 28px rgba(66,217,199,.28)}.app-requirements-mark svg{width:34px;height:34px}.app-requirements-card h1{margin:10px 0 9px;font-size:30px}.app-requirements-intro{max-width:490px;margin:0 auto 25px;color:var(--muted);font-size:15px;line-height:1.6}.app-requirement-steps{display:grid;gap:10px;text-align:left}.app-requirement-steps article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px;background:#f7f9fc;border:1px solid #e7eaf1;border-radius:15px}.app-requirement-number{display:grid;place-items:center;width:32px;height:32px;color:#fff;background:var(--navy);border-radius:10px;font-weight:800}.app-requirement-steps article>div{display:grid;gap:3px}.app-requirement-steps strong{font-size:14px}.app-requirement-steps p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.app-requirement-state{padding:6px 9px;color:#8e641c;background:#fff2d5;border-radius:12px;font-size:11px;font-weight:800}.app-requirement-state.is-complete{color:#176b50;background:#def5ea}.app-requirement-state.is-blocked{color:#a43e48;background:#fde7e9}.app-requirements-help{display:grid;gap:4px;margin:16px 0;padding:14px;color:#36547f;background:#edf3ff;border-radius:14px;text-align:left}.app-requirements-help strong{font-size:14px}.app-requirements-help p{margin:0;font-size:13px;line-height:1.5}.app-requirements-logout{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.app-requirements-logout .button{min-height:46px;color:var(--red);background:#fff;border:1px solid #e7aeb4;font-weight:750}.app-requirements-logout .button:hover{color:#fff;background:var(--red);border-color:var(--red)}.app-requirements-card>[hidden]{display:none!important}@media(max-width:600px){.app-requirements-shell{align-items:center;min-height:100dvh;padding:82px 14px 24px}.app-requirements-card{padding:25px 17px;border-radius:21px}.app-requirements-card h1{font-size:26px}.app-requirements-intro{font-size:14px}.app-requirement-steps article{grid-template-columns:auto minmax(0,1fr);padding:13px}.app-requirement-state{grid-column:2;justify-self:start}.app-requirement-steps p{font-size:12px}}

/* Paneles plegables */
.app-requirements-mark{color:#030712;background:#34e0bf}.app-requirements-mark svg{width:42px;height:42px}.install-icon svg{width:26px;height:26px}
.app-requirements-card h1{margin:4px 0 12px;font-size:34px;line-height:1.15}.app-requirements-intro{max-width:500px;margin-bottom:27px;font-size:18px;line-height:1.55}.app-requirement-number{font-size:17px}.app-requirement-steps strong{font-size:17px;line-height:1.3}.app-requirement-steps p{font-size:15px;line-height:1.5}.app-requirement-state{font-size:13px}.app-requirements-help strong{font-size:16px}.app-requirements-help p{font-size:15px;line-height:1.5}.app-requirements-logout button{font-size:15px}@media(max-width:600px){.app-requirements-card h1{font-size:30px}.app-requirements-intro{font-size:17px;line-height:1.5}.app-requirement-steps strong{font-size:16px}.app-requirement-steps p{font-size:15px}.app-requirement-state{font-size:13px}.app-requirements-help strong{font-size:16px}.app-requirements-help p{font-size:15px}}
.taxi-app.app-requirements-page{background:radial-gradient(circle at 50% 0,#fff4c9 0,#f8f4e8 42%,#edf1f8 100%)}.taxi-app.app-requirements-page .public-header{background:#081426;box-shadow:0 8px 28px rgba(8,20,38,.2)}.taxi-app.app-requirements-page .app-requirements-card{border-color:#eadcae;box-shadow:0 24px 70px rgba(8,20,38,.16)}.taxi-app.app-requirements-page .app-requirements-mark{color:#171100;background:#ffc94a;box-shadow:0 13px 28px rgba(255,201,74,.3)}.taxi-app.app-requirements-page .button-accent{color:#171100;background:#ffc94a;box-shadow:0 10px 25px rgba(255,201,74,.28)}.taxi-app.app-requirements-page .button-accent:hover:not(:disabled){background:#ffd665;box-shadow:0 13px 28px rgba(255,201,74,.38)}.taxi-app.app-requirements-page .app-requirements-help{color:#765817;background:#fff4cf}.taxi-app.app-requirements-page .install-guide-disclosure{color:#765817}
.app-already-installed{max-width:500px;margin:-12px auto 22px;padding:13px 15px;color:#46516b;background:#f5f7fa;border:1px solid #dfe4ec;border-radius:13px;font-size:14px;line-height:1.5;text-align:left}.app-already-installed strong{display:block;margin-bottom:3px;color:#18213a;font-size:15px}
.install-guide-disclosure{margin:-2px auto 16px;padding:9px 10px;color:#526078;background:transparent;border:0;font-size:14px;font-weight:750;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.install-guide-disclosure:hover{color:var(--navy)}
.android-apk-download{margin:0 0 18px;text-align:left}.android-apk-download p{margin:0 0 14px;color:var(--muted);font-size:15px;line-height:1.5}.android-apk-download .button{display:flex;text-align:center}.app-requirements-apk-download{padding:16px;background:#fff8e6;border:1px solid #f1d58c;border-radius:15px}.app-requirements-apk-download p{text-align:center}
.install-platform-guides{min-width:0;margin:0 0 16px;text-align:left}.install-platform-guides[hidden],.install-platform-guide[hidden]{display:none!important}.install-platform-guide{display:grid;min-width:0;gap:14px;padding:17px;overflow:hidden;background:#f8fafc;border:1px solid #e1e6ee;border-radius:17px}.install-guide-heading{display:flex;align-items:center;gap:9px}.install-guide-heading strong{font-size:16px}.install-platform-badge{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;color:#fff;background:#232938;border-radius:9px;font-size:10px;font-weight:850;letter-spacing:.035em}.install-platform-badge.android{color:#164f41;background:#d9f4eb}.install-platform-badge.samsung{color:#fff;background:#315fc8}.install-browser-note{margin:0;color:#566176;font-size:13px;line-height:1.5}.install-visual-steps,.install-samsung-steps{display:grid;gap:9px;margin:0;padding:0;list-style:none}.install-visual-steps li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:11px 12px;background:#fff;border:1px solid #e1e6ee;border-radius:13px}.install-visual-icon{display:grid;place-items:center;width:36px;height:36px;color:#fff;background:var(--navy);border-radius:11px;font-size:14px;font-weight:850}.install-visual-icon.install-step-number{font-size:20px;line-height:1}.install-visual-icon svg{width:18px;height:18px}.install-share-icon{font-size:24px;font-weight:500;line-height:1}.install-visual-steps p{display:grid;gap:3px;margin:0}.install-visual-steps b{font-size:15px;line-height:1.35}.install-visual-steps small{color:var(--muted);font-size:12px;line-height:1.45}.install-menu-route{display:flex;min-width:0;max-width:100%;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:13px;color:#26334f;background:#fff;border:1px solid #dce3ed;border-radius:13px;font-size:12px}.install-menu-route>span{display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;color:#fff;background:var(--navy);border-radius:9px;font-size:18px;font-weight:800}.install-menu-route>i{color:#9aa5b8;font-size:18px;font-style:normal}.install-samsung-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.install-samsung-steps li{display:grid;justify-items:center;align-content:start;gap:7px;min-width:0;padding:11px 8px;background:#fff;border:1px solid #dce3ed;border-radius:12px;text-align:center}.install-samsung-steps span{display:grid;place-items:center;width:27px;height:27px;color:#fff;background:var(--navy);border-radius:9px;font-size:11px;font-weight:850}.install-samsung-steps b{font-size:11px;line-height:1.35;overflow-wrap:anywhere}.play-protect-warning{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px;color:#623c13;background:#fff5df;border:1px solid #edcf92;border-radius:14px}.play-protect-shield{position:relative;display:grid;place-items:center;width:43px;height:43px;color:#3278f6;background:#e8f0ff;border-radius:13px}.play-protect-shield svg{width:24px;height:24px}.play-protect-shield i{position:absolute;right:-4px;bottom:-4px;display:grid;place-items:center;width:18px;height:18px;color:#fff;background:#f4a900;border:2px solid #fff;border-radius:50%;font-size:10px;font-style:normal;font-weight:900}.play-protect-warning strong{display:block;margin-bottom:4px;font-size:13px}.play-protect-warning p{margin:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.chrome-recommendation{min-width:0;padding:14px;color:#214a40;background:#eaf9f4;border:1px solid #c8eadf;border-radius:14px}.chrome-recommendation>strong{font-size:13px}.chrome-recommendation p{margin:5px 0 11px;font-size:12px;line-height:1.5}.chrome-recommendation .button{min-height:42px;font-size:12px}@media(max-width:600px){.install-platform-guide{padding:14px}.install-guide-heading{align-items:flex-start;flex-direction:column;gap:6px}.install-menu-route{justify-content:flex-start}.install-samsung-steps{grid-template-columns:1fr}.install-samsung-steps li{grid-template-columns:auto minmax(0,1fr);justify-items:start;align-items:center;text-align:left}.app-already-installed{font-size:13px}.app-already-installed strong{font-size:14px}}
.collapsible-panel>.card-heading,.collapsible-panel>.form-card-heading,.collapsible-panel>.section-title-row,.collapsible-panel>.admin-panel-title,.collapsible-panel>.conversation-heading{gap:12px}.panel-collapse-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;margin-bottom:17px}.panel-collapse-heading>.eyebrow,.panel-collapse-heading>h2{grid-column:1;margin:0}.panel-collapse-heading>.panel-collapse-toggle{grid-column:2;grid-row:1/span 2}.panel-collapse-toggle{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;margin-left:auto;padding:0;color:var(--muted);background:#f3f5f8;border:1px solid #e0e4eb;border-radius:10px;cursor:pointer;transition:color .18s,background .18s,border-color .18s,transform .18s}.panel-collapse-toggle:hover{color:var(--blue);background:#edf2ff;border-color:#cfdbfb}.panel-collapse-toggle:focus-visible{outline:3px solid rgba(74,125,242,.22);outline-offset:2px}.panel-collapse-toggle svg{width:15px;height:15px;transform:rotate(90deg);transition:transform .22s ease}.is-collapsed .panel-collapse-toggle svg{transform:rotate(0)}.action-card-primary .panel-collapse-toggle{color:rgba(255,255,255,.78);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18)}.action-card-primary .panel-collapse-toggle:hover{color:#fff;background:rgba(255,255,255,.17)}.panel-collapse-body{display:grid;grid-template-rows:1fr;min-height:0;opacity:1;transition:grid-template-rows .24s ease,opacity .18s ease}.panel-collapse-inner{min-height:0;overflow:visible}.is-collapsed>.panel-collapse-body{grid-template-rows:0fr;opacity:0}.is-collapsed>.panel-collapse-body>.panel-collapse-inner{overflow:hidden}.collapsible-panel.is-collapsed>.card-heading,.collapsible-panel.is-collapsed>.form-card-heading,.collapsible-panel.is-collapsed>.section-title-row,.collapsible-panel.is-collapsed>.admin-panel-title,.collapsible-panel.is-collapsed>.conversation-heading,.collapsible-panel.is-collapsed>.panel-collapse-heading{margin-bottom:0}.content-section.is-collapsed{padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-soft)}.profile-form>.panel-collapse-body>.panel-collapse-inner{display:grid;gap:18px}.admin-decision>.panel-collapse-body>.panel-collapse-inner,.admin-password-reset>.panel-collapse-body>.panel-collapse-inner{display:grid;gap:10px}.chat-card>.panel-collapse-body>.panel-collapse-inner{display:block}.form-card-heading>.panel-collapse-toggle,.card-heading>.panel-collapse-toggle,.section-title-row>.panel-collapse-toggle,.admin-panel-title>.panel-collapse-toggle,.conversation-heading>.panel-collapse-toggle{order:99}
@media(max-width:680px){.panel-collapse-toggle{flex-basis:29px;width:29px;height:29px;border-radius:9px}.panel-collapse-toggle svg{width:13px;height:13px}.content-section.is-collapsed{padding:12px 13px}.conversation-heading>.panel-collapse-toggle{position:absolute;top:12px;right:12px}.conversation-heading{position:relative;padding-right:52px}}

/* Mensajes definidos y próximos entre sí */
.chat-messages-page{gap:4px}.chat-message{padding:0}.chat-bubble{padding:8px 11px 7px;background:#fff;border:1.5px solid #c8d0dc;box-shadow:0 1px 3px rgba(16,25,53,.04)}.chat-message.mine .chat-bubble{background:#172344;border:1.5px solid #34518f;box-shadow:none}.chat-bubble b{margin-bottom:2px}.chat-bubble small{margin-top:3px}.chat-message+.chat-message{margin-top:1px}.chat-message.mine+.chat-message.theirs,.chat-message.theirs+.chat-message.mine{margin-top:7px}
@media(max-width:680px){.chat-messages-page{gap:3px}.chat-bubble{padding:7px 9px 6px}.chat-message.mine+.chat-message.theirs,.chat-message.theirs+.chat-message.mine{margin-top:5px}}

/* Plegado discreto, únicamente en los paneles de pedidos */
.dashboard-shell>.content-section .panel-collapse-toggle{flex-basis:27px;width:27px;height:27px;color:#9aa3b3;background:transparent;border:0;border-radius:50%;opacity:.68}.dashboard-shell>.content-section .panel-collapse-toggle:hover{color:var(--navy);background:rgba(16,25,53,.055);opacity:1}.dashboard-shell>.content-section .panel-collapse-toggle:focus-visible{outline:2px solid rgba(74,125,242,.2);outline-offset:1px}.dashboard-shell>.content-section .panel-collapse-toggle>span{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(225deg) translate(-1px,-1px);transition:transform .2s ease}.dashboard-shell>.content-section.is-collapsed .panel-collapse-toggle>span{transform:rotate(45deg) translate(-1px,-1px)}
@media(max-width:680px){.dashboard-shell>.content-section .panel-collapse-toggle{flex-basis:25px;width:25px;height:25px}}

/* Identidad visual en el chat */
.conversation-avatar{overflow:hidden}.conversation-avatar img,.chat-message-avatar img{width:100%;height:100%;object-fit:cover}.chat-message{align-items:flex-end;gap:7px}.chat-message.mine{flex-direction:row-reverse}.chat-message-avatar{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;overflow:hidden;color:#66728a;background:#e7ebf2;border:1px solid #d3d9e3;border-radius:50%}.chat-message-avatar svg{width:13px;height:13px}.chat-message.mine .chat-message-avatar{color:#fff;background:#34518f;border-color:#34518f}.chat-bubble{max-width:min(68%,530px)}.chat-bubble p{margin:0}.chat-message.mine+.chat-message.mine,.chat-message.theirs+.chat-message.theirs{margin-top:0}
@media(max-width:680px){.chat-message{gap:5px}.chat-message-avatar{flex-basis:24px;width:24px;height:24px}.chat-message-avatar svg{width:11px;height:11px}.chat-bubble{max-width:calc(84% - 29px)}}

/* Límites estrictos para que las fotos nunca deformen la conversación */
.chat-message-avatar{box-sizing:border-box;flex:0 0 28px!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important;padding:0!important;overflow:hidden!important;border-radius:50%!important}.chat-message-avatar img{display:block!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important;margin:0!important;padding:0!important;object-fit:cover!important;border-radius:50%!important}.chat-message{min-height:28px;align-items:flex-end!important}.chat-bubble{align-self:flex-end;height:auto!important;min-height:0!important;max-height:none!important}.conversation-avatar img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.chat-message-avatar{flex-basis:24px!important;width:24px!important;min-width:24px!important;max-width:24px!important;height:24px!important;min-height:24px!important;max-height:24px!important}.chat-message-avatar img{width:24px!important;min-width:24px!important;max-width:24px!important;height:24px!important;min-height:24px!important;max-height:24px!important}.chat-message{min-height:24px}}

/* Lados fijos por participante y superficie verde */
.chat-messages-page{background:#edf8f3}.chat-message.business-message{justify-content:flex-start;flex-direction:row}.chat-message.courier-message{justify-content:flex-end;flex-direction:row-reverse}.chat-message.business-message .chat-bubble{color:var(--ink);background:#fff;border-color:#b9d8cd}.chat-message.courier-message .chat-bubble{color:#fff;background:#176b5b;border-color:#176b5b}.chat-message.courier-message .chat-bubble small{color:rgba(255,255,255,.7)}.chat-message.business-message .chat-message-avatar{color:#287767;background:#dff2eb;border-color:#b9d8cd}.chat-message.courier-message .chat-message-avatar{color:#fff;background:#176b5b;border-color:#176b5b}.chat-message.business-message+.chat-message.courier-message,.chat-message.courier-message+.chat-message.business-message{margin-top:7px}.conversation-security{background:#e3f5ee;border-color:#c5e7db}
@media(max-width:680px){.chat-message.business-message+.chat-message.courier-message,.chat-message.courier-message+.chat-message.business-message{margin-top:5px}}

/* Alineación inequívoca y tipografía legible */
.chat-message.business-message{width:100%!important;margin-right:auto!important;margin-left:0!important;justify-content:flex-start!important;flex-direction:row!important}.chat-message.courier-message{width:100%!important;margin-right:0!important;margin-left:auto!important;justify-content:flex-start!important;flex-direction:row-reverse!important}.chat-message.business-message .chat-bubble{margin-right:auto;margin-left:0}.chat-message.courier-message .chat-bubble{margin-right:0;margin-left:0}.chat-bubble{padding:10px 13px 9px}.chat-bubble p{font-size:15px;line-height:1.45}.chat-bubble small{margin-top:5px;font-size:11px;line-height:1.25}.conversation-page .chat-form textarea{font-size:14px}.conversation-page .chat-form .button{font-size:13px}
@media(max-width:680px){.chat-bubble{padding:9px 11px 8px}.chat-bubble p{font-size:14px}.chat-bubble small{font-size:10px}.conversation-page .chat-form textarea{font-size:14px}.conversation-page .chat-form .button{font-size:12px}}

/* Origen visual de cada respuesta */
.chat-message.business-message .chat-bubble{border-radius:4px 15px 15px 15px}.chat-message.courier-message .chat-bubble{border-radius:15px 4px 15px 15px}.chat-bubble small{font-size:9px;opacity:.82}.chat-message.business-message .chat-bubble small{text-align:left}.chat-message.courier-message .chat-bubble small{text-align:right}
@media(max-width:680px){.chat-bubble small{font-size:8px}.chat-message.business-message .chat-bubble{border-radius:4px 13px 13px 13px}.chat-message.courier-message .chat-bubble{border-radius:13px 4px 13px 13px}}

/* Posición relativa a quien está usando el chat */
.chat-message.mine{width:100%!important;margin-right:auto!important;margin-left:0!important;justify-content:flex-start!important;flex-direction:row!important}.chat-message.theirs{width:100%!important;margin-right:0!important;margin-left:auto!important;justify-content:flex-start!important;flex-direction:row-reverse!important}.chat-message.mine .chat-bubble{margin-right:auto!important;margin-left:0!important;border-radius:4px 15px 15px 15px}.chat-message.theirs .chat-bubble{margin-right:0!important;margin-left:0!important;border-radius:15px 4px 15px 15px}.chat-message.mine .chat-bubble small{text-align:left}.chat-message.theirs .chat-bubble small{text-align:right}
@media(max-width:680px){.chat-message.mine .chat-bubble{border-radius:4px 13px 13px 13px}.chat-message.theirs .chat-bubble{border-radius:13px 4px 13px 13px}}

/* Hora breve al final del mensaje, como en las conversaciones móviles */
.chat-bubble p{display:inline}.chat-bubble small{display:inline-block;margin:0 0 0 8px;vertical-align:baseline;white-space:nowrap;font-size:9px;line-height:1;opacity:.78}
@media(max-width:680px){.chat-bubble small{margin-left:7px;font-size:8px}}

/* Marca de agua de EnRuta y burbujas limpias junto a cada foto */
.chat-messages-page{position:relative;isolation:isolate}.chat-watermark{position:absolute;z-index:0;top:50%;left:50%;display:flex;align-items:center;gap:10px;color:#176b5b;opacity:.075;transform:translate(-50%,-50%);pointer-events:none;user-select:none}.chat-watermark span{display:grid;place-items:center;width:54px;height:54px;border:2px solid currentColor;border-radius:17px}.chat-watermark svg{width:30px;height:30px}.chat-watermark b{font-family:"Manrope",sans-serif;font-size:34px;letter-spacing:-.045em}.chat-message,.chat-empty{position:relative;z-index:1}.chat-message.mine .chat-bubble{border-radius:14px 14px 14px 7px!important}.chat-message.theirs .chat-bubble{border-radius:14px 14px 7px 14px!important}.chat-message .chat-bubble::after{content:none!important}
@media(max-width:680px){.chat-watermark{gap:7px}.chat-watermark span{width:42px;height:42px;border-radius:13px}.chat-watermark svg{width:23px;height:23px}.chat-watermark b{font-size:27px}.chat-message.mine .chat-bubble{border-radius:13px 13px 13px 7px!important}.chat-message.theirs .chat-bubble{border-radius:13px 13px 7px 13px!important}}

/* Confirmación visual en los pedidos ya entregados */
.package-mark{position:relative}.package-mark-in-transit{color:#7653c5;background:#f0ebff}.package-mark-in-transit svg{width:23px;height:23px}.package-mark-delivered{color:#23845f;background:#e8f8f1}.package-mark-delivered::after{content:"✓";position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:18px;height:18px;color:#fff;background:#24a26f;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(36,162,111,.25);font-size:10px;font-weight:900;line-height:1}
@media(max-width:680px){.package-mark-delivered::after{top:-4px;right:-4px;width:17px;height:17px;font-size:9px}}

/* Control de disponibilidad más visible y comprensible */
.courier-welcome>form{flex:0 0 auto}.availability{min-width:220px;min-height:64px;padding:11px 16px;gap:12px;border-radius:16px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.availability:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,25,53,.08)}.availability>svg{display:block;flex:0 0 34px;width:34px;height:34px;padding:8px;border-radius:11px}.availability.online{border-color:#bde7d7}.availability.online>svg{color:#16845d;background:#e5f7f0}.availability.offline{border-color:#e1d6c7}.availability.offline>svg{color:#9a6b35;background:#fff4e5}.availability span{gap:2px}.availability b{font-size:14px}.availability small{max-width:155px;font-size:10px;line-height:1.35}.availability>i{display:none}
.availability{min-width:330px;text-align:left}.availability span{flex:1;min-width:0}.availability span small{color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.08em}.availability span b{font-size:12px;white-space:nowrap}.availability-action{flex:0 0 auto;margin-left:auto;padding:7px 10px;color:var(--navy);background:#eef2f8;border-radius:9px;font-size:10px;font-style:normal;font-weight:800}.availability.online .availability-action{color:#b43d49;background:#fdebed}.availability.offline .availability-action{color:#fff;background:var(--navy)}
.availability .availability-status{display:block!important;visibility:visible!important;opacity:1!important;margin-top:2px;color:#176b50!important;font-size:13px!important;font-weight:800!important;line-height:1.35!important;white-space:normal!important}.availability.offline .availability-status{color:#925a24!important}
.courier-pickup-zones{align-items:flex-start!important;max-width:650px;line-height:1.45}.courier-pickup-zones svg{flex:0 0 18px;margin-top:1px}.courier-pickup-zones span{min-width:0}.courier-pickup-zones b{font-family:inherit;font-weight:700}

/* La bienvenida se alinea con la foto, sin contar la puntuacion inferior */
.courier-identity{align-items:flex-start}
.courier-identity>div:last-child{display:grid;align-content:start;padding-top:2px}
.courier-identity h1{margin-top:0}
.courier-pickup-zones .icon{flex:0 0 14px;width:14px;height:14px;margin-top:1px}
@media(max-width:680px){.courier-identity>div:last-child{padding-top:1px}.courier-pickup-zones .icon{flex-basis:13px;width:13px;height:13px}}
@media(max-width:1100px),(hover:none) and (pointer:coarse){
  .courier-welcome{display:grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;gap:18px}
  .courier-welcome>form{display:block;justify-self:stretch;width:100%;min-width:0;max-width:none;margin:0}
  .courier-welcome>form>.availability{-webkit-appearance:none;appearance:none;display:flex;box-sizing:border-box;width:100%!important;max-width:none;min-width:0;min-height:76px;margin:0;padding:13px 15px;color:var(--ink)!important;background:#fff!important;border-style:solid}
  .availability>svg{flex-basis:40px;width:40px;height:40px;padding:9px}
  .availability small{max-width:none}
  .availability span b{font-size:15px!important;white-space:normal}
  .availability-action{display:grid;place-items:center;min-width:76px;min-height:42px;padding:9px 13px;font-size:13px!important}
  .availability.offline .availability-action{color:#fff;background:#17875f}
  .availability.online .availability-action{color:#a83242;background:#fde7ea}
}

/* Confirmación interna de EnRuta */
.app-confirm-dialog{width:min(460px,calc(100% - 24px));padding:0;overflow:visible;background:transparent;border:0}.app-confirm-dialog::backdrop{background:rgba(10,17,37,.56);backdrop-filter:blur(3px)}.app-confirm-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;padding:26px;background:#fff;border:1px solid rgba(255,255,255,.55);border-radius:20px;box-shadow:0 24px 70px rgba(10,17,37,.25)}.app-confirm-icon{display:grid;place-items:center;width:48px;height:48px;color:#fff;background:#176b5b;border-radius:14px;font-size:22px;font-weight:900}.app-confirm-copy{min-width:0}.app-confirm-copy>small{color:#23845f;font-size:12px!important;font-weight:800;letter-spacing:.11em}.app-confirm-copy h2{margin:5px 0 9px;font-size:24px;letter-spacing:-.03em}.app-confirm-copy p{margin:0;color:var(--text);font-size:16px;line-height:1.55}.app-confirm-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:7px}.app-confirm-actions .button{min-height:52px;font-size:16px}
.app-confirm-order-terms{grid-column:1/-1;display:grid;gap:10px;padding:16px 18px;background:#eef8f4;border:1px solid #cee9dc;border-radius:14px}
.app-confirm-order-terms[hidden]{display:none}
.app-confirm-order-terms>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.app-confirm-order-terms>.app-confirm-order-price-row{justify-content:flex-start;gap:6px}
.app-confirm-order-price-row span{color:#567268;font-size:14px;font-weight:400}
.app-confirm-order-terms>.app-confirm-order-distance-row{justify-content:flex-start;gap:6px}
.app-confirm-order-distance-row span{color:#567268;font-size:13px;font-weight:400}
.app-confirm-order-distance-row strong{font-size:14px}
.app-confirm-order-terms>.app-confirm-order-payment-row{justify-content:flex-start;gap:6px}
.app-confirm-order-payment-row span{color:#567268;font-size:14px;font-weight:400}
.app-confirm-order-terms small{color:#567268;font-size:10px;font-weight:800;letter-spacing:.06em}
.app-confirm-order-terms strong{color:var(--navy);font-size:16px;text-align:right}
@media(max-width:520px){.app-confirm-order-terms>div{display:grid;gap:3px}.app-confirm-order-terms strong{text-align:left}}
@media(max-width:600px){.app-confirm-card{gap:13px;padding:22px 18px}.app-confirm-icon{width:44px;height:44px}.app-confirm-copy h2{font-size:22px}.app-confirm-copy p{font-size:16px}.app-confirm-actions .button{min-height:54px;font-size:16px}}

/* Texto de soporte destacado en la portada */
.security-alert b{font-size:16px}.security-alert-copy{display:block;color:var(--text);font-size:15px;line-height:1.5}
@media(max-width:680px){.security-alert b{font-size:15px}.security-alert-copy{font-size:14px}}
.app-confirm-dialog.is-danger .app-confirm-icon{background:var(--red)}.app-confirm-dialog.is-danger .app-confirm-copy>small{color:var(--red)}.app-confirm-dialog.is-danger [data-confirm-accept]{color:#fff;background:var(--red);border-color:var(--red)}
.app-confirm-dialog.is-retention .app-confirm-icon{background:#c9851e}.app-confirm-dialog.is-retention .app-confirm-copy>small{color:#a86612}.app-confirm-dialog.is-retention [data-confirm-cancel]{color:#fff;background:#176b5b;border-color:#176b5b}.app-confirm-dialog.is-retention [data-confirm-accept]{color:var(--red);background:#fff;border-color:#edc9ce}.app-confirm-dialog.is-compact{width:min(360px,calc(100% - 28px))}.app-confirm-dialog.is-compact .app-confirm-card{gap:12px;padding:18px;border-radius:16px}.app-confirm-dialog.is-compact .app-confirm-icon{width:36px;height:36px;border-radius:11px;font-size:17px}.app-confirm-dialog.is-compact .app-confirm-copy h2{margin:2px 0 5px;font-size:18px}.app-confirm-dialog.is-compact .app-confirm-copy p{font-size:13px;line-height:1.4}.app-confirm-dialog.is-compact .app-confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:2px}.app-confirm-dialog.is-compact .app-confirm-actions .button{width:auto;min-width:0;min-height:40px;padding:9px 14px;font-size:13px}
.app-confirm-dialog.is-taxi-cancel{width:min(360px,calc(100% - 24px))}.app-confirm-dialog.is-taxi-cancel .app-confirm-card{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:17px;border-radius:17px}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:3px}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions .button{width:100%;min-height:38px;padding:7px 10px;border-radius:10px;font-size:12px;font-weight:800;line-height:1.15}.app-confirm-dialog.is-taxi-cancel [data-confirm-cancel]{color:#26354c;background:#f1f4f8;border-color:#dfe5ed}.app-confirm-dialog.is-taxi-cancel [data-confirm-accept]{color:#fff;background:#d63b4c;border-color:#d63b4c;box-shadow:0 5px 13px rgba(214,59,76,.18)}.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:hover:not(:disabled),.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:focus-visible{color:#fff;background:#bd293c;border-color:#bd293c;box-shadow:0 6px 15px rgba(189,41,60,.24)}.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:active:not(:disabled){color:#fff;background:#a92032;border-color:#a92032}
.delivery-success-toast{position:fixed;z-index:1400;top:calc(env(safe-area-inset-top,0px) + 12px);left:50%;display:flex;align-items:center;gap:7px;padding:8px 12px;color:#fff;background:#176b5b;border:1px solid rgba(255,255,255,.28);border-radius:10px;box-shadow:0 8px 24px rgba(10,17,37,.22);transform:translateX(-50%);animation:toast-in .18s ease both}.delivery-success-toast>span{display:grid;place-items:center;width:20px;height:20px;color:#176b5b;background:#fff;border-radius:50%}.delivery-success-toast svg{width:12px;height:12px;stroke-width:2.7}.delivery-success-toast small{font-size:11px;font-weight:800;line-height:1;white-space:nowrap}
.app-confirm-quick{grid-column:1/-1;display:grid}.app-confirm-quick[hidden]{display:none}.app-confirm-quick .button{min-height:52px;font-size:16px;font-weight:800}.app-confirm-dialog.is-decline .app-confirm-actions{grid-template-columns:1fr;margin-top:-5px}.app-confirm-dialog.is-decline .app-confirm-actions [data-confirm-accept]{grid-row:1}.app-confirm-dialog.is-decline .app-confirm-actions [data-confirm-cancel]{grid-row:2;min-height:40px;color:var(--muted);background:transparent;border-color:transparent;box-shadow:none}
@media(max-width:520px){.app-confirm-card{padding:20px}.app-confirm-icon{width:40px;height:40px;border-radius:12px}.app-confirm-copy h2{font-size:18px}.app-confirm-actions{grid-template-columns:1fr}.app-confirm-actions [data-confirm-accept]{grid-row:1}.app-confirm-actions [data-confirm-cancel]{grid-row:2}}
@media(max-width:520px){.app-confirm-dialog.is-taxi-cancel .app-confirm-card{padding:16px}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions [data-confirm-cancel],.app-confirm-dialog.is-taxi-cancel .app-confirm-actions [data-confirm-accept]{grid-row:auto}}

/* La activación del taxista debe conservar sus acciones con letra grande o poca altura. */
.app-confirm-dialog.is-taxi-activation{max-height:calc(100dvh - 20px);overflow:auto;overscroll-behavior:contain}.app-confirm-dialog.is-taxi-activation .app-confirm-card{gap:12px;padding:20px}.app-confirm-dialog.is-taxi-activation .app-confirm-copy h2{margin-bottom:6px;font-size:21px}.app-confirm-dialog.is-taxi-activation .app-confirm-copy p{font-size:14px;line-height:1.45}.app-confirm-dialog.is-taxi-activation .app-confirm-actions{margin-top:2px}.app-confirm-dialog.is-taxi-activation .app-confirm-actions .button{min-height:46px;font-size:14px}@media(max-width:520px){.app-confirm-dialog.is-taxi-activation{width:min(410px,calc(100% - 18px));max-height:calc(100dvh - 16px)}.app-confirm-dialog.is-taxi-activation .app-confirm-card{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:16px 14px}.app-confirm-dialog.is-taxi-activation .app-confirm-icon{width:36px;height:36px;border-radius:10px;font-size:16px}.app-confirm-dialog.is-taxi-activation .app-confirm-copy>small{font-size:10px!important}.app-confirm-dialog.is-taxi-activation .app-confirm-copy h2{margin:2px 0 4px;font-size:18px}.app-confirm-dialog.is-taxi-activation .app-confirm-copy p{font-size:13px;line-height:1.35}.app-confirm-dialog.is-taxi-activation .app-confirm-actions{grid-template-columns:1fr 1fr;gap:8px}.app-confirm-dialog.is-taxi-activation .app-confirm-actions [data-confirm-cancel],.app-confirm-dialog.is-taxi-activation .app-confirm-actions [data-confirm-accept]{grid-row:auto;min-height:42px;padding:8px;font-size:12px}}

/* Acabado visual del chat: fondo con patrón y burbujas sin contorno */
.chat-messages-page{background-color:#d9ebe4!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='210' height='132' viewBox='0 0 210 132'%3E%3Cg fill='none' stroke='%23176b5b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='.07'%3E%3Ccircle cx='27' cy='35' r='3'/%3E%3Ccircle cx='49' cy='15' r='3'/%3E%3Cpath d='M30 35h7a6 6 0 0 0 0-12h-3a6 6 0 0 1 0-12h12'/%3E%3C/g%3E%3Ctext x='114' y='91' fill='%23176b5b' fill-opacity='.06' font-family='Arial,sans-serif' font-size='16' font-weight='700'%3EEnRuta%3C/text%3E%3C/svg%3E")!important;background-size:210px 132px!important}.chat-watermark{display:none!important}.chat-message .chat-bubble{border:0!important}.chat-message.business-message .chat-bubble{background:#fff!important;box-shadow:0 2px 7px rgba(22,73,61,.08)}.chat-message.courier-message .chat-bubble{background:#3b927e!important;box-shadow:0 2px 7px rgba(22,73,61,.1)}.chat-message.courier-message .chat-bubble small{color:rgba(255,255,255,.78)}.chat-message.courier-message .chat-message-avatar{background:#3b927e;border-color:#3b927e}
@media(max-width:680px){.chat-messages-page{background-size:180px 113px!important}}

/* La fotografía del mensajero se presenta siempre como avatar circular */
.avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.courier-photo-upload .photo-preview{border-radius:50%}.courier-photo-upload .photo-preview img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.image-editor.image-editor-avatar .image-editor-stage{width:min(100%,470px);aspect-ratio:1;margin-inline:auto;border-radius:50%}.image-editor.image-editor-avatar canvas{width:100%;height:100%;max-height:none;border-radius:50%}.conversation-avatar.courier-photo-avatar{border-radius:50%}.conversation-avatar.courier-photo-avatar img{border-radius:50%}.admin-doc-grid .courier-face-doc img{justify-self:center;width:210px;max-width:100%;aspect-ratio:1;height:auto;object-fit:cover;border-radius:50%}
@media(max-width:680px){.image-editor.image-editor-avatar .image-editor-stage{width:min(100%,390px)}}

/* El chat utiliza todo el ancho disponible en móvil */
@media(max-width:680px){.messages-shell.conversation-page{width:100%!important;max-width:none!important;padding-top:12px}.conversation-page>.back-link{margin-left:14px}.conversation-page .chat-card{border-right:0;border-left:0;border-radius:0}.conversation-heading h1{margin-top:0}}

/* Cabecera compacta y compositor siempre accesible en el chat móvil */
@media(max-width:680px){.messages-shell.conversation-page{padding-top:0}.conversation-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:9px!important;padding:12px 13px!important}.conversation-heading>div{flex:1 1 auto;min-width:0;gap:9px}.conversation-heading .conversation-avatar{flex:0 0 40px;width:40px;height:40px}.conversation-heading h1{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.conversation-heading p{font-size:9px}.conversation-heading>a{flex:0 0 auto;justify-self:auto;margin-left:0!important;padding:8px 9px!important;font-size:9px;white-space:nowrap}}

/* La cabecera del chat permanece visible durante toda la conversación */
@media(max-width:680px){.conversation-page .chat-card{overflow:visible}.conversation-heading{position:sticky;z-index:34;top:calc(62px + env(safe-area-inset-top));background:#fff;box-shadow:0 3px 12px rgba(16,25,53,.045)}.conversation-security{position:sticky;z-index:33;top:calc(126px + env(safe-area-inset-top));background:#e3f5ee!important}}

/* El compositor del chat queda pegado justo encima de la barra inferior */
@media(max-width:680px){
  .messages-shell.conversation-page{display:flex;flex-direction:column;min-height:calc(100vh - 62px - 64px)}
  .conversation-page .chat-card{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}
  .conversation-page .chat-messages-page{flex:1 1 auto;height:auto;min-height:0}
  .conversation-page .chat-form{flex:0 0 auto}
}

/* Mis pedidos se alinea con el resto de la navegación móvil */
@media(max-width:680px){.mobile-orders-action{top:0!important;color:var(--muted)!important}.mobile-orders-action>span{display:grid;width:22px;height:22px;color:inherit;background:transparent;border:0;border-radius:0;box-shadow:none}.mobile-orders-action>span svg{width:22px;height:22px}.mobile-orders-action>small{font-size:9px;font-weight:600}.mobile-orders-action.active{color:var(--navy)!important}}

/* El regreso al listado se conserva en escritorio y se oculta en móvil */
@media(max-width:680px){.conversation-back-link{display:none!important}}

/* Entrega actual contextual: solo destaca el siguiente paso útil */
.active-delivery-card{grid-template-columns:minmax(180px,.58fr) minmax(320px,1.35fr) minmax(190px,.64fr);gap:22px}
.active-focus{display:flex;align-items:flex-start;gap:15px;min-width:0;padding:7px 3px;background:transparent;border:0;border-radius:0}
.active-step-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;color:var(--navy);background:var(--aqua);border-radius:12px}
.active-step-icon svg{width:20px;height:20px}
.active-step-copy{min-width:0}.active-step-copy>small{display:block;margin-bottom:3px;color:var(--aqua);font-size:9px;font-weight:800;letter-spacing:.1em}.active-step-copy h3{margin:0 0 9px;color:#fff;font-size:16px;letter-spacing:-.02em}
.active-location{display:grid}.active-location>span{color:rgba(255,255,255,.58);font-size:9px;font-weight:700;text-transform:uppercase}.active-location b{margin-top:2px;color:#fff;font-size:13px}.active-location p{margin:2px 0 0;color:rgba(255,255,255,.78);font-size:11px;line-height:1.4}
.active-delivery-meta{display:flex;align-items:flex-start;gap:24px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.13)}.active-delivery-meta>div{min-width:0;padding:0;background:transparent;border-radius:0}.active-delivery-meta span{display:block;margin-bottom:3px;color:rgba(255,255,255,.56);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.active-delivery-meta b{color:#fff;font-size:11px}.active-delivery-meta p{margin:0;color:rgba(255,255,255,.84);font-size:10px;line-height:1.45;overflow-wrap:anywhere}.active-delivery-note{flex:1}
.active-delivery-simple{display:grid;gap:4px;margin-top:8px}.active-delivery-simple b{color:#fff;font-size:14px;line-height:1.4}.active-delivery-simple p{margin:0;color:rgba(255,255,255,.82);font-size:12px;line-height:1.4;overflow-wrap:anywhere}.active-delivery-simple p+p{color:rgba(255,255,255,.68)}
.active-guidance{margin:8px 0 0;color:rgba(255,255,255,.68);font-size:10px;line-height:1.45}.active-stage-review .active-step-icon{color:#176b5b;background:#dff6ed}.active-stage-review .active-focus{background:transparent;border:0}
.assigned-contact{display:grid;justify-items:start;gap:2px;min-width:0;text-align:left}.assigned-contact>b{max-width:145px;overflow:hidden;color:var(--text);font-size:10px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.assigned-phone{display:flex;align-items:center;gap:3px;color:var(--blue);font-size:9px;font-weight:700;white-space:nowrap}.assigned-phone svg{width:10px;height:10px}.business-order-card{padding-block:19px}.business-order-profile{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:16px}.business-order-photo{display:grid;place-items:center;width:92px;height:72px;overflow:hidden;color:var(--blue);background:var(--canvas);border-radius:12px}.business-order-photo img{width:100%;height:100%;object-fit:cover}.business-order-photo svg{width:26px;height:26px}.business-order-copy{display:grid;min-width:0}.business-order-label{margin-bottom:3px;color:var(--green);font-size:8px;font-weight:800;letter-spacing:.09em}.business-order-copy h2{margin:0;font-size:17px}.business-order-copy>p{margin:4px 0 0;color:var(--muted);font-size:10px}.business-order-meta{display:flex;align-items:center;gap:10px;margin-top:8px;color:var(--text);font-size:9px}.business-order-meta>span{display:inline-flex;align-items:center;gap:4px}.business-order-meta svg{width:11px;height:11px}.business-order-rating svg{color:var(--gold);fill:currentColor}.business-order-phone{display:inline-flex;align-items:center;gap:6px;padding:5px;color:var(--ink);background:transparent;font-size:12px;font-weight:800;white-space:nowrap}.business-order-phone svg{width:15px;height:15px;color:var(--green)}.business-order-phone:hover{color:#246f61}
.active-actions .button{min-height:48px;padding-inline:16px;color:var(--navy);background:#fff;box-shadow:none}.active-actions .button:hover{background:#f2f6ff}
.active-actions form{display:grid;margin-top:8px}.active-cancel-order{padding:5px;color:rgba(255,255,255,.68);background:transparent;border:0;font-size:10px;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.active-cancel-order:hover{color:#fff}.offer-commitment-note{margin:12px 0 0;padding:12px 13px;color:#654b18;background:#fff8e7;border:1px solid #f0dfb8;border-radius:10px;font-size:14px;font-weight:600;line-height:1.5}.courier-withdrawal{border-color:#efd4d6;background:#fffafb}.courier-withdrawal p{line-height:1.55}
.offer-decision-panel{position:relative;margin-top:15px;padding:13px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;animation:offer-action-pulse 2.8s ease-in-out infinite}.offer-decision-panel::after{content:"";position:absolute;top:9px;right:9px;width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 0 0 rgba(45,187,131,.28);animation:offer-action-dot 2.8s ease-out infinite}.offer-decision-panel .offer-commitment-note{margin:0}.offer-decision-panel .offer-actions{grid-template-columns:1fr;gap:5px;margin-top:11px}.offer-decision-panel .offer-actions form,.offer-decision-panel .offer-actions .button{width:100%}.offer-decision-panel .offer-actions .button-accent{font-size:16px;font-weight:850}.offer-decision-panel .offer-actions .button-text{min-height:40px;color:var(--text);box-shadow:none}@keyframes offer-action-pulse{0%,100%{border-color:var(--line);box-shadow:0 0 0 0 rgba(45,187,131,0)}50%{border-color:#8edbc0;box-shadow:0 0 0 5px rgba(45,187,131,.09)}}@keyframes offer-action-dot{0%,45%,100%{box-shadow:0 0 0 0 rgba(45,187,131,.28)}70%{box-shadow:0 0 0 7px rgba(45,187,131,0)}}@media(prefers-reduced-motion:reduce){.offer-decision-panel,.offer-decision-panel::after{animation:none}}
.offer-card .offer-head{padding-bottom:8px;border-bottom:0}.offer-card .offer-route{padding:10px 0;background:transparent;border-radius:0}.offer-card .offer-route::before{left:5px}.offer-decision-panel{margin-top:10px;padding:0;background:transparent;border:0;border-radius:0;animation:none}.offer-decision-panel::after{display:none}.offer-decision-panel .offer-commitment-note{padding:0;color:#5d6573;background:transparent;border:0;border-radius:0}.offer-decision-panel .offer-actions .button-accent{animation:offer-button-breathe 2.8s ease-in-out infinite}@keyframes offer-button-breathe{0%,100%{box-shadow:0 8px 18px rgba(66,217,199,.18)}50%{box-shadow:0 8px 22px rgba(45,187,131,.4),0 0 0 4px rgba(66,217,199,.1)}}@media(prefers-reduced-motion:reduce){.offer-decision-panel .offer-actions .button-accent{animation:none}}
.offer-card>.offer-commitment-note{margin:7px 2px 0;padding:0;color:var(--muted);background:transparent;border:0;border-radius:0;font-size:11px;font-weight:500;line-height:1.4;text-align:center}
.acceptance-network-status{margin:9px 2px 0;padding:9px 11px;color:#315b96;background:#edf3ff;border-radius:9px;font-size:11px;font-weight:600;line-height:1.4;text-align:center}.acceptance-network-status[data-state="success"]{color:#176c4f;background:#e8f8f1}.acceptance-network-status[data-state="error"]{color:#9b3434;background:#fff0f0}.acceptance-network-status[data-state="warning"]{color:#765514;background:#fff6dc}
.content-section#pedidos-disponibles>.notice-card{align-items:center;padding:16px 18px}.content-section#pedidos-disponibles>.notice-card>svg{flex:0 0 22px;width:22px;height:22px;margin-top:0}.content-section#pedidos-disponibles>.notice-card b{font-size:16px;line-height:1.35}.content-section#pedidos-disponibles>.notice-card small{margin-top:4px;font-size:14px!important;line-height:1.5}.availability-notice{display:grid;grid-template-columns:auto minmax(0,1fr)}
.empty-state.compact.available-orders-empty{padding:20px}.available-orders-empty h3{margin:0 0 5px}.available-orders-empty p{margin:0;font-size:14px}
.offer-card{position:relative;overflow:hidden;border-color:#7d89a5;box-shadow:0 12px 28px rgba(16,25,53,.14);animation:offer-card-arrive .5s cubic-bezier(.2,.8,.2,1) both,offer-card-live 2.6s ease-in-out .5s infinite}.offer-card::before{display:none}.offer-card .shop-avatar{animation:none}@keyframes offer-card-arrive{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes offer-card-live{0%,100%{border-color:#7d89a5;box-shadow:0 12px 28px rgba(16,25,53,.14),0 0 0 0 rgba(16,25,53,0)}50%{border-color:var(--navy);box-shadow:0 16px 38px rgba(16,25,53,.25),0 0 0 6px rgba(16,25,53,.11)}}@media(prefers-reduced-motion:reduce){.offer-card{animation:none}}

/* Alerta de nuevo pedido: anillos concéntricos contenidos dentro de la oferta. */
.courier-availability-controls{display:grid;justify-items:stretch;gap:6px;flex:0 0 240px}.courier-availability-controls>form{margin:0}.courier-alert-test{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:5px 9px;color:#315b75;background:transparent;border:0;border-radius:9px;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.courier-alert-test svg{width:14px;height:14px}.courier-alert-test:hover:not(:disabled){color:#176b5b;background:#e9f8f3}.courier-alert-test:disabled{opacity:.7}.courier-alert-test-status{max-width:240px;color:var(--muted);font-size:8px;line-height:1.35;text-align:center}
.courier-alert-test{--offer-alert-rgb:66,217,199;position:relative;overflow:hidden;isolation:isolate}.courier-alert-test::before,.courier-alert-test::after{content:"";position:absolute;z-index:-1;inset:3px;border:2px solid rgb(var(--offer-alert-rgb));border-radius:inherit;opacity:0;pointer-events:none}.courier-alert-test.offer-alert-pulse::before{animation:offer-test-wave 1.2s ease-out both}.courier-alert-test.offer-alert-pulse::after{animation:offer-test-wave 1.2s ease-out .28s both}
.new-order-alerting.offer-card,.new-order-alerting.courier-offer-popover{z-index:5;overflow:hidden;isolation:isolate;border:2px solid var(--aqua);box-shadow:0 18px 46px rgba(16,25,53,.24),0 0 0 4px rgba(66,217,199,.16);animation:none}.new-order-alerting.offer-card>*,.new-order-alerting.courier-offer-popover>*{position:relative;z-index:1}.new-order-alerting.offer-card::before,.new-order-alerting.offer-card::after,.new-order-alerting.courier-offer-popover::before,.new-order-alerting.courier-offer-popover::after{content:"";display:block;position:absolute;z-index:0;left:50%;bottom:-18%;width:72%;aspect-ratio:1;border:3px solid rgba(66,217,199,.76);border-radius:50%;opacity:0;transform:translateX(-50%) scale(.18);pointer-events:none}.new-order-alerting.offer-alert-wave::before{animation:offer-surface-wave 1.65s cubic-bezier(.14,.62,.24,1) both}.new-order-alerting.offer-alert-wave::after{animation:offer-surface-wave 1.65s cubic-bezier(.14,.62,.24,1) .16s both}.new-order-alerting [data-resilient-accept] .button-accent{position:relative;z-index:2;box-shadow:0 11px 28px rgba(45,187,131,.44),0 0 0 3px rgba(66,217,199,.18);animation:none}
.order-alert-haptic-switch{position:fixed!important;left:-20px!important;bottom:-20px!important;width:1px!important;height:1px!important;opacity:.001!important;pointer-events:none!important}
.order-sound-gate{position:fixed;z-index:980;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 82px);width:min(430px,calc(100% - 24px));transform:translateX(-50%)}.order-sound-gate>button{display:flex;align-items:center;gap:12px;width:100%;min-height:70px;padding:12px 15px;color:#fff;background:#101935;border:2px solid var(--aqua);border-radius:17px;box-shadow:0 18px 50px rgba(7,13,30,.36);font:inherit;text-align:left;cursor:pointer}.order-sound-gate>button>svg{flex:0 0 27px;width:27px;height:27px;color:var(--aqua)}.order-sound-gate>button>span{display:grid;gap:3px}.order-sound-gate b{font-size:15px}.order-sound-gate small{color:rgba(255,255,255,.76);font-size:11px;line-height:1.35}
.persistent-app-view-open{overflow:hidden!important}.persistent-app-view{position:fixed;z-index:2000;inset:0;display:block;width:100%;height:100%;height:100dvh;background:var(--canvas);border:0}
@keyframes offer-surface-wave{0%{opacity:.82;transform:translateX(-50%) scale(.18)}70%{opacity:.3}100%{opacity:0;transform:translateX(-50%) scale(1.45);border-width:1px}}
@keyframes offer-test-wave{0%{opacity:.75;transform:scale(.82)}100%{opacity:0;transform:scale(1.18)}}
@media(max-width:680px){.courier-availability-controls{width:100%;flex-basis:auto}.courier-alert-test-status{max-width:none}}
@media(prefers-reduced-motion:reduce){.offer-alert-pulse::before,.offer-alert-pulse::after,.offer-alert-wave::before,.offer-alert-wave::after{animation:none!important}.new-order-alerting.offer-card,.new-order-alerting.courier-offer-popover{border:3px solid var(--aqua)!important;box-shadow:inset 0 0 0 6px rgba(66,217,199,.18),0 16px 38px rgba(16,25,53,.22)!important}.new-order-alerting [data-resilient-accept] .button-accent{outline:4px solid rgba(66,217,199,.36);outline-offset:0}}
.active-top-price-only{justify-items:end}
@media(min-width:901px){.active-stage-pickup .active-focus{grid-column:1/3}.active-stage-pickup .active-actions{grid-column:3}}
@media(max-width:900px){.active-delivery-card{grid-template-columns:1fr 1.5fr}.active-actions{grid-column:1/-1}.active-actions .button{width:100%}}
@media(max-width:680px){.active-delivery-card{grid-template-columns:1fr;gap:13px;padding:17px}.active-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.active-stage-pickup .active-focus{padding-top:0}.active-focus{padding:5px 2px}.active-step-icon{flex-basis:38px;width:38px;height:38px}.active-step-copy h3{font-size:15px}.active-location b{font-size:13px}.active-delivery-meta{display:grid;grid-template-columns:1fr;gap:10px}.active-delivery-meta>div{grid-column:auto!important}.active-delivery-note{margin-top:6px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.active-actions{grid-column:auto}.active-actions .button{min-height:46px}.business-order-card{padding-block:15px}.business-order-profile{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:11px}.business-order-photo{grid-row:1/span 2;width:72px;height:60px;border-radius:10px}.business-order-copy h2{font-size:15px}.business-order-meta{flex-wrap:wrap;gap:5px 9px;margin-top:6px}.business-order-phone{grid-column:2;justify-self:start;width:auto;height:auto;margin-top:1px;padding:3px 0}.business-order-phone svg{width:14px;height:14px}}

/* Validación clara y nota privada en la evidencia de entrega */
.delivery-upload-field{border:1px solid transparent;transition:border-color .18s,background .18s,box-shadow .18s}.delivery-upload-field>span i{color:var(--red);font-style:normal}.delivery-upload-field.is-missing{background:#fff1f2;border-color:#e65c66;box-shadow:0 0 0 3px rgba(221,76,87,.14)}.delivery-upload-field.is-missing>span,.delivery-upload-field.is-missing .delivery-field-error{color:#b72f3b}.delivery-upload-field.is-missing input{border-color:#e65c66}.delivery-field-error{font-size:9px!important;font-style:normal;font-weight:700}.delivery-field-error[hidden]{display:none}.delivery-note-field{display:grid;gap:6px;margin:12px 0 15px;color:#fff}.delivery-note-field>span{font-size:11px}.delivery-note-field>span i{color:rgba(255,255,255,.58);font-style:normal;font-weight:500}.delivery-note-field textarea{min-height:82px;padding:11px 12px;color:var(--ink);background:#fff;border-radius:11px;resize:vertical}.delivery-note-field>small{color:rgba(255,255,255,.58);font-size:8px;font-weight:500}.evidence-note{margin-top:14px;padding:13px 15px;background:#f2f8f5;border:1px solid #d9ebe3;border-radius:12px}.evidence-note small{color:#297663;font-size:9px;font-weight:800;letter-spacing:.08em}.evidence-note p{margin:5px 0 0;color:var(--text);font-size:12px;line-height:1.5;white-space:pre-wrap}

/* Evidencias visuales: selección directa, vista previa y formas diferenciadas */
.delivery-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;margin:9px 0 12px}
.delivery-upload-grid .delivery-upload-field{position:relative;display:grid;justify-items:center;gap:3px;min-width:0;padding:5px 2px;text-align:center;background:transparent;border:0;border-radius:0;cursor:pointer;transition:none}
.delivery-upload-title{min-height:22px;color:#fff;font-size:9px!important;line-height:1.25}
.delivery-photo-preview{display:grid;place-items:center;width:min(68px,100%);aspect-ratio:1;padding:0;overflow:hidden;color:var(--aqua);background:transparent;border:1px solid rgba(66,217,199,.62);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .18s,background .18s}
.delivery-photo-preview-circle{border-radius:50%}.delivery-photo-preview-square{border-radius:12px}
.delivery-photo-preview>b{font-size:20px;font-weight:400;line-height:1}.delivery-photo-preview img{display:block;width:100%;height:100%}.delivery-upload-proof .delivery-photo-preview img{object-fit:cover}.delivery-upload-identity .delivery-photo-preview img{padding:3px;object-fit:contain;background:#fff}
.delivery-photo-input{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none;clip:rect(0,0,0,0)}
.delivery-upload-field:focus-within .delivery-photo-preview,.delivery-upload-field:hover .delivery-photo-preview{background:rgba(66,217,199,.07);border-color:var(--aqua)}
.delivery-photo-preview:focus-visible{outline:3px solid rgba(52,224,191,.36);outline-offset:3px}
.delivery-upload-field.has-photo .delivery-photo-preview{background:transparent;border-style:solid;border-color:#58b993}.delivery-upload-field.has-photo::after{content:"✓";position:absolute;top:24px;right:calc(50% - 41px);display:grid;place-items:center;width:17px;height:17px;color:#fff;background:#2aa475;border:2px solid var(--navy);border-radius:50%;font-size:8px;font-weight:900}
.delivery-upload-grid .delivery-upload-field>small{min-height:10px;color:rgba(255,255,255,.62);font-size:7px;line-height:1.2}.delivery-upload-field .image-edit-status{display:none}
.delivery-upload-field [data-photo-upload-action]{margin-top:4px;padding:6px 9px;color:var(--navy);background:var(--aqua);border:0;border-radius:8px;font-size:9px;font-weight:800;cursor:pointer}.delivery-upload-field[data-camera-field]{cursor:default}
.delivery-upload-grid .delivery-upload-field.is-missing{background:transparent;border-color:transparent;box-shadow:none}.delivery-upload-field.is-missing .delivery-photo-preview{background:rgba(230,92,102,.06);border-color:#e65c66}.delivery-upload-field.is-missing .delivery-upload-title,.delivery-upload-field.is-missing .delivery-field-error{color:#ff9ca3}
@media(max-width:380px){.delivery-upload-grid{gap:6px}.delivery-upload-grid .delivery-upload-field{padding-inline:1px}.delivery-photo-preview{width:min(62px,100%)}.delivery-upload-field.has-photo::after{right:calc(50% - 38px)}}

/* La identidad permanece en la cabecera; las burbujas aprovechan todo el ancho */
.chat-message{gap:0}.chat-message .chat-bubble{max-width:min(76%,590px)}
@media(max-width:680px){.chat-message .chat-bubble{max-width:88%}}

/* Navegación móvil compacta, manteniendo objetivos táctiles cómodos */
@media(max-width:680px){
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .mobile-nav{align-items:center;height:calc(62px + env(safe-area-inset-bottom));padding:4px max(14px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));box-shadow:0 -3px 14px rgba(24,33,58,.055)}
  .mobile-nav>a{align-content:center;gap:1px;min-height:44px;font-size:8px;transform:translateY(6px)}
  .mobile-nav>a>svg{width:22px;height:22px}
  .mobile-main-action{top:0}
  .mobile-main-action:not(.mobile-orders-action)>span{width:34px;height:34px;border:0;border-radius:11px;box-shadow:0 4px 10px rgba(16,25,53,.16)}
  .mobile-main-action:not(.mobile-orders-action)>span svg{width:20px;height:20px}
  .mobile-main-action small{font-size:8px}
  .mobile-orders-action>span,.mobile-orders-action>span svg{width:22px;height:22px}
}

/* Barra inferior estrictamente fija: mismo alto en Safari y en la app instalada */
@media(max-width:680px){
  body{padding-bottom:calc(65px + env(safe-area-inset-bottom,0px))!important}
  .mobile-nav{position:fixed!important;z-index:100!important;inset:auto 0 0 0!important;width:100%!important;height:calc(65px + env(safe-area-inset-bottom,0px))!important;min-height:calc(65px + env(safe-area-inset-bottom,0px))!important;max-height:calc(65px + env(safe-area-inset-bottom,0px))!important;margin:0!important;padding:4px max(14px,env(safe-area-inset-right,0px)) calc(5px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))!important;align-items:center!important;background:#fff!important;box-sizing:border-box!important;transform:none!important;-webkit-transform:none!important;transition:none!important;backface-visibility:hidden;-webkit-backface-visibility:hidden;isolation:isolate}
  .mobile-nav::after{content:none!important}
  .mobile-nav>a{min-height:44px!important;transform:none!important}
  .install-banner{bottom:calc(77px + env(safe-area-inset-bottom,0px))!important}
}

/* Jerarquía clara en el centro de mensajes */
.conversation-title-line{display:flex;align-items:baseline;gap:9px;min-width:0}.conversation-title-line>b{min-width:0;overflow:hidden;color:#111827!important;font-size:16px!important;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.conversation-copy>.conversation-title-line>span{flex:0 0 auto;margin:0;color:var(--blue);font-size:10px;font-weight:700}.conversation-copy>small{margin-top:6px!important;color:#4d586f!important;font-size:12px!important;line-height:1.35}
@media(max-width:680px){.conversation-title-line{gap:7px}.conversation-title-line>b{font-size:15px!important}.conversation-copy>.conversation-title-line>span{font-size:9px}.conversation-copy>small{font-size:12px!important}}

/* La cabecera principal permanece fija y respeta la zona segura del dispositivo */
.app-header,.public-header{position:fixed!important;z-index:110;top:0;right:0;left:0;padding-top:env(safe-area-inset-top,0px);transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform;contain:paint}
.app-header{background:rgba(255,255,255,.68);border:0;box-shadow:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);contain:none}
.taxi-passenger-app .app-header,.taxi-driver-app .app-header{background:#081426;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.taxi-passenger-app .app-header .brand{color:#fff}
.taxi-passenger-app .app-header .desktop-nav>a{color:#aebbd0}
.taxi-passenger-app .app-header .desktop-nav>a:hover,.taxi-passenger-app .app-header .desktop-nav>a.active{color:#fff}
.taxi-driver-app .app-header .brand{color:#fff}
.taxi-driver-app .app-header .desktop-nav>a{color:#aebbd0}
.taxi-driver-app .app-header .desktop-nav>a:hover,.taxi-driver-app .app-header .desktop-nav>a.active{color:#fff}
.taxi-driver-app .app-header .mobile-header-notifications,.taxi-passenger-app .app-header .mobile-header-notifications{color:#fff}
.taxi-driver-app .app-header .account-menu-desktop summary{box-shadow:0 0 0 2px rgba(255,201,74,.72)}
.taxi-passenger-app .app-header .taxi-passenger-nav{gap:8px}
.taxi-passenger-app .app-header .taxi-passenger-nav>a{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:10px}
.taxi-passenger-app .app-header .taxi-passenger-nav>a.active{background:rgba(255,255,255,.1)}
.taxi-account-page{background:linear-gradient(180deg,#fff8df 0,#f4f6fb 380px)}
.taxi-account-shell{width:min(680px,calc(100% - 40px));margin-inline:auto}
.taxi-account-identity{display:flex;align-items:center;flex-direction:column;margin-bottom:18px;padding:28px;color:#fff;text-align:center;background:radial-gradient(circle at 50% 0,rgba(255,201,74,.24),transparent 52%),linear-gradient(135deg,#0a1830,#173f6c);border:1px solid rgba(255,201,74,.5);border-radius:22px;box-shadow:0 18px 40px rgba(128,88,0,.16)}
.taxi-account-avatar-wrap{margin-bottom:15px}
.taxi-account-avatar-wrap .avatar{width:104px;height:104px;color:#171100;background:#ffc94a;border:4px solid rgba(255,255,255,.96);box-shadow:0 12px 28px rgba(128,88,0,.28);font-size:34px}
.taxi-account-avatar-wrap .profile-role{right:50%;bottom:-7px;color:#171100;background:#ffc94a;border-color:#173f6c;transform:translateX(50%);white-space:nowrap}
.taxi-account-identity h1{margin:4px 0 5px;font-size:30px;letter-spacing:-.035em}
.taxi-account-identity p{margin:0;color:#b8c7da;font-size:14px}
.taxi-account-card-heading{margin-bottom:22px;text-align:left}
.taxi-account-card-heading h2{margin:0 0 5px;font-size:22px}
.taxi-account-card-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.taxi-account-details{display:grid;margin:0}
.taxi-account-details>div{display:grid;gap:5px;padding:15px 2px;border-top:1px solid var(--line)}
.taxi-account-details dt{color:var(--muted);font-size:12px;font-weight:700}
.taxi-account-details dd{margin:0;color:var(--ink);font-size:16px;font-weight:750;overflow-wrap:anywhere}
.taxi-account-referrer{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;box-sizing:border-box;width:100%;margin:18px 0 0;padding:15px 16px;background:#fff;border:1px solid #e0e5ec;border-radius:12px;box-shadow:0 3px 10px rgba(16,25,53,.04)}.taxi-account-referrer>span{display:grid;place-items:center;width:38px;height:38px;overflow:hidden;color:#173f6c;background:#dfeafb;border-radius:50%;font-size:14px;font-weight:900}.taxi-account-referrer img{width:38px;height:38px;object-fit:cover}.taxi-account-referrer>div{display:grid;gap:2px;min-width:0}.taxi-account-referrer small{overflow:hidden;color:#68758a;font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.taxi-account-referrer strong{overflow:hidden;color:var(--navy);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.taxi-account-referrer p{margin:3px 0 0;color:#68758a;font-size:11px;line-height:1.4}.taxi-account-referrer form{margin:0}.taxi-account-referrer button{padding:6px;color:#8f4650;background:transparent;border:0;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.taxi-account-referrer button:hover,.taxi-account-referrer button:focus-visible{color:#6f2831;text-decoration:underline;outline:0}
.taxi-account-permissions{margin-top:18px;padding:20px}.taxi-account-permissions h2{font-size:18px}.taxi-account-permissions>p{margin-bottom:10px;font-size:12px}.taxi-account-permissions .system-permission-row{padding:12px 0}.taxi-account-permissions .system-permission-icon{flex-basis:36px;width:36px;height:36px;border-radius:10px}.taxi-account-permissions .system-permission-icon svg{width:18px;height:18px}.taxi-account-permissions .system-permission-copy{gap:3px}.taxi-account-permissions .system-permission-copy b{font-size:13px}.taxi-account-permissions .system-permission-state{font-size:11px}.taxi-account-permissions .system-permission-action{min-height:34px;padding-inline:11px;font-size:11px}
.taxi-account-update{margin-top:18px}
.taxi-account-support{margin-top:18px;border-color:rgba(255,201,74,.55)}
.taxi-account-support.profile-support-card .profile-change-open{color:#171100;background:#ffc94a;border-color:#ffc94a;box-shadow:0 8px 18px rgba(255,201,74,.2)}
.taxi-account-support.profile-support-card .profile-change-open:hover{color:#171100;background:#ffd66d;border-color:#ffd66d}
.taxi-account-password{margin-top:18px}.taxi-account-password .button{min-height:48px;color:var(--navy);background:#fff;border:2px solid #4b5563}.taxi-account-password .button:hover{background:#f5f6f8;border-color:#202938}.taxi-account-password svg{width:19px;height:19px}
.taxi-account-shell>.profile-logout{margin-top:12px}
.taxi-account-shell>.profile-logout .button{color:var(--red);background:#fff;border:2px solid var(--red);box-shadow:none}
.taxi-account-shell>.profile-logout .button:hover{color:#fff;background:var(--red);border-color:var(--red)}
.taxi-account-shell>.taxi-account-delete .taxi-account-delete-button{display:flex;align-items:center;justify-content:center;gap:9px;color:#8f3843;background:#f8e7e9;border:1px solid #e7b9bf;box-shadow:none}.taxi-account-shell>.taxi-account-delete .taxi-account-delete-button:hover,.taxi-account-shell>.taxi-account-delete .taxi-account-delete-button:focus-visible{color:#762832;background:#f1d5d9;border-color:#d99da5;outline:2px solid rgba(143,56,67,.14);outline-offset:2px}.taxi-account-delete-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.taxi-passenger-app .mobile-nav .mobile-main-action>span{color:#171100!important;background:#ffc94a!important;box-shadow:0 6px 16px rgba(255,201,74,.3)!important}
.taxi-passenger-app .mobile-nav{background:#fff!important;border-top:1px solid #e2e6ec!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.taxi-passenger-dashboard{position:relative;height:calc(100dvh - 72px);min-height:520px;overflow:hidden;background:#dce7e8}
.taxi-passenger-map{position:absolute;z-index:0;inset:0;overflow:hidden;background:#dce7e8}
.taxi-passenger-dashboard:not(.taxi-passenger-is-searching):not(.taxi-passenger-has-driver):not(.is-confirming-destination):not(.is-confirming-pickup):not(.is-choosing-driver) .taxi-passenger-map{filter:brightness(.86) saturate(.9) blur(.55px);transform:scale(1.004);pointer-events:none;user-select:none}
.taxi-passenger-dashboard:not(.taxi-passenger-is-searching):not(.taxi-passenger-has-driver):not(.is-confirming-destination):not(.is-confirming-pickup):not(.is-choosing-driver) .taxi-passenger-map .leaflet-control-zoom{display:none}
.taxi-passenger-map iframe{position:absolute;z-index:0;inset:0;display:block;width:100%;height:calc(100% + 34px);border:0;transform:none;pointer-events:none}
.taxi-passenger-raster-map,.taxi-pickup-raster-map,.taxi-destination-raster-map{position:absolute;z-index:1;inset:0;visibility:hidden;background:#f4f1e9}.taxi-passenger-map.has-raster-map .taxi-passenger-raster-map,.taxi-pickup-map.has-raster-map .taxi-pickup-raster-map,.taxi-destination-map-picker.has-raster-map .taxi-destination-raster-map{visibility:visible}.taxi-map-credit{position:absolute;z-index:4;top:7px;right:7px;padding:3px 6px;color:#52606d;background:rgba(255,255,255,.84);border-radius:5px;font-size:8px}.taxi-map-credit a{color:inherit;text-decoration:none}.taxi-passenger-raster-map .maplibregl-ctrl-bottom-right,.taxi-pickup-raster-map .maplibregl-ctrl-bottom-right,.taxi-destination-raster-map .maplibregl-ctrl-bottom-right{right:10px;bottom:10px}.taxi-passenger-raster-map .maplibregl-ctrl-group,.taxi-pickup-raster-map .maplibregl-ctrl-group,.taxi-destination-raster-map .maplibregl-ctrl-group{overflow:hidden;border:1px solid rgba(8,20,38,.1);border-radius:12px;box-shadow:0 5px 18px rgba(8,20,38,.14)}.taxi-passenger-raster-map .maplibregl-ctrl-group button,.taxi-pickup-raster-map .maplibregl-ctrl-group button,.taxi-destination-raster-map .maplibregl-ctrl-group button{width:42px;height:42px}.taxi-pickup-raster-map .maplibregl-ctrl-bottom-right{right:10px;bottom:70px}
.taxi-passenger-map-pin{position:absolute;z-index:2;top:50%;left:50%;display:none;width:48px;height:58px;background:transparent;transform:translate(-50%,-100%) scale(var(--taxi-pickup-pin-scale,1));transform-origin:50% 100%;transition:transform .22s ease;pointer-events:none}.taxi-passenger-map-pin::before{content:"";position:absolute;top:7px;left:5px;width:34px;height:34px;background:#176bff;border:4px solid #fff;border-radius:50% 50% 50% 0;box-shadow:-8px 10px 22px rgba(15,72,163,.3);transform:rotate(-45deg)}.taxi-passenger-map-pin::after{content:"";position:absolute;top:21px;left:19px;width:12px;height:12px;background:#fff;border-radius:50%}
.taxi-passenger-map-pin svg{display:none}
.taxi-passenger-map-pin .taxi-pickup-map-label{position:absolute!important;z-index:5;top:-52px;left:50%;display:none!important;box-sizing:border-box;width:max-content!important;max-width:calc(100vw - 36px)!important;height:auto!important;padding:7px 13px 8px!important;overflow:hidden!important;color:#fff!important;background:#176bff!important;border:1px solid rgba(255,255,255,.96);border-radius:14px;box-shadow:0 4px 12px rgba(15,72,163,.3);font-family:inherit!important;line-height:1.15!important;text-align:center;text-transform:none;transform:translateX(-50%);pointer-events:none}.taxi-passenger-map-pin .taxi-pickup-map-label strong,.taxi-passenger-map-pin .taxi-pickup-map-label small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-map-pin .taxi-pickup-map-label strong{max-width:290px;font-size:12px;font-weight:850}.taxi-passenger-map-pin .taxi-pickup-map-label small{margin-top:3px;color:rgba(255,255,255,.82);font-size:9px;font-weight:700;letter-spacing:.015em}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin .taxi-pickup-map-label{display:block!important}
.taxi-passenger-map.has-taxi-route .taxi-passenger-map-pin{display:none}
.taxi-passenger-raster-map .leaflet-taxi-route-pane{z-index:650!important;pointer-events:none}
.taxi-passenger-dashboard .taxi-shell{position:relative;z-index:1;align-content:end;height:100%;padding-block:20px;overflow-y:auto;pointer-events:none}.taxi-passenger-dashboard .taxi-shell>*{pointer-events:auto}
.taxi-passenger-dashboard:not(.taxi-passenger-is-searching):not(.taxi-passenger-has-driver):not(.is-confirming-destination):not(.is-confirming-pickup):not(.is-choosing-driver) .taxi-shell{overflow:visible}
.taxi-passenger-dashboard .taxi-section{background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.taxi-passenger-greeting{position:absolute;z-index:2;top:18px;right:auto;left:50%;display:flex;align-items:center;box-sizing:border-box;width:max-content;max-width:calc(100% - 28px);margin:0;padding:8px 14px;overflow:hidden;background:linear-gradient(135deg,rgba(0,0,0,.82),rgba(3,7,18,.68));border:1px solid rgba(255,255,255,.22);border-radius:999px;box-shadow:0 9px 26px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.09);transform:translateX(-50%);-webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%)}
.taxi-passenger-greeting{opacity:1;visibility:visible;transition:opacity .22s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear 0s}
.taxi-passenger-greeting.is-auto-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-10px) scale(.98);transition-delay:0s,0s,.22s}
.taxi-passenger-greeting>div{display:grid;gap:1px}.taxi-passenger-greeting small{color:#cbd5e1;font-family:inherit;font-size:8px;font-weight:400;letter-spacing:0}.taxi-passenger-greeting h1{margin:0;color:#fff;font-size:14px;font-weight:700;letter-spacing:-.02em}
.taxi-passenger-map .leaflet-top.leaflet-left{top:100px;right:8px;left:auto}.taxi-passenger-map .leaflet-left .leaflet-control{margin-right:0;margin-left:0}.taxi-passenger-map .leaflet-control-zoom{overflow:hidden;border:1px solid rgba(8,20,38,.12);border-radius:11px;box-shadow:0 5px 16px rgba(8,20,38,.16)}.taxi-passenger-map .leaflet-control-zoom a{box-sizing:border-box;width:50px;height:50px;line-height:48px;font-size:25px;font-weight:500;touch-action:manipulation}.taxi-passenger-map>.taxi-map-credit{top:100px;right:auto;left:8px}
.taxi-passenger-has-driver .taxi-passenger-map .leaflet-control-zoom{display:none}.taxi-passenger-assigned-map-controls{position:absolute;z-index:12;top:14px;right:10px;display:grid;justify-items:center;gap:6px;pointer-events:auto}.taxi-passenger-assigned-map-zoom{display:grid;overflow:hidden;background:#fff;border:1px solid rgba(8,20,38,.14);border-radius:9px;box-shadow:0 4px 12px rgba(8,20,38,.15)}.taxi-passenger-assigned-map-zoom button,.taxi-passenger-assigned-recenter{display:grid;place-items:center;box-sizing:border-box;width:38px;height:38px;padding:0;color:#111;background:#fff;border:0;font:inherit;cursor:pointer;touch-action:manipulation}.taxi-passenger-assigned-map-zoom button{font-size:21px;font-weight:600;line-height:1}.taxi-passenger-assigned-map-zoom button+button{border-top:1px solid #d6d9de}.taxi-passenger-assigned-recenter{border:1px solid rgba(8,20,38,.14);border-radius:9px;box-shadow:0 4px 12px rgba(8,20,38,.15)}.taxi-passenger-assigned-recenter svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.taxi-passenger-assigned-map-zoom button:focus-visible,.taxi-passenger-assigned-recenter:focus-visible{position:relative;z-index:1;outline:3px solid rgba(23,107,255,.35);outline-offset:-3px}
.taxi-passenger-route-sheet{order:10;justify-self:center;width:min(480px,100%);padding:16px 18px 18px;background:#fff;border:1px solid #b8c0cb;border-radius:24px;box-shadow:none}
.taxi-passenger-sheet-handle{display:block;width:42px;height:4px;margin:0 auto 10px;background:#d6dde7;border-radius:999px}
.taxi-passenger-route-sheet>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-bottom:16px}
.taxi-passenger-route-icon{display:grid;place-items:center;width:34px;height:34px;color:#171100;background:#ffc94a;border-radius:11px}
.taxi-passenger-route-icon svg{width:21px;height:21px}
.taxi-passenger-greeting .taxi-passenger-route-icon{overflow:hidden;color:#171100;background:#ffc94a;border-radius:50%;font-size:15px;font-weight:850}.taxi-passenger-greeting .taxi-passenger-route-icon img{width:100%;height:100%;object-fit:cover}
.taxi-passenger-route-sheet>header>div{display:grid;gap:2px}
.taxi-passenger-route-sheet>header small{color:#8793a4;font-size:9px;font-weight:850;letter-spacing:.11em}
.taxi-passenger-route-sheet>header h1{margin:0;color:#081426;font-size:22px;letter-spacing:-.035em}
.taxi-passenger-route-avatar{display:grid;place-items:center;width:38px;height:38px;color:#fff;background:#17375d;border-radius:12px;font-size:13px;font-weight:850}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){position:absolute;right:0;bottom:20px;left:0;box-sizing:border-box;width:calc(100% - 20px);max-height:calc(100% - 82px);margin:0 auto;padding:16px 10px 18px;overflow-y:auto;background:#fff;border:0;border-radius:23px;box-shadow:0 24px 70px rgba(18,30,49,.26);transform:none}
.taxi-passenger-destination-title{display:block;margin:1px 12px 7px;color:#566174;font-size:17px;font-weight:850;line-height:1.25;letter-spacing:-.025em}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-destination-title{display:none}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) [data-taxi-destination-field]{grid-template-columns:minmax(0,1fr);min-height:41px;padding:0 0 0 12px;overflow:hidden;background:#fff;border:1px solid #ffc94a;border-radius:999px;box-shadow:none;animation:none}
.taxi-passenger-destination-search{display:block;min-width:0;cursor:text}
.taxi-passenger-destination-search>span{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:3px;min-width:0}
.taxi-passenger-destination-search input,.taxi-passenger-destination-search input:hover,.taxi-passenger-destination-search input:active,.taxi-passenger-destination-search input:focus,.taxi-passenger-destination-search input:focus-visible{box-sizing:border-box!important;-webkit-appearance:none!important;appearance:none!important;width:100%!important;min-width:0!important;min-height:0!important;height:24px!important;margin:0!important;padding:0!important;color:#030712!important;background:transparent!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;font:inherit;font-size:12px;font-weight:600;transition:none!important;-webkit-tap-highlight-color:transparent;caret-color:#030712}
.taxi-passenger-destination-search input::placeholder{color:#7b8491;font-weight:400;opacity:1}
.taxi-passenger-destination-search input::-webkit-search-cancel-button{display:none}
.taxi-passenger-destination-search input:-webkit-autofill,.taxi-passenger-destination-search input:-webkit-autofill:hover,.taxi-passenger-destination-search input:-webkit-autofill:focus{-webkit-text-fill-color:#030712!important;-webkit-box-shadow:0 0 0 1000px #fff inset!important;border:0!important;outline:0!important}
.taxi-passenger-destination-search button,.taxi-passenger-destination-search button:hover,.taxi-passenger-destination-search button:focus{display:grid;place-items:center;width:28px;height:28px;padding:0;color:#171100!important;background:#ffc94a!important;border:0!important;border-radius:50%;box-shadow:none!important;cursor:pointer}
.taxi-passenger-destination-search button:active{transform:scale(.94)}.taxi-passenger-destination-search button:focus-visible{outline:2px solid rgba(255,201,74,.28);outline-offset:2px}.taxi-passenger-destination-search button:disabled{cursor:wait;opacity:.62}
.taxi-passenger-destination-search button svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search>span{grid-template-columns:minmax(0,1fr) 44px;gap:0}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:hover,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:focus{width:44px;height:39px;color:#171100!important;background:#ffc94a!important;border-radius:0 999px 999px 0;box-shadow:none!important}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:hover{background:#f2b927!important}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button svg{width:16px;height:16px;stroke-width:2.2}
.taxi-passenger-address-error{position:absolute;z-index:90;right:0;bottom:calc(100% + 12px);left:0;box-sizing:border-box;margin:0;padding:17px 19px;color:#5f6670;background:#fff;border:1px solid #d7dce3;border-radius:10px;box-shadow:0 12px 30px rgba(22,31,45,.18),0 2px 7px rgba(22,31,45,.08);font-size:13px;font-weight:500;line-height:1.55;white-space:pre-line;text-align:left;text-wrap:pretty}.taxi-passenger-address-error::first-line{color:#343a43;font-weight:800}.taxi-passenger-address-error::after{position:absolute;bottom:-7px;left:50%;width:12px;height:12px;background:#fff;border-right:1px solid #d7dce3;border-bottom:1px solid #d7dce3;content:"";transform:translateX(-50%) rotate(45deg)}.taxi-passenger-address-error[hidden],.taxi-passenger-route-field.is-editing>.taxi-passenger-address-error{display:none}.taxi-passenger-route-sheet.has-address-error{overflow:visible!important}
.taxi-passenger-destination-help{margin:6px 10px 0;overflow:hidden;color:#5f6b7c;font-size:11px;font-weight:500;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-destination-help b{color:#354155;font-weight:800}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-destination-help,.taxi-passenger-route-sheet:has([data-taxi-destination-field].is-editing) .taxi-passenger-destination-help{display:none}
.taxi-passenger-recent-destinations{position:relative;z-index:12;box-sizing:border-box;width:100%;margin:8px 0 0;padding:3px;background:transparent;border:1px solid transparent;border-radius:14px;box-shadow:none;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-recent-destinations{display:none}
.taxi-passenger-dashboard:has(.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]) .taxi-passenger-greeting{display:none}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] [data-taxi-destination-field]{display:none}.taxi-passenger-app:has(.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]) .mobile-nav-taxi-passenger{display:none!important}.taxi-passenger-vehicle-back{position:absolute;z-index:26;top:14px;left:10px;display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 12px 8px 8px;color:#111827;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.72);border-radius:13px;box-shadow:0 4px 14px rgba(17,24,39,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font:inherit;font-size:12px;font-weight:850;cursor:pointer}.taxi-passenger-vehicle-back svg{width:18px;height:18px;transform:rotate(180deg)}.taxi-passenger-vehicle-back:hover{background:rgba(255,255,255,.98)}.taxi-passenger-vehicle-back:focus-visible{outline:3px solid rgba(17,24,39,.28);outline-offset:2px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]{max-height:calc(100dvh - 86px);overflow-y:auto}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-step,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-select{margin-top:0}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-toggle{display:none!important}.taxi-passenger-vehicle-heading{display:grid;gap:2px;padding:5px 9px 8px}.taxi-passenger-vehicle-heading small{color:#7b8594;font-size:8px;font-weight:900;letter-spacing:.11em}.taxi-passenger-vehicle-heading h2{margin:0;color:#111827;font-size:18px;letter-spacing:-.025em}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox{position:static;inset:auto;display:grid;max-height:none;overflow:visible;padding:4px;background:transparent;border:0;border-radius:0;box-shadow:none}
.taxi-passenger-destination-pill{position:relative;z-index:26;display:flex;align-items:center;justify-self:center;box-sizing:border-box;width:max-content;max-width:min(440px,calc(100% - 28px));min-height:42px;margin:0 0 10px;padding:8px 13px;color:#111827;background:rgba(255,255,255,.96);border:1px solid rgba(207,213,220,.95);border-radius:999px;box-shadow:0 4px 14px rgba(17,24,39,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none}.taxi-passenger-destination-pill[hidden]{display:none}.taxi-passenger-pill-destination,.taxi-passenger-pill-vehicle{display:flex;align-items:center;gap:9px;min-width:0}.taxi-passenger-pill-destination>i{flex:0 0 11px;box-sizing:border-box;width:11px;height:11px;background:#ffc94a;border:2px solid #b67b00;border-radius:50%;box-shadow:0 2px 6px rgba(182,123,0,.24)}.taxi-passenger-destination-pill span{display:grid;min-width:0}.taxi-passenger-destination-pill small{display:block;color:#8b94a1;font-size:7.5px;font-weight:600;line-height:1.2;letter-spacing:.08em}.taxi-passenger-destination-pill:not(.is-trip-summary) .taxi-passenger-pill-destination>span{justify-items:center;text-align:center}.taxi-passenger-destination-pill strong{overflow:hidden;color:#111827;font-size:11.5px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-pill-vehicle[hidden]{display:none}.taxi-passenger-destination-pill.is-trip-summary{display:grid;gap:0;width:min(390px,calc(100% - 24px));max-width:none;min-height:0;margin:0;padding:5px 14px;background:rgba(255,255,255,.97);border-radius:18px;box-shadow:0 8px 24px rgba(17,24,39,.16)}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination,.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle{min-height:43px}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination{padding-bottom:4px;border-bottom:1px solid #e5e8ed}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle{padding-top:4px}.taxi-passenger-destination-pill.is-trip-summary small{display:block}.taxi-passenger-destination-pill.is-trip-summary strong{font-size:12px;font-weight:750}.taxi-passenger-pill-vehicle-visual{display:grid!important;flex:0 0 48px!important;place-items:center;width:48px;height:32px;overflow:visible!important}.taxi-passenger-pill-vehicle-visual img{display:block;width:48px;height:32px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(17,24,39,.13))}.taxi-passenger-pill-vehicle-visual img[hidden],.taxi-passenger-pill-vehicle-visual i[hidden]{display:none}.taxi-passenger-pill-vehicle-visual i{display:grid;place-items:center;width:32px;height:25px;color:#111827;background:#ffc94a;border-radius:9px;font-size:12px;font-style:normal;font-weight:900;letter-spacing:1px}
.taxi-passenger-vehicle-back{border-color:#c8ced6}.taxi-passenger-vehicle-back:hover{border-color:#aeb7c2}
.taxi-passenger-vehicle-back{justify-content:center;width:42px;min-height:42px;padding:0;border-radius:50%}.taxi-passenger-vehicle-back span{display:none}.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-dashboard:not(.is-confirming-destination) .taxi-passenger-destination-pill{position:absolute;z-index:25;top:10px;left:50%;width:max-content;max-width:calc(100% - 124px);margin:0;overflow:hidden;transform:translateX(-50%)}.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-destination-pill:not(.is-trip-summary) .taxi-passenger-pill-destination{flex:1 1 auto;width:100%;max-width:100%;overflow:hidden}.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-destination-pill:not(.is-trip-summary) .taxi-passenger-pill-destination>span{width:100%;max-width:100%;overflow:hidden}.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-destination-pill:not(.is-trip-summary) .taxi-passenger-pill-destination strong{display:block;width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination>i{margin-inline:18.5px}
.taxi-passenger-destination-pill.is-trip-summary{display:flex;gap:6px;width:max-content;max-width:calc(100% - 24px);min-height:40px;padding:5px 9px;color:#111827;background:#fff;border-color:#d5dbe3;border-radius:999px;box-shadow:0 6px 18px rgba(17,24,39,.16)}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination,.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle{min-height:26px;padding:0;border:0}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination{flex:0 1 auto;max-width:190px;overflow:hidden}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-destination>i{margin:0}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle{flex:0 0 auto;gap:4px;max-width:105px;padding-left:7px;border-left:1px solid #d5dbe3;overflow:hidden}.taxi-passenger-destination-pill.is-trip-summary small{display:none}.taxi-passenger-destination-pill.is-trip-summary strong{color:#111827;font-size:10.5px;font-weight:700}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle-visual{flex-basis:31px!important;width:31px;height:23px}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle-visual img{width:31px;height:23px}.taxi-passenger-destination-pill.is-trip-summary .taxi-passenger-pill-vehicle-visual i{width:25px;height:20px;font-size:8px}
.taxi-passenger-recent-destinations>small{display:none;margin:0 7px 7px;color:#7c8694;font-size:9px!important;font-weight:900;line-height:1.2!important;letter-spacing:.1em}.taxi-passenger-recent-destinations>div{display:grid;gap:4px;max-height:280px;overflow-y:auto}
.taxi-passenger-recent-destinations button{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;box-sizing:border-box;width:100%;min-height:48px;padding:6px 8px;color:#686e77;background:transparent;border:0;border-radius:12px;font:inherit;text-align:left;cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.taxi-passenger-recent-destinations button[hidden]{display:none!important}.taxi-passenger-recent-fixed{padding:3px;background:transparent;border:0;border-radius:0;box-shadow:none}.taxi-passenger-recent-fixed>div{gap:8px;max-height:none;padding:3px;overflow:visible}.taxi-passenger-recent-fixed button{background:#fff;border:1px solid #d3dae3;box-shadow:none;transition:background .16s ease,border-color .16s ease}.taxi-passenger-recent-destinations.taxi-passenger-recent-fixed button:hover,.taxi-passenger-recent-destinations.taxi-passenger-recent-fixed button:focus-visible{background:#f1f3f6;border-color:#d3dae3;box-shadow:none;transform:none}.taxi-passenger-recent-fixed button>svg:first-child{background:#eef1f5}.taxi-passenger-route-sheet.is-recents-expanded:not(:has([data-taxi-destination-field].is-editing)){overflow:visible}.taxi-passenger-recent-destinations.is-expanded{position:absolute;z-index:70;top:var(--taxi-recents-top,92px);right:10px;left:10px;width:auto;margin:0;padding:11px 9px 9px;background:#fff;border:0;border-radius:15px;box-shadow:0 18px 42px rgba(8,20,38,.22)}.taxi-passenger-recent-destinations.is-expanded>small{display:block}.taxi-passenger-recent-destinations.is-expanded>div{max-height:min(276px,calc(100dvh - 220px));overflow-y:auto}
.taxi-passenger-recent-destinations button:hover,.taxi-passenger-recent-destinations button:focus-visible{color:#28313e;background:#fff;outline:0;box-shadow:0 7px 18px rgba(17,24,39,.11);transform:translateY(-1px)}
.taxi-passenger-recent-destinations.is-expanded{padding:12px 10px 10px;background:rgba(255,255,255,.98);border:1px solid rgba(196,204,215,.82);border-radius:18px;box-shadow:0 20px 48px rgba(8,20,38,.24),0 2px 8px rgba(8,20,38,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.taxi-passenger-recent-destinations.is-expanded>small{display:block;margin:0 38px 7px 8px;color:#667386;font-size:9px!important;font-weight:900;line-height:1.2!important;letter-spacing:.15em}.taxi-passenger-recent-destinations.is-expanded>.taxi-passenger-recent-close{position:absolute;z-index:2;top:6px;right:7px;display:grid;grid-template-columns:1fr;place-items:center;width:28px;height:28px;min-height:0;padding:0;color:#687486;background:transparent;border:0;border-radius:50%;box-shadow:none;font:inherit;cursor:pointer;transform:none}.taxi-passenger-recent-destinations.is-expanded>.taxi-passenger-recent-close span{font-size:19px;font-weight:400;line-height:1;transform:translateY(-1px)}.taxi-passenger-recent-destinations.is-expanded>.taxi-passenger-recent-close:hover,.taxi-passenger-recent-destinations.is-expanded>.taxi-passenger-recent-close:focus-visible{color:#111827;background:#edf1f5;outline:0;box-shadow:none;transform:none}.taxi-passenger-recent-destinations.is-expanded>div{gap:2px;padding:0 1px}.taxi-passenger-recent-destinations.is-expanded button:not(.taxi-passenger-recent-close){grid-template-columns:38px minmax(0,1fr) 18px;gap:11px;min-height:56px;padding:7px 9px;color:#657184;background:transparent;border-radius:13px;box-shadow:none;transition:background .16s ease}.taxi-passenger-recent-destinations.is-expanded button:not(.taxi-passenger-recent-close):hover,.taxi-passenger-recent-destinations.is-expanded button:not(.taxi-passenger-recent-close):focus-visible{background:#f1f3f6;box-shadow:none;transform:none}.taxi-passenger-recent-destinations.is-expanded button>svg:first-child{box-sizing:border-box;width:38px;height:38px;padding:9px;color:#718096;background:#edf1f5;border-radius:12px}.taxi-passenger-recent-destinations.is-expanded b{color:#111827!important;-webkit-text-fill-color:#111827;font-size:14px;font-weight:650!important;line-height:1.25}.taxi-passenger-recent-destinations.is-expanded button small{color:#7d8796;font-size:11px;line-height:1.3}.taxi-passenger-recent-destinations.is-expanded .taxi-passenger-recent-arrow{color:#7c8795}
.taxi-passenger-recent-destinations button>svg{width:18px;height:18px;justify-self:center;color:#778291;fill:none;stroke:currentColor;stroke-width:2}.taxi-passenger-recent-destinations button>svg:first-child{box-sizing:content-box;padding:7px;background:#eef1f5;border-radius:10px}.taxi-passenger-recent-destinations button>.taxi-passenger-recent-arrow{box-sizing:border-box;width:15px;height:15px;padding:0;color:#8f969f;background:transparent;border-radius:0;stroke-width:1.8}
.taxi-passenger-recent-destinations button>span{display:grid;gap:1px;min-width:0}.taxi-passenger-recent-destinations b{overflow:hidden;color:#080b11!important;-webkit-text-fill-color:#080b11;opacity:1;font-size:12px;font-weight:400!important;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-recent-destinations button small{overflow:hidden;color:#969ca5;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.taxi-passenger-recent-item{position:relative;min-width:0;border-radius:12px;transition:background .16s ease,border-color .16s ease}.taxi-passenger-recent-fixed .taxi-passenger-recent-item{background:#fff;border:1px solid #d3dae3}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-select{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:48px;padding:6px 72px 6px 8px;color:#686e77;background:transparent;border:0;box-shadow:none;transform:none}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-select:hover,.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-select:focus-visible{color:#28313e;background:transparent;outline:0;box-shadow:none;transform:none}.taxi-passenger-recent-item:hover,.taxi-passenger-recent-item:focus-within{background:#f1f3f6}.taxi-passenger-recent-item>.taxi-passenger-recent-arrow{position:absolute;top:50%;right:14px;width:15px;height:15px;color:#8f969f;fill:none;stroke:currentColor;stroke-width:1.8;pointer-events:none;transform:translateY(-50%);transition:opacity .14s ease,transform .14s ease}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete{position:absolute;top:50%;right:8px;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:26px;padding:4px 8px;color:#7c4141;background:#fff;border:1px solid #e5caca;border-radius:8px;box-shadow:none;font-size:10px;font-weight:700;line-height:1;opacity:0;pointer-events:none;transform:translateY(-45%);transition:opacity .14s ease,transform .14s ease,background .14s ease}.taxi-passenger-recent-item:hover>.taxi-passenger-recent-arrow,.taxi-passenger-recent-item:focus-within>.taxi-passenger-recent-arrow,.taxi-passenger-recent-item.is-confirming-delete>.taxi-passenger-recent-arrow{opacity:0;transform:translate(-3px,-50%)}.taxi-passenger-recent-item:hover>.taxi-passenger-recent-delete,.taxi-passenger-recent-item:focus-within>.taxi-passenger-recent-delete{opacity:1;pointer-events:auto;transform:translateY(-50%)}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:hover,.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:focus-visible{color:#702f2f;background:#fff8f8;border-color:#d9b4b4;outline:0;box-shadow:none;transform:translateY(-50%)}.taxi-passenger-recent-confirm[hidden]{display:none!important}.taxi-passenger-recent-confirm{position:absolute;z-index:3;top:50%;right:7px;display:flex;align-items:center;gap:5px;padding:5px 6px 5px 8px;background:#fff;border:1px solid #d9dfe7;border-radius:10px;box-shadow:0 5px 14px rgba(17,24,39,.13);transform:translateY(-50%);animation:taxiRecentConfirmIn .14s ease-out}.taxi-passenger-recent-confirm>span{color:#3c4654;font-size:10px;font-weight:700;white-space:nowrap}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>button{display:inline-flex;align-items:center;width:auto;min-width:0;min-height:24px;padding:4px 7px;color:#465264;background:#f1f3f6;border:0;border-radius:7px;box-shadow:none;font-size:9px;font-weight:750;line-height:1;transform:none}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>button:first-of-type{color:#7b3030;background:#fff0f0}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>button:hover,.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>button:focus-visible{outline:1px solid #cfd6df;box-shadow:none;transform:none}.taxi-passenger-recent-item.is-confirming-delete>.taxi-passenger-recent-delete{opacity:0;pointer-events:none}.taxi-passenger-recent-destinations.is-expanded .taxi-passenger-recent-item>.taxi-passenger-recent-select{grid-template-columns:38px minmax(0,1fr);gap:11px;min-height:56px;padding:7px 72px 7px 9px;background:transparent;border:0;box-shadow:none}.taxi-passenger-recent-destinations.is-expanded .taxi-passenger-recent-item>.taxi-passenger-recent-select>svg:first-child{box-sizing:border-box;width:38px;height:38px;padding:9px;color:#718096;background:#edf1f5;border-radius:12px}.taxi-passenger-recent-destinations.is-expanded .taxi-passenger-recent-item>.taxi-passenger-recent-select small{color:#7d8796;font-size:11px;line-height:1.3}@keyframes taxiRecentConfirmIn{from{opacity:0;transform:translate(5px,-50%)}to{opacity:1;transform:translate(0,-50%)}}@media (hover:none){.taxi-passenger-recent-item>.taxi-passenger-recent-arrow{display:none}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete{opacity:1;pointer-events:auto;transform:translateY(-50%)}}
.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete{right:9px;width:30px;height:30px;min-height:0;padding:5px;color:#dc3545;background:transparent;border:0;border-radius:50%;box-shadow:none;transform:translateY(-50%)}.taxi-passenger-recent-item>.taxi-passenger-recent-delete svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round}.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:hover,.taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:focus-visible{color:#b91c2b;background:transparent;border:0;outline:0;box-shadow:none;transform:translateY(-50%) scale(1.08)}.taxi-passenger-recent-confirm{right:7px;flex-direction:column;align-items:stretch;gap:6px;width:174px;padding:8px;background:#fff;border:0;border-radius:12px;box-shadow:0 7px 20px rgba(17,24,39,.16)}.taxi-passenger-recent-confirm>strong{color:#384353;font-size:10px;font-weight:750;line-height:1.2;text-align:center;white-space:nowrap}.taxi-passenger-recent-confirm>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:26px;padding:5px 12px;color:#667182;background:#f0f2f5;border:0;border-radius:6px;box-shadow:none;font-size:9px;font-weight:750;line-height:1;transform:none}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button:first-child{color:#923f47;background:#fcecee}.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button:hover,.taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button:focus-visible{filter:brightness(.97);outline:0;box-shadow:none;transform:none}
.taxi-passenger-featured-destinations{margin-top:10px;padding:14px 3px 3px;border-top:1px solid #d1d7df}.taxi-passenger-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.taxi-passenger-featured-grid>button{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:11px;box-sizing:border-box;min-width:0;min-height:108px;aspect-ratio:1.42/1;padding:14px 12px;overflow:hidden;color:#151b27;background:#f5f7fa;border:1px solid #dfe4eb;border-radius:16px;font:inherit;text-align:left;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.taxi-passenger-featured-grid>button::after{position:absolute;right:-22px;bottom:-27px;width:72px;height:72px;background:currentColor;border-radius:50%;content:"";opacity:.055}.taxi-passenger-featured-grid>button:hover,.taxi-passenger-featured-grid>button:focus-visible{z-index:1;border-color:#bfc7d2;outline:0;box-shadow:0 9px 20px rgba(17,24,39,.11);transform:translateY(-2px)}.taxi-passenger-featured-grid>button:active{box-shadow:none;transform:scale(.98)}.taxi-passenger-featured-grid>button>span:last-of-type{display:grid;gap:5px;min-width:0}.taxi-passenger-featured-grid b{color:#111827;font-size:14px;font-weight:850;line-height:1.18;text-wrap:balance}.taxi-passenger-featured-grid small{color:#657080;font-size:11px!important;font-weight:600;line-height:1.25!important;text-wrap:balance}.taxi-passenger-featured-icon{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;color:#7a5600;background:#fff1bf;border-radius:14px}.taxi-passenger-featured-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.taxi-passenger-featured-grid .is-varadero .taxi-passenger-featured-icon{color:#146d81;background:#dff6f7}.taxi-passenger-featured-grid .is-vinales .taxi-passenger-featured-icon{color:#387248;background:#e6f4e5}.taxi-passenger-featured-grid .is-provinces .taxi-passenger-featured-icon{color:#4d5687;background:#e9ebfb}.taxi-passenger-featured-grid .is-excursions{grid-column:1/-1;grid-template-columns:48px minmax(0,1fr) 22px;min-height:86px;aspect-ratio:auto;color:#fff;background:linear-gradient(120deg,#111b31,#24486d);border-color:#1d3857}.taxi-passenger-featured-grid .is-excursions::after{right:-8px;bottom:-42px;width:112px;height:112px;background:#ffc94a;opacity:.13}.taxi-passenger-featured-grid .is-excursions b{color:#fff;font-size:15px}.taxi-passenger-featured-grid .is-excursions small{color:#d2dce8}.taxi-passenger-featured-grid .is-excursions .taxi-passenger-featured-icon{color:#171100;background:#ffc94a}.taxi-passenger-featured-arrow{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2}.taxi-passenger-route-sheet.is-showing-all-recents .taxi-passenger-featured-destinations,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-featured-destinations{display:none}
.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales){grid-template-columns:minmax(0,1fr);align-items:end;background-position:center;background-size:cover;border-color:rgba(255,255,255,.48);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales)::after{inset:0;width:auto;height:auto;background:linear-gradient(180deg,rgba(7,15,28,.02) 15%,rgba(7,15,28,.84) 100%);border-radius:0;opacity:1;pointer-events:none}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales) .taxi-passenger-featured-icon{display:none}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales)>span:last-of-type{position:relative;z-index:1}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales) b{color:#fff;font-size:15px;text-shadow:0 2px 8px rgba(0,0,0,.55)}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales) small{color:#eef3f8;text-shadow:0 1px 5px rgba(0,0,0,.68)}.taxi-passenger-featured-grid .is-airport{background-image:url("../images/taxi-destinations/aeropuerto.webp");background-position:56% center}.taxi-passenger-featured-grid .is-varadero{background-image:url("../images/taxi-destinations/varadero.webp");background-position:67% center}.taxi-passenger-featured-grid .is-vinales{background-image:url("../images/taxi-destinations/vinales.webp");background-position:center}.taxi-passenger-featured-grid .is-excursions{grid-template-columns:minmax(0,1fr) 22px;background-image:linear-gradient(90deg,rgba(5,13,25,.9) 0%,rgba(5,13,25,.63) 48%,rgba(5,13,25,.08) 100%),url("../images/taxi-destinations/excursiones.webp");background-position:center 58%;background-size:cover}.taxi-passenger-featured-grid .is-excursions::after{display:none}.taxi-passenger-featured-grid .is-excursions .taxi-passenger-featured-icon{display:none}.taxi-passenger-featured-grid .is-excursions>span:last-of-type{position:relative;z-index:1;text-shadow:0 2px 8px rgba(0,0,0,.58)}.taxi-passenger-featured-grid .is-excursions .taxi-passenger-featured-arrow{position:relative;z-index:1;filter:drop-shadow(0 2px 5px rgba(0,0,0,.55))}
.taxi-passenger-featured-grid .is-excursions{background-image:linear-gradient(90deg,rgba(5,13,25,.9) 0%,rgba(5,13,25,.63) 48%,rgba(5,13,25,.08) 100%),url("../images/taxi-destinations/excursiones.webp?v=2")}
.taxi-passenger-featured-grid .is-provinces{grid-template-columns:minmax(0,1fr);align-items:end;background-image:url("../images/taxi-destinations/otras-provincias.webp?v=1");background-position:center;background-size:cover;border-color:rgba(255,255,255,.48);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.taxi-passenger-featured-grid .is-provinces::after{inset:0;width:auto;height:auto;background:linear-gradient(180deg,rgba(7,15,28,.03) 10%,rgba(7,15,28,.88) 100%);border-radius:0;opacity:1;pointer-events:none}.taxi-passenger-featured-grid .is-provinces .taxi-passenger-featured-icon{display:none}.taxi-passenger-featured-grid .is-provinces>span:last-of-type{position:relative;z-index:1}.taxi-passenger-featured-grid .is-provinces b{color:#fff;font-size:15px;text-shadow:0 2px 8px rgba(0,0,0,.62)}.taxi-passenger-featured-grid .is-provinces small{color:#eef3f8;text-shadow:0 1px 5px rgba(0,0,0,.72)}
.taxi-passenger-featured-toggle{display:flex;align-items:center;justify-content:center;gap:7px;width:calc(100% - 6px);min-height:39px;margin:9px 3px 0;padding:9px 8px 4px;color:#24344b;background:transparent;border:0;border-top:1px solid #d1d7df;border-radius:0;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.taxi-passenger-featured-toggle:hover,.taxi-passenger-featured-toggle:focus-visible{color:#080b11;outline:0}.taxi-passenger-featured-toggle span{text-decoration:underline;text-decoration-color:#b7bec8;text-underline-offset:3px}.taxi-passenger-featured-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;transform:rotate(90deg);transition:transform .18s ease}.taxi-passenger-featured-toggle[aria-expanded="true"] svg{transform:rotate(-90deg)}.taxi-passenger-featured-destinations{margin-top:0;padding-top:5px;border-top:0}.taxi-passenger-featured-destinations[hidden]{display:none!important}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-featured-toggle{display:none}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){top:calc(50% - 105px);bottom:auto;max-height:calc(50% + 85px);transform:none}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"].is-featured-expanded:not(:has([data-taxi-destination-field].is-editing)){top:auto;bottom:20px;max-height:calc(100% - 82px);transform:none}
.taxi-passenger-vehicle-step[hidden]{display:none}
.taxi-passenger-route-field{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:11px;padding:12px;background:#f5f7fa;border:1px solid #e3e9f0;border-radius:12px}
.taxi-passenger-route-field+.taxi-passenger-route-field{margin-top:8px}
.taxi-passenger-route-field>i{width:13px;height:13px;background:#fff;border:4px solid #176bff;border-radius:50%}
.taxi-passenger-route-field:nth-of-type(2)>i{border-color:#ffc94a}
.taxi-passenger-route-field.is-destination>i{width:18px;height:18px;border-width:5px;border-color:#ffc94a}
.taxi-passenger-route-field.is-destination.is-attention:not(.is-editing){animation:taxiDestinationAttention 1.65s ease-in-out infinite}
@keyframes taxiDestinationAttention{0%,100%{border-color:#e3e9f0;box-shadow:0 0 0 0 rgba(184,130,0,0)}50%{border-color:#d3a01b;box-shadow:0 0 0 5px rgba(255,201,74,.2)}}
.taxi-passenger-route-field>span{display:grid;gap:2px}
.taxi-passenger-route-field small{color:#536072;font-size:9px;font-weight:850;letter-spacing:.09em}
.taxi-passenger-route-field strong{color:#030712;font-size:13px;font-weight:500;opacity:1}
.taxi-passenger-route-field [data-taxi-route-pickup],.taxi-passenger-route-field [data-taxi-route-destination]{color:#030712!important;-webkit-text-fill-color:#030712;opacity:1}
.taxi-pickup-address{display:flex;align-items:center;gap:7px;min-width:0}.taxi-pickup-address svg{flex:0 0 17px;width:17px;height:17px;color:#176bff}.taxi-pickup-address strong{min-width:0}
.taxi-passenger-route-field em{margin-top:2px;color:#7b8799;font-size:9px;font-style:normal;font-weight:600;line-height:1.35}
.taxi-passenger-route-body>.taxi-passenger-route-field{grid-template-columns:42px minmax(0,1fr);gap:10px;box-sizing:border-box;min-height:56px;padding:7px 12px}
.taxi-passenger-route-body>.taxi-passenger-route-field>i{justify-self:center}
.taxi-passenger-route-body>[data-taxi-destination-field]{position:relative;cursor:pointer}
.taxi-passenger-route-body>[data-taxi-destination-field]:not(.is-editing){min-height:0;padding-top:12px;padding-bottom:12px}
.taxi-passenger-route-body>[data-taxi-destination-field]:not(.is-editing)>span{gap:3px;align-content:center}
.taxi-passenger-route-body>[data-taxi-destination-field]:not(.is-editing)>span>small{line-height:11px}
.taxi-passenger-route-body>[data-taxi-destination-field]:not(.is-editing)>span>strong{line-height:16px}
.taxi-passenger-route-body>[data-taxi-destination-field].is-editing{align-items:start;padding-top:12px;padding-bottom:13px;background:#f5f7fa;border-color:#d7dee8;cursor:default}
.taxi-passenger-route-body>[data-taxi-destination-field].is-editing>i{margin-top:7px}
.taxi-passenger-route-body>[data-taxi-destination-field].is-editing>span{display:none}
.taxi-passenger-route-body>[data-taxi-destination-field].is-editing>[data-taxi-destination-inline-host]{display:block;grid-column:2;justify-self:start;width:calc(100% - 12px);min-width:0;margin-right:0;transform:none}
.taxi-destination-inline-host{display:none;min-width:0}
.taxi-destination-inline-host>.taxi-destination-dialog.is-inline{position:static;inset:auto;box-sizing:border-box;width:100%;max-width:none;max-height:none;margin:0;padding:0;overflow:visible;background:transparent;border:0;animation:taxiDestinationInlineOpen .2s ease both}
.taxi-destination-dialog.is-inline::backdrop{display:none}
.taxi-destination-dialog.is-inline .taxi-destination-card{gap:12px;max-height:none;padding:4px 0 6px;overflow:visible;background:transparent;border-radius:0;box-shadow:none}
.taxi-destination-dialog.is-inline .taxi-destination-card>header{display:none}
.taxi-destination-dialog.is-inline .taxi-destination-fields{gap:12px}
.taxi-destination-dialog.is-inline .taxi-destination-address-field{gap:0}
.taxi-destination-dialog.is-inline .taxi-destination-address-field>span{display:block;margin-bottom:8px;color:#202b3d;font-size:12px;font-weight:700;line-height:1.25}
.taxi-destination-dialog.is-inline .taxi-destination-address-field>small{display:block;margin:8px 2px 0;color:#707b8c;font-size:8px;font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none;text-wrap:pretty}
.taxi-destination-dialog.is-inline .taxi-destination-fields input[data-taxi-destination-address]{box-sizing:border-box;min-height:46px;padding:10px 12px;background:#fff;border-color:#cfd8e4;border-radius:10px;font-size:13px}
.taxi-destination-dialog.is-inline .taxi-destination-fields input[data-taxi-destination-address]:focus{border-color:#98a3b2;outline:0;box-shadow:0 0 0 3px rgba(75,88,106,.12)}
.taxi-destination-dialog.is-inline .taxi-destination-geocode-status{margin:0!important}
.taxi-destination-dialog.is-inline .taxi-destination-peek{justify-self:center;width:auto;min-width:104px;min-height:36px;padding:7px 18px;color:#fff;background:#101935;border-color:#101935;border-radius:999px;box-shadow:none;font-size:11px;transform:translateX(-20px)}
.taxi-destination-dialog.is-inline .taxi-destination-peek:hover,.taxi-destination-dialog.is-inline .taxi-destination-peek:focus-visible{background:#1d2940;border-color:#1d2940;outline:0;box-shadow:0 0 0 3px rgba(16,25,53,.12)}
@keyframes taxiDestinationInlineOpen{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.taxi-passenger-vehicle-picker{display:flex;align-items:center;justify-content:space-between;width:100%;margin:12px 0 0;padding:6px 18px 8px;box-sizing:border-box;border:1px solid #aeb8c5;border-radius:12px}.taxi-passenger-vehicle-picker legend{margin-left:8px;padding:0 6px;color:#707b8b;background:#fff;font-size:9px;font-weight:700;letter-spacing:.04em}.taxi-passenger-vehicle-picker button{display:grid;place-items:center;flex:0 0 62px;width:62px;aspect-ratio:1;padding:6px;background:transparent;border:0;font:inherit;cursor:pointer;opacity:.62;transition:opacity .16s,transform .16s}.taxi-passenger-vehicle-picker button:hover{opacity:.82}.taxi-passenger-vehicle-picker button:active{transform:scale(.94)}.taxi-passenger-vehicle-picker button.is-selected,.taxi-passenger-vehicle-picker button:focus-visible{background:transparent;border:0;box-shadow:none;outline:0;opacity:1;transform:scale(1.08)}.taxi-passenger-vehicle-picker img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(8,20,38,.12));pointer-events:none;user-select:none}.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="carro"] img{transform:scale(1.16)}.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="triciclo"] img{transform:scale(1.1)}
.taxi-passenger-route-button{display:grid;place-items:center;min-height:48px;margin-top:13px;color:#171100;background:#ffc94a;border-radius:12px;box-shadow:0 9px 20px rgba(255,201,74,.25);font-size:14px;font-weight:900}
.taxi-passenger-route-button[data-taxi-request-action]:not(.is-disabled){animation:taxiContinueReady 1.55s ease-in-out infinite;transform-origin:center}@keyframes taxiContinueReady{0%,100%{box-shadow:0 9px 20px rgba(255,201,74,.25),0 0 0 0 rgba(255,201,74,0);transform:scale(1)}50%{box-shadow:0 12px 25px rgba(215,157,0,.32),0 0 0 7px rgba(255,201,74,.2);transform:scale(1.025)}}.taxi-passenger-route-button[data-taxi-request-action]:not(.is-disabled):active{animation:none;transform:scale(.985)}
.taxi-passenger-route-body>.taxi-passenger-route-button.is-disabled{color:#8b94a1;background:#e4e8ed;box-shadow:none;cursor:not-allowed;pointer-events:none}
@media(prefers-reduced-motion:reduce){.taxi-passenger-route-button[data-taxi-request-action]:not(.is-disabled){animation:none;box-shadow:0 9px 20px rgba(255,201,74,.25),0 0 0 3px rgba(207,151,0,.2)}}
.taxi-passenger-is-searching{background:#dce7e8}.taxi-passenger-is-searching .taxi-passenger-map{filter:none}.taxi-passenger-is-searching .taxi-passenger-map::after{display:none}.taxi-passenger-is-searching .taxi-passenger-map-pin,.taxi-passenger-is-searching .leaflet-control-container,.taxi-passenger-is-searching .taxi-map-credit{display:none}
.taxi-passenger-searching{position:absolute;z-index:5;inset:0;display:grid;align-items:end;justify-items:center;box-sizing:border-box;padding:22px 0 18px;overflow-y:auto;pointer-events:auto}
.taxi-searching-panel{box-sizing:border-box;width:min(480px,calc(100% - 20px));min-width:0;padding:0;overflow:hidden;color:#101d32;background:rgba(255,255,255,.98);border:1px solid rgba(218,225,232,.95);border-radius:25px;box-shadow:0 18px 48px rgba(18,42,67,.18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.taxi-searching-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px 4px}.taxi-searching-status-row.is-countdown-only{justify-content:flex-end}.taxi-searching-kicker{display:inline-flex;align-items:center;gap:8px;color:#5d6979;font-size:9px;font-weight:900;letter-spacing:.12em}.taxi-searching-kicker>i{flex:0 0 7px;width:7px;height:7px;background:#24b78d;border-radius:50%;box-shadow:0 0 0 4px rgba(36,183,141,.11);animation:taxiSearchStatus 1.8s ease-in-out infinite}.taxi-searching-countdown{margin:0!important;padding:0!important;color:#667284!important;background:transparent!important;border:0!important;border-radius:0!important;font-size:11px!important}.taxi-searching-countdown b{font-size:12px!important}
.taxi-searching-center{display:grid;justify-items:center;box-sizing:border-box;padding:13px 24px 20px;text-align:center}.taxi-searching-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:12px;color:#171100;background:#ffc94a;border-radius:17px}.taxi-searching-icon svg{width:27px;height:27px}.taxi-searching-center h1{margin:0;color:#081426;font-size:clamp(23px,5vw,29px);letter-spacing:-.035em}.taxi-searching-center p{margin:6px 0 0;color:#697587;font-size:12px;line-height:1.45}.taxi-searching-progress{position:relative;width:min(240px,82%);height:3px;margin-top:17px;overflow:hidden;background:#e8ecef;border-radius:999px}.taxi-searching-progress>i{position:absolute;inset:0 auto 0 0;width:42%;background:#2dbb83;border-radius:inherit;animation:taxiSearchProgress 1.45s ease-in-out infinite}
.taxi-passenger-searching[data-requested-driver-id]:not([data-requested-driver-id=""]) [data-taxi-searching-copy]{margin-top:10px}
.taxi-searching-route{display:grid;min-width:0;padding:0 18px 10px;border-top:1px solid #e7ebef}
.taxi-searching-route-toggle{display:grid;gap:7px;width:100%;padding:8px 0 4px;color:inherit;background:transparent;border:0;cursor:pointer;touch-action:none}.taxi-searching-route-toggle>i{display:block;width:38px;height:4px;margin:0 auto;background:#cbd2da;border-radius:999px;transition:background .18s ease}.taxi-searching-route-toggle:hover>i,.taxi-searching-route-toggle:focus-visible>i{background:#9aa6b4}.taxi-searching-route-toggle:focus-visible{outline:2px solid rgba(23,107,255,.25);outline-offset:3px;border-radius:10px}.taxi-searching-route-heading{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:16px;width:100%;min-height:31px;text-align:center}.taxi-searching-route-heading>b{color:#081426;font-size:14px}.taxi-searching-route-heading>.taxi-searching-price{position:absolute;right:0;bottom:0}.taxi-searching-price{display:grid;justify-items:end;gap:2px;color:#0b1526;line-height:1;white-space:nowrap}.taxi-searching-price small{color:#687486;font-size:8px;font-weight:850;letter-spacing:.08em}.taxi-searching-price strong{font-size:15px;font-weight:900;letter-spacing:-.02em}.taxi-searching-price em{font-size:8px;font-style:normal;font-weight:800;letter-spacing:.04em}.taxi-searching-itinerary{position:relative;display:grid;gap:2px;max-height:120px;overflow:hidden;opacity:1;transition:max-height .24s ease,opacity .18s ease,margin .24s ease}.taxi-searching-itinerary::before{position:absolute;z-index:0;top:22px;bottom:22px;left:6px;width:1.5px;background:#c9d1dc;border-radius:999px;content:""}.taxi-searching-route.is-collapsed .taxi-searching-itinerary{max-height:0;margin:0;opacity:0;pointer-events:none}.taxi-searching-route.is-expanded .taxi-searching-route-toggle>i{background:#9aa6b4}.taxi-searching-route-field{position:relative;display:grid;grid-template-columns:13px minmax(0,1fr);align-items:center;gap:11px;min-width:0;padding:7px 0;background:transparent;border:0}.taxi-searching-route-field>i{position:relative;z-index:1;box-sizing:border-box;width:13px;height:13px;background:#fff;border:4px solid #176bff;border-radius:50%}.taxi-searching-route-field.is-destination>i{border-color:#ffc94a}.taxi-searching-route-field>span{display:grid;gap:2px;min-width:0}.taxi-searching-route-field small{color:#758092;font-size:8px;font-weight:850;letter-spacing:.08em}.taxi-searching-route-field strong{overflow:hidden;color:#596678;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.taxi-searching-panel>footer{display:flex;justify-content:center;margin:0;padding:0 18px 10px}.taxi-searching-panel>footer form{width:auto;margin:0}.taxi-searching-panel>footer button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 10px;color:#7b8797;background:transparent;border:0;border-radius:9px;font-size:10.5px;font-weight:700;cursor:pointer;transition:color .18s ease,background .18s ease}.taxi-searching-panel>footer button:hover,.taxi-searching-panel>footer button:focus-visible{color:#a92937;background:#fff3f4;outline:0}
.taxi-searching-panel>.taxi-price-approval{margin:0 18px 14px}
.taxi-passenger-searching-pending[hidden]{display:none}.taxi-searching-estimated-fare{display:grid;justify-items:center;gap:4px;margin-top:14px;color:#081426;font-size:22px;font-weight:900;line-height:1;letter-spacing:-.025em}.taxi-searching-estimated-fare small{color:#748092;font-size:8px;font-weight:850;letter-spacing:.09em}.taxi-searching-fare-label{display:inline-flex;align-items:center;justify-content:center}.taxi-searching-fare-amount{display:block}.taxi-searching-fare-payment{display:block;margin-top:1px;color:#13794f;font-size:10px;font-style:normal;font-weight:850;line-height:1.15;letter-spacing:.035em}.taxi-passenger-searching-pending{z-index:12;background:rgba(8,20,38,.18);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
@keyframes taxiSearchProgress{0%{transform:translateX(-110%)}55%{transform:translateX(95%)}100%{transform:translateX(245%)}}@keyframes taxiSearchStatus{0%,100%{opacity:.72}50%{opacity:1;box-shadow:0 0 0 6px rgba(36,183,141,.07)}}
.public-header:not(.auth-header){background:#101935;border-bottom:1px solid rgba(255,255,255,.1)}
.public-header.auth-header{background:#fff;border-bottom:1px solid rgba(222,227,238,.9)}
.has-app-header{padding-top:calc(72px + env(safe-area-inset-top,0px))}
@media(max-width:680px){html,body{overscroll-behavior-y:none}.has-app-header{padding-top:calc(62px + env(safe-area-inset-top,0px))!important}}
@media(max-width:680px){.taxi-account-shell{box-sizing:border-box;width:calc(100% - 28px);padding-bottom:calc(94px + env(safe-area-inset-bottom,0px))}}
@media(max-width:680px){.taxi-account-identity{padding:24px 18px}.taxi-account-avatar-wrap .avatar{width:88px;height:88px}.taxi-account-identity h1{font-size:25px}.taxi-account-card-heading h2{font-size:20px}}
@media(max-width:680px){body.taxi-passenger-app{padding-bottom:0!important;background:#dce7e8}.taxi-passenger-dashboard{height:calc(100dvh - 62px - env(safe-area-inset-top,0px));min-height:420px}.taxi-passenger-dashboard .taxi-shell{width:calc(100% - 18px);padding-block:9px}.taxi-passenger-greeting{top:14px;right:auto;left:50%;width:max-content;max-width:calc(100% - 24px);margin:0;padding:8px 13px;border-radius:999px;transform:translateX(-50%)}.taxi-passenger-map .leaflet-top.leaflet-left{top:62px;right:8px;left:auto}.taxi-passenger-map>.taxi-map-credit{top:62px;right:auto;left:8px}.taxi-passenger-route-sheet{padding:6px 13px 13px;border-radius:21px}.taxi-passenger-route-icon{width:27px;height:27px}.taxi-passenger-greeting h1{font-size:14px}.taxi-passenger-route-field{padding:10px}.taxi-passenger-vehicle-picker{margin-top:9px;padding-inline:14px}.taxi-passenger-vehicle-picker button{flex-basis:56px;width:56px}.taxi-passenger-route-button{min-height:44px;margin-top:10px}.taxi-passenger-searching{bottom:calc(65px + env(safe-area-inset-bottom,0px));padding:12px 0 8px;scroll-padding-bottom:8px}.taxi-searching-panel{width:calc(100% - 12px);border-radius:22px}.taxi-searching-status-row{padding:13px 15px 3px}.taxi-searching-center{padding:11px 16px 17px}.taxi-searching-icon{width:48px;height:48px;margin-bottom:10px;border-radius:15px}.taxi-searching-icon svg{width:24px;height:24px}.taxi-searching-route{padding:0 15px 8px}}
@media(max-width:680px){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){bottom:calc(72px + env(safe-area-inset-bottom,0px));max-height:calc(100% - 130px)}.taxi-passenger-featured-grid>button{grid-template-columns:44px minmax(0,1fr);min-height:100px;padding:12px 10px;aspect-ratio:1.38/1}.taxi-passenger-featured-icon{width:44px;height:44px;border-radius:13px}.taxi-passenger-featured-icon svg{width:23px;height:23px}.taxi-passenger-featured-grid b{font-size:13px}.taxi-passenger-featured-grid small{font-size:10px!important}.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales,.is-provinces){grid-template-columns:minmax(0,1fr)}.taxi-passenger-featured-grid .is-excursions{grid-template-columns:minmax(0,1fr) 20px;min-height:80px;aspect-ratio:auto}.taxi-passenger-featured-grid .is-excursions b{font-size:14px}}
@media(max-width:680px){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){top:calc(50% - 132px);bottom:auto;max-height:calc(50% + 50px - env(safe-area-inset-bottom,0px));transform:none}}
@media(max-width:680px){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"].is-featured-expanded:not(:has([data-taxi-destination-field].is-editing)){top:auto;bottom:calc(72px + env(safe-area-inset-bottom,0px));max-height:calc(100% - 130px);transform:none}}
@media(max-width:680px){.taxi-passenger-app:has(.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]) .taxi-passenger-dashboard{height:calc(100dvh - 62px - env(safe-area-inset-top,0px));min-height:0}.taxi-passenger-vehicle-back{top:9px;left:9px}.taxi-passenger-destination-pill{margin-bottom:9px}.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-dashboard:not(.is-confirming-destination) .taxi-passenger-destination-pill{top:9px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]{max-height:calc(100dvh - 68px);padding:10px 11px 13px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox{padding:0}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox>[role="option"]{min-height:68px}}
@media(max-width:680px){html:has(body.taxi-passenger-app.taxi-passenger-vehicle-stage),html:has(body.taxi-passenger-app .taxi-passenger-dashboard.is-confirming-destination),body.taxi-passenger-app.taxi-passenger-vehicle-stage,body.taxi-passenger-app:has(.taxi-passenger-dashboard.is-confirming-destination){overflow:hidden;overscroll-behavior:none}body.taxi-passenger-app:not(.taxi-passenger-vehicle-stage) .mobile-nav-taxi-passenger{display:grid!important}body.taxi-passenger-app.taxi-passenger-vehicle-stage .mobile-nav-taxi-passenger{display:none!important}}
@media(prefers-reduced-motion:reduce){.taxi-searching-kicker>i,.taxi-searching-progress>i{animation:none}.taxi-searching-progress>i{width:100%;transform:none}}

/* Compositor móvil del chat: siempre visible sobre la navegación inferior */
.chat-offline-readonly{display:none;align-items:center;gap:10px;margin:0;padding:12px 16px;color:var(--navy);background:#eef3ff;border-top:1px solid #dbe4f5}.chat-offline-readonly>svg{flex:0 0 20px;width:20px;height:20px}.chat-offline-readonly>span{display:grid;gap:2px}.chat-offline-readonly b{font-size:12px}.chat-offline-readonly small{color:#536078;font-size:10px;line-height:1.35}.is-offline .chat-offline-readonly{display:flex}.is-offline .conversation-page .chat-form{display:none!important}
@media(max-width:680px){
  .chat-screen{padding-bottom:calc(125px + env(safe-area-inset-bottom,0px))!important}
  .chat-screen .conversation-page .chat-card{margin-bottom:60px}
  .chat-screen .conversation-page .chat-form{position:fixed!important;z-index:99!important;right:0!important;bottom:calc(65px + env(safe-area-inset-bottom,0px))!important;left:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;align-items:center!important;gap:6px!important;width:100%!important;height:60px!important;margin:0!important;padding:8px max(10px,env(safe-area-inset-right,0px)) 8px max(10px,env(safe-area-inset-left,0px))!important;background:#fff!important;border-top:1px solid var(--line)!important;box-shadow:0 -4px 18px rgba(16,25,53,.08)!important;transform:translate3d(0,0,0)!important;-webkit-transform:translate3d(0,0,0)!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important}
  .chat-screen .conversation-page .chat-form textarea{width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:11px 13px!important;font-size:16px!important;line-height:20px!important;resize:none!important}
  .chat-screen .conversation-page .chat-form .button{justify-self:end;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border-radius:10px!important}
  .chat-screen .conversation-page .chat-form .button svg{width:16px;height:16px}
  .chat-screen .conversation-page .chat-messages-page{padding-bottom:74px!important;scroll-padding-bottom:74px}
  .chat-screen.is-offline{padding-bottom:calc(65px + env(safe-area-inset-bottom,0px))!important}
  .chat-screen.is-offline .conversation-page .chat-card{bottom:calc(65px + env(safe-area-inset-bottom,0px));margin-bottom:0}
  .chat-screen .chat-offline-readonly{flex:0 0 auto;padding:10px 14px}
}

/* El contenido del chat rellena hasta el compositor sin alterar la navegación */
@media(max-width:680px){
  .chat-screen .conversation-page .chat-card{position:fixed!important;z-index:20;top:calc(62px + env(safe-area-inset-top,0px));right:0;bottom:calc(125px + env(safe-area-inset-bottom,0px));left:0;display:flex!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;overflow:visible!important;border-radius:0!important}
  .chat-screen .conversation-heading,.chat-screen .conversation-security{position:relative!important;top:auto!important;flex:0 0 auto}
  .chat-screen .conversation-page .chat-messages-page{flex:1 1 auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:14px 11px!important;overflow-y:auto!important;scroll-padding-bottom:14px}
}

/* Solicitud interna de cambios protegidos del perfil */
.profile-change-open{margin-top:15px;padding-inline:12px;font-size:11px}.profile-change-dialog{width:min(500px,calc(100% - 28px));padding:0;overflow:visible;background:transparent;border:0}.profile-change-dialog::backdrop{background:rgba(10,17,37,.58)}.profile-change-card{display:grid;gap:16px;padding:24px;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(10,17,37,.28)}.profile-change-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.profile-change-heading h2{margin:7px 0 0;font-size:21px}.profile-change-heading>button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;color:var(--muted);background:var(--canvas);border:0;border-radius:10px;font-size:22px;cursor:pointer}.profile-change-card>p{margin:-5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.profile-change-card label{display:grid;gap:6px;font-size:12px;font-weight:700}.profile-change-card textarea{min-height:100px;resize:vertical}.profile-change-card label small{color:var(--muted);font-size:9px;font-weight:500}.profile-change-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.profile-change-actions .button{padding-inline:12px}
.profile-email-preferences-standalone{margin-top:15px}.email-preferences-card{width:min(100%,520px)}.email-preferences-card .profile-change-heading h2{margin:0;font-size:23px;line-height:1.25}.email-preference-list{display:grid;gap:10px}.email-preference-option{position:relative;display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--canvas);cursor:pointer}.email-preference-option>span{display:grid;gap:5px}.email-preference-option b{color:var(--navy);font-size:15px;line-height:1.3}.email-preference-option small{font-size:12px!important;line-height:1.4}.email-preference-option input{position:absolute;opacity:0;pointer-events:none}.email-preference-option i{position:relative;flex:0 0 42px;width:42px;height:24px;border-radius:999px;background:#cbd2df;transition:.2s}.email-preference-option i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(10,17,37,.25);transition:.2s}.email-preference-option input:checked+i{background:var(--green)}.email-preference-option input:checked+i::after{transform:translateX(18px)}.email-preference-option:has(input:focus-visible){outline:3px solid rgba(49,214,187,.25);outline-offset:2px}
.profile-support-card{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:11px;padding:17px;color:#fff;background:linear-gradient(145deg,var(--navy),var(--navy-2));border:1px solid rgba(49,214,187,.35);border-radius:16px;box-shadow:0 12px 28px rgba(10,17,37,.16)}.profile-support-card>div{display:grid;gap:3px}.profile-support-card b{font-size:15px}.profile-support-card small{color:rgba(255,255,255,.8);font-size:12px;line-height:1.4}.profile-support-card .profile-change-open{grid-column:1/-1;margin-top:3px;color:var(--navy);background:var(--aqua);border-color:var(--aqua);font-weight:800}.profile-support-card .profile-change-open:hover{color:var(--navy);background:#72ebda;border-color:#72ebda}
@media(max-width:520px){.profile-change-card{gap:14px;padding:19px}.profile-change-heading h2{font-size:18px}.profile-change-actions{grid-template-columns:1fr}.profile-change-actions .button-primary{grid-row:1}}
.admin-change-requests{display:grid;gap:11px}.admin-change-requests article{display:grid;gap:7px;padding:13px;background:#f7f8fb;border:1px solid var(--line);border-radius:11px}.admin-change-requests article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-change-requests b{font-size:13px}.admin-change-requests p{margin:0;color:var(--text);font-size:12px;line-height:1.5;white-space:pre-wrap}.admin-change-requests small{color:var(--muted);font-size:10px}
.profile-availability-card{padding:17px!important}.profile-availability-card h2{margin:0 0 6px}.profile-availability-card>p{margin:0 0 13px;color:var(--muted);font-size:10px;line-height:1.5}.profile-availability-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 11px;color:var(--ink);text-align:left;background:var(--canvas);border:0;border-radius:11px;cursor:pointer}.profile-availability-toggle>span{display:grid;gap:2px}.profile-availability-toggle b{font-size:11px}.profile-availability-toggle small{color:var(--muted);font-size:8px}.profile-availability-toggle>i{position:relative;flex:0 0 36px;width:36px;height:20px;background:#c7cdd8;border-radius:20px;transition:background .18s}.profile-availability-toggle>i::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:transform .18s}.profile-availability-toggle>i.active{background:var(--green)}.profile-availability-toggle>i.active::after{transform:translateX(16px)}.profile-availability-toggle:focus-visible{outline:3px solid rgba(74,125,242,.2);outline-offset:2px}

/* Lectura más cómoda únicamente en los detalles del pedido */
.detail-shell .back-link{font-size:12px}.detail-shell .status-pill{font-size:11px}.detail-shell .detail-heading p{font-size:13px}.detail-shell .detail-price small{font-size:9px}.detail-shell .card-heading h2{font-size:18px}.detail-shell .card-heading p{font-size:12px;line-height:1.4}.detail-shell .large-route small,.detail-shell .info-grid small,.detail-shell .contact-item small,.detail-shell .recipient-box small{font-size:10px}.detail-shell .large-route b{font-size:15px}.detail-shell .large-route p{font-size:13px}.detail-shell .info-grid b,.detail-shell .contact-item b{font-size:13px}.detail-shell .contact-item a{font-size:11px}.detail-shell .timeline-card h2{font-size:18px}.detail-shell .timeline-event b{font-size:13px}.detail-shell .timeline-event small{font-size:10px}.detail-shell .timeline-event p{font-size:11px;line-height:1.45}.detail-shell .action-card h2{font-size:20px}.detail-shell .action-card p{font-size:13px}.detail-shell .danger-details{font-size:12px}.detail-shell .business-order-label{font-size:9px}.detail-shell .business-order-copy h2{font-size:18px}.detail-shell .business-order-copy>p{font-size:11px}.detail-shell .business-order-meta{font-size:10px}.detail-shell .business-order-phone{font-size:13px}
@media(max-width:680px){.detail-shell .detail-heading p{font-size:12px}.detail-shell .card-heading h2{font-size:17px}.detail-shell .action-card h2{font-size:19px}.detail-shell .business-order-copy h2{font-size:16px}.detail-shell .business-order-meta{font-size:10px}}
.offer-arrival-time{display:flex!important;align-items:center;gap:4px;margin-top:5px;color:var(--muted)!important;font-size:10px!important;font-weight:600!important;line-height:1.25}.offer-arrival-time svg{width:11px!important;height:11px!important;fill:none!important}

/* Sistema visual único para los estados de todos los pedidos */
.order-status-icon{flex:0 0 auto;width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.status-pill i,.notification-status i{display:none}.status-publicado{color:#a86612;background:#fff2d8}.status-aceptado{color:#315fc8;background:#e8efff}.status-recogido{color:#6e4db5;background:#eee8ff}.status-entrega_reportada{color:#9a6814;background:#fff3d8}.status-entregado{color:#1f7a55;background:#e4f6ed}.status-cancelado{color:#b63845;background:#fde8eb}
.order-state-publicado{color:#a86612!important;background:#fff2d8!important}.order-state-aceptado{color:#315fc8!important;background:#e8efff!important}.order-state-recogido{color:#6e4db5!important;background:#eee8ff!important}.order-state-entrega_reportada{color:#9a6814!important;background:#fff3d8!important}.order-state-entregado{color:#1f7a55!important;background:#e4f6ed!important}.order-state-cancelado{color:#b63845!important;background:#fde8eb!important}.package-mark.order-state-cancelado svg,.package-mark.order-state-aceptado svg{width:20px;height:20px}.package-mark.order-state-publicado svg,.package-mark.order-state-entrega_reportada svg{width:21px;height:21px}
.notification-status .order-status-icon{width:9px;height:9px}.notification-kind.order-state-publicado,.notification-kind.order-state-aceptado,.notification-kind.order-state-recogido,.notification-kind.order-state-entrega_reportada,.notification-kind.order-state-entregado,.notification-kind.order-state-cancelado{border-radius:12px}.notification-kind.order-state-cancelado svg,.notification-kind.order-state-aceptado svg{width:19px;height:19px}
.admin-order-status{align-items:center;gap:6px}.admin-order-status .order-status-icon{width:11px;height:11px}.admin-order-status.large .order-status-icon{width:14px;height:14px}
.timeline-event.order-event-publicado>i,.admin-order-event.order-event-publicado>i{background:#c9851e!important}.timeline-event.order-event-aceptado>i,.admin-order-event.order-event-aceptado>i{background:#315fc8!important}.timeline-event.order-event-recogido>i,.admin-order-event.order-event-recogido>i{background:#7653c5!important}.timeline-event.order-event-entrega_reportada>i,.admin-order-event.order-event-entrega_reportada>i{background:#c9851e!important}.timeline-event.order-event-entregado>i,.admin-order-event.order-event-entregado>i{background:#289267!important}.timeline-event.order-event-cancelado>i,.admin-order-event.order-event-cancelado>i{background:#c84853!important}.timeline-event.current>i{box-shadow:0 0 0 5px color-mix(in srgb,currentColor 12%,transparent)}
.admin-review-history .admin-order-event>i{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;margin-top:0;color:#fff;border-radius:50%;box-shadow:none}.admin-review-history .admin-order-event>i svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.history-empty-quiet{padding:27px 20px!important;box-shadow:none}.history-empty-quiet>span{width:38px;height:38px;margin-bottom:10px;border-radius:11px}.history-empty-quiet>span svg{width:17px;height:17px}.history-empty-quiet h3{margin-bottom:4px;font-size:14px;font-weight:700}.history-empty-quiet p{max-width:390px;margin:0 auto 14px;font-size:10px;line-height:1.45}.history-empty-quiet .button{min-height:34px;padding:8px 13px;font-size:9px}
.danger-details-title{display:block;color:var(--text);font-weight:700}
.business-cancel-only{padding:0;background:transparent;border:0;border-radius:0}
.delivery-failure-action{padding:0}.delivery-cancel-dialog{width:min(520px,calc(100% - 24px));padding:0;overflow:visible;background:transparent;border:0}.delivery-cancel-dialog::backdrop{background:rgba(10,17,37,.62);backdrop-filter:blur(3px)}.delivery-cancel-card{display:grid;gap:15px;max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:23px;overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.55);border-radius:20px;box-shadow:0 24px 70px rgba(10,17,37,.28)}.delivery-cancel-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.delivery-cancel-card>header>div{display:grid;gap:4px}.delivery-cancel-card>header small{color:#b43b48;font-size:10px!important;font-weight:850;letter-spacing:.09em}.delivery-cancel-card h2{margin:0;font-size:22px;line-height:1.2}.delivery-cancel-card>header>button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;color:var(--muted);background:#f2f4f7;border:0;border-radius:10px;font-size:23px;cursor:pointer}.delivery-cancel-card>p{margin:-3px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.delivery-cancel-warning{display:flex;align-items:flex-start;gap:10px;padding:12px;color:#805a1b;background:#fff7e7;border:1px solid #ecd7a8;border-radius:12px}.delivery-cancel-warning>svg{flex:0 0 20px;width:20px;height:20px}.delivery-cancel-warning>span{display:grid;gap:2px}.delivery-cancel-warning b{font-size:13px}.delivery-cancel-warning small{font-size:11px!important;line-height:1.4}.delivery-cancel-card>label{display:grid;gap:7px;color:var(--ink);font-size:14px;font-weight:750}.delivery-cancel-card>label>span>i{font-weight:500;color:var(--muted);font-style:normal}.delivery-cancel-card select,.delivery-cancel-card textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d7dce5;border-radius:11px;font-size:16px}.delivery-cancel-card select{min-height:50px;padding:11px 42px 11px 13px}.delivery-cancel-card textarea{min-height:102px;padding:12px 13px;line-height:1.45;resize:vertical}.delivery-cancel-card select:focus,.delivery-cancel-card textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 4px rgba(74,125,242,.09)}.delivery-cancel-card select[aria-invalid="true"],.delivery-cancel-card textarea[aria-invalid="true"]{border-color:#d64c59;box-shadow:0 0 0 4px rgba(214,76,89,.08)}.delivery-cancel-card label>small{justify-self:end;color:var(--muted);font-size:10px!important;font-weight:500}.delivery-cancel-card .delivery-cancel-field-error{justify-self:start;color:#b63340;font-size:11px!important;font-weight:700}.delivery-cancel-card .delivery-cancel-field-error[hidden]{display:none!important}.delivery-cancel-card>footer{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:2px}.delivery-cancel-card>footer .button{min-width:0;min-height:48px;padding-inline:10px}@media(max-width:560px){.delivery-cancel-dialog{width:calc(100% - 16px)}.delivery-cancel-card{gap:13px;max-height:calc(100dvh - 16px);padding:18px 15px;border-radius:18px}.delivery-cancel-card h2{font-size:20px}.delivery-cancel-card>p{font-size:12.5px}.delivery-cancel-warning{padding:11px}.delivery-cancel-card>footer{grid-template-columns:1fr}.delivery-cancel-card>footer [type="submit"]{grid-row:1}.delivery-cancel-card>footer [data-delivery-cancel-close]{grid-row:2}}
.order-status-manager{overflow:hidden;background:#fff;border:1px solid #d8deea;border-radius:14px;box-shadow:var(--shadow-soft)}.order-status-manager>summary{display:flex;align-items:center;gap:10px;min-height:52px;padding:14px 17px;color:#fff;background:var(--navy);font-size:14px;font-weight:850;cursor:pointer;list-style:none}.order-status-manager>summary::-webkit-details-marker{display:none}.order-status-manager>summary>svg{width:19px;height:19px;color:var(--aqua)}.order-status-manager>summary>span{flex:1}.order-status-manager>summary>i{font-size:20px;font-style:normal;transition:transform .2s ease}.order-status-manager[open]>summary>i{transform:rotate(180deg)}.order-status-manager-panel{display:grid;gap:13px;padding:16px}.order-status-manager-panel>header small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.09em}.order-status-manager-panel>header h2{margin:4px 0;font-size:18px}.order-status-manager-panel>header p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.order-status-option{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:13px}.order-status-option>div{display:flex;align-items:flex-start;gap:10px}.order-status-option>div>span:last-child{display:grid;gap:3px}.order-status-option b{font-size:13px}.order-status-option small{color:var(--muted);font-size:11px;line-height:1.4}.order-status-option-icon{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:9px}.order-status-option-icon svg{width:17px;height:17px}.order-status-option-complete{background:#f2faf6;border-color:#d3eadf}.order-status-option-complete .order-status-option-icon{color:#197451;background:#daf2e6}.order-status-option-cancel{background:#fff6f7;border-color:#f0d8dc}.order-status-option-cancel .order-status-option-icon{color:#b63845;background:#f9dfe3}.order-manual-completion-form{display:grid;gap:10px}.order-manual-completion-form label{display:grid;gap:5px;color:var(--ink);font-size:11px;font-weight:750}.order-manual-completion-form label span i{color:var(--muted);font-style:normal;font-weight:500}.order-manual-completion-form select,.order-manual-completion-form textarea{width:100%;padding:10px 11px;color:var(--ink);background:#fff;border:1px solid #ccd8d2;border-radius:9px;font-size:13px}.order-manual-completion-form textarea{resize:vertical}.order-manual-completion-form select:focus,.order-manual-completion-form textarea:focus{border-color:var(--green);outline:0;box-shadow:0 0 0 3px rgba(31,122,85,.09)}.order-status-edit-link{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px;color:var(--blue);font-size:12px;font-weight:800}.order-status-edit-link svg{width:15px;height:15px}@media(max-width:560px){.order-status-manager>summary{font-size:15px}.order-status-manager-panel{padding:14px}.order-status-manager-panel>header p,.order-status-option small{font-size:12px}.order-status-option b{font-size:14px}}
.order-status-change-open{gap:8px;font-weight:600}.order-status-change-open svg{width:18px;height:18px}.order-status-dialog-card{overflow:visible;font-weight:400}.order-status-dialog-card>header small{color:var(--blue)}.order-status-field{display:grid;gap:7px}.order-status-field-label,.order-status-notes>span{color:var(--ink);font-size:12px;font-weight:400}.order-status-picker{position:relative;display:grid;gap:5px}.order-status-picker-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:50px;padding:10px 12px;color:var(--ink);background:#fff;border:1px solid #d7dce5;border-radius:11px;font:inherit;font-size:14px;font-weight:400;text-align:left;cursor:pointer}.order-status-picker-toggle>span{display:flex;min-width:0;align-items:center;gap:9px}.order-status-picker-toggle>span>svg{flex:0 0 20px;width:20px;height:20px;color:var(--blue)}.order-status-picker-toggle>span>i{overflow:hidden;font:inherit;font-style:normal;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.order-status-picker-toggle>.order-status-picker-arrow{flex:0 0 17px;width:17px;height:17px;transition:transform .18s ease}.order-status-picker-toggle[aria-expanded="true"]>.order-status-picker-arrow{transform:rotate(90deg)}.order-status-picker-toggle:focus,.order-status-picker-toggle[aria-invalid="true"]{border-color:var(--blue);outline:0;box-shadow:0 0 0 4px rgba(74,125,242,.09)}.order-status-picker-toggle[aria-invalid="true"]{border-color:#d64c59}.order-status-picker-toggle:disabled{color:var(--muted);background:#f5f6f8;cursor:not-allowed}.order-status-picker-menu{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:grid;width:100%;gap:5px;max-height:240px;padding:6px;overflow:auto;background:#fff;border:1px solid #dfe3ea;border-radius:11px;box-shadow:0 14px 34px rgba(15,27,53,.2)}.order-status-picker-menu[hidden],.order-status-picker-menu>[hidden]{display:none!important}.order-status-picker-menu>button{display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:43px;padding:9px 10px;color:var(--ink);background:transparent;border:0;border-radius:8px;font:inherit;font-size:13px;font-weight:400;text-align:left;cursor:pointer}.order-status-picker-menu>button:hover,.order-status-picker-menu>button:focus{background:#f1f6ff;outline:0}.order-status-picker-menu>button>svg{width:19px;height:19px;color:var(--blue)}.order-status-picker-menu>button[data-order-status-value="cancelado"]>svg,.order-status-picker-menu>button[data-order-reason-status="cancelado"]>svg{color:#b63845}.order-status-picker-menu>button>i{visibility:hidden;color:var(--green);font-size:14px;font-style:normal}.order-status-picker-menu>button[aria-selected="true"]{background:#edf8f4}.order-status-picker-menu>button[aria-selected="true"]>i{visibility:visible}.order-status-notes{display:grid!important;gap:6px!important;color:var(--ink)!important;font-size:12px!important;font-weight:400!important}.order-status-notes>span>i{color:var(--muted);font-style:normal;font-weight:400}.order-status-notes textarea{min-height:78px!important;padding:10px 11px!important;font:inherit!important;font-size:12px!important;font-weight:400!important}.order-status-dialog-card .order-status-field-error{justify-self:start;color:#b63340;font-size:10px!important;font-weight:500}.order-status-dialog-card .order-status-field-error[hidden]{display:none!important}.order-delivery-review-action{display:grid;gap:10px}.order-delivery-review-action h2,.order-delivery-review-action p{margin:0}.order-delivery-review-action p{color:var(--muted);font-size:12px;line-height:1.45}@media(max-width:560px){.order-status-dialog-card{gap:11px}.order-status-picker-toggle{min-height:47px;font-size:13px}.order-status-picker-menu{max-height:min(190px,38dvh)}.order-status-picker-menu>button{min-height:41px;font-size:12px}.order-status-dialog-card>footer{gap:7px}.order-status-dialog-card>footer .button{min-height:45px;font-size:12px}}
.order-status-picker-toggle:not(:disabled),.order-status-picker-menu>button{color:#101935;font-weight:400}.order-status-change-open.button-primary{color:#fff;background:#111;border-color:#111}.order-status-change-open.button-primary:hover,.order-status-change-open.button-primary:focus-visible{background:#000;border-color:#000}.order-status-change-open.button-primary:active{background:#000;border-color:#000}.order-status-edit-link.button{min-height:48px;margin-top:9px;padding:11px 14px;color:#101935;font-size:13px;font-weight:600;border:1px solid #cbd3df;border-radius:11px}.order-status-edit-link.button svg{width:17px;height:17px}
.order-status-edit-link.button{color:#101935;background:#fff;border-color:#cbd3df}.order-status-edit-link.button:hover{color:#101935;background:#f5f7fa;border-color:#aeb8c8}
.order-rescue-card{color:#fff;background:linear-gradient(145deg,var(--navy),#263c74);border:1px solid rgba(66,217,199,.4);box-shadow:0 16px 34px rgba(16,25,53,.2)}.order-rescue-card .eyebrow{color:var(--aqua)}.order-rescue-card p{color:rgba(255,255,255,.78)}.order-rescue-card>small{display:block;margin-top:13px;color:rgba(255,255,255,.66);font-size:10px;line-height:1.45}.order-rescue-actions{display:grid;gap:8px;margin-top:16px}.order-rescue-actions .button-primary{color:var(--navy);background:var(--aqua);border-color:var(--aqua)}.order-rescue-support{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px;color:#fff;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:3px}.order-rescue-support svg{width:16px;height:16px}.order-edit-active{margin-bottom:10px}.danger-details>.order-edit-active+form{margin-top:0}
.order-route.order-destination-only::before{display:none}
.order-side{min-width:0}.searching-couriers{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;width:100%;max-width:100%;color:#9a6814;font-size:14px;font-weight:700;line-height:1.25;text-align:right;white-space:nowrap}.searching-label{display:inline-block;min-width:0}.searching-couriers>em{display:inline-flex;align-items:center;flex:0 0 20px;gap:3px;width:20px;font-style:normal}.searching-couriers>em b{width:4px;height:4px;background:currentColor;border-radius:50%;animation:searching-dot 1.2s ease-in-out infinite}.searching-couriers>em b:nth-child(2){animation-delay:.16s}.searching-couriers>em b:nth-child(3){animation-delay:.32s}.package-mark.order-state-publicado svg{width:22px;height:22px;animation:searching-scan 2.2s ease-in-out infinite}@keyframes searching-scan{0%,100%{transform:translate(-3px,-4px)}25%{transform:translate(3px,-1px)}50%{transform:translate(-2px,4px)}75%{transform:translate(3px,2px)}}@keyframes searching-dot{0%,60%,100%{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@media(max-width:680px){.order-side:has(.searching-couriers){grid-column:1/-1;justify-items:start}.searching-couriers{justify-content:flex-start;text-align:left}}@media(prefers-reduced-motion:reduce){.package-mark.order-state-publicado svg,.searching-couriers>em b{animation:none}}
.order-row.order-row-searching{background:#fffaf0;animation:searching-row-pulse 2.4s ease-in-out infinite}.order-row.order-row-searching:hover{background:#fff5df}@keyframes searching-row-pulse{0%,100%{background-color:#fffaf2}50%{background-color:#fff5e3}}@media(prefers-reduced-motion:reduce){.order-row.order-row-searching{animation:none}}

/* Búsqueda vencida: ámbar distinto del rojo de cancelación en las vistas de la tienda. */
.business-history-list .status-vencido,.business-history-list .order-state-vencido,.business-order-view .status-vencido,.business-order-view .order-state-vencido{color:#805700!important;background:#fff1c2!important}.business-history-list .business-history-state.order-state-vencido{border-color:#e6c866}.business-order-view .order-closure-note.expired{color:#805700;background:#fff8df;border-color:#e6c866}

/* Entrega reportada: estado azul tanto en la etiqueta como en todos sus iconos */
.status-entrega_reportada,.order-state-entrega_reportada{color:#315fc8!important;background:#e8efff!important}.status-entrega_reportada .order-status-icon,.order-state-entrega_reportada svg{color:#315fc8!important;stroke:#315fc8!important}.timeline-event.order-event-entrega_reportada>i,.admin-order-event.order-event-entrega_reportada>i{color:#fff!important;background:#315fc8!important}.timeline-event.order-event-entrega_reportada>i svg,.admin-order-event.order-event-entrega_reportada>i svg{color:#fff!important;stroke:#fff!important}

.notification-heading-actions{margin-left:auto}.notification-clear{display:grid;place-items:center;width:36px;height:36px;padding:0;color:#8a3440;background:#fff;border:1px solid #efcfd3;border-radius:10px;box-shadow:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.notification-clear:hover{color:#fff;background:#c84853;border-color:#c84853}.notification-clear svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:680px){.notification-heading{display:flex;grid-template-columns:none;align-items:center;gap:8px}.notification-heading>div:first-child{min-width:0}.notification-heading h1{font-size:clamp(20px,6.2vw,24px)}.notification-heading-actions{flex:0 1 auto;flex-wrap:nowrap;justify-self:auto;justify-content:flex-end;width:auto;margin-left:auto;gap:6px}.notification-heading-actions form{flex:0 0 auto;margin-left:0}.notification-heading .button{min-width:0;max-width:112px;min-height:36px;padding:5px 9px;font-size:10px;line-height:1.12;white-space:normal}.notification-clear{width:34px;height:34px}}

/* La oferta entra desde la barra superior sin alterar el flujo del detalle. */
.courier-offer-popover,.new-order-alerting.courier-offer-popover{animation:courier-offer-drop .42s cubic-bezier(.22,1,.36,1) both}@keyframes courier-offer-drop{from{opacity:0;transform:translate(-50%,calc(-100% - 100px))}to{opacity:1;transform:translate(-50%,0)}}@media(prefers-reduced-motion:reduce){.courier-offer-popover,.new-order-alerting.courier-offer-popover{animation:none}}

/* iOS amplía la página al enfocar controles con texto menor de 16 px. */
@media(max-width:920px){
  .hero-map-visual{margin-inline:auto}
  input,select,textarea{font-size:16px!important}
  input::placeholder,textarea::placeholder{font-size:inherit}
}

/* Escala legible para textos auxiliares que antes quedaban entre 8 y 10 px. */
small{font-size:11px!important;line-height:1.35}
.notification-dot,.status-pill,.count-badge,.order-date,.live-label,.history-filter,.card-detail-link,.offer-arrival-time,.section-history-link,.assigned-contact>b,.assigned-phone,.profile-aside dt,.delivery-field-error{font-size:11px!important;line-height:1.35}

@media(max-width:920px){
  small,.status-pill,.count-badge,.order-date,.live-label,.history-filter,.card-detail-link,.offer-arrival-time,.section-history-link,.assigned-contact>b,.assigned-phone,.profile-aside dt,.delivery-field-error{font-size:12px!important}
  label,.button,.back-link{font-size:14px}
  .active-guidance,.history-empty-quiet p,.profile-availability-card>p,.conversation-heading p,.order-main p{font-size:12px!important;line-height:1.5}
  .mobile-nav>a,.mobile-nav>a span,.mobile-nav>a small{font-size:11px!important;line-height:1.2}
  .notification-dot{font-size:10px!important}
  .chat-bubble small,.order-side>strong small,.active-top strong small,.detail-price small,.history-order summary>strong small,.offer-head>strong small{font-size:11px!important}
}

/* Entrada breve de cada pantalla en teléfonos y en la app instalada. */
@media(max-width:920px) and (prefers-reduced-motion:no-preference){
  main{animation:mobile-page-enter .38s cubic-bezier(.22,.75,.24,1)}
  .mobile-nav{animation:mobile-nav-enter .42s cubic-bezier(.22,.75,.24,1) both}
}
@keyframes mobile-page-enter{
  from{opacity:0;transform:translate3d(0,12px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes mobile-nav-enter{
  from{opacity:0;transform:translate3d(0,18px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

/* Los elementos fijos del chat deben permanecer anclados al viewport real. */
@media(max-width:920px){
  body.chat-screen main{animation:none!important;transform:none!important}
  .mobile-nav{animation:none!important;transform:none!important;-webkit-transform:none!important}
}

/* Bienvenida mostrada únicamente al iniciar la app instalada. */
.app-splash{display:none}
.show-app-splash{background:#f8fbfb}
.show-app-splash .app-splash{position:fixed;z-index:1000;inset:0;display:block;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);overflow:hidden;background:#f8fbfb;opacity:1;transition:opacity .28s ease;animation:appSplashEmergencyHide .01s linear 6s forwards}
@keyframes appSplashEmergencyHide{to{visibility:hidden;pointer-events:none}}
@keyframes appSplashEmergencyReveal{to{visibility:visible;opacity:1;pointer-events:auto}}
.show-app-splash .app-splash-animation{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:#f8fbfb;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.splash-background{position:absolute;z-index:0;inset:0;display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.app-splash-logo-animation{position:absolute;z-index:2;top:clamp(80px,12vh,122px);left:50%;display:block;width:min(82vw,360px);height:min(107.625vw,472px);max-height:62vh;transform:translateX(-50%)}
.splash-ride{position:absolute;z-index:1;right:0;bottom:max(5.5%,env(safe-area-inset-bottom,0));left:0;height:clamp(165px,24vh,230px);pointer-events:none}
.splash-courier-motion{position:absolute;z-index:2;bottom:1%;left:0;width:clamp(130px,38vw,190px);transform:translate3d(-110%,0,0);backface-visibility:hidden;will-change:transform;animation:splashCourierRide 1.65s linear 1.98s both}
.splash-courier{position:relative;z-index:3;display:block;width:100%;height:auto;object-fit:contain}
.splash-trail{position:absolute;z-index:1;right:92%;bottom:-10%;width:110vw;height:28px;overflow:visible;filter:blur(.22px) drop-shadow(0 0 3px rgba(32,213,184,.32)) drop-shadow(0 0 8px rgba(92,232,209,.18))}
.splash-trail-line{fill:none;stroke-width:3.5;stroke-linecap:round;vector-effect:non-scaling-stroke}
.splash-particles{position:absolute;z-index:2;right:90%;bottom:-9%;width:84px;height:24px}
.splash-particles i{position:absolute;right:0;top:50%;display:block;width:5px;height:5px;border-radius:50%;background:rgba(69,226,202,.68);box-shadow:0 0 5px rgba(39,216,194,.34),0 0 10px rgba(92,232,209,.18);opacity:0;filter:blur(.15px);animation:splashParticleDrift .92s ease-out infinite}
.splash-particles i:nth-child(2){width:3px;height:3px;animation-delay:.15s}
.splash-particles i:nth-child(3){width:4px;height:4px;animation-delay:.3s}
.splash-particles i:nth-child(4){width:2px;height:2px;animation-delay:.45s}
.splash-particles i:nth-child(5){width:4px;height:4px;animation-delay:.6s}
.splash-particles i:nth-child(6){width:3px;height:3px;animation-delay:.75s}
.taxi-brand-surface .splash-trail{filter:blur(.22px) drop-shadow(0 0 3px rgba(255,194,28,.4)) drop-shadow(0 0 8px rgba(255,212,95,.24))}
.taxi-brand-surface .splash-particles i{background:rgba(255,202,55,.78);box-shadow:0 0 5px rgba(255,194,28,.42),0 0 10px rgba(255,220,112,.22)}
.show-app-splash .app-splash.is-leaving{opacity:0}
.show-app-splash main,.show-app-splash .mobile-nav,.show-app-splash [data-splash-logo-target],.show-app-splash [data-splash-brand-name]{opacity:0;animation:appSplashEmergencyReveal .01s linear 6s forwards}
.show-app-splash.app-splash-transitioning main,.show-app-splash.app-splash-transitioning .mobile-nav{opacity:1;transition:opacity .65s ease}
.app-splash-complete main,.app-splash-complete .mobile-nav{animation:none!important;transform:none!important}
.app-splash-brand-reveal [data-splash-brand-name]{visibility:visible}
.app-splash-brand-reveal .brand-word{animation:splashBrandWordReveal .5s cubic-bezier(.22,.72,.2,1) both}
.app-splash-brand-reveal .taxi-header-label{animation:splashTaxiLabelReveal .32s cubic-bezier(.22,.72,.2,1) .55s both}
.show-app-splash .app-splash.is-transitioning{background-color:transparent;transition:background-color .72s cubic-bezier(.4,0,.2,1)}
.show-app-splash .app-splash.is-transitioning .logo-container-group,.show-app-splash .app-splash.is-transitioning .title-group,.show-app-splash .app-splash.is-transitioning .splash-ride{opacity:0!important;transition:opacity .18s ease;animation:none!important}
.app-splash-flying-logo{position:fixed!important;z-index:1002!important;margin:0!important;overflow:hidden!important;border-radius:31%!important;opacity:1;pointer-events:none!important;will-change:transform;transform-origin:top left!important;box-shadow:none!important}.app-splash-flying-logo svg{width:62%!important;height:62%!important}
.taxi-brand-surface .app-splash-flying-logo{background:#ffc94a!important}
@keyframes splashCourierRide{from{transform:translate3d(-110%,0,0)}to{transform:translate3d(100vw,0,0)}}
@keyframes splashParticleDrift{0%{opacity:0;transform:translate3d(0,0,0) scale(.6)}18%{opacity:.85}100%{opacity:0;transform:translate3d(-74px,var(--particle-y,-7px),0) scale(.15)}}
.splash-particles i:nth-child(even){--particle-y:8px}.splash-particles i:nth-child(3n){--particle-y:-13px}
@keyframes splashBrandWordReveal{from{opacity:0;clip-path:inset(0 100% 0 0);transform:translateX(-8px)}to{opacity:1;clip-path:inset(0);transform:translateX(0)}}
@keyframes splashTaxiLabelReveal{from{opacity:0;transform:translateX(-5px)}to{opacity:1;transform:translateX(0)}}
@media(min-width:700px){.splash-courier-motion{width:190px}.splash-ride{height:220px}}
@media(prefers-reduced-motion:reduce){.show-app-splash .app-splash{transition:none}.show-app-splash .logo-container-group{opacity:1;transform:translateY(40px);animation:none}.show-app-splash .logo-shell{opacity:1;transform:none;animation:none}.show-app-splash .logo-node{opacity:1;animation:none}.show-app-splash .logo-pulse-route{stroke-dashoffset:0;animation:none}.title-taxi-suffix{opacity:1;clip-path:none;animation:none}.splash-courier-motion{right:4%;left:auto;transform:none;animation:none}.splash-trail,.splash-trail-line{animation:none}.splash-particles{display:none}.app-splash-flying-logo{display:none!important}.app-splash-brand-reveal .brand-word,.app-splash-brand-reveal .taxi-header-label{opacity:1;clip-path:none;transform:none;animation:none}}

/* Acción principal de la tienda con el color y la alineación del isotipo. */
@media(max-width:680px){
  .hero-map-visual{border-radius:12px}
  .mobile-nav-business .mobile-main-action:not(.mobile-orders-action)>span{display:grid!important;place-items:center!important;color:var(--navy)!important;background:var(--aqua)!important}
  .mobile-nav-business .mobile-main-action:not(.mobile-orders-action)>span svg{display:block!important;margin:0!important;transform:none!important}
  .taxi-passenger-app .mobile-nav.mobile-nav-business .mobile-main-action:not(.mobile-orders-action)>span{color:#171100!important;background:#ffc94a!important;box-shadow:0 6px 16px rgba(255,201,74,.3)!important}
}
.business-new-order-button{color:var(--navy)!important;background:var(--aqua)!important;box-shadow:0 9px 18px rgba(66,217,199,.24)!important}
.business-new-order-button:hover{background:#58e1d1!important;box-shadow:0 12px 22px rgba(66,217,199,.3)!important}
.business-new-order-button svg{display:block;margin:0}
@media(max-width:680px){
  .welcome-row .business-new-order-button{position:relative;display:block!important;align-self:flex-start;flex:0 0 48px;width:48px!important;min-width:48px;height:48px;min-height:48px;padding:0!important;border-radius:15px;font-size:0;line-height:0}
  .welcome-row .business-new-order-button svg{position:absolute;top:50%;left:50%;width:22px;height:22px;margin:0!important;transform:translate(-50%,-50%)!important}
}
.pickup-fixed-grid{gap:12px}.pickup-fixed-field{display:grid;gap:5px;min-height:66px;padding:12px 14px;background:#f2f8f5;border:1px solid #d8ebe3;border-radius:11px}.pickup-fixed-field>span{color:#32725f;font-size:12px;font-weight:700}.pickup-fixed-field>strong{font-size:15px;line-height:1.35}.pickup-fixed-note{display:flex;align-items:flex-start;gap:7px;margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.pickup-fixed-note svg{flex:0 0 15px;width:15px;height:15px;margin-top:1px;color:var(--green)}
.delivery-address-grid{align-items:start}.delivery-address-grid>label{align-content:start;min-width:0}.delivery-address-grid .municipality-control{width:100%}.delivery-address-grid input{height:48px;min-height:48px}
.delivery-address-heading{display:flex;align-items:baseline;justify-content:flex-start;gap:10px;min-width:0}
.delivery-address-heading>span:first-child{min-width:0}
.delivery-address-heading>.delivery-distance-estimate{flex:0 0 auto;color:#748092;font-size:11px;font-weight:400;white-space:nowrap}
.delivery-distance-estimate output{font-weight:400}
.delivery-distance-estimate output strong{font-weight:700}
.delivery-distance-label-short{display:none}
@media(max-width:680px){.delivery-address-heading>.delivery-distance-estimate{font-size:10px}}
@media(max-width:360px){.delivery-distance-label-full{display:none}.delivery-distance-label-short{display:inline}}
@media(max-width:360px){.delivery-address-heading>span:first-child{font-size:12px}}
@media(max-width:680px){.pickup-fixed-field{min-height:0}.pickup-fixed-field>span{font-size:13px}.pickup-fixed-field>strong{font-size:16px}.order-form .pickup-address-single>strong{font-size:14px}.pickup-fixed-note{font-size:12px!important}}
.business-location-policy{display:grid;gap:10px}.business-location-policy-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 14px;color:#73551f;background:#fff8e9;border:1px solid #f0dfb9;border-radius:12px}.business-location-policy-note>svg{width:20px;color:#b98222}.business-location-policy-note>span{display:grid;gap:3px}.business-location-policy-note b{font-size:13px}.business-location-policy-note small{color:#735f3a}.business-location-policy-note .button{min-height:38px;padding-inline:13px;font-size:12px}.business-location-policy-note.is-open{grid-template-columns:auto 1fr;color:#276c59;background:#eef9f5;border-color:#d7ebe3}.business-location-policy-note.is-open>svg{color:var(--green)}
@media(max-width:680px){.business-location-policy-note{grid-template-columns:auto 1fr}.business-location-policy-note .button{grid-column:1/-1;width:100%}}
.recipient-notes-field{margin-top:17px}.field-label-line{display:flex;align-items:baseline;gap:6px}.field-label-line .optional{font-size:12px;font-weight:400}
.recipient-fields-grid{align-items:start}.recipient-fields-grid>label{align-content:start}.recipient-fields-grid input{height:48px;min-height:48px}@media(min-width:681px){.form-grid.three.recipient-fields-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.three.recipient-fields-grid>label:last-child{grid-column:auto}}
.order-form input,.order-form select,.order-form textarea{font-weight:400}
.order-form .field-invalid{background:#fff7f7!important;border-color:var(--red)!important;box-shadow:0 0 0 3px rgba(221,76,87,.12)!important}.order-form .field-invalid:focus{box-shadow:0 0 0 4px rgba(221,76,87,.16)!important}
.order-form .pickup-fixed-field strong{font-family:inherit;font-weight:400}
.order-form .pickup-address-single{display:grid;gap:5px;min-width:0}.order-form .pickup-address-single>strong{min-width:0;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.vehicle-picker-field{display:grid;align-content:start;gap:4px;color:var(--ink);font-size:13px;font-weight:700}.vehicle-picker{position:relative}.vehicle-picker-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;height:48px;padding:10px 13px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;font-size:16px;font-weight:400;cursor:pointer}.vehicle-picker-toggle[aria-expanded="true"]{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}.vehicle-picker-selection{display:flex;align-items:center;gap:9px}.vehicle-picker-selection svg{width:21px;height:21px;color:var(--blue)}.vehicle-picker-chevron{width:16px;height:16px;color:var(--muted);transform:rotate(90deg);transition:transform .18s}.vehicle-picker-toggle[aria-expanded="true"] .vehicle-picker-chevron{transform:rotate(-90deg)}.vehicle-picker-menu{position:absolute;z-index:38;top:calc(100% + 6px);left:0;right:0;display:grid;gap:3px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 38px rgba(24,33,58,.16)}.vehicle-picker-menu[hidden]{display:none}.vehicle-picker-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 11px;color:var(--ink);background:transparent;border:0;border-radius:8px;font-size:15px;font-weight:400;text-align:left;cursor:pointer}.vehicle-picker-menu button:hover,.vehicle-picker-menu button:focus-visible{background:#edf2ff;outline:0}.vehicle-picker-menu button[aria-selected="true"]{color:var(--navy);background:#e7fbf7}.vehicle-picker-menu svg{width:21px;height:21px;color:var(--blue)}
.order-form .delivery-address-grid input[name="delivery_municipality"]{font-size:16px}
.delivery-recipient-share{grid-template-columns:auto 1fr}.delivery-recipient-share>span{grid-column:1/-1}.delivery-recipient-share .recipient-phone-link{grid-column:1;grid-row:2;letter-spacing:.025em}.delivery-recipient-share .recipient-whatsapp-link{display:grid;grid-column:2;grid-row:2;place-items:center;align-self:center;width:32px;height:32px;margin:0;padding:0;color:#fff;background:#168b5b;border-radius:9px;font-size:0}.delivery-recipient-share .recipient-whatsapp-link svg{width:17px;height:17px}.delivery-recipient-share .recipient-email-address,.delivery-recipient-share .recipient-email-send{grid-column:1/-1}@media(max-width:920px){.delivery-recipient-share .recipient-whatsapp-link{display:grid;justify-content:normal;width:32px;margin:0}}
.delivery-recipient-share .recipient-whatsapp-link{width:29px;height:29px;color:#fff;background:#168b5b;border-radius:8px;box-shadow:0 2px 6px rgba(22,139,91,.2)}.delivery-recipient-share .recipient-whatsapp-link svg{display:none}.delivery-recipient-share .recipient-whatsapp-link::before{content:"";display:block;width:19px;height:19px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M12 2a9.5 9.5 0 0 0-8.2 14.3L2.5 21.5l5.3-1.4A9.5 9.5 0 1 0 12 2Zm0 17.2a7.7 7.7 0 0 1-3.9-1.1l-.3-.2-3.1.8.8-3-.2-.3A7.7 7.7 0 1 1 12 19.2Zm4.2-5.8c-.2-.1-1.4-.7-1.6-.8-.2-.1-.4-.1-.5.1l-.7.9c-.1.2-.3.2-.5.1A6.2 6.2 0 0 1 9.8 11c-.2-.3.2-.4.5-.9.1-.1.1-.3 0-.4L9.6 7c-.1-.3-.3-.3-.5-.3h-.4c-.2 0-.4.1-.6.3-.2.2-.8.8-.8 2s.8 2.3.9 2.5c.1.2 1.7 2.6 4.1 3.6.6.2 1 .4 1.4.5.6.2 1.1.2 1.5.1.5-.1 1.4-.6 1.6-1.1.2-.5.2-1 .1-1.1-.1 0-.4-.1-.7-.2Z'/%3E%3C/svg%3E")}.delivery-recipient-share .recipient-whatsapp-link:hover{background:#11784e}@media(max-width:920px){.delivery-recipient-share .recipient-whatsapp-link{width:29px;height:29px}}
.detail-shell [data-order-collapsible]>.card-heading,.detail-shell [data-order-collapsible]>.panel-collapse-heading{width:100%;cursor:pointer}.detail-shell [data-order-collapsible] .panel-collapse-toggle{display:grid;place-items:center;order:99;flex:0 0 32px;width:32px;height:32px;margin-left:auto;padding:0;color:#34425f;background:transparent;border:0;border-radius:50%;box-shadow:none}.detail-shell [data-order-collapsible] .panel-collapse-toggle:hover{color:var(--navy);background:rgba(16,25,53,.06);border:0}.detail-shell [data-order-collapsible] .panel-collapse-toggle>span{display:block;box-sizing:border-box;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(225deg) translate(-1px,-1px);transition:transform .2s ease}.detail-shell [data-order-collapsible].is-collapsed .panel-collapse-toggle>span{transform:rotate(45deg) translate(-1px,-1px)}.detail-shell [data-order-collapsible].is-collapsed{padding-block:18px}.detail-shell .business-order-card>.card-heading{margin-bottom:18px}@media(max-width:680px){.detail-shell [data-order-collapsible] .panel-collapse-toggle{flex-basis:32px;width:32px;height:32px;color:#263652}.detail-shell [data-order-collapsible] .panel-collapse-toggle>span{width:9px;height:9px}}
.business-pickup-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:14px;padding:15px 16px;background:#f7f9fc;border:1px solid #e7eaf0;border-radius:13px}.business-pickup-data>div{display:grid;gap:3px;min-width:0}.business-pickup-data small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em}.business-pickup-data b{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}@media(max-width:680px){.business-pickup-data{grid-template-columns:1fr 1fr;gap:13px}.business-pickup-data>div:first-child{grid-column:1/-1}.business-pickup-data b{white-space:normal}.business-pickup-data .business-order-phone{grid-column:1/-1;justify-self:start;padding:3px 0}}
.large-route.route-stage-pickup>div:first-child,.large-route.route-stage-delivery>div:last-child{position:relative}.large-route.route-stage-pickup>div:first-child::before,.large-route.route-stage-delivery>div:last-child::before{content:"";position:absolute;z-index:0;inset:-10px -12px;background:#e7ecf5;border:1px solid #d5ddea;border-radius:12px;box-shadow:0 5px 14px rgba(16,25,53,.06)}.large-route.route-stage-pickup>div:first-child>span,.large-route.route-stage-delivery>div:last-child>span{position:relative;z-index:1}.large-route.route-stage-pickup>div:first-child small,.large-route.route-stage-pickup>div:first-child b{color:#172747}.large-route.route-stage-pickup>div:first-child i{background:var(--blue);border-color:var(--blue);animation:route-pickup-pulse 1.7s ease-in-out infinite}.large-route.route-stage-delivery>div:last-child::before{background:#fff0ed;border-color:#f3d8d2}.large-route.route-stage-delivery>div:last-child small,.large-route.route-stage-delivery>div:last-child b{color:#7c342d}.large-route.route-stage-delivery>div:last-child i{background:var(--coral);border-color:var(--coral);animation:route-delivery-pulse 1.7s ease-in-out infinite}@keyframes route-pickup-pulse{0%,100%{box-shadow:0 0 0 0 rgba(74,125,242,.34)}50%{box-shadow:0 0 0 8px rgba(74,125,242,0)}}@keyframes route-delivery-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,123,107,.32)}50%{box-shadow:0 0 0 8px rgba(255,123,107,0)}}@media(prefers-reduced-motion:reduce){.large-route.route-stage-pickup>div:first-child i,.large-route.route-stage-delivery>div:last-child i{animation:none}}
.verification-code-form{display:grid;gap:12px;margin-top:16px}.verification-code-form label{display:grid;gap:6px}.verification-code-form label>span{color:rgba(255,255,255,.78);font-size:12px;font-weight:700}.verification-code-form input[name="verification_code"]{height:58px;padding:8px 14px;color:var(--navy);background:#fff;border:2px solid transparent;border-radius:13px;font-size:26px;font-weight:850;letter-spacing:.24em;text-align:center}.verification-code-form input[name="verification_code"]:focus{border-color:var(--aqua);outline:0;box-shadow:0 0 0 4px rgba(66,217,199,.18)}.verification-owner-card{overflow:hidden}.verification-code{display:block;margin:17px 0 10px;padding:15px 12px;color:var(--navy);background:var(--aqua);border-radius:13px;font-size:31px;font-weight:900;letter-spacing:.22em;text-align:center}.verification-code-light{color:var(--navy);background:#e7fbf7;border:1px solid #bfece3}.verification-regenerate{display:block;margin:4px auto 0;padding:7px;color:inherit;background:transparent;border:0;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.action-card-primary .verification-regenerate{color:rgba(255,255,255,.72)}.verification-success{display:flex;align-items:center;gap:10px;margin:13px 0;padding:12px 13px;color:#176b50;background:#e4f7ef;border:1px solid #c9ebde;border-radius:12px}.verification-success>svg{flex:0 0 22px;width:22px;height:22px}.verification-success>span{display:grid;gap:2px}.verification-success b{font-size:12px}.verification-success small{font-size:10px;line-height:1.35}.evidence-grid-single{grid-template-columns:170px}.delivery-upload-grid-single{grid-template-columns:1fr}.delivery-upload-grid-single .delivery-upload-field{width:min(190px,100%);margin-inline:auto}.combined-delivery-form .delivery-upload-grid{margin-block:4px}.combined-delivery-form .delivery-note-field{margin-top:2px}@media(max-width:680px){.verification-code{font-size:28px}.verification-code-form input[name="verification_code"]{font-size:24px}.evidence-grid-single{grid-template-columns:1fr}}
.verification-code-form .combined-code-field.is-invalid input[name="verification_code"]{color:#8f2430;background:#fff1f2;border-color:#e65c66;box-shadow:0 0 0 4px rgba(221,76,87,.18)}
.verification-code-form .combined-code-field.is-invalid input[name="verification_code"]:focus{border-color:#e65c66;box-shadow:0 0 0 4px rgba(221,76,87,.24)}
.delivery-code-status.is-error{color:#ffb4ba;font-weight:750}
.combined-delivery-form .delivery-note-field textarea{font-size:13px!important;font-weight:400!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{grid-template-columns:68px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;justify-items:start;width:100%;margin-inline:0;column-gap:12px;text-align:left}.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{grid-column:1;grid-row:1/span 2}.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{grid-column:2;grid-row:1;align-self:end;min-height:0;font-size:11px;line-height:1.4}.combined-delivery-form .delivery-upload-grid-single .delivery-field-error{grid-column:2;grid-row:2;align-self:start}.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.has-photo::after{top:-4px;right:auto;left:54px}.combined-delivery-form .delivery-note-field textarea{height:54px;min-height:54px;max-height:110px;resize:vertical}

/* La foto queda cerca del código y su indicación se centra a su altura. */
.combined-delivery-form{gap:7px}.combined-delivery-form .delivery-upload-grid{margin-top:0}.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{grid-template-rows:minmax(68px,1fr) auto}.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{align-self:center}
.verification-owner-card.action-card-primary:has(.delivery-recipient-share)>.eyebrow{font-size:10px;letter-spacing:.11em}.verification-owner-card.action-card-primary:has(.delivery-recipient-share)>h2{margin:9px 0 8px;font-size:20px;line-height:1.2}.verification-owner-card.action-card-primary:has(.delivery-recipient-share)>p{margin:0;color:rgba(255,255,255,.9);font-size:14px;font-weight:400;line-height:1.55}@media(max-width:680px){.verification-owner-card.action-card-primary:has(.delivery-recipient-share)>h2{font-size:18px}.verification-owner-card.action-card-primary:has(.delivery-recipient-share)>p{font-size:14px}}
.delivery-code-share{grid-template-columns:1fr;margin:14px 0;padding:0;background:transparent;border:0;border-radius:0}.delivery-share-actions{display:flex;align-items:center;justify-content:flex-start;width:100%}.delivery-code-share .recipient-whatsapp-link{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;width:auto!important;height:48px!important;margin:0!important;padding:0 18px!important;color:#fff;background:#168b5b;border:0;border-radius:12px;box-shadow:0 5px 12px rgba(16,25,53,.16);font-size:12px!important;font-weight:850;cursor:pointer}.delivery-code-share .recipient-whatsapp-link::before{flex:0 0 23px;width:23px;height:23px}.delivery-code-share .recipient-whatsapp-link:hover{background:#11784e}.delivery-code-share .recipient-whatsapp-label{display:inline!important;color:#fff;font-size:12px;font-weight:850;line-height:1}
.verification-code-wrap{position:relative;width:min(240px,100%);margin:14px auto 10px}.verification-code-wrap .verification-code{box-sizing:border-box;width:100%;margin:0;padding:11px 52px 11px 13px;font-size:clamp(20px,6vw,24px);font-variant-numeric:tabular-nums;letter-spacing:.14em;white-space:nowrap}.verification-code-wrap>form{position:absolute;top:50%;right:12px;margin:0;transform:translateY(-50%)}.verification-code-refresh{display:grid;place-items:center;width:34px;height:34px;padding:0;color:#38516f;background:transparent;border:0;border-radius:0;cursor:pointer;transition:color .15s,transform .15s}.verification-code-refresh:hover{color:var(--navy);background:transparent;transform:rotate(18deg)}.verification-code-refresh svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.delivery-code-share .delivery-share-actions{display:flex;align-items:center;justify-content:center}.delivery-code-share .recipient-whatsapp-link{grid-column:auto!important;grid-row:auto!important;width:auto!important;max-width:100%;padding-inline:18px!important}

.detail-shell>.order-rating-final{width:100%;margin-top:20px}.detail-shell>.order-rating-final h2{margin-top:10px}@media(max-width:680px){.detail-shell>.order-rating-final{grid-template-columns:1fr;gap:16px;margin-top:15px}}

/* La ruta queda visualmente agrupada bajo su encabezado en ambos roles. */
.detail-shell .route-detail-card .large-route{margin-left:18px}
@media(max-width:680px){.detail-shell .route-detail-card .large-route{margin-left:14px}}

/* Lectura cómoda en los detalles del pedido, especialmente en pantallas móviles. */
.detail-shell .card-heading h2,.detail-shell .timeline-card h2{font-size:19px}.detail-shell .card-heading p{font-size:14px}.detail-shell .large-route small,.detail-shell .info-grid small,.detail-shell .contact-item small,.detail-shell .recipient-box small,.detail-shell .business-pickup-data small{font-size:12px;letter-spacing:.05em}.detail-shell .large-route b,.detail-shell .info-grid b,.detail-shell .contact-item b,.detail-shell .business-pickup-data b{font-size:15px}.detail-shell .large-route p,.detail-shell .recipient-address{font-size:13px}.detail-shell .contact-item a{font-size:13px}.detail-shell .timeline-event b{font-size:14px}.detail-shell .timeline-event small{font-size:12px;line-height:1.4}.detail-shell .timeline-event p{font-size:13px;line-height:1.5}.detail-shell .verification-code-form label>span,.detail-shell .verification-success b,.detail-shell .verification-success small,.detail-shell .verification-regenerate{font-size:12px}
@media(max-width:680px){.detail-shell .card-heading h2,.detail-shell .timeline-card h2{font-size:19px}.detail-shell .card-heading p{font-size:14px}.detail-shell .large-route small,.detail-shell .info-grid small,.detail-shell .contact-item small,.detail-shell .business-pickup-data small{font-size:12px}.detail-shell .large-route b,.detail-shell .info-grid b,.detail-shell .contact-item b,.detail-shell .business-pickup-data b{font-size:15px}.detail-shell .timeline-event b{font-size:14px}.detail-shell .timeline-event small{font-size:12px}.detail-shell .timeline-event p{font-size:13px}}

/* Tipografía legible en el panel móvil del mensajero. */
@media(max-width:920px){
  .courier-welcome h1{font-size:30px}
  .courier-welcome .courier-pickup-zones{font-size:14px;line-height:1.45}
  .courier-stats .stat-card small{font-size:13px!important}
  .courier-stats .stat-card strong{font-size:24px}
  .active-delivery-section .section-title-row h2{font-size:23px}
  .active-delivery-card .status-pill{font-size:13px!important}
  .active-step-copy>small{font-size:12px!important}
  .active-step-copy h3{font-size:19px}
  .active-location>span{font-size:12px}
  .active-location b{font-size:16px}
  .active-location p{font-size:14px;line-height:1.5}
  .active-delivery-meta span{font-size:12px}
  .active-delivery-meta b{font-size:15px}
  .active-delivery-meta p{font-size:14px;line-height:1.5}
  .offer-head>div b,.offer-package b{font-size:14px}
  .offer-route b{font-size:14px}
  .offer-package small,.offer-route small,.notice-card small{font-size:12px!important}
}

/* Conversación legible sin modificar la posición fija del chat. */
.conversation-page .chat-bubble p{font-size:17px!important;line-height:1.5}.conversation-page .chat-bubble small{font-size:12px!important;line-height:1.25}.conversation-page .conversation-security{padding:13px 16px;color:#34425f;background:#f0f2f5!important;border-color:#dce1e8;font-size:14px;font-weight:700;line-height:1.45}.conversation-page .conversation-security svg{flex-basis:20px;width:20px;height:20px;color:#536078}.conversation-page .conversation-heading>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 13px!important;font-size:14px!important;line-height:1.2}
@media(max-width:680px){.conversation-page .chat-bubble p{font-size:17px!important}.conversation-page .chat-bubble small{font-size:12px!important}.conversation-page .conversation-security{padding:12px 13px;font-size:14px!important}.conversation-page .conversation-heading>a{min-height:42px;padding:9px 11px!important;font-size:14px!important}}

/* Reputación visible debajo de cada foto del mensajero mostrada al negocio. */
.courier-rating-stack{display:grid;justify-items:center;align-content:start;gap:4px;flex:0 0 auto}.courier-score{display:inline-flex;align-items:center;justify-content:center;gap:3px;color:#a66c12;font-size:11px;font-weight:800;line-height:1.15;white-space:nowrap}.courier-score svg{flex:0 0 12px;width:12px;height:12px;fill:currentColor;stroke:currentColor}.assigned .courier-rating-stack{min-width:60px}.assigned .courier-score{font-size:10px}.assigned .courier-score svg{width:10px;height:10px}.contact-item .courier-rating-stack{min-width:76px}.conversation-courier-rating{min-width:66px}.conversation-courier-rating .courier-score{font-size:10px}
@media(max-width:680px){.assigned .courier-rating-stack{min-width:58px}.contact-item .courier-rating-stack{min-width:72px}.business-contact-grid .contact-item>.avatar{margin-inline:15px}.courier-score{font-size:11px}.conversation-courier-rating{min-width:62px}.conversation-courier-rating .courier-score{font-size:10px}}

/* Perfil legible en escritorio y móvil, sin provocar el zoom automático de iOS. */
.profile-shell .profile-banner h1{font-size:30px}.profile-shell .profile-banner p{font-size:15px;line-height:1.45}.profile-shell .profile-role{padding:3px 6px;background:rgba(66,217,199,.78);font-size:9px;backdrop-filter:blur(3px)}.profile-shell .rating-display{font-size:14px}.profile-shell .section-title-row h2,.profile-shell .profile-aside h2{font-size:21px}.profile-shell .section-title-row p{font-size:14px;line-height:1.45}.profile-shell .profile-form label{font-size:15px}.profile-shell .profile-form input,.profile-shell .profile-form select,.profile-shell .profile-form textarea{font-size:16px;font-weight:400}.profile-shell .profile-form label>small,.profile-shell .coverage-picker+small{font-size:13px!important;line-height:1.5}.profile-shell .coverage-toggle{font-size:15px;font-weight:400}.profile-shell .coverage-option,.profile-shell .coverage-all{font-size:14px}.profile-shell .identity-privacy b{font-size:15px}.profile-shell .identity-privacy small{font-size:13px!important;line-height:1.5}.profile-shell .pickup-fixed-field>span{font-size:14px}.profile-shell .pickup-fixed-field>strong{font-size:16px}.profile-shell .business-location-policy-note b{font-size:15px}.profile-shell .business-location-policy-note small{font-size:13px!important;line-height:1.5}.profile-shell .business-location-policy-note .button{font-size:14px}.profile-shell .profile-aside dt{font-size:13px!important}.profile-shell .profile-aside dd{font-size:15px;line-height:1.4}.profile-shell .profile-change-open,.profile-shell .profile-form>.button,.profile-shell .profile-aside .button{font-size:15px}.profile-change-heading h2{font-size:23px}.profile-change-card>p{font-size:14px}.profile-change-card label{font-size:14px}.profile-change-card input,.profile-change-card select,.profile-change-card textarea{font-size:16px}.profile-change-card label small{font-size:12px!important;line-height:1.45}.profile-change-actions .button{font-size:15px}
.profile-shell .profile-role.profile-role-taxi{color:#171100;background:#ffc94a;border-color:#1c2c58;backdrop-filter:none}
.taxi-profile-security{margin-top:14px}.taxi-profile-security .button{min-height:46px}
.profile-grid.profile-grid-taxi{grid-template-columns:minmax(0,1fr);gap:18px}.profile-grid-taxi>.profile-form,.profile-grid-taxi>.profile-aside{display:contents}.profile-grid-taxi .taxi-referral-profile-card{order:1}.profile-grid-taxi .taxi-profile-personal-card{order:2}.profile-grid-taxi .taxi-profile-rate{order:3}.profile-grid-taxi .taxi-special-routes-launch{order:4}.profile-grid-taxi .taxi-vehicle-manager-launch{order:5}.profile-grid-taxi .taxi-profile-security-card{order:6}#taxi-primary-comfort-form{display:none}
.taxi-profile-banner{position:relative}.taxi-profile-banner .profile-avatar-wrap{flex:0 0 auto}.taxi-profile-photo-action{position:absolute;z-index:4;top:-6px;right:-6px;display:grid;place-items:center;width:29px;height:29px;padding:0;color:#364152;background:#fff;border:2px solid #e2e7ee;border-radius:50%;box-shadow:0 3px 10px rgba(9,20,42,.2);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s}.taxi-profile-photo-action svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.taxi-profile-photo-action:hover,.taxi-profile-photo-action:focus-visible{color:#17233d;background:#f5f7fa;border-color:#c5ccd7;outline:2px solid rgba(255,255,255,.72);outline-offset:2px;transform:translateY(-1px)}.taxi-profile-photo-quick-status{position:absolute;z-index:3;top:-9px;left:calc(100% + 12px);display:grid;width:min(270px,calc(100vw - 130px));gap:3px;padding:10px 12px;color:#25334d;background:#fff;border:1px solid #dfe5ee;border-radius:11px;box-shadow:0 10px 28px rgba(6,19,43,.24);line-height:1.35;animation:taxiProfilePhotoStatusIn .16s ease-out}.taxi-profile-photo-quick-status::before{content:"";position:absolute;top:17px;left:-6px;width:10px;height:10px;background:#fff;border-left:1px solid #dfe5ee;border-bottom:1px solid #dfe5ee;transform:rotate(45deg)}.taxi-profile-photo-quick-status b{font-size:11px}.taxi-profile-photo-quick-status small{color:#68758a;font-size:10px}.taxi-profile-photo-quick-status[hidden]{display:none}@keyframes taxiProfilePhotoStatusIn{from{opacity:0;transform:translateX(-5px)}to{opacity:1;transform:translateX(0)}}.taxi-profile-identity-copy{display:grid;justify-items:start}.taxi-profile-photo-state{display:inline-flex;margin-top:9px;padding:5px 8px;color:#ffdf7d;background:rgba(255,201,74,.12);border:1px solid rgba(255,201,74,.26);border-radius:8px;font-size:11px;font-weight:750;line-height:1.25}
.taxi-driver-status-head .courier-availability-controls>form:has(.taxi-activation-vehicle){display:flex;align-items:end;gap:8px}.taxi-activation-vehicle{display:grid;gap:4px;min-width:min(210px,52vw)}.taxi-activation-vehicle>span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.taxi-activation-vehicle select{min-height:40px;max-width:210px;padding:8px 30px 8px 10px;color:var(--navy);background:#fff;border:1px solid #d7dde7;border-radius:10px;font-size:11px;font-weight:750}.taxi-activation-vehicle select:focus{border-color:#8e99aa;outline:3px solid rgba(53,68,96,.12)}
.taxi-profile-personal-card{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:18px}.taxi-profile-personal-card>.section-title-row{margin-bottom:0}.taxi-profile-account-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:12px}.taxi-profile-account-summary>div{display:grid;align-content:center;gap:4px;min-width:0;padding:12px 13px;background:#f8f9fb}.taxi-profile-account-summary dt{color:var(--muted);font-size:11px;font-weight:700}.taxi-profile-account-summary dd{margin:0;overflow-wrap:anywhere;color:var(--navy);font-size:14px;font-weight:750}.taxi-profile-personal-help{margin:0;color:var(--muted);font-size:13px}.taxi-profile-security-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}.taxi-profile-security-heading{display:flex;align-items:center;gap:11px}.taxi-profile-security-heading>span{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;color:#fff;background:var(--navy);border-radius:12px}.taxi-profile-security-heading svg{width:19px;height:19px}.taxi-profile-security-heading>div{display:grid;gap:2px}.taxi-profile-security-heading small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em}.taxi-profile-security-heading h2{margin:0!important}.taxi-profile-security-card>.button{min-width:210px}
@media(max-width:680px){.profile-grid.profile-grid-taxi{gap:13px}.taxi-profile-banner{align-items:center}.taxi-profile-photo-action{top:-5px;right:-5px;width:28px;height:28px}.taxi-profile-personal-card{gap:15px}.taxi-profile-account-summary{grid-template-columns:minmax(0,1fr)}.taxi-profile-security-card{grid-template-columns:minmax(0,1fr)}.taxi-profile-security-card>.button{width:100%;min-width:0}.taxi-profile-photo-state{font-size:10px}}
.taxi-profile-vehicle{display:grid;gap:17px;padding:19px;background:#fffaf0;border:1px solid #eed896;border-radius:16px}.taxi-profile-vehicle-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.taxi-profile-vehicle-heading>div{display:grid;gap:4px}.taxi-profile-vehicle-heading span{color:#9a6900;font-size:10px;font-weight:900;letter-spacing:.1em}.taxi-profile-vehicle-heading h2{margin:0;color:var(--navy);font-size:21px}.taxi-profile-vehicle-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.taxi-profile-vehicle-heading>svg{flex:0 0 40px;width:40px;height:40px;padding:9px;color:#171100;background:#ffc94a;border-radius:12px}.taxi-profile-vehicle-fields{margin:0}.taxi-profile-vehicle-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;background:#eadfbf;border:1px solid #eadfbf;border-radius:12px}.taxi-profile-vehicle-summary>div{display:grid;grid-column:span 2;gap:4px;padding:12px 14px;background:#fff}.taxi-profile-vehicle-summary>div:nth-child(n+4){grid-column:span 3}.taxi-profile-vehicle-summary dt{color:var(--muted);font-size:11px}.taxi-profile-vehicle-summary dd{margin:0;color:var(--navy);font-size:15px;font-weight:800;overflow-wrap:anywhere}.taxi-profile-vehicle-policy{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;color:#765817;background:#fff3cf;border:1px solid #ead79f;border-radius:11px}.taxi-profile-vehicle-policy.is-open{color:#225f50;background:#edf9f5;border-color:#cde9df}.taxi-profile-vehicle-policy>svg{flex:0 0 19px;width:19px;height:19px}.taxi-profile-vehicle-policy>span{display:grid;gap:2px}.taxi-profile-vehicle-policy b{font-size:12px}.taxi-profile-vehicle-policy small{font-size:11px;line-height:1.45}.taxi-profile-vehicle-edit-area{display:grid;gap:17px;min-width:0}.taxi-profile-vehicle-edit-area:not(.is-editing){display:none}.taxi-profile-vehicle-edit-area.is-editing+.taxi-profile-vehicle-summary-view{display:none}.taxi-profile-vehicle-edit-area>.taxi-vehicle-photo-grid{margin-top:0}.taxi-profile-vehicle-edit-actions{display:grid;justify-items:start;gap:7px}.taxi-profile-edit-toggle{min-width:132px}.taxi-profile-edit-toggle svg{width:17px;height:17px}.taxi-profile-edit-cancel{padding:2px 7px;color:#697489;background:transparent;border:0;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.taxi-profile-edit-cancel:hover,.taxi-profile-edit-cancel:focus-visible{color:#a3323e;text-decoration:underline;text-underline-offset:3px}@media(max-width:560px){.taxi-profile-vehicle{padding:16px}.taxi-profile-vehicle-summary>div{padding:11px 9px}.taxi-profile-vehicle-summary dt{font-size:9px}.taxi-profile-vehicle-summary dd{font-size:12px}.taxi-profile-vehicle-heading p{font-size:12px}.taxi-profile-vehicle-edit-actions,.taxi-profile-edit-toggle{width:100%}.taxi-profile-edit-cancel{justify-self:center}}
.taxi-profile-vehicle-main-actions{display:flex;flex-wrap:wrap;gap:9px}.taxi-profile-vehicle-main-actions .button svg,.taxi-additional-open-locked svg{width:17px;height:17px}.taxi-additional-open-locked{justify-self:start}.taxi-additional-vehicle-list{display:grid;gap:9px}.taxi-additional-vehicle-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 14px;background:#fff;border:1px solid #eadfbf;border-radius:12px}.taxi-additional-vehicle-list article>div{display:grid;gap:3px;min-width:0}.taxi-additional-vehicle-list strong{color:var(--navy);font-size:14px}.taxi-additional-vehicle-list small{color:var(--muted);font-size:11px;line-height:1.45}.taxi-additional-vehicle-list p{margin:3px 0 0;color:#9b3440;font-size:11px}.taxi-vehicle-state{flex:0 0 auto;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.taxi-vehicle-state.pending{color:#765817;background:#fff0bd}.taxi-vehicle-state.approved{color:#17624f;background:#dcf5eb}.taxi-vehicle-state.rejected{color:#98333f;background:#fde5e8}.taxi-additional-vehicle-form{display:grid;gap:17px}.taxi-additional-vehicle-form>summary{display:inline-flex;width:max-content;list-style:none;cursor:pointer}.taxi-additional-vehicle-form>summary::-webkit-details-marker{display:none}.taxi-additional-vehicle-form>summary svg{width:17px;height:17px}.taxi-additional-vehicle-form[open]>summary{color:#725200;background:#ffe7a2}.taxi-additional-vehicle-form>*:not(summary){margin-top:17px}.taxi-additional-vehicle-fields{display:grid;gap:17px}.taxi-additional-vehicles>.taxi-profile-vehicle-heading+details{margin-top:0}@media(max-width:560px){.taxi-profile-vehicle-main-actions,.taxi-profile-vehicle-main-actions .button,.taxi-additional-open-locked{width:100%}.taxi-additional-vehicle-list article{display:grid}.taxi-additional-vehicle-form>summary,.taxi-additional-vehicle-form>.button{width:100%}}
.taxi-vehicle-manager-launch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 19px}.taxi-vehicle-manager-icon{display:grid;place-items:center;width:78px;height:54px;background:transparent;border:0}.taxi-vehicle-manager-icon img{display:block;width:78px;height:54px;object-fit:contain;transform:scaleX(-1)}.taxi-vehicle-manager-launch>div{display:grid;gap:3px;min-width:0}.taxi-vehicle-manager-launch h2{margin:0!important;color:var(--navy);font-size:20px!important}.taxi-vehicle-manager-launch p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.taxi-vehicle-manager-launch>.button{min-width:190px}.taxi-vehicle-manager-launch>.button svg{width:17px;height:17px}
[data-taxi-vehicle-manager-panel]{margin-top:0}.taxi-vehicle-manager-dialog{position:fixed;inset:calc(80px + env(safe-area-inset-top,0px)) 14px max(16px,env(safe-area-inset-bottom,0px));box-sizing:border-box;width:min(1040px,calc(100% - 28px));height:auto;max-width:none;max-height:none;margin:0 auto;padding:0;overflow:hidden;background:transparent;border:0}.taxi-vehicle-manager-dialog::backdrop{background:rgba(8,20,38,.74);backdrop-filter:blur(6px)}.taxi-vehicle-manager-dialog-card{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden;background:#f3f6f9;border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:0 30px 90px rgba(8,20,38,.38)}.taxi-vehicle-manager-dialog-card>header{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;background:#fff;border-bottom:1px solid #dde3eb}.taxi-vehicle-manager-dialog-card>header>div{display:grid;gap:3px}.taxi-vehicle-manager-dialog-card>header small{color:#16866b;font-size:9px;font-weight:900;letter-spacing:.11em}.taxi-vehicle-manager-dialog-card>header h2{margin:0;color:var(--navy);font-size:24px;letter-spacing:-.025em}.taxi-vehicle-manager-dialog-card>header p{margin:0;color:var(--muted);font-size:11px}.taxi-vehicle-manager-dialog-card>header button{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;color:#fff;background:var(--navy);border:0;border-radius:13px;font-size:26px;line-height:1;cursor:pointer;box-shadow:0 5px 13px rgba(16,25,53,.18)}.taxi-vehicle-manager-dialog-card>header button:hover,.taxi-vehicle-manager-dialog-card>header button:focus-visible{color:var(--navy);background:#ffc94a}.taxi-vehicle-manager-dialog-body{display:grid;align-content:start;gap:16px;padding:20px;overflow:auto;overscroll-behavior:contain}.taxi-vehicle-manager-dialog .taxi-profile-vehicle{margin:0;padding:18px;background:#fff;border-color:#dce3eb;box-shadow:0 8px 22px rgba(20,34,57,.05)}body.taxi-vehicle-manager-open{overflow:hidden}
.taxi-special-routes-launch{padding:0;overflow:hidden}.taxi-special-routes-launch>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;min-height:72px;padding:14px 17px;color:var(--navy);background:#fff;border:0;font:inherit;text-align:left;cursor:pointer;transition:background .15s}.taxi-special-routes-launch>button:hover,.taxi-special-routes-launch>button:focus-visible{background:#f5f8ff;outline:0}.taxi-special-routes-launch>button>span:first-child{display:grid;place-items:center;width:42px;height:42px;color:#176bff;background:#e8efff;border-radius:12px}.taxi-special-routes-launch>button>span:first-child svg{width:21px;height:21px}.taxi-special-routes-launch-copy{display:grid;gap:3px;min-width:0}.taxi-special-routes-launch-copy b{font-size:16px}.taxi-special-routes-launch-copy small{color:var(--muted);font-size:11px;line-height:1.4}.taxi-special-routes-launch>button>svg{width:18px;height:18px;color:#6b7585}.taxi-special-routes-manager-dialog{position:fixed;inset:calc(80px + env(safe-area-inset-top,0px)) 14px max(16px,env(safe-area-inset-bottom,0px));box-sizing:border-box;width:min(920px,calc(100% - 28px));height:auto;max-width:none;max-height:none;margin:0 auto;padding:0;overflow:hidden;background:transparent;border:0}.taxi-special-routes-manager-dialog::backdrop{background:rgba(8,20,38,.74);backdrop-filter:blur(6px)}.taxi-special-routes-manager-card{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden;background:#f3f6f9;border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:0 30px 90px rgba(8,20,38,.38)}.taxi-special-routes-manager-card>header{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;background:#fff;border-bottom:1px solid #dde3eb}.taxi-special-routes-manager-card>header>div{display:grid;gap:3px}.taxi-special-routes-manager-card>header small{color:#16866b;font-size:9px;font-weight:900;letter-spacing:.11em}.taxi-special-routes-manager-card>header h2{margin:0;color:var(--navy);font-size:24px;letter-spacing:-.025em}.taxi-special-routes-manager-card>header p{margin:0;color:var(--muted);font-size:11px}.taxi-special-routes-manager-card>header button{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;color:#fff;background:var(--navy);border:0;border-radius:13px;font-size:26px;line-height:1;cursor:pointer;box-shadow:0 5px 13px rgba(16,25,53,.18)}.taxi-special-routes-manager-card>header button:hover,.taxi-special-routes-manager-card>header button:focus-visible{color:var(--navy);background:#ffc94a}.taxi-special-routes-manager-body{display:grid;align-content:start;padding:20px;overflow:auto;overscroll-behavior:contain}.taxi-special-routes-manager-body>.taxi-special-routes{margin:0;padding:20px;background:#fff;border-color:#dce3eb;box-shadow:0 8px 22px rgba(20,34,57,.05)}body.taxi-special-routes-manager-open{overflow:hidden}
.taxi-vehicle-comfort-panel{display:grid;gap:9px;padding:13px;color:#225f50;background:#edf9f5;border:1px solid #cde9df;border-radius:12px}.taxi-vehicle-comfort-heading{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px!important}.taxi-vehicle-comfort-heading>span{display:grid;place-items:center;width:25px;height:25px;color:#fff;background:#168b4a;border-radius:8px;font-size:12px}.taxi-vehicle-comfort-heading>div{display:grid;gap:2px;min-width:0}.taxi-vehicle-comfort-heading b{color:#174f42;font-size:13px}.taxi-vehicle-comfort-heading small{color:#3f7166;font-size:10px;line-height:1.45}.taxi-vehicle-comfort-heading em{align-self:start;font-style:normal}.taxi-vehicle-state.not_requested{color:#286958;background:#d6f0e8}.taxi-vehicle-comfort-panel>p{margin:0 0 0 34px!important;color:#3f7166!important;font-size:10px!important;line-height:1.45}.taxi-vehicle-comfort-panel>form{margin-left:34px}.taxi-vehicle-comfort-panel>.taxi-vehicle-comfort-action{margin-left:34px}.taxi-vehicle-comfort-action{justify-self:start;padding:0;color:#13755e;background:transparent;border:0;font:inherit;font-size:11px;font-weight:900;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.taxi-vehicle-comfort-action:hover,.taxi-vehicle-comfort-action:focus-visible{color:#0c4f40}.taxi-additional-vehicle-list article{display:grid;gap:12px;padding:14px}.taxi-additional-vehicle-card-heading{display:flex!important;align-items:flex-start;justify-content:space-between;gap:12px}.taxi-additional-vehicle-card-heading>div{display:grid;gap:3px;min-width:0}.taxi-additional-vehicle-list .taxi-vehicle-review-note{margin:0;color:#9b3440}.taxi-additional-comfort-option{align-items:flex-start;gap:14px;color:#225f50;background:#edf9f5;border:1px solid #cde9df;cursor:pointer}.taxi-additional-comfort-option>span{flex:1 1 auto;gap:4px;min-width:0}.taxi-additional-comfort-option>span small{color:#3f7166}.taxi-additional-comfort-option>input{inset:0;width:100%;height:100%;margin:0;cursor:pointer}.taxi-additional-comfort-option>i{flex:0 0 48px;box-sizing:border-box;width:48px;height:28px;margin:0;background:#bdc7c4;border:1px solid #a9b5b2;box-shadow:inset 0 1px 2px rgba(16,25,53,.1)}.taxi-additional-comfort-option>i::after{top:3px;left:3px;width:20px;height:20px}.taxi-additional-comfort-option>input:checked+i{background:#168b4a;border-color:#11713d}.taxi-additional-comfort-option>input:checked+i::after{transform:translateX(20px)}.taxi-additional-comfort-option>input:focus-visible+i{outline:3px solid rgba(22,139,74,.2);outline-offset:2px}
@media(max-width:620px){.taxi-vehicle-manager-launch{grid-template-columns:auto minmax(0,1fr)}.taxi-vehicle-manager-launch>.button{grid-column:1/-1;width:100%;min-width:0}.taxi-vehicle-manager-dialog{inset:calc(70px + env(safe-area-inset-top,0px)) 6px max(8px,env(safe-area-inset-bottom,0px));width:auto;height:auto}.taxi-vehicle-manager-dialog-card{border-radius:18px}.taxi-vehicle-manager-dialog-card>header{padding:14px 14px 13px}.taxi-vehicle-manager-dialog-card>header h2{font-size:21px}.taxi-vehicle-manager-dialog-card>header p{max-width:245px}.taxi-vehicle-manager-dialog-card>header button{width:44px;height:44px}.taxi-vehicle-manager-dialog-body{gap:12px;padding:12px}.taxi-vehicle-manager-dialog .taxi-profile-vehicle{padding:15px;border-radius:15px}.taxi-vehicle-comfort-heading{grid-template-columns:auto minmax(0,1fr)}.taxi-vehicle-comfort-heading>em{grid-column:2;justify-self:start}.taxi-additional-vehicle-card-heading{display:grid!important}.taxi-additional-vehicle-card-heading>.taxi-vehicle-state{justify-self:start}}
@media(max-width:620px){.taxi-special-routes-manager-dialog{inset:calc(70px + env(safe-area-inset-top,0px)) 6px max(8px,env(safe-area-inset-bottom,0px));width:auto;height:auto}.taxi-special-routes-manager-card{border-radius:18px}.taxi-special-routes-manager-card>header{padding:14px 14px 13px}.taxi-special-routes-manager-card>header h2{font-size:21px}.taxi-special-routes-manager-card>header p{max-width:245px}.taxi-special-routes-manager-card>header button{width:44px;height:44px}.taxi-special-routes-manager-body{padding:12px}.taxi-special-routes-manager-body>.taxi-special-routes{padding:15px;border-radius:15px}}
@media(max-width:680px){.profile-shell .profile-banner h1{font-size:26px}.profile-shell .profile-banner p{font-size:15px}.profile-shell .section-title-row h2,.profile-shell .profile-aside h2{font-size:20px}.profile-shell .section-title-row p{font-size:14px}.profile-shell .profile-form label{font-size:15px}.profile-shell .profile-aside dt{font-size:13px!important}.profile-shell .profile-aside dd{font-size:15px}.profile-change-heading h2{font-size:21px}}
.profile-contact-grid{align-items:start}.profile-contact-grid>label{align-content:start}.profile-phone-field{align-self:start}
.profile-form>.button[type="submit"]{margin-top:12px}
.profile-logout-form{margin-top:8px}
.coverage-toggle{height:auto;align-items:flex-start}.coverage-toggle [data-coverage-summary]{min-width:0;padding-right:8px;line-height:1.4;overflow-wrap:anywhere}.coverage-toggle svg{flex:0 0 17px;margin-top:2px}.profile-shell .coverage-control>.coverage-chips:not(:empty)+.coverage-toggle{align-items:center}.profile-shell .coverage-control>.coverage-chips:not(:empty)+.coverage-toggle svg{margin-top:0}
.profile-unsaved-dialog{width:min(510px,calc(100% - 24px));margin:auto}.profile-unsaved-dialog::backdrop{background:rgba(8,20,38,.7);backdrop-filter:blur(5px)}.profile-unsaved-dialog .app-confirm-card{display:grid;grid-template-columns:1fr;gap:22px;padding:28px;background:linear-gradient(180deg,#fff,#fbfcfe);border:1px solid rgba(255,255,255,.75);border-radius:24px;box-shadow:0 28px 80px rgba(8,20,38,.32)}.profile-unsaved-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px}.profile-unsaved-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;color:#624600;background:#ffc94a;border-radius:16px;box-shadow:0 9px 22px rgba(255,201,74,.28)}.profile-unsaved-icon svg{width:25px;height:25px}.profile-unsaved-dialog .app-confirm-copy>small{display:block;color:#936500;font-size:11px!important;font-weight:900;letter-spacing:.11em}.profile-unsaved-dialog .app-confirm-copy h2{margin:5px 0 9px;color:var(--navy);font-size:25px;line-height:1.2;letter-spacing:-.03em}.profile-unsaved-dialog .app-confirm-copy p{max-width:370px;color:#566176;font-size:16px;line-height:1.55}.profile-unsaved-actions{grid-column:auto;grid-template-columns:1fr 1fr;grid-template-areas:"save save" "stay discard";gap:10px;margin-top:0;padding-top:19px;border-top:1px solid #e5e9f0}.profile-unsaved-actions .button{min-height:50px;padding:11px 14px;border-radius:12px;font-size:15px;line-height:1.2}.profile-unsaved-actions [data-profile-unsaved-save]{grid-area:save;color:var(--navy);background:var(--aqua);border-color:var(--aqua);box-shadow:0 8px 20px rgba(66,217,199,.22)}.profile-unsaved-actions [data-profile-unsaved-stay]{grid-area:stay}.profile-unsaved-actions [data-profile-unsaved-discard]{grid-area:discard;color:#a43e48;background:#fff;border:1px solid #edc9ce;text-decoration:none}.profile-unsaved-actions [data-profile-unsaved-discard]:hover{color:#fff;background:#b5424d;border-color:#b5424d}
@media(max-width:520px){.profile-unsaved-dialog{width:calc(100% - 18px)}.profile-unsaved-dialog .app-confirm-card{gap:19px;padding:22px 18px;border-radius:21px}.profile-unsaved-head{grid-template-columns:1fr;gap:13px}.profile-unsaved-icon{width:46px;height:46px;border-radius:14px}.profile-unsaved-dialog .app-confirm-copy h2{font-size:23px}.profile-unsaved-dialog .app-confirm-copy p{font-size:16px}.profile-unsaved-actions{grid-template-columns:1fr;grid-template-areas:"save" "stay" "discard";gap:9px;padding-top:17px}.profile-unsaved-actions .button{min-height:50px;padding:11px 12px;font-size:15px}}
.business-history-overview{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px}.business-history-route,.business-history-info-card,.business-history-state{padding:13px 15px}.business-history-info-grid{border-color:#e2e5eb}.business-history-recipient{padding-left:18px}.business-history-state,.business-history-state.order-state-entregado,.business-history-state.order-state-entrega_reportada,.business-history-state.order-state-cancelado{background:transparent}.business-history-tags span{padding:0;color:#657087;background:transparent}.business-history-tags span:not(:last-child)::after{content:" ·"}.business-history-call{padding:0;color:var(--blue);background:transparent;border:0;border-radius:0}.business-history-list .history-order>summary{grid-template-columns:auto auto minmax(0,1fr) auto auto}.business-history-list .history-order>summary>.history-chevron{grid-column:1;grid-row:1;width:7px;height:7px;margin:0 2px 3px 1px;overflow:visible;color:transparent;border-right:1.5px solid #a3aab7;border-bottom:1.5px solid #a3aab7;transform:rotate(45deg)}.business-history-list .history-chevron use{display:none}.business-history-list .history-order[open]>summary>.history-chevron{margin:3px 2px 0 1px;transform:rotate(-135deg)}.business-history-list .history-order>summary>.package-mark{grid-column:2;grid-row:1}.business-history-list .history-order>summary>.history-order-title{grid-column:3;grid-row:1}.business-history-list .history-order>summary>.status-pill,.business-history-list .history-order>summary>.history-rating-action{grid-column:4;grid-row:1}.business-history-list .history-order>summary>strong{grid-column:5;grid-row:1}@media(max-width:760px){.business-history-recipient{padding-left:15px}.business-history-list .history-order>summary{grid-template-columns:auto auto minmax(0,1fr) auto}.business-history-list .history-order>summary>.status-pill{grid-column:3/4;grid-row:2}.business-history-list .history-order>summary>.history-rating-action{grid-column:3/-1;grid-row:2}.business-history-list .history-order>summary>strong{grid-column:4;grid-row:1}.business-history-list .history-order>summary>.history-chevron{grid-column:1;grid-row:1;justify-self:start}}
.business-history-list .business-history-section-label{font-size:10px}.business-history-list .business-history-location small{font-size:10px}.business-history-list .business-history-location b,.business-history-list .business-history-info-card>b,.business-history-list .business-history-state b{font-size:14px}.business-history-list .business-history-location em,.business-history-list .business-history-info-card>p,.business-history-list .business-history-state p{font-size:12px}.business-history-list .business-history-tags span{font-size:11px}.business-history-list .business-history-recipient>a{font-size:13px}.business-history-list .business-history-courier>div>small{font-size:10px}.business-history-list .business-history-courier em{font-size:11px}.business-history-list .business-history-call small{font-size:9px}.business-history-list .business-history-call b{font-size:12px}@media(max-width:760px){.business-history-list .business-history-section-label,.business-history-list .business-history-location small,.business-history-list .business-history-courier>div>small{font-size:10px}.business-history-list .business-history-location b,.business-history-list .business-history-info-card>b,.business-history-list .business-history-state b{font-size:14px}.business-history-list .business-history-location em,.business-history-list .business-history-info-card>p,.business-history-list .business-history-state p{font-size:12px}}
.notification-list-empty{overflow:visible;background:transparent;border:0;box-shadow:none}.notification-empty-message{margin:8px 0;padding:0;color:var(--muted);font-size:15px;line-height:1.5}
.notification-empty-state{display:grid;justify-items:center;width:min(390px,100%);box-sizing:border-box;margin:30px auto 0;padding:38px 24px;color:#101935;background:#fff;border:1px solid #e1e6ec;border-radius:22px;box-shadow:0 14px 38px rgba(16,25,53,.08);text-align:center}.notification-empty-state>span{display:grid;place-items:center;width:58px;height:58px;margin-bottom:17px;color:#171100;background:#ffc94a;border-radius:18px}.notification-empty-state svg{width:27px;height:27px}.notification-empty-state h2{margin:0;font-size:22px;letter-spacing:-.025em}.notification-empty-state p{margin:7px 0 0;color:#596579;font-size:14px}.notification-empty-state small{max-width:280px;margin-top:8px;color:#8a94a5;font-size:11px;line-height:1.45}
@media(max-width:680px){.notification-empty-message{font-size:15px}}
@media(max-width:680px){.notifications-page .narrow-shell{padding-top:25px}.notification-empty-state{margin-top:18px;padding:32px 20px;border-radius:20px}.notification-empty-state>span{width:54px;height:54px}.notification-empty-state h2{font-size:21px}}
.business-dashboard-sync{display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-size:11px;font-weight:750;white-space:nowrap}.business-dashboard-sync[hidden]{display:none!important}.business-dashboard-sync>i{width:13px;height:13px;border:2px solid #b8c9ef;border-top-color:var(--blue);border-radius:50%;animation:installProgressSpin .75s linear infinite}.is-live-refreshing #tus-pedidos{opacity:.72;transition:opacity .16s}@media(max-width:480px){.business-dashboard-sync{font-size:10px}.is-live-refreshing #tus-pedidos{opacity:.8}}

/* Espera activa: pulso verde suave hasta que la tienda confirme la entrega. */
.active-delivery-card.active-stage-review{color:#fff;background:var(--navy);border:0;animation:none}.active-stage-review .active-step-copy>small{color:var(--aqua)}.active-stage-review .active-step-copy h3{color:#fff}.active-stage-review .active-guidance{color:rgba(255,255,255,.68)!important}.active-stage-review .active-step-icon{color:#176b50;background:#dff6ed}.waiting-confirmation-card{color:var(--ink);background:#eefaf5;border:1px solid #bfe3d3;animation:waiting-confirmation-pulse 2.4s ease-in-out infinite}.waiting-confirmation-card .eyebrow{color:#237a60}.waiting-confirmation-card p{color:#49675d}.waiting-confirmation-card h2{color:var(--ink)}
@keyframes waiting-confirmation-pulse{0%,100%{background-color:#f2fbf7;box-shadow:0 12px 28px rgba(31,122,85,.08)}50%{background-color:#dff5eb;box-shadow:0 16px 34px rgba(31,122,85,.16)}}
@media(prefers-reduced-motion:reduce){.waiting-confirmation-card{animation:none;background:#e8f8f1}}
.delivery-sent-card .delivery-sent-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:4px;color:#237a60;background:#d4f0e3;border-radius:12px}.delivery-sent-card .delivery-sent-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.detail-heading>.status-pill.status-entrega_reportada{font-size:10px!important;line-height:1.3}
@media(max-width:920px){.detail-heading>.status-pill.status-entrega_reportada{font-size:11px!important}}

/* Acción final al crear un pedido: centrada y con el verde principal del negocio. */
.order-submit-row{display:flex;justify-content:flex-start;text-align:left}.order-submit-row>div{justify-content:flex-start}.order-publish-actions{display:flex;justify-content:center;padding-top:2px}.order-publish-submit{min-width:220px;color:var(--navy)!important;background:var(--aqua)!important;box-shadow:0 9px 18px rgba(66,217,199,.24)!important}.order-publish-submit:hover:not(:disabled){background:#58e1d1!important;box-shadow:0 12px 22px rgba(66,217,199,.3)!important}
@media(max-width:680px){.order-publish-actions .order-publish-submit{width:min(100%,280px)}}
.admin-email-test hr{width:100%;margin:2px 0;border:0;border-top:1px solid var(--line)}
.email-template-editor label>small{color:var(--muted);font-size:11px;font-weight:500}.email-template-preview-footer{margin-top:18px!important;padding-top:15px;border-top:1px solid var(--line);color:#40516d}.email-template-preview-footer[hidden]{display:none}
.email-template-preview-heading{display:flex;align-items:center;gap:11px;margin-top:12px}.email-template-preview-heading>b{margin:0!important}.email-template-preview-heading>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#168275;background:#e9faf7;border-radius:11px}.email-template-preview-heading>span.security{color:#16765c;background:#e8f8f3}.email-template-preview-heading>span.account{color:#3d68bf;background:#edf3ff}.email-template-preview-heading>span.message{color:#6652b8;background:#f0edff}.email-template-preview-heading>span.notice{color:#a36b13;background:#fff3dd}.email-template-preview-heading svg{width:22px;height:22px}
.email-template-preview-brand{display:flex;align-items:center;gap:10px;margin:12px -16px 16px;padding:14px 16px;background:#101935}.email-template-preview-brand img{width:42px;height:42px;border-radius:12px}.email-template-preview-brand>span{display:grid;gap:2px}.email-template-preview-brand b{color:#fff;font-size:17px}.email-template-preview-brand small{color:#42d9c7!important;font-size:9px!important;letter-spacing:.03em}
.email-template-preview-brand.is-taxi{box-shadow:inset 0 -3px #ffc94a}.email-template-preview-brand.is-taxi img{background:#ffc94a}.email-template-preview-brand.is-taxi small{color:#ffc94a!important}.email-template-preview-brand .email-taxi-r{color:#ffc94a}
.email-template-preview-body{display:grid;gap:0}.email-template-preview-body>p{margin-bottom:0}

/* Envíos generales desde administración */
.admin-broadcast-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:18px}.admin-broadcast-editor{display:grid;gap:15px}.broadcast-section{display:grid;gap:17px}.broadcast-section-heading{display:flex;align-items:flex-start;gap:11px}.broadcast-section-heading>span{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;color:#fff;background:var(--blue);border-radius:9px;font-size:12px;font-weight:850}.broadcast-section-heading h2{margin:1px 0 3px}.broadcast-section-heading p{margin:0;color:var(--muted);font-size:12px}.broadcast-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.broadcast-filter-grid label,.broadcast-compose-section>label{display:grid;gap:6px;font-size:13px;font-weight:750}.broadcast-filter-grid select{width:100%;min-width:0}.broadcast-recipient-count{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;color:#225746;background:#eaf8f2;border:1px solid #cfeade;border-radius:11px}.broadcast-recipient-count>span{font-size:14px;font-weight:850}.broadcast-recipient-count>small{color:#557068;font-size:11px;text-align:right}.broadcast-recipient-count.is-loading{color:#6c7484;background:#f5f6f9;border-color:var(--line)}.broadcast-recipient-count.is-error{color:#983943;background:#fff0f1;border-color:#f0cdd1}.broadcast-channel-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.broadcast-channel-list>label{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.broadcast-channel-list input{flex:0 0 auto;width:18px;min-height:18px;margin-top:1px;accent-color:var(--blue)}.broadcast-channel-list span{display:grid;gap:3px}.broadcast-channel-list b{font-size:13px}.broadcast-channel-list small{color:var(--muted);font-size:11px;line-height:1.4}.broadcast-channel-list .is-unavailable{opacity:.58;cursor:not-allowed}.broadcast-settings-link{width:max-content;color:var(--blue);font-size:12px;font-weight:800}.broadcast-icon-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.broadcast-icon-list label{cursor:pointer}.broadcast-icon-list input{position:absolute;opacity:0;pointer-events:none}.broadcast-icon-list label>span{display:grid;justify-items:center;gap:7px;padding:11px 5px;border:1px solid var(--line);border-radius:11px;color:var(--muted);transition:.15s}.broadcast-icon-list i{display:grid;place-items:center;width:38px;height:38px;color:var(--blue);background:#edf2ff;border-radius:11px}.broadcast-icon-list svg{width:21px;height:21px}.broadcast-icon-list b{font-size:10px}.broadcast-icon-list input:checked+span{color:var(--navy);background:#edf2ff;border-color:#8fa9e3;box-shadow:0 0 0 2px rgba(58,98,185,.1)}.broadcast-icon-list input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}.broadcast-variable-list{display:grid;gap:7px;padding:12px;background:#f4f6fa;border-radius:11px}.broadcast-variable-list>small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.09em}.broadcast-variable-list>div{display:flex;flex-wrap:wrap;gap:6px}.broadcast-variable-list button{padding:6px 8px;color:#36547f;background:#fff;border:1px solid #dce4f5;border-radius:7px;font:700 10px monospace;cursor:pointer}.broadcast-compose-section textarea{resize:vertical;line-height:1.55}.broadcast-compose-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.broadcast-compose-footer>small{color:var(--muted);font-size:11px}.admin-broadcast-previews{position:sticky;top:18px;display:grid;gap:14px}.broadcast-preview-panel{padding:0;overflow:hidden}.broadcast-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 17px;border-bottom:1px solid var(--line)}.broadcast-preview-heading small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em}.broadcast-preview-heading h2{margin:3px 0 0;font-size:15px}.broadcast-preview-heading>span{padding:5px 8px;color:var(--muted);background:#f1f3f7;border-radius:9px;font-size:9px}.push-device-preview{padding:20px;background:linear-gradient(145deg,#dde7f3,#f4f6fa);border-radius:0 0 15px 15px}.push-device-status{display:flex;justify-content:space-between;margin:0 4px 11px;color:#566276;font-size:9px;font-weight:800}.push-preview-card{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:13px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.7);border-radius:15px;box-shadow:0 9px 23px rgba(31,46,75,.12)}.push-preview-card img{width:38px;height:38px;border-radius:10px}.push-preview-card>div{display:grid;gap:3px;min-width:0}.push-preview-card small{color:#788295;font-size:8px;font-weight:800}.push-preview-card b{overflow-wrap:anywhere;font-size:12px;line-height:1.35}.push-preview-card p{margin:0;color:#4b566a;font-size:10px;line-height:1.4;white-space:pre-wrap}.broadcast-email-preview{padding:0 17px 18px}.broadcast-email-preview .email-template-preview-brand{margin:0 -17px 17px}.broadcast-email-subject{display:flex;align-items:center;gap:10px}.broadcast-email-subject>i{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;color:#a36b13;background:#fff3dd;border-radius:11px}.broadcast-email-subject svg{width:22px;height:22px}.broadcast-email-subject b{overflow-wrap:anywhere;font-size:14px;line-height:1.35}.broadcast-email-preview>p{margin:15px 0;color:#35405a;font-size:12px;line-height:1.55;white-space:pre-wrap}.broadcast-email-preview>footer{padding-top:13px;color:#657086;border-top:1px solid var(--line);font-size:10px;line-height:1.55}.broadcast-preview-note{padding:13px 15px;color:#536078;background:#e9edf5;border-radius:12px}.broadcast-preview-note b{font-size:11px}.broadcast-preview-note p{margin:3px 0 0;font-size:10px;line-height:1.5}.admin-broadcast-history{margin-top:20px;padding:0;overflow:hidden}.admin-broadcast-history>.admin-panel-title{padding:20px 21px 12px}.admin-broadcast-history td:nth-child(2){max-width:310px;white-space:normal}.admin-broadcast-history td:nth-child(2)>b,.admin-broadcast-history td>small{display:block}.admin-broadcast-history td:nth-child(2)>small{margin-top:4px;line-height:1.4}
@media(max-width:1050px){.admin-broadcast-layout{grid-template-columns:minmax(0,1fr) 330px}.broadcast-filter-grid{grid-template-columns:1fr 1fr}.broadcast-filter-grid label:last-child{grid-column:1/-1}.broadcast-icon-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.admin-broadcast-layout{grid-template-columns:1fr}.admin-broadcast-previews{position:static;grid-template-columns:1fr 1fr}.broadcast-preview-note{grid-column:1/-1}.broadcast-filter-grid{grid-template-columns:1fr}.broadcast-filter-grid label:last-child{grid-column:auto}}
@media(max-width:560px){.admin-broadcast-previews,.broadcast-channel-list{grid-template-columns:1fr}.broadcast-icon-list{grid-template-columns:repeat(2,1fr)}.broadcast-recipient-count,.broadcast-compose-footer{align-items:flex-start;flex-direction:column}.broadcast-recipient-count>small{text-align:left}.broadcast-compose-footer .button{width:100%}}
.broadcast-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.broadcast-audience-filter{grid-column:1/-1}.broadcast-check-group{min-width:0;margin:0;padding:0;border:0}.broadcast-check-group legend{display:flex;align-items:baseline;justify-content:space-between;width:100%;margin-bottom:6px;font-size:13px;font-weight:750}.broadcast-check-group legend small{color:var(--muted);font-size:9px;font-weight:600}.broadcast-check-options{display:grid;align-content:start;gap:5px;max-height:230px;padding:7px;overflow:auto;background:#f7f9fc;border:1px solid var(--line);border-radius:11px}.broadcast-filter-grid .broadcast-check-options label{display:flex;align-items:center;gap:8px;min-height:35px;padding:7px 9px;background:#fff;border:1px solid #e5e9f0;border-radius:8px;font-size:11px;font-weight:700;line-height:1.25;cursor:pointer}.broadcast-check-options label:has(input:checked){color:#244f9e;background:#edf3ff;border-color:#aabde9}.broadcast-check-options input{flex:0 0 auto;width:16px;min-height:16px;margin:0;accent-color:var(--blue)}.broadcast-check-options span{display:flex;align-items:baseline;justify-content:space-between;gap:7px;width:100%}.broadcast-check-options span small{color:var(--muted);font-size:8px;font-weight:600}@media(max-width:780px){.broadcast-filter-grid{grid-template-columns:1fr}.broadcast-audience-filter{grid-column:auto}}
.broadcast-multi-picker{position:relative;min-width:0}.broadcast-multi-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:13px;font-weight:750}.broadcast-multi-label small{color:var(--muted);font-size:9px;font-weight:600}.broadcast-multi-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:46px;padding:10px 12px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;font:inherit;font-size:12px;font-weight:650;text-align:left;cursor:pointer}.broadcast-multi-toggle:hover,.broadcast-multi-toggle[aria-expanded="true"]{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}.broadcast-multi-toggle span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.broadcast-multi-toggle svg{flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}.broadcast-multi-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}.broadcast-multi-menu{position:absolute;z-index:60;top:calc(100% + 6px);right:0;left:0;display:grid;gap:4px;max-height:285px;padding:7px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px rgba(24,33,58,.18)}.broadcast-multi-menu[hidden]{display:none!important}.broadcast-filter-grid .broadcast-multi-menu label{display:flex;align-items:center;gap:9px;min-height:39px;padding:8px 10px;background:#fff;border-radius:8px;font-size:12px;font-weight:600;line-height:1.25;cursor:pointer}.broadcast-multi-menu label:hover{background:#f2f6ff}.broadcast-multi-menu label:has(input:checked){color:#176b50;background:#eaf9f4}.broadcast-multi-menu input{flex:0 0 18px;width:18px;min-height:18px;margin:0;accent-color:var(--green)}.broadcast-multi-menu span{display:flex;align-items:baseline;justify-content:space-between;gap:7px;width:100%}.broadcast-multi-menu span small{color:var(--muted);font-size:9px;font-weight:500}
.broadcast-email-preview>footer{white-space:pre-line}
.email-global-footer{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(320px,1.25fr);gap:28px;margin-top:18px;padding:21px 22px;border-color:#cfdaf0}.email-global-footer-copy>small{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.1em}.email-global-footer-copy h2{margin:5px 0 7px}.email-global-footer-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.email-global-footer form{display:grid;gap:12px}.email-global-footer label{display:grid;gap:6px;font-size:12px;font-weight:750}.email-global-footer textarea{resize:vertical;line-height:1.55}.email-global-footer-preview{padding:12px 14px;background:#f4f6fb;border-radius:10px}.email-global-footer-preview small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.08em}.email-global-footer-preview p{margin:7px 0 0;color:#40516d;font-size:12px;line-height:1.5;white-space:pre-wrap}.email-global-footer form>.button{justify-self:end}@media(max-width:760px){.email-global-footer{grid-template-columns:1fr}.email-global-footer form>.button{justify-self:stretch}}
.email-verification-card{max-width:560px}.email-verification-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:18px;color:#176b50;background:#def5ea;border-radius:17px}.email-verification-icon svg{width:25px;height:25px}.email-code-form input[name="code"]{font-size:30px;font-weight:850;letter-spacing:.28em;text-align:center;font-variant-numeric:tabular-nums}.email-code-form label>small{color:var(--muted);font-size:11px;font-weight:500}.email-code-resend{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0;padding:13px 15px;background:#f2f5fa;border-radius:11px}.email-code-resend p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.email-code-resend button{padding:4px;color:var(--blue);background:transparent;border:0;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}@media(max-width:560px){.email-code-resend{align-items:flex-start;flex-direction:column}.email-code-form input[name="code"]{font-size:26px}}

.email-code-card .email-code-intro,.email-code-card .email-code-inbox-note{color:var(--muted);font-size:13px;line-height:1.55}
.email-code-card .email-code-intro{margin:0 0 8px}
.email-code-card .email-code-inbox-note{margin:0 0 24px}
.email-code-card .email-code-form label{font-size:12px}
.email-code-card .email-code-form>.button{font-size:13px}
.email-code-card .email-code-resend button{font-size:11px}
.email-code-card .back-link{font-size:12px}

/* El importe comparte una fila real con el título del pedido. */
.detail-shell .detail-heading{display:block}
.detail-heading-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.detail-heading-title-line>div{min-width:0}
.detail-heading-title-line .detail-price{flex:0 0 auto;margin-top:13px;white-space:nowrap}

/* Legibilidad del detalle de pedido, sin alterar su estructura. */
.detail-shell .back-link{font-size:14px}
.detail-shell .status-pill{font-size:12px}
.detail-shell .detail-heading p{font-size:14px;line-height:1.45}
.detail-shell .detail-price small{font-size:11px}
.detail-shell .card-heading h2,.detail-shell .timeline-card h2{font-size:20px}
.detail-shell .card-heading p{font-size:15px;line-height:1.45}
.detail-shell .large-route small,.detail-shell .info-grid small,.detail-shell .contact-item small,.detail-shell .recipient-box small,.detail-shell .business-pickup-data small{font-size:13px;line-height:1.35;letter-spacing:.04em}
.detail-shell .large-route b,.detail-shell .info-grid b,.detail-shell .contact-item b,.detail-shell .business-pickup-data b{font-size:16px;line-height:1.4}
.detail-shell .large-route p,.detail-shell .recipient-address{font-size:15px;line-height:1.45}
.detail-shell .contact-item a,.detail-shell .business-order-phone{font-size:14px}
.detail-shell .timeline-event b{font-size:15px}
.detail-shell .timeline-event small{font-size:13px;line-height:1.45}
.detail-shell .timeline-event p{font-size:14px;line-height:1.55}
.detail-shell .action-card h2{font-size:21px}
.detail-shell .action-card p{font-size:15px;line-height:1.55}
.detail-shell .danger-details{font-size:14px;line-height:1.55}
.detail-shell .verification-code-form label>span,.detail-shell .verification-success b,.detail-shell .verification-success small,.detail-shell .verification-regenerate{font-size:13px;line-height:1.45}
@media(max-width:680px){.detail-shell .detail-heading p{font-size:14px}.detail-shell .card-heading h2,.detail-shell .timeline-card h2{font-size:19px}.detail-shell .card-heading p{font-size:14px}.detail-shell .large-route small,.detail-shell .info-grid small,.detail-shell .contact-item small,.detail-shell .business-pickup-data small{font-size:12px}.detail-shell .large-route b,.detail-shell .info-grid b,.detail-shell .contact-item b,.detail-shell .business-pickup-data b{font-size:15px}.detail-shell .large-route p,.detail-shell .recipient-address{font-size:14px}.detail-shell .timeline-event b{font-size:14px}.detail-shell .timeline-event small{font-size:12px}.detail-shell .timeline-event p,.detail-shell .action-card p,.detail-shell .danger-details{font-size:14px}}
.profile-security-card{scroll-margin-top:24px;border-color:#d7e0f4}.profile-security-heading{display:flex;align-items:center;gap:11px;margin-bottom:11px}.profile-security-heading>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#fff;background:var(--navy);border-radius:11px}.profile-security-heading svg{width:19px;height:19px}.profile-security-heading>div{display:grid;gap:2px}.profile-security-heading small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em}.profile-security-heading h2{margin:0!important}.profile-security-card>p{margin:0 0 17px;color:var(--muted);font-size:12px;line-height:1.55}.profile-security-form{display:grid;gap:12px}.profile-security-form label{display:grid;gap:5px;font-size:12px;font-weight:700}.profile-security-form input{width:100%;font-size:14px}.profile-security-form label>small{color:var(--muted);font-size:10px;font-weight:500}.profile-security-note{display:flex;align-items:flex-start;gap:7px;padding:10px;color:#2d6758;background:#edf8f4;border-radius:9px;font-size:10px;line-height:1.45}.profile-security-note svg{flex:0 0 15px;width:15px;height:15px;margin-top:1px;color:var(--green)}
.profile-shell .profile-security-card>p{font-size:15px}
.star-picker .star-option:has(input:checked),.star-picker .star-option:has(input:checked)~.star-option{color:var(--gold)}.star-picker .star-option:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}.history-order-rating-pending{border-color:#e9c46c;box-shadow:0 10px 25px rgba(205,148,35,.13)}.history-order-rating-pending>summary{grid-template-columns:auto minmax(0,1fr) auto auto auto;background:#fffdf7}.history-rating-action{display:grid;gap:6px;min-width:280px;margin-right:12px;padding:9px 12px;background:#fff;border:1px solid #ead8ae;border-radius:11px;box-shadow:0 3px 10px rgba(148,100,25,.06)}.history-rating-prompt{color:#946419;font-size:9px;font-weight:850;line-height:1.2;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}.history-rating-controls{display:flex;align-items:center;justify-content:space-between;gap:11px}.history-rating-inline{display:flex;align-items:center;gap:8px;min-width:max-content}.history-rating-inline>small{color:#946419;font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.history-rating-submit{display:none}.history-rating-courier{display:flex;align-items:center;gap:7px;min-width:0}.history-rating-courier>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;overflow:hidden;color:var(--navy);background:#dfe8ff;border:2px solid #fff;border-radius:9px;font-size:12px;font-weight:850;box-shadow:0 2px 8px rgba(26,43,78,.15)}.history-rating-courier img{width:100%;height:100%;object-fit:cover}.history-rating-courier>small{max-width:90px;overflow:hidden;color:var(--text);font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.history-inline-stars{display:flex;align-items:center;gap:0}.history-inline-stars button{width:21px;padding:1px;color:#d7dbe3;background:transparent;border:0;font-size:19px;line-height:1;cursor:pointer}.history-inline-stars button:hover,.history-inline-stars button:focus-visible{color:var(--gold)}.history-inline-stars:has(button:nth-child(1):hover) button:nth-child(-n+1),.history-inline-stars:has(button:nth-child(2):hover) button:nth-child(-n+2),.history-inline-stars:has(button:nth-child(3):hover) button:nth-child(-n+3),.history-inline-stars:has(button:nth-child(4):hover) button:nth-child(-n+4),.history-inline-stars:has(button:nth-child(5):hover) button:nth-child(-n+5){color:var(--gold)}.history-rated-note{display:flex;align-items:center;gap:12px;padding:13px 15px;color:#5d6473;background:#fff;border:1px solid var(--line);border-radius:11px}.history-rated-note>span{display:flex;color:#d8dce5;font-size:18px;letter-spacing:1px}.history-rated-note i{font-style:normal}.history-rated-note i.filled{color:var(--gold)}.history-rated-note b{font-size:11px}@media(max-width:680px){.history-order-rating-pending>summary>.history-rating-action{grid-column:2/-1;grid-row:2;justify-self:stretch;min-width:0;margin:3px 0 0;padding:9px 10px}.history-rating-prompt{font-size:9px}.history-rating-controls{justify-content:flex-start;gap:9px}.history-rating-courier{flex:1 1 auto}.history-rating-courier>small{max-width:76px}.history-rating-inline{flex:0 0 auto;min-width:0}.history-rating-inline>small{font-size:8px}.history-inline-stars button{width:19px;font-size:18px}.history-rated-note{align-items:flex-start;flex-direction:column;gap:6px}}

/* La evaluación pendiente del mensajero ocupa una fila propia y compacta. */
.history-order-rating-pending>summary>.history-rating-inline{display:grid;grid-template-columns:auto minmax(0,1fr);grid-column:2/5;grid-row:2;align-items:center;justify-items:start;justify-self:start;gap:9px;min-width:0;padding:6px 9px;background:#fff8e7;border:1px solid #f0dfb8;border-radius:8px}
.history-order-rating-pending>summary>.history-rating-inline>small{font-size:9px;line-height:1.2;white-space:nowrap}
.history-rating-call{align-self:center;max-width:76px;color:#946419;font-size:9px!important;font-weight:800;line-height:1.25!important;letter-spacing:.02em;text-align:center;white-space:normal!important}.history-rating-choice{display:grid;justify-items:start;gap:2px;min-width:0}.history-rating-choice>b{max-width:220px;overflow:hidden;color:var(--ink);font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.history-rating-buttons{display:flex;align-items:center;gap:6px}.history-order-rating-pending>summary>.history-rating-inline .history-inline-stars button{width:24px;font-size:22px}.history-inline-stars button.selected{color:var(--gold)!important}.history-rating-confirm{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:0;color:#fff;background:var(--green);border:0;border-radius:8px;font-size:15px;font-weight:900;cursor:pointer;transition:.15s}.history-rating-confirm:disabled{color:#9ca4b3;background:#e3e6ec;cursor:not-allowed}.history-rating-confirm:not(:disabled):hover{transform:translateY(-1px);filter:brightness(.96)}
@media(max-width:680px){.history-order-rating-pending>summary{grid-template-columns:auto minmax(0,1fr) auto;row-gap:8px}.history-order-rating-pending>summary>.package-mark{grid-column:1;grid-row:1}.history-order-rating-pending>summary>.history-order-title{grid-column:2;grid-row:1}.history-order-rating-pending>summary>.status-pill{grid-column:2;grid-row:2;justify-self:start}.history-order-rating-pending>summary>strong{grid-column:3;grid-row:1}.history-order-rating-pending>summary>.history-chevron{grid-column:3;grid-row:2}.history-order-rating-pending>summary>.history-rating-inline{grid-column:2/4;grid-row:3;margin:0;padding:6px 8px}.history-order-rating-pending>summary>.history-rating-inline .history-inline-stars button{width:22px;font-size:21px}.history-rating-choice>b{max-width:190px}.history-rating-confirm{flex-basis:27px;width:27px;height:27px}}

/* Visor privado del carnet dentro de la revisión administrativa. */
.admin-doc-grid .identity-document-card{position:relative;display:grid;align-content:center;height:264px;min-height:264px;padding:22px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.identity-document-card.is-open{grid-column:auto}
.identity-document-card .identity-document-state{width:max-content;padding:5px 8px;color:var(--blue);background:#edf2ff;border-radius:8px;font-size:12px}
.identity-document-card>b{margin-top:7px;font-size:16px}
.identity-document-toggle{position:absolute;z-index:3;top:10px;right:10px;display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--navy);background:var(--aqua);border:0;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.18);cursor:pointer}
.identity-document-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.identity-document-toggle .identity-eye-hide{display:none}.identity-document-toggle[aria-expanded="true"] .identity-eye-show{display:none}.identity-document-toggle[aria-expanded="true"] .identity-eye-hide{display:block}
.identity-document-preview{position:absolute;z-index:2;inset:0;padding:8px;background:#fff}.identity-document-preview[hidden]{display:none}.identity-document-preview img{display:block;width:100%;height:100%;object-fit:contain;border-radius:7px}
.identity-document-card>small{margin-top:10px;color:var(--muted);font-size:12px;line-height:1.4}
@media(max-width:520px){.identity-document-card.is-open{grid-column:auto}.identity-document-toggle{width:38px}}
.identity-document-enlarge{display:block;width:100%;height:100%;padding:0;background:transparent;border:0;cursor:zoom-in}.identity-document-enlarge img{display:block;width:100%;height:100%;object-fit:contain}.admin-doc-grid a[data-admin-document-enlarge]{cursor:zoom-in}.identity-document-enlarge:focus-visible,.admin-doc-grid a[data-admin-document-enlarge]:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.admin-document-dialog{box-sizing:border-box;width:min(960px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;overflow:auto;background:transparent;border:0}.admin-document-dialog::backdrop{background:rgba(8,15,34,.76)}.admin-document-dialog-card{box-sizing:border-box;max-width:100%;padding:16px;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35)}.admin-document-dialog-card header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.admin-document-dialog-card h2{min-width:0;margin:0;font-size:18px;overflow-wrap:anywhere}.admin-document-dialog-card header button{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--navy);background:#edf2ff;border:0;border-radius:10px;font-size:27px;cursor:pointer}.admin-document-dialog-card>img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 110px);margin-inline:auto;object-fit:contain}

/* Estado de red de solo lectura, comunicado únicamente en la cabecera. */
.is-offline form.offline-action-blocked button[type="submit"],.is-offline form.offline-action-blocked input[type="submit"],.is-server-unavailable form.offline-action-blocked button[type="submit"],.is-server-unavailable form.offline-action-blocked input[type="submit"]{filter:saturate(.35);opacity:.62}.is-offline .searching-couriers em,.is-offline .live-label i,.is-server-unavailable .searching-couriers em,.is-server-unavailable .live-label i{animation-play-state:paused!important}

/* Ubicación puntual compartida por el mensajero al aceptar. */
.acceptance-location-card{border-color:#cfe9df;background:linear-gradient(145deg,#fff,#f3fbf8)}.acceptance-location-data{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;background:#fff;border:1px solid #dcece6;border-radius:12px}.acceptance-location-data>span{display:grid;gap:3px}.acceptance-location-data small{color:var(--green);font-size:9px!important;font-weight:900;letter-spacing:.09em}.acceptance-location-data b{font-size:13px}.acceptance-location-data em{color:var(--muted);font-size:10px;font-style:normal}.acceptance-location-data>a{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;padding:10px 13px;color:#fff;background:var(--green);border-radius:10px;font-size:11px;font-weight:850}.acceptance-location-data>a svg{width:17px;height:17px}
.acceptance-location-card.is-missing{border-color:#ead9b6;background:linear-gradient(145deg,#fff,#fffbf1)}.acceptance-location-missing{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;background:#fff;border:1px solid #eee2ca;border-radius:12px}.acceptance-location-missing>span{display:grid;gap:4px}.acceptance-location-missing b{font-size:12px;line-height:1.45}.acceptance-location-missing small{color:var(--muted);font-size:10px!important;line-height:1.45}.acceptance-location-missing form{flex:0 0 auto}.acceptance-location-missing .button{display:inline-flex;gap:7px;padding:10px 13px;font-size:11px}.acceptance-location-missing .button svg{width:17px;height:17px}
@media(max-width:520px){.acceptance-location-data,.acceptance-location-missing{align-items:stretch;flex-direction:column}.acceptance-location-data>a,.acceptance-location-missing form,.acceptance-location-missing .button{width:100%}}

/* Consulta protegida para la persona que recibe */
.recipient-tracking-page{min-height:100vh;background:radial-gradient(circle at 50% 0,#e7fffb 0,#f4f6fb 43%,#edf1f8 100%)}
.recipient-tracking-page .public-header{background:var(--navy);border-bottom:1px solid rgba(255,255,255,.1)}
.recipient-tracking-page .brand{color:#fff}
.recipient-tracking-shell{width:min(680px,calc(100% - 28px));margin-inline:auto;padding:112px 0 46px}
.recipient-tracking-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 24px 70px rgba(16,25,53,.13)}
.recipient-tracking-card>h1{margin:10px 0 10px;font-size:34px;letter-spacing:-.045em}
.recipient-tracking-intro{max-width:570px;margin-bottom:25px;color:var(--muted);font-size:15px;line-height:1.65}
.recipient-state-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:20px;color:var(--navy);background:var(--aqua);border-radius:20px 20px 20px 7px;box-shadow:0 12px 24px rgba(66,217,199,.23)}
.recipient-state-icon svg{width:31px;height:31px}.recipient-state-icon.is-error{color:#a33c45;background:#ffeaec;box-shadow:none}
.recipient-code-form{display:grid;gap:10px;margin-top:6px}.recipient-code-form label{font-size:13px}.recipient-code-form input{height:64px;padding:10px 16px;border:2px solid var(--line);font-size:28px;font-weight:850;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.recipient-code-form input:focus{border-color:var(--blue)}
.recipient-code-error{display:flex;align-items:center;gap:8px;margin:0;padding:11px 13px;color:#a33c45;background:#ffeaec;border-radius:11px;font-size:13px;font-weight:650}.recipient-code-error svg{flex:0 0 18px;width:18px;height:18px}
.recipient-safe-note,.recipient-code-guidance{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:14px;color:#315477;background:#edf4ff;border-radius:14px}.recipient-safe-note>svg,.recipient-code-guidance>svg{flex:0 0 23px;width:23px;height:23px;color:var(--blue)}.recipient-safe-note span,.recipient-code-guidance span{display:grid;gap:3px}.recipient-safe-note b,.recipient-code-guidance b{font-size:13px}.recipient-safe-note small,.recipient-code-guidance small{font-size:12px;line-height:1.5}
.recipient-delivery-heading{text-align:center}.recipient-delivery-heading h1{margin:11px 0 5px;font-size:35px;letter-spacing:-.05em}.recipient-delivery-heading p{margin:0;color:var(--muted);font-size:14px}.recipient-live-status{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;color:#176b50;background:#def5ea;border-radius:20px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.recipient-live-status i{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px rgba(45,187,131,.14)}
.recipient-progress{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:470px;margin:28px auto 27px}.recipient-progress::before,.recipient-progress::after{position:absolute;top:16px;left:16.6667%;height:2px;content:""}.recipient-progress::before{right:16.6667%;background:#dfe4ec}.recipient-progress::after{width:33.3333%;background:var(--green)}.recipient-progress-step{position:relative;z-index:1;display:grid;justify-items:center;align-content:start;gap:10px;min-width:0;text-align:center}.recipient-progress-step span{display:grid;place-items:center;width:34px;height:34px;color:#9ba4b6;background:#e9ecf2;border-radius:50%}.recipient-progress-step.done span{color:#fff;background:var(--green)}.recipient-progress-step.current span{color:var(--navy);background:var(--aqua);box-shadow:0 0 0 5px rgba(66,217,199,.17)}.recipient-progress-step span svg{width:17px;height:17px}.recipient-progress-step b{color:var(--muted);font-size:11px}.recipient-progress-step.current b{color:#176b50}
.recipient-identity-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:19px;margin-top:14px;padding:20px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-soft)}.recipient-identity-card.courier{color:#fff;background:linear-gradient(145deg,var(--navy),#253d75);border:0}.recipient-identity-photo{display:grid;place-items:center;width:112px;aspect-ratio:1;overflow:hidden;color:var(--navy);background:var(--aqua);border:4px solid rgba(255,255,255,.88);border-radius:22px}.recipient-identity-photo span{font-size:35px;font-weight:850}.recipient-business-mark{display:grid;place-items:center;width:78px;height:78px;overflow:hidden;color:var(--blue);background:#edf2ff;border-radius:19px}.recipient-business-mark svg{width:33px;height:33px}.recipient-identity-copy{min-width:0}.recipient-identity-copy>small{color:var(--aqua);font-size:10px;font-weight:850;letter-spacing:.1em}.recipient-identity-card.business .recipient-identity-copy>small{color:var(--blue)}.recipient-identity-copy h2{margin:5px 0 8px;font-size:22px}.recipient-identity-copy>p{margin:0;color:var(--muted);font-size:13px}.recipient-identity-tags{display:flex;flex-wrap:wrap;gap:7px}.recipient-identity-tags span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;color:rgba(255,255,255,.82);background:rgba(255,255,255,.1);border-radius:9px;font-size:11px}.recipient-identity-tags svg{width:15px;height:15px;color:var(--aqua)}.recipient-contact-button{display:inline-flex;align-items:center;gap:7px;margin-top:13px;padding:9px 12px;color:var(--navy);background:var(--aqua);border-radius:10px;font-size:12px;font-weight:800}.recipient-contact-button svg{width:16px;height:16px}.recipient-contact-button.secondary{color:var(--blue);background:#edf2ff}
.recipient-identity-card.courier{grid-template-columns:84px minmax(0,1fr);gap:16px}.recipient-courier-portrait{display:grid;justify-items:center;align-content:center;gap:6px}.recipient-identity-card.courier .recipient-identity-photo{width:84px;border:0;border-radius:50%}.recipient-identity-card.courier .recipient-identity-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.recipient-courier-score{color:#ffdc89;font-size:12px}.recipient-courier-score svg{color:#ffdc89}.recipient-identity-card.courier .recipient-identity-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.recipient-courier-details{min-width:0}.recipient-courier-details>small{color:var(--aqua);font-size:10px;font-weight:850;letter-spacing:.1em}.recipient-courier-details h2{overflow-wrap:anywhere}.recipient-identity-card.courier .recipient-identity-tags{margin-top:8px}.recipient-courier-call{justify-self:end;align-self:center;flex:none;min-height:40px;margin-top:0;white-space:nowrap}
.recipient-identity-card.business{grid-template-columns:84px minmax(0,1fr);gap:16px}.recipient-identity-card.business .recipient-business-mark{width:84px;height:84px}.recipient-business-mark img{display:block;width:100%;height:100%;object-fit:cover}.recipient-identity-card.business .recipient-identity-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.recipient-business-details{min-width:0}.recipient-business-details>small{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.1em}.recipient-business-details h2{overflow-wrap:anywhere}.recipient-business-details p{margin:0;color:var(--muted);font-size:13px}.recipient-business-call{justify-self:end;align-self:center;flex:none;min-height:40px;margin-top:0;white-space:nowrap}
.recipient-destination-card{display:flex;align-items:flex-start;gap:13px;margin-top:14px;padding:18px;background:#f7f9fc;border:1px solid var(--line);border-radius:17px}.recipient-destination-card>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:var(--coral-dark);background:#fff0ed;border-radius:13px}.recipient-destination-card div{display:grid;gap:2px}.recipient-destination-card small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.07em}.recipient-destination-card b{font-size:15px}.recipient-destination-card p{margin:0;color:var(--muted);font-size:12px}.recipient-code-guidance{color:#73551d;background:#fff6df}.recipient-code-guidance>svg{color:#cf8d22}
.recipient-tracking-footer{display:flex;align-items:center;justify-content:center;gap:7px;margin:18px 0 0;color:var(--muted);font-size:11px}.recipient-tracking-footer svg{width:16px;height:16px;color:var(--green)}
.recipient-courier-location{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-soft)}
.recipient-courier-location-heading{display:flex;align-items:center;gap:11px;margin-bottom:14px}.recipient-courier-location-heading>span{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;color:#176b50;background:#def5ea;border-radius:11px}.recipient-courier-location-heading svg{width:20px;height:20px}.recipient-courier-location-heading h2{margin:0;font-size:16px}.recipient-courier-location-heading p{margin:3px 0 0;color:var(--muted);font-size:12px}
.recipient-courier-map{position:relative;height:260px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#edf2f4}.recipient-courier-map-tiles{position:absolute;inset:0}.recipient-courier-map-tiles img{position:absolute;width:256px;height:256px;max-width:none;user-select:none;pointer-events:none}.recipient-courier-map-pin{position:absolute;z-index:1;top:50%;left:50%;display:grid;place-items:center;width:46px;height:46px;transform:translate(-50%,-50%);color:#fff;border:3px solid #fff;border-radius:15px;background:#7653c5;box-shadow:0 0 0 7px rgba(118,83,197,.2),0 3px 10px rgba(16,25,53,.32)}.recipient-courier-map-pin svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.recipient-courier-map-attribution{position:absolute;z-index:2;right:6px;bottom:6px;padding:3px 5px;color:#34404c;background:rgba(255,255,255,.9);border-radius:4px;font-size:10px;text-decoration:none}.recipient-courier-location-meta{display:grid;gap:4px;margin-top:12px}.recipient-courier-location-meta b{font-size:15px}.recipient-courier-location-meta span{color:var(--navy);font-size:12px;font-weight:700}.recipient-courier-location-meta small,.recipient-courier-location-unavailable{color:var(--muted);font-size:12px;line-height:1.5}.recipient-courier-location-unavailable{margin:0}
@media(max-width:600px){.recipient-tracking-shell{padding-top:94px}.recipient-tracking-card{padding:25px 17px;border-radius:21px}.recipient-tracking-card>h1,.recipient-delivery-heading h1{font-size:28px}.recipient-identity-card{grid-template-columns:1fr;justify-items:center;text-align:center;padding:18px}.recipient-identity-photo{width:124px}.recipient-identity-copy{display:grid;justify-items:center}.recipient-identity-copy h2{font-size:21px}.recipient-identity-tags{justify-content:center}.recipient-business-mark{width:72px;height:72px}.recipient-destination-card{text-align:left}.recipient-code-form input{font-size:25px}.recipient-identity-card.courier{grid-template-columns:72px minmax(0,1fr);justify-items:stretch;gap:12px;padding:16px;text-align:left}.recipient-identity-card.courier .recipient-identity-photo{width:72px}.recipient-identity-card.courier .recipient-identity-copy{display:grid;justify-items:stretch;gap:6px}.recipient-identity-card.courier .recipient-identity-tags{justify-content:flex-start}}
@media(max-width:380px){.recipient-courier-call{width:40px;padding:10px;justify-content:center}.recipient-courier-call span{display:none}.recipient-courier-details h2{font-size:18px}}
@media(max-width:600px){.recipient-identity-card.business{grid-template-columns:72px minmax(0,1fr);justify-items:stretch;gap:12px;padding:16px;text-align:left}.recipient-identity-card.business .recipient-business-mark{width:72px;height:72px}.recipient-identity-card.business .recipient-identity-copy{display:grid;justify-items:stretch;gap:6px}}
@media(max-width:380px){.recipient-business-call{width:40px;padding:10px;justify-content:center}.recipient-business-call span{display:none}.recipient-business-details h2{font-size:18px}}

/* Keep registration controls aligned even when one field includes helper text. */
.register-shell .form-grid{align-items:start}
.register-shell .form-grid>label{align-content:start}
.auth-visual-business{align-items:center;background:linear-gradient(145deg,rgba(16,25,53,.16),rgba(16,25,53,.75)),linear-gradient(135deg,#315fc8,#ff765f)}
.register-shell .auth-visual{align-items:flex-start;padding-top:clamp(170px,22vh,230px)}
.login-shell .auth-visual{align-items:flex-start;padding-top:clamp(150px,20vh,210px)}
[data-role-benefits][hidden]{display:none!important}

.samsung-install-dialog{width:min(590px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:auto;background:transparent;border:0}.samsung-install-dialog::backdrop{background:rgba(7,13,30,.72);backdrop-filter:blur(3px)}.samsung-install-card{display:grid;gap:15px;padding:22px;background:#fff;border-radius:21px;box-shadow:0 26px 80px rgba(7,13,30,.34)}.samsung-install-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.samsung-install-heading>span{display:grid;place-items:center;width:42px;height:42px;color:var(--navy);background:var(--aqua);border-radius:12px}.samsung-install-heading>span svg{width:22px;height:22px}.samsung-install-heading>div{display:grid;gap:2px}.samsung-install-heading small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.samsung-install-heading h2{margin:0;font-size:20px}.samsung-install-heading>button{width:34px;height:34px;padding:0;color:var(--muted);background:var(--canvas);border:0;border-radius:10px;font-size:22px;cursor:pointer}.samsung-install-recommended{padding:15px;color:#214a40;background:#eaf9f4;border:1px solid #c8eadf;border-radius:14px}.samsung-install-recommended>strong{font-size:14px}.samsung-install-recommended p,.samsung-install-alternative p{margin:6px 0 9px;font-size:12px;line-height:1.5}.samsung-install-recommended ol,.samsung-install-alternative ol{display:grid;gap:6px;margin:8px 0;padding-left:21px;font-size:12px;line-height:1.45}.samsung-copy-address{padding:7px 9px;color:#176b50;background:#fff;border:1px solid #b8dfd3;border-radius:8px;font-size:11px;font-weight:800;cursor:pointer}.samsung-install-alternative{padding:13px 14px;background:#fff7e7;border:1px solid #efddb7;border-radius:13px}.samsung-install-alternative summary{color:#795816;font-size:12px;font-weight:800;cursor:pointer}.samsung-install-alternative>p{padding-top:9px;border-top:1px solid #ead7af;color:#73551d}.samsung-install-actions{display:grid;grid-template-columns:.75fr 1.25fr;gap:9px}.samsung-install-actions .button{padding-inline:12px}@media(max-width:520px){.samsung-install-card{padding:17px}.samsung-install-heading h2{font-size:18px}.samsung-install-actions{grid-template-columns:1fr}.samsung-install-actions .button{width:100%}}

/* Registration controls use readable, regular-weight text. */
.register-shell input,.register-shell select,.register-shell textarea,.register-shell .coverage-toggle,.register-shell .coverage-option,.register-shell .vehicle-picker-toggle,.register-shell .vehicle-picker-menu button{font-weight:400}
.register-shell .municipality-control input{font-size:16px;font-weight:400}
.register-shell .municipality-option{padding:12px 13px;font-size:15px;font-weight:400}
@media(max-width:680px){.register-shell .role-picker:not(.single){grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.register-shell .role-picker:not(.single) label>span{grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:center;align-content:center;min-height:112px;padding:12px 8px;text-align:center}.register-shell .role-picker:not(.single) svg{grid-row:auto;width:29px;height:29px;margin-bottom:3px}.register-shell .role-picker:not(.single) b{font-size:12px;line-height:1.25}.register-shell .role-picker:not(.single) small{font-size:10px;line-height:1.3}.register-shell .role-picker:not(.single) input:checked+span::after{margin:0}}
.register-shell .courier-coverage-grid>label{font-size:14px}.register-shell .coverage-toggle{font-size:16px;line-height:1.4}.register-shell .coverage-control:has(.coverage-chips:empty){min-height:42px}.register-shell .coverage-control:has(.coverage-chips:empty) .coverage-toggle{min-height:40px;padding:9px 12px;font-size:14px}.register-shell .coverage-option,.register-shell .coverage-all{font-size:15px}.register-shell .courier-coverage-grid>label>small{font-size:12px!important;line-height:1.45}
.review-progress span.current{color:var(--navy);background:var(--aqua);box-shadow:0 0 0 5px rgba(66,217,199,.16)}.review-progress i.done{background:var(--green)}.review-email-note{display:flex;align-items:flex-start;gap:11px;max-width:480px;margin:21px auto 0;padding:14px;color:#315477;background:#edf4ff;border:1px solid #d4e2f8;border-radius:13px;text-align:left}.review-email-note>svg{flex:0 0 21px;width:21px;height:21px;color:var(--blue)}.review-email-note>span{display:grid;gap:3px}.review-email-note b{font-size:12px}.review-email-note small{font-size:11px;line-height:1.5}@media(max-width:520px){.review-status-card{padding:24px 17px}.review-progress-labels{gap:5px}.review-progress-labels small{font-size:10px}.review-email-note{padding:13px}}
.review-status-card>.eyebrow{font-size:12px}.review-status-card>p{font-size:15px;line-height:1.6}.review-progress{max-width:430px}.review-progress span{width:34px;height:34px;font-size:13px}.review-progress-labels{max-width:480px}.review-progress-labels small{font-size:12px;line-height:1.4}.review-email-note b{font-size:14px}.review-email-note small{font-size:13px;line-height:1.5}.review-status-card>form:last-child .button{font-size:13px}@media(max-width:520px){.review-status-card>.eyebrow{font-size:11px}.review-status-card>p{font-size:14px}.review-progress-labels small{font-size:12px}.review-email-note b{font-size:14px}.review-email-note small{font-size:13px}}

/* Tickets de soporte y edición administrativa auditada. */
.profile-support-tickets{grid-column:1/-1;justify-content:center;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.55);font-size:13px;font-weight:750;text-align:center;text-decoration:none}.profile-support-tickets:hover{color:var(--navy);background:#fff;border-color:#fff}.profile-support-card .profile-change-open{margin-bottom:0}
.support-create{display:grid;gap:14px;margin-bottom:27px;scroll-margin-top:24px}.support-create h2,.support-list-title{margin:0;font-size:21px}.support-create>p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.support-create .form-stack{gap:15px}.support-create .button{justify-self:start}.support-list-title{margin-bottom:15px}@media(max-width:600px){.support-create .button{width:100%}}
.support-shell{width:min(900px,calc(100% - 40px))}.support-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.support-heading .button{flex:0 0 auto}.support-ticket-list{display:grid;gap:11px}.support-ticket-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft);transition:transform .15s,border-color .15s}.support-ticket-row:hover{border-color:#cdd8f2;transform:translateY(-1px)}.support-ticket-icon{display:grid;place-items:center;width:44px;height:44px;color:var(--blue);background:#edf2ff;border-radius:13px}.support-ticket-icon svg{width:21px;height:21px}.support-ticket-row>span:nth-child(2){display:grid;min-width:0;gap:3px}.support-ticket-row>span:nth-child(2)>small{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.07em}.support-ticket-row b{font-size:15px}.support-ticket-row p{overflow:hidden;margin:0;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.support-ticket-meta{display:grid;justify-items:end;gap:5px}.support-ticket-meta time,.support-ticket-meta>small{color:var(--muted);font-size:10px}.ticket-status{display:inline-flex;width:max-content;padding:6px 10px;border-radius:16px;font-size:11px;font-style:normal;font-weight:850}.ticket-status.pending{color:#946419;background:#fff4d8}.ticket-status.in_progress{color:#355bba;background:#edf2ff}.ticket-status.resolved{color:#207052;background:#e8f8f1}.support-empty{display:grid;justify-items:center;padding:46px 20px;background:#fff;border:1px solid var(--line);border-radius:18px;text-align:center}.support-empty>span{display:grid;place-items:center;width:55px;height:55px;color:var(--navy);background:var(--aqua);border-radius:17px}.support-empty svg{width:26px;height:26px}.support-empty h2{margin:14px 0 5px}.support-empty p{max-width:440px;margin:0 0 18px;color:var(--muted);font-size:13px;line-height:1.55}.page-back{display:inline-block;margin-bottom:18px;color:var(--blue);font-size:13px;font-weight:750}.support-detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.support-detail-heading h1{margin:6px 0 4px;font-size:29px}.support-detail-heading p{margin:0;color:var(--muted);font-size:12px}.support-thread,.admin-support-thread{display:grid;gap:13px}.support-message{max-width:85%;padding:14px 15px;background:#f4f6fa;border:1px solid #e2e6ed;border-radius:15px 15px 15px 4px}.support-message.mine,.support-message.admin{justify-self:end;color:#fff;background:var(--navy);border-color:var(--navy);border-radius:15px 15px 4px 15px}.support-message.support{color:#183d35;background:#e9f8f3;border-color:#ccebe1}.support-message header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:6px}.support-message header b{font-size:12px}.support-message header time{color:var(--muted);font-size:9px}.support-message.mine header time,.support-message.admin header time{color:rgba(255,255,255,.58)}.support-message p{margin:0;font-size:13px;line-height:1.58;white-space:pre-wrap}.support-reply{display:grid;gap:11px;margin-top:14px}.support-reply label,.admin-support-reply label{display:grid;gap:7px;font-size:13px}.support-reply textarea,.admin-support-reply textarea{resize:vertical}.support-reply>p{margin:0;color:var(--muted);font-size:11px}.support-reply .button{justify-self:end}
.admin-sidebar nav .admin-support-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-support-nav b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;color:#fff;background:#d84c57;border-radius:11px;font-size:10px}.admin-stat-grid:not(.admin-stat-grid-accounts){grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.admin-ticket-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ticket-filters{grid-template-columns:minmax(0,1fr) 210px auto}.admin-status.in_progress{color:#355bba;background:#edf2ff}.admin-status.resolved{color:#207052;background:#e8f8f1}.admin-ticket-table .admin-ticket-preview{display:block;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-ticket-table td:nth-child(4){display:table-cell}.admin-ticket-table td:nth-child(4)>small{display:block;margin-top:4px}.admin-support-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:18px}.admin-support-thread .support-message.user{justify-self:start}.admin-support-reply{display:grid;gap:12px}.admin-support-reply .button{justify-self:end}.admin-ticket-requester{grid-template-columns:1fr 1fr;margin-bottom:13px}.admin-ticket-workflow{display:grid;gap:11px}.admin-ticket-workflow h2,.admin-ticket-workflow p{margin:0}.admin-ticket-workflow p{color:var(--muted);font-size:12px}.admin-ticket-workflow form,.admin-ticket-workflow label{display:grid;gap:7px}.admin-account-edit form{display:grid;gap:15px}.admin-account-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-account-edit-grid label,.admin-edit-reason{display:grid;gap:6px;font-size:13px;font-weight:700}.admin-account-edit-grid label.wide{grid-column:1/-1}.admin-account-edit-grid small{color:var(--muted);font-size:10px;font-weight:500}.admin-account-toggles{display:flex;flex-wrap:wrap;gap:10px 18px;padding:12px;background:#f7f8fb;border-radius:11px}.admin-account-toggles label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.admin-account-toggles input{width:17px;min-height:17px;accent-color:var(--blue)}.admin-edit-reason textarea{resize:vertical}.admin-account-edit .button{justify-self:end}.admin-change-requests>a{color:inherit}.audit-change-cell{min-width:330px;white-space:normal!important}.audit-change-cell>p{margin:0 0 7px;font-size:12px;line-height:1.45}.audit-change-cell details summary{width:max-content;color:var(--blue);font-size:11px;font-weight:800;cursor:pointer}.audit-change-cell dl{display:grid;gap:7px;margin:10px 0 0}.audit-change-cell dl>div{padding:8px;background:#f7f8fb;border-radius:8px}.audit-change-cell dt{margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.audit-change-cell dd{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:7px;margin:0;font-size:10px}.audit-change-cell dd span{overflow-wrap:anywhere}.audit-change-cell dd b{color:var(--blue)}

/* Administración compartida con un espacio operativo propio para EnRuta Taxi. */
.admin-workspace-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:15px 3px 0;padding:4px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:12px}.admin-workspace-switch a{display:grid;place-items:center;min-height:36px;padding:7px 10px;color:rgba(255,255,255,.57);border-radius:8px;font-size:12px;font-weight:850;transition:color .18s,background .18s,box-shadow .18s}.admin-workspace-switch a:hover{color:#fff;background:rgba(255,255,255,.08)}.admin-workspace-switch a.active{color:#0b1730;background:#34e0bf;box-shadow:0 5px 14px rgba(0,0,0,.2)}.admin-workspace-switch .admin-workspace-taxi.active{color:#171100;background:#ffc94a}.admin-nav-section-label{margin:13px 10px 1px;color:rgba(255,255,255,.38);font-size:9px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.admin-nav-section-label:first-child{margin-top:0}.admin-nav-section-taxi{color:#ffc94a}.admin-sidebar nav .admin-nav-taxi{position:relative;padding-left:26px}.admin-sidebar nav .admin-nav-taxi:before{position:absolute;left:12px;width:5px;height:5px;background:#ffc94a;border-radius:50%;content:""}.admin-sidebar nav .admin-nav-taxi.active{color:#171100;background:#ffc94a}.admin-sidebar nav .admin-nav-taxi.active:before{background:#171100}.admin-taxi-workspace{--taxi-admin:#ffc94a}.admin-taxi-title{align-items:center}.admin-taxi-title>div>small{color:#9a6900}.admin-taxi-brand-chip{display:grid;place-items:center;min-width:74px;height:42px;padding:0 17px;color:#171100;background:var(--taxi-admin);border:1px solid #dba91e;border-radius:13px;font-size:15px;font-weight:900}.admin-taxi-workspace-nav{display:flex;gap:7px;margin:-8px 0 20px;padding:6px;overflow:auto;background:#fff;border:1px solid #e6dfca;border-radius:13px;box-shadow:var(--shadow-soft)}.admin-taxi-workspace-nav a{flex:0 0 auto;padding:9px 13px;color:#5d6472;border-radius:9px;font-size:12px;font-weight:750}.admin-taxi-workspace-nav a:hover,.admin-taxi-workspace-nav a.is-current{color:#171100;background:#fff2c5}.admin-taxi-stat-grid>a{border-top:3px solid #f0c345}.admin-taxi-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:start;gap:18px}.admin-taxi-ride-list{display:grid}.admin-taxi-ride-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:15px;padding:13px 0;color:inherit;border-top:1px solid var(--line)}.admin-taxi-ride-list>a:first-child{border-top:0}.admin-taxi-ride-list>a>span{display:grid;gap:4px}.admin-taxi-ride-list>a>span:last-child{justify-items:end}.admin-taxi-ride-list b,.admin-taxi-ride-list strong{font-size:13px}.admin-taxi-ride-list small{color:var(--muted);font-size:11px}.admin-taxi-access{display:grid;gap:11px}.admin-taxi-access>.admin-panel-title{margin-bottom:0}.admin-taxi-access>div:not(.admin-panel-title){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;background:#f7f8fb;border-radius:11px}.admin-taxi-access>div span{display:grid;gap:3px}.admin-taxi-access b{font-size:13px}.admin-taxi-access small{color:var(--muted);font-size:10px;line-height:1.4}.admin-taxi-access>div>strong{padding:5px 8px;color:#9b3540;background:#ffeaec;border-radius:99px;font-size:10px}.admin-taxi-access>div>strong.is-open{color:#176b50;background:#e7f7ef}.admin-taxi-access>.button{width:100%;margin-top:3px}.admin-taxi-ride-filters{grid-template-columns:minmax(220px,1fr) 220px auto auto;align-items:center}.admin-taxi-ride-filters>a{color:var(--blue);font-size:12px;font-weight:750}.admin-taxi-rides-table td:first-child{display:table-cell}.admin-taxi-rides-table td>small,.admin-taxi-rides-table td>span+small{display:block;max-width:330px;margin-top:4px;overflow:hidden;text-overflow:ellipsis}.taxi-status-searching{color:#8b620b;background:#fff3cd}.taxi-status-accepted,.taxi-status-driver_arriving,.taxi-status-driver_arrived,.taxi-status-in_progress{color:#315fc8;background:#e8efff}.taxi-status-completed{color:#176b50;background:#e7f7ef}.taxi-status-cancelled,.taxi-status-no_driver{color:#9b3540;background:#ffeaec}.promotion-audience-filter{display:flex;gap:7px;margin:0 0 16px}.promotion-audience-filter a{padding:7px 11px;color:#526079;background:#f2f5f9;border-radius:8px;font-size:11px;font-weight:750}.promotion-audience-filter a.is-current{color:#171100;background:#ffc94a}
.admin-taxi-brand-chip{display:inline-flex;align-items:center;gap:8px;padding-inline:13px;font-size:13px;letter-spacing:-.03em}.admin-taxi-brand-chip svg{width:20px;height:20px}.admin-taxi-brand-chip b{color:#7c5900}
@media(max-width:900px){.admin-taxi-columns{grid-template-columns:1fr}.admin-taxi-ride-filters{grid-template-columns:1fr 1fr}.admin-taxi-ride-filters input{grid-column:1/-1}}
@media(max-width:560px){.admin-taxi-title{align-items:flex-start}.admin-taxi-brand-chip{min-width:60px;height:36px}.admin-taxi-workspace-nav{margin-top:0}.admin-taxi-ride-filters{grid-template-columns:1fr}.admin-taxi-ride-filters input{grid-column:auto}.admin-taxi-ride-list>a{align-items:start}.admin-nav-section-label{font-size:8px}}
.admin-taxi-vehicle-form{display:grid;gap:18px}.admin-taxi-vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-taxi-vehicle-card{cursor:pointer}.admin-taxi-vehicle-card>input{position:absolute;opacity:0;pointer-events:none}.admin-taxi-vehicle-card-body{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:104px;padding:13px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:border-color .18s,box-shadow .18s,background .18s}.admin-taxi-vehicle-card>input:checked+.admin-taxi-vehicle-card-body{border-color:#e0ae1f;background:#fffaf0;box-shadow:0 0 0 3px rgba(255,201,74,.16)}.admin-taxi-vehicle-card>input:focus-visible+.admin-taxi-vehicle-card-body{outline:3px solid rgba(255,201,74,.35);outline-offset:2px}.admin-taxi-vehicle-image{display:grid;place-items:center;width:88px;height:72px}.admin-taxi-vehicle-image img{max-width:100%;max-height:100%;object-fit:contain}.admin-taxi-vehicle-copy{display:grid;gap:5px}.admin-taxi-vehicle-copy strong{font-size:15px}.admin-taxi-vehicle-copy small,.admin-taxi-vehicle-warning{color:var(--muted);font-size:12px}.admin-taxi-vehicle-switch{position:relative;width:42px;height:24px;background:#c9ced8;border-radius:99px;transition:background .18s}.admin-taxi-vehicle-switch i{position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:transform .18s}.admin-taxi-vehicle-card>input:checked+.admin-taxi-vehicle-card-body .admin-taxi-vehicle-switch{background:#e2ad17}.admin-taxi-vehicle-card>input:checked+.admin-taxi-vehicle-card-body .admin-taxi-vehicle-switch i{transform:translateX(18px)}.admin-taxi-vehicle-form>.button{justify-self:start}.admin-taxi-vehicle-warning{margin:0}
@media(max-width:700px){.admin-taxi-vehicle-grid{grid-template-columns:1fr}.admin-taxi-vehicle-card-body{grid-template-columns:72px minmax(0,1fr) auto}.admin-taxi-vehicle-image{width:72px;height:62px}}
.taxi-statistics-periods{display:flex;gap:7px;margin:-7px 0 18px}.taxi-statistics-periods a{padding:8px 13px;color:#5f6673;background:#fff;border:1px solid #e2e5ea;border-radius:9px;font-size:11px;font-weight:800}.taxi-statistics-periods a.is-current{color:#181200;background:#ffc94a;border-color:#e0ad22}.taxi-statistics-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px}.taxi-statistics-kpis article{display:grid;gap:5px;padding:18px;background:#fff;border:1px solid #e3e6eb;border-top:3px solid #ffc94a;border-radius:14px;box-shadow:var(--shadow-soft)}.taxi-statistics-kpis span,.taxi-account-kpis small{color:#626b7b;font-size:10px;font-weight:800;text-transform:uppercase}.taxi-statistics-kpis strong{color:#17223b;font-size:26px}.taxi-statistics-kpis small{color:var(--muted);font-size:10px}.taxi-statistics-accounts{margin-bottom:18px}.taxi-account-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.taxi-account-kpis>a,.taxi-account-kpis>div{display:grid;gap:5px;padding:13px;color:inherit;background:#f7f8fb;border:1px solid #e7e9ee;border-radius:11px}.taxi-account-kpis>a:hover{border-color:#e0ad22;background:#fff9e8}.taxi-account-kpis strong{font-size:22px}.taxi-account-kpis span{color:var(--muted);font-size:9px}.taxi-statistics-trend{margin-bottom:18px}.taxi-chart-scroll{overflow-x:auto;padding:5px 0 2px}.taxi-daily-chart{display:grid;grid-template-columns:repeat(var(--taxi-days),minmax(28px,1fr));align-items:end;gap:6px;min-width:max(100%,calc(var(--taxi-days)*34px));height:220px;padding-top:10px}.taxi-daily-chart>div{display:grid;grid-template-rows:150px 18px 18px;justify-items:center;align-items:end;gap:2px;height:100%}.taxi-day-bar{display:flex;align-items:flex-end;width:72%;height:150px;background:#f4f1e7;border-radius:7px 7px 3px 3px;overflow:hidden}.taxi-day-bar i{display:block;width:100%;min-height:2px;background:linear-gradient(#ffd96b,#e4aa11);border-radius:7px 7px 2px 2px}.taxi-daily-chart b{font-size:10px}.taxi-daily-chart small{color:var(--muted);font-size:8px}.taxi-statistics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;margin-bottom:18px}.taxi-rank-list{display:grid;gap:10px}.taxi-rank-list>a,.taxi-rank-list>div{display:grid;gap:5px;color:inherit}.taxi-rank-list span{display:flex;justify-content:space-between;gap:12px;font-size:11px}.taxi-rank-list i{height:7px;overflow:hidden;background:#edf0f4;border-radius:99px}.taxi-rank-list em{display:block;height:100%;background:#ffc94a;border-radius:99px}.taxi-rank-list.destination em{background:#4a7df2}.taxi-rank-list.route em{background:#35af86}.taxi-completion-panel{display:grid;justify-items:center}.taxi-completion-panel .admin-panel-title{justify-self:stretch}.taxi-completion-ring{display:grid;place-items:center;width:150px;height:150px;margin:5px;background:conic-gradient(#ffc94a calc(var(--taxi-rate)*1%),#edf0f4 0);border-radius:50%}.taxi-completion-ring:before{position:absolute;width:112px;height:112px;background:#fff;border-radius:50%;content:""}.taxi-completion-ring span{z-index:1;display:grid;justify-items:center}.taxi-completion-ring strong{font-size:26px}.taxi-completion-ring small{color:var(--muted);font-size:10px}.taxi-completion-panel dl{display:flex;gap:25px;margin:10px 0 0}.taxi-completion-panel dl div{display:grid;justify-items:center;gap:3px}.taxi-completion-panel dt{color:var(--muted);font-size:9px}.taxi-completion-panel dd{margin:0;font-weight:850}.taxi-statistics-map-section{margin-bottom:18px}.taxi-map-heading>span{padding:7px 10px;color:#725100;background:#fff3c7;border-radius:9px;font-size:10px}.taxi-map-filters{display:flex;align-items:end;gap:10px;margin-bottom:12px}.taxi-map-filters label{display:grid;gap:4px;color:#687183;font-size:9px;font-weight:750}.taxi-map-filters select{min-width:180px;height:38px;padding:0 10px;background:#fff;border:1px solid #dbe0e7;border-radius:9px}.taxi-map-filters .button{height:38px}.taxi-statistics-map{position:relative;height:500px;overflow:hidden;background:#dce6e6;border:1px solid #d6dce3;border-radius:14px;touch-action:none}.taxi-statistics-map.is-dragging{cursor:grabbing}.taxi-statistics-map>[data-taxi-map-tiles],.taxi-statistics-map>[data-taxi-map-points]{position:absolute;inset:0}.taxi-statistics-map>[data-taxi-map-tiles] img{position:absolute;width:256px;height:256px;user-select:none}.taxi-map-marker{position:absolute;z-index:2;display:grid;place-items:center;width:25px;height:25px;padding:0;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 10px rgba(8,20,38,.34);transform:translate(-50%,-50%);cursor:pointer}.taxi-map-marker.driver{width:32px;height:32px;color:#181200;background:#ffc94a}.taxi-map-marker.driver svg{width:17px;height:17px}.taxi-map-marker.pickup{background:#26a879}.taxi-map-marker.destination{background:#4a7df2}.taxi-map-marker.state-suspended{background:#cf4a58}.taxi-map-marker.state-pending{background:#9a7c31}.taxi-map-marker.is-selected{z-index:5;box-shadow:0 0 0 5px rgba(255,201,74,.3)}.taxi-map-popup{position:absolute;z-index:4;display:grid;gap:4px;width:220px;padding:12px;background:#fff;border:1px solid #dce1e8;border-radius:12px;box-shadow:0 10px 30px rgba(8,20,38,.2);transform:translate(-50%,calc(-100% - 22px))}.taxi-map-popup small{color:#8a6100;font-size:9px;font-weight:850;text-transform:uppercase}.taxi-map-popup strong{font-size:13px}.taxi-map-popup p{margin:0;color:var(--muted);font-size:10px;line-height:1.4}.taxi-map-popup a{color:var(--blue);font-size:10px;font-weight:800}.taxi-map-empty{position:absolute;z-index:3;inset:50% auto auto 50%;padding:12px 16px;background:#fff;border-radius:10px;transform:translate(-50%,-50%);font-size:11px;font-weight:750}.taxi-map-legend{display:flex;gap:15px;margin-top:10px;color:#5f6878;font-size:10px}.taxi-map-legend span{display:flex;align-items:center;gap:5px}.taxi-map-legend i{width:10px;height:10px;border-radius:50%}.taxi-map-legend .driver{background:#ffc94a}.taxi-map-legend .pickup{background:#26a879}.taxi-map-legend .destination{background:#4a7df2}.taxi-statistics-routes{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.taxi-account-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.taxi-statistics-routes{grid-template-columns:1fr 1fr}.taxi-statistics-routes section:last-child{grid-column:1/-1}}
@media(max-width:720px){.taxi-statistics-kpis{grid-template-columns:1fr 1fr}.taxi-statistics-grid,.taxi-statistics-routes{grid-template-columns:1fr}.taxi-statistics-routes section:last-child{grid-column:auto}.taxi-map-filters{align-items:stretch;flex-direction:column}.taxi-map-filters label,.taxi-map-filters select,.taxi-map-filters .button{width:100%}.taxi-statistics-map{height:430px}}
@media(max-width:480px){.taxi-statistics-kpis,.taxi-account-kpis{grid-template-columns:1fr 1fr}.taxi-statistics-kpis article{padding:14px}.taxi-statistics-kpis strong{font-size:22px}.taxi-statistics-map{height:390px}.taxi-map-popup{width:190px}}
.taxi-statistics-vehicles{margin-bottom:18px}.taxi-account-kpis{grid-template-columns:repeat(7,minmax(0,1fr))}.taxi-vehicle-total{padding:7px 10px;color:#725100;background:#fff3c7;border-radius:9px;font-size:10px}.taxi-vehicle-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:12px}.taxi-vehicle-kpis>a,.taxi-vehicle-kpis>div{display:grid;gap:4px;padding:12px;color:inherit;background:#f7f8fb;border:1px solid #e7e9ee;border-radius:10px}.taxi-vehicle-kpis>a:hover{border-color:#e0ad22;background:#fff9e8}.taxi-vehicle-kpis small,.taxi-vehicle-types small{color:#626b7b;font-size:9px;font-weight:800;text-transform:uppercase}.taxi-vehicle-kpis strong{font-size:20px}.taxi-vehicle-kpis span{color:var(--muted);font-size:9px}.taxi-vehicle-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.taxi-vehicle-types article{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border:1px solid #e3e6eb;border-radius:12px}.taxi-vehicle-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:#6e5200;background:#fff2bc;border-radius:12px}.taxi-vehicle-icon svg{width:23px;height:23px}.taxi-vehicle-types article.vehicle-moto .taxi-vehicle-icon{color:#165d91;background:#e2f2ff}.taxi-vehicle-types article.vehicle-triciclo .taxi-vehicle-icon{color:#187354;background:#dff5ed}.taxi-vehicle-types article>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;min-width:0;width:100%}.taxi-vehicle-types strong{font-size:22px}.taxi-vehicle-types p{grid-column:1/-1;margin:0;color:var(--muted);font-size:9px}.taxi-map-marker.driver.vehicle-moto{color:#fff;background:#3289cf}.taxi-map-marker.driver.vehicle-triciclo{color:#fff;background:#27a47c}.taxi-map-marker.driver.state-suspended{color:#fff;background:#cf4a58}.taxi-map-marker.driver.state-pending{color:#fff;background:#9a7c31}

/* Siluetas de vehículos del mapa operativo Taxi. */
.taxi-statistics-map .taxi-map-marker.driver{width:54px;height:38px;color:#e6ad00;background:transparent;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 2px 2px rgba(8,20,38,.38))}.taxi-statistics-map .taxi-map-marker.driver .taxi-vehicle-map-icon{display:block;width:100%;height:100%;overflow:visible}.taxi-statistics-map .taxi-vehicle-map-icon .vehicle-body{fill:currentColor;stroke:#fff;stroke-width:1.8;stroke-linejoin:round}.taxi-statistics-map .taxi-vehicle-map-icon .vehicle-wheel{fill:#17223b;stroke:#fff;stroke-width:2.6}.taxi-statistics-map .taxi-vehicle-map-icon .vehicle-window{fill:#fff;stroke:none}.taxi-statistics-map .taxi-vehicle-map-icon .vehicle-detail{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.taxi-statistics-map .taxi-map-marker.driver.vehicle-moto{width:58px;color:#2687d5;background:transparent}.taxi-statistics-map .taxi-map-marker.driver.vehicle-triciclo{width:58px;height:40px;color:#20a66a;background:transparent}.taxi-statistics-map .taxi-map-marker.driver.state-suspended{color:#cf4a58;background:transparent}.taxi-statistics-map .taxi-map-marker.driver.state-pending{color:#9a7c31;background:transparent}.taxi-statistics-map .taxi-map-marker.driver.is-selected{z-index:5;box-shadow:none;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 6px currentColor) drop-shadow(0 3px 3px rgba(8,20,38,.42));transform:translate(-50%,-50%) scale(1.12)}.taxi-statistics-map .taxi-map-popup{transform:translate(-50%,calc(-100% - 30px))}.taxi-statistics-map-section .taxi-map-legend{flex-wrap:wrap}.taxi-statistics-map-section .taxi-map-legend .car{background:#e6ad00}.taxi-statistics-map-section .taxi-map-legend .motorbike{background:#2687d5}.taxi-statistics-map-section .taxi-map-legend .tricycle{background:#20a66a}

/* Resumen y altas diarias de cuentas dentro de Estadísticas Taxi. */
.taxi-statistics-accounts{padding:0;overflow:hidden;border-color:#e2dfd3}.taxi-accounts-heading{align-items:center;margin:0;padding:22px 24px;color:#fff;background:linear-gradient(125deg,#101935 0%,#172745 68%,#3d351d 100%)}.taxi-accounts-heading h2{margin:3px 0 4px;color:#fff;font-size:23px}.taxi-accounts-heading p{color:rgba(255,255,255,.66)}.taxi-accounts-heading>div:first-child>small{color:#ffd45f;font-size:9px;font-weight:900;letter-spacing:.14em}.taxi-accounts-period-total{display:grid;justify-items:end;flex:0 0 auto;min-width:145px;padding:10px 14px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);border-radius:12px}.taxi-accounts-period-total span{color:rgba(255,255,255,.66);font-size:9px;font-weight:800;text-transform:uppercase}.taxi-accounts-period-total strong{color:#fff;font-size:27px;line-height:1.1}.taxi-account-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0}.taxi-account-kpis>a,.taxi-account-kpis>div{min-height:112px;padding:18px 17px;background:#fff;border:0;border-right:1px solid #e8eaf0;border-radius:0}.taxi-account-kpis>a:last-child{border-right:0}.taxi-account-kpis>a:hover{position:relative;z-index:1;background:#fffaf0;box-shadow:inset 0 -3px #e3ad1b}.taxi-account-kpis .is-total{background:#f7f8fb}.taxi-account-kpis .is-driver{box-shadow:inset 0 3px #e3ad1b}.taxi-account-kpis .is-passenger{box-shadow:inset 0 3px #4a7df2}.taxi-account-kpis strong{color:#17223b;font-size:27px;letter-spacing:-.03em}.taxi-account-kpis span{font-size:10px}.taxi-statistics-account-trend{margin-bottom:18px}.taxi-account-chart-heading{align-items:center}.taxi-account-chart-legend{display:flex;flex-wrap:wrap;gap:9px}.taxi-account-chart-legend span{display:flex;align-items:center;gap:6px;padding:7px 9px;color:#5f6878;background:#f5f7fa;border-radius:9px;font-size:10px;font-weight:750}.taxi-account-chart-legend span:before{width:9px;height:9px;background:#e3ad1b;border-radius:3px;content:""}.taxi-account-chart-legend span.is-passenger:before{background:#4a7df2}.taxi-account-chart-legend b{color:#17223b;font-size:11px}.taxi-account-daily-chart{display:grid;grid-template-columns:repeat(var(--taxi-account-days),minmax(34px,1fr));align-items:end;gap:7px;min-width:max(100%,calc(var(--taxi-account-days)*40px));height:250px;padding:12px 8px 0;border-bottom:1px solid #d9dee8;background:repeating-linear-gradient(to bottom,#edf0f5 0,#edf0f5 1px,transparent 1px,transparent 25%)}.taxi-account-day{display:grid;grid-template-rows:190px 18px 20px;align-items:end;justify-items:center;gap:2px;min-width:0;height:100%}.taxi-account-day-bars{display:flex;align-items:end;justify-content:center;gap:3px;width:100%;height:190px}.taxi-account-day-bars i{position:relative;width:min(17px,42%);height:max(3px,var(--account-bar-height));background:linear-gradient(#ffda70,#dda511);border-radius:5px 5px 1px 1px}.taxi-account-day-bars i.is-passenger{background:linear-gradient(#75a0ff,#3e6ed9)}.taxi-account-day-bars i b{position:absolute;top:-17px;left:50%;color:#566177;font-size:9px;font-style:normal;transform:translateX(-50%)}.taxi-account-day>strong{font-size:10px}.taxi-account-day time{overflow:hidden;color:var(--muted);font-size:9px;white-space:nowrap}
@media(max-width:1000px){.taxi-account-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.taxi-account-kpis>a,.taxi-account-kpis>div{border-bottom:1px solid #e8eaf0}.taxi-account-kpis>:nth-child(3n){border-right:0}}
@media(max-width:720px){.taxi-accounts-heading,.taxi-account-chart-heading{align-items:flex-start;display:grid;gap:13px}.taxi-accounts-period-total{justify-items:start;min-width:0;width:100%}.taxi-account-chart-legend{width:100%}.taxi-vehicle-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.taxi-vehicle-types{grid-template-columns:1fr}}
@media(max-width:480px){.taxi-account-kpis{grid-template-columns:1fr 1fr}.taxi-account-kpis>a,.taxi-account-kpis>div{min-height:102px;padding:15px}.taxi-account-kpis>:nth-child(3n){border-right:1px solid #e8eaf0}.taxi-account-kpis>:nth-child(2n){border-right:0}.taxi-account-chart-legend span{flex:1;justify-content:center}.taxi-account-daily-chart{height:230px}.taxi-account-day{grid-template-rows:170px 18px 20px}.taxi-account-day-bars{height:170px}}
@media(max-width:850px){.admin-support-grid{grid-template-columns:1fr}.admin-ticket-filters{grid-template-columns:1fr 1fr}.admin-ticket-filters input{grid-column:1/-1}.admin-ticket-table{min-width:920px}.admin-account-edit-grid{grid-template-columns:1fr}.admin-account-edit-grid label.wide{grid-column:auto}}
.admin-account-edit-grid .admin-camera-field{display:grid;grid-column:1/-1;gap:7px;font-size:13px;font-weight:700}.admin-camera-field>[data-photo-upload-action]{justify-self:start}.admin-camera-field>[data-camera-selection]{color:var(--muted);font-size:10px;font-weight:500}
.admin-account-edit-grid .admin-photo-picker-input{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-account-edit-grid .admin-photo-picker-button{display:inline-flex;width:max-content;max-width:100%;align-items:center;justify-content:center;cursor:pointer}.admin-account-edit-grid .admin-photo-picker-input:focus-visible+.admin-photo-picker-button{outline:3px solid rgba(74,125,242,.28);outline-offset:3px}
@media(max-width:600px){.support-shell{width:min(100% - 28px,900px)}.support-heading,.support-detail-heading{align-items:flex-start}.support-heading{display:grid}.support-heading .button{width:100%}.support-ticket-row{grid-template-columns:auto minmax(0,1fr);padding:15px}.support-ticket-meta{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap}.support-ticket-row p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.support-detail-heading{display:grid}.support-message{max-width:94%}.support-reply .button{width:100%}.admin-ticket-stats{grid-template-columns:1fr}.admin-ticket-filters{grid-template-columns:1fr}.admin-ticket-filters input{grid-column:auto}}

/* Editor compacto de selfie y documentos, optimizado para Android estrecho. */
.image-editor{align-items:center;justify-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:hidden;overscroll-behavior:contain}
.image-editor-card{width:min(520px,100%);min-width:0;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:20px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:20px}
.image-editor-heading{align-items:center}.image-editor-heading>div{display:grid;gap:3px;min-width:0}.image-editor-heading small{font-size:10px}.image-editor-heading h2{margin:0;font-size:20px;line-height:1.2}.image-editor-close{flex-basis:36px;width:36px;height:36px;font-size:22px}
.image-editor-card>p{margin:8px 0 14px;font-size:12px;line-height:1.45}
.image-editor-stage{width:min(100%,500px,63vh);width:min(100%,500px,63dvh);min-height:0;aspect-ratio:3/2;margin-inline:auto;padding:0;background:#111a35;border:2px solid #dfe4ee;border-radius:14px;box-shadow:0 8px 24px rgba(16,25,53,.13)}
.image-editor-document .image-editor-stage{width:min(100%,500px,67vh);width:min(100%,500px,67dvh);border-radius:12px}
.image-editor.image-editor-avatar .image-editor-stage{width:min(300px,100%,46vh);width:min(300px,100%,46dvh);min-height:0;aspect-ratio:1;border:4px solid #fff;border-radius:50%;outline:2px solid var(--aqua);outline-offset:2px;box-shadow:0 8px 28px rgba(16,25,53,.19)}
.image-editor canvas,.image-editor.image-editor-avatar canvas{display:block;width:100%;height:100%;max-width:none;max-height:none;border-radius:inherit}
.image-editor-zoom{display:grid;grid-template-columns:auto 17px minmax(0,1fr) 17px;align-items:center;gap:8px;margin-top:14px}.image-editor-zoom span{font-size:11px}.image-editor-zoom small{color:var(--muted);font-size:18px;font-weight:800;line-height:1;text-align:center}.image-editor-zoom input{width:100%;min-width:0;min-height:28px;margin:0;padding:0}
.image-editor-actions{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:9px;margin-top:15px}.image-editor-actions .button{width:100%;min-width:0;min-height:44px;padding:10px 12px;white-space:normal}.image-editor-actions [data-editor-original]{grid-column:2}.image-editor-actions [hidden]{display:none!important}
.image-editor-fallback .image-editor-stage,.image-editor-fallback .image-editor-zoom{display:none}.image-editor-fallback .image-editor-card>p{margin-bottom:18px;padding:12px;color:#315477;background:#edf4ff;border-radius:12px}.image-editor-fallback .image-editor-actions{margin-top:0}
@media(max-width:680px){.image-editor{align-items:end;justify-items:stretch;padding:0;background:rgba(10,16,35,.72)}.image-editor-card{width:100%;max-width:none;max-height:calc(100vh - 8px);max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));padding:16px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-radius:22px 22px 0 0;box-shadow:0 -16px 46px rgba(10,16,35,.24)}.image-editor-heading h2{font-size:18px}.image-editor-heading small{font-size:9px}.image-editor-card>p{margin:6px 0 12px;font-size:12px}.image-editor-stage{width:min(100%,520px,64vh);width:min(100%,520px,64dvh)}.image-editor-document .image-editor-stage{width:min(100%,520px,67vh);width:min(100%,520px,67dvh)}.image-editor.image-editor-avatar .image-editor-stage{width:min(calc(100vw - 72px),250px,38vh);width:min(calc(100vw - 72px),250px,38dvh)}.image-editor-zoom{margin-top:11px}.image-editor-actions{margin-top:12px}.image-editor-actions .button{min-height:46px;font-size:12px}}
@media(max-width:360px){.image-editor-card{padding-top:14px}.image-editor.image-editor-avatar .image-editor-stage{width:min(calc(100vw - 76px),230px,37vh);width:min(calc(100vw - 76px),230px,37dvh)}.image-editor-actions{gap:7px}.image-editor-actions .button{padding-inline:8px;font-size:11px}}

/* Registro guiado en cinco pasos. */
.register-shell{align-items:start;grid-template-columns:minmax(620px,1.12fr) minmax(360px,.88fr)}
.register-shell .auth-form-side{place-items:start center;padding:108px 34px 54px}
.register-shell .auth-visual{position:sticky;top:0;height:100vh;height:100dvh}
.registration-wizard-card{width:min(700px,100%);padding:29px 31px 25px;background:#fff;border:1px solid rgba(218,224,235,.9);border-radius:25px;box-shadow:0 22px 60px rgba(24,33,58,.1)}
.registration-wizard-card .auth-back-link{margin-bottom:16px;color:#64708a;font-size:12px;font-weight:700}
.registration-wizard-intro h1{margin:10px 0 6px;font-size:35px}.registration-wizard-intro .form-intro{margin:0;color:#737d92;font-size:13px;line-height:1.5}
.registration-wizard{gap:0;margin-top:23px}.registration-steps{min-width:0}.registration-step[hidden]{display:none!important}.registration-step{min-width:0;animation:registration-step-in .22s ease both}@keyframes registration-step-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.registration-agency-code{display:grid;align-content:start;justify-items:start;gap:10px}.registration-agency-code-link{width:auto;padding:0;color:#315fbd;background:transparent;border:0;font:inherit;font-size:12px;font-weight:750;text-decoration:underline;cursor:pointer}.registration-agency-code-link:hover,.registration-agency-code-link:focus-visible{color:#204a9b}.registration-agency-code>[data-agency-code-field],.registration-agency-code>[data-affiliate-code-field]{width:100%}
.registration-progress{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 27px;padding:0 3px}.registration-progress::before{content:"";position:absolute;top:17px;right:10%;left:10%;height:2px;background:#e2e6ee}
.registration-progress button{position:relative;z-index:1;display:grid;justify-items:center;gap:6px;min-width:0;padding:0 2px;color:#9aa2b2;background:transparent;border:0;cursor:default}.registration-progress button>span{display:grid;place-items:center;width:35px;height:35px;background:#eef1f5;border:3px solid #fff;border-radius:50%;font:800 11px/1 "Manrope",sans-serif;box-shadow:0 0 0 1px #dfe4ec;transition:.18s}.registration-progress button>small{overflow:hidden;width:100%;font-size:9px;font-weight:750;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}.registration-progress button.is-available{cursor:pointer}.registration-progress button.is-complete{color:#3866c8}.registration-progress button.is-complete>span{color:#fff;background:var(--blue);box-shadow:0 0 0 1px var(--blue)}.registration-progress button.is-current{color:var(--navy)}.registration-progress button.is-current>span{color:var(--navy);background:var(--aqua);box-shadow:0 0 0 4px rgba(66,217,199,.19)}.registration-progress button:focus-visible{outline:0}.registration-progress button:focus-visible>span{outline:3px solid rgba(74,125,242,.28);outline-offset:3px}
.registration-step-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;margin-bottom:23px}.registration-step-heading.registration-step-heading-no-icon{grid-template-columns:minmax(0,1fr)}.registration-step-heading>span{display:grid;place-items:center;width:48px;height:48px;color:var(--navy);background:linear-gradient(145deg,#b6fff5,var(--aqua));border-radius:15px 15px 15px 5px;box-shadow:0 8px 18px rgba(66,217,199,.19)}.registration-step-heading>span svg{width:23px;height:23px}.registration-step-heading>div{min-width:0}.registration-step-heading small{display:block;margin-bottom:3px;color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.registration-step-heading h2{margin:0;font-size:24px;line-height:1.2;letter-spacing:-.035em;outline:0}.registration-step-heading p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
[data-registration-step="1"] .registration-step-heading{align-items:center}
.registration-step .role-picker{grid-template-columns:1fr 1fr;gap:14px}.registration-step .role-picker label>span{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:start;align-content:center;min-height:148px;padding:21px;background:#fbfcfe;border:1px solid #dce2ec;border-radius:17px;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}.registration-step .role-picker label>span:hover{border-color:#b9c8e7;transform:translateY(-2px)}.registration-step .role-picker svg{grid-row:auto;width:34px;height:34px;margin-bottom:14px;color:var(--blue)}.registration-step .role-picker b{font-size:15px}.registration-step .role-picker small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}.registration-step .role-picker input:checked+span{border-color:#6d91e8;background:#f4f7ff;box-shadow:0 0 0 4px rgba(74,125,242,.09),0 10px 24px rgba(53,83,148,.08)}.registration-step .role-picker input:checked+span::after{top:16px;right:16px;width:22px;height:22px;line-height:22px}.registration-step .role-picker.is-invalid label>span{border-color:#e38a91;background:#fff9fa}
.registration-role-panel{display:grid;gap:17px}.registration-role-panel[hidden]{display:none!important}.registration-personal-grid,.registration-role-panel .form-grid{align-items:start}.registration-password-field,.registration-wide-field{grid-column:1/-1}.registration-step label>span:first-child{line-height:1.35}.registration-step label>small{font-size:10px;line-height:1.45}.registration-step input,.registration-step select,.registration-step textarea{font-size:15px}.registration-step textarea{min-height:104px}.registration-step input[aria-invalid="true"]{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}
.registration-optional-mark{display:inline;margin-left:5px;color:var(--muted);font-size:10px;font-weight:600}.registration-optional-code{grid-column:1/-1}.registration-optional-code[hidden]{display:none!important}.registration-optional-code>summary{width:max-content;max-width:100%;color:var(--blue);font-size:13px;font-weight:750;line-height:1.4;list-style:none;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.registration-optional-code>summary::-webkit-details-marker{display:none}.registration-optional-code>summary:focus-visible{outline:2px solid rgba(74,125,242,.38);outline-offset:4px;border-radius:3px}.registration-optional-code[open]>summary{margin-bottom:12px}.registration-optional-code>label{max-width:100%}
.taxi-catalog-picker{position:relative;min-width:0}.taxi-catalog-picker.is-enhanced>select{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.taxi-catalog-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:11px 12px 11px 15px;color:#7c8799;background:linear-gradient(180deg,#fff,#fbfcfe);border:1px solid #d8dfeb;border-radius:13px;font:inherit;font-size:15px;text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s}.taxi-catalog-toggle.has-value{color:var(--ink);background:#fff}.taxi-catalog-toggle svg{flex:0 0 18px;width:18px;height:18px;color:#9a6b00;transition:transform .18s}.taxi-catalog-toggle:hover{border-color:#d0aa4e;background:#fffdf7}.taxi-catalog-toggle:focus-visible,.taxi-catalog-picker.is-open .taxi-catalog-toggle{border-color:#d8a526;outline:0;box-shadow:0 0 0 4px rgba(229,173,24,.15)}.taxi-catalog-picker.is-open .taxi-catalog-toggle svg{transform:rotate(90deg)}.taxi-catalog-toggle:disabled{color:#9aa3b1;background:#f2f4f7;cursor:not-allowed;opacity:.72}.taxi-catalog-menu{position:absolute;z-index:80;top:calc(100% + 7px);right:0;left:0;display:grid;gap:5px;max-height:286px;padding:7px;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #dce2ec;border-radius:15px;box-shadow:0 18px 48px rgba(16,25,53,.2)}.taxi-catalog-menu[hidden]{display:none!important}.taxi-catalog-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:43px;padding:10px 11px;color:#26334b;background:transparent;border:1px solid transparent;border-radius:10px;font:inherit;font-size:14px;text-align:left;cursor:pointer}.taxi-catalog-option:hover,.taxi-catalog-option:focus-visible{background:#f5f7fb;border-color:#dce3ef;outline:0}.taxi-catalog-option[aria-selected="true"]{color:#614600;background:#fff7dc;border-color:#efd278;font-weight:700}.taxi-catalog-option b{visibility:hidden;color:#9a6b00}.taxi-catalog-option[aria-selected="true"] b{visibility:visible}.taxi-catalog-option[data-value="__other__"]{margin-top:3px;border-top-color:#e3e7ee;color:#315fc8}.taxi-color-picker .taxi-catalog-toggle{justify-content:flex-start}.taxi-color-picker .taxi-catalog-toggle svg{margin-left:auto}.taxi-color-picker .taxi-catalog-toggle.has-value::before{box-sizing:border-box;flex:0 0 20px;width:20px;height:20px;background:#d7dbe2;border:1px solid rgba(16,25,53,.16);border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.42);content:""}.taxi-color-picker .taxi-catalog-option{grid-template-columns:22px minmax(0,1fr) auto}.taxi-color-swatch{box-sizing:border-box;width:20px;height:20px;background:#d7dbe2;border:1px solid rgba(16,25,53,.16);border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.42)}.taxi-color-swatch[data-color="Blanco"],.taxi-catalog-toggle[data-color="Blanco"]::before{background:#fff}.taxi-color-swatch[data-color="Negro"],.taxi-catalog-toggle[data-color="Negro"]::before{background:#17191e}.taxi-color-swatch[data-color="Gris"],.taxi-catalog-toggle[data-color="Gris"]::before{background:#7d838d}.taxi-color-swatch[data-color="Plateado"],.taxi-catalog-toggle[data-color="Plateado"]::before{background:linear-gradient(135deg,#f1f3f5,#9da5af)}.taxi-color-swatch[data-color="Rojo"],.taxi-catalog-toggle[data-color="Rojo"]::before{background:#d83b42}.taxi-color-swatch[data-color="Azul"],.taxi-catalog-toggle[data-color="Azul"]::before{background:#3473cf}.taxi-color-swatch[data-color="Verde"],.taxi-catalog-toggle[data-color="Verde"]::before{background:#31845a}.taxi-color-swatch[data-color="Amarillo"],.taxi-catalog-toggle[data-color="Amarillo"]::before{background:#f2ca35}.taxi-color-swatch[data-color="Naranja"],.taxi-catalog-toggle[data-color="Naranja"]::before{background:#ec842f}.taxi-color-swatch[data-color="Marrón"],.taxi-catalog-toggle[data-color="Marrón"]::before{background:#795039}.taxi-color-swatch[data-color="Beige"],.taxi-catalog-toggle[data-color="Beige"]::before{background:#d8c49d}.taxi-color-swatch[data-color="Crema"],.taxi-catalog-toggle[data-color="Crema"]::before{background:#eee2bd}.taxi-color-swatch[data-color="Dorado"],.taxi-catalog-toggle[data-color="Dorado"]::before{background:#c69b32}.taxi-color-swatch[data-color="Turquesa"],.taxi-catalog-toggle[data-color="Turquesa"]::before{background:#33b9b1}.taxi-color-swatch[data-color="Violeta"],.taxi-catalog-toggle[data-color="Violeta"]::before{background:#7959ad}.taxi-color-swatch[data-color="Rosado"],.taxi-catalog-toggle[data-color="Rosado"]::before{background:#e69aad}.registration-step label.is-invalid .taxi-catalog-toggle{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}
.taxi-vehicle-type-picker{display:grid;gap:9px;margin:0 0 18px;padding:0;border:0}.taxi-vehicle-type-picker legend{margin-bottom:9px;color:var(--ink);font-size:14px;font-weight:700}.taxi-vehicle-type-picker>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.taxi-vehicle-type-picker label{display:block}.taxi-vehicle-type-picker input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden;opacity:0}.taxi-vehicle-type-picker label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:108px;padding:9px 8px;color:#45546b;background:#f7f9fc;border:1px solid #d8dfeb;border-radius:14px;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.taxi-vehicle-type-picker label>span:hover{transform:translateY(-1px)}.taxi-vehicle-type-picker img{display:block;width:92px;max-width:100%;height:66px;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(16,25,53,.16))}.taxi-vehicle-type-picker b{font-size:13px;text-align:center}.taxi-vehicle-type-picker input:checked+span{color:#203b58;background:#fff8df;border-color:#dbb33d;box-shadow:0 0 0 3px rgba(229,173,24,.14)}.taxi-vehicle-type-picker input:focus-visible+span{outline:3px solid rgba(229,173,24,.26);outline-offset:2px}@media(max-width:560px){.taxi-vehicle-type-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}.taxi-vehicle-type-picker img{width:106px;height:74px}}
.taxi-vehicle-type-picker input[value="moto"]+span img{width:76px;height:54px}.taxi-vehicle-type-picker input[value="triciclo"]+span img{width:72px;height:52px}.taxi-vehicle-type-picker input[value="van"]+span img{width:100px;height:66px}@media(max-width:560px){.taxi-vehicle-type-picker input[value="moto"]+span img{width:84px;height:60px}.taxi-vehicle-type-picker input[value="triciclo"]+span img{width:80px;height:58px}.taxi-vehicle-type-picker input[value="van"]+span img{width:108px;height:74px}}
.taxi-motorcycle-requirement{display:grid;gap:3px;margin:-7px 0 18px;padding:12px 14px;color:#664900;background:#fff7d8;border:1px solid #ebca67;border-radius:12px;font-size:12px;line-height:1.45}.taxi-motorcycle-requirement[hidden]{display:none!important}.taxi-motorcycle-requirement strong{font-size:12px}.taxi-motorcycle-requirement span{color:#765b16}
.taxi-registration-vehicle-notice{display:grid;gap:3px;margin:0 0 18px;padding:13px 15px;color:#344155;background:#f5f8fc;border:1px solid #d8e0eb;border-radius:12px;font-size:12px;line-height:1.45}.taxi-registration-vehicle-notice strong{color:#27334b;font-size:13px}.taxi-registration-vehicle-notice span{color:#5f6b7a}
.coverage-field-title{display:inline-flex;align-items:baseline;gap:3px;width:max-content;max-width:100%;white-space:nowrap}.register-shell .coverage-control>.coverage-chips:not(:empty)+.coverage-toggle{align-items:center}.register-shell .coverage-control>.coverage-chips:not(:empty)+.coverage-toggle svg{margin-top:0}
.registration-step-error,.registration-field-error{margin:8px 0 0;color:#b63d48;font-size:11px!important;font-weight:700!important;line-height:1.4}.registration-field-error[hidden],.registration-step-error[hidden]{display:none!important}.coverage-control.is-invalid{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}
.registration-photo-grid{gap:13px;justify-items:center}.registration-photo-grid .business-photo-upload,.registration-photo-grid .identity-upload{margin-top:0}.registration-photo-grid .photo-upload{grid-template-columns:58px minmax(0,1fr);align-content:center;align-items:center;column-gap:19px;row-gap:8px;width:100%;min-height:108px;padding:17px;background:#fbfcfe;border:1px dashed #bcc7d9;border-radius:16px}.registration-photo-grid .photo-upload:hover{border-color:var(--blue);background:#f7f9ff}.registration-photo-grid .photo-upload.is-invalid{border-color:#df6973;background:#fff9fa}.registration-photo-grid .photo-preview{width:58px;height:58px;padding:0;color:#172342;background:#e5eaf3;border:0;border-radius:15px;cursor:pointer}.registration-photo-grid .photo-preview:focus-visible{outline:3px solid rgba(74,125,242,.32);outline-offset:3px}.registration-photo-grid .photo-preview svg{width:27px;height:27px;stroke-width:2.2}.registration-photo-grid .courier-photo-upload .photo-preview{border-radius:50%}.registration-photo-grid .photo-upload-copy{display:grid;gap:6px;min-width:0}.registration-photo-grid .photo-upload b{font-size:15px}.registration-photo-grid .photo-upload small{font-size:12px;line-height:1.55}.registration-photo-grid .identity-privacy{margin-top:0}.registration-photo-grid.courier-fields .identity-privacy{margin-top:1px}
.registration-verification-grid>.registration-photo-group{display:contents}.registration-verification-grid>.registration-photo-group[hidden]{display:none!important}.registration-verification-grid>.registration-identity-group .identity-privacy{grid-column:1/-1}
.registration-photo-grid .photo-preview img{display:block;width:100%;height:100%;object-fit:cover}.registration-photo-grid .photo-upload-title{justify-self:start;margin:0;padding:0;color:inherit;background:transparent;border:0;font:inherit;font-size:15px;font-weight:700;line-height:1.25;text-align:left;cursor:pointer}.registration-photo-grid .photo-upload-title:hover,.registration-photo-grid .photo-upload-title:focus-visible{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.registration-photo-grid .photo-upload-title:focus-visible{outline:2px solid rgba(74,125,242,.42);outline-offset:3px;border-radius:3px}
.registration-identity-grid{display:grid;margin-top:13px}
.registration-summary.is-affiliate{grid-template-columns:1fr}
.registration-summary-photo[data-photo-role="collaborator"] .registration-summary-photo-grid{grid-template-columns:1fr}
/* Verificación de fotos: texto limpio, sin peso excesivo. */
.registration-photo-grid .photo-upload b,.registration-photo-grid .identity-privacy b{font-weight:500}.registration-photo-grid .photo-upload [data-photo-upload-action]{grid-column:2;justify-self:start;margin-top:4px}
.registration-identity-grid{margin-top:13px}.taxi-vehicle-photo-grid{margin-top:22px;padding-top:20px;border-top:1px solid #e5e9f0}.taxi-photo-section-heading{box-sizing:border-box;display:flex;align-items:flex-start;gap:10px;width:100%;padding:0 2px 4px;color:#27334b}.taxi-photo-section-heading>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;color:#176a58}.taxi-photo-section-heading svg{width:22px;height:22px}.taxi-photo-section-heading>div{display:grid;gap:4px;padding-top:2px}.taxi-photo-section-heading b{font-size:16px;line-height:1.25}.taxi-photo-section-heading small{color:var(--muted);font-size:11px;line-height:1.5}.taxi-extra-photo-upload{box-sizing:border-box;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:13px;width:100%;padding:16px;color:#27334b;background:#fffdf6;border:1px dashed #d5ae48;border-radius:15px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.taxi-extra-photo-upload:hover{background:#fff9e8;border-color:#b98913;transform:translateY(-1px)}.taxi-extra-photo-upload input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.taxi-extra-photo-upload:focus-within{outline:3px solid rgba(229,173,24,.18);outline-offset:2px}.taxi-extra-photo-icon{display:grid;place-items:center;width:48px;height:48px;color:#7a5700;background:#ffe8a8;border-radius:13px}.taxi-extra-photo-icon svg{width:22px;height:22px}.taxi-extra-photo-upload>span:last-child{display:grid;gap:3px}.taxi-extra-photo-upload b{font-size:14px}.taxi-extra-photo-upload small{color:var(--muted);font-size:11px;line-height:1.45}.taxi-extra-photo-upload em{margin-top:4px;color:#866000;font-size:10px;font-style:normal;font-weight:750}.taxi-extra-photo-previews{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%}.taxi-extra-photo-previews[hidden]{display:none}.taxi-extra-photo-previews img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#e8edf5;border:1px solid #d8dee8;border-radius:11px}.registration-summary-extra-photos{grid-column:1/-1}.registration-summary-extra-photos .taxi-extra-photo-previews{grid-template-columns:repeat(5,minmax(0,1fr));min-height:0}.registration-summary-extra-photos .taxi-extra-photo-previews img{height:auto}
.taxi-extra-photo-section{box-sizing:border-box;display:grid;gap:11px;width:100%;padding-top:5px}.taxi-extra-photo-section>div:first-child{display:grid;gap:3px}.taxi-extra-photo-section>div:first-child b{color:#27334b;font-size:14px}.taxi-extra-photo-section>div:first-child small{color:var(--muted);font-size:11px;line-height:1.45}.taxi-extra-photo-section>em{color:#866000;font-size:10px;font-style:normal;font-weight:750}.taxi-extra-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;width:100%}.taxi-extra-photo-slot{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;overflow:visible;background:#fffdf6;border:1px dashed #d5ae48;border-radius:13px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.taxi-extra-photo-slot:hover{background:#fff9e8;border-color:#b98913;transform:translateY(-1px)}.taxi-extra-photo-slot:focus-within{outline:3px solid rgba(229,173,24,.18);outline-offset:2px}.taxi-extra-photo-slot input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none;clip:rect(0,0,0,0)}.taxi-extra-photo-add{display:grid;place-items:center;gap:4px;color:#866000}.taxi-extra-photo-add svg{width:24px;height:24px}.taxi-extra-photo-add small{font-size:9px;font-weight:750}.taxi-extra-photo-slot>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:12px}.taxi-extra-photo-slot>img[hidden],.taxi-extra-photo-slot>[hidden]{display:none}.taxi-extra-photo-slot.has-photo{background:#e8edf5;border-style:solid;border-color:#cbd3df}.taxi-extra-photo-slot>[data-remove-taxi-extra]{position:absolute;z-index:2;top:-8px;right:-8px;display:grid;place-items:center;width:27px;height:27px;padding:0;color:#fff;background:#bd3947;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 9px rgba(74,18,25,.28);font-size:19px;font-weight:700;line-height:1;cursor:pointer}.taxi-extra-photo-slot>[data-remove-taxi-extra][hidden]{display:none}.taxi-extra-photo-slot>[data-remove-taxi-extra]:hover{background:#9f2835}.registration-summary-extra-photos .taxi-extra-photo-previews{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(min-width:681px){.registration-photo-grid.courier-fields{grid-template-columns:minmax(0,1fr);align-items:stretch}.registration-photo-grid.courier-fields .photo-upload{height:100%;align-items:center}.registration-photo-grid.courier-fields .photo-upload>span:nth-of-type(2){display:grid;align-content:center}.registration-photo-grid.courier-fields .identity-privacy{grid-column:1/-1}}
.taxi-vehicle-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;margin-top:13px}.registration-verification-grid>.taxi-identity-section-heading{grid-column:1/-1}.taxi-vehicle-photo-grid>.taxi-photo-section-heading,.taxi-vehicle-photo-grid>.taxi-extra-photo-section{grid-column:1/-1}.taxi-vehicle-photo-grid>.taxi-photo-section-heading{padding:0 0 5px}.taxi-vehicle-photo-grid>.photo-upload{height:100%;min-height:138px}.taxi-vehicle-photo-grid>.taxi-extra-photo-section{margin-top:5px;padding-top:18px;border-top:1px solid #e5e9f0}.registration-summary-photo[data-photo-role="taxi"] .registration-summary-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:680px){.taxi-vehicle-photo-grid,.registration-summary-photo[data-photo-role="taxi"] .registration-summary-photo-grid{grid-template-columns:1fr}.taxi-extra-photo-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.taxi-extra-photo-add small{display:none}.taxi-extra-photo-slot>[data-remove-taxi-extra]{top:-6px;right:-6px;width:24px;height:24px;font-size:17px}}
/* Mantiene todas las tarjetas de fotos dentro de su sección, también en el perfil. */
.registration-photo-grid{display:grid;width:100%;min-width:0;max-width:100%}
.registration-photo-grid>.photo-upload{width:100%;min-width:0;max-width:100%}
.registration-photo-grid .photo-upload-copy,.registration-photo-grid .photo-upload-copy>*{min-width:0;max-width:100%}
.registration-photo-grid .photo-upload-title,.registration-photo-grid .photo-upload-copy small{overflow-wrap:anywhere;white-space:normal}
.profile-shell .taxi-profile-vehicle,.profile-shell .taxi-vehicle-photo-grid{min-width:0;max-width:100%}
.profile-shell .taxi-vehicle-photo-grid{gap:20px;margin-inline:0}
.registration-actions{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:space-between;gap:12px;margin-top:27px;padding-top:20px;border-top:1px solid #e7eaf0}.registration-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:126px;min-height:46px}.registration-actions .button svg{width:17px;height:17px}.registration-actions-first .button{grid-column:2}.registration-actions-final .button-primary{min-width:205px}
.registration-summary{display:grid;grid-template-columns:1fr 1fr;gap:13px}.registration-summary article{min-width:0;padding:16px;background:#f8f9fc;border:1px solid #e2e6ed;border-radius:16px}.registration-summary article>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #e2e6ed}.registration-summary article>header>span{display:grid;place-items:center;width:35px;height:35px;color:var(--blue);background:#e8efff;border-radius:10px}.registration-summary article>header svg{width:17px;height:17px}.registration-summary article>header>div{display:grid;min-width:0}.registration-summary article>header small{color:var(--blue);font-size:8px;font-weight:850;letter-spacing:.08em}.registration-summary article h3{overflow:hidden;margin:2px 0 0;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.registration-summary article>header button{padding:5px;color:var(--blue);background:transparent;border:0;font-size:10px;font-weight:800;cursor:pointer}.registration-summary dl{display:grid;gap:0;margin:10px 0 0}.registration-summary dl>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid #e7eaf0}.registration-summary dl>div:last-child{border-bottom:0}.registration-summary dl>div[hidden]{display:none!important}.registration-summary dt{color:var(--muted);font-size:9px}.registration-summary dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--ink);font-size:10px;font-weight:700;text-align:right}.registration-summary-photo{grid-column:1/-1}.registration-summary-photo dl{grid-template-columns:repeat(3,1fr);gap:9px}.registration-summary-photo dl>div{display:grid;grid-template-columns:1fr;gap:3px;padding:10px;background:#fff;border:1px solid #e5e8ee;border-radius:10px}.registration-summary-photo dd{text-align:left;color:#247058}
.registration-terms{grid-template-columns:auto minmax(0,1fr);gap:11px;margin-top:16px;padding:14px;background:#eef9f5;border:1px solid #d4ebe3;border-radius:13px}.registration-terms>span{display:grid;gap:3px}.registration-terms b{font-size:12px}.registration-terms small{font-size:10px;line-height:1.45}.registration-terms.is-invalid{border-color:#df6973;background:#fff9fa}.registration-terms input{margin-top:2px}
.register-shell .auth-switch{margin-top:34px;font-size:12px}
@media(max-width:1100px){.register-shell{grid-template-columns:minmax(580px,1fr) minmax(330px,.72fr)}.register-shell .auth-form-side{padding-inline:25px}.registration-wizard-card{padding-inline:26px}.register-shell .auth-visual{padding:48px}.register-shell .auth-benefits h2{font-size:32px}}
@media(max-width:920px){.register-shell{grid-template-columns:1fr}.register-shell .auth-form-side{padding:92px 20px 40px}.register-shell .auth-visual{display:none}.registration-wizard-card{margin-inline:auto}}
@media(max-width:680px){.register-shell .auth-form-side{padding:78px 11px 25px}.registration-wizard-card{width:100%;padding:20px 15px 18px;border-radius:19px}.registration-wizard-card .auth-back-link{margin-bottom:13px}.registration-wizard-intro h1{font-size:29px}.registration-wizard-intro .form-intro{font-size:12px}.registration-wizard{margin-top:19px}.registration-progress{margin-bottom:22px;padding:0}.registration-progress::before{top:15px}.registration-progress button{gap:5px}.registration-progress button>span{width:31px;height:31px;font-size:10px}.registration-progress button>small{font-size:8px}.registration-step-heading{grid-template-columns:auto minmax(0,1fr);gap:11px;margin-bottom:19px}.registration-step-heading>span{width:42px;height:42px;border-radius:13px 13px 13px 5px}.registration-step-heading>span svg{width:20px;height:20px}.registration-step-heading h2{font-size:20px}.registration-step-heading p{font-size:11px}.registration-step .role-picker{grid-template-columns:1fr 1fr;gap:9px}.registration-step .role-picker label>span{min-height:133px;padding:15px 12px}.registration-step .role-picker svg{width:29px;height:29px;margin-bottom:10px}.registration-step .role-picker b{font-size:12px;line-height:1.25}.registration-step .role-picker small{font-size:9px}.registration-step .role-picker input:checked+span::after{top:10px;right:10px}.registration-personal-grid,.registration-role-panel .form-grid{grid-template-columns:1fr}.registration-password-field,.registration-wide-field{grid-column:auto}.registration-step input,.registration-step select{font-size:16px}.registration-photo-grid .photo-upload{grid-template-columns:auto minmax(0,1fr);min-height:104px;padding:14px}.registration-photo-grid .photo-upload :is(em,[data-photo-upload-action]){grid-column:2;justify-self:start;padding:7px 10px}.registration-photo-grid .photo-preview{grid-row:1/3}.registration-actions{margin-top:22px;padding-top:16px}.registration-actions .button{min-width:108px;padding-inline:14px}.registration-actions-final{grid-template-columns:.68fr 1.32fr}.registration-actions-final .button{width:100%;min-width:0;padding-inline:9px;font-size:11px}.registration-summary{grid-template-columns:1fr}.registration-summary article{padding:14px}.registration-summary-photo{grid-column:auto}.registration-summary-photo dl{grid-template-columns:1fr}.registration-summary dl>div{grid-template-columns:82px minmax(0,1fr)}.registration-terms{padding:13px}.register-shell .auth-switch{margin-top:30px}}
@media(max-width:370px){.registration-wizard-card{padding-inline:12px}.registration-progress button>small{font-size:7px}.registration-step .role-picker label>span{min-height:128px;padding-inline:10px}.registration-step .role-picker b{font-size:11px}.registration-actions{gap:8px}.registration-actions .button{min-width:100px;padding-inline:11px}}
@media(prefers-reduced-motion:reduce){.registration-step{animation:none}.registration-step .role-picker label>span{transition:none}}
@media(max-width:680px){.registration-photo-grid .photo-preview{grid-row:auto}}
@media(max-width:680px){.taxi-photo-section-heading{padding:0 1px 3px}.taxi-photo-section-heading b{font-size:15px}.taxi-extra-photo-upload{padding:14px}.taxi-extra-photo-previews{grid-template-columns:repeat(3,minmax(0,1fr))}.registration-summary-extra-photos .taxi-extra-photo-previews{grid-template-columns:repeat(3,minmax(0,1fr))}}

.admin-permission-actions{display:flex;flex-wrap:wrap;gap:6px}.admin-permission-actions .button,.admin-table td>.button,.admin-table td form .button{min-height:34px;padding:7px 10px;font-size:11px}
.permissions-heading{margin-bottom:24px;padding:4px 0}.permissions-heading small{color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.13em}.permissions-heading h1{margin:6px 0 7px;color:var(--navy);font-size:32px;line-height:1.15}.permissions-heading p{margin:0;color:var(--muted);font-size:14px}.permissions-panel{padding:0;overflow:hidden}.permissions-panel>.admin-panel-title{margin:0;padding:21px;border-bottom:1px solid var(--line)}.permission-user-list{display:grid}.permission-user{display:grid;grid-template-columns:minmax(260px,1fr) minmax(150px,.6fr) auto;align-items:center;gap:18px;padding:17px 21px;border-bottom:1px solid var(--line)}.permission-user:last-child{border-bottom:0}.permission-user-info{display:flex;align-items:center;gap:11px;min-width:0}.permission-user-info>div{display:grid;gap:3px;min-width:0}.permission-user-info h3{margin:0;overflow:hidden;color:var(--navy);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.permission-user-info p,.permission-user-info small{margin:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.permission-user-status{justify-self:start}.permission-user-actions{display:flex;gap:7px;justify-content:flex-end}.permission-user-actions form{margin:0}.permission-user-actions .button{min-height:36px;padding:8px 11px;font-size:11px;white-space:nowrap}
@media(max-width:720px){.permission-user{grid-template-columns:1fr;gap:11px;padding:16px}.permission-user-status{justify-self:start}.permission-user-actions{justify-content:flex-start}.permissions-heading h1{font-size:27px}}
.permission-editor{position:relative;justify-self:end}.permission-editor>summary{min-width:82px;padding:9px 13px;color:var(--navy);background:#fff;border:1px solid #cfd6e2;border-radius:10px;font-size:12px;font-weight:750;text-align:center;cursor:pointer;list-style:none}.permission-editor>summary::-webkit-details-marker{display:none}.permission-editor[open]>summary{color:var(--blue);border-color:#91abe8;background:#f3f6ff}.permission-editor-menu{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:290px;padding:7px;background:#fff;border:1px solid #dce1ea;border-radius:13px;box-shadow:0 16px 38px rgba(16,25,53,.18)}.permission-editor-menu form{margin:0}.permission-editor-menu button{display:grid;gap:3px;width:100%;padding:12px;color:var(--navy);background:transparent;border:0;border-radius:9px;text-align:left;cursor:pointer}.permission-editor-menu button:hover{background:#f1f5ff}.permission-editor-menu button+button{margin-top:3px}.permission-editor-menu b{font-size:13px}.permission-editor-menu small{color:var(--muted);font-size:11px;line-height:1.35}.permission-editor-menu button.is-danger{color:#a43e48}.permission-editor-menu button.is-danger:hover{background:#fff1f2}.permission-editor-menu button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:720px){.permission-editor{justify-self:stretch}.permission-editor>summary{width:100%}.permission-editor-menu{position:static;width:100%;margin-top:7px;box-shadow:none}}

.permission-edit-button{justify-self:end;min-width:82px;padding:9px 13px;color:var(--navy);background:#fff;border:1px solid #cfd6e2;border-radius:10px;font-size:12px;font-weight:750;cursor:pointer}.permission-edit-button:hover{color:var(--blue);border-color:#91abe8;background:#f3f6ff}.permission-dialog{width:min(520px,calc(100% - 28px));padding:0;background:transparent;border:0;border-radius:20px}.permission-dialog::backdrop{background:rgba(10,17,35,.62);backdrop-filter:blur(2px)}.permission-dialog-card{overflow:hidden;background:#fff;border:1px solid #dfe4ed;border-radius:20px;box-shadow:0 25px 70px rgba(16,25,53,.3)}.permission-dialog-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:22px 23px 18px;border-bottom:1px solid var(--line)}.permission-dialog-card>header small{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.11em}.permission-dialog-card>header h2{margin:5px 0 3px;font-size:21px}.permission-dialog-card>header p{margin:0;color:var(--muted);font-size:12px}.permission-dialog-card>header>button{width:34px;height:34px;color:var(--muted);background:#f3f5f8;border:0;border-radius:10px;font-size:22px;cursor:pointer}.permission-dialog-card fieldset{display:grid;gap:9px;margin:0;padding:20px 23px;border:0}.permission-dialog-card legend{margin-bottom:10px;color:var(--navy);font-size:13px;font-weight:750}.permission-choice{display:block}.permission-choice input{position:absolute;opacity:0;pointer-events:none}.permission-choice>span{display:grid;grid-template-columns:24px minmax(0,1fr);gap:2px 10px;padding:14px;background:#fafbfc;border:1px solid #dfe3eb;border-radius:12px;cursor:pointer}.permission-choice i{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;color:transparent;background:#fff;border:1px solid #cbd3df;border-radius:50%;font-size:11px;font-style:normal}.permission-choice b{font-size:13px}.permission-choice small{color:var(--muted);font-size:11px;line-height:1.4}.permission-choice input:checked+span{background:#f0fbf7;border-color:#72cdb6;box-shadow:0 0 0 3px rgba(66,217,199,.1)}.permission-choice input:checked+span i{color:#fff;background:#2aa475;border-color:#2aa475}.permission-choice input:disabled+span{opacity:.45;cursor:not-allowed}.permission-dialog-card>footer{display:flex;justify-content:flex-end;gap:9px;padding:16px 23px;background:#f7f8fb;border-top:1px solid var(--line)}@media(max-width:720px){.permission-edit-button{justify-self:stretch}.permission-dialog-card>header,.permission-dialog-card fieldset{padding-inline:17px}.permission-dialog-card>footer{padding-inline:17px}.permission-dialog-card>footer .button{flex:1;padding-inline:10px}}

.permission-user-status{display:flex;flex-wrap:wrap;gap:5px}.permission-empty-note{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.team-add{margin-bottom:18px;padding:0;overflow:hidden}.team-add>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 21px;color:var(--navy);font-size:15px;font-weight:750;cursor:pointer;list-style:none}.team-add>summary::-webkit-details-marker{display:none}.team-add>summary span{font-size:22px;line-height:1;transition:transform .2s}.team-add[open]>summary span{transform:rotate(180deg)}.team-add-body{padding:0 21px 20px;border-top:1px solid var(--line)}.team-add-body>p{margin:16px 0;color:var(--muted);font-size:12px}.team-search{display:grid;gap:7px;max-width:650px}.team-search label{color:var(--navy);font-size:12px;font-weight:700}.team-search>div{display:flex;gap:8px}.team-search input{flex:1;min-width:0;min-height:41px;padding:9px 12px;background:#fff;border:1px solid #dce1eb;border-radius:10px;font-size:13px}.team-search .button{min-height:41px}.team-search-results{margin-top:20px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.team-search-results>h3{margin:0;padding:13px 16px;background:#f7f9fc;font-size:13px}.team-search-results .permission-user{grid-template-columns:minmax(0,1fr) auto;padding:13px 16px}.team-search-results .admin-empty{padding:16px}.team-access-note{justify-self:end;color:var(--muted);font-size:11px}.permissions-panel .admin-empty{padding:21px}@media(max-width:720px){.team-add>summary{padding:16px}.team-add-body{padding:0 16px 16px}.team-search-results .permission-user{grid-template-columns:1fr}.permission-edit-button,.team-access-note{justify-self:start}}

.business-history-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.business-history-heading .page-heading{margin:0}.business-history-tools{display:flex;align-items:center;gap:7px;margin-left:auto}.business-history-search{position:relative;display:flex;align-items:center;width:220px;height:39px;background:#fff;border:1px solid #dfe3eb;border-radius:11px;transition:border-color .18s,box-shadow .18s}.business-history-search:focus-within{border-color:#b4c3df;box-shadow:0 0 0 3px rgba(74,125,242,.06)}.business-history-search>svg{flex:0 0 16px;width:16px;height:16px;margin-left:11px;color:#929cad}.business-history-search input[type="search"]{min-width:0;height:100%;padding:0 8px;color:var(--ink);background:transparent;border:0;font-size:12px;outline:0}.business-history-search>button{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.business-history-search>a{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;margin-right:5px;color:#8d96a6;border-radius:8px;font-size:17px}.business-history-search>a:hover{background:#f1f3f7}.business-history-filter{position:relative}.business-history-filter>summary{display:grid;place-items:center;width:39px;height:39px;color:#69758a;background:#fff;border:1px solid #dfe3eb;border-radius:11px;cursor:pointer;list-style:none}.business-history-filter>summary::-webkit-details-marker{display:none}.business-history-filter>summary:hover,.business-history-filter[open]>summary{color:var(--navy);border-color:#b4c3df;background:#fafbfc}.business-history-filter>summary svg{width:18px;height:18px}.business-history-filter nav{position:absolute;z-index:25;top:calc(100% + 7px);right:0;display:grid;width:180px;padding:6px;background:#fff;border:1px solid #dfe3eb;border-radius:12px;box-shadow:0 14px 32px rgba(16,25,53,.15)}.business-history-filter nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;color:#5d687b;border-radius:8px;font-size:12px}.business-history-filter nav a:hover{background:#f4f6f9}.business-history-filter nav a.active{color:var(--navy);background:#effaf7}.business-history-filter nav b{color:#269b76;font-size:12px}@media(max-width:620px){.business-history-heading{align-items:stretch;flex-direction:column;gap:12px}.business-history-tools{width:100%}.business-history-search{flex:1;width:auto}.business-history-filter nav{right:0}}
.business-history-search input[type="search"]{flex:1;width:auto;min-height:0!important;margin:0;box-shadow:none!important;border:0!important;border-radius:0}.business-history-filter>summary{position:relative}.business-history-filter>summary>span{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;color:#fff;background:var(--green);border:2px solid #fff;border-radius:9px;font-size:8px;font-weight:800}.business-history-filter-panel{position:absolute;z-index:30;top:calc(100% + 8px);right:0;display:grid;gap:12px;width:370px;padding:17px;background:#fff;border:1px solid #dfe3eb;border-radius:15px;box-shadow:0 18px 45px rgba(16,25,53,.17)}.business-history-filter-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:11px;border-bottom:1px solid #edf0f4}.business-history-filter-panel header div{display:grid;gap:2px}.business-history-filter-panel header b{font-size:14px}.business-history-filter-panel header small{color:var(--muted);font-size:10px}.business-history-filter-panel header a{color:var(--blue);font-size:10px;font-weight:700}.business-history-filter-panel label{gap:5px;font-size:10px;font-weight:650}.business-history-filter-panel input,.business-history-filter-panel select{height:39px;min-height:39px;padding:7px 10px;border-radius:9px;font-size:12px;font-weight:400;box-shadow:none}.business-history-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.business-history-filter-panel>.button{width:100%;min-height:40px;margin-top:2px;font-size:12px}.business-history-filter[open]>summary{color:var(--blue)}@media(max-width:620px){.business-history-filter-panel{position:fixed;z-index:80;top:auto;right:14px;bottom:82px;left:14px;width:auto;max-height:calc(100dvh - 110px);overflow:auto;padding:16px}.business-history-search input[type="search"]{font-size:13px}}
.business-history-heading{align-items:flex-start}.business-history-heading .page-heading{display:grid;gap:13px}.business-history-statuses{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.business-history-statuses a{padding:7px 12px;color:#687387;background:#fff;border:1px solid #dfe3eb;border-radius:999px;font-size:13px;font-weight:500;line-height:1}.business-history-statuses a:hover{color:var(--navy);border-color:#b4c3df}.business-history-statuses a.active{color:#17684f;background:#eaf8f3;border-color:#a9decd}.business-history-search{width:270px}.business-history-search input[type="search"]{font-size:13px}.business-history-filter-panel{width:350px;gap:15px;padding:19px}.business-history-filter-panel header b{font-size:16px}.business-history-filter-panel header small{font-size:12px}.business-history-filter-panel header a{font-size:12px}.business-history-filter-panel label{gap:7px;font-size:12px}.business-history-filter-panel input,.business-history-filter-panel select{height:44px;min-height:44px;padding:9px 11px;font-size:14px}.business-history-filter-panel>.button{min-height:44px;font-size:13px}@media(max-width:620px){.business-history-heading .page-heading{gap:12px}.business-history-statuses{flex-wrap:nowrap;width:100%;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.business-history-statuses::-webkit-scrollbar{display:none}.business-history-statuses a{flex:0 0 auto;padding:8px 13px;font-size:13px}.business-history-tools{margin-left:0}.business-history-search{width:auto}.business-history-filter-panel{padding:18px}}
.profile-change-card{max-height:calc(100dvh - 28px);overflow:auto}.support-category-field{display:grid;gap:7px}.support-category-label{color:var(--ink);font-size:14px;font-weight:700}.support-category-picker{display:grid;gap:7px}.support-category-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:50px;padding:12px 14px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:11px;font-size:16px;text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s}.support-category-toggle:hover{border-color:#b9c2d2}.support-category-toggle:focus-visible,.support-category-picker.is-open .support-category-toggle{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08);outline:0}.support-category-toggle[aria-invalid="true"]{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}.support-category-toggle svg{flex:0 0 18px;width:18px;height:18px;color:#778399;transform:rotate(90deg);transition:transform .18s}.support-category-picker.is-open .support-category-toggle svg{transform:rotate(-90deg)}.support-category-menu{display:grid;gap:5px;max-height:285px;padding:7px;overflow:auto;background:#fff;border:1px solid #dce1eb;border-radius:13px;box-shadow:0 12px 28px rgba(16,25,53,.12);overscroll-behavior:contain}.support-category-menu[hidden]{display:none!important}.support-category-menu>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:11px 12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:10px;text-align:left;cursor:pointer}.support-category-menu>button:hover,.support-category-menu>button:focus-visible{background:#f4f7fb;border-color:#e2e7ef;outline:0}.support-category-menu>button.is-selected{background:#ebf8f4;border-color:#b8e2d5}.support-category-menu>button>span{display:grid;gap:3px}.support-category-menu b{font-size:15px;font-weight:650;line-height:1.25}.support-category-menu small{color:var(--muted);font-size:12px;line-height:1.35}.support-category-menu i{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;color:transparent;background:#fff;border:1px solid #d5dae4;border-radius:50%;font-size:11px;font-style:normal}.support-category-menu>button.is-selected i{color:#fff;background:var(--green);border-color:var(--green)}.support-category-error{color:#c43f4c;font-size:12px;font-weight:600}@media(max-width:560px){.profile-change-dialog{width:calc(100% - 20px)}.profile-change-card{gap:15px;padding:20px 16px;border-radius:18px}.support-category-label{font-size:15px}.support-category-toggle{min-height:52px;font-size:16px}.support-category-menu{max-height:min(300px,40dvh);padding:6px}.support-category-menu>button{min-height:62px;padding:12px 10px}.support-category-menu b{font-size:15px}.support-category-menu small{font-size:13px}.profile-change-actions .button{min-height:48px;font-size:15px}}

.support-change-card .profile-change-heading h2{margin:0}.support-change-card>label{font-size:12px;font-weight:400}.support-change-card>label textarea{font-weight:400}.support-change-card>label textarea::placeholder{font-size:13px;font-weight:400}

/* Resumen final con tipografía legible en móvil y escritorio. */
.registration-summary article>header small{font-size:10px}.registration-summary article h3{font-size:14px}.registration-summary article>header button{font-size:12px}.registration-summary dl>div{grid-template-columns:96px minmax(0,1fr);gap:9px;padding-block:9px}.registration-summary dt{font-size:11px;line-height:1.4}.registration-summary dd{font-size:12px;line-height:1.4}.registration-summary-photo dl>div{gap:4px;padding:11px}.registration-terms b{font-size:14px}.registration-terms small{font-size:12px;line-height:1.5}

/* Tamaños definitivos del resumen de registro. */
.registration-summary article>header small{font-size:12px}.registration-summary article h3{font-size:17px;line-height:1.3}.registration-summary article>header button{font-size:14px}.registration-summary dt{font-size:14px;line-height:1.45}.registration-summary dd{font-size:15px;line-height:1.45}.registration-terms b{font-size:15px}.registration-terms small{font-size:14px;line-height:1.5}
.registration-actions-final .button{font-size:14px;line-height:1.25}

/* Miniaturas reales en la revisión de fotografías. */
.registration-summary-photo-preview{display:grid!important;justify-items:center;align-content:center;gap:8px!important;text-align:center}.registration-summary-photo-preview img{display:block;width:100%;height:130px;object-fit:cover;background:#e8edf5;border:1px solid #dbe1eb;border-radius:10px}.registration-summary-photo-preview img[hidden]{display:none}.registration-summary-photo-preview img.is-selfie{width:112px;height:112px;justify-self:center;border-radius:50%}
@media(min-width:681px){.registration-summary-photo dl>div{align-content:start;min-width:0}.registration-summary-photo-preview{min-height:157px;align-content:start}.registration-summary-photo-preview img.is-selfie{width:130px;height:130px}}

/* Controles del historial alineados en una sola fila junto al listado. */
.business-history-heading{display:grid;align-items:stretch;gap:18px}.business-history-heading .page-heading{display:block;margin:0}.business-history-control-row{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%}.business-history-control-row .business-history-statuses{flex:1 1 auto}.business-history-control-row .business-history-tools{flex:0 0 auto;margin-left:auto}@media(max-width:760px){.business-history-heading{gap:14px}.business-history-control-row{display:grid;gap:12px}.business-history-control-row .business-history-statuses{width:100%}.business-history-control-row .business-history-tools{width:100%;margin-left:0}}

/* El selector de soporte flota sobre el formulario sin agrandar el modal. */
.profile-change-card{max-height:none;overflow:visible}.support-category-picker{position:relative}.support-category-menu{position:absolute;z-index:20;top:calc(100% + 7px);right:0;left:0;max-height:min(285px,42dvh)}@media(max-width:560px){.support-category-menu{max-height:min(280px,40dvh)}}

/* Extremos definidos: estados a la izquierda y herramientas a la derecha. */
.business-history-control-row{display:grid;grid-template-columns:max-content minmax(24px,1fr) max-content;align-items:center}.business-history-control-row .business-history-statuses{grid-column:1}.business-history-control-row .business-history-tools{grid-column:3;justify-self:end;margin-left:0}@media(max-width:760px){.business-history-control-row{grid-template-columns:1fr}.business-history-control-row .business-history-statuses,.business-history-control-row .business-history-tools{grid-column:1}.business-history-control-row .business-history-tools{justify-self:stretch}}

/* Calendario propio del historial; evita los selectores nativos del sistema. */
.history-date-field{display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:650}.history-date-picker{position:relative}.history-date-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:9px 11px;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:9px;font-size:14px;text-align:left;cursor:pointer}.history-date-toggle:hover{border-color:#b8c2d2}.history-date-toggle:focus-visible,.history-date-picker.is-open .history-date-toggle{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08);outline:0}.history-date-toggle svg{flex:0 0 17px;width:17px;height:17px;color:#778399}.history-date-toggle span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-calendar{position:fixed;z-index:160;display:grid;gap:10px;padding:14px;background:#fff;border:1px solid #dce1eb;border-radius:15px;box-shadow:0 20px 55px rgba(16,25,53,.23)}.history-calendar[hidden]{display:none!important}.history-calendar>header{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px}.history-calendar>header b{font-size:15px;font-weight:650;text-align:center;text-transform:capitalize}.history-calendar>header button{display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--navy);background:#f3f5f8;border:0;border-radius:10px;font-size:25px;line-height:1;cursor:pointer}.history-calendar>header button:hover{background:#e9edf3}.history-calendar-week,.history-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.history-calendar-week span{padding:4px 0;color:#8a94a5;font-size:11px;font-weight:700;text-align:center}.history-calendar-days>span,.history-calendar-days>button{aspect-ratio:1;min-width:0;min-height:35px;padding:0}.history-calendar-days>button{display:grid;place-items:center;color:#334057;background:transparent;border:1px solid transparent;border-radius:9px;font-size:14px;cursor:pointer}.history-calendar-days>button:hover,.history-calendar-days>button:focus-visible{color:var(--navy);background:#edf2ff;border-color:#d7e1fa;outline:0}.history-calendar-days>button.is-today{color:var(--blue);border-color:#b8c9ed;font-weight:700}.history-calendar-days>button.is-selected{color:#fff;background:var(--green);border-color:var(--green);font-weight:700}.history-calendar>footer{display:flex;justify-content:space-between;gap:8px;padding-top:9px;border-top:1px solid #edf0f4}.history-calendar>footer button{padding:8px 11px;color:var(--blue);background:#f1f5ff;border:0;border-radius:9px;font-size:13px;font-weight:650;cursor:pointer}.history-calendar>footer button:first-child{color:#687387;background:#f3f5f8}@media(max-width:560px){.history-date-field{font-size:13px}.history-date-toggle{min-height:48px;font-size:15px}.history-calendar{padding:13px}.history-calendar>header b{font-size:16px}.history-calendar-days>button{font-size:15px}.history-calendar>footer button{font-size:14px}}

/* Notificaciones legibles en pantallas de escritorio. */
@media(min-width:681px){.notification-heading .eyebrow{font-size:11px}.notification-heading p{font-size:15px;line-height:1.5}.notification-item{gap:16px;padding:21px 22px}.notification-kind{width:48px;height:48px;border-radius:13px}.notification-kind svg{width:22px;height:22px}.notification-item b{font-size:16px;font-weight:600;line-height:1.45}.notification-item small{margin-top:6px;font-size:13px;line-height:1.4}.notification-status{gap:5px;padding:4px 9px;font-size:11px}.notification-status .order-status-icon{width:12px;height:12px}.notification-item .row-arrow{width:19px;height:19px}}

/* La cabecera usa todo el ancho del listado, sin heredar el reparto del flex anterior. */
.business-history-heading{grid-template-columns:minmax(0,1fr);justify-content:stretch;width:100%}.business-history-control-row{min-width:0;width:100%}

/* En móvil, el panel nace debajo del botón de filtro y no junto a la barra inferior. */
@media(max-width:620px){.business-history-filter-panel{position:absolute;z-index:80;top:calc(100% + 8px);right:0;bottom:auto;left:auto;width:min(350px,calc(100vw - 28px));max-height:min(520px,65dvh);overflow:auto}}

/* La lupa es un control táctil real para enviar búsquedas desde el móvil. */
.business-history-search>.business-history-search-submit{position:static;display:grid;place-items:center;flex:0 0 38px;width:38px;height:100%;padding:0;color:#8490a3;background:transparent;border:0;border-radius:10px;overflow:visible;clip:auto;cursor:pointer}.business-history-search>.business-history-search-submit:hover,.business-history-search>.business-history-search-submit:focus-visible{color:var(--navy);background:#f3f5f8;outline:0}.business-history-search-submit svg{width:17px;height:17px}.history-search-empty{min-height:220px}.history-search-empty h3{font-size:18px}@media(max-width:620px){.business-history-search>.business-history-search-submit{flex-basis:42px;width:42px}.business-history-search-submit svg{width:18px;height:18px}.history-search-empty{min-height:180px}.history-search-empty h3{font-size:17px}}

/* Búsqueda progresiva sin recargar ni cerrar el teclado móvil. */
.business-history-search>.business-history-search-clear{position:static;display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;margin-right:4px;padding:0;color:#7f8999;background:transparent;border:0;border-radius:8px;overflow:visible;clip:auto;font-size:19px;cursor:pointer}.business-history-search>.business-history-search-clear:hover,.business-history-search>.business-history-search-clear:focus-visible{color:var(--navy);background:#f1f3f7;outline:0}.business-history-search.is-searching{border-color:#9eb2dc}.business-history-search.is-searching>.business-history-search-submit svg{animation:history-search-pulse .7s ease-in-out infinite alternate}[data-business-history-results]{transition:opacity .16s ease}[data-business-history-results].is-searching{opacity:.48;pointer-events:none}@keyframes history-search-pulse{to{opacity:.35;transform:scale(.88)}}

/* QR privado que recibe el destinatario. */
.recipient-delivery-code{display:grid;justify-items:center;gap:10px;margin-top:16px;padding:24px 18px;background:#f3fbf9;border:1px solid #bfece3;border-radius:17px;text-align:center}.recipient-delivery-code-label{color:#176b50;font-size:13px;font-weight:900;letter-spacing:.07em}.recipient-delivery-code strong{color:var(--navy);font-size:36px;font-weight:900;letter-spacing:6px;font-variant-numeric:tabular-nums}.recipient-delivery-code p{margin:0;color:#34425f;font-size:14px;font-weight:700;line-height:1.5}.delivery-code-only-form{display:grid;gap:10px;margin-top:14px}.delivery-code-status{min-height:18px;margin:0;color:rgba(255,255,255,.82);font-size:12px;line-height:1.45}.delivery-code-only-form.is-confirmed .delivery-code-status{color:#bdf6df;font-weight:700}
.recipient-code-guidance b{font-size:14px}.recipient-code-guidance small{color:#5b4518;font-size:13px!important;font-weight:650}

/* En móvil el calendario sale del panel desplazable y se presenta completo. */
@media(max-width:620px){body.history-calendar-open{overflow:hidden}body.history-calendar-open::before{content:"";position:fixed;z-index:150;inset:0;background:rgba(10,17,35,.48);backdrop-filter:blur(1px)}.history-calendar.is-mobile-modal{z-index:160;max-width:calc(100vw - 24px);border-radius:18px;box-shadow:0 24px 70px rgba(10,17,35,.34)}}

/* Pedido activo persistente y estado sin conexión del mensajero. */
.offline-active-order{border-color:#b9d8cf;background:#fff}.offline-active-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:12px;border-top:1px solid #e5ece9}.offline-active-meta>span{display:grid;gap:2px;min-width:0}.offline-active-meta small{color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.07em}.offline-active-meta b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.offline-active-meta>a{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--blue);font-size:11px;font-weight:750}.offline-active-meta>a svg{width:15px;height:15px}.offline-active-saved{display:flex!important;align-items:center;gap:6px;margin:10px 0 0!important;color:#35705f!important;font-size:10px!important;font-weight:700}.offline-active-saved svg{flex:0 0 14px;width:14px;height:14px}@media(max-width:680px){.offline-active-meta{align-items:flex-start;flex-direction:column}.offline-active-meta>a{min-height:34px;padding:7px 10px;background:#edf2ff;border-radius:9px}}

/* Detalle local cuando la URL completa todavía no había sido visitada. */
.offline-detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:22px 0}.offline-detail-heading h1{margin:8px 0 4px;font-size:30px}.offline-detail-heading p{margin:0;color:var(--muted);font-size:13px}.offline-detail-heading>strong{font-size:22px;white-space:nowrap}.offline-detail-state{display:inline-flex;align-items:center;gap:6px;color:#b52f3c;font-size:11px;font-weight:800}.offline-detail-state svg{width:16px;height:16px}.offline-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:start;gap:18px}.offline-detail-route{grid-row:span 2}.offline-detail-contact-list{display:grid;gap:10px}.offline-detail-contact-list>div{display:grid;gap:4px;padding:13px;background:var(--canvas);border-radius:11px}.offline-detail-contact-list small,.offline-detail-notes small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em}.offline-detail-contact-list b{font-size:14px}.offline-detail-contact-list span{color:var(--muted);font-size:11px}.offline-detail-contact-list a{display:inline-flex;align-items:center;gap:6px;width:max-content;margin-top:5px;color:var(--blue);font-size:11px;font-weight:750}.offline-detail-contact-list a svg{width:14px;height:14px}.offline-detail-notes{display:grid;gap:14px}.offline-detail-notes>div{display:grid;gap:5px}.offline-detail-notes p{margin:0;color:var(--text);font-size:12px;line-height:1.55}@media(max-width:760px){.offline-detail-heading{align-items:flex-start;flex-direction:column}.offline-detail-heading h1{font-size:27px}.offline-detail-heading>strong{font-size:19px}.offline-detail-grid{grid-template-columns:1fr}.offline-detail-route{grid-row:auto}}

/* Recogida segura sin conexión: QR de la tienda y cámara web integrada. */
.vehicle-picker-toggle.is-invalid{border-color:#df6973;box-shadow:0 0 0 4px rgba(221,76,87,.08)}
.delivery-code-share .recipient-whatsapp-link:disabled{cursor:wait;filter:saturate(.65);opacity:.78}
.pickup-qr-scan-button{margin-top:18px}.pickup-qr-scan-button svg{width:19px;height:19px}.pickup-code-alternative{display:flex;align-items:center;gap:10px;margin:18px 0 3px;color:rgba(255,255,255,.68);font-size:10px;font-weight:700;text-align:center}.pickup-code-alternative::before,.pickup-code-alternative::after{content:"";flex:1;border-top:1px solid rgba(255,255,255,.18)}.pickup-offline-qr{display:grid;justify-items:center;gap:7px;margin:17px 0 7px;padding:16px;color:var(--navy);background:#fff;border-radius:16px;text-align:center}.pickup-offline-qr img{display:block;width:min(220px,100%);aspect-ratio:1;object-fit:contain}.pickup-offline-qr b{font-size:13px}.pickup-offline-qr small{color:var(--muted);font-size:10px}.offline-pickup-scan-card{align-self:start}.pickup-qr-scanner-open{overflow:hidden}.pickup-qr-scanner{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(5,10,24,.94);backdrop-filter:blur(7px)}.pickup-qr-scanner-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(520px,100%);max-height:100%;padding:17px;color:#fff;background:#101935;border:1px solid rgba(255,255,255,.14);border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.38)}.pickup-qr-scanner-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pickup-qr-scanner-card>header>div{display:grid;gap:3px}.pickup-qr-scanner-card>header small{color:var(--aqua);font-size:9px;font-weight:850;letter-spacing:.1em}.pickup-qr-scanner-card h2{margin:0;font-size:20px}.pickup-qr-scanner-card>header button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);border-radius:13px;cursor:pointer}.pickup-qr-scanner-card>header button svg{width:20px;height:20px}.pickup-qr-viewport{position:relative;overflow:hidden;width:100%;aspect-ratio:3/4;max-height:min(66dvh,620px);background:#050914;border-radius:17px}.pickup-qr-viewport video{display:block;width:100%;height:100%;object-fit:cover}.pickup-qr-frame{position:absolute;left:50%;top:50%;width:min(68%,280px);aspect-ratio:1;border:3px solid var(--aqua);border-radius:20px;box-shadow:0 0 0 999px rgba(5,10,24,.46),0 0 0 5px rgba(66,217,199,.14);transform:translate(-50%,-50%)}.pickup-qr-scanner-card>p{min-height:38px;margin:0;color:rgba(255,255,255,.82);font-size:13px;line-height:1.45;text-align:center}.pickup-qr-scanner.has-camera-error .pickup-qr-viewport{display:grid;place-items:center;min-height:260px}.pickup-qr-scanner.has-camera-error .pickup-qr-viewport::after{content:"Cámara no disponible";position:absolute;color:#fff;font-size:15px;font-weight:700}@media(min-width:600px){.pickup-qr-viewport{aspect-ratio:4/3}}@media(max-width:430px){.pickup-qr-scanner{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.pickup-qr-scanner-card{width:100%;height:100dvh;max-height:none;padding:16px;border:0;border-radius:0}.pickup-qr-scanner-card h2{font-size:18px}.pickup-qr-viewport{max-height:none;border-radius:15px}.pickup-offline-qr img{width:min(200px,75vw)}}

/* Confirmación presencial offline de recogida. */
body .pickup-qr-scanner-card.has-offline-result{grid-template-rows:auto auto;width:min(390px,calc(100vw - 28px));height:auto;max-height:calc(100dvh - 28px);min-height:0;overflow:auto;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:22px}body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result{display:grid;gap:14px;overflow:visible}body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result-instruction{font-size:13px;line-height:1.5}@media(max-width:520px){body .pickup-qr-scanner-card.has-offline-result{width:calc(100vw - 24px);height:auto;max-height:calc(100dvh - 24px);padding:16px;border:1px solid rgba(255,255,255,.14);border-radius:20px}}
[data-pickup-qr-panel][hidden],[data-pickup-alternative-panel][hidden],[data-pickup-offline-section][hidden],.pickup-alternative-link[hidden],.pickup-qr-viewport[hidden],[data-pickup-qr-status][hidden]{display:none!important}
.business-offline-qr-card{display:grid;gap:17px;padding:21px;background:#fff;border-radius:21px;box-shadow:0 26px 80px rgba(7,13,30,.18)}.business-offline-qr-card>header{display:flex;justify-content:space-between;gap:16px}.business-offline-qr-card>header>div{display:grid;gap:4px}.business-offline-qr-card>header small{color:#23845f;font-size:10px!important;font-weight:850;letter-spacing:.09em}.business-offline-qr-card>header h2{margin:0;font-size:22px}.business-offline-qr-card>header p{margin:0;color:var(--muted);font-size:13px}.business-offline-qr-card>header button{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;color:var(--muted);background:#f1f3f7;border:0;border-radius:11px;font-size:25px;cursor:pointer}.business-offline-qr-card .pickup-offline-qr{margin:0}.business-offline-qr-card .pickup-offline-qr small{color:#32715f;font-weight:700}.business-offline-qr-card .pickup-offline-confirm{margin:0}.business-offline-qr-inline{margin:-8px 0 15px;border:1px solid #b9d8cf;box-shadow:0 10px 26px rgba(24,33,58,.08)}.business-offline-qr-inline>header strong{color:var(--ink);font-size:15px}.business-offline-qr-inline>header button{flex:0 0 auto;width:auto;min-height:34px;height:34px;padding:0 10px;font-size:12px}.business-offline-qr-inline .pickup-offline-qr{padding:10px}.business-offline-qr-inline .pickup-offline-qr img{width:min(220px,100%)}.business-offline-qr-inline .pickup-offline-qr b{font-size:12px}.business-offline-qr-inline .pickup-offline-confirm{padding:12px}.business-offline-qr-inline .pickup-offline-confirm h3{font-size:15px}@media(max-width:520px){.business-offline-qr-card{padding:17px 14px;border-radius:18px}}
.verification-owner-card .pickup-offline-qr small,.verification-owner-card [data-pickup-offline-section]>p{display:none}.verification-owner-card[data-business-published-offline-qr]>p{display:none}
.published-offline-qr-details{margin-top:18px}.published-offline-qr-details>summary{list-style:none}.published-offline-qr-details>summary::-webkit-details-marker{display:none}.published-offline-qr-details .pickup-qr-display-button{margin-top:0}.published-offline-qr-details[open]>summary{display:none}.published-offline-qr-panel{display:grid;gap:13px;margin-top:13px}.published-offline-qr-panel .pickup-offline-qr{margin:0}.published-offline-qr-panel .pickup-offline-confirm{margin:0}
.business-offline-delivery{display:grid;justify-items:center;gap:9px;padding:19px 17px;color:#153f35;background:#e6f8f1;border:1px solid #9fd8c7;border-radius:17px;text-align:center}.business-offline-delivery[hidden]{display:none}.business-offline-delivery small{color:#237a60;font-size:10px!important;font-weight:900;letter-spacing:.1em}.business-offline-delivery h3{margin:0;font-size:19px}.business-offline-delivery strong{display:block;width:min(240px,100%);padding:11px 13px;color:var(--navy);background:#fff;border:2px solid #75c5ae;border-radius:12px;font-size:24px;font-weight:950;letter-spacing:.14em;font-variant-numeric:tabular-nums}.business-offline-delivery p{max-width:360px;margin:0;color:#49675d;font-size:13px;line-height:1.5}@media(max-width:420px){.business-offline-delivery strong{font-size:22px}}
.courier-pickup-next-step-dialog{width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:visible;background:transparent;border:0}.courier-pickup-next-step-dialog::backdrop{background:rgba(7,13,30,.7);backdrop-filter:blur(3px)}.courier-pickup-next-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;margin:0;padding:22px;color:#153f35;background:#e6f8f1;border:1px solid #9fd8c7;border-radius:20px;box-shadow:0 26px 80px rgba(7,13,30,.34)}.courier-pickup-next-step-icon{display:grid;place-items:center;width:44px;height:44px;color:#fff;background:#23845f;border-radius:13px}.courier-pickup-next-step-icon svg{width:23px;height:23px}.courier-pickup-next-step>div{display:grid;gap:5px}.courier-pickup-next-step small{color:#237a60;font-size:9px!important;font-weight:900;letter-spacing:.09em}.courier-pickup-next-step h2{margin:0;font-size:20px;line-height:1.25}.courier-pickup-next-step p{margin:1px 0 0;color:#49675d;font-size:13px;line-height:1.5}.courier-pickup-next-step strong{justify-self:start;margin-top:9px;padding:10px 14px;color:#05070d;background:#fff;border:2px solid #75c5ae;border-radius:11px;font-size:28px;letter-spacing:.22em}.courier-pickup-next-step.is-offline strong{justify-self:center;min-width:150px;text-align:center}.courier-pickup-next-step>button{display:grid;place-items:center;width:38px;height:38px;padding:0;color:#557068;background:rgba(255,255,255,.7);border:0;border-radius:11px;cursor:pointer}.courier-pickup-next-step>button svg{width:17px;height:17px}.courier-pickup-next-step-continue{width:100%;min-height:46px;margin-top:13px}.courier-pickup-next-step-dialog[open]{animation:pickup-next-step-in .2s ease-out}@keyframes pickup-next-step-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:520px){.courier-pickup-next-step-dialog{width:calc(100% - 16px)}.courier-pickup-next-step{grid-template-columns:40px minmax(0,1fr) 34px;gap:10px;padding:18px 13px;border-radius:18px}.courier-pickup-next-step-icon{width:40px;height:40px}.courier-pickup-next-step h2{font-size:18px}.courier-pickup-next-step p{font-size:12px}.courier-pickup-next-step strong{font-size:27px}.courier-pickup-next-step>button{width:34px;height:34px}}
.courier-next-step-dialog{width:min(440px,calc(100% - 24px))}.courier-next-step-card{grid-template-columns:44px minmax(0,1fr);padding:22px;color:var(--ink);background:#fff;border-color:#e1e5eb}.courier-next-step-card>.courier-pickup-next-step-icon{color:#fff;background:#111}.courier-next-step-card>div{gap:7px}.courier-next-step-card>div>small{color:#5f6b7c}.courier-next-step-card h2{color:#111827;font-size:22px}.courier-next-step-card .courier-next-step-task{margin-top:2px;color:#202a39;font-size:16px;font-weight:750;line-height:1.45}.courier-next-step-location{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;margin-top:8px;padding:14px;color:var(--ink);background:#f7f8fa;border:1px solid #dfe3e9;border-radius:13px}.courier-next-step-location>svg{width:22px;height:22px;color:#111}.courier-next-step-location>span{display:grid;gap:4px}.courier-next-step-contact-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.courier-next-step-location b{min-width:0;font-size:15px;line-height:1.3}.courier-next-step-location small{color:#596679!important;font-size:10px!important}.courier-next-step-location em{color:#111827;font-size:17px;font-style:normal;font-weight:800;line-height:1.35}.courier-next-step-phone{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;min-height:32px;padding:6px 9px;color:#111;background:#fff;border:1px solid #cfd5de;border-radius:9px;font-size:11px;font-weight:850;text-decoration:none}.courier-next-step-phone[hidden]{display:none}.courier-next-step-phone svg{width:15px;height:15px}.courier-next-step-code-toggle{justify-self:start;margin-top:4px;padding:5px 0;color:#4d596b;background:transparent;border:0;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.courier-next-step-code-toggle[hidden]{display:none}.courier-next-step-code{display:grid;justify-items:center;gap:4px;padding:10px;background:#f4f5f7;border:1px solid #e0e3e8;border-radius:11px;text-align:center}.courier-next-step-code[hidden]{display:none}.courier-next-step-code strong{margin:2px 0 0;border-color:#d5dae2;font-size:25px}.courier-next-step-code p{color:#5f6977;font-size:11px}.courier-next-step-card .courier-pickup-next-step-continue{color:#fff;background:#111;box-shadow:none}.courier-next-step-card .courier-pickup-next-step-continue:hover{background:#000}@media(max-width:520px){.courier-next-step-dialog{width:calc(100% - 20px)}.courier-next-step-card{grid-template-columns:40px minmax(0,1fr);padding:18px 14px}.courier-next-step-card h2{font-size:20px}.courier-next-step-card .courier-next-step-task{font-size:15px}.courier-next-step-location{padding:12px}.courier-next-step-location em{font-size:16px}.courier-next-step-code strong{font-size:24px}}
.courier-next-step-card>.courier-pickup-next-step-icon{margin-top:18px;background:#176b50}.courier-next-step-card .courier-next-step-task{font-weight:400}.courier-next-step-phone{align-self:center;color:#fff;background:#176b50;border-color:#176b50}.courier-next-step-phone:hover,.courier-next-step-phone:focus-visible{color:#fff;background:#12553f;border-color:#12553f}
.courier-next-step-dialog.is-delivery .courier-pickup-next-step-icon{color:#6e4db5;background:#eee8ff}.courier-next-step-code-toggle{justify-self:center;text-align:center}.courier-next-step-code strong{justify-self:center}.courier-next-step-phone{justify-content:center;line-height:1}
.courier-next-step-location{grid-template-columns:24px minmax(0,1fr) auto;align-items:center}.courier-next-step-location>svg{align-self:center}.courier-next-step-phone{align-self:center}
.courier-next-step-phone:focus,.courier-next-step-phone:focus-visible{border-color:#176b50;outline:3px solid rgba(23,107,80,.25);outline-offset:2px;box-shadow:none}
.courier-offer-popover{position:fixed;z-index:450;top:calc(env(safe-area-inset-top,0px) + 80px);left:50%;display:grid;gap:12px;width:min(440px,calc(100% - 20px));padding:15px;color:var(--ink);background:#fff;border:1px solid #dce3ed;border-radius:17px;box-shadow:0 18px 55px rgba(7,13,30,.25);transform:translateX(-50%);animation:global-offer-in .24s ease both}.courier-offer-popover[hidden],.courier-offer-popover:empty,.courier-offer-popover.is-closing{display:none!important}.courier-offer-popover>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px}.courier-offer-popover>header>span{display:grid;place-items:center;align-self:center;width:38px;height:38px;color:#fff;background:var(--coral);border-radius:11px}.courier-offer-popover>header>span svg{width:19px;height:19px}.courier-offer-popover>header>div{display:grid;gap:1px}.courier-offer-popover>header small{color:var(--coral-dark);font-size:8px!important;font-weight:900;letter-spacing:.1em}.courier-offer-popover>header h2{margin:0;font-size:17px}.courier-offer-popover>header>strong{font-size:14px;white-space:nowrap}.courier-offer-popover>header>button{display:grid;place-items:center;width:34px;height:34px;padding:0;color:var(--muted);background:#f2f4f7;border:0;border-radius:10px;cursor:pointer}.courier-offer-popover>header>button svg{width:16px;height:16px}.courier-offer-popover-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;padding:10px 12px;background:#f5f7fa;border-radius:12px}.courier-offer-popover-route>span{display:grid;gap:2px}.courier-offer-popover-route small{color:var(--muted);font-size:8px;font-weight:850;letter-spacing:.06em}.courier-offer-popover-route b{font-size:12px}.courier-offer-popover-route>svg{width:17px;height:17px;color:var(--blue)}.courier-offer-popover-countdown{margin:0;color:var(--muted);font-size:10px;font-weight:700;text-align:center}.courier-offer-popover-actions{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px}.courier-offer-popover-actions .button{width:100%;min-height:43px;padding:9px 11px;font-size:12px}.courier-offer-popover .acceptance-network-status{margin:8px 0 0;font-size:10px;text-align:center}@keyframes global-offer-in{from{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%,0)}}@media(max-width:480px){.courier-offer-popover{top:calc(env(safe-area-inset-top,0px) + 70px);gap:10px;width:calc(100% - 12px);padding:12px;border-radius:15px}.courier-offer-popover>header{grid-template-columns:auto minmax(0,1fr) auto}.courier-offer-popover>header>span{grid-row:1/3;align-self:center}.courier-offer-popover>header>strong{grid-column:2;grid-row:2}.courier-offer-popover>header>button{grid-column:3;grid-row:1/3}.courier-offer-popover-route{padding:9px}.courier-offer-popover-actions .button{min-height:42px}}
@media(max-width:680px){.courier-offer-popover,.new-order-alerting.courier-offer-popover{z-index:90;box-sizing:border-box;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 160px);overflow-x:hidden;overflow-y:auto}}
.pickup-qr-display-button{margin-top:18px}.pickup-qr-display-button svg{width:19px;height:19px}.pickup-qr-scan-button,.pickup-qr-display-button{color:var(--navy);background:var(--gold);border:1px solid var(--gold);box-shadow:0 10px 25px rgba(247,185,85,.23)}.pickup-qr-scan-button:hover:not(:disabled),.pickup-qr-display-button:hover:not(:disabled){color:var(--navy);background:#f9c675;border-color:#f9c675;box-shadow:0 12px 27px rgba(247,185,85,.3)}.pickup-qr-scan-button svg,.pickup-qr-display-button svg{flex:0 0 16px;width:16px;height:16px}.pickup-alternative-link{display:block;margin:13px auto 0;padding:8px;color:rgba(255,255,255,.82);background:transparent;border:0;font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.pickup-confirmation-toggle{display:block;width:max-content;max-width:100%;margin:2px auto 0;padding:7px 5px;color:rgba(255,255,255,.9);background:transparent;border:0;font-size:12px;font-weight:750;text-align:center;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.pickup-confirmation-toggle:focus-visible{outline:2px solid var(--aqua);outline-offset:2px}.pickup-online-only-note{margin:8px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:11px!important;text-align:center}.pickup-offline-confirm{display:grid;gap:9px;margin:12px 0;padding:15px;color:var(--navy);background:#f3fbf8;border:1px solid #b9e3d8;border-radius:15px}.pickup-offline-confirm h3{margin:0;font-size:17px}.pickup-offline-confirm>p{margin:0;color:#49635d;font-size:12px;line-height:1.45}.pickup-offline-badge{display:inline-flex;align-items:center;gap:6px;width:max-content;color:#176b50;font-size:10px;font-weight:850;letter-spacing:.05em}.pickup-offline-badge svg{width:16px;height:16px}.pickup-offline-confirm form{display:grid;gap:9px}.pickup-offline-confirm label{display:grid;gap:5px}.pickup-offline-confirm label span{font-size:11px;font-weight:750}.pickup-offline-confirm input{height:58px;color:var(--navy);background:#fff;border:2px solid #b9d8cf;border-radius:12px;font-size:28px;font-weight:900;letter-spacing:.22em;text-align:center;text-transform:uppercase}.pickup-offline-confirm input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 4px rgba(36,104,242,.1)}.pickup-offline-confirm input.is-invalid,.pickup-offline-confirm input[aria-invalid="true"]{color:#8f2430;background:#fff1f2;border-color:#e65c66;box-shadow:0 0 0 4px rgba(221,76,87,.18)}.pickup-offline-confirm input.is-invalid:focus,.pickup-offline-confirm input[aria-invalid="true"]:focus{border-color:#e65c66;box-shadow:0 0 0 4px rgba(221,76,87,.24)}.pickup-offline-confirm [data-pickup-offline-status]{min-height:18px;margin:0;color:#9b2430;font-size:11px;font-weight:700;text-align:center}.pickup-offline-confirm.is-confirmed{background:#e4f7ef;border-color:#83cdb8}.pickup-offline-confirm.is-confirmed [data-pickup-offline-status]{color:#176b50}.pickup-qr-scanner-card.has-offline-result{grid-template-rows:auto minmax(0,1fr);overflow:auto}.pickup-offline-result{display:grid;gap:13px;overflow:auto}.pickup-offline-result-alert{display:flex;align-items:center;gap:10px;padding:12px;color:#176b50;background:#e4f7ef;border-radius:12px}.pickup-offline-result-alert>svg{flex:0 0 24px;width:24px;height:24px}.pickup-offline-result-alert span{display:grid;gap:2px}.pickup-offline-result-alert small{font-size:9px;font-weight:850;letter-spacing:.08em}.pickup-offline-result-alert b{font-size:14px}.pickup-offline-result>strong,.pickup-offline-result-code{display:block;padding:16px;color:var(--navy);background:var(--aqua);border-radius:14px;font-size:34px;font-weight:950;letter-spacing:.26em;text-align:center}.pickup-offline-result-instruction{margin:0;color:rgba(255,255,255,.82);font-size:12px;line-height:1.45;text-align:center}.pickup-offline-order-details{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pickup-offline-order-details>div{display:grid;gap:3px;padding:11px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:11px}.pickup-offline-order-details small{color:rgba(255,255,255,.6);font-size:8px;font-weight:850;letter-spacing:.07em}.pickup-offline-order-details b{font-size:12px;line-height:1.4}.offline-pickup-code-card{align-self:start}.offline-pickup-code-card .pickup-offline-result-code{margin:14px 0}.offline-pickup-code-card>p{color:rgba(255,255,255,.82)}@media(max-width:520px){.pickup-offline-order-details{grid-template-columns:1fr}.pickup-offline-result>strong,.pickup-offline-result-code{font-size:30px}}

/* Resultado compacto tras confirmar la recogida mediante el QR offline. */
body .pickup-qr-scanner-card.has-offline-result{grid-template-rows:auto;color:var(--ink);background:#fff;border-color:#dfe3eb}
body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result{gap:15px;text-align:center}
body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result h2{margin:0;color:var(--ink);font-size:22px;line-height:1.25}
body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result>strong{padding:18px;color:#05070d;background:#fff;border:2px solid #dfe3eb;border-radius:14px;box-shadow:0 7px 20px rgba(16,25,53,.07);font-size:36px}
body .pickup-qr-scanner-card.has-offline-result .pickup-offline-result-instruction{margin:0;color:var(--muted)}
.pickup-offline-result-close{color:#fff;background:#05070d;border:1px solid #05070d;box-shadow:none}.pickup-offline-result-close:hover:not(:disabled),.pickup-offline-result-close:focus-visible{color:#fff;background:#000;border-color:#000}

/* El pedido recuperado del teléfono conserva el mismo formato oscuro del pedido activo. */
.active-delivery-card.offline-active-order{color:#fff;background:var(--navy);border:1px solid rgba(255,255,255,.12)}.offline-active-order [hidden],.offline-history-order [hidden]{display:none!important}.offline-active-order .offline-active-meta{border-color:rgba(255,255,255,.14)}.offline-active-order .offline-active-meta small{color:rgba(255,255,255,.58)}.offline-active-order .offline-active-meta b{color:#fff}.offline-active-order .offline-active-meta>a{color:var(--aqua)}.offline-active-order .offline-active-saved{color:var(--aqua)!important}.offline-pickup-sync{margin:11px 0 0!important;padding:9px 11px;color:#fff!important;background:rgba(66,217,199,.12);border:1px solid rgba(66,217,199,.25);border-radius:9px;font-size:10px!important;font-weight:750}.offline-detail-package-meta{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;padding-top:13px;border-top:1px solid var(--line)}.offline-detail-package-meta>span{display:grid;gap:4px}.offline-detail-package-meta b{font-size:12px}.offline-delivery-next-step{align-self:start}.offline-history-order{border-color:#b9d8cf}.offline-history-order>summary{background:#f7fffc}.offline-history-order .history-route p{margin:2px 0 0;color:var(--text);font-size:10px;line-height:1.4}.offline-history-order .history-extra{grid-template-columns:repeat(3,minmax(0,1fr))}.offline-history-sync{margin:0;padding:9px 11px;color:#176b50;background:#e5f7f1;border-radius:9px;font-size:10px;font-weight:750}@media(max-width:680px){.offline-active-order .offline-active-meta>a{color:var(--aqua);background:rgba(255,255,255,.09)}.offline-history-order .history-extra,.offline-detail-package-meta{grid-template-columns:1fr}}

/* El aviso posterior al escaneo siempre queda centrado sobre el panel de inicio. */
.courier-pickup-next-step-dialog{position:fixed;z-index:1200;inset:0;margin:auto}

/* Ruta exacta cuando Samsung Internet muestra el bloqueo de Play Protect. */
.play-protect-route{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:-5px;padding:10px;color:#684511;background:#fffaf0;border:1px dashed #ddb96e;border-radius:12px;font-size:11px;font-weight:800}.play-protect-route span{padding:6px 9px;background:#fff;border:1px solid #ead4a6;border-radius:8px}.play-protect-route i{color:#a37a2c;font-size:17px;font-style:normal}
.install-secondary-note{margin:0;color:var(--muted);font-size:11px;line-height:1.45;text-align:center}.samsung-install-actions:has(>button:only-child){grid-template-columns:1fr}

/* Mantiene legible la comprobacion previa de instalacion, tambien en movil. */
.app-already-installed{padding:15px 16px;font-size:16px;line-height:1.55}
.app-already-installed strong{margin-bottom:5px;font-size:17px}
@media(max-width:600px){.app-already-installed{font-size:16px}.app-already-installed strong{font-size:17px}}

/* Acceso discreto al codigo presencial, solo dentro de los detalles offline. */
.offline-pickup-confirmation-detail{display:grid;justify-items:start;gap:9px;padding-top:12px;border-top:1px solid var(--line)}
.offline-pickup-confirmation-detail>button{padding:0;color:var(--muted);background:transparent;border:0;font:inherit;font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.offline-pickup-confirmation-detail>button:hover,.offline-pickup-confirmation-detail>button:focus-visible{color:var(--ink)}
.offline-pickup-confirmation-detail>div{padding:7px 10px;background:#f5f7fa;border:1px solid var(--line);border-radius:8px}
.offline-pickup-confirmation-detail strong{color:var(--ink);font-size:20px;letter-spacing:.16em}

/* Cuentas administrativas: tabla clara en escritorio y tarjetas legibles en movil. */
.admin-account-filters label{display:block;min-width:0}.admin-account-filters input,.admin-account-filters select{width:100%}.admin-accounts-table .admin-account-identity{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:11px;min-width:240px}.admin-account-avatar{display:grid;place-items:center;width:40px;height:40px;overflow:hidden;color:#315fc8;background:#edf2ff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(16,25,53,.12);font-size:14px;font-weight:850}.admin-account-avatar img,.admin-avatar img{display:block;width:100%;height:100%;object-fit:cover}.admin-avatar{overflow:hidden;border-radius:50%}.admin-account-copy{display:grid;min-width:0;gap:3px}.admin-account-copy b{overflow:hidden;text-overflow:ellipsis}.admin-account-copy small{overflow:hidden;text-overflow:ellipsis}.admin-account-mobile-place,.admin-account-mobile-label{display:none}.admin-account-action a{display:inline-flex;align-items:center;gap:5px}
.admin-phone-actions{display:inline-flex;align-items:center;gap:8px}.admin-whatsapp-link{display:inline-grid!important;place-items:center;box-sizing:border-box;flex:0 0 27px;width:27px;height:27px;padding:0!important;color:#168b5b!important;background:transparent;border:1px solid #168b5b;border-radius:8px;text-decoration:none;box-shadow:none}.admin-whatsapp-link:hover,.admin-whatsapp-link:focus-visible{color:#11784e!important;background:#edf9f4;border-color:#11784e}.admin-whatsapp-link:focus-visible{outline:3px solid rgba(22,139,91,.18);outline-offset:2px}.admin-whatsapp-link svg{display:block;width:17px;height:17px;fill:currentColor}.admin-account-phone .admin-whatsapp-link{flex-basis:22px;width:22px;height:22px;border-radius:6px}.admin-account-phone .admin-whatsapp-link svg{width:14px;height:14px}
@media(max-width:680px){.admin-accounts-page .admin-title{margin-bottom:18px}.admin-accounts-page .admin-title h1{font-size:27px}.admin-account-filters{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.admin-account-filters .admin-account-search{grid-column:1/-1}.admin-account-filters .button{grid-column:1/-1;width:100%;min-height:45px}.admin-accounts-list{overflow:visible;padding:0;background:transparent;border:0;box-shadow:none}.admin-accounts-table{display:block;min-width:0;white-space:normal}.admin-accounts-table thead{display:none}.admin-accounts-table tbody{display:grid;gap:11px}.admin-accounts-table .admin-account-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-soft)}.admin-accounts-table td{padding:0;border:0}.admin-accounts-table .admin-account-identity{grid-column:1;grid-row:1;min-width:0}.admin-account-copy b{font-size:15px;line-height:1.3;white-space:normal}.admin-account-copy small{font-size:12px;overflow-wrap:anywhere;white-space:normal}.admin-account-state{grid-column:2;grid-row:1;align-self:start}.admin-account-state .admin-status{font-size:11px}.admin-account-type{grid-column:1;grid-row:2;padding-left:51px!important;color:var(--text);font-size:13px!important;font-weight:750}.admin-account-mobile-place{display:inline;color:var(--muted);font-weight:500}.admin-account-place{display:none!important}.admin-account-phone{grid-column:1;grid-row:3;padding-left:51px!important;font-size:12px!important}.admin-account-phone a{color:var(--blue);font-weight:750}.admin-account-date{grid-column:1;grid-row:4;padding-left:51px!important;color:var(--muted);font-size:12px!important}.admin-account-mobile-label{display:inline}.admin-account-action{grid-column:1/-1;grid-row:5;margin-top:5px}.admin-account-action a{justify-content:center;width:100%;min-height:43px;color:var(--navy)!important;background:#edf2ff;border-radius:11px;font-size:13px;font-weight:800}.admin-account-action a span{font-size:16px}}
@media(max-width:420px){.admin-account-filters{grid-template-columns:1fr}.admin-account-filters .admin-account-search,.admin-account-filters .button{grid-column:auto}.admin-accounts-table .admin-account-row{grid-template-columns:minmax(0,1fr);padding:14px}.admin-account-state{grid-column:1;grid-row:2;padding-left:51px!important}.admin-account-type{grid-row:3}.admin-account-phone{grid-row:4}.admin-account-date{grid-row:5}.admin-account-action{grid-row:6}}

/* Una sola forma para el logo de EnRuta en todas sus apariciones. */
.install-icon,.app-requirements-mark,.email-template-preview-brand img,.admin-brand>span,.admin-login-mark{overflow:hidden;border-radius:31%}
.admin-brand>span,.admin-login-mark{color:#030712;background:#34e0bf}
.admin-brand>span svg,.admin-login-mark svg{width:62%;height:62%}
.admin-account-avatar>svg,.admin-avatar>svg{width:52%;height:52%}
.admin-account-role-filters{display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 16px}
.admin-account-role-filters a,.admin-account-role-badge{display:inline-flex;align-items:center;width:max-content;border:1px solid #dfe4ee;border-radius:999px;font-weight:850;letter-spacing:.025em}
.admin-account-role-filters a{min-height:34px;padding:7px 12px;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}
.admin-account-role-filters a:hover,.admin-account-role-filters a:focus-visible{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,25,53,.1)}
.admin-account-role-filters a.is-current{box-shadow:0 0 0 2px currentColor inset}
.admin-account-role-badge{padding:5px 9px;color:#536078;background:#f3f5f8;font-size:10px}
.admin-account-row{position:relative}
.taxi-diagnostic-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.taxi-diagnostic-card{display:grid;gap:3px;padding:14px 15px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft)}.taxi-diagnostic-card strong{color:var(--navy);font-size:25px;line-height:1}.taxi-diagnostic-card span{font-size:12px;font-weight:850}.taxi-diagnostic-card small{color:var(--muted);font-size:10px;line-height:1.3}.taxi-diagnostic-card.is-good{background:#edfbf5;border-color:#a8e2c8}.taxi-diagnostic-card.is-alert{background:#fff7e8;border-color:#f0ce83}.admin-taxi-diagnostic{min-width:210px;white-space:normal!important}.taxi-diagnostic-pill{display:inline-flex;margin-bottom:5px;padding:4px 8px;border-radius:999px;background:#eef1f6;color:#566174;font-size:10px;font-weight:900}.taxi-diagnostic-pill.is-good{background:#dff7eb;color:#116844}.taxi-diagnostic-pill.is-alert{background:#fff0cf;color:#885800}.taxi-diagnostic-line{display:block;color:var(--muted);font-size:10px;line-height:1.45}.taxi-diagnostic-line b{color:var(--text)}
.admin-account-comfort{min-width:175px;white-space:normal!important}.admin-account-comfort-vehicle{display:grid;justify-items:start;gap:3px;color:inherit}.admin-account-comfort-vehicle+.admin-account-comfort-vehicle{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.admin-account-comfort-vehicle .admin-status{padding:4px 7px;font-size:8px}.admin-account-comfort-vehicle small,.admin-account-comfort-empty{color:var(--muted);font-size:10px;line-height:1.4}.admin-account-comfort-vehicle:hover small{color:var(--blue)}
.admin-account-row.account-role-business{border-left:4px solid #2467d1}
.admin-account-row.account-role-courier{border-left:4px solid #168b62}
.admin-account-row.account-role-taxi{border-left:4px solid #e5ad18}
.admin-account-row.account-role-business .admin-account-avatar{color:#2467d1;background:#eaf2ff}
.admin-account-row.account-role-courier .admin-account-avatar{color:#147b58;background:#e5f7ef}
.admin-account-row.account-role-taxi .admin-account-avatar{color:#8a6200;background:#fff3bf}
.admin-account-role-filters .account-role-business,.account-role-business .admin-account-role-badge{color:#1f57ad;background:#eaf2ff;border-color:#c9dcff}
.admin-account-role-filters .account-role-courier,.account-role-courier .admin-account-role-badge{color:#116847;background:#e5f7ef;border-color:#bde8d5}
.admin-account-role-filters .account-role-taxi,.account-role-taxi .admin-account-role-badge{color:#765300;background:#fff3bf;border-color:#efd36e}
.admin-account-name-line{display:flex;align-items:center;gap:7px;min-width:0}.admin-account-name-line>b{min-width:0}.admin-premium-badge{display:inline-flex;align-items:center;flex:0 0 auto;padding:4px 7px;color:#6b4b00;background:#ffd95a;border:1px solid #e8bb28;border-radius:999px;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.055em;text-transform:uppercase;box-shadow:0 2px 7px rgba(122,88,0,.12)}.admin-premium-filters{grid-template-columns:minmax(230px,1fr) 190px 170px auto}.admin-nav-premium:before{display:inline-block;margin-right:6px;color:#ffd95a;content:"★"}.admin-sidebar nav .admin-nav-premium.active{color:#332400;background:#ffd95a}.admin-accounts-page:has(.admin-premium-filters) .admin-title>div>small{color:#9a6d00}.admin-accounts-page:has(.admin-premium-filters) .admin-title h1{display:flex;align-items:center;gap:9px}.admin-accounts-page:has(.admin-premium-filters) .admin-title h1:after{padding:5px 8px;color:#6b4b00;background:#ffd95a;border-radius:999px;content:"★";font-size:12px}@media(max-width:680px){.admin-premium-filters{grid-template-columns:1fr 1fr}.admin-premium-filters .admin-account-search,.admin-premium-filters .button{grid-column:1/-1}.admin-account-name-line{align-items:flex-start;flex-wrap:wrap}.admin-premium-badge{margin-top:1px;font-size:9px}}
.admin-premium-assignment-manager{display:grid;gap:12px;margin-top:16px}.admin-premium-assignment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-premium-assignment-heading>div{display:grid;gap:2px}.admin-premium-assignment-heading h3{margin:0;font-size:14px}.admin-premium-assignment-heading small{color:var(--muted);font-size:10px}.admin-premium-assignment-heading>.button{min-height:38px;padding:8px 13px;font-size:12px}.admin-premium-assigned-list{display:grid;gap:8px}.admin-premium-person-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:9px;background:#f7f9fc;border:1px solid #e2e7ef;border-radius:12px}.admin-premium-person-check{position:relative;display:grid;place-items:center;width:27px;height:27px;cursor:pointer}.admin-premium-person-check input{position:absolute;width:1px;height:1px;opacity:0}.admin-premium-person-check i{display:grid;place-items:center;width:22px;height:22px;color:transparent;background:#fff;border:1.5px solid #c5cedb;border-radius:7px;font-size:12px;font-style:normal;font-weight:900}.admin-premium-person-check input:checked+i{color:#fff;background:#b42335;border-color:#b42335}.admin-premium-person-check input:focus-visible+i{outline:3px solid rgba(180,35,53,.16);outline-offset:2px}.admin-premium-person-link{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;min-width:0;color:inherit}.admin-premium-person-link>span:last-child,.admin-premium-available-card>span:nth-of-type(2){display:grid;gap:2px;min-width:0}.admin-premium-person-link b,.admin-premium-person-link small,.admin-premium-available-card b,.admin-premium-available-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-premium-person-link b,.admin-premium-available-card b{font-size:12px}.admin-premium-person-link small,.admin-premium-available-card small{color:var(--muted);font-size:9px}.admin-premium-person-avatar{display:grid;place-items:center;width:38px;height:38px;overflow:hidden;color:#6b4b00;background:#fff0ae;border-radius:50%;font-size:13px;font-weight:900}.admin-premium-person-avatar img{width:100%;height:100%;object-fit:cover}.admin-premium-remove-selected{margin-top:9px;min-height:40px;font-size:12px}.admin-premium-assignment-empty,.admin-premium-no-available{margin:0;padding:11px 12px;color:var(--muted);background:#f6f7f9;border-radius:10px;font-size:11px;line-height:1.45}.admin-premium-assignment-dialog{width:min(520px,calc(100% - 22px));padding:0;background:transparent;border:0}.admin-premium-assignment-dialog::backdrop{background:rgba(10,17,37,.58);backdrop-filter:blur(3px)}.admin-premium-assignment-dialog>section{display:grid;gap:14px;padding:21px;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(10,17,37,.28)}.admin-premium-assignment-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-premium-assignment-dialog header>div{display:grid;gap:3px}.admin-premium-assignment-dialog header small{color:#9a6d00;font-size:9px;font-weight:900;letter-spacing:.1em}.admin-premium-assignment-dialog h2{margin:0;font-size:21px}.admin-premium-assignment-dialog header>button{display:grid;place-items:center;width:34px;height:34px;color:#536078;background:#f2f4f7;border:0;border-radius:10px;font-size:22px;cursor:pointer}.admin-premium-assignment-search input{width:100%;min-height:46px}.admin-premium-available-list{display:grid;gap:8px;max-height:340px;overflow:auto}.admin-premium-available-card{display:grid;grid-template-columns:auto 40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid #dfe5ed;border-radius:12px;cursor:pointer}.admin-premium-available-card:hover,.admin-premium-available-card:has(input:checked){background:#fff9df;border-color:#e5be35}.admin-premium-available-card>input{width:17px;height:17px;min-height:17px;margin:0;accent-color:#a97800}.admin-premium-available-card>i{display:none;color:#7a5700;font-style:normal;font-weight:900}.admin-premium-available-card:has(input:checked)>i{display:block}.admin-premium-available-card[hidden]{display:none}.admin-premium-available-list>[data-premium-assignment-no-results]{margin:0;padding:24px;color:var(--muted);text-align:center;font-size:12px}.admin-premium-assignment-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.admin-premium-assignment-actions .button{min-height:46px}@media(max-width:520px){.admin-premium-assignment-dialog>section{padding:17px;border-radius:17px}.admin-premium-available-list{max-height:45vh}.admin-premium-assignment-actions{grid-template-columns:1fr}.admin-premium-assignment-actions [data-premium-assignment-add]{grid-row:1}.admin-premium-assignment-actions [data-premium-assignment-close]{grid-row:2}}
.admin-account-detail-title{position:relative;padding:20px 22px 20px 26px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}
.admin-account-detail-title:before{position:absolute;inset:0 auto 0 0;width:6px;background:#aeb7c6;content:""}
.admin-account-detail.account-role-business .admin-account-detail-title:before{background:#2467d1}
.admin-account-detail.account-role-courier .admin-account-detail-title:before{background:#168b62}
.admin-account-detail.account-role-taxi .admin-account-detail-title:before{background:#e5ad18}
.admin-account-detail.account-role-business .admin-account-detail-title small{color:#1f57ad}
.admin-account-detail.account-role-courier .admin-account-detail-title small{color:#116847}
.admin-account-detail.account-role-taxi .admin-account-detail-title small{color:#765300}
.admin-premium-activate-button,.admin-premium-activate-button:hover:not(:disabled),.admin-premium-activate-button:focus-visible{color:#3d2d00;background:#f2c94c;border-color:#d8aa25;box-shadow:0 7px 16px rgba(122,88,0,.16)}
@media(max-width:850px){.admin-review-aside>.admin-account-decision-panel{order:20}.admin-review-aside>.admin-premium-mode-panel{order:21}.admin-review-aside>.admin-business-order-settings{order:22}.admin-review-aside>.admin-premium-assignments-panel{order:23}.admin-review-aside>.admin-password-reset,.admin-review-aside>.admin-delete-account{order:30}}
@media(min-width:681px){.admin-account-row.account-role-business>td:first-child{border-left:4px solid #2467d1}.admin-account-row.account-role-courier>td:first-child{border-left:4px solid #168b62}.admin-account-row.account-role-taxi>td:first-child{border-left:4px solid #e5ad18}}
@media(max-width:900px){.taxi-diagnostic-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.taxi-diagnostic-summary{grid-template-columns:1fr 1fr;gap:8px}.taxi-diagnostic-card{padding:12px}.taxi-diagnostic-card strong{font-size:22px}.admin-accounts-table .admin-taxi-diagnostic{grid-column:1/-1;grid-row:5;padding:10px 12px!important;background:#f7f9fc;border-radius:10px}.admin-accounts-table .admin-account-action{grid-row:7}.admin-accounts-table .admin-account-date{grid-row:6}}
@media(max-width:680px){.admin-accounts-table .admin-account-comfort{grid-column:1/-1;grid-row:4;padding:10px 12px!important;background:#f7faf8;border-radius:10px}.admin-account-comfort-vehicle{grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:start}.admin-account-comfort-vehicle+.admin-account-comfort-vehicle{margin-top:7px;padding-top:7px}}
@media(max-width:420px){.taxi-diagnostic-summary{grid-template-columns:1fr}.admin-accounts-table .admin-taxi-diagnostic{grid-row:6}.admin-accounts-table .admin-account-date{grid-row:7}.admin-accounts-table .admin-account-action{grid-row:8}}
@media(max-width:420px){.admin-accounts-table .admin-account-comfort{grid-row:5}}

/* Revisión final del registro: datos ordenados y fotos alineadas según la pantalla. */
.registration-summary{align-items:start;gap:15px}
.registration-summary article{padding:17px;background:#fafbfc;border-color:#dfe4ec;box-shadow:0 4px 14px rgba(16,25,53,.035)}
.registration-summary article>header{min-height:48px;padding-bottom:13px}
.registration-summary article>header small{font-size:10px}
.registration-summary article h3{font-size:15px}
.registration-summary article>header button{font-size:12px}
.registration-summary dl{margin-top:8px}
.registration-summary dl>div{grid-template-columns:94px minmax(0,1fr);align-items:start;gap:11px;padding:10px 0}
.registration-summary dt{font-size:12px;font-weight:650;line-height:1.45}
.registration-summary dd{font-size:13px;line-height:1.45}
.registration-summary-photo{grid-column:1/-1}
.registration-summary-photo .registration-summary-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.registration-summary-photo .registration-summary-photo-item{display:grid;grid-template-columns:1fr;align-content:start;gap:9px;min-height:204px;padding:12px;background:#fff;border:1px solid #e1e6ee;border-radius:13px}
.registration-summary-photo .registration-summary-photo-item dt{color:#38445b;font-size:12px;font-weight:800;text-align:center}
.registration-summary-photo .registration-summary-photo-preview{display:grid!important;place-items:center;width:100%;height:156px;min-height:0;padding:0;overflow:hidden;background:#eef1f5;border:1px solid #dbe1ea;border-radius:10px;text-align:center}
.registration-summary-photo .registration-summary-photo-preview img{display:block;width:100%;height:100%;object-fit:cover;background:#eef1f5;border:0;border-radius:9px}
.registration-summary-photo .registration-summary-photo-preview img[data-summary-preview="identity_photo"]{object-fit:contain;background:#fff}
.registration-summary-photo .registration-summary-photo-preview img.is-selfie{width:142px;height:142px;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 13px rgba(16,25,53,.14)}
.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-grid{grid-template-columns:1fr}
.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-item{grid-template-columns:110px minmax(0,1fr);align-items:center;min-height:0}
.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-item dt{text-align:left}
.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-preview{height:176px}
@media(max-width:680px){.registration-summary{gap:12px}.registration-summary article{padding:14px;border-radius:14px}.registration-summary article>header{min-height:44px;gap:9px}.registration-summary article>header>span{width:33px;height:33px}.registration-summary article h3{font-size:14px}.registration-summary dl>div{grid-template-columns:minmax(84px,.75fr) minmax(0,1.25fr);gap:9px;padding:9px 0}.registration-summary dt{font-size:12px}.registration-summary dd{font-size:13px}.registration-summary-photo{grid-column:auto}.registration-summary-photo .registration-summary-photo-grid{grid-template-columns:1fr;gap:10px}.registration-summary-photo .registration-summary-photo-item,.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-item{grid-template-columns:1fr;gap:8px;min-height:0;padding:11px}.registration-summary-photo .registration-summary-photo-item dt,.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-item dt{text-align:left}.registration-summary-photo .registration-summary-photo-preview,.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-preview{height:174px}.registration-summary-photo .registration-summary-photo-preview img.is-selfie{width:154px;height:154px}}
@media(max-width:370px){.registration-summary dl>div{grid-template-columns:80px minmax(0,1fr)}.registration-summary-photo .registration-summary-photo-preview,.registration-summary-photo[data-photo-role="business"] .registration-summary-photo-preview{height:158px}.registration-summary-photo .registration-summary-photo-preview img.is-selfie{width:140px;height:140px}}

/* Las vistas previas conservan su proporción dentro del marco, aun con fotos panorámicas o verticales. */
.registration-photo-grid .photo-preview,.registration-summary-photo .registration-summary-photo-preview,.taxi-extra-photo-slot,.taxi-extra-photo-previews{min-width:0;min-height:0}
.registration-photo-grid .photo-preview,.registration-summary-photo .registration-summary-photo-preview{overflow:hidden}
.registration-photo-grid .photo-preview img,.registration-summary-photo .registration-summary-photo-preview img,.taxi-extra-photo-slot>img,.taxi-extra-photo-previews img{display:block;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;overflow:hidden}
.taxi-extra-photo-slot>img{width:100%;height:100%;border-radius:12px}
.registration-summary-extra-photos .taxi-extra-photo-previews{align-items:start;overflow:hidden}
.registration-summary-extra-photos .taxi-extra-photo-previews img{width:100%;height:auto;aspect-ratio:1}

/* Una entrega offline ya guardada nunca vuelve a presentar el formulario vacío. */
.offline-delivery-pending-card{display:grid;gap:10px;animation:none}
.offline-delivery-pending-card>p{margin:0}
.offline-delivery-pending-status{padding:10px 11px;color:#176b50!important;background:rgba(35,132,95,.09);border:1px solid rgba(35,132,95,.18);border-radius:10px;font-size:11px!important;font-weight:750;line-height:1.45}
.offline-delivery-pending-status.is-error{color:#8c313b!important;background:#fff0f1;border-color:#efc7cb}
.offline-delivery-pending-card .button{margin-top:2px}

/* Las entregas activas son accesos directos sólidos al detalle del pedido. */
[data-live-courier-dashboard] .active-delivery-card,
[data-live-courier-dashboard] .active-delivery-card.active-stage-review,
[data-live-courier-dashboard] .active-delivery-card.offline-active-order{grid-template-columns:1fr;color:#fff;background:var(--navy);border:0;-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer}
[data-live-courier-dashboard] .active-delivery-card:focus,[data-live-courier-dashboard] .active-delivery-card:focus-visible{outline:none}
[data-live-courier-dashboard] .active-delivery-card>.active-focus{grid-column:1/-1}
[data-live-courier-dashboard] .active-delivery-card>.active-actions{display:none}

/* Jerarquía y respiración de la verificación de la app instalada. */
.app-requirements-card .app-already-installed{margin:24px auto 26px;padding:15px 16px}
@media(max-width:600px){.app-requirements-card .app-already-installed{margin-top:22px;margin-bottom:24px}}

.active-actions{justify-self:center}.active-actions .button{width:auto!important;max-width:100%;white-space:nowrap}
.active-dashboard-price{display:grid;justify-items:end;flex:0 0 auto;gap:2px;margin-left:auto;color:#fff;line-height:1;white-space:nowrap}.active-dashboard-price>span{font-size:20px}.active-dashboard-price>small{color:rgba(255,255,255,.68);font-size:8px;font-weight:700}
.courier-pickup-dialog{width:min(480px,calc(100% - 24px));height:auto;max-height:min(560px,82dvh);padding:0;overflow:hidden;background:transparent;border:0!important;outline:0}.courier-pickup-dialog::backdrop{background:rgba(7,13,30,.62);backdrop-filter:blur(4px)}
.courier-pickup-dialog-card{display:grid;align-content:start;height:auto;max-height:min(560px,82dvh);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:0;border-radius:22px;box-shadow:0 26px 80px rgba(7,13,30,.3)}
.courier-pickup-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:23px 22px 19px;background:linear-gradient(135deg,#f7fbff 0%,#eef4fb 100%)}.courier-pickup-dialog-heading{display:grid;gap:5px}.courier-pickup-dialog-heading>small{color:var(--blue);font-size:8px;font-weight:800;letter-spacing:.08em}.courier-pickup-dialog-header h2{margin:0;color:var(--ink);font-size:25px;line-height:1.15;letter-spacing:-.035em}.courier-pickup-dialog-meta{display:flex;align-items:flex-start;gap:9px}.courier-pickup-dialog-meta>strong{display:grid;justify-items:end;gap:1px;margin-top:14px;padding:0;color:var(--navy);background:transparent;border-radius:0;box-shadow:none;font-size:20px;line-height:1.05;white-space:nowrap}.courier-pickup-dialog-meta>strong small{display:block;color:var(--muted);font-size:8px;line-height:1.2}
.courier-pickup-dialog-close{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;color:#687389;background:rgba(255,255,255,.72);border:0;border-radius:10px;font-size:23px;line-height:1;cursor:pointer}
.courier-pickup-dialog-instructions{position:relative;display:grid;gap:18px;padding:20px 22px 17px;color:var(--ink);background:#fff}.courier-pickup-dialog-step,.courier-pickup-dialog-location{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:12px}.courier-pickup-dialog-step>span,.courier-pickup-dialog-location>span{position:relative;z-index:1;display:grid;place-items:center;width:40px;height:40px;color:var(--navy);background:var(--aqua);border-radius:12px}.courier-pickup-dialog-location>span{color:var(--blue);background:#edf3ff}.courier-pickup-dialog-step>span svg,.courier-pickup-dialog-location>span svg{width:20px;height:20px}.courier-pickup-dialog-step::after{content:"";position:absolute;left:19px;top:42px;height:16px;border-left:2px dashed #d5dce7}.courier-pickup-dialog-instructions>div>div{display:grid;gap:3px}.courier-pickup-dialog-instructions small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em}.courier-pickup-dialog-instructions p,.courier-pickup-dialog-instructions b{margin:0;color:var(--ink);font-size:14px;line-height:1.45}.courier-pickup-dialog-instructions [data-pickup-window-task]{font-size:16px;font-weight:500;letter-spacing:-.01em}.courier-pickup-dialog-address{color:var(--text)!important;font-weight:400}.courier-pickup-dialog-address [data-pickup-window-address],.courier-pickup-dialog-address [data-pickup-window-municipality]{display:inline;color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}
.courier-pickup-dialog .verification-action-card{margin:9px 18px 18px;padding:20px;border-radius:18px;box-shadow:none}.courier-pickup-dialog .verification-action-card>.eyebrow{font-size:12px;letter-spacing:.08em}.courier-pickup-dialog .verification-action-card h2{font-size:19px}.courier-pickup-dialog .verification-action-card p{font-size:12px}
.courier-pickup-dialog-detail{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 18px 10px;padding:7px;color:var(--blue);font-size:14px;font-weight:750}.courier-pickup-dialog-detail svg{width:16px;height:16px}
@media(max-width:560px){.courier-pickup-dialog{width:calc(100% - 20px);height:auto;max-width:none;max-height:min(560px,82dvh);margin:auto}.courier-pickup-dialog-card{height:auto;max-height:min(560px,82dvh);padding-bottom:0;border-radius:22px}.courier-pickup-dialog-header{padding:22px 17px 17px;border-radius:22px 22px 0 0}.courier-pickup-dialog-header h2{font-size:23px}.courier-pickup-dialog-meta{gap:6px}.courier-pickup-dialog-meta>strong{padding:0;font-size:18px}.courier-pickup-dialog-close{width:32px;height:32px;flex-basis:32px}.courier-pickup-dialog-instructions{padding:18px 17px 16px}.courier-pickup-dialog .verification-action-card{margin:8px 12px 12px;padding:19px 17px}.courier-pickup-dialog-detail{margin:0 12px 8px}}
@media(max-width:680px){.active-actions{width:auto;margin-left:0;justify-self:center}.active-dashboard-price>span{font-size:18px}}

/* Alineación precisa del título y el precio en la ventana de recogida. */
.courier-pickup-dialog-heading{flex:1;min-width:0;gap:4px}.courier-pickup-dialog-heading>small,.courier-pickup-dialog-title-line>small{color:var(--blue);font-size:7px;font-weight:800;letter-spacing:.08em}.courier-pickup-dialog-title-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.courier-pickup-dialog-title-line>strong{display:grid;justify-items:end;flex:0 0 auto;gap:1px;margin:0;padding:0;color:var(--navy);background:transparent;font-size:20px;line-height:1.05;white-space:nowrap}.courier-pickup-dialog-title-line>strong small{display:block;color:var(--muted);font-size:8px;line-height:1.2}.courier-pickup-dialog-header>.courier-pickup-dialog-close{flex:0 0 34px}
@media(max-width:560px){.courier-pickup-dialog-title-line>strong{font-size:18px}.courier-pickup-dialog-header>.courier-pickup-dialog-close{flex-basis:32px}}

/* Solo el rótulo de confirmación es compacto; su contenido conserva el tamaño normal. */
.courier-pickup-dialog .verification-action-card>h2{font-size:21px}.courier-pickup-dialog .verification-action-card>p{font-size:15px;line-height:1.55}

/* La ventana activa representa también la etapa de reparto y sus acciones. */
.courier-pickup-dialog-recipient{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:12px}.courier-pickup-dialog-recipient>span{display:grid;place-items:center;width:40px;height:40px;color:#9a4b42;background:#fff0ed;border-radius:12px}.courier-pickup-dialog-recipient>span svg{width:20px;height:20px}.courier-pickup-dialog-recipient>div{display:grid;gap:3px}.courier-pickup-dialog-recipient b{font-size:15px}.courier-pickup-dialog-recipient a{justify-self:start;color:var(--blue);font-size:13px;font-weight:750}.courier-pickup-dialog-recipient p{margin:5px 0 0!important;color:var(--text)!important;font-size:13px!important;line-height:1.45!important}.courier-delivery-dialog-summary .courier-pickup-dialog-step::after{height:16px}.courier-dialog-complete-step::after{display:none}.courier-dialog-complete-step>span{color:#fff;background:var(--green)}.courier-pickup-dialog [data-pickup-window-pickup-action][hidden]{display:none!important}.courier-pickup-dialog [data-pickup-window-pickup-action]>.verification-action-card{margin-top:9px}

/* Dirección y contacto del negocio comparten la misma línea en la recogida. */
.courier-pickup-address-business{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(110px,170px);align-items:baseline;gap:3px 16px}.courier-pickup-address-business>[data-pickup-window-municipality]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.courier-pickup-address-business>[data-pickup-window-business]{grid-column:2;grid-row:1;min-width:0;overflow:hidden;font-size:12px;line-height:1.35;text-align:right;text-overflow:ellipsis;white-space:nowrap}.courier-pickup-address-business>[data-pickup-window-address]{grid-column:1;grid-row:2}.courier-pickup-address-business>[data-pickup-window-business-phone]{display:inline-flex;grid-column:2;grid-row:2;min-width:0;align-items:center;justify-self:end;gap:4px;color:var(--blue);font-size:12px;font-weight:750;line-height:1.35;text-align:right}.courier-pickup-address-business>[data-pickup-window-business-phone] svg{flex:0 0 13px;width:13px;height:13px}

/* Los datos del negocio quedan en un bloque separado debajo de la instrucción. */
.courier-pickup-dialog-instructions .courier-pickup-dialog-location{margin-top:8px}.courier-pickup-address-business{grid-template-columns:minmax(0,1fr)!important;gap:4px!important}.courier-pickup-address-business>[data-pickup-window-municipality],.courier-pickup-address-business>[data-pickup-window-business],.courier-pickup-address-business>[data-pickup-window-address],.courier-pickup-address-business>[data-pickup-window-business-phone]{grid-column:1!important;grid-row:auto!important;justify-self:start!important;text-align:left!important}

/* El código alternativo se consulta únicamente desde los detalles del pedido. */
.courier-pickup-dialog [data-pickup-alternative-toggle],.courier-pickup-dialog [data-pickup-alternative-panel]{display:none!important}

/* Explicación breve y opcional del requisito de instalación. */
.app-install-why{margin:24px 0 0;text-align:center}.app-install-why>summary{display:inline;color:var(--blue);font-size:13px;font-weight:750;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;cursor:pointer;list-style:none}.app-install-why>summary::-webkit-details-marker{display:none}.app-install-why>summary:hover{color:#315fc0}.app-install-why>p{margin:12px 0 0;padding:12px 14px;color:#44516a;background:#edf3ff;border-radius:12px;font-size:13px;line-height:1.5;text-align:left}.app-install-why[open]>summary{color:#315fc0}

/* El sitio de recogida comparte la jerarquía compacta de los detalles del paquete. */
.detail-shell .business-pickup-data{gap:10px;padding:12px 13px}.detail-shell .business-pickup-data small{font-size:10px;line-height:1.35;font-weight:700;letter-spacing:0;text-transform:none}.detail-shell .business-pickup-data b{font-size:13px;line-height:1.4}.detail-shell .business-pickup-data .business-order-phone{font-size:12px}

/* El teclado móvil no desplaza la navegación inferior sobre los formularios. */
@media(max-width:680px){html.mobile-keyboard-open .mobile-nav{display:none!important}html.mobile-keyboard-open .install-banner,html.mobile-keyboard-open .order-sound-gate{display:none!important}html.mobile-keyboard-open .chat-screen{padding-bottom:60px!important}html.mobile-keyboard-open .chat-screen .conversation-page .chat-card{bottom:60px!important}html.mobile-keyboard-open .chat-screen .conversation-page .chat-form{bottom:0!important}}

/* La evaluación pendiente de la tienda se integra de forma discreta en el pedido. */
.business-history-list .history-order-rating-pending{border-color:var(--line);box-shadow:none}
.business-history-list .history-order-rating-pending>summary{background:#fff}
.business-history-list .history-order-rating-pending>summary>.history-rating-action{min-width:250px;margin-right:8px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.business-history-list .history-rating-prompt{color:#9a6814;font-size:8px;font-weight:700;letter-spacing:0;text-transform:none}
@media(max-width:680px){.business-history-list .history-order-rating-pending>summary>.history-rating-action{min-width:0;margin-top:2px;padding:0;background:transparent;border:0;box-shadow:none}}

/* Activación de avisos como enlace discreto y siempre en una sola línea. */
.notification-enable-link{display:inline;padding:0;color:var(--blue);background:transparent;border:0;font:inherit;font-size:13px;font-weight:750;line-height:1.3;white-space:nowrap;text-decoration:none;cursor:pointer}
.notification-enable-link:hover,.notification-enable-link:focus-visible{color:#315fc0}
.notification-enable-link.notification-enabled{color:#23845f;text-decoration:none;cursor:default}
.notification-enable-link:disabled{opacity:.75}
@media(max-width:680px){.notification-heading .notification-enable-link{flex:0 0 auto;width:auto;max-width:none;min-height:0;padding:0;font-size:12px;line-height:1.3;white-space:nowrap}}

/* Las pantallas de acceso abiertas desde la PWA respetan la zona segura superior. */
.auth-page .auth-form-side{padding-top:calc(120px + env(safe-area-inset-top,0px))}
.auth-page .register-shell .auth-form-side{padding-top:calc(108px + env(safe-area-inset-top,0px))}
.review-status-shell,.forced-password-shell{padding-top:calc(100px + env(safe-area-inset-top,0px))}
.app-requirements-page .app-requirements-shell{padding-top:calc(92px + env(safe-area-inset-top,0px))}
@media(max-width:920px){.auth-page .register-shell .auth-form-side{padding-top:calc(92px + env(safe-area-inset-top,0px))}}
@media(max-width:680px){.auth-page .auth-form-side{padding-top:calc(98px + env(safe-area-inset-top,0px))}.auth-page .auth-shell-returning .auth-form-side{padding-top:calc(94px + env(safe-area-inset-top,0px))}.auth-page .register-shell .auth-form-side{padding-top:calc(78px + env(safe-area-inset-top,0px))}}
@media(max-width:600px){.app-requirements-page .app-requirements-shell{padding-top:calc(82px + env(safe-area-inset-top,0px))}}

/* La foto ocupa la izquierda sin texto; el código queda a la derecha. */
.combined-delivery-form{grid-template-columns:minmax(90px,.72fr) minmax(0,1.28fr)}
.combined-delivery-form>.combined-code-field,.combined-delivery-form>.delivery-code-status,.combined-delivery-form>.verification-success{grid-column:2}
.combined-delivery-form>.delivery-upload-grid{grid-column:1;grid-row:1 / span 2}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{display:block!important;width:min(72px,100%);margin-inline:auto}
.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{width:100%;margin:0}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{display:none!important}

/* Tarjeta principal: contacto arriba, dirección debajo y llamada a la derecha. */
.active-step-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;grid-template-areas:"number number" "title title" "contact contact" "address call" "sync sync"}
.active-step-copy>small{grid-area:number}.active-step-copy>h3{grid-area:title}.active-step-copy>.active-location,.active-step-copy>.active-delivery-simple{grid-area:address;align-self:center}.active-step-copy>.active-call-meta{display:contents}.active-step-copy>.active-call-meta>b{grid-area:contact;align-self:end}.active-step-copy>.active-call-meta>a{grid-area:call;align-self:center;justify-self:end;margin-left:0}.active-step-copy>[data-offline-pickup-sync]{grid-area:sync}

/* Posición definitiva: foto izquierda y código derecha. */
.combined-delivery-form{direction:ltr!important;grid-template-columns:minmax(80px,.72fr) minmax(0,1.28fr)!important}
.combined-delivery-form>.delivery-upload-grid{grid-column:1!important;grid-row:1 / span 2!important;order:1}
.combined-delivery-form>.combined-code-field,.combined-delivery-form>.delivery-code-status,.combined-delivery-form>.verification-success{grid-column:2!important;order:2}

/* Recuperación de contraseña: etiqueta clara y una sola tarjeta centrada. */
.auth-password-label{display:flex;align-items:center;justify-content:space-between;gap:14px}
.auth-password-label>a{color:var(--blue);font-size:11px;font-weight:750;white-space:nowrap}
.auth-password-label>a:hover,.auth-password-label>a:focus-visible{color:#315fc0;text-decoration:underline}
.password-recovery-shell .auth-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft)}
.password-recovery-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;color:#176b5b;background:#dff5ee;border-radius:15px}
.password-recovery-icon svg{width:25px;height:25px}
.password-recovery-icon-expired{color:#b55b48;background:#fff0ed}
@media(max-width:480px){.auth-password-label{align-items:flex-start}.auth-password-label>a{font-size:10px}.password-recovery-shell .auth-card{padding:26px 22px}}

/* El encabezado de la ventana permanece visible mientras se desplaza su contenido. */
.courier-pickup-dialog-header{position:sticky;top:0;z-index:5;box-shadow:0 4px 12px rgba(16,25,53,.08)}

/* Código y fotografía comparten la fila; la foto queda a la derecha. */
.combined-delivery-form{grid-template-columns:minmax(0,1fr) minmax(128px,.72fr);align-items:center;column-gap:10px}
.combined-delivery-form>.combined-code-field{grid-column:1;grid-row:1}
.combined-delivery-form>.delivery-code-status{grid-column:1;grid-row:2}
.combined-delivery-form>.verification-success{grid-column:1;grid-row:1;margin:0}
.combined-delivery-form>.delivery-upload-grid{grid-column:2;grid-row:1 / span 2;margin:0}
.combined-delivery-form>.delivery-note-field,.combined-delivery-form>button[type="submit"]{grid-column:1 / -1}

/* Instrucción simple para entregar el código a la tienda. */
.pickup-confirmation-code-card p{font-size:15px;line-height:1.45}

/* Lectura un poco más cómoda en la tarjeta principal, sin agrandarla demasiado. */
.active-call-meta>b{font-size:14px}
@media(min-width:921px){.active-delivery-card .active-step-copy h3{font-size:18px}.active-delivery-card .active-location b{font-size:15px}.active-delivery-card .active-location p{font-size:12px}}

/* El contacto y la llamada quedan en la misma línea. */
.active-call-meta{align-items:center;flex-direction:row!important;justify-content:space-between;gap:10px}.active-call-meta>a{margin-left:auto}

/* La llamada a la tienda se muestra igual en la tarjeta activa online y offline. */
.active-call-meta{justify-content:flex-start}.active-call-meta>a{min-height:34px;padding:7px 11px;color:var(--aqua)!important;background:rgba(255,255,255,.09);border-radius:9px}

/* Confirmación de entrega: código arriba y fotografía centrada debajo. */
.combined-delivery-form{grid-template-columns:minmax(0,1fr)!important;column-gap:0!important;align-items:stretch!important}
.combined-delivery-form>.combined-code-field,.combined-delivery-form>.delivery-code-status,.combined-delivery-form>.verification-success,.combined-delivery-form>.delivery-upload-grid,.combined-delivery-form>.delivery-note-field,.combined-delivery-form>button[type="submit"]{grid-column:1!important;grid-row:auto!important;order:initial!important}
.combined-delivery-form>.verification-success{margin:0}
.combined-delivery-form>.delivery-upload-grid{display:grid;justify-items:center;margin:4px 0 8px!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;justify-items:center!important;width:min(92px,100%)!important;margin-inline:auto!important;text-align:center!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{grid-column:1!important;grid-row:1!important;width:92px!important;height:92px!important;margin:0!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small,.combined-delivery-form .delivery-upload-grid-single .delivery-field-error{grid-column:1!important;grid-row:auto!important}

/* Texto de la foto al lado de la imagen, sin mover el bloque del centro. */
.combined-delivery-form>.delivery-upload-grid{justify-items:center!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{grid-template-columns:92px minmax(0,150px)!important;grid-template-rows:auto auto!important;width:min(250px,100%)!important;justify-items:start!important;column-gap:10px!important;text-align:left!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{grid-column:1!important;grid-row:1 / span 2!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{display:block!important;grid-column:2!important;grid-row:1!important;align-self:center!important;min-height:0!important;color:rgba(255,255,255,.72)!important;font-size:10px!important;line-height:1.35!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-field-error{grid-column:2!important;grid-row:2!important}

/* Foto compacta y conjunto centrado debajo del código. */
.combined-delivery-form>.delivery-upload-grid{justify-items:center!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{grid-template-columns:72px minmax(0,128px)!important;grid-template-rows:auto auto!important;width:min(208px,100%)!important;justify-items:start!important;column-gap:8px!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{width:72px!important;height:72px!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{font-size:9px!important;line-height:1.3!important}

/* La foto queda exactamente centrada; el texto acompaña sin desplazarla. */
.combined-delivery-form{gap:5px!important}
.combined-delivery-form .delivery-code-status:empty{display:none!important;min-height:0!important}
.combined-delivery-form>.delivery-upload-grid{margin:4px 0 5px!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field{position:relative;display:block!important;width:100%!important;padding:0!important;text-align:center!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-photo-preview{display:grid!important;margin-inline:auto!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field>small{position:absolute;top:50%;left:calc(50% + 44px);width:128px;transform:translateY(-50%);text-align:left}

/* El mismo cuadrado sirve como ilustración inicial y vista previa editable. */
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-row{position:relative;display:flex;align-items:center;justify-content:center;width:100%}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link{flex:0 0 72px;display:grid!important;place-items:center;width:72px!important;height:72px!important;min-height:72px;aspect-ratio:1!important;margin:0!important;padding:0;color:rgba(255,255,255,.8);background:transparent;border:1px solid rgba(255,255,255,.55);border-radius:8px;box-shadow:none}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link:hover,.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link:focus-visible{background:transparent}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-copy{position:absolute;top:50%;left:calc(50% + 46px);right:0;transform:translateY(-50%);color:rgba(255,255,255,.88);font-size:10px;font-weight:600;line-height:1.35;text-align:left}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link:focus-visible{outline:2px solid #fff;outline-offset:4px}
.combined-delivery-form .delivery-upload-grid-single .delivery-evidence-link:not(:has(img)){margin-bottom:0!important}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.is-missing .delivery-evidence-link{color:#ff9ca3;background:transparent;border-color:#e65c66;box-shadow:none}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.is-missing .delivery-evidence-copy{color:#ff9ca3}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.is-missing .delivery-field-error{display:block;margin-top:5px;color:#ff9ca3;text-align:center}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.has-photo .delivery-evidence-link{display:grid!important;width:72px!important;height:72px!important;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:8px}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.has-photo .delivery-evidence-link img{width:100%;height:100%;object-fit:cover}
.combined-delivery-form .delivery-upload-grid-single .delivery-upload-field.has-photo::after{content:none!important}
.combined-delivery-form>.delivery-upload-grid{justify-self:stretch!important;width:100%;margin:2px 0 0!important}
.combined-delivery-form>.delivery-note-field{margin:0 0 8px!important}
.courier-delivery-details-link{width:min(285px,100%)!important;margin:8px auto 12px!important}
.courier-delivery-details-link{min-height:54px!important;padding-inline:18px!important;color:#fff!important;background:#223b70!important;box-shadow:0 10px 22px rgba(34,59,112,.28)!important;font-size:14px;font-weight:800;letter-spacing:-.01em}
.courier-delivery-details-link:hover{background:#2d4c88!important;box-shadow:0 12px 25px rgba(34,59,112,.34)!important}
.detail-shell #delivery-confirmation{scroll-margin-top:calc(90px + env(safe-area-inset-top,0px))}
.courier-pickup-dialog-contact-name{display:block!important;color:var(--navy)!important;font-size:15px!important;font-weight:750!important;line-height:1.25!important}
.courier-pickup-dialog-municipality{display:block!important;margin-top:5px!important;color:var(--muted)!important;font-size:12px!important;font-weight:500!important;line-height:1.3!important}
.courier-pickup-dialog-address{margin-top:2px!important;color:var(--text)!important;font-size:14px!important;font-weight:500!important;line-height:1.4!important}
.courier-pickup-dialog-instructions{padding-top:24px!important;padding-bottom:20px!important}
.courier-pickup-dialog{position:fixed!important;inset:0!important;margin:auto!important}
.courier-pickup-dialog{top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important}
.courier-delivery-details-link{background:var(--navy)!important}
.courier-delivery-details-link:hover{background:#2b3d6d!important}
.pickup-confirmation-code-card{color:var(--ink)!important;background:#fff!important;border:1px solid #dfe3eb!important;box-shadow:0 20px 55px rgba(16,25,53,.18)!important}
.pickup-confirmation-code-card h2{color:var(--ink)!important}
.pickup-confirmation-code-card p{color:var(--muted)!important}
.pickup-confirmation-code-card .courier-pickup-next-step-continue{box-shadow:none!important}
.pickup-confirmation-code-card .courier-pickup-next-step-continue:hover,.pickup-confirmation-code-card .courier-pickup-next-step-continue:focus,.pickup-confirmation-code-card .courier-pickup-next-step-continue:focus-visible{box-shadow:none!important;outline:0!important}
.courier-delivery-details-link:focus,.courier-delivery-details-link:focus-visible,.courier-delivery-details-link:active{outline:0!important;background:var(--navy)!important;box-shadow:0 10px 22px rgba(16,25,53,.22)!important}

/* Tarjeta inicial: mejor contraste y llamada fijada al borde derecho. */
.active-step-copy{width:100%;grid-template-columns:minmax(0,1fr) auto!important}
.active-step-copy>h3{font-size:20px!important;line-height:1.2;letter-spacing:-.025em}
.active-step-copy>.active-call-meta{width:100%}
.active-step-copy>.active-call-meta>a{justify-self:end!important;align-self:center;white-space:nowrap}
.active-step-copy>.active-location,.active-step-copy>.active-delivery-simple{padding:10px 12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-left:3px solid var(--aqua);border-radius:10px}
.active-step-copy>.active-location>b,.active-step-copy>.active-delivery-simple>b{color:#fff;font-size:16px!important;line-height:1.25}
.active-step-copy>.active-location>p,.active-step-copy>.active-delivery-simple>p{color:rgba(255,255,255,.88);font-size:13px!important;line-height:1.4}

/* La jerarquía se consigue con tipografía y color, sin bordes ni cajas. */
.active-step-copy>.active-location,.active-step-copy>.active-delivery-simple{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important}
.active-step-copy>.active-location{gap:3px}
.active-step-copy>.active-location>b{color:var(--aqua)!important;font-weight:800}
.active-step-copy>.active-location>p,.active-step-copy>.active-delivery-simple>p{color:rgba(255,255,255,.82)!important;font-weight:500}

/* Municipio y dirección con el mismo peso; la dirección gana tamaño. */
.active-step-copy>.active-location>b{font-size:15px!important;font-weight:600!important}
.active-step-copy>.active-location>p{font-size:16px!important;font-weight:600!important;line-height:1.4}

/* La llamada ocupa siempre la última columna, hasta el extremo derecho. */
.active-step-copy{grid-template-columns:minmax(0,1fr) max-content!important}
.active-step-copy>.active-call-meta>a{grid-area:call!important;justify-self:end!important;margin-right:0!important;margin-left:auto!important}

/* La llamada se alinea con el precio y no con el ancho del texto. */
.active-focus{position:relative}
.active-step-copy{width:auto!important}
.active-step-copy>.active-call-meta>a{position:absolute!important;right:0!important;top:76px!important;margin:0!important;justify-self:auto!important}
.active-step-copy>.active-location>p{font-size:14px!important;line-height:1.35}
.active-stage-delivery .active-step-copy>h3{margin-bottom:13px!important}
.active-stage-pickup .active-step-copy>h3{margin-bottom:13px!important}
.security-dual-icon{display:flex;justify-content:center;gap:7px;width:88px}.security-dual-icon svg{width:30px;height:30px}.security-qr-icon{gap:5px}.security-qr-icon i{width:10px;border-top:2px solid currentColor;opacity:.35}.security-protocol p{font-size:14px}
.check-list .offline-feature-icon{color:var(--red)}
@media(max-width:680px){.security-protocol p{font-size:13px}.security-dual-icon{width:82px}.security-dual-icon svg{width:27px;height:27px}}
.security-protocol-icon.security-dual-icon{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;height:auto;background:transparent;border-radius:0}.security-mini-icon{display:grid;place-items:center;width:42px;height:42px;color:inherit;background:transparent;border:1px solid currentColor;border-radius:12px}.security-mini-icon svg{width:25px;height:25px}.security-qr-icon{gap:7px}.security-qr-icon i{width:12px;border-top:2px solid currentColor;opacity:.35}
.security-protocol:nth-child(2) .security-protocol-icon.security-dual-icon{background:transparent}
.security-protocol:nth-child(3) .security-protocol-icon.security-dual-icon{background:transparent}
.security-protocol p{font-size:15px}
@media(max-width:680px){.security-protocol-icon.security-dual-icon{width:auto;height:auto}.security-mini-icon{width:38px;height:38px}.security-mini-icon svg{width:23px;height:23px}}
@media(max-width:680px){.security-protocol p{font-size:14px}}

/* Controles de seguridad en la portada. */
.security-protocol{grid-template-rows:180px auto 1fr;align-content:start}
.security-showcase{position:relative;width:100%;height:180px;overflow:hidden;border:1px solid #dce9e5;border-radius:14px;background:#f1f7f5}
.security-identity-showcase{background:#dce9e5}
.security-courier-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%}
.security-id-card{position:absolute;left:11px;bottom:12px;display:block;width:150px;height:94px;object-fit:cover;object-position:center top;border:3px solid #fff;border-radius:8px;box-shadow:0 6px 18px rgba(15,36,44,.3);transform:rotate(-4deg)}
.security-code-showcase{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:linear-gradient(135deg,#e9f4f1,#edf2ff)}
.security-qr-link{display:block;flex:0 0 auto;width:118px;padding:6px;background:#fff;border-radius:10px;box-shadow:0 4px 14px rgba(32,65,82,.12)}
.security-qr-link img{display:block;width:100%;height:auto;image-rendering:pixelated}
.security-code-arrow{flex:0 0 auto;color:#366ba7;font-size:25px;font-weight:800;line-height:1}
.security-recipient-code{color:#173f69;font-size:clamp(21px,2.3vw,30px);font-weight:800;letter-spacing:.06em;line-height:1;text-decoration:none}
.security-recipient-code:hover,.security-recipient-code:focus-visible{text-decoration:underline}
.security-delivery-showcase img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 15%}
.security-delivered-badge{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:5px;padding:7px 9px;color:#17634d;background:#fff;border-radius:8px;box-shadow:0 4px 14px rgba(17,49,42,.16);font-size:10px;font-weight:800}
.security-delivered-badge svg{width:14px;height:14px}
.security-protocol h3{margin:14px 0 8px}
@media(max-width:920px){.security-protocol{grid-template-rows:180px auto 1fr}.security-recipient-code{font-size:29px}}
@media(max-width:680px){.security-protocol{grid-template-rows:190px auto 1fr}.security-showcase{height:190px}.security-code-showcase{gap:16px}.security-qr-link{width:120px}.security-recipient-code{font-size:30px}}
@media(max-width:380px){.security-code-showcase{gap:7px;padding:8px}.security-qr-link{width:88px}.security-recipient-code{font-size:23px}}
.register-shell .role-picker:not(.single) label>span{position:relative}
@media(max-width:680px){.register-shell .role-picker:not(.single){grid-template-columns:1fr;gap:10px}.register-shell .role-picker:not(.single) label>span{grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;justify-items:start;align-content:center;min-height:82px;padding:14px;text-align:left;background:#fbfcfc;border-color:#d7e6e1}.register-shell .role-picker:not(.single) svg{grid-row:1/3;width:30px;height:30px;margin:0;color:#238b74}.register-shell .role-picker:not(.single) input:checked+span{border-color:#81c7b5;background:#f0faf6;box-shadow:0 0 0 3px rgba(45,187,131,.12)}.register-shell .role-picker:not(.single) input:checked+span::after{top:12px;right:12px;color:#fff;background:#2dbb83}}
@media(max-width:680px){.register-shell .role-picker:not(.single) b{font-size:15px}.register-shell .role-picker:not(.single) small{font-size:12px;line-height:1.35}}
@media(max-width:680px){.register-shell .role-picker:not(.single) b{font-size:17px}.register-shell .role-picker:not(.single) small{font-size:14px;line-height:1.35}}
@media(max-width:680px){.register-shell .role-picker:not(.single) small{font-size:16px;line-height:1.35}}
@media(max-width:680px){.register-shell .role-picker:not(.single) label>span small{font-size:16px!important;line-height:1.35!important;color:#46516b!important}}
.register-shell .role-picker:not(.single) svg{color:#238b74}
.register-shell .role-picker:not(.single) input:checked+span{border-color:#81c7b5;background:#f0faf6;box-shadow:0 0 0 3px rgba(45,187,131,.12)}
.register-shell .role-picker:not(.single) input:checked+span::after{background:#2dbb83}
.register-shell .role-picker:not(.single) input[value="collaborator"]+span svg{color:#386bdc}
.register-shell .role-picker:not(.single) input[value="collaborator"]:checked+span{border-color:#386bdc;background:#eef3ff;box-shadow:0 0 0 3px rgba(56,107,220,.15)}
.register-shell .role-picker:not(.single) input[value="collaborator"]:checked+span::after{background:#386bdc}
@media(max-width:680px){.register-shell .registration-step-heading h2{font-size:21px}.register-shell .registration-step-heading p{font-size:12px}.register-shell .registration-step label{font-size:14px}.register-shell .registration-step label small{font-size:13px}.register-shell .registration-actions .button{font-size:14px}}
/* Información del pedido visible antes de aceptar. */
.offer-package b{font-size:14px;line-height:1.35}
.offer-package small{margin-top:3px;font-size:11px;font-weight:700}
/* Resumen visual del contenido del pedido en el panel del mensajero. */
.active-order-info{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;margin-top:14px}
.active-order-info>div{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:2px 0;background:transparent;border:0;border-radius:0}
.active-order-info>div>svg{flex:0 0 18px;width:18px;height:18px;color:var(--aqua)}
.active-order-info b{overflow:hidden;color:#fff;font-size:13px;line-height:1.35;text-overflow:ellipsis}
.active-order-info .package-size-pequeno>svg{color:#4bd18b}
.active-order-info .package-size-mediano>svg{color:#f4c84b}
.active-order-info .package-size-grande>svg{color:#ff6f61}
@media(max-width:680px){.active-order-info{grid-template-columns:auto minmax(0,1fr);gap:9px}.active-order-info b{font-size:13px}}
/* Tamaños identificables desde la creación y antes de aceptar el pedido. */
.package-size-picker.package-size-pequeno .vehicle-picker-selection svg,.package-size-picker .package-size-pequeno svg{color:#2dbb83}
.package-size-picker.package-size-mediano .vehicle-picker-selection svg,.package-size-picker .package-size-mediano svg{color:#d89b16}
.package-size-picker.package-size-grande .vehicle-picker-selection svg,.package-size-picker .package-size-grande svg{color:#e44f4f}
.offer-package-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:8px 14px;padding:13px 0}
.offer-package-summary>div{display:flex;align-items:center;gap:4px;min-width:0;padding:3px 0;background:transparent;border-radius:0}
.offer-package-summary>div>svg{flex:0 0 19px;width:19px;height:19px;color:var(--blue)}
.offer-package-summary>div>b{min-width:0;font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.offer-package-summary .offer-package-distance{gap:2px}
.offer-package-summary .offer-package-distance>svg{color:#7753c4}
.offer-package-summary .offer-package-distance>b{white-space:nowrap}
.offer-package-summary>p{grid-column:1/-1;margin:1px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.offer-package-summary .package-size-pequeno{color:#176b50;background:transparent}
.offer-package-summary .package-size-pequeno>svg{color:#2dbb83}
.offer-package-summary .package-size-mediano{color:#805d23;background:transparent}
.offer-package-summary .package-size-mediano>svg{color:#d89b16}
.offer-package-summary .package-size-grande{color:#9c3038;background:transparent}
.offer-package-summary .package-size-grande>svg{color:#e44f4f}
.order-form .vehicle-picker-toggle.is-invalid{border-color:var(--red);box-shadow:0 0 0 3px rgba(221,76,87,.12)}
.order-required-field-error{color:#b63340!important;font-size:11px!important;font-weight:700!important;line-height:1.35}
.order-required-field-error[hidden]{display:none!important}
.offer-card .offer-head > div > b{font-size:18px!important;line-height:1.2}
.offer-card .offer-arrival-time{margin-top:2px;font-size:9px!important;line-height:1.2}
.offer-card .offer-arrival-time svg{width:10px!important;height:10px!important}
.offer-card .offer-route{display:flex;align-items:flex-start;gap:7px;padding:10px 12px;background:#f5f7fa;border-radius:12px}
.offer-card .offer-route::before{display:none}
.offer-card .offer-route>div{display:block;min-width:0}
.offer-card .offer-route>div:first-child{flex:0 1 auto;max-width:45%}
.offer-card .offer-route>div:last-child{flex:0 1 auto;margin-left:auto;text-align:right}
.offer-card .offer-route>div>i{display:none}
.offer-card .offer-route>div>span{display:grid;gap:2px;min-width:0}
.offer-card .offer-route small{font-size:10px!important;font-weight:850;letter-spacing:.06em}
.offer-card .offer-route b{min-width:0;font-size:14px;line-height:1.35;white-space:normal;overflow-wrap:break-word}
.offer-card .offer-route-arrow{flex:0 0 17px;align-self:center;width:17px;height:17px;color:var(--blue)}
.offer-card .offer-package-summary>div:first-child{padding-left:10px}
@media(max-width:680px){.offer-card .offer-head>div>b{font-size:18px!important}.offer-card .offer-arrival-time{font-size:9px!important}.offer-card .offer-route{gap:7px;padding:10px}.offer-card .offer-route small{font-size:10px!important}.offer-card .offer-route b{font-size:14px}}
.courier-offer-popover-route{display:flex;align-items:flex-start;gap:7px}
.courier-offer-popover-route>span{min-width:0}
.courier-offer-popover-route>span:first-child{flex:0 1 auto;max-width:45%}
.courier-offer-popover-route>span:last-child{flex:1 1 0}
.courier-offer-popover-route b{white-space:normal;overflow-wrap:break-word}
.courier-offer-popover-route>svg{flex:0 0 17px;align-self:center}
.courier-offer-popover>header>span{color:#a86612;background:#fff2d8}
.courier-offer-popover>header h2{font-size:18px}
.courier-offer-popover .offer-decision-panel{margin-top:18px}
.new-order-alerting.courier-offer-popover::before,.new-order-alerting.courier-offer-popover::after{display:none}
.new-order-alerting.courier-offer-popover [data-resilient-accept]{position:relative;isolation:isolate}
.new-order-alerting.courier-offer-popover [data-resilient-accept]::before,.new-order-alerting.courier-offer-popover [data-resilient-accept]::after{content:"";position:absolute;z-index:0;left:50%;top:50%;width:92%;height:100%;border:3px solid rgba(66,217,199,.78);border-radius:999px;opacity:0;transform:translate(-50%,-50%) scale(.35);pointer-events:none}
.new-order-alerting.courier-offer-popover.offer-alert-wave [data-resilient-accept]::before{animation:offer-button-wave 1.65s cubic-bezier(.14,.62,.24,1) both}
.new-order-alerting.courier-offer-popover.offer-alert-wave [data-resilient-accept]::after{animation:offer-button-wave 1.65s cubic-bezier(.14,.62,.24,1) .16s both}
@keyframes offer-button-wave{0%{opacity:.84;transform:translate(-50%,-50%) scale(.35)}70%{opacity:.3}100%{opacity:0;transform:translate(-50%,-50%) scale(2.35);border-width:1px}}
@media(prefers-reduced-motion:reduce){.new-order-alerting.courier-offer-popover.offer-alert-wave [data-resilient-accept]::before,.new-order-alerting.courier-offer-popover.offer-alert-wave [data-resilient-accept]::after{animation:none!important}}
.courier-offer-popover,.new-order-alerting.courier-offer-popover{top:auto;bottom:18px;z-index:450;animation:courier-offer-rise .3s cubic-bezier(.22,1,.36,1) both}
.courier-offer-popover-actions{grid-template-columns:1fr}
@keyframes courier-offer-rise{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:680px){.courier-offer-popover,.new-order-alerting.courier-offer-popover{top:auto;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:450;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 100px)}}
@media(prefers-reduced-motion:reduce){.courier-offer-popover,.new-order-alerting.courier-offer-popover{animation:none}}
.courier-pickup-dialog:not(.business-order-dialog) .courier-pickup-dialog-detail{margin-top:12px}

/* En reparto: el vehículo y el número del pedido comparten el morado del estado. */
[data-live-courier-dashboard] .active-stage-delivery .active-step-icon{
  color:#c0adf0;
  background:rgba(118,83,197,.22);
  box-shadow:inset 0 0 0 1px rgba(192,173,240,.18)
}
[data-live-courier-dashboard] .active-stage-delivery .active-step-copy>small{color:#c0adf0}

.notification-item b{font-size:14px}
.notification-item small{font-size:11px}
.notification-heading{align-items:center}
.notification-heading h1{margin:0;line-height:1.1}
.notification-heading-actions{gap:8px}
.notification-enable-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;color:#315fc0;background:#edf3ff;border:1px solid #d6e1fb;border-radius:10px;font:inherit;font-size:12px;font-weight:750;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.notification-enable-link svg{display:block;flex:0 0 16px;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.notification-enable-link span{display:block;line-height:1}
.notification-enable-link:hover,.notification-enable-link:focus-visible{color:#244fa9;background:#dfe9ff;border-color:#b9ccf5;outline:0}
.notification-enable-link.notification-enabled{color:#176b50;background:#e7f7f0;border-color:#c5e8d9;cursor:default}
.notification-enable-link:disabled:not(.notification-enabled){opacity:.7;cursor:not-allowed}
.notification-clear{display:grid;place-items:center;width:38px;min-width:38px;height:38px;padding:0;color:#59657a;background:#f5f7fa;border:1px solid #dfe4ec;border-radius:10px;box-shadow:none;cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.notification-clear::after{content:none}
.notification-clear:hover,.notification-clear:focus-visible{color:#9c3440;background:#fff0f1;border-color:#efcfd3;outline:0}
.notification-clear svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:680px){.notification-heading{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}.notification-heading>div:first-child{flex:1 1 auto;min-width:0}.notification-heading h1{font-size:clamp(18px,6vw,24px);white-space:nowrap}.notification-heading-actions{display:flex;flex:0 0 auto;flex-wrap:nowrap;width:auto;margin-left:auto;gap:6px}.notification-heading .notification-enable-link{flex:0 0 auto;min-width:0;min-height:34px;padding:0 8px;gap:5px;font-size:10px}.notification-heading .notification-enable-link svg{width:14px;height:14px;flex-basis:14px}.notification-clear{width:34px;min-width:34px;height:34px}.notification-clear svg{width:17px;height:17px}}

/* Los pedidos del negocio abren su página completa; ya no son desplegables. */
.business-history-list .history-order>summary{grid-template-columns:auto minmax(0,1fr) auto auto}
.business-history-list .history-order>summary>.package-mark{grid-column:1}
.business-history-list .history-order>summary>.history-order-title{grid-column:2}
.business-history-list .history-order>summary>.status-pill,
.business-history-list .history-order>summary>.business-history-status-stack,
.business-history-list .history-order>summary>.history-rating-action{grid-column:3}
.business-history-list .history-order>summary>strong{grid-column:4}
@media(max-width:760px){
  .business-history-list .history-order>summary{grid-template-columns:auto minmax(0,1fr) auto}
  .business-history-list .history-order>summary>.status-pill,
  .business-history-list .history-order>summary>.business-history-status-stack{grid-column:2/3;grid-row:2}
  .business-history-list .history-order>summary>.history-rating-action{grid-column:2/-1;grid-row:2}
  .business-history-list .history-order>summary>strong{grid-column:3;grid-row:1}
}

/* Recordatorio operativo discreto sobre la navegación del mensajero. */
.courier-trip-note{display:flex;align-items:center;justify-content:center;gap:6px;width:min(720px,calc(100% - 28px));margin:0 auto 28px;color:#46516b;font-size:14px;font-weight:500;line-height:1.35;text-align:center}
.courier-trip-note svg{flex:0 0 15px;width:15px;height:15px;color:#d89b16;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:680px){
  [data-live-courier-dashboard] .dashboard-shell{padding-bottom:92px}
  .courier-trip-note{position:fixed;z-index:95;left:50%;bottom:calc(65px + env(safe-area-inset-bottom,0px) + 12px);box-sizing:border-box;width:min(360px,calc(100% - 24px));margin:0;padding:10px 14px;color:#34405a;background:rgba(255,255,255,.92);border:1px solid rgba(210,219,230,.85);border-radius:14px;box-shadow:0 5px 18px rgba(16,25,53,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateX(-50%);font-size:13px;font-weight:500;text-align:center}
  html.mobile-keyboard-open .courier-trip-note{display:none!important}
}

.broadcast-email-subject>i.message{color:#6652b8;background:#f0edff}.broadcast-email-subject>i.delivery{color:#168275;background:#e9faf7}.broadcast-email-subject>i.account{color:#3d68bf;background:#edf3ff}.broadcast-email-subject>i.security{color:#16765c;background:#e8f8f3}
@media(min-width:681px){.notification-item>span:nth-child(2)>p{font-size:14px}}

/* Comunicaciones administrativas: resumen compacto y lectura completa. */
.broadcast-push-preview-icon{display:grid;place-items:center;width:38px;height:38px;color:#a36b13;background:#fff3dd;border-radius:10px}.broadcast-push-preview-icon.message{color:#6652b8;background:#f0edff}.broadcast-push-preview-icon.delivery{color:#168275;background:#e9faf7}.broadcast-push-preview-icon.account{color:#3d68bf;background:#edf3ff}.broadcast-push-preview-icon.security{color:#16765c;background:#e8f8f3}.broadcast-push-preview-icon svg{width:21px;height:21px}
.notification-broadcast-item{width:100%;color:inherit;background:transparent;border:0;border-bottom:1px solid var(--line);font:inherit;text-align:left;cursor:pointer}.notification-broadcast-item:last-child{border-bottom:0}.notification-broadcast-item>span:nth-child(2){min-width:0}.notification-broadcast-item>span:nth-child(2)>p{display:-webkit-box;overflow:hidden;max-height:3em;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.notification-kind.broadcast_information{color:#a36b13;background:#fff3dd}.notification-kind.broadcast_announcement{color:#6652b8;background:#f0edff}.notification-kind.broadcast_delivery{color:#168275;background:#e9faf7}.notification-kind.broadcast_community{color:#6652b8;background:#f0edff}.notification-kind.broadcast_security{color:#16765c;background:#e8f8f3}.notification-detail-dialog{width:min(520px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:0;overflow:auto;color:var(--ink);background:transparent;border:0}.notification-detail-dialog::backdrop{background:rgba(7,13,30,.7);backdrop-filter:blur(3px)}.notification-detail-dialog article{position:relative;padding:22px 23px 24px;background:#fff;border-radius:20px;box-shadow:0 28px 80px rgba(7,13,30,.35)}.notification-detail-dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.notification-detail-icon{display:grid;place-items:center;width:46px;height:46px;color:var(--blue);background:#edf3ff;border-radius:13px}.notification-detail-icon svg{width:23px;height:23px}.notification-detail-dialog header button{display:grid;place-items:center;width:36px;height:36px;padding:0;color:var(--muted);background:#f2f4f7;border:0;border-radius:10px;cursor:pointer}.notification-detail-dialog header button svg{width:18px;height:18px}.notification-detail-dialog article>small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.1em}.notification-detail-dialog h2{margin:6px 0 11px;font-size:22px;line-height:1.3}.notification-detail-dialog p{margin:0;color:var(--text);font-size:15px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.notification-detail-dialog time{display:block;margin-top:18px;padding-top:14px;color:var(--muted);border-top:1px solid var(--line);font-size:11px}@media(max-width:560px){.notification-detail-dialog{width:calc(100% - 20px)}.notification-detail-dialog article{padding:19px 18px 21px;border-radius:18px}.notification-detail-dialog h2{font-size:20px}.notification-detail-dialog p{font-size:14px}}
.pickup-location-shell{max-width:820px;padding-top:18px;padding-bottom:60px}.pickup-location-shell .form-page-heading{margin:0 0 14px}.pickup-location-shell .form-page-heading h1{margin-top:0}.pickup-location-address{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin-bottom:16px}.pickup-location-address>small{flex-basis:100%;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em}.pickup-location-address strong{flex:1;font-size:15px}.pickup-location-address a,.pickup-location-locked a{color:var(--blue);font-weight:750}.pickup-location-form{display:grid;gap:14px}.pickup-location-map{position:relative;height:500px;overflow:hidden;background:#e8ecea;border:1px solid var(--line);border-radius:12px;cursor:crosshair;touch-action:none}.pickup-map-tiles{position:absolute;inset:0}.pickup-map-tiles img{position:absolute;width:256px;height:256px;max-width:none;user-select:none;pointer-events:none}.pickup-map-pin{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-90%);color:#ee594f;font-size:53px;line-height:1;text-shadow:0 2px 5px rgba(0,0,0,.35);pointer-events:none}.pickup-map-controls{position:absolute;z-index:3;top:12px;right:12px;display:grid;gap:3px}.pickup-map-controls button{width:38px;height:38px;background:#fff;border:1px solid #cbd3d8;border-radius:7px;font-size:25px;cursor:pointer}.pickup-map-attribution{position:absolute;z-index:3;right:7px;bottom:6px;padding:2px 5px;color:#34404c;background:rgba(255,255,255,.88);border-radius:3px;font-size:10px;text-decoration:none}.pickup-map-instruction{margin:0;color:var(--muted);font-size:13px}.pickup-location-form>.button{justify-self:start}.pickup-location-policy,.pickup-location-locked small{color:var(--muted);font-size:12px;line-height:1.5}.pickup-location-confirm{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.45}.pickup-location-confirm input{margin-top:3px;flex:none}.pickup-location-policy{margin:0}.pickup-location-locked{display:grid;gap:10px}.pickup-location-locked p{margin:0}@media(max-width:600px){.pickup-location-map{height:420px}.pickup-location-form>.button{width:100%}}
.active-pickup-map-link{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:8px;color:var(--aqua);font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:2px}.active-pickup-map-link svg{width:14px;height:14px}
.courier-dialog-map-link,.recipient-map-link{display:inline-flex!important;align-items:center;gap:6px;width:max-content;margin-top:7px;color:var(--blue)!important;font-size:13px!important;font-weight:800!important;text-decoration:none}.courier-dialog-map-link svg,.recipient-map-link svg{width:15px;height:15px}.recipient-map-link{padding:8px 12px;background:#edf3ff;border-radius:10px}
.business-pickup-data>a:not(.business-order-phone){display:inline-flex;align-items:center;gap:6px}.business-pickup-data>a:not(.business-order-phone) svg{width:16px;height:16px}

.courier-dialog-address-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-width:0}.courier-dialog-address-row .courier-pickup-dialog-address{flex:1 1 auto;min-width:0}.courier-dialog-address-row .courier-dialog-map-link{flex:0 0 auto;margin:0;padding:3px 0;white-space:nowrap}.business-pickup-data .business-pickup-address{grid-column:1/-1}.business-pickup-actions{display:flex!important;grid-column:1/-1;align-items:center;justify-content:space-between;gap:12px;padding-top:3px}.business-pickup-actions .business-order-phone{margin:0;padding:7px 0}.business-pickup-map-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;color:var(--blue);background:#edf3ff;border-radius:10px;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.business-pickup-map-link svg{width:15px;height:15px}
.courier-dialog-address-row{align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.courier-dialog-address-row .courier-pickup-dialog-address{flex:0 1 auto}.courier-dialog-address-row .courier-dialog-map-link{margin-left:2px}
.detail-shell .business-pickup-data small{font-size:11px}.detail-shell .business-pickup-data b{font-size:15px}.business-pickup-business .business-order-phone{justify-self:start;width:max-content;margin-top:4px;padding:2px 0;font-size:13px}.business-pickup-address-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;flex-wrap:wrap}.business-pickup-address-row>b{min-width:0;white-space:normal}.business-pickup-address-row .business-pickup-map-link{flex:0 0 auto;padding:3px 0;background:transparent;margin-left:2px}
.active-pickup-map-link,.courier-dialog-map-link,.business-pickup-map-link,.recipient-map-link{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;column-gap:4px!important;width:max-content!important}.active-pickup-map-link>svg,.courier-dialog-map-link>svg,.business-pickup-map-link>svg,.recipient-map-link>svg{display:block;flex:0 0 auto;margin:0}.active-pickup-map-link>span,.courier-dialog-map-link>span,.business-pickup-map-link>span,.recipient-map-link>span{display:inline;flex:0 0 auto}
.pickup-map-instruction--error{padding:10px 12px;color:#a61b2b;background:#fff1f2;border:1px solid #efadb7;border-radius:9px;font-weight:700}

/* Keep the first pickup-point confirmation inside its card on narrow screens. */
.pickup-location-shell,.pickup-location-form,.pickup-location-form>*{min-width:0}
.pickup-location-form{grid-template-columns:minmax(0,1fr);width:100%;padding:14px}
.pickup-location-form>.pickup-location-map{width:100%;margin-inline:0}
@media(max-width:680px){.pickup-location-form{width:100%;max-width:100%;padding:9px;overflow:hidden}.pickup-location-form>.pickup-location-map{justify-self:stretch;width:100%;max-width:100%;margin:0;border-radius:10px}}
.pickup-location-shell .form-page-heading,.pickup-location-address strong,.pickup-map-instruction,.pickup-location-confirm span{min-width:0;overflow-wrap:anywhere}
.pickup-location-address strong{flex:1 1 100%}
.pickup-location-confirm input{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:2px 0 0;padding:0;accent-color:var(--blue)}
.pickup-location-confirm span{flex:1 1 auto}


.pickup-map-pin{width:20px;height:20px;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;background:#ee594f;box-shadow:0 2px 7px rgba(0,0,0,.4)}

.pickup-location-form{row-gap:20px}





.pickup-location-confirm{gap:12px;margin-top:2px;padding:15px 16px;background:var(--canvas);border-radius:11px}
.pickup-location-form>button[type="submit"]{min-height:50px;margin-top:2px}
.pickup-location-confirm{color:var(--text);font-weight:400}
.pickup-location-launch-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px}.pickup-location-launch-card>span{display:grid;place-items:center;width:48px;height:48px;color:#16866b;background:#eaf9f5;border-radius:14px}.pickup-location-launch-card>span svg{width:24px;height:24px}.pickup-location-launch-card>div{display:grid;gap:3px;min-width:0}.pickup-location-launch-card small{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.09em}.pickup-location-launch-card strong{color:var(--navy);font-size:16px;line-height:1.35}.pickup-location-launch-card p{margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.pickup-location-launch-card>.button{white-space:nowrap}.profile-business-location-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 13px;color:#176b5b;background:#eaf9f5;border:1px solid #9ddfce;border-radius:11px;font:inherit;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.profile-business-location-button:hover,.profile-business-location-button:focus-visible{border-color:#34b99c;outline:0;box-shadow:0 0 0 3px rgba(52,224,191,.18)}.profile-business-location-button svg{flex:0 0 18px;width:18px;height:18px}.profile-business-location-button--compact{min-height:34px;padding:6px 9px;font-size:11px}.profile-business-location-button--icon{flex:0 0 48px;width:48px;min-width:48px;height:48px;min-height:48px;padding:0}.profile-business-location-button--compact.profile-business-location-button--icon{flex-basis:34px;width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.business-pickup-location-dialog .taxi-destination-map-picker{min-height:390px}.business-pickup-location-dialog .taxi-destination-map-picker.is-loading{display:grid;place-items:center;background:#f1f4f6}.business-pickup-location-dialog .taxi-destination-map-picker.is-loading::after{position:relative;z-index:3;padding:10px 14px;color:#526174;background:rgba(255,255,255,.9);border-radius:999px;box-shadow:0 7px 20px rgba(16,32,51,.1);font-size:12px;font-weight:800;content:"Cargando mapa…"}.business-pickup-location-dialog .taxi-destination-map-picker.is-loading .taxi-destination-map-pin{display:none}.business-pickup-location-card{border:1px solid #cdebe3}.business-pickup-location-card>header small{color:#16866b}.business-pickup-location-card .taxi-passenger-route-button{color:#102033;background:#34e0bf;box-shadow:0 8px 20px rgba(52,224,191,.24)}.business-pickup-location-card .business-pickup-done{grid-column:1/-1}.business-pickup-location-card[data-read-only="true"] .leaflet-control-zoom{display:none}@media(max-width:680px){.pickup-location-launch-card{grid-template-columns:auto minmax(0,1fr);padding:15px}.pickup-location-launch-card>.button{grid-column:1/-1;width:100%}.profile-business-address-row{grid-template-columns:minmax(0,1fr) auto}.profile-business-location-button{width:100%}.profile-business-location-button--icon{width:48px}.profile-business-location-button--compact.profile-business-location-button--icon{width:34px}.business-pickup-location-dialog .taxi-destination-map-picker{min-height:48dvh}}
.pickup-location-address{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 10px;margin-bottom:12px;padding:14px 16px}
.pickup-location-address>small{grid-column:1;grid-row:1}
.pickup-location-address strong{grid-column:1;grid-row:2;min-width:0}
.pickup-location-address-actions{display:grid;grid-column:2;grid-row:1/3;align-self:center;justify-items:center}
.pickup-location-geolocate{display:grid;justify-items:center;gap:2px;min-width:54px;padding:0;color:var(--blue);background:transparent;border:0;font-weight:800;cursor:pointer}
.pickup-location-geolocate svg{width:25px;height:25px;stroke-width:2.2}
.pickup-location-geolocate small{color:var(--blue);font-size:9px!important;font-weight:800;letter-spacing:0;line-height:1.15;white-space:nowrap}
.pickup-location-geolocate:hover,.pickup-location-geolocate:focus-visible{color:#285bb7}
@media(max-width:680px){.pickup-location-address{padding:10px 12px}}
.pickup-location-required{max-width:560px;margin:24px auto 0;padding:44px 30px}.pickup-location-required>span svg{width:30px;height:30px}.pickup-location-required>small{display:block;margin-bottom:7px;color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.09em}.pickup-location-required h1{margin:0 0 10px;font-size:28px;line-height:1.18}.pickup-location-required p{max-width:430px;margin:0 auto 23px;color:var(--text);font-size:15px;line-height:1.55}.pickup-location-required .button{display:inline-flex}.pickup-location-required .button svg{width:18px;height:18px}@media(max-width:600px){.pickup-location-required{margin-top:16px;padding:36px 20px}.pickup-location-required h1{font-size:24px}.pickup-location-required p{font-size:14px}}
.pickup-location-save-hint{margin:0 0 -12px;padding:10px 12px;color:#a61b2b;background:#fff1f2;border:1px solid #efadb7;border-radius:9px;font-size:13px;font-weight:700;line-height:1.5}
.pickup-location-policy-note{margin:0;padding:12px 14px;color:var(--text);background:var(--canvas);border-radius:10px;font-size:13px;line-height:1.5}.pickup-location-form[data-read-only="true"] .pickup-location-map{cursor:default;touch-action:auto}
.pickup-location-policy-note--warning{display:flex;align-items:flex-start;gap:9px;color:#9f2430;background:#fff0f2;border:1px solid #efb0b8;font-weight:700}
.pickup-location-policy-note--warning svg{flex:0 0 18px;width:18px;height:18px;margin-top:1px}
.pickup-location-search{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.55fr) auto;align-items:end;gap:10px;padding:14px;background:var(--canvas);border:1px solid var(--line);border-radius:11px}.pickup-location-search label{display:grid;gap:6px;min-width:0}.pickup-location-search label>span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em}.pickup-location-search input,.pickup-location-search select{width:100%;min-width:0;min-height:44px}.pickup-location-search .button{min-height:44px;white-space:nowrap}.pickup-location-search p{grid-column:1/-1;margin:0;color:#a61b2b;font-size:13px;font-weight:700;line-height:1.4}.pickup-map-instruction--error{color:#a61b2b;font-weight:700}@media(max-width:680px){.pickup-location-search{grid-template-columns:1fr}.pickup-location-search .button,.pickup-location-search p{grid-column:1}.pickup-location-search .button{width:100%}}
.pickup-map-boundary{position:absolute;z-index:1;inset:0;width:100%;height:100%;pointer-events:none}
.pickup-map-boundary-halo{fill:none;stroke:#fff;stroke-width:7;vector-effect:non-scaling-stroke}
.pickup-map-boundary-line{fill:none;stroke:#c62828;stroke-width:4;vector-effect:non-scaling-stroke}
.pickup-map-guidance{position:absolute;z-index:2;top:12px;left:12px;width:min(340px,calc(100% - 92px));padding:9px 11px;color:#334155;background:rgba(255,255,255,.95);border:1px solid #b8c1cd;border-radius:9px;box-shadow:0 2px 9px rgba(18,35,58,.13);pointer-events:none}
.pickup-map-guidance-close{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:27px;height:27px;padding:0;color:#465366;background:#edf1f5;border:0;border-radius:6px;font-size:22px;line-height:1;cursor:pointer;pointer-events:auto}
.pickup-map-guidance-close:hover,.pickup-map-guidance-close:focus-visible{color:#17233b;background:#e1e7ee}
.pickup-map-zone-label{display:block;color:#243047;font-size:12px;font-weight:800}
.pickup-map-guidance .pickup-map-zone-label{padding-right:27px}
.pickup-map-guidance p{margin:4px 0 0;font-size:11px;line-height:1.4}




.profile-business-address-row{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;min-width:0}
.profile-business-address-row>label{min-width:0}
.profile-pickup-pending{grid-column:1/-1;margin:0;color:#176b5b;font-size:13px;font-weight:700;line-height:1.4}.pickup-location-final-save{display:block;width:max-content;max-width:100%;min-width:190px;margin:16px auto 0}.pickup-location-save-requirement{max-width:430px;margin:9px auto 0;color:var(--muted);font-size:12px;font-weight:650;line-height:1.5;text-align:center}
.pickup-location-shell.is-first-setup{max-width:760px}.pickup-first-kicker{display:inline-flex;margin-bottom:9px;padding:6px 9px;color:#176b5b;background:#e8f8f3;border-radius:8px;font-size:9px;font-weight:900;letter-spacing:.11em}.pickup-location-shell.is-first-setup .form-page-heading{max-width:650px;margin-bottom:18px}.pickup-location-shell.is-first-setup .form-page-heading h1{max-width:620px;font-size:34px;line-height:1.12}.pickup-location-shell.is-first-setup .form-page-heading p{max-width:610px;color:#5f6c80;font-size:16px;line-height:1.55}.pickup-first-note{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding:15px 16px;color:#24334d;background:#f0f8f6;border:1px solid #cfe8e1;border-radius:15px}.pickup-first-note>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;color:#17745f;background:#d9f2eb;border-radius:11px}.pickup-first-note svg{width:19px;height:19px}.pickup-first-note div{display:grid;gap:3px}.pickup-first-note strong{font-size:14px}.pickup-first-note p{margin:0;color:#607068;font-size:12px;line-height:1.45}.pickup-location-shell.is-first-setup .pickup-location-launch-card{padding:20px;border-color:#dbe3ec;box-shadow:0 12px 34px rgba(18,32,55,.07)}.pickup-location-shell.is-first-setup .pickup-location-launch-card>span{width:52px;height:52px}.pickup-location-shell.is-first-setup .pickup-location-launch-card>.button{min-height:46px}.pickup-first-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 4px}.pickup-first-steps>span{display:flex;align-items:center;gap:8px;min-width:0;padding:10px 11px;color:#748095;background:#f4f6f9;border-radius:11px;font-size:11px;font-weight:750}.pickup-first-steps b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;color:#657187;background:#fff;border-radius:50%;font-size:10px}.pickup-first-steps .is-current{color:#176b5b;background:#eaf8f4}.pickup-first-steps .is-current b{color:#fff;background:#17856b}.business-pickup-once-note{display:flex;align-items:flex-start;gap:10px;margin:0;padding:11px 12px;color:#315c52;background:#edf8f5;border-radius:12px}.business-pickup-once-note svg{flex:0 0 19px;width:19px;height:19px;color:#17856b}.business-pickup-once-note span{display:grid;gap:2px}.business-pickup-once-note b{font-size:12px}.business-pickup-once-note small{color:#668079;font-size:11px!important;line-height:1.4}@media(max-width:680px){.pickup-location-shell.is-first-setup .form-page-heading h1{font-size:29px}.pickup-first-note{padding:13px}.pickup-location-shell.is-first-setup .pickup-location-launch-card{padding:16px}.pickup-first-steps{grid-template-columns:1fr}.pickup-first-steps>span{padding:8px 10px}.pickup-location-final-save{width:100%}}
.pickup-first-address-card{display:grid;gap:13px;padding:20px;border-color:#dbe3ec;box-shadow:0 12px 34px rgba(18,32,55,.07)}.pickup-first-address-card label{display:grid;gap:7px}.pickup-first-address-card label>small{color:#66748a;font-size:10px!important;font-weight:900;letter-spacing:.09em}.pickup-first-address-card input{width:100%;min-height:52px;color:#18233d;background:#fff;border:1.5px solid #d9e0ea;border-radius:13px;font-size:16px;font-weight:650}.pickup-first-address-card input:focus{border-color:#258b73;outline:0;box-shadow:0 0 0 3px rgba(37,139,115,.13)}.pickup-first-address-card>p{margin:0;color:#69768a;font-size:12px;line-height:1.5}.pickup-first-address-card>.button{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:46px}.pickup-first-address-card>.button svg{width:18px;height:18px}.pickup-location-final-save--dark,.pickup-location-final-save--dark:hover:not(:disabled),.pickup-location-final-save--dark:focus-visible{color:#fff;background:#176b5b;border-color:#176b5b;box-shadow:0 8px 20px rgba(23,107,91,.2)}.pickup-location-final-save--dark:disabled{color:#81918d;background:#dfe8e5;border-color:#dfe8e5;box-shadow:none}@media(max-width:680px){.pickup-first-address-card{padding:16px}.pickup-first-address-card>.button{justify-self:stretch;width:100%}}
.profile-business-map-button{display:grid;place-items:center;align-content:center;gap:2px;min-width:52px;min-height:42px;padding:0;color:var(--blue);font-size:12px;line-height:1;white-space:nowrap}
.profile-business-map-button:hover,.profile-business-map-button:focus-visible{color:#285bb7}
.profile-business-map-button svg{width:24px;height:26px;margin-top:-3px;stroke-width:2.15}
.profile-business-map-button small{color:currentColor;font-size:9px!important;font-weight:800;line-height:1.1}
.profile-shell .pickup-fixed-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}
.profile-business-address-value{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;min-width:0}
.profile-business-address-value>strong{min-width:0;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.profile-business-address-fixed{min-height:58px;padding-top:9px;padding-bottom:9px}
.profile-business-address-fixed .profile-business-map-button{align-self:start;min-height:34px;margin-top:-8px}
@media(max-width:680px){.profile-business-address-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.profile-shell .pickup-fixed-grid{grid-template-columns:minmax(0,1fr)}.profile-business-address-value>strong{font-size:16px}}

.account-menu{position:relative}.account-menu summary{list-style:none;cursor:pointer}.account-menu summary::-webkit-details-marker{display:none}.account-menu-desktop summary{overflow:hidden}.account-menu-desktop summary.active{outline:none}.account-menu-options{position:absolute;z-index:110;right:0;top:calc(100% + 12px);display:grid;min-width:170px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 14px 35px rgba(16,25,53,.17)}.account-menu-options a{display:block;padding:11px 13px;color:var(--ink);border-radius:9px;font-size:14px;font-weight:650;white-space:nowrap}.account-menu-options a.active{color:var(--ink);background:transparent}.account-menu-mobile{display:none}.system-heading{max-width:620px;margin:0 auto 22px}.system-heading h1{margin:0 0 5px;font-size:28px}.system-heading p{margin:0;color:var(--muted);font-size:14px}.system-grid{max-width:620px;margin:auto}.system-grid .profile-aside{grid-template-columns:1fr}.system-grid .profile-email-preferences-standalone{margin-top:0}.system-grid .profile-logout-form{margin-top:0}
.account-menu-options a:hover,.account-menu-options a:focus-visible{color:#fff;background:#343a40;outline:none}
.account-menu-options a{display:flex;align-items:center;gap:10px}.account-menu-options a svg{flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.account-menu-options a.taxi-referral-menu-action{color:#fff;background:linear-gradient(135deg,#22a85a,#14833f);box-shadow:0 7px 16px rgba(20,131,63,.24)}.account-menu-options a.taxi-referral-menu-action svg{color:#fff}.account-menu-options a.taxi-referral-menu-action:hover,.account-menu-options a.taxi-referral-menu-action:focus-visible{color:#fff;background:linear-gradient(135deg,#1d984f,#106f35);box-shadow:0 9px 20px rgba(20,131,63,.32)}
.taxi-passenger-header-menu{display:none}.taxi-passenger-app .taxi-passenger-header-menu>summary,.taxi-passenger-app .taxi-passenger-header-menu>summary.active{position:relative;display:grid;place-items:center;overflow:visible;color:#171100!important;background:#ffc94a!important;border:2px solid rgba(255,255,255,.9);box-shadow:0 5px 14px rgba(4,16,35,.2)}.taxi-driver-app .taxi-driver-header-menu>summary,.taxi-driver-app .taxi-driver-header-menu>summary.active{position:relative;display:grid;place-items:center;overflow:visible;color:#171100!important;background:#ffc94a!important;border:2px solid rgba(255,255,255,.9);box-shadow:0 5px 14px rgba(4,16,35,.2)}.taxi-passenger-header-menu>summary img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.taxi-passenger-header-badge{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;color:#fff;background:var(--coral);border:2px solid #101935;border-radius:10px;font-size:8px;line-height:1}.taxi-passenger-header-menu .account-menu-options a.active{background:#f1f4f8}
.system-permissions h2{margin:0 0 6px}.system-permissions>p{margin:0 0 17px;color:var(--muted);font-size:13px;line-height:1.5}.system-permission-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.system-permission-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;color:var(--blue);background:#edf2ff;border-radius:11px}.system-permission-icon svg{width:20px;height:20px}.system-permission-copy{display:grid;gap:5px;min-width:0;margin-right:auto}.system-permission-copy b{font-size:14px}.system-permission-state{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.system-permission-state::before{content:"";display:grid;place-items:center;width:16px;height:16px;background:#e7e9ef;border-radius:50%;font-size:11px;font-weight:800}.system-permission-state[data-state="granted"]{color:#25885f}.system-permission-state[data-state="granted"]::before{content:"✓";color:#fff;background:#25885f}.system-permission-state[data-state="denied"]{color:#b34d57}.system-permission-state[data-state="denied"]::before{content:"!";color:#fff;background:#b34d57}.system-permission-action{flex:0 0 auto;min-height:36px;padding:0 12px;font-size:12px}.system-permission-action[hidden]{display:none}
.system-permission-row{flex-wrap:wrap}.system-permission-copy{flex:1 1 150px}.system-permission-detail{color:var(--muted);font-size:11px;line-height:1.4}.system-permission-state[data-state="verified"]{color:#25885f}.system-permission-state[data-state="verified"]::before{content:"✓";color:#fff;background:#25885f}.system-permission-row .system-permission-action:first-of-type{margin-left:auto}
.system-notification-row{flex-wrap:nowrap}.system-notification-row .system-permission-copy{flex:1 1 0}.system-notification-row .system-permission-action{white-space:nowrap}
.system-notification-check{margin:2px 0 14px;padding:14px;border:1px solid #dce6f4;border-radius:13px;background:#f5f8fd}.system-notification-check[hidden]{display:none}.system-notification-check>b{display:block;color:var(--ink);font-size:14px}.system-notification-check p{margin:6px 0 0;color:var(--text);font-size:12px;line-height:1.5}.system-permission-state[data-state="review"]{color:#a66825}.system-permission-state[data-state="review"]::before{content:"!";color:#fff;background:#a66825}
.system-permission-state[data-state="active"]{color:#25885f}.system-permission-state[data-state="active"]::before{content:"✓";color:#fff;background:#25885f}.system-permission-state[data-state="inactive"]{color:#b34d57}.system-permission-state[data-state="inactive"]::before{content:"!";color:#fff;background:#b34d57}
.history-list:not(.business-history-list) .history-order>summary>.status-pill{box-sizing:border-box;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25;text-align:left}
.history-list:not(.business-history-list) .history-order>summary>.status-pill.status-entrega_reportada{padding:6px 8px;font-size:10px!important}
@media(max-width:420px){.system-permission-row{gap:9px}.system-permission-icon{flex-basis:36px;width:36px;height:36px}.system-permission-action{padding:0 9px;font-size:11px}}
@media(max-width:680px){.account-menu-mobile{display:block;justify-self:center;align-self:center}.account-menu-mobile summary{display:grid;justify-items:center;align-content:center;gap:1px;min-height:44px;padding:0 8px;color:var(--muted);font-size:11px;font-weight:600}.account-menu-mobile summary svg{width:22px;height:22px}.account-menu-mobile summary.active{color:var(--navy)}.account-menu-mobile .account-menu-options{position:fixed;top:auto;right:14px;bottom:calc(70px + env(safe-area-inset-bottom,0px));min-width:180px;box-shadow:0 10px 35px rgba(16,25,53,.2)}.system-heading h1{font-size:25px}}
@media(max-width:680px){.taxi-passenger-header-menu{display:block}.taxi-passenger-header-menu>summary{width:40px;height:40px}.taxi-passenger-header-menu .account-menu-options{position:fixed;top:calc(57px + env(safe-area-inset-top,0px));right:10px;bottom:auto;min-width:200px}}
@media(max-width:680px){.mobile-nav>.account-menu-mobile{width:100%;justify-self:stretch}.mobile-nav>.account-menu-mobile summary{padding-inline:0}}
@media(max-width:680px){.mobile-nav>a>span,.mobile-nav>a>small,.mobile-nav>.account-menu-mobile summary>span{font-size:clamp(8px,3.4vw,11px)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* La entrega ya enviada conserva el número y el icono también tras sincronizarse. */
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]){padding:15px 18px}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-focus{padding:0}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-dashboard-price,
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-call-meta,
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-delivery-simple>b,
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-delivery-simple>p:empty,
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-delivery-simple>p+p{display:none!important}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-step-copy{display:grid!important;grid-template-columns:1fr!important;grid-template-areas:"number" "title" "address"!important;gap:3px;width:100%!important}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-step-copy>h3{margin:0!important;font-size:18px!important;line-height:1.25}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-delivery-simple{margin:0!important}
[data-live-courier-dashboard] .active-stage-review:not([data-courier-order-delivery-command-pending="1"]):not([data-courier-order-delivery-local="1"]) .active-delivery-simple>p{color:rgba(255,255,255,.8)!important;font-size:13px!important;line-height:1.4}
.courier-status-phone{display:inline-flex;align-items:center;gap:7px;justify-self:start;margin-top:7px;color:var(--blue);font-size:14px;font-weight:750}
.courier-status-phone svg{width:17px;height:17px}
.courier-status-phone[hidden]{display:none!important}
.active-delivery-card.delivery-overdue{border:2px solid #f35b69!important;box-shadow:0 0 0 1px rgba(243,91,105,.35),0 18px 35px rgba(16,25,53,.18)!important}
.active-delivery-card .active-step-icon .delivery-delay-warning-icon{display:none}
.active-delivery-card.delivery-overdue .active-step-icon{color:#c6283e!important;background:#ffe5e9!important;box-shadow:inset 0 0 0 1px #f7a6af!important}
.active-delivery-card.delivery-overdue .active-step-icon svg:not(.delivery-delay-warning-icon){display:none}
.active-delivery-card.delivery-overdue .active-step-icon .delivery-delay-warning-icon{display:block}
.business-active-pickup-card.delivery-overdue,.business-active-transit-card.delivery-overdue{--business-card-connector:#f35b69}
.active-delivery-card.delivery-overdue .business-active-courier-call,.active-delivery-card.delivery-overdue .active-call-meta>a{color:#fff!important;background:#d92d49!important;box-shadow:0 5px 13px rgba(217,45,73,.3)}
.active-delivery-card.delivery-overdue .business-active-courier-call:hover,.active-delivery-card.delivery-overdue .active-call-meta>a:hover{background:#b91f39!important}
.active-step-copy>small .delivery-delay-label{display:none}
.active-delivery-card.delivery-overdue .active-step-copy>small{display:flex;align-items:center;justify-content:flex-start;gap:8px}
.active-delivery-card.delivery-overdue .active-step-copy>small .delivery-delay-label{display:inline-flex;flex:0 0 auto;align-items:center;padding:3px 7px;border-radius:6px;color:#fff!important;background:#d92d49;font-size:10px;font-weight:850;line-height:1.2;letter-spacing:0;text-transform:none;white-space:nowrap}

/* Pie de la web pública */
.site-footer{padding:0;color:#fff;background:#0b1229}
.footer-main{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(175px,.8fr) minmax(240px,1fr);gap:clamp(28px,5vw,80px);padding-top:56px;padding-bottom:54px}
.footer-identity .brand{font-size:24px}
.footer-identity .brand-mark{width:38px;height:38px}
.footer-identity .brand.taxi-brand{gap:10px;font-size:21px;letter-spacing:-.04em}
.footer-identity .brand.taxi-brand .brand-mark{width:34px;height:34px;background:#ffc94a}
.footer-identity p{max-width:290px;margin:18px 0 0;color:#aab4cb;font-size:14px;line-height:1.6}
.footer-section{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:7px}
.footer-heading{color:#8de8da;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.footer-section a{color:#eef2fa;font-size:14px;font-weight:500;line-height:1.45;transition:color .2s}
.footer-section a:hover,.footer-section a:focus-visible{color:var(--aqua);text-decoration:underline;text-underline-offset:4px}
.footer-identity .footer-download{display:inline-flex;align-items:center;gap:12px;max-width:100%;margin-top:18px;padding:7px 16px 7px 7px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:15px;font-size:14px;font-weight:750;line-height:1.35;text-decoration:none;transition:background .2s,border-color .2s,transform .2s}.footer-identity .footer-download:hover,.footer-identity .footer-download:focus-visible{color:#fff;background:rgba(255,255,255,.14);border-color:#f38db2;transform:translateY(-2px)}.footer-identity .footer-download:focus-visible{outline:2px solid #fff;outline-offset:3px}.footer-download .apk-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;color:#fff;background:linear-gradient(135deg,#ffae45 0%,#f05b79 52%,#7865ed 100%);border-radius:12px;box-shadow:0 5px 14px rgba(240,91,121,.32)}.footer-download .apk-icon svg{width:29px;height:29px;stroke:none}
.footer-identity .footer-download-text-only{gap:0;padding:12px 16px}
.footer-download-text-only>span{display:grid;gap:2px}.footer-download-text-only small{color:#aab4cb;font-size:11px;font-weight:600}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin:0;font-style:normal}
.footer-contact a{display:inline-flex;align-items:center;gap:11px;overflow-wrap:anywhere}
.footer-contact svg{flex:none;width:17px;height:17px;color:#8de8da;stroke-width:1.7}
.footer-bottom{padding-top:21px;padding-bottom:24px;border-top:1px solid rgba(255,255,255,.13);text-align:center}
.footer-copyright{margin:0;color:#bac6d8;font-size:12px;font-weight:500;line-height:1.5}
@media(max-width:820px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 42px;padding-top:44px;padding-bottom:43px}.footer-identity{grid-column:1/-1}.footer-identity p{margin-top:12px}}
@media(max-width:520px){.footer-main{grid-template-columns:1fr;gap:30px;padding-top:40px;padding-bottom:38px}.footer-identity{grid-column:auto}.footer-section{gap:12px;padding-top:0}.footer-contact{gap:12px}.site-footer .footer-identity p{text-align:left}.footer-bottom{padding-top:18px;padding-bottom:22px}}
@media(max-width:520px){.hero-apk-link{width:100%}}
.apk-download-strip{padding:48px 0;color:#fff;background:#172344;border-block:1px solid #29385b}
.apk-download-strip .shell{max-width:920px}
.apk-download-strip-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;color:#fff;text-align:center}
.apk-download-strip-link:hover,.apk-download-strip-link:focus-visible{color:#fff}
.apk-download-strip-link:focus-visible{outline:2px solid #fff;outline-offset:10px}
.apk-download-strip-copy{display:grid;gap:5px;min-width:0;text-align:center}
.apk-download-strip-copy h2{margin:0;color:#fff;font-size:21px;line-height:1.25;letter-spacing:-.02em}
.apk-download-strip-copy p{margin:0;color:#c6d1e6;font-size:13px;line-height:1.4}
.apk-download-strip-action{display:inline-flex;align-items:center;gap:9px;padding:11px 14px;color:#172344;background:#fff;border-radius:10px;font-size:13px;font-weight:800;white-space:nowrap;transition:background .2s,transform .2s}
.apk-download-strip-link:hover .apk-download-strip-action{background:#f6e5ee;transform:translateX(2px)}
.apk-download-strip-action svg{width:16px;height:16px}
@media(max-width:600px){.apk-download-strip{padding:38px 0}.apk-download-strip-link{flex-direction:column;gap:12px 14px}.apk-download-strip-copy h2{font-size:17px}.apk-download-strip-copy p{font-size:11px}.apk-download-strip-action{font-size:12px}}
.android-apk-download .apk-icon{width:30px;height:30px;border-radius:8px}.android-apk-download .apk-icon svg{width:21px;height:21px}
.privacy-summary{margin-bottom:36px;padding:22px 25px;background:#eef9f6;border:1px solid #ccece3;border-left:4px solid #2dbb9d;border-radius:14px}
.taxi-legal-page .taxi-legal-eyebrow{color:#ffc94a}
.privacy-summary strong{display:block;margin-bottom:7px;color:#176b5b;font-size:15px}
.privacy-summary p{margin:0;color:#365b55}
.privacy-content h2{margin-top:34px}
.privacy-content p strong{color:var(--ink)}
.privacy-content .terms-list{display:grid;gap:10px;margin:12px 0 20px;padding-left:23px;color:var(--text);line-height:1.65}
.privacy-content .terms-list li::marker{color:#1e927b}
@media(max-width:520px){.privacy-content{padding-top:42px;padding-bottom:58px}.privacy-summary{padding:18px 19px}.privacy-content h2{font-size:20px}}
.taxi-terms-dialog{width:min(780px,calc(100% - 24px));max-width:none;padding:0;overflow:visible;color:var(--ink);background:transparent;border:0;border-radius:22px}
.taxi-auth-page .terms>span{color:var(--text);font-weight:400}
.taxi-auth-page .form-stack>.terms{gap:10px;padding:12px 13px;background:#f7faf9;border:1px solid #dce8e4;border-radius:12px;transition:background .16s,border-color .16s,box-shadow .16s}.taxi-auth-page .form-stack>.terms>input{margin-top:1px}.taxi-auth-page .taxi-whatsapp-consent>span{display:grid;gap:4px}.taxi-auth-page .taxi-whatsapp-consent.is-invalid{background:#fff2f3;border-color:#d94b58;box-shadow:0 0 0 3px rgba(217,75,88,.13)}.taxi-auth-page .taxi-whatsapp-consent.is-invalid>span{color:#a92331;font-weight:650}.taxi-auth-page .taxi-whatsapp-consent.is-invalid input{outline:2px solid #d94b58;outline-offset:2px;accent-color:#d94b58}.taxi-whatsapp-consent-error{color:#b32635;font-size:11px!important;font-weight:750!important;line-height:1.4}.taxi-whatsapp-consent-error[hidden]{display:none!important}
.taxi-auth-page .form-stack label.is-invalid:not(.terms)>input{background:#fff7f7;border-color:#d94b58;box-shadow:0 0 0 3px rgba(217,75,88,.12)}.taxi-auth-page .form-stack label.is-invalid:not(.terms)>input:focus{border-color:#d94b58;box-shadow:0 0 0 4px rgba(217,75,88,.16)}.taxi-auth-page .form-stack .terms.is-invalid:not(.taxi-whatsapp-consent){padding:12px 13px;background:#fff2f3;border:1px solid #d94b58;border-radius:12px;box-shadow:0 0 0 3px rgba(217,75,88,.1)}.taxi-auth-page .form-stack .terms.is-invalid:not(.taxi-whatsapp-consent)>span{color:#a92331}.taxi-auth-page .taxi-passenger-selfie.is-invalid{background:#fff7f7;border-color:#d94b58;box-shadow:0 0 0 3px rgba(217,75,88,.1)}.taxi-auth-field-error{display:block;margin-top:4px;color:#b32635;font-size:11px!important;font-weight:750!important;line-height:1.4}.taxi-auth-field-error[hidden]{display:none!important}
.taxi-auth-page .terms{margin-bottom:10px}
.taxi-auth-page .terms .taxi-terms-link{color:#176bff;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}
.taxi-auth-page .terms .taxi-terms-link:hover{color:#0f52cc}
.taxi-auth-page .taxi-auth-password-confirm{margin-top:-4px}
.password-recovery-back{position:fixed;z-index:109;top:calc(90px + env(safe-area-inset-top,0px));left:max(24px,env(safe-area-inset-left,0px));display:block;width:max-content;margin:0;color:#748097;font-size:13px;font-weight:750}
.taxi-auth-page .auth-back-link{position:fixed;z-index:109;top:calc(90px + env(safe-area-inset-top,0px));left:max(24px,env(safe-area-inset-left,0px));margin:0;color:#748097;font-size:14px;font-weight:750}
.taxi-auth-page .auth-card>h1{margin-top:0}
@media(max-width:680px){.taxi-auth-page .auth-back-link,.password-recovery-back{top:calc(82px + env(safe-area-inset-top,0px));left:max(18px,env(safe-area-inset-left,0px))}}
.taxi-auth-page .taxi-passenger-selfie{grid-template-columns:58px minmax(0,1fr);gap:16px;min-height:108px;padding:16px;align-items:center}
.taxi-auth-page .taxi-passenger-selfie .photo-preview{grid-column:1;grid-row:1;width:58px;height:58px;padding:0;border:0;border-radius:50%}
.taxi-auth-page .taxi-passenger-selfie .photo-upload-copy{display:grid;grid-column:2;grid-row:1;gap:5px;min-width:0}
.taxi-auth-page .taxi-passenger-selfie .photo-upload-title{justify-self:start;margin:0;padding:0;color:var(--ink);background:transparent;border:0;font:inherit;font-size:15px;font-weight:750;line-height:1.3;text-align:left;cursor:pointer}
.taxi-auth-page .taxi-passenger-selfie .photo-upload-title:hover{color:var(--blue)}
.taxi-auth-page .taxi-passenger-selfie .photo-upload-copy>small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.taxi-registration-download{display:grid;justify-items:center;gap:14px;padding:25px 22px;background:linear-gradient(145deg,#fff9e8,#f1fbf8);border:1px solid #eadcae;border-radius:20px;text-align:center;box-shadow:0 16px 38px rgba(8,20,38,.09)}
.taxi-registration-download-icon{display:grid;place-items:center;width:58px;height:58px;color:#075e4e;background:#43dfcc;border:6px solid #dff9f4;border-radius:19px;box-shadow:0 9px 22px rgba(25,161,139,.2)}
.taxi-registration-download-icon svg{width:27px;height:27px;stroke-width:2.6}
.taxi-registration-download>div{display:grid;gap:6px}
.taxi-registration-download strong{font-size:20px;letter-spacing:-.02em}
.taxi-registration-download p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.taxi-registration-download .button{gap:9px;color:#171100;background:#ffc94a;box-shadow:0 11px 25px rgba(255,201,74,.3)}
.taxi-registration-download .button:hover{color:#171100;background:#ffd665}
.taxi-registration-download .button svg{width:20px;height:20px}
.taxi-registration-download>small{color:#718094;font-size:11px;line-height:1.45}
.taxi-auth-login-page .auth-form-side{position:relative}
@media(max-width:520px){.taxi-auth-page .taxi-passenger-selfie{grid-template-columns:52px minmax(0,1fr);gap:13px;padding:14px}.taxi-auth-page .taxi-passenger-selfie .photo-preview{width:52px;height:52px}.taxi-auth-page .taxi-passenger-selfie .photo-upload-title{font-size:14px}.taxi-auth-page .taxi-passenger-selfie .photo-upload-copy>small{font-size:11px}.taxi-registration-download{padding:21px 16px}.taxi-registration-download .button{padding-inline:12px;font-size:13px}}
.taxi-terms-dialog::backdrop{background:rgba(8,20,38,.76)}
.taxi-terms-dialog-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:min(84vh,760px);overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.8);border-radius:22px;box-shadow:0 28px 80px rgba(8,20,38,.3)}
.taxi-terms-dialog-card>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px 17px;border-bottom:1px solid var(--line)}
.taxi-terms-dialog-card>header div{display:grid;gap:3px}
.taxi-terms-dialog-card>header span{color:#1e927b;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.taxi-terms-dialog-card>header h2{margin:0;font-size:21px;letter-spacing:-.025em}
.taxi-terms-dialog-card>header button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;color:#5f6c80;background:#edf1f5;border:0;border-radius:50%;font:500 24px/1 Arial,sans-serif;cursor:pointer}
.taxi-terms-dialog-card>iframe{width:100%;height:100%;background:#fff;border:0}
.taxi-terms-dialog-card>footer{display:flex;justify-content:flex-end;padding:14px 22px;border-top:1px solid var(--line)}
.taxi-terms-dialog-card>footer .button{min-width:130px}
.taxi-legal-modal-page{padding:0!important;background:#fff}
.taxi-legal-modal-page .public-header,.taxi-legal-modal-page .privacy-hero,.taxi-legal-modal-page .site-footer{display:none}
.taxi-legal-modal-page .privacy-content{width:min(100% - 38px,800px);padding-top:26px;padding-bottom:34px}
@media(max-width:520px){.taxi-terms-dialog{width:calc(100% - 16px)}.taxi-terms-dialog-card{height:88vh;border-radius:17px}.taxi-terms-dialog-card>header{padding:16px}.taxi-terms-dialog-card>header h2{font-size:18px}.taxi-terms-dialog-card>footer{padding:11px 16px}.taxi-terms-dialog-card>footer .button{width:100%}.taxi-legal-modal-page .privacy-content{width:min(100% - 28px,800px);padding-top:20px}}

/* Quiénes somos */
.about-page{background:#fff}
.about-hero{position:relative;overflow:hidden;padding:174px 0 92px;color:#fff;background:#101935}
.about-hero::before{position:absolute;inset:auto -8% -210px auto;width:520px;height:520px;background:radial-gradient(circle,rgba(66,217,199,.23),rgba(66,217,199,0) 68%);content:""}
.about-hero::after{position:absolute;top:96px;right:max(5vw,30px);width:150px;height:150px;border:1px solid rgba(141,232,218,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(141,232,218,.035),0 0 0 76px rgba(141,232,218,.025);content:""}
.about-hero-inner{position:relative;z-index:1}
.about-eyebrow,.about-purpose-heading>span,.about-goals>header>span{display:block;margin-bottom:18px;color:#229f89;font-size:13px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.about-hero .about-eyebrow{color:#8de8da}
.about-hero h1{max-width:770px;margin:0;font-size:clamp(43px,7vw,76px);line-height:1.02;letter-spacing:-.055em}
.about-hero p{max-width:680px;margin:25px 0 0;color:#c5cede;font-size:clamp(17px,2vw,21px);line-height:1.65}
.about-purpose{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(45px,8vw,110px);padding-top:92px;padding-bottom:92px}
.about-purpose-heading h2{max-width:500px;margin:0;color:var(--navy);font-size:clamp(29px,4vw,43px);line-height:1.16;letter-spacing:-.04em}
.about-purpose-copy{padding-top:27px;border-top:1px solid #dfe5ee}
.about-purpose-copy p{margin:0;color:#546077;font-size:16px;line-height:1.8}
.about-purpose-copy p+p{margin-top:19px}
.about-direction{padding:84px 0;background:#f3f7f8}
.about-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.about-direction article{position:relative;overflow:hidden;padding:42px;background:#fff;border:1px solid #dfe7e9;border-radius:24px}
.about-direction article:last-child{color:#fff;background:#172344;border-color:#172344}
.about-card-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:30px;color:#0f5d51;background:#b7f2e7;border-radius:16px}
.about-card-icon svg{width:27px;height:27px}
.about-direction small{color:#248b78;font-size:13px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.about-direction article:last-child small{color:#8de8da}
.about-direction h2{max-width:440px;margin:13px 0 15px;font-size:27px;line-height:1.22;letter-spacing:-.035em}
.about-direction p{max-width:510px;margin:0;color:#5d687b;font-size:17px;line-height:1.7}
.about-direction article:last-child p{color:#bdc8db}
.about-goals{padding-top:96px;padding-bottom:104px}
.about-goals>header{max-width:600px;margin-bottom:52px}
.about-goals>header h2{margin:0;font-size:clamp(31px,4vw,46px);letter-spacing:-.045em}
.about-goals>header p{margin:13px 0 0;color:var(--muted);font-size:16px}
.about-goal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #dfe4eb}
.about-goal-list article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;padding:30px 32px 30px 0;border-bottom:1px solid #dfe4eb}
.about-goal-list article:nth-child(odd){margin-right:32px;border-right:1px solid #dfe4eb}
.about-goal-list article:nth-child(even){padding-left:32px}
.about-goal-list b{color:#2cad94;font-size:14px;letter-spacing:.08em}
.about-goal-list h3{margin:0 0 8px;font-size:19px}
.about-goal-list p{margin:0;color:#697488;font-size:16px;line-height:1.65}
@media(max-width:760px){.about-hero{padding:142px 0 70px}.about-hero::after{right:-85px}.about-purpose{grid-template-columns:1fr;gap:32px;padding-top:66px;padding-bottom:70px}.about-purpose-copy{padding-top:23px}.about-direction{padding:62px 0}.about-direction-grid{grid-template-columns:1fr}.about-direction article{padding:30px}.about-goals{padding-top:68px;padding-bottom:74px}.about-goal-list{grid-template-columns:1fr}.about-goal-list article,.about-goal-list article:nth-child(even){margin:0;padding:25px 0;border-right:0}}
@media(max-width:460px){.about-hero h1{font-size:41px}.about-hero p{font-size:17px}.about-purpose-copy p{font-size:16px}.about-direction article{padding:25px 22px}.about-direction h2{font-size:23px}.about-goals>header{margin-bottom:33px}.about-goal-list article{gap:15px}}
.registration-terms a{color:#315fbd;text-decoration:underline;text-underline-offset:2px}
.review-progress,.review-progress-labels{width:min(480px,100%);max-width:none}
.review-progress{position:relative;grid-template-columns:repeat(3,minmax(0,1fr))}
.review-progress span{justify-self:center;grid-row:1}
.review-progress span:nth-child(1){grid-column:1}.review-progress span:nth-child(3){grid-column:2}.review-progress span:nth-child(5){grid-column:3}
.review-progress i{position:absolute;top:16px;width:calc(33.333% - 34px)}
.review-progress i:nth-child(2){left:calc(16.667% + 17px)}.review-progress i:nth-child(4){left:calc(50% + 17px)}
.review-apk-download{width:min(480px,100%);margin:24px auto 0;text-align:left}
.review-apk-download .hero-apk-link{width:100%;justify-content:center;color:var(--ink);background:#f1f3f7;border-color:#dfe4ed;text-align:center}
.review-apk-download .hero-apk-link:hover,.review-apk-download .hero-apk-link:focus-visible{color:var(--ink);background:#e9edf4;border-color:#cbd5e3}
.hero .trust-line{justify-content:flex-start}
.hero .hero-apk-link{justify-content:center;text-align:center}
@media(max-width:920px){.hero .trust-line{justify-content:center}}
.recipient-courier-map{height:300px}.recipient-courier-map-controls{position:absolute;z-index:2;top:12px;right:12px;display:grid;gap:3px}.recipient-courier-map-controls button{display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--navy);background:#fff;border:1px solid #cbd3d8;border-radius:7px;box-shadow:0 2px 6px rgba(16,25,53,.14);font-size:25px;line-height:1;cursor:pointer}.recipient-courier-map-controls button:disabled{opacity:.5;cursor:default}.recipient-courier-map-controls button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
@media(max-width:600px){.recipient-courier-map{height:280px}}
.recipient-courier-map.has-recipient-location{height:380px}.recipient-map-person-pin{position:absolute;z-index:1;display:grid;place-items:center;width:42px;height:42px;transform:translate(-50%,-50%);color:#fff;background:var(--blue);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 6px rgba(74,125,242,.19),0 3px 10px rgba(16,25,53,.3)}.recipient-map-person-pin[hidden],.recipient-map-legend[hidden]{display:none!important}.recipient-map-person-pin svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.recipient-map-location-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.recipient-map-locate{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;color:var(--blue);background:#edf2ff;border:1px solid #d7e2ff;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer}.recipient-map-locate svg{width:17px;height:17px}.recipient-map-locate:disabled{opacity:.65;cursor:wait}.recipient-map-locate:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.recipient-map-legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:11px;font-weight:700}.recipient-map-legend span{display:inline-flex;align-items:center;gap:5px}.recipient-map-legend i{width:10px;height:10px;border-radius:50%}.recipient-map-legend i.courier{background:#7653c5}.recipient-map-legend i.recipient{background:var(--blue)}.recipient-map-location-status{margin:8px 0 0;color:#315477;font-size:12px;font-weight:650;line-height:1.45}.recipient-map-location-status:empty{display:none}.recipient-map-location-status.is-error{color:#a61b2b}
@media(max-width:600px){.recipient-courier-map.has-recipient-location{height:350px}}
.recipient-map-zone-label{position:absolute;z-index:2;top:12px;left:12px;max-width:calc(100% - 84px);padding:7px 10px;color:#8f2525;background:rgba(255,255,255,.94);border:1px solid #e9b8b8;border-radius:8px;box-shadow:0 2px 8px rgba(16,25,53,.12);font-size:12px;font-weight:850;line-height:1.25;pointer-events:none}
.recipient-courier-map-pin,.recipient-map-person-pin{z-index:3}.recipient-courier-map-controls,.recipient-courier-map-attribution{z-index:4}
.profile-password-footer{display:flex;justify-content:flex-end;margin-top:18px}
.profile-password-footer .profile-password-standalone{width:300px;max-width:100%;color:var(--navy);background:#fff;border:2px solid #4b5563}
.profile-password-footer .profile-password-standalone:hover,.profile-password-footer .profile-password-standalone:focus-visible{color:var(--navy);background:#f5f6f8;border-color:#202938}
.profile-collaborator-actions{display:grid;gap:12px;width:300px;max-width:100%;margin:12px 0 0 auto}
.profile-collaborator-actions>.profile-support-card,.profile-collaborator-actions>.profile-logout-form{width:100%;margin:0}
.profile-collaborator-notifications>p{margin:-6px 0 15px;color:var(--muted);font-size:13px;line-height:1.5}
.profile-collaborator-notifications .promotion-notification-control{justify-content:flex-start}
.profile-collaborator-notifications .promotion-notification-button,.profile-collaborator-notifications .promotion-notification-active{justify-content:center;width:auto;min-width:0;padding:8px 11px;font-size:12px}
.profile-collaborator-notifications .promotion-notification-button{min-height:36px}
.profile-collaborator-notifications .promotion-notification-button svg,.profile-collaborator-notifications .promotion-notification-active svg{width:15px;height:15px}
@media(max-width:680px){.profile-password-footer .profile-password-standalone,.profile-collaborator-actions{width:100%}}
.system-update-card h2{margin:0 0 6px}.system-update-card p{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.5}.system-update-card .button svg{width:17px;height:17px}.system-update-card [data-apk-update-status]{display:block;margin-top:10px;color:var(--muted);font-size:12px;line-height:1.4}.system-update-card [data-apk-update-status]:empty{display:none}.system-update-card [data-apk-update-download]{margin-top:12px}.system-update-card [data-apk-update-download][hidden]{display:none!important}
.system-offline-note{max-width:620px;margin:0 auto 18px}.system-offline-note[hidden]{display:none}.system-shell.is-offline button,.system-shell.is-offline a[aria-disabled="true"],.system-shell.is-offline input:disabled{opacity:.55;cursor:not-allowed}
.promotions-page{padding-top:30px;padding-bottom:80px}.promotions-heading{margin-bottom:24px}.promotions-heading h1{margin:6px 0}.promotions-heading p{color:var(--muted)}.promotions-totals,.promotions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.promotions-totals article{background:#fff;border:1px solid #e1e7eb;border-radius:16px;padding:20px}.promotions-totals small,.promotions-totals strong{display:block}.promotions-totals strong{font-size:26px;margin-top:8px;color:var(--navy)}.promotions-section{margin-top:34px}.promotions-section h2{margin-bottom:16px}.promotion-card{padding:22px}.promotion-card h3{margin:8px 0}.promotion-card p{line-height:1.5}.promotion-code{background:#edf7f4;border-radius:12px;padding:14px;margin-top:18px}.promotion-code span,.promotion-code strong{display:block}.promotion-code strong{font-size:22px;letter-spacing:.08em;margin-top:6px}.promotion-form{display:grid;gap:14px;max-width:700px}.promotion-form label,.promotion-admin-item label{display:grid;gap:6px}.promotion-form input,.promotion-form textarea,.promotion-form select,.promotion-admin-item input,.promotion-admin-item select{width:100%;padding:10px;border:1px solid #cbd5db;border-radius:8px}.promotion-user-list{max-height:240px;overflow:auto;display:grid;gap:8px}.promotion-user-list label{display:flex;align-items:center;gap:8px}.promotion-user-list input{width:auto}.promotion-admin-item{padding:18px 0;border-top:1px solid #e1e7eb}.promotion-admin-item form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:10px 0}.promotion-admin-item form label{min-width:220px}.promotion-assignees{display:flex;flex-wrap:wrap;gap:10px}.promotion-assignees p{background:#eef3f5;padding:8px 12px;border-radius:8px;margin:0}
@media(min-width:681px){.register-shell .role-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.register-shell .role-picker:not(.single) label>span{grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:center;min-height:132px;padding:16px;text-align:center}.register-shell .role-picker:not(.single) svg{grid-row:auto;margin-bottom:8px}}
@media(min-width:681px){.register-shell .role-picker.role-picker-two{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:681px){.register-shell .role-picker:not(.single) label>span :is(b,small){width:100%;text-align:center}}

/* Identidad visual de cada tipo de cuenta durante el registro. */
.register-shell .registration-step .role-picker small{font-size:13px;line-height:1.45}
.register-shell .role-picker:not(.single) input[value="business"]+span{background:#f2f7ff;border-color:#bfd4fb}
.register-shell .role-picker:not(.single) input[value="business"]+span svg{color:#2467d1}
.register-shell .role-picker:not(.single) input[value="business"]:checked+span{background:#e4efff;border-color:#2467d1;box-shadow:0 0 0 4px rgba(36,103,209,.14),0 10px 24px rgba(36,103,209,.1)}
.register-shell .role-picker:not(.single) input[value="business"]:checked+span::after{background:#2467d1}
.register-shell .role-picker:not(.single) input[value="courier"]+span{background:#eefaf5;border-color:#bce6d4}
.register-shell .role-picker:not(.single) input[value="courier"]+span svg{color:#168b62}
.register-shell .role-picker:not(.single) input[value="courier"]:checked+span{background:#dff5eb;border-color:#168b62;box-shadow:0 0 0 4px rgba(22,139,98,.14),0 10px 24px rgba(22,139,98,.1)}
.register-shell .role-picker:not(.single) input[value="courier"]:checked+span::after{background:#168b62}
.register-shell .role-picker:not(.single) input[value="taxi"]+span{background:#fff8d8;border-color:#efd36e}
.register-shell .role-picker:not(.single) input[value="taxi"]+span svg{color:#9a7000}
.register-shell .role-picker input[value="taxi"]+span>.taxi-button-car{grid-row:auto;margin-bottom:8px}
@media(max-width:680px){.register-shell .role-picker input[value="taxi"]+span>.taxi-button-car{grid-row:1/3;width:42px;height:30px;margin:0;background-size:48px 48px}}
.register-shell .role-picker:not(.single) input[value="taxi"]:checked+span{background:#fff0a8;border-color:#dca600;box-shadow:0 0 0 4px rgba(229,173,24,.18),0 10px 24px rgba(138,98,0,.1)}
.register-shell .role-picker:not(.single) input[value="taxi"]:checked+span::after{color:#2d2408;background:#e5ad18}
.register-shell[data-selected-role="business"] .registration-step-heading>span{color:#fff;background:linear-gradient(145deg,#4b86e5,#2467d1);box-shadow:0 8px 18px rgba(36,103,209,.2)}
.register-shell[data-selected-role="courier"] .registration-step-heading>span{color:#fff;background:linear-gradient(145deg,#35b986,#168b62);box-shadow:0 8px 18px rgba(22,139,98,.2)}
.register-shell[data-selected-role="taxi"] .registration-step-heading>span{color:#302400;background:linear-gradient(145deg,#ffe170,#e5ad18);box-shadow:0 8px 18px rgba(229,173,24,.24)}
.register-shell[data-selected-role="taxi"] .registration-photo-grid .photo-preview,.register-shell[data-selected-role="taxi"] .taxi-photo-section-heading>span,.register-shell[data-selected-role="taxi"] .registration-summary article>header>span{color:#302400;background:#ffc94a}.register-shell[data-selected-role="taxi"] .taxi-photo-section-heading>span{width:32px;height:32px;border-radius:10px}.register-shell[data-selected-role="taxi"] .registration-summary article>header small,.register-shell[data-selected-role="taxi"] .registration-summary article>header button{color:#7b5900}
.register-shell[data-selected-role="taxi"] .registration-photo-step-heading>span{color:#34516f;background:#edf2f7;box-shadow:none}
.register-shell[data-selected-role="taxi"] .taxi-photo-section-heading>span{color:#4f6479;background:#edf2f7}
.register-shell .registration-photo-step-heading{grid-template-columns:minmax(0,1fr);gap:0}
.register-shell .taxi-photo-section-heading{gap:0;padding-inline:0}
.register-shell .registration-verification-grid .identity-privacy{align-items:center;gap:7px;padding:8px 10px;border-radius:9px}
.register-shell .registration-verification-grid .identity-privacy>svg{flex-basis:16px;width:16px;height:16px;margin-top:0}
.register-shell .registration-verification-grid .identity-privacy>span{gap:1px}
.register-shell .registration-verification-grid .identity-privacy b{font-size:11px}
.register-shell .registration-verification-grid .identity-privacy small{font-size:9px;line-height:1.35}
.register-shell[data-selected-role="taxi"] .registration-photo-grid .taxi-exterior-photo .photo-preview{color:#315f8b;background:#e8f1f8}
.register-shell[data-selected-role="taxi"] .registration-photo-grid .taxi-interior-photo .photo-preview{color:#516477;background:#edf1f4}
.register-shell[data-selected-role="taxi"] .registration-photo-grid :is(.taxi-exterior-photo,.taxi-interior-photo) .photo-preview svg{display:block;width:34px;height:34px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.1}
.register-shell[data-selected-role="business"] .registration-actions .button-primary{background:#2467d1}
.register-shell[data-selected-role="courier"] .registration-actions .button-primary{background:#168b62}
.register-shell[data-selected-role="taxi"] .registration-actions .button-primary{color:#2d2408;background:#e5ad18}
.register-shell[data-selected-role="business"] .registration-progress button.is-current>span{color:#fff;background:#2467d1;box-shadow:0 0 0 4px rgba(36,103,209,.16)}
.register-shell[data-selected-role="courier"] .registration-progress button.is-current>span{color:#fff;background:#168b62;box-shadow:0 0 0 4px rgba(22,139,98,.16)}
.register-shell[data-selected-role="taxi"] .registration-progress button.is-current>span{color:#2d2408;background:#e5ad18;box-shadow:0 0 0 4px rgba(229,173,24,.2)}
.auth-visual-business{background:linear-gradient(145deg,rgba(15,35,78,.12),rgba(15,35,78,.7)),linear-gradient(135deg,#2467d1,#123a84)}
.auth-visual-taxi{align-items:center;background:linear-gradient(145deg,rgba(47,36,0,.12),rgba(47,36,0,.7)),linear-gradient(135deg,#ffd84f,#c88e00)}
.auth-visual-taxi .auth-benefits li span{color:#ffe170}

/* Promociones: títulos compactos y detalles desplegables. */
.promotion-offer-list{display:grid;gap:10px;max-width:800px}
.promotion-offer{overflow:hidden;background:#fff;border:1px solid #e1e7eb;border-radius:14px;box-shadow:0 4px 14px rgba(16,25,53,.04)}
.promotion-offer summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:76px;padding:17px 20px;list-style:none;cursor:pointer}
.promotion-offer summary::-webkit-details-marker{display:none}
.promotion-offer summary:focus-visible{outline:3px solid rgba(74,125,242,.3);outline-offset:-3px}
.promotion-offer-heading{display:grid;min-width:0;gap:4px}
.promotion-offer-heading strong{font-size:16px;line-height:1.3}
.promotion-offer-heading small{color:var(--muted);font-size:12px}
.promotion-offer summary>svg{flex:0 0 18px;width:18px;height:18px;color:var(--muted);transform:rotate(90deg);transition:transform .18s}
.promotion-offer[open] summary>svg{transform:rotate(-90deg)}
.promotion-offer-details{padding:0 20px 20px;border-top:1px solid #edf0f4}
.promotion-offer-details>p{margin:14px 0 0;color:var(--text);font-size:14px;line-height:1.5}
.promotion-details-divider{height:0;margin:18px 0 0;border:0;border-top:1px solid #e3e7ec;opacity:.8}
.promotion-referrals{margin-top:20px}.promotion-referrals h3{margin:0 0 10px;font-size:15px}.promotion-referrals>p{margin:0;color:var(--muted);font-size:13px}.promotion-referral-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.promotion-referral-list li{display:grid;gap:3px;padding:12px 14px;background:#f6f9fa;border:1px solid #e1e7eb;border-radius:10px}.promotion-referral-list strong{font-size:14px}.promotion-referral-list span,.promotion-referral-list small{color:#334155;font-size:13px;line-height:1.4}
.promotion-code{display:grid;gap:9px}
.promotion-code-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.promotion-code-actions strong{margin:0;overflow-wrap:anywhere}
.promotion-code-actions button{min-height:40px;padding:8px 13px;color:#176b50;background:#fff;border:1px solid #a6d8c4;border-radius:9px;font-family:inherit;font-size:13px;font-weight:700;line-height:1.2;cursor:pointer}
.promotion-code-actions button:hover,.promotion-code-actions button:focus-visible{background:#def5ea;outline:none}
.promotion-copy-status:empty{display:none}
.promotion-copy-status{color:#176b50;font-size:12px}
.promotion-invite{display:grid;gap:8px;margin-top:18px}
.promotion-invite>span{color:#263248;font-size:14px;font-weight:400}
.promotion-invite-actions{display:flex;align-items:center;gap:9px;min-width:0}.promotion-invite-actions a{flex:1;min-width:0;color:#294f8e;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.promotion-invite-actions button{flex:none;min-height:40px;padding:8px 13px;color:#294f8e;background:#fff;border:1px solid #b9cae2;border-radius:9px;font-family:inherit;font-size:13px;font-weight:700;line-height:1.2;cursor:pointer}.promotion-invite-actions button:hover,.promotion-invite-actions button:focus-visible{background:#edf4ff;border-color:#7f9fcf;outline:none}
.promotion-invite-url{color:#294f8e;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.promotion-invite-url[hidden]{display:none}
@media(max-width:680px){.promotion-offer summary{min-height:70px;padding:15px}.promotion-offer-details{padding:0 15px 17px}.promotion-offer-heading strong{font-size:15px}.promotion-code-actions strong{font-size:19px}}
.promotion-audience{min-width:0;margin:0;padding:16px;border:1px solid #dce5e8;border-radius:12px}.promotion-audience legend{padding:0 5px;font-weight:750}.promotion-audience>p{margin:0 0 14px;color:var(--muted);font-size:12px;line-height:1.45}.promotion-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:18px}.promotion-form .promotion-groups label{display:flex;align-items:center;gap:9px;min-width:0;padding:11px;border:1px solid #dce5e8;border-radius:10px;cursor:pointer}.promotion-groups input{width:auto;flex:0 0 auto;accent-color:var(--blue)}.promotion-groups span{display:grid;gap:2px;font-size:13px;font-weight:700}.promotion-groups small{color:var(--muted);font-size:11px;font-weight:400}.promotion-account-picker{flex:1 1 280px;min-width:0}.promotion-account-picker>label{display:block;margin-bottom:6px;font-weight:700}.promotion-account-picker>input{width:100%}.promotion-search-status{min-height:20px;margin-top:7px;color:var(--muted);font-size:12px}.promotion-search-results{display:grid;gap:4px;max-height:240px;overflow:auto}.promotion-search-results:empty,.promotion-selected-accounts:empty{display:none}.promotion-search-results button{width:100%;padding:9px 11px;text-align:left;color:var(--ink);background:#fff;border:1px solid #dce5e8;border-radius:8px;cursor:pointer}.promotion-search-results button:hover,.promotion-search-results button:focus-visible{border-color:var(--blue);background:#f4f7ff}.promotion-search-results button:disabled{opacity:.55;cursor:default}.promotion-selected-accounts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.promotion-selected-account{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:6px 7px 6px 10px;background:#edf7f4;border-radius:8px;font-size:12px}.promotion-selected-account>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promotion-selected-account button{flex:0 0 auto;width:22px;height:22px;padding:0;color:var(--ink);background:#fff;border:0;border-radius:6px;cursor:pointer;font-size:18px;line-height:1}
@media(max-width:600px){.promotion-groups{grid-template-columns:1fr}.promotion-audience{padding:13px}}

/* Contraste de la vista de promociones para participantes. */
.promotions-page:not(.admin-content){color:#18213a}
.promotions-page:not(.admin-content) .promotions-heading p{color:#334155;font-size:15px;line-height:1.55}
.promotions-page:not(.admin-content) .promotions-totals small{color:#334155;font-size:13px;font-weight:700}
.promotions-page:not(.admin-content) .promotion-offer-heading strong{color:#101935;font-size:17px}
.promotions-page:not(.admin-content) .promotion-offer-heading small{color:#334155;font-size:13px;font-weight:650}
.promotions-page:not(.admin-content) .promotion-offer-details>p{color:#263248;font-size:15px;line-height:1.65}
.promotions-page:not(.admin-content) .promotion-card>small{color:#334155;font-size:13px;font-weight:650}
.promotions-page:not(.admin-content) .promotion-card h3{color:#101935;font-size:18px}
.promotions-page:not(.admin-content) .promotion-card p{color:#263248;font-size:14px;line-height:1.55}
.promotions-page:not(.admin-content) .promotion-code>span{color:#263248;font-size:14px;font-weight:700}
.promotions-page:not(.admin-content) .promotion-code a{color:#174d89;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.promotions-page:not(.admin-content) .promotion-copy-status{font-size:13px;font-weight:650}
@media(max-width:680px){.promotions-page:not(.admin-content) .promotion-offer-heading strong{font-size:16px}.promotions-page:not(.admin-content) .promotion-offer-details>p{font-size:15px}}

/* Panel de promociones del administrador. */
.admin-promotions{color:#18213a}
.admin-promotions .promotion-page-header{align-items:center;margin-bottom:22px}
.admin-promotions .promotion-page-header h1{font-size:clamp(28px,3vw,36px);letter-spacing:-.035em}
.admin-promotions .promotion-page-header p{font-size:13px;line-height:1.5}
.admin-promotions .promotion-page-header .button{flex:0 0 auto}
.promotion-section-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:7px;background:#eaf0f8;border:1px solid #dbe4ef;border-radius:14px}
.promotion-section-nav a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 15px;color:#42546f;border-radius:9px;font-size:13px;font-weight:750;text-decoration:none}
.promotion-section-nav a:hover,.promotion-section-nav a:focus-visible{color:#183965;background:#f7faff}
.promotion-section-nav a.is-current{color:#183965;background:#fff;box-shadow:0 2px 8px rgba(24,57,101,.1)}
.promotion-section-nav span{padding:2px 7px;color:#315d9c;background:#edf3fc;border-radius:8px;font-size:11px}
.promotion-section-nav .is-current span{background:#e4edfb}
.promotion-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}
.promotion-overview a{display:grid;gap:7px;min-width:0;padding:19px 20px;color:#18213a;background:#fff;border:1px solid #dfe5ed;border-radius:15px;box-shadow:var(--shadow-soft);transition:transform .18s,border-color .18s}
.promotion-overview a:hover,.promotion-overview a:focus-visible{transform:translateY(-2px);border-color:#9fb4dc}
.promotion-overview span{color:#526079;font-size:12px;font-weight:700}
.promotion-overview strong{font-size:30px;line-height:1.1;letter-spacing:-.04em}
.promotion-overview small{color:#295eaa;font-size:11px;font-weight:800}
.admin-promotions>.admin-panel{margin-bottom:22px}
.admin-promotions .admin-panel{padding:26px}
.promotion-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.promotion-section-heading small{display:block;margin-bottom:7px;color:#426aaf;font-size:10px;font-weight:800;letter-spacing:.12em}
.promotion-section-heading h2{margin:0 0 5px;font-size:21px;letter-spacing:-.025em}
.promotion-section-heading p{margin:0;color:#5b6880;font-size:12px;line-height:1.5}
.promotion-count{display:grid;place-items:center;flex:0 0 auto;min-width:34px;height:34px;padding:0 9px;color:#294c85;background:#eef3fc;border-radius:10px;font-size:13px;font-weight:800}
.admin-promotions .promotion-form{display:block;max-width:none}
.promotion-form-section{display:grid;grid-template-columns:minmax(170px,220px) minmax(0,1fr);gap:28px;padding:23px 0;border-top:1px solid #e7ebf0}
.promotion-form [hidden]{display:none!important}
.promotion-step{display:flex;align-items:flex-start;gap:11px}
.promotion-step>span{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;color:#294f8e;background:#edf3fc;border-radius:9px;font-size:11px;font-weight:800}
.promotion-step h3{margin:1px 0 4px;font-size:14px}
.promotion-step p{margin:0;color:#657187;font-size:11px;line-height:1.5}
.promotion-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.promotion-field-grid .promotion-field-wide{grid-column:1/-1}
.admin-promotions .promotion-form .taxi-commission-checkbox{display:flex;align-items:center;gap:10px;min-height:36px;cursor:pointer}
.admin-promotions .promotion-form .taxi-commission-checkbox input{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:0;padding:0;border:0;border-radius:4px;box-shadow:none;accent-color:var(--blue);appearance:auto;-webkit-appearance:checkbox}
.admin-promotions .promotion-form .taxi-commission-checkbox span{line-height:1.4}
.taxi-commission-audience{margin:4px 0 0;padding:16px;background:#f8faff;border:1px solid #dce4ef;border-radius:12px}
.taxi-commission-audience>legend{padding:0 6px;color:#26334b;font-size:13px;font-weight:800}
.taxi-commission-audience-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.admin-promotions .promotion-form .taxi-commission-audience-options>label{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff;border:1px solid #dce4ef;border-radius:10px;cursor:pointer}
.taxi-commission-audience-options>label:has(input:checked){background:#edf4ff;border-color:#7296d2}
.admin-promotions .promotion-form .taxi-commission-audience-options input{flex:0 0 17px;width:17px;height:17px;min-height:17px;margin:1px 0 0;padding:0;accent-color:var(--blue)}
.taxi-commission-audience-options span{display:grid;gap:3px}.taxi-commission-audience-options b{font-size:12px}.taxi-commission-audience-options small{color:#68758a!important;font-size:10px!important;line-height:1.4}
.taxi-commission-selected-picker{margin-top:13px;padding-top:13px;border-top:1px solid #dce4ef}
.taxi-commission-participant-list{margin-top:15px;padding:13px;background:#f7f9fc;border:1px solid #e1e6ee;border-radius:10px}.taxi-commission-participant-list>small{display:block;margin-bottom:8px;color:#60708a;font-size:9px;font-weight:850;letter-spacing:.08em}.taxi-commission-participant-list>div{display:flex;flex-wrap:wrap;gap:7px}.taxi-commission-participant-list span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;background:#fff;border:1px solid #dce4ef;border-radius:8px;font-size:11px;font-weight:750}.taxi-commission-participant-list span small{color:#65738a;font-size:9px;font-weight:600}
.admin-promotions .promotion-form label,.admin-promotions .promotion-reward-form label{min-width:0;color:#26334b;font-size:12px;font-weight:750}
.admin-promotions .promotion-form label>small{color:#7b8799;font-size:10px;font-weight:500}
.admin-promotions .promotion-form input:not([type="checkbox"]),.admin-promotions .promotion-form textarea,.admin-promotions .promotion-form select,.admin-promotions .promotion-manage-block input,.admin-promotions .promotion-reward-form input{min-height:42px;padding:10px 12px;color:#18213a;background:#fff;border:1px solid #cfd8e4;border-radius:9px;font:inherit;font-size:13px}
.admin-promotions .promotion-form textarea{min-height:90px;resize:vertical}
.admin-promotions :is(input,textarea,select):focus-visible{outline:3px solid rgba(61,108,197,.22);border-color:#4775c5}
.admin-promotions .promotion-audience{padding:17px;background:#fbfcfe;border-color:#dce4ee}
.admin-promotions .promotion-audience legend{color:#26334b;font-size:12px}
.admin-promotions .promotion-audience>p{color:#647087}
.admin-promotions .promotion-groups{margin-bottom:18px}
.admin-promotions .promotion-groups label{background:#fff;border-color:#dce4ee;transition:background .15s,border-color .15s}
.admin-promotions .promotion-groups label:has(input:checked){background:#edf4ff;border-color:#7296d2}
.admin-promotions .promotion-groups span{font-size:12px}
.admin-promotions .promotion-groups small{color:#66738b}
.promotion-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid #e7ebf0}
.promotion-form-footer{flex-wrap:wrap}.promotion-email-optin{order:2;display:flex;align-items:flex-start;gap:10px;flex:1 1 100%;padding:12px 14px;background:#f5f7fb;border:1px solid #e1e7f0;border-radius:11px;cursor:pointer}.promotion-email-optin input{flex:0 0 18px;width:18px;min-height:18px;margin:2px 0 0;accent-color:var(--blue)}.promotion-email-optin span{display:grid;gap:3px}.promotion-email-optin b{font-size:12px}.promotion-email-optin small{color:#647087;font-size:11px;line-height:1.45}.promotion-form-actions{order:3;flex:1 1 100%}
.promotion-form-footer p{margin:0;color:#647087;font-size:12px}
.promotion-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}
.promotion-email-preview-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 28px));height:min(88vh,860px);height:min(88dvh,860px);margin:auto;padding:0;overflow:hidden;background:transparent;border:0}.promotion-email-preview-dialog::backdrop{background:rgba(7,13,30,.68);backdrop-filter:blur(4px)}.promotion-email-preview-dialog>article{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden;background:#f3f5f9;border-radius:20px;box-shadow:0 28px 90px rgba(7,13,30,.35)}.promotion-email-preview-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;background:#fff;border-bottom:1px solid #e2e7ef}.promotion-email-preview-dialog header>div{min-width:0}.promotion-email-preview-dialog header small{color:var(--blue);font-size:9px!important;font-weight:850;letter-spacing:.1em}.promotion-email-preview-dialog h2{margin:4px 0 0;font-size:21px}.promotion-email-preview-dialog header p{margin:5px 0 0;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promotion-email-preview-dialog header button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;color:var(--muted);background:#f0f3f7;border:0;border-radius:10px;font-size:23px;cursor:pointer}.promotion-email-preview-loading{display:grid;place-items:center;padding:28px;color:var(--muted);font-size:14px}.promotion-email-preview-dialog iframe{width:100%;height:100%;background:#f4f6fb;border:0}.promotion-email-preview-dialog iframe[hidden]{display:none}
.promotion-offers-list{display:grid;gap:10px}
.promotion-admin-offer{overflow:hidden;border:1px solid #dfe6ef;border-radius:12px;background:#fff}
.promotion-admin-offer summary{display:flex;align-items:center;gap:14px;min-height:78px;padding:16px 18px;list-style:none;cursor:pointer}
.promotion-admin-offer summary::-webkit-details-marker{display:none}
.promotion-admin-offer summary:hover,.promotion-admin-offer summary:focus-visible{background:#f8faff}
.promotion-offer-summary{display:grid;gap:5px;flex:1;min-width:0}
.promotion-offer-summary strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.promotion-offer-summary small{color:#647087;font-size:11px}
.promotion-state{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:6px 9px;border-radius:20px;font-size:10px;font-weight:800;white-space:nowrap}
.promotion-state:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.promotion-state.is-active{color:#176b50;background:#e7f7ef}
.promotion-state.is-paused{color:#687487;background:#eef1f5}
.promotion-state.is-pending{color:#986117;background:#fff3de}
.promotion-expand-icon{color:#647087;font-size:22px;line-height:1;transition:transform .18s}
.promotion-admin-offer[open] .promotion-expand-icon{transform:rotate(180deg)}
.promotion-offer-body{padding:21px;border-top:1px solid #e7ebf0;background:#fbfcfe}
.promotion-description{margin:0 0 18px;color:#45536a;font-size:13px;line-height:1.6}
.promotion-how-form{display:grid;gap:10px;margin:0 0 18px;padding:15px;background:#fff;border:1px solid #e4eaf1;border-radius:11px}
.promotion-how-form label{display:grid;gap:7px;color:#26334b;font-size:12px;font-weight:750}
.promotion-how-form textarea{width:100%;min-height:105px;padding:10px 12px;border:1px solid #cfd8e4;border-radius:9px;font:inherit;font-size:13px;line-height:1.5;resize:vertical}
.promotion-how-form .button{justify-self:start}
.promotion-how-it-works{margin:17px 0;padding:16px 18px;background:#f3f7fc;border:1px solid #dce7f4;border-radius:12px}
.promotion-how-it-works h3{margin:0 0 8px;color:#183965;font-size:15px}
.promotion-how-it-works p{margin:0;color:#263248;font-size:14px;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}
.promotion-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.promotion-facts>div{display:grid;gap:5px;padding:13px 15px;background:#fff;border:1px solid #e4eaf1;border-radius:10px}
.promotion-facts small{color:#657187;font-size:10px}
.promotion-facts strong{font-size:14px}
.promotion-dates{margin:12px 0 0;color:#647087;font-size:11px}
.promotion-offer-actions{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 20px}
.promotion-delete-button{color:#a42c38;background:#fff;border:1px solid #edc6cb;box-shadow:none}
.promotion-delete-button:hover,.promotion-delete-button:focus-visible{color:#851d29;background:#fff2f3;border-color:#df9da5}
.promotion-recurring-audience{display:grid;justify-items:start;gap:11px;margin:0 0 20px;padding:15px;background:#fff;border:1px solid #e4eaf1;border-radius:11px}
.promotion-recurring-audience fieldset{min-width:0;width:100%;margin:0;padding:0;border:0}
.promotion-recurring-audience legend{padding:0;font-size:13px;font-weight:800}
.promotion-recurring-audience p{margin:6px 0 12px;color:#647087;font-size:11px;line-height:1.5}
.promotion-recurring-options{display:flex;flex-wrap:wrap;gap:9px}
.promotion-recurring-options label{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;background:#f8faff;border:1px solid #dfe6ef;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer}
.promotion-recurring-options label:has(input:checked){background:#edf4ff;border-color:#7296d2}
.promotion-recurring-options input{width:auto;accent-color:#4c80cf}
.promotion-manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.promotion-manage-block{min-width:0;padding:17px;background:#fff;border:1px solid #e4eaf1;border-radius:11px}
.promotion-manage-block h3{display:flex;align-items:center;gap:8px;margin:0 0 5px;font-size:13px}
.promotion-manage-block h3 span{color:#5471a3;font-size:11px}
.promotion-manage-block>p{margin:0 0 15px;color:#647087;font-size:11px;line-height:1.5}
.promotion-manage-block form{display:grid;gap:10px}
.promotion-manage-block form>.button{justify-self:start}
.promotion-manage-block .promotion-account-picker>label{display:block;margin-bottom:6px;color:#26334b;font-size:11px;font-weight:750}
.promotion-assignees{display:grid;gap:8px;max-height:310px;overflow:auto}
.promotion-assignee{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;background:#f7f9fc;border:1px solid #e9edf3;border-radius:8px}
.promotion-assignee>div{display:grid;gap:3px;min-width:0}
.promotion-assignee strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.promotion-assignee code{color:#315d9c;font-family:inherit;font-size:11px;font-weight:800;overflow-wrap:anywhere}
.promotion-assignee small{color:#647087;font-size:10px}
.promotion-assignee .button{min-height:32px;padding:6px 9px;font-size:10px}
.promotion-empty,.promotion-empty-inline{margin:0;padding:23px;color:#647087;background:#f8faff;border:1px dashed #d9e2ee;border-radius:10px;font-size:12px;line-height:1.5}
.promotion-empty-inline{padding:13px}
.promotion-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}
.promotion-activity-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.promotion-activity-grid .promotion-section-heading{align-items:start}
.promotion-activity-list{display:grid;gap:10px;max-height:760px;overflow:auto}
.promotion-activity-item{min-width:0;padding:15px;border:1px solid #e3e9f0;border-radius:11px}
.promotion-activity-head{display:flex;align-items:start;justify-content:space-between;gap:10px}
.promotion-activity-head h3{margin:2px 0 0;font-size:13px;line-height:1.4}
.promotion-activity-item p{margin:8px 0;color:#647087;font-size:11px;line-height:1.5}
.promotion-activity-item>small{color:#647087;font-size:10px}
.promotion-progress{height:6px;margin:13px 0 6px;overflow:hidden;background:#e9eef5;border-radius:9px}
.promotion-progress span{display:block;height:100%;background:#4c80cf;border-radius:inherit}
.promotion-reward-amount{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin:12px 0;color:#172b4b;font-size:18px;font-weight:800}
.promotion-reward-amount small{color:#647087;font-size:10px;font-weight:600}
.promotion-reward-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #e7ebf0}
.promotion-reward-form label{display:grid;gap:6px}
.promotion-reward-form>div{display:flex;flex-wrap:wrap;gap:8px}
.promotion-reward-form .button{min-height:36px;padding:7px 11px;font-size:11px}
.promotion-reward-form input[type="file"]{width:100%;max-width:100%;min-width:0}
.promotion-payment-proof{display:flex;flex-wrap:wrap;align-items:center;gap:7px 15px;margin:12px 0;padding:12px;color:#26334b;background:#f1f6fc;border:1px solid #dce7f4;border-radius:9px;font-size:12px}
.promotion-payment-proof strong{overflow-wrap:anywhere}
.promotion-payment-proof a{color:#295eaa;font-weight:750;text-decoration:underline;text-underline-offset:2px}
.promotion-delivery-rewards{margin-top:18px}.promotion-reward-filters{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:18px 0}.promotion-reward-filters label{display:grid;flex:1 1 180px;gap:5px;color:#334155;font-size:12px;font-weight:700}.promotion-reward-filters input,.promotion-reward-filters select{width:100%;min-height:40px;padding:8px 10px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;font:inherit}.promotion-reward-filters .button{min-height:40px}.promotion-reward-filters>a{align-self:center;font-size:12px}.promotion-reward-result-count{margin:0 0 12px;color:#647087;font-size:12px}.promotion-delivery-reward-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:10px}.promotion-delivery-reward-item{display:grid;align-content:start}.promotion-reward-order-link{justify-self:start;color:#294f8e;font-size:13px;font-weight:700}.promotion-reward-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px;font-size:12px}.promotion-reward-pagination .button{min-height:36px;padding:7px 12px}
@media(max-width:1100px){.promotion-form-section{grid-template-columns:1fr;gap:15px}.promotion-activity-grid{grid-template-columns:1fr}.promotion-activity-list{max-height:600px}}
@media(max-width:700px){.admin-promotions .admin-panel{padding:18px}.promotion-page-header{flex-wrap:wrap}.promotion-page-header .button{width:100%}.promotion-overview{grid-template-columns:1fr;gap:9px}.promotion-overview a{grid-template-columns:1fr auto;align-items:center;gap:3px;padding:13px 16px}.promotion-overview strong{grid-column:2;grid-row:1/3;font-size:25px}.promotion-field-grid,.promotion-manage-grid{grid-template-columns:1fr}.taxi-commission-audience-options{grid-template-columns:1fr}.promotion-facts{grid-template-columns:1fr}.promotion-form-footer{align-items:stretch;flex-direction:column}.promotion-form-actions{align-items:stretch;flex-direction:column}.promotion-form-footer .button{width:100%}.promotion-admin-offer summary{padding:13px}.promotion-offer-body{padding:14px}.promotion-activity-head{flex-wrap:wrap}.promotion-email-preview-dialog{width:calc(100vw - 14px);height:calc(100dvh - 14px)}.promotion-email-preview-dialog>article{border-radius:16px}.promotion-email-preview-dialog header{padding:15px}.promotion-email-preview-dialog h2{font-size:19px}}
@media(max-width:700px){.promotion-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-section-nav a{justify-content:center;padding:9px 6px;font-size:12px}}

/* Vista rápida de cada oferta para participantes. */
.promotions-page:not(.admin-content) .promotion-offer-list{max-width:900px;gap:14px}
.promotions-page:not(.admin-content) .promotion-page-heading{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;row-gap:2px}
.promotions-page:not(.admin-content) .promotion-page-title{min-width:0}
.promotions-page:not(.admin-content) .promotion-page-heading p{grid-column:1/-1;margin:0}
.promotions-page:not(.admin-content) .promotions-section{margin-top:0}
.promotion-earnings{max-width:900px;margin-top:28px;overflow:hidden;background:#fff;border:1px solid #dce5ee;border-radius:16px;box-shadow:0 6px 20px rgba(16,25,53,.045)}
.promotion-earnings>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:18px 20px;color:#fff;background:#176b50;list-style:none;cursor:pointer;transition:background .18s}
.promotion-earnings>summary:hover{background:#125b44}
.promotion-earnings>summary::-webkit-details-marker{display:none}
.promotion-earnings>summary:focus-visible{outline:3px solid rgba(255,255,255,.7);outline-offset:-4px}
.promotion-earnings>summary>span{display:grid;gap:3px}
.promotion-earnings>summary strong{color:#fff;font-size:16px}
.promotion-earnings>summary small{color:rgba(255,255,255,.82);font-size:13px;line-height:1.4}
.promotion-earnings-icon{width:38px;height:38px;padding:8px;color:#0f5a40;background:#bdf0d9;border-radius:11px}
.promotion-earnings-arrow{width:18px;height:18px;color:#fff;transform:rotate(90deg);transition:transform .18s}
.promotion-earnings[open]>summary .promotion-earnings-arrow{transform:rotate(-90deg)}
.promotion-earnings .promotions-totals{padding:0 20px 20px}
.promotion-earnings .promotions-totals article{background:#f8fafc}
.promotion-notification-control{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto}
.promotion-notification-button{min-width:190px;border:1px solid #cad7e6;background:#fff}
.promotion-notification-button svg{width:17px;height:17px}
.promotion-notification-active{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;color:#176b50;background:#e7f7ef;border:1px solid #bde5d2;border-radius:11px;font-size:13px;font-weight:750;white-space:nowrap}
.promotion-notification-active[hidden]{display:none}
.promotion-notification-active svg{width:17px;height:17px}
.promotions-page:not(.admin-content) .promotion-offer{border-color:#dce5ee;border-radius:18px;box-shadow:0 8px 24px rgba(16,25,53,.055);transition:border-color .18s,box-shadow .18s}
.promotions-page:not(.admin-content) .promotion-offer:hover,.promotions-page:not(.admin-content) .promotion-offer[open]{border-color:#bdd0e5;box-shadow:0 12px 28px rgba(16,25,53,.085)}
.promotions-page:not(.admin-content) .promotion-offer summary{align-items:center;gap:20px;min-height:112px;padding:20px 24px}
.promotions-page:not(.admin-content) .promotion-offer-heading{gap:6px;flex:1}
.promotions-page:not(.admin-content) .promotion-offer-heading strong{font-size:19px;letter-spacing:-.025em}
.promotions-page:not(.admin-content) .promotion-offer-teaser{display:-webkit-box;overflow:hidden;max-width:58ch;color:#526079;font-size:14px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.promotions-page:not(.admin-content) .promotion-offer-status{display:inline-flex;align-items:center;gap:6px;justify-self:start;margin-top:3px;padding:5px 9px;border-radius:99px;font-size:11px;font-weight:750;line-height:1.2}
.promotions-page:not(.admin-content) .promotion-offer-status:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:currentColor}
.promotions-page:not(.admin-content) .promotion-offer-status.is-active{color:#176b50;background:#e7f7ef}
.promotions-page:not(.admin-content) .promotion-offer-status.is-paused{color:#5b6880;background:#eef1f5}
.promotions-page:not(.admin-content) .promotion-offer-summary-end{display:flex;align-items:center;gap:18px;flex:none}
.promotions-page:not(.admin-content) .promotion-offer-reward{display:grid;gap:4px;min-width:128px;text-align:right}
.promotions-page:not(.admin-content) .promotion-offer-reward small{color:#516c98;font-size:10px;font-weight:700}
.promotions-page:not(.admin-content) .promotion-offer-reward strong{color:#183965;font-size:17px;font-weight:800;white-space:nowrap}
.promotion-how-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:12px;padding:11px 18px;color:#245995;background:#eef5ff;border:1px solid #b7cdea;border-radius:10px;font:inherit;font-size:15px;font-weight:750;line-height:1.2;white-space:nowrap;cursor:pointer}
.promotion-how-button:hover,.promotion-how-button:focus-visible{color:#153e70;background:#dcecff;outline:2px solid #9abbe5;outline-offset:2px}
.promotion-how-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 40px));max-width:calc(100vw - 40px);max-height:min(76vh,640px);margin:auto;padding:0;overflow:auto;color:#18213a;background:#fff;border:1px solid #dce7f4;border-radius:17px;box-shadow:0 24px 70px rgba(13,34,66,.22)}
.promotion-how-dialog::backdrop{background:rgba(16,31,54,.48)}
.promotion-how-dialog-content{padding:24px}
.promotion-how-dialog header{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:18px}
.promotion-how-dialog header small{color:#426aaf;font-size:10px;font-weight:800;letter-spacing:.1em}
.promotion-how-dialog h2{margin:5px 0 0;font-size:20px;line-height:1.3}
.promotion-how-close{flex:none;display:grid;place-items:center;width:34px;height:34px;padding:0;color:#526079;background:#f2f5f9;border:0;border-radius:9px;font-size:24px;line-height:1;cursor:pointer}
.promotion-how-close:hover,.promotion-how-close:focus-visible{color:#183965;background:#e3ebf6}
.promotion-how-dialog h3{margin:0 0 8px;font-size:14px}
.promotion-how-dialog p{margin:0;color:#334155;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.promotions-page:not(.admin-content) .promotion-summary-amount{color:#183965;font-size:17px;font-weight:400;white-space:nowrap}
.promotions-page:not(.admin-content) .promotion-offer-summary-end svg{width:18px;height:18px;color:#526079;transform:rotate(90deg);transition:transform .18s}
.promotions-page:not(.admin-content) .promotion-offer[open] .promotion-offer-summary-end svg{transform:rotate(-90deg)}
.promotions-page:not(.admin-content) .promotion-offer-details{padding:4px 24px 24px}
.promotions-page:not(.admin-content) .promotion-referrals{padding:16px;border:1px solid transparent;border-radius:13px;transition:background .18s,border-color .18s}
.promotions-page:not(.admin-content) .promotion-referrals.has-referrals{background:#fff;border-color:#64748b}
.promotions-page:not(.admin-content) .promotion-referral-list li{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:12px}
.promotions-page:not(.admin-content) .promotion-referral-list li>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.promotions-page:not(.admin-content) .promotion-referral-list li>span{padding-left:12px;border-left:1px solid #cad8df;font-size:15px;font-weight:650;line-height:1.4;white-space:nowrap;text-align:right}
.promotions-page:not(.admin-content) .promotion-referral-list li>small{grid-column:1/-1}
.promotions-page:not(.admin-content) .promotion-referral-list li.is-complete{background:#fff;border-color:#cbd5e1}
.promotions-page:not(.admin-content) .promotion-referral-list li.is-complete strong{color:#105f43}
.promotions-page:not(.admin-content) .promotion-referral-list li.is-complete span{color:#176b50;border-left-color:#cbd5e1;font-weight:700}
@media(max-width:680px){.promotions-page:not(.admin-content) .promotion-page-heading{align-items:center;column-gap:10px;row-gap:7px}.promotions-page:not(.admin-content) .promotion-page-heading p{width:100%;font-size:14px;line-height:1.55}.promotion-notification-control{justify-self:end}.promotion-notification-button{min-width:0;padding:0 12px;font-size:12px}.promotion-notification-active{padding:9px 10px;font-size:12px}.promotions-page:not(.admin-content) .promotion-offer summary{align-items:flex-start;gap:10px;min-height:0;padding:17px}.promotions-page:not(.admin-content) .promotion-offer-heading strong{font-size:17px}.promotions-page:not(.admin-content) .promotion-offer-teaser{font-size:13px}.promotions-page:not(.admin-content) .promotion-offer-summary-end{align-self:stretch;align-items:flex-end;flex-direction:column;justify-content:space-between;gap:8px}.promotions-page:not(.admin-content) .promotion-offer-reward{min-width:0}.promotions-page:not(.admin-content) .promotion-offer-reward small{font-size:9px}.promotions-page:not(.admin-content) .promotion-offer-reward strong{font-size:14px}.promotions-page:not(.admin-content) .promotion-referral-list li>span{font-size:14px}.promotions-page:not(.admin-content) .promotion-offer-details{padding:2px 17px 18px}}
@media(max-width:680px){.promotion-earnings>summary{padding:16px}.promotion-earnings>summary small{font-size:12px}.promotion-earnings .promotions-totals{grid-template-columns:1fr;gap:10px;padding:0 16px 16px}.promotion-earnings .promotions-totals article{padding:16px}.promotion-earnings .promotions-totals strong{font-size:22px}}
@media(max-width:680px){.promotions-page:not(.admin-content) .promotion-summary-amount{font-size:14px}}
@media(max-width:680px){.promotion-how-button{min-height:46px;padding:11px 16px;font-size:14px}.promotion-how-dialog-content{padding:19px}.promotion-how-dialog h2{font-size:18px}}

/* El importe es el dato principal en la oferta y en el detalle del pedido. */
.offer-card .offer-price-amount{font-size:22px;font-weight:800;line-height:1}
.offer-card .offer-price-amount small{font-size:10px}
.offer-card .offer-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;padding-bottom:4px}
.offer-card .offer-package-summary{padding-top:11px;padding-bottom:10px}
.detail-heading-title-line .detail-price{font-size:32px;line-height:1.1}
@media(max-width:680px){.offer-card .offer-price-amount{font-size:22px}.detail-heading-title-line .detail-price{font-size:29px}}

/* Referencia de distancias disponible solo en la administración principal. */
.municipality-routes-page>.admin-panel{margin-bottom:20px}
.municipality-route-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:26px;padding:24px}
.municipality-route-overview small{display:block;margin-bottom:9px;color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.11em}
.municipality-route-overview strong{display:block;color:var(--navy);font-size:30px;line-height:1.1}
.municipality-route-overview strong span{font-size:16px}
.municipality-route-overview p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.55}
.municipality-route-price-form{display:grid;gap:7px;max-width:370px;margin-top:18px}.municipality-route-price-form label{color:var(--navy);font-size:12px;font-weight:800}.municipality-route-price-form>div{display:flex;gap:9px}.municipality-route-price-form input{min-width:0;width:130px;height:43px;padding:0 12px;color:var(--text);background:#fff;border:1px solid var(--line);border-radius:10px;font:inherit}.municipality-route-price-form .button{min-height:43px;white-space:nowrap}
.municipality-route-lookup,.municipality-route-matrix-panel{padding:0;overflow:hidden}
.municipality-route-lookup>.admin-panel-title,.municipality-route-matrix-panel>.admin-panel-title{margin:0;padding:22px 24px;border-bottom:1px solid var(--line)}
.municipality-route-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:13px;padding:22px 24px}
.municipality-route-form label{display:grid;gap:7px;color:var(--navy);font-size:12px;font-weight:800}
.municipality-route-form select{min-width:0;height:43px;padding:0 12px;color:var(--text);background:#fff;border:1px solid var(--line);border-radius:10px;font:inherit;font-weight:600}
.municipality-route-form .button{min-height:43px;white-space:nowrap}
.municipality-route-result{margin:0 24px 24px;padding:17px 20px;background:#eaf2ff;border:1px solid #cddcf5;border-radius:14px}
.municipality-route-result p{margin:0 0 9px;color:var(--navy);font-size:14px}
.municipality-route-result>div{display:flex;flex-wrap:wrap;gap:10px 25px}
.municipality-route-result strong{color:var(--navy);font-size:23px}
.municipality-route-result strong small{font-size:12px}
.municipality-route-result>small{display:block;margin-top:8px;color:var(--muted);font-size:11px}
.municipality-route-same{margin:0 24px 24px;padding:14px 16px;color:var(--muted);background:#f3f5f9;border-radius:11px;font-size:13px;line-height:1.5}
.municipality-route-table-scroll{max-width:100%;overflow:auto}
.municipality-route-table{width:100%;min-width:1500px;border-collapse:separate;border-spacing:0;text-align:center}
.municipality-route-table caption{padding:12px;color:var(--muted);font-size:11px;text-align:left}
.municipality-route-table th,.municipality-route-table td{padding:10px 8px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);font-size:11px}
.municipality-route-table thead th{color:var(--navy);background:#eaf0f9;font-weight:850}
.municipality-route-table th:first-child{position:sticky;left:0;z-index:1;width:240px;min-width:240px;text-align:left;background:#f5f8fc}
.municipality-route-table thead th:first-child{z-index:2;background:#eaf0f9}
.municipality-route-table tbody tr:nth-child(even){background:#fbfcfe}
.municipality-route-table td strong,.municipality-route-table td small{display:block;white-space:nowrap}
.municipality-route-table td strong{color:var(--navy);font-size:12px}
.municipality-route-table td small{margin-top:3px;color:var(--muted);font-size:10px}
.municipality-route-table td span{color:#a1a9b8}
.municipality-route-matrix-note{margin:0;padding:14px 24px;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:700px){.municipality-route-overview{grid-template-columns:1fr;gap:18px;padding:19px}.municipality-route-form{grid-template-columns:1fr;padding:18px}.municipality-route-form .button{width:100%}.municipality-route-result,.municipality-route-same{margin:0 18px 18px}.municipality-route-lookup>.admin-panel-title,.municipality-route-matrix-panel>.admin-panel-title{padding:19px}.municipality-route-matrix-note{padding:14px 19px}}
@media(max-width:700px){.municipality-route-price-form{max-width:none}.municipality-route-price-form>div{flex-wrap:wrap}.municipality-route-price-form input{flex:1 1 110px}.municipality-route-price-form .button{flex:1 1 auto;width:auto}}
.municipality-route-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.municipality-route-setting{display:grid;grid-template-columns:48px minmax(0,1fr);align-content:start;gap:16px;padding:24px}.municipality-route-setting-icon{display:grid;place-items:center;width:48px;height:48px;color:#fff;background:var(--navy);border-radius:14px;font-size:22px;font-weight:900}.municipality-route-setting-icon svg{width:23px;height:23px}.municipality-route-setting.is-exchange .municipality-route-setting-icon{color:#164f3c;background:#dff7ee}.municipality-route-setting>div{display:grid;gap:4px}.municipality-route-setting>div>small{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.1em}.municipality-route-setting h2{margin:0;color:var(--navy);font-size:19px}.municipality-route-setting>div>strong{margin-top:7px;color:var(--navy);font-size:27px}.municipality-route-setting>div>strong span{font-size:13px}.municipality-route-setting>div>p{margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.municipality-route-setting .municipality-route-price-form{grid-column:1/-1;max-width:none;margin-top:3px}.municipality-route-setting .municipality-route-price-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto}.municipality-route-setting .municipality-route-price-form input{width:100%}@media(max-width:800px){.municipality-route-settings-grid{grid-template-columns:1fr}.municipality-route-setting{padding:19px}}
.taxi-special-route-dialog[open]{position:fixed;inset:0;margin:auto}.taxi-special-route-dialog .taxi-special-route-dialog-note{padding:9px 10px;color:#657184;background:#f4f6f9;border-radius:9px;font-size:10px;line-height:1.4}html:has(.taxi-special-route-dialog[open]){scrollbar-gutter:stable}
.admin-duplicate-review{border-color:#efd49c;background:#fffbf3}
.admin-duplicate-review h2{margin-bottom:6px;color:#81561b}
.admin-duplicate-review>p{margin:0 0 14px;color:#735f42;font-size:12px;line-height:1.5}
.admin-duplicate-list{display:grid;gap:9px}
.admin-duplicate-item{display:grid;gap:5px;padding:12px;background:#fff;border:1px solid #eadfcb;border-radius:10px;overflow-wrap:anywhere}
.admin-duplicate-item.priority{border-color:#dba3a8;background:#fff8f8}
.admin-duplicate-item strong{color:#80551b;font-size:13px}
.admin-duplicate-item.priority strong{color:#a33c45}
.admin-duplicate-item span,.admin-duplicate-item small{font-size:11px;line-height:1.4}
.admin-duplicate-item small{color:var(--muted)}
.admin-duplicate-item a{width:max-content;color:var(--blue);font-size:12px;font-weight:800}
.admin-duplicate-ack{display:flex!important;align-items:flex-start;gap:8px;line-height:1.4}
.admin-duplicate-ack input{width:17px;min-height:17px;flex:0 0 auto;margin:0;accent-color:var(--blue)}
.admin-duplicate-reason{display:grid;gap:6px}
.admin-duplicate-reason textarea{resize:vertical}
.admin-documentation-stack{display:grid;gap:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft);overflow:hidden}.admin-documentation-stack>.admin-panel{border:0;border-radius:0;box-shadow:none}.admin-documentation-stack>.admin-panel+.admin-panel{border-top:1px solid var(--line)}.admin-document-warning{display:flex;align-items:flex-start;gap:11px;margin-bottom:15px;padding:13px;color:#73520b;background:#fff8df;border:1px solid #ecc85f;border-radius:11px}.admin-document-warning>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;color:#5d4300;background:#ffd75a;border-radius:50%;font-size:17px;font-weight:950}.admin-document-warning p{display:grid;gap:3px;margin:0}.admin-document-warning b{font-size:13px}.admin-document-warning small{color:#725e2d;font-size:11px;line-height:1.45}.admin-page:has([data-admin-account-review-warning]) .admin-decision form:has(input[name="action"][value="approve"])>.button-primary::before{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;color:#5b4200;background:#ffd75a;border:2px solid #fff3bd;border-radius:50%;content:"!";font-size:14px;font-weight:950;line-height:1;box-shadow:0 2px 7px rgba(86,61,0,.22)}
.admin-doc-grid>.admin-doc-missing{display:grid;align-content:center;justify-items:center;gap:8px;min-height:264px;padding:22px;color:#73520b;background:#fff8df;border:1px solid #ecc85f;border-radius:12px;text-align:center}.admin-doc-missing>span{display:grid;place-items:center;width:48px;height:48px;margin-bottom:5px;color:#5d4300;background:#ffd75a;border-radius:50%;font-size:25px;font-weight:950}.admin-doc-missing>b{color:var(--ink)}.admin-doc-missing>small{color:#725e2d}
.admin-specific-review-focus{display:flex;align-items:center;gap:16px;color:#163f7a;background:linear-gradient(135deg,#edf5ff,#e4f2ff);border:2px solid #4a7df2;box-shadow:0 10px 28px rgba(74,125,242,.13)}.admin-specific-review-focus>span{flex:0 0 auto;padding:8px 10px;color:#fff;background:#315fc5;border-radius:9px;font-size:11px;font-weight:900;letter-spacing:.08em}.admin-specific-review-focus h2{margin:0 0 4px;font-size:18px}.admin-specific-review-focus p{margin:0;color:#375478;font-size:13px;line-height:1.45}.admin-vehicle-review-focused .admin-doc-grid>*:not(.admin-doc-review-target){opacity:.5}.admin-doc-grid>.admin-doc-review-target{position:relative;border:3px solid #4a7df2;box-shadow:0 0 0 4px rgba(74,125,242,.12)}.admin-doc-grid>.admin-doc-review-target::before{position:absolute;z-index:2;top:10px;left:10px;padding:6px 9px;color:#fff;background:#315fc5;border-radius:8px;content:"REVISAR ESTE CAMBIO";font-size:10px;font-weight:900;letter-spacing:.04em}@media(max-width:620px){.admin-specific-review-focus{align-items:flex-start;flex-direction:column}.admin-specific-review-focus>span{font-size:10px}}
.promotion-completed-goal{margin:12px 0;padding:12px 14px;background:#f2f8f5;border:1px solid #cde5d7;border-radius:10px}.promotion-completed-goal p{margin:0 0 6px}.promotion-completed-goal p:last-child{margin-bottom:0}.promotion-completed-goal code{font-size:15px;font-weight:800;letter-spacing:.04em;overflow-wrap:anywhere}.promotion-completed-goal ol{margin:4px 0 0;padding-left:22px}.promotion-completed-goal li{margin:3px 0}
.promotion-review-page{display:grid;gap:18px}.promotion-review-page .admin-title{margin-bottom:0}.promotion-review-breadcrumb{font-size:13px;color:var(--muted)}.promotion-review-breadcrumb a{color:var(--blue);font-weight:750}.promotion-review-list{display:grid;gap:10px}.promotion-review-list>h2,.promotion-review-summary>h2{margin:0}.promotion-review-list>p,.promotion-review-summary>p{margin:0}.promotion-review-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;border:1px solid var(--line);border-radius:12px;color:var(--navy);text-decoration:none}.promotion-review-row:hover{border-color:var(--blue);background:#f7faff}.promotion-review-row span:first-child{display:grid;gap:4px}.promotion-review-row small{color:var(--muted)}.promotion-review-row span:last-child{text-align:right;font-size:13px;font-weight:750}.promotion-review-accounts{display:grid;gap:12px}.promotion-review-account{display:grid;gap:10px}.promotion-review-account h3,.promotion-review-account p{margin:0}.promotion-review-orders{margin:0;padding-left:23px}.promotion-review-orders li{padding:3px 0}.promotion-review-decision{display:grid;gap:10px}.promotion-review-decision label{display:grid;gap:5px;font-size:13px;font-weight:700}.promotion-review-decision input{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px}.promotion-review-decision>div,.promotion-review-filters,.promotion-review-pagination{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.promotion-review-order{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.promotion-review-order>div{display:grid;gap:4px}.promotion-review-order small{color:var(--muted)}.promotion-review-filters a{padding:7px 10px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.promotion-review-filters a.is-current{color:#fff;background:var(--navy)}.promotion-review-pagination{justify-content:space-between}.promotion-review-summary{display:grid;gap:9px}@media(max-width:680px){.promotion-review-row{align-items:flex-start;flex-direction:column}.promotion-review-row span:last-child{text-align:left}}
.taxi-commission-review-panel{min-width:0}.taxi-commission-review-list{display:grid;gap:8px}.taxi-commission-review-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.1fr) minmax(0,1.2fr) minmax(120px,.7fr) auto;align-items:center;gap:14px;padding:13px 14px;background:#fff;border:1px solid #e1e6ee;border-radius:12px}.taxi-commission-review-row:hover{background:#fafcff;border-color:#bdcbe0}.taxi-commission-review-main,.taxi-commission-review-person,.taxi-commission-review-context,.taxi-commission-review-amount{display:grid;gap:3px;min-width:0}.taxi-commission-review-row strong,.taxi-commission-review-row small,.taxi-commission-review-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-commission-review-row strong{color:#172640;font-size:13px}.taxi-commission-review-row small{color:#728096;font-size:9px}.taxi-commission-review-row span{color:#647188;font-size:10px}.taxi-commission-review-person>small,.taxi-commission-review-context>small{color:#466a9f;font-weight:850;letter-spacing:.06em}.taxi-commission-review-context .taxi-commission-review-warning{color:#9a5e12;font-weight:750}.taxi-commission-review-context .taxi-commission-review-ok{color:#1d7658;font-weight:750}.taxi-commission-review-amount strong{color:#153f75;font-size:16px}.taxi-commission-review-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.taxi-commission-review-actions>a{color:#42648f;font-size:10px;font-weight:800}.taxi-commission-review-actions form{margin:0}.taxi-commission-review-actions .button{width:auto;min-height:37px;padding:8px 12px;font-size:11px}
@media(max-width:1050px){.taxi-commission-review-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr) auto}.taxi-commission-review-amount{grid-column:1/2}.taxi-commission-review-actions{grid-column:4;grid-row:1/3}}
@media(max-width:760px){.taxi-commission-review-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 14px}.taxi-commission-review-main,.taxi-commission-review-person,.taxi-commission-review-context,.taxi-commission-review-amount{grid-column:1}.taxi-commission-review-actions{grid-column:2;grid-row:1/5;align-items:stretch;flex-direction:column;justify-content:center}.taxi-commission-review-actions .button{width:100%}}

/* Pagos de promociones: resumen, cuentas y detalle de operaciones. */
.promotion-payout-page{display:grid;gap:18px}
.promotion-payout-page .admin-title{margin-bottom:0}
.promotion-payout-page .promotion-section-nav{margin-bottom:0}
.promotion-payout-page .admin-panel{border-color:#e1e8f1;box-shadow:0 8px 24px rgba(20,40,76,.045)}
.promotion-payout-page .payout-eyebrow{display:block;color:#4f73ad;font-size:10px;font-weight:850;letter-spacing:.14em;line-height:1.3}
.payout-cutoff-panel{padding:25px 26px}
.payout-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.payout-panel-heading h2{margin:5px 0 4px;color:#172b4b;font-size:21px;letter-spacing:-.025em}
.payout-panel-heading p{margin:0;color:#68778e;font-size:12px;line-height:1.5}
.payout-cutoff-form{display:flex;align-items:center;gap:8px;padding:7px 7px 7px 13px;background:#f4f7fb;border:1px solid #dfe7f1;border-radius:11px}
.payout-cutoff-form label{color:#5f6f87;font-size:11px;font-weight:750}
.payout-cutoff-form select{min-height:34px;padding:5px 9px;color:#203859;background:#fff;border:1px solid #d7e0eb;border-radius:7px;font:750 12px inherit}
.payout-cutoff-form .button{min-height:34px;padding:6px 12px;font-size:11px;box-shadow:none}
.payout-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.payout-stat{display:grid;gap:9px;padding:18px 19px;background:#f5f8fc;border:1px solid #e5ebf3;border-radius:12px}
.payout-stat span{color:#68778e;font-size:11px;font-weight:750}
.payout-stat strong{color:#1d3456;font-size:27px;line-height:1.1;letter-spacing:-.04em}
.payout-stat strong small{font-size:12px;letter-spacing:0}
.payout-stat.is-paid{background:#f0faf5;border-color:#d8efe2}
.payout-stat.is-paid strong{color:#187352}
.payout-stat.is-pending{background:#fff8eb;border-color:#f4e5c7}
.payout-stat.is-pending strong{color:#98601d}
.payout-ledger{padding:0;overflow:hidden}
.payout-ledger>.payout-panel-heading{padding:24px 26px 22px}
.payout-count{flex:0 0 auto;padding:7px 10px;color:#345d91;background:#edf3fb;border-radius:9px;font-size:11px;font-weight:800;white-space:nowrap}
.payout-table{border-top:1px solid #e7edf4}
.payout-table-head,.payout-account-row{display:grid;grid-template-columns:minmax(190px,2fr) minmax(112px,.8fr) minmax(125px,.95fr) minmax(135px,.9fr) 25px;align-items:center;gap:15px;padding:0 26px}
.payout-table-head{min-height:38px;color:#8190a3;background:#f8fafd;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.payout-table-head span:nth-child(4){text-align:right}
.payout-account-row{min-height:72px;color:#1b304f;text-decoration:none;border-top:1px solid #edf1f6;transition:background .15s}
.payout-account-row:hover,.payout-account-row:focus-visible{background:#f5f9ff}
.payout-account-person{display:flex;align-items:center;gap:11px;min-width:0}
.payout-avatar{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#315b91;background:#e7f0fb;border:1px solid #d4e3f5;border-radius:11px;font-size:16px;font-weight:850}
.payout-account-person>span:last-child{display:grid;gap:3px;min-width:0}
.payout-account-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.payout-account-person small,.payout-account-count small{color:#7d8ba0;font-size:11px}
.payout-account-count{font-size:13px;font-weight:800}
.payout-account-cutoffs{color:#68778e;font-size:11px}
.payout-account-total{justify-self:end;font-size:16px;font-weight:850;white-space:nowrap}
.payout-account-total small{font-size:10px}
.payout-row-arrow{justify-self:end;color:#6684aa;font-size:20px}
.payout-empty{display:grid;justify-items:center;gap:7px;padding:42px 20px;text-align:center;border-top:1px solid #e7edf4}
.payout-empty>span{display:grid;place-items:center;width:42px;height:42px;color:#168663;background:#e2f6eb;border-radius:50%;font-size:20px;font-weight:850}
.payout-empty strong{margin-top:4px;color:#183958;font-size:15px}
.payout-empty p{margin:0;color:#738198;font-size:12px}
.payout-history-list{border-top:1px solid #e7edf4}
.payout-history-row{display:grid;grid-template-columns:minmax(150px,2fr) minmax(120px,1fr) minmax(100px,.9fr) auto;align-items:center;gap:15px;min-height:66px;padding:11px 26px;border-top:1px solid #edf1f6}
.payout-history-row:first-child{border-top:0}
.payout-history-person{display:grid;gap:4px;min-width:0}
.payout-history-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#243957;font-size:12px}
.payout-history-person small,.payout-history-code{color:#7b899d;font-size:11px}
.payout-history-code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.payout-history-amount{justify-self:end;color:#1c7051;font-size:13px;white-space:nowrap}
.payout-history-row>a{color:#315e9b;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}
.payout-history-empty{margin:0;padding:20px 26px;color:#77859a;font-size:12px;border-top:1px solid #e7edf4}
.payout-breadcrumb{display:flex;align-items:center;gap:9px;color:#66758b;font-size:12px}
.payout-breadcrumb a{color:#3866a4;font-weight:750;text-decoration:none}
.payout-account-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 28px;background:#fff;border:1px solid #e0e8f1;border-radius:16px;box-shadow:0 8px 24px rgba(20,40,76,.045)}
.payout-account-identity{display:flex;align-items:center;gap:15px;min-width:0}
.payout-avatar.is-large{flex-basis:54px;width:54px;height:54px;border-radius:15px;font-size:22px}
.payout-account-identity h2{margin:4px 0 3px;overflow:hidden;color:#18304f;font-size:23px;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.payout-account-identity p{margin:0;color:#78879c;font-size:12px}
.payout-account-balance{display:grid;gap:6px;padding-left:26px;border-left:1px solid #e3eaf2;text-align:right;white-space:nowrap}
.payout-account-balance span{color:#79889b;font-size:10px;font-weight:800;letter-spacing:.08em}
.payout-account-balance strong{color:#193c6d;font-size:29px;letter-spacing:-.04em}
.payout-account-balance small{font-size:12px;letter-spacing:0}
.payout-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(275px,320px);align-items:start;gap:18px}
.payout-detail-main{display:grid;gap:18px;min-width:0}
.payout-campaign-panel{padding:23px 24px}
.payout-campaign-panel>.payout-panel-heading{margin-bottom:18px}
.payout-campaign{overflow:hidden;margin-top:9px;border:1px solid #e0e8f1;border-radius:12px;background:#fff}
.payout-campaign summary{display:flex;align-items:center;gap:12px;min-height:72px;padding:13px 16px;cursor:pointer;list-style:none}
.payout-campaign summary::-webkit-details-marker,.payout-prior-item summary::-webkit-details-marker{display:none}
.payout-campaign summary:hover,.payout-campaign summary:focus-visible{background:#f7faff}
.payout-campaign-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;color:#3e6aa4;background:#edf4fc;border-radius:10px;font-size:18px;font-weight:800}
.payout-campaign-copy{display:grid;gap:4px;min-width:0;flex:1}
.payout-campaign-copy strong{overflow:hidden;color:#1e3350;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.payout-campaign-copy small{color:#77869b;font-size:11px}
.payout-campaign-amount{color:#1b3760;font-size:16px;font-weight:850;white-space:nowrap}
.payout-campaign-amount small{font-size:10px}
.payout-campaign-chevron{color:#7489a4;font-size:21px;transition:transform .18s}
.payout-campaign[open] .payout-campaign-chevron{transform:rotate(180deg)}
.payout-reference-list{max-height:430px;overflow:auto;padding:0 16px 6px;border-top:1px solid #e9eef4;background:#fbfcfe}
.payout-reference{display:grid;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:57px;padding:9px 0;border-top:1px solid #eef2f6}
.payout-reference:first-child{border-top:0}
.payout-reference-kind{padding:5px 7px;color:#577199;background:#e9f0fa;border-radius:6px;font-size:10px;font-weight:800;text-align:center}
.payout-reference>div{display:grid;gap:3px;min-width:0}
.payout-reference>div strong{overflow:hidden;color:#2a3e5b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.payout-reference>div small,.payout-reference>div a{color:#5374a4;font-size:10px;font-weight:750}
.payout-reference>span:last-child{color:#253d5d;font-size:12px;font-weight:800;white-space:nowrap}
.payout-upcoming-list{display:grid;border-top:1px solid #edf1f6}
.payout-upcoming-list>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #edf1f6}
.payout-upcoming-list>div:last-child{border-bottom:0}
.payout-upcoming-list>div>span{display:grid;gap:4px;min-width:0}
.payout-upcoming-list strong{color:#273b59;font-size:12px}
.payout-upcoming-list small{color:#7a899e;font-size:11px}
.payout-upcoming-list>div>strong{white-space:nowrap}
.payout-prior-item{margin-top:9px;border:1px solid #e0e8f1;border-radius:11px}
.payout-prior-item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;cursor:pointer;list-style:none}
.payout-prior-item summary:hover{background:#f8faff}
.payout-prior-item summary span:first-child{display:grid;gap:4px}
.payout-prior-item summary strong{color:#253b58;font-size:13px}
.payout-prior-item summary small,.payout-prior-item summary span:last-child{color:#77869b;font-size:11px}
.payout-prior-item summary span:last-child{white-space:nowrap}
.payout-prior-item summary b{margin-left:5px;font-size:16px;font-weight:500}
.payout-prior-item[open] summary b{display:inline-block;transform:rotate(180deg)}
.payout-prior-body{padding:14px 16px;border-top:1px solid #e9eef4;background:#fbfcfe}
.payout-prior-body>a{color:#315f9d;font-size:11px;font-weight:800}
.payout-prior-body ul{margin:10px 0 0;padding:0;list-style:none}
.payout-prior-body li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #edf1f6}
.payout-prior-body li span{display:grid;gap:3px}
.payout-prior-body li strong,.payout-prior-body li b{color:#344861;font-size:11px}
.payout-prior-body li small{color:#7a899e;font-size:10px}
.payout-prior .payout-history-empty{padding:0;border:0}
.payout-payment-panel{position:sticky;top:20px}
.payout-payment-card{padding:24px;background:#fff;border:1px solid #dce5ef;border-radius:16px;box-shadow:0 12px 28px rgba(20,40,76,.08)}
.payout-payment-card h2{margin:6px 0 5px;color:#1b3151;font-size:22px;letter-spacing:-.025em}
.payout-payment-card>p{margin:0;color:#6e7d92;font-size:12px;line-height:1.55}
.payout-payment-total{display:grid;gap:5px;margin:19px 0;padding:17px;background:#edf5ff;border:1px solid #dce9fa;border-radius:11px}
.payout-payment-total span{color:#547099;font-size:10px;font-weight:800}
.payout-payment-total strong{color:#193f74;font-size:27px;letter-spacing:-.04em}
.payout-payment-total small{font-size:12px;letter-spacing:0}
.payout-payment-card form{display:grid;gap:14px}
.payout-payment-card label{display:grid;gap:6px;color:#35475f;font-size:11px;font-weight:800}
.payout-payment-card input:not([type="hidden"]){width:100%;min-width:0;min-height:42px;padding:9px 11px;color:#1e3452;background:#fff;border:1px solid #cdd8e5;border-radius:9px;font:inherit;font-size:12px}
.payout-payment-card input[type="file"]{padding:8px 6px}
.payout-payment-card label small{color:#8390a3;font-size:10px;font-weight:500}
.payout-payment-card form .button{width:100%;min-height:44px;padding:10px;font-size:11px}
.payout-payment-card .payout-payment-note{margin-top:13px;font-size:10px;text-align:center}
.payout-payment-card.is-clear{text-align:center}
.payout-payment-card.is-clear>span{display:grid;place-items:center;width:45px;height:45px;margin:0 auto 11px;color:#157852;background:#e1f5ea;border-radius:50%;font-size:21px;font-weight:850}
.payout-empty.is-compact{padding:25px 15px;border:1px dashed #dce6ef;border-radius:11px}
@media(max-width:1000px){.payout-detail-grid{grid-template-columns:minmax(0,1fr) 280px}.payout-table-head,.payout-account-row{grid-template-columns:minmax(170px,2fr) minmax(95px,.7fr) minmax(115px,.9fr) minmax(105px,.8fr) 20px;gap:10px;padding-inline:18px}}
@media(max-width:800px){.payout-detail-grid{grid-template-columns:1fr}.payout-payment-panel{position:static;grid-row:1}.payout-payment-card form{grid-template-columns:1fr 1fr}.payout-payment-card form .button{grid-column:1/-1}.payout-table-head{display:none}.payout-account-row{grid-template-columns:minmax(0,1fr) auto 20px;gap:5px 12px;padding:14px 18px}.payout-account-person{grid-column:1;grid-row:1}.payout-account-count,.payout-account-cutoffs{grid-column:1;margin-left:49px}.payout-account-count{grid-row:2}.payout-account-cutoffs{grid-row:3}.payout-account-total{grid-column:2;grid-row:1/4}.payout-row-arrow{grid-column:3;grid-row:1/4}}
@media(max-width:600px){.payout-cutoff-panel,.payout-campaign-panel{padding:19px}.payout-panel-heading{align-items:flex-start;flex-direction:column;gap:12px}.payout-cutoff-form{width:100%}.payout-cutoff-form select{flex:1}.payout-stats{grid-template-columns:1fr;gap:8px;margin-top:17px}.payout-stat{grid-template-columns:1fr auto;align-items:center;padding:13px 15px}.payout-stat strong{font-size:22px}.payout-ledger>.payout-panel-heading{padding:20px}.payout-history-row{grid-template-columns:1fr auto;gap:6px 12px;padding:13px 20px}.payout-history-code{grid-column:1}.payout-history-amount{grid-column:2;grid-row:1}.payout-history-row>a{grid-column:2;grid-row:2}.payout-account-hero{align-items:flex-start;flex-direction:column;padding:20px}.payout-account-balance{width:100%;padding:15px 0 0;border-left:0;border-top:1px solid #e3eaf2;text-align:left}.payout-account-identity h2{font-size:20px}.payout-payment-card form{grid-template-columns:1fr}.payout-payment-card form .button{grid-column:1}.payout-reference{grid-template-columns:56px minmax(0,1fr) auto;gap:7px}.payout-reference>span:last-child{font-size:11px}.payout-campaign summary{padding:12px}.payout-campaign-amount{font-size:13px}.payout-campaign-icon{flex-basis:30px;width:30px;height:30px}}
.payout-payment-card .payout-upload{position:relative}
.payout-payment-card .payout-upload input[type="file"]{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0;overflow:hidden}
.payout-upload-surface{display:flex;align-items:center;gap:9px;min-height:50px;padding:9px 11px;color:#345f98;background:#f6f9fe;border:1px dashed #a9c0df;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer}
.payout-upload:hover .payout-upload-surface,.payout-upload:focus-within .payout-upload-surface{background:#eef5ff;border-color:#648ac0}
.payout-upload-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;background:#e5f0fc;border-radius:7px;font-size:17px}
.payout-upload-selected{display:none}
.payout-upload input:valid~.payout-upload-surface .payout-upload-prompt{display:none}
.payout-upload input:valid~.payout-upload-surface .payout-upload-selected{display:inline;color:#187352}
.payout-cutoff-form select{font-family:inherit;font-size:12px;font-weight:750}
@media(max-width:800px){.payout-detail-main{display:contents}.payout-detail-main>*{grid-column:1}.payout-payment-panel{grid-column:1;grid-row:2}}
.promotion-review-page .promotion-section-nav{margin-bottom:0}
.promotion-workspace.admin-content{padding-top:30px}
.promotion-workspace .promotion-page-header{align-items:center;min-height:80px;margin-bottom:18px}
.promotion-workspace .promotion-page-header h1{font-size:clamp(28px,3vw,36px);letter-spacing:-.035em}
.promotion-workspace .promotion-page-header p{font-size:13px;line-height:1.5}
.promotion-workspace .promotion-page-header .button{flex:0 0 auto;min-width:154px}
.promotion-workspace .promotion-workspace-nav{display:grid;grid-template-columns:repeat(4,136px);justify-content:start;gap:8px;margin-bottom:18px}
.promotion-workspace .promotion-workspace-nav a{justify-content:center;min-height:42px;padding:9px 8px;white-space:nowrap}
.promotion-review-page.promotion-workspace .promotion-page-header,.promotion-payout-page.promotion-workspace .promotion-page-header{margin-bottom:0}
.promotion-review-page.promotion-workspace .promotion-workspace-nav,.promotion-payout-page.promotion-workspace .promotion-workspace-nav{margin-bottom:0}
@media(max-width:700px){.promotion-workspace .promotion-workspace-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-workspace .promotion-page-header .button{min-width:0}}
/* Registration records awaiting email verification in the accounts view. */
.admin-status.unverified{color:#865a13;background:#fff0c2}
.admin-account-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.admin-account-title-actions form{margin:0}
.admin-unverified-notice{margin-bottom:16px;border-color:#f0d994;background:#fffbef}
.admin-unverified-notice h2{margin-bottom:8px}
.admin-unverified-notice p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}

/* Editor enriquecido seguro: la vista previa y la salida final comparten estas reglas. */
.rich-text-field{display:grid;gap:0;min-width:0}.rich-text-label{margin-bottom:6px;font-size:13px;font-weight:750}.rich-text-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:7px;background:#eef2f8;border:1px solid #dbe2ee;border-bottom:0;border-radius:12px 12px 0 0}.rich-text-toolbar>span{flex:1}.rich-text-toolbar button{min-height:32px;padding:6px 9px;color:#3f4d66;background:#fff;border:1px solid #d8dfeb;border-radius:7px;font:inherit;font-size:11px;font-weight:750;cursor:pointer}.rich-text-toolbar button:hover,.rich-text-toolbar button:focus-visible,.rich-text-toolbar button.is-active{color:#fff;background:var(--blue);border-color:var(--blue)}.rich-text-visual,.rich-text-source{box-sizing:border-box;width:100%;min-height:170px;padding:13px 14px;overflow:auto;color:var(--ink);background:#fff;border:1px solid #cfd7e5;border-radius:0 0 12px 12px;font:inherit;font-size:14px;line-height:1.6;outline:0;resize:vertical}.rich-text-source{border-radius:0 0 12px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;white-space:pre-wrap}.rich-text-field:not(.is-ready) .rich-text-visual{display:none}.rich-text-field.is-ready .rich-text-source[hidden],.rich-text-field.is-ready .rich-text-visual[hidden]{display:none}.rich-text-visual:focus,.rich-text-source:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(58,98,185,.12)}.rich-text-visual:empty::before{content:attr(data-placeholder);color:#8a94a7;pointer-events:none}.rich-text-meta{display:flex;justify-content:space-between;gap:12px;padding-top:6px;color:var(--muted)}.rich-text-meta small{font-size:10px!important}.rich-text-field.is-syncing [data-rich-status]{color:var(--blue)}.rich-text-field.is-invalid .rich-text-visual,.rich-text-field.is-invalid .rich-text-source{border-color:#c74755}.rich-text-field.is-invalid [data-rich-status]{color:#a22f3c}.rich-text-preview-shell{margin-top:10px;padding:13px 14px;background:#f8fafc;border:1px solid #dfe5ee;border-radius:11px}.rich-text-preview-shell>small{display:block;margin-bottom:9px;color:var(--blue);font-size:9px!important;font-weight:850;letter-spacing:.09em}
.rich-text-content{min-width:0;color:inherit;font:inherit;line-height:1.65;overflow-wrap:anywhere}.rich-text-content>:first-child{margin-top:0}.rich-text-content>:last-child{margin-bottom:0}.rich-text-content p{margin:0 0 12px}.rich-text-content h2,.rich-text-content h3{margin:16px 0 8px;color:inherit;line-height:1.3}.rich-text-content h2{font-size:1.3em}.rich-text-content h3{font-size:1.12em}.rich-text-content ul,.rich-text-content ol{margin:8px 0 14px;padding-left:24px}.rich-text-content li+li{margin-top:5px}.rich-text-content blockquote{margin:12px 0;padding:9px 13px;color:#526078;background:#f2f5f9;border-left:4px solid #8fa9e3;border-radius:0 8px 8px 0}.rich-text-content a{color:#285bb7;font-weight:750;text-decoration:underline;text-underline-offset:2px}.broadcast-email-preview>.rich-text-content{margin:15px 0;color:#35405a;font-size:12px;line-height:1.55}.promotion-description.rich-text-content{margin:0 0 18px}.promotion-description-content{margin-top:14px;color:#263248;font-size:15px}.promotion-how-content{color:#334155;font-size:14px}.notification-detail-dialog .rich-text-content{margin:0;color:var(--text);font-size:15px;line-height:1.65}.notification-detail-dialog .rich-text-content a{word-break:break-word}
@media(max-width:560px){.rich-text-toolbar>span{display:none}.rich-text-toolbar{gap:4px}.rich-text-toolbar button{flex:1;min-width:max-content;padding-inline:7px}.rich-text-meta{align-items:flex-start;flex-direction:column;gap:3px}.rich-text-visual,.rich-text-source{min-height:190px}.notification-detail-dialog .rich-text-content{font-size:14px}}
.broadcast-schedule-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:end;gap:12px;padding:14px;background:#f4f7fc;border:1px solid #dce4f1;border-radius:12px}.broadcast-schedule-box>div{display:grid;gap:3px}.broadcast-schedule-box b{font-size:13px}.broadcast-schedule-box small,.broadcast-schedule-box p{color:var(--muted);font-size:11px}.broadcast-schedule-box label{display:grid;gap:5px;font-size:12px;font-weight:750}.broadcast-schedule-box p{grid-column:1/-1;margin:0;padding-top:8px;border-top:1px solid #dce4f1}.broadcast-schedule-box p strong{color:var(--navy)}.promotion-current-time{margin:14px 0 4px;padding:11px 13px;color:#506078;background:#f4f7fc;border:1px solid #dce4f1;border-radius:10px;font-size:12px}.promotion-current-time strong{color:var(--navy)}
@media(max-width:560px){.broadcast-schedule-box{grid-template-columns:1fr}}

/* Taxi comparte la aplicación, pero conserva un lenguaje visual y flujo propios. */
.taxi-shell{display:grid;gap:24px;padding-block:34px 60px}.taxi-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;color:#fff;background:linear-gradient(135deg,#102b4e,#174c75);border-radius:22px;box-shadow:0 18px 40px rgba(14,43,78,.18)}.taxi-hero h1{margin:4px 0;font-size:clamp(29px,4vw,43px)}.taxi-hero p{margin:0;color:#c9dcf0}.taxi-hero-actions{display:grid;gap:7px}.taxi-hero-actions form{text-align:center}.taxi-hero-actions .button-text{color:#fff}.taxi-section{display:grid;gap:15px;padding:23px;background:#fff;border:1px solid #e0e7f0;border-radius:18px}.taxi-section>h2,.taxi-offers>h3{margin:0;color:var(--navy)}.taxi-card-list,.taxi-offers{display:grid;gap:12px}.taxi-ride-card,.taxi-offer{padding:18px;background:#f8fafc;border:1px solid #dce5ef;border-radius:14px}.taxi-active-card{color:#fff;background:#102b4e;border:0}.taxi-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.taxi-card-head span{font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.taxi-card-head strong{font-size:19px}.taxi-route{display:grid;grid-template-columns:1fr 1fr;gap:14px}.taxi-route>div{display:grid;gap:3px;padding:12px;background:rgba(255,255,255,.75);border-radius:10px}.taxi-active-card .taxi-route>div{background:rgba(255,255,255,.1)}.taxi-route small,.taxi-person small{font-size:9px;font-weight:850;letter-spacing:.08em}.taxi-route p,.taxi-person p{margin:0;font-size:11px;opacity:.8}.taxi-person{display:flex;align-items:center;gap:11px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(128,145,167,.28)}.taxi-person>div{display:grid;flex:1;gap:2px}.taxi-person .avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#dce9f7;color:#173f6c;font-weight:850}.taxi-active-card .taxi-person .avatar{background:#fff}.taxi-ride-card>form{margin-top:14px}.taxi-driver-panel>.section-title-row{align-items:center}.taxi-offer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px}.taxi-offer p{margin:4px 0 0;color:var(--muted);font-size:11px}.taxi-offer>strong{color:var(--navy);font-size:18px}.taxi-history{display:grid}.taxi-history>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid #edf1f5}.taxi-history span{display:grid;gap:3px}.taxi-history small{color:var(--muted)}.taxi-request-form{display:grid;gap:18px;max-width:850px}.taxi-location-status{margin:8px 0 15px;color:var(--muted);font-size:11px}.taxi-price-note{padding:16px 18px;color:#264768;background:#edf6ff;border:1px solid #d2e7fa;border-radius:13px}.taxi-price-note p{margin:5px 0 0;font-size:12px;line-height:1.5}.taxi-driver-register form{display:grid;gap:15px}
.taxi-location-help{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 16px;padding:14px;color:#7f1d1d;background:#fff5f5;border:1px solid #f2b8bd;border-radius:12px}.taxi-location-help[hidden]{display:none}.taxi-location-help>div{display:grid;gap:3px}.taxi-location-help strong{font-size:13px}.taxi-location-help p{margin:0;font-size:11px;line-height:1.45}.taxi-location-help .button{min-height:40px;padding-inline:13px;color:#9f2631;border-color:#e4a0a7;font-size:12px;white-space:nowrap}
@media(max-width:600px){.taxi-location-help{grid-template-columns:1fr}.taxi-location-help .button{width:100%}}
.taxi-destination-dialog{width:min(500px,calc(100% - 24px));padding:0;overflow:visible;background:transparent;border:0}.taxi-destination-dialog::backdrop{background:rgba(7,14,31,.62);backdrop-filter:blur(4px)}.taxi-destination-card{display:grid;gap:15px;padding:24px;background:#fff;border-radius:22px;box-shadow:0 26px 80px rgba(7,14,31,.32)}.taxi-destination-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.taxi-destination-card>header small{color:#c68a00;font-size:10px;font-weight:900;letter-spacing:.1em}.taxi-destination-card h2{margin:4px 0 0;color:var(--navy);font-size:27px;letter-spacing:-.035em}.taxi-destination-card>header button{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;color:var(--muted);background:#f1f3f7;border:0;border-radius:11px;font-size:25px;cursor:pointer}.taxi-destination-card>p{margin:-4px 0 1px;color:var(--muted);font-size:12px;line-height:1.5}.taxi-destination-card>label{display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:800}.taxi-destination-card select,.taxi-destination-card input{width:100%;min-height:52px;padding:11px 13px;color:var(--ink);background:#fff;border:1px solid #d7deea;border-radius:12px;font:inherit;font-size:15px}.taxi-destination-card select:focus,.taxi-destination-card input:focus{border-color:#e2aa20;outline:0;box-shadow:0 0 0 4px rgba(255,201,74,.22)}.taxi-destination-card .taxi-destination-location{margin:0;padding:10px 12px;color:#526078;background:#f5f7fa;border-radius:10px;font-size:11px}.taxi-destination-location-link{margin-top:-8px;color:#a66500;font-size:11px;font-weight:800}.taxi-destination-location-link[hidden]{display:none}.taxi-destination-card>.taxi-passenger-route-button{width:100%;border:0;cursor:pointer}.taxi-destination-card>.taxi-passenger-route-button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.55}@media(max-width:560px){.taxi-destination-dialog{width:calc(100% - 16px);margin:auto auto 8px}.taxi-destination-card{padding:20px 16px;border-radius:20px}.taxi-destination-card h2{font-size:24px}}
.taxi-municipality-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:64px;padding:18px 15px 14px;color:var(--ink);background:#fff;border:1px solid #d7deea;border-radius:12px;font:inherit;font-size:15px;font-weight:650;text-align:left;cursor:pointer}.taxi-municipality-toggle svg{flex:0 0 19px;width:19px;height:19px;color:#bd8200}.taxi-municipality-toggle:focus,.taxi-municipality-toggle[aria-invalid="true"]{border-color:#e2aa20;outline:0;box-shadow:0 0 0 4px rgba(255,201,74,.22)}.taxi-municipality-toggle.is-detected{color:#176b5b;background:#eef9f6;border-color:#a7dfd1;cursor:default;opacity:1}.taxi-municipality-toggle.is-detected svg{display:none}.taxi-municipality-toggle.is-detected::after{content:"✓";display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;color:#fff;background:#259b82;border-radius:50%;font-size:13px;font-weight:900}.taxi-municipality-dialog{box-sizing:border-box;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:8px;overflow:hidden;background:transparent;border:0}.taxi-municipality-dialog::backdrop{background:rgba(7,14,31,.7);backdrop-filter:blur(4px)}.taxi-municipality-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(620px,100%);height:100%;margin:0 auto;overflow:hidden;background:#f7f8fa;border-radius:22px;box-shadow:0 26px 90px rgba(7,14,31,.38)}.taxi-municipality-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 20px 16px;background:#fff;border-bottom:1px solid #e3e7ed}.taxi-municipality-card>header small{color:#bd8200;font-size:10px;font-weight:900;letter-spacing:.1em}.taxi-municipality-card h2{margin:4px 0 0;color:var(--navy);font-size:24px}.taxi-municipality-card>header button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;color:var(--muted);background:#f1f3f7;border:0;border-radius:12px;font-size:26px;cursor:pointer}.taxi-municipality-options{display:grid;align-content:start;gap:8px;padding:14px 14px 24px;overflow:auto}.taxi-municipality-options>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:17px 16px 13px;color:var(--ink);background:#fff;border:1px solid #dfe4ec;border-radius:13px;font:inherit;font-size:15px;font-weight:750;text-align:left;cursor:pointer}.taxi-municipality-options>button:hover,.taxi-municipality-options>button:focus{border-color:#e2aa20;outline:0;box-shadow:0 0 0 3px rgba(255,201,74,.18)}.taxi-municipality-options>button i{visibility:hidden;color:#a96f00;font-style:normal;font-weight:900}.taxi-municipality-options>button[aria-selected="true"]{background:#fff8df;border-color:#e2aa20}.taxi-municipality-options>button[aria-selected="true"] i{visibility:visible}@media(max-width:560px){.taxi-municipality-dialog{padding:6px}.taxi-municipality-card{border-radius:18px}.taxi-municipality-card>header{padding:18px 16px 14px}.taxi-municipality-options{padding:10px 10px 22px}.taxi-municipality-options>button{min-height:60px;padding-top:18px;padding-bottom:14px}}
.taxi-pickup-dialog{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-width:none;height:min(680px,calc(100dvh - 48px));max-height:none;margin:auto;padding:0;overflow:hidden;background:transparent;border:0}.taxi-pickup-dialog::backdrop{background:rgba(7,14,31,.72);backdrop-filter:blur(4px)}.taxi-pickup-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;margin:0;overflow:hidden;background:#fff;border-radius:22px;box-shadow:0 26px 90px rgba(7,14,31,.4)}.taxi-pickup-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 14px;border-bottom:1px solid #e3e7ed}.taxi-pickup-card>header small{color:#bd8200;font-size:10px;font-weight:900;letter-spacing:.1em}.taxi-pickup-card h2{margin:4px 0 0;color:var(--navy);font-size:24px}.taxi-pickup-card>header button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;color:var(--muted);background:#f1f3f7;border:0;border-radius:12px;font-size:26px;cursor:pointer}.taxi-pickup-map{position:relative;min-height:0;background:#dce7e8}.taxi-pickup-map iframe{display:block;width:100%;height:100%;border:0}.taxi-pickup-map-pin{position:absolute;z-index:2;top:50%;left:50%;display:grid;place-items:center;width:50px;height:50px;color:#fff;background:#176bff;border:5px solid #fff;border-radius:16px;box-shadow:0 12px 28px rgba(15,72,163,.34);transform:translate(-50%,-50%);pointer-events:none}.taxi-pickup-map-pin svg{width:23px;height:23px}.taxi-pickup-gps{position:absolute;right:14px;bottom:14px;z-index:4;display:grid;place-items:center;width:52px;height:52px;padding:0;color:#fff;background:#101935;border:0;border-radius:13px;box-shadow:0 8px 24px rgba(7,14,31,.32);cursor:pointer}.taxi-pickup-gps svg{width:23px;height:23px}.taxi-pickup-card>footer{display:grid;gap:11px;padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #e3e7ed}.taxi-pickup-card>footer p{margin:0;color:var(--muted);font-size:11px}.taxi-pickup-card>footer>div{display:grid;grid-template-columns:1fr;gap:9px}.taxi-pickup-card>footer .button,.taxi-pickup-card>footer .taxi-passenger-route-button{width:100%;min-height:50px;border-radius:13px;cursor:pointer}.taxi-pickup-card>footer .taxi-passenger-route-button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.55}@media(max-width:560px){.taxi-pickup-dialog{width:calc(100% - 20px);height:min(640px,calc(100dvh - 88px - env(safe-area-inset-top,0px)));padding:0}.taxi-pickup-card{border-radius:20px}.taxi-pickup-card>header{padding:14px 16px 12px}.taxi-pickup-card>footer{padding-inline:12px}.taxi-pickup-card>footer>div{grid-template-columns:1fr}.taxi-pickup-card>footer .taxi-passenger-route-button{grid-row:1}}
.taxi-pickup-map{overflow:hidden}.taxi-pickup-map iframe{height:calc(100% + 34px)}.taxi-pickup-map>a{position:absolute;z-index:3;top:7px;right:7px;padding:2px 5px;color:#52606d;background:rgba(255,255,255,.78);border-radius:5px;font-size:8px;text-decoration:none}.taxi-pickup-map-pin{display:block;width:48px;height:58px;background:transparent;border:0;border-radius:0;box-shadow:none;transform:translate(-50%,-100%) scale(var(--taxi-pickup-pin-scale,1));transform-origin:50% 100%;transition:transform .22s ease}.taxi-pickup-map-pin::before{content:"";position:absolute;top:7px;left:5px;width:34px;height:34px;background:#176bff;border:4px solid #fff;border-radius:50% 50% 50% 0;box-shadow:-8px 10px 22px rgba(15,72,163,.32);transform:rotate(-45deg)}.taxi-pickup-map-pin::after{content:"";position:absolute;top:21px;left:19px;width:12px;height:12px;background:#fff;border-radius:50%}.taxi-pickup-map-pin svg{display:none}.taxi-passenger-map.is-destination-preview .taxi-passenger-map-pin::before{background:#ffc94a}.taxi-passenger-map.is-destination-preview .taxi-passenger-map-pin::after{background:#171100}.taxi-destination-peek{width:100%;min-height:48px;padding:11px 14px;color:#7d5700;background:#fff8df;border:1px solid #efd487;border-radius:12px;font:inherit;font-size:13px;font-weight:850;cursor:pointer}.taxi-destination-peek:hover,.taxi-destination-peek:focus{border-color:#d9a51d;outline:0;box-shadow:0 0 0 3px rgba(255,201,74,.2)}.taxi-destination-collapsed{display:none;align-items:center;justify-content:space-between;gap:14px}.taxi-destination-collapsed>div{display:grid;gap:3px;min-width:0}.taxi-destination-collapsed small{color:#bd8200;font-size:9px!important;font-weight:900;letter-spacing:.09em}.taxi-destination-collapsed strong{overflow:hidden;color:var(--navy);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.taxi-destination-collapsed>button{flex:0 0 auto;min-height:40px;padding:8px 14px;color:#7d5700;background:#fff8df;border:1px solid #efd487;border-radius:11px;font:inherit;font-size:12px;font-weight:850;cursor:pointer}.taxi-destination-dialog.is-collapsed{margin:auto auto 88px}.taxi-destination-dialog.is-collapsed::backdrop{background:rgba(7,14,31,.14);backdrop-filter:none}.taxi-destination-dialog.is-collapsed .taxi-destination-card{gap:0;padding:14px 16px;border-radius:17px}.taxi-destination-dialog.is-collapsed .taxi-destination-card>header,.taxi-destination-dialog.is-collapsed .taxi-destination-card>label,.taxi-destination-dialog.is-collapsed .taxi-destination-card>.taxi-destination-peek,.taxi-destination-dialog.is-collapsed .taxi-destination-card>.taxi-passenger-route-button{display:none}.taxi-destination-dialog.is-collapsed .taxi-destination-collapsed{display:flex}@media(max-width:560px){.taxi-destination-dialog.is-collapsed{width:calc(100% - 16px);margin:auto auto calc(78px + env(safe-area-inset-bottom))}.taxi-destination-dialog.is-collapsed .taxi-destination-card{padding:13px 14px}}
.taxi-passenger-map.is-destination-preview .taxi-passenger-map-pin{width:48px;height:58px;transform:translate(-50%,-100%)}.taxi-passenger-map.is-destination-preview .taxi-passenger-map-pin::before{box-sizing:border-box;top:7px;left:7px;width:34px;height:34px;background:#ffc94a;border-width:4px;box-shadow:-6px 8px 18px rgba(141,96,0,.32)}.taxi-passenger-map.is-destination-preview .taxi-passenger-map-pin::after{top:20px;left:20px;width:8px;height:8px;background:#171100}
.taxi-pickup-map iframe{filter:none}
.taxi-pickup-card [data-taxi-pickup-confirm]{grid-auto-flow:column;justify-content:center;gap:8px;color:#fff;background:#173f6c;border:0;box-shadow:0 7px 16px rgba(23,63,108,.18)}.taxi-pickup-card [data-taxi-pickup-confirm] svg{width:19px;height:19px}
.taxi-pickup-map .taxi-pickup-gps{background:rgba(16,25,53,.78);box-shadow:0 8px 24px rgba(7,14,31,.24);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.taxi-destination-card>header h2{margin-top:0}
.taxi-destination-geocode-status{margin:2px 0 0!important;padding:14px 15px;color:#842d38;background:#fff6f6;border:1px solid #efc9ce;border-radius:12px;font-size:12px!important;font-weight:550;line-height:1.55;white-space:pre-line;text-wrap:pretty}.taxi-destination-geocode-status::first-line{color:#6f1f2a;font-weight:850}.taxi-destination-peek:disabled{cursor:wait;opacity:.6}
.taxi-geocode-credit{margin-top:-9px;color:#7a8494;font-size:9px}.taxi-geocode-credit a{color:inherit}.taxi-destination-dialog.is-collapsed .taxi-geocode-credit{display:none}
.taxi-passenger-map:not(.is-destination-preview) .taxi-passenger-raster-map{pointer-events:auto}
.taxi-passenger-raster-map{pointer-events:auto;touch-action:none;cursor:grab}.taxi-passenger-raster-map:active{cursor:grabbing}.taxi-passenger-map .taxi-passenger-raster-map.is-interaction-locked{pointer-events:none;cursor:default}
.taxi-destination-dialog{box-sizing:border-box;width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto;overflow:hidden}
.taxi-destination-card{max-height:calc(100dvh - 24px);overflow:auto}
.taxi-destination-fields,.taxi-destination-map-step{display:grid;gap:15px}
.taxi-destination-fields[hidden],.taxi-destination-map-step[hidden]{display:none}
.taxi-destination-fields>label{display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:800}
.taxi-destination-fields>label>select{width:100%;min-height:50px;padding:10px 12px;color:var(--ink);background:#fff;border:1px solid #d8dfeb;border-radius:12px;font-family:inherit;font-size:14px;font-weight:400}
.taxi-destination-fields input[data-taxi-destination-address]{font-weight:400}
.taxi-destination-fields input[data-taxi-pickup-address-input]{font-weight:400}
.taxi-pickup-address-entry{display:grid;grid-template-columns:minmax(0,1fr) 50px;align-items:start;gap:10px}.taxi-pickup-address-entry>label{min-width:0}.taxi-pickup-address-entry>[data-taxi-pickup-current-location]{display:grid;place-items:center;width:50px;height:50px;margin-top:25px;padding:0;color:#176bff;background:#edf4ff;border:1px solid #b9d0fa;border-radius:12px;cursor:pointer}.taxi-pickup-address-entry>[data-taxi-pickup-current-location]:hover,.taxi-pickup-address-entry>[data-taxi-pickup-current-location]:focus-visible{border-color:#176bff;outline:0;box-shadow:0 0 0 3px rgba(23,107,255,.16)}.taxi-pickup-address-entry>[data-taxi-pickup-current-location]:disabled{cursor:wait;opacity:.58}.taxi-pickup-address-entry>[data-taxi-pickup-current-location] svg{width:24px;height:24px}
.taxi-destination-fields input[data-taxi-destination-address]::placeholder{font-size:12px;font-weight:400}
.taxi-destination-map-copy{display:grid;gap:3px}.taxi-destination-map-copy strong{color:var(--navy);font-size:15px}.taxi-destination-map-copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.taxi-destination-map-picker{position:relative;min-height:360px;overflow:hidden;background:#dce7e8;border:1px solid #d7deea;border-radius:16px}
.taxi-destination-map-note{margin:-7px 4px 0;color:#7a8494;font-size:12px;line-height:1.45;text-align:center}
.taxi-destination-map-pin{position:absolute;z-index:3;top:50%;left:50%;display:block;width:48px;height:58px;transform:translate(-50%,-100%);pointer-events:none}.taxi-destination-map-pin::before{content:"";position:absolute;top:7px;left:5px;width:34px;height:34px;background:#34e0bf;border:4px solid #fff;border-radius:50% 50% 50% 0;box-shadow:-8px 10px 22px rgba(7,72,62,.3);transform:rotate(-45deg)}.taxi-destination-map-pin::after{content:"";position:absolute;top:21px;left:19px;width:12px;height:12px;background:#102033;border-radius:50%}.taxi-destination-map-pin svg{display:none}
.taxi-destination-map-actions{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:10px}.taxi-destination-map-actions>button{width:100%;min-height:50px;cursor:pointer}.taxi-destination-map-actions>.taxi-passenger-route-button{margin:0;border:0}.taxi-destination-map-actions>.taxi-passenger-route-button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.55}
@media(max-width:560px){.taxi-destination-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 24px);margin:auto}.taxi-destination-card{max-height:calc(100dvh - 24px);padding:16px 12px calc(14px + env(safe-area-inset-bottom));border-radius:18px}.taxi-destination-map-picker{min-height:48dvh}.taxi-destination-map-actions{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}}
.taxi-passenger-route-body>.taxi-passenger-route-button{margin-top:18px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button{margin-top:30px;margin-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
@media(max-width:680px){.taxi-passenger-route-sheet{padding-top:14px}}
.taxi-request-confirm-dialog{width:min(520px,calc(100% - 24px));margin:auto}.taxi-request-confirm-dialog .taxi-request-confirm-card{grid-template-columns:1fr;gap:18px;padding:24px;border-radius:24px}.taxi-request-confirm-head{display:flex;align-items:center;gap:13px}.taxi-request-confirm-head>span{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;color:#111827;background:#ffc94a;border-radius:14px;box-shadow:0 7px 16px rgba(255,201,74,.24)}.taxi-request-confirm-head svg{width:23px;height:23px}.taxi-request-confirm-head>div{display:grid;gap:2px}.taxi-request-confirm-head small{color:#9a6800;font-size:9px;font-weight:900;letter-spacing:.11em}.taxi-request-confirm-head h2{margin:0;color:var(--navy);font-size:24px;letter-spacing:-.03em}.taxi-request-confirm-route{padding:17px 16px;background:#f7f9fc;border:1px solid #e1e7ef;border-radius:17px}.taxi-request-confirm-point{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:12px}.taxi-request-confirm-point>i{box-sizing:border-box;width:14px;height:14px;background:#fff;border:4px solid #176bff;border-radius:50%}.taxi-request-confirm-destination>i{border-color:#ffc94a}.taxi-request-confirm-point>span{display:grid;gap:3px;min-width:0}.taxi-request-confirm-point small{color:#8793a4;font-size:9px;font-weight:900;letter-spacing:.11em}.taxi-request-confirm-point strong{color:#17233b;font-size:14px;line-height:1.35;overflow-wrap:anywhere}.taxi-request-confirm-line{width:2px;height:25px;margin:3px 0 3px 6px;background:repeating-linear-gradient(#abb6c5 0 4px,transparent 4px 7px)}.taxi-request-confirm-estimate{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid #dfe5ed}.taxi-request-confirm-estimate>span{display:grid;align-content:center;gap:2px;min-height:34px;padding:0 2px;background:transparent;border:0}.taxi-request-confirm-estimate small{color:#8793a4;font-size:7px;font-weight:900;letter-spacing:.08em}.taxi-request-confirm-estimate strong{color:var(--navy);font-size:14px;line-height:1.2}.taxi-request-confirm-note{display:flex;align-items:center;gap:9px;margin:0;padding:11px 12px;color:#536177;background:#eef8f4;border-radius:12px;font-size:11px;line-height:1.45}.taxi-request-confirm-note svg{flex:0 0 18px;width:18px;height:18px;color:#16866b}.taxi-request-confirm-dialog .app-confirm-actions{margin-top:0}.taxi-request-confirm-dialog .taxi-passenger-route-button{margin:0;border:0}.taxi-request-confirm-dialog .app-confirm-actions .button{min-height:50px;font-size:14px}@media(max-width:520px){.taxi-request-confirm-dialog{width:calc(100% - 18px)}.taxi-request-confirm-dialog .taxi-request-confirm-card{gap:15px;padding:18px 15px;border-radius:20px}.taxi-request-confirm-head>span{flex-basis:42px;width:42px;height:42px;border-radius:13px}.taxi-request-confirm-head h2{font-size:21px}.taxi-request-confirm-route{padding:15px 13px}.taxi-request-confirm-point strong{font-size:13px}.taxi-request-confirm-estimate>span{min-height:32px;padding:0}.taxi-request-confirm-estimate strong{font-size:13px}.taxi-request-confirm-dialog .app-confirm-actions{grid-template-columns:1fr}.taxi-request-confirm-dialog [data-taxi-request-confirm-accept]{grid-row:1}.taxi-request-confirm-dialog [data-taxi-request-confirm-cancel]{grid-row:2}}
.taxi-person .avatar img{width:100%;height:100%;object-fit:cover}
.taxi-request-confirm-estimate{gap:6px;margin:10px 0 0 28px;padding-top:9px}.taxi-request-confirm-estimate>span{gap:1px;min-height:26px;padding:0}.taxi-request-confirm-estimate small{font-size:7px;font-weight:700;letter-spacing:0}.taxi-request-confirm-estimate strong{font-size:14px;font-weight:750;line-height:1}.taxi-request-confirm-estimate>span:last-child strong{font-weight:900}@media(max-width:520px){.taxi-request-confirm-estimate>span{min-height:24px}.taxi-request-confirm-estimate strong{font-size:13px}}
.order-delivery-location{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:76px;padding:14px 16px;color:var(--navy);background:#f7f9fc;border:1px solid var(--line);border-radius:14px;font:inherit;text-align:left;cursor:pointer}.order-delivery-location:hover,.order-delivery-location:focus{border-color:#80cdbf;outline:0;box-shadow:0 0 0 3px rgba(52,224,191,.14)}.order-delivery-location.field-invalid{border-color:#e65959}.order-delivery-location>span{display:grid;gap:3px;min-width:0}.order-delivery-location small{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.09em}.order-delivery-location strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.order-delivery-location em{color:var(--muted);font-size:12px;font-style:normal}.order-delivery-location>svg{flex:0 0 24px;width:24px;height:24px;color:#159b72}.order-route-required{display:block;margin-top:7px;color:#c83a3a;font-size:11px}.order-route-result{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.order-route-result>span,.order-map-route-summary>span{display:grid;gap:3px;padding:11px 12px;background:#eef8f4;border-radius:11px}.order-route-result small,.order-map-route-summary small{color:#678177;font-size:8px;font-weight:900;letter-spacing:.08em}.order-route-result strong,.order-map-route-summary strong{color:var(--navy);font-size:13px}.order-calculated-price input[readonly]{color:var(--navy);background:#eef8f4;font-weight:400;cursor:default}.order-calculated-price input::placeholder{font-size:14px;font-weight:400}.order-destination-dialog{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto}.order-destination-card{max-height:calc(100dvh - 24px);overflow:auto}.order-map-route-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.order-destination-card>[data-order-route-use]{margin-top:10px}.order-destination-card .taxi-destination-map-picker{min-height:390px}@media(max-width:560px){.order-destination-dialog{width:calc(100% - 16px)}.order-destination-card{padding:16px 12px calc(14px + env(safe-area-inset-bottom));border-radius:18px}.order-destination-card .taxi-destination-map-picker{min-height:46dvh}.order-map-route-summary{grid-template-columns:1fr}.order-route-result{grid-template-columns:1fr}}
.order-delivery-location strong.order-destination-placeholder{color:var(--muted);font-size:12px;font-weight:400}.order-destination-card{border:1px solid #cdebe3}.order-destination-card>header small{color:#16866b}.order-destination-card input:focus{border-color:#34c7a8;box-shadow:0 0 0 4px rgba(52,224,191,.2)}.order-destination-card .taxi-destination-peek{color:#176b5b;background:#eaf9f5;border-color:#9ddfce;font-weight:750}.order-destination-card .taxi-destination-peek:hover,.order-destination-card .taxi-destination-peek:focus{border-color:#34b99c;box-shadow:0 0 0 3px rgba(52,224,191,.18)}.order-destination-card .taxi-passenger-route-button{color:#102033;background:#34e0bf;box-shadow:0 8px 20px rgba(52,224,191,.24)}.order-destination-card .taxi-destination-map-picker{border-color:#b8ddd4;background:#e6f3ef}.order-destination-card .taxi-destination-map-picker.has-raster-map [data-order-destination-map]{visibility:visible}
.order-route-distance-line{margin:6px 2px 0;color:var(--muted);font-size:12px;line-height:1.35}.order-route-distance-line strong{color:var(--navy);font-size:12px;font-weight:750}
@media(max-width:700px){.taxi-shell{padding-top:20px}.taxi-hero{align-items:flex-start;flex-direction:column;padding:22px}.taxi-hero .button{width:100%}.taxi-section{padding:17px}.taxi-route{grid-template-columns:1fr}.taxi-offer{grid-template-columns:1fr auto}.taxi-offer form{grid-column:1/-1}.taxi-offer .button{width:100%}.taxi-person{align-items:flex-start;flex-wrap:wrap}.taxi-person .button{margin-left:49px}.taxi-driver-panel>.section-title-row{align-items:flex-start;flex-direction:column}}

/* El conductor de taxi comparte la jerarquía operativa del panel del mensajero. */
.taxi-driver-dashboard .dashboard-shell{padding-bottom:92px}
.taxi-driver-dashboard .courier-welcome{padding:0;color:var(--navy);background:transparent;border:0;border-radius:0;box-shadow:none}
.taxi-driver-dashboard .courier-welcome h1{color:var(--navy)}
.taxi-driver-dashboard .courier-welcome .courier-pickup-zones{color:#657087}
.taxi-driver-stars{display:flex;align-items:center;justify-content:center;gap:2px;color:#c7ccd5}.taxi-driver-star{width:11px;height:11px;fill:transparent;stroke:currentColor;stroke-width:1.7}.taxi-driver-star.is-filled{color:#e4a800;fill:currentColor}
.taxi-driver-dashboard .active-delivery-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;cursor:default}
.taxi-driver-dashboard .active-focus{grid-column:1/-1;width:100%}
.taxi-driver-dashboard .active-step-copy{flex:1}
.taxi-driver-dashboard .active-pickup-map-link{margin-top:8px}
.taxi-active-contact{display:flex;align-items:center;gap:10px}.taxi-active-contact .avatar{flex:0 0 42px;width:42px;height:42px}.taxi-active-contact .button{min-height:42px}
.taxi-stage-action{min-width:190px}.taxi-trip-note{margin:10px 0 0;padding:9px 11px;color:rgba(255,255,255,.78);background:rgba(255,255,255,.08);border-radius:9px;font-size:11px;line-height:1.45}
.taxi-offer-price-line{padding-bottom:13px;border-bottom:1px solid var(--line)}.taxi-offer-price-line .offer-price-amount{color:var(--navy);font-size:34px;font-weight:900;letter-spacing:-.04em;line-height:1}.taxi-offer-price-line .offer-price-amount small{color:var(--muted);font-size:11px;letter-spacing:0}.taxi-offer-itinerary{display:grid;gap:15px;padding:14px 2px 3px}.taxi-offer-leg{display:grid;gap:5px;min-width:0}.taxi-offer-leg-distance{color:var(--text);padding-left:21px}.taxi-offer-leg-distance b{font-size:13px;line-height:1.3}.taxi-offer-leg-place{position:relative;display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:9px;padding-left:4px}.taxi-offer-leg-place i{position:relative;z-index:1;width:7px;height:7px;background:var(--blue);border-radius:50%}.taxi-offer-pickup .taxi-offer-leg-place::after{content:"";position:absolute;z-index:0;left:7px;top:50%;height:58px;border-left:1px dashed #aeb8ca}.taxi-offer-destination .taxi-offer-leg-place i{background:var(--coral);border-radius:50%}.taxi-offer-leg-place b{min-width:0;overflow:hidden;font-size:15px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.taxi-dashboard-offer .taxi-accept-button{color:#171100;background:#ffc94a;box-shadow:0 8px 22px rgba(255,201,74,.32)}
.new-order-alerting.taxi-dashboard-offer{border-color:#ffc94a;box-shadow:0 18px 46px rgba(16,25,53,.24),0 0 0 4px rgba(255,201,74,.2)}.new-order-alerting.taxi-dashboard-offer::before,.new-order-alerting.taxi-dashboard-offer::after{border-color:rgba(255,201,74,.82)}.new-order-alerting.taxi-dashboard-offer .taxi-accept-button{box-shadow:0 11px 28px rgba(209,151,12,.42),0 0 0 3px rgba(255,201,74,.22);animation:none}
.taxi-driver-dashboard #viajes-disponibles>.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.taxi-driver-dashboard #viajes-disponibles>.section-title-row .count-badge{flex:0 0 auto;margin-left:auto}.taxi-driver-dashboard .availability-notice{grid-template-columns:auto minmax(0,1fr);gap:15px;padding:18px 20px;border-radius:15px}.taxi-driver-dashboard .availability-notice>svg{width:26px;height:26px}.taxi-driver-dashboard .availability-notice b{font-size:16px;line-height:1.35}.taxi-driver-dashboard .availability-notice small{margin-top:4px;font-size:13px!important;line-height:1.5}
.taxi-history-order .history-route p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.taxi-history-actions{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:9px;margin-top:14px}.taxi-history-actions .button{width:100%}
@media(max-width:680px){.mobile-nav.mobile-nav-taxi{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:initial}.taxi-driver-dashboard .courier-welcome{padding:0;border-radius:0}.taxi-driver-dashboard .active-delivery-card{grid-template-columns:1fr}.taxi-active-contact,.taxi-stage-action{width:100%}.taxi-active-contact .button{flex:1}.taxi-stage-action{min-width:0}.taxi-offer-price-line .offer-price-amount{font-size:32px}.taxi-driver-dashboard .availability-notice{padding:17px 16px}.taxi-driver-dashboard .availability-notice b{font-size:15px}.taxi-driver-dashboard .availability-notice small{font-size:13px!important}.taxi-history-actions{grid-template-columns:1fr}.taxi-rides-history .history-filters{overflow-x:auto}.taxi-rides-history .history-filter{white-space:nowrap}}
.session-conflict{display:grid;gap:7px;margin:18px 0;padding:16px;color:#704b0f;background:#fff7e5;border:1px solid #e9cc8c;border-radius:14px}.session-conflict strong{font-size:15px;line-height:1.35}.session-conflict p{margin:0;font-size:12px;line-height:1.55}.session-conflict-actions{margin-top:12px}.session-conflict-actions .button-secondary{text-align:center}

/* Selección de taxi por precio final y tarifa individual del conductor. */
.taxi-driver-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:292px;overflow:auto}.taxi-driver-option{position:relative;display:grid;align-content:start;gap:9px;min-width:0;padding:12px;color:var(--navy);background:#fff;border:1px solid #dfe5ed;border-radius:15px;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.taxi-driver-option:hover{transform:translateY(-1px);border-color:#78d3be}.taxi-driver-option.is-selected{background:#effbf7;border-color:#20b995;box-shadow:0 0 0 3px rgba(52,224,191,.17)}.taxi-driver-option-badges{display:flex;flex-wrap:wrap;gap:4px;min-height:18px}.taxi-driver-option-badges em{padding:3px 6px;color:#126c59;background:#dff8f1;border-radius:999px;font-size:7px;font-style:normal;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.taxi-driver-option-main{display:flex;align-items:center;gap:8px;min-width:0}.taxi-driver-option-main>i{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;color:#0e5f51;background:#c9f4e9;border-radius:50%;font-size:13px;font-style:normal;font-weight:900}.taxi-driver-option-main>span{display:grid;gap:2px;min-width:0}.taxi-driver-option-main b,.taxi-driver-option-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-driver-option-main b{font-size:12px}.taxi-driver-option-main small{color:#748094;font-size:8px}.taxi-driver-option>strong{font-size:20px;font-weight:900;letter-spacing:-.03em}.taxi-driver-option>strong small{font-size:8px;letter-spacing:0}.taxi-driver-option-rate{color:#7d8797;font-size:8px;font-weight:750}.taxi-rate-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.75fr);gap:22px;padding:20px;background:linear-gradient(135deg,#fff 0,#f2fbf8 100%);border:1px solid #dbeae6;border-radius:18px;box-shadow:0 10px 28px rgba(20,54,65,.07)}.taxi-rate-card>div{display:grid;align-content:center;gap:4px}.taxi-rate-card>div small{color:#16866b;font-size:9px;font-weight:900;letter-spacing:.11em}.taxi-rate-card h2{margin:0;color:var(--navy);font-size:19px}.taxi-rate-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.taxi-rate-card form{display:grid;gap:6px}.taxi-rate-card form>label{color:#637083;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.taxi-rate-card form>div{display:grid;grid-template-columns:auto minmax(70px,1fr) auto auto;align-items:center;gap:7px;padding:6px 6px 6px 11px;background:#fff;border:1px solid #d5dfeb;border-radius:12px}.taxi-rate-card input{width:100%;padding:7px 2px;border:0;outline:0;color:var(--navy);background:transparent;font:900 20px/1 inherit}.taxi-rate-card form>div>span{font-weight:900}.taxi-rate-card form>div>small{color:var(--muted);font-size:9px;font-weight:800}.taxi-rate-card .button{min-height:38px;padding:8px 12px}.taxi-price-approval{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;background:#fff7df;border:1px solid #efd17c;border-radius:13px}.taxi-price-approval>span{display:grid;gap:2px}.taxi-price-approval b{color:var(--navy);font-size:13px}.taxi-price-approval small{color:#78652f;font-size:10px}.taxi-price-approval .button{min-height:42px}
.taxi-price-approval-actions{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:4px;width:100%}.taxi-price-approval-actions form{min-width:0}.taxi-price-approval-actions form:first-child{width:min(340px,100%)}.taxi-price-approval-actions .button{width:100%;min-width:0;padding-inline:9px;white-space:nowrap}.taxi-price-approval-actions .taxi-price-cancel{width:auto;min-height:32px;padding:5px 12px;color:#b42335;background:transparent;border:0;box-shadow:none;font-size:11px;font-weight:650}
.taxi-price-approval-actions .button-primary,.taxi-price-approval-actions .button-primary:hover,.taxi-price-approval-actions .button-primary:focus-visible{color:#fff;background:#111827;border-color:#111827;box-shadow:0 5px 14px rgba(17,24,39,.2)}
.taxi-price-approval{display:grid;align-items:stretch;justify-content:stretch}.taxi-price-approval-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.taxi-price-approval-heading>span:first-child{display:grid;gap:2px}.taxi-price-approval .taxi-searching-price small{color:#687486;font-size:8px}
@media(max-width:680px){.taxi-driver-options{grid-template-columns:1fr;max-height:330px}.taxi-driver-option{grid-template-columns:minmax(0,1fr) auto;align-items:center}.taxi-driver-option-badges,.taxi-driver-option-main{grid-column:1}.taxi-driver-option>strong,.taxi-driver-option-rate{grid-column:2;text-align:right}.taxi-driver-option>strong{grid-row:2}.taxi-driver-option-rate{grid-row:3}.taxi-rate-card{grid-template-columns:1fr}.taxi-price-approval{align-items:stretch;flex-direction:column}.taxi-price-approval .button{width:100%}}
.taxi-first-rate-dialog{width:min(450px,calc(100% - 24px));margin:auto;padding:0;background:transparent;border:0}.taxi-first-rate-dialog::backdrop{background:rgba(8,20,38,.72);backdrop-filter:blur(5px)}.taxi-first-rate-card{position:relative;display:grid;justify-items:center;gap:9px;padding:31px 25px 24px;text-align:center;background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(8,20,38,.34)}.taxi-first-rate-close{position:absolute;top:12px;right:13px;width:34px;height:34px;color:#748094;background:#f2f4f7;border:0;border-radius:50%;font-size:22px;cursor:pointer}.taxi-first-rate-card>small{margin-top:3px;color:#536278;font-size:9px;font-weight:900;letter-spacing:.12em}.taxi-first-rate-card h2{margin:0;color:var(--navy);font-size:24px}.taxi-first-rate-card>p{max-width:350px;margin:0 0 7px;color:var(--muted);font-size:13px;line-height:1.55}.taxi-first-rate-card>label{display:grid;gap:6px;width:100%;color:var(--ink);font-size:12px;font-weight:800;text-align:left}.taxi-first-rate-card>label>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:54px;padding:0;overflow:hidden;background:#fff;border:1px solid #cfd7e3;border-radius:12px;box-shadow:inset 0 1px 2px rgba(16,25,53,.03)}.taxi-first-rate-card input{box-sizing:border-box;min-width:0;width:100%;min-height:52px;margin:0!important;padding:12px 16px!important;color:var(--navy)!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important;font-size:21px;font-weight:900;line-height:1;-webkit-appearance:none;-moz-appearance:textfield;appearance:textfield}.taxi-first-rate-card input::-webkit-inner-spin-button,.taxi-first-rate-card input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.taxi-first-rate-card label span{padding:0 15px 0 10px;color:#667286;font-size:11px;white-space:nowrap}.taxi-first-rate-card label small{color:var(--muted);font-size:10px;font-weight:500}.taxi-first-rate-card>label>div:focus-within{border-color:#6688b1;box-shadow:0 0 0 3px rgba(74,125,242,.12)}.taxi-first-rate-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:9px;width:100%;margin-top:8px}.taxi-profile-rate{display:grid;gap:12px}.taxi-profile-rate>div{display:flex;align-items:center;gap:10px}.taxi-profile-rate>div>span{display:grid;place-items:center;width:36px;height:36px;color:#0d6654;background:#dcf8f0;border-radius:10px}.taxi-profile-rate>div svg{width:19px;height:19px}.taxi-profile-rate>div>div{display:grid;gap:2px}.taxi-profile-rate>div small{color:#16866b;font-size:8px;font-weight:900;letter-spacing:.1em}.taxi-profile-rate h2{margin:0!important;font-size:16px!important}.taxi-profile-rate form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.taxi-profile-rate label{display:flex;align-items:center;gap:6px;padding:0 10px;background:var(--canvas);border:1px solid var(--line);border-radius:10px}.taxi-profile-rate input{min-width:0;width:100%;padding:10px 0;background:transparent;border:0;outline:0;font-size:16px;font-weight:800}.taxi-profile-rate label span{color:var(--muted);font-size:9px;font-weight:700;white-space:nowrap}.taxi-profile-rate .button{min-height:42px;padding:8px 12px}.taxi-profile-rate>p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}@media(max-width:460px){.taxi-first-rate-card{padding:27px 18px 20px}.taxi-first-rate-actions{grid-template-columns:1fr}.taxi-first-rate-actions .button-primary{grid-row:1}.taxi-profile-rate form{grid-template-columns:1fr}.taxi-profile-rate .button{width:100%}}
/* El campo de tarifa es una sola superficie: el foco pertenece al contenedor completo. */
.taxi-profile-rate label{cursor:text;transition:border-color .18s,box-shadow .18s}
.taxi-profile-rate label:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}
.taxi-profile-rate input,.taxi-profile-rate input:focus,.taxi-profile-rate input:focus-visible{-webkit-appearance:none!important;appearance:textfield!important;margin:0!important;background:var(--canvas)!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent}
.taxi-profile-rate input::-webkit-inner-spin-button,.taxi-profile-rate input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.taxi-profile-rate input:-webkit-autofill,.taxi-profile-rate input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--canvas) inset!important;border-radius:0!important}
.taxi-special-routes{display:grid;gap:14px}.taxi-special-routes-heading{display:flex;align-items:flex-start;gap:11px}.taxi-special-routes-heading>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:#176bff;background:#e8efff;border-radius:11px}.taxi-special-routes-heading svg{width:19px;height:19px}.taxi-special-routes-heading>div{display:grid;gap:2px}.taxi-special-routes-heading small{color:#16866b;font-size:8px;font-weight:900;letter-spacing:.1em}.taxi-special-routes-heading h2{margin:0!important;font-size:18px!important}.taxi-special-routes-heading p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.taxi-special-routes-empty{margin:0;padding:12px;color:var(--muted);background:var(--canvas);border:1px dashed var(--line);border-radius:11px;font-size:11px;text-align:center}.taxi-special-route-list{display:grid;gap:7px}.taxi-special-route-saved{display:grid;grid-template-columns:minmax(0,1fr) auto 30px;align-items:center;gap:7px;padding:8px 8px 8px 12px;background:var(--canvas);border:1px solid var(--line);border-radius:11px}.taxi-special-route-saved>span{display:grid;gap:2px;min-width:0}.taxi-special-route-saved b{overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.taxi-special-route-saved small{color:var(--muted);font-size:9px}.taxi-special-route-saved>button{padding:7px 9px;color:#0d6654;background:#e5f8f2;border:0;border-radius:8px;font-size:11px;font-weight:850;cursor:pointer}.taxi-special-route-saved form{display:block}.taxi-special-route-saved form button{display:grid;place-items:center;width:30px;height:30px;padding:0;color:#b74551;background:#fff;border:1px solid #ead4d7;border-radius:8px;font-size:18px;cursor:pointer}.taxi-special-routes>.button{margin-top:2px}.taxi-special-routes>.button svg{width:16px;height:16px}.taxi-special-route-dialog-card .profile-change-heading small{color:#16866b;font-size:9px;font-weight:900;letter-spacing:.1em}.taxi-special-route-dialog-card .profile-change-heading h2{margin:4px 0 0}.taxi-special-route-dialog-card select{width:100%;min-height:48px;padding:11px 38px 11px 12px;color:var(--ink);background:#fff;border:1px solid #d8dee7;border-radius:11px;font-size:15px}.taxi-special-route-dialog-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;background:#fff;border:1px solid #d8dee7;border-radius:11px}.taxi-special-route-dialog-price:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(74,125,242,.08)}.taxi-special-route-dialog-price input{min-width:0;width:100%;padding:12px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important;font-size:17px;font-weight:800;-moz-appearance:textfield}.taxi-special-route-dialog-price input::-webkit-inner-spin-button,.taxi-special-route-dialog-price input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.taxi-special-route-dialog-price span{padding-right:12px;color:var(--muted);font-size:10px;font-weight:800}.taxi-special-route-dialog-note{margin-top:-7px;color:var(--muted);font-size:10px;line-height:1.4}@media(max-width:460px){.taxi-special-route-saved{grid-template-columns:minmax(0,1fr) auto 30px}.taxi-special-route-saved small{display:none}}
.taxi-special-route-saved{grid-template-columns:minmax(0,1fr) auto auto}.taxi-special-route-saved-price{color:#0d6654;font-size:11px;white-space:nowrap}.taxi-special-route-actions{display:flex;align-items:center;gap:6px}.taxi-special-route-actions .taxi-special-route-edit,.taxi-special-route-actions .taxi-special-route-delete{display:inline-flex;align-items:center;justify-content:center;width:auto;height:32px;padding:0 10px;border-radius:8px;font-size:10px;font-weight:850;cursor:pointer}.taxi-special-route-actions .taxi-special-route-edit{color:#0d6654;background:#e5f8f2;border:1px solid #bfe8dc}.taxi-special-route-actions .taxi-special-route-delete{color:#b74551;background:#fff;border:1px solid #ead4d7}@media(max-width:560px){.taxi-special-route-saved{grid-template-columns:minmax(0,1fr) auto}.taxi-special-route-actions{grid-column:1/-1;justify-content:flex-end}.taxi-special-route-saved small{display:block}}
.taxi-special-route-saved{min-height:62px;padding:10px 11px;column-gap:9px}.taxi-special-route-saved>span,.taxi-special-route-saved-price{align-self:start}.taxi-special-route-saved b{max-width:100%;font-size:15px;line-height:1.25}.taxi-special-route-saved small{font-size:10px;line-height:1.3}.taxi-special-route-saved-price{font-size:16px;font-weight:900;line-height:1.2}.taxi-special-route-saved[data-route-group="airport"],.taxi-special-route-saved[data-route-group="outside"]{background:#f2fbf8;border-color:#bfe8dc}.taxi-special-route-saved[data-route-group="airport"] b,.taxi-special-route-saved[data-route-group="outside"] b{color:#0d6654;font-size:16px}@media(max-width:560px){.taxi-special-route-saved b{white-space:normal}.taxi-special-route-saved-price{font-size:16px}}
.taxi-special-schedule-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.taxi-special-schedule-note{padding:10px 12px!important;color:#526078!important;background:#f3f8ff;border-radius:11px}.taxi-special-submitted-dialog .taxi-destination-card{text-align:center}.taxi-special-submitted-dialog .taxi-destination-card>header{justify-content:center}.taxi-special-submitted-dialog .button{width:100%}.taxi-special-booking-summary{display:grid;gap:8px;margin:0 0 12px;padding:12px;background:#fff;border:1px solid #dce5ef;border-radius:15px;box-shadow:0 8px 22px rgba(16,31,55,.06)}.taxi-special-booking-summary>header{display:flex;align-items:center;justify-content:space-between}.taxi-special-booking-summary>header small{color:#16866b;font-size:9px;font-weight:900;letter-spacing:.09em}.taxi-special-booking-summary>header a{color:#2467d1;font-size:10px;font-weight:850;text-decoration:none}.taxi-special-booking-summary article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;background:#f5f8fb;border-radius:10px}.taxi-special-booking-summary article>span{display:grid;gap:2px}.taxi-special-booking-summary article b{font-size:12px}.taxi-special-booking-summary article small{color:var(--muted);font-size:9px}.taxi-special-booking-summary article>strong{color:#9a6b00;font-size:9px;text-align:right}.taxi-special-booking-summary article>strong.is-confirmed{color:#16866b}
.taxi-special-datetime-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(130px,.75fr);gap:12px}.taxi-special-date-field{display:grid;gap:6px}.taxi-special-date-field>span{font-size:12px;font-weight:800}.taxi-special-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 13px;color:#18233d;background:#fff;border:1px solid #cfd8e6;border-radius:11px;cursor:pointer;text-align:left;transition:border-color .16s,box-shadow .16s}.taxi-special-date-trigger:hover,.taxi-special-date-trigger:focus-visible{border-color:#2778e9;box-shadow:0 0 0 3px rgba(39,120,233,.12);outline:0}.taxi-special-date-trigger b{font-size:15px;letter-spacing:.02em}.taxi-special-date-trigger small{color:#65738a;font-size:9px;font-weight:800}.taxi-special-calendar{padding:14px;background:#f8faff;border:1px solid #dce4ef;border-radius:15px;box-shadow:0 10px 28px rgba(20,38,68,.08)}.taxi-special-calendar[hidden]{display:none}.taxi-special-calendar>header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;margin-bottom:10px}.taxi-special-calendar>header strong{text-align:center;text-transform:capitalize}.taxi-special-calendar>header button{display:grid;place-items:center;width:34px;height:34px;color:#1b2c48;background:#fff;border:1px solid #d8e0eb;border-radius:10px;font-size:23px;line-height:1;cursor:pointer}.taxi-special-calendar>header button:last-child{justify-self:end}.taxi-special-calendar>header button:disabled{opacity:.32;cursor:not-allowed}.taxi-special-calendar-weekdays,.taxi-special-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.taxi-special-calendar-weekdays{margin-bottom:5px}.taxi-special-calendar-weekdays span{color:#7a8799;font-size:9px;font-weight:900;text-align:center;text-transform:uppercase}.taxi-special-calendar-days button,.taxi-special-calendar-days .is-empty{aspect-ratio:1;min-height:34px}.taxi-special-calendar-days button{display:grid;place-items:center;color:#263650;background:#fff;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:800;cursor:pointer}.taxi-special-calendar-days button:hover:not(:disabled),.taxi-special-calendar-days button:focus-visible{border-color:#2b78df;outline:0}.taxi-special-calendar-days button.is-today{border-color:#a8b8cc}.taxi-special-calendar-days button.is-selected{color:#10284d;background:#ffd552;border-color:#edc034;box-shadow:0 4px 10px rgba(190,143,0,.18)}.taxi-special-calendar-days button:disabled{color:#b5beca;background:transparent;cursor:not-allowed}.taxi-special-schedule-dialog .taxi-destination-card{width:min(490px,calc(100vw - 28px));max-height:min(92vh,760px);overflow:auto}@media(max-width:520px){.taxi-special-datetime-grid{grid-template-columns:1fr}.taxi-special-calendar{padding:11px}.taxi-special-calendar-days button,.taxi-special-calendar-days .is-empty{min-height:32px}.taxi-special-date-trigger small{display:none}}
.taxi-driver-special-bookings{display:grid;gap:9px;margin:8px 0 14px;padding:12px;background:#f2fbf8;border:1px solid #bfe8dc;border-radius:15px}.taxi-driver-special-bookings>header small{color:#16866b;font-size:8px;font-weight:900;letter-spacing:.1em}.taxi-driver-special-bookings>header h2{margin:2px 0 0;font-size:16px}.taxi-driver-special-bookings>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px;background:#fff;border:1px solid #d9eee8;border-radius:11px}.taxi-driver-special-bookings article>div{display:grid;gap:2px}.taxi-driver-special-bookings article b{font-size:13px}.taxi-driver-special-bookings article p{margin:0;color:#16866b;font-size:10px;font-weight:800}.taxi-driver-special-bookings article small{color:var(--muted);font-size:9px}.taxi-driver-special-bookings article>strong{font-size:15px;white-space:nowrap}.taxi-driver-special-bookings article>strong small{font-size:8px}.taxi-driver-special-bookings footer{display:grid;grid-column:1/-1;grid-template-columns:1fr 1.4fr;gap:7px}.taxi-driver-special-bookings footer form,.taxi-driver-special-bookings footer .button{width:100%}.taxi-driver-special-bookings footer .button{min-height:38px;padding:7px 9px;font-size:10px}.taxi-driver-special-bookings.is-scheduled{background:#f2f6ff;border-color:#ccdafa}
.taxi-driver-special-bookings.is-scheduled footer{grid-template-columns:1fr 1fr 1.35fr}
.taxi-offer-price-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.taxi-offer-countdown,.taxi-searching-countdown{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;color:#775600;background:#fff5cf;border:1px solid #edd37c;border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap}.taxi-searching-countdown{margin-top:7px}.taxi-searching-countdown b{font-size:10px}

/* Búsqueda previa: la persona elige uno de tres conductores antes de enviar. */
.taxi-driver-search-dialog{width:min(720px,calc(100% - 22px));max-height:calc(100dvh - 22px);margin:auto;padding:0;overflow:auto;background:transparent;border:0;border-radius:28px}.taxi-driver-search-dialog::backdrop{background:rgba(4,13,27,.76);backdrop-filter:blur(7px)}.taxi-driver-search-card{position:relative;display:grid;gap:0;overflow:hidden;color:#fff;background:linear-gradient(155deg,#07182d 0,#102846 52%,#0a1b31 100%);border:1px solid rgba(255,255,255,.13);border-radius:28px;box-shadow:0 34px 90px rgba(0,0,0,.5)}.taxi-driver-search-close{position:absolute;z-index:3;top:14px;right:14px;display:grid;place-items:center;width:36px;height:36px;padding:0;color:#dbe5f2;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:50%;font-size:23px;line-height:1;cursor:pointer}.taxi-driver-search-hero{display:grid;justify-items:center;padding:28px 54px 18px;text-align:center}.taxi-driver-search-hero .taxi-searching-kicker{margin-bottom:7px}.taxi-driver-search-radar{position:relative;display:grid;place-items:center;width:92px;height:92px;margin:2px 0 9px}.taxi-driver-search-radar>i{position:absolute;inset:50%;border:1px solid rgba(52,224,191,.35);border-radius:50%;transform:translate(-50%,-50%);animation:taxiSearchRadar 2.7s ease-out infinite}.taxi-driver-search-radar>i:nth-child(2){animation-delay:.9s}.taxi-driver-search-radar>i:nth-child(3){animation-delay:1.8s}.taxi-driver-search-radar>span{position:relative;z-index:2;display:grid;place-items:center;width:48px;height:48px;color:#07182d;background:linear-gradient(145deg,#7af0da,#2fd7b9);border:4px solid #fff;border-radius:16px;box-shadow:0 12px 28px rgba(0,0,0,.3),0 0 0 9px rgba(52,224,191,.1)}.taxi-driver-search-radar svg{width:25px;height:25px}.taxi-driver-search-hero h2{margin:0;font-size:28px;letter-spacing:-.035em}.taxi-driver-search-hero>p{margin:6px 0 0;color:#afbed0;font-size:12px}.taxi-driver-search-route{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;margin:0 20px 15px;padding:12px 14px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.09);border-radius:15px}.taxi-driver-search-route>span{display:grid;gap:3px;min-width:0}.taxi-driver-search-route small{color:#7f95ad;font-size:7px;font-weight:900;letter-spacing:.12em}.taxi-driver-search-route b{display:flex;align-items:center;gap:7px;min-width:0;color:#f7fbff;font-size:10px}.taxi-driver-search-route b em{overflow:hidden;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.taxi-driver-search-route b i{color:#62dec8;font-style:normal}.taxi-driver-search-route strong{color:#fff;font-size:13px;white-space:nowrap}.taxi-driver-search-results{display:grid;gap:12px;padding:18px 20px 16px;color:var(--navy);background:#f6f8fb;border-radius:25px 25px 0 0}.taxi-driver-search-results>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.taxi-driver-search-results>header>div{display:grid;gap:2px}.taxi-driver-search-results>header small{color:#159174;font-size:8px;font-weight:900;letter-spacing:.11em}.taxi-driver-search-results h3{margin:0;font-size:18px;letter-spacing:-.02em}.taxi-driver-search-results>header>span{padding:5px 8px;color:#6c788b;background:#e8ecf2;border-radius:999px;font-size:8px;font-weight:850}.taxi-driver-search-status{margin:0;padding:28px 12px;color:#6f7b8e;text-align:center;font-size:12px}.taxi-driver-search-dialog .taxi-driver-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:none;overflow:visible}.taxi-driver-search-dialog .taxi-driver-option{display:grid;grid-template-columns:1fr;justify-items:center;align-content:start;gap:7px;padding:11px 9px 10px;text-align:center;background:#fff;border:1px solid #dfe5ed;border-radius:18px;box-shadow:0 7px 20px rgba(12,29,52,.06)}.taxi-driver-search-dialog .taxi-driver-option:hover{border-color:#45cdb2;box-shadow:0 10px 25px rgba(23,126,105,.12)}.taxi-driver-search-dialog .taxi-driver-option:disabled{cursor:wait;opacity:.72}.taxi-driver-search-dialog .taxi-driver-option-badges{grid-column:auto;justify-content:center;min-height:17px}.taxi-driver-search-dialog .taxi-driver-option-badges em{color:#116c59;background:#dff8f1}.taxi-driver-search-dialog .taxi-driver-option-main{grid-column:auto;display:grid;justify-items:center;gap:6px;width:100%}.taxi-driver-search-dialog .taxi-driver-option-main>i{display:grid;place-items:center;width:44px;height:44px;color:#0d6654;background:linear-gradient(145deg,#d9faf1,#baf0e2);border-radius:14px;box-shadow:inset 0 0 0 1px rgba(23,155,126,.08)}.taxi-driver-search-dialog .taxi-driver-option-main>i svg{width:24px;height:24px}.taxi-driver-search-dialog .taxi-driver-option-main>span{justify-items:center;width:100%}.taxi-driver-search-dialog .taxi-driver-option-main b{max-width:100%;font-size:11px}.taxi-driver-search-dialog .taxi-driver-option-main small{max-width:100%;font-size:7px}.taxi-driver-search-dialog .taxi-driver-option>strong{grid-column:auto;grid-row:auto;font-size:19px;text-align:center}.taxi-driver-search-dialog .taxi-driver-option>strong small{font-size:7px}.taxi-driver-search-dialog .taxi-driver-option-rate{grid-column:auto;grid-row:auto;font-size:7px;text-align:center}.taxi-driver-option-action{display:block;width:100%;padding:7px 5px;color:#092f28;background:#44dfc2;border-radius:9px;font-size:9px;font-weight:900}.taxi-driver-search-card>.taxi-request-confirm-note{margin:0;padding:11px 20px;color:#b7c7d8;background:#0b1c32;border-radius:0;font-size:9px}.taxi-driver-search-card>.taxi-request-confirm-note svg{color:#48ddc1}.taxi-driver-search-back{width:100%;padding:12px;color:#91a4b9;background:#08182b;border:0;border-top:1px solid rgba(255,255,255,.06);font-size:10px;font-weight:800;cursor:pointer}@media(max-width:560px){.taxi-driver-search-dialog{width:calc(100% - 12px);max-height:calc(100dvh - 12px);border-radius:24px}.taxi-driver-search-card{border-radius:24px}.taxi-driver-search-hero{padding:22px 42px 13px}.taxi-driver-search-radar{width:76px;height:76px;margin-bottom:6px}.taxi-driver-search-radar>span{width:42px;height:42px;border-radius:14px}.taxi-driver-search-radar svg{width:22px;height:22px}.taxi-driver-search-hero h2{font-size:23px}.taxi-driver-search-hero>p{font-size:10px}.taxi-driver-search-route{grid-template-columns:minmax(0,1fr) auto;margin:0 10px 10px;padding:10px 11px}.taxi-driver-search-route>span:first-child{grid-column:1/-1}.taxi-driver-search-results{gap:10px;padding:14px 9px 12px;border-radius:20px 20px 0 0}.taxi-driver-search-results h3{font-size:16px}.taxi-driver-search-dialog .taxi-driver-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:none}.taxi-driver-search-dialog .taxi-driver-option{grid-template-columns:1fr;gap:5px;padding:9px 5px 7px;border-radius:14px}.taxi-driver-search-dialog .taxi-driver-option-badges{grid-column:auto;min-height:14px}.taxi-driver-search-dialog .taxi-driver-option-badges em{padding:2px 4px;font-size:5px}.taxi-driver-search-dialog .taxi-driver-option-main{grid-column:auto}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:38px;height:38px;border-radius:12px}.taxi-driver-search-dialog .taxi-driver-option-main>i svg{width:21px;height:21px}.taxi-driver-search-dialog .taxi-driver-option-main b{font-size:9px}.taxi-driver-search-dialog .taxi-driver-option-main small{font-size:6px}.taxi-driver-search-dialog .taxi-driver-option-main small:first-of-type{display:none}.taxi-driver-search-dialog .taxi-driver-option>strong{grid-column:auto;grid-row:auto;font-size:16px}.taxi-driver-search-dialog .taxi-driver-option-rate{grid-column:auto;grid-row:auto;font-size:6px}.taxi-driver-option-action{padding:6px 3px;font-size:8px}}

/* Composición final del buscador: cabecera oscura, conductores y ruta. */
.taxi-driver-search-dialog{width:min(560px,calc(100% - 20px));border-radius:0}.taxi-driver-search-dialog .taxi-driver-search-card{gap:10px;overflow:visible;color:var(--navy);background:transparent;border:0;border-radius:0;box-shadow:none}.taxi-driver-search-dialog .taxi-driver-search-hero{position:relative;padding:24px 46px 20px;color:#fff;background:linear-gradient(145deg,rgba(5,20,39,.93),rgba(16,42,70,.88));border:1px solid rgba(255,255,255,.15);border-radius:24px;box-shadow:0 18px 48px rgba(0,0,0,.3);backdrop-filter:blur(16px)}.taxi-driver-search-dialog .taxi-driver-search-radar{width:78px;height:78px;margin:0 0 7px}.taxi-driver-search-dialog .taxi-driver-search-radar>span{width:42px;height:42px;border-radius:50%}.taxi-driver-search-dialog .taxi-driver-search-radar svg{width:21px;height:21px}.taxi-driver-search-dialog .taxi-driver-search-hero h2{font-size:25px}.taxi-driver-search-dialog .taxi-driver-search-results{gap:10px;padding:15px 14px 13px;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.85);border-radius:20px;box-shadow:0 14px 38px rgba(4,18,36,.2)}.taxi-driver-search-dialog .taxi-driver-search-results>header{padding:0 2px}.taxi-driver-search-dialog .taxi-driver-search-results h3{font-size:16px}.taxi-driver-search-dialog .taxi-driver-options{align-items:start;gap:7px}.taxi-driver-search-dialog .taxi-driver-option{gap:4px;padding:4px 3px 6px;background:transparent;border:0;border-radius:14px;box-shadow:none}.taxi-driver-search-dialog .taxi-driver-option:hover{background:#eefaf7;border:0;box-shadow:none;transform:translateY(-1px)}.taxi-driver-search-dialog .taxi-driver-option-badges{order:2;min-height:13px}.taxi-driver-search-dialog .taxi-driver-option-badges em{padding:2px 4px;font-size:5px}.taxi-driver-search-dialog .taxi-driver-option-main{order:1;gap:5px}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:54px;height:54px;color:#fff;background:linear-gradient(145deg,#1a806c,#21b895);border:4px solid #d9f7ef;border-radius:50%;box-shadow:0 7px 16px rgba(22,139,113,.2);font-size:18px;font-weight:900}.taxi-driver-search-dialog .taxi-driver-option-main>span{gap:1px}.taxi-driver-search-dialog .taxi-driver-option-main b{font-size:10px}.taxi-driver-search-dialog .taxi-driver-option-main small{font-size:6px}.taxi-driver-search-dialog .taxi-driver-option>strong{order:3;color:#0b1729;font-size:18px}.taxi-driver-search-dialog .taxi-driver-option-rate{order:4}.taxi-driver-search-dialog .taxi-driver-option-action{order:5;width:auto;padding:4px 10px;color:#14735f;background:#ddf7f0;border-radius:999px;font-size:7px}.taxi-driver-search-safety{display:flex;align-items:center;justify-content:center;gap:6px;margin:1px 0 0;color:#657286;font-size:8px;text-align:center}.taxi-driver-search-safety svg{width:13px;height:13px;color:#159174}.taxi-driver-search-trip{padding:15px 16px 12px;color:var(--navy);background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.85);border-radius:20px;box-shadow:0 14px 38px rgba(4,18,36,.2)}.taxi-driver-search-trip>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid #e6ebf1}.taxi-driver-search-trip>header small{color:#16866b;font-size:8px;font-weight:900;letter-spacing:.11em}.taxi-driver-search-trip>header strong{font-size:10px}.taxi-driver-search-leg{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:10px}.taxi-driver-search-leg>i{box-sizing:border-box;width:13px;height:13px;background:#fff;border:4px solid #176bff;border-radius:50%}.taxi-driver-search-leg.is-destination>i{border-color:#ffc94a}.taxi-driver-search-leg>span{display:grid;gap:2px;min-width:0}.taxi-driver-search-leg small{color:#8b96a5;font-size:7px;font-weight:900;letter-spacing:.1em}.taxi-driver-search-leg b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.taxi-driver-search-line{width:2px;height:16px;margin:2px 0 2px 5px;background:repeating-linear-gradient(#aeb8c6 0 3px,transparent 3px 6px)}.taxi-driver-search-trip .taxi-driver-search-back{margin-top:12px;padding:9px;color:#607087;background:#f2f5f8;border:0;border-radius:10px;font-size:9px}@media(max-width:560px){.taxi-driver-search-dialog{width:calc(100% - 14px)}.taxi-driver-search-dialog .taxi-driver-search-card{gap:7px}.taxi-driver-search-dialog .taxi-driver-search-hero{padding:18px 38px 15px;border-radius:20px}.taxi-driver-search-dialog .taxi-driver-search-radar{width:65px;height:65px}.taxi-driver-search-dialog .taxi-driver-search-hero h2{font-size:22px}.taxi-driver-search-dialog .taxi-driver-search-results{padding:12px 8px 10px;border-radius:17px}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:46px;height:46px;border-width:3px;font-size:16px}.taxi-driver-search-dialog .taxi-driver-option>strong{font-size:15px}.taxi-driver-search-dialog .taxi-driver-option-main small:first-of-type{display:none}.taxi-driver-search-trip{padding:12px 13px 10px;border-radius:17px}}
.taxi-driver-search-dialog{height:min(720px,calc(100dvh - 20px))}.taxi-driver-search-dialog .taxi-driver-search-card{display:flex;min-height:100%;box-sizing:border-box;flex-direction:column}.taxi-driver-search-dialog .taxi-driver-search-trip{margin-top:auto}@media(max-width:560px){.taxi-driver-search-dialog{height:calc(100dvh - 14px)}}

/* Resultados ligeros: sin caja vacía y un círculo de cristal por conductor. */
.taxi-driver-search-dialog .taxi-driver-search-results{padding:10px 12px 12px;color:#fff;background:rgba(8,27,49,.42);border:1px solid rgba(255,255,255,.11);box-shadow:0 14px 38px rgba(4,18,36,.16);backdrop-filter:blur(14px)}
.taxi-driver-search-dialog .taxi-driver-search-results.is-empty{padding:4px 18px;color:#b8c7d8;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.taxi-driver-search-dialog .taxi-driver-search-results.is-empty .taxi-driver-search-status{padding:9px 8px;color:#b8c7d8;background:transparent}
.taxi-driver-search-dialog .taxi-driver-search-results>header small{color:#65e2c8}.taxi-driver-search-dialog .taxi-driver-search-results>header>span{color:#c6d2df;background:rgba(255,255,255,.1)}
.taxi-driver-search-dialog .taxi-driver-options{justify-items:center;gap:12px}
.taxi-driver-search-dialog .taxi-driver-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;color:#fff;background:transparent;border:0;box-shadow:none}
.taxi-driver-search-dialog .taxi-driver-option:hover{background:transparent;transform:translateY(-2px)}
.taxi-driver-search-dialog .taxi-driver-option-main{display:flex;flex-direction:column;gap:5px}
.taxi-driver-search-dialog .taxi-driver-option-main>i{width:66px;height:66px;color:#fff;background:linear-gradient(145deg,rgba(71,222,193,.42),rgba(24,119,105,.5));border:1px solid rgba(150,255,234,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 10px 26px rgba(0,0,0,.2);backdrop-filter:blur(10px);font-size:20px}
.taxi-driver-search-dialog .taxi-driver-option-main b{color:#f7fbff;font-size:10px}.taxi-driver-search-dialog .taxi-driver-option-main small{color:#9fb1c4}.taxi-driver-search-dialog .taxi-driver-option-badges{display:none}
.taxi-driver-search-dialog .taxi-driver-option>strong{margin-top:2px;color:#fff;font-size:19px;line-height:1}.taxi-driver-search-dialog .taxi-driver-option>strong small{color:#aebfd0}.taxi-driver-search-dialog .taxi-driver-option-rate{color:#91a6ba}.taxi-driver-search-dialog .taxi-driver-option-action{display:none}
.taxi-driver-search-dialog .taxi-driver-search-safety{color:#aebfd0}.taxi-driver-search-dialog .taxi-driver-search-safety svg{color:#5be1c6}
@media(max-width:560px){.taxi-driver-search-dialog .taxi-driver-search-results{padding:10px 7px}.taxi-driver-search-dialog .taxi-driver-options{gap:5px}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:58px;height:58px;font-size:18px}.taxi-driver-search-dialog .taxi-driver-option>strong{font-size:16px}}

/* Los taxis disponibles forman un bloque compacto justo encima de la ruta. */
.taxi-driver-search-dialog .taxi-driver-search-results{margin-top:auto}.taxi-driver-search-dialog .taxi-driver-search-trip{margin-top:0}
.taxi-driver-search-dialog .taxi-driver-option-main>i svg{width:28px;height:28px}.taxi-driver-search-dialog .taxi-driver-option-main>span{display:block}.taxi-driver-search-dialog .taxi-driver-option-main small{color:#c4d2df;font-size:9px;font-weight:750}.taxi-driver-search-dialog .taxi-driver-option>strong{margin-top:1px}
@media(max-width:560px){.taxi-driver-search-dialog .taxi-driver-option-main>i svg{width:25px;height:25px}.taxi-driver-search-dialog .taxi-driver-option-main small{font-size:8px}}

/* Conductores flotantes, sin contenedor visual ni textos auxiliares. */
.taxi-driver-search-dialog .taxi-driver-search-results,.taxi-driver-search-dialog .taxi-driver-search-results.is-empty{padding:4px 8px;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.taxi-driver-search-dialog .taxi-driver-options{padding:4px 0}.taxi-driver-search-dialog .taxi-driver-option-main>i{font-size:21px;font-weight:900}.taxi-driver-search-dialog .taxi-searching-kicker{justify-self:center;align-self:center;text-align:center}
@media(max-width:560px){.taxi-driver-search-dialog .taxi-driver-search-results,.taxi-driver-search-dialog .taxi-driver-search-results.is-empty{padding:3px 2px}.taxi-driver-search-dialog .taxi-driver-option-main>i{font-size:19px}}

/* La búsqueda ocupa y se centra en todo el espacio libre sobre los resultados. */
.taxi-driver-search-dialog .taxi-driver-search-hero{flex:1;align-content:center;min-height:0}.taxi-driver-search-dialog .taxi-driver-search-results{margin-top:0}

/* El área centra la búsqueda; la tarjeta oscura conserva una altura compacta. */
.taxi-driver-search-dialog .taxi-driver-search-hero{display:grid;place-items:center;padding:10px 0;color:#fff;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.taxi-driver-search-dialog .taxi-driver-search-hero-panel{box-sizing:border-box;display:grid;justify-items:center;width:100%;padding:22px 46px 18px;text-align:center;background:linear-gradient(145deg,rgba(5,20,39,.93),rgba(16,42,70,.88));border:1px solid rgba(255,255,255,.15);border-radius:24px;box-shadow:0 18px 48px rgba(0,0,0,.3);backdrop-filter:blur(16px)}
.taxi-driver-search-dialog .taxi-driver-search-hero-panel>p{margin:6px 0 0;color:#afbed0;font-size:12px}
@media(max-width:560px){.taxi-driver-search-dialog .taxi-driver-search-hero{padding:7px 0}.taxi-driver-search-dialog .taxi-driver-search-hero-panel{padding:18px 38px 15px;border-radius:20px}.taxi-driver-search-dialog .taxi-driver-search-hero-panel>p{font-size:10px}}

@media(max-width:680px){.mobile-nav.mobile-nav-taxi-passenger{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Panel del taxista sobre el mismo mapa de la experiencia de pasajero. */
.taxi-driver-map-dashboard{position:relative;height:calc(100dvh - 72px);min-height:560px;overflow:hidden;background:#dce7e8}
.taxi-driver-map{position:absolute;z-index:0;inset:0;overflow:hidden;background:linear-gradient(145deg,#dbe6e7,#edf1ed)}
.taxi-driver-raster-map{position:absolute;z-index:1;inset:0;visibility:visible;background:#f4f1e9}
.taxi-driver-map.is-offline-map .taxi-driver-raster-map{background:#f2f1eb}
.taxi-driver-map.has-raster-map .taxi-driver-raster-map{visibility:visible}
.taxi-driver-map.is-fallback-centered .taxi-driver-raster-map{visibility:visible}
.taxi-driver-map.is-fallback-centered:not(.has-raster-map) .taxi-driver-map-unavailable{z-index:2}
body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom{overflow:hidden;border:1px solid rgba(8,20,38,.14);border-radius:0;box-shadow:0 6px 22px rgba(8,20,38,.17)}
body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom a{box-sizing:border-box;width:42px;height:42px;line-height:40px;border-radius:0;font-size:23px;font-weight:600;touch-action:manipulation}
.taxi-driver-raster-map .leaflet-top.leaflet-left{top:118px;left:10px}
.taxi-driver-rotation-lock{position:absolute;z-index:3;top:16px;left:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;color:#10243b;background:rgba(255,255,255,.28);border:1px solid rgba(255,255,255,.42);border-radius:13px;box-shadow:0 5px 16px rgba(8,24,42,.1);cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.taxi-driver-rotation-lock svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.taxi-driver-rotation-lock svg[hidden]{display:none}.taxi-driver-rotation-lock.is-locked{color:#fff;background:rgba(10,24,44,.34);border-color:rgba(255,255,255,.38)}
.taxi-driver-recenter{position:absolute;z-index:3;top:120px;bottom:auto;left:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;color:rgba(16,36,59,.82);background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.72);border-radius:13px;box-shadow:0 4px 14px rgba(8,24,42,.13);opacity:1;cursor:pointer;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.taxi-driver-recenter svg{display:block;width:29px;height:29px;fill:currentColor;stroke:none;transform:translate(-1px,1px)}.taxi-driver-recenter:hover,.taxi-driver-recenter:focus-visible{color:#10243b;background:rgba(255,255,255,.82);box-shadow:0 6px 18px rgba(8,24,42,.18)}.taxi-driver-recenter:active{transform:scale(.94)}.taxi-driver-recenter:focus-visible{outline:3px solid rgba(23,107,255,.3);outline-offset:2px}
.taxi-driver-orientation-enable{position:absolute;z-index:3;top:68px;left:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;color:#10243b;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.9);border-radius:13px;box-shadow:0 5px 16px rgba(8,24,42,.13);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}.taxi-driver-orientation-enable svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.taxi-driver-orientation-enable.is-active{color:#07251f;background:#34e0bf;border-color:#8df1df;box-shadow:0 6px 18px rgba(13,126,105,.25)}.taxi-driver-orientation-enable.is-requesting{cursor:wait;opacity:.72}.taxi-driver-orientation-enable.is-unavailable,.taxi-driver-orientation-enable:disabled{color:#7d8793;background:rgba(226,230,234,.82);border-color:rgba(255,255,255,.65);box-shadow:0 4px 12px rgba(8,24,42,.07);cursor:not-allowed;opacity:.66}.taxi-driver-orientation-enable:not(:disabled):active{transform:scale(.96)}.taxi-driver-orientation-enable:focus-visible{outline:3px solid rgba(23,107,255,.3);outline-offset:2px}
.taxi-driver-map-unavailable{position:absolute;z-index:0;top:42%;left:50%;display:flex;align-items:center;gap:10px;padding:11px 14px;color:#536276;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.8);border-radius:15px;box-shadow:0 8px 22px rgba(20,45,57,.08);transform:translate(-50%,-50%)}
.taxi-driver-map-unavailable>svg{width:22px;height:22px;color:#176bff}.taxi-driver-map-unavailable>span{display:grid;gap:2px;white-space:nowrap}.taxi-driver-map-unavailable b{font-size:12px}.taxi-driver-map-unavailable small{font-size:9px}
.taxi-driver-map.has-raster-map .taxi-driver-map-unavailable{display:none}
.taxi-driver-offline-map-missing[hidden]{display:none}
.taxi-driver-offline-map-missing{position:absolute;z-index:2;inset:0;display:grid;place-items:center;padding:24px 22px 180px;background:transparent;text-align:center;pointer-events:none}
.taxi-driver-offline-map-missing>div{display:grid;justify-items:center;gap:9px;width:min(100%,340px);padding:25px 22px;color:#17243a;background:#fff;border:1px solid #e3e8e9;border-radius:20px;box-shadow:0 12px 30px rgba(16,35,48,.08);pointer-events:auto}
.taxi-driver-offline-map-missing strong{font-size:20px}.taxi-driver-offline-map-missing p{margin:0;color:#566273;font-size:14px;line-height:1.4}.taxi-driver-offline-map-missing b{font-size:16px;line-height:1.35}.taxi-driver-offline-map-missing small{color:#687587;font-size:12px;line-height:1.5}.taxi-driver-offline-map-missing a{margin-top:5px;padding:10px 17px;color:#fff;background:#101935;border-radius:11px;font-size:13px;font-weight:750;text-decoration:none}
.taxi-driver-location-marker{--taxi-driver-location-scale:.86;--taxi-driver-heading:0deg;--taxi-driver-route-heading:0deg;position:relative;display:block;box-sizing:border-box;width:26px;height:26px;margin:3px;transform:scale(var(--taxi-driver-location-scale));transform-origin:center;transition:transform .14s ease-out}
.taxi-driver-location-marker::before{content:"";position:absolute;z-index:0;bottom:50%;left:50%;width:42px;height:46px;background:linear-gradient(to top,rgba(17,21,29,.29),rgba(17,21,29,.035));clip-path:polygon(0 0,100% 0,50% 100%);opacity:0;transform:translate(-50%,0) rotate(var(--taxi-driver-heading));transform-origin:50% 100%;transition:transform .22s ease-out,opacity .2s ease;pointer-events:none}
.taxi-driver-location-marker::after{content:"";position:absolute;z-index:1;inset:0;box-sizing:border-box;background:#11151d;border:4px solid #fff;border-radius:50%;box-shadow:0 5px 15px rgba(3,7,12,.38)}
.taxi-driver-location-car{display:none;position:absolute;z-index:2;top:50%;left:50%;width:54px;height:54px;background:url("../icons/taxi-map-car-n.png") center/contain no-repeat;filter:drop-shadow(0 3px 3px rgba(12,24,34,.35));transform:translate(-50%,-50%) rotate(var(--taxi-driver-route-heading));transform-origin:center;transition:transform .14s ease-out;pointer-events:none}
.taxi-driver-raster-map.has-taxi-driver-heading .taxi-driver-location-marker::before{opacity:1}
.taxi-driver-raster-map[data-target-kind="destination"] .taxi-driver-location-marker::before{display:none}
.taxi-driver-raster-map[data-target-kind="destination"] .taxi-driver-location-marker::after{display:none}
.taxi-driver-raster-map[data-target-kind="destination"] .taxi-driver-location-car{display:block}
@media(prefers-reduced-motion:reduce){.taxi-driver-location-marker::before,.taxi-driver-location-car{transition:none}}
.taxi-driver-raster-map .leaflet-overlay-pane{z-index:450}
.taxi-driver-raster-map path.taxi-driver-route-casing{fill:none!important;stroke:#fff3b0!important;stroke-width:14px!important;stroke-opacity:.9!important;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px rgba(255,216,77,.9)) drop-shadow(0 0 12px rgba(255,196,0,.45))}
.taxi-driver-raster-map path.taxi-driver-route-line{fill:none!important;stroke:#ffc400!important;stroke-width:8px!important;stroke-opacity:1!important;stroke-linecap:round;stroke-linejoin:round}
.taxi-driver-target-marker{display:grid;place-items:center;width:38px;height:38px;color:#171100;background:#ffc94a;border:4px solid #fff;border-radius:14px 14px 14px 3px;box-shadow:0 7px 20px rgba(91,67,5,.28);transform:rotate(-45deg)}
.taxi-driver-target-marker svg{width:19px;height:19px;transform:rotate(45deg)}
.taxi-driver-target-marker.is-pickup{box-sizing:border-box;width:20px;height:20px;background:#176bff;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 13px rgba(23,107,255,.42);transform:none}
.taxi-driver-target-marker.is-destination{box-sizing:border-box;width:20px;height:20px;background:#ffc94a;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 13px rgba(173,125,0,.34);transform:none}
.taxi-driver-raster-map.is-navigation-preview .taxi-driver-location-marker,.taxi-driver-raster-map.is-navigation-preview .taxi-driver-target-marker.is-destination{animation:taxiDriverPointReveal .48s ease-out both}.taxi-driver-raster-map.is-navigation-preview .taxi-driver-target-marker.is-destination{animation-delay:.12s}@keyframes taxiDriverPointReveal{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.taxi-driver-raster-map.is-navigation-preview .taxi-driver-location-marker,.taxi-driver-raster-map.is-navigation-preview .taxi-driver-target-marker.is-destination{animation:none}}
.taxi-driver-raster-map .leaflet-tooltip.taxi-driver-target-label{max-width:min(260px,72vw);padding:7px 10px;overflow:hidden;color:#101935;background:rgba(255,255,255,.96);border:1px solid rgba(16,25,53,.12);border-radius:10px;box-shadow:0 7px 20px rgba(12,29,50,.16);font-size:10px;font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-raster-map .leaflet-tooltip-top.taxi-driver-target-label::before{border-top-color:rgba(255,255,255,.96)}
.taxi-driver-map-shell{position:relative;z-index:2;height:100%;padding:16px 0 18px;pointer-events:none}
.taxi-driver-bottom-stack{position:absolute;right:0;bottom:18px;left:0;display:grid;gap:10px;width:min(760px,100%);margin:auto;pointer-events:none}
.taxi-driver-bottom-stack>.taxi-driver-service-warning{margin:0;pointer-events:auto}
.taxi-driver-bottom-stack:is(.has-offers,.has-active-trip)>.taxi-driver-service-warning{display:none}
.taxi-driver-bottom-stack>.taxi-driver-status-sheet{position:relative;right:auto;bottom:auto;left:auto;width:100%;margin:0}
.taxi-driver-top-panel{position:absolute;top:16px;left:0;display:flex;width:min(520px,calc(100% - 32px));margin:0!important;padding:12px 16px!important;color:var(--navy)!important;background:rgba(255,255,255,.93)!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:20px!important;box-shadow:0 12px 34px rgba(16,25,53,.14)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto}
.taxi-driver-top-panel .courier-identity{gap:12px}.taxi-driver-top-panel .avatar-lg{width:48px;height:48px}.taxi-driver-top-panel h1{margin:2px 0 3px!important;font-size:22px!important}.taxi-driver-top-panel .courier-pickup-zones{color:#657087!important;font-size:11px!important}
.taxi-driver-top-panel .courier-rating{right:-5px;bottom:-5px;padding:3px 5px}.taxi-driver-top-panel .courier-rating svg{width:10px;height:10px}
.taxi-driver-status-sheet{position:absolute;right:0;bottom:18px;left:0;width:min(760px,100%);max-height:min(56dvh,580px);margin:auto;overflow:hidden;color:var(--ink);background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.94);border-radius:25px;box-shadow:0 18px 52px rgba(9,25,44,.24);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;transition:max-height .26s cubic-bezier(.2,.75,.25,1)}
.taxi-driver-sheet-handle{display:none;box-sizing:border-box;width:100%;height:19px;margin:0;padding:7px 0 8px;background:transparent;border:0;cursor:pointer}.taxi-driver-sheet-handle>span[aria-hidden]{display:block;width:42px;height:4px;margin:auto;background:#d5dbe4;border-radius:99px}
.taxi-driver-status-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border-bottom:1px solid #e6eaf0}
.taxi-driver-status-copy{display:grid;gap:3px;min-width:0}.taxi-driver-status-copy>small{color:#7e879c;font-size:8px;font-weight:900;letter-spacing:.14em}.taxi-driver-status-copy>div{display:flex;align-items:center;gap:8px}.taxi-driver-status-copy h2{margin:0;color:var(--navy);font-size:22px;letter-spacing:-.03em}.taxi-driver-status-copy i{width:10px;height:10px;border-radius:50%}.taxi-driver-status-copy i.is-online{background:#2dbb83;box-shadow:0 0 0 5px rgba(45,187,131,.12);animation:taxiDriverOnlineBreath 2.4s ease-in-out infinite}.taxi-driver-status-copy i.is-offline{background:#e5484d;box-shadow:0 0 0 5px rgba(229,72,77,.12)}.taxi-driver-status-copy p{margin:0;color:#6e798c;font-size:11px}
@keyframes taxiDriverOnlineBreath{0%,100%{transform:scale(.94);box-shadow:0 0 0 3px rgba(45,187,131,.1)}50%{transform:scale(1.05);box-shadow:0 0 0 5px rgba(45,187,131,.18)}}
.taxi-driver-status-action{display:flex;align-items:center;justify-content:center;gap:7px;min-width:112px;min-height:44px;padding:9px 15px;color:#fff;background:var(--navy);border:0;border-radius:13px;font:800 12px/1 inherit;cursor:pointer}.taxi-driver-status-action.offline{color:#fff;background:#1f9d70;box-shadow:0 7px 16px rgba(31,157,112,.22)}.taxi-driver-status-action:disabled{color:#7f8998;background:#e5e9ee;box-shadow:none;cursor:not-allowed;opacity:1}.taxi-driver-status-action svg{width:18px;height:18px}
.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-idle-message{display:none}
.taxi-driver-sheet-scroll{max-height:calc(min(56dvh,580px) - 80px);padding:14px 20px 18px;overflow:auto;overscroll-behavior:contain}
.taxi-driver-status-sheet .availability-expiry-card{grid-template-columns:auto minmax(0,1fr) auto;margin:0 0 12px;padding:11px 13px}.taxi-driver-status-sheet .availability-expiry-card .button{min-height:38px;padding:8px 12px}
.taxi-driver-location-problem{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin:0 0 12px;padding:12px;color:#6f1d1b;background:#fff0ee;border:1px solid #efb7b0;border-radius:14px}.taxi-driver-location-problem[hidden]{display:none}.taxi-driver-location-problem>svg{width:24px;height:24px;color:#c83d32}.taxi-driver-location-problem>span{display:grid;gap:3px}.taxi-driver-location-problem b{font-size:13px}.taxi-driver-location-problem small{font-size:11px;line-height:1.45}.taxi-driver-location-problem>div{grid-column:1/-1;display:flex;gap:8px}.taxi-driver-location-problem .button{min-height:38px;flex:1;padding:8px 10px;font-size:11px}
.taxi-driver-status-sheet.has-location-problem .taxi-driver-waiting{display:none}
.taxi-driver-sheet-section+.taxi-driver-sheet-section{margin-top:14px;padding-top:14px;border-top:1px solid #e8ebf1}.taxi-driver-sheet-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.taxi-driver-sheet-title>div{display:grid;gap:2px}.taxi-driver-sheet-title small{color:#16866b;font-size:8px;font-weight:900;letter-spacing:.12em}.taxi-driver-sheet-title h3{margin:0;color:var(--navy);font-size:17px}.taxi-driver-sheet-title>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;color:#0c6452;background:#dff7f0;border-radius:999px;font-size:11px;font-weight:900}
.taxi-driver-day-summary{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.78fr) minmax(0,.72fr);align-items:center;min-height:68px;padding:6px;color:#111827;background:linear-gradient(135deg,rgba(244,247,250,.94),rgba(250,251,253,.72));border-radius:18px}.taxi-driver-day-summary>div{display:flex;align-items:center;justify-content:center;min-width:0;padding:8px 10px;text-align:center;font-variant-numeric:tabular-nums}.taxi-driver-day-vehicle{display:grid!important;align-content:center;gap:3px;color:#172238;line-height:1.2}.taxi-driver-day-vehicle>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-driver-day-vehicle>span:first-child{font-size:12px;font-weight:650}.taxi-driver-day-vehicle>span:last-child{color:#7a8494;font-size:9px;font-weight:500}.taxi-driver-day-earnings{color:#111;font-size:21px;font-weight:400;letter-spacing:-.025em;white-space:nowrap}.taxi-driver-day-distance{color:#374151;font-size:15px;font-weight:450;letter-spacing:-.015em;white-space:nowrap}.taxi-map-offer-list{margin-top:12px}
@media(max-width:430px){.taxi-driver-day-summary{grid-template-columns:minmax(0,1.4fr) minmax(0,.76fr) minmax(0,.7fr);min-height:62px;padding:5px 2px;border-radius:16px}.taxi-driver-day-summary>div{padding:7px 5px}.taxi-driver-day-vehicle{gap:2px}.taxi-driver-day-vehicle>span:first-child{font-size:10px}.taxi-driver-day-vehicle>span:last-child{font-size:8px}.taxi-driver-day-earnings{font-size:18px}.taxi-driver-day-distance{font-size:13px}}
.taxi-driver-day-summary{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;column-gap:20px}
.taxi-driver-day-summary>.taxi-driver-day-earnings{position:relative;isolation:isolate;min-width:0;min-height:0;padding:24px;color:#fff;background:transparent;border-radius:17px;font-size:27px;font-weight:400;line-height:1;letter-spacing:.015em;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.taxi-driver-day-summary>.taxi-driver-day-earnings{display:grid;grid-template-columns:auto auto;place-content:center;align-items:center;gap:4px;box-sizing:border-box;width:max-content}.taxi-driver-day-currency{color:rgba(255,255,255,.72);font-size:8px;font-weight:650;line-height:1;letter-spacing:.12em}
.taxi-driver-day-summary>.taxi-driver-day-earnings>span{position:relative;z-index:1}.taxi-driver-day-summary>.taxi-driver-day-earnings::before{position:absolute;z-index:0;inset:0;background:radial-gradient(circle at 50% 0,#435875 0,#2b3d57 48%,#1b2b42 100%);border:1px solid rgba(255,255,255,.08);border-radius:15px;box-shadow:0 0 10px rgba(38,59,87,.2),0 8px 18px rgba(24,43,68,.18);content:""}
.taxi-driver-day-vehicle>span:first-child{font-size:15px}.taxi-driver-day-vehicle>span:last-child{font-size:11px}.taxi-driver-day-distance{font-size:17px}
.taxi-driver-day-summary>.taxi-driver-day-vehicle,.taxi-driver-day-summary>.taxi-driver-day-distance{align-self:stretch;justify-self:stretch;box-sizing:border-box;min-height:42px;padding:0}.taxi-driver-day-summary>.taxi-driver-day-vehicle{place-content:center end;justify-items:end;text-align:right}.taxi-driver-day-summary>.taxi-driver-day-distance{display:grid;place-content:center start;text-align:left}
@media(max-width:430px){.taxi-driver-day-summary{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:14px}.taxi-driver-day-summary>.taxi-driver-day-earnings{min-width:0;min-height:0;padding:20px;border-radius:15px;font-size:23px}.taxi-driver-day-summary>.taxi-driver-day-earnings::before{inset:0}.taxi-driver-day-vehicle>span:first-child{font-size:12px}.taxi-driver-day-vehicle>span:last-child{font-size:10px}.taxi-driver-day-distance{font-size:15px}.taxi-driver-day-summary>.taxi-driver-day-vehicle,.taxi-driver-day-summary>.taxi-driver-day-distance{min-height:40px}}
.taxi-map-active-trip{display:grid;gap:12px;padding:15px;color:#fff;background:linear-gradient(145deg,#0b1930,#172b49);border-radius:18px;box-shadow:0 11px 27px rgba(10,24,44,.17)}
.taxi-map-trip-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.taxi-map-trip-heading>span{display:grid;place-items:center;width:38px;height:38px;color:#071a2d;background:#52e2c7;border-radius:12px}.taxi-map-trip-heading svg{width:19px;height:19px}.taxi-map-trip-heading>div{display:grid;gap:2px}.taxi-map-trip-heading small{color:#9dafc2;font-size:8px;font-weight:850;letter-spacing:.07em}.taxi-map-trip-heading h3{margin:0;font-size:17px}.taxi-map-trip-heading>strong{font-size:20px}.taxi-map-trip-heading>strong small{font-size:8px}
.taxi-map-trip-location{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 11px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:13px}.taxi-map-trip-location>div{display:grid;gap:2px;min-width:0}.taxi-map-trip-location b{font-size:12px}.taxi-map-trip-location p{margin:0;color:#afbdcc;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taxi-map-trip-location>a{display:grid;place-items:center;width:38px;height:38px;color:#fff;background:#176bff;border-radius:11px}.taxi-map-trip-location svg{width:18px;height:18px}
.taxi-map-trip-contact{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px}.taxi-map-trip-contact .avatar{width:34px;height:34px;font-size:11px}.taxi-map-trip-contact>div{display:grid;gap:2px}.taxi-map-trip-contact small{color:#8fa1b5;font-size:7px;font-weight:850}.taxi-map-trip-contact b{font-size:10px}.taxi-map-trip-contact>a{display:flex;align-items:center;gap:5px;padding:8px 9px;color:#d8e3ee;background:rgba(255,255,255,.08);border-radius:9px;font-size:9px;font-weight:800}.taxi-map-trip-contact>a svg{width:14px;height:14px}.taxi-map-active-trip .taxi-trip-note{margin:0;color:#cad4df;font-size:10px}.taxi-map-active-trip .taxi-stage-action .button{min-height:44px;background:#42d9c7}
.taxi-driver-map-notice{display:flex;align-items:center;gap:10px;padding:12px;color:#765817;background:#fff6dc;border:1px solid #edda9e;border-radius:13px}.taxi-driver-map-notice>svg{width:21px;height:21px}.taxi-driver-map-notice>span{display:grid;gap:2px}.taxi-driver-map-notice b{font-size:12px}.taxi-driver-map-notice small{font-size:10px}
.taxi-driver-waiting{display:flex;align-items:center;gap:13px;padding:11px 2px}.taxi-driver-waiting>span{display:flex;align-items:center;justify-content:center;gap:3px;width:43px;height:43px;background:#e8f8f3;border-radius:13px}.taxi-driver-waiting>span i{width:5px;height:5px;background:#20a784;border-radius:50%;animation:taxiWaitingDot 1.4s ease-in-out infinite}.taxi-driver-waiting>span i:nth-child(2){animation-delay:.18s}.taxi-driver-waiting>span i:nth-child(3){animation-delay:.36s}.taxi-driver-waiting>div{display:grid;gap:3px}.taxi-driver-waiting b{font-size:13px}.taxi-driver-waiting small{color:#707b8d;font-size:10px}@keyframes taxiWaitingDot{0%,60%,100%{transform:translateY(0);opacity:.42}30%{transform:translateY(-4px);opacity:1}}
.taxi-map-offer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.taxi-map-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:11px;padding:13px;background:#f7f9fb;border:1px solid #e1e6ed;border-radius:15px}.taxi-map-offer-main{display:grid;gap:9px;min-width:0}.taxi-map-offer .taxi-offer-price-line strong{font-size:20px}.taxi-map-offer .taxi-offer-price-line strong small{font-size:8px}.taxi-map-offer-route{position:relative;display:grid;gap:8px}.taxi-map-offer-route::before{content:"";position:absolute;top:8px;bottom:8px;left:4px;border-left:1px dashed #b6c0ce}.taxi-map-offer-route>span{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr);column-gap:7px;min-width:0}.taxi-map-offer-route i{position:relative;z-index:1;width:9px;height:9px;margin-top:2px;background:#fff;border:3px solid #176bff;border-radius:50%}.taxi-map-offer-route>span:last-child i{border-color:#ffc94a}.taxi-map-offer-route b,.taxi-map-offer-route small{grid-column:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taxi-map-offer-route b{font-size:10px}.taxi-map-offer-route small{color:#788497;font-size:8px}.taxi-map-offer-actions{display:grid;align-content:center;gap:5px}.taxi-map-offer-actions .button{min-width:78px;min-height:36px;padding:7px 10px;font-size:9px}.taxi-map-offer-actions .button-text{color:#7a8494}
@media(max-width:800px){.taxi-map-offer-list{grid-template-columns:1fr}.taxi-driver-status-sheet{width:min(620px,100%)}}
@media(max-width:680px){body.taxi-driver-dashboard-page{height:100dvh;padding-bottom:0!important;overflow:hidden;background:#dce7e8}.taxi-driver-dashboard-page .taxi-driver-map-dashboard{height:calc(100dvh - 62px - env(safe-area-inset-top,0px));min-height:0}.taxi-driver-map-shell{width:100%;padding:0}.taxi-driver-top-panel{top:9px;left:9px;width:calc(100% - 18px);padding:10px 12px!important;border-radius:18px!important}.taxi-driver-top-panel .avatar-lg{width:42px!important;height:42px!important}.taxi-driver-top-panel h1{font-size:19px!important}.taxi-driver-top-panel .courier-pickup-zones{font-size:10px!important}.taxi-driver-raster-map .leaflet-top.leaflet-left{top:88px;left:4px}.taxi-driver-dashboard-page .taxi-driver-status-sheet{right:0;bottom:0;left:0;width:100%;max-height:min(58dvh,510px);border-right:0;border-bottom:0;border-left:0;border-radius:25px 25px 0 0}.taxi-driver-sheet-handle{display:block}.taxi-driver-status-sheet[data-taxi-driver-sheet-collapsible="false"] .taxi-driver-sheet-handle{display:none}.taxi-driver-status-sheet.is-collapsed{max-height:74px}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:55px;box-sizing:border-box;padding:5px 18px 12px;border-bottom:0;cursor:pointer}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy{gap:0}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>small,.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p,.taxi-driver-status-sheet.is-collapsed .courier-availability-controls,.taxi-driver-status-sheet.is-collapsed .taxi-driver-sheet-scroll{display:none}.taxi-driver-status-head{padding:11px 15px 12px}.taxi-driver-status-head .courier-availability-controls{flex:0 0 auto;width:auto}.taxi-driver-status-copy h2{font-size:20px}.taxi-driver-status-copy p{font-size:10px}.taxi-driver-status-action{min-width:98px;min-height:42px;padding:8px 12px}.taxi-driver-sheet-scroll{max-height:calc(min(58dvh,510px) - 77px);padding:12px 14px 15px}.taxi-driver-status-sheet .availability-expiry-card{grid-template-columns:auto 1fr}.taxi-driver-status-sheet .availability-expiry-card form{grid-column:1/-1}.taxi-map-trip-contact{grid-template-columns:auto minmax(0,1fr) auto auto}.taxi-map-trip-contact>a span{display:none}.taxi-map-trip-contact>a{display:grid;place-items:center;width:34px;height:34px;padding:0}.taxi-map-offer{grid-template-columns:minmax(0,1fr) auto}.taxi-driver-waiting{align-items:flex-start}.taxi-driver-waiting>div{min-width:0}.taxi-driver-waiting small{white-space:normal;line-height:1.35}.taxi-driver-map-unavailable{top:38%}}
@media(max-width:680px){.taxi-driver-bottom-stack{bottom:0;gap:8px;width:100%}.taxi-driver-bottom-stack>.taxi-driver-service-warning{width:calc(100% - 18px);margin-inline:auto}}
@media(max-width:380px){.taxi-driver-top-panel .courier-pickup-zones{max-width:225px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taxi-driver-status-head{gap:10px}.taxi-driver-status-action{min-width:86px}.taxi-map-trip-heading>strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.taxi-driver-waiting>span i{animation:none}}
@media(prefers-reduced-motion:reduce){.taxi-driver-status-copy i.is-online{animation:none}}
.taxi-map-offer-route>span>b:first-child{grid-column:1/-1;margin-bottom:3px;color:#788497;font-size:8px}.taxi-map-offer-route>span>i{grid-column:1}.taxi-map-offer-route>span>b:last-child{grid-column:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.taxi-map-offer>.offer-decision-panel{display:grid;align-content:center}

/* La oferta del taxista comparte la jerarquía de ruta de la vista del pasajero. */
.taxi-map-offer{grid-template-columns:minmax(0,1fr);gap:0;padding:18px;background:#fff;border-color:#dfe5ec;box-shadow:0 10px 28px rgba(15,30,50,.08)}.taxi-map-offer-main{gap:0}.taxi-map-offer .taxi-offer-price-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:32px;padding:0 10px 14px;border:0}.taxi-map-offer .taxi-offer-price-line .offer-price-amount{grid-column:1;justify-self:start;color:#030712;font-size:29px;font-weight:950;line-height:1;text-align:left}.taxi-map-offer .taxi-offer-price-line .offer-price-amount small{font-size:9px;font-weight:900}.taxi-map-offer .taxi-offer-price-line .taxi-offer-countdown{grid-column:2;grid-row:1;justify-self:end;font-size:10px;font-weight:850}.taxi-map-offer .taxi-offer-itinerary{position:relative;display:block;padding:1px 0}.taxi-map-offer .taxi-offer-itinerary::before{position:absolute;z-index:0;top:14px;bottom:35px;left:15px;width:2px;background:#b9c3d0;content:"";transform:translateX(-50%)}.taxi-map-offer .taxi-offer-route-field{position:relative;z-index:1;display:grid;grid-template-columns:10px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:11px;row-gap:2px;box-sizing:border-box;width:100%;padding:6px 10px;background:transparent;border:0;border-radius:0}.taxi-map-offer .taxi-offer-route-field+.taxi-offer-route-field{margin-top:2px}.taxi-map-offer .taxi-offer-route-field>i{position:relative;z-index:1;grid-column:1;grid-row:1;width:10px;height:10px;border-width:3px}.taxi-map-offer .taxi-offer-route-field>span{display:contents}.taxi-map-offer .taxi-offer-route-field em{grid-column:2;grid-row:1;margin:0;color:#26334b;font-size:13px;font-weight:900;line-height:1.25}.taxi-map-offer .taxi-offer-route-field strong{grid-column:2;grid-row:2;min-width:0;overflow:hidden;color:#667286;font-size:12px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-map-offer .taxi-offer-destination>i{border-color:#ffc94a}.taxi-map-offer>.offer-decision-panel{display:block;margin-top:15px;padding-top:14px;border-top:1px solid #e4e9ef}.taxi-map-offer-actions{display:grid;justify-items:center;gap:7px}.taxi-map-offer-actions form{width:100%}.taxi-map-offer-actions .taxi-accept-button{width:100%;min-height:52px;padding:13px 18px;color:#fff;background:#030712;border:0;border-radius:14px;box-shadow:0 9px 22px rgba(3,7,18,.24);font-size:15px;font-weight:900;letter-spacing:.01em}.taxi-map-offer-actions form:last-child{width:auto}.taxi-map-offer-actions .taxi-reject-action{display:inline-block;width:auto;min-height:0;padding:5px 12px;color:#778192;background:transparent;border:0;font:700 10.5px/1.35 inherit;cursor:pointer}.taxi-map-offer-actions .taxi-reject-action:hover,.taxi-map-offer-actions .taxi-reject-action:focus-visible{color:#b63845;text-decoration:underline;outline:0}.new-order-alerting.taxi-dashboard-offer .taxi-accept-button{box-shadow:0 11px 27px rgba(3,7,18,.3)}

.taxi-map-offer .taxi-offer-route-field{column-gap:7px}
.taxi-map-offer .taxi-offer-price-line{grid-template-columns:34px minmax(0,1fr) 34px;padding-right:0;padding-left:0}
.taxi-map-offer .taxi-offer-price-block{display:grid;grid-column:2;justify-items:center;justify-self:center;gap:2px}
.taxi-map-offer .taxi-offer-price-line .offer-price-amount{display:block;box-sizing:border-box;width:180px;min-width:0;padding:11px 14px 10px;color:#2e2200;background:linear-gradient(180deg,#ffed9a 0%,#f7d15b 100%);border:1px solid #e4b635;border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 rgba(174,116,0,.12),0 7px 18px rgba(151,103,0,.2);line-height:1.1;text-align:center}
.taxi-map-offer .taxi-offer-fare-value{display:inline-flex;align-items:baseline;justify-content:center;gap:5px}.taxi-map-offer .taxi-offer-fare-number{display:inline}.taxi-map-offer .taxi-offer-fare-value small{position:static;color:#715b1d;font-size:9px;font-weight:850;line-height:1;transform:none}
.taxi-map-offer .taxi-offer-payment-method{display:block;color:#0b5d4b;font-size:11px;font-weight:900;line-height:1.1;letter-spacing:.01em;text-align:center}
.taxi-map-offer .taxi-offer-price-line .taxi-pickup-compensation-label{grid-column:1;grid-row:2;justify-self:start;margin:5px 0 0 2px;color:#725b17;font-size:10px;font-weight:800;line-height:1.2}
.taxi-map-offer .taxi-offer-price-line .taxi-offer-head-actions{grid-column:3;align-self:start;justify-self:end;transform:translateY(-4px)}
.taxi-map-offer .taxi-offer-price-line .taxi-offer-countdown{padding:6px 10px;font-size:12px;font-weight:900}
.taxi-map-offer .taxi-offer-price-line .taxi-offer-countdown.is-urgent{color:#fff;background:#c92f3d;border-color:#b82230;box-shadow:0 5px 14px rgba(185,34,48,.24)}
.taxi-map-offer .taxi-offer-itinerary{padding-top:10px}
.taxi-map-offer .taxi-offer-itinerary::before{top:27px}
.taxi-map-offer .taxi-offer-route-field{row-gap:4px;padding-block:8px}
.taxi-map-offer .taxi-offer-route-field+.taxi-offer-route-field{margin-top:14px}
.taxi-map-offer .taxi-offer-route-field>i{grid-row:1;align-self:start;margin-top:6px}
.taxi-map-offer .taxi-offer-route-field strong{grid-column:2;grid-row:1;overflow:visible;color:#030712;font-size:17px;font-weight:600;line-height:1.3;text-overflow:clip;white-space:normal}.taxi-map-offer .taxi-offer-address{color:#030712}.taxi-map-offer .taxi-offer-municipality{color:#8a94a3;font-size:.82em;font-weight:500}
.taxi-map-offer .taxi-offer-route-field em{grid-column:2;grid-row:2;color:#667286;font-size:11px;font-weight:700;line-height:1.35}.taxi-map-offer .taxi-offer-place{grid-column:2;grid-row:2;min-width:0;overflow:hidden;color:#56657a;font-size:12px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-map-offer .taxi-offer-route-field.has-place em{grid-row:3}
.new-order-alerting.taxi-dashboard-offer .taxi-map-offer-actions form:first-child{position:relative;isolation:isolate}
.new-order-alerting.taxi-dashboard-offer .taxi-map-offer-actions form:first-child::before,.new-order-alerting.taxi-dashboard-offer .taxi-map-offer-actions form:first-child::after{content:"";position:absolute;z-index:0;left:50%;top:50%;width:96px;height:96px;border:3px solid rgba(255,201,74,.82);border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.35);pointer-events:none}
.new-order-alerting.taxi-dashboard-offer.offer-alert-wave .taxi-map-offer-actions form:first-child::before{animation:offer-button-wave 1.65s cubic-bezier(.14,.62,.24,1) both}
.new-order-alerting.taxi-dashboard-offer.offer-alert-wave .taxi-map-offer-actions form:first-child::after{animation:offer-button-wave 1.65s cubic-bezier(.14,.62,.24,1) .16s both}
.new-order-alerting.taxi-dashboard-offer .taxi-accept-button{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.new-order-alerting.taxi-dashboard-offer.offer-alert-wave .taxi-map-offer-actions form:first-child::before,.new-order-alerting.taxi-dashboard-offer.offer-alert-wave .taxi-map-offer-actions form:first-child::after{animation:none!important}.new-order-alerting.taxi-dashboard-offer .taxi-accept-button{outline:4px solid rgba(255,201,74,.35);outline-offset:0}}
.taxi-map-offer.has-independent-window{display:none}.taxi-new-offer-window{position:fixed;z-index:460;right:auto;bottom:18px;left:50%;display:grid;gap:10px;box-sizing:border-box;width:min(440px,calc(100% - 20px));max-height:calc(100dvh - 120px);padding:6px 6px 22px;overflow-x:hidden;overflow-y:auto;transform:translateX(-50%);pointer-events:auto}.taxi-new-offer-window .taxi-new-offer-card{width:100%;overflow:hidden;border:2px solid #ffc94a;border-radius:20px;box-shadow:0 14px 36px rgba(7,13,30,.24);animation:taxi-new-offer-in .24s ease both}@keyframes taxi-new-offer-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:680px){.taxi-new-offer-window{right:auto;bottom:calc(77px + env(safe-area-inset-bottom,0px));left:50%;width:calc(100% - 12px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 150px);transform:translateX(-50%)}}
.new-order-alerting.taxi-dashboard-offer.is-urgent,.taxi-new-offer-window .taxi-new-offer-card.is-urgent{background:#fff6f7;border-color:#d93c4a;box-shadow:0 14px 36px rgba(94,18,29,.24)}
.new-order-alerting.taxi-dashboard-offer.is-urgent::before,.new-order-alerting.taxi-dashboard-offer.is-urgent::after,.new-order-alerting.taxi-dashboard-offer.is-urgent .taxi-map-offer-actions form:first-child::before,.new-order-alerting.taxi-dashboard-offer.is-urgent .taxi-map-offer-actions form:first-child::after{border-color:rgba(217,45,61,.86)}
@media(prefers-reduced-motion:reduce){.new-order-alerting.taxi-dashboard-offer.is-urgent .taxi-accept-button{outline-color:rgba(217,45,61,.42)}}

/* Búsqueda por proximidad: mapa de recogida y taxis activos alrededor. */
.taxi-driver-search-dialog{width:min(620px,calc(100% - 20px))}.taxi-driver-search-dialog::backdrop{background:rgba(8,20,38,.42);backdrop-filter:blur(4px)}
.taxi-driver-search-dialog .taxi-driver-search-card{gap:8px}
.taxi-driver-search-map-wrap{position:relative;flex:1;min-height:290px;overflow:hidden;background:#dfe9e8;border:1px solid rgba(255,255,255,.85);border-radius:24px;box-shadow:0 16px 42px rgba(4,18,36,.2)}
.taxi-driver-search-map{position:absolute;z-index:1;inset:0;background:linear-gradient(145deg,#dfeae8,#eef3ef)}
.taxi-driver-search-map-label{position:absolute;z-index:500;right:12px;bottom:12px;left:12px;display:flex;align-items:center;gap:9px;padding:10px 12px;color:#10243b;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.96);border-radius:14px;box-shadow:0 7px 22px rgba(5,22,40,.15);backdrop-filter:blur(12px);pointer-events:none}
.taxi-driver-search-map-label>i{box-sizing:border-box;flex:0 0 14px;width:14px;height:14px;background:#176bff;border:4px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #176bff}.taxi-driver-search-map-label>span{display:grid;gap:1px;min-width:0}.taxi-driver-search-map-label small{color:#68778b;font-size:7px;font-weight:900;letter-spacing:.1em}.taxi-driver-search-map-label b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-search-map-count{position:absolute;z-index:500;top:12px;left:12px;padding:7px 10px;color:#173149;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.96);border-radius:999px;box-shadow:0 5px 16px rgba(0,0,0,.12);backdrop-filter:blur(10px);font-size:9px;font-weight:850;pointer-events:none}
.taxi-nearby-map-marker{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important;user-select:none;will-change:transform}.taxi-nearby-map-car{position:relative;display:grid;place-items:center;width:46px;height:46px}.taxi-nearby-map-car img{position:absolute;z-index:2;inset:0;display:block;width:100%;height:100%;object-fit:contain;opacity:0;filter:drop-shadow(0 2px 2px rgba(14,27,38,.24));transform-origin:50% 50%;transition:opacity .14s ease;will-change:transform,opacity;pointer-events:none}.taxi-nearby-map-car img.is-active{opacity:1}.taxi-nearby-map-car.is-selected::before,.taxi-nearby-map-car.is-selected::after{content:"";position:absolute;z-index:1;inset:5px;border:2px solid rgba(239,68,68,.82);border-radius:50%;background:transparent;box-shadow:none;opacity:0;animation:taxiSelectedCarPulse 2s ease-out infinite}.taxi-nearby-map-car.is-selected::after{animation-delay:1s}@keyframes taxiSelectedCarPulse{0%{opacity:0;transform:scale(.68)}15%{opacity:.82}100%{opacity:0;transform:scale(1.55)}}
.taxi-confirming-map-badge{position:absolute;z-index:710;top:12px;left:50%;display:flex;align-items:center;gap:7px;padding:6px 10px;color:#173149;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.96);border-radius:999px;box-shadow:0 6px 20px rgba(8,20,38,.15);transform:translateX(-50%);backdrop-filter:blur(10px);font-size:9px;font-weight:800;letter-spacing:.02em;pointer-events:none}.taxi-confirming-map-badge>i{display:flex;align-items:center;gap:2px;height:8px}.taxi-confirming-map-badge em{display:block;width:3px;height:3px;background:#176bff;border-radius:50%;animation:taxiConfirmingDot 1.05s ease-in-out infinite}.taxi-confirming-map-badge em:nth-child(2){animation-delay:.14s}.taxi-confirming-map-badge em:nth-child(3){animation-delay:.28s}@keyframes taxiConfirmingDot{0%,60%,100%{opacity:.38;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.taxi-nearby-map-car.is-selected::before,.taxi-nearby-map-car.is-selected::after,.taxi-confirming-map-badge em{animation:none}}
.taxi-driver-search-dialog .taxi-driver-search-results,.taxi-driver-search-dialog .taxi-driver-search-results.is-empty{flex:0 0 auto;margin:0;padding:3px 0;background:transparent;border:0;box-shadow:none}.taxi-driver-search-dialog .taxi-driver-search-status{padding:7px;color:#fff;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.taxi-driver-search-dialog .taxi-driver-options{display:flex;justify-content:flex-start;gap:7px;padding:4px 2px 7px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}.taxi-driver-search-dialog .taxi-driver-options::-webkit-scrollbar{display:none}.taxi-driver-search-dialog .taxi-driver-option{flex:0 0 78px;scroll-snap-align:start}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:54px;height:54px;font-size:18px}.taxi-driver-search-dialog .taxi-driver-option-main small{font-size:8px}.taxi-driver-search-dialog .taxi-driver-option>strong{font-size:15px}
@media(max-width:560px){.taxi-driver-search-dialog{width:calc(100% - 12px)}.taxi-driver-search-map-wrap{min-height:250px;border-radius:20px}.taxi-driver-search-map-label{right:8px;bottom:8px;left:8px}.taxi-driver-search-map-count{top:9px;left:9px}.taxi-driver-search-dialog .taxi-driver-option{flex-basis:72px}.taxi-driver-search-dialog .taxi-driver-option-main>i{width:48px;height:48px}}

/* La tarjeta para pedir taxi queda siempre por encima de la navegación inferior. */
@media(max-width:680px){.taxi-passenger-dashboard .taxi-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}}
@media(max-width:680px){body.taxi-passenger-app.taxi-passenger-vehicle-stage .taxi-passenger-dashboard .taxi-shell{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}

/* Selección de taxis sobre el mapa principal: sin ventana ni segundo mapa. */
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-greeting,.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-route-sheet{display:none}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin{display:block!important}
.taxi-passenger-dashboard.is-confirming-pickup:is(.is-pickup-location-pending,.is-pickup-manual-entry) .taxi-passenger-map-pin{display:none!important}
.taxi-passenger-dashboard.is-confirming-pickup:not(.is-pickup-location-pending):not(.is-pickup-manual-entry) .taxi-main-pickup-instruction{display:none}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin{width:48px;height:58px;transform:translate(-50%,-100%)}.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin::before{box-sizing:border-box;top:7px;left:7px;width:34px;height:34px;border-width:4px;box-shadow:-6px 8px 18px rgba(15,72,163,.32)}.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin::after{top:20px;left:20px;width:8px;height:8px}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-destination-pill{position:absolute;z-index:25;top:130px;bottom:auto;left:50%;width:max-content;max-width:calc(100% - 144px);margin:0;transform:translateX(-50%)}
.taxi-passenger-dashboard .taxi-main-pickup-confirm{position:absolute;z-index:24;inset:0;display:block;box-sizing:border-box;padding:0 10px;pointer-events:none!important}
.taxi-main-pickup-confirm[hidden]{display:none}
.taxi-main-pickup-tools{position:absolute;right:0;bottom:102px;left:0;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(340px,calc(100% - 20px));margin:auto;pointer-events:auto}.taxi-main-pickup-search{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:stretch;width:100%;height:42px;overflow:hidden;background:#fff;border:1px solid rgba(23,107,255,.35);border-radius:999px;box-shadow:0 6px 17px rgba(8,20,38,.18);transition:border-color .16s,box-shadow .16s}.taxi-main-pickup-search:focus-within{border-color:#176bff;box-shadow:0 0 0 3px rgba(23,107,255,.16),0 6px 17px rgba(8,20,38,.18)}.taxi-main-pickup-search input{min-width:0;height:40px;padding:0 12px 4px;color:#17223b;background:transparent;border:0;border-radius:999px 0 0 999px;outline:0;box-shadow:none;-webkit-appearance:none;appearance:none;font-family:inherit;font-size:12px;font-weight:650;line-height:1.2}.taxi-main-pickup-search input:focus,.taxi-main-pickup-search input:focus-visible{border:0!important;outline:0!important;box-shadow:none!important}.taxi-main-pickup-search input::-webkit-search-cancel-button,.taxi-main-pickup-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}.taxi-main-pickup-search input::-ms-clear,.taxi-main-pickup-search input::-ms-reveal{display:none;width:0;height:0}.taxi-main-pickup-search input::placeholder{color:#737b88;font-weight:550;line-height:1.2}.taxi-main-pickup-search button{display:grid;place-items:center;width:42px;height:40px;padding:0;color:#fff;background:#176bff;border:0;border-radius:0 999px 999px 0;cursor:pointer}.taxi-main-pickup-search button:hover{background:#0d5ce0}.taxi-main-pickup-search button:focus-visible{position:relative;outline:2px solid rgba(255,255,255,.9);outline-offset:-4px}.taxi-main-pickup-search button:disabled{cursor:wait;opacity:.72}.taxi-main-pickup-search button svg{width:16px;height:16px;stroke-width:2.2}.taxi-main-pickup-search-status{width:calc(100% - 8px);box-sizing:border-box;margin:0;padding:10px 13px;color:#3d4653;background:rgba(255,255,255,.98);border:1px solid #d7dce3;border-radius:14px;box-shadow:0 8px 22px rgba(8,20,38,.18);font-size:11px;font-weight:700;line-height:1.45;text-align:left;white-space:pre-line}.taxi-main-pickup-search-status[hidden]{display:none}
.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-tools{top:50%;bottom:auto;gap:16px;width:min(380px,calc(100% - 36px));transform:translateY(-50%)}
.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-instruction{width:100%;padding:12px 16px;color:#182235;background:#fffdf5;border-color:#aeb8c5;border-radius:18px;box-shadow:0 8px 24px rgba(17,24,39,.18);font-size:13px;font-weight:800;line-height:1.4;text-wrap:balance}.taxi-main-pickup-instruction-warning{display:none}.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-instruction-locate{display:none}.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-instruction-warning{display:block;flex-basis:19px;width:19px;height:19px;color:#e3a400;stroke-width:2.25}
.taxi-main-pickup-instruction{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:100%;box-sizing:border-box;margin:0;padding:9px 14px;color:#273142;background:rgba(255,255,255,.96);border:1px solid #c8ced6;border-radius:999px;box-shadow:0 4px 14px rgba(17,24,39,.12);font-size:11.5px;font-weight:700;line-height:1.3;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.taxi-main-pickup-instruction svg{flex:0 0 16px;width:16px;height:16px;color:#176bff;stroke-width:2}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{position:absolute;right:0;bottom:30px;left:0;display:flex;align-items:center;justify-content:center;gap:11px;width:max-content;min-width:310px;max-width:calc(100% - 20px);min-height:60px;margin:auto;padding:14px 25px;color:#fff;background:#176bff;border:1px solid #0d5ce0;border-radius:17px;box-shadow:0 10px 24px rgba(15,72,163,.34);font:inherit;font-size:16px;font-weight:850;white-space:nowrap;cursor:pointer;pointer-events:auto;transform-origin:center}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button][hidden]{display:none}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:not(:disabled){animation:taxiConfirmSearchBreathe 1.65s ease-in-out infinite}
@keyframes taxiConfirmSearchBreathe{0%,100%{box-shadow:0 8px 20px rgba(0,0,0,.24),0 0 0 0 rgba(0,0,0,0);transform:scale(1)}50%{box-shadow:0 12px 28px rgba(0,0,0,.36),0 0 0 7px rgba(0,0,0,.13);transform:scale(1.025)}}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:hover{background:#0d5ce0;border-color:#084bbd}
.taxi-main-pickup-confirm>button:active{transform:scale(.985)}.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:active{animation:none}.taxi-main-pickup-confirm>button:focus-visible{outline:3px solid rgba(255,255,255,.92);outline-offset:3px}.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:disabled{animation:none;cursor:wait;opacity:.78}
@media(prefers-reduced-motion:reduce){.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:not(:disabled){animation:none;box-shadow:0 8px 20px rgba(0,0,0,.24),0 0 0 3px rgba(0,0,0,.12)}}
@media(max-width:680px){.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-destination-pill{top:92px;bottom:auto;width:max-content;max-width:calc(100% - 144px)}.taxi-main-pickup-confirm{padding-inline:9px}.taxi-main-pickup-tools{bottom:calc(108px + env(safe-area-inset-bottom,0px))}.taxi-main-pickup-instruction{padding:8px 12px;font-size:11px}.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{bottom:calc(38px + env(safe-area-inset-bottom,0px));min-width:300px;min-height:58px;border-radius:16px}}
@media(max-width:680px){.taxi-passenger-dashboard.is-pickup-manual-entry.is-pickup-keyboard-visible .taxi-main-pickup-tools{top:calc(env(safe-area-inset-top,0px) + 145px);bottom:auto;gap:10px;max-height:calc(100dvh - 157px);transform:none}.taxi-passenger-dashboard.is-pickup-manual-entry.is-pickup-keyboard-visible .taxi-main-pickup-instruction{padding:10px 13px;font-size:11px;line-height:1.3}}
@media(max-width:360px){.taxi-main-pickup-instruction{gap:5px;padding-inline:8px;font-size:9px}.taxi-main-pickup-instruction svg{flex-basis:14px;width:14px;height:14px}}
.taxi-main-pickup-tools{bottom:118px}
@media(max-width:680px){.taxi-main-pickup-tools{bottom:calc(124px + env(safe-area-inset-bottom,0px))}}
@media(max-width:680px){.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{right:12px;bottom:calc(clamp(50px,8dvh,76px) + env(safe-area-inset-bottom,0px));left:12px;width:min(320px,calc(100% - 24px));min-width:0;max-width:none}.taxi-main-pickup-tools{bottom:calc(clamp(136px,18dvh,162px) + env(safe-area-inset-bottom,0px));width:min(340px,calc(100% - 24px))}}
.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-greeting,.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-route-sheet{display:none}
.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-map-pin{display:block!important}
.taxi-passenger-app:has(.taxi-passenger-dashboard.is-confirming-destination) .mobile-nav-taxi-passenger{display:none!important}
.taxi-main-destination-confirm{position:absolute;z-index:24;right:0;bottom:36px;left:0;display:flex;justify-content:center;box-sizing:border-box;padding:0 10px;pointer-events:none}
.taxi-main-destination-confirm[hidden]{display:none}
.taxi-main-destination-confirm>div{display:flex;flex-direction:column;align-items:center;gap:26px;box-sizing:border-box;width:min(420px,100%);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;pointer-events:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.taxi-main-destination-instruction{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:100%;margin:0;padding:9px 14px;color:#273142;background:rgba(255,255,255,.95);border:1px solid #c8ced6;border-radius:999px;box-shadow:0 4px 14px rgba(17,24,39,.12);font-size:11.5px;font-weight:700;line-height:1.3;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.taxi-main-destination-instruction svg{flex:0 0 16px;width:16px;height:16px;color:#ffc94a;stroke-width:2}
.taxi-main-destination-confirm button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid transparent;border-radius:12px;box-shadow:none;font:inherit;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]{gap:7px;min-width:210px;color:#171100;background:#ffc94a;border-color:#fff;box-shadow:0 6px 16px rgba(215,157,0,.3);font-size:12.5px;pointer-events:auto}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button] svg{flex:0 0 17px;width:17px;height:17px;color:#171100;stroke-width:2.1}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:not(:disabled){animation:taxiDestinationConfirmBreathe 1.65s ease-in-out infinite;transform-origin:center}
@keyframes taxiDestinationConfirmBreathe{0%,100%{box-shadow:0 6px 16px rgba(215,157,0,.3),0 0 0 0 rgba(255,201,74,0);transform:scale(1)}50%{box-shadow:0 10px 24px rgba(190,132,0,.38),0 0 0 7px rgba(255,201,74,.2);transform:scale(1.025)}}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:hover{background:#f2b927;border-color:#fff}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:active{animation:none}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:disabled{animation:none}
@media(prefers-reduced-motion:reduce){.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:not(:disabled){animation:none;box-shadow:0 6px 16px rgba(215,157,0,.3),0 0 0 3px rgba(255,255,255,.32)}}
.taxi-main-destination-confirm button:active{transform:scale(.985)}.taxi-main-destination-confirm button:focus-visible{outline:3px solid rgba(255,255,255,.92);outline-offset:3px}.taxi-main-destination-confirm button:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.62}
@media(max-width:680px){.taxi-passenger-app:has(.taxi-passenger-dashboard.is-confirming-destination) .taxi-passenger-dashboard{height:calc(100dvh - 62px - env(safe-area-inset-top,0px));min-height:0}.taxi-passenger-dashboard.is-confirming-destination .taxi-shell{padding-bottom:9px}.taxi-main-destination-confirm{bottom:calc(46px + env(safe-area-inset-bottom,0px));padding-inline:9px}.taxi-main-destination-confirm>div{width:min(400px,100%);gap:26px}.taxi-main-destination-instruction{padding:8px 12px;font-size:11px}.taxi-main-destination-confirm button{min-height:44px;padding:9px 14px;font-size:11.5px}.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]{font-size:12px}}
.taxi-passenger-dashboard.is-choosing-driver .taxi-passenger-greeting,.taxi-passenger-dashboard.is-choosing-driver .taxi-passenger-route-sheet,.taxi-passenger-dashboard.is-choosing-driver .taxi-passenger-map-pin{display:none}
.taxi-map-driver-picker{display:grid;grid-template-columns:minmax(0,1fr);align-self:end;justify-self:stretch;gap:8px;box-sizing:border-box;width:100%;min-width:0;pointer-events:auto}
.taxi-map-driver-picker[hidden]{display:none}
.taxi-map-driver-picker.is-active-ride-route{position:absolute;z-index:6;right:0;bottom:0;left:0;gap:0;width:100%}.taxi-map-driver-picker.is-active-ride-route .taxi-map-driver-status,.taxi-map-driver-picker.is-active-ride-route .taxi-driver-search-results{display:none!important}
.taxi-map-driver-picker>*{grid-column:1;min-width:0}
.taxi-map-driver-status{display:flex;align-items:center;justify-content:center;min-height:27px;margin-bottom:6px;color:#10243b;text-align:center}
.taxi-map-driver-status:has(>p[hidden]){display:none}
.taxi-map-driver-status>p{margin:0;padding:8px 12px;color:#344155;background:#fff;border:1px solid #e2e6ec;border-radius:999px;box-shadow:none;font-size:10px}
.taxi-map-driver-status>p[hidden]{display:none}
.taxi-map-driver-picker .taxi-driver-search-results,.taxi-map-driver-picker .taxi-driver-search-results.is-empty{display:block;margin:0;padding:0;color:var(--navy);background:transparent;border:0;border-radius:0;box-shadow:none}
.taxi-map-driver-picker .taxi-driver-search-results:not(.is-empty){box-sizing:border-box;width:min(480px,calc(100% - 40px));margin:0 auto 12px;padding:11px 14px 20px;color:#081426;background:#fff;border:1px solid #b8c0cb;border-radius:24px;box-shadow:0 0 10px rgba(66,217,199,.07);animation:taxiOptionsPanelBreath 3.4s ease-in-out infinite;-webkit-backdrop-filter:none;backdrop-filter:none}
@keyframes taxiOptionsPanelBreath{0%,100%{border-color:#b8c0cb;box-shadow:0 0 10px rgba(66,217,199,.07)}50%{border-color:#8fdcca;box-shadow:0 0 20px rgba(66,217,199,.18)}}
.taxi-driver-options-prompt{margin:0 0 9px;color:#596678;font-size:10px;font-weight:650;text-align:center}.taxi-driver-search-results.is-empty .taxi-driver-options-prompt{display:none}
.taxi-driver-fixed-fare{display:block;color:#081426;font-size:32px;font-weight:900;line-height:1;text-align:center;letter-spacing:-.04em}.taxi-driver-fixed-fare+small{display:block;max-width:330px;margin:8px auto 0;color:#6b7686;font-size:10px;line-height:1.4;text-align:center}
.taxi-map-driver-picker .taxi-driver-options{display:flex;justify-content:center;gap:12px;box-sizing:border-box;width:100%;min-width:0;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;background:transparent;scrollbar-width:none}
.taxi-map-driver-picker .taxi-driver-options::-webkit-scrollbar{display:none}
.taxi-map-driver-picker .taxi-driver-options.is-revealing .taxi-driver-option{animation:taxiDriverOptionAppear .82s cubic-bezier(.16,1,.3,1) both;transform-origin:center}
.taxi-map-driver-picker .taxi-driver-options.is-revealing .taxi-driver-option:nth-child(1){animation-delay:.1s}
.taxi-map-driver-picker .taxi-driver-options.is-revealing .taxi-driver-option:nth-child(2){animation-delay:.55s}
.taxi-map-driver-picker .taxi-driver-options.is-revealing .taxi-driver-option:nth-child(3){animation-delay:1s}
@keyframes taxiDriverOptionAppear{from{opacity:0;filter:blur(3px) saturate(.78);transform:perspective(700px) translateZ(-180px) scale(.84)}to{opacity:1;filter:blur(0) saturate(1);transform:perspective(700px) translateZ(0) scale(1)}}
.taxi-map-driver-picker .taxi-driver-option{position:relative;display:flex;flex:1 1 0;max-width:116px;min-width:0;min-height:0;aspect-ratio:1;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:11px 5px 10px;overflow:hidden;color:#081426;background:transparent;border:1px solid rgba(22,34,53,.08);border-radius:12px;box-shadow:none;text-align:center;cursor:pointer;transition:border-color .16s ease,transform .16s ease}
.taxi-map-driver-picker .taxi-driver-option.is-star{border:2px solid #49cfa6;box-shadow:0 0 12px rgba(73,207,166,.22)}.taxi-map-driver-picker .taxi-driver-option.is-clock{border:2px solid #5b8ff2;box-shadow:0 0 12px rgba(91,143,242,.22)}.taxi-map-driver-picker .taxi-driver-option.is-price{border:2px solid #f0bd2f;box-shadow:0 0 12px rgba(240,189,47,.24)}
.taxi-map-driver-picker .taxi-driver-option:hover{background:transparent;border-color:rgba(22,34,53,.12);box-shadow:none;transform:none}
.taxi-map-driver-picker .taxi-driver-option.is-star:hover{border-color:#49cfa6;box-shadow:0 0 14px rgba(73,207,166,.28)}.taxi-map-driver-picker .taxi-driver-option.is-clock:hover{border-color:#5b8ff2;box-shadow:0 0 14px rgba(91,143,242,.28)}.taxi-map-driver-picker .taxi-driver-option.is-price:hover{border-color:#f0bd2f;box-shadow:0 0 14px rgba(240,189,47,.3)}
.taxi-map-driver-picker .taxi-driver-option:active{transform:scale(.96)}
.taxi-map-driver-picker .taxi-driver-option.is-unavailable{color:#9aa3b1;background:#f7f8fa;border:1px dashed #cbd1d9;box-shadow:none;cursor:not-allowed;opacity:.8}
.taxi-map-driver-picker .taxi-driver-option.is-unavailable .taxi-driver-option-suggestion,.taxi-map-driver-picker .taxi-driver-option.is-unavailable .taxi-driver-option-meta{color:#8a94a3}
.taxi-map-driver-picker .taxi-driver-option.is-selected{background:transparent;border-color:#159b72;box-shadow:none;transform:scale(.96)}
.taxi-map-driver-picker .taxi-driver-option.is-selected::after{position:absolute;top:7px;right:9px;color:#159b72;font-size:13px;font-weight:900;line-height:1;content:"✓"}
.taxi-map-driver-picker .taxi-driver-option:focus-visible{outline:3px solid rgba(23,107,255,.38);outline-offset:4px;border-radius:12px}
.taxi-map-driver-picker .taxi-driver-option-suggestion{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:22px;color:#556273;line-height:1}.taxi-map-driver-picker .taxi-driver-option-suggestion svg{flex:0 0 18px;width:18px;height:18px;color:#a87300;fill:none;stroke:currentColor;stroke-width:2}.taxi-map-driver-picker .taxi-driver-option-suggestion>span{overflow:hidden;font-size:10px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.taxi-map-driver-picker .taxi-driver-option-suggestion.is-recommended svg{color:#159b72}
.taxi-searching-vehicle-line{display:flex;align-items:center;justify-content:center;width:min(320px,100%);margin:0 auto 1px}.taxi-searching-vehicle-line .taxi-searching-icon{position:static;flex:0 0 auto;margin:0;transform:translateY(-4px)}.taxi-searching-icon.taxi-searching-map-car{width:88px;height:56px;overflow:visible;background:transparent;box-shadow:none}.taxi-searching-map-car img{display:block;width:auto;height:auto;max-width:88px;max-height:56px;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(8,20,38,.1));user-select:none}.taxi-searching-vehicle-details{display:flex;align-items:baseline;justify-content:center;gap:7px;min-width:0;max-width:230px;margin:4px auto 0;padding:2px 6px;text-align:center;white-space:nowrap}.taxi-searching-vehicle-details[hidden]{display:none}.taxi-searching-vehicle-details b{overflow:hidden;color:#162235;font-size:13px;line-height:1.3;text-overflow:ellipsis}.taxi-searching-vehicle-details i{color:#98a2b1;font-size:12px;font-style:normal}.taxi-searching-vehicle-details small{flex:0 0 auto;color:#687486;font-size:12px;font-weight:650;line-height:1.3}
.taxi-map-driver-picker .taxi-driver-option>strong{display:flex;align-items:baseline;justify-content:center;gap:2px;width:100%;margin-top:2px;color:#162235;font-size:19px;font-weight:750;line-height:1.05;letter-spacing:-.015em;text-align:center}.taxi-map-driver-picker .taxi-driver-option>strong small{margin:0;color:#7c8797;font-size:8px;font-weight:650;letter-spacing:0}
.taxi-map-driver-picker .taxi-driver-option-meta{color:#7b8797;font-size:7px;font-weight:600;line-height:1.15;white-space:nowrap}
.taxi-map-driver-picker .taxi-driver-search-trip{justify-self:stretch;width:100%;max-width:none;min-width:0;box-sizing:border-box;margin:0;padding:0;overflow:hidden;color:#081426;background:#fff!important;border:0;border-top:1px solid #e2e6ec;border-radius:22px 22px 0 0;box-shadow:none;opacity:1;transform:translateY(var(--taxi-route-drag-y,0));transition:transform .2s ease;-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate}
.taxi-driver-route-metrics{display:flex;align-items:center;justify-content:center;gap:7px;color:#657181;white-space:nowrap}.taxi-driver-route-metrics>strong:first-child::after{content:"·";margin-left:7px;color:#9da7b4}.taxi-map-driver-picker .taxi-driver-search-route-heading .taxi-driver-route-metrics>strong:first-child,.taxi-map-driver-picker .taxi-driver-search-route-heading .taxi-driver-route-metrics>strong:last-child{color:#5f6b7a;font-size:13px;font-weight:650;letter-spacing:0}
.taxi-map-driver-picker .taxi-driver-search-route-heading{display:grid;grid-template-rows:4px auto;gap:5px;width:100%;min-height:58px;margin:0;padding:7px 14px 9px;color:#081426;background:#fff!important;border:0;touch-action:none;cursor:grab}.taxi-map-driver-picker .taxi-driver-search-route-heading:active{cursor:grabbing}.taxi-map-driver-picker .taxi-driver-search-route-heading>i{display:block;width:32px;height:4px;margin:auto;background:#d4d8de;border-radius:999px}.taxi-map-driver-picker .taxi-driver-search-route-heading>span{display:flex;align-items:center;justify-content:center;width:100%}.taxi-map-driver-picker .taxi-driver-search-route-heading strong{font-weight:650}.taxi-driver-route-details{display:grid;max-height:180px;padding:0 18px 18px;overflow:hidden;background:#fff;opacity:1;transition:max-height .3s ease,padding .3s ease,opacity .2s ease}.taxi-driver-search-trip:not(.is-expanded) .taxi-driver-route-details{max-height:0;padding-top:0;padding-bottom:0;opacity:0}.taxi-map-driver-picker .taxi-driver-search-leg{cursor:default}.taxi-map-driver-picker .taxi-driver-search-leg strong{overflow:hidden;color:#030712;font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.taxi-map-driver-picker .taxi-driver-search-leg.is-destination>i{border-color:#ffc94a}
.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded){justify-self:center;width:max-content;max-width:calc(100% - 18px);border:1px solid #c8ced6;border-radius:999px;box-shadow:0 4px 14px rgba(17,24,39,.12)}.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-search-route-heading{display:flex;align-items:center;width:max-content;max-width:100%;min-height:40px;padding:7px 15px 11px;background:rgba(255,255,255,.96)!important;border-radius:999px;cursor:pointer}.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-search-route-heading>i{display:none}.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-route-metrics>strong:first-child,.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-route-metrics>strong:last-child{font-size:11.5px}
.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-search-route-heading{display:grid;grid-template-rows:3px auto;gap:4px}.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-search-route-heading>i{display:block;width:24px;height:3px;background:#b8c0ca}
.taxi-nearby-map-marker{will-change:transform}
.taxi-fixed-pickup-marker{position:relative!important;display:block!important;background:transparent!important;border:0!important}
.taxi-fixed-pickup-marker>i{display:none;position:absolute;top:50%;left:50%;box-sizing:border-box;width:180px;height:180px;border:2px solid rgba(23,107,255,.72);border-radius:50%;opacity:0;filter:drop-shadow(0 0 3px rgba(23,107,255,.38));transform:translate(-50%,-50%) scale(.12);pointer-events:none}
.taxi-passenger-dashboard.is-choosing-driver .taxi-fixed-pickup-marker>i{display:block;animation:taxiPickupSearchWave 1.35s cubic-bezier(.15,.55,.35,1) 1 both;animation-play-state:paused}
.taxi-passenger-dashboard.is-pickup-centered .taxi-fixed-pickup-marker>i{animation-play-state:running}
.taxi-fixed-pickup-marker>span{position:absolute;top:50%;left:50%;box-sizing:border-box;width:24px;height:24px;background:#176bff;border:4px solid #fff;border-radius:50%;box-shadow:0 5px 16px rgba(15,72,163,.38);transform:translate(-50%,-50%) scale(var(--taxi-fixed-pickup-scale,1));transition:transform .2s ease}
.taxi-confirmed-destination-marker{position:relative!important;display:block!important;background:transparent!important;border:0!important}
.taxi-confirmed-destination-marker>span{position:absolute;top:7px;left:7px;display:block;box-sizing:border-box;width:34px;height:34px;background:#ffc94a;border:4px solid #fff;border-radius:50% 50% 50% 0;box-shadow:-6px 8px 18px rgba(141,96,0,.32);transform:rotate(-45deg)}
.taxi-confirmed-destination-marker>span::after{position:absolute;top:9px;left:9px;width:8px;height:8px;background:#171100;border-radius:50%;content:""}
.taxi-active-destination-marker{position:relative!important;z-index:1!important;display:grid!important;place-items:center;background:transparent!important;border:0!important}.taxi-active-destination-marker>span{display:block;box-sizing:border-box;width:24px;height:24px;background:#ffc94a;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 13px rgba(173,125,0,.4)}
@keyframes taxiPickupSearchWave{0%{transform:translate(-50%,-50%) scale(.12);opacity:0}10%{opacity:.62}72%{opacity:.18}88%,100%{transform:translate(-50%,-50%) scale(1);opacity:0}}
@media(max-width:680px){.taxi-passenger-dashboard.is-choosing-driver .taxi-shell{width:100%;padding-right:0;padding-bottom:calc(4px + env(safe-area-inset-bottom,0px));padding-left:0;overflow-x:hidden}.taxi-map-driver-picker{gap:0}.taxi-map-driver-status{min-height:24px}.taxi-map-driver-picker .taxi-driver-search-results:not(.is-empty){width:calc(100% - 18px);padding:9px 9px 18px;border-radius:21px}.taxi-map-driver-picker .taxi-driver-options{justify-content:center;gap:10px;padding:0}.taxi-map-driver-picker .taxi-driver-option{flex:1 1 0;max-width:108px;min-height:0;padding:10px 4px 9px;border-radius:12px}.taxi-map-driver-picker .taxi-driver-option>strong{font-size:19px}.taxi-map-driver-picker .taxi-driver-option-suggestion{font-size:10px}.taxi-map-driver-picker .taxi-driver-option-meta{font-size:7px}.taxi-map-driver-picker .taxi-driver-search-route-heading{min-height:56px;padding:7px 12px 8px}.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-search-route-heading{min-height:38px;padding:6px 13px 10px}.taxi-driver-route-details{padding-right:13px;padding-left:13px}.taxi-map-driver-picker .taxi-driver-search-leg{padding:10px}}
@media(max-width:680px){.taxi-passenger-is-searching .taxi-shell{width:100%;padding-right:0;padding-left:0;overflow-x:hidden}.taxi-map-driver-picker.is-active-ride-route{bottom:calc(65px + env(safe-area-inset-bottom,0px))}.taxi-passenger-is-searching .taxi-passenger-searching{bottom:calc(121px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.taxi-map-driver-picker .taxi-driver-options.is-revealing .taxi-driver-option,.taxi-map-driver-picker .taxi-driver-search-results:not(.is-empty){animation:none}}
@media(prefers-reduced-motion:reduce){.taxi-map-driver-picker .taxi-driver-search-results.is-revealing{animation:none}}
@media(prefers-reduced-motion:reduce){.taxi-passenger-dashboard.is-pickup-centered .taxi-fixed-pickup-marker>i{animation:none;opacity:0}}

@media(max-width:680px){
  .taxi-driver-status-head{position:relative;padding-right:128px}
  .taxi-driver-status-head .courier-availability-controls{position:absolute;top:50%;right:15px;width:auto!important;transform:translateY(-50%)}
  .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{box-sizing:border-box;min-height:78px;padding:12px 134px 18px 18px}
  .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head .courier-availability-controls{top:calc(50% - 3px);right:18px}
  .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-action{min-height:44px}
  .taxi-driver-waiting small{display:block;max-width:260px}
  .taxi-driver-status-sheet.is-collapsed{max-height:88px}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{justify-content:center;min-height:69px;padding:4px 16px 13px;text-align:center}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy{justify-items:center;gap:3px;width:100%}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div{position:relative;justify-content:center;width:100%}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div>i{position:absolute;left:calc(50% - 76px)}
  .taxi-driver-status-sheet.is-inactive.is-collapsed .taxi-driver-status-copy>div>i{left:calc(50% - 91px)}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy h2{width:100%;text-align:center}
  .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p{display:block;color:#6e798c;font-size:10px}
}

/* Inicio del taxista ocupa toda la pantalla útil, sin reservar la barra eliminada. */
@media(max-width:680px){
  body.taxi-driver-dashboard-page{
    position:relative;
    width:100%;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    padding-bottom:0!important;
    overflow:hidden;
    background:#dce7e8;
  }
  body.taxi-driver-dashboard-page>main{
    position:relative!important;
    inset:auto!important;
    width:100%;
    height:calc(100vh - 62px - env(safe-area-inset-top,0px));
    height:calc(100dvh - 62px - env(safe-area-inset-top,0px));
    overflow:hidden;
    background:#dce7e8;
  }
  .taxi-driver-dashboard-page .taxi-driver-map-dashboard{
    width:100%;
    height:100%!important;
    min-height:0;
  }
  .taxi-driver-dashboard-page .taxi-driver-bottom-stack{
    bottom:max(0px,env(safe-area-inset-bottom,0px));
  }
}

/* WebKit resta las áreas seguras de 100dvh en PWAs instaladas. En modo
   standalone, 100vh sí representa la pantalla completa del iPhone. */
@media(max-width:680px) and (display-mode:standalone){
  html:has(body.taxi-driver-dashboard-page),
  body.taxi-driver-dashboard-page{
    height:100vh!important;
    min-height:100vh!important;
  }
  body.taxi-driver-dashboard-page>main{
    height:calc(100vh - 62px - env(safe-area-inset-top,0px))!important;
  }
}

.taxi-municipality-options-heading{
  margin:8px 4px 2px;
  color:#667085;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.taxi-municipality-options-heading.is-suggested{color:#667085}
.taxi-municipality-options>button.is-suggested{
  background:#fff;
  border-color:#dfe4ec;
}
.taxi-municipality-options>button[hidden]{display:none}
.taxi-municipality-options>.taxi-municipality-show-more{min-height:auto;padding:7px 4px;color:#315fc5;background:transparent;border:0;border-radius:0;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px;box-shadow:none;justify-content:flex-start}
.taxi-municipality-options>.taxi-municipality-show-more:hover,.taxi-municipality-options>.taxi-municipality-show-more:focus{color:#1f4598;background:transparent;border:0;outline:0;box-shadow:none}
.taxi-passenger-municipality-dialog[open]{display:flex;align-items:center;justify-content:center}
.taxi-passenger-municipality-dialog .taxi-municipality-card{grid-template-rows:auto auto;height:auto;max-height:calc(100dvh - 32px);margin:auto}
.taxi-passenger-municipality-dialog .taxi-municipality-options{gap:6px;padding:10px 12px 12px;overflow:visible}
.taxi-passenger-municipality-dialog .taxi-municipality-options>button[data-taxi-municipality-value]{min-height:50px;padding:13px 15px 11px;font-size:14px}
.taxi-passenger-municipality-dialog.has-suggestions:not(.is-expanded) [data-taxi-municipality-value]:not(.is-suggested){display:none!important}
.taxi-passenger-municipality-dialog.is-expanded .taxi-municipality-card{grid-template-rows:auto minmax(0,1fr);height:100%}
.taxi-passenger-municipality-dialog.is-expanded .taxi-municipality-options{overflow:auto}
@media(max-width:560px){.taxi-passenger-municipality-dialog .taxi-municipality-card{max-height:calc(100dvh - 20px)}.taxi-passenger-municipality-dialog.is-expanded .taxi-municipality-card{height:100%}}

/* Municipios dentro de la búsqueda: selección rápida sin abrir otra ventana. */
[data-taxi-municipality-inline-host]:empty{display:none}
.taxi-inline-municipality{animation:taxiInlineMunicipalityIn .2s ease both}
.taxi-inline-municipality[hidden]{display:none}
.taxi-inline-municipality .taxi-municipality-options{display:flex;flex-wrap:wrap;gap:8px}
.taxi-inline-municipality .taxi-municipality-options>button[data-taxi-municipality-value]{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:auto;min-height:38px;padding:8px 15px;color:#283548;background:#fff;border:1px solid #cfd9e7;border-radius:999px;font:inherit;font-size:12px;font-weight:750;line-height:1.2;white-space:nowrap;box-shadow:0 3px 10px rgba(19,42,70,.07);cursor:pointer}
.taxi-inline-municipality .taxi-municipality-options>button[data-taxi-municipality-value]:hover,.taxi-inline-municipality .taxi-municipality-options>button[data-taxi-municipality-value]:focus{background:#edf4ff;border-color:#8bb4ff;outline:0;box-shadow:0 0 0 2px rgba(23,107,255,.12)}
.taxi-inline-municipality .taxi-municipality-options>button[data-taxi-municipality-value][aria-pressed="true"]{color:#0b51bd;background:#eaf2ff;border-color:#73a5f4}
@keyframes taxiInlineMunicipalityIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:420px){.taxi-inline-municipality .taxi-municipality-options{gap:7px}.taxi-inline-municipality .taxi-municipality-options>button[data-taxi-municipality-value]{padding-inline:12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.taxi-inline-municipality{animation:none}}
.taxi-municipality-options>.order-municipality-show-more{min-height:auto;padding:8px 4px;color:#315fc5;background:transparent;border:0;border-radius:0;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px;box-shadow:none;justify-content:flex-start}
.taxi-municipality-options>.order-municipality-show-more:hover,.taxi-municipality-options>.order-municipality-show-more:focus{color:#1f4598;background:transparent;border:0;outline:0;box-shadow:none}
.order-municipality-dialog[open]{display:flex;align-items:center;justify-content:center}
.order-municipality-dialog .taxi-municipality-card{grid-template-rows:auto auto;height:auto;max-height:calc(100dvh - 32px);margin:auto}
.order-municipality-dialog .taxi-municipality-options{overflow:visible}
.order-municipality-dialog .taxi-municipality-options>button[data-order-municipality-value]{min-height:50px;padding:14px 15px 11px;font-size:13px}
.order-municipality-dialog.is-expanded .taxi-municipality-card{grid-template-rows:auto minmax(0,1fr);height:100%}
.order-municipality-dialog.is-expanded .taxi-municipality-options{overflow:auto}
@media(max-width:560px){.order-municipality-dialog .taxi-municipality-card{max-height:calc(100dvh - 20px)}.order-municipality-dialog.is-expanded .taxi-municipality-card{height:100%}}

/* Direcciones más ligeras en los estados de búsqueda de Taxi. */
.taxi-searching-route-field strong,
.taxi-map-driver-picker .taxi-driver-search-leg strong{
  color:#667387;
  font-weight:600;
}

/* Sin tarjeta de saludo, los controles del mapa aprovechan el borde superior. */
.taxi-passenger-dashboard.is-choosing-driver .taxi-passenger-map .leaflet-top.leaflet-left,
.taxi-passenger-dashboard:not(:has(.taxi-passenger-greeting)) .taxi-passenger-map .leaflet-top.leaflet-left{
  top:100px;
}
.taxi-driver-map-dashboard .taxi-driver-raster-map .leaflet-top.leaflet-left{
  top:18px;
  right:10px;
  left:auto;
}
.taxi-driver-navigation-instruction{position:absolute;z-index:5;top:16px;left:50%;display:flex;align-items:center;gap:11px;width:max-content;min-width:150px;max-width:min(290px,calc(100% - 96px));box-sizing:border-box;padding:9px 14px 9px 10px;color:#fff;background:rgba(8,20,38,.86);border:1px solid rgba(255,255,255,.18);border-radius:16px;box-shadow:0 8px 24px rgba(8,20,38,.22);transform:translateX(-50%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none}.taxi-driver-navigation-instruction[hidden]{display:none}.taxi-driver-navigation-instruction>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:#081426;background:#34e0bf;border-radius:12px}.taxi-driver-navigation-instruction svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:3.3;stroke-linecap:round;stroke-linejoin:round}.taxi-driver-navigation-instruction .taxi-navigation-arrow{display:none}.taxi-driver-navigation-instruction[data-direction="straight"] .taxi-navigation-arrow.is-straight{display:block}.taxi-driver-navigation-instruction[data-direction="right"] .taxi-navigation-arrow.is-right{display:block}.taxi-driver-navigation-instruction[data-direction="left"] .taxi-navigation-arrow.is-left{display:block}.taxi-driver-navigation-instruction[data-direction="uturn"] .taxi-navigation-arrow.is-uturn{display:block}.taxi-driver-navigation-instruction>div{display:grid;min-width:0;gap:1px}.taxi-driver-navigation-instruction strong{font-size:18px;line-height:1.05;letter-spacing:-.02em}.taxi-driver-navigation-instruction small{display:block;min-width:0;overflow:hidden;color:rgba(255,255,255,.72);font-size:10px;font-weight:750;line-height:1.25;white-space:nowrap;text-overflow:ellipsis}.taxi-driver-navigation-instruction .taxi-navigation-road{color:#fff;font-size:11px}.taxi-driver-navigation-instruction .taxi-navigation-road[hidden]{display:none}
.leaflet-container{background:#f2f1eb!important}
.taxi-driver-test-mode-notice{position:absolute;z-index:7;top:10px;left:10px;box-sizing:border-box;padding:4px 8px;color:#fff;background:rgba(16,25,53,.72);border:1px solid rgba(255,255,255,.28);border-radius:999px;box-shadow:0 2px 7px rgba(16,25,53,.16);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);pointer-events:none;white-space:nowrap}.taxi-driver-test-mode-notice strong{font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1}.taxi-driver-test-mode-notice small{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.taxi-driver-map-controls{--taxi-driver-controls-bottom:12px;position:absolute;z-index:5;top:16px;bottom:auto;left:10px;display:grid;gap:8px}.taxi-driver-map-controls .taxi-driver-rotation-lock,.taxi-driver-map-controls .taxi-driver-orientation-enable,.taxi-driver-map-controls .taxi-driver-recenter{position:static;inset:auto;width:44px;height:44px;margin:0}
.taxi-driver-map:has(.taxi-driver-test-mode-notice) .taxi-driver-map-controls{top:44px}
.taxi-driver-test-drive{--taxi-driver-test-bottom:12px;position:absolute;z-index:6;right:10px;bottom:var(--taxi-driver-test-bottom);display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 13px;color:#fff;background:rgba(8,20,38,.9);border:1px solid rgba(255,255,255,.2);border-radius:13px;box-shadow:0 7px 20px rgba(8,20,38,.22);font-size:11px;font-weight:850;letter-spacing:.01em;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .18s ease,opacity .18s ease,transform .18s ease}.taxi-driver-test-drive svg{width:16px;height:16px;fill:currentColor}.taxi-driver-test-pause{display:none}.taxi-driver-test-drive.is-running{color:#10243b;background:#34e0bf}.taxi-driver-test-drive.is-running .taxi-driver-test-play{display:none}.taxi-driver-test-drive.is-running .taxi-driver-test-pause{display:block}.taxi-driver-test-drive.is-complete{color:#10243b;background:#ffc94a}.taxi-driver-test-drive:active:not(:disabled){transform:scale(.96)}.taxi-driver-test-drive:disabled{opacity:.48;cursor:wait}
.taxi-driver-test-reset{--taxi-driver-test-bottom:12px;position:absolute;z-index:6;right:10px;bottom:calc(var(--taxi-driver-test-bottom) + 50px);display:grid;place-items:center;width:42px;height:42px;padding:0;color:#176bff;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.92);border-radius:50%;box-shadow:0 7px 20px rgba(8,20,38,.2);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .18s ease,transform .18s ease}.taxi-driver-test-reset>span{box-sizing:border-box;width:15px;height:15px;background:#176bff;border:4px solid #dce9ff;border-radius:50%;box-shadow:0 2px 7px rgba(23,107,255,.35)}.taxi-driver-test-reset:active{transform:scale(.92)}.taxi-driver-test-reset:focus-visible{outline:3px solid rgba(23,107,255,.32);outline-offset:2px}
.taxi-driver-status-action.is-trip-state{cursor:default;pointer-events:none;white-space:nowrap}.taxi-driver-active-ride-inline{width:100%;max-height:none;margin:0;overflow:visible}.taxi-driver-active-ride-inline .taxi-map-active-trip{padding:13px}.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(72dvh,650px)}.taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{max-height:calc(min(72dvh,650px) - 80px)}
@media(max-width:680px){
  .taxi-passenger-dashboard.is-choosing-driver .taxi-passenger-map .leaflet-top.leaflet-left,
  .taxi-passenger-dashboard:not(:has(.taxi-passenger-greeting)) .taxi-passenger-map .leaflet-top.leaflet-left{
    top:62px;
  }
  .taxi-driver-map-dashboard .taxi-driver-raster-map .leaflet-top.leaflet-left{
    top:16px;
    right:8px;
    left:auto;
  }
  .taxi-driver-navigation-instruction{top:10px;left:50%;min-width:142px;padding:8px 12px 8px 8px;border-radius:14px}.taxi-driver-test-mode-notice{left:8px}.taxi-driver-navigation-instruction>span{flex-basis:39px;width:39px;height:39px;border-radius:11px}.taxi-driver-navigation-instruction svg{width:27px;height:27px}.taxi-driver-navigation-instruction strong{font-size:17px}.taxi-driver-map-controls{top:10px;left:8px}.taxi-driver-map:has(.taxi-driver-test-mode-notice) .taxi-driver-map-controls{top:42px}.taxi-driver-active-ride-inline{width:100%;margin:0}.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(68dvh,620px)}.taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{max-height:calc(min(68dvh,620px) - 78px)}
}

@media(max-width:680px){
  .hero-actions{
    width:min(100%,310px);
    margin-inline:auto;
  }
}

.taxi-driver-service-warning{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:11px;
  margin:0 0 12px;
  padding:13px 14px;
  color:#6f4c0f;
  background:#fff4cf;
  border:1px solid #e8cb72;
  border-radius:13px;
}
.taxi-driver-service-warning>svg{
  width:22px;
  height:22px;
  color:#b47500;
}
.taxi-driver-service-warning>span{
  display:grid;
  gap:4px;
}
.taxi-driver-service-warning b{
  font-size:13px;
}
.taxi-driver-service-warning small{
  color:#765d2f;
  font-size:11px;
  line-height:1.45;
}

/* Indicación ligera para completar la configuración desde el perfil. */
.taxi-driver-profile-guide{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;box-sizing:border-box;width:100%;padding:12px 14px;color:#18233a;background:rgba(255,255,255,.97);border:1px solid #e1e6ed;border-radius:14px;box-shadow:0 7px 20px rgba(8,25,45,.1);pointer-events:auto}
.taxi-driver-profile-guide-icon{display:grid;place-items:center;width:42px;height:42px;color:#171100;background:linear-gradient(145deg,#ffe486,#ffc94a);border:1px solid #f4bd2b;border-radius:13px;box-shadow:0 6px 14px rgba(208,148,0,.24)}
.taxi-driver-profile-guide-icon svg{width:23px;height:23px;stroke-width:2.1}
.taxi-driver-profile-guide-copy{display:grid;gap:2px;min-width:0}
.taxi-driver-profile-guide-copy b{font-size:15px;line-height:1.2}
.taxi-driver-profile-guide p{margin:0;color:#647084;font-size:12px;line-height:1.4}
.taxi-driver-profile-guide-action{display:flex;align-items:center;gap:5px;padding:9px 10px;color:#315fc8;border-radius:9px;font-size:12px;font-weight:850;text-decoration:none;white-space:nowrap}
.taxi-driver-profile-guide-action:hover,.taxi-driver-profile-guide-action:focus-visible{color:#244fae;background:#f0f4ff;text-decoration:none}
.taxi-driver-profile-guide-action:focus-visible{outline:2px solid rgba(49,95,200,.25);outline-offset:1px}
.taxi-driver-profile-guide-action svg{width:15px;height:15px}
@media(max-width:680px){.taxi-driver-profile-guide{position:fixed;z-index:110;right:9px;bottom:calc(76px + env(safe-area-inset-bottom,0px));grid-template-columns:40px minmax(0,1fr);gap:10px;width:min(350px,calc(100% - 18px));margin:0;padding:13px 13px 12px;border-color:#f0cf72;border-radius:17px;box-shadow:0 16px 42px rgba(8,25,45,.24)}.taxi-driver-profile-guide::after{position:absolute;right:35px;bottom:-10px;width:18px;height:18px;background:#fff;border-right:1px solid #f0cf72;border-bottom:1px solid #f0cf72;content:"";transform:rotate(45deg)}.taxi-driver-profile-guide-icon{width:38px;height:38px;border-radius:11px}.taxi-driver-profile-guide-icon svg{width:21px;height:21px}.taxi-driver-profile-guide-copy b{font-size:14px}.taxi-driver-profile-guide p{font-size:11px}.taxi-driver-profile-guide-action{grid-column:2;justify-self:start;margin-top:-2px;padding:6px 8px;color:#234fae;background:#eef3ff;font-size:11px}.taxi-driver-profile-guide-action svg{width:13px;height:13px}}

@media(max-width:760px){
  .about-goal-list article:nth-child(odd){
    margin-right:0;
    border-right:0;
  }
}

/* Acceso flotante a las estadísticas de ganancias. */
.taxi-rides-history .history-filters{align-items:center;padding:0;background:transparent;border-radius:0;overflow-x:auto}
.taxi-rides-history .history-filter-group{display:flex;flex:0 0 auto;gap:6px;padding:4px;background:#e9edf2;border-radius:14px}
.taxi-rides-history{padding-bottom:130px}.taxi-rides-earnings-dock{position:fixed;z-index:35;right:0;bottom:max(20px,env(safe-area-inset-bottom,0px));left:0;display:flex;justify-content:center;padding:7px 16px;pointer-events:none;transform:none!important;-webkit-transform:none!important}.taxi-rides-earnings-button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;width:min(280px,100%);min-height:50px;padding:12px 22px;color:#fff;background:#0b0b0d;border:1px solid #252529;border-radius:15px;box-shadow:0 8px 20px rgba(0,0,0,.24);font-size:14px;font-weight:850;pointer-events:auto;transition:background .18s,box-shadow .18s}.taxi-rides-earnings-button svg{width:19px;height:19px}.taxi-rides-earnings-button:hover,.taxi-rides-earnings-button:focus-visible{color:#fff;background:#000;box-shadow:0 10px 24px rgba(0,0,0,.3);outline:0;transform:none!important}.taxi-rides-earnings-button.active{background:#000;box-shadow:0 0 0 3px rgba(0,0,0,.14),0 9px 22px rgba(0,0,0,.28)}
@media(max-width:760px){.taxi-rides-history .history-filters{margin-inline:0;padding:0}.taxi-rides-history .history-filter-group{gap:3px;padding:3px}}
@media(max-width:680px){body.taxi-rides-page{overscroll-behavior-y:none}.taxi-rides-history{padding-bottom:145px}.taxi-rides-earnings-dock{position:fixed!important;bottom:calc(77px + env(safe-area-inset-bottom,0px))!important;animation:none!important;transform:none!important;-webkit-transform:none!important;transition:none!important;will-change:auto}.taxi-rides-earnings-button{width:min(250px,calc(100% - 24px));min-height:48px;border-radius:14px}.taxi-rides-earnings-button:hover,.taxi-rides-earnings-button:focus-visible{transform:none!important}.mobile-keyboard-open .taxi-rides-earnings-dock{display:none!important}}

/* El regreso de alta de taxista permanece arriba y alineado al borde izquierdo. */
.taxi-offer-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.taxi-offer-head-actions form{display:flex;width:auto!important;margin:0}
.taxi-offer-head-actions .taxi-reject-action{display:grid;place-items:center;width:34px;height:34px;min-height:34px;padding:0;color:#586375;background:#f0f2f5;border:1px solid #dce1e7;border-radius:50%;font:500 24px/1 inherit;text-decoration:none;cursor:pointer}
.taxi-offer-head-actions .taxi-reject-action:hover,.taxi-offer-head-actions .taxi-reject-action:focus-visible{color:#fff;background:#ad3541;border-color:#ad3541;text-decoration:none;outline:0}
.taxi-map-offer .taxi-map-offer-actions{gap:0}
.taxi-map-offer .taxi-map-offer-actions form{width:100%}
.taxi-map-offer-actions .taxi-accept-button{display:flex;align-items:center;justify-content:center;gap:9px}
.taxi-accept-countdown{display:inline-flex;align-items:center;gap:0;color:rgba(255,255,255,.78);font-size:13px;font-weight:750;white-space:nowrap}
.taxi-accept-countdown .taxi-offer-countdown{display:inline;padding:0;color:inherit;background:transparent;border:0;border-radius:0;font:inherit;box-shadow:none}
.taxi-driver-status-sheet{display:flex;flex-direction:column}
.taxi-priority-offers{z-index:2;flex:0 1 auto;max-height:min(43dvh,420px);padding:14px 20px;overflow:auto;background:#f5f7fa;border-bottom:1px solid #dfe4eb;overscroll-behavior:contain}
.taxi-driver-bottom-stack>.taxi-priority-offers{width:100%;max-height:min(52dvh,520px);box-sizing:border-box;padding:0;overflow:auto;background:transparent;border:0;pointer-events:auto}
.taxi-priority-offers .taxi-map-offer-list{margin:0}
.taxi-active-passenger-priority{position:relative;z-index:2;display:grid;gap:10px;max-height:min(48dvh,470px);padding:0;overflow:auto;background:transparent;border:0;pointer-events:auto;overscroll-behavior:contain;transition:max-height .25s cubic-bezier(.2,.75,.25,1)}
.taxi-active-trip-handle{position:absolute;z-index:3;top:0;right:0;left:0;display:block;width:100%;height:18px;margin:0;padding:6px 0 8px;background:transparent;border:0;cursor:pointer}.taxi-active-trip-handle>span[aria-hidden]{display:block;width:40px;height:4px;margin:auto;background:#d5dbe4;border-radius:99px}
.taxi-active-passenger-priority .taxi-map-active-trip{padding-top:20px;transition:min-height .25s cubic-bezier(.2,.75,.25,1),padding .25s cubic-bezier(.2,.75,.25,1)}
.taxi-active-passenger-priority.is-collapsed{max-height:70px!important;overflow:hidden}
.taxi-active-passenger-priority.is-collapsed .taxi-map-active-trip{box-sizing:border-box;min-height:70px;padding:18px 13px 9px}
.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-location,.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-contact,.taxi-active-passenger-priority.is-collapsed .taxi-trip-note,.taxi-active-passenger-priority.is-collapsed .taxi-stage-action{display:none}
.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-heading{gap:9px}.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-heading>span{width:34px;height:34px;border-radius:10px}.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-heading h3{font-size:15px}.taxi-active-passenger-priority.is-collapsed .taxi-map-trip-heading>strong{font-size:16px}
.taxi-driver-bottom-stack.has-active-trip>.taxi-active-passenger-priority,.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet{max-height:min(38dvh,380px)}
.taxi-active-passenger-priority .taxi-map-active-trip{gap:11px;padding:15px;color:#111b2d;background:#fff;border:1px solid #dfe5ec;border-radius:20px;box-shadow:0 12px 28px rgba(12,29,50,.13)}
.taxi-active-passenger-priority .taxi-map-trip-heading>span{color:#101935;background:#ffc94a}
.taxi-active-passenger-priority .taxi-map-trip-heading small{color:#778397}.taxi-active-passenger-priority .taxi-map-trip-heading h3{color:#101935}.taxi-active-passenger-priority .taxi-map-trip-heading>strong{color:#101935}.taxi-active-passenger-priority .taxi-map-trip-heading>strong small{color:#7f8998}
.taxi-active-passenger-priority .taxi-map-trip-location{background:#f5f7fa;border-color:#e4e8ee}.taxi-active-passenger-priority .taxi-map-trip-location small{color:#7b8798;font-size:7px;font-weight:850;letter-spacing:.1em}.taxi-active-passenger-priority .taxi-map-trip-location b{color:#152036}.taxi-active-passenger-priority .taxi-map-trip-location p{color:#697589}
.taxi-active-passenger-priority .taxi-map-trip-contact .avatar{color:#101935;background:#ffdb65}.taxi-active-passenger-priority .taxi-map-trip-contact small{color:#7b8798}.taxi-active-passenger-priority .taxi-map-trip-contact b{color:#101935;font-size:11px}.taxi-active-passenger-priority .taxi-map-trip-contact p{margin:1px 0 0;color:#788395;font-size:8px}.taxi-active-passenger-priority .taxi-map-trip-contact>a{color:#101935;background:#edf1f5}.taxi-active-passenger-priority .taxi-map-trip-contact>a:last-child{background:#fff0bd}
.taxi-active-passenger-priority .taxi-map-active-trip .taxi-trip-note{color:#5e697b}.taxi-active-passenger-priority .taxi-map-active-trip .taxi-stage-action .button{color:#fff;background:#101935;box-shadow:0 8px 18px rgba(16,25,53,.2)}
.taxi-driver-status-sheet>.taxi-driver-sheet-handle{display:block;flex:0 0 24px;height:24px;padding:9px 0 7px}.taxi-driver-status-sheet>.taxi-driver-sheet-handle>span[aria-hidden]{width:46px;height:5px;background:#8e98a8;box-shadow:0 1px 2px rgba(16,25,53,.12)}
.taxi-driver-status-head{flex:0 0 auto}
.taxi-driver-status-sheet .taxi-driver-sheet-scroll{flex:1 1 auto;min-height:0;max-height:none}
@media(max-width:680px){.taxi-priority-offers{max-height:50dvh;padding:10px 14px 12px}.taxi-driver-bottom-stack>.taxi-priority-offers{width:calc(100% - 18px);max-height:52dvh;margin-inline:auto;padding:0}.taxi-priority-offers .taxi-map-offer{box-shadow:0 8px 22px rgba(15,30,50,.1)}.taxi-active-passenger-priority{width:calc(100% - 18px);max-height:52dvh;margin-inline:auto}.taxi-driver-bottom-stack.has-active-trip>.taxi-active-passenger-priority,.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet{max-height:min(38dvh,380px)}.taxi-active-passenger-priority .taxi-map-active-trip{padding:13px;border-radius:18px}.taxi-active-passenger-priority .taxi-map-trip-heading>strong{font-size:17px}}
@media(max-width:680px){.taxi-driver-dashboard-page .taxi-driver-status-sheet.is-collapsed{max-height:96px}}

/* El estado del taxista queda compacto y no compite con la ventana del viaje. */
.taxi-driver-status-sheet>.taxi-driver-sheet-handle{flex-basis:18px;height:18px;padding:6px 0 5px}
.taxi-driver-status-head{padding:11px 16px}
.taxi-driver-status-sheet .taxi-driver-sheet-scroll{padding:9px 16px 12px}
.taxi-driver-status-sheet.is-collapsed{max-height:58px}
.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{box-sizing:border-box;min-height:40px;padding:0 14px 7px;border-bottom:0;cursor:pointer}
.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p,.taxi-driver-status-sheet.is-collapsed .courier-availability-controls,.taxi-driver-status-sheet.is-collapsed .taxi-driver-sheet-scroll{display:none}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(30dvh,280px)}
@media(max-width:680px){.taxi-driver-status-sheet>.taxi-driver-sheet-handle{flex-basis:16px;height:16px;padding:5px 0 4px}.taxi-driver-status-sheet>.taxi-driver-sheet-handle>span[aria-hidden]{width:40px;height:4px}.taxi-driver-dashboard-page .taxi-driver-status-sheet.is-collapsed{max-height:56px}.taxi-driver-dashboard-page .taxi-driver-status-sheet:not(.is-collapsed){max-height:min(42dvh,360px)}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:40px;padding:0 12px 6px}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div{position:static;width:auto;gap:6px}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div>i{position:static;flex:0 0 auto}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy h2{width:auto;font-size:17px;text-align:left}.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{min-height:62px;padding:7px 126px 10px 15px}.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head .courier-availability-controls{right:15px}.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-action{min-height:38px}.taxi-driver-status-sheet .taxi-driver-sheet-scroll{padding:8px 12px 10px}.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(26dvh,230px)}}

/* El control de disponibilidad conserva protagonismo sin dominar el panel. */
.taxi-driver-status-action{gap:5px;min-width:92px;min-height:38px;padding:7px 11px;border-radius:11px;font-size:11px}
.taxi-driver-status-action svg{width:16px;height:16px}
@media(max-width:680px){.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{padding-right:118px}.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-action{min-width:90px;min-height:40px;padding:7px 11px;font-size:11px}.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-action svg{width:16px;height:16px}}
.taxi-driver-bottom-stack.has-offers>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(30dvh,280px)}
@media(max-width:680px){.taxi-driver-bottom-stack.has-offers>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(26dvh,230px)}}

.taxi-register-form-side{position:relative}
.taxi-register-form-side .taxi-register-return{position:absolute;z-index:2;top:82px;left:34px;margin:0;color:#55627a;font-size:12px;font-weight:750}
@media(max-width:1100px){.taxi-register-form-side .taxi-register-return{left:25px}}
@media(max-width:920px){.taxi-register-form-side .taxi-register-return{top:70px;left:20px}}
@media(max-width:680px){.auth-page .register-shell .taxi-register-form-side{padding-top:calc(104px + env(safe-area-inset-top,0px))}.taxi-register-form-side .taxi-register-return{top:calc(72px + env(safe-area-inset-top,0px));left:15px}}

/* Selector deslizante entre los espacios administrativos de EnRuta y Taxi. */
.admin-workspace-switch{
  display:grid;
  grid-template-columns:1fr 50px 1fr;
  align-items:center;
  gap:9px;
  margin:0 3px 17px;
  padding:10px 12px;
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.13);
  border-radius:13px;
  box-shadow:inset 0 1px rgba(255,255,255,.04);
  cursor:pointer;
}
.admin-workspace-switch:hover{color:#fff;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.2)}
.admin-workspace-switch:focus-visible{outline:3px solid rgba(52,224,191,.35);outline-offset:3px}
.admin-workspace-name{font-size:11px;font-weight:850;transition:color .2s,opacity .2s}
.admin-workspace-name-general{text-align:right;color:#34e0bf}
.admin-workspace-name-taxi{text-align:left;color:rgba(255,255,255,.48)}
.admin-workspace-toggle{position:relative;display:block;width:50px;height:28px;padding:3px;background:#263352;border:1px solid rgba(255,255,255,.18);border-radius:999px;box-shadow:inset 0 2px 5px rgba(0,0,0,.25);transition:background .25s,border-color .25s}
.admin-workspace-toggle i{display:block;width:20px;height:20px;background:#34e0bf;border-radius:50%;box-shadow:0 3px 8px rgba(0,0,0,.35);transform:translateX(0);transition:transform .28s cubic-bezier(.22,.8,.3,1),background .25s}
.admin-workspace-switch.is-taxi .admin-workspace-name-general{color:rgba(255,255,255,.48)}
.admin-workspace-switch.is-taxi .admin-workspace-name-taxi{color:#ffc94a}
.admin-workspace-switch.is-taxi .admin-workspace-toggle{background:#4a3e1c;border-color:rgba(255,201,74,.42)}
.admin-workspace-switch.is-taxi .admin-workspace-toggle i{background:#ffc94a;transform:translateX(22px)}

/* Cambio de foto con aprobación e historial de identidad. */
.profile-photo-change-card{display:grid;gap:14px}
.profile-photo-change-heading{display:flex;align-items:center;gap:12px}
.profile-photo-change-heading .avatar{width:52px;height:52px}
.profile-photo-change-heading small{color:var(--blue);font-size:11px;font-weight:850;letter-spacing:.08em}
.profile-photo-change-heading h2{margin:2px 0 0!important}
.profile-photo-change-card>p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.profile-photo-change-card form{display:grid;gap:10px}
.profile-photo-change-card form>input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.profile-photo-change-card form>small{color:var(--muted);font-size:12px;text-align:center}
.profile-photo-upload{display:grid;place-items:center;overflow:hidden;width:100%;min-height:190px;background:#f3f6fb;border:1px dashed #b8c4d8;border-radius:16px}
.profile-photo-upload>input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.profile-photo-preview{display:grid;place-items:center;align-content:center;gap:8px;width:100%;min-height:190px;padding:0;overflow:hidden;color:var(--muted);background:transparent;border:0;cursor:pointer}
.profile-photo-preview svg{width:32px;height:32px}
.profile-photo-preview span{font-size:12px;font-weight:750}
.profile-photo-preview img{display:block;width:100%;height:190px;object-fit:cover}
.profile-photo-locked{color:#5c6577;background:#f5f7fa;border-color:#d7dfed}
.profile-photo-dialog-trigger{display:flex;align-items:center;justify-content:center;gap:9px}.profile-photo-dialog-trigger svg{width:19px;height:19px}
.profile-photo-dialog{width:min(600px,calc(100% - 20px))}.profile-photo-dialog-card{gap:12px;max-height:calc(100dvh - 16px);padding:18px;overflow:auto}.profile-photo-dialog-card .profile-change-heading small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.09em}.profile-photo-dialog-card>p{margin:-4px 0 0}.profile-photo-dialog-comparison{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);align-items:center;gap:7px}.profile-photo-dialog-comparison>section{display:grid;justify-items:center;align-content:start;gap:6px;min-width:0;padding:9px;background:#f7f9fc;border:1px solid #e0e5ed;border-radius:13px}.profile-photo-dialog-comparison>section>b{font-size:13px;text-align:center}.profile-photo-dialog-comparison>section>small,.profile-photo-dialog-comparison [data-camera-selection]{color:var(--muted);font-size:9px;line-height:1.3;text-align:center}.profile-photo-current{display:grid;place-items:center;width:112px;height:112px;min-height:112px;overflow:hidden;background:#e9eef5;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #d5dce7}.profile-photo-current img{display:block;width:100%;height:100%;object-fit:cover}.profile-photo-current>span{display:grid;place-items:center;width:100%;height:100%;color:#fff;background:var(--blue);border-radius:50%;font-size:34px;font-weight:850}.profile-photo-change-arrow{display:grid;place-items:center;width:32px;height:32px;color:#fff;background:var(--blue);border-radius:50%;box-shadow:0 5px 14px rgba(74,125,242,.24)}.profile-photo-change-arrow svg{width:17px;height:17px}.profile-photo-dialog .profile-photo-avatar-upload{display:flex;align-items:center;justify-content:center;width:100%;height:112px;min-height:112px;margin:0;background:transparent;border:0}.profile-photo-dialog .profile-photo-avatar-picker{flex:0 0 112px;width:112px;height:112px;min-height:112px;margin:0;padding:0;color:#7f8999;background:#e1e5eb;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #cbd2dc,0 7px 18px rgba(20,34,58,.12);transition:transform .16s ease,box-shadow .16s ease}.profile-photo-dialog .profile-photo-avatar-picker:hover,.profile-photo-dialog .profile-photo-avatar-picker:focus-visible{transform:scale(1.035);box-shadow:0 0 0 3px rgba(74,125,242,.2),0 9px 22px rgba(20,34,58,.16);outline:0}.profile-photo-dialog .profile-photo-avatar-picker svg{width:48px;height:48px}.profile-photo-dialog .profile-photo-avatar-picker img{width:100%;height:100%!important;border-radius:50%;object-fit:cover}.profile-photo-approval-note{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:10px;color:#263b68;background:#eef4ff;border:1px solid #bfd0f5;border-radius:11px}.profile-photo-approval-note>svg{width:21px;height:21px}.profile-photo-approval-note>span{display:grid;gap:2px}.profile-photo-approval-note b{font-size:12px}.profile-photo-approval-note small{font-size:10px;line-height:1.4}.profile-photo-dialog-card .profile-photo-confirm{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:0 2px;font-size:11px;line-height:1.4}.profile-photo-confirm input{width:17px;height:17px;margin:0;accent-color:var(--blue)}
@media(max-width:600px){.profile-photo-dialog{width:calc(100% - 10px)}.profile-photo-dialog-card{gap:10px;padding:13px}.profile-photo-dialog-comparison{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);gap:5px}.profile-photo-dialog-comparison>section{gap:5px;padding:6px}.profile-photo-dialog-comparison>section>b{font-size:11px}.profile-photo-current,.profile-photo-dialog .profile-photo-avatar-picker{width:88px;height:88px;min-height:88px}.profile-photo-dialog .profile-photo-avatar-picker{flex-basis:88px}.profile-photo-dialog .profile-photo-avatar-upload{height:88px;min-height:88px}.profile-photo-current>span{font-size:28px}.profile-photo-dialog .profile-photo-avatar-picker svg{width:40px;height:40px}.profile-photo-change-arrow{width:26px;height:26px}.profile-photo-change-arrow svg{width:14px;height:14px}.profile-photo-dialog-card .profile-change-actions .button{min-height:42px;padding:9px 8px;font-size:11px}}
.profile-photo-dialog-comparison>section{grid-template-rows:18px 112px 24px;align-items:center;box-sizing:border-box;width:100%;height:172px;gap:5px;padding:8px}.profile-photo-dialog-comparison>section>b{line-height:18px}.profile-photo-dialog-comparison>section>small,.profile-photo-dialog-comparison [data-camera-selection]{display:grid;place-items:center;min-height:24px;margin:0;line-height:1.25}
.profile-photo-dialog .profile-photo-avatar-picker{box-shadow:none;transition:none}.profile-photo-dialog .profile-photo-avatar-picker:hover{transform:none;box-shadow:none}.profile-photo-dialog .profile-photo-avatar-picker:focus-visible{transform:none;box-shadow:none;outline:2px solid var(--blue);outline-offset:2px}
@media(max-width:600px){.profile-photo-dialog-comparison>section{grid-template-rows:16px 88px 28px;height:150px;gap:4px;padding:6px}.profile-photo-dialog-comparison>section>b{line-height:16px}.profile-photo-dialog-comparison>section>small,.profile-photo-dialog-comparison [data-camera-selection]{min-height:28px}}
.profile-photo-pending{display:grid;gap:5px;padding:13px;color:#72520b;background:#fff7dc;border:1px solid #ebca68;border-radius:12px}
.profile-photo-pending b{font-size:14px}.profile-photo-pending small{font-size:12px;line-height:1.45}
.courier-profile-vehicle-photos{display:grid;gap:12px;margin-top:17px;padding-top:17px;border-top:1px solid var(--line)}
.courier-profile-vehicle-photos-heading{display:grid;gap:3px}.courier-profile-vehicle-photos-heading>span{color:#168b62;font-size:10px;font-weight:850;letter-spacing:.08em}.courier-profile-vehicle-photos-heading h3{margin:0;font-size:18px}.courier-profile-vehicle-photos-heading p{margin:0;color:var(--muted);font-size:12px}
.courier-profile-vehicle-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.courier-profile-vehicle-photo-grid .courier-profile-vehicle-photo{grid-template-columns:96px minmax(0,1fr);min-height:122px}
.courier-profile-vehicle-photo-grid .courier-profile-vehicle-preview{position:relative;width:96px;height:88px;background:#e9eef2;border-radius:13px}
.courier-profile-vehicle-photo-grid .courier-profile-vehicle-preview img{width:100%;height:100%;object-fit:cover}
.courier-profile-vehicle-photo-grid .courier-profile-vehicle-preview[data-camera-trigger]::after{content:"✎";position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:23px;height:23px;color:#fff;background:#168b62;border:2px solid #fff;border-radius:50%;font-size:13px;font-weight:900;box-shadow:0 2px 7px rgba(16,49,39,.24)}
.courier-profile-vehicle-photo-grid .photo-upload-title:disabled{color:var(--ink);text-decoration:none;cursor:default}.courier-profile-vehicle-photo-grid .courier-profile-vehicle-preview:disabled{cursor:default;opacity:1}
@media(max-width:760px){.courier-profile-vehicle-photo-grid{grid-template-columns:1fr}.courier-profile-vehicle-photo-grid .courier-profile-vehicle-photo{grid-template-columns:88px minmax(0,1fr)}.courier-profile-vehicle-photo-grid .courier-profile-vehicle-preview{width:88px;height:82px}}
.admin-photo-change-history{display:grid;gap:18px}
.admin-photo-change{display:grid;gap:14px;padding:15px;background:#f8f9fc;border:1px solid var(--line);border-radius:14px}
.admin-photo-change.pending{background:#f5f8ff;border:2px solid #4a7df2;box-shadow:0 8px 24px rgba(74,125,242,.12)}
.admin-photo-change>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-photo-change>header>div{display:grid;gap:2px}.admin-photo-change>header b{font-size:14px}.admin-photo-change>header small,.admin-photo-change>footer{color:var(--muted);font-size:12px}
.admin-photo-comparison{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.admin-photo-comparison>a,.admin-photo-comparison>div{position:relative;display:grid;align-content:start;gap:7px;padding:11px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:12px}
.admin-photo-comparison img{display:block;width:100%;height:260px;object-fit:cover;border-radius:9px}
.admin-photo-comparison b{font-size:14px}.admin-photo-comparison small{color:var(--muted);font-size:12px;line-height:1.4}
.admin-photo-comparison a>span,.admin-photo-empty>span{position:absolute;z-index:2;top:20px;left:20px;padding:7px 9px;color:#fff;background:#315fc5;border-radius:8px;font-size:11px;font-weight:950;letter-spacing:.06em;box-shadow:0 3px 10px rgba(0,0,0,.22)}
.admin-photo-comparison .admin-photo-previous{border:3px solid #f0aa22;box-shadow:0 0 0 4px rgba(240,170,34,.15)}
.admin-photo-comparison .admin-photo-previous>span{background:#b66d00}
.admin-photo-empty{min-height:260px;padding-top:74px!important}.admin-photo-empty>span{top:14px;left:14px}
.admin-photo-decision{display:grid;grid-template-columns:auto minmax(260px,1fr);align-items:end;gap:12px}
.admin-photo-decision form{display:grid;gap:7px}.admin-photo-decision label{display:grid;gap:5px;font-size:12px;font-weight:700}
.admin-photo-change>footer p{margin:5px 0 0;color:var(--ink)}
@media(max-width:680px){.admin-photo-comparison,.admin-photo-decision{grid-template-columns:1fr}.admin-photo-comparison img{height:220px}}
.admin-photo-change-history-compact{gap:10px}.admin-photo-change-history-compact .admin-panel-title p{max-width:520px}.admin-photo-history-list{display:grid;gap:6px}.admin-photo-history-item{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:11px}.admin-photo-history-item.pending{border-color:#8aacf8}.admin-photo-history-item>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto 18px;align-items:center;gap:10px;min-height:58px;padding:6px 9px;list-style:none;cursor:pointer}.admin-photo-history-item>summary::-webkit-details-marker{display:none}.admin-photo-history-item>summary:hover{background:#f7f9fd}.admin-photo-history-thumbnails{display:flex;align-items:center;gap:4px}.admin-photo-history-thumbnails img,.admin-photo-history-thumbnails i{display:grid;place-items:center;width:38px;height:38px;overflow:hidden;background:#e8ecf2;border:1px solid #d8dee8;border-radius:8px;object-fit:cover;font-style:normal}.admin-photo-history-thumbnails svg{width:12px;height:12px;color:var(--muted)}.admin-photo-history-summary{display:grid;gap:2px;min-width:0}.admin-photo-history-summary b{font-size:12px}.admin-photo-history-summary small{color:var(--muted);font-size:10px}.admin-photo-history-chevron{color:var(--muted);font-size:18px;line-height:1;transition:transform .15s}.admin-photo-history-item[open] .admin-photo-history-chevron{transform:rotate(180deg)}.admin-photo-change-detail{display:grid;gap:12px;padding:12px;border-top:1px solid var(--line)}.admin-photo-change-history-compact .admin-photo-comparison{gap:9px}.admin-photo-change-history-compact .admin-photo-comparison img{height:170px}.admin-photo-change-history-compact .admin-photo-comparison>a,.admin-photo-change-history-compact .admin-photo-comparison>div{padding:8px}.admin-photo-change-history-compact .admin-photo-comparison a>span,.admin-photo-change-history-compact .admin-photo-empty>span{top:14px;left:14px;padding:5px 7px;font-size:9px}.admin-photo-change-history-compact .admin-photo-empty{min-height:170px;padding-top:58px!important}.admin-photo-change-detail>footer{color:var(--muted);font-size:11px}.admin-photo-change-detail>footer p{margin:4px 0 0;color:var(--ink)}
@media(max-width:680px){.admin-photo-history-item>summary{grid-template-columns:auto minmax(0,1fr) auto 14px;gap:6px;padding:6px}.admin-photo-history-thumbnails img,.admin-photo-history-thumbnails i{width:32px;height:32px;border-radius:7px}.admin-photo-history-thumbnails svg{width:10px}.admin-photo-history-item>summary .admin-status{padding:4px 6px;font-size:8px}.admin-photo-change-history-compact .admin-photo-comparison{grid-template-columns:1fr 1fr}.admin-photo-change-history-compact .admin-photo-comparison img{height:130px}.admin-photo-change-history-compact .admin-photo-empty{min-height:130px}.admin-photo-change-history-compact .admin-photo-decision{grid-template-columns:1fr}}

/* El alta conserva el color de la cuenta elegida en todo el asistente. */
.register-shell[data-selected-role="business"]{--registration-accent:#2467d1;--registration-accent-hover:#1954ad;--registration-accent-soft:#eaf2ff;--registration-accent-ring:rgba(36,103,209,.18);--registration-accent-ink:#fff}
.register-shell[data-selected-role="courier"]{--registration-accent:#168b62;--registration-accent-hover:#10734f;--registration-accent-soft:#e7f7f0;--registration-accent-ring:rgba(22,139,98,.18);--registration-accent-ink:#fff}
.register-shell[data-selected-role="collaborator"]{--registration-accent:#7c3aed;--registration-accent-hover:#6525c7;--registration-accent-soft:#f3ebff;--registration-accent-ring:rgba(124,58,237,.2);--registration-accent-ink:#fff}
.register-shell[data-selected-role="business"] .auth-visual{background:linear-gradient(145deg,rgba(9,36,84,.1),rgba(9,36,84,.68)),linear-gradient(135deg,#4b86e5,#2467d1)}
.register-shell[data-selected-role="courier"] .auth-visual{background:linear-gradient(145deg,rgba(7,63,46,.12),rgba(7,63,46,.72)),linear-gradient(135deg,#34e0bf,#087d6e)}
.register-shell[data-selected-role="collaborator"] .auth-visual{background:linear-gradient(145deg,rgba(48,16,101,.1),rgba(48,16,101,.68)),linear-gradient(135deg,#9b6af3,#6525c7)}
.register-shell .role-picker:not(.single) input[value="business"]+span{background:#f2f7ff;border-color:#bfd4fb}
.register-shell .role-picker:not(.single) input[value="business"]+span svg{color:#2467d1}
.register-shell .role-picker:not(.single) input[value="business"]:checked+span{background:#e4efff;border-color:#2467d1;box-shadow:0 0 0 4px rgba(36,103,209,.14),0 10px 24px rgba(36,103,209,.1)}
.register-shell .role-picker:not(.single) input[value="business"]:checked+span::after{background:#2467d1}
.register-shell .role-picker:not(.single) input[value="courier"]+span{background:#effaf6;border-color:#a9dfcc}
.register-shell .role-picker:not(.single) input[value="courier"]+span svg{color:#168b62}
.register-shell .role-picker:not(.single) input[value="courier"]:checked+span{background:#dff5eb;border-color:#168b62;box-shadow:0 0 0 4px rgba(22,139,98,.14),0 10px 24px rgba(22,139,98,.1)}
.register-shell .role-picker:not(.single) input[value="courier"]:checked+span::after{background:#168b62}
.register-shell .role-picker:not(.single) input[value="collaborator"]+span{background:#f7f2ff;border-color:#d8c1fa}
.register-shell .role-picker:not(.single) input[value="collaborator"]+span svg{color:#7c3aed}
.register-shell .role-picker:not(.single) input[value="collaborator"]:checked+span{background:#eee3ff;border-color:#7c3aed;box-shadow:0 0 0 4px rgba(124,58,237,.15),0 10px 24px rgba(124,58,237,.1)}
.register-shell .role-picker:not(.single) input[value="collaborator"]:checked+span::after{background:#7c3aed}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(input,select,textarea):focus{border-color:var(--registration-accent);box-shadow:0 0 0 4px var(--registration-accent-ring)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.registration-step-heading>span,.registration-summary article>header>span){color:var(--registration-accent-ink);background:var(--registration-accent);box-shadow:0 8px 18px var(--registration-accent-ring)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.registration-actions .button-primary,.photo-upload [data-photo-upload-action]){color:var(--registration-accent-ink);background:var(--registration-accent)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) .registration-actions .button-primary:hover:not(:disabled){background:var(--registration-accent-hover);box-shadow:0 12px 22px var(--registration-accent-ring)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.registration-progress button.is-current>span,.registration-progress button.is-complete>span){color:var(--registration-accent-ink);background:var(--registration-accent);box-shadow:0 0 0 4px var(--registration-accent-ring)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.registration-progress button.is-current,.registration-progress button.is-complete,.registration-summary article>header small,.registration-summary article>header button,.registration-agency-code-link,.auth-switch a){color:var(--registration-accent)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.photo-preview,.registration-summary-photo-preview,.auth-benefits li span){color:var(--registration-accent);background:var(--registration-accent-soft)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) :is(.terms input,input[type="checkbox"],input[type="radio"]){accent-color:var(--registration-accent)}
.register-shell[data-selected-role]:not([data-selected-role=""]):not([data-selected-role="taxi"]):not([data-selected-role="agency"]) .button:focus-visible{outline-color:var(--registration-accent-ring)}

/* Compensa la proporción apaisada de la foto para igualar su tamaño visual. */
.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="carro"] img{transform:scale(1.42)}
.taxi-passenger-vehicle-picker button{position:relative}.taxi-passenger-vehicle-picker button.is-selected::after{position:absolute;z-index:2;top:2px;right:2px;display:grid;place-items:center;width:17px;height:17px;color:#fff;background:#101935;border-radius:50%;box-shadow:0 2px 5px rgba(16,25,53,.25);font-size:10px;font-weight:900;line-height:1;content:"✓"}
.taxi-passenger-vehicle-picker{padding-bottom:17px}.taxi-passenger-vehicle-picker button::before{position:absolute;right:0;bottom:-11px;left:0;color:#7b8594;font-size:9px;font-weight:650;line-height:1;text-align:center;content:attr(aria-label)}
.taxi-passenger-vehicle-picker legend{margin-right:auto;margin-left:auto;text-align:center}
.taxi-passenger-vehicle-picker{justify-content:center;gap:16px}
.taxi-passenger-vehicle-picker{margin-bottom:5px;padding-bottom:23px}.taxi-passenger-vehicle-picker button::before{bottom:-15px}
.taxi-passenger-vehicle-picker{gap:36px}
.taxi-passenger-vehicle-picker{gap:52px}
.taxi-passenger-vehicle-picker button,.taxi-passenger-vehicle-picker button:hover,.taxi-passenger-vehicle-picker button.is-selected,.taxi-passenger-vehicle-picker button:focus-visible{opacity:1}.taxi-passenger-vehicle-picker button.is-selected,.taxi-passenger-vehicle-picker button:focus-visible{transform:none}.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="carro"] img{transform:scale(1.55)}.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="moto"] img,.taxi-passenger-vehicle-picker [data-taxi-vehicle-choice="triciclo"] img{transform:scale(1)}
.taxi-passenger-vehicle-picker{padding-bottom:9px}.taxi-passenger-vehicle-picker button{display:flex;flex-direction:column;align-items:center;gap:3px;height:78px;padding:0;overflow:visible}.taxi-passenger-vehicle-picker button::before,.taxi-passenger-vehicle-picker button.is-selected::after{content:none}.taxi-passenger-vehicle-visual{position:relative;display:grid;place-items:center;width:96px;height:62px;background:transparent;border-radius:18px;transition:background .16s ease,box-shadow .16s ease}.taxi-passenger-vehicle-picker button.is-selected{background:transparent;box-shadow:none}.taxi-passenger-vehicle-picker button.is-selected .taxi-passenger-vehicle-visual{background:linear-gradient(145deg,#fff9df,#ffedaa);box-shadow:0 7px 16px rgba(168,115,0,.16),inset 0 0 0 1px rgba(219,166,25,.2)}.taxi-passenger-vehicle-picker button.is-selected .taxi-passenger-vehicle-visual::after{position:absolute;z-index:2;top:4px;right:5px;display:grid;place-items:center;width:17px;height:17px;color:#fff;background:#101935;border-radius:50%;box-shadow:0 2px 5px rgba(16,25,53,.25);font-size:10px;font-weight:900;line-height:1;content:"✓"}.taxi-passenger-vehicle-picker button>small{color:#7b8594;font-size:9px;font-weight:650;line-height:1}.taxi-passenger-vehicle-picker img{width:48px;height:48px}

/* Ventana blanca que aparece al aceptar el conductor. */
.taxi-passenger-driver-window{position:absolute;z-index:8;inset:0;display:grid;align-items:end;justify-items:center;box-sizing:border-box;padding:18px 0 calc(78px + env(safe-area-inset-bottom,0px));pointer-events:none}.taxi-passenger-driver-card{box-sizing:border-box;width:min(470px,calc(100% - 18px));padding:10px 17px 13px;overflow:hidden;color:#111c2d;background:rgba(255,255,255,.98);border:1px solid rgba(214,222,231,.96);border-radius:25px;box-shadow:0 20px 50px rgba(8,25,45,.22);backdrop-filter:blur(14px);pointer-events:auto;animation:taxiAssignedDriverAppear .65s cubic-bezier(.16,1,.3,1) both}.taxi-passenger-driver-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 2px 12px;border-bottom:1px solid #edf0f4}.taxi-passenger-driver-card>header>strong{color:#101935;font-size:19px;letter-spacing:-.025em}.taxi-passenger-driver-card>header>strong small{color:#7b8594;font-size:8px;letter-spacing:.06em}.taxi-assigned-status{display:flex;align-items:center;gap:7px;color:#27745d;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.taxi-assigned-status i{width:8px;height:8px;background:#2dbb83;border:3px solid #dff8ef;border-radius:50%;box-shadow:0 0 0 1px #2dbb83}.taxi-assigned-driver{display:flex;align-items:center;gap:12px;padding:15px 2px 13px}.taxi-assigned-avatar{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;overflow:hidden;color:#101935;background:linear-gradient(145deg,#ffe487,#ffc94a);border:3px solid #fff;border-radius:18px;box-shadow:0 7px 17px rgba(159,111,0,.2);font-size:18px;font-weight:900}.taxi-assigned-avatar img{width:100%;height:100%;object-fit:cover}.taxi-assigned-driver>div{display:grid;gap:2px;min-width:0}.taxi-assigned-driver small,.taxi-assigned-vehicle small{color:#8993a2;font-size:8px;font-weight:850;letter-spacing:.1em}.taxi-assigned-driver h1{margin:0;overflow:hidden;color:#111b2d;font-size:22px;letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap}.taxi-assigned-driver p,.taxi-assigned-vehicle p{margin:0;color:#687486;font-size:10px;line-height:1.35}.taxi-assigned-vehicle{display:flex;align-items:center;gap:12px;padding:11px 12px;background:#f5f7fa;border:1px solid #e6eaf0;border-radius:16px}.taxi-assigned-vehicle>span{display:grid;place-items:center;flex:0 0 78px;width:78px;height:54px;background:#fff;border-radius:12px}.taxi-assigned-vehicle img{display:block;width:68px;height:50px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(8,20,38,.12))}.taxi-assigned-vehicle>div{display:grid;gap:2px;min-width:0}.taxi-assigned-vehicle b{overflow:hidden;color:#172235;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.taxi-assigned-actions{display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:8px;margin-top:11px}.taxi-assigned-call,.taxi-assigned-message{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:14px;text-decoration:none}.taxi-assigned-call{gap:10px;color:#fff;background:#101935;box-shadow:0 8px 18px rgba(16,25,53,.2)}.taxi-assigned-call>svg{width:19px;height:19px}.taxi-assigned-call>span{display:grid;gap:1px}.taxi-assigned-call b{font-size:11px}.taxi-assigned-call small{color:rgba(255,255,255,.68);font-size:8px;font-weight:650}.taxi-assigned-message{color:#101935;background:#ffc94a}.taxi-assigned-message svg{width:21px;height:21px}.taxi-assigned-cancel{display:flex;justify-content:center;margin:8px 0 0}.taxi-assigned-cancel button{padding:5px 9px;color:#8b5660;background:transparent;border:0;font:inherit;font-size:9px;font-weight:750;cursor:pointer}.taxi-passenger-has-driver .taxi-passenger-map-pin{display:none}@keyframes taxiAssignedDriverAppear{from{opacity:0;transform:translateY(38px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:680px){.taxi-passenger-driver-window{padding:10px 0 calc(70px + env(safe-area-inset-bottom,0px))}.taxi-passenger-driver-card{width:calc(100% - 12px);padding:9px 13px 11px;border-radius:22px}.taxi-assigned-avatar{flex-basis:52px;width:52px;height:52px}.taxi-assigned-driver h1{font-size:20px}.taxi-assigned-vehicle>span{flex-basis:70px;width:70px}.taxi-assigned-vehicle img{width:62px;height:46px}.taxi-assigned-actions{grid-template-columns:minmax(0,1fr) 48px}.taxi-assigned-call,.taxi-assigned-message{min-height:48px}}@media(prefers-reduced-motion:reduce){.taxi-passenger-driver-card{animation:none}}

.taxi-passenger-driver-card{animation:taxiAssignedDriverAppear .65s cubic-bezier(.16,1,.3,1) both}
.taxi-driver-match[hidden]{display:none}.taxi-driver-match{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:18px;background:rgba(8,20,38,.34);pointer-events:auto;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.taxi-driver-match>article{display:grid;justify-items:center;box-sizing:border-box;width:min(390px,100%);padding:23px 22px 20px;color:#111c2d;background:#fff;border:1px solid rgba(218,225,232,.95);border-radius:26px;box-shadow:0 24px 60px rgba(8,25,45,.28);text-align:center;animation:taxiAssignedDriverAppear .55s cubic-bezier(.16,1,.3,1) both}.taxi-driver-match-check{display:grid;place-items:center;width:44px;height:44px;margin-bottom:10px;color:#fff;background:#2dbb83;border-radius:50%;box-shadow:0 0 0 7px rgba(45,187,131,.13);font-size:22px;font-weight:900}.taxi-driver-match>article>small,.taxi-driver-match-price small{color:#2b8f70;font-size:9px;font-weight:900;letter-spacing:.1em}.taxi-driver-match h2{max-width:310px;margin:5px 0 16px;color:#081426;font-size:25px;line-height:1.08;letter-spacing:-.035em}.taxi-driver-match-person,.taxi-driver-match-vehicle{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;box-sizing:border-box;width:100%;padding:10px 12px;text-align:left}.taxi-driver-match-person>span{display:grid;place-items:center;width:52px;height:52px;overflow:hidden;color:#101935;background:#ffc94a;border-radius:16px;font-weight:900}.taxi-driver-match-person img{width:100%;height:100%;object-fit:cover}.taxi-driver-match-person div,.taxi-driver-match-vehicle div{display:grid;gap:3px}.taxi-driver-match-person b,.taxi-driver-match-vehicle b{font-size:15px}.taxi-driver-match-person small,.taxi-driver-match-vehicle span{color:#687486;font-size:11px}.taxi-driver-match-vehicle{margin-top:5px;background:#f5f7fa;border:1px solid #e6eaf0;border-radius:16px}.taxi-driver-match-vehicle>img{width:52px;height:42px;object-fit:contain;transform:scaleX(-1)}.taxi-driver-match-price{display:grid;gap:4px;margin:17px 0 15px;font-size:22px}.taxi-driver-match>article>button{width:100%;min-height:48px;color:#fff;background:#101935;border:0;border-radius:14px;font-weight:850;cursor:pointer}
/* Confirmación del conductor asignado en el panel del pasajero. */
.taxi-passenger-driver-window{position:absolute;z-index:8;inset:0;display:grid;align-items:end;justify-items:center;box-sizing:border-box;padding:18px 0 calc(78px + env(safe-area-inset-bottom,0px));pointer-events:none}.taxi-passenger-driver-card{box-sizing:border-box;width:min(470px,calc(100% - 18px));padding:10px 17px 13px;color:#111c2d;background:rgba(255,255,255,.98);border:1px solid #d6dee7;border-radius:25px;box-shadow:0 20px 50px rgba(8,25,45,.22);pointer-events:auto}.taxi-passenger-driver-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 2px 12px;border-bottom:1px solid #edf0f4}.taxi-passenger-driver-card>header>strong{font-size:19px}.taxi-assigned-status{display:flex;align-items:center;gap:7px;color:#27745d;font-size:9px;font-weight:850;text-transform:uppercase}.taxi-assigned-status i{width:8px;height:8px;background:#2dbb83;border:3px solid #dff8ef;border-radius:50%}.taxi-assigned-driver{display:flex;align-items:center;gap:12px;padding:15px 2px 13px}.taxi-assigned-avatar{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;overflow:hidden;color:#101935;background:#ffc94a;border-radius:18px;font-size:18px;font-weight:900}.taxi-assigned-avatar img{width:100%;height:100%;object-fit:cover}.taxi-assigned-driver>div{min-width:0}.taxi-assigned-driver small,.taxi-assigned-vehicle small{color:#8993a2;font-size:8px;font-weight:850}.taxi-assigned-driver h1{margin:2px 0;color:#111b2d;font-size:22px}.taxi-assigned-driver p,.taxi-assigned-vehicle p{margin:0;color:#687486;font-size:10px}.taxi-assigned-vehicle{display:flex;align-items:center;gap:12px;padding:11px 12px;background:#f5f7fa;border:1px solid #e6eaf0;border-radius:16px}.taxi-assigned-vehicle>span{display:grid;place-items:center;width:78px;height:54px;background:#fff;border-radius:12px}.taxi-assigned-vehicle img{width:68px;height:50px;object-fit:contain}.taxi-assigned-actions{display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:8px;margin-top:11px}.taxi-assigned-call,.taxi-assigned-message{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:14px}.taxi-assigned-call{gap:10px;color:#fff;background:#101935}.taxi-assigned-call svg,.taxi-assigned-message svg{width:20px;height:20px}.taxi-assigned-call>span{display:grid}.taxi-assigned-call small{color:rgba(255,255,255,.68);font-size:8px}.taxi-assigned-message{color:#101935;background:#ffc94a}.taxi-assigned-cancel{display:flex;justify-content:center;margin-top:8px}.taxi-assigned-cancel button{color:#8b5660;background:transparent;border:0;font-size:9px}.taxi-passenger-has-driver .taxi-passenger-map-pin{display:none}@media(max-width:680px){.taxi-passenger-driver-window{padding:10px 0 calc(70px + env(safe-area-inset-bottom,0px))}.taxi-passenger-driver-card{width:calc(100% - 12px);padding:9px 13px 11px}.taxi-assigned-avatar{flex-basis:52px;width:52px;height:52px}}
.taxi-assigned-vehicle>span{background:transparent;border-radius:0}
.taxi-assigned-cancel button{font-size:11px}
.taxi-assigned-cancel button{border-radius:8px;transition:background-color .16s ease}.taxi-assigned-cancel button:hover{background:#edf0f3}
.taxi-passenger-cancel-notice{display:grid;gap:4px;margin:0 0 12px;padding:11px 13px;color:#604719;background:#fff6de;border:1px solid #efd392;border-radius:12px;font-size:11px;line-height:1.4}.taxi-passenger-cancel-notice strong{font-size:12px}.taxi-passenger-cancel-notice.is-blocked{color:#78383d;background:#fff0ef;border-color:#e9b7b9}.taxi-passenger-cancel-notice[hidden]{display:none}
.taxi-passenger-cancel-reminder{margin:8px 0 3px;color:#865f29;font-size:10px;font-weight:700;line-height:1.35;text-align:center}
.taxi-searching-panel>footer{flex-direction:column;align-items:center;gap:2px}.taxi-searching-panel>footer button{white-space:nowrap}.taxi-searching-panel>footer .taxi-passenger-cancel-reminder{max-width:320px;margin:0;font-size:9px}
.taxi-retry-cancel-reminder{margin:0 0 10px;padding:8px 10px;color:#79551c;background:#fff6de;border:1px solid #efd392;border-radius:9px;font-size:10px;font-weight:700;line-height:1.35;text-align:center}
.taxi-passenger-cancel-notice form{margin-top:3px}.taxi-test-cancel-reset{padding:6px 10px;color:#713d43;background:#fff;border:1px solid #dfbfc2;border-radius:8px;font:inherit;font-size:10px;font-weight:750;cursor:pointer}.taxi-test-cancel-reset:hover,.taxi-test-cancel-reset:focus-visible{background:#f8e2e4;outline:0}
.taxi-passenger-search-failure{display:grid;gap:7px;margin:0 0 14px;padding:14px;color:#513b12;background:#fff8df;border:1px solid #e7ca72;border-radius:13px;font-size:11px;line-height:1.45}.taxi-passenger-search-failure strong{color:#2c220d;font-size:14px}.taxi-passenger-search-failure form{margin-top:3px}.taxi-passenger-search-failure button{padding:9px 12px;color:#152238;background:#ffc94a;border:0;border-radius:9px;font:inherit;font-weight:850;cursor:pointer}
.taxi-assigned-avatar{border:0;border-radius:50%}
.taxi-assigned-vehicle>span{flex:0 0 58px;width:58px;height:58px}
.taxi-assigned-vehicle img{width:58px;height:58px}
@media(max-width:680px){.taxi-assigned-vehicle>span{flex-basis:52px;width:52px;height:52px}.taxi-assigned-vehicle img{width:52px;height:52px}}
.taxi-assigned-status{color:#687486;font-size:12px;font-weight:750;letter-spacing:.02em}
.taxi-assigned-avatar{flex-basis:48px;width:48px;height:48px}
@media(max-width:680px){.taxi-assigned-avatar{flex-basis:44px;width:44px;height:44px}}
.taxi-assigned-driver,.taxi-assigned-vehicle{display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:12px}
.taxi-assigned-driver{padding-right:12px;padding-left:12px}
.taxi-assigned-avatar{justify-self:center}
@media(max-width:680px){.taxi-assigned-driver,.taxi-assigned-vehicle{grid-template-columns:52px minmax(0,1fr)}}
.taxi-assigned-driver p{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px}.taxi-assigned-eta{color:#536174;font-size:10px;font-weight:750;white-space:nowrap}.taxi-passenger-dashboard .taxi-passenger-driver-window{pointer-events:none}.taxi-passenger-dashboard .taxi-passenger-driver-card{pointer-events:auto}.taxi-passenger-driver-card{background:#fff;box-shadow:none;backdrop-filter:none}
.taxi-assigned-compact-vehicle-brand,.taxi-assigned-compact-vehicle-color,.taxi-assigned-compact-vehicle-eta,.taxi-assigned-compact-vehicle-plate{display:none}.taxi-passenger-driver-card .taxi-assigned-driver{grid-template-columns:52px minmax(0,1fr) auto}.taxi-assigned-driver>.taxi-assigned-driver-actions{display:grid;grid-template-columns:42px 42px;align-self:center;gap:7px;margin:0}.taxi-assigned-driver .taxi-assigned-call,.taxi-assigned-driver .taxi-assigned-message{width:42px;min-height:42px;height:42px;border-radius:12px}.taxi-assigned-driver .taxi-assigned-call>span{display:none}.taxi-assigned-driver .taxi-assigned-call svg,.taxi-assigned-driver .taxi-assigned-message svg{width:18px;height:18px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-driver{display:none}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle{position:relative;grid-template-columns:52px minmax(0,1fr);padding:8px;background:transparent;border:0}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle-heading{display:flex;align-items:baseline;gap:7px;min-width:0}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle-model,.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle-full-detail{display:none}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-brand{display:block;flex:0 1 auto;min-width:0;color:#172235;font-size:13px;font-weight:850}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-color{display:block;color:#687486;font-size:12px;font-weight:650}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-color::before{margin-right:7px;color:#a0a8b4;content:"·"}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-plate{display:block;color:#687486;font-size:12px;font-weight:650}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-eta{display:block;min-width:0;overflow:hidden;color:#536174;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-eta::before{margin-right:7px;color:#a0a8b4;content:"·"}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver h1{font-size:19px}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-heading{display:flex;align-items:baseline;gap:7px;min-width:0}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-full-color{flex:0 0 auto;color:#687486;font-size:12px;font-weight:650}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-full-color::before{margin-right:7px;color:#a0a8b4;content:"·"}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-full-detail{font-size:12px;font-weight:650}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle-full-color{display:none}.taxi-assigned-status{flex-wrap:wrap}.taxi-assigned-status.is-en-route{font-size:10px}.taxi-assigned-header-eta{color:#536174;font-size:11px;font-weight:750;letter-spacing:0;text-transform:none;white-space:nowrap}.taxi-passenger-driver-card>header.is-en-route{position:relative;justify-content:flex-end}.taxi-passenger-driver-card>header.is-en-route .taxi-assigned-status{position:absolute;left:50%;transform:translateX(-50%)}
.taxi-assigned-driver>.taxi-assigned-driver-actions{grid-template-columns:38px 38px;gap:6px}.taxi-assigned-driver .taxi-assigned-call,.taxi-assigned-driver .taxi-assigned-message{width:38px;min-height:38px;height:38px;border-radius:11px}.taxi-assigned-driver .taxi-assigned-call svg,.taxi-assigned-driver .taxi-assigned-message svg{width:17px;height:17px}
.taxi-passenger-driver-card.is-collapsed .taxi-passenger-panel-toggle{height:12px;margin-bottom:-2px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle{padding:3px 8px 6px}
.taxi-passenger-driver-card.is-collapsed .taxi-assigned-vehicle-heading{flex-wrap:wrap;justify-content:flex-start;row-gap:2px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-brand{flex:0 1 auto}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-color{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-eta{flex:0 0 auto;min-width:max-content;margin-left:0;overflow:visible;font-size:11px;text-align:left;text-overflow:clip}
/* La matrícula se muestra como dato principal, sin una etiqueta visual redundante. */
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-full-detail{margin-top:3px;color:#172235;font-size:17px;font-weight:900;letter-spacing:.055em;line-height:1.15}
.taxi-passenger-driver-card.is-collapsed .taxi-assigned-compact-vehicle-plate{margin-top:2px;color:#172235;font-size:15px;font-weight:900;letter-spacing:.055em;line-height:1.15}
/* Panel replegable del conductor en la vista del pasajero. */
.taxi-passenger-panel-toggle{display:grid;place-items:center;width:100%;height:18px;margin:0 0 2px;padding:0;color:#748092;background:transparent;border:0;border-radius:10px;cursor:pointer;touch-action:manipulation}.taxi-passenger-panel-toggle .taxi-passenger-sheet-handle{margin:0;transition:width .2s ease,background .2s ease}.taxi-passenger-panel-toggle:hover .taxi-passenger-sheet-handle,.taxi-passenger-panel-toggle:focus-visible .taxi-passenger-sheet-handle{width:50px;background:#9ca8b7}.taxi-passenger-panel-toggle:focus-visible{outline:2px solid rgba(23,107,255,.3);outline-offset:1px}.taxi-passenger-driver-card>header{max-height:42px;overflow:hidden;opacity:1;transition:max-height .22s ease,padding .22s ease,border-color .22s ease,opacity .16s ease}.taxi-passenger-driver-details{max-height:220px;overflow:hidden;opacity:1;transition:max-height .28s ease,opacity .18s ease}.taxi-passenger-driver-card .taxi-assigned-driver{transition:padding .22s ease}.taxi-passenger-driver-card .taxi-assigned-avatar{transition:width .22s ease,height .22s ease,flex-basis .22s ease}.taxi-passenger-driver-card.is-collapsed>header{max-height:0;padding-top:0;padding-bottom:0;border-color:transparent;opacity:0}.taxi-passenger-driver-card.is-collapsed .taxi-passenger-driver-details{max-height:0;opacity:0;pointer-events:none}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-driver{grid-template-columns:44px minmax(0,1fr);padding-top:5px;padding-bottom:3px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-avatar{width:38px;height:38px;flex-basis:38px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-driver h1{font-size:17px}@media(max-width:680px){.taxi-passenger-driver-card.is-collapsed{padding-bottom:8px}.taxi-passenger-driver-card.is-collapsed .taxi-assigned-driver{grid-template-columns:42px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.taxi-passenger-driver-card>header,.taxi-passenger-driver-details,.taxi-passenger-driver-card .taxi-assigned-driver,.taxi-passenger-driver-card .taxi-assigned-avatar{transition:none}}
/* El panel del pasajero comunica el estado del viaje con la misma jerarquía del panel del taxista. */
.taxi-passenger-driver-card>header.taxi-passenger-status-head{max-height:58px;padding:2px 2px 11px}
.taxi-passenger-status-copy{display:grid;gap:3px;min-width:0}
.taxi-passenger-status-copy>div{display:flex;align-items:center;gap:8px;min-width:0}
.taxi-passenger-status-copy i{flex:0 0 9px;width:9px;height:9px;background:#2dbb83;border-radius:50%;box-shadow:0 0 0 4px rgba(45,187,131,.12)}
.taxi-passenger-status-copy h2{margin:0;overflow:hidden;color:#101935;font-size:18px;line-height:1.1;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.taxi-passenger-status-copy p{margin:0 0 0 17px;color:#6e798c;font-size:11px;font-weight:700;line-height:1.2}
.taxi-passenger-status-copy .taxi-assigned-header-eta{font-size:11px}
.taxi-passenger-driver-window[data-ride-status="accepted"] .taxi-passenger-status-copy i,.taxi-passenger-driver-window[data-ride-status="driver_arriving"] .taxi-passenger-status-copy i{background:#176bff;box-shadow:0 0 0 4px rgba(23,107,255,.13)}
.taxi-passenger-driver-window[data-ride-status="driver_arrived"] .taxi-passenger-status-copy i{background:#e04452;box-shadow:0 0 0 4px rgba(224,68,82,.13)}
.taxi-passenger-driver-window[data-ride-status="in_progress"] .taxi-passenger-status-copy i{background:#2dbb83;box-shadow:0 0 0 4px rgba(45,187,131,.12)}
.taxi-passenger-driver-card.is-at-destination .taxi-passenger-status-copy i{background:#f5bd2d;box-shadow:0 0 0 4px rgba(245,189,45,.2)}
.taxi-passenger-driver-card.is-collapsed>header.taxi-passenger-status-head{max-height:0;padding-top:0;padding-bottom:0}
.app-confirm-dialog.is-taxi-cancel{width:min(390px,calc(100% - 24px))}.app-confirm-dialog.is-taxi-cancel .app-confirm-card{grid-template-columns:40px minmax(0,1fr);gap:14px;padding:21px 20px;border-radius:19px}.app-confirm-dialog.is-taxi-cancel .app-confirm-icon,.app-confirm-dialog.is-taxi-cancel.is-danger .app-confirm-icon{width:40px;height:40px;color:#b42335;background:#fbeaec;border-radius:12px;font-size:18px}.app-confirm-dialog.is-taxi-cancel .app-confirm-copy h2{margin:2px 0 8px;font-size:20px;line-height:1.25}.app-confirm-dialog.is-taxi-cancel .app-confirm-copy p{font-size:15px;line-height:1.55}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions{gap:10px;margin-top:8px}.app-confirm-dialog.is-taxi-cancel .app-confirm-actions .button{min-height:46px;padding:10px 12px;font-size:14px;line-height:1.25}.app-confirm-dialog.is-taxi-cancel [data-confirm-cancel]{color:#677386;background:#f6f7f9;border-color:#e7eaf0}.app-confirm-dialog.is-taxi-cancel [data-confirm-accept],.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:hover:not(:disabled),.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:focus-visible,.taxi-brand-surface .app-confirm-dialog.is-taxi-cancel [data-confirm-accept]:active:not(:disabled){color:#b42335;background:#fbeaec;border-color:#f2c9cf;box-shadow:none}
.app-confirm-dialog.is-taxi-arrival-warning .app-confirm-icon{color:#8b620b;background:#fff1cf}
.app-confirm-dialog.is-taxi-arrival-warning .app-confirm-copy>small{color:#8b620b}
.app-confirm-dialog.is-taxi-arrival-warning .app-confirm-actions{display:grid;grid-template-columns:1fr;gap:14px}
.app-confirm-dialog.is-taxi-arrival-warning .app-confirm-actions [data-confirm-cancel]{grid-row:1;width:100%;min-height:46px;color:#26354c;background:#f1f4f8;border-color:#dfe5ed}
.app-confirm-dialog.is-taxi-arrival-warning .app-confirm-actions [data-confirm-accept],.taxi-brand-surface .app-confirm-dialog.is-taxi-arrival-warning .app-confirm-actions [data-confirm-accept]:is(:hover,:focus-visible,:active){grid-row:2;width:100%;min-height:36px;color:#687486;background:transparent;border-color:transparent;box-shadow:none;font-size:12px}
.app-confirm-taxi-reason{grid-column:1/-1;display:grid;gap:6px;color:#344258;font-size:12px;font-weight:750;line-height:1.3}.app-confirm-taxi-reason[hidden]{display:none}.app-confirm-taxi-reason textarea{box-sizing:border-box;width:100%;min-height:66px;padding:9px 10px;resize:vertical;color:#172235;background:#f8fafc;border:1px solid #cdd6e2;border-radius:10px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.35}.app-confirm-taxi-reason textarea:focus{outline:2px solid rgba(165,117,18,.22);border-color:#bd902f}.app-confirm-dialog.is-taxi-completion-reason{width:min(370px,calc(100% - 28px))}.app-confirm-dialog.is-taxi-completion-reason .app-confirm-card{gap:10px;padding:17px;border-radius:17px}.app-confirm-dialog.is-taxi-completion-reason .app-confirm-copy h2{font-size:18px}.app-confirm-dialog.is-taxi-completion-reason .app-confirm-copy p{font-size:13px;line-height:1.4}.app-confirm-dialog.is-taxi-completion-reason .app-confirm-actions{margin-top:0}.app-confirm-dialog.is-taxi-completion-reason .app-confirm-actions .button{min-height:39px;font-size:12px}

/* El viaje activo vive dentro del panel principal del taxista. */
.taxi-driver-status-action.online{background:#101935;box-shadow:0 7px 16px rgba(16,25,53,.2)}
.taxi-driver-bottom-stack.has-active-trip{bottom:28px;width:min(540px,calc(100% - 20px))}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet{border:1px solid #d5dce5;border-radius:20px;box-shadow:0 10px 30px rgba(9,25,44,.16)}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:min(52dvh,470px)}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{max-height:calc(min(52dvh,470px) - 82px)}
body.taxi-driver-dashboard-page:has(.taxi-driver-bottom-stack.has-active-trip) .mobile-nav{display:none!important}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet .taxi-driver-sheet-scroll{max-height:calc(min(52dvh,470px) - 82px)}
@media(max-width:680px){body.taxi-driver-dashboard-page:has(.taxi-driver-bottom-stack.has-active-trip){padding-bottom:0!important}.taxi-driver-bottom-stack.has-active-trip{bottom:calc(20px + env(safe-area-inset-bottom,0px));width:calc(100% - 18px)}.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){width:100%;max-height:min(48dvh,390px);border:1px solid #d5dce5;border-radius:18px}.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet .taxi-driver-sheet-scroll{max-height:calc(min(48dvh,390px) - 82px)}}

.taxi-driver-status-sheet{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
.taxi-driver-status-head{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
.taxi-driver-sheet-scroll{background:#fff}

/* El viaje aceptado comparte la superficie del panel y prioriza la próxima acción. */
.taxi-driver-active-ride-inline{width:100%;max-height:none;margin:0;overflow:visible}
.taxi-driver-active-ride-inline .taxi-map-active-trip{gap:14px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.taxi-driver-active-ride-inline .taxi-map-trip-heading{grid-template-columns:minmax(0,1fr);gap:9px;padding:1px 3px 0}
.taxi-driver-active-ride-inline .taxi-map-trip-heading>div{gap:1px}
.taxi-driver-active-ride-inline .taxi-map-trip-heading small{color:#7b8595;font-size:7px;letter-spacing:.09em}
.taxi-driver-active-ride-inline .taxi-map-trip-heading h3{color:#101935;font-size:16px}
.taxi-driver-active-ride-inline .taxi-map-trip-heading>strong{padding:0;color:#101935;background:transparent;border-radius:0;font-size:15px;line-height:1}
.taxi-driver-active-ride-inline .taxi-map-trip-heading>strong small{color:#778294;font-size:7px}
.taxi-driver-active-ride-inline .taxi-map-trip-location{grid-template-columns:minmax(0,1fr);gap:9px;padding:10px 11px;background:#f6f7f9;border:0;border-radius:12px}
.taxi-driver-active-ride-inline .taxi-map-trip-location b{overflow:hidden;color:#172238;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-active-ride-inline .taxi-map-trip-location p{color:#7a8595;font-size:9px}
.taxi-driver-active-ride-inline .taxi-map-trip-location>a{width:36px;height:36px;color:#101935;background:#e7ebf0;border-radius:10px}
.taxi-driver-active-ride-inline .taxi-driver-trip-route{position:relative;gap:15px;padding:14px 15px;background:#f6f7f9;border:1px solid #e9edf2;border-radius:14px}
.taxi-driver-active-ride-inline .taxi-driver-trip-route::before{position:absolute;z-index:0;top:33px;bottom:23px;left:20px;width:2px;background:#d8dde4;border-radius:99px;content:""}
.taxi-driver-active-ride-inline .taxi-driver-trip-route:has(.taxi-driver-trip-stop:only-child)::before{display:none}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop{display:grid;grid-template-columns:12px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;row-gap:3px;min-width:0;transition:opacity .18s ease}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop>i{position:relative;z-index:1;grid-column:1;grid-row:2;align-self:center;box-sizing:border-box;width:12px;height:12px;background:#176bff;border:3px solid #dce9ff;border-radius:50%}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-destination>i{background:#ffc94a;border-color:#fff0bd}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop>span{display:contents}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-meta{display:block;grid-column:2;grid-row:1;min-width:0}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-meta>small{display:block;color:#687486;font-size:7px!important;font-weight:850;line-height:1;letter-spacing:.1em}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop b{display:flex;grid-column:2;grid-row:2;align-items:baseline;gap:8px;min-width:0;overflow:hidden;color:#172238;font-size:14px;line-height:1.3;white-space:nowrap}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-address{display:block;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-distance{flex:0 0 auto;color:#778397;font-size:10px;font-weight:750;letter-spacing:0;white-space:nowrap}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop p{margin:0;color:#7a8595;font-size:9px}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-muted{filter:none;opacity:1}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-muted>i{background:#aeb6c2;border-color:#e2e6eb}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-muted .taxi-driver-trip-stop-meta{filter:grayscale(.55);opacity:.58}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-active{filter:none;opacity:1}
.taxi-driver-active-ride-inline .taxi-map-trip-contact{grid-template-columns:42px minmax(0,1fr) 92px 42px;gap:8px;padding:15px 4px 7px;border-top:1px solid #edf0f3}
.taxi-driver-active-ride-inline [data-taxi-active-status="in_progress"] .taxi-map-trip-contact{display:none}
.taxi-driver-active-ride-inline .taxi-map-trip-contact .avatar{width:42px;height:42px;color:#fff;background:#7b8492;font-size:14px}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>div{align-content:center;gap:3px;min-width:0}
.taxi-driver-active-ride-inline .taxi-map-trip-contact b{color:#101935;font-size:14px;line-height:1.25}
.taxi-driver-active-ride-inline .taxi-map-trip-contact p{margin:1px 0 0;color:#788395;font-size:8px}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>a{display:grid;place-items:center;width:42px;height:42px;padding:0;border-radius:12px}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>a span{display:none}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>.taxi-driver-message-action{display:flex;align-items:center;justify-content:center;width:92px;height:42px;padding:0 10px;color:#171100;background:#ffc94a;font-size:13px;font-weight:800;line-height:1.2;letter-spacing:.01em}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>.taxi-driver-message-action span{display:block}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>.taxi-driver-call-action{color:#fff;background:#0b5d4b}
.taxi-driver-active-ride-inline .taxi-map-trip-contact>.taxi-driver-call-action svg{width:21px;height:21px;color:#fff;stroke-width:2.3}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-trip-note{padding:8px 10px;color:#5e697b;background:#fff8df;border-radius:10px;font-size:9px}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-stage-action{margin:5px 0 14px}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-stage-action .button{min-height:50px;padding:11px 16px;color:#fff;background:#101935;border:0;border-radius:12px;box-shadow:none;font-size:16px;font-weight:850}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-stage-action .taxi-arrived-at-pickup-button{display:block;width:100%;min-width:0;margin:0}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-stage-action .taxi-start-trip-button{display:flex;align-items:center;justify-content:center;gap:8px;background:#0b5d4b;box-shadow:0 7px 16px rgba(11,93,75,.2)}
.taxi-driver-active-ride-inline .taxi-stage-action .taxi-start-trip-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-start-trip-action{width:100%;margin:12px 0 16px}
.taxi-driver-active-ride-inline .taxi-start-trip-action .taxi-start-trip-button{width:100%;animation:taxiStartTripBreathe 1.8s ease-in-out infinite}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-start-trip-action{margin-bottom:8px}
.taxi-driver-active-ride-inline .taxi-arrived-actions{position:sticky;z-index:4;bottom:0;display:grid;gap:12px;align-self:end;width:100%;box-sizing:border-box;margin-top:6px;padding:8px 0 14px;background:#fff;box-shadow:0 -8px 16px rgba(255,255,255,.96)}
.taxi-driver-active-ride-inline .taxi-arrived-actions .taxi-stage-action{margin:0}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-cancel-trip-action{display:flex;justify-content:center;width:100%;margin:0}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-cancel-trip-action .taxi-cancel-trip-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;min-height:34px;padding:4px 10px;color:#6b7482;background:transparent;border:0;box-shadow:none;font-size:15px;font-weight:700}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-cancel-trip-action .taxi-cancel-trip-button:disabled{color:#929aa5;background:transparent;border:0;box-shadow:none;cursor:not-allowed;opacity:1}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-cancel-trip-action .taxi-cancel-trip-button:not(:disabled){color:#c72f41;background:transparent;border:0;box-shadow:none}
.taxi-driver-active-ride-inline .taxi-cancel-trip-countdown{color:inherit;font:inherit;font-variant-numeric:tabular-nums}
.taxi-driver-status-sheet.is-collapsed .taxi-arrived-actions{display:none}
@keyframes taxiStartTripBreathe{0%,100%{transform:scale(1);box-shadow:0 5px 12px rgba(11,93,75,.2),0 0 0 0 rgba(11,93,75,0)}50%{transform:scale(1.025);box-shadow:0 8px 18px rgba(11,93,75,.28),0 0 0 5px rgba(11,93,75,.13)}}
@media(prefers-reduced-motion:reduce){.taxi-driver-active-ride-inline .taxi-start-trip-action .taxi-start-trip-button{animation:none}}
.taxi-driver-active-ride-inline .taxi-map-active-trip .taxi-stage-action .taxi-complete-trip-button{display:flex;align-items:center;justify-content:center;gap:8px}
.taxi-driver-active-ride-inline .taxi-stage-action:has(.taxi-complete-trip-button){position:relative;z-index:2;width:100%;pointer-events:auto}
.taxi-driver-active-ride-inline .taxi-complete-trip-button{width:100%;min-height:54px;touch-action:manipulation;cursor:pointer}
.taxi-driver-active-ride-inline .taxi-complete-trip-button>*{pointer-events:none}
.taxi-driver-active-ride-inline .taxi-stage-action .taxi-complete-trip-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.taxi-driver-active-ride-inline .taxi-complete-trip-button .taxi-complete-warning-icon{display:block;color:#ff696f;stroke-width:2.2}
.taxi-driver-active-ride-inline .taxi-complete-trip-button .taxi-complete-arrived-icon{display:none;color:#ffc94a}
.taxi-driver-status-sheet.is-at-destination .taxi-complete-trip-button .taxi-complete-warning-icon{display:none}
.taxi-driver-status-sheet.is-at-destination .taxi-complete-trip-button .taxi-complete-arrived-icon{display:block}
@media(max-width:680px){.taxi-driver-active-ride-inline{width:100%;margin:0}.taxi-driver-active-ride-inline .taxi-map-active-trip{padding:0;border-radius:0}.taxi-driver-active-ride-inline .taxi-map-trip-heading>strong{font-size:14px}}

/* El detalle de estado permanece unido al título al replegar o desplegar. */
.taxi-driver-status-copy>p{padding-left:18px}
.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p{display:block;padding-left:18px;color:#6e798c;font-size:10px;line-height:1.15}
@media(max-width:680px){.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p{padding-left:16px}}

/* El panel replegado conserva aire alrededor de las dos líneas de estado. */
.taxi-driver-status-sheet.is-collapsed{max-height:64px}
.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:46px;padding:2px 14px 9px}
@media(max-width:680px){.taxi-driver-dashboard-page .taxi-driver-status-sheet.is-collapsed{max-height:62px}.taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:46px;padding:1px 12px 8px}}

/* Durante un viaje activo el estado usa todo el ancho; la disponibilidad vuelve al finalizar. */
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{padding-right:16px}
@media(max-width:680px){.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{padding-right:15px}}

/* Con un viaje activo, el estado permanece centrado al desplegar el panel. */
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-head{justify-content:center;text-align:center}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-copy{justify-items:center;width:100%}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-copy>div{justify-content:flex-start;width:100%}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-copy>p{margin-top:-1px;padding-left:0;font-size:12px}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-head{position:relative}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-copy h2{line-height:1.15}
.taxi-driver-active-price{position:absolute;top:11px;right:16px;display:grid;justify-items:end;gap:2px;color:#101935;font-size:25px;line-height:1.15;white-space:nowrap}
.taxi-driver-active-price small{color:#778294;font-size:8px}
.taxi-driver-active-price em{color:#0b5d4b!important;-webkit-text-fill-color:#0b5d4b;font-size:9px;font-style:normal;font-weight:800;line-height:1.2}
@media(max-width:680px){.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-active-price{font-size:24px}}

/* El viaje activo cambia de composición según el panel esté abierto o cerrado. */
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-head{justify-content:flex-start;text-align:left}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-copy{justify-items:start;width:100%}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-copy>div{justify-content:flex-start}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-status-copy>p{padding-left:18px}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div{justify-content:center;width:100%;gap:10px}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>div>i{position:static;flex:0 0 10px}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy h2{width:auto;text-align:left}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p{width:100%;padding-left:0;text-align:center}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-copy>p{font-size:12px;line-height:1.3}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet.is-collapsed{max-height:86px}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:66px;padding:0 14px 16px}
@media(max-width:680px){.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet.is-collapsed{max-height:84px}.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{min-height:66px;padding:0 12px 16px}}
.taxi-driver-active-ride-inline .taxi-driver-trip-route{gap:18px;padding:17px 16px}
.taxi-driver-active-ride-inline .taxi-driver-trip-route::before{top:var(--taxi-driver-trip-line-top,50%);right:auto;bottom:var(--taxi-driver-trip-line-bottom,50%);left:22px;width:2px;transform:translateX(-50%)}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop{grid-template-columns:10px minmax(0,1fr);column-gap:7px;row-gap:4px}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop>i{grid-row:1;align-self:start;width:10px;height:10px;margin-top:6px;background:#fff;border:3px solid #176bff}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-pickup.is-active>i{background:#176bff;border:2px solid #fff;box-shadow:0 0 0 3px rgba(23,107,255,.24),0 0 12px rgba(23,107,255,.45)}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-destination>i,.taxi-driver-active-ride-inline .taxi-driver-trip-stop.is-muted>i{background:#fff;border-color:#ffc94a}
.taxi-driver-active-ride-inline .taxi-driver-trip-route.is-in-progress .taxi-driver-trip-stop.is-origin-complete>i{background:#aeb6c2;border-color:#e2e6eb;box-shadow:none}
.taxi-driver-active-ride-inline .taxi-driver-trip-route.is-in-progress .taxi-driver-trip-stop.is-origin-complete .taxi-driver-trip-stop-address{color:#7a8595;font-size:13px;font-weight:600}
.taxi-driver-active-ride-inline .taxi-driver-trip-route.is-in-progress .taxi-driver-trip-stop.is-destination.is-active>i{background:#ffc94a;border:2px solid #fff;box-shadow:0 0 0 3px rgba(255,201,74,.3),0 0 12px rgba(255,193,35,.52)}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-meta>small{font-size:9px!important;line-height:1.2;letter-spacing:.11em}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop b{display:contents;font-size:15px;line-height:1.4;white-space:normal}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-address{grid-column:2;grid-row:1;min-width:0;overflow:visible;color:#030712;font-size:17px;font-weight:600;line-height:1.3;text-overflow:clip;white-space:normal}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-distance{grid-column:2;grid-row:2;font-size:13px;line-height:1.25}
.taxi-driver-status-sheet.is-collapsed .taxi-driver-active-price{display:none}

/* El estado Activo replegado conserva aire y centra el texto bajo el tirador. */
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed{max-height:74px}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-head{min-height:56px;padding:2px 14px 10px}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy{justify-items:center;width:100%;gap:3px}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy>div{position:relative;justify-content:center;width:100%}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy>div>i{position:absolute;left:calc(50% - 49px)}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy h2{width:100%;text-align:center}
.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy>p{width:100%;padding-left:0;text-align:center}
@media(max-width:680px){.taxi-driver-dashboard-page .taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed{max-height:72px}.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-head{min-height:56px;padding:2px 12px 10px}.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy>div{position:relative;width:100%}.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy>div>i{position:absolute;left:calc(50% - 47px)}.taxi-driver-bottom-stack:not(.has-active-trip) .taxi-driver-status-sheet:not(.is-inactive).is-collapsed .taxi-driver-status-copy h2{width:100%;text-align:center}}

/* Si hay varios vehículos, la elección forma parte de la activación. */
.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-head:has(.taxi-activation-vehicle){display:grid;grid-template-columns:minmax(0,1fr);gap:11px;padding-right:20px}
.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-head:has(.taxi-activation-vehicle) .courier-availability-controls{position:static;width:100%!important;transform:none}
.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-head:has(.taxi-activation-vehicle) .courier-availability-controls>form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;width:100%}
.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-activation-vehicle{min-width:0}
.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-activation-vehicle select{box-sizing:border-box;width:100%;max-width:none}
@media(max-width:680px){.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-head:has(.taxi-activation-vehicle){min-height:0;padding:8px 15px 13px}.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-copy>p{white-space:normal}.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-driver-status-head:has(.taxi-activation-vehicle) .courier-availability-controls>form{gap:8px}.taxi-driver-status-sheet.is-inactive:not(.is-collapsed) .taxi-activation-vehicle select{min-height:42px;font-size:12px}}

/* Ajustes del conductor en el panel desplegado. */
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver h1{font-size:18px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver-actions{margin-left:4px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver-actions{grid-template-columns:100px 40px;align-items:center;gap:10px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call{box-sizing:border-box;width:100px;min-width:100px;height:40px;min-height:40px;padding:0 13px;gap:9px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call>span{display:flex;align-items:center;justify-content:center;height:14px;line-height:14px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call b{font-size:11px;line-height:14px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call small{display:none}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-message{width:40px;height:40px;min-height:40px}
.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call>svg{display:block;flex:0 0 14px;width:14px;height:14px}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-address-text{color:#030712}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-municipality{color:#8a94a3;font-size:.82em;font-weight:500}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-place{display:block;grid-column:2;grid-row:2;min-width:0;overflow:hidden;color:#657184;font-size:12px;font-style:normal;font-weight:650;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-active-ride-inline .taxi-driver-trip-stop.has-place .taxi-driver-trip-stop-distance{grid-row:3}
.taxi-driver-active-ride-inline .taxi-driver-trip-route.is-in-progress .taxi-driver-trip-stop.is-origin-complete .taxi-driver-trip-stop-address-text{color:#7a8595}
.taxi-driver-active-ride-inline .taxi-driver-trip-route.is-in-progress .taxi-driver-trip-stop.is-origin-complete .taxi-driver-trip-stop-municipality{color:#a0a8b3}
.taxi-passenger-vehicle-picker{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));justify-content:stretch;gap:6px;box-sizing:border-box;min-width:0;padding-right:14px!important;padding-left:14px!important}
.taxi-passenger-vehicle-picker button{box-sizing:border-box;width:100%;min-width:0;height:94px;padding:5px 0 9px;border-radius:18px}
.taxi-passenger-vehicle-picker button.is-selected{background:linear-gradient(145deg,#fff9df,#ffedaa);box-shadow:0 7px 16px rgba(168,115,0,.16),inset 0 0 0 1px rgba(219,166,25,.2);transform:none!important}
.taxi-passenger-vehicle-picker button.is-selected .taxi-passenger-vehicle-visual{background:transparent;box-shadow:none}
.taxi-passenger-vehicle-picker button.is-selected>small{color:#4f4530;font-weight:800}

/* El panel del viaje activo crece hacia arriba hasta mostrar todo su contenido. */
.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:calc(100dvh - 92px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed) .taxi-driver-sheet-scroll{max-height:none}
.taxi-driver-active-ride-inline .taxi-map-active-trip{gap:10px}
.taxi-driver-active-ride-inline .taxi-driver-trip-route{gap:14px;padding:8px 8px;background:transparent;border:0;border-radius:0}
.taxi-driver-active-ride-inline .taxi-driver-trip-route::before{left:14px}
@media(max-width:680px){.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet:not(.is-collapsed){max-height:calc(100dvh - 148px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}
.taxi-passenger-any-vehicle{display:grid;place-items:center}
.taxi-passenger-any-vehicle img{width:56px;height:56px;object-fit:contain}
.taxi-passenger-vehicle-picker button .taxi-passenger-vehicle-visual{display:grid;place-items:center;flex:0 0 64px;width:100%;height:64px}
.taxi-passenger-vehicle-picker button .taxi-passenger-vehicle-visual img{display:block;width:min(54px,calc(100% - 8px));height:auto;max-height:54px;aspect-ratio:1;object-fit:contain;transform:none}
.taxi-passenger-vehicle-picker button .taxi-passenger-any-vehicle img{width:min(68px,calc(100% - 6px));height:auto;max-height:68px;filter:none;image-rendering:auto}
.taxi-passenger-vehicle-picker button>small{display:flex;align-items:center;justify-content:center;width:100%;height:12px;line-height:12px;white-space:nowrap}

/* Aviso prioritario cuando el conductor ya está esperando en la recogida. */
.taxi-driver-arrived-alert{display:none}
.taxi-passenger-driver-card.is-driver-arrived.is-collapsed .taxi-assigned-vehicle{display:none}
.taxi-passenger-driver-card.is-driver-arrived.is-collapsed .taxi-driver-arrived-alert{display:grid;grid-template-columns:42px auto;align-items:center;justify-content:center;gap:11px;padding:7px 9px 9px;text-align:center}
.taxi-driver-arrived-alert>span{display:grid;place-items:center;width:42px;height:42px;color:#101935;background:#ffc94a;border-radius:14px;box-shadow:0 6px 15px rgba(194,132,0,.22)}
.taxi-driver-arrived-alert svg{width:21px;height:21px}
.taxi-driver-arrived-alert>div{display:grid;gap:2px;min-width:0}
.taxi-driver-arrived-alert strong{color:#111c2d;font-size:15px;line-height:1.15}
.taxi-driver-arrived-alert small{color:#687486;font-size:10px;font-weight:650;line-height:1.25}
.taxi-passenger-driver-card.is-driver-arrived:not(.is-collapsed) .taxi-assigned-status{color:#946500}
.taxi-passenger-driver-card.is-driver-arrived:not(.is-collapsed) .taxi-assigned-status i{background:#ffc94a;border-color:#fff1c7;box-shadow:0 0 0 3px rgba(255,201,74,.18)}
@media(max-width:360px){.taxi-passenger-driver-card.is-driver-arrived.is-collapsed .taxi-driver-arrived-alert{grid-template-columns:38px auto;gap:9px;padding-right:5px;padding-left:5px}.taxi-driver-arrived-alert>span{width:38px;height:38px;border-radius:12px}.taxi-driver-arrived-alert strong{font-size:14px}.taxi-driver-arrived-alert small{font-size:9px}}
@media(max-width:360px){.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver{grid-template-columns:48px minmax(0,1fr) auto;column-gap:9px;padding-right:4px;padding-left:4px}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver-actions{grid-template-columns:82px 36px;gap:6px;margin-left:0}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call{width:82px;min-width:82px;padding:0 8px;gap:7px}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-message{width:36px;height:38px;min-height:38px}.taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver h1{font-size:17px;white-space:nowrap}}

/* Resumen del viaje en curso. */
.taxi-trip-collapsed-label{display:none}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-label{flex-direction:column;gap:2px}.taxi-trip-collapsed-title{display:inline-flex;align-items:center;gap:7px}.taxi-trip-collapsed-title::before{content:"";flex:0 0 8px;width:8px;height:8px;background:#2dbb83;border-radius:50%;box-shadow:0 0 0 3px rgba(45,187,131,.12)}
.taxi-passenger-driver-card.is-at-destination .taxi-trip-collapsed-title::before{background:#f5bd2d;box-shadow:0 0 0 3px rgba(245,189,45,.2)}
.taxi-passenger-driver-card .taxi-driver-arriving-collapsed-label::before{background:#176bff;box-shadow:0 0 0 3px rgba(23,107,255,.13)}
.taxi-driver-arriving-collapsed-label{display:none}.taxi-passenger-driver-card.is-collapsed .taxi-driver-arriving-collapsed-label{display:flex;align-items:center;justify-content:center;gap:7px;padding:3px 0 5px;color:#536174;font-size:11px;font-weight:750;line-height:1.2;text-align:center}.taxi-driver-arriving-collapsed-label::before{content:"";flex:0 0 7px;width:7px;height:7px;background:#2dbb83;border-radius:50%;box-shadow:0 0 0 3px rgba(45,187,131,.12)}
.taxi-trip-progress-summary{display:grid;gap:12px;padding:14px 6px 7px}
.taxi-trip-progress-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:0;min-width:0}
.taxi-trip-progress-driver{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;padding:0 8px}
.taxi-trip-progress-driver-photo{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;overflow:hidden;color:#172235;background:#ffdf73;border-radius:50%;font-size:13px;font-weight:850}
.taxi-trip-progress-driver-photo img{display:block;width:100%;height:100%;object-fit:cover}
.taxi-trip-progress-driver strong{min-width:0;color:#172235;font-size:15px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}
.taxi-trip-progress-vehicle{display:grid;align-content:center;gap:5px;align-self:stretch;min-width:0;padding-left:11px;border-left:1px solid #e5e9ef}
.taxi-trip-progress-vehicle-main{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0}
.taxi-trip-progress-vehicle-main img{display:block;flex:0 0 66px;width:66px;height:44px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(8,20,38,.12))}
.taxi-trip-progress-vehicle-main p{display:grid;gap:2px;min-width:0;margin:0;text-align:left}
.taxi-trip-progress-vehicle-main b{overflow:hidden;color:#172235;font-size:12px;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}
.taxi-trip-progress-vehicle-main span{color:#748092;font-size:9px;font-weight:700}
.taxi-trip-progress-plate{display:grid;place-items:center;margin:0;padding:6px 7px;background:#f3f6f9;border:1px solid #e7ebf0;border-radius:9px;line-height:1}
.taxi-trip-progress-plate strong{color:#111c2d;font-size:15px;font-weight:900;letter-spacing:.045em;white-space:nowrap}
.taxi-trip-progress-metrics{display:flex;align-items:center;justify-content:center;gap:0;box-sizing:border-box;width:100%;margin-top:8px;padding-top:15px;border-top:1px solid #edf0f4;color:#667386;font-size:13px;line-height:1.3;white-space:nowrap}
.taxi-trip-progress-metrics span{min-width:0}
.taxi-trip-progress-metrics span+span::before{margin:0 9px;color:#b3bdc9;content:"·"}
.taxi-trip-progress-metrics strong{color:#243248;font-weight:800}
.taxi-trip-collapsed-label small{color:#8491a2;font-size:10px;font-weight:600;letter-spacing:0;white-space:nowrap}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-progress-metrics{display:none}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-label{display:flex;align-items:center;justify-content:center;padding:5px 0 8px;color:#536174;font-size:12px;font-weight:850;letter-spacing:.02em;text-align:center}
.taxi-trip-finish{display:grid;justify-items:center;margin:18px 0 10px;padding:16px 0 8px;border-top:1px solid #edf0f4}
.taxi-trip-finish-open{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 17px;color:#a8444e;background:#fff1f2;border:1px solid #efc9ce;border-radius:11px;box-shadow:0 3px 9px rgba(168,68,78,.06);font:inherit;font-size:13px;font-weight:750;line-height:1.2;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease}
.taxi-trip-finish-open svg{flex:0 0 16px;width:16px;height:16px;color:currentColor;stroke-width:2.2}
.taxi-trip-finish-open:hover,.taxi-trip-finish-open:focus-visible{color:#963943;background:#fde7e9;border-color:#e8b8be;box-shadow:0 4px 10px rgba(168,68,78,.08);outline:0}.taxi-trip-finish-open:active{transform:scale(.985)}
.taxi-trip-finish-open[hidden],.taxi-trip-finish-form[hidden]{display:none}
.taxi-trip-finish-form{display:grid;gap:9px;width:100%}
.taxi-trip-finish-warning{margin:0;padding:10px 12px;color:#9f2432;background:#fff0f2;border:1px solid #efc3c9;border-radius:11px;font-size:13px;font-weight:650;line-height:1.45}
.taxi-trip-finish-form label{color:#27354a;font-size:11px;font-weight:800}
.taxi-trip-finish-form textarea{box-sizing:border-box;width:100%;min-height:70px;padding:10px 11px;color:#172235;background:#fff;border:1px solid #cbd5e1;border-radius:10px;font:inherit;font-size:12px;line-height:1.4;resize:vertical}
.taxi-trip-finish-form textarea:focus{outline:2px solid rgba(23,107,255,.25);border-color:#176bff}
.taxi-trip-finish-actions{display:flex;justify-content:center;gap:8px;margin-top:10px;padding-bottom:3px}
.taxi-trip-finish-actions button{padding:9px 11px;border:0;border-radius:9px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.taxi-trip-finish-actions button:first-child{color:#536174;background:#f0f2f5}
.taxi-trip-finish-actions button:last-child{color:#fff;background:#9c3c42}
.taxi-passenger-driver-card.is-reporting-trip{max-height:calc(100dvh - 110px);overflow-y:auto}
.taxi-passenger-driver-card.is-reporting-trip .taxi-passenger-driver-details{max-height:360px;overflow:visible}
@media(max-width:360px){.taxi-trip-progress-summary{padding-right:2px;padding-left:2px}.taxi-trip-progress-driver{gap:6px;padding:0 3px}.taxi-trip-progress-driver-photo{flex-basis:36px;width:36px;height:36px}.taxi-trip-progress-driver strong{font-size:14px}.taxi-trip-progress-vehicle{padding-left:7px}.taxi-trip-progress-vehicle-main{gap:4px}.taxi-trip-progress-vehicle-main img{flex-basis:54px;width:54px;height:39px}.taxi-trip-progress-vehicle-main b{font-size:11px}.taxi-trip-progress-plate{padding:5px 4px}.taxi-trip-progress-plate strong{font-size:15px}.taxi-trip-progress-metrics{font-size:12px}.taxi-trip-progress-metrics span+span::before{margin:0 5px}}

/* Selector compacto de vehículo en el panel principal del pasajero. */
.taxi-passenger-vehicle-select{position:relative;width:100%;margin-top:8px}
.taxi-passenger-vehicle-select.is-open{z-index:25}
.taxi-passenger-vehicle-toggle{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;box-sizing:border-box;width:100%;min-height:56px;padding:7px 12px;color:#081426;background:#f5f7fa;border:1px solid #e3e9f0;border-radius:12px;font:inherit;text-align:left;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s;-webkit-tap-highlight-color:transparent}
.taxi-passenger-vehicle-select.needs-selection .taxi-passenger-vehicle-toggle{grid-template-columns:42px minmax(0,1fr) 18px;background:#f5f7fa;border-color:#e3e9f0;box-shadow:none}
.taxi-passenger-vehicle-select.needs-selection .taxi-passenger-vehicle-selected-visual{display:grid}
.taxi-passenger-vehicle-placeholder-dot{width:13px;height:13px;background:#fff;border:4px solid #101935;border-radius:50%}
.taxi-passenger-vehicle-select.needs-selection .taxi-passenger-vehicle-selected-copy strong{color:#536072;font-weight:650}
.taxi-passenger-vehicle-select.is-attention:not(.is-open) .taxi-passenger-vehicle-toggle{animation:taxiVehicleAttention 1.65s ease-in-out infinite}
@keyframes taxiVehicleAttention{0%,100%{border-color:#d5dce5;box-shadow:0 0 0 0 rgba(16,25,53,0)}50%{border-color:#101935;box-shadow:0 0 0 5px rgba(16,25,53,.13)}}
.taxi-passenger-vehicle-toggle:hover,.taxi-passenger-vehicle-select.is-open .taxi-passenger-vehicle-toggle{background:#fff;border-color:#cbd5e1}
.taxi-passenger-vehicle-toggle:focus-visible{outline:2px solid #cbd5e1;outline-offset:2px}
.taxi-passenger-vehicle-toggle>svg{width:17px;height:17px;color:#697587;transition:transform .18s ease}
.taxi-passenger-vehicle-select.is-open .taxi-passenger-vehicle-toggle>svg{transform:rotate(180deg)}
.taxi-passenger-vehicle-selected-visual{position:relative;display:grid;place-items:center;width:42px;height:40px}
.taxi-passenger-vehicle-selected-visual img{display:block;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(8,20,38,.12));transform:scaleX(-1)}
.taxi-passenger-vehicle-selected-visual.is-carro img,.taxi-passenger-vehicle-selected-visual.is-comfort img{width:44px;height:auto}
.taxi-passenger-vehicle-selected-visual.is-moto img,.taxi-passenger-vehicle-selected-visual.is-triciclo img{width:35px;height:35px}
.taxi-passenger-any-icon{box-sizing:border-box;width:38px;height:38px;padding:7px;color:#263246;background:#eef1f5;border:1px solid #dce2e9;border-radius:50%;fill:currentColor}
.taxi-passenger-vehicle-selected-copy{display:grid;gap:2px;min-width:0}
.taxi-passenger-vehicle-selected-copy small{color:#536072;font-size:9px;font-weight:850;letter-spacing:.09em}
.taxi-passenger-vehicle-selected-copy strong{overflow:hidden;color:#030712;font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.taxi-passenger-vehicle-listbox{position:absolute;z-index:20;right:0;bottom:calc(100% + 6px);left:0;display:grid;gap:6px;max-height:min(350px,calc(100dvh - 190px));margin:0;padding:7px;overflow-y:auto;background:#fff;border:1px solid #dbe2ea;border-radius:14px;box-shadow:0 -12px 34px rgba(18,42,67,.18)}
.taxi-passenger-vehicle-listbox[hidden]{display:none}
.taxi-passenger-vehicle-listbox>[role="option"][hidden]{display:none!important}
.taxi-passenger-vehicle-listbox>[role="option"]{display:grid;grid-template-columns:70px minmax(0,1fr) 26px;align-items:center;gap:14px;box-sizing:border-box;width:100%;min-height:84px;padding:9px 14px 9px 8px;color:#172235;background:transparent;border:0;border-radius:12px;font:inherit;text-align:left;cursor:pointer}
.taxi-passenger-vehicle-listbox>[role="option"]:hover,.taxi-passenger-vehicle-listbox>[role="option"]:focus-visible{background:#f5f7fa;outline:0}
.taxi-passenger-vehicle-listbox>[role="option"].is-selected{background:#f2f4f6;border:1px solid #d9dee5}
.taxi-passenger-vehicle-option-visual{position:relative;display:grid;place-items:center;width:70px;height:56px}
.taxi-passenger-vehicle-option-visual>img{display:block;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(8,20,38,.12));transform:scaleX(-1)}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="carro"] .taxi-passenger-vehicle-option-visual>img{width:70px;height:auto}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="comfort"] .taxi-passenger-vehicle-option-visual>img{width:74px;height:auto}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="moto"] .taxi-passenger-vehicle-option-visual>img{width:50px;height:50px}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="triciclo"] .taxi-passenger-vehicle-option-visual>img{width:52px;height:52px}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="van"] .taxi-passenger-vehicle-option-visual>img{width:64px;height:52px;transform:translateY(-4px) scaleX(-1)}
.taxi-passenger-vehicle-listbox>[role="option"]>span:nth-child(2){display:grid;gap:4px;min-width:0}
.taxi-passenger-vehicle-listbox b{font-size:16px;line-height:1.2}
.taxi-passenger-vehicle-listbox small{color:#778294;font-size:11px;line-height:1.35}
.taxi-passenger-vehicle-option-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.taxi-passenger-vehicle-option-title em{display:inline-flex;align-items:center;min-height:19px;padding:2px 7px;color:#116149;background:#e7f7f1;border-radius:999px;font-size:9px;font-style:normal;font-weight:850;line-height:1}
.taxi-passenger-vehicle-option-title em.taxi-comfort-recommended{gap:3px;color:#6b570f;background:#fff3bf;box-shadow:inset 0 0 0 1px rgba(181,139,0,.12)}
.taxi-comfort-recommended>span{color:#b18400;font-size:11px;line-height:1}
.taxi-passenger-vehicle-listbox>[role="option"]>i{display:none;place-items:center;width:23px;height:23px;color:#fff;background:#101935;border-radius:50%;font-size:12px;font-style:normal;font-weight:900}
.taxi-passenger-vehicle-listbox>[role="option"].is-selected>i{display:grid}
@media(prefers-reduced-motion:reduce){.taxi-passenger-vehicle-select.is-attention:not(.is-open) .taxi-passenger-vehicle-toggle{animation:none;border-color:#101935;box-shadow:0 0 0 3px rgba(16,25,53,.1)}}
@media(prefers-reduced-motion:reduce){.taxi-passenger-route-field.is-destination.is-attention:not(.is-editing){animation:none;border-color:#d3a01b;box-shadow:0 0 0 3px rgba(255,201,74,.16)}}

/* El GPS es el primer paso de recogida; la dirección aparece solo como respaldo. */
.taxi-pickup-locating{display:grid;place-items:center;align-content:center;gap:9px;min-height:300px;padding:28px 22px;text-align:center}
.taxi-pickup-locating[hidden]{display:none}
.taxi-pickup-locating>span{position:relative;display:grid;place-items:center;width:70px;height:70px;color:#176bff;background:#edf4ff;border-radius:22px;box-shadow:0 0 0 1px #d9e7ff}
.taxi-pickup-locating>span::after{position:absolute;inset:-7px;border:2px solid rgba(23,107,255,.18);border-top-color:#176bff;border-radius:27px;content:"";animation:taxiPickupGpsSpin 1.1s linear infinite}
.taxi-pickup-locating svg{width:31px;height:31px}
.taxi-pickup-locating strong{margin-top:8px;color:#101935;font-size:19px}
.taxi-pickup-locating p{max-width:300px;margin:0;color:#6d7889;font-size:12px;line-height:1.45}
.taxi-pickup-locating button{margin-top:8px;padding:9px 12px;color:#31577f;background:transparent;border:0;border-radius:9px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.taxi-pickup-locating button:hover,.taxi-pickup-locating button:focus-visible{background:#edf4ff;outline:0}
@keyframes taxiPickupGpsSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.taxi-pickup-locating>span::after{animation:none}}

/* Confirmación y evaluación al terminar un viaje de taxi. */
.taxi-page.taxi-passenger-rating-pending .taxi-shell{visibility:hidden;pointer-events:none}
.taxi-completed-rating-window{position:fixed;z-index:65;inset:0;display:grid;align-items:end;justify-items:center;padding:16px 0 calc(78px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,rgba(6,15,30,.28),transparent 58%);pointer-events:none}
.taxi-completed-rating-window[data-taxi-passenger-rating-window]{pointer-events:auto}
.taxi-completed-rating-card{box-sizing:border-box;width:min(470px,calc(100% - 18px));padding:9px 18px 17px;color:#101935;background:rgba(255,255,255,.99);border:1px solid #dce3eb;border-radius:26px;box-shadow:0 22px 54px rgba(8,25,45,.25);pointer-events:auto;animation:taxiCompletedRatingAppear .6s cubic-bezier(.16,1,.3,1) both}
.taxi-completed-rating-handle{display:block;width:42px;height:4px;margin:0 auto 10px;background:#d1d7df;border-radius:99px}
.taxi-completed-rating-card>header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding-bottom:12px;border-bottom:1px solid #edf0f4}
.taxi-completed-check{display:grid;place-items:center;width:42px;height:42px;color:#fff;background:#16a37f;border-radius:14px;box-shadow:0 7px 16px rgba(22,163,127,.22)}
.taxi-completed-check svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.4}
.taxi-completed-rating-card header div{display:grid;gap:1px;min-width:0}.taxi-completed-rating-card header div small{color:#16876c;font-size:8px;font-weight:900;letter-spacing:.12em}.taxi-completed-rating-card h2{margin:0;font-size:19px;letter-spacing:-.025em}.taxi-completed-rating-card header>strong{font-size:17px;white-space:nowrap}.taxi-completed-rating-card header>strong small{color:#7b8594;font-size:8px}
.taxi-completed-driver{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:11px;margin:12px 0;padding:9px 11px;background:#f6f8fa;border:1px solid #e8ecf1;border-radius:16px}
.taxi-completed-driver-avatar{display:grid;place-items:center;width:50px;height:50px;overflow:hidden;color:#101935;background:linear-gradient(145deg,#ffe487,#ffc94a);border-radius:15px;font-size:16px;font-weight:900}.taxi-completed-driver-avatar img{width:100%;height:100%;object-fit:cover}.taxi-completed-driver>span:last-child{display:grid;gap:1px;min-width:0}.taxi-completed-driver small{color:#8993a2;font-size:6px;font-weight:850;letter-spacing:.08em}.taxi-completed-driver b{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.taxi-completed-driver em{overflow:hidden;color:#697587;font-size:10px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
.taxi-passenger-app .taxi-completed-driver{grid-template-columns:50px minmax(0,max-content);justify-content:center;justify-items:start;gap:11px;padding:11px 14px;text-align:left}.taxi-passenger-app .taxi-completed-driver-avatar{border-radius:50%}.taxi-passenger-app .taxi-completed-driver>span:last-child{justify-items:start;max-width:100%}.taxi-passenger-app .taxi-completed-driver em{max-width:100%}
.taxi-driver-completed-rating-window .taxi-completed-driver{grid-template-columns:50px minmax(0,max-content);justify-content:center;justify-items:start;gap:11px;padding:11px 14px;text-align:left}
.taxi-completed-driver>.taxi-completed-passenger-copy{gap:0}.taxi-completed-passenger-copy>em{display:flex;align-items:center;gap:6px;margin-top:10px;line-height:1.2}.taxi-completed-passenger-count{display:inline-flex;align-items:center;gap:3px}.taxi-completed-passenger-count svg{width:10px;height:10px;fill:currentColor;opacity:.72}.taxi-completed-driver em>i{font-style:normal}
.taxi-passenger-app .taxi-completed-driver-label{display:inline-block;width:max-content;transform:scale(.75);transform-origin:left center}
.taxi-completed-stars{display:grid;justify-items:center;margin:0;padding:0;border:0;text-align:center}.taxi-completed-stars legend{width:100%;padding:0;font-size:15px;font-weight:850}.taxi-completed-stars p{margin:3px 0 5px;color:#778294;font-size:10px}.taxi-rating-stars{position:relative;display:flex;flex-direction:row-reverse;justify-content:center;gap:2px}.taxi-rating-stars input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.taxi-rating-stars label{display:grid;place-items:center;box-sizing:border-box;width:44px;min-height:44px;color:#d6dce4;border-radius:9px;font-size:35px;line-height:1;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .15s ease,transform .15s ease,background .15s ease}.taxi-rating-stars label:hover,.taxi-rating-stars label:hover~label,.taxi-rating-stars input:checked+label,.taxi-rating-stars input:checked~label,.taxi-rating-stars label.is-selected{color:#ffc32f;text-shadow:0 2px 7px rgba(217,151,0,.18)}.taxi-rating-stars label:hover{transform:translateY(-2px) scale(1.08)}.taxi-rating-stars label:active{transform:scale(.94)}.taxi-rating-stars input:focus-visible+label{background:#fff8dc;outline:2px solid #176bff;outline-offset:2px}
.taxi-completed-comment{display:grid;gap:5px;margin-top:9px}.taxi-completed-comment>.taxi-completed-comment-title{font-size:12px;font-weight:800}.taxi-completed-comment-title small{color:#8a94a3;font-weight:650}.taxi-completed-comment textarea{box-sizing:border-box;width:100%;min-height:48px;padding:9px 11px;resize:none;color:#172235;background:#fafbfc;border:1px solid #dce3eb;border-radius:11px;font:inherit;font-size:8px}.taxi-completed-comment textarea:focus{border-color:#8bb4ff;outline:3px solid rgba(23,107,255,.1)}
.taxi-completed-rating-submit{width:100%;min-height:45px;margin-top:10px;color:#101935;background:#ffc94a;border:0;border-radius:13px;font:inherit;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(215,157,0,.18)}
@keyframes taxiCompletedRatingAppear{from{opacity:0;transform:translateY(45px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:680px){.taxi-completed-rating-window{padding:8px 0 calc(70px + env(safe-area-inset-bottom,0px))}.taxi-completed-rating-card{width:calc(100% - 12px);padding:8px 14px 14px;border-radius:23px}.taxi-completed-rating-card>header{grid-template-columns:40px minmax(0,1fr) auto}.taxi-completed-check{width:39px;height:39px}.taxi-completed-rating-card h2{font-size:17px}.taxi-rating-stars label{width:43px;min-height:43px;font-size:33px}}
@media(max-height:690px){.taxi-completed-comment{display:none}.taxi-completed-driver{margin:9px 0}.taxi-completed-rating-card{padding-bottom:12px}.taxi-completed-rating-submit{margin-top:7px}}
@media(prefers-reduced-motion:reduce){.taxi-completed-rating-card{animation:none}.taxi-rating-stars label{transition:none}}
.taxi-completed-rating-card header div small{display:inline-flex;align-items:center;gap:6px;width:max-content;color:#946500}.taxi-completed-rating-card header div small::before{content:"";width:8px;height:8px;background:#ffc94a;border-radius:50%;box-shadow:0 0 0 3px rgba(255,201,74,.18)}
.registration-upload-progress{margin:14px 0 0;padding:12px 14px;color:#174d3b;background:#eaf8f2;border:1px solid #a9dcc9;border-radius:11px;font-size:12px;font-weight:750;line-height:1.45}.registration-upload-progress.has-error{color:#8d2630;background:#fff0f1;border-color:#efb8bd}.registration-upload-progress[hidden]{display:none}
.button[data-registration-submit-loading]{cursor:wait;opacity:.82}.registration-submit-spinner{box-sizing:border-box;display:inline-block;flex:0 0 auto;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:registrationSubmitSpin .75s linear infinite}@keyframes registrationSubmitSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.registration-submit-spinner{animation-duration:1.5s}}
.registration-audit-filters{grid-template-columns:minmax(210px,1fr) repeat(4,minmax(135px,170px)) auto}.registration-audit-status.in_progress{color:#8b611c;background:#fff1cf}.registration-audit-status.success{color:#176b50;background:#def5ea}.registration-audit-status.error{color:#a43e48;background:#fde7e9}.registration-audit-table td:nth-child(5){min-width:280px;white-space:normal}.registration-audit-message{display:block;max-width:440px;margin-top:3px;line-height:1.4}.registration-audit-table code{font-size:11px}.registration-audit-table td:nth-child(6) small{display:block;margin-top:3px}@media(max-width:1100px){.registration-audit-filters{grid-template-columns:repeat(3,1fr)}.registration-audit-filters input{grid-column:1/-1}}@media(max-width:680px){.registration-audit-filters{grid-template-columns:1fr}.registration-audit-filters input{grid-column:auto}.audit-tabs{width:100%}.audit-tabs a{flex:1;text-align:center}}
.email-delivery-audit-note{margin:0 0 14px;padding:13px 15px;color:#43536d;background:#edf3ff;border-radius:11px;font-size:12px;line-height:1.5}.email-delivery-audit-filters{grid-template-columns:minmax(220px,1fr) minmax(170px,230px) auto}.email-outbox-status.pending{color:#8b611c;background:#fff1cf}.email-outbox-status.sending{color:#315477;background:#edf4ff}.email-outbox-status.sent{color:#176b50;background:#def5ea}.email-outbox-status.failed{color:#a43e48;background:#fde7e9}.email-delivery-audit-table td{white-space:normal}.email-delivery-audit-table td:nth-child(2),.email-delivery-audit-table td:nth-child(3),.email-delivery-audit-table td:nth-child(4){min-width:130px}.email-delivery-audit-table td:nth-child(3){min-width:220px}.email-delivery-audit-table td:nth-child(6){min-width:220px;max-width:420px;overflow-wrap:anywhere}.email-delivery-audit-table td small,.email-delivery-sent-at{display:block;margin-top:3px;color:var(--muted);font-size:10px}.email-delivery-error{color:#a43e48}@media(max-width:680px){.email-delivery-audit-filters{grid-template-columns:1fr}.email-delivery-audit-filters input{grid-column:auto}}
.admin-taxi-vehicle-add-form{display:grid;gap:18px}.admin-taxi-vehicle-add-form>.button{justify-self:start}.admin-taxi-vehicle-catalog-option{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:min(100%,620px);padding:15px 16px;border:1px solid var(--line);border-radius:13px;background:#f8f9fc;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s}.admin-taxi-vehicle-catalog-option:hover{border-color:#d7b348;background:#fffaf0}.admin-taxi-vehicle-catalog-option:has(input:checked){border-color:#e0ae1f;background:#fffaf0;box-shadow:0 0 0 3px rgba(255,201,74,.13)}.admin-taxi-vehicle-catalog-option input{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;opacity:0;pointer-events:none}.admin-taxi-vehicle-catalog-option span{display:grid;min-width:0;gap:4px}.admin-taxi-vehicle-catalog-option b{font-size:14px}.admin-taxi-vehicle-catalog-option small{color:var(--muted);font-size:12px;font-weight:500;line-height:1.45}.admin-taxi-vehicle-catalog-option>i{position:relative;display:block;flex:0 0 auto;width:44px;height:26px;background:#c8ced9;border-radius:99px;box-shadow:inset 0 0 0 1px rgba(16,25,53,.08);transition:background .18s}.admin-taxi-vehicle-catalog-option>i:after{position:absolute;top:3px;left:3px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(16,25,53,.24);content:"";transition:transform .18s}.admin-taxi-vehicle-catalog-option input:checked~i{background:#e2ad17}.admin-taxi-vehicle-catalog-option input:checked~i:after{transform:translateX(18px)}.admin-taxi-vehicle-catalog-option input:focus-visible~i{outline:3px solid rgba(255,201,74,.4);outline-offset:3px}.admin-taxi-vehicle-description{grid-column:1/-1}@media(max-width:700px){.admin-taxi-vehicle-description{grid-column:auto}.admin-taxi-vehicle-catalog-option{width:100%;padding:14px;gap:12px}.admin-taxi-vehicle-catalog-option small{font-size:11px}}
.admin-taxi-gallery-filters{grid-template-columns:minmax(220px,320px) auto auto;justify-content:start}.admin-taxi-gallery-filters label{display:grid;gap:6px}.admin-taxi-gallery-filters label>span{color:var(--muted);font-size:11px;font-weight:800}.admin-taxi-gallery-filters .button{align-self:end}.admin-taxi-gallery-summary{display:flex;align-items:baseline;gap:8px;margin:0 0 15px;color:var(--muted)}.admin-taxi-gallery-summary strong{color:var(--navy);font-size:24px}.admin-taxi-gallery-summary span{font-size:13px}.admin-taxi-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.admin-taxi-photo-card{display:grid;min-width:0;overflow:hidden;color:var(--navy);background:#fff;border:1px solid #ddd7c5;border-radius:17px;box-shadow:var(--shadow-soft);transition:transform .18s,border-color .18s,box-shadow .18s}.admin-taxi-photo-card:hover{transform:translateY(-3px);border-color:#d4a719;box-shadow:0 16px 34px rgba(16,25,53,.13)}.admin-taxi-photo-card:focus-visible{outline:3px solid rgba(255,201,74,.55);outline-offset:3px}.admin-taxi-photo-image{display:block;aspect-ratio:4/3;overflow:hidden;background:#e9edf2}.admin-taxi-photo-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.admin-taxi-photo-card:hover .admin-taxi-photo-image img{transform:scale(1.025)}.admin-taxi-photo-body{display:grid;gap:13px;padding:15px 16px 16px}.admin-taxi-photo-heading{display:flex;align-items:start;justify-content:space-between;gap:10px}.admin-taxi-photo-heading>span,.admin-taxi-photo-driver{display:grid;min-width:0;gap:3px}.admin-taxi-photo-heading small{color:#8b620b;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.admin-taxi-photo-heading strong{overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.admin-taxi-photo-heading em{flex:0 0 auto;padding:5px 8px;color:#176b50;background:#e7f7ef;border-radius:99px;font-size:10px;font-style:normal;font-weight:800}.admin-taxi-photo-heading em.is-pending{color:#8b620b;background:#fff3cd}.admin-taxi-photo-heading em.is-rejected,.admin-taxi-photo-heading em.is-suspended{color:#9b3540;background:#ffeaec}.admin-taxi-photo-driver b{font-size:14px}.admin-taxi-photo-driver small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-taxi-photo-open{display:flex;align-items:center;justify-content:space-between;padding-top:12px;color:#765500;border-top:1px solid var(--line);font-size:12px;font-weight:850}.admin-taxi-photo-open b{font-size:18px}
@media(max-width:980px){.admin-taxi-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.admin-taxi-gallery-filters{grid-template-columns:1fr}.admin-taxi-gallery-filters .button{width:100%}.admin-taxi-photo-grid{grid-template-columns:1fr;gap:14px}.admin-taxi-photo-image{aspect-ratio:16/11}.admin-taxi-gallery-page .admin-taxi-title{align-items:flex-start}.admin-taxi-photo-heading strong{font-size:16px}}

.taxi-special-routes>.button-primary{color:#fff;background:#2467d1;box-shadow:0 9px 18px rgba(36,103,209,.2)}
.taxi-special-routes>.button-primary:hover:not(:disabled){color:#fff;background:#1d56b5;box-shadow:0 12px 22px rgba(36,103,209,.28)}

/* Destinos destacados: miniaturas ligeras en tres columnas. */
.taxi-passenger-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.taxi-passenger-featured-grid>button{min-height:88px;aspect-ratio:auto;padding:9px 8px;border-radius:14px}
.taxi-passenger-featured-grid b,.taxi-passenger-featured-grid>:is(.is-airport,.is-varadero,.is-vinales,.is-provinces) b{font-size:12px;line-height:1.15}
.taxi-passenger-featured-grid small{font-size:9px!important;line-height:1.2!important}
.taxi-passenger-featured-grid .is-excursions{grid-column:span 2;grid-template-columns:minmax(0,1fr) 18px;min-height:88px}
.taxi-passenger-featured-grid .is-excursions b{font-size:13px}
.taxi-passenger-featured-grid .is-airport{background-image:url("../images/taxi-destinations/aeropuerto.webp?v=3")}
.taxi-passenger-featured-grid .is-varadero{background-image:url("../images/taxi-destinations/varadero.webp?v=3")}
.taxi-passenger-featured-grid .is-vinales{background-image:url("../images/taxi-destinations/vinales.webp?v=3")}
.taxi-passenger-featured-grid .is-provinces{background-image:url("../images/taxi-destinations/otras-provincias.webp?v=3")}
.taxi-passenger-featured-grid .is-excursions{background-image:linear-gradient(90deg,rgba(5,13,25,.9) 0%,rgba(5,13,25,.63) 48%,rgba(5,13,25,.08) 100%),url("../images/taxi-destinations/excursiones.webp?v=3")}

body.taxi-driver-dashboard-page.taxi-new-offer-open .taxi-driver-bottom-stack>.taxi-driver-status-sheet{display:none!important}

@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-searching[data-price-approval-required="1"]) .mobile-nav-taxi-passenger{display:none!important}body.taxi-passenger-app:has(.taxi-passenger-searching[data-price-approval-required="1"]) .taxi-passenger-searching{bottom:calc(68px + env(safe-area-inset-bottom,0px))!important;padding-bottom:8px}body.taxi-passenger-app:has(.taxi-passenger-searching[data-price-approval-required="1"]) .taxi-map-driver-picker.is-active-ride-route{bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}}
@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-dashboard.is-choosing-driver .taxi-driver-option.is-selected) .mobile-nav-taxi-passenger,body.taxi-passenger-app:has(.taxi-passenger-searching) .mobile-nav-taxi-passenger{display:none!important}body.taxi-passenger-app:has(.taxi-passenger-searching) .taxi-passenger-searching{bottom:calc(68px + env(safe-area-inset-bottom,0px))!important;padding-bottom:8px}body.taxi-passenger-app:has(.taxi-passenger-searching) .taxi-map-driver-picker.is-active-ride-route{bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}}
.taxi-brand-surface .taxi-price-approval-actions .button-primary:hover:not(:disabled),.taxi-brand-surface .taxi-price-approval-actions .button-primary:focus-visible,.taxi-brand-surface .taxi-price-approval-actions .button-primary:active:not(:disabled){color:#fff;background:#111827;border-color:#111827;box-shadow:0 5px 14px rgba(17,24,39,.2)}
.taxi-searching-panel>.taxi-price-approval-actions{width:auto;margin:0 18px 16px}
.taxi-passenger-driver-card .taxi-assigned-vehicle img{transform:scaleX(-1)}
@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-has-driver) .mobile-nav-taxi-passenger{display:none!important}body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-window{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}

/* El viaje asignado cabe siempre en el viewport visible, incluso con las barras del navegador abiertas. */
@media(max-width:680px){
  html:has(body.taxi-passenger-app .taxi-passenger-has-driver),
  body.taxi-passenger-app:has(.taxi-passenger-has-driver){overflow:hidden;overscroll-behavior:none}
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-dashboard{
    height:calc(100vh - 62px - env(safe-area-inset-top,0px));
    height:calc(var(--taxi-passenger-visible-height,100dvh) - 62px - env(safe-area-inset-top,0px));
    min-height:0;
  }
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-window{
    min-height:0;
    padding:8px 0 max(8px,env(safe-area-inset-bottom,0px));
  }
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-card{min-height:0;max-height:100%}
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-driver-match{
    padding:max(8px,env(safe-area-inset-top,0px)) 8px max(8px,env(safe-area-inset-bottom,0px));
  }
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-driver-match>article{max-height:100%}
}
@media(max-width:680px) and (max-height:620px){
  body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-card:not(.is-collapsed){padding:6px 10px 8px;border-radius:18px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-passenger-panel-toggle{height:13px;margin-bottom:0}
  .taxi-passenger-driver-card:not(.is-collapsed)>header.taxi-passenger-status-head{max-height:48px;padding:0 2px 7px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver{grid-template-columns:44px minmax(0,1fr) auto;column-gap:8px;padding:7px 2px 6px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-avatar{width:42px;height:42px;flex-basis:42px;border-radius:13px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver h1{font-size:16px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver-actions{grid-template-columns:82px 36px;gap:6px;margin-left:0}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-call{width:82px;min-width:82px;height:36px;min-height:36px;padding:0 8px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-driver .taxi-assigned-message{width:36px;height:36px;min-height:36px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle{grid-template-columns:48px minmax(0,1fr);gap:8px;padding:6px 8px;border-radius:13px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle>span{width:48px;height:40px;flex-basis:48px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle img{width:46px;height:38px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-vehicle-full-detail{margin-top:1px;font-size:15px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-cancel{margin-top:3px}
  .taxi-passenger-driver-card:not(.is-collapsed) .taxi-assigned-cancel button{padding:3px 8px}
  .taxi-driver-match>article{padding:15px 16px 14px;border-radius:20px}
  .taxi-driver-match-check{width:36px;height:36px;margin-bottom:6px;font-size:18px;box-shadow:0 0 0 5px rgba(45,187,131,.13)}
  .taxi-driver-match h2{margin:3px 0 9px;font-size:20px}
  .taxi-driver-match-person,.taxi-driver-match-vehicle{grid-template-columns:44px minmax(0,1fr);gap:9px;padding:7px 9px}
  .taxi-driver-match-person>span{width:44px;height:44px;border-radius:13px}
  .taxi-driver-match-vehicle>img{width:44px;height:36px}
  .taxi-driver-match-price{margin:9px 0 8px;font-size:19px}
  .taxi-driver-match>article>button{min-height:42px}
}
.taxi-searching-status-row:has(.taxi-searching-back-form){position:relative;justify-content:center}.taxi-searching-back-form{position:absolute;top:8px;left:14px;margin:0}.taxi-searching-back-form button{display:grid;place-items:center;width:34px;height:34px;padding:0;color:#3f4b5b;background:#f3f5f7;border:0;border-radius:50%;cursor:pointer}.taxi-searching-back-form button:hover{background:#e8ebef}.taxi-searching-back-form svg{width:17px;height:17px;transform:rotate(180deg)}.taxi-price-approval-actions .taxi-search-another-option{width:auto;min-height:32px;padding:5px 12px;color:#566273;background:transparent;border:0;box-shadow:none;font-size:11px;font-weight:650}
.taxi-passenger-featured-grid>:is(.is-playas-este){grid-template-columns:minmax(0,1fr);align-items:end;background-image:linear-gradient(180deg,rgba(7,15,28,.02) 15%,rgba(7,15,28,.84) 100%),url("../images/taxi-destinations/playas-del-este.webp?v=1");background-position:center;background-size:cover;border-color:rgba(255,255,255,.48);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.taxi-passenger-featured-grid>.is-playas-este::after{display:none}.taxi-passenger-featured-grid>.is-playas-este .taxi-passenger-featured-icon{display:none}.taxi-passenger-featured-grid>.is-playas-este>span:last-of-type{position:relative;z-index:1}.taxi-passenger-featured-grid>.is-playas-este b{color:#fff;font-size:15px;text-shadow:0 2px 8px rgba(0,0,0,.55)}.taxi-passenger-featured-grid>.is-playas-este small{color:#eef3f8;text-shadow:0 1px 5px rgba(0,0,0,.68)}
.taxi-passenger-featured-grid .is-excursions{grid-column:1/-1}
.taxi-passenger-featured-toggle{justify-content:center;width:max-content;max-width:100%;min-height:42px;margin:10px auto 0;padding:9px 14px;color:#26364c;background:rgba(255,255,255,.92);border:1px solid #d9e0e8;border-radius:13px;box-shadow:0 3px 10px rgba(23,39,61,.07);font-size:12px;font-weight:750;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.taxi-passenger-featured-toggle:hover,.taxi-passenger-featured-toggle:focus-visible{color:#14243a;background:#fff;border-color:#b9c6d5;box-shadow:0 5px 14px rgba(23,39,61,.12);outline:0;transform:translateY(-1px)}.taxi-passenger-featured-toggle span{text-decoration:none}.taxi-passenger-featured-toggle svg{box-sizing:border-box;width:23px;height:23px;padding:4px;color:#1b344e;background:#f0f4f8;border-radius:50%;stroke-width:2.2}
.taxi-passenger-featured-grid .is-playas-este b{font-size:12px}
.taxi-passenger-featured-grid .is-excursions{align-items:end}
.taxi-passenger-featured-toggle{background:transparent;border:0;border-radius:10px;box-shadow:none}.taxi-passenger-featured-toggle:hover,.taxi-passenger-featured-toggle:focus-visible{background:rgba(241,245,249,.8);border:0;box-shadow:none;transform:none}.taxi-passenger-featured-toggle svg{background:transparent}
.taxi-passenger-featured-toggle{margin:10px auto}
.taxi-map-driver-picker .taxi-driver-search-route-heading{justify-items:center}.taxi-map-driver-picker .taxi-driver-search-route-heading>i{place-self:center}
.taxi-map-driver-picker .taxi-driver-search-trip:not(.is-expanded) .taxi-driver-route-details{display:none}

/* Colores propios de la conversación de taxi. */
.taxi-chat-screen .chat-messages-page{background-color:#fff9df!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='190' height='125' viewBox='0 0 190 125'%3E%3Cg transform='rotate(-30 95 62.5)' fill='%23a77c08' fill-opacity='.11' font-family='Arial,sans-serif' font-size='13' font-weight='700' letter-spacing='.3'%3E%3Ctext x='-15' y='32'%3EEnRuta Taxi%3C/text%3E%3Ctext x='80' y='92'%3EEnRuta Taxi%3C/text%3E%3C/g%3E%3C/svg%3E")!important;background-size:190px 125px!important}
.taxi-chat-screen .chat-watermark{display:none!important}
.taxi-chat-screen .chat-send-button{color:#3b3108!important;background:#ffd84d!important;border-color:#f2c82f!important;box-shadow:0 3px 9px rgba(172,129,0,.18)!important}
.taxi-chat-screen .chat-send-button:hover{color:#302600!important;background:#ffce24!important}
.admin-taxi-completion-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:14px 17px;border:1px solid #efb9b9;border-radius:12px;background:#fff3f2;color:#8f2929;text-decoration:none}.admin-taxi-completion-alert strong{font-size:14px}.admin-taxi-completion-alert span{font-size:12px;font-weight:700}.admin-taxi-completion-warning{display:block;margin-top:6px;color:#ad3333!important;font-size:11px;font-weight:800;line-height:1.35}@media(max-width:560px){.admin-taxi-completion-alert{align-items:flex-start;flex-direction:column}}
.admin-taxi-risk-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:14px 17px;border:1px solid #efc277;border-radius:12px;background:#fff8e8;color:#784d08}.admin-taxi-risk-alert strong{font-size:14px}.admin-taxi-risk-alert span{font-size:11px;font-weight:700}.admin-taxi-risk-panel{margin-bottom:18px}.admin-taxi-risk-list{display:grid}.admin-taxi-risk-list article{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px 16px;padding:13px 0;border-top:1px solid var(--line)}.admin-taxi-risk-list article:first-child{border-top:0}.admin-taxi-risk-list article>a{display:grid;gap:3px;color:inherit}.admin-taxi-risk-list article>a small{color:var(--muted);font-size:11px}.admin-taxi-risk-list article>div{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:6px}.admin-taxi-risk-list article>div small{padding:4px 7px;border-radius:99px;background:#f1f4f8;color:#536174;font-size:10px;font-weight:750}.admin-taxi-risk-list article>div .is-high,.admin-taxi-risk-list article>div .is-critical{background:#ffeaec;color:#943541}.admin-taxi-risk-list article>div .is-positive{background:#e7f7ef;color:#176b50}.admin-taxi-risk-score{display:grid;justify-items:end}.admin-taxi-risk-score strong{font-size:20px;line-height:1}.admin-taxi-risk-score small{font-size:10px;font-weight:800}.admin-taxi-risk-score.is-high,.admin-taxi-risk-score.is-critical{color:#9b3540}.admin-taxi-risk-score.is-medium{color:#9a6900}@media(max-width:560px){.admin-taxi-risk-alert{align-items:flex-start;flex-direction:column}.admin-taxi-risk-list article{grid-template-columns:minmax(0,1fr) auto}}
.admin-taxi-completion-reason{display:block;max-width:240px;margin-top:3px;color:#596579;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.admin-taxi-completion-review{margin-top:7px}.admin-taxi-completion-review button{padding:6px 9px;border:1px solid #d8a5a5;border-radius:7px;background:#fff;color:#8f2929;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.admin-taxi-completion-review button:hover{background:#fff3f2}.admin-taxi-completion-reviewed{color:#39705d!important;font-weight:750}.admin-taxi-completion-reason{white-space:normal}

/* Expediente administrativo de cada viaje de Taxi. */
.admin-taxi-detail-button{min-height:34px;padding:7px 10px;font-size:10px;white-space:nowrap}.admin-taxi-detail-heading{align-items:center}.admin-taxi-detail-heading>span{flex:0 0 auto}.taxi-audit-alerts{display:grid;gap:9px;margin-bottom:17px}.taxi-audit-alerts article{display:grid;gap:3px;padding:13px 16px;color:#8f2929;background:#fff3f2;border:1px solid #efb9b9;border-radius:12px}.taxi-audit-alerts b{font-size:13px}.taxi-audit-alerts span{font-size:11px;line-height:1.45}.taxi-audit-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.taxi-audit-kpis article{display:grid;gap:5px;padding:17px;background:#fff;border:1px solid #e3e6eb;border-top:3px solid #ffc94a;border-radius:13px;box-shadow:var(--shadow-soft)}.taxi-audit-kpis small,.taxi-audit-party-grid small,.taxi-audit-location-grid small{color:#7b6430;font-size:9px;font-weight:850;letter-spacing:.08em}.taxi-audit-kpis strong{color:var(--navy);font-size:22px}.taxi-audit-kpis span{color:var(--muted);font-size:10px}.taxi-audit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;margin-bottom:18px}.taxi-audit-grid>.admin-panel{margin:0}.taxi-audit-party-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.taxi-audit-party-grid article{display:grid;align-content:start;gap:5px;padding:14px;background:#f7f8fb;border-radius:11px}.taxi-audit-party-grid article.wide{grid-column:1/-1}.taxi-audit-party-grid h3,.taxi-audit-location-grid h3{margin:0;color:var(--navy);font-size:14px}.taxi-audit-party-grid span{color:var(--muted);font-size:11px;overflow-wrap:anywhere}.taxi-audit-party-grid a,.taxi-audit-location-grid a{width:max-content;color:var(--blue);font-size:10px;font-weight:800}.taxi-audit-data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.taxi-audit-data-list>div{display:grid;gap:4px;padding:10px 0;border-bottom:1px solid var(--line)}.taxi-audit-data-list>div:nth-last-child(-n+2){border-bottom:0}.taxi-audit-data-list>div.wide{grid-column:1/-1}.taxi-audit-data-list dt{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.taxi-audit-data-list dd{margin:0;font-size:12px;font-weight:750;overflow-wrap:anywhere}.taxi-audit-locations,.taxi-audit-history,.taxi-audit-technical{margin-bottom:18px}.taxi-audit-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.taxi-audit-location-grid article{display:grid;align-content:start;gap:7px;min-height:170px;padding:15px;background:#f7f8fb;border:1px solid #e7e9ee;border-radius:12px}.taxi-audit-location-grid p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.taxi-audit-location-grid code{width:max-content;max-width:100%;padding:5px 7px;color:#315fc8;background:#e8efff;border-radius:6px;font-size:10px;overflow-wrap:anywhere}.taxi-audit-ratings{display:grid;gap:9px}.taxi-audit-ratings article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;padding:13px;background:#f7f8fb;border-radius:11px}.taxi-audit-ratings small{font-size:9px;font-weight:850}.taxi-audit-ratings strong{grid-column:2;grid-row:1/3;color:#d99e00;font-size:17px;letter-spacing:1px}.taxi-audit-ratings span,.taxi-audit-ratings time{color:var(--muted);font-size:10px}.taxi-audit-ratings p{grid-column:1/-1;margin:4px 0 0;font-size:11px;line-height:1.45}.taxi-audit-ratings time{grid-column:1/-1}.taxi-audit-timeline{display:grid}.taxi-audit-timeline article{display:grid;grid-template-columns:16px minmax(0,1fr);gap:9px}.taxi-audit-timeline article>i{position:relative;width:9px;height:9px;margin-top:15px;background:#ffc94a;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #e6bd49}.taxi-audit-timeline article:not(:last-child)>i:after{position:absolute;top:9px;left:2px;width:1px;height:calc(100% + 25px);background:#dfe3e9;content:""}.taxi-audit-timeline article>div{display:grid;gap:3px;padding:10px 0 13px;border-bottom:1px solid var(--line)}.taxi-audit-timeline article:last-child>div{border-bottom:0}.taxi-audit-timeline header{display:flex;justify-content:space-between;gap:14px}.taxi-audit-timeline b{font-size:12px}.taxi-audit-timeline span,.taxi-audit-timeline time{color:var(--muted);font-size:9px}.taxi-audit-timeline p{margin:2px 0 0;font-size:10px;line-height:1.5}.taxi-audit-records,.taxi-audit-messages{display:grid;gap:8px}.taxi-audit-records article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;background:#f7f8fb;border-radius:10px}.taxi-audit-records article>div{display:grid;gap:3px}.taxi-audit-records b{font-size:11px}.taxi-audit-records span{color:var(--muted);font-size:9px}.taxi-audit-records em{flex:0 0 auto;color:#5d6675;font-size:10px;font-style:normal;font-weight:800}.taxi-audit-records em.positive{color:#176b50}.taxi-audit-records em.negative{color:#9b3540}.taxi-audit-messages article{padding:12px;background:#f7f8fb;border-radius:10px}.taxi-audit-messages header{display:flex;justify-content:space-between;gap:12px}.taxi-audit-messages b{font-size:11px}.taxi-audit-messages time{color:var(--muted);font-size:9px}.taxi-audit-messages p{margin:6px 0 0;font-size:11px;line-height:1.5;white-space:pre-wrap}
@media(max-width:950px){.taxi-audit-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.taxi-audit-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.admin-taxi-detail-heading{align-items:flex-start;flex-direction:column}.taxi-audit-grid,.taxi-audit-location-grid{grid-template-columns:1fr}.taxi-audit-location-grid article{min-height:0}.admin-taxi-rides-table td:last-child{display:table-cell}}
@media(max-width:500px){.taxi-audit-kpis,.taxi-audit-party-grid,.taxi-audit-data-list{grid-template-columns:1fr}.taxi-audit-party-grid article.wide,.taxi-audit-data-list>div.wide{grid-column:auto}.taxi-audit-data-list>div:nth-last-child(2){border-bottom:1px solid var(--line)}.taxi-audit-records article{align-items:flex-start;flex-direction:column}}

.taxi-audit-map-shell{margin-bottom:18px}.taxi-audit-map-toggles{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:10px}.taxi-audit-map-toggles label{display:flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;color:#667083;background:#f3f5f8;border:1px solid #e0e4ea;border-radius:9px;font-size:10px;font-weight:800;cursor:pointer}.taxi-audit-map-toggles label:has(input:checked){color:#17223b;background:#fff;border-color:#c7cfd9;box-shadow:0 2px 7px rgba(15,28,53,.08)}.taxi-audit-map-toggles input{position:absolute;opacity:0;pointer-events:none}.taxi-audit-map-toggles i{width:10px;height:10px;background:#9aa3b2;border-radius:50%}.taxi-audit-map-toggles .type-pickup i,.taxi-audit-map-marker.type-pickup{background:#20a66a}.taxi-audit-map-toggles .type-passenger i,.taxi-audit-map-marker.type-passenger{background:#7b5ce7}.taxi-audit-map-toggles .type-driver i,.taxi-audit-map-marker.type-driver{background:#e1a900}.taxi-audit-map-toggles .type-destination i,.taxi-audit-map-marker.type-destination{background:#2f76e6}.taxi-audit-map-toggles .type-completion i,.taxi-audit-map-marker.type-completion{background:#df4c58}.taxi-audit-map-toggles button{padding:6px 8px;color:var(--blue);background:transparent;border:0;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.taxi-audit-map{position:relative;height:430px;overflow:hidden;background:#a2d7ea;border:1px solid #d2d9e2;border-radius:14px;touch-action:none}.taxi-audit-map.is-dragging{cursor:grabbing}.taxi-audit-map>[data-ride-map-tiles],.taxi-audit-map>[data-ride-map-points],.taxi-audit-map>[data-ride-map-routes]{position:absolute;inset:0}.taxi-audit-map>[data-ride-map-routes]{z-index:1;width:100%;height:100%;pointer-events:none}.taxi-audit-map>[data-ride-map-points]{z-index:2}.taxi-audit-map [data-ride-map-routes] line{fill:none;stroke-width:4;stroke-linecap:round}.taxi-audit-map [data-ride-map-routes] .is-trip{stroke:#2f76e6;stroke-width:5;opacity:.72}.taxi-audit-map [data-ride-map-routes] .is-passenger{stroke:#7b5ce7;stroke-dasharray:5 6}.taxi-audit-map [data-ride-map-routes] .is-driver{stroke:#d69f00;stroke-dasharray:5 6}.taxi-audit-map [data-ride-map-routes] .is-completion{stroke:#df4c58;stroke-dasharray:3 5}.taxi-audit-map-marker{position:absolute;z-index:2;display:grid;place-items:center;width:31px;height:31px;padding:0;color:#fff;border:3px solid #fff;border-radius:50% 50% 50% 7px;box-shadow:0 4px 11px rgba(10,25,52,.35);font-size:10px;font-weight:950;transform:translate(-50%,-90%) rotate(-45deg);cursor:pointer}.taxi-audit-map-marker::first-letter{transform:rotate(45deg)}.taxi-audit-map-marker{line-height:1;text-indent:0}.taxi-audit-map-marker.is-selected{z-index:4;box-shadow:0 5px 14px rgba(10,25,52,.45),0 0 0 4px rgba(255,255,255,.65);scale:1.1}.taxi-audit-map-popup{position:absolute;z-index:3;display:grid;gap:4px;width:220px;padding:12px;background:#fff;border:1px solid #d8dee7;border-radius:11px;box-shadow:0 9px 26px rgba(9,24,49,.23);transform:translate(-50%,calc(-100% - 25px))}.taxi-audit-map-popup strong{font-size:12px}.taxi-audit-map-popup p{margin:0;color:var(--muted);font-size:10px;line-height:1.4}.taxi-audit-map-popup code{color:#315fc8;font-size:9px}.taxi-audit-map-controls{position:absolute;z-index:5;top:12px;right:12px;display:grid;overflow:hidden;background:#fff;border-radius:9px;box-shadow:0 3px 12px rgba(13,29,54,.2)}.taxi-audit-map-controls button{width:34px;height:34px;padding:0;background:#fff;border:0;font-size:20px;font-weight:800;cursor:pointer}.taxi-audit-map-controls button+button{border-top:1px solid #e1e5eb}.taxi-audit-map>small{position:absolute;z-index:3;right:9px;bottom:7px;padding:3px 5px;color:#536174;background:rgba(255,255,255,.86);border-radius:5px;font-size:8px}.taxi-audit-map-help{margin:7px 2px 0;color:var(--muted);font-size:10px}.taxi-audit-map .taxi-map-empty{position:absolute;z-index:4;inset:50% auto auto 50%;padding:10px 13px;background:#fff;border-radius:9px;box-shadow:0 3px 12px rgba(13,29,54,.13);transform:translate(-50%,-50%);font-size:10px;font-weight:800}
@media(max-width:700px){.taxi-audit-map{height:360px}.taxi-audit-map-toggles label{flex:1 1 calc(50% - 7px)}.taxi-audit-map-toggles button{flex:0 0 auto}.taxi-audit-map-popup{width:190px}}
.taxi-audit-map-marker>span{display:block;transform:rotate(45deg)}
.taxi-audit-map [data-ride-map-routes] polyline{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.taxi-map-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin:18px 0;padding:16px}.taxi-map-controls label{display:grid;gap:6px;font-size:12px;font-weight:800}.taxi-map-controls input,.taxi-map-controls select{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy)}.taxi-map-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:12px 2px;color:#4d586a;font-size:12px}.taxi-map-legend span{display:flex;align-items:center;gap:7px}.taxi-map-legend i,.taxi-map-dot{display:inline-block;width:12px;height:12px;border-radius:50%}.taxi-map-legend i.gray,.taxi-map-dot.gray{background:#858b96}.taxi-map-legend i.yellow,.taxi-map-dot.yellow{background:#f3c433}.taxi-map-legend i.blue,.taxi-map-dot.blue{background:#2587e8}.taxi-map-legend small{margin-left:auto;color:var(--muted)}.taxi-map-frame{overflow:hidden;padding:0}.taxi-map-frame #taxi-operations-map{width:100%;height:min(65vh,620px);min-height:360px;background:#e6ebef}.taxi-map-results{margin-top:18px;padding:18px}.taxi-map-results h2{margin:0 0 12px}.taxi-map-results h2 small{color:var(--muted);font-size:13px}.taxi-map-results #taxi-map-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.taxi-map-results article{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:10px}.taxi-map-results article div{display:grid;min-width:0;flex:1;gap:3px}.taxi-map-results article small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.taxi-map-results article button{padding:6px 10px;border:0;border-radius:7px;background:#eef2f8;color:var(--navy);font-weight:800;cursor:pointer}@media(max-width:700px){.taxi-map-controls{grid-template-columns:1fr}.taxi-map-legend small{width:100%;margin:0}.taxi-map-results #taxi-map-list{grid-template-columns:1fr}.taxi-map-frame #taxi-operations-map{min-height:320px;height:55vh}}
.admin-taxi-map-page{width:calc(100% - 40px);max-width:none}.admin-taxi-map-page>.taxi-map-frame{width:100%;box-sizing:border-box}.admin-taxi-map-page .taxi-map-frame #taxi-operations-map{display:block;width:100%;height:min(72vh,760px);min-height:440px}.admin-taxi-map-page .leaflet-container{font:inherit}@media(max-width:850px){.admin-taxi-map-page{width:calc(100% - 30px)}}@media(max-width:520px){.admin-taxi-map-page{width:calc(100% - 24px)}.admin-taxi-map-page .taxi-map-frame #taxi-operations-map{height:62vh;min-height:380px}}
.admin-taxi-map-canvas{position:relative;overflow:hidden;background:#dce6e6;touch-action:none;cursor:grab}.admin-taxi-map-canvas.is-dragging{cursor:grabbing}.admin-taxi-map-canvas>[data-taxi-map-tiles],.admin-taxi-map-canvas>[data-taxi-map-routes],.admin-taxi-map-canvas>[data-taxi-map-points]{position:absolute;inset:0}.admin-taxi-map-canvas>[data-taxi-map-tiles] img{position:absolute;width:256px;height:256px;user-select:none;pointer-events:none}.admin-taxi-map-canvas>[data-taxi-map-routes]{z-index:1;overflow:hidden;pointer-events:none}.admin-taxi-map-canvas>[data-taxi-map-routes] svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.admin-taxi-route-border,.admin-taxi-route-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.admin-taxi-route-border{stroke:rgba(255,255,255,.92);stroke-width:9}.admin-taxi-route-line{stroke:#20a66a;stroke-width:5}.admin-taxi-route-destination{position:absolute;display:grid;grid-template-columns:auto auto;align-items:center;gap:0 7px;min-width:max-content;padding:6px 9px 6px 6px;color:#17223b;background:#fff;border:1px solid rgba(16,25,53,.14);border-radius:12px;box-shadow:0 5px 16px rgba(8,20,38,.24);transform:translate(-16px,-50%)}.admin-taxi-route-destination i{grid-row:1/3;display:block;width:19px;height:19px;background:#20a66a;border:4px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(18,111,73,.35)}.admin-taxi-route-destination b{font-size:10px}.admin-taxi-route-destination small{max-width:180px;overflow:hidden;color:#667085;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.admin-taxi-map-canvas>[data-taxi-map-points]{z-index:2;pointer-events:none}.admin-taxi-map-canvas .taxi-map-marker{pointer-events:auto}.admin-taxi-map-canvas .taxi-map-marker.driver.taxi-nearby-map-marker{display:block;width:46px;height:46px;padding:0;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}.admin-taxi-map-canvas .taxi-nearby-map-car{position:absolute;inset:0;display:block;width:46px;height:46px}.admin-taxi-map-canvas .taxi-nearby-map-car img{position:absolute;z-index:2;inset:0;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(14,27,38,.24));pointer-events:none}.admin-taxi-map-canvas .taxi-map-marker.driver.red .taxi-nearby-map-car img{filter:hue-rotate(315deg) saturate(2) drop-shadow(0 2px 2px rgba(14,27,38,.24))}.admin-taxi-map-canvas .taxi-map-marker.pickup{width:24px;height:24px;background:#176bff;border:4px solid #fff;border-radius:50%;box-shadow:0 5px 16px rgba(15,72,163,.38)}.admin-taxi-map-canvas .taxi-map-popup{pointer-events:auto}.admin-taxi-map-zoom{position:absolute;z-index:8;top:12px;right:12px;display:grid;overflow:hidden;border:1px solid #bac3ce;border-radius:10px;box-shadow:0 3px 12px rgba(8,20,38,.25)}.admin-taxi-map-zoom button{width:42px;height:42px;background:#fff;border:0;color:#17223b;font-size:27px;line-height:1;cursor:pointer}.admin-taxi-map-zoom button+button{border-top:1px solid #dbe0e7}.admin-taxi-map-empty{position:absolute;z-index:7;top:50%;left:50%;padding:12px 16px;background:#fff;border-radius:10px;box-shadow:0 3px 15px rgba(8,20,38,.2);transform:translate(-50%,-50%);font-size:12px;font-weight:750;white-space:nowrap}.admin-taxi-map-credit{position:absolute;z-index:7;right:5px;bottom:3px;padding:2px 5px;background:rgba(255,255,255,.82);font-size:10px}.taxi-map-legend .red{background:#e53935!important}.taxi-map-legend .yellow{background:#ffc928!important}.taxi-map-legend .blue{background:#1677ff!important}
.admin-taxi-map-canvas .taxi-map-marker.pickup.green{background:#20a66a}.taxi-map-legend .green,.taxi-map-dot.green{background:#20a66a!important}
.admin-taxi-map-canvas .taxi-map-popup{box-sizing:border-box;max-width:min(280px,calc(100vw - 44px));padding:13px;overflow-wrap:anywhere}.admin-taxi-map-canvas .taxi-map-popup p{color:#455166;font-size:12px}.admin-taxi-map-canvas .taxi-map-popup p b{color:#18213a}.admin-taxi-map-canvas .taxi-map-popup a{color:#175fc7;font-size:12px;font-weight:800;text-decoration:underline}
.admin-taxi-map-canvas .taxi-map-marker.driver.taxi-nearby-map-marker{pointer-events:auto!important;cursor:pointer!important}
.admin-taxi-map-canvas .taxi-map-marker.driver{position:absolute;z-index:3;width:36px;height:40px;padding:0;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none;transform:translate(-50%,-100%);cursor:pointer}.admin-taxi-map-canvas .taxi-map-marker.driver>span{position:absolute;top:2px;left:4px;display:grid;place-items:center;box-sizing:border-box;width:28px;height:28px;color:#17223b;background:#ffc928;border:2px solid #fff;border-radius:50% 50% 50% 7px;box-shadow:0 3px 9px rgba(16,25,53,.34);transform:rotate(-45deg);transition:box-shadow .15s ease,transform .15s ease}.admin-taxi-map-canvas .taxi-map-marker.driver>span>b{font-size:10px;font-weight:950;letter-spacing:-.04em;line-height:1;transform:rotate(45deg)}.admin-taxi-map-canvas .taxi-map-marker.driver.vehicle-moto>span{color:#fff;background:#2587e8}.admin-taxi-map-canvas .taxi-map-marker.driver.vehicle-triciclo>span{color:#fff;background:#20a66a}.admin-taxi-map-canvas .taxi-map-marker.driver.vehicle-comfort>span{color:#fff;background:#e53935}.admin-taxi-map-canvas .taxi-map-marker.driver.vehicle-other>span{color:#fff;background:#65758b}.admin-taxi-map-canvas .taxi-map-marker.driver:hover>span,.admin-taxi-map-canvas .taxi-map-marker.driver:focus-visible>span{box-shadow:0 4px 13px rgba(16,25,53,.46),0 0 0 3px rgba(255,255,255,.72);transform:rotate(-45deg) scale(1.08)}.admin-taxi-map-canvas .taxi-map-marker.driver:focus-visible{outline:0}
.taxi-map-legend .taxi-map-vehicle-key{display:grid;place-items:center;box-sizing:border-box;width:24px;height:24px;color:#17223b;background:#ffc928;border:2px solid #fff;border-radius:50% 50% 50% 7px;box-shadow:0 2px 6px rgba(16,25,53,.24);transform:rotate(-45deg);font-size:8px;font-style:normal}.taxi-map-legend .taxi-map-vehicle-key>b{font-weight:950;letter-spacing:-.04em;transform:rotate(45deg)}.taxi-map-legend .taxi-map-vehicle-key.is-moto{color:#fff;background:#2587e8}.taxi-map-legend .taxi-map-vehicle-key.is-tricycle{color:#fff;background:#20a66a}.taxi-map-legend .taxi-map-vehicle-key.is-comfort{color:#fff;background:#e53935}
.taxi-statistics-map .taxi-map-marker.driver{z-index:3;width:36px;height:40px;padding:0;overflow:visible;color:inherit;background:transparent;border:0;border-radius:0;box-shadow:none;filter:none;transform:translate(-50%,-100%)}.taxi-statistics-map .taxi-map-marker.driver>span{position:absolute;top:2px;left:4px;display:grid;place-items:center;box-sizing:border-box;width:28px;height:28px;color:#17223b;background:#ffc928;border:2px solid #fff;border-radius:50% 50% 50% 7px;box-shadow:0 3px 9px rgba(16,25,53,.34);transform:rotate(-45deg);transition:box-shadow .15s ease,transform .15s ease}.taxi-statistics-map .taxi-map-marker.driver>span>b{font-size:10px;font-weight:950;letter-spacing:-.04em;line-height:1;transform:rotate(45deg)}.taxi-statistics-map .taxi-map-marker.driver.vehicle-moto>span{color:#fff;background:#2587e8}.taxi-statistics-map .taxi-map-marker.driver.vehicle-triciclo>span{color:#fff;background:#20a66a}.taxi-statistics-map .taxi-map-marker.driver.vehicle-comfort>span{color:#fff;background:#e53935}.taxi-statistics-map .taxi-map-marker.driver.vehicle-other>span{color:#fff;background:#65758b}.taxi-statistics-map .taxi-map-marker.driver:hover>span,.taxi-statistics-map .taxi-map-marker.driver:focus-visible>span,.taxi-statistics-map .taxi-map-marker.driver.is-selected>span{box-shadow:0 4px 13px rgba(16,25,53,.46),0 0 0 3px rgba(255,255,255,.72);transform:rotate(-45deg) scale(1.08)}.taxi-statistics-map .taxi-map-marker.driver.is-selected{z-index:5;box-shadow:none;filter:none;transform:translate(-50%,-100%)}.taxi-statistics-map .taxi-map-marker.driver:focus-visible{outline:0}.taxi-statistics-map .taxi-map-popup{transform:translate(-50%,calc(-100% - 44px))}
.taxi-statistics-map .taxi-map-marker.driver.vehicle-moto,.taxi-statistics-map .taxi-map-marker.driver.vehicle-triciclo{width:36px;height:40px;color:inherit;background:transparent}
.admin-taxi-map-zoom [data-map-fullscreen]{font-size:20px}.admin-taxi-map-fullscreen-shell:fullscreen,.admin-taxi-map-fullscreen-shell:-webkit-full-screen,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback{display:grid;grid-template-rows:auto auto minmax(0,1fr);box-sizing:border-box;width:100vw;height:100vh;height:100dvh;padding:14px;background:#f3f5f8}.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback{position:fixed;z-index:1000;inset:0}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-controls,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-controls,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-controls{margin:0 0 10px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-legend,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-legend,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-legend{margin:0 2px 10px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-frame,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-frame,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-frame{min-height:0;margin:0}.admin-taxi-map-fullscreen-shell:fullscreen #taxi-operations-map,.admin-taxi-map-fullscreen-shell:-webkit-full-screen #taxi-operations-map,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback #taxi-operations-map{width:100%!important;height:100%!important;min-height:0!important;border-radius:0}.admin-taxi-map-fullscreen{overflow:hidden}@media(max-width:700px){.admin-taxi-map-fullscreen-shell:fullscreen,.admin-taxi-map-fullscreen-shell:-webkit-full-screen,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback{padding:8px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-controls,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-controls,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-controls{grid-template-columns:1fr 1fr 1fr;gap:7px;padding:9px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-controls label,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-controls label,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-controls label{font-size:9px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-controls input,.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-controls select,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-controls input,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-controls select,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-controls input,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-controls select{min-height:36px;padding:6px;font-size:11px}.admin-taxi-map-fullscreen-shell:fullscreen .taxi-map-legend,.admin-taxi-map-fullscreen-shell:-webkit-full-screen .taxi-map-legend,.admin-taxi-map-fullscreen-shell.is-fullscreen-fallback .taxi-map-legend{display:none}}
.taxi-nearby-passenger-count{display:block;margin-top:7px;color:#176b50;font-size:12px;font-weight:800;line-height:1.4}
.taxi-driver-waiting>div{gap:1px}.taxi-nearby-passenger-count{margin-top:4px}
.taxi-driver-waiting:not(.has-nearby-passengers){align-items:center}
.taxi-driver-status-copy i.is-pickup{background:#176bff;box-shadow:0 0 0 5px rgba(23,107,255,.15)}
.taxi-driver-status-copy i.is-waiting{background:#e5484d;box-shadow:0 0 0 5px rgba(229,72,77,.14)}
.taxi-driver-status-copy i.is-trip{background:#2dbb83;box-shadow:0 0 0 5px rgba(45,187,131,.14)}
.taxi-driver-status-copy i.is-destination{background:#f5bd2d;box-shadow:0 0 0 5px rgba(245,189,45,.2)}

/* Estado remoto y continuidad offline de los viajes de taxi. */
.taxi-peer-avatar{position:relative}.taxi-peer-offline-dot{position:absolute;z-index:3;right:-1px;bottom:1px;width:10px;height:10px;background:#df3545;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 5px rgba(130,20,34,.3)}.taxi-peer-offline-dot[hidden],[data-taxi-peer-connection-label][hidden]{display:none!important}[data-taxi-peer-connection-label]{display:block;margin-top:2px;color:#c83242!important;font-size:9px!important;font-weight:800;line-height:1.2}.taxi-trip-driver-contact{display:flex;align-items:center;gap:9px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(16,25,53,.1)}.taxi-trip-driver-contact>.taxi-assigned-avatar{width:34px;height:34px;font-size:11px}.taxi-trip-driver-contact>span:nth-child(2){display:grid;min-width:0;flex:1}.taxi-trip-driver-contact>span:nth-child(2)>b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.taxi-trip-driver-contact>a{display:grid;place-items:center;width:36px;height:36px;color:#176b50;background:#e8f8f1;border-radius:50%}.taxi-trip-driver-contact>a svg{width:17px;height:17px}
.taxi-assigned-driver>.taxi-assigned-driver-identity{display:flex;align-items:center;gap:7px;min-width:0}
.taxi-assigned-driver-identity h1{flex:0 1 auto;min-width:0}
.taxi-assigned-driver-identity [data-taxi-peer-connection-label]{flex:0 0 auto;margin-top:0;font-size:10px;letter-spacing:0;white-space:nowrap}
.taxi-local-completed-notice{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:13px;padding:13px;color:#263449;background:#fff8df;border:1px solid #efcf67;border-radius:14px}.taxi-local-completed-notice>span{display:grid;place-items:center;width:34px;height:34px;color:#705000;background:#ffd85a;border-radius:50%}.taxi-local-completed-notice svg{width:18px;height:18px}.taxi-local-completed-notice div{display:grid;gap:2px}.taxi-local-completed-notice b{font-size:13px}.taxi-local-completed-notice small{color:#70663f;font-size:10px;line-height:1.35}.taxi-local-completed-notice a{grid-column:1/-1;justify-self:end;color:#725500;font-size:11px;font-weight:850;text-decoration:none}.taxi-map-active-trip.is-locally-completed .taxi-driver-trip-route,.taxi-map-active-trip.is-locally-completed .taxi-map-trip-contact,.taxi-map-active-trip.is-locally-completed .taxi-trip-note{opacity:.72}
.taxi-offline-saved-dialog{width:min(430px,calc(100% - 30px));padding:0;overflow:hidden;background:transparent;border:0;border-radius:24px;box-shadow:0 26px 80px rgba(12,24,43,.28)}.taxi-offline-saved-dialog::backdrop{background:rgba(11,20,34,.48);backdrop-filter:blur(3px)}.taxi-offline-saved-dialog>div{display:grid;justify-items:center;padding:29px 25px 24px;color:#142238;background:#fff;text-align:center}.taxi-offline-saved-dialog>div>span{display:grid;place-items:center;width:52px;height:52px;margin-bottom:13px;color:#176b50;background:#e7f8ef;border-radius:50%}.taxi-offline-saved-dialog>div>span svg{width:26px;height:26px}.taxi-offline-saved-dialog small{color:#877020;font-size:9px;font-weight:900;letter-spacing:.14em}.taxi-offline-saved-dialog h2{margin:7px 0 8px;font-size:22px;letter-spacing:-.03em}.taxi-offline-saved-dialog p{margin:0 0 20px;color:#637083;font-size:13px;line-height:1.55}.taxi-offline-saved-dialog button{max-width:230px}
.taxi-history-pending{border-color:#e8c957;background:#fffdf5}.taxi-history-pending .status-pill{color:#795c00;background:#fff0b8}.taxi-history-pending.has-sync-conflict{border-color:#e1a1a7;background:#fff8f8}.taxi-history-pending.has-sync-conflict .status-pill{color:#a22e3b;background:#ffe5e8}.taxi-pending-sync-copy{display:grid;gap:3px;margin-top:13px;padding:11px 13px;color:#655326;background:#fff4cd;border-radius:10px}.taxi-pending-sync-copy b{font-size:12px}.taxi-pending-sync-copy small{font-size:10px;line-height:1.4}.taxi-history-pending.has-sync-conflict .taxi-pending-sync-copy{color:#8d2834;background:#ffecef}

/* Remitente visible y configurable desde la pantalla de avisos. */
.broadcast-email-sender{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 14px;background:#f7f8fb;border:1px solid var(--line);border-radius:12px}.broadcast-email-sender>div{display:grid;gap:3px;min-width:0}.broadcast-email-sender small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.08em}.broadcast-email-sender b{overflow-wrap:anywhere;font-size:13px}.broadcast-email-sender span{color:var(--muted);font-size:10px}.broadcast-email-sender.is-ready{background:#effaf5;border-color:#cce9dc}.broadcast-email-sender.is-ready small{color:#176b50}.broadcast-email-sender.is-pending{background:#fff9e9;border-color:#ead9a5}.broadcast-email-sender .button{white-space:nowrap}@media(max-width:560px){.broadcast-email-sender{grid-template-columns:1fr}.broadcast-email-sender .button{width:100%}}
.promotions-page>.broadcast-email-sender{margin-bottom:16px}

.taxi-driver-offline-map-credit{display:none;position:absolute;z-index:4;top:8px;right:8px;padding:3px 6px;color:#596570;background:rgba(255,255,255,.82);border-radius:5px;font-size:9px;text-decoration:none}
.taxi-driver-map.is-snapshot-map .taxi-driver-offline-map-credit{display:block}
.taxi-driver-offline-map-credit a{color:inherit;text-decoration:none}
.taxi-map-download{--taxi-driver-test-bottom:12px;--taxi-map-download-progress:0%;position:absolute;z-index:6;right:10px;bottom:var(--taxi-driver-test-bottom);display:flex;align-items:center;gap:7px;box-sizing:border-box;max-width:176px;min-height:46px;padding:5px 9px 5px 5px;color:#33445a;background:rgba(255,255,255,.91);border:1px solid rgba(225,231,237,.94);border-radius:15px;box-shadow:0 5px 17px rgba(17,33,49,.12);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:none}
.taxi-driver-dashboard-page .taxi-map-download{display:none!important}
.taxi-map-download.is-over-test{bottom:calc(var(--taxi-driver-test-bottom) + 101px)}
.taxi-map-download.has-test-clear{pointer-events:auto}.taxi-map-download-clear{position:absolute;right:0;bottom:calc(100% + 6px);min-height:28px;padding:5px 10px;color:#9b3038;background:rgba(255,255,255,.96);border:1px solid #e5c5c8;border-radius:9px;box-shadow:0 4px 13px rgba(18,32,49,.12);font-size:9px;font-weight:850;white-space:nowrap;cursor:pointer}.taxi-map-download-clear:hover{background:#fff3f3}.taxi-map-download-clear[data-action="download"]{color:#176b50;border-color:#b9dfd0;background:#effaf5}.taxi-map-download-clear:disabled{opacity:.58;cursor:wait}
.taxi-map-download-ring{position:relative;display:grid;flex:0 0 38px;place-items:center;width:38px;height:38px;background:conic-gradient(#3d80e8 var(--taxi-map-download-progress),#e5ebf2 0);border-radius:50%;transform:rotate(-90deg)}
.taxi-map-download-ring::before{position:absolute;inset:4px;background:#fff;border-radius:50%;content:""}
.taxi-map-download-ring b{position:relative;font-size:10px;font-weight:800;letter-spacing:-.03em;transform:rotate(90deg)}
.taxi-map-download-copy{display:grid;min-width:0;gap:2px}.taxi-map-download-copy b{font-size:10px;font-weight:760;white-space:nowrap}.taxi-map-download-copy small{overflow:hidden;color:#68798a;font-size:9px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.taxi-map-download[data-state="ready"] .taxi-map-download-ring{background:conic-gradient(#25a883 100%,#e5ebf2 0)}
.taxi-map-download[data-state="error"] .taxi-map-download-ring{background:conic-gradient(#d59a41 var(--taxi-map-download-progress),#e5ebf2 0)}
.taxi-offline-map-status{display:block;margin-top:5px;color:#667487;font-size:11px;font-weight:650;line-height:1.35;text-align:center}
.taxi-offline-map-status[data-state="ready"]{color:#176b50}
.taxi-offline-map-status[data-state="error"]{color:#9b6532}
.taxi-offline-map-status--active{position:absolute;z-index:5;top:8px;left:8px;max-width:calc(100% - 115px);margin:0;padding:5px 8px;background:rgba(255,255,255,.91);border-radius:8px;box-shadow:0 2px 9px rgba(18,32,49,.1);pointer-events:none}

.taxi-peer-offline-dot{background:#9aa3b2;box-shadow:0 1px 5px rgba(70,82,101,.2)}
[data-taxi-peer-connection-label]{color:#687386!important}
.taxi-driver-active-ride-inline [data-taxi-active-status="driver_arrived"] .taxi-map-trip-contact>div{gap:0}
.taxi-driver-active-ride-inline [data-taxi-active-status="driver_arrived"] [data-taxi-peer-connection-label]{margin-top:0;color:#b83343!important;font-size:11px!important;line-height:1.1}
.taxi-driver-active-ride-inline [data-taxi-active-status="driver_arrived"].is-peer-offline .taxi-start-trip-button{animation:none;transform:none}
.taxi-driver-active-ride-inline [data-taxi-active-status="driver_arrived"].is-peer-offline .taxi-map-trip-contact>a[href^="tel:"]{animation:taxiPassengerCallBreathe 1.8s ease-in-out infinite}
@keyframes taxiPassengerCallBreathe{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(16,25,53,0)}50%{transform:scale(1.04);box-shadow:0 0 0 5px rgba(16,25,53,.14)}}
@media(prefers-reduced-motion:reduce){.taxi-driver-active-ride-inline [data-taxi-active-status="driver_arrived"].is-peer-offline .taxi-map-trip-contact>a[href^="tel:"]{animation:none}}

/* Aviso de conexión del pasajero, según la etapa del viaje. */
.taxi-passenger-offline-notice{display:none;position:absolute;z-index:24;top:42%;left:50%;box-sizing:border-box;width:min(360px,calc(100% - 36px));padding:24px 23px 22px;justify-items:center;gap:10px;color:#172339;background:#fff;border:1px solid #e5eaf0;border-radius:22px;box-shadow:0 16px 48px rgba(11,28,49,.2);text-align:center;transform:translate(-50%,-50%)}
body.taxi-passenger-app:is(.is-offline,.is-server-unavailable) .taxi-passenger-dashboard[data-taxi-offline-stage="before"]:not(.taxi-passenger-is-searching) .taxi-passenger-offline-notice{display:grid}
.taxi-passenger-offline-icon{display:grid;place-items:center;width:45px;height:45px;color:#38516d;background:#edf3f8;border-radius:50%}
.taxi-passenger-offline-icon svg{width:22px;height:22px}
.taxi-passenger-offline-notice h2{margin:2px 0 0;font-size:21px;line-height:1.2;letter-spacing:-.03em}
.taxi-passenger-offline-notice p{max-width:295px;margin:0;color:#647187;font-size:13px;line-height:1.5}
.taxi-passenger-offline-call{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;margin-top:5px;padding:0 17px;color:#fff;background:#176bff;border-radius:12px;font-size:12px;font-weight:800;text-decoration:none}
.taxi-passenger-offline-call svg{width:16px;height:16px}
.taxi-passenger-offline-call:hover,.taxi-passenger-offline-call:focus-visible{color:#fff;background:#0d58d8}
body.taxi-passenger-app:is(.is-offline,.is-server-unavailable) .taxi-passenger-dashboard[data-taxi-offline-stage="before"]::before{content:"";position:absolute;z-index:20;inset:0;background:rgba(241,245,249,.46)}
body.taxi-passenger-app:is(.is-offline,.is-server-unavailable) .taxi-passenger-dashboard[data-taxi-offline-stage="trip"]:has(.taxi-passenger-driver-card:not(.is-collapsed)) .taxi-passenger-offline-notice{top:24%}
@media(max-width:680px){.taxi-passenger-offline-notice{top:38%;width:min(340px,calc(100% - 28px));padding:21px 19px}body.taxi-passenger-app:is(.is-offline,.is-server-unavailable) .taxi-passenger-dashboard[data-taxi-offline-stage="trip"]:has(.taxi-passenger-driver-card:not(.is-collapsed)) .taxi-passenger-offline-notice{top:20%}}

/* Seguimiento administrativo de las reservas de viajes especiales. */
.admin-special-trip-stats{grid-template-columns:repeat(4,minmax(145px,1fr)) minmax(250px,1.4fr)}
.admin-special-trip-next{display:grid;align-content:center;gap:4px;padding:17px;color:#fff;background:linear-gradient(130deg,#15203b,#273b60);border-top:3px solid #ffc94a;border-radius:14px;box-shadow:var(--shadow-soft)}
.admin-special-trip-next>small{color:#ffd86e;font-size:9px;font-weight:900;letter-spacing:.1em}
.admin-special-trip-next>strong{font-size:23px}
.admin-special-trip-next>b{font-size:11px}
.admin-special-trip-next>a{margin-top:3px;color:#fff;font-size:10px;font-weight:750;text-decoration:underline}
.admin-special-trips-table{min-width:1280px}
.admin-special-trips-table td{vertical-align:top}
.admin-special-trips-table td>small{display:block;max-width:300px;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.4}
.admin-special-trips-table td>small b{color:#505969}
.admin-special-trip-reason{color:#9b3540!important}
.taxi-special-status-pending_driver{color:#8b620b;background:#fff3cd}
.taxi-special-status-scheduled,.taxi-special-status-in_progress{color:#315fc8;background:#e8efff}
.taxi-special-status-completed{color:#176b50;background:#e7f7ef}
.taxi-special-status-cancelled,.taxi-special-status-expired{color:#9b3540;background:#ffeaec}
.taxi-passenger-rides-history .taxi-special-history{margin:4px 0 30px}.taxi-passenger-rides-history .taxi-special-history>h2{margin:0 0 13px;color:#172235;font-size:18px;letter-spacing:-.02em}.taxi-special-history .package-mark.order-state-espera{color:#b42332!important;background:#ffe8eb!important}.taxi-special-history .package-mark.order-state-espera svg{width:21px;height:21px}.taxi-special-history-status-pending_driver{color:#a52b38;background:#ffe8eb}.taxi-special-history-order.is-pending-driver{border-color:#efc6ca}.taxi-special-history-order.is-pending-driver>summary{background:#fffafa}@media(max-width:680px){.taxi-passenger-rides-history .taxi-special-history{margin-top:7px;margin-bottom:25px}.taxi-passenger-rides-history .taxi-special-history>h2{margin-bottom:11px;font-size:17px}}
.taxi-driver-programmed-history{margin:4px 0 30px}.taxi-driver-programmed-history>h2{margin:0 0 13px;color:#172235;font-size:18px;letter-spacing:-.02em}.taxi-driver-programmed-history .is-driver-programmed{border-color:#efc6ca}.taxi-driver-programmed-history .is-driver-programmed>summary{background:#fffafa}.taxi-driver-programmed-status{color:#a52b38;background:#ffe8eb}.taxi-driver-programmed-history .taxi-history-actions form{display:flex}.taxi-driver-programmed-history .taxi-history-actions form .button{width:100%}@media(max-width:680px){.taxi-driver-programmed-history{margin-top:7px;margin-bottom:25px}.taxi-driver-programmed-history>h2{margin-bottom:11px;font-size:17px}}
.taxi-special-history-status-pending_driver,.taxi-special-history-status-scheduled{color:#a52b38;background:#ffe8eb}.taxi-special-history-order.is-upcoming-special{border-color:#efc6ca}.taxi-special-history-order.is-upcoming-special>summary{background:#fffafa}
@media(max-width:1100px){.admin-special-trip-stats{grid-template-columns:repeat(2,minmax(150px,1fr))}.admin-special-trip-next{grid-column:1/-1}}
@media(max-width:560px){.admin-special-trip-stats{grid-template-columns:1fr}.admin-special-trip-next{grid-column:auto}}

/* Selector de fecha propio para pedidos premium. */
.premium-schedule{border:0;margin:1.5rem 0 0;padding:0;min-width:0}.premium-schedule>legend{font-size:1rem;font-weight:800;margin-bottom:.75rem}.premium-schedule-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.premium-schedule-modes>button{align-items:center;background:#fff;border:1.5px solid #dce3ef;border-radius:18px;color:#18233d;display:grid;gap:.12rem;grid-template-columns:46px 1fr;padding:.9rem;text-align:left;transition:border-color .18s,box-shadow .18s,transform .18s}.premium-schedule-modes>button>span{align-items:center;background:#f1f5fb;border-radius:14px;display:flex;grid-row:1/3;height:42px;justify-content:center;width:42px}.premium-schedule-modes svg{height:21px;width:21px}.premium-schedule-modes b{font-size:.95rem}.premium-schedule-modes small{color:#6a7489}.premium-schedule-modes>button.is-selected{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.11);transform:translateY(-1px)}.premium-schedule-modes>button.is-selected>span{background:#315bd8;color:#fff}.premium-schedule-panel{background:#f8faff;border:1px solid #e0e6f0;border-radius:20px;margin-top:1rem;overflow:hidden;padding:1rem}.premium-schedule-calendar header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.8rem}.premium-schedule-calendar header strong{text-transform:capitalize}.premium-schedule-calendar header button{align-items:center;background:#fff;border:1px solid #dce3ef;border-radius:12px;color:#18233d;display:flex;font-size:1.6rem;height:38px;justify-content:center;width:38px}.premium-schedule-calendar header button:disabled{opacity:.35}.premium-schedule-weekdays,.premium-schedule-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.premium-schedule-weekdays{color:#778197;font-size:.75rem;font-weight:800;margin-bottom:.35rem;text-align:center}.premium-schedule-days>button{aspect-ratio:1;background:transparent;border:0;border-radius:12px;color:#25304a;font-weight:700;min-height:38px}.premium-schedule-days>button:hover:not(:disabled){background:#e8eefc}.premium-schedule-days>button.is-today{box-shadow:inset 0 0 0 1.5px #9aace0}.premium-schedule-days>button.is-selected{background:#315bd8;color:#fff;box-shadow:none}.premium-schedule-days>button:disabled{color:#c4cad5}.premium-schedule-time{border-top:1px solid #e0e6f0;margin-top:1rem;padding-top:1rem}.premium-schedule-time>div:first-child{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:.7rem}.premium-schedule-time small{color:#778197}.premium-schedule-times{display:grid;gap:.45rem;grid-template-columns:repeat(4,minmax(0,1fr));max-height:210px;overflow:auto;padding:2px}.premium-schedule-times button{background:#fff;border:1px solid #dce3ef;border-radius:11px;color:#2c3852;font-size:.82rem;font-weight:750;padding:.65rem .3rem}.premium-schedule-times button.is-selected{background:#17264a;border-color:#17264a;color:#fff}.premium-schedule-times button:disabled{background:#f1f3f7;color:#b1b7c3}.premium-schedule-summary{align-items:center;background:#fff;border-radius:13px;color:#3d4961;display:flex;gap:.55rem;margin:.9rem 0 0;padding:.75rem}.premium-schedule-summary svg{color:#315bd8;flex:0 0 auto;height:19px;width:19px}.premium-schedule.is-complete .premium-schedule-summary{background:#edf7f1;color:#1d633d}.premium-schedule-help{color:#778197;display:block;margin-top:.6rem}.premium-schedule.field-invalid{border:1.5px solid #d94141;border-radius:20px;padding:.75rem}
@media(max-width:640px){.premium-schedule-modes{grid-template-columns:1fr}.premium-schedule-times{grid-template-columns:repeat(3,minmax(0,1fr))}.premium-schedule-panel{padding:.8rem}.premium-schedule-days>button{border-radius:10px;min-height:36px}}

.premium-business-picker{margin-bottom:1rem;position:relative}.premium-business-picker>label{display:block;font-weight:750;margin-bottom:.45rem}.premium-business-picker-toggle{align-items:center;background:#fff;border:1.5px solid #dce3ef;border-radius:16px;color:#18233d;display:flex;font-size:1rem;font-weight:750;justify-content:space-between;min-height:54px;padding:.8rem 1rem;text-align:left;width:100%}.premium-business-picker-toggle svg{height:18px;width:18px}.premium-business-picker-toggle[aria-expanded="true"]{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.11)}.premium-business-picker-menu{background:#fff;border:1px solid #dce3ef;border-radius:18px;box-shadow:0 18px 45px rgba(24,33,58,.16);left:0;margin-top:.45rem;max-height:360px;overflow:auto;padding:.5rem;position:absolute;right:0;top:100%;z-index:40}.premium-business-picker-menu>p{color:#7a8498;font-size:.7rem;font-weight:850;letter-spacing:.08em;margin:.75rem .65rem .35rem}.premium-business-new{align-items:center;background:#eef3ff;border:0;border-radius:13px;color:#21386f;display:grid;gap:.1rem;grid-template-columns:38px 1fr;padding:.75rem;text-align:left;width:100%}.premium-business-new>span{align-items:center;background:#315bd8;border-radius:11px;color:#fff;display:flex;grid-row:1/3;height:34px;justify-content:center;width:34px}.premium-business-new svg{height:17px;width:17px}.premium-business-new b,.premium-business-new small{grid-column:2}.premium-business-new small{color:#65718a}.premium-business-option-row{align-items:center;border-top:1px solid #edf0f5;display:grid;grid-template-columns:1fr 42px}.premium-business-option-row>button{background:transparent;border:0;color:#18233d;padding:.75rem;text-align:left}.premium-business-option-row>button span{display:grid;gap:.15rem}.premium-business-option-row>button small{color:#707b91;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.premium-business-option-row>[data-premium-business-delete]{align-items:center;border-radius:10px;color:#a1424c;display:flex;height:36px;justify-content:center;padding:0;width:36px}.premium-business-option-row>[data-premium-business-delete]:hover{background:#ffedf0}.premium-business-option-row>[data-premium-business-delete] svg{height:17px;width:17px}.premium-pickup-contact{margin-bottom:.8rem}.premium-pickup-contact+ .pickup-fixed-note{margin-bottom:1.2rem}
.premium-business-option-row{border-radius:11px;overflow:hidden;transition:background-color .16s ease}.premium-business-option-row:hover,.premium-business-option-row:focus-within{background:#f1f3f6}.premium-business-option-row>[data-premium-business-option]{width:100%}.premium-business-option-row>[data-premium-business-delete]:focus-visible{background:#ffedf0;outline:2px solid #cc6370;outline-offset:-2px}.premium-business-delete-error{grid-column:1/-1;margin:0;padding:10px 12px;color:#9f2735;background:#fff0f2;border-radius:10px;font-size:13px;font-weight:700}.premium-business-delete-error[hidden]{display:none}
.order-address-format-hint{color:#6f7a90;font-size:.78rem;margin:.35rem .2rem 0}.order-address-format-hint strong{color:#34415d}
.order-municipality-dialog{height:auto;max-height:calc(100dvh - 40px);max-width:560px;margin:auto;overflow:visible;padding:0;width:calc(100% - 32px)}.order-municipality-dialog[open]{align-items:center;display:flex;justify-content:center}.order-municipality-dialog .taxi-municipality-card,.order-municipality-dialog.is-expanded .taxi-municipality-card{grid-template-rows:auto minmax(0,auto);height:auto;margin:0;max-height:calc(100dvh - 40px);width:100%}.order-municipality-dialog .taxi-municipality-options,.order-municipality-dialog.is-expanded .taxi-municipality-options{max-height:min(58dvh,520px);overflow:auto}@media(max-width:560px){.order-municipality-dialog{max-height:calc(100dvh - 24px);width:calc(100% - 24px)}.order-municipality-dialog .taxi-municipality-card,.order-municipality-dialog.is-expanded .taxi-municipality-card{height:auto;max-height:calc(100dvh - 24px);border-radius:18px}.order-municipality-dialog .taxi-municipality-options,.order-municipality-dialog.is-expanded .taxi-municipality-options{max-height:55dvh}}

/* Preferencia premium amplia: el texto nunca debe comprimir el interruptor. */
.premium-multiple-businesses-setting{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 52px;align-items:center;gap:22px;min-height:88px;padding:20px 22px;background:linear-gradient(135deg,#f7f9ff,#f2f6ff);border:1px solid #dce4f4;border-radius:17px;cursor:pointer;box-shadow:0 7px 20px rgba(31,55,104,.06)}
.premium-multiple-businesses-setting>span{gap:5px;min-width:0}
.premium-multiple-businesses-setting>span>b{color:#18233d;font-size:14px;line-height:1.3}
.premium-multiple-businesses-setting>span>small{max-width:520px;margin:0;color:#667289;font-size:11px;line-height:1.5}
.premium-multiple-businesses-setting>i{box-sizing:border-box;display:block;justify-self:end;flex:0 0 auto;width:50px;height:28px;background:#bfc8d8;border:1px solid rgba(24,35,61,.08);border-radius:99px;box-shadow:inset 0 1px 2px rgba(24,35,61,.12)}
.premium-multiple-businesses-setting>i::after{top:3px;left:3px;width:20px;height:20px}
.premium-multiple-businesses-setting input:checked+i{background:#315bd8}
.premium-multiple-businesses-setting input:checked+i::after{transform:translateX(22px)}
.premium-multiple-businesses-setting input:focus-visible+i{outline:3px solid rgba(49,91,216,.22);outline-offset:3px}
@media(max-width:560px){.premium-multiple-businesses-setting{grid-template-columns:minmax(0,1fr) 50px;gap:14px;min-height:0;padding:17px 16px;border-radius:15px}.premium-multiple-businesses-setting>span>b{font-size:13px}.premium-multiple-businesses-setting>span>small{font-size:10.5px;line-height:1.45}}

/* Hora premium compacta con listas independientes de hora y minutos. */
.premium-schedule-panel{overflow:visible}
.premium-schedule-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;max-height:none;overflow:visible;padding:0}
.premium-time-picker{position:relative;display:grid;gap:.35rem;min-width:0}
.premium-time-picker>span{color:#6d7890;font-size:.72rem;font-weight:800}
.premium-time-picker>[data-premium-time-toggle]{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:.65rem .8rem;color:#23304b;background:#fff;border:1.5px solid #dce3ef;border-radius:12px;font:inherit;text-align:left;cursor:pointer}
.premium-time-picker>[data-premium-time-toggle] b{font-size:.88rem}
.premium-time-picker>[data-premium-time-toggle] svg{width:16px;height:16px;transition:transform .18s}
.premium-time-picker.is-open>[data-premium-time-toggle]{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.1)}
.premium-time-picker.is-open>[data-premium-time-toggle] svg{transform:rotate(180deg)}
.premium-time-menu{position:absolute;z-index:55;top:calc(100% + .4rem);left:0;right:0;display:grid;max-height:210px;padding:.35rem;overflow:auto;background:#fff;border:1px solid #dce3ef;border-radius:13px;box-shadow:0 15px 35px rgba(24,33,58,.18)}
.premium-time-menu[hidden]{display:none}
.premium-time-menu>button{min-height:38px;padding:.5rem .65rem;color:#2c3852;background:transparent;border:0;border-radius:9px;font:inherit;font-size:.8rem;font-weight:750;text-align:left;cursor:pointer}
.premium-time-menu>button:hover:not(:disabled){background:#eef3ff}
.premium-time-menu>button.is-selected{color:#fff;background:#315bd8}
.premium-time-menu>button:disabled{color:#b7becb;cursor:not-allowed}
.premium-date-picker{display:grid;gap:.4rem}
.premium-date-picker>span{color:#6d7890;font-size:.72rem;font-weight:800}
.premium-date-picker>[data-premium-date-toggle]{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:56px;padding:.8rem 1rem;color:#18233d;background:#fff;border:1.5px solid #dce3ef;border-radius:14px;font:inherit;text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s}
.premium-date-picker>[data-premium-date-toggle] b{font-size:.92rem;line-height:1.35;text-transform:capitalize}
.premium-date-picker>[data-premium-date-toggle] svg{flex:0 0 auto;width:17px;height:17px;transition:transform .18s}
.premium-date-picker.is-open>[data-premium-date-toggle]{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.1)}
.premium-date-picker.is-open>[data-premium-date-toggle] svg{transform:rotate(180deg)}
.premium-date-popover{margin-top:.35rem;padding:.85rem;background:#fff;border:1px solid #dce3ef;border-radius:16px;box-shadow:0 14px 32px rgba(24,33,58,.1)}
.premium-date-popover[hidden]{display:none}
.premium-schedule-time{margin-top:.85rem;padding-top:.85rem}
.premium-schedule-time>div:first-child{align-items:flex-start;gap:12px}
.premium-schedule-time>div:first-child small{max-width:230px;text-align:right;line-height:1.35}
.premium-time-picker>[data-premium-time-toggle]{min-height:56px;padding:.75rem 1rem;border-radius:14px}
.premium-time-picker>[data-premium-time-toggle] b{font-size:1rem;color:#18233d}
.premium-time-menu{max-height:260px;padding:.45rem;border-radius:14px}
.premium-time-menu>button{min-height:44px;padding:.65rem .8rem;font-size:.9rem;text-align:center}
.premium-time-menu>button:disabled{color:#aeb6c5;background:#f7f8fa}
@media(max-width:560px){.premium-schedule-time>div:first-child{display:grid}.premium-schedule-time>div:first-child small{max-width:none;text-align:left}.premium-date-picker>[data-premium-date-toggle],.premium-time-picker>[data-premium-time-toggle]{min-height:54px}.premium-time-menu>button{font-size:.88rem}}

.admin-business-order-settings>form{gap:18px}.admin-business-price-toggle{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 46px;align-items:center;gap:16px;padding:15px 16px;background:#f6f8fc;border:1px solid #dce3ef;border-radius:14px;cursor:pointer;transition:border-color .18s,box-shadow .18s}.admin-business-price-toggle:hover{border-color:#bdc9df}.admin-business-price-toggle>span{display:grid;min-width:0;gap:4px}.admin-business-price-toggle b{display:block;font-size:13px;line-height:1.3}.admin-business-price-toggle small{display:block;color:var(--muted);font-size:11px;line-height:1.45}.admin-business-price-toggle input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0;pointer-events:none}.admin-business-price-toggle>i{position:relative;width:46px;height:26px;background:#c5ccd8;border-radius:99px;box-shadow:inset 0 0 0 1px rgba(16,25,53,.05);transition:background .18s}.admin-business-price-toggle>i:after{position:absolute;top:3px;left:3px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(16,25,53,.2);content:"";transition:transform .18s}.admin-business-price-toggle input:checked+i{background:#315bd8}.admin-business-price-toggle input:checked+i:after{transform:translateX(20px)}.admin-business-price-toggle:has(input:focus-visible){border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.12)}.admin-business-vehicle-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;border:0!important;min-width:0}.admin-business-vehicle-settings legend{grid-column:1/-1;width:100%;margin:0 0 2px;padding:0;font-size:13px;font-weight:800}.admin-business-vehicle-settings label{position:relative;display:flex;align-items:center;min-width:0;min-height:44px;padding:10px 12px;background:#fff;border:1px solid #dce3ef;border-radius:11px;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s}.admin-business-vehicle-settings label:hover{border-color:#bdc9df;background:#f9fbff}.admin-business-vehicle-settings label:has(input:checked){border-color:#9bb2ed;background:#f2f6ff;box-shadow:inset 0 0 0 1px rgba(49,91,216,.08)}.admin-business-vehicle-settings input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0;pointer-events:none}.admin-business-vehicle-settings span{display:flex;align-items:center;gap:9px;min-width:0;font-size:12px;font-weight:750;line-height:1.25}.admin-business-vehicle-settings span:before{display:grid;flex:0 0 18px;width:18px;height:18px;place-items:center;background:#fff;border:1.5px solid #b9c3d4;border-radius:6px;color:#fff;font-size:12px;line-height:1;content:"";transition:background .18s,border-color .18s}.admin-business-vehicle-settings input:checked+span:before{background:#315bd8;border-color:#315bd8;content:"✓"}.admin-business-vehicle-settings label:has(input:focus-visible){outline:3px solid rgba(49,91,216,.18);outline-offset:1px}@media(max-width:560px){.admin-business-vehicle-settings{grid-template-columns:1fr}.admin-business-price-toggle{grid-template-columns:minmax(0,1fr) 46px}}
.admin-business-custom-fields{display:none;gap:12px}.admin-business-order-settings>form:has(.admin-business-mode-toggle input:checked) .admin-business-custom-fields{display:grid}.admin-business-mode-toggle{background:#f2f6ff;border-color:#cbd8f5}.admin-business-extra-settings{display:grid;gap:9px;padding-top:3px}.admin-business-extra-settings>h3{margin:0 0 1px;font-size:13px}.admin-business-rate-field{display:none;grid-template-columns:minmax(0,1fr) minmax(145px,180px);align-items:center;gap:16px;padding:15px 16px;background:#fffaf0;border:1px solid #f0d89c;border-radius:14px}.admin-business-custom-fields:has(input[name="can_edit_price"]:not(:checked)) .admin-business-rate-field{display:grid}.admin-business-rate-field>span:first-child{display:grid;gap:4px}.admin-business-rate-field>span:first-child b{font-size:13px;line-height:1.3}.admin-business-rate-field small{color:var(--muted);font-size:11px;line-height:1.45}.admin-business-rate-input{display:flex;align-items:center;overflow:hidden;background:#fff;border:1px solid #cbd5e5;border-radius:10px;box-shadow:0 1px 2px rgba(16,25,53,.04)}.admin-business-rate-input:focus-within{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.11)}.admin-business-rate-input input{width:100%!important;min-width:0!important;min-height:42px!important;padding:9px 7px 9px 11px!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:14px!important;font-weight:800}.admin-business-rate-input>b{flex:0 0 auto;padding-right:11px;color:#657089;font-size:10px;white-space:nowrap}@media(max-width:560px){.admin-business-rate-field{grid-template-columns:1fr;gap:10px}}
.admin-business-rate-field{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:13px!important;padding:16px!important}.admin-business-rate-field>span:first-child{width:100%;min-width:0}.admin-business-rate-field>span:first-child b{font-size:14px}.admin-business-rate-field>span:first-child small{max-width:none;font-size:11px;line-height:1.5}.admin-business-rate-input{width:100%;min-width:0;min-height:48px;border-radius:11px}.admin-business-rate-input input{min-height:48px!important;padding:10px 12px!important;font-size:16px!important;-moz-appearance:textfield}.admin-business-rate-input input::-webkit-inner-spin-button,.admin-business-rate-input input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.admin-business-rate-input>b{padding:0 13px 0 8px;font-size:11px}
.order-surcharge-settings{margin-top:18px;padding:24px}.order-surcharge-settings>header small{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.1em}.order-surcharge-settings>header h2{margin:5px 0 0;font-size:20px}.order-surcharge-settings>header p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.order-surcharge-settings>form{display:grid;gap:20px;margin-top:22px}.order-surcharge-settings fieldset{margin:0;padding:0;border:0}.order-surcharge-settings legend{display:grid;gap:3px;width:100%;margin-bottom:11px;color:var(--navy);font-size:13px;font-weight:850}.order-surcharge-settings legend small{color:var(--muted);font-size:10px;font-weight:600}.order-surcharge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.order-surcharge-grid label{display:grid;gap:7px;padding:11px;background:#f7f9fc;border:1px solid var(--line);border-radius:11px}.order-surcharge-grid label>span:first-child{font-size:11px;font-weight:800}.order-surcharge-grid label>span:last-child{display:flex;align-items:center;overflow:hidden;background:#fff;border:1px solid #cbd5e5;border-radius:9px}.order-surcharge-grid label>span:last-child:focus-within{border-color:#315bd8;box-shadow:0 0 0 3px rgba(49,91,216,.1)}.order-surcharge-grid input{width:100%!important;min-width:0!important;min-height:38px!important;padding:8px 4px 8px 10px!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:13px!important;font-weight:800!important}.order-surcharge-grid label b{flex:none;padding-right:9px;color:var(--muted);font-size:10px}.order-surcharge-settings .button{justify-self:start;min-width:170px}@media(max-width:700px){.order-surcharge-settings{padding:19px}.order-surcharge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.order-surcharge-grid.is-package{grid-template-columns:1fr}.order-surcharge-settings .button{width:100%}}

/* Los pedidos de negocios premium se reconocen de inmediato en el panel del mensajero. */
.offer-card.offer-card-premium{background:linear-gradient(145deg,#fffdf4 0%,#fff6c9 100%);border:2px solid #e5b72f;box-shadow:0 14px 34px rgba(155,111,0,.2),0 0 0 4px rgba(255,204,55,.12);animation:offer-card-arrive .5s cubic-bezier(.2,.8,.2,1) both,premium-offer-live 2.6s ease-in-out .5s infinite}
.offer-card-premium .shop-avatar{color:#6d4a00;background:linear-gradient(145deg,#ffe476,#ffc936);box-shadow:0 6px 14px rgba(151,105,0,.2)}
.offer-card-premium .premium-offer-badge{display:inline-flex;width:max-content;align-items:center;gap:4px;margin-bottom:3px;padding:3px 7px;color:#624200;background:#ffd34e;border:1px solid #e2ad13;border-radius:999px;font-size:9px!important;font-weight:950;letter-spacing:.08em;line-height:1;text-transform:uppercase}
.offer-card-premium .premium-offer-badge svg{width:10px!important;height:10px!important}
.offer-card-premium .scheduled-offer-badge{color:#514000;background:#ffe279;border-color:#d9ad18}
.offer-card-premium .offer-price-amount{color:#5a3c00}
.offer-card-premium .offer-route{justify-content:flex-start;padding-right:0;padding-left:0;background:transparent}
.offer-card-premium .offer-route>div{flex:0 1 auto;max-width:none;overflow:hidden}
.offer-card-premium .offer-route>div:first-child{max-width:none}
.offer-card-premium .offer-route>div:last-child{margin-left:0;text-align:left}
.offer-card-premium .offer-route>div>span{overflow:hidden}
.offer-card-premium .offer-route b{display:block;overflow:hidden;white-space:nowrap;overflow-wrap:normal;text-overflow:ellipsis}
.scheduled-offer-notice{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;margin-top:18px;padding:12px 13px;color:#4e3b00;background:#fff3b8;border:1px solid #ddbd42;border-radius:13px}
.scheduled-offer-notice>svg{width:25px;height:25px;color:#8a6500}
.scheduled-offer-notice>span{display:grid;gap:2px;min-width:0}
.scheduled-offer-notice small{color:#806000;font-size:9px;font-weight:950;letter-spacing:.09em}
.scheduled-offer-notice strong{font-size:14px;line-height:1.3}
.scheduled-offer-notice b{font-size:12px;line-height:1.3}
.offer-card-premium .premium-reserved-panel{display:grid;place-items:center;margin-top:24px;padding:18px 14px 3px;border-top:1px solid rgba(171,124,0,.25);text-align:center}
.offer-card-premium .premium-reserved-panel p{display:grid;justify-items:center;gap:9px;max-width:390px;margin:0}
.offer-card-premium .premium-reserved-panel strong{color:#624200;font-size:16px;line-height:1.2}
.offer-card-premium .premium-reserved-panel small{color:#755b1d;font-size:11px;line-height:1.55}
@keyframes premium-offer-live{0%,100%{border-color:#e5b72f;box-shadow:0 14px 34px rgba(155,111,0,.2),0 0 0 4px rgba(255,204,55,.12)}50%{border-color:#c99100;box-shadow:0 18px 42px rgba(135,93,0,.27),0 0 0 7px rgba(255,204,55,.19)}}
@media(prefers-reduced-motion:reduce){.offer-card.offer-card-premium{animation:none}}

.app-confirm-scheduled{display:grid!important;gap:4px!important;margin-top:3px;padding:13px 14px;color:#4e3b00;background:#fff3b8;border:1px solid #ddbd42;border-radius:12px}
.app-confirm-scheduled[hidden]{display:none!important}
.app-confirm-scheduled strong{font-size:15px;line-height:1.3;text-align:left}
.app-confirm-scheduled b{font-size:13px}.app-confirm-scheduled em{font-style:normal}
.app-confirm-dialog.is-scheduled-order .app-confirm-icon{color:#b57900;background:#fff0a8;border:1px solid #e2bd38}
.app-confirm-dialog.is-scheduled-order .app-confirm-icon svg{width:25px;height:25px}

/* El pedido ya aceptado conserva una señal programada visible en historial y detalle. */
.history-status-stack{display:grid;justify-items:start;gap:5px;min-width:0}
.scheduled-order-pill{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:6px 10px;color:#604700;background:#ffd95c;border:1px solid #dcb333;border-radius:20px;box-shadow:0 3px 9px rgba(190,139,0,.18);font-size:10px;font-weight:900;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.scheduled-order-pill svg{width:15px;height:15px}
.history-order-scheduled{border-color:#dfbd42;box-shadow:0 8px 24px rgba(170,123,0,.12)}
.history-order-scheduled>summary{background:linear-gradient(90deg,#fffbed 0%,#fff 45%)}
.history-order-scheduled>summary>.package-mark{color:#6d5000!important;background:#ffd95c!important;box-shadow:inset 0 0 0 1px #dcb333}
.history-order-scheduled>summary>.package-mark svg{width:23px;height:23px;animation:none}
.detail-scheduled-highlight{display:flex;align-items:center;gap:13px;width:max-content;max-width:100%;margin:13px 0 5px;padding:12px 15px;color:#533e00;background:#fff3b8;border:1px solid #ddb936;border-radius:14px;box-shadow:0 7px 20px rgba(168,120,0,.13)}
.detail-scheduled-highlight>span{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;color:#604700;background:#ffd34a;border:1px solid #d7a900;border-radius:12px}
.detail-scheduled-highlight>span svg{width:24px;height:24px}
.detail-scheduled-highlight>div{display:grid;gap:2px;min-width:0}
.detail-scheduled-highlight small{color:#755800;font-size:10px;font-weight:950;letter-spacing:.09em}
.detail-scheduled-highlight strong{font-size:15px;line-height:1.3}
.detail-scheduled-highlight b{font-size:13px;line-height:1.3}
@media(max-width:680px){.history-order summary>.history-status-stack{grid-column:2/3;grid-row:2}.detail-scheduled-highlight{box-sizing:border-box;width:100%;padding:11px 12px}.detail-scheduled-highlight strong{font-size:14px}}

/* Pedido programado ya aceptado en la sección En curso. */
.active-order-scheduled .active-step-icon{color:#604700!important;background:#ffd34a!important;box-shadow:inset 0 0 0 1px #d5a800!important}
.active-order-scheduled .active-step-icon svg{width:24px;height:24px}
.active-order-scheduled .active-focus{display:flex;flex-wrap:wrap;align-items:flex-start;gap:15px}
.active-order-scheduled .active-step-copy{flex:1 1 0;min-width:0;width:auto!important;padding-right:84px}
.active-order-scheduled .active-dashboard-price{position:absolute;z-index:2;top:0;right:0;margin:0}
.active-order-scheduled .active-step-copy>.active-call-meta>a{z-index:3;top:76px!important;right:0!important}
.active-scheduled-notice{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;flex:0 0 calc(100% - 55px);width:calc(100% - 55px);box-sizing:border-box;margin:0 0 0 55px;padding:10px 12px;color:#4e3b00;background:#fff3b8;border:1px solid #ddbd42;border-radius:12px;box-shadow:0 6px 17px rgba(168,120,0,.13)}
.active-scheduled-notice>svg{width:23px;height:23px;color:#8a6500}
.active-scheduled-notice>span{display:grid;gap:2px;min-width:0}
.active-scheduled-notice strong{color:#4e3b00;font-size:clamp(9px,3.25vw,14px);line-height:1.25;letter-spacing:-.02em;white-space:nowrap}
.active-scheduled-notice b{color:#4e3b00;font-size:12px;line-height:1.3}
.active-scheduled-notice em{font-style:normal}
@media(max-width:680px){.active-order-scheduled .active-focus{gap:13px}.active-order-scheduled .active-step-copy{padding-right:76px}.active-scheduled-notice{grid-template-columns:24px minmax(0,1fr);gap:7px;flex-basis:calc(100% - 51px);width:calc(100% - 51px);margin-left:51px;padding:9px 10px}.active-scheduled-notice>svg{width:20px;height:20px}.active-scheduled-notice b{font-size:11px}}
.courier-pickup-dialog-scheduled{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:13px 14px;color:#4e3b00;background:#fff3b8;border:1px solid #ddbd42;border-radius:13px;box-shadow:0 7px 19px rgba(168,120,0,.13)}
.courier-pickup-dialog-scheduled[hidden]{display:none!important}
.courier-pickup-dialog-scheduled>span{display:grid;place-items:center;width:42px;height:42px;color:#604700;background:#ffd34a;border:1px solid #d5a800;border-radius:12px}
.courier-pickup-dialog-scheduled>span svg{width:23px;height:23px}
.courier-pickup-dialog-scheduled>div{display:grid!important;gap:2px!important;min-width:0}
.courier-pickup-dialog-scheduled small{color:#755800!important;font-size:9px!important;font-weight:950!important;letter-spacing:.08em}
.courier-pickup-dialog-scheduled strong{color:#4e3b00;font-size:14px;line-height:1.3}
.courier-pickup-dialog-scheduled b{color:#4e3b00;font-size:12px;line-height:1.3}
.courier-pickup-dialog-scheduled em{font-style:normal}
@media(max-width:560px){.courier-pickup-dialog-scheduled{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:11px 12px}.courier-pickup-dialog-scheduled>span{width:38px;height:38px}.courier-pickup-dialog-scheduled>span svg{width:21px;height:21px}}
.courier-next-step-scheduled{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;margin:7px 0 2px;padding:12px;color:#4e3b00;background:#fff3b8;border:1px solid #ddbd42;border-radius:12px}
.courier-next-step-scheduled>svg{width:25px;height:25px;color:#8a6500}
.courier-next-step-scheduled>span{display:grid;gap:2px}.courier-next-step-scheduled small{color:#806000!important;font-size:9px!important;font-weight:950}.courier-next-step-scheduled strong{margin:0;padding:0;color:#4e3b00;background:transparent;border:0;border-radius:0;font-size:14px;letter-spacing:0;line-height:1.3}.courier-next-step-scheduled b{font-size:12px}.courier-next-step-scheduled em{font-style:normal}
.courier-next-step-dialog.is-scheduled-pickup .courier-pickup-next-step-icon{margin-top:18px;color:#4e3b00;background:#ffd75a}

/* Tipo de cuenta premium visible en los perfiles de mensajero y negocio. */
.profile-account-type-value{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.profile-account-premium{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;color:#5c4300;background:#ffd34a;border:1px solid #dbaa12;border-radius:999px;box-shadow:0 3px 9px rgba(163,116,0,.15);font-size:9px;font-weight:950;letter-spacing:.055em;line-height:1;text-transform:uppercase}
.profile-account-premium svg{width:11px;height:11px;fill:currentColor}
.courier-profile-premium-name{display:inline-grid;justify-items:center;gap:5px}
.courier-profile-premium-badge{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;color:#533d00;background:#ffd34a;border:1px solid #e0b41e;border-radius:999px;box-shadow:0 4px 11px rgba(167,116,0,.22);font-size:9px;font-weight:950;letter-spacing:.075em;line-height:1;text-transform:uppercase}
.courier-profile-premium-badge svg{width:11px;height:11px;fill:currentColor}

/* Niebla oscura para separar el buscador de recogida del mapa. */
.taxi-main-pickup-search{box-shadow:0 16px 34px rgba(0,0,0,.38),0 7px 16px rgba(0,0,0,.28),0 0 22px rgba(0,0,0,.16)}
.taxi-main-pickup-search:not(.is-collapsed){grid-template-columns:minmax(0,1fr) 54px;height:54px}
.taxi-main-pickup-search:focus-within{box-shadow:0 0 0 3px rgba(23,107,255,.18),0 18px 38px rgba(0,0,0,.42),0 7px 17px rgba(0,0,0,.3)}
.taxi-main-pickup-search:not(.is-collapsed) input{height:52px;padding:0 18px;font-size:14px;line-height:normal;transform:none}
.taxi-main-pickup-search input::placeholder{line-height:normal}
.taxi-main-pickup-search:not(.is-collapsed)>[data-taxi-main-pickup-search]{width:54px;height:52px}.taxi-main-pickup-search:not(.is-collapsed)>[data-taxi-main-pickup-search] svg{width:20px;height:20px}
.taxi-main-pickup-search-status{position:relative;z-index:4;right:auto;bottom:auto;left:auto;width:calc(100% - 8px);margin:0;padding:13px 15px;background:#fff;border:1px solid #d7dce3;border-radius:14px;box-shadow:0 10px 26px rgba(8,20,38,.2);text-align:left}
.taxi-main-pickup-search-status::after{position:absolute;top:-7px;bottom:auto;left:30px;width:12px;height:12px;background:#fff;border-top:1px solid #d7dce3;border-left:1px solid #d7dce3;content:"";transform:rotate(45deg)}
.taxi-main-pickup-municipality-host>.taxi-inline-municipality{position:absolute;z-index:5;right:4px;bottom:calc(100% + 11px);left:4px;padding:9px;background:#fff;border:1px solid #d7dce3;border-radius:14px;box-shadow:0 12px 30px rgba(8,20,38,.24)}
.taxi-main-pickup-municipality-host>.taxi-inline-municipality::before{display:block;margin:1px 4px 8px;color:#4b5563;font-size:11px;font-weight:800;content:"Elige el municipio"}
.taxi-main-pickup-municipality-host>.taxi-inline-municipality::after{position:absolute;right:30px;bottom:-7px;width:12px;height:12px;background:#fff;border-right:1px solid #d7dce3;border-bottom:1px solid #d7dce3;content:"";transform:rotate(45deg)}
.taxi-main-pickup-municipality-host .taxi-municipality-options{display:grid;gap:5px;padding:0;overflow:visible}
.taxi-main-pickup-municipality-host .taxi-municipality-options>button[data-taxi-municipality-value]{display:flex;width:100%;min-height:36px;padding:8px 11px;border-radius:9px;box-shadow:none;font-size:11px;text-align:left}

/* El buscador parte como una acción compacta y se abre con una transición. */
.taxi-main-pickup-search{position:relative;width:100%;transition:width .34s cubic-bezier(.22,.9,.32,1),background-color .2s,border-color .2s,box-shadow .2s}
.taxi-main-pickup-search>.taxi-main-pickup-search-open{position:absolute;z-index:2;inset:0;display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:40px;color:#fff;background:#176bff;border:0;border-radius:999px;font:inherit;font-size:12px;font-weight:850;letter-spacing:.01em;opacity:0;visibility:hidden;transform:scale(.94);transition:opacity .16s,transform .26s cubic-bezier(.22,.9,.32,1),visibility 0s linear .18s}
.taxi-main-pickup-search>.taxi-main-pickup-search-open svg{width:16px;height:16px}
.taxi-main-pickup-search>input,.taxi-main-pickup-search>[data-taxi-main-pickup-search]{opacity:1;transition:opacity .16s ease .12s}
.taxi-main-pickup-search.is-collapsed{width:188px;background:rgba(0,0,0,.58);border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 30px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%)}
.taxi-main-pickup-search.is-collapsed>.taxi-main-pickup-search-open{padding-right:18px;padding-left:18px}
.taxi-main-pickup-search.is-collapsed>.taxi-main-pickup-search-open{background:linear-gradient(135deg,rgba(28,31,38,.68),rgba(0,0,0,.52));text-shadow:0 1px 3px rgba(0,0,0,.8);-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%)}
.taxi-main-pickup-search.is-collapsed>.taxi-main-pickup-search-open{opacity:1;visibility:visible;transform:scale(1);transition-delay:.1s,0s,0s}
.taxi-main-pickup-search.is-collapsed>input,.taxi-main-pickup-search.is-collapsed>[data-taxi-main-pickup-search]{pointer-events:none;opacity:0;transition-delay:0s}
@media(prefers-reduced-motion:reduce){.taxi-main-pickup-search,.taxi-main-pickup-search>.taxi-main-pickup-search-open,.taxi-main-pickup-search>input,.taxi-main-pickup-search>[data-taxi-main-pickup-search]{transition:none}}

/* Acción final de la selección de vehículo. */
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:not(.is-disabled){color:#fff;background:#080b11;box-shadow:0 9px 20px rgba(0,0,0,.28);animation:none}
@media(prefers-reduced-motion:reduce){.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:not(.is-disabled){animation:none;box-shadow:0 9px 20px rgba(0,0,0,.28)}}

/* Medidas compartidas para las acciones principales del flujo de taxi. */
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button],.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button],.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button{display:flex;align-items:center;align-self:center;justify-content:center;justify-self:center;box-sizing:border-box;width:min(320px,calc(100% - 24px));height:50px;min-height:50px;max-height:50px;margin-right:auto;margin-left:auto;padding:0 18px;border:1px solid #000;border-radius:14px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;font-size:14px!important;font-weight:850!important;line-height:1!important;letter-spacing:-.01em;text-align:center;animation:none!important}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button] span,.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button] span{position:static;width:auto;font:inherit;line-height:1;text-align:center;white-space:nowrap;transform:none}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{bottom:50px;min-width:0;color:#fff;background:#080b11;border-color:#000;box-shadow:0 9px 20px rgba(0,0,0,.28)}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]{position:relative}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button] svg{position:static}
.taxi-main-destination-confirm{bottom:50px}
.taxi-main-destination-instruction{display:none}
.taxi-destination-map-label{display:none}
.taxi-destination-map-label[hidden],.taxi-destination-map-search[hidden],.taxi-destination-map-suggestions[hidden]{display:none!important}
.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-map-pin .taxi-pickup-map-label{display:none!important}
.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-map-pin{z-index:20}.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-map-pin .taxi-destination-map-label{position:absolute;z-index:6;top:-74px;left:50%;display:grid;gap:2px;box-sizing:border-box;width:max-content;max-width:min(310px,calc(100vw - 42px));padding:9px 14px;color:#171100;background:rgba(255,201,74,.97);border:1px solid #fff;border-radius:16px;box-shadow:0 7px 20px rgba(141,96,0,.3);font:inherit;text-align:center;transform:translateX(-50%);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.taxi-passenger-dashboard.is-confirming-destination .taxi-destination-map-label strong{max-width:280px;font-size:12px;font-weight:850;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.taxi-passenger-dashboard.is-confirming-destination .taxi-destination-map-label small{color:rgba(23,17,0,.7);font-size:9px;font-weight:700;line-height:1.2}.taxi-passenger-dashboard.is-confirming-destination .taxi-destination-map-label:focus-visible{outline:3px solid rgba(23,107,255,.42);outline-offset:3px}
.taxi-destination-map-search{position:absolute;z-index:8;top:-79px;left:50%;display:grid;gap:7px;width:min(330px,calc(100vw - 30px));transform:translateX(-50%);pointer-events:auto}.taxi-destination-map-search-capsule{display:grid;grid-template-columns:minmax(0,1fr) 52px;box-sizing:border-box;width:100%;height:52px;overflow:hidden;background:#fff;border:1px solid rgba(255,201,74,.9);border-radius:999px;box-shadow:0 8px 24px rgba(8,20,38,.25)}.taxi-destination-map-search-capsule:focus-within{box-shadow:0 0 0 3px rgba(255,201,74,.28),0 9px 26px rgba(8,20,38,.28)}.taxi-destination-map-search-capsule input{min-width:0;height:50px;padding:0 16px;color:#17223b;background:transparent;border:0!important;border-radius:999px 0 0 999px;outline:0!important;box-shadow:none!important;-webkit-appearance:none;appearance:none;font-family:inherit;font-size:13px;font-weight:650;line-height:1.2}.taxi-destination-map-search-capsule input::-webkit-search-cancel-button,.taxi-destination-map-search-capsule input::-webkit-search-decoration{-webkit-appearance:none;display:none}.taxi-destination-map-search-capsule button{display:grid;place-items:center;width:52px;height:50px;padding:0;color:#171100;background:#ffc94a;border:0;border-radius:0 999px 999px 0;cursor:pointer;touch-action:manipulation}.taxi-destination-map-search-capsule button:disabled{cursor:wait;opacity:.68}.taxi-destination-map-search-capsule button svg{width:19px;height:19px;stroke-width:2.2}.taxi-destination-map-search>p{box-sizing:border-box;width:100%;margin:0;padding:9px 12px;color:#3d4653;background:#fff;border:1px solid #d7dce3;border-radius:12px;box-shadow:0 8px 20px rgba(8,20,38,.18);font-size:10px;font-weight:700;line-height:1.35;text-align:left}.taxi-destination-map-search>p[hidden]{display:none}
.taxi-passenger-map-pin .taxi-destination-map-search svg{display:block}.taxi-destination-map-suggestions.is-expanded{position:absolute;top:59px;right:0;left:0;box-sizing:border-box;width:100%;margin:0;transform:none}.taxi-destination-map-suggestions.is-expanded>small{margin-right:8px}.taxi-destination-map-suggestions.is-expanded>div{max-height:min(246px,32dvh)}.taxi-destination-map-suggestions.is-expanded .taxi-passenger-recent-item>.taxi-passenger-recent-select{grid-template-columns:38px minmax(0,1fr);gap:10px;min-width:0;padding:7px 38px 7px 8px}.taxi-destination-map-suggestions .taxi-passenger-suggestion-copy,.taxi-destination-map-suggestions .taxi-passenger-suggestion-title{min-width:0}.taxi-destination-map-suggestions .taxi-passenger-suggestion-title>b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.taxi-destination-map-suggestions .taxi-passenger-suggestion-municipality{flex:0 1 31%;max-width:31%}.taxi-destination-map-suggestions .taxi-passenger-suggestion-category{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxi-destination-map-suggestions .taxi-passenger-recent-arrow{display:block;right:12px}
.taxi-destination-dialog[data-taxi-map-destination-edit="true"]{width:min(500px,calc(100% - 24px))}
@media(max-width:680px){.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button],.taxi-main-destination-confirm{bottom:calc(clamp(54px,8dvh,82px) + env(safe-area-inset-bottom,0px))}.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{right:12px;left:12px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button{margin-bottom:calc(clamp(29px,5dvh,47px) + env(safe-area-inset-bottom,0px))}}

/* Paleta unificada: acciones negras y búsqueda de recogida azul. */
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button],.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:not(.is-disabled){color:#fff;background:#080b11;border-color:#000;box-shadow:0 9px 20px rgba(0,0,0,.28)}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]:hover,.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button]:hover,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:not(.is-disabled):hover{color:#fff;background:#000;border-color:#000}
.taxi-main-destination-confirm [data-taxi-main-destination-confirm-button] svg{color:#ffc94a}
.taxi-main-destination-confirm>div{gap:24px}
.taxi-main-destination-municipality{position:relative;display:flex;justify-content:center;width:100%;pointer-events:auto}
.taxi-main-destination-municipality[hidden]{display:none}
.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle]{display:inline-flex;gap:6px;min-height:34px;padding:6px 11px;color:#1f2937;background:rgba(255,255,255,.96);border:1px solid rgba(181,190,203,.92);border-radius:999px;box-shadow:0 5px 16px rgba(8,20,38,.17);font-size:11px;font-weight:800;line-height:1;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle] strong{max-width:150px;overflow:hidden;color:#176bff;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle] svg{width:13px;height:13px;color:#667085;transition:transform .18s ease;transform:rotate(90deg)}
.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle][aria-expanded="true"]{border-color:#8bb4ff;box-shadow:0 0 0 3px rgba(23,107,255,.13),0 6px 18px rgba(8,20,38,.18)}
.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle][aria-expanded="true"] svg{transform:rotate(-90deg)}
.taxi-main-destination-municipality-host{position:absolute;right:0;bottom:calc(100% + 8px);left:0;display:flex;justify-content:center;pointer-events:none}
.taxi-main-destination-municipality-host>.taxi-inline-municipality{box-sizing:border-box;width:min(286px,calc(100vw - 32px));padding:8px;background:rgba(255,255,255,.98);border:1px solid #d7dce3;border-radius:14px;box-shadow:0 14px 34px rgba(8,20,38,.25);pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.taxi-main-destination-municipality-host .taxi-municipality-options{display:grid;gap:5px;max-height:min(42dvh,280px);padding:0;overflow:auto}
.taxi-main-destination-municipality-host .taxi-municipality-options>button[data-taxi-municipality-value]{display:flex;width:100%;min-height:38px;padding:9px 11px;color:#263244;background:#fff;border:1px solid transparent;border-radius:9px;box-shadow:none;font-size:12px;text-align:left}
.taxi-main-destination-municipality-host .taxi-municipality-options>button[data-taxi-municipality-value]:hover,.taxi-main-destination-municipality-host .taxi-municipality-options>button[data-taxi-municipality-value]:focus{background:#edf4ff;border-color:#9dbcf0;box-shadow:none}
.taxi-main-destination-municipality-host .taxi-municipality-options>button[data-taxi-municipality-value][aria-pressed="true"]{color:#0b51bd;background:#eaf2ff;border-color:#73a5f4}
@media(max-width:680px){.taxi-main-destination-confirm>div{gap:22px}.taxi-main-destination-confirm [data-taxi-main-destination-municipality-toggle]{min-height:32px;padding:6px 10px;font-size:10.5px}.taxi-main-destination-municipality-host>.taxi-inline-municipality{width:min(276px,calc(100vw - 28px))}}
.taxi-main-pickup-search.is-collapsed{background:rgba(0,61,160,.54);border-color:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 25px rgba(0,28,92,.34);-webkit-backdrop-filter:blur(12px) saturate(135%);backdrop-filter:blur(12px) saturate(135%)}
.taxi-main-pickup-search.is-collapsed>.taxi-main-pickup-search-open{background:linear-gradient(135deg,rgba(20,108,246,.64),rgba(0,49,148,.52));text-shadow:0 1px 3px rgba(0,18,70,.75);-webkit-backdrop-filter:blur(12px) saturate(135%);backdrop-filter:blur(12px) saturate(135%)}
.taxi-main-pickup-search.is-collapsed:hover{border-color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 12px 30px rgba(0,48,150,.48),0 0 0 4px rgba(23,107,255,.16)}
.taxi-main-pickup-search.is-collapsed:hover>.taxi-main-pickup-search-open{background:linear-gradient(135deg,rgba(38,126,255,.76),rgba(0,65,185,.62))}

/* Búsqueda compacta: métricas dentro de la tarjeta y sin elementos cortados al pie. */
.taxi-passenger-is-searching .taxi-map-driver-picker.is-active-ride-route{display:none!important}
.taxi-passenger-is-searching .taxi-searching-panel{width:min(420px,calc(100% - 24px));border-radius:22px}
.taxi-passenger-is-searching .taxi-searching-center{padding:18px 20px 18px}
.taxi-passenger-is-searching .taxi-searching-icon.taxi-searching-map-car{width:76px;height:48px}
.taxi-passenger-is-searching .taxi-searching-map-car img{max-width:76px;max-height:48px}
.taxi-passenger-is-searching .taxi-searching-vehicle-line{margin-bottom:6px}.taxi-passenger-is-searching .taxi-searching-center h1{font-size:clamp(21px,5vw,24px);line-height:1.12;letter-spacing:-.03em}
.taxi-searching-dots{display:inline-flex;align-items:flex-end;gap:3px;height:12px;margin-left:7px;vertical-align:middle}.taxi-searching-dots i{display:block;width:4px;height:4px;background:#2dbb83;border-radius:50%;animation:taxiWaitingDot 1.45s ease-in-out infinite}.taxi-searching-dots i:nth-child(2){animation-delay:.18s}.taxi-searching-dots i:nth-child(3){animation-delay:.36s}@media(prefers-reduced-motion:reduce){.taxi-searching-dots i{animation:none}}
.taxi-searching-center [data-taxi-searching-copy]{max-width:100%;margin-top:10px;color:#667284;font-size:13px;font-weight:600;line-height:1.35;text-wrap:balance}
.taxi-searching-center .taxi-search-price-increase{display:grid;gap:4px;max-width:310px;padding:9px 12px;color:#685018;background:#fff7d9;border:1px solid #ebd17b;border-radius:11px}.taxi-search-price-increase strong{color:#382b0e;font-size:12px}.taxi-search-price-increase span{font-size:11px;font-weight:650;line-height:1.35}
.taxi-searching-estimated-fare{gap:4px;margin-top:16px;font-size:22px}
.taxi-searching-fare-label>small{display:block;margin:0;font-size:9px!important;line-height:1.1!important;letter-spacing:.07em;transform:none}
.taxi-passenger-is-searching .taxi-searching-progress{width:min(210px,76%);margin-top:17px}
.taxi-passenger-is-searching .taxi-searching-panel>footer{gap:8px;margin-top:4px;padding:16px 22px 22px;border-top:1px solid #edf0f4}
.taxi-passenger-is-searching .taxi-searching-panel>footer form{width:min(100%,320px)}
.taxi-passenger-is-searching .taxi-searching-panel>footer .taxi-searching-cancel-button{width:100%;min-height:50px;padding:12px 22px;color:#111;background:#fff;border:1.5px solid #111;border-radius:14px;font-size:13px;font-weight:850;box-shadow:0 5px 14px rgba(17,17,17,.08);transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease}
.taxi-passenger-is-searching .taxi-searching-panel>footer .taxi-searching-cancel-button:hover,.taxi-passenger-is-searching .taxi-searching-panel>footer .taxi-searching-cancel-button:focus-visible{color:#842936;background:#ffebed;border-color:#d98e97;box-shadow:0 7px 18px rgba(155,53,64,.14);outline:0}.taxi-passenger-is-searching .taxi-searching-panel>footer .taxi-searching-cancel-button:active{transform:scale(.985)}
@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-searching) .taxi-passenger-searching{bottom:calc(clamp(30px,5dvh,48px) + env(safe-area-inset-bottom,0px))!important;padding:10px 0 10px!important;scroll-padding-bottom:20px}.taxi-passenger-searching .taxi-searching-panel{max-height:calc(100% - 8px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.taxi-passenger-is-searching .taxi-searching-center{padding:20px 18px 19px}.taxi-passenger-is-searching .taxi-searching-panel>footer{padding:15px 18px 19px}.taxi-passenger-is-searching .taxi-searching-panel>footer .taxi-searching-cancel-button{min-height:52px;font-size:13.5px}}

/* Confirmación del conductor: cubre el mapa sin juntas y conserva aire en móviles. */
.taxi-driver-match{position:fixed;z-index:1000;inset:0!important;box-sizing:border-box;width:100vw;height:100dvh;padding:max(22px,env(safe-area-inset-top,0px)) max(22px,env(safe-area-inset-right,0px)) max(22px,env(safe-area-inset-bottom,0px)) max(22px,env(safe-area-inset-left,0px));background:rgba(8,20,38,.48);overflow:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.taxi-driver-match>article{border:0}
.taxi-driver-match-avatar{display:grid;place-items:center;box-sizing:border-box;width:76px;height:76px;margin-bottom:14px;overflow:hidden;color:#101935;background:#ffc94a;border:4px solid #fff;border-radius:50%;box-shadow:0 0 0 6px rgba(255,201,74,.22),0 8px 20px rgba(8,25,45,.16);font-size:22px;font-weight:900}
.taxi-driver-match-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.taxi-driver-match h2{margin:0 0 20px;font-size:27px;line-height:1.12}
.taxi-driver-match-vehicle{margin-top:0;padding:13px 14px}
.taxi-driver-match-vehicle div{gap:3px}
.taxi-driver-match-vehicle small{display:block;margin-top:5px;color:#435167;font-size:11px;font-weight:700;line-height:1.3}
.taxi-driver-match-price small{color:#303b4c;font-size:8px;font-weight:800;letter-spacing:.08em}
.taxi-driver-match-actions{display:grid;gap:5px;width:100%}
.taxi-driver-match-actions form{margin:0}
.taxi-driver-match-actions button{width:100%;border:0;font-weight:850;cursor:pointer}
.taxi-driver-match-accept{min-height:48px;color:#fff;background:#101935;border-radius:14px}
.taxi-driver-match-change{min-height:34px;padding:5px 10px;color:#687486;background:transparent;border-radius:10px;font-size:11px}
.taxi-driver-match-change:hover,.taxi-driver-match-change:focus-visible{color:#a02e3d;background:#fff2f4;outline:0}
@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-driver-match{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))}.taxi-driver-match-avatar{width:66px;height:66px;margin-bottom:11px}.taxi-driver-match h2{margin-bottom:16px;font-size:22px}.taxi-driver-match-accept{min-height:42px}}
.taxi-driver-match.is-closing{animation:taxiDriverMatchBackdropDismiss .32s ease forwards;pointer-events:none}.taxi-driver-match.is-closing>article{animation:taxiDriverMatchCardDismiss .32s cubic-bezier(.4,0,1,1) forwards}.taxi-passenger-driver-card.is-match-revealing{animation:taxiAssignedDetailsReveal .7s cubic-bezier(.16,1,.3,1) both}@keyframes taxiDriverMatchBackdropDismiss{to{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}@keyframes taxiDriverMatchCardDismiss{to{opacity:0;transform:translateY(24px) scale(.98)}}@keyframes taxiAssignedDetailsReveal{from{opacity:.35;transform:translateY(42px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.taxi-driver-match.is-closing,.taxi-driver-match.is-closing>article,.taxi-passenger-driver-card.is-match-revealing{animation:none}}

/* Conductor en camino: retrato superpuesto al vehículo, con matrícula y llegada visibles. */
.taxi-driver-en-route-showcase{display:grid;gap:12px;padding:5px 3px 2px}
.taxi-driver-en-route-main{--taxi-driver-avatar-left:2px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(145px,.9fr);align-items:center;min-height:120px;padding:5px 10px 8px;background:#fafafa;border:1px solid #e7e9ec;border-radius:18px}
.taxi-driver-en-route-main:has(.taxi-driver-en-route-visual:not([data-vehicle-asset="carro"])){--taxi-driver-avatar-left:29px}
.taxi-driver-en-route-visual{position:relative;display:grid;place-items:center;align-self:stretch;min-width:0}
.taxi-driver-en-route-car{display:block;width:min(190px,100%);height:108px;object-fit:contain;filter:drop-shadow(0 7px 7px rgba(8,20,38,.16));transform:scaleX(-1)}
.taxi-driver-en-route-avatar{position:absolute;bottom:4px;left:var(--taxi-driver-avatar-left);display:grid;place-items:center;box-sizing:border-box;width:74px;height:74px;overflow:hidden;color:#101935;background:#ffc94a;border:4px solid #fff;border-radius:50%;box-shadow:0 5px 16px rgba(8,25,45,.2);font-size:20px;font-weight:900}
.taxi-driver-en-route-avatar>img{display:block;width:100%;height:100%;object-fit:cover}
.taxi-driver-en-route-vehicle-copy{display:grid;align-content:center;gap:4px;min-width:0;padding:6px 3px;text-align:right}
.taxi-driver-en-route-vehicle-copy>strong{overflow:hidden;color:#10131a;font-size:25px;font-weight:850;line-height:1.05;letter-spacing:.015em;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-en-route-vehicle-copy>span{color:#303744;font-size:13px;font-weight:500;line-height:1.25;overflow-wrap:anywhere}
.taxi-driver-en-route-vehicle-copy>small{margin-top:7px;color:#176bff;font-size:11px;font-weight:800;line-height:1.25}
.taxi-driver-en-route-bottom{display:flex;padding:0 5px}
.taxi-driver-en-route-identity{display:grid;grid-column:1;gap:2px;min-width:0;margin-left:var(--taxi-driver-avatar-left);padding:1px 0 3px;text-align:left}
.taxi-driver-en-route-identity h1{margin:0;overflow:hidden;color:#111b2d;font-size:21px;font-weight:650;line-height:1.15;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}
.taxi-driver-en-route-identity small{color:#9a4550;font-size:9px;font-weight:700}
.taxi-driver-en-route-actions{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);align-items:stretch;gap:9px;width:100%;margin:0}
.taxi-driver-en-route-actions .taxi-assigned-call,.taxi-driver-en-route-actions .taxi-assigned-message{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 14px;font-family:inherit}
.taxi-driver-en-route-actions .taxi-assigned-call{background:#174c3a;box-shadow:0 7px 16px rgba(23,76,58,.18)}
.taxi-driver-en-route-actions .taxi-assigned-call:hover,.taxi-driver-en-route-actions .taxi-assigned-call:focus-visible{background:#103d2e}
.taxi-driver-en-route-actions .taxi-assigned-call>span{display:flex;align-items:center;line-height:1}
.taxi-driver-en-route-actions .taxi-assigned-call small{display:none}
.taxi-driver-en-route-actions .taxi-assigned-call b,.taxi-driver-en-route-actions .taxi-assigned-message b{font-family:inherit;font-size:12px;font-weight:850;line-height:1}
.taxi-driver-en-route-actions .taxi-assigned-call svg,.taxi-driver-en-route-actions .taxi-assigned-message svg{flex:0 0 20px;width:20px;height:20px}
.taxi-passenger-driver-card:has(.taxi-driver-en-route-showcase) .taxi-assigned-cancel{margin:16px 0 5px}
.taxi-passenger-driver-card:has(.taxi-driver-en-route-showcase) .taxi-assigned-cancel button{padding:7px 12px;color:#687486;font-size:13px;font-weight:700}
.taxi-passenger-driver-card:has(.taxi-driver-en-route-showcase) .taxi-assigned-header-eta{display:none}
.taxi-passenger-status-price{display:grid;justify-items:end;gap:2px;white-space:nowrap}
.taxi-passenger-status-price>em{color:#0b5d4b!important;-webkit-text-fill-color:#0b5d4b;font-size:9px;font-style:normal;font-weight:800;line-height:1.2;letter-spacing:0}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-showcase{gap:3px;padding:0 5px 6px}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-main{grid-template-columns:96px minmax(0,1fr);min-height:76px;padding:4px 10px 9px;background:transparent;border:0}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-car{width:88px;height:58px}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-avatar{bottom:2px;left:0;width:36px;height:36px;border-width:3px;font-size:11px}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-vehicle-copy{gap:3px;padding-left:10px;text-align:left}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-vehicle-copy>strong{font-size:17px}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-vehicle-copy>span{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-vehicle-copy>small{margin-top:2px;font-size:11px}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-identity{display:none}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-en-route-bottom{display:none}
.taxi-passenger-driver-card.is-driver-arrived.is-collapsed .taxi-driver-en-route-showcase{display:none}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-arriving-collapsed-label{gap:9px;padding:8px 0 7px;color:#39485c;font-size:13px;font-weight:800;line-height:1.25}
.taxi-passenger-driver-card.is-collapsed .taxi-driver-arriving-collapsed-label::before{flex-basis:8px;width:8px;height:8px}
@media(max-width:680px){.taxi-driver-en-route-showcase{gap:9px}.taxi-driver-en-route-main{grid-template-columns:minmax(0,1.2fr) minmax(128px,.88fr);min-height:105px;padding:3px 8px 6px}.taxi-driver-en-route-main:has(.taxi-driver-en-route-visual:not([data-vehicle-asset="carro"])){--taxi-driver-avatar-left:26px}.taxi-driver-en-route-car{width:min(165px,100%);height:96px}.taxi-driver-en-route-avatar{bottom:3px;width:64px;height:64px}.taxi-driver-en-route-vehicle-copy>strong{font-size:21px}.taxi-driver-en-route-vehicle-copy>span{font-size:12px}.taxi-driver-en-route-vehicle-copy>small{font-size:10px}.taxi-driver-en-route-identity h1{font-size:19px}.taxi-driver-en-route-actions{gap:7px}.taxi-driver-en-route-actions .taxi-assigned-call,.taxi-driver-en-route-actions .taxi-assigned-message{min-height:42px}}
@media(max-width:360px){.taxi-driver-en-route-main{grid-template-columns:minmax(0,1.1fr) minmax(112px,.9fr)}.taxi-driver-en-route-car{height:88px}.taxi-driver-en-route-avatar{width:58px;height:58px}.taxi-driver-en-route-vehicle-copy>strong{font-size:19px}.taxi-driver-en-route-vehicle-copy>span{font-size:11px}.taxi-driver-en-route-bottom{padding:0 2px}.taxi-driver-en-route-identity h1{font-size:17px}.taxi-driver-en-route-actions{gap:6px}.taxi-driver-en-route-actions .taxi-assigned-call,.taxi-driver-en-route-actions .taxi-assigned-message{min-height:40px;padding:0 8px}}
@media(max-width:680px){body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-card:not(.is-collapsed){overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}body.taxi-passenger-app:has(.taxi-passenger-has-driver) .taxi-passenger-driver-card:not(.is-collapsed)::-webkit-scrollbar{display:none}}
@media(max-width:680px) and (max-height:620px){.taxi-driver-en-route-showcase{gap:6px;padding-top:2px}.taxi-driver-en-route-main{min-height:94px}.taxi-driver-en-route-car{height:82px}.taxi-driver-en-route-avatar{width:56px;height:56px}.taxi-driver-en-route-vehicle-copy>small{margin-top:3px}.taxi-driver-en-route-actions .taxi-assigned-call,.taxi-driver-en-route-actions .taxi-assigned-message{min-height:38px}.taxi-passenger-driver-card:has(.taxi-driver-en-route-showcase) .taxi-assigned-cancel{margin:10px 0 2px}}

/* Viaje en curso replegado: más legible sin cubrir innecesariamente el mapa. */
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed{padding-bottom:11px}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-passenger-panel-toggle{height:16px;margin-bottom:1px}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-driver-en-route-showcase{display:none}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-label{gap:5px;padding:8px 0 11px;color:#39485c;font-size:15px;font-weight:850;line-height:1.2;letter-spacing:0}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-title{gap:9px;color:#111827;font-size:17px;font-weight:850;line-height:1.15}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-title::before{flex-basis:9px;width:9px;height:9px;box-shadow:0 0 0 4px rgba(45,187,131,.12)}
.taxi-passenger-driver-card.is-trip-in-progress.is-collapsed .taxi-trip-collapsed-label small{color:#6f7d90;font-size:12px;font-weight:700;line-height:1.25}

/* Pasajeros y taxistas navegan desde su foto de perfil; no necesitan barra inferior. */
@media(max-width:680px){
  body.taxi-passenger-app{padding-bottom:0!important}
  body.taxi-driver-app{padding-bottom:0!important}
  .taxi-app .mobile-header-notifications{margin-right:4px}
  .taxi-passenger-header-menu>summary{box-sizing:border-box;width:34px;height:34px;overflow:visible;border:1px solid #ffc94a!important;border-radius:50%;box-shadow:0 4px 12px rgba(4,16,35,.2),0 0 0 1px rgba(255,201,74,.16);font-size:12px;font-weight:850}
  .taxi-passenger-header-menu .account-menu-options{top:calc(58px + env(safe-area-inset-top,0px));right:9px;min-width:244px;padding:9px;background:linear-gradient(155deg,#13223a 0%,#091529 100%);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 20px 46px rgba(2,10,24,.38),0 0 0 1px rgba(255,201,74,.08);overflow:hidden}
  .taxi-passenger-header-menu .account-menu-options::before{content:"";position:absolute;inset:0 18px auto;height:2px;background:linear-gradient(90deg,transparent,#ffc94a,transparent);opacity:.9}
  .taxi-passenger-header-menu .account-menu-options a{display:grid;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:11px;min-height:50px;padding:7px 10px;color:#d8e0ed;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:780;letter-spacing:.01em}
  .taxi-passenger-header-menu .account-menu-options a::after{content:none}
  .taxi-passenger-header-menu .account-menu-options a+a{margin-top:3px}
  .taxi-passenger-header-menu .account-menu-options a svg{box-sizing:border-box;width:34px;height:34px;padding:7px;color:#aebbd0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.06);border-radius:10px;stroke-width:2}
  .taxi-passenger-header-menu .account-menu-options a b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;color:#fff;background:#d93643;border-radius:999px;font-size:9px}
  .taxi-passenger-header-menu .account-menu-options a:hover,.taxi-passenger-header-menu .account-menu-options a:focus-visible{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.08);outline:0}
  .taxi-passenger-header-menu .account-menu-options a:hover svg,.taxi-passenger-header-menu .account-menu-options a:focus-visible svg{color:#fff;background:rgba(255,255,255,.11);box-shadow:none}
  .taxi-passenger-header-menu .account-menu-options a.active{color:#171100;background:#ffc94a;border-color:#ffd66f;box-shadow:0 7px 18px rgba(255,193,36,.2)}
  .taxi-passenger-header-menu .account-menu-options a.active svg{color:#171100;background:rgba(255,255,255,.38);border-color:rgba(23,17,0,.08);box-shadow:none}
  .taxi-passenger-header-menu .account-menu-options a.active::after{opacity:.7}
  .taxi-passenger-header-menu .account-menu-options a.taxi-referral-menu-action{color:#fff;background:linear-gradient(135deg,#22a85a,#14833f);border-color:#2db466;box-shadow:0 8px 18px rgba(10,91,42,.34)}
  .taxi-passenger-header-menu .account-menu-options a.taxi-referral-menu-action svg{color:#fff;background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.14)}
  .taxi-passenger-header-menu .account-menu-options a.taxi-referral-menu-action:hover,.taxi-passenger-header-menu .account-menu-options a.taxi-referral-menu-action:focus-visible{color:#fff;background:linear-gradient(135deg,#1d984f,#106f35);border-color:#35bd70}
  .taxi-passenger-app .taxi-passenger-rides-history{padding-bottom:38px}
  .taxi-passenger-app .taxi-account-shell{padding-bottom:38px}
}

/* El estado del taxista flota sobre un mapa que ocupa todo el fondo. */
@media(max-width:680px){
  html:has(body.taxi-driver-dashboard-page),
  body.taxi-driver-dashboard-page{
    background:#dce7e8!important;
  }
  body.taxi-driver-dashboard-page .taxi-driver-bottom-stack{
    bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
    width:100%!important;
  }
  body.taxi-driver-dashboard-page .taxi-driver-bottom-stack:has(>.taxi-driver-status-sheet.is-collapsed){
    bottom:calc(22px + env(safe-area-inset-bottom,0px))!important;
  }
  body.taxi-driver-dashboard-page .taxi-driver-status-sheet{
    width:calc(100% - 18px)!important;
    margin-inline:auto;
    padding-bottom:0;
    background:#fff;
    border:1px solid #d5dce5;
    border-radius:20px;
    box-shadow:0 14px 38px rgba(9,25,44,.22);
  }
  body.taxi-driver-dashboard-page .taxi-driver-status-head{
    border-bottom:0;
  }
  body.taxi-driver-dashboard-page .taxi-driver-status-sheet.is-collapsed{
    max-height:80px!important;
  }
  body.taxi-driver-dashboard-page .taxi-driver-status-sheet.is-collapsed .taxi-driver-status-head{
    min-height:62px;
    padding:8px 12px 12px;
  }
  body.taxi-driver-dashboard-page .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet.is-collapsed{
    max-height:98px!important;
  }
}

/* La altura visual real excluye las barras móviles que algunos motores suman a 100vh. */
@media(max-width:680px){
  body.taxi-driver-dashboard-page{
    height:var(--taxi-driver-visible-height,100dvh)!important;
    min-height:var(--taxi-driver-visible-height,100dvh)!important;
  }
  body.taxi-driver-dashboard-page>main{
    height:calc(var(--taxi-driver-visible-height,100dvh) - 62px - env(safe-area-inset-top,0px))!important;
  }
  body.taxi-driver-dashboard-page .taxi-driver-bottom-stack:not(.has-active-trip){
    bottom:max(12px,calc(8px + env(safe-area-inset-bottom,0px)))!important;
  }
}

/* Llamada de atención serena para la dirección de destino en Inicio. */
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){padding:22px 18px 24px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-title{margin:0 5px 12px;line-height:1.35}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) [data-taxi-destination-field]{min-height:47px;padding-left:15px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:hover,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:focus{width:48px;height:45px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-help{margin:10px 6px 0 16px;line-height:1.5}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-recent-fixed{margin-top:14px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-recent-fixed>div{gap:10px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-recent-fixed .taxi-passenger-recent-select{min-height:52px;padding-block:8px}
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-item>.taxi-passenger-recent-select{padding-right:42px}.taxi-passenger-suggestion-copy{display:grid!important;gap:3px!important}.taxi-passenger-suggestion-title{display:flex;align-items:flex-start;gap:7px;min-width:0}.taxi-passenger-suggestion-title>b{flex:1 1 auto;min-width:0;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.taxi-passenger-search-suggestions .taxi-passenger-suggestion-municipality{flex:0 1 34%;min-width:0;max-width:34%;overflow:hidden;color:#8b929d;font-size:9px;font-weight:500;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-passenger-search-suggestions .taxi-passenger-suggestion-category{color:#8b929d;font-size:10px;font-weight:500}.taxi-passenger-suggestions-empty{margin:4px;padding:14px 12px;color:#717986;background:#f5f7f9;border-radius:12px;font-size:12px;line-height:1.45;text-align:center}.taxi-passenger-search-suggestions[aria-busy="true"]{opacity:.72}
.taxi-pickup-search-suggestions.is-expanded{position:relative;top:auto;right:auto;left:auto;box-sizing:border-box;width:100%;margin:0}.taxi-pickup-search-suggestions.is-expanded>small{margin-right:8px}.taxi-pickup-search-suggestions.is-expanded>div{max-height:min(260px,34dvh)}[data-taxi-pickup-suggestions-modal-host]{display:grid;width:100%}.taxi-main-pickup-tools>.taxi-pickup-search-suggestions{z-index:8}
.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm{top:auto;right:4px;bottom:calc(100% + 7px);box-sizing:border-box;width:218px;padding:10px 11px;gap:8px;border-radius:13px;box-shadow:0 7px 19px rgba(17,24,39,.13);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;transform:none;animation:taxiRecentConfirmAbove .16s ease-out}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm::after{position:absolute;right:14px;bottom:-5px;width:10px;height:10px;background:#fff;box-shadow:2px 2px 3px rgba(17,24,39,.04);content:"";transform:rotate(45deg)}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>strong{font-size:12px;font-weight:750;line-height:1.3;letter-spacing:0}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div{position:relative;z-index:1;gap:7px}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button{box-sizing:border-box;width:100%;height:30px;min-height:30px;max-height:30px;padding:0 12px;border-radius:7px;font-family:inherit;font-size:11.5px;font-weight:700;line-height:1;letter-spacing:0}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button:first-child{color:#fff;background:#c43d4a}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-confirm>div>button:last-child{color:#5f6b7d;background:#eef1f5}@keyframes taxiRecentConfirmAbove{from{opacity:0;transform:translateY(5px) scale(.98)}to{opacity:1;transform:none}}
.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete{box-sizing:border-box;width:30px;height:30px;min-height:30px;max-height:30px;padding:6px;color:#d85b65;background:transparent;border:0;box-shadow:none}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete>svg{display:block;width:18px;height:18px;padding:0;color:inherit;background:transparent;stroke:currentColor;stroke-width:2.3}.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:hover,.taxi-passenger-route-sheet .taxi-passenger-recent-destinations .taxi-passenger-recent-item>.taxi-passenger-recent-delete:focus-visible{color:#b83f49;background:transparent;transform:translateY(-50%) scale(1.06)}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-featured-toggle{margin:16px auto 0;padding-block:11px;min-height:44px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) [data-taxi-destination-field].is-attention:not(.is-editing){animation:taxiDestinationBreathe 2.7s ease-in-out infinite}
@keyframes taxiDestinationBreathe{0%,100%{border-color:#ffc94a;box-shadow:0 5px 14px -8px rgba(17,24,39,.18),0 1px 3px rgba(17,24,39,.05)}50%{border-color:#e4ad1e;box-shadow:0 9px 22px -10px rgba(17,24,39,.24),0 2px 5px rgba(17,24,39,.07)}}
@media(prefers-reduced-motion:reduce){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) [data-taxi-destination-field].is-attention:not(.is-editing){animation:none;box-shadow:0 5px 14px -8px rgba(17,24,39,.18),0 1px 3px rgba(17,24,39,.05)}}

/* Auditoría de WhatsApp: prueba operativa, protección de ritmo e historial. */
.admin-whatsapp-audit-page{--wa-green:#1fa875;--wa-green-dark:#137a59;--wa-soft:#eaf8f2;--wa-line:#cceade}
.admin-whatsapp-audit-page .audit-tabs{max-width:100%;overflow-x:auto}
.whatsapp-audit-test-card{position:relative;margin-bottom:18px;padding:0;overflow:hidden;border-color:#cfe7dc;background:linear-gradient(135deg,#fff 0%,#f5fbf8 58%,#e8f8f1 100%)}
.whatsapp-audit-test-card::after{content:"";position:absolute;top:-90px;right:-65px;width:230px;height:230px;background:radial-gradient(circle,rgba(31,168,117,.14),rgba(31,168,117,0) 68%);pointer-events:none}
.whatsapp-audit-test-intro{position:relative;z-index:1;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px 24px 18px}
.whatsapp-audit-mark{display:grid;place-items:center;width:56px;height:56px;color:#fff;background:linear-gradient(145deg,#29bd82,#159767);border-radius:18px;box-shadow:0 10px 24px rgba(31,168,117,.24)}
.whatsapp-audit-mark svg{width:30px;height:30px;fill:currentColor}
.whatsapp-audit-test-intro>div{display:grid;gap:3px}.whatsapp-audit-test-intro small{color:var(--wa-green-dark);font-size:10px;font-weight:900;letter-spacing:.13em}.whatsapp-audit-test-intro h2{margin:0;font-size:22px;letter-spacing:-.025em}.whatsapp-audit-test-intro p{margin:0;color:var(--muted);font-size:13px}
.whatsapp-audit-health{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;color:#7a5a15;background:#fff2cf;border:1px solid #eedb9d;border-radius:999px;font-size:11px;font-weight:850}.whatsapp-audit-health i{width:8px;height:8px;background:#e5ad22;border-radius:50%;box-shadow:0 0 0 3px rgba(229,173,34,.15)}.whatsapp-audit-health.is-ready{color:#126548;background:#e1f7ed;border-color:#bde5d4}.whatsapp-audit-health.is-ready i{background:#20ad77;box-shadow:0 0 0 3px rgba(32,173,119,.15)}
.whatsapp-audit-safety{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 24px;padding:14px 0;border-top:1px solid rgba(31,168,117,.14);border-bottom:1px solid rgba(31,168,117,.14)}
.whatsapp-audit-safety>span{display:grid;gap:2px;padding:0 18px;border-right:1px solid rgba(31,168,117,.14)}.whatsapp-audit-safety>span:first-child{padding-left:0}.whatsapp-audit-safety>span:last-child{padding-right:0;border-right:0}.whatsapp-audit-safety b{color:#173c32;font-size:15px}.whatsapp-audit-safety small{color:#668078;font-size:11px}
.whatsapp-audit-test-form{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:14px;padding:18px 24px 24px}.whatsapp-audit-test-form>label{display:grid;grid-template-columns:1fr auto;gap:6px 12px;min-width:0;color:#26372f;font-size:12px;font-weight:800}.whatsapp-audit-test-form>label>small{align-self:end;color:var(--muted);font-size:10px;font-weight:600}.whatsapp-audit-test-form input[type="tel"]{grid-column:1/-1;width:100%;min-width:0;min-height:48px;padding:0 14px;color:var(--ink);background:#fff;border:1px solid #bfdccf;border-radius:12px;font-size:14px}.whatsapp-audit-test-form input[type="tel"]:focus{border-color:var(--wa-green);box-shadow:0 0 0 3px rgba(31,168,117,.13);outline:0}.whatsapp-audit-send{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding-inline:18px;color:#fff;background:linear-gradient(135deg,var(--wa-green),var(--wa-green-dark));border:0;border-radius:12px;box-shadow:0 8px 18px rgba(31,168,117,.2);font-weight:850;white-space:nowrap;cursor:pointer}.whatsapp-audit-send svg{flex:0 0 auto;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.whatsapp-audit-send:disabled{opacity:.48;box-shadow:none;cursor:not-allowed}
.whatsapp-test-provider-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.whatsapp-audit-test-form .whatsapp-test-provider-list label{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:11px;min-width:0;min-height:64px;padding:12px 14px;background:#fff;border:1px solid #bfdccf;border-radius:12px;cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}.whatsapp-audit-test-form .whatsapp-test-provider-list label:hover:not(.is-unavailable){border-color:#72bea3;background:#f8fdfa}.whatsapp-audit-test-form .whatsapp-test-provider-list label:has(input:checked){border-color:var(--wa-green);background:var(--wa-soft);box-shadow:0 0 0 2px rgba(31,168,117,.1)}.whatsapp-audit-test-form .whatsapp-test-provider-list label.is-unavailable{cursor:not-allowed;opacity:.55}.whatsapp-audit-test-form .whatsapp-test-provider-list input[type="radio"]{appearance:none;display:grid;place-content:center;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;padding:0;background:#fff;border:2px solid #9abdaf;border-radius:50%;box-shadow:none;cursor:inherit}.whatsapp-audit-test-form .whatsapp-test-provider-list input[type="radio"]::before{width:8px;height:8px;background:var(--wa-green);border-radius:50%;content:"";transform:scale(0);transition:transform .14s ease}.whatsapp-audit-test-form .whatsapp-test-provider-list input[type="radio"]:checked{border-color:var(--wa-green)}.whatsapp-audit-test-form .whatsapp-test-provider-list input[type="radio"]:checked::before{transform:scale(1)}.whatsapp-audit-test-form .whatsapp-test-provider-list input[type="radio"]:focus-visible{outline:3px solid rgba(31,168,117,.2);outline-offset:2px}.whatsapp-test-provider-list span{display:grid;gap:3px;min-width:0}.whatsapp-test-provider-list b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.whatsapp-test-provider-list small{color:var(--muted);font-size:10px;font-weight:650;line-height:1.35}
.whatsapp-audit-warning{margin:0 24px 22px;padding:11px 13px;color:#8b5e13;background:#fff4d8;border:1px solid #efdda8;border-radius:10px;font-size:12px}
.whatsapp-audit-history{margin-bottom:18px;overflow:hidden}.whatsapp-audit-history>.admin-panel-title{margin:0;padding:19px 21px 14px;border-bottom:1px solid var(--line)}.whatsapp-audit-history>.admin-empty{background:#fbfcfd}.whatsapp-audit-table-viewport{width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.whatsapp-audit-table-viewport::-webkit-scrollbar{display:none}.whatsapp-audit-history .admin-table{width:max-content;min-width:100%;white-space:nowrap}.whatsapp-audit-history .admin-table td:last-child{max-width:none;overflow:visible;text-overflow:clip}.whatsapp-audit-scroll-control{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:end;gap:11px;padding:10px 16px 12px;background:#f6f8fb;border-bottom:1px solid var(--line)}.whatsapp-audit-scroll-control label{display:grid;gap:5px;min-width:0}.whatsapp-audit-scroll-control label>span{color:#657187;font-size:10px;font-weight:800;letter-spacing:.03em}.whatsapp-audit-scroll-control button{display:grid;place-items:center;width:38px;height:34px;padding:0;color:#fff;background:#385a99;border:0;border-radius:9px;font:800 26px/1 Arial,sans-serif;cursor:pointer}.whatsapp-audit-scroll-control button:disabled{color:#929bac;background:#dfe4ec;cursor:default}.whatsapp-audit-scroll-control input[type="range"]{appearance:none;width:100%;height:18px;margin:0;padding:0;background:transparent;cursor:ew-resize}.whatsapp-audit-scroll-control input[type="range"]:disabled{cursor:default}.whatsapp-audit-scroll-control input[type="range"]::-webkit-slider-runnable-track{height:9px;background:#d8dee9;border:1px solid #c4ccda;border-radius:999px}.whatsapp-audit-scroll-control input[type="range"]::-webkit-slider-thumb{appearance:none;width:22px;height:22px;margin-top:-7px;background:#385a99;border:3px solid #fff;border-radius:50%;box-shadow:0 1px 5px rgba(30,47,79,.35)}.whatsapp-audit-scroll-control input[type="range"]::-moz-range-track{height:9px;background:#d8dee9;border:1px solid #c4ccda;border-radius:999px}.whatsapp-audit-scroll-control input[type="range"]::-moz-range-thumb{width:17px;height:17px;background:#385a99;border:3px solid #fff;border-radius:50%;box-shadow:0 1px 5px rgba(30,47,79,.35)}.whatsapp-audit-history .admin-status.pending,.whatsapp-audit-history .admin-status.sending{color:#8b611c;background:#fff1cf}.whatsapp-audit-history .admin-status.sent,.whatsapp-audit-history .admin-status.delivered,.whatsapp-audit-history .admin-status.read{color:#176b50;background:#def5ea}.whatsapp-audit-history .admin-status.failed{color:#a43e48;background:#fde7e9}
@media(max-width:820px){.whatsapp-audit-test-form{grid-template-columns:1fr}.whatsapp-audit-send{width:100%}}
@media(max-width:700px){.whatsapp-audit-test-card{border-radius:14px}.whatsapp-audit-test-intro{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:18px 17px 15px}.whatsapp-audit-test-intro h2{font-size:19px;line-height:1.2}.whatsapp-audit-test-intro p{font-size:12px;line-height:1.45}.whatsapp-audit-mark{width:48px;height:48px;border-radius:15px}.whatsapp-audit-mark svg{width:26px;height:26px}.whatsapp-audit-health{grid-column:1/-1;width:max-content}.whatsapp-audit-safety{grid-template-columns:1fr;margin-inline:17px;padding:0}.whatsapp-audit-safety>span,.whatsapp-audit-safety>span:first-child,.whatsapp-audit-safety>span:last-child{padding:10px 0;border-right:0;border-bottom:1px solid rgba(31,168,117,.14)}.whatsapp-audit-safety>span:last-child{border-bottom:0}.whatsapp-audit-test-form{padding:16px 17px 19px}.whatsapp-test-provider-list{grid-template-columns:1fr}.whatsapp-audit-test-form>label{grid-template-columns:1fr}.whatsapp-audit-test-form .whatsapp-test-provider-list label{grid-template-columns:20px minmax(0,1fr);min-height:60px}.whatsapp-audit-test-form>label>small{display:none}.whatsapp-audit-warning{margin:0 17px 18px}.whatsapp-audit-history>.admin-panel-title{padding:16px 17px 12px}.whatsapp-audit-scroll-control{grid-template-columns:34px minmax(0,1fr) 34px;gap:8px;padding-inline:11px}.whatsapp-audit-scroll-control button{width:34px;height:32px}.whatsapp-audit-scroll-control label>span{font-size:9px}}

/* Progreso y control de la cola de WhatsApp en Avisos. */
.broadcast-whatsapp-progress{display:grid;gap:6px;min-width:230px;margin-top:9px;padding:10px;color:#24453b;background:#eef9f5;border:1px solid #cde9df;border-radius:10px;white-space:normal}.broadcast-whatsapp-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.broadcast-whatsapp-progress>div>b{font-size:11px}.broadcast-whatsapp-progress>div>span{color:#26745d;font-size:10px;font-weight:850}.broadcast-whatsapp-progress-track{display:block;height:7px;overflow:hidden;background:#d8ebe5;border-radius:999px}.broadcast-whatsapp-progress-track>i{display:block;height:100%;background:#25a778;border-radius:inherit;transition:width .28s ease}.broadcast-whatsapp-progress>small{color:#547168!important;font-size:9px!important;line-height:1.4}.broadcast-whatsapp-progress form{display:block;margin-top:2px}.broadcast-whatsapp-progress form[hidden]{display:none}.broadcast-whatsapp-stop{padding:6px 9px;color:#a33342;background:#fff;border:1px solid #e7bfc5;border-radius:8px;font:800 10px/1.2 inherit;cursor:pointer}.broadcast-whatsapp-stop:hover,.broadcast-whatsapp-stop:focus-visible{color:#fff;background:#b42335;border-color:#b42335;outline:0}

.broadcast-channel-list>label:has(input:checked){border-color:#86a8ef;background:#f1f5ff;box-shadow:0 0 0 2px rgba(49,91,216,.09)}.broadcast-channel-list>label:has(input[value="whatsapp"]:checked){color:#175f49;border-color:#79c9ad;background:#ebfaf4;box-shadow:0 0 0 2px rgba(31,168,117,.1)}

/* Mapa sereno: lienzo pastel y controles ligeros para todas las vistas locales. */
.taxi-passenger-map,.taxi-passenger-is-searching,.taxi-driver-map-dashboard{background:#a2d7ea}
.taxi-passenger-dashboard:not(.taxi-passenger-is-searching):not(.taxi-passenger-has-driver):not(.is-confirming-destination):not(.is-confirming-pickup):not(.is-choosing-driver) .taxi-passenger-map{filter:none;transform:none}
.taxi-passenger-raster-map,.taxi-pickup-raster-map,.taxi-destination-raster-map,.taxi-driver-raster-map,.taxi-driver-map.is-offline-map .taxi-driver-raster-map{background:#f6f4f4}
.taxi-passenger-map .leaflet-control-zoom,body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom{overflow:hidden;background:rgba(255,253,249,.92);border:1px solid rgba(89,101,103,.15);border-radius:14px;box-shadow:0 8px 24px rgba(54,70,72,.13);backdrop-filter:blur(10px)}
.taxi-passenger-map .leaflet-control-zoom a,body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom a{color:#536164;background:transparent;border-color:rgba(89,101,103,.12);transition:color .16s ease,background .16s ease}
.taxi-passenger-map .leaflet-control-zoom a:hover,.taxi-passenger-map .leaflet-control-zoom a:focus-visible,body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom a:hover,body.taxi-driver-dashboard-page .taxi-driver-raster-map .leaflet-control-zoom a:focus-visible{color:#214f49;background:#eef6f1;outline:0}
.taxi-passenger-map.is-destination-preview .leaflet-control-zoom,.taxi-passenger-dashboard.is-confirming-destination .taxi-passenger-map .leaflet-control-zoom{display:block}
.taxi-map-credit,.taxi-driver-offline-map-credit{color:#647174;background:rgba(255,253,249,.78);border:1px solid rgba(89,101,103,.09);border-radius:8px;box-shadow:0 4px 14px rgba(54,70,72,.08);backdrop-filter:blur(8px)}

/* Tiempo y distancia mantienen el mismo tono secundario en todo el viaje. */
.taxi-map-offer .taxi-offer-route-field em,
.taxi-driver-active-ride-inline .taxi-driver-trip-stop-distance,
.taxi-trip-progress-metrics,
.taxi-trip-progress-metrics strong{color:#929cab;font-weight:650;filter:none;opacity:1}

/* El acceso fijo a Ganancias no participa en la animación de entrada. */
body.taxi-rides-page main{animation:none!important;transform:none!important}

/* Controles del gráfico de ganancias. */
.taxi-earnings-chart-panel{margin:0 0 20px}
.taxi-earnings-average{display:grid;justify-items:end;gap:4px;flex:0 0 auto;text-align:right}
.taxi-earnings-average>small{color:#8a93a2;font-size:8px;font-weight:850;letter-spacing:.09em}
.taxi-earnings-average>span{color:#182235;font-size:20px;font-weight:850;line-height:1}
.taxi-earnings-average em{color:#8a93a2;font-size:8px;font-style:normal;letter-spacing:.08em}
.taxi-earnings-periods{display:flex;gap:5px;width:max-content;margin:14px 20px 0;padding:4px;background:#eef1f5;border-radius:12px}
.taxi-earnings-periods a{min-width:72px;padding:8px 13px;color:#677386;border-radius:9px;font-size:11px;font-weight:800;text-align:center}
.taxi-earnings-periods a.active{color:#2d2100;background:#ffc94a;box-shadow:0 3px 9px rgba(155,111,0,.18)}
@media(max-width:680px){.taxi-earnings-average>span{font-size:17px}.taxi-earnings-periods{width:calc(100% - 24px);margin:12px 12px 0}.taxi-earnings-periods a{flex:1;min-width:0;padding-inline:8px}}

/* Historial de ganancias sin insignia numérica y gráfico sin salto visual. */
.taxi-earnings-row{grid-template-columns:minmax(170px,1.2fr) minmax(145px,.72fr) minmax(145px,.72fr) minmax(130px,.64fr)}
.taxi-earnings-date{gap:0}
.taxi-earnings-chart-panel[aria-busy="true"]{cursor:progress}
.taxi-earnings-chart-panel[aria-busy="true"] .taxi-earnings-periods{opacity:.65;pointer-events:none}
@media(max-width:760px){.taxi-earnings-row{grid-template-columns:minmax(0,1fr) auto}}

/* Desglose claro de ganancias por método de cobro. */
.taxi-earnings-payment-summary{display:flex!important;align-items:stretch!important;flex-direction:column;flex-wrap:nowrap;gap:0!important;width:min(180px,100%);margin-top:15px!important;padding:3px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:11px}
.taxi-earnings-payment-summary>span{display:inline-grid;grid-template-columns:7px minmax(0,1fr) auto;grid-template-areas:"dot label amount";align-items:center;gap:7px;width:100%;min-width:0;padding:8px 10px;color:inherit;font-size:inherit;font-weight:inherit}
.taxi-earnings-payment-summary>span+span{border-top:1px solid rgba(255,255,255,.16)}
.taxi-earnings-payment-summary i,.taxi-earnings-payment-tags i{display:block;width:7px;height:7px;background:#47c99d;border-radius:50%}
.taxi-earnings-payment-summary .is-wallet i,.taxi-earnings-payment-tags .is-wallet i{background:#f4bc32}
.taxi-earnings-payment-summary small{grid-area:label;color:#aebaca;font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.taxi-earnings-payment-summary .is-cash small{color:#75dbb9}
.taxi-earnings-payment-summary .is-wallet small{color:#f4ca5d}
.taxi-earnings-payment-summary b{grid-area:amount;color:#fff;font-size:11px}
.taxi-earnings-payment-summary i{grid-area:dot}
.taxi-earnings-payment-tags{display:flex;align-items:stretch;flex-direction:column;gap:0;width:max-content;margin-top:6px}
.taxi-earnings-payment-tags>span{display:flex;align-items:center;gap:7px;min-width:72px;padding:4px 2px}
.taxi-earnings-payment-tags>span+span{border-top:1px solid #d9dee5}
.taxi-earnings-payment-tags i{flex:0 0 9px;width:9px;height:9px;background:#47c99d;border:1px solid rgba(20,97,73,.18);border-radius:50%;box-shadow:0 0 0 3px rgba(71,201,157,.1)}
.taxi-earnings-payment-tags .is-wallet i{background:#f4bc32;border-color:rgba(138,101,5,.18);box-shadow:0 0 0 3px rgba(244,188,50,.12)}
.taxi-earnings-payment-tags b{color:#344054;font-size:9px;font-weight:800}
@media(max-width:760px){.taxi-earnings-payment-summary{width:min(180px,100%);margin-top:13px!important}.taxi-earnings-payment-tags{align-self:flex-end}.taxi-earnings-row .taxi-earnings-day-amount{align-self:stretch}}

/* La media se representa dentro del área de barras. */
.taxi-earnings-chart{position:relative}
.taxi-earnings-average-line{position:absolute;z-index:3;right:7px;bottom:27px;left:7px;height:215px;pointer-events:none}
.taxi-earnings-average-line::before{position:absolute;right:0;bottom:calc(var(--earnings-average-height)*1%);left:0;border-top:2px dashed rgba(45,73,111,.72);content:""}
.taxi-earnings-average-line>b{position:absolute;right:4px;bottom:calc(var(--earnings-average-height)*1%);padding:3px 7px;color:#fff;background:#2d496f;border-radius:999px;box-shadow:0 3px 8px rgba(25,48,78,.18);font-size:8px;line-height:1.25;white-space:nowrap;transform:translateY(50%)}
@media(max-width:760px){.taxi-earnings-average-line{right:3px;left:3px;height:188px}.taxi-earnings-average-line>b{right:2px}}

/* Acceso discreto al histórico dentro del resumen de hoy. */
.taxi-rides-page .taxi-rides-history{padding-bottom:64px}
.taxi-earnings-overview::after{pointer-events:none}
.taxi-today-earnings-value-row{position:relative;z-index:1;align-items:center!important;flex-wrap:nowrap;width:100%}
.taxi-today-earnings-link{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;width:max-content;margin-left:auto;padding:8px 10px;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:9px;font-size:11px;font-weight:800;line-height:1.1;white-space:nowrap;transition:background .16s,border-color .16s}
.taxi-today-earnings-link svg{width:15px;height:15px;color:#ffc94a}
.taxi-today-earnings-link:hover,.taxi-today-earnings-link:focus-visible{color:#fff;background:rgba(255,255,255,.16);border-color:rgba(255,201,74,.42);outline:0}
@media(max-width:370px){.taxi-today-earnings-value-row{flex-wrap:wrap}.taxi-today-earnings-link{margin-top:8px;margin-left:0;padding:7px 9px}}

/* El panel del viaje activo se abre desde toda su superficie y avisa al replegarse. */
.taxi-passenger-driver-card.is-collapsed{cursor:pointer;touch-action:pan-x}
.taxi-passenger-panel-toggle,.taxi-passenger-status-head{touch-action:pan-x}
.taxi-passenger-driver-card.is-collapsed.is-collapse-hinting .taxi-passenger-sheet-handle{animation:taxiPassengerPanelHandleHint .72s ease both}
@keyframes taxiPassengerPanelHandleHint{0%,100%{width:42px;background:#d6dde7}55%{width:58px;background:#176bff}}
@media(prefers-reduced-motion:reduce){.taxi-passenger-driver-card.is-collapsed.is-collapse-hinting .taxi-passenger-sheet-handle{animation:none}}

/* El panel del taxista replica la interacción del panel del pasajero. */
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet{
  transition:max-height .3s cubic-bezier(.2,.75,.25,1),border-radius .3s ease,box-shadow .3s ease;
}
.taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet.is-collapsed{
  cursor:pointer;
  touch-action:pan-x;
}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-handle,
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-head{touch-action:pan-x}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{
  display:block!important;
  max-height:calc(72dvh - 80px);
  opacity:1;
  overflow:auto;
  transition:max-height .3s cubic-bezier(.2,.75,.25,1),padding .3s cubic-bezier(.2,.75,.25,1),opacity .18s ease;
}
.taxi-driver-bottom-stack.has-active-trip .taxi-driver-status-sheet.is-collapsed .taxi-driver-sheet-scroll{
  flex-basis:0;
  min-height:0;
  max-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  opacity:0;
  overflow:hidden;
  pointer-events:none;
}
.taxi-driver-status-sheet.is-collapse-hinting .taxi-driver-sheet-handle>span[aria-hidden]{
  animation:taxiPassengerPanelHandleHint .72s ease both;
}
@media(max-width:680px){
  .taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{
    max-height:calc(68dvh - 78px);
  }
}
@media(prefers-reduced-motion:reduce){
  .taxi-driver-bottom-stack.has-active-trip>.taxi-driver-status-sheet,
  .taxi-driver-bottom-stack.has-active-trip .taxi-driver-sheet-scroll{
    transition:none;
  }
  .taxi-driver-status-sheet.is-collapse-hinting .taxi-driver-sheet-handle>span[aria-hidden]{
    animation:none;
  }
}
.admin-taxi-passenger-review{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.admin-taxi-passenger-review:last-child{border-bottom:0}
.admin-taxi-passenger-review-main{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:11px;min-width:0}
.admin-taxi-passenger-review-main>span:last-child{display:grid}
.admin-taxi-passenger-review-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.admin-taxi-passenger-review-actions form{margin:0}
@media(max-width:720px){.admin-taxi-passenger-review{align-items:stretch;flex-direction:column}.admin-taxi-passenger-review-actions{display:grid;grid-template-columns:1fr 1fr}.admin-taxi-passenger-review-actions .button{width:100%;text-align:center}}
.taxi-referral-registration{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#f8faff}.taxi-referral-registration summary{padding:14px 16px;color:var(--blue);font-size:13px;font-weight:800;cursor:pointer}.taxi-referral-registration>div{padding:0 16px 16px}.taxi-referral-registration input{font-variant-numeric:tabular-nums;letter-spacing:.12em}.taxi-referral-profile-card{display:grid;gap:16px}.taxi-referral-profile-heading{display:flex;align-items:flex-start;gap:12px}.taxi-referral-profile-heading>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:#176bff;background:#eaf1ff;border-radius:13px}.taxi-referral-profile-heading svg{width:21px;height:21px}.taxi-referral-profile-heading div{display:grid;gap:3px}.taxi-referral-profile-heading small{color:#176bff;font-size:9px;font-weight:900;letter-spacing:.1em}.taxi-referral-profile-heading h2,.taxi-referral-profile-heading p{margin:0}.taxi-referral-profile-heading p{color:var(--muted);font-size:12px;line-height:1.45}.taxi-referral-open-button{min-height:58px;padding:14px 18px;color:#fff;background:linear-gradient(135deg,#22a85a,#14833f);border:1px solid #147a3c;border-radius:14px;font-size:15px;font-weight:900;letter-spacing:.01em;box-shadow:0 11px 23px rgba(20,131,63,.28)}.taxi-referral-open-button svg{width:24px;height:24px}.taxi-referral-open-button:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#1d984f,#106f35);box-shadow:0 14px 27px rgba(20,131,63,.36);transform:translateY(-1px)}.taxi-referral-open-button:focus-visible{outline:3px solid rgba(34,168,90,.3);outline-offset:3px}.taxi-referral-open-button:active:not(:disabled){transform:translateY(0)}.taxi-referral-dialog-card{width:min(440px,calc(100vw - 28px));text-align:center}.taxi-referral-dialog-card>.profile-change-heading{text-align:left}.taxi-referral-dialog-card>p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.taxi-referral-dialog-card>img{display:block;width:min(280px,100%);height:auto;margin:2px auto;padding:10px;background:#fff;border:1px solid var(--line);border-radius:18px}.taxi-referral-dialog-card>strong{font-size:34px;letter-spacing:.12em;font-variant-numeric:tabular-nums}.taxi-referral-dialog-card>.taxi-referral-code-explanation{max-width:360px;margin:-5px auto 0;color:#334155}.taxi-referral-copy-status{min-height:20px}.taxi-referral-dialog-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.taxi-referral-dialog-actions .button{margin:0;padding-inline:10px}@media(max-width:520px){.taxi-referral-dialog-actions{grid-template-columns:1fr}.taxi-referral-dialog-card>strong{font-size:30px}}
.taxi-referral-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.taxi-referral-dialog[open]{position:fixed;inset:0;display:grid;place-items:center;box-sizing:border-box;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:14px;overflow:hidden}.taxi-referral-dialog-card{box-sizing:border-box;width:min(440px,100%);max-height:calc(100dvh - 28px);margin:0 auto;overflow:auto}
.taxi-referral-profile-heading>div{min-width:0;flex:1}.taxi-referral-profile-title{display:flex!important;grid-template-columns:none!important;align-items:center;justify-content:space-between;gap:9px!important}.taxi-referral-info-button{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:0;color:#fff;background:#176bff;border:1px solid #fff;border-radius:50%;box-shadow:0 3px 8px rgba(23,107,255,.28);cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}.taxi-referral-info-button>span{display:block;font-family:Georgia,"Times New Roman",serif;font-size:17px;font-weight:900;font-style:normal;line-height:1;transform:translateY(-1px)}.taxi-referral-info-button:hover{background:#0d54d8;transform:translateY(-1px);box-shadow:0 4px 10px rgba(23,107,255,.36)}.taxi-referral-info-button:focus-visible{outline:3px solid rgba(23,107,255,.28);outline-offset:2px}.taxi-referral-info-card{width:min(430px,calc(100vw - 28px));gap:18px}.taxi-referral-info-card>ol{display:grid;gap:16px;margin:0;padding:0;list-style:none}.taxi-referral-info-card>ol li{display:flex;align-items:flex-start;gap:12px}.taxi-referral-info-card>ol li>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;color:#fff;background:#168b4a;border-radius:50%;font-size:13px;font-weight:900}.taxi-referral-info-card>ol li>div{display:grid;gap:4px;padding-top:2px}.taxi-referral-info-card>ol b{color:var(--navy);font-size:15px}.taxi-referral-info-card>ol p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.taxi-referral-info-condition{display:flex;align-items:flex-start;gap:11px;padding:14px;color:#194d35;background:#eef9f3;border:1px solid #bfe5cf;border-radius:12px}.taxi-referral-info-condition>svg{flex:0 0 21px;width:21px;height:21px;color:#168b4a}.taxi-referral-info-condition p{margin:0;font-size:13px;line-height:1.6}.taxi-referral-info-condition b{display:block;margin-bottom:3px;font-size:14px}
.admin-taxi-communications-tabs{display:inline-grid;grid-template-columns:repeat(2,132px);gap:7px;width:max-content;max-width:100%;margin:0 0 20px;padding:6px;overflow-x:auto;background:#fff;border:1px solid #e6dfca;border-radius:14px;box-shadow:0 5px 16px rgba(16,25,53,.06)}
.admin-taxi-communications-tabs a{display:grid;place-items:center;width:132px;min-height:46px;padding:10px 12px;color:#5d6472;border-radius:10px;font-size:14px;font-weight:850;text-align:center;white-space:nowrap}
.admin-taxi-communications-tabs a:hover,.admin-taxi-communications-tabs a.is-current{color:#171100;background:#fff2c5}
.admin-taxi-communications-shell{padding-top:30px;padding-bottom:0}
.admin-taxi-communications-shell .admin-taxi-communications-tabs{margin-bottom:0}
.admin-taxi-list-tabs{display:inline-grid;grid-template-columns:repeat(4,108px);gap:5px;width:max-content;max-width:100%;margin:0;padding:5px;overflow-x:auto;background:#fff;border:1px solid #e6dfca;border-radius:12px;box-shadow:0 5px 16px rgba(16,25,53,.06)}
.admin-taxi-list-tabs a{display:grid;place-items:center;width:108px;min-height:36px;padding:7px 8px;color:#5d6472;border-radius:8px;font-size:11px;font-weight:800;text-align:center;white-space:nowrap}
.admin-taxi-list-tabs a:hover,.admin-taxi-list-tabs a.is-current{color:#171100;background:#fff2c5}
.admin-taxi-list-shell{padding-top:30px;padding-bottom:0}
.admin-email-secondary-navigation{display:grid;grid-template-columns:minmax(0,1fr);gap:15px;margin:-4px 0 20px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 16px rgba(16,25,53,.05)}
.admin-email-navigation-group{display:grid;grid-template-columns:minmax(180px,230px) minmax(0,1fr);align-items:center;gap:16px}
.admin-email-navigation-group+.admin-email-navigation-group{padding-top:15px;border-top:1px solid var(--line)}
.admin-email-navigation-group>div{display:grid;gap:3px}.admin-email-navigation-group>div small{color:#52617a;font-size:11px;font-weight:850;letter-spacing:.06em}.admin-email-navigation-group>div p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}
.admin-email-profile-tabs,.admin-taxi-workspace .admin-email-tabs{display:grid;grid-template-columns:repeat(3,minmax(125px,1fr));gap:8px;width:100%;margin:0;padding:0;background:transparent;border:0;border-radius:0}
.admin-taxi-workspace .admin-email-navigation-group.is-view-selector .admin-email-tabs{grid-template-columns:repeat(2,minmax(150px,1fr))}
.admin-email-profile-tabs a,.admin-taxi-workspace .admin-email-tabs a{display:grid;gap:2px;min-height:58px;padding:10px 12px;color:#5f6c81;background:#f5f7fa;border:1px solid #e1e6ed;border-radius:10px;box-shadow:none;text-align:left}
.admin-email-profile-tabs a b,.admin-taxi-workspace .admin-email-tabs a b{font-size:13px}.admin-email-profile-tabs a span,.admin-taxi-workspace .admin-email-tabs a span{color:#8994a6;font-size:10px;font-weight:650}
.admin-email-profile-tabs a:hover,.admin-email-profile-tabs a.active,.admin-taxi-workspace .admin-email-tabs a:hover,.admin-taxi-workspace .admin-email-tabs a.active{color:#182640;background:#fff7d9;border-color:#e3c75e;box-shadow:none}
.admin-email-profile-tabs a.active span,.admin-taxi-workspace .admin-email-tabs a.active span{color:#6e6240}
.admin-email-account-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px;padding:15px 17px;color:#27344b;background:#fff8dc;border:1px solid #e6cb69;border-radius:12px}.admin-email-account-context>div{display:grid;gap:3px}.admin-email-account-context small{color:#7b651d;font-size:9px;font-weight:900;letter-spacing:.09em}.admin-email-account-context strong{font-size:16px}.admin-email-account-context p{margin:0;color:#596579;font-size:12px;line-height:1.45}.admin-email-account-context>span{flex:0 0 auto;padding:7px 10px;color:#695817;background:#fff;border:1px solid #eadc9f;border-radius:8px;font-size:10px;font-weight:800}
.promotion-workspace .promotion-workspace-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:-5px 0 18px;padding:5px;background:#f3f6fa;border:1px solid #dfe6ef;border-radius:14px}
.promotion-workspace .promotion-workspace-nav::before{content:"Dentro de Promociones:";padding:0 9px;color:#66758b;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.promotion-workspace .promotion-workspace-nav a{justify-content:center;min-width:116px;min-height:44px;padding:10px 16px;color:#52627a;background:transparent;border:1px solid transparent;border-radius:10px;box-shadow:none;font-size:14px;font-weight:850}
.promotion-workspace .promotion-workspace-nav a:hover,.promotion-workspace .promotion-workspace-nav a:focus-visible,.promotion-workspace .promotion-workspace-nav a.is-current{color:#24334d;background:transparent;border-bottom-color:#d3a719;box-shadow:none}
@media(max-width:760px){.admin-email-navigation-group{grid-template-columns:1fr}.admin-email-navigation-group>div p{max-width:440px}}
@media(max-width:560px){.admin-taxi-communications-tabs{max-width:calc(100vw - 40px)}.admin-email-secondary-navigation{padding:13px}.admin-email-profile-tabs,.admin-taxi-workspace .admin-email-navigation-group.is-view-selector .admin-email-tabs{grid-template-columns:1fr}.admin-email-profile-tabs a,.admin-taxi-workspace .admin-email-tabs a{min-height:54px}.admin-email-account-context{align-items:flex-start;flex-direction:column}.admin-email-account-context>span{flex-basis:auto}.promotion-workspace .promotion-workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.promotion-workspace .promotion-workspace-nav::before{grid-column:1/-1;padding:3px 6px}.promotion-workspace .promotion-workspace-nav a{min-width:0;padding:10px 7px;font-size:13px}}
.taxi-promotion-tracking-table-wrap{overflow:auto;border:1px solid #e1e6ed;border-radius:12px}.taxi-promotion-tracking-table{width:100%;min-width:820px;border-collapse:collapse;background:#fff}.taxi-promotion-tracking-table th{padding:11px 13px;color:#69768a;background:#f6f8fb;border-bottom:1px solid #e1e6ed;font-size:9px;font-weight:850;letter-spacing:.05em;text-align:left;text-transform:uppercase}.taxi-promotion-tracking-table td{padding:12px 13px;border-bottom:1px solid #e8ecf2;font-size:11px;vertical-align:middle}.taxi-promotion-tracking-table tbody tr:last-child td{border-bottom:0}.taxi-promotion-tracking-table tbody tr:hover{background:#fafcff}.taxi-promotion-tracking-table td>strong,.taxi-promotion-tracking-table td>small{display:block}.taxi-promotion-tracking-table td>strong{color:#182640;font-size:12px}.taxi-promotion-tracking-table td>small{margin-top:3px;color:#748095;font-size:9px}.taxi-promotion-tracking-table .promotion-state{padding:5px 8px;font-size:9px}.taxi-promotion-tracking-detail-button{padding:7px 9px;color:#2c5da8;background:#edf3fc;border:1px solid #d5e1f3;border-radius:8px;font:inherit;font-size:10px;font-weight:800;white-space:nowrap;cursor:pointer}.taxi-promotion-tracking-detail-button:hover,.taxi-promotion-tracking-detail-button:focus-visible{background:#e2ecfa;border-color:#b8cbea;outline:0}.taxi-promotion-tracking-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:hidden;background:transparent;border:0}.taxi-promotion-tracking-dialog::backdrop{background:rgba(7,14,30,.65);backdrop-filter:blur(4px)}.taxi-promotion-tracking-dialog>article{display:grid;max-height:calc(100dvh - 24px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 90px rgba(7,14,30,.35)}.taxi-promotion-tracking-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e5e9f0}.taxi-promotion-tracking-dialog header small,.taxi-promotion-tracking-association>small,.taxi-promotion-tracking-campaign>small{color:#426aaf;font-size:9px;font-weight:900;letter-spacing:.09em}.taxi-promotion-tracking-dialog h2{margin:4px 0 3px;font-size:22px}.taxi-promotion-tracking-dialog header p{margin:0;color:#6b778a;font-size:11px}.taxi-promotion-tracking-dialog header button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;color:#667286;background:#f0f3f7;border:0;border-radius:10px;font-size:22px;cursor:pointer}.taxi-promotion-tracking-dialog-body{display:grid;gap:13px;padding:18px 22px}.taxi-promotion-tracking-association,.taxi-promotion-tracking-campaign{display:grid;gap:4px;padding:13px 14px;background:#f6f8fb;border:1px solid #e3e8ef;border-radius:11px}.taxi-promotion-tracking-association strong,.taxi-promotion-tracking-campaign strong{color:#192b49;font-size:14px}.taxi-promotion-tracking-association span,.taxi-promotion-tracking-campaign span{color:#6a7689;font-size:10px;line-height:1.45}.taxi-promotion-tracking-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.taxi-promotion-tracking-detail-grid>div{padding:11px;background:#fff;border:1px solid #e4e9f0;border-radius:10px}.taxi-promotion-tracking-detail-grid dt{color:#718096;font-size:9px}.taxi-promotion-tracking-detail-grid dd{margin:4px 0 0;color:#172b4b;font-size:14px;font-weight:850}.taxi-promotion-tracking-balances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.taxi-promotion-tracking-balances span{display:grid;gap:3px;padding:10px;color:#647087;background:#f5f7fa;border:1px solid #e3e8ef;border-radius:9px;font-size:10px;font-weight:750}.taxi-promotion-tracking-balances b{color:#192b49;font-size:13px}.taxi-promotion-tracking-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid #e5e9f0}.taxi-promotion-tracking-dialog footer .button{min-height:40px;padding:9px 13px}@media(max-width:600px){.taxi-promotion-tracking-dialog header,.taxi-promotion-tracking-dialog-body,.taxi-promotion-tracking-dialog footer{padding-right:15px;padding-left:15px}.taxi-promotion-tracking-detail-grid{grid-template-columns:1fr 1fr}.taxi-promotion-tracking-balances{grid-template-columns:1fr}.taxi-promotion-tracking-dialog footer{display:grid;grid-template-columns:1fr 1fr}.taxi-promotion-tracking-dialog footer .button{width:100%}}
.taxi-promotion-tracking .taxi-promotion-tracking-table-wrap.admin-table-wrap{padding:0;overflow-x:auto;border:1px solid #dfe5ee;border-radius:14px;box-shadow:0 4px 14px rgba(25,43,73,.04)}
.taxi-promotion-tracking .taxi-promotion-tracking-table{width:100%;min-width:900px;table-layout:fixed;border-collapse:separate;border-spacing:0;white-space:normal}
.taxi-promotion-tracking-table .taxi-tracking-col-passenger{width:22%}.taxi-promotion-tracking-table .taxi-tracking-col-associated{width:22%}.taxi-promotion-tracking-table .taxi-tracking-col-promotion{width:13%}.taxi-promotion-tracking-table .taxi-tracking-col-rides{width:12%}.taxi-promotion-tracking-table .taxi-tracking-col-total{width:17%}.taxi-promotion-tracking-table .taxi-tracking-col-action{width:14%}
.taxi-promotion-tracking .taxi-promotion-tracking-table th{padding:13px 16px;color:#66758b;background:#f5f7fa;border-bottom:1px solid #dfe5ee;font-size:10px;line-height:1.3;letter-spacing:.07em;white-space:nowrap}
.taxi-promotion-tracking .taxi-promotion-tracking-table td,.taxi-promotion-tracking .taxi-promotion-tracking-table td:first-child{display:table-cell;padding:16px;border-top:0;border-bottom:1px solid #e7ebf1;font-size:13px;line-height:1.35;vertical-align:middle}
.taxi-promotion-tracking .taxi-promotion-tracking-table tbody tr:last-child td{border-bottom:0}.taxi-promotion-tracking .taxi-promotion-tracking-table tbody tr:nth-child(even){background:#fbfcfe}.taxi-promotion-tracking .taxi-promotion-tracking-table tbody tr:hover{background:#f6f9fd}
.taxi-promotion-tracking .taxi-promotion-tracking-table td>strong{display:block;overflow:hidden;color:#172640;font-size:14px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-promotion-tracking .taxi-promotion-tracking-table td>small{display:block;margin-top:4px;color:#758196;font-size:11px;line-height:1.35}
.taxi-promotion-tracking .taxi-tracking-number>strong{font-variant-numeric:tabular-nums}.taxi-promotion-tracking .taxi-tracking-total>strong{color:#153f75;font-size:15px}.taxi-promotion-tracking .taxi-tracking-action{text-align:right}.taxi-promotion-tracking .taxi-promotion-tracking-table th:last-child{text-align:right}
.taxi-promotion-tracking .taxi-promotion-tracking-detail-button.button{display:inline-flex;width:auto;min-height:38px;padding:8px 12px;color:#244f86;background:#edf3fb;border-color:#d1deef;border-radius:9px;box-shadow:none;font-size:11px;font-weight:850}.taxi-promotion-tracking .taxi-promotion-tracking-detail-button.button:hover,.taxi-promotion-tracking .taxi-promotion-tracking-detail-button.button:focus-visible{color:#173e72;background:#e3edf9;border-color:#afc4df}
@media(max-width:700px){.taxi-promotion-tracking .taxi-promotion-tracking-table{min-width:780px}.taxi-promotion-tracking .taxi-promotion-tracking-table th{padding:11px 13px}.taxi-promotion-tracking .taxi-promotion-tracking-table td,.taxi-promotion-tracking .taxi-promotion-tracking-table td:first-child{padding:13px}}
@media(max-width:560px){.admin-taxi-list-tabs{max-width:calc(100vw - 40px)}}

/* Lista privada y discreta de pasajeros recomendados por el taxista. */
.taxi-referred-passengers{margin-top:-5px;text-align:center}
.taxi-account-shell>.taxi-referral-profile-card{margin-top:18px}
.taxi-referred-passengers summary{display:inline-flex;align-items:center;justify-content:center;padding:3px 6px;color:#748095;font-size:11px;font-weight:750;cursor:pointer;list-style:none;text-decoration:underline;text-decoration-color:#c7ced8;text-underline-offset:3px}
.taxi-referred-passengers summary::-webkit-details-marker{display:none}
.taxi-referred-passengers summary:hover,.taxi-referred-passengers summary:focus-visible{color:#41506a;text-decoration-color:#7f8ba0;outline:0}
.taxi-referred-passenger-list{display:grid;gap:8px;margin-top:10px;padding-top:12px;border-top:1px solid var(--line);text-align:left}
.taxi-referred-passenger{display:flex;align-items:center;gap:10px;padding:7px 8px;background:#f8fafc;border-radius:11px}
.taxi-referred-passenger>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;overflow:hidden;color:#536179;background:#e5eaf1;border-radius:50%;font-size:13px;font-weight:850}
.taxi-referred-passenger img{width:100%;height:100%;object-fit:cover}
.taxi-referred-passenger>div{display:grid;gap:3px;min-width:0}.taxi-referred-passenger b{min-width:0;color:var(--navy);font-size:13px;line-height:1.3;overflow-wrap:anywhere}.taxi-referred-passenger small{width:max-content;padding:2px 7px;color:#8f4650;background:#f8e7e9;border-radius:999px;font-size:9px;font-weight:850}.taxi-referred-passenger.is-removed{background:#f7f7f8}.taxi-referred-passenger.is-removed>span{filter:grayscale(1);opacity:.65}.taxi-referred-passenger.is-removed b{color:#68758a}.taxi-referred-passenger>form{margin:0 0 0 auto}.taxi-referred-passenger>form button{padding:5px 7px;color:#8f4650;background:transparent;border:0;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.taxi-referred-passenger>form button:hover,.taxi-referred-passenger>form button:focus-visible{color:#6f2831;text-decoration:underline;outline:0}
.taxi-referred-passenger-list>p{margin:0;padding:5px 0;color:var(--muted);font-size:12px;text-align:center}

/* Mantiene los vehículos orientados hacia el contenido y alinea Comfort con Carro. */
.taxi-passenger-pill-vehicle-visual img{transform:scaleX(-1)}
.taxi-passenger-pill-vehicle-visual img[data-vehicle-type="comfort"]{transform:translateY(2px) scaleX(-1)}
.taxi-passenger-vehicle-listbox>[data-taxi-vehicle-choice="comfort"] .taxi-passenger-vehicle-option-visual>img{width:70px;height:auto;transform:translateY(4px) scaleX(-1)}

/* La solicitud Comfort identifica el vehículo y usa una confirmación inequívoca. */
.taxi-comfort-vehicle-context{display:flex;align-items:center;gap:12px;padding:13px 14px;background:#fff;border:1px solid #eadfbf;border-radius:12px}
.taxi-comfort-vehicle-context>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:#755500;background:#ffe9a6;border-radius:12px}
.taxi-comfort-vehicle-context svg{width:24px;height:24px}
.taxi-comfort-vehicle-context>div{display:grid;gap:3px;min-width:0}
.taxi-comfort-vehicle-context small{color:#8b6812;font-size:9px;font-weight:900;letter-spacing:.07em;line-height:1.35}
.taxi-comfort-vehicle-context strong{color:var(--navy);font-size:15px;overflow-wrap:anywhere}
.taxi-comfort-vehicle-context p{margin:0;color:var(--muted);font-size:11px;line-height:1.4}
.taxi-comfort-request-form{display:grid;gap:12px}
.taxi-comfort-confirm{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:11px;padding:14px;color:var(--navy);background:#fff;border:1px solid #d8dfe8;border-radius:12px;cursor:pointer}
.taxi-comfort-confirm:hover{border-color:#d2ad32;background:#fffdf6}
.taxi-comfort-confirm input{position:absolute;width:1px;height:1px;opacity:0}
.taxi-comfort-confirm>i{display:grid;place-items:center;box-sizing:border-box;width:24px;height:24px;color:transparent;background:#fff;border:2px solid #aeb7c5;border-radius:7px;font-size:14px;font-style:normal;font-weight:900;transition:.16s}
.taxi-comfort-confirm>span{display:grid;gap:4px}
.taxi-comfort-confirm b{font-size:13px;line-height:1.35}
.taxi-comfort-confirm small{color:var(--muted);font-size:11px;line-height:1.5}
.taxi-comfort-confirm input:checked+i{color:#fff;background:#168b4a;border-color:#168b4a}
.taxi-comfort-confirm input:focus-visible+i{outline:3px solid rgba(22,139,74,.22);outline-offset:2px}
.taxi-comfort-request-form>.button{justify-self:start}
@media(max-width:560px){.taxi-comfort-request-form>.button{width:100%}.taxi-comfort-vehicle-context{align-items:flex-start}}

/* Comfort en el registro: separación clara y switch estable en cualquier ancho. */
.taxi-registration-comfort-request{align-items:flex-start;gap:14px;margin-top:26px;padding:16px 15px;background:#fffaf0;border:1px solid #ead79f;box-shadow:0 4px 12px rgba(117,85,0,.06);cursor:pointer}
.taxi-registration-comfort-request>span{flex:1 1 auto;gap:5px;min-width:0;padding-top:1px}
.taxi-registration-comfort-request>span b{color:var(--navy);font-size:13px;line-height:1.35}
.taxi-registration-comfort-request>span small{color:#74633c;font-size:11px;line-height:1.5}
.taxi-registration-comfort-request>i{flex:0 0 48px;box-sizing:border-box;width:48px;height:28px;margin:0;background:#c6ccd6;border:1px solid #afb7c3;box-shadow:inset 0 1px 2px rgba(16,25,53,.08)}
.taxi-registration-comfort-request>i::after{top:3px;left:3px;width:20px;height:20px}
.taxi-registration-comfort-request input:checked+i{background:#d6a900;border-color:#bd9200}
.taxi-registration-comfort-request input:checked+i::after{transform:translateX(20px)}
.taxi-registration-comfort-request input:focus-visible+i{outline:3px solid rgba(214,169,0,.25);outline-offset:2px}
@media(max-width:480px){.taxi-registration-comfort-request{gap:11px;margin-top:22px;padding:14px 13px}.taxi-registration-comfort-request>i{flex-basis:48px}}

/* Revisión Comfort discreta y compacta dentro de la cuenta. */
.admin-comfort-review{padding:0;overflow:hidden;background:#f3faf6;border-color:#cfe5d8;box-shadow:var(--shadow-soft)}
.admin-comfort-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px 12px;background:#eef8f2;border-bottom:1px solid #d6e8dd}
.admin-comfort-header>div{display:grid;gap:3px;min-width:0}
.admin-comfort-header h2{margin:0;color:var(--navy);font-size:16px;line-height:1.25}
.admin-comfort-header p{margin:0;color:var(--muted);font-size:10px;line-height:1.4}
.admin-comfort-header>.admin-status{flex:0 0 auto;padding:5px 8px;font-size:9px}
.admin-comfort-body{display:grid;gap:11px;padding:13px 18px 16px}
.admin-comfort-guidance{margin:0;color:#687386;font-size:11px;line-height:1.55}
.admin-comfort-guidance b{color:#45536a}
.admin-comfort-review-note{margin:0;padding:9px 11px;color:#5e7167;background:#e8f4ed;border:1px solid #d8e9df;border-radius:8px;font-size:10px;line-height:1.45}
.admin-comfort-review-note b{color:#4a566b}
.admin-comfort-actions{display:grid;grid-template-columns:auto minmax(260px,1fr);align-items:end;gap:10px;padding-top:2px}
.admin-comfort-approve{margin:0}
.admin-comfort-approve>.button{min-height:38px;padding:8px 15px;white-space:nowrap;box-shadow:none}
.admin-comfort-reject,.admin-comfort-revoke{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin:0}
.admin-comfort-reject label,.admin-comfort-revoke label{display:grid;grid-column:1/-1;gap:4px;color:#556176;font-size:10px;font-weight:750}
.admin-comfort-reject textarea,.admin-comfort-revoke textarea{box-sizing:border-box;width:100%;min-height:38px;height:38px;padding:9px 10px;resize:vertical;color:var(--navy);background:#fff;border:1px solid #d9dfe7;border-radius:9px;font:inherit;font-size:10px;line-height:1.4;outline:0}
.admin-comfort-reject textarea:focus,.admin-comfort-revoke textarea:focus{border-color:#7890b4;box-shadow:0 0 0 3px rgba(74,125,242,.09)}
.admin-comfort-reject>.button,.admin-comfort-revoke>.button{min-height:38px;padding:8px 13px;white-space:nowrap}
.admin-comfort-actions.is-rejected{grid-template-columns:auto minmax(0,1fr);align-items:center;padding-top:0}
.admin-comfort-override-note{color:#7a8494;font-size:10px;line-height:1.4}
.admin-comfort-revoke{padding-top:2px}
.admin-comfort-inline{display:grid;gap:8px;padding:12px 13px;background:#f7f8fa;border:1px solid #e1e5eb;border-radius:10px}
.admin-comfort-inline>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-comfort-inline>div:first-child>b{font-size:12px}.admin-comfort-inline .admin-status{padding:4px 7px;font-size:8px}
.admin-comfort-inline>p,.admin-comfort-inline>small{margin:0;color:#6c7687;font-size:10px;line-height:1.45}.admin-comfort-inline>small b{color:#4a566b}
.admin-comfort-inline-actions{display:grid!important;grid-template-columns:auto minmax(240px,1fr);align-items:end!important;justify-content:initial!important;gap:9px!important}.admin-comfort-inline-actions form{margin:0}.admin-comfort-inline-actions>form:first-child .button{min-height:38px;white-space:nowrap}.admin-comfort-inline-actions>form+form,.admin-comfort-inline-revoke{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.admin-comfort-inline-actions label,.admin-comfort-inline-revoke label{display:grid;grid-column:1/-1;gap:4px;color:#566176;font-size:10px;font-weight:750}.admin-comfort-inline textarea{box-sizing:border-box;width:100%;height:38px;min-height:38px;padding:9px 10px;resize:vertical;background:#fff;border:1px solid #d9dfe7;border-radius:9px;font:inherit;font-size:10px}.admin-comfort-inline-actions>form+form .button,.admin-comfort-inline-revoke .button{min-height:38px;white-space:nowrap}
@media(max-width:680px){.admin-comfort-actions,.admin-comfort-actions.is-rejected,.admin-comfort-reject,.admin-comfort-revoke{grid-template-columns:1fr}.admin-comfort-approve>.button,.admin-comfort-reject>.button,.admin-comfort-revoke>.button{width:100%}.admin-comfort-override-note{grid-row:1}.admin-comfort-header{padding:14px 15px 11px}.admin-comfort-body{padding:12px 15px 14px}}
@media(max-width:680px){.admin-comfort-inline-actions,.admin-comfort-inline-actions>form+form,.admin-comfort-inline-revoke{grid-template-columns:1fr}.admin-comfort-inline-actions .button,.admin-comfort-inline-revoke .button{width:100%}}

/* Confirmación final del viaje del pasajero */
.taxi-trip-summary-dialog{box-sizing:border-box;width:min(480px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:visible;background:transparent;border:0}.taxi-trip-summary-dialog::backdrop{background:rgba(5,13,28,.68);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.taxi-trip-summary-dialog[open]{animation:taxiTripSummaryOpen .24s cubic-bezier(.2,.8,.2,1) both}.taxi-trip-summary-card{display:grid;gap:16px;padding:24px;color:#101828;background:#fff;border:1px solid rgba(255,255,255,.8);border-radius:26px;box-shadow:0 28px 90px rgba(3,12,28,.42)}.taxi-trip-summary-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.taxi-trip-summary-card>header small{color:#176bff;font-size:9px;font-weight:900;letter-spacing:.13em}.taxi-trip-summary-card>header h2{margin:4px 0 0;color:#0b1730;font-size:27px;line-height:1.05;letter-spacing:-.04em}.taxi-trip-summary-card>header button{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;color:#6c7788;background:#f1f4f8;border:0;border-radius:12px;font-size:25px;line-height:1;cursor:pointer}.taxi-trip-summary-card>header button:hover{color:#111827;background:#e8edf4}.taxi-trip-summary-price{display:grid;justify-items:center;padding:18px 16px 17px;color:#fff;text-align:center;background:linear-gradient(145deg,#081426,#102c4b);border:1px solid #1f4267;border-radius:20px;box-shadow:0 12px 30px rgba(6,24,47,.2)}.taxi-trip-summary-price>span{color:#b7c8dc;font-size:10px;font-weight:800;letter-spacing:.04em}.taxi-trip-summary-price>strong{margin:4px 0 3px;color:#fff;font-size:34px;font-weight:900;line-height:1;letter-spacing:-.045em}.taxi-trip-summary-price>strong small{color:#ffc94a;font-size:11px;font-weight:900;letter-spacing:.08em}.taxi-trip-summary-price>em{max-width:300px;color:#9fb1c5;font-size:9px;font-style:normal;line-height:1.4}.taxi-trip-summary-route{display:grid;padding:3px 0}.taxi-trip-summary-route>div{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;align-items:start;min-height:52px}.taxi-trip-summary-route>div:first-child::after{position:absolute;top:18px;bottom:-1px;left:6px;width:2px;background:#dce3ec;content:""}.taxi-trip-summary-route i{position:relative;z-index:1;box-sizing:border-box;width:14px;height:14px;margin-top:3px;background:#176bff;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #176bff}.taxi-trip-summary-route .is-destination i{background:#ffc94a;box-shadow:0 0 0 2px #d99b00}.taxi-trip-summary-route span{display:grid;gap:3px;min-width:0;padding-bottom:12px;border-bottom:1px solid #e7ebf0}.taxi-trip-summary-route .is-destination span{padding-bottom:0;border-bottom:0}.taxi-trip-summary-route small,.taxi-trip-summary-vehicle small{color:#7b8798;font-size:8px;font-weight:900;letter-spacing:.11em}.taxi-trip-summary-route strong{overflow:hidden;color:#111827;font-size:13px;font-weight:750;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.taxi-trip-summary-vehicle{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;background:#f5f7fa;border:1px solid #e1e6ed;border-radius:16px}.taxi-trip-summary-vehicle-image{display:grid;place-items:center;width:62px;height:42px}.taxi-trip-summary-vehicle-image img{display:block;width:62px;height:42px;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(17,24,39,.17));transform:scaleX(-1)}.taxi-trip-summary-vehicle-image img[hidden]{display:none}.taxi-trip-summary-vehicle>span:nth-child(2){display:grid;gap:3px}.taxi-trip-summary-vehicle strong{font-size:14px}.taxi-trip-summary-vehicle>em{color:#667386;font-size:9px;font-style:normal;font-weight:700;white-space:nowrap}.taxi-trip-summary-error{margin:-5px 0 0;padding:9px 11px;color:#9b2430;background:#fff0f1;border:1px solid #f3c7cc;border-radius:11px;font-size:10px;font-weight:700;line-height:1.4;text-align:center}.taxi-trip-summary-error[hidden]{display:none}.taxi-trip-summary-actions{display:grid;grid-template-columns:104px minmax(0,1fr);gap:10px}.taxi-trip-summary-actions button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:11px 16px;border-radius:14px;font:inherit;font-size:13px;font-weight:850;cursor:pointer}.taxi-trip-summary-actions .is-back{color:#354257;background:#f2f4f7;border:1px solid #dce2ea}.taxi-trip-summary-actions .is-confirm{color:#fff;background:#176bff;border:1px solid #0b59d7;box-shadow:0 9px 20px rgba(23,107,255,.25)}.taxi-trip-summary-actions .is-confirm:hover{background:#0d5ce0}.taxi-trip-summary-actions .is-confirm svg{width:16px;height:16px}.taxi-trip-summary-actions .is-confirm:disabled{cursor:wait;opacity:.72}.taxi-trip-summary-actions button:focus-visible,.taxi-trip-summary-card>header button:focus-visible{outline:3px solid rgba(23,107,255,.25);outline-offset:2px}@keyframes taxiTripSummaryOpen{from{opacity:0;transform:translateY(12px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:520px){.taxi-trip-summary-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.taxi-trip-summary-card{gap:13px;padding:20px 17px 17px;border-radius:23px}.taxi-trip-summary-card>header h2{font-size:24px}.taxi-trip-summary-price{padding:16px 13px}.taxi-trip-summary-price>strong{font-size:31px}.taxi-trip-summary-route strong{font-size:12px}.taxi-trip-summary-vehicle{grid-template-columns:55px minmax(0,1fr);gap:9px}.taxi-trip-summary-vehicle-image,.taxi-trip-summary-vehicle-image img{width:55px;height:38px}.taxi-trip-summary-vehicle>em{grid-column:2;white-space:normal}.taxi-trip-summary-actions{grid-template-columns:92px minmax(0,1fr)}.taxi-trip-summary-actions button{min-height:50px;padding-inline:11px}}
@media(prefers-reduced-motion:reduce){.taxi-trip-summary-dialog[open]{animation:none}}

/* Resumen limpio: jerarquía simple, precio sin bloque oscuro y ruta sin unión visual. */
.taxi-trip-summary-dialog{width:min(450px,calc(100% - 24px))}.taxi-trip-summary-card{gap:0;padding:27px 27px 23px;border-radius:25px}.taxi-trip-summary-card>header{align-items:center;padding-bottom:21px}.taxi-trip-summary-card>header h2{margin:0;color:#0b1730;font-size:26px;line-height:1.1;letter-spacing:-.035em}.taxi-trip-summary-card>header button{width:36px;height:36px;flex-basis:36px;background:#f4f6f9;border-radius:11px;font-size:23px}.taxi-trip-summary-price{justify-items:start;padding:0 0 25px;color:#0b1730;text-align:left;background:transparent;border:0;border-bottom:1px solid #e8ecf2;border-radius:0;box-shadow:none}.taxi-trip-summary-price>span{color:#7a8698;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.taxi-trip-summary-price>strong{margin:7px 0 5px;color:#0b1730;font-size:38px;letter-spacing:-.05em}.taxi-trip-summary-price>strong small{color:#176bff;font-size:10px}.taxi-trip-summary-price>em{max-width:none;color:#8a95a5;font-size:9px;line-height:1.45;text-align:left}.taxi-trip-summary-route{gap:4px;padding:18px 0 2px}.taxi-trip-summary-route>div{grid-template-columns:24px minmax(0,1fr);gap:11px;min-height:0;padding:9px 0}.taxi-trip-summary-route>div:first-child::after{display:none}.taxi-trip-summary-route i{width:12px;height:12px;margin:4px 0 0 2px;border-width:3px}.taxi-trip-summary-route span,.taxi-trip-summary-route .is-destination span{gap:5px;padding:0;border:0}.taxi-trip-summary-route small,.taxi-trip-summary-vehicle small{color:#8792a2;font-size:8px}.taxi-trip-summary-route strong{font-size:13px;font-weight:720;line-height:1.4;white-space:normal}.taxi-trip-summary-vehicle{grid-template-columns:58px minmax(0,1fr) auto;gap:12px;margin-top:18px;padding:15px 16px;background:#f6f8fb;border:0;border-radius:15px}.taxi-trip-summary-vehicle-image{width:58px;height:40px}.taxi-trip-summary-vehicle-image img{width:58px;height:40px}.taxi-trip-summary-vehicle strong{font-size:13px}.taxi-trip-summary-vehicle>em{color:#778397;font-size:8.5px}.taxi-trip-summary-error{margin:14px 0 0}.taxi-trip-summary-actions{grid-template-columns:96px minmax(0,1fr);gap:10px;margin-top:23px}.taxi-trip-summary-actions button{min-height:50px;border-radius:13px}.taxi-trip-summary-actions .is-back{background:#f5f7fa;border-color:#e2e7ee}.taxi-trip-summary-actions .is-confirm{box-shadow:0 7px 17px rgba(23,107,255,.2)}
@media(max-width:520px){.taxi-trip-summary-dialog{width:calc(100% - 18px)}.taxi-trip-summary-card{gap:0;padding:22px 19px 18px;border-radius:22px}.taxi-trip-summary-card>header{padding-bottom:18px}.taxi-trip-summary-card>header h2{font-size:23px}.taxi-trip-summary-price{padding-bottom:21px}.taxi-trip-summary-price>strong{font-size:34px}.taxi-trip-summary-route{padding-top:14px}.taxi-trip-summary-route>div{padding:8px 0}.taxi-trip-summary-route strong{font-size:12px}.taxi-trip-summary-vehicle{grid-template-columns:52px minmax(0,1fr);margin-top:15px;padding:13px 14px}.taxi-trip-summary-vehicle-image,.taxi-trip-summary-vehicle-image img{width:52px;height:36px}.taxi-trip-summary-actions{grid-template-columns:88px minmax(0,1fr);margin-top:19px}}

/* Ajustes de contraste y alineación del resumen de viaje. */
.taxi-trip-summary-card>header h2{color:#176bff}.taxi-trip-summary-price>em{color:#56657a;font-size:10.5px;font-weight:550;line-height:1.5}.taxi-trip-summary-route>div:first-child::after{display:block;top:17px;bottom:-17px;left:7px;width:1.5px;background:#d9dfe8}.taxi-trip-summary-vehicle>em{justify-self:end;padding-left:10px;color:#4f5f75;font-size:10px;font-weight:800;line-height:1.35;text-align:right;white-space:nowrap}
@media(max-width:520px){.taxi-trip-summary-price>em{font-size:10px}.taxi-trip-summary-vehicle{grid-template-columns:52px minmax(0,1fr) auto}.taxi-trip-summary-vehicle>em{grid-column:auto;padding-left:6px;font-size:9px;white-space:nowrap}}

/* Jerarquía tipográfica de ubicaciones y métricas del resumen. */
.taxi-trip-summary-route strong{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:8px;row-gap:2px;font-size:14.5px}
.taxi-trip-summary-route strong b{flex-basis:100%;min-width:0;color:#111827;font:inherit;font-weight:750}
.taxi-trip-summary-route strong em{color:#8792a2;font-size:11.5px;font-style:normal;font-weight:650;line-height:1.4}
.taxi-trip-summary-route strong em::before{margin-right:8px;color:#c1c8d2;content:"·"}
.taxi-trip-summary-vehicle>em{color:#354257;font-size:14px;font-weight:850;letter-spacing:.005em}
@media(max-width:520px){.taxi-trip-summary-route strong{font-size:13.5px}.taxi-trip-summary-route strong em{font-size:10.5px}.taxi-trip-summary-vehicle>em{font-size:13px}}

/* Flecha consistente en todas las acciones Continuar del flujo de pasajero. */
.taxi-continue-action{gap:9px}
.taxi-continue-action>svg{flex:0 0 17px;width:17px;height:17px;transition:transform .18s ease}
.taxi-continue-action:hover>svg{transform:translateX(2px)}

/* Da protagonismo al vehículo sin competir con las métricas del viaje. */
.taxi-trip-summary-vehicle{grid-template-columns:74px minmax(0,1fr) auto;border:1px solid #e5eaf1}
.taxi-trip-summary-vehicle small{font-size:7px;letter-spacing:.12em}
.taxi-trip-summary-vehicle strong{font-size:16.5px;line-height:1.2}
.taxi-trip-summary-vehicle-image,.taxi-trip-summary-vehicle-image img{width:70px;height:50px}
@media(max-width:520px){.taxi-trip-summary-vehicle{grid-template-columns:64px minmax(0,1fr) auto}.taxi-trip-summary-vehicle-image,.taxi-trip-summary-vehicle-image img{width:60px;height:44px}.taxi-trip-summary-vehicle strong{font-size:15.5px}}
.taxi-trip-summary-route strong{display:grid;align-items:start;gap:2px}
.taxi-trip-summary-route strong em{grid-row:1;margin:0;color:#8792a2;font-size:10.5px;font-weight:700;letter-spacing:.02em}
.taxi-trip-summary-route strong em::before{display:none;content:none}
.taxi-trip-summary-route strong b{grid-row:2;font-size:14.5px;line-height:1.38}
.taxi-trip-summary-route strong .taxi-trip-summary-place{grid-row:3;color:#56657a;font-size:11.5px;font-weight:700;line-height:1.4;letter-spacing:0;text-transform:none}
@media(max-width:520px){.taxi-trip-summary-route strong em{font-size:10px}.taxi-trip-summary-route strong b{font-size:13.5px}.taxi-trip-summary-route strong .taxi-trip-summary-place{font-size:11px}}
.taxi-passenger-suggestion-title>b{flex:1 1 auto}
.taxi-passenger-search-suggestions .taxi-passenger-recent-delete,.taxi-passenger-search-suggestions .taxi-passenger-recent-confirm{display:none!important}.taxi-passenger-search-suggestions .taxi-passenger-recent-item>.taxi-passenger-recent-select{padding-right:42px}

/* Ubicación compacta: dirección y municipio juntos; el punto de interés queda debajo. */
.taxi-trip-summary-card .taxi-trip-summary-label{display:block;font-size:10px!important;line-height:1.2;letter-spacing:.08em}
.taxi-trip-summary-route strong{display:block}
.taxi-trip-summary-route strong b{display:inline;font-size:14.5px;line-height:1.38}
.taxi-trip-summary-route strong em{display:inline;margin-left:8px;color:#8792a2;font-size:10.5px;font-weight:700;line-height:1.38;letter-spacing:.02em}
.taxi-trip-summary-route strong em:not([hidden])::before{display:inline;margin-right:8px;color:#c1c8d2;content:"·"}
.taxi-trip-summary-route strong .taxi-trip-summary-place{display:block;margin-top:3px;color:#56657a;font-size:11.5px;font-weight:700;line-height:1.4;letter-spacing:0;text-transform:none}
.taxi-trip-summary-route strong .taxi-trip-summary-place[hidden]{display:none}
@media(max-width:520px){.taxi-trip-summary-card .taxi-trip-summary-label{font-size:10px!important}.taxi-trip-summary-route strong b{font-size:13.5px}.taxi-trip-summary-route strong em{font-size:10px}.taxi-trip-summary-route strong .taxi-trip-summary-place{font-size:11px}}

/* La recogida edita su dirección desde el rótulo del marcador, igual que el destino. */
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin .taxi-pickup-map-label{cursor:pointer;pointer-events:auto;touch-action:manipulation}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin .taxi-pickup-map-label[hidden]{display:none!important}
.taxi-passenger-dashboard.is-confirming-pickup .taxi-passenger-map-pin .taxi-pickup-map-label:focus-visible{outline:3px solid rgba(23,107,255,.42);outline-offset:3px}
.taxi-main-pickup-search[hidden]{display:none!important}
.taxi-passenger-dashboard.is-confirming-pickup:not(.is-pickup-location-pending):not(.is-pickup-manual-entry) .taxi-main-pickup-tools{top:calc(50% - 137px);bottom:auto}
.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-tools{bottom:auto}
.taxi-main-pickup-search:not([hidden]){grid-template-columns:minmax(0,1fr) 54px;width:100%;height:54px}
.taxi-main-pickup-search:not([hidden]) input{height:52px;padding:0 18px;font-size:14px;line-height:normal}
.taxi-main-pickup-search:not([hidden])>[data-taxi-main-pickup-search]{width:54px;height:52px}
.taxi-main-pickup-search:not([hidden])>[data-taxi-main-pickup-search] svg{width:20px;height:20px}

/* El buscador ya es suficientemente claro: no muestra un cartel explicativo debajo. */
.taxi-passenger-route-sheet .taxi-passenger-destination-help{display:none!important}

/* Las sugerencias aprovechan toda la fila antes de recortar el municipio. */
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-title>b{flex:1 1 auto}
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-municipality{flex:0 1 auto;max-width:none}

/* Evita que un segundo toque sobre Continuar pase de vehículo a recogida por accidente. */
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button]{transition:opacity .2s ease,filter .2s ease,background-color .2s ease}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button][data-activation-delay="true"]{cursor:not-allowed;filter:saturate(.35);opacity:.58}

/* Recogida: más ancho útil y menos ruido visual en las sugerencias. */
.taxi-passenger-dashboard.is-confirming-pickup .taxi-main-pickup-tools{width:min(380px,calc(100% - 16px))}
.taxi-pickup-search-suggestions.is-expanded .taxi-passenger-suggestion-item>.taxi-passenger-recent-select{grid-template-columns:minmax(0,1fr);gap:0;min-height:54px;padding:9px 40px 9px 13px}
.taxi-pickup-search-suggestions .taxi-passenger-suggestion-item>.taxi-passenger-recent-select>svg:first-child{display:none}
.taxi-pickup-search-suggestions .taxi-passenger-suggestion-title{gap:10px}
.taxi-pickup-search-suggestions .taxi-passenger-suggestion-municipality{font-size:10px}

/* Destino: el mismo listado limpio, sin iconos repetidos. */
.taxi-destination-map-search{width:min(380px,calc(100vw - 16px))}
.taxi-destination-map-suggestions.is-expanded .taxi-passenger-suggestion-item>.taxi-passenger-recent-select{grid-template-columns:minmax(0,1fr);gap:0;min-height:54px;padding:9px 40px 9px 13px}
.taxi-destination-map-suggestions .taxi-passenger-suggestion-item>.taxi-passenger-recent-select>svg:first-child{display:none}
.taxi-destination-map-suggestions .taxi-passenger-suggestion-title{gap:10px}
.taxi-destination-map-suggestions .taxi-passenger-suggestion-municipality{font-size:10px}

/* La dirección y el municipio bastan; se omiten categorías genéricas. */
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-category{display:none}

/* Sugerencias compactas: sin pin y con más espacio útil para la dirección. */
.taxi-passenger-search-suggestions.is-expanded{box-sizing:border-box;padding:8px 8px 7px;background:rgba(255,255,255,.98);border:1px solid rgba(196,204,215,.82);border-radius:18px;box-shadow:0 20px 48px rgba(8,20,38,.24),0 2px 8px rgba(8,20,38,.08)}
.taxi-passenger-search-suggestions.is-expanded>small{margin:0 8px 4px;color:#667386;font-size:9px!important;font-weight:900;line-height:1.2!important;letter-spacing:.15em}
.taxi-passenger-search-suggestions.is-expanded>div{gap:0;padding:0 1px}
.taxi-passenger-search-suggestions.is-expanded .taxi-passenger-suggestion-item>button.taxi-passenger-suggestion-select{grid-template-columns:minmax(0,1fr)!important;gap:0;min-height:38px!important;padding:3px 8px!important;border-radius:9px}
.taxi-passenger-search-suggestions .taxi-passenger-recent-arrow{display:none!important}
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-title{display:flex;align-items:baseline;gap:7px}
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-title>b{color:#172033;font-size:12.5px!important;font-weight:750!important;line-height:1.18}
.taxi-passenger-search-suggestions .taxi-passenger-suggestion-item .taxi-passenger-suggestion-municipality{flex:0 0 auto;max-width:none!important;overflow:visible!important;color:#8b929d;font-size:10px!important;font-weight:500;line-height:1.28;text-overflow:clip!important;white-space:nowrap}
@media(max-width:560px){.taxi-passenger-search-suggestions .taxi-passenger-suggestion-title>b{font-size:12px!important}.taxi-passenger-recent-destinations.is-expanded .taxi-passenger-suggestion-item .taxi-passenger-suggestion-municipality{font-size:9.5px!important}}

/* Buscador principal de destino: acción más visible, centrada y sin halo blanco. */
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search>span{grid-template-columns:minmax(0,1fr) 54px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:hover,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:active,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:focus,.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button:focus-visible{display:flex;align-items:center;justify-content:center;width:54px;height:45px;padding:0;-webkit-appearance:none;appearance:none;border:0!important;outline:0!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button svg{display:block;width:21px;height:21px;margin:0;stroke-width:2.25;transform:none}

/* Más aire en la entrada principal sin ocultar demasiado mapa. */
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){width:calc(100% - 12px);padding:20px 22px 24px;border-radius:26px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-title{margin:0 8px 7px;font-size:17px;line-height:1.25}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) [data-taxi-destination-field]{min-height:55px;padding-left:18px}
.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)) .taxi-passenger-destination-search button{height:53px!important}
@media(max-width:680px){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){transition:top .19s cubic-bezier(.2,.8,.2,1),max-height .19s cubic-bezier(.2,.8,.2,1)}.taxi-passenger-dashboard.is-destination-keyboard-visible .taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){top:var(--taxi-destination-keyboard-top,64px)!important;bottom:auto!important;max-height:var(--taxi-destination-keyboard-max-height,330px)!important}.taxi-passenger-dashboard.is-destination-keyboard-visible .taxi-passenger-recent-destinations.is-expanded>div{max-height:max(112px,calc(var(--taxi-destination-keyboard-max-height,330px) - 125px))}}
@media(max-width:680px){html.taxi-passenger-destination-keyboard{overflow:hidden!important;overscroll-behavior:none}html.taxi-passenger-destination-keyboard body.taxi-passenger-app{position:fixed!important;top:var(--taxi-passenger-document-scroll-y,0);right:0;left:0;width:100%;height:100%;overflow:hidden!important;overscroll-behavior:none}html.taxi-passenger-destination-keyboard body.taxi-passenger-app .app-header{transform:translate3d(0,var(--taxi-passenger-viewport-offset-top,0px),0)!important}html.taxi-passenger-destination-keyboard body.taxi-passenger-app main{transform:translate3d(0,var(--taxi-passenger-viewport-offset-top,0px),0)}html.taxi-passenger-destination-keyboard .taxi-passenger-dashboard{height:calc(var(--taxi-passenger-visible-height,100dvh) - 62px - env(safe-area-inset-top,0px))!important;min-height:0!important}html.taxi-passenger-destination-keyboard .taxi-passenger-dashboard .taxi-shell{overflow:hidden!important}}
@media(max-width:680px) and (prefers-reduced-motion:reduce){.taxi-passenger-route-sheet[data-taxi-route-stage="destination"]:not(:has([data-taxi-destination-field].is-editing)){transition:none}}
.taxi-passenger-greeting.is-auto-hidden{transform:translate(-50%,-10px) scale(.98)}
@media(prefers-reduced-motion:reduce){.taxi-passenger-greeting{transition:none}.taxi-passenger-greeting.is-auto-hidden{transform:translateX(-50%)}}

/* Los buscadores sobre el mapa suben al espacio visible cuando aparece el teclado. */
.taxi-passenger-dashboard>.taxi-destination-map-search{z-index:40;top:calc(50% - 137px);left:50%;transform:translateX(-50%)}
.taxi-passenger-dashboard>.taxi-destination-map-search svg{display:block}
.taxi-passenger-dashboard.is-editing-destination-address .taxi-passenger-vehicle-back{visibility:hidden;pointer-events:none}
.taxi-passenger-dashboard.is-editing-pickup-address .taxi-passenger-vehicle-back{visibility:hidden;pointer-events:none}
.taxi-passenger-dashboard.is-editing-pickup-address .taxi-main-pickup-tools{z-index:24}
.taxi-main-pickup-search:not([hidden]){box-sizing:border-box;flex:0 0 54px;min-height:54px;max-height:54px}
.taxi-passenger-dashboard.is-pickup-manual-entry .taxi-main-pickup-instruction span{display:block;flex:1;min-width:0;overflow:visible;white-space:normal;overflow-wrap:anywhere}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button] .taxi-confirm-origin-pin{display:grid;place-items:center;flex:0 0 22px;width:22px;height:24px;color:#4b9cff;background:transparent}
.taxi-main-pickup-confirm>[data-taxi-main-pickup-confirm-button] .taxi-confirm-origin-pin svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.25;filter:drop-shadow(0 2px 3px rgba(0,0,0,.22))}
@media(max-width:680px){.taxi-passenger-dashboard>.taxi-destination-map-search{transition:top .19s cubic-bezier(.2,.8,.2,1)}.taxi-passenger-dashboard.is-destination-map-keyboard-visible>.taxi-destination-map-search{top:calc(env(safe-area-inset-top,0px) + 12px)!important;transform:translateX(-50%)}.taxi-passenger-dashboard.is-destination-map-keyboard-visible .taxi-destination-map-suggestions.is-expanded>div{max-height:var(--taxi-destination-map-list-height,220px)}.taxi-main-pickup-tools{transition:top .19s cubic-bezier(.2,.8,.2,1),transform .19s cubic-bezier(.2,.8,.2,1),max-height .19s cubic-bezier(.2,.8,.2,1)}.taxi-passenger-dashboard.is-main-pickup-keyboard-visible .taxi-main-pickup-tools{top:var(--taxi-pickup-keyboard-top,12px)!important;bottom:auto!important;max-height:var(--taxi-pickup-keyboard-max-height,330px)!important;transform:none!important}.taxi-passenger-dashboard.is-main-pickup-keyboard-visible .taxi-pickup-search-suggestions.is-expanded>div{max-height:max(112px,calc(var(--taxi-pickup-keyboard-max-height,330px) - 68px))}.taxi-pickup-dialog{transition:transform .19s cubic-bezier(.2,.8,.2,1)}.taxi-pickup-dialog.is-pickup-dialog-keyboard-visible{transform:translateY(var(--taxi-pickup-dialog-keyboard-shift,0px))}.taxi-pickup-dialog.is-pickup-dialog-keyboard-visible .taxi-destination-card{max-height:var(--taxi-pickup-dialog-keyboard-max-height,360px);overflow-y:auto}.taxi-pickup-dialog.is-pickup-dialog-keyboard-visible .taxi-pickup-search-suggestions.is-expanded>div{max-height:max(112px,calc(var(--taxi-pickup-dialog-keyboard-max-height,360px) - 190px))}}
@media(max-width:680px) and (prefers-reduced-motion:reduce){.taxi-passenger-dashboard>.taxi-destination-map-search,.taxi-main-pickup-tools,.taxi-pickup-dialog{transition:none}}

/* Vehículos: la cápsula superior y Continuar quedan fijos; solo se desplaza la lista. */
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]{position:absolute;right:10px;bottom:10px;left:10px;display:flex;flex-direction:column;box-sizing:border-box;width:auto;height:auto;max-height:calc(100% - 72px);margin:0 auto;overflow:hidden}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-body{display:flex;flex-direction:column;width:100%;height:auto;min-height:0;max-height:100%;overflow:hidden}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-step{display:flex;flex:0 1 auto;flex-direction:column;min-height:0;overflow:hidden}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-select{display:flex;flex:0 1 auto;flex-direction:column;min-height:0;overflow:hidden}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-heading{flex:0 0 auto}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox{align-content:start;grid-auto-rows:84px;flex:0 1 auto;min-height:0;max-height:calc(100dvh - 230px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox>[role="option"]{height:84px;min-height:84px;max-height:84px}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button{flex:0 0 50px;margin-top:12px;margin-bottom:0}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:hover,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:focus,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:focus-visible,.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:active{outline:0!important;box-shadow:0 6px 14px rgba(0,0,0,.18)!important;-webkit-tap-highlight-color:transparent}
.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button:focus-visible{box-shadow:inset 0 0 0 2px rgba(255,255,255,.5),0 6px 14px rgba(0,0,0,.18)!important}
@media(max-width:680px){.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"]{right:9px;bottom:9px;left:9px;height:auto;max-height:calc(100% - 70px);padding:10px 11px 12px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox{grid-auto-rows:76px;max-height:calc(100dvh - 210px)}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-vehicle-listbox>[role="option"]{height:76px;min-height:76px;max-height:76px}.taxi-passenger-route-sheet[data-taxi-route-stage="vehicle"] .taxi-passenger-route-button{margin-top:10px;margin-bottom:0}}

/* El municipio se conserva como dato interno, pero ya no se muestra como cápsula en destino. */
.taxi-main-destination-municipality{display:none!important}

/* Resumen del viaje compacto: las métricas del vehículo nunca compiten por una tercera columna. */
.taxi-trip-summary-card{padding:22px 24px 20px}
.taxi-trip-summary-card>header{padding-bottom:14px}
.taxi-trip-summary-price{padding-bottom:16px}
.taxi-trip-summary-price>strong{margin:5px 0 2px}
.taxi-trip-summary-route{padding-top:12px}
.taxi-trip-summary-vehicle{grid-template-columns:74px minmax(0,1fr);column-gap:12px;row-gap:3px;margin-top:12px;padding:11px 14px}
.taxi-trip-summary-vehicle-image{grid-row:1/span 2}
.taxi-trip-summary-vehicle>span:nth-child(2){grid-column:2;grid-row:1;min-width:0}
.taxi-trip-summary-vehicle>em{grid-column:2;grid-row:2;justify-self:start;min-width:0;padding-left:0;text-align:left;white-space:normal}

/* Billetera Taxi */
.wallet-tabs{display:flex;gap:8px;margin:0 0 22px}.wallet-tabs a{padding:10px 18px;color:#536070;background:#fff;border:1px solid #dfe4ea;border-radius:999px;font-weight:800;text-decoration:none}.wallet-tabs a.active{color:#111827;background:#ffc94a;border-color:#ffc94a}.wallet-admin-stats article{display:grid}.wallet-settings-card{display:flex;align-items:center;justify-content:space-between;gap:30px}.wallet-settings-card form{display:flex;align-items:center;gap:12px}.wallet-settings-card form>strong{padding:7px 11px;color:#9b2c2c;background:#fff1f1;border-radius:999px}.wallet-settings-card form>strong.is-enabled{color:#17653b;background:#e9f8ef}.wallet-search{display:flex;gap:8px}.wallet-search input,.wallet-account-list input,.wallet-entry-list input{min-height:42px;padding:0 12px;border:1px solid #d7dde5;border-radius:9px}.wallet-account-list,.wallet-entry-list{display:grid;gap:12px}.wallet-account-list>article{display:grid;grid-template-columns:minmax(210px,1fr) 160px minmax(350px,1.3fr);align-items:center;gap:18px;padding:16px;border:1px solid #e4e8ed;border-radius:14px}.wallet-account-person{display:flex;align-items:center;gap:11px}.wallet-account-person>span{display:grid;place-items:center;width:42px;height:42px;background:#111827;color:#fff;border-radius:50%;font-weight:900}.wallet-account-person div,.wallet-account-balance{display:grid;gap:2px}.wallet-account-person small,.wallet-account-balance small,.wallet-account-balance em{color:#667085;font-size:12px;font-style:normal}.wallet-account-list form{display:grid;grid-template-columns:110px 1fr auto;gap:8px}.wallet-entry-list>article{display:grid;grid-template-columns:1fr auto auto minmax(240px,auto);align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #edf0f3}.wallet-entry-list>article>div{display:grid}.wallet-entry-list small{color:#667085}.wallet-entry-list .is-credit>strong{color:#08783f}.wallet-entry-list .is-debit>strong{color:#a03636}.wallet-entry-list form{display:flex;gap:7px}.wallet-user-shell{max-width:920px;padding-top:32px;padding-bottom:90px}.wallet-user-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;color:#fff;background:linear-gradient(135deg,#111827,#24314a);border-radius:24px}.wallet-user-hero h1{margin:3px 0 5px}.wallet-user-hero p{max-width:520px;margin:0;color:#d8dee8}.wallet-user-balance{display:grid;min-width:220px;padding:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:17px}.wallet-user-balance strong{font-size:30px}.wallet-user-balance em{font-size:13px;font-style:normal}.wallet-user-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.wallet-user-stats article{display:grid;gap:4px;padding:18px;background:#fff;border:1px solid #e4e8ed;border-radius:16px}.wallet-user-stats small,.wallet-user-stats span{color:#667085;font-size:11px}.wallet-user-stats strong{font-size:20px}.wallet-payment-state{margin-bottom:16px;padding:16px 18px;background:#fff8e5;border:1px solid #f1d785;border-radius:14px}.wallet-payment-state.is-enabled{background:#eaf8ef;border-color:#acdcbc}.wallet-payment-state p{margin:4px 0 0}.wallet-user-history{display:grid;gap:0}.wallet-user-history>article{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf0f3}.wallet-user-history>article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900}.wallet-user-history .is-credit>span{color:#08783f;background:#e8f7ef}.wallet-user-history .is-debit>span{color:#a03636;background:#fff0f0}.wallet-user-history article div{display:grid}.wallet-user-history article small{color:#667085}.taxi-payment-method{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;border:0}.taxi-payment-method legend{grid-column:1/-1;margin-bottom:2px;font-weight:800}.taxi-payment-method label{cursor:pointer}.taxi-payment-method input{position:absolute;opacity:0}.taxi-payment-method label>span{display:grid;gap:2px;padding:12px;border:1px solid #d7dde5;border-radius:12px}.taxi-payment-method input:checked+span{border-color:#e5aa00;background:#fff9df;box-shadow:0 0 0 2px rgba(244,180,0,.15)}.taxi-payment-method small{color:#667085}.taxi-payment-method-static{display:flex;justify-content:space-between;padding:13px;background:#f6f7f9;border-radius:12px}
.wallet-tabs{flex-wrap:wrap}.wallet-tabs a{display:inline-flex;align-items:center;gap:8px}.wallet-tabs a>span{display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;color:#fff;background:#b94a52;border-radius:999px;font-size:10px;font-weight:900}.wallet-tabs a.active>span{color:#694d00;background:#fff3c7}.wallet-settings-list{display:grid;gap:14px}.wallet-settings-card>div>em{display:block;margin-top:8px;color:#9b6410;font-size:12px;font-style:normal;font-weight:750}.wallet-settings-card button:disabled{cursor:not-allowed;opacity:.48}
@media(max-width:800px){.wallet-settings-card{align-items:stretch;flex-direction:column}.wallet-settings-card form{align-items:stretch;flex-direction:column}.wallet-search{width:100%}.wallet-search input{min-width:0;width:100%}.wallet-account-list>article{grid-template-columns:1fr}.wallet-account-list form{grid-template-columns:1fr}.wallet-entry-list>article{grid-template-columns:1fr auto}.wallet-entry-list>article .admin-status{grid-column:1}.wallet-entry-list form{grid-column:1/-1}.wallet-entry-list form input{min-width:0;width:100%}.wallet-user-hero{align-items:stretch;flex-direction:column}.wallet-user-balance{min-width:0}.wallet-user-stats{grid-template-columns:1fr}.taxi-payment-method{grid-template-columns:1fr}}
.taxi-trip-summary-actions{gap:14px;margin-top:18px}
.taxi-trip-summary-actions button{min-height:54px}
@media(max-width:520px){.taxi-trip-summary-card{padding:16px 16px 15px}.taxi-trip-summary-card>header{padding-bottom:9px}.taxi-trip-summary-price{padding-bottom:12px}.taxi-trip-summary-price>strong{margin:4px 0 1px}.taxi-trip-summary-route{padding-top:9px}.taxi-trip-summary-vehicle{grid-template-columns:64px minmax(0,1fr);margin-top:9px;padding:9px 12px}.taxi-trip-summary-actions{gap:12px;margin-top:14px}.taxi-trip-summary-actions button{min-height:52px}}

/* La foto del conductor se amplía suavemente en su mismo lugar. */
[data-taxi-driver-photo]{--taxi-driver-photo-scale:2.15;--taxi-driver-photo-shift-x:0px;--taxi-driver-photo-shift-y:0px;z-index:4;cursor:zoom-in;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transform:translate(0,0) scale(1);transform-origin:center;transition:width .22s ease,height .22s ease,flex-basis .22s ease,transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease,filter .38s ease;will-change:transform}
.taxi-driver-match-avatar[data-taxi-driver-photo],.taxi-assigned-avatar[data-taxi-driver-photo],.taxi-completed-driver-avatar[data-taxi-driver-photo]{position:relative}
[data-taxi-driver-photo].is-photo-expanded{z-index:30;cursor:zoom-out;transform:translate(var(--taxi-driver-photo-shift-x),var(--taxi-driver-photo-shift-y)) scale(var(--taxi-driver-photo-scale));box-shadow:0 17px 42px rgba(8,25,45,.36),0 0 0 4px rgba(255,255,255,.98),0 0 0 8px rgba(255,201,74,.38);filter:saturate(1.06)}
[data-taxi-driver-photo]:focus-visible{outline:3px solid #176bff;outline-offset:4px}
@media(prefers-reduced-motion:reduce){[data-taxi-driver-photo]{transition:none}}

/* Rótulos 2D de los lugares más importantes de La Habana. */
.leaflet-pane[hidden]{display:none!important}
.taxi-landmark-marker,.taxi-landmark-marker[hidden]{border:0!important;background:transparent!important}
.taxi-landmark-marker[hidden]{display:none!important}
.taxi-landmark-place{display:flex;align-items:center;justify-content:center;width:180px;height:38px;padding:0 7px;border:0;background:transparent;color:#26384d;cursor:pointer;outline:0;text-align:center;-webkit-tap-highlight-color:transparent}
.taxi-landmark-place span{display:-webkit-box;overflow:hidden;font-size:11px;font-weight:850;line-height:1.15;letter-spacing:-.01em;text-shadow:-2px -2px 0 rgba(255,255,255,.96),2px -2px 0 rgba(255,255,255,.96),-2px 2px 0 rgba(255,255,255,.96),2px 2px 0 rgba(255,255,255,.96),0 2px 4px rgba(255,255,255,.95);-webkit-box-orient:vertical;-webkit-line-clamp:2}
.taxi-landmark-place:hover,.taxi-landmark-place:focus-visible,.taxi-landmark-place.is-selected{color:#0d5fd3}
.taxi-landmark-place:focus-visible span,.taxi-landmark-place.is-selected span{padding:3px 7px;border-radius:8px;background:rgba(255,255,255,.9);box-shadow:0 2px 8px rgba(13,30,48,.16);text-shadow:none}

/* Único componente de zoom para todos los mapas presentes y futuros. */
:root{--enruta-map-zoom-size:34px;--enruta-map-zoom-radius:10px;--enruta-map-zoom-color:#536164;--enruta-map-zoom-bg:rgba(255,253,249,.94);--enruta-map-zoom-border:rgba(89,101,103,.16);--enruta-map-zoom-hover:#eef6f1}
.leaflet-control-zoom,.taxi-passenger-assigned-map-zoom,.maplibregl-ctrl-group:has(.maplibregl-ctrl-zoom-in){display:block;width:var(--enruta-map-zoom-size)!important;overflow:hidden!important;background:var(--enruta-map-zoom-bg)!important;border:1px solid var(--enruta-map-zoom-border)!important;border-radius:var(--enruta-map-zoom-radius)!important;box-shadow:0 5px 16px rgba(54,70,72,.14)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.leaflet-control-zoom>a,.taxi-passenger-assigned-map-zoom>button,.maplibregl-ctrl-group:has(.maplibregl-ctrl-zoom-in)>button{display:grid!important;place-items:center!important;box-sizing:border-box!important;width:var(--enruta-map-zoom-size)!important;height:var(--enruta-map-zoom-size)!important;min-width:var(--enruta-map-zoom-size)!important;min-height:var(--enruta-map-zoom-size)!important;margin:0!important;padding:0!important;color:var(--enruta-map-zoom-color)!important;background-color:transparent!important;border:0!important;border-radius:0!important;font:600 19px/1 Arial,sans-serif!important;text-align:center!important;text-indent:0!important;cursor:pointer;touch-action:manipulation;transition:color .16s ease,background-color .16s ease}
.leaflet-control-zoom>a+a,.taxi-passenger-assigned-map-zoom>button+button,.maplibregl-ctrl-group:has(.maplibregl-ctrl-zoom-in)>button+button{border-top:1px solid var(--enruta-map-zoom-border)!important}
.leaflet-control-zoom>a:hover,.leaflet-control-zoom>a:focus-visible,.taxi-passenger-assigned-map-zoom>button:hover,.taxi-passenger-assigned-map-zoom>button:focus-visible,.maplibregl-ctrl-group:has(.maplibregl-ctrl-zoom-in)>button:hover,.maplibregl-ctrl-group:has(.maplibregl-ctrl-zoom-in)>button:focus-visible{color:#214f49!important;background-color:var(--enruta-map-zoom-hover)!important;outline:0!important}
.wallet-account-person>span{overflow:hidden}.wallet-account-person>span img{width:100%;height:100%;object-fit:cover}.wallet-search select{min-height:42px;padding:0 34px 0 12px;border:1px solid #d7dde5;border-radius:9px;background:#fff;color:#111827}
.wallet-commission-list{margin-bottom:16px}.wallet-commission-list>article{grid-template-columns:minmax(0,1fr) auto}.wallet-commission-amount{align-items:end;text-align:right}.wallet-commission-amount strong{font-size:16px}.wallet-commission-status{width:max-content;padding:4px 8px;border-radius:999px;font-weight:800}.wallet-commission-status.is-pending{color:#9b6410;background:#fff0c7}.wallet-commission-status.is-approved,.wallet-commission-status.is-paid{color:#17653b;background:#e9f8ef}.wallet-commission-status.is-void{color:#a03636;background:#fff0f0}
.wallet-qr-camera-field{display:grid}.web-camera[data-camera-kind="qr"] .web-camera-preview{width:min(100%,460px,55vh);width:min(100%,460px,55dvh);aspect-ratio:1}.web-camera[data-camera-kind="qr"] .web-camera-preview>span{inset:12%;border:3px solid rgba(255,213,95,.92);border-radius:18px}
.wallet-transfer-amount>span{align-items:center}.wallet-transfer-amount>span output{padding:7px 10px;color:#172238;background:#ffd55f;border-radius:10px;font-size:15px;font-weight:900;line-height:1}.wallet-transfer-range{display:grid;gap:8px;padding:13px 14px 10px;background:#f7f8fa;border:1px solid #e0e5ec;border-radius:13px}.wallet-transfer-step .wallet-transfer-range>input[type="range"]{-webkit-appearance:none;appearance:none;width:100%;min-height:22px;height:22px;margin:0;padding:7px 0;background:linear-gradient(to right,#f0b90b 0 var(--wallet-range-progress,0%),#d8dee7 var(--wallet-range-progress,0%) 100%);background-clip:content-box;border:0;border-radius:999px;box-shadow:none;cursor:pointer;outline:0}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;margin-top:-8px;background:#fff;border:3px solid #e8ad00;border-radius:50%;box-shadow:0 3px 9px rgba(22,34,56,.22)}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-moz-range-thumb{width:18px;height:18px;background:#fff;border:3px solid #e8ad00;border-radius:50%;box-shadow:0 3px 9px rgba(22,34,56,.22)}.wallet-transfer-step .wallet-transfer-range>input[type="range"]:focus-visible{box-shadow:0 0 0 3px rgba(232,173,0,.2)}.wallet-transfer-step .wallet-transfer-range>input[type="range"]:disabled{cursor:not-allowed;filter:grayscale(1);opacity:.5}.wallet-transfer-range>div{display:flex;justify-content:space-between;gap:12px;color:#667085}.wallet-transfer-range>div small{font-size:9px;font-weight:750}.wallet-transfer-amount>small{line-height:1.45}.wallet-transfer-step>[data-wallet-review]:disabled{cursor:not-allowed;opacity:.5}
.wallet-transfer-actions.is-compact{grid-template-columns:1fr 1fr}.wallet-transfer-actions.is-compact .wallet-transfer-action{grid-template-rows:1fr}.wallet-transfer-actions.is-compact .wallet-transfer-action>span{grid-row:1}.wallet-transfer-actions.is-compact .wallet-transfer-action>b{align-self:center}.wallet-user-hero>div>h1{margin:0}
.wallet-transfer-amount{gap:10px!important}.wallet-transfer-amount>span output{min-width:92px;padding:9px 13px;text-align:center;border-radius:12px;font-size:16px;box-shadow:0 4px 12px rgba(232,173,0,.16)}.wallet-transfer-range{gap:12px;padding:20px 18px 15px;background:#f8f9fb;border-color:#e3e7ed;border-radius:16px}.wallet-transfer-step .wallet-transfer-range>input[type="range"]{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;height:32px;min-height:32px;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:pointer;outline:0;touch-action:pan-y}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-webkit-slider-runnable-track{height:8px;background:linear-gradient(to right,#efb300 0 var(--wallet-range-progress,0%),#d9dee7 var(--wallet-range-progress,0%) 100%);border:0;border-radius:999px}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;margin-top:-10px;background:#fff;border:4px solid #eeb400;border-radius:50%;box-shadow:0 4px 12px rgba(24,35,55,.24)}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-moz-range-track{height:8px;background:#d9dee7;border:0;border-radius:999px}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-moz-range-progress{height:8px;background:#efb300;border:0;border-radius:999px}.wallet-transfer-step .wallet-transfer-range>input[type="range"]::-moz-range-thumb{box-sizing:border-box;width:28px;height:28px;background:#fff;border:4px solid #eeb400;border-radius:50%;box-shadow:0 4px 12px rgba(24,35,55,.24)}.wallet-transfer-step .wallet-transfer-range>input[type="range"]:focus-visible{box-shadow:0 0 0 4px rgba(232,173,0,.16);border-radius:999px}.wallet-transfer-range>small{justify-self:end;color:#667085;font-size:10px;font-weight:750}.wallet-transfer-amount>small{padding:0 3px}
.wallet-transfer-amount>span{font-size:15px;font-weight:900}.wallet-transfer-range{padding:18px 4px 8px;background:transparent;border:0;border-radius:0}
.wallet-transfer-amount{gap:10px!important;padding:15px 16px 13px;background:#f4f6f8;border:1px solid #e1e5eb;border-radius:14px}.wallet-transfer-amount>span{font-size:13px;font-weight:850}.wallet-transfer-amount>span output{min-width:84px;padding:7px 11px;color:#263247;background:#fff;border:1px solid #e2c76a;border-radius:9px;font-size:15px;box-shadow:none}.wallet-transfer-range{gap:7px;padding:2px 2px 0}.wallet-transfer-range>small{font-size:9px}.wallet-transfer-amount>small{padding:0 2px;color:#667085}
.wallet-transfer-amount>span output{color:#201900;background:#ffd55f;border-color:#edbd32}
.web-camera[data-camera-kind="qr"] .web-camera-actions{display:none}.web-camera[data-camera-kind="qr"] .web-camera-preview video{object-fit:cover}
.wallet-user-stats.is-commission-summary{grid-template-columns:1fr}.wallet-user-stats.is-commission-summary article{padding:16px 18px}
.wallet-user-stats.is-commission-summary{margin:12px 0}.wallet-user-stats.is-commission-summary article{gap:2px;padding:11px 14px;background:#fafbfc}.wallet-user-stats.is-commission-summary article>small{font-size:8px}.wallet-user-stats.is-commission-summary article>strong{font-size:15px;font-weight:800}.wallet-user-stats.is-commission-summary article>span{font-size:9px}.wallet-commission-list{gap:0;margin:0;padding:14px 18px}.wallet-commission-list .taxi-account-card-heading{margin:0;padding:0 0 3px}.wallet-commission-list .taxi-account-card-heading h2{font-size:16px}.wallet-commission-list>article{padding:9px 0}.wallet-commission-list>[data-wallet-commission-extra][hidden]{display:none!important}.wallet-commission-list>article b{font-size:11px}.wallet-commission-amount strong{font-size:13px}.wallet-commission-status{padding:3px 7px;font-size:8px;font-weight:750}.wallet-commissions-more{justify-self:center;margin:10px 0 1px;padding:8px 14px;color:#536070;background:#f4f6f8;border:1px solid #dfe4ea;border-radius:9px;font-size:10px;font-weight:800;cursor:pointer}
.wallet-scan-button{color:#315f8c;background:#e8f1fa;border-color:#c7daed}
.wallet-user-stats.is-commission-summary article>small{font-size:11px;font-weight:600}.wallet-user-stats.is-commission-summary article>strong{font-size:18px}.wallet-user-stats.is-commission-summary article>span{font-size:11px}
.wallet-transfer-actions{display:grid;grid-template-columns:1fr 1fr auto;align-items:stretch;gap:12px;margin:16px 0}.wallet-transfer-action{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;align-items:center;gap:1px 12px;min-height:78px;padding:14px 17px;color:var(--navy);text-align:left;background:#fff;border:1px solid #e1e6ed;border-radius:17px;box-shadow:var(--shadow-soft);cursor:pointer}.wallet-transfer-action>span{grid-row:1/3;display:grid;place-items:center;width:48px;height:48px;border-radius:15px}.wallet-transfer-action svg{width:23px;height:23px}.wallet-transfer-action b{align-self:end;font-size:16px}.wallet-transfer-action small{align-self:start;color:#667085;font-size:10px}.wallet-transfer-action.is-send>span{color:#19243b;background:#ffd55f}.wallet-transfer-action.is-receive>span{color:#0a7058;background:#dff7ef}.wallet-transfer-action:hover{border-color:#bdc7d5;transform:translateY(-1px)}.wallet-online-note{display:flex;align-items:center;gap:7px;min-width:154px;margin:0;padding:0 14px;color:#667085;background:#f5f7fa;border:1px solid #e1e6ed;border-radius:17px;font-size:10px;font-weight:750;line-height:1.35}.wallet-online-note i{flex:0 0 8px;width:8px;height:8px;background:#d69b19;border-radius:50%}.wallet-online-note.is-online{color:#17653b;background:#edf9f2;border-color:#c7e8d3}.wallet-online-note.is-online i{background:#23a768}.wallet-online-note.is-offline{color:#9b2c2c;background:#fff2f1;border-color:#efcfcb}.wallet-online-note.is-offline i{background:#d34b42}
.wallet-transfer-dialog{width:min(480px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:auto;background:transparent;border:0;border-radius:23px}.wallet-transfer-dialog::backdrop{background:rgba(8,20,38,.72);backdrop-filter:blur(5px)}.wallet-transfer-card{display:grid;gap:18px;padding:24px;background:#fff;border-radius:23px;box-shadow:0 28px 80px rgba(8,20,38,.34)}.wallet-transfer-card>header{display:grid;grid-template-columns:44px 1fr 34px;align-items:center;gap:11px}.wallet-transfer-card>header>span{display:grid;place-items:center;width:44px;height:44px;color:#171100;background:#ffd55f;border-radius:14px}.wallet-transfer-card>header svg{width:21px;height:21px}.wallet-transfer-card>header>div{display:grid;gap:2px}.wallet-transfer-card>header small{color:#667085;font-size:8px;font-weight:900;letter-spacing:.1em}.wallet-transfer-card h2,.wallet-transfer-card h3{margin:0}.wallet-transfer-card>header>button{width:34px;height:34px;color:#748094;background:#f2f4f7;border:0;border-radius:50%;font-size:22px;cursor:pointer}.wallet-transfer-step{display:grid;gap:13px}.wallet-transfer-step>label{display:grid;gap:6px;color:#263247;font-size:11px;font-weight:800}.wallet-transfer-step>label>span{display:flex;justify-content:space-between}.wallet-transfer-step>label em{color:#7a8493;font-style:normal;font-weight:500}.wallet-transfer-step input{box-sizing:border-box;width:100%;min-height:49px;padding:11px 13px;color:var(--navy);background:#fff;border:1px solid #ced6e1;border-radius:11px;outline:0;font-size:15px}.wallet-transfer-step input:focus{border-color:#6781a9;box-shadow:0 0 0 3px rgba(74,125,242,.11)}.wallet-transfer-step label>small{color:#667085;font-size:9px;font-weight:500}.wallet-transfer-money{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #ced6e1;border-radius:11px}.wallet-transfer-money:focus-within{border-color:#6781a9;box-shadow:0 0 0 3px rgba(74,125,242,.11)}.wallet-transfer-money input{border:0;box-shadow:none!important}.wallet-transfer-money b{padding:0 14px;color:#667085;font-size:11px}.wallet-scan-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;color:#24314a;background:#f3f6fa;border:1px solid #dce2ea;border-radius:11px;font-weight:800;cursor:pointer}.wallet-scan-button svg{width:18px;height:18px}.wallet-transfer-error{margin:0;padding:10px 12px;color:#9b2c2c;background:#fff1f1;border-radius:9px;font-size:11px}.wallet-transfer-confirm{justify-items:center;padding-top:4px;text-align:center}.wallet-recipient-avatar{display:grid;place-items:center;width:62px;height:62px;color:#fff;background:linear-gradient(135deg,#111827,#344767);border-radius:50%;font-size:24px;font-weight:900}.wallet-transfer-confirm>small{margin-bottom:-8px;color:#667085;font-size:9px;font-weight:800}.wallet-transfer-confirm code{padding:4px 8px;color:#536070;background:#f2f4f7;border-radius:7px;font-family:inherit;font-size:10px;font-weight:800}.wallet-transfer-confirm>strong{margin:8px 0 0;font-size:31px}.wallet-transfer-confirm>p{margin:0;color:#667085;font-size:11px;line-height:1.5}.wallet-transfer-confirm>div{display:grid;grid-template-columns:1fr 1.35fr;gap:9px;width:100%;margin-top:5px}.wallet-receive-card{justify-items:center;text-align:center}.wallet-receive-card>header{justify-self:stretch;text-align:left}.wallet-receive-card>header>span{color:#0a7058;background:#dff7ef}.wallet-receive-qr{display:grid;place-items:center;width:min(280px,100%);padding:12px;background:#fff;border:1px solid #e1e6ed;border-radius:19px;box-shadow:0 12px 30px rgba(17,24,39,.1)}.wallet-receive-qr img{display:block;max-width:100%;height:auto}.wallet-receive-card>p{max-width:360px;margin:0;color:#667085;font-size:12px;line-height:1.55}.wallet-code-copy{display:grid;grid-template-columns:1fr auto;gap:2px 14px;align-items:center;width:100%;padding:13px 15px;text-align:left;background:#f5f7fa;border:1px solid #dce2ea;border-radius:12px;cursor:pointer}.wallet-code-copy small{color:#667085;font-size:8px;font-weight:900;letter-spacing:.09em}.wallet-code-copy strong{font-size:17px;letter-spacing:.05em}.wallet-code-copy span{grid-column:2;grid-row:1/3;color:#17653b;font-size:10px;font-weight:800}.wallet-receive-card>aside{display:flex;align-items:center;gap:10px;width:100%;padding:12px;color:#17653b;text-align:left;background:#edf9f2;border-radius:12px}.wallet-receive-card>aside svg{flex:0 0 22px;width:22px;height:22px}.wallet-receive-card>aside span{display:grid;gap:2px}.wallet-receive-card>aside small{color:#3f7056;font-size:9px}.wallet-transfer-dialog button[aria-busy="true"]{opacity:.72;cursor:wait}
@media(max-width:800px){.wallet-transfer-actions{grid-template-columns:1fr 1fr}.wallet-online-note{grid-column:1/-1;min-height:42px;justify-content:center}.wallet-transfer-dialog{width:min(100% - 18px,480px)}.wallet-transfer-card{padding:20px 17px}.wallet-transfer-confirm>div{grid-template-columns:1fr}.wallet-transfer-confirm>div .button-primary{grid-row:1}}
.wallet-recent-panel{margin-top:24px}.wallet-account-history-link{width:max-content;margin-top:3px;color:#315f9a;font-size:11px;font-weight:800;text-decoration:none}.wallet-account-history-link:hover{text-decoration:underline}.taxi-commission-review-search{display:flex;align-items:end;gap:9px;margin:16px 0}.taxi-commission-review-search label{display:grid;flex:1;gap:5px;max-width:460px}.taxi-commission-review-search label>span{color:#526276;font-size:11px;font-weight:800}.taxi-commission-review-search input{width:100%;min-height:42px;padding:0 12px;border:1px solid #d7dde5;border-radius:9px}.taxi-commission-review-search>a{padding:11px;color:#526b8c;font-size:12px;font-weight:800}.wallet-history-dialog{width:min(760px,calc(100% - 28px));max-height:min(82vh,820px);padding:0;border:0;border-radius:20px;box-shadow:0 24px 80px rgba(15,23,42,.32)}.wallet-history-dialog::backdrop{background:rgba(15,23,42,.54);backdrop-filter:blur(3px)}.wallet-history-dialog>header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;background:#fff;border-bottom:1px solid #e5e9ef}.wallet-history-dialog>header small{color:#52709a;font-size:10px;font-weight:900;letter-spacing:.08em}.wallet-history-dialog>header h2{margin:3px 0}.wallet-history-dialog>header p{margin:0;color:#667085;font-size:12px}.wallet-history-dialog>header button{display:grid;place-items:center;width:36px;height:36px;padding:0;background:#f1f3f6;border:0;border-radius:50%;font-size:23px;cursor:pointer}.wallet-history-dialog-list{display:grid;padding:8px 24px 24px}.wallet-history-dialog-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 18px;padding:16px 0;border-bottom:1px solid #e9edf2}.wallet-history-dialog-list>article>div{display:grid;gap:3px}.wallet-history-dialog-list small{color:#667085;font-size:11px}.wallet-history-dialog-list>article>strong{font-size:16px}.wallet-history-dialog-list .is-credit>strong{color:#08783f}.wallet-history-dialog-list .is-debit>strong{color:#a03636}.wallet-history-dialog-list form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:8px}.wallet-history-dialog-list input{min-height:40px;padding:0 12px;border:1px solid #d7dde5;border-radius:9px}
@media(max-width:800px){.taxi-commission-review-search{align-items:stretch;flex-direction:column}.taxi-commission-review-search label{max-width:none}.wallet-history-dialog>header{padding:18px}.wallet-history-dialog-list{padding:6px 18px 20px}.wallet-history-dialog-list form{grid-template-columns:1fr}}
.wallet-scan-button{color:#315f8c;background:#e8f1fa;border-color:#c7daed}.wallet-user-stats.is-commission-summary article>small{font-size:11px;font-weight:600}.wallet-user-stats.is-commission-summary article>strong{font-size:18px}.wallet-user-stats.is-commission-summary article>span{font-size:11px}
.wallet-commission-list{margin:16px 0 0}.wallet-commission-status{padding:2px 6px;font-size:7.5px}
.wallet-transfer-card .wallet-scan-button{min-height:46px;color:#1f5f9f;background:#dcecff;border-color:#9bc2ea;box-shadow:0 4px 12px rgba(31,95,159,.1)}.wallet-transfer-card .wallet-scan-button:hover{color:#174f88;background:#cfe4fb;border-color:#82b2df}
.taxi-earnings-payment-summary.is-single{width:max-content;margin-top:12px!important;padding:0;background:transparent;border:0}.taxi-earnings-payment-summary.is-single>span.is-only{display:block;width:auto;padding:0}.taxi-earnings-payment-summary.is-single small{font-size:10px;letter-spacing:.02em}.taxi-earnings-payment-tags.is-single{margin-top:5px}.taxi-earnings-payment-tags.is-single>span.is-only{min-width:0;padding:0}.taxi-earnings-payment-tags.is-single small{font-size:9px;font-weight:850}.taxi-earnings-payment-tags.is-single .is-cash small{color:#18835f}.taxi-earnings-payment-tags.is-single .is-wallet small{color:#a87300}
.wallet-user-history.is-passenger-wallet-history{margin-top:16px}
