.cc-card {
  background: var(--cc-color-surface);
  border: 1px solid var(--cc-color-line);
  border-radius: var(--cc-radius-lg);
  box-shadow: var(--cc-shadow-card);
  color: var(--cc-color-ink);
  padding: clamp(1rem, 2vw, 1.5rem);
}

.cc-btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  cursor: pointer;
  display: inline-flex;
  font-weight: 800;
  gap: 0.5rem;
  justify-content: center;
  min-height: 44px;
  padding: 0.75rem 1.15rem;
  text-decoration: none;
}

.cc-btn-primary {
  background: var(--cc-color-brand);
  color: #fffaf1;
}

.cc-btn-secondary {
  background: #fffaf1;
  border-color: var(--cc-color-line);
  color: var(--cc-color-brand-strong);
}

.cc-empty-state {
  background: rgba(255, 250, 241, 0.86);
  border: 1px dashed rgba(75, 38, 15, 0.35);
  border-radius: var(--cc-radius-lg);
  color: var(--cc-color-muted);
  padding: clamp(1rem, 3vw, 2rem);
}

.cc-kpi {
  background: #111827;
  border-radius: var(--cc-radius-lg);
  color: #fffaf1;
  padding: 1rem;
}

.cc-badge {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.3rem 0.7rem;
}

.cc-badge-warning {
  background: #fef3c7;
  color: var(--cc-color-warning);
}

.cc-badge-success {
  background: #dcfce7;
  color: var(--cc-color-success);
}

.cc-badge-danger {
  background: #fee2e2;
  color: var(--cc-color-danger);
}

:focus-visible {
  outline: 3px solid rgba(139, 69, 19, 0.55);
  outline-offset: 3px;
}

