*{box-sizing:border-box}body{margin:0;padding:24px;background:#ececec;color:#111;font-family:Arial,sans-serif}.card{max-width:650px;margin:40px auto;padding:30px;background:#fff;border-radius:14px;box-shadow:0 3px 18px rgba(0,0,0,.18)}.wide{max-width:1050px}h1{margin-top:0}label{display:block;margin:18px 0;font-weight:bold}input,textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #aaa;border-radius:7px;font-size:18px}button{width:100%;padding:15px;margin-top:12px;border:0;border-radius:7px;font-size:18px;font-weight:bold;cursor:pointer}#timer{text-align:center;font-size:56px;font-weight:bold;margin:20px}.dots{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:20px 0}.dot{display:inline-block;width:29px;height:29px;border:2px solid #999;border-radius:50%;background:#fff}.dot.done{background:#20a040;border-color:#16802f}.stats{display:flex;justify-content:space-between;margin-top:20px}.error{color:#b00020}.team{padding:15px;margin:10px 0;border:1px solid #ccc;border-radius:9px}.team-head{display:flex;justify-content:space-between;align-items:center}.team h2{margin:0 0 10px}.small-dot{width:22px;height:22px;margin-right:4px}.meta,.muted{color:#666;font-size:14px;margin-top:8px}.row{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #ddd}

.finish{text-align:center;margin-top:22px}.finish h2{margin-bottom:12px}.result-link{display:block;margin-top:20px;padding:15px;text-decoration:none;font-weight:bold;border:2px solid #111;border-radius:8px;color:#111}.result-link:hover{background:#eee}
