.lab-page{max-width:1024px;margin:0 auto;padding:1rem 1.25rem 3rem}.lab-page h1{font-size:1.6rem;margin:.5rem 0 .75rem}.lab-page .lead{color:#444;line-height:1.7;margin-bottom:1.5rem}.lab-page code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f4f4f4;padding:.05em .3em;border-radius:3px}.lab-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}@media(max-width:600px){.lab-stats{grid-template-columns:repeat(2,1fr);gap:.5rem}}.stat{background:#f8f9fb;border:1px solid #e2e5ea;border-radius:6px;padding:.6rem .8rem}.stat-label{font-size:.78rem;color:#666;margin-bottom:.25rem}.stat-value{font-size:1.1rem;font-weight:500;font-variant-numeric:tabular-nums}.stat-sub{font-size:.78rem;color:#888;font-weight:400}.stat-dot{display:inline-block;width:.7rem;height:.7rem;margin-right:.4em;border-radius:50%;vertical-align:baseline;position:relative;top:.04em;box-shadow:0 0 0 1px #00000014}.stat-dot--1{background:#d9534f}.stat-dot--2{background:#f0ad4e}.stat-dot--3{background:#5bc0de}.lab-controls{display:flex;flex-direction:column;gap:.9rem;margin-bottom:1.25rem;padding:1rem;background:#fafbfc;border:1px solid #e2e5ea;border-radius:6px}.control-section{border-left:3px solid var(--section-color, #d0d3d8);padding-left:.65rem}.section-source{--section-color: #999}.section-voltage{--section-color: #d9534f}.section-current{--section-color: #3c8dbc}.section-label{margin:0 0 .45rem;font-size:.85rem;font-weight:500;color:#555;letter-spacing:.05em}.section-voltage .section-label{color:#b03e3a}.section-current .section-label{color:#2f6d92}.control-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.25rem}@media(max-width:700px){.control-row{grid-template-columns:1fr}}.control label{display:block;font-size:.9rem;margin-bottom:.35rem;font-variant-numeric:tabular-nums}.control input[type=range]{width:100%}.control .hint{color:#888;font-weight:400;font-size:.8rem}.hint-note{margin:.25rem 0 0;font-size:.75rem;color:#888}.lab-slider-row{display:flex;align-items:center;gap:.5rem}.lab-slider-range{flex:1;min-width:0}.lab-slider-num{width:4.5rem;padding:.2rem .4rem;font-size:.85rem;font-variant-numeric:tabular-nums;border:1px solid #d0d3d8;border-radius:4px;background:#fff;text-align:right;-moz-appearance:textfield}.lab-slider-num::-webkit-outer-spin-button,.lab-slider-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lab-slider-num:focus{outline:2px solid #3c8dbc;outline-offset:-1px;border-color:#3c8dbc}.lab-slider-unit{font-size:.85rem;color:#555;min-width:1rem;text-align:left}.lab-slider-reset{padding:.2rem .4rem;background:transparent;border:1px solid #d0d3d8;border-radius:4px;cursor:pointer;color:#666;display:inline-flex;align-items:center;justify-content:center;line-height:0}.lab-slider-reset:hover{background:#f0f4f8;color:#2f6d92;border-color:#3c8dbc}.lab-slider-reset:active{transform:scale(.95)}.lab-toggle-row{display:flex;align-items:center;gap:.5rem}.lab-toggle-select{flex:1;min-width:0;padding:.3rem .5rem;font-size:.9rem;font-family:inherit;border:1px solid #d0d3d8;border-radius:4px;background:#fff;cursor:pointer}.lab-toggle-select:focus{outline:2px solid #3c8dbc;outline-offset:-1px;border-color:#3c8dbc}.lab-charts{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem;align-items:start}.lab-tutorial{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e2e5ea;line-height:1.8;color:#333}.lab-tutorial h2{font-size:1.3rem;margin:0 0 1rem}.tutorial-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0 0 .75rem}.tutorial-head h2{margin:0}.tutorial-nav{display:inline-flex;align-items:center;gap:.45rem;user-select:none}.tutorial-nav button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background:transparent;border:1px solid #d0d3d8;border-radius:50%;color:#555;cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s}.tutorial-nav button:hover:not(:disabled){background:#f0f4f8;border-color:#3c8dbc;color:#2f6d92}.tutorial-nav button:active:not(:disabled){background:#dfe7ee}.tutorial-nav button:disabled{opacity:.3;cursor:not-allowed}.tutorial-nav svg{display:block}.tutorial-counter{font-size:.92rem;font-weight:500;color:#666;font-variant-numeric:tabular-nums;min-width:3em;text-align:center}.tutorial-steps{touch-action:pan-y}.tutorial-step{margin-bottom:0}.tutorial-step[hidden]{display:none}.tutorial-step h3{font-size:1.05rem;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.step-num{display:inline-flex;width:1.6rem;height:1.6rem;align-items:center;justify-content:center;background:#3c8dbc;color:#fff;border-radius:50%;font-size:.9rem;font-weight:600}.callout{background:#e0f7fa;border-left:3px solid #4dd0e1;padding:.6rem .9rem;border-radius:0 4px 4px 0;margin:.75rem 0}.case-list{list-style:disc;padding-left:1.5rem;margin:.5rem 0 0}.case-list li{margin-bottom:.35rem}.lab-quiz{margin:.4rem 0}.lab-quiz-question{font-weight:500;margin:0 0 .55rem}.lab-quiz-options{display:flex;flex-direction:column;gap:.35rem;margin:0}.lab-quiz-option{display:flex;align-items:center;gap:.55rem;padding:.45rem .7rem;border:1px solid #d0d3d8;border-radius:4px;background:#fff;cursor:pointer;font-size:.95rem;transition:background .12s,border-color .12s}.lab-quiz-option:hover{background:#faf5ff;border-color:#9c27b0}.lab-quiz-option:has(input:checked){background:#f3e5f5;border-color:#9c27b0}.lab-quiz-option input[type=radio]{margin:0;flex-shrink:0;accent-color:#9c27b0}.lab-quiz-input-row{display:flex;align-items:center;gap:.5rem;margin:0}.lab-quiz-input{width:7rem;padding:.35rem .55rem;font-size:.95rem;font-family:inherit;font-variant-numeric:tabular-nums;border:1px solid #d0d3d8;border-radius:4px;background:#fff;text-align:right;-moz-appearance:textfield}.lab-quiz-input::-webkit-outer-spin-button,.lab-quiz-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lab-quiz-input:focus{outline:2px solid #9c27b0;outline-offset:-1px;border-color:#9c27b0}.lab-quiz-unit{color:#555;font-size:.95rem}.lab-quiz-submit{padding:.35rem .85rem;font-size:.9rem;font-family:inherit;border:1px solid #9c27b0;border-radius:4px;background:#9c27b0;color:#fff;cursor:pointer;transition:background .12s,border-color .12s}.lab-quiz-submit:hover{background:#7b1fa2;border-color:#7b1fa2}.lab-quiz-feedback{margin:.55rem 0 0;padding:.4rem .7rem;font-weight:500;font-size:.95rem;border-radius:4px}.lab-quiz-feedback[data-state=correct]{background:#e8f5e9;color:#2e7d32;border:1px solid #66bb6a}.lab-quiz-feedback[data-state=incorrect]{background:#fff5f5;color:#c62828;border:1px solid #ef9a9a}.lab-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.lab-card{display:block;padding:1rem 1.1rem;background:#fff;border:1px solid #e2e5ea;border-radius:8px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .1s}.lab-card:hover{border-color:#3c8dbc;box-shadow:0 2px 8px #3c8dbc1f;transform:translateY(-1px)}.lab-card-title{font-size:1.05rem;margin:0 0 .5rem;color:#2f6d92}.lab-card-desc{margin:0 0 .75rem;color:#555;font-size:.92rem;line-height:1.6}.lab-card-tags{display:flex;flex-wrap:wrap;gap:.35rem}.lab-card-tag{display:inline-block;padding:.15rem .55rem;background:#f0f4f8;color:#555;font-size:.75rem;border-radius:999px}
