/* ============================================
   PARADIGMA ADMIN — Dark Chrome Apple Theme v2.0
   ============================================
   Filament .fi-* overrides for Admin Panel.
   Uses design-tokens.css via <link> + data-theme="admin".
   NOTE: "Juicy" interactive upgrades managed by Admin agent.
   ============================================ */


/* ============================================
   ANIMATIONS
   ============================================ */
@keyframes paradigmaFadeInUp {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes paradigmaPulseGlow {
    0%, 100% { box-shadow: 0 0 8px rgba(59, 130, 246, 0.4); }
    50% { box-shadow: 0 0 16px rgba(59, 130, 246, 0.6); }
}

@keyframes paradigmaBadgePulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.3); opacity: 0.8; }
}

.dark .fi-topbar .fi-icon-btn-badge {
    animation: paradigmaBadgePulse 1.5s ease-in-out 3;
}

.dark .fi-icon-btn-badge {
    background: var(--danger) !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: var(--weight-bold) !important;
    min-width: 18px;
    height: 18px;
    border-radius: var(--radius-full) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 2px var(--bg-surface);
}


/* ============================================
   GLOBAL BACKGROUND — noise texture
   ============================================ */
:root {
    --fi-sidebar-width: 240px;
}

.dark .fi-body {
    background: linear-gradient(145deg, var(--bg-deep) 0%, #0f1520 50%, var(--bg-deep) 100%) !important;
}

.dark .fi-body::before {
    content: '';
    position: fixed;
    inset: 0;
    opacity: 0.015;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 0;
}

.dark .fi-page {
    animation: paradigmaFadeInUp 0.35s var(--ease-default);
}


/* ============================================
   SIDEBAR
   ============================================ */
.dark .fi-sidebar {
    background: linear-gradient(180deg, var(--bg-surface) 0%, var(--bg-deep) 100%) !important;
    border-right: 1px solid var(--border-default) !important;
    backdrop-filter: blur(20px);
}

.dark .fi-sidebar-header {
    border-bottom: 1px solid var(--border-default) !important;
    padding: 1.25rem 1rem !important;
}

/* Brand name — chrome gradient */
.dark .fi-sidebar-header a,
.dark .fi-sidebar-header span {
    background: var(--chrome-gradient) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-weight: var(--weight-bold) !important;
    letter-spacing: 0.15em !important;
    font-size: 1.1rem !important;
}

/* Sidebar nav items — juicy hover */
.dark .fi-sidebar-item-button {
    border-radius: var(--radius-default) !important;
    margin: 0px 4px !important;
    padding: 0.5rem 0.6rem !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-sidebar-item-button:hover {
    background: var(--accent-blue-glow) !important;
    border: 1px solid var(--border-hover) !important;
    transform: translateX(2px);
}

.dark .fi-sidebar-item-button:hover .fi-sidebar-item-icon {
    color: var(--accent-blue) !important;
}

.dark .fi-sidebar-item-active .fi-sidebar-item-button {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.12), rgba(59, 130, 246, 0.06)) !important;
    border: 1px solid rgba(59, 130, 246, 0.2) !important;
    box-shadow: 0 0 20px rgba(59, 130, 246, 0.05) !important;
    position: relative;
}

