@layer components {
  /* Status badge
  /* ------------------------------------------------------------------------ */

  .status-badge {
    display: inline-block;
    box-sizing: border-box;
    min-width: 4em;
    padding: var(--space-xs) var(--space-sm);
    font-size: var(--text-sm);
    border-radius: var(--radius-sm);
    font-weight: bold;
    text-align: center;
  }

  /* Variants
  /* ------------------------------------------------------------------------ */

  .status-badge--valid {
    background-color: var(--color-bg-positive);
    color: var(--color-positive);
    border: 1px solid #c8e6c9;
  }

  .status-badge--invalid {
    background-color: var(--color-bg-negative);
    color: var(--color-negative);
    border: 1px solid #fcc;
  }

  .status-badge--404 {
    background-color: var(--color-bg-negative);
    color: var(--color-negative);
    border: 1px solid #fcc;
  }

  .status-badge--403 {
    background-color: var(--color-bg-warning);
    color: var(--color-warning);
    border: 1px solid #ffe0b2;
  }

  .status-badge--error {
    background-color: var(--color-bg-purple);
    color: #6a1b9a;
    border: 1px solid #e1bee7;
  }

  .status-badge--unchecked {
    background-color: var(--color-canvas-alt);
    color: var(--color-ink-lightest);
    border: 1px solid var(--color-border);
  }

  /* Checked at timestamp
  /* ------------------------------------------------------------------------ */

  .status-badge__checked-at {
    display: block;
    color: var(--color-ink-lightest);
    font-size: var(--text-xs);
    margin-top: var(--space-xs);
  }
}
