:root{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-synthesis:none;color:#eaf0df;background:#173e38}*{box-sizing:border-box}body{margin:0}.welcome-page{max-width:1240px;margin:auto;padding:48px max(48px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(48px,env(safe-area-inset-left))}.welcome-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:48px;padding-bottom:32px}.welcome-kicker{margin:0 0 16px;color:#c4d7c6;font-size:13px}.welcome-intro h1{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(56px,7vw,88px);font-weight:500;letter-spacing:.12em;line-height:1.3;margin:0 0 24px}.welcome-tagline{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(24px,2.6vw,32px);line-height:1.6;margin:0 0 20px}.welcome-lead{font-size:14px;line-height:2;color:#c4d7c6;max-width:42em;margin:0}.welcome-illustration{display:block;width:100%;height:340px}.welcome-purpose{display:grid;grid-template-columns:1fr 1.7fr;gap:40px;border-top:1px solid #b7cfa340;border-bottom:1px solid #b7cfa340;padding:28px 0}.welcome-page h2{font-size:19px;line-height:1.7;font-weight:600;margin:0}.welcome-purpose p{margin:0;font-size:14px;line-height:1.9;color:#d0dfcd}.welcome-purpose p+p{margin-top:12px}.welcome-games{padding-top:28px}.welcome-game-list{display:grid;grid-template-columns:1fr 1fr;gap:24px 40px;margin:20px 0 0}.welcome-game-link{display:block;min-height:44px;color:inherit;text-decoration:none;touch-action:manipulation;border-left:2px solid #89ad99;padding-left:16px}.welcome-game-link h3{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:20px;font-weight:600;line-height:1.5;margin:0 0 8px}.welcome-game-link p{margin:0;color:#c4d7c6;font-size:13px;line-height:1.9}.welcome-game-link:hover{border-color:#f5d694}.welcome-game-link:hover h3{color:#f5d694}.welcome-game-link:focus-visible{outline:3px solid #f5d694;outline-offset:6px}.welcome-game-action{display:inline-flex;align-items:center;gap:12px;margin-top:10px;color:#e6d49d;font-size:13px}.welcome-start{display:flex;align-items:center;gap:24px;padding:32px 0}.welcome-start-button{display:inline-flex;align-items:center;justify-content:space-between;gap:80px;min-height:60px;padding:14px 28px;background:#e6d49d;color:#173e38;font-size:20px;font-weight:600;text-decoration:none;border:1px solid #e6d49d;border-radius:5px;touch-action:manipulation}.welcome-start-button:hover{background:#f5e6b8}.welcome-start-button:focus-visible{outline:3px solid #f5d694;outline-offset:5px}.welcome-start p{margin:0;color:#c4d7c6;font-size:12px;line-height:1.9}.welcome-footer{border-top:1px solid #b7cfa340;padding-top:18px;color:#bcd0bf;font-size:11px;line-height:1.9}.welcome-footer-links{margin-top:12px}.welcome-footer-links a{display:inline-flex;align-items:center;min-height:44px;color:inherit;font-size:13px;text-underline-offset:4px}.welcome-footer-links a:hover{color:#fff}.welcome-footer-links a:focus-visible{outline:3px solid #f5d694;outline-offset:4px}@media(max-width:850px){.welcome-page{padding-inline:max(28px,env(safe-area-inset-left)) max(28px,env(safe-area-inset-right))}.welcome-hero{grid-template-columns:minmax(0,1fr) 170px;gap:24px}.welcome-illustration{height:270px}.wide-only{display:none}.welcome-purpose{grid-template-columns:1fr;gap:16px}}@media(max-width:650px){.welcome-page{padding:max(28px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.welcome-hero{display:block;padding-bottom:26px}.welcome-illustration{display:none}.welcome-intro h1{font-size:56px}.welcome-tagline{font-size:25px}.welcome-lead,.welcome-purpose p{font-size:14px}.welcome-purpose{padding-block:24px}.welcome-page h2{font-size:18px}.welcome-game-list{grid-template-columns:1fr;gap:22px}.welcome-game-link p{font-size:14px}.welcome-start{flex-direction:column;align-items:stretch;gap:14px}.welcome-start-button{gap:24px}.welcome-start p{text-align:center}}.welcome-game-link{position:relative;border-left:0;padding:16px 18px 14px;border-radius:14px;background:#ffffff0d;border:1px solid #b7cfa333;transition:background .15s,transform .1s}.welcome-game-link:hover{background:#ffffff16}.welcome-game-link:active{transform:scale(.98)}.welcome-game-link.tag{box-shadow:inset 4px 0 #e97d63}.welcome-game-link.puzzle{box-shadow:inset 4px 0 #8fc7d6}.welcome-game-link.invasive{box-shadow:inset 4px 0 #c9a25f}.welcome-game-link.native{box-shadow:inset 4px 0 #9cc993}.welcome-game-meta{display:inline-block;margin-bottom:6px;padding:2px 10px;border-radius:999px;background:#0d2a26;color:#d9e6cf;font-size:11px}.welcome-game-best{display:block;margin-top:6px;color:#f4d35e;font-size:12px;font-weight:700}.welcome-game-best:empty{display:none}.welcome-game-action{position:absolute;right:14px;bottom:12px;margin:0;padding:6px 14px;border-radius:999px;background:#e6d49d;color:#173e38;font-weight:700}.welcome-game-link p{padding-right:64px}.welcome-games{padding:8px 0 24px}.welcome-games-note{margin:14px 0 0;color:#bcd0bf;font-size:12px}.welcome-purpose{margin-bottom:18px}@media(max-width:650px){.welcome-intro h1{font-size:44px;margin-bottom:10px}.welcome-tagline{font-size:20px;margin-bottom:8px}.welcome-hero{padding-bottom:14px}}@media(orientation:landscape)and (max-height:520px){.welcome-page{display:grid;grid-template-columns:minmax(180px,.62fr) 1.6fr;column-gap:20px;align-items:start;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.welcome-hero{display:block;grid-column:1;grid-row:1;position:sticky;top:12px;padding:0}.welcome-illustration,.welcome-lead{display:none}.welcome-kicker{font-size:11px;margin-bottom:6px}.welcome-intro h1{font-size:40px;letter-spacing:.08em;margin:0 0 8px}.welcome-tagline{font-size:16px}.welcome-games{grid-column:2;grid-row:1 / span 2;padding:0}.welcome-games h2{font-size:14px}.welcome-game-list{grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.welcome-game-link{padding:10px 12px 12px}.welcome-game-link h3{font-size:16px;margin-bottom:2px}.welcome-game-link p{font-size:12px;line-height:1.6}.welcome-game-action{font-size:12px;padding:5px 12px}.welcome-purpose{grid-column:1 / -1;margin-top:16px}.welcome-footer{grid-column:1 / -1}}.welcome-hero-start{margin-top:20px;gap:24px;min-height:52px;font-size:18px}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(orientation:landscape)and (max-height:520px){.welcome-hero-start{margin-top:12px;min-height:44px;padding:8px 16px;font-size:15px}}.welcome-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px}.welcome-hero-actions .welcome-hero-start{margin-top:0}.welcome-hero-actions .welcome-ranking-button{min-height:52px}@media(orientation:landscape)and (max-height:520px){.welcome-hero-actions{margin-top:12px}.welcome-hero-actions .welcome-ranking-button{min-height:44px}}.welcome-games-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}.welcome-games-head h2{margin:0}.welcome-ranking-button{min-height:44px;padding:10px 20px;font:inherit;font-size:15px;color:#e6d49d;background:transparent;border:1px solid #e6d49d;border-radius:5px;cursor:pointer;touch-action:manipulation}.welcome-ranking-button:hover{color:#173e38;background:#e6d49d}.welcome-ranking-button:focus-visible,.welcome-rank-tabs button:focus-visible,.welcome-rank-close:focus-visible{outline:3px solid #f5d694;outline-offset:3px}.welcome-ranking{margin:max(16px,6vh) auto auto;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;color:#eaf0df;background:#1d4a43;border:1px solid #5f8a7c;border-radius:10px}.welcome-ranking::backdrop{background:#071c1acc}.welcome-rank-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.welcome-rank-head h2{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:24px}.welcome-rank-close{min-height:40px;padding:6px 16px;font:inherit;color:#eaf0df;background:transparent;border:1px solid #89ad99;border-radius:5px;cursor:pointer}.welcome-rank-lead{margin:10px 0 0;color:#c4d7c6;font-size:13px;line-height:1.8}.welcome-rank-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.welcome-rank-tabs button{min-height:40px;padding:6px 14px;font:inherit;font-size:14px;color:#eaf0df;background:transparent;border:1px solid #5f8a7c;border-radius:999px;cursor:pointer}.welcome-rank-tabs button[aria-selected=true]{color:#173e38;background:#e6d49d;border-color:#e6d49d;font-weight:600}.welcome-rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:14px}.welcome-rank-grid .lake-ranking{margin:0;height:100%}@media(max-width:650px){.welcome-ranking{padding:18px 16px}.welcome-rank-head h2{font-size:20px}}
