/* Custom CSS for Chronos 2 Forecasting App */ /* Body and container */ body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; background-color: #f8f9fa; } /* Card enhancements */ .card { border: none; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); margin-bottom: 1.5rem; transition: box-shadow 0.3s ease; } .card:hover { box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); } .card-header { background-color: #fff; border-bottom: 2px solid #0066CC; font-weight: 600; } /* Upload area */ #upload-data { cursor: pointer; transition: all 0.3s ease; } #upload-data:hover { border-color: #0066CC !important; background-color: #e7f3ff !important; } /* Buttons */ .btn-primary { background-color: #0066CC; border-color: #0066CC; } .btn-primary:hover { background-color: #0052a3; border-color: #0052a3; } /* Loading spinner */ .dash-spinner { color: #0066CC; } /* Slider customization */ .rc-slider-track { background-color: #0066CC; } .rc-slider-handle { border-color: #0066CC; } .rc-slider-handle:active, .rc-slider-handle:focus, .rc-slider-handle:hover { border-color: #0052a3; box-shadow: 0 0 0 5px rgba(0, 102, 204, 0.2); } /* Table styling */ .table { font-size: 0.9rem; } .table thead th { background-color: #0066CC; color: white; border: none; font-weight: 600; } /* Alert styling */ .alert { border-radius: 8px; border: none; } /* Responsive adjustments */ @media (max-width: 768px) { .card-body { padding: 1rem; } h2 { font-size: 1.5rem; } h5 { font-size: 1.1rem; } } /* Chart container */ #forecast-chart { border-radius: 8px; } /* Metrics cards */ .metrics-card { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; border-radius: 12px; padding: 1.5rem; text-align: center; } /* Footer */ footer { margin-top: 3rem; padding: 1rem 0; border-top: 1px solid #dee2e6; } /* Accessibility improvements */ :focus { outline: 2px solid #0066CC; outline-offset: 2px; } /* Loading overlay */ ._dash-loading { background-color: rgba(255, 255, 255, 0.8); } ._dash-loading-callback { color: #0066CC; } /* Quality report badges */ .badge { font-weight: 500; padding: 0.5em 0.75em; }