.npm-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,18,24,.55);backdrop-filter:blur(3px);opacity:0;transition:opacity .25s ease;}
.npm-overlay.is-open{opacity:1;}
.npm-modal{position:relative;width:100%;max-width:460px;max-height:86vh;overflow:auto;background:#fff;color:#1d2433;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.35);padding:30px 28px 24px;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;transform:translateY(14px) scale(.97);transition:transform .25s ease;border-top:5px solid var(--np-primary,#e21c2c);}
.npm-overlay.is-open .npm-modal{transform:none;}
.npm-modal h2{font-family:inherit;margin:0 0 10px;font-size:20px;line-height:1.25;color:#1d2433;}
.npm-body{color:#344054;}
.npm-body p{margin:0 0 10px;}
.npm-body a{color:var(--np-primary,#e21c2c);text-decoration:underline;}
.npm-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border:0;border-radius:50%;background:#f2f4f7;color:#344054;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.npm-close:hover,.npm-close:focus-visible{background:#e4e7ec;outline:2px solid var(--np-primary,#e21c2c);outline-offset:1px;}
.npm-ok{margin-top:12px;border:0;border-radius:10px;background:var(--np-primary,#e21c2c);color:var(--np-on-primary,#fff);font-weight:600;padding:10px 20px;cursor:pointer;font-size:15px;}
.npm-ok:hover{filter:brightness(.92);}
@media (prefers-reduced-motion:reduce){.npm-overlay,.npm-modal{transition:none;}}
