/* NET-61 shared baseline extracted from NET-60 */
.card,
.panel,
.form-card,
.section-card,
.step-card,
.output-card,
.table-wrap {
  background: #1c1c1c;
  border: 1px solid #2e2e2e;
  border-radius: 8px;
}

.title,
.group-title,
.card-title,
.section-card-title,
.form-card-title,
.section-title {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #515151;
}

label {
  font-size: 0.72rem;
  font-weight: 500;
  color: #888888;
  letter-spacing: 0.03em;
}

input[type="text"],
input[type="number"],
input[type="date"],
input[type="time"],
input[type="email"],
input[type="password"],
select,
textarea {
  background: #242424;
  border: 1px solid #2e2e2e;
  border-radius: 4px;
  color: #f5f5f5;
}

input[type="text"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus {
  border-color: #c4889a;
  outline: none;
}

button.primary,
.btn-primary {
  font-family: 'Geist', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #121212;
  background: #f4b8c8;
  border: 1px solid #f4b8c8;
  border-radius: 5px;
  padding: 0.65rem 1.4rem;
  letter-spacing: 0.01em;
}

button.primary:hover,
.btn-primary:hover {
  background: #c4889a;
  border-color: #c4889a;
  color: #121212;
}

button.secondary,
.btn-secondary {
  font-family: 'Geist', sans-serif;
  font-size: 0.85rem;
  font-weight: 500;
  color: #f5f5f5;
  background: transparent;
  border: 1px solid #2e2e2e;
  border-radius: 5px;
  padding: 0.65rem 1.4rem;
  letter-spacing: 0.01em;
}

button.secondary:hover,
.btn-secondary:hover {
  border-color: #c4889a;
  color: #f4b8c8;
}
