Panel

Glass section containers — panel chrome, focus elevation, and nested surfaces.

Preview

Live

Applications

Track status and next actions.

Nested glass with hover/focus elevation.

<section class="panel">
  <div class="panel-head">
    <div>
      <h2 class="panel-title">Applications</h2>
      <p class="panel-sub">Track status and next actions.</p>
    </div>
  </div>
  <div class="glass-focus-surface nested-surface" tabindex="0" role="group" aria-label="Card">
    <p class="msg">Content</p>
  </div>
</section>

Variants

Nested surface

Quieter nested glass without focus lift.

Secondary context — quieter border.

Busy focus surface

.is-busy suppresses hover elevation.

Busy — elevation paused.

Accessibility

  • Use a real heading in .panel-title for section structure.
  • Interactive focus surfaces need a role/name when they behave like cards.
  • Do not make entire panels clickable without keyboard support and a clear name.

API

HTML classes

Class Description
.panel Glass section container.
.panel-head / .panel-title / .panel-sub Header chrome.
.glass-focus-surface / .is-busy Hover/focus elevation surface.
.nested-surface Quieter nested glass.

React props

From src/core/Panel.tsxPanel renders <section>.

Prop Type Default Description
busy boolean false GlassFocusSurface — applies .is-busy.
className / …HTML string / attrs Native attributes via forwardRef.