/**
 * Shared PCAD interface styles.
 *
 * Colors and typography belong in pcad-themes.css. This file holds page and
 * component layout that is shared or being migrated out of page templates.
 */

/* Open Project */

.project-hero,
.catalog-hero,
.parts-hero,
.breakdown-hero,
.task-hero,
.price-hero {
    background: linear-gradient(120deg, var(--pcad-primary) 0%, var(--pcad-primary-mid) 58%, var(--pcad-primary-light) 100%);
    border-radius: 1rem;
    box-shadow: 0 .75rem 2rem rgba(0, 63, 73, .2);
    color: #fff;
    overflow: hidden;
    padding: 1.75rem 2rem;
    position: relative;
}

.project-hero::after,
.catalog-hero::after,
.parts-hero::after,
.breakdown-hero::after,
.task-hero::after,
.price-hero::after {
    border: 2rem solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    content: '';
    height: 11rem;
    position: absolute;
    right: -2rem;
    top: -4rem;
    width: 11rem;
}

.project-stage-nav .btn {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .55);
    color: #fff;
}

.project-stage-nav .btn.active-stage {
    background: var(--pcad-action);
    border-color: var(--pcad-action);
    color: #17202a;
}

.project-panel,
.project-onboarding,
.status-panel,
.purge-panel,
.task-panel,
.price-panel,
.customer-panel,
.city-panel,
.user-panel {
    background: #fff;
    border: 1px solid #dfe7ea;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    padding-bottom: 0;
    padding-top: 0;
}

.project-panel {
    border-top: 6px solid var(--pcad-primary-light);
}

.project-panel.row {
    margin-left: 0;
    margin-right: 0;
}

.project-panel .form-select,
.project-panel .form-control {
    border: 2px solid #d5dfe2;
    min-height: 3.1rem;
}

.project-direct-form .form-inline-label-input-submit {
    align-items: end;
    display: grid;
    gap: .6rem;
    grid-template-columns: 1fr auto;
}

.project-direct-form label {
    grid-column: 1 / -1;
}

.project-direct-form .form-group,
.project-direct-form .form-control {
    width: 100% !important;
}

.project-direct-form .btn-input-inline {
    margin: 0 !important;
    position: static !important;
    width: auto !important;
}

.project-create {
    background: linear-gradient(120deg, #fff9e8, #fff);
    border: 1px solid #f2d783;
    border-left: 6px solid var(--pcad-action);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(80, 65, 20, .1);
    margin-bottom: 2rem !important;
    padding: 1.25rem 1.5rem;
}

.project-finished {
    background: linear-gradient(120deg, #effafb, #fff);
    border: 1px solid #cfe3e6;
    border-left: 6px solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(0, 63, 73, .08);
    padding: 1.25rem 1.5rem;
}

.project-locked {
    background: #fff;
    border: 1px solid #cfe3e6;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(0, 63, 73, .1);
    margin-top: 1.5rem;
    overflow: hidden;
}

.project-locked-header {
    align-items: center;
    background: var(--pcad-primary);
    color: #fff;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1rem 1.5rem;
}

.project-locked-header p {
    color: rgba(255, 255, 255, .78);
}

.project-locked-list {
    border-radius: 0;
}

.project-locked-list .list-group-item {
    border-left: 0;
    border-right: 0;
    padding: 1rem 1.5rem;
}

.project-locked-list .list-group-item:last-child {
    border-bottom: 0;
}

.project-guide-step,
.catalog-guide-step,
.onboarding-step {
    background: #f7fafb;
    border: 1px solid #e1e8ea;
    border-radius: .8rem;
    height: 100%;
    padding: 1rem;
}

.project-guide-step p,
.catalog-guide-step p,
.onboarding-step p {
    color: #212529;
}

.project-guide-number,
.catalog-guide-number,
.onboarding-number {
    align-items: center;
    background: var(--pcad-primary-light);
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    flex: 0 0 2rem;
    font-weight: 800;
    height: 2rem;
    justify-content: center;
    width: 2rem;
}

/* Project Status Workflow */

.status-center,
.purge-center,
.customer-center,
.city-center,
.user-center {
    margin: 2rem auto 4rem;
    max-width: 1320px;
}

.status-hero,
.purge-hero,
.customer-hero,
.city-hero,
.user-hero {
    background: linear-gradient(120deg, var(--pcad-primary) 0%, var(--pcad-primary-mid) 58%, var(--pcad-primary-light) 100%);
    border-radius: 1rem;
    box-shadow: 0 .75rem 2rem rgba(0, 63, 73, .2);
    color: #fff;
    overflow: hidden;
    padding: 2rem 2.25rem;
    position: relative;
}

.status-hero::after,
.purge-hero::after,
.customer-hero::after,
.city-hero::after,
.user-hero::after {
    border: 28px solid rgba(255, 255, 255, .11);
    border-radius: 50%;
    content: '';
    height: 170px;
    position: absolute;
    right: -22px;
    top: -58px;
    width: 170px;
}

.status-eyebrow,
.purge-eyebrow {
    background: var(--pcad-action);
    border-radius: 999px;
    color: #111827;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    margin-bottom: .8rem;
    padding: .22rem .7rem;
}

.status-hero h1,
.purge-hero h1,
.customer-hero h1,
.city-hero h1,
.user-hero h1 {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 800;
    margin: 0 0 .45rem;
}

.status-hero p,
.purge-hero p,
.customer-hero p,
.city-hero p,
.user-hero p {
    color: rgba(255, 255, 255, .82);
    font-size: 1.05rem;
    margin: 0;
}

.status-help {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: .85rem;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
}

.status-help-body {
    color: #111827;
}

.status-help-body ol {
    margin: 0;
    padding-left: 1.25rem;
}

.status-panel,
.purge-panel {
    border-top: 6px solid var(--pcad-primary-light);
    margin-top: 1.5rem;
    padding: 1.75rem 2rem;
}

.status-panel h2,
.purge-panel h2 {
    color: #111827;
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0 0 .25rem;
}

.status-panel-copy,
.purge-panel-copy {
    color: #6b7280;
    margin-bottom: 1.25rem;
}

.status-form-row {
    margin-left: 0;
    margin-right: 0;
}

.status-form-row > [class*='col-'] {
    padding-left: .55rem;
    padding-right: .55rem;
}

.status-form-row > [class*='col-']:first-child {
    padding-left: 0;
}

.status-form-row > [class*='col-']:last-child {
    padding-right: 0;
}

.status-panel .form-select,
.status-panel .form-control {
    min-height: 48px;
}

.status-step-label {
    align-items: center;
    color: #374151;
    display: flex;
    font-weight: 700;
    gap: .5rem;
}

.status-step {
    background: var(--pcad-action);
    border-radius: 50%;
    color: #111827;
    display: inline-grid;
    font-size: .75rem;
    height: 1.55rem;
    place-items: center;
    width: 1.55rem;
}

.direct-project-form {
    align-items: end;
    display: flex;
    gap: .75rem;
    max-width: 620px;
}

.direct-project-field {
    flex: 1 1 auto;
}

.direct-project-form .btn {
    min-height: 48px;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

@media (max-width: 767.98px) {
    .status-center,
    .purge-center,
    .customer-center,
    .city-center,
    .user-center {
        margin-top: 1rem;
    }

    .status-hero,
    .status-panel,
    .purge-hero,
    .purge-panel,
    .customer-hero,
    .customer-panel,
    .city-hero,
    .city-panel,
    .user-hero,
    .user-panel {
        padding: 1.35rem;
    }

    .status-form-row > [class*='col-'] {
        margin-bottom: 1rem;
        padding: 0;
    }

    .direct-project-form {
        display: block;
    }

    .direct-project-form .btn {
        margin-top: .75rem;
        width: 100%;
    }
}

/* System Guide */

.system-guide-center {
    margin: 2rem auto 4rem;
    max-width: 1320px;
}

.system-guide-hero {
    background: linear-gradient(120deg, var(--pcad-primary) 0%, var(--pcad-primary-mid) 58%, var(--pcad-primary-light) 100%);
    border-radius: 1rem;
    box-shadow: 0 .75rem 2rem rgba(0, 63, 73, .2);
    color: #fff;
    overflow: hidden;
    padding: 2.25rem 2.5rem;
    position: relative;
}

.system-guide-hero::after {
    border: 2rem solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    content: '';
    height: 13rem;
    position: absolute;
    right: -2rem;
    top: -5rem;
    width: 13rem;
}

.system-guide-hero-content {
    max-width: 850px;
    position: relative;
    z-index: 1;
}

.system-guide-hero h1 {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 800;
    margin: 0 0 .65rem;
}

.system-guide-hero p {
    color: rgba(255, 255, 255, .84);
    font-size: 1.1rem;
    margin: 0;
}

.system-guide-intro {
    align-items: center;
    background: #fff;
    border: 1px solid #dfe7ea;
    border-left: 6px solid var(--pcad-action);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    margin-top: 1.5rem;
    padding: 1.5rem 1.75rem;
}

.system-guide-kicker {
    color: var(--pcad-primary-light);
    display: block;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: .35rem;
    text-transform: uppercase;
}

.system-guide-note {
    align-items: flex-start;
    background: #fff9e8;
    border: 1px solid #f2d783;
    border-radius: .75rem;
    display: flex;
    flex: 0 0 min(100%, 390px);
    gap: .65rem;
    padding: .9rem 1rem;
}

.system-guide-note i {
    color: #8a6500;
    margin-top: .15rem;
}

.system-guide-flow {
    align-items: stretch;
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(11, auto);
    margin: 1.5rem 0 2.5rem;
}

.system-guide-flow-step {
    align-items: center;
    background: #fff;
    border: 1px solid #dfe7ea;
    border-radius: .85rem;
    color: #111827;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 8rem;
    padding: 1rem .75rem;
    text-align: center;
    text-decoration: none;
    transition: box-shadow .2s ease, transform .2s ease;
}

.system-guide-flow-step:hover,
.system-guide-flow-step:focus {
    box-shadow: 0 .6rem 1.4rem rgba(32, 52, 58, .15);
    color: var(--pcad-primary);
    transform: translateY(-2px);
}

.system-guide-flow-step span {
    align-items: center;
    background: var(--pcad-action);
    border-radius: 50%;
    color: #111827;
    display: inline-flex;
    font-weight: 800;
    height: 2rem;
    justify-content: center;
    margin-bottom: .55rem;
    width: 2rem;
}

.system-guide-flow-step strong {
    font-size: 1rem;
}

.system-guide-flow-step small {
    color: #6b7280;
    margin-top: .25rem;
}

.system-guide-flow-arrow {
    align-self: center;
    color: var(--pcad-primary-light);
}

.system-guide-section-heading {
    align-items: end;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.system-guide-section-heading--spaced {
    margin-top: 3rem;
}

.system-guide-center .text-gray,
.system-guide-section-heading > span {
    color: #26343b !important;
    font-weight: 600;
}

.system-guide-card {
    background: #fff;
    border: 1px solid #dfe7ea;
    border-top: 5px solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1.5rem;
}

.system-guide-card-icon {
    align-items: center;
    background: #effafb;
    border-radius: .8rem;
    color: var(--pcad-primary-light);
    display: flex;
    font-size: 1.3rem;
    height: 3rem;
    justify-content: center;
    margin-bottom: 1rem;
    width: 3rem;
}

.system-guide-card h3 {
    font-size: 1.2rem;
    font-weight: 800;
}

.system-guide-card p {
    color: #26343b;
    font-size: 1.025rem;
    font-weight: 600;
    line-height: 1.55;
}

.system-guide-card a {
    background: #effafb;
    border: 1px solid #cfe3e6;
    border-radius: 999px;
    color: var(--pcad-primary);
    font-size: .8rem;
    font-weight: 800;
    padding: .35rem .7rem;
    text-decoration: none;
}

.system-guide-card a:hover,
.system-guide-card a:focus {
    background: var(--pcad-action);
    border-color: var(--pcad-action);
    color: #111827;
}

.system-guide-card-topics {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.system-guide-card-topics span {
    background: #effafb;
    border: 1px solid #cfe3e6;
    border-radius: 999px;
    color: var(--pcad-primary);
    font-size: .8rem;
    font-weight: 800;
    padding: .35rem .7rem;
}

.system-guide-card .system-guide-card-button {
    align-items: center;
    align-self: flex-start;
    background: var(--pcad-action);
    border-color: var(--pcad-action);
    border-radius: .55rem;
    color: #111827;
    display: inline-flex;
    gap: .55rem;
    margin-top: 1rem;
    padding: .65rem .9rem;
}

.system-guide-card .system-guide-card-button:hover,
.system-guide-card .system-guide-card-button:focus {
    background: #e0a800;
    border-color: #e0a800;
    color: #111827;
}

.database-guide-card-grid > [class*="col-"] {
    display: flex;
}

.system-guide-card--relationship {
    min-height: 23rem;
    width: 100%;
}

.database-guide-diagram {
    background: #fff;
    border: 1px solid #dfe7ea;
    border-top: 5px solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    margin-bottom: 1.5rem;
    padding: 1.75rem;
}

.database-guide-hero-actions {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.database-guide-hero .system-guide-hero-content {
    max-width: none;
}

.database-guide-hero p {
    max-width: 850px;
}

.database-guide-intro {
    margin-bottom: 1.5rem;
}

.database-guide-diagram-heading {
    align-items: end;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}

.database-guide-powered {
    color: #6b7280;
    font-size: .85rem;
}

.database-guide-mermaid {
    align-items: center;
    background: #f8fbfc;
    border: 1px solid #e2ebed;
    border-radius: .8rem;
    display: flex;
    justify-content: center;
    min-height: 27rem;
    overflow-x: auto;
    padding: 1.25rem;
}

.database-guide-mermaid svg {
    height: auto;
    max-width: 60rem;
    min-width: 56rem;
    width: 82%;
}

.database-guide-mermaid--estimating {
    min-height: 30rem;
}

.database-guide-mermaid--estimating svg {
    max-width: 76rem !important;
    min-width: 0;
    width: 96% !important;
}

.database-guide-mermaid--catalog {
    min-height: 30rem;
}

.database-guide-mermaid--catalog svg {
    max-width: 100% !important;
    min-width: 0;
    width: 46rem !important;
}

.database-guide-mermaid--equipment svg {
    max-width: 76rem;
    width: 96%;
}

.database-guide-mermaid--calculation svg {
    max-width: 76rem;
    min-width: 0;
    width: 96%;
}

.database-guide-mermaid--task-inputs svg {
    max-width: 76rem;
    min-width: 0;
    width: 96%;
}

.formula-example-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: minmax(0, 1fr);
}

.formula-example-card {
    background: #fff;
    border: 1px solid #dfe7ea;
    border-top: 5px solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1.25rem;
}

.formula-example-card-heading span {
    color: var(--pcad-primary-light);
    font-size: .8rem;
    font-weight: 800;
    text-transform: uppercase;
}

.formula-example-card-heading h3 {
    font-size: 1.3rem;
    font-weight: 800;
    margin: .25rem 0 0;
}

.formula-example-card-heading p {
    color: #26343b;
    font-weight: 600;
    margin: .2rem 0 1rem;
}

.formula-example-mermaid {
    align-items: center;
    background: #f8fbfc;
    border: 1px solid #e2ebed;
    border-radius: .8rem;
    display: flex;
    flex: 1;
    justify-content: center;
    min-height: 28rem;
    overflow: hidden;
    padding: .75rem;
}

.formula-example-mermaid svg {
    height: auto;
    max-height: 26rem;
    max-width: 76rem !important;
    min-width: 0;
    width: 96% !important;
}

.edit-task-modal {
    overflow: hidden;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 1.5rem 4rem rgba(18, 35, 49, .28);
}

.add-task-modal {
    overflow: hidden;
    border: 0;
}

.task-version-modal {
    overflow: hidden;
    border: 0;
}

.task-version-modal-body {
    padding: 1.25rem 1.5rem 2rem;
    overflow-x: hidden;
    background: #eef1f4;
}

.task-version-definition-card #taskVersionDescriptionLabel {
    margin-bottom: .2rem;
    color: #20272d;
}

.task-version-definition-card #taskVersionDateLastUpdated {
    margin-bottom: .65rem;
    color: #68737c;
}

.task-version-formula-description,
.task-version-mermaid-card {
    min-height: 14rem;
}

.task-version-formula-description {
    color: #34414b;
    line-height: 1.45;
}

.task-version-mermaid-card .edit-task-mermaid {
    min-height: 10rem;
    align-items: center;
}

.task-version-mermaid-card .edit-task-mermaid svg {
    max-height: 12rem;
}

.task-version-mermaid-card .node rect,
.task-version-mermaid-card .node circle,
.task-version-mermaid-card .node ellipse {
    fill: #fff !important;
    stroke: #168493 !important;
    stroke-width: 2px !important;
}

.task-version-mermaid-card .node polygon,
.task-version-mermaid-card .node path {
    fill: #fff4d6 !important;
    stroke: #b97a00 !important;
    stroke-width: 2px !important;
}

.task-version-mermaid-card .flowchart-link {
    stroke: #52717a !important;
    stroke-width: 2px !important;
}

.task-version-configuration-cards > [class*="col-"] {
    display: flex;
}

.task-version-configuration-card {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 1rem;
    padding: 1.15rem;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

.task-version-configuration-card-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #56616b;
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.task-version-configuration-card .form-group-100 {
    position: relative;
    margin-bottom: 0;
}

.task-version-configuration-card .autocomplete-items {
    top: 100%;
    right: 0;
    left: 0;
    width: 100% !important;
}

.task-version-configuration-card .autocomplete-items.d-none {
    display: none !important;
}

#addBkItemModal .autocomplete {
    position: relative;
}

#addBkItemModal .autocomplete-items {
    top: 100%;
    right: 0;
    left: 0;
    width: 100% !important;
}

#addBkItemModal .autocomplete-items.d-none {
    display: none !important;
    border: 0;
    box-shadow: none;
}

#addBkItemModal .autocomplete-items:empty {
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

#addBkItemModal .autocomplete-items[hidden] {
    display: none !important;
}

#addBkItemModal .add-part-container {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: minmax(0, 2fr) minmax(25rem, 1fr);
    gap: 1rem;
    align-items: start;
}

#addBkItemModal .add-part-progress {
    grid-column: 1 / -1;
}

#addBkItemModal .add-breakdown-loading {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
    padding: 1rem 1.15rem;
    border: 1px solid #9edce4;
    border-left: .3rem solid #0097a7;
    border-radius: .85rem;
    background: #eef9fb;
    color: #17323a;
    box-shadow: 0 .35rem .9rem rgba(0, 87, 97, .12);
}

#addBkItemModal .add-breakdown-loading.d-none {
    display: none;
}

#addBkItemModal .add-breakdown-loading .spinner-border {
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    border-width: .25rem;
    color: #00a9c0 !important;
}

#addBkItemModal .add-breakdown-loading strong,
#addBkItemModal .add-breakdown-loading span {
    display: block;
}

#addBkItemModal .add-breakdown-loading strong {
    margin-bottom: .15rem;
    font-size: 1rem;
}

#addBkItemModal .add-breakdown-loading span {
    color: #5e6e78;
    font-size: .875rem;
}

#editBkItemModal .edit-breakdown-container {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: minmax(0, 2fr) minmax(25rem, 1fr);
    gap: 1rem;
    align-items: start;
}

#editBkItemModal .add-part-progress { grid-column: 1 / -1; }
#editBkItemModal .edit-breakdown-intro,
#editBkItemModal .edit-breakdown-container > .row:not(.edit-breakdown-intro) { grid-column: 1; margin: 0 !important; }
#editBkItemModal .edit-breakdown-section-card {
    padding: 1.25rem !important;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

#editBkItemModal .edit-breakdown-section-card > h5 {
    color: #56616b;
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

#editBkItemModal .edit-breakdown-programming-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

#editBkItemModal .edit-breakdown-programming-grid > h5 {
    grid-column: 1 / -1;
    margin: 0;
}

#editBkItemModal .edit-breakdown-programming-grid > .breakdown-program-field,
#editBkItemModal .edit-breakdown-programming-grid > .edit-breakdown-routing-column {
    width: auto;
    padding: 0;
}

#editBkItemModal .edit-breakdown-routing-column {
    grid-column: 4;
    grid-row: 2 / span 2;
}

#editBkItemModal .edit-breakdown-routing-column .breakdown-routing-guide {
    grid-column: auto;
    grid-row: auto;
}

#editBkItemModal .edit-breakdown-mermaid-card { grid-column: 2; grid-row: 3 / span 5; }
#editBkItemModal .edit-breakdown-lower-cards > [class*="col-"] { display: flex; }
#editBkItemModal .edit-breakdown-lower-cards .add-part-section-card { width: 100%; }
#editBkItemModal .autocomplete { position: relative; }

#removeBkItemModal .retire-breakdown-container { max-width: 76rem; }
#removeBkItemModal .retire-breakdown-table { border: 1px solid #d3dde3; border-radius: .75rem; overflow: hidden; }
#removeBkItemModal .retire-breakdown-table thead th { padding: .85rem 1rem; border: 0; background: #e7edf0; }
#removeBkItemModal .retire-breakdown-table tbody td { padding: 1rem; }
#removeBkItemModal .retire-breakdown-change-list li::marker { color: #d58f00; }
#removeBkItemModal .retire-breakdown-preserve-list li::marker { color: #288d58; }
#removeBkItemModal .retire-breakdown-change-list li,
#removeBkItemModal .retire-breakdown-preserve-list li { margin-bottom: .6rem; color: #344654; }
#removeBkItemModal .retire-breakdown-confirm-card { border-left: .3rem solid #0097a7; }
#removeBkItemModal .add-breakdown-loading { display: flex; align-items: center; gap: 1rem; margin-top: 1rem; padding: 1rem 1.15rem; border: 1px solid #9edce4; border-radius: .85rem; background: #eef9fb; }
#removeBkItemModal .add-breakdown-loading.d-none { display: none; }
#removeBkItemModal .add-breakdown-loading .spinner-border { width: 2.5rem; height: 2.5rem; color: #00a9c0 !important; }
#removeBkItemModal .add-breakdown-loading strong,
#removeBkItemModal .add-breakdown-loading span { display: block; }
#removeBkItemModal .add-breakdown-loading span { color: #5e6e78; font-size: .875rem; }
#editBkItemModal .autocomplete-items { top: 100%; right: 0; left: 0; width: 100% !important; }
#editBkItemModal .autocomplete-items.d-none,
#editBkItemModal .autocomplete-items:empty,
#editBkItemModal .autocomplete-items[hidden] { display: none !important; border: 0 !important; box-shadow: none !important; }

#editBkItemModal .add-breakdown-loading {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
    padding: 1rem 1.15rem;
    border: 1px solid #9edce4;
    border-left: .3rem solid #0097a7;
    border-radius: .85rem;
    background: #eef9fb;
    color: #17323a;
    box-shadow: 0 .35rem .9rem rgba(0, 87, 97, .12);
}
#editBkItemModal .add-breakdown-loading.d-none { display: none; }
#editBkItemModal .add-breakdown-loading .spinner-border { width: 2.5rem; height: 2.5rem; flex: 0 0 auto; border-width: .25rem; color: #00a9c0 !important; }
#editBkItemModal .add-breakdown-loading strong,
#editBkItemModal .add-breakdown-loading span { display: block; }
#editBkItemModal .add-breakdown-loading span { color: #5e6e78; font-size: .875rem; }

@media (max-width: 1199.98px) {
    #editBkItemModal .edit-breakdown-container { display: block; }
    #editBkItemModal .edit-breakdown-container > * { margin-bottom: 1rem !important; }
    #editBkItemModal .edit-breakdown-mermaid-card { position: static; min-height: 26rem; }
    #editBkItemModal .edit-breakdown-programming-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #editBkItemModal .edit-breakdown-routing-column { grid-column: 1 / -1; grid-row: auto; }
}

.breakdown-programming-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.breakdown-program-field {
    min-width: 0;
}

.breakdown-routing-guide {
    padding: 1rem;
    border: 1px solid #c9dfe2;
    border-radius: .85rem;
    background: #f3fafb;
    grid-column: 4;
    grid-row: 1 / span 2;
}

.breakdown-routing-guide h6 {
    color: #56616b;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .035em;
}

.breakdown-routing-guide p {
    color: #53616d;
    font-size: .88rem;
    line-height: 1.45;
}

#addBkItemModal .add-breakdown-intro,
#addBkItemModal .add-part-container > .add-part-section-card,
#addBkItemModal .add-part-container > .row:not(.add-breakdown-intro) {
    grid-column: 1;
    margin-bottom: 0 !important;
}

.add-breakdown-mermaid-card {
    display: flex;
    position: sticky;
    top: 1rem;
    min-height: 42rem;
    flex-direction: column;
    grid-column: 2;
    grid-row: 2 / span 5;
}

.add-breakdown-mermaid {
    display: flex;
    min-height: 34rem;
    flex: 1;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.add-breakdown-mermaid svg {
    width: 100% !important;
    max-width: 34rem;
    height: auto !important;
    max-height: 34rem;
}

@media (max-width: 1199.98px) {
    #addBkItemModal .add-part-container {
        display: block;
    }

    #addBkItemModal .add-part-container > * {
        margin-bottom: 1rem !important;
    }

    .add-breakdown-mermaid-card {
        position: static;
        min-height: 26rem;
    }

    .add-breakdown-mermaid {
        min-height: 20rem;
    }

    .breakdown-programming-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .breakdown-routing-guide {
        grid-column: 1 / -1;
        grid-row: auto;
    }
}

@media (max-width: 575.98px) {
    .breakdown-programming-grid {
        grid-template-columns: 1fr;
    }
}

.task-version-legacy-config {
    display: none;
}

.task-version-list-card {
    overflow: hidden;
}

#taskVersionModal .form-label {
    color: #59636d;
    font-size: .9rem;
    font-weight: 650;
}

#taskVersionModal .form-control,
#taskVersionModal .form-select {
    min-height: 3rem;
    border-color: #d4dbe1;
    border-radius: .7rem;
    background-color: #fafbfc;
    box-shadow: inset 0 1px 2px rgba(18, 35, 49, .035);
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

#taskVersionModal .form-control:focus,
#taskVersionModal .form-select:focus {
    border-color: #2684ff;
    background-color: #fff;
    box-shadow: 0 0 0 .2rem rgba(38, 132, 255, .16);
}

@media (min-width: 1200px) {
    .task-version-configuration-cards > .task-version-configuration-column {
        width: 20%;
    }
}

@media (max-width: 1199.98px) {
    .task-version-formula-description,
    .task-version-mermaid-card {
        min-height: 11rem;
    }
}

.edit-task-modal-body {
    padding: 1.25rem 1.5rem 2rem;
    background: #eef1f4;
}

.add-task-modal-body {
    padding: 1.25rem 1.5rem 2rem;
    background: #eef1f4;
    overflow-x: hidden;
}

.add-task-breakdown-card {
    display: flex;
    gap: 1rem;
    flex-direction: column;
    padding: 1.15rem;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

.add-task-breakdown-card .form-group-100 {
    position: relative;
    margin-bottom: 0;
}

.add-task-breakdown-card .autocomplete-items {
    top: 100%;
    right: 0;
    left: 0;
    width: 100% !important;
}

.add-task-breakdown-card .autocomplete-items.d-none {
    display: none !important;
}

.add-task-breakdown-card-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #56616b;
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.add-task-mermaid-card .edit-task-mermaid {
    min-height: 22rem;
}

#addTaskFormulaDescription {
    color: #34414b;
    line-height: 1.45;
}

.add-task-mermaid-card .edit-task-mermaid svg {
    max-height: 22rem;
}

