Panel
CNC-milled rack-mount module panel with corner registration marks
Size
Material
CONTROL CLUSTER
SYSTEM STATUS
REV-BUNIT-04
<div class="panel" style="width:240px">
<div class="panel-title">CONTROL CLUSTER</div>
<div class="panel-label">SYSTEM STATUS</div>
<div class="flex-row" style="gap:8px">
<button class="push-btn xs active">MODE</button>
<button class="push-btn xs">SYS</button>
<button class="push-btn xs">NAV</button>
</div>
<div class="serial"><span>REV-B</span><span>UNIT-04</span></div>
</div> .panel {
position: relative;
background: linear-gradient(180deg, var(--bg-surface), var(--bg-panel));
border: 1px solid var(--border-mid); border-radius: var(--radius-lg);
padding: 22px;
box-shadow: 0 2px 0 var(--border-deep), 0 10px 28px rgba(0,0,0,0.3), inset 0 1px 0 var(--border-hi);
overflow: hidden;
}
.panel::before, .panel::after {
content: ''; position: absolute; width: 14px; height: 14px;
border: 1px solid var(--border-hi); opacity: 0.35;
}
.panel::before { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.panel::after { right: 10px; bottom: 10px; border-left: none; border-top: none; }
.panel-title {
font-family: var(--font-display); letter-spacing: 2px;
font-size: 11px; margin-bottom: 14px; color: var(--text-primary);
}
.panel-label {
color: var(--text-muted); letter-spacing: 2px;
font-size: 9px; margin-bottom: 10px; font-family: var(--font-ui); font-weight: 500;
}
.serial { margin-top: 16px; color: var(--text-muted); font-size: 9px; letter-spacing: 2px; display: flex; justify-content: space-between; font-family: var(--font-ui); } API
| Class | Type | Description |
|---|---|---|
.panel | Base | Primary component class |
.default | Size | Extra large variant |
Design Notes
Physical Analog
Reference devices: 19-inch rack-mount equipment modules (PreSonus, Mackie, MOTU), modular synthesizer panels (Eurorack). Mechanism: A CNC-milled aluminum or stamped steel panel that forms the front face of a rack-mount module. The panel has chamfered edges (CNC-milled 45-degree bevels around the perimeter that catch light on the top and left edges), corner registration marks (L-shaped alignment marks used during manufacturing), and a serial/revision block at the bottom.
Geometry
| Property | Value |
|---|---|
| Padding | 22px |
| Border radius | --radius-lg (14px) |
| Corner marks | 14x14px L-shapes |
| Corner mark offset | 10px from edges |
| Title font size | 11px |
| Label font size | 9px |
CSS Recipe
Container (.panel)
.panel {
position: relative;
background: linear-gradient(180deg, var(--bg-surface), var(--bg-panel));
border: 1px solid var(--border-mid); border-radius: var(--radius-lg);
padding: 22px;
box-shadow: 0 2px 0 var(--border-deep), 0 10px 28px rgba(0,0,0,0.3), inset 0 1px 0 var(--border-hi);
overflow: hidden;
}
Corner registration marks
.panel::before, .panel::after {
content: ''; position: absolute; width: 14px; height: 14px;
border: 1px solid var(--border-hi); opacity: 0.35;
}
.panel::before { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.panel::after { right: 10px; bottom: 10px; border-left: none; border-top: none; }
Title (.panel-title)
.panel-title {
font-family: var(--font-display); letter-spacing: 2px;
font-size: 11px; margin-bottom: 14px; color: var(--text-primary);
}
Label (.panel-label)
.panel-label {
color: var(--text-muted); letter-spacing: 2px;
font-size: 9px; margin-bottom: 10px; font-family: var(--font-ui); font-weight: 500;
}
Serial block (.serial)
.serial { margin-top: 16px; color: var(--text-muted); font-size: 9px; letter-spacing: 2px; display: flex; justify-content: space-between; font-family: var(--font-ui); }
HTML Structure
<div class="panel" style="width:240px">
<div class="panel-title">CONTROL CLUSTER</div>
<div class="panel-label">SYSTEM STATUS</div>
<div class="flex-row" style="gap:8px">
<button class="push-btn xs active">MODE</button>
<button class="push-btn xs">SYS</button>
<button class="push-btn xs">NAV</button>
</div>
<div class="serial"><span>REV-B</span><span>UNIT-04</span></div>
</div>
Size Variants
No size variants defined. Width is set by content or parent container.
Material Variants
No material variants. Uses machined panel surface gradient.
Theme Behavior
- Background gradient swaps via
--bg-surface/--bg-paneltokens - Corner marks use
--border-hi(adapts to theme) - Shadow stack reduces in light mode (0.3 ambient shadow becomes 0.08)
- Top highlight (
inset 0 1px 0 var(--border-hi)) adapts automatically
Constraints
- MUST use
position: relativefor corner mark positioning - MUST include L-shaped corner registration marks via
::beforeand::after - Corner marks MUST be at 35% opacity
- MUST use Tier 3 (elevated) shadow model: 2px hard edge + 10px ambient + inset highlight
- MUST use
overflow: hiddento prevent content from overlapping corners - Title MUST use
--font-display(Michroma) for equipment branding feel - Serial/revision block SHOULD appear at the bottom
Accessibility
- Use
role="region"witharia-labeldescribing the panel's purpose - Panel title should use appropriate heading level
- Corner marks are decorative (handled by pseudo-elements, inherently hidden from AT)
♿
Accessibility
- Element
- Use semantic HTML with appropriate ARIA roles
- Keyboard
- Follow WAI-ARIA patterns for this control type
- Focus
-
Visible focus indicator required. Use native browser focus ring or custom
:focus-visiblestyles.