/* Animated left indicator bar */
.dark .fi-sidebar-item-active .fi-sidebar-item-button::before {
    content: '';
    position: absolute;
    left: 0;
    top: 20%;
    height: 60%;
    width: 4px;
    border-radius: 0 4px 4px 0;
    background: linear-gradient(180deg, var(--accent-blue), #60a5fa);
    box-shadow: 0 0 12px rgba(59, 130, 246, 0.5);
    animation: paradigmaFadeInUp 0.25s var(--ease-out), paradigmaPulseGlow 3s ease-in-out infinite;
}

.dark .fi-sidebar-item-active .fi-sidebar-item-label {
    color: var(--chrome-light) !important;
    font-weight: var(--weight-semibold) !important;
}

.dark .fi-sidebar-item-icon {
    color: var(--text-secondary) !important;
    transition: color var(--duration-normal) ease !important;
}

.dark .fi-sidebar-item-active .fi-sidebar-item-icon {
    color: var(--accent-blue) !important;
}

.dark .fi-sidebar-group-label {
    color: var(--chrome-silver) !important;
    font-size: var(--font-overline) !important;
    letter-spacing: var(--ls-widest) !important;
    text-transform: uppercase !important;
    padding-left: 1.25rem !important;
}


/* ============================================
   TOPBAR
   ============================================ */
.dark .fi-topbar {
    background: rgba(10, 14, 20, 0.85) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border-bottom: 1px solid var(--border-default) !important;
}


/* ============================================
   CARDS & SECTIONS
   ============================================ */
.dark .fi-section,
.dark .fi-ta-ctn,
.dark .fi-wi-stats-overview-stat {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md) !important;
    transition: all var(--duration-slow) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-section:hover,
.dark .fi-ta-ctn:hover {
    border-color: rgba(59, 130, 246, 0.15) !important;
    box-shadow: var(--shadow-lg), var(--card-hover-glow, none) !important;
    transform: translateY(-1px) !important;
}

/* Stats widget cards — metallic effect */
.dark .fi-wi-stats-overview-stat {
    background: linear-gradient(145deg, var(--bg-surface), var(--bg-elevated)) !important;
    border: 1px solid var(--border-default) !important;
    position: relative;
    overflow: hidden;
}

.dark .fi-wi-stats-overview-stat::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--accent-blue), transparent);
}

.dark .fi-wi-stats-overview-stat-value {
    font-size: var(--font-kpi) !important;
    font-weight: var(--weight-bold) !important;
    background: linear-gradient(135deg, var(--chrome-light), var(--chrome-white)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

.dark .fi-wi-stats-overview-stat-label {
    color: var(--text-secondary) !important;
    font-size: var(--font-label) !important;
    letter-spacing: var(--ls-wider) !important;
}

/* Stat card icons — compact */
.dark .fi-wi-stats-overview-stat-icon {
    width: 1.5rem !important;
    height: 1.5rem !important;
    color: var(--accent-blue) !important;
    opacity: 0.7;
}

.dark .fi-wi-stats-overview-stat-icon svg,
.dark .fi-wi-stats-overview-stat svg {
    width: 1.25rem !important;
    height: 1.25rem !important;
}

/* Stat card hover */
.dark .fi-wi-stats-overview-stat:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(59, 130, 246, 0.2) !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35), var(--card-hover-glow, none) !important;
}

.dark .fi-wi-stats-overview-stat:active {
    transform: translateY(0) scale(0.99) !important;
}


/* ============================================
   TABLES
   ============================================ */
.dark .fi-ta-ctn {
    overflow-x: clip;
}
/* word-break для текста в таблицах, но НЕ для кнопок и селектов */
.dark .fi-ta-ctn .fi-ta-cell,
.dark .fi-ta-ctn .fi-ta-text {
    word-break: break-word;
}
.dark .fi-ta-ctn .fi-btn,
.dark .fi-ta-ctn button,
.dark .fi-ta-ctn select,
.dark .fi-ta-ctn option {
    word-break: normal !important;
    white-space: nowrap;
}
@media (max-width: 640px) {
    .dark .fi-ta-ctn .fi-btn,
    .dark .fi-ta-ctn button {
        white-space: normal;
        font-size: 0.75rem;
    }
}

.dark .fi-ta-header-cell {
    background: var(--bg-elevated) !important;
    color: var(--chrome-silver) !important;
    font-weight: var(--weight-semibold) !important;
    font-size: var(--font-caption) !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid var(--border-hover) !important;
}

.dark .fi-ta-row {
    border-bottom: 1px solid var(--border-default) !important;
    position: relative;
    transition: background var(--duration-fast) ease !important;
}

/* Left blue indicator on row hover */
.dark .fi-ta-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--accent-blue);
    opacity: 0;
    transition: opacity var(--duration-fast) var(--ease-default);
}

.dark .fi-ta-row:hover {
    background: var(--row-hover-bg, rgba(59, 130, 246, 0.06)) !important;
}

.dark .fi-ta-row:hover::before {
    opacity: 1;
}


/* ============================================
   FORM ELEMENTS
   ============================================ */
.dark .fi-input-wrp {
    background: var(--bg-surface) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: var(--radius-lg) !important;
    transition: border-color var(--duration-normal) ease, box-shadow var(--duration-normal) ease !important;
}

