/* ========================================
   CasinoWhistle - Extended Styles
   Loaded async — non-critical CSS only
   Critical CSS is inline in header.php
   ======================================== */

/* User avatar */
.user-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:0.85rem;color:#fff}
.user-avatar-sm{width:28px;height:28px;font-size:0.75rem}
.user-avatar-lg{width:48px;height:48px;font-size:1.1rem}

/* Search results dropdown */
.search-results{position:absolute;top:100%;left:0;right:0;background:rgba(36,40,56,0.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-light);border-radius:var(--radius);margin-top:4px;display:none;z-index:200;max-height:380px;overflow-y:auto;box-shadow:0 12px 40px rgba(0,0,0,0.5)}
.search-results.active{display:block}
.search-results a{display:flex;align-items:center;gap:10px;padding:10px 14px;color:var(--text-primary);font-size:0.88rem;border-bottom:1px solid rgba(255,255,255,0.04);text-decoration:none;transition:background 0.15s}
.search-results a:last-child{border-bottom:none}
.search-results a:hover{background:rgba(245,158,11,0.08);color:var(--accent)}
.search-cat{font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding:8px 14px 4px;display:flex;align-items:center;gap:6px}
.search-cat i{font-size:0.65rem}
.search-logo{width:28px;height:28px;border-radius:6px;object-fit:cover;flex-shrink:0;border:1px solid var(--border)}
.search-logo-placeholder{width:28px;height:28px;border-radius:6px;background:var(--bg-input);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0.7rem;color:var(--text-muted)}
.search-item-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-empty{padding:20px 14px;text-align:center;color:var(--text-muted);font-size:0.85rem;display:flex;align-items:center;justify-content:center;gap:8px}
.search-empty i{font-size:1rem}

/* Nav Dropdown menu items */
.nav-dropdown-toggle:hover{color:var(--text-primary);background:var(--bg-card)}
.nav-dropdown-menu a{display:block;padding:8px 16px;font-size:0.85rem;color:var(--text-secondary);white-space:nowrap}
.nav-dropdown-menu a:hover{background:var(--bg-card-hover);color:var(--accent)}

/* Mobile menu */
.mobile-toggle:hover,.mobile-toggle:active{background:var(--bg-card)}
.mobile-toggle[aria-expanded="true"] .fa-bars::before{content:"\f00d"}

/* Breadcrumbs */
.bc-sep{margin:0 6px;font-size:0.65rem}
.bc-current{color:var(--text-secondary)}

