.cv-tool-card {
  margin-bottom: 34px;
  padding: 24px;
  border: 1px solid var(--snt-border);
  border-radius: var(--snt-radius);
  background: var(--snt-white);
  box-shadow: var(--snt-shadow-sm);
}

.cv-tool-card__head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 18px;
  color: var(--snt-muted);
  font-size: 14px;
}

.cv-tool-card__head span,
.cv-tool-card__head strong {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
}

.cv-tool-card__head span {
  background: var(--snt-bg-green);
  color: var(--snt-success);
  font-weight: 900;
}

.cv-tool-card__head strong {
  background: var(--snt-bg-warm);
  color: var(--snt-yellow-dark);
}

.cv-tool-form {
  display: grid;
  gap: 18px;
}

.cv-tool-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.cv-tool-field {
  display: grid;
  gap: 7px;
  color: var(--snt-heading);
  font-size: 14px;
  font-weight: 800;
}

.cv-tool-field input,
.cv-tool-field select {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--snt-border);
  border-radius: 10px;
  background: var(--snt-white);
  color: var(--snt-text);
  padding: 0 12px;
}

.cv-tool-field input:focus,
.cv-tool-field select:focus {
  outline: none;
  border-color: var(--snt-yellow);
  box-shadow: var(--snt-focus);
}

.cv-tool-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cv-tool-error {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #fecaca;
  border-radius: 10px;
  background: #fef2f2;
  color: #b91c1c;
  font-weight: 700;
}

.cv-tool-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 20px;
}

.cv-result {
  display: grid;
  gap: 5px;
  padding: 16px;
  border: 1px solid var(--snt-border);
  border-radius: 12px;
  background: var(--snt-bg-soft);
}

.cv-result span {
  color: var(--snt-muted);
  font-size: 13px;
  font-weight: 800;
}

.cv-result strong {
  color: var(--snt-heading);
  font-size: 22px;
  line-height: 1.2;
}

.cv-result.is-positive strong {
  color: var(--snt-success);
}

.cv-result.is-negative strong {
  color: var(--snt-red);
}

.cv-tool-content {
  margin-top: 28px;
}

@media (max-width: 768px) {
  .cv-tool-card {
    padding: 18px;
  }

  .cv-tool-grid,
  .cv-tool-results {
    grid-template-columns: 1fr;
  }

  .cv-tool-actions .snt-btn {
    width: 100%;
  }
}

