/*
	Theme Name:	XTRA Child
	Theme URI:	https://xtratheme.com/
	Description:Multipurpose Theme
	Author:		Codevz
	Author URI:	https://codevz.com/
	Template:	xtra
	Version:	1.0
*/
/* ============================================= */
/* YEKTAINVEST THEME STYLES - COMPLETE & FINAL   */
/* ============================================= */

/* Root Variables: All theme-wide variables defined in one place */
:root {
    --primary-blue: #1eb980; /* Main theme color (Green-Blue) */
    --primary-blue-rgb: 30, 185, 128; /* RGB values for --primary-blue */
    --text-dark: #0F172A; /* Dark text for headings, strong elements */
    --text-body: #334155; /* Default text color for body, paragraphs */
    --text-light: #64748B; /* Lighter text for subtitles, less emphasis */
    --bg-light: #F8FAFC; /* Light background color, often for cards or sections */
    --border-color: #E2E8F0; /* Default border color */
    --star-filled: #F59E0B; /* Color for filled stars (rating) */
    --star-empty: #E2E8F0; /* Color for empty stars (rating) */
    --white: #FFFFFF; /* White color */
    --disclaimer-bg: #F1F5F9; /* Background for disclaimer/notice areas */
    --sticky-header-height: 56px; /* Default/approximate height of a sticky header */
    /* Offset for sticky sidebar, based on sticky header height + padding */
    --sticky-sidebar-top-offset: calc(var(--sticky-header-height) + 100px); 
}

/* --- Base Styles --- */
html {
    scroll-behavior: smooth; /* Enables smooth scrolling for anchor links */
    /* Adjusts scroll position for fixed headers when navigating to anchors */
    scroll-padding-top: var(--sticky-header-height); 
}

body {
    font-family: 'Vazirmatn', sans-serif; /* Your chosen Persian font */
    margin: 0;
    background-color: var(--bg-light); /* Using root variable for consistency */
    direction: rtl; /* Right-to-left text direction */
    text-align: right; /* Default text alignment */
    color: var(--text-body); /* Using root variable for consistency */
}

/* Universal box-sizing for consistent layout */
* { box-sizing: border-box; }

/* General page container for most content, including archives and single posts */
.page-container,
.broker-archive-container, /* Also applies to broker archive */
.exchange-archive-container, /* Also applies to exchange archive */
.propfirm-archive-container /* Also applies to prop firm archive */
{
    max-width: 1440px; /* Maximum content width */
    margin: 0 auto; /* Centers the container */
    padding: 24px; /* Internal padding */
}

/* Font Awesome Icon Base Styling: Ensures consistent display for all FA icons */
i.fa-solid, i.fa-brands, i.fa-regular {
    display: inline-block; /* Essential for sizing and alignment */
    line-height: 1; /* For vertical alignment */
    text-align: center;
    vertical-align: middle; /* Aligns icons with surrounding text */
}

/* =================================================================== */
/* BREADCRUMB HEADER                                                 */
/* =================================================================== */
.breadcrumb-header {
    margin-bottom: 24px;
}
.breadcrumb-header nav {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 500;
}
.breadcrumb-header a {
    text-decoration: none;
    color: var(--text-light);
}
.breadcrumb-header a:hover {
    color: var(--primary-blue);
}
/* Font Awesome icon for breadcrumb arrow */
.breadcrumb-header nav span i {
    color: var(--text-light);
    font-size: 13px; /* Matches breadcrumb font size */
}

/* =================================================================== */
/* PDP BANNER (Product/Post Detail Page Banner - for single posts)   */
/* =================================================================== */
.pdp-page__banner-wrapper { width: 100%; margin-bottom: 32px; }
.pdp-page__banner {
    background-color: var(--white);
    border-radius: 16px;
    padding: 24px;
    display: grid;
    grid-template-columns: 300px 1fr 280px; /* Layout for banner sections */
    gap: 24px;
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.pdp-page__banner__actions { grid-column: 1 / 2; display: flex; flex-direction: column; gap: 16px; }
.pdp-page__banner__content { grid-column: 2 / 3; display: flex; flex-direction: column; gap: 16px; }
.pdp-page__banner__info { grid-column: 3 / 4; display: flex; flex-direction: column; gap: 16px; }

/* --- Header & Details within PDP Banner --- */
.pdp-page__banner__header { display: flex; justify-content: space-between; align-items: flex-start; }
.pdp-page__banner__header h2 { margin: 0; font-size: 22px; font-weight: 800; color: var(--text-dark); }
.yit-broker-ad-badge { /* Ad badge for PDP, similar to archive tags */
    background-color: rgba(var(--primary-blue-rgb), 0.1);
    color: var(--primary-blue);
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    align-self: flex-start;
    margin-bottom: 8px;
}

.pdp-details-style h1 { font-size: 16px; font-weight: 700; color: var(--text-dark); margin: 0 0 12px 0; }
.pdp-details-style p { font-size: 14px; line-height: 1.8; margin: 0; }
.pdp-page_deposite { font-size: 14px; }
.pdp-page_deposite p { margin: 0; display: block; }
.pdp-page_deposite strong { font-weight: 700; color: var(--text-dark); }

.pdp-page__banner__details__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.pdp__tag--gray, .pdp-page__toggle { /* General tag and toggle button styles */
    background-color: var(--bg-light); border: 1px solid var(--border-color); color: var(--text-body); 
    padding: 6px 12px; border-radius: 6px; font-size: 13px; font-weight: 500; white-space: nowrap; 
}
.pdp-page__toggle { color: var(--primary-blue); cursor: pointer; background-color: transparent; }
.hidden-features { display: none; gap:8px; } /* Used for collapsible content on PDP */

/* --- Rating & Info List within PDP Banner --- */
.pdp-page__banner__rate__comp, .pdp-page__banner-details-list { /* Shared styles for info boxes */
    background-color: var(--bg-light); border: 1px solid var(--border-color); border-radius: 12px; padding: 16px; 
}
.pdp-page__banner__rate__comp { display: flex; flex-direction: column; gap: 8px; }
.pdp-page__banner__rate__comp-row { display: flex; justify-content: space-between; align-items: center; }
.header-icons i { color: var(--text-light); font-size: 24px; }
.pdp-page__banner-rate { margin: 0; font-weight: 700; color: var(--text-dark); font-size: 14px; }
.pdp-page__banner-submit { /* Style for submitting a review */
    display: flex; align-items: center; gap: 6px; color: var(--primary-blue); font-size: 13px; 
    font-weight: 700; cursor: pointer; 
}
.pdp-page__banner-submit i { font-size: 16px; color: var(--primary-blue); }
.score-row { align-items: flex-end; }
.pdp-page__banner-total { font-size: 32px; font-weight: 800; color: var(--text-dark); line-height: 1; }
.review-count { font-size: 13px; font-weight: 500; color: var(--text-light); margin-right: 4px;}
.pdp-page__banner-stars { display: flex; gap: 2px; }
.pdp-page__banner-stars .star path { fill: var(--star-filled); }
.pdp-page__banner-stars .star.partial path { fill: url(#partial-star-fill); } /* SVG mask for half stars */

.pdp-page__banner-details-list { padding: 8px 16px; }
.pdp-page__banner-details-row { /* Rows for detailed info list */
    display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--border-color); 
}
.pdp-page__banner-details-row:last-child { border-bottom: none; }
.pdp-page__banner-details-row span { font-size: 14px; font-weight: 500; color: var(--text-light); }
.pdp-page__banner-details-row small { font-weight: 500; color: var(--text-dark); font-size: 14px; }

/* --- Actions Column Elements within PDP Banner --- */
.pdp-page__banner-image { /* Image/logo container in banner */
    padding: 16px; border: 1px solid var(--border-color); border-radius: 12px; 
    display: flex; justify-content: center; align-items: center; 
}
.pdp-page__banner-image img { max-width: 100%; height: auto; }
.pdp__btn--blue { /* Primary action button style */
    display: flex; align-items: center; justify-content: center; gap: 8px; 
    background-color: var(--primary-blue); color: var(--white); padding: 12px; 
    border-radius: 8px; text-decoration: none; font-size: 15px; font-weight: 700; 
    transition: background-color 0.3s ease; 
}
.pdp__btn--blue:hover { background-color: #179b6b; } /* Darker green on hover */
.pdp__btn--blue i { font-size: 20px; color: var(--white); }
.pdp-page__regulatory-and-compare-btns { display: flex; gap: 12px; }
.pdp__btn--gray { /* Secondary action button style */
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px; 
    background-color: var(--white); color: var(--text-body); padding: 12px; 
    border-radius: 8px; font-size: 14px; font-weight: 700; border: 1px solid var(--border-color); 
    cursor: pointer; transition: background-color 0.3s ease; 
}
.pdp__btn--gray:hover { background-color: var(--bg-light); }
.pdp__btn--gray i { font-size: 20px; color: var(--text-body); }
.pdp-page__desc { /* Disclaimer/description box */
    display: flex; align-items: flex-start; gap: 12px; background-color: var(--disclaimer-bg); 
    padding: 16px; border-radius: 8px; 
}
.pdp-page__desc i { flex-shrink: 0; font-size: 16px; color: var(--text-light); margin-top: 4px; }
.pdp-page__desc p { margin: 0; font-size: 13px; line-height: 1.6; color: var(--text-light); }

/* =================================================================== */
/* MAIN CONTENT AREA - STICKY HEADER WITH TABS (Single Post Display) */
/* =================================================================== */
.main-content-area { width: 100%; }

/* Sticky header containing review prompt and navigation tabs */
.page-header-with-tabs {
    position: sticky;
    top: 84px; /* Sticks below the main site header */
    z-index: 10; /* Ensures it stays on top of other content */
    background-color: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    margin-bottom: 24px;
    
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
}

.review-prompt-area {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 0;
    flex-shrink: 0; /* Prevents shrinking when space is tight */
}
.review-prompt-area p { font-size: 14px; font-weight: 500; color: var(--text-body); margin: 0; }
.review-prompt-area .rating-stars { display: flex; flex-direction: row-reverse; gap: 2px; }
.review-prompt-area .rating-stars i { color: #D1D5DB; font-size: 24px; } /* Empty stars for user interaction */

.main-page-nav-tabs { padding: 0; margin: 0; }
.main-page-nav-tabs ul { display: flex; list-style: none; margin: 0; padding: 0; gap: 20px; }
.main-page-nav-tabs .nav-item { /* Style for individual navigation tabs */
    display: flex; align-items: center; gap: 8px; padding: 16px 0; text-decoration: none;
    font-size: 14px; font-weight: 700; color: var(--text-body); border-bottom: 3px solid transparent;
    transition: all 0.2s ease-in-out; margin-bottom: -2px; /* Pulls up to align with border */
}
.main-page-nav-tabs .nav-item:hover { color: var(--primary-blue); }
.main-page-nav-tabs .nav-item.active { color: var(--primary-blue); border-bottom-color: var(--primary-blue); }
.main-page-nav-tabs .nav-item i { font-size: 20px; color: inherit; }

/* --- Main Grid for Content and Sidebar (Single Post Display) --- */
.main-content-grid {
    display: grid;
    grid-template-columns: 320px 1fr; /* Sidebar fixed width, content takes rest */
    gap: 24px;
    align-items: stretch; /* Makes sure columns are equal height */
    margin-bottom: 32px;
}

.main-sidebar {
    grid-column: 1 / 2;
    z-index: 5; /* Ensures sidebar content is above other layers if needed */
}

.tab-content-container { /* Container for the main content tabs */
    grid-column: 2 / 3;
    min-width: 0; /* Prevents grid cell from expanding due to large content */
    overflow: hidden; /* Clips any content that still tries to escape, as a fallback */
}
.tab-content-container .tab-pane { margin-top: 24px; } /* Spacing between content sections */
.tab-content-container .tab-pane:first-child { margin-top: 0; }

/* General card style for sections within tab content */
.card { 
    background-color: var(--white); border-radius: 16px; padding: 24px; 
    border: 1px solid var(--border-color); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03); 
}
.account-info-header { /* Header for account/plan info sections */
    display: flex; justify-content: space-between; align-items: center; 
    padding-bottom: 16px; border-bottom: 1px solid var(--border-color); margin-bottom: 24px; 
}
.account-header-left { display: flex; align-items: center; gap: 24px; }
.account-header-left h2 { margin: 0; font-size: 20px; font-weight: 800; color: var(--text-dark); }
.account-tabs ul { display: flex; list-style: none; margin: 0; padding: 0; gap: 20px; }
.account-tabs a { /* Tabs for different account types/plans */
    text-decoration: none; font-size: 14px; font-weight: 700; color: var(--text-light); 
    padding-bottom: 18px; position: relative; transition: color 0.2s; 
}
.account-tabs a:hover { color: var(--primary-blue); }
.account-tabs a.active { color: var(--primary-blue); border-bottom: 2px solid var(--primary-blue); }
.open-account-btn { /* Button to open an account */
    display: flex; align-items: center; justify-content: center; gap: 8px; 
    background-color: var(--white); color: var(--text-body); padding: 8px 16px; 
    border: 1px solid var(--border-color); border-radius: 8px; text-decoration: none; 
    font-size: 14px; font-weight: 700; transition: background-color 0.2s; 
}
.open-account-btn:hover { background-color: var(--primary-blue); color: var(--white); }
.open-account-btn i { font-size: 16px; color: inherit; }

.account-details-grid-wrapper { overflow-x: auto; } /* For responsive tables */
.account-details-content-pane { /* Content pane for account details (managed by JS) */ }
.account-details-grid { /* Grid for displaying account/plan features */
    display: grid; grid-template-columns: repeat(3, auto 1fr); border: 1px solid var(--border-color); 
    border-radius: 12px; overflow: hidden; min-width: 800px; /* Ensures minimum width for table-like layout */
}
.account-details-grid .grid-col { display: contents; } /* Makes grid items act as direct children of the grid */
.grid-title, .grid-value { padding: 16px; font-size: 14px; line-height: 1.5; border-bottom: 1px solid var(--border-color); white-space: nowrap; }
.grid-title { background-color: var(--bg-light); font-weight: 700; color: var(--text-body); border-left: 1px solid var(--border-color); }
.grid-col:first-of-type .grid-title { border-left: none; }
.grid-value { color: var(--text-dark); }
.grid-col .grid-title:last-of-type, .grid-col .grid-value:last-of-type { border-bottom: none; }

/* =================================================================== */
/* SIDEBAR ACCORDION / COLLAPSIBLE SECTIONS (Single Post Display)    */
/* =================================================================== */
.sidebar-section { 
    padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--border-color); 
}
.sidebar-section:last-of-type { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }

/* Clickable header for collapsible sidebar sections */
.sidebar-toggle-header {
    display: flex; justify-content: space-between; align-items: center; padding: 10px 0; 
    cursor: pointer; user-select: none;
}
.sidebar-toggle-header h3 { margin: 0; font-size: 16px; font-weight: 800; color: var(--text-dark); }
.sidebar-toggle-header i { font-size: 16px; color: var(--text-light); transition: transform 0.2s ease-in-out; }
.sidebar-section.expanded .sidebar-toggle-header i { transform: rotate(180deg); } /* Rotates icon when expanded */

/* Inner sections for grouped content within sidebar accordion */
.sidebar-section-inner {
    padding-top: 20px; border-top: 1px solid var(--border-color); margin-top: 20px;
}
.sidebar-section-inner:first-child { border-top: none; padding-top: 0; margin-top: 0; }
.sidebar-section-inner h4 { margin: 0 0 16px 0; font-size: 15px; font-weight: 700; color: var(--text-dark); }

.contact-info, .link-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 16px; }
.contact-info li, .link-list li a { display: flex; align-items: center; gap: 12px; font-size: 14px; text-decoration: none; color: var(--text-body); }
.link-list li a:hover, .contact-info a:hover { color: var(--primary-blue); } /* Shared hover for links */
.contact-info i, .link-list i { font-size: 16px; color: var(--text-light); flex-shrink: 0; }
.social-icons { display: flex; justify-content: flex-end; gap: 12px; }
.social-icons a { 
    display: flex; justify-content: center; align-items: center; width: 36px; height: 36px; 
    border: 1px solid var(--border-color); border-radius: 50%; color: var(--text-light); transition: all 0.2s ease; 
}
.social-icons a:hover { color: var(--primary-blue); border-color: var(--primary-blue); background-color: #EFF6FF; }
.social-icons a i { font-size: 18px; }
.address-text { margin: 0; font-size: 14px; line-height: 1.8; }
.sidebar-cta-btn { /* Call to action button in sidebar */
    display: flex; align-items: center; justify-content: center; gap: 8px; 
    background-color: var(--primary-blue); color: var(--white); padding: 12px; 
    border-radius: 8px; text-decoration: none; font-size: 14px; font-weight: 700; 
    width: 100%; margin-top: 20px; transition: background-color 0.3s ease; 
}
.sidebar-cta-btn:hover { background-color: #179b6b; }
.sidebar-cta-btn i { font-size: 20px; color: var(--white); }

/* General styles for collapsible content sections */
.collapsible-content {
    max-height: 0; overflow: hidden; transition: max-height 0.3s ease-out, opacity 0.3s ease-out; 
    opacity: 0; pointer-events: none; /* Disable interaction when hidden */
}
.collapsible-content.expanded {
    max-height: 1000px; /* Sufficiently large to fit content */
    opacity: 1; pointer-events: auto;
}
.sidebar-section .collapsible-content.expanded { margin-top: 16px; } /* Specific spacing */
.toc-list-wrapper.collapsible-content.expanded { margin-top: 15px; padding-bottom: 5px; }

/* Table of Contents Card (now sticky on single posts) */
.toc-card {
    margin-top: 24px;
    position: -webkit-sticky;
    position: sticky;
    top:var(--sticky-sidebar-top-offset); /* Sticks with offset from sticky header */
}

/* Accordion toggle for Table of Contents */
.toc-accordion { 
    display: flex; justify-content: space-between; align-items: center; 
    padding: 12px 16px; background-color: var(--bg-light); border-radius: 8px; 
    cursor: pointer; user-select: none;
}
.toc-accordion i { font-size: 16px; transition: transform 0.2s ease-in-out; }
.toc-accordion.expanded i { transform: rotate(180deg); }

/* --- Table of Contents List Styling --- */
.toc-list-wrapper ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.toc-list-wrapper ul li a {
    display: block; padding: 8px 0; text-decoration: none; color: var(--text-body);
    font-size: 14px; font-weight: 500; transition: color 0.2s ease, background-color 0.2s ease;
    border-radius: 44px; position: relative; padding-right: 0;
}
.toc-list-wrapper ul li a:hover { color: var(--primary-blue); background-color: var(--bg-light); }
.toc-list-wrapper ul li a.active { 
    color: var(--primary-blue); font-weight: 700; 
    background-color: rgba(var(--primary-blue-rgb), 0.1); 
}

/* Specific indentation for different heading levels (RTL) */
.toc-list-wrapper ul li a[style*="padding-right: 15px"] { padding-right: 15px !important; }
.toc-list-wrapper ul li a[style*="padding-right: 30px"] { padding-right: 30px !important; }

/* --- Review Content Section Styling (Main content area for single posts) --- */
.review-content-section { width: 100%; overflow-wrap: break-word; word-wrap: break-word; hyphens: auto; }
.review-content-section * { text-align: right !important; } /* Ensures RTL for all content */
.review-content-section img { max-width: 100%; height: auto; border-radius: 8px; margin: 1em 0; }
.review-content-section pre {
    white-space: pre-wrap; word-wrap: break-word; overflow-x: auto; 
    background-color: var(--disclaimer-bg); padding: 15px; border-radius: 8px; 
    border: 1px solid var(--border-color);
}
.review-content-section .table-responsive-wrapper { 
    overflow-x: auto; margin-bottom: 1.5em; border: 1px solid var(--border-color); border-radius: 8px; 
}
.review-content-section table { width: 100%; min-width: 600px; border-collapse: collapse; }
.review-content-section th, .review-content-section td { border: 1px solid var(--border-color); padding: 10px 15px; text-align: right; vertical-align: top; }
.review-content-section th { background-color: var(--bg-light); font-weight: 700; }
.review-content-section tr:nth-child(even) { background-color: var(--bg-light); }
.review-content-section ul, .review-content-section ol { padding-right: 20px; margin: 1em 0; }
.review-content-section li { margin-bottom: 0.5em; }

/* Heading styles within review content */
.review-content-section h1 .review-content-section h2, .review-content-section h3, .review-content-section h4, .review-content-section h5, .review-content-section h6 {
    text-align: right !important; font-weight: 800;
}
.review-content-section h2 { 
    font-size: 24px; color: var(--text-dark); margin-top: 30px; margin-bottom: 15px;  padding-bottom: 10px; 
}
.review-content-section h1 { 
    font-size: 28px; color: var(--text-dark); margin-top: 30px; margin-bottom: 15px; padding-bottom: 10px; 
}
.review-content-section h3 { font-size: 20px; font-weight: 700; color: var(--text-dark); margin-top: 25px; margin-bottom: 10px; }
.review-content-section h4 { font-size: 18px; font-weight: 600; color: var(--text-dark); margin-top: 20px; margin-bottom: 8px; }

/* Logos Section (e.g., partners logos) */
.logos-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 16px; margin-top: 24px; margin-bottom: 24px; }
.logo-card {
    background-color: var(--white); border: 1px solid var(--border-color); border-radius: 12px;
    padding: 0px 10px; display: flex; justify-content: center; align-items: center; height: 80px;
}
.logo-card img { width: 100%; height: 100%; object-fit: contain; }
.logo-card a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; text-decoration: none; }


/* ============================================= */
/* ARCHIVE PAGES - GENERAL LAYOUT & FILTERS      */
/* (Applied to Broker, Exchange, Prop Firm)      */
/* ============================================= */

/* 1. General Page Layout (Shared across all archives) */
.archive-main-content { 
    display: grid !important; 
    grid-template-columns: 280px 1fr; /* Sidebar width and main content width */
    gap: 15px !Important; 
    align-items: flex-start; /* Aligns items to the top of their grid cell */
}
.broker-list-wrapper, .exchange-list-wrapper, .propfirm-list-wrapper { 
    grid-column: 2 / 3; /* Places list in the second grid column */
}
.archive-sidebar { 
    grid-column: 1 / 2; 
    grid-row: 1; /* Ensures sidebar is in the first row */
    position: sticky; /* Makes sidebar sticky */
    top: var(--sticky-sidebar-top-offset); /* Sticks with offset from sticky header */
}
/* 2. Featured Logos Bar (Carousel Version) */
.featured-logos-bar {
    margin-bottom: 24px;
    background-color: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 16px 0;
    overflow: hidden; /* Important: hide any potential overflow from Swiper */
}

.featured-logos-swiper .swiper-wrapper {
    align-items: center; /* Vertically center logos in the slider */
}

.featured-logos-swiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
    width: auto; /* Let Swiper control the width */
}

