company-select.scss 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. .company-select-page {
  2. display: flex;
  3. flex-direction: column;
  4. height: 100vh;
  5. background-color: #FFFFFF;
  6. .search-header {
  7. padding: 20rpx 40rpx;
  8. background-color: #FFFFFF;
  9. position: sticky;
  10. top: 0;
  11. z-index: 10;
  12. box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.02);
  13. .search-box {
  14. display: flex;
  15. align-items: center;
  16. background-color: #F8FAFC;
  17. border-radius: 40rpx;
  18. padding: 0 30rpx;
  19. height: 72rpx;
  20. border: 2rpx solid transparent;
  21. transition: all 0.25s;
  22. &:focus-within {
  23. background-color: #EBF1FA;
  24. border-color: rgba(31, 108, 255, 0.2);
  25. }
  26. .icon-search {
  27. width: 24rpx;
  28. height: 24rpx;
  29. border: 3rpx solid #A0AABF;
  30. border-radius: 50%;
  31. position: relative;
  32. margin-right: 16rpx;
  33. flex-shrink: 0;
  34. &::after {
  35. content: '';
  36. position: absolute;
  37. width: 8rpx;
  38. height: 3rpx;
  39. background-color: #A0AABF;
  40. bottom: -2rpx;
  41. right: -4rpx;
  42. transform: rotate(45deg);
  43. }
  44. }
  45. input {
  46. flex: 1;
  47. font-size: 26rpx;
  48. color: #333333;
  49. background: transparent;
  50. }
  51. }
  52. }
  53. .company-list {
  54. flex: 1;
  55. padding: 0 40rpx;
  56. box-sizing: border-box;
  57. overflow-y: scroll;
  58. .empty-state {
  59. padding-top: 200rpx;
  60. text-align: center;
  61. .empty-text {
  62. font-size: 28rpx;
  63. color: #A0AABF;
  64. }
  65. }
  66. .company-item {
  67. display: flex;
  68. justify-content: space-between;
  69. align-items: center;
  70. padding: 36rpx 10rpx;
  71. border-bottom: 1rpx solid #F0F4FC;
  72. transition: background-color 0.2s;
  73. &:active {
  74. background-color: #F8FAFC;
  75. }
  76. .company-name {
  77. font-size: 30rpx;
  78. color: #1A1A1A;
  79. flex: 1;
  80. padding-right: 20rpx;
  81. }
  82. .checkbox {
  83. width: 44rpx;
  84. height: 44rpx;
  85. border-radius: 50%;
  86. border: 2rpx solid #C4CEDB;
  87. box-sizing: border-box;
  88. display: flex;
  89. justify-content: center;
  90. align-items: center;
  91. transition: all 0.2s;
  92. &.checked {
  93. border-color: #1F6CFF;
  94. background-color: #1F6CFF;
  95. box-shadow: 0 4rpx 10rpx rgba(31, 108, 255, 0.2);
  96. &::after {
  97. content: '';
  98. width: 10rpx;
  99. height: 20rpx;
  100. border-right: 4rpx solid #FFFFFF;
  101. border-bottom: 4rpx solid #FFFFFF;
  102. transform: rotate(45deg) translate(-2rpx, -4rpx);
  103. }
  104. }
  105. }
  106. }
  107. }
  108. .footer-btn-area {
  109. padding: 30rpx 40rpx calc(env(safe-area-inset-bottom) + 30rpx);
  110. background-color: #FFFFFF;
  111. box-shadow: 0 -4rpx 16rpx rgba(0, 0, 0, 0.04);
  112. .btn-confirm {
  113. width: 100%;
  114. height: 88rpx;
  115. background: linear-gradient(135deg, #1F6CFF 0%, #0052D9 100%);
  116. color: #FFFFFF;
  117. font-size: 32rpx;
  118. font-weight: 500;
  119. border-radius: 44rpx;
  120. display: flex;
  121. justify-content: center;
  122. align-items: center;
  123. box-shadow: 0 12rpx 24rpx rgba(31, 108, 255, 0.25);
  124. margin: 0;
  125. &:active {
  126. transform: scale(0.98);
  127. opacity: 0.9;
  128. }
  129. &::after {
  130. border: none;
  131. }
  132. }
  133. }
  134. }