@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#e5f2dc;background:#103932}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 30%,#245a48,transparent 55%),#103932;min-height:100vh}main{max-width:1240px;min-height:100vh;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:70px;padding:36px 60px}aside{max-width:490px}.brand{display:flex;align-items:center;gap:12px;color:#d5ed9e;font-size:32px}.brand span{font-size:11px;letter-spacing:2px;font-weight:700}h1{font-family:Outfit,sans-serif;font-size:62px;line-height:1.04;letter-spacing:-2px;font-weight:600;margin:45px 0 25px}h1 em{font-style:normal;color:#d1ed93}aside>p{color:#b6cfc0;line-height:1.8;max-width:375px;font-size:16px}.instructions{border-top:1px solid #ffffff20;margin-top:40px;padding-top:26px}.instructions>b{font-size:10px;letter-spacing:2px;color:#d4e795}.instructions p{font-size:13px;color:#bfd3c7;margin-top:21px}.instructions span{color:#8caf98;margin-right:16px;font-size:11px}.note{color:#91b19c;font-size:11px;margin-top:38px}.phone{position:relative;width:420px;aspect-ratio:480/820;flex-shrink:0;border-radius:34px;overflow:hidden;box-shadow:0 25px 80px #001f2790;border:7px solid #ffffff13;background:#9ecbaa}canvas{display:block;width:100%;height:100%;touch-action:none}.top{position:absolute;top:18px;left:18px;right:18px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}button{cursor:pointer;font-family:inherit;border:0;transition:transform .15s}button:active{transform:scale(.95)}button:focus-visible{outline:3px solid #fff;outline-offset:3px}.top button{pointer-events:auto;background:#fff6db;box-shadow:0 3px 0 #28584933;width:40px;height:40px;border-radius:14px;color:#326149;font-size:23px}#status{background:#fff6db;color:#326149;border-radius:24px;font-size:13px;font-weight:700;padding:12px 17px}#status:empty{visibility:hidden}#mapTitle{position:absolute;top:86px;left:34px;color:#174b3f;pointer-events:none}small{font-size:9px;letter-spacing:2px;font-weight:700}#mapTitle h2{font-family:Outfit,sans-serif;font-size:39px;line-height:.99;margin:13px 0;font-weight:800;letter-spacing:-1px}#mapTitle h2 span{display:inline-block;color:#ef8a52;margin-left:9px}#mapTitle p{font-size:11px;color:#3b7256}#mapFooter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fff7dd;color:#4e714e;border-radius:25px;padding:11px 20px;font-size:12px;box-shadow:0 4px 12px #34614020}#modal{position:absolute;inset:0;background:#092d4280;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:30px}.card{background:#fff6df;border-radius:28px;padding:30px 25px;text-align:center;color:#345740;width:100%;box-shadow:0 12px 0 #0b273326}#badge{font-size:55px;color:#ef9556;margin-bottom:12px}.card small{font-size:8px;color:#809875}.card h2{font-family:Outfit;font-size:34px;margin:9px 0}#stars{color:#dcad51;font-size:38px;letter-spacing:8px}.card p{font-size:13px;line-height:1.7;color:#728269;margin:17px 0 24px}.card button{padding:16px 20px;background:#315d43;color:#fff7df;border-radius:15px;width:100%;font-weight:700;font-size:14px;box-shadow:0 4px 0 #153f2c}.card button span{float:right}.card .secondary{background:transparent;color:#7e8e73;font-size:11px;box-shadow:none;padding:18px 0 0}#gameFooter{position:absolute;bottom:15px;left:15px;right:15px;display:flex;align-items:center;justify-content:space-between}#gameFooter button{background:#ffffff15;border:1px solid #ffffff25;color:#e3edff;padding:9px 12px;border-radius:16px;font-size:19px}#swap span{font-size:10px}#hint{font-size:9px;color:#adbddd}.hidden{display:none!important}.mobileInfo{display:none}@media(max-width:900px){main{gap:30px;padding:25px}h1{font-size:44px}.phone{width:380px}}@media(max-width:700px){main{padding:0;display:block}aside{display:none}.phone{border:0;border-radius:0;width:100%;max-width:480px;margin:auto;height:100dvh;max-height:900px;aspect-ratio:auto}canvas{width:100%;height:100%;object-fit:fill}#mapTitle{top:11%}#mapTitle h2{font-size:42px}}
