.font-controls {
  flex-direction: column;
  align-items: stretch;
}

.control-group {
  margin-bottom: var(--spacing-sm);
}

.control-group label {
  display: block;
  font-weight: bold;
  margin-bottom: var(--spacing-sm);
  color: var(--text-secondary);
}

.control-group span {
  color: var(--primary);
}

.btn-group {
  display: flex;
  gap: var(--spacing-sm);
}

.demo-area {
  padding: 0;
  border-radius: var(--radius);
  overflow: hidden;
}

.demo-row {
  display: flex;
  align-items: center;
  padding: var(--spacing-lg);
  border-bottom: 1px solid var(--border);
}

.demo-row:last-child {
  border-bottom: none;
}

.label-col {
  flex: 0 0 250px;
  padding-right: var(--spacing-md);
}

.label-col h4 {
  margin-bottom: 4px;
  color: var(--primary);
}

.label-col small {
  color: var(--text-secondary);
  line-height: 1.2;
  display: block;
}

.text-col {
  flex: 1;
  background: white;
  padding: var(--spacing-sm);
  border-radius: var(--radius);
  border: 1px dashed var(--border);
}

.sample-text {
  margin: 0;
  font-weight: 500;
  transition: all 0.3s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Base font sizes for demo */
.text-px {
  font-size: 16px;
}

.text-rem {
  font-size: 1rem;
}

.text-em {
  font-size: 1em;
}
