:root{--primary:#d72e36;--primary-pressed:#be152a;--primary-tint:#fff2f2;--text:#181818;--text-strong:#333;--text-2:#666;--text-3:#a0a0a0;--text-4:#ccc;--border:#e9e9e9;--border-2:#dadada;--surface:#f6f6f6;--surface-2:#f3f3f3;--surface-3:#eee;--hover:#fcfcfc;--star:#f4c43e;--star-pin:#f0a534;--bg:#fff;--scrim:#00000080;--shadow-chip:0 1px 3px #00000014;--shadow-float:0 6px 20px #0000001f;--shadow-pin:0 2px 6px #0000001f;--shadow-dialog:0 16px 48px #0000002e;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--stripes:repeating-linear-gradient(135deg, #f6f6f6 0 8px, #eee 8px 16px);--stripes-lg:repeating-linear-gradient(135deg, #f6f6f6 0 10px, #eee 10px 20px);--font:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--tabbar-h:56px;--peek-h:124px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);letter-spacing:-.3px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;line-height:1.4}#root{height:100dvh}h1,h2,h3,p,dl,dd,ul,fieldset{margin:0}ul{padding:0;list-style:none}fieldset{border:0;min-width:0;padding:0}legend{padding:0}button,input,textarea{font:inherit;letter-spacing:inherit;color:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default}input::placeholder,textarea::placeholder{color:var(--text-4)}input[type=search]::-webkit-search-cancel-button{appearance:none}a{color:var(--text);text-decoration:none}a:hover{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.ic-line{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.ic-bold{stroke-width:2.2px}.ic-tab{stroke-width:1.8px}.ic-fill{fill:currentColor;stroke:none;flex:none}.ic-heart{fill:none;stroke:var(--text-3);stroke-width:1.8px;stroke-linejoin:round;flex:none}.ic-heart.is-on{fill:var(--primary);stroke:var(--primary)}.logo{align-items:center;gap:8px;display:flex}.logo-mark{background:var(--primary);color:#fff;letter-spacing:0;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;font-size:15px;font-weight:800;display:flex}.logo-text{letter-spacing:-.7px;font-size:19px;font-weight:800}.btn-primary{border-radius:var(--radius);background:var(--primary);color:#fff;justify-content:center;align-items:center;height:50px;padding:0 16px;font-size:16px;font-weight:700;transition:background .15s;display:inline-flex}.btn-primary:hover:not(:disabled),.btn-primary:active:not(:disabled){background:var(--primary-pressed)}.btn-primary:disabled{background:var(--text-4)}.btn-lg{width:100%;height:52px;font-size:17px}.btn-sm{border-radius:var(--radius-sm);height:36px;padding:0 12px;font-size:13px}.btn-secondary{border:1px solid var(--border);border-radius:var(--radius);height:50px;color:var(--text);background:#fff;justify-content:center;align-items:center;padding:0 16px;font-size:16px;font-weight:600;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--surface)}.btn-secondary.btn-sm{height:36px;font-size:13px}.btn-icon{gap:6px;font-size:15px}.btn-outline{border:1px solid var(--border);border-radius:var(--radius);height:36px;color:var(--text);background:#fff;flex:none;padding:0 16px;font-size:13px;font-weight:600}.btn-outline:hover{background:var(--surface)}.link-btn{color:var(--text-2);text-underline-offset:2px;flex:none;margin:-12px -4px;padding:12px 4px;font-size:13px;text-decoration:underline}.icon-btn{width:44px;height:44px;color:var(--text);flex:none;justify-content:center;align-items:center;display:flex}.fav-btn{border-radius:var(--radius);flex:none;justify-content:center;align-items:center;width:44px;height:44px;margin:-8px -10px -8px 0;display:flex}.fav-btn--boxed{border:1px solid var(--border);background:#fff;margin:0}.chip{border-radius:var(--radius-pill);border:1px solid var(--border);height:32px;color:var(--text-strong);white-space:nowrap;background:#fff;flex:none;align-items:center;gap:4px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.chip:after{content:"";position:absolute;inset:-6px -3px}.chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:#fff}.chip--pc{height:34px;padding:0 14px;font-size:14px}.chip--m-float,.chip--fav{box-shadow:var(--shadow-chip)}.chip--fav{color:var(--primary);padding:0 12px}.chip--fav[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.chip--option{height:36px;padding:0 14px;font-size:14px}.sort-tabs{gap:12px;display:flex}.sort-tabs button{color:var(--text-3);margin:-13px -4px;padding:13px 4px;font-size:13px;font-weight:500}.sort-tabs button[aria-pressed=true]{color:var(--text);font-weight:700}.search{color:var(--text-3);border-radius:var(--radius);align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex}.search input{min-width:0;height:100%;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:15px}.search:focus-within{outline:2px solid var(--primary);outline-offset:-1px}.search input:focus-visible{outline:none}.search--sheet{background:var(--surface);height:48px}.loc-btn{border-radius:var(--radius-pill);background:var(--surface);height:32px;color:var(--text-strong);white-space:nowrap;align-items:center;gap:6px;min-width:0;max-width:100%;padding:0 10px 0 12px;font-size:13px;font-weight:600;display:inline-flex}.loc-dot{background:var(--primary);border-radius:50%;flex:none;width:6px;height:6px}.loc-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.loc-suffix{color:var(--text-2);flex:none;font-weight:500}.loc-btn .ic-line{color:var(--text-3)}.filter-btn{border:1px solid var(--border);border-radius:var(--radius);width:46px;height:46px;color:var(--text);background:#fff;flex:none;justify-content:center;align-items:center;display:flex}.filter-btn.is-active{background:var(--primary-tint);border-color:var(--primary);color:var(--primary)}.vr{background:var(--border);flex:none;align-self:center;width:1px;height:20px}.thumb{border-radius:var(--radius);background:var(--stripes);object-fit:cover;flex:none;display:block}.thumb--lg{width:76px;height:76px}.thumb--md{width:68px;height:68px}.thumb--sm{width:56px;height:56px}.hero{background:var(--stripes-lg);justify-content:center;align-items:center;display:flex;overflow:hidden}.hero--pc{height:180px}.hero--m{height:200px}.hero img{object-fit:cover;width:100%;height:100%}.hero-empty{color:var(--text-3);font-size:12px}.row{background:#fff;align-items:flex-start;gap:8px;display:flex}.row-main{text-align:left;min-width:0;color:inherit;flex:1;gap:12px;display:flex}.row-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.row-meta{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.row-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:700;overflow:hidden}.row-stats{color:var(--text-2);font-size:13px}.rs-rating{color:var(--text);font-weight:700}.star{color:var(--star)}.rs-count,.rs-none{color:var(--text-3)}.rs-sep{color:var(--border-2)}.row--pc{border-top:1px solid var(--surface-2);padding:16px 20px}.row--pc .row-main{gap:14px}.row--pc .row-body{gap:4px}.row--pc .row-name{letter-spacing:-.4px}.row--pc .row-stats{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.row--pc:hover{background:var(--hover)}.row--pc.is-selected{background:var(--primary-tint)}.row--m{border-top:1px solid var(--surface-2);padding:14px 16px}.row--fav-pc,.row--fav-m{border-bottom:1px solid var(--surface-2);align-items:center}.row--fav-pc{padding:16px 24px}.row--fav-pc .row-main{gap:14px}.row--fav-pc:hover{background:var(--hover)}.row--fav-m{padding:14px 16px}.row--fav-pc .row-main,.row--fav-m .row-main{align-items:center}.row--fav-pc .fav-btn,.row--fav-m .fav-btn{margin-top:0;margin-bottom:0}.sentinel{height:1px}.state-box{text-align:center;color:var(--text-3);flex-direction:column;align-items:center;gap:12px;padding:56px 16px;font-size:14px;display:flex}.state-box--sm{padding:32px 0}.state-box--strong p{color:var(--text);font-size:15px;font-weight:600}.muted{color:var(--text-3)}.count{color:var(--primary)}.inline-notice{color:var(--text-2);background:var(--surface);border-radius:var(--radius-sm);margin-bottom:8px;padding:8px 10px;font-size:12px}.detail-info{flex-direction:column;gap:16px;padding:20px;display:flex}.detail-head{align-items:flex-start;gap:12px;display:flex}.detail-title{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.detail-meta{color:var(--text-2);font-size:13px}.detail-title h2{letter-spacing:-.6px;overflow-wrap:anywhere;font-size:24px;font-weight:700;line-height:32px}.detail-rating{align-items:baseline;gap:8px;display:flex}.detail-score{letter-spacing:-.6px;font-size:28px;font-weight:700}.detail-score.is-empty{color:var(--text-3);font-size:20px}.detail-score.is-empty .star{color:var(--border)}.detail-count{color:var(--text-3);font-size:14px}.info-grid{background:var(--surface);border-radius:var(--radius);grid-template-columns:80px minmax(0,1fr);row-gap:10px;padding:16px;font-size:14px;display:grid}.info-grid dt{color:var(--text-3)}.info-grid dd{overflow-wrap:anywhere}.info-grid .strong{font-weight:600}.gap-bar{background:var(--surface);height:8px}.detail-reviews{flex-direction:column;gap:16px;padding:20px;display:flex}.detail-reviews h3{font-size:18px;font-weight:700}.detail--m .detail-info{gap:14px;padding:20px 16px}.detail--m .detail-title h2{letter-spacing:-.5px;font-size:22px;line-height:30px}.detail--m .detail-score{font-size:24px}.detail--m .detail-count{font-size:13px}.detail--m .info-grid{grid-template-columns:72px minmax(0,1fr);padding:14px}.detail--m .detail-reviews{gap:12px;padding:16px}.detail--m .detail-reviews h3{font-size:17px}.hist{flex-direction:column;gap:6px;display:flex}.hist li{color:var(--text-2);align-items:center;gap:10px;font-size:12px;display:flex}.hist-label{width:22px}.hist-bar{background:var(--surface-2);border-radius:3px;flex:1;height:6px;overflow:hidden}.hist-bar span{background:var(--star);border-radius:3px;height:100%;display:block}.hist-n{text-align:right;width:18px;color:var(--text-3)}.review{border-top:1px solid var(--surface-2);flex-direction:column;gap:6px;padding:16px 0;display:flex}.detail--m .review{gap:5px;padding:14px 0}.review-head{align-items:center;gap:6px;font-size:13px;display:flex}.review-nick{font-weight:700}.badge-mine{color:var(--primary);background:var(--primary-tint);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.review-date{color:var(--text-3);flex:none;margin-left:auto;font-size:12px}.stars-text{letter-spacing:1px;font-size:13px}.detail--m .stars-text{font-size:12px}.stars-full{color:var(--star)}.stars-empty{color:var(--border)}.review-text{overflow-wrap:anywhere;white-space:pre-line;font-size:15px;line-height:22px}.eaten{color:var(--text-2);font-size:12px}.eaten-label{color:var(--text-3);margin-right:6px}.review-actions{gap:12px;display:flex}.review-actions button{color:var(--text-2);text-underline-offset:2px;margin:-13px -4px;padding:13px 4px;font-size:12px;text-decoration:underline}.attribution{color:var(--text-3);text-align:center;padding:24px 16px 32px;font-size:11px;line-height:1.6}.avatar{background:var(--primary-tint);color:var(--primary);letter-spacing:0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.avatar--sm{width:32px;height:32px;font-size:14px}.avatar--md{width:52px;height:52px;font-size:20px}.avatar--lg{width:56px;height:56px;font-size:22px}.profile-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.profile-sub{color:var(--text-2);font-size:13px}.nick{align-items:center;gap:8px;min-width:0;display:flex}.nick-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.nick--pc .nick-name{font-size:20px}.nick--m .nick-name{font-size:18px}.nick .link-btn{font-size:12px}.nick-form{align-items:center;gap:6px;display:flex}.nick-form .input{flex:1;min-width:0;height:36px;padding:0 10px}.my-reviews--pc{padding:0 24px}.my-reviews--m{padding:0 16px}.my-review{border-bottom:1px solid var(--surface-2);flex-direction:column;gap:6px;padding:18px 0;display:flex}.my-reviews--m .my-review{gap:5px;padding:14px 0}.my-reviews--m .review-text{font-size:14px;line-height:20px}.my-reviews--m .stars-text{font-size:12px}.my-review-head{align-items:center;gap:8px;display:flex}.my-review-name{text-align:left;font-size:16px;font-weight:700}.my-reviews--m .my-review-name{font-size:15px}.my-review-name:hover{color:var(--primary)}.modal{width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.modal[open]{justify-content:center;align-items:flex-end;display:flex}.modal::backdrop{background:var(--scrim)}.modal-panel{width:100%;max-height:calc(100% - 24px - var(--safe-top));overscroll-behavior:contain;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:24px 16px max(34px, calc(16px + var(--safe-bottom)));background:#fff;flex-direction:column;gap:16px;animation:.24s cubic-bezier(.2,.8,.2,1) sheet-up;display:flex;overflow-y:auto}@keyframes sheet-up{0%{opacity:.6;transform:translateY(24px)}}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head h2{font-size:18px;font-weight:700}.sheet-desc{color:var(--text-2);font-size:14px;line-height:1.55}.sheet-desc strong{color:var(--text)}.sheet-current{color:var(--text-2);font-size:13px}.filter-sheet .modal-panel{gap:20px;padding-top:20px}.filter-group legend{margin-bottom:10px;font-size:14px;font-weight:700}.filter-options{flex-wrap:wrap;gap:6px;display:flex}.review-form{flex-direction:column;gap:16px;display:flex}.form-head{flex-direction:column;gap:2px;display:flex}.form-sub{color:var(--text-3);font-size:13px}.form-head h2{font-size:20px;font-weight:700}.star-pick{flex-direction:column;align-items:center;gap:6px;display:flex}.star-row{gap:4px;display:flex}.star-btn{color:var(--border);border-radius:var(--radius);padding:2px;transition:color .1s}.star-btn.is-on{color:var(--star)}.star-label{color:var(--text-2);height:20px;font-size:14px;font-weight:600}.field{flex-direction:column;min-width:0;display:flex}.field-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px;display:grid}.field-label{color:var(--text-strong);margin-bottom:6px;font-size:13px;font-weight:600}.optional{color:var(--text-3);margin-left:2px;font-size:11px;font-weight:500}.input{border:1px solid var(--border);border-radius:var(--radius);height:50px;color:var(--text);background:#fff;outline:none;min-width:0;padding:0 14px;font-size:15px}.input--textarea{resize:none;width:100%;height:auto;min-height:112px;padding:13px 14px;font-family:inherit;line-height:22px;display:block}.input:focus,.input:focus-within{border-color:var(--text)}.input--suffix{align-items:center;gap:6px;display:flex}.input--suffix input{text-align:right;background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%}.input--suffix span{color:var(--text-2);font-size:14px}.field-foot{color:var(--text-3);justify-content:space-between;gap:8px;margin-top:6px;font-size:12px;display:flex}.form-actions{gap:8px;display:flex}.form-actions .btn-secondary{flex:1}.form-actions .btn-primary{flex:2}.place-results{min-height:0}.place-list{overscroll-behavior:contain;max-height:min(320px,40dvh);margin:-4px 0;overflow-y:auto}.place{border-bottom:1px solid var(--surface-2);text-align:left;width:100%;min-height:56px;color:var(--text-2);align-items:center;gap:12px;padding:10px 4px;display:flex}.place:hover:not(:disabled){background:var(--hover)}.place-body{flex-direction:column;gap:2px;min-width:0;display:flex}.place-name{color:var(--text);font-size:15px;font-weight:700}.place-addr{color:var(--text-2);font-size:13px}.map-canvas{position:absolute;inset:0}.map-notice{text-align:center;color:var(--text-2);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.map-notice strong{color:var(--text);font-size:15px}.map-notice .btn-outline{margin-top:4px}.pin{font-family:var(--font);letter-spacing:-.2px;cursor:pointer;flex-direction:column;align-items:center;padding:0;display:flex}.pin-label{border-radius:var(--radius-pill);color:var(--text);border:1px solid var(--border-2);white-space:nowrap;box-shadow:var(--shadow-pin);background:#fff;align-items:center;gap:4px;padding:5px 9px;font-size:12px;font-weight:600;display:flex}.pin-name{text-overflow:ellipsis;max-width:112px;overflow:hidden}.pin-row .pin-name{max-width:220px}.pin-star{color:var(--star-pin);flex:none;font-weight:700}.pin-stem{background:var(--text-3);width:2px;height:6px}.pin.is-selected .pin-label{background:var(--primary);border-color:var(--primary);color:#fff}.pin.is-selected .pin-star{color:#fff}.pin.is-selected .pin-stem{background:var(--primary)}.map-base{border-radius:var(--radius-pill);background:var(--text);color:#fff;font:700 12px var(--font);letter-spacing:-.2px;white-space:nowrap;pointer-events:none;align-items:center;gap:5px;padding:6px 10px;display:flex;box-shadow:0 2px 8px #0003}.map-base:before{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px}.toast-region{inset:auto auto auto 50%;bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 16px);pointer-events:none;z-index:3000;background:0 0;border:0;width:max-content;max-width:calc(100% - 32px);margin:0;padding:0;position:fixed;overflow:visible;transform:translate(-50%)}.toast-region:popover-open{display:block}.toast{background:var(--text);color:#fff;border-radius:var(--radius);text-align:center;padding:13px 20px;font-size:14px;font-weight:600;box-shadow:0 6px 20px #00000029}@media (width>=768px){.modal[open]{align-items:center;padding:24px}.modal-panel{border-radius:var(--radius-lg);max-width:440px;max-height:calc(100% - 48px);box-shadow:var(--shadow-dialog);gap:20px;padding:28px;animation-name:dialog-in}@keyframes dialog-in{0%{opacity:0;transform:scale(.97)}}.review-form{gap:20px}.form-head{gap:4px}.form-head h2{letter-spacing:-.4px;font-size:22px}.star-pick{gap:8px;padding:8px 0}.star-row{gap:6px}.toast-region{bottom:40px}}@media (width<=767px){.search input,.input,.input input{font-size:16px}}.list-note{color:var(--text-3);flex:none;padding:0 20px 10px;font-size:12px}.list-note--flat{padding:0}.list-note-inline{color:var(--text-3);margin-left:8px;font-size:12px;font-weight:500}.row--missing{align-items:center;gap:12px}.row--missing .row-name{color:var(--text-2);font-size:15px;font-weight:600}.row--missing .row-stats{color:var(--text-3);font-size:12px}.map-notice-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.pin-more{color:var(--text-2);flex:none;font-weight:500}.pin.is-selected .pin-more{color:#ffffffd9}.pin-callout{font-family:var(--font);letter-spacing:-.2px;flex-direction:column;align-items:center;display:flex}.pin-stack{overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--radius-lg);max-height:268px;box-shadow:var(--shadow-float);background:#fffffff5;flex-direction:column;align-items:stretch;gap:4px;padding:6px;display:flex;overflow-y:auto}.pin-row{cursor:pointer;padding:0;display:flex}.pin-row .pin-label{width:100%;box-shadow:none;justify-content:space-between}.pin-row:hover .pin-label{border-color:var(--text-3)}.pin-row.is-selected .pin-label{background:var(--primary);border-color:var(--primary);color:#fff}.pin-row.is-selected .pin-star{color:#fff}.pin-callout>.pin-stem{background:var(--text);width:2px;height:8px}@media (width<=767px){.pin-stack{max-height:206px}}.map-chip{z-index:15;border-radius:var(--radius-pill);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#181818db;max-width:calc(100% - 32px);padding:8px 14px;font-size:13px;font-weight:600;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 2px 8px #00000029}.focus-head{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.focus-head h2{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:15px;font-weight:700;overflow:hidden}.focus-close{border-radius:var(--radius);width:40px;height:40px;margin:-8px -10px -8px 0}.focus-close:hover{background:var(--surface)}.pc{background:#fff;flex-direction:column;height:100%;display:flex}.pc-header{height:64px;padding:0 max(28px, var(--safe-right)) 0 max(28px, var(--safe-left));border-bottom:1px solid var(--border);z-index:20;background:#fff;flex:none;align-items:center;gap:20px;display:flex;position:relative}.brand{flex:none;padding:6px 0}.loc-btn--pc{flex:0 auto;max-width:280px}.loc-btn--pc:hover{background:var(--surface-2)}.pc-search{flex:1;min-width:160px;max-width:420px}.search--pc{border:1px solid var(--border);height:40px}.search--pc input{font-size:14px}.pc-nav{flex:none;align-items:center;gap:4px;margin-left:auto;display:flex}.pc-nav button{height:64px;color:var(--text-2);white-space:nowrap;padding:0 12px;font-size:15px;font-weight:500}.pc-nav button[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px 0 var(--text);font-weight:700}.pc-user{border-radius:var(--radius);flex:none;align-items:center;gap:8px;max-width:180px;padding:4px;display:flex}.pc-user-nick{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.pc-main{flex-direction:column;flex:1;min-height:0;display:flex}.pc-filterbar{border-bottom:1px solid var(--border);z-index:15;background:#fff;flex-wrap:wrap;flex:none;align-items:center;gap:14px;padding:12px 28px;display:flex;position:relative}.pc-chips{flex-wrap:wrap;gap:6px;display:flex}.pc-dropdowns{gap:6px;display:flex}.dropdown{z-index:11;position:relative}.dropdown-btn{border-radius:var(--radius);border:1px solid var(--border);height:34px;color:var(--text);white-space:nowrap;background:#fff;align-items:center;gap:4px;padding:0 10px 0 14px;font-size:14px;font-weight:600;display:flex}.dropdown-btn.is-active{background:var(--primary-tint);color:var(--primary);border-color:var(--primary)}.dropdown-menu{border:1px solid var(--border);border-radius:var(--radius);min-width:160px;box-shadow:var(--shadow-float);background:#fff;flex-direction:column;padding:6px;display:flex;position:absolute;top:40px;left:0}.dropdown-menu button{border-radius:var(--radius-sm);color:var(--text);white-space:nowrap;text-align:left;padding:9px 12px;font-size:14px;font-weight:500}.dropdown-menu button:hover{background:var(--surface)}.dropdown-menu button[aria-pressed=true]{color:var(--primary);font-weight:700}.dropdown-scrim{z-index:10;position:fixed;inset:0}.pc-body{flex:1;min-height:0;display:flex}.pc-panel{border-right:1px solid var(--border);background:#fff;flex-direction:column;flex:none;width:420px;min-height:0;display:flex}.pc-list-head{flex:none;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.pc-list-head h2{font-size:15px;font-weight:700}.pc-scroll{flex:1;min-height:0;overflow-y:auto}.pc-detail-top{z-index:2;border-bottom:1px solid var(--surface-2);background:#fff;align-items:center;padding:6px 12px;display:flex;position:sticky;top:0}.back-btn{height:40px;color:var(--text);border-radius:var(--radius-sm);align-items:center;gap:2px;padding:0 8px 0 4px;font-size:14px;font-weight:600;display:flex}.back-btn:hover{background:var(--surface)}.pc-map{background:var(--surface-3);isolation:isolate;flex:1;min-width:0;position:relative}.fav-toggle{z-index:10;border-radius:var(--radius-pill);border:1px solid var(--border);height:40px;color:var(--text);background:#fff;align-items:center;gap:8px;padding:0 12px 0 14px;font-size:14px;font-weight:600;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 2px 8px #0000001f}.fav-toggle .ic-heart{stroke:var(--primary);stroke-width:2px}.fav-toggle[aria-checked=true]{border-color:var(--primary)}.switch{border-radius:var(--radius-pill);background:var(--border-2);flex:none;width:32px;height:18px;transition:background .15s;position:relative}.switch-knob{background:#fff;border-radius:50%;width:14px;height:14px;transition:left .15s;position:absolute;top:2px;left:2px}.fav-toggle[aria-checked=true] .switch{background:var(--primary)}.fav-toggle[aria-checked=true] .switch-knob{left:16px}.pc-my{background:var(--surface);flex:1;min-height:0;overflow-y:auto}.pc-my-inner{flex-direction:column;gap:16px;max-width:760px;margin:0 auto;padding:40px 24px 32px;display:flex}.card{border:1px solid var(--border);border-radius:var(--radius);background:#fff}.profile{align-items:center;gap:16px;padding:24px;display:flex}.profile .profile-sub{font-size:14px}.base-card{justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.base-card-body{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;font-size:15px;display:flex}.base-card-body .muted{font-size:13px}.tabs{border-bottom:1px solid var(--border);padding:0 12px;display:flex}.tabs button{height:52px;color:var(--text-3);padding:0 12px;font-size:15px;font-weight:500}.tabs button[aria-selected=true]{color:var(--text);box-shadow:inset 0 -2px 0 var(--text);font-weight:700}@media (width<=1080px){.pc-header{gap:12px;padding:0 16px}.pc-header .loc-suffix,.pc-user-nick{display:none}.pc-panel{width:360px}.pc-filterbar{padding:10px 16px}}.m{background:#fff;flex-direction:column;height:100%;display:flex;overflow:hidden}.m-screen{flex:1;min-height:0;position:relative}.m-map{background:var(--surface-3);position:absolute;inset:0;overflow:hidden}.m-map-canvas{inset:0 0 var(--peek-h) 0;position:absolute}.m-map-canvas.is-full{bottom:0}.m-top{top:calc(8px + var(--safe-top));z-index:10;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;left:0;right:0}.m-top>*{pointer-events:auto}.loc-btn--m{border:1px solid var(--border);max-width:calc(100% - 24px);height:36px;box-shadow:var(--shadow-chip);background:#fff;align-self:flex-start;margin:0 12px}.m-search-row{gap:8px;margin:0 12px;display:flex}.search--m-float{border:1px solid var(--border);background:#fff;flex:1;height:46px}.m-chips{scrollbar-width:none;gap:6px;margin:-6px 0;padding:6px 12px;display:flex;overflow-x:auto}.m-chips::-webkit-scrollbar{display:none}.m-chips .vr{background:var(--border-2)}.m-sheet{z-index:20;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:#fff;flex-direction:column;transition:height .28s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -4px 20px #0000001f}.m-sheet.is-dragging{transition:none}.m-sheet-head{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;flex-direction:column;flex:none;align-items:center;padding:0 16px;display:flex}.sheet-handle{flex:none;justify-content:center;align-items:center;width:88px;height:24px;display:flex}.sheet-handle span{background:var(--border-2);border-radius:2px;width:40px;height:4px}.peek{align-self:stretch}.peek .row--m{border-top:0;padding:2px 0 14px}.peek-msg{text-align:center;color:var(--text-2);padding:10px 0 20px;font-size:14px}.m-sheet-title{align-self:stretch;padding:0 0 4px;font-size:16px;font-weight:700}.m-sheet-sorts{flex:none;padding:6px 16px 10px}.m-sheet-list{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.m-list,.m-page{background:#fff;flex-direction:column;display:flex;position:absolute;inset:0}.m-list-head{padding:calc(8px + var(--safe-top)) 16px 0;flex-direction:column;flex:none;gap:10px;display:flex}.m-list-head .loc-btn--m{box-shadow:none;margin:0}.m-list-head .m-search-row{margin:0}.search--m{background:var(--surface);flex:1;height:44px}.m-list-head .filter-btn{width:44px;height:44px}.m-chips--flat{margin:-6px -16px;padding:6px 16px}.m-list-bar{justify-content:space-between;align-items:center;padding:4px 0 8px;display:flex}.m-list-bar h2{font-size:14px;font-weight:700}.m-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.m-title{height:calc(52px + var(--safe-top));padding:var(--safe-top) 16px 0;border-bottom:1px solid var(--surface-2);flex:none;align-items:center;font-size:18px;font-weight:700;display:flex}.m-page .state-box{padding-top:64px}.m-my{overscroll-behavior:contain;background:var(--surface);position:absolute;inset:0;overflow-y:auto}.m-profile{padding:calc(20px + var(--safe-top)) 16px 20px;border-bottom:1px solid var(--border);background:#fff;align-items:center;gap:14px;display:flex}.m-group{background:#fff;margin-top:8px}.m-group-title{border-bottom:1px solid var(--surface-2);align-items:center;height:48px;padding:0 16px;font-size:15px;font-weight:700;display:flex}.m-group .state-box{padding:40px 0}.m-setting{width:100%;height:52px;color:var(--text-2);align-items:center;gap:8px;padding:0 12px 0 16px;font-size:15px;display:flex}.m-setting-value{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:auto;font-size:13px;overflow:hidden}.m-setting .ic-line{color:var(--text-3)}.tabbar{height:calc(var(--tabbar-h) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);border-top:1px solid var(--border);z-index:30;background:#fff;flex:none;display:flex;position:relative}.tabbar button{color:var(--text-3);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;display:flex}.tabbar button[aria-current=page]{color:var(--text)}.tabbar span{font-size:11px;font-weight:600}.m-detail .modal-panel{max-width:none;height:100%;max-height:none;box-shadow:none;border-radius:0;gap:0;padding:0;animation-name:detail-in;overflow:hidden}@keyframes detail-in{0%{opacity:.6;transform:translate(24px)}}.m-detail-head{height:calc(52px + var(--safe-top));padding:var(--safe-top) 4px 0 8px;border-bottom:1px solid var(--surface-2);flex:none;align-items:center;gap:4px;display:flex}.m-detail-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:17px;font-weight:700;overflow:hidden}.m-detail-head .fav-btn{margin:0}.m-detail-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.m-detail-foot{padding:12px 16px max(16px, calc(8px + var(--safe-bottom)));border-top:1px solid var(--border);background:#fff;flex:none}
