.auth-modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity .2s ease;overflow-y:auto}.auth-modal-overlay.visible{opacity:1}.auth-modal{background:var(--card-bg, #ffffff);border-radius:24px;width:100%;max-width:420px;padding:2rem;position:relative;box-shadow:0 25px 60px #00000040;transform:scale(.9) translateY(20px);opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);margin:auto;max-height:calc(100vh - 2rem);overflow-y:auto}.auth-modal.visible{transform:scale(1) translateY(0);opacity:1}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:var(--bg-secondary, #f1f5f9);border:none;width:40px;height:40px;min-width:40px;min-height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted, #64748b);transition:all .25s ease;z-index:10;flex-shrink:0}.auth-modal-close svg{width:24px;height:24px;flex-shrink:0}.auth-modal-close:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}.auth-modal-header{text-align:center;margin-bottom:2rem;padding-right:2rem}.auth-modal-icon{width:80px;height:80px;background:linear-gradient(135deg,#10b98126,#0596691a);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;color:var(--primary-color, #10b981);flex-shrink:0}.auth-modal-icon svg{width:48px;height:48px;flex-shrink:0}.auth-modal-title{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin:0 0 .5rem;line-height:1.3}.auth-modal-subtitle{color:var(--text-muted, #64748b);font-size:.95rem;margin:0;line-height:1.5}.auth-modal-content{display:flex;flex-direction:column;gap:1rem;width:100%}.auth-modal-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;border-radius:14px;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;transition:all .3s ease;border:2px solid transparent;width:100%;box-sizing:border-box;text-align:center;line-height:1.4;min-height:56px}.auth-modal-btn svg{width:20px;height:20px;flex-shrink:0}.auth-modal-btn span{white-space:nowrap}.auth-modal-btn-primary{background:linear-gradient(135deg,var(--primary-color, #10b981) 0%,#059669 100%);color:#fff;box-shadow:0 4px 15px #10b98159}.auth-modal-btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #10b98173}.auth-modal-btn-primary:active{transform:translateY(-1px);box-shadow:0 4px 15px #10b98166}.auth-modal-btn-outline{background:transparent;color:var(--primary-color, #10b981);border-color:var(--primary-color, #10b981)}.auth-modal-btn-outline:hover{background:var(--primary-color, #10b981);color:#fff;transform:translateY(-3px);box-shadow:0 8px 25px #10b98159}.auth-modal-btn-outline:active{transform:translateY(-1px);box-shadow:0 4px 15px #10b9814d}.auth-modal-divider{display:flex;align-items:center;gap:1rem;margin:.5rem 0;width:100%}.auth-modal-divider:before,.auth-modal-divider:after{content:"";flex:1;height:1px;background:var(--border-color, #e5e7eb)}.auth-modal-divider span{color:var(--text-muted, #94a3b8);font-size:.85rem;font-weight:500;flex-shrink:0}.auth-modal-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #e5e7eb)}.auth-modal-benefits{display:flex;flex-direction:column;gap:.75rem}.benefit-item{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:var(--text-secondary, #64748b)}.benefit-icon{font-size:1.1rem;width:1.5rem;text-align:center;flex-shrink:0}@media(max-width:768px){.auth-modal-overlay{padding:.75rem}.auth-modal{max-width:400px;padding:1.75rem;border-radius:22px}.auth-modal-icon{width:72px;height:72px}.auth-modal-icon svg{width:44px;height:44px}.auth-modal-title{font-size:1.4rem}.auth-modal-btn{padding:.9rem 1.25rem;min-height:52px}}@media(max-width:480px){.auth-modal-overlay{padding:.5rem;align-items:flex-end}.auth-modal{padding:1.5rem;border-radius:20px 20px 0 0;max-width:100%;margin:0;max-height:90vh}.auth-modal.visible{transform:scale(1) translateY(0)}.auth-modal-header{margin-bottom:1.5rem;padding-right:2.5rem}.auth-modal-icon{width:64px;height:64px;margin-bottom:1rem}.auth-modal-icon svg{width:36px;height:36px}.auth-modal-title{font-size:1.3rem}.auth-modal-subtitle{font-size:.9rem}.auth-modal-btn{padding:.875rem 1rem;font-size:.95rem;border-radius:12px;min-height:50px;gap:.6rem}.auth-modal-btn svg{width:18px;height:18px}.auth-modal-close{width:36px;height:36px;min-width:36px;min-height:36px;top:.75rem;right:.75rem}.auth-modal-close svg{width:20px;height:20px}.benefit-item{font-size:.85rem}.auth-modal-footer{margin-top:1.5rem;padding-top:1.25rem}}@media(max-width:360px){.auth-modal-overlay{padding:0}.auth-modal{padding:1.25rem;border-radius:16px 16px 0 0;max-height:92vh}.auth-modal-header{margin-bottom:1.25rem;padding-right:2rem}.auth-modal-icon{width:56px;height:56px;margin-bottom:.875rem}.auth-modal-icon svg{width:32px;height:32px}.auth-modal-title{font-size:1.15rem}.auth-modal-subtitle{font-size:.85rem}.auth-modal-content{gap:.75rem}.auth-modal-btn{padding:.75rem .875rem;font-size:.9rem;border-radius:10px;min-height:48px;gap:.5rem}.auth-modal-btn svg{width:16px;height:16px}.auth-modal-divider{margin:.375rem 0;gap:.75rem}.auth-modal-divider span{font-size:.8rem}.auth-modal-close{width:32px;height:32px;min-width:32px;min-height:32px;top:.625rem;right:.625rem}.auth-modal-close svg{width:18px;height:18px}.auth-modal-footer{margin-top:1.25rem;padding-top:1rem}.auth-modal-benefits{gap:.5rem}.benefit-item{font-size:.8rem;gap:.5rem}.benefit-icon{font-size:1rem;width:1.25rem}}@media(max-height:500px)and (orientation:landscape){.auth-modal-overlay{align-items:center;padding:.5rem}.auth-modal{max-height:calc(100vh - 1rem);padding:1rem 1.5rem;border-radius:16px}.auth-modal-header{margin-bottom:1rem}.auth-modal-icon{width:48px;height:48px;margin-bottom:.5rem}.auth-modal-icon svg{width:28px;height:28px}.auth-modal-title{font-size:1.1rem;margin-bottom:.25rem}.auth-modal-subtitle{font-size:.8rem}.auth-modal-content{gap:.5rem}.auth-modal-btn{padding:.625rem 1rem;min-height:44px;font-size:.9rem}.auth-modal-divider{margin:.25rem 0}.auth-modal-footer{display:none}}[data-theme=dark] .auth-modal,.dark .auth-modal{background:var(--card-bg, #1e293b);box-shadow:0 25px 60px #00000080}[data-theme=dark] .auth-modal-close,.dark .auth-modal-close{background:var(--bg-secondary, #334155);color:#94a3b8}[data-theme=dark] .auth-modal-close:hover,.dark .auth-modal-close:hover{background:#ef4444;color:#fff}[data-theme=dark] .auth-modal-icon,.dark .auth-modal-icon{background:linear-gradient(135deg,#10b98133,#05966926)}[data-theme=dark] .auth-modal-btn-outline,.dark .auth-modal-btn-outline{border-color:var(--primary-color, #10b981);color:var(--primary-color, #10b981)}[data-theme=dark] .auth-modal-btn-outline:hover,.dark .auth-modal-btn-outline:hover{background:var(--primary-color, #10b981);color:#fff}@media(prefers-color-scheme:dark){.auth-modal{background:var(--card-bg, #1e293b);box-shadow:0 25px 60px #00000080}.auth-modal-close{background:var(--bg-secondary, #334155);color:#94a3b8}.auth-modal-close:hover{background:#ef4444;color:#fff}.auth-modal-icon{background:linear-gradient(135deg,#10b98133,#05966926)}.auth-modal-btn-outline{border-color:var(--primary-color, #10b981);color:var(--primary-color, #10b981)}.auth-modal-btn-outline:hover{background:var(--primary-color, #10b981);color:#fff}}@media(prefers-reduced-motion:reduce){.auth-modal-overlay,.auth-modal,.auth-modal-btn,.auth-modal-close{transition:none}.auth-modal.visible,.auth-modal-close:hover,.auth-modal-btn:hover,.auth-modal-btn:active{transform:none}}@media(hover:none)and (pointer:coarse){.auth-modal-btn{min-height:52px}.auth-modal-close{min-width:44px;min-height:44px}.auth-modal-btn:hover{transform:none;box-shadow:0 4px 15px #10b98159}.auth-modal-btn-outline:hover{background:transparent;color:var(--primary-color, #10b981)}.auth-modal-btn:active{transform:scale(.98)}.auth-modal-btn-primary:active{box-shadow:0 2px 10px #10b9814d}.auth-modal-btn-outline:active{background:var(--primary-color, #10b981);color:#fff}.auth-modal-close:hover{transform:none;background:var(--bg-secondary, #f1f5f9);color:var(--text-muted, #64748b)}.auth-modal-close:active{background:#ef4444;color:#fff}}@media(prefers-contrast:high){.auth-modal{border:2px solid var(--text-primary, #1f2937)}.auth-modal-btn{border-width:3px}.auth-modal-btn-primary{background:var(--primary-color, #10b981)}.auth-modal-divider:before,.auth-modal-divider:after{height:2px;background:var(--text-muted, #64748b)}}@media print{.auth-modal-overlay{display:none}}
