/* Shared MP/CC-aligned presentation layer for the DCEO Office module. */
:root {
    --mrc-page-bg: #0c1115;
    --mrc-card-bg: #191e22;
    --mrc-inner-bg: #171b1f;
    --mrc-row-bg: #131c22;
    --mrc-header-bg: #202a33;
    --mrc-border: #34414b;
    --mrc-border-soft: #26313a;
    --mrc-text: #eef3f7;
    --mrc-text-strong: #f5f7fa;
    --mrc-muted: #9aa9bc;
    --mrc-yellow: #ffc400;
    --mrc-purple: #775dd0;
    --mrc-magenta: #c026d3;
    --mrc-cyan: #18c8e8;
    --mrc-green: #20c982;
    --mrc-orange: #ff6b1a;
    --mrc-red: #ff3f5e;
}

.dceo-standard,
.dceo-data-standard,
.dceo-standard-modal,
.dceo-data-history-modal {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
}

.dceo-standard {
    background: var(--mrc-page-bg);
    color: var(--mrc-text);
}

.dceo-standard > .container-xl {
    max-width: none;
    padding-inline: 12px;
}

.dceo-standard .scroll-white {
    background: var(--mrc-page-bg) !important;
    scrollbar-color: #647180 var(--mrc-inner-bg);
    scrollbar-width: thin;
}

.dceo-standard .scroll-white::-webkit-scrollbar,
.dceo-standard .table-responsive::-webkit-scrollbar,
.dceo-standard-modal .modal-body::-webkit-scrollbar,
.dceo-data-standard ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.dceo-standard .scroll-white::-webkit-scrollbar-track,
.dceo-standard .table-responsive::-webkit-scrollbar-track,
.dceo-standard-modal .modal-body::-webkit-scrollbar-track,
.dceo-data-standard ::-webkit-scrollbar-track {
    background: var(--mrc-inner-bg);
}

.dceo-standard .scroll-white::-webkit-scrollbar-thumb,
.dceo-standard .table-responsive::-webkit-scrollbar-thumb,
.dceo-standard-modal .modal-body::-webkit-scrollbar-thumb,
.dceo-data-standard ::-webkit-scrollbar-thumb {
    background: #647180;
    border-radius: 999px;
}

/* Filters */
.dceo-standard .corporate-filter-card,
.dceo-standard .corporate-filter-card .card-body {
    background: var(--mrc-card-bg) !important;
}

.dceo-standard .corporate-filter-card {
    border: 1px solid var(--mrc-border-soft) !important;
    border-radius: 7px;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}

.dceo-standard .corporate-filter-card .card-body {
    padding: .8rem .75rem !important;
}

.dceo-standard .corporate-filter-card hr {
    border-color: var(--mrc-border);
    opacity: 1;
}

.dceo-standard .corporate-filter-card .card-font-title-filter {
    color: var(--mrc-text);
    font-size: calc(.9rem + 2px);
    font-weight: 700;
}

.dceo-standard .corporate-filter-card .card-font-subtitle-filter {
    color: var(--mrc-text);
    font-size: calc(.78rem + 2px);
    font-weight: 700;
}

.dceo-standard .corporate-filter-card .corporate-filter-choice {
    display: flex;
    height: 34px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--mrc-border) !important;
    border-radius: 5px;
    background: #171f25 !important;
    color: #dce5ec !important;
    font-size: calc(.72rem + 2px);
    font-weight: 600;
}

.dceo-standard .corporate-filter-card .corporate-filter-choice:hover {
    border-color: #647180 !important;
    background: var(--mrc-header-bg) !important;
    color: #fff !important;
}

