/* Fix rem base so Bootstrap scales consistently across browsers/OS font settings */
html { font-size: 14px; }

/* Sidebar layout — applied unconditionally so DPR scaling on HiDPI secondary
   monitors never collapses the sidebar (the @media version below adds extra specificity) */
.container-fluid > .row { flex-wrap: nowrap !important; }
.container-fluid > .row .col { min-width: 0; overflow-x: auto; }
.col-md-1-5 { flex: 0 0 10%; max-width: 10%; }

@media (min-width:768px){
  .col-md-1-5{flex:0 0 10%;max-width:10%;}
}

/* Make negative numbers red in tables */
.num-neg,
th .num-neg,
.num-neg{color:#c00 !important}  /* negative numbers appear in red */

/* ── Drag-and-Drop File Upload Zone ──────────────────────────────────────── */
.drop-zone {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 80px;
  padding: .625rem 1rem;
  border: 2px dashed #adb5bd;
  border-radius: .375rem;
  background: #f8f9fa;
  cursor: pointer;
  text-align: center;
  transition: border-color .15s ease, background .15s ease;
  overflow: hidden;
}
.drop-zone:hover,
.drop-zone--active {
  border-color: #0d6efd;
  background: #e8f0fe;
}
.drop-zone input[type="file"] {
  position: absolute;
  inset: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  margin: 0;
  padding: 0;
}
.drop-zone__icon {
  font-size: 1.6rem;
  color: #6c757d;
  line-height: 1;
}
.drop-zone--active .drop-zone__icon,
.drop-zone:hover .drop-zone__icon { color: #0d6efd; }
.drop-zone__prompt {
  margin: .25rem 0 0;
  font-size: .8rem;
  color: #6c757d;
  pointer-events: none;
}
.drop-zone__file-name {
  margin-top: .25rem;
  font-size: .8rem;
  color: #0d6efd;
  font-weight: 600;
  word-break: break-all;
  pointer-events: none;
}