.add-task-mermaid-card .node rect,
.add-task-mermaid-card .node circle,
.add-task-mermaid-card .node ellipse {
    fill: #fff !important;
    stroke: #168493 !important;
    stroke-width: 2px !important;
}

.add-task-mermaid-card .node polygon,
.add-task-mermaid-card .node path {
    fill: #fff4d6 !important;
    stroke: #b97a00 !important;
    stroke-width: 2px !important;
}

.add-task-mermaid-card .nodeLabel,
.add-task-mermaid-card .nodeLabel p,
.add-task-mermaid-card .edgeLabel,
.add-task-mermaid-card .edgeLabel p {
    color: #172b35 !important;
    font-weight: 700 !important;
}

.add-task-mermaid-card .flowchart-link {
    stroke: #52717a !important;
    stroke-width: 2px !important;
}

.add-task-mermaid-card marker path {
    fill: #52717a !important;
    stroke: #52717a !important;
}

.edit-task-flow-steps {
    padding: .15rem .15rem .35rem;
}

.edit-task-section-card {
    padding: 1.25rem;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

#editTaskModal .form-label {
    color: #59636d;
    font-size: .9rem;
    font-weight: 650;
}

#addTaskModal .form-label {
    color: #59636d;
    font-size: .9rem;
    font-weight: 650;
}

#editTaskModal .form-control,
#editTaskModal .form-select,
#addTaskModal .form-control,
#addTaskModal .form-select {
    min-height: 3rem;
    border-color: #d4dbe1;
    border-radius: .7rem;
    background-color: #fafbfc;
    box-shadow: inset 0 1px 2px rgba(18, 35, 49, .035);
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

#editTaskModal .form-control:focus,
#editTaskModal .form-select:focus,
#addTaskModal .form-control:focus,
#addTaskModal .form-select:focus {
    border-color: #2684ff;
    background-color: #fff;
    box-shadow: 0 0 0 .2rem rgba(38, 132, 255, .16);
}

#editTaskModal .form-switch .form-check-input {
    width: 2.7rem;
    height: 1.45rem;
    margin-top: .05rem;
}

.edit-task-mermaid-card {
    min-height: 11rem;
    padding: .9rem 1rem;
    border: 1px solid #d9e5e8;
    border-radius: .85rem;
    background: linear-gradient(145deg, #f8fbfc 0%, #eef5f6 100%);
}

.edit-task-mermaid {
    display: flex;
    min-height: 7.5rem;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
}

.edit-task-mermaid svg {
    width: 100% !important;
    max-width: 100% !important;
    height: auto;
    max-height: 9rem;
}

/* Keep the Edit Task flow colors consistent with the Add Task preview. */
#editTaskModal .edit-task-mermaid .node rect,
#editTaskModal .edit-task-mermaid .node circle,
#editTaskModal .edit-task-mermaid .node ellipse {
    fill: #fff !important;
    stroke: #168493 !important;
    stroke-width: 2px !important;
}

#editTaskModal .edit-task-mermaid .node polygon,
#editTaskModal .edit-task-mermaid .node path {
    fill: #fff4d6 !important;
    stroke: #b97a00 !important;
    stroke-width: 2px !important;
}

#editTaskModal .edit-task-mermaid .nodeLabel,
#editTaskModal .edit-task-mermaid .nodeLabel p,
#editTaskModal .edit-task-mermaid .edgeLabel,
#editTaskModal .edit-task-mermaid .edgeLabel p {
    color: #172b35 !important;
    font-weight: 700 !important;
}

#editTaskModal .edit-task-mermaid .edgeLabel rect,
#editTaskModal .edit-task-mermaid .labelBkg {
    fill: #f3f8f9 !important;
    opacity: .95 !important;
}

#editTaskModal .edit-task-mermaid .flowchart-link {
    stroke: #52717a !important;
    stroke-width: 2px !important;
}

#editTaskModal .edit-task-mermaid marker path {
    fill: #52717a !important;
    stroke: #52717a !important;
}

.edit-task-preview-card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 1rem;
    border: 1px solid #dce3e8;
    border-radius: .85rem;
    background: #f7f9fa;
}

.edit-task-modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    padding: .85rem 1rem;
    border-top: 1px solid #e1e5e8;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
    backdrop-filter: blur(.6rem);
}

.edit-task-modal-footer .btn {
    min-height: 2.75rem;
    padding-right: 1.15rem;
    padding-left: 1.15rem;
    border-radius: .65rem;
}

.edit-task-modal-footer .btn-warning {
    box-shadow: 0 .2rem .55rem rgba(255, 193, 7, .3);
}

.add-part-modal {
    overflow: hidden;
    border: 0;
}

.add-part-modal-body {
    padding: 1.25rem 1.5rem 2rem;
    overflow-x: hidden;
    background: #eef1f4;
}

.add-part-container {
    max-width: 86rem;
}

.add-part-flow-steps {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .15rem .15rem 1rem;
    color: #68737c;
}

.add-part-guide-card,
.add-part-result-card,
.add-part-section-card {
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

.add-part-guide-card,
.add-part-result-card {
    padding: 1rem 1.15rem;
}

.add-part-guide-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
}

.add-part-result-card {
    border-color: #cfe0e5;
    background: linear-gradient(145deg, #f8fbfc 0%, #eef5f6 100%);
}

.add-part-section-card {
    padding: 1.2rem;
}

.add-part-optional-details > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    cursor: pointer;
    list-style: none;
}

.add-part-optional-details > summary::-webkit-details-marker {
    display: none;
}

.add-part-optional-details > summary::after {
    content: "+";
    color: #168493;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.add-part-optional-details[open] > summary::after {
    content: "−";
}

.add-part-card-title {
    margin-bottom: .3rem;
    color: #56616b;
    font-size: .9rem;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.add-part-minimum-list {
    display: grid;
    min-width: 13rem;
    gap: .3rem;
    color: #68737c;
    font-size: .88rem;
    font-weight: 700;
}

.add-part-minimum-list .is-complete {
    color: #237a47;
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-label {
    color: #59636d;
    font-size: .9rem;
    font-weight: 650;
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-control,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-select {
    min-height: 3rem;
    border-color: #d4dbe1;
    border-radius: .7rem;
    background-color: #fafbfc;
    box-shadow: inset 0 1px 2px rgba(18, 35, 49, .035);
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-control:focus,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-select:focus {
    border-color: #2684ff;
    background-color: #fff;
    box-shadow: 0 0 0 .2rem rgba(38, 132, 255, .16);
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-control:disabled,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-select:disabled {
    border-color: #c9d0d6;
    background-color: #dfe4e8;
    color: #7a858e;
    box-shadow: none;
    cursor: not-allowed;
    opacity: 1;
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-group:has(.form-control:disabled) .form-label,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-group:has(.form-select:disabled) .form-label,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-group-100:has(.form-control:disabled) .form-label,
:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal) .form-group-100:has(.form-select:disabled) .form-label {
    color: #929ba3;
}

:is(#addPartModal, #editPartModal, #editPartGroupModal, #addSupplierModal, #removeSupplierModal, #setDefaultSupplierModal, #editVendorPartRecordsModal, #updateProjectCostModal) .modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    border-top: 1px solid #e1e5e8;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

.supplier-workflow-container {
    max-width: 72rem;
}

.supplier-workflow-table {
    overflow: hidden;
    border: 1px solid #d9e0e4;
    border-radius: .65rem;
    border-collapse: separate;
    border-spacing: 0;
}

.supplier-workflow-table thead th {
    padding: .7rem .8rem;
    border: 0;
    background: #003c44;
    color: #fff !important;
}

.supplier-workflow-table tbody td {
    padding: .75rem .8rem;
    border-color: #e1e7ea;
    background: #fff;
}

.supplier-empty-state {
    border-left: .3rem solid #168493;
}

.supplier-impact-list {
    display: grid;
    gap: .65rem;
    padding-left: 1.25rem;
    color: #394954;
}

.supplier-impact-list li::marker {
    color: #cc8600;
}

.supplier-impact-list-preserved li::marker {
    color: #278653;
}

.supplier-confirm-card {
    border-left: .3rem solid #168493;
}

.default-supplier-repair-card {
    border-left: .3rem solid #d59300;
}

.vendor-part-maintenance-note {
    border-left: .3rem solid #d59300;
}

.vendor-part-record-list {
    overflow: hidden;
    border: 1px solid #d6dfe4;
    border-radius: .75rem;
    background: #fff;
}

.vendor-part-record-list-title {
    margin: 0;
    padding: .8rem 1rem;
    background: #003c44;
    color: #fff;
    font-size: 1rem;
    font-weight: 750;
}

.vendor-part-record-list .list-group-item {
    padding: .9rem 1rem;
    border-color: #e1e7ea;
    background: #fff;
}

.vendor-part-record-list .form-check-input:disabled {
    opacity: .45;
    cursor: not-allowed;
}

#updateProjectCostModal .update-project-cost-shell {
    display: flex;
    max-height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: hidden;
}

#updateProjectCostModal .update-project-cost-dialog {
    width: min(96vw, 1480px);
    max-width: min(96vw, 1480px);
}

#updateProjectCostModal .update-project-cost-header {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto 2rem;
    gap: 1.5rem;
    min-height: 72px;
    padding: .85rem 1.5rem;
    align-items: center;
}

#updateProjectCostModal .update-project-cost-header .modal-title {
    align-self: center;
    margin: 0;
}

#updateProjectCostModal .update-project-cost-header .btn-close {
    margin: 0;
    filter: brightness(0) invert(1);
    opacity: .75;
}

#updateProjectCostModal .update-project-cost-scoreboard {
    display: grid;
    grid-template-columns: repeat(2, minmax(190px, auto));
    align-items: stretch;
}

#updateProjectCostModal .modal-header,
#updateProjectCostModal .modal-header span {
    color: #fff;
}

#updateProjectCostModal .scoreboard-keyValue-container {
    display: grid;
    gap: .15rem;
    min-width: 0;
    padding: .2rem 1rem;
    border-left: 1px solid rgba(255, 255, 255, .3);
    align-content: center;
}

#updateProjectCostModal .scoreboard-keyValue-key {
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: .04em;
    text-transform: uppercase;
    opacity: .82;
}

#updateProjectCostModal .scoreboard-keyValue-value {
    font-size: 1.2rem;
    line-height: 1.1;
}

#updateProjectCostModal .table-modal-sticky thead th {
    background: #003c44;
    color: #fff;
}

#updateProjectCostModal .update-project-cost-table {
    width: 100%;
    min-width: 920px;
    margin: 0;
    table-layout: fixed;
    border: 0;
}

#updateProjectCostModal .update-project-cost-table .cost-col-category { width: 14%; }
#updateProjectCostModal .update-project-cost-table .cost-col-sku { width: 14%; }
#updateProjectCostModal .update-project-cost-table .cost-col-description { width: 28%; }
#updateProjectCostModal .update-project-cost-table .cost-col-money { width: 13%; }
#updateProjectCostModal .update-project-cost-table .cost-col-time { width: 12%; }
#updateProjectCostModal .update-project-cost-table .cost-col-projects { width: 9%; }
#updateProjectCostModal .update-project-cost-table .cost-col-status { width: 10%; }

#updateProjectCostModal .update-project-cost-table th,
#updateProjectCostModal .update-project-cost-table td {
    padding: .85rem 1rem;
    vertical-align: middle;
}

#updateProjectCostModal .update-project-cost-table th span,
#updateProjectCostModal .update-project-cost-table td span,
#updateProjectCostModal .update-project-cost-table td button {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

#updateProjectCostModal .update-project-cost-table :is(th, td):nth-child(n+4) {
    text-align: right !important;
}

@media (max-width: 900px) {
    #updateProjectCostModal .update-project-cost-header {
        grid-template-columns: 1fr 2rem;
        gap: .75rem;
    }

    #updateProjectCostModal .update-project-cost-scoreboard {
        grid-column: 1 / -1;
        grid-row: 2;
        grid-template-columns: repeat(2, 1fr);
    }
}

#editPriceSpaModal .modal-dialog {
    width: min(94vw, 1240px);
    max-width: min(94vw, 1240px);
}

#editPriceSpaModal .edit-price-shell {
    display: flex;
    min-height: 0;
    max-height: 100%;
    flex-direction: column;
    overflow: hidden;
}

#editPriceSpaModal .modal-header .btn-close {
    filter: brightness(0) invert(1);
    opacity: .75;
}

#editPriceSpaModal .modal-body {
    min-height: 0;
}

#editPriceSpaModal .edit-price-container {
    width: 100%;
    max-width: none;
}

#editPriceSpaModal .add-part-guide-card {
    display: grid;
    grid-template-columns: 1fr;
    align-content: center;
}

#editPriceSpaModal .add-part-checklist {
    display: flex;
    gap: .65rem 1.5rem;
    margin: .85rem 0 0;
    padding: .85rem 0 0 1.2rem;
    border-top: 1px solid #e3e8eb;
    flex-wrap: wrap;
}

#editPriceSpaModal .add-part-checklist li {
    min-width: 8rem;
    white-space: nowrap;
}

#editPriceSpaModal .edit-price-metric {
    display: flex;
    height: 100%;
    min-height: 124px;
    padding: 1rem;
    border: 1px solid #d9e2e6;
    border-radius: .75rem;
    background: #f7fafb;
    flex-direction: column;
}

#editPriceSpaModal .edit-price-metric > span {
    color: #5d6974;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#editPriceSpaModal .edit-price-metric > strong {
    margin: .2rem 0;
    color: #1f2a33;
    font-size: 1.35rem;
}

#editPriceSpaModal .edit-price-metric > small {
    color: #68747f;
}

#editPriceSpaModal .edit-price-metric .btn {
    align-self: flex-start;
}

#editPriceSpaModal .edit-price-calculator {
    border-left: 4px solid #07879a;
}

#editPriceSpaModal .edit-price-progress {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: flex;
    gap: 1rem;
    background: rgba(238, 241, 244, .92);
    align-items: center;
    justify-content: center;
}

#editPriceSpaModal .edit-price-progress.d-none {
    display: none;
}

#editPriceSpaModal .modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    border-top: 1px solid #e1e5e8;
    background: #fff;
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

#movePartCatalogModal .move-part-catalog-dialog {
    width: min(94vw, 1240px);
    max-width: min(94vw, 1240px);
}

#movePartCatalogModal .move-part-catalog-shell {
    display: flex;
    min-height: 0;
    max-height: 100%;
    flex-direction: column;
    overflow: hidden;
}

#movePartCatalogModal .modal-header .btn-close {
    filter: brightness(0) invert(1);
    opacity: .75;
}

#movePartCatalogModal .modal-body {
    min-height: 0;
}

#movePartCatalogModal .move-part-catalog-container {
    width: 100%;
    max-width: none;
}

#movePartCatalogModal .add-part-guide-card {
    display: grid;
    grid-template-columns: 1fr;
}

#movePartCatalogModal .add-part-checklist {
    display: flex;
    gap: .65rem 1.5rem;
    margin: .85rem 0 0;
    padding: .85rem 0 0 1.2rem;
    border-top: 1px solid #e3e8eb;
    flex-wrap: wrap;
}

#movePartCatalogModal .add-part-checklist li {
    white-space: nowrap;
}

#movePartCatalogModal .move-catalog-impact-list {
    margin: .8rem 0;
    padding-left: 1.25rem;
}

#movePartCatalogModal .move-catalog-impact-list li {
    margin-bottom: .55rem;
}

#movePartCatalogModal .move-catalog-impact-list li::marker {
    color: #238b57;
}

#movePartCatalogModal .move-catalog-impact-list.caution li::marker {
    color: #d99000;
}

#movePartCatalogModal .move-catalog-confirm-card {
    border-left: 4px solid #d99000;
}

#movePartCatalogModal .move-catalog-progress {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: flex;
    gap: 1rem;
    background: rgba(238, 241, 244, .92);
    align-items: center;
    justify-content: center;
}

#movePartCatalogModal .move-catalog-progress.d-none {
    display: none;
}

#movePartCatalogModal .modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    border-top: 1px solid #e1e5e8;
    background: #fff;
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

#viewAssignedTaskModal .assigned-path-dialog {
    width: min(96vw, 1500px);
    max-width: min(96vw, 1500px);
}

#viewAssignedTaskModal .assigned-path-shell {
    display: flex;
    min-height: 0;
    max-height: 100%;
    flex-direction: column;
    overflow: hidden;
}

#viewAssignedTaskModal .modal-header .btn-close {
    filter: brightness(0) invert(1);
    opacity: .75;
}

#viewAssignedTaskModal .modal-body { min-height: 0; }
#viewAssignedTaskModal .assigned-path-container { width: 100%; max-width: none; }

#viewAssignedTaskModal .assigned-path-flow,
#viewAssignedTaskModal .assigned-path-route {
    display: flex;
    gap: .65rem;
    margin: .75rem 0;
    align-items: center;
    flex-wrap: wrap;
}

#viewAssignedTaskModal .assigned-path-flow span,
#viewAssignedTaskModal .assigned-path-route span {
    padding: .35rem .65rem;
    border: 1px solid #cfdce0;
    border-radius: .45rem;
    background: #f6f9fa;
    font-weight: 700;
}

#viewAssignedTaskModal .assigned-path-flow b,
#viewAssignedTaskModal .assigned-path-route b { color: #72808a; }

#viewAssignedTaskModal .assigned-path-loading,
#viewAssignedTaskModal .assigned-path-empty {
    display: flex;
    min-height: 9rem;
    gap: 1rem;
    border: 1px dashed #cbd7dc;
    border-radius: 1rem;
    background: rgba(255, 255, 255, .7);
    align-items: center;
    justify-content: center;
}

#viewAssignedTaskModal .assigned-path-overview {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

#viewAssignedTaskModal .assigned-path-overview > div {
    display: grid;
    gap: .15rem;
    padding: .75rem 1rem;
    border-left: 3px solid #07879a;
    background: #f5f8f9;
}

#viewAssignedTaskModal .assigned-path-overview span { color: #60707b; font-size: .78rem; font-weight: 800; text-transform: uppercase; }
#viewAssignedTaskModal .assigned-path-overview strong { font-size: 1.35rem; }

#viewAssignedTaskModal .assigned-path-card {
    margin-bottom: .75rem;
    border: 1px solid #d6e0e4;
    border-radius: .85rem;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 .15rem .45rem rgba(18, 35, 49, .06);
}

#viewAssignedTaskModal .assigned-path-card summary {
    display: flex;
    gap: 1rem;
    min-height: 58px;
    padding: .9rem 1rem;
    cursor: pointer;
    list-style: none;
    align-items: center;
    justify-content: space-between;
}

#viewAssignedTaskModal .assigned-path-card summary::-webkit-details-marker { display: none; }
#viewAssignedTaskModal .assigned-path-card[open] summary { border-bottom: 1px solid #e1e7ea; background: #f8fafb; }
#viewAssignedTaskModal .assigned-path-badges { display: flex; gap: .4rem; flex-wrap: wrap; }
#viewAssignedTaskModal .assigned-path-current { background: #d9f3e5; color: #12643d; }
#viewAssignedTaskModal .assigned-path-historical { background: #fff0cc; color: #7b5200; }
#viewAssignedTaskModal .assigned-path-card-body { padding: 1rem; }

#viewAssignedTaskModal .assigned-path-fields {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
}

#viewAssignedTaskModal .assigned-path-field {
    display: flex;
    min-height: 78px;
    padding: .7rem .8rem;
    border: 1px solid #e0e6e9;
    border-radius: .6rem;
    background: #fbfcfc;
    flex-direction: column;
}

#viewAssignedTaskModal .assigned-path-field > span { color: #66737d; font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
#viewAssignedTaskModal .assigned-path-field > strong { margin-top: .1rem; }
#viewAssignedTaskModal .assigned-path-field > small { margin-top: .2rem; color: #79858e; line-height: 1.25; }
#viewAssignedTaskModal .assigned-path-instructions { display: grid; gap: .25rem; margin-top: .75rem; padding: .8rem; border-left: 3px solid #07879a; background: #f3f8f9; }

#viewAssignedTaskModal .modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    background: #fff;
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

@media (max-width: 900px) {
    #viewAssignedTaskModal .assigned-path-overview,
    #viewAssignedTaskModal .assigned-path-fields { grid-template-columns: 1fr; }
    #viewAssignedTaskModal .assigned-path-card summary { align-items: flex-start; flex-direction: column; }
}

#updateProjectCostModal .modal-body {
    min-height: 0;
}

/* Read-only Breakdown programming path explorer. */
#viewAssignedBkModal .assigned-breakdown-dialog { width: min(96vw, 1500px); max-width: min(96vw, 1500px); }
#viewAssignedBkModal .assigned-breakdown-shell { display: flex; min-height: 0; max-height: 100%; flex-direction: column; overflow: hidden; }
#viewAssignedBkModal .modal-header .btn-close { filter: brightness(0) invert(1); opacity: .75; }
#viewAssignedBkModal .modal-body { min-height: 0; }
#viewAssignedBkModal .assigned-breakdown-container { width: 100%; max-width: none; }
#viewAssignedBkModal .assigned-breakdown-flow,
#viewAssignedBkModal .assigned-breakdown-route { display: flex; gap: .65rem; margin: .75rem 0; align-items: center; flex-wrap: wrap; }
#viewAssignedBkModal .assigned-breakdown-flow span,
#viewAssignedBkModal .assigned-breakdown-route span { padding: .35rem .65rem; border: 1px solid #cfdce0; border-radius: .45rem; background: #f6f9fa; font-weight: 700; }
#viewAssignedBkModal .assigned-breakdown-flow b,
#viewAssignedBkModal .assigned-breakdown-route b { color: #72808a; }
#viewAssignedBkModal .assigned-breakdown-loading,
#viewAssignedBkModal .assigned-breakdown-empty { display: flex; min-height: 9rem; gap: 1rem; border: 1px dashed #cbd7dc; border-radius: 1rem; background: rgba(255,255,255,.7); align-items: center; justify-content: center; }
#viewAssignedBkModal .assigned-breakdown-overview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
#viewAssignedBkModal .assigned-breakdown-overview > div { display: grid; gap: .15rem; padding: .75rem 1rem; border-left: 3px solid #07879a; background: #f5f8f9; }
#viewAssignedBkModal .assigned-breakdown-overview span { color: #60707b; font-size: .78rem; font-weight: 800; text-transform: uppercase; }
#viewAssignedBkModal .assigned-breakdown-overview strong { font-size: 1.35rem; }
#viewAssignedBkModal .assigned-breakdown-card { margin-bottom: .75rem; border: 1px solid #d6e0e4; border-radius: .85rem; background: #fff; overflow: hidden; box-shadow: 0 .15rem .45rem rgba(18,35,49,.06); }
#viewAssignedBkModal .assigned-breakdown-card-head,
#viewAssignedBkModal .assigned-breakdown-card summary { display: flex; gap: 1rem; min-height: 58px; padding: .9rem 1rem; list-style: none; align-items: center; justify-content: space-between; }
#viewAssignedBkModal .assigned-breakdown-card summary { cursor: pointer; }
#viewAssignedBkModal .assigned-breakdown-card summary::-webkit-details-marker { display: none; }
#viewAssignedBkModal .assigned-breakdown-card[open] summary { border-bottom: 1px solid #e1e7ea; background: #f8fafb; }
#viewAssignedBkModal .assigned-breakdown-badges { display: flex; gap: .4rem; flex-wrap: wrap; }
#viewAssignedBkModal .assigned-breakdown-current { background: #d9f3e5; color: #12643d; }
#viewAssignedBkModal .assigned-breakdown-historical { background: #fff0cc; color: #7b5200; }
#viewAssignedBkModal .assigned-breakdown-card-body { padding: 1rem; }
#viewAssignedBkModal .assigned-breakdown-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
#viewAssignedBkModal .assigned-breakdown-field { display: flex; min-height: 78px; padding: .7rem .8rem; border: 1px solid #e0e6e9; border-radius: .6rem; background: #fbfcfc; flex-direction: column; }
#viewAssignedBkModal .assigned-breakdown-field > span { color: #66737d; font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
#viewAssignedBkModal .assigned-breakdown-field > strong { margin-top: .1rem; }
#viewAssignedBkModal .assigned-breakdown-field > small { margin-top: .2rem; color: #79858e; line-height: 1.25; }
#viewAssignedBkModal .assigned-breakdown-instructions { display: grid; gap: .25rem; margin-top: .75rem; padding: .8rem; border-left: 3px solid #07879a; background: #f3f8f9; }
#viewAssignedBkModal .modal-footer { position: sticky; z-index: 5; bottom: 0; background: #fff; box-shadow: 0 -.4rem 1.25rem rgba(18,35,49,.08); }
@media (max-width: 900px) {
    #viewAssignedBkModal .assigned-breakdown-overview,
    #viewAssignedBkModal .assigned-breakdown-fields { grid-template-columns: 1fr; }
    #viewAssignedBkModal .assigned-breakdown-card-head,
    #viewAssignedBkModal .assigned-breakdown-card summary { align-items: flex-start; flex-direction: column; }
}

#editEquipmentGroupModal .edit-equipment-group-shell { max-height: 100%; overflow: hidden; }
#editEquipmentGroupModal .modal-header .btn-close { filter: brightness(0) invert(1); opacity: .75; }
#editEquipmentGroupModal .edit-equipment-group-progress { position: absolute; z-index: 8; inset: 0; display: flex; gap: 1rem; border-radius: 1rem; background: rgba(238,241,244,.94); align-items: center; justify-content: center; }
#editEquipmentGroupModal .edit-equipment-group-progress.d-none { display: none; }
#editEquipmentGroupModal .modal-footer { position: sticky; z-index: 5; bottom: 0; background: #fff; box-shadow: 0 -.4rem 1.25rem rgba(18,35,49,.08); }

#updateProjectCostModal .supplier-workflow-container {
    width: 100%;
    max-width: none;
}

#editCostModal .vendor-cost-shell {
    display: flex;
    min-height: 0;
    max-height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: hidden;
}

#editCostModal .vendor-cost-dialog {
    width: min(96vw, 1480px);
    max-width: min(96vw, 1480px);
}

#editCostModal .add-part-guide-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
}

#editCostModal .add-part-checklist {
    min-width: 12rem;
}

#editCostModal .modal-header .btn-close {
    filter: brightness(0) invert(1);
    opacity: .75;
}

#editCostModal .modal-body {
    min-height: 0;
}

#editCostModal .vendor-cost-container {
    width: 100%;
    max-width: none;
}

#editCostModal .vendor-cost-purchasing-card {
    padding: 0;
    overflow: hidden;
}

#editCostModal .vendor-cost-purchasing-card summary {
    display: flex;
    min-height: 64px;
    padding: 1.1rem 1.25rem;
    cursor: pointer;
    list-style: none;
    align-items: center;
    justify-content: space-between;
}

#editCostModal .vendor-cost-purchasing-card summary::-webkit-details-marker {
    display: none;
}

#editCostModal .vendor-cost-purchasing-card summary::after {
    color: #07879a;
    content: '+';
    font-size: 1.6rem;
    font-weight: 800;
    line-height: 1;
}

#editCostModal .vendor-cost-purchasing-card[open] summary {
    border-bottom: 1px solid #e0e6e9;
}

#editCostModal .vendor-cost-purchasing-card[open] summary::after {
    content: '−';
}

#editCostModal .vendor-cost-purchasing-card > :not(summary) {
    margin-right: 1.25rem;
    margin-left: 1.25rem;
}

#editCostModal .vendor-cost-purchasing-card > .row {
    margin-bottom: 1.25rem;
}

#editCostModal .vendor-cost-progress {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: flex;
    gap: 1rem;
    background: rgba(238, 241, 244, .9);
    align-items: center;
    justify-content: center;
}

#editCostModal .vendor-cost-progress.d-none {
    display: none;
}