.dceo-standard .corporate-filter-card .corporate-filter-choice.button-submit,
.dceo-standard .corporate-filter-card .corporate-confirm-button {
    border-color: var(--mrc-yellow) !important;
    background: linear-gradient(180deg, #ffd21a 0%, var(--mrc-yellow) 100%) !important;
    color: #11191f !important;
}

.dceo-standard .corporate-filter-card .corporate-confirm-button {
    min-height: 36px;
    border: 0;
    border-radius: 5px;
    font-size: calc(.78rem + 2px);
    font-weight: 800;
}

.dceo-standard .corporate-filter-card .corporate-reset-link {
    color: var(--mrc-muted) !important;
    cursor: pointer;
    font-size: calc(.7rem + 2px);
    font-weight: 500;
}

.dceo-standard .corporate-filter-card .corporate-reset-link:hover {
    color: #fff !important;
}

.dceo-standard .dceo-filter-empty {
    display: flex;
    min-height: 92px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .8rem;
    border: 1px dashed var(--mrc-border);
    border-radius: 6px;
    background: #171f25;
    color: var(--mrc-muted);
    font-size: .76rem;
    font-weight: 500;
    text-align: center;
}

.dceo-standard .dceo-filter-empty .material-symbols-outlined {
    color: var(--mrc-purple);
    font-size: 24px;
}

/* Primary and secondary navigation */
.dceo-standard .dceo-primary-toolbar {
    gap: .75rem;
    margin-bottom: .75rem;
}

.dceo-standard .dceo-section-tabs,
.dceo-standard .btn-group-child {
    display: flex;
    max-width: 100%;
    gap: 4px;
    overflow-x: auto;
    padding: 4px;
    border: 1px solid var(--mrc-border-soft);
    border-radius: 8px;
    background: var(--mrc-card-bg);
    scrollbar-width: thin;
}

.dceo-standard .dceo-section-tabs .btn,
.dceo-standard .btn-group-child .btn {
    min-height: 34px;
    flex: 0 0 auto;
    padding: .42rem .8rem;
    border: 1px solid transparent !important;
    border-radius: 5px !important;
    background: transparent !important;
    color: #c5d0da !important;
    box-shadow: none !important;
    font-size: .76rem;
    font-weight: 700;
    white-space: nowrap;
}

.dceo-standard .dceo-section-tabs .btn:hover,
.dceo-standard .btn-group-child .btn:hover {
    background: var(--mrc-header-bg) !important;
    color: #fff !important;
}

.dceo-standard .dceo-section-tabs .btn.active,
.dceo-standard .btn-group-child .btn.active {
    border-color: var(--mrc-yellow) !important;
    background: var(--mrc-yellow) !important;
    color: #11191f !important;
}

.dceo-standard .dceo-section-tabs .material-symbols-outlined {
    margin-right: .35rem;
    font-size: 18px;
    vertical-align: -4px;
}

.dceo-standard .btn-download,
.dceo-primary-action {
    min-height: 36px;
    border: 1px solid var(--mrc-yellow) !important;
    border-radius: 5px;
    background: var(--mrc-yellow) !important;
    color: #11191f !important;
    font-size: .76rem;
    font-weight: 800;
}

.dceo-standard .btn-download:hover,
.dceo-primary-action:hover {
    border-color: #ffda43 !important;
    background: #ffda43 !important;
}

/* Cards and section hierarchy */
.dceo-standard .card,
.dceo-standard .fagt-summary-card,
.dceo-standard .fagt-chart-card,
.dceo-standard .fagt-project-card,
.dceo-standard .mcf-kpi-card,
.dceo-standard .mcf-chart-card,
.dceo-standard .mcf-summary-card,
.dceo-standard .mcf-project-card,
.dceo-standard .facilitation-kpi-card,
.dceo-standard .facilitation-chart-card,
.dceo-standard .event-kpi-card,
.dceo-standard .event-chart-card,
.dceo-standard .vas-kpi-card,
.dceo-standard .vas-panel,
.dceo-standard .ilf-kpi-card,
.dceo-standard .ilf-panel,
.dceo-standard .fagt-disbursement-panel {
    border: 1px solid var(--mrc-border-soft) !important;
    border-radius: 7px !important;
    background: var(--mrc-card-bg) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .22) !important;
}

