*{box-sizing:border-box}
html,body{margin:0;background:#111318;color:#eef0f4;font-family:-apple-system,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif}
main{max-width:520px;margin:0 auto;padding:16px 16px calc(24px + env(safe-area-inset-bottom))}
header{display:flex;justify-content:space-between;align-items:center}
h1{font-size:20px;margin:8px 0}
h2{font-size:16px;margin:24px 0 8px;color:#aab}
#stage{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px 0}
#timer{font-size:56px;font-variant-numeric:tabular-nums;font-weight:300;letter-spacing:1px}
#status{font-size:16px;color:#aab;min-height:22px;text-align:center}
#level{width:300px;height:40px}
button{font:inherit;border:0;border-radius:14px;cursor:pointer;color:#fff}
.big{width:min(80vw,320px);height:min(80vw,320px);border-radius:50%;font-size:30px;font-weight:600;box-shadow:0 8px 30px rgba(0,0,0,.4)}
.start{background:#e5484d}
.stop{background:#2b2f3a;border:6px solid #e5484d;animation:pulse 1.6s infinite}
@keyframes pulse{50%{border-color:#7a2427}}
.small{background:#2b2f3a;padding:8px 14px;font-size:15px}
#list{list-style:none;padding:0;margin:0}
#list li{background:#1b1e26;border-radius:12px;padding:12px;margin-bottom:10px}
.row{display:flex;justify-content:space-between;gap:8px;align-items:center}
.meta{font-size:13px;color:#99a}
.ok{color:#46c37b}.err{color:#ff7b7b}.pending{color:#f5c26b}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.actions button{padding:7px 12px;font-size:14px;background:#2b2f3a}
.hint{font-size:13px;color:#889}
