// 引入iOS主题样式
@use '../../../../../shared/styles/ios-theme' as ios;
@use '../../../../../shared/styles/variables';

// 参考HR考勤页面的设计风格，使用iOS主题变量
$primary-color: ios.$ios-primary;
$primary-light: #3b82f6;
$secondary-color: #0d9488;
$success-color: ios.$ios-success;
$warning-color: ios.$ios-warning;
$error-color: ios.$ios-error;
$info-color: ios.$ios-info;
$text-primary: ios.$ios-text-primary;
$text-secondary: ios.$ios-text-secondary;
$text-tertiary: ios.$ios-text-tertiary;
$bg-primary: ios.$ios-background;
$bg-secondary: ios.$ios-background-secondary;
$bg-tertiary: ios.$ios-background-tertiary;
$border-color: ios.$ios-border;
$shadow-sm: ios.$ios-shadow-sm;
$shadow-md: ios.$ios-shadow-md;
$shadow-lg: ios.$ios-shadow-lg;
$border-radius: ios.$ios-radius-md;
$transition: all 0.2s ease;

// 主容器样式
.after-sales-container {
  padding: 24px;
  min-height: 100vh;
  background-color: $bg-secondary;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

// 页面标题
.page-header {
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 2px solid $border-color;

  h1 {
    font-size: 28px;
    font-weight: 700;
    color: $text-primary;
    margin: 0 0 8px 0;
  }

  .page-description {
    font-size: 16px;
    color: $text-secondary;
    margin: 0;
  }
}

// 统计数据看板
.stats-dashboard {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin-bottom: 24px;

  .stat-card {
    background-color: $bg-primary;
    border-radius: $border-radius;
    padding: 20px;
    box-shadow: $shadow-sm;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: $transition;

    &:hover {
      box-shadow: $shadow-md;
      transform: translateY(-2px);
    }

    .stat-icon {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;

      &.total {
        background-color: $primary-color;
      }

      &.pending {
        background-color: $warning-color;
      }

      &.overdue {
        background-color: $error-color;
      }

      &.review {
        background-color: $secondary-color;
      }

      &.priority {
        background-color: $info-color;
      }

      mat-icon {
        font-size: 24px;
        width: 24px;
        height: 24px;
      }
    }

    .stat-content {
      flex: 1;

      .stat-value {
        font-size: 24px;
        font-weight: 700;
        color: $text-primary;
        margin-bottom: 4px;
      }

      .stat-label {
        font-size: 14px;
        color: $text-secondary;
      }
    }
  }
}

// 搜索和筛选栏
.filter-bar {
  background-color: $bg-primary;
  border-radius: $border-radius;
  padding: 20px;
  margin-bottom: 24px;
  box-shadow: $shadow-sm;

  .search-section {
    margin-bottom: ios.$ios-spacing-md;

    .search-field {
      width: 100%;
      max-width: 400px;
      
      .mat-mdc-form-field {
        border-radius: ios.$ios-radius-md;
        font-family: ios.$ios-font-family;
        
        .mat-mdc-text-field-wrapper {
          background: white;
          border: 1px solid ios.$ios-border;
          border-radius: ios.$ios-radius-md;
          transition: all 0.3s ease;

          &:hover {
            border-color: ios.$ios-primary;
          }
        }

        .mat-mdc-form-field-infix {
          color: ios.$ios-text-primary;
          font-family: ios.$ios-font-family;
          padding: ios.$ios-spacing-sm;
        }

        &.mat-focused .mat-mdc-text-field-wrapper {
          border-color: ios.$ios-primary;
          box-shadow: 0 0 0 2px rgba(0, 122, 255, 0.1);
        }
      }
    }
  }

  .filter-section {
    display: flex;
    gap: ios.$ios-spacing-md;
    flex-wrap: wrap;

    .filter-field {
      min-width: 150px;
      
      .mat-mdc-form-field {
        border-radius: ios.$ios-radius-md;
        font-family: ios.$ios-font-family;
        
        .mat-mdc-text-field-wrapper {
          background: white;
          border: 1px solid ios.$ios-border;
          border-radius: ios.$ios-radius-md;
          transition: all 0.3s ease;

          &:hover {
            border-color: ios.$ios-primary;
          }
        }

        .mat-mdc-form-field-infix {
          color: ios.$ios-text-primary;
          font-family: ios.$ios-font-family;
          padding: ios.$ios-spacing-sm;
        }

        // 选择框样式
        .mat-mdc-select-value {
          color: ios.$ios-text-primary;
          font-family: ios.$ios-font-family;
          padding: ios.$ios-spacing-sm 0;
        }

        .mat-mdc-select-arrow {
          color: ios.$ios-text-secondary;
          transition: transform 0.3s ease;
        }

        &.mat-focused {
          .mat-mdc-text-field-wrapper {
            border-color: ios.$ios-primary;
            box-shadow: 0 0 0 2px rgba(0, 122, 255, 0.1);
          }
          
          .mat-mdc-select-arrow {
            color: ios.$ios-primary;
          }
        }
      }
    }
  }
}

// 项目列表
.projects-list {
  display: flex;
  flex-direction: column;
  gap: 16px;

  .project-card {
    background-color: $bg-primary;
    border-radius: $border-radius;
    padding: 24px;
    box-shadow: $shadow-sm;
    cursor: pointer;
    transition: $transition;
    border: 2px solid transparent;

    &:hover {
      box-shadow: $shadow-md;
      transform: translateY(-2px);
      border-color: $primary-light;
    }

    .project-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-bottom: 16px;

      .project-info {
        flex: 1;

        .project-name {
          font-size: 18px;
          font-weight: 600;
          color: $text-primary;
          margin: 0 0 8px 0;
        }

        .project-meta {
          display: flex;
          gap: 16px;
          flex-wrap: wrap;

          span {
            font-size: 14px;
            color: $text-secondary;

            &.project-code {
              font-weight: 500;
              color: $primary-color;
            }
          }
        }
      }

      .priority-badge {
        padding: 4px 12px;
        border-radius: 20px;
        font-size: 12px;
        font-weight: 500;

        &.priority-high {
          background-color: rgba($error-color, 0.1);
          color: $error-color;
        }

        &.priority-medium {
          background-color: rgba($warning-color, 0.1);
          color: $warning-color;
        }

        &.priority-low {
          background-color: rgba($success-color, 0.1);
          color: $success-color;
        }
      }
    }

    .project-content {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 20px;
      margin-bottom: 16px;

      .status-section {
        .status-item {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 8px;

          .status-label {
            font-size: 14px;
            color: $text-secondary;
            font-weight: 500;
          }

          .status-value {
            display: flex;
            align-items: center;
            gap: 8px;

            .status-badge {
              padding: 4px 8px;
              border-radius: 4px;
              font-size: 12px;
              font-weight: 500;

              &.status-pending {
                background-color: rgba($warning-color, 0.1);
                color: $warning-color;
              }

              &.status-partial {
                background-color: rgba($info-color, 0.1);
                color: $info-color;
              }

              &.status-completed {
                background-color: rgba($success-color, 0.1);
                color: $success-color;
              }

              &.status-overdue {
                background-color: rgba($error-color, 0.1);
                color: $error-color;
              }

              &.review-pending {
                background-color: rgba($warning-color, 0.1);
                color: $warning-color;
              }

              &.review-positive {
                background-color: rgba($success-color, 0.1);
                color: $success-color;
              }

              &.review-negative {
                background-color: rgba($error-color, 0.1);
                color: $error-color;
              }

              &.review-none {
                background-color: rgba($text-tertiary, 0.1);
                color: $text-tertiary;
              }
            }

            .review-score {
              display: flex;
              gap: 2px;

              mat-icon {
                font-size: 16px;
                width: 16px;
                height: 16px;
                color: $text-tertiary;

                &.filled {
                  color: $warning-color;
                }
              }
            }

            .suggestion-count {
              font-size: 14px;
              font-weight: 500;
              color: $text-primary;
            }
          }
        }

        .payment-progress {
          margin-top: 8px;

          .progress-info {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 4px;
            font-size: 12px;
            color: $text-secondary;

            .progress-percent {
              font-weight: 600;
              color: $text-primary;
            }
          }

          .progress-bar {
            width: 100%;
            height: 6px;
            background-color: $bg-tertiary;
            border-radius: 3px;
            overflow: hidden;

            .progress-fill {
              height: 100%;
              background-color: $success-color;
              transition: width 0.3s ease;
            }
          }
        }
      }
    }

    .project-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-top: 16px;
      border-top: 1px solid $border-color;

      .last-contact {
        font-size: 14px;
        color: $text-secondary;
      }

      .action-hint {
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: 14px;
        color: $primary-color;
        font-weight: 500;

        mat-icon {
          font-size: 16px;
          width: 16px;
          height: 16px;
        }
      }
    }
  }

  .empty-state {
    text-align: center;
    padding: 60px 20px;
    background-color: $bg-primary;
    border-radius: $border-radius;
    box-shadow: $shadow-sm;

    mat-icon {
      font-size: 64px;
      width: 64px;
      height: 64px;
      color: $text-tertiary;
      margin-bottom: 16px;
    }

    h3 {
      font-size: 18px;
      font-weight: 600;
      color: $text-primary;
      margin: 0 0 8px 0;
    }

    p {
      font-size: 14px;
      color: $text-secondary;
      margin: 0;
    }
  }
}

