/* assets/custom.css
   ---------------------------------------------------------------------------
   The design system for 2.0 lives in assets/index.html (Dash index template).
   This file only holds DataTable internals that must win over Dash's own
   inline styles, plus a safety net if index.html is ever missing.
   Load order: Bootstrap -> this file -> the <style> block in index.html.
   --------------------------------------------------------------------------- */

body { background-color: #F5FAFB; color: #062A31; margin: 0; overflow-x: hidden; }

/* Markdown cells: no stray paragraph margins */
.dash-table-container .dash-cell-value p,
.dash-table-container .dash-cell div.dash-cell-value p { margin: 0 !important; }

/* Search-term highlight injected as **term** */
.dash-table-container .dash-cell-value strong {
    background: linear-gradient(180deg, transparent 58%, rgba(63,195,210,.45) 58%);
    color: #062A31 !important;
    font-weight: 600 !important;
    padding: 0 1px;
    border-radius: 2px;
}

/* Rows open the full record, so the whole row reads as clickable */
.dash-table-container .dash-spreadsheet-inner td { cursor: pointer; }
.dash-table-container .dash-spreadsheet-inner td:hover .dash-cell-value { color: #0B4F5C !important; }
.dash-spreadsheet-container .dash-spreadsheet-inner th { z-index: 3 !important; }

/* Column-visibility panel */
.dash-table-container .show-hide-menu {
    border: 1px solid #DFECEF !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 46px -24px rgba(6,42,49,.5) !important;
    background: #fff !important;
    padding: .6rem !important;
    max-height: 420px;
    overflow: auto;
}
.dash-table-container .show-hide-menu-item { font-size: .8rem !important; padding: .25rem .35rem !important; border-radius: 6px; }
.dash-table-container .show-hide-menu-item:hover { background: #D7EFF3 !important; }

/* Header tooltips carrying the column descriptions */
.dash-table-tooltip, .dash-tooltip {
    background: #fff !important;
    color: #062A31 !important;
    border: 1px solid #DFECEF !important;
    border-radius: 10px !important;
    padding: .55rem .75rem !important;
    font-size: .8rem !important;
    line-height: 1.5 !important;
    max-width: 340px !important;
    box-shadow: 0 18px 40px -22px rgba(6,42,49,.6) !important;
}

.js-plotly-plot, .plot-container { max-width: 100%; }
._dash-undo-redo { display: none !important; }
