:root{--sky:#cfe6f7;--ink:#1d2a24;--muted:#5d6d66;--paper:#f5f7f0;--panel:#fff;--grass:#79b656;--grass-dark:#4e8a3a;--earth:#7d5b3f;--line:#1d2a241f;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}@media (prefers-color-scheme:dark){:root{--ink:#eef3ec;--muted:#a2b1a9;--paper:#141a17;--panel:#1d2520;--line:#ffffff1f;--sky:#1b2a35}}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--font);margin:0;line-height:1.55}img{max-width:100%;display:block}a{color:inherit}[hidden]{display:none!important}.top{z-index:5;color:#fff;text-shadow:0 1px 6px #00000073;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:absolute;top:0;left:0;right:0}.brand{align-items:center;gap:10px;font-size:18px;font-weight:750;text-decoration:none;display:flex}.top-right{align-items:center;gap:16px;display:flex}.online{align-items:center;gap:7px;font-size:14px;display:inline-flex}.online i{background:#8ee07c;border-radius:2px;width:9px;height:9px;display:inline-block}.button{cursor:pointer;font:inherit;text-align:center;background:var(--line);color:var(--ink);border:0;border-radius:8px;padding:11px 20px;font-weight:650;text-decoration:none;display:inline-block}.button.primary{background:var(--grass);color:#12210e;box-shadow:0 4px 0 var(--grass-dark)}.button.primary:hover{filter:brightness(1.06)}.button.primary:active{box-shadow:0 2px 0 var(--grass-dark);transform:translateY(2px)}.button.primary:disabled{opacity:.55;cursor:default}.button.big{padding:14px 44px;font-size:20px}.button.small{color:#1d2a24;text-shadow:none;background:#ffffffeb;padding:7px 14px}.hero{color:#fff;justify-content:center;align-items:center;min-height:min(86vh,760px);display:flex;position:relative;overflow:hidden}.hero-image{background:url(/play/landing/hero.jpg) 50%/cover no-repeat,linear-gradient(#8fc4ee,#cfe6f7);position:absolute;inset:0}.hero-image:after{content:"";background:linear-gradient(#0a141e47,#0a141e6b);position:absolute;inset:0}.hero-text{z-index:2;text-align:center;max-width:720px;padding:96px 24px 56px;position:relative}.hero-text .logo{filter:drop-shadow(0 6px 14px #0006);margin:0 auto 10px}.hero h1{letter-spacing:-.02em;text-shadow:0 3px 18px #00000080;margin:0 0 12px;font-size:clamp(44px,8vw,82px);line-height:1.05}.tagline{text-shadow:0 1px 10px #0009;margin:0 0 26px;font-size:clamp(17px,2.2vw,22px)}.note{opacity:.9;margin:16px 0 0;font-size:14px}.features{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px;max-width:1100px;margin:0 auto;padding:64px 24px 24px;display:grid}.features article{background:var(--panel);border:1px solid var(--line);border-left:6px solid var(--grass);border-radius:12px;padding:22px}.features h2{margin:0 0 6px;font-size:19px}.features p{color:var(--muted);margin:0}.gallery{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;max-width:1100px;margin:0 auto;padding:24px 24px 72px;display:grid}.gallery figure{aspect-ratio:16/9;background:var(--line);border-radius:12px;margin:0;overflow:hidden}.gallery img{object-fit:cover;width:100%;height:100%}footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:22px 24px;font-size:14px;display:flex}footer nav{flex-wrap:wrap;gap:18px;display:flex}.modal{z-index:20;background:#080e0c9e;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:var(--panel);border-radius:14px;width:min(420px,100%);max-height:92vh;padding:26px;position:relative;overflow:auto;box-shadow:0 22px 70px #0006}.dialog h2{margin:0 0 14px}.close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:26px;position:absolute;top:8px;right:12px}form label{margin-bottom:12px;font-size:14px;font-weight:600;display:block}form input:not([type=checkbox]){border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:8px;margin-top:4px;padding:10px 11px;font-weight:400;display:block}form label.check{align-items:flex-start;gap:8px;font-weight:400;display:flex}form label.check input{margin-top:5px}form .button{width:100%}.form-error{color:#c8392e;min-height:20px;margin:4px 0 8px;font-size:14px}.switch{color:var(--muted);text-align:center;margin:14px 0 0;font-size:14px}.center-page{background:var(--sky);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.card{background:var(--panel);text-align:center;border-radius:14px;width:min(440px,100%);padding:30px;box-shadow:0 16px 50px #0000002e}.card h1{margin:0 0 10px;font-size:24px}.card label{text-align:left}
