<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Receipt Processor - Auth</title> <style> :root { --primary: #1DBC60; --primary-dark: #17A955; --secondary: #607D8B; --light-gray: #f5f5f5; --medium-gray: #C5C7C4; --dark-gray: #757575; --white: #ffffff; --text-dark: #212121; --text-light: #757575; --page-bg: #C5C7C4; --error: #F44336; --warning: #FF9800; } * { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; } body { background-color: var(--page-bg); display: flex; justify-content: center; align-items: center; min-height: 100vh; padding: 20px; } .auth-container { background-color: var(--white); border-radius: 12px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); width: 100%; max-width: 500px; overflow: hidden; } .auth-header { background-color: var(--primary); color: var(--white); padding: 24px; text-align: center; } .auth-header h1 { font-size: 1.5rem; font-weight: 600; margin-bottom: 8px; } .auth-header p { font-size: 0.9rem; opacity: 0.9; } .auth-content { padding: 24px; } .auth-form { display: flex; flex-direction: column; gap: 16px; } .form-group { display: flex; flex-direction: column; gap: 8px; } .form-group label { color: var(--text-dark); font-size: 0.9rem; font-weight: 500; } .form-control { padding: 12px 16px; border: 1px solid var(--medium-gray); border-radius: 6px; font-size: 1rem; transition: border-color 0.3s; } .form-control:focus { outline: none; border-color: var(--primary); } .form-control.error { border-color: var(--error); } .error-message { color: var(--error); font-size: 0.8rem; display: none; } .btn { background-color: var(--primary); color: var(--white); border: none; padding: 12px 24px; border-radius: 6px; font-size: 1rem; font-weight: 500; cursor: pointer; transition: background-color 0.3s; margin-top: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; } .btn:hover { background-color: var(--primary-dark); } .btn.secondary { background-color: var(--medium-gray); color: var(--text-dark); } .btn.secondary:hover { background-color: var(--dark-gray); color: var(--white); } .auth-footer { text-align: center; margin-top: 24px; color: var(--text-light); font-size: 0.9rem; } .auth-footer a { color: var(--primary); text-decoration: none; font-weight: 500; } .auth-footer a:hover { text-decoration: underline; } .form-actions { display: flex; justify-content: space-between; align-items: center; margin-top: 16px; } .remember-me { display: flex; align-items: center; gap: 8px; } .remember-me input { width: 16px; height: 16px; } .forgot-password { color: var(--primary); text-decoration: none; font-size: 0.9rem; } .forgot-password:hover { text-decoration: underline; } .spinner { animation: spin 1s linear infinite; } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } /* Tabs for login/signup */ .auth-tabs { display: flex; border-bottom: 1px solid var(--light-gray); } .auth-tab { flex: 1; text-align: center; padding: 16px; cursor: pointer; color: var(--text-light); font-weight: 500; transition: all 0.3s; } .auth-tab.active { color: var(--primary); border-bottom: 2px solid var(--primary); } /* Social login buttons */ .social-login { display: flex; flex-direction: column; gap: 12px; margin-top: 24px; } .social-btn { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 12px; border-radius: 6px; border: 1px solid var(--medium-gray); background-color: var(--white); color: var(--text-dark); font-weight: 500; cursor: pointer; transition: all 0.3s; } .social-btn:hover { background-color: var(--light-gray); } .social-btn.google { color: #DB4437; } .social-btn.facebook { color: #4267B2; } .divider { display: flex; align-items: center; margin: 24px 0; color: var(--text-light); font-size: 0.8rem; } .divider::before, .divider::after { content: ""; flex: 1; border-bottom: 1px solid var(--medium-gray); } .divider::before { margin-right: 16px; } .divider::after { margin-left: 16px; } @media (max-width: 480px) { .auth-container { border-radius: 0; } .form-actions { flex-direction: column; gap: 12px; align-items: flex-start; } .forgot-password { margin-left: 24px; } } </style> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> </head> <body>
Track your expenses with ease