// 详情视图
.detail-view {
  .detail-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid $border-color;

    .back-button {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 16px;
      background: transparent;
      border: 1px solid $border-color;
      border-radius: $border-radius;
      color: $text-secondary;
      cursor: pointer;
      transition: $transition;
      font-size: 14px;

      &:hover {
        color: $primary-color;
        background-color: $bg-tertiary;
        border-color: $primary-color;
      }

      mat-icon {
        font-size: 18px;
        width: 18px;
        height: 18px;
      }
    }

    .project-info {
      flex: 1;

      h1 {
        font-size: 24px;
        font-weight: 700;
        color: $text-primary;
        margin: 0 0 8px 0;
      }

      .project-code,
      .customer-name {
        display: inline-block;
        margin-right: 16px;
        font-size: 14px;
        color: $text-secondary;

        &.project-code {
          font-weight: 500;
          color: $primary-color;
        }
      }
    }
  }

  // 详情页面标签
  .detail-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 24px;
    border-bottom: 1px solid $border-color;

    .tab-button {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 12px 20px;
      background: transparent;
      border: none;
      border-bottom: 2px solid transparent;
      color: $text-secondary;
      cursor: pointer;
      transition: $transition;
      font-size: 14px;
      font-weight: 500;

      &:hover {
        color: $primary-color;
        background-color: $bg-tertiary;
      }

      &.active {
        color: $primary-color;
        border-bottom-color: $primary-color;
        background-color: $bg-tertiary;
      }

      mat-icon {
        font-size: 18px;
        width: 18px;
        height: 18px;
      }
    }
  }

  // 模块通用样式
  .module-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;

    h3 {
      margin: 0;
      color: $text-primary;
      font-size: 18px;
      font-weight: 600;
      flex: 1;
      min-width: 120px;
    }

    .upload-button,
    .add-review-button {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 16px;
      background-color: $primary-color;
      color: white;
      border: none;
      border-radius: $border-radius;
      cursor: pointer;
      transition: $transition;
      font-size: 14px;
      white-space: nowrap;
      flex-shrink: 0;

      &:hover:not(:disabled) {
        background-color: $primary-light;
        transform: translateY(-1px);
      }

      &:disabled {
        opacity: 0.6;
        cursor: not-allowed;
      }

      mat-icon {
        font-size: 16px;
        width: 16px;
        height: 16px;
      }
    }

    // 响应式处理
    @media (max-width: 768px) {
      flex-direction: column;
      align-items: flex-start;
      
      h3 {
        width: 100%;
        margin-bottom: 8px;
      }
      
      .upload-button,
      .add-review-button {
        width: 100%;
        justify-content: center;
      }
    }
  }

  // 尾款管理模块
  .payment-management {
    .payment-summary {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 16px;
      margin-bottom: 24px;

      .summary-item {
        padding: 16px;
        background-color: $bg-primary;
        border: 1px solid $border-color;
        border-radius: $border-radius;

        .label {
          display: block;
          color: $text-secondary;
          font-size: 12px;
          margin-bottom: 8px;
        }

        .amount {
          font-size: 18px;
          font-weight: 600;
          color: $text-primary;

          &.paid {
            color: $success-color;
          }

          &.pending {
            color: $warning-color;
          }
        }
      }
    }

    .payment-records {
      h4 {
        margin: 0 0 16px 0;
        color: $text-primary;
        font-size: 16px;
        font-weight: 600;
      }

      .payment-record {
        background-color: $bg-primary;
        border: 1px solid $border-color;
        border-radius: $border-radius;
        padding: 16px;
        margin-bottom: 16px;

        .record-header {
          display: flex;
          align-items: center;
          gap: 16px;
          margin-bottom: 12px;

          .amount {
            font-size: 16px;
            font-weight: 600;
            color: $text-primary;
          }

          .status {
            padding: 4px 8px;
            border-radius: $border-radius;
            font-size: 12px;
            font-weight: 500;

            &.status-pending {
              background-color: rgba($warning-color, 0.1);
              color: $warning-color;
            }

            &.status-verified {
              background-color: rgba($success-color, 0.1);
              color: $success-color;
            }

            &.status-rejected {
              background-color: rgba($error-color, 0.1);
              color: $error-color;
            }
          }

          .date {
            color: $text-secondary;
            font-size: 14px;
          }
        }

        .record-details {
          margin-bottom: 12px;

          p {
            margin: 4px 0;
            color: $text-primary;
            font-size: 14px;
          }

          .voucher-preview {
            margin-top: 8px;

            .voucher-image {
              max-width: 200px;
              max-height: 150px;
              border-radius: $border-radius;
              border: 1px solid $border-color;
              margin-left: 8px;
            }

            .voucher-link {
              display: inline-flex;
              align-items: center;
              gap: 4px;
              color: $primary-color;
              text-decoration: none;
              margin-left: 8px;

              &:hover {
                text-decoration: underline;
              }

              @media (max-width: 768px) {
                margin-left: 0;
                margin-top: 8px;
                display: flex;
              }
            }
          }
        }

        .status-history {
          margin-top: ios.$ios-spacing-md;
          background: ios.$ios-background-tertiary;
          border-radius: ios.$ios-radius-md;
          padding: ios.$ios-spacing-md;

          h5 {
            margin: 0 0 ios.$ios-spacing-sm 0;
            color: ios.$ios-text-primary;
            font-size: ios.$ios-font-size-headline;
            font-weight: ios.$ios-font-weight-semibold;
            font-family: ios.$ios-font-family;
            display: flex;
            align-items: center;
            gap: ios.$ios-spacing-xs;

            &::before {
              content: '📋';
              font-size: ios.$ios-font-size-body;
            }
          }

          .history-item {
            display: grid;
            grid-template-columns: auto auto auto 1fr;
            gap: ios.$ios-spacing-sm;
            padding: ios.$ios-spacing-xs 0;
            font-size: ios.$ios-font-size-caption-1;
            color: ios.$ios-text-secondary;
            font-family: ios.$ios-font-family;
            border-bottom: 1px solid ios.$ios-border;

            &:last-child {
              border-bottom: none;
            }

            .history-date {
              color: ios.$ios-text-primary;
              font-weight: ios.$ios-font-weight-medium;
            }
          }
        }
      }
    }
  }

  // 客户评价处理模块
  .review-management {
    .add-review-form {
      background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
      border: 1px solid rgba(0, 122, 255, 0.1);
      border-radius: 20px;
      margin-bottom: 24px;
      box-shadow: 
        0 8px 32px rgba(0, 0, 0, 0.08),
        0 2px 8px rgba(0, 0, 0, 0.04);
      transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
      position: relative;
      overflow: hidden;

      &::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, #007aff, #5ac8fa, #34c759);
        border-radius: 20px 20px 0 0;
      }

      &:hover {
        transform: translateY(-2px);
        box-shadow: 
          0 12px 40px rgba(0, 0, 0, 0.12),
          0 4px 16px rgba(0, 0, 0, 0.08);
      }

      .form-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px 24px 16px;
        border-bottom: 1px solid rgba(0, 122, 255, 0.1);
        margin-bottom: 20px;

        .header-content {
          display: flex;
          align-items: center;
          gap: 12px;

          .header-icon {
            color: ios.$ios-primary;
            font-size: 24px;
            width: 24px;
            height: 24px;
          }

          h4 {
            margin: 0;
            color: #1d1d1f;
            font-size: 20px;
            font-weight: 700;
            font-family: ios.$ios-font-family;
          }
        }

        .close-button {
          color: ios.$ios-text-secondary;
          transition: all 0.2s ease;

          &:hover {
            color: ios.$ios-primary;
            background: rgba(0, 122, 255, 0.1);
          }
        }
      }

      .review-form {
        padding: 0 24px 24px;

        .form-grid {
          display: flex;
          flex-direction: column;
          gap: 20px;

          .form-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;

            @media (max-width: 768px) {
              grid-template-columns: 1fr;
            }
          }
        }
      }

      // 评价等级选项样式
      .rating-option {
        display: flex;
        align-items: center;
        gap: 12px;

        .stars {
          display: flex;
          align-items: center;
          gap: 2px;
        }

        .star-icon {
          font-size: 16px;
          line-height: 1;
          display: inline-block;
          user-select: none;

          &.filled {
            color: #FFD700;
          }

          &:not(.filled) {
            color: #E0E0E0;
          }
        }
      }

      // 表单字段样式 - 采用人事板块的ios-select样式
      .mat-mdc-form-field {
        width: 100%;
        border-radius: ios.$ios-radius-md;
        font-family: ios.$ios-font-family;
        margin-bottom: ios.$ios-spacing-sm;
        
        &.ios-select {
          .mat-mdc-form-field-outline {
            border-radius: 12px;
            border-color: rgba(0, 122, 255, 0.3);
          }

          .mat-mdc-form-field-outline-thick {
            border-color: #007AFF;
            border-width: 2px;
          }

          .mat-mdc-select-trigger {
            padding: 12px 16px;
            font-size: 16px;
            color: #333;
            min-height: 24px;
            display: flex;
            align-items: center;
          }

          .mat-mdc-select-arrow {
            color: #007AFF;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
          }

          .mat-mdc-select-value {
            display: flex;
            align-items: center;
            min-height: 24px;
            color: #333;
            font-family: ios.$ios-font-family;
            font-size: 16px;
          }

          &.mat-focused {
            .mat-mdc-select-arrow {
              color: #007AFF;
              transform: rotate(180deg);
            }
          }
        }
        
        .mat-mdc-text-field-wrapper {
          background: white;
          border: 1px solid ios.$ios-border;
          border-radius: ios.$ios-radius-md;
          transition: all 0.3s ease;

          &:hover {
            border-color: ios.$ios-primary;
          }
        }

        .mat-mdc-form-field-infix {
          color: ios.$ios-text-primary;
          font-family: ios.$ios-font-family;
          padding: ios.$ios-spacing-sm;
        }

        .mat-mdc-form-field-subscript-wrapper {
          color: ios.$ios-text-secondary;
          font-family: ios.$ios-font-family;
          font-weight: ios.$ios-font-weight-medium;
        }

        .mat-mdc-form-field-error {
          color: ios.$ios-error;
          font-family: ios.$ios-font-family;
          font-size: ios.$ios-font-size-caption-1;
          margin-top: ios.$ios-spacing-xs;
        }

        // 输入框样式
        .mat-mdc-input-element {
          color: ios.$ios-text-primary;
          font-family: ios.$ios-font-family;
        }

        &.mat-focused .mat-mdc-input-element {
          color: ios.$ios-text-primary;
        }
      }

      .form-actions {
        display: flex;
        gap: ios.$ios-spacing-sm;
        justify-content: flex-end;
        margin-top: ios.$ios-spacing-md;
        padding-top: ios.$ios-spacing-md;
        border-top: 1px solid ios.$ios-border;

        .mat-mdc-button {
          font-family: ios.$ios-font-family;
          border-radius: ios.$ios-radius-md;
          padding: ios.$ios-spacing-sm ios.$ios-spacing-lg;
          font-weight: ios.$ios-font-weight-medium;

          &.mat-primary {
            background: ios.$ios-primary;
            color: white;
            border: none;

            &:hover {
              background: #0056CC;
              box-shadow: ios.$ios-shadow-sm;
            }

            &:disabled {
              background: ios.$ios-text-tertiary;
              color: white;
            }
          }

          &.mat-stroked-button {
            border: 1px solid ios.$ios-border;
            color: ios.$ios-text-secondary;

            &:hover {
              color: ios.$ios-primary;
              border-color: ios.$ios-primary;
              box-shadow: ios.$ios-shadow-sm;
            }
          }

          &:active {
            transform: translateY(1px);
          }
        }
      }
    }

    .review-records {
      h4 {
        margin: 0 0 ios.$ios-spacing-md 0;
        color: ios.$ios-text-primary;
        font-size: ios.$ios-font-size-body;
        font-weight: ios.$ios-font-weight-semibold;
        font-family: ios.$ios-font-family;
        display: flex;
        align-items: center;
        gap: ios.$ios-spacing-xs;

        &::before {
          content: '';
          width: 4px;
          height: 20px;
          background: ios.$ios-primary;
          border-radius: 2px;
        }
      }

      .review-record {
        background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
        border: 1px solid rgba(0, 122, 255, 0.1);
        border-radius: ios.$ios-radius-lg;
        padding: ios.$ios-spacing-lg;
        margin-bottom: ios.$ios-spacing-md;
        box-shadow: 
          0 4px 20px rgba(0, 0, 0, 0.08),
          0 1px 4px rgba(0, 0, 0, 0.04);
        transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
        position: relative;
        overflow: hidden;

        &::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          height: 3px;
          background: linear-gradient(90deg, #007aff, #5ac8fa);
          border-radius: ios.$ios-radius-lg ios.$ios-radius-lg 0 0;
        }

        &:hover {
          transform: translateY(-2px);
          box-shadow: 
            0 8px 32px rgba(0, 0, 0, 0.12),
            0 2px 8px rgba(0, 0, 0, 0.08);
        }

        .review-header {
          display: flex;
          align-items: center;
          gap: ios.$ios-spacing-md;
          margin-bottom: ios.$ios-spacing-md;
          flex-wrap: wrap;

          .review-type,
          .review-channel {
            padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
            background: linear-gradient(135deg, rgba(0, 122, 255, 0.1) 0%, rgba(90, 200, 250, 0.1) 100%);
            color: ios.$ios-primary;
            border-radius: ios.$ios-radius-md;
            font-size: ios.$ios-font-size-caption-1;
            font-weight: ios.$ios-font-weight-medium;
            font-family: ios.$ios-font-family;
            border: 1px solid rgba(0, 122, 255, 0.2);
            flex-shrink: 0;
          }

          .review-date {
            color: ios.$ios-text-secondary;
            font-size: ios.$ios-font-size-subhead;
            font-family: ios.$ios-font-family;
            flex-shrink: 0;
          }

          .review-score {
            display: flex;
            gap: 2px;
            align-items: center;
            padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
            background: rgba(255, 193, 7, 0.1);
            border-radius: ios.$ios-radius-md;
            border: 1px solid rgba(255, 193, 7, 0.2);
            flex-shrink: 0;

            mat-icon {
              font-size: 16px;
              width: 16px;
              height: 16px;
              color: #ddd;
              transition: color 0.2s ease;

              &.filled {
                color: #ffc107;
                text-shadow: 0 0 4px rgba(255, 193, 7, 0.3);
              }
            }
          }

          @media (max-width: 768px) {
            flex-direction: column;
            align-items: flex-start;
            gap: ios.$ios-spacing-xs;
          }
        }

        .review-content {
          background: rgba(248, 249, 250, 0.8);
          border-radius: ios.$ios-radius-md;
          padding: ios.$ios-spacing-md;
          border: 1px solid rgba(0, 122, 255, 0.05);

          p {
            margin: ios.$ios-spacing-xs 0;
            color: ios.$ios-text-primary;
            font-size: ios.$ios-font-size-subhead;
            font-family: ios.$ios-font-family;
            line-height: 1.6;

            &:first-child {
              margin-top: 0;
            }

            &:last-child {
              margin-bottom: 0;
            }
          }

          .review-remark,
          .review-operator {
            color: ios.$ios-text-secondary;
            font-size: ios.$ios-font-size-caption-1;
            font-family: ios.$ios-font-family;
            padding: ios.$ios-spacing-xs 0;
            border-top: 1px solid rgba(0, 122, 255, 0.1);
            margin-top: ios.$ios-spacing-sm;

            strong {
              color: ios.$ios-primary;
              font-weight: ios.$ios-font-weight-semibold;
            }
          }
        }

        .follow-up-reminder {
          display: flex;
          align-items: center;
          gap: ios.$ios-spacing-xs;
          margin-top: ios.$ios-spacing-md;
          padding: ios.$ios-spacing-sm;
          background: linear-gradient(135deg, rgba(255, 149, 0, 0.1) 0%, rgba(255, 193, 7, 0.1) 100%);
          border-radius: ios.$ios-radius-md;
          border: 1px solid rgba(255, 149, 0, 0.2);

          mat-icon {
            color: #ff9500;
            font-size: 18px;
            width: 18px;
            height: 18px;
          }

          span {
            color: #ff9500;
            font-size: ios.$ios-font-size-caption-1;
            font-weight: ios.$ios-font-weight-medium;
            font-family: ios.$ios-font-family;
          }
        }
      }
    }
  }

  // 客户建议收集与处理模块
  .suggestion-management {
    h3 {
      margin: 0 0 ios.$ios-spacing-lg 0;
      color: ios.$ios-text-primary;
      font-size: ios.$ios-font-size-title-3;
      font-weight: ios.$ios-font-weight-semibold;
      font-family: ios.$ios-font-family;
      display: flex;
      align-items: center;
      gap: ios.$ios-spacing-sm;

      &::before {
        content: '';
        width: 4px;
        height: 24px;
        background: ios.$ios-primary;
        border-radius: 2px;
      }
    }

    .suggestion-records {
      .suggestion-record {
        background: ios.$ios-card-background;
        border: 1px solid ios.$ios-border;
        border-radius: ios.$ios-radius-lg;
        padding: ios.$ios-spacing-lg;
        margin-bottom: ios.$ios-spacing-md;
        box-shadow: ios.$ios-shadow-md;
        transition: all 0.3s ease;

        &:hover {
          transform: translateY(-2px);
          box-shadow: ios.$ios-shadow-lg;
        }

        .suggestion-header {
          display: flex;
          align-items: center;
          gap: ios.$ios-spacing-md;
          margin-bottom: ios.$ios-spacing-sm;

          .suggestion-category {
            padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
            background-color: rgba(ios.$ios-primary, 0.1);
            color: ios.$ios-primary;
            border-radius: ios.$ios-radius-md;
            font-size: ios.$ios-font-size-caption-1;
            font-weight: ios.$ios-font-weight-medium;
            font-family: ios.$ios-font-family;
          }

          .suggestion-status {
            padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
            border-radius: ios.$ios-radius-md;
            font-size: ios.$ios-font-size-caption-1;
            font-weight: ios.$ios-font-weight-medium;
            font-family: ios.$ios-font-family;

            &.status-pending {
              background-color: rgba(ios.$ios-warning, 0.1);
              color: ios.$ios-warning;
            }

            &.status-processing {
              background-color: rgba(ios.$ios-primary, 0.1);
              color: ios.$ios-primary;
            }

            &.status-completed {
              background-color: rgba(ios.$ios-success, 0.1);
              color: ios.$ios-success;
            }

            &.status-rejected {
              background-color: rgba(ios.$ios-error, 0.1);
              color: ios.$ios-error;
            }
          }

          .suggestion-priority {
            padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
            border-radius: ios.$ios-radius-md;
            font-size: ios.$ios-font-size-caption-1;
            font-weight: ios.$ios-font-weight-medium;
            font-family: ios.$ios-font-family;

            &.priority-high {
              background-color: rgba(ios.$ios-error, 0.1);
              color: ios.$ios-error;
            }

            &.priority-medium {
              background-color: rgba(ios.$ios-warning, 0.1);
              color: ios.$ios-warning;
            }

            &.priority-low {
              background-color: rgba(ios.$ios-success, 0.1);
              color: ios.$ios-success;
            }
          }

          .suggestion-date {
            color: ios.$ios-text-secondary;
            font-size: ios.$ios-font-size-subhead;
            font-family: ios.$ios-font-family;
          }
        }

        .suggestion-content {
          background: ios.$ios-background-secondary;
          border-radius: ios.$ios-radius-md;
          padding: ios.$ios-spacing-md;
          margin-bottom: ios.$ios-spacing-sm;

          p {
            margin: ios.$ios-spacing-xs 0;
            color: ios.$ios-text-primary;
            font-size: ios.$ios-font-size-subhead;
            font-family: ios.$ios-font-family;
            line-height: 1.5;
          }

          .suggestion-response {
            margin-top: ios.$ios-spacing-sm;
            padding: ios.$ios-spacing-sm;
            background: ios.$ios-background-tertiary;
            border-radius: ios.$ios-radius-sm;
            border-left: 3px solid ios.$ios-primary;
          }
        }

        .suggestion-actions {
          margin-bottom: ios.$ios-spacing-sm;
          display: flex;
          gap: ios.$ios-spacing-xs;
          flex-wrap: wrap;

          @media (max-width: 768px) {
            flex-direction: column;
            
            .mat-mdc-button {
              width: 100%;
              justify-content: center;
            }
          }

          .mat-mdc-button {
            font-family: ios.$ios-font-family;
            border-radius: ios.$ios-radius-md;
            padding: ios.$ios-spacing-xs ios.$ios-spacing-md;
            font-weight: ios.$ios-font-weight-medium;
            font-size: ios.$ios-font-size-caption-1;
            min-width: 100px;
            white-space: nowrap;

            @media (max-width: 768px) {
              min-width: unset;
              padding: ios.$ios-spacing-sm ios.$ios-spacing-md;
            }

            @media (max-width: 480px) {
              padding: ios.$ios-spacing-xs ios.$ios-spacing-sm;
              font-size: ios.$ios-font-size-caption-2;
            }

            &.mat-stroked-button {
              border: 1px solid ios.$ios-border;
              color: ios.$ios-text-secondary;

              &:hover {
                color: ios.$ios-primary;
                border-color: ios.$ios-primary;
                box-shadow: ios.$ios-shadow-sm;
              }
            }

            mat-icon {
              margin-right: ios.$ios-spacing-xs;
              font-size: 16px;
              width: 16px;
              height: 16px;

              @media (max-width: 480px) {
                font-size: 14px;
                width: 14px;
                height: 14px;
              }
            }
          }
        }

        .update-form {
          background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
          border-radius: ios.$ios-radius-lg;
          margin-top: ios.$ios-spacing-md;
          margin-bottom: ios.$ios-spacing-sm;
          border: 1px solid rgba(0, 122, 255, 0.1);
          box-shadow: 
            0 8px 32px rgba(0, 0, 0, 0.08),
            0 2px 8px rgba(0, 0, 0, 0.04);
          transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
          position: relative;
          overflow: hidden;

          &::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, #007aff, #5ac8fa);
            border-radius: ios.$ios-radius-lg ios.$ios-radius-lg 0 0;
          }

          .update-form-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 16px 20px 12px;
            border-bottom: 1px solid rgba(0, 122, 255, 0.1);
            margin-bottom: 16px;

            .header-content {
              display: flex;
              align-items: center;
              gap: 10px;

              .header-icon {
                color: ios.$ios-primary;
                font-size: 20px;
                width: 20px;
                height: 20px;
              }

              h5 {
                margin: 0;
                color: #1d1d1f;
                font-size: 16px;
                font-weight: 600;
                font-family: ios.$ios-font-family;
              }
            }

            .close-button {
              color: ios.$ios-text-secondary;
              transition: all 0.2s ease;

              &:hover {
                color: ios.$ios-primary;
                background: rgba(0, 122, 255, 0.1);
              }
            }
          }

          .status-update-form {
            padding: 0 20px 20px;

            .form-grid {
              display: flex;
              flex-direction: column;
              gap: 16px;

              .form-row {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 16px;

                @media (max-width: 768px) {
                  grid-template-columns: 1fr;
                }
              }
            }
          }

          // 状态选项样式
          .status-option {
            display: flex;
            align-items: center;
            gap: 12px;

            .status-icon {
              font-size: 18px;
              width: 18px;
              height: 18px;

              &.pending {
                color: ios.$ios-warning;
              }

              &.processing {
                color: ios.$ios-primary;
              }

              &.completed {
                color: ios.$ios-success;
              }

              &.rejected {
                color: ios.$ios-error;
              }
            }

            .status-info {
              display: flex;
              flex-direction: column;
              gap: 2px;

              .status-name {
                font-weight: 500;
                font-size: 14px;
              }

              .status-desc {
                font-size: 12px;
                color: ios.$ios-text-tertiary;
                opacity: 0.8;
              }
            }
          }

          // 表单字段样式
          .mat-mdc-form-field {
            width: 100%;
            font-family: ios.$ios-font-family;
            
            &.status-field {
              flex: 1;
            }

            &.assignee-field {
              flex: 1;
            }

            &.full-width {
              grid-column: 1 / -1;
            }

            // Outline appearance 样式
            &.mat-mdc-form-field-appearance-outline {
              .mat-mdc-form-field-outline {
                border-radius: ios.$ios-radius-md;
                border-color: ios.$ios-border;
                transition: all 0.3s ease;
              }

              &:hover .mat-mdc-form-field-outline {
                border-color: ios.$ios-primary;
              }

              &.mat-focused .mat-mdc-form-field-outline {
                border-color: ios.$ios-primary;
                border-width: 2px;
              }
            }

            .mat-mdc-form-field-infix {
              color: ios.$ios-text-primary;
              font-family: ios.$ios-font-family;
              padding: 12px;
            }

            // 选择框样式
            .mat-mdc-select-value {
              color: ios.$ios-text-primary;
              font-family: ios.$ios-font-family;
              font-size: 14px;
            }

            .mat-mdc-select-arrow {
              color: ios.$ios-text-secondary;
              transition: all 0.3s ease;
            }

            &.mat-focused .mat-mdc-select-arrow {
              color: ios.$ios-primary;
              transform: rotate(180deg);
            }

            // 输入框样式
            .mat-mdc-input-element {
              color: ios.$ios-text-primary;
              font-family: ios.$ios-font-family;
              font-size: 14px;
            }

            // 标签样式
            .mat-mdc-floating-label {
              color: ios.$ios-text-secondary;
              font-family: ios.$ios-font-family;
              font-weight: 500;
            }

            // 提示文本样式
            .mat-mdc-form-field-hint {
              color: ios.$ios-text-tertiary;
              font-family: ios.$ios-font-family;
              font-size: 12px;
            }
          }

          .form-actions {
            display: flex;
            gap: ios.$ios-spacing-sm;
            justify-content: flex-end;
            margin-top: ios.$ios-spacing-md;
            padding-top: ios.$ios-spacing-md;
            border-top: 1px solid ios.$ios-border;
            flex-wrap: wrap;

            @media (max-width: 768px) {
              flex-direction: column;
              gap: ios.$ios-spacing-xs;
              
              .mat-mdc-button {
                width: 100%;
                justify-content: center;
              }
            }

            @media (max-width: 480px) {
              padding: ios.$ios-spacing-sm;
              margin-top: ios.$ios-spacing-sm;
            }

            .mat-mdc-button {
              font-family: ios.$ios-font-family;
              border-radius: ios.$ios-radius-md;
              padding: ios.$ios-spacing-sm ios.$ios-spacing-lg;
              font-weight: ios.$ios-font-weight-medium;
              min-width: 120px;
              white-space: nowrap;
              overflow: hidden;
              text-overflow: ellipsis;

              @media (max-width: 768px) {
                min-width: unset;
                padding: ios.$ios-spacing-md ios.$ios-spacing-lg;
                font-size: ios.$ios-font-size-body;
              }

              @media (max-width: 480px) {
                padding: ios.$ios-spacing-sm ios.$ios-spacing-md;
                font-size: ios.$ios-font-size-caption-1;
              }

              &.mat-primary {
                background: ios.$ios-primary;
                color: white;
                border: none;

                &:hover {
                  background: #0056CC;
                  box-shadow: ios.$ios-shadow-sm;
                }

                &:disabled {
                  background: ios.$ios-text-tertiary;
                  color: white;
                  opacity: 0.6;
                }
              }

              &.mat-stroked-button {
                border: 1px solid ios.$ios-border;
                color: ios.$ios-text-secondary;

                &:hover {
                  color: ios.$ios-primary;
                  border-color: ios.$ios-primary;
                  box-shadow: ios.$ios-shadow-sm;
                }
              }

              &:active {
                transform: translateY(1px);
              }

              mat-icon {
                margin-right: ios.$ios-spacing-xs;
                font-size: 18px;
                width: 18px;
                height: 18px;

                @media (max-width: 480px) {
                  font-size: 16px;
                  width: 16px;
                  height: 16px;
                }
              }
            }
          }
        }

        .status-history {
          margin-top: ios.$ios-spacing-md;
          background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
          border-radius: ios.$ios-radius-lg;
          padding: ios.$ios-spacing-lg;
          border: 2px solid rgba(0, 122, 255, 0.1);
          position: relative;
          overflow: hidden;

          &::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, #34c759, #30d158, #32d74b);
            border-radius: ios.$ios-radius-lg ios.$ios-radius-lg 0 0;
          }

          h5 {
            margin: 0 0 ios.$ios-spacing-md 0;
            color: ios.$ios-text-primary;
            font-size: ios.$ios-font-size-headline;
            font-weight: ios.$ios-font-weight-bold;
            font-family: ios.$ios-font-family;
            display: flex;
            align-items: center;
            gap: ios.$ios-spacing-sm;

            &::before {
              content: '📋';
              font-size: ios.$ios-font-size-body;
            }
          }

          .history-item {
            display: grid;
            grid-template-columns: auto auto auto 1fr;
            gap: ios.$ios-spacing-md;
            padding: ios.$ios-spacing-xs 0;
            font-size: ios.$ios-font-size-caption-1;
            color: ios.$ios-text-secondary;
            font-family: ios.$ios-font-family;
            border-bottom: 1px solid rgba(0, 122, 255, 0.1);
            transition: all 0.3s ease;

            &:last-child {
              border-bottom: none;
            }

            &:hover {
              background: rgba(0, 122, 255, 0.05);
              border-radius: ios.$ios-radius-sm;
              padding-left: ios.$ios-spacing-sm;
              padding-right: ios.$ios-spacing-sm;
            }

            .history-date {
              color: ios.$ios-text-primary;
              font-weight: ios.$ios-font-weight-semibold;
              background: rgba(0, 122, 255, 0.1);
              padding: 4px 8px;
              border-radius: ios.$ios-radius-sm;
              font-size: ios.$ios-font-size-caption-2;
            }

            .history-status {
              padding: 4px 8px;
              border-radius: ios.$ios-radius-sm;
              font-size: ios.$ios-font-size-caption-2;
              font-weight: ios.$ios-font-weight-medium;

              &.status-pending {
                background: rgba(255, 149, 0, 0.1);
                color: #ff9500;
              }

              &.status-processing {
                background: rgba(0, 122, 255, 0.1);
                color: #007aff;
              }

              &.status-completed {
                background: rgba(52, 199, 89, 0.1);
                color: #34c759;
              }

              &.status-rejected {
                background: rgba(255, 59, 48, 0.1);
                color: #ff3b30;
              }
            }

            .history-operator {
              color: ios.$ios-text-primary;
              font-weight: ios.$ios-font-weight-medium;
            }

            .history-remark {
              color: ios.$ios-text-secondary;
              font-style: italic;
            }
          }
        }
      }
    }
  }

  // 空状态
  .empty-state {
    text-align: center;
    padding: ios.$ios-spacing-xl ios.$ios-spacing-lg;
    color: ios.$ios-text-secondary;
    background: ios.$ios-background-secondary;
    border-radius: ios.$ios-radius-lg;
    border: 1px solid ios.$ios-border;

    mat-icon {
      font-size: 48px;
      width: 48px;
      height: 48px;
      margin-bottom: ios.$ios-spacing-md;
      opacity: 0.5;
    }

    p {
      margin: 0;
      font-size: ios.$ios-font-size-subhead;
      font-family: ios.$ios-font-family;
      color: ios.$ios-text-primary;
    }
  }

  .detail-content {
    background: ios.$ios-card-background;
    border-radius: ios.$ios-radius-lg;
    padding: ios.$ios-spacing-lg;
    box-shadow: ios.$ios-shadow-sm;
    border: 1px solid ios.$ios-border;
  }
}