#editCostModal .modal-footer {
    position: sticky;
    z-index: 5;
    bottom: 0;
    border-top: 1px solid #e1e5e8;
    background: #fff;
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

@media (max-width: 900px) {
    #editCostModal .add-part-guide-card {
        grid-template-columns: 1fr;
    }

    #editCostModal .add-part-checklist {
        min-width: 0;
    }
}

.parts-hero > .position-relative {
    z-index: 1;
}

.parts-hero {
    padding: 1rem 1.35rem;
    box-shadow: 0 .45rem 1.25rem rgba(0, 63, 73, .16);
}

.parts-hero h1 {
    font-size: 1.85rem;
    line-height: 1.1;
}

.view-parts-workspace-header .parts-hero,
.view-parts-workspace-header .view-parts-filter-card {
    min-height: 12rem;
}

.view-equipment-workspace-header .parts-hero,
.view-equipment-workspace-header .view-equipment-filter-card {
    min-height: 12rem;
}

.view-parts-hero-actions .btn-outline-light {
    background: rgba(255, 255, 255, .06);
}

.view-parts-hero-actions .btn-outline-light:hover,
.view-parts-hero-actions .btn-outline-light:focus {
    background: #fff;
    color: var(--pcad-primary);
}

.view-equipment-hero-actions .btn-outline-light { background: rgba(255, 255, 255, .06); }
.view-equipment-hero-actions .btn-outline-light:hover,
.view-equipment-hero-actions .btn-outline-light:focus { background: #fff; color: var(--pcad-primary); }

.parts-hero .text-white-75 {
    color: rgba(255, 255, 255, .78);
}

.view-parts-action-card,
.view-parts-filter-card {
    padding: .85rem 1rem;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .2rem .75rem rgba(32, 52, 58, .08);
}

.view-parts-action-card .btn {
    min-height: 2.5rem;
}

.view-parts-section-label {
    color: #56616b;
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.view-parts-filter-card .form-control,
.view-parts-filter-card .form-select,
.view-parts-filter-card .input-group-text,
.view-parts-filter-card .btn {
    min-height: 2.65rem;
}

.view-parts-filter-card .form-label {
    display: block;
    min-height: 1.35rem;
    margin-bottom: .35rem;
    line-height: 1.35rem;
}

.view-parts-filter-card .input-group {
    overflow: hidden;
    border: 1px solid #d5dfe2;
    border-radius: .6rem;
}

.view-parts-filter-card .input-group:focus-within {
    border-color: var(--pcad-primary-light);
    box-shadow: 0 0 0 .2rem rgba(0, 120, 138, .15);
}

.view-parts-filter-card .input-group .form-control,
.view-parts-filter-card .input-group .input-group-text,
.view-parts-filter-card .input-group .btn {
    border-top: 0;
    border-bottom: 0;
}

.view-parts-filter-card .input-group .form-control:focus {
    box-shadow: none;
}

.view-parts-status-filter [data-part-filter] {
    background: #fff !important;
    font-weight: 700;
}

.view-parts-status-filter [data-part-filter="active"] {
    border-color: var(--pcad-primary-light) !important;
    color: var(--pcad-primary) !important;
}

.view-parts-status-filter [data-part-filter="active"].active {
    background: var(--pcad-primary-light) !important;
    color: #fff !important;
}

.view-parts-status-filter [data-part-filter="retired"] {
    border-color: #d89a16 !important;
    color: #8b5b00 !important;
}

.view-parts-status-filter [data-part-filter="retired"].active {
    background: #f0ad21 !important;
    color: #20272c !important;
}

.view-parts-status-filter [data-equipment-filter] { background: #fff !important; font-weight: 700; }
.view-parts-status-filter [data-equipment-filter="active"] { border-color: var(--pcad-primary-light) !important; color: var(--pcad-primary) !important; }
.view-parts-status-filter [data-equipment-filter="active"].active { background: var(--pcad-primary-light) !important; color: #fff !important; }
.view-parts-status-filter [data-equipment-filter="retired"] { border-color: #d89a16 !important; color: #8b5b00 !important; }
.view-parts-status-filter [data-equipment-filter="retired"].active { background: #f0ad21 !important; color: #20272c !important; }

.view-parts-status-filter [data-task-filter] { background: #fff !important; font-weight: 700; }
.view-parts-status-filter [data-task-filter="active"] { border-color: var(--pcad-primary-light) !important; color: var(--pcad-primary) !important; }
.view-parts-status-filter [data-task-filter="active"].active { background: var(--pcad-primary-light) !important; color: #fff !important; }
.view-parts-status-filter [data-task-filter="retired"] { border-color: #d89a16 !important; color: #8b5b00 !important; }
.view-parts-status-filter [data-task-filter="retired"].active { background: #f0ad21 !important; color: #20272c !important; }

.view-parts-status-filter .badge {
    min-width: 1.45rem;
    background: rgba(255, 255, 255, .9) !important;
    color: #26343c !important;
}

@media (max-width: 767.98px) {
    .parts-hero {
        padding: 1rem;
    }

    .view-parts-action-card,
    .view-parts-filter-card {
        padding: 1rem;
    }
}

@media (max-width: 1199.98px) {
    .view-parts-workspace-header .parts-hero,
    .view-parts-workspace-header .view-parts-filter-card {
        min-height: auto;
    }

    .view-equipment-workspace-header .parts-hero,
    .view-equipment-workspace-header .view-equipment-filter-card {
        min-height: auto;
    }
}

@media (max-width: 991.98px) {
    .add-part-guide-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .add-part-minimum-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }
}

.retire-part-modal,
.retire-part-shell {
    overflow: hidden;
    border: 0;
    border-radius: 1rem;
}

.retire-part-shell {
    display: flex;
    max-height: 100%;
    flex-direction: column;
}

.retire-part-body {
    padding: 1.35rem;
    overflow-y: auto;
    background: #eef1f4;
    color: #20292f;
}

.retire-part-container {
    max-width: 68rem;
}

.retire-part-eyebrow,
.retire-part-card-title {
    color: #65747e;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.retire-part-eyebrow {
    color: #168493;
}

.retire-part-title {
    margin: .2rem 0 .35rem;
    color: #20292f;
    font-size: 1.55rem;
    font-weight: 750;
}

.retire-part-intro {
    max-width: 48rem;
    margin-bottom: 0;
    color: #5f6c75;
}

.retire-part-card {
    padding: 1.1rem 1.2rem;
    border: 1px solid rgba(42, 58, 70, .08);
    border-radius: .85rem;
    background: #f8fafb;
    color: #20292f;
    box-shadow: 0 .125rem .4rem rgba(18, 35, 49, .08), 0 .65rem 1.5rem rgba(18, 35, 49, .05);
}

.retire-part-record-card {
    background: #fff;
}

.retire-part-table {
    width: 100%;
    overflow: hidden;
    border: 1px solid #d9e0e4;
    border-radius: .55rem;
    border-collapse: separate;
    border-spacing: 0;
}

.retire-part-table th {
    padding: .65rem .5rem;
    background: #e9eef1;
}

.retire-part-table td {
    padding: .8rem .5rem;
    background: #fff;
}

.retire-part-impact-list {
    display: grid;
    gap: .55rem;
    padding-left: 1.2rem;
    color: #44515a;
}

.retire-part-impact-list li::marker {
    color: #c47e00;
}

.retire-part-impact-list--preserved li::marker {
    color: #27834d;
}

.retire-part-reason-options {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.retire-part-reason-chip {
    padding: .45rem .75rem;
    border: 1px solid #bdc9cf;
    border-radius: 999px;
    background: #fff;
    color: #34414a;
    font-size: .85rem;
    font-weight: 700;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.retire-part-reason-chip:hover,
.retire-part-reason-chip.is-selected {
    border-color: #168493;
    background: #e3f3f5;
    color: #086574;
}

#removePartModal #retirePartReason,
#removeEquipmentModal #retireEquipmentReason {
    min-height: 6.5rem;
    border-radius: .65rem;
    background: #fff;
}

.retire-part-acknowledgment {
    padding: 1rem 1rem 1rem 2.5rem;
    border: 1px solid rgba(255, 193, 7, .5);
    border-radius: .75rem;
    background: #fff3cd;
    color: #594400;
}

#removePartModal .modal-footer,
#removeEquipmentModal .modal-footer {
    border-top: 1px solid #e1e5e8;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -.4rem 1.25rem rgba(18, 35, 49, .08);
}

#removeEquipmentModal .modal-header .btn-close { filter: brightness(0) invert(1); opacity: .75; }
#removeEquipmentModal .retire-part-container { position: relative; }
#removeEquipmentModal .retire-equipment-progress { position: absolute; z-index: 8; inset: 0; display: flex; gap: 1rem; border-radius: 1rem; background: rgba(238,241,244,.94); align-items: center; justify-content: center; }
#removeEquipmentModal .retire-equipment-progress.d-none { display: none; }

@media (max-width: 991.98px) {
    #editTaskModal .edit-task-section-card > .row > .col-6,
    #editTaskModal .edit-task-section-card > .row > .col-4,
    #editTaskModal .edit-task-section-card > .row > .col-8 {
        width: 100%;
    }
}

.formula-example-mermaid--six {
    min-height: 32rem;
}

.formula-example-mermaid--six svg {
    max-height: 30rem;
}

.formula-example-mermaid--condition .nodeLabel,
.formula-example-mermaid--condition .nodeLabel p,
.formula-example-mermaid--condition .nodeLabel span,
.formula-example-mermaid--condition .edgeLabel,
.formula-example-mermaid--condition .edgeLabel p,
.formula-example-mermaid--condition .edgeLabel span {
    font-size: 30px !important;
}

.formula-example-mermaid--condition {
    min-height: 38rem;
}

.formula-example-mermaid--condition svg {
    max-height: 36rem;
}

.formula-example-mermaid--reverse .nodeLabel,
.formula-example-mermaid--reverse .nodeLabel p,
.formula-example-mermaid--reverse .nodeLabel span,
.formula-example-mermaid--reverse .edgeLabel,
.formula-example-mermaid--reverse .edgeLabel p,
.formula-example-mermaid--reverse .edgeLabel span {
    font-size: 32px !important;
}

.formula-example-mermaid--reverse {
    min-height: 52rem;
}

.formula-example-mermaid--reverse svg {
    max-height: 50rem;
}

.formula-example-mermaid--solo-labor .nodeLabel,
.formula-example-mermaid--solo-labor .nodeLabel p,
.formula-example-mermaid--solo-labor .nodeLabel span,
.formula-example-mermaid--solo-labor .edgeLabel,
.formula-example-mermaid--solo-labor .edgeLabel p,
.formula-example-mermaid--solo-labor .edgeLabel span {
    font-size: 32px !important;
}

.formula-example-mermaid--solo-labor {
    min-height: 52rem;
}

.formula-example-mermaid--solo-labor svg {
    max-height: 50rem;
}

.formula-example-mermaid--parent-child {
    min-height: 40rem;
}

.formula-example-mermaid--parent-child svg {
    max-height: 38rem;
}

.formula-example-mermaid--parent-group {
    min-height: 40rem;
}

.formula-example-mermaid--parent-group svg {
    max-height: 38rem;
}

.formula-example-mermaid--part-number .nodeLabel,
.formula-example-mermaid--part-number .nodeLabel p,
.formula-example-mermaid--part-number .nodeLabel span,
.formula-example-mermaid--part-number .edgeLabel,
.formula-example-mermaid--part-number .edgeLabel p,
.formula-example-mermaid--part-number .edgeLabel span,
.formula-example-mermaid--numeric-parts .nodeLabel,
.formula-example-mermaid--numeric-parts .nodeLabel p,
.formula-example-mermaid--numeric-parts .nodeLabel span,
.formula-example-mermaid--numeric-parts .edgeLabel,
.formula-example-mermaid--numeric-parts .edgeLabel p,
.formula-example-mermaid--numeric-parts .edgeLabel span {
    font-size: 32px !important;
}

.formula-example-mermaid--part-number {
    min-height: 44rem;
}

.formula-example-mermaid--part-number svg {
    max-height: 42rem;
}

.formula-example-mermaid--numeric-parts {
    min-height: 40rem;
}

.formula-example-mermaid--numeric-parts svg {
    max-height: 38rem;
}

.database-guide-legend {
    color: #52616b;
    display: flex;
    flex-wrap: wrap;
    font-size: .85rem;
    gap: 1.5rem;
    justify-content: center;
    margin-top: 1rem;
}

.database-guide-legend span {
    align-items: center;
    display: inline-flex;
    gap: .55rem;
}

.database-guide-line {
    border-top: 2px solid var(--pcad-primary-light);
    display: inline-block;
    width: 2rem;
}

.database-guide-line-dashed {
    border-top-style: dashed;
}

.database-guide-flow-note {
    background: #effafb;
    border-left: .3rem solid var(--pcad-primary-light);
    border-radius: .4rem;
    color: #52616b;
    margin: 1rem auto 0;
    max-width: 58rem;
    padding: .8rem 1rem;
}

.database-guide-points {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, 1fr);
}

.database-guide-points article {
    align-items: flex-start;
    background: #fff;
    border: 1px solid #dfe7ea;
    border-radius: .85rem;
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
}

.database-guide-points i {
    align-items: center;
    background: #effafb;
    border-radius: .65rem;
    color: var(--pcad-primary-light);
    display: flex;
    flex: 0 0 2.5rem;
    height: 2.5rem;
    justify-content: center;
}

.database-guide-points h3 {
    font-size: 1rem;
    font-weight: 800;
    margin-bottom: .35rem;
}

.database-guide-points p {
    color: #6b7280;
    margin: 0;
}

@media (max-width: 991.98px) {
    .system-guide-flow {
        grid-template-columns: repeat(3, 1fr);
    }

    .system-guide-flow-arrow {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .system-guide-center {
        margin-top: 1rem;
    }

    .system-guide-hero,
    .system-guide-intro {
        padding: 1.35rem;
    }

    .system-guide-intro,
    .system-guide-section-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .system-guide-note {
        flex-basis: auto;
    }

    .database-guide-diagram-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .database-guide-points {
        grid-template-columns: 1fr;
    }

    .system-guide-flow {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Catalog Administration */

.catalog-command-bar {
    background: linear-gradient(110deg, #fff 0%, #fff 72%, #f1f8f9 100%);
    border: 1px solid #dfe8ea;
    border-left: .45rem solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .11);
    padding: 1.25rem 1.5rem;
}

.catalog-admin-workspace {
    padding-top: .75rem !important;
}

.catalog-admin-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 .65rem 1.5rem rgba(15, 45, 61, .14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.catalog-admin-hero::after {
    background: rgba(255, 255, 255, .07);
    border-radius: 50%;
    content: '';
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.catalog-admin-hero > * {
    position: relative;
    z-index: 1;
}

.catalog-admin-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .11em;
    margin-bottom: .35rem;
    text-transform: uppercase;
}

.catalog-admin-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem) !important;
    letter-spacing: -.03em;
}

.catalog-admin-hero .text-gray {
    color: #d3eaec !important;
}

.catalog-admin-hero .btn-outline-light:hover {
    color: #123d53;
}

.catalog-admin-controls {
    background: #fff;
    border: 1px solid #d9e3e8;
    border-radius: .85rem;
    box-shadow: 0 .3rem 1.1rem rgba(15, 35, 48, .075);
    margin: -1.4rem 1rem 1.75rem;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.catalog-admin-controls .form-label {
    color: #3b5360;
    font-size: .82rem;
    font-weight: 750;
}

.catalog-role {
    border-radius: 2rem;
    color: #fff;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .03em;
    padding: .3rem .6rem;
}

.catalog-role-ba,
.catalog-role-op,
.catalog-role-fe,
.catalog-role-fx,
.catalog-role-eq {
    background: var(--pcad-primary-light);
}

.catalog-command-search .form-control {
    border: 2px solid #d5dfe2;
    min-height: 3rem;
}

.catalog-note {
    background: #edf7ef;
    border: 1px solid #cce5d2;
    border-radius: .75rem;
    color: #285b35;
    padding: .65rem .85rem;
}

.catalog-table-shell {
    background: #fff;
    border: 1px solid #e0e7e9;
    border-radius: 1rem;
    box-shadow: 0 .25rem 1rem rgba(32, 52, 58, .08);
    overflow: hidden;
}

.catalog-table-shell table {
    border: none;
    width: 100%;
}

@media (max-width: 767.98px) {
    .catalog-admin-hero {
        border-radius: .75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .catalog-admin-controls {
        margin-left: .6rem;
        margin-right: .6rem;
    }
}

.catalog-guide-toggle[aria-expanded="true"] .catalog-guide-arrow {
    transform: rotate(180deg);
}

.catalog-guide-arrow {
    display: inline-block;
    transition: transform .2s ease;
}

.catalog-guide {
    background: linear-gradient(120deg, #f4fbfc 0%, #fff9f1 100%);
    border: 1px solid #d8e7e9;
    border-radius: .9rem;
    margin-top: 1rem;
    padding: 1.15rem;
}

/* Catalog Center */

.catalog-hero {
    padding: 2rem 2.25rem;
}

.catalog-hero > .position-relative {
    z-index: 1;
}

.catalog-card,
.breakdown-card,
.price-action {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .11);
    height: 100%;
    overflow: hidden;
    transition: box-shadow .2s ease, transform .2s ease;
}

.catalog-card:hover,
.catalog-card:focus-within,
.breakdown-card:hover,
.breakdown-card:focus-within,
.price-action:hover,
.price-action:focus-within {
    box-shadow: 0 .8rem 1.8rem rgba(32, 52, 58, .18);
    transform: translateY(-3px);
}

.catalog-card-accent {
    height: .4rem;
}

.catalog-card-ba .catalog-card-accent,
.catalog-badge-ba,
.catalog-card-fe .catalog-card-accent,
.catalog-badge-fe,
.catalog-card-fx .catalog-card-accent,
.catalog-badge-fx,
.catalog-card-eq .catalog-card-accent,
.catalog-badge-eq {
    background: var(--pcad-primary-light);
}

.catalog-role-badge {
    align-items: center;
    border-radius: .8rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 3.25rem;
    font-size: 1rem;
    font-weight: 800;
    height: 3.25rem;
    justify-content: center;
    letter-spacing: .04em;
}

.catalog-card .form-select {
    border: 2px solid #d5dfe2;
    min-height: 3rem;
}

.catalog-card .form-select:focus {
    border-color: var(--pcad-primary-light);
    box-shadow: 0 0 0 .2rem rgba(0, 120, 138, .15);
}

.catalog-search,
.breakdown-search,
.task-search {
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    overflow: hidden;
    padding: 1rem 1.25rem;
}

.catalog-search .input-group {
    border: 2px solid #d5dfe2;
    border-radius: .375rem;
    overflow: hidden;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.catalog-search .input-group:focus-within {
    border-color: var(--pcad-primary-light);
    box-shadow: 0 0 0 .2rem rgba(0, 120, 138, .15);
}

.catalog-search .input-group-text {
    background: #fff;
    border: 0;
    color: var(--pcad-primary-light);
    font-size: 1.25rem;
    font-weight: 800;
}

.catalog-search .form-control {
    border: 0;
    min-height: 3.25rem;
}

.catalog-search .form-control:focus {
    box-shadow: none;
}

.catalog-search .btn {
    border: 0;
    border-left: 1px solid #d5dfe2;
    border-radius: 0;
}

.onboarding-panel {
    background: linear-gradient(120deg, #f4fbfc, #fff9f1);
    border: 1px solid #d8e7e9;
    border-radius: 1rem;
    box-shadow: 0 .25rem 1rem rgba(32, 52, 58, .08);
    padding: 1.15rem;
}

.catalog-search-results,
.breakdown-results,
.task-results {
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    overflow: hidden;
}

.catalog-result,
.breakdown-result,
.task-result {
    border-bottom: 1px solid #e4eaec;
    color: inherit;
    display: block;
    padding: 1rem 1.25rem;
    text-decoration: none;
    transition: background-color .15s ease;
}

.catalog-result:last-child,
.breakdown-result:last-child,
.task-result:last-child {
    border-bottom: 0;
}

.catalog-result:hover,
.catalog-result:focus,
.breakdown-result:hover,
.breakdown-result:focus,
.task-result:hover,
.task-result:focus {
    background: #f1f8f9;
    color: inherit;
}

/* Breakdown Center */

.breakdown-hero {
    padding: 2rem 2.25rem;
}

.breakdown-hero > .position-relative {
    z-index: 1;
}

.breakdown-search .form-control {
    border: 2px solid #d5dfe2;
    min-height: 3.25rem;
}

.breakdown-card {
    padding: 1.5rem;
}

.breakdown-card-bk,
.breakdown-card-fe,
.breakdown-card-eq,
.breakdown-card-op {
    border-top: 6px solid var(--pcad-primary-light);
}

.breakdown-badge {
    align-items: center;
    border-radius: .8rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 3.25rem;
    font-weight: 800;
    height: 3.25rem;
    justify-content: center;
}

.badge-bk,
.badge-fe,
.badge-eq,
.badge-op {
    background: var(--pcad-primary-light);
}

.breakdown-card .form-select {
    border: 2px solid #d5dfe2;
    min-height: 3rem;
}

.breakdown-result:hover,
.breakdown-result:focus {
    background: #f3f5fa;
}

/* Task Center */

.task-hero {
    padding: 2rem 2.25rem;
}

.task-hero > .position-relative {
    z-index: 1;
}

.task-search {
    padding: 1.5rem;
}

.task-search .form-control,
.task-panel .form-select {
    border: 2px solid #d5dfe2;
    min-height: 3.25rem;
}

.task-panel {
    border-top: 6px solid var(--pcad-primary-light);
}

.task-badge {
    align-items: center;
    background: var(--pcad-primary-light);
    border-radius: .8rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 3.25rem;
    font-weight: 800;
    height: 3.25rem;
    justify-content: center;
}

.task-result:hover,
.task-result:focus {
    background: #effafb;
}

/* Price Set Center */

.price-hero {
    padding: 2rem 2.25rem;
}

.price-hero > .position-relative {
    z-index: 1;
}

.price-panel {
    border-top: 6px solid var(--pcad-primary-light);
}

.price-panel .form-select {
    border: 2px solid #d5dfe2;
    min-height: 3.25rem;
}

.price-badge {
    align-items: center;
    background: var(--pcad-primary-light);
    border-radius: .8rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 3.25rem;
    font-weight: 800;
    height: 3.25rem;
    justify-content: center;
}

.price-action {
    padding: 1.5rem;
}

.price-action-create,
.price-action-edit {
    border-top: 5px solid var(--pcad-action);
}

.price-action-remove {
    border-top: 5px solid var(--pcad-danger);
}

@media (min-width: 992px) {
    .price-view-action {
        padding-bottom: 1rem;
    }
}

/* Customer Center */

.customer-edit-hero,
.customer-edit-page {
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px;
}

.customer-edit-hero {
    background: linear-gradient(125deg, #004451 0%, #006b73 100%);
    border-radius: 1rem;
    box-shadow: 0 .75rem 2rem rgba(0, 56, 66, .18);
    color: #fff;
    margin-top: 1.25rem;
    overflow: hidden;
    padding: 1.5rem 2rem;
    position: relative;
}

.customer-edit-hero::after {
    background: rgba(255, 255, 255, .08);
    border-radius: 50%;
    content: "";
    height: 11rem;
    position: absolute;
    right: -3rem;
    top: -5rem;
    width: 11rem;
}

.customer-edit-hero .row {
    position: relative;
    z-index: 1;
}

.customer-edit-hero h1 {
    font-size: clamp(1.7rem, 3vw, 2.25rem);
    font-weight: 800;
    margin: .25rem 0 0;
}

.customer-edit-hero p {
    color: rgba(255, 255, 255, .75);
    font-weight: 700;
    margin: .25rem 0 0;
}

.customer-edit-kicker {
    color: #ffbf00;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.customer-edit-page {
    margin-top: 1.25rem;
}

.customer-edit-form {
    background: #fff;
    border: 1px solid #dce7e9;
    border-top: 6px solid var(--pcad-primary-light);
    border-radius: 1rem;
    box-shadow: 0 .4rem 1.5rem rgba(32, 52, 58, .09);
    margin-left: 0;
    margin-right: 0;
    padding: 1.75rem 1.25rem 0;
}

.customer-edit-form > [class*="col-"] {
    margin-bottom: .35rem;
}

.customer-edit-form > .col-4:nth-child(3) {
    display: none;
}

.customer-edit-form > .col-4:nth-child(1),
.customer-edit-form > .col-4:nth-child(2) {
    flex: 0 0 auto;
    width: 50%;
}

.customer-edit-form .form-group {
    margin-bottom: 1.15rem;
}

.customer-edit-form .form-label {
    color: #52616a;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .025em;
    margin-bottom: .35rem;
    text-transform: uppercase;
}

.customer-edit-form .form-control,
.customer-edit-form .form-select {
    background-color: #fbfcfd;
    border-color: #cbdadd;
    min-height: 44px;
}

.customer-edit-form .form-control:focus,
.customer-edit-form .form-select:focus {
    background-color: #fff;
    border-color: var(--pcad-primary-light);
    box-shadow: 0 0 0 .2rem rgba(0, 137, 148, .14);
}

.customer-edit-projects {
    border-top: 1px solid #dce7e9;
    margin-top: 1rem;
    padding: 1.5rem .75rem 0;
}

.customer-edit-section-heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: .75rem;
}

.customer-edit-section-heading h2 {
    font-size: 1.2rem;
    font-weight: 800;
    margin: 0;
}

.customer-edit-section-heading span {
    background: #e8f4f5;
    border-radius: 2rem;
    color: var(--pcad-primary);
    font-size: .75rem;
    font-weight: 800;
    padding: .3rem .65rem;
}

.customer-edit-projects .table {
    border: 1px solid #dce7e9 !important;
    border-radius: .65rem;
    overflow: hidden;
}

.customer-edit-projects td,
.customer-edit-projects th {
    padding: .75rem !important;
    vertical-align: middle;
}

.customer-edit-actions {
    align-items: center;
    background: #f5f8f9;
    border-radius: 0 0 .9rem .9rem;
    display: flex;
    gap: .75rem;
    justify-content: flex-end;
    margin-top: 1.5rem;
    padding: 1rem 1.25rem;
}

.vendor-retire-modal {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 1.5rem 4rem rgba(18, 35, 49, .3);
    overflow: hidden;
}

.vendor-retire-header {
    background: linear-gradient(125deg, #004451 0%, #087f8c 100%);
    border: 0;
    color: #fff;
    padding: 1.25rem 1.5rem;
}

.vendor-retire-header .modal-title {
    font-size: 1.45rem;
    font-weight: 800;
    margin-top: .15rem;
}

.vendor-retire-kicker {
    color: #ffbf00;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.vendor-retire-body {
    background: #f5f8f9;
    padding: 1.5rem;
}

.vendor-retire-vendor {
    background: #fff;
    border: 1px solid #dce7e9;
    border-radius: .75rem;
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
    padding: .85rem 1rem;
}

.vendor-retire-vendor span {
    color: #68757d;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.vendor-retire-vendor strong {
    color: #15252b;
    font-size: 1.3rem;
    margin-top: .15rem;
}

.vendor-retire-info {
    background: #eaf6f7;
    border: 1px solid #b9dfe2;
    border-left: 5px solid #078795;
    border-radius: .75rem;
    display: grid;
    gap: 1rem;
    grid-template-columns: auto 1fr;
    padding: 1rem;
}

.vendor-retire-icon {
    align-items: center;
    background: #078795;
    border-radius: 50%;
    color: #fff;
    display: flex;
    height: 2.5rem;
    justify-content: center;
    width: 2.5rem;
}

.vendor-retire-info h3 {
    color: #12343a;
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 .45rem;
}

.vendor-retire-info ul {
    color: #40545b;
    margin: 0;
    padding-left: 1.1rem;
}

.vendor-retire-info li + li {
    margin-top: .3rem;
}

.vendor-delete-option {
    background: #fff5f5;
    border: 1px solid #efb5b5;
    border-radius: .75rem;
    margin-top: 1rem;
    padding: 1rem;
}

.vendor-delete-option .form-check {
    align-items: flex-start;
    display: flex;
    gap: .65rem;
    margin: 0;
    min-height: 0;
    padding-left: 0;
}

.vendor-delete-option .form-check-input {
    flex: 0 0 auto;
    margin: .15rem 0 0;
}

.vendor-delete-option label,
.vendor-delete-option label span {
    display: block;
}

.vendor-delete-option label strong {
    color: #a12626;
}

.vendor-delete-option label span {
    color: #6f4444;
    font-size: .82rem;
    margin-top: .15rem;
}

.vendor-retire-footer {
    background: #fff;
    border-color: #dce7e9;
    gap: .5rem;
    padding: 1rem 1.5rem;
}

.vendor-retire-footer .btn-danger {
    background: #b42318;
    border-color: #b42318;
}

.city-edit-form > .col-6:nth-child(3) {
    display: none;
}

.city-edit-section-heading {
    border-bottom: 1px solid #dce7e9;
    margin-bottom: 1.25rem;
    padding-bottom: .85rem;
}

.city-requirements-heading {
    border-top: 1px solid #dce7e9;
    margin-top: .5rem;
    padding-top: 1.35rem;
}

.city-requirements-heading h2 {
    font-size: 1.2rem;
    font-weight: 800;
    margin: 0;
}

.city-requirements-heading p {
    color: #68757d;
    margin: .25rem 0 1rem;
}

.city-edit-form > .form-group.col-4 {
    margin-bottom: .75rem;
}

.city-edit-form > .form-group.col-4 .form-check {
    align-items: center;
    background: #f7fafb;
    border: 1px solid #d4e1e4;
    border-radius: .75rem;
    display: flex;
    gap: .7rem;
    margin: 0;
    min-height: 58px;
    padding: .75rem 1rem;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.city-edit-form > .form-group.col-4 .form-check:has(.form-check-input:checked) {
    background: #eaf6f7;
    border-color: #60b8c0;
    box-shadow: inset 4px 0 0 #078795;
}

.city-edit-form .form-check-input {
    flex: 0 0 auto;
    height: 1.1rem;
    margin: 0;
    width: 1.1rem;
}

.city-edit-form .form-check-label {
    color: #244149 !important;
    cursor: pointer;
    flex: 1;
    font-size: .9rem;
}

@media (max-width: 767.98px) {
    .city-edit-form > .form-group.col-4 {
        width: 100% !important;
    }
}

.user-edit-card {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
}

.user-edit-card > .col-4:nth-child(3) {
    display: block;
}

.user-edit-card > .col-4 {
    flex: 0 0 auto !important;
    width: 33.333333% !important;
}

.user-edit-section-heading {
    border-bottom: 1px solid #dce7e9;
    margin-bottom: 1.25rem;
    padding-bottom: .85rem;
}

.user-edit-card > .form-group.col-12 > .form-check {
    background: #f4f8f9;
    border: 1px solid #d4e1e4;
    border-radius: .75rem;
    margin-top: .35rem;
    padding: .9rem 1rem .9rem 2.5rem;
}

.user-edit-card > .form-group.col-12 > .form-check .form-check-label {
    color: #244149;
}

.user-edit-card #passwordStart {
    background: #f7fafb;
    border: 1px solid #dce7e9;
    border-radius: .75rem;
    margin: .25rem 0 .75rem;
    padding: 1rem !important;
}

.user-edit-card #passwordStart > .col-12 > h3 {
    color: #244149;
    font-size: 1rem;
    margin-bottom: 1rem;
}

.user-edit-card #salesManagerContainer {
    background: #fff8e6;
    border: 1px solid #efd78e;
    border-radius: .75rem;
    padding: .75rem 1rem;
}

.user-edit-actions {
    border-radius: .9rem;
    box-shadow: 0 .25rem 1rem rgba(32, 52, 58, .08);
    margin-top: 0;
}

@media (max-width: 767.98px) {
    .user-edit-card > .col-4,
    .user-edit-card > .col-6,
    .user-edit-card > .col-12 {
        width: 100% !important;
    }
}

@media (max-width: 767.98px) {
    .customer-edit-hero {
        border-radius: .75rem;
        padding: 1.25rem;
    }

    .customer-edit-hero .col-8,
    .customer-edit-hero .col-4,
    .customer-edit-form > [class*="col-"] {
        flex: 0 0 auto !important;
        width: 100% !important;
    }

    .customer-edit-hero .col-4 {
        margin-top: 1rem;
        text-align: left;
    }

    .customer-edit-form {
        padding: 1.25rem .75rem 0;
    }
}

.customer-hero-content {
    position: relative;
    z-index: 1;
}

.customer-panel {
    border-top: 6px solid var(--pcad-primary-light);
    margin-top: 1.5rem;
    padding: 1.5rem 1.75rem;
}

.customer-help,
.city-help,
.user-help {
    background: #fff;
    border: 1px solid #dce7e9;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1.25rem rgba(32, 52, 58, .1);
    padding: 1.15rem;
}

.customer-help p,
.city-help p,
.user-help p {
    color: #111827;
}

.customer-search-form {
    align-items: end;
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(0, 1fr) auto;
}

.customer-search-form .form-control,
.customer-search-form .btn {
    min-height: 48px;
}

.customer-alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.customer-letter {
    border: 1px solid #cbdadd;
    border-radius: .4rem;
    color: var(--pcad-primary);
    display: inline-grid;
    font-weight: 800;
    height: 2rem;
    place-items: center;
    text-decoration: none;
    width: 2rem;
}

.customer-letter:hover,
.customer-letter:focus,
.customer-letter.active {
    background: var(--pcad-action);
    border-color: var(--pcad-action);
    color: #111827;
}

.customer-table-shell {
    border: 1px solid #dce7e9;
    border-radius: .75rem;
    height: 16rem;
    overflow-y: auto;
}

.customer-table-shell table {
    border: none;
    margin: 0;
    min-width: 980px;
    width: 100%;
}

.customer-table-shell thead th {
    background: var(--pcad-primary-mid);
    border: 0;
    color: #fff;
    padding: .85rem .65rem;
}

.customer-table-shell tbody td {
    padding: .75rem .65rem;
    vertical-align: middle;
}

.customer-empty {
    color: #6b7280;
    padding: 2.5rem 1rem;
    text-align: center;
}

@media (max-width: 767.98px) {
    .customer-search-form {
        grid-template-columns: 1fr;
    }

    .customer-search-form .btn {
        width: 100%;
    }

}

/* Jurisdiction Center */

.city-hero-content {
    position: relative;
    z-index: 1;
}

.city-panel {
    border-top: 6px solid var(--pcad-primary-light);
    margin-top: 1.5rem;
    padding: 1.5rem 1.75rem;
}

.city-search {
    position: relative;
}

.city-search .form-control {
    min-height: 48px;
    padding-left: 2.75rem;
}

.city-search-icon {
    bottom: .86rem;
    color: var(--pcad-primary-light);
    font-size: 1.1rem;
    left: 1rem;
    position: absolute;
}

.city-table-shell {
    border: 1px solid #dce7e9;
    border-radius: .75rem;
    overflow: hidden;
}

.city-table-shell table {
    border: none;
    margin: 0;
    width: 100%;
}

.city-table-shell thead th {
    background: var(--pcad-primary-mid);
    border: 0;
    color: #fff;
    padding: .85rem 1rem;
}

.city-table-shell tbody td {
    padding: .75rem 1rem;
    vertical-align: middle;
}

.city-empty {
    color: #6b7280;
    display: none;
    padding: 2rem;
    text-align: center;
}

/* Identity Center */

.user-hero-content {
    position: relative;
    z-index: 1;
}

.user-panel {
    border-top: 6px solid var(--pcad-primary-light);
    margin-top: 1.5rem;
    padding: 1.5rem 1.75rem;
}

.user-toolbar {
    align-items: end;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.user-filter {
    flex: 1 1 560px;
    max-width: 760px;
    position: relative;
}

.user-filter .form-control {
    min-height: 48px;
    padding-left: 2.75rem;
}

.user-filter-icon {
    bottom: .86rem;
    color: var(--pcad-primary-light);
    font-size: 1.1rem;
    left: 1rem;
    position: absolute;
}

.user-page-controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    justify-content: flex-end;
}

.user-page-controls .pagination {
    margin: 0;
}

.user-table-shell {
    border: 1px solid #dce7e9;
    border-radius: .75rem;
    overflow-x: auto;
}

.user-table-shell table {
    border: none;
    margin: 0;
    min-width: 720px;
    width: 100%;
}

.user-table-shell thead th {
    background: var(--pcad-primary-mid);
    border: 0;
    color: #fff;
    padding: .85rem 1rem;
}

.user-table-shell tbody td {
    padding: .75rem 1rem;
    vertical-align: middle;
}

.user-empty {
    color: #6b7280;
    display: none;
    padding: 2rem;
    text-align: center;
}

@media (max-width: 767.98px) {
    .user-toolbar {
        display: block;
    }

    .user-page-controls {
        justify-content: flex-start;
        margin-top: 1rem;
    }
}

/* Project Archive */

.purge-help {
    background: #effafb;
    border: 1px solid #b7d9dd;
    border-radius: .85rem;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
}

.purge-help ol {
    color: #111827;
    margin: 0;
    padding-left: 1.25rem;
}

.purge-year-form {
    align-items: end;
    display: flex;
    gap: 1.25rem;
    justify-content: space-between;
}

.purge-year-field {
    align-items: end;
    display: flex;
    gap: .75rem;
    width: min(100%, 620px);
}

.purge-year-select {
    flex: 1 1 auto;
}

.purge-year-form .form-select,
.purge-year-form .btn {
    min-height: 48px;
}

.purge-results {
    overflow-x: auto;
}

.purge-results table {
    border: none;
    margin: 0;
    min-width: 960px;
    width: 100%;
}

.purge-results thead th {
    background: var(--pcad-primary-mid);
    border: 0;
    color: #fff;
    padding: .85rem .65rem;
}

.purge-results tbody td {
    padding: .75rem .65rem;
    vertical-align: middle;
}

.purge-warning {
    align-items: flex-start;
    background: #fff5f5;
    border-left: 4px solid var(--pcad-danger);
    border-radius: .35rem;
    color: #842029;
    display: flex;
    gap: .7rem;
    margin-top: 1rem;
    padding: .8rem 1rem;
}

@media (max-width: 767.98px) {
    .purge-year-form,
    .purge-year-field {
        display: block;
    }

    .purge-year-field .btn,
    #btnPurgeSelectedProjects {
        margin-top: .75rem;
        width: 100%;
    }
}
/* Shared customer and project information include */
.core-project-info {
    --project-info-ink: #17212b;
    --project-info-muted: #687783;
    --project-info-border: #d8e2e8;
    --project-info-soft: #f4f8fa;
    --project-info-teal: #00717a;
    display: grid;
    grid-template-columns: minmax(230px, 1fr) minmax(230px, .9fr) minmax(420px, 1.65fr);
    overflow: hidden;
    border: 1px solid var(--project-info-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .3rem 1rem rgba(29, 77, 104, .06);
}

.core-project-info-card {
    display: flex;
    min-width: 0;
    gap: .8rem;
    padding: 1rem 1.1rem;
}

.core-project-info-card + .core-project-info-card {
    border-left: 1px solid var(--project-info-border);
}

.core-project-info-icon {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    flex: 0 0 2.35rem;
    place-items: center;
    border-radius: .6rem;
    color: var(--project-info-teal);
    background: #e8f3f4;
}

.core-project-info-content {
    min-width: 0;
    flex: 1 1 auto;
}

.core-project-info-label {
    display: block;
    margin-bottom: .5rem;
    color: var(--project-info-teal);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.core-project-customer address {
    display: grid;
    gap: .15rem;
    margin: 0;
    color: var(--project-info-ink);
    font-style: normal;
}

.core-project-customer address strong {
    margin-bottom: .15rem;
    font-size: 1rem;
}

.core-project-customer address span,
.core-project-info-list {
    font-size: .82rem;
}

.core-project-info-list,
.core-project-detail-grid {
    margin: 0;
}

.core-project-info-list > div,
.core-project-detail-grid > div {
    display: grid;
    align-items: baseline;
}

.core-project-info-list > div {
    grid-template-columns: 3.25rem minmax(0, 1fr);
    gap: .5rem;
    padding: .12rem 0;
}

.core-project-info dt,
.core-project-info dd {
    margin: 0;
}

.core-project-info dt {
    color: var(--project-info-muted);
    font-size: .75rem;
    font-weight: 500;
}

.core-project-info dd {
    overflow-wrap: anywhere;
    color: var(--project-info-ink);
    font-size: .82rem;
    font-weight: 700;
}

.core-project-detail-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem 1rem;
}

.core-project-detail-grid > div {
    gap: .05rem;
}

.core-project-stage-badge {
    display: inline-block;
    padding: .22rem .55rem;
    border: 1px solid #005a62;
    border-radius: 999px;
    color: #fff;
    background: #006f78;
    box-shadow: 0 1px 2px rgba(0, 56, 66, .2);
    font-size: .72rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .04em;
}

@media (max-width: 991.98px) {
    .core-project-info {
        grid-template-columns: 1fr 1fr;
    }

    .core-project-details {
        grid-column: 1 / -1;
        border-top: 1px solid var(--project-info-border);
        border-left: 0 !important;
    }
}

@media (max-width: 575.98px) {
    .core-project-info {
        grid-template-columns: 1fr;
    }

    .core-project-info-card + .core-project-info-card {
        border-top: 1px solid var(--project-info-border);
        border-left: 0;
    }

    .core-project-details {
        grid-column: auto;
    }

.core-project-detail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ========================================================================== */
/* Consolidated PCAD page designs (2026-07-27)                                */
/* ========================================================================== */

/* Project notes editor */
.project-notes-editor {
    overflow: hidden;
    border: 1px solid #d8e2e8;
    border-radius: .95rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(22, 70, 92, .08);
}

.project-notes-editor-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1rem 1.25rem;
    color: #fff;
    background: #00717a;
}

.project-notes-eyebrow {
    display: block;
    margin-bottom: .15rem;
    color: #a8edf0;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.project-notes-editor-heading h3 {
    margin: 0;
    font-size: 1.12rem;
    font-weight: 800;
}

.project-notes-editor-heading h3 i {
    margin-right: .5rem;
    color: #a8edf0;
}

.project-notes-updated {
    display: grid;
    justify-items: end;
    font-size: .78rem;
}

.project-notes-updated span,
.project-notes-updated small {
    color: rgba(255, 255, 255, .78);
}

.project-notes-editor-body {
    padding: 1.25rem;
}

.project-notes-help {
    margin: -.15rem 0 .75rem;
    color: #687783;
    font-size: .86rem;
}

.project-notes-editor textarea {
    min-height: 16rem;
    padding: 1rem;
    border-color: #cad7de;
    border-radius: .65rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.55;
    resize: vertical;
}

.project-notes-editor textarea:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.project-notes-editor-actions {
    display: flex;
    justify-content: flex-end;
    gap: .65rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid #d8e2e8;
    background: #f4f8fa;
}

@media (max-width: 575.98px) {
    .project-notes-editor-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .project-notes-updated {
        justify-items: start;
    }
}

@media print {
    .project-notes-editor {
        box-shadow: none;
    }
}

/* Project status change */
.project-status-change-page {
    --status-change-border: #d8e2e8;
    --status-change-muted: #687783;
    --status-change-soft: #f4f8fa;
    --status-change-teal: #00717a;
    --status-change-navy: #16465c;
}

.project-status-change-heading {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--status-change-border);
}

.project-status-change-heading h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.35rem);
    letter-spacing: -.035em;
}

.project-status-change-page #preTotals,
.project-status-change-page #postTotals {
    overflow: hidden;
    margin-top: 1.5rem;
    padding: 0 0 1rem;
    border: 1px solid var(--status-change-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(22, 70, 92, .075);
}

.project-status-change-page #preTotals > h3,
.project-status-change-page #postTotals > h3 {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: 0 0 .75rem;
    padding: .95rem 1.2rem;
    color: #fff;
    background: var(--status-change-teal);
    font-size: 1.05rem;
}

.project-status-change-page #postTotals .post-totals-heading-main {
    margin-right: auto;
}

.project-status-change-page #postTotals .post-totals-calculation-message {
    margin-left: auto;
    color: #d5f5f6;
    font-size: .75rem;
    white-space: nowrap;
}

.project-status-change-page #preTotals > h3::before,
.project-status-change-page #postTotals > h3::before {
    margin-right: .6rem;
    color: #a8edf0;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f080";
}

.project-status-change-page #preTotals > .row,
.project-status-change-page #postTotals > .row {
    margin: 0;
    padding: .32rem 1.2rem;
}

.project-status-change-page #preTotals .text-gray,
.project-status-change-page #postTotals .text-gray {
    color: var(--status-change-muted) !important;
}

.project-status-change-page #preTotals > .row span.fw-bold,
.project-status-change-page #postTotals > .row span.fw-bold {
    color: #17212b;
}

.project-status-change-page #preTotals > h3,
.project-status-change-page #preTotals > h3.fw-bold,
.project-status-change-page #postTotals > h3,
.project-status-change-page #postTotals > h3.fw-bold {
    color: #fff;
}

.project-status-change-page #discardBtn,
.project-status-change-page #discardBtn:hover,
.project-status-change-page #discardBtn:focus,
.project-status-change-page #discardBtn:active {
    color: #fff;
}

