:root{color-scheme:dark;font-family:Arial,sans-serif;color:#e6e6ec;background:#000}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#000}
.desktop{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100vw,177.777778svh);aspect-ratio:16/9;container-type:inline-size;isolation:isolate}
.desktop-film{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:0}
.screen{position:absolute;left:7.1875%;top:14.074074%;width:71.145833%;height:70.925926%;overflow:hidden;isolation:isolate;background:#000 url('./scan-assets/alien-sky-105.jpg') center/cover no-repeat;mask:url('./scan-assets/screen-aperture-104.png') 0 0/100% 100% no-repeat;-webkit-mask:url('./scan-assets/screen-aperture-104.png') 0 0/100% 100% no-repeat}
iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000;opacity:0;transition:opacity .3s}
.screen:is([data-phase=active],[data-phase=searching],[data-phase=pose-wait],[data-phase=preview]) iframe{opacity:1}
/* Each image replaces one existing key; the invisible hit area is larger. */
.keypad-controls{position:absolute;inset:0;z-index:20;pointer-events:none}
.keycap{position:absolute;top:86.2963%;width:2.4cqw;height:2.4cqw;min-width:0;min-height:0;transform:translate(-50%,-50%);display:grid;place-items:center;margin:0;padding:0;border:0;background:transparent;box-shadow:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#scan-start{left:87.4479%}#preview{left:89.8958%}#fullscreen{left:92.3438%}
.keycap img{display:block;width:1.25cqw;height:1.25cqw;object-fit:contain;pointer-events:none;user-select:none;filter:brightness(.96) saturate(.9);transition:filter .15s,transform .12s}
.keycap:hover:enabled img{filter:brightness(1.12) saturate(.95)}
.keycap:active:enabled img{transform:translateY(1px);filter:brightness(.8)}
.keycap[aria-pressed=true] img{filter:brightness(1.12) saturate(1.02)}
.keycap:focus-visible{outline:none}
.keycap:focus-visible img{outline:1px solid #d5d9ff;outline-offset:2px}
.keycap:disabled{cursor:wait}
.keycap:disabled img{filter:brightness(.6) saturate(.5)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