.dceo-standard .card-header,
.dceo-standard .fagt-chart-card .card-header,
.dceo-standard .mcf-chart-card .card-header,
.dceo-standard .facilitation-chart-card .card-header,
.dceo-standard .event-chart-card .card-header,
.dceo-standard .vas-chart-card .card-header,
.dceo-standard .ilf-panel .card-header {
    min-height: 48px;
    border-color: #2d3944 !important;
    background: var(--mrc-card-bg) !important;
}

.dceo-standard .card-body {
    background: var(--mrc-card-bg);
}

.dceo-standard .card-font-title-info,
.dceo-standard .card-title,
.dceo-standard .sponsorship-list-title,
.dceo-standard .fagt-section-title,
.dceo-standard .mcf-section-title,
.dceo-standard .facilitation-group-title,
.dceo-standard .industry-card-title {
    color: var(--mrc-text-strong) !important;
    font-weight: 800;
}

.dceo-standard .page-pretitle,
.dceo-standard .industry-card-subtitle,
.dceo-standard .sponsorship-list-subtitle {
    color: var(--mrc-muted) !important;
}

.dceo-standard .industry-card-icon,
.dceo-standard .project-dashboard-icon {
    border: 1px solid rgba(215, 45, 235, .55) !important;
    border-radius: 6px;
    background: rgba(119, 93, 208, .18) !important;
    color: #d72deb !important;
}

.dceo-standard .fagt-dashboard,
.dceo-standard .mcf-dashboard,
.dceo-standard .facilitation-dashboard,
.dceo-standard .event-dashboard,
.dceo-standard .vas-dashboard,
.dceo-standard .ilf-dashboard {
    --fagt-card-bg: var(--mrc-card-bg);
    --fagt-border: var(--mrc-border-soft);
    --fagt-accent: var(--mrc-purple);
    --mcf-card-bg: var(--mrc-card-bg);
    --mcf-border: var(--mrc-border-soft);
    --mcf-accent: var(--mrc-purple);
    --facilitation-card-bg: var(--mrc-card-bg);
    --facilitation-border: var(--mrc-border-soft);
    --facilitation-accent: var(--mrc-purple);
    --event-card-bg: var(--mrc-card-bg);
    --event-border: var(--mrc-border-soft);
    --event-accent: var(--mrc-purple);
    --vas-bg: var(--mrc-card-bg);
    --vas-border: var(--mrc-border-soft);
    --vas-accent: var(--mrc-purple);
    --ilf-bg: var(--mrc-card-bg);
    --ilf-panel: var(--mrc-inner-bg);
    --ilf-border: var(--mrc-border-soft);
    --ilf-accent: var(--mrc-purple);
}

.dceo-standard .mcf-note,
.dceo-standard .ilf-period-banner,
.dceo-standard .facilitation-guide {
    border-color: rgba(119, 93, 208, .45) !important;
    background: rgba(119, 93, 208, .10) !important;
    color: var(--mrc-text) !important;
}

/* Tables */
.dceo-standard table,
.dceo-standard .expenditure-standard-table,
.dceo-standard .vas-table,
.dceo-standard-modal table,
.dceo-data-standard table,
.dceo-data-history-modal table {
    --tblr-table-bg: var(--mrc-inner-bg);
    --tblr-table-color: var(--mrc-text);
    --tblr-table-border-color: var(--mrc-border);
    margin-bottom: 0;
    color: var(--mrc-text) !important;
}

.dceo-standard table thead,
.dceo-standard table thead th,
.dceo-standard .vas-table thead th,
.dceo-standard-modal table thead th,
.dceo-data-standard table thead th,
.dceo-data-history-modal table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    border-color: var(--mrc-border) !important;
    background: var(--mrc-header-bg) !important;
    color: var(--mrc-text-strong) !important;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.dceo-standard table tbody td,
.dceo-standard .vas-table tbody td,
.dceo-standard-modal table tbody td,
.dceo-data-standard table tbody td,
.dceo-data-history-modal table tbody td {
    border-color: var(--mrc-border) !important;
    background: var(--mrc-inner-bg) !important;
    color: var(--mrc-text) !important;
    font-size: .76rem;
}

