.mg-page{--ink:#38382f;--cream:#fffaf1;--blue:#304f60;--line:#dfd8c8;--gold:#e8bd63;--muted:#726d5d;color:var(--ink);background:var(--cream);font:400 16px/1.9 'Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;text-align:left;overflow-wrap:anywhere}
.mg-page *{box-sizing:border-box}.mg-page [hidden]{display:none!important}.mg-page p,.mg-page h1,.mg-page h2,.mg-page h3,.mg-page ol,.mg-page dl{margin:0}.mg-page img{max-width:100%;height:auto;display:block}.mg-page button,.mg-page a{font:inherit;-webkit-tap-highlight-color:transparent}.mg-page button{cursor:pointer;color:inherit}.mg-page button:disabled{cursor:default}.mg-page button:focus-visible,.mg-page a:focus-visible,.mg-page input:focus-visible{outline:3px solid #317898;outline-offset:5px}.mg-page a{color:inherit}.mg-page .wp-block-spacer{height:30px!important}.mg-page .mg-nowrap{white-space:nowrap}.mg-page .heading-h2:before,.mg-page .heading-h2:after{display:none}.mg-page h2.heading-h2{font-family:inherit;font-size:30px;font-weight:800;line-height:1.6;background:none;border:0;padding:0;letter-spacing:.04em}.mg-page h3{font-family:inherit;font-weight:800;border:0;background:none;padding:0}.mg-main,.mg-header{width:min(1160px,calc(100% - 64px));margin:auto}.mg-header{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line);gap:20px}.mg-brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800!important;font-size:20px!important;line-height:1.5!important}.mg-brand img{width:42px}.mg-brand small{display:block;font-size:11px;font-weight:400;letter-spacing:.1em}.mg-header nav{display:flex;gap:28px;font-size:14px}.mg-header nav a{text-decoration:none;text-underline-offset:6px}.mg-header nav a:hover{text-decoration:underline}.mg-hero{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:48px;padding:45px 36px 0}.mg-hero h1{font-size:clamp(36px,4.4vw,54px);font-weight:800;line-height:1.45;letter-spacing:.04em}.mg-hero h1 span{background:linear-gradient(transparent 78%,#efd891 78%,#efd891 94%,transparent 94%)}.mg-kicker{font-size:12px;letter-spacing:.12em;color:var(--blue);font-weight:700;margin-bottom:10px!important}.mg-hero .mg-kicker{margin-bottom:16px!important}.mg-intro{margin:20px 0 23px!important}.mg-primary{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px;padding:11px 24px;border:1px solid var(--blue);border-radius:99px;background:var(--blue);color:#fff!important;text-decoration:none;font-size:14px!important;font-weight:700!important;line-height:1.6!important;box-shadow:0 3px 0 #1d3543;transition:transform .15s,background .15s}.mg-primary:hover{background:#234353;transform:translateY(-1px)}.mg-primary:disabled{opacity:.65;box-shadow:none;transform:none}.mg-hero-note{font-size:12px;color:var(--muted);margin-top:12px!important}.mg-hero-art{text-align:center;max-width:320px;justify-self:center;width:100%}.mg-hero-art>img{width:270px;margin:auto}.mg-handwritten{display:block;font-size:16px;font-weight:700;transform:rotate(-6deg);margin-bottom:5px;white-space:nowrap}.mg-nameplate{display:inline-flex;gap:10px;font-size:12px;border-top:1px solid var(--line);padding-top:8px;margin-top:5px;letter-spacing:.1em}.mg-nameplate span{font-size:11px;letter-spacing:0}.mg-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.mg-section-heading>div>p:last-child{font-size:15px;margin-top:7px}.mg-label{display:inline-block;letter-spacing:0;font-size:11px;border:1px solid var(--line);border-radius:99px;padding:1px 10px;margin-left:12px;color:var(--muted)}.mg-game-section,.mg-about,.mg-read-next{scroll-margin-top:28px}.mg-play-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:20px;align-items:stretch}.mg-board{min-width:0}.mg-map{position:relative;aspect-ratio:3/2;min-height:440px;overflow:hidden;border:1px solid #d7dfd5;border-radius:24px;background:#e6eff0 url('assets/osanpo-town.png') center/cover}.mg-map-top{position:absolute;top:15px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.08em;color:#415e65}.mg-map-top span:last-child{border:1px solid #afc0bd;padding:2px 10px;border-radius:99px;background:#ffffffc9;font-size:12px}.mg-destination{position:absolute;z-index:2;display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--blue);border-radius:14px;background:#fffdf7f5;box-shadow:0 4px 0 #29495b1c;font-size:14px!important;line-height:1.4!important;min-height:52px;transform:translate(-50%,-50%);transition:box-shadow .2s}.mg-destination:hover{box-shadow:0 5px 0 #29495b38}.mg-destination:disabled{opacity:.65}.mg-destination small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:2px}.mg-pin{font-size:11px;color:var(--blue);font-weight:700}.mg-cafe{left:22%;top:53%}.mg-ramen{left:52%;top:53%}.mg-view{left:81%;top:51%}.mg-destination.is-visited{background:var(--blue);color:white}.mg-destination.is-visited small,.mg-destination.is-visited .mg-pin{color:#fff}.mg-destination.is-current{outline:3px solid #e7bf61;outline-offset:4px}.mg-walker{position:absolute;left:11%;top:77%;width:clamp(55px,8vw,90px);transform:translate(-50%,-85%);pointer-events:none;z-index:3}.mg-walker img{width:100%}.mg-walker.is-walking img{animation:mg-step .38s ease-in-out infinite alternate}.mg-walker.is-left img{scale:-1 1}.mg-map-note{position:absolute;bottom:18px;left:16px;right:16px;text-align:center;font-size:13px;color:#5f6655}.mg-game-panel{border:1px solid var(--line);border-radius:24px;padding:24px;background:#f5efdf;display:flex;flex-direction:column}.mg-panel-kicker{font-size:14px;font-weight:700;margin-bottom:16px!important}.mg-stamps{list-style:none;padding:0!important;display:grid;gap:8px}.mg-stamps li{display:flex;align-items:center;gap:10px;border-bottom:1px solid #ddd3be;padding:8px 0;line-height:1.4;font-size:14px}.mg-stamps li>span{width:36px;height:36px;border:1px dashed #b5aa92;border-radius:50%;display:grid;place-items:center;font-size:12px;flex-shrink:0}.mg-stamps small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.mg-stamps b{margin-left:auto;font-weight:400}.mg-stamps .is-collected>span{border:1px solid var(--blue);background:var(--blue);color:white}.mg-stamps .is-current{color:var(--blue);font-weight:700}.mg-story{display:flex;align-items:center;gap:10px;margin:20px 0;min-height:88px}.mg-story img{width:57px;height:57px;flex-shrink:0}.mg-story p{font-size:14px;line-height:1.8;white-space:pre-line}.mg-game-action{width:100%;margin-top:auto}.mg-game-hint{font-size:12px;line-height:1.8;color:var(--muted);margin-top:14px!important;white-space:pre-line}.mg-game-foot{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:11px;color:var(--muted)}.mg-noscript{padding:20px;border:1px solid var(--line);border-radius:12px}.mg-page:not(.mg-ready) .mg-play-layout{display:none}
.mg-activity{background:#fffdf8;border:1px solid var(--line);border-radius:24px;min-height:440px;padding:22px 26px}.mg-activity-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.mg-activity-top .mg-kicker{margin:0!important}.mg-text-button{background:none;border:0;border-bottom:1px solid currentColor;padding:7px 0;min-height:44px;font-size:12px!important;color:var(--blue)!important;line-height:1.5!important}.mg-activity h3{margin-top:6px;font-size:16px;line-height:1.6}.mg-activity h3:focus,.mg-result h3:focus{outline:none}.mg-activity-instruction{font-size:14px;margin:7px 0 16px!important}.mg-activity-feedback{min-height:28px;font-size:14px;color:var(--blue);font-weight:700;margin-top:14px!important;line-height:1.7}.mg-memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:470px;margin:0 auto}.mg-memory-card{position:relative;aspect-ratio:1.2;border:1px solid #c9b998;border-radius:14px;padding:6px;background:#efe2c2;display:flex;align-items:center;justify-content:center;flex-direction:column;min-width:0;min-height:80px;overflow:hidden;transition:background .15s}.mg-memory-card .mg-card-back{font-size:25px;font-weight:700;color:#9a7841}.mg-memory-card .mg-card-face{display:none}.mg-memory-card .mg-card-face img{height:clamp(48px,6vw,82px);width:auto;margin:auto}.mg-memory-card .mg-card-face small{display:block;font-size:11px;line-height:1.4}.mg-memory-card.is-open,.mg-memory-card.is-matched{background:#fff;border-color:#789fa9}.mg-memory-card.is-open .mg-card-face,.mg-memory-card.is-matched .mg-card-face{display:block}.mg-memory-card.is-open .mg-card-back,.mg-memory-card.is-matched .mg-card-back{display:none}.mg-memory-card.is-matched{background:#e7eee9}.mg-memory-card.is-matched:after{content:'✓';position:absolute;top:3px;right:9px;font-size:14px;color:#305847}.mg-puzzle-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-top:12px!important;color:var(--muted)}.mg-timing-art{height:145px;margin:0 auto 10px}.mg-timing-art img{height:100%;width:auto;margin:auto}.mg-gauge{height:34px;border:1px solid #b6c4bf;border-radius:99px;background:#e3e8e2;position:relative;overflow:hidden;margin:18px 0 8px}.mg-gauge-zone{position:absolute;top:0;bottom:0;background:#f3cd79;border-left:2px solid #9e772e;border-right:2px solid #9e772e}.mg-gauge-marker{position:absolute;top:2px;bottom:2px;width:6px;border-radius:3px;background:#254657;transform:translateX(-50%);box-shadow:0 0 0 2px #fff;left:0}.mg-target-label{font-size:12px;text-align:center;color:var(--muted);margin-bottom:14px!important}.mg-timing-controls{text-align:center}.mg-timing-controls .mg-primary{min-width:210px}.mg-find-scene{position:relative;aspect-ratio:3/2;border:1px solid #d9e0d6;border-radius:16px;overflow:hidden;background:#e8efe7}.mg-find-scene>img{width:100%;height:100%;object-fit:cover}.mg-find-target{position:absolute;transform:translate(-50%,-50%);border:2px solid transparent;background:transparent;padding:0;border-radius:16px;width:clamp(58px,14%,104px);height:auto;aspect-ratio:3/2;min-height:44px;display:grid;place-items:center}.mg-find-target img{width:100%;max-width:none;clip-path:polygon(7.16% 72.36%,5.79% 66.41%,5.40% 61.13%,6.45% 55.76%,6.58% 50.78%,6.64% 46.29%,6.64% 40.92%,6.18% 37.01%,5.99% 32.81%,6.71% 27.34%,7.94% 23.83%,10.22% 22.46%,13.22% 23.14%,19.53% 26.86%,26.37% 25.59%,30.14% 24.41%,31.97% 18.07%,34.83% 12.11%,37.43% 9.47%,39.52% 9.28%,42.58% 12.21%,44.66% 17.87%,45.96% 23.63%,47.27% 32.62%,50.39% 35.84%,52.54% 32.71%,54.56% 31.84%,55.27% 34.08%,55.08% 37.01%,59.44% 35.06%,64.58% 34.28%,69.01% 35.64%,71.68% 36.82%,75.46% 31.05%,80.47% 28.61%,84.83% 27.93%,88.67% 28.71%,91.99% 31.15%,94.60% 34.96%,96.22% 40.43%,97.07% 47.85%,96.74% 53.71%,95.57% 58.59%,93.55% 62.89%,90.36% 66.99%,91.99% 70.31%,92.32% 74.22%,90.95% 77.25%,88.67% 80.18%,85.81% 81.15%,82.68% 79.69%,80.01% 77.44%,79.10% 79.59%,76.95% 82.91%,73.83% 85.35%,70.90% 85.84%,67.84% 84.47%,65.95% 82.42%,61.65% 83.20%,57.16% 82.71%,54.10% 84.77%,48.50% 86.91%,43.29% 87.60%,38.87% 88.09%,33.59% 88.28%,29.23% 87.89%,26.76% 86.23%,24.61% 83.40%,23.24% 84.96%,20.83% 85.94%,16.99% 85.45%,13.80% 83.40%,11.65% 80.96%,10.61% 77.73%,10.48% 75.00%,8.46% 73.93%)}.mg-find-target.is-facing-right img{transform:scaleX(-1)}.mg-find-target.is-found{border-color:#315d58;background:#fffc;opacity:.7}.mg-find-target.is-found:after{content:'✓';position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:21px;height:21px;background:#315d58;color:white;border-radius:50%;font-size:12px}.mg-find-target.is-hinted{outline:3px dashed #365866;outline-offset:3px;background:#fffa}.mg-find-scene .mg-find-target:focus-visible{outline-offset:0;background:#ffffffe0}
.mg-result{border:1px solid var(--line);border-radius:24px;background:#f1e7ce;padding:24px;text-align:center;min-height:440px}.mg-result>.mg-kicker{margin-bottom:18px!important}.mg-postcard{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;border:1px solid #d9c9a9;border-radius:5px;background:#fffdf6;padding:24px 16px;box-shadow:0 9px 18px #6b573615;text-align:left;gap:14px}.mg-postcard-art{position:relative}.mg-postcard-art img{width:100%;max-width:210px;margin:auto}.mg-card-number{display:block;text-align:center;font-size:11px;letter-spacing:.12em;color:var(--muted);margin-top:4px}.mg-postcard-copy h3{font-size:16px;line-height:1.5;margin:10px 0 12px}.mg-postcard-copy>p:not(.mg-kicker){font-size:14px;line-height:1.9}.mg-postcard-copy .mg-kicker{font-size:10px}.mg-memory{padding-top:15px;margin-top:15px!important;border-top:1px dashed var(--line);font-size:12px!important;color:var(--muted)}.mg-replay-note{font-size:12px;margin:18px 0 14px!important}.mg-result .mg-primary{font-size:13px!important}.mg-about{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:60px;padding:40px 50px;border-radius:24px;background:#f4eedf}.mg-about-art img{width:265px;margin:auto}.mg-about-art span{display:block;text-align:center;font-size:15px;font-weight:700;margin-top:10px}.mg-about-copy>p:not(.mg-kicker){margin-top:18px}.mg-profile{margin-top:24px!important;padding-top:8px;border-top:1px solid var(--line)}.mg-profile>div{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.mg-profile dt{color:var(--muted)}.mg-profile dd{margin:0}.mg-read-next{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}.mg-read-next>div>p:not(.mg-kicker){margin-top:14px}.mg-article-links{display:grid;gap:14px}.mg-article-links a{display:block;position:relative;text-decoration:none;border:1px solid var(--line);background:#fffdf7;padding:20px 45px 20px 22px;border-radius:14px}.mg-article-links a:hover{border-color:#9db0b2}.mg-article-links span{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.mg-article-links strong{font-size:16px;color:#0693e3;text-decoration:underline;text-underline-offset:4px}.mg-article-links b{position:absolute;right:20px;top:32px;font-weight:400}.mg-footer{padding:30px 0 40px;text-align:center;border-top:1px solid var(--line);margin-top:30px}.mg-footer>img{width:82px;margin:0 auto 10px}.mg-footer>p{font-size:14px}.mg-footer>a{display:inline-block;font-size:11px;margin-top:20px;color:var(--muted)}
@keyframes mg-step{from{transform:rotate(-5deg) translateY(0)}to{transform:rotate(5deg) translateY(-5px)}}
@media(max-width:1000px){.mg-main,.mg-header{width:calc(100% - 40px)}.mg-hero{gap:20px;padding:35px 12px 0}.mg-play-layout{grid-template-columns:minmax(0,1fr) 250px;gap:14px}.mg-game-panel{padding:18px}.mg-map{min-height:415px}.mg-activity{padding:18px;min-height:415px}.mg-about{gap:30px;padding:35px}.mg-game-foot{font-size:10px}.mg-destination{padding:8px;gap:5px;font-size:13px!important}.mg-postcard{padding:20px 8px;gap:6px}.mg-postcard-copy h3{font-size:16px}}
@media(max-width:760px){.mg-page h2.heading-h2{font-size:26px}.mg-play-layout{grid-template-columns:minmax(0,1fr);gap:14px}.mg-game-panel{display:contents}.mg-panel-kicker{display:none}.mg-stamps{grid-row:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mg-stamps li{border:1px solid var(--line);border-radius:13px;padding:10px;gap:8px;font-size:13px;background:#f6f0e2}.mg-stamps li>span{width:30px;height:30px;font-size:11px}.mg-stamps small{font-size:10px}.mg-stamps b{display:none}.mg-board{grid-row:2}.mg-map{min-height:0;aspect-ratio:3/2}.mg-story{grid-row:3;margin:0;padding:14px 18px;background:#f4eedf;border-radius:16px;min-height:0}.mg-story img{width:48px;height:48px}.mg-story p{font-size:14px}.mg-game-action{grid-row:4;width:auto;justify-self:center;min-width:240px}.mg-game-hint{grid-row:5;margin:0!important;text-align:center}.mg-game-foot{flex-direction:column;gap:2px;text-align:center;font-size:11px}.mg-activity,.mg-result{min-height:0}.mg-memory-card .mg-card-face img{height:75px}.mg-about{gap:26px;padding:30px}.mg-read-next{gap:24px}.mg-read-next h2.heading-h2{font-size:23px}}
@media(max-width:540px){.mg-main,.mg-header{width:calc(100% - 32px)}.mg-header{padding:17px 0;gap:10px}.mg-brand{font-size:16px!important;gap:8px}.mg-brand img{width:33px}.mg-brand small{font-size:10px}.mg-header nav{gap:15px;font-size:12px}.mg-header nav a:last-child{display:none}.mg-hero{grid-template-columns:minmax(0,1fr) 110px;gap:12px;padding:28px 0 0}.mg-hero-copy{display:contents}.mg-hero-copy>.mg-kicker{grid-column:1/-1;grid-row:1;font-size:11px;margin:0!important}.mg-hero h1{grid-column:1;grid-row:2;font-size:clamp(27px,7.8vw,36px);letter-spacing:.01em}.mg-hero-art{grid-column:2;grid-row:2}.mg-hero-art>img{width:110px}.mg-handwritten,.mg-nameplate{display:none}.mg-intro{grid-column:1/-1;grid-row:3;font-size:15px;margin:8px 0!important;line-height:1.9}.mg-hero-copy>.mg-primary{grid-column:1/-1;grid-row:4}.mg-hero-note{grid-column:1/-1;grid-row:5;text-align:center;margin:2px 0 0!important;font-size:11px}.mg-section-heading{display:block;margin-bottom:17px}.mg-section-heading>div>p:last-child{font-size:14px}.mg-page h2.heading-h2{font-size:24px}.mg-label{margin-left:8px;font-size:10px;padding:1px 7px}.mg-kicker{font-size:11px}.mg-stamps{gap:6px}.mg-stamps li{padding:8px 6px;gap:5px;font-size:11px}.mg-stamps li>span{width:24px;height:24px;font-size:10px}.mg-stamps small{font-size:10px}.mg-map{border-radius:18px;aspect-ratio:1.35}.mg-map-top{top:10px;left:12px;right:12px;font-size:9px}.mg-map-top span:last-child{font-size:10px}.mg-destination{font-size:12px!important;border-radius:10px;padding:7px 8px;min-height:50px;gap:4px;max-width:95px}.mg-destination small{font-size:10px}.mg-pin{display:none}.mg-cafe{left:18%;top:51%}.mg-ramen{left:49%;top:51%}.mg-view{left:81%;top:51%}.mg-walker{width:64px}.mg-map-note{font-size:11px;bottom:13px}.mg-activity{padding:15px 14px;border-radius:18px}.mg-activity h3{font-size:16px}.mg-activity-instruction{font-size:13px;margin:6px 0 14px!important}.mg-activity-top .mg-kicker{font-size:10px}.mg-text-button{font-size:11px!important}.mg-memory-grid{gap:8px}.mg-memory-card{aspect-ratio:.95;padding:4px;border-radius:10px}.mg-memory-card .mg-card-face img{height:60px}.mg-memory-card .mg-card-face small{font-size:10px}.mg-activity-feedback{font-size:13px;min-height:24px}.mg-timing-art{height:125px}.mg-find-scene{aspect-ratio:1.4}.mg-puzzle-meta{font-size:11px;gap:8px}.mg-result{padding:20px 14px;border-radius:18px}.mg-postcard{grid-template-columns:1fr;padding:15px 18px;text-align:center;gap:12px}.mg-postcard-art img{width:155px}.mg-postcard-copy h3{font-size:16px}.mg-postcard-copy>p:not(.mg-kicker){font-size:14px}.mg-replay-note{font-size:11px}.mg-about{grid-template-columns:1fr;padding:26px 22px;gap:22px}.mg-about-copy{grid-row:1}.mg-about-art img{width:190px}.mg-about-art span{font-size:14px}.mg-about-copy>p:not(.mg-kicker){font-size:15px}.mg-profile>div{font-size:13px;grid-template-columns:88px 1fr;gap:8px}.mg-read-next{grid-template-columns:1fr;gap:24px}.mg-read-next>div>p:not(.mg-kicker){font-size:15px}.mg-article-links strong{font-size:15px}.mg-footer{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.mg-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.mg-page.is-reduced *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* Walking is part of the requested play experience on every device. */
.mg-page .mg-walker.is-walking img{animation:mg-step .38s ease-in-out infinite alternate!important}

/* Arrival and game-clear moments stay visible until the visitor continues. */
.mg-hero-copy{grid-column:2;grid-row:1}.mg-hero-art{grid-column:1;grid-row:1}
.mg-map:focus,#mg-game-title:focus,#mg-about-title:focus,.mg-arrival h3:focus,.mg-success h3:focus{outline:none}
.mg-goal-note{display:flex;align-items:center;gap:20px;background:#f5eedb;border:1px solid #e2d5b5;border-radius:18px;padding:16px 22px;margin-bottom:22px}
.mg-goal-note>p{font-size:14px;line-height:1.8}.mg-goal-note strong{font-size:16px;color:var(--blue)}.mg-goal-break{display:none}
.mg-goal-card{flex:0 0 76px;padding:7px;border:1px solid #d4c29c;border-radius:4px;background:#fffdf6;box-shadow:3px 4px 0 #e6dac0;transform:rotate(-5deg);text-align:center}.mg-goal-card img{width:40px;margin:auto}.mg-goal-card span{display:block;font-size:9px;color:var(--blue);white-space:nowrap}
.mg-arrival{display:grid;grid-template-columns:132px 1fr;align-items:center;gap:20px;padding:18px 24px;margin-top:12px;border:1px solid #d6dfd5;border-radius:20px;background:#f0f3e8}
.mg-arrival>img{width:128px;margin:auto}.mg-arrival .mg-kicker{margin-bottom:5px!important}.mg-arrival h3{line-height:1.7}.mg-arrival-line{font-size:14px;line-height:1.7;margin:4px 0 12px!important}.mg-arrival .mg-primary{min-height:48px;padding:10px 20px}
.mg-success{position:relative;min-height:440px;padding:26px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #d7b66b;border-radius:24px;background:radial-gradient(circle at 50% 36%,#fff9e8 0 24%,transparent 24.5%),#f7e7b9;text-align:center;overflow:hidden}
.mg-clear-label{font-size:25px;font-weight:800;color:#31554b;display:flex;align-items:center;gap:10px;line-height:1.6}
.mg-clear-label>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#31554b;color:white;font-size:24px}
.mg-success-art{width:140px!important;margin:13px auto 10px;animation:mg-clear-pop .55s ease-out both}
.mg-success h3{color:#314d43;line-height:1.7}.mg-success-message{font-size:15px;margin:8px 0 12px!important}.mg-success-progress{font-size:14px;font-weight:700;padding:7px 16px;background:#fff9e8;border:1px dashed #c1a169;border-radius:99px;margin-bottom:20px!important}
.mg-success:before,.mg-success:after{content:'';position:absolute;width:24px;height:24px;background:#c6a04d;clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);top:34%;left:18%;pointer-events:none}.mg-success:after{top:47%;left:auto;right:18%;width:17px;height:17px}
.mg-result-intro{font-size:15px;line-height:1.8;margin-bottom:18px!important}.mg-result-intro strong{font-size:18px;color:var(--blue)}
@keyframes mg-clear-pop{from{transform:translateY(12px) scale(.86);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
@media(max-width:540px){
.mg-hero{grid-template-columns:110px minmax(0,1fr)}.mg-hero h1{grid-column:2;grid-row:2}.mg-hero-art{grid-column:1;grid-row:2}
.mg-goal-note{gap:13px;padding:15px 12px;margin-bottom:17px}.mg-goal-card{flex-basis:62px;padding:5px}.mg-goal-card img{width:34px}.mg-goal-card span{font-size:8px}.mg-goal-note>p{font-size:13px}.mg-goal-note strong{font-size:14px}
.mg-arrival{grid-template-columns:76px minmax(0,1fr);gap:6px 12px;padding:16px;border-radius:18px}.mg-arrival>img{width:76px;grid-column:1;grid-row:1/4}.mg-arrival>div{display:contents}.mg-arrival .mg-kicker{grid-column:2;grid-row:1;margin:0!important}.mg-arrival h3{grid-column:2;grid-row:2}.mg-arrival-line{grid-column:2;grid-row:3;margin:0!important;font-size:13px}.mg-arrival .mg-primary{grid-column:1/-1;grid-row:4;margin-top:8px;width:100%}
.mg-success{min-height:410px;padding:24px 16px;border-radius:18px}.mg-clear-label{font-size:23px}.mg-success-art{width:130px!important}.mg-success-message{font-size:14px}.mg-success-progress{font-size:13px}.mg-success .mg-primary{width:100%;font-size:13px!important;padding:11px 14px}.mg-success:before{left:8%}.mg-success:after{right:8%}
.mg-result-intro{font-size:14px}.mg-result-intro strong{font-size:16px}
}

@media(max-width:360px){.mg-hero{grid-template-columns:86px minmax(0,1fr);gap:10px}.mg-hero-art>img{width:86px}.mg-hero h1{font-size:26px;letter-spacing:0}.mg-page #mg-game-title{font-size:22px;letter-spacing:.02em}}

/* The preview and download use the same complete PNG postcard. */
.mg-page .mg-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.mg-result{background:#f2ecd9;padding:28px 24px}
.mg-result>.mg-kicker{margin-bottom:8px!important}
.mg-card-heading{line-height:1.7;margin-bottom:18px!important;color:var(--blue)}
.mg-page .mg-souvenir{width:min(100%,420px);aspect-ratio:4/5;margin:0 auto;background:#fffaf1;border-radius:16px;box-shadow:0 12px 28px #604d3221;overflow:hidden;position:relative}
.mg-souvenir img{width:100%;height:100%;object-fit:contain}
.mg-souvenir[aria-busy=true]{background:linear-gradient(135deg,#fffaf1,#f4deb0)}
.mg-card-status{font-size:14px;line-height:1.7;margin:18px 0 10px!important;color:var(--blue)}
.mg-result .mg-card-download{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 24px;font-size:16px!important;text-decoration:none}
.mg-card-download svg{flex-shrink:0}
.mg-card-save-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:10px!important}
.mg-result .mg-replay-note{font-size:13px;line-height:1.8;margin:22px 0 6px!important}
.mg-result .mg-card-restart{font-size:14px!important}
.mg-page[data-game-phase=complete] .mg-game-panel{align-self:start}
@media(max-width:540px){.mg-result{padding:22px 12px}.mg-result .mg-card-download{width:100%;padding:12px 14px;font-size:15px!important}.mg-page .mg-souvenir{border-radius:12px}.mg-card-status{font-size:13px}.mg-result .mg-replay-note{font-size:12px}}

/* Keep the expanded profile easy to scan at every screen width. */
.mg-map-top>span:first-child{font-size:13px;letter-spacing:.02em}
.mg-about{column-gap:60px;row-gap:28px}
.mg-page .mg-about>.mg-profile{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin-top:0!important;padding-top:0}
.mg-about>.mg-profile>div{grid-template-columns:112px minmax(0,1fr);align-items:baseline;padding:14px 0}
.mg-about>.mg-profile>div:last-child{grid-column:1/-1}
.mg-about>.mg-profile dt{font-size:13px}
@media(max-width:700px){
  .mg-about{column-gap:24px}
  .mg-page .mg-about>.mg-profile{grid-template-columns:1fr}
}
@media(max-width:540px){
  .mg-map-top>span:first-child{font-size:12px}
  .mg-about>.mg-profile>div{grid-template-columns:106px minmax(0,1fr);gap:10px;padding:12px 0}
  .mg-about>.mg-profile dt{font-size:12px}
}

/* Shared language links and English line lengths. */
.mg-header-links{display:flex;align-items:center;gap:24px}
.mg-languages{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.5;white-space:nowrap}
.mg-languages a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.mg-languages [aria-current=page]{font-weight:800;color:var(--blue)}
.mg-page[lang=en]{overflow-wrap:break-word;line-height:1.8}
.mg-page[lang=en] .mg-kicker{letter-spacing:.07em}
.mg-page[lang=en] .mg-hero h1{letter-spacing:.01em}
.mg-page[lang=en] .mg-profile>div{grid-template-columns:136px minmax(0,1fr)}
.mg-page[lang=en] .mg-stamps li>div{min-width:0}
.mg-page[lang=en] .mg-memory-card .mg-card-face small{line-height:1.3}
@media(max-width:800px){
 .mg-header-links{gap:18px}
 .mg-header nav{gap:16px}
}
@media(max-width:540px){
 .mg-header nav{display:none}
 .mg-header-links{flex-direction:column;align-items:flex-end;gap:0}
 .mg-languages{font-size:11px;gap:9px}
 .mg-languages a{min-height:32px}
 .mg-page[lang=en] .mg-brand{font-size:16px!important;gap:8px}
 .mg-page[lang=en] .mg-header nav{font-size:12px}
 .mg-page[lang=en] .mg-hero .mg-kicker{letter-spacing:.02em}
 .mg-page[lang=en] .mg-intro{line-height:1.8}
 .mg-page[lang=en] .mg-profile>div{grid-template-columns:100px minmax(0,1fr)}
 .mg-page[lang=en] .mg-destination{font-size:11px!important;max-width:98px}
 .mg-page[lang=en] .mg-destination small{font-size:9px}
 .mg-page[lang=en] .mg-stamps{gap:5px}
 .mg-page[lang=en] .mg-stamps li{font-size:10px;padding:8px 4px}
 .mg-page[lang=en] .mg-stamps small{font-size:9px}
 .mg-page[lang=en] .mg-memory-card .mg-card-face small{font-size:9px}
}
