/* ==========================================================================
   INTELLIWEALTH • ROLLS-ROYCE BESPOKE DARK LUXURY THEME
   Obsidian Black, Champagne Gold (#D4AF37), Emerald & Deep Titanium
   High-Clarity Institutional Cockpit • Multi-Million Dollar Hedge Fund Aesthetic
   ========================================================================== */

:root:not(.theme-clean-light),
body.theme-rolls-royce,
body.theme-clean-dark {
    --bg-main: #06090e;
    --bg-app: #030508;
    --bg-card: rgba(14, 20, 32, 0.94);
    --bg-card-hover: rgba(22, 30, 48, 0.98);
    --bg-card-subtle: rgba(10, 15, 24, 0.85);
    --bg-subtle: rgba(10, 16, 26, 0.9);
    --bg-input: rgba(6, 9, 15, 0.9);
    --bg-panel: rgba(8, 12, 20, 0.96);
    --bg-modal: rgba(6, 9, 16, 0.98);
    --bg-surface: rgba(14, 20, 32, 0.96);
    --bg-elevated: rgba(18, 26, 42, 0.98);
    --bg-dark: #06090e;
    --bg-darker: #030508;

    --border-subtle: rgba(255, 255, 255, 0.08);
    --border-bright: rgba(212, 175, 55, 0.35);
    --border-luxury: rgba(212, 175, 55, 0.25);
    --border-hover: rgba(212, 175, 55, 0.55);
    --border-focus: #d4af37;

    --gold-champagne: #d4af37;
    --gold-accent: #f5d77f;
    --gold-light: rgba(212, 175, 55, 0.12);
    --gold-gradient: linear-gradient(135deg, #d4af37 0%, #f7df94 50%, #aa8222 100%);
    --gold-glow: 0 0 24px rgba(212, 175, 55, 0.28);

    --titanium-slate: #0b111b;
    --titanium-light: #162030;

    --text-main: #f8fafc;
    --text-light: #f8fafc;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;
    --text-subtle: #475569;

    --emerald: #10b981;
    --emerald-dark: #059669;
    --emerald-light: rgba(16, 185, 129, 0.15);

    --rose: #f43f5e;
    --rose-dark: #e11d48;
    --rose-light: rgba(244, 63, 94, 0.15);

    --primary: #d4af37;
    --primary-hover: #e6c86e;
    --primary-light: rgba(212, 175, 55, 0.12);

    --font-serif: 'Cinzel', 'Playfair Display', Georgia, serif;
    --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;

    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px 2px rgba(212, 175, 55, 0.05);
    --shadow-md: 0 4px 18px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(212, 175, 55, 0.12);
    --shadow-lg: 0 12px 36px rgba(0, 0, 0, 0.7), 0 2px 8px rgba(212, 175, 55, 0.18);
    --shadow-luxury: 0 10px 30px -4px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(212, 175, 55, 0.22);
}

/* Background canvas refinement */
body.theme-rolls-royce,
body.theme-clean-dark {
    background: #030508 !important;
    background-image: 
        radial-gradient(ellipse at 50% 0%, rgba(212, 175, 55, 0.07) 0%, transparent 60%),
        radial-gradient(circle at 10% 40%, rgba(14, 165, 233, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 90% 80%, rgba(16, 185, 129, 0.03) 0%, transparent 50%) !important;
    color: #f8fafc !important;
    font-family: var(--font-sans);
    min-height: 100vh;
}

/* Brand header with Rolls-Royce bespoke serif */
.sidebar-brand-title {
    font-family: var(--font-serif) !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    color: #f8fafc !important;
}

.sidebar-brand-title span {
    background: linear-gradient(135deg, #d4af37, #f5d77f) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-family: var(--font-serif) !important;
    font-weight: 800 !important;
}

.sidebar-brand-symbol {
    background: linear-gradient(135deg, #162030, #0b111b) !important;
    border: 1px solid rgba(212, 175, 55, 0.5) !important;
    color: #f5d77f !important;
    box-shadow: 0 2px 12px rgba(212, 175, 55, 0.25) !important;
    border-radius: 8px !important;
}

/* Top Navigation refinement: 100% opaque obsidian glass, zero bleed-through, elegant bespoke toolbar */
.top-nav {
    background: rgba(8, 12, 20, 0.95) !important;
    backdrop-filter: blur(24px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.22) !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.6) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 150 !important;
    padding: 0.45rem 1rem !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    color: #f8fafc !important;
}

.header-right {
    display: flex !important;
    align-items: center !important;
    gap: 0.6rem !important;
    flex-wrap: wrap !important;
}

/* ==========================================================================
   BESPOKE BUTTONS & MENUS STYLING
   ========================================================================== */

/* 1. Autonomy Switcher (Sleek Segmented Capsule) */
.autonomy-control-card {
    background: rgba(6, 10, 18, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 999px !important;
    padding: 3px 6px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4) !important;
}

.autonomy-tag {
    font-size: 0.64rem !important;
    font-weight: 800 !important;
    color: #f5d77f !important;
    letter-spacing: 0.6px !important;
    padding: 0 4px 0 6px !important;
}

.autonomy-pill-group {
    display: flex !important;
    gap: 3px !important;
}

.auto-pill-btn {
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    padding: 5px 11px !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.auto-pill-btn:hover {
    color: #f8fafc !important;
    background: rgba(212, 175, 55, 0.12) !important;
}

.auto-pill-btn.active {
    background: linear-gradient(135deg, #d4af37, #9e7732) !important;
    color: #030508 !important;
    border: 1px solid #f5d77f !important;
    box-shadow: 0 0 14px rgba(212, 175, 55, 0.35) !important;
    font-weight: 800 !important;
}

/* 2. Top Navigation Pills & Action Buttons */
.badge-live-pulse {
    background: rgba(16, 185, 129, 0.14) !important;
    border: 1px solid rgba(16, 185, 129, 0.38) !important;
    color: #34d399 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.4px !important;
    padding: 6px 12px !important;
    border-radius: 999px !important;
    box-shadow: 0 0 12px rgba(16, 185, 129, 0.2) !important;
}

.status-pill {
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.4rem !important;
    transition: all 0.2s ease !important;
    background: rgba(14, 20, 32, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #cbd5e1 !important;
}

.status-strategy-nav-btn {
    background: rgba(14, 20, 32, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.38) !important;
    color: #f5d77f !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
}

.status-strategy-nav-btn:hover {
    background: rgba(22, 30, 48, 0.95) !important;
    border-color: #d4af37 !important;
    transform: translateY(-1px) !important;
}

.status-broker-active {
    background: rgba(14, 20, 32, 0.92) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.5) !important;
    color: #f8fafc !important;
    box-shadow: 0 2px 14px rgba(0, 0, 0, 0.5) !important;
}

.status-broker-active:hover {
    background: rgba(22, 30, 48, 0.95) !important;
    border-color: #f5d77f !important;
}

.status-orders-nav-btn {
    background: rgba(14, 20, 32, 0.85) !important;
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    color: #f8fafc !important;
}

.status-orders-nav-btn:hover {
    border-color: rgba(212, 175, 55, 0.55) !important;
    color: #f5d77f !important;
}

.status-cro {
    background: rgba(16, 185, 129, 0.12) !important;
    border: 1px solid rgba(16, 185, 129, 0.35) !important;
    color: #34d399 !important;
}

body:not(.theme-clean-light) #themeToggleBtn,
body:not(.theme-clean-light) #sidebarThemeToggleBtn {
    background: rgba(14, 20, 32, 0.85) !important;
    border: 1px solid rgba(212, 175, 55, 0.32) !important;
    color: #f5d77f !important;
}

body:not(.theme-clean-light) #themeToggleBtn:hover,
body:not(.theme-clean-light) #sidebarThemeToggleBtn:hover {
    background: rgba(22, 30, 48, 0.95) !important;
    border-color: #d4af37 !important;
}

/* Kill Switch (Aviation Supercar Cockpit Safety Switch) */
.btn-kill-switch {
    background: rgba(244, 63, 94, 0.18) !important;
    border: 1.5px solid rgba(244, 63, 94, 0.5) !important;
    color: #fda4af !important;
    font-weight: 800 !important;
    font-size: 0.72rem !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 10px rgba(244, 63, 94, 0.2) !important;
}

.btn-kill-switch:hover {
    background: #e11d48 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 20px rgba(244, 63, 94, 0.5) !important;
    transform: scale(1.02) !important;
}

/* ==========================================================================
   SIDEBAR BESPOKE NAVIGATION & BADGES (MATCHING LOGIN LUXURY GLASS)
   ========================================================================== */
.app-sidebar {
    background: rgba(8, 11, 16, 0.92) !important;
    backdrop-filter: blur(36px) saturate(190%) !important;
    -webkit-backdrop-filter: blur(36px) saturate(190%) !important;
    border-right: 1px solid rgba(212, 175, 55, 0.28) !important;
    box-shadow: 4px 0 35px rgba(0, 0, 0, 0.6) !important;
}

.sidebar-brand-box {
    background: transparent !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.22) !important;
}

.sidebar-brand-title {
    font-family: 'Cinzel', serif !important;
    color: #F8FAFC !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
}

.sidebar-brand-title span {
    color: #D4AF37 !important;
}

.sidebar-brand-sub {
    color: #94A3B8 !important;
    font-size: 0.7rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

.sidebar-nav-category-title {
    color: #D4AF37 !important;
    font-size: 0.66rem !important;
    font-weight: 800 !important;
    letter-spacing: 1.6px !important;
    text-transform: uppercase !important;
    opacity: 0.9 !important;
}

.sidebar-nav-item {
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    color: #CBD5E1 !important;
    padding: 7px 11px !important;
    border-radius: 8px !important;
    border: 1px solid transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: pointer !important;
    margin-bottom: 2px !important;
}

.nav-item-left {
    display: flex !important;
    align-items: center !important;
    gap: 0.65rem !important;
}

.nav-icon-svg {
    width: 17px !important;
    height: 17px !important;
    stroke: #D4AF37 !important;
    fill: none !important;
    stroke-width: 1.6 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
}

.sidebar-nav-item:hover .nav-icon-svg {
    stroke: #FFE898 !important;
    transform: scale(1.08) !important;
}

.sidebar-nav-item.active .nav-icon-svg {
    stroke: #FFE898 !important;
    stroke-width: 1.9 !important;
}

.sidebar-nav-item:hover {
    background: rgba(212, 175, 55, 0.12) !important;
    color: #FFE898 !important;
    border-color: rgba(212, 175, 55, 0.35) !important;
    transform: translateX(3px) !important;
}

.sidebar-nav-item.active {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.24) 0%, rgba(212, 175, 55, 0.08) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.55) !important;
    border-left: 4px solid #D4AF37 !important;
    color: #FFE898 !important;
    font-weight: 800 !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.4), inset 0 1px 1px rgba(255, 255, 255, 0.1) !important;
}

.sidebar-badge {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #94A3B8 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.sidebar-badge.badge-gold {
    background: rgba(212, 175, 55, 0.18) !important;
    color: #FFE898 !important;
    border-color: rgba(212, 175, 55, 0.4) !important;
}

.sidebar-badge.badge-emerald {
    background: rgba(16, 185, 129, 0.18) !important;
    color: #6EE7B7 !important;
    border-color: rgba(16, 185, 129, 0.35) !important;
}

.sidebar-footer {
    background: transparent !important;
    border-top: 1px solid rgba(212, 175, 55, 0.2) !important;
}