/* ========== BUTTONS ========== */
.btn-primary{background:#2557a7;color:#fff;font-weight:600}
.btn-primary:hover{background:#1e4a8f;color:#fff}
.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-primary)}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.btn-block{display:flex;width:100%;justify-content:center}
.btn-danger{background:var(--red);color:#fff}
.btn-danger:hover{background:#dc2626;color:#fff}
.btn-accent{background:var(--accent);color:#111;font-weight:700}
.btn-accent:hover{background:#d97706;color:#111}

/* ========== STAR RATING ========== */
.star-rating{display:inline-flex;gap:2px;color:var(--accent)}
.star-rating .fa-regular{color:var(--text-muted)}
.stars-sm{font-size:0.8rem}
.stars-md{font-size:1rem}
.stars-lg{font-size:1.3rem}

/* Star input (for review form) */
.star-input{display:flex;gap:4px;font-size:1.6rem;cursor:pointer;direction:rtl}
.star-input i{color:var(--text-muted);transition:color var(--transition)}
.star-input i:hover,.star-input i:hover~i,.star-input i.active,.star-input i.active~i{color:var(--accent)}

/* ========== RATING DISTRIBUTION ========== */
.rating-dist{display:flex;flex-direction:column;gap:6px}
.rating-dist-row{display:flex;align-items:center;gap:8px;font-size:0.85rem}
.rating-dist-label{width:24px;text-align:right;color:var(--text-secondary);font-weight:600}
.rating-dist-star{color:var(--accent);font-size:0.75rem}
.rating-dist-bar{flex:1;height:10px;background:var(--bg-input);border-radius:5px;overflow:hidden}
.rating-dist-fill{height:100%;background:var(--accent);border-radius:5px;transition:width 0.5s ease}
.rating-dist-count{width:32px;text-align:right;color:var(--text-muted);font-size:0.8rem}

/* ========== SAFETY SCORE ========== */
.safety-score{display:flex;align-items:center;gap:10px}
.safety-score-value{font-size:2rem;font-weight:800;line-height:1}
.safety-score-label{font-size:0.8rem;color:var(--text-secondary)}
.score-green{color:var(--green)}
.score-yellow{color:var(--accent)}
.score-red{color:var(--red)}

/* ========== BRAND CARD (All Casinos Grid) ========== */
.brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.brand-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all var(--transition);text-decoration:none;color:var(--text-primary)}
.brand-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-lg);color:var(--text-primary)}
.brand-card-logo{width:80px;height:80px;border-radius:var(--radius);margin-bottom:12px;object-fit:cover}
.brand-card-name{font-weight:700;font-size:1rem;margin-bottom:6px}
.brand-card-rating{margin-bottom:8px}
.brand-card-reviews{font-size:0.8rem;color:var(--text-secondary)}
.brand-card-score{font-size:0.8rem;font-weight:600;margin-top:8px;padding:3px 10px;border-radius:20px}

/* ========== BRAND PAGE ========== */
.brand-header{padding:24px 0;border-bottom:1px solid var(--border)}
.brand-header-inner{display:flex;align-items:center;gap:20px}
.brand-logo{width:80px;height:80px;border-radius:var(--radius);object-fit:cover;border:2px solid var(--border)}
.brand-info{flex:1;min-width:0}
.brand-info h1{font-size:1.6rem;font-weight:800;margin-bottom:0}
.brand-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.brand-meta-item{font-size:0.85rem;color:var(--text-secondary);display:flex;align-items:center;gap:4px}

/* WhistleRank Inline Card */
.wr-card{display:inline-block;background:rgba(255,255,255,0.03);border:1px solid var(--border);border-radius:8px;padding:6px 12px;margin-top:8px}
.wr-card-row{display:flex;align-items:center;gap:6px}
.wr-card-title{font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#bac0d0}
.wr-card-bar{position:relative;width:70px;height:18px;background:#1a1f2e;border-radius:9px;overflow:hidden}
.wr-card-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:9px;transition:width 0.6s ease}
.wr-card-bar-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,0.7),0 0 6px rgba(0,0,0,0.3);z-index:1}
.wr-card-sub{font-size:0.72rem;color:#bac0d0;margin-top:3px;display:flex;align-items:center;gap:3px}
.wr-card-sub i{font-size:0.55rem}
.content-layout{display:grid;grid-template-columns:1fr 320px;gap:24px;padding:24px 0}

/* Info box */
.info-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}
.info-box h3{font-size:1rem;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);font-size:0.85rem}
.info-row:last-child{border-bottom:none}
.info-label{color:var(--text-secondary)}
.info-value{font-weight:600;text-align:right}

/* Payment icons */
.payment-icons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.payment-icon{width:36px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-input);border-radius:4px;font-size:0.85rem;color:var(--text-secondary)}

/* ========== REVIEW CARD ========== */
.review-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px;transition:border-color var(--transition)}
.review-card:hover{border-color:var(--border-light)}
.review-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}
.review-author-info{flex:1}
.review-author-name{font-weight:600;font-size:0.9rem;display:flex;align-items:center;gap:6px}
.review-author-name a{color:var(--text-primary)}
.review-author-name a:hover{color:var(--accent)}
.review-date{font-size:0.8rem;color:var(--text-muted)}
.review-badge{font-size:0.7rem;padding:2px 8px;border-radius:20px;font-weight:600}
.badge-verified{background:rgba(34,197,94,0.15);color:var(--green)}
.badge-top{background:rgba(245,158,11,0.15);color:var(--accent)}
.badge-member{background:rgba(59,130,246,0.15);color:var(--blue)}
.badge-casino-rep{background:rgba(168,85,247,0.15);color:#a855f7}
.review-title{font-size:1.1rem;font-weight:700;margin-bottom:8px}
.review-title a{color:var(--text-primary)}
.review-title a:hover{color:var(--accent)}
.review-content{font-size:0.9rem;color:var(--text-secondary);line-height:1.7;margin-bottom:12px}
.review-category{font-size:0.75rem;padding:3px 10px;border-radius:20px;background:var(--bg-input);color:var(--text-secondary);display:inline-block;margin-bottom:12px;text-decoration:none}

/* Pros & Cons */
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.pros-list,.cons-list{font-size:0.85rem}
.pros-list h4{color:var(--green);font-size:0.8rem;margin-bottom:6px}
.cons-list h4{color:var(--red);font-size:0.8rem;margin-bottom:6px}
.pros-list li,.cons-list li{list-style:none;padding:3px 0;padding-left:18px;position:relative;color:var(--text-secondary)}
.pros-list li::before{content:'+';position:absolute;left:0;color:var(--green);font-weight:700}
.cons-list li::before{content:'-';position:absolute;left:2px;color:var(--red);font-weight:700}

/* Review screenshot */
.review-screenshot{margin:12px 0;border-radius:var(--radius-sm);overflow:hidden;max-width:400px}
.review-screenshot img{width:100%;border-radius:var(--radius-sm)}

/* Review footer */
.review-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border)}
.helpful-section{display:flex;align-items:center;gap:12px;font-size:0.85rem;color:var(--text-secondary)}
.helpful-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:0.8rem;display:flex;align-items:center;gap:4px;transition:all var(--transition)}
.helpful-btn:hover{border-color:var(--accent);color:var(--accent)}
.helpful-btn.voted{border-color:var(--accent);color:var(--accent)}
.review-views{font-size:0.8rem;color:var(--text-muted)}

