/**
 * DataTables + jQuery UI – TIXA theme overrides.
 * Load after jquery.dataTables.min.css, dataTables-plus.css, and jquery-ui.css
 */

/* ---------- DataTables: table chrome ---------- */
table.dataTable thead th,
table.dataTable thead td,
table.dataTable tfoot th,
table.dataTable tfoot td {
    border-color: var(--tixa-border-strong) !important;
}

table.dataTable thead th,
table.dataTable thead td {
    background: linear-gradient(180deg, #f8fcfb 0%, #eef6f4 100%);
    color: var(--tixa-text);
}

table.dataTable.no-footer {
    border-bottom-color: var(--tixa-border-strong) !important;
}

table.dataTable.row-border tbody th,
table.dataTable.row-border tbody td,
table.dataTable.display tbody th,
table.dataTable.display tbody td,
table.dataTable.cell-border tbody th,
table.dataTable.cell-border tbody td {
    border-color: var(--tixa-border-soft) !important;
}

table.dataTable.stripe tbody tr.odd,
table.dataTable.display tbody tr.odd {
    background-color: var(--tixa-row-stripe) !important;
}

table.dataTable.hover tbody tr:hover,
table.dataTable.display tbody tr:hover {
    background-color: var(--tixa-row-hover) !important;
}

table.dataTable tbody tr.selected {
    background-color: var(--tixa-row-selected) !important;
}

table.dataTable.stripe tbody tr.odd.selected,
table.dataTable.display tbody tr.odd.selected,
table.dataTable.hover tbody tr:hover.selected,
table.dataTable.display tbody tr:hover.selected {
    background-color: var(--tixa-row-selected-deep) !important;
}

/* Sorting column tint (replaces default blue-grey) */
table.dataTable.order-column tbody tr > .sorting_1,
table.dataTable.order-column tbody tr > .sorting_2,
table.dataTable.order-column tbody tr > .sorting_3,
table.dataTable.display tbody tr > .sorting_1,
table.dataTable.display tbody tr > .sorting_2,
table.dataTable.display tbody tr > .sorting_3 {
    background-color: #f0faf7 !important;
}

table.dataTable.order-column tbody tr.selected > .sorting_1,
table.dataTable.order-column tbody tr.selected > .sorting_2,
table.dataTable.order-column tbody tr.selected > .sorting_3,
table.dataTable.display tbody tr.selected > .sorting_1,
table.dataTable.display tbody tr.selected > .sorting_2,
table.dataTable.display tbody tr.selected > .sorting_3 {
    background-color: var(--tixa-row-selected) !important;
}

table.dataTable.display tbody tr.odd > .sorting_1,
table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
    background-color: #e8f4f0 !important;
}

table.dataTable.display tbody tr.even > .sorting_1,
table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
    background-color: #f5fbf9 !important;
}

table.dataTable.display tbody tr:hover > .sorting_1,
table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
    background-color: #dff5ed !important;
}

/* ---------- DataTables: wrapper / pagination / info ---------- */
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_processing,
.dataTables_wrapper .dataTables_paginate {
    color: var(--tixa-muted);
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    color: var(--tixa-dark-green) !important;
    border-radius: 4px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    color: #fff !important;
    border: 1px solid var(--tixa-dark-green) !important;
    background: var(--tixa-primary) !important;
    background-image: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    color: #fff !important;
    border: 1px solid var(--tixa-dark-green) !important;
    background: var(--tixa-primary) !important;
    background-image: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
    color: var(--tixa-muted) !important;
    border-color: transparent !important;
    background: transparent !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:active {
    background: var(--tixa-dark-green) !important;
    background-image: none !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12);
}

.dataTables_wrapper .dataTables_processing {
    color: var(--tixa-dark-green);
    font-weight: 600;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom-color: var(--tixa-border-strong) !important;
}

/* ---------- jQuery UI: base widgets ---------- */
.ui-widget {
    font-family: inherit;
    font-size: 1em;
}

.ui-widget-content {
    border: 1px solid var(--tixa-border-soft);
    background: #fff;
    background-image: none;
    color: var(--tixa-text);
}

.ui-widget-content a {
    color: var(--tixa-dark-green);
}

.ui-widget-header {
    border: 1px solid var(--tixa-dark-green);
    background: var(--tixa-dark-green);
    background-image: none;
    color: #fff;
}

.ui-widget-header a {
    color: #fff;
}

/* Buttons / tabs / default interactive */
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid var(--tixa-border-soft);
    background: #f5fbf9;
    background-image: none;
    font-weight: 600;
    color: var(--tixa-dark-green);
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
    color: var(--tixa-dark-green);
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid var(--tixa-primary);
    background: var(--tixa-row-hover);
    background-image: none;
    color: var(--tixa-text);
}

.ui-state-hover a,
.ui-state-hover a:hover {
    color: var(--tixa-text);
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
    border: 1px solid var(--tixa-dark-green);
    background: var(--tixa-primary);
    background-image: none;
    color: #fff;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #fff;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid rgba(71, 188, 199, 0.55);
    background: rgba(71, 188, 199, 0.12);
    background-image: none;
    color: var(--tixa-text);
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #e5988e;
    background: #c0392b;
    background-image: none;
    color: #fff;
}

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a,
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
    color: #fff;
}

/* Datepicker: today / selected day */
.ui-datepicker td a.ui-state-active {
    background: var(--tixa-primary) !important;
    background-image: none !important;
    color: #fff !important;
    border-color: var(--tixa-dark-green) !important;
}

.ui-datepicker .ui-datepicker-header {
    border-color: var(--tixa-dark-green);
}

/* Prev/next on green header – avoid mint “default” button look */
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next,
.ui-datepicker .ui-datepicker-header .ui-state-default.ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-state-default.ui-datepicker-next {
    background: transparent !important;
    border: 1px solid transparent !important;
    color: #fff !important;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next-hover {
    background: rgba(255, 255, 255, 0.18) !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
}

/* Hónap/év legördülő: ne a globális „TIXA select” megjelenés legyen */
.ui-datepicker .ui-datepicker-title select,
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    min-width: 0;
    width: auto;
    min-height: auto;
    padding: 1px 4px;
    margin: 1px 0;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 4px;
    background-color: rgba(255, 255, 255, 0.95);
    background-image: none;
    appearance: auto;
    -webkit-appearance: menulist;
    color: var(--tixa-text);
    font-size: 1em;
}
