:root{
  --bg:#0b0e12;
  --card:#161b22;
  --muted:#9aa4ad;
  --accent:#00ffff;
  --good:#00d68f;
  --bad:#ff4d4f;
}

html, body{
  height: 100%;
}

body{
  margin: 0;
  font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  background: var(--bg);
  color: #e6eef6;
}

/* Cards bootstrap “re-skin” (sans casser les dimensions) */
.card{
  background: var(--card);
  border: 1px solid #1f2b36;
  border-radius: 14px;
  box-shadow: 0 0 10px rgba(0,255,255,.05);
}

.stat-box{
  padding: 1rem 1.25rem;
  border-radius: 12px;
  background:#1b232e;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:86px;
}

.stat-label{
  color:#a5b3c0 !important;
  font-size:.85rem;
}

.stat-value{
  font-size:1.6rem;
  font-weight:800;
  color:#00e6ff !important;
  line-height:1;
  text-shadow:0 0 6px rgba(0,255,255,.3);
}

.grid{ display:grid; gap:1rem; }

@media(min-width:768px){
  .grid-4{ grid-template-columns:repeat(4,1fr); }
  .grid-2{ grid-template-columns:repeat(2,1fr); }
}

.chart-wrap{ padding:1rem; }

.fade-in{ animation:fade .5s ease-out both; }
@keyframes fade{
  from{opacity:0; transform:translateY(6px);}
  to{opacity:1; transform:none;}
}

.shrink-33 canvas{
  max-width: 66%;
  height: auto !important;
  display:block;
  margin: 0 auto;
}

.badge-chip{
  background:#1a2530;
  color:#bfefff;
  border:1px solid #00ffff33;
}

.nav-pills .nav-link{
  color:#b9c4cf;
  border:1px solid #00ffff33;
  border-radius:10px;
}

.nav-pills .nav-link:hover{
  background:rgba(0,255,255,.1);
  color:#fff;
}

.nav-pills .nav-link.active{
  background:linear-gradient(135deg,#00ffff55,#00b4ff55);
  border-color:#00e6ff66;
  color:#fff;
  text-shadow:0 0 8px rgba(0,255,255,.5);
}

#pickStatusForm .form-select,
#pickStatusForm .form-control{
  background:#0f1319;
  border:1px solid #2a2f36;
  color:#e6eef6;
}

#pickStatusForm .btn-update{ height:48px; }

h1,h5,label,.form-label{
  color:#f0f5ff !important;
  font-weight:600;
  letter-spacing:.3px;
}

label.form-label{
  font-size:.92rem;
  text-transform:uppercase;
  letter-spacing:.4px;
}

.form-control,.form-select{
  background:#0e141b;
  border:1px solid #2c3a48;
  color:#f2f7fa;
  font-weight:500;
}

.form-control::placeholder{
  color:#99a7b5;
  opacity:.85;
}

.form-control:focus,.form-select:focus{
  background:#131c26;
  border-color:#00ffff99;
  box-shadow:0 0 0 .15rem rgba(0,255,255,.25);
  color:#fff;
}

.small,.form-text,.text-secondary{
  color:#c7d1dc !important;
}

/* Accordion custom */
.accordion-button{
  background:#101621;
  color:#e6eef6;
  border:0;
  box-shadow:none !important;
}

.accordion-button:not(.collapsed){
  background:#121c26;
  color:#fff;
}

.accordion-button::after{
  filter: invert(1) opacity(.85);
}


/* spacing global entre tuiles */
.tp-card,
.card.tp-card,
.card {
  margin-bottom: 16px;
}

/* ================================
   Historique des paris – lisibilité
================================ */

/* Texte principal (équipes / sélection) */
#picksAccordion .accordion-body .text-truncate{
  color: #e6f0fa;              /* clair mais pas blanc */
}

/* Partie importante (équipes en gras) */
#picksAccordion .accordion-body .text-truncate strong{
  color: #f4f8ff;
  font-weight: 600;
}

/* Optionnel : petit boost de contraste */
#picksAccordion .accordion-body .text-truncate{
  text-shadow: 0 1px 0 rgba(0,0,0,.35);
}
.chart-box{
  height: var(--h, 200px);
  position: relative;
}
.chart-box canvas{
  width: 100% !important;
  height: 100% !important;
  display: block;
}
.chart-box--square{
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}


.grid-5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}

@media (max-width: 992px) {
  .grid-5 {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ================================
   Import CSV (full-width)
================================ */
.import-page .container-fluid{
  max-width: 1600px;
}

.import-header{
  border-bottom: 1px solid #1a2330;
  padding-bottom: 1rem;
}

.import-kicker{
  text-transform: uppercase;
  letter-spacing: .18em;
  color: #8ea1b7;
  font-size: .7rem;
}

.import-title{
  font-size: 2.2rem;
  margin-bottom: .25rem;
}

.import-section{
  padding: 1.5rem;
  border: 1px solid #1a2330;
  border-radius: 16px;
  background: #0f141b;
  margin-bottom: 1.5rem;
}

.import-section-header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.import-section-header h2{
  margin: 0;
  font-size: 1.25rem;
}

.import-actions{
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}

.scan-id{
  display: flex;
  align-items: center;
  padding: .35rem .75rem;
  border: 1px solid #2a3747;
  border-radius: 999px;
  background: rgba(0, 255, 255, .08);
}

.scan-id code{
  color: #d9f4ff;
}

.import-upload-panel{
  border: 1px dashed #2b3b4c;
  border-radius: 14px;
  padding: 1.5rem;
  background: rgba(7, 12, 20, .7);
}

.import-dropzone{
  display: grid;
  gap: .75rem;
  margin-bottom: 1rem;
}

.import-dropzone-label{
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 1.25rem;
  border-radius: 12px;
  border: 1px dashed #2f4258;
  background: #0c1219;
  color: #d5e2f2;
}

.import-dropzone-title{
  font-size: 1rem;
  font-weight: 600;
}

.import-dropzone-subtitle{
  color: #8ea1b7;
  font-size: .85rem;
}

.import-upload-actions{
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

.import-docs{
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid #1a2330;
}

.import-docs h3{
  font-size: 1rem;
  margin-bottom: .5rem;
}

.import-docs ul{
  margin: 0;
  padding-left: 1rem;
  color: #b7c4d3;
}

.scan-badges{
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.badge-scan{
  background: #121b25;
  border: 1px solid #2a3747;
  color: #cfe2f5;
  padding: .4rem .75rem;
  border-radius: 999px;
  font-weight: 600;
}

.import-preview{
  padding: 1.5rem 1rem;
}

.import-preview-table{
  max-height: 60vh;
  overflow: auto;
}

.import-preview-toolbar{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: .75rem;
}

.toolbar-pills{
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}

.pill{
  padding: .35rem .75rem;
  border-radius: 999px;
  border: 1px solid rgba(0, 255, 255, .35);
  background: rgba(0, 255, 255, .08);
  color: #cfefff;
  font-size: .85rem;
}

.pill-danger{
  border-color: rgba(255, 77, 79, .5);
  background: rgba(255, 77, 79, .12);
  color: #ffd7d7;
}

.bankroll-preview-table{
  border-collapse: separate;
  border-spacing: 0;
  background: #05091e;
}

.bankroll-preview-table th,
.bankroll-preview-table td{
  border-top: 1px solid rgba(255, 255, 255, .05);
  border-bottom: 1px solid rgba(255, 255, 255, .05);
  padding: .6rem .75rem;
  color: #e5ecff;
  white-space: nowrap;
}

.bankroll-preview-table tbody tr:hover td{
  background: rgba(255, 255, 255, .03);
}

.bankroll-preview-table td.bankroll-cell-edited{
  background: rgba(0, 214, 143, .12);
  box-shadow: inset 0 0 0 1px rgba(0, 214, 143, .4);
}

.bankroll-cell-input{
  width: 100%;
  background: #0b1118;
  border: 1px solid #2e3d4d;
  border-radius: 6px;
  color: #fff;
  padding: .35rem .5rem;
  font-size: .85rem;
}

.bankroll-error-row{
  background: rgba(255, 77, 79, .08) !important;
}

.bankroll-error-cell{
  background: rgba(255, 77, 79, .16) !important;
  border-left: 3px solid rgba(255, 77, 79, .8);
  position: relative;
}

.bankroll-error-cell::after{
  content: "!";
  position: absolute;
  top: 5px;
  right: 6px;
  font-weight: 700;
  font-size: .75rem;
  color: rgba(255, 77, 79, 1);
}

.bankroll-preview-table_wrapper .dataTables_info,
.bankroll-preview-table_wrapper .dataTables_paginate{
  color: #9eb4d0;
}

.bankroll-preview-table_wrapper .dataTables_length,
.bankroll-preview-table_wrapper .dataTables_filter{
  color: #e5ecff;
}

.bankroll-preview-table_wrapper select,
.bankroll-preview-table_wrapper input{
  background: #0a1018;
  color: #fff;
  border-color: #1f2d3d;
}

.validation-status{
  padding: .35rem .75rem;
  border-radius: 999px;
  border: 1px solid #2a3747;
  background: #121b25;
  color: #cfefff;
  font-size: .85rem;
  font-weight: 600;
}

.validation-summary,
.commit-summary{
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.summary-pill{
  padding: .5rem .9rem;
  border-radius: 12px;
  border: 1px solid #2a3747;
  background: #101821;
  min-width: 160px;
}

.summary-pill .label{
  display: block;
  font-size: .75rem;
  color: #9fb1c5;
}

.summary-pill .value{
  font-size: 1.1rem;
  font-weight: 600;
}

/* ================================
   Import CSV (neo-first adjustments)
================================ */
#importPreview{
  scroll-margin-top: 120px;
}

#importPreview .dataTables_wrapper{
  color: #d6e2f1;
}

#importPreview .dataTables_wrapper .dataTables_length,
#importPreview .dataTables_wrapper .dataTables_filter,
#importPreview .dataTables_wrapper .dataTables_info,
#importPreview .dataTables_wrapper .dataTables_paginate{
  color: #b8c6d6;
}

#importPreview .dataTables_wrapper .dataTables_filter input,
#importPreview .dataTables_wrapper .dataTables_length select{
  background: #0b1118;
  border: 1px solid #263445;
  color: #e6eef6;
}

#importPreview .dataTables_wrapper .dataTables_paginate .paginate_button{
  color: #cfe2f5 !important;
  border: 1px solid #1f2b36;
  background: #0b1118;
}

