.nexus-gradient { background: linear-gradient(135deg, #1e1b4b 0%, #312e81 100%); }
.flatpickr-day.selected { background: #10b981 !important; border-color: #10b981 !important; }
.date-nav { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem;
            border-radius: .5rem; background: rgba(255,255,255,.1); }
.date-nav:hover { background: rgba(255,255,255,.25); }

.card { background: #fff; border-radius: 1rem; box-shadow: 0 1px 3px rgba(15,23,42,.08); border: 1px solid #e2e8f0; }
.card-title { font-weight: 700; font-size: .95rem; color: #312e81; padding: .9rem 1rem .25rem; }

table.bt { width: 100%; border-collapse: collapse; font-size: .8rem; font-variant-numeric: tabular-nums; }
table.bt th { background: #eef2ff; color: #312e81; font-weight: 600; text-align: right; padding: .45rem .6rem;
                border-bottom: 2px solid #c7d2fe; white-space: nowrap; position: sticky; top: 0; z-index: 1; }
table.bt td { text-align: right; padding: .35rem .6rem; border-bottom: 1px solid #eef2f7; white-space: nowrap; }
table.bt th:first-child, table.bt td:first-child { text-align: left; }
table.bt td:first-child { font-weight: 600; }
table.bt tbody tr:hover td { filter: brightness(.96); }
table.bt tr.dim td { color: #94a3b8; }
table.sortable th { cursor: pointer; user-select: none; }
table.sortable th.asc::after  { content: ' ▲'; font-size: .65rem; }
table.sortable th.desc::after { content: ' ▼'; font-size: .65rem; }
.table-wrap { overflow: auto; max-height: 75vh; }
.pos { color: #15803d; } .neg { color: #b91c1c; }
.chip { display: inline-block; padding: .1rem .45rem; border-radius: 999px; font-size: .7rem; font-weight: 600; }
.chip-g { background: #dcfce7; color: #166534; } .chip-r { background: #fee2e2; color: #991b1b; } .chip-y { background: #fef9c3; color: #854d0e; }
.chip-b { background: #dbeafe; color: #1e40af; }
select.ctl { border: 1px solid #cbd5e1; border-radius: .5rem; padding: .35rem .6rem; font-size: .85rem; background: #fff; }
