:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e9f0f5;background:#0e1720;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:#0e1720}.page{max-width:880px;margin:0 auto;padding:24px 16px 48px}h1{font-size:26px;margin:0 0 8px}h2{font-size:16px;margin:0 0 12px;color:#9fd3e0;text-transform:uppercase;letter-spacing:.04em}header p{color:#b9c9d3;line-height:1.6;margin:0}section{margin-top:24px;padding:16px;background:#141f2b;border:1px solid #243344;border-radius:10px}[hidden]{display:none!important}.header-row{justify-content:space-between;align-items:center}.row{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}.row+.row{margin-top:12px}label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#b9c9d3}input,select{font:inherit;padding:8px 10px;background:#0e1720;color:#e9f0f5;border:1px solid #2f4357;border-radius:6px;min-width:150px}button{font:inherit;padding:9px 16px;border-radius:6px;border:1px solid #2f4357;background:#1b2a39;color:#e9f0f5;cursor:pointer}button:disabled{opacity:.5;cursor:default}button.primary{background:#1f6f8b;border-color:#1f6f8b}button.hold{padding:18px 28px;font-size:18px;background:#2a5a2f;border-color:#2a5a2f;touch-action:none;user-select:none;-webkit-user-select:none}button.hold.pressed{background:#3fa34d}code{background:#0e1720;padding:2px 6px;border-radius:4px;color:#8ed2df}.status{margin:10px 0 0;color:#b9c9d3;font-size:14px}.hint{margin:10px 0 0;color:#8a9bab;font-size:13px}.alert{margin-top:12px;padding:12px 14px;border-radius:8px;background:#3a2323;border:1px solid #7a3b3b;line-height:1.5}.alert p{margin:4px 0}.big{font-size:20px;font-weight:600}#overall{font-size:24px;margin:0 0 12px}#overall.bad{color:#ff9f9f}#overall.ok{color:#8fe3b4}.light{width:56px;height:56px;border-radius:50%;background:#2a3341;border:3px solid #3a4858;display:inline-block}.light.on{background:#58d36a;border-color:#8ff09e;box-shadow:0 0 22px #58d36a}.light.stale{border-color:#c98a2e}.checks{margin:10px 0 0;padding-left:20px;font-size:14px}.checks .bad{color:#ff9f9f}.timing{font-size:14px;line-height:1.7;color:#d7e4ec}.warn{color:#ffcc80}.log{margin:0;padding-left:20px;font-size:13px;color:#b9c9d3;line-height:1.6;max-height:220px;overflow:auto}.log .err{color:#ff9f9f}@media(max-width:600px){input,select{min-width:0;width:100%}label{width:100%}}a.button{display:inline-block;text-decoration:none;padding:12px 20px;font-size:16px}.steps{margin:12px 0 0;padding-left:22px;line-height:1.7;color:#d7e4ec;font-size:14px}button.small{padding:3px 10px;font-size:12px;margin-left:8px}
