body { 
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
            background-color: #fdf2f8; 
            margin: 0;
            padding: 0;
        }
        .hidden { display: none !important; }
        .tab-btn.active { border-bottom: 3px solid #d946ef; color: #d946ef; font-weight: bold; background-color: #ffffff; }
        .tab-btn { color: #6b7280; font-weight: 500; }
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: #fdf2f8; }
        ::-webkit-scrollbar-thumb { background: #e879f9; border-radius: 10px; }
        ::-webkit-scrollbar-thumb:hover { background: #d946ef; }
        .gradient-bg { background: linear-gradient(135deg, #a855f7, #ec4899); }
        .gradient-text { background: linear-gradient(135deg, #a855f7, #ec4899); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
        .auth-mode-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 5px; margin-bottom: 18px; background: #fdf2f8; border: 1px solid #f5d0fe; border-radius: 14px; }
        .auth-mode-btn { padding: 10px 12px; border-radius: 10px; color: #6b7280; font-weight: 700; transition: 0.2s ease; }
        .auth-mode-btn.active { color: #a21caf; background: #fff; box-shadow: 0 3px 12px rgba(168, 85, 247, 0.12); }
        body.terms-open { overflow: hidden; }
        .terms-content section { margin-bottom: 2rem; }
        .terms-content h3 {
            margin: 0 0 0.75rem;
            color: #1f2937;
            font-size: 1.2rem;
            font-weight: 900;
        }
        .terms-content p { margin: 0 0 0.85rem; }
        .terms-content .terms-end {
            margin-bottom: 0;
            padding: 1.25rem;
            border: 2px solid #f0abfc;
            border-radius: 1rem;
            background: #fdf4ff;
        }
        .terms-scroll { overscroll-behavior: contain; }
        #accept-terms-btn:disabled { opacity: 0.72; }
        #accept-terms-btn:not(:disabled) {
            background: linear-gradient(135deg, #a855f7, #ec4899);
            box-shadow: 0 8px 20px rgba(236, 72, 153, 0.24);
        }
        @media (max-width: 640px) {
            .terms-content { font-size: 0.95rem; line-height: 1.8; }
            .terms-content h3 { font-size: 1.08rem; }
        }
