:root{--npp-auth:#4f46e5;--npp-auth-2:#7c3aed;--npp-ink:#1e293b}.npp-auth-open{overflow:hidden}.npp-auth-modal{position:fixed;inset:0;z-index:2147483000;font-family:inherit}.npp-auth-backdrop{position:absolute;inset:0;background:rgba(8,15,30,.58);backdrop-filter:blur(9px);animation:nppAuthFade .18s ease}.npp-auth-dialog{position:relative;z-index:1;width:min(920px,calc(100% - 28px));min-height:560px;margin:5vh auto;display:grid;grid-template-columns:40% 60%;background:#fff;border:1px solid rgba(255,255,255,.6);border-radius:28px;overflow:hidden;box-shadow:0 35px 90px rgba(2,6,23,.38);transform:translateY(16px) scale(.985);opacity:0;transition:transform .22s ease,opacity .22s ease}.npp-auth-modal.is-open .npp-auth-dialog{transform:none;opacity:1}.npp-auth-brand{padding:44px 38px;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(196,181,253,.6),transparent 33%),linear-gradient(145deg,#111827,#312e81 55%,#6d28d9)}.npp-auth-brand-kicker,.npp-auth-eyebrow{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.12em}.npp-auth-brand h2{margin:32px 0 18px;font-size:48px;line-height:1.02}.npp-auth-brand h2 em{font-style:normal;color:#c4b5fd}.npp-auth-brand p{color:#dbeafe;line-height:1.65}.npp-auth-brand ul{padding:18px 0 0;margin:22px 0 0;border-top:1px solid rgba(255,255,255,.18);list-style:none;line-height:2}.npp-auth-panel{position:relative;padding:48px 50px;background:linear-gradient(180deg,#fff,#fafbff)}.npp-auth-close{position:absolute;right:18px;top:15px;border:0;background:#f1f5f9;width:38px;height:38px;border-radius:12px;font-size:26px;cursor:pointer;color:#475569}.npp-auth-context{display:flex;gap:9px;align-items:center;padding:10px 12px;border:1px solid #ddd6fe;background:#f5f3ff;color:#5b21b6;border-radius:12px;font-size:13px;font-weight:700;margin-bottom:18px}.npp-auth-view{display:none}.npp-auth-view.is-active{display:block;animation:nppAuthSlide .2s ease}.npp-auth-panel h2{font-size:32px;margin:8px 0}.npp-auth-panel p{color:#64748b;line-height:1.55;margin:0 0 22px}.npp-auth-view form{display:grid;gap:15px}.npp-auth-view label,.npp-auth-field{display:block;font-size:13px;font-weight:800;color:#334155}.npp-auth-view label>input,.npp-auth-field input{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #cbd5e1;border-radius:12px;padding:13px 14px;background:#fff;font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.npp-auth-view input:focus{border-color:#818cf8;box-shadow:0 0 0 4px rgba(99,102,241,.12)}.npp-auth-password{position:relative}.npp-auth-password input{padding-right:52px}.npp-auth-toggle-password{position:absolute;right:6px;bottom:6px;border:0;background:#f8fafc;border-radius:9px;padding:7px;cursor:pointer}.npp-auth-check{display:flex!important;align-items:flex-start;gap:8px;font-weight:600!important}.npp-auth-check input{width:auto!important;margin:3px 0 0!important}.npp-auth-submit{position:relative;border:0;border-radius:13px;padding:14px 18px;background:linear-gradient(135deg,var(--npp-auth),var(--npp-auth-2));color:#fff;font-weight:900;font-size:15px;cursor:pointer;box-shadow:0 12px 24px rgba(79,70,229,.2)}.npp-auth-submit:disabled{opacity:.7;cursor:wait}.npp-auth-submit i{position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:nppAuthSpin .8s linear infinite;right:18px;top:15px}.npp-auth-links{margin-top:20px;font-size:13px;color:#64748b;display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap}.npp-auth-links button{border:0;background:none;padding:0;color:#4f46e5;font:inherit;font-weight:900;cursor:pointer}.npp-auth-links a{color:#4f46e5;font-weight:800;text-decoration:none}.npp-auth-message{display:none;margin-top:14px;padding:11px 12px;border-radius:10px;font-size:13px;font-weight:700}.npp-auth-message.is-error{display:block;background:#fef2f2;color:#b91c1c}.npp-auth-message.is-success{display:block;background:#ecfdf5;color:#047857}.npp-auth-steps{display:flex;gap:0;margin:22px 0 18px}.npp-auth-steps span{flex:1;text-align:center;font-size:11px;font-weight:800;color:#94a3b8;position:relative;padding-top:16px}.npp-auth-steps span:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#e2e8f0}.npp-auth-steps span.is-active{color:#4f46e5}.npp-auth-steps span.is-active:before{background:#4f46e5}.npp-auth-register-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.npp-auth-field-email,.npp-auth-field-phone,.npp-auth-field-password,.npp-auth-field-password_confirm{grid-column:1/-1}.npp-auth-view-success{text-align:center;padding-top:95px}.npp-auth-success-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 20px;border-radius:50%;background:#dcfce7;color:#15803d;font-size:38px;font-weight:900;animation:nppAuthPop .35s ease}.npp-auth-continue{margin:28px auto 0;max-width:280px;text-align:left;font-size:12px;font-weight:800;color:#64748b}.npp-auth-continue b{display:block;height:5px;background:linear-gradient(90deg,#4f46e5,#8b5cf6);border-radius:99px;margin-top:8px;animation:nppAuthProgress .9s ease}.npp-auth-page-message{margin:0 0 14px;padding:0;border-radius:12px}.npp-auth-page-message.is-success,.npp-auth-page-message.is-error{padding:12px 14px}.npp-auth-page-message.is-success{background:#ecfdf5;color:#047857}.npp-auth-page-message.is-error{background:#fef2f2;color:#b91c1c}@keyframes nppAuthFade{from{opacity:0}to{opacity:1}}@keyframes nppAuthSlide{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}@keyframes nppAuthSpin{to{transform:rotate(360deg)}}@keyframes nppAuthPop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}@keyframes nppAuthProgress{from{width:0}to{width:100%}}@media(max-width:760px){.npp-auth-dialog{grid-template-columns:1fr;width:min(100%,calc(100% - 14px));margin:7px auto;min-height:calc(100vh - 14px);border-radius:24px}.npp-auth-brand{display:none}.npp-auth-panel{padding:56px 24px 30px}.npp-auth-register-fields{grid-template-columns:1fr}.npp-auth-field{grid-column:auto!important}.npp-auth-view-success{padding-top:130px}}@media(prefers-reduced-motion:reduce){.npp-auth-backdrop,.npp-auth-dialog,.npp-auth-view,.npp-auth-success-mark,.npp-auth-continue b{animation:none!important;transition:none!important}}