.project-status-change-page #formContainer {
    margin-top: 1.5rem !important;
    padding: 1.25rem;
    border: 1px solid var(--status-change-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(22, 70, 92, .075);
}

.project-status-change-page #formContainer::before {
    display: block;
    margin: -1.25rem -1.25rem 1.25rem;
    padding: .95rem 1.2rem;
    color: #fff;
    background: linear-gradient(120deg, var(--status-change-navy), var(--status-change-teal));
    font-size: 1.05rem;
    font-weight: 800;
    content: "Project Status and Assignment";
}

.project-status-change-page #formContainer form > [class*="col-"] {
    margin-bottom: .55rem;
}

.project-status-change-page #formContainer .form-label {
    min-height: 1.25rem;
    margin-bottom: .35rem;
    color: #526570;
    font-size: .78rem;
    font-weight: 700;
}

.project-status-change-page #formContainer .form-control,
.project-status-change-page #formContainer .form-select {
    min-height: 2.7rem;
    border-color: #cad7de;
    border-radius: .55rem;
}

.project-status-change-page #formContainer .form-control:focus,
.project-status-change-page #formContainer .form-select:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.project-status-change-page #formContainer .form-control:disabled,
.project-status-change-page #formContainer .form-select:disabled {
    color: #526570;
    background-color: #eef2f4;
}

.project-status-change-page #formContainer .font-size-small.fst-italic.text-primary {
    display: block;
    margin-top: .4rem;
    color: var(--status-change-muted) !important;
    font-style: normal !important;
    line-height: 1.35;
}

.project-status-change-page #formContainer .form-group:has(#suggestedEstAmount:not(.d-none)) > .font-size-small {
    display: none;
}

.project-status-change-page #suggestedEstAmount:not(.d-none) {
    display: block;
    width: 100%;
    margin-top: .4rem;
    padding: 0;
    font-size: .78rem;
    line-height: 1.35;
    text-align: left;
    white-space: nowrap;
}

.project-status-change-page #formContainer .form-inline-label-input-submit,
.project-status-change-page #formContainer .form-inline-label-select-submit {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: .55rem;
    row-gap: 0;
}

.project-status-change-page #formContainer .form-inline-label-input-submit .form-label,
.project-status-change-page #formContainer .form-inline-label-select-submit .form-label,
.project-status-change-page #formContainer .form-inline-label-input-submit span {
    grid-column: 1 / -1;
}

.project-status-change-page #formContainer .form-inline-label-input-submit > input.form-control,
.project-status-change-page #formContainer .form-inline-label-select-submit > select.form-select {
    display: block;
    width: 100%;
}

.project-status-change-page #formContainer .form-inline-label-input-submit > input.form-control {
    position: relative;
    top: .2rem;
}

.project-status-change-page #formContainer .form-inline-label-input-submit > button.btn,
.project-status-change-page #formContainer .form-inline-label-select-submit > button.btn {
    display: block;
    width: auto;
    min-width: 6rem;
    margin: 0;
    padding-right: 1rem;
    padding-left: 1rem;
}

.project-status-change-page #formContainer .status-change-alerts:has(.alert.hide) {
    margin-bottom: 0;
}

.project-status-change-page #formContainer .status-change-alerts .alert.hide {
    display: none;
}

.project-status-change-page #formContainer .col-12.text-align-center {
    margin: .25rem -1.25rem -1.25rem;
    width: calc(100% + 2.5rem);
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--status-change-border);
    background: var(--status-change-soft);
}

@media (max-width: 991.98px) {
    .project-status-change-page #formContainer form > .col-3,
    .project-status-change-page #formContainer form > .col-6 {
        width: 50%;
    }
}

@media (max-width: 575.98px) {
    .project-status-change-page #formContainer form > .col-3,
    .project-status-change-page #formContainer form > .col-6 {
        width: 100%;
    }

    .project-status-change-heading > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .project-status-change-heading .btn-group {
        margin-top: 1rem;
    }
}

/* --- accountStatement.css --- */
/*
 * Designer account statement workspace
 * jKirkerx / Codex - 2026-07-27
 */

.account-statement-page {
    --statement-bg: #f4f7f9;
    --statement-border: #d9e3e8;
    --statement-ink: #172033;
    --statement-muted: #667685;
    --statement-teal: #006f78;
    background: var(--statement-bg);
    color: var(--statement-ink);
}

.account-statement-shell {
    padding-top: 0.75rem;
}

.account-statement-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.account-statement-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.account-statement-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.account-statement-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.account-statement-hero p {
    color: #d3eaec;
    margin: 0;
    max-width: 48rem;
}

.account-statement-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--statement-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.account-statement-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.account-statement-filters .form-control,
.account-statement-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.account-statement-filters .form-control:focus,
.account-statement-filters .form-select:focus {
    border-color: var(--statement-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.account-statement-filters .btn-link {
    color: var(--statement-teal) !important;
    padding: 0.35rem 0.7rem 0 0;
}

.account-statement-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.account-statement-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.account-statement-overview {
    background: #fff;
    border: 1px solid var(--statement-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1rem rgba(15, 35, 48, 0.065);
    margin-bottom: 1.4rem;
    overflow: hidden;
    padding: 0;
}

.account-statement-overview-header {
    align-items: center;
    background: #f8fbfc;
    border-bottom: 1px solid var(--statement-border);
    display: flex;
    justify-content: space-between;
    padding: 1.15rem 1.3rem;
}

.account-statement-overview .account-statement-eyebrow,
.account-statement-journal .account-statement-eyebrow {
    color: var(--statement-teal);
}

.account-statement-overview-header h2,
.account-statement-journal-header h3 {
    color: #123d53;
    font-size: 1.22rem;
    font-weight: 800;
    margin: 0;
}

.account-statement-overview-header p,
.account-statement-journal-header p {
    color: var(--statement-muted);
    font-size: 0.82rem;
    font-weight: 650;
    margin: 0.2rem 0 0;
}

.account-statement-period-type,
.account-statement-journal-actions > span {
    background: #e5f5f6;
    border-radius: 99rem;
    color: #00626b;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 0.42rem 0.75rem;
}

.account-statement-summary-body {
    align-items: stretch;
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(15rem, 0.85fr) minmax(24rem, 1.6fr);
    padding: 1.2rem;
}

.account-statement-balance-panel {
    background: linear-gradient(135deg, #123d53, #006f78);
    border-radius: 0.8rem;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 13rem;
    padding: 1.5rem;
}

.account-statement-balance-panel > span {
    color: #bdebed;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.account-statement-balance-panel > strong {
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.1;
    margin: 0.55rem 0;
}

.account-statement-balance-panel > small {
    color: #d3eaec;
}

.account-statement-detail-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

.account-statement-detail-list > div {
    align-items: center;
    border-bottom: 1px solid #e1eaee;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 0.75rem 0.9rem;
}

.account-statement-detail-list dt {
    color: var(--statement-muted);
    font-size: 0.82rem;
    font-weight: 700;
}

.account-statement-detail-list dd {
    color: var(--statement-ink);
    font-size: 0.98rem;
    font-weight: 800;
    margin: 0;
}

.account-statement-detail-list .account-statement-credit {
    color: #137a4b;
}

.account-statement-detail-list .account-statement-debit {
    color: #c65f13;
}

.account-statement-detail-list .account-statement-detail-total {
    background: #e8f5f6;
    border: 1px solid #c9e5e7;
    border-radius: 0.6rem;
    grid-column: 1 / -1;
    margin-top: 0.65rem;
}

.account-statement-detail-total dt,
.account-statement-detail-total dd {
    color: #005b64;
}

.account-statement-detail-total dd {
    font-size: 1.2rem;
}

.account-statement-journal {
    background: #fff;
    border: 1px solid var(--statement-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.06);
    margin-bottom: 1.5rem;
    overflow: hidden;
    padding: 0;
}

.account-statement-journal-header {
    align-items: center;
    background: #f8fbfc;
    border-bottom: 1px solid var(--statement-border);
    display: flex;
    justify-content: space-between;
    padding: 1.1rem 1.2rem;
}

.account-statement-journal-actions {
    align-items: center;
    display: flex;
    gap: 0.65rem;
}

.account-statement-journal > .row {
    margin: 0;
}

.account-statement-table-wrap {
    max-height: 44rem;
    overflow: auto;
    padding: 0;
}

.account-statement-page .table {
    background: #fff;
    border: 0 !important;
    margin: 0;
    min-width: 64rem;
}

.account-statement-page .table thead th {
    background: #00444b;
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 1;
}

.account-statement-page .table tbody tr:hover {
    background: #f4fbfb;
}

.account-statement-journal-total {
    background: #f1f6f8;
    border-top: 2px solid #c8d7dd;
}

.account-statement-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 991.98px) {
    .account-statement-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .account-statement-submit {
        padding-top: 0;
    }

    .account-statement-summary-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .account-statement-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .account-statement-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }

    .account-statement-overview-header,
    .account-statement-journal-header {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }

    .account-statement-detail-list {
        grid-template-columns: 1fr;
    }

    .account-statement-detail-list .account-statement-detail-total {
        grid-column: auto;
    }
}

@media print {
    .account-statement-page .header-container,
    .account-statement-page .account-statement-hero,
    .account-statement-page .account-statement-filters,
    .account-statement-page .account-statement-journal-actions button,
    .account-statement-page .btn-outline-dark[href="/home.php"],
    .account-statement-page .footer-container {
        display: none !important;
    }

    .account-statement-page,
    .account-statement-page .content-container {
        background: #fff !important;
    }

    .account-statement-overview,
    .account-statement-journal {
        border: 1px solid #bbb;
        box-shadow: none;
        max-width: none;
    }

    .account-statement-table-wrap {
        max-height: none;
        overflow: visible;
    }

    .account-statement-page .table {
        min-width: 0;
    }

    .account-statement-page .table thead th {
        position: static;
    }
}


/* --- annualSalesReport.css --- */
/*
 * Annual sales summary workspace
 * jKirkerx / Codex - 2026-07-27
 */

.annual-sales-page {
    --sales-bg: #f4f7f9;
    --sales-border: #d9e3e8;
    --sales-ink: #172033;
    --sales-muted: #667685;
    --sales-teal: #006f78;
    background: var(--sales-bg);
    color: var(--sales-ink);
}

.annual-sales-shell {
    padding-top: 0.75rem;
}

.annual-sales-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.annual-sales-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.annual-sales-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.annual-sales-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.annual-sales-hero p {
    color: #d3eaec;
    margin: 0;
}

.annual-sales-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--sales-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.annual-sales-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.annual-sales-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.annual-sales-filters .form-select:focus {
    border-color: var(--sales-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.annual-sales-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.annual-sales-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.annual-sales-empty {
    background: #fff;
    border: 1px solid var(--sales-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.055);
    padding: 3rem 1rem;
    text-align: center;
}

.annual-sales-empty i {
    color: #159c78;
    font-size: 2.3rem;
}

.annual-sales-empty h2 {
    font-size: 1.3rem;
    font-weight: 750;
    margin: 0.8rem 0 0.25rem;
}

.annual-sales-empty p {
    color: var(--sales-muted);
    margin: 0;
}

.annual-sales-table-card {
    background: #fff;
    border: 1px solid var(--sales-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.06);
    overflow-x: auto;
}

.annual-sales-table-card > .col-12 {
    padding: 0;
}

.annual-sales-table-card .table {
    border: 0 !important;
    margin: 0;
    min-width: 58rem;
}

.annual-sales-table-card .table tbody tr:hover {
    background: #f4fbfb;
}

.annual-sales-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 991.98px) {
    .annual-sales-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .annual-sales-submit {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    .annual-sales-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .annual-sales-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }
}


/* --- assignCommission.css --- */
/*
 * Commission assignment workspace
 * jKirkerx / Codex - 2026-07-27
 */

.commission-assignment-page {
    --assignment-bg: #f4f7f9;
    --assignment-border: #d9e3e8;
    --assignment-ink: #172033;
    --assignment-muted: #667685;
    --assignment-teal: #006f78;
    background: var(--assignment-bg);
    color: var(--assignment-ink);
}

.commission-assignment-header #alertContainer:empty,
.commission-assignment-header #alertContainer {
    min-height: 1rem;
}

.commission-assignment-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem;
    position: relative;
}

.commission-assignment-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.commission-assignment-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.commission-assignment-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 1rem;
}

