:root{--bg:#0a1521;--panel:#101f2d;--panel2:#142636;--line:#284051;--text:#e8f1f4;--muted:#91a8b6;--dim:#658092;--teal:#67e5d9;--orange:#faa061;--cool:#77a8e4;--font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);min-height:100%}body{background:radial-gradient(ellipse at 42% 10%,#122b39 0%,#0a1521 53%)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:3px}small{font-size:11px}
.shell{display:flex;min-height:100vh}.rail{width:70px;flex:0 0 70px;border-right:1px solid #263e4e;background:#0c1b28;display:flex;flex-direction:column;align-items:center;padding-top:24px}.mark{font-weight:800;letter-spacing:-3px;font-size:25px}.mark span{color:var(--teal)}.rail-line{height:1px;width:34px;margin:25px 0 29px;background:#365269}.rail-letter{height:46px;width:46px;display:flex;align-items:center;justify-content:center;color:#698495;font-size:13px;font-weight:800;margin-bottom:9px;border-radius:9px}.rail-letter.selected{background:#1e3744;color:var(--teal);border-left:2px solid var(--teal)}.rail-spacer{flex:1}.rail-bottom{color:#6e8b9b;font-size:10px;letter-spacing:2px;line-height:1.7;margin-bottom:28px;text-align:center}
.page{flex:1;min-width:0;max-width:1780px;margin:auto;padding:0 33px;display:flex;flex-direction:column}.topline{height:61px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #274050;letter-spacing:1.8px;font-weight:750;font-size:10px;color:#9aafba;gap:12px}.crumb span{color:#427184;padding:0 13px}.topline-right{white-space:nowrap;color:#7798a7}.led,.tiny-led{display:inline-block;width:7px;height:7px;background:#61dbad;border-radius:50%;box-shadow:0 0 12px #51cda4;margin-right:8px}.divider-v{display:inline-block;height:12px;width:1px;background:#385264;vertical-align:middle;margin:0 17px}.headline{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0 27px}.eyebrow{margin:0 0 10px;color:var(--teal);letter-spacing:2.6px;font-size:10px;font-weight:800}.tag{display:inline-block;border:1px solid #285968;background:#12333b;border-radius:4px;font-size:9px;letter-spacing:1.2px;padding:5px 7px;color:#a4dbda;margin-left:15px}h1{font-size:clamp(27px,2.65vw,39px);line-height:1.15;letter-spacing:-1.7px;margin:0;font-weight:780}h1 span{color:#698494;font-weight:500}.subtitle{font-size:13px;color:#a5b9c2;margin:11px 0 0}.subtitle span{color:#4a7082;padding:0 6px}.head-actions{display:flex;gap:9px}.button{height:40px;padding:0 16px;display:flex;gap:10px;align-items:center;justify-content:center;border-radius:6px;font-size:12px;font-weight:700}.button.ghost{color:#d4e1e6;border:1px solid #365366;background:#142634}.button.primary{color:#091d26;border:1px solid #67ddd2;background:linear-gradient(130deg,#5bdbce,#90eddd)}.button:hover,.quick:hover,.wide-action:hover,.export:hover{filter:brightness(1.13)}.pane{border:1px solid var(--line);background:linear-gradient(135deg,#112333,#0e1e2b);border-radius:9px;box-shadow:0 10px 25px rgba(0,0,0,.09)}
.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 318px;gap:15px;align-items:stretch}.workarea{min-width:0;display:flex;flex-direction:column;gap:13px}.viewport{position:relative;height:clamp(320px,34.5vw,455px);overflow:hidden;background:radial-gradient(ellipse at 55% 40%,#1a3346,#0b1d2c 70%)}#simCanvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}#simCanvas:active{cursor:grabbing}.scene-top{position:absolute;z-index:2;left:19px;right:19px;top:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;font-size:10px;color:#648a9f;letter-spacing:1.6px;font-weight:700}.scene-top strong{color:#cadbe0;font-size:10px;font-weight:700;margin-left:9px}.orbit-hint{letter-spacing:1.1px;color:#8199a8;font-size:9px}.scene-label{position:absolute;z-index:2;bottom:64px;letter-spacing:1.3px;font-size:10px;font-weight:800;color:#b5d8e0;pointer-events:none}.scene-label small{color:#7597a9;display:inline-block;line-height:1.6;letter-spacing:1.1px}.scene-label-left{left:23px}.scene-label-right{right:24px;text-align:right}.measure-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f5a36a;box-shadow:0 0 10px #f5a36a;margin-right:6px}.scene-bottom{position:absolute;left:0;right:0;bottom:0;height:43px;border-top:1px solid #365166;background:rgba(8,22,34,.86);display:flex;align-items:center;gap:25px;padding:0 21px;color:#9fb8c4;letter-spacing:1.1px;font-size:9px;font-weight:700;pointer-events:none}.scene-bottom i,.plot-legend i{display:inline-block;width:13px;height:3px;vertical-align:middle;margin-right:7px;border-radius:3px}.legend-wire{background:#f7a466}.legend-spring{background:#d0e1e6}.legend-sensor{background:#65d9d0}.webgl-error{position:absolute;left:10%;top:40%;width:80%;padding:18px;background:#4e2222;color:#fff;border:1px solid #a55}
.readouts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{min-height:103px;padding:16px 16px 12px}.metric>span{font-size:9px;letter-spacing:1.45px;color:#90afbf;font-weight:800;white-space:nowrap}.metric div{margin-top:6px;display:flex;align-items:baseline;gap:6px}.metric strong{font-size:clamp(24px,2.25vw,34px);font-weight:650;letter-spacing:-1px;line-height:1.1}.metric em{font-size:14px;color:#86d1d0;font-style:normal}.metric small{display:block;margin-top:8px;color:#7191a3;font-weight:700;font-size:9px;letter-spacing:.5px}.plots{display:grid;grid-template-columns:1fr 1fr;gap:13px}.plot{height:219px;padding:17px 17px 10px;overflow:hidden}.plot-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1.15px;font-weight:800;color:#c5dbe4}.plot-head div span{color:#74b5c0;margin-right:7px}.plot-head small{font-size:8px;color:#7c9bab;letter-spacing:1px}.plot canvas{height:139px;width:100%;display:block;margin-top:8px}.plot-legend{display:flex;gap:14px;color:#829ba9;font-size:10px;align-items:center;justify-content:center}.legend-temp,.legend-heating{background:#ffa36d}.legend-stroke,.legend-cooling{background:#6bdfcf}.legend-point{background:#e3e7ef;width:7px!important;height:7px!important;border-radius:50%!important}
.controls{display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:0 19px}.control-top{display:flex;align-items:center;justify-content:space-between;padding:22px 1px 18px}.control-top small{letter-spacing:1.5px;color:#6db9bd;font-weight:700;font-size:9px}.control-top h2{margin:7px 0 0;font-size:16px;letter-spacing:-.3px;font-weight:650}.control-gear{font-size:20px;color:#759cab}.tabs{display:flex;justify-content:space-around;border-bottom:1px solid #344c5a;height:37px;margin:0 -19px 25px;font-size:9px;color:#7491a0;font-weight:800;letter-spacing:1.3px}.tabs span{height:100%;display:flex;align-items:flex-start;padding-top:1px}.tabs .active{color:var(--teal);border-bottom:2px solid var(--teal)}.control-group{margin-bottom:19px}.control-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.control-row label{font-size:12px;font-weight:590;color:#bbd0da}.control-row output{color:var(--teal);background:#163b43;border:1px solid #245863;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:740;min-width:68px;text-align:right}.control-group input[type=range]{width:100%;height:5px;margin:16px 0 9px;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,#4fd5ca var(--fill,50%),#345265 var(--fill,50%));border-radius:9px;cursor:pointer}.control-group input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:#eaf8f8;border:3px solid #69dfd2;box-shadow:0 0 0 3px #163a46}.control-group input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#eaf8f8;border:3px solid #69dfd2}.range-bounds{display:flex;justify-content:space-between;font-size:9px;color:#698b9a;letter-spacing:.7px}.control-footer{border-top:1px solid #2a4252;margin-top:5px;padding-top:17px}.section-title{color:#a6bfca;font-size:10px;letter-spacing:1.5px;font-weight:800;display:flex;justify-content:space-between}.section-title span{color:#68a5b7}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.quick{border:1px solid #385569;background:#1b3341;border-radius:5px;font-size:10px;font-weight:800;letter-spacing:.5px;padding:10px 3px;color:#d7e8ee;white-space:nowrap}.quick.heat{background:#443128;border-color:#8b5b43;color:#ffc494}.wide-action{width:100%;margin-top:10px;border:1px solid #315667;background:#163341;color:#bce3e8;border-radius:5px;font-size:10px;font-weight:800;letter-spacing:.4px;padding:11px 10px;display:flex;justify-content:space-between}.wide-action span{color:#7ba8b6}.wide-action.on{background:#134448;border-color:#66c8b9}.speed-row{display:flex;align-items:center;justify-content:space-between;margin:17px 0 12px;font-size:11px;color:#9bb3c1}.speed-row select{background:#1d3747;border:1px solid #315569;color:#e4f6f6;padding:6px 8px;border-radius:5px}.export{border:1px solid #3b5b69;background:transparent;color:#a5ccda;width:100%;padding:11px 8px;font-size:10px;font-weight:750;letter-spacing:.6px;border-radius:4px}.model-note{margin-top:auto;padding:23px 1px 15px;color:#8fd1c1;font-size:10px;font-weight:780;letter-spacing:.6px}.model-note small{display:block;font-size:9px;color:#648491;font-weight:450;letter-spacing:0;line-height:1.5;margin:9px 0 0}footer{display:flex;justify-content:space-between;padding:20px 0;font-size:9px;letter-spacing:1.2px;color:#648597;gap:10px}.tiny-led{width:6px;height:6px}
@media(max-width:1200px){.page{padding:0 19px}.dashboard{grid-template-columns:minmax(0,1fr) 288px}.controls{padding:0 15px}.tabs{margin-left:-15px;margin-right:-15px}.metric{padding:13px}.metric>span{font-size:8px}.metric strong{font-size:25px}.scene-bottom{gap:12px}}
@media(max-width:1020px){.dashboard{grid-template-columns:1fr}.controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 23px;padding:16px 22px}.control-top,.tabs,.control-footer,.model-note{grid-column:1/-1}.control-top{padding:0 0 7px}.tabs{margin:0 -22px 20px}.model-note{padding:12px 0 0}.control-footer{margin-top:5px}.viewport{height:440px}.topline-right{display:none}}
@media(max-width:670px){.rail{display:none}.page{padding:0 13px}.topline{height:44px}.headline{align-items:flex-start;flex-direction:column;padding:19px 0}.head-actions{width:100%}.head-actions .button{flex:1}.dashboard{gap:12px}.viewport{height:325px}.orbit-hint{display:none}.scene-top{left:13px;top:14px}.scene-label{font-size:9px;bottom:55px}.scene-bottom{padding:0 8px;gap:7px;justify-content:space-between;font-size:8px}.readouts{grid-template-columns:repeat(2,1fr)}.plots{grid-template-columns:1fr}.controls{grid-template-columns:1fr}.control-group{margin-bottom:15px}.control-footer,.model-note{grid-column:1}.tag{margin-left:4px}.eyebrow{line-height:2}footer span:nth-child(2){display:none}}
