/* ==========================================================================
   O2 NEWS BANGLA — Master Newsroom CMS Theme (Light SaaS Editorial Platform)
   Strictly following:
   - Background: #F5F7FA
   - Surfaces & Sidebar: #FFFFFF
   - Primary Text: #172033, Secondary Text: #64748B, Borders: #E2E8F0
   - Primary Blue: #1769D2, Primary Dark: #1254A8
   - Success: #16A34A, Warning: #F59E0B, Danger: #DC2626, Info: #2563EB
   ========================================================================== */

/* ── Google Fonts ─────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+Bengali:wght@400;500;600;700;800&family=Noto+Serif+Bengali:wght@600;700&display=swap');

:root {
    --o2-primary:        #004CE8; /* Authentic Logo Electric Cobalt Blue */
    --o2-primary-dark:   #0038B8;
    --o2-primary-light:  #EEF4FF;
    --o2-primary-hover:  #0040D0;
    --o2-cyan:           #0099FF; /* Logo Cyan Gradient Highlight */
    
    --o2-bg:             #F5F7FA;
    --o2-surface:        #FFFFFF;
    --o2-text-main:      #172033;
    --o2-text-sub:       #64748B;
    --o2-border:         #E2E8F0;
    --o2-border-light:   #F1F5F9;
    
    --o2-success:        #16A34A;
    --o2-warning:        #F59E0B;
    --o2-danger:         #E60000; /* Authentic Logo Scarlet News Red */
    --o2-info:           #0099FF;
    
    --font-bn:           'Noto Sans Bengali', system-ui, sans-serif;
    --font-serif-bn:     'Noto Serif Bengali', Georgia, serif;
    --font-en:           'Inter', system-ui, sans-serif;
}

/* ── Global Canvas & Reset ────────────────────────────────── */
body, 
.fi-body, 
html {
    font-family: var(--font-bn) !important;
    background-color: var(--o2-bg) !important;
    color: var(--o2-text-main) !important;
    -webkit-font-smoothing: antialiased;
}

/* ── Sidebar (Pure White, Subtle Right Border) ────────────── */
.fi-sidebar {
    background: #FFFFFF !important;
    border-right: 1px solid var(--o2-border) !important;
    box-shadow: none !important;
}

.fi-sidebar.fi-sidebar-open,
.fi-sidebar:not([class*="-translate-x-full"]) {
    width: 240px !important;
}

.fi-sidebar-header {
    height: 54px !important;
    background: #FFFFFF !important;
    border-bottom: 1px solid var(--o2-border) !important;
    padding: 0.4rem 0.75rem !important;
    display: flex !important;
    align-items: center !important;
}

/* Sidebar navigation container with sleek scrollbar */
.fi-sidebar-nav {
    padding: 0.5rem 0.35rem 1rem !important;
    background: #FFFFFF !important;
    scrollbar-width: thin;
    scrollbar-color: #CBD5E1 transparent;
}

.fi-sidebar-nav::-webkit-scrollbar {
    width: 4px;
}
.fi-sidebar-nav::-webkit-scrollbar-track {
    background: transparent;
}
.fi-sidebar-nav::-webkit-scrollbar-thumb {
    background-color: #E2E8F0;
    border-radius: 9999px;
}
.fi-sidebar-nav:hover::-webkit-scrollbar-thumb {
    background-color: #CBD5E1;
}

.fi-sidebar-nav-groups {
    gap: 0.5rem !important;
}

/* Sidebar Group Section Title & Subtle Dividers */
.fi-sidebar-group {
    margin-bottom: 0.2rem !important;
}

.fi-sidebar-group + .fi-sidebar-group {
    margin-top: 0.45rem !important;
    padding-top: 0.45rem !important;
    border-top: 1px solid #F1F5F9 !important;
}

.fi-sidebar-group-button .fi-sidebar-group-label,
.fi-sidebar-group-label,
.fi-sidebar-group-label span {
    color: var(--o2-text-sub) !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    font-family: var(--font-en) !important;
    padding: 0.2rem 0.6rem !important;
}

.fi-sidebar-group-icon,
.fi-sidebar-group-collapse-button svg,
.fi-sidebar-group-button svg {
    color: var(--o2-text-sub) !important;
}

/* Sidebar Item Links — Inactive */
.fi-sidebar-item-button {
    border-radius: 7px !important;
    margin: 1px 0 !important;
    padding: 5px 8px !important;
    min-height: 34px !important;
    transition: all 0.12s ease !important;
    background: transparent !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.6rem !important;
}

