@charset "utf-8";

/* オーバーレイ */
#overlay {
  position: fixed;
  inset: 0;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  z-index: 2000;
  padding: 2rem;
}

#overlay.ok {
  background: rgba(25, 135, 84, 0.95);
}

#overlay.ng {
  background: rgba(220, 53, 69, 0.95);
}

#overlayResultLabel {
  font-size: 4rem;
  font-weight: bold;
}

#overlayMessage {
  font-size: 1.3rem;
  margin-top: 0.5rem;
  text-align: center;
}

/* 実行結果 */
#executionResult th {
  width: 280px;
  white-space: nowrap;
}

#executionResult td {
  text-align: right;
  font-weight: bold;
}

/* リスト */
.list-asterisk {
  margin: 0;
  padding-left: 1.25em;
  font-size: 14px;
  color: #888;
  list-style-type: none;
}
.list-asterisk li {
  position: relative;
}
.list-asterisk li::before {
  content: "※";
  position: absolute;
  left: -1.25em;
}

/* フォーム */
.form-label {
  font-weight: bold;
}
.form-control,
.form-select {
  background-color: #eff;
}
.form-control:placeholder-shown,
.form-control:not([value]),
.form-control[value=""],
.form-control:invalid,
.form-select:invalid {
  background-color: #fee;
}
.form-select option[value=""] {
  background-color: #fee;
}
.form-select option:not([value=""]) {
  background-color: #fff;
}
.form-floating>.form-control-plaintext~label::after,
.form-floating>.form-control~label::after,
.form-floating>.form-select~label::after {
	--bs-body-bg: transparent;
}
