.discover-shell{padding-top:calc(var(--safe-top) + 12px)}.search{height:48px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:rgba(15,19,22,.32);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:flex;align-items:center;padding:0 14px;margin:10px 0 10px}.search input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:14px}.search input::placeholder{color:rgba(255,255,255,.54)}.chips{display:flex;gap:7px;overflow:auto;padding:2px 1px 10px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{height:35px;flex:0 0 auto;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;padding:0 13px;font-size:11px;font-weight:720}.chip.active{background:#fff;color:#17191b}.activity-grid{display:grid;gap:11px}.activity{overflow:hidden;border-radius:23px;text-decoration:none;color:#fff;display:grid;grid-template-columns:112px 1fr;min-height:116px;background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.075));border:1px solid rgba(255,255,255,.19);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.activity img{width:112px;height:100%;min-height:116px;object-fit:cover;background:rgba(255,255,255,.08)}.act-body{padding:12px 12px 11px}.act-cat{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.58);font-weight:760}.act-title{font-size:15px;font-weight:780;line-height:1.18;margin-top:4px}.act-meta{font-size:10px;color:rgba(255,255,255,.62);margin-top:7px;display:flex;gap:9px;flex-wrap:wrap}.empty{padding:25px;text-align:center;color:rgba(255,255,255,.68);font-size:13px}.detail-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(2,5,7,.45);display:none;align-items:flex-end}.detail-backdrop.open{display:flex}.detail{width:min(100%,560px);max-height:88svh;overflow:auto;margin:0 auto;border-radius:30px 30px 0 0;background:rgba(26,29,32,.94);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid rgba(255,255,255,.14);padding:10px 16px calc(20px + var(--safe-bottom))}.detail-hero{width:100%;height:205px;border-radius:22px;object-fit:cover;background:#333}.detail h2{font-size:23px;letter-spacing:-.04em;margin:14px 0 8px}.detail p{font-size:13px;line-height:1.55;color:rgba(255,255,255,.70)}.detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:11px 0}.detail-stat{min-width:0;padding:9px 5px;border-radius:13px;background:rgba(255,255,255,.09);text-align:center}.detail-stat small{display:block;font-size:8px;text-transform:uppercase;color:rgba(255,255,255,.55)}.detail-stat strong{display:block;margin-top:3px;font-size:12px}.detail-route-map{height:230px;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.08);display:grid;place-items:center;color:rgba(255,255,255,.62);font-size:12px}.detail-route-map .leaflet-container{width:100%;height:100%}.detail-route-map>.leaflet-container{grid-area:1/1}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.detail-actions a,.detail-actions button{min-height:50px;border:0;border-radius:16px;text-decoration:none;color:#fff;display:grid;place-items:center;text-align:center;font-size:12px;font-weight:760;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.10)}.detail-actions .primary{background:var(--red)}

/* V9.14 — denser, more informative activity cards */
.activity{position:relative;grid-template-columns:112px minmax(0,1fr) 22px;min-height:116px;text-align:left;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.activity:active{transform:scale(.992)}
.act-body{min-width:0;padding:11px 6px 10px 12px;display:flex;flex-direction:column;justify-content:center}
.act-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.act-cat{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.act-status{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 7px;background:rgba(255,255,255,.07);font-size:8px;line-height:1;font-weight:800;color:rgba(255,255,255,.72);white-space:nowrap}
.act-status i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.5);box-shadow:0 0 0 2px rgba(255,255,255,.06)}
.act-status.open{color:#c8f5d4;background:rgba(23,143,75,.15);border-color:rgba(72,202,124,.18)}.act-status.open i{background:#4fd27f}
.act-status.closed{color:#ffd0d3;background:rgba(227,6,19,.14);border-color:rgba(255,89,100,.18)}.act-status.closed i{background:#ff5964}
.act-status.limited{color:#ffe7b2;background:rgba(209,147,37,.15);border-color:rgba(255,199,89,.18)}.act-status.limited i{background:#ffc759}
.act-title{font-size:14px;line-height:1.18;margin-top:6px;padding-right:2px}
.act-meta{margin-top:7px;gap:5px 6px}.act-meta span{display:inline-flex;align-items:center;min-height:20px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.07);font-size:8.5px;font-weight:700;color:rgba(255,255,255,.72)}
.act-secondary{margin-top:6px;font-size:8.5px;line-height:1.2;color:rgba(255,255,255,.48);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.act-chevron{align-self:center;font-size:27px;line-height:1;color:rgba(255,255,255,.42);padding-right:4px}
@media(max-width:420px){.activity{grid-template-columns:96px minmax(0,1fr) 18px;min-height:108px}.activity img{width:96px;min-height:108px}.act-body{padding-left:10px}.act-title{font-size:13px}.act-status{padding:3px 5px;font-size:7.5px}.act-meta span:nth-child(n+5){display:none}}

/* V9.16 — readability first: dark alpine glass, stronger hierarchy */
.discover-shell:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,8,10,.18),rgba(5,8,10,.34) 38%,rgba(5,8,10,.50));pointer-events:none}
.activity{background:linear-gradient(145deg,rgba(18,23,25,.80),rgba(21,27,29,.66))!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 16px 35px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.08)!important;backdrop-filter:blur(24px) saturate(1.08)!important;-webkit-backdrop-filter:blur(24px) saturate(1.08)!important}
.activity:hover{border-color:rgba(255,255,255,.28)!important;background:linear-gradient(145deg,rgba(24,30,32,.87),rgba(21,27,29,.72))!important}
.act-cat{font-size:9.5px!important;color:rgba(255,255,255,.70)!important;letter-spacing:.085em!important}
.act-title{font-size:15px!important;font-weight:820!important;color:#fff!important;text-shadow:0 1px 5px rgba(0,0,0,.20)}
.act-meta{gap:6px!important;margin-top:8px!important}
.act-meta span{min-height:22px!important;padding:0 7px!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.10)!important;color:rgba(255,255,255,.86)!important;font-size:9.5px!important;font-weight:760!important}
.act-secondary{font-size:9.5px!important;color:rgba(255,255,255,.68)!important;margin-top:7px!important}
.act-status{font-size:8.5px!important;font-weight:850!important;background:rgba(255,255,255,.10)!important;color:rgba(255,255,255,.88)!important}
.act-chevron{color:rgba(255,255,255,.72)!important}
.search{background:rgba(14,18,20,.62)!important;border-color:rgba(255,255,255,.20)!important}.search input::placeholder{color:rgba(255,255,255,.68)!important}
.chip{background:rgba(18,22,25,.55)!important;color:rgba(255,255,255,.90)!important}.chip.active{background:#fff!important;color:#15191b!important}
@media(max-width:420px){.act-title{font-size:14px!important}.act-meta span{font-size:9px!important}.act-secondary{font-size:9px!important}}
