/**
 * FDI Core Plugin Styles
 * Overrides and additions to theme styles
 */

/* Star Ratings */
.fdi-star-rating { display: inline-flex; gap: 2px; }
.fdi-star-rating .star { width: 16px; height: 16px; display: inline-block; background-size: contain; }
.fdi-star-rating .star-full { background: gold; clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); }
.fdi-star-rating .star-half { background: linear-gradient(to right, gold 50%, #ccc 50%); clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); }
.fdi-star-rating .star-empty { background: #ccc; clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); }

/* Gallery Grid */
.design-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 15px; }
.gallery-item { position: relative; overflow: hidden; border-radius: 8px; }
.gallery-item img { width: 100%; height: 250px; object-fit: cover; transition: transform 0.3s; }
.gallery-item:hover img { transform: scale(1.05); }
.gallery-item .room-tag { position: absolute; top: 10px; left: 10px; background: rgba(0,0,0,0.7); color: #fff; padding: 4px 10px; border-radius: 4px; font-size: 12px; }

/* Contractor Cards */
.contractor-listing { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.contractor-card { background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,0.08); }
.contractor-card .contractor-pic img { width: 100%; height: 200px; object-fit: cover; }
.contractor-card .contractor-info { padding: 15px; }
.contractor-card .contractor-info h3 { margin: 0 0 5px; font-size: 18px; }
.contractor-card .contractor-location { color: #666; font-size: 14px; }
.contractor-card .btn-outline { display: inline-block; margin-top: 10px; padding: 8px 20px; border: 2px solid #b72b2b; color: #b72b2b; border-radius: 5px; text-decoration: none; }

/* How We Work */
.how-we-work-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; }
.how-we-work-item { text-align: center; padding: 20px; }
.how-we-work-item img { width: 80px; height: 80px; margin-bottom: 15px; }

/* Testimonials */
.testimonial-slider { max-width: 800px; margin: 0 auto; }
.testimonial-item { padding: 20px; text-align: center; }
.testimonial-item blockquote { font-size: 16px; font-style: italic; color: #555; }
.testimonial-item cite { display: block; margin-top: 10px; font-weight: bold; color: #333; }

/* Article Grid */
.article-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.article-card { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 1px 5px rgba(0,0,0,0.05); }
.article-card img { width: 100%; height: 200px; object-fit: cover; }
.article-card h3 { padding: 10px 15px 0; margin: 0; font-size: 16px; }
.article-card p { padding: 5px 15px 15px; color: #666; font-size: 14px; }

/* Related Books */
.related-books { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 15px; }
.book-card { border: 1px solid #eee; border-radius: 8px; padding: 10px; text-align: center; }
.book-card img { width: 100%; height: 200px; object-fit: cover; }
.book-card h4 { margin: 8px 0 4px; font-size: 14px; }
.book-card .price { color: #b72b2b; font-weight: bold; }

/* OTP Login */
.fdi-otp-form { padding: 15px; }
.fdi-otp-form .form-group { margin-bottom: 15px; }
.fdi-otp-form .btn-block { width: 100%; }

/* Contractor Search Form */
.fdi-contractor-search { display: flex; gap: 10px; max-width: 500px; margin: 20px auto; }
.fdi-contractor-search input { flex: 1; padding: 10px 15px; border: 2px solid #ddd; border-radius: 5px; }
.fdi-contractor-search button { padding: 10px 25px; background: #b72b2b; color: #fff; border: none; border-radius: 5px; cursor: pointer; }

/* Dashboard Sidebar */
.fdi-dashboard-sidebar { background: #f5f5f5; padding: 20px; border-radius: 8px; }
.fdi-dashboard-sidebar ul { list-style: none; padding: 0; margin: 0; }
.fdi-dashboard-sidebar ul li { margin-bottom: 8px; }
.fdi-dashboard-sidebar ul li a { color: #333; text-decoration: none; padding: 8px 10px; display: block; border-radius: 4px; }
.fdi-dashboard-sidebar ul li a:hover,
.fdi-dashboard-sidebar ul li.active a { background: #b72b2b; color: #fff; }

/* Banner Slider */
.home-banner-slider { position: relative; }
.home-banner-slider .banner-slide { position: relative; }
.home-banner-slider .banner-slide img { width: 100%; max-height: 500px; object-fit: cover; }
.home-banner-slider .banner-content { position: absolute; top: 50%; left: 10%; transform: translateY(-50%); color: #fff; text-shadow: 0 2px 4px rgba(0,0,0,0.5); }

/* Responsive */
@media (max-width: 768px) {
    .design-gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .contractor-listing { grid-template-columns: 1fr; }
    .article-grid { grid-template-columns: 1fr; }
}
