.candidate-otp-modal-shell{background:transparent;max-width:min(calc(100vw - 32px),520px);overflow:hidden;width:min(calc(100vw - 32px),520px)}.otp-modal[data-v-8ed58e54]{background:linear-gradient(180deg,#f7faff,#e6f0ff);color:#1a2332;padding:30px;position:relative;width:100%}.otp-modal__close[data-v-8ed58e54]{background:#0066cc14;border:0;border-radius:999px;color:#06c;cursor:pointer;display:grid;height:36px;place-items:center;position:absolute;right:14px;top:14px;width:36px}.otp-modal__close[data-v-8ed58e54]:disabled{cursor:not-allowed;opacity:.62}.otp-modal__eyebrow[data-v-8ed58e54]{align-items:center;color:#06c;display:inline-flex;font-size:.82rem;font-weight:900;gap:8px;letter-spacing:.12em;margin-bottom:12px;text-transform:uppercase}.otp-modal__eyebrow[data-v-8ed58e54]:before{background:#08f;border-radius:999px;content:"";height:2px;width:22px}.otp-modal__eyebrow--success[data-v-8ed58e54]{justify-content:center}.otp-modal h3[data-v-8ed58e54]{font-size:clamp(1.6rem,3vw,2rem);line-height:1.05;margin:0}.otp-modal p[data-v-8ed58e54]{color:#4b5563;line-height:1.7;margin:14px 0 0}.otp-code-grid[data-v-8ed58e54]{display:grid;gap:10px;grid-template-columns:repeat(var(--otp-length),minmax(0,1fr));margin-top:24px}.otp-code-grid__input[data-v-8ed58e54]{aspect-ratio:1/1;background:#fff;border:1px solid rgba(0,102,204,.18);border-radius:18px;color:#1a2332;font-size:1.55rem;font-weight:800;min-width:0;outline:none;text-align:center;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;width:100%}.otp-code-grid__input[data-v-8ed58e54]:focus{border-color:#0066cc73;box-shadow:0 0 0 4px #0066cc1f;transform:translateY(-1px)}.otp-code-grid__input[data-v-8ed58e54]:disabled{cursor:wait;opacity:.72}.otp-modal__error[data-v-8ed58e54]{color:#d9383a;font-size:.92rem;font-weight:700;margin-top:14px}.otp-modal__actions[data-v-8ed58e54],.otp-success__actions[data-v-8ed58e54]{display:flex;justify-content:center;margin-top:24px}.otp-success[data-v-8ed58e54]{text-align:center}.otp-success__badge[data-v-8ed58e54]{animation:otp-success-pop-8ed58e54 .65s ease-out both;background:radial-gradient(circle at 30% 30%,#7ec2f6,#06c);border-radius:50%;box-shadow:0 22px 44px #0066cc3d;color:#fff;display:grid;font-size:2.7rem;height:110px;margin:6px auto 22px;place-items:center;position:relative;width:110px}.otp-success__ring[data-v-8ed58e54]{border:1px solid rgba(0,102,204,.26);border-radius:50%;inset:0;position:absolute}.otp-success__ring--outer[data-v-8ed58e54]{animation:otp-success-pulse-8ed58e54 2.2s ease-out infinite;transform:scale(1.18)}.otp-success__ring--inner[data-v-8ed58e54]{animation:otp-success-pulse-8ed58e54 2.2s ease-out .2s infinite;transform:scale(1.05)}.primary-button[data-v-8ed58e54]{align-items:center;background:linear-gradient(135deg,#06c,#0052a3);border:0;border-radius:999px;box-shadow:0 16px 32px #0066cc38;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-weight:800;gap:9px;justify-content:center;min-height:44px;padding:12px 20px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .2s ease}.primary-button[data-v-8ed58e54]:hover{box-shadow:0 18px 34px #0066cc2e;transform:translateY(-2px)}.primary-button[data-v-8ed58e54]:disabled{box-shadow:none;cursor:not-allowed;opacity:.62;transform:none}.otp-modal__resend[data-v-8ed58e54]{align-items:center;display:flex;font-size:.9rem;justify-content:center;margin-top:20px}.otp-resend-text[data-v-8ed58e54]{color:#4b5563}.otp-resend-text strong[data-v-8ed58e54]{color:#06c}.otp-resend-button[data-v-8ed58e54]{align-items:center;background:none;border:none;border-radius:999px;color:#06c;cursor:pointer;display:inline-flex;font-weight:700;gap:6px;padding:6px 12px;transition:background-color .2s ease,color .2s ease}.otp-resend-button[data-v-8ed58e54]:hover:not(:disabled){background-color:#0066cc14;color:#0052a3}.otp-resend-button[data-v-8ed58e54]:disabled{cursor:not-allowed;opacity:.5}@keyframes otp-success-pop-8ed58e54{0%{opacity:0;transform:scale(.76)}70%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes otp-success-pulse-8ed58e54{0%{opacity:.44;transform:scale(1)}to{opacity:0;transform:scale(1.34)}}@media(max-width:560px){.otp-modal[data-v-8ed58e54]{padding:24px 18px}.otp-code-grid[data-v-8ed58e54]{gap:8px}.otp-code-grid__input[data-v-8ed58e54]{font-size:1.2rem;min-height:48px}}
