*{box-sizing:border-box}body{margin:0;background:#f5f3fc;color:#302b49;font-family:system-ui,-apple-system,'Apple SD Gothic Neo',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #bca4f7;outline-offset:3px}[hidden]{display:none!important}.meteor-main{max-width:950px;margin:20px auto 30px;padding:0 20px;display:grid;grid-template-columns:minmax(0,550px) minmax(220px,290px);gap:26px;align-items:start}.night-card{background:#171e43;border:1px solid #363c65;border-radius:24px;color:#fff;box-shadow:0 16px 50px #36376520;padding:14px 16px 10px;overflow:hidden}.night-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}.night-label{letter-spacing:1.8px;color:#c0b4ea;font-weight:800}.night-toolbar>div{display:flex;gap:5px}.night-toolbar button{font-size:11px;border:1px solid #ffffff20;background:#ffffff09;color:#e5e0fc;padding:8px;border-radius:9px}.hud{display:grid;grid-template-columns:1.2fr 1fr 1fr;margin:14px 0 10px;padding:0 8px}.hud>div{display:flex;flex-direction:column;gap:3px}.hud>div:not(:first-child){text-align:right}.hud span{font-size:11px;color:#a3a9cc}.hud strong{font-size:25px;font-variant-numeric:tabular-nums;letter-spacing:.5px}.hud>div:last-child strong{color:#99e7d3;font-size:21px}.arena{position:relative;width:fit-content;max-width:100%;margin:auto;border:1px solid #bcb4f52b;border-radius:19px;overflow:hidden;background:#17264c;box-shadow:0 0 40px #8673f518}canvas{display:block;width:auto;height:min(480px,calc(100dvh - 315px));min-height:300px;max-width:100%;aspect-ratio:3/4;touch-action:none;user-select:none}.effect-bar{display:flex;justify-content:space-between;gap:6px;padding:12px 3px 2px;font-size:10px;color:#aeb8d9}.effect-bar .active{color:#aef3de}.game-overlay{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(#16274730,#10162bd9);padding:18px}.overlay-card{text-align:center;width:100%;padding:24px 12px;background:#172044bd;border:1px solid #d2bdff30;border-radius:22px;backdrop-filter:blur(8px)}.overline{color:#cab6f7;font-size:11px;letter-spacing:2px}.overlay-card h2{font-size:29px;line-height:1.35;letter-spacing:-1.1px;margin:12px 0;color:#fff9ee}.overlay-card p{font-size:12px;line-height:1.8;color:#c2c7e5;margin:10px 0 18px}.primary,.secondary{display:block;width:100%;padding:13px;border-radius:12px;border:0;font-weight:800;font-size:14px}.primary{background:#edda97;color:#302a48;box-shadow:0 4px 0 #b8a867}.secondary{margin-top:10px;background:#ffffff12;color:#e6e0ff;border:1px solid #ffffff30}.overlay-card .overlay-tip{margin:15px 0 0;font-size:10px;color:#a5adcf}.night-guide{padding:12px 0}.eyebrow{font-size:9px;letter-spacing:2px;color:#8a75b2;font-weight:800}.guide-intro h2{font-size:31px;line-height:1.3;letter-spacing:-1.5px;margin:12px 0}.guide-intro p{font-size:13px;line-height:1.8;color:#827991}.best-card{background:white;border:1px solid #e5deef;border-radius:18px;padding:18px;margin:20px 0}.best-card>span{display:block;font-size:11px;color:#8b819c}.best-card>strong{display:block;font-size:32px;color:#7460a8;margin:5px 0}.best-card small{font-size:13px;font-weight:500}.best-card p{font-size:11px;line-height:1.7;color:#7c718e;overflow-wrap:anywhere}.best-card a{font-size:11px;color:#77629f}.best-card button{padding:9px;border:1px solid #d8cbeb;border-radius:9px;background:#f6f0ff;color:#655480;font-size:11px;margin-bottom:10px}.item-guide{list-style:none;padding:0;margin:18px 0}.item-guide li{display:flex;align-items:center;gap:12px;margin:15px 0}.item-guide b{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;font-size:22px}.gem-icon{background:#e0f4ec;color:#36967d}.shield-icon{background:#eee8fc;color:#8b6db3}.slow-icon{background:#e2edf9;color:#5b8eba}.item-guide strong,.item-guide span{display:block}.item-guide strong{font-size:12px}.item-guide span{font-size:11px;color:#95899e;margin-top:4px}details{font-size:12px;color:#82788d;line-height:1.8}summary{cursor:pointer;color:#706183}dialog{color:#403653;width:min(480px,calc(100% - 28px));max-height:80dvh;overflow:auto;padding:25px;border:1px solid #e4dbef;border-radius:22px;background:#fdfbff}dialog::backdrop{background:#13152b99}.rank-heading{display:flex;justify-content:space-between;align-items:center}.rank-heading h2{font-size:22px;margin:0}.rank-heading button{border:0;background:#eee7f7;border-radius:10px;padding:9px}dialog p,dialog a{font-size:12px;color:#80708f}dialog ol{padding-left:24px}dialog li{padding:12px 4px;border-bottom:1px solid #eae4f2;font-size:13px}dialog li b{float:right;color:#8163b2}#rank-retry{border:0;border-radius:9px;padding:10px;background:#eee7f7}@media(max-width:700px){.meteor-main{display:block;margin:10px auto;padding:0 10px;max-width:480px}.night-card{padding:10px 12px;border-radius:19px}.night-toolbar{font-size:9px}.night-label{letter-spacing:1px}.night-toolbar button{font-size:10px;padding:7px}.hud{margin:10px 0 8px}.hud strong{font-size:22px}canvas{height:min(480px,calc(100dvh - 285px));min-height:240px;max-height:128vw}.night-guide{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0}.guide-intro{display:none}.best-card{margin:14px 0;padding:12px}.best-card>strong{font-size:25px}.item-guide{margin:14px 0}.item-guide li{margin:12px 0;gap:8px}.item-guide b{width:28px;height:28px;font-size:19px}.night-guide details{grid-column:1/-1}.overlay-card{padding:16px 10px}.overlay-card h2{font-size:25px}.effect-bar{font-size:9px}}

/* Keep the logical 3:4 arena undistorted, including narrow and short phones. */
.arena{width:min(360px,calc((100dvh - 330px)*.75));min-width:165px}canvas{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:3/4}
@media(max-width:700px){.arena{width:min(360px,calc((100dvh - 345px)*.75))}canvas{width:100%;height:auto;min-height:0;max-height:none}}
@media(max-height:700px){.game-overlay{padding:8px}.overlay-card{padding:12px 8px}.overlay-card h2{font-size:21px;margin:7px 0}.overlay-card p{font-size:11px;line-height:1.5;margin:8px 0}.overlay-card .overlay-tip{display:none}.primary,.secondary{padding:10px}.overline{font-size:9px}}
@media(max-height:700px){.game-overlay{padding:5px}.overlay-card{padding:8px 6px}.overlay-card .overline{display:none}.overlay-card h2{font-size:18px;line-height:1.25;margin:6px 0}.overlay-card p{font-size:9.5px;line-height:1.3;margin:6px 0 9px}.primary,.secondary{font-size:12px;padding:10px 5px}}