#importPreview .dataTables_wrapper .dataTables_paginate .paginate_button.current,
#importPreview .dataTables_wrapper .dataTables_paginate .paginate_button:hover{
  background: #12202f !important;
  border-color: #2b4056 !important;
  color: #fff !important;
}

#importPreview table.dataTable.table-striped>tbody>tr.odd>*{
  box-shadow: none;
}

#importPreview .bankroll-preview-table tbody tr:hover td{
  background: rgba(255, 255, 255, .04);
}

.import-cta{
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: .35rem;
}

.option-block h3{
  font-size: 1rem;
  margin-bottom: .5rem;
}

#importPreview .table{
  color: inherit;
  background-color: transparent;
}

#importPreview .table > :not(caption) > * > *{
  background-color: transparent;
}

#importPreview table.dataTable tbody tr:hover{
  background-color: transparent;
}

/* Import preview scroll fix */
#previewWrap,
#importPreview {
  overflow-x: hidden;
}

#previewWrap .dataTables_scrollBody,
#importPreview .dataTables_scrollBody {
  overflow-x: auto !important;
}

#previewWrap table.dataTable,
#importPreview table.dataTable {
  width: 100% !important;
}

/* Import advanced options dark inputs */
#importAdvanced input,
#importAdvanced select,
#importAdvanced textarea {
  background: rgba(0,0,0,.35) !important;
  color: rgba(255,255,255,.9) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

#importAdvanced input::placeholder,
#importAdvanced textarea::placeholder {
  color: rgba(255,255,255,.45) !important;
}

#importAdvanced label {
  color: rgba(255,255,255,.75) !important;
}

#bankroll-preview-wrapper{
  overflow-x: hidden;
}

/* Options avancées : wrapper dark (pas juste les inputs) */
#importAdvanced,
#importAdvanced .accordion-body,
#importAdvanced .accordion-item,
#importAdvanced .accordion-collapse,
#importAdvanced .card,
#importAdvanced .card-body {
  background: transparent !important;
  color: rgba(255,255,255,.86) !important;
}

/* Si ton accordéon a un bloc interne blanc (typiquement .bg-white) */
#importAdvanced .bg-white,
#importAdvanced [class*="bg-white"] {
  background: transparent !important;
}

/* Inputs/select/textarea (déjà demandé, mais on le garde) */
#importAdvanced input,
#importAdvanced select,
#importAdvanced textarea {
  background: rgba(0,0,0,.35) !important;
  color: rgba(255,255,255,.9) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

/* Import preview vertical scroll: keep only DataTables scroll body */
#importPreview .import-preview-table,
#bankroll-preview-wrapper {
  max-height: none;
  overflow-y: hidden;
}

#importPreview .dataTables_scrollBody {
  overflow-y: auto !important;
}

/* Edit drawer for preview rows */
.edit-drawer{
  background: #0b1118;
  color: #e6eef6;
  border-left: 1px solid #1f2b36;
  width: 420px;
}

@media (max-width: 768px){
  .edit-drawer{
    width: 100%;
  }
}

.edit-drawer .offcanvas-header,
.edit-drawer .offcanvas-footer{
  padding: 1rem 1.25rem;
}

.edit-drawer .offcanvas-body{
  padding: 1rem 1.25rem 1.5rem;
}

.edit-drawer .offcanvas-footer{
  border-top: 1px solid #1f2b36;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.edit-drawer .form-control,
.edit-drawer .form-select{
  background: #0f1620;
  border: 1px solid #2a3a4c;
  color: #f0f5ff;
}

.edit-drawer .field-error .form-control,
.edit-drawer .field-error .form-select{
  border-color: rgba(255, 77, 79, .8);
  box-shadow: 0 0 0 .1rem rgba(255, 77, 79, .2);
}

.bankroll-row-skipped td{
  opacity: .55;
  text-decoration: line-through;
}


/* ================================
   Bankroll dashboard layout v2
   Gauche = contrôles/actions
   Centre = analyse
   Droite = édition/actions rapides
================================ */
.bankroll-layout{
  display:grid;
  grid-template-columns:minmax(240px, 300px) minmax(0, 1fr) minmax(240px, 300px);
  gap:16px;
  align-items:start;
}

.bankroll-main{
  min-width:0;
}

.bankroll-side{
  min-width:0;
}

.bankroll-side-inner{
  position:sticky;
  top:16px;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.bankroll-side .card{
  margin-bottom:0;
}

.bankroll-side-left .card,
.bankroll-side-right .card{
  border-color:rgba(0,255,255,.16);
  background:linear-gradient(180deg, rgba(22,27,34,.96), rgba(12,18,25,.96));
}

.bankroll-side h5{
  font-size:1rem;
}

.bankroll-side .row > [class*="col-"]{
  width:100%;
  flex:0 0 100%;
  max-width:100%;
}

.bankroll-side .nav-pills{
  gap:.4rem;
}

.bankroll-side .nav-pills .nav-item{
  flex:1 1 auto;
}

.bankroll-side .nav-pills .nav-link{
  text-align:center;
  padding:.45rem .55rem;
  font-size:.85rem;
}

.bankroll-side .import-actions,
.bankroll-side .d-flex.flex-wrap.gap-2{
  align-items:stretch;
}

.bankroll-side .import-actions .btn,
.bankroll-side .d-flex.flex-wrap.gap-2 .btn{
  flex:1 1 100%;
}

.bankroll-side #publicLinkInput{
  min-width:0 !important;
}

.bankroll-side #pickSelect{
  font-size:.88rem;
}

.bankroll-side .help-row{
  display:none;
}

#pickStatusCard .small.text-secondary.mb-3{
  font-size:.82rem;
}

#pickStatusCard .d-flex.gap-2.flex-wrap.mt-2 .btn{
  flex:1 1 100%;
}

#statTiles{
  margin-top:0;
}

/* Historique: switch € / unités déplacé ici */
#btnUnitToggle{
  white-space:nowrap;
}

/* Layout responsive */
@media (max-width: 1400px){
  .bankroll-layout{
    grid-template-columns:minmax(230px, 280px) minmax(0, 1fr);
  }

  .bankroll-side-right{
    grid-column:1 / -1;
  }

  .bankroll-side-right .bankroll-side-inner{
    position:static;
  }

  .bankroll-side-right #pickStatusCard{
    max-width:none;
  }
}

