/*
 * Copyright 2019-2020 The Go Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style
 * license that can be found in the LICENSE file.
 */

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu',
    'Helvetica Neue', Arial, sans-serif;
}
label {
  display: inline-block;
  text-align: right;
  width: 12.5rem;
}
input {
  width: 12.5rem;
}
button {
  background-color: #eee;
  border: 0.0625rem solid #ccc;
  border-radius: 0.125rem;
  width: 16rem;
}
table {
  border-spacing: 0.625rem 0.125rem;
  font-size: 0.75rem;
  padding: 0.1875rem 0 0.125rem 0;
}
td {
  border-top: 0.0625rem solid #ddd;
}

.Experiments input:invalid {
  border: 0.0625rem dotted red;
  border-radius: 0.25rem;
}
.Experiments input:valid {
  border: 0.0625rem solid grey;
  border-radius: 0.25rem;
}
.Experiments button {
  width: auto;
}
.Experiments input {
  width: auto;
}
.Experiments-updateResult {
  border: none;
  height: 2rem;
  width: 100%;
}
