.policy-modal {
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    display: flex;
    justify-content: center;
    align-items: center;
}

.policy-modal .modal-content {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    width: 90%;
    max-width: 800px;
    height: 80%;
    position: relative;
}

.policy-modal .close-modal {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    color: #aaa;
}

.policy-modal .close-modal:hover {
    color: #000;
}

.legal-links {
    text-align: center;
    margin-top: 20px;
    padding: 10px;
    font-size: 0.9em;
}

.legal-links a {
    color: #666;
    text-decoration: none;
    margin: 0 10px;
}

.legal-links a:hover {
    color: #333;
    text-decoration: underline;
}

/* google*/

   /* Login Page Specific Styles */
        .login-page {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background: var(--bg-color);
            padding: 2rem;
        }

        .login-container {
            background: var(--bg-secondary);
            padding: 3rem;
            border-radius: var(--border-radius);
            box-shadow: var(--box-shadow-convex);
            text-align: center;
            max-width: 400px;
            width: 100%;
        }

        .login-header {
            margin-bottom: 2rem;
        }

        .login-header h1 {
            color: var(--text-color-dark);
            font-size: 2rem;
            margin-bottom: 0.5rem;
            background: linear-gradient(135deg, var(--text-color-dark), var(--accent-color));
            background-clip: text;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        .login-header p {
            color: var(--text-color-light);
            font-size: 1rem;
        }

        .google-login-btn {
            background: #4285f4;
            color: white;
            border: none;
            padding: 16px 24px;
            border-radius: var(--border-radius);
            font-size: 1.1rem;
            font-weight: 500;
            cursor: pointer;
            display: flex;
            align-items: center;
            gap: 12px;
            transition: var(--transition);
            box-shadow: var(--box-shadow-convex);
            width: 100%;
            justify-content: center;
            margin-bottom: 1.5rem;
        }

        .google-login-btn:hover {
            background: #3367d6;
            transform: translateY(-2px);
            box-shadow: 0 8px 25px rgba(66, 133, 244, 0.3);
        }

        .google-login-btn:active {
            transform: translateY(0);
            box-shadow: var(--box-shadow-pressed);
        }

        .google-login-btn:disabled {
            opacity: 0.6;
            cursor: not-allowed;
            transform: none;
        }

        .loading-spinner {
            display: none;
            width: 20px;
            height: 20px;
            border: 2px solid #ffffff;
            border-top: 2px solid transparent;
            border-radius: 50%;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        .divider {
            margin: 2rem 0;
            position: relative;
            text-align: center;
        }

        .divider::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 0;
            right: 0;
            height: 1px;
            background: var(--border-color);
        }

        .divider span {
            background: var(--bg-secondary);
            padding: 0 1rem;
            color: var(--text-color-light);
            font-size: 0.9rem;
        }

        .back-to-home {
            color: var(--text-color-light);
            text-decoration: none;
            font-size: 0.9rem;
            transition: var(--transition);
        }

        .back-to-home:hover {
            color: var(--accent-color);
        }

        .error-message {
            background: #fee;
            color: #c33;
            padding: 1rem;
            border-radius: 8px;
            margin-bottom: 1rem;
            display: none;
        }

        .success-message {
            background: #efe;
            color: #3c3;
            padding: 1rem;
            border-radius: 8px;
            margin-bottom: 1rem;
            display: none;
        }

        /* Dark theme support */
        [data-theme="dark"] .error-message {
            background: #4a1a1a;
            color: #ff6b6b;
        }

        [data-theme="dark"] .success-message {
            background: #1a4a1a;
            color: #6bcf7f;
        }
