.realtime-container[data-v-ceeeccaa]{margin-bottom:30px}.section-title[data-v-ceeeccaa]{font-size:24px;color:#333;margin-bottom:20px;font-weight:600}.cards-grid[data-v-ceeeccaa]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.data-card[data-v-ceeeccaa]{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:30px;display:flex;align-items:center;gap:20px;box-shadow:0 10px 30px #667eea4d;transition:transform .3s}.data-card[data-v-ceeeccaa]:hover{transform:translateY(-5px)}.data-card.humidity[data-v-ceeeccaa]{background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 10px 30px #f5576c4d}.card-icon[data-v-ceeeccaa]{font-size:60px;opacity:.9}.card-content[data-v-ceeeccaa]{flex:1;color:#fff}.card-label[data-v-ceeeccaa]{font-size:16px;opacity:.9;margin-bottom:8px;font-weight:500}.card-value[data-v-ceeeccaa]{font-size:48px;font-weight:700;margin-bottom:8px;line-height:1}.card-threshold[data-v-ceeeccaa]{font-size:12px;opacity:.7;margin-bottom:4px}.card-date[data-v-ceeeccaa]{font-size:14px;opacity:.8}.warning-badge[data-v-ceeeccaa]{display:inline-block;margin-left:8px;padding:2px 8px;background:#ffffff4d;border-radius:12px;font-size:12px;font-weight:600}.data-card.warning[data-v-ceeeccaa]{border:3px solid #ffa940;animation:warningPulse-ceeeccaa 2s ease-in-out infinite}.data-card.danger[data-v-ceeeccaa]{border:3px solid #ff4d4f;animation:dangerPulse-ceeeccaa 1s ease-in-out infinite}@keyframes warningPulse-ceeeccaa{0%,to{box-shadow:0 10px 30px #667eea4d}50%{box-shadow:0 10px 30px #ffa94099}}@keyframes dangerPulse-ceeeccaa{0%,to{box-shadow:0 10px 30px #667eea4d}50%{box-shadow:0 10px 30px #ff4d4fcc}}.data-card.data-updated[data-v-ceeeccaa]{animation:dataUpdate-ceeeccaa .3s ease}@keyframes dataUpdate-ceeeccaa{0%{transform:scale(1);box-shadow:0 10px 30px #667eea4d}50%{transform:scale(1.02);box-shadow:0 15px 40px #667eea80}to{transform:scale(1);box-shadow:0 10px 30px #667eea4d}}.data-card.humidity.data-updated[data-v-ceeeccaa]{animation:dataUpdateHumi-ceeeccaa .3s ease}@keyframes dataUpdateHumi-ceeeccaa{0%{transform:scale(1);box-shadow:0 10px 30px #f5576c4d}50%{transform:scale(1.02);box-shadow:0 15px 40px #f5576c80}to{transform:scale(1);box-shadow:0 10px 30px #f5576c4d}}.card-value[data-v-ceeeccaa]{transition:all .3s ease}.data-card.temperature:hover .card-value[data-v-ceeeccaa],.data-card.humidity:hover .card-value[data-v-ceeeccaa]{text-shadow:0 0 10px rgba(255,255,255,.5)}.chart-container[data-v-4d7fa7fb]{position:relative;margin-bottom:30px}.chart-header[data-v-4d7fa7fb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.section-title[data-v-4d7fa7fb]{font-size:24px;color:#333;margin:0;font-weight:600}.date-range-info[data-v-4d7fa7fb]{font-size:14px;color:#666;background:#667eea1a;padding:6px 12px;border-radius:6px;font-weight:500}.refreshing-indicator[data-v-4d7fa7fb]{position:absolute;top:10px;right:20px;display:flex;align-items:center;gap:8px;padding:8px 16px;background:#667eea1a;border-radius:20px;color:#667eea;font-size:14px;z-index:10;animation:pulse-4d7fa7fb 1.5s ease-in-out infinite}.refresh-icon[data-v-4d7fa7fb]{animation:rotate-4d7fa7fb 1s linear infinite}@keyframes rotate-4d7fa7fb{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-4d7fa7fb{0%,to{opacity:1}50%{opacity:.6}}.charts-grid[data-v-4d7fa7fb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px}.chart-wrapper[data-v-4d7fa7fb]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000001a}.chart-wrapper.full-width[data-v-4d7fa7fb]{grid-column:1 / -1}.chart-title[data-v-4d7fa7fb]{font-size:18px;color:#333;margin-bottom:15px;font-weight:600}.chart[data-v-4d7fa7fb]{height:400px;width:100%}@media (max-width: 768px){.charts-grid[data-v-4d7fa7fb]{grid-template-columns:1fr}.chart[data-v-4d7fa7fb]{height:300px}}.table-container[data-v-e15a8405]{margin-top:30px}.section-title[data-v-e15a8405]{font-size:24px;color:#333;margin-bottom:20px;font-weight:600}.refreshing-indicator[data-v-e15a8405]{position:absolute;top:10px;right:20px;display:flex;align-items:center;gap:8px;padding:8px 16px;background:#667eea1a;border-radius:20px;color:#667eea;font-size:14px;z-index:10;animation:pulse-e15a8405 1.5s ease-in-out infinite}.refresh-icon[data-v-e15a8405]{animation:rotate-e15a8405 1s linear infinite}@keyframes rotate-e15a8405{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-e15a8405{0%,to{opacity:1}50%{opacity:.6}}.table-container[data-v-e15a8405]{position:relative}.table-controls[data-v-e15a8405]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;flex-wrap:wrap;gap:15px}.table-info[data-v-e15a8405]{color:#666;font-size:14px}.pagination-info[data-v-e15a8405]{color:#999;font-size:12px;margin-left:8px}.filter-controls[data-v-e15a8405]{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.date-range-group[data-v-e15a8405]{display:flex;align-items:center;gap:8px}.date-range-group label[data-v-e15a8405]{font-size:14px;color:#666;white-space:nowrap}.date-input[data-v-e15a8405]{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.clear-btn[data-v-e15a8405],.load-all-btn[data-v-e15a8405]{padding:8px 16px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.clear-btn[data-v-e15a8405]:hover,.load-all-btn[data-v-e15a8405]:hover{background:#e0e0e0}.load-all-btn[data-v-e15a8405]{background:#667eea;color:#fff;border-color:#667eea}.load-all-btn[data-v-e15a8405]:hover{background:#5568d3}.table-wrapper[data-v-e15a8405]{overflow-x:auto;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a}.data-table[data-v-e15a8405]{width:100%;border-collapse:collapse;min-width:600px}.data-table thead[data-v-e15a8405]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.data-table th[data-v-e15a8405]{padding:15px;text-align:left;font-weight:600;font-size:14px}.data-table tbody tr[data-v-e15a8405]{border-bottom:1px solid #f0f0f0;transition:background .2s}.data-table tbody tr[data-v-e15a8405]:hover{background:#f8f9ff}.data-table tbody tr.highlight[data-v-e15a8405]{background:#fff3cd;font-weight:600}.data-table td[data-v-e15a8405]{padding:12px 15px;font-size:14px;color:#333}.temp-value[data-v-e15a8405]{color:#667eea;font-weight:600}.humi-value[data-v-e15a8405]{color:#f5576c;font-weight:600}.no-data[data-v-e15a8405]{text-align:center;padding:40px;color:#999;font-size:16px}.pagination[data-v-e15a8405]{margin-top:20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.pagination-info-text[data-v-e15a8405]{text-align:center;color:#666;font-size:14px;margin-bottom:15px}.pagination-controls[data-v-e15a8405]{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.page-btn[data-v-e15a8405]{padding:8px 16px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;min-width:60px}.page-btn[data-v-e15a8405]:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea}.page-btn[data-v-e15a8405]:disabled{opacity:.5;cursor:not-allowed}.page-numbers[data-v-e15a8405]{display:flex;gap:4px}.page-number[data-v-e15a8405]{min-width:40px;height:36px;padding:0 12px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.page-number[data-v-e15a8405]:hover{background:#e0e0e0}.page-number.active[data-v-e15a8405]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;font-weight:600}.page-size-select[data-v-e15a8405]{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;cursor:pointer;background:#fff;margin-left:10px}.page-size-select[data-v-e15a8405]:focus{outline:none;border-color:#667eea}@media (max-width: 768px){.table-controls[data-v-e15a8405]{flex-direction:column;align-items:stretch}.filter-controls[data-v-e15a8405]{flex-direction:column}.date-input[data-v-e15a8405],.clear-btn[data-v-e15a8405]{width:100%}}.modal-overlay[data-v-5874abed]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-container[data-v-5874abed]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideIn-5874abed .3s ease-out}@keyframes modalSlideIn-5874abed{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-5874abed]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.modal-title[data-v-5874abed]{font-size:20px;color:#333;font-weight:600;margin:0}.close-btn[data-v-5874abed]{width:32px;height:32px;border:none;background:#f5f5f5;border-radius:50%;cursor:pointer;font-size:24px;line-height:1;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn[data-v-5874abed]:hover{background:#e0e0e0;color:#333}.modal-content[data-v-5874abed]{padding:24px;overflow-y:auto;flex:1}.threshold-grid[data-v-5874abed]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px}.threshold-card[data-v-5874abed]{padding:20px;border-radius:12px;border:2px solid #e0e0e0}.threshold-card.temperature[data-v-5874abed]{border-color:#667eea;background:linear-gradient(135deg,#667eea0d,#764ba20d)}.threshold-card.humidity[data-v-5874abed]{border-color:#f5576c;background:linear-gradient(135deg,#f5576c0d,#f093fb0d)}.card-header[data-v-5874abed]{display:flex;align-items:center;gap:10px;margin-bottom:15px}.card-icon[data-v-5874abed]{font-size:24px}.card-title[data-v-5874abed]{font-size:18px;font-weight:600;color:#333}.threshold-inputs[data-v-5874abed]{display:flex;flex-direction:column;gap:15px}.input-group[data-v-5874abed]{display:flex;justify-content:space-between;align-items:center}.input-group label[data-v-5874abed]{font-size:14px;color:#666;font-weight:500}.threshold-input[data-v-5874abed]{width:120px;padding:8px 12px;border:2px solid #ddd;border-radius:6px;font-size:14px;text-align:right}.threshold-input[data-v-5874abed]:focus{outline:none;border-color:#667eea}.threshold-input.error[data-v-5874abed]{border-color:#f5576c}.threshold-value[data-v-5874abed]{font-size:16px;font-weight:600;color:#333}.error-message[data-v-5874abed]{color:#f5576c;font-size:12px;margin-top:8px}.success-message[data-v-5874abed]{color:#52c41a;font-size:14px;margin-top:10px;text-align:center;padding:10px;background:#52c41a1a;border-radius:6px}.modal-footer[data-v-5874abed]{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e0e0e0;background:#fafafa}.cancel-btn[data-v-5874abed]{padding:10px 24px;background:#fff;color:#666;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.cancel-btn[data-v-5874abed]:hover{background:#f5f5f5;border-color:#bbb}.save-btn[data-v-5874abed]{padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s}.save-btn[data-v-5874abed]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.save-btn[data-v-5874abed]:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-enter-active[data-v-5874abed],.modal-leave-active[data-v-5874abed]{transition:opacity .3s ease}.modal-enter-from[data-v-5874abed],.modal-leave-to[data-v-5874abed]{opacity:0}.modal-enter-active .modal-container[data-v-5874abed],.modal-leave-active .modal-container[data-v-5874abed]{transition:transform .3s ease,opacity .3s ease}.modal-enter-from .modal-container[data-v-5874abed],.modal-leave-to .modal-container[data-v-5874abed]{transform:translateY(-20px) scale(.95);opacity:0}.app-container[data-v-ff40a5a2]{background:#fffffff2;border-radius:20px;padding:30px;box-shadow:0 20px 60px #0000004d}.app-header[data-v-ff40a5a2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.app-header h1[data-v-ff40a5a2]{color:#333;font-size:32px;font-weight:700}.refresh-control[data-v-ff40a5a2]{display:flex;align-items:center;gap:20px}.refresh-btn[data-v-ff40a5a2]{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s}.refresh-btn[data-v-ff40a5a2]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.refresh-btn[data-v-ff40a5a2]:disabled{opacity:.6;cursor:not-allowed}.threshold-btn[data-v-ff40a5a2]{padding:12px 24px;background:linear-gradient(135deg,#f5576c,#f093fb);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s}.threshold-btn[data-v-ff40a5a2]:hover{transform:translateY(-2px);box-shadow:0 5px 15px #f5576c66}.last-update[data-v-ff40a5a2]{color:#666;font-size:14px}.charts-section[data-v-ff40a5a2]{margin:30px 0}.initial-loading[data-v-ff40a5a2]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#666}.loading-spinner[data-v-ff40a5a2]{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin-ff40a5a2 1s linear infinite;margin-bottom:20px}@keyframes spin-ff40a5a2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.refresh-spinner[data-v-ff40a5a2]{display:inline-block;animation:rotate-ff40a5a2 1s linear infinite}@keyframes rotate-ff40a5a2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-enter-active[data-v-ff40a5a2],.fade-leave-active[data-v-ff40a5a2]{transition:opacity .3s ease}.fade-enter-from[data-v-ff40a5a2],.fade-leave-to[data-v-ff40a5a2]{opacity:0}.main-content[data-v-ff40a5a2]{animation:fadeIn-ff40a5a2 .5s ease-in}@keyframes fadeIn-ff40a5a2{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}#app{max-width:1400px;margin:0 auto}