@media (max-width: 992px){
  .bankroll-layout{
    grid-template-columns:1fr;
  }

  .bankroll-side-inner{
    position:static;
  }

  .bankroll-side .row > [class*="col-"]{
    width:auto;
    flex:initial;
    max-width:initial;
  }

  .bankroll-side .import-actions .btn,
  .bankroll-side .d-flex.flex-wrap.gap-2 .btn,
  #pickStatusCard .d-flex.gap-2.flex-wrap.mt-2 .btn{
    flex:0 0 auto;
  }
}

@media (min-width: 1600px){
  .container{
    max-width:1540px;
  }
}

/* ================================
   Full-width dashboard adjustments
================================ */
.bankroll-container{
  width:100%;
  max-width: none !important;
  padding-left: clamp(14px, 2vw, 32px);
  padding-right: clamp(14px, 2vw, 32px);
}

.bankroll-layout{
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(14px, 1.35vw, 24px);
}

.bankroll-main{
  width:100%;
}

@media (min-width: 1800px){
  .bankroll-layout{
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr) minmax(320px, 400px);
  }
}

@media (max-width: 1400px){
  .bankroll-layout{
    grid-template-columns:minmax(230px, 290px) minmax(0, 1fr);
  }

  .bankroll-side-right{
    grid-column:1 / -1;
  }
}


/* ================================
   Bankroll topbar / navbar
================================ */
.bankroll-container{
  max-width: none !important;
  width: 100%;
  padding-left: clamp(16px, 1.6vw, 32px) !important;
  padding-right: clamp(16px, 1.6vw, 32px) !important;
  margin-top: clamp(12px, 1.4vw, 24px);
}

.bankroll-topbar{
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 18px;
  padding: 16px 18px;
  border: 1px solid #1f2b36;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(22,27,34,.94), rgba(10,16,24,.88));
  box-shadow: 0 16px 50px rgba(0,0,0,.28);
}

.bankroll-topbar-main{
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.bankroll-tabs{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.bankroll-topbar-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 992px){
  .bankroll-topbar{
    flex-direction: column;
  }
  .bankroll-topbar-actions{
    justify-content: flex-start;
  }
}

/* Sidebar cards tighter buttons */
.bankroll-side-right .card .btn,
.bankroll-side-left .card .btn{
  width: 100%;
}

.bankroll-side-right .card .d-flex .btn,
.bankroll-side-left .card .d-flex .btn{
  width: auto;
}

/* Back to top */
.bankroll-backtop{
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 1050;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  border: 1px solid rgba(0,255,255,.35);
  background: rgba(16, 22, 33, .92);
  color: #e6faff;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 16px 40px rgba(0,0,0,.35), 0 0 18px rgba(0,255,255,.12);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, border-color .18s ease;
}

.bankroll-backtop.is-visible{
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.bankroll-backtop:hover{
  border-color: rgba(0,255,255,.75);
  transform: translateY(-2px);
}

/* ================================
   Light mode
================================ */
body.bankroll-light{
  --bg:#f3f6fb;
  --card:#ffffff;
  --muted:#5f6b7a;
  background: var(--bg);
  color:#17202c;
}

body.bankroll-light .bankroll-topbar,
body.bankroll-light .card,
body.bankroll-light .stat-box,
body.bankroll-light .accordion-button,
body.bankroll-light .import-section{
  background: #ffffff !important;
  color:#17202c !important;
  border-color:#d7e0ea !important;
  box-shadow: 0 12px 34px rgba(28, 42, 68, .08);
}

body.bankroll-light h1,
body.bankroll-light h5,
body.bankroll-light label,
body.bankroll-light .form-label{
  color:#17202c !important;
}

body.bankroll-light .small,
body.bankroll-light .form-text,
body.bankroll-light .text-secondary,
body.bankroll-light .stat-label{
  color:#657286 !important;
}

body.bankroll-light .form-control,
body.bankroll-light .form-select,
body.bankroll-light #pickStatusForm .form-select,
body.bankroll-light #pickStatusForm .form-control{
  background:#f8fafc !important;
  border-color:#ccd8e5 !important;
  color:#17202c !important;
}

body.bankroll-light .form-control::placeholder{
  color:#7b8797 !important;
}

body.bankroll-light .accordion-button:not(.collapsed){
  background:#eef5ff !important;
  color:#17202c !important;
}

body.bankroll-light .accordion-button::after{
  filter:none;
}

body.bankroll-light .badge-chip{
  background:#eef6ff;
  color:#146175;
  border-color:#b9e8f5;
}

body.bankroll-light .nav-pills .nav-link{
  color:#324154;
  border-color:#b9dce7;
}

body.bankroll-light .nav-pills .nav-link:hover{
  background:#eaf8ff;
  color:#101820;
}

body.bankroll-light .nav-pills .nav-link.active{
  background:linear-gradient(135deg,#00c9ff,#4ddfb0);
  color:#061018;
  text-shadow:none;
}

body.bankroll-light .chart-box canvas{
  filter:none;
}

body.bankroll-light .bankroll-backtop{
  background: rgba(255,255,255,.96);
  color:#17202c;
  border-color:#b9dce7;
  box-shadow: 0 14px 35px rgba(28,42,68,.16);
}

/* ================================
   Theme contrast fixes (light/dark)
   - softer light palette
   - visible theme/login buttons
   - readable Bootstrap modals
================================ */
:root{
  color-scheme: dark;
}

body.bankroll-light{
  color-scheme: light;
  --bg:#eef3f8;
  --card:#ffffff;
  --muted:#64748b;
  --accent:#0891b2;
  --good:#059669;
  --bad:#dc2626;
  background:
    radial-gradient(circle at top left, rgba(8,145,178,.08), transparent 34vw),
    linear-gradient(180deg,#f7fafc 0%,#edf3f8 100%) !important;
  color:#172033 !important;
}

body.bankroll-light .bankroll-container{
  color:#172033 !important;
}

body.bankroll-light .bankroll-topbar,
body.bankroll-light .card,
body.bankroll-light .tp-card,
body.bankroll-light .stat-box,
body.bankroll-light .accordion-item,
body.bankroll-light .accordion-button,
body.bankroll-light .import-section{
  background: rgba(255,255,255,.92) !important;
  color:#172033 !important;
  border-color:#ccd8e5 !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.08) !important;
}

body.bankroll-light .stat-value{
  color:#0891b2 !important;
  text-shadow:none !important;
}

body.bankroll-light .stat-label,
body.bankroll-light .text-muted,
body.bankroll-light .text-secondary,
body.bankroll-light .small,
body.bankroll-light .form-text{
  color:#64748b !important;
}

body.bankroll-light .chart-wrap,
body.bankroll-light .chart-box,
body.bankroll-light .accordion-body,
body.bankroll-light .import-upload-panel,
body.bankroll-light .import-dropzone-label{
  background:#ffffff !important;
  color:#172033 !important;
  border-color:#d7e2ee !important;
}

body.bankroll-light .form-control,
body.bankroll-light .form-select,
body.bankroll-light #pickStatusForm .form-select,
body.bankroll-light #pickStatusForm .form-control{
  background:#f8fafc !important;
  border-color:#cbd5e1 !important;
  color:#172033 !important;
}

body.bankroll-light .form-control:focus,
body.bankroll-light .form-select:focus{
  background:#ffffff !important;
  border-color:#0891b2 !important;
  box-shadow:0 0 0 .16rem rgba(8,145,178,.18) !important;
  color:#0f172a !important;
}

body.bankroll-light .form-control::placeholder{
  color:#8a97a8 !important;
}

body.bankroll-light .btn-outline-light,
body.bankroll-light #themeToggleBtn{
  color:#172033 !important;
  border-color:#94a3b8 !important;
  background:#ffffff !important;
}

body.bankroll-light .btn-outline-light:hover,
body.bankroll-light #themeToggleBtn:hover{
  color:#ffffff !important;
  border-color:#0891b2 !important;
  background:#0891b2 !important;
}

body.bankroll-light .btn-outline-info{
  color:#0e7490 !important;
  border-color:#67c6dd !important;
  background:#ffffff !important;
}

body.bankroll-light .btn-outline-info:hover,
body.bankroll-light .btn-outline-info.active,
body.bankroll-light .btn-info,
body.bankroll-light .btn-primary{
  color:#ffffff !important;
  background:#0891b2 !important;
  border-color:#0891b2 !important;
}

body.bankroll-light .btn-outline-danger{
  color:#dc2626 !important;
  border-color:#f87171 !important;
  background:#ffffff !important;
}

body.bankroll-light .btn-outline-danger:hover{
  color:#ffffff !important;
  background:#dc2626 !important;
  border-color:#dc2626 !important;
}

