/* Product Detail Page Styling */

/* General Styles */
body {
    background-color: #ffffff; /* White Background */
    color: #111; /* Darker text for readability */
}

/* Product Image */
.image-container img {
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); /* Stronger shadow for visibility */
    transition: transform 0.3s ease-in-out;
    max-width: 450px; /* Slightly smaller */
    width: 100%;
    height: auto;
    display: block;
    margin: auto;
    border: 3px solid #222; /* Bold border for contrast */
}

.image-container img:hover {
    transform: scale(1.05);
    border-color: #ff0000; /* Change border to red on hover */
}

/* Product Details */
.product-details-container p {
    font-size: 1.2rem;
    line-height: 1.6;
    color: #000000; /* Full black text */
}

.product-details-container .lead {
    font-size: 2rem;
    font-weight: bold;
    color: #ff0000; /* Strong red for price */
}

/* Buttons & Quantity Input */
.btn-black {
    background-color: #000000; /* True black */
    color: #ffffff; /* True white text */
    border: 3px solid #ffcc00; /* Gold border for visibility */
    border-radius: 5px;
    transition: background 0.3s, border 0.3s;
    font-weight: bold;
}

.btn-black:hover {
    background-color: #ffcc00; /* Gold hover */
    color: #000000; /* Black text */
    border-color: #000000; /* Black border */
}

/* Quantity Input Buttons */
.input-group .btn {
    background-color: #ff0000; /* Strong red */
    color: white;
    border: 3px solid black; /* High contrast border */
    font-size: 1.2rem;
    transition: background 0.3s, border 0.3s;
}

.input-group .btn:hover {
    background-color: #111; /* Black hover */
    color: #ffffff;
    border-color: #ffcc00; /* Gold border */
}

/* Reviews Section */
.reviews-section {
    margin-top: 40px;
    padding: 20px;
    background: #111; /* Darker background for contrast */
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    color: #ffffff; /* White text */
}

.reviews-section h3 {
    font-size: 1.6rem;
    margin-bottom: 15px;
    color: #ffcc00; /* Gold header for contrast */
}

/* Review Form */
.review-form textarea {
    width: 100%;
    border-radius: 5px;
    padding: 10px;
    border: 3px solid #ffcc00; /* Gold border */
    background-color: #222; /* Dark background */
    color: #ffffff; /* White text */
}

.review-form button {
    background-color: #373636; /* Strong red */
    border: 3px solid black;
    color: white;
    padding: 12px 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s, border 0.3s;
    font-weight: bold;
}

.review-form button:hover {
    background-color: #111; /* Black hover */
    color: white;
    border-color: #ffcc00; /* Gold border */
}

/* Review List */
.review-list {
    margin-top: 20px;
}

.review-item {
    padding: 15px;
    border-bottom: 3px solid #ffcc00; /* Gold separator */
}

.review-item:last-child {
    border-bottom: none;
}

.review-item strong {
    display: block;
    font-size: 1.2rem;
    margin-bottom: 5px;
    color: #ffcc00; /* Gold for names */
}

.review-item span {
    font-size: 1rem;
    color: #ff0000; /* Strong red for ratings */
}

/* Star Ratings */
.star-rating {
    display: flex;
    flex-direction: row-reverse;
    justify-content: left;
}

.star-rating input {
    display: none;
}

.star-rating label {
    font-size: 2rem;
    color: #ccc; /* Default Gray */
    cursor: pointer;
    transition: color 0.3s;
}

.star-rating input:checked ~ label,
.star-rating label:hover,
.star-rating label:hover ~ label {
    color: #ffcc00; /* Bright Gold for selection */
}

/* Accessibility: Ensuring text & links are highly visible */
a {
    color: green; /* Bright Red */
    font-weight: bold;
}

a:hover {
    color: #ffcc00; /* Gold hover */
    text-decoration: underline;
}

/* Responsive Tweaks */
@media (max-width: 768px) {
    .image-container img {
        max-width: 350px; /* Reduce size on small screens */
    }

    .product-details-container p {
        font-size: 1rem;
    }

    .product-details-container .lead {
        font-size: 1.5rem;
    }

    .btn-black {
        font-size: 1rem;
        padding: 10px;
    }
}
