:root {
  --cmz-bg: #0b1014;
  --cmz-surface: #141c22;
  --cmz-border: #2a3941;
  --cmz-text: #edf5f5;
  --cmz-muted: #a6b7bc;
  --cmz-accent: #00c9a7;
  --cmz-accent-hover: #00b394;
}

html,
body {
  color: var(--cmz-text);
  background: var(--cmz-bg);
}

a {
  color: var(--cmz-accent);
}

a:hover,
a:focus {
  color: #68ecd2;
}

header,
#header,
.header,
.header-top,
.navbar,
.footer,
footer,
.form-container,
.listing-card,
.listing-grid .listing {
  color: var(--cmz-text);
  background-color: var(--cmz-surface);
  border-color: var(--cmz-border);
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
  color: var(--cmz-text);
  background-color: #10171c;
  border: 1px solid var(--cmz-border);
  border-radius: 999px;
}

textarea {
  border-radius: 16px;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--cmz-accent);
  box-shadow: 0 0 0 3px rgb(0 201 167 / 15%);
}

button,
.btn,
input[type="submit"] {
  color: #07120f;
  background-color: var(--cmz-accent);
  border: 1px solid var(--cmz-accent);
  border-radius: 999px;
  font-weight: 700;
}

button:hover,
.btn:hover,
input[type="submit"]:hover {
  color: #07120f;
  background-color: var(--cmz-accent-hover);
  border-color: var(--cmz-accent-hover);
}

body.login .form-container form > .control-group:not(.cmz-oidc) {
  display: none;
}

.cmz-oidc {
  margin: 0;
  text-align: center;
}

.cmz-oidc-button {
  display: inline-block;
  padding: 12px 24px;
}

.cmz-oidc p {
  margin: 12px 0 0;
  color: var(--cmz-muted);
}
