/* Hover state for modal trigger links to improve usability */
.elvis-kontaktai .btn-link {
    font-weight: 500;
    color: var(--bs-primary, #0d6efd);
    text-align: left;
    transition: color 0.15s ease-in-out, text-decoration 0.15s ease-in-out;
}
.elvis-kontaktai .btn-link:hover {
    text-decoration: underline !important;
    color: var(--bs-link-hover-color, #0a58ca);
}

/* Premium table headers & cells spacing */
.elvis-kontaktai .table th {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    color: var(--bs-secondary-color, #6c757d);
    border-bottom: 2px solid var(--bs-border-color, #dee2e6);
    padding: 0.85rem 0.75rem;
}
.elvis-kontaktai .table td {
    padding: 0.85rem 0.75rem;
    font-size: 0.95rem;
}
.elvis-kontaktai .table tbody tr {
    transition: background-color 0.15s ease-in-out;
}

/* Search box premium enhancements */
.elvis-kontaktai .input-group {
    border-radius: 0.375rem;
    transition: box-shadow 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.elvis-kontaktai .input-group:focus-within {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.elvis-kontaktai .input-group-text {
    background-color: var(--bs-tertiary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    color: var(--bs-secondary-color, #6c757d);
}
.elvis-kontaktai .form-control {
    border: 1px solid var(--bs-border-color, #dee2e6);
}
.elvis-kontaktai .form-control:focus {
    box-shadow: none;
    border-color: var(--bs-border-color, #dee2e6);
}

/* CSS Highlights API Styles for searching */
::highlight(elvis-search-match-elvis-instance-1),
::highlight(elvis-search-match-elvis-instance-2),
::highlight(elvis-search-match-elvis-instance-3),
::highlight(elvis-search-match-elvis-instance-4),
::highlight(elvis-search-match-elvis-instance-5),
::highlight(elvis-search-match-elvis-instance-6),
::highlight(elvis-search-match-elvis-instance-7),
::highlight(elvis-search-match-elvis-instance-8) {
    background-color: var(--bs-warning-bg-subtle, #fff3cd);
    color: var(--bs-warning-text-emphasis, #664d03);
    font-weight: 600;
}

/* Empty state styling */
.elvis-kontaktai .elvis-no-results svg {
    opacity: 0.75;
    transition: transform 0.3s ease-in-out;
}
.elvis-kontaktai .elvis-no-results:hover svg {
    transform: scale(1.05);
}

/* Responsive stackable tables for mobile */
@media (max-width: 767.98px) {
    .elvis-kontaktai .table, 
    .elvis-kontaktai .table thead, 
    .elvis-kontaktai .table tbody, 
    .elvis-kontaktai .table th, 
    .elvis-kontaktai .table td, 
    .elvis-kontaktai .table tr {
        display: block;
    }
    
    .elvis-kontaktai .table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    
    .elvis-kontaktai .table tr {
        border: 1px solid var(--bs-border-color, #dee2e6);
        border-radius: 0.5rem;
        margin-bottom: 1rem;
        padding: 0.75rem;
        background-color: var(--bs-body-bg, #fff);
        box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    }
    
    .elvis-kontaktai .table td {
        border: none;
        border-bottom: 1px solid var(--bs-border-color-translucent, rgba(0, 0, 0, 0.05));
        position: relative;
        padding: 0.5rem 0.5rem 0.5rem 50% !important;
        text-align: right !important;
        white-space: normal;
    }
    
    .elvis-kontaktai .table td:last-child {
        border-bottom: 0;
    }
    
    .elvis-kontaktai .table td::before {
        content: attr(data-label);
        position: absolute;
        left: 0.75rem;
        width: 45%;
        padding-right: 10px;
        text-align: left;
        font-weight: 600;
        color: var(--bs-secondary-color, #6c757d);
    }
}