.dceo-standard table tbody tr:hover td,
.dceo-standard .vas-table tbody tr:hover td,
.dceo-standard-modal table tbody tr:hover td,
.dceo-data-standard table tbody tr:hover td,
.dceo-data-history-modal table tbody tr:hover td {
    background: var(--mrc-header-bg) !important;
}

.dceo-standard table .dceo-table-total td {
    background: var(--mrc-header-bg) !important;
    color: #fff !important;
    font-weight: 800;
}

.dceo-standard table .hover-underline,
.dceo-standard-modal table a,
.dceo-data-standard table a {
    color: var(--mrc-cyan) !important;
}

/* Empty and loading states */
.dceo-standard .fagt-empty-state,
.dceo-standard .mcf-empty-state,
.dceo-standard .facilitation-empty-state,
.dceo-standard .industry-empty-state,
.dceo-standard .ilf-empty,
.dceo-standard .vas-empty-state {
    color: var(--mrc-muted) !important;
}

.dceo-standard .fagt-empty-state i,
.dceo-standard .mcf-empty-state i,
.dceo-standard .facilitation-empty-state i {
    color: var(--mrc-purple) !important;
}

/* Last updated and program/project list */
.dceo-standard .industry-last-updated {
    border: 1px solid var(--mrc-border) !important;
    border-radius: 7px;
    background: var(--mrc-card-bg) !important;
    color: var(--mrc-muted);
}

.dceo-standard .industry-last-updated strong {
    color: #fff;
}

.dceo-standard .industry-overview-card,
.dceo-standard .industry-list-card,
.dceo-standard .industry-expenditure-card,
.dceo-standard .industry-expenditure-list-card {
    border-color: var(--mrc-border-soft) !important;
    background: var(--mrc-card-bg) !important;
}

.dceo-standard .industry-program-row,
.dceo-standard .industry-program-accordion .accordion-item,
.dceo-standard .industry-program-accordion .accordion-button {
    border-color: #2d3944 !important;
    background: var(--mrc-row-bg) !important;
    color: var(--mrc-text) !important;
}

.dceo-standard .industry-program-row:hover,
.dceo-standard .industry-program-accordion .accordion-button:hover {
    border-color: var(--mrc-purple) !important;
    background: #19242c !important;
}

.dceo-standard .industry-view-remarks {
    background: var(--mrc-yellow) !important;
    color: #11191f !important;
}

/* Modals and second-layer surfaces */
.dceo-standard-modal,
.dceo-data-history-modal .modal-content {
    overflow: hidden;
    border: 1px solid var(--mrc-border) !important;
    border-radius: 7px !important;
    background: #11191f !important;
    color: var(--mrc-text) !important;
    box-shadow: 0 18px 60px rgba(0, 0, 0, .55);
}

.dceo-standard-modal .modal-header,
.dceo-data-history-modal .modal-header {
    border-color: #2d3944 !important;
    background: var(--mrc-card-bg) !important;
    padding: .9rem 1rem;
}

.dceo-standard-modal .modal-title,
.dceo-data-history-modal .modal-title {
    color: #fff !important;
    font-size: 1rem;
    font-weight: 800;
}

.dceo-standard-modal .modal-body,
.dceo-data-history-modal .modal-body {
    background: #11191f !important;
    padding: 1rem;
}

.dceo-standard-modal .modal-footer,
.dceo-data-history-modal .modal-footer {
    border-color: #2d3944 !important;
    background: var(--mrc-card-bg) !important;
}

.dceo-standard-modal .btn-close,
.dceo-data-history-modal .btn-close {
    filter: invert(1);
}

.dceo-standard-modal .form-control,
.dceo-standard-modal .form-select,
.dceo-data-standard .form-control,
.dceo-data-standard .form-select {
    border: 1px solid var(--mrc-border);
    background: #11191f;
    color: var(--mrc-text);
}

