/*
Theme Name:   বইপড়ি (Boipori)
Theme URI:    https://boipori.docsinhand.com
Description:  বইপড়ি — বিনামূল্যের ইন্টারঅ্যাকটিভ অনলাইন বইপাঠাগার। GeneratePress চাইল্ড থিম; সূচিপত্র, বুকমার্ক, ফন্ট নিয়ন্ত্রণ, ফুলস্ক্রিন ও লাইট-ডার্ক পাঠ মোড।
Author:       Showkatbd
Author URI:   https://showkatbd.com
Template:     generatepress
Version:      2.1.2
License:      GPL-2.0-or-later
Text Domain:  boipori
*/

/* ================================================================
0. BONGOAPPS ডিজাইন ভ্যারিয়েবল — রং বদলাতে শুধু এখানে হাত দিন
================================================================ */
:root,
:root[data-theme="dark"] {
    color-scheme: dark;
    --ba-page-bg: #0a0f1a;
    --ba-card-bg: #111a2b;
    --ba-border: rgba(148, 163, 184, 0.16);
    --ba-accent: #2ee6a6;      /* বঙ্গ-সবুজ */
    --ba-accent-2: #f6a23a;    /* জাফরান/সোনালি */
    --ba-accent-3: #ff5d73;    /* লাল */
    --ba-text-main: #e8eef8;
    --ba-text-muted: #94a3b8;

    /* ডার্ক/লাইট — যেসব রং মোডভেদে বদলায় */
    --ba-w: 255, 255, 255;               /* হালকা আস্তরণের রং-চ্যানেল (rgba-তে ব্যবহৃত) */
    --ba-k: 0, 0, 0;                     /* ছায়ার রং-চ্যানেল */
    --ba-text-strong: #ffffff;           /* শিরোনাম */
    --ba-text-soft: #e2e8f0;             /* মেনু/লিংক */
    --ba-text-soft2: #cbd5e1;
    --ba-text-body: #b6c2d4;             /* তথ্য-পেজের প্যারাগ্রাফ */
    --ba-text-faint: #7c8aa0;
    --ba-header-bg: #0b0f19;
    --ba-footer-bg: #0b0f19;
    --ba-footer-bar: #060911;
    --ba-input-bg: #0f172a;
    --ba-surface-2: #1e293b;             /* ব্লগ গ্রিডের কার্ড */
    --ba-surface-border: #334155;
    --ba-alt-bg: #0c1322;                /* বিকল্প সেকশনের ব্যাকগ্রাউন্ড */
    --ba-on-accent: #04251a;             /* সবুজ/জাফরান বাটনের ওপরের লেখা */
    --ba-accent-mid: #7af0c6;
    --ba-accent-mid2: #8af3cf;
    --ba-final-bg: linear-gradient(135deg, #0e2a27 0%, #0f1a2e 55%, #2a1d12 130%);
}

/* ---------- লাইট মোড ---------- */
:root[data-theme="light"] {
    color-scheme: light;
    --ba-page-bg: #f5f7fb;
    --ba-card-bg: #ffffff;
    --ba-border: rgba(15, 23, 42, 0.12);
    --ba-accent: #08865d;
    --ba-accent-2: #c2620a;
    --ba-accent-3: #dc2f4a;
    --ba-text-main: #0f172a;
    --ba-text-muted: #475569;

    --ba-w: 15, 23, 42;
    --ba-k: 71, 85, 105;
    --ba-text-strong: #0f172a;
    --ba-text-soft: #1e293b;
    --ba-text-soft2: #334155;
    --ba-text-body: #475569;
    --ba-text-faint: #64748b;
    --ba-header-bg: #ffffff;
    --ba-footer-bg: #eef2f8;
    --ba-footer-bar: #e2e8f0;
    --ba-input-bg: #f1f5f9;
    --ba-surface-2: #ffffff;
    --ba-surface-border: #e2e8f0;
    --ba-alt-bg: #eaf0f7;
    --ba-on-accent: #ffffff;
    --ba-accent-mid: #17a874;
    --ba-accent-mid2: #14a56f;
    --ba-final-bg: linear-gradient(135deg, #e3f7ef 0%, #eef3fb 55%, #fdf0e0 130%);
}

/* ফোনের মকআপ ও ভাসমান চিপ — দুই মোডেই ডার্ক থাকে (ডিভাইস স্ক্রিনের মতো) */
.ba-phone,
.ba-float {
    --ba-text-main: #e8eef8; --ba-text-muted: #94a3b8; --ba-text-strong: #ffffff;
    --ba-border: rgba(148, 163, 184, 0.16);
    --ba-w: 255, 255, 255; --ba-k: 0, 0, 0;
    --ba-accent: #2ee6a6; --ba-accent-2: #f6a23a; --ba-on-accent: #04251a;
}

/* মোড বদলের সময় নরম ট্রানজিশন (শুধু বদলের মুহূর্তে চালু) */
html.ba-theme-anim *,
html.ba-theme-anim *::before,
html.ba-theme-anim *::after {
    transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease !important;
}

/* ---------- ডার্ক/লাইট টগল বাটন ---------- */
.ba-theme-toggle {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    width: 46px; height: 46px; padding: 0; border-radius: 50%; cursor: pointer;
    background: var(--ba-card-bg) !important; color: var(--ba-text-strong) !important;
    border: 1px solid var(--ba-border) !important; line-height: 1;
    box-shadow: 0 8px 24px rgba(var(--ba-k), .28);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}
.ba-theme-toggle:hover { transform: translateY(-2px) rotate(12deg); border-color: var(--ba-accent) !important; }
.ba-theme-toggle:focus-visible { outline: 3px solid var(--ba-accent); outline-offset: 2px; }
.ba-theme-toggle svg { width: 22px; height: 22px; fill: none !important; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ba-theme-toggle .ba-ic-sun  { display: none; }
.ba-theme-toggle .ba-ic-moon { display: block; }
:root[data-theme="dark"] .ba-theme-toggle .ba-ic-sun  { display: block; }
:root[data-theme="dark"] .ba-theme-toggle .ba-ic-moon { display: none; }
.ba-theme-toggle .ba-tt-label { display: none; font-size: 14px; font-weight: 600; }
/* ভাসমান অবস্থান (ডিফল্ট) */
.ba-theme-fab { position: fixed; right: 18px; bottom: 18px; z-index: 9990; }
@media print { .ba-theme-fab { display: none !important; } }

/* ---------- লাইট মোডে অতিরিক্ত সূক্ষ্ম সমন্বয় ---------- */
:root[data-theme="light"] .site-footer::before,
:root[data-theme="light"] .ba-footer-band::before { opacity: .9; }
:root[data-theme="light"] .ba-footer-band { background:
    radial-gradient(700px 260px at 90% 0%, rgba(8, 134, 93, 0.07), transparent 60%),
    radial-gradient(600px 260px at 0% 100%, rgba(194, 98, 10, 0.06), transparent 60%),
    var(--ba-footer-bg); }
:root[data-theme="light"] .ba-footer-band strong,
:root[data-theme="light"] .ba-footer-band b { color: var(--ba-text-strong); }
:root[data-theme="light"] .single-post .featured-image img,
:root[data-theme="light"] .inside-article .featured-image img { border-color: var(--ba-border) !important; }
:root[data-theme="light"] .blog .post-image::after,
:root[data-theme="light"] .archive .post-image::after { background: linear-gradient(to bottom, transparent 65%, rgba(15, 23, 42, 0.28)); }



/* ================================================================
1. GOOGLE FONTS & GLOBAL THEME VARIABLES
================================================================ */



/* পুরো সাইটের ফন্ট ফ্যামিলি ফিক্স */
body, h1, h2, h3, h4, h5, h6, p, a, span, li, input, textarea, button, div {
    font-family: 'Hind Siliguri', 'Noto Sans Bengali', sans-serif !important;
}

/* থিমের টাইটেল হাইড করা */
.home .ast-page-title-wrap, .home .entry-title {
    display: none !important;
}

/* ================================================================
2. MAIN BODY & CONTAINERS MIX
================================================================ */
body, 
#page, 
.site-content, 
.content-area, 
main#main,
article, 
.inside-article,
.separate-containers .inside-article,
.one-container .site-content,
.wp-block-group,
.entry-content {
    background-color: var(--ba-page-bg) !important;
    color: var(--ba-text-main) !important;
}

/* ================================================================
3. HEADER & NAVIGATION MENU FIX (মেনুর সাদা ব্যাকগ্রাউন্ড ফিক্স + গভীর ফিক্স)
================================================================ */
/* হেডার এরিয়া এবং মেনুর ভেতরের সব কন্টেইনার ডার্ক করা */
.site-header, 
.header-wrap, 
#masthead,
.main-navigation,
.main-navigation ul,
.main-navigation .inside-navigation,
.navigation-clone,
.ast-primary-header-bar,
.main-header-bar,
.ast-header-break-point .main-header-bar,
.site-header .ast-container {
    background-color: var(--ba-on-accent) !important; /* নিখুঁত ডার্ক ব্যাকগ্রাউন্ড */
    border-color: var(--ba-border) !important;
}

/* সাইট লোগো/টাইটেল টেক্সট (বইপড়ি) স্পষ্ট করা */
.site-branding .main-title a, 
.site-branding .site-description,
.main-title a {
    color: var(--ba-text-strong) !important;
}

/* মেনুবার নেভিগেশন লিংক (পরিচিতি, নীতিমালা, যোগাযোগ ইত্যাদি) কালার ফিক্স */
.main-navigation a, 
.main-navigation ul li a,
.menu-toggle,
.main-navigation .main-nav ul li a {
    color: var(--ba-text-soft) !important; /* উজ্জ্বল গ্রে টেক্সট */
    background: transparent !important;
    font-weight: 500 !important;
}

/* মেনু হোভার ইফেক্ট */
.main-navigation a:hover, 
.main-navigation ul li a:hover,
.main-navigation .main-nav ul li a:hover {
    color: var(--ba-accent) !important;
    background: transparent !important;
}

/* সাব-মেনু (ড্রপডাউন) ডিফল্ট সাদা ব্যাকগ্রাউন্ড ফিক্স — এটাই মূলত হেডার পড়া না যাওয়ার বড় কারণ */
.main-navigation ul ul,
.main-navigation .sub-menu,
.main-header-bar-navigation ul ul {
    background-color: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    box-shadow: 0 12px 25px rgba(var(--ba-k), 0.4) !important;
}

.main-navigation ul ul li a {
    color: var(--ba-text-soft) !important;
}

.main-navigation ul ul li a:hover {
    color: var(--ba-accent) !important;
}

/* মোবাইল হ্যামবার্গার আইকন (৩ লাইন) সাদা করা যাতে ডার্ক ব্যাকগ্রাউন্ডে দেখা যায় */
.ast-mobile-menu-buttons-minimal .astra-menu-toggle-open,
.ast-mobile-menu-buttons-minimal .astra-menu-toggle-close,
.menu-toggle .toggle-bar,
button.menu-toggle::before,
button.menu-toggle::after {
    background-color: var(--ba-text-strong) !important;
    color: var(--ba-text-strong) !important;
}

/* হেডারের ভেতরের যেকোনো SVG আইকন (সার্চ, অ্যাকাউন্ট ইত্যাদি) সাদা করা */
.site-header svg,
.ast-header-search svg,
.astra-search-icon svg,
.ast-mobile-menu-buttons svg {
    fill: var(--ba-text-strong) !important;
    color: var(--ba-text-strong) !important;
}

/* মোবাইল মেনু প্যানেল (স্লাইড-ইন/ড্রয়ার) ডার্ক ব্যাকগ্রাউন্ড */
.ast-mobile-header-content,
.ast-header-break-point .main-navigation {
    background-color: var(--ba-on-accent) !important;
}

/* ================================================================
3B. বইপড়ি থিম স্পেসিফিক হেডার ফিক্স
================================================================ */
/* বইপড়ি হেডার/টপ-বার/নেভিগেশন কন্টেইনার ডার্ক করা */
#masthead,
.inside-header,
#site-navigation,
#top-bar,
.inside-top-bar,
.inside-navigation {
    background-color: var(--ba-on-accent) !important;
    border-color: var(--ba-border) !important;
}

/* বইপড়ি এর মূল মেনু লিংক */
#site-navigation ul li a,
.main-nav ul li a,
.main-nav > ul > li > a {
    color: var(--ba-text-soft) !important;
    background: transparent !important;
}

#site-navigation ul li a:hover,
.main-nav ul li a:hover {
    color: var(--ba-accent) !important;
}

/* বইপড়ি সাব-মেনু (ড্রপডাউন) */
.main-nav ul ul,
#site-navigation ul ul,
.sub-menu {
    background-color: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    box-shadow: 0 12px 25px rgba(var(--ba-k), 0.4) !important;
}

.main-nav ul ul li a,
#site-navigation ul ul li a {
    color: var(--ba-text-soft) !important;
}

.main-nav ul ul li a:hover {
    color: var(--ba-accent) !important;
}

/* বইপড়ি মোবাইল হ্যামবার্গার বাটন ও এর ভেতরের আইকন (SVG "currentColor" ব্যবহার করে বলে color সেট করলেই কাজ করে) */
.menu-toggle,
.mobile-menu-control-wrapper,
.menu-toggle .mobile-menu-control-wrapper {
    color: var(--ba-text-strong) !important;
}

.menu-toggle svg,
.menu-toggle .gp-icon svg,
.mobile-menu-control-wrapper svg {
    fill: var(--ba-text-strong) !important;
    color: var(--ba-text-strong) !important;
}

/* বইপড়ি মোবাইল স্লাইড-আউট মেনু প্যানেল */
.main-nav.slideout-navigation,
.main-navigation.slideout-navigation,
.slideout-navigation {
    background-color: var(--ba-on-accent) !important;
}

/* বইপড়ি সার্চ/অন্যান্য হেডার আইকন (gp-icon ক্লাস দিয়ে SVG sprite ব্যবহার করে) */
.site-header .gp-icon svg,
#site-navigation .gp-icon svg,
.inside-header .gp-icon svg {
    fill: var(--ba-text-strong) !important;
}

/* বইপড়ি সাইট টাইটেল/লোগো টেক্সট */
.site-logo .main-title a,
.site-title a,
.site-description {
    color: var(--ba-text-strong) !important;
}

/* ================================================================
4. BLOG & SINGLE POST TITLE FIX (পোস্ট টাইটেল কালো থেকে সাদা করার ফিক্স)
================================================================ */
/* ব্লগ পেজ এবং সিঙ্গেল পোস্টের মেইন টাইটেল কালার */
.entry-title,
.entry-title a,
h1.entry-title,
.inside-article h1,
.inside-article h2,
.blog .entry-title a,
.archive .entry-title a {
    color: var(--ba-text-strong) !important; /* সম্পূর্ণ উজ্জ্বল সাদা */
}

/* টাইটেল হোভার কালার */
.entry-title a:hover,
.blog .entry-title a:hover,
.archive .entry-title a:hover {
    color: var(--ba-accent) !important;
}

/* মেটা টেক্সট (তারিখ + লেখকের নাম) — সম্পূর্ণ গভীর ফিক্স */
.entry-meta,
.entry-meta *,
.entry-meta span,
.entry-meta a,
.posted-by,
.posted-on,
.ast-comment-meta,
.entry-meta .comments-count,
.entry-meta .ast-author-avatar-wrap {
    color: var(--ba-text-muted) !important;
}

/* মেটার ভেতরের লিংক (লেখকের নাম) আলাদা করে উজ্জ্বল করা যাতে ধূসরের ওপর ধূসর না হয় */
.entry-meta a,
.posted-by a,
.entry-meta .author a,
.entry-meta .fn {
    color: var(--ba-text-soft2) !important;
    font-weight: 500 !important;
}

.entry-meta a:hover {
    color: var(--ba-accent) !important;
}

/* মেটার ভেতরের ক্যালেন্ডার/অথর SVG আইকন — ডিফল্টে কালো থাকায় ডার্ক ব্যাকগ্রাউন্ডে অদৃশ্য থাকে */
.entry-meta svg,
.ast-comment-meta svg,
.posted-by svg,
.posted-on svg {
    fill: var(--ba-text-muted) !important;
}

/* বইপড়ি-নির্দিষ্ট মেটা ক্লাস (তারিখ + লেখকের নাম "byline") */
.entry-meta .byline,
.entry-meta .posted-on,
.entry-meta .cat-links,
.entry-meta .comments-link,
.byline,
.posted-on {
    color: var(--ba-text-muted) !important;
}

.entry-meta .byline a,
.entry-meta .author.vcard a,
.byline a,
.author.vcard a,
.fn a {
    color: var(--ba-text-soft2) !important;
    font-weight: 500 !important;
}

.entry-meta .byline a:hover,
.byline a:hover {
    color: var(--ba-accent) !important;
}

/* বইপড়ি মেটার আলাদা লাইনের মাঝে থাকা বিভাজক (separator) স্পষ্ট রাখা */
.entry-meta > span {
    color: var(--ba-text-muted) !important;
}

/* সাব-টাইটেল ও সাধারণ প্যারাগ্রাফ */
body .entry-content p, 
body .site-main p,
.entry-content span,
.entry-content li {
    color: var(--ba-text-muted) !important;
}

/* ================================================================
5. SIDEBAR WIDGETS & SEARCH FIELD
================================================================ */
.widget, #secondary .widget {
    background: var(--ba-card-bg) !important;
    padding: 25px 20px;
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(var(--ba-k), 0.3);
    border: 1px solid var(--ba-border) !important;
}

.widget h3, .widget-title, .widget h2 {
    color: var(--ba-text-main) !important;
}

.widget h3::after, .widget-title::after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: var(--ba-accent);
    border-radius: 2px;
    margin-top: 5px;
}