.commission-pay-period {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.85rem;
}

.commission-pay-period > span {
    color: #c8e6e8;
    font-size: 0.83rem;
    font-weight: 650;
    text-transform: uppercase;
}

.commission-pay-period strong {
    align-items: center;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    display: inline-flex;
    gap: 0.65rem;
    padding: 0.45rem 0.85rem;
}

.commission-assignment-content {
    margin-top: 1.5rem;
}

.commission-table-card {
    background: #fff;
    border: 1px solid var(--assignment-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.065);
    overflow: hidden;
    text-align: left;
}

.commission-table-summary {
    align-items: center;
    border-bottom: 1px solid var(--assignment-border);
    display: flex;
    justify-content: space-between;
    padding: 1.15rem 1.35rem;
}

.commission-table-summary h2 {
    font-size: 1.12rem;
    font-weight: 750;
    margin: 0 0 0.2rem;
}

.commission-table-summary p {
    color: var(--assignment-muted);
    font-size: 0.86rem;
    margin: 0;
}

.commission-project-count {
    background: #e5f5f5;
    border: 1px solid #bce4e5;
    border-radius: 999px;
    color: var(--assignment-teal);
    font-size: 0.78rem;
    font-weight: 750;
    padding: 0.35rem 0.7rem;
    white-space: nowrap;
}

.commission-table-scroll {
    overflow-x: auto;
}

.commission-assignment-table {
    border: 0;
    margin: 0;
    min-width: 68rem;
    width: 100%;
}

.commission-assignment-table tbody tr {
    background: #fff;
    border-top: 1px solid #e4eaee;
    transition: background-color 0.16s ease;
}

.commission-assignment-table tbody tr:hover {
    background: #f6fbfb;
}

.commission-assignment-table tbody td {
    border: 0;
    padding: 0.9rem 1rem;
    vertical-align: middle;
}

.commission-assignment-table tbody td:first-child {
    border-left: 0.25rem solid #20a4ad;
}

.commission-assignment-table .form-check {
    display: flex;
    justify-content: center;
    margin: 0;
    min-height: 1.5rem;
}

.commission-assignment-table .form-check-input {
    height: 1.2rem;
    margin: 0 !important;
    width: 1.2rem;
}

.commission-assignment-table .form-check-input:checked {
    background-color: var(--assignment-teal);
    border-color: var(--assignment-teal);
}

.commission-assignment-table .text-success {
    color: #087f5b !important;
}

.commission-empty-state {
    background: #fff;
    border: 1px solid var(--assignment-border);
    border-radius: 0.9rem;
    padding: 3rem 1rem;
}

.commission-empty-state > i {
    color: #159c78;
    font-size: 2.25rem;
}

.commission-empty-state h3 {
    font-size: 1.25rem;
    font-weight: 750;
    margin: 0.8rem 0 0.25rem;
}

.commission-empty-state p {
    color: var(--assignment-muted);
    margin: 0;
}

.commission-home-action .btn {
    min-width: 6rem;
}

@media (max-width: 767.98px) {
    .commission-assignment-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem;
    }

    .commission-table-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }
}


/* --- assignExpense.css --- */
/*
 * Commission expense workspace
 * jKirkerx / Codex - 2026-07-27
 */

.commission-expense-page {
    --expense-bg: #f4f7f9;
    --expense-border: #d9e3e8;
    --expense-ink: #172033;
    --expense-muted: #667685;
    --expense-teal: #006f78;
    background: var(--expense-bg);
    color: var(--expense-ink);
}

.commission-expense-shell {
    padding-top: 0.75rem;
}

.commission-expense-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.commission-expense-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.commission-expense-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.commission-expense-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.commission-expense-hero p {
    color: #d3eaec;
    margin: 0;
    max-width: 48rem;
}

.commission-expense-person {
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    display: inline-block;
    font-size: 0.86rem;
    font-weight: 750;
    margin-top: 0.85rem;
    padding: 0.35rem 0.75rem;
}

.commission-expense-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--expense-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    gap: 0;
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.commission-expense-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.commission-expense-filters .form-control,
.commission-expense-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.commission-expense-filters .form-control:focus,
.commission-expense-filters .form-select:focus {
    border-color: var(--expense-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.commission-expense-filters .btn-link {
    color: var(--expense-teal) !important;
    padding: 0.35rem 0.7rem 0 0;
    text-decoration: none;
}

.commission-expense-filters .btn-link:hover {
    text-decoration: underline;
}

.commission-expense-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.commission-expense-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.commission-expense-page .table {
    background: #fff;
    border: 1px solid var(--expense-border) !important;
    box-shadow: 0 0.2rem 0.75rem rgba(15, 35, 48, 0.05);
}

.commission-expense-page .table tbody tr:hover {
    background: #f4fbfb;
}

.commission-expense-page #pcForm {
    background: transparent;
}

.commission-expense-page #pcForm .form-control {
    min-height: 2.9rem;
    border-color: #cbd8de;
}

.commission-expense-entry {
    margin: 0 1rem 1.25rem;
    overflow: hidden;
    border: 1px solid var(--expense-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.1rem rgba(15, 35, 48, .07);
}

.commission-expense-entry-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.2rem;
    border-bottom: 1px solid #e1eaee;
    background: #f8fbfc;
}

