:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#d7f6c8;--amber:#f3d48a;--danger:#ff8d7c;--glass:#00000047;--line:#f3d48a61;color:var(--ink);background:#120c08;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:#120c08;place-items:center;display:grid;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stage{aspect-ratio:1671/941;width:min(100vw,177.577vh);position:relative}.scene{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.screen,#mic-ptt,.vfo{z-index:1}#mic-ptt{width:8.9772%;height:23.4%;color:var(--amber);touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;border-radius:18px;padding:0;position:absolute;top:58.2%;left:10.4728%}.ptt-mark{color:#0000;letter-spacing:.14em;text-shadow:none;pointer-events:none;opacity:0;background:0 0;border:1px solid #0000;border-radius:999px;padding:.12em .45em;font-size:clamp(10px,1.15vw,13px);font-weight:750;line-height:1.3;position:absolute;top:49.201%;left:25.332%;transform:translate(-50%,-50%)}#mic-ptt.is-live{box-shadow:none;background:0 0;border-color:#0000}#mic-ptt.is-live .ptt-mark{color:#0000;opacity:0;background:0 0;border-color:#0000}.vfo{z-index:2;width:9.336%;position:absolute;top:75.664%;left:75.045%}.vfo-knob{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:0 0;border:0;border-radius:50%;width:100%;position:relative}.vfo-knob:focus-visible{outline:1px solid var(--amber);outline-offset:3px}.vfo-knob:active{cursor:grabbing}.vfo-rotor{transform-origin:50%;transform:rotate(var(--vfo-turn,0deg));pointer-events:none;border-radius:50%;position:absolute;inset:0}.vfo-index{background:#f3d48af2;border-radius:1px;width:3px;height:9%;position:absolute;top:10%;left:calc(50% - 1.5px);box-shadow:0 0 3px #f3d48abf}@media (width>=801px){.ptt-fallback{display:none}}.screen{--lcd:#d7eef8;--lcd-dim:#96b2c46b;--lcd-line:#96c4dc47;width:28.4859%;height:22.1041%;color:var(--lcd);text-shadow:none;background:linear-gradient(#0714226b,#030a12b8);flex-direction:column;justify-content:stretch;gap:0;padding:0;display:flex;position:absolute;top:64.7184%;left:36.7445%;overflow:hidden;container-type:size}.lcd{flex:auto;grid-template-rows:auto auto auto minmax(2.8em,1.85fr) minmax(1.8em,1.25fr) auto;gap:.28cqh;min-height:0;padding:3.5cqh 3cqw 1.4cqh;display:grid}.lcd-row{align-items:center;gap:.35em;min-width:0;min-height:0;display:flex;overflow:hidden}.lcd-head,.lcd-flags,.lcd-modes{letter-spacing:.04em;text-transform:uppercase;font-size:clamp(7px,4.4cqh,11px)}.lcd-modes{flex:auto;gap:.35em;min-width:0;display:flex;overflow:hidden}.lcd-chip,.lcd-modes span{flex:none}.lcd [data-state=inactive]{color:var(--lcd-dim);pointer-events:none}.lcd-chip[data-state=active]{color:#f4fbff;border:1px solid #c6e6f8bf;padding:0 .28em;line-height:1.3}.dial,.air,.link,#error{margin:0}.lcd-freq{grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:.45em;display:grid}.dial{letter-spacing:.02em;color:#f7fcff;text-shadow:0 0 8px #b4dcff59;font-variant-numeric:tabular-nums;font-size:clamp(15px,13cqh,34px);font-weight:650;line-height:.9}.dial-rest{opacity:.82;font-size:.62em}.air,.link{letter-spacing:.04em;text-transform:uppercase;color:#bedcecb8;white-space:nowrap;font-size:clamp(7px,4.6cqh,12px)}.air.is-live{color:#d8ffe4}.lcd-scales{grid-template-columns:1.15fr .7fr .95fr;gap:.4em;display:grid}.mic-meter{letter-spacing:.04em;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:.35em;min-width:0;font-size:clamp(6px,3.6cqh,10px);display:grid}.mic-meter:not(.is-live){opacity:.4}.mic-bar{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:1px;min-width:0;height:.9em;display:grid}.mic-seg{background:#82a0b429;border-radius:1px;min-width:0;display:block}.mic-meter.is-live .mic-seg-green.is-lit{background:#3dff7a;box-shadow:0 0 4px #3dff7ad9}.mic-meter.is-live .mic-seg-amber.is-lit{background:#ffc14a;box-shadow:0 0 4px #ffc14ad9}.mic-meter.is-live .mic-seg-red.is-lit{background:#ff4d3a;box-shadow:0 0 4px #ff4d3ae6}.scale{letter-spacing:.04em;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);column-gap:.35em;min-width:0;font-size:clamp(6px,3.6cqh,10px);display:grid}.scale-name{grid-row:1/span 2;align-self:center}.scale-track{border:1px solid var(--lcd-line);background:#00000047;height:.45em}.scale-ticks{color:var(--lcd-dim);white-space:nowrap;overflow:hidden}.lcd-scope,.lcd-fall{border:1px solid var(--lcd-line);background:#00060c59;min-height:0;position:relative;overflow:hidden}.lcd-scope{display:block}.scope-canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.region-name,.scope-mode{z-index:1;pointer-events:none}.region-name{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;max-width:calc(100% - 4.5em);color:var(--lcd-dim);font-size:clamp(6px,3.4cqh,10px);position:absolute;top:.15em;left:.35em;overflow:hidden}.scope-sim{letter-spacing:.12em;color:#dceef8c7;border:1px solid #bedcec73;margin-left:.35em;padding:0 .22em}.scope-mode{margin-left:.35em}.scope-span{z-index:1;color:inherit;font:inherit;letter-spacing:.06em;text-transform:uppercase;pointer-events:auto;background:#0008108c;border:1px solid #96c4dc73;border-radius:2px;margin:0;padding:0 .28em;font-size:clamp(6px,3.2cqh,10px);line-height:1.45;position:absolute;top:.12em;right:.2em}.lcd-flags{grid-template-columns:minmax(0,1fr) auto;font-size:clamp(6px,3.8cqh,10px);display:grid}.lcd-chips,.lcd-live{gap:.35em;min-width:0;display:flex;overflow:hidden}.lcd-live{overflow:visible}.meter b{color:#f7fcff;font-weight:650}.k{color:#bedcec8c}.lamp{letter-spacing:.12em;opacity:.28;font-weight:750}.screen.is-joined:not(.is-tx) .lamp-rx{color:#9dff78;opacity:1;text-shadow:0 0 8px #9dff78d9}.screen.is-tx .lamp-tx{color:#ff6d5c;opacity:1;text-shadow:0 0 8px #ff6d5ce6}#power{z-index:2;color:#0000;touch-action:manipulation;background:0 0;border:0;border-radius:4px;width:4.15%;height:3.15%;padding:0;position:absolute;top:61.15%;left:20.35%}#power:disabled{opacity:1;cursor:wait}#power:focus-visible{outline:1px solid var(--amber);outline-offset:2px}#power[data-state=failed]{box-shadow:inset 0 0 0 1px #ff5c49}.power-led{pointer-events:none;background:#0c1210;border-radius:1px;width:74%;height:26%;position:absolute;top:11%;left:14%;box-shadow:inset 0 0 0 1px #00000073}#power[data-state=on] .power-led{background:#39f56a;box-shadow:0 0 8px #39f56af2}#power[data-state=pending] .power-led{background:#1f6b38;animation:1.2s ease-in-out infinite power-wait}#power[data-state=failed] .power-led{background:#ff5c49;box-shadow:0 0 8px #ff5c49e6}.power-name{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes power-wait{50%{opacity:.35}}#ptt{border:1px solid var(--line);background:var(--glass);color:var(--amber);text-shadow:none;border-radius:4px}button:focus-visible{outline:1px solid var(--amber);outline-offset:1px}#turnstile{flex:none;justify-content:center;min-height:0;display:flex;overflow:hidden}#turnstile[hidden]{display:none}#ptt{letter-spacing:.08em;text-transform:uppercase;touch-action:none;-webkit-user-select:none;user-select:none;flex:none;width:100%;min-height:28px;padding:.35em .4em;font-size:clamp(9px,6cqh,16px);font-weight:750;line-height:1.2}#ptt.is-live{color:#fff4f1;background:#8a1c16eb;border-color:#ffb2a6}#error{min-height:0;max-height:2.4em;color:var(--danger);text-shadow:none;flex:none;font-size:clamp(8px,5cqh,12px);line-height:1.15;overflow:auto}#error:not(:empty){min-height:1.15em;padding:0 3cqw 1.5cqh}.screen:has(#turnstile:not([hidden])){overflow:auto}@media (width<=800px){html,body{height:auto;min-height:100%;overflow:auto}body{display:block}.stage{aspect-ratio:auto;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;min-height:100vh;display:flex}.scene{object-fit:cover;object-position:center 72%;width:100%;height:100%;position:absolute;inset:0}.screen{z-index:1;background:#040c14e0;border:1px solid #96c4dc59;border-radius:12px;order:1;gap:8px;width:min(440px,100% - 20px);height:auto;margin:12px 10px 8px;padding:14px 14px 12px;position:relative;top:auto;left:auto;box-shadow:0 12px 40px #00000059;container-type:inline-size}.lcd{grid-template-rows:auto auto auto 112px 84px auto;padding:0}.lcd-flags,.lcd-chips{overflow:visible}.lcd-chips{flex-wrap:wrap}.dial{font-size:2rem}.air,.link,.lcd-head,.lcd-flags,.lcd-modes,#error{font-size:.75rem}#error:not(:empty){padding:0}#power{color:#f4fbff;background:#040c14e0;border:1px solid #96c4dc73;border-radius:8px;order:2;justify-content:center;align-items:center;width:min(440px,100% - 20px);height:48px;margin:0 10px 12px;display:flex;position:relative;top:auto;left:auto}.power-led{width:36px;height:8px;top:50%;left:14px;transform:translateY(-50%)}.power-name{clip:auto;letter-spacing:.14em;width:auto;height:auto;font-size:.85rem;font-weight:750;position:static;overflow:visible}#ptt,.ptt-fallback{min-height:72px;font-size:1rem;display:block}#mic-ptt,.vfo{display:none}}.diagnostics{z-index:40;color:#d7f6c8;width:min(360px,100vw - 16px);font-size:12px;line-height:1.35;position:fixed;top:8px;left:8px}.diagnostics button,.diagnostics-panel,#diagnostics-panel{background:#1c1915;border:1px solid #f3d48ab3;border-radius:6px}#diagnostics-toggle,#diagnostics-copy{min-height:36px;padding:6px 10px}#diagnostics-panel{max-height:min(50vh,420px);margin-top:6px;padding:8px;overflow:auto}#diagnostics-panel dl{grid-template-columns:7.5em 1fr;gap:2px 8px;margin:0 0 8px;display:grid}#diagnostics-panel dt{color:#f3d48a}#diagnostics-panel dd{overflow-wrap:anywhere;margin:0}#diagnostics-copy{width:100%;display:block}#diagnostics-copy-status{min-height:1.2em;margin:0 0 6px}#diagnostics-report{white-space:pre-wrap;-webkit-user-select:text;user-select:text;max-height:180px;margin:8px 0 0;overflow:auto}
