/* Visual simulation only: it never communicates with a physical PLC or valve. */
.water-simulator{overflow:hidden!important;background:#e9f3f4!important;border:1px solid #9acbd0!important;box-shadow:0 22px 48px rgba(2,43,53,.2)!important}.water-sim-top{position:relative;padding:18px 22px 19px!important;background:linear-gradient(145deg,#173942,#062935)!important;border-bottom:4px solid #1cb1ad}.water-sim-top:after{content:"SIMULATION · NO LIVE OUTPUT";position:absolute;right:20px;bottom:16px;padding:5px 7px;border:1px solid rgba(105,236,228,.36);border-radius:4px;color:#6ceae0;font-size:8px;font-weight:900;letter-spacing:.11em}.water-simulator .water-sim-grid{position:relative;z-index:1;gap:8px;padding:13px;background:#dcebed}.water-simulator .water-sim-grid div{position:relative;overflow:hidden;padding:10px!important;border:1px solid #a7bec1!important;border-radius:4px!important;background:linear-gradient(135deg,#f8fbf7,#e5eee9)!important;box-shadow:inset 0 1px #fff}.water-simulator .water-sim-grid div:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#1fb7a7}.water-simulator .water-sim-grid strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px!important;color:#143e42}.water-simulator .water-physical{grid-template-columns:108px minmax(0,1fr)!important;align-items:center!important;gap:17px!important;padding:21px 18px 19px!important;background:linear-gradient(135deg,#abc2c4,#e5f1f0 57%,#abc7c9)!important;box-shadow:inset 0 10px 20px rgba(255,255,255,.55),inset 0 -10px 18px rgba(13,64,70,.12)}.water-simulator .water-tank{width:76px;height:144px;justify-self:center;border:5px solid #38616a!important;border-radius:12px 12px 17px 17px!important;background:linear-gradient(90deg,#dfeeed,#fff 48%,#b5d2d3)!important;box-shadow:inset 8px 0 10px rgba(5,58,64,.14),inset -8px 0 12px rgba(255,255,255,.8),0 8px 14px rgba(5,51,58,.2)!important}.water-simulator .water-tank:before{top:17px!important;color:#29565f!important;font-size:9px!important}.water-simulator .water-tank:after{content:"";position:absolute;z-index:3;top:-11px;left:-5px;width:76px;height:18px;border:5px solid #38616a;border-radius:50%;background:linear-gradient(#e7f2f0,#a9c9c9);box-shadow:0 3px 3px rgba(0,0,0,.15)}.water-simulator .water-tank-fill{background:linear-gradient(90deg,#078eaa,#36d7de 48%,#0a89a3)!important;box-shadow:inset 9px 0 12px rgba(255,255,255,.2),inset -8px 0 10px rgba(0,40,72,.22)}.water-simulator .water-tank-fill:after{content:"";position:absolute;top:-7px;left:0;width:100%;height:14px;border-radius:50%;background:#40d9df;box-shadow:inset 0 -2px 3px rgba(0,50,70,.22)}.water-simulator .water-valve{position:relative;width:54px!important;height:54px!important;margin:0 0 9px 10px;border:7px solid #7b2928!important;border-radius:50%!important;background:radial-gradient(circle at 35% 32%,#ff9890 0 5%,#cf4d48 6% 54%,#9d302d 55%)!important;box-shadow:0 4px 0 #6c2524,0 8px 12px rgba(21,37,39,.28)!important}.water-simulator .water-valve:before{content:"";position:absolute;top:19px;left:-17px;width:72px;height:8px;border-radius:4px;background:linear-gradient(#8faeb0,#45676b 48%,#d1e1df);box-shadow:0 1px 2px rgba(0,0,0,.3)}.water-simulator .water-valve span{position:relative;z-index:1;font-size:8px!important;text-shadow:0 1px 1px #6c1d1d}.water-simulator .water-valve[data-open=true]{border-color:#0c6c50!important;background:radial-gradient(circle at 35% 32%,#a4f4bd 0 5%,#29a97c 6% 54%,#067052 55%)!important;box-shadow:0 4px 0 #075940,0 8px 12px rgba(21,37,39,.28)!important}.water-simulator .water-plc{position:relative;min-height:96px;padding:13px 13px 13px 108px!important;border:8px solid #34464b!important;border-radius:7px!important;background:linear-gradient(145deg,#486166,#1c2c31 50%,#577276)!important;box-shadow:inset 0 0 0 2px #152126,inset 0 0 0 4px #788e8e,0 8px 16px rgba(16,45,48,.3)!important}.water-simulator .water-plc:before{content:"1  2  3\A4  5  6\A7  8  9\A*  0  #";white-space:pre;position:absolute;top:13px;left:13px;width:76px;height:71px;padding:7px 0 0 10px;border:3px solid #18272b;border-radius:4px;background:repeating-linear-gradient(90deg,#667e80 0 17px,#25363a 18px 20px),repeating-linear-gradient(0deg,transparent 0 16px,#152328 17px 19px);box-shadow:inset 0 0 0 2px #a0b7b6;color:#e8f1e9;font:700 10px/18px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:3px}.water-simulator .water-plc:after{content:"GSM  ●  FLOW  ●  TEMP  ●\A[ NC ]  [ COM ]  [ NO ]";white-space:pre;position:absolute;right:10px;bottom:9px;color:#a9ebe4;font:700 8px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em}.water-simulator .water-plc b{position:relative;z-index:1;color:#83f3e6!important;font-size:10px!important;letter-spacing:.02em}.water-simulator .water-plc span{position:relative;z-index:1;margin-top:7px!important;padding:7px 8px;border:2px solid #081419;background:#a5cc8e;color:#173a2d!important;font-size:11px!important;box-shadow:inset 0 0 0 1px #d8e7bc}.water-simulator .water-sim-controls{padding:15px 16px 17px!important;background:#e7f1f1;border-top:1px solid #aecacc}.water-simulator .water-sim-controls button{border-radius:6px!important;box-shadow:0 3px 0 rgba(0,0,0,.15);font-size:12px!important}.water-simulator #waterSimulatorStatus{padding:0 16px 15px!important;background:#e7f1f1;color:#537479!important;font-size:11px!important}
@media(max-width:620px){.water-sim-top:after{position:static;display:inline-block;margin-top:8px}.water-simulator .water-physical{grid-template-columns:88px minmax(0,1fr)!important;padding:16px 10px!important}.water-simulator .water-plc{padding-left:98px!important}.water-simulator .water-plc:before{left:9px;width:67px;font-size:9px;letter-spacing:2px}.water-simulator .water-plc:after{display:none}}
