body { background: #181c23 !important; color: #e3e6ed; }
.card {
    background: #232735 !important;
    border: 0 !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 18px #1a1e26cc !important;
}
.table, .table th, .table td { color: #f6f8fa !important; background: #232735 !important; }
.table-striped > tbody > tr:nth-of-type(odd) > * { background: #202431 !important; }
.fw-semibold { font-weight: 600; }
.text-up { color: #00d395 !important; }
.text-down { color: #e04141 !important; }
.rank-badge { width: 2rem; display:inline-block; text-align:center; color:#b2b7c5; font-weight:700; font-size:1.1rem;}
.btn-index { background: #232735; color: #e3e6ed; border: 1px solid #31344a; border-radius: 8px; font-weight: 600; }
.btn-index.active, .btn-index:active, .btn-index:hover { background: #00b7ff; color: #fff; border-color: #00b7ff; }
.form-select, .form-select:focus { background: #232735; color: #e3e6ed; border-color: #31344a; border-radius:8px; }
.shadow-sm { box-shadow: 0 2px 18px #1213181a !important; }
.fg-emph { color: #fff !important; font-weight: 600; }
.progress { background: #232a3a; height: 14px; border-radius: 8px; }
.progress-bar { border-radius: 8px; }
.methodik-box { color: #e3e6ed !important; font-size: 1.07rem; }
.methodik-box h5 { color: #b2b7c5 !important; font-size: 1.18rem; font-weight: 700; }
.methodik-box a { color: #00b7ff !important; }
.container-fluid, .container, .bg-white { background: transparent !important; }
.plotly .main-svg { font-family: inherit !important; }
