body {
    font-family: "Helvetica Neue", Arial, sans-serif;
    background-color: #f2f2f2;
    color: #002233;
    margin: 0;
    padding: 0;
}


.header {
    text-align: center;
    color: white;
    padding: 20px;
    background-color: #0f77c7;
    font-size: 24px;
    min-width: 600px; /* Adjust as needed */

}

.header .logo {
    max-height: 80px;
    height: auto;
}

.header-logo img {
    display: block;
    max-width: 244px;
    height: auto;
    margin: 20px auto;
}

/* Navbar */
.navbar {
    background-color: #002233;
    min-width: 600px; /* Adjust as needed */
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    position: relative;
}

.nav-text {
    display: none; /* Hide the text by default */
}


.navbar .menu-items {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex; /* Horizontale layout standaard */
    flex-direction: row; /* Horizontale layout */
    background-color: #002233; /* Achtergrondkleur menu */
}


.navbar .menu-items a {
    text-align: left;
    color: white;
    padding: 10px 15px;
    text-decoration: none;
    display: block;
    margin: 0 5px; /* Ruimte tussen menu-items */
}

.navbar .menu-items a:hover {
    background-color: #ddd;
    color: black;
}


.menu-toggle {
    background: none;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
    display: none;
    margin: 0 10px; /* Horizontal margin only */
    padding: 0 10px; /* Horizontal padding only */
    line-height: 60px; /* Match with the navbar height */
}

/* Responsive: verberg menu-items standaard op kleine schermen */
@media (max-width: 768px) {

    .nav-text {
        display: block; /* Show the text on smaller screens */
        color: white;
        font-size: 24px;
        text-align: center;
        margin: 0 auto; /* Center horizontally */        
        }

    .navbar .menu-items {
        display: none; /* Verberg het menu standaard */
        flex-direction: column; /* Zorg voor een verticale layout */
        align-items: flex-start; /* Menu-items links uitlijnen */
        position: absolute;
        top: 70px;
        left: 0;        width: 100%; /* Menu neemt volledige breedte */
        max-width: 300px; /* Maximale breedte instellen */
        background-color: #002233;;
    }

    .menu-items.show {
        display: flex; /* Toon menu bij klikken */
    }

    .menu-items a {
        margin: 10px 0;
        text-align: center;
    }

    .menu-toggle {
        display: block;
    }

}


.navbar .construction-notice {
    float: right;
    font-size: 12px;
    color: white;
    padding: 14px 16px;
    background-color: transparent;
}

.navbar .construction-notice:hover {
    background-color: transparent;
    color: white;
}


.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* Ensure the wrapper takes up the full height of the viewport */
}

.container {
    flex-grow: 1; /* Makes the container take up remaining space */
    width: 100%;
    max-width: 960px;
    min-width: 600px; /* Adjust as needed */
    margin: 30px auto;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    padding: 20px;
}

h2 {
    color: #1E90FF;
    font-size: 22px;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 20px;
}

label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}

input[type="text"], input[type="number"], input[type="date"], textarea, select {
    width: calc(100% - 22px);
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 16px;
}

input[type="radio"] {
    margin-right: 10px;
}

.radio-group {
    margin-bottom: 20px;
}

.radio-group label {
    font-weight: normal;
    display: inline-block;
    margin-right: 15px;
}

textarea {
    height: 100px;
    resize: none;
}

input[type="submit"] {
    background-color: #1E90FF;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
}

input[type="submit"]:hover {
    background-color: #0f77c7;
}

.footer {
    text-align: center;
    padding: 20px;
    background-color: #0f77c7;
    color: white;
    margin-top: 20px;
    border-radius: 0 0 8px 8px;
}

.form-instructions {
    margin-bottom: 30px;
    font-size: 14px;
    color: #777;
}


/* Specific styles for chat application buttons */
.chat-submit-button {
    background-color: #1E90FF;
    color: white;
    padding: 6px 12px; /* Reduced padding */
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px; /* Reduced font size */
    line-height: 1.2; 
}

.chat-submit-button:hover {
    background-color: #0f77c7;
}

.language-selection {
    float: right; /* Position the language flags on the right side */
    padding: 12px 16px;
}

.language-selection a {
    display: inline-block;
    margin-left: 10px; /* Space between language icons */
}

.language-selection img {
    vertical-align: middle; /* Align the flags vertically */
    cursor: pointer; /* Show the pointer cursor when hovering over the flags */
}

/* Optional: Styling for when a language is selected */
.language-selection a img.selected {
    border: 2px solid #1E90FF; /* Highlight the selected language */
    border-radius: 50%; /* Round the image border */
}

