/* WebCreative-Tablas — estilo por defecto (todo se puede sobrescribir con CSS propio o desde Elementor). */
.wctab-wrapper { max-width: 100%; margin: 0 0 1.5em; overflow-x: auto; }
.wctab-name { margin: 0 0 .5em; font-size: 1.4em; }
.wctab-description { display: block; margin: 0 0 .8em; }
table.wctab {
	--wctab-head-bg: #d9edf7;
	--wctab-head-color: #1d2327;
	--wctab-body-bg: #ffffff;
	--wctab-stripe-bg: #f6f7f7;
	--wctab-hover-bg: #e8f1f8;
	--wctab-border: #dcdcde;
	--wctab-active-bg: #049cdb;
	width: 100%;
	max-width: 100%;
	margin: 0 0 1em;
	border-collapse: collapse;
	border-spacing: 0;
	border: 0;
	table-layout: auto;
}
table.wctab th, table.wctab td {
	padding: 8px 10px;
	text-align: left;
	vertical-align: top;
	border: 0;
	border-top: 1px solid var(--wctab-border);
	background: var(--wctab-body-bg);
	box-sizing: border-box;
}
table.wctab tbody td { background: var(--wctab-body-bg); }
table.wctab.wctab-striping tbody tr:nth-child(even) td { background: var(--wctab-stripe-bg); }
table.wctab.wctab-hover tbody tr:hover td { background: var(--wctab-hover-bg); }
table.wctab thead th, table.wctab tfoot th, table.wctab tfoot td {
	background: var(--wctab-head-bg);
	color: var(--wctab-head-color);
	font-weight: 700;
	vertical-align: middle;
}
table.wctab tfoot th { border-top: 2px solid var(--wctab-border); }
table.wctab img { max-width: 100%; height: auto; }

/* DataTables 2 */
.wctab-wrapper .dt-container { position: relative; clear: both; margin-bottom: 1rem; }
.wctab-wrapper .dt-container .dt-layout-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .6em 1em; }
.wctab-wrapper .dt-container .dt-layout-row.dt-layout-table { display: block; }
.wctab-wrapper .dt-container .dt-layout-row.dt-layout-table .dt-layout-cell { display: block; width: 100%; }
.wctab-wrapper .dt-container .dt-layout-cell { display: flex; flex-wrap: wrap; align-items: center; gap: 1em; padding: 6px 0; }
.wctab-wrapper .dt-container .dt-layout-cell.dt-layout-start { margin-right: auto; }
.wctab-wrapper .dt-container .dt-layout-cell.dt-layout-end { margin-left: auto; justify-content: flex-end; }
.wctab-wrapper .dt-container .dt-layout-cell:empty { display: none; }
.wctab-wrapper .dt-container label { display: inline; width: auto; margin: 0; }
.wctab-wrapper .dt-search input, .wctab-wrapper .dt-length select {
	margin: 0 0 0 .4em; padding: 6px 8px; border: 1px solid #c3c4c7; border-radius: 4px; background: #fff; width: auto; max-width: 100%;
}
.wctab-wrapper .dt-length select { margin: 0 .4em; }
.wctab-wrapper .dt-scroll { width: 100%; }
.wctab-wrapper .dt-scroll table.wctab { width: 100% !important; }

/* Ordenación */
table.wctab thead th .dt-column-header { display: flex; justify-content: space-between; align-items: center; gap: 6px; }
table.wctab thead th .dt-column-title { flex-grow: 1; }
table.wctab thead th .dt-column-title:empty { display: none; }
table.wctab thead th.dt-orderable-asc, table.wctab thead th.dt-orderable-desc { cursor: pointer; }
table.wctab thead th.dt-orderable-asc:hover, table.wctab thead th.dt-orderable-desc:hover,
table.wctab thead th.dt-ordering-asc, table.wctab thead th.dt-ordering-desc { background: var(--wctab-active-bg); color: #fff; }
table.wctab thead .dt-column-order { position: relative; width: 12px; height: 24px; line-height: 12px; font-size: 12px; font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }
table.wctab thead .dt-orderable-asc .dt-column-order:before, table.wctab thead .dt-ordering-asc .dt-column-order:before { content: "\25B2"; position: absolute; display: block; bottom: 50%; opacity: .25; }
table.wctab thead .dt-orderable-desc .dt-column-order:after, table.wctab thead .dt-ordering-desc .dt-column-order:after { content: "\25BC"; position: absolute; display: block; top: 50%; opacity: .25; }
table.wctab thead .dt-ordering-asc .dt-column-order:before, table.wctab thead .dt-ordering-desc .dt-column-order:after { opacity: .9; }

/* Paginación */
.wctab-wrapper .dt-paging nav { display: flex; flex-wrap: wrap; gap: 4px; }
.wctab-wrapper .dt-paging .dt-paging-button {
	padding: 5px 11px; border: 1px solid #c3c4c7; border-radius: 4px; background: #fff; color: inherit; cursor: pointer; font: inherit; line-height: 1.3;
}
.wctab-wrapper .dt-paging .dt-paging-button:hover:not(.disabled):not(.current) { background: var(--wctab-hover-bg, #e8f1f8); }
.wctab-wrapper .dt-paging .dt-paging-button.current { background: var(--wctab-active-bg, #049cdb); border-color: var(--wctab-active-bg, #049cdb); color: #fff; font-weight: 600; }
.wctab-wrapper .dt-paging .dt-paging-button.disabled { opacity: .45; cursor: default; }
.wctab-wrapper .dt-paging .ellipsis { padding: 5px 4px; }
.wctab-wrapper .dt-empty { text-align: center; padding: 14px; }
