/* Input row, verification orbit, then server-confirmed collapse/checkmark. */
.studio-shell .lamp-login-stage.otp-mode{display:flex!important;flex-direction:column!important;justify-content:center;min-height:570px;max-width:1060px!important;--otp-surface:var(--pf-surface,var(--studio-surface));--otp-raised:var(--pf-raised,var(--studio-elevated));--otp-ink:var(--pf-ink,var(--studio-ink));--otp-muted:var(--pf-muted,var(--studio-muted));--otp-line:var(--pf-line,var(--studio-border));--otp-accent:var(--pf-accent,var(--studio-accent));--otp-check-bg:#eaf5ef;--otp-error:#ad3535;--lamp-white:var(--otp-ink);--lamp-muted:var(--otp-muted);--lamp-gold:var(--otp-accent);background:transparent!important;border:0!important}
.studio-shell .otp-mode>.lamp-login-heading,.studio-shell .otp-mode>.lamp-scene{display:none!important}
.studio-shell .otp-mode .lamp-login-panel{width:min(100%,470px)!important;min-height:390px;padding:26px 32px 30px!important;border-radius:26px!important;background:var(--otp-surface)!important;animation:otp-enter .35s ease-out}
.studio-shell .otp-mode .lamp-login-panel>h2,.studio-shell .otp-mode .portal-signin-help,.studio-shell .otp-mode .eyebrow,.studio-shell .otp-mode .login-note,.studio-shell .otp-mode .otp-credential,.studio-shell .otp-mode #restart-login{display:none!important}
.studio-shell .otp-mode .otp-heading{text-align:center;margin-bottom:14px;background:none;border:0;padding:0;color:var(--lamp-white)}
.studio-shell .otp-mode .otp-handle{display:block;width:36px;height:4px;background:var(--studio-control);border-radius:3px;margin:0 auto 30px}
.studio-shell .otp-mode .otp-heading .otp-title{font-size:24px!important;line-height:1.55!important;letter-spacing:-.025em!important;margin:0 0 10px!important}
.studio-shell .otp-mode .otp-description{font-size:13px!important;line-height:1.9;color:var(--otp-muted)!important;margin:0 auto;max-width:350px}
.studio-shell .otp-mode .otp-field{position:relative!important;display:block!important;border:0!important;padding:0!important;margin:0 0 20px!important;font-size:0!important}
.studio-shell .otp-mode .otp-field>summary{display:none!important}
.studio-shell .otp-mode .otp-slots{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:8px;width:100%;height:228px;direction:ltr;margin:0}
.studio-shell .otp-mode .otp-digit{display:flex;align-items:center;justify-content:center;width:100%;height:56px;border:1px solid var(--otp-line);border-radius:13px;background:var(--otp-raised);color:var(--otp-ink);font-size:27px;font-weight:500;font-variant-numeric:tabular-nums;transition:border-color .15s,background .15s;pointer-events:none}
.studio-shell .otp-mode .otp-digit.is-filled{border-color:var(--otp-accent);background:var(--studio-soft)}
.studio-shell .otp-mode .otp-slots:focus-within .otp-digit.is-current{border-color:var(--lamp-gold);outline:2px solid var(--otp-accent);outline-offset:2px}
.studio-shell.ui-refreshed .otp-mode .otp-field input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;background:transparent!important;color:transparent!important;caret-color:transparent!important;font-size:24px!important;letter-spacing:0!important;outline:none!important;box-shadow:none!important;z-index:2}
.studio-shell .otp-mode .otp-field input::placeholder{color:transparent!important}
.studio-shell .otp-mode .otp-progress{font-size:12px;color:var(--otp-muted);min-height:22px;line-height:1.8;text-align:center;margin:14px 0 6px}
.studio-shell .otp-mode .otp-back{display:block;width:100%;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--otp-muted)!important;font-size:13px!important;min-height:44px;margin:0!important}
.studio-shell .otp-mode .otp-back:hover{color:var(--lamp-gold)!important}
.studio-shell .otp-mode .lamp-login-panel :is(#notice,#loginerror){text-align:center;font-size:12px!important;line-height:1.9;overflow-wrap:anywhere;margin:10px 0 0!important;padding:0!important;border:0!important;background:none!important;color:var(--otp-muted)!important}
.studio-shell .otp-mode .lamp-login-panel #notice:empty,.studio-shell .otp-mode .lamp-login-panel #loginerror:empty{display:none!important}
.studio-shell .otp-mode .is-verifying .otp-digit{border-color:var(--lamp-gold)}
.studio-shell .otp-mode .otp-error .otp-slots{animation:otp-shake .28s ease-out}.studio-shell .otp-mode .otp-error .otp-digit{border-color:var(--otp-error)}
@keyframes otp-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

@keyframes otp-shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@media(max-width:640px){.studio-shell .lamp-login-stage.otp-mode{min-height:480px!important;padding:20px 12px!important}.studio-shell .otp-mode .lamp-login-panel{padding:22px 18px!important;border-radius:22px!important;min-height:370px}.studio-shell .otp-mode .otp-heading .otp-title{font-size:21px!important}.studio-shell .otp-mode .otp-slots{height:218px}.studio-shell .otp-mode .otp-digit{width:100%;height:48px;font-size:24px;border-radius:10px}}
@media(prefers-reduced-motion:reduce){.studio-shell .otp-mode .lamp-login-panel,.studio-shell .otp-mode .otp-digit,.studio-shell .otp-mode .otp-slots{animation:none!important;transition:none!important}}

.studio-shell .otp-mode :is(#userlogin,#loginform){display:flex!important;flex-direction:column;gap:10px!important}
.studio-shell .otp-mode :is(#userlogin,#loginform)>button.primary{width:100%;margin:0!important}
.studio-shell .otp-mode .otp-error :is(#notice,#loginerror){color:var(--otp-error)!important}


.studio-shell .lamp-login-stage:not(.otp-mode) :is(#loginform,#userlogin)>button.otp-secondary,.studio-shell .lamp-login-stage :is(#loginform,#userlogin)>button[hidden]{display:none!important}

.studio-shell .otp-mode .otp-check{position:absolute;left:50%;top:50%;width:52px;height:52px;display:grid;place-items:center;transform:translate(-50%,-50%) scale(.65);opacity:0;border:1px solid var(--studio-positive);border-radius:12px;color:var(--studio-positive);background:var(--otp-check-bg);transition:opacity .2s,transform .25s;pointer-events:none}
.studio-shell .otp-mode .otp-check svg{width:34px;height:34px}
.studio-shell .otp-mode .is-verified .otp-check{opacity:1;transform:translate(-50%,-50%) scale(1)}
.studio-shell .otp-mode .is-verified .otp-digit{visibility:hidden}
.studio-shell .otp-mode .is-verified :is(.otp-title,.otp-progress){color:var(--studio-positive)!important}
.studio-shell .otp-mode .is-verified :is(#notice,#loginerror),.studio-shell .otp-mode :is(.is-verifying,.is-verified) form>button{visibility:hidden!important;pointer-events:none}
.studio-shell .otp-mode :is(.is-verifying,.is-verified) .otp-slots:focus-within .otp-digit{outline:none}


.studio-shell .lamp-login-stage:not(.otp-mode) :is(#loginform,#userlogin) .otp-field{display:none!important}


html[data-theme=dark] .lamp-login-stage.otp-mode{--otp-check-bg:#17382b;--otp-error:#ffb3ab}
.studio-shell .lamp-login-stage.otp-mode .lamp-login-panel,.studio-shell .lamp-login-stage.otp-mode .lamp-login-panel#signin{background:var(--otp-surface)!important;border-color:var(--otp-line)!important}
.studio-shell.ui-refreshed .otp-mode .lamp-login-panel button.primary{background:var(--otp-ink)!important;color:var(--otp-surface)!important;border-color:var(--otp-ink)!important}