body.bankroll-light .btn-warning{
  color:#422006 !important;
  background:#facc15 !important;
  border-color:#eab308 !important;
}

body.bankroll-light .nav-pills .nav-link,
body.bankroll-light .bankroll-tabs .btn{
  background:#ffffff !important;
  color:#0f172a !important;
  border-color:#b8dbe5 !important;
  text-shadow:none !important;
}

body.bankroll-light .nav-pills .nav-link.active,
body.bankroll-light .bankroll-tabs .btn.active,
body.bankroll-light .bankroll-tabs .btn.btn-info{
  background:linear-gradient(135deg,#06b6d4,#22c55e) !important;
  color:#061018 !important;
  border-color:#06b6d4 !important;
}

body.bankroll-light .accordion-button:not(.collapsed){
  background:#eef7fb !important;
  color:#172033 !important;
}

body.bankroll-light .accordion-button::after{
  filter:none !important;
}

body.bankroll-light .badge-chip,
body.bankroll-light .pill,
body.bankroll-light .validation-status{
  background:#eef7fb !important;
  color:#0e7490 !important;
  border-color:#a7ddeb !important;
}

body.bankroll-light .table,
body.bankroll-light .table td,
body.bankroll-light .table th{
  color:#172033 !important;
  border-color:#dbe5ef !important;
}

body.bankroll-light .table-hover tbody tr:hover td,
body.bankroll-light #picksAccordion .accordion-body:hover{
  background:rgba(8,145,178,.05) !important;
}

body.bankroll-light #picksAccordion .accordion-body .text-truncate,
body.bankroll-light #picksAccordion .accordion-body .text-truncate strong{
  color:#172033 !important;
  text-shadow:none !important;
}

body.bankroll-light .bankroll-backtop{
  background:#ffffff !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
  box-shadow:0 14px 35px rgba(15,23,42,.16) !important;
}

body.bankroll-light .bankroll-backtop:hover{
  background:#0891b2 !important;
  color:#ffffff !important;
  border-color:#0891b2 !important;
}

/* Modal visibility / readability */
.modal{
  z-index: 2055 !important;
}

.modal-backdrop{
  z-index: 2050 !important;
  opacity: .55 !important;
}

.modal-content{
  background:#111821 !important;
  color:#eaf2ff !important;
  border:1px solid #2a3a4c !important;
  box-shadow:0 30px 90px rgba(0,0,0,.55), 0 0 0 1px rgba(0,255,255,.08) !important;
}

.modal-header,
.modal-footer{
  border-color:#263445 !important;
}

.modal-title{
  color:#f5f8ff !important;
}

.modal .btn-close{
  filter: invert(1) grayscale(100%) brightness(180%) !important;
  opacity:.85 !important;
}

.modal .form-check-label{
  color:#d8e5f5 !important;
}

body.bankroll-light .modal-backdrop{
  opacity:.32 !important;
}

body.bankroll-light .modal-content{
  background:#ffffff !important;
  color:#172033 !important;
  border-color:#cbd5e1 !important;
  box-shadow:0 30px 90px rgba(15,23,42,.25) !important;
}

body.bankroll-light .modal-header,
body.bankroll-light .modal-footer{
  border-color:#e2e8f0 !important;
}

body.bankroll-light .modal-title,
body.bankroll-light .modal label,
body.bankroll-light .modal .form-check-label{
  color:#172033 !important;
}

body.bankroll-light .modal .btn-close{
  filter:none !important;
  opacity:.75 !important;
}

/* ================================
   Bootstrap modal hard-fix
   - Les modals sont déplacées en fin de <body> côté JS.
   - Le backdrop reste visuel mais ne doit jamais capter les clics au-dessus du formulaire.
================================ */
body.modal-open .modal{
  z-index: 1060 !important;
  pointer-events: none !important;
}

body.modal-open .modal .modal-dialog{
  position: relative !important;
  z-index: 1070 !important;
  pointer-events: auto !important;
}

body.modal-open .modal .modal-content{
  position: relative !important;
  z-index: 1080 !important;
  pointer-events: auto !important;
}

body.modal-open .modal-backdrop{
  z-index: 1040 !important;
  pointer-events: none !important;
}

body.bankroll-light.modal-open .modal-backdrop{
  opacity: .24 !important;
}

/* ================================
   Tabs / light readability final pass
================================ */
.bankroll-topbar-main{ gap: .75rem; }
.bankroll-tabs-shell{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .45rem;
  min-width: 0;
}
.bankroll-tabs-scroll{
  display: flex;
  align-items: center;
  gap: .45rem;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  min-width: 0;
  scrollbar-width: thin;
  padding-bottom: 2px;
}
.bankroll-tabs-scroll .btn{
  flex: 0 0 auto;
  border-radius: 8px 8px 0 0;
}
.bankroll-tab-add{
  width: 34px;
  height: 32px;
  line-height: 1;
  font-weight: 900;
  border-radius: 8px 8px 0 0;
}

/* Historique en mode clair : déplié lisible, plus de bleu agressif */
body.bankroll-light #picksAccordion .accordion-item{
  background: #ffffff !important;
  border-color: #d9e4ef !important;
}
body.bankroll-light #picksAccordion .accordion-button,
body.bankroll-light #picksAccordion .accordion-button:not(.collapsed){
  background: #f8fafc !important;
  color: #142033 !important;
  box-shadow: none !important;
}
body.bankroll-light #picksAccordion .accordion-body{
  background: #ffffff !important;
  color: #142033 !important;
}
body.bankroll-light #picksAccordion .accordion-body [style*="background:#101824"],
body.bankroll-light #picksAccordion .accordion-body [style*="background: #101824"],
body.bankroll-light #picksAccordion .accordion-body [style*="background:#0f1723"],
body.bankroll-light #picksAccordion .accordion-body [style*="background: #0f1723"]{
  background: #f8fafc !important;
  border-color: #d9e4ef !important;
  color: #142033 !important;
}
body.bankroll-light #picksAccordion .accordion-body .text-truncate,
body.bankroll-light #picksAccordion .accordion-body .text-truncate strong,
body.bankroll-light #picksAccordion .accordion-body div,
body.bankroll-light #picksAccordion .accordion-body span{
  color: inherit;
}
body.bankroll-light #picksAccordion .accordion-body .badge,
body.bankroll-light #picksAccordion .accordion-body .badge-chip{
  background: #e0f2fe !important;
  border-color: #bae6fd !important;
  color: #075985 !important;
}

/* Couleurs charts moins flash en clair */
body.bankroll-light canvas{
  filter: saturate(.82) brightness(.98);
}

@media (max-width: 992px){
  .bankroll-tabs-shell{ grid-template-columns: minmax(0, 1fr) auto; }
}

