/* ══════════════════════════════════════════════════════════
   BlockTicker v6.2 — CRITICAL SITE FIXES
   ══════════════════════════════════════════════════════════
   
   FIXES:
   1. Remove social icons from homepage body
   2. Remove blank white block
   3. Fix menu hidden under logo (z-index + positioning)
   4. Fix footer white background → dark
   5. Fix footer social single-letter icons
   6. Hide "Home" page title
   7. Remove Astra duplicate menus
   8. Fix Astra "Powered by" footer
   9. Make tables visually stunning
   10. Add premium animations
   11. Fix all white/light blocks in dark theme
   ══════════════════════════════════════════════════════════ */

/* ── 1. REMOVE SOCIAL ICONS FROM BODY (not footer) ── */
.entry-content > .fxlm-social-icons,
.page-content > .fxlm-social-icons,
.ast-article-single .fxlm-social-icons,
main .fxlm-social-icons,
#primary .fxlm-social-icons {
    display: none !important;
}

/* ── 2. REMOVE ALL BLANK/WHITE BLOCKS ── */
.ast-separate-container .ast-article-single,
.ast-separate-container #primary,
.ast-plain-container .site-main,
.ast-separate-container .ast-article-inner,
.ast-separate-container .entry-content,
.ast-page-builder-template .entry-content {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    border: none !important;
}

/* Kill any white/light background anywhere */
.site-content,
.ast-container,
#content,
#primary,
.content-area,
.ast-separate-container,
.ast-plain-container,
article.page,
article.post,
.ast-article-single {
    background: #0a0e1a !important;
    background-color: #0a0e1a !important;
}

/* Kill blank spacer divs */
.ast-above-header-bar,
.ast-below-header-bar,
.ast-header-break-point .header-main-layout-2 .site-header {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
}

/* ── 3. FIX MENU UNDER LOGO — proper z-index stacking ── */
.cp-navbar {
    z-index: 999999 !important;
}
/* Our custom navbar replaces Astra's — hide ALL Astra headers completely */
.site-header,
#masthead,
.ast-primary-header-bar,
.ast-mobile-header-wrap,
.main-header-bar-wrap,
.main-header-bar,
header.site-header,
.ast-header-break-point .ast-mobile-header-wrap {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* Ensure body padding for fixed navbar */
body {
    padding-top: 64px !important;
}

/* ── 4 & 5. FIX FOOTER — dark background, proper styling ── */
.site-footer,
#colophon,
.ast-footer-overlay,
.ast-small-footer,
footer.site-footer,
.site-footer .ast-container {
    background: #060a14 !important;
    background-color: #060a14 !important;
    color: #475569 !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
}

/* Hide Astra's "Powered by Astra" completely */
.ast-small-footer-section-1,
.ast-small-footer-section-2,
.site-footer .ast-footer-copyright,
.ast-footer-overlay .ast-container .ast-small-footer-section-1 {
    display: none !important;
}

/* Our custom footer (.cp-footer) overrides */
.cp-footer {
    background: #060a14 !important;
    color: #94a3b8 !important;
}
.cp-footer,
.cp-footer *,
.cp-footer a,
.cp-footer p,
.cp-footer h4 {
    background-color: transparent !important;
}
.cp-footer-bottom {
    background: transparent !important;
}
/* Fix footer social icons — proper dark styling */
.cp-footer-social {
    background: rgba(255,255,255,0.06) !important;
    color: #64748b !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
}
.cp-footer-social:hover {
    background: rgba(0,212,170,0.12) !important;
    color: #00d4aa !important;
    border-color: rgba(0,212,170,0.2) !important;
}

/* ── 6. HIDE PAGE TITLE on all pages (our sections have their own headers) ── */
.entry-title,
.page-title,
.ast-archive-title,
h1.entry-title,
h1.page-title,
.ast-page-builder-template .entry-title {
    display: none !important;
}

/* ── 7. REMOVE ASTRA DUPLICATE NAV MENUS ── */
.ast-header-break-point .main-navigation,
.ast-header-break-point .ast-mobile-popup-drawer,
.ast-header-break-point #site-navigation,
.ast-mobile-popup-drawer {
    display: none !important;
}

/* ── 8. REMOVE ALL ASTRA DEFAULT WIDGETS ── */
.widget-area,
.sidebar-main,
#secondary {
    display: none !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM TABLE DESIGN
   ══════════════════════════════════════════════════ */

.fxlm-table-wrap {
    border-radius: 16px !important;
    border: 1px solid rgba(0,212,170,0.08) !important;
    background: linear-gradient(180deg, rgba(17,24,39,0.95), rgba(10,14,26,0.98)) !important;
    overflow: hidden !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.3) !important;
}

