:root{color-scheme:dark;font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;background:#101222;color:#f7f5ff}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 50% 15%,#272347 0,#17182e 42%,#101222 85%)}
button{font:inherit}
.topbar{height:68px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff17;background:#121326}
.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:800;letter-spacing:-.04em}.brand b{color:#ffdf70}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#7762d6;color:#fff;font-size:20px}.brand small{padding:3px 7px;border:1px solid #8176b7;border-radius:4px;color:#c4bdf0;font-size:10px;letter-spacing:.1em}
.topbar-right{display:flex;align-items:center;gap:25px;color:#aaa8c4;font-size:13px}.header-button,.retry{padding:9px 15px;border:1px solid #77729d;border-radius:7px;background:#24233e;color:#f9f7ff;cursor:pointer}.header-button:disabled{opacity:.45;cursor:default}.header-button:hover:not(:disabled),.retry:hover{border-color:#ffd875}
.layout{max-width:1700px;margin:0 auto;padding:35px clamp(16px,4vw,64px) 50px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.eyebrow{font-size:10px;color:#b7a5fd;font-weight:800;letter-spacing:.16em}h1{font-size:23px;letter-spacing:-.04em;margin:7px 0 0}.game-badge{font-size:12px;color:#b8b4d5}.badge-dot{display:inline-block;width:6px;height:6px;margin:0 7px 2px 0;border-radius:50%;background:#e6c76d}
.game-frame{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid #706b99;border-radius:10px;background:#14182b;box-shadow:0 28px 70px #08081588}canvas{display:block;width:100%;height:100%;outline:none}canvas:focus-visible{outline:2px solid #ffda73;outline-offset:-2px}.loading{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:25px;background:radial-gradient(ellipse at 50% 35%,#373064,#17192f 65%)}.loading[hidden],.progress[hidden],.retry[hidden]{display:none}.loading-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #b1a0ff;border-radius:17px;color:#fadd84;background:#60549e;font-size:30px;box-shadow:0 0 35px #9788ff55}.loading-title{font-size:20px;font-weight:700;margin:22px 0 9px}.loading-detail{font-size:13px;color:#c0bdd7;margin:0;line-height:1.6}.progress{height:5px;width:min(280px,70%);background:#ffffff20;border-radius:4px;margin-top:24px;overflow:hidden}.progress>div{height:100%;width:0;background:#ffdd78;transition:width .2s}.retry{margin-top:20px}
.game-footer{display:flex;justify-content:space-between;gap:10px;padding:15px 2px;color:#9998b2;font-size:12px}
@media(max-width:700px){.topbar{height:60px}.brand{font-size:18px}.desktop-label,.game-footer span:last-child{display:none}.layout{padding-top:24px}.section-heading h1{font-size:20px}.loading-title{font-size:16px}.loading-detail{font-size:12px}.loading-icon{width:42px;height:42px;font-size:22px}.game-footer{font-size:11px}}
