.lab-layout,.cnc-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:25px;align-items:start}.lab-stage,.lab-controls,.lab-explanation{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:25px;min-width:0}.lab-stage{overflow:hidden}.lab-svg{width:100%;height:auto;display:block;background:#fff;border-radius:9px;direction:ltr;max-height:520px}.lab-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.lab-control{display:block;margin-bottom:22px}.lab-control>span{display:flex;justify-content:space-between;gap:12px;font-size:.92rem;font-weight:bold;margin-bottom:10px}.lab-control output{font-weight:normal;color:var(--muted);font-size:.9rem}.lab-control input[type=range]{width:100%;accent-color:#d48927;direction:ltr;height:28px;cursor:pointer}.lab-control select,.lab-control input[type=number],.lab-control textarea{width:100%;padding:10px 12px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;font-size:.92rem}.lab-control textarea{font:1rem/1.9 'Courier New',monospace;resize:vertical;min-height:200px}.lab-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;margin:15px 0}.lab-stat{background:var(--soft);padding:14px;border-radius:8px;min-width:0}.lab-stat span{display:block;font-size:.8rem;color:var(--muted);margin-bottom:5px}.lab-stat strong{font:600 1.15rem Arial;display:block;overflow-wrap:anywhere;color:var(--ink)}.lab-hint{font-size:.9rem;padding:14px;background:var(--soft);border-radius:8px;color:var(--muted);margin-top:18px}.lab-explanation{margin-top:25px}.lab-explanation h2{font-size:1.3rem}.lab-explanation p{font-size:.95rem}.lab-explanation a{color:var(--ink);text-decoration:underline}.lab-readout{background:var(--soft);padding:17px;border-radius:8px;margin-top:17px;font-size:.95rem}.lab-readout.error{border-right:4px solid #c65b46}.cnc-blocks{max-height:260px;overflow:auto;direction:ltr;border-radius:8px;font-size:.85rem}.cnc-block{display:flex;gap:12px;padding:7px 12px;border-bottom:1px solid var(--line);background:var(--bg);line-height:1.6}.cnc-block span{color:var(--muted);min-width:23px}.cnc-block code{overflow-wrap:anywhere}.cnc-block.active{background:#f2d6ac;color:#17374b}.atlas-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:25px;align-items:start}.atlas-picture{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.atlas-image{position:relative;background:#fff;border-radius:8px;overflow:hidden;direction:ltr}.atlas-image>img{width:100%;display:block}.hotspot{position:absolute;transform:translate(-50%,-50%);height:36px;width:36px;padding:0;border-radius:50%;background:#e49b37;color:#132c3c;border:2px solid white;box-shadow:0 2px 8px #0004;font-weight:bold;line-height:1;font-size:1rem}.hotspot.selected{background:#183f55;color:white;outline:3px solid #e49b37}.atlas-panel h2{font-size:1.2rem;margin-bottom:15px}.atlas-buttons{display:grid;gap:9px}.part-name{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);text-align:right;font-size:.92rem}.part-name b{display:inline-block;margin-left:9px;color:#b87625}.part-name.selected{border-color:#ca8731;background:var(--soft)}.part-explanation{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.part-explanation p{font-size:.95rem}.atlas-thumb{background:#fff;height:200px;padding:12px}.atlas-thumb img{width:100%;height:100%;object-fit:contain}.lab-subhead{margin-bottom:22px}.lab-subhead p{color:var(--muted)}.diagnosis-list{max-width:920px}.diagnosis-list .quiz-options{margin-top:18px}.lab-related{margin:20px 0;display:flex;flex-wrap:wrap;gap:10px}.lab-related .button{font-size:.85rem}.home-lab-strip{display:flex;gap:22px;justify-content:space-between;align-items:center;background:var(--navy);color:#fff;padding:22px 27px;border-radius:12px;margin-top:27px}.home-lab-strip p{color:#c8dce7;font-size:.9rem}.home-lab-strip h2{font-size:1.3rem}.home-lab-strip .button{flex-shrink:0}.equipment-card .atlas-entry{margin-top:13px;font-size:.83rem}.topbar nav{gap:19px}.topbar{gap:25px}.button:disabled{opacity:.45;cursor:default}.lab-readout[hidden]{display:none}@media(max-width:980px){.lab-layout,.cnc-layout,.atlas-layout{grid-template-columns:1fr}.lab-controls{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.lab-controls #gear-results,.lab-controls #tensile-results,.lab-controls #machining-results,.lab-controls .lab-hint,.lab-controls #cnc-blocks{grid-column:1/-1}.lab-controls textarea{min-height:260px}.cnc-layout .lab-controls{display:block}}@media(max-width:760px){.lab-stage,.lab-controls,.lab-explanation{padding:18px}.lab-controls{display:block}.lab-actions .button{font-size:.82rem;padding:8px 12px}.lab-control>span{font-size:.9rem}.home-lab-strip{display:block;padding:22px}.home-lab-strip .button{margin-top:15px}.hotspot{height:29px;width:29px;font-size:.85rem}.atlas-picture{padding:12px}.atlas-panel{padding:20px}.topbar nav{gap:7px;font-size:.78rem;flex-wrap:wrap}.atlas-thumb{height:210px}.lab-svg{max-height:none}.lab-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-stat strong{font-size:1.02rem}}@media print{.lab-controls,.lab-actions,.atlas-buttons,.hotspot{display:none}.lab-layout,.atlas-layout,.cnc-layout{display:block}.lab-stage,.lab-explanation{break-inside:avoid;background:white}}
#measure-view,#tensile-view,#cnc-view{overflow-x:auto;max-width:100%}#measure-view .lab-svg{min-width:600px}#tensile-view .lab-svg{min-width:530px}#cnc-view .lab-svg{min-width:470px}