// 人事板块下拉列表样式
.ios-select {
  .mat-mdc-form-field-outline {
    border-radius: 12px !important;
    border: 1px solid #e0e0e0 !important;
    background-color: #f8f9fa !important;
    
    &:hover {
      border-color: #007aff !important;
      background-color: #ffffff !important;
    }
  }
  
  .mat-mdc-select-trigger {
    border-radius: 12px;
    padding: 12px 16px;
    min-height: 48px;
    display: flex;
    align-items: center;
    
    &:hover {
      background-color: rgba(0, 122, 255, 0.15);
    }
  }
  
  .mat-mdc-select-arrow {
    color: #007aff;
    font-size: 20px;
  }
  
  .mat-mdc-select-value {
    color: #333;
    font-size: 16px;
    font-weight: 500;
  }
}

.option-content {
  display: flex;
  align-items: center;
  gap: 12px;
  
  mat-icon {
    color: #007aff;
    font-size: 20px !important;
    width: 20px !important;
    height: 20px !important;
    font-family: 'Material Icons' !important;
    font-feature-settings: 'liga' 1;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
  
  span {
    font-size: 14px;
    color: #333;
    font-weight: 500;
  }
}

.filter-actions-group {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  
  .ios-select {
    flex: 1;
    min-width: 200px;
  }
}

// 全局下拉面板样式 - 采用人事板块样式，调整透明度避免背景冲突
:host ::ng-deep .mat-mdc-select-panel {
  background: rgba(255, 255, 255, 0.98) !important; // 提高不透明度从0.85到0.98
  backdrop-filter: blur(30px) saturate(180%) !important; // 增强模糊和饱和度
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.08) !important; // 增强阴影
  border: 1px solid rgba(0, 122, 255, 0.3) !important; // 增强边框可见度
  max-height: 300px !important;
  z-index: 9999 !important;
  overflow: hidden !important;
  
  .mat-mdc-option {
    background: rgba(255, 255, 255, 0.3) !important;
    color: #333 !important;
    font-size: 16px !important;
    font-family: ios.$ios-font-family !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid rgba(0, 122, 255, 0.1) !important;
    transition: all 0.3s ease !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    
    &:hover {
      background: rgba(0, 122, 255, 0.15) !important;
      color: #007AFF !important;
      transform: translateX(2px) !important;
    }
    
    &.mdc-list-item--selected,
    &.mat-selected {
      background: rgba(0, 122, 255, 0.2) !important;
      color: #007AFF !important;
      font-weight: 500 !important;
    }
    
    &:last-child {
      border-bottom: none !important;
    }

    // 选项内容样式
    .option-content {
      display: flex;
      align-items: center;
      gap: 10px;
      width: 100%;

      mat-icon {
        font-size: 20px !important;
        width: 20px !important;
        height: 20px !important;
        color: inherit;
        opacity: 0.9;
        font-family: 'Material Icons' !important; // 确保使用图标字体
        font-feature-settings: 'liga' 1; // 启用连字特性
        -webkit-font-smoothing: antialiased; // 字体平滑
        text-rendering: optimizeLegibility;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        overflow: hidden; // 隐藏溢出的文本
      }

      span {
        flex: 1;
        color: inherit;
        font-size: 16px;
        line-height: 1.4;
      }
    }
  }
}

