/*
SolanaWP Main Stylesheet - CENTRAL ROUTER
---------------------------------------------------------------------
This is the CENTRAL CSS file that imports all other modularized stylesheets
and contains core site-wide styles. All other CSS files are loaded through this main file.

IMPORT ORDER (Critical for cascade):
1. Header styles first
2. Core global styles 
3. Footer styles
4. Analyzer styles last (most specific)
*/

/* =============================================================================
   IMPORT ALL MODULARIZED CSS FILES - MAIN.CSS AS CENTRAL ROUTER
   ============================================================================= */

   @import url('header.css');
   @import url('footer.css'); 
   @import url('analyzer.css');
   
   /* =============================================================================
      CORE GLOBAL STYLES - FOUNDATION LAYER
      ============================================================================= */
   
   /* === GLOBAL RESETS AND VARIABLES === */
   * {
       margin: 0;
       padding: 0;
       box-sizing: border-box;
   }
   
   body {
       font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
       background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
       min-height: 100vh;
       color: #374151;
       line-height: 1.6;
       margin: 0;
       padding: 0;
   }
   
   html, body {
       margin-bottom: 0 !important;
       padding-bottom: 0 !important;
   }
   
   #page.site {
       margin-bottom: 0 !important;
       padding-bottom: 0 !important;
       min-height: 100vh;
       display: flex;
       flex-direction: column;
   }
   
   .site-content {
       flex-grow: 1;
   }
   
   /* === CSS VARIABLES - THEME COLORS === */
   :root {
       --solanawp-primary-accent-color: #3b82f6;
       --solanawp-secondary-accent-color: #8b5cf6;
       --solanawp-primary-accent-color-rgba-03: rgba(59, 130, 246, 0.3);
       --solanawp-primary-accent-color-rgba-04: rgba(59, 130, 246, 0.4);
       --solanawp-primary-accent-color-rgba-01: rgba(59, 130, 246, 0.1);
       --solanawp-primary-accent-color-rgba-015: rgba(59, 130, 246, 0.15);
   }
   
   /* === ENHANCED LAYOUT GRID SYSTEM V2.0 (Independent Sidebars) === */
   .main-container {
       display: grid;
       grid-template-columns: 300px 1fr 300px;
       gap: 24px;
       max-width: 100vw;
       margin: 0 auto;
       padding: 24px 113px; /* Updated for 3cm (113px) edge optimization */
       box-sizing: border-box;
       width: 100%;
       margin-bottom: 0 !important;
   }
   
   .content-area {
       background: white;
       border-radius: 20px;
       box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
       overflow: hidden;
       width: 100%;
       max-width: 100%;
       margin: 0;
       padding: 0;
       box-sizing: border-box;
       min-width: 600px;
       margin-bottom: 0 !important;
   }
   
   /* === INDEPENDENT SIDEBAR SYSTEMS === */
   .sidebar,
   .sidebar-right {
       display: flex;
       flex-direction: column;
       gap: 12px;
       padding: 0;
       margin: 0;
       width: 100%;
       box-sizing: border-box;
       position: relative;
       margin-bottom: 0 !important;
   }
   
   /* Left Sidebar Specific Styling */
   .sidebar {
       order: 1; /* Ensure left sidebar appears first */
   }
   
   /* Right Sidebar Specific Styling */
   .sidebar-right {
       order: 3; /* Ensure right sidebar appears last */
   }
   
   /* Content Area Order */
   .content-area {
       order: 2; /* Ensure content area appears in middle */
   }
   
   /* === UNIVERSAL AD BANNER STYLING (Both Sidebars) === */
   .sidebar .ad-banner,
   .sidebar-right .ad-banner {
       background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
       border: 2px solid #e5e7eb;
       border-radius: 16px;
       height: 140px;
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       color: #374151;
       font-weight: 600;
       text-align: center;
       transition: all 0.3s ease;
       padding: 10px;
       margin: 0;
       width: 100%;
       box-sizing: border-box;
       box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
       position: relative;
       overflow: hidden;
   }
   
   .sidebar .ad-banner > a,
   .sidebar-right .ad-banner > a {
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       width: 100%;
       height: 100%;
       text-decoration: none;
       color: inherit;
   }
   
   .sidebar .ad-banner.small,
   .sidebar-right .ad-banner.small {
       height: 90px;
       padding: 8px;
   }
   
   .sidebar .ad-banner:hover,
   .sidebar-right .ad-banner:hover {
       border-color: var(--solanawp-primary-accent-color, #3b82f6);
       background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
       transform: translateY(-2px);
       box-shadow: 0 4px 16px var(--solanawp-primary-accent-color-rgba-015, rgba(59, 130, 246, 0.15));
   }
   
   .ad-banner:last-child { margin-bottom: 0; }
   
   /* Admin Config Link for Ad Banners */
   .admin-configure-ad-link {
       position: absolute;
       bottom: 5px;
       right: 5px;
       background: rgba(0,0,0,0.6);
       color: white;
       padding: 3px 6px;
       font-size: 10px;
       border-radius: 3px;
       line-height: 1;
       z-index: 10;
   }
   .admin-configure-ad-link a {
       color: white !important;
       text-decoration: none !important;
       font-weight: normal !important;
   }
   .admin-configure-ad-link a:hover {
       color: #ccc !important;
   }
   
   /* === ENHANCED CONTENT BANNER (Width Synchronized) === */
   .content-area-banner {
       width: calc(100vw - 226px); /* Synced with expanded analyzer frame */
       max-width: calc(100vw - 226px);
       margin: 113px auto; /* 3cm margins above and below */
       border: 2px solid #e5e7eb;
       background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
       border-radius: 20px;
       box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
   }
   .content-area-banner .card-content {
       padding: 20px;
       text-align: center;
   }
   
   /* === THEME COLOR APPLICATIONS === */
   a:hover,
   .entry-title a:hover,
   .comment-metadata a:hover,
   .widget-area .widget ul li a:hover,
   .text-blue,
   .reply .comment-reply-link,
   .solanawp-breadcrumbs a:hover {
       color: var(--solanawp-primary-accent-color);
   }
   
   .form-submit .submit,
   .read-more-button,
   .the-posts-pagination .nav-links .page-numbers.current,
   .the-posts-pagination .nav-links .page-numbers:hover,
   .widget-area .widget_search .search-submit {
       background: linear-gradient(135deg, var(--solanawp-primary-accent-color) 0%, var(--solanawp-secondary-accent-color) 100%);
       box-shadow: 0 4px 16px var(--solanawp-primary-accent-color-rgba-03);
       border-color: var(--solanawp-primary-accent-color);
       color: #ffffff;
   }
   
   .form-submit .submit:hover,
   .read-more-button:hover,
   .widget-area .widget_search .search-submit:hover {
       box-shadow: 0 8px 24px var(--solanawp-primary-accent-color-rgba-04);
   }
   
   .comment-form input[type="text"]:focus,
   .comment-form input[type="email"]:focus,
   .comment-form input[type="url"]:focus,
   .comment-form textarea:focus {
       border-color: var(--solanawp-primary-accent-color);
       box-shadow: 0 0 0 4px var(--solanawp-primary-accent-color-rgba-01);
   }
   
   /* === COLOR UTILITIES === */
   .text-green { color: #059669 !important; }
   .text-purple { color: #7c3aed !important; }
   .text-yellow { color: #d97706 !important; }
   .text-red { color: #dc2626 !important; }
   
   /* === WORDPRESS CONTENT STYLES === */
   .entry-header { margin-bottom: 1.5em; }
   .entry-title { font-size: 2em; color: #111827; margin-bottom: 0.5em; }
   .entry-title a { color: inherit; text-decoration: none; }
   .entry-title a:hover { color: var(--solanawp-primary-accent-color); }
   .entry-content p, .entry-content ul, .entry-content ol, .entry-content blockquote, .comment-content p, .comment-content ul, .comment-content ol, .comment-content blockquote { margin-bottom: 1.5em; line-height: 1.7; }
   .entry-content ul, .entry-content ol, .comment-content ul, .comment-content ol { padding-left: 1.5em; margin-left: 0.5em; }
   .entry-content blockquote { margin-left: 0; margin-right: 0; padding: 1em 1.5em; background-color: #f9fafb; border-left: 4px solid #e5e7eb; font-style: italic; }
   .entry-content blockquote p:last-child { margin-bottom: 0; }
   
   .the-posts-pagination { margin: 2em 0; clear: both; }
   .the-posts-pagination .nav-links { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 0.5em; }
   .the-posts-pagination .nav-links .page-numbers { padding: 0.5em 1em; border: 1px solid #e5e7eb; border-radius: 8px; text-decoration: none; color: #374151; background-color: #f9fafb; transition: background-color 0.3s ease, color 0.3s ease; }
   
   .comments-area { margin-top: 2.5em; padding: 24px; background: #f8fafc; border-radius: 12px; border: 1px solid #e5e7eb; clear: both; }
   .comments-title, .comment-reply-title { font-size: 1.8em; color: #1f2937; margin-bottom: 1em; border-bottom: 1px solid #e5e7eb; padding-bottom: 0.5em; }
   .comment-list { list-style: none; padding: 0; margin: 0; }
   .comment-list .comment, .comment-list .pingback { padding: 1.5em 0; border-bottom: 1px solid #e0e0e0; }
   .comment-list .comment:last-child { border-bottom: none; }
   .comment-list .children { list-style: none; padding-left: 2em; margin-left: 1em; border-left: 2px solid #e5e7eb; }
   .comment-author { display: flex; align-items: center; margin-bottom: 0.5em; }
   .comment-author .avatar { margin-right: 10px; border-radius: 50%; border: 2px solid #e5e7eb; }
   .comment-author .fn { font-weight: 600; color: #1f2937; }
   .comment-author .fn a { color: inherit; text-decoration: none; }
   .comment-metadata { font-size: 0.85em; color: #6b7280; margin-left: auto; padding-left: 10px; }
   .comment-metadata a { color: #6b7280; text-decoration: none; font-size: 0.85em; }
   .comment-metadata a:hover { color: var(--solanawp-primary-accent-color); text-decoration: underline; }
   
   /* Complete the remaining comment system styles */
   .comment-content {
       margin-top: 1em;
       color: #374151;
       line-height: 1.7;
   }
   
   .comment-content p {
       margin-bottom: 1em;
   }
   
   .comment-content p:last-child {
       margin-bottom: 0;
   }
   
   /* Comment reply link styling */
   .comment-reply-link {
       font-size: 0.85em;
       font-weight: 600;
       text-decoration: none;
       color: var(--solanawp-primary-accent-color);
       border: 1px solid var(--solanawp-primary-accent-color);
       padding: 6px 12px;
       border-radius: 6px;
       transition: all 0.3s ease;
       display: inline-block;
       margin-top: 0.5em;
   }
   
   .comment-reply-link:hover {
       background-color: var(--solanawp-primary-accent-color);
       color: white !important;
       text-decoration: none;
       transform: translateY(-1px);
       box-shadow: 0 2px 8px var(--solanawp-primary-accent-color-rgba-015);
   }
   
   .reply .comment-reply-link {
       font-size: 0.85em;
       font-weight: 600;
       text-decoration: none;
       border: 1px solid #93c5fd;
       padding: 4px 8px;
       border-radius: 6px;
       transition: background-color 0.3s ease, color 0.3s ease;
   }
   
   .reply .comment-reply-link:hover {
       background-color: var(--solanawp-primary-accent-color);
       color: white !important;
       border-color: var(--solanawp-primary-accent-color);
   }
   
   /* Comment form styling */
   .comment-respond {
       margin-top: 2em;
       padding: 24px;
       background: white;
       border-radius: 12px;
       border: 1px solid #e5e7eb;
       box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
   }
   
   .comment-reply-title {
       font-size: 1.5em;
       color: #1f2937;
       margin-bottom: 1em;
       border-bottom: 1px solid #e5e7eb;
       padding-bottom: 0.5em;
   }
   
   .comment-form label {
       display: block;
       margin-bottom: 0.3em;
       font-weight: 600;
       color: #374151;
   }
   
   .comment-form input[type="text"],
   .comment-form input[type="email"],
   .comment-form input[type="url"],
   .comment-form textarea {
       width: 100%;
       padding: 12px 15px;
       margin-bottom: 1em;
       border: 1px solid #d1d5db;
       border-radius: 8px;
       background-color: #f9fafb;
       transition: border-color 0.3s ease, box-shadow 0.3s ease;
   }
   
   .comment-form .comment-notes,
   .comment-form .logged-in-as {
       font-size: 0.85em;
       color: #6b7280;
       margin-bottom: 1em;
   }
   
   .form-submit .submit:hover {
       transform: translateY(-2px);
   }
   
   .widget-area .widget { margin-bottom: 24px; background: #fff; padding: 20px 24px; border-radius: 16px; box-shadow: 0 4px 16px rgba(0,0,0,0.08); border: 1px solid #f1f5f9; overflow: hidden; }
   .widget-area .widget .widget-title { font-size: 18px; font-weight: bold; color: #1f2937; margin: -20px -24px 20px -24px; padding: 15px 24px; border-bottom: 1px solid #e5e7eb; background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%); }
   .widget-area .widget ul { list-style: none; padding-left: 0; margin-bottom: 0; }
   .widget-area .widget ul li { padding: 8px 0; border-bottom: 1px dashed #f1f5f9; font-size: 0.95em; }
   .widget-area .widget ul li:last-child { border-bottom: none; padding-bottom: 0; }
   .widget-area .widget ul li a { color: #374151; text-decoration: none; }
   .widget-area .widget select { width: 100%; padding: 10px; border: 1px solid #d1d5db; border-radius: 8px; background-color: #f9fafb; }
   .widget-area .widget_search .search-form { display: flex; gap: 8px; }
   .widget-area .widget_search .search-field { flex-grow: 1; padding: 10px 15px; border: 1px solid #d1d5db; border-radius: 8px; background-color: #f9fafb; }
   .widget-area .widget.ad-banner .widget-title, .widget-area .widget.ad-banner.small .widget-title { display: none; }
   
   .read-more-button { display: inline-block; padding: 10px 20px; color: white !important; text-decoration: none; border-radius: 8px; font-weight: 600; transition: background-color 0.3s ease, color 0.3s ease; }
   .read-more-button:hover { text-decoration: none !important; color: white !important; }
   
   .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
   .screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; clip-path: none; color: #21759b; display: block; font-size: 14px; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
   .alignright { float: right; margin: 0 0 1em 1.5em; }
   .alignleft { float: left; margin: 0 1.5em 1em 0; }
   .aligncenter { display: block; margin-left: auto; margin-right: auto; margin-bottom: 1em; }
   .clear:before, .clear:after, .entry-content:before, .entry-content:after, .comment-content:before, .comment-content:after, .site-content:before, .site-content:after { content: ""; display: table; table-layout: fixed; }
   .clear:after, .entry-content:after, .comment-content:after, .site-content:after { clear: both; }
   
   /* =============================================================================
      DEACTIVATED: Community Section - Keep for future updates
      ============================================================================= */
   
   #communityInteractionCard {
       display: none !important;
   }
   
   /* Optional: Hide community-related elements if they exist elsewhere */
   .community-section,
   .community-stats,
   .community-interactions,
   .sentiment-breakdown,
   .recent-mentions {
       display: none !important;
   }
   
   .affiliate-section {background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);border-radius: 12px;padding: 20px;margin: 20px 0 0 0;border: 1px solid #0ea5e9;}
   .affiliate-section:last-child { margin-bottom: 0 !important;}
   .affiliate-title {color: #0c4a6e;font-weight: bold;margin-bottom: 12px;font-size: 1.1em;}
   .affiliate-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));gap: 12px;}
   .affiliate-item {background: white;padding: 12px;border-radius: 8px;text-align: center;border: 1px solid #bae6fd;transition: all 0.3s ease;}
   .affiliate-item a {text-decoration: none;color: inherit;display: block;}
   .affiliate-item:hover {transform: translateY(-2px);box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);}
   .affiliate-item strong {display: block;margin-bottom: 4px;}
   .affiliate-item .affiliate-description {font-size: 12px;color: #0c4a6e;}
   
   /* =============================================================================
      AFFILIATE SECTION RESIZING - 15% REDUCTION
      ============================================================================= */
   
   /* Enhanced styling for the resized affiliate section */
   .affiliate-section-resized {
       /* Additional styling for better appearance when resized */
       box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
       transition: all 0.3s ease;
   }
   
   .affiliate-section-resized:hover {
       box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
       transform: scale(0.85) translateY(-2px) !important;
   }
   
   .final-scores-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));gap: 24px;margin-bottom: 24px;}
   .score-item {text-align: center;}
   .score-icon-wrapper {display: inline-flex;align-items: center;justify-content: center;width: 64px;height: 64px;border-radius: 50%;margin-bottom: 12px;}
   .score-item.trust .score-icon-wrapper { background: #dbeafe; } .score-item.trust .icon { color: #2563eb; }
   .score-item.reliability .score-icon-wrapper { background: #e9d5ff; } .score-item.reliability .icon { color: #7c3aed; }
   .score-item.rating .score-icon-wrapper { background: #dcfce7; } .score-item.rating .icon { color: #059669; }
   .score-value {font-size: 48px;font-weight: bold;}
   .score-item.trust .score-value { color: #2563eb; } .score-item.reliability .score-value { color: #7c3aed; } .score-item.rating .score-value { color: #059669; }
   .score-label {color: #6b7280;margin-top: 4px;}
   .summary-box {background: #f9fafb;border-radius: 12px;padding: 16px;border: 1px solid #e5e7eb;}
   .summary-box h3 {font-size: 18px;font-weight: 600;color: #1f2937;margin-top: 0;margin-bottom: 8px;}
   .summary-box p {color: #374151;margin-bottom: 0;line-height: 1.7;}
   
   /* === RESPONSIVE DESIGN BREAKPOINTS === */
   @media (max-width: 1200px) {
       .main-container {
           grid-template-columns: 280px 1fr 280px;
           gap: 20px;
           padding: 20px 80px; /* Reduced edge spacing for smaller screens */
       }
       .content-area-banner {
           width: calc(100vw - 160px);
           max-width: calc(100vw - 160px);
           margin: 80px auto;
       }
   }
   
   @media (max-width: 1024px) {
       .main-container {
           grid-template-columns: 1fr;
           gap: 16px;
           padding: 16px 40px; /* Further reduced for tablets */
       }
       .sidebar, .sidebar-right {
           order: -1;
           display: grid;
           grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
           gap: 16px;
       }
       .content-area {
           order: 0;
           min-width: auto;
       }
       .ad-banner { height: 120px !important; }
       .content-area-banner {
           width: calc(100vw - 80px);
           max-width: calc(100vw - 80px);
           margin: 40px auto;
       }
   }
   
   @media (max-width: 768px) {
       .main-container {
           padding: 12px 20px; /* Mobile edge spacing */
       }
       .sidebar, .sidebar-right {
           grid-template-columns: 1fr;
       }
       .content-area-banner {
           width: calc(100vw - 40px);
           max-width: calc(100vw - 40px);
           margin: 20px auto;
       }
   
       .comment-list .children { /* Reduce indentation for nested comments */
           padding-left: 1em;
           margin-left: 0.5em;
       }
   }
   
   @media (max-width: 480px) {
       .main-container {
           padding: 8px 10px; /* Minimal mobile spacing */
       }
   
       .form-submit .submit {
           width: 100%;
           padding: 12px;
       }
   
       .score-icon-wrapper {
           width: 50px;
           height: 50px;
       }
       .score-icon-wrapper svg {
           width: 24px;
           height: 24px;
       }
   
       /* Responsive adjustments for resized affiliate section */
       .affiliate-section-resized {
           width: 95% !important; /* Even larger on very small screens */
           transform: scale(0.95) !important;
       }
   }
   
   /* Responsive adjustments for resized affiliate section */
   @media (max-width: 768px) {
       .affiliate-section-resized {
           width: 90% !important; /* Slightly larger on mobile for better readability */
           transform: scale(0.9) !important;
       }
   }