/* Enterprise Bootstrap Theme | MIT License | (c) 2026 Priya Vijai Kalyan */
.datagrid{background-color:var(--theme-surface-bg);border:1px solid var(--theme-border-subtle);border-radius:0;color:var(--theme-text-primary);display:flex;flex-direction:column;font-size:.8rem;overflow:hidden;position:relative;width:100%}.datagrid-scroll-container{flex:1;overflow:auto;position:relative}.datagrid-header-row{background-color:var(--theme-surface-raised-bg);border-bottom:1px solid var(--theme-border-subtle);display:flex;min-height:36px;position:sticky;top:0;z-index:2}.datagrid-header-cell{align-items:center;border-right:1px solid var(--theme-border-subtle);box-sizing:border-box;color:var(--theme-text-primary);display:flex;flex-shrink:0;font-weight:600;min-height:36px;padding:4px 8px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.datagrid-header-cell:last-child{border-right:none}.datagrid-header-cell-sortable{cursor:pointer}.datagrid-header-cell-sortable:hover{background-color:var(--theme-active-bg)}.datagrid-header-cell-sorted{color:#1c7ed6}.datagrid-header-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.datagrid-sort-indicator{color:var(--theme-text-muted);flex-shrink:0;font-size:.8rem;margin-left:4px}.datagrid-header-cell-sorted .datagrid-sort-indicator{color:#1c7ed6}.datagrid-resize-handle{cursor:col-resize;height:100%;position:absolute;right:0;top:0;width:6px;z-index:2}.datagrid-resize-handle:after{background-color:var(--theme-border-color);border-radius:1px;content:"";display:block;height:50%;position:absolute;right:2px;top:25%;width:2px}.datagrid-resize-handle:active:after,.datagrid-resize-handle:hover:after{background-color:#1c7ed6}.datagrid-filter-row{background-color:var(--theme-surface-bg);border-bottom:1px solid var(--theme-border-subtle);display:flex;min-height:36px;position:sticky;top:36px;z-index:2}.datagrid-filter-cell{align-items:center;border-right:1px solid var(--theme-border-subtle);box-sizing:border-box;display:flex;flex-shrink:0;padding:2px 4px}.datagrid-filter-cell:last-child{border-right:none}.datagrid-filter-input,.datagrid-filter-select{width:100%}.datagrid-filter-range{display:flex;gap:4px;width:100%}.datagrid-filter-range .datagrid-filter-input{flex:1;min-width:0}.datagrid-body{flex:1;min-height:0;position:relative}.datagrid-row{background-color:var(--theme-surface-bg);border-bottom:1px solid var(--theme-border-subtle);cursor:default;display:flex;min-height:32px;transition:background-color .15s ease,box-shadow .15s ease}.datagrid-row:hover{background-color:var(--theme-active-bg);box-shadow:0 0 4px var(--theme-glow-color-hover,rgba(37,99,235,.18))}.datagrid-row:last-child{border-bottom:none}.datagrid-row-selected{background-color:var(--theme-selected-bg);border-left:2px solid var(--theme-primary)}.datagrid-row-selected:hover{background-color:rgba(var(--theme-primary-rgb),.12)}.datagrid-row-disabled{color:var(--theme-text-muted);cursor:not-allowed;opacity:.6}.datagrid-row-disabled:hover,.datagrid-striped .datagrid-row-even{background-color:var(--theme-surface-bg)}.datagrid-striped .datagrid-row-odd{background-color:var(--theme-surface-raised-bg)}.datagrid-striped .datagrid-row-even:hover,.datagrid-striped .datagrid-row-odd:hover{background-color:var(--theme-active-bg)}.datagrid-striped .datagrid-row-selected.datagrid-row-even,.datagrid-striped .datagrid-row-selected.datagrid-row-odd{background-color:var(--theme-selected-bg)}.datagrid-striped .datagrid-row-selected.datagrid-row-even:hover,.datagrid-striped .datagrid-row-selected.datagrid-row-odd:hover{background-color:rgba(var(--theme-primary-rgb),.12)}.datagrid-cell{align-items:center;border-right:1px solid var(--theme-border-subtle);box-sizing:border-box;color:var(--theme-text-primary);display:flex;flex-shrink:0;min-width:0;overflow:hidden;padding:4px 8px;text-overflow:ellipsis;white-space:nowrap}.datagrid-cell:last-child{border-right:none}.datagrid-cell-focused{outline:2px solid #1c7ed6;outline-offset:-2px}.datagrid-cell-editing{overflow:visible;padding:2px}.datagrid-cell-align-left{justify-content:flex-start;text-align:left}.datagrid-cell-align-center{justify-content:center;text-align:center}.datagrid-cell-align-right{justify-content:flex-end;text-align:right}.datagrid-cell-pinned-left{background-color:inherit;left:0;position:sticky;z-index:1}.datagrid-cell-pinned-right{background-color:inherit;position:sticky;right:0;z-index:1}.datagrid-header-row .datagrid-cell-pinned-left,.datagrid-header-row .datagrid-cell-pinned-right{z-index:3}.datagrid-checkbox-cell{align-items:center;display:flex;flex-shrink:0;justify-content:center;max-width:40px;min-width:40px;width:40px}.datagrid-checkbox{accent-color:#1c7ed6;cursor:pointer}.datagrid-row-number{color:var(--theme-text-muted);font-size:.8rem;justify-content:center;max-width:50px;min-width:50px;width:50px}.datagrid-editor{border-color:#1c7ed6;width:100%}.datagrid-editor:focus{border-color:#1c7ed6;box-shadow:0 0 0 .15rem rgba(28,126,214,.25)}.datagrid-footer-row{background-color:var(--theme-surface-raised-bg);border-top:1px solid var(--theme-border-subtle);bottom:0;display:flex;min-height:32px;position:sticky;z-index:2}.datagrid-footer-cell{align-items:center;border-right:1px solid var(--theme-border-subtle);box-sizing:border-box;color:var(--theme-text-primary);display:flex;flex-shrink:0;font-weight:700;padding:4px 8px}.datagrid-footer-cell:last-child{border-right:none}.datagrid-pagination{background-color:var(--theme-surface-bg);border-top:1px solid var(--theme-border-subtle);min-height:40px;padding:6px 12px}.datagrid-pagination nav{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.datagrid-pagination-info{color:var(--theme-text-secondary);font-size:.8rem;white-space:nowrap}.datagrid-pagination-pages{align-items:center;display:flex;gap:4px}.datagrid-pagination-btn{min-width:32px;text-align:center}.datagrid-pagination-btn-active{font-weight:600}.datagrid-pagination-ellipsis{align-items:center;color:var(--theme-text-muted);display:inline-flex;font-size:.8rem;justify-content:center;min-width:24px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.datagrid-pagination-actions{align-items:center;display:flex;gap:8px}.datagrid-pagination-size{min-width:80px;width:auto}.datagrid-pagination-export{white-space:nowrap}.datagrid-empty{align-items:center;color:var(--theme-text-muted);display:flex;font-style:italic;justify-content:center;padding:32px 16px;text-align:center}.datagrid-dragging-column{opacity:.5}.datagrid-drop-indicator{position:relative}.datagrid-drop-indicator:before{background-color:#1c7ed6;content:"";height:100%;left:-1px;position:absolute;top:0;width:2px;z-index:5}.datagrid-dense .datagrid-header-row{min-height:28px}.datagrid-dense .datagrid-header-cell{min-height:28px;padding:2px 6px}.datagrid-dense .datagrid-filter-row{min-height:28px;top:28px}.datagrid-dense .datagrid-filter-cell{padding:1px 4px}.datagrid-dense .datagrid-row{min-height:24px}.datagrid-dense .datagrid-cell{padding:2px 6px}.datagrid-dense .datagrid-footer-row{min-height:24px}.datagrid-dense .datagrid-footer-cell{padding:2px 6px}.datagrid-dense .datagrid-pagination{min-height:32px;padding:4px 8px}.datagrid-dense .datagrid-checkbox-cell{max-width:32px;min-width:32px;width:32px}.datagrid-dense .datagrid-row-number{max-width:40px;min-width:40px;width:40px}@media (prefers-reduced-motion:reduce){.datagrid-resize-handle:after{transition:none}}