/* ===== Global ===== */
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif; scroll-behavior:smooth; }

/* ===== Navbar ===== */
.navbar { padding:12px 0; transition:all 0.3s ease; }
.navbar.scrolled { background-color:rgba(13,110,253,0.95)!important; box-shadow:0 2px 15px rgba(0,0,0,0.3); }
.navbar-brand { font-size:1.5rem; }
.dropdown-menu { border:none; box-shadow:0 5px 25px rgba(0,0,0,0.15); }

/* ===== Hero ===== */
.hero-section { background:linear-gradient(135deg,#0d6efd 0%,#0b5ed7 40%,#0a58ca 100%); padding:160px 0 100px; min-height:500px; }
.hero-image { animation:float 3s ease-in-out infinite; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-20px)} }

/* ===== Feature List ===== */
.feature-list { list-style:none; padding:0; }
.feature-list li { padding:8px 0; font-size:1rem; }

/* ===== Cards ===== */
.card { transition:transform 0.3s ease,box-shadow 0.3s ease; border-radius:12px; }
.card:hover { transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,0.12)!important; }

/* ===== Merch ===== */
.merch-card .merch-img { border-radius:12px 12px 0 0; overflow:hidden; }
.merch-card:hover { transform:translateY(-8px); }

/* ===== Category Cards ===== */
.category-card { background:#fff; transition:all 0.3s ease; border:2px solid #eee; }
.category-card:hover { background:#0d6efd; border-color:#0d6efd; transform:translateY(-5px); }
.category-card:hover h6,.category-card:hover small { color:#fff!important; }
.category-card:hover i { color:#fff!important; }

/* ===== Trust ===== */
.trust-item { padding:20px; transition:transform 0.3s ease; }
.trust-item:hover { transform:translateY(-5px); }

/* ===== Review ===== */
.review-preview { border-left:4px solid #0d6efd; }
.stars i { font-size:0.8rem; }
.review-item { border-left:3px solid transparent; transition:all 0.3s; }
.review-item:hover { border-left-color:#0d6efd; }

/* ===== News ===== */
.news-img { border-radius:12px 12px 0 0; }

/* ===== Social Links ===== */
.social-links a { display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.1);transition:all 0.3s;font-size:1rem; }
.social-links a:hover { background:#0d6efd; transform:translateY(-3px); }

/* ===== Scroll to Top ===== */
#scrollTopBtn { transition:opacity 0.3s; }
#scrollTopBtn:hover { opacity:0.8; transform:scale(1.1); }

/* ===== Star Rating (Post Complaint) ===== */
.star-rating { font-size:1.5rem; cursor:pointer; }
.star-rating i { color:#ddd; transition:color 0.2s; }
.star-rating i.text-warning { color:#ffc107; }
.star-rating:hover i { color:#ffc107; }
.star-rating i:hover ~ i { color:#ddd!important; }

/* ===== Upload Zone ===== */
.upload-zone { border:2px dashed #ccc; transition:all 0.3s; cursor:pointer; }
.upload-zone:hover,.upload-zone.drag-over { border-color:#0d6efd; background:#f8f9ff; }

/* ===== Call Pulse ===== */
@keyframes pulse-ring {
    0% { box-shadow:0 0 0 0 rgba(220,53,69,0.4); }
    70% { box-shadow:0 0 0 20px rgba(220,53,69,0); }
    100% { box-shadow:0 0 0 0 rgba(220,53,69,0); }
}
.call-pulse { animation:pulse-ring 1.5s infinite; }

/* ===== Spam Gauge ===== */
.spam-gauge { border:10px solid; transition:all 0.3s; }

/* ===== Loading ===== */
@keyframes spin { to{transform:rotate(360deg)} }
.reviews-loading .spinner { width:40px;height:40px;border:4px solid #eee;border-top-color:#0d6efd;border-radius:50%;animation:spin 0.8s linear infinite; }

/* ===== Responsive ===== */
@media(max-width:768px){
    .hero-section { padding:120px 0 60px; text-align:center; }
    .hero-section .display-4 { font-size:2rem; }
    .hero-image { margin-top:30px; }
    .hero-image i { font-size:4rem!important; }
    .feature-icon { width:60px!important; height:60px!important; }
    footer { text-align:center; }
    .social-links { justify-content:center; display:flex; }
    .sidebar { position:fixed; z-index:1050; }
}

/* ===== Animations ===== */
@keyframes fadeInUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
.fade-in-up { animation:fadeInUp 0.6s ease forwards; }

/* ===== Company Card ===== */
.company-card { cursor:pointer; }
.company-card:hover { border-left:3px solid #0d6efd; }

/* ===== Admin Rating Bars ===== */
.rating-bar { display:flex;align-items:center;gap:8px;margin-bottom:8px; }
.rating-bar-stars { width:80px;font-size:0.85rem;color:#ffc107; }
.rating-bar-track { flex:1;background:#eee;border-radius:4px;height:20px;overflow:hidden; }
.rating-bar-fill { height:100%;background:#ffc107;border-radius:4px;transition:width 0.5s; }
.rating-bar-count { width:50px;font-size:0.8rem;color:#666; }