/* General Body and Font Styles */
body {
    font-family: 'Inter', sans-serif;
    background-color: black;
    color: #f3f4f6; /* off-white */
}

/* Yellow Theme Elements */
.btn-yellow {
    background-color: #facc15; /* yellow-400 */
    color: #1f2937; /* gray-800 */
}
.btn-yellow:hover {
    background-color: #f59e0b; /* amber-500 */
}
.section-border {
    border: 3px solid #facc15;
}

/* Spinner Animation for Fetch Buttons */
.spinner {
    border-top-color: black; /* Match button text color */
    animation: spin 1s linear infinite;
}
@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #1f2937; /* gray-800 */
}
::-webkit-scrollbar-thumb {
    background: #4b5563; /* gray-600 */
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #6b7280; /* gray-500 */
}

/* On-Ice Event Chart Styles */
.rink-dot {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(0, 0, 0, 0.7);
    cursor: pointer;
    transition: transform 0.2s ease;
}
.rink-dot:hover {
    transform: translate(-50%, -50%) scale(1.5);
}

/* Custom Header Style */
.site-header {
    background-color: black;
}

/* Favorite Team Schedule Ticker */
.ticker-wrapper {
    overflow: hidden;
    white-space: nowrap;
    position: relative; /* Crucial for pseudo-elements */
    background: #1f2937; /* gray-800 */
    padding: 8px 0;
    border-radius: 8px;
}

.ticker-wrapper:before,
.ticker-wrapper:after {
    content: "";
    position: absolute;
    top: 0;
    width: 75px; /* Adjust fade-out width as needed */
    height: 100%;
    z-index: 2;
    pointer-events: none; /* Allows clicks to pass through */
}

.ticker-wrapper:before {
    left: 0;
    background: linear-gradient(to right, #1f2937 0%, rgba(31, 41, 55, 0) 100%);
}

.ticker-wrapper:after {
    right: 0;
    background: linear-gradient(to left, #1f2937 0%, rgba(31, 41, 55, 0) 100%);
}

.ticker-track {
    display: flex; /* Makes items align horizontally */
    width: max-content; /* Allows content to extend beyond container */
    animation: ticker-scroll 40s linear infinite; /* Adjusted default duration */
}

.ticker-track:hover {
    animation-play-state: paused;
}

@keyframes ticker-scroll {
    from {
        transform: translateX(0%);
    }
    to {
        transform: translateX(-50%);
    }
}

.game-item-ticker {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px 12px; /* Reduced padding for tighter spacing */
    height: 80px; /* Slightly increased height to accommodate new content */
    flex-shrink: 0;
    background-color: #374151; /* gray-700 */
    border-radius: 6px;
    margin: 0 4px; /* Reduced margin between items */
    width: 160px; /* Wider to fit all content */
    text-align: center;
    position: relative; /* Added for delete button positioning */
}

.team-logo-ticker {
    height: 40px; /* Requested size */
    width: 40px;  /* Requested size */
    object-fit: contain;
}

/* Team Logo Style (for other schedule lists if they exist) */
.team-logo {
    height: 28px; /* Reverted to original 28px for non-ticker */
    width: 28px;
    object-fit: contain;
}

.game-log-logo {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

.box-score-logo {
    width: 150px;
    height: 150px;
    object-fit: contain;
}

.stats-header-logo {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

/* Sortable Table Header Styles */
.sortable-header {
    cursor: pointer;
    position: relative;
    user-select: none;
}
.sortable-header:hover {
    background-color: #374151; /* gray-700 */
}
.sort-icon {
    display: inline-block;
    margin-left: 5px;
    color: #facc15; /* yellow-400 */
}

/* Player Logo in Stats Table */
.player-logo {
    width: 30px;
    height: 30px;
    margin-right: 8px;
    display: inline-block;
    vertical-align: middle;
}

/* Sticky Column for Stats Table */
.sticky-table-container {
    overflow-x: auto;
}
.sticky-col {
    position: -webkit-sticky; /* For Safari */
    position: sticky;
    left: 0;
    z-index: 10; /* Lower z-index for cells */
}
#all-time-stats-container thead .sticky-col {
    background-color: #111827; /* gray-900 - Match your table head background */
    z-index: 20; /* Higher z-index for header */
}
#all-time-stats-container tbody .sticky-col {
    background-color: #1f2937; /* gray-800 - Match your table body background */
    padding-right: 25px; /* Adds space after the player name */
}
#all-time-stats-container tbody tr:hover .sticky-col {
    background-color: #374151; /* gray-700 - Match hover background */
}

/* Game Log Item Backgrounds */
.game-log-regular { background-color: #3d3d5c; } /* blue-800 */
.game-log-preseason { background-color: #3730a3; } /* indigo-800 */
.game-log-postseason { background-color: #500724; } /* rose-900 */