/* Explicit message colors keep text readable across dashboard themes. */
.elite-investment-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.elite-investment-filters { margin-bottom: 24px; }
.elite-investment-filters .form-label { display: block; margin-bottom: 8px; }
.elite-investment-filters .form-control, .elite-investment-filters .btn { min-height: 42px; }
.elite-investment-results > span { display: block; width: 100%; }
.elite-investments .dashlbl, .elite-investments .dashcont { width: 100%; margin: 0; padding: 0; color: var(--bs-body-color); }
.elite-investments .dashcont { overflow-x: auto; }
.elite-investments .elite-investment-table { width: 100%; min-width: 560px; margin: 0; border-collapse: collapse; font-size: 13px; color: var(--bs-body-color); }
.elite-investments .elite-investment-table > tbody > tr > td { padding: 14px 16px; text-align: left; vertical-align: middle; border-bottom: 1px solid var(--bs-border-color); background: var(--bs-card-bg); color: var(--bs-body-color); }
.elite-investments .elite-investment-table > tbody > tr.tblhed > td { background: var(--bs-tertiary-bg); color: var(--bs-body-color); font-weight: 600; white-space: nowrap; }
.elite-investments .elite-investment-table > tbody > tr > td:nth-child(4) { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.elite-investments .elite-investment-table > tbody > tr > td:first-child { white-space: nowrap; }
.elite-investments .elite-investment-table a { color: var(--bs-link-color); }
.elite-investments #pglinkdiv { width: 100%; }
.elite-investments #pglinkdiv table { width: 100%; margin: 0; }
.elite-investments #pglinkdiv td { padding: 6px; color: var(--bs-body-color); background: transparent; }
.elite-investments #pglinkdiv img { width: 18px; height: 18px; }
.elite-investment-total { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 24px; padding: 18px 24px; border-top: 1px solid var(--bs-border-color); }
@media (max-width: 575px) {
    .elite-investment-heading { align-items: flex-start; }
    .elite-investment-total { justify-content: space-between; gap: 12px; padding: 16px; }
}

.elite-feedback.alert-success {
    color: #14532d;
    background-color: #dcfce7;
    border: 1px solid #15803d;
}
.elite-feedback.alert-danger {
    color: #7f1d1d;
    background-color: #fee2e2;
    border: 1px solid #b91c1c;
}
[data-bs-theme="dark"] .elite-feedback.alert-success {
    color: #dcfce7;
    background-color: #143524;
    border-color: #4ade80;
}
[data-bs-theme="dark"] .elite-feedback.alert-danger {
    color: #fee2e2;
    background-color: #451a1a;
    border-color: #f87171;
}
.elite-feedback strong { color: inherit; }
.elite-feedback .elite-feedback-close {
    color: inherit;
    background: transparent;
    border: 0;
    font-size: 24px;
    line-height: 1;
    padding: 0 4px;
    cursor: pointer;
}
.elite-feedback .elite-feedback-close:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

/* Keep the full square logo proportional in each site's navigation. */
.site-header .site-branding img.logo-img {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.startbar .brand .logo-lg {
    width: auto;
    height: 110px;
    max-width: 100%;
    object-fit: contain;
}

.startbar .brand .logo-sm {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.logo-topbar img {
    width: auto;
    height: 60px;
    object-fit: contain;
}

@media (max-width: 767px) {
    .site-header .site-branding img.logo-img {
        width: 76px;
        height: 76px;
    }
}