/* Refined Luxury Badges (Eliminates loud cartoon neon colors) */
.sidebar-badge {
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
    background: rgba(30, 41, 59, 0.06) !important;
    color: #475569 !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sidebar-badge.live,
.sidebar-badge.badge-emerald {
    background: rgba(13, 148, 136, 0.1) !important;
    color: #0f766e !important;
    border: 1px solid rgba(13, 148, 136, 0.25) !important;
}

.sidebar-badge.badge-gold {
    background: rgba(197, 160, 89, 0.14) !important;
    color: #856221 !important;
    border: 1px solid rgba(197, 160, 89, 0.3) !important;
}

/* ==========================================================================
   FLOATING COPILOT & DRAWER (BESPOKE TITANIUM & GOLD)
   ========================================================================== */
#copilotFloatingBtn {
    background: linear-gradient(135deg, #1f242c 0%, #14171c 100%) !important;
    border: 1.5px solid rgba(197, 160, 89, 0.55) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 28px rgba(197, 160, 89, 0.25), 0 4px 14px rgba(0, 0, 0, 0.2) !important;
    padding: 11px 22px !important;
    border-radius: 999px !important;
}

#copilotFloatingBtn:hover {
    border-color: #dfba73 !important;
    box-shadow: 0 12px 36px rgba(197, 160, 89, 0.4), 0 4px 16px rgba(0, 0, 0, 0.25) !important;
}

#copilotFloatingBtn span:last-child {
    background: rgba(197, 160, 89, 0.2) !important;
    color: #dfba73 !important;
    border: 1px solid rgba(197, 160, 89, 0.4) !important;
}

#copilotDrawer {
    border: 1px solid rgba(197, 160, 89, 0.3) !important;
    box-shadow: 0 20px 60px rgba(20, 23, 28, 0.15) !important;
}

#copilotDrawer > div:first-child {
    background: linear-gradient(135deg, #1f242c 0%, #14171c 100%) !important;
    border-bottom: 2px solid #c5a059 !important;
}

/* Ticker tape luxury tone */
.wallstreet-ticker-tape {
    background: #14171c !important;
    border-bottom: 1px solid rgba(197, 160, 89, 0.3) !important;
}

.ticker-tape-badge {
    background: linear-gradient(135deg, #c5a059, #9e7732) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
}

/* ==========================================================================
   EXECUTIVE SALON & HIGH-CLARITY CHART HUB
   ========================================================================== */
.executive-chart-hub {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.94) 0%, rgba(8, 12, 20, 0.98) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    padding: 1.5rem 1.75rem !important;
    margin-bottom: 1.75rem !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 1.25rem !important;
    position: relative !important;
    overflow: hidden !important;
}

.executive-chart-hub::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.8), transparent);
}

.chart-hub-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-bottom: 1rem !important;
}

.chart-hub-title-group {
    display: flex !important;
    align-items: center !important;
    gap: 0.85rem !important;
}

.chart-hub-icon-badge {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #162030, #0b111b) !important;
    border: 1px solid rgba(212, 175, 55, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.3rem !important;
    color: #f5d77f !important;
    box-shadow: 0 2px 10px rgba(212, 175, 55, 0.2) !important;
}

.chart-hub-title {
    font-family: var(--font-serif) !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #f8fafc !important;
    letter-spacing: -0.2px !important;
    margin: 0 !important;
}

.chart-hub-subtitle {
    font-size: 0.8rem !important;
    color: #94a3b8 !important;
    margin-top: 2px !important;
    font-weight: 500 !important;
}

.chart-hub-controls {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    flex-wrap: wrap !important;
}

/* Custom Asset Select */
select#selectChartAsset {
    background: rgba(14, 20, 32, 0.95) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.45) !important;
    border-radius: 999px !important;
    padding: 6px 14px !important;
    color: #f8fafc !important;
    font-weight: 700 !important;
    font-size: 0.8rem !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4) !important;
    cursor: pointer !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

select#selectChartAsset:hover,
select#selectChartAsset:focus {
    border-color: #f5d77f !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.25) !important;
}

/* Mode toggles (Performance vs Candlestick) */
.chart-mode-switch {
    display: flex !important;
    background: rgba(6, 10, 18, 0.85) !important;
    padding: 3px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
}

.chart-mode-btn {
    padding: 5px 13px !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    border-radius: 999px !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.35rem !important;
}

.chart-mode-btn:hover {
    color: #f8fafc !important;
}

.chart-mode-btn.active {
    background: linear-gradient(135deg, #d4af37, #9e7732) !important;
    color: #030508 !important;
    box-shadow: 0 0 12px rgba(212, 175, 55, 0.35) !important;
    border: 1px solid #f5d77f !important;
    font-weight: 800 !important;
}

/* Timeframe chips */
.timeframe-group {
    display: flex !important;
    background: rgba(6, 10, 18, 0.85) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 999px !important;
    padding: 2px 4px !important;
    gap: 2px !important;
}

.timeframe-btn {
    padding: 4px 10px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    border: none !important;
    background: transparent !important;
    color: #94a3b8 !important;
    border-radius: 999px !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
}

.timeframe-btn:hover {
    color: #f5d77f !important;
}

.timeframe-btn.active {
    background: linear-gradient(135deg, #d4af37, #9e7732) !important;
    color: #030508 !important;
    font-weight: 800 !important;
    box-shadow: 0 0 10px rgba(212, 175, 55, 0.3) !important;
}

/* ==========================================================================
   HIGH-CLARITY BESPOKE GAUGES (PAS D'HORLOGE COMPLEXE)
   Linear Precision Bars & Instant Readout Cards
   ========================================================================== */
.bespoke-gauges-strip {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
    gap: 1rem !important;
    margin-bottom: 1.25rem !important;
}

.bespoke-gauge-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.92) 0%, rgba(8, 12, 20, 0.96) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 12px !important;
    padding: 1rem 1.1rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.bespoke-gauge-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.7), 0 0 16px rgba(212, 175, 55, 0.15) !important;
    border-color: rgba(212, 175, 55, 0.45) !important;
}

.bespoke-gauge-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 0.5rem !important;
}

.bespoke-gauge-lbl {
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #94a3b8 !important;
}

.bespoke-gauge-pill {
    font-size: 0.65rem !important;
    font-weight: 800 !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: rgba(212, 175, 55, 0.15) !important;
    color: #f5d77f !important;
    border: 1px solid rgba(212, 175, 55, 0.35) !important;
}

.bespoke-gauge-val {
    font-family: var(--font-mono) !important;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    color: #f8fafc !important;
    line-height: 1.1 !important;
    margin-bottom: 0.4rem !important;
}

.bespoke-gauge-sub {
    font-size: 0.74rem !important;
    color: #94a3b8 !important;
    font-weight: 600 !important;
    margin-bottom: 0.6rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.3rem !important;
}

/* Linear precision progress track (100% lisible en 1 seconde) */
.bespoke-progress-track {
    width: 100% !important;
    height: 6px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    position: relative !important;
}