.commission-expense-entry-eyebrow {
    color: var(--expense-teal);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.commission-expense-entry-header h2 {
    margin: .12rem 0 0;
    color: #173f51;
    font-size: 1.12rem;
    font-weight: 800;
}

.commission-expense-period {
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: .5rem .7rem;
    border-radius: .55rem;
    color: #375563;
    background: #eaf5f6;
    font-size: .78rem;
    font-weight: 750;
}

.commission-expense-period i {
    color: var(--expense-teal);
}

.commission-expense-entry-form {
    display: grid;
    grid-template-columns: minmax(9rem, .75fr) minmax(16rem, 2fr) minmax(10rem, .75fr) minmax(9rem, .7fr);
    gap: .9rem;
    align-items: start;
    padding: 1.15rem 1.2rem 1.25rem;
}

.commission-expense-entry-form .form-label {
    margin-bottom: .4rem;
    color: #39515e;
    font-size: .78rem;
    font-weight: 800;
}

.commission-expense-money {
    position: relative;
}

.commission-expense-money > span {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: .85rem;
    color: var(--expense-teal);
    font-weight: 900;
    transform: translateY(-50%);
}

.commission-expense-money .form-control {
    padding-left: 1.65rem;
}

.commission-expense-add-action {
    padding-top: 1.48rem;
}

.commission-expense-add-action .btn {
    width: 100%;
    min-height: 2.9rem;
}

.commission-expense-add-action i {
    margin-right: .25rem;
}

.commission-expense-history,
.commission-expense-empty {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.commission-expense-history-card {
    overflow: visible;
    border: 1px solid var(--expense-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.1rem rgba(15, 35, 48, .07);
}

.commission-expense-history-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.2rem;
}

.commission-expense-history-header h3 {
    margin: .12rem 0 0;
    color: #173f51;
    font-size: 1.08rem;
    font-weight: 800;
}

.commission-expense-history-header p {
    margin: .15rem 0 0;
    color: var(--expense-muted);
    font-size: .76rem;
    font-weight: 650;
}

.commission-expense-count {
    padding: .45rem .7rem;
    border-radius: 999px;
    color: #116b72;
    background: #e7f4f5;
    font-size: .73rem;
    font-weight: 800;
    white-space: nowrap;
}

.commission-expense-count i {
    margin-right: .25rem;
}

.commission-expense-page .commission-expense-table {
    margin: 0;
    border: 0 !important;
    border-top: 1px solid var(--expense-border) !important;
    box-shadow: none;
}

.commission-expense-table-wrap {
    overflow: visible;
}

.commission-expense-table thead th {
    padding: .78rem 1rem;
    border: 0;
    color: #fff;
    background: #054c55;
    font-size: .76rem;
    vertical-align: middle;
}

.commission-expense-table tbody td {
    padding: .72rem 1rem;
    border-color: #e4ebee;
    vertical-align: middle;
}

.commission-expense-table tbody:not(.commission-expense-total) tr:nth-child(even) {
    background: #f8fafb;
}

.commission-expense-amount {
    display: inline-block;
    padding: .3rem .55rem;
    border-radius: .45rem;
    color: #9b4c00;
    background: #fff3df;
    font-weight: 850;
}

.commission-expense-total td {
    padding-top: .85rem !important;
    padding-bottom: .85rem !important;
    border-top: 2px solid #c9d9de !important;
    color: #536b77;
    background: #f4f8f9;
    font-size: .82rem;
    font-weight: 750;
}

.commission-expense-total strong {
    color: #173f51;
    font-size: 1rem;
}

.commission-expense-empty {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1rem 1.15rem;
    border: 1px dashed #bfd0d6;
    border-radius: .75rem;
    color: var(--expense-muted);
    background: #f8fbfc;
}

.commission-expense-empty > i {
    display: grid;
    width: 2.3rem;
    height: 2.3rem;
    flex: 0 0 2.3rem;
    place-items: center;
    border-radius: .6rem;
    color: var(--expense-teal);
    background: #e1f1f2;
}

.commission-expense-empty h3 {
    margin: 0 0 .12rem;
    color: #294653;
    font-size: .95rem;
    font-weight: 800;
}

.commission-expense-empty p {
    margin: 0;
    font-size: .78rem;
}

.commission-expense-remove-modal {
    overflow: hidden;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 1.4rem 3.5rem rgba(21, 34, 43, .28);
}

.commission-expense-remove-modal .modal-header {
    align-items: center;
    padding: 1.1rem 1.25rem;
    border: 0;
    color: #fff;
    background: linear-gradient(120deg, #9f2634, #dc3545);
}

.commission-remove-eyebrow {
    display: block;
    margin-bottom: .15rem;
    color: #ffd9dd;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.commission-expense-remove-modal .modal-title {
    color: #fff;
    font-size: 1.18rem;
    font-weight: 800;
}

.commission-expense-remove-modal .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

.commission-expense-remove-modal .modal-body {
    padding: 1.25rem;
}

.commission-remove-warning {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    margin: 0 0 1rem;
    padding: .75rem .85rem;
    border: 1px solid #f0c9cd;
    border-radius: .65rem;
    color: #71313a;
    background: #fff4f5;
    font-size: .8rem;
    line-height: 1.45;
}

.commission-remove-warning i {
    margin-top: .12rem;
    color: #c52f40;
}

.commission-remove-details {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .7rem;
}

.commission-remove-details > div {
    padding: .75rem;
    border: 1px solid #e0e7ea;
    border-radius: .6rem;
    background: #f8fafb;
}

.commission-remove-details span,
.commission-remove-details strong {
    display: block;
}

.commission-remove-details span {
    margin-bottom: .22rem;
    color: #6b7b84;
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.commission-remove-details strong {
    color: #263a44;
    font-size: .88rem;
}

.commission-remove-details .commission-remove-amount {
    color: #a44200;
}

.commission-remove-details .commission-remove-description {
    grid-column: 1 / -1;
}

.commission-expense-remove-modal .modal-footer {
    padding: .9rem 1.25rem;
    border-color: #e2e9ec;
    background: #f8fafb;
}

.commission-expense-remove-modal .modal-footer .btn {
    min-width: 7.5rem;
}

@media (max-width: 991.98px) {
    .commission-expense-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .commission-expense-submit {
        padding-top: 0;
    }

    .commission-expense-entry-form {
        grid-template-columns: 1fr 1fr;
    }

    .commission-expense-description {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .commission-expense-add-action {
        padding-top: 1.48rem;
    }
}

@media (max-width: 767.98px) {
    .commission-expense-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .commission-expense-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }

    .commission-expense-entry-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .commission-expense-history-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .commission-expense-table-wrap {
        overflow-x: auto;
    }

    .commission-remove-details {
        grid-template-columns: 1fr;
    }

    .commission-remove-details .commission-remove-description {
        grid-column: auto;
    }

    .commission-expense-entry-form {
        grid-template-columns: 1fr;
    }

    .commission-expense-description {
        grid-column: auto;
        grid-row: auto;
    }

    .commission-expense-add-action {
        padding-top: 0;
    }
}


/* --- breakdown.css --- */
.breakdown-page {
    --breakdown-ink: #17212b;
    --breakdown-muted: #687783;
    --breakdown-border: #d8e2e8;
    --breakdown-soft: #f4f8fa;
    --breakdown-teal: #00717a;
    --breakdown-navy: #1d4d68;
}

.breakdown-page > .row:first-child {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--breakdown-border);
}

.breakdown-page > .row:first-child h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.breakdown-version-note {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    border: 1px solid #d8d0a6;
    border-radius: .75rem;
    background: #fffbed;
}

.breakdown-version-note > .col-12 {
    padding: 0;
}

.breakdown-version-note h3 {
    margin: 0 !important;
    padding: .75rem 1rem;
    color: #624e13;
    font-size: .85rem;
}

.breakdown-version-note textarea {
    border: 0;
    border-top: 1px solid #e5ddba;
    border-radius: 0;
    background: #fffef8;
}

.breakdown-management-section {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    padding: 0 1rem 1rem;
    border: 1px solid var(--breakdown-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.breakdown-management-section > .col-12:first-child {
    flex: 0 0 calc(100% + 2rem);
    margin-right: -1rem;
    margin-bottom: 1rem;
    margin-left: -1rem;
    width: calc(100% + 2rem);
    max-width: calc(100% + 2rem);
    padding: 0;
}

.breakdown-management-section > .col-12:first-child h3 {
    display: block !important;
    margin: 0 !important;
    padding: 1rem 1.2rem;
    color: #fff;
    background: linear-gradient(120deg, var(--breakdown-navy), #27677d);
    font-size: 1.1rem;
}

.breakdown-management-section > .col-12:first-child h3::before {
    margin-right: .65rem;
    color: #a3e3e6;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f509";
}

.breakdown-management-section .form-label {
    min-height: 2.35rem;
    margin-bottom: .35rem;
    color: var(--breakdown-muted);
    font-size: .77rem;
}

.breakdown-management-section .form-select,
.breakdown-management-section .form-control {
    border-color: #cad7de;
    border-radius: .55rem;
}

.breakdown-management-section .form-select:focus,
.breakdown-management-section .form-control:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.breakdown-management-section > .col-12:last-child {
    margin-top: 1rem;
    padding: .8rem 1rem;
    border: 1px solid var(--breakdown-border);
    border-radius: .65rem;
    background: var(--breakdown-soft);
}

.breakdown-management-section > .col-12:last-child .form-group {
    display: inline-block;
    margin-right: .75rem;
}

.breakdown-management-section .form-check-input:checked {
    border-color: var(--breakdown-teal);
    background-color: var(--breakdown-teal);
}

.breakdown-operations {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

.breakdown-operations > .col-12 {
    padding: 0;
}

.breakdown-operation-section {
    overflow: hidden;
    margin-bottom: 1rem;
    padding: 0;
    border: 1px solid var(--breakdown-border);
    border-radius: .85rem;
    background: #fff;
    box-shadow: 0 .3rem 1rem rgba(29, 77, 104, .055);
}

.breakdown-operation-section h3 {
    margin: 0 !important;
    padding: .9rem 1.1rem;
    color: #fff;
    background: var(--breakdown-teal);
    font-size: 1.05rem;
}

.breakdown-operation-section h3::before {
    margin-right: .6rem;
    color: #b6e9eb;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f0ae";
}

.breakdown-operation-section .table {
    margin-bottom: 0;
}

.breakdown-operation-section .thead-core th {
    padding: .7rem .8rem;
    border: 0;
    color: var(--breakdown-teal);
    background: #edf4f6;
    font-size: .76rem;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.breakdown-operation-section .tbody-core td {
    padding-top: .7rem;
    padding-bottom: .7rem;
    border-color: #e1e9ed;
    vertical-align: top;
}

.breakdown-operation-section .tbody-core tr.alternate-row-colors-core:nth-child(odd) > td {
    background-color: #fff;
}

.breakdown-operation-section .tbody-core tr.alternate-row-colors-core:nth-child(even) > td {
    background-color: #f1f5f6;
}

.breakdown-operation-section .tbody-core tr:hover td {
    background-color: #e7f2f4;
}

.breakdown-operation-section .form-control,
.breakdown-operation-section .form-select {
    border-color: #cad7de;
    border-radius: .5rem;
}

@media (max-width: 991.98px) {
    .breakdown-management-section > .col-3 {
        width: 50%;
        margin-bottom: 1rem;
    }

    .breakdown-operation-section {
        overflow-x: auto;
    }

    .breakdown-operation-section .table {
        min-width: 820px;
    }
}

@media (max-width: 575.98px) {
    .breakdown-page > .row:first-child > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .breakdown-page > .row:first-child .btn-group {
        margin-top: 1rem;
        margin-left: 0 !important;
    }

    .breakdown-management-section > .col-3 {
        width: 100%;
    }

    .breakdown-management-section > .col-12:last-child .form-check {
        display: block;
        margin: .45rem 0;
    }
}


/* --- commissionYtdReport.css --- */
/*
 * Sales commission YTD report workspace
 * jKirkerx / Codex - 2026-07-27
 */

.commission-ytd-page {
    --ytd-bg: #f4f7f9;
    --ytd-border: #d9e3e8;
    --ytd-ink: #172033;
    --ytd-muted: #667685;
    --ytd-teal: #006f78;
    background: var(--ytd-bg);
    color: var(--ytd-ink);
}

.commission-ytd-shell {
    padding-top: 0.75rem;
}

.commission-ytd-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.commission-ytd-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.commission-ytd-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.commission-ytd-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.commission-ytd-hero p {
    color: #d3eaec;
    margin: 0;
    max-width: 52rem;
}

.commission-ytd-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--ytd-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.commission-ytd-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.commission-ytd-filters .form-control,
.commission-ytd-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.commission-ytd-filters .form-control:focus,
.commission-ytd-filters .form-select:focus {
    border-color: var(--ytd-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.commission-ytd-filters .btn-link {
    color: var(--ytd-teal) !important;
    padding: 0.35rem 0.7rem 0 0;
}

.commission-ytd-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.commission-ytd-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.commission-ytd-projects {
    background: #fff;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 .65rem 1.6rem rgba(19, 52, 67, .11);
    overflow-x: auto;
    padding: 1.15rem 0 0;
}

.commission-ytd-results {
    padding-right: 0;
    padding-left: 0;
}

.commission-ytd-results > .row {
    margin-right: 0;
    margin-left: 0;
}

.commission-ytd-projects > h5 {
    color: #123d53;
    margin: 0 1.15rem 1rem !important;
}

.commission-ytd-projects .table {
    border: 0 !important;
    margin-bottom: 0;
    min-width: 78rem;
}

.commission-ytd-projects .table tbody tr:hover,
.commission-ytd-results .table tbody tr:hover {
    background: #f4fbfb;
}

.commission-ytd-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.commission-ytd-kpi-card {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1rem 1.15rem;
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .4rem 1.15rem rgba(19, 52, 67, .09);
}

.commission-ytd-kpi-earned {
    justify-content: flex-end;
}

.commission-ytd-kpi-icon,
.commission-ytd-card-icon {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    flex: 0 0 2.55rem;
    place-items: center;
    border-radius: .7rem;
    color: var(--ytd-teal);
    background: #e5f5f5;
}

.commission-ytd-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 1rem;
    margin-top: 1rem;
}

.commission-ytd-summary-card,
.commission-ytd-journal-card {
    padding: 1.25rem;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .55rem 1.35rem rgba(19, 52, 67, .1);
}

.commission-ytd-summary-card {
    width: auto;
}

.commission-ytd-journal-card {
    width: auto;
    margin-left: 0;
}

.commission-ytd-summary-card hr {
    opacity: .22;
    border-width: 1px !important;
}

.commission-ytd-journal-scroll {
    min-height: 15rem;
    max-height: 45rem;
    overflow-y: auto;
}

.commission-ytd-card-heading {
    display: flex;
    align-items: center;
    gap: .8rem;
    margin-bottom: .9rem;
}

.commission-ytd-card-heading h3 {
    margin: 0 0 .15rem;
    color: #123d53;
}

.commission-ytd-card-heading span {
    color: var(--ytd-muted);
    font-size: .78rem;
    font-weight: 700;
}

.commission-ytd-journal-card .table {
    margin-bottom: 0;
}

.commission-ytd-journal-card thead th {
    border-bottom-color: #bfd0d7;
    color: #405764;
    background: #f3f7f8;
}

.commission-ytd-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 991.98px) {
    .commission-ytd-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .commission-ytd-submit {
        padding-top: 0;
    }

    .commission-ytd-summary-card,
    .commission-ytd-journal-card {
        width: 100%;
        margin-left: 0;
    }

    .commission-ytd-detail-grid {
        grid-template-columns: 1fr;
    }

    .commission-ytd-journal-card {
        margin-top: 1rem;
    }
}

@media (max-width: 767.98px) {
    .commission-ytd-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .commission-ytd-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }

    .commission-ytd-kpis {
        grid-template-columns: 1fr;
    }

    .commission-ytd-kpi-earned {
        justify-content: flex-start;
    }
}


/* --- earningsYtdReport.css --- */
/*
 * Earnings YTD report workspace
 * jKirkerx / Codex - 2026-07-27
 */

.earnings-ytd-page {
    --earnings-bg: #f4f7f9;
    --earnings-border: #d9e3e8;
    --earnings-ink: #172033;
    --earnings-muted: #667685;
    --earnings-teal: #006f78;
    background: var(--earnings-bg);
    color: var(--earnings-ink);
}

.earnings-ytd-shell {
    padding-top: 0.75rem;
}

.earnings-ytd-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.earnings-ytd-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.earnings-ytd-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.earnings-ytd-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.earnings-ytd-hero h1 span {
    color: #9ee8e8;
    font-size: 0.68em;
}

.earnings-ytd-hero p {
    color: #d3eaec;
    margin: 0;
    max-width: 54rem;
}

.earnings-ytd-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--earnings-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.earnings-ytd-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.earnings-ytd-filters .form-control,
.earnings-ytd-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.earnings-ytd-filters .form-control:focus,
.earnings-ytd-filters .form-select:focus {
    border-color: var(--earnings-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.earnings-ytd-filters .btn-link {
    color: var(--earnings-teal) !important;
    padding: 0.35rem 0.7rem 0 0;
}

.earnings-ytd-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.earnings-ytd-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.earnings-ytd-empty {
    background: #fff;
    border: 1px solid var(--earnings-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.055);
    padding: 3rem 1rem;
    text-align: center;
}

.earnings-ytd-empty i {
    color: #159c78;
    font-size: 2.3rem;
}

.earnings-ytd-empty h2 {
    font-size: 1.3rem;
    font-weight: 750;
    margin: 0.8rem 0 0.25rem;
}

.earnings-ytd-empty p {
    color: var(--earnings-muted);
    margin: 0;
}

.earnings-ytd-results {
    background: #fff;
    border: 1px solid var(--earnings-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.06);
    overflow-x: auto;
    padding: 1.5rem;
}

.earnings-ytd-designer-row {
    margin: 0 0 1rem;
}

.earnings-ytd-designer-card {
    align-items: center;
    background: linear-gradient(125deg, #075765 0%, #087d83 100%);
    border-radius: 0.8rem;
    box-shadow: 0 0.35rem 1rem rgba(15, 45, 61, 0.13);
    color: #fff;
    display: flex;
    gap: 0.9rem;
    min-height: 6.4rem;
    padding: 1rem 1.15rem;
}

.earnings-ytd-designer-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 0.65rem;
    display: flex;
    flex: 0 0 2.65rem;
    height: 2.65rem;
    justify-content: center;
}

.earnings-ytd-designer-card span {
    color: #aee8ea;
    display: block;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.earnings-ytd-designer-card h2 {
    font-size: 1.25rem;
    font-weight: 800;
    margin: 0.12rem 0;
}

.earnings-ytd-designer-card p {
    color: #d6eff0;
    font-size: 0.78rem;
    margin: 0;
}

.earnings-ytd-results .table {
    border: 0 !important;
    margin: 0;
    min-width: 92rem;
}

.earnings-ytd-results .table tbody tr:hover {
    background: #f4fbfb;
}

.earnings-ytd-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 991.98px) {
    .earnings-ytd-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .earnings-ytd-submit {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    .earnings-ytd-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .earnings-ytd-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }
}


/* --- feature.css --- */
.feature-page {
    --feature-ink: #17212b;
    --feature-muted: #687783;
    --feature-border: #d8e2e8;
    --feature-soft: #f4f8fa;
    --feature-teal: #00717a;
    --feature-navy: #1d4d68;
}

.feature-page > .row:first-child {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--feature-border);
}

.feature-page > .row:first-child h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.feature-assignment-section {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    border: 1px solid var(--feature-border);
    border-radius: .95rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.feature-assignment-section > .col-12 {
    padding: 0;
}

.feature-assignment-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.05rem 1.25rem;
    color: #fff;
    background: linear-gradient(120deg, var(--feature-navy), #27677d);
}

.feature-assignment-header h2 {
    margin: .1rem 0 0;
    font-size: 1.2rem;
}

.feature-assignment-header p {
    margin: .25rem 0 0;
    color: #d3e7ea;
    font-size: .82rem;
}

.feature-assignment-header > i {
    color: #a3e3e6;
    font-size: 1.6rem;
}

.feature-eyebrow {
    color: #a3e3e6;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.feature-assignment-body {
    align-items: center;
    margin: 0;
    padding: 1.25rem;
    background: var(--feature-soft);
}

.feature-list-column {
    padding: 0;
}

.feature-list-column .form-group {
    padding: 1rem;
    border: 1px solid var(--feature-border);
    border-radius: .75rem;
    background: #fff;
}

.feature-list-column .form-label {
    display: block;
    margin-bottom: .15rem;
    color: var(--feature-ink);
    font-size: .95rem;
}

.feature-list-column .form-label i {
    color: var(--feature-teal);
}

.feature-list-help {
    display: block;
    margin-bottom: .7rem;
    color: var(--feature-muted);
    font-size: .76rem;
}

.feature-list-column .form-select {
    padding: .35rem;
    border-color: #cbd8df;
    border-radius: .55rem;
    background-image: none;
}

.feature-list-column .form-select option {
    padding: .48rem .55rem;
    border-radius: .35rem;
}

.feature-list-column .form-select option:checked {
    color: #fff;
    background: linear-gradient(var(--feature-teal), var(--feature-teal));
}

.feature-list-column .form-select:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.feature-transfer-column {
    display: flex;
    justify-content: center;
    padding: 1rem;
}

.feature-transfer-column #addRemoveButtonGroup {
    width: 100%;
}

.feature-transfer-column .btn {
    padding: .55rem .65rem;
    border-radius: .55rem;
    font-size: .78rem;
    font-weight: 800;
}

.feature-add-button {
    color: #fff;
    background: var(--feature-teal);
}

.feature-add-button:hover {
    color: #fff;
    background: #005e66;
}

.feature-remove-button {
    color: var(--feature-navy);
    border: 1px solid #b8c8d1;
    background: #fff;
}

.feature-remove-button:hover {
    color: #fff;
    background: var(--feature-navy);
}

.feature-details-section h3 {
    margin: 1.5rem 0 0 !important;
    padding: .9rem 1rem;
    border-radius: .75rem .75rem 0 0;
    color: #fff;
    background: var(--feature-teal);
}

.feature-details-section .table {
    overflow: hidden;
    border: 1px solid var(--feature-border) !important;
    border-radius: 0 0 .75rem .75rem;
}

.feature-details-section .tbody-core tr.alternate-row-colors-core:nth-child(odd) > td {
    background-color: #fff;
}

.feature-details-section .tbody-core tr.alternate-row-colors-core:nth-child(even) > td {
    background-color: #f1f5f6;
}

.feature-details-section .tbody-core tr:hover > td {
    background-color: #e7f2f4;
}

@media (max-width: 767.98px) {
    .feature-page > .row:first-child > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .feature-page > .row:first-child .btn-group {
        margin-top: 1rem;
        margin-left: 0 !important;
    }

    .feature-assignment-body {
        gap: .8rem;
    }

    .feature-list-column,
    .feature-transfer-column {
        width: 100%;
    }

    .feature-transfer-column #addRemoveButtonGroup {
        grid-template-columns: 1fr 1fr;
    }

    .feature-remove-button i,
    .feature-add-button i {
        transform: rotate(90deg);
    }
}


/* --- monoLogs.css --- */
/*
 * PCAD MonoLog viewers
 * Shared presentation for application, class, editor, project, repository, and security logs.
 * jKirkerx / Codex - 2026-07-27
 */

.monolog-page {
    --log-surface: #ffffff;
    --log-border: #dce3ea;
    --log-muted: #64748b;
    --log-ink: #172033;
    --log-accent: #007b91;
    background: #f5f7fa;
    color: var(--log-ink);
}

.monolog-page .monolog-heading {
    align-items: center;
    border-bottom: 1px solid var(--log-border);
    padding-bottom: 1rem;
}

.monolog-page .monolog-heading h2 {
    letter-spacing: -0.025em;
    margin-bottom: 0;
}

.monolog-page .monolog-heading-copy {
    color: var(--log-muted);
    margin: 0.45rem 0 0;
}

.monolog-page .monolog-selector-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.monolog-page .monolog-selector-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.monolog-page .monolog-selector-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.monolog-page .monolog-selector-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.monolog-page .monolog-selector-hero .monolog-heading-copy {
    color: #d3eaec;
    margin: 0;
}

.monolog-page .monolog-selector > .monolog-toolbar {
    margin: -1.4rem 1rem 0 !important;
    position: relative;
    z-index: 2;
}

.monolog-page .monolog-toolbar,
.monolog-page form.row.mt-5 {
    background: var(--log-surface);
    border: 1px solid var(--log-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.25rem 1rem rgba(15, 23, 42, 0.06);
    margin-top: 1.5rem !important;
    padding: 1.25rem;
}

.monolog-page .monolog-toolbar-grid,
.monolog-page form.row.mt-5 .row.mt-3 {
    align-items: end;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(15rem, 1fr) minmax(15rem, 1fr) auto auto;
    margin-top: 0 !important;
}

.monolog-page .monolog-selector-grid {
    grid-template-columns: minmax(15rem, 1fr) minmax(15rem, 1fr) auto !important;
}

.monolog-page .monolog-selector-submit .btn {
    min-width: 6.5rem;
}

.monolog-page .monolog-toolbar-grid > [class*="col-"],
.monolog-page form.row.mt-5 .row.mt-3 > [class*="col-"] {
    max-width: none;
    padding: 0;
    width: auto;
}

.monolog-page .monolog-toolbar-grid > .monolog-search,
.monolog-page form.row.mt-5 .row.mt-3 > .col-4.mt-3 {
    grid-column: 1 / 3;
    margin-top: 0 !important;
}

.monolog-page .monolog-toolbar .form-label {
    color: #475569;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.015em;
    margin-bottom: 0.4rem;
}

.monolog-page .monolog-toolbar .form-select,
.monolog-page .monolog-toolbar .form-control,
.monolog-page .monolog-toolbar .btn {
    min-height: 2.75rem;
}

.monolog-page .monolog-report,
.monolog-page .container.uniform-content-container-sm.mt-4 {
    margin-top: 2rem !important;
}

.monolog-page .monolog-report-title {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    margin: 0 !important;
}

.monolog-page .monolog-entry-count {
    background: #e6f7fb;
    border: 1px solid #b9e7f0;
    border-radius: 999px;
    color: #056477;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.3rem 0.65rem;
}

.monolog-page .monolog-list,
.monolog-page .list-group-numbered {
    counter-reset: log-entry;
    display: grid;
    gap: 0.75rem;
    list-style: none;
    padding-left: 0;
}

.monolog-page .monolog-entry,
.monolog-page .list-group-numbered > .list-group-item {
    align-items: start !important;
    background: var(--log-surface);
    border: 1px solid var(--log-border) !important;
    border-left: 0.3rem solid #16b6d4 !important;
    border-radius: 0.7rem !important;
    box-shadow: 0 0.15rem 0.45rem rgba(15, 23, 42, 0.045);
    display: grid !important;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 1rem 1rem 1rem 1.15rem;
}

.monolog-page .monolog-entry::before,
.monolog-page .list-group-numbered > .list-group-item::before {
    content: none !important;
}

.monolog-page .monolog-entry.log-level-debug { border-left-color: #64748b !important; }
.monolog-page .monolog-entry.log-level-notice { border-left-color: #2563eb !important; }
.monolog-page .monolog-entry.log-level-warning { border-left-color: #f59e0b !important; }
.monolog-page .monolog-entry.log-level-error,
.monolog-page .monolog-entry.log-level-alert,
.monolog-page .monolog-entry.log-level-emergency { border-left-color: #dc2626 !important; }
.monolog-page .monolog-entry.log-level-critical { border-left-color: #111827 !important; }

.monolog-page .monolog-entry-body,
.monolog-page .list-group-numbered > .list-group-item > .ms-2.me-auto {
    display: grid;
    gap: 0.35rem;
    margin: 0 !important;
    min-width: 0;
}

.monolog-page .monolog-entry-time,
.monolog-page .list-group-numbered > .list-group-item > .ms-2.me-auto > .d-block:first-child {
    color: #1e293b;
    font-size: 0.95rem;
    font-weight: 700;
}

.monolog-page .monolog-entry-logger,
.monolog-page .list-group-numbered > .list-group-item > .ms-2.me-auto > .d-block:nth-child(2) {
    color: var(--log-accent);
    font-size: 0.83rem;
    font-weight: 650;
    text-transform: none;
}

.monolog-page .monolog-entry-message,
.monolog-page .list-group-numbered > .list-group-item > .ms-2.me-auto > .d-block:nth-child(3) {
    background: #f8fafc;
    border-radius: 0.4rem;
    color: #000;
    font-family: Consolas, "Courier New", monospace;
    font-size: 0.84rem;
    line-height: 1.55;
    margin-top: 0.15rem;
    overflow-wrap: anywhere;
    padding: 0.65rem 0.75rem;
    white-space: normal;
}

.monolog-page .monolog-entry .badge {
    font-size: 0.7rem;
    letter-spacing: 0.04em;
    padding: 0.45rem 0.65rem;
    text-transform: uppercase;
}

@media (max-width: 991.98px) {
    .monolog-page .monolog-toolbar-grid {
        grid-template-columns: 1fr 1fr;
    }

    .monolog-page .monolog-toolbar-grid > .monolog-search {
        grid-column: 1 / -1;
    }

    .monolog-page .monolog-selector-grid {
        grid-template-columns: 1fr 1fr !important;
    }

    .monolog-page .monolog-selector-submit {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575.98px) {
    .monolog-page .monolog-toolbar-grid {
        grid-template-columns: 1fr;
    }

    .monolog-page .monolog-toolbar-grid > .monolog-search {
        grid-column: auto;
    }

    .monolog-page .monolog-selector-grid {
        grid-template-columns: 1fr !important;
    }

    .monolog-page .monolog-selector-submit {
        grid-column: auto;
    }

    .monolog-page .monolog-entry {
        grid-template-columns: 1fr;
    }

    .monolog-page .monolog-entry .badge {
        justify-self: start;
    }

    .monolog-page .monolog-selector-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .monolog-page .monolog-selector > .monolog-toolbar {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }
}


/* --- payCommission.css --- */
/*
 * Commission payment workspace
 * jKirkerx / Codex - 2026-07-27
 */

.commission-payment-page {
    --payment-bg: #f4f7f9;
    --payment-border: #d9e3e8;
    --payment-ink: #172033;
    --payment-muted: #667685;
    --payment-teal: #006f78;
    background: var(--payment-bg);
    color: var(--payment-ink);
}

.commission-payment-shell {
    padding-top: 0.75rem;
}

.commission-payment-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.commission-payment-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.commission-payment-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.commission-payment-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.commission-payment-hero p {
    color: #d3eaec;
    margin: 0;
    max-width: 48rem;
}

.commission-designer-selector {
    align-items: end;
    background: #fff;
    border: 1px solid var(--payment-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 0 !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.commission-designer-selector .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.commission-designer-selector .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.commission-designer-selector .form-select:focus {
    border-color: var(--payment-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.commission-selector-hint {
    align-items: center;
    color: var(--payment-muted);
    font-size: 0.83rem;
    line-height: 1.45;
    min-height: 2.8rem;
}

.commission-selector-hint i {
    color: var(--payment-teal);
    margin-right: 0.3rem;
}

.commission-payment-page #h2EmployeeName {
    margin: .12rem 0 0;
    color: #fff;
    font-size: 1.65rem;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.commission-designer-card-wrap {
    margin: 1rem .75rem .4rem;
}

.commission-designer-card {
    display: flex;
    min-height: 100%;
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.25rem;
    padding: 1.15rem 1.4rem;
    overflow: hidden;
    border-radius: .9rem;
    color: #e8f7f8;
    background: linear-gradient(120deg, #075a64 0%, #087982 100%);
    box-shadow: 0 .45rem 1.2rem rgba(12, 65, 74, .14);
}

.commission-designer-identity {
    display: flex;
    align-items: center;
    gap: .9rem;
}

.commission-designer-icon {
    display: grid;
    width: 2.8rem;
    height: 2.8rem;
    flex: 0 0 2.8rem;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: .75rem;
    color: #fff;
    background: rgba(255, 255, 255, .12);
}

.commission-designer-label {
    color: #a9e3e5;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.commission-designer-dates {
    display: flex;
    width: 100%;
    gap: .8rem;
    align-items: flex-start;
    flex-direction: column;
    padding-top: .85rem;
    border-top: 1px solid rgba(255, 255, 255, .18);
}

.commission-designer-dates div {
    min-width: 0;
}

.commission-designer-dates span,
.commission-designer-dates strong {
    display: block;
}

.commission-designer-dates span {
    margin-bottom: .18rem;
    color: #b9e1e3;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.commission-designer-dates strong {
    color: #fff;
    font-size: .9rem;
}

.commission-active-jobs {
    width: auto;
    margin-right: .75rem;
    margin-left: .75rem;
    padding-right: 0;
    padding-left: 0;
}

.commission-active-jobs > .row {
    margin-right: 0;
    margin-left: 0;
}

.commission-active-jobs > .row > .col-12 {
    padding-right: 0;
    padding-left: 0;
}

.commission-payment-page .table {
    background: #fff;
    border: 1px solid var(--payment-border) !important;
    border-radius: 0.5rem;
}

.commission-payment-page .table tbody tr {
    border-color: #e3eaee;
}

.commission-payment-page .table tbody tr:hover {
    background: #f4fbfb;
}

.commission-payment-page #paymentForm {
    background: #fff;
    border: 1px solid var(--payment-border);
    border-radius: 1rem;
    box-shadow: 0 .65rem 1.7rem rgba(15, 35, 48, .1);
    overflow: hidden;
}

.commission-payment-page #paymentForm h3 {
    margin: .15rem 0 .35rem;
    color: #123d53;
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.commission-payment-page #paymentForm .form-control {
    min-height: 3rem;
    border-color: #cbd8de;
}

.commission-authorization-wrap {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.commission-ledger-layout {
    display: grid;
    grid-template-columns: minmax(20rem, 32%) minmax(0, 68%);
    gap: 1rem;
    align-items: stretch;
    padding: 0 1.5rem;
}

.commission-ledger-layout > br,
.commission-ledger-columns,
.commission-ledger-columns > .row {
    display: contents;
}

.commission-summary-column,
.commission-journal-column,
.commission-ledger-layout .commission-authorization-wrap {
    width: auto;
    max-width: none;
    margin: 0 !important;
}

.commission-summary-column {
    grid-column: 1;
    padding: 1.25rem !important;
    border: 1px solid var(--payment-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .3rem 1rem rgba(15, 35, 48, .06);
}

.commission-summary-column > span {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.commission-summary-column > .row {
    margin-top: .8rem;
}

.commission-journal-column {
    grid-column: 2;
    grid-row: 1 / span 2;
    padding: 0 !important;
}

.commission-journal-scroll {
    width: 100%;
    height: 100%;
    min-height: 39rem;
    max-height: 52rem;
    padding: 1.25rem;
    overflow-y: auto;
    border: 1px solid var(--payment-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .3rem 1rem rgba(15, 35, 48, .06);
}

.commission-journal-scroll h3 {
    margin-right: 0 !important;
    margin-left: 0 !important;
    color: #123d53;
}

.commission-ledger-layout .commission-authorization-wrap {
    grid-column: 1;
    padding: 0;
}

.commission-ledger-layout .commission-authorization-header {
    align-items: flex-start;
    flex-direction: column;
    gap: .85rem;
    padding: 1.15rem 1.2rem 1rem;
}

.commission-ledger-layout .commission-available-balance {
    width: 100%;
    min-width: 0;
    text-align: left;
}

.commission-ledger-layout .commission-period-banner {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: .8rem 1.2rem;
}

.commission-ledger-layout .commission-period-rule {
    width: 100%;
    margin: .2rem 0 0 2.7rem;
}

.commission-ledger-layout .commission-authorization-fields {
    grid-template-columns: 1fr;
    gap: .95rem;
    padding: 1.15rem 1.2rem;
}

.commission-ledger-layout .commission-authorization-action {
    padding-top: 0;
}

.commission-ledger-layout .commission-salary-option {
    margin: 0 1.2rem 1.2rem;
}

.commission-authorization-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.4rem 1.55rem 1.2rem;
}

.commission-authorization-header p {
    margin: 0;
    color: var(--payment-muted);
    font-size: .87rem;
}

.commission-authorization-eyebrow {
    color: var(--payment-teal);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.commission-available-balance {
    min-width: 12.5rem;
    padding: .8rem 1rem;
    border: 1px solid #c8e4e5;
    border-radius: .8rem;
    text-align: right;
    background: #eff9f9;
}

.commission-available-balance span,
.commission-last-salary span {
    display: block;
    color: var(--payment-muted);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.commission-available-balance strong {
    display: block;
    margin-top: .1rem;
    color: #087b54;
    font-size: 1.45rem;
    letter-spacing: -.02em;
}

.commission-period-banner {
    display: flex;
    align-items: center;
    gap: .7rem;
    padding: .85rem 1.55rem;
    border-top: 1px solid #e2eaee;
    border-bottom: 1px solid #e2eaee;
    color: #465d6b;
    background: #f7fafb;
    font-size: .82rem;
}

.commission-period-banner > i {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: .55rem;
    color: var(--payment-teal);
    background: #e1f2f3;
}

.commission-period-banner strong {
    margin: 0 .18rem;
    color: var(--payment-ink);
}

.commission-period-rule {
    margin-left: auto;
    color: var(--payment-muted);
}

.commission-period-rule i {
    margin-right: .25rem;
    color: var(--payment-teal);
}

.commission-last-salary {
    padding: .8rem 1.55rem 0;
}

.commission-last-salary strong {
    color: var(--payment-ink);
    font-size: .88rem;
}

.commission-authorization-fields {
    display: grid;
    grid-template-columns: minmax(14rem, 1fr) minmax(14rem, 1fr) minmax(13rem, .8fr);
    gap: 1.15rem;
    align-items: start;
    padding: 1.35rem 1.55rem 1.5rem;
}

.commission-authorization-fields .form-label,
.commission-salary-option .form-label {
    margin-bottom: .4rem;
    color: #344c59;
    font-size: .8rem;
    font-weight: 800;
}

.commission-money-input {
    position: relative;
}

.commission-money-input > span {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: .9rem;
    color: var(--payment-teal);
    font-weight: 900;
    transform: translateY(-50%);
}

.commission-money-input .form-control {
    padding-left: 1.75rem;
    font-size: 1.05rem;
}

.commission-field-help {
    display: block;
    margin-top: .38rem;
    color: var(--payment-muted);
    font-size: .72rem;
}

.commission-authorization-action {
    display: flex;
    align-items: stretch;
    flex-direction: column;
    padding-top: 1.53rem;
}

.commission-authorization-action .btn {
    min-height: 3rem;
    border-radius: .55rem;
}

.commission-authorization-action .btn i {
    margin-right: .35rem;
}

.commission-authorization-action > span {
    margin-top: .38rem;
    color: var(--payment-muted);
    font-size: .7rem;
    text-align: center;
}

.commission-salary-option {
    margin: 0 1.55rem 1.4rem;
    padding: 1rem;
    border: 1px solid #dce5e9;
    border-radius: .7rem;
    background: #f8fafb;
}

.commission-salary-option .form-check {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin: 0;
}

.commission-salary-option .form-check-input {
    flex: 0 0 auto;
    margin: .2rem 0 0;
}

.commission-salary-option .form-check-label strong,
.commission-salary-option .form-check-label span {
    display: block;
}

.commission-salary-option .form-check-label strong {
    color: #263c48;
    font-size: .83rem;
}

.commission-salary-option .form-check-label span {
    margin-top: .15rem;
    color: var(--payment-muted);
    font-size: .73rem;
}

.commission-payment-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 767.98px) {
    .commission-payment-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .commission-designer-selector {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }

    .commission-designer-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .commission-designer-dates {
        width: 100%;
        gap: 1rem;
        justify-content: space-between;
    }

    .commission-authorization-header,
    .commission-period-banner {
        align-items: flex-start;
        flex-direction: column;
    }

    .commission-available-balance {
        width: 100%;
        text-align: left;
    }

    .commission-period-rule {
        margin-left: 0;
    }

    .commission-authorization-fields {
        grid-template-columns: 1fr;
    }

    .commission-authorization-action {
        padding-top: 0;
    }
}

@media (max-width: 991.98px) {
    .commission-ledger-layout {
        display: block;
        padding: 0 .75rem;
    }

    .commission-ledger-columns,
    .commission-ledger-columns > .row {
        display: block;
    }

    .commission-summary-column,
    .commission-journal-column,
    .commission-ledger-layout .commission-authorization-wrap {
        width: 100%;
        margin-bottom: 1rem !important;
    }

    .commission-journal-scroll {
        min-height: 22rem;
        max-height: 34rem;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .commission-authorization-fields {
        grid-template-columns: 1fr 1fr;
    }

    .commission-authorization-action {
        grid-column: 1 / -1;
        padding-top: 0;
    }
}


/* --- projectStatusReport.css --- */
/*
 * Project status report workspace
 * jKirkerx / Codex - 2026-07-27
 */

.project-status-report-page {
    --status-bg: #f4f7f9;
    --status-border: #d9e3e8;
    --status-ink: #172033;
    --status-muted: #667685;
    --status-teal: #006f78;
    background: var(--status-bg);
    color: var(--status-ink);
}

.project-status-shell {
    padding-top: 0.75rem;
}

.project-status-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem 2.6rem;
    position: relative;
}

.project-status-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.project-status-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.project-status-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.project-status-hero p {
    color: #d3eaec;
    margin: 0;
}

.project-status-filters {
    align-items: start;
    background: #fff;
    border: 1px solid var(--status-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.075);
    margin: -1.4rem 1rem 1.75rem !important;
    padding: 1.15rem;
    position: relative;
    z-index: 2;
}

.project-status-filters .form-label {
    color: #3b5360;
    font-size: 0.82rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.project-status-filters .form-control,
.project-status-filters .form-select {
    border-color: #cbd8de;
    min-height: 2.8rem;
}

.project-status-filters .form-control:focus,
.project-status-filters .form-select:focus {
    border-color: var(--status-teal);
    box-shadow: 0 0 0 0.2rem rgba(0, 111, 120, 0.15);
}

.project-status-filters .btn-link {
    color: var(--status-teal) !important;
    padding: 0.35rem 0.7rem 0 0;
}

.project-status-submit {
    align-items: stretch;
    display: flex;
    padding-top: 1.52rem;
}

.project-status-submit > .btn {
    min-height: 2.8rem;
    width: 100%;
}

.project-status-results .uniform-content-container {
    background: #fff;
    border: 1px solid var(--status-border);
    border-radius: 0.85rem;
    box-shadow: 0 0.25rem 0.9rem rgba(15, 35, 48, 0.06);
    overflow-x: auto;
    padding: 0;
}

.project-status-results .table {
    background: #fff;
    border: 0 !important;
    margin: 0;
    min-width: 68rem;
}

.project-status-results .table tbody tr:hover {
    background: #f4fbfb;
}

.project-status-report-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 991.98px) {
    .project-status-filters > [class*="col-"] {
        margin-bottom: 0.85rem;
    }

    .project-status-submit {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    .project-status-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem 2.4rem;
    }

    .project-status-filters {
        margin-left: 0.6rem !important;
        margin-right: 0.6rem !important;
    }
}


/* --- updateComments.css --- */
.comments-page {
    --comments-ink: #17212b;
    --comments-muted: #687683;
    --comments-border: #d8e2e8;
    --comments-soft: #f4f8fa;
    --comments-teal: #00717a;
    --comments-navy: #1d4d68;
}

.comments-page > .row:first-child {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--comments-border);
}

.comments-page > .row:first-child h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.comments-editor-section {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    border: 1px solid var(--comments-border);
    border-radius: .95rem;
    background: var(--comments-soft);
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.comments-editor-section > form {
    padding: 0;
}

.comments-editor-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
    color: #fff;
    background: linear-gradient(120deg, var(--comments-navy), #27677d);
}

.comments-editor-header h2 {
    margin: .1rem 0 0;
    font-size: 1.2rem;
}

.comments-editor-header > i {
    color: #a4e3e6;
    font-size: 1.55rem;
}

.comments-eyebrow {
    display: block;
    color: #a4e3e6;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.comments-guidance {
    display: flex;
    gap: .8rem;
    margin: 1rem;
    padding: .85rem 1rem;
    border: 1px solid #cfe0e5;
    border-radius: .7rem;
    color: #4e626e;
    background: #edf6f7;
    line-height: 1.45;
}

.comments-guidance > i {
    margin-top: .2rem;
    color: var(--comments-teal);
}

.comments-guidance span {
    display: block;
}

.comments-guidance span + span {
    margin-top: .2rem;
}

.comments-editor-table {
    display: block;
    margin: 0;
    padding: 0 1rem 1rem;
}

.comments-editor-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.comments-editor-table tbody {
    display: grid;
    gap: .8rem;
}

.comments-editor-table .comment-operation-card {
    display: grid;
    grid-template-columns: minmax(150px, .85fr) minmax(300px, 2.6fr) minmax(155px, .8fr) minmax(105px, .55fr);
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--comments-border);
    border-radius: .8rem;
    background: #fff;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.comments-editor-table .comment-operation-card:hover {
    border-color: #aecbd0;
    box-shadow: 0 .35rem .85rem rgba(29, 77, 104, .08);
}

.comments-editor-table .comment-operation-card > td {
    display: block;
    width: auto !important;
    padding: 0;
    border: 0;
    background: transparent;
}

.comment-operation-card > td:first-child p {
    margin: .1rem 0 .35rem !important;
    color: var(--comments-teal) !important;
}

.comment-operation-card > td:first-child span {
    margin: 0 !important;
    color: var(--comments-muted) !important;
    font-size: .76rem;
}

.comment-operation-card .form-label {
    margin-bottom: .35rem;
    color: var(--comments-muted);
    font-size: .78rem;
}

.comment-operation-card textarea.form-control {
    width: 100% !important;
    min-height: 5.4rem;
}

.comment-operation-card .form-control {
    border-color: #cad7de;
    border-radius: .55rem;
}

.comment-operation-card .form-control:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.comment-operation-card .form-group.mx-3 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.comment-card-actions {
    min-width: 100px;
}

.comment-card-actions .btn {
    border-radius: .55rem;
}

@media (max-width: 991.98px) {
    .comments-editor-table .comment-operation-card {
        grid-template-columns: minmax(140px, .8fr) minmax(280px, 2fr) minmax(145px, .8fr);
    }

    .comments-editor-table .comment-operation-card > td:last-child {
        grid-column: 2 / -1;
    }

    .comment-card-actions {
        display: flex !important;
        justify-content: flex-end;
    }
}

@media (max-width: 767.98px) {
    .comments-page > .row:first-child > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .comments-page > .row:first-child .btn-group {
        margin-top: 1rem;
        margin-left: 0 !important;
    }

    .comments-editor-table .comment-operation-card {
        grid-template-columns: 1fr;
    }

    .comments-editor-table .comment-operation-card > td:last-child {
        grid-column: auto;
    }

    .comment-card-actions {
        justify-content: stretch;
    }

    .comment-card-actions .btn {
        flex: 1 1 0;
    }
}


/* --- updateCommission.css --- */
.commission-page {
    --commission-ink: #17212b;
    --commission-muted: #687683;
    --commission-border: #d9e2e8;
    --commission-soft: #f5f8fa;
    --commission-teal: #006f78;
    --commission-navy: #1d4d68;
}

.commission-page > .row:first-child {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--commission-border);
}

.commission-page > .row:first-child h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.commission-report-links > .col-12 {
    padding: .55rem;
    border: 1px solid var(--commission-border);
    border-radius: .8rem;
    background: var(--commission-soft);
}

.commission-report-links .nav {
    gap: .35rem;
}

.commission-report-links .nav-link {
    padding: .55rem .85rem;
    border-radius: .55rem;
    color: var(--commission-teal);
    transition: background-color .15s ease, color .15s ease;
}

.commission-report-links .nav-link:hover {
    color: #fff;
    background: var(--commission-teal);
}

.commission-section {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    border: 1px solid var(--commission-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.commission-table-wrap {
    overflow-x: auto;
    padding: 0;
}

.commission-section h2,
.commission-adjustment-heading h3 {
    margin: 0;
    padding: 1rem 1.2rem;
    color: #fff;
    background: linear-gradient(120deg, var(--commission-navy), #27677d);
    font-size: 1.12rem;
}

.commission-section h2::before,
.commission-adjustment-heading h3::before {
    margin-right: .65rem;
    color: #9ee0e3;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f201";
}

.commission-versions-section h2::before {
    content: "\f56f";
}

.commission-adjustment-heading {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

.commission-adjustment-heading > .col-12 {
    padding: 0;
}

.commission-adjustment-heading h3 {
    border-radius: .9rem .9rem 0 0;
    background: linear-gradient(120deg, #08656d, #14808a);
}

.commission-adjustment-heading h3::before {
    content: "\f044";
}

.commission-adjustments-section {
    margin-top: 0;
    border-top: 0;
    border-radius: 0 0 .9rem .9rem;
}

.commission-section .table {
    min-width: 780px;
    margin-bottom: 0;
}

.commission-section .thead-core th {
    padding: .75rem .8rem;
    border: 0;
    color: var(--commission-teal);
    background: #eef4f6;
    font-size: .78rem;
    letter-spacing: .035em;
    text-transform: uppercase;
    vertical-align: middle;
}

.commission-section .tbody-core td {
    padding: 1rem .8rem;
    border-color: #e6ecef;
    vertical-align: middle;
}

.commission-summary-section .table {
    min-width: 620px;
}

.commission-summary-section .tbody-core td:nth-child(2) {
    color: var(--commission-navy);
    font-size: 1.15rem;
}

.commission-summary-section .tbody-core p {
    color: var(--commission-muted);
    line-height: 1.55;
}

.commission-section .form-label {
    margin-bottom: .35rem;
    color: var(--commission-muted);
    font-size: .78rem;
}

.commission-section .form-control {
    border-color: #ccd8df;
    border-radius: .55rem;
}

.commission-section .form-control:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 111, 120, .12);
}

.commission-section textarea.form-control {
    min-height: 4rem;
}

.commission-add-action {
    margin: 0;
    padding: 1rem;
}

.commission-add-action #btnAddCommissionAdjustment {
    padding: .65rem 1.15rem;
    border: 0;
    border-radius: .6rem;
    box-shadow: 0 .25rem .65rem rgba(0, 0, 0, .1);
}

@media (max-width: 767.98px) {
    .commission-page > .row:first-child > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .commission-page > .row:first-child .btn-group {
        margin-top: 1rem;
        margin-left: 0 !important;
    }

    .commission-report-links .nav {
        align-items: stretch;
        flex-direction: column;
    }

    .commission-report-links .nav-link {
        text-align: left;
    }
}


/* --- updateCostSupplier.css --- */
.cost-supplier-page {
    --supplier-ink: #17212b;
    --supplier-muted: #667681;
    --supplier-border: #d9e2e8;
    --supplier-soft: #f4f8fa;
    --supplier-teal: #00717a;
    --supplier-navy: #1d4d68;
    --supplier-orange: #b85d12;
}

.cost-supplier-page > .row:first-child {
    align-items: center;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--supplier-border);
}

.cost-supplier-page > .row:first-child h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.cost-supplier-report-links > .col-12 {
    padding: .55rem;
    border: 1px solid var(--supplier-border);
    border-radius: .8rem;
    background: var(--supplier-soft);
}

.cost-supplier-report-links {
    flex: 0 0 calc(100% + var(--bs-gutter-x));
    width: calc(100% + var(--bs-gutter-x));
    max-width: calc(100% + var(--bs-gutter-x));
}

.cost-supplier-report-links .nav {
    gap: .25rem;
}

.cost-supplier-report-links .nav-link {
    padding: .5rem .72rem;
    border-radius: .5rem;
    color: var(--supplier-teal);
    font-size: .86rem;
    transition: background-color .15s ease, color .15s ease;
}

.cost-supplier-report-links .nav-link:hover {
    color: #fff;
    background: var(--supplier-teal);
}

.cost-supplier-section {
    overflow: hidden;
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
    border: 1px solid var(--supplier-border);
    border-radius: .9rem .9rem 0 0;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.cost-supplier-table-wrap {
    overflow-x: auto;
    padding: 0;
}

.cost-supplier-section h2 {
    display: block !important;
    margin: 0 !important;
    padding: 1rem 1.2rem;
    color: #fff;
    background: var(--supplier-teal);
    font-size: 1.12rem;
}

.cost-supplier-section h2::before {
    margin-right: .65rem;
    color: #9ee0e3;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f0d6";
}

.cost-supplier-equipment-section h2 {
    background: var(--supplier-teal);
}

.cost-supplier-equipment-section h2::before {
    content: "\f1b3";
}

.cost-supplier-variable-section h2 {
    background: var(--supplier-teal);
}

.cost-supplier-variable-section h2::before {
    content: "\f0c0";
}

.cost-supplier-section .table {
    min-width: 850px;
    margin-bottom: 0;
}

.cost-supplier-section .thead-core th {
    padding: .75rem .8rem;
    border: 0;
    color: var(--supplier-teal);
    background: #edf4f6;
    font-size: .76rem;
    letter-spacing: .035em;
    text-transform: uppercase;
    vertical-align: middle;
}

.cost-supplier-section .tbody-core td {
    padding: .9rem .8rem;
    border-color: #e6ecef;
    vertical-align: middle;
}

.cost-supplier-section .tbody-core tr.alternate-row-colors-core:nth-child(odd) > td {
    background-color: #fff;
}

.cost-supplier-section .tbody-core tr.alternate-row-colors-core:nth-child(even) > td {
    background-color: #f1f5f6;
}

.cost-supplier-section .tbody-core tr:hover td {
    background-color: #e7f2f4;
}

.cost-supplier-section .form-select {
    border-color: #cad7de;
    border-radius: .5rem;
}

.cost-supplier-section .form-select:focus {
    border-color: #67aeb4;
    box-shadow: 0 0 0 .2rem rgba(0, 113, 122, .12);
}

.cost-supplier-section-total {
    align-items: center;
    margin-right: 0;
    margin-left: 0;
    padding: .8rem 1rem;
    border: 1px solid var(--supplier-border);
    border-top: 0;
    border-radius: 0 0 .9rem .9rem;
    color: var(--supplier-navy);
    background: var(--supplier-soft);
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .05);
}

.cost-supplier-section-total .text-gray {
    color: var(--supplier-muted) !important;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.cost-supplier-cost-summary,
.cost-supplier-grand-total {
    margin-right: 0;
    margin-left: 0;
    padding: 1rem 1.1rem;
    border: 1px solid var(--supplier-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(29, 77, 104, .07);
}

.cost-supplier-cost-summary > div,
.cost-supplier-grand-total > div {
    padding-top: .35rem;
    padding-bottom: .35rem;
}

.cost-supplier-grand-total {
    color: #fff;
    border: 0;
    background: linear-gradient(120deg, var(--supplier-navy), var(--supplier-teal));
}

.cost-supplier-grand-total .text-gray {
    color: #c8e4e6 !important;
}

@media (max-width: 767.98px) {
    .cost-supplier-page > .row:first-child > [class*="col-"] {
        width: 100%;
    }

    .cost-supplier-page > .row:first-child > .col-6:last-child {
        align-items: stretch !important;
        flex-direction: column !important;
        margin-top: 1rem;
    }

    .cost-supplier-page > .row:first-child .btn-group {
        margin: .25rem 0 !important;
    }

    .cost-supplier-report-links .nav {
        align-items: stretch;
        flex-direction: column;
    }

    .cost-supplier-report-links .nav-link {
        text-align: left;
    }

    .cost-supplier-section-total .col-10,
    .cost-supplier-cost-summary .col-10,
    .cost-supplier-grand-total .col-10 {
        width: 70%;
    }

    .cost-supplier-section-total .col-2,
    .cost-supplier-cost-summary .col-2,
    .cost-supplier-grand-total .col-2 {
        width: 30%;
    }
}


/* --- projectCostSumDetail.css --- */
@media screen {
    .project-cost-detail-page {
        --cost-detail-border: #d7e2e7;
        --cost-detail-ink: #17313f;
        --cost-detail-muted: #6b7c87;
        --cost-detail-teal: #00747c;
        background: #f3f7f9;
    }

    .project-cost-section {
        overflow: hidden;
        padding: 0;
        border: 1px solid var(--cost-detail-border);
        border-radius: .9rem;
        background: #fff;
        box-shadow: 0 .3rem 1rem rgba(18, 63, 75, .07);
    }

    .project-cost-section > .row {
        margin-right: 0;
        margin-left: 0;
    }

    .project-cost-section > .row:first-child {
        min-height: 3.7rem;
        color: #fff;
        background: linear-gradient(120deg, #174b60 0%, var(--cost-detail-teal) 100%);
    }

    .project-cost-section > .row:first-child > .col-12 {
        display: flex;
        align-items: center;
        padding: .75rem 1rem;
    }

    .project-cost-section h4 {
        display: flex;
        width: 100%;
        margin: 0 !important;
        color: #fff;
        font-size: 1rem !important;
        align-items: center;
        justify-content: space-between;
    }

    .project-cost-section h4::before {
        margin-right: .65rem;
        color: #aee8ea;
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        content: "\f571";
    }

    .project-cost-section h4 .btn-link {
        margin: 0 0 0 auto !important;
        padding: .35rem .65rem;
        border: 1px solid rgba(255, 255, 255, .45);
        border-radius: .5rem;
        color: #fff !important;
        font-size: .72rem;
        font-weight: 800;
        text-decoration: none;
    }

    .project-cost-section h4 .btn-link:hover {
        color: #174b60 !important;
        background: #fff;
    }

    .project-cost-section > .row:nth-child(2) > .collapse > .col-12,
    .project-cost-section > .row:nth-child(2) > .collapsing > .col-12 {
        overflow-x: auto;
        padding: 0;
    }

    .project-cost-section .table {
        min-width: 58rem;
        margin: 0;
        border: 0 !important;
        background: #fff;
    }

    .project-cost-section .thead-core th {
        padding: .8rem .65rem;
        border: 0;
        border-bottom: 1px solid var(--cost-detail-border);
        color: #315462;
        background: #edf4f6;
        font-size: .72rem;
        letter-spacing: .055em;
        text-transform: uppercase;
    }

    .project-cost-section .tbody-core > tr.alternate-row-colors-core > td {
        padding: .72rem .65rem;
        border-color: #e2e9ed;
        background: #fff !important;
        vertical-align: middle;
    }

    .project-cost-section .tbody-core > tr.alternate-row-colors-core:hover > td {
        background: #f3fafb !important;
    }

    .project-cost-section .tbody-totals-row > td,
    .project-cost-section tfoot.totals > tr > td {
        padding: .75rem .65rem;
        border-color: #d9e5e9;
        background: #f1f7f8;
    }

    .project-cost-section .tbody-totals-row > td:last-child,
    .project-cost-section tfoot.totals > tr:last-child > td:last-child {
        color: #006b72;
    }

    .project-cost-summary-card {
        padding: 1rem 1.15rem;
        border: 1px solid var(--cost-detail-border);
        border-radius: .9rem;
        background: #fff;
        box-shadow: 0 .3rem 1rem rgba(18, 63, 75, .07);
    }

    .project-cost-summary-card > .row {
        min-height: 2.35rem;
        align-items: center;
        border-bottom: 1px solid #e4eaed;
    }

    .project-cost-summary-card > .row:last-child {
        margin-top: .4rem;
        padding-top: .45rem;
        border-bottom: 0;
        color: #006b72;
        background: #edf8f8;
        border-radius: .55rem;
    }

    @media (max-width: 767.98px) {
        .project-cost-section h4 {
            gap: .5rem;
            align-items: flex-start;
            flex-wrap: wrap;
        }

        .project-cost-section h4 .btn-link {
            margin-left: 0 !important;
        }
    }
}

@media print {
    @page {
        size: landscape;
        margin: .35in;
    }

    .project-cost-detail-page {
        color: #111 !important;
        background: #fff !important;
        font-size: 8pt;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .project-cost-detail-page .header-nav-core-blank-container,
    .project-cost-detail-page .breadcrumb,
    .project-cost-detail-page .footer-container,
    .project-cost-detail-page .btn,
    .project-cost-detail-page .d-print-none,
    .project-cost-detail-page hr {
        display: none !important;
    }

    .project-cost-detail-page .content-container,
    .project-cost-detail-page .uniform-content-container {
        min-height: 0 !important;
    }

    .project-cost-detail-page #contents,
    .project-cost-detail-page #contents > .container-fluid,
    .project-cost-detail-page #printContent,
    .project-cost-detail-page #printContent > .container,
    .project-cost-detail-page #printContent > .container-fluid,
    .project-cost-detail-page #printContent .container,
    .project-cost-detail-page #printContent .container-fluid {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .project-cost-detail-page #printContent > .print-page-container {
        margin: 0 0 .12in !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .project-cost-detail-page #printContent > .print-page-container:first-child h2 {
        margin: 0 0 .1in !important;
        color: #113e49 !important;
        font-size: 15pt !important;
    }

    .project-cost-detail-page .collapse,
    .project-cost-detail-page .collapsing {
        display: block !important;
        height: auto !important;
        overflow: visible !important;
    }

    .project-cost-detail-page .project-cost-section {
        overflow: visible !important;
        margin-top: .16in !important;
        margin-bottom: .16in !important;
        border: 1px solid #9aaab0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        break-inside: auto;
    }

    .project-cost-detail-page .project-cost-section > .row {
        margin: 0 !important;
    }

    .project-cost-detail-page .project-cost-section > .row:first-child {
        min-height: 0 !important;
        color: #111 !important;
        background: #dfecef !important;
    }

    .project-cost-detail-page .project-cost-section > .row:first-child > .col-12 {
        padding: .07in .09in !important;
    }

    .project-cost-detail-page .project-cost-section h4,
    .project-cost-detail-page #printContent > .container-fluid.mt-5 h4 {
        margin: 0 !important;
        padding: 0 !important;
        color: #123e48 !important;
        font-size: 9pt !important;
        font-weight: 800 !important;
    }

    .project-cost-detail-page .project-cost-section h4::before {
        display: none !important;
    }

    .project-cost-detail-page table.table {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        border-collapse: collapse !important;
        table-layout: fixed;
    }

    .project-cost-detail-page table.table thead {
        display: table-header-group;
    }

    .project-cost-detail-page table.table tfoot {
        display: table-row-group;
    }

    .project-cost-detail-page table.table tr {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .project-cost-detail-page table.table th,
    .project-cost-detail-page table.table td {
        padding: .045in .055in !important;
        border: 1px solid #b8c4c9 !important;
        color: #111 !important;
        background: #fff !important;
        font-size: 6.8pt !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere;
        vertical-align: top;
    }

    .project-cost-detail-page table.table thead th {
        color: #0d333c !important;
        background: #dfecef !important;
        font-size: 6.5pt !important;
        font-weight: 800 !important;
        text-transform: uppercase;
    }

    .project-cost-detail-page table.table .font-size-small,
    .project-cost-detail-page table.table .font-size-x-small {
        font-size: 6.2pt !important;
    }

    .project-cost-detail-page table.table p,
    .project-cost-detail-page table.table span {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .project-cost-detail-page table.table .tbody-totals-row td,
    .project-cost-detail-page table.table tfoot td {
        background: #eef4f5 !important;
        font-weight: 800 !important;
    }

    .project-cost-detail-page .project-cost-summary-card {
        margin-top: .18in !important;
        padding: .08in .1in !important;
        border: 1px solid #9aaab0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .project-cost-detail-page .project-cost-summary-card > .row {
        min-height: 0 !important;
        padding: .025in 0 !important;
        border-bottom: 1px solid #d6dfe2 !important;
        background: #fff !important;
    }

    .project-cost-detail-page .project-cost-summary-card > .row:last-child {
        padding-top: .06in !important;
        border-top: 2px solid #376f78 !important;
        border-bottom: 0 !important;
        background: #eaf2f3 !important;
    }

    .project-cost-detail-page #printContent > .container-fluid.mt-5 {
        margin-top: 0 !important;
        padding-top: .1in !important;
        break-before: page;
        page-break-before: always;
    }
}


/* --- updateProjectInvoices.css --- */
.invoices-page-header,
.invoices-page {
    --invoice-ink: #17212b;
    --invoice-muted: #687783;
    --invoice-border: #d8e2e8;
    --invoice-soft: #f4f8fa;
    --invoice-teal: #00717a;
    --invoice-navy: #1d4d68;
}

.invoices-page-header > .row {
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--invoice-border);
}

.invoices-page-header .btn-group {
    align-items: center;
    width: 100%;
}

.invoices-page-header h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    letter-spacing: -.035em;
}

.invoices-report-links > .col-12 {
    padding: .55rem;
    border: 1px solid var(--invoice-border);
    border-radius: .8rem;
    background: var(--invoice-soft);
}

.invoices-report-links .nav-link {
    padding: .55rem .8rem;
    border-radius: .5rem;
    color: var(--invoice-teal);
}

.invoices-report-links .nav-link:hover {
    color: #fff;
    background: var(--invoice-teal);
}

.invoices-page > .row.my-5 {
    overflow: visible;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.invoices-page > .row.my-5 > .table-responsive {
    padding: 0;
}

.invoices-page > .row.my-5 > .table-responsive > span.float-left,
.invoices-page > .row.my-5 > .table-responsive > h2 {
    display: block;
    float: none !important;
    min-height: 3.65rem;
    margin: 0 !important;
    padding: 1.05rem 12.5rem 1rem 1.2rem;
    color: #fff;
    background: linear-gradient(120deg, var(--invoice-navy), #27677d);
    border-radius: .9rem;
    font-size: 1.08rem;
}

.invoices-page > .row.my-5 > .table-responsive > span.float-left::before,
.invoices-page > .row.my-5 > .table-responsive > h2::before {
    margin-right: .65rem;
    color: #a2e1e4;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f571";
}

.invoices-page > .row.my-5 > .table-responsive > .btn.float-right,
.invoices-page > .row.my-5 > .table-responsive > .btn.display-inline.float-right {
    position: absolute;
    top: .7rem;
    right: 1rem;
    z-index: 2;
    float: none !important;
    padding: .45rem .7rem;
    border: 1px solid rgba(255, 255, 255, .6);
    border-radius: .5rem;
    color: #fff;
}

.invoices-page > .row.my-5 > .table-responsive > .btn:hover {
    color: var(--invoice-navy);
    background: #fff;
}

.invoices-page > .row.my-5 > .table-responsive {
    position: relative;
}

.invoices-page .table {
    margin-bottom: 0;
}

.invoices-page .thead-core th {
    padding: .75rem .65rem;
    border: 0;
    color: var(--invoice-teal);
    background: #edf4f6;
    font-size: .76rem;
    letter-spacing: .035em;
    text-transform: uppercase;
    vertical-align: middle;
}

.invoices-page .tbody-core > tr > td {
    padding: .4rem 0;
    border-color: #e2e9ed;
}

.invoices-page .tbody-core > tr.alternate-row-colors-core > td,
.invoices-page .tbody-core > tr.alternate-row-colors > td {
    background: transparent !important;
}

.invoices-page .bg-invoice-record-parent,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block {
    overflow: hidden !important;
    border: 1px solid var(--invoice-border);
    border-radius: .65rem;
    background: #fff !important;
}

.invoices-page .bg-invoice-record-parent > div,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block > div {
    padding-top: .55rem;
    padding-bottom: .55rem;
}

.invoices-page .alternate-row-colors-records {
    margin: .25rem .65rem .55rem;
    border: 1px solid #dce5ea;
    border-radius: .5rem;
    background: #f7fafb;
}

.invoices-page .bg-invoice-record-parent .btn.display-inline,
.invoices-page .tbody-core .btn.display-inline.float-right {
    margin: .2rem .45rem;
    padding: .35rem .55rem;
    border-radius: .45rem;
    color: var(--invoice-navy);
    background: #edf3f5;
}

.invoices-page button[data-bs-toggle="collapse"]:hover,
.invoices-page button[data-bs-toggle="collapse"]:focus-visible {
    border-color: #9fc8cd !important;
    color: #153f50 !important;
    background: #dceff1 !important;
    box-shadow: 0 0 0 .18rem rgba(0, 151, 167, .16);
}

.invoices-page button[data-bs-toggle="collapse"]:hover *,
.invoices-page button[data-bs-toggle="collapse"]:focus-visible * {
    color: inherit !important;
}

.invoices-page .btn-warning.btn-sm {
    min-width: 3.35rem;
    padding: .42rem .7rem;
    border: 0;
    border-radius: .5rem;
    box-shadow: 0 .2rem .45rem rgba(0, 0, 0, .08);
}

.invoices-page button[id^="btnPost_"] {
    margin-right: .65rem;
}

.invoices-page table > tfoot td,
.invoices-page .tbody-core > tr:last-child td {
    padding-top: .8rem;
    padding-bottom: .8rem;
}

.invoices-page .text-core-orange {
    color: #a9530e !important;
}

/* Distinguish invoice cards without returning to table zebra striping. */
.invoices-page .bg-invoice-record-parent,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block {
    width: 100% !important;
    margin: .45rem 0 1rem;
    border: 1px solid #cddbe1;
    border-left: .3rem solid var(--invoice-teal);
    border-radius: .75rem;
    box-shadow: 0 .3rem .85rem rgba(29, 77, 104, .09);
}

.invoices-page .bg-invoice-record-parent > .bg-gray,
.invoices-page .bg-invoice-record-parent > .bg-gray-invoices-grouped,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block > .bg-gray,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block > .bg-gray-invoices-grouped {
    border-top: 1px solid #dce8ec;
    background: #f1f7f8 !important;
}

.invoices-page .bg-invoice-record-parent > .bg-gray-invoices-grouped,
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block > .bg-gray-invoices-grouped {
    background: #e9f3f5 !important;
}

.invoices-page [id^="jobRecordContainer_"] {
    width: calc(100% - 1.2rem) !important;
    margin: .4rem .6rem;
    border: 1px solid #dce5ea;
    border-radius: .5rem;
    background: #f8fafb;
}

.invoices-page .bg-invoice-record-parent div[class*="invoiceData"],
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block div[class*="invoiceData"] {
    width: calc(100% - 1.2rem) !important;
    margin: .45rem .6rem .65rem;
    border: 1px solid #cfe4dc;
    border-left: .25rem solid #48a987;
    border-radius: .55rem;
    background: #f2faf6 !important;
}

.invoices-page .bg-invoice-record-parent div[class*="invoiceData"] + div[class*="invoiceData"],
.invoices-page .tbody-core > tr > td > .w-100.display-inline-block div[class*="invoiceData"] + div[class*="invoiceData"] {
    margin-top: -.15rem;
}

/* Material treatment for the core Add Invoice workflow. */
#addInvoiceModal .invoice-entry-modal {
    overflow: hidden;
    border: 0;
    border-radius: 1rem;
    color: #17212b;
    box-shadow: 0 1.25rem 3.5rem rgba(8, 37, 48, .28);
}

#addInvoiceModal .invoice-entry-header {
    position: relative;
    padding: 1.15rem 1.4rem;
    border: 0;
    color: #fff;
    background: linear-gradient(125deg, #16485c 0%, #00737b 100%);
}

#addInvoiceModal .invoice-entry-header::after {
    position: absolute;
    top: -4.5rem;
    right: 3rem;
    width: 10rem;
    height: 10rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
    content: "";
    pointer-events: none;
}

#addInvoiceModal .invoice-entry-header-icon {
    display: flex;
    flex: 0 0 3rem;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: .75rem;
    color: #b9eef0;
    background: rgba(255, 255, 255, .12);
    font-size: 1.2rem;
}

#addInvoiceModal .invoice-entry-eyebrow {
    display: block;
    margin-bottom: .12rem;
    color: #aee8ea;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

#addInvoiceModal .invoice-entry-header .modal-title {
    margin: 0;
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

#addInvoiceModal .invoice-entry-header p {
    margin: .15rem 0 0;
    color: #d7eff0;
    font-size: .82rem;
}

#addInvoiceModal .invoice-entry-header .btn-close {
    position: relative;
    z-index: 2;
    margin: 0;
}

#addInvoiceModal .invoice-entry-body {
    padding: 1.25rem;
    background: #eef3f5;
}

#addInvoiceModal .invoice-entry-card {
    padding: 1.1rem;
    border: 1px solid #d6e1e6;
    border-radius: .85rem;
    background: #fff;
    box-shadow: 0 .25rem .85rem rgba(22, 72, 92, .06);
}

#addInvoiceModal .invoice-entry-payment-card {
    border-color: #c7e3e5;
    background: linear-gradient(145deg, #fff 0%, #f0fafb 100%);
}

#addInvoiceModal .invoice-entry-card-heading {
    display: flex;
    gap: .75rem;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: .8rem;
    border-bottom: 1px solid #e1e8ec;
}

#addInvoiceModal .invoice-entry-card-icon {
    display: flex;
    flex: 0 0 2.35rem;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: .65rem;
    color: #00737b;
    background: #e4f5f6;
}

#addInvoiceModal .invoice-entry-card-heading h2 {
    margin: 0;
    color: #18384a;
    font-size: .98rem;
    font-weight: 800;
}

#addInvoiceModal .invoice-entry-card-heading p {
    margin: .1rem 0 0;
    color: #70808c;
    font-size: .76rem;
}

#addInvoiceModal .form-label {
    margin-bottom: .35rem;
    color: #425965;
    font-size: .76rem;
    font-weight: 800;
}

#addInvoiceModal .form-control,
#addInvoiceModal .form-select {
    min-height: 2.7rem;
    border-color: #cbd8de;
    border-radius: .55rem;
    background-color: #fff;
}

#addInvoiceModal .form-control:focus,
#addInvoiceModal .form-select:focus {
    border-color: #00737b;
    box-shadow: 0 0 0 .2rem rgba(0, 115, 123, .14);
}

#addInvoiceModal .form-select:disabled {
    color: #405460;
    background-color: #eef2f4;
    opacity: 1;
}

#addInvoiceModal .invoice-entry-help {
    display: block;
    margin-top: .35rem;
    color: #71818c;
    font-size: .7rem;
}

#addInvoiceModal .invoice-entry-money-input {
    position: relative;
}

#addInvoiceModal .invoice-entry-money-input > span {
    position: absolute;
    top: 50%;
    left: .85rem;
    z-index: 2;
    color: #00737b;
    font-weight: 900;
    transform: translateY(-50%);
}

#addInvoiceModal .invoice-entry-money-input .form-control {
    padding-left: 1.75rem;
}

#addInvoiceModal .invoice-entry-footer {
    gap: .55rem;
    padding: .9rem 1.25rem;
    border-top: 1px solid #dce5e9;
    background: #fff;
}

#addInvoiceModal .invoice-entry-footer .btn {
    min-width: 7rem;
    border-radius: .55rem;
}

#addInvoiceModal #addInvoiceModalProgress {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-height: auto;
    margin: .25rem 0;
    padding: 1rem 1.15rem;
    border: 1px solid #9edce4;
    border-left: .3rem solid #0097a7;
    border-radius: .85rem;
    color: #17323a;
    background: #eef9fb;
    box-shadow: 0 .35rem .9rem rgba(0, 87, 97, .12);
    visibility: visible;
    opacity: 1;
}

#addInvoiceModal #addInvoiceModalProgress.d-none {
    display: none;
}