/* Casino response */
.casino-response{background:rgba(168,85,247,0.05);border:1px solid rgba(168,85,247,0.2);border-radius:var(--radius-sm);padding:14px;margin-top:12px}
.casino-response-header{font-size:0.8rem;font-weight:600;color:#a855f7;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.casino-response-body{font-size:0.85rem;color:var(--text-secondary);line-height:1.6}

/* ========== REVIEW DETAIL ========== */
.review-detail-content{font-size:1rem;line-height:1.8;color:var(--text-primary)}
.related-reviews h3{font-size:1.1rem;font-weight:700;margin-bottom:16px}

/* ========== TRENDING ========== */
.trending-info{min-width:0}
.trending-info h4{font-size:0.9rem;font-weight:600;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trending-info p{font-size:0.8rem;color:var(--text-secondary)}

/* ========== FORMS ========== */
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:0.85rem;font-weight:600;margin-bottom:6px;color:var(--text-secondary)}
.form-control{width:100%;background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);padding:10px 14px;border-radius:var(--radius-sm);font-size:0.9rem;outline:none;transition:border var(--transition)}
.form-control:focus{border-color:var(--accent)}
.form-control::placeholder{color:var(--text-muted)}
textarea.form-control{resize:vertical;min-height:120px}
select.form-control{cursor:pointer;-webkit-appearance:none}
.form-hint{font-size:0.75rem;color:var(--text-muted);margin-top:4px}
.form-error{font-size:0.8rem;color:var(--red);margin-top:4px}

/* Pros/Cons input */
.tag-input-wrap{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:44px;align-items:center}
.tag-input-wrap:focus-within{border-color:var(--accent)}
.tag-pill{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:0.8rem;font-weight:500}
.tag-pill-pro{background:rgba(34,197,94,0.15);color:var(--green)}
.tag-pill-con{background:rgba(239,68,68,0.15);color:var(--red)}
.tag-pill button{background:none;border:none;color:inherit;cursor:pointer;font-size:0.9rem;line-height:1;padding:0}
.tag-input{flex:1;min-width:120px;background:none;border:none;color:var(--text-primary);outline:none;font-size:0.85rem}

/* ========== SIDEBAR ========== */
.sidebar{display:flex;flex-direction:column;gap:16px}
.sidebar-widget{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}
.sidebar-widget h3,.sidebar-widget h4{font-size:0.95rem;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px}

/* ========== PAGINATION ========== */
.pagination{display:flex;justify-content:center;gap:6px;padding:24px 0;flex-wrap:wrap}
.page-btn{padding:8px 14px;border-radius:var(--radius-sm);font-size:0.85rem;font-weight:500;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);transition:all var(--transition)}
.page-btn:hover{border-color:var(--accent);color:var(--accent)}
.page-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}
.page-dots{padding:8px 4px;color:var(--text-muted)}

