:root{color-scheme:dark;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eaf0ef;background:#111b21}*{box-sizing:border-box}html,body{height:100%;width:100%;margin:0;overflow:hidden}body{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto}header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px max(22px,env(safe-area-inset-right)) 14px max(22px,env(safe-area-inset-left));border-bottom:1px solid #ffffff12}.eyebrow{font-size:10px;letter-spacing:.18em;color:#a4b5bb;text-decoration:none}h1{font-size:26px;letter-spacing:-.04em;margin:4px 0 0;font-weight:650}h1 span{font-size:15px;letter-spacing:-.02em;font-weight:400;color:#a4b5bb;margin-left:12px}button,select{font:inherit;font-size:14px;border:1px solid #ffffff24;border-radius:9px;background:#1c2a32;color:#eaf0ef;min-height:44px;padding:0 16px;cursor:pointer}button:hover:not(:disabled),select:hover:not(:disabled){background:#293c46}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #eabd70;outline-offset:3px}button:disabled,select:disabled{opacity:.4;cursor:default}.primary{background:#eabd70;color:#182228;border-color:#eabd70;font-weight:650;min-width:85px}.primary:hover:not(:disabled){background:#f4cf91}main{position:relative;min-height:0;overflow:hidden}canvas{width:100%;height:100%;display:block;touch-action:none}#loading{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;background:#111b21e8;color:#eabd70;line-height:1.6}#loading[hidden],aside[hidden]{display:none}.hint{position:absolute;bottom:2px;left:0;width:100%;text-align:center;font-size:11px;color:#a4b5bb;pointer-events:none}.hint span{padding:0 6px}aside{max-height:calc(100% - 36px);overflow:auto;position:absolute;right:18px;top:18px;max-width:340px;width:calc(100% - 36px);padding:22px;background:#17262ff5;border:1px solid #43535c;border-radius:12px;box-shadow:0 12px 40px #0005;font-size:13px;line-height:1.6}aside h2{font-size:20px;letter-spacing:-.03em;margin:0 0 12px}aside a{color:#eabd70}footer{background:#152129;border-top:1px solid #ffffff15;padding:14px max(22px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.controls{display:flex;align-items:end;justify-content:center;gap:10px}label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#a4b5bb;display:grid;gap:5px}select{text-transform:none;letter-spacing:normal;min-width:190px}.readout{max-width:650px;margin:12px auto 0;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#a4b5bb}#status{color:#eabd70}#result.success{color:#8ed9af}#result.failed{color:#ffb1a5}@media(max-width:520px){header{padding:14px 16px 10px}h1{font-size:24px}h1 span{display:block;font-size:13px;margin:2px 0 0}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.controls label{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}select{min-width:0;width:calc(100% - 60px)}footer{padding:10px 16px max(12px,env(safe-area-inset-bottom))}.readout{font-size:11px;gap:8px}.hint{font-size:10px}}@media(max-height:480px) and (min-width:521px){header{padding:6px 18px}h1{font-size:20px;display:inline;margin-left:12px}h1 span{font-size:12px}.eyebrow{font-size:9px}header button{min-height:36px}footer{padding:6px 18px max(6px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:15px}.controls{gap:7px}.controls label{display:flex;align-items:center;gap:8px}select{min-width:165px}.readout{margin:0;display:grid;gap:4px;font-size:11px}.hint{display:none}button,select{padding:0 12px}}