/* ======= General Vote Section Styling ======= */
.vote-section {
    margin-bottom: 30px;
    padding: 20px;
    background-color: #f8f8f8;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* ======= Navigation Bar ======= */
.vote-nav {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
}

.vote-nav a,
.vote-nav select {
    padding: 8px 12px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 5px;
    text-decoration: none;
    color: #333;
    background-color: white;
    transition: 0.3s;
}

.vote-nav a:hover {
    background-color: #d9534f;
    color: white;
}

/* ======= Grid Layout for Top Backgrounds ======= */
.bg-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    max-width: 1200px;
    margin: 0 auto;
}

/* ======= Individual Background Item ======= */
.bg-item {
    text-align: center;
    background: #555; /* Dark grey background */
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    min-width: 250px;
    max-width: 350px;
    flex: 1 1 30%;
    box-sizing: border-box;
    margin: 0 auto;
}

/* Background Item Hover Effect */
.bg-item:hover {
    transform: scale(1.05);
}

/* Background Item Image */
.bg-item img {
    width: 200px;
    height: auto;
    border-radius: 5px;
}

/* Background Item Title */
.bg-item h5 {
    font-size: 16px;
    margin-bottom: 10px;
    color: #ffcc00;
}

/* Background Item Text */
.bg-item p {
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 10px;
}

/* Background Item Links */
.bg-item a {
    text-decoration: none;
    color: #ffcc00;
    font-weight: bold;
    transition: 0.3s;
}

.bg-item a:hover {
    text-decoration: underline;
    color: #ffd633;
}
/* Description below title in top backgrounds */
.bg-description {
    text-align: center;
    font-size: 14px;
    color: #ddd;
    margin-bottom: 15px;
}
/* ======= Responsive Adjustments ======= */
@media (max-width: 768px) {
     .bg-item {
        flex: 1 1 90%;
        max-width: 90%;
    }
}
/* ======= Top Backgrounds Container ======= */
.top-backgrounds {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background: #222; /* Darker background to match styling */
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Title inside Top Backgrounds */
.top-backgrounds h4 {
    font-size: 20px;
    color: #ffcc00; /* Yellow title */
    margin-bottom: 15px;
}

/* Centered link below backgrounds */
.top-backgrounds p {
    margin-top: 10px;
}

.top-backgrounds a {
    color: #ffcc00; /* Yellow link color */
    font-weight: bold;
    text-decoration: none;
    transition: 0.3s;
}

.top-backgrounds a:hover {
    text-decoration: underline;
    color: #ffd633;
}
/* Best Patterns Section */
.best-vision {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 20px;
}
/* ======= Best Items Section ======= */
.vo-best-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    max-width: 1200px;
    margin: 0 auto;
}

/* ======= Best Item Styling ======= */
.best-item {
    flex: 1 1 30%; /* Side by side layout */
    max-width: 350px; /* Prevents items from being too wide */
    background: #555; /* Dark grey background */
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
    min-width: 250px;
    box-sizing: border-box;
    margin: 0 auto; /* Center items */
}

/* Best Item Title */
.best-item h5 {
    font-size: 16px;
    margin-bottom: 10px;
    color: #ffcc00; /* Yellow color */
}

/* Best Item Description */
.best-description {
    font-size: 14px;
    color: #ffffff; /* Bright white text for contrast */
    margin-bottom: 10px;
}

/* Best Item Image */
.best-item img {
    width: 100px;
    height: auto;
    border-radius: 5px;
}

/* Best Item Links */
.best-item a {
    text-decoration: none;
    color: #ffcc00; /* Matching yellow color */
    font-weight: bold;
    transition: 0.3s;
}

.best-item a:hover {
    text-decoration: underline;
    color: #ffd633; /* Slightly lighter yellow for hover */
}

/* ======= Responsive Adjustments ======= */
@media (max-width: 768px) {
    .best-item {
        flex: 1 1 90%;
        max-width: 90%;
    }
}




/* Responsive Design */
@media (max-width: 768px) {
    .bg-grid {
        flex-direction: column;
    }
    
    .best-vision {
        flex-direction: column;
        align-items: center;
    }

    .best-item img {
        width: 80px;
    }
}
/* Vote Introduction Section */
.vote-intro {
    text-align: center;
    padding: 10px;
    background-color: #f8f8f8;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 10px;
    width: 100%;
}

.vote-intro h4 {
    font-size: 20px;
    color: #333;
    margin-bottom: 10px;
}

.vote-intro p {
    font-size: 14px;
    color: #555;
    max-width: 600px;
    margin: 0 auto;
}
.vo-intro a {
    text-decoration: none;
    color: #d9534f;
    font-weight: bold;
    transition: 0.3s;
}

.vo-intro a:hover {
    text-decoration: underline;
    color: #b52b27;
}
/* Top 5 Voted Section */
.top-voted {
    text-align: center;
    padding: 10px;
    background: black;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(221, 220, 220, 0.1);
    margin-bottom: 20px;
}

.top-voted h4 {
    font-size: 18px;
    color: #d3d3d3; /* Light grey */
    margin-bottom: 10px;
}

.top-voted p {
    font-size: 14px;
    margin: 5px 0;
}

.top-voted a {
    text-decoration: none;
    color: #d9534f;
    font-weight: bold;
    transition: 0.3s;
}

.top-voted a:hover {
    text-decoration: underline;
    color: #b52b27;
}

