*{box-sizing:border-box}body,html{margin:0;height:100%;background:#eaedf2;color:#1a1d24;font:15px/1.4 system-ui,sans-serif}#map{inset:0}#map,.bar{position:fixed}.bar{top:12px;left:12px;z-index:2;display:flex;gap:6px}.bar button{background:rgba(255,255,255,.94);color:#1a1d24;border:1px solid #d3d8e0;padding:8px 14px;border-radius:999px;cursor:pointer;box-shadow:0 2px 8px rgba(30,40,60,.18);font-weight:500}.bar button[aria-pressed=true]{background:#1f2430;color:#fff;border-color:#1f2430}.bar .count{align-self:center;color:#333;padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.85);box-shadow:0 1px 4px rgba(30,40,60,.15)}.maplibregl-popup-content{background:#1e222b;color:#f2f4f8;padding:12px 14px;border-radius:12px;max-width:280px;border:1px solid #2c313c;box-shadow:0 8px 28px rgba(20,28,45,.35)}.maplibregl-popup-tip{border-top-color:#1e222b!important;border-bottom-color:#1e222b!important}.pop h3{margin:0 0 4px;font-size:15px}.pop .when{color:#fff;font-size:14px;margin:0 0 6px}.pop .when b{color:#ffd54a}.pop p{margin:0;color:#b8bec9;font-size:13px}.pop .tags{color:#ffd54a;opacity:.9;font-size:12px;margin-top:2px}.pop a{color:#fff}.chips{position:fixed;top:56px;left:12px;z-index:2;display:flex;gap:6px;max-width:calc(100vw - 24px);overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;background:rgba(255,255,255,.92);color:#3a3f4a;border:1px solid #d3d8e0;padding:6px 12px;border-radius:999px;cursor:pointer;font-size:13px;white-space:nowrap;box-shadow:0 1px 4px rgba(30,40,60,.14)}.chip[aria-pressed=true]{background:#1f2430;color:#fff;border-color:#1f2430}.timebar{position:fixed;top:96px;left:12px;z-index:2;display:flex;gap:6px;align-items:center;max-width:calc(100vw - 24px);overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.timebar::-webkit-scrollbar{display:none}.timebar .chip.small{font-size:12px;padding:5px 10px}.tinputs{display:flex;align-items:center;gap:4px;color:#3a3f4a;flex:0 0 auto}.tinputs input[type=time]{background:#fff;color:#1a1d24;border:1px solid #d3d8e0;border-radius:8px;padding:5px 8px;font-size:13px}.bar .nearby-toggle[aria-pressed=true]{background:#ff2d55;color:#fff;border-color:#ff2d55}.nearby{position:fixed;left:12px;bottom:12px;z-index:2;width:min(360px,calc(100vw - 24px));max-height:46vh;display:flex;flex-direction:column;background:rgba(255,255,255,.97);border:1px solid #d3d8e0;border-radius:12px;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(20,28,45,.25);color:#1a1d24}.nearby-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #e4e7ec}.nearby-head strong{font-size:14px}.nearby .radius{display:flex;gap:4px}.nearby .radius button{background:#f0f2f5;color:#3a3f4a;border:1px solid #d3d8e0;padding:3px 8px;border-radius:999px;cursor:pointer;font-size:12px}.nearby .radius button[aria-pressed=true]{background:#1f2430;color:#fff;border-color:#1f2430}.nearby .hint{margin:0;padding:14px 12px;color:#6b7280;font-size:13px}.nearby ul{list-style:none;margin:0;padding:4px;overflow-y:auto}.nearby li{display:flex;gap:10px;align-items:baseline;padding:8px;border-radius:8px;cursor:pointer}.nearby li:hover{background:#f0f2f5}.nb-dist{flex:0 0 auto;color:#d81b60;font-weight:600;font-size:12px;min-width:46px}.nb-body{display:flex;flex-direction:column;min-width:0}.nb-title{font-size:14px}.nb-meta,.nb-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-meta{color:#6b7280;font-size:12px}