/*
|--------------------------------------------------------------------------
| Marine Dashboard
|--------------------------------------------------------------------------
*/

#weather-panel,
#marine-panel {
    height: 100%;
}

/*
|--------------------------------------------------------------------------
| Dashboard Cards
|--------------------------------------------------------------------------
*/

.dashboard-card {
    display: flex;
    flex-direction: column;

    height: 100%;

    background: #ffffff;

    border: 1px solid #d7dee7;
    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

.dashboard-card:hover {

    box-shadow: 0 5px 18px rgba(0,0,0,.12);

    transition: .2s;

}

/*
|--------------------------------------------------------------------------
| Header
|--------------------------------------------------------------------------
*/

.dashboard-header {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 14px 18px;

    color: white;

    font-size: 1rem;

    font-weight: 600;

}

.dashboard-header.weather {

    background: #0d6efd;

}

.dashboard-header.marine {

    background: #0dcaf0;

}

.dashboard-title {

    display: flex;

    align-items: center;

    gap: 8px;

    font-size: 1rem;

    font-weight: 600;

}

/*
|--------------------------------------------------------------------------
| Status Badge
|--------------------------------------------------------------------------
*/

.dashboard-status {

    padding: 5px 10px;

    border-radius: 999px;

    font-size: .75rem;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: .04em;

}

.status-good {

    background: #198754;

    color: white;

}

.status-moderate {

    background: #0dcaf0;

    color: white;

}

.status-caution {

    background: #ffc107;

    color: #212529;

}

.status-danger {

    background: #dc3545;

    color: white;

}

.status-unknown {

    background: #6c757d;

    color: white;

}

/*
|--------------------------------------------------------------------------
| Card Body
|--------------------------------------------------------------------------
*/

.dashboard-body {

    padding: 18px;

}

/*
|--------------------------------------------------------------------------
| Information Grid
|--------------------------------------------------------------------------
*/

.dashboard-grid {

    display: grid;

    grid-template-columns: 160px 1fr;

    gap: 10px 16px;

    align-items: center;

}

.dashboard-label {

    color: #6c757d;

    font-size: .9rem;

    font-weight: 500;

}

.dashboard-value {

    color: #212529;

    font-size: .95rem;

    font-weight: 600;

}

/*
|--------------------------------------------------------------------------
| Section Divider
|--------------------------------------------------------------------------
*/

.dashboard-section {

    grid-column: 1 / -1;

    margin: 6px 0;

    padding-top: 10px;

    border-top: 1px solid #e9ecef;

}

/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 768px) {

    .dashboard-grid {

        grid-template-columns: 1fr;

        gap: 6px;

    }

    .dashboard-label {

        margin-top: 10px;

        font-weight: 600;

    }

    .dashboard-value {

        margin-bottom: 2px;

    }

}