.bespoke-progress-fill {
    height: 100% !important;
    border-radius: 999px !important;
    transition: width 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.fill-gold {
    background: linear-gradient(90deg, #dfba73, #d4af37) !important;
}

.fill-emerald {
    background: linear-gradient(90deg, #34d399, #059669) !important;
}

.fill-cyan {
    background: linear-gradient(90deg, #38bdf8, #0284c7) !important;
}

.fill-purple {
    background: linear-gradient(90deg, #c084fc, #9333ea) !important;
}

/* Chart Canvas Container */
.chart-hub-canvas-wrapper {
    position: relative !important;
    width: 100% !important;
    height: 360px !important;
    background: rgba(6, 10, 18, 0.95) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    padding: 0.75rem !important;
}

/* Candlestick Canvas Overlay */
#bespokeCandleCanvas {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
}

#executivePerformanceChartCanvas {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

/* High-contrast Capital Summary Card (Dark Theme) */
body:not(.theme-clean-light) .capital-summary-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.94) 0%, rgba(8, 12, 20, 0.98) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
}

body:not(.theme-clean-light) .capital-metric-box {
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body:not(.theme-clean-light) .cap-val {
    font-family: var(--font-mono) !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .global-allocation-bar-container {
    grid-column: 1 / -1 !important;
    margin-top: 0.6rem !important;
    padding-top: 0.75rem !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Primary buttons in champagne gold */
body:not(.theme-clean-light) .btn-action-primary {
    background: linear-gradient(135deg, #d4af37, #9e7732) !important;
    color: #030508 !important;
    border: 1px solid #f5d77f !important;
    box-shadow: 0 2px 12px rgba(212, 175, 55, 0.3) !important;
    font-weight: 800 !important;
}

body:not(.theme-clean-light) .btn-action-primary:hover {
    background: linear-gradient(135deg, #f5d77f, #b89047) !important;
    box-shadow: 0 4px 18px rgba(212, 175, 55, 0.45) !important;
}

/* Outline action buttons */
body:not(.theme-clean-light) .btn-action-outline {
    background: rgba(14, 20, 32, 0.85) !important;
    border: 1px solid rgba(212, 175, 55, 0.35) !important;
    color: #f5d77f !important;
    font-weight: 700 !important;
}

body:not(.theme-clean-light) .btn-action-outline:hover {
    background: rgba(22, 30, 48, 0.95) !important;
    border-color: #d4af37 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   SIDEBAR COLLAPSE / EXPAND TOGGLE SYSTEM
   ========================================================================== */
.app-sidebar {
    transition: width 0.28s cubic-bezier(0.16, 1, 0.3, 1), min-width 0.28s cubic-bezier(0.16, 1, 0.3, 1), padding 0.28s ease !important;
}

body:not(.theme-clean-light) .btn-sidebar-toggle {
    background: rgba(14, 20, 32, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.35) !important;
    border-radius: 8px !important;
    width: 34px !important;
    height: 34px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: #f5d77f !important;
    transition: all 0.2s ease !important;
    margin-right: 0.65rem !important;
    flex-shrink: 0 !important;
}

body:not(.theme-clean-light) .btn-sidebar-toggle:hover {
    background: rgba(22, 30, 48, 0.95) !important;
    border-color: #d4af37 !important;
    color: #ffffff !important;
    transform: scale(1.04) !important;
}

body:not(.theme-clean-light) .btn-sidebar-collapse-inner {
    background: rgba(14, 20, 32, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 6px !important;
    width: 24px !important;
    height: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: #94a3b8 !important;
    margin-left: auto !important;
    transition: all 0.2s ease !important;
}

body:not(.theme-clean-light) .btn-sidebar-collapse-inner:hover {
    color: #f5d77f !important;
    border-color: #d4af37 !important;
}

/* Mode Réduit / Collapsed (68px) */
.app-layout.sidebar-collapsed .app-sidebar {
    width: 68px !important;
    min-width: 68px !important;
    padding: 1.25rem 0.4rem !important;
}

.app-layout.sidebar-collapsed .sidebar-brand-title,
.app-layout.sidebar-collapsed .sidebar-brand-sub,
.app-layout.sidebar-collapsed .sidebar-nav-item span,
.app-layout.sidebar-collapsed .sidebar-badge,
.app-layout.sidebar-collapsed .btn-sidebar-collapse-inner,
.app-layout.sidebar-collapsed .sidebar-nav-list > div:first-child,
.app-layout.sidebar-collapsed .sidebar-nav-list > div:nth-child(8),
.app-layout.sidebar-collapsed .sidebar-footer .sidebar-status-box div:last-child {
    display: none !important;
}

.app-layout.sidebar-collapsed .sidebar-brand-box {
    justify-content: center !important;
    padding-bottom: 0.8rem !important;
}

.app-layout.sidebar-collapsed .sidebar-nav-item {
    justify-content: center !important;
    padding: 11px 0 !important;
}

.app-layout.sidebar-collapsed .nav-item-left {
    justify-content: center !important;
    gap: 0 !important;
}

.app-layout.sidebar-collapsed .sidebar-footer {
    padding: 0 !important;
}

.app-layout.sidebar-collapsed .sidebar-status-box {
    padding: 6px 0 !important;
    display: flex !important;
    justify-content: center !important;
}

.app-layout.sidebar-collapsed .sidebar-status-box span:last-child {
    display: none !important;
}

.app-layout.sidebar-collapsed #sidebarThemeToggleBtn {
    font-size: 0.85rem !important;
    padding: 6px 0 !important;
}

/* ==========================================================================
   COPILOT DOCKED RIGHT SIDE-DRAWER (SLIDE-OVER PANEL)
   ========================================================================== */
.copilot-side-panel {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 500px;
    min-width: 380px !important;
    max-width: 95vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    box-sizing: border-box !important;
    background: rgba(8, 12, 20, 0.98) !important;
    backdrop-filter: blur(36px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(36px) saturate(180%) !important;
    border-left: 1.5px solid rgba(212, 175, 55, 0.35) !important;
    box-shadow: -10px 0 50px rgba(0, 0, 0, 0.8) !important;
    z-index: 10000 !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateX(100%) !important;
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), width 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    overflow: hidden !important;
    color: #f8fafc !important;
}

.copilot-side-panel.open {
    transform: translateX(0) !important;
}

.copilot-side-panel.resizing {
    transition: none !important;
    user-select: none !important;
}

.copilot-side-panel.expanded {
    width: 760px !important;
    max-width: 92vw !important;
}

.copilot-side-panel.fullscreen {
    width: 95vw !important;
}

/* Poignée de redimensionnement interactif sur le bord gauche */
.copilot-resize-handle {
    position: absolute;
    top: 0;
    left: 0;
    width: 8px;
    height: 100%;
    cursor: ew-resize;
    z-index: 10002;
    background: transparent;
    transition: background 0.2s ease, box-shadow 0.2s ease;
}

.copilot-resize-handle::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 2px;
    transform: translateY(-50%);
    width: 3px;
    height: 48px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.35);
    transition: all 0.2s ease;
}

.copilot-resize-handle:hover,
.copilot-side-panel.resizing .copilot-resize-handle {
    background: rgba(212, 175, 55, 0.15);
}

.copilot-resize-handle:hover::after,
.copilot-side-panel.resizing .copilot-resize-handle::after {
    background: #d4af37;
    box-shadow: 0 0 10px rgba(212, 175, 55, 0.8);
    height: 72px;
}

.copilot-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(3, 5, 8, 0.6);
    backdrop-filter: blur(4px);
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

.copilot-overlay.open {
    opacity: 1;
    pointer-events: auto;
}

.status-copilot-toggle {
    background: linear-gradient(135deg, #162030, #0b111b) !important;
    color: #f8fafc !important;
    border: 1px solid rgba(212, 175, 55, 0.5) !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.45rem !important;
    padding: 6px 12px !important;
    border-radius: 999px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4) !important;
}

.status-copilot-toggle:hover {
    transform: scale(1.03) !important;
    border-color: #f5d77f !important;
    box-shadow: 0 0 14px rgba(212, 175, 55, 0.4) !important;
}

/* ==========================================================================
   COPILOT LUXURY MARKDOWN RENDERING (TABLES, BLOCKQUOTES, CODE, CARDS)
   ========================================================================== */
.copilot-side-panel .copilot-table-wrapper {
    width: 100% !important;
    overflow-x: auto !important;
    margin: 0.75rem 0 !important;
    border-radius: 8px !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
    background: rgba(14, 20, 32, 0.95) !important;
}

.copilot-side-panel table,
.copilot-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 0.76rem !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

.copilot-side-panel table thead,
.copilot-table thead {
    background: linear-gradient(135deg, #162030, #0b111b) !important;
    color: #f5d77f !important;
}

.copilot-side-panel table th,
.copilot-table th {
    padding: 8px 10px !important;
    color: #f5d77f !important;
    font-weight: 700 !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    border-bottom: 1.5px solid rgba(212, 175, 55, 0.4) !important;
    white-space: nowrap !important;
}

.copilot-side-panel table td,
.copilot-table td {
    padding: 7px 10px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
    color: #cbd5e1 !important;
    vertical-align: middle !important;
}

.copilot-side-panel table td strong,
.copilot-table td strong,
.copilot-table-wrapper strong,
.copilot-table-wrapper .copilot-md-bold,
.copilot-table .copilot-md-bold {
    color: #ffffff !important;
    font-weight: 700 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5) !important;
}

.copilot-side-panel table td em,
.copilot-table td em {
    color: #93c5fd !important;
}

.copilot-side-panel table tbody tr:nth-child(even),
.copilot-table tbody tr:nth-child(even) {
    background: rgba(255, 255, 255, 0.02) !important;
}

.copilot-side-panel table tbody tr:hover,
.copilot-table tbody tr:hover {
    background: rgba(212, 175, 55, 0.08) !important;
}

.copilot-side-panel table tr:last-child td,
.copilot-table tr:last-child td {
    border-bottom: none !important;
}

/* Citations & Thèses (Blockquotes) */
.copilot-side-panel blockquote,
.copilot-quote {
    margin: 0.6rem 0 !important;
    padding: 8px 12px !important;
    background: rgba(212, 175, 55, 0.08) !important;
    border-left: 3px solid #d4af37 !important;
    border-radius: 0 6px 6px 0 !important;
    font-size: 0.8rem !important;
    color: #cbd5e1 !important;
    font-style: normal !important;
    line-height: 1.45 !important;
}

/* Ligne Séparatrice */
.copilot-side-panel hr,
.copilot-hr {
    border: none !important;
    border-top: 1px dashed rgba(212, 175, 55, 0.35) !important;
    margin: 0.75rem 0 !important;
}

/* Ticket d'Exécution Réelle Copilot */
.copilot-trade-ticket {
    background: rgba(10, 16, 26, 0.95) !important;
    border: 1.5px solid #10b981 !important;
    border-radius: 10px !important;
    padding: 0.85rem 1rem !important;
    margin-top: 0.65rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
    color: #f8fafc !important;
}

.copilot-ticket-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 0.5rem !important;
    padding-bottom: 0.4rem !important;
    border-bottom: 1px solid rgba(16, 185, 129, 0.2) !important;
}

.copilot-ticket-badge {
    background: rgba(16, 185, 129, 0.15) !important;
    color: #34d399 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.3rem !important;
}

.copilot-ticket-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.45rem !important;
    margin-top: 0.4rem !important;
    font-size: 0.76rem !important;
}

.copilot-ticket-item {
    background: rgba(14, 20, 32, 0.85) !important;
    padding: 5px 8px !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.copilot-ticket-item .lbl {
    font-size: 0.64rem !important;
    color: #94a3b8 !important;
    text-transform: uppercase !important;
    display: block !important;
}

.copilot-ticket-item .val {
    font-weight: 800 !important;
    font-family: var(--font-mono) !important;
    color: #f8fafc !important;
}

/* Carte Human-in-the-Loop Interactive & Copilot Action Box */
.copilot-hitl-card {
    background: rgba(10, 16, 26, 0.96) !important;
    border: 1.5px solid #d4af37 !important;
    border-radius: 10px !important;
    padding: 0.85rem !important;
    margin-top: 0.65rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6), 0 0 15px rgba(212, 175, 55, 0.15) !important;
    transition: all 0.2s ease !important;
    color: #f8fafc !important;
}

.copilot-hitl-card:hover {
    box-shadow: 0 6px 24px rgba(212, 175, 55, 0.25) !important;
}

.copilot-hitl-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2) !important;
    padding-bottom: 0.4rem !important;
    margin-bottom: 0.5rem !important;
}

.copilot-hitl-badge {
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    color: #f5d77f !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.35rem !important;
}

.copilot-hitl-badge.success {
    color: #34d399 !important;
}

.copilot-hitl-id {
    font-size: 0.68rem !important;
    font-family: var(--font-mono) !important;
    color: #94a3b8 !important;
}

.copilot-hitl-title {
    font-size: 0.88rem !important;
    font-weight: 800 !important;
    color: #f8fafc !important;
    margin-bottom: 0.3rem !important;
}

.copilot-hitl-desc {
    font-size: 0.78rem !important;
    color: #cbd5e1 !important;
    line-height: 1.4 !important;
    margin-bottom: 0.6rem !important;
}

.copilot-action-details-box {
    background: rgba(16, 24, 39, 0.85) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 8px !important;
    padding: 8px 10px !important;
    margin-bottom: 0.6rem !important;
    font-size: 0.76rem !important;
    color: #f8fafc !important;
}

.copilot-details-header {
    font-weight: 800 !important;
    color: #f5d77f !important;
    margin-bottom: 0.4rem !important;
    display: flex !important;
    justify-content: space-between !important;
}

.copilot-details-visa {
    font-family: var(--font-mono) !important;
    font-size: 0.68rem !important;
    color: #94a3b8 !important;
}

.copilot-details-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.45rem !important;
}

.copilot-detail-subitem {
    background: rgba(10, 15, 25, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 6px !important;
    padding: 6px 8px !important;
    color: #f8fafc !important;
}

.subitem-lbl {
    font-size: 0.68rem !important;
    color: #94a3b8 !important;
}

.subitem-val {
    font-weight: 800 !important;
    font-size: 0.8rem !important;
}

.subitem-sub {
    font-size: 0.65rem !important;
}

.subitem-sym-title {
    color: #f8fafc !important;
}

.copilot-pill-box {
    padding: 4px 8px !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
}

.copilot-pill-box.sl {
    background: rgba(244, 63, 94, 0.18) !important;
    color: #fda4af !important;
    border: 1px solid rgba(244, 63, 94, 0.4) !important;
}

.copilot-pill-box.tp {
    background: rgba(16, 185, 129, 0.18) !important;
    color: #6ee7b7 !important;
    border: 1px solid rgba(16, 185, 129, 0.4) !important;
}

.copilot-hitl-actions {
    display: flex !important;
    gap: 0.5rem !important;
    margin-top: 0.65rem !important;
}

.btn-copilot-confirm {
    flex: 2 !important;
    background: linear-gradient(135deg, #059669, #10b981) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 0.55rem 0.85rem !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.35) !important;
    transition: transform 0.15s ease !important;
}

.btn-copilot-confirm:hover {
    transform: translateY(-1px) !important;
    filter: brightness(1.1) !important;
}

.btn-copilot-cancel {
    flex: 1 !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #cbd5e1 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 6px !important;
    padding: 0.55rem 0.6rem !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: background 0.15s ease !important;
}

.btn-copilot-cancel:hover {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
}

.copilot-assistant-bubble {
    align-self: flex-start !important;
    background: rgba(14, 20, 32, 0.95) !important;
    border: 1px solid rgba(212, 175, 55, 0.28) !important;
    color: #f8fafc !important;
    padding: 0.95rem 1.15rem !important;
    border-radius: 14px 14px 14px 2px !important;
    max-width: 95% !important;
    font-size: 0.83rem !important;
    line-height: 1.55 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

.copilot-msg-header {
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    color: #d4af37 !important;
    margin-bottom: 0.4rem !important;
    display: flex !important;
    justify-content: space-between !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2) !important;
    padding-bottom: 0.3rem !important;
}

.copilot-msg-brand {
    letter-spacing: 0.04em !important;
}

.copilot-msg-time {
    color: #94a3b8 !important;
    font-weight: 500 !important;
}

.copilot-action-result-msg {
    color: #cbd5e1 !important;
}

/* Modale de confirmation personnalisée Dark Theme */
body:not(.theme-clean-light) .custom-confirm-card,
body.theme-rolls-royce .custom-confirm-card,
body.theme-clean-dark .custom-confirm-card {
    background: rgba(14, 20, 32, 0.98) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.35) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.85), 0 0 30px rgba(212, 175, 55, 0.15) !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) #confirmModalTitle,
body.theme-rolls-royce #confirmModalTitle,
body.theme-clean-dark #confirmModalTitle {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) #confirmModalSubtitle,
body.theme-rolls-royce #confirmModalSubtitle,
body.theme-clean-dark #confirmModalSubtitle {
    color: #94a3b8 !important;
}