.widget ul li {
    border-bottom: 1px solid var(--ba-border) !important;
}

.widget a, #secondary .widget a {
    color: var(--ba-text-soft) !important;
}

.widget a:hover {
    color: var(--ba-accent) !important;
}

.widget input[type="search"], .widget .search-field {
    background-color: var(--ba-input-bg) !important;
    color: var(--ba-text-strong) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 6px !important;
    padding: 10px !important;
}

/* ================================================================
6. RESPONSIVE QUERY
================================================================ */
@media (max-width: 768px) {
    .widget, #secondary .widget {
        padding: 20px 15px;
    }
}

/* ================================================================
FEATURED IMAGE PREMIUM DISPLAY - DARK THEME
================================================================ */
.single-post .featured-image,
.inside-article .featured-image {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 40px;
    position: relative;
    overflow: visible;
}

.single-post .featured-image img,
.inside-article .featured-image img {
    max-width: 95%;
    height: auto;
    border-radius: 16px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid rgba(var(--ba-w), 0.1) !important;
    box-shadow: 0 20px 40px rgba(var(--ba-k), 0.5), 
                0 0 25px rgba(245, 158, 11, 0.1);
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), 
                box-shadow 0.4s ease, 
                border-color 0.4s ease;
}

.single-post .featured-image img:hover,
.inside-article .featured-image img:hover {
    transform: translateY(-8px) scale(1.02);
    border-color: rgba(245, 158, 11, 0.5) !important;
    box-shadow: 0 30px 60px rgba(var(--ba-k), 0.7), 
                0 0 35px rgba(245, 158, 11, 0.25); 
}

