.pnfb-lock{overflow:hidden}
.pnfb{position:fixed;inset:0;z-index:99998;display:grid;place-items:center;padding:16px;background:rgba(16,38,77,.55);animation:pnfb-fade .2s ease-out}
.pnfb *{box-sizing:border-box}
.pnfb-box{position:relative;width:min(480px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;color:#10264d;border-radius:20px;padding:26px 24px 22px;box-shadow:0 24px 60px rgba(0,0,0,.35);font-family:inherit;animation:pnfb-pop .22s ease-out}
.pnfb-box h2{margin:0 36px 6px 0;font-size:22px;line-height:1.2;letter-spacing:-.4px;font-weight:800;color:#10264d}
.pnfb-intro{margin:0 0 14px;font-size:14.5px;line-height:1.5;color:#44587a}
.pnfb-x{position:absolute;top:10px;right:10px;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:#5d6f8c;font-size:26px;line-height:1;cursor:pointer}
.pnfb-x:hover{background:#eef4fc}
.pnfb-stars{border:0;margin:0 0 12px;padding:0}
.pnfb-stars legend{padding:0;margin-bottom:4px;font-size:13.5px;font-weight:700;color:#2b3f65}
.pnfb-star-row{display:flex;gap:2px;align-items:center}
.pnfb-star-row input{position:absolute;opacity:0;width:1px;height:1px}
.pnfb-star-row label{font-size:34px;line-height:1;color:#cfd9e8;cursor:pointer;padding:0 3px;transition:color .1s}
.pnfb-star-row label.on{color:#f0a30a}
.pnfb-star-row input:focus-visible + label{outline:3px solid #7db4ff;border-radius:6px}
.pnfb-star-hint{display:block;min-height:18px;font-size:12.5px;color:#5d6f8c;margin-top:2px}
.pnfb-field{display:grid;gap:5px;margin:0 0 12px}
.pnfb-field>label{font-size:13.5px;font-weight:700;color:#2b3f65}
.pnfb-field select,.pnfb-field textarea,.pnfb-field input[type=email]{width:100%;border:1px solid #d9e4f3;border-radius:10px;padding:10px 12px;font:inherit;font-size:14.5px;color:#10264d;background:#fff}
.pnfb-field textarea{resize:vertical;min-height:92px}
.pnfb-field select:focus,.pnfb-field textarea:focus,.pnfb-field input:focus{outline:0;border-color:#0b6ff2;box-shadow:0 0 0 3px rgba(11,111,242,.15)}
.pnfb-check{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:#44587a;font-weight:500}
.pnfb-check[hidden]{display:none}
.pnfb-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pnfb-error{margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#ffe9ec;color:#a3202c;font-size:13.5px}
.pnfb-error[hidden]{display:none}
.pnfb-actions{display:flex;gap:10px;flex-wrap:wrap}
.pnfb-btn{height:44px;padding:0 20px;border-radius:12px;border:1.5px solid #0b6ff2;background:#fff;color:#0b6ff2;font:inherit;font-weight:700;font-size:15px;cursor:pointer}
.pnfb-btn.primary{background:#0b6ff2;color:#fff}
.pnfb-btn:disabled{opacity:.6;cursor:wait}
.pnfb-note{margin:12px 0 0;font-size:12px;line-height:1.45;color:#7a8aa3}
.pnfb-note a{color:#0b6ff2}
.pnfb-thanks{text-align:center;padding:14px 4px 4px}
.pnfb-thanks p{margin:0 0 16px;color:#44587a}
.pnfb-link-btn{background:none;border:0;padding:0;color:#0b6ff2;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
@keyframes pnfb-fade{from{opacity:0}to{opacity:1}}
@keyframes pnfb-pop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pnfb,.pnfb-box{animation:none}}
@media (max-width:420px){.pnfb-box{padding:22px 18px 18px;border-radius:18px}.pnfb-star-row label{font-size:38px}}
@media print{.pnfb{display:none!important}}