body:not(.theme-clean-light) #confirmModalBody,
body.theme-rolls-royce #confirmModalBody,
body.theme-clean-dark #confirmModalBody {
    background: rgba(8, 12, 20, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .confirm-sym-badge,
body.theme-rolls-royce .confirm-sym-badge,
body.theme-clean-dark .confirm-sym-badge {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .confirm-modal-inner-box,
body.theme-rolls-royce .confirm-modal-inner-box,
body.theme-clean-dark .confirm-modal-inner-box {
    background: rgba(16, 24, 39, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #cbd5e1 !important;
}

body:not(.theme-clean-light) #confirmModalCancelBtn,
body.theme-rolls-royce #confirmModalCancelBtn,
body.theme-clean-dark #confirmModalCancelBtn {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #cbd5e1 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

body:not(.theme-clean-light) #confirmModalCancelBtn:hover,
body.theme-rolls-royce #confirmModalCancelBtn:hover,
body.theme-clean-dark #confirmModalCancelBtn:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    border-color: rgba(212, 175, 55, 0.4) !important;
}

.prop-sym-title {
    color: #f8fafc !important;
    font-weight: 900 !important;
}

/* ==========================================================================
   INTELLIWEALTH • LUXURY BESPOKE ASSET CARDS (PORTFOLIO COCKPIT)
   Dark Obsidian Glassmorphism, Champagne Gold Bevels & Monospace Live Metrics
   ========================================================================== */

body:not(.theme-clean-light) .asset-card,
body.theme-rolls-royce .asset-card,
body.theme-clean-dark .asset-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.95) 0%, rgba(7, 11, 19, 0.98) 100%) !important;
    backdrop-filter: blur(24px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 16px !important;
    padding: 1.15rem 1.25rem 1rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 0.75rem !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body:not(.theme-clean-light) .asset-card::before,
body.theme-rolls-royce .asset-card::before,
body.theme-clean-dark .asset-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 10%;
    right: 10%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.6), transparent);
    pointer-events: none;
}

body:not(.theme-clean-light) .asset-card:hover,
body.theme-rolls-royce .asset-card:hover,
body.theme-clean-dark .asset-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(212, 175, 55, 0.55) !important;
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.7), 0 0 24px rgba(212, 175, 55, 0.16) !important;
}

.asset-card.is-held {
    border-left: 3.5px solid #10b981 !important;
}

.asset-card.is-watching {
    border-left: 3.5px solid #0ea5e9 !important;
}

/* Cyber-Crypto 24/7 Specialized Theme */
body:not(.theme-clean-light) .asset-card.crypto-asset-card,
body.theme-rolls-royce .asset-card.crypto-asset-card,
body.theme-clean-dark .asset-card.crypto-asset-card {
    background: linear-gradient(145deg, rgba(20, 24, 44, 0.95) 0%, rgba(9, 13, 25, 0.98) 100%) !important;
    border: 1px solid rgba(168, 85, 247, 0.32) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5), 0 0 20px rgba(168, 85, 247, 0.12) !important;
}

body:not(.theme-clean-light) .asset-card.crypto-asset-card:hover,
body.theme-rolls-royce .asset-card.crypto-asset-card:hover,
body.theme-clean-dark .asset-card.crypto-asset-card:hover {
    border-color: rgba(56, 189, 248, 0.6) !important;
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.7), 0 0 28px rgba(56, 189, 248, 0.22) !important;
}

.asset-card.crypto-asset-card.is-held {
    border-left: 4px solid #10b981 !important;
}

.asset-card.crypto-asset-card.is-watching {
    border-left: 4px solid #38bdf8 !important;
}

/* Inset Metric Box for Held Positions (Dark Theme) */
body:not(.theme-clean-light) .held-position-luxury-box {
    margin: 0.5rem 0 !important;
    padding: 0.6rem 0.8rem !important;
    background: rgba(3, 6, 11, 0.75) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.35rem 0.6rem !important;
    font-size: 0.75rem !important;
}

.held-metric-col {
    display: flex;
    flex-direction: column;
}

.held-metric-label {
    font-size: 0.65rem !important;
    color: #94a3b8 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-weight: 600 !important;
}

.held-metric-val {
    font-family: var(--font-mono) !important;
    color: #f8fafc !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
}

.held-metric-pnl-row {
    grid-column: 1 / -1 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
    padding-top: 0.35rem !important;
    margin-top: 0.2rem !important;
}

.pnl-label {
    font-size: 0.68rem !important;
    color: #94a3b8 !important;
    font-weight: 600 !important;
}

.pnl-value {
    font-family: var(--font-mono) !important;
    font-weight: 800 !important;
    font-size: 0.82rem !important;
}

.pnl-value.pos {
    color: #34d399 !important;
}

.pnl-value.neg {
    color: #f87171 !important;
}

/* Inset Box for Watching */
.watching-luxury-box {
    margin: 0.5rem 0 !important;
    padding: 0.55rem 0.8rem !important;
    background: rgba(14, 165, 233, 0.06) !important;
    border: 1px dashed rgba(14, 165, 233, 0.25) !important;
    border-radius: 10px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

/* Price & Verdict Row */
.asset-price-row-luxury {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0.2rem 0 !important;
}

body:not(.theme-clean-light) .asset-price-luxury {
    font-size: 1.35rem !important;
    font-weight: 900 !important;
    font-family: var(--font-mono) !important;
    color: #ffffff !important;
    letter-spacing: -0.5px !important;
}

.tile-live-pnl {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
}

.verdict-pill-luxury {
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    padding: 3px 10px !important;
    border-radius: 999px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.verdict-pill-luxury.verdict-buy {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.22), rgba(5, 150, 105, 0.35)) !important;
    color: #6ee7b7 !important;
    border: 1px solid rgba(52, 211, 153, 0.5) !important;
    box-shadow: 0 0 12px rgba(16, 185, 129, 0.25) !important;
}

.verdict-pill-luxury.verdict-hold {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.2), rgba(180, 130, 20, 0.3)) !important;
    color: #fde047 !important;
    border: 1px solid rgba(234, 179, 8, 0.5) !important;
    box-shadow: 0 0 12px rgba(212, 175, 55, 0.2) !important;
}

.verdict-pill-luxury.verdict-sell {
    background: linear-gradient(135deg, rgba(244, 63, 94, 0.22), rgba(225, 29, 72, 0.3)) !important;
    color: #fca5a5 !important;
    border: 1px solid rgba(248, 113, 113, 0.5) !important;
    box-shadow: 0 0 12px rgba(244, 63, 94, 0.25) !important;
}

/* AI Summary Text */
.asset-thesis-luxury {
    font-size: 0.74rem !important;
    color: #94a3b8 !important;
    line-height: 1.42 !important;
    border-left: 2px solid rgba(212, 175, 55, 0.6) !important;
    padding-left: 8px !important;
    margin: 0.4rem 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Footer Action Buttons */
.asset-card-footer-luxury {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-top: 0.65rem !important;
    margin-top: 0.2rem !important;
    gap: 0.4rem !important;
}

.footer-chip-btn {
    border-radius: 6px !important;
    padding: 4px 9px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    border: 1px solid transparent !important;
    transition: all 0.18s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.footer-chip-btn.chart {
    background: rgba(14, 165, 233, 0.12) !important;
    color: #38bdf8 !important;
    border-color: rgba(14, 165, 233, 0.3) !important;
}
.footer-chip-btn.chart:hover {
    background: rgba(14, 165, 233, 0.25) !important;
}

.footer-chip-btn.refresh {
    background: rgba(16, 185, 129, 0.12) !important;
    color: #34d399 !important;
    border-color: rgba(16, 185, 129, 0.3) !important;
}
.footer-chip-btn.refresh:hover {
    background: rgba(16, 185, 129, 0.25) !important;
}

.footer-chip-btn.mentor {
    background: rgba(212, 175, 55, 0.14) !important;
    color: #ffe898 !important;
    border-color: rgba(212, 175, 55, 0.35) !important;
}
.footer-chip-btn.mentor:hover {
    background: rgba(212, 175, 55, 0.28) !important;
}

.flocon-dcf-link {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    font-size: 0.72rem !important;
    color: #d4af37 !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: color 0.18s ease !important;
}
.flocon-dcf-link:hover {
    color: #ffe898 !important;
}

/* Micro Action Buttons in Card Top */
.btn-micro-trade {
    border-radius: 6px !important;
    padding: 3px 8px !important;
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.18s ease !important;
    border: 1px solid transparent !important;
}
.btn-micro-trade.sell {
    background: rgba(244, 63, 94, 0.18) !important;
    color: #f43f5e !important;
    border-color: rgba(244, 63, 94, 0.45) !important;
}
.btn-micro-trade.sell:hover {
    background: rgba(244, 63, 94, 0.3) !important;
}

.btn-micro-trade.buy {
    background: rgba(16, 185, 129, 0.18) !important;
    color: #10b981 !important;
    border-color: rgba(16, 185, 129, 0.45) !important;
}
.btn-micro-trade.buy:hover {
    background: rgba(16, 185, 129, 0.3) !important;
}

.btn-micro-action {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 3px 7px !important;
    font-size: 0.7rem !important;
    cursor: pointer !important;
}
.btn-micro-action:hover {
    background: rgba(212, 175, 55, 0.15) !important;
    border-color: rgba(212, 175, 55, 0.4) !important;
    color: #ffe898 !important;
}

.badge-weight {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    font-family: var(--font-mono) !important;
    background: rgba(212, 175, 55, 0.15) !important;
    color: #ffe898 !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
}

.btn-micro-remove {
    background: transparent !important;
    border: none !important;
    color: #64748b !important;
    font-size: 0.8rem !important;
    cursor: pointer !important;
    padding: 2px 4px !important;
    transition: color 0.18s ease !important;
}
.btn-micro-remove:hover {
    color: #f87171 !important;
}

/* 5-Tier Luxury Card Layout Classes */
.asset-card-header {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.35rem !important;
    width: 100% !important;
}

.asset-card-top-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    gap: 0.5rem !important;
}

.asset-card-sym-group {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    min-width: 0 !important;
}

.asset-ticker-title {
    font-size: 1.3rem !important;
    font-weight: 800 !important;
    font-family: var(--font-mono) !important;
    color: #ffffff !important;
    letter-spacing: 0.5px !important;
    text-shadow: 0 0 16px rgba(255, 255, 255, 0.15) !important;
}

.badge-held {
    font-size: 0.68rem !important;
    background: rgba(16, 185, 129, 0.18) !important;
    color: #34d399 !important;
    border: 1px solid rgba(16, 185, 129, 0.45) !important;
    border-radius: 6px !important;
    padding: 2px 8px !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
}

.badge-watch {
    font-size: 0.68rem !important;
    background: rgba(56, 189, 248, 0.14) !important;
    color: #38bdf8 !important;
    border: 1px solid rgba(56, 189, 248, 0.4) !important;
    border-radius: 6px !important;
    padding: 2px 8px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
}

.badge-proxy {
    font-size: 0.62rem !important;
    background: rgba(212, 175, 55, 0.18) !important;
    color: #ffe898 !important;
    border: 1px solid rgba(212, 175, 55, 0.4) !important;
    border-radius: 4px !important;
    padding: 1px 5px !important;
    font-weight: 700 !important;
}

.asset-card-top-actions {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
}

.asset-card-subtitle-row {
    width: 100% !important;
    font-size: 0.78rem !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    display: block !important;
}

/* Fast Execution Trade Bar in Card */
.asset-card-trade-bar {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 6px !important;
    margin-top: 0.35rem !important;
    padding-top: 0.45rem !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.btn-luxury-trade {
    border-radius: 8px !important;
    padding: 6px 12px !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
}

.btn-luxury-trade.sell {
    background: linear-gradient(135deg, rgba(244, 63, 94, 0.22), rgba(225, 29, 72, 0.35)) !important;
    color: #fda4af !important;
    border: 1px solid rgba(244, 63, 94, 0.5) !important;
}
.btn-luxury-trade.sell:hover {
    background: #e11d48 !important;
    color: #ffffff !important;
    box-shadow: 0 0 16px rgba(244, 63, 94, 0.4) !important;
    transform: translateY(-1px) !important;
}

.btn-luxury-trade.buy {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.22), rgba(5, 150, 105, 0.35)) !important;
    color: #6ee7b7 !important;
    border: 1px solid rgba(16, 185, 129, 0.5) !important;
}
.btn-luxury-trade.buy:hover {
    background: #059669 !important;
    color: #ffffff !important;
    box-shadow: 0 0 16px rgba(16, 185, 129, 0.4) !important;
    transform: translateY(-1px) !important;
}

