.optics-workspace{width:100%;color:var(--color-text-primary);--rcwa-border: var(--color-border)}.optics-workspace *,.optics-number *{box-sizing:border-box}.optics-workspace h3{margin:0;font-size:.875rem}.optics-editor{--editor-control: 36px;position:relative}.optics-editor :is(.ui-button,.ui-input,.ui-select){min-height:var(--editor-control);padding:.375rem .625rem;font-size:var(--type-caption)}.optics-editor .ui-field{gap:var(--space-1)}.optics-editor .ui-field>label{font-size:.75rem}.optics-editor .optics-icon-button{width:var(--editor-control);min-width:var(--editor-control);padding:0;color:var(--color-text-secondary)}.optics-editor .optics-icon-button svg{width:18px;height:18px}.optics-editor .optics-icon-button:hover:not(:disabled){color:var(--color-text-primary);background:var(--color-hover);border-color:transparent}.optics-editor .optics-icon-button[aria-pressed=true]{color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 14%,transparent);border-color:transparent}@media(pointer:coarse){.optics-editor{--editor-control: 44px}}.optics-editor .solver-appbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3)}.optics-editor .solver-appbar h2{margin:0;font-size:1rem;line-height:1.3}.optics-editor .solver-appbar .rcwa-eyebrow,.optics-editor .solver-panel-kicker,.optics-editor .solver-state{font:.6875rem/1.4 var(--font-mono);letter-spacing:.04em}.optics-editor .solver-appbar>.solver-state{justify-self:end;margin:0}.optics-appbar-title{min-width:0}.optics-appbar-actions{display:flex;align-items:center;gap:var(--space-2);min-width:0}.optics-editor .optics-appbar-actions>.ui-select{width:220px;max-width:100%}.optics-editor .ui-overlay{position:absolute}.optics-editor .ui-dialog{position:absolute;width:min(520px,calc(100% - 32px));max-height:calc(100% - 32px);padding:var(--space-4)}.optics-editor .ui-dialog h2{font-size:1rem}.optics-editor .ui-dialog>p{font-size:var(--type-caption)}.optics-editor .ui-dialog-body{margin-top:var(--space-3)}.optics-files{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:flex-end}.optics-files>.ui-field{flex:1 1 240px;min-width:0}.optics-stage{position:relative;display:flex;background:#091728}.optics-rail{flex:0 0 auto;display:flex;flex-direction:column;gap:2px;padding:var(--space-1);background:var(--color-bg-secondary);border-right:1px solid var(--color-border);z-index:3}.optics-stage-main{position:relative;flex:1 1 auto;min-width:0}.optics-scene-area{position:relative;height:600px}.optics-stage[data-wide=false] .optics-scene-area{height:420px}.optics-dock{background:var(--color-bg-primary);padding:var(--space-3);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.optics-stage[data-wide=true] .optics-dock-left{position:absolute;top:0;bottom:0;left:0;z-index:2;width:260px;border-right:1px solid var(--color-border)}.optics-stage[data-wide=true] .optics-inspector-float{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2;width:300px;max-height:calc(100% - 16px);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--color-bg-primary) 94%,transparent);backdrop-filter:blur(8px);box-shadow:0 12px 32px #0006}.optics-stage[data-wide=false] .optics-dock{border-top:1px solid var(--color-border)}.optics-inspector-float{position:relative}.optics-float-close{position:absolute;top:var(--space-1);right:var(--space-1);z-index:1}.optics-editor .optics-float-close{width:28px;min-width:28px;min-height:28px}.optics-dock-left .optics-inspector>h3{display:none}.optics-inspector-float .optics-inspector>h3{padding-right:32px}.optics-editor .optics-dock .solver-light-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:32px;margin:0 0 var(--space-2);padding:var(--space-1) var(--space-2);text-align:left;font-size:var(--type-caption)}.optics-dock .solver-light-item small{margin:0;font-size:.6875rem}.optics-dock .solver-layer{margin:0;padding:var(--space-1) 0 var(--space-1) var(--space-2)}.optics-dock .solver-layer+.solver-layer{margin-top:var(--space-1)}.optics-dock .solver-layer>div:first-child{flex-direction:row;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin:0 0 2px}.optics-dock .solver-layer strong{font-size:.75rem;font-weight:500;color:var(--color-text-secondary)}.optics-dock .solver-layer small{font-size:.6875rem}.optics-editor .optics-dock .solver-layer button{justify-content:flex-start;align-items:center;gap:var(--space-2);width:100%;min-height:32px;margin:2px 0 0;padding:var(--space-1) var(--space-2);text-align:left;font-size:var(--type-caption)}.optics-dock .solver-layer button>i{margin:0}.optics-view-options{display:grid;gap:var(--space-2)}.optics-editor .optics-view-options label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--type-caption)}.optics-view-range input{flex:1}.optics-view-options>p{margin:var(--space-2) 0 0;font-size:.75rem;line-height:1.6;color:var(--color-text-secondary)}.optics-scene-toolbar{position:absolute;bottom:var(--space-2);left:var(--space-2);z-index:1;display:flex;align-items:center;gap:2px;padding:2px;background:color-mix(in srgb,var(--color-bg-primary) 88%,transparent);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:0 8px 24px #0005}.optics-scene-toolbar[data-docked=true],.optics-scene-caption[data-docked=true]{left:268px}.optics-toolbar-divider{align-self:stretch;width:1px;margin:6px 2px;background:var(--color-border)}.optics-scene-caption{position:absolute;top:var(--space-2);left:var(--space-2);color:#cbd8e7;background:#091728dd;padding:2px 6px;pointer-events:none;font:.6875rem/1.6 var(--font-mono)}.optics-scene-message{position:absolute;inset:12px 12px auto;margin:auto;width:min(320px,calc(100% - 24px));background:#091728;color:#cbd8e7;padding:var(--space-4);text-align:center;z-index:1}.optics-inspector,.optics-results,.optics-controls,.optics-number{min-width:0}.optics-inspector>h3{margin:0 0 var(--space-1);font-size:.875rem;line-height:28px}.optics-help>*{margin:0;line-height:inherit}.optics-help{color:var(--color-text-secondary);font-size:.75rem;line-height:1.55;margin:0 0 var(--space-3)}.optics-controls{display:grid;gap:var(--space-3)}.optics-controls>*{margin:0}.optics-controls>:is(p,small){font-size:.75rem;line-height:1.55;color:var(--color-text-secondary)}.optics-number{display:grid;gap:2px}.optics-number .ui-input{width:100%;font-variant-numeric:tabular-nums}.optics-range{width:100%;min-height:24px;margin:0;accent-color:var(--color-accent)}@media(max-width:640px){.optics-editor .solver-appbar{grid-template-columns:minmax(0,1fr) auto}.optics-appbar-actions{grid-column:1 / -1;grid-row:2}.optics-editor .solver-appbar>.solver-state{grid-column:2;grid-row:1}.optics-editor .optics-appbar-actions>.ui-select{flex:1;width:auto}}.optics-results-panel{scroll-margin-top:80px}.optics-results-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);padding:0 var(--space-3);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.optics-results-tabs{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}.optics-editor .optics-results-tabs .ui-tab{min-height:40px;padding:0 var(--space-3);border:0;border-radius:0;background:transparent;font-size:var(--type-caption);font-weight:500;white-space:nowrap}.optics-editor .optics-results-tabs .ui-tab:hover{color:var(--color-text-primary);background:var(--color-hover)}.optics-editor .optics-results-tabs .ui-tab[data-state=active]{color:var(--color-accent);background:transparent;box-shadow:inset 0 -2px var(--color-accent)}.optics-results-status{margin:0 0 0 auto;font:.6875rem/1.4 var(--font-mono);color:var(--color-text-secondary);white-space:nowrap}.optics-results-panel>div>.ui-notice{margin:var(--space-3)}.optics-results-body{min-height:440px;padding:var(--space-4);background:var(--color-bg-primary);overflow-wrap:anywhere}.optics-results-body:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.optics-results-body a{color:var(--color-accent);text-decoration:underline}.optics-results-body [role=alert]{white-space:pre-line}.optics-editor .optics-dock .ui-figure{padding:var(--space-2)}.optics-editor .optics-dock .ui-disclosure summary{padding:var(--space-2) 0;font-size:var(--type-caption)}.optics-editor .optics-dock .ui-disclosure>div{font-size:.75rem}.optics-editor .optics-detail-button{justify-content:flex-start;width:100%}