.featured-image-caption {
    font-family: 'Hind Siliguri', sans-serif;
    font-size: 14px;
    color: var(--ba-text-muted);
    margin-top: 12px;
    font-style: italic;
    display: inline-block;
    padding: 4px 15px;
    border-left: 3px solid var(--ba-accent);
}

@media (max-width: 768px) {
    .single-post .featured-image,
    .inside-article .featured-image {
        margin-bottom: 25px;
    }
    
    .single-post .featured-image img,
    .inside-article .featured-image img {
        max-width: 100%;
        border-radius: 12px;
        box-shadow: 0 10px 25px rgba(var(--ba-k), 0.5);
    }
    
    .single-post .featured-image img:hover,
    .inside-article .featured-image img:hover {
        transform: translateY(-4px) scale(1.01);
    }
}

/* ================================================================
MASHED BLOG POSTS GRID & IMAGE EFFECTS (PREMIUM)
================================================================ */
.blog .site-main, 
.archive .site-main {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 30px !important;
    padding: 20px 0 !important;
}

.blog .inside-article, 
.archive .inside-article {
    background: var(--ba-surface-2) !important;
    border: 1px solid var(--ba-surface-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: 0 !important;
    box-shadow: 0 10px 25px rgba(var(--ba-k), 0.3) !important;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), 
                box-shadow 0.4s ease, 
                border-color 0.4s ease !important;
}

.blog .inside-article:hover, 
.archive .inside-article:hover {
    transform: translateY(-8px) !important;
    border-color: rgba(245, 158, 11, 0.4) !important;
    box-shadow: 0 20px 40px rgba(var(--ba-k), 0.5), 
                0 0 25px rgba(245, 158, 11, 0.15) !important;
}

.blog .post-image, 
.archive .post-image {
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    aspect-ratio: 16 / 9 !important;
    background: var(--ba-input-bg) !important;
}

.blog .post-image img, 
.archive .post-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.15, 1, 0.3, 1) !important;
}

.blog .inside-article:hover .post-image img, 
.archive .inside-article:hover .post-image img {
    transform: scale(1.08) rotate(0.5deg) !important;
}

