*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#0c1420;color:#eef4f9;font-family:Arial,Helvetica,sans-serif}body{touch-action:manipulation}.top{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#182536;flex-wrap:wrap}.top strong{margin-right:auto}.top a{color:#d4e2ee;padding:12px;text-decoration:none}button,select{font:inherit;color:inherit;background:#20374a;border:1px solid #597489;border-radius:8px;min-height:50px;padding:12px 16px;cursor:pointer}button[aria-pressed=true]{background:#126443;border-color:#60e6a8;box-shadow:inset 0 0 0 1px #60e6a8}button:disabled{opacity:.5;cursor:default}button:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #f4cc63;outline-offset:2px}main{max-width:1500px;margin:auto}.preview{display:grid;place-items:center;width:100%;aspect-ratio:16/9;background:repeating-conic-gradient(#25313d 0 25%,#293743 0 50%) 50%/24px 24px}.preview iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}.commands{padding:12px 16px 20px}.button-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.button-row button{flex:1 1 140px}.selection{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.selection label{display:flex;flex-direction:column;gap:6px;min-width:140px;flex:1}.selection select{width:100%}#message{line-height:1.5;color:#f4cc63;min-height:24px;margin:10px 0}#connection{font-size:14px;color:#a7c6dc}details{border-top:1px solid #405069;padding-top:10px}summary{padding:12px 0;min-height:48px;cursor:pointer}#candidate-buttons{margin-top:12px}#candidate-buttons button{flex:1 1 230px;text-align:left}#candidate-buttons small{display:block;margin-top:5px;color:#d4e2ee}body:fullscreen{overflow:auto}@media(min-width:900px) and (max-height:850px){.preview{height:calc(100dvh - 310px);min-height:240px;aspect-ratio:auto}.preview iframe{width:min(100%,calc(max(240px,100dvh - 310px)*16/9));height:100%}.top{padding:6px 12px}.top button{min-height:40px;padding:8px 12px}.commands{padding-top:10px}.button-row button{min-height:48px;padding:10px 12px}}@media(max-width:600px){.top{gap:6px;padding:8px}.top a{font-size:14px}.commands{padding:10px}.button-row button{flex-basis:40%;font-size:15px}.selection button{flex:1 1 40%}.selection label{min-width:120px}.top strong{font-size:15px}}
