.fr551-stimulus-mount { margin: 0 0 18px; padding: 14px; border: 1px solid rgba(255,182,39,0.28); border-radius: 8px; background: rgba(255,255,255,0.025); }
.fr551-stimulus { display: block; width: 100%; max-height: 260px; color: var(--text); }
.fr551-stimulus__reference, .fr551-stimulus__symbol, .fr551-stimulus__base, .fr551-stimulus__joint { fill: none; stroke: currentColor; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.fr551-stimulus__reference { stroke: var(--text-muted); }
.fr551-stimulus__symbol { stroke: var(--arc); stroke-width: 4; }
.fr551-stimulus__dimension, .fr551-stimulus__label { fill: var(--arc); font-family: 'IBM Plex Mono', monospace; font-size: 20px; font-weight: 700; }
.fr551-stimulus__first { fill: rgba(255,182,39,0.28); stroke: var(--arc); stroke-width: 2; }
.fr551-stimulus__second { fill: rgba(127,191,127,0.24); stroke: #7FBF7F; stroke-width: 2; }
.fr551-stimulus__sequence-marker { fill: CanvasText; stroke: Canvas; stroke-width: 3px; paint-order: stroke fill; font-family: 'IBM Plex Mono', monospace; font-size: 16px; font-weight: 800; }

@media (forced-colors: active) {
  .fr551-stimulus * { forced-color-adjust: auto; }
  .fr551-stimulus__first { fill: Canvas; stroke: CanvasText; stroke-dasharray: 2 2; }
  .fr551-stimulus__second { fill: Canvas; stroke: CanvasText; stroke-dasharray: 7 3; }
}