.blog .post-image::after, 
.archive .post-image::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, transparent 60%, rgba(15, 23, 42, 0.7));
    pointer-events: none;
    transition: opacity 0.4s ease;
}

.blog .inside-article .entry-header,
.blog .inside-article .entry-summary,
.archive .inside-article .entry-header,
.archive .inside-article .entry-summary {
    padding: 20px 25px !important;
}

.blog .inside-article .entry-summary,
.archive .inside-article .entry-summary {
    padding-top: 0 !important;
    margin-top: auto !important;
}

.blog .entry-title, 
.archive .entry-title {
    font-size: 1.35rem !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    margin-bottom: 10px !important;
}

.blog .entry-title a, 
.archive .entry-title a {
    color: var(--ba-text-strong) !important;
    text-decoration: none !important;
}

.blog .inside-article:hover .entry-title a, 
.archive .inside-article:hover .entry-title a {
    color: var(--ba-accent) !important;
}

.blog .entry-meta, 
.archive .entry-meta {
    font-size: 0.85rem !important;
    color: var(--ba-text-muted) !important;
    margin-bottom: 15px !important;
}

.blog .entry-meta a, 
.archive .entry-meta a {
    color: var(--ba-text-soft2) !important;
}

.blog .entry-summary p, 
.archive .entry-summary p {
    color: var(--ba-text-muted) !important;
    font-size: 0.98rem !important;
    line-height: 1.6 !important;
}

.blog .entry-summary .read-more,
.archive .entry-summary .read-more {
    display: inline-block !important;
    margin-top: 15px !important;
    color: var(--ba-accent) !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    transition: transform 0.3s ease !important;
}

.blog .inside-article:hover .read-more,
.archive .inside-article:hover .read-more {
    transform: translateX(5px) !important;
}

@media (max-width: 992px) {
    .blog .site-main, 
    .archive .site-main {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
        gap: 20px !important;
    }
}

@media (max-width: 576px) {
    .blog .site-main, 
    .archive .site-main {
        grid-template-columns: 1fr !important;
    }
    .blog .inside-article .entry-header,
    .blog .inside-article .entry-summary {
        padding: 15px 20px !important;
    }
    .blog .entry-title {
        font-size: 1.2rem !important;
    }
}

/* ================================================================
7. কমেন্ট সেকশন — ক্লিন, পরিপাটি ও মোবাইল-ফ্রেন্ডলি ডিজাইন
================================================================ */

/* পুরো কমেন্ট এরিয়াকে কার্ড কন্টেইনার বানানো */
.comments-area,
#comments {
    background: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 16px !important;
    padding: 30px !important;
    margin-top: 40px !important;
    box-shadow: 0 12px 30px rgba(var(--ba-k), 0.3) !important;
}

.comments-area .comments-title,
.comments-area .comment-reply-title {
    color: var(--ba-text-main) !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    margin-bottom: 20px !important;
}

.comments-area .comment-reply-title small a {
    color: var(--ba-accent) !important;
    font-size: 0.75rem !important;
}

/* কমেন্ট লিস্ট — ডিফল্ট বুলেট/ইনডেন্ট রিমুভ করে নিজস্ব স্পেসিং */
.comment-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.comment-list .comment,
.comment-list .pingback {
    margin-bottom: 18px !important;
}

/* প্রতিটি কমেন্টকে আলাদা ছোট কার্ড হিসেবে দেখানো */
.comment-body {
    background: var(--ba-page-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 12px !important;
    padding: 18px 20px !important;
    position: relative !important;
}

/* রিপ্লাই কমেন্ট (চিলড্রেন) — ডেস্কটপে হালকা ইনডেন্ট, বাম পাশে অ্যাকসেন্ট বর্ডার */
.comment-list .children {
    list-style: none !important;
    margin-left: 30px !important;
    padding-left: 15px !important;
    border-left: 2px solid var(--ba-border) !important;
    margin-top: 15px !important;
}

/* অ্যাভাটার */
.comment-body .avatar,
.comment-body img.avatar {
    border-radius: 50% !important;
    border: 2px solid var(--ba-border) !important;
    width: 44px !important;
    height: 44px !important;
}

/* কমেন্টকারীর নাম */
.comment-body .fn,
.comment-body .comment-author .fn a {
    color: var(--ba-text-main) !important;
    font-weight: 600 !important;
    font-size: 0.98rem !important;
}

/* তারিখ/সময় (মেটাডাটা) */
.comment-body .comment-metadata,
.comment-body .comment-metadata a {
    color: var(--ba-text-muted) !important;
    font-size: 0.8rem !important;
}

/* কমেন্টের মূল লেখা */
.comment-body .comment-content p {
    color: var(--ba-text-muted) !important;
    line-height: 1.7 !important;
    margin: 8px 0 0 0 !important;
}

/* রিপ্লাই বাটন */
.comment-body .reply a,
.comment-body .comment-reply-link {
    display: inline-block !important;
    margin-top: 10px !important;
    color: var(--ba-accent) !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    border: 1px solid var(--ba-accent) !important;
    padding: 4px 14px !important;
    border-radius: 20px !important;
    transition: all 0.3s ease !important;
}

.comment-body .reply a:hover {
    background: var(--ba-accent) !important;
    color: var(--ba-on-accent) !important;
}

/* ================================================================
8. কমেন্ট ফর্ম — ইনপুট, টেক্সটএরিয়া, সাবমিট বাটন
================================================================ */
.comment-respond {
    background: var(--ba-page-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 12px !important;
    padding: 22px !important;
    margin-top: 25px !important;
}

.comment-respond .comment-notes,
.comment-respond .logged-in-as {
    color: var(--ba-text-muted) !important;
    font-size: 0.88rem !important;
    margin-bottom: 15px !important;
}

.comment-respond .comment-notes a,
.comment-respond .logged-in-as a {
    color: var(--ba-accent) !important;
}

.comment-form p {
    margin-bottom: 15px !important;
}

.comment-form label {
    display: block !important;
    color: var(--ba-text-main) !important;
    font-size: 0.88rem !important;
    font-weight: 500 !important;
    margin-bottom: 6px !important;
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    width: 100% !important;
    background-color: var(--ba-card-bg) !important;
    color: var(--ba-text-main) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    font-size: 0.95rem !important;
    box-sizing: border-box !important;
    transition: border-color 0.3s ease !important;
}

.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus {
    border-color: var(--ba-accent) !important;
    outline: none !important;
}

.comment-form textarea {
    min-height: 120px !important;
    resize: vertical !important;
}

.comment-form input::placeholder,
.comment-form textarea::placeholder {
    color: var(--ba-text-faint) !important;
}

/* Save my name checkbox */
.comment-form .comment-form-cookies-consent label {
    display: inline !important;
    margin-left: 6px !important;
    font-weight: 400 !important;
    color: var(--ba-text-muted) !important;
}

/* সাবমিট বাটন */
.comment-form .form-submit input[type="submit"],
.comment-form input#submit {
    background: var(--ba-accent) !important;
    color: var(--ba-on-accent) !important;
    border: none !important;
    padding: 12px 28px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    cursor: pointer !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.comment-form .form-submit input[type="submit"]:hover,
.comment-form input#submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 20px rgba(245, 158, 11, 0.3) !important;
}

/* ================================================================
9. কমেন্ট সেকশন — মোবাইল রেসপনসিভ ক্লিন-আপ
================================================================ */
@media (max-width: 768px) {
    .comments-area,
    #comments {
        padding: 18px 15px !important;
        border-radius: 12px !important;
        margin-top: 25px !important;
    }

    .comments-area .comments-title,
    .comments-area .comment-reply-title {
        font-size: 1.1rem !important;
    }

    .comment-body {
        padding: 14px 15px !important;
    }

    /* মোবাইলে রিপ্লাই ইনডেন্ট কমিয়ে ক্লিন রাখা */
    .comment-list .children {
        margin-left: 12px !important;
        padding-left: 10px !important;
    }

    .comment-body .avatar,
    .comment-body img.avatar {
        width: 34px !important;
        height: 34px !important;
    }

    /* নাম ও তারিখ আলাদা লাইনে সুন্দরভাবে বসানো */
    .comment-body .comment-meta {
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
    }

    .comment-respond {
        padding: 16px !important;
    }

    .comment-form .form-submit input[type="submit"],
    .comment-form input#submit {
        width: 100% !important;
        padding: 13px !important;
    }
}

