.shell{max-width:1100px;margin:auto;padding:28px 24px 36px;font-size:16px;line-height:1.55}header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:26px;display:flex}.brand{align-items:center;gap:12px;font-size:23px;font-weight:750;display:flex}.brand>svg{color:var(--primary);width:34px;height:34px}.brand small{color:var(--muted-foreground);letter-spacing:.13em;font-size:12px;font-weight:500;display:block}.heading{justify-content:space-between;align-items:center;gap:16px;margin:30px 0 25px;display:flex}.eyebrow{letter-spacing:.13em;color:var(--primary);font-size:12px;font-weight:700}h1{letter-spacing:-.03em;margin-top:7px;font-size:clamp(27px,4vw,37px);font-weight:700;line-height:1.2}h2{font-size:19px;font-weight:650}.connection{color:#bac9d7;border:1px solid var(--border);white-space:nowrap;border-radius:30px;padding:5px 13px;font-size:14px}.setup{background:#182d2b;border:1px solid #416157;border-radius:16px;margin-bottom:24px;padding:24px}.setup p{color:#c0d3d2;margin:6px 0 16px}.setup label:not(.remember),form label{margin-bottom:6px;font-size:14px;display:block}.setup input{background:#101c22;max-width:650px;height:46px;font-size:16px}.remember{align-items:center;gap:10px;margin:14px 0;font-size:14px;display:flex}.workspace{grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;display:grid}.scanner{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:22px}.modes{margin-bottom:20px;width:100%!important;height:48px!important}.modes button{font-size:15px!important}.viewport{aspect-ratio:4/3;background:#0a1016;border-radius:12px;position:relative;overflow:hidden}.viewport video{object-fit:contain;width:100%;height:100%}.frame{pointer-events:none;border:2px solid #59e3ad80;border-radius:18px;position:absolute;inset:17% 22%}.camera-off{background:#0b131ddd;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.camera-off svg{color:#59e3ad}.camera-off small{color:#9aafc3;font-size:14px}.primary-action{width:100%;margin-top:16px;font-weight:650;height:50px!important;font-size:16px!important}.hint{color:var(--muted-foreground);margin-top:12px;font-size:14px}.status{color:#a7f5d6;overflow-wrap:anywhere;background:#113a30;border-radius:10px;align-items:flex-start;gap:12px;margin-top:20px;padding:17px;display:flex}.status svg{flex-shrink:0;width:22px}.status.error{color:#ffcbc7;background:#452523}.pending{background:#352e20;border:1px solid #71613b;border-radius:12px;margin-top:18px;padding:18px}.pending p{margin:10px 0;font-size:14px}.counter{color:#09251c;background:#59e3ad;border-radius:16px;margin-bottom:26px;padding:26px}.counter p{font-size:14px}.counter strong{letter-spacing:-.06em;font-size:70px;font-weight:700;line-height:1.2;display:block}.counter span{font-size:16px}aside ul{margin:12px 0 20px;padding:0;list-style:none}aside li{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:13px 0;font-size:14px;display:flex}.code{margin-right:auto;font-family:monospace;font-size:20px}aside li svg{color:var(--primary)}time{color:var(--muted-foreground)}.small,.empty{color:var(--muted-foreground);font-size:14px}.empty{padding:18px 0}.reader{text-align:center;padding:36px 10px}.reader>svg{color:var(--primary);margin:auto auto 18px}.reader p{color:var(--muted-foreground);margin:10px 0 22px}.reader form{text-align:left}.reader input{height:48px;font-size:16px}.reader form button{width:100%;height:46px;margin-top:12px}footer{color:var(--muted-foreground);justify-content:space-between;gap:14px;margin-top:24px;font-size:14px;display:flex}button{cursor:pointer}button:disabled{cursor:not-allowed}input{min-width:0}@media (width<=700px){.shell{padding:18px 14px}.workspace{grid-template-columns:1fr}.heading{align-items:flex-start}.connection{padding:5px 9px;font-size:12px}.scanner{padding:14px}.brand{font-size:20px}.brand small{font-size:10px}.heading{margin:24px 0 20px}.viewport{aspect-ratio:1}.setup{padding:18px}.counter{align-items:center;gap:16px;padding:20px;display:flex}.counter p{margin-right:auto}.counter strong{font-size:45px}footer{flex-direction:column;gap:2px}.modes button{font-size:14px!important}}
