/* Solar Dashboard specific styles */

.chart-container {
    position: relative;
    height: 300px;
}

/* Larger chart container for power flow - prominent for detailed viewing */
.chart-container-lg {
    height: 500px;
}

/* Responsive height for larger screens */
@media (min-width: 1200px) {
    .chart-container-lg {
        height: 550px;
    }
}

@media (min-width: 1400px) {
    .chart-container-lg {
        height: 600px;
    }
}

.stat-value {
    font-size: 2rem;
    font-weight: 700;
}

.stat-label {
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Solar cards styling for light mode compatibility */
.solar-card-warning {
    background: linear-gradient(135deg, #ffc107 0%, #ffb300 100%);
    color: #000;
}

.solar-card-info {
    background: linear-gradient(135deg, #0dcaf0 0%, #0bb5d6 100%);
    color: #000;
}

.solar-card-danger {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    color: #fff;
}

.solar-card-success {
    background: linear-gradient(135deg, #198754 0%, #157347 100%);
    color: #fff;
}

.solar-card-secondary {
    background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%);
    color: #fff;
}

.solar-card-purple {
    background: linear-gradient(135deg, var(--rae-coral) 0%, var(--rae-orange) 100%);
    color: #fff;
}

/* Price input row styling */
.solar-price-row {
    padding: 0.75rem 1rem;
    background: var(--cui-tertiary-bg);
    border-radius: 0.5rem;
    flex-wrap: wrap;
}

.solar-price-row .price-label {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--cui-body-color);
}

.solar-price-row .price-input-wrapper {
    display: inline-flex;
    align-items: center;
    background: var(--cui-body-bg);
    border: 1px solid var(--cui-border-color);
    border-radius: 0.375rem;
    padding: 0.25rem 0.5rem;
}

.solar-price-row .price-input {
    width: 60px;
    border: none;
    background: transparent;
    text-align: center;
    font-size: 0.875rem;
    color: var(--cui-body-color);
}

.solar-price-row .price-input:focus {
    outline: none;
}

.solar-price-row .price-currency,
.solar-price-row .price-unit {
    font-size: 0.75rem;
    color: var(--cui-secondary-color);
}

.solar-price-row .price-error {
    display: none;
    font-size: 0.75rem;
    color: var(--cui-danger);
    margin-left: 0.5rem;
}

.solar-price-row .price-input.invalid {
    color: var(--cui-danger);
}

/* 5-card layout for solar stats on xl screens */
@media (min-width: 1200px) {
    .solar-stats-row > .col-xl {
        flex: 1 0 0%;
        max-width: 20%;
    }
}

/* Dark mode adjustments */
[data-coreui-theme="dark"] .solar-card-warning {
    background: linear-gradient(135deg, #ffb300 0%, #ff8f00 100%);
    color: #fff;
}

[data-coreui-theme="dark"] .solar-card-info {
    background: linear-gradient(135deg, #0bb5d6 0%, #099cbd 100%);
    color: #fff;
}

.solar-card-warning .stat-label,
.solar-card-info .stat-label,
.solar-card-purple .stat-label {
    opacity: 0.9;
}

.solar-card-warning .small,
.solar-card-info .small {
    opacity: 0.75;
}

[data-coreui-theme="dark"] .solar-card-warning .stat-label,
[data-coreui-theme="dark"] .solar-card-info .stat-label,
[data-coreui-theme="dark"] .solar-card-warning .small,
[data-coreui-theme="dark"] .solar-card-info .small {
    opacity: 0.9;
    color: rgba(255, 255, 255, 0.9);
}

[data-coreui-theme="dark"] .solar-card-purple {
    background: linear-gradient(135deg, var(--rae-coral) 0%, var(--rae-orange) 100%);
}
