:is(html:has(.vb),body:has(.vb)){background:#e6ebf2}.app:has(.vb){background:#f3f6fa}.vb{--bg:#f3f6fa;--card:#fff;--ink:#0f1b2d;--ink-2:#56637a;--ink-3:#8a95a8;--line:#d9e0ea;--blue:#1846a3;--blue-bg:#e8eefa;--ok:#1a7f4b;--ok-bg:#e2f3e9;--bad:#c0362c;--bad-bg:#fbe9e6;--r:16px;background:var(--bg);color:var(--ink);min-height:100dvh}.vb :focus-visible{outline-offset:2px;outline:3px solid #6a97ee}.vb-screen{min-height:100dvh;padding:calc(env(safe-area-inset-top) + 10px) max(16px, env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 14px) max(16px, env(safe-area-inset-left));flex-direction:column;gap:12px;display:flex}.vb-steps{border-bottom:1px solid var(--line);align-items:center;gap:6px;min-height:32px;margin:0;padding:0 0 10px;list-style:none;display:flex}.vb-steps li{color:var(--ink-3);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.vb-steps li+li{flex:1}.vb-steps li+li:before{content:"";background:var(--line);flex:1;min-width:4px;height:1.5px;margin-right:1px}.vb-steps i{width:20px;height:20px;box-shadow:inset 0 0 0 1.5px var(--line);background:var(--card);border-radius:50%;flex:none;place-items:center;font-size:11px;font-style:normal;font-weight:700;display:grid}.vb-steps svg{fill:none;stroke:#fff;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.vb-steps .is-done{color:var(--ink-2)}.vb-steps .is-done i{background:var(--blue);box-shadow:none}.vb-steps .is-done+li:before{background:var(--blue)}.vb-steps .is-now{color:var(--blue);font-weight:700}.vb-steps .is-now i{background:var(--blue);color:#fff;box-shadow:0 0 0 3px var(--blue-bg)}@media (max-width:379px){.vb-steps{gap:4px}.vb-steps li{gap:4px;font-size:11px}.vb-steps i{width:18px;height:18px;font-size:10px}}.vb-btn{cursor:pointer;text-align:center;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:56px;padding:0 20px;font-size:18px;font-weight:650;text-decoration:none;display:flex;position:relative}.vb-btn-main{background:var(--blue);color:#fff}.vb-btn-main:active:not(:disabled){background:#123a8a}.vb-btn-main:disabled{color:#7c889b;cursor:default;background:#cfd7e3}.vb-btn-line{background:var(--card);color:var(--blue);box-shadow:inset 0 0 0 1.5px #b9c6dd}.vb-btn.is-busy{opacity:.6}.vb-link{min-height:44px;color:var(--blue);cursor:pointer;align-items:center;gap:7px;padding:0 6px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.vb-link svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.vb-err{color:var(--bad);text-align:center;font-size:14px}.vb-select{text-align:left;border-radius:var(--r);background:var(--card);width:100%;min-height:62px;box-shadow:inset 0 0 0 1px var(--line);align-items:center;gap:10px;padding:8px 12px 8px 16px;display:flex}.vb-select-text{flex:1;gap:1px;min-width:0;display:grid}.vb-select small{color:var(--ink-2);font-size:12px;font-weight:600}.vb-select b{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:19px;font-weight:700;overflow:hidden}.vb-select-mm{background:var(--blue-bg);color:var(--blue);border-radius:8px;flex:none;padding:5px 9px;font-size:13px;font-weight:650}.vb-select svg{fill:none;width:24px;height:24px;stroke:var(--ink-2);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.vb-capture:not([data-cam=blocked]){height:100dvh;min-height:480px}.vb-camwrap{flex:1 1 0;justify-content:center;align-items:flex-start;min-height:0;display:flex;container-type:size}.vb-capture[data-cam=blocked] .vb-camwrap{flex:none;container-type:normal}.vb-cam{aspect-ratio:var(--a);height:min(100cqh, calc(100cqw / var(--a)));box-shadow:0 0 0 1px var(--line), 0 14px 30px -18px #0f1b2d80;background:#101826;border-radius:20px;flex:none;position:relative;overflow:hidden}.vb-feed{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vb-feed.mirror{transform:scaleX(-1)}.vb-guide{pointer-events:none;position:absolute;inset:0}.vb-guide path{fill:none;stroke-linecap:round;stroke-linejoin:round}.vb-g-shadow{stroke:#0f1b2d59;stroke-width:5px}.vb-g-head{stroke:#fff;stroke-width:2.5px;stroke-dasharray:9 8;transition:stroke .2s}.vb-g-corners{stroke:#fff;stroke-width:3px}.vb-g-band rect{fill:#ffffff8c}.vb-cam.tone-go .vb-g-band rect{fill:#7be0a4cc}.vb-g-level path{stroke:#ffffffb3;stroke-width:1px;stroke-dasharray:3 5}.vb-g-level text{fill:#fff;font:600 10.5px var(--font);letter-spacing:.03em;paint-order:stroke;stroke:#0f1b2d80;stroke-width:2.5px}.vb-cam.tone-go{box-shadow:0 0 0 3px var(--ok), 0 14px 30px -18px #0f1b2d80}.vb-cam.tone-go .vb-g-head{stroke:#7be0a4;stroke-dasharray:none;stroke-width:3px}.vb-cam.tone-go .vb-g-corners{stroke:#7be0a4}.vb-cam.is-off{background:var(--blue-bg);border-radius:12px;width:172px;height:auto;margin-top:6px;box-shadow:inset 0 0 0 1px #c7d4ec}.vb-cam.is-off .vb-feed,.vb-cam.is-off .vb-g-shadow,.vb-cam.is-off .vb-g-level text,.vb-cam.is-off .vb-g-band{display:none}.vb-cam.is-off .vb-g-head{stroke:var(--blue);stroke-width:2px;stroke-dasharray:6 5}.vb-cam.is-off .vb-g-corners{stroke:#9db2dc;stroke-width:2px}.vb-cam.is-off .vb-g-level path{stroke:#7f97c9}.vb-panel{justify-items:center;gap:8px;margin-top:auto;display:grid}.vb-headline{letter-spacing:-.015em;text-align:center;min-height:28px;font-size:24px;font-weight:700;line-height:1.15}.vb-headline.tone-go{color:var(--ok)}.vb-dots{flex-wrap:wrap;justify-content:center;gap:4px 12px;min-height:18px;margin-bottom:4px;display:flex}.vb-dots li{color:var(--ink-2);align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.vb-dots i{background:#c3ccd9;border-radius:50%;width:8px;height:8px}.vb-dots .ok i{background:var(--ok)}.vb-dots .bad i{background:var(--bad)}.vb-dots .bad{color:var(--bad)}.vb-links{justify-content:center;gap:18px;width:100%;display:flex}.vb-anyway{min-height:36px;color:var(--ink-2);text-underline-offset:4px;margin-top:-6px;text-decoration:underline}.vb-panel .vb-err{margin:0}@media (max-height:720px){.vb-capture{padding-top:calc(env(safe-area-inset-top) + 8px);padding-bottom:calc(env(safe-area-inset-bottom) + 8px);gap:8px}.vb-capture .vb-steps{padding-bottom:7px}.vb-capture .vb-select{min-height:46px;padding-top:4px;padding-bottom:4px}.vb-capture .vb-select small{display:none}.vb-capture .vb-select b{font-size:17px}.vb-capture .vb-panel{gap:5px}.vb-capture .vb-headline{min-height:24px;font-size:21px}.vb-capture .vb-dots{gap:2px 9px;margin-bottom:2px}.vb-capture .vb-dots li{font-size:11.5px}.vb-capture .vb-panel .vb-btn{min-height:50px}.vb-capture .vb-link{min-height:40px}.vb-capture .vb-anyway{min-height:30px;margin-top:-8px}}.vb-fallback{gap:12px;margin-top:10px;display:grid}.vb-fallback h1{letter-spacing:-.02em;font-size:28px;line-height:1.12}.vb-fallback p{color:var(--ink-2);font-size:16px;line-height:1.45}.vb-fallback .vb-btn{margin-top:2px}.vb-fallback .vb-tip{background:var(--blue-bg);color:#2c426e;border-radius:12px;padding:12px 14px;font-size:14px}.vb-fallback .vb-err{color:var(--bad)}.vb-sheet-wrap{z-index:10;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.vb-sheet-shade{background:#0f1b2d73;width:100%;height:100%;animation:.18s ease-out vb-fade;position:absolute;inset:0}.vb-sheet{width:min(100vw,430px);max-height:86dvh;padding:8px 16px calc(env(safe-area-inset-bottom) + 16px);background:var(--card);border-radius:22px 22px 0 0;animation:.22s ease-out vb-up;position:relative;overflow-y:auto;box-shadow:0 -10px 40px -10px #0f1b2d66}.vb-sheet-grip{background:#cdd5e1;border-radius:2px;width:40px;height:4px;margin:0 auto 14px}.vb-sheet h2{letter-spacing:-.015em;margin-bottom:8px;font-size:21px;font-weight:700}.vb-sheet li+li{border-top:1px solid var(--line)}.vb-sheet li button{text-align:left;align-items:center;gap:12px;width:100%;min-height:64px;padding:8px 2px;display:flex}.vb-sheet li i{border-radius:50%;flex:none;width:22px;height:22px;box-shadow:inset 0 0 0 2px #b4bfd0}.vb-sheet li .on i{box-shadow:inset 0 0 0 7px var(--blue)}.vb-sheet li span{flex:1;gap:2px;min-width:0;display:grid}.vb-sheet li b{font-size:17px;font-weight:650}.vb-sheet li small{color:var(--ink-2);font-size:13px}.vb-sheet li em{color:var(--ink-2);font-variant-numeric:tabular-nums;flex:none;font-size:14px;font-style:normal;font-weight:600}.vb-sheet li .on em{color:var(--blue)}@keyframes vb-fade{0%{opacity:0}}@keyframes vb-up{0%{opacity:0;transform:translateY(40px)}}.vb-review{padding-bottom:calc(env(safe-area-inset-bottom) + 104px);gap:14px}.vb-ticket{border-radius:var(--r);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);border-top:4px solid var(--blue);grid-template-columns:112px 1fr;align-items:start;gap:16px;padding:16px 14px 14px;display:grid}.vb-ticket.is-ok{border-top-color:var(--ok)}.vb-ticket.is-bad{border-top-color:var(--bad)}.vb-ticket figure{gap:6px;margin:0;display:grid}.vb-ticket-photo{background:#fff;padding:4px;box-shadow:0 0 0 1px #b9c3d2,0 6px 14px -8px #0f1b2d73}.vb-ticket-photo img{object-fit:cover;width:100%;height:100%;display:block}.vb-ticket figcaption{color:var(--ink-2);text-align:center;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.vb-ticket-text{min-width:0}.vb-ticket-doc{color:var(--ink-2);font-size:13px;font-weight:600}.vb-ticket h1{letter-spacing:-.02em;margin-top:2px;font-size:25px;line-height:1.1}.vb-ticket.is-ok h1{color:var(--ok)}.vb-ticket.is-bad h1{color:var(--bad)}.vb-ticket-count{margin-top:10px;font-size:15px;font-weight:650}.vb-meter{gap:3px;margin-top:6px;display:flex}.vb-meter i{background:#cdd5e1;border-radius:3px;flex:1;height:6px}.vb-meter .ok{background:var(--ok)}.vb-meter .bad{background:var(--bad)}.vb-ticket-note{color:var(--ink-2);margin-top:10px;font-size:13px;line-height:1.35}.vb-reasons{border-radius:var(--r);background:var(--bad-bg);padding:14px 16px}.vb-reasons h2,.vb-group h2{font-size:15px;font-weight:700}.vb-reasons h2{color:#8c261d;margin-bottom:6px}.vb-reasons ol{counter-reset:r;margin:0;padding:0;list-style:none}.vb-reasons li{counter-increment:r;gap:1px;padding:7px 0 7px 30px;display:grid;position:relative}.vb-reasons li:before{content:counter(r);background:var(--bad);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid;position:absolute;top:8px;left:0}.vb-reasons b{font-size:15px;font-weight:650;line-height:1.3}.vb-reasons span{color:#4a2520;font-size:15px;line-height:1.35}.vb-group{border-radius:var(--r);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);padding:12px 14px 4px}.vb-group h2{justify-content:space-between;align-items:baseline;padding-bottom:6px;display:flex}.vb-group h2 span{font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.vb-group h2 .ok{color:var(--ok)}.vb-group h2 .bad{color:var(--bad)}.vb-group li{border-top:1px solid #e9edf3;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.vb-mark{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.vb-mark svg{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.vb-group .ok .vb-mark{background:var(--ok-bg)}.vb-group .ok .vb-mark svg{stroke:var(--ok)}.vb-group .bad .vb-mark{background:var(--bad)}.vb-group .bad .vb-mark svg{stroke:#fff}.vb-group .skip .vb-mark{background:#e6ebf2}.vb-group .skip .vb-mark svg{stroke:var(--ink-3)}.vb-row{gap:1px;min-width:0;display:grid}.vb-row b{font-size:15px;font-weight:600;line-height:1.3}.vb-row small{color:var(--ink-2);font-size:12.5px;line-height:1.3}.vb-group .bad .vb-row small{color:var(--bad)}.vb-fine{color:var(--ink-2);font-size:13px;line-height:1.4}.vb-numbers{color:var(--ink-2);font-size:13px}.vb-numbers summary{cursor:pointer;min-height:32px}.vb-numbers pre{white-space:pre-wrap;background:#e6ebf2;border-radius:12px;margin:6px 0 0;padding:10px 12px;font:12px/1.5 ui-monospace,Menlo,monospace}.vb-actions{z-index:3;width:min(100vw,430px);padding:12px max(16px, env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 12px) max(16px, env(safe-area-inset-left));background:var(--card);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 20px -16px #0f1b2d66}.vb-stub-card{background:var(--card);box-shadow:inset 0 0 0 1px var(--line);border-radius:20px;gap:12px;margin:auto 0;padding:24px 20px;display:grid}.vb-stub-card h1{letter-spacing:-.02em;font-size:28px;line-height:1.12}.vb-stub-card p{color:var(--ink-2);font-size:17px;line-height:1.45}.vb-stub-actions{gap:10px;margin-top:10px;display:grid}.vb-stub-mark{background:var(--blue-bg);border-radius:8px;place-items:end center;width:56px;height:72px;margin-bottom:4px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #c7d4ec}.vb-stub-mark svg{fill:none;width:44px;height:55px;stroke:var(--blue);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:4 3.5}.vb-spinner{border:5px solid var(--blue-bg);border-top-color:var(--blue);border-radius:50%;width:48px;height:48px;margin-bottom:4px;animation:.9s linear infinite spin}@media (prefers-reduced-motion:reduce){.vb-spinner{animation-duration:3s}.vb-sheet,.vb-sheet-shade{animation:none}}.vb-done{gap:14px}.vb-done-head h1{letter-spacing:-.02em;font-size:26px;line-height:1.12}.vb-done-head p{color:var(--ink-2);margin-top:4px;font-size:15px;line-height:1.4}.vb-card{border-radius:var(--r);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);padding:14px}.vb-card h2{justify-content:space-between;align-items:baseline;gap:10px;font-size:15px;font-weight:700;display:flex}.vb-card h2 span{color:var(--blue);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:650}.vb-photo{grid-template-columns:132px 1fr;align-items:center;gap:16px;display:grid}.vb-photo figure{gap:6px;margin:0;display:grid}.vb-photo canvas{background:#fff;width:100%;height:auto;padding:4px;display:block;box-shadow:0 0 0 1px #b9c3d2,0 6px 14px -8px #0f1b2d73}.vb-photo figcaption,.vb-sheet-cap{color:var(--ink-2);text-align:center;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.vb-photo-doc{color:var(--ink-2);font-size:13px;font-weight:600}.vb-photo-name{letter-spacing:-.015em;margin-top:2px;font-size:21px;font-weight:700;line-height:1.15}.vb-photo-note{color:var(--ink-2);margin-top:8px;font-size:13px;line-height:1.4}.vb-photo-note.is-bad{color:var(--bad)}.vb-asis{border-radius:var(--r);background:var(--blue-bg);color:#2c426e;padding:12px 14px;font-size:14.5px;line-height:1.45}.vb-asis b{color:#1b3160;margin-bottom:2px;font-size:15px;font-weight:700;display:block}.vb-sheetview{background:#e6ebf2;border-radius:12px;justify-items:center;margin:12px auto 0;padding:14px;display:grid}.vb-sheetview canvas{background:#fff;max-width:100%;height:auto;display:block;box-shadow:0 0 0 1px #c3ccd9,0 10px 22px -14px #0f1b2d99}.vb-sheetview.is-tall canvas{max-width:72%}.vb-sheet-cap{text-align:left;margin-top:10px;font-size:13px;font-weight:500;line-height:1.4}.vb-done-actions{gap:10px;margin-top:2px;display:grid}.vb-photo img{background:#fff;width:100%;height:auto;padding:4px;display:block;box-shadow:0 0 0 1px #b9c3d2,0 6px 14px -8px #0f1b2d73}.vb-note{background:var(--blue-bg);color:#2c426e;border-radius:12px;padding:10px 12px;font-size:14.5px;line-height:1.4}.vb-note.is-bad{background:var(--bad-bg);color:#8f2a22}.vb-send{color:var(--ink-2);font-size:13.5px;line-height:1.4}.vb-status{border-radius:var(--r);background:var(--card);grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:14px;display:grid;box-shadow:inset 0 0 0 1.5px #b9c6dd}.vb-status .vb-spinner{border-width:4px;width:36px;height:36px;margin:0}.vb-status b{font-size:16px;font-weight:700}.vb-status p{color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:2px;font-size:13.5px;line-height:1.4}.vb-pay,.vb-pay form{gap:10px;display:grid}.vb-pay h2 span{font-size:19px;font-weight:750}.vb-pay>p{color:var(--ink-2);font-size:14px;line-height:1.45}.vb-pay a.vb-btn{text-decoration:none}.vb-pay .vb-fine a{color:var(--blue)}.vb-field{color:var(--ink-2);gap:6px;font-size:13px;font-weight:600;display:grid}.vb-field input{width:100%;min-height:50px;font:inherit;color:var(--ink);background:#fff;border:0;border-radius:12px;padding:0 14px;font-size:17px;font-weight:500;box-shadow:inset 0 0 0 1.5px #b9c6dd}.vb-field input:focus{box-shadow:inset 0 0 0 2px var(--blue);outline:none}.vb-done-back{justify-self:center}.vb-icao{color:var(--ink-2);margin-top:8px;font-size:13px;line-height:1.4}.vb-icao p{margin:0}.vb-icao.is-ok p:first-child{color:#1d6b3a;font-weight:600}.vb-icao.is-warn p:first-child{color:#8a5a00;font-weight:600}.vb-icao-fail{margin-top:4px}.vb-icao-doc{color:#166534;font-weight:700}
