.o02-panel { margin: 0 0 8px; padding: 9px 12px; border: 1px solid var(--border, #d8cec0); border-radius: 8px; background: var(--surface, #fffaf2); }
.o02-controls,.o02-legend { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.o02-controls button[aria-pressed="true"],.o02-active #objectList button[aria-pressed="true"] { background: #e3eeeb; border-color: #55877d; color: #214d45; }
.o02-panel p { margin: 7px 0; }
.o02-legend { gap: 18px; font-size: 12px; }
.o02-realRay { color: #a64e20; }.o02-normal { color: #697c7e; }.o02-reference { color: #9b8267; }
.o02-legend span::before { content: ''; display: inline-block; width: 23px; margin-right: 6px; vertical-align: middle; border-top: 2px solid currentColor; }
.o02-legend .o02-normal::before,.o02-legend .o02-reference::before { border-top-style: dashed; }
.o02-plots { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 8px; }
.o02-plots[hidden],.o02-panel[hidden],.o02-selection[hidden] { display: none; }
.o02-plot { border: 1px solid var(--border, #d8cec0); border-radius: 6px; background: var(--surface, #fffaf2); min-width: 0; overflow: hidden; }
.o02-plot h3 { font-size: 13px; margin: 8px 10px 0; font-weight: 600; }
.o02-plot svg { display: block; width: 100%; max-height: 176px; }
.o02-plot [tabindex] { cursor: pointer; }.o02-plot [tabindex]:focus { outline: 2px solid #55877d; }
.o02-readings { display: grid; grid-template-columns: minmax(85px,1fr) minmax(105px,1.4fr); gap: 6px 10px; font-size: 12px; }
.o02-readings dt { color: var(--muted,#68635b); }.o02-readings dd { margin: 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.o02-toggle { display: flex; gap: 7px; align-items: center; margin: 9px 0; }
.o02-selection { margin-top: 8px; }.o02-selection select { max-width: 100%; }
.o02-selection p { margin: 6px 0; }.o02-active #canvasWrap { height: 230px; min-height: 210px; }
.o02-active #properties h3 { font-size: 13px; margin: 16px 0 6px; }.o02-active #properties .param-field { margin: 8px 0; }
.o02-active .o02-domain-note { font-size: 12px; color: #625c53; }
@media(max-width:720px) { .o02-plots { grid-template-columns: 1fr; } }