#addInvoiceModal #addInvoiceModalProgress .invoice-entry-progress-spinner {
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    color: #00a9c0 !important;
}

#addInvoiceModal #addInvoiceModalProgress strong,
#addInvoiceModal #addInvoiceModalProgress span {
    display: block;
}

#addInvoiceModal #addInvoiceModalProgress strong {
    margin-bottom: .15rem;
    font-size: 1rem;
}

@media (max-width: 767.98px) {
    #addInvoiceModal .invoice-entry-header p {
        display: none;
    }

    #addInvoiceModal .invoice-entry-body {
        padding: .85rem;
    }

    .invoices-page-header .btn-group {
        align-items: stretch;
        flex-direction: column;
    }

    .invoices-page-header .btn-group > [class*="col-"] {
        width: 100%;
        text-align: left;
    }

    .invoices-page-header .btn-group .btn-dark {
        margin-top: .8rem;
    }

    .invoices-page > .row.my-5 > .table-responsive > span.float-left,
    .invoices-page > .row.my-5 > .table-responsive > h2 {
        min-height: auto;
        padding-right: 1rem;
        padding-bottom: 3.8rem;
    }

    .invoices-page > .row.my-5 > .table-responsive > .btn.float-right,
    .invoices-page > .row.my-5 > .table-responsive > .btn.display-inline.float-right {
        top: auto;
        right: auto;
        bottom: .65rem;
        left: .65rem;
    }

    .invoices-report-links .nav {
        align-items: stretch;
        flex-direction: column;
    }
}


