/* Shared customer, business and native-hosted mobile verification. */
.otp-panel{--otp-ink:#193f37;--otp-soft:#76847d;--otp-line:#e4eae4;width:100%;max-width:470px;margin:22px auto;padding:28px;border:1px solid var(--otp-line);border-radius:24px;background:linear-gradient(145deg,#fff 65%,#fafcf6);box-shadow:0 12px 40px #163e3507;color:var(--otp-ink);text-align:left;isolation:isolate}
.otp-panel *{box-sizing:border-box}.otp-panel button{margin:0;font-family:inherit}.otp-panel [hidden]{display:none!important}.otp-panel .otp-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.otp-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #dce8ce;border-radius:16px;background:#eef5e5}.otp-icon svg,.otp-lock svg,.otp-success>span svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.otp-badge{padding:7px 10px;border:1px solid #e0e9de;border-radius:999px;background:#f6f9f2;color:#617b61;font-size:9px;font-weight:700;letter-spacing:1.25px;white-space:nowrap}
.otp-steps{display:flex;gap:20px;list-style:none;padding:0;margin:0 0 24px}.otp-steps li{display:flex;align-items:center;gap:7px;color:#99a39c;font-size:11px;font-weight:500}.otp-steps li>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#f0f3ed;color:#859187;font-size:10px}.otp-steps li[data-active]{color:var(--otp-ink)}.otp-steps li[data-active]>span{color:#fff;background:var(--otp-ink)}.otp-panel .otp-title{font-family:'Manrope',sans-serif;font-size:clamp(24px,5.5vw,30px);font-weight:650;letter-spacing:-1.1px;line-height:1.2;margin:0 0 11px}.otp-panel .otp-description{color:var(--otp-soft);font-size:13px;line-height:1.6;margin:0 0 25px;overflow-wrap:anywhere}
.otp-panel .otp-label{display:block;font-size:11px;font-weight:600;color:var(--otp-ink);margin:0 0 8px}.otp-phone-wrap{position:relative;display:flex;align-items:center;margin-top:9px}.otp-phone-symbol{position:absolute;left:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:20px;height:20px;color:#789078;font-size:22px;font-weight:400;pointer-events:none}.otp-phone-symbol svg{width:19px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.otp-panel input[data-phone]{width:100%;height:54px;padding:15px 16px 15px 46px;border:1px solid #dce4db;border-radius:12px;background:#fff;color:var(--otp-ink);font-size:16px;letter-spacing:.2px;outline:none;transition:border-color .2s,box-shadow .2s}.otp-panel input[data-phone]:focus{border-color:#8aa78a;box-shadow:0 0 0 4px #eaf2e3}.otp-panel input[data-phone]::placeholder{color:#a2ada5}.otp-panel .otp-help,.otp-panel .otp-code-help{font-size:11px;line-height:1.6;color:var(--otp-soft);margin:0 0 22px}
.otp-panel .otp-primary{width:100%;min-height:52px;border:1px solid #20483e;border-radius:12px;background:#20483e;color:#fff;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:600;box-shadow:0 5px 12px #20483e10;transition:background .2s,transform .2s,box-shadow .2s}.otp-panel .otp-primary:hover:not(:disabled){background:#2e6051;box-shadow:0 7px 15px #20483e20;transform:translateY(-1px)}.otp-panel .otp-primary:disabled{background:#e9eeea;border-color:#e9eeea;color:#9ca9a0;opacity:1;cursor:not-allowed;box-shadow:none}.otp-primary>span:last-child{font-size:19px;font-weight:400}.otp-panel .otp-link{border:0;background:none;padding:5px 0;color:#426d58;font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.otp-panel .otp-link:disabled{color:#99a39c;text-decoration:none;cursor:default;opacity:1}
.otp-destination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:11px 13px;background:#f4f7f0;border:1px solid #e8eee2;border-radius:11px}.otp-destination>span{font-size:13px;font-weight:600;letter-spacing:.3px}.otp-code-wrap{position:relative;margin-top:10px}.otp-digits{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.otp-digits>span{display:grid;place-items:center;aspect-ratio:.82;max-height:64px;min-height:44px;border:1px solid #e0e7df;border-radius:11px;background:white;font-family:'Manrope',sans-serif;font-size:25px;font-weight:600;line-height:1;color:var(--otp-ink);transition:border-color .15s,box-shadow .15s,background .15s}.otp-digits>span[data-filled=true]{background:#f8faf5;border-color:#b8cbb1}.otp-code-wrap:focus-within .otp-digits>span[data-current=true]{border-color:#74956d;box-shadow:0 0 0 3px #eaf2e3;background:#fff}.otp-panel .otp-code-input{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;color:transparent;caret-color:transparent;outline:none;box-shadow:none;font-size:16px;letter-spacing:0;cursor:text;border-radius:11px}.otp-code-input::selection{background:transparent;color:transparent}.otp-panel .otp-code-help{margin:11px 0 20px;font-size:11px}.otp-resend-row{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:16px;color:var(--otp-soft);font-size:11px}.otp-panel .otp-expiry{text-align:center;font-size:10px;margin:4px 0 0;color:#8f9b91;line-height:1.5;font-variant-numeric:tabular-nums}
.otp-panel .otp-status{font-size:11px;line-height:1.6;margin:15px 0 0;padding:0;color:#708275;min-height:0}.otp-panel .otp-status:empty{display:none}.otp-panel .otp-status[data-kind=error]{border:1px solid #f0dcd3;background:#fff7f3;color:#9d4f39;padding:10px 12px;border-radius:10px}.otp-panel .otp-status[data-kind=success]{color:#5c7b4c}.otp-panel .otp-retry{margin-top:8px}.otp-captcha{margin-top:12px;max-width:100%}.otp-captcha:empty{display:none}.otp-footer{display:flex;align-items:flex-start;gap:8px;margin-top:23px;padding-top:17px;border-top:1px solid #edf0e9}.otp-lock{flex:0 0 14px;color:#91a38d;margin-top:1px}.otp-lock svg{width:14px;height:16px}.otp-panel .otp-footer p{font-size:10px;line-height:1.75;color:#8b978e;margin:0}.otp-footer a{text-decoration:underline;text-underline-offset:2px;color:#778b75}.otp-panel[data-busy=true] .otp-primary>span:last-child{font-size:0;width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:otp-spin .8s linear infinite}.otp-panel[data-busy=true] .otp-primary{color:#708576;cursor:wait}
.otp-panel[data-phase=success] .otp-steps{display:none}.otp-panel[data-phase=success] .otp-heading{margin-bottom:24px}.otp-panel[data-phase=success] .otp-badge{background:#eaf3de;border-color:#d9e8c8;color:#678148}.otp-panel .otp-success{text-align:center;padding:16px 12px;background:#f4f8ed;border-radius:15px}.otp-success>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#e1edcf;color:#66834d;margin:0 auto 12px}.otp-panel .otp-success p{font-size:12px;line-height:1.6;color:#69825c;margin:0 0 10px}.verification-page{min-height:100dvh;background:radial-gradient(ellipse at 50% 0,#eef3e4,transparent 65%),#f8faf5}.verification-main{width:100%;max-width:540px;margin:0 auto;padding:24px 20px}.verification-brand{display:block;text-align:center;margin:6px 0 20px;font-family:'Manrope',sans-serif;font-size:26px;font-weight:800;letter-spacing:-1.5px;color:#20483e}.verification-main .otp-panel{margin:0 auto}.verification-page #mobile-status{text-align:center;font-size:12px;color:#7e8f80;line-height:1.6;margin:16px auto}.verification-main>h1{font-size:26px;letter-spacing:-1px}
@keyframes otp-spin{to{transform:rotate(360deg)}}@media(max-width:400px){.otp-panel{padding:22px 19px;border-radius:20px}.otp-digits{gap:6px}.otp-digits>span{font-size:22px;border-radius:9px}.otp-badge{font-size:8px;letter-spacing:1px}.otp-steps{gap:15px}.verification-main{padding:18px 14px}.otp-panel .otp-title{font-size:25px}}@media(prefers-reduced-motion:reduce){.otp-panel *{transition:none!important;animation:none!important}}
.phone-verification-dialog{padding:24px;width:min(530px,94vw);border-radius:28px}.phone-verification-dialog>.eyebrow,.phone-verification-dialog>#customer-title,.phone-verification-dialog>p.muted,.phone-verification-dialog>#customer-social{display:none!important}.phone-verification-dialog .otp-panel{max-width:none;margin:12px 0 0;padding:12px 4px;border:0;box-shadow:none;background:transparent}.phone-verification-dialog>.price-note{font-size:9px;margin-top:16px;color:#9aa397}