.btn-luxury-trade.adjust {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #cbd5e1 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    padding: 6px 10px !important;
}
.btn-luxury-trade.adjust:hover {
    background: rgba(212, 175, 55, 0.15) !important;
    border-color: rgba(212, 175, 55, 0.45) !important;
    color: #ffe898 !important;
}

/* ==========================================================================
   PORTFOLIO VIEW • BESPOKE ALLOCATION CARD & FILTER PILLS
   ========================================================================== */

.allocation-bar-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.94) 0%, rgba(8, 11, 18, 0.98) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    border-radius: 16px !important;
    padding: 1.25rem 1.4rem !important;
    box-shadow: 0 10px 32px rgba(0, 0, 0, 0.45) !important;
    color: #f8fafc !important;
    position: relative !important;
}

.allocation-bar-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 15%;
    right: 15%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.5), transparent);
}

.allocation-bar-card h3 {
    color: #ffffff !important;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
}

/* Luxury Filter Pills */
#viewPortfolio .status-pill,
.status-pill {
    background: rgba(15, 23, 42, 0.75) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #94a3b8 !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: pointer !important;
}

#viewPortfolio .status-pill:hover,
.status-pill:hover {
    border-color: rgba(212, 175, 55, 0.4) !important;
    color: #ffe898 !important;
    background: rgba(212, 175, 55, 0.08) !important;
    transform: translateY(-1px) !important;
}

#viewPortfolio .status-pill.active,
.status-pill.active {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.22), rgba(180, 130, 20, 0.32)) !important;
    border-color: #d4af37 !important;
    color: #ffffff !important;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.22) !important;
    font-weight: 800 !important;
}

#viewPortfolio .assets-section h2,
.assets-section h2,
.section-sub-header h2 {
    font-family: var(--font-sans) !important;
    font-size: 1.45rem !important;
    font-weight: 800 !important;
    color: #f8fafc !important;
    letter-spacing: -0.3px !important;
}

/* ==========================================================================
   STRUCTURAL LAYOUT ENFORCEMENT (SIDEBAR LEFT + MAIN RIGHT)
   ========================================================================== */
.app-shell {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
    width: 100% !important;
}

.app-layout {
    display: flex !important;
    flex-direction: row !important;
    min-height: 100vh !important;
    width: 100% !important;
    background: var(--bg-app) !important;
    position: relative !important;
}

.app-sidebar {
    width: var(--sidebar-width, 240px);
    min-width: 180px;
    max-width: 480px;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    position: sticky !important;
    top: 0 !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow: hidden !important; /* Empêche tout défilement global de la sidebar */
    overscroll-behavior: none !important;
    z-index: 100 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
}

.sidebar-scroll-container {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: 0.4rem 0.75rem 0.6rem !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(212, 175, 55, 0.25) transparent !important;
}

.sidebar-scroll-container::-webkit-scrollbar {
    width: 4px !important;
}

.sidebar-scroll-container::-webkit-scrollbar-track {
    background: transparent !important;
}

.sidebar-scroll-container::-webkit-scrollbar-thumb {
    background: rgba(212, 175, 55, 0.25) !important;
    border-radius: 4px !important;
}

.sidebar-brand-box {
    flex-shrink: 0 !important;
    padding: 0.85rem 1rem 0.75rem !important;
    margin-bottom: 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.18) !important;
}

.sidebar-footer {
    flex-shrink: 0 !important;
    margin-top: auto !important;
    padding: 0.65rem 0.75rem 0.75rem !important;
    background: rgba(8, 11, 16, 0.98) !important;
    border-top: 1px solid rgba(212, 175, 55, 0.2) !important;
    box-sizing: border-box !important;
}

.sidebar-status-box {
    background: rgba(16, 185, 129, 0.08) !important;
    border: 1px solid rgba(16, 185, 129, 0.25) !important;
    border-radius: 8px !important;
    padding: 6px 10px !important;
    margin-bottom: 6px !important;
}

/* Sidebar Dark Luxury */
body.theme-rolls-royce .app-sidebar,
body.theme-clean-dark .app-sidebar {
    background: rgba(8, 11, 16, 0.95) !important;
    border-right: 1px solid rgba(212, 175, 55, 0.28) !important;
}

/* Sidebar Light Clean */
body.theme-clean-light .app-sidebar {
    background: #ffffff !important;
    border-right: 1px solid #e2e8f0 !important;
}

body.theme-clean-light .sidebar-scroll-container {
    scrollbar-color: rgba(148, 163, 184, 0.4) transparent !important;
}

body.theme-clean-light .sidebar-scroll-container::-webkit-scrollbar-thumb {
    background: rgba(148, 163, 184, 0.4) !important;
}

body.theme-clean-light .sidebar-footer {
    background: #ffffff !important;
    border-top: 1px solid #e2e8f0 !important;
}

.sidebar-nav-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.2rem !important;
    flex: 1 !important;
}

.app-main-container {
    flex: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    background: var(--bg-app) !important;
    overflow-x: hidden !important;
}

/* ==========================================================================
   REPORT MODAL (SIMPLY WALL ST RADAR & DCF) DARK LUXURY & CLEAN LIGHT
   ========================================================================== */
body.theme-rolls-royce #reportModal .modal-card,
body.theme-clean-dark #reportModal .modal-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.98) 0%, rgba(7, 11, 19, 0.99) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 16px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85) !important;
    color: #f8fafc !important;
}

body.theme-rolls-royce #reportModal h2,
body.theme-rolls-royce #reportModal h3,
body.theme-rolls-royce #reportModal h4,
body.theme-rolls-royce #reportModal .report-title,
body.theme-clean-dark #reportModal h2,
body.theme-clean-dark #reportModal h3,
body.theme-clean-dark #reportModal h4,
body.theme-clean-dark #reportModal .report-title {
    color: #f8fafc !important;
}

body.theme-rolls-royce #reportModal .report-card,
body.theme-rolls-royce #reportModal .dcf-widget,
body.theme-rolls-royce #reportModal .radar-box,
body.theme-rolls-royce #reportModal .report-section-card,
body.theme-clean-dark #reportModal .report-card,
body.theme-clean-dark #reportModal .dcf-widget,
body.theme-clean-dark #reportModal .radar-box,
body.theme-clean-dark #reportModal .report-section-card {
    background: rgba(10, 16, 26, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    color: #f8fafc !important;
}

body.theme-rolls-royce #reportModal .report-subtitle,
body.theme-rolls-royce #reportModal .metric-sub,
body.theme-rolls-royce #reportModal .news-meta,
body.theme-clean-dark #reportModal .report-subtitle,
body.theme-clean-dark #reportModal .metric-sub,
body.theme-clean-dark #reportModal .news-meta {
    color: #94a3b8 !important;
}

body.theme-rolls-royce #reportModal .news-card,
body.theme-rolls-royce #reportModal .news-item,
body.theme-clean-dark #reportModal .news-card,
body.theme-clean-dark #reportModal .news-item {
    background: rgba(14, 20, 32, 0.7) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 8px !important;
    color: #f8fafc !important;
}

body.theme-rolls-royce #reportModal .news-title,
body.theme-clean-dark #reportModal .news-title {
    color: #f8fafc !important;
}

/* Mode Clair Modal */
body.theme-clean-light #reportModal .modal-card {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 16px !important;
    box-shadow: 0 25px 65px rgba(0, 0, 0, 0.15) !important;
    color: #0f172a !important;
}

body.theme-clean-light #reportModal h2,
body.theme-clean-light #reportModal h3,
body.theme-clean-light #reportModal h4,
body.theme-clean-light #reportModal .report-title {
    color: #0f172a !important;
}

body.theme-clean-light #reportModal .report-card,
body.theme-clean-light #reportModal .dcf-widget,
body.theme-clean-light #reportModal .radar-box,
body.theme-clean-light #reportModal .report-section-card {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    color: #0f172a !important;
}

body.theme-clean-light #reportModal .report-subtitle,
body.theme-clean-light #reportModal .metric-sub,
body.theme-clean-light #reportModal .news-meta {
    color: #64748b !important;
}

body.theme-clean-light #reportModal .news-card,
body.theme-clean-light #reportModal .news-item {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    color: #0f172a !important;
}

body.theme-clean-light #reportModal .news-title {
    color: #0f172a !important;
}

/* ==========================================================================
   GLOBAL PORTFOLIO ALLOCATION STRIP & ALLOCATION LEGEND (DARK / LUXURY)
   ========================================================================== */
.global-allocation-bar-container {
    width: 100%;
}

