/* Vestronet login, presentation layer for the Kalameh SMS Login plugin. */
.nv-login-page,.woocommerce-account .nv-login-scene{font-family:IRANSansXFaNum,Tahoma,sans-serif}
.nv-login-scene{max-width:1190px;margin:44px auto 85px;padding:0 16px;box-sizing:border-box;color:#182541}
.nv-login-scene *{box-sizing:border-box}
.nv-login-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);min-height:575px;direction:rtl;overflow:hidden;border-radius:30px;border:1px solid #dfe9f7;background:#fff;box-shadow:0 22px 70px rgba(0,53,131,.075)}
.nv-login-form-panel{padding:clamp(28px,5vw,65px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.nv-login-kicker{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#0055da}.nv-login-kicker span{width:8px;height:8px;border-radius:50%;background:#ffd400;box-shadow:0 0 0 5px #fff8cf}
.nv-login-form-panel h1{font-size:clamp(25px,2.5vw,34px);line-height:1.5;margin:14px 0 8px;font-weight:900;color:#141f38}
.nv-login-lead{font-size:14px;color:#74809a;margin:0 0 30px;line-height:1.95}
.nv-login-shortcode-wrap{width:100%;max-width:430px;margin:0;direction:rtl}
.nv-login-shortcode-wrap input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.nv-login-shortcode-wrap select{width:100%;max-width:100%;min-height:49px;background:#f7faff;color:#1b2942;border:1px solid #dce7f5;border-radius:13px;padding:12px 15px;font-family:inherit;font-size:14px;box-shadow:none;outline:none;transition:border-color .18s,box-shadow .18s}
.nv-login-shortcode-wrap input:focus,.nv-login-shortcode-wrap select:focus{border-color:#0055da!important;box-shadow:0 0 0 4px rgba(0,85,218,.10)!important}
.nv-login-shortcode-wrap button:not(.close),.nv-login-shortcode-wrap input[type=submit],.nv-login-shortcode-wrap .button{font-family:inherit;min-height:48px;border:0;border-radius:13px;background:#0055da;color:#fff;font-size:14px;font-weight:800;cursor:pointer;padding:11px 20px;transition:background .2s,transform .2s,box-shadow .2s}
.nv-login-shortcode-wrap button:hover,.nv-login-shortcode-wrap input[type=submit]:hover{background:#0045b6;box-shadow:0 9px 22px rgba(0,85,218,.2);transform:translateY(-1px)}
.nv-login-shortcode-wrap label{font-family:inherit;font-size:13px;font-weight:650;color:#41516e}
.nv-login-shortcode-wrap a{color:#0055da}.nv-login-shortcode-wrap p{line-height:1.85}
.nv-login-footer-note{display:flex;align-items:center;gap:9px;margin-top:25px;font-size:11px;line-height:1.8;color:#71819b}.nv-login-footer-note svg{width:18px;height:18px;color:#0055da;flex-shrink:0}
.nv-login-plugin-unavailable{background:#fff9e4;border:1px solid #ffe49c;color:#815d0c;padding:20px;border-radius:15px;line-height:2;font-size:13px}
.nv-login-art{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:42px 35px;background:radial-gradient(circle at 16% 12%,rgba(255,212,0,.22),transparent 40%),linear-gradient(145deg,#0869ed,#0044ad);color:#fff}
.nv-login-pattern{position:absolute;inset:0;background-image:linear-gradient(135deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:38px 38px;pointer-events:none}
.nv-login-illustration{width:min(100%,420px);position:relative;z-index:1}.nv-login-illustration svg{display:block;width:100%;height:auto;filter:drop-shadow(0 20px 25px rgba(0,32,97,.15))}
.nv-login-art-copy{position:relative;z-index:1;max-width:400px}.nv-login-art-eyebrow{display:inline-block;background:#ffd400;color:#172848;border-radius:100px;padding:6px 12px;font-size:11px;font-weight:900}.nv-login-art-copy h2{font-size:clamp(23px,2.4vw,31px);color:#fff;line-height:1.65;margin:12px 0 6px}.nv-login-art-copy p{font-size:13px;color:#dae9ff;line-height:2;margin:0}
.nv-login-benefits{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:27px;z-index:1;position:relative}.nv-login-benefits div{display:flex;align-items:center;gap:5px;font-size:11px;border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:9px 12px;background:rgba(255,255,255,.10)}.nv-login-benefits span{color:#ffd400;font-weight:900}
.nv-login-already{padding:24px;text-align:center}.nv-login-already a{color:#0055da;font-weight:800}
.woocommerce-account .woocommerce>.nv-login-scene{margin-top:30px}
@media(max-width:810px){.nv-login-grid{grid-template-columns:1fr}.nv-login-art{min-height:270px;padding:25px}.nv-login-illustration{width:230px}.nv-login-art-copy h2{font-size:21px}.nv-login-art-copy p{max-width:360px}.nv-login-benefits{margin-top:14px}.nv-login-scene{margin:22px auto 52px}.nv-login-form-panel{padding:32px 24px 40px}.nv-login-shortcode-wrap{max-width:100%}}
@media(max-width:480px){.nv-login-art{display:none}.nv-login-grid{border-radius:24px;min-height:auto}.nv-login-form-panel{padding:30px 21px}.nv-login-form-panel h1{font-size:25px}.nv-login-lead{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.nv-login-shortcode-wrap *{transition:none!important}}

/* Vestronet 1.8.0 – compact OTP login, plugin typography and account title removal */
.nv-login-scene,.nv-login-scene *,.nv-login-scene *::before,.nv-login-scene *::after{font-family:IRANSansXFaNum,Tahoma,sans-serif!important}
.nv-login-scene button,.nv-login-scene input,.nv-login-scene textarea,.nv-login-scene select{font-family:IRANSansXFaNum,Tahoma,sans-serif!important}
.nv-login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100dvh - 170px);padding:15px 16px}
.nv-login-scene{width:100%;max-width:930px;margin:0 auto!important;padding:0}
.nv-login-grid{grid-template-columns:minmax(0,1fr) minmax(0,.78fr);min-height:0;align-items:stretch;border-radius:24px}
.nv-login-form-panel{padding:20px 27px;justify-content:center;align-items:center;min-height:0}
.nv-login-shortcode-wrap{width:100%;max-width:390px;margin:0 auto}
.nv-login-art{padding:23px 24px;min-height:0}
.nv-login-illustration{width:min(100%,235px)}
.nv-login-art-copy h2{font-size:22px;line-height:1.5;margin:9px 0 2px}
.nv-login-art-copy p{font-size:11px;line-height:1.8}
.nv-login-benefits{margin-top:15px;gap:6px}
.nv-login-benefits div{padding:7px 9px;font-size:10px}
/* Leave the OTP plugin's individual steps accessible, while reducing the nested white card footprint. */
.nv-login-shortcode-wrap>div{max-width:100%;margin-inline:auto}
.nv-login-shortcode-wrap input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.nv-login-shortcode-wrap select{min-height:43px;padding:9px 12px}
.nv-login-shortcode-wrap button:not(.close),.nv-login-shortcode-wrap input[type=submit],.nv-login-shortcode-wrap .button{min-height:43px}
/* WooCommerce title above the custom login form is duplicated by the standalone panel. */
body.woocommerce-account:not(.logged-in) main .page-title:has(+ .entry-content .nv-login-scene),
body.woocommerce-account:not(.logged-in) main .entry-header:has(+ .entry-content .nv-login-scene),
body.woocommerce-account:not(.logged-in) .woocommerce>h1,
body.woocommerce-account:not(.logged-in) .woocommerce>h2:first-child{display:none!important}
body.woocommerce-account:not(.logged-in) .woocommerce>.nv-login-scene{margin:0 auto!important}
@media(max-width:810px){.nv-login-page{min-height:auto}.nv-login-grid{grid-template-columns:1fr}.nv-login-art{display:none}.nv-login-form-panel{padding:18px 18px}.nv-login-scene{max-width:465px;margin:12px auto!important}}
@media(max-width:480px){.nv-login-page{padding:10px}.nv-login-form-panel{padding:15px 12px}.nv-login-grid{border-radius:18px}.nv-login-shortcode-wrap{max-width:100%}}
