#root{min-height:100vh}.app-shell{max-width:1280px;margin:0 auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.app-header{display:flex;justify-content:space-between;align-items:center;gap:.8rem}.app-header h1{font-size:clamp(1.25rem,2vw,2rem)}.app-header p{color:#9aa8bf;margin-top:.3rem}.status-badge{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.32rem .8rem;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent}.status-dot{width:.55rem;height:.55rem;border-radius:999px;background:currentColor}.status-running{color:#2dd4bf;border-color:#2dd4bf59;background:#2dd4bf24}.status-idle{color:#fbbf24;border-color:#fbbf2459;background:#fbbf2424}.status-stopped{color:#93c5fd;border-color:#93c5fd59;background:#93c5fd24}.status-fault{color:#f87171;border-color:#f8717159;background:#f8717124}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.machine-overview-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.65rem}.machine-overview{text-align:left;border:1px solid rgba(130,149,183,.25);border-radius:.65rem;background:#0d192ccc;color:#e8edf5;padding:.65rem;cursor:pointer}.machine-overview:hover{border-color:#7ed3f773}.machine-overview.selected{border-color:#60a5fabf;box-shadow:0 0 0 1px #60a5fa33 inset}.machine-overview-header{display:flex;justify-content:space-between;align-items:center;gap:.4rem}.machine-overview-header h3{font-size:1rem}.machine-state-pill{border-radius:999px;padding:.12rem .5rem;text-transform:uppercase;font-size:.75rem;border:1px solid transparent}.machine-overview-metrics{margin-top:.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;color:#b7c6de;font-size:.85rem}.state-running{color:#2dd4bf;border-color:#2dd4bf59;background:#2dd4bf1f}.state-idle{color:#fbbf24;border-color:#fbbf2459;background:#fbbf241f}.state-stopped{color:#93c5fd;border-color:#93c5fd59;background:#93c5fd1f}.state-fault{color:#f87171;border-color:#f8717159;background:#f871711f}.dashboard-grid{display:grid;gap:.8rem}.left-column,.right-column{display:flex;flex-direction:column;gap:.8rem}.panel{border:1px solid rgba(130,149,183,.25);border-radius:.8rem;background:linear-gradient(180deg,#162136f2,#0e1627f2);padding:.75rem}.stat-card{display:flex;flex-direction:column;gap:.2rem}.stat-label{color:#98a9c7;font-size:.83rem;text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:1.02rem;font-weight:600}.machine-panel{min-height:280px}.selected-info h2{font-size:1rem}.selected-meta{margin-top:.45rem;display:flex;flex-wrap:wrap;gap:.7rem;color:#bfd0ea}.machine-header{display:flex;align-items:center;justify-content:space-between}.status-light{width:1rem;height:1rem;border-radius:999px;box-shadow:0 0 8px currentColor}.light-running{color:#22c55e;background:#22c55e}.light-idle{color:#f59e0b;background:#f59e0b}.light-stopped{color:#94a3b8;background:#94a3b8}.light-fault{color:#ef4444;background:#ef4444}.press-shell{margin-top:1rem;position:relative;height:175px;border-radius:.75rem;border:1px solid rgba(122,145,176,.25);background:linear-gradient(135deg,#283347,#1a2438);overflow:hidden}.press-top{position:absolute;left:1rem;right:1rem;top:1rem;height:20px;border-radius:.35rem;background:linear-gradient(180deg,#6f829b,#3f4d63)}.press-ram{position:absolute;left:50%;margin-left:-17px;top:1.9rem;width:34px;height:72px;border-radius:.4rem;background:linear-gradient(180deg,#f2f4f7,#93a1b6)}.press-base{position:absolute;left:1rem;right:1rem;bottom:1rem;height:30px;border-radius:.35rem;background:linear-gradient(180deg,#51637d,#2f3c52)}.machine-caption,.machine-events{margin-top:.8rem;color:#c8d6ea}.gauges-grid{display:grid;gap:.75rem}.gauge-panel h3{font-size:.98rem}.gauge-dial{margin:.45rem auto;width:180px;height:100px;position:relative}.gauge-arc{position:absolute;inset:0;border:10px solid rgba(80,94,124,.85);border-bottom:none;border-radius:180px 180px 0 0}.gauge-needle{width:3px;height:76px;background:#f8f9ff;position:absolute;left:50%;bottom:0;transform-origin:50% calc(100% - 8px);border-radius:4px}.gauge-hub{width:14px;height:14px;border-radius:999px;background:#f8f9ff;position:absolute;left:50%;margin-left:-7px;bottom:0}.gauge-value{text-align:center;font-size:1.15rem;font-weight:600}.gauge-value span{color:#9fafd0;font-size:.85rem}.gauge-scale{display:flex;justify-content:space-between;color:#92a2c0;font-size:.8rem}.chart-header{display:flex;justify-content:space-between;align-items:center}.chart-header span{color:#9eb2d0}.sparkline{margin-top:.6rem;width:100%;height:110px}.config-panel{display:flex;flex-direction:column;gap:.6rem}.config-panel label{display:flex;flex-direction:column;gap:.4rem;color:#d7e3f7}.config-panel input[type=number],.config-panel select{border-radius:.4rem;border:1px solid rgba(132,149,178,.3);background:#0b1424cc;color:#eef4ff;padding:.38rem .45rem}.event-grid{display:flex;flex-direction:column;gap:.5rem}.event-row{display:grid;grid-template-columns:1fr 90px 70px;align-items:center;gap:.4rem}.event-row label{flex-direction:row;align-items:center;gap:.45rem;text-transform:capitalize}.range-grid{display:flex;flex-direction:column;gap:.5rem}.range-row{display:grid;grid-template-columns:1fr 80px 80px;align-items:center;gap:.4rem}.range-row label{color:#d7e3f7}.event-row button,.primary-btn{border:1px solid rgba(126,145,177,.45);border-radius:.4rem;background:linear-gradient(180deg,#385279,#263953);color:#f8fbff;padding:.35rem .52rem;cursor:pointer}.primary-btn{width:140px}.app-footer{color:#9cb0cf;font-size:.92rem}@media(min-width:920px){.stats-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.machine-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1.2fr 1fr}.gauges-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#e8edf5;background:#0f1724}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 20% 10%,#1f2a44,transparent 35%),radial-gradient(circle at 80% 80%,#123448,transparent 40%),#0f1724}button,input{font:inherit}h1,h2,h3,p{margin:0}