.global-alloc-strip-wrapper {
    width: 100%;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    display: flex;
    overflow: hidden;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.global-alloc-seg {
    height: 100%;
    transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}

.global-alloc-seg-stocks {
    background: linear-gradient(90deg, #38bdf8, #0ea5e9);
}

.global-alloc-seg-crypto {
    background: linear-gradient(90deg, #f59e0b, #d97706);
}

.global-alloc-seg-cash {
    background: linear-gradient(90deg, #10b981, #059669);
}

.global-alloc-legend {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    font-size: 0.74rem;
    color: #94a3b8;
    flex-wrap: wrap;
}

.legend-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 5px;
}

.legend-dot-stocks {
    background: #38bdf8;
    box-shadow: 0 0 8px rgba(56, 189, 248, 0.6);
}

.legend-dot-crypto {
    background: #f59e0b;
    box-shadow: 0 0 8px rgba(245, 158, 11, 0.6);
}

.legend-dot-cash {
    background: #10b981;
    box-shadow: 0 0 8px rgba(16, 185, 129, 0.6);
}

/* ==========================================================================
   CARNET D'ORDRES REFINED CARDS (DARK / LUXURY)
   ========================================================================== */
body:not(.theme-clean-light) .order-simple-item {
    background: rgba(14, 20, 32, 0.75) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 10px !important;
    padding: 0.75rem 1rem !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.2s ease !important;
}

body:not(.theme-clean-light) .order-simple-item:hover {
    background: rgba(20, 29, 46, 0.9) !important;
    border-color: rgba(212, 175, 55, 0.25) !important;
    transform: translateY(-1px) !important;
}

.order-simple-item.order-item-buy {
    border-left: 3px solid #10b981 !important;
}

.order-simple-item.order-item-sell {
    border-left: 3px solid #f43f5e !important;
}

.order-side-badge {
    font-size: 0.7rem;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 4px;
    letter-spacing: 0.04em;
}

.order-side-badge.badge-buy {
    background: rgba(16, 185, 129, 0.14);
    color: #10b981;
    border: 1px solid rgba(16, 185, 129, 0.35);
}

.order-side-badge.badge-sell {
    background: rgba(244, 63, 94, 0.14);
    color: #f43f5e;
    border: 1px solid rgba(244, 63, 94, 0.35);
}

/* ==========================================================================
   COPILOT DRAWER & CHAT BUBBLES (DARK OBSIDIAN THEME)
   ========================================================================== */
body:not(.theme-clean-light) .copilot-messages-container,
body.theme-rolls-royce .copilot-messages-container,
body.theme-clean-dark .copilot-messages-container {
    background: #080d16 !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .copilot-welcome-card,
body.theme-rolls-royce .copilot-welcome-card,
body.theme-clean-dark .copilot-welcome-card {
    background: rgba(14, 20, 32, 0.8) !important;
    border: 1px solid rgba(212, 175, 55, 0.2) !important;
    color: #cbd5e1 !important;
}

body:not(.theme-clean-light) .copilot-welcome-card h4 {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .btn-copilot-pill {
    background: rgba(18, 26, 42, 0.95) !important;
    border: 1px solid rgba(197, 160, 89, 0.3) !important;
    color: #e2e8f0 !important;
    border-radius: 999px !important;
    padding: 7px 14px !important;
    font-size: 0.77rem !important;
    font-weight: 600 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25) !important;
}

body:not(.theme-clean-light) .btn-copilot-pill:hover {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.25), rgba(197, 160, 89, 0.12)) !important;
    border-color: #d4af37 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(212, 175, 55, 0.3) !important;
}

body:not(.theme-clean-light) .copilot-input-container {
    background: #06090f !important;
    border-top: 1.5px solid rgba(212, 175, 55, 0.3) !important;
    padding: 0.75rem 1rem 0.95rem !important;
}

body:not(.theme-clean-light) .copilot-input-box {
    background: rgba(14, 20, 32, 0.95) !important;
    border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
    border-radius: 14px !important;
    padding: 0.65rem 0.85rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.2s ease !important;
}

body:not(.theme-clean-light) .copilot-input-box:focus-within {
    border-color: #d4af37 !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.25), 0 8px 24px rgba(0, 0, 0, 0.6) !important;
    background: rgba(18, 26, 42, 0.98) !important;
}

body:not(.theme-clean-light) .copilot-textarea {
    color: #f8fafc !important;
    font-size: 0.88rem !important;
}

body:not(.theme-clean-light) .copilot-textarea::placeholder {
    color: #64748b !important;
}

body:not(.theme-clean-light) .copilot-tag-live {
    background: rgba(16, 185, 129, 0.12) !important;
    color: #34d399 !important;
    border: 1px solid rgba(16, 185, 129, 0.3) !important;
    border-radius: 6px !important;
    padding: 2px 7px !important;
}

body:not(.theme-clean-light) .copilot-tag-cro {
    background: rgba(212, 175, 55, 0.12) !important;
    color: #fef08a !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    border-radius: 6px !important;
    padding: 2px 7px !important;
}

body:not(.theme-clean-light) .btn-copilot-send {
    background: linear-gradient(135deg, #d4af37 0%, #aa820a 100%) !important;
    color: #080d16 !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    padding: 6px 14px !important;
    box-shadow: 0 2px 10px rgba(212, 175, 55, 0.35) !important;
}

body:not(.theme-clean-light) .copilot-typing-indicator {
    background: rgba(14, 20, 32, 0.85) !important;
    border: 1px solid rgba(197, 160, 89, 0.3) !important;
    color: #dfba73 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

body:not(.theme-clean-light) .copilot-quote {
    background: rgba(14, 23, 42, 0.85) !important;
    border-left: 3px solid #d4af37 !important;
    color: #cbd5e1 !important;
    padding: 0.6rem 0.85rem !important;
    border-radius: 0 6px 6px 0 !important;
    margin: 0.5rem 0 !important;
}

body:not(.theme-clean-light) .copilot-md-h4 {
    color: #f8fafc !important;
    font-size: 0.92rem !important;
    margin: 0.5rem 0 0.3rem 0 !important;
}

body:not(.theme-clean-light) .copilot-md-bold {
    color: #f8fafc !important;
    font-weight: 700 !important;
}

body:not(.theme-clean-light) .copilot-md-code {
    background: rgba(0, 0, 0, 0.4) !important;
    color: #38bdf8 !important;
    padding: 1px 5px !important;
    border-radius: 4px !important;
    font-family: var(--font-mono) !important;
}

/* Metric Values in Capital Summary Box (Dark Theme) */
body:not(.theme-clean-light) .metric-total {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .metric-stocks {
    color: #38bdf8 !important;
}

body:not(.theme-clean-light) .metric-crypto {
    color: #c084fc !important;
}

body:not(.theme-clean-light) .metric-cash {
    color: #34d399 !important;
}

body:not(.theme-clean-light) #heroStockPctPill,
body:not(.theme-clean-light) #cryptoHeroStockPctPill {
    color: #7dd3fc !important;
}

body:not(.theme-clean-light) #heroCryptoPctPill,
body:not(.theme-clean-light) #cryptoHeroCryptoPctPill {
    color: #d8b4fe !important;
}

body:not(.theme-clean-light) #heroCashPctPill,
body:not(.theme-clean-light) #cryptoHeroCashPctPill {
    color: #6ee7b7 !important;
}

/* ==========================================================================
   BOUCLIER DE HEDGING INVERSE COCKPIT (DARK ROLLS-ROYCE)
   ========================================================================== */
body:not(.theme-clean-light) .hedging-cockpit-card {
    background: linear-gradient(145deg, rgba(14, 20, 32, 0.94) 0%, rgba(8, 12, 20, 0.98) 100%) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

body:not(.theme-clean-light) .hedging-status-pill {
    background: rgba(16, 185, 129, 0.18) !important;
    color: #34d399 !important;
    border: 1px solid rgba(16, 185, 129, 0.4) !important;
}

body:not(.theme-clean-light) .hedging-toggle-lbl {
    color: #cbd5e1 !important;
}

body:not(.theme-clean-light) .hedging-explanation-box {
    background: rgba(0, 0, 0, 0.35) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body:not(.theme-clean-light) .hedging-exp-title {
    color: #38bdf8 !important;
}

body:not(.theme-clean-light) .hedging-exp-text {
    color: #f1f5f9 !important;
}

body:not(.theme-clean-light) .h-stat-box {
    background: rgba(0, 0, 0, 0.3) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body:not(.theme-clean-light) .h-stat-label {
    color: #94a3b8 !important;
}

body:not(.theme-clean-light) .h-stat-val {
    color: #f8fafc !important;
}

/* SENTINEL CARDS & VIEW ANALYSIS BUTTON IN LUXURY DARK MODE */
body:not(.theme-clean-light) .sentinel-card,
body.theme-rolls-royce .sentinel-card,
body.theme-clean-dark .sentinel-card {
    background: rgba(11, 15, 25, 0.75) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(12px) !important;
}

body:not(.theme-clean-light) .sentinel-card:hover,
body.theme-rolls-royce .sentinel-card:hover,
body.theme-clean-dark .sentinel-card:hover {
    border-color: rgba(56, 189, 248, 0.45) !important;
    box-shadow: 0 8px 26px rgba(0, 0, 0, 0.5), 0 0 15px rgba(56, 189, 248, 0.15) !important;
    transform: translateY(-2px);
}

body:not(.theme-clean-light) .sentinel-view-analysis-btn,
body.theme-rolls-royce .sentinel-view-analysis-btn,
body.theme-clean-dark .sentinel-view-analysis-btn {
    background: rgba(14, 165, 233, 0.18) !important;
    border: 1px solid rgba(56, 189, 248, 0.4) !important;
    color: #38bdf8 !important;
}

body:not(.theme-clean-light) .sentinel-view-analysis-btn:hover,
body.theme-rolls-royce .sentinel-view-analysis-btn:hover,
body.theme-clean-dark .sentinel-view-analysis-btn:hover {
    background: rgba(14, 165, 233, 0.35) !important;
    border-color: #38bdf8 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   SIDEBAR RESIZER (POIGNÉE DE REDIMENSIONNEMENT DU MENU LATÉRAL)
   ========================================================================== */
.sidebar-resizer {
    position: absolute;
    top: 0;
    right: 0;
    width: 6px;
    height: 100%;
    cursor: col-resize;
    z-index: 1000;
    user-select: none;
    background: transparent;
    transition: background 0.2s ease, box-shadow 0.2s ease;
}

.sidebar-resizer:hover,
body.is-resizing-sidebar .sidebar-resizer {
    background: #d4af37 !important;
    box-shadow: 0 0 10px rgba(212, 175, 55, 0.8) !important;
}

body.is-resizing-sidebar,
body.is-resizing-sidebar * {
    cursor: col-resize !important;
    user-select: none !important;
}

body.is-resizing-sidebar .app-sidebar {
    transition: none !important;
}

/* ==========================================================================
   MODERN EXECUTIVE COPILOT INPUT BOX (DARK THEME)
   ========================================================================== */
body:not(.theme-clean-light) .copilot-input-container {
    background: #070a10 !important;
    border-top: 1px solid rgba(212, 175, 55, 0.25) !important;
    padding: 0.85rem 1.1rem 1rem !important;
}

body:not(.theme-clean-light) .copilot-input-box {
    background: rgba(13, 18, 28, 0.95) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.32) !important;
    border-radius: 16px !important;
    padding: 0.75rem 1rem 0.65rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body:not(.theme-clean-light) .copilot-input-box:focus-within {
    border-color: #d4af37 !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.22), 0 8px 28px rgba(0, 0, 0, 0.65) !important;
    background: rgba(18, 24, 38, 0.98) !important;
}

body:not(.theme-clean-light) .copilot-textarea {
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    resize: none !important;
    color: #f8fafc !important;
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
    font-family: inherit !important;
    min-height: 46px !important;
    max-height: 140px !important;
}

body:not(.theme-clean-light) .copilot-textarea::placeholder {
    color: #64748b !important;
    font-style: italic !important;
}

body:not(.theme-clean-light) .copilot-input-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 0.4rem !important;
    padding-top: 0.45rem !important;
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
}

body:not(.theme-clean-light) .copilot-footer-actions {
    display: flex !important;
    align-items: center !important;
    gap: 0.6rem !important;
}

body:not(.theme-clean-light) .copilot-enter-hint {
    font-size: 0.68rem !important;
    color: #64748b !important;
    font-family: var(--font-mono) !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
}

body:not(.theme-clean-light) .btn-copilot-send {
    background: linear-gradient(135deg, #d4af37 0%, #aa820a 100%) !important;
    color: #080d16 !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
    font-size: 0.82rem !important;
    padding: 6px 14px !important;
    border: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.45rem !important;
    box-shadow: 0 3px 12px rgba(212, 175, 55, 0.35) !important;
    transition: all 0.2s ease !important;
}

body:not(.theme-clean-light) .btn-copilot-send:hover {
    transform: translateY(-1px) scale(1.02) !important;
    box-shadow: 0 5px 18px rgba(212, 175, 55, 0.5) !important;
    background: linear-gradient(135deg, #f5d77f 0%, #c5a059 100%) !important;
}

/* AUDIT MACRO CARD & CRO VERDICT (DARK THEME) */
body:not(.theme-clean-light) .audit-macro-card,
body:not(.theme-clean-light) .audit-cro-card {
    background: rgba(13, 18, 28, 0.95) !important;
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    color: #f8fafc !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}

body:not(.theme-clean-light) .audit-macro-tags {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 0.6rem;
    font-size: 0.74rem;
    flex-wrap: wrap;
}

body:not(.theme-clean-light) .audit-macro-tag-fed {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #e2e8f0 !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

body:not(.theme-clean-light) .audit-macro-tag-risk.is-danger {
    background: rgba(244, 63, 94, 0.18) !important;
    color: #fda4af !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    border: 1px solid rgba(244, 63, 94, 0.35) !important;
}

body:not(.theme-clean-light) .audit-macro-tag-risk.is-safe {
    background: rgba(16, 185, 129, 0.18) !important;
    color: #6ee7b7 !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    border: 1px solid rgba(16, 185, 129, 0.35) !important;
}

body:not(.theme-clean-light) .audit-macro-tag-bias {
    background: rgba(14, 165, 233, 0.18) !important;
    color: #7dd3fc !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    border: 1px solid rgba(14, 165, 233, 0.35) !important;
}

body:not(.theme-clean-light) .audit-macro-tag-geo {
    background: rgba(212, 175, 55, 0.15) !important;
    color: #fef08a !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
}

body:not(.theme-clean-light) .audit-macro-synthesis {
    line-height: 1.55 !important;
    color: #cbd5e1 !important;
    font-size: 0.84rem !important;
}

body:not(.theme-clean-light) .audit-macro-synthesis-label {
    color: #fef08a !important;
    font-weight: 700 !important;
}

body:not(.theme-clean-light) .audit-macro-catalysts {
    margin-top: 0.55rem !important;
    padding-top: 0.5rem !important;
    border-top: 1px dashed rgba(255, 255, 255, 0.12) !important;
    font-size: 0.74rem !important;
    color: #94a3b8 !important;
}

body:not(.theme-clean-light) .audit-macro-catalysts strong {
    color: #e2e8f0 !important;
}

body:not(.theme-clean-light) .audit-macro-catalysts ul {
    margin: 0.25rem 0 0 1rem !important;
    padding: 0 !important;
}

body:not(.theme-clean-light) #auditCroVerdictText {
    color: #cbd5e1 !important;
    line-height: 1.55 !important;
    font-size: 0.84rem !important;
}

/* ==========================================================================
   CRYPTO TERMINAL & WATCHLIST (DARK LUXURY THEME - NO WHITE BLOCKS)
   ========================================================================== */
body:not(.theme-clean-light) .crypto-chart-panel,
body:not(.theme-clean-light) .crypto-order-module,
body:not(.theme-clean-light) #cryptoTerminalWhyBox {
    background: rgba(14, 20, 32, 0.96) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .crypto-chart-panel > div:first-child {
    background: rgba(10, 15, 24, 0.98) !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2) !important;
}

body:not(.theme-clean-light) #cryptoTerminalChartTitle {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) #tvRightWatchlistPanel > div:last-child {
    background: rgba(10, 15, 24, 0.9) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body:not(.theme-clean-light) .tv-watchlist-table {
    width: 100% !important;
    background: transparent !important;
}

body:not(.theme-clean-light) .tv-watchlist-table th {
    background: rgba(10, 15, 24, 0.95) !important;
    color: #f5d77f !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.25) !important;
    padding: 6px 8px !important;
}

body:not(.theme-clean-light) .tv-watchlist-table td,
body:not(.theme-clean-light) .tv-watchlist-row td {
    color: #cbd5e1 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding: 6px 8px !important;
}

body:not(.theme-clean-light) .tv-watchlist-row td strong {
    color: #ffffff !important;
    font-weight: 700 !important;
}

body:not(.theme-clean-light) .tv-watchlist-row:hover {
    background: rgba(212, 175, 55, 0.08) !important;
}

body:not(.theme-clean-light) .tv-watchlist-row.active {
    background: rgba(212, 175, 55, 0.15) !important;
    border-left: 3px solid #d4af37 !important;
}

/* ==========================================================================
   PROPFIRM CHALLENGE CALCULATOR CARD (DARK THEME CONTRAST)
   ========================================================================== */
body:not(.theme-clean-light) .prop-calculator-card {
    background: rgba(14, 20, 32, 0.96) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.3) !important;
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .prop-calc-title {
    color: #fef08a !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6) !important;
}

body:not(.theme-clean-light) .prop-calc-desc {
    color: #94a3b8 !important;
}

body:not(.theme-clean-light) .prop-mode-banner {
    background: rgba(18, 26, 42, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
}

body:not(.theme-clean-light) #propModeBannerTitle {
    color: #fef08a !important;
    font-weight: 800 !important;
}

body:not(.theme-clean-light) #propModeBannerText {
    color: #cbd5e1 !important;
}

body:not(.theme-clean-light) #propModeBannerText strong {
    color: #ffffff !important;
    font-weight: 700 !important;
}

body:not(.theme-clean-light) .guide-acc-title {
    color: #f8fafc !important;
}

body:not(.theme-clean-light) .guide-acc-desc {
    color: #94a3b8 !important;
}

/* ==========================================================================
   MODALE GUIDE BOUCLIER DE HEDGING INVERSE (THEMING ROLLS-ROYCE & LIGHT)
   ========================================================================== */
body:not(.theme-clean-light) .hedging-guide-card {
    background: rgba(10, 14, 24, 0.98) !important;
    border: 1px solid rgba(16, 185, 129, 0.35) !important;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.8), 0 0 35px rgba(16, 185, 129, 0.15) !important;
}

body.theme-clean-light .hedging-guide-card {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.2) !important;
}

body.theme-clean-light .hedging-guide-card h2,
body.theme-clean-light .hedging-guide-card h4 {
    color: #0f172a !important;
}

body.theme-clean-light .hedging-guide-card p,
body.theme-clean-light .hedging-guide-card td,
body.theme-clean-light .hedging-guide-card span {
    color: #334155 !important;
}

body.theme-clean-light .h-guide-box {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
}

/* ==========================================================================
   BARRE ÉLÉGANTE D'ACTIONS (ALIGNEMENT DUBAI EXECUTIVE & BOUTONS HOMOGÈNES)
   ========================================================================== */
.executive-actions-bar {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.55rem !important;
    flex-wrap: nowrap !important;
}

.executive-bar-btn {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
}

.executive-btn-primary {
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(2, 132, 199, 0.35)) !important;
    border: 1px solid rgba(56, 189, 248, 0.45) !important;
    color: #e0f2fe !important;
    box-shadow: 0 2px 10px rgba(2, 132, 199, 0.2) !important;
}
.executive-btn-primary:hover {
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.4), rgba(2, 132, 199, 0.5)) !important;
    border-color: #38bdf8 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 16px rgba(56, 189, 248, 0.35) !important;
    transform: translateY(-1px) !important;
}

