:root{--font-family: "Segoe UI", Selawik, "Segoe UI Symbol", Tahoma, Arial, sans-serif;--font-family-mono: Consolas, monospace;--font-family-dump: Consolas, "Cascadia Mono", monospace;--font-size-xs: 10px;--font-size: 12px;--font-size-tab: 13px;--font-size-m: 14px;--font-size-logo: 15px;--font-size-l: 16px;--font-size-overlay: 18px;--font-size-xl: 20px;--line-height: 16px;--font-weight-normal: normal;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-light: 300;--color-text: #333333;--color-text-muted: #808080;--color-text-strong: #000;--color-text-param: var(--color-text-strong);--color-text-tab: #2d2c2f;--color-text-tab-inactive: #808485;--color-text-disabled: #a9a9a9;--color-text-placeholder: #666666;--color-text-inverse: #fff;--color-icon-active: #0c4b9d;--color-openknx-green: #449841;--color-openknx-green-light: #5fae59;--color-openknx-green-hover: #6db867;--color-openknx-bus-50: #eef7ed;--color-memory-partial: #f7fbf6;--color-shell-close-hover: rgba(0, 0, 0, .1);--color-shell-scroll-disabled: rgba(255, 255, 255, .4);--color-shell-logo-poc: #ffffff;--color-shell-logo-poc-bg: var(--color-accent);--color-surface: #ffffff;--color-surface-chrome: #f5f5f5;--color-surface-panel: #f5f6f7;--color-surface-panel-head: #f2f2f2;--color-surface-raised: #fbfbfb;--color-surface-hover: #e5f1fb;--color-surface-pressed: #cce4f7;--color-border-pressed: #99c9ef;--color-border-hover: #cce4f7;--color-tree-hover: #eaebec;--color-tree-scrollbar: #bdbdbd;--color-cat-tree-head: #eaeaea;--color-cat-tree-head-selected: #dcdcdc;--color-row-hover: #eef4fc;--color-row-selected: #dbeaff;--color-overlay-drop: rgba(0, 106, 177, .12);--color-link-target: #add8e6;--color-link-adorner: #d8d8d8;--color-link-adorner-text: #1a1a1a;--color-link-msg-question: #3794c2;--color-link-msg-warning: #d18b1b;--color-backdrop: rgba(0, 0, 0, .15);--color-shadow-dialog: rgba(0, 0, 0, .18);--color-shadow-menu: rgba(0, 0, 0, .08);--color-sysmsg-title-bg: #f0f3f9;--color-sysmsg-border: #999999;--color-sysmsg-foot-bg: #f0f0f0;--color-sysmsg-btn-frame: #646464;--color-sysmsg-btn-light: #ffffff;--color-sysmsg-btn-light2: #e3e3e3;--color-sysmsg-btn-dark: #696969;--color-sysmsg-btn-dark2: #a0a0a0;--color-sysmsg-text: #000000;--color-table-head-bg: #fafafa;--color-line: #dadbdc;--color-border: #cccccc;--color-border-tab: #dddddd;--color-col-head-line: #dddedf;--color-col-separator: #e4e4e5;--color-hr: #a0a0a0;--color-toggle: #797979;--color-ctrl-bg: #f2f2f2;--color-ctrl-border: #e5e5e5;--color-num-border: #cccccc;--color-text-border: #abadb3;--color-spin: #5c5c5c;--color-radio-border: #cecece;--color-radio-dot: #174a7c;--color-radio-dot-edge: #a4b8cc;--color-button-bg: #f0f0f0;--color-button-hover-border: #0078d7;--color-button-disabled-bg: #f4f4f4;--color-button-disabled-border: #e3e3e3;--color-button-disabled-text: #bcbcbc;--color-accent: #006ab1;--color-selection: #c3d0dd;--color-info-bg: #e9f1f7;--color-info-border: #3e78b3;--color-error-bg: #f0dede;--color-error-border: #c75150;--color-warning-bg: #fff4ce;--color-warning-border: #9d5d00;--color-highlight: #ffffc0;--color-search-hit: #ffff00;--color-search-icon: #5b5b5b;--color-search-clear: #0e0e0b;--color-search-chevron: #5e88be;--color-icon-catalog: #6d8fb8;--color-icon-cat-tree-head: #8f97a1;--color-icon-cat-chevron: #777;--color-icon-cat-tree: #555;--color-icon-channel: #a7a7a7;--color-icon-secure-off: #cccccc;--color-memory-unused: #b0b0b0;--color-menu-check-bg: #c3e0ee;--color-menu-check-border: #26a0da;--size-titlebar-h: 40px;--size-shell-logo-img: 28px;--font-size-logo-name: 15px;--size-shell-logo-line: 24px;--size-shell-logo-left: 12px;--size-shell-logo-gap: 9px;--size-shell-logo-w: 200px;--size-shell-tabs-h: 33px;--size-shell-tab-w: 196px;--size-shell-scroll-btn: 32px;--size-shell-scroll-gap: 20px;--size-shell-scroll-btn-gap: 4px;--size-shell-scroll-icon: 28px;--size-toolbar-h: 41px;--size-toolbar-btn-h: 32px;--size-tool-btn-h: 26px;--size-props-w: 365px;--size-props-head-h: 40px;--size-props-tabs-h: 44px;--size-props-tab-w: 114px;--size-props-rail-w: 40px;--size-props-rail-row: 40px;--size-rich-bar-h: 26px;--size-rich-btn: 22px;--size-rich-editor-h: 160px;--size-rich-compact-h: 64px;--size-rich-size-w: 46px;--size-rich-swatch: 16px;--size-bar-h: 32px;--size-tab-h: 27px;--size-tab-active-h: 28px;--size-device-title-h: 41px;--size-search-w: 192px;--size-search-w-help: calc(var(--size-search-w) + var(--size-field-btn-w));--size-search-h: 24px;--size-bar-inset: 4px;--size-import-dialog-w: 680px;--size-import-list-h: 320px;--size-online-dialog-w: 1100px;--size-online-dialog-h: 720px;--size-import-row-h: 22px;--size-import-bar-h: 8px;--size-row-progress-w: 72px;--size-pick-lead-w: 44px;--size-tree-w: 216px;--size-tree-border: 3px;--size-tree-head-h: 38px;--size-tree-row-h: 31px;--size-tree-toggle: 8px;--size-page-w: 535px;--size-page-inner-w: 532px;--size-label-w: 241px;--size-page-pad-x: 10px;--size-page-pad-y: 7px;--size-headline-h: 29px;--size-row-h: 31px;--size-row-pad: 3px;--size-sep-h: 26px;--size-hr-h: 15px;--size-grid-row-h: 30px;--size-ctrl-h: 22px;--size-text-h: 24px;--size-grid-num-h: 24px;--space-param-suffix: 8px;--size-time-w: 130px;--size-time-h: 18px;--size-time-row-h: 27px;--space-time-pad-x: 2px;--space-time-offset-x: -1px;--space-time-unit: 4px;--size-indent: 8px;--size-grid-base-w: 532px;--size-table-base-w: 510px;--size-table-head-h: 25px;--size-table-row-h: 26px;--size-table-rowhead-min-w: 31px;--size-table-spin-w: 20px;--size-table-spin-up-h: 14px;--size-table-spin-down-h: 10px;--opacity-table-spin-disabled: .5;--font-size-table-head: 12px;--size-cell-gap: 6px;--size-radio: 16px;--size-radio-item-h: 20px;--space-radio-text: 5px;--space-radio-gap: 10px;--space-radio-row-bottom: 8px;--space-info-pad-y: 10px;--space-info-pad-multi-y: 5px;--space-table-after-info: 8px;--size-info-min-h: 38px;--space-info-pad-x: 11px;--letter-spacing-sep: -.18px;--letter-spacing-sysmsg: -.24px;--size-info-glyph: 19px;--size-icon: 16px;--size-server-dir: 11px;--size-icon-l: 18px;--size-space-glyph: 18px;--size-col-head-h: 22px;--size-col-lead-w: 19px;--size-col-menu-w: 216px;--size-col-menu-item-h: 21px;--size-catalog-tree-w: 281px;--size-catalog-head-h: 32px;--size-catalog-table-head-h: 24px;--size-catalog-row-h: 20px;--size-status-cell: 22px;--size-status-icon: 14px;--size-status-content-w: 114px;--size-status-none-w: 6px;--size-status-none-h: 2px;--color-status-loaded: #69b14e;--color-status-loaded-border: #47a02b;--color-status-loaded-check: #ffffff;--color-status-none: #818382;--size-catalog-bottom-h: 33px;--size-help-h: 254px;--size-pane-border: 3px;--space-help-pad-y: 16px;--space-help-pad-x: 17px;--size-split-h: 250px;--size-split-w: 440px;--size-split-min-w: 300px;--size-splitter: 5px;--size-highlight-band-h: 28px;--size-highlight-band-time-h: 24px;--size-highlight-band-x: 7px;--size-highlight-label-h: 22px;--color-shadow-tile: rgba(0, 0, 0, .14);--color-shadow-project-tile: rgba(0, 0, 0, .28);--color-icon-folder: #e8ba64;--color-icon-line: #1a802e;--color-icon-line-rf: #3b82c4;--color-icon-line-ip: #ef6c00;--color-icon-router: #1a802e;--color-icon-device: #1a802e;--color-icon-tunnel: #808080;--color-topology-selected: #eaeaea;--color-tile-selected: #eaeaea;--color-tile-hover: #f7f7f7;--color-shadow-project-tile-hover: rgba(0, 0, 0, .4);--color-tile-focus-glow: #0b195b;--font-size-home: 18px;--size-home-pad-x: 15px;--size-home-pad-y: 24px;--size-home-section-gap: 24px;--size-home-title-gap: 12px;--size-home-badge-h: 23px;--size-tile-w: 264px;--size-tile-h: 254px;--size-tile-info-pad-t: 6px;--size-tile-info-pad-b: 8px;--size-tile-img-h: 170px;--size-tile-placeholder-frame: 1px;--color-tile-placeholder-frame: #9eb7d8;--size-tile-accent: 4px;--size-tile-gap: 16px;--size-tile-shadow-y: 2px;--size-tile-shadow-blur: 5px;--size-tile-shadow-hover-blur: 6px;--size-tile-focus-blur: 8px;--size-cover-preview-h: 166px;--space-cover-actions: 6px;--size-project-panel-w: 441px;--size-project-panel-border: 2px;--size-topology-row-h: 24px;--size-topology-pad-y: 4px;--size-topology-root-x: 7px;--size-topology-x: 19px;--size-topology-indent: 7px;--size-topology-step: 8px;--size-topology-step-trim: 2px;--color-tree-focus-bg: #dbeaff;--color-tree-focus-text: #0c4b9d;--size-topology-toggle-x: 18px;--size-topology-gap: 5px;--size-topology-count: 15px;--size-project-dock-h: 320px;--size-project-dock-w: 450px;--size-project-pane-min-w: 400px;--size-project-tree-min-w: 160px;--size-project-center-min-w: 240px;--size-line-address-b-w: 45px;--size-line-address-l-w: 32px;--size-address-gap: 11px;--size-address-t-spin-w: 58px;--size-address-t-fill-w: 36px;--size-spin-w: 24px;--size-spin-up-h: 12px;--size-spin-down-h: 11px;--color-prop-border: #cccccc;--color-spin-arrow: #1652a0;--color-spin-arrow-disabled: #acc1dc;--color-spin-disabled-bg: #fdfdfd;--size-select-pad-x: 9px;--color-select-chevron: #5e88be;--size-tool-menu-item-h: 32px;--size-split-arrow-w: 24px;--size-split-sep-h: 16px;--color-split-chevron: #8a8a8c;--color-split-open: #e0ecfd;--size-pane-divider: 12px;--size-pane-grip-w: 40px;--size-pane-grip-h: 2px;--color-pane-grip: #808485;--size-panel-pick-pad: 8px;--size-panel-pick-gap: 5px;--color-menu-open: #dbeaff;--color-menu-open-text: #0c4b9d;--color-menu-disabled: #919092;--color-menu-danger: #c75050;--size-menu-tile-min-w: 215px;--size-menu-tile-pad-r: 28px;--color-tab-hover: #eaeaea;--size-panel-chevron: 20px;--size-panel-chevron-right: 5px;--color-panel-chevron: #707072;--color-space-building: #8098b0;--color-space-neutral: #808080;--color-space-green: #007800;--color-space-part: #e8ba64;--color-usage-garden: #109810;--color-usage-parking: #3068c0;--color-usage-wood: #b88058;--color-usage-purple: #8870a0;--color-usage-box: #b8a880;--color-usage-blue: #7d9cc0;--color-usage-steel: #9098a0;--color-usage-light: #a8a8a8;--color-ga-main: #2800ff;--color-ga-middle: #008600;--color-ga: #ff0000;--color-func-light: #848587;--color-func-blind: #627593;--color-func-heat: #a0a1a4;--color-func-socket: #898e97;--color-func-custom: #666666;--color-trade: #868686;--color-check-text: #333333;--color-ga-sep: #080808;--size-ga-prefix-w: 45px;--size-ga-sep: 13px;--size-ga-value-w: 50px;--size-check: 16px;--font-size-check: 11px;--space-form-first: 12px;--space-form-label-ctl: 14px;--space-form-ctl-label: 17px;--space-form-pad-left: 11px;--space-form-pad-right: 12px;--space-form-pad-bottom: 9px;--size-form-desc-h: 130px;--size-form-select-pad-x: 7px;--size-form-input-pad-x: 8px;--color-form-placeholder: #808080;--color-form-disabled-border: #f0f0f0;--color-form-disabled-bg: #fcfcfc;--color-form-disabled-text: #c8c8c8;--space-form-radio-pitch: 1px;--size-form-check-pitch: 24px;--space-form-check-first: 22px;--space-value-pitch: 21px;--size-value-col: 139px;--space-value-gap: 8px;--font-size-value: var(--font-size);--color-check-on-bg: #dbeaff;--color-check-on-mark: #1552a0;--color-check-off-bg: #ececec;--color-check-off-text: #979797;--size-label-cap: 5px;--color-list-bg: #f2f2f2;--size-list-row-h: 18px;--size-list-indent: 15px;--color-list-selected-bg: #dbeaff;--color-list-selected-text: #0c4b9d;--size-list-min-h: 126px;--space-form-action: 5px;--size-form-action-pad-x: 8px;--color-form-action-text: #0c4b9d;--size-scrollbar: 14px;--color-scrollbar-thumb: #e5e5e5;--color-scrollbar-border: #dadbdc;--color-scrollbar-track: #ffffff;--size-clear: 16px;--size-field-h: 24px;--size-field-btn-w: 23px;--space-field-text-x: 6px;--space-field-text-bottom: 4px;--color-field-text: #333333;--color-field-disabled: rgba(255, 255, 255, .65);--size-popup-pad: 8px;--size-search-builder-w: 560px;--size-sb-field-w: 180px;--size-sb-op-w: 130px;--size-sb-value-w: 160px;--shadow-popup: 0 4px 12px var(--color-shadow-dialog);--size-date-w: 130px;--size-date-time-w: 160px;--size-calendar-w: 242px;--size-calendar-day-w: 32px;--size-calendar-day-h: 30px;--size-calendar-nav: 28px;--size-calendar-body-h: 206px;--size-calendar-foot-h: 30px;--color-touch-fab-bg: rgba(177, 219, 172, .65);--color-touch-fab-bg-pressed: rgba(132, 196, 126, .8);--color-touch-fab-border: #84c47e;--color-touch-fab-icon: #2c622b;--blur-touch-fab: 6px;--size-touch-fab: 44px;--size-touch-fab-icon: 24px;--shadow-touch-fab: 0 3px 10px rgba(0, 0, 0, .3);--color-touch-tip-bg: rgba(45, 44, 47, .88);--font-size-touch-tip: 11px;--radius-calendar: 4px;--color-calendar-selected-text: #ffffff;--font-size-calendar-weekday: 11px;--size-color-w: 104px;--size-color-white-w: 128px;--size-color-only-w: 40px;--size-color-fill: 14px;--size-color-popup-w: 242px;--size-color-sv-h: 140px;--size-color-hue-h: 16px;--size-color-preview-w: 32px;--size-color-preview-h: 28px;--size-color-swatch-h: 18px;--size-color-input-w: 32px;--size-color-handle: 12px;--size-color-check-w: 6px;--size-color-check-h: 10px;--size-tag-bar-gap: 6px;--size-tag-bar-h: 6px;--radius-tag-bar: 3px;--size-tag-chip-gap: 4px;--color-tag-light-edge: rgba(0, 0, 0, .3);--size-tag-chip-h: 22px;--space-check-gap: 4px;--size-tag-dot: 12px;--size-tag-suggest-max-h: 200px;--color-gradient-sv-white: linear-gradient(to right, #ffffff, rgba(255, 255, 255, 0));--color-gradient-sv-black: linear-gradient(to top, #000000, rgba(0, 0, 0, 0));--color-gradient-hue: linear-gradient(to right, #ff0000 0%, #ffff00 16.667%, #00ff00 33.333%, #00ffff 50%, #0000ff 66.667%, #ff00ff 83.333%, #ff0000 100%);--color-add-close: #c75050;--color-add-sub: #999999;--color-add-group-border: #d5dfe5;--color-add-disabled-text: #cbcacb;--color-add-btn-disabled-border: #f7f7f7;--color-add-btn-disabled-text: #dedede;--size-dialog-form-w: 500px;--color-button-focus-border: #114579;--color-button-focus-bg: #e5e5e5;--color-dialog-btn-hover-border: #b2b2b2;--color-dialog-btn-hover-bg: #e5e5e5;--color-dialog-btn-hover-text: #000000;--color-backdrop-dark: rgba(0, 0, 0, .5);--size-devinfo-w: 900px;--size-devinfo-h: 760px;--size-devinfo-col-w: 28%;--size-devinfo-spinner: 40px;--size-devinfo-spinner-s: 20px;--duration-spin: 1s;--size-select-item-h: 20px;--size-select-check-w: 20px;--size-select-search-h: 28px;--color-select-check: #4a922c;--color-select-group: #808080;--color-select-empty: #808080;--space-todo-pad: 10px;--space-todo-gap: 8px;--space-card-pad-y: 9px;--space-card-pad-x: 10px;--size-row-action: 24px;--size-object-ref-h: 24px;--size-empty-icon: 40px;--size-todo-row-h: 32px;--size-hist-dev-h: 32px;--size-hist-row-h: 26px;--size-hist-accent: 3px;--size-hist-empty-h: 96px;--font-size-hist-time: 11px;--duration-undo-flash: 1.5s;--size-undo-ring-gap: 1px;--size-undo-ring: 2px;--size-login-card-w: 400px;--space-login-card-pad: 32px;--size-login-card-radius: 12px;--size-login-ctl-h: 40px;--size-login-ctl-radius: 6px;--space-login-btn-gap: 12px;--size-login-focus-w: 2px;--color-login-border: #b8b8b8;--color-openknx-green-dark: #3a8337;--color-login-btn-disabled-bg: #b4d6b2}@font-face{font-family:Selawik;font-weight:300;font-style:normal;font-display:swap;src:url(selawkl-0ed6f426.woff2) format("woff2")}@font-face{font-family:Selawik;font-weight:400;font-style:normal;font-display:swap;src:url(selawk-0f11afe1.woff2) format("woff2")}@font-face{font-family:Selawik;font-weight:600;font-style:normal;font-display:swap;src:url(selawksb-83767c05.woff2) format("woff2")}@font-face{font-family:Selawik;font-weight:700;font-style:normal;font-display:swap;src:url(selawkb-e8e98963.woff2) format("woff2")}*{box-sizing:border-box}html,body{height:100%;margin:0}body{display:flex;flex-direction:column;font-family:var(--font-family);font-variant-emoji:text;font-size:var(--font-size);line-height:var(--line-height);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-openknx-green)}button,input,select,textarea{font:inherit;color:inherit}[hidden]{display:none!important}.shell-title{flex:none;display:flex;align-items:flex-end;height:var(--size-titlebar-h);background:var(--color-openknx-green);color:var(--color-text-inverse);user-select:none}.shell-logo{width:var(--size-shell-logo-w);height:var(--size-titlebar-h);flex:none;display:flex;align-items:center;gap:9px;padding-left:12px}.shell-logo-img{flex:none;width:var(--size-shell-logo-img);height:var(--size-shell-logo-img);display:block}.shell-logo--img{padding-left:var(--size-shell-logo-left);gap:var(--size-shell-logo-gap)}.shell-logo--img .shell-logo-text strong{font-size:var(--font-size-logo-name);line-height:var(--size-shell-logo-line);white-space:nowrap}.shell-logo-line2{font-weight:var(--font-weight-light)}.shell-logo-text{display:flex;flex-direction:column;line-height:14px}.shell-logo-text strong{font-size:var(--font-size-logo);font-weight:var(--font-weight-semibold)}.shell-logo-poc{position:relative;top:-3px;margin-left:-4px;padding:4px 5px;border-radius:2px;background:var(--color-shell-logo-poc-bg);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-shell-logo-poc);line-height:1}.shell-logo[hidden]{display:none}.shell-tabs{flex:1;display:flex;gap:4px;height:var(--size-shell-tabs-h);min-width:0;overflow:hidden}.shell-tab{position:relative;display:flex;align-items:center;gap:8px;width:var(--size-shell-tab-w);min-width:120px;height:var(--size-shell-tabs-h);padding:0 30px 0 10px;background:var(--color-openknx-green-light);color:var(--color-text-inverse);cursor:pointer;flex-shrink:1}.shell-tab:hover:not(.active){background:var(--color-openknx-green-hover)}.shell-tab.active{background:var(--color-surface-chrome);color:var(--color-text)}.shell-tab-icon{font-size:var(--size-icon-l);flex:none}.shell-tab-text{display:flex;min-width:0}.shell-tab-title{font-size:var(--font-size-tab);line-height:18px;font-weight:var(--font-weight-semibold);white-space:pre;overflow:hidden;text-overflow:ellipsis}.shell-tab.active .shell-tab-title{font-weight:var(--font-weight-normal);font-size:var(--font-size-m)}.shell-tab-close{position:absolute;right:6px;top:7px;width:18px;height:18px;border:0;padding:0;background:transparent;color:inherit;cursor:pointer;font-size:var(--font-size-m);display:none}.shell-tab.active .shell-tab-close,.shell-tab:hover .shell-tab-close{display:block}.shell-tab{width:auto;max-width:var(--size-shell-tab-w);flex:none;min-width:0}.shell-tab:not(:has(.shell-tab-close)){padding-right:12px}.shell-tab-text{display:grid;grid-template-columns:minmax(0,auto)}.shell-tab-title{grid-area:1 / 1;min-width:0}.shell-tab-text:after{content:attr(data-title);grid-area:1 / 1;min-width:0;height:0;overflow:hidden;visibility:hidden;white-space:pre;font-size:var(--font-size-m);font-weight:var(--font-weight-normal)}.shell-tab.is-settings,.shell-tab.is-diagnostics,.shell-tab.is-catalog{margin-left:auto;margin-right:4px}.shell-tab.is-catalog+.shell-tab.is-diagnostics,.shell-tab.is-catalog+.shell-tab.is-settings,.shell-tab.is-diagnostics+.shell-tab.is-settings{margin-left:0}.shell-tabs-strip{flex:0 1 auto;min-width:0;display:flex;gap:4px;height:var(--size-shell-tabs-h);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.shell-tabs-strip::-webkit-scrollbar{display:none}.shell-tabs-strip>.shell-tab.is-catalog,.shell-tabs-strip>.shell-tab.is-diagnostics,.shell-tabs-strip>.shell-tab.is-settings{margin-left:0;margin-right:0}.shell-tabs-scroll{flex:none;display:flex;gap:var(--size-shell-scroll-btn-gap);margin-left:calc(var(--size-shell-scroll-gap) - 4px)}.shell-tabs-scroll-btn{flex:none;display:flex;align-items:flex-start;padding-top:2px;justify-content:center;width:var(--size-shell-scroll-btn);height:var(--size-shell-tabs-h);border:0;background:var(--color-openknx-green-light);color:var(--color-text-inverse);cursor:pointer}.shell-tabs-scroll-btn .mdi{display:block;width:var(--size-shell-scroll-icon);height:var(--size-shell-scroll-icon);font-size:var(--size-shell-scroll-icon);line-height:var(--size-shell-scroll-icon)}.shell-tabs-scroll-btn:hover:not(:disabled){background:var(--color-openknx-green-hover)}.shell-tabs-scroll-btn:disabled{color:var(--color-shell-scroll-disabled);cursor:default}.shell-tabs.is-tab-dragging{user-select:none}.shell-tab.is-dragging{opacity:.5}.shell-tab.drop-before{box-shadow:inset 2px 0 var(--color-text-inverse)}.shell-tab.drop-after{box-shadow:inset -2px 0 var(--color-text-inverse)}.shell-tab-close:hover{background:var(--color-shell-close-hover)}.shell-body{flex:1;display:flex;min-height:0}.shell-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.drop-overlay{position:fixed;inset:40px 0 0;z-index:100;display:flex;align-items:center;justify-content:center;gap:12px;background:var(--color-overlay-drop);border:3px dashed var(--color-accent);color:var(--color-accent);font-size:var(--font-size-overlay);font-weight:var(--font-weight-semibold);pointer-events:none}.drop-overlay .mdi{font-size:36px}.wiped{max-width:480px;margin:96px auto;padding:0 16px}.wiped h1{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 12px}.wiped p{margin:0 0 16px}.shell-toolbar{flex:none;display:flex;align-items:center;gap:2px;height:var(--size-toolbar-h);padding:0 8px;background:var(--color-surface-chrome);border-bottom:1px solid var(--color-border);color:var(--color-text)}.shell-toolbar .spacer{flex:1}.nav-tools{display:inline-flex;align-items:center;gap:8px;margin-right:6px}.nav-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:var(--size-toolbar-btn-h);padding:0;border:1px solid transparent;background:transparent;color:var(--color-text-tab);cursor:pointer}.nav-btn .mdi{font-size:var(--size-icon);line-height:var(--size-icon)}.nav-btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.nav-btn:disabled{color:var(--color-text-disabled);cursor:default}.tool-sep{width:1px;height:22px;margin:0 6px;background:var(--color-border)}.toolbar-context{display:inline-flex;align-items:center;gap:6px;padding:0 4px;white-space:pre}.device-tools{display:inline-flex;align-items:center;gap:8px}#device-tools-sep{margin-right:4px}.tool-select{height:var(--size-tool-btn-h);max-width:260px;padding:0 22px 0 6px;border:1px solid var(--color-border);background:var(--color-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='4'%3E%3Cpath d='M0 0h7L3.5 4z' fill='%23333'/%3E%3C/svg%3E") no-repeat right 7px center;appearance:none;-webkit-appearance:none;color:var(--color-text)}.tool-check{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer}.tool-check input{margin:0;accent-color:var(--color-accent)}.shell-toolbar>.status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.shell-toast{position:fixed;right:16px;bottom:16px;z-index:300;display:flex;align-items:flex-start;gap:10px;max-width:420px;padding:10px 8px 10px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);box-shadow:0 2px 8px var(--color-shadow-tile);color:var(--color-text)}.shell-toast.is-offline{border-left-color:var(--color-error-border)}.shell-toast[hidden]{display:none}.shell-toast-icon{flex:none;font-size:var(--size-icon);line-height:18px;color:var(--color-accent)}.shell-toast.is-offline .shell-toast-icon{color:var(--color-error-border)}.shell-toast-text{flex:1;min-width:0;line-height:18px}.shell-toast-close{flex:none;width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--color-text-muted);font-size:var(--size-icon);line-height:18px;cursor:pointer}.shell-toast-close:hover{color:var(--color-text)}.connection-tools{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;margin-left:4px}.connection-tools[hidden]{display:none}.conn-sel{width:200px;max-width:100%;min-width:0;flex:0 1 200px}.conn-sel .ui-sel-body{display:inline-flex;align-items:center;gap:6px}.conn-sel .ui-sel-text{flex:1;min-width:0}.conn-sel .conn-ic{flex:none;font-size:var(--size-icon);line-height:1;color:var(--color-text-muted)}.conn-sel.is-none .ui-sel-text{color:var(--color-text-muted);font-style:italic}.conn-sel.is-auto .ui-sel-text{font-style:italic}.conn-sel.st-on .conn-ic{color:var(--color-openknx-green)}.conn-sel.st-busy .conn-ic{color:var(--color-accent)}.conn-sel.st-idle .conn-ic{color:var(--color-text-muted)}.conn-sel.st-err .conn-ic{color:var(--color-error-border)}.server-status{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--size-tool-btn-h);height:var(--size-tool-btn-h);margin-left:6px;color:var(--color-text-disabled)}.server-status[hidden]{display:none}.server-status>.mdi{font-size:var(--size-icon-l);line-height:1;transition:color .15s}.server-status .dir{position:absolute;right:-1px;bottom:0;display:none;font-size:var(--size-server-dir);line-height:1;color:var(--color-accent);background:var(--color-surface-chrome);border-radius:50%}.server-status.is-read .dir.down,.server-status.is-write .dir.up{display:block;animation:server-status-blink .5s steps(2,jump-none) infinite}.server-status.is-off{color:var(--color-error-border)}.server-status.is-off>.mdi:before{content:"\f048f"}@keyframes server-status-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.server-status *{animation:none!important}}.tool-btn.icon-only{width:30px;justify-content:center;padding:0}.icon-btn{border:0;background:transparent;cursor:pointer;padding:2px 4px;font-size:var(--size-icon);color:var(--color-text-muted)}.icon-btn:hover{color:var(--color-text)}.tool-btn{display:inline-flex;align-items:center;gap:6px;height:var(--size-tool-btn-h);padding:0 8px;border:1px solid transparent;background:transparent;color:var(--color-text);cursor:pointer;white-space:nowrap}.shell-toolbar .tool-btn{height:var(--size-toolbar-btn-h)}.tool-btn .mdi{font-size:var(--size-icon)}.tool-btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.tool-btn:disabled{color:var(--color-text-disabled);cursor:default}.tool-btn.is-pressed{background:var(--color-surface-pressed);border-color:var(--color-border-pressed)}.tool-split{display:inline-flex;align-items:center}.tool-split.has-menu>.tool-btn:not(.tool-btn-drop){padding-right:4px}.tool-btn-drop{position:relative;width:var(--size-split-arrow-w);justify-content:center;padding:0;color:var(--color-split-chevron)}.tool-btn-drop:before{content:"";position:absolute;left:-1px;top:50%;height:var(--size-split-sep-h);margin-top:calc(var(--size-split-sep-h) / -2);border-left:1px solid var(--color-border)}.tool-btn-drop:hover:before,.tool-btn-drop.is-open:before,.tool-btn.is-pressed+.tool-btn-drop:before{display:none}.tool-btn-drop.is-open{background:var(--color-split-open)}.tool-split.has-menu>.tool-btn-drop:before{display:none}.tool-split.has-menu>.tool-btn:not(.tool-btn-drop){border-right-width:0}.tool-split.has-menu>.tool-btn-drop{border-left-width:0}.tool-split.has-menu:hover>.tool-btn-drop,.tool-split.has-menu>.tool-btn.is-pressed+.tool-btn-drop,.tool-btn-drop.is-open{color:var(--color-text)}.tool-split.has-menu:has(>.is-pressed)>.tool-btn{background:var(--color-surface-pressed);border-color:var(--color-border-pressed)}.tool-split.has-menu:hover>.tool-btn:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.tool-split.has-menu:has(>.is-open)>.tool-btn{background:var(--color-surface-pressed);border-color:var(--color-border-pressed)}.btn-row{padding-left:var(--size-label-w);display:flex;align-items:center;min-height:var(--size-row-h);padding-top:var(--size-row-pad);align-items:flex-start}.btn{display:inline-flex;align-items:center;gap:6px;height:var(--size-text-h);padding:0 12px;border:1px solid var(--color-text-border);background:var(--color-button-bg);cursor:pointer}.btn-row .btn{white-space:pre-wrap}.btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-button-hover-border)}.btn:disabled{background:var(--color-button-disabled-bg);border-color:var(--color-button-disabled-border);color:var(--color-button-disabled-text);cursor:default}.btn:disabled .ui-icon{opacity:.4}.mdi.is-rot90:before{transform:rotate(90deg)}.touch-menu-btn{position:fixed;z-index:150;box-sizing:border-box;width:var(--size-touch-fab);height:var(--size-touch-fab);padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-touch-fab-border);border-radius:50%;background:var(--color-touch-fab-bg);color:var(--color-touch-fab-icon);backdrop-filter:blur(var(--blur-touch-fab));-webkit-backdrop-filter:blur(var(--blur-touch-fab));box-shadow:var(--shadow-touch-fab);cursor:pointer;touch-action:manipulation}.touch-menu-btn .mdi{font-size:var(--size-touch-fab-icon)}.touch-menu-btn:active{background:var(--color-touch-fab-bg-pressed)}.touch-menu-tip{position:fixed;z-index:150;box-sizing:border-box;height:20px;padding:0 8px;border-radius:10px;background:var(--color-touch-tip-bg);color:var(--color-text-inverse);font-size:var(--font-size-touch-tip);line-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.touch-menu-tip[hidden]{display:none}.props{width:var(--size-props-w);flex:none;display:flex;flex-direction:column;min-height:0;background:var(--color-surface-chrome);border-left:1px solid var(--color-border);color:var(--color-text)}.props-head{flex:none;display:flex;align-items:center;gap:8px;height:var(--size-props-head-h);padding:0 10px 0 12px}.props-rail{flex:none;display:flex;flex-direction:column;width:var(--size-props-rail-w);box-sizing:border-box;background:var(--color-surface-chrome);border-left:1px solid var(--color-border)}.props-rail-row,.props-rail-item{flex:none;border-bottom:1px solid var(--color-border)}.props-rail-row{box-sizing:content-box;height:var(--size-props-rail-row)}.props-rail .props-collapse{display:block;width:24px;height:24px;margin:8px 0 0 7px}.props-rail-item{display:flex;align-items:flex-start;box-sizing:border-box;width:100%;height:var(--size-props-rail-row);padding:11px 0 0 11px;border-top:0;border-left:0;border-right:0;background:transparent;color:var(--color-text-tab);cursor:pointer}.props-rail-item .mdi{display:block;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon)}.props-rail-item:hover:not(:disabled){background:var(--color-surface-hover)}.props-rail-item:disabled{color:var(--color-text-disabled);cursor:default}.props-rail-item.is-active{background:var(--color-surface-pressed)}.props-rail-item.is-active .mdi{color:var(--color-icon-active)}.props-title{flex:1;font-size:var(--font-size-m)}.props-collapse{width:22px;height:22px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);cursor:pointer;padding:0;font-size:var(--font-size-m);color:var(--color-text)}.props-collapse:disabled{color:var(--color-text-disabled);cursor:default}.props-tabs{flex:none;display:flex;align-items:flex-start;box-sizing:border-box;height:var(--size-props-tabs-h);padding:0 10px;border-bottom:1px solid var(--color-border-tab)}.props-tabs button{flex:0 1 var(--size-props-tab-w);min-width:0;box-sizing:border-box;height:43px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;padding-top:4px;border:1px solid transparent;border-bottom:0;background:transparent;cursor:pointer;color:var(--color-text-tab-inactive);font:inherit;line-height:var(--line-height)}.props-tabs button .mdi{font-size:var(--size-icon);line-height:var(--size-icon)}.props-tabs button.active{height:var(--size-props-tabs-h);background:var(--color-surface-raised);border-color:var(--color-border-tab);color:var(--color-text-tab);padding-top:4px}.props-tabs button.active .mdi{color:var(--color-icon-active)}.props-tabs button:disabled{color:var(--color-text-disabled);cursor:default}.props-body{flex:1;overflow:auto;background:var(--color-surface-raised);padding:10px 12px 20px}.props-empty{height:100%;min-height:120px;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 20px;color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-tab)}.details-head h2{margin:0 0 2px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold);word-break:break-word}.details-head .muted{color:var(--color-text-muted)}.details-section h3{margin:14px 0 4px;padding-bottom:3px;border-bottom:1px solid var(--color-line);font-size:var(--font-size);font-weight:var(--font-weight-semibold)}.details-list{display:grid;grid-template-columns:max-content 1fr;gap:3px 10px;margin:0}.details-list dt{color:var(--color-text-muted)}.details-list dd{margin:0;word-break:break-word}.details-head h2,.details-head .muted,.details-section h3,.details-list dt,.details-list dd,.enum-list li{white-space:pre-wrap}.details-warning{display:flex;align-items:flex-start;gap:4px;color:var(--color-warning-border)}.details-warning-text{white-space:pre-line}.details-warning.is-error{color:var(--color-error-border)}.enum-list{list-style:none;margin:0;padding:0}.enum-list li{padding:1px 4px}.enum-list li.current{background:var(--color-selection)}.enum-list code{display:inline-block;min-width:22px;color:var(--color-text-muted);font-family:var(--font-family-mono)}.etsapp-slot[hidden]{display:none}.etsapp-notes{display:flex;flex-direction:column;gap:6px;margin-top:14px}.etsapp-note{display:flex;align-items:flex-start;gap:9px;padding:var(--space-info-pad-y) var(--space-info-pad-x);background:var(--color-info-bg);border:1px solid var(--color-info-border)}.etsapp-note>.ui-icon{font-size:var(--size-info-glyph);color:var(--color-info-border)}.etsapp-note>.ui-icon:before{position:relative;top:-2px;left:-3px}.etsapp-note-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.etsapp-note-app{display:flex;align-items:center;gap:6px;font-weight:var(--font-weight-semibold)}.etsapp-note-icon{flex:none;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);object-fit:contain}.etsapp-note-name,.etsapp-note-text{white-space:pre-wrap;word-break:break-word}.etsapp-note-help{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;color:var(--color-accent);text-decoration:none}.etsapp-note-help:hover{text-decoration:underline}.etsapp-note-help .mdi{font-size:var(--size-icon);line-height:var(--size-icon)}.project-info-body .etsapp-notes{margin:0 0 10px}.mem-view>.etsapp-slot{flex:none}.mem-view>.etsapp-slot .etsapp-notes{margin:0}.mem-view>.etsapp-slot .etsapp-note{border-width:0 0 1px}.details-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.details .etsapp-notes:first-of-type{margin-top:10px}.catalog{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--color-surface-panel);color:var(--color-text-strong)}.cat-top{flex:none;display:flex;height:var(--size-catalog-head-h);background:var(--color-surface-chrome);border-bottom:1px solid var(--color-border-tab)}.cat-pane-head{width:var(--size-catalog-tree-w);flex:none;display:flex;align-items:center;gap:8px;padding-left:9px;border-right:1px solid var(--color-border-tab);color:var(--color-text)}.cat-pane-head .mdi{font-size:var(--font-size-m);color:var(--color-icon-catalog)}.cat-toolbar{flex:1;display:flex;align-items:center;gap:2px;padding:0 var(--size-bar-inset);min-width:0}.cat-toolbar .spacer{flex:1}.cat-toolbar .tool-btn{height:var(--size-search-h);align-self:flex-start;margin-top:var(--size-bar-inset);padding:0 8px 0 7px}.cat-toolbar .tool-split{align-self:flex-start;margin-top:var(--size-bar-inset)}.cat-toolbar .tool-split>.tool-btn{margin-top:0}.cat-toolbar .tool-split.has-menu>.tool-btn:not(.tool-btn-drop){padding-right:4px}.cat-toolbar .tool-split>.tool-btn-drop{padding:0}.cat-body{flex:1;display:flex;min-height:0}.cat-tree-pane{width:var(--size-catalog-tree-w);flex:none;overflow:auto;background:var(--color-surface);border-right:1px solid var(--color-line)}.cat-tree-head{display:flex;align-items:center;gap:7px;height:24px;padding-left:4px;background:var(--color-cat-tree-head);font-weight:var(--font-weight-semibold);cursor:pointer}.cat-tree-head .mdi{font-size:var(--size-icon);color:var(--color-icon-cat-tree-head)}.cat-tree-head.selected{background:var(--color-cat-tree-head-selected)}.cat-tree-apps{margin-top:4px}.cat-tree-count{font-weight:400;color:var(--color-text-muted)}.cat-tree-list{list-style:none;margin:0;padding:0}.cat-tree-item{display:flex;align-items:center;height:24px;padding-right:6px;cursor:pointer;white-space:pre}.cat-tree-item:hover{background:var(--color-surface-hover)}.cat-tree-item.selected{background:var(--color-surface-pressed)}.cat-tree-chevron{width:12px;flex:none;font-size:var(--font-size-m);color:var(--color-icon-cat-chevron);text-align:center}.cat-tree-icon{width:var(--size-icon);flex:none;margin:0 4px 0 2px;font-size:var(--size-icon);color:var(--color-icon-cat-tree);text-align:center}.cat-tree-label{overflow:hidden;text-overflow:ellipsis;padding-left:1px}.cat-main{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--color-surface)}.cat-list{flex:1;overflow:auto}.cat-table{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%}.cat-table th,.cat-table td{height:var(--size-catalog-row-h);padding:0 5px;white-space:pre;overflow:hidden;text-overflow:ellipsis;text-align:left;font-weight:var(--font-weight-normal)}.cat-table thead th{position:sticky;top:0;z-index:1;height:var(--size-catalog-table-head-h);background:var(--color-surface-panel);border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);cursor:pointer;user-select:none}.cat-table.is-filtered thead th{background:var(--color-highlight)}.cat-table thead th:hover{background:var(--color-surface-hover)}.cat-table thead th.fill,.cat-table td.fill{border-right:0;cursor:default}.cat-table .group-row td{height:22px;cursor:pointer;padding-left:1px}.cat-table .data-row{cursor:default}.cat-table .data-row.odd td{background:var(--color-surface-raised)}.cat-table .data-row:hover td{background:var(--color-surface-hover)}.cat-table .data-row.selected td{background:var(--color-surface-pressed)}.cat-table .data-row:focus{outline:none}.cat-table .data-row:focus td{box-shadow:inset 0 1px var(--color-border-pressed),inset 0 -1px var(--color-border-pressed)}.cat-table .icon-col{padding:0 0 0 2px}.secure-icon{display:inline-block;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);vertical-align:middle;color:var(--color-openknx-green)}.pkg-icon{display:inline-block;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);vertical-align:middle;color:var(--color-icon-active)}.pkg-icon.is-off{color:var(--color-icon-secure-off)}.col-table td.lead .pkg-icon.mdi{color:var(--color-icon-active)}.col-table td.lead .pkg-icon.mdi.is-off,.secure-icon.is-off{color:var(--color-icon-secure-off)}.cat-table .data-row.is-locked td,.col-table tbody tr.is-locked td{color:var(--color-text-disabled)}.cat-table .data-row.is-locked .pkg-icon,.col-table tbody tr.is-locked .pkg-icon.mdi{color:var(--color-icon-secure-off)}.cat-app-icon{display:inline-block;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);vertical-align:middle;object-fit:contain;color:var(--color-text-muted)}.cat-table mark{background:var(--color-search-hit);color:inherit;padding:0}.cat-details{width:300px;flex:none;overflow:auto;background:var(--color-surface);border-left:1px solid var(--color-line);padding:10px 12px 20px;color:var(--color-text)}.details-empty{color:var(--color-text-muted);padding:10px 0}.cat-bottom{flex:none;display:flex;align-items:center;height:var(--size-catalog-bottom-h);padding:0 10px;background:var(--color-surface-panel);border-top:1px solid var(--color-border-tab);color:var(--color-text)}.empty-hint{margin:0;color:var(--color-text-muted)}.cat-main>.empty-hint{margin:12px}.catalog[hidden]{display:flex!important;position:absolute;width:0;height:0;overflow:hidden;content-visibility:hidden;pointer-events:none}.maker-icon{display:inline-block;flex:none;width:var(--size-icon);height:var(--size-icon);vertical-align:middle;background:center / var(--size-icon) var(--size-icon) no-repeat}.maker-icon-openknx{background-image:url(favicon-adc4e534.svg)}.device{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--color-surface-panel)}.device-titlebar{flex:none;height:var(--size-device-title-h);padding:0 15px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--color-line);background:var(--color-surface-panel)}.param-tools{flex:none;display:inline-flex;align-items:center;gap:2px;margin-right:-8px}.device-titlebar{container-type:inline-size}@container (max-width: 579px){.param-tools>.tool-btn{min-width:0!important}.param-tools>.tool-btn>:not(.mdi){display:none}}.device-title{flex:1;min-width:0;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold);white-space:pre;overflow:hidden;text-overflow:ellipsis}.workspace{flex:1;display:flex;min-height:0}.device-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.content{flex:1;overflow:auto;min-width:0;background:var(--color-surface);position:relative;isolation:isolate}.empty{padding:20px;color:var(--color-text-muted)}.device-tabs,.split-tabs{flex:none;display:flex;align-items:flex-end;height:var(--size-bar-h);padding:0 6px 0 4px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.device-tabs button[role=tab],.split-tabs button[role=tab]{display:inline-flex;align-items:center;gap:10px;height:var(--size-tab-h);margin-bottom:-1px;padding:0 9px;border:1px solid transparent;border-bottom:0;background:transparent;color:var(--color-text-tab);cursor:pointer;white-space:nowrap}.device-tabs button[role=tab]:not(.active):hover,.split-tabs button[role=tab]:not(.active):hover{height:var(--size-tab-active-h);padding-bottom:1px;background:var(--color-tab-hover)}.device-tabs button[role=tab] .mdi,.split-tabs button[role=tab] .mdi{font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-text-tab)}.device-tabs button[role=tab].active,.split-tabs button[role=tab].active{height:var(--size-tab-active-h);background:var(--color-surface-raised);border-color:var(--color-border-tab);padding-bottom:1px}.device-tabs button[role=tab].active .mdi,.split-tabs button[role=tab].active .mdi{color:var(--color-icon-active)}.tab-badge{min-width:16px;height:16px;padding:0 5px;margin-left:-1px;border-radius:2px;background:var(--color-border-tab);color:var(--color-text-tab);line-height:16px;text-align:center;font-size:var(--font-size)}.tab-badge:empty{display:none}.device-tabs .spacer{flex:1}.device-tabs,.split-tabs{container-type:inline-size}.device-tabs.is-icons>button[role=tab],.split-tabs.is-icons>button[role=tab]{min-width:0!important}.device-tabs.is-icons>button[role=tab]>:not(.mdi),.split-tabs.is-icons>button[role=tab]>:not(.mdi){display:none}.device-tabs.is-inactive-area button[role=tab].active .mdi,.split-tabs.is-inactive-area button[role=tab].active .mdi{color:var(--color-text-tab)}.sidebar{width:calc(var(--size-tree-w) + var(--size-tree-border));flex:none;display:flex;flex-direction:column;background:var(--color-surface-panel);border-right:var(--size-tree-border) solid var(--color-line);min-height:0}.tree{flex:1;overflow-y:auto;overflow-x:hidden;margin-right:-3px}.tree{scrollbar-width:thin;scrollbar-color:transparent transparent}.tree:hover{scrollbar-color:var(--color-tree-scrollbar) transparent}.tree-list{list-style:none;margin:0;padding:0}.tree-item{position:relative;display:flex;align-items:center;height:var(--size-tree-row-h);padding-right:8px;cursor:pointer;white-space:nowrap;color:var(--color-text)}.tree-toggle{position:relative;width:var(--size-tree-toggle);height:var(--size-tree-toggle);flex:none}.tree-icon{width:var(--size-icon);height:var(--size-icon);flex:none;font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-text);object-fit:contain}.tree-icon--empty{display:none}.tree-node--top>.tree-item .tree-icon--empty+.tree-label{margin-left:17px}.tree-label{overflow:hidden;text-overflow:ellipsis;white-space:pre}.tree-count{margin-left:auto;padding-left:8px;color:var(--color-text-muted);font-size:var(--font-size-xs)}.tree-toggle.mdi{display:flex;align-items:center;justify-content:center;font-size:var(--font-size);line-height:var(--size-tree-toggle);color:var(--color-toggle)}.tree-toggle.mdi:before{flex:none}.tree-node--top,.tree-node--top>.tree-children,.tree-item{box-shadow:inset -3px 0 0 var(--color-line)}.tree-node--top{border-bottom:1px solid var(--color-line);background:var(--color-surface-panel-head)}.tree-node--top>.tree-item{height:var(--size-tree-head-h);padding-left:10px}.tree-node--top>.tree-item .tree-icon{margin-left:17px;margin-right:7px}.tree-node--top>.tree-children{background:var(--color-surface-panel);padding:6px 0 4px;border-top:1px solid var(--color-line)}.tree-list--depth1>.tree-node>.tree-item{padding-left:40px}.tree-list--depth2>.tree-node>.tree-item{padding-left:60px}.tree-list--depth3 .tree-item{padding-left:80px}.tree-list--depth1 .tree-toggle,.tree-list--depth2 .tree-toggle,.tree-list--depth3 .tree-toggle{width:var(--size-tree-toggle);margin-left:-20px;margin-right:12px}.tree-list--depth1 .tree-icon,.tree-list--depth2 .tree-icon,.tree-list--depth3 .tree-icon{margin-right:7px}.tree-item{isolation:isolate}.tree-item:hover:not(.selected){background:var(--color-tree-hover)}.tree-item.selected{color:var(--color-accent);font-weight:var(--font-weight-bold)}.tree-item.selected:before{content:"";position:absolute;z-index:-1;inset:-1px 0 0 4px;background:var(--color-surface);border:1px solid var(--color-line);border-right:0}.tree-item.selected .tree-icon{color:var(--color-text)}.tree--flat .tree-item.selected:before{left:0;border-left:0}.tree-children .tree-item{padding-bottom:1px}.page{padding:var(--size-page-pad-y) var(--size-page-pad-x) 40px;width:max-content;min-width:calc(var(--size-page-w) + 2 * var(--size-page-pad-x))}.page-body{width:var(--size-page-w)}.ui-icon{display:inline-block;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);flex:none;object-fit:contain;vertical-align:middle}.param{display:grid;grid-template-columns:var(--size-label-w) minmax(0,1fr);align-items:start;min-height:var(--size-row-h);padding-top:var(--size-row-pad);padding-right:calc(var(--size-page-w) - var(--size-page-inner-w))}.ui-readonly{display:block;white-space:pre-wrap;line-height:var(--line-height)}.param-label,.param-value{min-height:var(--size-ctrl-h);display:flex;align-items:center;min-width:0}.param--text .param-label,.param--text .param-value{min-height:var(--size-text-h)}.param-label{gap:6px;padding-right:8px;padding-left:calc(var(--indent, 0) * var(--size-indent))}.param-text{white-space:pre-wrap}.param-value{gap:var(--space-param-suffix)}.param--time:not(.param--cell,.is-readonly){min-height:var(--size-time-row-h)}.param--time:not(.param--cell,.is-readonly) :is(.param-label,.param-value){min-height:var(--size-time-h)}.param-suffix{white-space:pre}.param-warning{color:var(--color-warning-border);cursor:help}.param-invalid{color:var(--color-error-border);cursor:help}.is-readonly .param-text{color:var(--color-text-muted)}.param-text,.param-suffix,.ui-readonly{color:var(--color-text-param)}.param:not(.param--cell):has(>.param-value>.ui-radio-group){padding-bottom:var(--space-radio-row-bottom)}.param:not(.param--cell):has(>.param-value>.ui-radio-group)>:is(.param-label,.param-value){min-height:var(--size-radio-item-h)}.param:not(.param--cell):has(>.param-value>.ui-radio-group)>.param-label{align-self:stretch}.param--picture{padding-top:0}.param--picture:not(.param--cell) .param-value{grid-column:2}.param--picture.param--cell{display:flex}.param--picture.param--cell .param-value{width:100%}.param--picture .param-label{display:none}.picture{display:block;max-width:100%;height:auto}.picture--right{margin-left:auto}.picture--center{margin:0 auto}.block-title{display:flex;align-items:center;gap:6px;min-height:var(--size-headline-h);margin:0;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.ui-select{width:100%;min-width:0;height:var(--size-ctrl-h);padding:0 20px 0 5px;border:1px solid var(--color-ctrl-border);border-radius:0;background-color:var(--color-ctrl-bg);color:var(--color-text);outline:none;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='4'%3E%3Cpath d='M0 0h7L3.5 4z' fill='%23333'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.ui-input{height:var(--size-ctrl-h);padding:0 7px;border:1px solid var(--color-ctrl-border);border-radius:0;background:var(--color-surface);color:var(--color-text-param);outline:none;width:100%;min-width:0}.ui-text{height:var(--size-text-h);border-color:var(--color-text-border);padding:0 4px}.ui-textarea{padding:3px 4px;line-height:var(--line-height);resize:none;font:inherit;display:block;overflow:hidden}:where(.param:not(.param--cell)) .ui-time{flex:none;width:var(--size-time-w);height:var(--size-time-h);padding:0 var(--space-time-pad-x);border-color:var(--color-text-border);margin-left:var(--space-time-offset-x);margin-right:calc(var(--space-time-unit) - var(--space-param-suffix))}.ui-select:focus,.ui-input:focus,.ui-updown:focus-within{border-color:var(--color-accent)}.ui-input:invalid{border-color:var(--color-error-border);background:var(--color-error-bg)}.ui-input.is-invalid,.ui-select.is-invalid,.ui-updown.is-invalid{border-color:var(--color-error-border);background-color:var(--color-error-bg)}.ui-updown.is-invalid .ui-input{background:transparent}.ui-input.is-warning{border-color:var(--color-warning-border);background:var(--color-warning-bg)}.ui-select.is-disabled,.ui-input:disabled{background-color:var(--color-ctrl-bg);color:var(--color-text-muted);cursor:default}.ui-updown{position:relative;display:flex;width:100%;height:var(--size-ctrl-h);border:1px solid var(--color-num-border);background:var(--color-surface)}.ui-updown .ui-input{border:0;height:100%;padding:0 4px;flex:1;background:transparent}.ui-updown-btns{display:flex;flex-direction:column;width:18px;flex:none}.ui-updown-btn{flex:1;border:0;padding:0;background:transparent;cursor:pointer;position:relative}.ui-updown-btn:before{content:"";position:absolute;left:50%;top:50%;border-left:3.5px solid transparent;border-right:3.5px solid transparent;transform:translate(-50%,-50%)}.ui-updown-up:before{border-bottom:4px solid var(--color-spin)}.ui-updown-down:before{border-top:4px solid var(--color-spin)}.ui-updown-btn:hover:before{filter:brightness(.5)}.ui-updown-btn:disabled:before{opacity:.35}.ui-updown.is-disabled{background:var(--color-ctrl-bg)}.param-value .ui-updown:not(:only-child){flex:1}.ui-color-rgbw{display:flex;align-items:center;gap:4px;min-width:0}.ui-color-w{width:48px;height:var(--size-field-h);padding:0 4px}.ui-color-rgbw.is-invalid .color-picker{border-color:var(--color-error-border);background:var(--color-error-bg)}.ui-radio-group{display:flex;flex-wrap:wrap;gap:0 var(--space-radio-gap);align-items:center}.ui-radio{display:inline-flex;align-items:center;gap:var(--space-radio-text);min-height:var(--size-radio-item-h);color:var(--color-text-param);cursor:pointer;white-space:pre-wrap}.ui-radio input{appearance:none;-webkit-appearance:none;margin:0;width:var(--size-radio);height:var(--size-radio);flex:none;border:1px solid var(--color-radio-border);border-radius:50%;background:var(--color-surface);cursor:pointer}.ui-radio input:checked{background:radial-gradient(circle,var(--color-selection) 0 3px,var(--color-radio-dot-edge) 3.5px,var(--color-radio-dot) 4px 4.5px,var(--color-surface) 5px)}.ui-radio input:disabled{background-color:var(--color-ctrl-bg);cursor:default}.ui-radio input:focus-visible{outline:1px dotted var(--color-text);outline-offset:1px}.ui-slider{display:flex;align-items:center;gap:8px;width:100%}.ui-range{flex:1;accent-color:var(--color-accent)}.ui-slider-value{min-width:32px;text-align:right}.ui-input.is-multi::placeholder{color:var(--color-form-placeholder);font-style:italic;opacity:1}.ui-input.is-multi{text-overflow:ellipsis}.ui-readonly.is-multi{color:var(--color-form-placeholder);font-style:italic}.param .ui-checkbox:indeterminate{appearance:none;-webkit-appearance:none;border:0;border-radius:0;background:linear-gradient(var(--color-icon-active),var(--color-icon-active)) center / 7px 7px no-repeat var(--color-check-on-bg)}.param .ui-checkbox:indeterminate:disabled{background:linear-gradient(var(--color-text-muted),var(--color-text-muted)) center / 7px 7px no-repeat var(--color-check-off-bg)}.separator{display:flex;align-items:center;gap:8px;width:var(--size-page-inner-w)}.separator-text{white-space:pre-wrap}.separator--text{min-height:var(--size-sep-h);padding:5px 0}.separator--headline{min-height:var(--size-headline-h);font-size:var(--font-size-m);font-weight:var(--font-weight-semibold);line-height:19px}hr.separator--horizontalruler{display:block;height:var(--size-hr-h);margin:0;border:0;background:linear-gradient(var(--color-hr),var(--color-hr)) 0 7px / 100% 1px no-repeat}.separator--information,.separator--error{align-items:flex-start;gap:9px;margin:5px 0 6px;padding:var(--space-info-pad-y) var(--space-info-pad-x)}.separator--text{align-items:flex-start}.separator--information{min-height:var(--size-info-min-h);padding-top:var(--space-info-pad-multi-y);padding-bottom:var(--space-info-pad-multi-y);align-items:center}.separator--information .ui-icon{align-self:flex-start;margin-top:calc(var(--space-info-pad-y) - var(--space-info-pad-multi-y))}.separator--information{background:var(--color-info-bg);border:1px solid var(--color-info-border)}.separator--information .ui-icon{color:var(--color-info-border)}.separator--text .separator-text,.separator--information .separator-text,.separator--error .separator-text{letter-spacing:var(--letter-spacing-sep)}.separator--information .ui-icon,.separator--error .ui-icon{font-size:var(--size-info-glyph)}.separator--information .ui-icon:before,.separator--error .ui-icon:before{position:relative;top:-2px;left:-3px}.separator--error{background:var(--color-error-bg);border:1px solid var(--color-error-border)}.separator--error .ui-icon{color:var(--color-error-border)}.grid{display:grid;align-items:start;width:max-content;grid-auto-rows:minmax(var(--size-grid-row-h),auto)}.grid-colhead{align-self:center;padding-right:var(--size-cell-gap);font-size:var(--font-size-m);font-weight:var(--font-weight-semibold);white-space:pre;overflow:hidden;text-overflow:ellipsis}.grid-rowhead{align-self:center;padding-right:6px;white-space:pre}.grid-cell{min-width:0;min-height:var(--size-grid-row-h);padding-right:var(--size-cell-gap);display:flex;align-items:center}.grid-cell>*{flex:1;min-width:0}.grid-cell .param{display:block;min-height:0;padding:0}.grid-cell .param-value{min-height:0}.grid-cell .ui-updown{height:var(--size-grid-num-h)}.grid-cell .separator{width:auto;min-height:0;padding:4px 0}.grid-cell .separator--information,.grid-cell .separator--error{padding:var(--space-info-pad-y) var(--space-info-pad-x);min-height:0;align-items:flex-start}.grid-cell .separator--information .ui-icon{margin-top:0}.grid-cell .btn-row{min-height:0;padding:0 0 0 4px}.grid-cell .btn{flex:1;min-width:0;margin-right:4px;padding:0 4px;justify-content:center;white-space:pre;overflow:hidden}.grid-cell .ui-checkbox{margin-left:1px}.grid-cell .param-value>.ui-readonly:last-child{flex:1}.grid-cell .ui-readonly{display:flex;align-items:center;min-height:var(--size-text-h)}.grid--table{border-top:1px solid var(--color-line);border-left:1px solid var(--color-line);grid-auto-rows:minmax(var(--size-table-row-h),auto);align-items:stretch}.grid--table>*{box-sizing:border-box;border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);min-width:0}.grid--table .grid-colhead,.grid--table .grid-rowhead{align-self:stretch;background:var(--color-table-head-bg);padding:0 0 0 9px;display:flex;align-items:center}.grid--table .grid-colhead{font-size:var(--font-size-table-head);font-weight:700;white-space:pre-wrap;text-overflow:clip;padding:3px 9px 4px}.grid--table .grid-rowhead{padding-right:9px;min-width:var(--size-table-rowhead-min-w)}.grid--table .grid-cell{padding:0;min-height:0;align-items:stretch}.grid--table .grid-cell .separator{padding:5px 5px 6px;display:flex;align-items:center}.grid--table .grid-cell .param,.grid--table .grid-cell .param-value,.grid--table .grid-cell .ui-select{height:100%}.grid--table .grid-cell .ui-text{height:100%;border-color:transparent;background:transparent}.grid--table .grid-cell .ui-text:focus{border-color:transparent;background:transparent}.grid--table .grid-cell .ui-select:focus{border-color:var(--color-ctrl-border)}.grid--table .grid-cell .ui-updown{height:100%;border:0;background:transparent}.grid--table .grid-cell .ui-updown .ui-input{padding-left:5px}.grid--table .grid-cell .ui-updown-btns{width:var(--size-table-spin-w)}.grid--table .grid-cell .ui-updown-btn{flex:none;outline:none}.grid--table .grid-cell .ui-updown-up{height:var(--size-table-spin-up-h)}.grid--table .grid-cell .ui-updown-down{height:var(--size-table-spin-down-h)}.grid--table .grid-cell .ui-updown-btn:disabled:before{opacity:var(--opacity-table-spin-disabled)}.separator--information+.block--table{margin-top:var(--space-table-after-info)}.page--table{width:auto;min-width:0;padding:0}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{height:26px;padding:0 8px;border-bottom:1px solid var(--color-surface-panel-head);text-align:left;white-space:nowrap}.data-table thead th{position:sticky;top:0;z-index:1;height:30px;background:var(--color-surface);border-bottom:1px solid var(--color-line);font-weight:var(--font-weight-semibold)}.data-table td.nr .mdi{color:var(--color-accent);margin-right:6px}.data-table .flag{width:24px;text-align:center;padding-left:2px;padding-right:2px}.data-table tbody tr:hover td{background:var(--color-surface-panel)}.data-table tr.selected td,.data-table tbody tr.selected:hover td{background:var(--color-selection)}.data-table tbody tr.is-drop-target td{background:var(--color-surface-pressed);box-shadow:inset 0 1px 0 var(--color-accent),inset 0 -1px 0 var(--color-accent)}.sort-arrow{margin-left:4px;font-size:var(--font-size-m);vertical-align:-2px}th.sortable{cursor:pointer;user-select:none}.group-toggle{font-size:var(--size-icon-l);vertical-align:middle;color:var(--color-text);margin-right:4px}.group-title{vertical-align:middle;font-weight:var(--font-weight-semibold)}.group-count{margin-left:6px;color:var(--color-text-muted);vertical-align:middle}.col-table{border-collapse:separate;border-spacing:0;width:100%;min-width:100%}.col-table th.fill,.col-table td.fill{width:100%;padding:0}.col-table .cv{overflow:hidden;white-space:pre;line-height:var(--line-height)}.col-table tbody td{vertical-align:top;padding:4px 2px 0 1px}.col-table .lead,.col-table thead th.lead{width:var(--size-col-lead-w);min-width:var(--size-col-lead-w);max-width:var(--size-col-lead-w);padding:0}.col-table tbody td.lead{padding:4px 0 0}.col-table td.lead .mdi{display:block;width:var(--size-icon);margin-left:2px;font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-accent)}.col-table .flag>.cv{width:var(--size-icon)}.col-table tbody tr.spacer td,.col-table tbody tr.spacer:nth-child(2n) td{padding:0;border:0;background:none}.col-table tbody tr:focus{outline:none}.col-table tbody tr.group-row td{padding:3px 0 0 1px;cursor:pointer;background:var(--color-surface)}.col-table tbody tr.group-row:hover td{background:var(--color-surface-panel)}.col-table .group-head{display:flex;align-items:center;gap:6px;height:var(--size-icon-l);white-space:pre}.col-table .group-head .group-toggle{flex:none;width:var(--size-icon-l);height:var(--size-icon-l);line-height:var(--size-icon-l);margin:0}.col-table .group-head .ui-icon{flex:none}.col-table .group-head .group-title{font-weight:var(--font-weight-semibold)}.col-table .group-head .group-count{margin-left:0}.col-table thead th{height:var(--size-col-head-h);padding:0 2px 0 5px;background:var(--color-surface-raised);border-bottom:1px solid var(--color-col-head-line);border-right:1px solid var(--color-col-separator);cursor:default;user-select:none}.col-table thead th.fill{border-right:0}.col-table thead th[data-key]{cursor:pointer}.col-table thead th.flag,.col-table tbody td.flag{padding-left:2px;padding-right:2px;text-align:center}thead th.is-dragging{opacity:.5}thead th.drop-before{box-shadow:inset 2px 0 var(--color-accent)}thead th.drop-after{box-shadow:inset -2px 0 var(--color-accent)}.col-grip{position:absolute;top:0;right:0;width:var(--size-splitter);height:100%;cursor:col-resize}.col-menu{position:fixed;z-index:200;box-sizing:content-box;min-width:var(--size-col-menu-w);background:var(--color-surface-chrome);border:1px solid var(--color-border-tab);box-shadow:1px 1px 2px var(--color-shadow-menu);color:var(--color-text);font-size:var(--font-size);user-select:none}.col-menu-item{display:flex;align-items:center;height:var(--size-col-menu-item-h);padding-right:24px;cursor:default;white-space:nowrap}.col-menu-item:hover{background:var(--color-surface-hover)}.col-menu-check{flex:none;box-sizing:border-box;width:var(--size-col-menu-item-h);height:var(--size-col-menu-item-h);display:flex;align-items:center;justify-content:center}.col-menu-check.is-on{background:var(--color-menu-check-bg);border:1px solid var(--color-menu-check-border)}.col-menu-check .mdi{font-size:var(--font-size-m);line-height:14px;color:var(--color-text)}.col-menu-text{margin-left:13px;line-height:var(--line-height)}.col-menu-sep{height:1px;margin:3px 0 3px 34px;background:var(--color-border-tab)}.col-table td .cell-select{box-sizing:border-box;display:block;width:100%;min-width:0;height:18px;margin:0;padding:0 2px;border:1px solid var(--color-accent);background:var(--color-surface);color:var(--color-text);font:inherit}.col-table td .cell-select:focus{outline:none}.col-table-host:focus{outline:none}.msg-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));padding:0;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size);box-shadow:0 4px 16px var(--color-shadow-dialog)}.msg-dialog::backdrop{background:var(--color-backdrop)}.msg-body{display:flex;gap:12px;padding:16px 16px 12px}.msg-icon{flex:none;font-size:32px;line-height:32px;color:var(--color-accent)}.msg-text{white-space:pre-wrap;line-height:var(--line-height);max-height:60vh;overflow:auto;padding-top:2px}.msg-buttons{display:flex;justify-content:flex-end;gap:5px;padding:10px 16px;background:var(--color-surface-chrome);border-top:1px solid var(--color-line)}.msg-btn{box-sizing:border-box;min-width:60px;height:var(--size-text-h);padding:0 11px;border:1px solid var(--color-border);background:var(--color-ctrl-bg);color:var(--color-text);font:inherit;cursor:pointer}.msg-btn:hover:not(:disabled){border-color:var(--color-dialog-btn-hover-border);background:var(--color-dialog-btn-hover-bg);color:var(--color-dialog-btn-hover-text)}.msg-btn.is-primary{border-color:var(--color-accent)}.msg-btn:disabled{color:var(--color-text-disabled);cursor:default}.msg-btn:focus-visible{outline:none;border-color:var(--color-button-focus-border);background:var(--color-button-focus-bg);box-shadow:0 0 2px var(--color-button-focus-border),inset 0 0 2px var(--color-button-focus-border)}.msg-text .msg-para{margin:12px 0 0;white-space:pre-wrap}.msg-text .msg-list{margin:2px 0 0;padding-left:20px;white-space:normal}.msg-text .msg-list li{white-space:pre-wrap}.msg-text .msg-more{list-style:none;margin-left:-20px;color:var(--color-text-muted)}.msg-dialog--system{width:fit-content;max-width:calc(100vw - 32px);border:1px solid var(--color-sysmsg-border);border-radius:8px;overflow:hidden;color:var(--color-sysmsg-text)}.msg-dialog--system .msg-title{display:flex;align-items:flex-start;height:30px;padding:6px 0 0 8px;box-sizing:border-box;background:var(--color-sysmsg-title-bg);line-height:var(--line-height)}.msg-dialog--system .msg-title-text{flex:1;white-space:nowrap}.msg-dialog--system .msg-close{flex:none;width:46px;height:30px;margin-top:-6px;padding:0 0 0 22px;border:0;background:transparent;color:var(--color-sysmsg-text);text-align:left;cursor:default}.msg-dialog--system .msg-close .mdi{display:block;width:17px;height:17px;margin-top:-3px;font-size:17px;line-height:17px}.msg-dialog--system .msg-close .mdi:before{display:block}.msg-dialog--system .msg-body{display:block;padding:23px 35px 23px 11px;background:var(--color-surface)}.msg-dialog--system .msg-text{max-width:370px;padding:0;line-height:13px;letter-spacing:var(--letter-spacing-sysmsg);overflow:visible;max-height:none}.msg-dialog--system .msg-buttons{gap:0;padding:9px 14px 10px;border-top:0;background:var(--color-sysmsg-foot-bg)}.msg-dialog--system .msg-btn{box-sizing:border-box;min-width:0;width:80px;height:23px;padding:0;border:1px solid var(--color-sysmsg-btn-frame);background:var(--color-sysmsg-foot-bg);color:var(--color-sysmsg-text);box-shadow:inset 1px 1px var(--color-sysmsg-btn-light),inset 2px 2px var(--color-sysmsg-btn-light2),inset -1px -1px var(--color-sysmsg-btn-dark),inset -2px -2px var(--color-sysmsg-btn-dark2);cursor:default}.msg-dialog--system .msg-btn:hover{background:var(--color-sysmsg-foot-bg)}.msg-dialog--system .msg-btn:focus-visible{outline:1px dotted var(--color-text);outline-offset:-4px}.splitter{flex:none;position:relative;z-index:5;touch-action:none}.splitter--right,.splitter--left{width:var(--size-splitter);margin:0 -2px 0 -3px;cursor:col-resize}.splitter--top{height:var(--size-splitter);margin:-2px 0 -3px;cursor:row-resize}[hidden]+.splitter--right,.splitter:has(+[hidden]){display:none}body.is-splitting{user-select:none}body.is-splitting-x,body.is-splitting-x *{cursor:col-resize!important}body.is-splitting-y,body.is-splitting-y *{cursor:row-resize!important}.help-body{line-height:1.45;color:var(--color-text)}.help-body h1,.help-body h2,.help-body h3,.help-body h4,.help-body h5,.help-body h6{margin:12px 0 6px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold);line-height:1.3}.help-body h1{font-size:var(--font-size-l)}.help-body p,.help-body ul,.help-body ol{margin:6px 0}.help-body ul,.help-body ol{padding-left:20px}.help-body code{font-family:var(--font-family-mono);background:var(--color-surface-panel-head);padding:0 3px}.help-body pre{background:var(--color-surface-panel-head);padding:8px;overflow:auto}.help-body table{border-collapse:collapse;margin:6px 0}.help-body th,.help-body td{border:1px solid var(--color-line);padding:2px 6px}.help-body blockquote{margin:6px 0;padding:4px 10px;border-left:3px solid var(--color-info-border);background:var(--color-info-bg)}.help-body a{color:var(--color-accent)}.help-pre{white-space:pre-wrap;font:inherit}.help-pane{height:var(--size-help-h);max-height:calc(100% - 80px);flex:none;display:flex;flex-direction:column;min-height:0;background:var(--color-surface-panel);border-top:var(--size-pane-border) solid var(--color-border)}.help-pane-head{display:none;flex:none;align-items:center;gap:8px;height:31px;padding:0 6px 0 10px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-line)}.help-pane-head>.mdi{font-size:var(--size-icon);color:var(--color-accent)}.help-pane-title{flex:1;font-weight:var(--font-weight-semibold)}.help-pane-body{flex:1;overflow:auto;padding:var(--space-help-pad-y) var(--space-help-pad-x) var(--space-help-pad-y)}.help-pane-body .help-body{line-height:var(--line-height)}.help-pane-body .help-body h1,.help-pane-body .help-body h2,.help-pane-body .help-body h3,.help-pane-body .help-body h4,.help-pane-body .help-body h5,.help-pane-body .help-body h6{margin:0 0 19px;font-size:var(--font-size-l);font-weight:var(--font-weight-normal);line-height:21px}.help-pane-body .help-body p,.help-pane-body .help-body ul,.help-pane-body .help-body ol,.help-pane-body .help-body blockquote{margin:0 0 16px}.help-pane-body .props-empty{display:none}.help-body blockquote>:first-child{margin-top:0}.help-body blockquote>:last-child{margin-bottom:0}.help-body hr{border:0;border-top:1px solid var(--color-line);margin:10px 0}.content:has(>.mem-view){overflow:hidden}.mem-view{display:flex;flex-direction:column;height:100%;min-height:0}.mem-head{flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:8px 10px;border-bottom:1px solid var(--color-line);background:var(--color-surface-panel)}.mem-stats{display:flex;flex-wrap:wrap;gap:4px 20px}.mem-stat{display:flex;flex-direction:column;line-height:15px}.mem-stat-v{font-weight:var(--font-weight-semibold)}.mem-stat-k{font-size:var(--font-size-xs);color:var(--color-text-muted)}.mem-stat.is-bad .mem-stat-v{color:var(--color-error-border)}.mem-stat.is-warning .mem-stat-v{color:var(--color-warning-border)}.mem-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 10px}.mem-body{flex:1;display:flex;min-height:0}.mem-dump{flex:none;overflow:auto;padding:4px 10px 20px;border-right:1px solid var(--color-line);font-family:var(--font-family-dump);font-size:var(--font-size);line-height:18px}.mem-row{display:flex;width:max-content;min-width:100%;white-space:pre}.mem-row>*{flex:none}.mem-row--head{position:sticky;top:-4px;z-index:1;background:var(--color-surface);color:var(--color-text-muted);border-bottom:1px solid var(--color-line)}.mem-addr{width:44px;color:var(--color-text-muted)}.mem-byte{width:22px;text-align:center;cursor:pointer;color:var(--color-memory-unused)}.mem-row--head .mem-byte{cursor:default;color:var(--color-text-muted)}.mem-byte:nth-child(9){margin-right:6px}.mem-byte.is-used{color:var(--color-text);background:var(--color-openknx-bus-50)}.mem-byte.is-partial{color:var(--color-text);background:var(--color-memory-partial)}.mem-byte.is-changed{color:var(--color-text);background:var(--color-warning-bg);box-shadow:inset 0 -2px 0 var(--color-warning-border)}.mem-byte.is-conflict{color:var(--color-text-inverse);background:var(--color-error-border)}.mem-byte.is-sel{background:var(--color-selection);color:var(--color-text)}.mem-byte.is-cursor,.mem-byte:hover{outline:1px solid var(--color-accent);outline-offset:-1px}.mem-byte--void{cursor:default}.mem-ascii{margin-left:12px;color:var(--color-text-muted)}.mem-list{flex:1;min-width:0;overflow:auto}.mem-list>.tool-btn{margin:6px 8px}.mem-table td{white-space:pre}.mem-table td.mono{font-family:var(--font-family-dump)}.mem-table td.num{text-align:right}.mem-table .mem-entry{cursor:pointer}.mem-table .mem-entry.is-skipped td{color:var(--color-text-muted)}.mem-table .mem-entry.is-conflict td{background:var(--color-error-bg)}.mem-table .mem-entry.is-conflict td.status{color:var(--color-error-border);font-weight:var(--font-weight-semibold)}.mem-table .mem-entry.is-changed td{background:var(--color-warning-bg)}.mem-table .mem-entry.is-warning td.status{color:var(--color-warning-border);font-weight:var(--font-weight-semibold)}.mem-more{padding:8px 10px;color:var(--color-text-muted)}@media(max-width:1300px){.mem-body{flex-direction:column}.mem-dump{flex:1 1 50%;min-height:0;border-right:0;border-bottom:1px solid var(--color-line)}.mem-list{flex:1 1 50%;min-height:0}}.content:has(>.ch-view){background:var(--color-surface-raised)}.ch-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.ch-table thead th.fill{border-right:0}.ch-table th,.ch-table td{height:var(--size-catalog-row-h);padding:0 6px;text-align:left;white-space:pre;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-strong)}.ch-table thead th{height:var(--size-catalog-table-head-h);font-weight:var(--font-weight-semibold);border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);background:var(--color-surface-raised);position:sticky;top:0}.ch-table td:first-child{padding-left:3px}.ch-table tbody tr{cursor:default}.ch-table tbody tr:hover td{background:var(--color-row-hover)}.ch-table tbody tr.selected td{background:var(--color-row-selected)}.ch-icon{display:inline-block;width:var(--size-icon);height:var(--size-icon);line-height:var(--size-icon);margin-right:4px;vertical-align:-4px;font-size:var(--size-icon);color:var(--color-icon-channel)}.ch-table td .ui-icon{margin-right:4px;vertical-align:-3px}.date-picker,.color-picker,.search-box{border:1px solid var(--color-border);background:var(--color-surface)}.date-picker,.color-picker{position:relative;display:inline-flex;flex:none;align-items:stretch;box-sizing:border-box;height:var(--size-field-h);vertical-align:middle}.date-picker:focus-within,.color-picker:focus-within{border-color:var(--color-accent)}.date-picker-input,.color-picker-input{flex:1 1 0;min-width:0;height:100%;box-sizing:border-box;margin:0;padding:0 var(--space-field-text-x) var(--space-field-text-bottom);border:0;border-radius:0;outline:none;background:transparent;color:var(--color-field-text);font:inherit;font-size:var(--font-size)}.date-picker-input::placeholder,.color-picker-input::placeholder{color:var(--color-form-placeholder);font-style:italic;opacity:1}.date-picker-input:disabled,.color-picker-input:disabled{background:transparent;color:var(--color-field-text)}.date-picker-button,.color-picker-button,.search-drop{flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--size-field-btn-w);height:100%;margin:0;padding:0;border:0;border-left:1px solid var(--color-border);background:transparent;cursor:pointer;color:var(--color-text-muted);font-size:var(--size-icon)}.date-picker-button:hover:not(:disabled),.color-picker-button:hover:not(:disabled),.search-drop:hover:not(:disabled){background:var(--color-surface-hover);border-left-color:var(--color-border-hover);color:var(--color-text)}.date-picker.is-open .date-picker-button,.color-picker.is-open .color-picker-button{background:var(--color-surface-pressed);border-left-color:var(--color-border-hover);color:var(--color-text)}.date-picker-button:disabled,.color-picker-button:disabled,.search-drop:disabled{cursor:default}.color-picker-button:focus-visible{outline:1px solid var(--color-accent);outline-offset:-2px}.date-picker.is-disabled:after,.color-picker.is-disabled:after{content:"";position:absolute;inset:0;z-index:2;background:var(--color-field-disabled)}.tool-menu,.date-calendar,.color-popup{position:fixed;border:1px solid var(--color-border-tab);background:var(--color-surface-chrome);color:var(--color-text);user-select:none}.date-calendar,.color-popup{z-index:1000;box-sizing:border-box;padding:var(--size-popup-pad);font-family:var(--font-family);font-size:var(--font-size);box-shadow:var(--shadow-popup)}.date-calendar button,.color-popup button{margin:0;padding:0;border:0;background:none;font:inherit;cursor:pointer}.date-calendar button:disabled,.color-popup button:disabled{cursor:default}.search-box{display:flex;flex:none;align-self:center;width:var(--size-search-w);height:var(--size-search-h)}.search-field{flex:1;display:flex;align-items:center;min-width:0;height:100%;padding-left:9px}.search-box.is-active .search-field{background:var(--color-highlight)}.search-icon{width:14px;height:14px;flex:none;font-size:var(--size-icon);line-height:14px;color:var(--color-search-icon);display:flex;align-items:center;justify-content:center}.search-field input{flex:1;min-width:0;height:100%;margin-left:11px;padding:0;border:0;background:transparent;outline:none;color:var(--color-text-tab);font:inherit}.search-field input::placeholder{color:var(--color-text-placeholder)}.search-field input::-webkit-calendar-picker-indicator{display:none!important}.search-clear{width:8px;height:100%;flex:none;margin:0 10px 0 6px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--color-search-clear);font-size:11px;line-height:1;display:flex;align-items:center;justify-content:center}.search-clear[hidden]{display:none}.search-drop,.search-drop:hover:not(:disabled){color:var(--color-search-chevron)}.search-drop:disabled{color:var(--color-text-disabled);cursor:default}.search-box.has-help{width:var(--size-search-w-help)}.search-help{flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--size-field-btn-w);height:100%;margin:0;padding:0;border:0;border-left:1px solid var(--color-border);background:transparent;cursor:pointer;color:var(--color-text-muted);font-size:var(--size-icon)}.search-help:hover,.search-help.is-open{background:var(--color-surface-hover);border-left-color:var(--color-border-hover);color:var(--color-text)}.search-help.is-open{background:var(--color-surface-pressed)}.search-box.is-invalid .search-field{background:var(--color-error-bg)}.search-box.is-invalid .search-field input{color:var(--color-error-border)}.search-menu{max-width:360px}.search-menu .tool-menu-item>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre}.device-tabs .search-box,.cat-toolbar .search-box{align-self:flex-start;margin-top:var(--size-bar-inset)}.cat-toolbar .search-box{flex:0 1 auto;min-width:120px}.device-tabs>.search-box,.project-devices-bar>.search-box{flex:0 1 auto;min-width:60px}.search-builder-popup{position:fixed;z-index:1000;box-sizing:border-box;width:min(var(--size-search-builder-w),96vw);overflow:hidden;display:flex;flex-direction:column;padding:var(--size-popup-pad);border:1px solid var(--color-border-tab);background:var(--color-surface-chrome);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size);box-shadow:var(--shadow-popup)}.sb-title{margin:0 0 var(--size-popup-pad);font-size:inherit;font-weight:var(--font-weight-semibold)}.sb-groups{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:auto}.sb-title,.sb-preview-label,.sb-preview,.sb-foot,.sb-more{flex:none}.sb-group{display:flex;flex-direction:column;gap:6px;padding:6px;border:1px solid var(--color-line);background:var(--color-surface)}.sb-row{display:grid;grid-template-columns:var(--size-sb-field-w) var(--size-sb-op-w) minmax(var(--size-sb-value-w),1fr) var(--size-field-h);gap:6px;align-items:center}.search-builder-popup .sb-select{flex:none;width:100%;height:var(--size-field-h);min-height:var(--size-field-h)}.search-builder-popup .sb-select .ui-sel-sizer{display:none}.sb-value{height:var(--size-field-h)}.sb-remove{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--size-field-h);height:var(--size-field-h);padding:0;border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);font-size:var(--size-icon);cursor:pointer}.sb-remove:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-text)}.sb-hint{margin-top:2px;color:var(--color-text-muted)}.sb-hint.is-error{color:var(--color-error-border)}.sb-row.is-invalid .sb-value,.search-builder-popup .sb-row.is-invalid .sb-select{border-color:var(--color-error-border);background-color:var(--color-error-bg)}.sb-adds{display:flex;gap:16px}.sb-add,.sb-toggle{display:inline-flex;align-items:center;gap:2px;padding:2px 0;border:0;background:transparent;font:inherit;cursor:pointer}.sb-add{color:var(--color-accent)}.sb-add:hover{text-decoration:underline}.sb-toggle{color:var(--color-text-muted)}.sb-toggle:hover{color:var(--color-text)}.sb-add:focus-visible,.sb-toggle:focus-visible,.sb-remove:focus-visible{outline:1px solid var(--color-accent);outline-offset:1px}.sb-and,.sb-or{display:flex;align-items:center;gap:8px;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.sb-and{margin:6px 0}.sb-or{margin:0;font-size:.9em;font-weight:400}.sb-and:before,.sb-and:after,.sb-or:before,.sb-or:after{content:"";flex:1;border-top:1px solid var(--color-line)}.sb-preview-label{margin:var(--size-popup-pad) 0 2px;color:var(--color-text-muted)}.sb-preview{box-sizing:border-box;min-height:var(--size-field-h);padding:3px 6px;border:1px solid var(--color-line);background:var(--color-ctrl-bg);font-family:var(--font-family-mono);overflow-wrap:anywhere;user-select:text}.sb-preview.is-empty{color:var(--color-text-muted);font-style:italic;font-family:var(--font-family)}.sb-more{margin-top:var(--size-popup-pad);max-height:200px;overflow:auto}.sb-syntax,.sb-fields{display:grid;grid-template-columns:max-content 1fr;gap:2px 16px;padding:0 4px}.sb-code{font-family:var(--font-family-mono)}.sb-foot{display:flex;align-items:center;gap:5px;margin-top:var(--size-popup-pad);padding-top:var(--size-popup-pad);border-top:1px solid var(--color-line)}.sb-foot .sb-toggle:first-child{margin-right:8px}.sb-spacer{flex:1}.tree-item.is-changed .tree-label{background:var(--color-highlight);margin-left:-3px;padding:0 3px;height:var(--size-highlight-label-h);line-height:var(--size-highlight-label-h)}.hl-layer{position:absolute;left:0;right:0;top:0;height:0;z-index:-1;pointer-events:none}.hl-band{position:absolute;left:var(--size-highlight-band-x);right:0;height:var(--size-highlight-band-h);background:var(--color-highlight)}.hl-band--time{height:var(--size-highlight-band-time-h)}.param--cell.is-changed :is(.ui-input,.ui-select,.ui-updown,.ui-readonly):not(.is-warning,.is-invalid,:invalid){background-color:var(--color-highlight)}.split-pane{flex:none;height:var(--size-split-h);display:flex;flex-direction:column;min-height:0;background:var(--color-surface-panel);border-top:var(--size-pane-border) solid var(--color-border)}.split-pane.is-vertical{height:auto;width:var(--size-split-w);min-width:var(--size-split-min-w);border-top:0;border-left:var(--size-pane-border) solid var(--color-border)}.device:has(>.split-pane.is-vertical:not([hidden])){display:grid;grid-template-columns:minmax(var(--size-split-min-w),1fr) auto auto;grid-template-rows:auto auto minmax(0,1fr)}.device:has(>.split-pane.is-vertical:not([hidden]))>:is(.device-tabs,.device-titlebar,.workspace){grid-column:1;min-width:0}.device:has(>.split-pane.is-vertical:not([hidden]))>.device-tabs{grid-row:1}.device:has(>.split-pane.is-vertical:not([hidden]))>.device-titlebar{grid-row:2}.device:has(>.split-pane.is-vertical:not([hidden]))>.workspace{grid-row:3;overflow:hidden}.device:has(>.split-pane.is-vertical:not([hidden]))>.splitter{grid-column:2;grid-row:1 / -1}.device:has(>.split-pane.is-vertical:not([hidden]))>.split-pane{grid-column:3;grid-row:1 / -1;min-height:0}.device:has(>.split-pane.is-vertical:not([hidden]))>.workspace>.sidebar,.split-pane.is-vertical .split-sidebar{flex-shrink:1;min-width:120px}.device:has(>.split-pane.is-vertical:not([hidden]))>.workspace>.device-main,.split-pane.is-vertical .split-content{min-width:120px}.device:has(>.split-pane.is-vertical:not([hidden]))>.device-tabs,.split-pane.is-vertical>.split-tabs{overflow:clip;overflow-clip-margin:1px}.split-pane.is-vertical{overflow:hidden}.split-pane.is-vertical .split-body .mem-body{flex-direction:column}.split-pane.is-vertical .split-body .mem-dump{flex:1 1 50%;border-right:0;border-bottom:1px solid var(--color-line)}.split-pane.is-vertical .split-body .mem-list{flex:1 1 50%}.split-main{flex:1;display:flex;min-height:0}.split-content{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.split-body{flex:1;min-width:0;min-height:0;overflow:auto;position:relative;isolation:isolate;background:var(--color-surface)}.split-body:has(>.mem-view){overflow:hidden}.split-body:has(>.ch-view){background:var(--color-surface-raised)}.split-body .mem-body{flex-direction:row}.split-body .mem-dump{flex:none;min-height:0;border-right:1px solid var(--color-line);border-bottom:0}.split-body .mem-list{flex:1;min-height:0}.form-dialog{position:fixed;box-sizing:border-box;width:min(var(--size-dialog-form-w),calc(100vw - 32px));max-height:none;padding:0;border:0;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size);line-height:var(--line-height);box-shadow:none;overflow:visible}.form-dialog::backdrop{background:var(--color-backdrop-dark)}.form-close{position:absolute;top:0;right:5px;width:45px;height:20px;padding:0;border:0;background:var(--color-add-close);color:var(--color-text-inverse);font-size:12px;line-height:20px;cursor:pointer}.form-close .mdi:before{font-size:12px}.form-body{padding:0 26px 26px}.form-dialog .form-title{margin:0 0 0 -1px;padding-top:24px;font-size:18.2px;font-weight:var(--font-weight-light);line-height:25px;color:var(--color-text)}.form-dialog .form-fields{margin-top:51px;gap:8px}.form-dialog .form-field{gap:6px}.form-dialog .form-label{font-weight:var(--font-weight-normal);color:var(--color-text-tab);line-height:var(--line-height)}.form-dialog .form-input{height:24px;padding:0 4px;border-color:var(--color-ctrl-border)}.form-dialog .form-input.is-multiline{height:auto;min-height:64px;padding:4px}.form-dialog .form-field--check{gap:6px}.form-dialog .form-field--check .form-label{color:var(--color-text)}.form-dialog .msg-buttons{justify-content:flex-end;gap:5px;height:35px;padding:5px 5px 0;border-top:1px solid var(--color-ctrl-border);background:var(--color-surface-panel)}.form-dialog .msg-btn.is-cancel{min-width:78px}.form-dialog .msg-btn.is-primary:focus-visible{border-color:var(--color-button-focus-border)}.form-main{display:flex;flex-direction:column;gap:10px;min-width:0}.form-title{padding-top:6px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.form-fields{display:flex;flex-direction:column;gap:8px}.form-field{display:flex;flex-direction:column;gap:3px}.form-label{font-weight:var(--font-weight-semibold)}.form-input{box-sizing:border-box;height:var(--size-text-h);padding:0 6px;border:1px solid var(--color-text-border);background:var(--color-surface);color:var(--color-text);font:inherit}.form-input:focus{outline:none;border-color:var(--color-accent)}.form-input.is-multiline{height:auto;min-height:64px;padding:4px 6px;resize:vertical}.form-error{min-height:var(--line-height);color:var(--color-error-border)}.form-note{white-space:pre-line;line-height:var(--line-height);color:var(--color-text-muted)}.form-note[hidden]{display:none}.form-note.is-warning{padding:4px 6px;background:var(--color-highlight);color:var(--color-text)}.form-field--check{flex-direction:row;align-items:center;gap:6px}.form-field--check .form-label{font-weight:var(--font-weight-normal)}.form-check{margin:0;accent-color:var(--color-accent)}.form-suggest{max-height:calc(8 * var(--size-tool-menu-item-h) + 2px);overflow-y:auto}.login-screen{position:fixed;inset:0;box-sizing:border-box;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:16px;border:0;background:var(--color-openknx-green);color:var(--color-text-inverse);font:inherit;font-size:var(--font-size);overflow:auto;overscroll-behavior:contain}.login-screen[open]{display:flex;flex-direction:column;align-items:center}.login-screen::backdrop{background:var(--color-openknx-green)}.login-brand{margin-top:auto;display:flex;flex-direction:column;align-items:center;flex:none}.login-logo{display:flex;align-items:center;justify-content:center;width:84px;height:84px;margin-bottom:16px;border-radius:10px;background:var(--color-surface);box-shadow:0 2px 8px var(--color-shadow-dialog)}.login-logo img{width:64px;height:64px}.login-name{margin-bottom:24px;font-size:22px;line-height:normal}.login-card{margin-bottom:auto;display:flex;flex-direction:column;flex:none;box-sizing:border-box;width:min(var(--size-login-card-w),calc(100vw - 32px));padding:var(--space-login-card-pad);padding-bottom:calc(var(--space-login-card-pad) + 8px);border-radius:var(--size-login-card-radius);background:var(--color-surface);color:var(--color-text);box-shadow:0 2px 8px var(--color-shadow-dialog)}.login-title{margin:0;font-size:20px;font-weight:var(--font-weight-semibold);line-height:28px;color:var(--color-text)}.login-sub{margin:4px 0 24px;color:var(--color-text-muted);line-height:var(--line-height)}.login-label{margin-bottom:6px;font-size:13px;font-weight:var(--font-weight-semibold);line-height:18px;color:var(--color-text-tab)}.login-field{position:relative}.login-input{box-sizing:border-box;width:100%;height:var(--size-login-ctl-h);padding:0 44px 0 12px;border:1px solid var(--color-login-border);border-radius:var(--size-login-ctl-radius);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:14px}.login-input:focus{outline:none;border-color:var(--color-accent);box-shadow:inset 0 0 0 calc(var(--size-login-focus-w) - 1px) var(--color-accent)}.login-input.is-invalid{border-color:var(--color-error-border);box-shadow:inset 0 0 0 calc(var(--size-login-focus-w) - 1px) var(--color-error-border)}.login-eye{position:absolute;top:0;right:0;width:var(--size-login-ctl-h);height:var(--size-login-ctl-h);padding:0;border:0;border-radius:var(--size-login-ctl-radius);background:none;color:var(--color-text-muted);font-size:18px;cursor:pointer}.login-eye:hover{color:var(--color-text)}.login-eye:focus-visible{outline:var(--size-login-focus-w) solid var(--color-accent);outline-offset:-2px}.login-action{position:relative;margin-top:var(--space-login-btn-gap)}.login-error{position:absolute;top:100%;left:0;right:0;margin-top:8px;display:flex;align-items:flex-start;gap:6px;color:var(--color-error-border);line-height:var(--line-height)}.login-error .mdi{visibility:hidden;flex:none;font-size:16px;line-height:var(--line-height)}.login-error.has-error .mdi{visibility:visible}.login-submit{box-sizing:border-box;width:100%;height:var(--size-login-ctl-h);padding:0 16px;border:0;border-radius:var(--size-login-ctl-radius);background:var(--color-openknx-green);color:var(--color-text-inverse);font:inherit;font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer}.login-submit:hover:not(:disabled){background:var(--color-openknx-green-dark)}.login-submit:focus-visible{outline:var(--size-login-focus-w) solid var(--color-accent);outline-offset:2px}.login-submit:disabled{background:var(--color-login-btn-disabled-bg);cursor:default}.import-dialog{width:min(var(--size-import-dialog-w),calc(100vw - 32px))}.import-head{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.import-title{padding-top:6px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.import-progress{display:flex;align-items:center;gap:10px}.import-progress[hidden]{display:none}.import-count{flex:none;min-width:64px;line-height:var(--line-height)}.import-bar{flex:1;height:var(--size-import-bar-h);border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden}.import-bar-fill{width:0;height:100%;background:var(--color-accent)}.import-main{padding:0 16px 12px}.import-list{max-height:min(var(--size-import-list-h),50vh);overflow:auto;border:1px solid var(--color-line);background:var(--color-surface)}.import-row{display:grid;grid-template-columns:16px minmax(0,1fr) 64px minmax(0,2fr);align-items:start;gap:8px;min-height:var(--size-import-row-h);padding:3px 6px;line-height:var(--line-height)}.import-row+.import-row{border-top:1px solid var(--color-line)}.import-icon{font-size:16px;line-height:var(--line-height);color:var(--color-text-muted)}.import-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-size{color:var(--color-text-muted);white-space:nowrap;text-align:right}.import-state{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.import-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-row.is-error .import-text,.import-row.is-conflict .import-text,.import-row.is-warning .import-text{white-space:normal;overflow-wrap:anywhere}.import-action{min-width:0;padding:0 10px}.import-row.is-running .import-icon{color:var(--color-accent)}.import-row.is-ok .import-icon{color:var(--color-openknx-green)}.import-row.is-same .import-icon{color:var(--color-info-border)}.import-row.is-conflict,.import-row.is-warning{background:var(--color-highlight)}.import-row.is-conflict .import-icon,.import-row.is-warning .import-icon{color:var(--color-text)}.import-row.is-error .import-icon,.import-row.is-error .import-state{color:var(--color-error-border)}.import-row.is-cancelled .import-state,.import-row.is-skipped .import-state,.import-row.is-waiting .import-state{color:var(--color-text-muted)}.import-note{margin-top:8px;white-space:pre-wrap;line-height:var(--line-height)}.import-note:empty{display:none}.import-action[hidden]{display:none}.import-file{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);line-height:var(--line-height)}.import-list.is-steps .import-row{grid-template-columns:16px minmax(0,2fr) minmax(0,3fr)}.import-report{display:flex;flex-direction:column;gap:10px;max-height:min(var(--size-import-list-h),40vh);overflow:auto;white-space:normal}.import-report-section h3{margin:0 0 4px;font-size:var(--font-size);font-weight:var(--font-weight-semibold)}.import-report-counts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:2px 16px;margin:0}.import-report-counts dt{color:var(--color-text-muted)}.import-report-counts dd{margin:0}.import-report-list{margin:0;padding-left:18px}.import-report-list li+li{margin-top:2px}.import-report-section.is-warnings h3{color:var(--color-error-border)}.import-row.is-detail .import-name{padding-left:14px;color:var(--color-text-muted)}.import-row.is-detail.is-warning .import-name,.import-row.is-detail.is-error .import-name{color:inherit}.recon-list{max-height:min(var(--size-import-list-h),50vh);overflow:auto}.recon-device+.recon-device{border-top:1px solid var(--color-line)}.recon-head{display:grid;grid-template-columns:16px 16px minmax(0,2fr) var(--size-row-progress-w) minmax(0,3fr);align-items:center;gap:8px;min-height:var(--size-import-row-h);padding:3px 6px;line-height:var(--line-height)}.recon-toggle{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:0;background:none;color:var(--color-text-muted);cursor:pointer;font-size:16px}.recon-icon{font-size:16px;line-height:var(--line-height);color:var(--color-text-muted)}.recon-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-semibold)}.recon-bar{height:var(--size-import-bar-h);border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden;box-sizing:content-box}.recon-bar-fill{display:block;width:0;height:100%;background:var(--color-accent)}.recon-state{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recon-device.is-running>.recon-head .recon-icon{color:var(--color-accent)}.recon-device.is-ok>.recon-head .recon-icon{color:var(--color-openknx-green)}.recon-device.is-ok .recon-bar-fill{background:var(--color-openknx-green)}.recon-device.is-error>.recon-head .recon-icon,.recon-device.is-error>.recon-head .recon-state{color:var(--color-error-border)}.recon-device.is-error .recon-bar-fill{background:var(--color-error-border)}.recon-device.is-warn>.recon-head .recon-icon,.recon-device.is-warn>.recon-head .recon-state{color:var(--color-warning-border)}.recon-device.is-warn .recon-bar-fill{background:var(--color-warning-border)}.recon-device.is-waiting>.recon-head .recon-state,.recon-device.is-skipped>.recon-head .recon-state,.recon-device.is-cancelled>.recon-head .recon-state{color:var(--color-text-muted)}.recon-steps{margin:0;padding:0 6px 3px 46px;list-style:none}.recon-steps[hidden],.recon-result[hidden]{display:none}.recon-step{display:grid;grid-template-columns:16px minmax(0,2fr) minmax(0,3fr);align-items:start;gap:8px;min-height:var(--size-import-row-h);padding:2px 0;line-height:var(--line-height);color:var(--color-text-muted)}.recon-step-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recon-step.is-running{color:var(--color-text)}.recon-step.is-running .recon-icon{color:var(--color-accent)}.recon-step.is-ok .recon-icon{color:var(--color-openknx-green)}.recon-step.is-error,.recon-step.is-error .recon-icon{color:var(--color-error-border)}.recon-step.is-error .recon-step-text{white-space:normal;overflow-wrap:anywhere}.recon-result{display:flex;flex-direction:column;gap:2px;padding:0 6px 4px 46px;line-height:var(--line-height)}.recon-summary,.recon-note{overflow-wrap:anywhere}.recon-note{color:var(--color-text-muted);white-space:pre-line}.recon-error,.recon-hint{display:flex;align-items:flex-start;gap:8px;overflow-wrap:anywhere}.recon-error,.recon-error .recon-icon{color:var(--color-error-border)}.recon-hint{margin:0 -6px;padding:1px 6px;background:var(--color-highlight)}.recon-hint .recon-icon{color:var(--color-text)}.recon-open{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;color:var(--color-accent);text-decoration:none}.recon-open:hover{text-decoration:underline}.recon-open .mdi{font-size:var(--size-icon);line-height:var(--size-icon)}.recon-prep-box[hidden]{display:none}.recon-prep{display:flex;flex-direction:column;gap:6px;padding:6px;line-height:var(--line-height)}.recon-prep-note{margin:0;color:var(--color-text-muted)}.recon-prep-loading{margin:0;padding:6px;color:var(--color-text-muted)}.recon-prep-error{margin:0;padding:6px;color:var(--color-error-border);overflow-wrap:anywhere}.recon-what{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;padding-bottom:6px;border-bottom:1px solid var(--color-line)}.recon-what-title{font-weight:var(--font-weight-semibold)}.recon-prep-list{display:flex;flex-direction:column}.recon-prep-device{padding:4px 0}.recon-prep-device+.recon-prep-device{border-top:1px solid var(--color-line)}.recon-prep-head{display:flex;align-items:center;gap:8px;min-height:var(--size-import-row-h)}.recon-prep-head .mdi{flex:none;font-size:var(--size-icon);line-height:var(--line-height)}.recon-prep-fields{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:2px 12px;margin:0;padding-left:24px}.recon-prep-label{color:var(--color-text-muted)}.recon-prep-value{margin:0;min-width:0;overflow-wrap:anywhere}.recon-prep-value .ui-sel{width:100%;max-width:100%}.recon-prep-apply{display:inline-flex;align-items:center;gap:4px}.recon-prep-apply .diag-params-warn{flex:none;font-size:var(--size-icon);line-height:var(--line-height);color:var(--color-warning-border)}.recon-prep-apply .diag-params-warn[hidden]{display:none}.recon-prep-why{display:flex;align-items:flex-start;gap:8px;margin:2px 0 0 24px;padding:1px 6px;background:var(--color-highlight);overflow-wrap:anywhere}.recon-prep-why .mdi{flex:none;font-size:var(--size-icon);line-height:var(--line-height)}.recon-prep-device.is-blocked .recon-name{color:var(--color-text-muted)}.recon-prep-online{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.recon-prep-online-hit{display:flex;align-items:center;gap:8px;max-width:100%}.recon-prep-online-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recon-prep-online-load{flex:none;display:inline-flex;align-items:center;gap:4px}.recon-prep-online-load .mdi{font-size:var(--size-icon);line-height:var(--line-height)}.recon-prep-online-note{color:var(--color-text-muted)}.recon-prep-online-note.is-error{color:var(--color-error-border)}.snapshot-dialog{width:min(var(--size-import-dialog-w),calc(100vw - 32px))}.snapshot-main{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.snapshot-title{padding-top:6px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.snapshot-list{max-height:min(var(--size-import-list-h),50vh);overflow:auto;border:1px solid var(--color-line);background:var(--color-surface);outline:none}.snapshot-list:focus-visible{border-color:var(--color-accent)}.snapshot-head,.snapshot-row{display:grid;grid-template-columns:var(--snapshot-cols, minmax(0, 1fr));align-items:center;gap:8px;min-height:var(--size-import-row-h);padding:3px 6px;line-height:var(--line-height)}.snapshot-head{position:sticky;top:0;z-index:1;background:var(--color-surface);border-bottom:1px solid var(--color-line);font-weight:var(--font-weight-semibold)}.snapshot-row+.snapshot-row{border-top:1px solid var(--color-line)}.snapshot-row{cursor:default}.snapshot-row:hover{background:var(--color-surface-panel)}.snapshot-row.is-selected,.snapshot-row.is-selected:hover{background:var(--color-selection)}.snapshot-cell{display:flex;align-items:center;gap:6px;min-width:0}.snapshot-cell.is-right{justify-content:flex-end;text-align:right}.snapshot-cell-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snapshot-cell-icon{flex:none;font-size:16px;line-height:var(--line-height);color:var(--color-text-muted)}.snapshot-empty{padding:12px 6px;color:var(--color-text-muted);line-height:var(--line-height)}.snapshot-empty[hidden]{display:none}.snapshot-actions{display:flex;flex-wrap:wrap;gap:6px}.snapshot-actions .msg-btn{display:inline-flex;align-items:center;gap:6px}.snapshot-note{color:var(--color-text-muted);line-height:var(--line-height);white-space:normal}.snapshot-note[hidden]{display:none}.online-dialog{width:min(var(--size-online-dialog-w),calc(100vw - 32px));height:min(var(--size-online-dialog-h),80vh)}.online-dialog[open]{display:flex;flex-direction:column}.online-head{flex:none;display:flex;flex-direction:column;gap:8px;padding:12px 16px 10px;border-bottom:1px solid var(--color-line)}.online-title{display:flex;align-items:center;gap:8px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.online-title .mdi{font-size:20px;color:var(--color-accent)}.online-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.online-market-label,.online-manufacturer-label{display:flex;align-items:center;gap:6px;flex:none}.online-market,.online-manufacturer{width:160px}.online-manufacturer{width:200px}.online-search{flex:0 1 280px;min-width:120px}.online-refresh{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.online-list{flex:1;min-height:0;overflow:auto;background:var(--color-surface);outline:none}.online-list:focus-visible{box-shadow:inset 0 0 0 1px var(--color-accent)}.online-table .data-row{cursor:default}.online-table{user-select:none}.online-table thead th,.online-table thead th:hover{cursor:default;background:var(--color-surface-panel)}.online-table.is-filtered thead th,.online-table.is-filtered thead th:hover{background:var(--color-highlight)}.online-state .mdi{margin-right:4px;color:var(--color-openknx-green);vertical-align:middle}.online-empty{padding:16px;color:var(--color-text-muted);line-height:var(--line-height)}.online-foot{flex:none;align-items:center}.online-info{flex:1;min-width:0;display:flex;align-items:center}.online-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted)}.online-progress{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.online-progress-text{flex:none;line-height:var(--line-height)}.online-bar{flex:1;max-width:360px;height:var(--size-import-bar-h);border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden}.online-bar-fill{width:0;height:100%;background:var(--color-accent)}.share-dialog{width:min(var(--size-import-dialog-w),calc(100vw - 32px))}.share-main{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.share-intro{margin:0;color:var(--color-text-muted);line-height:var(--line-height)}.share-tools{display:flex;align-items:center;gap:6px}.share-tools .share-search,.share-tools .share-search.has-help{flex:1;min-width:0;width:auto}.share-list{max-height:min(var(--size-import-list-h),50vh);overflow:auto;border:1px solid var(--color-line);background:var(--color-surface)}.share-list[hidden]{display:none}.share-line,.share-device{display:flex;align-items:center;gap:6px;min-height:var(--size-import-row-h);padding:0 6px;line-height:var(--line-height);cursor:default}.share-line{position:sticky;top:0;z-index:1;background:var(--color-surface-panel);border-bottom:1px solid var(--color-line);font-weight:var(--font-weight-semibold)}.share-device{padding-left:24px}.share-device+.share-device{border-top:1px solid var(--color-line)}.share-device:hover{background:var(--color-surface-panel)}.share-device.is-disabled{color:var(--color-text-disabled)}.share-icon{flex:none;font-size:16px;line-height:var(--line-height);color:var(--color-text-muted)}.share-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-product,.share-count{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.share-empty{padding:12px 6px;border:1px solid var(--color-line);color:var(--color-text-muted);line-height:var(--line-height)}.share-empty[hidden]{display:none}.share-summary{color:var(--color-text-muted);line-height:var(--line-height)}.share-options{display:flex;flex-direction:column;gap:4px}.add-dialog{position:fixed;box-sizing:border-box;width:min(490px,calc(100vw - 32px));max-height:none;padding:0;border:0;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size);line-height:var(--line-height);box-shadow:none;overflow:visible}.add-dialog::backdrop{background:var(--color-backdrop-dark)}.add-dialog-close{position:absolute;top:0;right:5px;width:45px;height:20px;padding:0;border:0;background:var(--color-add-close);color:var(--color-text-inverse);font-size:12px;line-height:20px;cursor:pointer}.add-dialog-close .mdi:before{font-size:12px}.add-dialog-body{padding:0 26px 26px}.add-dialog-title{margin:0 0 0 -1px;padding-top:24px;font-size:18.2px;font-weight:var(--font-weight-light);line-height:25px;color:var(--color-text)}.add-dialog-sub{margin:5px 0 0 -1px;color:var(--color-add-sub);line-height:var(--line-height)}.add-dialog-rows{display:flex;flex-direction:column;gap:6px;margin-top:30px;padding-left:1px}.add-dialog-row{display:flex;align-items:center;height:24px}.add-dialog-row.is-head{height:auto;margin-bottom:0;line-height:var(--line-height)}.add-dialog-label{color:var(--color-text-tab)}.add-dialog-label.is-count{width:78px}.add-dialog-label.is-name{width:288px}.add-dialog-label.is-name.has-usage{width:198px}.add-dialog-label.is-usage{width:128px}.add-dialog-spin{display:inline-flex;align-items:stretch;height:24px}.add-dialog-num{box-sizing:border-box;width:48px;height:24px;padding:0 10px 0 4px;border:1px solid var(--color-num-border);background:var(--color-surface);color:var(--color-text-tab);font:inherit;text-align:right}.add-dialog-num:disabled{border-color:var(--color-ctrl-bg);color:var(--color-add-disabled-text)}.add-dialog-num.is-start{width:32px;height:25px;padding:0 9px 0 2px}.add-dialog-spin .project-spin{margin-left:1px}.add-dialog-spin .project-spin-btn:disabled{border-color:var(--color-ctrl-border)}.add-dialog-name{box-sizing:border-box;width:280px;height:24px;margin-left:5px;padding:0 4px;border:1px solid var(--color-ctrl-border);background:var(--color-surface);color:var(--color-text);font:inherit}.add-dialog-name.has-usage{width:190px}.add-dialog-usage{box-sizing:border-box;width:118px;height:24px;margin-left:5px;padding:0 2px;border:1px solid var(--color-ctrl-border);background:var(--color-surface);color:var(--color-text);font:inherit}.add-dialog-name:focus,.add-dialog-num:focus{outline:none}.add-dialog-rowbtns{display:inline-flex;gap:2px;margin-left:10px}.add-dialog-rowbtn{box-sizing:border-box;width:24px;height:24px;padding:0;border:1px solid var(--color-border);background:var(--color-ctrl-bg);color:var(--color-text);font:inherit;line-height:22px;cursor:pointer}.add-dialog-rowbtn:hover:not(:disabled){background:var(--color-surface-hover)}.add-dialog-rowbtn:disabled{border-color:var(--color-add-btn-disabled-border);background:var(--color-spin-disabled-bg);color:var(--color-add-btn-disabled-text);cursor:default}.add-dialog-group{position:relative;box-sizing:border-box;width:438px;height:99px;margin:3px 0 0;padding:9px 0 0 9px;border:1px solid var(--color-add-group-border);border-radius:4px}.add-dialog-group[hidden]{display:none}.add-dialog-legend{margin-left:-4px;padding:0 2px;color:var(--color-text-tab)}.add-dialog-choice{display:flex;align-items:center;gap:5px;height:22px;color:var(--color-text-strong)}.add-dialog-choice:last-child{position:relative;margin-top:1px}.add-dialog-choice label{cursor:default}.add-dialog-choice .add-dialog-spin{position:absolute;left:77px;top:-1px}.add-dialog-radio{appearance:none;-webkit-appearance:none;flex:none;box-sizing:border-box;width:var(--size-radio);height:var(--size-radio);margin:0;border:1px solid var(--color-radio-border);border-radius:50%;background:var(--color-surface);cursor:pointer}.add-dialog-radio:checked{background:radial-gradient(circle,var(--color-selection) 0 3px,var(--color-radio-dot-edge) 3.5px,var(--color-radio-dot) 4px 4.5px,var(--color-surface) 5px)}.add-dialog-radio:focus-visible{outline:1px dotted var(--color-text);outline-offset:1px}.add-dialog-buttons{display:flex;justify-content:flex-end;gap:5px;height:35px;box-sizing:border-box;padding:5px 5px 0;border-top:1px solid var(--color-ctrl-border);background:var(--color-surface-panel)}.add-dialog-btn{box-sizing:border-box;min-width:60px;height:24px;padding:0 8px;border:1px solid var(--color-border);background:var(--color-ctrl-bg);color:var(--color-text);font:inherit;cursor:pointer}.add-dialog-btn.is-cancel{min-width:78px}.add-dialog-btn:hover:not(:disabled){border-color:var(--color-dialog-btn-hover-border);background:var(--color-dialog-btn-hover-bg);color:var(--color-dialog-btn-hover-text)}.add-dialog-btn:focus-visible{outline:1px dotted var(--color-text);outline-offset:-4px}.fn-channel-dialog{width:min(640px,calc(100vw - 32px))}.fn-channel-dialog .link-dialog-list{height:200px}.fn-channel-device{cursor:default}.fn-channel-device td:first-child{width:20px;padding:0 0 0 4px}.link-dialog-list td.fn-channel-name{padding-left:24px}.fn-channel-row.is-taken td,.fn-channel-note td{color:var(--color-text-muted)}.fn-channel-note td:last-child{padding-left:24px}.fn-channel-intro{color:var(--color-text-muted);line-height:var(--line-height)}.fn-channel-map{max-height:136px;overflow:auto;border:1px solid var(--color-line);background:var(--color-surface)}.fn-channel-map table{width:100%;border-collapse:collapse}.fn-channel-map td{height:28px;padding:0 4px;white-space:nowrap}.fn-channel-map td:first-child{width:40%;overflow:hidden;text-overflow:ellipsis}.fn-channel-select{box-sizing:border-box;width:100%;height:24px;padding:0 4px;border:1px solid var(--color-ctrl-border);background:var(--color-surface);color:var(--color-text);font:inherit}.project-home-host{flex:1;display:flex;min-width:0;min-height:0}.project-home{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;container-type:inline-size;background:var(--color-surface-chrome);color:var(--color-text-tab)}.home-body{flex:1;overflow:auto;padding:var(--size-home-pad-y) var(--size-home-pad-x)}.home-sort{flex:none;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-top:var(--size-bar-inset);height:var(--size-search-h);margin-right:4px;color:var(--color-text-muted)}.home-sort[hidden]{display:none}.home-sort-select,.home-tags-select{height:var(--size-search-h);min-width:120px;color:var(--color-text)}.home-toolbar .tool-btn[hidden]{display:none}@container (max-width: 760px){.home-toolbar .tool-btn>span:not(.mdi){display:none}.home-sort-label{display:none}}.home-tiles{display:flex;flex-wrap:wrap;gap:var(--size-tile-gap)}.home-tiles[hidden],.home-archives[hidden]{display:none}.home-archives{margin-top:var(--size-home-section-gap)}.home-archive-title{margin:0 0 var(--size-home-title-gap);font-size:var(--font-size);font-weight:700;line-height:var(--line-height);color:var(--color-text-tab)}.project-tile.is-archived .tile-image{opacity:.5}.project-tile.is-archived .tile-name{color:var(--color-text-tab)}.tile-archive{flex:none;font-size:var(--font-size);color:var(--color-text-muted)}.tile-name mark{background:var(--color-search-hit);color:inherit;padding:0}.project-tile{position:relative;flex:none;display:flex;flex-direction:column;box-sizing:border-box;width:var(--size-tile-w);height:var(--size-tile-h);background:var(--color-surface);box-shadow:0 var(--size-tile-shadow-y) var(--size-tile-shadow-blur) var(--color-shadow-project-tile);cursor:default;outline:none;user-select:none}.project-tile:focus{box-shadow:0 0 var(--size-tile-focus-blur) var(--color-tile-focus-glow)}.project-tile:hover{background:var(--color-tile-hover);box-shadow:0 var(--size-tile-shadow-y) var(--size-tile-shadow-hover-blur) var(--color-shadow-project-tile-hover)}.project-tile.is-selected{background:var(--color-tile-selected)}.project-tile.is-open:before{content:"";position:absolute;z-index:1;top:0;left:0;right:0;height:var(--size-tile-accent);background:var(--color-icon-active);pointer-events:none}.tile-image{flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--size-tile-img-h);padding-top:var(--size-tile-accent)}.tile-image.is-placeholder{box-shadow:inset 0 0 0 var(--size-tile-placeholder-frame) var(--color-tile-placeholder-frame)}.tile-placeholder{font-size:64px;line-height:64px;color:var(--color-icon-active)}.tile-image.has-cover{position:relative;overflow:hidden}.tile-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;user-select:none}.tile-cover[hidden]{display:none}.tile-cover-pixels{position:absolute;inset:0;width:100%;height:100%}.tile-cover.is-replaced{visibility:hidden}.tile-info{flex:1;display:flex;flex-direction:column;min-width:0;padding:var(--size-tile-info-pad-t) 12px var(--size-tile-info-pad-b) 12px}.tile-line{display:flex;align-items:center;gap:6px}.tile-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre;color:var(--color-icon-active);font-size:var(--font-size-home);line-height:24px}.tile-count{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-size)}.tile-count .mdi{font-size:var(--font-size)}.tile-lock{flex:none;font-size:var(--font-size);color:var(--color-text-muted)}.tile-dates{margin-top:auto}.tile-modified{font-size:var(--font-size);line-height:var(--line-height)}.home-menu{min-width:var(--size-menu-tile-min-w);color:var(--color-text-tab)}.home-menu .home-menu-item{padding-right:var(--size-menu-tile-pad-r)}.home-menu .home-menu-item:hover{background:var(--color-menu-open);color:var(--color-menu-open-text)}.home-menu .home-menu-item[aria-disabled=true],.home-menu .home-menu-item[aria-disabled=true] .home-menu-icon{color:var(--color-menu-disabled)}.home-menu .home-menu-label{flex:1}.home-menu .home-menu-key{margin-left:16px;color:var(--color-text-muted)}.home-menu .home-menu-item[aria-disabled=true] .home-menu-key{color:var(--color-menu-disabled)}.home-menu .home-menu-item:hover .home-menu-key{color:inherit}.home-menu-icon.is-danger{color:var(--color-menu-danger)}.project-bar{display:inline-flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.project-crumbs{display:inline-flex;align-items:center;min-width:0;margin-left:8px;overflow:hidden;white-space:pre}.project-crumb{display:inline-flex;align-items:center;gap:9px;height:var(--size-toolbar-btn-h);padding:0 4px;border:1px solid transparent;background:transparent;color:var(--color-text-tab);font:inherit;cursor:pointer}.project-crumb:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover)}.project-crumb.is-current{font-weight:var(--font-weight-semibold);cursor:default}.project-crumb-icon{flex:none}.project-crumb.is-current{min-width:0;max-width:100%}.project-crumb.is-current>span:not(.project-crumb-icon){min-width:0;overflow:hidden;text-overflow:ellipsis}.project-crumbs:has(.project-crumb-more) .project-crumb.is-current{max-width:calc(100% - 48px)}.project-crumb.is-current:hover{background:transparent;border-color:transparent}.project-crumb-icon{font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-text-muted)}.project-crumb-icon.is-tp{color:var(--color-icon-line)}.project-crumb-icon.is-rf{color:var(--color-icon-line-rf)}.project-crumb-icon.is-ip{color:var(--color-icon-line-ip)}.project-crumb-icon.is-folder{color:var(--color-icon-folder)}.project-crumb.is-folded,.project-crumb-sep.is-folded{display:none}.project-crumb-more{flex:none;cursor:default}.project-crumb-sep{margin:0 6px;color:var(--color-text-muted)}.project-actions{display:inline-flex;align-items:center;gap:2px}.tool-menu{z-index:200;padding:0}.tool-menu-item{display:flex;align-items:center;gap:8px;height:var(--size-tool-menu-item-h);padding:0 12px 0 8px;white-space:nowrap;cursor:default}.tool-menu-item:hover{background:var(--color-surface-hover)}.tool-menu-icon{width:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);text-align:center}.tool-menu-item.is-disabled{color:var(--color-text-muted);opacity:.6}.tool-menu-item.is-active{background:var(--color-surface-hover)}.tool-menu-check{width:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);text-align:center}.tool-menu-split .tool-menu-item.is-selected{font-weight:var(--font-weight-semibold)}.tool-menu-panels .tool-menu-item:hover,.tool-menu-panels .tool-menu-item.is-active{background:var(--color-menu-open);color:var(--color-menu-open-text)}.tool-menu-panels .tool-menu-item.is-selected{font-weight:var(--font-weight-semibold)}.tool-menu-sep{height:1px;margin:3px 0;background:var(--color-border-tab)}.project-window-host{flex:1;display:flex;min-width:0;min-height:0}.project-window{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--color-surface)}.project-pane{flex:1;display:flex;min-width:0;min-height:0;background:var(--color-surface)}.project-pane.is-lower{flex:none;height:var(--size-project-dock-h)}.project-window>.splitter--top{height:var(--size-pane-divider);margin:0;border-top:1px solid var(--color-border-tab);border-bottom:1px solid var(--color-border-tab);background:var(--color-surface)}.project-window>.splitter--top:after{content:"";position:absolute;left:50%;top:50%;width:var(--size-pane-grip-w);height:var(--size-pane-grip-h);margin:calc(var(--size-pane-grip-h) / -2) 0 0 calc(var(--size-pane-grip-w) / -2);background:var(--color-pane-grip)}.project-window.is-split-v{flex-direction:row}.project-window.is-split-v>.project-pane{min-width:var(--size-project-pane-min-w)}.project-window.is-split-v>.project-pane.is-lower{height:auto;width:var(--size-project-dock-w)}.project-window.is-split-v .project-panel{flex-shrink:1;min-width:var(--size-project-tree-min-w)}.project-window.is-split-v .project-center{min-width:var(--size-project-center-min-w)}.project-window.is-split-v,.project-window.is-split-v>.project-pane{overflow:hidden}.project-window.is-split-v :is(.workspace>.sidebar,.split-sidebar){flex-shrink:1;min-width:120px}.project-window.is-split-v :is(.workspace>.device-main,.split-content){min-width:120px}.project-window.is-split-v :is(.device-tabs,.split-tabs){overflow:clip;overflow-clip-margin:1px}.project-window.is-split-v .split-body .mem-body{flex-direction:column}.project-window.is-split-v .split-body .mem-dump{flex:1 1 50%;border-right:0;border-bottom:1px solid var(--color-line)}.project-window.is-split-v .split-body .mem-list{flex:1 1 50%}.project-window>.splitter--left{width:var(--size-pane-divider);margin:0;border-left:1px solid var(--color-border-tab);border-right:1px solid var(--color-border-tab);background:var(--color-surface)}.project-window>.splitter--left:after{content:"";position:absolute;left:calc(50% - var(--size-pane-grip-h) / 2);top:round(down,50% - var(--size-pane-grip-w) / 2,1px);width:var(--size-pane-grip-h);height:var(--size-pane-grip-w);background:var(--color-pane-grip)}.project-cat-tree{display:flex;flex-direction:column}.project-cat-tree>.cat-tree-pane{flex:1;width:auto;border-right:0}.project-pane-catalog{flex:1;display:flex;min-width:0;min-height:0}.project-pane-catalog>.catalog{flex:1;min-width:0}.project-pane-catalog .cat-pane-head,.project-pane-catalog .cat-body>.splitter{display:none}.project-pane-catalog{container-type:inline-size}@container (max-width: 760px){.cat-toolbar .tool-btn>span:not(.mdi){display:none}.cat-toolbar .tool-btn{min-width:0!important}}.project-panel{flex:none;display:flex;flex-direction:column;width:calc(var(--size-project-panel-w) + var(--size-project-panel-border));min-height:0;border-right:var(--size-project-panel-border) solid var(--color-border);background:var(--color-surface)}.project-panel-head{flex:none;display:flex;align-items:center;box-sizing:border-box;height:var(--size-bar-h);padding:0 4px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.project-panel-icon{flex:none;width:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-text-tab)}.project-panel-select{position:relative;flex:1;display:flex;align-items:center;gap:var(--size-panel-pick-gap);min-width:0;height:23px;padding:0 calc(var(--size-panel-chevron) + var(--size-panel-chevron-right)) 0 var(--size-panel-pick-pad);border:0;background:var(--color-surface-chrome);color:var(--color-text-tab);font:inherit;text-align:left;cursor:pointer}.project-panel-select:focus-visible{outline:1px solid var(--color-accent);outline-offset:-1px}.project-panel-select.is-open{background:var(--color-menu-open);color:var(--color-menu-open-text)}.project-panel-select.is-open .project-panel-icon,.project-panel-select.is-open .project-panel-chevron{color:var(--color-menu-open-text)}.project-panel-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-panel-chevron{position:absolute;top:50%;right:var(--size-panel-chevron-right);width:var(--size-panel-chevron);margin-top:calc(var(--size-panel-chevron) / -2);font-size:var(--size-panel-chevron);line-height:var(--size-panel-chevron);text-align:center;color:var(--color-panel-chevron);pointer-events:none}.project-panel-body{flex:1;min-height:0;overflow:auto}.project-center{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.project-devices{flex:1;display:flex;flex-direction:column;min-height:0}.project-devices-bar{flex:none;display:flex;align-items:flex-end;box-sizing:border-box;height:var(--size-bar-h);padding:0 6px 0 4px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.project-devices-bar button[role=tab]{display:inline-flex;align-items:center;gap:10px;height:var(--size-tab-active-h);margin-bottom:-1px;padding:0 9px 1px;border:1px solid var(--color-border-tab);border-bottom:0;background:var(--color-surface-raised);color:var(--color-text-tab);font:inherit;white-space:nowrap}.project-devices-bar button[role=tab] .mdi{font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-icon-active)}.project-devices-bar .spacer{flex:1}.project-devices-bar .search-box{align-self:flex-start;margin-top:var(--size-bar-inset)}.project-devices-bar{container-type:inline-size}.project-devices-bar.is-icons button[role=tab]{min-width:0!important}.project-devices-bar.is-icons button[role=tab]>:not(.mdi){display:none}.project-devices-list{flex:1;min-height:0;overflow:auto}.project-devices-list.is-drop-target,.project-catalog-list.is-drop-target{background:var(--color-overlay-drop);box-shadow:inset 0 0 0 2px var(--color-accent)}.project-devices-empty{margin:12px;color:var(--color-text-muted)}.project-devices-table tbody tr{cursor:default}.project-devices-table thead th{height:var(--size-catalog-table-head-h)}.project-devices-table tbody td{box-sizing:border-box;height:var(--size-catalog-row-h);padding-top:2px;border-bottom:0}.project-devices-table tbody td.lead{padding-top:2px}.project-devices-table tbody tr:nth-child(2n) td{background:var(--color-surface-raised)}.project-devices-table tbody tr.selected td{background:var(--color-surface-pressed)}.project-devices-table tbody tr:focus{outline:none}.project-devices-list:focus{outline:none}.col-table .c-loaded>.cv{min-width:var(--size-status-content-w)}.project-devices-table tbody td.c-loaded{padding-top:3px}.status-icons{display:flex;width:var(--size-status-content-w)}.status-cell{flex:none;box-sizing:border-box;width:var(--size-status-cell);height:var(--size-status-icon);padding:0 calc((var(--size-status-cell) - var(--size-status-icon)) / 2)}.status-cell svg{display:block;width:var(--size-status-icon);height:var(--size-status-icon)}.status-cell .status-disc{fill:var(--color-status-loaded);stroke:var(--color-status-loaded-border);stroke-width:1}.status-cell .status-check{fill:var(--color-status-loaded-check);stroke:none;shape-rendering:crispEdges}.status-cell .status-none{display:block;width:var(--size-status-none-w);height:var(--size-status-none-h);margin:calc((var(--size-status-icon) - var(--size-status-none-h)) / 2) auto 0;background:var(--color-status-none)}.project-device-slot{flex:1;display:flex;flex-direction:column;min-height:0}.project-device-slot>.device{flex:1;min-height:0}.project-device-slot>.split-pane{flex:1;height:auto;border-top:0}.project-catalog-tools{flex:none;display:flex;gap:2px;padding:3px 4px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.project-catalog-tools{container-type:inline-size}@container (max-width: 760px){.project-catalog-tools .tool-btn>span:not(.mdi){display:none}.project-catalog-tools .tool-btn{min-width:0!important}}.mdi.is-pcat{color:var(--color-icon-active)}.project-devices-tabs{display:flex;align-items:flex-end;align-self:stretch}.project-devices-bar button[role=tab]:not(.active){height:var(--size-tab-h);padding-bottom:0;background:transparent;border-color:transparent;cursor:pointer}.project-devices-bar button[role=tab]:not(.active) .mdi{color:var(--color-text-tab)}.project-lines-table .lead .is-tp{color:var(--color-icon-line)}.project-lines-table .lead .is-rf{color:var(--color-icon-line-rf)}.project-lines-table .lead .is-ip{color:var(--color-icon-line-ip)}.topology-tree{color:var(--color-text-tab);user-select:none}.topology-row{position:relative;display:flex;align-items:flex-start;box-sizing:border-box;height:var(--size-topology-row-h);padding:var(--size-topology-pad-y) 6px 0 calc(var(--size-topology-x) + (var(--depth, 1) - 1) * var(--size-topology-indent));white-space:nowrap;cursor:default}.topology-row.is-root{padding-left:var(--size-topology-root-x)}.topology-row:hover{background:var(--color-surface-hover)}.topology-row.is-selected{background:var(--color-topology-selected)}.topology-tree:focus .topology-row.is-selected,.topology-tree:focus-within .topology-row.is-selected{background:var(--color-tree-focus-bg);color:var(--color-tree-focus-text)}.topology-tree.is-stepped .topology-row:not(.is-root){padding-left:calc(var(--size-topology-x) + max(0px,(var(--depth, 1) - 1) * var(--size-topology-step) - var(--size-topology-step-trim)))}.topology-tree.is-stepped .topology-toggle{left:calc(var(--size-topology-x) + max(0px,(var(--depth, 1) - 1) * var(--size-topology-step) - var(--size-topology-step-trim)) - var(--size-topology-toggle-x))}.topology-row.is-drop-target{background:var(--color-surface-pressed);box-shadow:inset 0 0 0 1px var(--color-accent)}.topology-toggle{position:absolute;top:var(--size-topology-pad-y);left:calc(var(--size-topology-x) + (var(--depth, 1) - 1) * var(--size-topology-indent) - var(--size-topology-toggle-x));width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);text-align:center;color:var(--color-text-muted);cursor:pointer}.topology-icon{flex:none;width:var(--size-icon);height:var(--size-icon);margin-right:var(--size-topology-gap);font-size:var(--size-icon);line-height:var(--size-icon);text-align:center;color:var(--color-text-muted)}.topology-icon.is-folder{color:var(--color-icon-folder)}.topology-icon.is-tp{color:var(--color-icon-line)}.topology-icon.is-rf{color:var(--color-icon-line-rf)}.topology-icon.is-ip{color:var(--color-icon-line-ip)}.topology-icon.is-com{color:var(--color-accent)}.topology-icon.is-tunnel{color:var(--color-icon-tunnel)}.topology-count{flex:none;box-sizing:border-box;min-width:var(--size-topology-count);height:var(--size-topology-count);padding:0 4px;margin-right:var(--size-topology-gap);border-radius:2px;background:var(--color-border-tab);line-height:var(--size-topology-count);text-align:center}.topology-label{min-width:0;overflow:hidden;text-overflow:ellipsis;line-height:var(--size-icon);white-space:pre}.topology-tree:focus{outline:none}.topology-row[draggable=true]{cursor:default}.topology-menu{position:fixed;z-index:200;min-width:180px;padding:2px 0;background:var(--color-surface-chrome);border:1px solid var(--color-border-tab);box-shadow:1px 1px 2px var(--color-shadow-menu);color:var(--color-text);user-select:none}.topology-menu-item{display:flex;align-items:center;gap:8px;height:var(--size-col-menu-item-h);padding:0 24px 0 6px;cursor:default;white-space:nowrap}.topology-menu-item:hover,.topology-menu-item.is-active{background:var(--color-surface-hover)}.topology-menu-item.is-disabled{color:var(--color-text-disabled)}.topology-menu-item.is-disabled:hover{background:transparent}.topology-menu-icon{width:var(--size-icon);font-size:var(--size-icon);text-align:center}.topology-menu-sep{height:1px;margin:2px 0 2px 30px;background:var(--color-border-tab)}.topology-icon[class*=is-space-],.topology-icon[class*=is-usage-]{font-size:var(--size-space-glyph)}.topology-icon[class*=is-space-]:before,.topology-icon[class*=is-usage-]:before{margin:0 -1px}.mdi.is-space-root,.mdi.is-space-building,.mdi.is-usage-bathroom,.mdi.is-usage-utility{color:var(--color-space-building)}.mdi.is-space-room,.mdi.is-space-stairway,.mdi.is-space-cabinet,.mdi.is-usage-dressingroom,.mdi.is-usage-balcony,.mdi.is-usage-meetingroom,.mdi.is-usage-hall,.mdi.is-usage-entrance,.mdi.is-usage-diningroom,.mdi.is-usage-fitness,.mdi.is-usage-hometheater,.mdi.is-usage-mediaroom,.mdi.is-usage-pool,.mdi.is-usage-technical,.mdi.is-usage-toilet,.mdi.is-usage-staircase,.mdi.is-usage-wellness{color:var(--color-space-neutral)}.mdi.is-space-floor,.mdi.is-space-corridor,.mdi.is-usage-corridor{color:var(--color-space-green)}.mdi.is-space-buildingPart{color:var(--color-space-part)}.mdi.is-usage-garden{color:var(--color-usage-garden)}.mdi.is-usage-parking{color:var(--color-usage-parking)}.mdi.is-usage-bedroom,.mdi.is-usage-office{color:var(--color-usage-wood)}.mdi.is-usage-livingroom,.mdi.is-usage-terrace{color:var(--color-usage-purple)}.mdi.is-usage-storeroom{color:var(--color-usage-box)}.mdi.is-usage-nursery{color:var(--color-usage-blue)}.mdi.is-ga-root,.mdi.is-ga-main{color:var(--color-ga-main)}.mdi.is-ga-middle{color:var(--color-ga-middle)}.mdi.is-device,.col-table td.lead .mdi.is-device{color:var(--color-icon-device)}.mdi.is-ga,.col-table td.lead .mdi.is-ga{color:var(--color-ga)}.mdi.is-usage-garage{color:var(--color-usage-steel)}.mdi.is-usage-kitchen{color:var(--color-usage-light)}.mdi.is-func-light,.col-table td.lead .mdi.is-func-light{color:var(--color-func-light)}.mdi.is-func-blind,.col-table td.lead .mdi.is-func-blind{color:var(--color-func-blind)}.mdi.is-func-heat,.col-table td.lead .mdi.is-func-heat{color:var(--color-func-heat)}.mdi.is-func-socket,.col-table td.lead .mdi.is-func-socket{color:var(--color-func-socket)}.mdi.is-func-custom,.col-table td.lead .mdi.is-func-custom{color:var(--color-func-custom)}.mdi.is-trade,.col-table td.lead .mdi.is-trade{color:var(--color-trade)}.topology-menu-label{flex:1}.topology-menu-key{margin-left:16px;color:var(--color-text-muted)}.topology-menu-key+.topology-menu-arrow,.topology-menu-key+.topology-menu-badge{margin-left:0}.topology-menu-item.is-disabled .topology-menu-key{color:var(--color-text-disabled)}.topology-menu-arrow{margin-right:-16px;font-size:var(--size-icon)}.topology-menu-badge{margin-right:-16px;font-size:var(--size-icon);color:var(--color-text-muted)}.topology-menu-item.is-open{background:var(--color-surface-hover)}.project-setting{display:flex;flex-direction:column;gap:3px}.project-setting-label{font-weight:var(--font-weight-semibold)}.project-input{box-sizing:border-box;height:var(--size-text-h);padding:0 6px;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-text);font:inherit}.project-input:focus{outline:none;border-color:var(--color-accent)}.project-input:read-only:not(.ui-sel){background:var(--color-surface-chrome)}.project-input.is-multiline{height:auto;min-height:128px;padding:4px 6px;resize:vertical}.project-input.is-multiline.is-tall{min-height:160px}.props-body:has(>.project-settings){display:flex;flex-direction:column;padding:0 var(--space-form-pad-right) var(--space-form-pad-bottom) var(--space-form-pad-left)}.project-settings{flex:1 0 auto;display:flex;flex-direction:column;gap:calc(var(--space-form-ctl-label) - var(--size-label-cap) - 1px);padding:calc(var(--space-form-first) - var(--size-label-cap)) 0 0;color:var(--color-text-tab)}.project-settings>.project-setting{gap:calc(var(--space-form-label-ctl) + var(--size-label-cap) - var(--line-height))}.project-settings .project-setting-label{color:var(--color-text-strong)}.project-settings .project-input{padding:0 var(--size-form-input-pad-x);color:var(--color-text-tab)}.project-settings input.project-input{padding-bottom:2px}.project-settings .project-input::placeholder{color:var(--color-form-placeholder);font-style:italic;opacity:1}.project-settings .project-input.is-multiline{height:var(--size-form-desc-h);min-height:0;padding:4px var(--size-form-input-pad-x);resize:none}.project-settings .project-select{padding:0 calc(var(--size-select-pad-x) * 2 + var(--size-icon)) 0 var(--size-form-select-pad-x)}.project-settings .project-select.is-disabled{cursor:default}.project-settings.has-rich{height:100%}.project-setting.is-rich{flex:1 1 0}.project-settings.has-rich>.is-rich:not(:last-child){flex:0 0 round(down,calc((100% - var(--space-form-ctl-label) + var(--size-label-cap) + 1px) / 2),1px)}.rich-text{flex:1 1 0;display:flex;flex-direction:column}.rich-toolbar{display:flex;align-items:center;gap:1px;height:var(--size-rich-bar-h);padding:1px 2px 0;border:1px solid var(--color-prop-border);border-bottom:none;background:var(--color-surface-chrome)}.rich-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--size-rich-btn);height:var(--size-rich-btn);padding:0;border:1px solid transparent;background:transparent;color:var(--color-text-tab);font-size:var(--size-icon);cursor:default}.rich-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover)}.rich-btn[aria-pressed=true],.rich-btn[aria-expanded=true]{background:var(--color-surface-pressed);border-color:var(--color-border-pressed)}.rich-btn:focus-visible,.rich-swatch:focus-visible{outline:1px solid var(--color-accent);outline-offset:-1px}.rich-sep{width:1px;height:16px;margin:0 3px;background:var(--color-prop-border)}.rich-size-icon{margin:0 3px;color:var(--color-text-tab);font-size:var(--size-icon)}.rich-size-box{position:relative;display:inline-flex}.rich-size{box-sizing:border-box;width:var(--size-rich-size-w);height:var(--size-rich-btn);padding:0 var(--size-icon) 0 6px;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-text);font:inherit;appearance:none;-webkit-appearance:none;cursor:pointer}.rich-size:hover{border-color:var(--color-border-pressed)}.rich-size:focus{outline:none;border-color:var(--color-accent)}.rich-size-chevron{position:absolute;top:3px;right:1px;width:var(--size-icon);height:var(--size-icon);font-size:var(--size-icon);line-height:var(--size-icon);text-align:center;color:var(--color-select-chevron);pointer-events:none}.rich-color-box{position:relative;display:inline-flex}.rich-color-bar{position:absolute;left:4px;right:4px;bottom:2px;height:3px;background:var(--color-text-strong)}.rich-palette{position:absolute;top:100%;left:0;z-index:20;display:flex;gap:4px;padding:4px;border:1px solid var(--color-border-tab);background:var(--color-surface-chrome)}.rich-palette[hidden]{display:none}.rich-swatch{width:var(--size-rich-swatch);height:var(--size-rich-swatch);padding:0;border:1px solid var(--color-prop-border);cursor:pointer}.rich-swatch.is-auto{background:var(--color-text-strong)}.rich-swatch:hover{outline:1px solid var(--color-accent)}.rich-editor{box-sizing:border-box;flex:1 1 0;min-height:var(--size-rich-editor-h);padding:4px 6px;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-text-strong);font-family:var(--font-family);white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;cursor:text}.rich-editor:focus{outline:none;border-color:var(--color-accent)}.rich-text.is-readonly .rich-editor{background:var(--color-surface-chrome);cursor:default}.project-setting.is-rich.is-compact,.is-compact>.rich-text{flex:none}.is-compact .rich-editor{flex:none;min-height:var(--size-rich-compact-h);resize:vertical}.rich-list{margin:0;padding-left:18px}.project-address{display:flex;align-items:center;gap:4px}.project-address-bl,.project-address-t{width:64px;text-align:right}.project-address-select-box{width:190px}.project-address-select{text-align:left}.project-address.is-fill{width:100%}.project-address.is-fill .project-address-select-box{flex:1 1 0;width:auto;min-width:0}.project-address .ui-updown{flex:none;width:var(--size-address-t-spin-w);height:var(--size-text-h)}.project-address .ui-updown .ui-input{min-width:0;text-align:right;padding:0 4px;font:inherit}.project-address.is-fill .project-address-t{flex:none;width:var(--size-address-t-fill-w);padding-left:4px;padding-right:4px}.project-park-btn{flex:none;box-sizing:border-box;width:var(--size-text-h);height:var(--size-text-h);margin-left:1px;padding:0;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-text);font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.project-park-btn:hover:not(:disabled){background:var(--color-surface-hover)}.project-park-btn:focus-visible{outline:none;border-color:var(--color-accent)}.project-park-btn:disabled{border-color:var(--color-button-disabled-border);background:var(--color-spin-disabled-bg);color:var(--color-spin-arrow-disabled);cursor:default}.project-address-dot{font-weight:var(--font-weight-semibold)}.project-setting-row{display:flex;gap:8px}.project-setting-row .project-setting-label{flex:none;width:110px}.project-values{display:grid;grid-template-columns:max-content minmax(0,1fr);row-gap:calc(var(--space-value-pitch) - var(--line-height));margin:0}.project-values>.project-setting-row{display:contents}.project-values>.project-setting-row>.project-setting-label{grid-column:1;width:auto;min-width:var(--size-value-col);padding-right:var(--space-value-gap);white-space:nowrap}.project-values>.project-setting-row>.project-setting-value{grid-column:2;font-size:var(--font-size-value);color:var(--color-text-strong);text-align:right}.project-values>.project-setting-row[data-key=line]>.project-setting-value{text-align:left}.project-info{padding-top:6px}.project-subtabs{display:flex;border-bottom:1px solid var(--color-border-tab)}.project-subtab{height:24px;margin-bottom:-1px;padding:0 8px;border:1px solid transparent;border-bottom:0;background:transparent;color:var(--color-text-tab);font:inherit;cursor:pointer}.project-subtab.active{background:var(--color-surface);border-color:var(--color-border-tab)}.project-info-body{padding:6px 8px;border:1px solid var(--color-border-tab);border-top:0;background:var(--color-surface)}.project-lineaddr{display:flex;align-items:center}.project-lineaddr .project-input{padding:0 9px 0 4px;text-align:right}.project-lineaddr-b{width:var(--size-line-address-b-w)}.project-lineaddr-l{width:var(--size-line-address-l-w)}.project-lineaddr-dot{width:var(--size-address-gap);text-align:center;font-weight:var(--font-weight-semibold)}.project-spin{display:inline-flex;flex-direction:column;gap:1px;width:var(--size-spin-w);height:var(--size-text-h);margin-left:1px}.project-spin-btn{position:relative;box-sizing:border-box;height:var(--size-spin-up-h);padding:0;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-spin-arrow);cursor:pointer}.project-spin-btn.is-down{height:var(--size-spin-down-h)}.project-spin-btn svg{position:absolute;left:-1px;top:-1px;width:var(--size-spin-w);height:calc(100% + 2px);fill:none;stroke:currentColor}.project-spin-btn:hover:not(:disabled){background:var(--color-surface-hover)}.project-spin-btn:disabled{border-color:var(--color-button-disabled-border);background:var(--color-spin-disabled-bg);color:var(--color-spin-arrow-disabled);cursor:default}.project-spin.is-busy .project-spin-btn{cursor:progress}.project-spinaddr{display:flex;align-items:center}.project-spinaddr .project-input{padding:0 9px 0 4px;text-align:right}.project-spin-prefix{width:var(--size-ga-prefix-w);color:var(--color-text)}.project-input.project-spin-prefix:read-only{background:var(--color-surface)}.project-spin-sep{width:var(--size-ga-sep);text-align:center;color:var(--color-ga-sep);position:relative;top:-2px}.project-spin-value{width:var(--size-ga-value-w)}.project-radios{flex-direction:column;align-items:flex-start;gap:var(--space-form-radio-pitch);margin:calc(var(--size-label-cap) - 2px) 0 3px}.project-radios .ui-radio{color:var(--color-text-strong)}.project-input.is-invalid,.project-settings .project-input.is-invalid{border-color:var(--color-error-border);background:var(--color-error-bg)}.project-settings input.project-input:disabled{border-color:var(--color-form-disabled-border);background:var(--color-form-disabled-bg);color:var(--color-form-disabled-text)}.project-settings .project-input:disabled::placeholder{color:var(--color-form-disabled-text)}.project-check-row{display:flex;align-items:center;gap:var(--space-check-gap);height:var(--size-check);align-self:flex-start;font-size:var(--font-size-check);color:var(--color-check-text);cursor:pointer}.project-check{position:relative;box-sizing:border-box;width:var(--size-check);height:var(--size-check);margin:0;border:1px solid var(--check-edge, var(--color-prop-border));background:var(--check-bg, var(--color-surface));appearance:none;-webkit-appearance:none;cursor:pointer}.project-check:checked{border-color:var(--check-edge, var(--check-bg, var(--color-check-on-bg)));background:var(--check-bg, var(--color-check-on-bg))}.project-check:checked:after{content:"";position:absolute;left:-1px;top:-1px;width:var(--size-check);height:var(--size-check);background:var(--check-mark, var(--color-check-on-mark));mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpolyline points='3.3,8.3 6.3,11.3 12.9,4.1' fill='none' stroke='currentColor' stroke-width='1.1'/%3E%3C/svg%3E") 0 0 / 16px 16px no-repeat}.project-check:disabled{border-color:var(--color-check-off-bg);background:var(--color-check-off-bg);cursor:default}.project-check-row.is-disabled{color:var(--color-check-off-text);cursor:default}.project-check[aria-readonly=true],.project-check[aria-readonly=true]+span{cursor:default}.project-check:focus-visible{outline:1px dotted var(--color-text);outline-offset:1px}.project-check-list{display:flex;flex-direction:column;gap:calc(var(--size-form-check-pitch) - var(--size-check))}.project-settings>.is-checks{gap:calc(var(--space-form-check-first) + var(--size-label-cap) - var(--line-height))}.project-check-hint{margin-top:4px;font-size:var(--font-size-check);color:var(--color-check-off-text)}.project-settings>.is-check+.is-check:not(:has(>.project-setting-label)){margin-top:calc(var(--size-form-check-pitch) - var(--size-check) - var(--space-form-ctl-label) + var(--size-label-cap) + 1px)}.project-select-box{position:relative;display:flex}.project-select{flex:1;min-width:0;padding:0 calc(var(--size-select-pad-x) * 2 + var(--size-icon)) 0 var(--size-select-pad-x);appearance:none;-webkit-appearance:none;cursor:pointer}.project-select-chevron{position:absolute;top:4px;width:var(--size-icon);text-align:center;right:calc(var(--size-select-pad-x) - 4px);font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-select-chevron);pointer-events:none}.project-app-change{margin-top:30px;padding:0}.project-field{position:relative;display:flex}.project-field>.project-input{flex:1;min-width:0}.project-input.has-clear{padding-right:calc(var(--size-clear) + 9px)}.project-clear{position:absolute;top:4px;right:5px;display:flex;align-items:center;justify-content:center;width:var(--size-clear);height:var(--size-clear);padding:0;border:0;background:transparent;color:var(--color-select-chevron);font-size:var(--size-clear);line-height:var(--size-clear);cursor:pointer}.project-clear:hover{color:var(--color-list-selected-text)}.project-select-box>.project-clear{right:calc(var(--size-select-pad-x) - 4px + var(--size-icon) + 2px)}.project-select.has-clear{padding-right:calc(var(--size-select-pad-x) * 2 + var(--size-icon) + var(--size-clear) + 2px)}.project-setting-title{display:flex;align-items:center;gap:4px}.project-setting-title>.project-clear{position:static}.project-settings>.project-setting.is-list{flex:1 1 auto;min-height:0;gap:0}.project-settings>.is-list>.project-setting-label,.project-settings>.is-list>.project-setting-title{margin-bottom:calc(var(--space-form-label-ctl) + var(--size-label-cap) - var(--line-height))}.project-settings>.project-action{margin-top:calc(var(--space-form-action) - var(--space-form-ctl-label) + var(--size-label-cap) + 1px)}.project-list{position:relative;flex:1 1 0;min-height:var(--size-list-min-h);overflow-x:hidden;overflow-y:auto;background:var(--color-list-bg);color:var(--color-text-strong);outline:none;cursor:default}.project-list:focus-visible{outline:1px dotted var(--color-text);outline-offset:-1px}.project-list-row{box-sizing:border-box;height:var(--size-list-row-h);padding-left:0;line-height:var(--line-height);white-space:pre;overflow:hidden}.project-list-row.is-level-1{padding-left:var(--size-list-indent)}.project-list-row.is-selected{background:var(--color-list-selected-bg);color:var(--color-list-selected-text)}.project-list::-webkit-scrollbar{width:var(--size-scrollbar)}.project-list::-webkit-scrollbar-track{background:var(--color-scrollbar-track);border:solid var(--color-scrollbar-border);border-width:0 1px}.project-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border:solid var(--color-scrollbar-border);border-width:0 1px}.project-list::-webkit-scrollbar-button:single-button{display:block;height:16px;border:solid var(--color-scrollbar-border);border-width:1px 1px 0;background-color:var(--color-scrollbar-track);background-repeat:no-repeat;background-position:3px 4px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='5'%3E%3Cpath d='M0.5 4 3 1 5.5 4' fill='none' stroke='%23333' stroke-width='1.3'/%3E%3C/svg%3E")}.project-list::-webkit-scrollbar-button:single-button:vertical:increment{border-width:0 1px 1px;background-position:3px 6px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='5'%3E%3Cpath d='M0.5 1 3 4 5.5 1' fill='none' stroke='%23333' stroke-width='1.3'/%3E%3C/svg%3E")}.project-action{align-self:flex-start;box-sizing:border-box;height:var(--size-text-h);padding:0 var(--size-form-action-pad-x);border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-form-action-text);font:inherit;white-space:nowrap;cursor:pointer}.project-action:hover:not(:disabled){background:var(--color-surface-hover)}.project-action:disabled{border-color:var(--color-button-disabled-border);background:var(--color-spin-disabled-bg);color:var(--color-spin-arrow-disabled);cursor:default}.project-image-body{display:flex;flex-direction:column;gap:var(--space-cover-actions)}.project-image{position:relative;box-sizing:border-box;height:var(--size-cover-preview-h);border:1px solid var(--color-prop-border);background:var(--color-surface);overflow:hidden}.project-image-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.project-image-img[hidden],.project-image-none[hidden]{display:none}.project-image-none{display:block;padding:4px var(--size-form-input-pad-x);color:var(--color-form-placeholder);font-style:italic}.project-image-actions{display:flex;gap:var(--space-cover-actions)}.project-image-actions>.project-action{align-self:auto}.filter-table-host{margin:-6px -8px}.filter-table-tools{padding:6px 8px 0}.filter-table-search{max-width:280px}.filter-table-head{padding:6px 8px;font-weight:var(--font-weight-semibold)}.filter-table-body{overflow:auto;max-height:60vh;border-top:1px solid var(--color-border-tab);border-bottom:1px solid var(--color-border-tab)}.filter-table-body[hidden]{display:none}.filter-table-empty{margin:0;padding:8px;color:var(--color-text-muted);font-style:italic}.filter-table-empty[hidden]{display:none}.filter-table-foot{display:flex;flex-direction:column;gap:2px;padding:4px 8px;color:var(--color-text-muted)}.filter-table-note,.filter-table-grid tbody tr.is-parked td{color:var(--color-warning-border)}.filter-dialog .devinfo-body{padding:0;overflow:hidden}.filter-dialog .filter-table-host{margin:0;flex:1;min-height:0;display:flex;flex-direction:column}.filter-dialog .filter-table{flex:1;min-height:0;display:flex;flex-direction:column}.filter-dialog .filter-table-tools{padding:8px 16px}.filter-dialog .filter-table-head{padding:0 16px 6px}.filter-dialog .filter-table-body{flex:1;min-height:0;max-height:none;border-top:1px solid var(--color-line);border-bottom:0}.filter-dialog .filter-table-empty{padding:8px 16px}.filter-table-info>.filter-table-foot{padding:0;flex:1;min-width:0}.view-frame{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--color-surface-panel);color:var(--color-text-strong)}.view-nav-list{padding-top:2px;outline:none}.view-nav-item{padding-left:12px}.view-nav-list:focus-visible .view-nav-item.selected{outline:1px dotted var(--color-text);outline-offset:-1px}.view-main{min-height:0}.settings-host{flex:1;min-width:0;min-height:0;overflow:auto;background:var(--color-surface-chrome)}.settings-host[hidden]{display:none}.settings-page{max-width:1080px;padding:28px 32px 32px;color:var(--color-text-tab)}.settings-sections{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px;align-items:stretch}.settings-section{display:flex;flex-direction:column;gap:12px;padding:16px 20px 20px;background:var(--color-surface);box-shadow:0 0 6px var(--color-shadow-tile)}.settings-section-head{display:flex;align-items:center;gap:10px;min-height:var(--size-tool-btn-h)}.settings-section-icon{flex:none;font-size:24px;line-height:24px;color:var(--color-icon-active)}.settings-section-title{flex:1;min-width:0;margin:0;font-size:var(--font-size-home);font-weight:var(--font-weight-normal);color:var(--color-icon-active)}.settings-section-head>.tool-btn{margin-right:-8px}.settings-field{max-width:360px}.settings-section .project-setting{gap:6px}.settings-section .project-setting>.settings-hint{margin-top:2px}.settings-hint{margin:0;color:var(--color-text-muted);line-height:18px}.settings-storage{grid-column:1 / -1}.settings-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px 48px}.settings-group{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0}.settings-group+.settings-group:before{content:"";position:absolute;top:0;bottom:0;left:-24px;border-left:1px solid var(--color-line)}.settings-group[hidden]{display:none}.settings-group-title{margin:0;font-size:var(--font-size);font-weight:var(--font-weight-semibold);color:var(--color-text)}.settings-values{display:grid;color:var(--color-text)}.settings-values .project-setting-label{width:auto;font-weight:var(--font-weight-normal)}.settings-values .project-setting-value{overflow-wrap:anywhere}.settings-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.settings-stats .project-setting-row{flex-direction:column;justify-content:flex-start;gap:2px}.settings-stats .project-setting-value{order:-1;font-size:var(--font-size-home);line-height:24px;color:var(--color-text-strong)}.settings-stats .project-setting-label{color:var(--color-text-muted)}.settings-group>.settings-hint{margin-top:auto;padding-top:2px}.settings-hint[hidden]{display:none}.settings-host{display:flex;overflow:hidden}.settings-frame .view-main{overflow:auto;background:var(--color-surface-chrome)}.settings-connections{grid-column:1 / -1}.settings-connections-list{display:flex;flex-direction:column}.settings-connection{display:flex;align-items:center;gap:10px;min-height:32px;border-top:1px solid var(--color-line)}.settings-connection-icon{flex:none;font-size:var(--font-size-m);color:var(--color-icon-line)}.settings-connection-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.settings-connection-endpoint{flex:none;color:var(--color-text-muted)}.settings-hint.is-error{color:var(--color-error-border)}.settings-connection-nat{flex:none;padding:0 4px;border:1px solid var(--color-line);color:var(--color-text-muted);font-size:var(--font-size-xs)}.settings-number{display:flex;align-items:center;gap:8px}.settings-number-input{width:96px;box-sizing:border-box}.settings-unit{color:var(--color-text-muted)}.start-host{flex:1;min-width:0;min-height:0;overflow:auto;background:var(--color-surface-chrome)}.start-host[hidden]{display:none}.start-view{max-width:1080px;padding:28px 32px 32px;color:var(--color-text-tab)}.start-head{margin-bottom:24px}.start-title{margin:0 0 8px;font-size:28px;line-height:36px;font-weight:var(--font-weight-semibold)}.start-logo{position:relative;top:4.5px;display:inline-block;margin:0 8px 0 -6px;font-size:36px;line-height:0;vertical-align:baseline;color:var(--color-icon-active)}.start-lead{margin:0;max-width:760px;font-size:var(--font-size-l);line-height:22px}.start-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px;align-items:stretch}.start-card{display:flex;flex-direction:column;gap:12px;padding:16px 20px 20px;background:var(--color-surface);box-shadow:0 0 6px var(--color-shadow-tile)}.start-card-head{display:flex;align-items:center;gap:10px}.start-card-icon{flex:none;font-size:24px;line-height:24px;color:var(--color-icon-active)}.start-card-title{flex:1;min-width:0;margin:0;font-size:var(--font-size-home);font-weight:var(--font-weight-normal);color:var(--color-icon-active)}.start-badge{flex:none;height:var(--size-home-badge-h);padding:0 8px;background:var(--color-border-tab);line-height:var(--size-home-badge-h);white-space:nowrap}.start-intro{margin:0;line-height:18px}.start-facts{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.start-fact{display:flex;align-items:flex-start;gap:8px;line-height:18px}.start-fact-icon{flex:none;width:var(--size-icon);font-size:var(--size-icon);line-height:18px;color:var(--color-text-muted)}.start-stats{margin:0;color:var(--color-text-muted)}.start-stats[hidden]{display:none}.start-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:4px}.start-btn{display:inline-flex;align-items:center;gap:6px;height:var(--size-text-h);padding:0 12px;border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);font:inherit;cursor:pointer;white-space:nowrap}.start-btn .mdi{font-size:var(--size-icon)}.start-btn:hover{background:var(--color-surface-hover)}.start-btn.is-primary{border-color:var(--color-accent)}.start-btn:focus-visible{outline:1px dotted var(--color-text);outline-offset:-4px}.start-hint{color:var(--color-text-muted)}.dpt-input{display:inline-flex;align-items:center;gap:4px;min-width:0}.dpt-field{height:var(--size-search-h);box-sizing:border-box;padding:0 6px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit}.dpt-field::placeholder{color:var(--color-text-muted)}.dpt-number,.dpt-text,.dpt-hex{width:160px}.dpt-num{width:52px;padding-right:2px}.dpt-scene{width:60px}.dpt-time{width:80px;text-align:center}.dpt-select{height:var(--size-search-h)}.dpt-unit,.dpt-sep{color:var(--color-text);white-space:nowrap}.dpt-range{width:180px;accent-color:var(--color-accent)}.dpt-step-text{min-width:36px}.dpt-radio{display:inline-flex;align-items:center;gap:4px;margin-right:4px;white-space:nowrap}.dpt-radio input{margin:0;accent-color:var(--color-accent)}.dpt-input .color-picker{flex:none}.dpt-input .color-picker-input{padding-bottom:0}.dpt-part{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;margin-right:6px}.dpt-valid{margin:0;accent-color:var(--color-accent)}.dpt-label{color:var(--color-text)}.dpt-num.dpt-pct,.dpt-num.dpt-dec{width:64px}.dpt-field:disabled,.dpt-range:disabled{color:var(--color-text-muted)}.dpt-range-compact{width:64px}.dpt-input[data-kind=relative] .dpt-step-text,.dpt-input[data-kind=ctcontrol] .dpt-step-text{min-width:18px}.dpt-input .date-picker-input{padding-bottom:0}.dpt-bits-byte{display:inline-flex;align-items:center;gap:4px;margin-right:6px;white-space:nowrap}.dpt-bit-box{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.dpt-bit{margin:0;accent-color:var(--color-accent)}.dpt-bits-hex{font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.dpt-num.dpt-ver{width:52px}.dpt-num.dpt-geo{width:88px}.diag-host{flex:1;min-width:0;min-height:0;display:flex;background:var(--color-surface)}.diag-host[hidden]{display:none}.diag-sendbox{flex:none;display:flex;align-items:center;gap:8px;height:40px;padding:0 0 1px 8px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab);color:var(--color-text)}.diag-sendbox[hidden]{display:none}.diag-field-label{flex:none;margin-left:8px;font-weight:var(--font-weight-semibold);white-space:nowrap}.diag-field-label:first-child{margin-left:0}.diag-ga{width:140px}.diag-dpt{width:100%;height:var(--size-search-h)}.diag-dpt-box{flex:0 1 220px}.diag-dpt-box,.diag-value-box{display:inline-flex;align-items:center;min-width:0}.diag-value-box:has(.color-picker){flex:none}.diag-sendbox [data-send-mode][hidden]{display:none}.diag-send-buttons{margin-left:auto;display:flex;align-items:center;gap:8px;align-self:stretch;padding:0 8px}.diag-send-btn{min-width:110px}.diag-bottom{gap:8px}.diag-bottom .diag-send-msg{flex:1;min-width:0}.diag-label{margin:0 6px 0 4px;white-space:nowrap;color:var(--color-text)}.diag-input{height:var(--size-search-h);box-sizing:border-box;padding:0 6px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit}.diag-input::placeholder{color:var(--color-text-muted)}.diag-project-tools{flex:none;display:inline-flex;align-items:center;gap:4px;margin-left:4px}.diag-project-tools[hidden]{display:none}.diag-project{max-width:240px;gap:6px}.diag-project-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diag-project-chevron{color:var(--color-split-chevron)}.diag-project.is-open{background:var(--color-split-open)}.diag-project:disabled,.diag-frame .cat-toolbar .tool-btn:disabled{opacity:.5}.diag-send-btn:disabled{color:var(--color-text-disabled);cursor:default}.diag-send-msg{padding:0 4px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diag-send-msg.is-error{color:var(--color-error-border)}.diag-telegrams{flex:1;min-height:0;overflow:auto;background:var(--color-surface)}.diag-telegrams thead th{position:sticky;top:0;z-index:2}.diag-telegrams{overflow-anchor:none}.diag-scroll{min-width:0}.diag-empty{margin:0;padding:16px 12px;color:var(--color-text-muted);font-style:italic;line-height:18px}.diag-table tr.diag-out td{color:var(--color-accent)}.diag-table tr.diag-bad td{color:var(--color-error-border)}.diag-table td.lead .mdi{color:var(--color-icon-line)}.diag-table td.lead .mdi.is-device{color:var(--color-icon-device)}.diag-line-box{flex:none;display:inline-flex;align-items:center;gap:6px;margin-left:8px}.diag-line{height:var(--size-search-h);min-width:90px;max-width:220px}.diag-device-label{margin-left:8px}.diag-device-box{flex:none;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin:var(--size-bar-inset) 8px 0 0}.diag-device-address{width:110px;height:var(--size-search-h);box-sizing:border-box}.diag-device-address.is-invalid{border-color:var(--color-error-border)}.diag-device-body{flex:1;min-height:0;overflow:auto;background:var(--color-surface)}.diag-device-body .diag-device-state{padding:4px 8px}.diag-scan-bar{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;gap:8px;color:var(--color-text)}.diag-scan-count{flex:none;margin-left:auto}.diag-progress{flex:none;display:block;width:160px;height:8px;accent-color:var(--color-accent)}.diag-scan-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.run-toggle-text{display:inline-grid}.run-toggle-start,.run-toggle-stop{grid-area:1 / 1}.run-toggle[data-state=start] .run-toggle-stop,.run-toggle[data-state=stop] .run-toggle-start{visibility:hidden}.diag-scan-bar[hidden]{display:none}.diag-notes{flex:none;display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:var(--color-surface);border-bottom:1px solid var(--color-border-tab)}.diag-notes[hidden]{display:none}.diag-note{display:flex;align-items:flex-start;gap:8px;padding:4px 8px;line-height:18px;color:var(--color-text);border:1px solid var(--color-warning-border);background:var(--color-warning-bg)}.diag-note .mdi{flex:none;font-size:var(--size-icon);line-height:18px;color:var(--color-warning-border)}.diag-note.is-error{border-color:var(--color-error-border);background:var(--color-error-bg)}.diag-note.is-error .mdi{color:var(--color-error-border)}.diag-note-text{min-width:0;white-space:normal}.diag-table tr.diag-warn td{color:var(--color-warning-border)}.diag-device-open{display:inline-flex;align-items:center;gap:4px;color:var(--color-accent);text-decoration:none}.diag-device-open:hover{text-decoration:underline}.diag-device-open .mdi{font-size:var(--size-icon);line-height:var(--size-icon)}.diag-device-hints{margin:0;padding-left:16px}.diag-frame.is-monitor .cat-toolbar{overflow:hidden;container-type:inline-size}.diag-frame.is-monitor .cat-toolbar .tool-sep{align-self:flex-start;margin-top:5px}.diag-conn-host{flex:0 .01 200px;display:inline-flex;align-items:center;align-self:flex-start;margin-top:var(--size-bar-inset);height:var(--size-search-h);width:200px;max-width:200px;min-width:40px}.diag-frame.is-monitor .cat-toolbar .search-box{flex:0 1 auto;min-width:60px}.diag-conn-host .monitor-conn-sel{height:var(--size-search-h);flex:1 1 auto;width:100%;max-width:200px;min-width:0}.row-progress{display:inline-flex;align-items:center;gap:6px;max-width:100%;vertical-align:top}.row-progress-bar{flex:none;width:var(--size-row-progress-w);height:var(--size-import-bar-h);border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden;box-sizing:content-box}.row-progress-fill{display:block;width:0;height:100%;background:var(--color-accent)}.row-progress-icon{flex:none;font-size:var(--size-icon);line-height:var(--line-height);color:var(--color-text-muted)}.row-progress-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-progress.is-running .row-progress-icon{color:var(--color-accent)}.row-progress.is-ok .row-progress-icon{color:var(--color-openknx-green)}.row-progress.is-ok .row-progress-fill{background:var(--color-openknx-green)}.row-progress.is-error .row-progress-icon,.row-progress.is-error .row-progress-text{color:var(--color-error-border)}.row-progress.is-error .row-progress-fill{background:var(--color-error-border)}.row-progress.is-warn .row-progress-icon,.row-progress.is-warn .row-progress-text{color:var(--color-warning-border)}.row-progress.is-warn .row-progress-fill{background:var(--color-warning-border)}.row-progress.is-waiting .row-progress-text,.row-progress.is-skipped .row-progress-text,.row-progress.is-cancelled .row-progress-text{color:var(--color-text-muted)}.col-table.is-pick .lead,.col-table.is-pick thead th.lead{width:var(--size-pick-lead-w);min-width:var(--size-pick-lead-w);max-width:var(--size-pick-lead-w)}.col-table.is-pick td.lead{padding:3px 0 0}.col-table.is-pick .pick-box{display:flex;align-items:center;gap:4px;padding-left:4px}.col-table.is-pick thead th.lead .pick-box{height:100%;align-items:center}.col-table.is-pick .pick-box .ui-checkbox{flex:none}.col-table.is-pick td.lead .pick-box .mdi{margin-left:0}.date-picker{width:var(--size-date-w)}.date-picker.is-time{width:var(--size-date-time-w)}.date-picker-icon{display:block;font-size:var(--size-icon);line-height:1}.date-calendar{width:var(--size-calendar-w)}.date-calendar-head{display:flex;align-items:center;gap:2px;height:var(--size-calendar-nav);margin-bottom:4px}.date-calendar-prev,.date-calendar-next,.date-calendar-title{color:var(--color-text);display:flex;align-items:center;justify-content:center;height:var(--size-calendar-nav);border-radius:var(--radius-calendar)}.date-calendar-prev,.date-calendar-next{flex:none;width:var(--size-calendar-nav);font-size:var(--size-icon-l);color:var(--color-text-muted)}.date-calendar-title{flex:1;min-width:0;font-weight:var(--font-weight-semibold);white-space:nowrap}.date-calendar-prev:hover:not(:disabled),.date-calendar-next:hover:not(:disabled),.date-calendar-title:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.date-calendar-prev:disabled,.date-calendar-next:disabled{color:var(--color-text-disabled)}.date-calendar-title:disabled{color:var(--color-text)}.date-calendar-month{height:var(--size-calendar-body-h)}.date-calendar-weekdays,.date-calendar-days{display:grid;grid-template-columns:repeat(7,var(--size-calendar-day-w))}.date-calendar-weekdays{grid-template-rows:26px}.date-calendar-days{grid-template-rows:repeat(6,var(--size-calendar-day-h))}.date-calendar-weekday{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-calendar-weekday);color:var(--color-text-muted)}.date-calendar-day,.date-calendar-cell{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:var(--radius-calendar);cursor:pointer}.date-calendar-day.is-other,.date-calendar-cell.is-other{color:var(--color-text-disabled)}.date-calendar-day.is-blocked,.date-calendar-cell.is-blocked{opacity:.4;cursor:default}.date-calendar-day:hover:not(.is-blocked),.date-calendar-cell:hover:not(.is-blocked){background:var(--color-surface-hover)}.date-calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--color-accent)}.date-calendar-day.is-selected,.date-calendar-cell.is-selected{background:var(--color-accent);color:var(--color-calendar-selected-text)}.date-calendar.is-keyboard .is-cursor{box-shadow:0 0 0 2px var(--color-surface-chrome),0 0 0 3px var(--color-accent);z-index:1}.date-calendar-months{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,44px);align-content:space-evenly;gap:6px;height:var(--size-calendar-body-h);box-sizing:border-box}.date-calendar-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;height:var(--size-calendar-foot-h);box-sizing:content-box;margin-top:6px;padding-top:6px;border-top:1px solid var(--color-border-tab)}.date-calendar-today{height:24px;padding:0 8px;border-radius:var(--radius-calendar);color:var(--color-accent)}.date-calendar-today:hover:not(:disabled){background:var(--color-surface-hover)}.date-calendar-today:disabled{color:var(--color-text-disabled)}.date-calendar-time{display:flex;align-items:center;gap:2px;color:var(--color-text-muted)}.date-calendar-time-part{width:30px;height:24px;box-sizing:border-box;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-calendar);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:center;outline:none}.date-calendar-time-part:focus{border-color:var(--color-accent)}.color-picker{width:var(--size-color-w);min-width:0;flex:0 1 auto}.color-picker.is-white{width:var(--size-color-white-w)}.color-picker.is-no-hex{width:var(--size-color-only-w)}.color-picker-input{font-variant-numeric:tabular-nums;text-transform:uppercase}.color-picker-input::placeholder{text-transform:none}.color-picker-button{flex:none}.color-picker.is-no-hex .color-picker-button{width:100%;border-left:0}.color-picker-fill{display:block;width:var(--size-color-fill);height:var(--size-color-fill);border-radius:var(--radius-calendar);box-shadow:inset 0 0 0 1px var(--color-shadow-dialog)}.color-picker.is-invalid{border-color:var(--color-error-border);background:var(--color-error-bg)}.color-popup{width:var(--size-color-popup-w)}.color-sv,.color-hue{position:relative;box-sizing:border-box;border:1px solid var(--color-border);outline:none;touch-action:none}.color-sv{height:var(--size-color-sv-h);cursor:crosshair;background-image:var(--color-gradient-sv-black),var(--color-gradient-sv-white)}.color-hue{height:var(--size-color-hue-h);margin-top:8px;cursor:ew-resize;background-image:var(--color-gradient-hue)}.color-sv:focus-visible,.color-hue:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.color-sv-handle{position:absolute;box-sizing:border-box;width:var(--size-color-handle);height:var(--size-color-handle);margin:calc(var(--size-color-handle) / -2) 0 0 calc(var(--size-color-handle) / -2);border:2px solid var(--color-surface);border-radius:50%;box-shadow:0 0 0 1px var(--color-text);pointer-events:none}.color-hue-handle{position:absolute;top:-3px;bottom:-3px;box-sizing:border-box;width:6px;margin-left:-3px;border:2px solid var(--color-surface);border-radius:2px;box-shadow:0 0 0 1px var(--color-text);pointer-events:none}.color-popup-values{display:flex;align-items:flex-start;gap:10px;margin-top:8px}.color-popup-preview{display:flex;flex:none;gap:6px}.color-popup-cell{display:flex;flex-direction:column;align-items:center;gap:2px}.color-popup-new,.color-popup-old{display:block;width:var(--size-color-preview-w);height:var(--size-color-preview-h);border-radius:var(--radius-calendar);box-shadow:inset 0 0 0 1px var(--color-shadow-dialog)}.color-popup-old:hover,.color-popup-old:focus-visible,.color-popup-swatch:hover,.color-popup-swatch:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface-chrome),0 0 0 3px var(--color-accent)}.color-popup-caption{font-size:var(--font-size-calendar-weekday);color:var(--color-text-muted)}.color-popup-inputs{display:flex;flex:1;flex-direction:column;gap:6px;min-width:0}.color-popup-field{display:flex;align-items:center;gap:4px}.color-popup-field .color-popup-caption{flex:none}.color-popup-rgb{display:flex;gap:6px}.color-popup-hex,.color-popup-num{box-sizing:border-box;min-width:0;height:24px;margin:0;padding:0 4px;border:1px solid var(--color-border);border-radius:var(--radius-calendar);background:var(--color-surface);color:var(--color-text);font:inherit;outline:none}.color-popup-hex{flex:1;text-transform:uppercase}.color-popup-num{width:var(--size-color-input-w);text-align:center}.color-popup-hex:focus,.color-popup-num:focus{border-color:var(--color-accent)}.color-popup-hex.is-invalid{border-color:var(--color-error-border);background:var(--color-error-bg)}.color-popup-palette{margin-top:8px;padding-top:6px;border-top:1px solid var(--color-border-tab)}.color-popup-swatches{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:4px 0 6px}.color-popup-swatches:last-child{margin-bottom:0}.color-popup-swatch{height:var(--size-color-swatch-h);border-radius:var(--radius-calendar);box-shadow:inset 0 0 0 1px var(--color-shadow-dialog)}.color-popup-palette.is-first{margin-top:0;padding-top:0;border-top:0}.color-popup-swatch.is-selected{position:relative}.color-popup-swatch.is-selected:after{content:"";position:absolute;box-sizing:border-box;width:var(--size-color-check-w);height:var(--size-color-check-h);left:round(down,calc(50% - var(--size-color-check-w) / 2),1px);top:calc((var(--size-color-swatch-h) - var(--size-color-check-h)) / 2 - 1px);border:solid var(--color-surface);border-width:0 2px 2px 0;transform:rotate(45deg)}.color-popup-swatch.is-selected.is-light:after{border-color:var(--color-text)}.color-popup-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.color-popup-foot .color-popup-hex{flex:none;width:calc(var(--size-color-input-w) * 2)}.color-popup-more{color:var(--color-accent)}.color-popup-more:hover,.color-popup-more:focus-visible{text-decoration:underline;outline:none}.color-popup-fine{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border-tab)}.color-popup-fine .color-popup-values{align-items:center}.tile-tags{display:flex;height:var(--size-tag-bar-h);margin-top:var(--size-tag-bar-gap);border-radius:var(--radius-tag-bar);overflow:hidden}.tile-tag{flex:1 1 0;min-width:0;height:100%;box-sizing:border-box}.tile-tag.is-light{box-shadow:inset 0 0 0 1px var(--color-tag-light-edge)}.tile-schema{flex:none;font-size:var(--font-size);line-height:var(--line-height);color:var(--color-text-tab)}.tile-lock+.tile-schema,.tile-schema+.tile-count{padding-left:6px;border-left:1px solid var(--color-border)}.tag-chips{display:flex;flex-wrap:wrap;gap:var(--size-tag-chip-gap);min-height:var(--size-tag-chip-h);align-items:center}.tag-empty,.tag-hint{color:var(--color-text-muted);font-style:italic}.tag-chip{display:inline-flex;align-items:center;gap:5px;box-sizing:border-box;max-width:100%;height:var(--size-tag-chip-h);padding:0 2px 0 6px;border:1px solid var(--color-prop-border);background:var(--color-surface);color:var(--color-text-tab)}.tag-chip-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-chip.is-readonly{padding-right:6px}.tag-dot{flex:none;width:var(--size-tag-dot);height:var(--size-tag-dot);border-radius:var(--radius-calendar);box-shadow:inset 0 0 0 1px var(--color-shadow-dialog)}.tag-dot.is-light{box-shadow:inset 0 0 0 1px var(--color-tag-light-edge)}.tag-chip-remove{flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--size-icon);height:var(--size-icon);margin:0;padding:0;border:0;background:none;color:var(--color-text-muted);font-size:var(--size-icon);cursor:pointer}.tag-chip-remove:hover,.tag-chip-remove:focus-visible{color:var(--color-text);background:var(--color-surface-hover);outline:none}.tag-add-row{display:flex;align-items:flex-start;gap:6px;min-width:0}.tag-text-box{flex:1 1 0;min-width:0;display:flex}.tag-text{flex:1;min-width:0}.tag-add-row>.color-picker,.tag-add-row>.tag-add{flex:none}.tag-suggest{position:fixed;z-index:1000;width:max-content;max-width:60vw;box-sizing:border-box;box-shadow:var(--shadow-popup);max-height:var(--size-tag-suggest-max-h);overflow:auto;border:1px solid var(--color-border-tab);background:var(--color-surface-chrome);color:var(--color-text-tab)}.tag-suggest-item{display:flex;align-items:center;gap:6px;padding:3px 6px;cursor:default;white-space:nowrap}.tag-suggest-item:hover,.tag-suggest-item.is-active{background:var(--color-surface-hover)}.tag-suggest-item.is-new{color:var(--color-text-muted);font-style:italic}.link-adorner{position:fixed;z-index:10000;display:flex;align-items:center;gap:6px;height:26px;padding:0 10px 0 5px;box-sizing:border-box;background:var(--color-link-adorner);color:var(--color-link-adorner-text);font-size:var(--font-size);line-height:var(--line-height);white-space:nowrap;pointer-events:none}.link-adorner:not(.is-target){padding-right:5px}.link-adorner:not(.is-target) .link-adorner-text{display:none}.link-adorner-icon{flex:none;width:16px;height:16px;font-size:16px;line-height:16px}.link-adorner-icon.is-com{color:var(--color-accent)}.data-table tbody tr.is-link-target td,.topology-row.is-link-target{background:var(--color-link-target);box-shadow:none}.link-msg.is-question .msg-icon{color:var(--color-link-msg-question)}.link-msg.is-error .msg-icon{color:var(--color-link-msg-warning)}.link-msg-head{margin:0 0 2px;font-size:var(--font-size-m);line-height:20px}.link-msg-sub{margin:0;color:var(--color-text-muted);white-space:pre-wrap}.link-msg-rule{margin:10px 0 12px;border:0;border-top:1px solid var(--color-line)}.link-msg-text{margin:0;white-space:pre-wrap}.link-dialog{box-sizing:border-box;width:min(498px,calc(100vw - 32px));padding:0;border:1px solid var(--color-border);background:var(--color-surface-chrome);color:var(--color-text);font:inherit;font-size:var(--font-size);box-shadow:0 4px 16px var(--color-shadow-dialog)}.link-dialog::backdrop{background:var(--color-backdrop)}.link-dialog-body{display:flex;flex-direction:column;gap:8px;padding:16px 24px 24px}.link-dialog-title{margin:0 0 4px;font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);line-height:26px}.link-dialog-obj{display:flex;align-items:center;gap:6px;line-height:var(--line-height)}.link-dialog-obj.is-com{padding-left:10px}.link-dialog-obj .mdi{font-size:14px;line-height:14px}.link-dialog-rule{margin:6px 0 20px;border:0;border-top:1px solid var(--color-border-tab)}.link-dialog .link-dialog-search,.link-dialog .link-dialog-search.has-help{width:100%}.link-dialog-list{height:300px;overflow:auto;border:1px solid var(--color-line);background:var(--color-surface)}.link-dialog-list table{width:100%;border-collapse:collapse}.link-dialog-list th{position:sticky;top:0;height:23px;padding:0 4px;border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);background:var(--color-surface-chrome);font-weight:var(--font-weight-normal);text-align:left;white-space:nowrap}.link-dialog-list tbody tr:nth-child(odd) td{background:var(--color-surface-raised)}.link-dialog-list td{height:24px;padding:0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:default}.link-dialog-list tr.selected td{background:var(--color-surface-pressed);color:var(--color-accent)}.link-dialog-list tbody tr:hover td{background:var(--color-surface-hover)}.link-dialog-list .mdi{font-size:14px;line-height:14px}.link-dialog-empty{padding:8px;color:var(--color-text-muted)}.link-dialog-label{margin-top:8px;font-weight:var(--font-weight-semibold)}.link-dialog-path{display:flex;align-items:center;gap:4px;line-height:var(--line-height)}.link-dialog-path .mdi{font-size:14px;line-height:14px}.link-dialog-new{display:flex;gap:8px}.link-dialog-addr{display:flex;align-items:center;gap:4px;box-sizing:border-box;width:120px;height:40px;padding:0 8px;border:1px solid var(--color-border);background:var(--color-surface)}.link-dialog-addr input{width:52px;border:0;background:transparent;color:var(--color-text);font:inherit}.link-dialog-addr .link-dialog-prefix{color:var(--color-text)}.link-dialog-addr.is-full{width:150px}.link-dialog-addr.is-full input{width:100px}.link-dialog-addr.is-invalid{border-color:var(--color-error-border);background:var(--color-error-bg)}.link-dialog-name{flex:1;box-sizing:border-box;height:40px;padding:0 8px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit}.link-dialog-name::placeholder{color:var(--color-text-muted);font-style:italic}.link-dialog-error{min-height:var(--line-height);color:var(--color-error-border)}.link-dialog-buttons{display:flex;justify-content:flex-end;align-items:center;gap:8px;height:48px;box-sizing:border-box;padding:0 16px;background:var(--color-surface);border-top:1px solid var(--color-border-tab)}.devinfo{width:min(var(--size-devinfo-w),calc(100vw - 32px));height:min(var(--size-devinfo-h),85vh)}.devinfo[open]{display:flex;flex-direction:column}.devinfo-head{flex:none;padding:12px 16px 10px;border-bottom:1px solid var(--color-line)}.devinfo-title{display:flex;align-items:center;gap:8px;margin:0;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.devinfo-title .mdi{font-size:20px;color:var(--color-accent)}.devinfo-bar{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:4px 12px;background:var(--color-surface-chrome);border-bottom:1px solid var(--color-line)}.devinfo-bar .tool-sep{margin:0 4px}.devinfo-body{flex:1;min-height:0;overflow:auto;padding:12px 16px 16px;background:var(--color-surface)}.devinfo-body{display:flex;flex-direction:column}.devinfo-content{flex:1 0 auto;min-width:0}.devinfo-content.is-loading{display:flex;align-items:center;justify-content:center}.devinfo-loading{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--color-text-muted)}.devinfo-loading .devinfo-spinner{font-size:var(--size-devinfo-spinner);line-height:1;color:var(--color-accent);animation:devinfo-spin var(--duration-spin) linear infinite}.devinfo-loading.is-small{flex-direction:row;justify-content:flex-start;gap:8px;padding:4px 0}.devinfo-loading.is-small .devinfo-spinner{font-size:var(--size-devinfo-spinner-s)}@keyframes devinfo-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.devinfo-loading .devinfo-spinner{animation:none}}.devinfo-section{margin:0 0 20px}.devinfo-section h2{margin:0 0 6px;font-size:var(--font-size-m);font-weight:var(--font-weight-semibold)}.devinfo-summary{margin:0 0 6px;color:var(--color-text-muted);line-height:var(--line-height)}.devinfo-table{table-layout:fixed}.devinfo-table th,.devinfo-table td{white-space:pre-wrap;overflow-wrap:anywhere;user-select:text}.devinfo-table td{padding-top:3px;padding-bottom:3px}.devinfo-table th:first-child{width:var(--size-devinfo-col-w)}.devinfo-table.is-note tbody td{background:var(--color-highlight)}.devinfo-table .row-progress{font-family:var(--font-family);font-size:var(--font-size)}.devinfo-hints{margin:0;padding-left:16px}.devinfo-foot{flex:none;align-items:center}.devinfo-info{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.devinfo-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted)}.devinfo-status.is-error{color:var(--color-error-border)}.devinfo-meter{flex:1;max-width:240px;height:var(--size-import-bar-h);border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden}.devinfo-meter[hidden]{display:none}.devinfo-meter-fill{display:block;width:0;height:100%;background:var(--color-accent)}.ui-sel{position:relative;display:inline-flex;align-items:center;box-sizing:border-box;min-width:0;vertical-align:middle;cursor:pointer;user-select:none}.ui-sel[hidden]{display:none}.ui-sel-body{flex:1;display:grid;grid-template-columns:minmax(0,1fr);min-width:0}.ui-sel-text,.ui-sel-sizer{grid-area:1 / 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre}.ui-sel-sizer{height:0;visibility:hidden;pointer-events:none}.ui-sel.is-placeholder .ui-sel-text{color:var(--color-form-placeholder);font-style:italic}.ui-sel.is-disabled{cursor:default}.ui-sel:focus{outline:none}.ui-sel:focus-visible{outline:1px solid var(--color-accent);outline-offset:-1px}.ui-sel:is(.cell-select,.fn-channel-select){padding-right:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='4'%3E%3Cpath d='M0 0h7L3.5 4z' fill='%23333'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.ui-sel:not(.ui-select,.tool-select,.project-select,.rich-size,.cell-select,.fn-channel-select){min-height:var(--size-ctrl-h);padding:0 20px 0 6px;border:1px solid var(--color-border);background:var(--color-surface) no-repeat right 6px center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='4'%3E%3Cpath d='M0 0h7L3.5 4z' fill='%23333'/%3E%3C/svg%3E")}.ui-sel:is(.tool-select,.fn-channel-select,:not(.ui-select,.project-select,.rich-size,.cell-select)):hover:not(.is-disabled,.is-open){background-color:var(--color-surface-hover);border-color:var(--color-border-hover)}.ui-sel:is(.tool-select,.fn-channel-select,:not(.ui-select,.project-select,.rich-size,.cell-select)).is-open{background-color:var(--color-surface-pressed);border-color:var(--color-border-pressed)}.ui-sel:is(.ui-select,.project-select,.rich-size,.cell-select).is-open{border-color:var(--color-accent)}.ui-sel.rich-size:hover:not(.is-disabled){border-color:var(--color-border-pressed)}.ui-sel.is-disabled{color:var(--color-text-muted)}.ui-sel.is-disabled:is(.tool-select,.fn-channel-select){color:var(--color-text-disabled)}.ui-sel-pop{position:fixed;z-index:1000;display:flex;flex-direction:column;box-sizing:border-box;max-width:calc(100vw - 16px);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-popup);font-family:var(--font-family);font-size:var(--font-size);user-select:none}.ui-sel-search{flex:none;position:relative;display:flex;align-items:center;height:var(--size-select-search-h);padding:0 3px;border-bottom:1px solid var(--color-border-tab)}.ui-sel-search-icon{position:absolute;left:9px;font-size:var(--size-icon);line-height:var(--size-icon);color:var(--color-select-chevron);pointer-events:none}.ui-sel-search-input{flex:1;min-width:0;box-sizing:border-box;height:calc(var(--size-select-search-h) - 6px);margin:0;padding:0 6px 0 26px;border:1px solid var(--color-border);border-radius:0;background:var(--color-surface);color:var(--color-text);font:inherit;outline:none}.ui-sel-search-input:focus{border-color:var(--color-accent)}.ui-sel-search-input::placeholder{color:var(--color-form-placeholder);font-style:italic;opacity:1}.ui-sel-list{position:relative;flex:0 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:2px 0}.ui-sel-item{display:flex;align-items:center;box-sizing:border-box;height:var(--size-select-item-h);padding:0 12px 0 0;white-space:pre;cursor:default}.ui-sel-item.is-grouped{padding-left:8px}.ui-sel-check{flex:none;width:var(--size-select-check-w);font-size:var(--size-icon);line-height:var(--size-select-item-h);text-align:center;color:var(--color-select-check)}.ui-sel-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.ui-sel-item.is-active{background:var(--color-surface-hover)}.ui-sel-item.is-selected .ui-sel-label{font-weight:var(--font-weight-semibold)}.ui-sel-item.is-disabled{color:var(--color-text-disabled)}.ui-sel-item.is-disabled.is-active{background:transparent}.ui-sel-group{box-sizing:border-box;height:var(--size-select-item-h);padding:0 8px;line-height:var(--size-select-item-h);font-weight:var(--font-weight-semibold);color:var(--color-select-group);white-space:pre;overflow:hidden;text-overflow:ellipsis;cursor:default}.ui-multisel-item{gap:var(--space-check-gap);padding-left:8px;cursor:pointer}.ui-multisel-item .project-check{flex:none}.ui-sel-sep{height:0;margin:2px 0;border-top:1px solid var(--color-border-tab)}.ui-sel-mark{padding:0;background:var(--color-highlight);color:inherit}.ui-sel-empty{padding:4px 12px;color:var(--color-select-empty);font-style:italic;cursor:default}.props>.acc-section{flex:none;display:flex;flex-direction:column;min-height:0}.props>.acc-section[hidden]{display:none}.props>.acc-section[data-open]{flex:1 1 auto}.acc-section+.acc-section>.acc-head{border-top:1px solid var(--color-border)}.acc-section>.acc-body{display:none}.acc-section[data-open]>.acc-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.acc-section:not([data-open])>.acc-head:hover{background:var(--color-surface-hover)}.acc-toggle{flex:1 1 auto;min-width:0;height:100%;display:flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.acc-toggle>.mdi{flex:none;font-size:var(--size-icon-l);color:var(--color-icon-active)}.acc-toggle[aria-disabled=true]{cursor:default}.acc-toggle:focus-visible{outline:1px solid var(--color-accent);outline-offset:-2px}.acc-toggle>.tab-badge{margin-left:auto}.head-tools{flex:none;display:flex;align-items:center;gap:2px}.head-tools .tool-btn .mdi{color:var(--color-accent)}.head-tools .tool-btn:disabled .mdi{color:var(--color-text-disabled)}.acc-section:not([data-open])>.acc-head .head-tools{display:none}.todo-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.todo-list{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column;box-sizing:border-box;padding:var(--space-todo-pad);outline:none}.todo-cards{display:flex;flex-direction:column;gap:var(--space-todo-gap)}.todo-card{position:relative;display:flex;flex-direction:column;gap:var(--space-todo-gap);box-sizing:border-box;padding:var(--space-card-pad-y) var(--space-card-pad-x);background:var(--color-surface);border:1px solid var(--color-line);border-left:var(--size-tile-accent) solid var(--color-line);cursor:default}.todo-card:hover{border-color:var(--color-border);box-shadow:0 1px 3px var(--color-shadow-tile)}.todo-card.is-selected{background:var(--color-info-bg);border-color:var(--color-line);border-left-color:var(--color-accent)}.todo-list:focus-visible .todo-card.is-selected{outline:1px solid var(--color-accent);outline-offset:1px}.todo-card.is-editing{background:var(--color-surface);border-color:var(--color-accent)}.todo-card-head{display:flex;align-items:flex-start;gap:var(--space-todo-gap)}.todo-check{flex:none;margin-top:1px}.todo-title{flex:1 1 auto;min-width:0;white-space:pre-wrap;word-break:break-word;color:var(--color-text-param)}.todo-title.is-clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.todo-more-text{align-self:flex-start;margin:calc(var(--space-todo-gap) / -2) 0 0 calc(var(--size-check) + var(--space-todo-gap));padding:0;border:0;background:transparent;color:var(--color-accent);font:inherit;cursor:pointer}.todo-more-text:hover{text-decoration:underline}.todo-foot{display:flex;min-width:0;margin-left:calc(var(--size-check) + var(--space-todo-gap))}.todo-editor{flex:1 1 auto;min-width:0}.todo-edit{width:100%;height:auto;box-sizing:border-box;border-color:var(--color-accent)}.todo-editbar{display:flex;align-items:center;gap:6px;margin-top:6px}.todo-editbar .btn{height:var(--size-row-action);padding:0 10px}.todo-edit-hint{margin-left:auto;color:var(--color-text-muted)}.todo-card.is-drop-target{background:var(--color-overlay-drop);border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.row-actions{flex:none;display:flex;margin:-3px -4px 0 0;visibility:hidden}.todo-card:hover .row-actions,.todo-card.is-selected .row-actions,.has-row-actions:hover .row-actions,.has-row-actions.is-selected .row-actions,.row-actions:focus-within{visibility:visible}.tool-btn.row-action{width:var(--size-row-action);height:var(--size-row-action);padding:0;justify-content:center}.object-ref{display:inline-flex;align-items:center;gap:6px;height:var(--size-object-ref-h);box-sizing:border-box;min-width:0;max-width:100%;padding:0 8px 0 6px;border:1px solid var(--color-border-tab);background:var(--color-surface-raised);color:var(--color-text)}.object-ref .mdi{flex:none;font-size:var(--size-icon);line-height:var(--size-icon)}.object-ref .mdi.is-ko{color:var(--color-accent)}.object-ref-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-ref.is-empty{border-style:dashed;border-color:var(--color-border);background:transparent;color:var(--color-text-muted)}.todo-card .object-ref:not(.is-empty){background:var(--color-surface-chrome)}.drop-hint{display:none}.is-drop-target>.drop-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--color-info-bg);color:var(--color-accent);font-weight:var(--font-weight-semibold);pointer-events:none}.empty-state{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-todo-gap);padding:var(--space-todo-pad) calc(var(--space-todo-pad) * 2);text-align:center;color:var(--color-text-muted)}.empty-state-icon{width:var(--size-empty-icon);height:var(--size-empty-icon);font-size:var(--size-empty-icon);line-height:var(--size-empty-icon);color:var(--color-border)}.empty-state-title{color:var(--color-text);font-weight:var(--font-weight-semibold)}.hist-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.hist-dev{flex:none;display:flex;align-items:flex-start;gap:8px;box-sizing:border-box;min-height:var(--size-hist-dev-h);padding:7px 12px 8px;border-bottom:1px solid var(--color-border-tab);background:var(--color-surface-chrome)}.hist-dev .mdi{flex:none;font-size:var(--size-icon);color:var(--color-icon-device)}.hist-dev-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-semibold)}.hist-dev-count{color:var(--color-text-muted);white-space:nowrap}.hist-box{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;outline:none}.hist-list{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column;background:var(--color-surface-raised)}.h-row{flex:none;display:flex;align-items:flex-start;gap:8px;box-sizing:border-box;width:100%;min-height:var(--size-hist-row-h);padding:5px 12px;border:0;border-left:var(--size-hist-accent) solid transparent;border-bottom:1px solid var(--color-border-tab);background:transparent;color:var(--color-text-strong);cursor:pointer;font:inherit;text-align:left}.h-row .mdi{flex:none;font-size:var(--size-icon);line-height:var(--line-height);color:var(--color-text-tab-inactive)}.h-lbl{flex:1;min-width:0;word-break:break-word}.h-time{flex:none;color:var(--color-text-muted);font-size:var(--font-size-hist-time);font-variant-numeric:tabular-nums;white-space:nowrap}.h-row .mdi.h-lock{color:var(--color-warning-border)}.h-row:hover{background:var(--color-surface-hover)}.h-row.is-current,.h-row.is-current:hover{background:var(--color-selection);border-left-color:var(--color-accent);font-weight:var(--font-weight-semibold)}.h-row.is-current .mdi{color:var(--color-icon-active)}.h-row.is-current .mdi.h-lock{color:var(--color-warning-border)}.h-row.is-redo{color:var(--color-text-muted)}.h-row.is-redo .mdi{color:var(--color-icon-channel)}.h-row.is-redo .mdi.h-lock{color:var(--color-warning-border)}.h-row.is-redo .h-lbl{font-style:italic}.h-row.is-redo .h-time{color:var(--color-text-disabled)}.h-row.is-pending{cursor:default}.hist-box:focus-visible .h-row.is-focus{outline:1px solid var(--color-accent);outline-offset:-2px}.hist-base{flex:none;border-top:1px solid var(--color-border);background:var(--color-surface-chrome)}.hist-base .h-row{border-bottom:0}.hist-base .h-row .mdi{color:var(--color-icon-device)}.hist-base .h-row.is-current .mdi{color:var(--color-icon-active)}.hist-empty{flex:1 1 auto;min-height:var(--size-hist-empty-h);display:flex;align-items:center;justify-content:center;text-align:center;padding:0 20px;color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-tab);background:var(--color-surface-raised)}.ops-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--color-surface-raised)}.ops-tabs{flex:none;display:flex;height:var(--size-bar-h);padding:0 8px;background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.ops-tab{flex:1 1 50%;min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:3px;padding:0 8px;border:1px solid transparent;border-bottom:0;background:transparent;color:var(--color-text-tab-inactive);font:inherit;cursor:pointer}.ops-tab .mdi{font-size:var(--size-icon);color:var(--color-text-tab-inactive)}.ops-tab:not(.active):hover{background:var(--color-tab-hover)}.ops-tab.active{margin-bottom:-1px;background:var(--color-surface-raised);border-color:var(--color-border-tab);color:var(--color-text-tab)}.ops-tab.active .mdi{color:var(--color-icon-active)}.ops-tab:focus-visible{outline:1px solid var(--color-accent);outline-offset:-2px}.ops-tab .tab-badge{margin-left:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.c-ok{color:var(--color-openknx-green)}.c-run{color:var(--color-accent)}.c-wait{color:var(--color-warning-border)}.c-idle{color:var(--color-text-muted)}.c-err{color:var(--color-error-border)}.ops-list{flex:1 1 auto;min-height:0;overflow:auto}.ops-list:has(.ops-job){display:flex;flex-direction:column;gap:4px;padding:8px}.ops-job{display:grid;grid-template-columns:18px minmax(0,1fr) auto;column-gap:8px;align-items:start;padding:3px 6px 3px 10px;background:var(--color-surface);border:1px solid var(--color-border-tab);border-left-width:3px}.ops-job-ico{font-size:var(--size-icon-l);line-height:18px}.ops-job-main{min-width:0}.ops-job .ops-title{display:block;line-height:18px}.ops-job-su{display:flex;align-items:center;gap:4px;min-width:0;margin-top:4px;height:16px;line-height:16px;flex-wrap:nowrap;white-space:nowrap;color:var(--color-text-muted)}.ops-job-su .mdi{font-size:12px}.ops-job-su .ops-kind{min-width:0;overflow:hidden;text-overflow:ellipsis}.ops-job-su>.mdi,.ops-job-su .ops-pct,.ops-job-su .ops-time{flex:none}.ops-job-su .ops-time{margin-left:auto;padding-left:8px}.ops-job-su .ops-pct{flex:none;color:var(--color-accent);font-weight:var(--font-weight-semibold)}.ops-job .ops-x{grid-column:2 / 4}.ops-bar{height:var(--size-import-bar-h);margin:4px 0;border:1px solid var(--color-border);background:var(--color-surface-raised);overflow:hidden;box-sizing:content-box}.ops-bar-fill{display:block;width:0;height:100%;background:var(--color-openknx-green)}.ops-job .ops-bar{margin:4px 0 0;height:4px;border-color:var(--color-border-pressed)}.ops-job .ops-bar-fill{background:var(--color-accent)}.ops-cur{display:flex;gap:6px;justify-content:space-between;margin-top:4px;line-height:16px;color:var(--color-text)}.ops-cur.is-waiting{font-weight:var(--font-weight-semibold)}.ops-cur .ops-sub-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-job.is-running{border-left-color:var(--color-accent)}.ops-job.is-running .ops-job-ico{color:var(--color-accent)}.ops-job.is-ask{border-left-color:var(--color-warning-border)}.ops-job.is-ask .ops-job-ico{color:var(--color-warning-border)}.ops-job.is-ask .ops-bar-fill,.ops-job.is-ask .ops-cur{background:var(--color-warning-border);color:var(--color-warning-border)}.ops-job.is-ask .ops-cur{background:transparent}.ops-job.is-error{border-left-color:var(--color-error-border);background:var(--color-error-bg)}.ops-job.is-error .ops-job-ico,.ops-job.is-error .ops-cur{color:var(--color-error-border)}.ops-job.is-error .ops-bar-fill{background:var(--color-error-border)}.ops-job.is-queued{border-left-color:var(--color-border);background:var(--color-surface-raised)}.ops-job.is-queued .ops-job-ico,.ops-job.is-queued .ops-cur{color:var(--color-text-muted)}.ops-cancel,.ops-dismiss{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid transparent;background:transparent;color:var(--color-text-muted);cursor:pointer}.ops-cancel:hover,.ops-dismiss:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-error-border)}.ops-cancel .mdi,.ops-dismiss .mdi{font-size:var(--size-icon)}.ops-cancel:focus-visible,.ops-dismiss:focus-visible{outline:1px solid var(--color-accent);outline-offset:1px}.ops-ask{grid-column:2 / 4;margin:6px 0 0;padding:8px 10px;background:var(--color-warning-bg);border:1px solid var(--color-warning-border)}.ops-serial-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.ops-serial-row.is-stack{flex-direction:column;align-items:flex-start;gap:6px}.ops-serial.btn .mdi{font-size:var(--size-icon)}.ui-checkbox{width:13px;height:13px;margin:0;accent-color:var(--color-accent)}.ops-check{display:inline-flex;align-items:center;gap:5px;color:var(--color-text-param);cursor:pointer}.ops-foot{flex:none;display:flex;align-items:center;gap:8px;padding:6px 8px;border-top:1px solid var(--color-border-tab);background:var(--color-surface-chrome)}.ops-action{flex:none;margin-left:auto;display:inline-flex;align-items:center;gap:6px}.ops-action .mdi{font-size:var(--size-icon);color:var(--color-accent)}.ops-action.is-cancel .mdi{color:var(--color-error-border)}.ops-action:disabled .mdi{color:var(--color-text-disabled)}.ops-job.is-done{border-left-color:var(--color-openknx-green)}.ops-job.is-done .ops-job-ico{color:var(--color-openknx-green)}.ops-job.is-done .ops-bar-fill{background:var(--color-openknx-green)}.ops-job.is-cancelled,.ops-job.is-skipped{border-left-color:var(--color-border);background:var(--color-surface-raised)}.ops-job.is-cancelled .ops-job-ico,.ops-job.is-skipped .ops-job-ico,.ops-job.is-cancelled .ops-cur,.ops-job.is-skipped .ops-cur{color:var(--color-text-muted)}.ops-job.is-cancelled .ops-bar-fill,.ops-job.is-skipped .ops-bar-fill{background:var(--color-text-muted)}.ops-job.is-fin{cursor:pointer}.ops-job.is-fin:hover{border-top-color:var(--color-border-hover);border-right-color:var(--color-border-hover);border-bottom-color:var(--color-border-hover)}.ops-fin-toggle{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;color:var(--color-toggle)}.ops-fin-toggle .mdi{font-size:var(--size-icon)}.ops-time{font-variant-numeric:tabular-nums}.ops-detail{grid-column:2 / 4;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin-top:6px;color:var(--color-text-muted)}.ops-detail-value{text-align:right;min-width:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.ops-detail.is-error .ops-detail-value{color:var(--color-error-border)}.ops-hint{grid-column:2 / 4;margin-top:4px;color:var(--color-warning-border)}.ops-empty{display:flex;align-items:center;justify-content:center;min-height:var(--size-hist-empty-h);padding:0 20px;text-align:center;color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-tab)}.ops-badges{margin-left:auto;display:inline-flex;align-items:center;gap:4px}.ops-badges .tab-badge{margin-left:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.ops-head-ico{font-size:var(--size-icon)}.tab-badge.is-run{background:var(--color-accent);color:var(--color-text-inverse)}.is-undo-flash{position:relative;z-index:2;animation:undo-flash var(--duration-undo-flash) ease-out both}.is-undo-flash.is-undo-flash-in{animation-name:undo-flash-in}@keyframes undo-flash{0%,40%{box-shadow:0 0 0 var(--size-undo-ring-gap) var(--color-surface),0 0 0 calc(var(--size-undo-ring-gap) + var(--size-undo-ring)) var(--color-accent)}}@keyframes undo-flash-in{0%,40%{box-shadow:inset 0 0 0 var(--size-undo-ring) var(--color-accent),inset 0 0 0 calc(var(--size-undo-ring) + var(--size-undo-ring-gap)) var(--color-surface)}}.is-undo-flash.is-undo-flash-still{animation:none;box-shadow:0 0 0 var(--size-undo-ring-gap) var(--color-surface),0 0 0 calc(var(--size-undo-ring-gap) + var(--size-undo-ring)) var(--color-accent)}.is-undo-flash.is-undo-flash-in.is-undo-flash-still{box-shadow:inset 0 0 0 var(--size-undo-ring) var(--color-accent),inset 0 0 0 calc(var(--size-undo-ring) + var(--size-undo-ring-gap)) var(--color-surface)}@media(prefers-reduced-motion:reduce){.is-undo-flash{animation:none;box-shadow:0 0 0 var(--size-undo-ring-gap) var(--color-surface),0 0 0 calc(var(--size-undo-ring-gap) + var(--size-undo-ring)) var(--color-accent)}.is-undo-flash.is-undo-flash-in{box-shadow:inset 0 0 0 var(--size-undo-ring) var(--color-accent),inset 0 0 0 calc(var(--size-undo-ring) + var(--size-undo-ring-gap)) var(--color-surface)}}.project-pane.is-todos>.project-panel{flex:1 1 auto;width:auto!important;min-width:0;border-right:0}.project-pane.is-todos>:is(.project-center,.splitter){display:none}.project-todos,.todo-table-view{flex:1;display:flex;flex-direction:column;min-height:0}.todo-table-bar{flex:none;display:flex;align-items:center;gap:var(--space-todo-gap);box-sizing:border-box;height:var(--size-bar-h);padding:0 var(--space-todo-gap);background:var(--color-surface-panel);border-bottom:1px solid var(--color-border-tab)}.todo-table-bar .spacer{flex:1}.todo-table-sep{flex:none;align-self:stretch;margin:var(--space-todo-gap) 0;border-left:1px solid var(--color-border-tab)}.todo-filter{display:inline-flex;flex:none}.todo-filter-btn{box-sizing:border-box;height:var(--size-tool-btn-h);padding:0 var(--space-todo-gap);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}.todo-filter-btn+.todo-filter-btn{margin-left:-1px}.todo-filter-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);position:relative}.todo-filter-btn.is-active{position:relative;background:var(--color-info-bg);border-color:var(--color-accent);color:var(--color-text)}.todo-filter-btn:focus-visible{position:relative;outline:1px solid var(--color-accent);outline-offset:-2px}.todo-table-list{flex:0 1 auto;min-height:0;overflow:auto}.todo-table tbody td{box-sizing:border-box;height:var(--size-todo-row-h);padding:0 var(--space-todo-gap) 0 0;vertical-align:middle;border-bottom:1px solid var(--color-line)}.todo-table tbody td>.cv{display:flex;align-items:center;min-height:var(--size-object-ref-h);contain:inline-size}.todo-table tbody tr{cursor:default}.todo-table tbody tr:hover td{background:var(--color-surface-panel)}.todo-table tbody tr.selected td,.todo-table tbody tr.selected:hover td{background:var(--color-surface-pressed)}.todo-table tbody tr:focus{outline:none}.todo-table tbody tr:focus-visible td:first-child{box-shadow:inset 2px 0 var(--color-accent)}.todo-table td.c-done>.cv{justify-content:center}.todo-table td.c-done{padding-left:var(--space-todo-gap)}.todo-table tbody tr.selected .row-actions,.todo-table tbody tr:focus-within .row-actions{visibility:visible}.todo-desc{flex:1;display:flex;align-items:center;min-width:0}.todo-desc-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre;color:var(--color-text-param)}.todo-desc .row-actions{margin:0 0 0 var(--space-todo-gap)}.todo-table-edit{flex:1;width:100%;min-width:0;box-sizing:border-box;border-color:var(--color-accent);background:var(--color-surface)}.todo-table tr.is-done .todo-desc-text{color:var(--color-text-disabled);text-decoration:line-through}.todo-table tr.is-done .object-ref{color:var(--color-text-disabled)}.todo-table tr.is-done .object-ref .mdi{opacity:.6}.todo-table .object-ref{max-width:100%}.object-ref-kind{flex:none;color:var(--color-text-muted);white-space:nowrap}.todo-no-ref{color:var(--color-text-disabled)}.todo-table-empty{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.data-table.todo-table tbody tr.is-drop-target td{background:var(--color-overlay-drop);box-shadow:inset 0 1px 0 var(--color-accent),inset 0 -1px 0 var(--color-accent)}
