:root{--bg:#110f13;--panel:#19161c;--panel-2:#221e26;--line:#302a33;--fg:#f2ede7;--mute:#9d929a;--dim:#675e66;--acc:#FC5E20;--gold:#ffd24a;--p2:#3db7ff;
--f-kr:'Pretendard',system-ui,sans-serif;--f-px:'Press Start 2P',ui-monospace,monospace;--f-mono:'IBM Plex Mono',ui-monospace,monospace;color-scheme:dark}
*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg)}
body{margin:0;font-family:var(--f-kr);font-size:16px;line-height:1.7;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:20px 48px}
a{color:var(--acc)}h1,h2,h3,p{margin:0}img{max-width:100%;image-rendering:pixelated}
.wrap{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:28px}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--line)}
.logo{font-weight:800;font-size:22px;letter-spacing:-.03em;color:var(--fg);text-decoration:none}.logo small{display:block;font-family:var(--f-px);font-size:8px;color:var(--acc);letter-spacing:.08em;font-weight:400}
.top nav{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px}.top nav a{color:var(--mute);text-decoration:none}.top nav a:hover,.top nav a.on{color:var(--fg)}
.play{display:inline-block;background:var(--acc);color:#170a04;font-weight:700;text-decoration:none;padding:10px 18px;box-shadow:0 4px 0 #a63a0e}
.eyebrow{font-family:var(--f-px);font-size:9px;color:var(--acc);letter-spacing:.06em;margin-bottom:10px}
h1{font-size:clamp(28px,4.6vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.2;text-wrap:balance}
h2{font-size:21px;font-weight:700;letter-spacing:-.02em;margin-bottom:12px}
.lead{font-size:17px;color:#d9d2cb;max-width:64ch}
.prose p,.prose li{max-width:68ch;color:#d9d2cb}.prose ul,.prose ol{padding-left:1.2em;margin:0}.prose p+p{margin-top:10px}
section{display:flex;flex-direction:column;gap:12px}
.panel{background:var(--panel);border:1px solid var(--line);padding:18px}
kbd{font-family:var(--f-mono);font-size:13px;padding:1px 7px;border:1px solid var(--line);border-bottom-width:2px;background:var(--panel-2)}
table{width:100%;border-collapse:collapse;font-size:15px}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--mute);font-weight:600;font-size:13px}
.tbl{overflow-x:auto}
.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
@media(max-width:760px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cc{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px 12px;background:var(--panel);border:2px solid var(--line);text-decoration:none;color:var(--fg);text-align:center;min-width:0}
.cc:hover{border-color:var(--acc)}.cc canvas{width:96px;height:96px;background:#0b0a0d;image-rendering:pixelated}.cc b{font-size:15px}.cc span{font-size:12px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center}
@media(max-width:640px){.hero{grid-template-columns:1fr}}
.sprites{display:flex;gap:8px;background:#0b0a0d;border:1px solid var(--line);padding:8px}.sprites canvas{width:128px;height:128px;image-rendering:pixelated}
@media(max-width:640px){.sprites canvas{width:96px;height:96px}}
.stat{display:grid;grid-template-columns:52px 1fr 20px;gap:10px;align-items:center;font-size:14px;color:var(--mute)}
.bar{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.bar i{height:10px;background:var(--panel-2);border:1px solid var(--line)}.bar i.on{background:var(--acc);border-color:var(--acc)}
.tag{font-family:var(--f-px);font-size:8px;padding:4px 6px 3px;border:1px solid var(--acc);color:var(--acc);margin-right:8px;vertical-align:2px}
.pn{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--mute)}.foot nav{display:flex;flex-wrap:wrap;gap:6px 18px}.foot a{color:var(--fg);text-decoration:none}