/* ================================================================
12. সিঙ্গেল পোস্ট কন্টেন্ট — আকর্ষণীয় বর্ডার/কার্ড ফ্রেম
================================================================ */
.single-post .inside-article,
.single-post article.inside-article,
.single-post .entry-content {
    background: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 18px !important;
    padding: 35px 40px !important;
    box-shadow: 0 15px 35px rgba(var(--ba-k), 0.35) !important;
    box-sizing: border-box !important;
}

/* entry-content আলাদা করে বর্ডার/প্যাডিং পেলে ডাবল-বক্স হয়ে যাবে, তাই ভেতরে থাকলে রিসেট */
.single-post .inside-article .entry-content {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* পোস্ট হেডার (টাইটেল + মেটা) বক্সের ভেতরে সুন্দরভাবে ফিট করা */
.single-post .inside-article .entry-header {
    margin-bottom: 20px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid var(--ba-border) !important;
}

/* বক্সের উপরে হালকা সোনালী টপ-অ্যাকসেন্ট বার — প্রিমিয়াম লুকের জন্য */
.single-post .inside-article {
    position: relative !important;
    overflow: hidden !important;
}

.single-post .inside-article::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--ba-accent), transparent 70%);
}

/* মোবাইলে প্যাডিং কমিয়ে ক্লিন রাখা */
@media (max-width: 768px) {
    .single-post .inside-article,
    .single-post article.inside-article {
        padding: 20px 18px !important;
        border-radius: 14px !important;
    }
}

/* ================================================================
13. লেখক পরিচিতি বক্স (Author Bio Box) — ডার্ক থিম ফিক্স
কমন প্লাগিন/মার্কআপের সম্ভাব্য class একসাথে কভার করা হলো
================================================================ */
.author-box,
.author-bio,
.author-info,
.entry-author,
.author-description,
#sab-container,
.sab-container,
.starbox,
.sb_container,
.simple-author-box,
.wpb-author-bio,
.pp-author-boxes-wrap,
[class*="author-box"],
[id*="author-box"] {
    background: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 16px !important;
    padding: 25px !important;
    box-shadow: 0 12px 30px rgba(var(--ba-k), 0.3) !important;
    box-sizing: border-box !important;
}

