:root{--ink:#15373e;--mint:#bcf1dc;--green:#00796f;--line:#d7e2df}*{box-sizing:border-box}body{margin:0;background:#f1f5f3;color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;background:white;border:1px solid #bdcfca;border-radius:5px;padding:10px 14px;color:var(--ink)}button:hover{background:#e4f4eb}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible,summary:focus-visible{outline:3px solid #0aa393;outline-offset:3px}.worknav{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 3vw;background:#092c35;color:white}.logo{font-size:24px;font-weight:700}.logo span{font-size:12px;font-weight:400;letter-spacing:.1em;margin-left:8px}.worknav nav{display:flex;gap:24px;font-size:14px}.worknav nav a{padding:8px 0}.worknav [aria-current]{color:var(--mint);border-bottom:1px solid var(--mint)}main{max-width:1640px;margin:auto;padding:32px 3vw}.workheading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.eyebrow{font-size:12px;letter-spacing:.12em;color:var(--green);font-weight:700;margin:0 0 12px}h1{font-size:clamp(28px,3vw,44px);font-weight:500;letter-spacing:-.04em;margin:0 0 10px}.workheading p:not(.eyebrow){font-size:16px;color:#627b80;line-height:1.5;margin:0}.workspace{display:grid;grid-template-columns:325px minmax(0,1fr);gap:24px;align-items:start}.settings{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden;max-height:calc(100vh - 30px);overflow-y:auto;position:sticky;top:15px}.settings-title{padding:19px;background:#e4eee8;font-size:12px;letter-spacing:.1em;font-weight:700;display:flex;justify-content:space-between}.settings details{border-bottom:1px solid var(--line)}.settings summary{padding:17px 18px;cursor:pointer;font-size:15px;font-weight:700}.fields{padding:0 18px 18px;display:grid;gap:14px}.field label{display:flex;justify-content:space-between;gap:9px;font-size:14px;line-height:1.35;margin-bottom:6px}.field label span{font-size:12px;color:#70898c;white-space:nowrap}.field input{width:100%;padding:9px 12px;background:#f7faf8;border:1px solid #cbdad5;border-radius:4px;font-size:16px;font-variant-numeric:tabular-nums}.field input:invalid{border-color:#b74b36}.input-help{padding:16px 18px;font-size:12px;color:#708389;line-height:1.6;margin:0}.viewport{background:#092d37;border-radius:9px;color:#c0d9db;overflow:hidden}.scene-bar{display:flex;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid #31505a;font-size:12px;letter-spacing:.06em}.scene-bar span:last-child{color:var(--mint)}.canvas-wrap{height:390px;position:relative}.canvas-wrap canvas{width:100%;height:100%;display:block;touch-action:none}.scene-controls{padding:14px 18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-top:1px solid #31505a}.scene-controls button{background:#193f48;color:#c5e1e1;border-color:#3e6068;font-size:13px}.scene-controls button.active{background:var(--mint);color:var(--ink)}.scene-controls label{display:flex;align-items:center;gap:6px;font-size:13px}.scene-controls input[type=range]{width:90px;accent-color:var(--mint)}.scene-controls #pause{margin-left:auto}.legend{font-size:13px}.scene-note{padding:0 18px 17px;margin:0;color:#9dbdc3;line-height:1.5;font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.metric{background:white;border:1px solid var(--line);border-radius:6px;padding:17px 15px}.metric span{display:block;color:#658084;font-size:12px;line-height:1.4;min-height:33px}.metric strong{display:block;font-size:26px;font-weight:500;margin:7px 0;font-variant-numeric:tabular-nums}.metric small{font-size:12px;color:var(--green)}.report,.warnings{background:white;border:1px solid var(--line);border-radius:7px;margin-bottom:18px;overflow:hidden}.report-title{padding:19px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.report h2,.warnings h2{font-size:18px;font-weight:500;margin:0}.report-title a{font-size:14px;color:var(--green)}table{width:100%;border-collapse:collapse;font-size:14px}.table-scroll{overflow:auto}th,td{text-align:left;padding:12px 19px;border-top:1px solid #e4ece8;line-height:1.4}th{font-size:12px;background:#edf4ef;color:#4f6c71}td:nth-child(2){white-space:nowrap;font-variant-numeric:tabular-nums;color:#027b70}td:last-child{font-size:12px;color:#6c8387}.warnings{padding:20px;background:#fffcf3;border-color:#e9dcb9}.warnings ul{padding-left:20px;margin-bottom:0;font-size:14px;line-height:1.6}.warnings li{margin-bottom:8px}.error{background:#fce2de;border:1px solid #c65340;padding:16px;border-radius:6px;margin-bottom:16px;line-height:1.5}.method{margin-top:38px;padding:30px;background:white;border:1px solid var(--line);border-radius:8px}.method h2{font-size:23px;font-weight:500;margin-top:0}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.method h3{font-size:16px}.method p{font-size:14px;color:#5b747a;line-height:1.7}.method a{font-size:14px;color:#00796f;text-decoration:underline}footer{padding:25px 3vw;background:#e5eee9;color:#648078;font-size:12px}.stale{opacity:.45}
@media(max-width:1150px){.workspace{grid-template-columns:290px minmax(0,1fr);gap:16px}.metrics{grid-template-columns:repeat(2,1fr)}.metric span{min-height:0}.canvas-wrap{height:350px}.method-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.worknav{align-items:start;flex-direction:column;padding:18px}.worknav nav{gap:18px;flex-wrap:wrap}.workheading{align-items:start}.workheading>button{font-size:12px;white-space:nowrap}main{padding:24px 16px}.workspace{display:flex;flex-direction:column}.settings{width:100%;position:static;max-height:430px}.workspace-main{width:100%}.canvas-wrap{height:330px}.method-grid{grid-template-columns:1fr}.method{padding:22px}.scene-bar{font-size:10px}.scene-controls{gap:8px}.report-title{align-items:start}.report-title a{font-size:12px}.table-scroll table{min-width:500px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
