/* ==========================================================================
   VIXY Hedge LP — inner dashboard pages (user + admin, logged in)
   Dark navy + gold, the same look as the login pages (auth.css).
   Loaded from header.php, after each page's own styles. The pages carry a
   lot of inline <style> with white cards, so most rules need !important.
   Scoped to body:not(.vixy-auth) — the login pages are styled by auth.css.
   ========================================================================== */
body:not(.vixy-auth){
  --vx-ink:#07111b; --vx-navy:#0b1b29; --vx-navy2:#0f2130; --vx-gold:#c2a161; --vx-gold2:#a9864b;
  --vx-line:rgba(194,161,97,.34); --vx-rule:rgba(255,255,255,.09); --vx-text:#eef2f5; --vx-muted:#aab5bd;
  background:var(--vx-ink)!important;
  color:var(--vx-text)!important;
}

/* --- headings ------------------------------------------------------------ */
body:not(.vixy-auth) h1,
body:not(.vixy-auth) h2,
body:not(.vixy-auth) .dashboard-header h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:400!important;
  color:#fff!important;
  letter-spacing:-.01em;
}
body:not(.vixy-auth) h3,
body:not(.vixy-auth) h4,
body:not(.vixy-auth) h5,
body:not(.vixy-auth) h6,
body:not(.vixy-auth) strong,
body:not(.vixy-auth) b{color:var(--vx-text)!important}
body:not(.vixy-auth) .dashboard-header{border-bottom:1px solid var(--vx-line)!important}
body:not(.vixy-auth) p,
body:not(.vixy-auth) small,
body:not(.vixy-auth) .text-muted,
body:not(.vixy-auth) .note{color:var(--vx-muted)!important}

/* --- cards, panels, boxes ------------------------------------------------ */
body:not(.vixy-auth) .dashboard-card,
body:not(.vixy-auth) .card,
body:not(.vixy-auth) .card-body,
body:not(.vixy-auth) .table-responsive,
body:not(.vixy-auth) .responsive-table,
body:not(.vixy-auth) .modal-content,
body:not(.vixy-auth) .investment-summary,
body:not(.vixy-auth) .summary-overview,
body:not(.vixy-auth) .selected-user-card,
body:not(.vixy-auth) .user-select-card,
body:not(.vixy-auth) .confirm-box,
body:not(.vixy-auth) .edit-box,
body:not(.vixy-auth) .search-results,
body:not(.vixy-auth) > .container{
  background:var(--vx-navy)!important;
  border-color:var(--vx-line)!important;
  color:var(--vx-text)!important;
  box-shadow:0 22px 55px rgba(0,0,0,.35)!important;
}
body:not(.vixy-auth) .dashboard-card,
body:not(.vixy-auth) > .container{border:1px solid var(--vx-line)!important}

