*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font:16px/1.5 system-ui,sans-serif;color:#223;background:linear-gradient(#dfeaf3,#fafcfe 60%);display:flex;flex-direction:column;min-height:100vh}
a{color:#1a62b0}h1,h2{font-weight:600}
.page{max-width:820px;margin:0 auto;padding:32px 16px;width:100%;flex:1}
table{border-collapse:collapse;width:100%}td,th{padding:8px 12px;text-align:left;border-bottom:1px solid #cfd8e0;word-break:break-all}
code{font:13px monospace}
.btn,button,.buy{font:inherit;border:0;border-radius:999px;padding:10px 22px;background:#1a62b0;color:#fff;text-decoration:none;cursor:pointer;display:inline-block}
.btn:hover,button:hover,.buy:hover{background:#2677d0}button:disabled,.buy[disabled]{background:#9aa7b4;cursor:not-allowed}
.top{display:flex;justify-content:space-between;align-items:baseline;padding:14px 28px;color:#456;font-size:20px}
#grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:12px 28px 120px;max-width:1100px;margin:0 auto;width:100%}
.tile{display:block;padding:0;border-radius:18px;background:#fff;border:3px solid #fff;box-shadow:0 2px 10px #0003,inset 0 0 0 1px #c5d2de;overflow:hidden;color:#234;text-align:center;transition:transform .15s,box-shadow .15s}
.tile svg{display:block;width:100%;aspect-ratio:16/10}.tile span{display:block;padding:8px}
.tile:hover,.tile:focus{transform:scale(1.07);outline:0;border-color:#3aa7e8;box-shadow:0 8px 24px #1a62b066}
.bar{position:fixed;left:0;right:0;bottom:0;height:72px;background:#fff;border-top:2px solid #c5d2de;border-radius:50% 50% 0 0/24px 24px 0 0;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;box-shadow:0 -4px 14px #0002}
.bar b{font-size:20px;letter-spacing:.04em;color:#456}
#panel{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;z-index:5}#panel[hidden]{display:none}
.card{background:#fff;border-radius:22px;padding:24px;width:min(92vw,720px);max-height:92vh;overflow:auto}
.card iframe{width:100%;aspect-ratio:16/9;border:0;background:#000;border-radius:10px;margin-top:12px}.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
@media(max-width:800px){#grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:420px){#grid{grid-template-columns:1fr}}
