/**
 * VidraSec data classification badge — shared component so every consumer
 * (vidrasec-presentation's deck covers, vidrasec-report-template's cover
 * page, ...) renders an identical pill for the four sensitivity levels.
 *
 * Colors are stored as "r, g, b" triplets rather than hex, so a host can
 * compose a translucent background/border via rgba(var(--x-rgb), alpha) —
 * that blends the tint with whatever's behind the badge instead of needing
 * a separate hardcoded background per host theme. Four distinct hues
 * (red/orange/blue/green) rather than the severity palette's pastels
 * (design.html), since those are tuned for use as backgrounds/accents, not
 * as text that has to stay readable on both white and black — see
 * classification-badge-dark.css for the brightened dark-background variant
 * of these same variables.
 *
 * "restricted" intentionally matches vidrasec-report-template's cover
 * badge red.
 *
 * This file only covers the badge's own look (pill shape, colors) at
 * whatever font-size the host gives it. It deliberately does NOT set
 * font-size itself: padding/letter-spacing below are in em so the pill
 * scales with it, but the right absolute size is host-specific — a
 * reveal.js cover slide's ambient font-size is huge (deck title-sized),
 * while a report cover's is normal document body text, so a single
 * em-relative value here would size right on one and be either
 * illegibly tiny or oversized on the other. Each host sets its own
 * font-size on .classification-badge (e.g. vidrasec-presentation's
 * static/css/vidrasec-reveal-light.css). Where a host places the badge (e.g.
 * cover slide only, spacing relative to sibling content) is likewise
 * that host's own concern.
 */
:root {
  --classification-restricted-rgb: 192, 57, 43;
  --classification-confidential-rgb: 184, 101, 28;
  --classification-internal-rgb: 26, 111, 168;
  --classification-public-rgb: 30, 122, 70;
}

.classification-badge {
  display: inline-block;
  padding: 0.25em 0.9em;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 3px;
  flex-shrink: 0;
}

.classification-badge.classification-restricted {
  color: rgb(var(--classification-restricted-rgb));
  background: rgba(var(--classification-restricted-rgb), 0.08);
  border: 1px solid rgba(var(--classification-restricted-rgb), 0.35);
}

.classification-badge.classification-confidential {
  color: rgb(var(--classification-confidential-rgb));
  background: rgba(var(--classification-confidential-rgb), 0.08);
  border: 1px solid rgba(var(--classification-confidential-rgb), 0.35);
}

.classification-badge.classification-internal {
  color: rgb(var(--classification-internal-rgb));
  background: rgba(var(--classification-internal-rgb), 0.08);
  border: 1px solid rgba(var(--classification-internal-rgb), 0.35);
}

.classification-badge.classification-public {
  color: rgb(var(--classification-public-rgb));
  background: rgba(var(--classification-public-rgb), 0.08);
  border: 1px solid rgba(var(--classification-public-rgb), 0.35);
}
