:root{--ink:#101a36;--blue:#2e5af0;--navy:#102653;--mint:#65ddb2;--yellow:#ffd057;--coral:#ff7158;--paper:#f7f4ec}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}button,a{font:inherit}button{cursor:pointer}.play-nav{height:72px;padding:0 max(22px,4vw);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dcdde0;background:rgba(247,244,236,.94);position:relative;z-index:5}.play-nav a{color:var(--ink);font-size:13px;font-weight:800;text-decoration:none}.game-logo{display:flex;align-items:center;gap:11px;font:700 15px Unbounded,sans-serif}.game-logo span{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:var(--mint);color:#0f3d34}.play-nav button{padding:10px 15px;border:1px solid #c9cbd1;border-radius:999px;background:transparent;color:var(--ink);font-weight:800}.game-intro{display:grid;grid-template-columns:1fr minmax(280px,480px);gap:7vw;align-items:end;padding:70px max(24px,6vw) 55px}.eyebrow{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.game-intro h1{margin:17px 0 0;font:700 clamp(50px,7vw,112px)/.88 Unbounded,sans-serif;letter-spacing:-.075em}.game-intro h1 em{color:var(--coral);font-style:normal}.game-intro>p{margin:0;color:#737b8d;font-size:clamp(16px,1.4vw,20px);line-height:1.7}.world-shell{padding:40px max(18px,4vw) 75px;background:linear-gradient(#ecf8f3,#eff4ff)}.world-top{max-width:1500px;margin:0 auto 25px;display:flex;align-items:end;justify-content:space-between;gap:20px}.world-top h2{margin:7px 0 0;font:700 clamp(25px,3vw,43px) Unbounded,sans-serif;letter-spacing:-.045em}.world-progress{min-width:220px;text-align:right;font-size:12px;font-weight:800}.world-progress i{display:block;width:220px;height:7px;margin-top:8px;overflow:hidden;border-radius:99px;background:#d1dbea}.world-progress i b{display:block;width:0;height:100%;background:var(--blue);transition:width .5s}.world-layout{display:grid;grid-template-columns:minmax(205px,255px) minmax(0,960px) minmax(205px,255px);gap:18px;align-items:start;justify-content:center;max-width:1520px;margin:auto}.mission-card,.explorer-card{padding:24px;border:1px solid #d9dce3;border-radius:25px;background:rgba(255,255,255,.82);box-shadow:0 14px 40px rgba(24,42,77,.08)}.mission-card>span,.explorer-card>span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.task-picture{display:grid;width:86px;height:86px;margin:20px 0 17px;place-items:center;border-radius:23px;background:#fff2b8;font-size:48px}.mission-card h3,.explorer-card h3{margin:0;font:700 21px/1.15 Unbounded,sans-serif}.mission-card p{margin:15px 0;color:#596273;font-size:15px;line-height:1.55}.mission-card small{color:#9298a4;font-size:12px;line-height:1.5}.canvas-wrap{position:relative;overflow:hidden;border:8px solid #fff;border-radius:30px;background:#b9e9cf;box-shadow:0 20px 50px rgba(22,48,75,.16)}canvas{display:block;width:100%;height:auto;max-height:calc(100vh - 150px);aspect-ratio:12/7;touch-action:none}.world-message{position:absolute;left:50%;top:22px;z-index:5;max-width:80%;padding:11px 20px;border-radius:999px;background:#fff;color:var(--ink);font-weight:800;box-shadow:0 10px 25px rgba(20,37,72,.2);opacity:0;transform:translate(-50%,-15px);transition:.3s;pointer-events:none;text-align:center}.world-message.show{opacity:1;transform:translate(-50%,0)}.world-message.good{background:#d9faec;color:#116246}.world-message.try{background:#fff3c7;color:#735718}.start-screen,.finish-screen{position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:rgba(11,29,66,.9);color:#fff;text-align:center}.start-screen small,.finish-screen small{color:#68e0b6;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.start-screen h2,.finish-screen h2{max-width:660px;margin:13px 0;font:700 clamp(27px,4vw,52px)/1 Unbounded,sans-serif}.start-screen p,.finish-screen p{max-width:570px;margin:0 0 22px;color:#cbd5e9;line-height:1.55}.start-screen button,.finish-screen button{padding:16px 24px;border:0;border-radius:999px;background:var(--coral);color:#fff;font-weight:800}.block-hero,.mini-hero{position:relative;width:68px;height:88px;margin-bottom:19px}.block-hero:before,.mini-hero:before{content:"";position:absolute;left:15px;top:0;width:38px;height:38px;border:4px solid #102044;border-radius:11px;background:#ffd0ad}.block-hero i,.mini-hero i{position:absolute;left:7px;top:38px;width:54px;height:42px;border:4px solid #102044;border-radius:10px;background:var(--blue)}.block-hero b,.mini-hero b{position:absolute;left:15px;bottom:0;width:15px;height:23px;background:#102044;box-shadow:23px 0 #102044}.finish-star{display:grid;width:82px;height:82px;place-items:center;margin-bottom:18px;border-radius:50%;background:var(--yellow);color:#172349;font-size:45px}.finish-screen>div{display:flex;align-items:baseline;gap:8px;margin-bottom:20px}.finish-screen>div b{font:700 33px Unbounded,sans-serif}.finish-screen[hidden]{display:none}.mini-hero{margin:19px auto;transform:scale(.8)}.explorer-card ul{margin:10px 0 0;padding:0;list-style:none}.explorer-card li{padding:13px 0;border-top:1px solid #e4e5e8}.explorer-card li b,.explorer-card li small{display:block}.explorer-card li b{font-size:13px}.explorer-card li small{margin-top:3px;color:#9298a4;font-size:11px}.touch-controls{display:none;grid-template-columns:repeat(4,1fr);gap:8px;max-width:430px;margin:16px auto 0}.touch-controls button{min-height:58px;border:1px solid #cfd7df;border-radius:17px;background:#fff;color:var(--ink);font-size:25px;font-weight:800;box-shadow:0 7px 0 #d9dee5}.touch-controls button:active{transform:translateY(4px);box-shadow:0 3px 0 #d9dee5}dialog{width:min(580px,calc(100% - 28px));padding:36px;border:0;border-radius:28px;color:var(--ink);box-shadow:0 30px 90px rgba(8,17,40,.35)}dialog::backdrop{background:rgba(8,17,40,.72)}dialog>button{position:absolute;right:18px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:#eff1f5;font-size:22px}dialog h2{font:700 31px Unbounded,sans-serif}dialog li{margin:12px 0;line-height:1.5}
.start-screen[hidden]{display:none}
@media(max-width:1180px){.world-layout{grid-template-columns:minmax(200px,240px) minmax(0,850px)}.explorer-card{display:none}.canvas-wrap canvas{max-height:none}}
@media(max-width:780px){.play-nav{height:62px}.game-logo{font-size:12px}.game-intro{grid-template-columns:1fr;padding:48px 20px 38px}.game-intro h1{font-size:50px}.world-shell{padding:30px 10px 55px}.world-top{padding:0 8px;align-items:start}.world-progress{min-width:105px}.world-progress i{width:105px}.world-layout{display:flex;flex-direction:column}.mission-card{width:100%;padding:17px;display:grid;grid-template-columns:auto 1fr;column-gap:15px;align-items:center}.task-picture{grid-row:1/5;margin:0;width:70px;height:70px;font-size:40px}.mission-card>span{align-self:end}.mission-card h3{font-size:17px}.mission-card p{grid-column:1/-1;margin:13px 0 5px}.mission-card small{grid-column:1/-1}.canvas-wrap{width:100%;border-width:5px;border-radius:22px}canvas{min-height:0;object-fit:contain}.touch-controls{display:grid}.start-screen{padding:20px}.block-hero{transform:scale(.68);margin-bottom:0}.start-screen h2{font-size:23px}.start-screen p{font-size:12px}.play-nav button{padding:8px 10px;font-size:11px}}
@media(max-width:420px){.game-logo span{display:none}.world-top h2{font-size:21px}.world-progress{font-size:10px}.world-message{top:12px;font-size:12px}.game-intro h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
