*{box-sizing:border-box}body{margin:0;background:#eaf1f5;color:#17374a;font:15px system-ui}header{background:#153b50;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:18px}header h1{margin:0;font-size:24px}header a{color:#d6f4ff}.turbine-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;padding:18px;max-width:1800px;margin:auto}.workspace{min-width:0}.panel{padding:18px;background:#fff;border:1px solid #c9d9e3;border-radius:12px;margin-bottom:16px}h2{font-size:19px;margin:0 0 12px}h3{font-size:15px}.drawing{min-height:460px}.drawing svg{width:100%;max-height:650px;display:block}.controls{max-height:calc(100vh - 110px);overflow:auto;position:sticky;top:16px}.control{display:block;margin-bottom:15px}.control span{display:flex;justify-content:space-between;gap:10px}.control input[type=range]{width:100%;accent-color:#177b97}.check{display:block;margin:12px 0}button,select{font:inherit;padding:9px 12px;border:1px solid #a9c0cd;border-radius:7px;background:#f4f9fc;cursor:pointer}button:hover{background:#d6eef3}.primary{background:#147586;color:white}.danger{background:#a73433;color:white}.actions{display:flex;gap:8px;flex-wrap:wrap}.meters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.meter{background:#153b50;border-radius:9px;padding:12px;color:#b9d7e6}.meter strong{display:block;color:#96efd1;font:23px monospace;margin-top:6px}.meter small{font-size:11px}.status{padding:12px;border-radius:8px;background:#e5f3ec;white-space:pre-line}.status.alarm{background:#ffe4d5;color:#8b2b15}#turbine-notice{min-height:24px}#turbine-trend svg{width:100%;height:220px}.log{max-height:150px;overflow:auto;font-size:13px;white-space:pre-line}details p{font-size:13px;line-height:1.6}a{color:#12627d}.water-flow{animation:water 1s linear infinite}@keyframes water{to{stroke-dashoffset:-40}}@media(max-width:1100px){.meters{grid-template-columns:repeat(3,minmax(0,1fr))}.turbine-layout{grid-template-columns:minmax(0,1fr) 290px;padding:10px;gap:10px}.panel{padding:12px}.drawing{min-height:350px}}@media(max-width:760px){header{align-items:start;flex-direction:column}.turbine-layout{display:flex;flex-direction:column}.controls{position:static;max-height:none}.meters{grid-template-columns:repeat(2,minmax(0,1fr))}.drawing{min-height:280px}}
.system-drawing svg{display:block;width:100%;max-height:620px}
.system-drawing [data-system-turbine]{cursor:zoom-in}
.system-drawing [data-system-turbine]:focus{outline:3px solid #e5a33c}
.power-calculation{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.power-calculation>div{padding:14px;border-radius:9px;background:#edf5f8;border:1px solid #d0e0e7}
.power-calculation>div:last-child{grid-column:1/-1}
.power-calculation p{margin:8px 0}.power-calculation strong{display:block;color:#12606d;font-size:17px}
.power-calculation small{display:block;margin-top:8px;color:#527084;line-height:1.5}
.zoom-trigger{display:block;width:100%;padding:0;overflow:hidden;border:1px solid #c4d6e0;background:#f1f7fa;cursor:zoom-in;text-align:left}
.zoom-hint{display:block;padding:10px 14px;color:#176781;font-weight:bold}
.zoom-trigger:hover{border-color:#1684a2;background:#f1f7fa}
.zoom-trigger .drawing{display:block}
.turbine-zoom[hidden]{display:none}
.turbine-zoom{position:fixed;inset:0;z-index:1000;background:#102c40d9;display:flex;align-items:center;justify-content:center;padding:20px}
.zoom-panel{width:min(1500px,96vw);max-height:96vh;overflow:auto;background:#f1f7fa;border-radius:14px;padding:16px;box-shadow:0 20px 80px #0008}
.zoom-header{display:flex;justify-content:space-between;gap:14px;align-items:center;position:sticky;top:-16px;padding:10px;background:#f1f7fa;z-index:1}
.zoom-header h2{margin:0}
#turbine-zoom-drawing svg{display:block;width:100%;height:min(74vh,900px)}
#turbine-zoom-readings{text-align:center;font-weight:bold;color:#175d73}
@media(max-width:760px){.power-calculation{grid-template-columns:1fr}.turbine-zoom{padding:5px}.zoom-header h2{font-size:16px}.system-drawing{overflow-x:auto}.system-drawing svg{min-width:680px}}
