.qba{--font-display:var(--font-baloo),var(--font-nunito),ui-rounded,system-ui,sans-serif;--font-ui:var(--font-nunito),ui-rounded,-apple-system,"Segoe UI",sans-serif;--bg:#fffdf8;--surface:#ffffff;--sunken:#f4f1e8;--ink:#14211a;--ink-2:#4a5a50;--ink-3:#66756b;--green:#0b7a38;--green-hover:#0d8a41;--green-edge:#07602b;--green-ink:#0a5c2e;--green-tint:#e8f7ec;--red:#c93122;--red-ink:#b93322;--red-tint:#fde7e2;--line:rgba(20,33,26,0.1);--line-strong:rgba(20,33,26,0.16);--ring:rgba(11,122,56,0.16);--r-md:14px;--r-lg:18px;--r-xl:24px;--push:4px;--edge-primary:0 4px 0 var(--green-edge);--edge-pressed:0 0 0 rgba(0,0,0,0);--ease:cubic-bezier(0.2,0.7,0.2,1);--t-fast:90ms;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--font-ui)}.qba svg{display:block}.qba .pane{flex:1 1;display:flex;align-items:center;justify-content:center;padding:40px 24px}.qba .stack{width:404px;max-width:100%;display:flex;flex-direction:column;gap:18px}.qba .mark{width:56px;height:56px;border-radius:18px;background:var(--green);display:grid;place-items:center;box-shadow:0 4px 0 var(--green-edge);margin-bottom:6px;flex:none}.qba .mark svg{width:32px;height:32px}.qba .head{font:800 32px/1.14 var(--font-display);letter-spacing:-.02em;margin:0 0 22px;color:var(--ink)}.qba .head.tight{margin-bottom:12px}.qba .head b{display:block;font-weight:800;color:var(--ink-3)}.qba .sub{font:600 15px/1.5 var(--font-ui);color:var(--ink-2);margin:-8px 0 6px}.qba .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;cursor:pointer;font-family:var(--font-ui);font-weight:800;font-size:18px;letter-spacing:.005em;padding:17px 28px;border-radius:var(--r-xl);width:100%;background:var(--green);color:#fff;box-shadow:var(--edge-primary);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),background var(--t-fast) linear}.qba .btn:hover:not([disabled]){background:var(--green-hover)}.qba .btn.pressed,.qba .btn:active:not([disabled]){transform:translateY(var(--push));box-shadow:var(--edge-pressed)}.qba .btn[disabled]{background:var(--sunken);color:var(--ink-2);box-shadow:0 4px 0 rgba(20,33,26,.08);cursor:not-allowed}.qba .btn.pressed[disabled]{background:var(--green);color:#fff;transform:translateY(var(--push));box-shadow:var(--edge-pressed);cursor:progress}.qba .spin{width:20px;height:20px;border-radius:999px;flex:none;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;animation:qba-sp .7s linear infinite}@keyframes qba-sp{to{transform:rotate(1turn)}}.qba .pf{display:flex;align-items:stretch;background:var(--surface);border-radius:var(--r-md);box-shadow:inset 0 0 0 2px var(--line-strong)}.qba .pf.on{box-shadow:inset 0 0 0 2px var(--green),0 0 0 4px var(--ring)}.qba .pf.bad{box-shadow:inset 0 0 0 2px var(--red)}.qba .cc{position:relative;display:flex;align-items:center;gap:7px;padding:0 13px 0 15px;font:800 15px/1 var(--font-ui);color:var(--ink-2);border-right:2px solid var(--line);flex:none;border-radius:var(--r-md) 0 0 var(--r-md)}.qba .cc .flag{font-size:18px;line-height:1}.qba .cc svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;color:var(--ink-3)}.qba .cc select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font:inherit;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.qba .cc:focus-within{color:var(--green-ink);background:var(--green-tint)}.qba .pf .num{flex:1 1;min-width:0;border:0;background:none;outline:none;padding:16px 18px;font:800 19px/1 var(--font-ui);color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.01em}.qba .pf .num::placeholder{color:var(--ink-3);font-weight:700}.qba .code{position:relative;display:flex;gap:10px}.qba .code input{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;background:none;font-size:16px;caret-color:transparent;cursor:pointer}.qba .box{flex:1 1;min-width:0;height:72px;border-radius:var(--r-lg);background:var(--surface);box-shadow:inset 0 0 0 2px var(--line-strong);display:grid;place-items:center;font:800 30px/1 var(--font-display);color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qba .box.now{box-shadow:inset 0 0 0 2px var(--green),0 0 0 4px var(--ring)}.qba .box.bad{background:var(--red-tint);box-shadow:inset 0 0 0 2px var(--red);color:var(--red-ink)}.qba .caret{width:2px;height:26px;background:var(--green);border-radius:2px;animation:qba-blink 1.1s steps(1) infinite}@keyframes qba-blink{0%,55%{opacity:1}56%,to{opacity:0}}.qba .field{width:100%;background:var(--surface);border:0;outline:none;border-radius:var(--r-md);padding:17px;box-shadow:inset 0 0 0 2px var(--line-strong);font:800 19px/1 var(--font-ui);color:var(--ink)}.qba .field::placeholder{color:var(--ink-3);font-weight:700}.qba .field:focus{box-shadow:inset 0 0 0 2px var(--green),0 0 0 4px var(--ring)}.qba .status{font:700 14px/1.4 var(--font-ui);color:var(--ink-3);text-align:center;margin:0;min-height:20px}.qba .status b{color:var(--ink-2);font-weight:800}.qba .status.no{color:var(--red-ink);font-weight:800}.qba .status button{border:0;background:none;padding:0;cursor:pointer;font:inherit;font-weight:800;color:var(--green-ink);text-decoration:underline}.qba .status button:hover{color:var(--green)}.qba .back{align-self:center;border:0;background:none;cursor:pointer;font:800 14px/1 var(--font-ui);color:var(--ink-3);padding:6px 10px;border-radius:999px}.qba .back:hover{color:var(--green-ink);background:var(--green-tint)}.qba .foot{display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 24px 22px;font:700 11px/1 var(--font-ui);letter-spacing:.05em;color:var(--ink-3)}.qba .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.qba .m-short{display:none}@media (max-width:520px){.qba .m-long{display:none}.qba .m-short{display:inline}.qba .pane{align-items:flex-start;padding:64px 22px 32px}.qba .head{font-size:28px}.qba .sub{font-size:14px}.qba .code{gap:7px}.qba .box{height:60px;font-size:25px}.qba .caret{height:22px}.qba .status{font-size:13px}}@media (prefers-reduced-motion:reduce){.qba .btn,.qba .caret,.qba .spin{transition:none;animation:none}}