:root{--paper:#f1f0ea;--carbon:#111210;--panel:#191a18;--panel2:#22231f;--line:#3b3d37;--red:#e32636;--muted:#8d8f87;--blue:#7d9cb5}*{box-sizing:border-box}body{margin:0;background:var(--carbon);color:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}.skip-link{position:fixed;top:-60px;left:16px;z-index:30;padding:12px;background:white;color:#111}.skip-link:focus{top:12px}header{height:70px;padding:0 24px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-bottom:1px solid var(--line)}.wordmark{color:white;text-decoration:none;font-weight:800;font-size:13px;letter-spacing:.22em}.product{justify-self:center;font-size:12px;letter-spacing:.16em}.product i{margin-left:12px;color:var(--muted);font:700 8px monospace}.actions{justify-self:end;display:flex;gap:7px}.actions button{padding:9px 12px;border:1px solid var(--line);background:transparent;color:white;font-size:8px;text-transform:uppercase;letter-spacing:.09em;cursor:pointer}.actions button:last-child{border-color:var(--red);background:var(--red)}.model-notice{min-height:42px;padding:10px 22px;display:flex;align-items:center;gap:14px;background:#24221c;border-bottom:1px solid #57472c;font-size:9px}.model-notice strong{color:#e8b65e;text-transform:uppercase;letter-spacing:.08em}.model-notice span{color:#aaa79d}main{min-height:calc(100vh - 164px);display:grid;grid-template-columns:330px minmax(400px,1fr) 310px}.controls,.results{padding:24px;background:var(--panel)}.controls{border-right:1px solid var(--line)}.results{border-left:1px solid var(--line)}.panel-title{padding-bottom:18px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}.panel-title>span{color:var(--red);font:700 9px monospace}.panel-title h1,.panel-title h2{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.panel-title>i{margin-left:auto;color:var(--muted);font:700 8px monospace;text-transform:uppercase}label,.field>label{display:block;margin-top:22px;color:#b9bbb3;font-size:9px;text-transform:uppercase;letter-spacing:.08em}select,input{width:100%;margin-top:8px;padding:10px;border:1px solid #4c4e47;border-radius:0;background:var(--panel2);color:white;font-size:11px}.help{width:18px;height:18px;margin:0 0 0 3px;padding:0;border:1px solid #595b54;border-radius:50%;background:none;color:#aaa;font:700 9px monospace;cursor:help}.input-pair{margin-top:9px;display:grid;grid-template-columns:1fr 105px;gap:10px;align-items:center}.input-pair input[type=range]{height:2px;margin:0;padding:0;accent-color:var(--red)}.input-pair>span{height:38px;padding:0 8px;display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);background:var(--panel2)}.input-pair>span input{margin:0;padding:0;border:0;background:transparent;font:13px monospace}.input-pair b{color:var(--muted);font:700 8px monospace}.section-label{margin-top:28px;padding-top:18px;border-top:1px solid #686a63;color:var(--paper);font:700 8px monospace;letter-spacing:.1em}.coordinate-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coordinate-grid label{padding:10px;background:var(--panel2)}.coordinate-grid span{float:right;color:var(--muted);font-family:monospace}.coordinate-grid input{margin-top:10px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;font:15px monospace}.location{width:100%;margin-top:9px;padding:10px;border:1px solid var(--line);background:transparent;color:#bbbdb5;font-size:8px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.note{margin-top:24px;color:var(--muted);font-size:9px;line-height:1.55}.validation{margin-top:14px;padding:10px;border-left:3px solid var(--red);background:rgba(227,38,54,.1);color:#ffabb2;font-size:9px}.visual{position:relative;min-height:620px;overflow:hidden;background-color:#141513;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:42px 42px}.visual canvas{position:absolute;inset:0;width:100%;height:100%}.figure-label,.site-label{position:absolute;z-index:2;color:var(--muted);font:700 8px/1.4 monospace;letter-spacing:.1em}.figure-label{left:18px;top:18px}.site-label{right:18px;bottom:18px}.timeline{position:absolute;z-index:2;left:50%;bottom:54px;width:min(84%,700px);transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;padding:12px;background:rgba(17,18,16,.88)}.timeline span,.timeline strong{font:700 8px monospace}.timeline strong{color:var(--red)}.timeline i{height:1px;background:#555750}.timeline i b{display:block;width:50%;height:1px;background:var(--red)}.results article{padding:18px 0;border-bottom:1px solid var(--line)}.results article span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.09em}.results article strong{display:inline-block;margin-top:9px;font:26px monospace}.results article em{margin-left:6px;color:var(--muted);font:9px monospace}.results article.primary strong{font-size:42px}.handoff{margin-top:22px;padding:16px;background:var(--panel2)}.handoff>span{color:var(--red);font:700 8px monospace}.handoff strong{display:block;margin-top:10px;font-size:11px}.handoff p{color:var(--muted);font-size:9px;line-height:1.5}.handoff a{display:block;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:white;text-decoration:none;font:700 8px monospace;text-transform:uppercase}.method{border-top:1px solid var(--line)}.method>button{width:100%;height:52px;padding:0 24px;display:flex;justify-content:space-between;align-items:center;border:0;background:var(--carbon);color:white;font-size:9px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.method>button span{color:var(--red)}#method-body{padding:22px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}#method-body[hidden]{display:none}#method-body>div{padding:18px;background:var(--panel)}#method-body h3{margin:0 0 12px;font-size:10px;text-transform:uppercase}#method-body code{color:white}#method-body p{color:var(--muted);font:9px/1.5 monospace}.assumption{grid-column:1/-1;margin:0;padding:14px;background:var(--carbon);color:var(--muted);font-size:9px;line-height:1.5}.tooltip{position:fixed;z-index:30;width:250px;padding:11px;background:var(--paper);color:var(--carbon);font-size:10px;line-height:1.5;opacity:0;pointer-events:none}.tooltip.visible{opacity:1}.toast{position:fixed;right:18px;bottom:18px;padding:12px 15px;background:var(--paper);color:var(--carbon);font-size:9px;opacity:0;transform:translateY(8px);transition:.2s}.toast.visible{opacity:1;transform:none}
@media(max-width:1050px){main{grid-template-columns:300px 1fr}.results{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:0 20px}.results .panel-title,.results .handoff{grid-column:1/-1}.results{border-left:0;border-top:1px solid var(--line)}}@media(max-width:680px){header{grid-template-columns:1fr auto}.product{display:none}.model-notice{align-items:flex-start;flex-direction:column}.model-notice span{line-height:1.4}main{display:flex;flex-direction:column}.controls{padding:20px 17px}.visual{min-height:480px}.results{display:block}.actions button:first-child{display:none}#method-body{grid-template-columns:1fr}.assumption{grid-column:auto}.timeline{grid-template-columns:1fr;text-align:center}.timeline i{display:none}.site-label{left:14px;right:auto}}
@media(prefers-reduced-motion:reduce){.toast{transition:none}}
