.app-header[data-v-2266ed92]{background-color:var(--bg-surface);border-bottom:1px solid var(--border);grid-template-columns:1fr 280px 1fr;align-items:center;padding:14px 24px;transition:background-color .2s,border-color .2s;display:grid}.header-left[data-v-2266ed92]{align-items:center;gap:12px;display:flex}.logo[data-v-2266ed92]{opacity:.85;width:auto;height:44px;filter:var(--logo-filter);transition:opacity .2s}.logo[data-v-2266ed92]:hover{opacity:1}.title-group[data-v-2266ed92]{flex-direction:column;gap:2px;display:flex}.title[data-v-2266ed92]{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1.2}.subtitle[data-v-2266ed92]{color:var(--text-muted);font-size:12px}.header-center[data-v-2266ed92]{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.clock-time[data-v-2266ed92]{color:var(--clock-color);letter-spacing:.06em;text-shadow:0 0 10px var(--clock-glow);width:260px;font-family:DS-Digital,monospace;font-size:42px;font-weight:400;line-height:1}.clock-date[data-v-2266ed92]{color:var(--text-muted);letter-spacing:.03em;padding-left:2px;font-size:11px}.header-right[data-v-2266ed92]{justify-content:flex-end;align-items:center;gap:10px;display:flex}@media (width<=768px){.app-header[data-v-2266ed92]{grid-template-columns:1fr auto;padding:10px 16px}.header-center[data-v-2266ed92]{display:none}}@media (width<=480px){.logo[data-v-2266ed92]{height:32px}.title[data-v-2266ed92]{font-size:15px}.subtitle[data-v-2266ed92],.status-label[data-v-2266ed92]{display:none}}.status-dot[data-v-2266ed92]{border-radius:50%;width:8px;height:8px}.status-dot.normal[data-v-2266ed92]{background-color:#22c55e}.status-dot.warning[data-v-2266ed92]{background-color:#f59e0b}.status-dot.alert[data-v-2266ed92]{background-color:#ef4444;animation:1s infinite pulse-2266ed92}.status-dot.connecting[data-v-2266ed92]{background-color:var(--text-muted)}.status-label[data-v-2266ed92]{color:var(--text-secondary);font-size:13px}.icon-btn[data-v-2266ed92]{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:border-color .2s,color .2s;display:flex}.icon-btn[data-v-2266ed92]:hover{border-color:var(--accent);color:var(--text-primary)}@keyframes pulse-2266ed92{0%,to{opacity:1}50%{opacity:.3}}.app-footer[data-v-cee839a5]{border-top:1px solid var(--border);background-color:var(--bg-surface);color:var(--text-muted);justify-content:space-between;align-items:center;padding:10px 24px;font-size:12px;transition:background-color .2s,border-color .2s;display:flex}.footer-left[data-v-cee839a5]{align-items:center;gap:10px;display:flex}.sse-dot[data-v-cee839a5]{border-radius:50%;flex-shrink:0;width:7px;height:7px}.sse-dot.connected[data-v-cee839a5]{background-color:#22c55e}.sse-dot.connecting[data-v-cee839a5]{background-color:var(--text-muted);animation:1.2s infinite pulse-cee839a5}.sse-dot.disconnected[data-v-cee839a5]{background-color:#ef4444;animation:1.2s infinite pulse-cee839a5}.sse-label.connected[data-v-cee839a5]{color:#22c55e}.sse-label.connecting[data-v-cee839a5]{color:var(--text-muted)}.sse-label.disconnected[data-v-cee839a5]{color:#ef4444}.divider[data-v-cee839a5]{background-color:var(--border);width:1px;height:12px}.meta-item[data-v-cee839a5]{color:var(--text-muted)}.footer-right[data-v-cee839a5]{color:var(--text-dimmed);align-items:center;gap:12px;display:flex}.version[data-v-cee839a5]{font-family:monospace;font-size:11px}@keyframes pulse-cee839a5{0%,to{opacity:1}50%{opacity:.3}}@media (width<=640px){.app-footer[data-v-cee839a5]{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 16px}.footer-right[data-v-cee839a5]{gap:10px}}@media (width<=480px){.hide-mobile[data-v-cee839a5]{display:none}.app-footer[data-v-cee839a5]{font-size:11px}}.card[data-v-51b818bf]{background-color:var(--bg-surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;flex:1;min-width:0;padding:16px;transition:border-color .3s,background-color .2s;display:flex}.card.warning[data-v-51b818bf]{border-color:var(--card-warning-border)}.card.alert[data-v-51b818bf]{border-color:var(--card-alert-border)}.card-header[data-v-51b818bf]{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.card-title[data-v-51b818bf]{flex-direction:column;gap:3px;min-width:0;display:flex}.type-badge[data-v-51b818bf]{border-radius:10px;padding:1px 6px;font-size:10px;font-weight:500;line-height:1.6}.type-badge.temp[data-v-51b818bf]{background-color:var(--sensor-type-temp-bg);color:var(--sensor-type-temp-color)}.sensor-name[data-v-51b818bf]{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.badge[data-v-51b818bf]{border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600}.badge.normal[data-v-51b818bf]{background-color:var(--badge-normal-bg);color:var(--badge-normal-color)}.badge.warning[data-v-51b818bf]{background-color:var(--badge-warning-bg);color:var(--badge-warning-color)}.badge.alert[data-v-51b818bf]{background-color:var(--badge-alert-bg);color:var(--badge-alert-color)}.card-metrics[data-v-51b818bf]{flex:1;align-items:center;gap:16px;margin-bottom:12px;display:flex}.metric[data-v-51b818bf]{text-align:center;flex:1}.metric-label[data-v-51b818bf]{color:var(--text-muted);margin-bottom:4px;font-size:11px;display:block}.metric-value[data-v-51b818bf]{color:var(--text-primary);white-space:nowrap;font-size:28px;font-weight:700;line-height:1}.metric-value.warning[data-v-51b818bf]{color:var(--metric-warning-color)}.metric-value.alert[data-v-51b818bf]{color:var(--metric-alert-color)}.metric-unit[data-v-51b818bf]{color:var(--text-secondary);margin-left:2px;font-size:14px;font-weight:400}.divider[data-v-51b818bf]{background-color:var(--border);flex-shrink:0;width:1px;height:40px}.card-footer[data-v-51b818bf]{color:var(--text-muted);text-align:right;justify-content:flex-end;align-items:center;gap:4px;font-size:12px;display:flex}.card-footer.aging[data-v-51b818bf]{color:var(--text-secondary)}.card-footer.stale[data-v-51b818bf]{color:var(--badge-warning-color)}.update-icon[data-v-51b818bf]{opacity:.7;font-size:13px}@media (width<=640px){.metric-value[data-v-51b818bf]{font-size:24px}.card-metrics[data-v-51b818bf]{gap:10px}}@media (width<=480px){.card[data-v-51b818bf]{padding:12px}.metric-value[data-v-51b818bf]{font-size:22px}.card-metrics[data-v-51b818bf]{gap:8px}}.card[data-v-22d72978]{background-color:var(--bg-surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;flex:1;min-width:0;padding:16px;transition:border-color .3s,background-color .3s;display:flex}.card.wet[data-v-22d72978]{border-color:var(--card-alert-border);background-color:var(--card-wet-bg)}.card-header[data-v-22d72978]{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.card-title[data-v-22d72978]{flex-direction:column;gap:3px;min-width:0;display:flex}.type-badge[data-v-22d72978]{border-radius:10px;padding:1px 6px;font-size:10px;font-weight:500;line-height:1.6}.type-badge.leak[data-v-22d72978]{background-color:var(--sensor-type-leak-bg);color:var(--sensor-type-leak-color)}.sensor-name[data-v-22d72978]{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.badge[data-v-22d72978]{border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600}.badge.normal[data-v-22d72978]{background-color:var(--badge-normal-bg);color:var(--badge-normal-color)}.badge.alert[data-v-22d72978]{background-color:var(--badge-alert-bg);color:var(--badge-alert-color)}.card-status[data-v-22d72978]{flex:1;justify-content:center;align-items:center;gap:12px;margin-bottom:12px;display:flex}.indicator[data-v-22d72978]{border-radius:50%;flex-shrink:0;width:14px;height:14px}.indicator.dry[data-v-22d72978]{background-color:#22c55e}.indicator.wet[data-v-22d72978]{background-color:#ef4444;animation:.8s infinite pulse-22d72978}.water-label[data-v-22d72978]{color:var(--text-primary);white-space:nowrap;font-size:18px;font-weight:600}.water-label.blink[data-v-22d72978]{color:var(--badge-alert-color);animation:.8s step-end infinite blink-22d72978}.card-footer[data-v-22d72978]{color:var(--text-muted);text-align:right;justify-content:flex-end;align-items:center;gap:4px;font-size:12px;display:flex}.card-footer.aging[data-v-22d72978]{color:var(--text-secondary)}.card-footer.stale[data-v-22d72978]{color:var(--badge-warning-color)}.update-icon[data-v-22d72978]{opacity:.7;font-size:13px}@media (width<=480px){.card[data-v-22d72978]{padding:12px}.water-label[data-v-22d72978]{font-size:16px}}@keyframes pulse-22d72978{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@keyframes blink-22d72978{0%,to{opacity:1}50%{opacity:.2}}.modal-backdrop[data-v-5b758a54]{z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-container[data-v-5b758a54]{background:var(--card-bg,#1e293b);border:1px solid var(--border,#334155);border-radius:12px;flex-direction:column;width:min(900px,100%);max-height:calc(100vh - 32px);display:flex;overflow:hidden}.modal-header[data-v-5b758a54]{border-bottom:1px solid var(--border,#334155);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-title[data-v-5b758a54]{color:var(--text-primary,#f1f5f9);margin:0;font-size:15px;font-weight:600}.modal-close[data-v-5b758a54]{border:1px solid var(--border,#334155);width:28px;height:28px;color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:background .15s,color .15s;display:flex}.modal-close[data-v-5b758a54]:hover{color:#ef4444;background:#ef444426;border-color:#ef4444}.preset-bar[data-v-5b758a54]{border-bottom:1px solid var(--border,#334155);flex-wrap:wrap;flex-shrink:0;gap:6px;padding:12px 20px;display:flex}.preset-btn[data-v-5b758a54]{border:1px solid var(--border,#334155);color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border-radius:20px;padding:4px 12px;font-size:12px;transition:border-color .15s,color .15s,background .15s}.preset-btn[data-v-5b758a54]:hover{border-color:var(--accent,#3b82f6);color:var(--text-primary,#f1f5f9)}.preset-btn.active[data-v-5b758a54]{border-color:var(--accent,#3b82f6);color:#60a5fa;background:#3b82f626}.custom-range[data-v-5b758a54]{border-bottom:1px solid var(--border,#334155);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:10px 20px;display:flex}.date-input[data-v-5b758a54]{border:1px solid var(--border,#334155);background:var(--input-bg,#0f172a);color:var(--text-primary,#f1f5f9);border-radius:6px;padding:5px 10px;font-size:13px}.range-sep[data-v-5b758a54]{color:var(--text-muted,#94a3b8);font-size:13px}.query-btn[data-v-5b758a54]{border:1px solid var(--accent,#3b82f6);color:#60a5fa;cursor:pointer;background:#3b82f626;border-radius:6px;padding:5px 16px;font-size:12px;transition:background .15s}.query-btn[data-v-5b758a54]:hover{background:#3b82f64d}.modal-body[data-v-5b758a54]{flex:1;padding:16px 20px 20px;overflow-y:auto}.state-msg[data-v-5b758a54]{color:var(--text-muted,#94a3b8);justify-content:center;align-items:center;gap:10px;padding:60px 0;font-size:14px;display:flex}.state-msg.error[data-v-5b758a54]{color:#ef4444}.spinner[data-v-5b758a54]{border:2px solid var(--border,#334155);border-top-color:var(--accent,#3b82f6);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin-5b758a54}@keyframes spin-5b758a54{to{transform:rotate(360deg)}}.chart-section[data-v-5b758a54]{margin-bottom:28px}.section-title[data-v-5b758a54]{color:var(--text-secondary,#cbd5e1);border-bottom:1px solid var(--border,#334155);margin-bottom:10px;padding-bottom:6px;font-size:13px;font-weight:600}.no-data[data-v-5b758a54]{text-align:center;color:var(--text-muted,#64748b);padding:24px 0;font-size:13px}.chart-wrap[data-v-5b758a54]{height:220px;position:relative}.leak-section[data-v-5b758a54]{margin-bottom:20px}.leak-sensor-block[data-v-5b758a54]{margin-bottom:16px}.leak-sensor-name[data-v-5b758a54]{color:var(--text-muted,#94a3b8);margin-bottom:6px;padding-left:4px;font-size:12px}.leak-event-list[data-v-5b758a54]{flex-direction:column;gap:4px;max-height:220px;display:flex;overflow-y:auto}.leak-event[data-v-5b758a54]{border:1px solid var(--border,#334155);background:#ffffff08;border-radius:6px;align-items:center;gap:10px;padding:6px 10px;font-size:12px;display:flex}.leak-event.wet[data-v-5b758a54]{background:#ef44440f;border-color:#ef444466}.evt-dot[data-v-5b758a54]{background:#3b82f6;border-radius:50%;flex-shrink:0;width:8px;height:8px}.leak-event.wet .evt-dot[data-v-5b758a54]{background:#ef4444}.evt-label[data-v-5b758a54]{color:var(--text-primary,#f1f5f9);min-width:60px;font-weight:500}.leak-event.wet .evt-label[data-v-5b758a54]{color:#ef4444}.evt-time[data-v-5b758a54]{color:var(--text-muted,#64748b);font-size:11px}@media (width<=600px){.modal-backdrop[data-v-5b758a54]{padding:0}.modal-container[data-v-5b758a54]{border-radius:0;width:100%;max-height:100vh}.preset-bar[data-v-5b758a54]{gap:4px}.preset-btn[data-v-5b758a54]{padding:3px 9px;font-size:11px}}.dashboard[data-v-fb09bcb3]{max-width:1400px;margin:0 auto}.dashboard-toolbar[data-v-fb09bcb3]{justify-content:flex-end;margin-bottom:12px;display:flex}.edit-toggle[data-v-fb09bcb3]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:5px 12px;font-size:12px;transition:border-color .2s,color .2s,background-color .2s}.edit-toggle[data-v-fb09bcb3]:hover{border-color:var(--accent);color:var(--text-primary)}.edit-toggle.active[data-v-fb09bcb3]{border-color:var(--badge-normal-color);color:var(--badge-normal-color);background-color:var(--badge-normal-bg)}.zones-row[data-v-fb09bcb3]{align-items:flex-start;gap:24px;display:flex}.zone-section[data-v-fb09bcb3]{flex:1;min-width:0}.zone-title[data-v-fb09bcb3]{color:var(--text-secondary);border-bottom:1px solid var(--border);border-left:3px solid var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;margin-bottom:12px;padding-bottom:8px;padding-left:10px;font-size:13px;font-weight:600;transition:color .15s;display:flex}.zone-title[data-v-fb09bcb3]:hover{color:var(--text-primary)}.zone-title:hover .chart-hint[data-v-fb09bcb3]{opacity:1}.chart-hint[data-v-fb09bcb3]{opacity:.4;font-size:12px;transition:opacity .15s}.zone-cards[data-v-fb09bcb3]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=768px){.zone-cards[data-v-fb09bcb3]{grid-template-columns:1fr}}@media (width<=600px){.zones-row[data-v-fb09bcb3]{flex-direction:column;gap:16px}.zone-section[data-v-fb09bcb3]{width:100%}}.zones-row.edit-mode[data-v-fb09bcb3] .card{outline:2px dashed var(--border);outline-offset:2px}.card-wrapper[data-v-fb09bcb3]{flex-direction:column;display:flex;position:relative}.card-remove[data-v-fb09bcb3]{background-color:var(--badge-alert-bg);border:1px solid var(--card-alert-border);width:22px;height:22px;color:var(--badge-alert-color);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;font-size:13px;line-height:1;transition:transform .15s;display:flex;position:absolute;top:-9px;right:-9px}.card-remove[data-v-fb09bcb3]:hover{transform:scale(1.15)}.loading[data-v-fb09bcb3]{color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:80px 0;display:flex}.loading p[data-v-fb09bcb3]{font-size:14px}.loading-dot[data-v-fb09bcb3]{background-color:var(--accent);border-radius:50%;width:8px;height:8px;margin:0 3px;animation:1.2s ease-in-out infinite bounce-fb09bcb3;display:inline-block}.loading-dot[data-v-fb09bcb3]:first-child{animation-delay:0s}.loading-dot[data-v-fb09bcb3]:nth-child(2){animation-delay:.2s}.loading-dot[data-v-fb09bcb3]:nth-child(3){animation-delay:.4s}@keyframes bounce-fb09bcb3{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-8px)}}.empty[data-v-fb09bcb3]{text-align:center;color:var(--text-dimmed);padding:80px 0}.empty p[data-v-fb09bcb3]{margin-bottom:8px;font-size:15px}.empty-hint[data-v-fb09bcb3]{color:var(--text-muted);font-size:13px}.settings[data-v-0148ea03]{max-width:860px;margin:0 auto}.settings-header[data-v-0148ea03]{align-items:center;gap:16px;margin-bottom:28px;display:flex}.settings-title[data-v-0148ea03]{color:var(--text-primary);font-size:18px;font-weight:700}.back-btn[data-v-0148ea03]{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:13px;transition:border-color .2s,color .2s}.back-btn[data-v-0148ea03]:hover{border-color:var(--accent);color:var(--text-primary)}.section[data-v-0148ea03]{margin-bottom:40px}.section-header[data-v-0148ea03]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.section-title[data-v-0148ea03]{color:var(--text-primary);font-size:15px;font-weight:600}.section-desc[data-v-0148ea03]{color:var(--text-muted);margin-bottom:16px;font-size:13px}.action-btn[data-v-0148ea03]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:5px 12px;font-size:12px;transition:border-color .2s,color .2s}.action-btn[data-v-0148ea03]:hover{border-color:var(--accent);color:var(--accent-text)}.action-btn.danger[data-v-0148ea03]:hover{border-color:var(--card-alert-border);color:var(--badge-alert-color)}.zone-list[data-v-0148ea03]{flex-direction:column;gap:16px;display:flex}.zone-card[data-v-0148ea03]{background-color:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:18px 22px}.zone-name[data-v-0148ea03]{color:var(--text-secondary);border-left:3px solid var(--accent);margin-bottom:14px;padding-left:10px;font-size:14px;font-weight:600}.threshold-grid[data-v-0148ea03]{flex-direction:column;gap:12px;display:flex}.threshold-row[data-v-0148ea03]{justify-content:space-between;align-items:center;gap:16px;display:flex}.threshold-label[data-v-0148ea03]{color:var(--text-primary);flex-direction:column;gap:2px;font-size:13px;display:flex}.threshold-hint[data-v-0148ea03]{color:var(--text-muted);font-size:11px}.input-wrap[data-v-0148ea03]{align-items:center;gap:6px;display:flex}.threshold-input[data-v-0148ea03]{background-color:var(--bg-elevated);border:1px solid var(--border);width:76px;color:var(--text-primary);text-align:right;border-radius:6px;outline:none;padding:5px 8px;font-size:15px;font-weight:600;transition:border-color .2s}.threshold-input[data-v-0148ea03]:focus{border-color:var(--accent)}.unit[data-v-0148ea03]{color:var(--text-muted);min-width:18px;font-size:12px}.sensor-list[data-v-0148ea03]{flex-direction:column;gap:8px;display:flex}.sensor-row[data-v-0148ea03]{background-color:var(--bg-elevated);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;transition:opacity .2s;display:flex}.sensor-row.hidden[data-v-0148ea03]{opacity:.45}.sensor-info[data-v-0148ea03]{align-items:center;gap:10px;display:flex}.sensor-name[data-v-0148ea03]{color:var(--text-primary);font-size:13px}.sensor-type-badge[data-v-0148ea03]{border-radius:10px;padding:2px 7px;font-size:10px;font-weight:600}.sensor-type-badge.temp-humidity[data-v-0148ea03]{background-color:var(--sensor-type-temp-bg);color:var(--sensor-type-temp-color)}.sensor-type-badge.leak[data-v-0148ea03]{background-color:var(--sensor-type-leak-bg);color:var(--sensor-type-leak-color)}.toggle-btn[data-v-0148ea03]{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:12px;min-width:64px;padding:4px 12px;font-size:12px;font-weight:500;transition:all .15s}.toggle-btn.on[data-v-0148ea03]{background-color:var(--toggle-on-bg);color:var(--toggle-on-color);border-color:var(--toggle-on-border)}.toggle-btn.off[data-v-0148ea03]{background-color:var(--bg-surface);color:var(--text-dimmed);border-color:var(--border)}.toggle-btn.on[data-v-0148ea03]:hover{background-color:var(--badge-alert-bg);color:var(--badge-alert-color);border-color:var(--card-alert-border)}.toggle-btn.off[data-v-0148ea03]:hover{background-color:var(--toggle-on-bg);color:var(--toggle-on-color);border-color:var(--toggle-on-border)}.no-data[data-v-0148ea03]{color:var(--text-dimmed);text-align:center;padding:16px 0;font-size:13px}.preset-btns[data-v-0148ea03]{flex-wrap:wrap;gap:8px;display:flex}.preset-btn[data-v-0148ea03]{border:1px solid var(--border);background-color:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:7px 20px;font-size:13px;font-weight:500;transition:border-color .15s,color .15s,background-color .15s}.preset-btn[data-v-0148ea03]:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.preset-btn.active[data-v-0148ea03]{border-color:var(--accent);background-color:var(--accent-bg);color:var(--accent-text);font-weight:600}.preset-btn[data-v-0148ea03]:disabled{opacity:.5;cursor:not-allowed}.save-status[data-v-0148ea03]{font-size:12px;font-weight:500}.save-status.saving[data-v-0148ea03]{color:var(--text-secondary)}.save-status.done[data-v-0148ea03]{color:var(--badge-normal-color)}.save-status.error[data-v-0148ea03]{color:var(--badge-alert-color)}#app[data-v-31d47ebb]{flex-direction:column;min-height:100vh;display:flex}.main-content[data-v-31d47ebb]{flex:1;padding:24px}@media (width<=768px){.main-content[data-v-31d47ebb]{padding:12px}}@media (width<=480px){.main-content[data-v-31d47ebb]{padding:8px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-app:#0f172a;--bg-surface:#1e293b;--bg-elevated:#0f172a;--border:#334155;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-dimmed:#475569;--accent:#3b82f6;--accent-bg:#1e3a5f;--accent-text:#7dd3fc;--clock-color:#4ade80;--clock-glow:#4ade8080;--badge-normal-bg:#14532d;--badge-normal-color:#4ade80;--badge-warning-bg:#451a03;--badge-warning-color:#fbbf24;--badge-alert-bg:#450a0a;--badge-alert-color:#f87171;--card-warning-border:#f59e0b;--card-alert-border:#ef4444;--card-wet-bg:#2d1a1a;--metric-warning-color:#fbbf24;--metric-alert-color:#f87171;--sensor-type-temp-bg:#1e3a5f;--sensor-type-temp-color:#7dd3fc;--sensor-type-leak-bg:#1a3a2f;--sensor-type-leak-color:#6ee7b7;--toggle-on-bg:#14532d;--toggle-on-color:#4ade80;--toggle-on-border:#166534;--logo-filter:none}:root.light{--bg-app:#f1f5f9;--bg-surface:#fff;--bg-elevated:#f8fafc;--border:#e2e8f0;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--text-dimmed:#cbd5e1;--accent:#2563eb;--accent-bg:#dbeafe;--accent-text:#1d4ed8;--clock-color:#1e3a5f;--clock-glow:#1e3a8a26;--badge-normal-bg:#dcfce7;--badge-normal-color:#16a34a;--badge-warning-bg:#fef3c7;--badge-warning-color:#d97706;--badge-alert-bg:#fee2e2;--badge-alert-color:#dc2626;--card-warning-border:#d97706;--card-alert-border:#dc2626;--card-wet-bg:#fee2e2;--metric-warning-color:#d97706;--metric-alert-color:#dc2626;--sensor-type-temp-bg:#dbeafe;--sensor-type-temp-color:#1d4ed8;--sensor-type-leak-bg:#dcfce7;--sensor-type-leak-color:#16a34a;--toggle-on-bg:#dcfce7;--toggle-on-color:#16a34a;--toggle-on-border:#166534;--logo-filter:none}html,body{background-color:var(--bg-app);height:100%;color:var(--text-primary);font-family:Noto Sans KR,Segoe UI,sans-serif;font-size:14px;transition:background-color .2s,color .2s}#app{min-height:100vh}
