@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;color-scheme:dark;--bg:#0a101e;--panel:#151e30;--panel2:#1b2941;--text:#f1f6ff;--dim:#a7b5cd;--accent:#6cf3d1;--border:#30415a}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 20% -20%,#24395a 0,transparent 44%),radial-gradient(ellipse at 90% 105%,#182946 0,transparent 40%),var(--bg);color:var(--text);font-size:16px}button,input{font:inherit}button{touch-action:manipulation;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a3f8e1;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.wrap{width:min(980px,100% - 36px);margin:auto;padding-bottom:48px}.top{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:27px 0;border-bottom:1px solid var(--border)}.logo{font-weight:800;letter-spacing:.12em;font-size:14px;display:inline-flex;align-items:center;gap:10px}.logo i{display:block;height:14px;width:14px;background:var(--accent);transform:rotate(45deg);border-radius:4px}.tag{border:1px solid var(--border);border-radius:100px;padding:8px 13px;color:var(--dim);font-size:12px;white-space:nowrap}.back{display:inline-flex;align-items:center;color:var(--dim);font-size:13px;font-weight:700;gap:8px}.back:hover{color:var(--accent)}.intro{padding:45px 0 21px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.23em;color:var(--accent);margin:0 0 14px}.intro h1,.game-title{font-size:clamp(32px,8vw,60px);line-height:1.12;margin:0;letter-spacing:-.045em;font-weight:800}.intro p,.game-sub{color:var(--dim);line-height:1.7;margin:15px 0 0;font-size:14px;max-width:620px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:17px;margin-top:22px}.card{border:1px solid var(--border);background:linear-gradient(135deg,#1c2a41,#141e30);border-radius:21px;padding:24px;min-height:204px;position:relative;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,border-color .18s}.card:hover{transform:translateY(-3px);border-color:#7188a9}.card .visual{font-size:37px;letter-spacing:.1em;min-height:58px}.card h2{font-size:21px;margin:10px 0 8px;letter-spacing:-.03em}.card p{font-size:12px;line-height:1.7;color:var(--dim);margin:0 0 18px}.card .go{margin-top:auto;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.12em}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:7px 10px;border:1px solid #354962;color:var(--dim);font-size:11px;border-radius:30px}.gamehead{padding:34px 0 23px}.game-title{font-size:clamp(28px,7vw,46px)}.gameboard{border:1px solid var(--border);border-radius:22px;background:linear-gradient(160deg,#162238,#111a2c);padding:clamp(17px,4vw,32px);max-width:740px}.stats{display:flex;gap:13px;flex-wrap:wrap;margin:0 0 18px}.stat{background:#0c1526;border:1px solid #2a3b54;border-radius:12px;min-width:90px;padding:10px 15px}.stat b{display:block;font-size:23px;font-weight:800;font-variant-numeric:tabular-nums}.stat small{display:block;margin-top:3px;font-size:10px;letter-spacing:.1em;color:var(--dim)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #40516b;background:#22324a;color:var(--text);border-radius:12px;padding:13px 18px;font-weight:800;min-height:46px}.btn:hover{border-color:#86b2c5}.btn.primary{background:var(--accent);border-color:var(--accent);color:#10243a}.btn.warn{background:#503446}.hint{font-size:13px;line-height:1.7;color:var(--dim)}.notice{border-radius:11px;background:#0c1829;border:1px solid #29435c;padding:12px 14px;font-size:13px;min-height:48px;color:#d8e7fa;margin-top:16px}.footer{color:#7e91af;font-size:11px;margin:28px 0;line-height:1.6}.mono{font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1}@media(max-width:500px){.wrap{width:calc(100% - 26px)}.top{padding:19px 0}.intro{padding-top:30px}.gamehead{padding:25px 0 20px}.grid{gap:12px}.card{min-height:180px;padding:20px}.stats{gap:8px}.stat{min-width:78px;padding:9px 11px}.stat b{font-size:20px}}