.featured-logo-item img {
    max-height: 65px;
    width: auto;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.6;
    transition: all 0.3s ease;
}

.featured-logo-item:hover img {
    filter: grayscale(0%);
    opacity: 1;
}

/* 3. Toolbar (Sorting & View Toggle) (Shared across all archives) */
.archive-toolbar { 
    display: flex; justify-content: space-between; align-items: center; 
    margin-bottom: 24px; padding: 12px 16px; 
    background-color: var(--white); border: 1px solid var(--border-color); 
    border-radius: 12px; 
}
.toolbar-left, .toolbar-center, .toolbar-right { display: flex; align-items: center; gap: 12px; }
.sort-link { text-decoration: none; color: var(--text-body); font-size: 14px; font-weight: 500; padding: 4px 8px; border-radius: 6px; }
.sort-link.active, .sort-link:hover { color: var(--primary-blue); font-weight: 700; }
.results-count { font-size: 14px; color: var(--text-light); }

/* Mobile Filter Toggle Button in Toolbar (Shared across all archives) */
#mobile-filter-toggle {
    display: none; /* Hidden on desktop */
    background-color: var(--primary-blue); color: var(--white); padding: 8px 16px;
    border-radius: 8px; font-weight: 700; cursor: pointer; font-size: 14px; border: none;
    align-items: center; gap: 8px; transition: background-color 0.2s ease;
}
#mobile-filter-toggle:hover { background-color: #179b6b; }
#mobile-filter-toggle i { margin-right: 4px; }

/* View Toggle Buttons (Grid/List) (Shared across all archives) */
.view-toggle { 
    background: var(--white); border: 1px solid var(--border-color); color: var(--text-light); 
    border-radius: 8px; padding: 8px 10px; cursor: pointer; transition: all 0.2s ease; 
}
.view-toggle.active { 
    background-color: #e4fff5; color: var(--primary-blue); border-color: #c1f7e4; 
    box-shadow: 0 1px 2px rgba(0,0,0,0.05); 
}
.view-toggle:not(.active):hover { background-color: var(--bg-light); }

/* 4. Filter Sidebar Header (Shared across all archives) */
.sidebar-filter-header {
    background-color: var(--white); border: 1px solid var(--border-color);
    border-radius: 12px; padding: 12px 16px; display: flex;
    justify-content: space-between; align-items: center; margin-bottom: 16px;
}
.filter-count-badge {
    background-color: #eafbf4; color: #1eb980; padding: 6px 12px;
    border-radius: 8px; font-size: 14px; font-weight: 600;
}
.clear-all-filters-btn {
    background: none; border: none; color: #ef4444; font-weight: 600;
    cursor: pointer; font-size: 14px; display: flex; align-items: center;
    gap: 8px; transition: color 0.2s ease;
}
.clear-all-filters-btn:hover { color: #dc2626; }
.clear-all-filters-btn i { font-size: 14px; }

/* 5. Card Grid and Individual Card Styling (Shared across all archives) */
.broker-grid { /* This class is used for all CPTs grids (broker, exchange, prop firm) */
    display: grid; 
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); /* Responsive grid columns */
    gap: 24px; 
    transition: grid-template-columns 0.3s ease; 
}

/* Base card styling (Applied to broker, exchange, prop firm cards) */
.broker-card, .exchange-card, .propfirm-card { 
    background-color: var(--white); border: 1px solid var(--border-color); 
    border-radius: 16px; padding: 16px; 
    display: flex; flex-direction: column; 
    transition: all 0.2s ease-in-out; 
    border-top: 4px solid #e0f2f1; /* Default border top color */
}



