.funy-home-shops{display:block;width:100%;min-width:0;padding:10px 0 6px;color:#211e24;font-family:'Pretendard Variable',Pretendard,sans-serif}.funy-home-shops[hidden],.funy-home-shops [hidden]{display:none!important}.funy-home-shops *{box-sizing:border-box}.funy-home-shops button,.funy-home-shops select{font:inherit}.funy-home-shops button,.funy-home-shops a,.funy-home-shops select{-webkit-tap-highlight-color:transparent}.funy-home-shops :focus-visible{outline:2px solid #8062d8;outline-offset:3px}.fhs-main-title{font-size:25px;font-weight:850;line-height:1.3;letter-spacing:-.04em;white-space:pre-line;margin:0 0 5px}.fhs-subtitle{font-size:11px;line-height:1.5;color:#847c88;margin:0}.fhs-section{margin:27px 0 0;min-width:0}.fhs-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.fhs-head h3{font-size:17px;line-height:1.4;letter-spacing:-.03em;margin:0;font-weight:800}.fhs-region{position:relative;display:flex;align-items:center;gap:3px;flex:none;color:#8062d8;max-width:44%}.fhs-region select{min-height:36px;max-width:100%;border:0;background:#fff;color:#625b68;font-size:12px;padding:4px 0;cursor:pointer}.fhs-track{display:flex;overflow-x:auto;overflow-y:hidden;gap:10px;padding:1px 0 5px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;min-width:0}.fhs-track::-webkit-scrollbar{display:none}.fhs-tile{flex:0 0 146px;min-width:0;border:1px solid #eee8f0;border-radius:14px;overflow:hidden;background:#fff;color:inherit;text-decoration:none;scroll-snap-align:start}.fhs-image{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#f2eef5}.fhs-tile b{display:block;padding:9px 8px 8px;font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fhs-tile small{display:block;color:#8f8794;font-size:10px;font-weight:500;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fhs-tabs{display:flex;align-items:center;gap:13px;overflow-x:auto;scrollbar-width:none;margin:-3px 0 13px;min-width:0}.fhs-tabs button{flex:none;min-height:36px;padding:0;border:0;background:transparent;color:#938b98;font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer}.fhs-tabs button[aria-selected=true]{color:#211e24;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1.5px}.fhs-list{display:grid;gap:8px;background:#f7f3fb;padding:7px;border-radius:18px}.fhs-shop{position:relative;height:128px;border:1px solid #e6dfe8;border-radius:17px;background:#fff;box-shadow:0 3px 13px #2a223609}.fhs-shop-link{height:100%;padding:11px 39px 11px 10px;display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;align-items:center;color:inherit;text-decoration:none!important}.fhs-shop-thumb{width:80px;height:80px;border-radius:13px;object-fit:cover;background:#f1eef4;display:block}.fhs-copy{min-width:0}.fhs-copy h4{margin:0 0 5px;color:#211e24;font-size:15px;font-weight:800;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fhs-meta{display:flex;align-items:center;gap:4px;margin:0;color:#847c88;font-size:10px;line-height:16px;min-width:0}.fhs-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fhs-meta svg{width:12px;height:12px;flex:0 0 12px;fill:none;stroke:currentColor;stroke-width:1.8}.fhs-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px;max-height:40px;overflow:hidden}.fhs-tags span{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:999px;background:#f2ecef;color:#6d5d6a;font-size:9px;font-weight:650;white-space:nowrap}.fhs-heart{position:absolute;right:5px;top:6px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#bcb3c6;cursor:pointer}.fhs-heart svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}.fhs-heart[aria-pressed=true]{color:#8062d8}.fhs-heart[aria-pressed=true] svg{fill:currentColor}.fhs-heart:disabled{opacity:.4}.fhs-chevron{position:absolute;right:13px;top:54%;color:#9b88c5;font-size:20px;pointer-events:none}.fhs-map-link{display:flex;align-items:center;justify-content:center;min-height:42px;margin-top:13px;border:1px solid #d8d0df;border-radius:10px;color:#625b68;text-decoration:none;font-size:12px;font-weight:650}.fhs-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:0 1px 10px;margin-top:-2px}.fhs-chips button{flex:none;border:1px solid #e5deec;border-radius:99px;background:#fff;color:#6a6272;padding:8px 10px;font-size:11px;font-weight:650;cursor:pointer;white-space:nowrap}.fhs-chips button[aria-selected=true]{border-color:#8062d8;background:#f4effc;color:#7350c8}.fhs-empty{margin:0;padding:23px 12px;text-align:center;color:#8d8794;font-size:12px;line-height:1.7;background:#faf8fc;border-radius:13px}.fhs-empty a,.fhs-empty button{display:inline-block;margin-top:9px;color:#7350c8;border:1px solid #e5deec;background:#fff;border-radius:9px;padding:7px 12px;text-decoration:none;cursor:pointer;font-size:12px}.fhs-note{color:#918998;font-size:10px;line-height:1.5;margin:8px 0 0}.fhs-status{min-height:0;color:#8062d8;font-size:11px;line-height:1.5;margin:8px 0 0}.fhs-status:empty{display:none}.fhs-loading{height:170px;border-radius:14px;background:#f6f2f9}
@media(max-width:360px){.fhs-tabs{gap:10px}.fhs-tabs button{font-size:12px}.fhs-shop-link{grid-template-columns:68px minmax(0,1fr);gap:8px;padding-left:8px}.fhs-shop-thumb{width:68px;height:76px}.fhs-copy h4{font-size:14px}.fhs-main-title{font-size:23px}.fhs-tile{flex-basis:136px}}

.fhs-region>svg{display:block;width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.8}
/* Photo cards share the existing favorite relation; logos remain fixed. */
.fhs-tile{position:relative}.fhs-tile>a{display:block;height:100%;color:inherit;text-decoration:none}.fhs-photo{position:relative;display:block;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f3f0f6}.fhs-photo .fhs-image{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .65s ease;object-fit:cover;background:transparent}.fhs-photo .fhs-image.is-on{opacity:1}.funy-home-shops .fhs-tile-heart{right:6px;top:6px;background:rgba(255,255,255,.94);box-shadow:0 1px 6px #211e2414}.fhs-tile .fhs-recommend-note{margin-top:6px;font-size:10px;line-height:1.45;color:#8062d8;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.fhs-shop-thumb{position:relative;overflow:hidden}.fhs-shop-thumb>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.fhs-default-image{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:linear-gradient(145deg,#f7f4fc,#eee8f8);color:#8d8992}.fhs-default-image svg{width:23px;height:31px;overflow:visible}.fhs-default-image .fallback-pin-body{fill:#99959e}.fhs-default-image .fallback-pin-line{fill:none;stroke:#faf9fb;stroke-width:4;stroke-linecap:round}.fhs-default-image .fallback-pin-center{fill:#faf9fb}.fhs-default-image>span{font-size:7px;font-weight:800;line-height:1;letter-spacing:.07em;color:#8d8992}.fhs-list{background:transparent;padding:0;border-radius:0}.fhs-chevron{top:50%;transform:translateY(-50%)}
.fhs-toast{position:fixed;z-index:2147483000;left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);max-width:calc(100% - 40px);width:max-content;padding:11px 15px;border-radius:12px;background:rgba(38,34,43,.95);color:#fff;font:650 12px/1.5 'Pretendard Variable',Pretendard,sans-serif;text-align:center;opacity:0;pointer-events:none}.fhs-toast.is-visible{opacity:1}
@media(prefers-reduced-motion:reduce){.fhs-photo .fhs-image{transition:none}}
/* HOME refinement: transparent favorite targets, softer photo overlap, compact MAP tags. */
.funy-home-shops .fhs-tile-heart,.funy-home-shops .fhs-tile-heart:active{background:transparent!important;box-shadow:none!important;border:0;border-radius:0;color:#fff}.funy-home-shops .fhs-tile-heart svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.65))}.funy-home-shops .fhs-tile-heart[aria-pressed=true]{color:#8062d8}.funy-home-shops .fhs-tile-heart[aria-pressed=true] svg{filter:drop-shadow(0 0 1px #fff)}
.fhs-photo .fhs-image{transition:opacity 1.1s cubic-bezier(.4,0,.2,1)}.fhs-shop{height:108px}.fhs-shop-link{grid-template-columns:72px minmax(0,1fr);padding-top:9px;padding-bottom:9px}.fhs-shop-thumb{width:72px;height:72px}.fhs-tags{flex-wrap:nowrap;max-height:18px;margin-top:5px}.fhs-tags span{flex:none;background:#f3eff9;color:#6f5e8d}.fhs-region select:focus,.fhs-region select:focus-visible{outline:none;box-shadow:none}.fhs-region:focus-within{outline:none;box-shadow:none}
.fhs-loading{display:flex;align-items:center;justify-content:center;gap:10px;height:170px;padding:16px;background:#faf8fc;color:#8d8794;font:600 12px/1.6 'Pretendard Variable',Pretendard,sans-serif;border-radius:14px}.fhs-loading-dot{width:18px;height:18px;flex:0 0 18px;border:2px solid #e5deef;border-top-color:#8062d8;border-radius:50%;animation:fhs-loading-spin .9s linear infinite}@keyframes fhs-loading-spin{to{transform:rotate(360deg)}}
@media(max-width:360px){.fhs-shop-link{grid-template-columns:68px minmax(0,1fr)}.fhs-shop-thumb{width:68px;height:68px}}
@media(prefers-reduced-motion:reduce){.fhs-photo .fhs-image{transition:none}.fhs-loading-dot{animation:none}}
/* Only the circular backdrop is translucent; icon and 34px hit target remain opaque. */
.fhs-photo{isolation:isolate;z-index:0}.funy-home-shops .fhs-tile-heart{z-index:5;isolation:isolate;opacity:1;color:#a89eb9}.funy-home-shops .fhs-tile-heart::before{content:"";position:absolute;inset:2px;border-radius:50%;background:#fff;opacity:.72;pointer-events:none;z-index:0}.funy-home-shops .fhs-tile-heart svg{position:relative;z-index:1;filter:none}.funy-home-shops .fhs-tile-heart[aria-pressed=true]{color:#8062d8}.funy-home-shops .fhs-tile-heart[aria-pressed=true] svg{filter:none}
/* Shared HOME section-title typography; main hero/title copy stays separate. */
.home-content-flow .fhs-head h3,.home-content-flow .funy-news-head h2,.home-content-flow .home-box-top h2,.home-content-flow .funy-graded-head h2,.home-content-flow .funy-shorts-head h2,.home-content-flow [data-cms-placement="home"]>.fp-cms-block>.fp-cms-title{font-family:'Pretendard Variable',Pretendard,sans-serif!important;font-size:17px!important;font-weight:800!important;line-height:1.4!important;letter-spacing:-.03em!important}

/* Compact photo-card favorites by 20%, preserving the existing touch target. */
.funy-home-shops .fhs-tile-heart::before{inset:5px}.funy-home-shops .fhs-tile-heart svg{width:16.8px;height:16.8px;overflow:visible}

/* Anchor the backdrop and icon to the same center across WebView button layouts. */
.funy-home-shops .fhs-tile-heart{padding:0}.funy-home-shops .fhs-tile-heart::before{inset:auto;left:50%;top:50%;width:24px;height:24px;transform:translate(-50%,-50%)}.funy-home-shops .fhs-tile-heart svg{position:absolute;left:50%;top:50%;margin:0;display:block;transform:translate(-50%,-50%)}

/* HOME preference sheet; existing theme chips and shop tiles are retained. */
.fhs-chips [data-theme="preference"]{display:inline-flex;align-items:center;gap:5px}
.fhs-chips [data-theme="preference"] svg{width:15px;height:15px;flex:none}
.fhs-pref-overlay{position:fixed;inset:0;z-index:2147483300;display:flex;align-items:flex-end;justify-content:center;background:transparent!important;box-shadow:none!important;filter:none!important}
.fhs-pref-overlay[hidden]{display:none!important}
.fhs-pref-backdrop{position:absolute;inset:0;background:var(--funy-dim-color,rgba(20,16,24,.38))}
.fhs-pref-dialog{position:relative;width:min(100%,460px);max-height:90dvh;display:flex;flex-direction:column;border-radius:23px 23px 0 0;background:#fff;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -10px 35px rgba(0,0,0,.14);font-family:'Pretendard Variable',Pretendard,sans-serif}
.fhs-pref-grab{width:36px;height:4px;border-radius:99px;background:#ded8e6;margin:10px auto 14px;flex:none}
.fhs-pref-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:0 19px 13px}
.fhs-pref-head h2{font-size:19px;font-weight:800;margin:0 0 5px}.fhs-pref-head p{font-size:12px;color:#847c88;margin:0}
.fhs-pref-close{width:44px;height:44px;border:0;background:transparent;color:#756e80;font-size:25px}
.fhs-pref-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 19px 24px}
.fhs-pref-group{border:0;padding:0;margin:18px 0 0}.fhs-pref-group legend{font-weight:750;font-size:14px;margin-bottom:12px}
.fhs-pref-options{display:flex;flex-wrap:wrap;gap:8px}
.fhs-pref-options button{border:1px solid #e9e5ed;background:#fff;color:#5e5966;border-radius:99px;min-height:44px;padding:9px 13px;font-size:12px}
.fhs-pref-options button[aria-pressed="true"]{border-color:#bba1e6;background:#f2ecff;color:#6748ac;font-weight:800}
.fhs-pref-foot{display:flex;gap:10px;padding:13px 19px 17px;border-top:1px solid #f0ecf4;flex:none}
.fhs-pref-foot button{min-height:48px;border:0;border-radius:12px;padding:0 17px;font-size:13px;font-weight:800}
.fhs-pref-foot [data-pref-reset]{background:#f4f2f6;color:#766f7e}
.fhs-pref-foot [data-pref-apply]{flex:1;background:#795cc5;color:#fff}
.fhs-pref-dialog :focus-visible{outline:2px solid #8062d8;outline-offset:3px}

/* Keep centered SVG anchored while Sparkle Pop scales: animation must retain translate. */
.funy-home-shops .fhs-tile-heart svg.funy-heart-pop-icon{animation-name:fhs-tile-heart-pop}
.funy-home-shops .fhs-tile-heart svg.funy-heart-unpop-icon{animation-name:fhs-tile-heart-unpop}
@keyframes fhs-tile-heart-pop{0%{transform:translate(-50%,-50%) scale(1)}30%{transform:translate(-50%,-50%) scale(1.2)}60%{transform:translate(-50%,-50%) scale(.94)}100%{transform:translate(-50%,-50%) scale(1)}}
@keyframes fhs-tile-heart-unpop{0%{transform:translate(-50%,-50%) scale(1)}45%{transform:translate(-50%,-50%) scale(.85)}100%{transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:reduce){.funy-home-shops .fhs-tile-heart svg.funy-heart-pop-icon,.funy-home-shops .fhs-tile-heart svg.funy-heart-unpop-icon{animation:none!important}}
/* In-app modal stacking: web sheet above all other web elements, native chrome uses its own DIM bridge. */
.fhs-pref-overlay:not([hidden]){z-index:2147483600}

/* First display: reveal only decoded/loaded photos; keep the existing fallback underneath. */
.fhs-photo .fhs-image.is-on:not([data-fhs-ready]){opacity:0}
.fhs-shop-thumb>img:not([data-fhs-ready]){opacity:0}
.fhs-shop-thumb>img[data-fhs-ready]{opacity:1;transition:opacity .22s ease-out}
@media(prefers-reduced-motion:reduce){.fhs-shop-thumb>img[data-fhs-ready]{transition:none}}

/* HOME > My shops: small logo-and-area cards, horizontal swipe only. */
.fhs-mini-track{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:2px 1px 7px}
.fhs-mini-track::-webkit-scrollbar{display:none}
.fhs-mini-card{box-sizing:border-box;flex:0 0 140px;width:140px;height:54px;display:flex;align-items:center;gap:7px;padding:7px;border:1px solid #ece7f1;border-radius:12px;background:#fff;color:#28232e;text-decoration:none!important;scroll-snap-align:start;min-width:0}
.fhs-mini-logo{position:relative;flex:0 0 38px;width:38px;height:38px;overflow:hidden;border-radius:9px;background:#f3eff7}
.fhs-mini-logo .fhs-default-image{gap:0}.fhs-mini-logo .fhs-default-image svg{width:14px;height:18px}.fhs-mini-logo .fhs-default-image>span{font-size:4px}
.fhs-mini-logo>img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover}
.fhs-mini-info{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;justify-content:center;gap:3px;overflow:hidden}
.fhs-mini-info strong,.fhs-mini-info small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.fhs-mini-info strong{font-size:11px;line-height:1.25;font-weight:800}.fhs-mini-info small{font-size:10px;line-height:1.2;font-weight:500;color:#908898}
