.popup-overlay { position:fixed; inset:0; z-index:100; display:none; align-items:center; justify-content:center; padding:1rem; }
.popup-overlay.active { display:flex; }
.popup-backdrop { position:absolute; inset:0; background:rgba(10,14,23,.8); backdrop-filter:blur(4px); }
.popup-modal { position:relative; background:var(--card); border:1px solid var(--border); border-radius:1rem; padding:2rem; max-width:28rem; width:100%; box-shadow:0 25px 50px rgba(0,0,0,.5); animation:popupIn .3s ease; }
.popup-close { position:absolute; top:1rem; right:1rem; background:none; border:none; color:var(--muted-foreground); cursor:pointer; transition:color .3s; }
.popup-close:hover { color:var(--foreground); }
.popup-icon { width:4rem; height:4rem; background:rgba(255,107,0,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 1.5rem; }
.popup-icon svg { width:2rem; height:2rem; color:var(--primary); }
.popup-title { font-family:var(--font-heading); font-size:1.5rem; font-weight:700; color:var(--foreground); text-align:center; margin-bottom:.5rem; }
.popup-desc { text-align:center; color:var(--muted-foreground); margin-bottom:1.5rem; }
.popup-input { width:100%; height:3rem; padding:0 1rem; background:var(--background); border:1px solid var(--border); border-radius:var(--radius); color:var(--foreground); font-size:1.125rem; text-align:center; }
.popup-input:focus { outline:none; border-color:var(--primary); }
.popup-input:-webkit-autofill,
.popup-input:-webkit-autofill:hover, 
.popup-input:-webkit-autofill:focus, 
.popup-input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px var(--background) inset !important;
    -webkit-text-fill-color: var(--foreground) !important;
    transition: background-color 5000s ease-in-out 0s;
}
.popup-note { font-size:.75rem; color:var(--muted-foreground); text-align:center; margin-top:1rem; }
.popup-success { text-align:center; padding:2rem 0; }
.popup-success-icon { width:4rem; height:4rem; background:rgba(34,197,94,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; }
.popup-success-icon svg { width:2rem; height:2rem; color:#22C55E; }
.popup-success h3 { font-size:1.25rem; font-weight:700; color:var(--foreground); margin-bottom:.5rem; }
.popup-success p { color:var(--muted-foreground); }
