diff --git a/employee-app/home/index.html b/employee-app/home/index.html index a5cf492..d2f4792 100644 --- a/employee-app/home/index.html +++ b/employee-app/home/index.html @@ -29,55 +29,63 @@ body { background: #f0f2f5; display: flex; justify-content: center; align-items: .module__title { font-size: 16px; font-weight: 700; color: #1a1a1a; } .module__more { font-size: 12px; color: #999; cursor: pointer; } /* 体重管理 */ -.weight-header { background: linear-gradient(135deg, #ff6b6b, #ff9a56); border-radius: 12px 12px 0 0; margin: -16px -16px 0; padding: 16px 16px 20px; position: relative; } -.weight-header__title { font-size: 20px; font-weight: 700; color: #fff; } -.weight-header__info { position: absolute; top: 12px; right: 16px; font-size: 11px; color: rgba(255,255,255,0.85); } -.weight-header__info strong { color: #fff; } -.weight-ball-section { background: #fff; border-radius: 0 0 12px 12px; margin-bottom: 16px; overflow: hidden; } -.weight-avatars { display: flex; align-items: center; justify-content: space-around; padding: 20px 16px 16px; } -.weight-avatar-side { text-align: center; flex: 1; } -.weight-avatar__img { width: 56px; height: 72px; margin: 0 auto 8px; position: relative; } -.weight-avatar__img svg { width: 100%; height: 100%; } -.weight-avatar__label { font-size: 13px; color: #666; margin-bottom: 4px; } -.weight-avatar__val { font-size: 22px; font-weight: 700; color: #1a1a1a; } -.weight-avatar__bmi { font-size: 12px; color: #999; margin-top: 2px; } -.weight-ball-wrap { text-align: center; flex: 0 0 auto; position: relative; z-index: 1; margin: 0 8px; } -.weight-ball-wrap__top { font-size: 12px; color: #666; margin-bottom: 2px; } -.weight-ball-wrap__ruler { width: 2px; height: 12px; background: #ddd; margin: 0 auto 2px; } -.weight-ball { width: 150px; height: 150px; border-radius: 50%; position: relative; overflow: hidden; box-shadow: 0 4px 20px rgba(24,144,255,0.15); } -.weight-ball__bg { position: absolute; inset: 0; background: linear-gradient(180deg, #f0f8ff 0%, #e6f7ff 50%, #7ec8e3 100%); } -.weight-ball__wave { position: absolute; bottom: 0; left: 0; right: 0; height: 55%; } +.weight-module { padding: 0; overflow: hidden; background: linear-gradient(180deg, #ff6a5f 0%, #ff8a6b 40%, #f5f7fa 100%); } +.weight-header { position: relative; padding: 14px 16px 26px; display: flex; align-items: center; justify-content: space-between; min-height: 56px; } +.weight-header__watermark { position: absolute; left: 14px; top: 8px; font-size: 22px; font-weight: 900; letter-spacing: 2px; color: rgba(255,255,255,0.22); font-family: 'Arial Black', sans-serif; } +.weight-header__tab { display: inline-block; background: #c8332c; color: #fff; font-size: 15px; font-weight: 700; padding: 6px 22px 6px 14px; border-radius: 8px 18px 0 18px; position: relative; margin-top: 14px; } +.weight-header__tab::after { content: ''; position: absolute; right: -4px; top: 4px; width: 6px; height: 6px; background: #fff; border-radius: 50%; box-shadow: -2px 6px 0 #fff; } +.weight-header__info { font-size: 12px; color: #fff; font-weight: 500; margin-top: 14px; } +.weight-header__info strong { color: #fff; font-size: 14px; font-weight: 700; margin: 0 1px; } +.weight-card { background: #fff; border-radius: 16px; margin: 0 12px 12px; padding: 18px 12px 18px; position: relative; box-shadow: 0 4px 14px rgba(0,0,0,0.04); } +.weight-avatars { display: flex; align-items: center; justify-content: space-between; padding: 0 4px; } +.weight-avatar-side { width: 78px; position: relative; display: flex; align-items: center; justify-content: center; } +.weight-avatar__badge { position: absolute; top: -18px; right: -8px; background: #fff; color: #ff4d4f; font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 12px; border: 1px solid #ff4d4f; z-index: 2; text-decoration: none; cursor: pointer; } +.weight-avatar__img { width: 64px; height: 96px; } +.weight-avatar__img svg { width: 100%; height: 100%; display: block; } +.weight-avatar__label { font-size: 13px; color: #999; margin-bottom: 6px; } +.weight-avatar__val { font-size: 26px; font-weight: 800; color: #1a1a1a; line-height: 1; } +.weight-avatar__bmi { font-size: 12px; color: #bbb; margin-top: 4px; } +.weight-ball-wrap { text-align: center; flex: 1; position: relative; } +.weight-ball-wrap__top { font-size: 12px; color: #36cfc9; margin-bottom: 2px; position: absolute; top: 12px; left: 0; right: 0; z-index: 3; } +.weight-ball { width: 150px; height: 150px; margin: 0 auto; border-radius: 50%; position: relative; overflow: hidden; box-shadow: 0 6px 20px rgba(54,207,201,0.18); } +.weight-ball__bg { position: absolute; inset: 0; background: radial-gradient(circle at 50% 30%, #ffffff 0%, #e8fbfa 40%, #b6f0eb 100%); } +.weight-ball__wave { position: absolute; bottom: 0; left: 0; right: 0; height: 58%; } .weight-ball__wave svg { width: 100%; height: 100%; display: block; } -.weight-ball__content { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 2; } +.weight-ball__rulers { position: absolute; inset: 0; pointer-events: none; } +.weight-ball__rulers::before, .weight-ball__rulers::after { content: ''; position: absolute; top: 8px; bottom: 8px; width: 1px; background: repeating-linear-gradient(to bottom, rgba(54,207,201,0.4) 0 4px, transparent 4px 8px); } +.weight-ball__rulers::before { left: 14px; } +.weight-ball__rulers::after { right: 14px; } +.weight-ball__content { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 2; padding-top: 18px; } .weight-ball__val { font-size: 36px; font-weight: 800; color: #1a1a1a; line-height: 1; } -.weight-ball__unit { font-size: 13px; color: #333; } -.weight-ball__meta { font-size: 11px; color: #666; margin-top: 2px; } -.weight-middle { padding: 0 16px 16px; display: flex; justify-content: center; } -.weight-change { text-align: center; } -.weight-change__label { font-size: 12px; color: #999; } -.weight-change__val { font-size: 20px; font-weight: 700; color: #1890ff; margin: 4px 0; } -.weight-change__val.negative { color: #52c41a; } -.weight-change__need { font-size: 12px; color: #faad14; } -.weight-change__need span { font-weight: 600; } -.daily-date { font-size: 13px; color: #666; text-align: center; margin-bottom: 12px; font-weight: 600; } -.daily-checkin { display: flex; gap: 10px; margin-bottom: 16px; } -.checkin-card { flex: 1; border-radius: 12px; padding: 14px 10px; text-align: center; color: #fff; } -.checkin-card--eat { background: linear-gradient(135deg, #52c41a, #73d13d); } -.checkin-card--move { background: linear-gradient(135deg, #fa8c16, #ffa940); } -.checkin-card--weight { background: linear-gradient(135deg, #722ed1, #9254de); } -.checkin-card__icon { font-size: 22px; margin-bottom: 4px; } -.checkin-card__val { font-size: 18px; font-weight: 800; line-height: 1.2; } -.checkin-card__unit { font-size: 12px; font-weight: 400; } -.checkin-card__recommend { font-size: 11px; opacity: 0.85; margin-top: 4px; } -.checkin-card__days { font-size: 11px; opacity: 0.85; margin-top: 2px; } -.bmi-section { background: #f8f9fa; border-radius: 10px; padding: 14px; margin-bottom: 12px; } -.bmi-formula { font-size: 13px; color: #666; text-align: center; margin-bottom: 12px; } -.bmi-table { display: flex; border: 1px solid #e0e0e0; border-radius: 8px; overflow: hidden; background: #fff; } -.bmi-table__cell { flex: 1; text-align: center; padding: 10px 4px; border-right: 1px solid #e0e0e0; } -.bmi-table__cell:last-child { border-right: none; } +.weight-ball__val .weight-ball__unit { font-size: 12px; color: #333; font-weight: 500; margin-left: 2px; } +.weight-ball__meta { font-size: 11px; color: #36a39f; margin-top: 2px; } +.weight-change-row { display: flex; justify-content: space-between; align-items: flex-start; margin-top: 16px; padding: 0 4px; } +.weight-change-row__cell { text-align: center; flex: 1; } +.weight-change-row__label { font-size: 13px; color: #999; margin-bottom: 6px; } +.weight-change-row__val { font-size: 26px; font-weight: 800; color: #1a1a1a; line-height: 1; } +.weight-change-row__val.negative { color: #36cfc9; } +.weight-change-row__sub { font-size: 12px; color: #bbb; margin-top: 6px; } +.weight-change-row__need { font-size: 12px; color: #faad14; margin-top: 6px; } +.daily-card { background: #fff; border-radius: 16px; margin: 0 12px 12px; padding: 14px 14px 16px; box-shadow: 0 4px 14px rgba(0,0,0,0.04); } +.daily-date { font-size: 14px; color: #1f1f1f; text-align: center; margin-bottom: 14px; font-weight: 700; display: flex; align-items: center; justify-content: center; gap: 12px; } +.daily-date::before, .daily-date::after { content: ''; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, #ff7a6b, transparent); max-width: 90px; } +.daily-checkin { display: flex; gap: 10px; } +.checkin-card { flex: 1; border-radius: 14px; padding: 14px 8px 12px; text-align: center; color: #fff; position: relative; } +.checkin-card--eat { background: linear-gradient(160deg, #6ee16e 0%, #3ec46a 100%); } +.checkin-card--move { background: linear-gradient(160deg, #ffb066 0%, #ff8a3d 100%); } +.checkin-card--weight { background: linear-gradient(160deg, #b08cff 0%, #8b6cff 100%); } +.checkin-card__label { font-size: 14px; font-weight: 600; margin-bottom: 6px; opacity: 0.95; } +.checkin-card__val { font-size: 20px; font-weight: 800; line-height: 1.1; } +.checkin-card__unit { font-size: 11px; font-weight: 500; margin-left: 1px; } +.checkin-card__recommend { font-size: 11px; opacity: 0.92; margin-top: 8px; line-height: 1.5; } +.checkin-card__days { font-size: 11px; opacity: 0.92; line-height: 1.5; } +.bmi-card { background: #fff; border-radius: 16px; margin: 0 12px 4px; padding: 14px 14px 16px; box-shadow: 0 4px 14px rgba(0,0,0,0.04); } +.bmi-formula { font-size: 13px; color: #555; text-align: center; padding-bottom: 12px; border-bottom: 1px solid #f0f0f0; } +.bmi-table { display: flex; padding: 14px 0 8px; } +.bmi-table__cell { flex: 1; text-align: center; } .bmi-table__range { font-size: 12px; color: #333; font-weight: 600; } -.bmi-table__label { font-size: 11px; color: #999; margin-top: 4px; } -.bmi-center-note { font-size: 11px; color: #999; text-align: center; margin-top: 10px; } +.bmi-table__label { font-size: 12px; color: #999; margin-top: 8px; } +.bmi-center-note { font-size: 11px; color: #b0b0b0; text-align: center; margin-top: 6px; } /* 健康数据 */ .health-scroll { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 4px; } .health-scroll::-webkit-scrollbar { display: none; } @@ -162,106 +170,119 @@ body { background: #f0f2f5; display: flex; justify-content: center; align-items: -