/* 03—07 与新版 01/02 共用浅色实验台语言，布局仅作用于本组。 */
.app-shell:has(.is-foundation-lab){width:min(1600px,100%)}
.is-foundation-lab .experiment-layout{grid-template-columns:minmax(0,1fr) 236px;gap:16px;align-items:start}
.is-foundation-lab .information-column,.is-foundation-lab .data-grid{display:block}
.is-foundation-lab .explanation-panel,.is-foundation-lab .feedback-panel{display:none}
.is-foundation-lab .operation-panel{padding:16px}
.is-foundation-lab .experiment-canvas{display:block;min-height:0;overflow:hidden;background:#f5f9fe}
.is-foundation-lab .experiment-canvas>.fl-workspace{display:block;width:100%;min-width:0;justify-self:stretch;align-self:stretch}
.fl-workspace{background:linear-gradient(150deg,#fbfdff,#edf5fd)}
.nav-stage-list .nav-button.active{background:linear-gradient(135deg,#2563b9,#1f4f8e);color:#fff}
.fl-topline{display:flex;justify-content:space-between;gap:12px;padding:14px 18px 0;font-size:12px;color:#66819d;font-weight:700}
.fl-topline span:first-child{color:#246ab2}
.fl-board{display:block;width:100%;height:auto;max-height:none;min-height:420px;user-select:none;touch-action:pan-y}
.fl-surface{fill:#fff;stroke:#dfebf6;stroke-width:1.5}
.fl-label{fill:#3b5877;font:600 15px "Microsoft YaHei","PingFang SC",sans-serif;text-anchor:middle;pointer-events:none}
.fl-label.tiny{font-size:12px;fill:#7b91a8}.fl-label.number{font-size:21px;font-weight:800;fill:#236ab1}
.fl-label.error,.fl-label.plus{fill:#d6554c}.fl-label.terminal-label{font-size:12px;fill:white;font-weight:800}
.fl-label.scale{font-size:14px;fill:#2c4c6d}.fl-label.scale.small{font-size:12px;fill:#8093aa}.fl-label.meter-unit{font-size:25px;font-weight:800}
.fl-wire{fill:none;stroke:#60788f;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.fl-wire.live{stroke:#338adc}.fl-wire.danger{stroke:#df6258}.fl-wire.lead{stroke:#6c95bf;stroke-width:4}
.fl-guide{fill:none;stroke:#d0deeb;stroke-width:5;stroke-dasharray:7 11;stroke-linejoin:round}
.fl-key{fill:white;stroke:#adc8e1;stroke-width:1.5}.fl-key:hover{fill:#edf6ff}
.fl-switch,.fl-terminal,[data-fl-action],.fl-port{cursor:pointer;outline:none}
.fl-switch-base{fill:#f0f6fc;stroke:#d7e6f5;stroke-width:1.4}
.fl-switch:hover .fl-switch-base{fill:#e5f1ff;stroke:#63a1db}
.fl-lever{fill:none;stroke:#e47d59;stroke-width:7;stroke-linecap:round}.fl-lever.closed{stroke:#13a17a}
.fl-bulb[data-fl-action]:hover>circle{stroke:#ed9b34;stroke-width:4}
.fl-port,.fl-lens,[data-fl-slider]{touch-action:none}
.fl-port:hover circle:last-child,.fl-port:focus-visible circle:last-child{stroke:#eb9b31;stroke-width:4}
.fl-preview{fill:none;stroke:#e99c40;stroke-width:4;stroke-dasharray:7 7;pointer-events:none}
.fl-lens{cursor:grab}.fl-lens:active{cursor:grabbing}.fl-lens-ring{pointer-events:stroke}.fl-lens-handle{pointer-events:stroke}
.measurement-lens{cursor:grab;touch-action:none;pointer-events:none}
.measurement-lens:active{cursor:grabbing}
.measurement-lens-ring{pointer-events:stroke}
.measurement-lens-handle{pointer-events:visiblePainted}
.measurement-lens-card{pointer-events:none;filter:drop-shadow(0 5px 8px rgba(37,74,108,.13))}
.probe-title{font-size:12px;fill:#477295}.probe-value{font-size:16px;font-weight:800;fill:#236bb3}
.fl-slider-handle{fill:#dceeff;stroke:#468dc6;stroke-width:2;cursor:ew-resize}
.fl-controls{display:grid;gap:12px}.fl-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fl-actions>span{font-size:13px;color:#69819c;margin:0 4px}
.fl-actions button{min-height:44px;padding:8px 12px;font-size:13px}
.fl-range{display:flex;align-items:center;gap:12px;min-height:44px;color:#4b6581;font-size:14px;font-weight:700}
.fl-range input{min-width:70px;flex:1;accent-color:#2b7ed1}.fl-range output{min-width:65px;color:#2776c2;text-align:right}
.fl-hint{margin:0;padding:11px 14px;background:#eef5fd;border:1px solid #deebf8;border-radius:10px;color:#5a7899;font-size:13px;line-height:1.6}
.fl-readings{display:grid;gap:11px}.fl-reading{padding:12px;background:#f7fafd;border:1px solid #e3edf7;border-radius:11px;min-width:0}
.fl-reading>span{display:block;font-size:12px;color:#748aa2;font-weight:700}.fl-reading strong{display:block;margin-top:4px;font-size:22px;line-height:1.35;color:#24649f;font-variant-numeric:tabular-nums;overflow-wrap:normal;word-break:normal}
.fl-status{padding:12px;background:#f0f4f8;border-radius:10px;font-size:13px;color:#698097;font-weight:700}.fl-status.on{background:#e7f7ef;color:#198861}
.fl-warning{background:#fff1ec;border:1px solid #f1c6b9;color:#b54f3b;padding:12px;border-radius:10px;font-size:13px;line-height:1.7;margin:0}
.fl-conclusion{background:#edf5ff;border-radius:10px;padding:12px;color:#426b93;font-size:14px;line-height:1.7;margin:0}
.fl-model{font-size:12px;color:#8295a9;line-height:1.7;margin:0}
@media(max-width:1140px){.is-foundation-lab .experiment-layout{grid-template-columns:1fr}.fl-readings{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-status,.fl-warning,.fl-conclusion,.fl-model{grid-column:1/-1}}
/* 平板上把数据移到实验台下方，让电路获得完整内容宽度。 */
@media(max-width:1280px){.is-foundation-lab .experiment-layout{grid-template-columns:1fr}.is-foundation-lab .fl-readings{grid-template-columns:repeat(2,minmax(0,1fr))}.is-foundation-lab .fl-status,.is-foundation-lab .fl-warning,.is-foundation-lab .fl-conclusion,.is-foundation-lab .fl-model{grid-column:1/-1}}
@media(max-width:760px){.is-foundation-lab .operation-panel{padding:10px}.fl-board{min-height:260px}.fl-topline{padding:12px 10px 0;flex-wrap:wrap}.fl-actions button{flex:1 1 42%}.fl-reading strong{font-size:20px}.fl-range{font-size:12px}}
@media(prefers-reduced-motion:reduce){.fl-particles{display:none}}
