.hswc-account-page:not(.logged-in) .woocommerce{max-width:100%!important}.hswc-account-page:not(.logged-in) .woocommerce-notices-wrapper{max-width:980px;margin:16px auto}.hswc-otp-shell{width:min(100%,1040px);margin:44px auto 72px;padding:0 20px;box-sizing:border-box;direction:rtl}.hswc-otp-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);min-height:560px;background:#fff;border:1px solid #ebe7f2;border-radius:30px;overflow:hidden;box-shadow:0 26px 80px rgba(31,19,54,.12)}
.hswc-otp-aside{position:relative;padding:52px 48px;color:#fff;background:linear-gradient(145deg,var(--hswc-primary,#6f2cff),#4b16a8 58%,var(--hswc-accent,#a400de));overflow:hidden}.hswc-otp-aside:before,.hswc-otp-aside:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.hswc-otp-aside:before{width:330px;height:330px;left:-150px;top:-140px}.hswc-otp-aside:after{width:250px;height:250px;right:-110px;bottom:-110px}.hswc-otp-aside>*{position:relative;z-index:1}.hswc-otp-aside-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);font-size:29px;font-weight:900;margin-bottom:44px}.hswc-otp-aside-kicker{display:block;font-size:12px;font-weight:800;opacity:.8;margin-bottom:10px}.hswc-otp-aside h3{font-size:31px;line-height:1.45;margin:0 0 14px;color:#fff}.hswc-otp-aside p{font-size:14px;line-height:2;margin:0;opacity:.86}.hswc-otp-aside ul{list-style:none;padding:0;margin:38px 0 0;display:grid;gap:15px}.hswc-otp-aside li{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700}.hswc-otp-aside li span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.14)}
.hswc-otp-main{padding:52px 48px;align-self:center}.hswc-otp-brandmark{display:none;width:56px;height:56px;place-items:center;border-radius:17px;background:linear-gradient(135deg,var(--hswc-primary,#6f2cff),var(--hswc-accent,#a400de));color:#fff;font-size:27px;font-weight:900;box-shadow:0 12px 28px rgba(111,44,255,.25);margin-bottom:18px}.hswc-otp-eyebrow{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f3efff;color:var(--hswc-primary,#6f2cff);font-size:12px;font-weight:900;margin-bottom:10px}.hswc-otp-heading h2{font-size:30px;line-height:1.35;margin:0 0 9px;color:#17131c}.hswc-otp-heading p{margin:0 0 28px;color:#716b78;line-height:1.9;font-size:14px}.hswc-otp-step label{display:block;font-weight:850;color:#24202a;margin:0 0 9px}.hswc-otp-step small{display:block;margin:7px 2px 0;color:#817b89}.hswc-otp-input-wrap{display:flex;align-items:center;direction:ltr;border:1.5px solid #ddd7e9;border-radius:16px;background:#fbfaff;transition:border-color .18s,box-shadow .18s,background .18s}.hswc-otp-input-wrap:focus-within{border-color:var(--hswc-primary,#6f2cff);box-shadow:0 0 0 4px rgba(111,44,255,.1);background:#fff}.hswc-otp-prefix{padding:0 14px;border-right:1px solid #e8e3ef;color:#77717f;font-weight:800}.hswc-otp-input-wrap input{border:0!important;box-shadow:none!important;background:transparent!important;width:100%;height:58px;padding:0 15px!important;font-size:17px!important;direction:ltr;text-align:left;outline:0}.hswc-otp-code{width:100%!important;height:62px!important;border:1.5px solid #ddd7e9!important;border-radius:16px!important;background:#fbfaff!important;box-shadow:none!important;text-align:center!important;direction:ltr!important;font-size:27px!important;letter-spacing:10px!important;font-weight:900!important;padding:0 14px!important;box-sizing:border-box!important;outline:none}.hswc-otp-code:focus{border-color:var(--hswc-primary,#6f2cff)!important;box-shadow:0 0 0 4px rgba(111,44,255,.1)!important;background:#fff!important}.hswc-otp-primary{width:100%;min-height:57px;border:0;border-radius:16px;margin-top:18px;background:linear-gradient(135deg,var(--hswc-primary,#6f2cff),var(--hswc-accent,#a400de));color:#fff;font:inherit;font-weight:900;font-size:15px;cursor:pointer;box-shadow:0 12px 28px rgba(111,44,255,.22);transition:transform .18s,box-shadow .18s,opacity .18s}.hswc-otp-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(111,44,255,.3)}.hswc-otp-primary:disabled{opacity:.65;cursor:wait;transform:none}.hswc-otp-primary.is-loading:after{content:"";display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;margin-right:9px;vertical-align:-2px;animation:hswcOtpSpin .7s linear infinite}@keyframes hswcOtpSpin{to{transform:rotate(360deg)}}.hswc-otp-message{margin:0 0 18px;padding:12px 14px;border-radius:13px;font-size:13px;line-height:1.7;font-weight:750}.hswc-otp-message.is-error{background:#fff1f2;color:#b42335;border:1px solid #ffd4da}.hswc-otp-message.is-success{background:#ecfdf3;color:#087a43;border:1px solid #c2f0d6}.hswc-otp-code-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.hswc-otp-code-head strong{display:block;color:#211d27}.hswc-otp-code-head small{margin:4px 0 0}.hswc-otp-link,.hswc-otp-resend{border:0;background:transparent;color:var(--hswc-primary,#6f2cff);font:inherit;font-weight:850;cursor:pointer}.hswc-otp-link{white-space:nowrap}.hswc-otp-resend{display:block;margin:14px auto 0}.hswc-otp-resend:disabled{color:#9a94a1;cursor:not-allowed}.hswc-otp-security{display:flex;gap:10px;align-items:flex-start;margin-top:25px;padding:14px 15px;border-radius:14px;background:#f8f7fb;color:#706a78}.hswc-otp-security p{margin:0;line-height:1.8;font-size:12px}.hswc-otp-legal{text-align:center;color:#918b98;font-size:11px;margin:16px 0 0}.hswc-otp-legal a{color:var(--hswc-primary,#6f2cff)}
@media(max-width:820px){.hswc-otp-shell{margin:24px auto 46px;padding:0 12px}.hswc-otp-card{display:block;min-height:0;border-radius:24px}.hswc-otp-aside{display:none}.hswc-otp-main{padding:28px 20px}.hswc-otp-brandmark{display:grid}.hswc-otp-heading h2{font-size:24px}.hswc-otp-heading p{font-size:13px}.hswc-otp-code{letter-spacing:7px!important;font-size:24px!important}}

/* 3.1.3 - non-AJAX OTP form refinements */
.hswc-otp-step{margin:0}.hswc-otp-step button[type="submit"]{appearance:none;-webkit-appearance:none}
.hswc-otp-resend-form{margin:12px 0 0;text-align:center}
.hswc-otp-resend-form .hswc-otp-resend{width:100%;min-height:44px}
.hswc-otp-message{display:block!important}
.hswc-otp-message.is-success{background:#ecfdf3;border:1px solid #abefc6;color:#067647}
.hswc-otp-message.is-error{background:#fff1f3;border:1px solid #fecdd6;color:#be123c}

/* 3.1.5 — robust desktop OTP layout, isolated from theme/WooCommerce CSS */
@media (min-width:821px){
  body.hswc-account-page:not(.logged-in) .woocommerce,
  body.hswc-account-page:not(.logged-in) .woocommerce-MyAccount-content,
  body.hswc-account-page:not(.logged-in) .entry-content,
  body.hswc-account-page:not(.logged-in) main{
    float:none!important;width:100%!important;max-width:none!important;min-width:0!important;
  }
  .hswc-otp-shell{
    display:block!important;clear:both!important;width:min(1120px,calc(100vw - 64px))!important;
    max-width:1120px!important;min-width:0!important;margin:56px auto 84px!important;padding:0!important;
    position:relative!important;right:auto!important;left:auto!important;transform:none!important;
  }
  .hswc-otp-card{
    display:grid!important;grid-template-columns:minmax(0,56%) minmax(0,44%)!important;
    width:100%!important;max-width:none!important;min-width:0!important;min-height:570px!important;
    position:relative!important;right:auto!important;left:auto!important;transform:none!important;
    overflow:hidden!important;border-radius:30px!important;box-sizing:border-box!important;
  }
  .hswc-otp-main,.hswc-otp-aside{
    position:relative!important;float:none!important;width:auto!important;max-width:none!important;min-width:0!important;
    height:auto!important;transform:none!important;inset:auto!important;box-sizing:border-box!important;
  }
  .hswc-otp-main{grid-column:1!important;grid-row:1!important;order:1!important;padding:58px 64px!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:#fff!important;color:#211d27!important;z-index:2!important}
  .hswc-otp-aside{grid-column:2!important;grid-row:1!important;order:2!important;padding:58px 52px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;z-index:1!important}
  .hswc-otp-main form,.hswc-otp-main .hswc-otp-heading,.hswc-otp-main .hswc-otp-message,.hswc-otp-main .hswc-otp-security,.hswc-otp-main .hswc-otp-legal{width:100%!important;max-width:500px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
  .hswc-otp-heading h2{font-size:32px!important}.hswc-otp-heading p{font-size:14px!important}
  .hswc-otp-input-wrap,.hswc-otp-code{width:100%!important;max-width:none!important;box-sizing:border-box!important}
  .hswc-otp-primary{width:100%!important;display:block!important}
}
@media (min-width:821px) and (max-width:1050px){
  .hswc-otp-shell{width:calc(100vw - 36px)!important}
  .hswc-otp-card{grid-template-columns:minmax(0,58%) minmax(0,42%)!important}
  .hswc-otp-main{padding:46px 38px!important}.hswc-otp-aside{padding:46px 34px!important}
  .hswc-otp-aside h3{font-size:27px!important}
}