.language-selection a:hover img {
    opacity: 0.8; /* Slight transparency effect on hover */

}

.filter-section {
    margin-bottom: 20px;
}

.filter-section label {
    margin-right: 10px;
    font-weight: bold;
}

.filter-section select {
    padding: 8px;
    margin-right: 10px;
}

.tournament-list {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

.tournament-list th, .tournament-list td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.tournament-list th {
    background-color: #1E90FF;
    color: white;
}

.tournament-list tr:hover {
    background-color: #f2f2f2;
    cursor: pointer;
}

.create-tournament-btn {
    display: inline-block;
    padding: 10px 20px;
    background-color: #1E90FF;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-size: 16px;
    margin-bottom: 20px;
}


.knockout-grid {
    display: flex;
    flex-wrap: wrap;
}

.knockout-row {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.knockout-match {
    width: 23%; /* Ensures max 4 matches per row */
    border: 1px solid #ddd;
    padding: 10px;
    margin-bottom: 20px;
    text-align: center;
    background-color: #f9f9f9;
}

.knockout-match p {
    margin: 5px 0;
}

/* General table styling */
.table-container {
    width: 100%;
    margin: 20px auto;
    border-collapse: collapse;
}

.table-container table {
    width: 100%;
    border-collapse: collapse;
}

.table-container th, 
.table-container td {
    padding: 12px;
    border: 1px solid #ddd;
    text-align: left;
}

.table-container th {
    background-color: #f2f2f2;
    font-weight: bold;
}

.table-container td {
    background-color: #fafafa;
}

/* Alternating row colors */
.table-container tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Hover effect on rows */
.table-container tr:hover {
    background-color: #e9e9e9;
}

/* Header styling */
.table-header {
    background-color: #1E90FF;
    color: white;
    font-size: 18px;
    text-align: center;
    padding: 16px;
    margin-bottom: 10px;
    border-radius: 8px 8px 0 0;
}

/* Responsive table */
@media screen and (max-width: 768px) {
    .table-container table, 
    .table-container thead, 
    .table-container tbody, 
    .table-container th, 
    .table-container td, 
    .table-container tr {
        display: block;
    }

    .table-container th {
        text-align: left;
    }

    .table-container tr {
        margin-bottom: 15px;
    }

    .table-container td {
        display: block;
        text-align: right;
        position: relative;
        padding-left: 50%;
    }

    .table-container td::before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        width: 50%;
        padding-left: 10px;
        font-weight: bold;
        text-align: left;
    }
}

/* Button styles */
.table-btn {
    display: inline-block;
    padding: 8px 16px;
    font-size: 14px;
    color: #fff;
    background-color: #1E90FF;
    border: none;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.table-btn:hover {
    background-color: #0f77c7;
}

.poule-table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

.poule-table th, .poule-table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
}

.poule-table th {
    background-color: #f2f2f2;
    font-weight: bold;
}

.poule-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

.poule-table tr:hover {
    background-color: #ddd;
}

button {
    background-color: #1E90FF;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
}

button:hover {
    background-color: #0f77c7;
}

/* Container for active matches */
.active-matches-container {
    display: flex;
    flex-direction: column;
    gap: 20px; /* Space between matches */
}

/* Tournament name styling */
.tournament-name {
    font-size: 1.3em;
    margin-bottom: 5px;
    color: #002233;
    text-align: center;
    font-weight: bold;
}

.matches-section {
    width: 100%; /* Adjust width as necessary */
}

.matches-container {
    max-height: 500px; /* Set a fixed max height for scroll area */
    overflow-y: auto; /* Enable vertical scrolling */
    padding-right: 5px; /* Optional padding for scrollbar spacing */
    background-color: #f9f9f9; /* Light background for visibility */
}

.match-button {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #00aaff; /* Base background color  was #59a9cf */
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    font-size: 16px;
    margin-bottom: 10px;
    text-align: center;
    cursor: pointer;
    position: relative;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s;
}

.match-button .players {
    display: flex;
    justify-content: center; /* Centers the player names and pictures horizontally */
    align-items: center;
    font-weight: bold;
    font-size: 20px; /* Increase font size for player names */
}

.match-button .players .player-name {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.match-button .vs {
    margin: 0 20px; /* Adds space around the "vs" text */
    font-weight: bold;
    font-size: 20px;
}

.match-button .scores {
    display: flex;
    justify-content: center; /* Center the scores horizontally */
    align-items: center; /* Align the scores with the bottom of the pictures */
    font-size: 18px;
}

.match-button .scores span {
    margin: 0 20px; /* Adds space between the scores */
}

.match-button .player-info {
    display: flex;
    flex-direction: column;
    justify-content: right; /* Centers the player names and pictures horizontally */
    align-items: right;
    font-weight: bold;
    font-size: 20px; /* Increase font size for player names */
}

.match-button .player-and-score {
    display: flex;
    justify-content: space-between; /* Space out the two players and their scores */
    align-items: center;
}

.match-button .player {
    display: flex;
    align-items: center; /* Align profile pic and name on the same line */
}

.match-button .player .name {
    margin-right: 10px;
    text-align: center;
}

.match-button .player .score {
    margin: 0 20px; /* Space between scores */
    text-align: center;
}

.match-button .deadline {
    font-size: 14px;
    color: #f0f0f0;
    text-align: left;
}

.match-button:hover {
    background-color: #008ecc; /* Slightly darker on hover */
}


.progress-bar {
    height: 10px;
    background-color: lightgray;
    width: 100%;
    border-radius: 4px;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
}

.progress-bar.high-progress {
    background-color: red; /* For progress >= 90% */
}

.progress {
    height: 100%;
    background-color: #053753; /* Base color */
    transition: width 0.2s ease;
}

.winner-logo img {
    display: block;
    max-width: 244px; /* Set a max width */
    height: auto;     /* Maintain aspect ratio */
    margin: 20px auto; /* Center the image */
}
.winner-profile img {
    display: block;
    max-width: 122px; /* Set a max width */
    height: auto;     /* Maintain aspect ratio */
    margin: 20px auto; /* Center the image */
}
.winner {
    text-align: center; /* Center the text */
    font-size: 24px; /* Adjust font size as needed */
    font-weight: bold; /* Optional for emphasis */
    color: #002233; /* Adjust color as needed */
    margin: 20px auto; /* Center the container */
}


.match-info {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-bottom: 10px;
}

.player1, .player2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.profile-pic {
    width: 56px; /* Smaller profile picture */
    height: 56px;
    border-radius: 10%;
    margin: 0 10px;
    display: block; /* Ensures the image takes up two rows */
}

.match-button .players img,
.match-button .players span {
    vertical-align: middle;
}

.match-button .scores {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px; /* Match the score font size with player names */
}

.match-button .scores span {
    margin: 0 5px; /* Adds some space between the scores */
}


.score-form {
    background-color: #f9f9f9;
    padding: 15px;
    border: 1px solid #ddd;
    margin-top: 10px;
    border-radius: 4px;
}

.score-form label {
    display: block;
    margin: 5px 0;
}

.log-actions {
    margin-top: 15px;
    color: grey;
    font-size: 14px;
}

.log-entry {
    margin-bottom: 5px;
}

.result-button.selected {
    background-color: #0f97e6;
    color: white;
    border: none;
}

.highlighted {
    background-color: #0f97e6;
    color: white;
}


.result-button {
    background-color: #8ea9c7;
    color: white;
    border: none;
    padding: 10px 20px;
    margin: 5px;
    cursor: pointer;
    border-radius: 4px;
}
.result-button.highlighted {
    background-color: #1a76ac; 
}

.result-button:hover {
    background-color: #053753;
}
.result-claimed-left-win {
    background-color: #1E90FF;
}

.result-claimed-right-win {
    background-color: #1E90FF;
}

.result-claimed-left-loss {
    background-color: red;
}

.result-claimed-right-loss {
    background-color: red;
}

.result-claimed-left-draw {
    background-color: grey;
}

.result-claimed-right-draw {
    background-color: grey;
}

.result-button.disabled {
    background-color: #ccc; /* Grey out button */
    color: #666; /* Muted text color */
    pointer-events: none; /* Disable click events */
    cursor: default; /* Change cursor to default */
}


.score-entry {
    display: grid;
    grid-template-columns: 1fr 50px 1fr; /* Two columns for players and a small one for 'vs' */
    gap: 20px;
    align-items: center;
    padding: 20px;
}

.player-1, .player-2 {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.vs-text {
    text-align: center;
    font-weight: bold;
    font-size: 1.2em;
}

.score-entry label {
    margin-bottom: 5px;
    font-weight: bold;
}

.score-entry input[type="number"] {
    width: 100px;
    padding: 8px;
    text-align: center;
}

.result-buttons {
    display: flex;
    flex-wrap: wrap; /* Allows the buttons to wrap if they don't fit in one row */
    justify-content: space-between;
    margin-top: 10px;
}

.result-button {
    flex: 1 1 100%; /* Each button will take full width by default */
    margin: 5px 0; /* Space between buttons */
    text-align: center;
}

@media (min-width: 600px) {
    .result-button {
        flex: 1 1 auto; /* On larger screens, buttons can go side by side */
        margin: 5px;
    }
}

.log-indicator {
    position: absolute;
    bottom: 10px;
    right: 10px;
    font-size: 20px;
    cursor: pointer;
}


.log-icon {
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 20px;
    cursor: pointer;
}
.log-details {
    background-color: #333;
    color: #fff;
    padding: 10px;
    margin-top: 0px;
    margin-bottom: 10px;
    border-radius: 4px;
    display: none;
}

.log-entry {
    margin-bottom: 5px;
    font-size: 14px;
    color: #fff;
}

.chat-container {
    margin-top: 20px;
}

.chat-message {
    display: flex;
    margin-bottom: 10px;
    padding: 10px;
    border-radius: 10px;
    background-color: #f0f0f0;
    position: relative;
}

.chat-reply {
    margin-left: 30px;
    border-left: 2px solid #ccc;
    padding-left: 10px;
}

.chat-profile-pic {
    width: 60px;
    height: 60px;
    border-radius: 10%;
    margin-right: 10px;
}

.message-content {
    background-color: #fff;
    padding: 10px;
    border-radius: 10px;
    max-width: 90%;
    word-wrap: break-word;
    position: relative;
}

.message-timestamp {
    font-size: 10px; /* Smaller timestamp */
    color: #999; /* Lighter color for timestamp */
    position: absolute;
    right: 10px; /* Align to the far right */
    top: 0; /* Align with the top of the message */
}


textarea {
    width: 100%;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #ccc;
    margin-bottom: 10px;
}

button[type="submit"] {
    background-color: #1E90FF;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.reply-button {
    background-color: #1E90FF;
    color: white;
    padding: 5px 10px;
    margin-top: 5px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 10px;
    position: absolute;
    right: 10px; /* Align to the far right */
    bottom: 0; /* Align with the bottom of the message */
}

.participants-section {
    width: 100%; /* Adjust width as needed */
}

.participants-container {
    max-height: 100px; /* Set the maximum height for the container */
    overflow-y: auto; /* Enable vertical scrolling */
    border: 1px solid #ccc; /* Optional: Add a border */
    padding: 8px;
    background-color: #f9f9f9; /* Light background for visibility */
    border-radius: 5px;
}

.participant {
    padding: 4px 0; /* Space between each participant */
    color: #053753; /* Example color */
}

.tournament-tree {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}


.bracket-container {
    display: flex;
    overflow-x: auto;
    gap: 20px;
    padding: 20px;
    background-color: #f3f8fc;
    align-items: flex-start;
}

.round {
    padding-top: 0; /* Important to remove gap above header */
    max-height: 600px;
    overflow-y: auto;
    flex: 0 0 auto;
    min-width: 600px;
    border: 1px solid #053753;
    background-color: #f0f8ff;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
}

.round h2 {
    cursor: pointer;
    text-align: center;
    font-size: 1.2em;
    margin: 0;
    background-color: #03619f;
    color: white;
    padding: 8px;
    border-radius: 5px;
}


.round h3 {
    position: sticky;
    top: 0;
    margin-top: 0;
    padding: 10px;
    background-color: #f0f8ff;
    border-bottom: 1px solid #053753;
    z-index: 2;
}


.match {
    background-color: #e1eaf5;
    border: 1px solid #053753;
    border-radius: 8px;
    padding: 10px;
    margin-bottom: 10px;
    text-align: center;
}

.player {
    color: white;
    font-weight: bold;
    margin: 5px 0;
}

.matchintree {
    display: flex;
    flex-direction: column;
    margin-top: 10px;
    position: relative;
    padding: 8px;
    background-color: #cce7ff;
    border-radius: 5px;
}

.playerintree {
    background-color: #87CEFA;
    padding: 8px;
    margin: 3px 0;
    border-radius: 4px;
    text-align: center;
    color: #053753;
    display: flex;
    align-items: center;
    justify-content: center;
}

.playerintree img.profile-pic {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    margin-right: 8px;
}


/* Responsive design for mobile */
@media (max-width: 600px) {
    .round {
        max-width: 100%;
    }
    .match {
        padding: 6px;
    }
    .playerintree {
        font-size: 0.9em;
    }
    .round h2 {
        font-size: 1.1em;
    }
}

/* Style for placeholder names */
.placeholder {
    color: #d3d3d3; /* Light grey color for placeholder text */
}


#processing-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.6);
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
}

#processing-content {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    text-align: center;
    display: inline-block;
}

.scrabble-tile {
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    width: 40px;
    height: 40px;
    background-color: #f1c40f;
    color: #333;
    border: 2px solid #333;
    margin: 5px; /* Added margin for better spacing */
    line-height: 40px;
    animation: bounce 0.5s infinite alternate;
}

@keyframes bounce {
    from { transform: translateY(0); }
    to { transform: translateY(-10px); }
}


.schedule-option {
    margin: 10px 0;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #f9f9f9;
}
.schedule-option label {
    cursor: pointer;
}



.tabs-container {
    margin-bottom: 20px;
}

.tab-buttons {
    display: flex;
    flex-wrap: wrap; /* Allows wrapping for large tournaments */
    gap: 8px;
    max-width: 100%; /* Ensures it doesn’t stretch too wide */
    margin: auto; /* Centers the tab-buttons container */
    margin-bottom: 2px;
}

.tab-button {
    flex: 1 1 calc(12.5% - 8px); /* Distributes evenly: 8 buttons per row */
    min-width: 100px; /* Prevents shrinking too much */
    padding: 8px 12px;
    font-size: 14px;
    background-color: #1E90FF;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s ease-in-out;
}

.tab-button:hover {
    background-color: #0f77c7;
}

/* Active tab button */
.tab-button.active {
    background-color: #053753;
}

/* Responsive: Adjust number of buttons per row */
@media (max-width: 1024px) {
    .tab-button {
        flex: 1 1 calc(12.5% - 8px); /* Distributes evenly: 8 buttons per row */
/*        flex: 1 1 calc(16.66% - 8px); /* 6 buttons per row */
    }
}

@media (max-width: 768px) {
    .tab-button {
        flex: 1 1 calc(12.5% - 8px); /* Distributes evenly: 8 buttons per row */
/*        flex: 1 1 calc(25% - 8px); /* 4 buttons per row */
    }
}

@media (max-width: 480px) {
    .tab-button {
        flex: 1 1 calc(12.5% - 8px); /* Distributes evenly: 8 buttons per row */
/*        flex: 1 1 calc(50% - 8px); /* 2 buttons per row */
    }
}

.tab-content-container {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 15px;
    background-color: #fff;
}

.tab-content {
    display: block;
}

.tab-content.active {
    display: block;
}

.poule-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.poule-table th, .poule-table td {
    border: 1px solid #ccc;
    padding: 8px;
    text-align: center;
}

.poule-table th {
    background-color: #f9f9f9;
    font-weight: bold;
}


/* Hide all poule-sections by default */
.multipoule-section {
    display: none; /* Initially hide all poule-sections */
}

/* Show the active poule-section */
.multipoule-section.active {
    display: block;
}

/* Always-visible buttons should always be shown */
.match-button.always-visible {
    display: block !important;
}

.match-disabled {
    pointer-events: none;
    opacity: 0.6;
}

.match-completed-notice {
    background-color: #e6f0ff;  /* Soft blue background */
    color: #003366;             /* Dark blue text */
    border: 1px solid #b3d1ff;
    padding: 10px 16px;
    border-radius: 8px;
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
}

.match-completed-notice button {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 6px 10px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
}

.match-completed-notice button:hover {
    background-color: #0056b3;
}

/* Darker zebra style for qualified rows */
.qualified-row:nth-child(even) {
    background-color: #dceeff !important; /* darker blue-grey for even qualified rows */
}

.qualified-row:nth-child(odd) {
    background-color: #eaf6ff !important; /* slightly lighter for odd qualified rows */
}


.lock-icon {
    color: #494b4d; /* Bootstrap blue — or pick your own */
    margin-left: 2px; /* slight space from the number */
    font-size: 0.9em;
}



.main-content-container {
    flex-grow: 1; /* Makes the container take up remaining space */
    width: 100%;
    max-width: 960px;
    min-width: 600px; /* Adjust as needed */
    min-height: 48px; /* limit total height */
    margin: 30px auto;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.left-content {
    flex: 2;
    min-width: 350px;
}

.right-schedules {
    flex: 1;
    min-width: 550px;
    max-height: 460px; /* limit total height */
    background-color: #f9f9f9;
    border-left: 2px solid #ccc;
    padding: 15px;
    border-radius: 8px;
    overflow-y: auto;   /* enables vertical scroll */
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.schedule-block {
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 6px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
}


.tournament-schedule h3 {
    margin-top: 0;
}
