/* body layout handled by theme CSS */

        #contentArea {
            margin-top: 20px;
        }

        .container-fluid {
            padding-left: 0 !important;
            padding-right: 0 !important;
        }

        /* SEO Description Section */
        .seo-description-section {
            margin: 20px;
        }

        .seo-description-section .card {
            border-radius: 15px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
        }

        .seo-description-section h4 {
            color: #2c3e50;
            font-weight: bold;
        }

        /* Dominance styles */
        .dominance-card {
            background: linear-gradient(145deg, #ffffff, #f8f9fa);
            border: 2px solid #e9ecef;
            border-radius: 12px;
            padding: 12px 14px;
            display: inline-flex;
            gap: 8px;
            align-items: center;
        }
        .dominance-pill {
            font-weight: 700;
            border-radius: 999px;
            padding: 8px 12px;
            font-size: 14px;
            display: inline-flex;
            align-items: center;
            gap: 6px;
        }
        .dom-btc { background:#212529; color:#fff; }
        .dom-usdt { background:#6c757d; color:#fff; }
        .dom-oth { background:#0dcaf0; color:#111; }
        .dom-impact { font-weight:600; }
        .dom-arrow-up::before{ content:'▲'; margin-right:6px; }
        .dom-arrow-down::before{ content:'▼'; margin-right:6px; }

        /* Market Signals Container - COMPACT */
        .market-signals-section {
            margin: 10px 15px;
        }

        .market-signals-section .card {
            border-radius: 8px;
            box-shadow: none;
            border: 1px solid #dee2e6;
        }

        .market-signals-section .card-header {
            background: #1a2744 !important;
            color: white !important;
            border-radius: 8px 8px 0 0 !important;
            padding: 10px 15px !important;
        }

        .market-signals-section .card-header h5 {
            margin: 0 !important;
            font-weight: 600 !important;
            font-size: 14px !important;
            text-transform: uppercase !important;
            letter-spacing: 0.5px !important;
        }

        .market-signals-section .card-body {
            padding: 12px 15px !important;
        }
        
        /* Compact Timeframe Buttons */
        .market-signals-section .timeframe-btn {
            padding: 6px 12px !important;
            font-size: 12px !important;
            min-width: 80px !important;
        }
        
        /* Overall Market Overview section removed per user request */
        
        /* Compact Quality Metrics */
        .market-quality-section {
            padding: 10px !important;
            margin-bottom: 10px !important;
        }
        
        .market-quality-section h6 {
            font-size: 13px !important;
            margin-bottom: 8px !important;
        }
        
        .quality-metrics {
            gap: 10px !important;
        }
        
        .quality-metric {
            padding: 8px 12px !important;
        }
        
        /* Compact Timeframe Analysis */
        .timeframe-analysis {
            padding: 10px !important;
            margin-bottom: 10px !important;
        }
        
        .timeframe-analysis h6 {
            font-size: 13px !important;
            margin-bottom: 8px !important;
        }
        
        .timeframe-metrics {
            gap: 10px !important;
        }
        
        .timeframe-metric {
            padding: 8px 12px !important;
        }

        /* Responsive Design */
        @media (max-width: 768px) {
            .seo-description-section,
            .market-signals-section {
                margin: 10px;
            }
            
            .market-signals-section .card-header {
                padding: 15px !important;
            }
            
            .market-signals-section .card-body {
                padding: 15px !important;
            }
        }

        /* Premium theme (loaded last to override local styles) */
/* Loading Animation */
        .loading-container {
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 40px;
        }

        .loading-spinner {
            display: inline-block;
            width: 40px;
            height: 40px;
            border: 4px solid #f3f3f3;
            border-top: 4px solid #007bff;
            border-radius: 50%;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        /* footer handled by theme CSS */

        /* Professional Market Overview Styles */
        .bg-gradient-primary {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
        }

        .bg-gradient-success {
            background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%) !important;
        }

        .bg-gradient-danger {
            background: linear-gradient(135deg, #fc466b 0%, #3f5efb 100%) !important;
        }

        .bg-gradient-warning {
            background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%) !important;
        }

        .bg-gradient-neutral {
            background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%) !important;
        }

        /* Enhanced Signal Cards */
        .signal-card {
            border-radius: 12px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
            border: none;
            margin-bottom: 20px;
        }

        .signal-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
        }

        .signal-card.long {
            border-left: 4px solid #28a745;
        }

        .signal-card.short {
            border-left: 4px solid #dc3545;
        }

        .signal-card.neutral {
            border-left: 4px solid #ffc107;
        }

        /* Enhanced Signal Strength Bar */
        .signal-strength-bar {
            height: 8px;
            border-radius: 4px;
            background: #e9ecef;
            overflow: hidden;
            margin-top: 10px;
        }

        .signal-strength-fill {
            height: 100%;
            border-radius: 4px;
            transition: width 0.3s ease;
        }

        .signal-strength-fill.long {
            background: linear-gradient(90deg, #28a745, #20c997);
        }

        .signal-strength-fill.short {
            background: linear-gradient(90deg, #dc3545, #fd7e14);
        }

        .signal-strength-fill.neutral {
            background: linear-gradient(90deg, #ffc107, #ffca2c);
        }

        /* Enhanced Timeframe Badge */
        .timeframe-badge {
            position: absolute;
            top: 10px;
            right: 10px;
            padding: 4px 8px;
            border-radius: 12px;
            font-size: 10px;
            font-weight: bold;
            text-transform: uppercase;
        }

        .timeframe-badge-15m {
            background: #28a745;
            color: white;
        }

        .timeframe-badge-1h {
            background: #007bff;
            color: white;
        }

        .timeframe-badge-4h {
            background: #ffc107;
            color: #212529;
        }

        .timeframe-badge-1d {
            background: #dc3545;
            color: white;
        }

        /* Enhanced Market Overview Section */
        .market-overview-section {
            background: #f8f9fa;
            border-radius: 12px;
            padding: 20px;
            margin-bottom: 20px;
            border: 1px solid #e9ecef;
        }

        .overall-signal, .market-sentiment, .signal-strength {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px 0;
            border-bottom: 1px solid #dee2e6;
        }

        .overall-signal:last-child, .market-sentiment:last-child, .signal-strength:last-child {
            border-bottom: none;
        }

        .sentiment-bullish {
            color: #28a745;
            font-weight: bold;
        }

        .sentiment-bearish {
            color: #dc3545;
            font-weight: bold;
        }

        .sentiment-neutral {
            color: #ffc107;
            font-weight: bold;
        }

        /* Enhanced Indicator Grid */
        .indicator-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 20px;
            margin-top: 20px;
        }

        .indicator-card {
            background: white;
            border-radius: 12px;
            padding: 20px;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
            border: 1px solid #e9ecef;
            position: relative;
            transition: all 0.3s ease;
        }

        .indicator-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
        }

        .indicator-name {
            font-weight: bold;
            font-size: 18px;
            margin-bottom: 15px;
            color: #2c3e50;
        }

        .indicator-signal {
            display: inline-block;
            padding: 8px 16px;
            border-radius: 20px;
            font-weight: bold;
            text-transform: uppercase;
            font-size: 14px;
            margin-bottom: 10px;
        }

        .indicator-signal.long {
            background: #d4edda;
            color: #155724;
        }

        .indicator-signal.short {
            background: #f8d7da;
            color: #721c24;
        }

        .indicator-signal.neutral {
            background: #fff3cd;
            color: #856404;
        }

        /* Enhanced Signal Counts */
        .signal-counts {
            display: flex;
            justify-content: space-between;
            margin-top: 15px;
            padding-top: 15px;
            border-top: 1px solid #e9ecef;
        }

        .count-item {
            text-align: center;
            flex: 1;
        }

        .count-label {
            display: block;
            font-size: 12px;
            color: #6c757d;
            margin-bottom: 5px;
        }

        .count-value {
            display: block;
            font-weight: bold;
            font-size: 16px;
        }

        .text-success {
            color: #28a745 !important;
        }

        .text-danger {
            color: #dc3545 !important;
        }

        .text-warning {
            color: #ffc107 !important;
        }

        /* Enhanced Confidence Indicators */
        .confidence-indicator {
            display: inline-block;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            margin-left: 5px;
        }

        .confidence-high {
            background: #28a745;
        }

        .confidence-medium {
            background: #ffc107;
        }

        .confidence-low {
            background: #dc3545;
        }

        /* Enhanced Quality Indicators */
        .quality-indicator {
            position: absolute;
            top: 10px;
            left: 10px;
            width: 12px;
            height: 12px;
            border-radius: 50%;
        }

        .quality-good {
            background: #28a745;
        }

        .quality-poor {
            background: #dc3545;
        }

        /* Enhanced Market Quality Section */
        .market-quality-section {
            background: linear-gradient(145deg, #f8f9fa, #e9ecef);
            border-radius: 12px;
            padding: 15px;
            margin-top: 20px;
            border: 1px solid #dee2e6;
        }

        .quality-metrics {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 15px;
        }

        .quality-metric {
            text-align: center;
            padding: 10px;
            background: white;
            border-radius: 8px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        }

        .quality-metric-label {
            font-size: 12px;
            color: #6c757d;
            margin-bottom: 5px;
        }

        .quality-metric-value {
            font-size: 18px;
            font-weight: bold;
            color: #2c3e50;
        }

        /* Enhanced Timeframe Analysis */
        .timeframe-analysis {
            background: linear-gradient(145deg, #e3f2fd, #bbdefb);
            border-radius: 12px;
            padding: 15px;
            margin-top: 20px;
            border: 1px solid #90caf9;
        }

        .timeframe-metrics {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
            gap: 10px;
        }

        .timeframe-metric {
            text-align: center;
            padding: 8px;
            background: white;
            border-radius: 6px;
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
        }

        .timeframe-metric-label {
            font-size: 11px;
            color: #6c757d;
            margin-bottom: 3px;
        }

        .timeframe-metric-value {
            font-size: 16px;
            font-weight: bold;
            color: #1976d2;
        }

        /* Enhanced Responsive Design */
        @media (max-width: 768px) {
            .indicator-grid {
                grid-template-columns: 1fr;
            }
            
            .signal-counts {
                flex-direction: column;
                gap: 10px;
            }
            
            .count-item {
                display: flex;
                justify-content: space-between;
                align-items: center;
            }

            .quality-metrics {
                grid-template-columns: repeat(2, 1fr);
            }

            .timeframe-metrics {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        /* Enhanced Loading States */
        .loading-overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(255, 255, 255, 0.9);
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 12px;
            z-index: 10;
        }

        /* Enhanced Error States */
        .error-state {
            background: #f8d7da;
            border: 1px solid #f5c6cb;
            border-radius: 8px;
            padding: 15px;
            color: #721c24;
            text-align: center;
        }

        /* Enhanced Success States */
        .success-state {
            background: #d4edda;
            border: 1px solid #c3e6cb;
            border-radius: 8px;
            padding: 15px;
            color: #155724;
            text-align: center;
        }

        /* NEW: Trading Decision Matrix Styles */
        .trading-decision-matrix .card {
            border-radius: 15px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            border: none;
        }

        .trading-decision-matrix .card-header {
            background: linear-gradient(145deg, #007bff, #6c757d) !important;
            color: white !important;
            border-radius: 15px 15px 0 0 !important;
            padding: 20px !important;
        }

        .trading-decision-matrix .card-header h5 {
            margin: 0 !important;
            font-weight: bold !important;
            text-transform: uppercase !important;
            letter-spacing: 1px !important;
        }

        .trading-decision-matrix .card-body {
            padding: 20px !important;
        }

        .decision-summary {
            margin-bottom: 20px;
        }

        .decision-summary .recommendation-box {
            background: #e9ecef;
            border-radius: 10px;
            padding: 15px;
            border: 1px solid #dee2e6;
        }

        .recommendation-action {
            font-size: 20px;
            font-weight: bold;
            margin-bottom: 5px;
        }

        .recommendation-confidence {
            font-size: 14px;
            color: #6c757d;
            margin-bottom: 5px;
        }

        .recommendation-reason {
            font-size: 12px;
            color: #343a40;
        }

        .timeframe-recommendations {
            margin-bottom: 20px;
        }

        .timeframe-actions .timeframe-action {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px 15px;
            background: #f8f9fa;
            border-radius: 8px;
            margin-bottom: 8px;
            border: 1px solid #e9ecef;
        }

        .timeframe-actions .timeframe-action .timeframe-label {
            font-weight: bold;
            color: #6c757d;
        }

        .timeframe-actions .timeframe-action .action-text {
            font-weight: bold;
            color: #28a745; /* Default to bullish */
        }

        .timeframe-actions .timeframe-action.long .action-text {
            color: #28a745; /* Bullish */
        }

        .timeframe-actions .timeframe-action.short .action-text {
            color: #dc3545; /* Bearish */
        }

        .timeframe-actions .timeframe-action.neutral .action-text {
            color: #ffc107; /* Neutral */
        }

        .risk-assessment {
            margin-top: 20px;
        }

        .risk-indicators .risk-indicator {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 8px 15px;
            background: #f8f9fa;
            border-radius: 8px;
            margin-bottom: 8px;
            border: 1px solid #e9ecef;
        }

        .risk-indicators .risk-label {
            font-weight: bold;
            color: #6c757d;
        }

        .risk-indicators .risk-value {
            font-weight: bold;
            color: #2c3e50;
        }

        .market-context-section .card {
            border-radius: 15px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            border: none;
        }

        .market-context-section .card-header {
            background: linear-gradient(145deg, #6c757d, #343a40) !important;
            color: white !important;
            border-radius: 15px 15px 0 0 !important;
            padding: 20px !important;
        }

        .market-context-section .card-header h5 {
            margin: 0 !important;
            font-weight: bold !important;
            text-transform: uppercase !important;
            letter-spacing: 1px !important;
        }

        .market-context-section .card-body {
            padding: 20px !important;
        }

        .context-item {
            margin-bottom: 20px;
        }

        .context-item h6 {
            margin-bottom: 10px;
        }

        .context-text {
            font-size: 14px;
            color: #343a40;
            line-height: 1.6;
        }

        .insights-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .insights-list li {
            margin-bottom: 8px;
            color: #495057;
        }

        .action-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .action-list li {
            margin-bottom: 8px;
            color: #495057;
        }

        /* NEW: Recommendation Action Styles */
        .recommendation-action.long {
            color: #28a745;
            background: linear-gradient(145deg, #d4edda, #c3e6cb);
            padding: 10px;
            border-radius: 8px;
            border: 2px solid #28a745;
        }

        .recommendation-action.short {
            color: #dc3545;
            background: linear-gradient(145deg, #f8d7da, #f5c6cb);
            padding: 10px;
            border-radius: 8px;
            border: 2px solid #dc3545;
        }

        .recommendation-action.neutral {
            color: #6c757d;
            background: linear-gradient(145deg, #e9ecef, #dee2e6);
            padding: 10px;
            border-radius: 8px;
            border: 2px solid #6c757d;
        }

        /* NEW: Enhanced Visual Indicators */
        .signal-strength-indicator {
            display: inline-block;
            width: 20px;
            height: 20px;
            border-radius: 50%;
            margin-right: 8px;
            border: 2px solid white;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        }

        .signal-strength-indicator.high {
            background: #28a745;
        }

        .signal-strength-indicator.medium {
            background: #ffc107;
        }

        .signal-strength-indicator.low {
            background: #dc3545;
        }

        /* NEW: Enhanced Timeframe Action Styles */
        .timeframe-action.long {
            background: linear-gradient(145deg, #d4edda, #c3e6cb);
            border-color: #28a745;
        }

        .timeframe-action.short {
            background: linear-gradient(145deg, #f8d7da, #f5c6cb);
            border-color: #dc3545;
        }

        .timeframe-action.neutral {
            background: linear-gradient(145deg, #e9ecef, #dee2e6);
            border-color: #6c757d;
        }

        /* NEW: Enhanced Risk Assessment Styles */
        .risk-indicator.high-risk {
            background: linear-gradient(145deg, #f8d7da, #f5c6cb);
            border-color: #dc3545;
        }

        .risk-indicator.medium-risk {
            background: linear-gradient(145deg, #fff3cd, #ffeaa7);
            border-color: #ffc107;
        }

        .risk-indicator.low-risk {
            background: linear-gradient(145deg, #d4edda, #c3e6cb);
            border-color: #28a745;
        }

        /* NEW: Enhanced Context Section Styles */
        .context-item {
            background: #f8f9fa;
            border-radius: 10px;
            padding: 15px;
            border: 1px solid #e9ecef;
            margin-bottom: 15px;
        }

        .context-item h6 {
            border-bottom: 2px solid #007bff;
            padding-bottom: 8px;
            margin-bottom: 15px;
        }

        /* NEW: Enhanced Responsive Design for New Sections */
        @media (max-width: 768px) {
            .trading-decision-matrix .card-body {
                padding: 15px !important;
            }

            .timeframe-actions .timeframe-action {
                flex-direction: column;
                text-align: center;
                gap: 5px;
            }

            .risk-indicators .risk-indicator {
                flex-direction: column;
                text-align: center;
                gap: 5px;
            }

            .context-item {
                margin-bottom: 10px;
                padding: 10px;
            }
        }

        /* NEW: Enhanced Loading States for New Sections */
        .analyzing-state {
            background: linear-gradient(145deg, #e3f2fd, #bbdefb);
            border: 1px solid #90caf9;
            border-radius: 8px;
            padding: 10px;
            text-align: center;
            color: #1976d2;
            font-style: italic;
        }

        /* NEW: Enhanced Success/Error States */
        .success-state {
            background: linear-gradient(145deg, #d4edda, #c3e6cb);
            border: 1px solid #28a745;
            border-radius: 8px;
            padding: 15px;
            color: #155724;
        }

        .error-state {
            background: linear-gradient(145deg, #f8d7da, #f5c6cb);
            border: 1px solid #dc3545;
            border-radius: 8px;
            padding: 15px;
            color: #721c24;
        }

        /* NEW: Enhanced Pulse Animation for Recommendations */
        @keyframes recommendationPulse {
            0% { transform: scale(1); }
            50% { transform: scale(1.02); }
            100% { transform: scale(1); }
        }

        .recommendation-action {
            animation: recommendationPulse 3s infinite;
        }

        /* NEW: Enhanced Hover Effects for Interactive Elements */
        .timeframe-action:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
            transition: all 0.3s ease;
        }

        .risk-indicator:hover {
            transform: translateY(-1px);
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
        }

        .context-item:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
        }

        /* NEW: Market Strength Index Styles (Fear & Greed Style) */
        .market-strength-index-section {
            margin: 20px 15px;
        }

        /* Market Strength Index - Responsive Design */
        #strengthGaugeContainer {
            position: relative;
            width: 100%;
            max-width: 520px;
            margin: 0 auto;
            padding: 18px 16px 20px; /* Increased bottom padding for label space */
        }

        #strengthGauge {
            width: 100%;
            height: auto;
            display: block;
            position: relative;
            z-index: 2;
        }

        .gauge-center-value {
            position: absolute;
            left: 50%;
            top: 56%;
            transform: translate(-50%, -50%);
            z-index: 4;
            pointer-events: none;
            font-size: clamp(2.25rem, 7vw, 3.5rem);
            font-weight: 900;
            line-height: 1;
            letter-spacing: -0.04em;
            font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
            text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
        }

        .gauge-status-label {
            display: block;
            margin: 10px auto 0;
            width: fit-content;
            padding: 8px 20px;
            border-radius: 999px;
            font-size: 13px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            border: 2px solid transparent;
            text-align: center;
        }

        /* Fear & Greed style zone words around the arc */
        .fg-zone-words {
            position: absolute;
            top: -6px;
            left: 0;
            right: 0;
            height: 44px;
            pointer-events: none;
            user-select: none;
            z-index: 1;
        }
        .fg-zone-words .fg-word {
            position: absolute;
            font-weight: 800;
            letter-spacing: 1px;
            font-size: 18px;
            text-transform: uppercase;
            color: #7b8794;
            opacity: 0.95;
        }
        .fg-zone-words .fg-word.fear { left: 10px; transform: translateY(-6px) rotate(-28deg); transform-origin: left center; }
        .fg-zone-words .fg-word.neutral { left: 50%; transform: translate(-50%, -10px); }
        .fg-zone-words .fg-word.greed { right: 10px; transform: translateY(-6px) rotate(28deg); transform-origin: right center; }

        /* Card polish: closer to Fear & Greed look (clean white, soft border/shadow) */
        .market-strength-card {
            border-radius: 18px !important;
            border: 1px solid rgba(16,24,40,0.10) !important;
            box-shadow: 0 10px 30px rgba(16,24,40,0.10) !important;
            overflow: hidden;
        }
        .market-strength-header {
            background: #ffffff !important;
            color: #101828 !important;
            border-bottom: 1px solid rgba(16,24,40,0.08) !important;
            padding: 18px 20px !important;
        }
        .market-strength-header h5 {
            font-weight: 900 !important;
            letter-spacing: 1px !important;
        }
        .market-strength-subtitle {
            color: #667085 !important;
            font-weight: 600;
        }
        .market-strength-legend {
            display: flex;
            gap: 10px;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 10px;
            font-size: 12px;
            color: #667085;
            user-select: none;
        }
        .market-strength-legend .dot { width: 10px; height: 10px; border-radius: 999px; display: inline-block; margin-right: 6px; }
        .market-strength-legend .item { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px; border: 1px solid rgba(16,24,40,0.08); background: rgba(16,24,40,0.02); }

        #strengthGaugeValue {
            font-size: 56px;
            font-weight: 900;
            color: #2c3e50;
            text-shadow: 0 2px 4px rgba(0,0,0,0.1);
        }

        #strengthGaugeLabel {
            position: relative; /* Changed from absolute to relative */
            display: block;
            margin: 12px auto 0; /* Position below canvas with spacing */
            width: fit-content;
            font-size: 14px; /* Reduced from 18px */
            font-weight: bold;
            text-transform: uppercase;
            padding: 8px 20px; /* Reduced from 12px 30px */
            border-radius: 20px; /* Reduced from 25px */
            letter-spacing: 1px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
            transition: all 0.3s ease;
            text-align: center;
        }
        
        /* Professional Fear & Greed Index style label colors */
        .gauge-zone-label.extreme-short {
            background: #fee !important;
            color: #721c24 !important;
            border-color: #dc3545 !important;
        }
        
        .gauge-zone-label.strong-short {
            background: #fff4e6 !important;
            color: #721c24 !important;
            border-color: #fd7e14 !important;
        }
        
        .gauge-zone-label.neutral {
            background: #fffbf0 !important;
            color: #856404 !important;
            border-color: #ffc107 !important;
        }
        
        .gauge-zone-label.strong-long {
            background: #e6f9f5 !important;
            color: #155724 !important;
            border-color: #20c997 !important;
        }
        
        .gauge-zone-label.extreme-long {
            background: #e8f5e9 !important;
            color: #155724 !important;
            border-color: #28a745 !important;
        }

        .timeframe-strength-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 15px;
        }

        .timeframe-strength-item {
            background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
            border-radius: 14px;
            padding: 18px 14px 16px;
            text-align: center;
            border: 2px solid #dee2e6;
            transition: all 0.25s ease;
            cursor: pointer;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
            position: relative;
            overflow: hidden;
        }

        .timeframe-strength-item::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: #94a3b8;
            opacity: 0.35;
        }

        .timeframe-strength-item.tf-long::before { background: #28a745; opacity: 1; }
        .timeframe-strength-item.tf-short::before { background: #dc3545; opacity: 1; }
        .timeframe-strength-item.tf-neutral::before { background: #ffc107; opacity: 1; }

        .timeframe-strength-item.tf-long {
            border-color: rgba(40, 167, 69, 0.45);
            background: linear-gradient(180deg, rgba(40,167,69,0.10), rgba(255,255,255,0.02));
        }

        .timeframe-strength-item.tf-short {
            border-color: rgba(220, 53, 69, 0.45);
            background: linear-gradient(180deg, rgba(220,53,69,0.10), rgba(255,255,255,0.02));
        }

        .timeframe-strength-item.tf-neutral {
            border-color: rgba(255, 193, 7, 0.45);
            background: linear-gradient(180deg, rgba(255,193,7,0.08), rgba(255,255,255,0.02));
        }

        .timeframe-strength-item:hover {
            transform: translateY(-3px);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
            border-color: #667eea;
        }

        .timeframe-strength-item.active {
            border-color: #3b82f6;
            box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.35), 0 8px 24px rgba(0, 0, 0, 0.18);
            transform: translateY(-2px);
        }

        .timeframe-strength-item.tf-long.active {
            border-color: #28a745;
            box-shadow: 0 0 0 1px rgba(40, 167, 69, 0.35), 0 8px 24px rgba(0, 0, 0, 0.18);
        }

        .timeframe-strength-item.tf-short.active {
            border-color: #dc3545;
            box-shadow: 0 0 0 1px rgba(220, 53, 69, 0.35), 0 8px 24px rgba(0, 0, 0, 0.18);
        }

        .timeframe-label {
            font-size: 18px;
            font-weight: 700;
            text-transform: uppercase;
            color: #2c3e50;
            margin-bottom: 12px;
            letter-spacing: 1.5px;
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
            text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
        }

        .timeframe-strength-value {
            font-size: 2.25rem;
            font-weight: 800;
            color: #2c3e50;
            margin: 10px 0 12px;
            line-height: 1;
        }

        .timeframe-strength-value.tf-long { color: #28a745; }
        .timeframe-strength-value.tf-short { color: #dc3545; }
        .timeframe-strength-value.tf-neutral { color: #d39e00; }

        .timeframe-strength-label {
            font-size: 13px;
            font-weight: 800;
            text-transform: uppercase;
            padding: 7px 18px;
            border-radius: 999px;
            display: inline-block;
            letter-spacing: 0.08em;
            min-width: 96px;
        }

        .timeframe-strength-label.long {
            background: #d4edda !important;
            color: #155724 !important;
            border: 2px solid #28a745;
        }

        .timeframe-strength-label.short {
            background: #f8d7da !important;
            color: #721c24 !important;
            border: 2px solid #dc3545;
        }

        .timeframe-strength-label.neutral {
            background: #fff3cd !important;
            color: #856404 !important;
            border: 2px solid #ffc107;
        }

        /* Removed duplicate styles - responsive styles are defined above */

        #strengthGaugeLabel.long {
            background: #d4edda !important;
            color: #155724 !important;
            border: 2px solid #28a745;
            font-weight: bold;
        }

        #strengthGaugeLabel.short {
            background: #f8d7da !important;
            color: #721c24 !important;
            border: 2px solid #dc3545;
            font-weight: bold;
        }

        #strengthGaugeLabel.neutral {
            background: #fff3cd !important;
            color: #856404 !important;
            border: 2px solid #ffc107;
            font-weight: bold;
        }

        /* Mobile Responsive Design */
        @media (max-width: 768px) {
            .market-strength-index-section {
                margin: 15px 10px;
            }

            #strengthGaugeContainer {
                max-width: 100%;
                padding: 10px;
                margin-bottom: 20px;
            }

            #strengthGauge {
                width: 100%;
                max-width: 320px;
                max-height: 260px;
                height: auto;
            }

            #strengthGaugeValue {
                font-size: 42px;
            }

            #strengthGaugeLabel {
                font-size: 12px; /* Reduced from 14px */
                padding: 6px 14px; /* Reduced from 6px 16px */
                margin-top: 10px !important; /* Spacing below canvas */
            }

            .fg-zone-words .fg-word { font-size: 14px; }

            .timeframe-strength-item {
                padding: 12px 10px;
            }

            .timeframe-label {
                font-size: 14px;
            }

            .timeframe-strength-value {
                font-size: 28px;
            }

            .timeframe-strength-label {
                font-size: 11px;
            }

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

            .card-header {
                padding: 15px !important;
            }

            .card-header h5 {
                font-size: 1rem;
            }

            .card-header small {
                font-size: 0.7rem;
            }

            .timeframe-strength-grid {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 480px) {
            #strengthGaugeContainer {
                padding: 5px;
            }

            #strengthGauge {
                max-width: 280px;
                max-height: 220px;
            }

            #strengthGaugeValue {
                font-size: 36px;
            }

            #strengthGaugeLabel {
                font-size: 10px; /* Reduced from 12px */
                padding: 4px 10px; /* Reduced from 5px 12px */
                margin-top: 8px !important; /* Spacing below canvas */
            }

            .fg-zone-words .fg-word { font-size: 12px; }

            .timeframe-strength-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 8px;
            }

            .timeframe-strength-item {
                padding: 10px 8px;
            }

            .timeframe-label {
                font-size: 12px;
                letter-spacing: 0.5px;
            }

            .timeframe-strength-value {
                font-size: 24px;
            }

            .timeframe-strength-label {
                font-size: 10px;
            }
        }


/* JS Enhanced Table Styles (moved from market-status.js) */
            /* Enhanced Timeframe Buttons */
            .timeframe-btn {
                font-weight: bold;
                transition: all 0.3s ease;
                margin: 0 5px;
                text-transform: uppercase;
                box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
                min-width: 120px;
                position: relative;
                overflow: hidden;
            }
            
            .timeframe-btn::before {
                content: '';
                position: absolute;
                top: 0;
                left: -100%;
                width: 100%;
                height: 100%;
                background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
                transition: left 0.5s;
            }
            
            .timeframe-btn:hover::before {
                left: 100%;
            }
            
            .timeframe-btn:hover {
                transform: translateY(-3px);
                box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
            }
            
            .timeframe-btn.active {
                transform: translateY(-2px);
                box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
            }
            
            /* Enhanced Market Signals Cards */
            .market-signals-grid {
                display: flex;
                justify-content: stretch;
                margin-bottom: 30px;
                width: 100%;
            }
            
            .market-signal-card {
                background: white;
                border-radius: 15px;
                padding: 20px;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
                transition: all 0.3s ease;
                border: 2px solid transparent;
                width: 100%;
                position: relative;
                overflow: hidden;
            }
            
            .market-signal-card::before {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                height: 4px;
                background: linear-gradient(90deg, #007bff, #28a745, #ffc107, #dc3545);
                opacity: 0;
                transition: opacity 0.3s ease;
            }
            
            .market-signal-card:hover::before {
                opacity: 1;
            }
            
            .market-signal-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
            }
            
            .market-signal-card.active {
                border-color: #007bff;
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
            }
            
            .card-header {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px;
                padding-bottom: 10px;
                border-bottom: 2px solid #e9ecef;
            }
            
            .timeframe-title {
                font-size: 1.2em;
                font-weight: bold;
                color: #2c3e50;
                text-transform: uppercase;
            }
            
            .timeframe-badge {
                padding: 4px 12px;
                border-radius: 20px;
                font-size: 0.8em;
                font-weight: bold;
                color: white;
            }
            
            .badge-15m { background: linear-gradient(145deg, #28a745, #20c997); }
            .badge-1h { background: linear-gradient(145deg, #007bff, #0056b3); }
            .badge-4h { background: linear-gradient(145deg, #fd7e14, #e55a00); }
            .badge-1d { background: linear-gradient(145deg, #6f42c1, #5a2d91); }
            
            /* Enhanced Indicator Grid */
            .indicator-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 20px;
                margin: 20px 0;
            }
            
            .indicator-item {
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
                border: 2px solid #e9ecef;
                border-radius: 15px;
                padding: 20px;
                text-align: center;
                font-size: 1.1em;
                font-weight: 600;
                transition: all 0.3s ease;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
                position: relative;
                overflow: hidden;
            }
            
            .indicator-item::after {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background: linear-gradient(45deg, transparent 30%, rgba(255,255,255,0.1) 50%, transparent 70%);
                transform: translateX(-100%);
                transition: transform 0.6s ease;
            }
            
            .indicator-item:hover::after {
                transform: translateX(100%);
            }
            
            .indicator-item:hover {
                transform: translateY(-5px);
                box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
                border-color: #007bff;
            }
            
            .indicator-name {
                font-size: 1.2em;
                color: #2c3e50;
                margin-bottom: 15px;
                text-transform: uppercase;
                letter-spacing: 1px;
                font-weight: bold;
            }
            
            .indicator-name.supertrend {
                color: #007bff;
                text-shadow: 0 1px 2px rgba(0, 123, 255, 0.3);
            }
            
            .indicator-signal {
                padding: 12px 20px;
                border-radius: 25px;
                font-weight: bold;
                color: white;
                font-size: 1.3em;
                display: inline-block;
                margin-bottom: 15px;
                min-width: 120px;
                text-transform: uppercase;
                letter-spacing: 1px;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
                position: relative;
                overflow: hidden;
            }
            
            .indicator-signal::before {
                content: '';
                position: absolute;
                top: 0;
                left: -100%;
                width: 100%;
                height: 100%;
                background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
                transition: left 0.5s;
            }
            
            .indicator-signal:hover::before {
                left: 100%;
            }
            
            .indicator-timestamp {
                font-size: 0.9em;
                color: #6c757d;
                font-style: italic;
                margin-top: 10px;
                padding: 8px 12px;
                background: rgba(108, 117, 125, 0.1);
                border-radius: 20px;
                display: inline-block;
            }

            .signal-long {
                background: linear-gradient(145deg, #28a745, #20c997);
                box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
            }
            
            .signal-short {
                background: linear-gradient(145deg, #dc3545, #fd7e14);
                box-shadow: 0 4px 15px rgba(220, 53, 69, 0.3);
            }

            .signal-neutral {
                background: linear-gradient(145deg, #6c757d, #495057);
                box-shadow: 0 4px 15px rgba(108, 117, 125, 0.3);
            }
            
            /* Enhanced EMA Trend signals */
            .indicator-item .ema-trend .signal-long {
                background: linear-gradient(145deg, #00ffaa, #00ff88);
                box-shadow: 0 4px 15px rgba(0, 255, 170, 0.5);
                color: #000;
                font-weight: 900;
                border: 2px solid #00ff88;
            }
            
            .indicator-item .supertrend .signal-short {
                background: linear-gradient(145deg, #ff6b6b, #ff4757);
                box-shadow: 0 4px 15px rgba(255, 107, 107, 0.5);
                color: #fff;
                font-weight: 900;
                border: 2px solid #ff4757;
            }
            
            .indicator-item .ema-trend .signal-neutral {
                background: linear-gradient(145deg, #d4d4d4, #b8b8b8);
                box-shadow: 0 4px 15px rgba(212, 212, 212, 0.5);
                color: #333;
                font-weight: 900;
                border: 2px solid #b8b8b8;
            }
            
            /* Enhanced Signal Counts */
            .signal-counts {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 15px;
                margin: 25px 0;
                padding: 20px;
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
                border-radius: 15px;
                border: 2px solid #e9ecef;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            }
            
            .count-item {
                text-align: center;
                padding: 15px;
                border-radius: 10px;
                background: white;
                box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
                transition: all 0.3s ease;
                position: relative;
                overflow: hidden;
            }
            
            .count-item::before {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                height: 3px;
                background: linear-gradient(90deg, #28a745, #007bff, #ffc107, #dc3545);
                transform: scaleX(0);
                transition: transform 0.3s ease;
            }
            
            .count-item:hover::before {
                transform: scaleX(1);
            }
            
            .count-item:hover {
                transform: translateY(-3px);
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
            }
            
            .count-label {
                font-size: 0.9em;
                color: #6c757d;
                display: block;
                margin-bottom: 8px;
                font-weight: 600;
                text-transform: uppercase;
                letter-spacing: 0.5px;
            }
            
            .count-value {
                font-size: 2em;
                font-weight: bold;
                display: block;
                margin-top: 5px;
            }
            
            .last-updated {
                margin-top: 20px;
                font-size: 1em;
                color: #6c757d;
                text-align: center;
                padding: 15px;
                background: linear-gradient(145deg, #e9ecef, #f8f9fa);
                border-radius: 10px;
                border: 1px solid #dee2e6;
                font-weight: 500;
            }
            
            /* Enhanced Confidence Indicators */
            .confidence-badge {
                display: inline-block;
                padding: 2px 8px;
                border-radius: 10px;
                font-size: 0.7em;
                font-weight: bold;
                text-transform: uppercase;
                margin-left: 5px;
            }
            
            .confidence-high {
                background: #d4edda;
                color: #155724;
            }
            
            .confidence-medium {
                background: #fff3cd;
                color: #856404;
            }
            
            .confidence-low {
                background: #f8d7da;
                color: #721c24;
            }
            
            /* Enhanced Quality Indicators */
            .quality-indicator {
                position: absolute;
                top: 10px;
                left: 10px;
                width: 12px;
                height: 12px;
                border-radius: 50%;
                border: 2px solid white;
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
            }
            
            .quality-good {
                background: #28a745;
            }
            
            .quality-poor {
                background: #dc3545;
            }
            
            /* Enhanced Responsive Design */
            @media (max-width: 1200px) {
                .indicator-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
            }
            
            @media (max-width: 768px) {
                .market-signals-grid {
                    grid-template-columns: 1fr;
                    gap: 15px;
                }
                
                .indicator-grid {
                    grid-template-columns: 1fr;
                }
                
                .signal-counts {
                    grid-template-columns: 1fr;
                    gap: 10px;
                }
                
                .timeframe-btn {
                    padding: 8px 15px;
                    margin: 0 2px;
                    font-size: 0.9rem;
                    min-width: 90px;
                }
                
                .indicator-item {
                    padding: 15px;
                }
                
                .indicator-signal {
                    font-size: 1.1em;
                    padding: 10px 15px;
                }
            }
            
            /* Enhanced Loading Animation */
            .loading-spinner {
                display: inline-block;
                width: 20px;
                height: 20px;
                border: 3px solid #f3f3f3;
                border-top: 3px solid #007bff;
                border-radius: 50%;
                animation: spin 1s linear infinite;
            }
            
            @keyframes spin {
                0% { transform: rotate(0deg); }
                100% { transform: rotate(360deg); }
            }
            
            /* Enhanced Pulse Animation for Active Elements */
            @keyframes pulse {
                0% { transform: scale(1); }
                50% { transform: scale(1.05); }
                100% { transform: scale(1); }
            }
            
            .pulse-animation {
                animation: pulse 2s infinite;
            }
            /* Alignment badge */
            .alignment-badge { font-weight:700; padding:4px 10px; border-radius:14px; }
            .align-long { background:#28a745; color:#fff; }
            .align-short { background:#dc3545; color:#fff; }
            .align-neutral { background:#6c757d; color:#fff; }
            
            /* Comprehensive Components Styles */
            .comprehensive-components-section {
                margin-bottom: 30px;
            }
            
            .comprehensive-components-card {
                background: linear-gradient(145deg, #ffffff, #f8f9fa);
                border-radius: 15px;
                padding: 25px;
                box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
                border: 2px solid #e9ecef;
            }
            
            .components-title {
                font-size: 1.4em;
                font-weight: bold;
                color: #2c3e50;
                margin-bottom: 20px;
                text-align: center;
                text-transform: uppercase;
                letter-spacing: 1px;
                display: flex;
                flex-direction: column;
                gap: 15px;
                align-items: center;
            }
            
            .overall-component-score {
                display: flex;
                align-items: center;
                gap: 10px;
                padding: 10px 20px;
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
                border-radius: 25px;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
                font-size: 0.9em;
            }
            
            .overall-label {
                font-weight: 600;
                color: #6c757d;
                text-transform: none;
            }
            
            .overall-value {
                font-weight: bold;
                font-size: 1.2em;
            }
            
            .overall-value.long {
                color: #28a745;
            }
            
            .overall-value.short {
                color: #dc3545;
            }
            
            .overall-value.neutral {
                color: #6c757d;
            }
            
            .overall-direction {
                padding: 5px 15px;
                border-radius: 15px;
                font-weight: bold;
                font-size: 0.85em;
                text-transform: uppercase;
                letter-spacing: 1px;
            }
            
            .overall-direction.long {
                background: rgba(40, 167, 69, 0.2);
                color: #155724;
            }
            
            .overall-direction.short {
                background: rgba(220, 53, 69, 0.2);
                color: #721c24;
            }
            
            .overall-direction.neutral {
                background: rgba(108, 117, 125, 0.2);
                color: #343a40;
            }
            
            .components-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 20px;
            }
            
            .component-item {
                background: white;
                border-radius: 12px;
                padding: 20px;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
                transition: all 0.3s ease;
                border-left: 4px solid;
                position: relative;
                overflow: hidden;
            }
            
            .component-item::before {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                height: 3px;
                background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
                transform: translateX(-100%);
                transition: transform 0.6s ease;
            }
            
            .component-item:hover::before {
                transform: translateX(100%);
            }
            
            .component-item:hover {
                transform: translateY(-5px);
                box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
            }
            
            .component-item.component-long {
                border-left-color: #28a745;
                background: linear-gradient(145deg, #d4edda, #ffffff);
            }
            
            .component-item.component-short {
                border-left-color: #dc3545;
                background: linear-gradient(145deg, #f8d7da, #ffffff);
            }
            
            .component-item.component-neutral {
                border-left-color: #6c757d;
                background: linear-gradient(145deg, #e9ecef, #ffffff);
            }
            
            .component-header {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px;
            }
            
            .component-name {
                font-size: 1.1em;
                font-weight: bold;
                color: #2c3e50;
            }
            
            .component-weight {
                font-size: 0.9em;
                padding: 4px 10px;
                border-radius: 12px;
                background: rgba(0, 123, 255, 0.1);
                color: #007bff;
                font-weight: bold;
            }
            
            .component-score {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 10px;
            }
            
            .score-value {
                font-size: 1.5em;
                font-weight: bold;
                color: #2c3e50;
            }
            
            .score-percentage {
                font-size: 1.2em;
                font-weight: bold;
                color: #6c757d;
            }
            
            .component-bar {
                height: 8px;
                background: #e9ecef;
                border-radius: 4px;
                overflow: hidden;
                margin-bottom: 10px;
            }
            
            .component-bar-fill {
                height: 100%;
                transition: width 0.5s ease;
                border-radius: 4px;
            }
            
            .component-bar-fill.long {
                background: linear-gradient(90deg, #28a745, #20c997);
            }
            
            .component-bar-fill.short {
                background: linear-gradient(90deg, #dc3545, #fd7e14);
            }
            
            .component-bar-fill.neutral {
                background: linear-gradient(90deg, #6c757d, #495057);
            }
            
            .component-direction {
                font-size: 0.9em;
                font-weight: bold;
                text-align: center;
                padding: 5px 10px;
                border-radius: 8px;
                text-transform: uppercase;
                letter-spacing: 1px;
            }
            
            .component-item.component-long .component-direction {
                background: rgba(40, 167, 69, 0.2);
                color: #155724;
            }
            
            .component-item.component-short .component-direction {
                background: rgba(220, 53, 69, 0.2);
                color: #721c24;
            }
            
            .component-item.component-neutral .component-direction {
                background: rgba(108, 117, 125, 0.2);
                color: #343a40;
            }
            
            /* Enhanced Market Overview Section */
            .market-overview-section {
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
                border-radius: 12px;
                padding: 20px;
                margin-bottom: 20px;
                border: 2px solid #e9ecef;
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
            }
            
            .overall-signal, .market-sentiment {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding: 15px;
                margin-bottom: 15px;
                border-radius: 10px;
                font-weight: bold;
                font-size: 1.1em;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
                transition: all 0.3s ease;
            }
            
            .overall-signal:hover, .market-sentiment:hover {
                transform: translateX(5px);
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
            }
            
            .overall-signal.sentiment-bullish, .market-sentiment.sentiment-bullish {
                background: linear-gradient(145deg, #d4edda, #c3e6cb);
                color: #155724;
                border-left: 4px solid #28a745;
            }
            
            .overall-signal.sentiment-bearish, .market-sentiment.sentiment-bearish {
                background: linear-gradient(145deg, #f8d7da, #f5c6cb);
                color: #721c24;
                border-left: 4px solid #dc3545;
            }
            
            .overall-signal.sentiment-neutral, .market-sentiment.sentiment-neutral {
                background: linear-gradient(145deg, #e9ecef, #dee2e6);
                color: #343a40;
                border-left: 4px solid #6c757d;
            }
            
            .signal-label, .sentiment-label {
                font-size: 0.9em;
                opacity: 0.8;
                text-transform: uppercase;
                letter-spacing: 0.5px;
            }
            
            .signal-value, .sentiment-value {
                font-size: 1.3em;
                text-transform: uppercase;
                letter-spacing: 1px;
            }
            
            .signal-strength {
                padding: 15px;
                background: white;
                border-radius: 10px;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
            }
            
            .strength-label {
                font-size: 0.9em;
                color: #6c757d;
                margin-bottom: 10px;
                display: block;
                text-transform: uppercase;
                letter-spacing: 0.5px;
            }
            
            .strength-value {
                font-size: 1.5em;
                font-weight: bold;
                color: #2c3e50;
                margin-bottom: 10px;
            }
            
            .signal-strength-bar {
                height: 10px;
                background: #e9ecef;
                border-radius: 5px;
                overflow: hidden;
                box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
            }
            
            .signal-strength-fill {
                height: 100%;
                transition: width 0.8s ease;
                border-radius: 5px;
            }
            
            .signal-strength-fill.long {
                background: linear-gradient(90deg, #28a745, #20c997);
            }
            
            .signal-strength-fill.short {
                background: linear-gradient(90deg, #dc3545, #fd7e14);
            }
            
            .signal-strength-fill.neutral {
                background: linear-gradient(90deg, #6c757d, #495057);
            }
            
            /* Enhanced Error States */
            .error-state {
                background: linear-gradient(145deg, #f8d7da, #f5c6cb);
                border: 2px solid #dc3545;
                border-radius: 12px;
                padding: 20px;
                margin: 20px 0;
                text-align: center;
                color: #721c24;
            }
            
            .error-state .error-icon {
                font-size: 3em;
                margin-bottom: 15px;
            }
            
            .error-state .error-message {
                font-size: 1.1em;
                font-weight: bold;
                margin-bottom: 10px;
            }
            
            .error-state .error-details {
                font-size: 0.9em;
                opacity: 0.8;
            }
            
            /* Enhanced Loading States */
            .loading-state {
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                padding: 40px;
                background: linear-gradient(145deg, #f8f9fa, #ffffff);
                border-radius: 12px;
                border: 2px dashed #dee2e6;
            }
            
            .loading-state .loading-spinner {
                width: 40px;
                height: 40px;
                border-width: 4px;
                margin-bottom: 20px;
            }
            
            .loading-state .loading-text {
                font-size: 1.1em;
                color: #6c757d;
                font-weight: 500;
            }
            
            /* Enhanced Empty States */
            .empty-state {
                text-align: center;
                padding: 40px;
                color: #6c757d;
            }
            
            .empty-state .empty-icon {
                font-size: 4em;
                opacity: 0.3;
                margin-bottom: 20px;
            }
            
            .empty-state .empty-message {
                font-size: 1.2em;
                font-weight: 500;
                margin-bottom: 10px;
            }
            
            .empty-state .empty-details {
                font-size: 0.9em;
                opacity: 0.7;
            }
            
            /* Enhanced Responsive Design for Components */
            @media (max-width: 1200px) {
                .components-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
            }
            
            @media (max-width: 768px) {
                .components-grid {
                    grid-template-columns: 1fr;
                }
                
                .component-item {
                    padding: 15px;
                }
                
                .market-overview-section {
                    padding: 15px;
                }
                
                .overall-signal, .market-sentiment {
                    flex-direction: column;
                    text-align: center;
                    gap: 10px;
                }
            }
            
            /* Smooth Transitions for All Interactive Elements */
            * {
                transition-property: transform, box-shadow, background-color, border-color, color;
                transition-duration: 0.3s;
                transition-timing-function: ease;
            }
            
            /* Enhanced Focus States for Accessibility */
            .timeframe-btn:focus,
            .indicator-item:focus,
            .component-item:focus {
                outline: 3px solid rgba(0, 123, 255, 0.5);
                outline-offset: 2px;
            }
            
            /* Print Styles */
            @media print {
                .timeframe-btn,
                .loading-state,
                .error-state {
                    display: none;
                }
                
                .market-signal-card,
                .component-item {
                    break-inside: avoid;
                    page-break-inside: avoid;
                }
            }
                background: rgba(40, 167, 69, 0.2);
                color: #155724;
            }
            
            .component-item.component-short .component-direction {
                background: rgba(220, 53, 69, 0.2);
                color: #721c24;
            }
            
            .component-item.component-neutral .component-direction {
                background: rgba(108, 117, 125, 0.2);
                color: #495057;
            }
            
            @media (max-width: 768px) {
                .components-grid {
                    grid-template-columns: 1fr;
                }
            }
        
