﻿/* dashboard-fix.css */
/* Scoped only to dashboard pages so it won't affect the rest of the app */

.dashboard-page {
    color: #0f172a;
}

    /* Keep hero/banner colors */
    .dashboard-page .hero,
    .dashboard-page .wip-hero {
        background: linear-gradient(135deg, #0f172a, #1d4ed8, #0f766e) !important;
        color: #fff !important;
        padding: 24px;
        border-radius: 18px;
        margin-bottom: 18px;
        box-shadow: 0 14px 35px rgba(15, 23, 42, .18);
    }

        .dashboard-page .hero h1,
        .dashboard-page .wip-hero h1 {
            margin: 0;
            font-weight: 900;
            letter-spacing: -.04em;
            color: #fff !important;
        }

        .dashboard-page .hero p,
        .dashboard-page .wip-hero p {
            margin: 6px 0 0 0;
            opacity: .9;
            color: #fff !important;
        }

    /* Layout */
    .dashboard-page .cards {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
        gap: 12px;
        margin-bottom: 18px;
    }

    /* White cards with dark text */
    .dashboard-page .cardx,
    .dashboard-page .panel,
    .dashboard-page .filters,
    .dashboard-page .job {
        background: #fff !important;
        border: 1px solid #dbe3ee !important;
        border-radius: 16px;
        box-shadow: 0 7px 18px rgba(15, 23, 42, .07) !important;
    }

    /* Card-specific layout */
    .dashboard-page .cardx {
        padding: 16px;
    }

    .dashboard-page .label {
        color: #64748b !important;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: .08em;
        font-weight: 900;
    }

    .dashboard-page .value {
        font-size: 26px;
        font-weight: 900;
        margin-top: 6px;
        letter-spacing: -.04em;
        color: #0f172a; /* default for plain values */
    }

        /* Keep your colored values */
        .dashboard-page .value.blue {
            color: #2563eb !important;
        }

        .dashboard-page .value.green {
            color: #16a34a !important;
        }

        .dashboard-page .value.orange {
            color: #f97316 !important;
        }

        .dashboard-page .value.red {
            color: #dc2626 !important;
        }

        .dashboard-page .value.purple {
            color: #7c3aed !important;
        }

    /* Filters */
    .dashboard-page .filters {
        padding: 14px;
        margin-bottom: 18px;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        align-items: end;
    }

    .dashboard-page .field {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

        .dashboard-page .field label {
            color: #64748b;
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: .08em;
            font-weight: 900;
        }

        .dashboard-page .field input,
        .dashboard-page .field select {
            border: 1px solid #d1d5db;
            border-radius: 10px;
            padding: 8px 10px;
            min-width: 180px;
            background: #fff;
            color: #0f172a;
        }

    .dashboard-page .btn {
        border: none;
        background: #2563eb;
        color: #fff;
        border-radius: 999px;
        padding: 9px 15px;
        font-weight: 900;
    }

    /* Tables */
    .dashboard-page table {
        width: 100%;
        border-collapse: collapse;
        font-size: 13px;
        color: #0f172a;
    }

    .dashboard-page th {
        background: #f1f5f9;
        color: #334155;
        text-align: left;
        padding: 10px;
        border-bottom: 1px solid #dbe3ee;
        text-transform: uppercase;
        font-size: 11px;
        letter-spacing: .06em;
    }

    .dashboard-page td {
        padding: 10px;
        border-bottom: 1px solid #e8eef5;
        vertical-align: top;
    }

    .dashboard-page .muted,
    .dashboard-page .job-meta {
        color: #64748b !important;
        font-size: 12px;
    }

    .dashboard-page .panel-title {
        background: #f8fafc;
        padding: 14px 16px;
        border-bottom: 1px solid #dbe3ee;
        font-weight: 900;
        font-size: 18px;
        color: #0f172a;
    }

    .dashboard-page .panel-body {
        padding: 16px;
    }

    /* Pills */
    .dashboard-page .pill {
        display: inline-block;
        padding: 4px 9px;
        border-radius: 999px;
        font-size: 11px;
        font-weight: 900;
        text-transform: uppercase;
        margin: 1px;
    }

    .dashboard-page .RO {
        background: #dbeafe;
        color: #1d4ed8;
    }

    .dashboard-page .INV {
        background: #dcfce7;
        color: #15803d;
    }

    .dashboard-page .EST {
        background: #ffedd5;
        color: #c2410c;
    }

    .dashboard-page .yes {
        background: #dcfce7;
        color: #15803d;
    }

    .dashboard-page .no {
        background: #fee2e2;
        color: #b91c1c;
    }

    /* Buttons / links */
    .dashboard-page .back,
    .dashboard-page .btn-detail,
    .dashboard-page .btn-small {
        display: inline-block;
        color: #fff !important;
        text-decoration: none;
        border-radius: 999px;
        font-weight: 800;
    }

    .dashboard-page .back {
        background: #334155;
        padding: 8px 13px;
        font-size: 13px;
    }

    .dashboard-page .btn-detail {
        background: #1d4ed8;
        padding: 7px 11px;
        font-size: 12px;
    }

    .dashboard-page .btn-small {
        background: #334155;
        padding: 5px 9px;
        font-size: 11px;
    }

    /* Job sections */
    .dashboard-page .job {
        margin-bottom: 16px;
        overflow: hidden;
    }

    .dashboard-page .job-head {
        background: #f8fafc;
        padding: 13px 15px;
        border-bottom: 1px solid #dbe3ee;
        display: flex;
        justify-content: space-between;
        gap: 14px;
    }

    .dashboard-page .job-title {
        font-weight: 900;
        font-size: 16px;
        color: #0f172a;
    }

    .dashboard-page .job-body {
        padding: 12px;
    }

    .dashboard-page .section-label {
        font-weight: 900;
        margin: 10px 0 6px 0;
        color: #0f172a;
    }

    /* Misc */
    .dashboard-page .ro-num,
    .dashboard-page .part-no {
        font-weight: 900;
        color: #0f172a;
    }

    .dashboard-page .status {
        font-weight: 700;
        color: #0f172a;
    }