/* ========== FOOTER ========== */
.site-footer{background:#151825;border-top:1px solid var(--border);margin-top:auto;padding:32px 0 16px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:32px;margin-bottom:24px}
.footer-about h3{font-size:1rem;font-weight:700;margin-bottom:8px}
.footer-about p{font-size:0.8rem;color:var(--text-secondary);line-height:1.6}
.footer-col h4{font-size:0.85rem;font-weight:700;margin-bottom:12px;color:var(--text-primary)}
.footer-col a{display:block;font-size:0.8rem;color:var(--text-secondary);padding:3px 0;transition:color var(--transition)}
.footer-col a:hover{color:var(--accent)}
.footer-responsible{display:flex;flex-direction:column;gap:16px;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:16px}
.footer-rg-logos{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer-rg-logos img{height:36px;opacity:0.85;transition:opacity var(--transition)}
.footer-rg-logos img:hover{opacity:1}
.footer-rg-text{display:flex;align-items:center;gap:10px;font-size:0.82rem;color:var(--text-secondary)}
.footer-bottom{text-align:center;font-size:0.75rem;color:var(--text-muted)}

/* ========== REVIEWS GRID (Homepage) ========== */
.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.review-card-compact{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;transition:border-color var(--transition),transform var(--transition)}
.review-card-compact:hover{border-color:var(--accent);transform:translateY(-2px)}

/* ========== COOKIE BANNER ========== */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:1px solid var(--border);padding:12px 0;z-index:999;transition:transform 0.3s ease,visibility 0.3s ease}
.cookie-banner.hidden{transform:translateY(100%);visibility:hidden}
.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--container);margin:0 auto;padding:0 16px}
.cookie-text{font-size:0.8rem;color:var(--text-secondary)}
.cookie-text a{color:var(--accent)}
.cookie-actions{display:flex;gap:8px;flex-shrink:0}

/* ========== PROFILE PAGE ========== */
.profile-header{display:flex;align-items:center;gap:20px;padding:32px 0}
.profile-stats{display:flex;gap:24px;margin-top:8px}
.profile-stat{text-align:center}
.profile-stat strong{display:block;font-size:1.2rem}
.profile-stat span{font-size:0.8rem;color:var(--text-secondary)}

/* ========== 404 ========== */
.page-404{text-align:center;padding:80px 0}
.page-404 h1{font-size:4rem;font-weight:800;color:var(--accent);margin-bottom:8px}
.page-404 p{color:var(--text-secondary);margin-bottom:24px}

/* ========== STATIC PAGES ========== */
.static-content{max-width:800px;margin:0 auto;padding:32px 16px}
.static-content h1{font-size:1.8rem;font-weight:800;margin-bottom:8px}
.static-content h2{font-size:1.3rem;font-weight:700;margin:24px 0 8px;color:var(--text-primary)}
.static-content h3{font-size:1.1rem;font-weight:600;margin:16px 0 6px}
.static-content p{color:var(--text-secondary);margin-bottom:12px;line-height:1.7}
.static-content ul,.static-content ol{margin:8px 0 16px 20px;color:var(--text-secondary)}
.static-content li{margin-bottom:6px;line-height:1.6}
.static-content a{color:var(--accent)}

/* ========== FOOTER ========== */
.site-footer{background:var(--bg-card);border-top:1px solid var(--border);padding:48px 0 0;margin-top:60px;font-size:0.88rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:32px}
.footer-about h3{font-size:1.2rem;font-weight:800;margin-bottom:10px}
.footer-about p{color:var(--text-secondary);line-height:1.7;font-size:0.85rem}
.footer-col h4{font-weight:700;font-size:0.9rem;margin-bottom:14px;color:var(--text-primary)}
.footer-col a{display:block;padding:4px 0;color:var(--text-secondary);font-size:0.85rem;transition:color 0.15s}
.footer-col a:hover{color:var(--accent)}
.footer-responsible{display:flex;align-items:center;justify-content:space-between;padding:24px 0;margin-top:32px;border-top:1px solid var(--border);gap:20px}
.footer-rg-logos{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.footer-rg-logos a{font-size:0.85rem;color:var(--text-secondary);text-decoration:underline;font-weight:500;transition:color 0.15s}
.footer-rg-logos a:hover{color:var(--accent)}
.footer-rg-text{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:0.8rem}
.footer-bottom{text-align:center;padding:16px 0;border-top:1px solid var(--border);color:var(--text-muted);font-size:0.8rem;margin-top:0}

/* ========== FILTER TABS ========== */
.filter-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.filter-tab{padding:6px 14px;border-radius:20px;font-size:0.8rem;font-weight:500;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}
.filter-tab:hover,.filter-tab.active{border-color:var(--accent);color:var(--accent);background:rgba(245,158,11,0.08)}

/* ========== COLLECTION CONTENT ========== */
.collection-content p{margin-bottom:16px}
.collection-content h2{font-size:1.3rem;font-weight:700;margin:28px 0 12px}
.collection-content h3{font-size:1.1rem;font-weight:600;margin:22px 0 10px}
.collection-content ul,.collection-content ol{margin:12px 0 16px 24px}
.collection-content li{margin-bottom:6px}
.collection-content a{color:var(--accent);text-decoration:underline}

/* ========== SORT BUTTONS ========== */
.sort-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.sort-bar span{font-size:0.85rem;color:var(--text-secondary)}
.sort-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:0.8rem;transition:all var(--transition)}
.sort-btn:hover,.sort-btn.active{border-color:var(--accent);color:var(--accent)}

