:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d10;--panel:#14171c;--line:#262b33;--text:#e8eaed;--muted:#9aa3ad;--accent:#5ee6a8;--warn:#f5c25b;--bad:#ff6b6b;--radius:14px;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}.scanner{grid-template-rows:minmax(0,1fr) auto;height:100dvh;display:grid}.viewport{background:#000;position:relative;overflow:hidden}video{object-fit:cover;width:100%;height:100%}.reticle{aspect-ratio:16/10;outline-offset:-2px;border-radius:18px;outline:2px solid #ffffffd9;width:min(78vw,360px);position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #00000059}.reticle.hit{animation:.45s ease-out hit}@keyframes hit{0%{outline-color:var(--accent);background:#5ee6a840}}.topbar{padding:calc(env(safe-area-inset-top) + 12px) 16px 12px;background:linear-gradient(#000000a6,#0000);align-items:center;gap:10px;display:flex;position:absolute;inset:0 0 auto}.status-text{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.dot{background:var(--warn);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #f5c25b33}.dot[data-state=ready]{background:var(--accent);box-shadow:0 0 0 4px #5ee6a833}.dot[data-state=offline]{background:var(--bad);box-shadow:0 0 0 4px #ff6b6b33}.dot[data-state=connecting]{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.icon-button{background:#00000059;border:1px solid #ffffff4d;border-radius:999px;padding:6px 14px;font-size:14px}.icon-button[aria-pressed=true]{background:var(--text);color:var(--bg)}.camera-panel{text-align:center;background:var(--bg);color:var(--muted);place-content:center;gap:16px;padding:24px;display:grid;position:absolute;inset:0}.primary{background:var(--accent);color:#06281a;border:0;border-radius:999px;justify-self:center;padding:12px 22px;font-weight:700}.sheet{padding:14px 16px calc(env(safe-area-inset-bottom) + 14px);background:var(--panel);border-top:1px solid var(--line);grid-template-rows:auto auto minmax(0,1fr);gap:12px;max-height:46dvh;display:grid}.sheet-row{gap:6px;display:grid}.label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px}.profiles{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.profiles:empty:before{content:"Connect to your computer to see profiles";color:var(--muted);font-size:14px}.profiles:not(:empty):after{content:attr(data-pattern);white-space:nowrap;color:var(--muted);align-self:center;font:13px ui-monospace,SF Mono,Menlo,monospace}.chip{border:1px solid var(--line);background:0 0;border-radius:999px;flex:none;padding:6px 14px;font-size:14px}.chip[aria-checked=true]{border-color:var(--accent);color:var(--accent);background:#5ee6a81f}.manual{gap:8px;display:flex}.manual input{border:1px solid var(--line);background:var(--bg);min-width:0;color:var(--text);border-radius:10px;flex:1;padding:10px 12px;font:16px ui-monospace,SF Mono,Menlo,monospace}.manual button{border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:0 16px}.history{align-content:start;gap:2px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.history li{cursor:pointer;border-radius:10px;padding:8px 10px;display:grid}.history li:first-child{background:#ffffff0a}.history .code{overflow-wrap:anywhere;font:15px ui-monospace,SF Mono,Menlo,monospace}.history .meta{color:var(--muted);font-size:12px}.history li[data-status=typed] .meta{color:var(--accent)}.history li[data-status=failed] .meta{color:var(--bad)}.intro{max-width:34rem;margin:0 auto;padding:15vh 24px;line-height:1.6}.intro h1{margin:0 0 8px;font-size:28px}.intro code{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.muted{color:var(--muted)}@media (prefers-reduced-motion:reduce){.reticle.hit,.dot[data-state=connecting]{animation:none}}
