/* Nobanoo Auth v1.1.0 — dedicated two-step OTP experience. */
.nb-auth-header{position:relative;z-index:20;border-bottom:1px solid color-mix(in srgb,var(--nb-color-text,#3b3b31) 10%,transparent);background:color-mix(in srgb,var(--nb-color-bg,#faf6f1) 92%,transparent);backdrop-filter:blur(18px)}
.nb-auth-header__inner{min-height:72px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px}.nb-auth-header__brand{justify-self:center}.nb-auth-header__brand .custom-logo{max-height:42px;width:auto}.nb-auth-header__secure{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#eef8f0;color:#28623a;font-size:.82rem;font-weight:750}.nb-auth-header__secure span{font-size:.55rem}.nb-auth-footer{padding-block-end:env(safe-area-inset-bottom,0px);border-top:1px solid color-mix(in srgb,var(--nb-color-text,#3b3b31) 10%,transparent);background:#fff}.nb-auth-footer>div{min-height:64px;display:flex;align-items:center;justify-content:center;gap:18px;color:var(--nb-color-text-muted,#6f6762);font-size:.82rem}.nb-auth-footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.nb-login-page{background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 20%,transparent),transparent 34%),linear-gradient(135deg,#fbf8f4 0%,#f4eee9 52%,#f9f6f2 100%)}.nb-login-page .nb-site-header,.nb-login-page .nb-site-footer{display:none!important}.nb-login-main{min-height:calc(100dvh - 137px);display:grid;align-items:center;padding-block:clamp(24px,6vw,76px)}.nb-login-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:stretch;gap:clamp(24px,4vw,64px);max-width:1440px}.nb-login-visual{position:relative;overflow:hidden;min-height:620px;padding:clamp(36px,6vw,84px);border-radius:36px;background:linear-gradient(145deg,#342e35 0%,#4c3844 52%,#75505c 100%);color:#fff;box-shadow:0 28px 80px rgba(52,38,45,.22);isolation:isolate}.nb-login-visual:before,.nb-login-visual:after{content:"";position:absolute;border-radius:999px;filter:blur(2px);z-index:-1}.nb-login-visual:before{width:340px;height:340px;inset:-90px -100px auto auto;background:radial-gradient(circle,rgba(255,220,225,.34),transparent 68%)}.nb-login-visual:after{width:440px;height:440px;inset:auto auto -220px -120px;background:radial-gradient(circle,rgba(226,184,137,.30),transparent 68%)}.nb-login-visual__glow{position:absolute;width:180px;height:180px;inset:38% 56% auto auto;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.035),0 0 0 84px rgba(255,255,255,.02);z-index:-1}.nb-login-visual__kicker{margin:0 0 22px;letter-spacing:.18em;font-size:.74rem;font-weight:800;color:#f1c7cf}.nb-login-visual h2{max-width:680px;margin:0;font-size:clamp(2.1rem,4.5vw,4.7rem);line-height:1.18;letter-spacing:-.035em}.nb-login-visual>p:not(.nb-login-visual__kicker){max-width:620px;margin:24px 0 32px;color:rgba(255,255,255,.78);font-size:clamp(1rem,1.5vw,1.18rem);line-height:2}.nb-login-visual ul{display:grid;gap:14px;margin:0;padding:0;list-style:none}.nb-login-visual li{display:flex;align-items:center;gap:10px;font-weight:700}.nb-login-visual li span{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:rgba(255,255,255,.14);color:#f6d7dc}.nb-login-visual__cards{position:absolute;inset:auto 42px 34px auto;display:flex;align-items:flex-end;gap:12px;direction:ltr}.nb-login-visual__cards i{display:block;width:74px;border-radius:18px 18px 8px 8px;background:linear-gradient(180deg,rgba(255,255,255,.33),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.17);box-shadow:0 20px 40px rgba(0,0,0,.14)}.nb-login-visual__cards i:nth-child(1){height:88px}.nb-login-visual__cards i:nth-child(2){height:132px}.nb-login-visual__cards i:nth-child(3){height:104px}
.nb-login-card{display:grid;align-items:center;padding:clamp(8px,2vw,22px)}.nb-auth{position:relative;width:100%;max-width:590px;margin-inline:auto;padding:clamp(24px,4vw,46px);overflow:hidden;border:1px solid rgba(83,67,73,.10);border-radius:32px;background:rgba(255,255,255,.92);box-shadow:0 26px 80px rgba(73,50,58,.13);backdrop-filter:blur(20px)}.nb-auth__intro{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:16px;margin-bottom:24px}.nb-auth__mark{display:grid;place-items:center;width:62px;height:62px;border-radius:22px;background:linear-gradient(145deg,var(--nb-color-primary,#cfa3a6),var(--nb-color-primary-dark,#8647aa));color:#fff;font-size:1.5rem;font-weight:900;box-shadow:0 12px 28px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 38%,transparent)}.nb-auth__intro h1{margin:2px 0 4px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.3}.nb-auth__intro p{margin:0;color:var(--nb-color-text-muted,#6f6762);line-height:1.7}.nb-auth__eyebrow{font-size:.7rem!important;letter-spacing:.17em;color:var(--nb-color-primary-dark,#8647aa)!important;font-weight:850}.nb-auth__progress{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 18px;padding:0;list-style:none}.nb-auth__progress li{position:relative;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:#f6f2ef;color:#847a75;font-size:.82rem;transition:background 180ms ease,color 180ms ease,transform 180ms ease}.nb-auth__progress li span{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:#fff;font-weight:850}.nb-auth__progress li.is-active{background:color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 18%,#fff);color:var(--nb-color-text,#3b3b31);transform:translateY(-1px)}.nb-auth__progress li.is-complete{background:#edf8f0;color:#2b6640}.nb-auth__status{min-height:0;margin-bottom:0;border-radius:12px;font-size:.9rem;line-height:1.75;transition:padding 160ms ease,margin 160ms ease}.nb-auth__status:not(:empty){min-height:1.5em;margin-bottom:12px;padding:10px 12px}.nb-auth__status.is-error{background:#fff0f0;color:#8f2525}.nb-auth__status.is-success{background:#edf9f0;color:#25613b}.nb-auth__viewport{overflow:hidden}.nb-auth__track{display:flex;width:200%;direction:ltr;transform:translate3d(0,0,0);transition:transform 340ms cubic-bezier(.2,.75,.25,1)}.nb-auth[data-stage="code"] .nb-auth__track{transform:translate3d(-50%,0,0)}.nb-auth__panel{width:50%;min-width:50%;padding:2px;direction:rtl}.nb-auth__step{display:grid;gap:14px}.nb-auth__step-head span{display:block;margin-bottom:4px;color:var(--nb-color-primary-dark,#8647aa);font-size:.76rem;font-weight:850}.nb-auth__step-head h2{margin:0 0 4px;font-size:1.18rem}.nb-auth__step-head p{margin:0;color:var(--nb-color-text-muted,#6f6762);line-height:1.75}.nb-auth__step>label,.nb-auth__step legend{font-weight:780}.nb-auth__phone{display:flex;direction:ltr;align-items:center;overflow:hidden;border:1px solid var(--nb-color-border,#ded3ca);border-radius:16px;background:#fff;transition:border-color 160ms ease,box-shadow 160ms ease}.nb-auth__phone:focus-within{border-color:var(--nb-color-primary-dark,#8647aa);box-shadow:0 0 0 4px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 22%,transparent)}.nb-auth__phone span{display:grid;place-items:center;min-height:56px;padding:0 14px;border-right:1px solid var(--nb-color-border,#ded3ca);background:#faf8f6;font-weight:850}.nb-auth__phone input{min-height:56px;width:100%;padding:0 14px;border:0;box-shadow:none;background:transparent;font-size:1.08rem;font-weight:700;letter-spacing:.04em}.nb-auth__submit{min-height:54px;width:100%;justify-content:center;gap:10px;border-radius:16px;font-weight:850;box-shadow:0 12px 26px color-mix(in srgb,var(--nb-color-primary-dark,#8647aa) 22%,transparent)}.nb-auth__submit i{font-style:normal;font-size:1.15rem}.nb-auth__spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:nb-auth-spin .75s linear infinite}.nb-auth fieldset{margin:0;padding:0;border:0}.nb-auth__otp{display:flex;justify-content:center;gap:8px;margin:10px 0 4px}.nb-auth__otp input{width:clamp(40px,10vw,54px);height:58px;border:1px solid var(--nb-color-border,#ded3ca);border-radius:15px;background:#fff;text-align:center;font-size:1.45rem;font-weight:900;transition:transform 150ms ease,border-color 150ms ease,box-shadow 150ms ease}.nb-auth__otp input:focus{outline:0;border-color:var(--nb-color-primary-dark,#8647aa);box-shadow:0 0 0 4px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 22%,transparent);transform:translateY(-2px)}.nb-auth__remember-note{display:flex;align-items:flex-start;gap:8px;margin:0;padding:11px 12px;border-radius:13px;background:#f2f8f3;color:#385443;font-size:.82rem;line-height:1.75}.nb-auth__remember-note span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:8px;background:#dcefe1;color:#236039;font-weight:900}.nb-auth__secondary{display:flex;justify-content:space-between;gap:12px}.nb-link-button{border:0;background:none;color:var(--nb-color-primary-dark,#8647aa);padding:8px 0;cursor:pointer;font:inherit;font-weight:750}.nb-link-button:disabled{opacity:.5;cursor:not-allowed}.nb-auth__privacy{margin:20px 0 0;color:var(--nb-color-text-muted,#6f6762);font-size:.76rem;line-height:1.85;text-align:center}.nb-auth__success{position:absolute;z-index:4;inset:0;display:grid;place-content:center;justify-items:center;padding:30px;background:rgba(255,255,255,.96);text-align:center}.nb-auth__success[hidden]{display:none!important}.nb-auth__success>span{display:grid;place-items:center;width:78px;height:78px;margin-bottom:18px;border-radius:28px;background:#e1f3e6;color:#26703f;font-size:2.2rem;font-weight:900;animation:nb-auth-pop .35s ease both}.nb-auth__success strong{font-size:1.35rem}.nb-auth__success p{color:var(--nb-color-text-muted,#6f6762)}
.woocommerce-form-login[data-nb-account-login]{width:min(calc(100% - 32px),640px);margin:clamp(26px,5vw,64px) auto}.woocommerce-form-login[data-nb-account-login] .nb-auth{max-width:640px}
.nb-account-dashboard{display:grid;gap:18px}.nb-account-welcome,.nb-account-card{padding:18px;border:1px solid var(--nb-color-border,#ded3ca);border-radius:18px;background:#fff}.nb-account-welcome{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.nb-account-grid{display:grid;gap:16px}.nb-account-card h3{margin-top:0}.nb-account-order{display:grid;gap:8px}.nb-address-list{display:grid;gap:10px}.nb-address-card{display:grid;gap:7px;padding:13px;border:1px solid var(--nb-color-border,#ded3ca);border-radius:14px}.nb-address-card__head{display:flex;justify-content:space-between;gap:10px}.nb-address-card__actions{display:flex;gap:12px}.nb-account-form{display:grid;grid-template-columns:1fr;gap:11px;margin-top:14px}.nb-account-form label{display:grid;gap:6px;font-weight:700}.nb-account-form input,.nb-account-form textarea{width:100%}.nb-account-form__full{grid-column:1/-1}.nb-change-phone{display:grid;gap:11px}.nb-change-phone__otp{display:flex;gap:7px;direction:ltr}.nb-change-phone__otp input{width:44px;text-align:center}.nb-account-message{min-height:1.4em}.nb-account-message.is-error{color:#9b2525}.nb-account-message.is-success{color:#25613b}
@keyframes nb-auth-spin{to{transform:rotate(360deg)}}@keyframes nb-auth-pop{from{opacity:0;transform:scale(.75)}to{opacity:1;transform:scale(1)}}
@media(max-width:980px){.nb-login-layout{grid-template-columns:1fr;max-width:720px}.nb-login-visual{min-height:auto;padding:34px;border-radius:28px}.nb-login-visual h2{font-size:clamp(1.75rem,7vw,2.8rem)}.nb-login-visual__cards{display:none}.nb-login-card{padding:0}.nb-auth{max-width:none}}
@media(max-width:640px){.nb-auth-header__inner{min-height:62px;grid-template-columns:44px 1fr 44px}.nb-auth-header__secure{width:44px;height:44px;justify-content:center;padding:0;font-size:0}.nb-auth-header__secure span{font-size:.58rem}.nb-login-main{min-height:calc(100dvh - 126px);padding:12px 0 18px;align-items:start}.nb-login-layout{width:100%;padding-inline:12px;gap:12px}.nb-login-visual{display:none}.nb-auth{padding:22px 18px;border-radius:26px;box-shadow:0 18px 50px rgba(73,50,58,.11)}.nb-auth__intro{grid-template-columns:52px 1fr;gap:12px}.nb-auth__mark{width:52px;height:52px;border-radius:18px}.nb-auth__progress li{padding:8px;font-size:.74rem}.nb-auth__progress li b{white-space:nowrap}.nb-auth__otp{gap:5px}.nb-auth__otp input{width:clamp(38px,13vw,48px);height:54px}.nb-auth-footer>div{min-height:58px;font-size:.75rem}.nb-account-grid{grid-template-columns:1fr}}
@media(min-width:760px){.nb-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nb-account-card--wide{grid-column:1/-1}.nb-account-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.nb-auth__track,.nb-auth__progress li,.nb-auth__otp input{transition:none}.nb-auth__spinner,.nb-auth__success>span{animation:none}}


/* Phase 2: single-source OTP input and WebOTP feedback */
.nb-auth__otp{position:relative;display:block;cursor:text;outline:none}
.nb-auth__otp-input{position:absolute!important;inset:0!important;z-index:2!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;opacity:.015!important;background:transparent!important;color:transparent!important;caret-color:transparent!important;box-shadow:none!important;letter-spacing:2em!important}
.nb-auth__otp-cells{display:grid;grid-template-columns:repeat(var(--nb-otp-count,6),minmax(0,1fr));gap:clamp(7px,2vw,12px);direction:ltr}
.nb-auth__otp-cells span{display:grid;min-width:0;height:clamp(48px,12vw,58px);place-items:center;border:1px solid color-mix(in srgb,var(--nb-color-text,#3b3b31) 14%,transparent);border-radius:15px;background:#fff;color:var(--nb-color-text,#3b3b31);font-size:clamp(1.1rem,4.5vw,1.35rem);font-weight:800;box-shadow:0 7px 18px rgba(70,52,58,.055);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.nb-auth__otp.is-focused .nb-auth__otp-cells span.is-current{border-color:var(--nb-color-primary-dark,#8647aa);box-shadow:0 0 0 3px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 24%,transparent);transform:translateY(-1px)}
.nb-auth__otp-cells span.is-filled{border-color:color-mix(in srgb,var(--nb-color-primary-dark,#8647aa) 34%,transparent);background:color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 9%,#fff)}
.nb-auth__otp.is-complete .nb-auth__otp-cells span{border-color:#68a47c;background:#f1faf4}
.nb-auth__otp-hint{display:flex;align-items:center;gap:7px;margin:8px 0 0;color:var(--nb-color-text-muted,#6f6762);font-size:.76rem;line-height:1.65}
.nb-auth__otp-hint::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nb-color-muted,#8d837d)}
.nb-auth__otp-hint.is-listening::before{background:var(--nb-color-primary-dark,#8647aa);box-shadow:0 0 0 5px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 20%,transparent);animation:nb-webotp-pulse 1.2s ease-in-out infinite}
.nb-auth__otp-hint.is-detected{color:#25613b}.nb-auth__otp-hint.is-detected::before{background:#3e8a58;box-shadow:none;animation:none}
@keyframes nb-webotp-pulse{50%{transform:scale(.72);opacity:.6}}
@media(max-width:420px){.nb-auth__otp-cells{gap:6px}.nb-auth__otp-cells span{height:46px;border-radius:12px;font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.nb-auth__otp-hint.is-listening::before{animation:none}}

/* 2.8.6 — premium app-style authentication experience. */
.nb-login-page{
	background:
		radial-gradient(circle at 88% 8%,rgba(207,163,166,.22),transparent 28%),
		radial-gradient(circle at 8% 92%,rgba(212,175,55,.10),transparent 30%),
		linear-gradient(155deg,#fcfaf7 0%,#f5eee9 52%,#fbf8f4 100%);
}
.nb-auth-header{
	position:sticky;
	inset-block-start:0;
	border-block-end:1px solid rgba(73,50,58,.08);
	background:rgba(252,249,246,.86);
	box-shadow:0 8px 28px rgba(73,50,58,.04);
	backdrop-filter:blur(22px) saturate(1.2);
}
.nb-auth-header__inner{min-height:68px;}
.nb-auth-header__secure{
	border:1px solid rgba(40,98,58,.10);
	background:rgba(238,248,240,.82);
	box-shadow:0 5px 14px rgba(44,93,57,.05);
}
.nb-login-main{min-height:calc(100dvh - 132px);padding-block:clamp(20px,4vw,54px);}
.nb-login-layout{
	width:min(calc(100% - 32px),1320px);
	grid-template-columns:minmax(0,1.05fr) minmax(390px,.82fr);
	gap:clamp(22px,3.4vw,52px);
}
.nb-login-visual{
	display:grid;
	min-height:570px;
	grid-template-columns:minmax(0,1fr) minmax(220px,.58fr);
	align-items:center;
	gap:24px;
	padding:clamp(34px,5vw,68px);
	border:1px solid rgba(255,255,255,.14);
	border-radius:34px;
	background:
		linear-gradient(145deg,rgba(255,255,255,.035),transparent 46%),
		linear-gradient(145deg,#2f2930 0%,#4c3844 53%,#76525e 100%);
	box-shadow:0 30px 80px rgba(52,38,45,.2);
}
.nb-login-visual__content{position:relative;z-index:2;}
.nb-login-visual__kicker{margin-block-end:18px;color:#f4ccd3!important;font-size:.69rem;font-weight:700;letter-spacing:.18em;}
.nb-login-visual h2{max-width:560px;font-size:clamp(2.15rem,4vw,4.25rem);line-height:1.16;letter-spacing:-.025em;}
.nb-login-visual__content>p:not(.nb-login-visual__kicker){max-width:590px;margin:22px 0 28px;color:rgba(255,255,255,.76);font-size:clamp(.93rem,1.25vw,1.08rem);line-height:1.95;}
.nb-login-visual__features{display:flex;flex-wrap:wrap;gap:9px;}
.nb-login-visual__features span{
	display:inline-flex;
	min-height:38px;
	align-items:center;
	gap:7px;
	padding:7px 11px;
	border:1px solid rgba(255,255,255,.12);
	border-radius:999px;
	background:rgba(255,255,255,.08);
	color:#fff;
	font-size:.75rem;
	font-weight:700;
	backdrop-filter:blur(10px);
}
.nb-login-visual__features i{
	display:grid;
	width:20px;
	height:20px;
	place-items:center;
	border-radius:7px;
	background:rgba(246,215,220,.14);
	color:#f7dce1;
	font-style:normal;
	font-size:.68rem;
}
.nb-login-visual__art{position:relative;min-height:360px;isolation:isolate;}
.nb-login-visual__orbit{
	position:absolute;
	inset:50% auto auto 50%;
	width:245px;
	height:245px;
	border:1px solid rgba(255,255,255,.14);
	border-radius:50%;
	box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.015);
	transform:translate(-50%,-50%);
}
.nb-login-visual__product{
	position:absolute;
	inset-block-end:38px;
	display:block;
	border:1px solid rgba(255,255,255,.2);
	background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,255,255,.07));
	box-shadow:0 24px 46px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.22);
	backdrop-filter:blur(10px);
}
.nb-login-visual__product::before{
	position:absolute;
	inset-block-start:-18px;
	inset-inline-start:50%;
	width:46%;
	height:20px;
	border:1px solid rgba(255,255,255,.2);
	border-block-end:0;
	border-radius:9px 9px 0 0;
	background:rgba(255,255,255,.16);
	content:"";
	transform:translateX(-50%);
}
.nb-login-visual__product--one{inset-inline-start:8%;width:82px;height:176px;border-radius:28px 28px 19px 19px;transform:rotate(-7deg);}
.nb-login-visual__product--two{inset-inline-start:40%;width:94px;height:235px;border-radius:34px 34px 22px 22px;z-index:2;}
.nb-login-visual__product--three{inset-inline-end:2%;width:76px;height:148px;border-radius:24px 24px 17px 17px;transform:rotate(8deg);}
.nb-login-card{padding:0;}
.nb-auth{
	max-width:520px;
	padding:clamp(24px,3vw,38px);
	border:1px solid rgba(83,67,73,.09);
	border-radius:30px;
	background:rgba(255,255,255,.94);
	box-shadow:0 24px 70px rgba(73,50,58,.12),inset 0 1px 0 rgba(255,255,255,.9);
}
.nb-auth__intro{grid-template-columns:56px minmax(0,1fr);gap:14px;margin-block-end:18px;}
.nb-auth__mark{width:56px;height:56px;border-radius:19px;font-size:1.25rem;box-shadow:0 12px 26px rgba(107,67,80,.16);}
.nb-auth__intro h1{font-size:clamp(1.35rem,2.7vw,1.8rem);font-weight:800;}
.nb-auth__intro p{font-size:.82rem;line-height:1.75;}
.nb-auth__eyebrow{font-size:.62rem!important;font-weight:700!important;}
.nb-auth__progress{position:relative;gap:10px;margin-block-end:10px;}
.nb-auth__progress::before{
	position:absolute;
	z-index:0;
	inset-inline:calc(25% + 12px);
	inset-block-start:50%;
	height:1px;
	background:rgba(107,67,80,.12);
	content:"";
}
.nb-auth__progress li{
	z-index:1;
	min-height:42px;
	justify-content:center;
	padding:7px 9px;
	border:1px solid rgba(83,67,73,.07);
	border-radius:13px;
	background:#f8f5f2;
	font-size:.71rem;
	font-weight:600;
}
.nb-auth__progress li span{width:24px;height:24px;border-radius:8px;font-size:.67rem;}
.nb-auth__progress li.is-active{border-color:rgba(107,67,80,.13);background:#f5e9ec;transform:none;}
.nb-auth__trust{display:flex;justify-content:center;gap:7px;margin:0 0 16px;}
.nb-auth__trust span{
	display:inline-flex;
	align-items:center;
	gap:5px;
	color:var(--nb-color-muted);
	font-size:.61rem;
	font-weight:600;
	white-space:nowrap;
}
.nb-auth__trust span::before{width:5px;height:5px;border-radius:50%;background:var(--nb-color-primary-dark);content:"";}
.nb-auth__step{gap:12px;}
.nb-auth__step-head span{font-size:.67rem;font-weight:700;}
.nb-auth__step-head h2{font-size:1.05rem;font-weight:800;}
.nb-auth__step-head p{font-size:.78rem;line-height:1.7;}
.nb-auth__step>label,.nb-auth__step legend{font-size:.76rem;font-weight:700;}
.nb-auth__phone{border-radius:14px;background:#fff;}
.nb-auth__phone span,.nb-auth__phone input{min-height:50px!important;height:50px;}
.nb-auth__phone span{padding-inline:12px;font-size:.8rem;}
.nb-auth__phone input{font-size:1rem!important;}
.nb-auth__submit{min-height:48px!important;border-radius:14px!important;font-size:.78rem!important;box-shadow:0 10px 22px rgba(107,67,80,.16)!important;}
.nb-auth__remember-note{padding:9px 10px;border:1px solid rgba(62,138,88,.08);border-radius:12px;font-size:.72rem;}
.nb-auth__privacy{margin-block-start:16px;font-size:.68rem;line-height:1.75;}
.nb-auth__otp-cells{gap:7px;}
.nb-auth__otp-cells span{height:50px;border-radius:13px;font-size:1.1rem;box-shadow:0 6px 16px rgba(70,52,58,.045);}

@media (max-width:980px){
	.nb-login-layout{max-width:760px;grid-template-columns:1fr;gap:0;}
	.nb-login-visual{
		display:grid;
		min-height:230px;
		grid-template-columns:minmax(0,1fr) 150px;
		padding:28px 30px 54px;
		border-radius:28px 28px 0 0;
	}
	.nb-login-visual h2{font-size:clamp(1.65rem,6vw,2.55rem);}
	.nb-login-visual__content>p:not(.nb-login-visual__kicker){margin:14px 0 18px;font-size:.85rem;line-height:1.8;}
	.nb-login-visual__features span{min-height:32px;padding:5px 9px;font-size:.66rem;}
	.nb-login-visual__art{min-height:180px;}
	.nb-login-visual__orbit{width:140px;height:140px;box-shadow:0 0 0 24px rgba(255,255,255,.02);}
	.nb-login-visual__product{inset-block-end:12px;}
	.nb-login-visual__product--one{width:45px;height:94px;}
	.nb-login-visual__product--two{width:52px;height:126px;}
	.nb-login-visual__product--three{width:42px;height:80px;}
	.nb-login-card{position:relative;z-index:2;margin-block-start:-30px;padding-inline:18px 18px;}
	.nb-auth{max-width:620px;border-radius:28px;}
}
@media (max-width:640px){
	.nb-auth-header__inner{min-height:58px;}
	.nb-auth-header__brand .custom-logo{max-height:34px;}
	.nb-login-main{min-height:calc(100dvh - 112px);padding:0 0 14px;align-items:start;}
	.nb-login-layout{width:100%;padding-inline:0;}
	.nb-login-visual{
		display:grid;
		min-height:188px;
		grid-template-columns:minmax(0,1fr) 92px;
		gap:10px;
		padding:24px 20px 48px;
		border:0;
		border-radius:0 0 26px 26px;
		box-shadow:0 18px 42px rgba(52,38,45,.14);
	}
	.nb-login-visual__kicker{margin-block-end:10px;font-size:.58rem;}
	.nb-login-visual h2{max-width:260px;font-size:1.48rem;line-height:1.3;}
	.nb-login-visual__content>p:not(.nb-login-visual__kicker){display:none;}
	.nb-login-visual__features{margin-block-start:14px;gap:6px;}
	.nb-login-visual__features span{min-height:27px;padding:4px 7px;border-radius:9px;font-size:.57rem;}
	.nb-login-visual__features span:nth-child(3){display:none;}
	.nb-login-visual__features i{width:17px;height:17px;border-radius:6px;font-size:.55rem;}
	.nb-login-visual__art{min-height:118px;}
	.nb-login-visual__orbit{width:92px;height:92px;}
	.nb-login-visual__product::before{inset-block-start:-10px;height:12px;}
	.nb-login-visual__product--one{inset-inline-start:0;width:30px;height:62px;}
	.nb-login-visual__product--two{inset-inline-start:35%;width:36px;height:83px;}
	.nb-login-visual__product--three{inset-inline-end:0;width:29px;height:54px;}
	.nb-login-card{margin-block-start:-28px;padding-inline:12px;}
	.nb-auth{padding:20px 16px 18px;border-radius:24px;box-shadow:0 18px 46px rgba(73,50,58,.13);}
	.nb-auth__intro{grid-template-columns:48px minmax(0,1fr);gap:11px;margin-block-end:14px;}
	.nb-auth__mark{width:48px;height:48px;border-radius:16px;font-size:1.05rem;}
	.nb-auth__intro h1{font-size:1.22rem;}
	.nb-auth__intro p{font-size:.73rem;}
	.nb-auth__progress li{min-height:38px;padding:6px;font-size:.66rem;}
	.nb-auth__progress li span{width:22px;height:22px;}
	.nb-auth__trust{gap:5px;margin-block-end:13px;}
	.nb-auth__trust span{font-size:.56rem;}
	.nb-auth__step-head h2{font-size:.96rem;}
	.nb-auth__step-head p{font-size:.71rem;}
	.nb-auth__phone span,.nb-auth__phone input{min-height:47px!important;height:47px;}
	.nb-auth__submit{min-height:46px!important;}
	.nb-auth__otp-cells span{height:44px;border-radius:11px;font-size:1rem;}
	.nb-auth-footer>div{min-height:52px;font-size:.67rem;}
}
@media (max-width:365px){
	.nb-login-visual{grid-template-columns:minmax(0,1fr) 72px;padding-inline:16px;}
	.nb-login-visual h2{font-size:1.3rem;}
	.nb-login-visual__features span:nth-child(2){display:none;}
	.nb-auth__trust span{font-size:.52rem;}
	.nb-auth__otp-cells{gap:5px;}
	.nb-auth__otp-cells span{height:41px;}
}

/* 2.9.5 — iOS OTP autofill and first-login profile completion. */
.nb-auth__progress{grid-template-columns:repeat(3,minmax(0,1fr));}
.nb-auth__progress::before{inset-inline:calc(16.666% + 12px);}
.nb-auth__track{width:300%;}
.nb-auth[data-stage="phone"] .nb-auth__track{transform:translate3d(0,0,0);}
.nb-auth[data-stage="code"] .nb-auth__track{transform:translate3d(-33.333333%,0,0);}
.nb-auth[data-stage="profile"] .nb-auth__track{transform:translate3d(-66.666667%,0,0);}
.nb-auth__panel{width:33.333333%;min-width:33.333333%;}

/* Keep the real one-time-code control visible to Safari's form heuristics while
 * rendering the visual cells underneath it. The glyphs remain transparent. */
.nb-auth__otp-input{
	opacity:1!important;
	font-size:16px!important;
	-webkit-text-fill-color:transparent!important;
	color:transparent!important;
	caret-color:transparent!important;
	appearance:none!important;
	-webkit-appearance:none!important;
}
.nb-auth__otp-input:-webkit-autofill{
	-webkit-text-fill-color:transparent!important;
	transition:background-color 9999s ease-out 0s;
}
.nb-auth__otp{min-height:50px;}

.nb-auth__profile-step{align-content:start;}
.nb-auth__profile-icon{
	display:grid;
	width:52px;
	height:52px;
	place-items:center;
	margin-inline:auto;
	border:1px solid rgba(62,138,88,.16);
	border-radius:18px;
	background:linear-gradient(145deg,#edf9f0,#dff2e5);
	color:#25613b;
	font-size:1.25rem;
	font-weight:900;
	box-shadow:0 12px 26px rgba(62,138,88,.10);
}
.nb-auth__name{
	display:grid;
	grid-template-columns:48px minmax(0,1fr);
	align-items:center;
	overflow:hidden;
	border:1px solid var(--nb-color-border,#ded3ca);
	border-radius:15px;
	background:#fff;
	transition:border-color .16s ease,box-shadow .16s ease;
}
.nb-auth__name:focus-within{
	border-color:var(--nb-color-primary-dark,#8647aa);
	box-shadow:0 0 0 4px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 22%,transparent);
}
.nb-auth__name>span{
	display:grid;
	min-height:50px;
	place-items:center;
	border-inline-end:1px solid var(--nb-color-border,#ded3ca);
	background:#faf7f5;
	color:var(--nb-color-primary-dark,#8647aa);
	font-weight:900;
}
.nb-auth__name input{
	width:100%;
	min-height:50px!important;
	height:50px!important;
	padding:0 13px!important;
	border:0!important;
	outline:0!important;
	background:transparent!important;
	box-shadow:none!important;
	font-size:16px!important;
	font-weight:750;
}
.nb-auth__profile-note{
	display:flex;
	align-items:flex-start;
	gap:8px;
	margin:0;
	padding:10px 11px;
	border:1px solid rgba(62,138,88,.08);
	border-radius:12px;
	background:#f4faf6;
	color:#385443;
	font-size:.72rem;
	line-height:1.75;
}
.nb-auth__profile-note span{color:#3e8a58;font-size:.58rem;line-height:1.9;}

@media(max-width:640px){
	.nb-auth__progress li{gap:5px;padding:7px 5px;font-size:.62rem;}
	.nb-auth__progress li span{width:21px;height:21px;border-radius:7px;font-size:.61rem;}
	.nb-auth__profile-icon{width:46px;height:46px;border-radius:15px;}
	.nb-auth__name{grid-template-columns:44px minmax(0,1fr);}
	.nb-auth__name>span,.nb-auth__name input{min-height:47px!important;height:47px!important;}
}
@media(max-width:365px){
	.nb-auth__progress li b{font-size:.58rem;}
	.nb-auth__progress li{gap:3px;padding-inline:4px;}
}


/* 2.9.8 — persistent app navigation and native iOS Security Code AutoFill. */
@media (max-width:899px){
  .nb-login-page{padding-block-end:calc(var(--nb-bottom-nav-height,66px) + var(--nb-safe-bottom,0px))!important;}
  .nb-login-page .nb-bottom-nav{display:grid!important;}
  .nb-login-main{min-height:calc(100dvh - var(--nb-bottom-nav-height,66px) - var(--nb-safe-bottom,0px));padding-block-end:20px;}
  .nb-auth__otp.is-native-ios{display:block;min-height:54px;}
  .nb-auth__otp.is-native-ios .nb-auth__otp-cells{display:none!important;}
  .nb-auth__otp.is-native-ios .nb-auth__otp-input{
    position:relative!important;inset:auto!important;z-index:auto!important;display:block!important;
    width:100%!important;height:54px!important;min-height:54px!important;max-width:100%!important;
    margin:0!important;padding:0 14px!important;border:1px solid var(--nb-color-border,#ded3ca)!important;
    border-radius:15px!important;background:#fff!important;color:var(--nb-color-text,#3b3b31)!important;
    -webkit-text-fill-color:var(--nb-color-text,#3b3b31)!important;caret-color:var(--nb-color-primary-dark,#8647aa)!important;
    font-size:1.35rem!important;font-weight:900!important;line-height:54px!important;letter-spacing:.48em!important;
    text-align:center!important;text-indent:.48em!important;box-shadow:0 7px 18px rgba(70,52,58,.055)!important;
    opacity:1!important;appearance:none!important;-webkit-appearance:none!important;
  }
  .nb-auth__otp.is-native-ios .nb-auth__otp-input:focus{outline:0;border-color:var(--nb-color-primary-dark,#8647aa)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--nb-color-primary,#cfa3a6) 22%,transparent)!important;}
  .nb-auth__otp.is-native-ios .nb-auth__otp-input:-webkit-autofill{-webkit-text-fill-color:var(--nb-color-text,#3b3b31)!important;}
}


/* 2.9.9 — OS OTP suggestion eligibility and mobile keyboard-safe sizing */
.nb-auth__otp input[data-nb-otp-input]{direction:ltr!important;font-variant-numeric:tabular-nums;letter-spacing:.22em}.nb-auth__otp.is-native-ios{display:block!important;max-width:100%}.nb-auth__otp.is-native-ios .nb-auth__otp-cells{display:none!important}.nb-auth__otp.is-native-ios input[data-nb-otp-input]{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:8px 12px!important;opacity:1!important;clip:auto!important;clip-path:none!important;border:1px solid #d8c9cc!important;border-radius:17px!important;background:#fff!important;color:#302a2d!important;font-size:1.45rem!important;font-weight:850!important;text-align:center!important;caret-color:#763246!important;transform:none!important}.nb-auth__otp.is-native-ios.is-focused input[data-nb-otp-input]{border-color:#8f465b!important;box-shadow:0 0 0 3px rgba(143,70,91,.12)!important}.nb-auth__otp-hint{min-height:22px;line-height:1.7}.nb-auth__otp-hint.is-listening{color:#7a5418}.nb-auth__otp-hint.is-detected{color:#216b46}.nb-account-page .nb-auth__otp input[data-nb-otp-input],.nb-login-page .nb-auth__otp input[data-nb-otp-input]{font-size:16px}@media(max-width:899px){.nb-auth :where(input,button,select,textarea){font-size:16px}.nb-auth__otp-cells{gap:clamp(5px,1.8vw,9px)}.nb-auth__otp-cell{min-width:0;height:52px;border-radius:14px}.nb-auth__otp-hint{font-size:.7rem;text-align:center}}

/* 2.9.11 — resumable OTP request, explicit validity/resend timers and native iOS field. */
.nb-auth__otp-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:30px;margin-top:7px;padding:7px 10px;border:1px solid rgba(111,78,88,.08);border-radius:11px;background:#faf7f6;color:#6d6260;font-size:.69rem;font-weight:700;line-height:1.6}
.nb-auth__otp-meta span{min-width:0}.nb-auth__otp-meta span:last-child{text-align:end}.nb-auth__secondary [data-nb-auth-resend]{display:inline-flex;align-items:center;gap:5px}.nb-auth__secondary [data-nb-auth-countdown]{font:inherit;font-weight:850;direction:ltr}
.nb-auth__otp.is-native-ios input[data-nb-otp-input]{letter-spacing:.34em!important;text-indent:.34em!important;-webkit-user-select:text!important;user-select:text!important}
@media(max-width:420px){.nb-auth__otp-meta{display:grid;grid-template-columns:1fr;gap:2px;text-align:center}.nb-auth__otp-meta span:last-child{text-align:center}}

/* 2.9.13 — cookie-safe onboarding and locked mobile app viewport. */
@media(max-width:899px){
  html,body.nb-login-page{max-width:100%!important;overflow-x:hidden!important;overflow-x:clip!important;}
  body.nb-login-page{width:100%!important;min-width:0!important;overscroll-behavior-x:none;}
  .nb-login-main,.nb-login-layout,.nb-login-card,.nb-auth,.nb-auth__viewport,.nb-auth__track,.nb-auth__panel,.nb-auth__step,.nb-auth__name{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;}
  .nb-login-layout{width:100%!important;margin-inline:0!important;padding-inline-start:max(10px,env(safe-area-inset-left))!important;padding-inline-end:max(10px,env(safe-area-inset-right))!important;}
  .nb-login-card{width:100%!important;padding-inline:0!important;overflow:hidden!important;}
  .nb-auth{width:100%!important;margin-inline:0!important;overflow:hidden!important;contain:layout paint;}
  .nb-auth__viewport{width:100%!important;overflow:hidden!important;}
  .nb-auth__track{display:block!important;width:100%!important;transform:none!important;transition:none!important;direction:rtl!important;}
  .nb-auth__panel{display:none!important;width:100%!important;min-width:0!important;max-width:100%!important;padding-inline:0!important;transform:none!important;direction:rtl!important;}
  .nb-auth[data-stage="phone"] .nb-auth__panel--phone,
  .nb-auth[data-stage="code"] .nb-auth__panel--code,
  .nb-auth[data-stage="profile"] .nb-auth__panel--profile{display:block!important;animation:nb-auth-panel-enter .18s ease both;}
  .nb-auth__name{width:100%!important;grid-template-columns:44px minmax(0,1fr)!important;}
  .nb-auth__name input{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;font-size:16px!important;line-height:1.4!important;touch-action:manipulation;}
  .nb-auth :where(input,textarea,select){max-width:100%!important;font-size:16px!important;}
}
@keyframes nb-auth-panel-enter{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.nb-auth[data-stage] .nb-auth__panel{animation:none!important}}

