input::placeholder {
    color: hsl(var(--bc)) !important;
}

/* Bank badges rely on px-3 py-1 utilities for padding */
/* Removed in favor of Tailwind classes */

table.dataTable th.sorting_asc,
table.dataTable th.sorting_desc {
    text-decoration: underline;
    color: hsl(var(--p));
}

/* Add subtle sort arrows */
table.dataTable th.sorting::after,
table.dataTable th.sorting_asc::after,
table.dataTable th.sorting_desc::after {
    content: '▲';
    font-size: 0.625rem; /* text-xs */
    margin-left: 0.25rem; /* ml-1 */
    color: hsl(var(--bc));
    opacity: 0;
    transition: opacity 0.2s;
}

table.dataTable th.sorting:hover::after {
    opacity: 0.8;
}

table.dataTable th.sorting_desc::after {
    content: '▼';
    opacity: 1;
}

table.dataTable th.sorting_asc::after {
    opacity: 1;
}

/* Style DataTables pagination like joined button group */
.dataTables_paginate .paginate_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem; /* text-sm */
    padding: 0.25rem 0.5rem; /* btn-sm */
    border: 1px solid transparent;
    border-radius: 0;
}

.dataTables_paginate .paginate_button + .paginate_button {
    margin-left: -1px; /* hide middle borders */
}

/* Use DaisyUI colors for table elements */
table.dataTable thead th {
    background-color: var(--table-header-bg);
    color: hsl(var(--bc));
}

table.dataTable tbody tr:nth-child(even) {
    background-color: hsl(var(--b1));
}

table.dataTable tbody tr:hover {
    background-color: var(--table-row-hover);
}

table.dataTable.hover tbody tr:hover > * {
    box-shadow: inset 0 0 0 9999px var(--table-row-hover);
}

.dataTables_paginate {
    display: inline-flex;
}

.dataTables_paginate .paginate_button {
    background-color: hsl(var(--b2));
    color: hsl(var(--bc));
    border-color: hsl(var(--b3));
}

.dataTables_paginate .paginate_button.current,
.dataTables_paginate .paginate_button.current:hover {
    background-color: hsl(var(--p));
    color: hsl(var(--pc));
}

/* Player list search bar readability */
.player-search-controls {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
    padding: 0.75rem;
    border-radius: 0.75rem;
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.player-search-controls .input,
.player-search-controls .select {
    background-color: hsl(var(--b1));
    color: hsl(var(--bc));
    border-color: hsl(var(--b2));
    box-shadow: 0 4px 10px hsl(var(--bc) / 0.08);
}

.player-search-controls input::placeholder,
.player-search-controls select::placeholder {
    color: hsl(var(--bc) / 0.7) !important;
    opacity: 0.9;
}

.player-search-controls label span {
    color: hsl(var(--bc));
    font-weight: 600;
}

.player-search-controls input:focus-visible,
.player-search-controls select:focus-visible,
.player-search-controls textarea:focus-visible,
.player-search-controls .input:focus-visible,
.player-search-controls .select:focus-visible {
    outline: 2px solid hsl(var(--p));
    outline-offset: 2px;
    box-shadow: 0 0 0 3px hsl(var(--p) / 0.35);
}