.dark .fi-input-wrp:focus-within {
    border-color: var(--accent-blue) !important;
    box-shadow: 0 0 0 3px var(--accent-blue-glow) !important;
}

.dark .fi-fo-field-wrp label,
.dark .fi-fo-field-wrp .fi-fo-field-wrp-label {
    color: var(--chrome-silver) !important;
    font-weight: var(--weight-medium) !important;
}


/* ============================================
   BUTTONS — Chrome metallic "Juicy"
   ============================================ */
.dark .fi-btn:hover {
    will-change: transform;
}

.dark .fi-btn-primary {
    background: var(--btn-primary-bg) !important;
    border: var(--btn-primary-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--btn-primary-shadow) !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-btn-primary:hover {
    background: var(--btn-blue-gradient-hover, linear-gradient(135deg, #2563eb, #3b82f6, #60a5fa)) !important;
    box-shadow: var(--btn-primary-glow-hover, 0 4px 20px rgba(59, 130, 246, 0.4)) !important;
    transform: translateY(-2px) scale(1.02) !important;
}

.dark .fi-btn-primary:active {
    transform: translateY(0) scale(0.98) !important;
    box-shadow: var(--btn-primary-shadow) !important;
}

.dark .fi-btn-primary:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 3px var(--accent-blue-glow), var(--btn-primary-shadow) !important;
}

/* Fire CTA Button */
.dark .fi-btn-color-warning,
.dark .p-btn-fire {
    background: var(--btn-cta-bg, linear-gradient(135deg, #ea580c, #f97316, #fb923c)) !important;
    border: 1px solid rgba(249, 115, 22, 0.3) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--btn-cta-glow, 0 4px 20px rgba(249, 115, 22, 0.3)), inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
    font-weight: var(--weight-semibold) !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-btn-color-warning:hover,
.dark .p-btn-fire:hover {
    box-shadow: var(--btn-cta-glow-hover, 0 6px 30px rgba(249, 115, 22, 0.4)), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    transform: translateY(-2px) scale(1.03) !important;
    filter: brightness(1.05);
}

.dark .fi-btn-color-warning:active,
.dark .p-btn-fire:active {
    transform: translateY(0) scale(0.97) !important;
    box-shadow: 0 1px 8px rgba(249, 115, 22, 0.2) !important;
    filter: brightness(0.95);
}

/* Secondary/gray buttons */
.dark .fi-btn-color-gray {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-hover) !important;
    border-radius: var(--radius-xl) !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-btn-color-gray:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

.dark .fi-btn-color-gray:active {
    transform: translateY(0) scale(0.98) !important;
    box-shadow: none !important;
}


/* ============================================
   TABS
   ============================================ */
.dark .fi-tabs-tab {
    border-radius: var(--radius-lg) !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-tabs-tab:hover {
    background: rgba(59, 130, 246, 0.06) !important;
}

.dark .fi-tabs-tab-active {
    background: var(--accent-blue-glow) !important;
    border: 1px solid rgba(59, 130, 246, 0.2) !important;
    box-shadow: var(--tab-active-glow, 0 2px 8px rgba(59, 130, 246, 0.3)) !important;
}


/* ============================================
   BADGES
   ============================================ */
.dark .fi-badge {
    border-radius: var(--radius-default) !important;
    font-weight: var(--weight-semibold) !important;
    font-size: var(--font-badge) !important;
    letter-spacing: var(--ls-wider) !important;
}


/* ============================================
   DROPDOWN PANELS (user menu, notifications)
   ============================================ */
.dark .fi-dropdown-panel {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-hover) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06) !important;
    z-index: var(--z-tooltip, 500) !important;
    opacity: 1 !important;
}

.dark .fi-dropdown-list-item {
    color: var(--text-primary) !important;
    border-radius: var(--radius-md) !important;
    margin: 0 4px !important;
    transition: all var(--duration-fast) ease !important;
}

.dark .fi-dropdown-list-item:hover {
    background: rgba(59, 130, 246, 0.08) !important;
}

/* Topbar — allow dropdown overflow */
.dark .fi-topbar,
.dark .fi-topbar nav,
.dark .fi-topbar > div,
.dark .fi-topbar .fi-dropdown,
.dark .fi-topbar .fi-user-menu {
    overflow: visible !important;
}


/* ============================================
   LOGIN PAGE
   ============================================ */
.dark .fi-simple-layout {
    background: linear-gradient(145deg, var(--bg-deep) 0%, var(--bg-surface) 50%, var(--bg-deep) 100%) !important;
    position: relative;
}

/* Subtle radial glow behind login card */
.dark .fi-simple-layout::before {
    content: '';
    position: fixed;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(59, 130, 246, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

.dark .fi-simple-main-ctn {
    background: rgba(17, 24, 39, 0.8) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: var(--radius-3xl) !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.5),
                0 0 120px rgba(59, 130, 246, 0.03) !important;
    animation: paradigmaFadeInUp 0.4s var(--ease-out);
}

.dark .fi-simple-header {
    margin-bottom: 1.5rem !important;
}


/* ============================================
   PAGE HEADERS — Chrome gradient text
   ============================================ */
.dark .fi-header-heading {
    background: linear-gradient(135deg, var(--chrome-silver), var(--chrome-light), var(--chrome-white), var(--chrome-light), var(--chrome-silver)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-weight: var(--weight-bold) !important;
    letter-spacing: var(--ls-snug) !important;
}

.dark .fi-header-subheading {
    color: var(--text-secondary) !important;
}


/* ============================================
   MODAL
   ============================================ */
.dark .fi-modal-window {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-hover) !important;
    border-radius: var(--radius-2xl) !important;
    box-shadow: var(--shadow-xl) !important;
}

/* Fix #8: ВСЕ native <select> в админ-панели */
.dark select {
    appearance: auto !important;
    -webkit-appearance: menulist !important;
    -moz-appearance: menulist !important;
    word-break: normal !important;
    white-space: nowrap !important;
}
.dark select option {
    word-break: normal !important;
    white-space: nowrap !important;
}


/* ============================================
   BREADCRUMBS
   ============================================ */
.dark .fi-breadcrumbs ol li a {
    color: var(--text-secondary) !important;
    transition: color var(--duration-fast) ease !important;
}
.dark .fi-breadcrumbs ol li a:hover {
    color: var(--chrome-light) !important;
    text-shadow: 0 0 8px rgba(59, 130, 246, 0.2);
}
.dark .fi-breadcrumbs ol li span {
    color: var(--chrome-silver) !important;
}


/* ============================================
   EMPTY STATE ON TABLES
   ============================================ */
.dark .fi-ta-empty-state {
    background: transparent !important;
}
.dark .fi-ta-empty-state-icon {
    color: var(--text-secondary) !important;
}
.dark .fi-ta-empty-state-heading {
    color: var(--chrome-silver) !important;
}
.dark .fi-ta-empty-state-description {
    color: var(--text-secondary) !important;
}


/* ============================================
   PAGINATION
   ============================================ */
.dark .fi-pagination-item {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-md) !important;
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}
.dark .fi-pagination-item:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--border-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}
.dark .fi-pagination-item:active {
    transform: translateY(0) scale(0.97) !important;
}
.dark .fi-pagination-item-active {
    background: var(--accent-blue-glow) !important;
    border-color: rgba(59, 130, 246, 0.3) !important;
    box-shadow: var(--tab-active-glow, 0 2px 8px rgba(59, 130, 246, 0.3)) !important;
}


/* ============================================
   SCROLLBAR (webkit)
   ============================================ */
.dark ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.dark ::-webkit-scrollbar-track {
    background: var(--bg-deep);
}

.dark ::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 4px;
}

.dark ::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.15);
}


