/* Electrical — Simulator-specific styles (extends shared/simulator-theme.css) */

:root {
  --ice: #7df4ff;
  --ice2: #40c8e0;
  --elec: #ffe066;
  --elec2: #ffb300;
}

#main{display:grid;grid-template-columns:220px 1fr 220px;grid-template-rows:1fr 200px;gap:4px;padding:4px;height:calc(100vh - 43px);}

@keyframes efault{0%,100%{background:rgba(255,224,102,.06)}50%{background:rgba(255,224,102,.22)}}
@keyframes fire_flash{0%,100%{background:rgba(255,68,68,.1)}50%{background:rgba(255,68,68,.3)}}
@keyframes blackout{0%,100%{background:rgba(255,68,68,.15)}50%{background:rgba(255,68,68,.4)}}

/* Gauge rows */

/* Breaker / valve buttons */
.cb-btn{padding:3px 7px;font-size:9px;font-family:var(--font-mono);border:1px solid var(--b2);background:rgba(0,0,0,.4);color:var(--muted);cursor:pointer;border-radius:2px;transition:all .15s;}
.cb-btn.closed{background:rgba(0,230,118,.12);border-color:var(--green);color:var(--green);}
.cb-btn.open{background:rgba(255,68,68,.1);border-color:var(--red);color:var(--red);}
.cb-btn.transitioning { background: rgba(255,171,0,0.12); border-color: var(--amber,#ffab00); color: var(--amber,#ffab00); }
.cb-btn:hover{border-color:var(--ice);color:var(--ice);}
.cb-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:4px;}

/* Big action buttons */

.btn-blkout{background:rgba(255,68,68,.12);border-color:var(--red);color:var(--red);}
.btn-blkout:hover{background:rgba(255,68,68,.3);}
.btn-blkout.active{background:var(--red2);color:#fff;animation:blackout .5s infinite;}
.btn-pref{background:rgba(255,193,7,.08);border-color:var(--amber);color:var(--amber);}
.btn-pref:hover{background:rgba(255,193,7,.22);}
.btn-shore{background:rgba(125,244,255,.06);border-color:var(--ice);color:var(--ice);}
.btn-shore:hover{background:rgba(125,244,255,.18);}
.btn-rst{background:rgba(255,255,255,.04);border-color:var(--muted);color:var(--muted);}
.btn-rst:hover{color:var(--white);border-color:var(--white);}

/* Alarm list */

.alm-item.fire{border-left-color:var(--red);animation:fire_flash 1s infinite;}
.alm-item.warn{border-left-color:var(--amber);background:rgba(255,193,7,.07);}
.alm-item.elec{border-left-color:var(--elec);animation:efault 1.2s infinite;}

.alm-item.clear{border-left-color:var(--green);opacity:.6;}

.alm-tag.F{background:rgba(255,68,68,.3);color:var(--red);}

.alm-tag.E{background:rgba(255,224,102,.2);color:var(--elec);}
.alm-tag.I{background:rgba(125,244,255,.15);color:var(--ice);}

/* Generator info blocks */
.gen-block{background:rgba(255,255,255,.03);border:1px solid var(--b1);border-radius:3px;padding:6px 8px;margin-bottom:5px;}
.gen-block.online{border-color:var(--green);background:rgba(0,230,118,.04);}
.gen-block.fault{border-color:var(--red);animation:fire_flash 1.2s infinite;}
.gen-block.standby{border-color:var(--b2);}
.gen-title{font-size:9px;font-family:var(--font-mono);letter-spacing:.5px;margin-bottom:4px;display:flex;justify-content:space-between;}
.gen-stat{font-size:9px;font-family:var(--font-mono);color:var(--green);}
.gen-stat.off{color:var(--muted);}
.gen-stat.fault{color:var(--red);}
.gen-meters{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:4px;}
.gen-m{font-size:9px;color:var(--muted);}
.gen-mv{font-family:var(--font-mono);font-size:11px;color:var(--white);}

/* Load table */
.load-row{display:flex;align-items:center;gap:4px;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:10px;}
.load-row:last-child{border:none;}
.load-name{flex:1;color:var(--white);}
.load-kw{font-family:var(--font-mono);font-size:10px;width:50px;text-align:right;}
.load-kw.overload{color:var(--red);}
.load-pri{font-size:8px;padding:1px 4px;border-radius:2px;background:rgba(255,255,255,.06);color:var(--muted);}
.load-pri.ess{background:rgba(255,68,68,.15);color:var(--red);}
.load-pri.pref{background:rgba(255,193,7,.1);color:var(--amber);}

/* Checklist */

/* Earth fault panel */
.ef-box{border:1px solid var(--elec);border-radius:3px;padding:5px 8px;background:rgba(255,224,102,.04);margin-bottom:5px;}
.ef-box.active{animation:efault 1.5s infinite;}
.ef-title{font-size:9px;color:var(--elec);font-family:var(--font-mono);letter-spacing:.5px;margin-bottom:2px;}
.ef-val{font-family:var(--font-mono);font-size:16px;color:var(--elec);}

/* Insulation resistance */
.ins-row{display:flex;align-items:center;gap:5px;padding:2px 0;font-size:10px;}
.ins-name{flex:1;color:var(--muted);}
.ins-val{font-family:var(--font-mono);font-size:11px;}
.ins-val.good{color:var(--green);}
.ins-val.warn{color:var(--amber);}
.ins-val.fault{color:var(--red);animation:blink .6s infinite;}

#blackout-banner{display:none;position:absolute;top:47px;left:0;right:0;background:#1a0000;border-bottom:2px solid var(--red);color:var(--red);text-align:center;padding:7px;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:2px;z-index:50;animation:blink .6s infinite;}

/* Bus voltage summary bar */
.bus-bar-row{display:flex;align-items:center;gap:6px;padding:4px 0;}
.bus-label{font-size:9px;font-family:var(--font-mono);color:var(--muted);width:70px;}
.bus-live{font-size:9px;font-family:var(--font-mono);padding:2px 7px;border-radius:2px;background:rgba(0,230,118,.14);color:var(--green);border:1px solid var(--green);}
.bus-dead{font-size:9px;font-family:var(--font-mono);padding:2px 7px;border-radius:2px;background:rgba(255,68,68,.1);color:var(--red);border:1px solid var(--red);}