.fi-sidebar-item-button .fi-sidebar-item-label,
.fi-sidebar-item-button .fi-sidebar-item-label span {
    color: var(--o2-text-main) !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    font-family: var(--font-bn) !important;
    letter-spacing: 0.1px;
}

.fi-sidebar-item-button .fi-sidebar-item-icon,
.fi-sidebar-item-button svg {
    color: #64748B !important;
    width: 1.1rem !important;
    height: 1.1rem !important;
    flex-shrink: 0 !important;
    transition: color 0.12s ease !important;
}

/* ── Collapsed Sidebar Dock (64px width) ──────────────────── */
.fi-sidebar:not(.fi-sidebar-open) {
    width: 64px !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-header {
    justify-content: center !important;
    padding: 0.4rem 0 !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-nav {
    padding: 0.5rem 0.25rem !important;
    align-items: center !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-nav-groups {
    gap: 0.35rem !important;
    width: 100% !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-group {
    margin-bottom: 0.3rem !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-group + .fi-sidebar-group {
    border-top: 1px solid #E2E8F0 !important;
    margin-top: 0.35rem !important;
    padding-top: 0.35rem !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item-button {
    width: 38px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    margin: 2px auto !important;
    justify-content: center !important;
    align-items: center !important;
    border-radius: 8px !important;
    border-left: none !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item-button .fi-sidebar-item-icon,
.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item-button svg {
    margin: 0 !important;
    width: 19px !important;
    height: 19px !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item-button.fi-active {
    background: #EFF6FF !important;
    border-radius: 8px !important;
    border-left: none !important;
    box-shadow: 0 0 0 1.5px #1769D2 inset !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-group-button {
    display: none !important;
}

.fi-sidebar:not(.fi-sidebar-open) .fi-badge {
    display: none !important;
}

/* Sidebar Item Hover */
.fi-sidebar-item-button:hover {
    background: #F8FAFC !important;
}

.fi-sidebar-item-button:hover .fi-sidebar-item-label,
.fi-sidebar-item-button:hover .fi-sidebar-item-label span {
    color: var(--o2-primary) !important;
}

.fi-sidebar-item-button:hover .fi-sidebar-item-icon,
.fi-sidebar-item-button:hover svg {
    color: var(--o2-primary) !important;
}

/* Sidebar Item Active (Electric Cobalt Blue Accent Pill) */
.fi-sidebar-item.fi-active .fi-sidebar-item-button,
.fi-sidebar-item-active .fi-sidebar-item-button,
.fi-sidebar-item.fi-active > a,
.fi-sidebar-item-button.fi-active,
.fi-sidebar-item-button[aria-current="page"] {
    background: var(--o2-primary-light) !important;
    border-radius: 8px !important;
    border-left: 3px solid var(--o2-primary) !important;
    box-shadow: none !important;
}

.fi-sidebar-item.fi-active .fi-sidebar-item-label,
.fi-sidebar-item.fi-active .fi-sidebar-item-label span,
.fi-sidebar-item.fi-active .fi-sidebar-item-button .fi-sidebar-item-label,
.fi-sidebar-item.fi-active .fi-sidebar-item-button .fi-sidebar-item-label span,
.fi-sidebar-item-button.fi-active .fi-sidebar-item-label,
.fi-sidebar-item-button.fi-active .fi-sidebar-item-label span {
    color: var(--o2-primary) !important;
    font-weight: 700 !important;
}

.fi-sidebar-item.fi-active .fi-sidebar-item-icon,
.fi-sidebar-item.fi-active svg,
.fi-sidebar-item.fi-active .fi-sidebar-item-button .fi-sidebar-item-icon,
.fi-sidebar-item.fi-active .fi-sidebar-item-button svg,
.fi-sidebar-item-button.fi-active .fi-sidebar-item-icon,
.fi-sidebar-item-button.fi-active svg {
    color: var(--o2-primary) !important;
}

.fi-sidebar-item.fi-active .fi-badge,
.fi-sidebar-item.fi-active .fi-sidebar-item-button .fi-badge {
    background-color: var(--o2-primary) !important;
    color: #FFFFFF !important;
    border-color: var(--o2-primary) !important;
    font-weight: 700 !important;
}

/* Remove vertical connector lines */
.fi-sidebar-item-grouped-border {
    display: none !important;
}
.fi-sidebar-item-grouped-border div {
    display: none !important;
}

/* ── Sidebar Nav Badges (Count Pills) ──────────────────────── */
.fi-sidebar-item-button .fi-badge,
.fi-sidebar-item-badge {
    font-family: var(--font-en) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 9999px !important;
    letter-spacing: 0.2px !important;
    line-height: 1.2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    box-shadow: none !important;
    transition: all 0.15s ease !important;
}

/* Neutral / Count badge (Articles, Categories, Videos, etc.) */
.fi-sidebar-item-button .fi-badge.fi-color-gray,
.fi-sidebar-item-button .fi-badge[class*="gray"] {
    background-color: #F1F5F9 !important;
    color: #475569 !important;
    border: 1px solid #E2E8F0 !important;
}

/* Danger / Breaking news badge (Pulsing Red Alert) */
.fi-sidebar-item-button .fi-badge.fi-color-danger,
.fi-sidebar-item-button .fi-badge[class*="danger"],
.fi-sidebar-item-badge {
    background-color: #FEE2E2 !important;
    color: var(--o2-danger) !important;
    border: 1px solid #FECACA !important;
    animation: pulse-danger-subtle 2.2s infinite ease-in-out;
}

@keyframes pulse-danger-subtle {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.85; transform: scale(1.05); }
}

/* Warning / In Review badge */
.fi-sidebar-item-button .fi-badge.fi-color-warning,
.fi-sidebar-item-button .fi-badge[class*="warning"] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
    border: 1px solid #FDE68A !important;
}

/* Success / Active campaign badge */
.fi-sidebar-item-button .fi-badge.fi-color-success,
.fi-sidebar-item-button .fi-badge[class*="success"] {
    background-color: #DCFCE7 !important;
    color: #16A34A !important;
    border: 1px solid #BBF7D0 !important;
}

/* Info / Subscribers badge */
.fi-sidebar-item-button .fi-badge.fi-color-info,
.fi-sidebar-item-button .fi-badge[class*="info"] {
    background-color: #E0F2FE !important;
    color: #0284C7 !important;
    border: 1px solid #BAE6FD !important;
}

/* ── Collapsed Sidebar Support ────────────────────────────── */
.fi-sidebar:not(.fi-sidebar-open) .o2-brand-text {
    display: none !important;
}

/* ── Top Header (56px, White, Subtle Bottom Border) ──────── */
.fi-topbar {
    height: 56px !important;
    background: #FFFFFF !important;
    border-bottom: 1px solid var(--o2-border) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
}

.fi-topbar-header {
    height: 56px !important;
}

/* ── Page Header & Titles ─────────────────────────────────── */
.fi-page-header {
    padding: 0.75rem 0 0.85rem !important;
}

.fi-page-header-heading {
    font-family: var(--font-bn) !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--o2-text-main) !important;
    letter-spacing: -0.2px;
}

/* ── Content Container ────────────────────────────────────── */
.fi-main {
    background-color: var(--o2-bg) !important;
    padding: 1rem 1.25rem !important;
}

/* ── Cards & Sections (White, 10px rounded, subtle border)  */
.fi-section, 
.fi-card {
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 10px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    transition: box-shadow 0.2s ease !important;
}

.fi-section-header {
    padding: 0.75rem 1rem !important;
    border-bottom: 1px solid var(--o2-border-light) !important;
}

.fi-section-content {
    padding: 0.85rem 1rem !important;
}

.fi-section-header-heading {
    font-family: var(--font-bn) !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    color: var(--o2-text-main) !important;
}

/* ── KPI Cards (StatsOverviewWidget - Pure White, No Dark BG) */
.fi-wi-stats-overview-stat {
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    padding: 1.25rem 1.5rem !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.fi-wi-stats-overview-stat:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06) !important;
}

.fi-wi-stats-overview-stat-label {
    font-family: var(--font-bn) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    color: var(--o2-text-sub) !important;
}

.fi-wi-stats-overview-stat-value {
    font-family: var(--font-en) !important;
    font-size: 1.9rem !important;
    font-weight: 800 !important;
    color: var(--o2-text-main) !important;
    line-height: 1.15 !important;
    margin: 4px 0 !important;
}

.fi-wi-stats-overview-stat-description {
    font-family: var(--font-bn) !important;
    font-size: 0.78rem !important;
    color: var(--o2-text-sub) !important;
}

/* ── Data Tables: Compact High-Density (40-42px rows) ────── */
.fi-ta-ctn {
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 10px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
    overflow: hidden !important;
}

.fi-ta-table {
    font-family: var(--font-bn) !important;
    background: #FFFFFF !important;
}

/* Table Header */
.fi-ta-header-cell {
    background: #F8FAFC !important;
    color: var(--o2-text-sub) !important;
    font-family: var(--font-en) !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-bottom: 1px solid var(--o2-border) !important;
    padding: 0.45rem 0.75rem !important;
    height: 36px !important;
}

/* Table Rows: Ultra-Clean High-Density (40-42px height) */
.fi-ta-row {
    background: #FFFFFF !important;
    border-bottom: 1px solid var(--o2-border-light) !important;
    min-height: 40px !important;
    transition: background-color 0.1s ease !important;
}

.fi-ta-row:hover {
    background-color: #F8FAFC !important;
}

.fi-ta-cell {
    padding: 0.35rem 0.65rem !important;
    color: var(--o2-text-main) !important;
    font-size: 0.82rem !important;
    vertical-align: middle !important;
}

.fi-ta-cell .fi-ta-text-item-label,
.fi-ta-cell span {
    color: var(--o2-text-main) !important;
    line-height: 1.3 !important;
}

.fi-ta-cell .fi-ta-text-item-description {
    color: var(--o2-text-sub) !important;
    font-size: 0.72rem !important;
    margin-top: 1px !important;
}

/* Table image thumbnails */
.fi-ta-cell img {
    width: 44px !important;
    height: 30px !important;
    border-radius: 4px !important;
    object-fit: cover !important;
    border: 1px solid var(--o2-border) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

/* Table Search Input */
.fi-ta-search-field input {
    font-family: var(--font-bn) !important;
    height: 34px !important;
    background: #F8FAFC !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 6px !important;
    font-size: 0.82rem !important;
    padding: 4px 10px !important;
}

.fi-ta-search-field input:focus {
    background: #FFFFFF !important;
    border-color: var(--o2-primary) !important;
    box-shadow: 0 0 0 2px rgba(23, 105, 210, 0.12) !important;
}

/* ── Status Badges (Refined Pastel Micro-Pills) ───────────── */
.fi-badge {
    font-family: var(--font-bn) !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    border-radius: 9999px !important;
    padding: 2px 7px !important;
    line-height: 1.2 !important;
}

/* ── Form Inputs: Compact High-Density (36px height) ──────── */
.fi-input, 
.fi-select-input {
    font-family: var(--font-bn) !important;
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 7px !important;
    font-size: 0.85rem !important;
    height: 36px !important;
    padding: 4px 10px !important;
    color: var(--o2-text-main) !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.fi-input-wrp {
    border-radius: 7px !important;
    border-color: var(--o2-border) !important;
    min-height: 36px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.fi-textarea {
    font-family: var(--font-bn) !important;
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 7px !important;
    font-size: 0.85rem !important;
    padding: 6px 10px !important;
    min-height: 64px !important;
    color: var(--o2-text-main) !important;
    line-height: 1.45 !important;
}

.fi-input:focus, 
.fi-select-input:focus, 
.fi-textarea:focus,
.fi-input-wrp:focus-within {
    border-color: var(--o2-primary) !important;
    box-shadow: 0 0 0 2.5px rgba(23, 105, 210, 0.12) !important;
    outline: none !important;
}

/* Compact Field Wrappers */
.fi-fo-field-wrp {
    margin-bottom: 0.55rem !important;
}

.fi-fo-field-wrp-label {
    font-family: var(--font-bn) !important;
    font-weight: 600 !important;
    font-size: 0.78rem !important;
    color: #334155 !important;
    margin-bottom: 2px !important;
    line-height: 1.25 !important;
}

.fi-fo-field-wrp-helper-text {
    font-family: var(--font-bn) !important;
    color: var(--o2-text-sub) !important;
    font-size: 0.72rem !important;
    margin-top: 2px !important;
}

/* Compact Sections / Fieldsets */
.fi-fo-section {
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    border-radius: 10px !important;
    padding: 1rem 1.15rem !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    margin-bottom: 0.85rem !important;
}

.fi-fo-section-header {
    padding-bottom: 0.45rem !important;
    margin-bottom: 0.65rem !important;
    border-bottom: 1px solid #F1F5F9 !important;
}

.fi-fo-section-header-heading {
    font-family: var(--font-bn) !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    color: var(--o2-text-main) !important;
}

.fi-fo-section-header-description {
    font-family: var(--font-bn) !important;
    font-size: 0.73rem !important;
    color: var(--o2-text-sub) !important;
    margin-top: 1px !important;
}

/* Compact FilePond / Media Upload Area */
.filepond--root {
    margin-bottom: 0 !important;
    font-family: var(--font-bn) !important;
}

.filepond--panel-root {
    border-radius: 8px !important;
    border: 1.5px dashed #CBD5E1 !important;
    background-color: #F8FAFC !important;
}

.filepond--drop-label {
    min-height: 4em !important;
    font-size: 0.76rem !important;
    color: #64748B !important;
}

.filepond--drop-label label {
    font-size: 0.76rem !important;
    font-weight: 500 !important;
    color: #475569 !important;
}

/* ── Buttons: Compact (32-34px height) ─────────────────────── */
.fi-btn {
    font-family: var(--font-bn) !important;
    font-weight: 600 !important;
    border-radius: 7px !important;
    font-size: 0.82rem !important;
    height: 34px !important;
    padding: 4px 12px !important;
    transition: all 0.12s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.fi-btn-size-sm {
    height: 28px !important;
    padding: 2px 9px !important;
    font-size: 0.75rem !important;
}

.fi-btn-size-lg {
    height: 38px !important;
    padding: 6px 16px !important;
    font-size: 0.86rem !important;
}

.fi-btn-color-primary {
    background: var(--o2-primary) !important;
    color: #FFFFFF !important;
    border: none !important;
    box-shadow: 0 1px 2px rgba(23, 105, 210, 0.15) !important;
}

.fi-btn-color-primary:hover {
    background: var(--o2-primary-dark) !important;
    box-shadow: 0 2px 6px rgba(23, 105, 210, 0.25) !important;
}

.fi-btn-color-danger {
    background: var(--o2-danger) !important;
    color: #FFFFFF !important;
    border: none !important;
}

.fi-btn-color-gray {
    background: #FFFFFF !important;
    color: var(--o2-text-main) !important;
    border: 1px solid var(--o2-border) !important;
}

.fi-btn-color-gray:hover {
    background: #F8FAFC !important;
}

/* ── Tabs (Pill style matching Newsroom mockup) ───────────── */
.fi-tabs {
    border-bottom: none !important;
    gap: 0.4rem !important;
    padding-bottom: 0.4rem !important;
}

.fi-tabs-tab {
    font-family: var(--font-bn) !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    color: var(--o2-text-sub) !important;
    padding: 0.32rem 0.75rem !important;
    border-radius: 9999px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--o2-border) !important;
    transition: all 0.12s ease !important;
}

.fi-tabs-tab:hover {
    background: #F8FAFC !important;
    color: var(--o2-primary) !important;
}

.fi-tabs-tab[aria-selected="true"] {
    background: var(--o2-primary) !important;
    color: #FFFFFF !important;
    border-color: var(--o2-primary) !important;
    box-shadow: 0 1px 3px rgba(23, 105, 210, 0.2) !important;
}

.fi-tabs-tab[aria-selected="true"] .fi-badge {
    background: rgba(255, 255, 255, 0.25) !important;
    color: #FFFFFF !important;
}

/* ── Pagination ───────────────────────────────────────────── */
.fi-pagination-item-active button {
    background: var(--o2-primary) !important;
    color: #FFFFFF !important;
    border-radius: 6px !important;
}

/* ── Modals & Dialogs ─────────────────────────────────────── */
.fi-modal-window {
    background: #FFFFFF !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12) !important;
    border: 1px solid var(--o2-border) !important;
}

.fi-modal-heading {
    font-family: var(--font-bn) !important;
    font-weight: 700 !important;
    color: var(--o2-text-main) !important;
}

/* ── Clean Scrollbars ─────────────────────────────────────── */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-track {
    background: transparent;
}
::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
    background: #94A3B8;
}

/* ── Live iOS Style Toggle Switch for Breaking ─────────── */
.fi-ta-toggle-column button[aria-checked="true"] {
    background-color: #DC2626 !important;
}

/* ── Page Subheading Styling ──────────────────────────────── */
.fi-page-subheading,
.fi-page-header-subheading {
    font-family: var(--font-bn) !important;
    font-size: 0.88rem !important;
    color: var(--o2-text-sub) !important;
    margin-top: 4px !important;
    font-weight: 400 !important;
}

/* ── Table Action Menu Button ─────────────────────────────── */
.fi-ta-actions .fi-icon-btn {
    border-radius: 8px !important;
    transition: all 0.15s ease !important;
}
.fi-ta-actions .fi-icon-btn:hover {
    background-color: #F1F5F9 !important;
    color: var(--o2-primary) !important;
}

