*{box-sizing:border-box}body{margin:0;background:#10151b;color:#dfe9f2;font:15px system-ui}main{max-width:1200px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}h1{font-size:23px;margin:0 0 6px}p{margin:6px 0;color:#a4b3c2}input{background:#19222e;border:1px solid #384859;border-radius:5px;color:#fff;padding:9px;width:180px}button{background:#50c7b0;border:0;border-radius:5px;padding:10px;cursor:pointer}.layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;margin-top:20px}canvas{width:100%;aspect-ratio:1;background:#141e28;border:1px solid #304252}aside{border:1px solid #304252;padding:15px;overflow:auto;max-height:780px}.player{padding:10px 0;border-bottom:1px solid #293845;word-break:break-word}.player small{display:block;color:#a4b3c2}.status{color:#50c7b0}#readout{min-height:24px;font-family:monospace}@media(max-width:700px){.layout{grid-template-columns:1fr}main{padding:12px}aside{max-height:240px}}
.errors{background:#381c23;border:1px solid #d56a7c;border-radius:5px;color:#ffe1e6;padding:14px;margin:16px 0;overflow-wrap:anywhere}.errors ul{margin:8px 0 0;padding-left:22px}.errors li+li{margin-top:8px}
