/* pages/index/index.wxss */
.home-container {
  min-height: 100vh;
  background: #f6f6f6;
}

.welcome-section {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  padding: 40rpx 30rpx 60rpx;
  color: #fff;
}

.welcome-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.user-info {
  display: flex;
  align-items: center;
}

.avatar {
  margin-right: 24rpx;
}

.avatar-img {
  width: 80rpx;
  height: 80rpx;
  border-radius: 40rpx;
  background: rgba(255, 255, 255, 0.2);
}

.username {
  font-size: 36rpx;
  font-weight: 600;
  margin-bottom: 8rpx;
}

.user-role {
  font-size: 24rpx;
  opacity: 0.8;
}

.weather-info {
  text-align: right;
}

.weather-icon {
  font-size: 32rpx;
  margin-bottom: 8rpx;
}

.weather-text {
  font-size: 24rpx;
  opacity: 0.8;
}

.bank-cards-section,
.quick-actions,
.stats-section,
.recent-transactions {
  padding: 30rpx;
  background: #fff;
  margin-bottom: 20rpx;
}

.section-title {
  font-size: 32rpx;
  font-weight: 600;
  color: #333;
  margin-bottom: 30rpx;
}

.cards-scroll {
  white-space: nowrap;
}

.cards-container {
  display: flex;
  gap: 20rpx;
}

.bank-card {
  min-width: 500rpx;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #fff;
  border-radius: 20rpx;
  padding: 40rpx;
  position: relative;
  overflow: hidden;
}

.bank-card::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
  animation: shimmer 3s infinite;
}

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

.bank-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20rpx;
}

.bank-name {
  font-size: 28rpx;
  font-weight: 600;
}

.card-type {
  font-size: 24rpx;
  opacity: 0.8;
}

.bank-card-number {
  font-size: 32rpx;
  font-weight: 600;
  letter-spacing: 4rpx;
  margin: 20rpx 0;
}

.bank-card-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 30rpx;
}

.bank-card-balance {
  font-size: 36rpx;
  font-weight: 700;
}

.bank-card-type {
  font-size: 24rpx;
  opacity: 0.8;
}

.action-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30rpx;
}

.action-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30rpx 20rpx;
  background: #f8f9fa;
  border-radius: 16rpx;
  transition: all 0.3s;
}

.action-item:active {
  transform: scale(0.95);
  background: #e9ecef;
}

.action-icon {
  font-size: 48rpx;
  margin-bottom: 16rpx;
}

.action-text {
  font-size: 24rpx;
  color: #666;
  text-align: center;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20rpx;
}

.stat-item {
  padding: 30rpx;
  background: #f8f9fa;
  border-radius: 16rpx;
  text-align: center;
}

.stat-value {
  font-size: 32rpx;
  font-weight: 600;
  color: #1890ff;
  margin-bottom: 8rpx;
}

.stat-label {
  font-size: 24rpx;
  color: #666;
  margin-bottom: 8rpx;
}

.stat-trend {
  font-size: 20rpx;
  font-weight: 500;
}

.stat-trend.up {
  color: #52c41a;
}

.stat-trend.down {
  color: #ff4d4f;
}

.transaction-list {
  space-y: 20rpx;
}

.transaction-item {
  display: flex;
  align-items: center;
  padding: 20rpx 0;
  border-bottom: 1rpx solid #f0f0f0;
}

.transaction-item:last-child {
  border-bottom: none;
}

.transaction-icon {
  font-size: 32rpx;
  margin-right: 20rpx;
  width: 60rpx;
  text-align: center;
}

.transaction-content {
  flex: 1;
}

.transaction-title {
  font-size: 28rpx;
  color: #333;
  margin-bottom: 8rpx;
}

.transaction-time {
  font-size: 20rpx;
  color: #999;
}

.transaction-amount {
  font-size: 28rpx;
  font-weight: 600;
  margin-right: 16rpx;
}

.transaction-amount.income {
  color: #52c41a;
}

.transaction-amount.expense {
  color: #ff4d4f;
}

.transaction-amount.transfer {
  color: #1890ff;
}

.transaction-status {
  font-size: 20rpx;
  padding: 8rpx 16rpx;
  border-radius: 20rpx;
  font-weight: 500;
}

.transaction-status.success {
  background: #f6ffed;
  color: #52c41a;
}

.transaction-status.pending {
  background: #fff7e6;
  color: #faad14;
}

.transaction-status.failed {
  background: #fff2f0;
  color: #ff4d4f;
}
