* { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6; color: #333; background-color: #f5f5f5; } .container { max-width: 1200px; margin: 0 auto; padding: 20px; } /* Flash messages */ .flash { padding: 12px 16px; margin-bottom: 16px; border-radius: 4px; } .flash-success { background-color: #d4edda; color: #155724; border: 1px solid #c3e6cb; } .flash-error { background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; } /* Auth container */ .auth-container { max-width: 400px; margin: 60px auto; padding: 32px; background: #fff; border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .auth-container h1 { margin-bottom: 24px; font-size: 24px; text-align: center; } /* Form styles */ .auth-form { display: flex; flex-direction: column; gap: 16px; } .form-group { display: flex; flex-direction: column; gap: 4px; } .form-group label { font-weight: 500; font-size: 14px; } .form-input { padding: 10px 12px; font-size: 16px; border: 1px solid #ddd; border-radius: 4px; transition: border-color 0.2s; } .form-input:focus { outline: none; border-color: #007bff; } .error { color: #dc3545; font-size: 13px; } .hint { color: #666; font-size: 12px; } /* Buttons */ .btn { padding: 12px 24px; font-size: 16px; font-weight: 500; border: none; border-radius: 4px; cursor: pointer; transition: background-color 0.2s; } .btn-primary { background-color: #007bff; color: #fff; } .btn-primary:hover { background-color: #0056b3; } /* Dashboard */ .dashboard-container { max-width: 800px; margin: 60px auto; padding: 32px; background: #fff; border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .dashboard-container h1 { margin-bottom: 16px; } .dashboard-container p { margin-bottom: 8px; }