/* Cards Component - Modern Minimalist Design */

/* Base Card Styles - Ultra Soft and Eye-Friendly */
.card {
  background: var(--bg-card);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-xl);
  box-shadow: var(--shadow-none);
  transition: var(--transition-none);
  overflow: hidden;
  margin-bottom: var(--spacing-md);
  position: relative;
}

.card:hover {
  box-shadow: var(--shadow-none);
  transform: none;
  border-color: var(--border-color);
}

/* Card Header - Soft and Subtle */
.card-header {
  background: var(--bg-card-header);
  border-bottom: 1px solid var(--border-color-light);
  padding: var(--spacing-md) var(--spacing-lg);
  font-weight: var(--font-weight-normal);
  color: var(--text-primary);
}

.card-header:first-child {
  border-radius: calc(var(--border-radius-lg) - 1px) calc(var(--border-radius-lg) - 1px) 0 0;
}

/* Card Body */
.card-body {
  padding: var(--spacing-lg);
  background: var(--bg-card);
}

/* Card Footer - Soft and Subtle */
.card-footer {
  background: var(--bg-card-footer);
  border-top: 1px solid var(--border-color-light);
  padding: var(--spacing-md) var(--spacing-lg);
}

.card-footer:last-child {
  border-radius: 0 0 calc(var(--border-radius-lg) - 1px) calc(var(--border-radius-lg) - 1px);
}

/* Card Title - Soft and Readable */
.card-title {
  color: var(--text-primary);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--spacing-sm);
}

/* Card Subtitle */
.card-subtitle {
  color: var(--text-secondary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-normal);
  margin-bottom: var(--spacing-md);
}

/* Card Text */
.card-text {
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  line-height: 1.5;
  margin-bottom: var(--spacing-sm);
}

.card-text:last-child {
  margin-bottom: 0;
}

/* Stat Cards - Ultra Soft and Eye-Friendly */
.stat-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-xl);
  padding: var(--spacing-lg);
  text-align: center;
  transition: var(--transition-none);
  box-shadow: var(--shadow-none);
  height: 100%;
  position: relative;
}

.stat-card:hover {
  box-shadow: var(--shadow-none);
  transform: none;
}

.stat-card.no-hover {
  transition: var(--transition-none);
}

.stat-card.no-hover:hover {
  transform: none;
  box-shadow: var(--shadow-none);
}

.stat-card .stat-icon {
  font-size: var(--font-size-2xl);
  color: var(--brand-primary);
  margin-bottom: var(--spacing-sm);
}

.stat-card .stat-value {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--spacing-xs);
}

.stat-card .stat-label {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.stat-card .stat-change {
  font-size: var(--font-size-xs);
  margin-top: var(--spacing-sm);
}

.stat-card .stat-change.positive {
  color: var(--brand-success);
}

.stat-card .stat-change.negative {
  color: var(--brand-danger);
}

/* Feature Cards */
.feature-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-lg);
  text-align: center;
  transition: var(--transition-none);
  box-shadow: var(--shadow-none);
  height: 100%;
  position: relative;
}

.feature-card:hover {
  box-shadow: var(--shadow-none);
  transform: none;
}

.feature-card .feature-icon {
  font-size: var(--font-size-3xl);
  color: var(--brand-primary);
  margin-bottom: var(--spacing-md);
}

.feature-card .feature-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--spacing-sm);
}

.feature-card .feature-description {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  line-height: 1.5;
}

/* Info Cards */
.info-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-lg);
  transition: var(--transition-none);
  box-shadow: var(--shadow-none);
  position: relative;
}

.info-card:hover {
  box-shadow: var(--shadow-none);
  transform: none;
}

.info-card .info-header {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-md);
}

.info-card .info-icon {
  font-size: var(--font-size-lg);
  color: var(--brand-primary);
}

.info-card .info-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin: 0;
}

.info-card .info-content {
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  line-height: 1.5;
}

/* Alert Cards */
.alert-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-lg);
  transition: var(--transition-none);
  box-shadow: var(--shadow-none);
  position: relative;
}

.alert-card:hover {
  box-shadow: var(--shadow-none);
  transform: none;
}

.alert-card.alert-success {
  border-left: 4px solid var(--brand-success);
}

.alert-card.alert-warning {
  border-left: 4px solid var(--brand-warning);
}

.alert-card.alert-danger {
  border-left: 4px solid var(--brand-danger);
}

.alert-card.alert-info {
  border-left: 4px solid var(--brand-info);
}

.alert-card .alert-header {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-sm);
}

.alert-card .alert-icon {
  font-size: var(--font-size-lg);
}

.alert-card.alert-success .alert-icon {
  color: var(--brand-success);
}

.alert-card.alert-warning .alert-icon {
  color: var(--brand-warning);
}

.alert-card.alert-danger .alert-icon {
  color: var(--brand-danger);
}

.alert-card.alert-info .alert-icon {
  color: var(--brand-info);
}

.alert-card .alert-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin: 0;
}

.alert-card .alert-message {
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  line-height: 1.5;
  margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
  .card,
  .stat-card,
  .feature-card,
  .info-card,
  .alert-card {
    margin-bottom: var(--spacing-sm);
  }
  
  .card-header,
  .card-body,
  .card-footer {
    padding: var(--spacing-md);
  }
  
  .stat-card,
  .feature-card,
  .info-card,
  .alert-card {
    padding: var(--spacing-md);
  }
}

@media (max-width: 576px) {
  .card-header,
  .card-body,
  .card-footer {
    padding: var(--spacing-sm);
  }
  
  .stat-card,
  .feature-card,
  .info-card,
  .alert-card {
    padding: var(--spacing-sm);
  }
  
  .stat-card .stat-value {
    font-size: var(--font-size-xl);
  }
  
  .feature-card .feature-icon {
    font-size: var(--font-size-2xl);
  }
}