.executive-btn-emerald {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.2), rgba(6, 182, 212, 0.25)) !important;
    border: 1px solid rgba(16, 185, 129, 0.4) !important;
    color: #a7f3d0 !important;
}
.executive-btn-emerald:hover {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.35), rgba(6, 182, 212, 0.4)) !important;
    border-color: #34d399 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.3) !important;
    transform: translateY(-1px) !important;
}

.executive-btn-outline {
    background: rgba(15, 23, 42, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #cbd5e1 !important;
}
.executive-btn-outline:hover {
    background: rgba(30, 41, 59, 0.95) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

/* Groupe d'ajout d'actif fusionné */
.executive-input-group {
    display: inline-flex !important;
    align-items: center !important;
    height: 38px !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 8px !important;
    background: rgba(10, 15, 28, 0.85) !important;
    overflow: hidden !important;
    transition: all 0.2s ease !important;
}
.executive-input-group:focus-within {
    border-color: #38bdf8 !important;
    box-shadow: 0 0 14px rgba(56, 189, 248, 0.25) !important;
}
.executive-input-field {
    height: 100% !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    color: #f8fafc !important;
    font-family: var(--font-mono, monospace) !important;
    font-size: 0.82rem !important;
    padding: 0 12px !important;
    width: 170px !important;
}
.executive-input-btn {
    height: 100% !important;
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.25), rgba(99, 102, 241, 0.3)) !important;
    border: none !important;
    border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #38bdf8 !important;
    font-weight: 700 !important;
    font-size: 0.8rem !important;
    padding: 0 12px !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    white-space: nowrap !important;
}
.executive-input-btn:hover {
    background: linear-gradient(135deg, #0284c7, #4f46e5) !important;
    color: #ffffff !important;
}

/* Homogénéisation des boutons de contrôle d'autonomie */
.auto-hero-controls .mode-select-btn,
.auto-hero-controls .btn-action-outline,
.auto-hero-controls .btn-scan-now,
.auto-hero-controls button {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    font-size: 0.82rem !important;
}

/* ==========================================================================
   100% FULL-PAGE FLUIDITY & ULTRA-RESPONSIVE MOBILE ENGINE
   ========================================================================== */

/* 1. Suppression stricte de toute limite artificielle de largeur (Full-Width 100%) */
.app-shell {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

.app-layout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.app-main-container {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

.page-view {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 1.25rem 1.75rem 4rem 1.75rem !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

/* 2. Top-Nav fluide avec défilement horizontal fluide et tactile */
.top-nav {
    width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
}
.top-nav::-webkit-scrollbar {
    display: none !important;
}

/* 3. Bandeaux Ticker-Tape 100% pleine page */
.top-dual-ticker-tape {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 4. Cartes de résumé de capital 100% fluides (Zero coupure à droite) */
.capital-summary-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.capital-metric-box {
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* ==========================================================================
   TABLETTES & SMARTPHONES (< 992px)
   ========================================================================== */
@media (max-width: 992px) {
    /* Menu Latéral devient un tiroir off-canvas tactile */
    .app-sidebar {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;
        height: 100vh !important;
        width: 290px !important;
        max-width: 85vw !important;
        min-width: 260px !important;
        z-index: 10000 !important;
        transform: translateX(-100%) !important;
        transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
        box-shadow: 0 0 50px rgba(0, 0, 0, 0.95) !important;
    }

    .app-layout.sidebar-mobile-open .app-sidebar {
        transform: translateX(0) !important;
    }

    /* Masquer la poignée de resize sur mobile */
    .sidebar-resizer {
        display: none !important;
    }

    /* Voile d'ombrage tactile fermant au clic */
    .sidebar-mobile-backdrop {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.75);
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
        z-index: 9999;
    }

    .app-layout.sidebar-mobile-open .sidebar-mobile-backdrop {
        display: block !important;
    }

    .app-main-container {
        width: 100vw !important;
        max-width: 100vw !important;
    }

    .page-view {
        padding: 0.85rem 0.85rem 3rem 0.85rem !important;
        gap: 1.15rem !important;
    }

    .top-nav {
        padding: 0.4rem 0.65rem !important;
        gap: 0.5rem !important;
    }

    /* Adaptations des commandes autonomes */
    .auto-hero-header {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.75rem !important;
    }

    .auto-mode-switcher-card {
        width: 100% !important;
    }

    .auto-mode-btn-group {
        width: 100% !important;
        display: flex !important;
    }

    .mode-select-btn {
        flex: 1 !important;
        justify-content: center !important;
        padding: 7px 4px !important;
        font-size: 0.75rem !important;
    }
}

/* ==========================================================================
   SMARTPHONES (< 640px)
   ========================================================================== */
@media (max-width: 640px) {
    .page-view {
        padding: 0.5rem 0.5rem 3rem 0.5rem !important;
    }

    .sidebar-brand-title {
        font-size: 1rem !important;
    }

    .top-dual-ticker-tape {
        font-size: 0.7rem !important;
    }

    .ticker-tape-badge {
        padding: 2px 6px !important;
        font-size: 0.62rem !important;
    }

    .metric-stocks, .metric-crypto, .metric-cash, .metric-total {
        font-size: 1.25rem !important;
    }

    .cap-lbl {
        font-size: 0.68rem !important;
    }
}

/* ==========================================================================
   BANDEAU SENTINEL MACRO & FLUX QUANTITATIF (ROBOTS & DÉRIVÉS)
   ========================================================================== */
.macro-sentinel-cockpit {
    background: linear-gradient(135deg, rgba(14, 20, 34, 0.95) 0%, rgba(8, 12, 22, 0.98) 100%);
    border: 1px solid rgba(212, 175, 55, 0.28);
    border-radius: 12px;
    padding: 0.85rem 1.15rem;
    margin-bottom: 1.25rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
    position: relative;
    overflow: visible;
    z-index: 15;
}

.macro-sentinel-cockpit::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: linear-gradient(180deg, #d4af37, #10b981);
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
}

.macro-sentinel-items-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    flex: 1;
    overflow: visible;
}

.macro-sentinel-card {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 0.4rem 0.75rem;
    background: rgba(255, 255, 255, 0.025);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    min-width: 140px;
    position: relative;
    overflow: visible;
    transition: all 0.2s ease;
}

.macro-sentinel-card:hover {
    border-color: rgba(212, 175, 55, 0.35);
    background: rgba(255, 255, 255, 0.04);
}

.macro-card-label {
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.macro-card-val {
    font-size: 0.92rem;
    font-weight: 800;
    font-family: var(--font-mono);
    color: var(--text-main);
    display: flex;
    align-items: center;
    gap: 6px;
}

.macro-card-sub {
    font-size: 0.68rem;
    color: var(--text-muted);
}

/* ==========================================================================
   BULLES EXPLICATIVES ÉLÉGANTES (POUR TOUS / MONSIEUR TOUT LE MONDE)
   ========================================================================== */
.macro-info-bubble {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.15);
    border: 1px solid rgba(212, 175, 55, 0.4);
    color: #f5d77f;
    font-size: 0.62rem;
    font-weight: 800;
    cursor: pointer;
    position: relative;
    margin-left: auto;
    transition: all 0.2s ease;
    user-select: none;
    line-height: 1;
}

.macro-info-bubble:hover,
.macro-info-bubble:focus {
    background: rgba(212, 175, 55, 0.35);
    border-color: #f5d77f;
    color: #ffffff;
    box-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
    outline: none;
}

.macro-info-bubble .macro-tooltip-box {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    width: 275px;
    background: linear-gradient(145deg, rgba(13, 20, 36, 0.98), rgba(6, 10, 18, 0.99));
    border: 1px solid rgba(212, 175, 55, 0.45);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.85), 0 0 15px rgba(212, 175, 55, 0.15);
    border-radius: 10px;
    padding: 10px 13px;
    color: #cbd5e1;
    font-size: 0.73rem;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: normal;
    font-weight: 400;
    z-index: 10000;
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    backdrop-filter: blur(12px);
    text-align: left;
}

.macro-info-bubble:hover .macro-tooltip-box,
.macro-info-bubble:focus .macro-tooltip-box {
    visibility: visible;
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

.macro-info-bubble .macro-tooltip-box::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: transparent transparent rgba(212, 175, 55, 0.45) transparent;
}

.macro-tooltip-title {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #f5d77f;
    font-size: 0.78rem;
    font-weight: 800;
    margin-bottom: 5px;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
    padding-bottom: 4px;
}

.macro-tooltip-desc {
    color: #e2e8f0;
    font-size: 0.72rem;
    display: block;
}

.macro-tooltip-desc strong {
    color: #38bdf8;
}

/* ==========================================================================
   COPILOT KIT • DYNAMIC TRADER ACTIONS & INTERACTIVE CHIPS
   ========================================================================== */
.copilot-kit-container {
    margin-top: 0.75rem;
}

.copilot-kit-tabs {
    display: flex;
    gap: 0.45rem;
    overflow-x: auto;
    padding-bottom: 0.45rem;
    margin-bottom: 0.75rem;
    scrollbar-width: none;
}

.copilot-kit-tabs::-webkit-scrollbar {
    display: none;
}

.copilot-kit-chip {
    padding: 4px 10px;
    font-size: 0.72rem;
    font-weight: 700;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #94a3b8;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.2s ease;
}

.copilot-kit-chip:hover {
    background: rgba(212, 175, 55, 0.12);
    border-color: rgba(212, 175, 55, 0.35);
    color: #f5d77f;
}

.copilot-kit-chip.active {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.2), rgba(212, 175, 55, 0.08));
    border-color: rgba(212, 175, 55, 0.6);
    color: #fef08a;
    box-shadow: 0 0 12px rgba(212, 175, 55, 0.2);
}

.copilot-quick-tile {
    position: relative;
    padding: 0.95rem !important;
}

.tile-action-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.4rem;
    padding-top: 0.35rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.tile-action-btn {
    font-size: 0.68rem;
    font-weight: 800;
    color: #d4af37;
    background: rgba(212, 175, 55, 0.12);
    border: 1px solid rgba(212, 175, 55, 0.3);
    padding: 3px 8px;
    border-radius: 6px;
    transition: all 0.15s ease;
}

.copilot-quick-tile:hover .tile-action-btn {
    background: #d4af37;
    color: #050810;
}

.btn-copilot-action-pill {
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.2), rgba(212, 175, 55, 0.08));
    color: #fef08a;
    border: 1px solid rgba(212, 175, 55, 0.45);
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0.5rem 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    transition: all 0.2s ease;
}