/* ================================
   Final light-mode polish
================================ */
body.bankroll-light{
  --accent:#0f8fa6;
  --good:#16a34a;
  --bad:#dc2626;
}
body.bankroll-light .stat-value{ color:#0f8fa6 !important; text-shadow:none !important; }
body.bankroll-light .btn-info,
body.bankroll-light .btn-outline-info.active,
body.bankroll-light .btn-outline-info:hover{ background:#0f8fa6 !important; border-color:#0f8fa6 !important; color:#fff !important; }
body.bankroll-light .btn-outline-info{ border-color:#75c7d5 !important; color:#0f6f82 !important; background:#f8fdff !important; }
body.bankroll-light #picksAccordion [style*="background:#0b1118"],
body.bankroll-light #picksAccordion [style*="background: #0b1118"],
body.bankroll-light #picksAccordion [style*="background:#0f1723"],
body.bankroll-light #picksAccordion [style*="background: #0f1723"],
body.bankroll-light #picksAccordion [style*="background:#101824"],
body.bankroll-light #picksAccordion [style*="background: #101824"],
body.bankroll-light #picksAccordion [style*="background:#111827"],
body.bankroll-light #picksAccordion [style*="background: #111827"]{
  background:#f8fafc !important; border-color:#d9e4ef !important; color:#142033 !important;
}
body.bankroll-light #picksAccordion [style*="color:#e6eef6"],
body.bankroll-light #picksAccordion [style*="color: #e6eef6"],
body.bankroll-light #picksAccordion [style*="color:#e6f0fa"],
body.bankroll-light #picksAccordion [style*="color: #e6f0fa"],
body.bankroll-light #picksAccordion [style*="color:#f4f8ff"],
body.bankroll-light #picksAccordion [style*="color: #f4f8ff"]{ color:#142033 !important; }
body.bankroll-light #picksAccordion .text-secondary,
body.bankroll-light #picksAccordion .small{ color:#5f6b7a !important; }
body.bankroll-light #picksAccordion .text-success,
body.bankroll-light #picksAccordion [style*="color:#00d68f"],
body.bankroll-light #picksAccordion [style*="color: #00d68f"]{ color:#15803d !important; }
body.bankroll-light #picksAccordion .text-danger,
body.bankroll-light #picksAccordion [style*="color:#ff4d4f"],
body.bankroll-light #picksAccordion [style*="color: #ff4d4f"]{ color:#dc2626 !important; }

/* Footer bankroll inspiré TP */
.bankroll-footer{ margin-top:48px; padding:42px 0 22px; border-top:1px solid rgba(0,255,255,.14); background:linear-gradient(180deg, rgba(9,14,20,.96), rgba(5,8,12,.98)); color:#d9e7f5; }
.bankroll-footer .footer-title{ font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; color:#f4f8ff; margin-bottom:14px; }
.bankroll-footer .footer-menu{ list-style:none; margin:0; padding:0; display:grid; gap:7px; }
.bankroll-footer a{ color:#bfefff; text-decoration:none; }
.bankroll-footer a:hover{ color:#fff; text-decoration:underline; }
.bankroll-footer .newsletter-box input{ background:#0b1118; border:1px solid #2b3b4c; color:#fff; }
.bankroll-footer .newsletter-box .nl-submit{ margin-top:8px; width:100%; border:0; border-radius:8px; padding:.55rem .75rem; background:#0f8fa6; color:#fff; font-weight:700; }
.bankroll-footer-bottom{ margin-top:26px; padding-top:18px; border-top:1px solid rgba(255,255,255,.1); display:flex; gap:18px; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.bankroll-footer .social-icons{ display:flex; align-items:center; gap:12px; list-style:none; margin:0; padding:0; }
.bankroll-footer .social-icons .title{ color:#8ea1b7; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.bankroll-footer .social-icons a{ width:32px; height:32px; border-radius:999px; display:grid; place-items:center; border:1px solid rgba(191,239,255,.25); }
.bankroll-footer .copyright{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; color:#aebccd; font-size:.85rem; }
.bankroll-footer-logo{ width:150px; height:auto; }
body.bankroll-light .bankroll-footer{ background:#fff; color:#243044; border-top-color:#d7e0ea; box-shadow:0 -12px 36px rgba(28,42,68,.05); }
body.bankroll-light .bankroll-footer .footer-title{ color:#17202c; }
body.bankroll-light .bankroll-footer a{ color:#0f6f82; }
body.bankroll-light .bankroll-footer .newsletter-box input{ background:#f8fafc; border-color:#ccd8e5; color:#17202c; }
body.bankroll-light .bankroll-footer-bottom{ border-top-color:#d7e0ea; }
body.bankroll-light .bankroll-footer .copyright{ color:#657286; }

/* =========================================================
   Final TP bankroll polish — light charts/history/footer
========================================================= */
body.bankroll-light{
  --accent:#2f8fa3;
}
body.bankroll-light .stat-value{
  color:#2f8fa3 !important;
}
body.bankroll-light .btn-info,
body.bankroll-light .btn-outline-info.active,
body.bankroll-light .btn-outline-info:hover{
  background:#2f8fa3 !important;
  border-color:#2f8fa3 !important;
  color:#fff !important;
}
body.bankroll-light .btn-outline-info{
  border-color:#9cced9 !important;
  color:#256f80 !important;
  background:#fbfdff !important;
}

/* Historique des paris en mode clair : neutralise les styles inline sombres */
body.bankroll-light #picksAccordion .accordion-body{
  background:#ffffff !important;
}
body.bankroll-light #picksAccordion .bk-pick-card,
body.bankroll-light #picksAccordion [style*="background:#101621"],
body.bankroll-light #picksAccordion [style*="background: #101621"],
body.bankroll-light #picksAccordion [style*="background:#0b0e12"],
body.bankroll-light #picksAccordion [style*="background: #0b0e12"],
body.bankroll-light #picksAccordion [style*="background:#0f1822"],
body.bankroll-light #picksAccordion [style*="background: #0f1822"],
body.bankroll-light #picksAccordion [style*="background:#1a2530"],
body.bankroll-light #picksAccordion [style*="background: #1a2530"],
body.bankroll-light #picksAccordion [style*="background:#202b36"],
body.bankroll-light #picksAccordion [style*="background: #202b36"],
body.bankroll-light #picksAccordion [style*="background:#1c2a24"],
body.bankroll-light #picksAccordion [style*="background: #1c2a24"]{
  background:#f8fafc !important;
  border-color:#d6e2ee !important;
  color:#172033 !important;
}
body.bankroll-light #picksAccordion .bk-pick-card:hover{
  background:#eef6fa !important;
}
body.bankroll-light #picksAccordion [style*="color:#dde9f5"],
body.bankroll-light #picksAccordion [style*="color: #dde9f5"],
body.bankroll-light #picksAccordion [style*="color:#9fd7ff"],
body.bankroll-light #picksAccordion [style*="color: #9fd7ff"],
body.bankroll-light #picksAccordion [style*="color:#bfefff"],
body.bankroll-light #picksAccordion [style*="color: #bfefff"],
body.bankroll-light #picksAccordion [style*="color:#cfe6ff"],
body.bankroll-light #picksAccordion [style*="color: #cfe6ff"],
body.bankroll-light #picksAccordion [style*="color:#bfffe0"],
body.bankroll-light #picksAccordion [style*="color: #bfffe0"]{
  color:#172033 !important;
}
body.bankroll-light #picksAccordion .badge{
  background:#eaf4f7 !important;
  border-color:#c4dce5 !important;
  color:#285d6b !important;
}
body.bankroll-light #picksAccordion .text-secondary,
body.bankroll-light #picksAccordion .small{
  color:#66758a !important;
}
body.bankroll-light #picksAccordion .text-success{
  color:#15803d !important;
}
body.bankroll-light #picksAccordion .text-danger{
  color:#dc2626 !important;
}

/* Footer TP bankroll */
.bankroll-footer{
  margin-top:56px;
  padding:48px 0 24px;
  border-top:1px solid rgba(0,255,255,.14);
  background:linear-gradient(180deg, rgba(36,36,36,.98), rgba(28,28,28,.99));
  color:#d9e7f5;
}
.bankroll-footer .footer-title{
  font-size:.92rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#ffffff;
  margin-bottom:14px;
  font-weight:800;
}
.bankroll-footer .footer-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:7px;
}
.bankroll-footer .footer-menu-legal{
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px;
}
.bankroll-footer a{
  color:#e6edf7;
  text-decoration:none;
}
.bankroll-footer a:hover{
  color:#9be21b;
  text-decoration:none;
}
.bankroll-footer .newsletter-inline{
  display:flex;
  gap:0;
  align-items:stretch;
}
.bankroll-footer .newsletter-box input.nl-email{
  background:#ffffff;
  border:0;
  color:#172033;
  border-radius:4px 0 0 4px;
  min-height:42px;
}
.bankroll-footer .newsletter-box .nl-submit{
  margin:0;
  width:auto;
  min-width:94px;
  border:0;
  border-radius:0 4px 4px 0;
  padding:.55rem .85rem;
  background:#9be21b;
  color:#1f2937;
  font-weight:900;
}
.bankroll-footer-bottom{
  margin-top:34px;
  padding-top:20px;
  border-top:4px solid rgba(255,255,255,.14);
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:18px;
  align-items:center;
}
.bankroll-footer .copyright{
  grid-column:2;
  justify-self:center;
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  color:#aebccd;
  font-size:.86rem;
  text-align:center;
}
.bankroll-footer-logo{
  width:150px;
  height:auto;
}
.bankroll-footer .social-icons{
  grid-column:3;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}
.bankroll-footer .social-icons .title{
  color:#aebccd;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.bankroll-footer .social-icons a{
  width:30px;
  height:30px;
  border-radius:999px;
  display:grid;
  place-items:center;
  border:0;
  color:#ffffff;
  font-size:1rem;
}
.bankroll-footer .social-icons a:hover{
  color:#9be21b;
}
body.bankroll-light .bankroll-footer{
  background:linear-gradient(180deg,#303030,#252525) !important;
  color:#e5e7eb !important;
  border-top-color:#d7e0ea;
  box-shadow:0 -12px 36px rgba(28,42,68,.05);
}
body.bankroll-light .bankroll-footer .footer-title{ color:#ffffff; }
body.bankroll-light .bankroll-footer a{ color:#e5e7eb; }
body.bankroll-light .bankroll-footer a:hover{ color:#9be21b; }
body.bankroll-light .bankroll-footer .copyright{ color:#c8d0dc; }
body.bankroll-light .bankroll-footer .newsletter-box input.nl-email{
  background:#ffffff !important;
  border-color:transparent !important;
  color:#172033 !important;
}

/* Telegram applet footer */
.telegram-container{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:9990;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
}
.telegram-icon{
  position:relative;
  width:52px;
  height:52px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#229ed9;
  box-shadow:0 12px 34px rgba(0,0,0,.32);
}
.ch-pending-msg{
  position:absolute;
  top:-4px;
  right:-3px;
  min-width:18px;
  height:18px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:.7rem;
  display:grid;
  place-items:center;
  font-weight:800;
}
.telegram-text{
  max-width:min(330px,calc(100vw - 100px));
  padding:12px 16px;
  border-radius:10px;
  background:#ffffff;
  color:#374151;
  box-shadow:0 12px 34px rgba(0,0,0,.22);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.telegram-text.short{ max-width:120px; }

@media(max-width:992px){
  .bankroll-footer-bottom{ grid-template-columns:1fr; }
  .bankroll-footer .copyright,
  .bankroll-footer .social-icons{ grid-column:1; justify-self:center; }
  .bankroll-footer .footer-menu-legal{ grid-template-columns:1fr; }
}

/* ================================
   Footer bankroll — blue TP theme
================================ */
.bankroll-footer{
  background:
    radial-gradient(circle at 15% 10%, rgba(0, 229, 255, .12), transparent 34%),
    linear-gradient(180deg, #07111d 0%, #050b13 100%) !important;
  border-top: 1px solid rgba(0, 229, 255, .22) !important;
  color: #d9ebff !important;
}
.bankroll-footer .footer-title{
  color: #eaf7ff !important;
}
.bankroll-footer a{
  color: #9eefff !important;
}
.bankroll-footer a:hover{
  color: #ffffff !important;
}
.bankroll-footer-bottom{
  border-top-color: rgba(0, 229, 255, .18) !important;
}
.bankroll-footer .newsletter-box .nl-submit{
  background: linear-gradient(135deg, #0ea5e9, #06b6d4) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}
.bankroll-footer .newsletter-box .nl-submit:hover{
  filter: brightness(1.08);
}
.bankroll-footer .social-icons{
  justify-self: end;
}
.bankroll-footer .social-icons a{
  border-color: rgba(0, 229, 255, .32) !important;
  background: rgba(0, 229, 255, .08);
}
.bankroll-footer .copyright{
  justify-self: center;
  text-align: center;
}
body.bankroll-light .bankroll-footer{
  background:
    radial-gradient(circle at 15% 10%, rgba(14, 165, 233, .16), transparent 34%),
    linear-gradient(180deg, #082033 0%, #061422 100%) !important;
  color: #eaf7ff !important;
  border-top-color: rgba(14, 165, 233, .34) !important;
}
body.bankroll-light .bankroll-footer .footer-title{ color:#ffffff !important; }
body.bankroll-light .bankroll-footer a{ color:#b8f4ff !important; }
body.bankroll-light .bankroll-footer a:hover{ color:#ffffff !important; }
body.bankroll-light .bankroll-footer .copyright{ color:#d9ebff !important; }
body.bankroll-light .bankroll-footer .newsletter-box input.nl-email{
  background:#f8fbff !important;
  border-color:#6bbce0 !important;
  color:#0f172a !important;
}

/* Back-to-top: keep it above social buttons */
#backToTop,
.back-to-top,
.scroll-to-top,
#totop{
  bottom: 92px !important;
  right: 22px !important;
  z-index: 9999 !important;
}
@media (max-width: 768px){
  #backToTop,
  .back-to-top,
  .scroll-to-top,
  #totop{
    bottom: 104px !important;
  }
}

/* ==========================================================
   FINAL footer + back-to-top polish
   - Footer background follows site background
   - Dark: white links, cyan hover
   - Light: white footer, dark links, cyan hover
   - Back-to-top lifted above Get Social + Telegram
========================================================== */
.bankroll-footer{
  background: var(--bg) !important;
  color: #d9e7f5 !important;
  border-top: 1px solid rgba(0, 229, 255, .18) !important;
  box-shadow: none !important;
}
.bankroll-footer .footer-title{ color: #f4f8ff !important; }
.bankroll-footer a{ color: #ffffff !important; text-decoration: none !important; }
.bankroll-footer a:hover,
.bankroll-footer a:focus{ color: #22d3ee !important; text-decoration: none !important; }
.bankroll-footer .newsletter-box .nl-submit{
  background: linear-gradient(135deg, #0ea5e9, #06b6d4) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}
.bankroll-footer .newsletter-box .nl-submit:hover{ filter: brightness(1.08); transform: translateY(-1px); }
.bankroll-footer-bottom{ border-top-color: rgba(0, 229, 255, .18) !important; }
.bankroll-footer .copyright{ justify-self: center !important; text-align: center !important; color: #d9e7f5 !important; }
.bankroll-footer .social-icons{ justify-self: end !important; }
.bankroll-footer .social-icons a{
  color: #ffffff !important;
  border-color: rgba(0, 229, 255, .28) !important;
  background: rgba(0, 229, 255, .08) !important;
}
.bankroll-footer .social-icons a:hover{
  color: #22d3ee !important;
  border-color: rgba(34, 211, 238, .8) !important;
  background: rgba(34, 211, 238, .14) !important;
}
body.bankroll-light .bankroll-footer{
  background: #ffffff !important;
  color: #17202c !important;
  border-top-color: #d7e0ea !important;
  box-shadow: 0 -12px 36px rgba(28,42,68,.05) !important;
}
body.bankroll-light .bankroll-footer .footer-title{ color: #17202c !important; }
body.bankroll-light .bankroll-footer a{ color: #111827 !important; }
body.bankroll-light .bankroll-footer a:hover,
body.bankroll-light .bankroll-footer a:focus{ color: #0ea5e9 !important; }
body.bankroll-light .bankroll-footer .copyright{ color: #334155 !important; }
body.bankroll-light .bankroll-footer .newsletter-box input.nl-email{
  background:#f8fafc !important;
  border-color:#ccd8e5 !important;
  color:#17202c !important;
}
body.bankroll-light .bankroll-footer .social-icons a{
  color: #111827 !important;
  border-color: rgba(14, 165, 233, .28) !important;
  background: rgba(14, 165, 233, .08) !important;
}
body.bankroll-light .bankroll-footer .social-icons a:hover{
  color: #0ea5e9 !important;
  border-color: rgba(14, 165, 233, .75) !important;
}

/* Le bouton réel de la page est #backToTopBtn.bankroll-backtop */
#backToTopBtn.bankroll-backtop,
.bankroll-backtop,
#backToTop,
.back-to-top,
.scroll-to-top,
#totop{
  position: fixed !important;
  right: 22px !important;
  bottom: 128px !important;
  z-index: 10050 !important;
}
@media (max-width: 768px){
  #backToTopBtn.bankroll-backtop,
  .bankroll-backtop,
  #backToTop,
  .back-to-top,
  .scroll-to-top,
  #totop{
    bottom: 138px !important;
    right: 18px !important;
  }
}

/* Historique compact type BetAnalytix */
@media (min-width: 901px) {
  #picksAccordion .bk-pick-card {
    padding: 9px 10px !important;
  }

  #picksAccordion .bk-pick-row {
    grid-template-columns: minmax(0, 1fr) 105px 110px !important;
    gap: 14px !important;
    min-height: 56px;
  }

  #picksAccordion .bk-pick-main {
    flex-wrap: nowrap !important;
    min-width: 0;
  }

  #picksAccordion .bk-pick-title {
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  #picksAccordion .bk-pick-meta,
  #picksAccordion .bk-pick-result {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    white-space: nowrap;
  }

  #picksAccordion .bk-pick-result {
    border-left: 1px solid rgba(255,255,255,.08);
    padding-left: 12px;
  }

  #picksAccordion .ba-bulk-check-wrap {
    width: 18px;
  }
}

/* ==========================================================
   Historique compact v2 — grille inspirée BetAnalytix
   ========================================================== */

#picksAccordion .bk-pick-card-v2 {
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid #1f2b36;
  border-radius: 9px;
  background: #101621;
  cursor: pointer;
}

#picksAccordion .bk-pick-card-v2:hover {
  border-color: rgba(34, 211, 238, .38);
  background: #121b28;
}

#picksAccordion .bk-pick-grid-v2 {
  display: grid;
  grid-template-columns:
    minmax(280px, 1fr)
    76px
    86px
    105px
    28px;
  align-items: stretch;
  min-height: 58px;
}

#picksAccordion .bk-pick-main {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  padding: 9px 10px;
  overflow: hidden;
  flex-wrap: nowrap !important;
}

#picksAccordion .bk-pick-title-v2 {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #dde9f5;
  font-weight: 650;
}

#picksAccordion .bk-pick-main > .badge {
  flex: 0 0 auto;
  white-space: nowrap;
}

#picksAccordion .bk-pick-metric {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  min-width: 0;
  padding: 7px 8px;
  border-left: 1px solid rgba(255, 255, 255, .055);
  white-space: nowrap;
}

#picksAccordion .bk-pick-metric strong {
  font-size: .88rem;
  line-height: 1.15;
}

#picksAccordion .bk-pick-metric span {
  margin-top: 3px;
  color: #738293;
  font-size: .66rem;
  line-height: 1;
}

body:not(.bankroll-light) #picksAccordion .bk-pick-metric strong {
  color: #e6f0fa;
}

body:not(.bankroll-light) #picksAccordion .bk-pick-metric span {
  color: #b7c7d9;
}

#picksAccordion .bk-pick-status {
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    color-mix(
      in srgb,
      var(--bk-status-color, #64748b) 20%,
      transparent
    );
  border-left: 1px solid
    color-mix(
      in srgb,
      var(--bk-status-color, #64748b) 48%,
      transparent
    );
  color: var(--bk-status-color, #cbd5e1);
}

#picksAccordion .bk-pick-status span {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-size: .64rem;
  font-weight: 800;
  line-height: 1;
  text-transform: capitalize;
  white-space: nowrap;
}

#picksAccordion .ba-bulk-check-wrap {
  width: 17px;
  min-width: 17px;
  margin-right: 1px !important;
}

#picksAccordion .ba-bulk-check {
  width: 14px;
  height: 14px;
}

/* Firefox/anciens navigateurs sans color-mix */
@supports not (background: color-mix(in srgb, red 20%, transparent)) {
  #picksAccordion .bk-pick-status {
    background: rgba(100, 116, 139, .14);
    border-left-color: rgba(100, 116, 139, .35);
  }
}

@media (max-width: 900px) {
  #picksAccordion .bk-pick-grid-v2 {
    grid-template-columns: minmax(0, 1fr) 70px 82px 26px;
  }

  #picksAccordion .bk-pick-metric:nth-of-type(2) {
    display: none;
  }

  #picksAccordion .bk-pick-main {
    padding: 9px 8px;
  }
}

@media (max-width: 620px) {
  #picksAccordion .bk-pick-grid-v2 {
    grid-template-columns: minmax(0, 1fr) 80px 25px;
  }

  #picksAccordion .bk-pick-metric:nth-of-type(3) {
    display: none;
  }

  #picksAccordion .bk-pick-main .badge:not(.bk-pick-sport) {
    display: none;
  }
}

/* bk-history-polish-v3-style
   Finitions historique compact
   ================================================ */

@media (min-width: 901px) {
  #picksAccordion .bk-pick-grid-v2 {
    grid-template-columns:
      minmax(250px, 1fr)
      68px
      76px
      94px
      26px !important;
    min-height: 48px !important;
  }

  #picksAccordion .bk-pick-main {
    gap: 6px !important;
    padding: 6px 8px !important;
  }

  #picksAccordion .bk-pick-metric {
    padding: 5px 7px !important;
    border-left-color: rgba(156, 180, 202, .16) !important;
  }

  #picksAccordion .bk-pick-metric strong {
    font-size: .82rem !important;
  }

  #picksAccordion .bk-pick-metric span {
    margin-top: 2px !important;
    font-size: .60rem !important;
  }

  #picksAccordion .bk-pick-status span {
    font-size: .59rem !important;
  }
}

