:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#182c40;background:#f3f6fa;line-height:1.55;--blue:#1557d2;--ink:#10283c;--mint:#1ae0ac}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer;border:1px solid #ced8e3;background:white;color:#18334c;border-radius:8px;padding:10px 14px;font-weight:600}button:hover{background:#edf4ff;border-color:#1557d2}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #fc9b29;outline-offset:3px}button:disabled{opacity:.45;cursor:default}header{padding:20px 4%;background:#10283c;color:white;display:flex;align-items:center;gap:28px}header button{margin-left:auto;background:#203d53;color:white;border-color:#446078}.brand{font-size:24px;font-weight:900;letter-spacing:2px;text-decoration:none;color:white}.brand span{color:var(--mint)}.tag,.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px}.tag{color:#a4c2d7}main{max-width:1540px;margin:auto;padding:36px 4%}.intro{display:flex;justify-content:space-between;gap:45px;align-items:center;margin-bottom:34px}.intro>div:first-child{max-width:790px}h1{font-size:clamp(30px,3.4vw,52px);letter-spacing:-2px;line-height:1.1;margin:8px 0 18px}.intro p{max-width:720px}.eyebrow{color:#1557d2}.scope{font-size:12px;color:#52677a;border-left:3px solid #bac9d7;padding-left:12px}.score{min-width:190px;background:white;border:1px solid #dfe7ef;border-radius:16px;padding:22px;display:grid;gap:6px}.score strong{font-size:42px;line-height:1}.score span{font-size:13px}progress{width:100%;height:8px;accent-color:var(--blue)}small{font-size:11px;color:#52677a}.layout{display:grid;grid-template-columns:190px minmax(0,1fr) 270px;gap:18px;align-items:start}aside,.guide,.work,.about{background:white;border:1px solid #dfe7ef;border-radius:14px;overflow:hidden}aside{padding:18px 12px}.step{display:block;text-align:left;width:100%;border:0;margin:4px 0;font-size:13px;background:transparent}.step.active{background:#eaf1ff;color:#124cbb;box-shadow:inset 3px 0 var(--blue)}.aside-actions{border-top:1px solid #e4e9f0;margin-top:24px;padding-top:16px;display:grid;gap:8px}.aside-actions button{font-size:12px}#verify,#next,#wiring button{background:var(--blue);color:white;border-color:var(--blue)}.quiet{background:transparent;color:#617286}.toolbar{display:flex;justify-content:space-between;gap:12px;padding:14px;flex-wrap:wrap;border-bottom:1px solid #dce6ef}.tabs{display:flex;gap:5px}.tabs button[aria-pressed=true]{background:#10283c;color:white;border-color:#10283c}label{font-size:12px;display:block;font-weight:600}select,input{border:1px solid #c7d5e2;border-radius:6px;padding:9px;background:#fff;color:#20394d;max-width:100%}.toolbar select{max-width:190px}.scene{background:radial-gradient(#263e53 1px,transparent 1px),#122b3f;background-size:20px 20px;color:#dbe8f3;padding:24px;min-height:360px}.scene h3{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#9fb7c9;margin-top:0}.physical-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rack{border:7px solid #354b5e;padding:9px;background:#0a1d2c;box-shadow:0 8px 20px #07152255}.device{display:block;width:100%;text-align:left;background:#244459;border-color:#3c617b;color:#edf7ff;font-size:12px;margin:7px 0;padding:11px}.device:hover{background:#335b75;color:white}.device small{display:block;color:#b4cadd;font-size:10px}.led{display:inline-block;width:7px;height:7px;background:#14e6a8;border-radius:50%;margin-right:7px}.led.off{background:#7e8993}.shelf{border-bottom:5px solid #54718a;padding-bottom:8px}.install{background:#1ae0ac;color:#10283c;font-size:12px;width:100%;margin-top:7px}.power{font-size:11px;width:100%;padding:6px}.room{border:1px dashed #5c829e;border-radius:7px;padding:10px;margin-top:15px;color:#bdcfde;font-size:11px}.logical-net{display:grid;gap:8px;max-width:390px;margin:auto;text-align:center}.logical-net .device{text-align:center}.wire{font-size:11px;color:#1ae0ac}.fixed{font-size:11px;color:#b4cadd;margin-bottom:0}.status-note{font-size:13px;margin:6px 0}#feedback{background:#eaf3ff;color:#16457d;padding:12px 18px;font-size:12px;min-height:46px}.bench,.terminal-panel{padding:20px;border-top:1px solid #e1e8ef}h2{font-size:19px;line-height:1.3;margin:0 0 12px}h3{font-size:15px}p{margin:10px 0}.bench p,.terminal-panel p{font-size:12px;color:#52677a}#wiring{display:grid;grid-template-columns:1fr 1fr;gap:10px}#wiring select{width:100%;font-size:12px}#wiring button{align-self:end}#links{padding:0;list-style:none;font-size:11px}#links li{padding:8px;background:#f4f7fa;margin:6px 0;border-radius:6px;overflow-wrap:anywhere}#links button{font-size:11px;padding:2px 7px;margin-left:5px}.section-top{display:flex;justify-content:space-between;gap:8px}#terminalState{font-size:10px;color:#52677a}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#081b29;color:#9ef4ce;padding:16px;border-radius:8px;min-height:125px;max-height:250px;overflow:auto;font-size:12px}#cli{display:flex;gap:6px;align-items:center;flex-wrap:wrap}#cli label{font-family:monospace;font-size:11px}#cli input{flex:1;min-width:100px;width:120px}#cli button{font-size:12px}.guide{padding:22px}.guide p,.guide li{font-size:13px;color:#4b6275}.guide-nav{display:flex;gap:7px;margin-top:18px}.guide-nav button{font-size:11px;padding:8px}.guide details{margin-top:20px;border-top:1px solid #e1e8ef;padding-top:15px}summary{cursor:pointer;font-weight:600;font-size:13px}#quiz label{margin-top:16px}#quiz select{width:100%;font-size:12px}.categories{display:flex;flex-wrap:wrap;gap:6px}.categories button{font-size:11px;padding:7px}.categories button.seen{border-color:#12a77c;background:#e5faf3}.about{padding:28px;margin-top:24px}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.about p,.about li{font-size:14px;color:#506779}.about details{background:#f2f6fb;padding:18px;border-radius:8px;margin:20px 0}.about li{margin:10px 0}code{background:#e4ebf3;color:#163b60;padding:2px 5px;border-radius:4px}footer{padding:30px 0;color:#52677a}footer strong{color:#172f43}dialog{border:1px solid #c7d6e3;border-radius:16px;padding:30px;max-width:600px;width:90%;color:#213a50}dialog::backdrop{background:#10283cb0}.close{float:right;padding:3px 10px;font-size:24px}.check{padding:10px;border-bottom:1px solid #e1e8ef;font-size:14px}.check.good{color:#087353}.check.bad{color:#85520c}.port-list{display:flex;gap:7px;flex-wrap:wrap}.port-list span{border:1px solid #bbcddd;padding:7px;border-radius:5px;font-family:monospace;font-size:12px}@media(max-width:1150px){.layout{grid-template-columns:170px minmax(0,1fr)}.guide{grid-column:1/-1}.guide-nav{justify-content:flex-end}}@media(max-width:640px){header{padding:15px;gap:10px}.tag{display:none}header button{font-size:11px}main{padding:24px 14px}.intro{display:block}.score{margin-top:20px;min-width:0}.layout{display:flex;flex-direction:column}.layout>*{width:100%}.guide{order:-1}aside #steps{display:flex;flex-wrap:wrap}.step{width:auto}.aside-actions{display:flex;flex-wrap:wrap;margin-top:10px}.physical-grid{grid-template-columns:1fr}.scene{padding:16px}.about-grid{grid-template-columns:1fr;gap:10px}.about{padding:20px}.toolbar{padding:10px}h1{letter-spacing:-1px}#wiring{grid-template-columns:1fr}.guide{padding:18px}}