/* ============================================
   SMOOTH TRANSITIONS (targeted)
   ============================================ */
.dark .fi-btn,
.dark .fi-sidebar-item-button,
.dark .fi-section,
.dark .fi-ta-ctn,
.dark .fi-wi-stats-overview-stat,
.dark .fi-input-wrp,
.dark .fi-tabs-tab,
.dark .fi-pagination-item,
.dark .fi-dropdown-list-item {
    transition-timing-function: var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1));
}


/* ============================================
   LOADING INDICATOR
   ============================================ */
.dark .fi-loading-indicator {
    background: linear-gradient(90deg, var(--accent-blue), #60a5fa, var(--accent-blue)) !important;
}


/* ============================================
   ACCOUNT WIDGET & SIDEBAR COMPACT
   ============================================ */
.dark .fi-wi-account-widget {
    display: none !important;
}

.dark .fi-sidebar-nav {
    padding: 0.5rem 0 !important;
}

.dark .fi-sidebar-item-icon svg {
    width: var(--icon-sidebar) !important;
    height: var(--icon-sidebar) !important;
}

.dark .fi-sidebar-item-label {
    font-size: 0.85rem !important;
}

/* User menu in topbar — compact */
.dark .fi-user-menu {
    gap: 0.5rem !important;
}

/* Avatar — compact */
.dark .fi-avatar {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}

/* Notification bell & icon buttons — compact */
.dark .fi-icon-btn svg,
.dark .fi-topbar svg,
.dark [x-data] .fi-icon-btn svg {
    width: var(--icon-sidebar) !important;
    height: var(--icon-sidebar) !important;
}

.dark .fi-icon-btn {
    width: 32px !important;
    height: 32px !important;
    padding: 6px !important;
}

/* Hide sidebar footer */
.dark .fi-sidebar-footer {
    display: none !important;
}


/* ============================================
   NOTIFICATIONS — hover feedback
   ============================================ */
.dark .fi-notification {
    transition: all var(--duration-fast) ease !important;
}

.dark .fi-notification:hover {
    box-shadow: var(--shadow-lg) !important;
    border-color: var(--border-hover) !important;
}


/* ============================================
   BADGES — hover scale for clickable
   ============================================ */
.dark .fi-badge {
    transition: transform var(--duration-micro, 120ms) ease !important;
}

.dark a .fi-badge:hover,
.dark button .fi-badge:hover {
    transform: scale(1.05);
}


/* ============================================
   MODAL CLOSE — spin on hover
   ============================================ */
.dark .fi-modal-close-btn {
    transition: all var(--duration-normal) var(--ease-bounce, cubic-bezier(0.34, 1.56, 0.64, 1)) !important;
}

.dark .fi-modal-close-btn:hover {
    transform: rotate(90deg) scale(1.1) !important;
    color: var(--danger-text) !important;
}


/* REDUCED MOTION (WCAG) — targeted rules removed, global rule in design-tokens.css */


/* ============================================
   FIX #28: Action buttons in contentGrid cards
   Primary fix by Frontend: EditAction→iconButton() + ActionGroup dropdown.
   CSS safety net: compact layout, prevent label overflow.
   ============================================ */
.dark .fi-ta-actions {
    flex-wrap: wrap !important;
    gap: 4px !important;
}

.dark .fi-ta-actions .fi-btn .fi-btn-label {
    white-space: nowrap !important;
}


/* ============================================
   CUSTOM UTILITY CLASSES
   ============================================ */
.text-chrome {
    background: var(--chrome-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.paradigma-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-md);
    transition: border-color var(--duration-slow) ease, box-shadow var(--duration-slow) ease;
}

.paradigma-card:hover {
    border-color: var(--border-hover);
    box-shadow: var(--shadow-lg);
}

.paradigma-card-active {
    background: linear-gradient(145deg, rgba(16, 185, 129, 0.06), rgba(16, 185, 129, 0.02));
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.paradigma-glow-blue {
    box-shadow: var(--shadow-glow),
                0 0 60px rgba(59, 130, 246, 0.05);
}

.paradigma-toggle {
    position: relative;
    display: inline-flex;
    height: 26px;
    width: 48px;
    align-items: center;
    border-radius: 13px;
    cursor: pointer;
    transition: all var(--duration-slow) var(--ease-default);
}

.paradigma-toggle-active {
    background: linear-gradient(135deg, #059669, var(--success)) !important;
    box-shadow: 0 0 12px rgba(16, 185, 129, 0.3);
}

.paradigma-toggle-inactive {
    background: rgba(255, 255, 255, 0.08) !important;
}

.paradigma-toggle-dot {
    display: inline-block;
    height: 20px;
    width: 20px;
    border-radius: var(--radius-full);
    background: white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    transition: transform var(--duration-slow) var(--ease-default);
}

.paradigma-channel-badge {
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--font-caption);
    font-weight: var(--weight-semibold);
    cursor: pointer;
    transition: all var(--duration-normal) ease;
}

.paradigma-channel-active {
    background: var(--accent-blue-glow);
    color: #60a5fa;
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.paradigma-channel-active:hover {
    background: rgba(59, 130, 246, 0.25);
}

.paradigma-channel-inactive {
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-secondary);
    border: 1px solid var(--border-default);
}

.paradigma-channel-inactive:hover {
    background: rgba(255, 255, 255, 0.06);
}

.paradigma-channel-disabled {
    opacity: 0.3;
    cursor: not-allowed;
}


/* ============================================
   CHART WIDGET
   ============================================ */
.dark .fi-wi-chart {
    background: linear-gradient(145deg, var(--bg-surface), var(--bg-elevated)) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: none !important;
    overflow: clip;
    position: relative;
}

.dark .fi-wi-chart::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.08), transparent);
    z-index: 1;
}