/* ========== SLOTS ========== */
.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px;margin-bottom:32px;justify-content:start}
.slot-grid-sm{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.slot-card{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid rgba(255,255,255,0.05);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--text-primary);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);position:relative;width:100%}
.slot-card:hover{border-color:rgba(245,158,11,0.5);transform:translateY(-5px);box-shadow:0 12px 30px rgba(0,0,0,0.4), 0 0 15px rgba(245,158,11,0.1);color:var(--text-primary);z-index:2}
.slot-card-img{position:relative;width:100%;background:rgba(0,0,0,0.2);overflow:hidden;display:flex;align-items:center;justify-content:center}
.slot-card-img img{width:100%;height:auto;display:block;transition:transform 0.5s ease;object-fit:contain}
.slot-card:hover .slot-card-img img{transform:scale(1.08)}
.slot-card-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--text-muted);opacity:0.5}
.slot-badge-buy{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:20px;font-size:0.65rem;font-weight:800;text-transform:uppercase;letter-spacing:0.5px;color:#fff;background:linear-gradient(135deg, #f59e0b, #d97706);box-shadow:0 2px 8px rgba(0,0,0,0.3);display:flex;align-items:center;gap:4px;z-index:2}
.slot-card-body{padding:14px 16px;background:linear-gradient(to bottom, rgba(44,49,69,0.9), var(--bg-card));flex-grow:1;display:flex;flex-direction:column;justify-content:flex-start}
.slot-card-name{font-size:0.95rem;font-weight:800;margin:0 0 6px;line-height:1.2;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color 0.2s}
.slot-card:hover .slot-card-name{color:var(--accent)}
.slot-card-provider{display:flex;align-items:center;gap:6px;font-size:0.75rem;color:var(--text-muted);font-weight:500}

/* Slot Filters */
.slots-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:32px;padding:12px;background:rgba(44,49,69,0.4);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.08);border-radius:100px;box-shadow:0 4px 20px rgba(0,0,0,0.15)}
.slots-filters input{color:var(--text-primary) !important;font-size:0.9rem !important;border-radius:100px !important;background:rgba(0,0,0,0.2) !important;border:1px solid transparent !important;padding:10px 20px 10px 42px !important;outline:none}
.slots-filters input:focus{border-color:var(--accent) !important;background:rgba(0,0,0,0.3) !important}
.slots-filters select{color:var(--text-primary) !important;font-size:0.85rem !important;border-radius:100px !important;background:rgba(255,255,255,0.05) !important;border:1px solid rgba(255,255,255,0.1) !important;padding:10px 32px 10px 18px !important;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23bac0d0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;background-repeat:no-repeat !important;background-position:right 12px center !important;background-size:14px !important;font-weight:500;outline:none;cursor:pointer}
.slots-filters select option{background:var(--bg-card);color:var(--text-primary)}
.slots-filters select:hover{background-color:rgba(255,255,255,0.08) !important;border-color:rgba(255,255,255,0.2) !important}
.filter-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:100px;font-size:0.85rem;font-weight:700;color:var(--text-secondary);background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);text-decoration:none;transition:all 0.2s}
.filter-tab:hover{background:rgba(255,255,255,0.1);color:var(--text-primary);border-color:rgba(255,255,255,0.2);transform:translateY(-1px)}
.filter-tab.active{background:linear-gradient(135deg, var(--accent), #e67e22);color:#000;border-color:transparent;box-shadow:0 4px 12px rgba(245,158,11,0.3)}

/* Slot Detail Page */
.slot-demo-container{border-radius:var(--radius);overflow:hidden}
.slot-demo-placeholder:hover div:first-of-type div:first-child{transform:scale(1.1)}
.slot-fact-card{padding:16px;text-align:center}
.slot-fact-label{font-size:0.7rem;text-transform:uppercase;letter-spacing:1.2px;color:#fff;font-weight:700;margin:0 0 8px 0}
.slot-fact-value{font-size:1.15rem;font-weight:800;color:#fff}
.slot-hero{position:relative;border-radius:16px;overflow:hidden;margin-bottom:24px}
.slot-hero-inner{position:relative;z-index:1;padding:32px 24px;display:flex;flex-direction:column;align-items:center;text-align:center}
.slot-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(20px) brightness(0.35);transform:scale(1.15);z-index:0}
.slot-review-content{color:var(--text-secondary);line-height:1.85;font-size:0.92rem}
.slot-review-content p{margin:0 0 18px 0}
.slot-review-content h2{font-size:1.15rem;font-weight:700;margin:24px 0 12px;color:var(--text-primary)}
.slot-review-content h3{font-size:1rem;font-weight:700;margin:20px 0 10px;color:var(--text-primary)}
.slot-review-content img{border-radius:10px;margin:16px 0;max-width:100%;height:auto;cursor:pointer;transition:opacity 0.2s}
.slot-review-content img:hover{opacity:0.85}
.slot-review-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.slot-review-content a:hover{color:var(--accent-hover)}
.slot-proscons-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}

/* Play Real CTA hover */
.btn-play-real:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(34,197,94,0.4) !important}

/* ========== RESPONSIVE ========== */
@media(max-width:1024px){
    .content-layout{grid-template-columns:1fr}
    .sidebar{order:1}
    .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
    .brand-header-inner{gap:14px}
    .brand-logo{width:56px;height:56px}
    .brand-info h1{font-size:1.1rem}
    .brand-meta{gap:8px}
    .brand-meta-item{font-size:0.78rem}
    .wr-card{padding:5px 10px}
    .wr-card-bar{width:60px;height:16px}
    .wr-card-bar-text{font-size:0.6rem}
    .wr-card-title{font-size:0.6rem}
    .brand-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
    /* Trending: horizontal scroll */
    .trending-grid{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;scrollbar-width:none}
    .trending-grid::-webkit-scrollbar{display:none}
    .trending-card{min-width:220px;flex-shrink:0;scroll-snap-align:start}
    .pros-cons{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-responsible{flex-direction:column;text-align:center;gap:12px}
    .footer-rg-logos{justify-content:center}
    .footer-rg-text{justify-content:center;text-align:center}
    .reviews-grid{grid-template-columns:1fr}
    .cookie-inner{flex-direction:column;text-align:center;gap:12px}
    .cookie-actions{width:100%;display:flex}
    .cookie-actions .btn{flex:1;justify-content:center;min-height:44px}
    .review-footer{flex-direction:column;gap:10px;align-items:flex-start}
    .helpful-btn{min-height:40px;min-width:40px;padding:8px 14px}
    /* Collection items: compact row on mobile */
    .collection-item{flex-wrap:wrap;padding:16px !important;gap:12px !important}
    .collection-item img{width:48px !important;height:48px !important}
    /* Auth buttons */
    .nav-auth{gap:6px}
    .nav-auth .btn-login,.nav-auth .btn-register{min-height:44px;padding:10px 16px;font-size:0.9rem;display:flex;align-items:center}
    /* Pagination */
    .page-btn{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
    /* Filter tabs touch */
    .filter-tab{min-height:40px;padding:8px 16px}
    /* Slots responsive */
    .slot-grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .slot-grid-sm{grid-template-columns:repeat(2,1fr)}
    .slots-filters{flex-direction:column}
    .slots-filters select,.slots-filters input{width:100%}
    .slot-card-name{font-size:0.82rem}
    .slot-fact-card{padding:12px}
    .slot-fact-value{font-size:0.92rem}
    /* Slot Detail responsive */
    .slot-hero-inner{padding:20px 16px !important}
    .slot-hero h1{font-size:1.25rem !important}
    .slot-hero img[width="200"]{width:140px !important;height:140px !important}
    #slotDemoFrame{height:320px !important}
    #slotBtnState{padding:20px 16px !important}
    #slotBtnState button,#slotBtnState a{max-width:100% !important;font-size:0.9rem !important;padding:12px 20px !important}
    .slot-proscons-grid{grid-template-columns:1fr !important}
    .slot-review-content{font-size:0.85rem}
    .slot-review-content h2{font-size:1.05rem}
}
@media(max-width:480px){
    .brand-grid{grid-template-columns:1fr 1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-about{grid-column:1/-1}
    .hero-stats{gap:12px}
    .hero-stat{min-width:70px}
    /* Bottom safe area for cookie banner */
    .cookie-banner{padding-bottom:max(12px, env(safe-area-inset-bottom))}
    /* Slots mobile */
    .slot-grid{grid-template-columns:repeat(2,1fr);gap:10px}
    /* Slot Detail - extra small */
    .slot-hero h1{font-size:1.1rem !important}
    .slot-hero-inner{padding:16px 12px !important}
    #slotDemoFrame{height:260px !important}
    .slot-hero img[width="200"]{width:120px !important;height:120px !important}
    .slot-fact-card{padding:10px}
    .slot-fact-label{font-size:0.65rem}
    .slot-fact-value{font-size:0.85rem}
}

/* ========== BRAND PAGE PREMIUM (brand-page-wrap) ========== */
.brand-page-wrap {
    --bt-bg: #0a0e1a;
    --bt-card: rgba(20,25,41,0.85);
    --bt-elevated: #1e2538;
    --bt-text: #f1f5f9;
    --bt-text2: #94a3b8;
    --bt-muted: #64748b;
    --bt-border: rgba(255,255,255,0.06);
    --bt-accent: #f5a623;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
    color: var(--bt-text2);
}
.brand-page-wrap h1,.brand-page-wrap h2,.brand-page-wrap h3,.brand-page-wrap h4{font-family:'Inter',system-ui,sans-serif;letter-spacing:-0.02em}
.brand-page-wrap h2{font-size:1.25rem;font-weight:700;color:var(--bt-text)}

/* Brand header override */
body.is-brand-page .brand-header .brand-header{background:linear-gradient(180deg,#141929 0%,#0a0e1a 100%)!important;border-bottom:1px solid rgba(255,255,255,0.06)!important;padding:32px 0!important}
body.is-brand-page .brand-header h1 .brand-header h1{color:#f1f5f9!important;font-size:1.75rem!important;font-weight:800!important;letter-spacing:-0.03em!important;font-family:'Inter',system-ui,sans-serif!important}

/* Scoped card styles */
.brand-page-wrap .card,.brand-page-wrap .review-card,.brand-page-wrap .sidebar-widget,.brand-page-wrap .info-box{background:rgba(20,25,41,0.7)!important;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.06)!important;border-radius:16px!important;box-shadow:0 4px 24px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.03)!important;color:#94a3b8!important}
.brand-page-wrap .card h2,.brand-page-wrap .sidebar-widget h3,.brand-page-wrap .info-box h3{color:#f1f5f9!important;font-size:0.78rem!important;font-weight:600!important;letter-spacing:0.06em!important;text-transform:uppercase!important}
.brand-page-wrap .sidebar-widget h4{color:#f1f5f9!important;font-size:0.85rem!important;text-transform:none!important}

/* Review cards */
.brand-page-wrap .review-card{background:rgba(20,25,41,0.6)!important;border-radius:16px!important;padding:24px!important;transition:border-color 0.3s!important}
.brand-page-wrap .review-card:hover{border-color:rgba(245,166,35,0.15)!important}
.brand-page-wrap .review-title{text-transform:none!important;font-size:1.05rem!important;font-weight:700!important}
.brand-page-wrap .review-title a{color:#f1f5f9!important}
.brand-page-wrap .review-title a:hover{color:#f5a623!important}
.brand-page-wrap .review-content{color:#94a3b8!important;font-size:0.88rem!important}
.brand-page-wrap .review-badge{background:rgba(255,255,255,0.04)!important;border:1px solid rgba(255,255,255,0.06)!important}
.brand-page-wrap .review-badge.badge-top{color:#f59e0b!important;background:rgba(245,158,11,0.08)!important}
.brand-page-wrap .review-badge.badge-verified{color:#10b981!important;background:rgba(16,185,129,0.08)!important}
.brand-page-wrap .review-category{background:rgba(255,255,255,0.04)!important;color:#a0aec0!important}

/* Sort bar */
.brand-page-wrap .sort-bar{background:rgba(20,25,41,0.5)!important;border:1px solid rgba(255,255,255,0.05)!important;border-radius:12px!important;padding:8px!important}
.brand-page-wrap .sort-btn{color:#a0aec0!important;border-radius:8px!important;font-size:0.78rem!important}
.brand-page-wrap .sort-btn.active{background:#f5a623!important;color:#000!important}

/* Editorial blocks */
.brand-page-wrap .premium-editorial-block{margin-bottom:28px;background:rgba(20,25,41,0.6);border:1px solid rgba(255,255,255,0.05);border-radius:16px;padding:28px 32px;transition:border-color 0.3s}
.brand-page-wrap .premium-editorial-block:hover{border-color:rgba(245,166,35,0.15)}
.brand-page-wrap .premium-editorial-block h2{color:#f1f5f9!important;font-size:1.25rem!important;font-weight:700!important;text-transform:none!important;margin-top:0;margin-bottom:20px}
.brand-page-wrap .premium-editorial-block p{font-size:0.95rem;line-height:1.8;color:#94a3b8}
.brand-page-wrap .premium-editorial-block figure{margin:0 0 24px 0;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,0.05);background:#0a0b14;text-align:center}
.brand-page-wrap .premium-editorial-block figure img{max-width:100%;width:auto;height:auto;max-height:420px;object-fit:contain;cursor:zoom-in;display:inline-block;transition:transform 0.3s ease}
.brand-page-wrap .premium-editorial-block figure img:hover{transform:scale(1.02)}
.brand-page-wrap .premium-editorial-block figcaption{background:rgba(0,0,0,0.85);color:#94a3b8;padding:12px 16px;font-size:0.8rem;border-top:1px solid rgba(255,255,255,0.05);margin:0;text-align:left}

/* Lightbox */
.editorial-lightbox{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(5,7,15,0.95);z-index:99999;justify-content:center;align-items:center;opacity:0;transition:opacity 0.3s ease;padding:20px}
.editorial-lightbox.active{display:flex;opacity:1}
.editorial-lightbox img{max-width:95vw;max-height:95vh;border-radius:8px;box-shadow:0 20px 50px rgba(0,0,0,0.5);object-fit:contain}
.editorial-lightbox .close-btn{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;cursor:pointer;line-height:1;opacity:0.7;transition:opacity 0.2s;z-index:100000}
.editorial-lightbox .close-btn:hover{opacity:1}

/* Info rows */
.brand-page-wrap .info-row{border-bottom:1px solid rgba(255,255,255,0.06)!important;padding:10px 0!important}
.brand-page-wrap .info-label{color:#94a3b8!important;font-size:0.88rem!important}
.brand-page-wrap .info-value{color:#f1f5f9!important;font-weight:700!important}

/* Similar casinos */
.brand-page-wrap .similar-casinos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:16px}
.brand-page-wrap .similar-casino-card{background:rgba(20,25,41,0.6);border:1px solid rgba(255,255,255,0.05);border-radius:14px;padding:20px 16px;display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;transition:all 0.3s}
.brand-page-wrap .similar-casino-card:hover{transform:translateY(-4px);border-color:rgba(245,166,35,0.3);box-shadow:0 12px 32px rgba(0,0,0,0.25)}

/* Lang tooltip */
.lang-hover-wrap:hover .lang-tooltip,.lang-hover-wrap.active .lang-tooltip{display:block!important}

/* Remove footer gap on brand pages */
body.is-brand-page .site-footer .site-footer{margin-top:0!important}

/* ===== BRAND PAGE MOBILE ===== */
@media(max-width:768px){
    body.is-brand-page .brand-header .brand-header{padding:20px 0!important}
    body.is-brand-page .brand-header h1 .brand-header h1{font-size:1.25rem!important}
    .brand-page-wrap .container{padding-left:12px!important;padding-right:12px!important}
    .brand-page-wrap .bt-info-bar{flex-direction:column!important}
    .brand-page-wrap .bt-info-bar>div{border-right:none!important;border-bottom:1px solid var(--border)!important;min-width:100%!important}
    .brand-page-wrap .bt-info-bar>div:last-child{border-bottom:none!important}
    .brand-page-wrap .premium-editorial-block{padding:18px 16px!important;margin-bottom:20px!important}
    .brand-page-wrap .premium-editorial-block h2{font-size:1.1rem!important}
    .brand-page-wrap .premium-editorial-block p{font-size:0.88rem!important}
    .brand-page-wrap .premium-editorial-block figure img{max-height:280px}
    .brand-page-wrap .premium-editorial-block figcaption{font-size:0.72rem;padding:8px 12px}
    .brand-page-wrap .card{padding:16px!important;border-radius:12px!important}
    .brand-page-wrap .similar-casinos-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}
    .brand-page-wrap .similar-casino-card{padding:14px 10px!important;border-radius:10px!important}
    .brand-page-wrap .similar-casino-card img{width:48px!important;height:48px!important}
    .brand-page-wrap .review-card{padding:16px!important}
    .brand-page-wrap .sort-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
    .brand-page-wrap div[style*="grid-template-columns:1fr 1fr"][style*="gap:8px 24px"]{grid-template-columns:1fr!important}
    .brand-page-wrap div[style*="padding:32px;text-align:center"]{padding:20px 16px!important}
    .editorial-lightbox img{max-width:100vw!important;border-radius:0!important}
    .editorial-lightbox .close-btn{top:10px;right:16px;font-size:32px}
}
@media(max-width:480px){
    body.is-brand-page .brand-header h1 .brand-header h1{font-size:1.1rem!important}
    .brand-page-wrap .similar-casinos-grid{grid-template-columns:repeat(2,1fr)!important}
    .brand-page-wrap .premium-editorial-block{padding:14px 12px!important}
}
