@dolusoft/vue3-datatable
Version:
Vue3 Datatable - fully customizable & easy to use datatable library
1,132 lines (1,116 loc) • 33.6 kB
CSS
*, ::before, ::after {
--tw-border-spacing-x: 0;
--tw-border-spacing-y: 0;
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-rotate: 0;
--tw-skew-x: 0;
--tw-skew-y: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-pan-x: ;
--tw-pan-y: ;
--tw-pinch-zoom: ;
--tw-scroll-snap-strictness: proximity;
--tw-gradient-from-position: ;
--tw-gradient-via-position: ;
--tw-gradient-to-position: ;
--tw-ordinal: ;
--tw-slashed-zero: ;
--tw-numeric-figure: ;
--tw-numeric-spacing: ;
--tw-numeric-fraction: ;
--tw-ring-inset: ;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: rgb(59 130 246 / 0.5);
--tw-ring-offset-shadow: 0 0 #0000;
--tw-ring-shadow: 0 0 #0000;
--tw-shadow: 0 0 #0000;
--tw-shadow-colored: 0 0 #0000;
--tw-blur: ;
--tw-brightness: ;
--tw-contrast: ;
--tw-grayscale: ;
--tw-hue-rotate: ;
--tw-invert: ;
--tw-saturate: ;
--tw-sepia: ;
--tw-drop-shadow: ;
--tw-backdrop-blur: ;
--tw-backdrop-brightness: ;
--tw-backdrop-contrast: ;
--tw-backdrop-grayscale: ;
--tw-backdrop-hue-rotate: ;
--tw-backdrop-invert: ;
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
--tw-contain-size: ;
--tw-contain-layout: ;
--tw-contain-paint: ;
--tw-contain-style: ;
}
::backdrop {
--tw-border-spacing-x: 0;
--tw-border-spacing-y: 0;
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-rotate: 0;
--tw-skew-x: 0;
--tw-skew-y: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-pan-x: ;
--tw-pan-y: ;
--tw-pinch-zoom: ;
--tw-scroll-snap-strictness: proximity;
--tw-gradient-from-position: ;
--tw-gradient-via-position: ;
--tw-gradient-to-position: ;
--tw-ordinal: ;
--tw-slashed-zero: ;
--tw-numeric-figure: ;
--tw-numeric-spacing: ;
--tw-numeric-fraction: ;
--tw-ring-inset: ;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: rgb(59 130 246 / 0.5);
--tw-ring-offset-shadow: 0 0 #0000;
--tw-ring-shadow: 0 0 #0000;
--tw-shadow: 0 0 #0000;
--tw-shadow-colored: 0 0 #0000;
--tw-blur: ;
--tw-brightness: ;
--tw-contrast: ;
--tw-grayscale: ;
--tw-hue-rotate: ;
--tw-invert: ;
--tw-saturate: ;
--tw-sepia: ;
--tw-drop-shadow: ;
--tw-backdrop-blur: ;
--tw-backdrop-brightness: ;
--tw-backdrop-contrast: ;
--tw-backdrop-grayscale: ;
--tw-backdrop-hue-rotate: ;
--tw-backdrop-invert: ;
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
--tw-contain-size: ;
--tw-contain-layout: ;
--tw-contain-paint: ;
--tw-contain-style: ;
}
/* tables */
*,
:after,
:before {
border: 0 solid transparent;
box-sizing: border-box;
}
.bh-table-responsive {
position: relative;
width: 100%;
border-radius: 0.25rem;
}
/* Perfect Scrollbar z-index fix */
.bh-table-responsive table {
width: 100%;
max-width: 100%;
border-collapse: collapse ;
}
.bh-table-responsive table thead{
white-space: nowrap;
}
.bh-table-responsive table thead tr,
.bh-table-responsive table tfoot tr {
--tw-bg-opacity: 1;
background-color: rgb(246 247 250 / var(--tw-bg-opacity, 1));
}
.bh-table-responsive table thead tr th,
.bh-table-responsive table tfoot tr th,
.bh-table-responsive table tbody tr td {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
padding-left: 1rem;
padding-right: 1rem;
text-align: left;
white-space: nowrap;
}
.bh-table-responsive table thead tr th,
.bh-table-responsive table tfoot tr th {
vertical-align: top;
font-weight: 700;
}
.bh-table-responsive table tbody tr {
border-bottom-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(246 247 250 / var(--tw-border-opacity, 1));
}
.bh-table-responsive table.bh-table-striped tbody tr:nth-child(odd) {
background-color: rgb(224 230 237 / 0.15);
}
.bh-table-responsive table.bh-table-hover tbody tr:hover {
--tw-bg-opacity: 1;
background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.bh-table-responsive table.bh-table-compact thead tr th,
.bh-table-responsive table.bh-table-compact tbody tr td {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
padding-right: 0.75rem;
}
.bh-table-responsive table.bh-table-bordered thead tr th,
.bh-table-responsive table.bh-table-bordered tbody tr td {
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(246 247 250 / var(--tw-border-opacity, 1));
}
.bh-pagination .bh-page-item {
display: grid;
height: 2rem;
width: 2rem;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
place-content: center;
border-radius: 9999px;
border-width: 1px;
border-style: solid;
border-color: rgb(14 23 38 / 0.3);
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
padding-left: 0.625rem;
padding-right: 0.625rem;
padding-top: 0.375rem;
padding-bottom: 0.375rem;
--tw-text-opacity: 1;
color: rgb(75 85 99 / var(--tw-text-opacity, 1));
outline-width: 0px;
}
.bh-pagination .bh-page-item:hover {
--tw-border-opacity: 1;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(67 97 238 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
transition-duration: 200ms;
}
.bh-pagination .bh-page-item:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.bh-pagination .bh-page-item {
-webkit-appearance: button;
background-image: none;
}
.bh-pagination .bh-page-item.disabled:not(.bh-active) {
pointer-events: none;
opacity: 0.5;
}
.bh-pagination .bh-page-item.bh-active {
--tw-border-opacity: 1;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(67 97 238 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.bh-table-responsive button,
.bh-table-responsive input {
outline: 2px solid transparent;
outline-offset: 2px;
}
.bh-pagination-info .bh-pagesize {
box-sizing: border-box;
border-radius: 0.25rem;
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(224 230 237 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
padding-left: 0.5rem;
padding-right: 0.5rem;
padding-top: 0.375rem;
padding-bottom: 0.375rem;
font-weight: 400;
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
outline-width: 0px;
}
.bh-pagination-info .bh-pagesize:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
--tw-ring-color: rgb(224 230 237 / 0.4);
}
.bh-pagination-info .bh-pagesize:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.bh-pagination-info .bh-pagesize:focus:is(.bh-dark *) {
--tw-ring-color: rgb(75 85 99 / 0.4);
}
/* filter */
.bh-table-responsive table th .bh-filter {
margin-top: 0.125rem;
display: flex;
height: 30px;
width: 100%;
align-items: center;
}
.bh-table-responsive table th .bh-filter > .bh-form-control {
box-sizing: border-box;
height: 100%;
width: 100%;
min-width: 60px;
border-top-left-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(224 230 237 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
padding-left: 0.75rem;
padding-right: 0.75rem;
padding-top: 0.25rem;
padding-bottom: 0.25rem;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
outline-width: 0px;
}
.bh-table-responsive table th .bh-filter > .bh-form-control:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
--tw-ring-color: rgb(224 230 237 / 0.4);
}
.bh-table-responsive table th .bh-filter > .bh-form-control:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.bh-table-responsive table th .bh-filter > .bh-form-control:focus:is(.bh-dark *) {
--tw-ring-color: rgb(75 85 99 / 0.4);
}
/* DateTime filter slot - apply same styles */
.bh-table-responsive table th .bh-filter .bh-form-control {
box-sizing: border-box;
height: 100%;
border-top-left-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(224 230 237 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
padding-left: 0.75rem;
padding-right: 0.75rem;
padding-top: 0.25rem;
padding-bottom: 0.25rem;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
outline-width: 0px;
}
.bh-table-responsive table th .bh-filter .bh-form-control:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
--tw-ring-color: rgb(224 230 237 / 0.4);
}
.bh-table-responsive table th .bh-filter .bh-form-control:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.bh-table-responsive table th .bh-filter .bh-form-control:focus:is(.bh-dark *) {
--tw-ring-color: rgb(75 85 99 / 0.4);
}
.bh-table-responsive table th .bh-filter > select {
border-radius: 0.25rem;
}
.bh-table-responsive table th .bh-filter > button,
.bh-table-responsive table th .bh-filter .v-popper button {
display: grid;
height: 30px;
width: 30px;
flex-shrink: 0;
cursor: pointer;
place-content: center;
border-top-right-radius: 0.25rem;
border-bottom-right-radius: 0.25rem;
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(224 230 237 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(224 230 237 / var(--tw-bg-opacity, 1));
color: rgb(14 23 38 / 0.7);
}
.bh-table-responsive table th .bh-filter > button:hover,
.bh-table-responsive table th .bh-filter .v-popper button:hover {
color: rgb(14 23 38 / 0.9);
}
.bh-table-responsive table th .bh-filter > button:is(.bh-dark *),
.bh-table-responsive table th .bh-filter .v-popper button:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.bh-table-responsive table th .bh-filter > button:hover:is(.bh-dark *),
.bh-table-responsive table th .bh-filter .v-popper button:hover:is(.bh-dark *) {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.bh-table-responsive table th .bh-filter > button,
.bh-table-responsive table th .bh-filter .v-popper button {
-webkit-appearance: button;
background-image: none;
}
.bh-filter-menu button {
display: flex;
width: 100%;
cursor: pointer;
border-width: 1px;
border-style: solid;
border-color: transparent;
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
padding-left: 1rem;
padding-right: 1rem;
padding-top: 0.375rem;
padding-bottom: 0.375rem;
text-align: left;
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
}
.bh-filter-menu button:hover {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
font-weight: 700;
}
.bh-filter-menu button:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.bh-filter-menu button:hover:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.bh-filter-menu button {
-webkit-appearance: button;
background-image: none;
}
.bh-filter-menu button.active {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
font-weight: 700;
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
}
.bh-filter-menu button.active:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
/* checkbox */
.bh-table-responsive input[type='checkbox'] {
position: absolute;
height: 1.25rem;
width: 1.25rem;
opacity: 0;
}
.bh-table-responsive input[type='checkbox'] + div {
display: grid;
height: 1.25rem;
width: 1.25rem;
place-content: center;
border-radius: 0.25rem;
border-width: 1px;
border-style: solid;
--tw-border-opacity: 1;
border-color: rgb(224 230 237 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.bh-table-responsive input[type='checkbox'] + div:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.bh-table-responsive input[type='checkbox'] + div svg {
pointer-events: none;
display: none;
height: 0.75rem;
width: 0.75rem;
fill: currentColor;
--tw-text-opacity: 1;
color: rgb(67 97 238 / var(--tw-text-opacity, 1));
}
.bh-table-responsive input[type='checkbox']:checked + div,
.bh-table-responsive input[type='checkbox']:indeterminate + div {
--tw-border-opacity: 1;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1));
--tw-bg-opacity: 1;
background-color: rgb(67 97 238 / var(--tw-bg-opacity, 1));
}
.bh-table-responsive input[type='checkbox']:checked + div svg.check,
.bh-table-responsive input[type='checkbox']:indeterminate + div svg.intermediate {
display: flex;
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.bh-pointer-events-none {
pointer-events: none;
}
.bh-absolute {
position: absolute;
}
.bh-relative {
position: relative;
}
.bh-sticky {
position: sticky;
}
.bh-inset-0 {
inset: 0px;
}
.bh-bottom-0 {
bottom: 0px;
}
.bh-left-0 {
left: 0px;
}
.bh-left-\[52px\] {
left: 52px;
}
.bh-right-0 {
right: 0px;
}
.bh-top-0 {
top: 0px;
}
.bh-top-1\/2 {
top: 50%;
}
.bh-top-full {
top: 100%;
}
.bh-z-10 {
z-index: 10;
}
.bh-z-\[1\] {
z-index: 1;
}
.bh-mb-1 {
margin-bottom: 0.25rem;
}
.bh-mb-2 {
margin-bottom: 0.5rem;
}
.bh-mb-4 {
margin-bottom: 1rem;
}
.bh-ml-1\.5 {
margin-left: 0.375rem;
}
.bh-mr-2 {
margin-right: 0.5rem;
}
.bh-mt-1 {
margin-top: 0.25rem;
}
.bh-mt-2 {
margin-top: 0.5rem;
}
.bh-block {
display: block;
}
.bh-flex {
display: flex;
}
.bh-inline-flex {
display: inline-flex;
}
.bh-grid {
display: grid;
}
.bh-h-10 {
height: 2.5rem;
}
.bh-h-11 {
height: 2.75rem;
}
.bh-h-8 {
height: 2rem;
}
.bh-h-full {
height: 100%;
}
.bh-min-h-\[100px\] {
min-height: 100px;
}
.bh-w-32 {
width: 8rem;
}
.bh-w-4 {
width: 1rem;
}
.bh-w-full {
width: 100%;
}
.bh-min-w-\[220px\] {
min-width: 220px;
}
.bh-flex-1 {
flex: 1 1 0%;
}
.bh-shrink-0 {
flex-shrink: 0;
}
.-bh-translate-y-1\/2 {
--tw-translate-y: -50%;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.bh-transform {
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.bh-cursor-pointer {
cursor: pointer;
}
.bh-select-none {
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.bh-flex-col {
flex-direction: column;
}
.bh-flex-wrap {
flex-wrap: wrap;
}
.bh-place-content-center {
place-content: center;
}
.bh-items-center {
align-items: center;
}
.bh-justify-end {
justify-content: flex-end;
}
.bh-justify-center {
justify-content: center;
}
.bh-justify-between {
justify-content: space-between;
}
.bh-gap-1 {
gap: 0.25rem;
}
.bh-gap-4 {
gap: 1rem;
}
.bh-space-x-1 > :not([hidden]) ~ :not([hidden]) {
--tw-space-x-reverse: 0;
margin-right: calc(0.25rem * var(--tw-space-x-reverse));
margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}
.bh-space-x-2 > :not([hidden]) ~ :not([hidden]) {
--tw-space-x-reverse: 0;
margin-right: calc(0.5rem * var(--tw-space-x-reverse));
margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.bh-overflow-auto {
overflow: auto;
}
.bh-overflow-hidden {
overflow: hidden;
}
.bh-rounded {
border-radius: 0.25rem;
}
.bh-rounded-lg {
border-radius: 0.5rem;
}
.bh-rounded-md {
border-radius: 0.375rem;
}
.bh-rounded-l {
border-top-left-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
}
.bh-border {
border-width: 1px;
}
.bh-border-t {
border-top-width: 1px;
}
.bh-border-solid {
border-style: solid;
}
.bh-border-none {
border-style: none;
}
.\!bh-border-primary {
--tw-border-opacity: 1 ;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1)) ;
}
.\!bh-border-transparent {
border-color: transparent ;
}
.bh-border-gray-200 {
--tw-border-opacity: 1;
border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.bh-border-gray-300 {
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.\!bh-bg-primary\/10 {
background-color: rgb(67 97 238 / 0.1) ;
}
.\!bh-bg-white {
--tw-bg-opacity: 1 ;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) ;
}
.bh-bg-\[\#e0e6ed\] {
--tw-bg-opacity: 1;
background-color: rgb(224 230 237 / var(--tw-bg-opacity, 1));
}
.bh-bg-blue-50 {
--tw-bg-opacity: 1;
background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}
.bh-bg-blue-600 {
--tw-bg-opacity: 1;
background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}
.bh-bg-blue-light {
--tw-bg-opacity: 1;
background-color: rgb(246 247 250 / var(--tw-bg-opacity, 1));
}
.bh-bg-blue-light\/50 {
background-color: rgb(246 247 250 / 0.5);
}
.bh-bg-gray-100 {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.bh-bg-gray-50 {
--tw-bg-opacity: 1;
background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.bh-bg-gray-600 {
--tw-bg-opacity: 1;
background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.bh-bg-gray-700 {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.bh-bg-green-600 {
--tw-bg-opacity: 1;
background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}
.bh-bg-primary\/10 {
background-color: rgb(67 97 238 / 0.1);
}
.bh-bg-transparent {
background-color: transparent;
}
.bh-bg-white {
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.\!bh-p-0 {
padding: 0px ;
}
.bh-p-10 {
padding: 2.5rem;
}
.bh-p-2 {
padding: 0.5rem;
}
.bh-p-3 {
padding: 0.75rem;
}
.bh-p-4 {
padding: 1rem;
}
.bh-px-2 {
padding-left: 0.5rem;
padding-right: 0.5rem;
}
.bh-px-2\.5 {
padding-left: 0.625rem;
padding-right: 0.625rem;
}
.bh-px-4 {
padding-left: 1rem;
padding-right: 1rem;
}
.bh-py-1 {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
}
.bh-py-1\.5 {
padding-top: 0.375rem;
padding-bottom: 0.375rem;
}
.bh-py-2 {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
}
.bh-pt-2 {
padding-top: 0.5rem;
}
.bh-text-left {
text-align: left;
}
.bh-text-2xl {
font-size: 1.5rem;
line-height: 2rem;
}
.bh-text-\[13px\] {
font-size: 13px;
}
.bh-text-sm {
font-size: 0.875rem;
line-height: 1.25rem;
}
.bh-text-xl {
font-size: 1.25rem;
line-height: 1.75rem;
}
.bh-text-xs {
font-size: 0.75rem;
line-height: 1rem;
}
.bh-font-bold {
font-weight: 700;
}
.bh-font-medium {
font-weight: 500;
}
.bh-font-normal {
font-weight: 400;
}
.bh-font-semibold {
font-weight: 600;
}
.bh-text-black {
--tw-text-opacity: 1;
color: rgb(14 23 38 / var(--tw-text-opacity, 1));
}
.bh-text-black\/15 {
color: rgb(14 23 38 / 0.15);
}
.bh-text-black\/70 {
color: rgb(14 23 38 / 0.7);
}
.bh-text-blue-600 {
--tw-text-opacity: 1;
color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}
.bh-text-gray-300 {
--tw-text-opacity: 1;
color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.bh-text-gray-600 {
--tw-text-opacity: 1;
color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}
.bh-text-gray-700 {
--tw-text-opacity: 1;
color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.bh-text-gray-800 {
--tw-text-opacity: 1;
color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.bh-text-green-600 {
--tw-text-opacity: 1;
color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}
.bh-text-primary {
--tw-text-opacity: 1;
color: rgb(67 97 238 / var(--tw-text-opacity, 1));
}
.bh-text-purple-600 {
--tw-text-opacity: 1;
color: rgb(147 51 234 / var(--tw-text-opacity, 1));
}
.bh-text-red-600 {
--tw-text-opacity: 1;
color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}
.bh-text-white {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.bh-antialiased {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.bh-shadow {
--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.bh-shadow-md {
--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.bh-shadow-sm {
--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.bh-outline-none {
outline: 2px solid transparent;
outline-offset: 2px;
}
.bh-outline-0 {
outline-width: 0px;
}
.bh-filter {
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.bh-transition-colors {
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
.bh-skeleton-box {
position: relative;
width: 100%;
overflow: hidden;
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.bh-skeleton-box::after {
position: absolute;
inset: 0px;
--tw-translate-x: -100%;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
animation: bhshimmer 2s infinite;
background-image: linear-gradient(90deg,rgba(0,0,0,0) 0,rgba(0,0,0,0.025) 20%,rgba(0,0,0,0.05) 50%,rgba(0,0,0,0));
--tw-content: '';
content: var(--tw-content);
}
@keyframes bhshimmer {
100% {
transform: translateX(100%);
}
}
.sticky-footer {
position: absolute;
z-index: 10;
bottom: 0;
width: 100%;
margin-bottom:-50px;
}
.sticky-table-footer {
position: sticky;
bottom: 0;
background-color: #f1f1f1 ; /* Alt toplam satırının arka plan rengi */
z-index: 1; /* Diğer satırların üstünde olması için */
}
.nodatacontent{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 12px;
}
/* ============================================
MUI X Style: Floating Label Filter Styles
============================================ */
.bh-filter-input-wrapper {
position: relative;
flex: 1;
}
/* Wrapper gets border when label is present */
.bh-filter-input-wrapper:has(.bh-floating-label) {
border: 1px solid #d1d5db;
border-radius: 4px;
background-color: white;
}
.bh-filter-input-wrapper:has(.bh-floating-label) .bh-form-control {
border: none ;
background: transparent ;
}
.bh-floating-label {
position: absolute;
top: -7px;
left: 8px;
padding: 0 4px;
font-size: 11px;
font-weight: 500;
line-height: 1;
color: #6b7280;
background-color: white;
z-index: 10;
pointer-events: none;
white-space: nowrap;
max-width: calc(100% - 40px);
overflow: hidden;
text-overflow: ellipsis;
transition: color 0.15s ease;
}
.bh-floating-label--active {
color: var(--primary, #3b82f6);
}
/* Active state - highlight border */
.bh-filter-input-wrapper:has(.bh-floating-label--active) {
border-color: var(--primary, #3b82f6);
}
/* Dark mode support */
.dark .bh-filter-input-wrapper:has(.bh-floating-label),
.bh-dark .bh-filter-input-wrapper:has(.bh-floating-label) {
border-color: #4b5563;
background-color: #1f2937;
}
.dark .bh-floating-label,
.bh-dark .bh-floating-label {
background-color: #1f2937;
color: #9ca3af;
border-radius: 5px / 2px;
}
.dark .bh-floating-label--active,
.bh-dark .bh-floating-label--active {
color: var(--primary, #60a5fa);
}
/* Input with label - add top padding for visual balance */
.bh-form-control--with-label {
padding-top: 4px;
}
/* Filter button when input has floating label */
.bh-filter-button--with-label {
height: 22px ;
width: 26px ;
margin-left: -4px;
}
.hover\:bh-border-primary:hover {
--tw-border-opacity: 1;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1));
}
.hover\:bh-bg-blue-700:hover {
--tw-bg-opacity: 1;
background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
}
.hover\:bh-bg-gray-100:hover {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.hover\:bh-bg-green-700:hover {
--tw-bg-opacity: 1;
background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}
.hover\:bh-bg-red-50:hover {
--tw-bg-opacity: 1;
background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}
.hover\:bh-text-black\/40:hover {
color: rgb(14 23 38 / 0.4);
}
.focus\:bh-border-gray-200:focus {
--tw-border-opacity: 1;
border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.focus\:bh-border-primary:focus {
--tw-border-opacity: 1;
border-color: rgb(67 97 238 / var(--tw-border-opacity, 1));
}
.focus\:bh-ring-1:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:bh-ring-primary:focus {
--tw-ring-opacity: 1;
--tw-ring-color: rgb(67 97 238 / var(--tw-ring-opacity, 1));
}
.dark\:bh-border-gray-600:is(.bh-dark *) {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
}
.dark\:bh-bg-gray-700:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.dark\:bh-bg-gray-800:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.dark\:bh-text-gray-300:is(.bh-dark *) {
--tw-text-opacity: 1;
color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.dark\:bh-text-gray-400:is(.bh-dark *) {
--tw-text-opacity: 1;
color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.dark\:bh-text-white\/15:is(.bh-dark *) {
color: rgb(255 255 255 / 0.15);
}
.dark\:hover\:bh-bg-gray-600:hover:is(.bh-dark *) {
--tw-bg-opacity: 1;
background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.dark\:hover\:bh-bg-red-900\/20:hover:is(.bh-dark *) {
background-color: rgb(127 29 29 / 0.2);
}
.dark\:hover\:bh-text-white\/40:hover:is(.bh-dark *) {
color: rgb(255 255 255 / 0.4);
}
@media (min-width: 640px) {
.sm\:bh-ml-auto {
margin-left: auto;
}
.sm\:bh-mt-0 {
margin-top: 0px;
}
.sm\:bh-flex-row {
flex-direction: row;
}
}