:root{--bg:#0e0b16;--bg2:#17112a;--panel:#1d1630;--line:#2c2445;--pink:#ff3d8b;--yellow:#ffe14d;--ink:#fff;--g6:#cfc8e6;--g4:#9a92b8}
*{box-sizing:border-box}html{background:var(--bg)}
body{margin:0;background:radial-gradient(1200px 600px at 50% -200px,#2a1748 0%,var(--bg) 60%) no-repeat,var(--bg);color:var(--ink);font-family:'Pretendard Variable',Pretendard,-apple-system,'Apple SD Gothic Neo',sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}main{max-width:760px;margin:0 auto;padding:0 16px 48px}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;max-width:760px;margin:0 auto;padding:14px 16px;background:rgba(14,11,22,.82);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:8px;font-weight:900;font-size:20px;color:#fff;text-decoration:none}
.bear{width:32px;height:32px;border-radius:10px;border:2px solid #000;display:block}
.tag{color:var(--g4);font-size:13px;font-weight:600}
h1,h2,h3{letter-spacing:-.02em}
.map-hero{margin:10px 0 14px}
.map-hero h1{margin:6px 0 6px;font-size:40px;line-height:1.15;font-weight:900;text-shadow:0 3px 0 #000}
.map-hero h1 em,.hero h1 em{font-style:normal;color:var(--yellow)}
.map-hero p{margin:0 0 14px;color:var(--g6)}
.dollbar{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none}.dollbar::-webkit-scrollbar{display:none}
.dollbar button{flex:none;padding:10px 16px;border:2px solid #000;border-radius:999px;background:var(--panel);color:#fff;font:inherit;font-weight:800;box-shadow:0 3px 0 #000}
.dollbar button small{color:var(--g4);font-weight:700;margin-left:2px}
.dollbar button[aria-selected=true]{background:var(--yellow);color:#000}.dollbar button[aria-selected=true] small{color:#000}
.mapwrap{position:relative;margin:0 -16px;height:58vh;min-height:380px;border-top:2px solid #000;border-bottom:2px solid #000}#map{position:absolute;inset:0}
@media(min-width:760px){.mapwrap{margin:0;border:2px solid #000;border-radius:28px;overflow:hidden;box-shadow:0 6px 0 #000}}
#locate{position:absolute;right:12px;top:12px;z-index:2;padding:9px 14px;border:2px solid #000;border-radius:999px;background:#fff;color:#000;font:inherit;font-weight:800;box-shadow:0 3px 0 #000}
#card{position:absolute;left:10px;right:10px;bottom:10px;z-index:3;max-height:70%;overflow:auto;padding:16px;border:2px solid #000;border-radius:22px;background:var(--panel);box-shadow:0 6px 0 #000}
#card .ph{float:right;width:72px;height:72px;object-fit:cover;border-radius:12px;margin:0 28px 6px 10px;background:#000}
#card h3{margin:0 28px 2px 0;font-size:20px}#card .x{position:absolute;right:10px;top:8px;border:0;background:none;font-size:24px;color:var(--g4)}
.cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin:16px 0 0;padding:18px 20px;border:2px solid #000;border-radius:20px;background:var(--yellow);color:#000;font-weight:900;font-size:17px;text-decoration:none;box-shadow:0 5px 0 #000;transform:rotate(-.6deg)}
.cta span{color:#000;font-weight:800;opacity:.75}
.head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:34px 0 12px}
h2{margin:34px 0 10px;font-size:24px;font-weight:900}.head h2{margin:0}h2 small{color:var(--g4);font-weight:600;font-size:14px}
.sub{color:var(--g4);font-size:13px}.mapnote{margin:10px 2px}
.feed{display:flex;gap:12px;overflow-x:auto;margin:0 -16px;padding:4px 16px 14px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;cursor:grab;scrollbar-width:thin;scrollbar-color:#ff3d8b transparent}
.feed::-webkit-scrollbar{height:6px}.feed::-webkit-scrollbar-thumb{background:#ff3d8b;border-radius:3px}
.arrows{display:flex;gap:6px}.arrows button{width:36px;height:36px;border:2px solid #000;border-radius:50%;background:var(--panel);color:#fff;font-size:13px;box-shadow:0 3px 0 #000;cursor:pointer}
.feedsub{margin:-4px 0 10px}
.post{flex:none;display:flex;gap:12px;align-items:center;width:78%;max-width:340px;padding:12px;border:2px solid #000;border-radius:20px;background:var(--panel);text-decoration:none;scroll-snap-align:start;box-shadow:0 4px 0 #000}
.post img{flex:none;width:76px;height:76px;object-fit:cover;border-radius:12px;background:#000}
.post .txt{display:flex;flex-direction:column;min-width:0}.post b{font-size:15px}.post small{color:var(--g4);font-size:12px}
.post em{margin-top:2px;font-style:normal;font-size:13px;color:var(--g6);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.post u{margin-top:4px;text-decoration:none;color:var(--yellow);font-size:12px;font-weight:700}
.picks{display:grid;gap:12px}@media(min-width:760px){.picks{grid-template-columns:1fr 1fr}}
.pick{display:block;padding:18px;border:2px solid #000;border-radius:24px;background:var(--panel);text-decoration:none;box-shadow:0 5px 0 #000}
.pick .kicker{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--pink);color:#fff;font-size:12px;font-weight:800}
.pick h3{margin:10px 0 4px;font-size:21px}.pick p{margin:0 0 8px;color:var(--g6);font-size:14px}
.pick ol{margin:0;padding:0;list-style:none;counter-reset:n}.pick li{counter-increment:n;display:grid;grid-template-columns:24px 1fr;column-gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.pick li::before{content:counter(n);grid-row:span 2;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;color:#000;font-size:12px;font-weight:900}
.pick li b{font-size:15px}.pick li span{color:var(--g6);font-size:13px}
.arealist{list-style:none;margin:0;padding:0;counter-reset:a}.arealist li{counter-increment:a;display:flex;align-items:center;gap:10px;padding:14px 16px;margin:8px 0;border:2px solid #000;border-radius:18px;background:var(--panel);font-weight:800;box-shadow:0 3px 0 #000}
.arealist li::before{content:counter(a);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pink);font-size:13px}
.arealist a{flex:1;text-decoration:none}.arealist span{color:var(--yellow)}
.sido{margin:10px 0;padding:14px 16px;border:2px solid #000;border-radius:20px;background:var(--panel)}.sido h3{margin:0 0 8px;font-size:16px}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chips a{padding:6px 12px;border-radius:999px;background:var(--bg2);border:1px solid var(--line);text-decoration:none;font-weight:700;font-size:14px}.chips small{color:var(--yellow)}
.hero{margin:12px 0 18px;padding:24px 20px;border:2px solid #000;border-radius:26px;background:var(--panel);box-shadow:0 5px 0 #000}
.hero h1{margin:0 0 10px;font-size:28px;line-height:1.25}.hero.small h1{font-size:26px}
.hero p{margin:0;color:var(--g6)}.hero p a{color:var(--yellow);font-weight:700;text-decoration:none}
.crumb{margin:6px 2px 0;color:var(--g4);font-size:13px}.crumb a{color:var(--g6)}
.stores{list-style:none;margin:0;padding:0}
.store{display:flex;gap:12px;margin:10px 0;padding:16px;border:2px solid #000;border-radius:22px;background:var(--panel);box-shadow:0 4px 0 #000}
.store .no{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pink);font-weight:900;font-size:14px}
.store .info{min-width:0}.store h3{margin:0;font-size:18px}.addr{margin:2px 0 0;color:var(--g4);font-size:13px}
.meta{margin:6px 0 0;font-size:14px;color:var(--g6)}.meta b{color:var(--yellow)}
.dolls{margin:6px 0 0;font-size:13px;color:var(--g6)}.dolls a{margin-right:4px;color:var(--pink);font-weight:800;text-decoration:none}
.src{margin:8px 0 0;padding:0;list-style:none}.src li{margin:2px 0;font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.src a{color:var(--g4)}
.maplibregl-ctrl-attrib{font-size:10px}
#view{position:absolute;left:12px;top:12px;z-index:2;display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:2px solid #000;border-radius:999px;background:#fff;color:#000;font-weight:800;font-size:13px;box-shadow:0 3px 0 #000}
#view button{padding:5px 10px;border:0;border-radius:999px;background:#0e0b16;color:#fff;font:inherit;font-size:12px;cursor:pointer}
#view{max-width:calc(100% - 150px)}#viewtxt{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#view[hidden]{display:none}
.me{width:18px;height:18px;border-radius:50%;background:#5ce1ff;border:3px solid #fff;box-shadow:0 0 0 8px rgba(92,225,255,.25)}
footer{max-width:760px;margin:0 auto;padding:24px 16px 56px;color:var(--g4);font-size:12px;border-top:1px solid var(--line)}