/* Bouton + / − */
#picksAccordion .bk-pick-details-toggle {
  width: 18px;
  height: 18px;
  min-width: 18px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(34, 211, 238, .34);
  border-radius: 5px;
  background: rgba(8, 20, 30, .86);
  color: #7ddff2;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  flex: 0 0 auto;
}

#picksAccordion .bk-pick-details-toggle:hover,
#picksAccordion .bk-pick-card-v2.is-details-open .bk-pick-details-toggle {
  border-color: rgba(34, 211, 238, .8);
  background: rgba(15, 70, 84, .72);
  color: #d9fbff;
}

/* Le titre reste prioritaire */
#picksAccordion .bk-pick-title-v2 {
  font-size: .88rem;
  line-height: 1.15;
}

/* Logos bookmaker plus discrets */
#picksAccordion .bk-pick-main img {
  max-width: 66px !important;
  max-height: 27px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
}

#picksAccordion .bk-pick-main picture {
  flex: 0 0 auto;
}

/* Badges bookmaker / bankroll / tipster */
#picksAccordion .bk-pick-main .badge:not(.bk-pick-sport) {
  padding: 3px 6px !important;
  font-size: .64rem !important;
  line-height: 1.05 !important;
  border-radius: 5px !important;
  opacity: .88;
}

