:root{--color-bg:#fbf6ef;--color-surface:#fff;--color-border:#e8dbc3;--color-text:#2a2118;--color-text-2:#7a6c58;--color-primary:#d97a2e;--color-success:#2f7d5a;--color-warning:#b98900;--color-danger:#c24b4b;--tint-base:#fff;--nav-active-bg:#a6551a;--nav-active-text:#fff;--color-surface-2:color-mix(in srgb, var(--color-surface) 85%, var(--color-border));--color-text-3:color-mix(in srgb, var(--color-text-2) 65%, var(--tint-base));--color-primary-tint:color-mix(in srgb, var(--color-primary) 18%, var(--tint-base));--color-success-tint:color-mix(in srgb, var(--color-success) 18%, var(--tint-base));--color-warning-tint:color-mix(in srgb, var(--color-warning) 18%, var(--tint-base));--color-danger-tint:color-mix(in srgb, var(--color-danger) 18%, var(--tint-base))}body{background:var(--color-bg);color:var(--color-text);margin:0}.status-dot{border-radius:50%;width:.6rem;height:.6rem;margin-right:.35rem;display:inline-block}.status-dot.live{background:var(--color-success)}.status-dot.stale{background:var(--color-warning)}.status-dot.none{background:var(--color-text-3)}.badge{border-radius:999px;padding:.15rem .5rem;font-size:.8rem;display:inline-block}.badge.device{background:var(--color-primary-tint);color:var(--color-primary)}.badge.manual{color:#4527a0;background:#ede7f6}.badge.computed{color:#00695c;background:#e0f2f1}.badge.derived{color:#2e7d32;background:#e8f5e9}.badge.virtual{color:#e65100;background:#fff3e0}.chart-panel[data-v-c7a142c2]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;flex-direction:column;flex:1 1 0;min-width:0;min-height:0;margin:.5rem 0;padding:.6rem .75rem;display:flex}.chart-panel.fullscreen[data-v-c7a142c2]{background:var(--color-surface);padding:1rem}.chart-body[data-v-c7a142c2]{flex:auto;grid-template-columns:280px minmax(0,1fr);gap:1rem;min-width:0;min-height:0;display:grid}.chart-sidebar[data-v-c7a142c2]{flex-direction:column;gap:.4rem;min-height:0;display:flex;overflow:hidden auto}.chart-canvas-wrapper[data-v-c7a142c2]{min-width:0;min-height:240px;position:relative}canvas.loading[data-v-c7a142c2]{filter:blur(1.5px)}canvas[data-v-c7a142c2]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.loading-chip[data-v-c7a142c2]{background:var(--nav-active-bg);color:var(--nav-active-text);pointer-events:none;border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;display:flex;position:absolute;top:.5rem;right:.5rem}.spinner[data-v-c7a142c2]{border:2px solid color-mix(in srgb, var(--nav-active-text) 40%, transparent);border-top-color:var(--nav-active-text);border-radius:50%;width:.8rem;height:.8rem;animation:.7s linear infinite spin-c7a142c2}@keyframes spin-c7a142c2{to{transform:rotate(360deg)}}.chart-panel.fullscreen .chart-canvas-wrapper[data-v-c7a142c2]{height:auto}.chart-topbar button svg[data-v-c7a142c2],.mobile-controls-toggle[data-v-c7a142c2]{display:none}.chart-topbar[data-v-c7a142c2]{flex-wrap:wrap;flex:none;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.chart-panel.fullscreen .chart-topbar[data-v-c7a142c2]{display:none}.chart-topbar h3[data-v-c7a142c2]{flex-grow:1;margin:0;font-size:.95rem}.chart-topbar button.active[data-v-c7a142c2]{background:var(--nav-active-bg);color:var(--nav-active-text)}.range-controls[data-v-c7a142c2]{flex-direction:column;gap:.3rem;display:flex}.inline-label[data-v-c7a142c2]{align-items:center;gap:.35rem;font-size:.85rem;display:flex}.relative-mode-toggle[data-v-c7a142c2]{cursor:pointer}.hint-inline[data-v-c7a142c2]{color:var(--color-text-3);margin:0 0 .5rem;font-size:.85rem;font-style:italic}.status-line[data-v-c7a142c2]{align-items:center;gap:.35rem;font-style:normal;display:flex}.status-line strong[data-v-c7a142c2]{color:var(--color-text-2)}.status-dot[data-v-c7a142c2]{background:var(--color-text-3);border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem}.status-dot.live[data-v-c7a142c2]{background:var(--color-success)}.icon-button[data-v-c7a142c2]{justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;display:inline-flex}.sr-only[data-v-c7a142c2]{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.error[data-v-c7a142c2],button.danger[data-v-c7a142c2]{color:var(--color-danger)}.zoom-mode-controls[data-v-c7a142c2],.cursor-controls[data-v-c7a142c2]{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.day-nav[data-v-c7a142c2]{gap:.5rem;display:flex}.zoom-mode-controls button.active[data-v-c7a142c2],.cursor-controls button.active[data-v-c7a142c2]{background:var(--nav-active-bg);color:var(--nav-active-text)}.cursor-ts[data-v-c7a142c2]{background:var(--color-surface-2);border-radius:4px;align-items:center;gap:.25rem;padding:.15rem .5rem;display:inline-flex}.cursor-ts.cursor-1[data-v-c7a142c2]{border-left:3px solid var(--color-success)}.cursor-ts.cursor-2[data-v-c7a142c2]{border-left:3px solid var(--color-danger)}.cursor-ts.focused[data-v-c7a142c2]{outline:2px solid var(--color-primary);outline-offset:1px}.link-button[data-v-c7a142c2]{cursor:pointer;color:var(--color-danger);background:0 0;border:none;padding:0 .2rem;font-weight:700}.cursor-table-wrapper[data-v-c7a142c2]{flex-shrink:0;margin-top:.75rem;overflow-x:auto}.cursor-table[data-v-c7a142c2]{border-collapse:collapse;width:100%;font-size:.85rem}.cursor-table th[data-v-c7a142c2],.cursor-table td[data-v-c7a142c2]{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.3rem .5rem}.cursor-table .sticky-col[data-v-c7a142c2]{background:var(--color-surface-2);white-space:normal;position:sticky;left:0}.swatch[data-v-c7a142c2]{border-radius:2px;width:.7rem;height:.7rem;display:inline-block}@media (width<=700px){.chart-body[data-v-c7a142c2]{flex-direction:column;display:flex;position:relative}.chart-sidebar[data-v-c7a142c2]{display:none}.chart-sidebar.mobile-drawer-open[data-v-c7a142c2]{z-index:5;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:.6rem;display:flex;position:absolute;inset:.25rem;box-shadow:0 6px 20px #0000004d}.chart-canvas-wrapper[data-v-c7a142c2]{flex:auto;min-height:0}.chart-topbar[data-v-c7a142c2]{flex-wrap:nowrap}.chart-topbar h3[data-v-c7a142c2]{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.chart-topbar button .btn-label[data-v-c7a142c2]{display:none}.chart-topbar button svg[data-v-c7a142c2]{display:inline}.chart-topbar button[data-v-c7a142c2]{flex:none;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;padding:0;display:inline-flex}.mobile-controls-toggle[data-v-c7a142c2]{display:inline-flex}}.login-page[data-v-cfb4af56]{justify-content:center;align-items:center;min-height:100vh;font-family:system-ui,sans-serif;display:flex}.login-box[data-v-cfb4af56]{border:1px solid var(--color-border);border-radius:8px;gap:.75rem;width:100%;max-width:340px;padding:2rem;display:grid}.login-box h1[data-v-cfb4af56]{margin:0 0 .25rem;font-size:1.3rem}.hint[data-v-cfb4af56]{color:var(--color-text-2);margin:0 0 .5rem}label[data-v-cfb4af56]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input[data-v-cfb4af56]{padding:.5rem;font-size:1rem}button[data-v-cfb4af56]{padding:.6rem;font-size:1rem}.error[data-v-cfb4af56]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;margin:0;padding:.5rem}.unit-panel[data-v-cfcb3d16]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;padding:1rem}.unit-header[data-v-cfcb3d16]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.unit-header h2[data-v-cfcb3d16]{margin:0;font-size:1.1rem}.unit-actions[data-v-cfcb3d16]{white-space:nowrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.value-grid[data-v-cfcb3d16]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem 1rem;display:grid}.value-cell[data-v-cfcb3d16]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:.15rem;padding:.4rem .6rem;display:flex}.value-label[data-v-cfcb3d16]{color:var(--color-text-2);font-size:.8rem}.value-line[data-v-cfcb3d16]{font-size:1rem}.hint-inline[data-v-cfcb3d16]{color:var(--color-text-3);font-style:italic}.unit-charts[data-v-cfcb3d16]{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.unit-canvas[data-v-fc92ac3a]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;padding:1rem}.unit-header[data-v-fc92ac3a]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.unit-header h2[data-v-fc92ac3a]{margin:0;font-size:1.1rem}.unit-actions[data-v-fc92ac3a]{white-space:nowrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.canvas-wrap[data-v-fc92ac3a]{isolation:isolate;width:100%;margin:0 auto;position:relative}.canvas-image[data-v-fc92ac3a]{object-fit:cover;border-radius:4px;width:100%;height:100%;position:absolute;inset:0}.canvas-element[data-v-fc92ac3a]{position:absolute;transform:translate(-50%,-50%)}.canvas-element.value[data-v-fc92ac3a]{border:1px solid var(--color-border);white-space:nowrap;background:#ffffffe6;border-radius:4px;flex-direction:column;gap:.1rem;padding:.2rem .45rem;font-size:.85rem;display:flex}.canvas-label-text[data-v-fc92ac3a]{white-space:nowrap;background:#ffffffd9;border-radius:3px;padding:.1rem .35rem;font-size:.85rem}.canvas-button[data-v-fc92ac3a]{white-space:nowrap}.value-grid[data-v-fc92ac3a]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem 1rem;display:grid}.value-cell[data-v-fc92ac3a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:.15rem;padding:.4rem .6rem;display:flex}.value-label[data-v-fc92ac3a]{color:var(--color-text-2);font-size:.8rem}.value-line[data-v-fc92ac3a]{font-size:1rem}.hint-inline[data-v-fc92ac3a]{color:var(--color-text-3);font-style:italic}.unit-charts[data-v-fc92ac3a]{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.units-toolbar[data-v-7ccdfd08]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.new-unit-button[data-v-7ccdfd08]{white-space:nowrap;flex:none}.hint[data-v-7ccdfd08]{color:var(--color-text-2)}.error[data-v-7ccdfd08]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.units-list[data-v-7ccdfd08]{flex-direction:column;gap:1rem;display:flex}.unit-row[data-v-7ccdfd08]{align-items:stretch;gap:.5rem;display:flex}.unit-order-buttons[data-v-7ccdfd08]{flex-direction:column;flex:none;gap:.25rem;display:flex}.unit-order-buttons button[data-v-7ccdfd08]{width:1.75rem;height:1.75rem;padding:0}.unit-panel[data-v-7ccdfd08]{flex:auto;min-width:0}button.danger[data-v-7ccdfd08]{color:var(--color-danger)}.searchable-select[data-v-3b2a2fbf]{flex-direction:column;gap:.35rem;display:flex}.searchable-select-checkboxes[data-v-3b2a2fbf]{border:1px solid var(--color-border);border-radius:4px;max-height:12rem;padding:.4rem .6rem;overflow-y:auto}.searchable-select-checkbox[data-v-3b2a2fbf]{font-weight:400;display:block}.combobox[data-v-3b2a2fbf]{position:relative}.combobox-input[data-v-3b2a2fbf]{box-sizing:border-box;width:100%}.combobox-dropdown[data-v-3b2a2fbf]{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;max-height:14rem;margin:.15rem 0 0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 2px 8px #00000026}.combobox-option[data-v-3b2a2fbf]{cursor:pointer;padding:.35rem .6rem}.combobox-option[data-v-3b2a2fbf]:hover,.combobox-option.highlighted[data-v-3b2a2fbf]{background:var(--color-primary-tint)}.hint[data-v-3b2a2fbf]{color:var(--color-text-3);margin:0;padding:.35rem .6rem;font-style:italic}.modal-backdrop[data-v-4dd0c307]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-4dd0c307]{background:var(--color-surface);border-radius:8px;width:90%;max-width:640px;max-height:85vh;padding:1.5rem;overflow-y:auto}form[data-v-4dd0c307]{gap:.75rem;display:grid}label[data-v-4dd0c307]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input[data-v-4dd0c307],select[data-v-4dd0c307]{padding:.4rem;font-size:1rem}.tag-search[data-v-4dd0c307]{box-sizing:border-box;width:100%;margin-bottom:.35rem}.tag-picker[data-v-4dd0c307]{gap:1rem;display:flex}.tag-column[data-v-4dd0c307]{flex:1;min-width:0}.tag-column h3[data-v-4dd0c307]{color:var(--color-text-2);margin:0 0 .35rem;font-size:.85rem}.tag-column ul[data-v-4dd0c307]{border:1px solid var(--color-border);border-radius:4px;max-height:260px;margin:0;padding:0;list-style:none;overflow-y:auto}.tag-column li[data-v-4dd0c307]{border-bottom:1px solid var(--color-border)}.tag-column li[data-v-4dd0c307]:last-child{border-bottom:none}.tag-column button[data-v-4dd0c307]{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:.35rem .5rem}.tag-column button[data-v-4dd0c307]:hover{background:var(--color-surface-2)}.selected-item[data-v-4dd0c307]{justify-content:space-between;align-items:center;padding:.35rem .5rem;font-size:.9rem;display:flex}.selected-buttons[data-v-4dd0c307]{gap:.15rem;display:flex}.selected-buttons button[data-v-4dd0c307]{width:1.5rem;height:1.5rem;padding:0;font-size:.85rem}.hint-inline[data-v-4dd0c307]{color:var(--color-text-3);padding:.35rem .5rem;font-style:italic}button.danger[data-v-4dd0c307]{color:var(--color-danger)}.form-actions[data-v-4dd0c307]{gap:.5rem;display:flex}.image-manager[data-v-4dd0c307]{border:1px solid var(--color-border);border-radius:4px;gap:.6rem;padding:.75rem;display:grid}.image-manager h3[data-v-4dd0c307]{margin:0;font-size:.95rem}.upload-label[data-v-4dd0c307]{font-size:.85rem}.image-card[data-v-4dd0c307]{border:1px solid var(--color-border);border-radius:4px;gap:.5rem;padding:.5rem;display:grid}.image-card-row[data-v-4dd0c307]{align-items:flex-start;gap:.75rem;display:flex}.image-thumb[data-v-4dd0c307]{object-fit:cover;border:1px solid var(--color-border);border-radius:4px;flex:none;width:90px;height:90px}.image-card-fields[data-v-4dd0c307]{flex:auto;gap:.35rem;min-width:0;display:grid}.threshold-row[data-v-4dd0c307]{gap:.35rem;display:flex}.image-card-buttons[data-v-4dd0c307]{flex-direction:column;flex:none;gap:.25rem;display:flex}.image-card-buttons button.active[data-v-4dd0c307]{background:var(--color-primary-tint)}.position-editor[data-v-4dd0c307]{border-top:1px dashed var(--color-border);gap:.5rem;padding-top:.5rem;display:grid}.position-editor-toolbar[data-v-4dd0c307]{flex-wrap:wrap;gap:.5rem;display:flex}.position-editor-body[data-v-4dd0c307]{flex-wrap:wrap;align-items:flex-start;gap:.75rem;display:flex}.image-wrap[data-v-4dd0c307]{box-sizing:border-box;cursor:crosshair;touch-action:none;border:1px dashed var(--color-border);border-radius:4px;max-width:100%;padding:70px 100px;display:inline-block}.image-frame[data-v-4dd0c307]{max-width:100%;display:inline-block;position:relative}.image-frame img[data-v-4dd0c307]{max-width:100%;max-height:320px;display:block}.element-marker[data-v-4dd0c307]{background:var(--nav-active-bg);color:var(--nav-active-text);white-space:nowrap;cursor:grab;border:2px solid var(--nav-active-text);border-radius:10px;padding:.15rem .4rem;font-size:.7rem;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 3px #0000004d}.element-marker.selected[data-v-4dd0c307]{background:var(--color-warning)}.element-form[data-v-4dd0c307]{flex:200px;align-content:start;gap:.4rem;display:grid}.nav-icon[data-v-e9a796ae]{flex-shrink:0}.sidebar[data-v-2584d64a]{overscroll-behavior:contain;scrollbar-width:thin;box-sizing:border-box;z-index:2;background:var(--color-bg);flex-direction:column;flex:0 0 190px;gap:1.1rem;width:190px;max-height:100dvh;padding-bottom:.75rem;transition:width .15s,flex-basis .15s;display:flex;position:sticky;top:0;left:0;overflow:hidden auto}.sidebar.collapsed[data-v-2584d64a]{flex:0 0 56px;width:56px}.sidebar-toggle[data-v-2584d64a]{width:1.5rem;height:1.5rem;color:var(--color-text-3);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.sidebar-toggle[data-v-2584d64a]:hover{background:var(--color-surface-2);color:var(--color-text)}.group[data-v-2584d64a]{flex-direction:column;flex-shrink:0;gap:.1rem;display:flex}.group-header[data-v-2584d64a]{justify-content:space-between;align-items:center;gap:.5rem;padding:0 .5rem .3rem;display:flex}.sidebar.collapsed .group-header[data-v-2584d64a]{justify-content:center}.group-header .group-label[data-v-2584d64a]{padding:0}.group-label[data-v-2584d64a]{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-3);padding:0 .5rem .3rem;font-size:.7rem;font-weight:600}.sidebar button[data-v-2584d64a]{text-align:left;cursor:pointer;color:var(--color-text);background:0 0;border:none;border-radius:4px;align-items:center;gap:.6rem;padding:.4rem .5rem;font-size:.9rem;display:flex}.sidebar.collapsed button[data-v-2584d64a]{justify-content:center;padding:.5rem}.sidebar.collapsed button .label[data-v-2584d64a]{display:none}.sidebar button[data-v-2584d64a]:hover{background:var(--color-surface-2)}.sidebar button.on[data-v-2584d64a]{background:var(--nav-active-bg);color:var(--nav-active-text);font-weight:600}.sidebar button.child[data-v-2584d64a]{color:var(--color-text-2);padding-left:1.3rem;font-size:.82rem}.sidebar button.child.on[data-v-2584d64a]{background:var(--color-primary-tint);color:var(--color-primary);font-weight:600}.scatter-panel[data-v-eca839d5]{margin-top:2rem}.scatter-controls[data-v-eca839d5]{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:.5rem;display:flex}.scatter-controls label[data-v-eca839d5]{flex-direction:column;gap:.25rem;min-width:12rem;display:flex}.scatter-chart[data-v-eca839d5]{height:360px;position:relative}.scatter-chart canvas.loading[data-v-eca839d5]{opacity:.4}.analytics[data-v-7a4e4ff5]{flex-direction:column;gap:.75rem;display:flex}.group-header[data-v-7a4e4ff5]{border:0;border-bottom:1px solid var(--color-border);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.35rem;width:100%;margin:.5rem 0 .15rem;padding:.2rem 0;font-weight:600;display:flex}.mode-switch[data-v-7a4e4ff5]{border:1px solid var(--color-border);border-radius:6px;margin-bottom:.75rem;display:inline-flex;overflow:hidden}.mode-switch button[data-v-7a4e4ff5]{background:0 0;border:0;border-radius:0;padding:.35rem .9rem}.mode-switch button.on[data-v-7a4e4ff5]{background:var(--color-primary);color:var(--color-on-primary,#fff)}.group-filter[data-v-7a4e4ff5]{margin:0 0 .25rem}.metrics-panel[data-v-7a4e4ff5]{border:1px solid var(--color-border);height:var(--list-h,360px);border-radius:6px;flex-direction:column;flex:none;padding:.75rem 1rem;display:flex}.list-resize-handle[data-v-7a4e4ff5]{cursor:row-resize;touch-action:none;height:10px;margin:-.5rem 0;position:relative}.list-resize-handle[data-v-7a4e4ff5]:after{content:"";background:var(--color-border);border-radius:2px;height:3px;position:absolute;top:4px;left:40%;right:40%}.list-resize-handle[data-v-7a4e4ff5]:hover:after{background:var(--color-primary)}.metrics-header[data-v-7a4e4ff5]{flex:none;justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.metrics-header h3[data-v-7a4e4ff5]{margin:0}.metrics-list[data-v-7a4e4ff5]{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.metric-row[data-v-7a4e4ff5]{border-bottom:1px solid var(--color-border);align-items:center;gap:.6rem;padding:.4rem 0;display:flex}.metric-info[data-v-7a4e4ff5]{flex-direction:column;flex:1;min-width:0;display:flex}.stack-select[data-v-7a4e4ff5]{flex:none;width:auto}.stack-order[data-v-7a4e4ff5]{flex:none;gap:.2rem;display:inline-flex}.stack-order button[data-v-7a4e4ff5]{padding:.1rem .4rem}.views-bar[data-v-7a4e4ff5]{gap:.5rem;margin-bottom:.5rem;display:flex}.views-bar select[data-v-7a4e4ff5],.views-bar input[data-v-7a4e4ff5]{flex:1;min-width:0;padding:.35rem;font-size:.9rem}.views-bar button[data-v-7a4e4ff5]{white-space:nowrap;flex:none}.range-bar[data-v-7a4e4ff5]{flex-wrap:wrap;flex:none;align-items:center;gap:.75rem;display:flex}.inline-label[data-v-7a4e4ff5]{align-items:center;gap:.35rem;font-size:.9rem;display:flex}.chart-wrapper[data-v-7a4e4ff5]{flex:none;height:440px;position:relative}canvas.loading[data-v-7a4e4ff5]{filter:blur(1.5px)}.loading-chip[data-v-7a4e4ff5]{background:var(--nav-active-bg);color:var(--nav-active-text);pointer-events:none;border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;display:flex;position:absolute;top:.5rem;right:.5rem}.spinner[data-v-7a4e4ff5]{border:2px solid color-mix(in srgb, var(--nav-active-text) 40%, transparent);border-top-color:var(--nav-active-text);border-radius:50%;width:.8rem;height:.8rem;animation:.7s linear infinite spin-7a4e4ff5}@keyframes spin-7a4e4ff5{to{transform:rotate(360deg)}}.chart-placeholder[data-v-7a4e4ff5]{color:var(--color-text-3);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.conditions-editor[data-v-7a4e4ff5]{border-top:1px solid var(--color-border);padding-top:.5rem}.condition-row[data-v-7a4e4ff5]{align-items:center;gap:.4rem;margin-bottom:.4rem;display:flex}.condition-row input[data-v-7a4e4ff5],.condition-row select[data-v-7a4e4ff5]{flex:1;min-width:0}.prices-heading[data-v-7a4e4ff5]{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem;font-size:1.1rem}.reading-form[data-v-7a4e4ff5]{gap:.5rem;margin-bottom:.75rem;display:flex}.reading-form input[data-v-7a4e4ff5]{flex:1;min-width:0}.exchange-bar[data-v-7a4e4ff5]{margin-bottom:.75rem}.exchange-form[data-v-7a4e4ff5]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;margin-bottom:.75rem;padding:.75rem}.exchange-badge[data-v-7a4e4ff5]{background:var(--color-primary-tint);color:var(--color-primary);white-space:nowrap;border-radius:999px;margin-left:.3rem;padding:.05rem .45rem;font-size:.75rem;display:inline-block}table[data-v-7a4e4ff5]{border-collapse:collapse;width:100%}th[data-v-7a4e4ff5],td[data-v-7a4e4ff5]{text-align:left;border-bottom:1px solid var(--color-border);padding:.3rem .5rem}.hint[data-v-7a4e4ff5]{color:var(--color-text-2)}.hint-inline[data-v-7a4e4ff5]{color:var(--color-text-3);font-size:.85rem;font-style:italic}.error[data-v-7a4e4ff5]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}button.danger[data-v-7a4e4ff5]{color:var(--color-danger)}.link-button[data-v-7a4e4ff5]{cursor:pointer;color:var(--color-danger);background:0 0;border:none;padding:0 .2rem;font-weight:700}.modal-backdrop[data-v-7a4e4ff5]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-7a4e4ff5]{background:var(--color-surface);border-radius:8px;width:90%;max-width:480px;max-height:85vh;padding:1.5rem;overflow-y:auto}@media (width<=700px){.analytics[data-v-7a4e4ff5]{height:auto}.metrics-panel[data-v-7a4e4ff5]{flex:none;height:auto}.list-resize-handle[data-v-7a4e4ff5]{display:none}.metrics-list[data-v-7a4e4ff5]{min-height:0;overflow-y:visible}.chart-wrapper[data-v-7a4e4ff5]{flex:none;height:55vh;min-height:240px}.metric-row[data-v-7a4e4ff5]{flex-wrap:wrap}.metric-info[data-v-7a4e4ff5]{flex:100%}.reading-form[data-v-7a4e4ff5]{flex-direction:column}.reading-form input[data-v-7a4e4ff5],.reading-form button[data-v-7a4e4ff5]{box-sizing:border-box;width:100%}.modal-content[data-v-7a4e4ff5]{border-radius:0;width:100%;max-width:100%;height:100%;max-height:100dvh;overflow-x:auto}.col-note[data-v-7a4e4ff5]{display:none}}form[data-v-7a4e4ff5]{gap:.75rem;display:grid}label[data-v-7a4e4ff5]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.cop-tag-checkbox[data-v-7a4e4ff5]{align-items:center;flex-direction:row!important;gap:.4rem!important}.tag-search[data-v-7a4e4ff5]{box-sizing:border-box;flex:none;width:100%;margin-bottom:.35rem}.metrics-toolbar[data-v-7a4e4ff5]{flex-wrap:wrap;gap:.5rem;display:flex}.metrics-toolbar .tag-search[data-v-7a4e4ff5]{flex:1;min-width:10rem}.favorites-filter-toggle[data-v-7a4e4ff5],.clear-selection[data-v-7a4e4ff5]{white-space:nowrap;cursor:pointer;flex:none}.favorites-filter-toggle.active[data-v-7a4e4ff5]{background:var(--color-primary-tint);color:var(--color-primary);border-color:var(--color-primary)}.favorite-star[data-v-7a4e4ff5]{cursor:pointer;color:var(--color-text-3);background:0 0;border:none;flex:none;padding:.1rem .3rem;font-size:1.1rem;line-height:1}.favorite-star.active[data-v-7a4e4ff5]{color:#e6b800}input[data-v-7a4e4ff5],select[data-v-7a4e4ff5]{padding:.4rem;font-size:1rem}.form-actions[data-v-7a4e4ff5]{gap:.5rem;display:flex}.escalation-edit[data-v-0f24d9e1]{flex-direction:column;gap:.3rem;min-width:14rem;display:flex}.admin[data-v-0f24d9e1]{flex-direction:column;gap:1.5rem;display:flex}.panel[data-v-0f24d9e1]{border:1px solid var(--color-border);border-radius:6px;padding:.75rem 1rem}.panel-header[data-v-0f24d9e1]{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.panel-header h3[data-v-0f24d9e1]{margin:0}table[data-v-0f24d9e1]{border-collapse:collapse;width:100%}th[data-v-0f24d9e1],td[data-v-0f24d9e1]{text-align:left;border-bottom:1px solid var(--color-border);padding:.4rem .5rem}.actions[data-v-0f24d9e1]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.hint[data-v-0f24d9e1]{color:var(--color-text-2)}.error[data-v-0f24d9e1]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.warning[data-v-0f24d9e1]{color:var(--color-warning);background:var(--color-warning-tint);border-radius:4px;padding:.75rem}.backup-actions[data-v-0f24d9e1]{gap:.5rem;display:flex}.table-scroll[data-v-0f24d9e1]{-webkit-overflow-scrolling:touch;overflow-x:auto}.sticky-first th[data-v-0f24d9e1]:first-child,.sticky-first td[data-v-0f24d9e1]:first-child{z-index:1;background:var(--color-bg);position:sticky;left:0}.backup-ok[data-v-0f24d9e1]{color:var(--color-success)}.backup-failed[data-v-0f24d9e1]{color:var(--color-danger)}.backup-settings[data-v-0f24d9e1]{border:1px solid var(--color-border);border-radius:4px;margin:1rem 0;padding:.75rem}.backup-settings h4[data-v-0f24d9e1]{margin:0 0 .5rem}.backup-fields[data-v-0f24d9e1]{flex-wrap:wrap;gap:.75rem;margin:.5rem 0;display:flex}.backup-fields input[type=number][data-v-0f24d9e1]{width:6rem}.backup-check[data-v-0f24d9e1]{flex-direction:row;align-items:center;gap:.5rem;display:flex}.backup-drop td[data-v-0f24d9e1]{color:var(--color-danger);text-decoration:line-through}.backup-drop td[data-v-0f24d9e1]:last-child{text-decoration:none}.backup-error[data-v-0f24d9e1]{white-space:pre-wrap;overflow-wrap:anywhere;max-width:28rem;font-size:.8rem}button.danger[data-v-0f24d9e1]{color:var(--color-danger)}.modal-backdrop[data-v-0f24d9e1]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-0f24d9e1]{background:var(--color-surface);border-radius:8px;width:90%;max-width:420px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-content.modal-wide[data-v-0f24d9e1]{max-width:560px}form[data-v-0f24d9e1]{gap:.75rem;display:grid}label[data-v-0f24d9e1]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input[data-v-0f24d9e1],select[data-v-0f24d9e1]{padding:.4rem;font-size:1rem}.form-actions[data-v-0f24d9e1]{gap:.5rem;margin-top:.75rem;display:flex}.access-site[data-v-0f24d9e1]{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:.5rem}.access-site[data-v-0f24d9e1]:first-of-type{border-top:none;margin-top:0}.access-site h3[data-v-0f24d9e1]{margin:0 0 .4rem;font-size:1rem}.access-row[data-v-0f24d9e1]{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.3rem;font-size:.9rem;display:flex}.access-area-label[data-v-0f24d9e1],.access-write-label[data-v-0f24d9e1]{flex-direction:row;align-items:center;gap:.35rem;font-size:.9rem;display:flex}.access-area-label[data-v-0f24d9e1]{min-width:160px}.db-tiles[data-v-0f24d9e1]{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;margin-bottom:.9rem;display:grid}.db-tile[data-v-0f24d9e1]{border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:.15rem;padding:.5rem .65rem;display:flex}.db-tile-label[data-v-0f24d9e1]{color:var(--color-text-3);font-size:.72rem}.db-tile-value[data-v-0f24d9e1]{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.05rem;font-weight:600}.db-tile-value small[data-v-0f24d9e1]{color:var(--color-text-3);font-size:.72rem;font-weight:400}.db-table-sizes[data-v-0f24d9e1]{margin-bottom:.9rem;font-size:.85rem}.db-table-sizes summary[data-v-0f24d9e1]{cursor:pointer;color:var(--color-text-2)}.db-size-cell[data-v-0f24d9e1]{text-align:right;font-family:ui-monospace,SF Mono,Menlo,monospace}@media (width<=700px){.panel[data-v-0f24d9e1]{padding:.6rem}.panel-header[data-v-0f24d9e1]{flex-wrap:wrap;gap:.5rem}.sticky-first td[data-v-0f24d9e1]:first-child{overflow-wrap:anywhere;min-width:8rem;max-width:10rem}th[data-v-0f24d9e1],td[data-v-0f24d9e1]{padding:.4rem .35rem}.escalation-edit[data-v-0f24d9e1]{min-width:11rem}}.diagnostics[data-v-b0d70ace]{flex-direction:column;gap:.75rem;display:flex}.diagnostics-header[data-v-b0d70ace]{justify-content:space-between;align-items:center;display:flex}.diagnostics-header h3[data-v-b0d70ace]{margin:0}.hint[data-v-b0d70ace]{color:var(--color-text-2)}.error[data-v-b0d70ace]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.flow[data-v-b0d70ace]{flex-wrap:wrap;align-items:flex-start;gap:.75rem;display:flex}.flow-box[data-v-b0d70ace]{border:2px solid var(--color-border);background:var(--color-surface-2);border-radius:8px;min-width:220px;padding:.6rem .9rem}.flow-box.ok[data-v-b0d70ace]{border-color:var(--color-success);background:var(--color-success-tint)}.flow-box.fail[data-v-b0d70ace]{border-color:var(--color-danger);background:var(--color-danger-tint)}.flow-box h3[data-v-b0d70ace]{margin:0 0 .3rem;font-size:.9rem}.flow-box .value[data-v-b0d70ace]{font-size:1rem;font-weight:600}.flow-box .hint[data-v-b0d70ace]{margin:.3rem 0 0;font-size:.85rem;font-weight:400}.thc[data-v-8fbed534]{white-space:nowrap;align-items:center;gap:.15rem;display:flex}.thc-label[data-v-8fbed534]{font:inherit;font-weight:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;display:inline-flex}.thc-label-static[data-v-8fbed534]{font:inherit}.thc-arrow[data-v-8fbed534]{color:var(--color-border);font-size:.7em}.thc-arrow.active[data-v-8fbed534]{color:var(--color-primary)}.thc-filter-button[data-v-8fbed534]{cursor:pointer;color:var(--color-border);background:0 0;border:none;align-items:center;padding:.35rem;line-height:0;display:inline-flex}.thc-filter-button.active[data-v-8fbed534]{color:var(--color-primary)}.thc-popover,.thc-sheet{z-index:100;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;flex-direction:column;gap:.4rem;padding:.6rem;font-family:system-ui,sans-serif;display:flex;position:fixed;box-shadow:0 4px 16px #00000026}.thc-popover{width:240px}.thc-popover .thc-sheet-label{display:none}.thc-sheet{padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:12px 12px 0 0;gap:.6rem;bottom:0;left:0;right:0}.thc-sheet-label{font-size:.95rem;font-weight:600}.thc-popover input,.thc-sheet input{box-sizing:border-box;width:100%;padding:.45rem;font-size:1rem}.thc-actions{justify-content:flex-end;gap:.5rem;display:flex}.thc-actions button{cursor:pointer;padding:.4rem .8rem}.thc-backdrop{z-index:99;background:#00000059;position:fixed;inset:0}.luxtronik-settings[data-v-84d6598a]{flex-direction:column;gap:.75rem;display:flex}.section-header[data-v-84d6598a]{justify-content:space-between;align-items:center;display:flex}.section-header h3[data-v-84d6598a]{margin:0}.history-header[data-v-84d6598a]{margin-top:.75rem}.hint[data-v-84d6598a]{color:var(--color-text-2)}.error[data-v-84d6598a]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}table[data-v-84d6598a]{border-collapse:collapse;width:100%}th[data-v-84d6598a],td[data-v-84d6598a]{text-align:left;border-bottom:1px solid var(--color-border);padding:.4rem .5rem}.alerts-toolbar[data-v-84d6598a]{flex-wrap:wrap;gap:.5rem;display:flex}.search-input[data-v-84d6598a]{box-sizing:border-box;flex:1;min-width:12rem;padding:.5rem;font-size:1rem}.column-toggle[data-v-84d6598a]{white-space:nowrap;flex:none}.filter-chip[data-v-84d6598a]{white-space:nowrap;background:var(--color-primary-tint);color:var(--color-primary);border:1px solid var(--color-primary);cursor:pointer;border-radius:999px;flex:none;padding:.3rem .7rem;font-size:.85rem}@media (width<=700px){.table-scroll[data-v-84d6598a]{-webkit-overflow-scrolling:touch;overflow-x:auto}.cell-wrap[data-v-84d6598a]{white-space:normal;min-width:10rem}}.alerts[data-v-e6fc16b6]{flex-direction:column;gap:.75rem;display:flex}.alerts-header[data-v-e6fc16b6]{justify-content:space-between;align-items:center;display:flex}.alerts-header h3[data-v-e6fc16b6]{margin:0}.hint[data-v-e6fc16b6]{color:var(--color-text-2)}.hint-inline[data-v-e6fc16b6]{color:var(--color-text-3);font-style:italic}.error[data-v-e6fc16b6]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}table[data-v-e6fc16b6]{border-collapse:collapse;width:100%}th[data-v-e6fc16b6],td[data-v-e6fc16b6]{text-align:left;border-bottom:1px solid var(--color-border);padding:.4rem .5rem}.alerts-toolbar[data-v-e6fc16b6]{flex-wrap:wrap;gap:.5rem;display:flex}.search-input[data-v-e6fc16b6]{box-sizing:border-box;flex:1;min-width:12rem;padding:.5rem;font-size:1rem}.column-toggle[data-v-e6fc16b6]{white-space:nowrap;flex:none}.filter-chip[data-v-e6fc16b6]{white-space:nowrap;background:var(--color-primary-tint);color:var(--color-primary);border:1px solid var(--color-primary);cursor:pointer;border-radius:999px;flex:none;padding:.3rem .7rem;font-size:.85rem}.table-scroll[data-v-e6fc16b6]{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-scroll th[data-v-e6fc16b6]:first-child,.table-scroll td[data-v-e6fc16b6]:first-child{z-index:1;background:var(--color-bg);position:sticky;left:0}.cell-code[data-v-e6fc16b6]{overflow-wrap:anywhere}.cell-message[data-v-e6fc16b6]{overflow-wrap:anywhere;min-width:12rem}.message-text.clamped[data-v-e6fc16b6]{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.message-toggle[data-v-e6fc16b6]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem}.ack-done[data-v-e6fc16b6]{color:var(--color-success);cursor:help;font-weight:600}.ack-button[data-v-e6fc16b6]{padding:.2rem .6rem;font-size:.85rem}.sps-quit-button[data-v-e6fc16b6]{margin-left:.4rem}.mode-switch[data-v-e6fc16b6]{border:1px solid var(--color-border);border-radius:6px;align-self:flex-start;display:inline-flex;overflow:hidden}.mode-switch button[data-v-e6fc16b6]{background:0 0;border:0;border-radius:0;padding:.35rem .9rem}.mode-switch button.on[data-v-e6fc16b6]{background:var(--color-primary);color:var(--color-on-primary,#fff)}.tab-count[data-v-e6fc16b6]{opacity:.75;margin-left:.4rem;font-size:.8rem}.actions[data-v-e6fc16b6]{gap:.5rem;display:flex}.modal-backdrop[data-v-e6fc16b6]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-e6fc16b6]{background:var(--color-surface);border-radius:8px;width:90%;max-width:420px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-content form[data-v-e6fc16b6]{gap:.75rem;display:grid}.modal-content label[data-v-e6fc16b6]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.modal-content .settings-row-inline[data-v-e6fc16b6]{flex-direction:row;align-items:center}.modal-content input[data-v-e6fc16b6],.modal-content select[data-v-e6fc16b6]{padding:.4rem;font-size:1rem}.threshold-row[data-v-e6fc16b6]{gap:.35rem;display:flex}.form-actions[data-v-e6fc16b6]{gap:.5rem;margin-top:.75rem;display:flex}@media (width<=700px){.cell-message[data-v-e6fc16b6]{min-width:8rem}.cell-time[data-v-e6fc16b6]{min-width:5.5rem}th[data-v-e6fc16b6],td[data-v-e6fc16b6]{padding:.4rem .35rem}th[data-v-e6fc16b6]{font-size:.85rem}}.logbook[data-v-439844f0]{flex-direction:column;gap:.75rem;display:flex}.logbook-header[data-v-439844f0]{justify-content:space-between;align-items:center;display:flex}.logbook-header h3[data-v-439844f0]{margin:0}.hint[data-v-439844f0]{color:var(--color-text-2);margin:0}.error[data-v-439844f0]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.filters[data-v-439844f0]{flex-direction:column;gap:.5rem;display:flex}.chips[data-v-439844f0]{flex-wrap:wrap;gap:.4rem;display:flex}.chip[data-v-439844f0]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-2);cursor:pointer;border-radius:999px;padding:.25rem .75rem}.chip.on[data-v-439844f0]{background:var(--color-primary-tint);border-color:var(--color-primary);color:var(--color-primary)}.filter-row[data-v-439844f0]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.search-input[data-v-439844f0]{box-sizing:border-box;flex:1;min-width:12rem;padding:.4rem .5rem;font-size:1rem}.day-label[data-v-439844f0]{color:var(--color-text-2);margin:.5rem 0 .25rem;font-size:.95rem;font-weight:600}.entries[data-v-439844f0]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;margin:0;padding:0;list-style:none}.entry[data-v-439844f0]{border-bottom:1px solid var(--color-border);grid-template-columns:5.5rem 9.5rem 1fr;align-items:baseline;gap:.5rem;padding:.45rem .75rem;display:grid}.entry[data-v-439844f0]:last-child{border-bottom:none}.time[data-v-439844f0]{font-variant-numeric:tabular-nums;color:var(--color-text-2)}.cat[data-v-439844f0]{background:var(--color-surface-2,var(--color-bg));color:var(--color-text-2);border-radius:999px;justify-self:start;padding:.1rem .5rem;font-size:.8rem}.cat.c-alarm[data-v-439844f0]{background:var(--color-danger-tint);color:var(--color-danger)}.cat.c-pv[data-v-439844f0]{background:var(--color-warning-tint);color:var(--color-warning)}.cat.c-config[data-v-439844f0],.cat.c-user[data-v-439844f0]{background:var(--color-primary-tint);color:var(--color-primary)}.cat.c-state[data-v-439844f0]{background:var(--color-success-tint);color:var(--color-success)}.body[data-v-439844f0]{flex-direction:column;min-width:0;display:flex}.message[data-v-439844f0]{overflow-wrap:anywhere}.message.sev-kritisch[data-v-439844f0]{color:var(--color-danger);font-weight:600}.meta[data-v-439844f0]{color:var(--color-text-3);flex-wrap:wrap;gap:.75rem;font-size:.8rem;display:flex}.more[data-v-439844f0]{align-self:center}@media (width<=700px){.entry[data-v-439844f0]{grid-template-columns:4.5rem 1fr}.cat[data-v-439844f0]{grid-area:1/2}.body[data-v-439844f0]{grid-column:1/-1}}.maintenance[data-v-b7e2b2e4]{flex-direction:column;gap:.75rem;display:flex}.maintenance-header[data-v-b7e2b2e4]{justify-content:space-between;align-items:center;display:flex}.maintenance-header h3[data-v-b7e2b2e4]{margin:0}.hint[data-v-b7e2b2e4]{color:var(--color-text-2)}.hint-inline[data-v-b7e2b2e4]{color:var(--color-text-3);font-size:.85rem;font-style:italic}.error[data-v-b7e2b2e4]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}table[data-v-b7e2b2e4]{border-collapse:collapse;width:100%}th[data-v-b7e2b2e4],td[data-v-b7e2b2e4]{text-align:left;border-bottom:1px solid var(--color-border);padding:.4rem .5rem}.status-ok[data-v-b7e2b2e4]{color:var(--color-success);font-weight:700}.status-overdue[data-v-b7e2b2e4]{color:var(--color-danger);font-weight:700}.actions[data-v-b7e2b2e4]{gap:.5rem;display:flex}.modal-backdrop[data-v-b7e2b2e4]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-b7e2b2e4]{background:var(--color-surface);border-radius:8px;width:90%;max-width:420px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-content form[data-v-b7e2b2e4]{gap:.75rem;display:grid}.modal-content label[data-v-b7e2b2e4]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.modal-content .settings-row-inline[data-v-b7e2b2e4]{flex-direction:row;align-items:center}.modal-content input[data-v-b7e2b2e4],.modal-content select[data-v-b7e2b2e4]{padding:.4rem;font-size:1rem}.interval-row[data-v-b7e2b2e4]{gap:.35rem;display:flex}.form-actions[data-v-b7e2b2e4]{gap:.5rem;margin-top:.75rem;display:flex}.pv-betrieb[data-v-dee05eb8]{flex-direction:column;gap:1rem;display:flex}.pv-betrieb-layout[data-v-dee05eb8]{align-items:flex-start;gap:1.5rem;display:flex}.pv-betrieb-main[data-v-dee05eb8]{flex-direction:column;flex:480px;gap:1rem;min-width:0;max-width:900px;display:flex}.pv-betrieb-chart[data-v-dee05eb8]{flex-direction:column;flex:420px;min-width:0;height:calc(100vh - 180px);display:flex;position:sticky;top:1rem}@media (width<=900px){.pv-betrieb-layout[data-v-dee05eb8]{flex-direction:column}.pv-betrieb-chart[data-v-dee05eb8]{width:100%;height:420px;position:static}}.card[data-v-dee05eb8]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1rem 1.25rem}.error[data-v-dee05eb8]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.hint-inline[data-v-dee05eb8]{color:var(--color-text-3);font-size:.85rem;font-style:italic}.flow[data-v-dee05eb8]{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.flow-box[data-v-dee05eb8]{border:2px solid var(--color-border);background:var(--color-surface-2);border-radius:8px;min-width:190px;padding:.6rem .9rem}.flow-box.ok[data-v-dee05eb8]{border-color:var(--color-success);background:var(--color-success-tint)}.flow-box.fail[data-v-dee05eb8]{border-color:var(--color-danger);background:var(--color-danger-tint)}.flow-box.bridged[data-v-dee05eb8]{border-color:var(--color-primary);background:var(--color-primary-tint)}.flow-box.safety[data-v-dee05eb8]{border-style:dashed}.flow-box h3[data-v-dee05eb8]{margin:0 0 .3rem;font-size:.9rem}.flow-box .value[data-v-dee05eb8]{font-size:1rem;font-weight:600}.flow-op[data-v-dee05eb8]{color:var(--color-text-2);font-weight:700}.flow-arrow[data-v-dee05eb8]{color:var(--color-text-3);font-size:1.3rem}.bridge-toggle[data-v-dee05eb8]{align-items:center;gap:.4rem;margin-top:.4rem;font-size:.8rem;display:flex}.badge[data-v-dee05eb8]{background:var(--color-primary-tint);color:var(--color-primary);border-radius:999px;margin-left:.4rem;padding:.1rem .5rem;font-size:.7rem;display:inline-block}.curve-grid[data-v-dee05eb8]{grid-template-columns:repeat(2,minmax(240px,1fr));gap:1.25rem;display:grid}.curve-grid-single[data-v-dee05eb8]{grid-template-columns:minmax(240px,1fr);margin:1rem 0}.curve-canvas-wrapper[data-v-dee05eb8]{height:140px;margin-bottom:.4rem;position:relative}.curve-table[data-v-dee05eb8]{width:auto;margin-bottom:.4rem}.curve-table th[data-v-dee05eb8]{color:var(--color-text-2);text-align:left;padding-right:.5rem;font-size:.75rem;font-weight:600}.curve-table input[data-v-dee05eb8]{width:5.5rem}.row[data-v-dee05eb8]{flex-wrap:wrap;gap:1rem;margin:.75rem 0;display:flex}.row label[data-v-dee05eb8]{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}fieldset[data-v-dee05eb8]{border:none;margin:0;padding:0}fieldset[disabled][data-v-dee05eb8]{opacity:.7}button.danger[data-v-dee05eb8]{color:var(--color-danger);cursor:pointer;background:0 0;border:none}@media (width<=700px){.curve-grid[data-v-dee05eb8]{grid-template-columns:1fr}}.akku[data-v-1f878bd9]{flex-direction:column;gap:1rem;max-width:1400px;display:flex}.card[data-v-1f878bd9]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1rem 1.25rem}h2[data-v-1f878bd9],h3[data-v-1f878bd9]{margin:0}h3[data-v-1f878bd9]{margin-bottom:.5rem;font-size:1rem}.error[data-v-1f878bd9]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.error-inline[data-v-1f878bd9]{color:var(--color-danger);font-size:.85rem}.hint[data-v-1f878bd9]{color:var(--color-text-3);font-size:.85rem}.status[data-v-1f878bd9]{border-left-width:4px}.status-head[data-v-1f878bd9]{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.status-body[data-v-1f878bd9]{align-items:center;gap:1.5rem;margin-top:.75rem;display:flex}.soh[data-v-1f878bd9]{flex-direction:column;flex:none;min-width:9rem;display:flex}.soh-value[data-v-1f878bd9]{font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:700;line-height:1.1}.soh-label[data-v-1f878bd9]{color:var(--color-text-3);font-size:.8rem}.status-text p[data-v-1f878bd9]{margin:0 0 .4rem}.trend-line[data-v-1f878bd9]{color:var(--color-text-2);font-size:.9rem}.notes[data-v-1f878bd9]{color:var(--color-text-2);margin:.75rem 0 0;padding-left:1.2rem;font-size:.9rem}.notes li[data-v-1f878bd9]{margin-bottom:.35rem}.level-badge[data-v-1f878bd9]{background:var(--color-surface-2);color:var(--color-text-2);border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:600}.level-good[data-v-1f878bd9]{border-left-color:var(--color-success)}.level-good .level-badge[data-v-1f878bd9]{background:var(--color-success-tint);color:var(--color-success)}.level-warn[data-v-1f878bd9]{border-left-color:var(--color-warning)}.level-warn .level-badge[data-v-1f878bd9]{background:var(--color-warning-tint);color:var(--color-warning)}.level-bad[data-v-1f878bd9]{border-left-color:var(--color-danger)}.level-bad .level-badge[data-v-1f878bd9]{background:var(--color-danger-tint);color:var(--color-danger)}.level-unknown[data-v-1f878bd9]{border-left-color:var(--color-border)}.kpis[data-v-1f878bd9]{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.kpi[data-v-1f878bd9]{flex-direction:column;gap:.25rem;display:flex}.kpi-label[data-v-1f878bd9]{color:var(--color-text-2);font-size:.85rem}.kpi-value[data-v-1f878bd9]{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:600}.kpi-sub[data-v-1f878bd9]{color:var(--color-text-3);font-size:.8rem}.charts[data-v-1f878bd9]{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.chart-card.wide[data-v-1f878bd9]{grid-column:1/-1}.chart-wrap[data-v-1f878bd9]{height:280px;position:relative}.method summary[data-v-1f878bd9],.profile summary[data-v-1f878bd9]{cursor:pointer;font-weight:600}.method ul[data-v-1f878bd9]{padding-left:1.2rem}.method li[data-v-1f878bd9]{margin-bottom:.4rem}.profile-form[data-v-1f878bd9]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;margin-top:.75rem;display:grid}.profile-form label[data-v-1f878bd9]{color:var(--color-text-2);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.profile-actions[data-v-1f878bd9]{grid-column:1/-1;align-items:center;gap:.75rem;display:flex}@media (width<=900px){.kpis[data-v-1f878bd9]{grid-template-columns:repeat(2,minmax(0,1fr))}.charts[data-v-1f878bd9]{grid-template-columns:minmax(0,1fr)}.profile-form[data-v-1f878bd9]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.kpis[data-v-1f878bd9],.profile-form[data-v-1f878bd9]{grid-template-columns:minmax(0,1fr)}.status-body[data-v-1f878bd9]{flex-direction:column;align-items:flex-start;gap:.5rem}.chart-wrap[data-v-1f878bd9]{height:220px}}.energy-flow[data-v-8b39edfb]{--flow-pv:var(--color-warning);--flow-grid:var(--color-text-2);--flow-battery:var(--color-success);--flow-home:var(--color-primary);width:100%;max-width:440px;height:auto;margin:0 auto;display:block}.node circle[data-v-8b39edfb]{fill:var(--color-surface);stroke-width:3px}.node.pv circle[data-v-8b39edfb]{stroke:var(--flow-pv)}.node.grid circle[data-v-8b39edfb]{stroke:var(--flow-grid)}.node.battery circle[data-v-8b39edfb]{stroke:var(--flow-battery)}.node.home circle[data-v-8b39edfb]{stroke:var(--flow-home)}.node-icon path[data-v-8b39edfb]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.node.pv .node-icon[data-v-8b39edfb]{color:var(--flow-pv)}.node.grid .node-icon[data-v-8b39edfb]{color:var(--flow-grid)}.node.battery .node-icon[data-v-8b39edfb]{color:var(--flow-battery)}.node.home .node-icon[data-v-8b39edfb]{color:var(--flow-home)}.node text[data-v-8b39edfb]{text-anchor:middle;fill:var(--color-text)}.node-value[data-v-8b39edfb]{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.node-sub[data-v-8b39edfb]{font-variant-numeric:tabular-nums;font-size:10.5px}.unit[data-v-8b39edfb]{fill:var(--color-text-3);font-size:8.5px;font-weight:400}.node-value .unit[data-v-8b39edfb]{font-size:10px}.flow-label .unit[data-v-8b39edfb]{font-size:9px}.node-key[data-v-8b39edfb]{fill:var(--color-text-3);font-size:9px}.node.clickable[data-v-8b39edfb]{cursor:pointer;outline:none}.node.clickable circle[data-v-8b39edfb]{transition:fill .15s,stroke-width .15s}.node.clickable:hover circle[data-v-8b39edfb],.node.clickable:focus-visible circle[data-v-8b39edfb]{fill:var(--color-surface-2);stroke-width:4.5px}.node.clickable:focus-visible circle[data-v-8b39edfb]{stroke-dasharray:4 3}.node .node-more[data-v-8b39edfb]{fill:var(--flow-home);font-size:9px;font-weight:600}.flow path[data-v-8b39edfb]{fill:none;stroke-width:2.5px;stroke-linecap:round}.flow .track[data-v-8b39edfb]{stroke:var(--color-border)}.flow.pv .dash[data-v-8b39edfb]{stroke:var(--flow-pv)}.flow.grid .dash[data-v-8b39edfb]{stroke:var(--flow-grid)}.flow.battery .dash[data-v-8b39edfb]{stroke:var(--flow-battery)}.flow .dash[data-v-8b39edfb]{stroke-dasharray:6 8;animation:1.4s linear infinite flow-move-8b39edfb}.flow.idle .track[data-v-8b39edfb]{stroke-dasharray:2 5}.flow-label[data-v-8b39edfb]{fill:var(--color-text-2);font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--color-surface);stroke-width:3px;font-size:11px}@keyframes flow-move-8b39edfb{to{stroke-dashoffset:-28px}}@media (prefers-reduced-motion:reduce){.flow .dash[data-v-8b39edfb]{animation:none}}.home-drill[data-v-f8e07151]{--flow-home:var(--color-primary);font-variant-numeric:tabular-nums;max-width:560px;margin:0 auto}.drill-head[data-v-f8e07151]{align-items:center;gap:.75rem 1rem;margin-bottom:.75rem;display:flex}.back[data-v-f8e07151]{flex:none;min-height:2.25rem;padding:.3rem .8rem}.drill-total[data-v-f8e07151]{align-items:center;gap:.6rem;min-width:0;display:flex}.drill-total>div[data-v-f8e07151]{flex-direction:column;min-width:0;display:flex}.home-icon[data-v-f8e07151]{border:3px solid var(--flow-home);width:2.4rem;height:2.4rem;color:var(--flow-home);border-radius:50%;flex:none;padding:.35rem}.home-icon path[data-v-f8e07151]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.total-label[data-v-f8e07151]{color:var(--color-text-2);font-size:.8rem}.total-value[data-v-f8e07151]{font-size:1.5rem;font-weight:600;line-height:1.2}.tree[data-v-f8e07151]{border-left:2px solid var(--flow-home);margin:0 0 0 1.2rem;padding:.1rem 0;list-style:none}.row[data-v-f8e07151]{grid-template-columns:minmax(0,1fr) auto 2.8rem;grid-template-areas:"label value share""bar bar bar";align-items:center;gap:.2rem .5rem;padding:.3rem 0 .35rem 1rem;font-size:.875rem;display:grid;position:relative}.row[data-v-f8e07151]:before{content:"";border-top:2px solid var(--flow-home);width:.7rem;position:absolute;top:.95rem;left:0}.row-label[data-v-f8e07151]{grid-area:label}.bar[data-v-f8e07151]{grid-area:bar}.row-value[data-v-f8e07151]{grid-area:value}.row-share[data-v-f8e07151]{grid-area:share}.row.muted .row-label[data-v-f8e07151]{color:var(--color-text-3)}.row-label[data-v-f8e07151]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar[data-v-f8e07151]{background:var(--color-surface-2);border-radius:999px;height:.6rem;overflow:hidden}.bar-fill[data-v-f8e07151]{background:var(--color-primary);height:100%;transition:width .4s;display:block}.bar-fill.hp[data-v-f8e07151]{background:var(--color-danger)}.bar-fill.consumer[data-v-f8e07151]{opacity:.6}.bar-fill.loss[data-v-f8e07151]{background:var(--color-text-3)}.bar-fill.rest[data-v-f8e07151]{background:var(--color-text-2)}.bar-fill.phase[data-v-f8e07151]{background:var(--color-success)}.row-value[data-v-f8e07151]{text-align:right;white-space:nowrap;min-width:4.5rem}.row-share[data-v-f8e07151]{text-align:right;color:var(--color-text-3);font-size:.8rem}.note[data-v-f8e07151]{color:var(--color-text-3);font-size:.8rem}.note.warn[data-v-f8e07151]{color:var(--color-warning)}h4[data-v-f8e07151]{color:var(--color-text-2);margin:1rem 0 .4rem;font-size:.85rem}.hint[data-v-f8e07151]{color:var(--color-text-3);font-weight:400}.hint.small[data-v-f8e07151]{margin:.4rem 0 0;font-size:.8rem}@media (prefers-reduced-motion:reduce){.bar-fill[data-v-f8e07151]{transition:none}}@media (width<=700px){.tree[data-v-f8e07151]{margin-left:.6rem}.row[data-v-f8e07151]{padding-left:.9rem;font-size:.85rem}.total-value[data-v-f8e07151]{font-size:1.3rem}}.card[data-v-e4791b72]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;min-width:0;padding:1rem 1.25rem}h3[data-v-e4791b72]{margin:0;font-size:1rem}h4[data-v-e4791b72]{color:var(--color-text-2);margin:1rem 0 .4rem;font-size:.85rem}h5[data-v-e4791b72]{margin:.9rem 0 .3rem;font-size:.85rem}.hint[data-v-e4791b72]{color:var(--color-text-3);font-size:.85rem;font-weight:400}.error-inline[data-v-e4791b72]{color:var(--color-danger);font-size:.85rem}.bal-head[data-v-e4791b72],.hist-head[data-v-e4791b72]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.hist-head h4[data-v-e4791b72]{margin-bottom:.4rem}.segmented[data-v-e4791b72]{border:1px solid var(--color-border);border-radius:6px;display:inline-flex;overflow:hidden}.segmented button[data-v-e4791b72]{background:var(--color-surface);border:none;border-right:1px solid var(--color-border);cursor:pointer;color:var(--color-text);padding:.2rem .7rem;font-size:.85rem}.segmented button[data-v-e4791b72]:last-child{border-right:none}.segmented button.on[data-v-e4791b72]{background:var(--nav-active-bg);color:var(--nav-active-text);font-weight:600}.nav[data-v-e4791b72]{gap:.4rem;display:flex}.icon-btn[data-v-e4791b72]{width:2rem;height:2rem;padding:0;font-size:1.1rem;line-height:1}.notice[data-v-e4791b72]{background:var(--color-warning-tint);border-radius:4px;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.notice p[data-v-e4791b72]{margin:.2rem 0}button.link[data-v-e4791b72]{color:var(--color-primary);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.table-wrap[data-v-e4791b72]{max-width:100%;overflow-x:auto}table[data-v-e4791b72]{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}th[data-v-e4791b72],td[data-v-e4791b72]{text-align:right;white-space:nowrap;border-bottom:1px solid var(--color-border);padding:.3rem .5rem}th[scope=row][data-v-e4791b72],thead th[data-v-e4791b72]:first-child{text-align:left;background:var(--color-surface);font-weight:400;position:sticky;left:0}thead th[data-v-e4791b72]{vertical-align:bottom;font-weight:600}.th-sub[data-v-e4791b72]{color:var(--color-text-3);font-size:.75rem;font-weight:400;display:block}.th-sub.incomplete[data-v-e4791b72]{color:var(--color-warning)}tr.group th[data-v-e4791b72]{text-align:left;color:var(--color-text-2);background:var(--color-surface-2);padding-top:.7rem;font-weight:600}tr.group th span[data-v-e4791b72]{position:sticky;left:.5rem}tr.sub th[data-v-e4791b72]{color:var(--color-text-2);padding-left:1.2rem}tr.sum th[data-v-e4791b72],tr.sum td[data-v-e4791b72]{font-weight:600}tr.empty td[data-v-e4791b72]{color:var(--color-text-3)}.scale[data-v-e4791b72]{max-width:44rem;padding-bottom:3.6rem;position:relative}.scale-bar[data-v-e4791b72]{border-radius:4px;display:flex;overflow:hidden}.scale-seg[data-v-e4791b72]{text-align:center;color:#fff;opacity:.55;flex:1;padding:.3rem 0;font-size:.8rem;font-weight:700}.scale-seg.dark[data-v-e4791b72]{color:#222}.scale-seg.on[data-v-e4791b72]{opacity:1;outline:2px solid var(--color-text);outline-offset:-2px}.scale-ticks[data-v-e4791b72]{height:1rem;color:var(--color-text-3);font-size:.7rem;position:relative}.scale-ticks span[data-v-e4791b72]{position:absolute;top:.1rem;transform:translate(-50%)}.scale-markers[data-v-e4791b72]{pointer-events:none;height:100%;position:absolute;top:0;left:0;right:0}.marker[data-v-e4791b72]{border-left:2px solid var(--color-text);width:0;height:2.4rem;position:absolute;top:-.2rem}.marker.total[data-v-e4791b72]{border-left-style:dashed;border-left-color:var(--color-text-2)}.marker-label[data-v-e4791b72]{white-space:nowrap;color:var(--color-text);font-size:.75rem;position:absolute;top:2.4rem;left:.2rem}.marker.total .marker-label[data-v-e4791b72]{color:var(--color-text-2);top:3.2rem}.marker-label.right[data-v-e4791b72]{left:auto;right:.2rem}.sub-card[data-v-e4791b72]{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:.75rem}.sub-card summary[data-v-e4791b72]{cursor:pointer;font-weight:600}.price-group[data-v-e4791b72]{margin:.75rem 0}.price-list[data-v-e4791b72]{margin:.3rem 0;padding:0;list-style:none}.price-list li[data-v-e4791b72]{grid-template-columns:8rem 6rem minmax(0,1fr) auto;align-items:center;gap:.5rem;font-size:.85rem;display:grid}.num[data-v-e4791b72]{text-align:right;font-variant-numeric:tabular-nums}.missing-price[data-v-e4791b72]{color:var(--color-warning);margin:.3rem 0;font-size:.85rem}.price-form[data-v-e4791b72]{grid-template-columns:10rem 9rem minmax(0,1fr) auto;gap:.5rem;margin-top:.3rem;display:grid}.field[data-v-e4791b72]{color:var(--color-text-2);flex-direction:column;gap:.25rem;max-width:24rem;margin-top:.6rem;font-size:.85rem;display:flex}.carrier-list[data-v-e4791b72]{flex-direction:column;gap:.4rem;margin:.4rem 0;padding:0;list-style:none;display:flex}.carrier-list li[data-v-e4791b72]{grid-template-columns:minmax(0,14rem) minmax(0,14rem) auto auto;align-items:center;gap:.5rem;display:grid}.factor[data-v-e4791b72]{align-items:center;gap:.4rem;display:flex}.factor input[data-v-e4791b72]{width:6rem}.check[data-v-e4791b72]{white-space:nowrap;align-items:center;gap:.3rem;font-size:.85rem;display:flex}.actions[data-v-e4791b72]{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.method[data-v-e4791b72]{padding-left:1.2rem;font-size:.9rem}.method li[data-v-e4791b72]{margin-bottom:.4rem}@media (width<=700px){.card[data-v-e4791b72]{padding:.75rem}th[data-v-e4791b72],td[data-v-e4791b72]{padding:.25rem .35rem;font-size:.8rem}th[scope=row][data-v-e4791b72]{white-space:normal;min-width:7.5rem;max-width:9rem}.price-list li[data-v-e4791b72]{grid-template-columns:minmax(0,1fr) auto auto}.price-list li .hint[data-v-e4791b72]{display:none}.price-form[data-v-e4791b72]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.carrier-list li[data-v-e4791b72]{grid-template-columns:minmax(0,1fr) auto}.scale-seg[data-v-e4791b72]{font-size:.7rem}}.energie[data-v-fdc05ab9]{flex-direction:column;gap:1rem;max-width:1400px;display:flex}.card[data-v-fdc05ab9]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;min-width:0;padding:1rem 1.25rem}h2[data-v-fdc05ab9],h3[data-v-fdc05ab9]{margin:0 0 .5rem}h3[data-v-fdc05ab9]{font-size:1rem}h4[data-v-fdc05ab9]{color:var(--color-text-2);margin:1rem 0 .4rem;font-size:.85rem}.hint[data-v-fdc05ab9]{color:var(--color-text-3);font-size:.85rem;font-weight:400}.error[data-v-fdc05ab9]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.error-inline[data-v-fdc05ab9]{color:var(--color-danger);font-size:.85rem}.setup-list[data-v-fdc05ab9]{margin:.75rem 0;padding:0;list-style:none}.setup-list li[data-v-fdc05ab9]{margin-bottom:.3rem}.setup-list .ok[data-v-fdc05ab9]{color:var(--color-success);margin-right:.4rem;font-weight:700}.setup-list .missing[data-v-fdc05ab9]{color:var(--color-text-3);margin-right:.4rem}.toolbar[data-v-fdc05ab9]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.segmented[data-v-fdc05ab9]{border:1px solid var(--color-border);border-radius:6px;display:inline-flex;overflow:hidden}.segmented button[data-v-fdc05ab9]{background:var(--color-surface);border:none;border-right:1px solid var(--color-border);cursor:pointer;color:var(--color-text);padding:.4rem .9rem}.segmented button[data-v-fdc05ab9]:last-child{border-right:none}.segmented button.on[data-v-fdc05ab9]{background:var(--nav-active-bg);color:var(--nav-active-text);font-weight:600}.flow-head[data-v-fdc05ab9]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem .75rem;margin-bottom:.5rem;display:flex}.flow-head h3[data-v-fdc05ab9]{font-variant-numeric:tabular-nums;margin:0}.segmented.small button[data-v-fdc05ab9]{padding:.2rem .7rem;font-size:.85rem}.flow-zoom[data-v-fdc05ab9]{transform-origin:87%}.zoom-enter-active[data-v-fdc05ab9],.zoom-leave-active[data-v-fdc05ab9]{transition:transform .22s,opacity .22s}.zoom-leave-to[data-v-fdc05ab9]:not(.drill),.zoom-enter-from[data-v-fdc05ab9]:not(.drill){opacity:0;transform:scale(1.6)}.zoom-enter-from.drill[data-v-fdc05ab9],.zoom-leave-to.drill[data-v-fdc05ab9]{opacity:0;transform:scale(.6)}@media (prefers-reduced-motion:reduce){.zoom-enter-active[data-v-fdc05ab9],.zoom-leave-active[data-v-fdc05ab9]{transition:none}}.flow-card[data-v-fdc05ab9]{overflow:hidden}.stale-hint[data-v-fdc05ab9]{color:var(--color-warning);margin:.5rem 0 0;font-size:.85rem}.nav[data-v-fdc05ab9]{align-items:center;gap:.5rem;display:flex}.period-label[data-v-fdc05ab9]{text-align:center;min-width:12rem;font-weight:600}.icon-btn[data-v-fdc05ab9]{width:2rem;height:2rem;padding:0;font-size:1.2rem;line-height:1}.top[data-v-fdc05ab9]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;display:grid}.kpis[data-v-fdc05ab9]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;display:grid}.kpi[data-v-fdc05ab9]{flex-direction:column;gap:.15rem;display:flex}.kpi-label[data-v-fdc05ab9]{color:var(--color-text-2);font-size:.8rem}.kpi-value[data-v-fdc05ab9]{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:600}.kpi-delta[data-v-fdc05ab9]{color:var(--color-text-3);font-size:.75rem}.kpi-delta.better[data-v-fdc05ab9]{color:var(--color-success)}.kpi-delta.worse[data-v-fdc05ab9]{color:var(--color-danger)}.bar-row[data-v-fdc05ab9]{grid-template-columns:9.5rem minmax(0,1fr) 5.5rem;align-items:center;gap:.5rem;margin-bottom:.3rem;font-size:.85rem;display:grid}.bar[data-v-fdc05ab9]{background:var(--color-surface-2);border-radius:999px;height:.6rem;overflow:hidden}.bar-fill[data-v-fdc05ab9]{background:var(--color-primary);height:100%;display:block}.bar-fill.pv[data-v-fdc05ab9]{background:var(--color-warning)}.bar-fill.battery[data-v-fdc05ab9]{background:var(--color-success)}.bar-fill.grid[data-v-fdc05ab9]{background:var(--color-text-2)}.bar-fill.hp[data-v-fdc05ab9]{background:var(--color-danger)}.bar-fill.loss[data-v-fdc05ab9]{background:var(--color-text-3)}.bar-fill.consumer[data-v-fdc05ab9]{background:var(--color-primary);opacity:.6}.bar-label[data-v-fdc05ab9]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.consumer-list[data-v-fdc05ab9]{flex-direction:column;gap:.4rem;margin:.5rem 0;padding:0;list-style:none;display:flex}.consumer-list li[data-v-fdc05ab9]{grid-template-columns:minmax(0,14rem) minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.consumer-metric[data-v-fdc05ab9]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.consumer-actions[data-v-fdc05ab9]{gap:.25rem;display:flex}.consumer-add[data-v-fdc05ab9]{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:.75rem;margin-top:.5rem;display:grid}.consumer-add label[data-v-fdc05ab9]{color:var(--color-text-2);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.bar-value[data-v-fdc05ab9]{text-align:right;font-variant-numeric:tabular-nums}.chart-wrap[data-v-fdc05ab9]{height:300px;position:relative}.config summary[data-v-fdc05ab9],.method summary[data-v-fdc05ab9]{cursor:pointer;font-weight:600}.config-grid[data-v-fdc05ab9]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;margin-top:.75rem;display:grid}.config-grid label[data-v-fdc05ab9]{color:var(--color-text-2);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.config-actions[data-v-fdc05ab9]{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.method ul[data-v-fdc05ab9]{padding-left:1.2rem}.method li[data-v-fdc05ab9]{margin-bottom:.4rem}@media (width<=900px){.top[data-v-fdc05ab9]{grid-template-columns:minmax(0,1fr)}.config-grid[data-v-fdc05ab9]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.card[data-v-fdc05ab9]{padding:.75rem}.toolbar[data-v-fdc05ab9]{flex-direction:column;align-items:stretch}.segmented[data-v-fdc05ab9]{display:flex}.segmented button[data-v-fdc05ab9]{flex:1}.nav[data-v-fdc05ab9]{justify-content:space-between}.period-label[data-v-fdc05ab9]{flex:1;min-width:0;font-size:.9rem}.kpis[data-v-fdc05ab9]{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-row[data-v-fdc05ab9]{grid-template-columns:6.5rem minmax(0,1fr) 4.8rem;font-size:.8rem}.config-grid[data-v-fdc05ab9]{grid-template-columns:minmax(0,1fr)}.consumer-list li[data-v-fdc05ab9]{grid-template-columns:minmax(0,1fr) auto}.consumer-metric[data-v-fdc05ab9]{display:none}.consumer-add[data-v-fdc05ab9]{grid-template-columns:minmax(0,1fr)}.chart-wrap[data-v-fdc05ab9]{height:240px}}.planner[data-v-e8ab784a]{flex-direction:column;gap:1rem;max-width:1400px;display:flex}.card[data-v-e8ab784a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1rem 1.25rem}h2[data-v-e8ab784a],h3[data-v-e8ab784a]{margin:0}h3[data-v-e8ab784a]{margin-bottom:.25rem;font-size:1rem}.head-row[data-v-e8ab784a]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.actions[data-v-e8ab784a]{flex-wrap:wrap;gap:.5rem;display:flex}.error[data-v-e8ab784a]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;margin:0;padding:.75rem}.error-inline[data-v-e8ab784a]{color:var(--color-danger);font-size:.85rem}.hint[data-v-e8ab784a]{color:var(--color-text-3);font-size:.85rem}.hint.warn[data-v-e8ab784a]{color:var(--color-warning)}.forecast-kpi[data-v-e8ab784a]{margin:.25rem 0 0}.recording[data-v-e8ab784a]{color:var(--color-danger);margin:.75rem 0 0;font-weight:600}.suggestions[data-v-e8ab784a]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.75rem 0;display:grid}.suggestion[data-v-e8ab784a]{background:var(--color-surface-2);border-left:4px solid var(--color-border);border-radius:6px;flex-direction:column;gap:.2rem;padding:.75rem 1rem;display:flex}.suggestion.best[data-v-e8ab784a]{border-left-color:var(--color-success);background:var(--color-success-tint)}.suggestion.muted[data-v-e8ab784a]{opacity:.85}.suggestion.empty .s-time[data-v-e8ab784a]{display:none}.suggestion button[data-v-e8ab784a]{align-self:flex-start;margin-top:.35rem}.s-label[data-v-e8ab784a]{color:var(--color-text-2);font-size:.8rem}.s-time[data-v-e8ab784a]{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.s-sub[data-v-e8ab784a]{color:var(--color-text-2);font-size:.85rem}.chart-wrap[data-v-e8ab784a]{height:260px;position:relative}.chart-wrap.small[data-v-e8ab784a]{height:200px}.jobs[data-v-e8ab784a]{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.5rem}.job[data-v-e8ab784a]{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.plant summary[data-v-e8ab784a]{cursor:pointer;font-weight:600}.plant-charts[data-v-e8ab784a]{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:1rem;margin-top:.75rem;display:grid}.plant-form[data-v-e8ab784a]{flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:1rem;display:flex}.strings input[data-v-e8ab784a]{box-sizing:border-box;width:100%;min-width:4rem}.strings td[data-v-e8ab784a],.strings th[data-v-e8ab784a]{text-align:left;padding:.25rem .35rem}.grid[data-v-e8ab784a]{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem 1rem;width:100%;margin-top:.75rem;display:grid}.grid label[data-v-e8ab784a]{color:var(--color-text-2);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.grid label.wide[data-v-e8ab784a]{grid-column:span 2}.form-actions[data-v-e8ab784a]{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.modal-backdrop[data-v-e8ab784a]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-e8ab784a]{background:var(--color-surface);border-radius:8px;width:90%;max-width:460px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-content.wide[data-v-e8ab784a]{max-width:720px}.modal-content form[data-v-e8ab784a]{gap:.6rem;display:grid}.modal-content label[data-v-e8ab784a]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.modal-content .settings-row-inline[data-v-e8ab784a]{flex-direction:row;align-items:center;gap:.5rem}.modal-content input[data-v-e8ab784a],.modal-content select[data-v-e8ab784a]{padding:.4rem;font-size:1rem}.modal-content .hint[data-v-e8ab784a]{margin:0}.row2[data-v-e8ab784a]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.programs[data-v-e8ab784a]{flex-direction:column;gap:.35rem;margin:.75rem 0 0;display:flex}.program-row[data-v-e8ab784a]{text-align:left;border:1px solid var(--color-border);border-left:4px solid var(--color-border);background:var(--color-surface-2);width:100%;color:var(--color-text);font:inherit;cursor:pointer;border-radius:6px;grid-template-columns:minmax(6rem,1fr) minmax(7rem,1fr) minmax(0,2fr) minmax(0,2fr);align-items:baseline;gap:.25rem .75rem;padding:.45rem .75rem;display:grid}.program-row.active[data-v-e8ab784a]{border-left-color:var(--color-primary);background:var(--color-primary-tint)}.p-name[data-v-e8ab784a]{font-weight:600}.p-meta[data-v-e8ab784a],.p-label[data-v-e8ab784a]{color:var(--color-text-2);font-size:.85rem}.p-label[data-v-e8ab784a]{margin-right:.35rem}.p-cell[data-v-e8ab784a]{font-variant-numeric:tabular-nums}.p-wide[data-v-e8ab784a]{color:var(--color-text-3);grid-column:span 2}.program-detail[data-v-e8ab784a]{color:var(--color-text-2);margin:.75rem 0 0;font-size:.9rem}.program-edit[data-v-e8ab784a]{flex-direction:column;gap:.6rem;margin:.5rem 0;padding:0;list-style:none;display:flex}.program-edit li[data-v-e8ab784a]{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .5rem;display:grid}.program-edit input[data-v-e8ab784a]{min-width:0;padding:.4rem;font-size:1rem}.program-edit-actions[data-v-e8ab784a]{flex-wrap:wrap;grid-column:1/-1;gap:.35rem;display:flex}.solar[data-v-e8ab784a]{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.5rem}.solar summary[data-v-e8ab784a]{cursor:pointer;font-weight:600}.solar-badge[data-v-e8ab784a]{background:var(--color-success-tint);color:var(--color-success);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:.5rem;padding:.05rem .45rem;font-size:.85rem}.solar-head[data-v-e8ab784a]{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.5rem 0;display:flex}.solar-head label[data-v-e8ab784a]{color:var(--color-text-2);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.solar-summary[data-v-e8ab784a]{grid-template-columns:minmax(10rem,1fr) minmax(0,3fr);align-items:center;gap:1rem;margin-bottom:.75rem;display:grid}.solar-kpi[data-v-e8ab784a]{background:var(--color-success-tint);border-left:4px solid var(--color-success);border-radius:6px;flex-direction:column;gap:.2rem;padding:.75rem 1rem;display:flex}.solar-bar[data-v-e8ab784a]{background:var(--color-surface-2);border-radius:7px;height:14px;display:flex;overflow:hidden}.seg.pv[data-v-e8ab784a],.dot.pv[data-v-e8ab784a]{background:var(--color-warning)}.seg.bat[data-v-e8ab784a],.dot.bat[data-v-e8ab784a]{background:var(--color-success)}.seg.grid[data-v-e8ab784a],.dot.grid[data-v-e8ab784a]{background:var(--color-text-3)}.solar-legend[data-v-e8ab784a]{color:var(--color-text-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.25rem 1rem;margin-top:.4rem;font-size:.85rem;display:flex}.dot[data-v-e8ab784a]{border-radius:50%;width:.65rem;height:.65rem;margin-right:.3rem;display:inline-block}.solar-runs[data-v-e8ab784a]{border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.85rem}.solar-runs th[data-v-e8ab784a],.solar-runs td[data-v-e8ab784a]{text-align:left;white-space:nowrap;padding:.25rem .75rem .25rem 0}.solar-runs th[data-v-e8ab784a]{color:var(--color-text-2);font-weight:600}.solar-runs tbody tr[data-v-e8ab784a]{border-top:1px solid var(--color-border)}@media (width<=900px){.suggestions[data-v-e8ab784a]{grid-template-columns:repeat(2,minmax(0,1fr))}.plant-charts[data-v-e8ab784a]{grid-template-columns:minmax(0,1fr)}.grid[data-v-e8ab784a]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.suggestions[data-v-e8ab784a],.solar-summary[data-v-e8ab784a],.grid[data-v-e8ab784a],.row2[data-v-e8ab784a]{grid-template-columns:minmax(0,1fr)}.grid label.wide[data-v-e8ab784a]{grid-column:auto}.program-row[data-v-e8ab784a]{grid-template-columns:minmax(0,1fr) auto}.program-row .p-cell[data-v-e8ab784a]{grid-column:1/-1}.program-row .p-meta[data-v-e8ab784a]{text-align:right}.table-scroll[data-v-e8ab784a]{width:100%;overflow-x:auto}.chart-wrap[data-v-e8ab784a]{height:220px}.modal-content[data-v-e8ab784a]{border-radius:0;width:100%;max-width:none;height:100%;max-height:none}.modal-backdrop[data-v-e8ab784a]{align-items:stretch}}.virtual-control[data-v-1cd10ce7]{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:.4rem;display:inline-flex}.virtual-switch[data-v-1cd10ce7]{border:1px solid var(--color-border,#ccc);background:var(--color-text-3,#bbb);cursor:pointer;border-radius:999px;width:2.4rem;height:1.3rem;padding:0;transition:background .15s;position:relative}.virtual-switch.on[data-v-1cd10ce7]{background:var(--color-success,#2e7d32)}.virtual-switch .knob[data-v-1cd10ce7]{background:#fff;border-radius:50%;width:1rem;height:1rem;transition:left .15s;position:absolute;top:.1rem;left:.1rem}.virtual-switch.on .knob[data-v-1cd10ce7]{left:1.25rem}.virtual-number[data-v-1cd10ce7]{gap:.3rem;display:inline-flex}.virtual-number input[data-v-1cd10ce7]{width:5.5rem}.error-inline[data-v-1cd10ce7]{color:var(--color-danger,#c62828);font-size:.8rem}.value-label[data-v-0006bd63]{color:var(--color-text-2);font-size:.8rem}.value-line[data-v-0006bd63]{font-size:1rem}.widget-title[data-v-0006bd63]{margin-bottom:.3rem;font-size:.9rem;font-weight:600}.hint-inline[data-v-0006bd63]{color:var(--color-text-3);font-size:.8rem;font-style:italic}.appliance-tile[data-v-0006bd63]{flex-direction:column;gap:.5rem;display:flex}.appliance-row[data-v-0006bd63]{flex-direction:column;display:flex}.appliance-time[data-v-0006bd63]{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.appliance-time.best[data-v-0006bd63]{color:var(--color-success)}.gauge[data-v-0006bd63]{width:100%;max-width:160px;margin:0 auto;display:block}.gauge-track[data-v-0006bd63]{fill:none;stroke:var(--color-border);stroke-width:10px;stroke-linecap:round}.gauge-value[data-v-0006bd63]{fill:none;stroke-width:10px;stroke-linecap:round}.gauge-value-text[data-v-0006bd63]{text-align:center;margin-top:-.5rem;font-size:1.1rem;font-weight:600}.tank[data-v-0006bd63]{border:2px solid var(--color-border);background:var(--color-surface);border-radius:3px;width:2.2rem;height:4.5rem;margin:.3rem auto;position:relative;overflow:hidden}.tank-fill[data-v-0006bd63]{transition:height .2s;position:absolute;bottom:0;left:0;right:0}.tank-value[data-v-0006bd63]{text-align:center;font-weight:600}.mini-list[data-v-0006bd63]{flex-direction:column;gap:.3rem;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex;overflow-y:auto}.mini-list-dot[data-v-0006bd63]{border-radius:50%;width:.5rem;height:.5rem;margin-right:.3rem;display:inline-block}.mini-list-time[data-v-0006bd63]{color:var(--color-text-2);margin-right:.3rem}.widget-charts[data-v-0006bd63]{flex-direction:column;gap:.5rem;width:100%;height:100%;display:flex}.value-grid[data-v-0006bd63]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.4rem;display:grid}.value-cell[data-v-0006bd63]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:.1rem;padding:.3rem .5rem;display:flex}.counter-baseline-actions[data-v-0006bd63]{flex-wrap:wrap;gap:.4rem;margin-top:.3rem;display:flex}.counter-baseline-actions button[data-v-0006bd63]{min-height:2rem}.overview-header[data-v-a2dde8cd]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.overview-header h2[data-v-a2dde8cd]{margin:0;font-size:1.1rem}.overview-actions[data-v-a2dde8cd]{align-items:center;gap:.5rem;display:flex}.overview-actions button.on[data-v-a2dde8cd],.dashboard-switcher button.on[data-v-a2dde8cd]{background:var(--nav-active-bg);color:var(--nav-active-text)}.dashboard-switcher[data-v-a2dde8cd]{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.dashboard-manage[data-v-a2dde8cd]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;flex-direction:column;gap:.6rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.manage-row[data-v-a2dde8cd]{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.manage-row label[data-v-a2dde8cd]{flex-direction:column;gap:.2rem;min-width:0;font-size:.85rem;display:flex}.share-label[data-v-a2dde8cd]{flex:18rem}.share-label input[data-v-a2dde8cd]{box-sizing:border-box;width:100%}.copy-ok[data-v-a2dde8cd]{color:var(--color-success,var(--color-primary));align-self:center;font-size:.85rem}.hint-text.inline[data-v-a2dde8cd]{flex-basis:auto;align-self:center}button.danger[data-v-a2dde8cd]{color:var(--color-danger)}.widget-toolbar[data-v-a2dde8cd]{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.hint-label[data-v-a2dde8cd]{color:var(--color-text-2);font-size:.85rem}.widget-toolbar button.on[data-v-a2dde8cd]{background:var(--nav-active-bg);color:var(--nav-active-text)}.widget-add-form[data-v-a2dde8cd]{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.overview-board[data-v-a2dde8cd]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;width:100%;height:70vh;position:relative}.overview-board.editing[data-v-a2dde8cd]{touch-action:none;border-style:dashed}.overview-board.show-grid[data-v-a2dde8cd]{background-image:linear-gradient(to right, color-mix(in srgb, var(--color-border) 55%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--color-border) 55%, transparent) 1px, transparent 1px);background-size:2.5% 2.5%}.overview-tile[data-v-a2dde8cd]{background:var(--color-surface);border:1px solid var(--color-border);box-sizing:border-box;border-radius:4px;flex-direction:column;display:flex;position:absolute;overflow:hidden}.tile-content[data-v-a2dde8cd]{box-sizing:border-box;flex-direction:column;flex:auto;gap:.15rem;min-height:0;padding:.4rem .6rem;display:flex;overflow:auto}.overview-board.editing .overview-tile[data-v-a2dde8cd]{cursor:grab}.overview-tile.selected[data-v-a2dde8cd]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.tile-resize-handle[data-v-a2dde8cd]{z-index:2;cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg, transparent 55%, var(--color-text-3) 55%, var(--color-text-3) 62%, transparent 62%, transparent 72%, var(--color-text-3) 72%, var(--color-text-3) 79%, transparent 79%), linear-gradient(135deg, transparent 50%, var(--color-surface-2) 50%);border-bottom-right-radius:3px;width:1.4rem;height:1.4rem;position:absolute;bottom:0;right:0}.overview-tile.selected .tile-resize-handle[data-v-a2dde8cd],.tile-resize-handle[data-v-a2dde8cd]:hover{background:linear-gradient(135deg, transparent 55%, var(--color-primary) 55%, var(--color-primary) 62%, transparent 62%, transparent 72%, var(--color-primary) 72%, var(--color-primary) 79%, transparent 79%), linear-gradient(135deg, transparent 50%, var(--color-surface-2) 50%)}@media (pointer:coarse){.tile-resize-handle[data-v-a2dde8cd]{width:2.2rem;height:2.2rem}}.snap-guide[data-v-a2dde8cd]{z-index:3;pointer-events:none;position:absolute}.snap-guide.vertical[data-v-a2dde8cd]{border-left:1px dashed var(--color-primary);width:0;top:0;bottom:0}.snap-guide.horizontal[data-v-a2dde8cd]{border-top:1px dashed var(--color-primary);height:0;left:0;right:0}.toolbar-sep[data-v-a2dde8cd]{background:var(--color-border);align-self:stretch;width:1px;margin:0 .3rem}.grid-toggle[data-v-a2dde8cd]{align-items:center;gap:.25rem;font-size:.85rem;display:inline-flex}.snap-hint[data-v-a2dde8cd]{font-style:italic}.hint-inline[data-v-a2dde8cd]{color:var(--color-text-3);text-align:center;justify-content:center;align-items:center;padding:1rem;font-style:italic;display:flex;position:absolute;inset:0}.widget-settings[data-v-a2dde8cd]{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-top:.75rem;padding:.75rem 1rem;display:flex}.widget-settings-header[data-v-a2dde8cd]{flex-basis:100%;align-items:center;gap:.5rem;display:flex}.widget-settings label[data-v-a2dde8cd]{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.widget-settings input[type=number][data-v-a2dde8cd]{width:6rem}.hint-text[data-v-a2dde8cd]{color:var(--color-text-3);flex-basis:100%;margin:0;font-size:.85rem;font-style:italic}@media (width<=700px){.overview-board[data-v-a2dde8cd]:not(.editing){flex-direction:column;gap:.6rem;height:auto;display:flex}.overview-board:not(.editing) .overview-tile[data-v-a2dde8cd]{min-height:4rem;position:static;width:100%!important;height:auto!important}.snap-hint[data-v-a2dde8cd]{display:none}}main[data-v-c6cdbf31]{color:var(--color-text);margin:.6rem 0 1.5rem;padding:0 1rem;font-family:system-ui,sans-serif}.page-header[data-v-c6cdbf31]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-header h1[data-v-c6cdbf31]{margin:0;font-size:1.4rem}.user-bar[data-v-c6cdbf31]{white-space:nowrap;flex:none;align-items:center;gap:.5rem;display:flex}.site-select[data-v-c6cdbf31]{padding:.35rem;font-size:.9rem}.tab-bar[data-v-c6cdbf31]{border-bottom:1px solid var(--color-border);gap:.5rem;margin:1rem 0;display:flex}.tab-bar button[data-v-c6cdbf31]{cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.5rem 1rem}.tab-bar button.active[data-v-c6cdbf31]{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:600}.shell[data-v-c6cdbf31]{align-items:flex-start;gap:1.5rem;display:flex}.main-column[data-v-c6cdbf31]{flex:1 1 0;min-width:0}.mobile-only[data-v-c6cdbf31]{display:none}.unit-focus-bar[data-v-c6cdbf31]{margin-bottom:.75rem}.unit-focus-bar button[data-v-c6cdbf31]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:.3rem 0;font-size:.9rem}.layout-toolbar[data-v-c6cdbf31]{justify-content:flex-end;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.split-toggle[data-v-c6cdbf31]{gap:.25rem;display:flex}.split-toggle button[data-v-c6cdbf31]{background:var(--color-surface-2);border:1px solid var(--color-border);width:2rem;height:2rem;color:var(--color-text-2);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;display:flex}.split-toggle button.on[data-v-c6cdbf31]{background:var(--nav-active-bg);border-color:var(--nav-active-bg);color:var(--nav-active-text)}.layout[data-v-c6cdbf31]{align-items:flex-start;gap:1.5rem;display:flex}.layout.vertical[data-v-c6cdbf31]{flex-direction:column;align-items:stretch}.layout.vertical .chart-column[data-v-c6cdbf31]{order:4;height:calc(100vh - 260px);position:static;width:100%!important}.layout.vertical .resize-handle[data-v-c6cdbf31]{cursor:row-resize;order:2;width:100%;height:6px;margin:-.25rem 0}.layout.vertical .resize-handle[data-v-c6cdbf31]:after{width:auto;height:2px;inset:2px 0 auto}.layout.vertical .table-column[data-v-c6cdbf31]{flex:none;order:1}.chart-column[data-v-c6cdbf31]{flex:none;grid-template-rows:auto auto auto 1fr;gap:.4rem;min-width:0;height:calc(100vh - 180px);display:grid;position:sticky;top:1rem}.chart-stack[data-v-c6cdbf31]{grid-auto-rows:1fr;gap:.5rem;min-height:0;display:grid}.chart-stack[data-v-c6cdbf31]>*{min-height:0}.table-column[data-v-c6cdbf31]{flex:1 1 0;min-width:0;height:calc(100vh - 180px);overflow:auto}.resize-handle[data-v-c6cdbf31]{cursor:col-resize;z-index:1;flex:none;align-self:stretch;width:6px;margin:0 -.25rem;position:relative}.resize-handle[data-v-c6cdbf31]:after{content:"";background:var(--color-border);width:2px;position:absolute;top:0;bottom:0;left:2px}.resize-handle[data-v-c6cdbf31]:hover:after{background:var(--color-primary)}.collapse-toggle[data-v-c6cdbf31]{width:2rem;height:2rem;color:var(--color-text-2);background:var(--color-surface-2);border:1px solid var(--color-border);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;display:flex}.chart-placeholder[data-v-c6cdbf31]{border:1px dashed var(--color-border);color:var(--color-text-3);text-align:center;border-radius:6px;padding:2rem 1rem}@media (width<=900px){.shell[data-v-c6cdbf31]{display:block}.sidebar-only[data-v-c6cdbf31]{display:none}.mobile-only[data-v-c6cdbf31]{display:flex}.tab-bar[data-v-c6cdbf31]{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.tab-bar button[data-v-c6cdbf31]{flex:none}.page-header[data-v-c6cdbf31]{flex-wrap:wrap}.user-bar[data-v-c6cdbf31]{flex-wrap:wrap;min-width:0;max-width:100%}.site-select[data-v-c6cdbf31]{min-width:0;max-width:100%}.layout[data-v-c6cdbf31]{flex-direction:column;align-items:stretch}.chart-column[data-v-c6cdbf31]{height:auto;position:static;width:100%!important}.table-column[data-v-c6cdbf31]{flex:auto;height:auto}.resize-handle[data-v-c6cdbf31]{display:none}}.hint[data-v-c6cdbf31]{color:var(--color-text-2)}.error[data-v-c6cdbf31]{color:var(--color-danger);background:var(--color-danger-tint);border-radius:4px;padding:.75rem}.link-toggle[data-v-c6cdbf31]{margin-bottom:.5rem;font-size:.9rem}.views-bar[data-v-c6cdbf31]{gap:.5rem;margin-bottom:.5rem;display:flex}.views-bar select[data-v-c6cdbf31],.views-bar input[data-v-c6cdbf31]{flex:1;min-width:0;padding:.35rem;font-size:.9rem}.views-bar button[data-v-c6cdbf31]{white-space:nowrap;flex:none}.table-toolbar[data-v-c6cdbf31]{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.search-input[data-v-c6cdbf31]{box-sizing:border-box;flex:1;min-width:12rem;padding:.5rem;font-size:1rem}.new-tag-button[data-v-c6cdbf31],.column-toggle[data-v-c6cdbf31]{white-space:nowrap;flex:none}.filter-chip[data-v-c6cdbf31]{white-space:nowrap;background:var(--color-primary-tint);color:var(--color-primary);border:1px solid var(--color-primary);cursor:pointer;border-radius:999px;flex:none;padding:.3rem .7rem;font-size:.85rem}.favorites-filter-toggle[data-v-c6cdbf31]{white-space:nowrap;cursor:pointer;flex:none}.favorites-filter-toggle.active[data-v-c6cdbf31]{background:var(--color-primary-tint);color:var(--color-primary);border-color:var(--color-primary)}.favorite-star[data-v-c6cdbf31]{cursor:pointer;color:var(--color-text-3);background:0 0;border:none;padding:.1rem .3rem;font-size:1.1rem;line-height:1}.favorite-star.active[data-v-c6cdbf31]{color:#e6b800}.settings-row label[data-v-c6cdbf31]{flex-direction:column;gap:.35rem;margin-bottom:.75rem;font-size:.9rem;display:flex}.settings-row-value[data-v-c6cdbf31]{align-items:center;gap:.5rem;display:flex}.settings-row-inline[data-v-c6cdbf31]{align-items:center;flex-direction:row!important;gap:.4rem!important}.quiet-hours-times[data-v-c6cdbf31],.quiet-hours-days[data-v-c6cdbf31]{flex-wrap:wrap;gap:.25rem .9rem;display:flex}.theme-picker[data-v-c6cdbf31]{flex-wrap:wrap;gap:.5rem;margin-top:.35rem;display:flex}.theme-swatch[data-v-c6cdbf31]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:.35rem .6rem;font-size:.85rem;display:flex}.theme-swatch.active[data-v-c6cdbf31]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.theme-swatch-dots[data-v-c6cdbf31]{gap:2px;display:inline-flex}.theme-swatch-dots span[data-v-c6cdbf31]{border:1px solid #00000026;border-radius:50%;width:.6rem;height:.6rem;display:inline-block}.custom-theme-editor[data-v-c6cdbf31]{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:.4rem;margin-top:.5rem;padding-top:.5rem;display:grid}.custom-theme-editor input[type=color][data-v-c6cdbf31]{border:1px solid var(--color-border);border-radius:4px;width:1.75rem;height:1.75rem;padding:0}.custom-theme-editor button[data-v-c6cdbf31]{grid-column:1/-1}.charts-only[data-v-c6cdbf31]{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);gap:.5rem;height:calc(100vh - 170px);display:grid}.charts-page-toolbar[data-v-c6cdbf31]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.charts-page-toolbar .link-toggle[data-v-c6cdbf31]{margin-bottom:0}.charts-page-grid[data-v-c6cdbf31]{grid-auto-rows:1fr;gap:.5rem;min-width:0;min-height:0;display:grid}.charts-page-grid[data-v-c6cdbf31]>*{min-width:0;min-height:0;margin:0}:is(.charts-page-grid[data-v-c6cdbf31]:fullscreen,.chart-column[data-v-c6cdbf31]:fullscreen){background:var(--color-surface);box-sizing:border-box;width:100vw;height:100vh;padding:1rem;overflow:auto}.charts-page-grid[data-v-c6cdbf31]:fullscreen{display:flex}.chart-column[data-v-c6cdbf31]:fullscreen{flex-direction:column;gap:1rem;display:flex;position:static}:is(.chart-column:fullscreen>.views-bar[data-v-c6cdbf31],.chart-column:fullscreen>.link-toggle[data-v-c6cdbf31]){display:none}.modal-backdrop[data-v-c6cdbf31]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content[data-v-c6cdbf31]{background:var(--color-surface);border-radius:8px;width:90%;max-width:420px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-content form[data-v-c6cdbf31]{max-width:none}table[data-v-c6cdbf31]{border-collapse:separate;border-spacing:0;width:100%;margin:0}th[data-v-c6cdbf31],td[data-v-c6cdbf31]{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.5rem}thead th[data-v-c6cdbf31]{background:var(--color-surface);z-index:1;box-shadow:0 1px 0 var(--color-border);position:sticky;top:0}.actions button[data-v-c6cdbf31]{margin-right:.5rem}button.danger[data-v-c6cdbf31]{color:var(--color-danger)}.hint-inline[data-v-c6cdbf31]{color:var(--color-text-3);font-style:italic}.push-devices ul[data-v-c6cdbf31]{gap:.4rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.push-devices li[data-v-c6cdbf31]{border:1px solid var(--color-border);border-radius:6px;justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem .6rem;display:flex}.push-device-own[data-v-c6cdbf31]{background:var(--color-primary-tint);color:var(--color-primary);border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-size:.75rem}.modal-content form[data-v-c6cdbf31]{gap:.75rem;max-width:400px;display:grid}.modal-content label[data-v-c6cdbf31]{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.link-toggle label[data-v-c6cdbf31]{align-items:center;gap:.4rem;display:flex}input[data-v-c6cdbf31]{padding:.4rem;font-size:1rem}.form-actions[data-v-c6cdbf31]{gap:.5rem;display:flex}@media (width<=700px){main[data-v-c6cdbf31]{padding:0 .6rem}.page-header .hint-inline[data-v-c6cdbf31]{display:none}.user-bar[data-v-c6cdbf31]{flex:100%}.site-select[data-v-c6cdbf31]{flex:10rem}.tab-bar button[data-v-c6cdbf31]{padding:.5rem .7rem}.table-scroll[data-v-c6cdbf31]{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-scroll thead th[data-v-c6cdbf31]{position:static}.cell-wrap[data-v-c6cdbf31]{white-space:normal;min-width:8rem}.chart-column[data-v-c6cdbf31],.resize-handle[data-v-c6cdbf31],.layout-toolbar[data-v-c6cdbf31]{display:none}.modal-content[data-v-c6cdbf31]{border-radius:0;width:100%;max-width:100%;height:100%;max-height:100dvh}}