.dceo-standard-modal .form-control:focus,
.dceo-standard-modal .form-select:focus,
.dceo-data-standard .form-control:focus,
.dceo-data-standard .form-select:focus {
    border-color: var(--mrc-purple);
    box-shadow: 0 0 0 2px rgba(119, 93, 208, .18);
}

/* DCEO data-management area */
.dceo-data-standard {
    min-height: 100%;
    padding-block: 1rem;
    background: var(--mrc-page-bg);
    color: var(--mrc-text);
}

.dceo-data-standard .sidebar-card,
.dceo-data-standard .dceo-data-shell,
.dceo-data-standard .dceo-data-body,
.dceo-data-standard .dceo-data-body > .row,
.dceo-data-standard .dceo-data-body .card,
.dceo-data-standard .dceo-data-body .card-body {
    border-color: var(--mrc-border-soft) !important;
    background: var(--mrc-card-bg) !important;
}

.dceo-data-standard .sidebar-card,
.dceo-data-standard .dceo-data-shell,
.dceo-data-standard .dceo-data-body .card {
    border: 1px solid var(--mrc-border-soft) !important;
    border-radius: 7px !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}

.dceo-data-standard .card-header-module {
    height: 92px;
    border-color: var(--mrc-border) !important;
    border-radius: 7px 7px 0 0;
}

.dceo-data-standard .card-header-module::after {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(90deg, rgba(12, 17, 21, .88), rgba(12, 17, 21, .38));
}

.dceo-data-standard .card-header-module .content {
    z-index: 1;
}

.dceo-data-standard .card-module .content span.material-symbols-outlined,
.dceo-data-standard .card-title {
    color: #11b286 !important;
}

.dceo-data-standard hr.white-line {
    border-color: var(--mrc-border) !important;
}

.dceo-data-standard .btn-yellow,
.dceo-data-standard .button-submit {
    border: 1px solid var(--mrc-yellow) !important;
    border-radius: 5px;
    background: var(--mrc-yellow) !important;
    color: #11191f !important;
    font-weight: 800;
}

.dceo-data-standard a.text-decoration-underline {
    color: var(--mrc-cyan) !important;
}

.dceo-data-standard .btn-outline-light,
.dceo-standard-modal .btn-secondary,
.dceo-data-history-modal .modal-footer .btn {
    border: 1px solid var(--mrc-border) !important;
    border-radius: 5px;
    background: #171f25 !important;
    color: var(--mrc-text) !important;
}

.dceo-data-standard .btn-outline-light:hover,
.dceo-standard-modal .btn-secondary:hover,
.dceo-data-history-modal .modal-footer .btn:hover {
    border-color: #647180 !important;
    background: var(--mrc-header-bg) !important;
    color: #fff !important;
}

.dceo-data-standard .menu li {
    border-radius: 5px;
    color: #c5d0da;
}

.dceo-data-standard .menu li:hover {
    background: var(--mrc-header-bg);
    color: #fff;
}

.dceo-data-standard .menu li.active {
    background: rgba(17, 178, 134, .18);
    color: #fff;
}

.dceo-data-standard .menu li.active i {
    color: #11b286;
}

@media (max-width: 991.98px) {
    .dceo-standard .dceo-primary-toolbar {
        align-items: stretch !important;
        flex-direction: column;
    }

    .dceo-standard .btn-container {
        width: 100%;
        margin-left: 0 !important;
    }

    .dceo-standard .btn-download {
        width: 100%;
    }

    .dceo-standard .dceo-section-tabs,
    .dceo-standard .btn-group-child {
        flex-wrap: nowrap;
    }
}

@media (max-width: 767.98px) {
    .dceo-standard > .container-xl {
        padding-inline: 8px;
    }

    .dceo-standard .card-body,
    .dceo-standard-modal .modal-body {
        padding: .75rem;
    }

    .dceo-data-standard .dceo-data-body > .row {
        padding: 8px !important;
    }
}
