:root { color-scheme: dark; --bg:#101214; --fg:#e8e8e8; --dim:#9aa0a6; --accent:#6fbf73; --line:#30343a; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.45 system-ui,sans-serif; }
main { max-width:768px; margin:0 auto; padding:16px; }
h1 { font-size:1.3rem; margin:0 0 4px; }
h2 { font-size:1.05rem; margin:20px 0 8px; }
.meta { color:var(--dim); font-size:.875rem; margin:4px 0 12px; }
a { color:var(--accent); }
#stage { width:100%; aspect-ratio:4/3; background:#000; margin:0 auto; }
#game { width:100%; height:100%; }
.bar { height:10px; background:var(--line); margin-top:10px; border-radius:5px; overflow:hidden; }
#progress { height:100%; width:0; background:var(--accent); }
#status { margin:8px 0; }
button { font:inherit; padding:8px 18px; background:#23272c; color:var(--fg); border:1px solid var(--line); border-radius:6px; cursor:pointer; }
button:disabled { opacity:.5; cursor:default; }
table { border-collapse:collapse; width:100%; font-size:.95rem; }
th,td { text-align:left; padding:5px 8px; border-bottom:1px solid var(--line); }