#picksAccordion .bk-pick-sport {
  padding: 3px 6px !important;
  font-size: .64rem !important;
}

/* Checkbox */
#picksAccordion .ba-bulk-check-wrap {
  width: 15px !important;
  min-width: 15px !important;
}

#picksAccordion .ba-bulk-check {
  width: 13px !important;
  height: 13px !important;
}

/* Détail déroulant */
#picksAccordion .bk-pick-details {
  max-height: 0;
  padding: 0 12px 0 39px;
  overflow: hidden;
  opacity: 0;
  border-top: 1px solid rgba(34, 211, 238, .15);
  background:
    linear-gradient(
      90deg,
      rgba(34, 211, 238, .055),
      rgba(12, 22, 34, .96) 35%,
      rgba(12, 22, 34, .96)
    );
  color: #cbd8e5;
  transition: max-height .18s ease, opacity .14s ease, padding .18s ease;
}

#picksAccordion .bk-pick-card-v2.is-details-open .bk-pick-details {
  max-height: 320px;
  padding-top: 9px;
  padding-bottom: 10px;
  opacity: 1;
}

#picksAccordion .bk-pick-details-label {
  margin-bottom: 4px;
  color: #72d9ec;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}

#picksAccordion .bk-pick-details-title {
  color: #edf6ff;
  font-size: .88rem;
  font-weight: 650;
  line-height: 1.4;
}

#picksAccordion .bk-pick-details-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 16px;
  margin-top: 8px;
  color: #8496a8;
  font-size: .72rem;
}

#picksAccordion .bk-pick-details-meta b {
  color: #b6c8d8;
}

#picksAccordion .bk-pick-details-comment {
  margin-top: 7px;
  color: #94a7b9;
  font-size: .72rem;
  line-height: 1.4;
}

#picksAccordion .bk-pick-details-comment b {
  color: #b6c8d8;
}

/* Séparateurs mieux visibles */
#picksAccordion .bk-pick-metric,
#picksAccordion .bk-pick-status {
  border-left-width: 1px !important;
}

/* Mode clair */
body.bankroll-light #picksAccordion .bk-pick-details {
  background: #edf5fa;
  color: #26384b;
}

body.bankroll-light #picksAccordion .bk-pick-details-title {
  color: #13263a;
}

body.bankroll-light #picksAccordion .bk-pick-details-meta {
  color: #607286;
}

@media (max-width: 900px) {
  #picksAccordion .bk-pick-details {
    padding-left: 10px;
  }

  #picksAccordion .bk-pick-main img {
    max-width: 54px !important;
    max-height: 24px !important;
  }
}

/* bk-bookmaker-slot-fix
   Colonne bookmaker stable dans l'historique compact
   ================================================= */

#picksAccordion .bk-bookmaker-slot,
#picksAccordion .bk-bookmaker-slot.tp-bookmaker-badge {
  box-sizing: border-box;
  width: 68px !important;
  min-width: 68px !important;
  max-width: 68px !important;
  height: 26px !important;
  min-height: 26px !important;
  padding: 2px 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden;
  flex: 0 0 68px !important;
  opacity: 1 !important;
}

