.auth-container { width: 100%; max-width: 420px; margin: 0 auto; padding: 16px; min-height: 100vh; display: flex; align-items: center; justify-content: center; }
.auth-box { background: white; border-radius: 24px; padding: 32px 28px; box-shadow: 0 20px 40px rgba(0,0,0,0.15); width: 100%; }
.auth-header { text-align: center; margin-bottom: 28px; }
.auth-header h2 { color: #4f46e5; font-size: 2rem; font-weight: 700; margin-bottom: 8px; }
.auth-header p { color: #6b7280; font-size: 0.95rem; }
.auth-form { display: flex; flex-direction: column; gap: 18px; }
.auth-toggle { text-align: center; margin: 20px 0 16px; font-size: 0.95rem; color: #6b7280; }
.link-btn { background: none; border: none; color: #4f46e5; font-weight: 600; cursor: pointer; margin-left: 6px; }
.divider { display: flex; align-items: center; color: #9ca3af; font-size: 0.85rem; margin: 16px 0; }
.divider::before, .divider::after { content: ''; flex: 1; border-bottom: 1px solid #e5e7eb; }
.divider span { margin: 0 12px; }
.guest-info-box { background: #f0fdf4; padding: 16px; border-radius: 12px; margin: 20px 0; border: 1px solid #86efac; }
.guest-info-box ul { color: #166534; font-size: 0.9rem; padding-left: 24px; }
.modal-actions { display: flex; gap: 12px; margin-top: 24px; }
.modal-actions button { flex: 1; }