:root{--bg: #17212b;--section: #232e3c;--text: #ffffff;--hint: #aaaaaa;--accent: #8ab4f8;--button: #3390ec;--button-text: #ffffff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,SF Pro Text,Roboto,Segoe UI,sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}.app{max-width:480px;margin:0 auto;padding:12px 12px 76px}.card{background:var(--section);border-radius:12px;padding:14px;margin-bottom:12px}.card h3{margin:0 0 6px;font-size:16px;font-weight:600}.card ul{margin:6px 0 0;padding-left:18px}.card li{margin-bottom:4px}.hint{color:var(--hint);font-size:14px;margin:6px 0 0}.error{color:#e5726f;background:var(--section);border-radius:12px;padding:14px}.score-card{text-align:center}.score{font-size:44px;font-weight:700;line-height:1.1}.chart{width:100%;height:72px;margin-top:10px}button.primary{display:block;width:100%;margin-top:12px;padding:12px;border:none;border-radius:10px;background:var(--button);color:var(--button-text);font-size:16px;font-weight:600}nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--section);border-top:1px solid color-mix(in srgb,var(--hint) 30%,transparent);padding-bottom:env(safe-area-inset-bottom)}nav button{flex:1;padding:14px 0;border:none;background:none;color:var(--hint);font-size:15px}nav button.active{color:var(--accent);font-weight:600}
