.iw-passkey-overlay[hidden],.iw-passkey-step[hidden],.iw-passkey-hide-technical{display:none!important}
html.iw-passkey-lock{overflow:hidden!important}
.iw-passkey-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(22,32,52,.68);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);box-sizing:border-box}
.iw-passkey-modal{position:relative;width:min(760px,100%);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid rgba(37,99,235,.12);border-radius:34px;padding:46px 54px 38px;box-shadow:0 35px 100px rgba(2,6,23,.38);text-align:center;font-family:inherit;color:#172033;outline:none;box-sizing:border-box;direction:rtl;-webkit-overflow-scrolling:touch}
.iw-passkey-close{position:absolute;top:20px;left:20px;width:42px;height:42px;border:0;border-radius:50%;background:transparent;color:#64748b;font-size:32px;line-height:1;cursor:pointer;z-index:4;display:flex;align-items:center;justify-content:center;padding:0}
.iw-passkey-close:hover,.iw-passkey-close:focus-visible{background:#f1f5f9;color:#334155;outline:2px solid #93c5fd;outline-offset:2px}
.iw-passkey-visual{position:relative;width:108px;height:108px;margin:0 auto 24px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 10px #eef4ff,0 0 0 18px #f6f9ff;border:2px solid #c7d7fe;color:#2563eb}
.iw-passkey-visual svg{width:58px;height:58px}.iw-passkey-check{position:absolute;right:-2px;bottom:3px;width:34px;height:34px;border-radius:50%;background:#22c55e;color:#fff;border:4px solid #fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;box-sizing:border-box}
.iw-passkey-title{font-size:38px!important;line-height:1.18!important;margin:0!important;color:#172033!important;font-weight:800!important;letter-spacing:-.02em}.iw-passkey-title strong{display:block;color:#2f65db;font-weight:800;margin-top:4px}
.iw-passkey-subtitle{font-size:19px;line-height:1.6;margin:18px auto 28px;color:#475569;max-width:600px}
.iw-passkey-benefits{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 30px}.iw-passkey-benefits>div{position:relative;padding:8px 22px}.iw-passkey-benefits>div+div:before{content:"";position:absolute;right:0;top:8px;bottom:8px;width:1px;background:#dbe3f0}
.iw-passkey-benefit-icon{width:46px;height:46px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;color:#2563eb;font-size:30px}.iw-passkey-benefits strong,.iw-passkey-benefits small{display:block}.iw-passkey-benefits strong{font-size:18px;color:#1e293b;margin-bottom:5px;font-weight:800}.iw-passkey-benefits small{font-size:14px;line-height:1.45;color:#64748b}
.iw-passkey-primary,.iw-passkey-secondary{width:100%;box-sizing:border-box;font-family:inherit;cursor:pointer;border-radius:15px}.iw-passkey-primary{display:flex;min-height:64px;border:0;padding:15px 22px;background:linear-gradient(180deg,#3974eb,#245dd9);color:#fff!important;font-size:20px;font-weight:800;box-shadow:0 12px 28px rgba(37,99,235,.23);align-items:center;justify-content:center;gap:10px}.iw-passkey-primary:hover,.iw-passkey-primary:focus-visible{filter:brightness(.98);outline:3px solid #bfdbfe;outline-offset:2px}.iw-passkey-secondary{display:block;min-height:54px;margin-top:13px;border:1.5px solid #9bb8f3;background:#fff;color:#2f65db;font-size:17px;font-weight:800}.iw-passkey-secondary:hover,.iw-passkey-secondary:focus-visible{background:#f8fbff;outline:2px solid #bfdbfe;outline-offset:2px}.iw-passkey-never{display:block;margin:13px auto 0;padding:7px 10px;border:0;background:transparent;color:#5f75a8;font-family:inherit;font-size:14px;cursor:pointer}.iw-passkey-never:hover{text-decoration:underline}
.iw-passkey-error{padding:14px 16px;border-radius:12px;background:#fff4ed;border:1px solid #ffd6ae;color:#b93815;font-size:14px;line-height:1.6}
.iw-passkey-step-setup{text-align:right}.iw-passkey-back{display:flex;margin:0 0 8px auto;border:0;background:none;color:#475569;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;padding:7px}.iw-passkey-mini-icon{width:72px;height:72px;margin:0 auto 14px;border-radius:22px;background:#eef4ff;color:#2563eb;display:flex;align-items:center;justify-content:center;font-size:34px}.iw-passkey-step-setup h2,.iw-passkey-step-success h2{text-align:center;font-size:30px;line-height:1.25;margin:0 0 10px;color:#172033}.iw-passkey-lead,.iw-passkey-step-success p{text-align:center;font-size:16px;line-height:1.7;color:#475569;margin:0 auto 20px;max-width:570px}
.iw-passkey-setup-card{background:#f8fafc;border:1px solid #dfe7f1;border-radius:20px;padding:22px;margin-top:14px;direction:rtl;text-align:right;box-sizing:border-box}.iw-passkey-setup-card *{box-sizing:border-box}.iw-passkey-setup-card .wwa-register-form{display:block!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;text-align:right!important}.iw-passkey-setup-card label[for="wwa-authenticator-name"]{display:block!important;font-size:15px!important;font-weight:800!important;color:#334155!important;margin:0 0 7px!important}.iw-passkey-setup-card .wwa-authenticator-name{display:block!important;width:100%!important;min-height:54px!important;border:1px solid #cbd5e1!important;border-radius:12px!important;background:#fff!important;padding:11px 14px!important;font-family:inherit!important;font-size:17px!important;color:#0f172a!important;box-shadow:none!important;outline:none!important}.iw-passkey-setup-card .wwa-authenticator-name:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(96,165,250,.18)!important}.iw-passkey-setup-card .wwa-bind-name-description{font-size:13px!important;line-height:1.55!important;color:#64748b!important;margin:8px 0 0!important}.iw-passkey-setup-card .wwa-bind{margin:16px 0 0!important;padding:0!important;display:block!important}.iw-passkey-setup-card .wwa-bind-submit{display:block!important;width:100%!important;min-height:56px!important;border:0!important;border-radius:13px!important;background:#2563eb!important;color:#fff!important;font-family:inherit!important;font-size:17px!important;font-weight:800!important;cursor:pointer!important;margin:0!important;padding:13px 16px!important;box-shadow:0 9px 22px rgba(37,99,235,.2)!important}.iw-passkey-setup-card .wwa-bind-submit:disabled{opacity:.62!important;cursor:wait!important}.iw-passkey-setup-card .wwa-show-progress{display:block!important;min-height:22px!important;margin-top:12px!important;text-align:center!important;color:#2563eb!important;font-size:14px!important;line-height:1.5!important;font-weight:700!important}.iw-passkey-setup-card .iw-passkey-progress-error{color:#b42318!important}.iw-passkey-help{margin-top:14px;padding:12px 14px;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;color:#475569;font-size:13px;line-height:1.65;text-align:center}
.iw-passkey-step-success{padding:30px 0 14px}.iw-passkey-success-icon{width:84px;height:84px;border-radius:50%;margin:0 auto 18px;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:900}.iw-passkey-step-success .iw-passkey-primary{max-width:420px;margin:22px auto 0}
@media(max-width:700px){.iw-passkey-overlay{padding:10px max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));align-items:center}.iw-passkey-modal{width:100%;max-height:calc(100dvh - 20px);border-radius:26px;padding:36px 18px 22px}.iw-passkey-close{top:10px;left:10px;width:38px;height:38px;font-size:28px}.iw-passkey-visual{width:78px;height:78px;margin-bottom:19px;box-shadow:0 0 0 7px #eef4ff,0 0 0 12px #f6f9ff}.iw-passkey-visual svg{width:43px;height:43px}.iw-passkey-check{width:28px;height:28px;font-size:16px;border-width:3px}.iw-passkey-title{font-size:27px!important}.iw-passkey-subtitle{font-size:15px;margin:13px auto 20px}.iw-passkey-benefits{margin-bottom:22px}.iw-passkey-benefits>div{padding:4px 7px}.iw-passkey-benefit-icon{width:34px;height:34px;font-size:23px;margin-bottom:5px}.iw-passkey-benefits strong{font-size:14px}.iw-passkey-benefits small{font-size:10.5px;line-height:1.35}.iw-passkey-primary{min-height:56px;font-size:16px;padding:12px 13px}.iw-passkey-secondary{min-height:48px;font-size:15px;margin-top:9px}.iw-passkey-never{font-size:13px;margin-top:8px}.iw-passkey-step-setup h2,.iw-passkey-step-success h2{font-size:24px}.iw-passkey-lead,.iw-passkey-step-success p{font-size:14px;line-height:1.6}.iw-passkey-setup-card{padding:14px;border-radius:16px}.iw-passkey-setup-card .wwa-authenticator-name{font-size:16px!important;min-height:50px!important}.iw-passkey-setup-card .wwa-bind-submit{font-size:16px!important;min-height:52px!important}.iw-passkey-help{font-size:12px}}
@media(max-width:390px){.iw-passkey-modal{padding-left:13px;padding-right:13px}.iw-passkey-title{font-size:24px!important}.iw-passkey-benefits>div{padding-inline:3px}.iw-passkey-benefits strong{font-size:13px}.iw-passkey-benefits small{font-size:9.5px}.iw-passkey-primary{font-size:15px}}
@media(max-height:690px) and (max-width:700px){.iw-passkey-modal{padding-top:26px}.iw-passkey-visual{width:62px;height:62px;margin-bottom:12px;box-shadow:0 0 0 5px #eef4ff}.iw-passkey-visual svg{width:34px;height:34px}.iw-passkey-title{font-size:23px!important}.iw-passkey-subtitle{margin:9px auto 13px}.iw-passkey-benefits{margin-bottom:13px}.iw-passkey-benefit-icon{margin-bottom:2px}.iw-passkey-primary{min-height:50px}.iw-passkey-secondary{min-height:43px}.iw-passkey-never{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.iw-passkey-modal,.iw-passkey-primary,.iw-passkey-secondary{scroll-behavior:auto!important;transition:none!important}}
/* WooCommerce passwordless login */
.iw-passkey-password-hidden{display:none!important}
.iw-passkey-woo-login{max-width:520px;margin:24px auto;padding:30px 28px;border:1px solid #dbe5f4;border-radius:24px;background:#fff;box-shadow:0 18px 55px rgba(15,23,42,.10);text-align:center;direction:rtl;box-sizing:border-box}
.iw-passkey-woo-login[hidden]{display:none!important}.iw-passkey-login-fingerprint{width:76px;height:76px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef4ff;font-size:38px}.iw-passkey-woo-login h2{margin:0 0 8px!important;font-size:28px!important;color:#172033!important}.iw-passkey-woo-login>p{margin:0 auto 20px;color:#64748b;line-height:1.6}.iw-passkey-native-login .wwa-login-form,.iw-passkey-native-login .wwa-login-form-webauthn{display:block!important}.iw-passkey-native-login .wwa-form-left,.iw-passkey-native-login .wwa-w2t{display:none!important}.iw-passkey-native-login .wwa-login-submit-p{display:block!important;margin:0!important}.iw-passkey-native-login .wwa-login-submit{display:block!important;width:100%!important;min-height:58px!important;border:0!important;border-radius:14px!important;background:#2563eb!important;color:#fff!important;font-family:inherit!important;font-size:18px!important;font-weight:800!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(37,99,235,.22)!important}.iw-passkey-show-password{margin:14px auto 0;border:0;background:transparent;color:#475569;text-decoration:underline;font-family:inherit;font-size:14px;cursor:pointer}.iw-passkey-login-note{margin-top:16px;padding:11px 13px;border-radius:12px;background:#f8fafc;color:#64748b;font-size:12px;line-height:1.55}
@media(max-width:600px){.iw-passkey-woo-login{margin:14px 0;padding:24px 16px;border-radius:20px}.iw-passkey-woo-login h2{font-size:24px!important}.iw-passkey-native-login .wwa-login-submit{min-height:54px!important;font-size:16px!important}}

/* WooCommerce My Account - safe login */
.iw-passkey-account{max-width:760px;margin:0 auto;text-align:right;direction:rtl}
.iw-passkey-account-head{display:flex;align-items:center;gap:16px;padding:22px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;margin-bottom:18px}
.iw-passkey-account-icon{width:58px;height:58px;flex:0 0 58px;border-radius:50%;display:grid;place-items:center;background:#eef5ff;font-size:30px}
.iw-passkey-account-head h2{margin:0 0 6px;font-size:25px;line-height:1.25}
.iw-passkey-account-head p{margin:0;color:#5f6b7a}
.iw-passkey-account-status{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:14px;margin-bottom:18px;background:#effaf4;border:1px solid #bfe7cf}
.iw-passkey-account-status>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#168a4a;color:#fff;font-weight:700}
.iw-passkey-account-status strong,.iw-passkey-account-status small{display:block}.iw-passkey-account-status small{margin-top:3px;color:#4b6356}
.iw-passkey-account-register{padding:22px;border:1px solid #e5e7eb;border-radius:18px;background:#fff}
.iw-passkey-account-register h3{margin:0 0 6px;font-size:21px}.iw-passkey-account-register>p{margin:0 0 18px;color:#64748b}
.iw-passkey-account-register .wwa-authenticator-type,
.iw-passkey-account-register label[for="wwa-authenticator-type"],
.iw-passkey-account-register .wwa-bind-usernameless-description,
.iw-passkey-account-register label[for="wwa-authenticator-usernameless"]{display:none!important}
.iw-passkey-account-register .wwa-authenticator-name{display:none!important}
.iw-passkey-account-register label[for="wwa-authenticator-name"],
.iw-passkey-account-register .wwa-authenticator-name + .wwa-bind-name-description{display:none!important}
.iw-passkey-account-register .wwa-bind{margin:0}.iw-passkey-account-register .wwa-bind-submit{width:100%;min-height:50px;border:0;border-radius:12px;background:#1769e0;color:#fff;font-weight:700;font-size:16px;cursor:pointer}
.iw-passkey-account-register .wwa-show-progress{display:block;margin-top:10px;text-align:center}
.iw-passkey-account-manage{margin-top:16px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;overflow:hidden}.iw-passkey-account-manage summary{cursor:pointer;padding:15px 18px;font-weight:700}.iw-passkey-account-list{padding:0 18px 18px;overflow:auto}
.iw-passkey-account>.iw-passkey-help{margin-top:16px}
@media(max-width:600px){.iw-passkey-account-head{align-items:flex-start;padding:17px;gap:12px}.iw-passkey-account-icon{width:46px;height:46px;flex-basis:46px;font-size:24px}.iw-passkey-account-head h2{font-size:21px}.iw-passkey-account-register{padding:17px}.iw-passkey-account-register .wwa-bind-submit{min-height:52px;font-size:16px}.iw-passkey-account-status{padding:14px}}

.iw-passkey-prompt-link{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none!important;box-sizing:border-box}

/* v1.7.2 - direct native Passkey trigger on WooCommerce login */
.iw-passkey-native-login .iw-passkey-native-hidden-submit{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.iw-passkey-direct-login{display:block;width:100%;min-height:58px;margin:0;border:0;border-radius:14px;background:#2563eb;color:#fff;font-family:inherit;font-size:18px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(37,99,235,.22);transition:transform .15s ease,opacity .15s ease}
.iw-passkey-direct-login:hover{transform:translateY(-1px)}
.iw-passkey-direct-login:disabled{opacity:.68;cursor:wait;transform:none}
.iw-passkey-direct-login.is-loading::after{content:'…';display:inline-block;margin-inline-start:4px}
.iw-passkey-direct-status{min-height:22px;margin-top:10px;font-size:13px;line-height:1.55;color:#2563eb;font-weight:700;text-align:center}
.iw-passkey-direct-status.is-error{color:#b42318}
@media(max-width:600px){.iw-passkey-direct-login{min-height:56px;font-size:16px}}
