:root{font-family:system-ui,sans-serif;color:#193b49;background:#edf3f5}*{box-sizing:border-box}body{margin:0;height:100dvh;display:flex;flex-direction:column;overflow:hidden}header,nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px;background:white;padding:12px 20px;border-bottom:1px solid #d2e0e5;flex:none}header h1{font-size:22px;margin:0;flex:1}header img{object-fit:contain}a{color:#087c79}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #bfd2d8;border-radius:7px;background:#fff;color:#244e60;padding:9px 12px}button.primary{background:#087b78;color:white}button:disabled{opacity:.5;cursor:default}nav label{display:flex;align-items:center;gap:7px;margin:0}nav strong{margin-left:auto}main{display:grid;grid-template-columns:minmax(400px,1.1fr) minmax(380px,1fr);gap:14px;flex:1;min-height:0;padding:14px}main>section{background:white;border-radius:12px;padding:18px;overflow:auto;min-height:0;min-width:0;overscroll-behavior:contain}h2{font-size:19px;margin:0 0 12px}h3{font-size:15px}p,li{line-height:1.6}label{display:block;font-size:13px;margin:13px 0}input,select{width:100%;min-width:0;padding:8px;border:1px solid #bfd2d7;border-radius:6px;margin-top:5px;background:white}input[type=range]{padding:0;accent-color:#087b78}input[type=checkbox]{width:auto}output{display:block;color:#087c78;font-weight:650}fieldset{border:1px solid #d2e0e5;border-radius:8px;margin:14px 0;padding:12px;min-width:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.scene{background:#102b3a;border-radius:12px;overflow:auto}.scene svg{display:block;width:100%;min-width:500px}.plot svg{display:block;width:100%}.plot{background:#f9fcfd;border:1px solid #d2e0e5;border-radius:8px;overflow:auto}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.cards div{padding:10px;background:#eff6f5;border-radius:7px;font-size:12px}.cards strong{display:block;font-size:19px;color:#087c78;margin-top:5px}.notice{background:#fff1d1;border-left:4px solid #c68b23;padding:10px;font-size:13px}.notice.critical{background:#ffe2da;border-color:#cf3a21;color:#8b2914}.hint,details{font-size:12px;color:#546f7b}.adaptive{background:#eef3fb;padding:13px;border:1px solid #b7cbe2;border-radius:8px}#journal{font-size:12px;max-height:300px;overflow:auto;padding-left:20px}#balance{font-size:13px;line-height:1.7}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd7c20;outline-offset:2px}.bf-layout{grid-template-columns:280px minmax(420px,1fr) 320px}.bf-layout .scene svg{min-width:600px}.bf-layout>section{padding:15px}.bf-layout .cards{grid-template-columns:1fr 1fr}.live-label{font-size:12px;color:#547482}.running .charge-flow{animation:descend 2s infinite}@keyframes descend{to{transform:translateY(10px)}}@media(max-width:1150px){.bf-layout{grid-template-columns:240px minmax(400px,1fr)}.bf-layout>section:last-child{grid-column:1/-1;min-height:400px}main.bf-layout{overflow:auto}.bf-layout>section{min-height:650px}}@media(max-width:850px){body{height:auto;overflow:auto}main,main.bf-layout{display:block}main>section{max-height:85dvh;margin-bottom:14px}.scene svg,.bf-layout .scene svg{min-width:520px}header h1{font-size:18px}nav strong{width:100%;margin:0}.fields{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}