.fxlm-table {
    font-size: 13px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.fxlm-table thead {
    background: rgba(0,212,170,0.04) !important;
}

.fxlm-table th {
    padding: 14px 18px !important;
    color: #00d4aa !important;
    font-size: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    font-weight: 700 !important;
    border-bottom: 1px solid rgba(0,212,170,0.1) !important;
    background: transparent !important;
}

.fxlm-table td {
    padding: 14px 18px !important;
    border-bottom: 1px solid rgba(255,255,255,0.03) !important;
    transition: all 0.3s ease !important;
    font-size: 13px !important;
}

.fxlm-table tr:hover td {
    background: rgba(0,212,170,0.04) !important;
}

/* Coin icon + name styling in table */
.fxlm-table td img {
    border-radius: 50% !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
    box-shadow: 0 0 8px rgba(0,0,0,0.3) !important;
}

.fxlm-table td strong {
    color: #fff !important;
    font-weight: 600 !important;
}

.fxlm-table td small {
    color: #475569 !important;
    font-size: 10px !important;
    margin-left: 4px !important;
    text-transform: uppercase !important;
}

/* Green/red with glow */
.fxlm-table .up {
    color: #00d4aa !important;
    text-shadow: 0 0 8px rgba(0,212,170,0.3) !important;
    font-weight: 600 !important;
}
.fxlm-table .down {
    color: #ff4d6a !important;
    text-shadow: 0 0 8px rgba(255,77,106,0.3) !important;
    font-weight: 600 !important;
}

/* Row number indicator */
.fxlm-table-full .fxlm-table td:first-child {
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    width: 30px !important;
}

/* Alternating row tint */
.fxlm-table tr:nth-child(even) td {
    background: rgba(255,255,255,0.01) !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM PRICE CARDS
   ══════════════════════════════════════════════════ */

.fxlm-price-card {
    background: linear-gradient(135deg, rgba(17,24,39,0.95), rgba(15,22,41,0.9)) !important;
    border: 1px solid rgba(0,212,170,0.08) !important;
    border-radius: 16px !important;
    padding: 20px !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}
.fxlm-price-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, #00d4aa, #0099ff) !important;
    opacity: 0 !important;
    transition: opacity 0.3s !important;
}
.fxlm-price-card:hover {
    border-color: rgba(0,212,170,0.2) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 40px rgba(0,212,170,0.08) !important;
}
.fxlm-price-card:hover::before {
    opacity: 1 !important;
}

.fxlm-price-card-price {
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
}

.fxlm-price-card .up {
    color: #00d4aa !important;
}
.fxlm-price-card .down {
    color: #ff4d6a !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM NEWS CARDS
   ══════════════════════════════════════════════════ */

.fxlm-news-item {
    background: linear-gradient(135deg, rgba(17,24,39,0.9), rgba(10,14,26,0.95)) !important;
    border: 1px solid rgba(255,255,255,0.04) !important;
    border-radius: 14px !important;
    transition: all 0.3s ease !important;
    overflow: hidden !important;
}
.fxlm-news-item:hover {
    border-color: rgba(0,212,170,0.15) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.3) !important;
}

/* News image */
.fxlm-news-img {
    border-radius: 10px !important;
    object-fit: cover !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM FEAR & GREED
   ══════════════════════════════════════════════════ */

.fxlm-fng-widget {
    background: linear-gradient(135deg, rgba(17,24,39,0.95), rgba(10,14,26,0.95)) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 18px !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.2) !important;
}

.fxlm-fng-value {
    font-size: 32px !important;
    font-weight: 800 !important;
    text-shadow: 0 0 20px currentColor !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM CONVERTER
   ══════════════════════════════════════════════════ */

.fxlm-converter {
    background: linear-gradient(135deg, rgba(17,24,39,0.95), rgba(10,14,26,0.95)) !important;
    border: 1px solid rgba(0,212,170,0.08) !important;
    border-radius: 18px !important;
}

.fxlm-converter-field input,
.fxlm-converter-field select {
    background: rgba(10,14,26,0.8) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 10px !important;
    color: #e2e8f0 !important;
}

.fxlm-converter-field input:focus,
.fxlm-converter-field select:focus {
    border-color: #00d4aa !important;
    box-shadow: 0 0 0 3px rgba(0,212,170,0.1) !important;
}

/* ══════════════════════════════════════════════════
   PREMIUM NEWSLETTER
   ══════════════════════════════════════════════════ */

.fxlm-newsletter {
    background: linear-gradient(135deg, rgba(13,26,46,0.95), rgba(9,26,20,0.9)) !important;
    border: 1px solid rgba(0,212,170,0.12) !important;
    border-radius: 18px !important;
    position: relative !important;
    overflow: hidden !important;
}
.fxlm-newsletter::after {
    content: '' !important;
    position: absolute !important;
    inset: -1px !important;
    border-radius: 19px !important;
    background: linear-gradient(135deg, rgba(0,212,170,0.15), transparent, rgba(0,153,255,0.1)) !important;
    z-index: -1 !important;
    animation: nlGlow 4s ease-in-out infinite alternate !important;
}
@keyframes nlGlow { 0% { opacity: .3; } 100% { opacity: .7; } }

/* ══════════════════════════════════════════════════
   GLOBAL DARK THEME ENFORCEMENT
   ══════════════════════════════════════════════════ */

/* Catch-all: force dark bg on everything */
html, body,
.site, #page,
.ast-separate-container,
.ast-plain-container {
    background: #0a0e1a !important;
    background-color: #0a0e1a !important;
}

/* Remove any border/shadow that creates visible white lines */
.ast-separate-container .ast-article-single {
    box-shadow: none !important;
    border: none !important;
}

/* Fix input/select styling in dark theme */
input, select, textarea {
    background: rgba(10,14,26,0.8) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    color: #e2e8f0 !important;
    border-radius: 8px !important;
}
input:focus, select:focus, textarea:focus {
    border-color: #00d4aa !important;
    outline: none !important;
}

/* Fix scrollbar for dark theme */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0a0e1a; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.15); }