.author-box *,
.author-bio *,
.author-info *,
.entry-author *,
#sab-container *,
.sab-container *,
.starbox *,
.sb_container *,
.simple-author-box *,
.pp-author-boxes-wrap * {
    color: var(--ba-text-muted) !important;
    background: transparent !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

/* লেখকের নাম আলাদাভাবে উজ্জ্বল করা */
.author-box h1, .author-box h2, .author-box h3, .author-box h4,
.author-bio h1, .author-bio h2, .author-bio h3, .author-bio h4,
.author-info h1, .author-info h2, .author-info h3, .author-info h4,
.entry-author .author-name, .entry-author strong,
#sab-container .sab-name, .sab-name,
.starbox .sb_name, .sb_name,
.simple-author-box .name,
.pp-author-boxes-name a {
    color: var(--ba-text-main) !important;
    font-weight: 600 !important;
}

/* লেখকের বিবরণে থাকা লিংক */
.author-box a, .author-bio a, .author-info a, .entry-author a,
#sab-container a, .sab-container a, .starbox a, .sb_container a,
.simple-author-box a, .pp-author-boxes-wrap a {
    color: var(--ba-accent) !important;
}

/* অ্যাভাটার ছবি */
.author-box img, .author-bio img, .author-info img, .entry-author img,
#sab-container img, .starbox img, .sb_container img,
.simple-author-box img, .pp-author-boxes-avatar img {
    border-radius: 50% !important;
    border: 2px solid var(--ba-border) !important;
}

/* ================================================================
14. লেখক পরিচিতি বক্সের "নাম" আলাদাভাবে ফিক্স (হেডিং/লিংক কভারেজ বাড়ানো)
================================================================ */
/* class-এ "author" শব্দ থাকা যেকোনো বক্সের ভেতরের হেডিং/লিংক টেক্সট */
[class*="author"] h1,
[class*="author"] h2,
[class*="author"] h3,
[class*="author"] h4,
[class*="author"] a,
[id*="author"] h1,
[id*="author"] h2,
[id*="author"] h3,
[id*="author"] h4,
[id*="author"] a {
    color: var(--ba-text-main) !important;
    -webkit-text-fill-color: var(--ba-text-main) !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

/* যদি এটা আসলে Author Archive পেজের মূল টাইটেল হয় (বইপড়ি page-title) */
.author .page-title,
.author .page-title a,
.author .archive-title,
.author.archive .page-header h1,
.author.archive .entry-title {
    color: var(--ba-text-main) !important;
    -webkit-text-fill-color: var(--ba-text-main) !important;
}

/* ================================================================
15. h1.page-title > span.vcard — এক্সাক্ট টার্গেট ফিক্স (author archive নাম)
================================================================ */
h1.page-title,
h1.page-title .vcard,
h1.page-title span.vcard,
.page-header h1.page-title,
.page-header h1.page-title .vcard,
.vcard,
.fn {
    color: var(--ba-text-main) !important;
    -webkit-text-fill-color: var(--ba-text-main) !important;
    opacity: 1 !important;
    text-shadow: none !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

/* ================================================================
16. h1.page-title / .vcard — টেক্সট স্ট্রোক (ফাঁপা আউটলাইন টেক্সট) ফিক্স
সিলেক্ট করলে পড়া যাচ্ছিল মানে টেক্সট solid fill না হয়ে stroke/outline স্টাইলে ছিল
================================================================ */
h1.page-title,
h1.page-title .vcard,
h1.page-title span.vcard,
.page-header h1.page-title,
.page-header h1.page-title .vcard,
.vcard,
.fn {
    -webkit-text-stroke: 0 !important;
    -webkit-text-stroke-width: 0 !important;
    -webkit-text-stroke-color: transparent !important;
    text-stroke: 0 !important;
    font-weight: 700 !important;
}

/* ================================================================
17. .page-header (বইপড়ি) — ব্যাকগ্রাউন্ড ডার্ক করা
এতক্ষণ শুধু টেক্সট কালার ফিক্স করা হচ্ছিল, কিন্তু বক্সের ব্যাকগ্রাউন্ড সাদাই ছিল
================================================================ */
.page-header,
header.page-header,
.author.archive .page-header {
    background: var(--ba-card-bg) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 16px !important;
    padding: 25px !important;
    box-shadow: 0 12px 30px rgba(var(--ba-k), 0.3) !important;
    box-sizing: border-box !important;
}

.page-header *,
header.page-header * {
    background: transparent !important;
}

@media (max-width: 768px) {
    .page-header,
    header.page-header {
        padding: 18px !important;
    }
}

/* ================================================================
18. ফুটার সেকশন — সম্পূর্ণ ডিজাইন (বইপড়ি ফুটার উইজেট + কপিরাইট বার)
================================================================ */

/* ফুটারের বাইরের কন্টেইনার — মূল কন্টেন্ট থেকে আলাদা করতে টপ বর্ডার/গ্র্যাডিয়েন্ট */
.site-footer,
#colophon,
.site-footer-wrap {
    background-color: var(--ba-on-accent) !important;
    border-top: 1px solid var(--ba-border) !important;
    margin-top: 50px !important;
    position: relative !important;
}

/* ফুটারের ঠিক ওপরে সোনালী অ্যাকসেন্ট লাইন */
.site-footer::before,
#colophon::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--ba-accent), transparent);
}

/* ফুটার উইজেট এরিয়া (৩-৪ কলাম গ্রিড) */
.footer-widgets,
.site-footer .footer-widgets-container {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 35px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 50px 20px 35px !important;
    box-sizing: border-box !important;
}

/* প্রতিটি ফুটার উইজেট কলাম */
.footer-widgets .widget,
.site-footer .widget {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* ফুটার উইজেট টাইটেল */
.footer-widgets .widget-title,
.footer-widgets .widget h3,
.site-footer .widget-title {
    color: var(--ba-text-main) !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    margin-bottom: 16px !important;
}

.footer-widgets .widget-title::after,
.site-footer .widget-title::after {
    content: '';
    display: block;
    width: 35px;
    height: 3px;
    background: var(--ba-accent);
    border-radius: 2px;
    margin-top: 8px;
}

/* ফুটার প্যারাগ্রাফ ও লিস্ট টেক্সট */
.footer-widgets p,
.footer-widgets li,
.site-footer p,
.site-footer li {
    color: var(--ba-text-muted) !important;
    line-height: 1.7 !important;
    font-size: 0.92rem !important;
}

/* ফুটার লিংক */
.footer-widgets a,
.site-footer a {
    color: var(--ba-text-soft) !important;
    text-decoration: none !important;
    transition: color 0.25s ease, padding-left 0.25s ease !important;
}

.footer-widgets a:hover,
.site-footer a:hover {
    color: var(--ba-accent) !important;
    padding-left: 4px !important;
}

/* ফুটার মেনু/লিংক লিস্ট আইটেম আলাদা লাইনে সাজানো */
.footer-widgets ul li,
.site-footer .menu li {
    list-style: none !important;
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px dashed var(--ba-border) !important;
}

.footer-widgets ul li:last-child,
.site-footer .menu li:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* ফুটার সার্চ ফিল্ড (যদি থাকে) */
.footer-widgets input[type="search"],
.footer-widgets .search-field {
    background-color: var(--ba-card-bg) !important;
    color: var(--ba-text-strong) !important;
    border: 1px solid var(--ba-border) !important;
    border-radius: 6px !important;
    padding: 10px !important;
}

/* কপিরাইট/সাইট-ইনফো বার — সবচেয়ে নিচের সরু বার */
.site-info {
    display: block !important;
    background-color: var(--ba-footer-bar) !important;
    color: var(--ba-text-muted) !important;
    text-align: center !important;
    padding: 18px 20px !important;
    font-size: 0.85rem !important;
    border-top: 1px solid var(--ba-border) !important;
}

.site-info a {
    color: var(--ba-accent) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

.site-info a:hover {
    text-decoration: underline !important;
}

/* ================================================================
19. ফুটার — মোবাইল রেসপনসিভ
================================================================ */
@media (max-width: 768px) {
    .footer-widgets,
    .site-footer .footer-widgets-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
        padding: 35px 20px 25px !important;
    }

    .site-info {
        padding: 15px !important;
        font-size: 0.8rem !important;
    }
}

/* ================================================================
21. ফুটার উইজেট ব্যান্ড (বইপড়ি ফুটার ১–৪) + ব্লক/ক্লাসিক উইজেটের রং মিলানো
    GeneratePress-এর নিজস্ব .footer-widgets-এও একই স্টাইল প্রযোজ্য
================================================================ */
.ba-footer-band {
    position: relative;
    margin-top: 50px;
    background:
        radial-gradient(700px 260px at 90% 0%, rgba(46, 230, 166, 0.07), transparent 60%),
        radial-gradient(600px 260px at 0% 100%, rgba(246, 162, 58, 0.05), transparent 60%),
        var(--ba-footer-bg);
    border-top: 1px solid var(--ba-border);
}
.ba-footer-band::before {
    content: '';
    position: absolute; top: -1px; left: 0; width: 100%; height: 3px;
    background: linear-gradient(90deg, transparent, var(--ba-accent), var(--ba-accent-2), transparent);
}
/* ব্যান্ড থাকলে নিচের GP ফুটারের উপরের গ্যাপ/লাইন বাদ — একটানা দেখাবে */
.ba-footer-band + .site-footer,
.ba-footer-band + #colophon { margin-top: 0 !important; }
.ba-footer-band + .site-footer::before,
.ba-footer-band + #colophon::before { display: none; }

.ba-footer-inner {
    display: grid;
    grid-template-columns: repeat(var(--ba-cols, 4), minmax(0, 1fr));
    gap: 38px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 56px 22px 40px;
    box-sizing: border-box;
}
.ba-fcol { min-width: 0; }

/* উইজেট কার্ড-স্টাইল বাদ → ফুটারে স্বচ্ছ */
.ba-footer-band .widget,
.footer-widgets .widget {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 28px !important;
    color: var(--ba-text-muted) !important;
}
.ba-fcol .widget:last-child { margin-bottom: 0 !important; }

/* শিরোনাম (ক্লাসিক টাইটেল + ব্লক হেডিং) */
.ba-footer-band .widget-title,
.ba-footer-band .widget h2,
.ba-footer-band .widget h3,
.ba-footer-band .widget h4,
.ba-footer-band .wp-block-heading,
.footer-widgets .wp-block-heading {
    color: var(--ba-text-main) !important;
    font-size: 1.08rem !important;
    font-weight: 700 !important;
    margin: 0 0 16px !important;
}
.ba-footer-band .widget-title::after {
    content: ''; display: block; width: 40px; height: 3px; margin-top: 7px; border-radius: 2px;
    background: linear-gradient(90deg, var(--ba-accent), var(--ba-accent-2));
}

/* লেখা, লিংক */
.ba-footer-band p,
.ba-footer-band li,
.ba-footer-band .widget,
.ba-footer-band .textwidget,
.ba-footer-band .wp-block-group,
.footer-widgets .wp-block-group { color: var(--ba-text-muted) !important; font-size: 15.5px; line-height: 1.8; }
.ba-footer-band a,
.footer-widgets .wp-block-latest-posts a,
.footer-widgets .wp-block-categories a { color: var(--ba-text-soft) !important; text-decoration: none !important; transition: color .2s, padding .2s; }
.ba-footer-band a:hover { color: var(--ba-accent) !important; }
.ba-footer-band strong, .ba-footer-band b { color: var(--ba-text-strong); }

/* তালিকা (মেনু, ক্যাটাগরি, আর্কাইভ, সাম্প্রতিক পোস্ট ইত্যাদি) */
.ba-footer-band ul,
.ba-footer-band ol { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.ba-footer-band ul li,
.ba-footer-band ol li {
    margin: 0 !important; padding: 8px 0 !important;
    border-bottom: 1px dashed var(--ba-border) !important;
}
.ba-footer-band ul li:last-child,
.ba-footer-band ol li:last-child { border-bottom: 0 !important; }
.ba-footer-band .menu li a:hover,
.ba-footer-band ul li a:hover { padding-left: 4px; }
.ba-footer-band .wp-block-latest-posts__post-date,
.ba-footer-band .post-date { display: block; font-size: 13px; color: var(--ba-text-faint) !important; }
.ba-footer-band .children, .ba-footer-band .sub-menu { padding-left: 14px !important; margin-top: 6px !important; }

/* সার্চ (ক্লাসিক + ব্লক) ও ফর্ম */
.ba-footer-band input[type="text"],
.ba-footer-band input[type="email"],
.ba-footer-band input[type="search"],
.ba-footer-band input[type="url"],
.ba-footer-band input[type="tel"],
.ba-footer-band textarea,
.ba-footer-band select,
.ba-footer-band .wp-block-search__input {
    width: 100%; box-sizing: border-box;
    background: var(--ba-input-bg) !important; color: var(--ba-text-strong) !important;
    border: 1px solid var(--ba-border) !important; border-radius: 10px !important;
    padding: 11px 14px !important; font-size: 15px;
}
.ba-footer-band input::placeholder, .ba-footer-band textarea::placeholder { color: var(--ba-text-faint) !important; }
.ba-footer-band input:focus, .ba-footer-band textarea:focus, .ba-footer-band select:focus {
    outline: none; border-color: var(--ba-accent) !important; box-shadow: 0 0 0 3px rgba(46, 230, 166, .15);
}
.ba-footer-band .wp-block-search__inside-wrapper { gap: 8px; border: 0 !important; padding: 0 !important; }

/* বাটন (ক্লাসিক + ব্লক বাটন + সার্চ বাটন + আমাদের .ba-fbtn) */
.ba-footer-band button,
.ba-footer-band input[type="submit"],
.ba-footer-band .wp-block-button__link,
.ba-footer-band .wp-block-search__button,
.ba-footer-band .ba-fbtn {
    display: inline-block; cursor: pointer; border: 0 !important; border-radius: 999px !important;
    padding: 11px 24px !important; font-size: 15px; font-weight: 700; line-height: 1.4;
    background: linear-gradient(120deg, var(--ba-accent), var(--ba-accent-mid) 60%, var(--ba-accent-2) 150%) !important;
    color: var(--ba-on-accent) !important; text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(46, 230, 166, .2); transition: transform .2s, box-shadow .2s;
}
.ba-footer-band button:hover,
.ba-footer-band input[type="submit"]:hover,
.ba-footer-band .wp-block-button__link:hover,
.ba-footer-band .wp-block-search__button:hover,
.ba-footer-band .ba-fbtn:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(46, 230, 166, .32); color: var(--ba-on-accent) !important; padding-left: 24px !important; }
.ba-footer-band .ba-fbtn { margin-top: 10px; }

/* ট্যাগ ক্লাউড */
.ba-footer-band .tagcloud, .ba-footer-band .wp-block-tag-cloud { display: flex; flex-wrap: wrap; gap: 8px; }
.ba-footer-band .tagcloud a, .ba-footer-band .wp-block-tag-cloud a {
    font-size: 13.5px !important; padding: 5px 14px; border-radius: 999px;
    background: rgba(var(--ba-w), .05); border: 1px solid var(--ba-border);
}
.ba-footer-band .tagcloud a:hover, .ba-footer-band .wp-block-tag-cloud a:hover { border-color: rgba(46,230,166,.5); }

/* ক্যালেন্ডার ও টেবিল */
.ba-footer-band table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ba-footer-band th, .ba-footer-band td { padding: 6px; text-align: center; color: var(--ba-text-muted); border: 0 !important; background: transparent !important; }
.ba-footer-band caption { color: var(--ba-text-main); font-weight: 700; padding-bottom: 8px; }
.ba-footer-band td a { color: var(--ba-accent) !important; font-weight: 700; }
.ba-footer-band #today { color: var(--ba-on-accent) !important; background: var(--ba-accent) !important; border-radius: 6px; }

/* ছবি, ভিডিও, কোট, কোড */
.ba-footer-band img, .ba-footer-band iframe, .ba-footer-band video { max-width: 100%; height: auto; border-radius: 12px; }
.ba-footer-band blockquote, .ba-footer-band .wp-block-quote {
    margin: 0; padding: 10px 16px; border-left: 3px solid var(--ba-accent) !important; background: rgba(var(--ba-w), .03); border-radius: 0 10px 10px 0;
}
.ba-footer-band code { background: var(--ba-input-bg); color: var(--ba-accent-2); padding: 2px 7px; border-radius: 6px; }
.ba-footer-band .wp-block-separator, .ba-footer-band hr { border: 0 !important; border-top: 1px solid var(--ba-border) !important; opacity: 1; }
.ba-footer-band .wp-block-social-links { gap: 10px; }
.ba-footer-band .wp-block-social-links .wp-social-link { background: rgba(var(--ba-w), .08) !important; border-radius: 50%; }
.ba-footer-band .wp-block-social-links .wp-social-link a { color: var(--ba-text-strong) !important; }
.ba-footer-band .wp-block-social-links .wp-social-link:hover { background: var(--ba-accent) !important; }
.ba-footer-band .wp-block-social-links .wp-social-link:hover a { color: var(--ba-on-accent) !important; }

/* GP-এর নিজস্ব ফুটার উইজেটেও একই বাটন/ইনপুট রং */
.footer-widgets input[type="text"], .footer-widgets input[type="email"], .footer-widgets .wp-block-search__input {
    background: var(--ba-input-bg) !important; color: var(--ba-text-strong) !important; border: 1px solid var(--ba-border) !important; border-radius: 10px !important;
}
.footer-widgets button, .footer-widgets input[type="submit"], .footer-widgets .wp-block-button__link, .footer-widgets .wp-block-search__button {
    background: linear-gradient(120deg, var(--ba-accent), var(--ba-accent-2)) !important; color: var(--ba-on-accent) !important; border: 0 !important; border-radius: 999px !important; font-weight: 700;
}

@media (max-width: 960px) {
    .ba-footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; padding-top: 44px; }
}
@media (max-width: 600px) {
    .ba-footer-inner { grid-template-columns: minmax(0, 1fr); padding: 38px 18px 26px; }
}


/* ================================================================
   BOIPORI 2.1 — LIGHT-FIRST READING LIBRARY POLISH
================================================================ */
:root, :root[data-theme="light"] {
  --ba-page-bg:#f7f8fc; --ba-card-bg:#fff; --ba-accent:#087f67;
  --ba-accent-2:#e58a22; --ba-accent-3:#e34f70;
  --ba-text-strong:#17233b; --ba-text-main:#26344d; --ba-text-muted:#64748b;
  --ba-header-bg:#fff; --ba-footer-bg:#eef2f9; --ba-alt-bg:#edf3fb;
}
.bongo-landing .ba-hero { position:relative; overflow:hidden; background:linear-gradient(120deg,#f1fbf7 0%,#f2f5ff 52%,#fff4e8 100%); }
.bongo-landing .ba-hero:after { content:""; position:absolute; inset:auto -8% -42% 38%; height:390px; border-radius:50%; background:radial-gradient(circle,rgba(15,166,130,.16),transparent 68%); pointer-events:none; }
.bongo-landing .ba-hero-title { letter-spacing:-.035em; }
.bongo-landing .ba-grad { background:linear-gradient(100deg,#087f67 5%,#2876d2 55%,#e58a22 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.bongo-landing .ba-badge { background:rgba(255,255,255,.88); border:1px solid rgba(8,127,103,.16); color:#087f67; box-shadow:0 8px 28px rgba(22,45,78,.06); }
.bongo-landing .ba-card, .bongo-landing .ba-step, .bongo-landing .ba-faq-item { box-shadow:0 10px 32px rgba(29,48,78,.055); border:1px solid rgba(28,48,78,.08); transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.bongo-landing .ba-card:hover { transform:translateY(-5px); box-shadow:0 18px 42px rgba(29,48,78,.11); border-color:rgba(8,127,103,.24); }
.bongo-landing .ba-btn-primary { background:linear-gradient(110deg,#087f67,#159c83); box-shadow:0 9px 22px rgba(8,127,103,.2); }
.bongo-landing .ba-btn-primary:hover { transform:translateY(-2px); box-shadow:0 13px 28px rgba(8,127,103,.28); }
.bongo-landing .ba-cat-pills a { background:#fff; border:1px solid #e3eaf2; box-shadow:0 5px 16px rgba(29,48,78,.045); }
.bongo-landing .ba-cat-pills a:hover { border-color:#0b9b7a; background:#f0fbf7; }
.ba-cat-hero { background:linear-gradient(120deg,#effaf6,#f1f5ff 60%,#fff4e8)!important; }
.ba-cat-page .ba-chip, .ba-live-row .ba-chip { background:rgba(255,255,255,.88); color:#334155; border:1px solid #e1e8f0; }
.ba-theme-toggle { box-shadow:0 5px 18px rgba(15,23,42,.12); }
@media (prefers-reduced-motion:reduce) { .bongo-landing .ba-card,.bongo-landing .ba-btn-primary { transition:none; } }

/* Digital book preview: editorial book panel, not a phone/app mockup */
.bongo-landing .ba-phone { width:min(100%,390px); min-height:300px; height:auto; padding:24px; border-radius:24px; transform:rotate(2deg); background:linear-gradient(145deg,#fff,#eef5ff); border:1px solid #dce6f2; box-shadow:0 28px 70px rgba(33,55,88,.16); }
.bongo-landing .ba-phone-notch { display:none; }
.bongo-landing .ba-phone-screen { min-height:250px; border-radius:16px; background:linear-gradient(145deg,#fffdf8,#f1f7f4); padding:18px; }
.bongo-landing .ba-ps-head { color:#087f67; }
.bongo-landing .ba-ps-card { background:linear-gradient(135deg,#e6f6ef,#f1f4ff); color:#26344d; border:1px solid #dcebe4; }
.bongo-landing .ba-ps-card p { color:#26344d; }


/* ============================================================
   BOIPORI LIGHT MODE — ACCESSIBILITY / READABILITY FIX
   Dark mode remains unchanged. Strengthen text, controls and
   pale accent surfaces when the reader selects Light Mode.
   ============================================================ */
:root[data-theme="light"] {
  --ba-text-main: #111827;
  --ba-text-muted: #374151;
  --ba-text-strong: #111827;
  --ba-text-soft: #1f2937;
  --ba-text-soft2: #374151;
  --ba-text-body: #374151;
  --ba-text-faint: #4b5563;
  --ba-accent: #06734f;
  --ba-accent-2: #a94d00;
  --ba-accent-3: #c5223d;
  --ba-accent-mid: #087a55;
  --ba-accent-mid2: #087a55;
  --ba-border: rgba(15, 23, 42, .20);
  --ba-surface-border: #cbd5e1;
}
:root[data-theme="light"] body,
:root[data-theme="light"] .site,
:root[data-theme="light"] .site-content,
:root[data-theme="light"] .inside-article,
:root[data-theme="light"] .inside-page,
:root[data-theme="light"] .entry-content { color: #1f2937; }
:root[data-theme="light"] h1,
:root[data-theme="light"] h2,
:root[data-theme="light"] h3,
:root[data-theme="light"] h4,
:root[data-theme="light"] h5,
:root[data-theme="light"] h6,
:root[data-theme="light"] .entry-title,
:root[data-theme="light"] .entry-title a { color: #111827 !important; }
:root[data-theme="light"] p,
:root[data-theme="light"] li,
:root[data-theme="light"] label,
:root[data-theme="light"] small,
:root[data-theme="light"] .description,
:root[data-theme="light"] .entry-summary,
:root[data-theme="light"] .entry-meta,
:root[data-theme="light"] .posted-on,
:root[data-theme="light"] .byline { color: #374151; }
:root[data-theme="light"] a:not(.button):not(.wp-block-button__link):not(.ba-btn) { color: #075f46; }
:root[data-theme="light"] a:not(.button):not(.wp-block-button__link):not(.ba-btn):hover { color: #9a4300; }
:root[data-theme="light"] .ba-card,
:root[data-theme="light"] .ba-book-card,
:root[data-theme="light"] .ba-panel,
:root[data-theme="light"] .ba-feature-card,
:root[data-theme="light"] .ba-info-card,
:root[data-theme="light"] .ba-modal-content,
:root[data-theme="light"] .ba-reader-guide,
:root[data-theme="light"] .ba-guide-card { color: #1f2937; border-color: #cbd5e1; }
:root[data-theme="light"] input,
:root[data-theme="light"] select,
:root[data-theme="light"] textarea { color: #111827 !important; background: #ffffff !important; border-color: #94a3b8 !important; }
:root[data-theme="light"] input::placeholder,
:root[data-theme="light"] textarea::placeholder { color: #64748b !important; opacity: 1; }
:root[data-theme="light"] button:disabled,
:root[data-theme="light"] .is-disabled { color: #475569 !important; opacity: .85 !important; }
:root[data-theme="light"] .ba-text-muted,
:root[data-theme="light"] .ba-muted,
:root[data-theme="light"] .text-muted { color: #4b5563 !important; }
:root[data-theme="light"] .ba-badge,
:root[data-theme="light"] .ba-chip,
:root[data-theme="light"] .ba-tag { border-color: #cbd5e1; }
