.humi-card[data-v-83a08c65]{background:radial-gradient(600px 220px at -20% -30%,rgba(59,130,246,.06),transparent 60%),var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.humi-card[data-v-83a08c65]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.chip.dry[data-v-83a08c65]{color:var(--mi-amber)}.chip.comfort[data-v-83a08c65]{color:var(--mi-primary)}.chip.humid[data-v-83a08c65]{color:var(--mi-blue)}.chip.unknown[data-v-83a08c65]{color:#6b7280}.chip.cold[data-v-83a08c65]{color:#0ea5e9}.chip.mild[data-v-83a08c65]{color:var(--mi-primary)}.chip.hot[data-v-83a08c65]{color:#dc2626}.status-box[data-v-83a08c65]{padding:6px 0 8px}.status-line[data-v-83a08c65]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.label[data-v-83a08c65]{color:var(--mi-muted);font-size:14px;font-weight:600}.value.state[data-v-83a08c65]{font-size:18px;font-weight:800;letter-spacing:.2px}.value.idle[data-v-83a08c65]{color:var(--mi-blue)}.value.working[data-v-83a08c65]{color:var(--mi-primary);animation:pulse-83a08c65 1.8s ease-in-out infinite}.value.error[data-v-83a08c65]{color:var(--mi-danger)}@keyframes pulse-83a08c65{0%,to{filter:drop-shadow(0 0 0 rgba(0,199,117,0))}50%{filter:drop-shadow(0 4px 14px rgba(0,199,117,.35))}}.v.dry[data-v-83a08c65]{color:var(--mi-amber)}.v.comfort[data-v-83a08c65]{color:var(--mi-primary)}.v.humid[data-v-83a08c65]{color:var(--mi-blue)}.v.unknown[data-v-83a08c65]{color:#6b7280}.v.cold[data-v-83a08c65]{color:#0ea5e9}.v.mild[data-v-83a08c65]{color:var(--mi-primary)}.v.hot[data-v-83a08c65]{color:#dc2626}.bar[data-v-83a08c65]{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#eef2f7;border:1px solid #e8edf3}.bar .fill[data-v-83a08c65]{height:100%;width:0%;transition:width .5s ease;background:linear-gradient(90deg,var(--mi-primary) 0%,#05d08b 50%,#3b82f6 100%);box-shadow:inset 0 0 0 1px #fff9}.bar.temp[data-v-83a08c65]{background:#eef3ff;border-color:#e2e8ff}.bar.temp .fill[data-v-83a08c65]{background:linear-gradient(90deg,#60a5fa,#34d399 50%,#f97316 90%,#ef4444)}.message.ok[data-v-83a08c65]{color:var(--mi-primary);border-color:#c8f2df;background:#e9fbf3}.message.warn[data-v-83a08c65]{color:#a16207;border-color:#fde68a;background:#fffbeb}.actions[data-v-83a08c65]{display:flex;gap:10px;margin-top:14px}.btn[data-v-83a08c65]{padding:10px 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn[data-v-83a08c65]:active{transform:translateY(1px)}.btn.primary[data-v-83a08c65]{background:var(--mi-primary);color:#fff;border-color:var(--mi-primary);box-shadow:0 6px 22px #00c77552}.btn.primary[data-v-83a08c65]:hover{background:var(--mi-primary-600)}.btn.ghost[data-v-83a08c65]:hover{background:#f8fafc}.btn[data-v-83a08c65]:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}@keyframes pop-83a08c65{0%{transform:translateY(-6px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header[data-v-83a08c65]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eef2f7}.modal-header h3[data-v-83a08c65]{margin:0;font-size:16px}.icon-btn[data-v-83a08c65]{border:0;background:transparent;font-size:20px;line-height:1;cursor:pointer;padding:4px 6px;color:#475569}.icon-btn[data-v-83a08c65]:hover{color:#0f172a}.modal-body[data-v-83a08c65]{padding:12px 16px 16px}.th-card[data-v-2182df36]{background:radial-gradient(600px 220px at 20% -30%,rgba(16,185,129,.08),transparent 60%),var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.th-card[data-v-2182df36]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.chip.unknown[data-v-2182df36]{color:#6b7280}.chip.cold[data-v-2182df36]{color:#0ea5e9}.chip.mild[data-v-2182df36]{color:var(--mi-primary)}.chip.hot[data-v-2182df36]{color:#dc2626}.chip.dry[data-v-2182df36]{color:#f59e0b}.chip.comfort[data-v-2182df36]{color:var(--mi-primary)}.chip.humid[data-v-2182df36]{color:#3b82f6}.chip.low[data-v-2182df36]{color:#0ea5e9}.chip.normalp[data-v-2182df36]{color:var(--mi-primary)}.chip.high[data-v-2182df36]{color:#d97706}.v.cold[data-v-2182df36]{color:#0ea5e9}.v.mild[data-v-2182df36]{color:var(--mi-primary)}.v.hot[data-v-2182df36]{color:#dc2626}.v.dry[data-v-2182df36]{color:#f59e0b}.v.comfort[data-v-2182df36]{color:var(--mi-primary)}.v.humid[data-v-2182df36]{color:#3b82f6}.v.low[data-v-2182df36]{color:#0ea5e9}.v.normalp[data-v-2182df36]{color:var(--mi-primary)}.v.high[data-v-2182df36]{color:#d97706}.bar[data-v-2182df36]{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#eef2f7;border:1px solid #e8edf3}.bar .fill[data-v-2182df36]{height:100%;width:0%;transition:width .5s ease;background:linear-gradient(90deg,var(--mi-primary) 0%,#05d08b 50%,#3b82f6 100%);box-shadow:inset 0 0 0 1px #fff9}.bar.temp[data-v-2182df36]{background:#eef3ff;border-color:#e2e8ff}.bar.temp .fill[data-v-2182df36]{background:linear-gradient(90deg,#60a5fa,#34d399 50%,#f97316 90%,#ef4444)}.purifier-card[data-v-8ce5a247]{background:radial-gradient(640px 220px at 80% -30%,rgba(99,102,241,.08),transparent 60%),var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.purifier-card[data-v-8ce5a247]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.chip.aq-good[data-v-8ce5a247]{color:var(--mi-primary)}.chip.aq-mid[data-v-8ce5a247]{color:#f59e0b}.chip.aq-bad[data-v-8ce5a247]{color:#dc2626}.chip-label[data-v-8ce5a247]{color:#6b7280;font-weight:700}.chip-sep[data-v-8ce5a247]{color:#cbd5e1}.chip-value.pm-good[data-v-8ce5a247]{color:var(--mi-primary)}.chip-value.pm-mid[data-v-8ce5a247]{color:#f59e0b}.chip-value.pm-bad[data-v-8ce5a247]{color:#dc2626}.chip-value.unknown[data-v-8ce5a247]{color:#6b7280}.dot[data-v-8ce5a247]{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:999px;background:currentColor;opacity:.65;animation:dot-pulse-8ce5a247 1s ease-in-out infinite}@keyframes dot-pulse-8ce5a247{0%,to{transform:scale(.8);opacity:.5}50%{transform:scale(1);opacity:1}}.v.aq-good[data-v-8ce5a247]{color:var(--mi-primary)}.v.aq-mid[data-v-8ce5a247]{color:#f59e0b}.v.aq-bad[data-v-8ce5a247]{color:#dc2626}.v.pm-good[data-v-8ce5a247]{color:var(--mi-primary)}.v.pm-mid[data-v-8ce5a247]{color:#f59e0b}.v.pm-bad[data-v-8ce5a247]{color:#dc2626}.message.ok[data-v-8ce5a247]{color:var(--mi-primary);border-color:#c8f2df;background:#e9fbf3}.message.warn[data-v-8ce5a247]{color:#a16207;border-color:#fde68a;background:#fffbeb}.actions[data-v-8ce5a247]{display:flex;gap:10px;margin-top:12px}.btn[data-v-8ce5a247]{padding:10px 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn[data-v-8ce5a247]:active{transform:translateY(1px)}.btn.primary[data-v-8ce5a247]{background:var(--mi-primary);color:#fff;border-color:var(--mi-primary);box-shadow:0 6px 22px #00c77552}.btn.primary[data-v-8ce5a247]:hover{background:var(--mi-primary-600)}.btn.ghost[data-v-8ce5a247]:hover{background:#f8fafc}.dehu-card[data-v-2853ad69]{background:radial-gradient(640px 220px at 20% -30%,rgba(16,185,129,.08),transparent 60%),var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.dehu-card[data-v-2853ad69]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.chip.dry[data-v-2853ad69]{color:var(--mi-amber)}.chip.comfort[data-v-2853ad69]{color:var(--mi-primary)}.chip.humid[data-v-2853ad69]{color:var(--mi-blue)}.chip.unknown[data-v-2853ad69]{color:#6b7280}.chip.cold[data-v-2853ad69]{color:#0ea5e9}.chip.mild[data-v-2853ad69]{color:var(--mi-primary)}.chip.hot[data-v-2853ad69]{color:#dc2626}.dot[data-v-2853ad69]{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:999px;background:currentColor;opacity:.65;animation:dot-pulse-2853ad69 1s ease-in-out infinite}@keyframes dot-pulse-2853ad69{0%,to{transform:scale(.8);opacity:.5}50%{transform:scale(1);opacity:1}}.v.dry[data-v-2853ad69]{color:var(--mi-amber)}.v.comfort[data-v-2853ad69]{color:var(--mi-primary)}.v.humid[data-v-2853ad69]{color:var(--mi-blue)}.v.unknown[data-v-2853ad69]{color:#6b7280}.v.cold[data-v-2853ad69]{color:#0ea5e9}.v.mild[data-v-2853ad69]{color:var(--mi-primary)}.v.hot[data-v-2853ad69]{color:#dc2626}.divider[data-v-2853ad69]{margin:12px 0;height:1px;background:linear-gradient(90deg,transparent,#e9edf3 20%,#e9edf3 80%,transparent)}.mode-row[data-v-2853ad69]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 2px}.mode-btn[data-v-2853ad69]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:16px;border:2px solid #e5e7eb;background:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.mode-btn .mode-icon[data-v-2853ad69]{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;background:#f1f5f9;font-weight:800;color:#475569;font-size:18px}.mode-btn .mode-name[data-v-2853ad69]{font-size:20px;color:#6b7280;font-weight:700}.mode-btn.active[data-v-2853ad69]{border-color:var(--mi-primary);background:linear-gradient(180deg,#e9fbf3,#fff);box-shadow:0 10px 24px #00c77547;transform:translateY(-1px) scale(1.02)}.mode-btn.active .mode-icon[data-v-2853ad69]{background:#dff7ec;color:var(--mi-primary)}.mode-btn.active .mode-name[data-v-2853ad69]{color:#059669}.target-wrap[data-v-2853ad69]{margin-top:8px}.target-head[data-v-2853ad69]{display:flex;align-items:baseline;justify-content:space-between}.target-val[data-v-2853ad69]{font-weight:800;color:var(--mi-primary);display:inline-flex;align-items:center;gap:6px}.slider-row[data-v-2853ad69]{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;gap:8px;margin-top:8px}.slider-row input[type=range][data-v-2853ad69]{width:100%;appearance:none;height:16px;border-radius:999px;background:#eef2f7;border:1px solid #e5e7eb;outline:none;padding:0;margin:0}.slider-row input[type=range][data-v-2853ad69]::-webkit-slider-thumb{appearance:none;width:28px;height:28px;border-radius:999px;background:#fff;border:3px solid #e5e7eb;box-shadow:0 2px 6px #00000014}.slider-row input[type=range][data-v-2853ad69]::-moz-range-thumb{width:28px;height:28px;border:none;border-radius:999px;background:#fff;box-shadow:0 2px 6px #00000014}.min[data-v-2853ad69],.max[data-v-2853ad69]{font-size:12px;color:#9ca3af}.actions[data-v-2853ad69]{display:flex;gap:10px;margin-top:12px}.btn[data-v-2853ad69]{padding:10px 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn[data-v-2853ad69]:active{transform:translateY(1px)}.btn.primary[data-v-2853ad69]{background:var(--mi-primary);color:#fff;border-color:var(--mi-primary);box-shadow:0 6px 22px #00c77552}.btn.primary[data-v-2853ad69]:hover{background:var(--mi-primary-600)}.btn.ghost[data-v-2853ad69]:hover{background:#f8fafc}.btn[data-v-2853ad69]:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.card[data-v-4b2c9106]{background:var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.card[data-v-4b2c9106]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.fan-card[data-v-4b2c9106]{background:radial-gradient(640px 220px at 20% -30%,rgba(14,165,233,.08),transparent 60%),var(--mi-card)}.chip.dry[data-v-4b2c9106]{color:var(--mi-amber)}.chip.comfort[data-v-4b2c9106]{color:var(--mi-primary)}.chip.humid[data-v-4b2c9106]{color:var(--mi-blue)}.chip.unknown[data-v-4b2c9106]{color:#6b7280}.chip.cold[data-v-4b2c9106]{color:#0ea5e9}.chip.mild[data-v-4b2c9106]{color:var(--mi-primary)}.chip.hot[data-v-4b2c9106]{color:#dc2626}.dot[data-v-4b2c9106]{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:999px;background:currentColor;opacity:.65;animation:dot-pulse-4b2c9106 1s ease-in-out infinite}@keyframes dot-pulse-4b2c9106{0%,to{transform:scale(.8);opacity:.5}50%{transform:scale(1);opacity:1}}.v.dry[data-v-4b2c9106]{color:var(--mi-amber)}.v.comfort[data-v-4b2c9106]{color:var(--mi-primary)}.v.humid[data-v-4b2c9106]{color:var(--mi-blue)}.v.unknown[data-v-4b2c9106]{color:#6b7280}.v.cold[data-v-4b2c9106]{color:#0ea5e9}.v.mild[data-v-4b2c9106]{color:var(--mi-primary)}.v.hot[data-v-4b2c9106]{color:#dc2626}.divider[data-v-4b2c9106]{margin:12px 0;height:1px;background:linear-gradient(90deg,transparent,#e9edf3 20%,#e9edf3 80%,transparent)}.mode-row[data-v-4b2c9106]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 2px}.mode-btn[data-v-4b2c9106]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:16px;border:2px solid #e5e7eb;background:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.mode-btn .mode-icon[data-v-4b2c9106]{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;background:#f1f5f9;font-weight:800;color:#475569;font-size:18px}.mode-btn .mode-name[data-v-4b2c9106]{font-size:13px;color:#6b7280;font-weight:700}.mode-btn.active[data-v-4b2c9106]{border-color:var(--mi-primary);background:linear-gradient(180deg,#e9fbf3,#fff);box-shadow:0 10px 24px #00c77547;transform:translateY(-1px) scale(1.02)}.mode-btn.active .mode-icon[data-v-4b2c9106]{background:#dff7ec;color:var(--mi-primary)}.mode-btn.active .mode-name[data-v-4b2c9106]{color:#059669}.mode-btn.disabled[data-v-4b2c9106]{opacity:.45;cursor:not-allowed}.level-wrap[data-v-4b2c9106]{margin:12px 0 4px}.level-head[data-v-4b2c9106]{display:flex;justify-content:space-between}.level-wrap input[type=range][data-v-4b2c9106]{width:100%;appearance:none;height:16px;border-radius:999px;background:#eef2f7;border:1px solid #e5e7eb}.level-wrap input[type=range][data-v-4b2c9106]::-webkit-slider-thumb{appearance:none;width:26px;height:26px;border-radius:999px;background:#fff;border:3px solid #e5e7eb;box-shadow:0 2px 6px #00000014}.level-wrap input.pending[data-v-4b2c9106]{filter:saturate(1.1)}.toggle-row[data-v-4b2c9106]{display:flex;justify-content:space-between;align-items:center;margin:10px 0}.toggle-icon[data-v-4b2c9106]{width:28px;height:28px;margin-right:10px;color:var(--mi-primary)}.toggle-row label[data-v-4b2c9106]{display:flex;align-items:center;font-weight:700;font-size:14px;color:var(--mi-text)}.toggle-row input[type=checkbox][data-v-4b2c9106]{width:42px;height:22px;appearance:none;background:#e5e7eb;border-radius:999px;position:relative;cursor:pointer;transition:.2s}.toggle-row input[type=checkbox][data-v-4b2c9106]:before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.2s}.toggle-row input[type=checkbox][data-v-4b2c9106]:checked{background:var(--mi-primary)}.toggle-row input[type=checkbox][data-v-4b2c9106]:checked:before{transform:translate(20px)}.angle-row[data-v-4b2c9106]{display:flex;justify-content:space-between;align-items:center;margin:6px 0 0}.angle-row select[data-v-4b2c9106]{padding:4px 6px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-weight:600}.angle-row select[data-v-4b2c9106]:disabled{opacity:.6}.actions[data-v-4b2c9106]{display:flex;gap:10px;margin-top:12px}.btn[data-v-4b2c9106]{padding:10px 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn[data-v-4b2c9106]:active{transform:translateY(1px)}.btn.primary[data-v-4b2c9106]{background:var(--mi-primary);color:#fff;border-color:var(--mi-primary);box-shadow:0 6px 22px #00c77552}.btn.primary[data-v-4b2c9106]:hover{background:var(--mi-primary-600)}.btn.ghost[data-v-4b2c9106]:hover{background:#f8fafc}.m1s-card[data-v-82ce9a97]{background:radial-gradient(620px 240px at 20% -30%,rgba(59,130,246,.08),transparent 60%),var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:12px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.m1s-card[data-v-82ce9a97]:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}@keyframes pop-82ce9a97{0%{transform:translateY(-6px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media (min-width: 1200px){.modal-mask[data-v-82ce9a97]{padding-right:calc(var(--chat-rail-width, 420px) + 20px);padding-bottom:96px}}.wheel-wrap[data-v-82ce9a97]{display:grid;place-items:center;padding:6px 0 10px}.color-wheel[data-v-82ce9a97]{position:relative;width:min(68vw,360px);height:min(68vw,360px);border-radius:999px;background:conic-gradient(from 90deg,red,#ff0,#00e600,#0ff,#33f,#ff1aff,red);filter:saturate(1.05);box-shadow:inset 0 0 0 10px #fff,0 10px 26px #02061726;border:1px solid #e8ecf3;touch-action:none}.color-wheel.disabled[data-v-82ce9a97]{filter:grayscale(.8) brightness(.97)}.wheel-mask[data-v-82ce9a97]{position:absolute;inset:0;display:grid;place-items:center;background:#ffffff8c;border-radius:inherit;font-weight:700;color:#6b7280;pointer-events:none;z-index:2}.bulb-btn[data-v-82ce9a97]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:84px;height:84px;border-radius:999px;border:0;cursor:pointer;display:grid;place-items:center;background:#fff;color:#94a3b8;box-shadow:0 6px 22px #0206171f,inset 0 0 0 1px #e8ecf3;transition:transform .1s ease,box-shadow .2s ease,color .2s ease,background .2s ease;z-index:3}.bulb-btn svg[data-v-82ce9a97]{width:30px;height:30px}.bulb-btn.on[data-v-82ce9a97]{background:var(--mi-primary);color:#fff;box-shadow:0 12px 38px #00c77559}.bulb-btn[data-v-82ce9a97]:active{transform:translate(-50%,-50%) scale(.98)}.picker[data-v-82ce9a97]{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:999px;background:#fff;border:2.5px solid rgba(0,0,0,.15);box-shadow:0 2px 6px #02061740;transform:translate(-50%,-50%)}.brightness[data-v-82ce9a97]{margin-top:12px}.b-head[data-v-82ce9a97]{display:flex;align-items:baseline;justify-content:space-between}.k[data-v-82ce9a97]{font-size:13px;color:var(--mi-muted);font-weight:600;letter-spacing:.2px}.val[data-v-82ce9a97]{font-weight:800;color:var(--mi-primary)}.slider-row[data-v-82ce9a97]{display:grid;grid-template-columns:24px 1fr 32px;align-items:center;gap:10px;margin-top:8px}.slider-row input[type=range][data-v-82ce9a97]{width:100%;appearance:none;height:16px;border-radius:999px;background:#eef2f7;border:1px solid #e5e7eb;outline:none;padding:0;margin:0}.slider-row input[type=range][data-v-82ce9a97]::-webkit-slider-thumb{appearance:none;width:28px;height:28px;border-radius:999px;background:#fff;border:3px solid #e5e7eb;box-shadow:0 2px 6px #00000014}.slider-row input[type=range][data-v-82ce9a97]::-moz-range-thumb{width:28px;height:28px;border:none;border-radius:999px;background:#fff;box-shadow:0 2px 6px #00000014}.min[data-v-82ce9a97],.max[data-v-82ce9a97]{font-size:12px;color:#9ca3af}.message[data-v-82ce9a97]{margin-top:10px;font-size:13px;padding:8px 10px;border-radius:12px;border:1px solid transparent;background:#e9fbf3;color:var(--mi-primary)}.chat-container[data-v-a65f721a]{display:flex;flex-direction:column;height:90%;background:#fff;border-radius:16px;overflow:hidden}.chat-header[data-v-a65f721a]{padding:16px 20px;background:linear-gradient(135deg,#00c775,#00b169);color:#fff;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.chat-header h1[data-v-a65f721a]{margin:0;font-size:24px;font-weight:600}.connection-status[data-v-a65f721a]{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.9}.status-dot[data-v-a65f721a]{width:8px;height:8px;border-radius:50%;background:#dc2626;animation:pulse-a65f721a 2s infinite}.connection-status.connected .status-dot[data-v-a65f721a]{background:#16a34a}.connection-status.error .status-dot[data-v-a65f721a]{background:#f59e0b}.status-text[data-v-a65f721a]{font-size:16px;font-weight:600}@keyframes pulse-a65f721a{0%,to{opacity:1}50%{opacity:.5}}.chat-messages[data-v-a65f721a]{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:4px;scroll-behavior:smooth}.message[data-v-a65f721a]{display:flex;max-width:95%}.message-left[data-v-a65f721a]{align-self:flex-start}.message-right[data-v-a65f721a]{align-self:flex-end}.message-bubble[data-v-a65f721a]{padding:10px 14px;border-radius:18px;font-size:18px;line-height:1.2;word-wrap:break-word;box-shadow:0 1px 2px #0000001a}.message-left .message-bubble[data-v-a65f721a]{background:#f1f3f5;color:#333;border-bottom-left-radius:4px}.message-right .message-bubble[data-v-a65f721a]{background:#00c775;color:#fff;border-bottom-right-radius:4px}.message-bubble.typing[data-v-a65f721a]{background:#f1f3f5;color:#666;padding:16px 20px}.typing-indicator[data-v-a65f721a]{display:flex;gap:4px;align-items:center}.typing-indicator span[data-v-a65f721a]{width:6px;height:6px;background:#999;border-radius:50%;animation:typing-a65f721a 1.4s infinite}.typing-indicator span[data-v-a65f721a]:nth-child(2){animation-delay:.2s}.typing-indicator span[data-v-a65f721a]:nth-child(3){animation-delay:.4s}@keyframes typing-a65f721a{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.chat-input[data-v-a65f721a]{padding:16px;border-top:1px solid #e5e7eb;background:#fafafa}.input-container[data-v-a65f721a]{display:flex;gap:8px;align-items:center}.message-input[data-v-a65f721a]{flex:1;padding:10px 14px;border:1px solid #d1d5db;border-radius:20px;font-size:18px;outline:none;transition:border-color .2s ease}.message-input[data-v-a65f721a]:focus{border-color:#00c775}.message-input[data-v-a65f721a]:disabled{background:#f9fafb;color:#9ca3af}.send-button[data-v-a65f721a]{width:40px;height:40px;border:none;border-radius:50%;background:#00c775;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.send-button[data-v-a65f721a]:hover:not(:disabled){background:#00b169;transform:scale(1.05)}.send-button[data-v-a65f721a]:disabled{background:#d1d5db;cursor:not-allowed;transform:none}.send-icon[data-v-a65f721a]{width:18px;height:18px}.loading-spinner[data-v-a65f721a]{width:18px;height:18px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin-a65f721a 1s linear infinite}@keyframes spin-a65f721a{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message[data-v-a65f721a]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:8px}.error-icon[data-v-a65f721a]{font-size:14px}.chat-messages[data-v-a65f721a]::-webkit-scrollbar{width:6px}.chat-messages[data-v-a65f721a]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chat-messages[data-v-a65f721a]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chat-messages[data-v-a65f721a]::-webkit-scrollbar-thumb:hover{background:#a8a8a8}:root{color-scheme:light;--mi-primary: #00c775;--mi-primary-600: #00b169;--mi-primary-50: #e9fbf3;--mi-blue: #3b82f6;--mi-amber: #f59e0b;--mi-danger: #ef4444;--mi-success: #16a34a;--mi-bg: #f4f6f9;--mi-card: #ffffff;--mi-border: #e7ecf2;--mi-text: #0f172a;--mi-muted: #64748b;--mi-radius: 16px;--mi-shadow-sm: 0 4px 14px rgba(2, 6, 23, .06);--mi-shadow-lg: 0 12px 36px rgba(2, 6, 23, .08);--chat-rail-width: 397px;--chat-rail-gap: 20px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:radial-gradient(1200px 500px at 80% -10%,rgba(0,199,117,.06),transparent 60%),radial-gradient(1200px 600px at -10% 10%,rgba(59,130,246,.06),transparent 60%),var(--mi-bg);color:var(--mi-text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji";padding-bottom:96px;font-size:16px;line-height:1.6}.page{margin:0 auto;padding:24px 18px 48px;display:grid;grid-template-columns:1fr;gap:var(--chat-rail-gap);max-width:min(1440px,100%)}@media (min-width: 1200px){.page{grid-template-columns:1fr var(--chat-rail-width);align-items:start}}.container{width:100%}.layout{display:grid;grid-template-columns:1fr 400px;gap:24px;min-height:calc(100vh - 96px)}.dashboard-column,.chat-column{display:flex;flex-direction:column}.header{margin-bottom:18px;padding:18px;background:linear-gradient(180deg,#fff,#fff8);border:1px solid var(--mi-border);border-radius:calc(var(--mi-radius) + 4px);box-shadow:var(--mi-shadow-sm);-webkit-backdrop-filter:saturate(1.1) blur(6px);backdrop-filter:saturate(1.1) blur(6px);flex-shrink:0}.brand{display:flex;align-items:center;gap:10px}.logo-dot{width:14px;height:14px;border-radius:50%;background:conic-gradient(from 0deg,var(--mi-primary),#05d08b 40%,#3b82f6 85%,var(--mi-primary));box-shadow:0 0 0 4px var(--mi-primary-50)}.header h1{margin:0;font-size:26px;letter-spacing:.2px}.header .sub{color:var(--mi-muted);font-size:14px;margin-top:4px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;flex:1}.chat-rail{display:none}@media (min-width: 1200px){.chat-rail{display:block;position:sticky;top:24px;height:calc(100vh - 48px)}}.chat-sticky{width:100%;min-height:320px}#coze-chat-container{margin-top:0}.card{background:var(--mi-card);border:1px solid var(--mi-border);border-radius:var(--mi-radius);padding:16px;box-shadow:var(--mi-shadow-sm);transition:box-shadow .25s ease,transform .15s ease,border-color .25s ease}.card:hover{transform:translateY(-1px);box-shadow:var(--mi-shadow-lg);border-color:#e2e8f0}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tag{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid transparent}.env-card{background:radial-gradient(800px 260px at 60% -30%,rgba(0,199,117,.06),transparent 60%),var(--mi-card);grid-column:1 / -1;padding:22px 22px 20px}.env-card .title h2{font-size:22px}.kv-wrap.env{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.env-large .v.v-lg{font-size:30px;font-weight:900}.bar.bar-lg{height:12px;border-radius:12px}.k{font-size:25px;color:var(--mi-muted);font-weight:600;letter-spacing:.2px}.v{font-size:26px;font-weight:800;line-height:1}.v.dry{color:var(--mi-amber)}.v.comfort{color:var(--mi-primary)}.v.humid{color:var(--mi-blue)}.v.cold{color:#0ea5e9}.v.mild{color:var(--mi-primary)}.v.hot{color:#dc2626}.v.dark{color:#1f2937}.v.dim{color:#6b7280}.v.normal{color:var(--mi-blue)}.v.bright{color:#d97706}.v.low{color:#0ea5e9}.v.normalp{color:var(--mi-primary)}.v.high{color:#d97706}.v.aq-good{color:var(--mi-primary)}.v.aq-mid{color:#f59e0b}.v.aq-bad{color:#dc2626}.v.pm-good{color:var(--mi-primary)}.v.pm-mid{color:#f59e0b}.v.pm-bad{color:#dc2626}.bar{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#eef2f7;border:1px solid #e8edf3}.bar .fill{height:100%;width:0%;transition:width .5s ease;background:linear-gradient(90deg,var(--mi-primary) 0%,#05d08b 50%,#3b82f6 100%);box-shadow:inset 0 0 0 1px #fff9}.bar.temp{background:#eef3ff;border-color:#e2e8ff}.bar.temp .fill{background:linear-gradient(90deg,#60a5fa,#34d399 50%,#f97316 90%,#ef4444)}.bar.illu.dark{background:#e8ebef}.bar.illu.dim{background:#e9edf3}.bar.illu.normal{background:#e7efff}.bar.illu.bright{background:#fff3e0;border-color:#ffe5b4}.env-foot{margin-top:10px}.muted{color:var(--mi-muted);font-size:12px}.icon{width:18px;height:18px;color:#0f172a;opacity:.7}.title{display:flex;align-items:center;gap:8px}.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.title{display:flex;align-items:center;gap:6px}.icon{width:40px;height:40px;color:#0f172a;opacity:.7}h2{font-size:20px;margin:0}.tag{font-size:11px;padding:3px 8px;border-radius:999px;border:1px solid transparent}.tag.success{color:var(--mi-success);background:#e8f7ee;border-color:#ccebd8}.tag.danger{color:var(--mi-danger);background:#feecec;border-color:#ffd6d6}.summary{display:flex;flex-wrap:wrap;gap:10px;padding:2px 0}.chip{font-size:14px;font-weight:700;padding:4px 8px;border-radius:999px;background:#f8fafc;border:1px solid #e5e7eb;display:inline-flex;align-items:center;gap:6px}.chip.on{color:var(--mi-primary)}.chip.off{color:#64748b}.chip.error{color:#dc2626}.kv-wrap{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.kv{display:flex;flex-direction:column;gap:6px}.k{font-size:20px;color:var(--mi-muted);font-weight:600;letter-spacing:.2px}.v{font-size:30px;font-weight:800;line-height:1;display:inline-flex;align-items:center;gap:6px}.v.unknown{color:#6b7280}.v.on{color:var(--mi-primary)}.v.off{color:#64748b}.v.error{color:#dc2626}.message{margin-top:10px;font-size:20px;padding:8px 10px;border-radius:12px;border:1px solid transparent;background:#e9fbf3;color:var(--mi-primary)}.modal-mask{position:fixed;inset:0;background:#02061759;display:grid;place-items:center;z-index:1101}.modal{width:min(560px,94vw);background:var(--mi-card);border:1px solid var(--mi-border);border-radius:16px;box-shadow:0 24px 64px #02061740;animation:pop .16s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eef2f7}.modal-header h3{margin:0;font-size:16px}.icon-btn{border:0;background:transparent;font-size:20px;line-height:1;cursor:pointer;padding:4px 6px;color:#475569}.icon-btn:hover{color:#0f172a}.modal-body{padding:12px 16px 16px}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}@keyframes pop{0%{transform:translateY(-6px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media (min-width: 1200px){.modal-mask{padding-right:calc(var(--chat-rail-width, 420px) + 20px);padding-bottom:96px}}.fade-enter-from,.fade-leave-to{opacity:0}
