/* PMS — Simulator-specific styles (extends shared/simulator-theme.css) */

#main{display:grid;grid-template-columns:210px 1fr 220px;grid-template-rows:1fr 190px;gap:4px;padding:4px;height:calc(100vh - 42px);}
.gen-card{background:var(--bg2);border:1px solid var(--border);border-radius:3px;padding:8px;margin-bottom:6px;}
.gen-card.running{border-color:var(--green);}
.gen-card.fault{border-color:var(--red);animation:alarmblink 1s infinite;}
.gen-card.standby{border-color:var(--border);}
.gen-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
.gen-name{font-size:11px;font-weight:700;color:var(--cyan);letter-spacing:1px;}
.gen-status{font-size:9px;font-family:var(--font-mono);padding:2px 6px;border-radius:2px;}
.gen-status.RUNNING{background:rgba(0,230,118,.2);color:var(--green);}
.gen-status.STANDBY{background:rgba(90,138,170,.1);color:var(--muted);}
.gen-status.FAULT{background:rgba(255,23,68,.2);color:var(--red);animation:blink .6s infinite;}
.gen-status.STARTING{background:rgba(255,171,0,.15);color:var(--amber);}
.gen-status.STOPPING{background:rgba(255,171,0,.1);color:var(--amber);}
.gen-row{display:flex;justify-content:space-between;margin-bottom:4px;font-size:10px;}
.gen-label{color:var(--muted);}
.gen-val{font-family:var(--font-mono);color:var(--white);}
.gen-val.warn{color:var(--amber);}
.gen-val.alarm{color:var(--red);}
.bar-track{height:6px;background:rgba(255,255,255,.05);border-radius:2px;overflow:hidden;border:1px solid var(--border);margin-bottom:6px;}
.bar-fill{height:100%;background:var(--green);transition:width .4s,background .3s;border-radius:2px;}
.bar-fill.warn{background:var(--amber);}
.bar-fill.alarm{background:var(--red);}
.gen-btns{display:grid;grid-template-columns:1fr 1fr;gap:3px;}
.gbtn{padding:4px;font-size:9px;font-family:var(--font-mono);border-radius:2px;cursor:pointer;border:1px solid;transition:all .15s;text-align:center;}
.gbtn.start{background:rgba(0,230,118,.08);border-color:var(--green);color:var(--green);}
.gbtn.start:hover{background:rgba(0,230,118,.2);}
.gbtn.stop{background:rgba(255,171,0,.08);border-color:var(--amber);color:var(--amber);}
.gbtn.stop:hover{background:rgba(255,171,0,.2);}
.gbtn.connect{background:rgba(41,121,255,.1);border-color:var(--blue);color:#7ab3ff;}
.gbtn.connect:hover{background:rgba(41,121,255,.25);}
.gbtn.disconnect{background:rgba(90,138,170,.08);border-color:var(--muted);color:var(--muted);}
.gbtn.disconnect:hover{border-color:var(--white);color:var(--white);}
.gbtn:disabled{opacity:.35;cursor:not-allowed;}
.mode-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px;}
.mode-label{font-size:10px;color:var(--muted);}
.toggle-btn{padding:3px 10px;font-size:9px;font-family:var(--font-mono);border-radius:2px;cursor:pointer;border:1px solid var(--border2);background:rgba(0,0,0,.3);color:var(--muted);transition:all .15s;}
.toggle-btn.on{background:rgba(0,230,118,.15);border-color:var(--green);color:var(--green);}
#bottom{grid-column:1/4;display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;}
.bus-stat{display:flex;flex-direction:column;gap:3px;}
.bus-val-row{display:flex;align-items:baseline;gap:6px;}
.bus-big{font-family:var(--font-mono);font-size:26px;color:var(--cyan);}
.bus-unit{font-size:11px;color:var(--muted);}
.bus-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;}
.pref-row{display:flex;align-items:center;justify-content:space-between;padding:4px 6px;background:var(--bg2);border:1px solid var(--border);border-radius:2px;margin-bottom:3px;}
.pref-name{font-size:10px;color:var(--white);}
.pref-kw{font-family:var(--font-mono);font-size:10px;color:var(--muted);}
.pref-status{font-size:9px;font-family:var(--font-mono);padding:1px 6px;border-radius:2px;}
.pref-status.ON{background:rgba(0,230,118,.15);color:var(--green);}
.pref-status.TRIPPED{background:rgba(255,23,68,.2);color:var(--red);animation:blink .8s infinite;}
.pref-status.OFF{background:rgba(90,138,170,.08);color:var(--muted);}
.restore-btn{font-size:9px;font-family:var(--font-mono);padding:1px 6px;border-radius:2px;cursor:pointer;border:1px solid var(--border2);background:rgba(0,0,0,.3);color:var(--muted);transition:all .15s;}
.restore-btn:hover{border-color:var(--green);color:var(--green);}
.ack-all-btn{width:100%;padding:5px;font-size:10px;font-family:var(--font-mono);background:rgba(255,171,0,.1);border:1px solid var(--amber);color:var(--amber);cursor:pointer;border-radius:2px;margin-bottom:6px;transition:all .15s;}
.ack-all-btn:hover{background:rgba(255,171,0,.25);}
