/* ResponseOne v59 UI (Oct 31 2026): Google-Maps-style home + hospitals sheet. Loaded last. */
body.ui-v2{--v2-ink:#1f2328;--v2-sub:#5f6b7a;--v2-line:#e6e9ee;--v2-primary:#0b8a5f;--v2-primary-dark:#086b49;--v2-red:#d93025;--v2-shadow:0 2px 6px rgba(0,0,0,.18),0 6px 20px rgba(0,0,0,.14)}
/* floating search pill */
body.ui-v2 .toolbar{left:var(--ui-edge);right:max(12px,env(safe-area-inset-right));max-width:620px;filter:none}
body.ui-v2 .toolbar .logo{order:3;width:44px;height:44px;border-radius:50%;box-shadow:var(--v2-shadow);font-size:0}
body.ui-v2 .search{height:52px;padding:0 6px 0 14px;border-radius:26px;background:#fff;box-shadow:var(--v2-shadow)!important;border:0;gap:10px}
body.ui-v2 .search .search-lead{display:grid;place-items:center;width:22px;height:22px;color:var(--v2-sub);flex:none}
body.ui-v2 .search .search-lead svg{width:22px;height:22px}
body.ui-v2 .search input{font-size:17px;color:var(--v2-ink)}
body.ui-v2 .search input::placeholder{color:#7a8594}
body.ui-v2 .search button[type=submit]{height:40px;min-width:40px;padding:0 14px;border-radius:20px;background:var(--v2-primary);font-size:15px}
/* category chips under the bar */
body.ui-v2 .home-chips{position:absolute;z-index:3;top:calc(var(--ui-top) + 62px);left:0;right:0;display:flex;gap:8px;overflow-x:auto;padding:2px var(--ui-edge) 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
body.ui-v2 .home-chips::-webkit-scrollbar{display:none}
body.ui-v2 .home-chips .hc{flex:none;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:0;border-radius:18px;background:#fff;color:var(--v2-ink);font-size:14px;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.25)}
body.ui-v2 .home-chips .hc svg{width:18px;height:18px}
body.ui-v2 .home-chips .hc-main{color:var(--v2-red)}
body.ui-v2.navigating .home-chips,body.ui-v2.hsheet-open .home-chips{display:none}
body.ui-v2 .status{top:calc(var(--ui-top) + 112px)}
body.ui-v2 .locate{top:auto;bottom:calc(var(--ui-bottom) + 96px);right:max(14px,env(safe-area-inset-right));width:52px;height:52px;padding:0;border-radius:50%;border:0;background:#fff;color:#1a73e8;font-size:24px;box-shadow:var(--v2-shadow)}
body.ui-v2.navigating .locate{bottom:calc(var(--ui-bottom) + 120px)}
/* suggestions = full-width white panel, two-line rows */
body.ui-v2 .suggestions{left:var(--ui-edge);right:max(12px,env(safe-area-inset-right));max-width:620px;top:calc(var(--ui-top) + 60px);max-height:min(70dvh,560px);border-radius:16px;background:#fff;box-shadow:var(--v2-shadow);padding:6px 0}
body.ui-v2 .suggestions li.sugg{display:flex;align-items:center;gap:14px;padding:11px 16px;border-bottom:0;min-height:58px;color:var(--v2-ink)}
body.ui-v2 .suggestions li.sugg + li.sugg{border-top:1px solid var(--v2-line)}
body.ui-v2 .suggestions li.sugg[aria-selected=true],body.ui-v2 .suggestions li.sugg:hover{background:#f1f4f8}
body.ui-v2 .sugg-icon{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f1f3f4}
body.ui-v2 .sugg-icon svg{width:22px;height:22px}
body.ui-v2 .sugg-hospital .sugg-icon,body.ui-v2 .sugg-nearby .sugg-icon{background:#fdecea}
body.ui-v2 .sugg-text{display:flex;flex-direction:column;min-width:0;gap:2px}
body.ui-v2 .sugg-text strong{font-size:16px;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.ui-v2 .sugg-text small{font-size:13.5px;color:var(--v2-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.ui-v2 .sugg-nearby strong{color:var(--v2-red)}
/* route preview = bottom sheet */
body.ui-v2 .card#routeCard{left:0;right:0;bottom:0;max-width:none;border-radius:20px 20px 0 0;padding:10px 18px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -4px 24px rgba(0,0,0,.22);border:0}
body.ui-v2 .card#routeCard::before{content:"";display:block;width:38px;height:4px;border-radius:2px;background:#d5d9df;margin:0 auto 10px}
body.ui-v2 #routeCard h1{font-size:20px;font-weight:700;color:var(--v2-ink)}
body.ui-v2 #routeCard .metrics{gap:14px;align-items:baseline;margin:8px 0 12px}
body.ui-v2 #routeCard #routeTime{font-size:26px;color:var(--v2-primary)}
body.ui-v2 #routeCard #routeDistance{font-size:18px;color:var(--v2-sub);font-weight:600}
body.ui-v2 #routeCard .metric-label{display:none}
body.ui-v2 #routeCard .go{height:52px;border-radius:26px;background:var(--v2-primary);font-size:17px;display:flex;align-items:center;justify-content:center;gap:8px}
body.ui-v2 #routeCard .go::before{content:"";width:0;height:0;border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent}
body.ui-v2 #routeCard .close{width:36px;height:36px;border-radius:50%;background:#f1f3f4;font-size:18px}
@media(min-width:700px){body.ui-v2 .card#routeCard{left:18px;right:auto;bottom:18px;width:420px;border-radius:20px}}
/* navigation: the end control is one round X */
/* hospitals bottom sheet */
.hsheet{position:absolute;z-index:6;left:0;right:0;bottom:0;max-height:72dvh;display:flex;flex-direction:column;background:#fff;color:#1f2328;border-radius:20px 20px 0 0;box-shadow:0 -4px 24px rgba(0,0,0,.25);padding:8px 0 calc(8px + env(safe-area-inset-bottom));font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.hsheet[hidden]{display:none}
.hsheet-grab{width:38px;height:4px;border-radius:2px;background:#d5d9df;margin:0 auto 6px;flex:none}
.hsheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:2px 16px 6px;flex:none}
.hsheet-head h2{margin:0;font-size:20px;font-weight:700}
.hsheet-head p{margin:2px 0 0;font-size:13.5px;color:#5f6b7a}
.hsheet-x{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:#f1f3f4;color:#3c4043;font-size:17px}
.hchips{display:flex;gap:8px;overflow-x:auto;padding:4px 16px 10px;flex:none;scrollbar-width:none}
.hchips::-webkit-scrollbar{display:none}
.hchip{flex:none;height:34px;padding:0 14px;border:1px solid #dadce0;border-radius:17px;background:#fff;color:#3c4043;font-size:14px;font-weight:600}
.hchip[aria-selected=true]{background:#e8f0fe;border-color:#1a73e8;color:#1967d2}
.hlist{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1 auto;border-top:1px solid #e6e9ee}
.hlist li{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #eef0f3;cursor:pointer}
.hlist li:active,.hlist li:hover{background:#f6f8fa}
.hrow-icon{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fdecea}
.hrow-icon svg{width:22px;height:22px}
.hrow-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hrow-main strong{font-size:16px;font-weight:650;line-height:1.25}
.hrow-main small{font-size:13px;color:#5f6b7a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hbadges{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.hb{font-size:11.5px;font-weight:700;padding:2px 7px;border-radius:9px;background:#eef1f5;color:#3c4043}
.hb-trauma{background:#fce8e6;color:#b3261e}.hb-stroke{background:#f3e8fd;color:#7b1fa2}.hb-stemi{background:#fde7ef;color:#b0174f}
.hb-burn{background:#fff0e0;color:#b45309}.hb-peds{background:#e6f4ea;color:#137333}.hb-mat{background:#e8f0fe;color:#1967d2}
.hb-psych{background:#e0f2f1;color:#00695c}.hb-fs{background:#f1f3f4;color:#5f6368}
.hrow-eta{flex:none;text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.hrow-eta b{font-size:17px;color:#0b8a5f;font-weight:750;white-space:nowrap}
.hrow-eta small{font-size:12.5px;color:#5f6b7a}
.hloading,.hempty{justify-content:center;color:#5f6b7a;font-size:14.5px;cursor:default!important}
.spin{width:18px;height:18px;border:2.5px solid #d5d9df;border-top-color:#0b8a5f;border-radius:50%;animation:hspin .8s linear infinite;display:inline-block}
@keyframes hspin{to{transform:rotate(360deg)}}
.hmore{flex:none;margin:10px 16px 2px;height:44px;border:1px solid #dadce0;border-radius:22px;background:#fff;color:#1a73e8;font-size:15px;font-weight:650}
.hsrc{flex:none;margin:8px 16px 0;font-size:11px;color:#80868b;line-height:1.35}
.hmarker{width:28px;height:28px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:#d93025;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35);display:grid;place-items:center;color:#fff;font:700 13px system-ui;cursor:pointer}
.hmarker{line-height:24px;text-align:center}
@media(min-width:700px){.hsheet{left:18px;right:auto;bottom:18px;width:440px;border-radius:20px;max-height:80dvh}}
body.ui-v2 .search input:focus-visible,body.ui-v2 .search input:focus{outline:none!important;box-shadow:none!important}
body.ui-v2 .search:focus-within{box-shadow:0 0 0 2px #1a73e8,var(--v2-shadow)!important}
.hmarker span{transform:rotate(45deg);display:block}
body.ui-v2 .search:focus-within{outline:none!important;border-color:transparent!important}
body.ui-v2 .search button[type=submit]{display:none}
body.ui-v2 .search{padding-right:14px}
body.ui-v2:has(#routeCard:not([hidden])) .home-chips{display:none}
body.hsheet-open .status,body.hsheet-open #pickDestination,body.hsheet-open .suggestions{display:none!important}
body.ui-v2:has(#suggestions:not([hidden])) .home-chips{display:none}

/* v60 (Oct 31 2026, rule 32): highway route + "Streets" choice with the time difference */
body.ui-v2 #routeCard .alternatives{display:flex;gap:8px;margin:6px 0 12px;overflow:visible}
body.ui-v2 #routeCard .alternatives button{flex:1 1 0;min-width:0;border-radius:14px;border:1.5px solid #dadce0;background:#fff;padding:10px 12px;color:var(--v2-ink);box-shadow:none}
body.ui-v2 #routeCard .alternatives button[aria-pressed=true]{border:2px solid var(--v2-primary);background:#e8f0fe}
body.ui-v2 #routeCard .alternatives button:disabled{opacity:.6}
body.ui-v2 #routeCard .route-choice-head{font-size:14px}
body.ui-v2 #routeCard .route-choice-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
body.ui-v2 #routeCard .route-choice-head strong{font-size:18px;color:var(--v2-ink)}
body.ui-v2 #routeCard .alternatives button[aria-pressed=true] .route-choice-head strong{color:var(--v2-primary)}
body.ui-v2 #routeCard .alternatives button[data-kind=streets] .route-choice-head span::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:#34a853;margin-right:6px;vertical-align:1px}
body.ui-v2 #routeCard .alternatives button[data-kind=highway] .route-choice-head span::before{content:"";display:inline-block;width:9px;height:9px;border-radius:2px;background:#1a73e8;margin-right:6px;vertical-align:1px}
body.ui-v2 #routeCard .route-choice-head{flex-direction:column;align-items:flex-start;gap:1px}
body.ui-v2 #routeCard .route-choice-head span{max-width:100%}
body.ui-v2 #routeCard .alternatives button small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.ui-v2 .app .card#routeCard:has(.alternatives:not([hidden])){max-height:min(64dvh,460px)}

/* Nov 1 2026: health-system filter row under the specialty chips */
.hsys{padding-top:0}
.hsysname{color:#1967d2;font-weight:600}
body.r1-night .hsysname{color:#8ab4f8}
