#app{min-height:100vh}.login-page[data-v-eade82b9]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:#f0f2f5}.login-card[data-v-eade82b9]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:40px;width:100%;max-width:400px}.logo[data-v-eade82b9]{text-align:center;margin-bottom:32px}.logo h1[data-v-eade82b9]{font-size:28px;color:#ff6b35;font-weight:700;margin-bottom:4px}.subtitle[data-v-eade82b9]{font-size:14px;color:#6b7280}.login-form[data-v-eade82b9]{display:flex;flex-direction:column;gap:16px}.field[data-v-eade82b9]{display:flex;flex-direction:column;gap:6px}.field label[data-v-eade82b9]{font-size:14px;font-weight:500;color:#16213e}.field input[data-v-eade82b9]{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;font-family:inherit;color:#16213e;transition:border-color .2s}.field input[data-v-eade82b9]:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.field input[data-v-eade82b9]:disabled{background:#f9fafb;color:#9ca3af}.error-message[data-v-eade82b9]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;border:1px solid #fecaca}.login-button[data-v-eade82b9]{padding:12px;background:#ff6b35;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s}.login-button[data-v-eade82b9]:hover:not(:disabled){background:#e55a2b}.login-button[data-v-eade82b9]:disabled{opacity:.6;cursor:not-allowed}.setup-link[data-v-eade82b9]{text-align:center;margin-top:24px;font-size:13px;color:#6b7280}.zone-control[data-v-8f6f6eaa]{padding:16px;background:#f9fafb;border-radius:12px;display:flex;flex-direction:column;gap:12px}.zone-header[data-v-8f6f6eaa]{display:flex;align-items:center;justify-content:space-between}.zone-label[data-v-8f6f6eaa]{font-size:14px;font-weight:600;color:#16213e}.success-badge[data-v-8f6f6eaa]{font-size:12px;color:#16a34a;background:#dcfce7;padding:2px 8px;border-radius:12px;font-weight:500}.error-badge[data-v-8f6f6eaa]{font-size:12px;color:#dc2626;background:#fef2f2;padding:2px 8px;border-radius:12px;font-weight:500}.temperature-display[data-v-8f6f6eaa]{text-align:center}.temp-value[data-v-8f6f6eaa]{font-size:36px;font-weight:700;color:#ff6b35}.temp-unit[data-v-8f6f6eaa]{font-size:18px;color:#6b7280;margin-left:2px}.controls[data-v-8f6f6eaa]{display:flex;align-items:center;gap:12px}.temp-btn[data-v-8f6f6eaa]{width:36px;height:36px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:20px;font-weight:600;color:#16213e;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.temp-btn[data-v-8f6f6eaa]:hover:not(:disabled){background:#f0f2f5}.temp-btn[data-v-8f6f6eaa]:disabled{opacity:.4;cursor:not-allowed}.temp-slider[data-v-8f6f6eaa]{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#d1d5db;border-radius:3px;outline:none}.temp-slider[data-v-8f6f6eaa]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#ff6b35;cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #00000026}.temp-slider[data-v-8f6f6eaa]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#ff6b35;cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #00000026}.temp-slider[data-v-8f6f6eaa]:disabled{opacity:.5}.set-button[data-v-8f6f6eaa]{padding:8px 16px;background:#ff6b35;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s}.set-button[data-v-8f6f6eaa]:hover:not(:disabled){background:#e55a2b}.set-button[data-v-8f6f6eaa]:disabled{opacity:.5;cursor:not-allowed}.device-card[data-v-645786de]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:24px}.device-header[data-v-645786de]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.device-name[data-v-645786de]{font-size:18px;font-weight:700;color:#16213e;margin-bottom:4px}.controller-id[data-v-645786de]{font-size:13px;color:#6b7280;font-family:monospace}.device-status[data-v-645786de]{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:13px;font-weight:500;flex-shrink:0}.device-status.online[data-v-645786de]{background:#dcfce7;color:#16a34a}.device-status.offline[data-v-645786de]{background:#fef2f2;color:#dc2626}.status-dot[data-v-645786de]{width:8px;height:8px;border-radius:50%}.device-status.online .status-dot[data-v-645786de]{background:#16a34a}.device-status.offline .status-dot[data-v-645786de]{background:#dc2626}.zones-grid[data-v-645786de]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.schedule-view[data-v-556018db]{display:flex;flex-direction:column;gap:20px}.empty-state[data-v-556018db]{text-align:center;padding:60px 20px;color:#6b7280;font-size:15px}.device-section[data-v-556018db]{display:flex;flex-direction:column;gap:20px}.add-rule-card[data-v-556018db]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:24px}.section-title[data-v-556018db]{font-size:18px;font-weight:700;color:#16213e;margin-bottom:2px}.section-subtitle[data-v-556018db]{font-size:14px;color:#6b7280;margin-bottom:20px}.form-fields[data-v-556018db]{display:flex;flex-direction:column;gap:18px}.field[data-v-556018db]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-556018db]{font-size:13px;font-weight:600;color:#16213e;text-transform:uppercase;letter-spacing:.3px}.field-select[data-v-556018db]{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;font-family:inherit;color:#16213e;background:#fff;cursor:pointer}.field-select[data-v-556018db]:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.day-presets[data-v-556018db]{display:flex;gap:12px;margin-bottom:4px}.preset-link[data-v-556018db]{background:none;border:none;color:#ff6b35;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.preset-link[data-v-556018db]:hover{color:#e55a2b}.day-buttons[data-v-556018db]{display:flex;gap:8px}.day-btn[data-v-556018db]{width:36px;height:36px;border-radius:50%;border:2px solid #d1d5db;background:#fff;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s;padding:0;font-family:inherit}.day-btn.selected[data-v-556018db]{background:#ff6b35;border-color:#ff6b35;color:#fff}.day-btn[data-v-556018db]:hover:not(.selected){border-color:#ff6b35;color:#ff6b35}.field-time[data-v-556018db]{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;font-family:inherit;color:#16213e;max-width:160px}.field-time[data-v-556018db]:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.temp-controls[data-v-556018db]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.temp-btn[data-v-556018db]{width:36px;height:36px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:20px;font-weight:600;color:#16213e;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;font-family:inherit}.temp-btn[data-v-556018db]:hover:not(:disabled){background:#f0f2f5}.temp-btn[data-v-556018db]:disabled{opacity:.4;cursor:not-allowed}.temp-display[data-v-556018db]{min-width:60px;text-align:center}.temp-val[data-v-556018db]{font-size:22px;font-weight:700;color:#ff6b35}.temp-unit[data-v-556018db]{font-size:14px;color:#6b7280;margin-left:1px}.temp-slider[data-v-556018db]{flex:1;min-width:100px;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#d1d5db;border-radius:3px;outline:none}.temp-slider[data-v-556018db]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#ff6b35;cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #00000026}.temp-slider[data-v-556018db]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#ff6b35;cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #00000026}.form-footer[data-v-556018db]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px}.form-error[data-v-556018db]{font-size:13px;color:#dc2626}.add-button[data-v-556018db]{padding:10px 28px;background:#ff6b35;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s}.add-button[data-v-556018db]:hover:not(:disabled){background:#e55a2b}.add-button[data-v-556018db]:disabled{opacity:.5;cursor:not-allowed}.rules-section[data-v-556018db]{display:flex;flex-direction:column;gap:16px}.rules-loading[data-v-556018db],.rules-empty[data-v-556018db]{text-align:center;padding:40px 20px;color:#6b7280;font-size:14px;background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014}.zone-group[data-v-556018db]{display:flex;flex-direction:column;gap:8px}.zone-group-title[data-v-556018db]{font-size:14px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;padding-left:4px}.rules-list[data-v-556018db]{display:flex;flex-direction:column;gap:8px}.rule-card[data-v-556018db]{background:#fff;border-radius:12px;box-shadow:0 1px 6px #0000000f;padding:14px 18px;transition:opacity .2s}.rule-card.disabled[data-v-556018db]{opacity:.5}.rule-top[data-v-556018db]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rule-zone-label[data-v-556018db]{font-size:14px;font-weight:600;color:#16213e}.rule-actions[data-v-556018db]{display:flex;align-items:center;gap:10px}.toggle[data-v-556018db]{position:relative;width:44px;height:24px;background:#d1d5db;border-radius:12px;cursor:pointer;transition:background .2s;flex-shrink:0}.toggle.active[data-v-556018db]{background:#ff6b35}.toggle[data-v-556018db]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.toggle.active[data-v-556018db]:after{transform:translate(20px)}.toggle.small[data-v-556018db]{width:36px;height:20px;border-radius:10px}.toggle.small[data-v-556018db]:after{top:2px;left:2px;width:16px;height:16px}.toggle.small.active[data-v-556018db]:after{transform:translate(16px)}.delete-btn[data-v-556018db]{width:28px;height:28px;border:none;background:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s;padding:0}.delete-btn[data-v-556018db]:hover{background:#fef2f2;color:#dc2626}.rule-bottom[data-v-556018db]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rule-days[data-v-556018db]{display:flex;gap:3px}.day-pill[data-v-556018db]{width:24px;height:24px;border-radius:50%;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;color:#d1d5db;background:#f9fafb}.day-pill.active[data-v-556018db]{background:#ff6b35;color:#fff}.rule-time[data-v-556018db]{font-size:15px;font-weight:600;color:#16213e;font-variant-numeric:tabular-nums}.rule-arrow[data-v-556018db]{font-size:14px;color:#9ca3af}.rule-temp[data-v-556018db]{font-size:15px;font-weight:700;color:#ff6b35}@media(max-width:480px){.day-buttons[data-v-556018db]{gap:6px}.day-btn[data-v-556018db]{width:32px;height:32px;font-size:12px}.temp-controls[data-v-556018db],.rule-bottom[data-v-556018db]{gap:8px}}.settings-view[data-v-e9f53dd3]{display:flex;flex-direction:column;gap:20px}.empty-state[data-v-e9f53dd3]{text-align:center;padding:60px 20px;color:#6b7280;font-size:15px}.settings-card[data-v-e9f53dd3]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:24px}.card-header[data-v-e9f53dd3]{margin-bottom:20px}.card-title[data-v-e9f53dd3]{font-size:18px;font-weight:700;color:#16213e;margin-bottom:4px}.card-subtitle[data-v-e9f53dd3]{font-size:14px;color:#6b7280}.zones-list[data-v-e9f53dd3]{display:flex;flex-direction:column;gap:12px}.zone-row[data-v-e9f53dd3]{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#f9fafb;border-radius:12px}.zone-toggle-section[data-v-e9f53dd3]{display:flex;align-items:center;gap:12px;flex-shrink:0}.toggle[data-v-e9f53dd3]{position:relative;width:44px;height:24px;background:#d1d5db;border-radius:12px;cursor:pointer;transition:background .2s;flex-shrink:0}.toggle.active[data-v-e9f53dd3]{background:#ff6b35}.toggle[data-v-e9f53dd3]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.toggle.active[data-v-e9f53dd3]:after{transform:translate(20px)}.zone-number[data-v-e9f53dd3]{font-size:14px;font-weight:600;color:#16213e;white-space:nowrap}.zone-name-input[data-v-e9f53dd3]{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#16213e;transition:border-color .2s;min-width:0}.zone-name-input[data-v-e9f53dd3]:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.zone-name-input[data-v-e9f53dd3]:disabled{background:#f0f2f5;color:#9ca3af;cursor:not-allowed}.card-footer[data-v-e9f53dd3]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px}.save-status[data-v-e9f53dd3]{font-size:13px;font-weight:500}.save-status.success[data-v-e9f53dd3]{color:#16a34a}.save-status.error[data-v-e9f53dd3]{color:#dc2626}.save-button[data-v-e9f53dd3]{padding:10px 24px;background:#ff6b35;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s}.save-button[data-v-e9f53dd3]:hover:not(:disabled){background:#e55a2b}.save-button[data-v-e9f53dd3]:disabled{opacity:.6;cursor:not-allowed}.dashboard[data-v-aed34a98]{min-height:100vh;background:#f0f2f5;padding-bottom:72px}.top-bar[data-v-aed34a98]{background:#fff;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 4px #0000000f;position:sticky;top:0;z-index:100}.brand[data-v-aed34a98]{font-size:20px;font-weight:700;color:#ff6b35}.user-section[data-v-aed34a98]{display:flex;align-items:center;gap:16px}.user-email[data-v-aed34a98]{font-size:14px;color:#6b7280}.logout-button[data-v-aed34a98]{padding:6px 14px;background:transparent;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;color:#16213e;cursor:pointer;transition:background .15s}.logout-button[data-v-aed34a98]:hover{background:#f0f2f5}.content[data-v-aed34a98]{max-width:960px;margin:0 auto;padding:24px 16px}.loading-state[data-v-aed34a98],.empty-state[data-v-aed34a98]{text-align:center;padding:60px 20px;color:#6b7280;font-size:15px}.error-banner[data-v-aed34a98]{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:12px;font-size:14px;border:1px solid #fecaca;margin-bottom:16px}.devices-list[data-v-aed34a98]{display:flex;flex-direction:column;gap:20px}.bottom-nav[data-v-aed34a98]{position:fixed;bottom:0;left:0;right:0;background:#fff;display:flex;box-shadow:0 -1px 8px #00000014;z-index:100}.nav-tab[data-v-aed34a98]{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 0 8px;border:none;background:none;cursor:pointer;font-family:inherit;color:#9ca3af;transition:color .15s}.nav-tab.active[data-v-aed34a98]{color:#ff6b35}.nav-tab[data-v-aed34a98]:hover:not(.active){color:#6b7280}.nav-icon[data-v-aed34a98]{width:22px;height:22px}.nav-label[data-v-aed34a98]{font-size:11px;font-weight:600;letter-spacing:.2px}@media(max-width:480px){.user-email[data-v-aed34a98]{display:none}.top-bar[data-v-aed34a98]{padding:12px 16px}}