/* inner tiles sit one step lighter than the card */
body:not(.vixy-auth) .summary-item,
body:not(.vixy-auth) .lookup-stat-item,
body:not(.vixy-auth) .summary-trend,
body:not(.vixy-auth) .confirm-box .confirm-details,
body:not(.vixy-auth) .select-all-bar,
body:not(.vixy-auth) .action-toggle-btn,
body:not(.vixy-auth) .toggle-section,
body:not(.vixy-auth) .status-badge.no-change,
body:not(.vixy-auth) .warn{
  background:var(--vx-navy2)!important;
  border-color:var(--vx-rule)!important;
  color:var(--vx-text)!important;
}
body:not(.vixy-auth) .summary-label{color:var(--vx-gold)!important;letter-spacing:.1em}
body:not(.vixy-auth) .summary-value{color:#fff!important}
body:not(.vixy-auth) .action-toggle-btn:hover,
body:not(.vixy-auth) .action-toggle-btn.active,
body:not(.vixy-auth) .select-all-bar:hover,
body:not(.vixy-auth) .search-result-item:hover,
body:not(.vixy-auth) .calendar-day:hover{background:#13293b!important;border-color:var(--vx-gold)!important}

/* --- tables -------------------------------------------------------------- */
body:not(.vixy-auth) .table{background:transparent!important;color:#dce3e8!important}
body:not(.vixy-auth) .table th,
body:not(.vixy-auth) .table td{background:transparent!important;color:#dce3e8!important;border-color:var(--vx-rule)!important}
body:not(.vixy-auth) .table thead,
body:not(.vixy-auth) .table thead tr{background:var(--vx-navy2)!important}
body:not(.vixy-auth) .table thead th{
  color:var(--vx-gold)!important;
  font-weight:700;
  border-top:0!important;
  border-bottom:2px solid var(--vx-gold)!important;
}
body:not(.vixy-auth) .table tbody tr:hover,
body:not(.vixy-auth) .table-hover>tbody>tr:hover>*{background:rgba(194,161,97,.07)!important}
body:not(.vixy-auth) .table td strong,
body:not(.vixy-auth) .table td b{color:#fff!important}

/* --- buttons: gold fill like the login button ---------------------------- */
body:not(.vixy-auth) .btn{border-radius:6px}
body:not(.vixy-auth) .btn-primary,
body:not(.vixy-auth) .btn-secondary,
body:not(.vixy-auth) .dashboard-header .btn,
body:not(.vixy-auth) .dashboard-wrapper a.btn:not(.btn-danger):not(.btn-success){
  background:var(--vx-gold)!important;
  border-color:var(--vx-gold)!important;
  color:var(--vx-ink)!important;
  font-weight:700;
}
body:not(.vixy-auth) .btn-primary:hover,
body:not(.vixy-auth) .btn-secondary:hover,
body:not(.vixy-auth) .dashboard-header .btn:hover,
body:not(.vixy-auth) .dashboard-wrapper a.btn:not(.btn-danger):not(.btn-success):hover{
  background:var(--vx-gold2)!important;
  border-color:var(--vx-gold2)!important;
  color:var(--vx-ink)!important;
}
body:not(.vixy-auth) .btn-light,
body:not(.vixy-auth) .btn-outline-secondary,
body:not(.vixy-auth) .ssn-toggle-btn,
body:not(.vixy-auth) .confirm-box .btn-cancel,
body:not(.vixy-auth) .edit-actions .btn-close-edit{
  background:transparent!important;
  border:1px solid var(--vx-line)!important;
  color:var(--vx-text)!important;
}
body:not(.vixy-auth) .ssn-toggle-btn:hover{border-color:var(--vx-gold)!important;color:var(--vx-gold)!important}

/* --- forms: same dark fields as the login card --------------------------- */
body:not(.vixy-auth) label{color:var(--vx-gold)!important;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
body:not(.vixy-auth) .form-control,
body:not(.vixy-auth) select,
body:not(.vixy-auth) textarea,
body:not(.vixy-auth) input[type=text],
body:not(.vixy-auth) input[type=number],
body:not(.vixy-auth) input[type=date],
body:not(.vixy-auth) input[type=email],
body:not(.vixy-auth) input[type=search],
body:not(.vixy-auth) input[type=password]{
  background:var(--vx-navy2)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:var(--vx-text)!important;
}
body:not(.vixy-auth) .form-control::placeholder{color:#7c8790}
body:not(.vixy-auth) .form-control:focus{border-color:var(--vx-gold)!important;box-shadow:0 0 0 3px rgba(194,161,97,.18)!important}
body:not(.vixy-auth) input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8)}
body:not(.vixy-auth) .form-control:-webkit-autofill{-webkit-text-fill-color:#eef2f5;-webkit-box-shadow:0 0 0 1000px #0f2130 inset}

/* --- modals -------------------------------------------------------------- */
body:not(.vixy-auth) .modal-header{background:var(--vx-navy)!important;color:#fff;border-bottom:1px solid var(--vx-line)!important}
body:not(.vixy-auth) .modal-header .modal-title{color:#fff!important}
body:not(.vixy-auth) .modal-header .close{color:#fff!important;opacity:.8;text-shadow:none}
body:not(.vixy-auth) .modal-footer{border-top:1px solid var(--vx-rule)!important}

/* --- alerts -------------------------------------------------------------- */
body:not(.vixy-auth) .alert{border:0;border-left:3px solid;border-radius:4px}
body:not(.vixy-auth) .alert-danger{background:rgba(176,65,62,.14)!important;border-color:#b0413e!important;color:#f0b5b3!important}
body:not(.vixy-auth) .alert-success{background:rgba(46,125,82,.14)!important;border-color:#2e7d52!important;color:#a9dcc0!important}
body:not(.vixy-auth) .alert-warning,
body:not(.vixy-auth) .alert-info{background:rgba(194,161,97,.12)!important;border-color:var(--vx-gold)!important;color:#e8d6ae!important}

/* links inside content */
body:not(.vixy-auth) .dashboard-wrapper a:not(.btn){color:var(--vx-gold)}

/* ==========================================================================
   Polish: the site's typography and button style on the dashboard pages
   ========================================================================== */

/* line the content up with the header (same width as .vx-wrap) */
body:not(.vixy-auth) .dashboard-wrapper{width:min(1240px,92%);max-width:none;padding:0;margin:56px auto 80px}

/* the site's sans-serif instead of the old Tahoma/Montserrat mix; icons keep their own font */
body:not(.vixy-auth) .dashboard-wrapper,
body:not(.vixy-auth) .dashboard-wrapper *:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(h1):not(h2),
body:not(.vixy-auth) .modal-content *:not(i):not(.fa):not(.fas):not(.far):not(.fab){
  font-family:Inter,'Helvetica Neue',Arial,sans-serif;
}
body:not(.vixy-auth) .dashboard-header h2{font-size:clamp(2rem,3.4vw,2.8rem)!important}

/* buttons: slim, uppercase, letter-spaced, like the site's header button */
body:not(.vixy-auth) .dashboard-header .btn,
body:not(.vixy-auth) .dashboard-wrapper form .btn-primary:not(.btn-sm){
  font-size:.72rem!important;
  font-weight:700!important;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:.85rem 1.2rem!important;
  border-radius:4px!important;
  line-height:1.2;
}
body:not(.vixy-auth) .dashboard-wrapper .btn-sm{font-weight:600!important;border-radius:4px!important}

/* section headings inside cards: serif, like the site's section titles */
body:not(.vixy-auth) .investment-summary h4,
body:not(.vixy-auth) .summary-header h4,
body:not(.vixy-auth) .section-title,
body:not(.vixy-auth) .dashboard-card > h3,
body:not(.vixy-auth) .dashboard-card > h4{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:400!important;
  font-size:1.5rem!important;
  color:#fff!important;
}

/* investment summary card */
body:not(.vixy-auth) .investment-summary{border-left:3px solid var(--vx-gold)!important;border-radius:10px!important}
body:not(.vixy-auth) .summary-header{border-bottom:1px solid var(--vx-line)!important}
body:not(.vixy-auth) .summary-item{border:1px solid var(--vx-rule)!important;border-radius:8px!important}
body:not(.vixy-auth) .summary-label{font-size:.68rem!important;letter-spacing:.16em!important;font-weight:700!important}
body:not(.vixy-auth) .summary-value{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:400!important;
  font-size:clamp(1.3rem,1.9vw,1.75rem)!important;
  white-space:nowrap;
}
/* keep gain/loss meaning: green up, red down */
body:not(.vixy-auth) .summary-value.positive,
body:not(.vixy-auth) .trend-text.positive{color:#3ecf8e!important}
body:not(.vixy-auth) .summary-value.negative,
body:not(.vixy-auth) .trend-text.negative{color:#ff6b6b!important}
body:not(.vixy-auth) .summary-value.neutral{color:var(--vx-muted)!important}
body:not(.vixy-auth) .summary-trend{border:1px solid var(--vx-rule)!important;border-radius:6px!important}

/* "View … History" toggles: solid hairline instead of the dashed box */
body:not(.vixy-auth) .action-toggle-btn{
  border:1px solid var(--vx-line)!important;
  border-radius:8px!important;
  font-weight:600;
  letter-spacing:.02em;
}
body:not(.vixy-auth) .action-toggle-btn .btn-icon,
body:not(.vixy-auth) .action-toggle-btn .toggle-chevron{color:var(--vx-gold)!important;opacity:1!important}

/* buttons inside tables: compact, sentence case, so the Action column fits */
body:not(.vixy-auth) .table .btn{
  font-size:.76rem!important;
  font-weight:600!important;
  padding:.45rem .75rem!important;
  border-radius:4px!important;
  white-space:nowrap;
}
/* profit / loss colours inside tables */
body:not(.vixy-auth) .table td.text-success,
body:not(.vixy-auth) .table td .text-success{color:#3ecf8e!important}
body:not(.vixy-auth) .table td.text-danger,
body:not(.vixy-auth) .table td .text-danger{color:#ff6b6b!important}
/* card headings on the user dashboard */
body:not(.vixy-auth) .user-info h4{font-family:Georgia,'Times New Roman',serif!important;font-weight:400!important;font-size:1.6rem!important;color:#fff!important}

/* All Users has nine columns plus three action buttons; tighten it so Delete fits */
body:not(.vixy-auth) .manage-users-table th,
body:not(.vixy-auth) .manage-users-table td{padding:.8rem .55rem!important;font-size:.84rem}
body:not(.vixy-auth) .manage-users-table td .btn{padding:.4rem .6rem!important;margin:0 .1rem!important}
body:not(.vixy-auth) .manage-users-table td[data-label="Email"]{max-width:210px;overflow:hidden;text-overflow:ellipsis}
body:not(.vixy-auth) .manage-users-table .addr-col{max-width:150px!important}
/* confirm dialogs (Deposit / Deduct Amount): the figures were navy on the navy box.
   No !important, so the green / red set inline on the totals still wins. */
body:not(.vixy-auth) .confirm-box .detail-value{color:#fff}
body:not(.vixy-auth) .confirm-box .detail-label,
body:not(.vixy-auth) .confirm-box p{color:var(--vx-muted)}
/* two summary tiles per row on phones: big serif figures pushed past the card edge */
@media (max-width:576px){body:not(.vixy-auth) .summary-value{font-size:1.15rem!important}}
/* Edit Summary banner: its own navy-on-light colours vanished on the dark card */
body:not(.vixy-auth) .summary-overview .overview-label{color:var(--vx-gold)!important;font-size:.68rem!important;letter-spacing:.16em!important;font-weight:700!important}
body:not(.vixy-auth) .summary-overview .overview-value{color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-weight:400!important;font-size:clamp(1.3rem,1.9vw,1.75rem)!important;margin-top:6px}
body:not(.vixy-auth) .summary-overview .overview-value.positive{color:#3ecf8e!important}
body:not(.vixy-auth) .summary-overview .overview-value.negative{color:#ff6b6b!important}
/* Investment Lookup result tiles: same navy-on-navy problem */
body:not(.vixy-auth) .lookup-stat-item .stat-label{color:var(--vx-gold)!important}
body:not(.vixy-auth) .lookup-stat-item .stat-value{color:#fff!important}
body:not(.vixy-auth) .lookup-stat-item .stat-value.positive{color:#3ecf8e!important}
body:not(.vixy-auth) .lookup-stat-item .stat-value.negative{color:#ff6b6b!important}
body:not(.vixy-auth) .lookup-stat-item .stat-value.zero{color:var(--vx-muted)!important}