/* --- vendorListReport.css --- */
/*
 * Vendor list report workspace
 * jKirkerx / Codex - 2026-07-27
 */

.vendor-list-report-page {
    --vendor-bg: #f4f7f9;
    --vendor-border: #d9e3e8;
    --vendor-ink: #172033;
    --vendor-muted: #667685;
    --vendor-teal: #006f78;
    background: var(--vendor-bg);
    color: var(--vendor-ink);
}

.vendor-list-shell {
    padding-top: 0.75rem;
}

.vendor-list-hero {
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    overflow: hidden;
    padding: 1.65rem 1.75rem;
    position: relative;
}

.vendor-list-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.vendor-list-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.vendor-list-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.vendor-list-hero p {
    color: #d3eaec;
    margin: 0;
}

.vendor-list-card {
    background: #fff;
    border: 1px solid var(--vendor-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.065);
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
}

.vendor-list-card > .col-12 {
    padding: 0;
}

.vendor-list-summary {
    align-items: center;
    border-bottom: 1px solid var(--vendor-border);
    display: flex;
    justify-content: space-between;
    padding: 1.15rem 1.35rem;
}

.vendor-list-summary h2 {
    font-size: 1.12rem;
    font-weight: 750;
    margin: 0 0 0.2rem;
}

.vendor-list-summary p {
    color: var(--vendor-muted);
    font-size: 0.86rem;
    margin: 0;
}

.vendor-list-summary > span {
    background: #e5f5f5;
    border: 1px solid #bce4e5;
    border-radius: 999px;
    color: var(--vendor-teal);
    font-size: 0.78rem;
    font-weight: 750;
    padding: 0.35rem 0.7rem;
    white-space: nowrap;
}

.vendor-list-table-scroll {
    overflow-x: auto;
}

.vendor-list-table {
    border: 0 !important;
    margin: 0;
    min-width: 42rem;
    width: 100%;
}

.vendor-list-table tbody td {
    border-color: #e2e9ed;
    padding: 0.8rem 1rem;
    vertical-align: middle;
}

.vendor-list-table tbody tr:hover {
    background: #f4fbfb;
}

.vendor-list-table tbody td:first-child {
    border-left: 0.25rem solid #20a4ad;
}

.vendor-detail-link {
    color: var(--vendor-teal);
    text-decoration: none;
}

.vendor-detail-link i {
    font-size: 0.72rem;
    margin-left: 0.3rem;
    transition: transform 0.15s ease;
}

.vendor-detail-link:hover {
    color: #004d54;
    text-decoration: underline;
}

.vendor-detail-link:hover i {
    transform: translateX(0.2rem);
}

.vendor-list-report-page .btn-outline-dark[href="/home.php"] {
    background: #20262b;
    color: #fff;
    min-width: 6rem;
}

@media (max-width: 767.98px) {
    .vendor-list-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem;
    }

    .vendor-list-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }
}


/* --- vendorPriceListReport.css --- */
/*
 * Vendor price-list report workspace
 * jKirkerx / Codex - 2026-07-27
 */

.vendor-price-list-page {
    --price-bg: #f4f7f9;
    --price-border: #d9e3e8;
    --price-ink: #172033;
    --price-muted: #667685;
    --price-teal: #006f78;
    background: var(--price-bg);
    color: var(--price-ink);
}

.vendor-price-list-shell {
    padding-top: 0.75rem;
}

.vendor-price-list-hero {
    align-items: center;
    background: linear-gradient(125deg, #123d53 0%, #006f78 100%);
    border-radius: 1rem;
    box-shadow: 0 0.65rem 1.5rem rgba(15, 45, 61, 0.14);
    color: #fff;
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    padding: 1.65rem 1.75rem;
    position: relative;
}

.vendor-price-list-actions {
    display: flex;
    gap: .55rem;
    position: relative;
    z-index: 1;
}

.vendor-price-contact-card {
    display: grid;
    grid-template-columns: minmax(13rem, 1fr) minmax(13rem, 1fr) minmax(17rem, 1.35fr);
    gap: 1.25rem;
    align-items: center;
    margin: 1rem 0;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--price-border);
    border-radius: .9rem;
    background: #fff;
    box-shadow: 0 .25rem .9rem rgba(15, 35, 48, .055);
}

.vendor-price-contact-heading {
    display: flex;
    gap: .8rem;
    align-items: center;
}

.vendor-price-contact-icon {
    display: grid;
    width: 2.6rem;
    height: 2.6rem;
    flex: 0 0 2.6rem;
    place-items: center;
    border-radius: .7rem;
    color: var(--price-teal);
    background: #e5f5f5;
}

.vendor-price-contact-label,
.vendor-price-contact-details span {
    display: block;
    color: var(--price-muted);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.vendor-price-contact-heading strong {
    display: block;
    margin-top: .12rem;
    font-size: 1.08rem;
}

.vendor-price-contact-card address {
    margin: 0;
    color: #44535f;
    font-size: .88rem;
    line-height: 1.55;
}

.vendor-price-contact-details {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .9rem;
}

.vendor-price-contact-details strong {
    display: block;
    overflow: hidden;
    margin-top: .2rem;
    font-size: .84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vendor-price-list-hero::after {
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
    content: "";
    height: 13rem;
    position: absolute;
    right: -3rem;
    top: -6rem;
    width: 13rem;
}

.vendor-price-list-eyebrow {
    color: #9ee8e8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.vendor-price-list-hero h1 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    margin: 0 0 0.35rem;
}

.vendor-price-list-hero p {
    color: #d3eaec;
    margin: 0;
}

.vendor-price-list-card {
    background: #fff;
    border: 1px solid var(--price-border);
    border-radius: 0.9rem;
    box-shadow: 0 0.3rem 1.1rem rgba(15, 35, 48, 0.065);
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
}

.vendor-price-list-card > .col-12 {
    padding: 0;
}

.vendor-price-list-summary {
    align-items: center;
    border-bottom: 1px solid var(--price-border);
    display: flex;
    justify-content: space-between;
    padding: 1.15rem 1.35rem;
}

.vendor-price-list-summary h2 {
    font-size: 1.12rem;
    font-weight: 750;
    margin: 0 0 0.2rem;
}

.vendor-price-list-summary p {
    color: var(--price-muted);
    font-size: 0.86rem;
    margin: 0;
}

.vendor-price-list-summary > span {
    background: #e5f5f5;
    border: 1px solid #bce4e5;
    border-radius: 999px;
    color: var(--price-teal);
    font-size: 0.78rem;
    font-weight: 750;
    padding: 0.35rem 0.7rem;
    white-space: nowrap;
}

.vendor-price-list-scroll {
    max-height: 68vh;
    overflow: auto;
}

.vendor-price-list-table {
    border: 0 !important;
    margin: 0;
    min-width: 42rem;
    width: 100%;
}

.vendor-price-list-table thead th {
    position: sticky;
    z-index: 2;
    top: 0;
    padding: .8rem 1rem;
    border: 0;
    color: #fff;
    background: #064d58;
    font-size: .78rem;
    letter-spacing: .01em;
}

.vendor-price-list-table tbody td {
    border-color: #e2e9ed;
    padding: 0.6rem 1rem;
    vertical-align: middle;
}

.vendor-price-list-table tbody tr:hover {
    background: #f4fbfb;
}

.vendor-price-list-table tbody td:first-child {
    border-left: 0.25rem solid #20a4ad;
}

.vendor-status-badge {
    border-radius: 999px;
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    padding: 0.3rem 0.6rem;
}

.vendor-status-badge.is-active {
    background: #e3f6ee;
    color: #087454;
}

.vendor-status-badge.is-inactive {
    background: #f1f3f5;
    color: #68737d;
}

.vendor-price-list-table .dropdown-toggle {
    min-width: 5.5rem;
}

.vendor-price-list-page .btn-dark[href="/home.php"] {
    min-width: 6rem;
}

@media (max-width: 767.98px) {
    .vendor-price-list-hero {
        border-radius: 0.75rem;
        padding: 1.3rem 1.15rem;
    }

    .vendor-price-list-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }

    .vendor-price-list-hero,
    .vendor-price-list-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .vendor-price-contact-card,
    .vendor-price-contact-details {
        grid-template-columns: 1fr;
    }
}

@media print {
    @page {
        size: portrait;
        margin: .45in;
    }

    .vendor-price-list-page {
        background: #fff;
        font-size: 9pt;
    }

    .vendor-price-list-shell {
        max-width: none;
        width: 100%;
        margin: 0 !important;
        padding: 0;
    }

    .vendor-price-contact-card {
        grid-template-columns: 1fr 1fr 1.6fr;
        gap: .6rem;
        margin: 0 0 .18in;
        padding: .12in .16in;
        break-after: avoid;
    }

    .vendor-price-contact-icon {
        width: 1.8rem;
        height: 1.8rem;
        flex-basis: 1.8rem;
    }

    .vendor-price-contact-heading strong,
    .vendor-price-contact-details strong,
    .vendor-price-contact-card address {
        font-size: 8pt;
        line-height: 1.25;
    }

    .vendor-price-contact-label,
    .vendor-price-contact-details span {
        font-size: 6.5pt;
    }

    .vendor-price-list-card {
        display: block;
        width: 100%;
        overflow: visible;
        border-color: #aaa;
        box-shadow: none;
        break-before: auto;
    }

    .vendor-price-list-card > .col-12 {
        display: block;
        width: 100%;
    }

    .vendor-price-list-summary {
        padding: .08in .12in;
        break-after: avoid;
    }

    .vendor-price-list-summary h2 {
        font-size: 11pt;
    }

    .vendor-price-list-summary p {
        display: none;
    }

    .vendor-price-list-scroll {
        display: block;
        max-height: none;
        overflow: visible;
    }

    .vendor-price-list-table {
        width: 100% !important;
        min-width: 0;
        table-layout: auto;
        font-size: 7.5pt;
    }

    .vendor-price-list-table thead {
        display: table-header-group;
        height: auto !important;
        min-height: 0 !important;
    }

    .vendor-price-list-table thead th {
        position: static;
        padding: .07in .08in;
        color: #000;
        background: #ddd !important;
        font-size: 7pt;
    }

    .vendor-price-list-table tbody::before {
        display: none !important;
        content: none !important;
    }

    .vendor-price-list-table tbody td {
        padding: .045in .08in;
        font-size: 7.5pt;
        line-height: 1.15;
    }

    .vendor-price-list-table tr {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .vendor-status-badge {
        padding: .08rem .24rem;
        font-size: 6.5pt;
    }
}


/* --- viewCommissionDetail.css --- */
.commission-detail-page {
    --commission-detail-ink: #17212b;
    --commission-detail-muted: #687783;
    --commission-detail-border: #d8e2e8;
    --commission-detail-soft: #f1f6f7;
    --commission-detail-teal: #00717a;
    --commission-detail-navy: #16465c;
}

.commission-detail-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    overflow: hidden;
    padding: 1.75rem 2rem;
    border-radius: 1rem;
    color: #fff;
    background: linear-gradient(120deg, var(--commission-detail-navy), var(--commission-detail-teal));
    box-shadow: 0 .65rem 1.6rem rgba(22, 70, 92, .15);
}

.commission-detail-hero::after {
    position: absolute;
    top: -4.5rem;
    right: -2.5rem;
    width: 12rem;
    height: 12rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
    content: "";
}

.commission-detail-hero > * {
    position: relative;
    z-index: 1;
}

.commission-detail-eyebrow {
    display: block;
    margin-bottom: .35rem;
    color: #a8edf0;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.commission-detail-hero h1 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    font-weight: 800;
    letter-spacing: -.035em;
}

.commission-detail-hero p {
    max-width: 52rem;
    margin: .45rem 0 0;
    color: rgba(255, 255, 255, .88);
}

.commission-detail-report {
    overflow: hidden;
    border: 1px solid var(--commission-detail-border);
    border-radius: .95rem;
    background: #fff;
    box-shadow: 0 .35rem 1.25rem rgba(22, 70, 92, .08);
}

.commission-detail-report-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    color: #fff;
    background: var(--commission-detail-teal);
}

.commission-detail-report-heading h2 {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 800;
}

.commission-detail-report-heading .commission-detail-eyebrow {
    margin-bottom: .15rem;
}

.commission-detail-project-number {
    padding: .3rem .65rem;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
}

.commission-detail-report .table {
    min-width: 760px;
    margin-bottom: 0;
    table-layout: fixed;
}

.commission-detail-type-column {
    width: 24%;
}

.commission-detail-amount-column {
    width: 16%;
}

.commission-detail-notes-column {
    width: 60%;
}

.commission-detail-report .thead-core th {
    padding: .8rem 1rem;
    border: 0;
    color: var(--commission-detail-teal);
    background: #eaf2f4;
    font-size: .78rem;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.commission-detail-report .tbody-core td {
    padding: 1rem;
    border-color: #dfe8ec;
    vertical-align: middle;
}

.commission-detail-report .tbody-core tr.alternate-row-colors-core:nth-child(odd) > td,
.commission-detail-report .tbody-core tr.alternate-row-colors:nth-child(odd) > td {
    background-color: #fff;
}

.commission-detail-report .tbody-core tr.alternate-row-colors-core:nth-child(even) > td,
.commission-detail-report .tbody-core tr.alternate-row-colors:nth-child(even) > td {
    background-color: var(--commission-detail-soft);
}

.commission-detail-report .tbody-core tr:hover > td {
    box-shadow: inset 0 0 0 999px rgba(0, 113, 122, .045);
}

.commission-detail-report p {
    margin-bottom: 0;
    line-height: 1.5;
}

@media (max-width: 767.98px) {
    .commission-detail-hero {
        align-items: flex-start;
        flex-direction: column;
        padding: 1.4rem;
    }

    .commission-detail-report-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* --- workOrders.css --- */
.work-orders-page {
    --wo-ink: #17212b;
    --wo-muted: #687683;
    --wo-border: #dce3e8;
    --wo-surface: #ffffff;
    --wo-soft: #f5f8fa;
    --wo-teal: #006b74;
    --wo-navy: #183b56;
}

.work-orders-title-row {
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--wo-border);
}

.work-orders-title-row h2 {
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    letter-spacing: -.035em;
}

.work-orders-eyebrow,
.work-orders-toolbar-label {
    display: block;
    color: var(--wo-teal);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.work-orders-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--wo-border);
    border-radius: .8rem;
    background: var(--wo-soft);
}

.work-orders-toolbar strong {
    color: var(--wo-ink);
    font-size: 1rem;
}

.work-orders-section {
    overflow: hidden;
    border: 1px solid var(--wo-border);
    border-radius: .9rem;
    background: var(--wo-surface);
    box-shadow: 0 .35rem 1.25rem rgba(24, 59, 86, .07);
}

.work-orders-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1rem 1.2rem;
    color: #fff;
    background: linear-gradient(120deg, var(--wo-navy), #245b73);
}

.work-orders-section-header-light {
    color: var(--wo-ink);
    background: linear-gradient(120deg, #eef5f6, #f7f9fa);
}

.work-orders-equipment-header {
    background: linear-gradient(120deg, #075d65, #14808a);
}

.work-orders-section-heading {
    display: flex;
    align-items: center;
    gap: .85rem;
}

.work-orders-section-icon {
    display: grid;
    width: 2.6rem;
    height: 2.6rem;
    flex: 0 0 2.6rem;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: .7rem;
    background: rgba(255, 255, 255, .12);
    font-size: 1.15rem;
}

.work-orders-section-header-light .work-orders-section-icon {
    border-color: #cfe0e3;
    color: var(--wo-teal);
    background: #fff;
}

.work-orders-section-heading h3 {
    margin: .1rem 0 0;
    font-size: 1.18rem;
    font-weight: 800;
}

.work-orders-section-header:not(.work-orders-section-header-light) .work-orders-eyebrow {
    color: #a9e1e5;
}

.work-orders-summary-actions {
    display: flex;
    gap: .55rem;
}

.work-orders-section-header .btn {
    border-color: rgba(255, 255, 255, .72);
    font-size: .82rem;
}

.work-orders-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
    padding: 1rem;
}

.work-order-card {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: .75rem;
    padding: .9rem;
    border: 1px solid var(--wo-border);
    border-radius: .7rem;
    background: #fff;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.work-order-card:hover {
    transform: translateY(-2px);
    border-color: #a9c7cc;
    box-shadow: 0 .4rem .9rem rgba(24, 59, 86, .09);
}

.work-order-card-icon {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    flex: 0 0 2.35rem;
    place-items: center;
    border-radius: .6rem;
    color: var(--wo-teal);
    background: #e9f4f5;
}

.work-order-comment-card .work-order-card-icon {
    color: #705311;
    background: #fff4d8;
}

.work-order-equipment-card .work-order-card-icon {
    color: #274b70;
    background: #eaf1f8;
}

.work-order-card-body {
    min-width: 0;
    flex: 1 1 auto;
}

.work-order-card-title {
    display: block;
    overflow: hidden;
    color: var(--wo-ink);
    font-size: .98rem;
    font-weight: 800;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.work-order-card-title:hover {
    color: var(--wo-teal);
    text-decoration: underline;
}

.work-order-card-body > span {
    display: block;
    overflow: hidden;
    margin-top: .12rem;
    color: var(--wo-muted);
    font-size: .78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.work-order-pdf-link {
    display: grid;
    min-width: 2.5rem;
    place-items: center;
    color: #9d2430;
    font-size: 1.1rem;
    text-decoration: none;
}

.work-order-pdf-link span {
    margin-top: .05rem;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .05em;
}

.work-order-pdf-link:hover {
    color: #c32938;
}

.work-orders-empty {
    padding: 4rem 1rem;
    border: 1px dashed #bdc9d1;
    border-radius: .9rem;
    color: var(--wo-muted);
    text-align: center;
    background: var(--wo-soft);
}

.work-orders-empty i {
    margin-bottom: 1rem;
    color: var(--wo-teal);
    font-size: 2.2rem;
}

.work-orders-empty h2 {
    color: var(--wo-ink);
    font-size: 1.35rem;
}

@media (max-width: 991.98px) {
    .work-orders-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .work-orders-section-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    .work-orders-toolbar,
    .work-orders-summary-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .work-orders-grid {
        grid-template-columns: 1fr;
    }

    .work-orders-summary-actions .btn {
        width: 100%;
    }
}
/* Shared PCAD footer */
.footer-container {
    min-height: auto;
    padding: 1rem 0;
    border: 0;
    border-top: 3px solid #0c7d84;
    color: rgba(255, 255, 255, .78);
    background: #123f49;
    line-height: 1.4;
}

.footer-container > .container,
.footer-container > .container-fluid {
    padding-right: clamp(1.25rem, 4vw, 4rem);
    padding-left: clamp(1.25rem, 4vw, 4rem);
}

.pcad-footer-content {
    display: flex;
    gap: 1rem 2rem;
    align-items: center;
    justify-content: space-between;
    min-height: 2.5rem;
}

.pcad-footer-identity,
.pcad-footer-navigation {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem 1.25rem;
    align-items: center;
}

.pcad-footer-identity {
    align-items: flex-start;
    flex-direction: column;
    font-size: .82rem;
    gap: .12rem;
}

.pcad-footer-version {
    color: rgba(255, 255, 255, .58);
    font-size: calc(.72rem + 4px);
    font-weight: 600;
    letter-spacing: .02em;
}

.pcad-footer-navigation a {
    color: #e2f3f4;
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
}

.pcad-footer-navigation a:hover,
.pcad-footer-navigation a:focus {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: .2rem;
}

@media (max-width: 767.98px) {
    .pcad-footer-content {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Keep the project cost report landscape after other report print rules. */
@media print {
    @page {
        size: landscape;
        margin: .35in;
    }

    .project-cost-detail-page #printContent,
    .project-cost-detail-page .project-cost-section,
    .project-cost-detail-page .project-cost-section > .row,
    .project-cost-detail-page .project-cost-section .collapse,
    .project-cost-detail-page .project-cost-section .collapsing,
    .project-cost-detail-page .project-cost-section .col-12 {
        display: block;
        width: 100% !important;
        max-width: none !important;
    }

    .project-cost-detail-page .project-cost-section {
        border: 0 !important;
    }

    .project-cost-detail-page .project-cost-section table {
        display: table;
        width: 100% !important;
        max-width: none !important;
        table-layout: fixed;
    }

    .project-cost-detail-page .project-cost-section thead {
        display: table-header-group;
    }

    .project-cost-detail-page .project-cost-section tbody,
    .project-cost-detail-page .project-cost-section tfoot {
        display: table-row-group;
    }

    .project-cost-detail-page .project-cost-section tr {
        display: table-row;
    }

    .project-cost-detail-page .project-cost-section th,
    .project-cost-detail-page .project-cost-section td {
        display: table-cell;
    }
}

/* Remove invoice confirmation */
#removeInvoiceModal .remove-invoice-modal {
    overflow: hidden;
    border: 0;
    border-radius: 0.9rem;
    box-shadow: 0 1.5rem 4rem rgba(4, 41, 52, 0.28);
}

#removeInvoiceModal .remove-invoice-modal__header {
    align-items: flex-start;
    padding: 1.35rem 1.5rem;
    color: #fff;
    border: 0;
    background: linear-gradient(125deg, #0d5264 0%, #087d83 100%);
}

#removeInvoiceModal .remove-invoice-modal__heading,
#removeInvoiceModal .remove-invoice-modal__summary-heading,
#removeInvoiceModal .remove-invoice-modal__notice {
    display: flex;
    align-items: flex-start;
}

#removeInvoiceModal .remove-invoice-modal__heading {
    gap: 0.9rem;
}

#removeInvoiceModal .remove-invoice-modal__icon,
#removeInvoiceModal .remove-invoice-modal__summary-icon,
#removeInvoiceModal .remove-invoice-modal__notice-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 0.65rem;
}

#removeInvoiceModal .remove-invoice-modal__icon {
    font-size: 1.05rem;
    color: #fff;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
}

#removeInvoiceModal .remove-invoice-modal__eyebrow {
    display: block;
    margin-bottom: 0.15rem;
    color: #b8f2ef;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

#removeInvoiceModal .modal-title {
    color: #fff;
    font-size: 1.35rem;
    font-weight: 750;
}

#removeInvoiceModal .remove-invoice-modal__header p,
#removeInvoiceModal .remove-invoice-modal__summary-heading p,
#removeInvoiceModal .remove-invoice-modal__notice p {
    margin: 0;
}

#removeInvoiceModal .remove-invoice-modal__header p {
    margin-top: 0.2rem;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.84rem;
}

#removeInvoiceModal .modal-body {
    padding: 1.4rem 1.5rem;
    background: #f5f9fa;
}

#removeInvoiceModal .remove-invoice-modal__status:empty {
    display: none;
}

#removeInvoiceModal .remove-invoice-modal__status {
    margin: 0 0 1rem;
    padding: 0.75rem 0.9rem;
    color: #a51d2d;
    font-size: 0.88rem;
    background: #fff1f2;
    border: 1px solid #fecdd3;
    border-radius: 0.65rem;
}

#removeInvoiceModal .remove-invoice-modal__summary {
    padding: 1.15rem;
    background: #fff;
    border: 1px solid #d8e4e8;
    border-radius: 0.75rem;
    box-shadow: 0 0.35rem 1rem rgba(15, 65, 77, 0.06);
}

#removeInvoiceModal .remove-invoice-modal__summary-heading {
    gap: 0.75rem;
    padding-bottom: 0.9rem;
    border-bottom: 1px solid #e3ebee;
}

#removeInvoiceModal .remove-invoice-modal__summary-icon {
    color: #007b83;
    background: #e5f6f6;
}

#removeInvoiceModal .remove-invoice-modal__summary-heading h6 {
    margin: 0 0 0.1rem;
    color: #153e4c;
    font-weight: 750;
}

#removeInvoiceModal .remove-invoice-modal__summary-heading p,
#removeInvoiceModal .remove-invoice-modal__notice p {
    color: #657983;
    font-size: 0.78rem;
}

#removeInvoiceModal .remove-invoice-modal__details {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    padding-top: 1rem;
}

#removeInvoiceModal .remove-invoice-modal__detail {
    min-width: 0;
    padding: 0.15rem 1rem;
    border-right: 1px solid #e3ebee;
}

#removeInvoiceModal .remove-invoice-modal__detail:first-child {
    padding-left: 0;
}

#removeInvoiceModal .remove-invoice-modal__detail:last-child {
    padding-right: 0;
    border-right: 0;
}

#removeInvoiceModal .remove-invoice-modal__detail span {
    display: block;
    margin-bottom: 0.3rem;
    color: #6a7e87;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

#removeInvoiceModal .remove-invoice-modal__detail strong {
    display: block;
    overflow-wrap: anywhere;
    color: #142e38;
    font-size: 0.95rem;
}

#removeInvoiceModal .remove-invoice-modal__detail--amount strong {
    color: #08777b;
    font-size: 1.05rem;
}

#removeInvoiceModal .remove-invoice-modal__notice {
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.9rem 1rem;
    background: #fff8e7;
    border: 1px solid #f5d88d;
    border-radius: 0.7rem;
}

#removeInvoiceModal .remove-invoice-modal__notice-icon {
    width: 2rem;
    height: 2rem;
    color: #9c5800;
    background: #ffecba;
}

#removeInvoiceModal .remove-invoice-modal__notice strong {
    display: block;
    margin-bottom: 0.15rem;
    color: #6b3d00;
    font-size: 0.84rem;
}

#removeInvoiceModal .modal-footer {
    padding: 0.9rem 1.5rem;
    background: #fff;
    border-top: 1px solid #dfe8eb;
}

@media (max-width: 767.98px) {
    #removeInvoiceModal .remove-invoice-modal__details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 1rem;
    }

    #removeInvoiceModal .remove-invoice-modal__detail:nth-child(2) {
        border-right: 0;
    }

    #removeInvoiceModal .remove-invoice-modal__detail:nth-child(3) {
        padding-left: 0;
    }
}

@media (max-width: 479.98px) {
    #removeInvoiceModal .remove-invoice-modal__details {
        grid-template-columns: 1fr;
    }

    #removeInvoiceModal .remove-invoice-modal__detail {
        padding: 0.2rem 0;
        border-right: 0;
    }
}
