@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}:root{--ka-green:#4f46e5;--ka-green-dark:#4338ca;--ka-green-hover:#4338ca;--ka-green-soft:#eef2ff;--ka-bg:#f4f6fb;--ka-surface:#ffffff;--ka-text:#0f172a;--ka-text-muted:#64748b;--ka-border:#e7ebf3;--ka-danger:#e11d48;--ka-shadow:0 2px 12px rgba(15,23,42,0.05);--ka-shadow-lg:0 24px 60px -20px rgba(15,23,42,0.28),0 8px 20px -12px rgba(15,23,42,0.12);--ka-radius:22px;--ka-radius-sm:13px;--ka-font:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--accent-glow:rgba(79,70,229,0.30);--success:#16a34a;--success-soft:#e7f7ec;--danger-soft:#ffe9ec}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--ka-bg);color:var(--ka-text);font-family:var(--ka-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--ka-green-dark)}button{font-family:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--ka-radius-sm);padding:14px 22px;font-size:15.5px;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:background .18s ease,transform .08s ease,box-shadow .18s ease,opacity .18s ease;text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--ka-green);color:#fff;box-shadow:0 10px 24px -8px var(--accent-glow)}.btn-primary:hover{background:var(--ka-green-hover);box-shadow:0 14px 30px -8px var(--accent-glow)}.btn-primary:disabled{background:#c7cbe0;box-shadow:none;cursor:not-allowed}.btn-ghost{background:var(--ka-green-soft);color:var(--ka-green-dark)}.btn-ghost:hover{background:#e3e8ff}.btn-danger{background:#fdecef;color:var(--ka-danger)}.btn-danger:hover{background:#fbdbe1}.btn-block{width:100%}.btn-lg{padding:17px 28px;font-size:16.5px}.card{background:var(--ka-surface);border:1px solid var(--ka-border);border-radius:var(--ka-radius);box-shadow:var(--ka-shadow)}.container{max-width:1040px;margin:0 auto;padding:24px 18px}.input{width:100%;padding:12px 14px;border:1px solid var(--ka-border);border-radius:var(--ka-radius-sm);font-size:15px;background:#fff;color:var(--ka-text)}.input:focus{outline:none;border-color:var(--ka-green);box-shadow:0 0 0 3px var(--ka-green-soft)}.label{display:block;font-size:13px;font-weight:600;color:var(--ka-text-muted);margin-bottom:6px}.verify-root{position:relative;min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(1100px 520px at 50% -8%,#eaeefc 0,rgba(234,238,252,0) 60%),linear-gradient(180deg,#f7f9fd,#eef1f8);overflow:hidden}.vf-glow{position:absolute;top:-180px;left:50%;width:620px;height:620px;transform:translateX(-50%);background:radial-gradient(circle,rgba(79,70,229,.16) 0,rgba(79,70,229,0) 70%);pointer-events:none;z-index:0}.verify-header{position:relative;z-index:1;justify-content:space-between;gap:12px;padding:18px 22px}.verify-header,.vf-brand{display:flex;align-items:center}.vf-brand{gap:11px}.verify-logo{width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,#6366f1,#4f46e5);display:grid;place-items:center;color:#fff;box-shadow:0 8px 18px -6px var(--accent-glow)}.verify-logo svg{width:19px;height:19px}.verify-title{font-size:15.5px;font-weight:650;letter-spacing:-.01em}.vf-secure{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:550;color:var(--ka-text-muted);background:rgba(255,255,255,.7);border:1px solid var(--ka-border);padding:6px 11px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vf-secure svg{width:13px;height:13px;color:var(--success)}.verify-main{position:relative;z-index:1;flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 20px 28px;gap:16px}.verify-card{width:100%;max-width:440px;background:var(--ka-surface);border:1px solid rgba(231,235,243,.9);border-radius:var(--ka-radius);box-shadow:var(--ka-shadow-lg);overflow:hidden;animation:vfCardIn .5s cubic-bezier(.22,1,.36,1) both}@keyframes vfCardIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.vf-footer{font-size:12px;color:var(--ka-text-muted);text-align:center;margin:0;max-width:360px;line-height:1.5}.stage{position:relative;width:100%;aspect-ratio:3/4;background:#0b1020;overflow:hidden}.stage video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.stage video,.stage-mask{position:absolute;inset:0}.stage-mask{pointer-events:none}.oval{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:63%;height:75%;border-radius:50%;border:2px solid rgba(255,255,255,.92);box-shadow:0 0 0 1000px rgba(8,12,28,.52),inset 0 0 30px rgba(0,0,0,.2);transition:border-color .25s ease,box-shadow .25s ease}.oval.ok{border-color:#34d399;box-shadow:0 0 0 1000px rgba(8,12,28,.52),0 0 22px rgba(52,211,153,.5)}.oval.bad{border-color:#fbbf24;box-shadow:0 0 0 1000px rgba(8,12,28,.52)}.cue{position:absolute;top:16px;left:50%;transform:translateX(-50%);background:rgba(15,23,42,.55);color:#fff;padding:10px 18px;border-radius:999px;font-size:14.5px;font-weight:550;letter-spacing:-.01em;text-align:center;max-width:86%;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;gap:8px;animation:vfCueIn .25s ease both}.cue .cue-check{width:17px;height:17px;flex:none}@keyframes vfCueIn{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.cue.success{background:rgba(22,163,74,.9);border-color:rgba(255,255,255,.25)}.vf-steps{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:2}.vf-step{width:26px;height:4px;border-radius:999px;background:rgba(255,255,255,.32);transition:background .3s ease,transform .3s ease}.vf-step.active{background:rgba(255,255,255,.85);transform:scaleY(1.4)}.vf-step.done{background:#34d399}.arrow{position:absolute;top:50%;line-height:0;color:#fff;filter:drop-shadow(0 2px 14px rgba(0,0,0,.55));animation:nudge 1.1s ease-in-out infinite}.arrow svg{width:50px;height:50px;display:block}.arrow.left{left:14px}.arrow.left,.arrow.right{transform:translateY(-50%)}.arrow.right{right:14px}.arrow.up{top:16px}.arrow.down,.arrow.up{left:50%;transform:translateX(-50%)}.arrow.down{bottom:42px;top:auto}.arrow.left svg{transform:rotate(0deg)}.arrow.right svg{transform:rotate(180deg)}.arrow.up svg{transform:rotate(90deg)}.arrow.down svg{transform:rotate(-90deg)}@keyframes nudge{0%,to{opacity:.5}50%{opacity:1}}.rec-badge{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:7px;background:rgba(225,29,72,.92);color:#fff;padding:7px 13px;border-radius:999px;font-size:13.5px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;box-shadow:0 6px 16px -6px rgba(225,29,72,.5)}.rec-dot{width:8px;height:8px;border-radius:50%;background:#fff;animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:.2}}.progress-track{position:absolute;left:0;bottom:0;height:5px;width:100%;background:rgba(255,255,255,.18)}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#4f46e5);width:0;transition:width .2s linear}.stage-actions{padding:22px 22px 24px}.vf-action-head{text-align:center;margin-bottom:18px}.vf-action-head h2{font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0 0 6px}.vf-action-head p{font-size:14px;color:var(--ka-text-muted);line-height:1.5;margin:0}.hint{text-align:center;margin:12px 0 0}.consent,.hint{font-size:12.5px;color:var(--ka-text-muted);line-height:1.5}.consent{display:flex;gap:11px;align-items:flex-start;text-align:left;margin-bottom:18px;background:#f8fafc;border:1px solid var(--ka-border);border-radius:var(--ka-radius-sm);padding:13px 14px}.consent input{margin-top:1px;width:18px;height:18px;accent-color:var(--ka-green);flex:none}.state-screen{padding:46px 30px;text-align:center;animation:vfFade .4s ease both}@keyframes vfFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.state-icon{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;font-size:36px;animation:vfPop .45s cubic-bezier(.22,1.4,.4,1) both}@keyframes vfPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.state-icon svg{width:38px;height:38px}.state-icon.ok{background:var(--success-soft);color:var(--success)}.state-icon.err{background:var(--danger-soft);color:var(--ka-danger)}.state-screen h2{margin:0 0 8px;font-size:22px;font-weight:700;letter-spacing:-.02em}.state-screen p{color:var(--ka-text-muted);margin:0 auto;max-width:320px;line-height:1.55;font-size:14.5px}.spinner{width:44px;height:44px;border:3.5px solid var(--ka-green-soft);border-top-color:var(--ka-green);border-radius:50%;margin:0 auto 18px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.admin-bg{min-height:100dvh;background:var(--ka-bg)}.admin-topbar{background:#fff;border-bottom:1px solid var(--ka-border);padding:14px 20px;justify-content:space-between}.admin-brand,.admin-topbar{display:flex;align-items:center}.admin-brand{gap:10px;font-weight:800}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:20px}.login-card{width:100%;max-width:360px;padding:28px 24px}.section-title{font-size:18px;font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:8px}.grid-2{display:grid;grid-template-columns:1fr;grid-gap:18px;gap:18px}@media (min-width:820px){.grid-2{grid-template-columns:1.3fr 1fr}}.link-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--ka-border)}.link-row:last-child{border-bottom:none}.link-url{font-size:13px;color:var(--ka-text);word-break:break-all}.badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}.badge.valid{background:var(--ka-green-soft);color:var(--ka-green-dark)}.badge.used{background:#eef0ee;color:#6a6a6a}.badge.expired{background:#fdecea;color:var(--ka-danger)}.muted{color:var(--ka-text-muted)}.mono,.muted{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.stack{flex-direction:column;gap:14px}.row,.stack{display:flex}.row{gap:10px;align-items:center;flex-wrap:wrap}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ka-text);color:#fff;padding:12px 18px;font-size:14px;box-shadow:var(--ka-shadow-lg);z-index:50}.ns-box,.toast{border-radius:var(--ka-radius-sm)}.ns-box{background:#0e120f;color:#d6e8da;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;white-space:pre-wrap;line-height:1.6}