/* Le SVG occupe réellement sa zone, même si ses dimensions intrinsèques sont petites */
#picksAccordion .bk-bookmaker-slot .tp-bookmaker-logo {
  display: block !important;
  width: 60px !important;
  height: 22px !important;
  max-width: 60px !important;
  max-height: 22px !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 !important;
}

/* Hauteur commune des badges de la ligne. */
#picksAccordion .bk-pick-main > .badge {
  box-sizing: border-box;
  height: 26px;
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#picksAccordion .bk-pick-status {
  min-height: 48px;
}

/* Fallback texte quand aucun logo local n'existe */
#picksAccordion .bk-bookmaker-slot:not(.tp-bookmaker-badge),
#picksAccordion .bk-bookmaker-slot.tp-bookmaker-logo-fallback {
  color: #c9f7da !important;
  font-size: .62rem !important;
  line-height: 1.05 !important;
  text-align: center;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  #picksAccordion .bk-bookmaker-slot,
  #picksAccordion .bk-bookmaker-slot.tp-bookmaker-badge {
    width: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    flex-basis: 60px !important;
  }

  #picksAccordion .bk-bookmaker-slot .tp-bookmaker-logo {
    width: 52px !important;
    max-width: 52px !important;
  }
}

@media (max-width: 620px) {
  #picksAccordion .accordion-body {
    padding: 8px !important;
  }

  #picksAccordion .bk-pick-grid-v2 {
    grid-template-columns: minmax(0, 1fr) 67px 23px !important;
    min-height: 46px;
  }

  #picksAccordion .bk-pick-main {
    gap: 5px !important;
    padding: 6px !important;
  }

  #picksAccordion .bk-pick-title-v2 {
    font-size: .79rem;
  }

  #picksAccordion .bk-pick-metric {
    padding: 5px 6px !important;
  }

  #picksAccordion .bk-pick-details {
    padding-right: 8px;
    padding-left: 8px;
  }

  #picksAccordion .bk-pick-details-meta {
    gap: 4px 10px;
  }

  #picksAccordion .bk-bookmaker-slot,
  #picksAccordion .bk-bookmaker-slot.tp-bookmaker-badge {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #picksAccordion .bk-pick-details { transition: none; }
}


/* ============================================================
   Badges sémantiques de l'historique
   Un rôle = une couleur : bankroll, sport, bookmaker, tipster, source.
============================================================ */
#picksAccordion .bk-pick-main .bk-pick-bankroll {
  display: inline-flex;
  align-items: center;
  max-width: 132px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #2c2148 !important;
  border: 1px solid #7c5cff !important;
  color: #e3d9ff !important;
}

#picksAccordion .bk-pick-main .bk-pick-sport {
  background: #12303a !important;
  border: 1px solid #18a8bd !important;
  color: #c8f7ff !important;
}

#picksAccordion .bk-pick-main .bk-pick-tipster {
  background: #142d4c !important;
  border: 1px solid #367fc4 !important;
  color: #d4eaff !important;
}

#picksAccordion .bk-pick-main .bk-pick-source {
  background: #252c36 !important;
  border: 1px solid #566170 !important;
  color: #d5dce6 !important;
}

#picksAccordion .bk-pick-main .bk-pick-bookmaker {
  background: #173329 !important;
  border-color: #38795b !important;
  color: #caffdf !important;
}

body.bankroll-light #picksAccordion .bk-pick-main .bk-pick-bankroll {
  background: #eee9ff !important;
  border-color: #7959d6 !important;
  color: #422b85 !important;
}

body.bankroll-light #picksAccordion .bk-pick-main .bk-pick-sport {
  background: #e2f8fb !important;
  border-color: #16899b !important;
  color: #075b68 !important;
}

body.bankroll-light #picksAccordion .bk-pick-main .bk-pick-tipster {
  background: #e8f2ff !important;
  border-color: #3979b7 !important;
  color: #194d7d !important;
}

body.bankroll-light #picksAccordion .bk-pick-main .bk-pick-source {
  background: #edf0f4 !important;
  border-color: #727d8a !important;
  color: #38414c !important;
}

body.bankroll-light #picksAccordion .bk-pick-main .bk-pick-bookmaker {
  background: #e5f7ed !important;
  border-color: #3b805e !important;
  color: #18583a !important;
}

@media (max-width: 620px) {
  #picksAccordion .bk-pick-main .bk-pick-bankroll {
    display: inline-flex !important;
    max-width: 92px;
  }
}


/* Multi-select favoris (modale Configurer) : recherche + chips + checklist */
.tp-ms {
  font-family: "Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-variant-emoji: emoji;
}

.tp-ms-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border: 1px solid #34485b;
  border-radius: 12px;
  background: linear-gradient(180deg, #101922 0%, #0c131b 100%);
}

.tp-ms-search {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  min-height: 38px;
  border: 1px solid #2a3d4f;
  border-radius: 9px;
  background: #0a1017;
}

.tp-ms-search-icon {
  opacity: .7;
  font-size: .9rem;
  line-height: 1;
}

.tp-ms-search-input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #eaf4ff;
  font-size: .9rem;
  padding: 8px 0;
}

.tp-ms-search-input::placeholder {
  color: #7f91a3;
}

.tp-ms-search:focus-within {
  border-color: #2db9d0;
  box-shadow: 0 0 0 2px rgba(45, 185, 208, .18);
}

.tp-ms-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.tp-ms-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  padding: 4px 8px 4px 10px;
  border: 1px solid rgba(45, 185, 208, .45);
  border-radius: 999px;
  background: rgba(45, 185, 208, .12);
  color: #bff6ff;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
}

.tp-ms-chip:hover {
  background: rgba(45, 185, 208, .22);
  border-color: rgba(45, 185, 208, .7);
}

.tp-ms-chip-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tp-ms-chip-x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(8, 20, 28, .55);
  color: #eaf4ff;
  font-size: .85rem;
  line-height: 1;
}

.tp-ms-list {
  max-height: 196px;
  overflow: auto;
  border: 1px solid #243444;
  border-radius: 9px;
  background: #080e14;
  scrollbar-width: thin;
  scrollbar-color: #355066 #080e14;
}

.tp-ms-option {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(36, 52, 68, .85);
  color: #dce8f5;
  font-size: .88rem;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
}

.tp-ms-option:last-child {
  border-bottom: 0;
}

.tp-ms-option:hover {
  background: rgba(45, 185, 208, .08);
}

.tp-ms-option.is-selected {
  background: rgba(45, 185, 208, .14);
  color: #f2fbff;
}

.tp-ms-option input[type="checkbox"] {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  margin: 0;
  accent-color: #23c7df;
  cursor: pointer;
}

.tp-ms-option-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tp-ms-empty {
  padding: 18px 12px;
  color: #8a9aab;
  font-size: .84rem;
  text-align: center;
}

.tp-ms-meta {
  min-height: 18px;
}

.tp-ms-count {
  color: #8eeeff;
  font-size: .76rem;
  font-weight: 700;
}

.tp-ms-count.is-empty {
  color: #8796a6;
  font-weight: 500;
}

body.bankroll-light .tp-ms-shell {
  background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
  border-color: #c8d6e2;
}

body.bankroll-light .tp-ms-search {
  background: #fff;
  border-color: #c9d7e4;
}

body.bankroll-light .tp-ms-search-input {
  color: #17212b;
}

body.bankroll-light .tp-ms-search-input::placeholder {
  color: #7b8b9b;
}

body.bankroll-light .tp-ms-list {
  background: #fff;
  border-color: #d3dee8;
}

body.bankroll-light .tp-ms-option {
  color: #1a2632;
  border-bottom-color: #e6eef4;
}

body.bankroll-light .tp-ms-option:hover,
body.bankroll-light .tp-ms-option.is-selected {
  background: rgba(15, 143, 166, .08);
}

body.bankroll-light .tp-ms-chip {
  background: rgba(15, 143, 166, .1);
  border-color: rgba(15, 143, 166, .35);
  color: #0b6170;
}

body.bankroll-light .tp-ms-chip-x {
  background: rgba(11, 97, 112, .12);
  color: #0b6170;
}

body.bankroll-light .tp-ms-count {
  color: #0f6f82;
}

body.bankroll-light .tp-ms-count.is-empty {
  color: #6f7f8e;
}


/* BA history: keep bookmaker and bankroll identities together */
#picksAccordion .bk-pick-ba-identities {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 0;
}

#picksAccordion .bk-pick-ba-identities > .badge {
  flex: 0 0 auto;
  white-space: nowrap;
}
