diff --git a/employee-app/health-monitor/blood-oxygen-alerts.html b/employee-app/health-monitor/blood-oxygen-alerts.html index 0dd6bf7..c90ef8c 100644 --- a/employee-app/health-monitor/blood-oxygen-alerts.html +++ b/employee-app/health-monitor/blood-oxygen-alerts.html @@ -204,6 +204,165 @@ body { /* 底部安全区 */ .bottom-safe { height: 20px; flex-shrink: 0; } + +/* 筛选按钮 */ +.filter-btn { + display: flex; + align-items: center; + gap: 4px; + padding: 6px 12px; + border: 1px solid #ddd; + border-radius: 6px; + background: #fff; + font-size: 12px; + color: #666; + cursor: pointer; + transition: all 0.2s; +} +.filter-btn:active { + background: #f5f5f5; + border-color: #bbb; +} + +/* 时间筛选弹窗 */ +.time-filter-modal { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: none; + z-index: 1000; +} +.time-filter-modal.active { + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-end; +} + +.time-filter-overlay { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.4); +} + +.time-filter-panel { + position: relative; + width: 100%; + max-width: 390px; + background: #fff; + border-radius: 16px 16px 0 0; + box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); + animation: slideUp 0.3s ease-out; +} + +@keyframes slideUp { + from { + transform: translateY(100%); + } + to { + transform: translateY(0); + } +} + +.time-filter-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 16px; + border-bottom: 1px solid #f0f0f0; + font-size: 16px; + font-weight: 600; + color: #1a1a1a; +} + +.time-filter-close { + width: 28px; + height: 28px; + display: flex; + align-items: center; + justify-content: center; + border: none; + background: none; + font-size: 20px; + color: #999; + cursor: pointer; +} + +.time-filter-content { + padding: 16px; + display: flex; + flex-direction: column; + gap: 16px; +} + +.filter-section { + display: flex; + flex-direction: column; + gap: 8px; +} + +.filter-label { + font-size: 13px; + font-weight: 600; + color: #333; +} + +.filter-select { + padding: 10px 12px; + border: 1px solid #ddd; + border-radius: 8px; + font-size: 14px; + color: #333; + background: #fff; + cursor: pointer; + appearance: none; + background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M1 1l5 5 5-5'/%3E%3C/svg%3E"); + background-repeat: no-repeat; + background-position: right 10px center; + padding-right: 32px; +} + +.time-filter-footer { + display: flex; + gap: 12px; + padding: 16px; + border-top: 1px solid #f0f0f0; +} + +.filter-btn-cancel, +.filter-btn-confirm { + flex: 1; + padding: 12px; + border: none; + border-radius: 8px; + font-size: 14px; + font-weight: 600; + cursor: pointer; + transition: all 0.2s; +} + +.filter-btn-cancel { + background: #f5f5f5; + color: #666; +} + +.filter-btn-cancel:active { + background: #e8e8e8; +} + +.filter-btn-confirm { + background: #52c41a; + color: #fff; +} + +.filter-btn-confirm:active { + background: #3a9013; +}
@@ -259,8 +418,8 @@ body {