/* ══════════════════════════════════════════════════
   MOBILE RESPONSIVENESS FIXES
   ══════════════════════════════════════════════════ */

@media (max-width: 768px) {
    body { padding-top: 60px !important; }
    
    .fxlm-table th,
    .fxlm-table td {
        padding: 10px 12px !important;
        font-size: 12px !important;
    }
    
    .fxlm-price-cards {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }
    
    .fxlm-price-card {
        padding: 14px !important;
    }
    
    .fxlm-price-card-price {
        font-size: 18px !important;
    }
    
    .cp-footer-grid {
        grid-template-columns: 1fr 1fr !important;
    }
}

@media (max-width: 480px) {
    .fxlm-hero { padding: 36px 16px 28px !important; }
    .fxlm-hero-title { font-size: clamp(24px,8vw,42px) !important; }
    .fxlm-price-cards { grid-template-columns: 1fr !important; }
    .cp-footer-grid { grid-template-columns: 1fr !important; }
}

/* ══════════════════════════════════════════════════
   ANIMATED LOGO
   ══════════════════════════════════════════════════ */
.cp-logo-icon svg {
    animation: btLogoFloat 3s ease-in-out infinite !important;
}
.cp-logo-icon svg path {
    stroke-dasharray: 100 !important;
    animation: btLogoPulse 2.5s ease-in-out infinite !important;
}
@keyframes btLogoFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-2px); }
}
@keyframes btLogoPulse {
    0% { stroke-dashoffset: 100; }
    50% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -100; }
}
.cp-nav-logo:hover .cp-logo-icon svg {
    filter: drop-shadow(0 0 10px rgba(0,212,170,0.5)) !important;
}
.cp-nav-logo:hover .cp-logo-icon svg polygon {
    fill: rgba(255,255,255,0.25) !important;
    transition: fill 0.3s !important;
}

/* ══════════════════════════════════════════════════
   PUSH NOTIFICATION OPT-IN BAR
   ══════════════════════════════════════════════════ */
.bt-push-bar {
    background: linear-gradient(135deg, rgba(0,212,170,.08), rgba(0,153,255,.05)) !important;
    border: 1px solid rgba(0,212,170,.12) !important;
    border-radius: 14px !important;
    padding: 16px 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 16px 0 !important;
    flex-wrap: wrap !important;
}

/* ══════════════════════════════════════════════════
   BLOG POST CARDS (for AI-generated posts)
   ══════════════════════════════════════════════════ */
.fxlm-blog-card {
    background: linear-gradient(135deg, rgba(17,24,39,0.95), rgba(10,14,26,0.95)) !important;
    border: 1px solid rgba(255,255,255,0.04) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}
.fxlm-blog-card:hover {
    border-color: rgba(0,212,170,0.15) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.3) !important;
}
.fxlm-blog-card .wp-post-image {
    height: 200px !important;
    object-fit: cover !important;
    width: 100% !important;
}

/* ══════════════════════════════════════════════════
   LOADING SKELETON for Forex table
   ══════════════════════════════════════════════════ */
.fxlm-loading {
    position: relative !important;
    overflow: hidden !important;
    background: var(--fxlm-card) !important;
}
.fxlm-loading::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(90deg, transparent, rgba(0,212,170,0.03), transparent) !important;
    animation: btShimmer 1.5s infinite !important;
}
@keyframes btShimmer {
    from { transform: translateX(-100%); }
    to { transform: translateX(100%); }
}

/* ══════════════════════════════════════════════════
   BACK TO TOP BUTTON (dark styled)
   ══════════════════════════════════════════════════ */
#bt-back-to-top,
.scroll-to-top,
#scroll-to-top {
    background: linear-gradient(135deg, #00d4aa, #0099ff) !important;
    border: none !important;
    box-shadow: 0 4px 20px rgba(0,212,170,0.3) !important;
}
