#column-rank {
    width: 9.9999%;
}

#column-products {
    padding: 0;
}

#column-product-data {
    width: 100%;
}

#column-rank,
#column-product-data {
    height: 100%;
    padding: 0;
    box-shadow: None;
}

.fa-external-link-alt {
    font-size: 1.12em;
}

.favorite-icons {
    font-size: 1em;
    padding: 4px;
}

.product {
    height: var(--product-card-height);
    margin: 0 0 1em 0;
    padding: 0 0 15px 0;
}

.product-address-row {
    font-size: 0.65em;
}

.product-city {
    margin-left: 8px;
}

.product-data-container {
    height: var(--product-card-height);
    padding-left: 1em;
    padding-right: 0;
    box-shadow: none !important;
}

.product-image-container {
    height: var(--product-card-height);
    overflow: hidden;
    /* Hide overflow if the image doesn't fit */
    position: relative;
    /* Position for absolute child */
    padding: 0;
    border: none;
}

.product-image-container img {
    position: absolute;
    /* Position the image absolutely */
    top: 50%;
    /* Center the image vertically */
    left: 50%;
    /* Center the image horizontally */
    width: 100%;
    /* Make the image width 100% */
    height: auto;
    /* Maintain aspect ratio */
    min-width: 100%;
    /* Ensure the image covers the container */
    min-height: 100%;
    /* Ensure the image covers the container */
    transform: translate(-50%, -50%);
    /* Offset to center the image */
}

/*
    .product-image {}
*/
.product-link {
    text-decoration: none;
}

.product-name {
    font-size: 1.25em;
    color: blue;
}

.product-rank {
    text-align: center;
}

#products {
    padding: 0;
}

/* Ensure only the center column scrolls */
.scrollable {
    overflow-y: auto;
    height: 150vh;
    padding: 10px;
}

#sports-icon-row {
    width: 100%;
    padding: 0 !important;
    text-align: center;
    box-shadow: none !important;
}

.table-row {
    font-size: 0.65em;
}

th,
td {
    width: 24.9999%;
    padding: 0 !important;
    font-size: 1.5vw;
}

/*
    overflow: hidden;
    white-space: nowrap;
*/
td {
    text-align: left !important;
    text-overflow: ellipsis;
}

th {
    font-weight: bold;
}