:root{--navy:#0b1f4d;--blue:#1a73e8;--hi:#ffd400;--bg:#fff;--fg:#111;--muted:#444;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;overflow:hidden;font:17px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--fg);background:#000}
#map{position:absolute;inset:0}
button{font:inherit;cursor:pointer}
#top{position:absolute;z-index:1000;left:0;right:0;top:0;padding:calc(var(--safe-t) + 8px) 8px 6px;background:linear-gradient(#0b1f4dee,#0b1f4dcc 70%,#0b1f4d00)}
#searchForm{display:flex;gap:6px}
#q{flex:1;min-width:0;height:52px;border-radius:14px;border:3px solid #000;padding:0 14px;font-size:19px;font-weight:600;background:#fff;color:#000;-webkit-appearance:none}
#q:focus{outline:4px solid var(--hi)}
#clearQ{width:52px;height:52px;border-radius:14px;border:3px solid #000;background:#fff;font-size:22px;font-weight:800}
#chips{display:flex;gap:6px;overflow-x:auto;padding-top:8px;scrollbar-width:none}
#chips::-webkit-scrollbar{display:none}
.chip{flex:none;height:42px;padding:0 10px;border-radius:21px;border:2px solid #000;background:var(--hi);color:#000;font-weight:700;font-size:16px}
#status{position:absolute;z-index:1000;left:8px;top:calc(var(--safe-t) + 130px);max-width:calc(100% - 90px);background:#000d;color:#fff;font-weight:600;font-size:14px;padding:6px 10px;border-radius:10px;pointer-events:none}
#fab{position:absolute;z-index:1000;right:10px;top:calc(var(--safe-t) + 130px);display:flex;flex-direction:column;gap:10px}
.fab{width:62px;height:62px;border-radius:50%;border:3px solid #000;background:#fff;font-size:28px;font-weight:900;box-shadow:0 3px 10px #0007}
.panel{position:absolute;z-index:1200;left:8px;right:8px;top:calc(var(--safe-t) + 8px);max-height:calc(100% - 24px - var(--safe-t));overflow:auto;background:#fff;border:3px solid #000;border-radius:16px;padding:12px 14px;box-shadow:0 6px 24px #0009}
.panel h2{margin:0 0 8px;font-size:21px;display:flex;justify-content:space-between;align-items:center}
.close{width:48px;height:48px;border-radius:12px;border:2px solid #000;background:#eee;font-size:20px;font-weight:900;flex:none}
.row{display:flex;align-items:center;gap:10px;min-height:52px;font-weight:700;border-bottom:1px solid #ddd}
.row input[type=checkbox],.row input[type=radio]{width:28px;height:28px;accent-color:var(--navy)}
.row small{font-weight:500;color:var(--muted)}
.slider input{flex:1;height:36px;accent-color:var(--navy)}
.seg label{display:flex;align-items:center;gap:6px}
.note{font-size:15px;color:#222;background:#f3f3f3;border-left:5px solid var(--navy);padding:8px 10px;border-radius:6px}
.wide{width:100%;min-height:54px;border-radius:14px;border:3px solid #000;background:var(--navy);color:#fff;font-weight:800;font-size:18px;margin-top:8px}
.hidden{display:none!important}
.sheet{position:absolute;z-index:1100;left:0;right:0;bottom:0;max-height:58%;overflow:auto;background:#fff;border-top:4px solid #000;border-radius:18px 18px 0 0;padding-bottom:calc(var(--safe-b) + 8px);box-shadow:0 -6px 24px #0008}
.sheet-head{position:sticky;top:0;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font-weight:800;font-size:18px;border-bottom:2px solid #000}
#resList{list-style:none;margin:0;padding:0}
#resList li{padding:12px 14px;border-bottom:1px solid #ccc;min-height:64px}
#resList li:active{background:#ffe}
.r-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.r-name{font-weight:800;font-size:18px}
.r-dist{font-weight:900;font-size:18px;white-space:nowrap;color:var(--navy)}
.r-items{font-size:15px;color:#222;margin-top:2px}
.r-items mark{background:var(--hi);color:#000;padding:0 2px;border-radius:3px}
.r-meta{font-size:13px;color:var(--muted);margin-top:2px}
.badge{display:inline-block;font-size:12px;font-weight:800;padding:1px 6px;border-radius:6px;border:1.5px solid #000;margin-right:4px;background:#fff}
.badge.new{background:var(--hi)}.badge.approx{background:#ffb3b3}
#guide{position:absolute;z-index:1150;left:0;right:0;bottom:0;background:#fffffff2;border-top:4px solid #000;border-radius:18px 18px 0 0;padding:10px 14px calc(var(--safe-b) + 12px);text-align:center;box-shadow:0 -6px 24px #0008}
#guideTop{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left}
#guideName{font-weight:900;font-size:20px}
#arrowWrap{position:relative;width:150px;height:150px;margin:2px auto}
#arrow{width:150px;height:150px;transition:transform .25s linear}
#arrow path{fill:var(--blue);stroke:#000;stroke-width:4;stroke-linejoin:round}
#northTag{position:absolute;top:0;right:-34px;font-weight:900;background:#000;color:#fff;border-radius:6px;padding:2px 6px;font-size:13px}
#guideDist{font-size:40px;font-weight:900;line-height:1}
#guideHint{font-size:20px;font-weight:700;margin-top:4px}
#guideMeta{font-size:13px;color:var(--muted);margin-top:4px}
#guideMenu{text-align:left;margin-top:8px;font-size:15px}
#guideMenu summary{font-weight:800;min-height:44px;line-height:44px}
.leaflet-container{background:#ccc;font:inherit}
.boothIcon{width:18px;height:18px;border-radius:50%;background:#ff5a00;border:2.5px solid #000}
.boothIcon.drink{background:#00b3ff}.boothIcon.new{background:var(--hi)}.boothIcon.hit{width:26px;height:26px;background:#e6007e;border-width:3px}
.atmIcon{width:30px;height:30px;border-radius:50%;background:#2c4398;color:#fff;font-weight:900;text-align:center;line-height:26px;border:2px solid #fff;box-shadow:0 0 0 2px #000;font-size:18px}
.youDot{width:22px;height:22px;border-radius:50%;background:var(--blue);border:4px solid #fff;box-shadow:0 0 0 2px #1a73e855,0 1px 6px #000a}
.leaflet-popup-content{font-size:16px;margin:10px 12px}
.leaflet-popup-content .go{display:block;width:100%;min-height:46px;margin-top:8px;border-radius:12px;border:2px solid #000;background:var(--navy);color:#fff;font-weight:800}
.leaflet-control-attribution{font-size:10px}
@media (min-width:700px){.sheet,#guide{left:auto;width:420px;right:10px;bottom:10px;border-radius:18px;border:4px solid #000}.panel{left:auto;width:420px}}
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;display:none}

#arrowWrap,#arrow{width:112px;height:112px}
#guideDist{font-size:36px}#guideHint{font-size:19px}
@media (max-height:700px){#arrowWrap,#arrow{width:88px;height:88px}}

/* v4: guide is a fixed, always-on-top overlay */
#guide{position:fixed;z-index:5000;max-height:none;overflow:visible;padding-top:8px}
#guideTop{gap:6px}#guideName{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stop{min-width:96px;height:52px;border-radius:12px;border:3px solid #000;background:#d00;color:#fff;font-weight:900;font-size:18px}
.small{height:52px;padding:0 12px;border-radius:12px;border:2px solid #000;background:#eee;font-weight:800}
#arrowWrap,#arrow{width:130px;height:130px}
@media (max-height:700px){#arrowWrap,#arrow{width:104px;height:104px}}
#guideUpd{font-size:14px;font-weight:800;color:#a15c00;min-height:0}
#guide.arrived{background:#e7ffe9f5;border-top-color:#0a8a2a}
#guide.arrived #arrow path{fill:#0a8a2a}
#guide.arrived #guideHint{font-size:24px;color:#0a6a20}
#guideMenu{max-height:22vh;overflow:auto}
body.guiding #results,body.guiding #nearPanel,body.guiding #favPanel{bottom:var(--sheetVis,104px);max-height:calc(100% - var(--sheetVis,104px) - 150px);z-index:4000;border-radius:18px;border:3px solid #000}
body.guiding.typing #guide{opacity:.96}
#version{position:fixed;z-index:1000;left:8px;top:calc(var(--safe-t) + 168px);font-size:11px;font-weight:700;color:#fff;background:#0009;padding:2px 6px;border-radius:6px;pointer-events:none}
.panel{z-index:6000}

#guide.noloc #arrowWrap{display:none}
#toast{position:fixed;z-index:7000;left:50%;top:40%;transform:translateX(-50%);background:#000;color:#fff;font-weight:800;padding:12px 18px;border-radius:12px}
.statsNote{position:fixed;z-index:5300;left:8px;right:86px;top:calc(var(--safe-t) + 150px);margin:0;background:#fff;color:#111;border:2px solid #000;border-radius:12px;padding:8px 10px;font-size:13px;line-height:1.35;box-shadow:0 4px 14px #0005;pointer-events:none}
.statsNote p{margin:0}
.statsNoteActs{margin-top:6px!important;display:flex;gap:10px;align-items:center}
.statsNote button,.statsNote a{pointer-events:auto}
#statsNoteOk{height:32px;padding:0 12px;border-radius:10px;border:2px solid #000;background:var(--navy);color:#fff;font-weight:800;font-size:14px}
#statsNoteSettings{font-weight:800;font-size:14px;color:var(--navy)}
.sheet-head{gap:8px}.sheet-head #resCount{flex:1}

#guideRoute{font-size:13px;font-weight:800;margin-top:4px;padding:3px 8px;border-radius:8px;display:inline-block}
#guideRoute.route{background:#fde7f3;color:#8a0050}
#guideRoute.straight{background:#fff2c2;color:#6b4e00}

/* ===== v7: fixed-height, transform-only guide sheet (non-modal) ===== */
:root{--sheetFull:440px;--sheetMini:104px;--sheetVis:0px}
body.guiding #map{bottom:var(--sheetVis)}
#guide{position:fixed;z-index:5000;left:0;right:0;bottom:0;top:auto;height:var(--sheetFull);max-height:none;overflow:hidden;
  display:flex;flex-direction:column;padding:0;text-align:left;contain:layout size style;will-change:transform;
  transition:transform .25s cubic-bezier(.2,.8,.2,1);background:#fff;border:0;border-top:4px solid #000;border-radius:18px 18px 0 0;box-shadow:0 -6px 24px #0008}
#guide.no-anim{transition:none}
#guide.arrived{background:#e9ffeb}
#sheetBar{flex:none;height:104px;box-sizing:border-box;display:grid;grid-template-columns:60px minmax(0,1fr) 48px 82px;align-items:center;gap:8px;padding:14px 10px 4px;position:relative;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent}
#sheetBar:focus-visible{outline:4px solid var(--hi);outline-offset:-4px}
.grabber{position:absolute;top:5px;left:50%;width:52px;height:6px;margin-left:-26px;border-radius:3px;background:#888}
#miniArrowWrap{position:relative;width:60px;height:60px}
#miniArrow{width:60px;height:60px;transition:transform .25s linear;display:block}
#miniArrow path{fill:var(--blue);stroke:#000;stroke-width:6;stroke-linejoin:round}
#guide.arrived #miniArrow path{fill:#0a8a2a}
#miniNorth{position:absolute;top:-4px;right:-6px;font:900 10px/1 sans-serif;background:#000;color:#fff;border-radius:4px;padding:2px 3px}
#barText{min-width:0;overflow:hidden}
#guide #guideDist{font-size:16px;font-weight:900;line-height:32px;height:32px;margin:0;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:clip}
#guide #guideHint{font-size:16px;font-weight:800;line-height:21px;height:42px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#111;overflow-wrap:anywhere}
#guide.arrived #guideHint{font-size:16px;color:#0a6a20}
#btnCompassMini{width:48px;height:48px;min-height:0;padding:0;font-size:24px;border:3px solid #000;border-radius:12px;background:var(--hi)}
#sheetBar .stop{width:82px;height:52px;min-height:0;padding:0;font-size:16px;white-space:nowrap}
#guideMore{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 14px calc(var(--safe-b) + 8px);gap:3px;text-align:center}
#guideMore[inert]{pointer-events:none}
#guide #guideTop{flex:none;height:48px;display:flex;align-items:center;gap:6px;text-align:left}
#guide #guideName{flex:1;min-width:0;font-weight:900;font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#guide #arrowWrap{flex:none;position:relative;width:92px;height:92px;margin:0 auto}
#guide #arrow{width:92px;height:92px}
#guide #guideRoute,#guide #guideMeta,#guide #guideMeta2,#guide #guideUpd{flex:none;width:100%;height:20px;line-height:20px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;box-sizing:border-box;min-height:0}
#guide #guideRoute{display:block;font-size:13px;padding:0 8px;border-radius:8px}
#guide #guideMeta,#guide #guideMeta2{font-size:13px;color:#333}
#guide #guideUpd{font-size:13px;font-weight:800;color:#a15c00}
#guide #guideBtns{flex:none;height:52px;margin:0}
#guide #guideBtns .wide{margin:0;height:48px;min-height:0}
#guide #guideMenu{flex:1 1 0;min-height:0;max-height:none;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;text-align:left;font-size:15px;border-top:2px solid #ddd;margin:0;padding-top:4px}
#guideMenu h3{margin:2px 0 4px;font-size:15px}
#guide.noloc #arrowWrap{display:block;visibility:hidden}
#guide.noloc #miniArrowWrap{visibility:hidden}
#aboutPill{position:fixed;z-index:1000;left:8px;top:calc(var(--safe-t) + 190px);font-size:12px;font-weight:800;color:#000;background:#fff;border:2px solid #000;padding:2px 8px;border-radius:8px;text-decoration:none}
body.guiding #aboutPill{display:none}
@media (min-width:700px){#guide{left:auto;right:10px;width:440px;bottom:0;border:4px solid #000;border-bottom:0;border-radius:18px 18px 0 0}}
/* v7: about panel legal blocks */
#aboutBody h3{font-size:16px;margin:12px 0 4px}
#aboutBody .disc{margin-bottom:2px}
#aboutBody .credits{padding-left:18px;font-size:14px}
.leaflet-popup .shareBooth{margin-top:6px;width:100%;min-height:40px}

/* v7: primary Share buttons */
.ico{width:20px;height:20px;flex:none}
.shareP,.shareBooth,.rShare{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#1a73e8;color:#fff;border:3px solid #000;border-radius:12px;font-weight:900;font-size:16px;cursor:pointer;padding:0 12px;min-height:44px}
.shareP:active,.shareBooth:active,.rShare:active{transform:translateY(1px)}
#guide #btnShare{height:44px;min-width:104px}
#sheetBar{grid-template-columns:60px minmax(0,1fr) 60px 82px}
#barSlot{position:relative;width:60px;height:56px}
#barSlot>button{position:absolute;inset:0;width:60px;height:56px;min-height:0;padding:0}
#btnShareBar{flex-direction:column;gap:0;font-size:11px;border-radius:12px}
#btnShareBar .ico{width:22px;height:22px}
#btnShareBar{visibility:hidden}
.popBtns{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:stretch;margin-top:8px}
.leaflet-popup-content .popBtns .go{margin-top:0}
.leaflet-popup-content .shareBooth{min-height:46px}
.rShare{min-height:36px;font-size:14px;padding:0 10px;border-width:2px;margin-left:8px;flex:none}
.rShare .ico{width:16px;height:16px}
.r-top{display:flex;align-items:center}
.r-top .r-name{flex:1;min-width:0}
#btnShareMe.pill{position:fixed;z-index:1000;left:8px;top:calc(var(--safe-t) + 222px);min-height:36px;font-size:13px;padding:0 10px;border-width:2px;border-radius:10px}
body.guiding #btnShareMe{display:none}
body.popup #btnShareMe,body.popup #aboutPill,body.popup #version,body.popup #status{visibility:hidden}

/* GPS stale refresh button: outside the sheet, so it never shifts the layout */
#btnGpsRefresh{position:fixed;z-index:5100;left:50%;bottom:calc(var(--sheetVis,0px) + 12px);transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;
  background:#a15c00;color:#fff;font-weight:900;font-size:16px;border:3px solid #000;border-radius:14px;padding:0 16px;min-height:48px;white-space:nowrap;box-shadow:0 4px 14px #0007}
#btnGpsRefresh.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
/* "You" marker (Apple/Google Maps style). transform/opacity only. */
.meIconWrap{background:none;border:0}
.me{position:relative;width:120px;height:120px;pointer-events:none}
.meCore{position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:#1a73e8;border:3px solid #fff;box-shadow:0 1px 6px #0009;transition:background-color .4s}
.meArrow{display:none;position:absolute;left:50%;top:50%;width:32px;height:32px;margin:-22px 0 0 -16px;transform-origin:50% 68%}
.meArrow path{fill:#1a73e8;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.me.hasHead .meArrow{display:block}
.me.hasHead .meCore{visibility:hidden}
.me.stale .meArrow path{fill:#8a8f98}
.mePulse{position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:#1a73e8;opacity:0;transform:scale(1)}
.mePulse.blip{animation:meBlip 1.6s ease-out 1}
@keyframes meBlip{0%{opacity:.55;transform:scale(1)}100%{opacity:0;transform:scale(4.2)}}
.meBeam{position:absolute;left:0;top:0;width:120px;height:120px;opacity:0;transition:transform .3s ease-out,opacity .3s;
  background:conic-gradient(from -36deg at 50% 50%,rgba(26,115,232,0) 0deg,rgba(26,115,232,.85) 36deg,rgba(26,115,232,0) 72deg,transparent 72deg 360deg);
  -webkit-mask:radial-gradient(circle at 50% 50%,#000 0,#000 28%,transparent 50%);mask:radial-gradient(circle at 50% 50%,#000 0,#000 28%,transparent 50%)}
.me.stale .meCore{background:#8a8f98}
.me.stale .mePulse{animation:none;opacity:0}
.me.stale .meBeam{filter:grayscale(1)}
@media (prefers-reduced-motion:reduce){.mePulse.blip{animation:none}.meBeam,.meArrow,#btnGpsRefresh,#miniArrow,#arrow,#guide{transition:none}}

/* Rides + autocomplete */
#suggest{position:absolute;z-index:6000;left:8px;right:8px;top:100%;margin:0;padding:0;list-style:none;background:#fff;border:3px solid #000;border-radius:12px;max-height:50vh;overflow:auto;-webkit-overflow-scrolling:touch}
#suggest li{min-height:48px;padding:8px 12px;font-size:17px;border-bottom:1px solid #ddd;display:flex;align-items:center;flex-wrap:wrap;gap:6px}
#suggest li.active,#suggest li:hover{background:#ffe8f4}
.sgTag{display:inline-block;font-size:12px;font-weight:800;border-radius:999px;padding:2px 8px;background:#f3e8ff;border:1px solid #000;line-height:1.3}
/* v7.3.1: the open dropdown sits above every sheet, and fitSuggest() ends it above the keyboard, the results sheet and the
   guide sheet (the list scrolls), so nothing is covered. Only if that leaves no room (results raised high while guiding)
   does the results sheet step aside until the dropdown closes. */
body.ac #top{z-index:8000}
body.ac.acCover #results{visibility:hidden}
#suggest{overscroll-behavior:contain}
.chip.on{background:#7b2ff7;color:#fff;box-shadow:inset 0 0 0 2px #fff}
.rideIcon{width:26px;height:26px;box-sizing:border-box;border-radius:50%;background:#fff;border:2px solid #000;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1}
.rideIcon.hit{width:34px;height:34px;border:3px solid #e6007e;background:#fff0f8;font-size:18px}
.badge.ride{background:#7b2ff7;color:#fff}
.sheet-head{flex-wrap:wrap}
#rideSubs{flex:1 0 100%;display:flex;gap:6px;padding:2px 0 4px}
.rideSub{height:34px;padding:0 12px;border-radius:17px;border:2px solid #000;background:#fff;font-weight:800;font-size:14px}
.rideSub.on{background:#7b2ff7;color:#fff}
#guideMenuBody{white-space:pre-line}
/* v7.3.1: concept ("likely") matches, always after direct ones */
.likelyHead,.sgHead{flex:1 0 100%;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5a2bb0;padding:2px 0}
#resList li.likely:first-of-type,#resList li.likely .likelyHead{margin-top:0}
#resList li .likelyHead{border-top:3px solid #7b2ff7;margin:-4px -2px 4px;padding-top:6px}
#suggest li .sgHead{border-top:2px solid #7b2ff7;padding-top:4px}
.badge.likely{background:#efe6ff;color:#3d1a80;border:1px solid #7b2ff7}
.sgWhy{color:#5a2bb0;font-weight:700}
#searchFocus.hidden{display:none!important}
#searchFocus{display:flex;flex-wrap:wrap;gap:6px;overflow:visible;padding-top:8px}
#searchFocus .qa{flex:1 1 auto;min-width:0;white-space:nowrap;font-size:13px;padding:0 8px}
.qa{flex:none;height:42px;padding:0 12px;border-radius:12px;border:2px solid #000;background:#fff;font-weight:800;font-size:15px}
.qaRow{flex:1 0 100%;display:flex;gap:6px;overflow-x:auto;padding:4px 0 8px}
#nearList,#favList{list-style:none;margin:0;padding:0}
#nearList li,#favList li{min-height:52px;padding:8px 12px;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:8px}
.amenityIcon .am{width:26px;height:26px;border-radius:13px;border:2px solid #000;background:#fff;font-size:15px;line-height:22px;text-align:center}
.fav{width:44px;height:44px;background:#fff;border:2px solid #000;border-radius:12px;font-size:22px;line-height:1;flex:none}
#popular{position:absolute;z-index:5500;left:8px;right:8px;top:100%;max-height:38vh;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff;border:3px solid #000;border-radius:12px;padding:8px 8px 2px;box-shadow:0 6px 24px #0008}
#popular h3{margin:0 0 6px;font-size:15px}
#popular .popBtn{display:block;width:100%;text-align:left;min-height:44px;margin:0 0 6px;padding:8px 10px;border-radius:12px;border:2px solid #000;background:#fff;font-weight:800;font-size:16px}
#popular .popBtn small{font-weight:600;color:#444}
.badge.pop{background:#ffd400}
#top:has(#popular:not(.hidden)){z-index:5900}
#guide #btnFav{height:44px}
#resList li.likelyHead,#suggest li.sgSep{min-height:0;cursor:default;background:#fff;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5a2bb0}
#suggest li.sgSep{border-top:2px solid #7b2ff7}
#resList li.likelyHead{border-top:3px solid #7b2ff7;padding:8px 14px}

#nearList .r-sub{display:block;font-size:12px;font-weight:400;color:#555;line-height:1.2}
/* Expanded guide wraps long names and the hint. The collapsed bar keeps its fixed ellipsis. */
#guide[data-snap="expanded"] #sheetBar{height:auto;min-height:104px}
#guide[data-snap="expanded"] #guideHint{height:auto;min-height:42px;-webkit-line-clamp:unset;display:block;overflow:visible}
#guide[data-snap="expanded"] #guideTop{height:auto;min-height:48px;align-items:flex-start}
#guide[data-snap="expanded"] #guideName{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}
#nearPanel #nearQuick.qaRow{flex-wrap:wrap;overflow:visible}
#nearPanel #nearQuick .qa{flex:1 1 auto;white-space:nowrap;font-size:14px;padding:0 10px}
#favList li{flex-wrap:wrap}
#favList .r-name{flex:1;min-width:0}
#favList .favActs{flex:1 0 100%;display:flex;gap:8px;margin-top:6px}
#favList .favGo,#favList .favRemove{white-space:nowrap;min-height:44px;border-radius:12px;border:2px solid #000;font-weight:800;font-size:15px;padding:0 12px}
#favList .favGo{flex:1;background:var(--navy);color:#fff}
#favList .favRemove{flex:0 0 auto;background:#fff;color:#111}