/* View Full Results Link */
.top-voted a:last-of-type {
    display: block;
    margin-top: 10px;
    font-size: 14px;
    text-decoration: none;
    font-weight: bold;
}

.top-voted a:last-of-type:hover {
    text-decoration: underline;
}

/* Navigation Bar for Vote Pages */
/* General Navigation Styles */
.vo-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    background-color: #222;
    padding: 10px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Navigation Links */
.vo-nav a {
    color: white;
    text-decoration: none;
    font-size: 16px;
    padding: 8px 12px;
    border-radius: 5px;
    transition: 0.3s;
}

.vo-nav a:hover {
    background-color: #d9534f;
    color: white;
}

/* Dropdown Select for Background Selection */
.vo-nav-dropdown select {
    padding: 8px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: white;
    cursor: pointer;
}

/* Responsive Navigation - Mobile Adjustments */
@media (max-width: 768px) {
    .vo-nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        text-align: center;
    }

    .vo-nav a {
        font-size: 14px; /* Slightly smaller text */
        padding: 6px 10px;
    }

    .vo-nav-links {
        display: flex;
        justify-content: center;
        gap: 10px;
        flex-wrap: wrap;
    }

    .vo-nav-dropdown {
        width: 100%;
        text-align: center;
        margin-top: 5px;
    }

    .vo-nav-dropdown select {
        width: 100%;
        font-size: 14px;
    }
}


/* ======= Best Items Section Header ======= */
.vo-best-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

.vo-best-header {
    width: 100%;
    text-align: center;
    background: #222;
    padding: 15px;
    border-radius: 8px;
    color: white;
    margin-bottom: 15px;
    box-sizing: border-box;
}

.vo-best-header h4 {
    font-size: 20px;
    margin-bottom: 5px;
}

.vo-best-header p {
    font-size: 14px;
    color: white;
    max-width: 800px;
    margin: 0 auto;
}

.best-results-link {
    color: #ffcc00;
    font-weight: bold;
    text-decoration: none;
}

.best-results-link:hover {
    text-decoration: underline;
}


/* General container */
.vo-overview-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

/* Vote intro should take up more space than the other two */
.vo-intro, .vo-ad, .top-voted {
    margin-bottom: 30px;
}
.vo-ad {
    text-align: center;
}
/* Container to hold top-voted and vo-ad */

.vote-overview-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    max-width: 100%;
    margin: 0 auto;
}

.vote-overview-item {
    flex: 0 0 auto;
    width: auto;
    text-align: center;
    background: #666;
    border-radius: 8px;
    padding: 8px;
    box-sizing: border-box;
}

.vote-overview-item img {
    max-width: 150px;  /* Prevent upscaling */
    width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 0 auto;
    display: block;
}

@media (min-width: 768px) {
    .vote-overview-list {
        justify-content: center;  /* Instead of space-around */
        gap: 16px;
    }
}
/* Top Voted & VO Ad take equal space inside vo-row 
.top-voted, .vo-ad {
    flex: 1;
    min-width: 280px;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}*/

/* =================== Responsive Adjustments =================== */

/* Medium screens (768px - 1199px): Vote intro on one row, Top Voted & Ad below */
/* Medium screens (768px - 1199px): Vote intro on one row, Top Voted & Ad below */
@media (max-width: 1199px) and (min-width: 768px) {
    .vo-row {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }

    .top-voted, .vo-ad {
        width: 50%;
        max-width: 90%;
    }
}


/* Small screens (below 768px): Stack everything and reduce padding */
@media (max-width: 767px) {
    .vo-overview-container {
        padding: 10px;
        display: block;
    }

    .vo-row {
        display: block;
    }

    .vo-intro, .top-voted, .vo-ad {
        width: 100%;
        max-width: 90%;
        padding: 15px;
        margin: 0 auto;
    }
}
/* Vote Info Page Styling */
.vote-info-container {
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
    background: #222;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: #ddd;
}

.vote-info-container h2, .vote-info-container h3 {
    color: #ffcc00; /* Yellow headers */
    text-align: center;
    margin-bottom: 15px;
}

.vote-info-container p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 15px;
}

.vote-info-container ul {
    list-style: none;
    padding-left: 0;
    text-align: center;
}

.vote-info-container li {
    background: #444;
    display: inline-block;
    padding: 8px 15px;
    border-radius: 5px;
    margin: 5px;
    color: #fff;
}
.vo-ad img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.top-voted {
    margin-top: 20px;
}

@media (max-width: 767px) {
    .vote-overview-list {
        overflow-x: auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 12px;
    }

    .vote-overview-item {
        flex: 0 0 auto;
    }
}

/* Ensure overview text inside the vote item is styled correctly */
.vote-overview-text {
    color: #ffcc00;
    font-weight: bold;
}

/* If you ever have links inside .vote-overview-text (wrapped or direct) */
.vote-overview-item a {
    color: inherit;
    text-decoration: none;
}

.vote-overview-item a:hover {
    text-decoration: underline;
}

/* The small text inside the overview */
.vote-overview-text small {
    color: #ddd;
    font-weight: normal;
    display: block;
    margin-top: 5px;
}
.vote-overview-text a {
    color: #ffcc00;
    text-decoration: none;
}
.vote-overview-text a:hover {
    text-decoration: underline;
    color: #ffd633; /* Slight hover variation if you want */
}