123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- /* pages/recommendation/recommendation.wxss */
- .container {
- padding: 30rpx;
- min-height: 100vh;
- background-color: #f8f9fa;
- }
- /* 加载状态样式 */
- .loading-container {
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- height: 60vh;
- }
- .loading-animation {
- display: flex;
- align-items: center;
- justify-content: center;
- margin-bottom: 40rpx;
- }
- .dot {
- width: 20rpx;
- height: 20rpx;
- border-radius: 50%;
- background-color: #07c160;
- margin: 0 10rpx;
- animation: bounce 1.4s infinite ease-in-out;
- }
- .dot1 {
- animation-delay: -0.32s;
- }
- .dot2 {
- animation-delay: -0.16s;
- }
- @keyframes bounce {
- 0%, 80%, 100% { transform: scale(0); }
- 40% { transform: scale(1); }
- }
- .loading-text {
- font-size: 32rpx;
- color: #666;
- margin-top: 30rpx;
- }
- /* 错误状态样式 */
- .error-container {
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- height: 60vh;
- text-align: center;
- padding: 0 60rpx;
- }
- .error-icon {
- width: 120rpx;
- height: 120rpx;
- margin-bottom: 30rpx;
- }
- .error-title {
- font-size: 36rpx;
- font-weight: bold;
- color: #333;
- margin-bottom: 20rpx;
- }
- .error-message {
- font-size: 28rpx;
- color: #666;
- margin-bottom: 40rpx;
- }
- .retry-btn {
- width: 240rpx;
- height: 80rpx;
- line-height: 80rpx;
- background: linear-gradient(to right, #07c160, #09ad56);
- color: white;
- border-radius: 40rpx;
- font-size: 30rpx;
- margin-top: 20rpx;
- }
- /* 推荐卡片样式 */
- .recommendation-card {
- background-color: #fff;
- border-radius: 16rpx;
- box-shadow: 0 8rpx 24rpx rgba(0, 0, 0, 0.06);
- overflow: hidden;
- }
- .card-header {
- display: flex;
- align-items: center;
- padding: 30rpx;
- background: linear-gradient(135deg, #6e8efb, #a777e3);
- }
- .ai-icon {
- width: 48rpx;
- height: 48rpx;
- margin-right: 16rpx;
- }
- .card-title {
- font-size: 36rpx;
- font-weight: bold;
- color: white;
- }
- .card-content {
- padding: 30rpx;
- }
- .recommendation-text {
- font-size: 30rpx;
- line-height: 1.6;
- color: #333;
- white-space: pre-line;
- }
- .card-footer {
- display: flex;
- justify-content: space-between;
- padding: 20rpx 30rpx;
- border-top: 1rpx solid #f0f0f0;
- }
- .action-btn {
- flex: 1;
- height: 80rpx;
- line-height: 80rpx;
- border-radius: 40rpx;
- font-size: 30rpx;
- margin: 0 10rpx;
- }
- .save-btn {
- background: linear-gradient(to right, #1989fa, #3296fa);
- color: white;
- }
- .regenerate-btn {
- background: #f8f8f8;
- color: #666;
- border: 1rpx solid #eaeaea;
- }
|