:root{font-family:Arial,Helvetica,sans-serif;color:#d9e7ee;background:#071723;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,input,a,select{touch-action:manipulation}a{color:inherit;text-underline-offset:4px}button,input,select{min-height:48px}button{color:#d9e7ee;background:transparent;border:1px solid #446175;padding:12px 16px;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:hover:not(:disabled){background:#153449}input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #65ebd7;outline-offset:3px}.skip{position:absolute;top:-100px}.skip:focus{top:5px;background:#173449;padding:12px;z-index:12}[hidden]{display:none!important}header{display:flex;align-items:center;gap:35px;padding:30px 4vw;border-bottom:1px solid #264052}.brand{font-size:14px;line-height:1.2;font-weight:bold;letter-spacing:2px;text-decoration:none}.brand span{font-size:10px;letter-spacing:1.5px}.edition{font:10px ui-monospace,monospace;color:#86a5b8;letter-spacing:1px}header>a:last-child{font-size:12px;margin-left:auto;color:#9bc6d5}main{max-width:1380px;margin:auto;padding:0 4vw}.hero{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:30px;padding:55px 0 45px}.eyebrow{font:10px ui-monospace,monospace;letter-spacing:2px;color:#70decc}.intro h1{font-size:clamp(38px,4.6vw,64px);line-height:1.06;letter-spacing:-2.5px;font-weight:500;margin:22px 0}.dek{font-size:15px;line-height:1.8;color:#9ab3c3;margin-bottom:28px}.intro>label{display:block;font-size:12px;margin-bottom:10px;color:#a8bdca}select{background:#112b3d;color:#e3eff5;border:1px solid #436477;width:100%;max-width:400px;padding:12px}.actions{display:flex;gap:10px;margin-top:14px}#run{background:#66dfcf;color:#071723;border-color:#66dfcf;font-weight:700;min-width:250px;display:flex;justify-content:space-between;gap:30px}.request-note{max-width:450px;font-size:11px;line-height:1.8;color:#88a5b7}.spatial{min-width:0}.scene-shell{height:390px;position:relative;background:radial-gradient(ellipse at 50% 50%,#183f52 0%,#071723 72%)}#scene,#scene-fallback{position:absolute;inset:0}#scene canvas{display:block;width:100%;height:100%}#scene-fallback svg{width:100%;height:100%}.scene-label{position:absolute;font:9px ui-monospace,monospace;letter-spacing:1px;color:#a5c5d3;pointer-events:none}.device-label{left:9%;top:67%}.relay-label{left:44%;top:74%}.edge-label{right:14%;top:19%}.service-label{right:2%;top:68%}.scene-controls{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center;padding-top:16px;border-top:1px solid #294556;font-size:11px}.scene-controls>label:first-child{display:flex;align-items:center;gap:8px}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:#64dacc}input[type=range]{width:100%;min-height:36px;accent-color:#64dacc}.scene-controls button{font-size:11px;min-height:40px;padding:8px 12px}#scene-state,.diagram-note{font-size:10px;color:#82a5ba;line-height:1.6;margin:10px 0}.diagram-note{color:#66879c}.evidence{border-top:1px solid #365569;padding-top:25px}.evidence-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.evidence-heading h2{font-size:21px;font-weight:500;margin:0}.evidence-heading p{font:10px ui-monospace,monospace;color:#83a6bc}.verdict{margin:25px 0;background:#112b3a;border-left:3px solid #66dfcf;padding:22px 26px}.verdict h3{font-size:29px;line-height:1.15;font-weight:500;margin:12px 0}.verdict p{font-size:13px;color:#9eb9ca;line-height:1.7;max-width:900px}#browser-hint{font-size:10px;letter-spacing:.4px}.table-head,.result-row{display:grid;grid-template-columns:1fr .85fr 1.8fr;gap:25px;align-items:start;padding:18px 0;border-bottom:1px solid #254050}.table-head{font:10px ui-monospace,monospace;letter-spacing:1px;color:#799bb1;padding:12px 0}.result-row .name{font-size:13px}.state{font:12px ui-monospace,monospace;color:#90adbf;line-height:1.7}.detail{font-size:12px;line-height:1.7;color:#8ba9bb}.result-row[data-state=pass] .state{color:#69e5d1}.result-row[data-state=incident] .state,.result-row[data-state=http_error] .state{color:#ffc086}.source{display:flex;align-items:start;gap:30px;justify-content:space-between;margin:24px 0}.source a{font-size:13px;white-space:nowrap}.source p{font-size:11px;color:#84a3b8;line-height:1.7;max-width:630px;margin:0}.next{display:grid;grid-template-columns:1fr 1.8fr;gap:60px;padding:55px 0;border-top:1px solid #294656;margin-top:35px}.next h2{font-size:35px;line-height:1.1;font-weight:500;letter-spacing:-1px}.next ol{margin:0;padding-left:24px}.next li{padding-left:15px;margin-bottom:26px;color:#66dfcf}.next h3{font-size:16px;color:#dceaf2;font-weight:500}.next p,.method>p{font-size:13px;line-height:1.8;color:#89a8bc}.method{max-width:900px;margin-bottom:45px}.method h2{font-size:20px;font-weight:500}.method>div{display:flex;gap:25px;flex-wrap:wrap;font-size:12px}.method .checked{font-size:10px;color:#65889e}footer{border-top:1px solid #284759;display:flex;gap:25px;font:10px ui-monospace,monospace;color:#86a6b9;padding:23px 4vw}footer span{margin-right:auto}@media(max-width:1000px){.hero{gap:20px;grid-template-columns:1fr 1fr}.scene-shell{height:330px}.scene-controls{grid-template-columns:auto 1fr auto}.scene-controls>label:nth-child(2){display:none}.intro h1{font-size:45px}.table-head,.result-row{gap:18px;grid-template-columns:1fr .9fr 1.4fr}}@media(max-width:700px){header{gap:25px;padding:25px 4vw}.edition{font-size:8px;max-width:140px;line-height:1.6}header>a:last-child{display:none}.hero{display:block;padding:35px 0}.intro h1{font-size:44px;letter-spacing:-1.8px}.dek{font-size:14px}.spatial{margin-top:28px}.scene-shell{height:300px}.evidence-heading{display:block}.evidence-heading h2{font-size:20px}.verdict{padding:18px}.verdict h3{font-size:25px}.table-head{display:none}.result-row{grid-template-columns:1fr auto;gap:10px}.result-row .detail{grid-column:1/-1}.result-row .state{max-width:160px;text-align:right;overflow-wrap:anywhere}.source{display:block}.source p{margin-top:16px}.next{display:block;padding:35px 0}.next ol{margin-top:25px}.next h2{font-size:30px}.method>div{display:block}.method a{display:block;margin:15px 0}footer{flex-wrap:wrap;gap:18px}footer span{flex-basis:100%}}@media(max-width:360px){.intro h1{font-size:38px}#run{min-width:0;flex:1;font-size:13px;padding:12px;gap:12px}.scene-shell{height:265px}.scene-controls{gap:10px;font-size:10px}.scene-controls button{padding:8px}.scene-label{font-size:8px;letter-spacing:.3px}.result-row .state{max-width:130px}.brand{font-size:12px}.edition{max-width:120px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
