:root {
  --oc-brand-name: "Claw";
  --oc-brand-initials: "CL";
  --oc-public-font-family: "Inter";
  --oc-font-family: var(--oc-public-font-family), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --bs-font-sans-serif: var(--oc-font-family);
  --bs-body-font-family: var(--oc-font-family);

  /* Verde mate: reemplaza el rojo original de la plantilla custom. */
  --oc-primary: #3f6f54;
  --oc-primary-rgb: 63, 111, 84;
  --oc-accent: #9caf88;
  --oc-accent-rgb: 156, 175, 136;
  --oc-glass-opacity: 0.74;

  --oc-bg-deep: #07110d;
  --oc-bg-surface: #0d1712;
  --oc-bg-surface-rgb: 13, 23, 18;
  --oc-bg-elevated: #14221a;
  --oc-bg-elevated-rgb: 20, 34, 26;
  --oc-text-primary: #eef7f0;
  --oc-text-secondary: #b4c4b8;
  --oc-text-muted: #789180;
  --oc-border: rgba(174, 196, 178, 0.16);
  --oc-border-strong: rgba(var(--oc-primary-rgb), 0.42);
  --oc-card: rgba(13, 23, 18, var(--oc-glass-opacity));
  --oc-card-strong: rgba(13, 23, 18, 0.9);
  --oc-card-soft: rgba(var(--oc-primary-rgb), 0.11);
  --oc-accent-soft: rgba(var(--oc-accent-rgb), 0.14);
  --oc-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
  --oc-shadow-soft: 0 16px 38px rgba(var(--oc-primary-rgb), 0.22);
  --oc-radius: 1.15rem;
  --oc-radius-sm: 0.85rem;
  --oc-topbar-height: 58px;

  --bs-primary: var(--oc-primary);
  --bs-primary-rgb: var(--oc-primary-rgb);
  --bs-link-color: var(--oc-primary);
  --bs-link-hover-color: color-mix(in srgb, var(--oc-primary) 82%, var(--oc-accent));
  --bs-body-bg: var(--oc-bg-deep);
  --bs-body-color: var(--oc-text-primary);

  --bs-green: #3f6f54;
  --bs-green-rgb: 63, 111, 84;
  --bs-success: #4f8a63;
  --bs-success-rgb: 79, 138, 99;
  --bs-danger: #b85d57;
  --bs-danger-rgb: 184, 93, 87;
  --bs-warning: #b49b57;
  --bs-warning-rgb: 180, 155, 87;
  --bs-info: #6d9b9a;
  --bs-info-rgb: 109, 155, 154;
}

html { color-scheme: dark; }

.bg-gradient-primary-to-secondary,
.bg-primary,
.btn-primary {
  background-color: var(--oc-primary) !important;
}

.bg-red,
.bg-danger:not(.badge),
.border-start-danger {
  --oc-soft-rgb: var(--bs-danger-rgb);
}

.text-red,
.text-danger {
  color: #d98d87 !important;
}

.bg-danger-soft {
  background-color: rgba(var(--bs-danger-rgb), 0.14) !important;
}

.bg-warning-soft {
  background-color: rgba(var(--bs-warning-rgb), 0.14) !important;
}

.bg-success-soft,
.bg-green-soft,
.bg-primary-soft {
  background-color: rgba(var(--oc-primary-rgb), 0.14) !important;
}

.text-success,
.text-green,
.text-primary {
  color: color-mix(in srgb, var(--oc-primary) 76%, #fff) !important;
}

.text-warning {
  color: #d7c27b !important;
}

.text-info {
  color: #91c5c3 !important;
}

.btn-primary,
.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--oc-primary);
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #507d61;
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-bg: #345a44;
  --bs-btn-active-border-color: transparent;
}

.btn-primary-soft,
.btn-success-soft {
  color: color-mix(in srgb, var(--oc-primary) 76%, #fff) !important;
  background-color: rgba(var(--oc-primary-rgb), 0.14) !important;
  border-color: rgba(var(--oc-primary-rgb), 0.18) !important;
}

.btn-warning-soft {
  color: #dbc57e !important;
  background-color: rgba(var(--bs-warning-rgb), 0.15) !important;
  border-color: rgba(var(--bs-warning-rgb), 0.18) !important;
}

.btn-danger-soft {
  color: #e29a94 !important;
  background-color: rgba(var(--bs-danger-rgb), 0.14) !important;
  border-color: rgba(var(--bs-danger-rgb), 0.18) !important;
}

.btn-info-soft {
  color: #9ed0ce !important;
  background-color: rgba(var(--bs-info-rgb), 0.14) !important;
  border-color: rgba(var(--bs-info-rgb), 0.18) !important;
}

.progress-bar.bg-primary,
.progress-bar.bg-success {
  background: linear-gradient(90deg, var(--oc-primary), var(--oc-accent)) !important;
}

.border-start-primary,
.border-start-success {
  border-left-color: var(--oc-primary) !important;
}
