.card-svg-preview {background:var(--canvas);border:1px solid var(--line);border-radius:9px;overflow:hidden;}
.card-svg-preview svg {display:block;width:100%;height:auto;aspect-ratio:1.9;}
.new-lab-scene svg {display:block;width:100%;height:auto;}
.lab-scrub {display:block;font-size:.77rem;line-height:1.8;color:var(--muted);margin:12px 0 0;}
.lab-scrub input[type=range] {margin:13px 0;}
.lab-time-note {font-size:.71rem;line-height:1.8;margin:8px 0 0;}
.lab-analysis-area,.attempt-panel {margin:35px 0 0;padding:28px 0;border-top:1px solid var(--line);scroll-margin-top:20px;}
.lab-analysis-area h2,.attempt-panel h2 {font-size:2.7rem;line-height:1.15;margin:9px 0 14px;}
.lab-analysis-area>header>p:last-child,.attempt-panel>header>p:last-child {font-size:.88rem;line-height:1.9;max-width:800px;}
.analysis-observation {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:28px;margin:25px 0 0;align-items:start;}
.analysis-live {background:var(--surface);border:1px solid var(--line);border-radius:12px 8px 13px 9px;padding:16px;min-width:0;}
.analysis-mini-canvas {display:block;width:100%;aspect-ratio:1.5;background:var(--canvas);border-radius:8px;}
.analysis-mini-scene {background:var(--canvas);border-radius:8px;overflow:hidden;}
.analysis-mini-scene svg {width:100%;height:auto;display:block;}
.analysis-live>.button {margin-top:15px;font-size:1.3rem;}
.analysis-live-hint {font-size:.77rem;line-height:1.9;margin-top:14px;}
.analysis-graphs {min-width:0;}
.analysis-chart-tools {display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:17px;}
.analysis-chart-tools label {font-size:.78rem;color:var(--muted);}
.analysis-chart-tools select {font:inherit;display:block;background:var(--surface);border:1px solid var(--line);color:var(--text);padding:11px;border-radius:8px;margin-top:7px;max-width:100%;min-height:44px;}
.analysis-chart-tools .text-link {font-size:1.2rem;min-height:44px;background:none;border:0;padding:0;cursor:pointer;}
.analysis-legend {display:flex;gap:14px;flex-wrap:wrap;font-size:.77rem;line-height:1.8;}
.lab-analysis {display:flex;flex-direction:column;gap:14px;}
.analysis-legend {order:0;}
.analysis-charts {order:1;}
.analysis-table-wrap {order:2;}
.analysis-explanation {order:3;}
.scene-zoom-button {font-size:1.2rem;display:inline-flex;align-items:center;min-height:44px;cursor:pointer;background:none;border:0;padding:5px 3px;}
.analysis-explanation {font-size:.81rem;line-height:1.9;margin:15px 0 19px;}
.analysis-chart {margin:0;padding:17px 12px;background:var(--surface);border:1px solid var(--line);border-radius:11px 8px 12px 9px;}
.analysis-chart figcaption {font-size:.91rem;font-weight:550;line-height:1.8;margin-bottom:12px;}
.analysis-svg {display:block;width:100%;height:auto;overflow:visible;font-family:Inter,system-ui,sans-serif;}
.analysis-readout {font-size:.78rem;line-height:1.9;margin:12px 5px 0;color:var(--text);font-variant-numeric:tabular-nums;}
.analysis-probe {display:block;font-size:.9rem;max-width:440px;margin:24px 0;}
.analysis-probe output {font-weight:650;color:var(--cyan);margin-left:15px;}
.analysis-table-wrap {overflow:auto;margin-top:21px;}
.analysis-table {width:100%;border-collapse:collapse;font-size:.85rem;line-height:1.9;font-variant-numeric:tabular-nums;}
.analysis-table caption {text-align:left;font-size:.8rem;margin-bottom:10px;color:var(--muted);}
.analysis-table th,.analysis-table td {padding:9px 13px;text-align:left;border-bottom:1px solid var(--line);}
.analysis-selected {background:#b5c2a214;}
.attempt-panel {border:1px solid var(--line);padding:26px 28px;border-radius:13px 9px 14px 8px;background:var(--surface);margin-bottom:32px;}
.attempt-actions {display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:23px 0 17px;}
.attempt-actions .button {font-size:1.25rem;}
.attempt-actions .text-link {font-size:1.15rem;background:none;border:0;cursor:pointer;min-height:44px;}
.attempt-actions button:disabled {opacity:.4;cursor:default;}
#attempt-status {font-size:.81rem;line-height:1.9;max-width:850px;}
.attempt-panel summary {font-size:.83rem;cursor:pointer;min-height:44px;margin-top:13px;align-content:center;}
#attempt-values dl {display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:12px 20px;font-size:.81rem;line-height:1.9;margin-top:17px;}
#attempt-values dd {margin:0;}
.analysis-zoom {width:min(1100px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100vh - 28px);padding:20px;border:1px solid var(--violet);border-radius:12px;background:var(--bg);}
.analysis-zoom::backdrop {background:#121015dc;}
.analysis-zoom header {display:flex;gap:20px;align-items:center;justify-content:space-between;}
.analysis-zoom h2 {font-size:2rem;line-height:1.2;}
.analysis-zoom .button {font-size:1.2rem;}
.analysis-zoom>p {font-size:.8rem;margin:15px 0;line-height:1.8;}
#analysis-zoom-drawing {overflow:auto;background:var(--canvas);max-height:calc(100vh - 180px);overscroll-behavior:contain;}
#analysis-zoom-drawing svg {display:block;width:950px;max-width:none;height:auto;}
@media(min-width:761px){.lab-layout .lab-canvas {height:clamp(240px,calc(100dvh - 300px),500px);}}
@media(min-width:761px){.lab-layout .new-lab-scene svg {height:clamp(170px,calc(100dvh - 340px),370px);}}
@media(max-width:900px){.analysis-observation {grid-template-columns:1fr 1.2fr;gap:20px;}}
@media(max-width:700px){.analysis-observation {grid-template-columns:1fr;gap:24px;}.analysis-live {padding:14px;}.analysis-mini-canvas {aspect-ratio:1.8;}.lab-analysis-area h2,.attempt-panel h2 {font-size:2.3rem;}.attempt-panel {padding:22px 19px;}.attempt-actions {align-items:start;flex-direction:column;gap:12px;}.attempt-actions .button {font-size:1.2rem;}.analysis-chart {padding:15px 9px;}.analysis-chart-tools {align-items:start;}.analysis-chart-tools label {width:100%;}.analysis-chart-tools select {width:100%;}.analysis-explanation {font-size:.8rem;}.lab-time-note {font-size:.66rem;line-height:1.7;}.lab-scrub {font-size:.7rem;}#attempt-values dl {grid-template-columns:1fr;gap:5px;}#attempt-values dd {margin-bottom:13px;}.lab-layout .new-lab-scene svg {aspect-ratio:1.9;}}