// 响应式设计
@media (max-width: 768px) {
  .after-sales-container {
    padding: ios.$ios-spacing-md;
  }

  .stats-dashboard {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: ios.$ios-spacing-sm;

    .stat-card {
      padding: ios.$ios-spacing-md;
      gap: ios.$ios-spacing-sm;

      .stat-icon {
        width: 40px;
        height: 40px;

        mat-icon {
          font-size: 20px;
          width: 20px;
          height: 20px;
        }
      }

      .stat-content .stat-value {
        font-size: 20px;
      }
    }
  }

  .filter-bar {
    padding: ios.$ios-spacing-md;

    .filter-section {
      flex-direction: column;
      gap: ios.$ios-spacing-sm;

      .filter-field {
        width: 100%;
      }
    }
  }

  .project-card {
    padding: ios.$ios-spacing-md;

    .project-content {
      grid-template-columns: 1fr;
      gap: ios.$ios-spacing-md;
    }

    .project-footer {
      flex-direction: column;
      align-items: flex-start;
      gap: ios.$ios-spacing-xs;
    }
  }

  .detail-view {
    .suggestion-management {
      .suggestion-record {
        padding: ios.$ios-spacing-md;

        .suggestion-header {
          flex-direction: column;
          align-items: flex-start;
          gap: ios.$ios-spacing-xs;
        }

        .update-form {
          padding: ios.$ios-spacing-md;

          .form-actions {
            flex-direction: column;
            gap: ios.$ios-spacing-xs;

            .mat-mdc-button {
              width: 100%;
            }
          }
        }

        .status-history {
          padding: ios.$ios-spacing-sm;

          .history-item {
            grid-template-columns: 1fr;
            gap: ios.$ios-spacing-xs;
            text-align: left;
          }
        }
      }
    }

    .review-management {
      .review-record {
        padding: ios.$ios-spacing-md;

        .review-header {
          flex-direction: column;
          align-items: flex-start;
          gap: ios.$ios-spacing-xs;
        }
      }

      .add-review-form {
        padding: ios.$ios-spacing-md;

        .form-actions {
          flex-direction: column;
          gap: ios.$ios-spacing-xs;

          .mat-mdc-button {
            width: 100%;
          }
        }
      }
    }

    .payment-management {
      .payment-summary {
        grid-template-columns: 1fr;
        gap: ios.$ios-spacing-sm;
      }

      .payment-record {
        padding: ios.$ios-spacing-md;

        .record-header {
          flex-direction: column;
          align-items: flex-start;
          gap: ios.$ios-spacing-xs;
        }
      }
    }
  }
}