.zx-grid{--bg:#fff;--fg:#223247;--line:#dae1eb;--head:#f0f4fa;position:relative;display:flex;flex-direction:column;border:1px solid var(--line);background:var(--bg);color:var(--fg);font:14px/1.45 system-ui,sans-serif;overflow:hidden;box-sizing:border-box}.zx-grid *{box-sizing:border-box}.zx-grid[data-theme=dark]{--bg:#182432;--fg:#edf3fa;--line:#415267;--head:#233447}.zx-grid[data-theme=compact]{font-size:12px}.zx-grid:focus{outline:none}.zx-grid:focus-visible:not([data-focus-input=pointer]):not([data-cell-active=true]){outline:2px solid #527df2;outline-offset:2px}.zx-header{overflow:hidden;flex-shrink:0;background:var(--head);z-index:6}.zx-header-line{display:grid;height:100%}.zx-header-cell{position:relative;padding:8px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;line-height:1.3;background:var(--head);user-select:none}.zx-resize{position:absolute;right:0;top:0;width:7px;height:100%;cursor:col-resize;touch-action:none}.zx-resize:focus{background:#6e92ee;outline:0}.zx-viewport{flex:1;min-height:0;overflow:auto;position:relative;overflow-anchor:none}.zx-canvas{position:relative}.zx-row{--zx-row-background:initial;position:absolute;display:grid;align-items:stretch;background:var(--bg)}.zx-cell{position:relative;min-width:0;min-height:inherit;padding:7px 10px;overflow:hidden;text-overflow:ellipsis;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow-wrap:anywhere;background:var(--zx-row-background,var(--bg))}.zx-selected{background:color-mix(in srgb,var(--bg) 83%,#5178e6);box-shadow:inset 0 0 0 1px #527df2}.zx-dirty:after{content:'';position:absolute;right:2px;top:2px;border-top:7px solid #e89826;border-left:7px solid transparent}.zx-fill{position:absolute;bottom:0;right:0;width:7px;height:7px;background:#345ace;cursor:crosshair}.zx-pinned-row{box-shadow:0 2px 4px #0002}.zx-pinned{box-shadow:1px 0 0 var(--line)}.zx-footer{flex-shrink:0;min-height:28px;padding:5px 10px;background:var(--head);border-top:1px solid var(--line)}.zx-footer[hidden]{display:none}.zx-overlay{position:absolute;left:0;right:0;pointer-events:none;overflow:hidden;z-index:10}.zx-state{position:absolute;max-width:calc(100% - 16px);max-height:calc(100% - 16px);overflow:auto;background:var(--head);border:1px solid var(--line);border-radius:8px;padding:9px 12px;box-shadow:0 3px 12px #0002;pointer-events:auto}.zx-state[data-position=top-right]{top:8px;right:8px}.zx-state[data-position=top-left]{top:8px;left:8px}.zx-state[data-position=top-center]{top:8px;left:50%;transform:translateX(-50%)}.zx-state[data-position=center]{top:50%;left:50%;transform:translate(-50%,-50%)}.zx-state[data-position=bottom-left]{bottom:8px;left:8px}.zx-state[data-position=bottom-right]{bottom:8px;right:8px}.zx-state[data-position=bottom-center]{bottom:8px;left:50%;transform:translateX(-50%)}.zx-radio{display:inline-flex;gap:2px;align-items:center;margin-right:5px;white-space:nowrap}.zx-radio input{margin:0}.zx-editor{position:fixed;z-index:10000;background:white;color:#223247;border:1px solid #8796ae;border-radius:8px;box-shadow:0 8px 32px #0003;padding:10px;width:300px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow:auto}.zx-editor input:not([type=radio]):not([type=checkbox]),.zx-editor select{width:100%;padding:7px;border:1px solid #aab8cd;border-radius:4px;font:inherit}.zx-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.zx-editor button,.zx-search button,.zx-menu button{font:inherit;padding:5px 9px}.zx-editor-error{color:#a82020;min-height:20px;font-size:12px}.zx-calendar-header{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;text-align:center;gap:6px;margin:8px 0}.zx-calendar-header button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}.zx-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.zx-calendar-days button{min-width:0;padding:4px 0;border:1px solid #dce4ef;background:white}.zx-calendar-days span{text-align:center;font-size:12px;padding:4px 0}.zx-search{position:absolute;right:5px;top:4px;z-index:20;display:flex;gap:4px;background:var(--head);padding:4px}.zx-search input{width:150px}.zx-tree{display:flex;align-items:center;min-height:20px}.zx-tree-indent{display:inline-block;width:16px;flex:0 0 16px;align-self:stretch;position:relative}.zx-tree-indent.zx-line-continue:before{content:'';position:absolute;left:8px;top:-8px;bottom:-8px;border-left:1px solid #8898ad}.zx-tree-indent.zx-line-junction:before{content:'';position:absolute;left:8px;top:-8px;bottom:-8px;border-left:1px solid #8898ad}.zx-tree-indent.zx-line-last:before{bottom:50%}.zx-tree-indent.zx-line-junction:after{content:'';position:absolute;left:8px;top:50%;width:8px;border-top:1px solid #8898ad}.zx-tree-toggle,.zx-tree-slot{width:20px;height:20px;flex:0 0 20px;margin-right:4px;display:inline-flex;align-items:center;justify-content:center;padding:0;font:16px/1 monospace}.zx-tree-slot{visibility:hidden}.zx-tree-label{overflow-wrap:anywhere}.zx-group,.zx-detail{grid-column:1/-1;padding:8px 12px;background:var(--head)}.zx-detail{height:180px}.zx-menu{position:fixed;z-index:10001;display:flex;flex-direction:column;background:white;border:1px solid #8796ae;padding:5px;box-shadow:0 4px 20px #0003}.zx-menu button{text-align:left;background:white;border:0}.zx-header-group-line{display:grid;background:var(--head);height:25px}.zx-header-group{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:2px}

.zx-cell:has(.zx-tree){display:flex}.zx-tree{flex:1;min-width:0}.zx-tree-label{min-width:0}.zx-tree-indent{pointer-events:none}
/* Shared visual system: data stays readable in all three themes. */
.zx-grid{--accent:#2563eb;--select:#edf4ff;--hover:#f5f8fd;--stripe:#fafbfd;--muted:#63748b;--head:#f4f6fa;--line:#e2e7ef;border-radius:10px;font-family:Inter,'Pretendard','Noto Sans KR',system-ui,sans-serif;font-size:13px;box-shadow:0 2px 8px #142b4b06}.zx-grid[data-theme=dark]{--accent:#87b4ff;--select:#233f64;--hover:#213347;--stripe:#1b2a3b;--muted:#b4c2d4;--head:#233447;--line:#3b4d63}.zx-grid[data-theme=compact]{font-size:12px}.zx-row[data-parity=even] .zx-cell{background:var(--zx-row-background,var(--stripe))}.zx-row:hover .zx-cell{background:var(--zx-row-background,var(--hover))}.zx-header-cell{font-weight:600;color:var(--fg);padding-right:var(--zx-header-tools-space,12px);display:flex;align-items:center}.zx-header-cell[data-align=center]{padding-left:var(--zx-header-tools-space,12px)}.zx-header-label{display:block;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.zx-header-tools{position:absolute;right:9px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:4px}.zx-header-tools>*{flex-shrink:0}.zx-header-cell:hover{background:color-mix(in srgb,var(--head) 90%,var(--accent))}.zx-cell{display:block;transition:background-color .1s;line-height:1.5}.zx-row .zx-cell.zx-selected{background:var(--select);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 32%,transparent)}.zx-row .zx-cell.zx-active{box-shadow:inset 0 0 0 2px var(--accent);z-index:4}.zx-sort-mark{font-size:11px;color:var(--accent);flex-shrink:0}.zx-filter-mark{width:8px;color:var(--accent);font-size:8px}.zx-column-menu{position:relative;width:25px;height:25px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;padding:0}.zx-column-menu:hover,.zx-column-menu:focus-visible{background:var(--line);color:var(--accent)}.zx-resize:hover{background:color-mix(in srgb,var(--accent) 30%,transparent)}.zx-dirty:after{border-top-color:#d97706}.zx-fill{background:var(--accent);border:1px solid var(--bg);width:8px;height:8px}.zx-footer{padding:8px 12px;font-size:12px;color:var(--muted)}.zx-state{font-size:13px;border-radius:10px;box-shadow:0 8px 28px #15283c18}.zx-editor,.zx-menu{border-color:#d5dfea;box-shadow:0 12px 40px #15283c26;border-radius:12px}.zx-editor{font:13px/1.5 system-ui,sans-serif;padding:16px}.zx-editor button{border:1px solid #c6d2e4;border-radius:6px;background:#f8fafc;color:#233b61;cursor:pointer}.zx-editor input:focus,.zx-editor select:focus{outline:2px solid #2563eb;outline-offset:1px}.zx-menu button:hover{background:#edf4ff;color:#1d4ed8}.zx-tree-toggle{border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.zx-tree-toggle:hover{background:var(--line)}
.zx-tools{position:fixed;z-index:10002;width:320px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow:auto;border:1px solid #dbe3ef;background:#fff;color:#223247;border-radius:12px;padding:14px;box-shadow:0 16px 48px #142b4b26;box-sizing:border-box;font:13px/1.5 system-ui,sans-serif}.zx-tools *{box-sizing:border-box}.zx-tools-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px}.zx-tools-close{font-size:20px!important;border:0!important;background:transparent!important}.zx-tools-section{border-top:1px solid #e9edf4;padding:10px 0;display:flex;flex-wrap:wrap;gap:6px}.zx-tools-caption{width:100%;color:#56667e;font-size:11px;font-weight:600;margin-bottom:3px}.zx-tools button{font:inherit;cursor:pointer;border:1px solid #d5dfea;background:#fff;color:#243a58;padding:7px 10px;border-radius:6px}.zx-tools button:hover{background:#eef4ff}.zx-tools .zx-tools-primary{background:#2563eb;border-color:#2563eb;color:white}.zx-tools-action{width:100%;text-align:left}.zx-tools input:not([type=checkbox]):not([type=radio]),.zx-tools select{width:100%;font:inherit;border:1px solid #ccd7e5;background:#fff;color:#223247;border-radius:6px;padding:8px;margin-top:4px}.zx-tools-label{display:block;width:100%;color:#56667e;font-size:12px}.zx-tools button:focus-visible,.zx-tools input:focus-visible,.zx-tools select:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.zx-tools-error{font-size:12px;color:#b42318;margin:0}.zx-tools-columns{display:block;max-height:300px;overflow:auto}.zx-tools-check{display:flex;gap:10px;align-items:center;padding:8px 4px;cursor:pointer}.zx-tools-check[hidden]{display:none}.zx-tools-check input{accent-color:#2563eb}.zx-tools-builder{width:490px}.zx-rule{width:100%;display:grid;grid-template-columns:1fr 100px;gap:6px;padding:10px;background:#f5f8fc;border-radius:8px}.zx-rule>input{grid-column:1}.zx-rule>button{align-self:end}.zx-tools-builder .zx-tools-section{max-height:380px;overflow:auto}
.zx-group{display:flex;align-items:center;gap:10px;padding-top:5px;padding-bottom:5px;color:var(--fg);font-size:12px}.zx-group>button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 23px;padding:0;line-height:1;width:23px;height:23px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:5px;cursor:pointer}.zx-group-title{font-weight:600}.zx-group-count{background:var(--line);border-radius:4px;padding:1px 5px;font-size:10px}.zx-group-summary{margin-left:12px;color:var(--muted);font-size:11px}
.zx-column-dragging{opacity:.5}.zx-column-drop-indicator{position:absolute;z-index:30;width:3px;background:var(--accent,#2563eb);transform:translateX(-50%);pointer-events:none;box-shadow:0 0 0 1px var(--bg);border-radius:2px}.zx-column-drop-indicator:before,.zx-column-drop-indicator:after{content:'';position:absolute;left:50%;transform:translateX(-50%);width:9px;height:4px;border-radius:2px;background:var(--accent,#2563eb)}.zx-column-drop-indicator:before{top:0}.zx-column-drop-indicator:after{bottom:0}
.zx-editing{overflow:visible;z-index:8!important}.zx-inline-editor{position:absolute;inset:0;display:flex;align-items:stretch;background:var(--bg);box-shadow:inset 0 0 0 2px var(--accent,#2563eb);z-index:1;padding:2px}.zx-inline-input{width:100%;min-width:0;border:0;outline:none!important;border-radius:0;background:var(--bg);color:var(--fg);padding:4px 7px;font:inherit;text-align:inherit;box-sizing:border-box}.zx-inline-input[aria-invalid=true]{box-shadow:inset 0 0 0 2px #b42318}.zx-cell-select{width:100%;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;min-width:0;outline-offset:1px}.zx-cell-select:disabled{cursor:default;opacity:.7}.zx-inline-calendar-toggle{border:0;background:var(--head);color:var(--fg);padding:0 7px;cursor:pointer}.zx-inline-flyout{position:fixed;z-index:10000;width:280px;max-width:calc(100vw - 16px);padding:10px;border:1px solid #ccd7e5;border-radius:8px;background:#fff;color:#223247;box-shadow:0 10px 32px #142b4b24;font:13px/1.5 system-ui,sans-serif}.zx-inline-flyout select{width:100%;font:inherit;border:1px solid #ccd7e5}.zx-inline-flyout button:focus-visible{outline:2px solid #2563eb;outline-offset:1px}
.zx-cell-select:focus{outline:none;box-shadow:none}.zx-cell-select:focus-visible:not([data-focus-input=pointer]){outline:none;box-shadow:inset 0 -2px 0 var(--accent,#2563eb)}.zx-cell-select option{background:var(--bg);color:var(--fg)}
/* Native form semantics, custom controls and a clear selected state. */
.zx-grid{--choice-border:#8192aa;--choice-active:#2563eb;--choice-on:#fff}.zx-grid[data-theme=dark]{--choice-border:#a0b4cd;--choice-active:#8bb8ff;--choice-on:#122039}.zx-radio{gap:5px;margin-right:4px;padding:3px 6px;border:1px solid transparent;border-radius:6px;min-height:26px;cursor:pointer;transition:background-color .15s,border-color .15s;color:var(--fg);vertical-align:middle}.zx-radio:has(input:checked){background:var(--select);border-color:transparent;color:var(--fg);font-weight:600}.zx-radio:hover:has(input:not(:disabled)){background:var(--select)}.zx-checkbox-label{display:inline-flex;align-items:center;justify-content:center;padding:3px;border-radius:6px;cursor:pointer;vertical-align:middle}.zx-checkbox-label:hover:has(input:not(:disabled)){background:var(--select)}.zx-grid .zx-choice-input{appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;position:relative;width:16px;height:16px;flex:0 0 16px;margin:0;padding:0;border:1.5px solid var(--choice-border);background:var(--bg);cursor:pointer;vertical-align:middle;transition:background-color .15s,border-color .15s,box-shadow .15s}.zx-grid .zx-checkbox-input{border-radius:4px}.zx-grid .zx-radio-input{border-radius:50%}.zx-grid .zx-choice-input:checked{border-color:var(--choice-active)}.zx-grid .zx-checkbox-input:checked{background:var(--choice-active)}.zx-grid .zx-choice-input:before{content:'';display:block;opacity:0;transform:scale(.55);transition:transform .13s,opacity .13s}.zx-grid .zx-radio-input:before{width:8px;height:8px;background:var(--choice-active);border-radius:50%}.zx-grid .zx-checkbox-input:before{width:5px;height:9px;border:solid var(--choice-on);border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg) scale(.55)}.zx-grid .zx-radio-input:checked:before{opacity:1;transform:scale(1)}.zx-grid .zx-checkbox-input:checked:before{opacity:1;transform:translateY(-1px) rotate(45deg) scale(1)}.zx-grid .zx-choice-input:focus{outline:none}.zx-grid .zx-choice-input:focus-visible{outline:2px solid var(--choice-active);outline-offset:3px}.zx-radio:has(input:disabled),.zx-checkbox-label:has(input:disabled){opacity:.55;cursor:not-allowed}.zx-grid .zx-choice-input:disabled{cursor:not-allowed;background:var(--head)}.zx-grid .zx-checkbox-input:disabled:checked{background:var(--choice-active)}
@media(prefers-reduced-motion:reduce){.zx-radio,.zx-grid .zx-choice-input,.zx-grid .zx-choice-input:before{transition:none}}
@media(forced-colors:active){.zx-grid .zx-choice-input{appearance:auto;-webkit-appearance:auto;background:Canvas;border-color:ButtonText}.zx-grid .zx-choice-input:before{display:none}.zx-radio:has(input:checked){border-color:transparent;background:Canvas;color:CanvasText}.zx-grid .zx-choice-input:focus-visible{outline-color:Highlight}}

.zx-cell.zx-cell-image{display:flex;align-items:center;padding:4px 8px}.zx-cell-image-content{display:block;max-width:100%;max-height:100%;flex-shrink:1;border-radius:5px}.zx-image-placeholder{color:var(--muted,#63748b);font-size:12px}.zx-button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:25px;padding:3px 10px;border:1px solid var(--line,#dce5f0);border-radius:6px;background:var(--head,#f4f6fa);color:var(--fg,#24334a);font:inherit;line-height:1.2;cursor:pointer;vertical-align:middle}.zx-button:hover:not(:disabled){color:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.zx-button:disabled{opacity:.45;cursor:not-allowed}.zx-button:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}

.zx-cell.zx-cell-button{display:flex;align-items:center;padding:4px 8px}

.zx-button-content{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.zx-button-content>.zx-button{flex:0 0 auto}.zx-button-side-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.zx-tooltip{position:fixed;z-index:10002;max-width:min(360px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow:auto;padding:10px 14px;border:1px solid #dbe5f4;border-radius:10px;background:#fff;color:#263b58;box-shadow:0 6px 24px #17335a26,0 2px 6px #17335a14;font:13px/1.6 system-ui,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;animation:zx-tooltip-enter .12s ease-out}.zx-tooltip[data-theme=dark]{background:#25364b;color:#f2f6fc;border-color:#4a607c;box-shadow:0 6px 24px #0005}@keyframes zx-tooltip-enter{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.zx-tooltip{animation:none}}





.zx-cell.zx-cell-centered{display:flex;align-items:center}.zx-cell-content{width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:inherit;text-align:inherit}

/* Group rows keep a fixed track; shallow groups span the remaining levels. */
.zx-header-group-line{align-items:start;grid-template-rows:25px}.zx-header-group{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;background:var(--head);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Compact column menu: value checklist and adjacent condition/settings panels. */
.zx-tools-column-menu{width:300px;padding:0;max-height:calc(100dvh - 16px);border-radius:7px;overflow:auto}
.zx-tools-column-menu>.zx-tools-heading,.zx-column-submenu>.zx-tools-heading{padding:9px 12px;border-bottom:1px solid #e2e8f0}
.zx-submenu-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;border:0!important;border-radius:0!important;padding:9px 12px!important;background:transparent!important}
.zx-submenu-trigger:after{content:'›';font-size:19px;line-height:1;color:#74859c}
.zx-submenu-trigger:hover,.zx-submenu-trigger[aria-expanded=true]{background:#edf7f8!important;color:#076f7b}
.zx-column-menu-columns{border-bottom:1px solid #e2e8f0}
.zx-tools-column-menu .zx-value-search{display:block;width:calc(100% - 24px);margin:4px 12px 5px;padding:7px 9px}
.zx-values-all{border-bottom:1px solid #edf0f4;font-weight:600}
.zx-value-list{max-height:min(250px,35dvh);min-height:36px;overflow:auto;overscroll-behavior:contain}
.zx-value-count,.zx-value-empty{padding:6px 12px;margin:0;color:#60738a;font-size:11px}
.zx-values-more{display:block;margin:6px auto}
.zx-column-menu-footer{display:flex;gap:6px;justify-content:center;padding:10px 12px;background:#f1f4f6;border-top:1px solid #e0e6ed}
.zx-column-menu-footer>button{flex:1;max-width:120px;border-radius:3px;padding:6px 10px}
.zx-column-menu-footer .zx-tools-primary{background:#087f8c;border-color:#087f8c;color:#fff}
.zx-column-menu-footer .zx-tools-primary:hover{background:#066b77}
.zx-tools-column-menu .zx-tools-error:empty,.zx-column-submenu .zx-tools-error:empty{display:none}
.zx-tools-column-menu>.zx-tools-error,.zx-column-submenu>.zx-tools-error{padding:4px 12px}
.zx-column-submenu{width:260px;z-index:10003;border-radius:7px;padding:0;max-height:calc(100dvh - 16px);overflow:auto}
.zx-column-submenu>.zx-tools-label{padding:8px 12px 0}
.zx-column-submenu>.zx-condition-value{display:block;width:calc(100% - 24px)!important;margin:6px 12px 10px!important}
.zx-column-submenu>.zx-tools-action{border:0;border-radius:0;padding:9px 12px;text-align:left}
.zx-column-submenu .zx-filter-join{border:0;padding:2px 12px;margin:0;display:flex;justify-content:center;gap:16px}
.zx-filter-join label{display:flex;align-items:center;gap:5px;font-size:12px}
.zx-filter-join input[type=radio]{width:14px;height:14px;margin:0;accent-color:#087f8c}
.zx-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.zx-tools-column-menu .zx-tools-close,.zx-column-submenu .zx-tools-close{padding:0;width:24px;height:24px;line-height:1}


/* Column visibility and filter values share the same list styling. */
.zx-tools input.zx-choice-search[type=search]{display:block;width:calc(100% - 24px);margin:4px 12px 5px;padding:7px 9px}
.zx-tools .zx-choice-list{max-height:min(250px,35dvh);min-height:36px;padding:0;margin:0;overflow:auto;overscroll-behavior:contain}
.zx-tools .zx-choice-item{display:flex;align-items:center;min-height:29px;padding:5px 12px;gap:8px;margin:0;font-size:13px;cursor:pointer}
.zx-tools .zx-choice-item[hidden]{display:none}
.zx-tools .zx-choice-item:hover{background:#f2f7fa}
.zx-tools .zx-choice-item input{width:15px;height:15px;margin:0;accent-color:#0e8391;flex-shrink:0}
.zx-tools .zx-choice-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zx-tools-column-menu .zx-values-all{min-height:29px;padding:5px 12px;gap:8px;margin:0;font-size:13px}
.zx-tools-column-menu .zx-values-all input{width:15px;height:15px;margin:0;accent-color:#0e8391;flex-shrink:0}

/* Image and text share one cell, with optional text on each side. */
.zx-image-layout{display:grid;grid-template-columns:minmax(0,auto) auto minmax(0,auto);align-items:center;max-width:100%;min-width:0}
.zx-image-slot{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:center;min-width:0}
.zx-image-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:inherit;overflow-wrap:anywhere}
.zx-image-text-left{grid-column:1;grid-row:2;margin-right:6px}
.zx-image-text-right{grid-column:3;grid-row:2;margin-left:6px}
.zx-image-text-top{grid-column:1/-1;grid-row:1;text-align:center;margin-bottom:4px}
.zx-image-text-bottom{grid-column:1/-1;grid-row:3;text-align:center;margin-top:4px}

.zx-header-checkbox{display:inline-flex;align-items:center;justify-content:inherit;gap:7px;max-width:100%;cursor:pointer}.zx-utility-cell,.zx-utility-header{background:var(--head)!important;color:var(--fg);font-variant-numeric:tabular-nums}.zx-row-number{font-weight:500}.zx-row-drag-handle{border:0;background:transparent;color:inherit;cursor:grab;font:18px/1 system-ui;padding:2px 5px}.zx-row-drag-handle:disabled{opacity:.35;cursor:default}.zx-row-drag-handle:active{cursor:grabbing}.zx-row-drop-before:before,.zx-row-drop-after:after{content:"";position:absolute;left:0;right:0;height:3px;background:#527df2;z-index:9;pointer-events:none}.zx-row-drop-before:before{top:0}.zx-row-drop-after:after{bottom:0}.zx-image-slot[hidden]{display:none}

.zx-utility-header{padding-left:6px!important;padding-right:6px!important}

.zx-utility-cell{display:flex;align-items:center;justify-content:center;padding:4px 6px;text-overflow:clip}

/* Keep row dragging inside a data cell without allocating a column. */
.zx-cell.zx-row-handle-cell{padding-left:32px}.zx-row-handle-cell>.zx-row-drag-handle{position:absolute;left:5px;top:50%;transform:translateY(-50%);z-index:1;touch-action:none}
