.modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s ease-out backdropFadeIn;display:flex;position:fixed;inset:0}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{width:100%;max-width:420px;margin:0 1rem;animation:.25s ease-out modalSlideIn}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2.5rem 2rem;box-shadow:0 25px 50px -12px #00000080}.modal-brand{align-items:baseline;gap:.5rem;margin-bottom:1.5rem;display:flex}.modal-brand-primary{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.025em;font-size:1.25rem;font-weight:600}.modal-brand-secondary{color:var(--text-muted);font-size:.75rem;font-weight:400}.modal-form-state h2{color:var(--text-primary);letter-spacing:-.025em;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.modal-subtext{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.modal-input-group{margin-bottom:1rem}.modal-input{border:1px solid var(--border-color);background:var(--bg-tertiary);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;padding:.875rem 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.modal-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.modal-input::placeholder{color:var(--text-muted)}.modal-error{color:#ef4444;margin:0 0 1rem;font-size:.875rem}.modal-submit{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:500}.modal-success-state{text-align:center;animation:.3s ease-out successFadeIn}@keyframes successFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.success-icon{color:#fff;background:#10b981;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1.25rem;font-size:1.5rem;font-weight:600;display:flex}.modal-success-state h2{color:var(--text-primary);letter-spacing:-.025em;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.modal-success-state .modal-subtext{margin-bottom:1.75rem}.modal-close-btn{padding:.75rem 1.5rem;font-size:.95rem}@media (max-width:768px){.modal-backdrop{align-items:flex-end}.modal-container{max-width:none;margin:0;animation:.35s cubic-bezier(.16,1,.3,1) mobileSheetSlideIn}@keyframes mobileSheetSlideIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-content{border-radius:20px 20px 0 0;padding:32px 24px 48px;position:relative}.modal-content:before{content:"";background:var(--border-bright);border-radius:2px;width:40px;height:4px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.modal-brand{justify-content:center;margin-top:8px}.modal-form-state h2,.modal-success-state h2,.modal-subtext{text-align:center}.modal-input{border-radius:10px;height:52px;font-size:1rem}.modal-submit{border-radius:10px;height:52px}}
