Component Reference

Markup patterns and required classes for every interactive component — all of it checkbox/radio-driven, zero JavaScript.

A radio-driven accordion. Give every input in a group the same name attribute so only one panel opens at a time.

<div class="accordion">
  <div class="accordion-block">
    <input type="radio" name="acc" id="a1" checked>
    <label for="a1" class="accordion-label bg-black">Question</label>
    <div class="accordion-content">Answer text here.</div>
  </div>
</div>

Required classes

ClassApplies to
.accordionWrapper
.accordion-blockEach item
.accordion-label<label> trigger
.accordion-contentPanel body

Radio inputs ordered before their labels via CSS order, so DOM order can stay input → label → panel.

<div class="tabs">
  <input type="radio" name="t" id="t1" checked>
  <label for="t1">Tab One</label>
  <div class="tab">Content one</div>

  <input type="radio" name="t" id="t2">
  <label for="t2">Tab Two</label>
  <div class="tab">Content two</div>
</div>

Required classes

ClassApplies to
.tabsWrapper
.tabEach panel <div>

Small status indicators. .badge is compact and square; .pill is fully rounded and slightly larger.

Info Success Warning Danger
Info Success Warning Danger

Color modifiers

ClassColor source
.bga-info / .pill-info--info
.bga-success / .pill-success--success
.bga-warning / .pill-warning--warning
.bga-danger / .pill-danger--danger