:root{--bg:#fff;--surface:#fff;--surface-sunken:#f6f7f9;--border:#e3e6ea;--text:#16202e;--text-dim:#5b6675;--accent:#f9a464;--accent-hover:#f2924a;--accent-ink:#3f2308;--accent-text:#9c5c15;--ok:#0f9d6e;--warn:#b4630b;--viewfinder-bg:#0d1117;--viewfinder-text:#c8d0db;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(120% 55% at 50% 0%, #fff5ec 0%, transparent 62%), var(--bg);color:var(--text);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{width:100%;max-width:560px;padding-block:20px 32px;padding-inline:16px;padding-bottom:max(32px, env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex}.header{flex-direction:column;gap:4px;display:flex}.brand{letter-spacing:.01em;align-items:center;gap:10px;font-size:1.05rem;display:flex}.brand__logo{flex:none;width:auto;height:28px}.header__sub{color:var(--text-dim);margin:0;font-size:.9rem}.main{flex-direction:column;gap:16px;display:flex}.viewfinder{aspect-ratio:1;border-radius:var(--radius);border:1px solid var(--border);background:var(--viewfinder-bg);place-items:center;width:100%;max-height:62vh;display:grid;position:relative;overflow:hidden}.viewfinder__video{width:100%;height:100%;position:absolute;inset:0}.viewfinder__video video{object-fit:cover;display:block;width:100%!important;height:100%!important}.viewfinder__video img,.viewfinder__video #qr-shaded-region{display:none!important}.viewfinder__message{z-index:2;text-align:center;max-width:34ch;color:var(--viewfinder-text);flex-direction:column;align-items:center;gap:12px;margin:0;padding:20px;font-size:.92rem;display:flex;position:relative}.viewfinder__message p{margin:0}.viewfinder__message strong{color:#fff}.reticle{aspect-ratio:1;pointer-events:none;width:72%;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.reticle__corner{border:3px solid var(--accent);width:30px;height:30px;position:absolute}.reticle__corner--tl{border-bottom:0;border-right:0;border-top-left-radius:8px;top:0;left:0}.reticle__corner--tr{border-bottom:0;border-left:0;border-top-right-radius:8px;top:0;right:0}.reticle__corner--bl{border-top:0;border-right:0;border-bottom-left-radius:8px;bottom:0;left:0}.reticle__corner--br{border-top:0;border-left:0;border-bottom-right-radius:8px;bottom:0;right:0}.reticle__sweep{background:linear-gradient(90deg, transparent, var(--accent), transparent);height:2px;animation:2.4s ease-in-out infinite sweep;position:absolute;left:8%;right:8%}@keyframes sweep{0%,to{opacity:.4;top:8%}50%{opacity:1;top:90%}}.spinner{border:2px solid #ffffff38;border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.reticle__sweep,.spinner{animation:none}}.scanner{flex-direction:column;gap:12px;display:flex}.scanner__hint{text-align:center;color:var(--text-dim);margin:0;font-size:.88rem}.scanner__controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.scanner__error{text-align:center;color:var(--warn);margin:0;font-size:.88rem}.btn{appearance:none;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn--primary:disabled{opacity:.5;cursor:not-allowed}.btn--ghost{background:var(--surface);color:var(--accent-text);border-color:#f2c79b}.btn--ghost:hover{background:#fdf3e9}.btn--ghost.is-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.is-disabled{opacity:.6;cursor:progress}:where(.btn,input):focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:18px;display:flex;box-shadow:0 1px 2px #1018280d}.card--ok{border-color:color-mix(in srgb, var(--ok) 40%, var(--border))}.card--warn{border-color:color-mix(in srgb, var(--warn) 40%, var(--border))}.card__eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin:0;font-size:.75rem}.card--ok .card__eyebrow{color:var(--ok)}.card--warn .card__eyebrow{color:var(--warn)}.card__title{margin:-8px 0 0;font-size:1.3rem;line-height:1.25}.card__body{color:var(--text-dim);margin:0;font-size:.92rem}.card__actions{flex-wrap:wrap;gap:8px;display:flex}.meta{flex-wrap:wrap;gap:8px 28px;margin:0;display:flex}.meta dt{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-size:.72rem}.meta dd{margin:2px 0 0;font-size:.95rem}.meta__mono{color:var(--accent-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.code-block{background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-dim);overflow-wrap:anywhere;border-radius:10px;margin:0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}
