/* 호플우드 숲 — 메타게임 화면 */

#forestScreen{padding-bottom:110px}
.fw-stats{display:flex;gap:8px;flex-wrap:wrap}
.fw-stats span{display:flex;align-items:center;gap:5px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid rgba(40,51,47,.09);font-size:13px;font-weight:800;color:#4b5a55}
.fw-stats .ui-icon{width:16px;height:16px;color:#3f8f6c}
.fw-stats b{font-family:'Jua',system-ui,sans-serif;font-size:16px;font-weight:400;color:#1d2925}

/* 부탁 카드 */
.fw-request{display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:center;padding:12px 14px;border-radius:22px;background:#fffdf6;border:2px solid #f1e2c2;box-shadow:0 5px 0 rgba(120,90,40,.1)}
.fw-req-art{width:84px;height:84px;border-radius:50%;background:#fff1d8;overflow:hidden}
.fw-req-art.full{border-radius:20px;background:radial-gradient(circle at 50% 70%,#eaf6df 0 58%,transparent 60%);overflow:visible}
.fw-req-art.full .hw-char{transform:scale(1.08);transform-origin:50% 80%}
.fw-req-art .hw-char{width:100%;height:100%}
.fw-req-art .hw-art img{width:100%;height:100%;object-fit:contain}
.fw-req-body small{display:block;font-size:12px;font-weight:800;color:#b0672a}
.fw-req-body p{margin:3px 0 9px;font-size:16px;line-height:1.45;color:#2b2521}
.fw-help-btn{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 18px;border-radius:16px;background:#2f8f5f;color:#fff;font-size:17px;font-weight:900;box-shadow:0 5px 0 #1f6a45}
.fw-help-btn:active{transform:translateY(3px);box-shadow:0 2px 0 #1f6a45}
.fw-help-btn .ui-icon{width:18px;height:18px;fill:currentColor;stroke-width:1.2}
.fw-request.fw-bump{animation:fwBump .5s ease}

/* 퀘스트 카드 */
.fw-request[data-kind="quest"],.fw-request[data-kind="coop"]{display:block;padding:0;border:0;background:none;box-shadow:none}
.fw-quest-open{position:relative;width:100%;display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:center;padding:12px 14px;border-radius:22px;background:#fffdf6;border:3px solid #f1c96a;box-shadow:0 6px 0 #d9a642;text-align:left;color:inherit;font:inherit}
.fw-quest-open:active{transform:translateY(3px);box-shadow:0 3px 0 #d9a642}
.fw-request[data-kind="coop"] .fw-quest-open{border-color:#f0a3b8;box-shadow:0 6px 0 #d67890;background:#fff7f9}
.fw-quest-open .fw-req-art{display:block}
.fw-quest-open .fw-req-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.fw-quest-title{font-family:'Jua',system-ui,sans-serif;font-weight:400;font-size:22px;line-height:1.2;color:#2b2521}
.fw-quest-meta{display:flex;flex-wrap:wrap;gap:5px}
.fw-quest-meta i{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;background:#eef6ec;color:#3b6e4f;font-style:normal;font-size:12px;font-weight:800}
.fw-quest-meta i.coop{background:#ffe3ea;color:#b24a66}
.fw-quest-meta .ui-icon{width:14px;height:14px}
.fw-quest-go{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;margin-top:2px;min-height:40px;padding:0 14px;border-radius:14px;background:#2f8f5f;color:#fff;font-size:15px;font-weight:900;box-shadow:0 4px 0 #1f6a45}
.fw-quest-go .ui-icon{width:15px;height:15px;fill:currentColor}

/* 퀘스트 길 */
.fw-trail{display:flex;align-items:center;justify-content:space-between;gap:0;margin:0;padding:4px 6px;list-style:none;position:relative}
.fw-trail::before{content:'';position:absolute;left:22px;right:22px;top:50%;border-top:3px dashed #cdb98f;z-index:0}
.fw-trail li{position:relative;z-index:1;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#efe8da;border:3px solid #fff;color:#a39479;overflow:hidden;box-shadow:0 2px 0 rgba(0,0,0,.08)}
.fw-trail li .ui-icon{width:14px;height:14px}
.fw-trail li .hw-char{width:100%;height:100%}
.fw-trail li[data-state="done"]{background:#dff1d3;border-color:#7cc07a}
.fw-trail li[data-state="now"]{width:40px;height:40px;background:#ffd84a;border-color:#fff;color:#6a3f00;font-family:'Jua',system-ui,sans-serif;font-size:22px;animation:fwBeat 1.4s ease-in-out infinite}
.fw-trail li[data-coop="1"]{border-color:#f0a3b8}

/* 지도 느낌표 */
.fw-marker{position:absolute;z-index:7;width:13%;aspect-ratio:1;margin:-13% 0 0 -6.5%;padding:0;border:0;background:none;pointer-events:auto;animation:fwFloat 1.6s ease-in-out infinite}
.fw-marker-face{position:absolute;inset:0;border-radius:50% 50% 50% 8%;transform:rotate(-45deg);background:#fff;border:3px solid #f1b52a;box-shadow:0 5px 0 rgba(90,60,10,.25);overflow:hidden}
.fw-marker-face .hw-char{width:100%;height:100%;transform:rotate(45deg)}
.fw-marker b{position:absolute;right:-12%;top:-14%;width:46%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#ff7a3d;color:#fff;border:2px solid #fff;font-family:'Jua',system-ui,sans-serif;font-size:clamp(14px,4vw,20px);font-weight:400}
.fw-marker.coop .fw-marker-face{border-color:#e97c9a}
.fw-marker.coop b{background:#e2557c}
.fw-marker.fw-pop{animation:fwPop .55s cubic-bezier(.2,1.5,.45,1),fwFloat 1.6s ease-in-out .55s infinite}

/* 퀘스트 창 */
.fw-quest-ribbon{display:inline-block;margin:-4px auto 6px;padding:5px 16px;border-radius:999px;background:#ffd84a;color:#5d3a00;font-size:14px;font-weight:900}
.fw-quest-ribbon.coop{background:#ffd0dc;color:#9c3050}
.fw-quest-ask{margin:0 0 10px;font-size:16px;line-height:1.5;color:#3a332d}
.fw-quest-info{display:flex;justify-content:center;gap:8px;margin-bottom:10px}
.fw-quest-info span{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:999px;background:#f1f4ef;font-size:13px;font-weight:800;color:#4b5a55}
.fw-quest-info .ui-icon{width:15px;height:15px}
.fw-quest-reward{margin:0 0 12px;padding:10px;border-radius:18px;background:#fff8e6;border:2px dashed #edcf92}
.fw-quest-reward b{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:#8a5a12}
.fw-quest-reward b .ui-icon{width:15px;height:15px;fill:#ffc53d;color:#e0a100}
.fw-quest-reward small{display:block;margin:2px 0 6px;font-size:13px;font-weight:800;color:#5b4a36}
.fw-quest-gifts{display:flex;justify-content:center;gap:8px}
.fw-quest-gifts span{width:48px;height:48px}
.fw-quest-gifts img{width:100%;height:100%;object-fit:contain}
.fw-talk{display:flex;gap:6px;align-items:flex-start;margin:-4px 0 12px;padding:10px 12px;border-radius:14px;background:#fff1f5;color:#8b3a55;font-size:14px;font-weight:700;line-height:1.45;text-align:left}
.fw-talk .ui-icon{flex:none;width:18px;height:18px;margin-top:1px}

/* 부모님과 함께 */
.fw-coop-pair{display:flex;align-items:center;justify-content:center;gap:10px;margin:6px 0}
.fw-coop-pair span{display:flex;flex-direction:column;align-items:center;gap:2px}
.fw-coop-pair span>.hw-char,.fw-coop-pair span>.ui-icon{width:64px;height:64px;border-radius:50%;background:#e3f6ea}
.fw-coop-pair .adult>.ui-icon{padding:12px;background:#ffe3ea;color:#b24a66}
.fw-coop-pair b{font-size:13px}
.fw-coop-pair i{font-style:normal;font-size:24px;font-weight:900;color:#c9b99a}
.fw-coop-steps{margin:0 0 12px;padding:0 0 0 22px;text-align:left;font-size:15px;line-height:1.5;color:#3a332d}
.fw-coop-steps li+li{margin-top:6px}
.fw-coop{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:35;transform:translateX(-50%);display:flex;gap:6px;padding:6px;border-radius:999px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.fw-coop span{display:flex;align-items:center;gap:6px;padding:4px 14px 4px 4px;border-radius:999px;color:#9aa19d;transition:background .2s,color .2s}
.fw-coop span>.hw-char,.fw-coop span>.ui-icon{width:36px;height:36px;border-radius:50%;background:#eef1ec;opacity:.55}
.fw-coop span.adult>.ui-icon{padding:7px}
.fw-coop span b{font-size:15px;font-weight:900;white-space:nowrap}
.fw-coop span[data-on="1"]{background:#2f8f5f;color:#fff}
.fw-coop span.adult[data-on="1"]{background:#d9587c}
.fw-coop span[data-on="1"]>.hw-char,.fw-coop span[data-on="1"]>.ui-icon{opacity:1;background:#fff;color:#d9587c}
.fw-coop.fw-bump{animation:fwCoopBump .5s ease}
body.fw-coop-on .screen.on{padding-bottom:84px}

/* 숲 지도 (1080×1920 비율) */
.fw-map{position:relative;width:100%;aspect-ratio:1080/1920;border-radius:26px;overflow:hidden;border:3px solid #fff;box-shadow:0 8px 0 rgba(60,100,60,.14);touch-action:manipulation;background:#8cc46a}
.fw-mapimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none}
.fw-place{position:absolute;pointer-events:none}
.fw-stage{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 4px rgba(30,60,30,.22))}
.fw-place[data-open="1"] .fw-stage.before{opacity:0}
.fw-stage.after.fw-reveal{animation:fwReveal 1.2s cubic-bezier(.2,1.2,.4,1)}
.fw-friend,.fw-mask{position:absolute;z-index:4;display:block;pointer-events:none;filter:drop-shadow(0 3px 2px rgba(30,50,30,.28))}
.fw-friend{aspect-ratio:1}
.fw-friend .hw-char{width:100%;height:100%}
.fw-mask .g3-face-art{width:100%}
.fw-mask{transform-origin:50% 0;animation:fwSwing 3s ease-in-out infinite}
.fw-mask.fw-pop{animation:fwPop .55s cubic-bezier(.2,1.5,.45,1)}
.fw-deco{position:absolute;z-index:3;display:block;aspect-ratio:1;pointer-events:none;filter:drop-shadow(0 3px 2px rgba(30,50,30,.28))}
.fw-deco img{width:100%;height:100%;object-fit:contain}
.fw-festival-line{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;overflow:visible}
.fw-festival-line path{stroke-width:2.5px}
.fw-hopple{position:absolute;z-index:6;width:15%;aspect-ratio:1;pointer-events:none;filter:drop-shadow(0 4px 3px rgba(30,50,30,.3))}
.fw-hopple .hw-art,.fw-hopple .hw-art img{width:100%;height:100%;object-fit:contain}
/* 놓은 선물: 숲과 같은 그림체라 묻히지 않게 흰 스티커 테두리 + 발밑 크림색 받침을 준다. 자리 좌표는 선물의 발밑 가운데 */
.fw-placed{position:absolute;z-index:5;width:14%;aspect-ratio:1;display:block;pointer-events:none}
.fw-placed:before{content:"";position:absolute;left:8%;right:8%;bottom:2%;height:24%;border-radius:50%;background:rgba(255,248,226,.92);box-shadow:0 0 0 2px rgba(255,255,255,.95),0 3px 6px rgba(30,50,30,.35)}
.fw-placed img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff) drop-shadow(0 2px 0 #fff) drop-shadow(0 -2px 0 #fff) drop-shadow(0 4px 3px rgba(30,50,30,.4))}
.fw-placed.fw-new:after{content:"";position:absolute;left:50%;bottom:0;width:130%;aspect-ratio:1;border-radius:50%;border:3px solid #ffd84a;transform:translate(-50%,30%);animation:fwRing 1s ease-out 3}
.fw-placed.fw-shine{animation:fwShine .9s ease-in-out 2}
.fw-dim{position:absolute;inset:0;z-index:6;background:rgba(18,32,22,.42);pointer-events:none}
.fw-map[data-placing="1"] .fw-placed{z-index:7}
.fw-spot{position:absolute;z-index:8;width:12%;aspect-ratio:1;min-width:0!important;min-height:0!important;padding:0;border-radius:50%;background:rgba(255,250,228,.95);border:3px dashed #e0a100;box-shadow:0 0 0 5px rgba(255,216,74,.45),0 4px 0 rgba(0,0,0,.2);display:grid;place-items:center;font-family:'Jua',system-ui,sans-serif;font-size:26px;color:#b27800;animation:fwSpot 1.4s ease-in-out infinite}
.fw-spot .ui-icon{width:55%;height:55%}
.fw-spot.swap{background:rgba(255,255,255,.35);border-style:solid}
.fw-spot:active{scale:.9}
.fw-gift-chip{display:flex;align-items:center;gap:5px;min-height:0;padding:8px 12px;border-radius:999px;background:#fff8e1;border:1px solid #f0d58a;font-size:13px;font-weight:800;color:#6a4b1c}
.fw-gift-chip .ui-icon{width:16px;height:16px;color:#e0a100}
.fw-gift-chip b{font-family:'Jua',system-ui,sans-serif;font-size:16px;font-weight:400;color:#1d2925}
@keyframes fwRing{0%{opacity:1;scale:.6}100%{opacity:0;scale:1.25}}
@keyframes fwShine{0%,100%{translate:0 0;scale:1}40%{translate:0 -18%;scale:1.18}}
@keyframes fwSpot{50%{box-shadow:0 0 0 9px rgba(255,216,74,.25),0 4px 0 rgba(0,0,0,.2)}}
.fw-pop{animation:fwPop .55s cubic-bezier(.2,1.5,.45,1)}
.fw-place-hint{position:absolute;z-index:9;left:50%;bottom:14px;transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:rgba(43,37,33,.84);color:#fff;font-size:14px;font-weight:800;white-space:nowrap}
.fw-map[data-placing="1"]{cursor:pointer;box-shadow:0 0 0 5px #ffd84a,0 8px 0 rgba(60,100,60,.14)}

/* 호플이 놀람 말풍선 */
.fw-bubble{position:absolute;z-index:9;display:flex;align-items:center;gap:6px;padding:6px 12px 6px 6px;border-radius:18px;background:#fffdf6;border:2px solid #2b2521;box-shadow:0 4px 0 rgba(0,0,0,.15);animation:fwPop .45s cubic-bezier(.2,1.5,.45,1)}
.fw-bubble-art{width:44px;height:44px;display:block}
.fw-bubble-art .hw-art,.fw-bubble-art img{width:100%;height:100%;object-fit:contain}
.fw-bubble b{font-size:14px;color:#2b2521;white-space:nowrap}

/* 선물 고르기 */
.fw-gift-sheet{scroll-margin-bottom:110px;padding:14px;border-radius:22px;background:#fff8e6;border:2px dashed #edcf92;text-align:center}
.fw-gift-sheet p{margin:0 0 10px;font-size:16px;font-weight:800;color:#6a4b1c}
.fw-gifts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fw-gift{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:18px;background:#fff;border:3px solid #f0e2c6;box-shadow:0 4px 0 rgba(120,80,40,.12)}
.fw-gift span{width:64px;height:64px;display:block}
.fw-gift span img{width:100%;height:100%;object-fit:contain}
.fw-gift small{font-size:13px;font-weight:800;color:#5b4a36}
.fw-gift:active{transform:translateY(3px)}
.fw-all-games{width:100%;font-size:15px}

/* 결과 카드 */
.fw-card{text-align:center}
.fw-card-art{width:160px;height:160px;margin:0 auto 4px}
.fw-card-art .hw-char,.fw-card-art .hw-art img{width:100%;height:100%;object-fit:contain}
.fw-card-who{display:block;font-size:13px;font-weight:800;color:#b0672a}
.fw-card h2{font-size:22px;line-height:1.35;margin:4px 0 12px}
.fw-story-art{position:relative;height:190px;margin:2px auto 14px;overflow:hidden;border-radius:22px;background:#e6f1dc}
.fw-story-art.storm>img{width:100%;height:100%;object-fit:cover;object-position:center 32%;filter:brightness(.53) saturate(.74)}
.fw-story-rain{position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 18px,rgba(222,239,249,.57) 19px 20px,transparent 21px 35px);opacity:.7}
.fw-story-art.morning{display:flex;align-items:center;justify-content:center;gap:4px;background:linear-gradient(#eaf3dc,#fff8e6)}
.fw-story-art.morning img{width:50%;height:100%;object-fit:contain}
.fw-story-art.hopple .forest{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:brightness(1.08) blur(2px);opacity:.65}
.fw-story-art.hopple .hw-char{position:absolute;left:50%;bottom:-7px;width:145px;height:174px;transform:translateX(-50%)}
.fw-story-art.hopple .hw-art img{width:100%;height:100%;object-fit:contain}
.fw-story-line{min-height:88px;display:flex;align-items:center;justify-content:center}
.fw-story-steps{display:flex;justify-content:center;gap:7px;margin:0 0 16px}
.fw-story-steps span{width:9px;height:9px;border-radius:50%;background:#d5dfd0}
.fw-story-steps span.on{width:24px;border-radius:9px;background:#459067}
.pg-story-replay{width:100%;margin:0 0 16px}

@keyframes fwSwing{0%,100%{transform:rotate(var(--swing,4deg))}50%{transform:rotate(calc(var(--swing,4deg) * -1))}}
@keyframes fwFloat{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes fwBeat{50%{transform:scale(1.12)}}
@keyframes fwCoopBump{30%{transform:translateX(-50%) scale(1.08)}}
@keyframes fwBump{30%{transform:translateY(-6px)}60%{transform:translateY(2px)}}
@keyframes fwPop{0%{transform:scale(.2);opacity:0}100%{transform:none;opacity:1}}
@keyframes fwReveal{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.06);opacity:1}100%{transform:none}}
/* 지역 탭 · 표지판 · 잠긴 지역 (ADR-0004) */
.fw-regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
.fw-regions button{min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 8px;border-radius:16px;background:#fff;border:2px solid #e6ecdf;color:#4b5a55;box-shadow:0 3px 0 rgba(40,70,50,.08)}
.fw-regions button b{font-size:14px;font-weight:900;white-space:nowrap}
.fw-regions button small{display:flex;align-items:center;gap:3px;font-size:12px;font-weight:800;color:#7b8a84}
.fw-regions button small .ui-icon{width:13px;height:13px}
.fw-regions button[data-on="1"]{background:#eaf7e2;border-color:#7cc36a;color:#24533a;box-shadow:0 3px 0 #5ea34f}
.fw-regions button:disabled{opacity:.55}
@media (max-width:360px){.fw-regions{gap:6px}.fw-regions button{padding:6px 4px}.fw-regions button b{font-size:13px}}
.fw-sign{position:absolute;z-index:6;display:flex;align-items:center;gap:4px;min-height:0!important;padding:6px 10px 6px 8px;border-radius:12px;background:#8a5a2f;color:#fff8e6;border:2px solid #5b3a1c;box-shadow:0 4px 0 #5b3a1c;transform:translate(-10%,-60%);font-size:13px;font-weight:900;animation:fwSign 2.4s ease-in-out infinite}
.fw-sign .ui-icon{width:15px;height:15px}
.fw-sign:not(.up) .ui-icon{transform:rotate(90deg)}
.fw-sign:active{transform:translate(-10%,-55%)}
.fw-request[data-kind="locked"]{background:#f7f5ef;border-style:dashed}
.fw-request[data-kind="locked"] p{margin:4px 0 0;font-size:15px;font-weight:800;color:#5b5a50;line-height:1.4}
.fw-request[data-kind="locked"] small{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:900;color:#7b7a6e}
.fw-request[data-kind="locked"] small .ui-icon{width:14px;height:14px}
.fw-locked-faces{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:2px;padding:6px;background:#eceae0;filter:grayscale(.35)}
.fw-locked-faces .hw-char{width:34px!important;height:34px!important}
.fw-map.fw-enter{animation:fwEnter .45s ease}
@keyframes fwSign{50%{translate:0 -3px}}
@keyframes fwEnter{0%{opacity:.3;transform:scale(.98)}100%{opacity:1;transform:none}}
/* 확장 (ADR-0005): 완성한 지역 · 길이 막힌 지역 · 안개 너머 */
.fw-regions button[data-complete="1"] small{color:#b0780a}
.fw-regions button[data-complete="1"] small .ui-icon{fill:#ffc93a;stroke:#b0780a}
.fw-regions .fw-fog-tab{background:linear-gradient(160deg,#f3f5f8,#dfe5ec);border-style:dashed;border-color:#c7d0da;color:#6b7684}
.fw-regions .fw-fog-tab small{font-size:14px;color:#8793a1}
.fw-sign.shut{background:#9b8f80;border-color:#6d6358;box-shadow:0 4px 0 #6d6358;animation:none}
.fw-mist{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(ellipse at 30% 30%,rgba(255,255,255,.55),transparent 60%),radial-gradient(ellipse at 70% 70%,rgba(255,255,255,.5),transparent 55%),rgba(236,240,244,.45);backdrop-filter:saturate(.5)}
.fw-path-go{margin-top:8px;min-height:40px;padding:6px 14px;font-size:14px}
.fw-quest-ribbon.fog{background:#e3e8ef;color:#556271}
.fw-quest-ribbon.done{background:#ffe69a;color:#7a4e00}
.fw-quest-ribbon .ui-icon{width:15px;height:15px;vertical-align:-2px}
.fw-stamp{position:relative;width:150px;height:150px;margin:4px auto 6px;border-radius:50%;background:radial-gradient(circle,#fff8dc 58%,#ffd84a 59%,#ffd84a 66%,#fff3c4 67%);box-shadow:0 5px 0 #e0b233;animation:fwStamp .6s cubic-bezier(.2,1.6,.4,1) both}
.fw-stamp .hw-art{position:absolute;inset:14px 14px 30px}
.fw-stamp .hw-art img{width:100%;height:100%;object-fit:contain}
.fw-stamp b{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);padding:2px 10px;border-radius:999px;background:#c9820a;color:#fff;font-size:14px;white-space:nowrap}
@keyframes fwStamp{from{transform:scale(1.8) rotate(-12deg);opacity:0}to{transform:none;opacity:1}}
.fw-done-faces{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;margin:0 0 8px}
.fw-done-faces .hw-char{width:38px!important;height:38px!important}
.fw-fog-clue{display:flex;gap:6px;align-items:flex-start;margin:0 0 12px;padding:10px 12px;border-radius:14px;background:#eef2f6;color:#566373;font-size:14px;font-weight:700;line-height:1.45;text-align:left}
.fw-fog-clue .ui-icon{flex:none;width:18px;height:18px;margin-top:1px}
.fw-fog-art{position:relative;width:220px;height:130px;margin:4px auto 8px;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#cfdbe6,#eef2f5 60%,#dfe8d8)}
.fw-fog-art span{position:absolute;bottom:14px;display:grid;place-items:center;width:44px;height:52px;border-radius:50% 50% 44% 44%;background:#9aa6b3;color:#eef2f6;font-size:24px;font-weight:900;opacity:.75}
.fw-fog-art span:nth-of-type(1){left:28px;transform:scale(.85)}
.fw-fog-art span:nth-of-type(2){left:88px;bottom:22px}
.fw-fog-art span:nth-of-type(3){left:150px;transform:scale(.8)}
.fw-fog-art i{position:absolute;z-index:1;height:40px;border-radius:40px;background:rgba(255,255,255,.82);animation:fwFog 7s ease-in-out infinite alternate}
.fw-fog-art i:nth-of-type(1){left:-30px;top:30px;width:150px}
.fw-fog-art i:nth-of-type(2){left:90px;top:62px;width:170px;animation-delay:-2.5s}
.fw-fog-art i:nth-of-type(3){left:10px;top:92px;width:140px;animation-delay:-4.5s}
@keyframes fwFog{from{transform:translateX(-14px)}to{transform:translateX(18px)}}
@media (prefers-reduced-motion:reduce){.fw-stage.after.fw-reveal,.fw-pop,.fw-marker,.fw-trail li,.fw-coop,.fw-request.fw-bump,.fw-bubble,.fw-mask,.fw-spot,.fw-placed.fw-shine,.fw-placed.fw-new:after,.fw-sign,.fw-map.fw-enter,.fw-stamp,.fw-fog-art i{animation:none!important}}

/* 웹 무료판: 첫 게임 뒤 "부모님께 보여 주세요" 카드 */
.fw-parent-card{position:relative;display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;margin-top:10px;padding:10px 34px 10px 12px;border-radius:18px;background:#f3f8ff;border:2px solid #cfe0f5}
.fw-parent-card[hidden]{display:none}
.fw-parent-card .fw-parent-art img,.fw-parent-card .fw-parent-art svg{width:48px;height:48px;object-fit:contain}
.fw-parent-card b{display:block;font-size:15px}
.fw-parent-card small{display:block;font-size:12px;color:#51627a}
.fw-parent-card .btn{padding:9px 12px;font-size:13px;white-space:nowrap}
.fw-parent-close{position:absolute;top:4px;right:6px;width:26px;height:26px;border:0;background:none;font-size:20px;line-height:1;color:#7b8aa0;cursor:pointer}
