.o05-panel { margin: 0 0 8px; padding: 9px 12px; border: 1px solid var(--border,#d8cec0); border-radius: 8px; background: var(--surface,#fffaf2); }
.o05-controls,.o05-legend { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.o05-controls button[aria-pressed="true"],.o05-active #objectList button[aria-pressed="true"] { background: #e3eeeb; border-color: #55877d; color: #214d45; }
.o05-panel p,.o05-selection p { margin: 5px 0; }.o05-panel .o05-controls p { margin-left: auto; }
.o05-selection .o05-controls { margin: 7px 0; }.o05-selection label { display: flex; gap: 10px; align-items: center; }
.o05-selection .o05-controls:first-child,.o05-selection .o05-controls:nth-child(2) { display: inline-flex; vertical-align: middle; margin-right: 10px; }
.o05-selection input[type="range"] { width: 230px; }.o05-legend { gap: 18px; font-size: 12px; }
.o05-legend span::before { content: ''; display: inline-block; width: 22px; margin-right: 6px; vertical-align: middle; border-top: 2px solid currentColor; }
.o05-sampleCenters { color: #477f89; }.o05-rulerReadings,.o05-selectedSpan { color: #a65b28; }.o05-rulerReadings::before { border-top-style: dashed !important; }
.o05-plots { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 8px; }
.o05-plots[hidden],.o05-panel[hidden],.o05-selection[hidden] { display: none; }
.o05-plot { border: 1px solid var(--border,#d8cec0); border-radius: 6px; background: var(--surface,#fffaf2); min-width: 0; overflow: hidden; }
.o05-plot h3 { font-size: 13px; margin: 7px 10px 0; font-weight: 600; }.o05-plot svg { display: block; width: 100%; max-height: 165px; }
.o05-plot>p { font-size: 12px; margin: 0 10px 6px; }
.o05-plot [tabindex] { cursor: crosshair; }.o05-plot [tabindex]:focus { outline: 2px solid #55877d; }.o05-plots>p { grid-column: 1/-1; margin: 2px 0; }
.o05-readings { display: grid; grid-template-columns: minmax(92px,1fr) minmax(105px,1.4fr); gap: 6px 10px; font-size: 12px; }.o05-readings dt { color: var(--muted,#68635b); }.o05-readings dd { margin: 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.o05-toggle { display: flex; gap: 7px; align-items: center; margin: 9px 0; }.o05-active #properties h3,.o05-active #readings h3 { font-size: 13px; margin: 14px 0 7px; }.o05-active #properties .param-field { margin: 8px 0; }
.o05-active #canvasWrap { height: 205px; min-height: 190px; }.o05-selection pre { max-height: 260px; overflow: auto; white-space: pre-wrap; font-size: 12px; }
.o05-error { color: var(--danger,#9c422b); }.o05-domain-note { font-size: 12px; max-width: 560px; }.o05-active #readings details { margin-top: 12px; font-size: 12px; }