.dark .fi-wi-chart .fi-wi-chart-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.dark .fi-wi-chart-heading {
    color: var(--text-primary) !important;
    font-size: 0.95rem !important;
    font-weight: var(--weight-semibold) !important;
}


/* ============================================
   INFOLIST (ViewBusiness page)
   ============================================ */
.dark .fi-in-entry-wrp {
    border-bottom: 1px solid var(--border-default);
    padding: 0.5rem 0;
}

.dark .fi-in-text {
    color: var(--text-primary) !important;
}

.dark .fi-in-section {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md) !important;
    transition: border-color var(--duration-slow) ease !important;
}

.dark .fi-in-section:hover {
    border-color: var(--border-hover) !important;
}

.dark .fi-in-section-header-ctn {
    border-bottom: 1px solid var(--border-default) !important;
}

.dark .fi-in-repeatable {
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--bg-elevated) !important;
}


/* ============================================
   WIZARD / STEPPER
   ============================================ */
.dark .fi-wizard-header {
    border-bottom: 1px solid var(--border-default) !important;
}


/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
    .dark .fi-wi-stats-overview-stat-value {
        font-size: var(--font-kpi-small) !important;
    }

    .dark .fi-wi-stats-overview-stat-label {
        font-size: var(--font-badge) !important;
    }

    .dark .fi-section,
    .dark .fi-ta-ctn,
    .dark .fi-wi-stats-overview-stat {
        border-radius: var(--radius-lg) !important;
        box-shadow: 0 2px 16px rgba(0, 0, 0, 0.2) !important;
    }

    .dark .fi-header-heading {
        font-size: var(--font-kpi-small) !important;
    }

    .dark .fi-sidebar-item-button {
        margin: 1px 4px !important;
        padding: 0.5rem 0.6rem !important;
    }

    .dark .fi-sidebar-item-label {
        font-size: 0.85rem !important;
    }

    .dark .fi-sidebar-item-icon svg {
        width: 1.1rem !important;
        height: 1.1rem !important;
    }

    .dark .fi-sidebar-group-label {
        font-size: 0.6rem !important;
        padding-left: 0.75rem !important;
    }

    .dark .fi-topbar {
        padding: 0.5rem !important;
    }

    .dark .fi-dropdown-panel {
        border-radius: var(--radius-lg) !important;
    }

    .dark .fi-modal-window {
        border-radius: var(--radius-xl) !important;
        margin: 1rem !important;
    }
}

@media (max-width: 480px) {
    .dark .fi-wi-stats-overview-stat-value {
        font-size: 1.1rem !important;
    }

    .dark .fi-wi-stats-overview-stat-label {
        font-size: var(--font-overline) !important;
    }

    .dark .fi-section,
    .dark .fi-ta-ctn {
        border-radius: var(--radius-default) !important;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15) !important;
    }

    .dark .fi-simple-main-ctn {
        border-radius: var(--radius-xl) !important;
        margin: 0.75rem !important;
    }

    .dark .fi-btn-primary {
        border-radius: var(--radius-default) !important;
    }

    .dark .fi-header-heading {
        font-size: 1.1rem !important;
    }

    .dark .fi-ta-header-cell {
        font-size: var(--font-overline) !important;
        padding: 0.5rem !important;
    }

    .dark .fi-badge {
        font-size: 0.6rem !important;
        padding: 2px 6px !important;
    }
}


/* REDUCED MOTION (WCAG) — defined in design-tokens.css (single source) */
