Status and feedback components, all pure CSS — no JS for the styling or the
animation. Status variants share one vocabulary across badge, alert, and toast:
--neutral --success --warning --danger --info.
Badge
<span class="talos-badge talos-badge--success talos-badge--dot">Online</span>
<span class="talos-badge talos-badge--info">Build 0.0.1</span>
Modifiers: --dot (leading glow dot), --solid (filled), --sm.
Alert
<div class="talos-alert talos-alert--info">
<span class="talos-alert__icon">◆</span>
<div class="talos-alert__title">Deployment queued</div>
<div class="talos-alert__body">Build #482 is waiting on the test gate.</div>
<button class="talos-alert__close" aria-label="Dismiss">×</button>
</div>
A 3-column grid (icon · title+body · close) with a chamfered corner and a 2px
status bar. --bare drops the chamfer for a plain left-border variant.
Toast
Toasts live in a fixed .talos-toast-region (bottom-right); the region is
pointer-events: none and each toast re-enables its own. The entrance (slide +
fade) is a pure-CSS keyframe — you add/remove the node, CSS does the rest.
<div class="talos-toast-region">
<div class="talos-toast talos-toast--success">
<span class="talos-toast__icon">✓</span>
<div class="talos-toast__title">Synced</div>
<div class="talos-toast__body">All replicas consistent.</div>
<button class="talos-toast__close" aria-label="Dismiss">×</button>
</div>
</div>
Tooltip
Pure CSS via a data-tooltip attribute on a .talos-has-tooltip wrapper — the
::after reads the text with attr() and reveals on hover/focus. No JS.
<span class="talos-has-tooltip" data-tooltip="Cluster region: eu-west-3">
<span class="talos-badge">Hover me</span>
</span>
Progress
Determinate: set --talos-value (0–100) on the bar. Indeterminate: add
--indeterminate to the container and a ::after sweep carries the motion.
<div class="talos-progress"><div class="talos-progress__bar" style="--talos-value:68"></div></div>
<div class="talos-progress talos-progress--indeterminate"><div class="talos-progress__bar"></div></div>
Sizes: --sm (4px), --lg (14px).
Spinner & skeleton
<span class="talos-spinner"></span>
<span class="talos-skeleton talos-skeleton--text" style="width:90%"></span>
Spinner sizes: --sm --md --lg. Skeleton shapes: --text (stack for
paragraphs), --circle. Both animations stop under prefers-reduced-motion.