/* Hover effect for all card types */
.broker-card:hover, .exchange-card:hover, .propfirm-card:hover { 
    transform: translateY(-5px); box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.07); 
    border-color: var(--primary-blue); 
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.07);
    border-top-color: var(--primary-blue) !important; /* Ensure hover changes border-top for all */
}
.broker-card, .exchange-card, .propfirm-card {
    box-shadow: 0px 10px 13px -7px rgba(30, 185, 128, 0.93);
}
/* Common elements within cards */
.card-header { min-height: 24px; margin-bottom: 12px; } 
.card-tags { display: flex; justify-content: flex-end; gap: 8px; } 
.card-tag { font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 6px; } 
.tag-popular { background-color: rgba(30, 185, 128, 0.1); color: #15803d; } 
.tag-ad { background-color: rgba(245, 158, 11, 0.1); color: #b45309; }
.card-logo { text-align: center; margin-bottom: 20px; min-height: 50px; display: flex; align-items: center; justify-content: center; } 
.card-logo img { max-height: 90px; width: auto; max-width: 150px; object-fit: contain; } 
.card-main-info { display: flex; justify-content: space-between; align-items: center; padding-bottom: 16px; border-bottom: 1px solid var(--border-color); margin-bottom: 16px; } 
.card-title-group { text-align: right; } 
.card-rating-group { text-align: left; } 
.card-title { margin: 0; font-size: 20px; font-weight: 800; } 
.card-title a { text-decoration: none; color: var(--text-dark); } 
.card-title a:hover { color: var(--primary-blue); } 
.card-subtitle { margin: 4px 0 0; font-size: 13px; color: var(--text-light); } 
.card-rating-group .score { font-size: 20px; font-weight: 800; color: var(--text-dark); direction: ltr; display: inline-block; } 
.card-rating-group .score i { color: var(--star-filled); font-size: 16px; vertical-align: middle; margin-left: 2px; } 
.card-rating-group .votes { display: block; font-size: 12px; color: var(--text-light); margin-top: 4px; }
.card-meta { display: flex; justify-content: space-between; } 
.meta-item { display: flex; flex-direction: row-reverse; align-items: center; gap: 8px; } 
.meta-item span { font-size: 13px; color: var(--text-light); } 
.meta-item strong { font-size: 14px; font-weight: 700; color: var(--text-dark); }
.card-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: auto; } 
.btn { padding: 10px; border-radius: 8px; text-align: center; text-decoration: none; font-weight: 700; font-size: 14px; transition: all 0.2s ease-in-out; } 
.btn-secondary { background-color: var(--white); border:1px solid #b4bac2; color: var(--text-body); } 
.btn-secondary:hover { color: var(--primary-blue); background-color: #eafbf4; } 
.btn-primary { background-color: var(--white); border: 1px solid var(--primary-blue); color: var(--primary-blue); } 
.btn-primary:hover { background-color: var(--primary-blue); color: var(--white); } 
.btn-primary i { margin-right: 6px; font-size: 12px; }

/* 6. List View Styles (Shared across all archives) */
.broker-grid.list-view { grid-template-columns: 1fr; gap: 16px; }
/* List view specific styling for all card types */
.broker-grid.list-view .broker-card,
.broker-grid.list-view .exchange-card,
.broker-grid.list-view .propfirm-card { 
    display: grid; grid-template-columns: 100px 1fr auto auto; 
    grid-template-areas: "logo main-info meta actions"; 
    gap: 24px; align-items: center; padding: 16px 24px; border-top-width: 1px; 
}
/* No transform/shadow on hover in list view */
.broker-grid.list-view .broker-card:hover,
.broker-grid.list-view .exchange-card:hover,
.broker-grid.list-view .propfirm-card:hover { 
    transform: none; box-shadow: 0 4px 12px rgba(0,0,0,0.05); 
}
.broker-grid.list-view .card-header { display: none; }
.broker-grid.list-view .card-logo { grid-area: logo; margin-bottom: 0; padding-right: 60px; border-right: 1px solid var(--border-color); }
.broker-grid.list-view .card-main-info { grid-area: main-info; border-bottom: none; margin-bottom: 0; padding-bottom: 0; display: flex; flex-direction: row-reverse; justify-content: space-around; }
.broker-grid.list-view .card-meta { grid-area: meta; margin-bottom: 0; display: flex; gap: 24px; }
.broker-grid.list-view .card-actions { grid-area: actions; margin-top: 0; grid-template-columns: 1fr; gap: 8px; width: 140px; }
.broker-grid.list-view .meta-item { flex-direction: column; align-items: flex-start; gap: 4px; }

/* 7. Sidebar & Filters (Shared across all archives) */
.filter-widget { 
    background-color: var(--white); border: 1px solid var(--border-color); 
    border-radius: 12px; margin-bottom: 16px; 
}
.widget-header { display: flex; justify-content: space-between; align-items: center; padding: 20px; cursor: pointer; }
.widget-title { font-size: 16px; margin: 0; font-weight: 800; color: var(--text-dark); }
.toggle-arrow { transition: transform 0.2s ease; }
.widget-header.collapsed .toggle-arrow { transform: rotate(-90deg); } /* Chevron points left when collapsed in RTL */
.widget-content { padding: 0 20px 20px; }
.widget-content.collapsed { display: none; }
.filter-widget:first-child .widget-content { padding-top: 0; } /* No top padding for first widget's content */
.rating-filter-group { 
    display: flex; flex-direction: row-reverse; justify-content: space-between; 
    align-items: center; padding: 6px; border: 1px solid var(--border-color); 
    border-radius: 10px; gap:5px; 
}
.rating-filter-link { 
    flex-grow: 1; text-align: center; text-decoration: none; padding:2px 7px; 
    border-radius: 8px; font-size: 14px; font-weight: 600; color: var(--text-body); 
    transition: all 0.2s ease-in-out; display: flex; align-items: center; justify-content: center; gap: 4px; 
}
.rating-filter-link:hover:not(.active) { background-color:#eafbf4; color: var(--primary-blue); }
.rating-filter-link.active { 
    background-color: var(--primary-blue); color: var(--white); font-weight: 700; 
    box-shadow: 0 4px 10px -2px rgba(var(--primary-blue-rgb), 0.4); 
}
.rating-filter-link i.fa-star { font-size: 12px; color: #94a3b8; }
.rating-filter-link.active i.fa-star { color: var(--white); }
.checkbox-filter-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.checkbox-filter-list li { list-style: none; }
.checkbox-filter-list label { 
    display: flex; align-items: center; width: 100%; padding: 0px; 
    border-radius: 8px; cursor: pointer; transition: background-color 0.2s ease, color 0.2s ease; 
    position: relative; user-select: none; 
}
.checkbox-filter-list input[type="checkbox"] { position: absolute; opacity: 0; width: 0; height: 0; }
.checkbox-filter-list label::before { 
    content: ''; flex-shrink: 0; display: inline-block; width: 18px; height: 18px; 
    border: 2px solid var(--border-color); border-radius: 5px; margin-left: 12px; 
    background-color: var(--white); transition: all 0.2s ease; 
}
.checkbox-filter-list li:hover label { background-color: var(--bg-light); }
.checkbox-filter-list input[type="checkbox"]:checked + label { 
    background-color: rgba(var(--primary-blue-rgb), 0.1); color: var(--primary-blue); font-weight: 600; 
}
.checkbox-filter-list input[type="checkbox"]:checked + label::before { background-color: var(--primary-blue); border-color: var(--primary-blue); }
.checkbox-filter-list label::after { 
    content: ''; position: absolute; right: calc(12px + 9px - 14px); top: 45%; 
    width: 6px; height: 11px; border: solid white; border-width: 0 2.5px 2.5px 0; 
    transform: translateY(-60%) rotate(45deg); opacity: 0; transition: opacity 0.2s ease; 
}
.checkbox-filter-list input[type="checkbox"]:checked + label::after { opacity: 1; }
.styled-select { /* Styling for select dropdowns */
    width: 100%; padding: 12px; border-radius: 8px; border: 1px solid var(--border-color); 
    background-color: var(--white); font-size: 14px; -webkit-appearance: none; 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='%2364748B' 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"); 
    background-repeat: no-repeat; background-position: left 0.75rem center; background-size: 1em; cursor: pointer; 
}
#year-range-slider { height: 6px; margin: 30px 10px; border: none; box-shadow: none; } /* noUiSlider base styles */
.noUi-target { background: var(--border-color); border-radius: 3px; }
.noUi-connect { background: var(--primary-blue); }
.noUi-handle { /* Handle styling for noUiSlider */
    height: 20px; width: 20px; top: -7px; right: -10px; border-radius: 50%; 
    background: var(--primary-blue); border: 3px solid white; box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.2); cursor: grab; 
}
.noUi-handle:focus { outline: none; }
.noUi-handle::before, .noUi-handle::after { display: none; } /* Removes default handles */
.range-labels { display: flex; justify-content: space-between; margin-top: 10px; font-size: 14px; color: var(--text-body); }
.reset-link { 
    text-decoration: none; color: var(--text-light); font-weight: 500; 
    transition: color 0.2s ease; display: block; text-align: center; margin-top: 10px; font-size: 13px; 
}
.reset-link:hover { color: #ef4444; } /* Hover for reset link */

/* 8. AJAX Loading Styles (Shared across all archives) */
.broker-list-wrapper, .exchange-list-wrapper, .propfirm-list-wrapper { position: relative; } 
.loading-overlay { 
    position: absolute; top: 50px; left: 0; width: 100%; height: 100%; 
    background-color: rgba(255, 255, 255, 0.7); z-index: 10; display: flex; 
    align-items: center; justify-content: center; opacity: 0; visibility: hidden; 
    transition: opacity 0.3s ease, visibility 0.3s ease; border-radius: 16px; 
}
.loading-overlay.visible { opacity: 1; visibility: visible; }
.spinner { /* Loading spinner animation */
    width: 40px; height: 40px; border: 4px solid var(--border-color); border-top-color: var(--primary-blue); 
    border-radius: 50%; animation: spin 1s linear infinite; 
}
@keyframes spin { to { transform: rotate(360deg); } }


/* =================================================================== */
/* --- Ultimate Broker Comparison Page Styles (Fully Responsive) --- */
/* =================================================================== */

/* --- Root Variables for Easy Theming --- */
:root {
    --compare-winner-1-bg: #fffbe6;
    --compare-winner-1-border: #ffc107;
    --compare-winner-2-bg: #f5f5f5;
    --compare-winner-2-border: #bdbdbd;
    --compare-winner-3-bg: #fbe9e7;
    --compare-winner-3-border: #ff7043;
    --compare-border-color: #e0e0e0;
    --compare-bg-light: #f9f9f9;
}

/* --- Main Container --- */
.ultimate-compare { max-width: 100%; padding: 0; margin: 40px 0; }

/* --- Header Section --- */
.pro-compare-header { text-align: center; margin-bottom: 20px; padding: 0 20px; }
.pro-compare-header h1 { font-size: 2.5rem; margin-bottom: 10px; }
.compare-controls { display: flex; flex-direction: row; justify-content: center; align-items: center; margin-top: 20px; gap: 20px; }
.control-item { display: flex; align-items: center; }
.control-btn { background-color: #f0f0f0; border: 1px solid #ccc; padding: 8px 15px; border-radius: 8px; cursor: pointer; font-weight: 500; transition: all 0.2s; }
.control-btn:hover { background-color: #e0e0e0; }
.control-btn i { margin-left: 8px; }
.toggle-label { margin-right: 15px; user-select: none; font-weight: 500; }
.switch { position: relative; display: inline-block; width: 60px; height: 34px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; }
.slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 4px; bottom: 4px; background-color: white; transition: .4s; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,0.2); }
input:checked + .slider { background-color: #4caf50; }
input:checked + .slider:before { transform: translateX(26px); }

/* --- Desktop Styles (Horizontal Scroll) --- */
.multi-compare-wrapper { overflow-x: auto; padding: 20px; background: #fff; border-bottom: 2px solid var(--compare-border-color); }
.multi-compare-grid { display: flex; flex-flow: row nowrap; gap: 30px; min-width: min-content; padding-bottom: 10px; }
.compare-col { border: 1px solid var(--compare-border-color); border-radius: 12px; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; transition: box-shadow 0.3s ease; position: relative; box-shadow: 0 4px 12px rgba(0,0,0,0.05); flex: 0 0 300px; }
.compare-col.sortable-ghost { background: #f0f8ff; border-style: dashed; }
.drag-handle { position: absolute; top: 50%; right: 5px; transform: translateY(-50%); cursor: grab; color: #ccc; padding: 10px 5px; z-index: 2; }
.drag-handle:hover { color: #555; }
.compare-score-badge { position: absolute; top: -10px; right: -10px; background-color: #0073aa; color: white; width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; font-size: 16px; border: 2px solid white; box-shadow: 0 2px 5px rgba(0,0,0,0.2); z-index: 2; }
.broker-sticky-header { width: 100%; text-align: center; padding: 20px; }
.broker-sticky-header h3 { margin: 0 0 10px; font-size: 20px; }
.broker-sticky-header h3 a { text-decoration: none; color: inherit; }
.compare-logo img { max-width: 150px; height: 60px; object-fit: contain; margin-bottom: 10px; }
.account-selector-wrapper { margin-top: 10px; width: 100%; padding: 0 20px; box-sizing: border-box; }
.account-selector-wrapper select { width: 100%; padding: 10px; font-size: 14px; border: 1px solid #ccc; border-radius: 8px; }
.add-broker-col { justify-content: center; border-style: dashed; }
.add-broker-btn { background: none; border: none; padding: 40px; cursor: pointer; color: #777; font-size: 16px; transition: all 0.2s; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.add-broker-btn:hover { color: #0073aa; }
.add-broker-btn i { font-size: 32px; margin-bottom: 15px; }
.action-btn { background: #f0f0f0; border: 1px solid #ccc; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; color: #555; display: flex; align-items: center; justify-content: center; font-size: 14px; }
.header-actions { position: absolute; top: 10px; left: 10px; }
.btn-primary { display: block; margin-top: 15px; padding: 12px; text-decoration: none; background-color: #0073aa; color: #fff; border-radius: 8px; font-weight: bold; }

/* --- Collapsible Group Styles (Desktop & Mobile Table) --- */
.comparison-tables-container { padding: 0 20px; }
.compare-group { margin-top: 30px; border: 1px solid var(--compare-border-color); border-radius: 8px; overflow: hidden; }
.compare-group-header { background: var(--compare-bg-light); padding: 15px 20px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; position: sticky; top: 0; z-index: 5; }
.compare-group-header h3 { margin: 0; font-size: 1.2rem; }
.compare-group-header i { transition: transform 0.3s; }
.compare-group-header.collapsed i { transform: rotate(-180deg); }
.compare-group-body { display: grid; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.compare-row { display: contents; }
.row-label, .row-value { padding: 15px; border-bottom: 1px solid #f0f0f0; display: flex; align-items: center; justify-content: center; text-align: center; }
.row-label { font-weight: 600; color: #333; background: #fff; position: sticky; left: 0; z-index: 2; text-align: right; justify-content: flex-start; border-right: 1px solid #f0f0f0; width: 200px; }

.compare-group-body .compare-row:nth-child(even) .row-value { background-color: var(--compare-bg-light); }
.compare-group-body {
    /* 
     * Ø§ÛŒÙ† Ø¯Ø³ØªÙˆØ± Ú©Ù„ÛŒØ¯ÛŒØŒ Ø¬Ù‡Øª Ú†ÛŒØ¯Ù…Ø§Ù† Ø³ØªÙˆÙ†â€ŒÙ‡Ø§ÛŒ Ú¯Ø±ÛŒØ¯ Ø±Ø§ Ø§Ø² Ø±Ø§Ø³Øª Ø¨Ù‡ Ú†Ù¾ Ù…ÛŒâ€ŒÚ©Ù†Ø¯.
     * Ø¨Ù†Ø§Ø¨Ø±Ø§ÛŒÙ†ØŒ Ø³ØªÙˆÙ† Û²Û°Û° Ù¾ÛŒÚ©Ø³Ù„ÛŒ Ø¹Ù†Ø§ÙˆÛŒÙ† Ø¨Ù‡ Ø¯Ø±Ø³ØªÛŒ Ø¯Ø± Ø³Ù…Øª Ø±Ø§Ø³Øª Ù‚Ø±Ø§Ø± Ú¯Ø±ÙØªÙ‡
     * Ùˆ Ù‡ÛŒÚ† ÙØ¶Ø§ÛŒ Ø®Ø§Ù„ÛŒ Ø§Ø¶Ø§ÙÛŒ Ø§ÛŒØ¬Ø§Ø¯ Ù†Ù…ÛŒâ€ŒØ´ÙˆØ¯.
    */
    direction: rtl;
}
.row-value { position: relative; }
.row-value.is-winner-1 { background-color: var(--compare-winner-1-bg) !important; border-right: 3px solid var(--compare-winner-1-border); }
.row-value.is-winner-2 { background-color: var(--compare-winner-2-bg) !important; border-right: 3px solid var(--compare-winner-2-border); }
.row-value.is-winner-3 { background-color: var(--compare-winner-3-bg) !important; border-right: 3px solid var(--compare-winner-3-border); }
.row-value.is-winner-1::after, .row-value.is-winner-2::after, .row-value.is-winner-3::after { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); font-size: 1rem; }
.row-value.is-winner-1::after { content: 'ðŸ¥‡'; }
.row-value.is-winner-2::after { content: 'ðŸ¥ˆ'; }
.row-value.is-winner-3::after { content: 'ðŸ¥‰'; }

/* --- Table Header Styles (For BOTH Desktop & Mobile) --- */
.table-header-row .row-value { position: sticky; top: 0; background-color: #f1f1f1; z-index: 3; font-weight: bold; }
.table-header-row .row-label { position: sticky; top: 0; left: 0; background-color: #f1f1f1; z-index: 4; }
.table-header-row .row-value a { text-decoration: none; color: #333; font-size: 1rem; }
.table-header-row .row-value a:hover { text-decoration: underline; }

/* --- Common Value Styles --- */
.row-value ul { list-style: none; padding: 0; margin: 0; text-align: right; }
.row-value ul li:before { content: 'âœ“'; color: #4caf50; margin-left: 8px; }
.social-icons-cell { display: flex; gap: 10px; font-size: 1.2rem; }
.social-icons-cell a { color: #555; }
.social-icons-cell a:hover { color: #0073aa; }
.boolean-true { color: #4caf50; font-size: 1.2rem; }
.boolean-false { color: #e57373; font-size: 1.2rem; }
.no-accounts-span { font-size: 13px; color: #999; font-style: italic; }

/* --- Tooltip & Modal --- */
.comparison-tooltip { position: absolute; background-color: #333; color: #fff; padding: 5px 10px; border-radius: 4px; font-size: 12px; z-index: 100; visibility: hidden; opacity: 0; transition: opacity 0.2s; white-space: nowrap; pointer-events: none; }
.comparison-tooltip.visible { visibility: visible; opacity: 1; }
.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn 0.3s;}
.modal-content{background:#fff;padding:30px;border-radius:8px;width:90%;max-width:500px;position:relative;animation:slideInUp 0.4s;}
.modal-close-btn{position:absolute;top:10px;left:15px;background:none;border:none;font-size:28px;cursor:pointer;color:#aaa;}
.modal-close-btn:hover{color:#333;}
#broker-search-input{width:100%;padding:12px;font-size:16px;margin:15px 0;border:1px solid #ccc;border-radius:5px;}
#broker-search-results{max-height:40vh;overflow-y:auto;}
.broker-search-item{display:flex;align-items:center;padding:10px;cursor:pointer;border-radius:5px;transition:background-color 0.2s;}
.broker-search-item:hover{background:#f0f0f0;}
.broker-search-item img{width:80px;height:auto;margin-left:15px;border-radius:4px;}
.spinner-container{text-align:center;padding:20px;}
.spinner{display:inline-block;width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#0073aa;animation:spin 1s ease-in-out infinite;}
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideInUp { from { transform: translateY(30px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@keyframes spin{to{transform:rotate(360deg);}}

/* 
==================================================
  Ø§Ø³ØªØ§ÛŒÙ„â€ŒÙ‡Ø§ÛŒ Ù…Ø´ØªØ±Ú© Ø¨Ø±Ø§ÛŒ Ù‡Ø± Ø¯Ùˆ Ú©Ø±ÙˆØ³Ù„
==================================================
*/

/* --- Ú©Ø§Ù†ØªÛŒÙ†Ø± Ø§ØµÙ„ÛŒ Ú©Ø±ÙˆØ³Ù„â€ŒÙ‡Ø§ --- */
.yit-carousel-common-wrapper {
    position: relative;
    padding: 0 40px;
    direction: rtl;
}

/* --- Ø§Ø³ØªØ§ÛŒÙ„ Ø§ØµÙ„ÛŒ Swiper --- */
.yit-carousel-common-wrapper .swiper-container {
    padding: 20px 0;
    overflow: hidden; 
}

.swiper-slide {
    height: auto;
    display: flex;
}
.swiper-slide .broker-card {
    width: 100%;
}

/* 
==================================================
  Ø§Ø³ØªØ§ÛŒÙ„ Ø¯Ú©Ù…Ù‡â€ŒÙ‡Ø§ÛŒ Ù†Ø§ÙˆØ¨Ø±ÛŒ
==================================================
*/
.yit-carousel-common-wrapper .swiper-button-next,
.yit-carousel-common-wrapper .swiper-button-prev {
    /* --- Ø§Ù†Ø¯Ø§Ø²Ù‡ Ùˆ Ù…ÙˆÙ‚Ø¹ÛŒØªâ€ŒØ¯Ù‡ÛŒ --- */
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    margin-top: 0; /* Ø­Ø°Ù margin Ù¾ÛŒØ´â€ŒÙØ±Ø¶ swiper */

    /* --- Ø§Ø³ØªØ§ÛŒÙ„ Ø¸Ø§Ù‡Ø±ÛŒ --- */
    background-color: var(--white, #fff);
    border: 1px solid var(--border-color, #E2E8F0);
    border-radius: 50%;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    color: var(--text-dark, #0F172A);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Ù…ÙˆÙ‚Ø¹ÛŒØªâ€ŒØ¯Ù‡ÛŒ Ø¯Ù‚ÛŒÙ‚ Ø¯Ú©Ù…Ù‡â€ŒÙ‡Ø§ */
.yit-carousel-common-wrapper .swiper-button-prev { left: 0; }
.yit-carousel-common-wrapper .swiper-button-next { right: 0; }

/* Ø§ÙÚ©Øª Hover (ÙˆÙ‚ØªÛŒ Ù…Ø§ÙˆØ³ Ø±ÙˆÛŒ Ø¯Ú©Ù…Ù‡ Ù…ÛŒâ€ŒØ±ÙˆØ¯) */
.yit-carousel-common-wrapper .swiper-button-next:hover,
.yit-carousel-common-wrapper .swiper-button-prev:hover {
    background-color: var(--primary-blue, #1eb980);
    border-color: var(--primary-blue, #1eb980);
    color: var(--white, #fff);
    transform: translateY(-50%) scale(1.1);
}

/* Ø§Ø³ØªØ§ÛŒÙ„ Ùˆ Ø§Ù†Ø¯Ø§Ø²Ù‡ Ø¢ÛŒÚ©Ù†â€ŒÙ‡Ø§ÛŒ ÙÙ„Ø´ */
.yit-carousel-common-wrapper .swiper-button-next:after,
.yit-carousel-common-wrapper .swiper-button-prev:after {
    font-size: 20px !important; /* !important Ø¨Ø±Ø§ÛŒ ØºÙ„Ø¨Ù‡ Ø¨Ø± Ø§Ø³ØªØ§ÛŒÙ„ Ù¾ÛŒØ´â€ŒÙØ±Ø¶ swiper */
    font-weight: 900;
}

/* Ù…Ø®ÙÛŒ Ú©Ø±Ø¯Ù† Ø¯Ú©Ù…Ù‡â€ŒÙ‡Ø§ ÙˆÙ‚ØªÛŒ ØºÛŒØ±ÙØ¹Ø§Ù„ Ù‡Ø³ØªÙ†Ø¯ Ø¨Ø§ Ø§Ù†ÛŒÙ…ÛŒØ´Ù† */
.yit-carousel-common-wrapper .swiper-button-disabled {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%) scale(0.8);
}
.swiper-button-next, .swiper-button-prev {
	    width: calc(var(--swiper-navigation-size) / 30 * 30) !important;
}
.swiper-button-prev, .swiper-rtl .swiper-button-next {
	left: var(--swiper-navigation-sides-offset, 0px) !important;
}
.swiper-button-next, .swiper-rtl .swiper-button-prev {
	right: var(--swiper-navigation-sides-offset, 0px) !important;
}

/* Ø§Ø³ØªØ§ÛŒÙ„ Ø§ØµÙ„ÛŒ Ø¨Ù†Ø± */
.sidebar-ad-widget {
    background-color: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    margin-bottom: 20px;
    padding: 10px;
    box-sizing: border-box;
    min-height: 180px;
    
    /* Ø§Ø³ØªÙØ§Ø¯Ù‡ Ø§Ø² flexbox Ø¨Ø±Ø§ÛŒ ÙˆØ³Ø·â€ŒÚ†ÛŒÙ† Ú©Ø±Ø¯Ù† */
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

/* Ø¨Ø§Ú©Ø³ Ø¯Ø§Ø®Ù„ÛŒ Ø®Ø§Ú©Ø³ØªØ±ÛŒ */
.sidebar-ad-widget .widget-content {
    background-color: #f0f0f1;
    border-radius: 4px;
    width: 100%;
    height: 100%;
    min-height: 160px; /* Ø§Ø±ØªÙØ§Ø¹ Ø­Ø¯Ø§Ù‚Ù„ÛŒ Ø¨Ø±Ø§ÛŒ Ù†Ù…Ø§ÛŒØ´ Ù…Ø±Ú©Ø² Ø´Ø¯Ù† */
    
    /* Ø§ÛŒÙ†Ø¬Ø§ Ù…Ø­ØªÙˆØ§ Ø±Ø§ ÙˆØ³Ø·â€ŒÚ†ÛŒÙ† Ù…ÛŒâ€ŒÚ©Ù†ÛŒÙ… */
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px;
    box-sizing: border-box;
    text-align: center;
}

/* Ø§Ú¯Ø± Ù‡Ù…Ú†Ù†Ø§Ù† Ù…Ø´Ú©Ù„ Ø¯Ø§Ø±ÛŒØ¯ØŒ Ø§Ø² Ø§ÛŒÙ† Ø±ÙˆØ´ Ù‚Ø·Ø¹ÛŒ Ø§Ø³ØªÙØ§Ø¯Ù‡ Ú©Ù†ÛŒØ¯ */
.sidebar-ad-widget .widget-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* Ø¨Ø±Ø§ÛŒ ØªØµØ§ÙˆÛŒØ± */
.sidebar-ad-widget .widget-content img {
    max-width: 100%;
    max-height: 140px;
    height: auto;
    display: block;
    margin: 0 auto;
	object-fit:cover; /* Ø­ÙØ¸ Ù†Ø³Ø¨Øª ØªØµÙˆÛŒØ± */
}

/* Ø¨Ø±Ø§ÛŒ Ù…ØªÙ† */
.sidebar-ad-widget .widget-content p {
    margin: 0;
    text-align: center;
}

/* Ø­Ø§Ù„Øª Ù†Ù…Ø§ÛŒØ´ Ø®Ø·Ø§ Ø¨Ø±Ø§ÛŒ ØªØ´Ø®ÛŒØµ Ù…Ø´Ú©Ù„ */
.debug-center {
    border: 2px dashed red !important;
}

.sidebar-ad-widget.debug-center .widget-content {
    border: 2px dotted blue !important;
}


/*
 * Styles for the Archive SEO Content Section
 */
.archive-seo-content {
    background-color: #f9f9f9; /* A light, clean background color */
    padding: 60px 20px;       /* Generous vertical padding, some horizontal padding for mobile */
    margin-top: 50px;         /* Space between this section and the content above */
    border-top: 1px solid #e0e0e0; /* A subtle top border */
    line-height: 1.8;         /* Improved readability */
}

/* Container to control the width of the text */
.archive-seo-content .seo-content-container {
    max-width: 800px;  /* Optimal width for reading text */
    margin: 0 auto;    /* Center the container horizontally */
    font-size: 16px;   /* A comfortable base font size */
    color: #333;       /* Dark grey for text, easier on the eyes than pure black */
}

/* Styling for Headings (e.g., H2, H3) inside the content */
.archive-seo-content h2,
.archive-seo-content h3 {
    font-family: 'Vazirmatn', sans-serif; /* A modern Persian font (ensure it's loaded by your theme) */
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 25px;
    padding-bottom: 10px;
    border-bottom: 2px solid #1eb980; /* A blue accent for headings */
    display: inline-block; /* Makes the border only as wide as the text */
}

/* Styling for paragraphs */
.archive-seo-content p {
    margin-bottom: 20px; /* Space between paragraphs */
}

/* Styling for links inside the content */
.archive-seo-content a {
    color: #1eb980; /* Standard blue for links */
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.archive-seo-content a:hover {
    color: #0056b3; /* Darker blue on hover */
    text-decoration: underline;
}

/* Miscellaneous Fixes */
.btn.btn-secondary {
    display: block;
    margin-top: 15px;
    padding: 12px;
    text-decoration: none;
    border-radius: 8px;
    font-weight: bold;
}
a.pdp__btn--gray:hover {
    color: var(--text-body);
}
a.toc-item-link:hover {
    color: var(--primary-blue);
}
a.toc-item-link.active {
    color: var(--primary-blue);
}


/* =================================================================== */
/* YEKTAINVEST - RESPONSIVE STYLES BY GEMINI (FINAL & COMPLETE)        */
/* =================================================================== */
.close-sidebar-btn {
    display: none; 
}

/* Overlay for when the sidebar is open */
.sidebar-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(15, 23, 42, 0.6); /* Darker overlay */
    z-index: 999; 
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.sidebar-overlay.is-visible {
    display: block;
    opacity: 1;
}
/* 
 * ---------------------------------------------------
 * Breakpoint 1: Tablets & Large Mobiles (Screens <= 1024px)
 * - Layouts become single-column.
 * - Sidebars move or are hidden for mobile toggling.
 * - Spacing and padding are reduced.
 * ---------------------------------------------------
 */
@media (max-width: 1024px) {
	    .archive-sidebar .sidebar-filter-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    
    .archive-sidebar .clear-all-filters-btn {
        padding: 0;
    }
    /* --- Archive Toolbar Adjustments --- */
    .archive-toolbar .toolbar-left {
        display: none; /* Hide Grid/List view toggles on tablets and smaller */
    }

    .archive-toolbar {
        justify-content: flex-end; /* Align remaining items to the end */
    }
    /* --- General Layout --- */
    .page-container,
    .broker-archive-container,
    .exchange-archive-container,
    .propfirm-archive-container {
        padding: 16px;
    }

    /* --- Archive Pages (Broker, Exchange, Prop Firm) --- */
    .archive-main-content {
        grid-template-columns: 0fr; /* Switch to a single column layout */
    }

    .archive-sidebar {
        position: fixed; /* Prepare sidebar for off-canvas mobile view */
        top: 0;
        right: -100%; /* Initially hidden off-screen */
        width: 320px; /* Fixed width for the sliding menu */
        height: 100vh;
        background-color: var(--white);
        box-shadow: -5px 0 15px rgba(0,0,0,0.1);
        z-index: 1000;
        transition: right 0.3s ease-in-out;
        overflow-y: auto;
        padding: 0;
        border-radius: 0;
    }

    .archive-sidebar.sidebar-open {
        right: 0; /* Slide in from the right */
    }

    .archive-sidebar .sidebar-filter-header {
        position: sticky; /* Make header inside sidebar sticky */
        top: 0;
        background-color: var(--white);
        z-index: 10;
        border-radius: 0;
        border-bottom: 1px solid var(--border-color);
        padding: 16px;
    }

    .archive-sidebar .sidebar-filter-form {
        padding: 16px;
    }
    
    .filter-widget .widget-header {
        cursor: default; /* No collapse on mobile */
    }

    .filter-widget .toggle-arrow {
        display: none; /* Hide collapse arrows */
    }

    .filter-widget .widget-content {
        display: block !important; /* Always show content */
        padding-top: 16px;
    }
    
    /* Show mobile filter button and hide desktop elements */
    #mobile-filter-toggle {
        display: flex;
        align-items: center;
        gap: 8px;
        background-color: var(--primary-blue);
        color: var(--white);
        border: none;
        padding: 8px 16px;
        border-radius: 8px;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

    .archive-toolbar .toolbar-center {
        display: none; /* Hide desktop sorting links */
    }
    .archive-toolbar {
        justify-content: space-between;
    }
    .toolbar-left {
        flex-grow: 1; /* Allow view toggles to take space */
    }

    /* --- Single Post/Page (Broker, Exchange, Prop Firm) --- */
    .pdp-page__banner {
        grid-template-columns: 1fr; /* Stack all banner columns */
        gap: 32px;
    }

    .pdp-page__banner__actions,
    .pdp-page__banner__content,
    .pdp-page__banner__info {
        grid-column: auto;
    }

    .pdp-page__banner-image {
        max-width: 250px;
        margin: 0 auto;
    }
    
    /* Main Content Grid */
    .main-content-grid {
        grid-template-columns: 1fr; /* Single column layout */
    }

    .main-sidebar {
        order: 2; /* Move sidebar below main content */
        position: static; /* Disable sticky behavior */
    }

    .tab-content-container {
        order: 1; /* Main content appears first */
    }

    .toc-card {
        position: static; /* Disable sticky TOC card */
    }
    
    /* Sticky Header with Tabs */
    .page-header-with-tabs {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 16px;
        top: 0; /* Adjust if you have a main site sticky header */
    }

    .review-prompt-area {
        padding: 0;
        justify-content: space-between;
    }

    .main-page-nav-tabs {
        width: 100%;
        overflow-x: auto; /* Allow horizontal scrolling for tabs */
        -webkit-overflow-scrolling: touch;
        padding-bottom: 10px; /* Space for scrollbar */
    }
    
    .main-page-nav-tabs ul {
        justify-content: flex-start;
        flex-wrap: nowrap; /* Prevent tabs from wrapping */
        white-space: nowrap;
        gap: 24px;
    }
    
    /* Account Details Table */
    .account-details-grid {
        min-width: 700px; /* Allow horizontal scrolling on a slightly smaller table */
    }
    
    /* List View Cards in Archives */
    .broker-grid.list-view .broker-card,
    .broker-grid.list-view .exchange-card,
    .broker-grid.list-view .propfirm-card {
        grid-template-columns: 100px 1fr; /* Logo | Main Info */
        grid-template-areas:
            "logo main-info"
            "meta meta"
            "actions actions";
        gap: 16px;
        align-items: flex-start;
    }
    .broker-grid.list-view .card-logo {
        border-right: none;
        padding-right: 0;
        align-self: center;
    }
    .broker-grid.list-view .card-main-info {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .broker-grid.list-view .card-meta {
        gap: 16px;
        justify-content: space-between;
    }
    .broker-grid.list-view .card-actions {
        width: 100%;
        grid-template-columns: 1fr 1fr;
    }

    /* --- Comparison Pages Responsive --- */
    @media (max-width: 992px) {
        .pro-compare-header h1 { font-size: 1.8rem; }
        .compare-controls { flex-direction: row; justify-content: space-around; width: 100%; flex-wrap: wrap; }
        .multi-compare-wrapper { overflow-x: visible; }
        .multi-compare-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
        .compare-col { flex: 1 1 auto; }
        .comparison-tables-container { padding: 0 10px; }
        .row-label { width: 150px; font-size: 0.9rem; }
        .row-value { font-size: 0.9rem; }
        .broker-sticky-header h3 { font-size: 1.15rem; }
        .compare-group-header h3 { font-size: 1.1rem; }
        .btn-primary { font-size: 0.95rem; padding: 10px; }
        .toggle-label { font-size: 0.9rem; }
        .drag-handle { display: none; }
        .table-header-row .row-value a { font-size: 0.9rem; }
    }
}

/* 
 * ---------------------------------------------------
 * Breakpoint 2: Mobile Phones (Screens <= 768px)
 * - Further reduce padding and font sizes.
 * - Optimize layouts for narrow vertical screens.
 * ---------------------------------------------------
 */
@media (max-width: 768px) {
        .archive-sidebar .close-sidebar-btn {
        display: flex; /* Use flex to center the icon */
        align-items: center;
        justify-content: center;
        width: 36px; /* Circle dimensions */
        height: 36px;
        background-color: var(--bg-light);
        border: 1px solid var(--border-color);
        border-radius: 50%; /* Make it a circle */
        color: var(--text-dark);
        font-size: 16px;
        cursor: pointer;
        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        order: 2; /* Position on the right */
    }

    .archive-sidebar .close-sidebar-btn:hover {
        background-color: #ef4444; /* Red background on hover */
        color: var(--white); /* White icon on hover */
        border-color: #ef4444;
        transform: rotate(180deg) scale(1.1); /* Cool transform effect */
    }

    .archive-sidebar .filter-count-badge {
        order: 1; 
        margin: 0 auto 0 0; 
    }

    .archive-sidebar .clear-all-filters-btn {
        order: 0;
    }
    /* --- General Layout & Typography --- */
    .page-container,
    .broker-archive-container,
    .exchange-archive-container,
    .propfirm-archive-container {
        padding: 0; /* Remove side padding for full-width content */
    }

    body {
        background-color: var(--white); /* Change body background to white for seamless look */
    }
    
    .archive-main-content, .main-content-grid {
        padding: 16px; /* Add padding inside main content areas */
        gap: 0px !important;
    }

    .pdp-page__banner__header h2, .card-title {
        font-size: 18px;
    }
    .account-header-left h2 {
        font-size: 18px;
    }
    .review-content-section h2 { font-size: 22px; }
    .review-content-section h3 { font-size: 18px; }
    
    /* --- Archive Pages --- */
    .broker-grid {
        grid-template-columns: 1fr; /* Force single column for cards */
        gap: 16px;
    }
    .archive-toolbar {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
    .featured-logos-bar {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
    
    /*******************************************/
    /* !! START: REQUESTED CHANGE FOR BUTTONS !! */
    /*******************************************/
    .card-actions {
        /* Ø¯Ú©Ù…Ù‡â€ŒÙ‡Ø§ Ø±Ø§ Ø¯Ø± Ù…ÙˆØ¨Ø§ÛŒÙ„ Ø¨Ù‡ Ø­Ø§Ù„Øª ØªÚ© Ø³ØªÙˆÙ†Ù‡ Ùˆ Ø²ÛŒØ± Ù‡Ù… Ø¯Ø± Ù…ÛŒâ€ŒØ¢ÙˆØ±Ø¯ */
        grid-template-columns: 1fr;
        gap: 10px; /* Ú©Ø§Ù‡Ø´ ÙØ§ØµÙ„Ù‡ Ø¨ÛŒÙ† Ø¯Ùˆ Ø¯Ú©Ù…Ù‡ Ø¯Ø± Ø­Ø§Ù„Øª Ø¹Ù…ÙˆØ¯ÛŒ */
    }
    /*****************************************/
    /* !! END: REQUESTED CHANGE FOR BUTTONS !! */
    /*****************************************/

    /* --- Single Post Page --- */
    .pdp-page__banner-wrapper {
        margin-bottom: 0;
    }
    .pdp-page__banner {
        padding: 16px;
        border-radius: 0; /* Full width banner */
        border: none;
        border-bottom: 1px solid var(--border-color);
        box-shadow: none;
    }
    .breadcrumb-header {
        padding: 16px 16px 0 16px;
    }

    .page-header-with-tabs {
        border-radius: 0;
        border-left: none;
        border-right: none;
        box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    }
    
    .card {
        padding: 16px;
    }
    .account-info-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .account-tabs ul {
        flex-wrap: wrap;
        gap: 12px;
    }
    .open-account-btn {
        width: 100%;
    }
    
    /* --- Comparison Pages --- */
    .ultimate-compare {
        margin: 24px 0;
    }
    .pro-compare-header h1 {
        font-size: 1.8rem;
    }
    .compare-controls {
        flex-direction: column;
        gap: 16px;
    }
    .multi-compare-grid {
        grid-template-columns: 1fr; /* Stack columns on smallest screens */
    }
    .comparison-tables-container {
        padding: 0;
    }
    .row-label {
        width: 120px; /* Reduce label width to give more space to values */
        font-size: 13px;
    }
    .row-value {
        font-size: 13px;
        padding: 12px;
    }

    @media (max-width: 576px) {
        .pro-compare-header h1 { font-size: 1.5rem; }
        .compare-controls { flex-direction: column; gap: 15px; }
        .multi-compare-grid { grid-template-columns: 1fr; }
        .row-label { width: 120px; font-size: 0.85rem; }
        .row-value { font-size: 0.85rem; }
        .table-header-row .row-value a { font-size: 0.85rem; }
    }
}
.swiper-button-prev {
    right: auto !important;
}


/* ==========================================================================
   YEKTAINVEST BOOKS - COMPLETE STYLESHEET
   Version: FINAL (Desktop + Full Responsive Enhancements)
   ========================================================================== */

/*
 * ========================================
 * A. ARCHIVE PAGE STYLES (archive-book.php)
 * ========================================
 */

/* --- A1. Main Layout --- */
.book-archive-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 24px;
}
.book-archive-container .page-header {
    text-align: center;
    margin-bottom: 2.5rem;
    border-bottom: 1px solid #eee;
    padding-bottom: 1.5rem;
}

/* --- A2. Main Content Flex Layout (Sidebar on Left) --- */
.archive-main-content {
    display: flex;
    gap: 30px;
}
.book-list-wrapper {
    flex: 1;
    min-width: 0;
    position: relative;
}
.archive-sidebar {
    width: 280px;
    flex-shrink: 0;
    order: -1; /* === Ø§ÛŒÙ† Ø®Ø· Ø§Ø¶Ø§ÙÙ‡ Ø´Ø¯Ù‡ ØªØ§ Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø¯Ø± Ø³Ù…Øª Ú†Ù¾ Ù‚Ø±Ø§Ø± Ø¨Ú¯ÛŒØ±Ø¯ === */
}
@media (max-width: 1024px) {
    /* When switching to mobile, remove the order so it behaves as a modal */
    .archive-sidebar {
        order: initial; 
        /* ... other mobile styles for fixed position sidebar */
    }
}


/* --- A4. Advanced "Levitating" Book Card Styles --- */

.yit-book-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 40px;
}

.yit-book-card {
    background-color: #fff;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.07);
}

.yit-book-card::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 5%;
    width: 90%;
    height: 30px;
    background: rgba(0, 0, 0, 0.2);
    z-index: -1;
    filter: blur(20px);
    opacity: 0;
    transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}

.yit-book-card:hover {
    transform: translateY(-15px);
    box-shadow: 0 25px 40px rgba(0, 0, 0, 0.1), 0 8px 15px rgba(0, 0, 0, 0.08);
}

.yit-book-card:hover::after {
    opacity: 1;
    transform: scale(1.1);
}

/* Thumbnail is now the container for the title */
.yit-book-thumbnail {
    position: relative;
    overflow: hidden;
}

.yit-book-thumbnail::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to top, rgba(0,0,0,0.6), transparent);
    z-index: 1;
    opacity: 0.8;
}

.yit-book-thumbnail img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 5.5;
    object-fit: cover;
    transition: transform 0.4s ease;
    display: block; /* Fixes small gap under image */
}

.yit-book-card:hover .yit-book-thumbnail img {
    transform: scale(1.05);
}

/* Title is positioned absolutely within the thumbnail */
.yit-book-title {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    z-index: 2; /* On top of the gradient overlay */
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0; /* Reset default margins */
    color: #fff;
    text-shadow: 1px 1px 5px rgba(0,0,0,0.7);
}

.yit-book-title a {
    text-decoration: none;
    color: inherit;
}

/* Content block no longer has negative margin */
.yit-book-content {
    padding: 20px;
    flex-grow: 1;
}

/* Excerpt margin is reset */
.yit-book-excerpt {
    font-size: 0.95rem;
    color: #555;
    line-height: 1.7;
    margin-top: 0;
}

.yit-book-footer {
    padding: 0 20px 20px;
}

.yit-book-details-button {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 15px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: bold;
    transition: all 0.3s ease;
    border: none;
    position: relative;
    overflow: hidden;
    background: linear-gradient(45deg, #0073aa, #005a87);
    color: #fff;
    box-shadow: 0 4px 15px rgba(0, 115, 170, 0.3);
}

.yit-book-details-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 115, 170, 0.4);
}


/*
 * ========================================
 * B. SINGLE PAGE STYLES (single-book.php)
 * ========================================
 */

/* --- B1. Main Hero Section Wrapper --- */
.book-hero-wrapper { position: relative; width: 100%; min-height: 80vh; display: flex; align-items: center; justify-content: center; padding: 60px 20px; overflow: hidden; color: #fff; }
.hero-background { position: absolute; top: -10%; left: -10%; width: 120%; height: 120%; background-size: cover; background-position: center; filter: blur(50px) brightness(0.6); z-index: 1; }
.book-hero-content-container { max-width: 1200px; width: 100%; margin: 0 auto; display: flex; align-items: center; gap: 60px; position: relative; z-index: 2; }

/* --- B2. Parallax Book Cover --- */
.book-cover-column { flex: 0 0 35%; max-width: 350px; }
.book-cover-parallax img { width: 100%; height: auto; border-radius: 12px; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); transform: rotate3d(0, 1, 0, 15deg); transition: all 0.4s ease; }
.book-cover-parallax:hover img { transform: rotate3d(0, 0, 0, 0deg) scale(1.05); box-shadow: 0 35px 60px -15px rgba(0, 0, 0, 0.4); }

/* --- B3. Details Column --- */
.book-details-column { flex: 1; text-align: right; }
.book-categories a { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); color: #fff; padding: 6px 14px; border-radius: 20px; font-size: 13px; text-decoration: none; margin: 0 0 5px 5px; display: inline-block; transition: all 0.3s ease; }
.book-categories a:hover { background: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.3); }

/* --- B4. Glassmorphism Meta Box --- */
.book-meta-glass-box { padding: 15px 25px; margin: 2rem 0; background: rgba(0, 0, 0, 0.25); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.2); }
.meta-item { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.1); flex-direction: row-reverse; }
.meta-item:last-child { border-bottom: none; padding-bottom: 10px; }
.meta-item strong, .meta-item span { color: #ffffff; text-shadow: 0 1px 3px rgba(0,0,0,0.5); opacity: 1; }
.meta-item strong { font-weight: 400; opacity: 0.8; }
.meta-item span { font-weight: 600; }

/* --- B5. Download Button / Login Prompt --- */
.book-download-cta-wrapper { margin-top: 2rem; }
.book-download-button { display: inline-flex; align-items: center; gap: 15px; background: #fff; color: #333 !important; font-size: 1.3rem; font-weight: bold; padding: 18px 45px; text-decoration: none; border-radius: 12px; border: none; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); transition: all 0.3s ease; animation: button-pulse 2s infinite; }
.book-download-button:hover { transform: translateY(-5px) scale(1.05); box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3); animation-play-state: paused; }
.download-meta { margin-top: 15px; font-size: 0.9rem; opacity: 0.8; }
.download-meta span { margin: 0 0 0 10px; }
.download-meta .fa-solid { margin-left: 5px; }
.book-login-prompt { background: rgba(0, 0, 0, 0.25); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.2); padding: 25px; text-align: center; }
.prompt-message { font-size: 1.1rem; font-weight: 600; margin: 0 0 20px 0; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,0.5); }
.prompt-message .fa-solid { margin-left: 8px; color: #ffc107; }
.prompt-buttons { display: flex; gap: 15px; justify-content: center; }
.prompt-btn { flex: 1; padding: 12px; text-decoration: none; font-weight: bold; border-radius: 8px; transition: all 0.3s ease; }
.prompt-btn.login { background-color: #fff; color: #333; }
.prompt-btn.login:hover { background-color: #f0f0f0; transform: translateY(-2px); }
.prompt-btn.register { background-color: transparent; color: #fff; border: 2px solid #fff; }
.prompt-btn.register:hover { background-color: #fff; color: #333; }

/* --- B6. Main Content Section --- */
.book-main-content-wrapper { padding: 4rem 20px; }
.book-main-content { max-width: 800px; margin: 0 auto; background: #fff; padding: 3rem; border-radius: 16px; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08); margin-top: -120px; position: relative; z-index: 5; }

/* --- B7. Animations --- */
@keyframes button-pulse { 0% { transform: scale(1); } 50% { transform: scale(1.03); } 100% { transform: scale(1); } }
.anim-fade-up { opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease-out forwards; }
@keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } }


/*
 * ========================================
 * C. RESPONSIVE ENHANCEMENTS (Tablet & Mobile)
 * ========================================
 */

@media (max-width: 1023px) {
    /* --- C1. Archive Page Responsive (Tablet) --- */

    /* --- C2. Single Page Responsive (Tablet) --- */
    .book-hero-content-container { flex-direction: column; }
    .book-details-column { text-align: center; }
    .book-cover-column { order: -1; max-width: 300px; }
    .book-cover-parallax img { transform: none !important; } /* Disable 3D and hover effect */
    .book-cover-parallax:hover img { transform: none !important; }
}

@media (max-width: 767px) {
    /* --- C3. Archive Page Responsive (Phone) --- */
    .book-archive-container { padding: 1.5rem; margin: 1.5rem auto; }
    .yit-book-grid { gap: 20px; }
    .page-header .page-title { font-size: 1.8rem; }

    /* --- C4. Single Page Responsive (Phone) --- */
    .book-hero-wrapper { padding: 40px 15px; }
    .entry-title { font-size: 2.2rem; }
    .book-main-content-wrapper { padding: 3rem 15px; }
    .book-main-content { margin-top: -80px; padding: 2rem; }
    .book-download-button { padding: 15px 30px; font-size: 1.1rem; }
    .prompt-buttons { flex-direction: column; }
}












.card-meta .meta-item span {
    color: #0F172A !important;
}
.card-meta .meta-item strong {
    color: #0F172A !important;
}














/* =================================================================== */
/* YEKTAINVEST - IMPROVED RESPONSIVE STYLES FOR MAIN CONTENT GRID      */
/* =================================================================== */

/* 
 * ---------------------------------------------------
 * Breakpoint 1: Tablets & Large Mobiles (Screens <= 1024px)
 * - main-content-grid becomes a single column.
 * - Sidebar moves below the main content.
 * - Sticky positioning is disabled for the sidebar.
 * ---------------------------------------------------
 */
@media (max-width: 1024px) {

    /* --- Main Content Grid Layout --- */
    .main-content-grid {
        /* Û±. ØªØ¨Ø¯ÛŒÙ„ Ø¨Ù‡ Ú†ÛŒØ¯Ù…Ø§Ù† ØªÚ© Ø³ØªÙˆÙ†Ù‡ */
        grid-template-columns: 1fr; 
        gap: 32px; /* Ø§ÙØ²Ø§ÛŒØ´ ÙØ§ØµÙ„Ù‡ Ø¨ÛŒÙ† Ù…Ø­ØªÙˆØ§ Ùˆ Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø¯Ø± Ø­Ø§Ù„Øª Ø²ÛŒØ± Ù‡Ù… */
    }

    .tab-content-container {
        /* Û². Ù…Ø­ØªÙˆØ§ÛŒ Ø§ØµÙ„ÛŒ Ø¯Ø± Ø§Ø¨ØªØ¯Ø§ Ù†Ù…Ø§ÛŒØ´ Ø¯Ø§Ø¯Ù‡ Ø´ÙˆØ¯ */
        order: 1; 
    }
    
    .main-sidebar {
        /* Û³. Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø¨Ù‡ Ø²ÛŒØ± Ù…Ø­ØªÙˆØ§ Ù…Ù†ØªÙ‚Ù„ Ø´ÙˆØ¯ */
        order: 2; 
        
        /* Û´. ØºÛŒØ±ÙØ¹Ø§Ù„ Ú©Ø±Ø¯Ù† Ø­Ø§Ù„Øª Ú†Ø³Ø¨Ø§Ù† (Ø¨Ø³ÛŒØ§Ø± Ù…Ù‡Ù…) */
        position: static; 
        top: auto;
    }

    /* Ø§Ø·Ù…ÛŒÙ†Ø§Ù† Ø§Ø² Ø§ÛŒÙ†Ú©Ù‡ Ú©Ø§Ø±Øª TOC Ù‡Ù… Ú†Ø³Ø¨Ø§Ù† Ù†Ø¨Ø§Ø´Ø¯ */
    .toc-card {
        position: static;
        top: auto;
    }
    
    /* --- Ø³Ø§ÛŒØ± ØªÙ†Ø¸ÛŒÙ…Ø§Øª Ø¨Ø±Ø§ÛŒ Ø§ÛŒÙ† breakpoint --- */
    /* ... (Ú©Ø¯Ù‡Ø§ÛŒ Ø¯ÛŒÚ¯Ø± Ø´Ù…Ø§ Ø¨Ø±Ø§ÛŒ Ø§ÛŒÙ† breakpoint Ø§ÛŒÙ†Ø¬Ø§ Ù‚Ø±Ø§Ø± Ù…ÛŒâ€ŒÚ¯ÛŒØ±Ù†Ø¯) ... */
    
    .pdp-page__banner {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .pdp-page__banner__actions,
    .pdp-page__banner__content,
    .pdp-page__banner__info {
        grid-column: auto;
    }
    .pdp-page__banner-image {
        max-width: 250px;
        margin: 0 auto;
    }
    .page-header-with-tabs {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 16px;
        top: 0;
    }
    .main-page-nav-tabs {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .main-page-nav-tabs ul {
        flex-wrap: nowrap;
        white-space: nowrap;
    }
}

/* 
 * ---------------------------------------------------
 * Breakpoint 2: Mobile Phones (Screens <= 768px)
 * - Ú©Ø§Ù‡Ø´ ÙØ§ØµÙ„Ù‡â€ŒÙ‡Ø§ Ø¨Ø±Ø§ÛŒ Ø§Ø³ØªÙØ§Ø¯Ù‡ Ø¨Ù‡ØªØ± Ø§Ø² ÙØ¶Ø§.
 * ---------------------------------------------------
 */
@media (max-width: 768px) {

    /* Ø¯Ø± Ø§ÛŒÙ† breakpointØŒ Ú†ÛŒØ¯Ù…Ø§Ù† Ø§Ø² Ù‚Ø¨Ù„ ØªÚ© Ø³ØªÙˆÙ†Ù‡ Ø§Ø³Øª.
       ÙÙ‚Ø· Ù…ÛŒâ€ŒØªÙˆØ§Ù†ÛŒÙ… ÙØ§ØµÙ„Ù‡â€ŒÙ‡Ø§ Ø±Ø§ Ø¨Ø±Ø§ÛŒ ØµÙØ­Ø§Øª Ú©ÙˆÚ†Ú©â€ŒØªØ± Ø¨Ù‡ÛŒÙ†Ù‡â€ŒØªØ± Ú©Ù†ÛŒÙ…. */
    .main-content-grid {
        gap: 24px; /* Ú©Ø§Ù‡Ø´ ÙØ§ØµÙ„Ù‡ Ø¯Ø± Ù…ÙˆØ¨Ø§ÛŒÙ„ */
        padding: 16px; /* Ø§ÙØ²ÙˆØ¯Ù† Ù¾Ø¯ÛŒÙ†Ú¯ Ø¯Ø§Ø®Ù„ÛŒ Ø¨Ø±Ø§ÛŒ Ø¬Ø¯Ø§ Ø´Ø¯Ù† Ø§Ø² Ù„Ø¨Ù‡â€ŒÙ‡Ø§ÛŒ ØµÙØ­Ù‡ */
    }
    
    /* Ø¨Ø±Ø§ÛŒ Ø§ÛŒÙ†Ú©Ù‡ Ù…Ø­ØªÙˆØ§ Ø¨Ù‡ Ù„Ø¨Ù‡â€ŒÙ‡Ø§ÛŒ ØµÙØ­Ù‡ Ù†Ú†Ø³Ø¨Ø¯ */
    .page-container,
    .broker-archive-container {
        padding: 0;
    }
    body {
        background-color: var(--white);
    }
}
/* =================================================================== */
/* !! FIX FOR MOBILE/TABLET LAYOUT !!                                  */
/* This code forcefully corrects the main content grid on smaller screens. */
/* =================================================================== */

@media (max-width: 1024px) {

    /*
     * We are switching from 'grid' to 'flex' display for a more robust
     * single-column layout on mobile devices.
    */
    .main-content-grid {
        display: flex !important;
        flex-direction: column !important; /* Items will stack vertically */
        gap: 32px !important;
    }

    /* Ensure main content appears FIRST */
    .tab-content-container {
        order: 1 !important; 
    }
    
    /* Ensure sidebar appears SECOND and is NOT sticky */
    .main-sidebar {
        order: 2 !important; 
        position: static !important; 
        top: auto !important;
    }

    /* Ensure the Table of Contents card is also not sticky */
    .toc-card {
        position: static !important;
        top: auto !important;
    }
}
/* =================================================================== */
/*  STYLES FOR MOVED WIDGETS ON RESPONSIVE VIEW                      */
/* =================================================================== */

@media (max-width: 1024px) {
    /* ÙˆÛŒØ¬Øª Ø§Ø·Ù„Ø§Ø¹Ø§Øª Ø¨Ø±ÙˆÚ©Ø± Ú©Ù‡ Ø¬Ø§Ø¨Ø¬Ø§ Ø´Ø¯Ù‡ */
    .broker-info-widget-wrapper {
        margin-bottom: 24px; /* Ø§ÛŒØ¬Ø§Ø¯ ÙØ§ØµÙ„Ù‡ Ø¨Ø§ Ø¨Ø®Ø´ Ø¨Ø¹Ø¯ÛŒ */
    }
    
    /* ÙˆÛŒØ¬Øª ÙÙ‡Ø±Ø³Øª Ù…Ø·Ø§Ù„Ø¨ Ú©Ù‡ Ø¬Ø§Ø¨Ø¬Ø§ Ø´Ø¯Ù‡ */
    .toc-card {
        margin-bottom: 24px; /* Ø§ÛŒØ¬Ø§Ø¯ ÙØ§ØµÙ„Ù‡ Ø¨Ø§ Ø¨Ø®Ø´ Ø¨Ø¹Ø¯ÛŒ */
    }
    
    /* Ø§Ø² Ø¢Ù†Ø¬Ø§ÛŒÛŒ Ú©Ù‡ Ø§ÛŒÙ† Ø¯Ùˆ ÙˆÛŒØ¬Øª Ø§Ø² Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø®Ø§Ø±Ø¬ Ù…ÛŒâ€ŒØ´ÙˆÙ†Ø¯ØŒ
       Ù…Ù…Ú©Ù† Ø§Ø³Øª Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø®Ø§Ù„ÛŒ Ø¨Ù…Ø§Ù†Ø¯. Ø§ÛŒÙ† Ú©Ø¯ Ø³Ø§ÛŒØ¯Ø¨Ø§Ø± Ø®Ø§Ù„ÛŒ Ø±Ø§ Ù…Ø®ÙÛŒ Ù…ÛŒâ€ŒÚ©Ù†Ø¯. */
    .main-sidebar:empty {
        display: none;
    }
}






/* =================================================================== */
/*  YEKTAINVEST - FINAL LAYOUT FOR ACCOUNT INFO HEADER               */
/*  (Desktop: Fit in one line | Mobile: Scroll with Custom Scrollbar) */
/* =================================================================== */

/* --- ÙˆØ§Ù„Ø¯ Ø§ØµÙ„ÛŒ Ø¨Ø±Ø§ÛŒ Ø¯Ùˆ Ø³Ø·Ø± --- */
.account-info-card-header {
    padding-bottom: 16px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--border-color);
}
.account-info-header-top-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}
.account-info-header-top-row h2 {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    color: var(--text-dark);
}

/* --- Ø­Ø§Ù„Øª Ù¾ÛŒØ´â€ŒÙØ±Ø¶ Ø¨Ø±Ø§ÛŒ Ø¯Ø³Ú©ØªØ§Ù¾: ØªØ¨â€ŒÙ‡Ø§ Ø¯Ø± ÛŒÚ© Ø®Ø· Ø¬Ø§ Ù…ÛŒâ€ŒØ´ÙˆÙ†Ø¯ --- */
.account-tabs {
    overflow: hidden;
}
.account-tabs ul {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
    flex-wrap: nowrap;
}
.account-tabs .account-tab-link {
    flex-shrink: 1;
    min-width: 80px;
    padding: 12px 10px;
    font-size: 13px;
    text-align: center;
    white-space: normal;
    line-height: 1.4;
    display: block;
    text-decoration: none;
    font-weight: 700;
    color: var(--text-light);
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
}
.account-tabs .account-tab-link:hover {
    color: var(--primary-blue);
}
.account-tabs .account-tab-link.active {
    color: var(--primary-blue);
    border-bottom-color: var(--primary-blue);
}

/* --- Ø­Ø§Ù„Øª Ø±ÛŒØ³Ù¾Ø§Ù†Ø³ÛŒÙˆ Ø¨Ø±Ø§ÛŒ ØªØ¨Ù„Øª Ùˆ Ù…ÙˆØ¨Ø§ÛŒÙ„ --- */
@media (max-width: 768px) {
    .account-info-header-top-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .open-account-btn {
        width: 100%;
    }

    /* Û±. ÙØ¹Ø§Ù„ Ú©Ø±Ø¯Ù† Ø§Ø³Ú©Ø±ÙˆÙ„ Ùˆ Ø§Ø³ØªØ§ÛŒÙ„â€ŒØ¯Ù‡ÛŒ Ø¨Ù‡ Ø§Ø³Ú©Ø±ÙˆÙ„ Ø¨Ø§Ø± */
    .account-tabs {
        overflow-x: auto;
        padding-bottom: 12px; /* !Ù…Ù‡Ù…: ÙØ¶Ø§ÛŒÛŒ Ø¨Ø±Ø§ÛŒ Ø§Ø³Ú©Ø±ÙˆÙ„ Ø¨Ø§Ø± Ø§ÛŒØ¬Ø§Ø¯ Ù…ÛŒâ€ŒÚ©Ù†Ø¯ */

        /* Ø§Ø³ØªØ§ÛŒÙ„ Ø¨Ø±Ø§ÛŒ ÙØ§ÛŒØ±ÙØ§Ú©Ø³ */
        scrollbar-width: thin;
        scrollbar-color: var(--primary-blue) var(--border-color);
    }
    
    /* Ø§Ø³ØªØ§ÛŒÙ„ Ø¨Ø±Ø§ÛŒ Ú©Ø±ÙˆÙ…ØŒ Ø³Ø§ÙØ§Ø±ÛŒ Ùˆ Ù…Ø±ÙˆØ±Ú¯Ø±Ù‡Ø§ÛŒ WebKit */
    .account-tabs::-webkit-scrollbar {
        height: 6px; /* Ø§Ø±ØªÙØ§Ø¹ Ø§Ø³Ú©Ø±ÙˆÙ„ Ø¨Ø§Ø± Ø§ÙÙ‚ÛŒ */
    }
    .account-tabs::-webkit-scrollbar-track {
        background-color: var(--border-color); /* Ø±Ù†Ú¯ Ù¾Ø³â€ŒØ²Ù…ÛŒÙ†Ù‡ Ø§Ø³Ú©Ø±ÙˆÙ„ Ø¨Ø§Ø± */
        border-radius: 10px;
    }
    .account-tabs::-webkit-scrollbar-thumb {
        background-color: var(--primary-blue); /* Ø±Ù†Ú¯ Ø®ÙˆØ¯ Ø§Ø³Ú©Ø±ÙˆÙ„ Ø¨Ø§Ø± */
        border-radius: 10px;
    }

    /* Û². Ø¨Ø§Ø²Ú¯Ø±Ø¯Ø§Ù†Ø¯Ù† ØªØ¨â€ŒÙ‡Ø§ Ø¨Ù‡ Ø§Ù†Ø¯Ø§Ø²Ù‡ Ø§ØµÙ„ÛŒ Ø¯Ø± Ù…ÙˆØ¨Ø§ÛŒÙ„ */
    .account-tabs .account-tab-link {
        flex-shrink: 0;
        white-space: nowrap;
        font-size: 14px;
        padding: 12px 16px;
    }
}
/* =================================================================== */
/*  YEKTAINVEST - "AWESOME" RESPONSIVE LAYOUT FOR ACCOUNT DETAILS    */
/*  (Transforms the wide grid into a mobile-friendly list view)      */
/* =================================================================== */

@media (max-width: 768px) {

    /* Û±. Ø­Ø°Ù Ø§Ø³Ú©Ø±ÙˆÙ„ Ø§ÙÙ‚ÛŒ Ø§Ø² ÙˆØ§Ù„Ø¯ */
    .account-details-grid-wrapper {
        overflow-x: visible;
        border: none; /* Ø­Ø°Ù Ø¨ÙˆØ±Ø¯Ø± ÙˆØ§Ù„Ø¯ Ú†ÙˆÙ† Ù‡Ø± Ø±Ø¯ÛŒÙ Ø¨ÙˆØ±Ø¯Ø± Ø®ÙˆØ¯ Ø±Ø§ Ø®ÙˆØ§Ù‡Ø¯ Ø¯Ø§Ø´Øª */
    }

    /* Û². ØªØ¨Ø¯ÛŒÙ„ Ú©Ø§Ù†ØªÛŒÙ†Ø± Ø§ØµÙ„ÛŒ Ø¨Ù‡ ÛŒÚ© Ú¯Ø±ÛŒØ¯ Ø¯Ùˆ Ø³ØªÙˆÙ†Ù‡ Ø³Ø§Ø¯Ù‡ (Ø¹Ù†ÙˆØ§Ù† Ùˆ Ù…Ù‚Ø¯Ø§Ø±) */
    .account-details-grid {
        display: grid;
        grid-template-columns: auto 1fr; /* Ø³ØªÙˆÙ† Ø§ÙˆÙ„ (Ù…Ù‚Ø¯Ø§Ø±) Ø¹Ø±Ø¶ Ø®ÙˆØ¯Ú©Ø§Ø±ØŒ Ø³ØªÙˆÙ† Ø¯ÙˆÙ… (Ø¹Ù†ÙˆØ§Ù†) Ø¨Ø§Ù‚ÛŒ ÙØ¶Ø§ */
        border: 1px solid var(--border-color);
        border-radius: 12px;
        overflow: hidden; /* Ø¨Ø±Ø§ÛŒ Ú¯Ø±Ø¯ Ø´Ø¯Ù† Ú¯ÙˆØ´Ù‡â€ŒÙ‡Ø§ÛŒ Ø¨ÙˆØ±Ø¯Ø± */
    }

    /* Û³. Ø¬Ø§Ø¯ÙˆÛŒ Ø§ØµÙ„ÛŒ: Ø­Ø°Ù Ú©Ø§Ù†ØªÛŒÙ†Ø±Ù‡Ø§ÛŒ Ø³ØªÙˆÙ† (.grid-col) */
    /* Ø§ÛŒÙ† Ø¯Ø³ØªÙˆØ± Ø¨Ø§Ø¹Ø« Ù…ÛŒâ€ŒØ´ÙˆØ¯ ØªÙ…Ø§Ù… Ø¢ÛŒØªÙ…â€ŒÙ‡Ø§ÛŒ Ø¯Ø§Ø®Ù„ Ø³ØªÙˆÙ†â€ŒÙ‡Ø§ØŒ ÙØ±Ø²Ù†Ø¯ Ù…Ø³ØªÙ‚ÛŒÙ… Ú¯Ø±ÛŒØ¯ Ø§ØµÙ„ÛŒ Ø´ÙˆÙ†Ø¯. */
    .account-details-grid .grid-col {
        display: contents;
    }

    /* Û´. Ø§Ø³ØªØ§ÛŒÙ„â€ŒØ¯Ù‡ÛŒ Ø¨Ù‡ Ù‡Ø± Ø±Ø¯ÛŒÙ Ø§Ø·Ù„Ø§Ø¹Ø§ØªÛŒ */
    .grid-title, .grid-value {
        padding: 14px 12px;
        border: none; /* Ø­Ø°Ù Ø¨ÙˆØ±Ø¯Ø±Ù‡Ø§ÛŒ Ù‚Ø¨Ù„ÛŒ */
        border-bottom: 1px solid var(--border-color);
        display: flex;
        align-items: center;
    }

    /* Ø§Ø³ØªØ§ÛŒÙ„ Ø¹Ù†ÙˆØ§Ù†â€ŒÙ‡Ø§ (Ø³Ù…Øª Ø±Ø§Ø³Øª Ø¯Ø± Ø­Ø§Ù„Øª RTL) */
    .grid-title {
        font-weight: 700;
        color: var(--text-body);
        background-color: var(--bg-light);
        border-left: 1px solid var(--border-color);
    }
    
    /* Ø§Ø³ØªØ§ÛŒÙ„ Ù…Ù‚Ø¯Ø§Ø±Ù‡Ø§ (Ø³Ù…Øª Ú†Ù¾ Ø¯Ø± Ø­Ø§Ù„Øª RTL) */
    .grid-value {
        font-weight: 500;
        color: var(--text-dark);
        justify-content: flex-start; /* Ù…ØªÙ† Ø±Ø§ Ø¨Ù‡ Ø§Ø¨ØªØ¯Ø§ÛŒ Ø³Ù„ÙˆÙ„ Ù…ÛŒâ€ŒÚ†Ø³Ø¨Ø§Ù†Ø¯ */
    }
    
    /* Ûµ. Ø­Ø°Ù Ø¨ÙˆØ±Ø¯Ø± Ù¾Ø§ÛŒÛŒÙ† Ø§Ø² Ø¢Ø®Ø±ÛŒÙ† Ø¢ÛŒØªÙ…â€ŒÙ‡Ø§ Ø¨Ø±Ø§ÛŒ Ø²ÛŒØ¨Ø§ÛŒÛŒ Ø¨ÛŒØ´ØªØ± */
    /* Ø§ÛŒÙ† Ø¨Ø®Ø´ Ú©Ù…ÛŒ Ù¾ÛŒÚ†ÛŒØ¯Ù‡ Ø§Ø³Øª Ú†ÙˆÙ† Ø¢ÛŒØªÙ…â€ŒÙ‡Ø§ Ø¯ÛŒÚ¯Ø± Ø¯Ø§Ø®Ù„ Ø³ØªÙˆÙ† Ù†ÛŒØ³ØªÙ†Ø¯ */
    .account-details-grid > div:nth-last-child(-n+2) {
        border-bottom: none;
    }
}





/* =================================================================== */
/*  YEKTAINVEST - "AWESOME" RESPONSIVE LAYOUT FOR REVIEW CONTENT     */
/* =================================================================== */

@media (max-width: 768px) {

    /* --- Û±. Ø¨Ù‡ÛŒÙ†Ù‡â€ŒØ³Ø§Ø²ÛŒ Ú©Ø§Ù†ØªÛŒÙ†Ø± Ø§ØµÙ„ÛŒ Ùˆ ØªØ§ÛŒÙ¾ÙˆÚ¯Ø±Ø§ÙÛŒ --- */
    .review-content-section.card {
        padding: 24px 16px; /* Ù¾Ø¯ÛŒÙ†Ú¯ Ø¯Ø§Ø®Ù„ÛŒ Ø¨Ø±Ø§ÛŒ Ø¬Ø¯Ø§ Ø´Ø¯Ù† Ø§Ø² Ù„Ø¨Ù‡â€ŒÙ‡Ø§ÛŒ ØµÙØ­Ù‡ */
        border: none;
        border-radius: 0;
        box-shadow: none;
    }
    .review-content-section h3 {
        font-size: 22px; /* Ú©Ù…ÛŒ Ø¨Ø²Ø±Ú¯ØªØ± Ú©Ø±Ø¯Ù† Ø¹Ù†ÙˆØ§Ù† Ø§ØµÙ„ÛŒ Ø¨Ø®Ø´ */
    }
    .review-content-section h4 {
        font-size: 18px;
    }
    .review-content-section p, .review-content-section li {
        font-size: 16px;      /* Ø§ÙØ²Ø§ÛŒØ´ Ø§Ù†Ø¯Ø§Ø²Ù‡ ÙÙˆÙ†Øª Ø¨Ø±Ø§ÛŒ Ø®ÙˆØ§Ù†Ø§ÛŒÛŒ Ø¨Ù‡ØªØ± */
        line-height: 1.9;     /* Ø§ÙØ²Ø§ÛŒØ´ ÙØ§ØµÙ„Ù‡ Ø¨ÛŒÙ† Ø®Ø·ÙˆØ· Ø¨Ø±Ø§ÛŒ ØªÙ†ÙØ³ Ù…ØªÙ† */
    }
    .review-content-section ul, .review-content-section ol {
        padding-right: 25px; /* Ú©Ù…ÛŒ ØªÙˆØ±ÙØªÚ¯ÛŒ Ø¨ÛŒØ´ØªØ± Ø¨Ø±Ø§ÛŒ Ù„ÛŒØ³Øªâ€ŒÙ‡Ø§ */
    }

    /* --- Û². Ø§Ø³ØªØ§ÛŒÙ„ "Ø®ÙÙ†" Ø¨Ø±Ø§ÛŒ Ù†Ù‚Ù„ Ù‚ÙˆÙ„â€ŒÙ‡Ø§ (Blockquotes) --- */
    .review-content-section blockquote {
        margin: 24px 0;
        padding: 20px;
        border-right: 4px solid var(--primary-blue); /* ÛŒÚ© Ø®Ø· Ø±Ù†Ú¯ÛŒ Ø¯Ø± Ø³Ù…Øª Ø±Ø§Ø³Øª */
        background-color: var(--disclaimer-bg);     /* ÛŒÚ© Ù¾Ø³â€ŒØ²Ù…ÛŒÙ†Ù‡ Ù…Ù„Ø§ÛŒÙ… */
        border-radius: 8px;
        position: relative;
    }
    .review-content-section blockquote p {
        font-size: 15px !important; /* ÙÙˆÙ†Øª Ú©Ù…ÛŒ Ú©ÙˆÚ†Ú©ØªØ± Ùˆ Ø§ÛŒØªØ§Ù„ÛŒÚ© Ø¨Ø±Ø§ÛŒ Ù†Ù‚Ù„ Ù‚ÙˆÙ„ */
        font-style: italic;
        color: var(--text-body);
    }
    /* Ø§ÙØ²ÙˆØ¯Ù† ÛŒÚ© Ø¢ÛŒÚ©Ù† Ù†Ù‚Ù„ Ù‚ÙˆÙ„ Ø¨Ø±Ø§ÛŒ Ø²ÛŒØ¨Ø§ÛŒÛŒ Ø¨ÛŒØ´ØªØ± */
    .review-content-section blockquote::before {
        content: "\f10e"; /* Ú©Ø¯ Ø¢ÛŒÚ©Ù† Ù†Ù‚Ù„ Ù‚ÙˆÙ„ Ø§Ø² Font Awesome */
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        position: absolute;
        top: -10px;
        right: 15px;
        font-size: 28px;
        color: rgba(var(--primary-blue-rgb), 0.2);
    }

    /* --- Û³. ØªØµØ§ÙˆÛŒØ± Ø¨Ø±Ø¬Ø³ØªÙ‡ --- */
    .review-content-section img {
        border-radius: 12px; /* Ú¯Ø±Ø¯ Ú©Ø±Ø¯Ù† Ú¯ÙˆØ´Ù‡â€ŒÙ‡Ø§ÛŒ ØªØµÙˆÛŒØ± */
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08); /* Ø§ÙØ²ÙˆØ¯Ù† Ø³Ø§ÛŒÙ‡ Ù…Ù„Ø§ÛŒÙ… */
        margin: 24px 0; /* ÙØ§ØµÙ„Ù‡ Ø§Ø² Ø¨Ø§Ù„Ø§ Ùˆ Ù¾Ø§ÛŒÛŒÙ† */
    }

    /* --- Û´. Ø±Ø§Ù‡Ù†Ù…Ø§ÛŒ Ø¨ØµØ±ÛŒ Ø¨Ø±Ø§ÛŒ Ø¬Ø¯Ø§ÙˆÙ„ Ù‚Ø§Ø¨Ù„ Ø§Ø³Ú©Ø±ÙˆÙ„ --- */
    .review-content-section .table-responsive-wrapper {
        position: relative;
        border: 1px solid var(--border-color);
        border-radius: 12px;
        margin-bottom: 24px;
    }
    /* Ø§ÛŒÙ† Ø´Ø¨Ù‡â€ŒØ§Ù„Ù…Ø§Ù†ØŒ ÛŒÚ© Ø±Ø§Ù‡Ù†Ù…Ø§ Ø¯Ø± Ø³Ù…Øª Ú†Ù¾ Ø¬Ø¯ÙˆÙ„ Ø§Ø¶Ø§ÙÙ‡ Ù…ÛŒâ€ŒÚ©Ù†Ø¯ */
    .review-content-section .table-responsive-wrapper::after {
        content: "âŸµ Ø¨Ø±Ø§ÛŒ Ù…Ø´Ø§Ù‡Ø¯Ù‡ Ú©Ø§Ù…Ù„ØŒ Ø§Ø³Ú©Ø±ÙˆÙ„ Ú©Ù†ÛŒØ¯";
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        display: flex;
        align-items: center;
        padding: 0 10px;
        font-size: 11px;
        font-weight: bold;
        color: var(--text-dark);
        background: linear-gradient(to left, rgba(255, 255, 255, 0), var(--white) 50%);
        pointer-events: none; /* Ø§Ø¬Ø§Ø²Ù‡ Ù…ÛŒâ€ŒØ¯Ù‡Ø¯ Ú©Ù„ÛŒÚ©â€ŒÙ‡Ø§ Ø§Ø² Ø±ÙˆÛŒ Ø¢Ù† Ø¹Ø¨ÙˆØ± Ú©Ù†Ù†Ø¯ */
        opacity: 0.8;
    }
}




/* =================================================================== */
/*  YEKTAINVEST - FIX FOR AJAX SPINNER CENTERING ON MOBILE           */
/* =================================================================== */

@media (max-width: 1024px) {

    /* Ù„Ø§ÛŒÙ‡ Ø®Ø§Ú©Ø³ØªØ±ÛŒ Ú©Ù‡ Ø§Ø³Ù¾ÛŒÙ†Ø± Ø¯Ø§Ø®Ù„ Ø¢Ù† Ø§Ø³Øª */
    .loading-overlay {
        /* Û±. Ù…ÙˆÙ‚Ø¹ÛŒØª Ø±Ø§ Ù†Ø³Ø¨Øª Ø¨Ù‡ Ù¾Ù†Ø¬Ø±Ù‡ Ù…Ø±ÙˆØ±Ú¯Ø± ØªÙ†Ø¸ÛŒÙ… Ù…ÛŒâ€ŒÚ©Ù†Ø¯ */
        position: fixed; 

        /* Û². Ù„Ø§ÛŒÙ‡ Ø±Ø§ Ø¨Ù‡ Ø§Ù†Ø¯Ø§Ø²Ù‡ Ú©Ù„ ØµÙØ­Ù‡ Ù†Ù…Ø§ÛŒØ´ Ø¨Ø²Ø±Ú¯ Ù…ÛŒâ€ŒÚ©Ù†Ø¯ */
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        
        /* Û³. ÛŒÚ© z-index Ø¨Ø³ÛŒØ§Ø± Ø¨Ø§Ù„Ø§ ØªØ§ Ø±ÙˆÛŒ Ù‡Ù…Ù‡ Ú†ÛŒØ² (Ø­ØªÛŒ Ù…Ù†ÙˆÛŒ ÙÛŒÙ„ØªØ±) Ù‚Ø±Ø§Ø± Ø¨Ú¯ÛŒØ±Ø¯ */
        z-index: 9999; 
    }
	.elms_left > div, .sf-menu > .cz, .cz_helm_pos_left {
    float: none !important;
		    display: table;
    margin: 0 auto !important;
}
}







/* =================================================================== */
/* !! Ø§ØµÙ„Ø§Ø­ Ù†Ù‡Ø§ÛŒÛŒ Ùˆ Ø¬Ø§Ù…Ø¹ Ø¨Ø±Ø§ÛŒ Ø­Ø§Ù„Øª Ù„ÛŒØ³ØªÛŒ (Ø¨Ø±ÙˆÚ©Ø±ØŒ ØµØ±Ø§ÙÛŒ Ùˆ Ù¾Ø±Ø§Ù¾ ÙØ±Ù…) !!      */
/* =================================================================== */

/* Û±. ØªØ¹Ø±ÛŒÙ Ú¯Ø±ÛŒØ¯ Ûµ Ø³ØªÙˆÙ†Ù‡ Ø¨Ø±Ø§ÛŒ Ù‡Ø± Ø³Ù‡ Ù†ÙˆØ¹ Ú©Ø§Ø±Øª */
.broker-grid.list-view .broker-card,
.broker-grid.list-view .exchange-card,
.broker-grid.list-view .propfirm-card { /* Ø³Ù„Ú©ØªÙˆØ± Ù¾Ø±Ø§Ù¾ ÙØ±Ù… Ø§Ø¶Ø§ÙÙ‡ Ø´Ø¯ */
    display: grid;
    align-items: center;
    gap: 20px;

    /* Ø³ØªÙˆÙ†â€ŒÙ‡Ø§: Ù„ÙˆÚ¯Ùˆ | Ø¹Ù†ÙˆØ§Ù† | Ø§Ù…ØªÛŒØ§Ø² | Ù…ØªØ§ | Ø¯Ú©Ù…Ù‡â€ŒÙ‡Ø§ */
    grid-template-columns: 120px minmax(0, 1fr) 90px 240px 160px;
}

/* Û². Ù†Ø§Ø¯ÛŒØ¯Ù‡ Ú¯Ø±ÙØªÙ† Ú©Ø§Ù†ØªÛŒÙ†Ø± ÙˆØ§Ù„Ø¯ Ø¨Ø±Ø§ÛŒ Ù‚Ø±Ø§Ø±Ú¯ÛŒØ±ÛŒ Ù…Ø³ØªÙ‚ÛŒÙ… ÙØ±Ø²Ù†Ø¯Ø§Ù† Ø¯Ø± Ú¯Ø±ÛŒØ¯ */
.broker-grid.list-view .broker-card .card-main-info,
.broker-grid.list-view .exchange-card .card-main-info,
.broker-grid.list-view .propfirm-card .card-main-info { /* Ø³Ù„Ú©ØªÙˆØ± Ù¾Ø±Ø§Ù¾ ÙØ±Ù… Ø§Ø¶Ø§ÙÙ‡ Ø´Ø¯ */
    display: contents;
}

/* Û³. Ù‚Ø±Ø§Ø± Ø¯Ø§Ø¯Ù† Ù‡Ø± Ø¨Ø®Ø´ Ø¯Ø± Ø³ØªÙˆÙ† Ù…Ø´Ø®Øµ Ø®ÙˆØ¯Ø´ */
.broker-grid.list-view .broker-card .card-logo,
.broker-grid.list-view .exchange-card .card-logo,
.broker-grid.list-view .propfirm-card .card-logo {
    grid-column: 1;
}

.broker-grid.list-view .broker-card .card-title-group,
.broker-grid.list-view .exchange-card .card-title-group,
.broker-grid.list-view .propfirm-card .card-title-group {
    grid-column: 2;
    min-width: 0;
    padding-right: 40px;
}

.broker-grid.list-view .broker-card .card-rating-group,
.broker-grid.list-view .exchange-card .card-rating-group,
.broker-grid.list-view .propfirm-card .card-rating-group {
    grid-column: 3;
}

.broker-grid.list-view .broker-card .card-meta,
.broker-grid.list-view .exchange-card .card-meta,
.broker-grid.list-view .propfirm-card .card-meta {
    grid-column: 4;
    display: flex;
    justify-content: space-around;
}

.broker-grid.list-view .broker-card .card-actions,
.broker-grid.list-view .exchange-card .card-actions,
.broker-grid.list-view .propfirm-card .card-actions {
    grid-column: 5;
}

/* Û´. Ú©Ù†ØªØ±Ù„ Ø³Ø±Ø±ÛŒØ² Ø´Ø¯Ù† Ù…ØªÙ† Ø¹Ù†ÙˆØ§Ù†â€ŒÙ‡Ø§ÛŒ Ø·ÙˆÙ„Ø§Ù†ÛŒ */
.broker-grid.list-view .broker-card .card-title,
.broker-grid.list-view .exchange-card .card-title,
.broker-grid.list-view .propfirm-card .card-title { /* Ø³Ù„Ú©ØªÙˆØ± Ù¾Ø±Ø§Ù¾ ÙØ±Ù… Ø§Ø¶Ø§ÙÙ‡ Ø´Ø¯ */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}



/* =================================================================== */
/*  YEKTAINVEST - FIX FOR EQUAL HEIGHT & ALIGNED BUTTONS IN COMPARISON */
/* =================================================================== */

/* 
 * Û±. Ø¨Ù‡ Ú©Ø§Ù†ØªÛŒÙ†Ø± Ø§ØµÙ„ÛŒ Ù…Ø­ØªÙˆØ§ÛŒ Ù‡Ø± Ø³ØªÙˆÙ†ØŒ Ù‚Ø§Ø¨Ù„ÛŒØª flex Ù…ÛŒâ€ŒØ¯Ù‡ÛŒÙ…
 *    ØªØ§ Ø¨ØªÙˆØ§Ù†ÛŒÙ… Ù…Ø­ØªÙˆØ§ÛŒ Ø¢Ù† Ø±Ø§ Ø¨Ù‡ ØµÙˆØ±Øª Ø¹Ù…ÙˆØ¯ÛŒ Ù…Ø¯ÛŒØ±ÛŒØª Ú©Ù†ÛŒÙ….
*/
.compare-col .broker-sticky-header {
    display: flex;
    flex-direction: column; /* Ú†ÛŒØ¯Ù…Ø§Ù† Ø¹Ù…ÙˆØ¯ÛŒ (Ø²ÛŒØ± Ù‡Ù…) */
    flex-grow: 1;          /* Ø§ÛŒÙ† Ø¨Ø®Ø´ Ø¨Ø§Ø¹Ø« Ù…ÛŒâ€ŒØ´ÙˆØ¯ ØªØ§ Ø§ÛŒÙ† Ú©Ø§Ù†ØªÛŒÙ†Ø± ØªÙ…Ø§Ù… Ø§Ø±ØªÙØ§Ø¹ Ø®Ø§Ù„ÛŒ Ú©Ø§Ø±Øª Ø±Ø§ Ù¾Ø± Ú©Ù†Ø¯ */
}

/* 
 * Û². Ø¬Ø§Ø¯ÙˆÛŒ Ø§ØµÙ„ÛŒ Ø§ÛŒÙ†Ø¬Ø§Ø³Øª:
 *    Ø¨Ù‡ Ø¯Ú©Ù…Ù‡ Ø§ØµÙ„ÛŒ ÛŒÚ© margin-top Ø®ÙˆØ¯Ú©Ø§Ø± Ù…ÛŒâ€ŒØ¯Ù‡ÛŒÙ…. Ø§ÛŒÙ† Ú©Ø§Ø± Ø¨Ø§Ø¹Ø« Ù…ÛŒâ€ŒØ´ÙˆØ¯
 *    ØªÙ…Ø§Ù… ÙØ¶Ø§ÛŒ Ø®Ø§Ù„ÛŒ Ù…ÙˆØ¬ÙˆØ¯ Ø¯Ø± Ø¨Ø§Ù„Ø§ÛŒ Ø¯Ú©Ù…Ù‡ Ù‚Ø±Ø§Ø± Ø¨Ú¯ÛŒØ±Ø¯ Ùˆ Ø¯Ú©Ù…Ù‡ Ø¨Ù‡ Ù¾Ø§ÛŒÛŒÙ† Ø¨Ú†Ø³Ø¨Ø¯.
*/
.compare-col .broker-sticky-header .btn-primary {
    margin-top: auto; /* Ø§ÛŒÙ† Ø¯Ø³ØªÙˆØ± Ø¯Ú©Ù…Ù‡ Ø±Ø§ Ø¨Ù‡ Ù¾Ø§ÛŒÛŒÙ†â€ŒØªØ±ÛŒÙ† Ù†Ù‚Ø·Ù‡ Ù…Ù…Ú©Ù† Ù‡Ù„ Ù…ÛŒâ€ŒØ¯Ù‡Ø¯ */
}
/* =================================================================== */
/*  YEKTAINVEST - RTL FIX FOR BROKER SEARCH MODAL                     */
/* =================================================================== */

/* 
 * Û±. ØªØºÛŒÛŒØ± Ø¬Ù‡Øª Ú†ÛŒØ¯Ù…Ø§Ù† Ø¢ÛŒØªÙ…â€ŒÙ‡Ø§ÛŒ Ù„ÛŒØ³Øª Ø§Ø² Ú†Ù¾-Ø¨Ù‡-Ø±Ø§Ø³Øª Ø¨Ù‡ Ø±Ø§Ø³Øª-Ø¨Ù‡-Ú†Ù¾.
 *    Ø§ÛŒÙ† Ú©Ø§Ø± Ø¨Ø§Ø¹Ø« Ù…ÛŒâ€ŒØ´ÙˆØ¯ Ù†Ø§Ù… Ø¨Ø±ÙˆÚ©Ø± Ø¯Ø± Ø³Ù…Øª Ø±Ø§Ø³Øª Ùˆ Ù„ÙˆÚ¯Ùˆ Ø¯Ø± Ø³Ù…Øª Ú†Ù¾ Ù‚Ø±Ø§Ø± Ø¨Ú¯ÛŒØ±Ø¯.
*/
.broker-search-item {
    flex-direction: row; /* Ø§ÛŒÙ† Ù…Ù‡Ù…â€ŒØªØ±ÛŒÙ† Ø¯Ø³ØªÙˆØ± Ø§Ø³Øª */
    justify-content: flex-start; /* Ù…Ø­ØªÙˆØ§ Ø±Ø§ Ø§Ø² Ø³Ù…Øª Ø±Ø§Ø³Øª Ø´Ø±ÙˆØ¹ Ø¨Ù‡ Ú†ÛŒØ¯Ù† Ù…ÛŒâ€ŒÚ©Ù†Ø¯ */
}

/* 
 * Û². Ø¬Ø§Ø¨Ø¬Ø§ÛŒÛŒ ÙØ§ØµÙ„Ù‡ Ø¨ÛŒÙ† Ù„ÙˆÚ¯Ùˆ Ùˆ Ù†Ø§Ù….
 *    Ø¯Ø± Ø­Ø§Ù„Øª Ù‚Ø¨Ù„ÛŒ ÙØ§ØµÙ„Ù‡ Ø¯Ø± Ø³Ù…Øª Ú†Ù¾ Ù„ÙˆÚ¯Ùˆ Ø¨ÙˆØ¯ØŒ Ø§Ú©Ù†ÙˆÙ† Ø¨Ø§ÛŒØ¯ Ø¨Ù‡ Ø³Ù…Øª Ø±Ø§Ø³Øª Ø¢Ù† Ù…Ù†ØªÙ‚Ù„ Ø´ÙˆØ¯.
*/
.broker-search-item img {
    margin-left: 15px;        /* Ø­Ø°Ù ÙØ§ØµÙ„Ù‡ Ù‚Ø¨Ù„ÛŒ Ø§Ø² Ø³Ù…Øª Ú†Ù¾ */
    margin-right: 15px;    /* Ø§ÛŒØ¬Ø§Ø¯ ÙØ§ØµÙ„Ù‡ Ø¬Ø¯ÛŒØ¯ Ø¯Ø± Ø³Ù…Øª Ø±Ø§Ø³Øª (Ø¨ÛŒÙ† Ù„ÙˆÚ¯Ùˆ Ùˆ Ù†Ø§Ù…) */
}
.broker-search-item img {
    /* Û±. Ø§Ø¨Ø¹Ø§Ø¯ ÛŒÚ©Ø³Ø§Ù† Ø¨Ø±Ø§ÛŒ Ú©Ø§Ø¯Ø± Ù‡Ù…Ù‡ Ù„ÙˆÚ¯ÙˆÙ‡Ø§ Ø¬Ù‡Øª ØªØ±Ø§Ø² Ø¨ÙˆØ¯Ù† */
    width: 90px;   /* Ú©Ù…ÛŒ Ø¹Ø±Ø¶ Ø±Ø§ Ø§ÙØ²Ø§ÛŒØ´ Ù…ÛŒâ€ŒØ¯Ù‡ÛŒÙ… Ø¨Ø±Ø§ÛŒ Ù„ÙˆÚ¯ÙˆÙ‡Ø§ÛŒ Ø¹Ø±ÛŒØ¶â€ŒØªØ± */
    height: 50px;  /* ÛŒÚ© Ø§Ø±ØªÙØ§Ø¹ Ø«Ø§Ø¨Øª Ø¨Ø±Ø§ÛŒ Ù‡Ù…Ù‡ ØªØ¹Ø±ÛŒÙ Ù…ÛŒâ€ŒÚ©Ù†ÛŒÙ… */

    /* Û². Ø¯Ø³ØªÙˆØ± Ú©Ù„ÛŒØ¯ÛŒ Ø¨Ø±Ø§ÛŒ Ù†Ù…Ø§ÛŒØ´ Ú©Ø§Ù…Ù„ ØªØµÙˆÛŒØ± */
    /* Ø§ÛŒÙ† ÙˆÛŒÚ˜Ú¯ÛŒ ØªØ¶Ù…ÛŒÙ† Ù…ÛŒâ€ŒÚ©Ù†Ø¯ Ú©Ù‡ Ú©Ù„ ØªØµÙˆÛŒØ± Ø¨Ø§ Ø­ÙØ¸ Ù†Ø³Ø¨Øª Ø§Ø¨Ø¹Ø§Ø¯Ø´ØŒ
       Ø¨Ø¯ÙˆÙ† Ù‡ÛŒÚ†â€ŒÚ¯ÙˆÙ†Ù‡ Ø¨Ø±Ø´ÛŒØŒ Ø¯Ø±ÙˆÙ† Ú©Ø§Ø¯Ø± Ø¨Ø§Ù„Ø§ (90x50 Ù¾ÛŒÚ©Ø³Ù„) Ø¬Ø§ Ø´ÙˆØ¯. */
    object-fit: contain;
}








/* ==========================================================================
   Broker Page - Regulators Section Styles
   ========================================================================== */

/* The main container for the regulators section */
#broker-regulators-section {
    padding: 24px;
    margin-top: 24px; /* Adds space between this and the content above */
}

#broker-regulators-section h2 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 22px; /* Or your theme's standard h2 size */
}

/* The list that holds all regulator items */
.regulators-list {
    display: flex;
    flex-direction: column;
    gap: 16px; /* Space between each regulator item */
}

/* Individual regulator item styling */
.regulator-item {
    display: flex;
    align-items: center;
    gap: 15px; /* Space between icon and text */
    padding: 16px;
    background-color: #f9f9f9; /* A light background color */
    border: 1px solid #e0e0e0;
    border-radius: 8px; /* Rounded corners */
    transition: background-color 0.3s, box-shadow 0.3s;
}

.regulator-item:hover {
    background-color: #f0f0f0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

/* Styling for the shield icon */
.regulator-item .fa-shield-halved {
    font-size: 28px;
    color: #0073aa; /* A professional blue color */
}

/* Container for the text content */
.regulator-info {
    display: flex;
    flex-direction: column;
}

/* Styling for the regulator's name */
.regulator-name {
    font-weight: bold;
    font-size: 16px;
    color: #333;
}

/* Styling for the regulator's details (license number, etc.) */
.regulator-details {
    font-size: 14px;
    color: #666;
    margin-top: 2px;
}











/* --- INFINITE SCROLL LOADER STYLES --- */
.yit-infinite-loader-wrapper {
    display: flex;
    flex-direction: column; /* Stack spinner and text vertically */
    align-items: center;
    justify-content: center;
    padding: 40px 20px; /* More padding for prominence */
    margin-top: 30px;
    background-color: #f8fafd; /* Light background to stand out */
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); /* Subtle shadow */
    transition: all 0.3s ease-in-out;
    opacity: 1;
}

/* Spinner animation - Three bouncing dots */
.yit-loader-spinner {
    margin-bottom: 15px; /* Space between spinner and text */
    width: 70px; /* Overall width for the spinner */
    text-align: center;
}

.yit-loader-spinner > div {
    width: 18px;
    height: 18px;
    background-color: #2f80ed; /* A vibrant color for the spinner */
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: yit-bouncedelay 1.4s infinite ease-in-out both;
    animation: yit-bouncedelay 1.4s infinite ease-in-out both;
}

.yit-loader-spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.yit-loader-spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

@-webkit-keyframes yit-bouncedelay {
    0%, 80%, 100% { -webkit-transform: scale(0) }
    40% { -webkit-transform: scale(1.0) }
}

@keyframes yit-bouncedelay {
    0%, 80%, 100% { 
        transform: scale(0);
        -webkit-transform: scale(0);
    } 40% { 
        transform: scale(1.0);
        -webkit-transform: scale(1.0);
    }
}

/* Loader text style */
.yit-loader-text {
    font-size: 1.3em; /* Larger font size */
    color: #333; /* Darker text for better contrast */
    font-weight: 600;
    direction: rtl; /* Ensure correct text direction */
    text-align: center;
}

/* "No more results" message style */
.no-more-results-message {
    text-align: center;
    padding: 30px;
    font-size: 1.2em;
    color: #888;
    background-color: #f0f3f7;
    border-top: 1px solid #e0e4eb;
    margin-top: 30px;
    border-radius: 10px;
    font-weight: 500;
}

/* --- NEW ITEM FADE-IN ANIMATION --- */
/* This will make newly loaded broker cards fade in smoothly */
.broker-card.yit-fade-in {
    opacity: 0;
    transform: translateY(20px);
    animation: yit-fadein-up 0.5s ease-out forwards;
}

@keyframes yit-fadein-up {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Ensure existing cards don't have the fade-in animation */
/* If you are completely replacing resultsContainer, this might not be needed.
   But if you are appending, ensure existing cards don't re-animate. */
.broker-grid .broker-card {
    opacity: 1; /* Default state */
}

/* If you need to hide the initial loading overlay more dramatically */
.loading-overlay.visible {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease-in-out;
}
.loading-overlay {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0s linear 0.3s;
}




/* ======================================================= */
/* =     Responsive Typography for Review (Smaller)      = */
/* ======================================================= */

/* Ø§Ù†Ø¯Ø§Ø²Ù‡ ÙÙˆÙ†Øª Ù¾Ø§ÛŒÙ‡ Ø¨Ø±Ø§ÛŒ Ù…ÙˆØ¨Ø§ÛŒÙ„ */
.review-content-section p,
.review-content-section li {
    font-size: 14.5px;
    line-height: 1.65;
}
.review-content-section h1 { font-size: 24px; }
.review-content-section h2 { font-size: 22px; }
.review-content-section h3 { font-size: 19px; }
.review-content-section h4 { font-size: 17px; }

/* Ø§Ù†Ø¯Ø§Ø²Ù‡ ÙÙˆÙ†Øª Ø¨Ø±Ø§ÛŒ ØªØ¨Ù„Øª (ØµÙØ­Ù‡â€ŒÙ‡Ø§ÛŒ Ø¨Ø²Ø±Ú¯ØªØ± Ø§Ø² 768 Ù¾ÛŒÚ©Ø³Ù„) */
@media (min-width: 768px) {

    .review-content-section p,
    .review-content-section li {
        font-size: 15.5px;
    }
	.review-content-section h1 { font-size: 25px; }
    .review-content-section h2 { font-size: 25px; }
    .review-content-section h3 { font-size: 21px; }
    .review-content-section h4 { font-size: 18px; }
}

/* Ø§Ù†Ø¯Ø§Ø²Ù‡ ÙÙˆÙ†Øª Ø¨Ø±Ø§ÛŒ Ø¯Ø³Ú©ØªØ§Ù¾ (ØµÙØ­Ù‡â€ŒÙ‡Ø§ÛŒ Ø¨Ø²Ø±Ú¯ØªØ± Ø§Ø² 1024 Ù¾ÛŒÚ©Ø³Ù„) */
@media (min-width: 1024px) {
    .review-content-section p,
    .review-content-section li {
        font-size: 16.5px;
    }
	.review-content-section h1 { font-size: 28px; }
    .review-content-section h2 { font-size: 28px; }
    .review-content-section h3 { font-size: 23px; }
    .review-content-section h4 { font-size: 19px; }
}
@media (max-width: 768px) {
  .rating-filter-link {
    padding: 0 !important;
  }
}