.fnnm-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999999;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.fnnm-modal-overlay.active{opacity:1;visibility:visible}.fnnm-modal-container{position:relative;background:var(--bg-card,#12141c);border:1px solid var(--border-color,#2a2e3b);border-radius:20px;padding:3rem 2.5rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.5);transform:scale(.8) translateY(20px);transition:transform .4s cubic-bezier(.34,1.56,.64,1);animation:fnnm-pulse 2s ease-in-out infinite}.fnnm-modal-overlay.active .fnnm-modal-container{transform:scale(1) translateY(0)}@keyframes fnnm-pulse{0%,100%{box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 0 0 rgba(59,130,246,.7)}50%{box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 0 10px rgba(59,130,246,0)}}[data-theme=light] .fnnm-modal-container{background:var(--bg-card,#fff);border-color:var(--border-color,#e2e8f0);box-shadow:0 20px 60px rgba(0,0,0,.15)}.fnnm-close-btn{position:absolute;top:1rem;right:1rem;background:0 0;border:none;color:var(--text-secondary,#94a3b8);cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.fnnm-close-btn:hover{background:var(--bg-card-hover,#1a1d26);color:var(--text-primary,#fff);transform:rotate(90deg)}.fnnm-modal-content{text-align:center}.fnnm-icon-wrapper{margin-bottom:1.5rem;display:flex;justify-content:center;animation:fnnm-icon-bounce 2s ease-in-out infinite}@keyframes fnnm-icon-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.fnnm-icon{color:var(--accent-blue,#3b82f6);filter:drop-shadow(0 0 10px rgba(59,130,246,.5))}.fnnm-title{font-size:1.75rem;font-weight:700;color:var(--text-primary,#fff);margin-bottom:1rem;line-height:1.2}.fnnm-description{font-size:1rem;color:var(--text-secondary,#94a3b8);margin-bottom:2rem;line-height:1.6}.fnnm-form{margin-bottom:1rem}.fnnm-input-wrapper{display:flex;gap:.5rem;margin-bottom:1rem;background:var(--bg-dark,#0b0c10);border:1px solid var(--border-color,#2a2e3b);border-radius:12px;padding:.5rem;transition:all .3s ease}.fnnm-input-wrapper:focus-within{border-color:var(--accent-blue,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.fnnm-input{flex:1;background:0 0;border:none;color:var(--text-primary,#fff);font-size:1rem;padding:.75rem 1rem;outline:none;font-family:var(--font-sans,'Inter',sans-serif)}.fnnm-input::placeholder{color:var(--text-secondary,#94a3b8)}.fnnm-submit-btn{background:linear-gradient(135deg,var(--accent-blue,#3b82f6) 0%,#2563eb 100%);border:none;color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;white-space:nowrap;position:relative;overflow:hidden}.fnnm-submit-btn:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.fnnm-submit-btn:hover:before{left:100%}.fnnm-submit-btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(59,130,246,.4)}.fnnm-submit-btn:active{transform:translateY(0)}.fnnm-submit-icon{transition:transform .3s ease}.fnnm-submit-btn:hover .fnnm-submit-icon{transform:translateX(4px)}.fnnm-message{min-height:1.5rem;margin-top:.5rem;font-size:.9rem;text-align:center;transition:all .3s ease}.fnnm-message.success{color:#10b981}.fnnm-message.error{color:#ef4444}.fnnm-privacy{font-size:.85rem;color:var(--text-secondary,#94a3b8);margin-top:1rem;opacity:.7}@media (max-width:640px){.fnnm-modal-container{padding:2rem 1.5rem;max-width:95%}.fnnm-title{font-size:1.5rem}.fnnm-input-wrapper{flex-direction:column}.fnnm-submit-btn{width:100%;justify-content:center}}.fnnm-submit-btn.loading{pointer-events:none;opacity:.7}.fnnm-submit-btn.loading .fnnm-submit-icon{animation:fnnm-spin 1s linear infinite}@keyframes fnnm-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes fnnm-fade-in{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fnnm-modal-overlay.active .fnnm-modal-container{animation:fnnm-fade-in .4s cubic-bezier(.34,1.56,.64,1)}