/* Scientific Studio — explanatory scenes (Studio test theme). */
body.coractive-refonte-light .cr-lab .studio-scene-replaced { display:none !important; }
body.coractive-refonte-light .cr-lab .studio-scene { margin:6px 0 22px; padding:18px; border:1px solid rgba(105,221,198,.22); border-radius:16px; background:linear-gradient(150deg,rgba(0,169,143,.10),rgba(255,255,255,.015)); color:#e6f4f4; }
body.coractive-refonte-light .cr-lab .studio-scene-head { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin-bottom:10px; }
body.coractive-refonte-light .cr-lab .studio-scene-head h4 { margin:0; flex:1 1 auto; font:700 17px/1.4 Arial,sans-serif; color:#f2fbf9; }
body.coractive-refonte-light .cr-lab .studio-scene-stage.is-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:18px; align-items:center; }
body.coractive-refonte-light .cr-lab .studio-scene-svg { display:block; width:100%; height:auto; overflow:visible; touch-action:none; }
body.coractive-refonte-light .cr-lab .studio-scene-stage.is-row .studio-scene-svg { max-width:300px; margin:0 auto; }
body.coractive-refonte-light .cr-lab .studio-scene-readout { display:grid; gap:10px; margin-top:12px; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); }
body.coractive-refonte-light .cr-lab .studio-scene-stage.is-row .studio-scene-readout { margin-top:0; grid-template-columns:1fr; }
body.coractive-refonte-light .cr-lab .studio-scene-hint { margin:12px 0 0; color:#b9d1df; font:13px/1.6 Arial,sans-serif; }
body.coractive-refonte-light .cr-lab .studio-scene.is-idle .studio-scene-svg,
body.coractive-refonte-light .cr-lab .studio-scene.is-idle .studio-scene-readout { opacity:.25; filter:grayscale(1); pointer-events:none; }

/* SVG vocabulary */
body.coractive-refonte-light .cr-lab .studio-scene svg text { font-family:Arial,sans-serif; fill:#d6e8ee; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-label { font-size:17px; font-weight:700; fill:#f2fbf9; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-small { font-size:14px; fill:#b9d1df; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-tiny { font-size:12px; fill:#9fbccb; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-mint { fill:#69ddc6; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-amber { fill:#ffcf85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-clad { fill:#173a4b; stroke:#3f6d7d; stroke-width:1.5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-core { fill:#0f5a52; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-core-line { stroke:#2f8f80; stroke-width:2; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-core-glow { filter:drop-shadow(0 0 6px rgba(105,221,198,.6)); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-guide { stroke:#3f6d7d; stroke-width:1; stroke-dasharray:3 6; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-beam { filter:drop-shadow(0 0 8px rgba(105,221,198,.55)); transition:opacity .25s; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-flow { opacity:.0; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-junction { stroke:#e6f4f4; stroke-width:1; stroke-dasharray:2 5; opacity:.5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-lost { mix-blend-mode:screen; transition:opacity .25s; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-dim path { stroke:#ffcf85; stroke-width:1.5; fill:none; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-dim-text { font-size:14px; font-weight:700; fill:#ffcf85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-movable { cursor:ns-resize; transition:transform .12s ease-out; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-movable.is-dragging { transition:none; }

/* Handles: parameter = mint filled; reading = amber hollow */
body.coractive-refonte-light .cr-lab .studio-scene .sc-knob circle { fill:#69ddc6; stroke:#fff; stroke-width:3; filter:drop-shadow(0 0 8px rgba(105,221,198,.7)); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-knob-amber circle { fill:#ffcf85; filter:drop-shadow(0 0 8px rgba(255,207,133,.7)); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-knob-icon { fill:#0b2030; }
body.coractive-refonte-light .cr-lab .studio-scene .studio-handle { cursor:grab; outline:none; }
body.coractive-refonte-light .cr-lab .studio-scene .studio-handle.is-dragging { cursor:grabbing; }
body.coractive-refonte-light .cr-lab .studio-scene .studio-handle:focus-visible circle { stroke:#fff; stroke-width:5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-knob:hover circle, body.coractive-refonte-light .cr-lab .studio-scene .studio-handle.is-dragging circle { filter:drop-shadow(0 0 14px rgba(105,221,198,.95)); }
body.coractive-refonte-light .cr-lab .studio-scene .is-read, body.coractive-refonte-light .cr-lab .studio-scene .sc-read-probe circle { fill:#0b2030; stroke:#ffcf85; stroke-width:3; cursor:grab; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-read-probe line { stroke:#ffcf85; stroke-width:1.5; stroke-dasharray:4 4; }
body.coractive-refonte-light .cr-lab .studio-scene .is-read:focus-visible { stroke-width:5; }
@media (prefers-reduced-motion:no-preference) {
 body.coractive-refonte-light .cr-lab .studio-scene .sc-knob:not(.is-dragging) circle { animation:sc-breathe 2.6s ease-in-out infinite; }
 @keyframes sc-breathe { 50% { filter:drop-shadow(0 0 14px rgba(105,221,198,.95)); } }
}

/* Pulses */
body.coractive-refonte-light .cr-lab .studio-scene .sc-detector rect { fill:#12303f; stroke:#3f6d7d; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-lamp { fill:#69ddc6; filter:drop-shadow(0 0 10px #69ddc6); opacity:.25; }
body.coractive-refonte-light .cr-lab .studio-play { min-height:36px !important; padding:6px 14px !important; border-radius:999px !important; background:rgba(105,221,198,.12) !important; border:1px solid rgba(105,221,198,.45) !important; color:#e6f4f4 !important; font-size:12.5px !important; }
body.coractive-refonte-light .cr-lab .studio-play::before { content:'▶ '; }
body.coractive-refonte-light .cr-lab .studio-play[aria-pressed=true]::before { content:'❚❚ '; }

/* Dispersion */
body.coractive-refonte-light .cr-lab .studio-scene .sc-pulse-in { fill:none; stroke:#ffcf85; stroke-width:2; stroke-dasharray:5 5; opacity:.85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-pulse-mid { fill:none; stroke:#69ddc6; stroke-width:1.5; opacity:.35; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-pulse-out { fill:none; stroke:#69ddc6; stroke-width:3; filter:drop-shadow(0 0 6px rgba(105,221,198,.6)); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-stem { stroke:#69ddc6; stroke-width:1.5; stroke-dasharray:3 4; }

/* Nonlinear / absorption */
body.coractive-refonte-light .cr-lab .studio-scene .sc-leff path { stroke:#ffcf85; stroke-width:1.8; fill:none; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-flag line { stroke:#69ddc6; stroke-width:1.5; stroke-dasharray:4 4; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-flag rect { fill:#69ddc6; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-flag-text { font-size:13px; font-weight:700; fill:#00205b !important; }

/* PM */
body.coractive-refonte-light .cr-lab .studio-scene .sc-rod { fill:#2a5566; stroke:#4f8190; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-core-dot { fill:#69ddc6; filter:drop-shadow(0 0 6px #69ddc6); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-axis-mint { stroke:#69ddc6; stroke-width:1.3; stroke-dasharray:6 5; opacity:.8; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-axis-amber { stroke:#ffcf85; stroke-width:1.3; stroke-dasharray:6 5; opacity:.8; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-proj-mint { stroke:#69ddc6; stroke-width:6; stroke-linecap:round; opacity:.85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-proj-amber { stroke:#ffcf85; stroke-width:6; stroke-linecap:round; opacity:.85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-drop { stroke:#e6f4f4; stroke-width:1; stroke-dasharray:2 4; opacity:.6; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-arc { fill:none; stroke:#fff; stroke-width:1.5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-pol { stroke:#fff; stroke-width:3.5; stroke-linecap:round; filter:drop-shadow(0 0 5px rgba(255,255,255,.6)); }
body.coractive-refonte-light .cr-lab .studio-scene .sc-pol-head { fill:#fff; }

/* Modes */
body.coractive-refonte-light .cr-lab .studio-scene .sc-zone-mint { fill:rgba(0,169,143,.45); stroke:#69ddc6; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-zone-amber { fill:rgba(255,179,92,.22); stroke:#ffcf85; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-zone-text { font-size:16px; font-weight:700; fill:#f2fbf9; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-cut { stroke:#ffcf85; stroke-width:2; stroke-dasharray:4 3; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-marker { fill:#fff; stroke:#fff; stroke-width:2; filter:drop-shadow(0 0 6px rgba(255,255,255,.7)); }
body.coractive-refonte-light .cr-lab .studio-scene-modes .sc-knob { cursor:ew-resize; }

/* Intensity */
body.coractive-refonte-light .cr-lab .studio-scene .sc-wring { fill:none; stroke:#ffcf85; stroke-width:1.5; stroke-dasharray:5 5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-disc { fill:rgba(105,221,198,.12); stroke:#69ddc6; stroke-width:2.5; }
body.coractive-refonte-light .cr-lab .studio-scene .sc-radius { stroke:#fff; stroke-width:1.5; }

/* Inset end view (splice) */
body.coractive-refonte-light .cr-lab .studio-inset { width:120px; height:120px; justify-self:end; }
body.coractive-refonte-light .cr-lab .studio-inset .sc-inset-title { font-size:10px; fill:#9fbccb; }
body.coractive-refonte-light .cr-lab .studio-inset .sc-inset-1 { fill:rgba(105,221,198,.35); stroke:#69ddc6; }
body.coractive-refonte-light .cr-lab .studio-inset .sc-inset-2 { fill:rgba(255,207,133,.25); stroke:#ffcf85; stroke-dasharray:3 2; }

/* HTML readouts */
body.coractive-refonte-light .cr-lab .studio-gauge { display:grid; gap:4px; grid-column:1/-1; }
body.coractive-refonte-light .cr-lab .studio-scene-readout .studio-gauge { grid-column:auto; }
body.coractive-refonte-light .cr-lab .studio-gauge strong { font:700 30px/1.1 Arial,sans-serif; color:#fff; font-variant-numeric:tabular-nums; }
body.coractive-refonte-light .cr-lab .studio-gauge > span { color:#b9d1df; font-size:13px; }
body.coractive-refonte-light .cr-lab .studio-bar { position:relative; height:8px; border-radius:8px; background:rgba(185,209,223,.16); overflow:hidden; }
body.coractive-refonte-light .cr-lab .studio-bar i { position:absolute; inset:0 auto 0 0; width:0; border-radius:inherit; background:#69ddc6; transition:width .3s cubic-bezier(.2,.7,.2,1); box-shadow:0 0 10px rgba(105,221,198,.6); }
body.coractive-refonte-light .cr-lab .studio-bar.is-amber i { background:#ffcf85; box-shadow:0 0 10px rgba(255,207,133,.6); }
body.coractive-refonte-light .cr-lab .studio-bar.is-soft i { background:#8aa7b8; box-shadow:none; }
body.coractive-refonte-light .cr-lab .studio-facts { display:grid; gap:3px; font-size:13px; color:#b9d1df; }
body.coractive-refonte-light .cr-lab .studio-facts b { color:#fff; font-size:15px; }
body.coractive-refonte-light .cr-lab .studio-stat { display:grid; gap:2px; padding:10px 12px; border-radius:10px; background:rgba(11,32,48,.55); border:1px solid rgba(105,221,198,.14); }
body.coractive-refonte-light .cr-lab .studio-stat span, body.coractive-refonte-light .cr-lab .studio-k { font-size:12px; color:#9fbccb; }
body.coractive-refonte-light .cr-lab .studio-stat b { font-size:17px; color:#fff; font-variant-numeric:tabular-nums; }
body.coractive-refonte-light .cr-lab .studio-stat em { font-style:normal; font-size:12px; color:#8fd9c9; }
body.coractive-refonte-light .cr-lab .studio-note { margin:0; font-size:12.5px; color:#b9d1df; grid-column:1/-1; }
body.coractive-refonte-light .cr-lab .studio-duty, body.coractive-refonte-light .cr-lab .studio-ratio, body.coractive-refonte-light .cr-lab .studio-phase { display:grid; gap:6px; padding:12px 14px; border-radius:12px; background:rgba(11,32,48,.55); border:1px solid rgba(105,221,198,.14); }
body.coractive-refonte-light .cr-lab .studio-duty strong, body.coractive-refonte-light .cr-lab .studio-phase strong { font:700 24px/1.15 Arial,sans-serif; color:#fff; }
body.coractive-refonte-light .cr-lab .studio-duty small, body.coractive-refonte-light .cr-lab .studio-ratio small { font-size:11.5px; color:#9fbccb; }
body.coractive-refonte-light .cr-lab .studio-strip { position:relative; height:14px; border-radius:4px; background:rgba(185,209,223,.12); border:1px solid rgba(185,209,223,.2); }
body.coractive-refonte-light .cr-lab .studio-strip i { position:absolute; left:0; top:-3px; bottom:-3px; min-width:2px; background:#69ddc6; box-shadow:0 0 10px #69ddc6; border-radius:2px; transition:width .3s; }
body.coractive-refonte-light .cr-lab .studio-log { display:grid; gap:6px; }
body.coractive-refonte-light .cr-lab .studio-log > div, body.coractive-refonte-light .cr-lab .studio-split { display:grid; grid-template-columns:78px minmax(0,1fr) auto; align-items:center; gap:10px; font-size:12.5px; color:#b9d1df; }
body.coractive-refonte-light .cr-lab .studio-split { grid-template-columns:110px minmax(0,1fr); }
body.coractive-refonte-light .cr-lab .studio-split b { grid-column:2; font-size:13px; color:#fff; font-variant-numeric:tabular-nums; }
body.coractive-refonte-light .cr-lab .studio-log b { color:#fff; font-variant-numeric:tabular-nums; }
body.coractive-refonte-light .cr-lab .studio-phase em { font-style:normal; color:#8fd9c9; font-weight:700; }
body.coractive-refonte-light .cr-lab .studio-meter { position:relative; height:12px; border-radius:8px; background:rgba(185,209,223,.14); margin-top:4px; }
body.coractive-refonte-light .cr-lab .studio-meter i { position:absolute; inset:0 auto 0 0; border-radius:inherit; background:linear-gradient(90deg,#00a98f,#69ddc6); box-shadow:0 0 10px rgba(105,221,198,.6); transition:width .2s; }
body.coractive-refonte-light .cr-lab .studio-meter b { position:absolute; top:-4px; bottom:-4px; width:2px; background:#ffcf85; transform:translateX(-1px); }
body.coractive-refonte-light .cr-lab .studio-meter-marks { position:relative; height:16px; font-size:11px; color:#9fbccb; }
body.coractive-refonte-light .cr-lab .studio-meter-marks span { position:absolute; transform:translateX(-50%); }
body.coractive-refonte-light .cr-lab .studio-meter-marks span:first-child { transform:none; }

/* Read-only chip and read-only sliders (distinct from parameter sliders) */
body.coractive-refonte-light .cr-lab .studio-readonly-chip { display:inline-flex; align-items:center; gap:6px; padding:3px 9px; border-radius:999px; border:1px dashed rgba(255,207,133,.6); color:#ffdfaa; font:700 10.5px/1.5 Arial,sans-serif; letter-spacing:.04em; white-space:nowrap; }
body.coractive-refonte-light .cr-lab .studio-readonly-chip::before { content:''; width:7px; height:7px; border-radius:50%; border:2px solid #ffcf85; }
body.coractive-refonte-light .cr-lab .lab-explorer-top { flex-wrap:wrap; }
body.coractive-refonte-light .cr-lab .studio-reading-range { display:grid; gap:4px; margin-top:12px; color:#dcebe9; font-size:13px; font-weight:700; }
body.coractive-refonte-light .cr-lab.studio-motion .lab-visual input.studio-range.studio-range-read, body.coractive-refonte-light .cr-lab input.studio-range-read { --fill:#ffcf85; --track:rgba(255,207,133,.14); accent-color:#ffcf85; }
body.coractive-refonte-light .cr-lab.studio-motion .lab-visual input.studio-range-read::-webkit-slider-runnable-track { background:repeating-linear-gradient(90deg,rgba(255,207,133,.45) 0 6px,transparent 6px 10px) 0 0/var(--p,50%) 100% no-repeat, var(--track); }
body.coractive-refonte-light .cr-lab.studio-motion .lab-visual input.studio-range-read::-webkit-slider-thumb { background:#0b2030; border-color:#ffcf85; }
body.coractive-refonte-light .cr-lab.studio-motion .lab-visual input.studio-range-read::-moz-range-thumb { background:#0b2030; border-color:#ffcf85; }
body.coractive-refonte-light .cr-lab.studio-motion .lab-visual input.studio-range-read::-moz-range-progress { background:rgba(255,207,133,.5); }

/* Propagation: the source invites a drag */
@media (prefers-reduced-motion:no-preference) {
 body.coractive-refonte-light .cr-lab .lab-source-handle.studio-grab { animation:sc-grab 2.2s ease-in-out infinite; }
 @keyframes sc-grab { 50% { stroke-width:3; stroke-opacity:1; fill:rgba(255,207,133,.14); } }
}

@media (max-width:700px) {
 body.coractive-refonte-light .cr-lab .studio-scene { padding:14px 12px; }
 body.coractive-refonte-light .cr-lab .studio-scene-stage.is-row { grid-template-columns:1fr; }
 body.coractive-refonte-light .cr-lab .studio-scene .sc-label { font-size:22px; }
 body.coractive-refonte-light .cr-lab .studio-scene .sc-small { font-size:19px; }
 body.coractive-refonte-light .cr-lab .studio-scene .sc-zone-text { font-size:20px; }
 body.coractive-refonte-light .cr-lab .studio-gauge strong { font-size:26px; }
}
body.coractive-refonte-light .cr-lab .studio-scene .sc-clad-glass { fill-opacity:.45; }