.btn-copilot-action-pill:hover {
    background: linear-gradient(135deg, #d4af37, #b8860b);
    color: #050810;
    transform: scale(1.02);
}

/* ==========================================================================
   MOTEUR AUTONOME • DESIGN ÉPURÉ, LUXUEUX & NON-ENCOMBRANT
   ========================================================================== */
.autonomous-command-hero {
    background: linear-gradient(145deg, rgba(14, 20, 34, 0.95), rgba(8, 12, 22, 0.98)) !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 14px !important;
    padding: 1.05rem 1.3rem !important;
    gap: 0.85rem !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5) !important;
}

.auto-hero-header {
    gap: 0.85rem !important;
}

.auto-mode-switcher-card {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    padding: 3px 8px !important;
}

.auto-mode-explanation-strip {
    background: rgba(212, 175, 55, 0.06) !important;
    border: 1px solid rgba(212, 175, 55, 0.18) !important;
    border-radius: 8px !important;
    padding: 0.4rem 0.85rem !important;
    font-size: 0.78rem !important;
    color: #cbd5e1 !important;
}

/* CARTE D'EXÉCUTION & D'ARBITRAGE ULTRA-ÉLÉGANTE (DESK HEDGE FUND) */
.execution-decision-card {
    background: linear-gradient(145deg, rgba(13, 19, 32, 0.96), rgba(8, 12, 22, 0.98)) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    padding: 0.75rem 1rem !important;
    margin-bottom: 0.55rem !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.execution-decision-card:hover {
    border-color: rgba(212, 175, 55, 0.35) !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.45) !important;
}

.exec-card-compact-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.exec-sym-badge-group {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.exec-sym-title {
    font-family: var(--font-mono);
    font-size: 1.05rem;
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -0.01em;
}

.exec-price-tag {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    font-weight: 700;
    color: #38bdf8;
}

.exec-sl-tp-pills {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    font-family: var(--font-mono);
    font-size: 0.74rem;
}

.exec-pill-sl {
    background: rgba(244, 63, 94, 0.12);
    border: 1px solid rgba(244, 63, 94, 0.28);
    color: #fb7185;
    padding: 2px 7px;
    border-radius: 5px;
    font-weight: 700;
}

.exec-pill-tp {
    background: rgba(16, 185, 129, 0.12);
    border: 1px solid rgba(16, 185, 129, 0.28);
    color: #34d399;
    padding: 2px 7px;
    border-radius: 5px;
    font-weight: 700;
}

/* Ligne des micro-badges de consensus des 4 agents */
.agent-consensus-inline-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.45rem;
    padding-top: 0.4rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    flex-wrap: wrap;
    gap: 0.45rem;
}

.agent-mini-pills-row {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.agent-micro-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 5px;
    font-size: 0.7rem;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #94a3b8;
}

.agent-micro-pill strong {
    color: #e2e8f0;
}

.agent-micro-pill.quant strong { color: #c084fc; }
.agent-micro-pill.robot strong { color: #60a5fa; }
.agent-micro-pill.news strong { color: #34d399; }
.agent-micro-pill.cro strong { color: #fb7185; }

.btn-toggle-thesis {
    background: none;
    border: 1px solid rgba(212, 175, 55, 0.25);
    color: #d4af37;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: all 0.15s ease;
}

.btn-toggle-thesis:hover {
    background: rgba(212, 175, 55, 0.12);
    border-color: #d4af37;
    color: #fef08a;
}

.exec-thesis-collapsible {
    display: none;
    margin-top: 0.55rem;
    padding: 0.75rem 0.85rem;
    background: rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    animation: fadeInSlide 0.2s ease forwards;
}

@keyframes fadeInSlide {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.exec-action-btns-row {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.exec-action-btn-sm {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #cbd5e1;
    font-size: 0.72rem;
    padding: 3px 8px;
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: all 0.15s ease;
}

.exec-action-btn-sm:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.2);
    color: #ffffff;
}

.exec-action-btn-sm.close:hover {
    background: rgba(244, 63, 94, 0.15);
    border-color: rgba(244, 63, 94, 0.4);
    color: #fb7185;
}

