
:root{color-scheme:dark;--ink:#0c1822;--surface:#12232f;--surface2:#162b35;--border:#2b4350;--muted:#8e9fa8;--bright:#f4eee3;--gold:#c5a579;--mint:#7fe9cb;--cyan:#6cf1e4;--amber:#f0ae66;--font:'DM Sans','Segoe UI',Arial,sans-serif;--head:'Space Grotesk','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:#0c1822;color:var(--bright);font-family:var(--font);font-size:13px}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.layout{max-width:1750px;margin:auto;min-height:100vh;background:#0d1a25}.masthead{height:83px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid #30404a;background:linear-gradient(108deg,#142531,#10202b);letter-spacing:.10em}.brand{display:flex;align-items:center;gap:16px}.brand-emblem{width:50px;height:50px;border:1px solid #7f725a;border-radius:7px;display:grid;place-items:center;font-family:Georgia,serif;font-size:30px;color:#c9ac7a;background:#192b32;position:relative}.brand-emblem span{font-size:20px;position:absolute;bottom:5px;right:8px}.brand-name{font:700 23px var(--head);letter-spacing:.065em}.brand-name span{color:var(--gold);font-weight:400}.brand-caption{font-size:9px;color:#9daeb2;letter-spacing:.2em;margin-top:4px}.mast-right{display:flex;align-items:center;gap:12px;color:#a5b2b7;font-size:10px}.state-dot{width:7px;height:7px;background:#76f4c6;border-radius:50%;box-shadow:0 0 11px #76f4c6}.separator{height:20px;width:1px;background:#52616b;margin:0 8px}.summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:105px;background:#142631;border-bottom:1px solid #2d4652}.metric{padding:22px 27px 14px;border-right:1px solid #28424e}.metric:last-child{border:0}.eyebrow{font-size:10px;color:#a9b4b9;letter-spacing:.14em;font-weight:700}.metric>div:not(.meter){display:flex;gap:8px;align-items:baseline;margin-top:9px}.metric strong{font:600 29px var(--head);letter-spacing:-.045em;white-space:nowrap}.metric div span{color:#899ca5;font-size:11px}.metric-util strong{color:#e1cbab}.meter{width:100%;height:4px;background:#35505b;border-radius:2px;margin-top:10px;overflow:hidden}.meter>div{width:1%;height:100%;background:#65d8bf;transition:width .2s,background .2s}.stage{display:grid;grid-template-columns:minmax(0,1fr) 366px;gap:0}.visual-column{min-width:0;border-right:1px solid #2d4552}.viewport-panel{height:clamp(455px,53vw,685px);min-height:455px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 42% 41%,#273e4d,#0d1b25 75%)}#viewport{position:absolute;inset:0;touch-action:none}#viewport canvas{display:block;width:100%;height:100%}.viewport-heading{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;justify-content:space-between;padding:21px 25px;background:linear-gradient(#10202bbe,transparent);font-size:10px;color:#adc1c4;letter-spacing:.14em;pointer-events:none}.tiny-cross{color:#bca576;margin-right:6px}.viewport-overlay{display:flex;justify-content:space-between;position:absolute;left:0;right:0;bottom:44px;padding:0 24px;pointer-events:none;align-items:flex-end;color:#afc3c6;font-size:10px;letter-spacing:.075em}.scope{border:1px solid #45626d;padding:9px 13px;background:#0d222abf}.scope strong{color:white;margin-left:5px}.scope-symbol{color:var(--gold);margin-right:7px}.viewport-hint{color:#8da4ac}.viewport-hint span{padding:0 5px;color:#c2a073}.viewport-legend{position:absolute;bottom:0;left:0;right:0;display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:14px 23px;background:#111f2dde;border-top:1px solid #35505a;font-size:9px;font-weight:600;color:#c4d1d2;letter-spacing:.07em}.viewport-legend span{display:inline-flex;gap:7px;align-items:center}.legend-line{width:19px;height:0;border-top:2px solid}.legend-line.aqua{border-color:#6cf1e4}.legend-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.legend-dot.apricot{background:#f0ae66}.legend-dot.mint{background:#7fe9cb}.legend-dot.cobalt{background:#7eb7f3}.loading{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#d6c298;letter-spacing:.16em;font-size:13px}.loading small{color:#78909d;font-size:10px;letter-spacing:.05em}.analysis-panel{background:#142630;border-top:1px solid var(--border);min-height:347px;padding:20px 26px 12px}.panel-header{display:flex;justify-content:space-between;align-items:end;gap:12px}.panel-header h2{font:600 20px var(--head);margin:6px 0 0}.analytic-subtitle{color:#96aeb2;font-size:10px}.eq-tag{font-family:Georgia,serif;color:#dfc392;background:#1f3941;margin-left:8px;padding:6px 8px}.analysis-panel svg{width:100%;height:242px;display:block}.analysis-footer{display:flex;gap:18px;align-items:center;flex-wrap:wrap;color:#aababe;font-size:9px;font-weight:700;letter-spacing:.07em}.analysis-footer>span{display:inline-flex;align-items:center;gap:7px}.footnote{margin-left:auto;color:#768f9b!important}.swatch{width:20px;height:0;border-top:2px solid #9ba7a9}.swatch-outline{border-top-style:dashed}.swatch-solid{border-color:#6fe3ce}.swatch-amber{border-color:#dda15f}.controls-panel{padding:26px 27px 28px;background:#10232d}.controls-heading h1{font:600 32px var(--head);letter-spacing:-.06em;margin:8px 0}.controls-heading p{font-size:12px;line-height:1.65;color:#9aabb0;margin:0 0 18px}.transport{display:flex;gap:8px;padding-bottom:20px;border-bottom:1px solid #334b55}.transport button{border:1px solid #49606a;color:#d9e7e5;background:#1c333d;min-height:42px;border-radius:4px;display:grid;place-items:center;transition:background .2s}.transport button:hover{background:#304d55}.transport button.primary{flex:1;display:flex;justify-content:center;gap:13px;letter-spacing:.08em;font-size:11px;font-weight:700;background:#c5a576;color:#192731;border-color:#d8b686}.transport button.primary:hover{background:#e2c092}.transport button:not(.primary){width:46px;font-size:22px}.control-section{padding:16px 0 12px;border-bottom:1px solid #324b56}.group-title{font:600 11px var(--head);color:#b8996a;display:flex;gap:12px;margin-bottom:16px;letter-spacing:.06em}.group-title span{color:#d4dedf;letter-spacing:.12em}.control{margin-bottom:17px}.control label{display:flex;justify-content:space-between;color:#c7d5d5;font-size:12px;margin-bottom:10px}.control output{color:#d7b47f;font-weight:700;font-variant-numeric:tabular-nums}.control input[type=range]{width:100%;height:5px;margin:0;appearance:none;outline:0;border-radius:8px;background:linear-gradient(90deg,#c7a878 0%,#c7a878 var(--progress,36%),#35505c var(--progress,36%),#35505c 100%);cursor:pointer}.control input[type=range]::-webkit-slider-thumb{appearance:none;width:15px;height:15px;background:#e8d2aa;border:3px solid #172832;border-radius:50%;box-shadow:0 0 0 1px #b8996a}.control input[type=range]::-moz-range-thumb{width:12px;height:12px;background:#e8d2aa;border:3px solid #172832;border-radius:50%}.limit-label{display:flex;justify-content:space-between;color:#64808b;font-size:9px;margin-top:8px}.visualization{padding-bottom:8px}.switch-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 15px;cursor:pointer}.switch-row b{font-weight:600;font-size:12px;display:block}.switch-row small{color:#8196a0;font-size:10px;display:block;margin-top:2px}.switch-row input{position:absolute;opacity:0}.switch-row i{width:38px;height:21px;background:#304650;border:1px solid #52707b;border-radius:12px;position:relative;transition:.16s;flex-shrink:0}.switch-row i:after{content:"";position:absolute;background:#8da3a7;border-radius:50%;width:13px;height:13px;top:3px;left:3px;transition:.16s}.switch-row input:checked+i{background:#516c62;border-color:#9fbea5}.switch-row input:checked+i:after{transform:translateX(16px);background:#bff2d7}.switch-row input:focus-visible+i{outline:2px solid #62efe6;outline-offset:3px}.status-panel{margin-top:18px;padding:16px;border:1px solid #46685d;background:#17332e}.status-panel.warning{border-color:#aa8660;background:#372a23}.status-panel.danger{border-color:#c5786d;background:#42252a}.status-header{font-size:10px;letter-spacing:.1em;display:flex;align-items:center;gap:8px;font-weight:700;color:#a2e2c4}.warning .status-header{color:#f3c787}.danger .status-header{color:#ffa7a0}#status-circle{font-size:12px}.status-panel p{color:#c1d1cc;font-size:11px;line-height:1.55;margin:9px 0 14px}.status-detail{font-size:9px;color:#96abae;letter-spacing:.05em}.status-detail strong{float:right;color:#e8d1ab}.status-footnote{display:block;margin-top:8px;color:#7c9a9e}.page-footer{display:flex;justify-content:space-between;gap:20px;padding:23px 35px;flex-wrap:wrap;border-top:1px solid #304a55;color:#879ca5;font-size:9px;letter-spacing:.09em}.page-footer i{color:#be9e73;font-style:normal}
@media(max-width:1170px){.stage{grid-template-columns:minmax(0,1fr) 320px}.controls-panel{padding:24px 20px}.metric{padding:22px 15px}.metric strong{font-size:25px}.viewport-legend{gap:9px}.footnote{display:none}}@media(max-width:900px){.stage{grid-template-columns:1fr}.visual-column{border:0}.controls-panel{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.controls-heading,.transport,.status-panel{grid-column:span 2}.controls-panel .control-section:nth-of-type(3){grid-column:span 2}.summary{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){border-right:0}.metric:nth-child(n+4){border-top:1px solid #28424e}.viewport-panel{height:560px}.page-footer{font-size:8px}}@media(max-width:570px){.masthead{padding:12px 14px;height:73px}.brand-emblem{width:37px;height:37px;font-size:20px}.brand-name{font-size:16px}.brand-caption{font-size:7px;letter-spacing:.1em}.mast-right{display:none}.summary{grid-template-columns:repeat(2,1fr)}.metric{min-height:92px;padding:16px}.metric:nth-child(3){border-right:1px solid #28424e}.metric:nth-child(2n){border-right:0}.metric strong{font-size:24px}.viewport-panel{height:435px;min-height:0}.viewport-heading{padding:14px;font-size:8px}.viewport-overlay{padding:0 12px;bottom:67px}.viewport-hint{display:none}.viewport-legend{font-size:8px;padding:11px;gap:8px}.analysis-panel{padding:17px 13px}.analytic-subtitle{display:none}.analysis-panel svg{height:192px}.controls-panel{grid-template-columns:1fr;padding:23px}.controls-heading,.transport,.status-panel,.controls-panel .control-section:nth-of-type(3){grid-column:auto}.controls-heading h1{font-size:28px}.page-footer{padding:17px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
#viewport canvas.ferrum-webgl{position:absolute;inset:0;width:100%;height:100%;z-index:1}
