/* Review8: only glyphs grow. Background button dimensions stay fixed. */
.group-head .group-view-toggle,.group-head .group-add-icon {
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:32px;height:32px;min-width:32px;padding:0;margin:0;line-height:1;
}
.group-head .group-view-toggle {width:28px;min-width:28px;height:28px}
.group-view-toggle svg {display:block;width:19.2px;height:19.2px;pointer-events:none}
.group-add-icon span {display:block;font-size:26px;font-weight:400;line-height:1;pointer-events:none;transform:translateY(-1px)}
.group-head {gap:5px;min-height:58px;flex-shrink:0}
.group-head-left {gap:5px}
.group-name {min-width:0}
.group-head .group-collapse{margin-left:0}
.group-card.grid-view .group-items {grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8.8px 8px}
.grid-view .g-item {min-height:84px}
.grid-view .g-actions {display:none}
.grid-view .group-empty {grid-column:1/-1}
.group-card.grid-view .g-name {font-size:13.75px;line-height:1.4;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.group-card.grid-view .g-icon {width:42px;height:42px}
.grid-view .drop-before::before,.grid-view .drop-after::after {display:none}
.group-resize-handle{left:0;right:0;bottom:0;height:8px;touch-action:none}
.resizing-groups,.resizing-groups * {cursor:ns-resize!important;user-select:none!important}
.sorting,.sorting * {cursor:grabbing!important;user-select:none!important}
.sort-placeholder{opacity:.18!important;outline:1px dashed #93c5fd}
.sort-ghost{z-index:5000!important;opacity:.92!important;box-shadow:0 12px 28px #1e3a8a33!important;transition:none!important;overflow:hidden}
.group-head,.personal-engine,.g-item{touch-action:pan-y}
.engine-manager-tabs{display:flex;gap:8px;margin-bottom:14px}
.engine-manager-tabs button{flex:1;padding:8px}
.engine-manager-tabs .active{background:#2563eb;color:#fff}
#engineManagerRows {max-height:60vh;overflow:auto}
.catalog-picker-dialog .modal{height:min(720px,88vh);display:flex;flex-direction:column}
.catalog-picker-dialog .modal-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.catalog-picker-dialog #pickList{height:calc(100% - 88px);max-height:none;overflow-y:auto}
.catalog-picker-dialog .modal{min-height:620px}
.catalog-picker-dialog #manualPanel{padding-right:4px}
.catalog-picker-dialog.manual-mode .modal-body{min-height:420px}
.catalog-picker-dialog.manual-mode #pickPanel{display:none!important}
.catalog-picker-dialog.manual-mode #manualPanel{display:block!important;flex:1}
.engine-manager-dialog .modal{height:min(720px,88vh);display:flex;flex-direction:column}
.engine-manager-dialog .modal-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.engine-manager-dialog #engineManagerRows{flex:1;min-height:0;max-height:none;overflow:auto}
.engine-manager-dialog .engine-search-form{position:sticky;top:0;background:#fff;z-index:1;padding-bottom:8px}
.engine-manager-dialog #engineManagerRows,.catalog-picker-dialog #pickPanel{display:flex;flex-direction:column;flex:1;min-height:0}
.engine-manager-dialog #engineManagerRows>.search-list,.catalog-picker-dialog #pickList{flex:1;min-height:0}
.engine-manager-dialog #engineManagerRows>p{margin:0;flex:1}
.sort-ghost.grid-view .g-actions,.sort-ghost.is-grid-ghost .g-actions{display:none!important}
.sort-ghost.is-grid-ghost{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.sort-ghost.is-grid-ghost .g-desc{display:none}
.sort-ghost.is-grid-ghost .g-icon{width:42px;height:42px;flex:none}
.sort-ghost.is-grid-ghost .g-name{font-size:13.75px}
.personal-engine {cursor:grab;min-height:64px;user-select:none}
.personal-engine .engine-dot-lg{flex:0 0 32px;width:32px;height:32px;overflow:visible}
.engine-info{flex:1;min-width:0}
.engine-info small,.si-info small{display:block;color:#64748b;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.engine-search-form{display:flex;gap:8px;margin-bottom:10px}
.engine-search-form input{flex:1;min-width:0;margin:0}
#engineManageMenu{z-index:3000}
#engineManageMenu button{border:0;background:#fff;width:100%;font:inherit;text-align:left}
#engineManageMenu button:hover{background:#eff6ff}
@media(max-width:450px){.group-head{padding-left:10px;padding-right:10px}.group-name{font-size:14px}.group-head-left{gap:3px}.group-count{padding:1px 4px}}

.pagination{flex-wrap:wrap}.page-jump{display:flex;align-items:center;gap:6px}.page-jump input[type=number]{width:76px;min-width:60px}

.group-resize-handle.height-locked{touch-action:pan-y;cursor:default}
