.select2-container {
    width: 100%;
}

.disabled {
    pointer-events: none !important;
    cursor: default !important;
    background-color: #eee !important;
}
.tooltip {
  pointer-events: none;
}

.toast {
    font-size: 0.85rem;
}


.padding-3 {
   padding: 3px;
}

.section-title {
    margin-bottom: 25px !important;
    font-size: 15px;

    line-height: 30px;
}

.input-block-level {
    display: block;
    width: 100%;
    min-height: 30px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.signature-img {
    width: 200px;
    height: 50px;
}

.section-box {
    box-shadow: 1px 1px 10px #cad1e8;
}

.balance-green {
    border: 2px solid #91c188;

    text-align: center;
    color: #116114;
    display: block;
    text-align: center;
    padding: 0.2em 18px 0.4em 0.5em;
    font-size: 12px;
    margin: 2px 5px 2px 0;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

input[readonly] {
    background-color: #eee;
    border: 0;
    font-size: 1em;
}


.primary-box {
    border: 2px solid #0d47a1 !important;
    padding: 10px 30px;
    border-radius: 5px;
}

.padding20 {

  padding: 20px !important;
}

.data-loader-title {
    margin: 10px -13px 10px 24px;
    border: solid 1px lightgrey;
    padding: 10px 30px 10px 30px;
    border-radius: 10px;
}

.base-div {
    margin: 20px 50px 20px 50px;
    background-color:#FFFFFF;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.data-loader-upload-div {
    border: solid 1px #d3d3d3;
    padding: 10px 30px 10px 30px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #ffffff;
    background: #0d47a1 !important;
    min-height: 200px !important;
    margin-left: 230px;
    margin-right: 200px;
    margin-top: 30px;
}

.upload-section-label {
    text-align: right;
    margin-top: 2px;
    margin-left: 90px;
    font-size: large;
    font-weight: 700 !important;
    vertical-align: bottom;

}

.data-loader-sample-block {
    display: inline-block;
    padding: 6px;
    margin-bottom: 10px;
    border-radius: 3px;
    background-color: lightblue;
    min-width: 75px;
    text-align: center;
    font-size: 12px;
}



.form-search {
    display: flex;
    align-items: flex-end;
    flex: auto;
    justify-content: space-between;
    width: 50%;
}

table.dataTable > thead .sorting:before,
table.dataTable > thead .sorting:after,
table.dataTable > thead .sorting_asc:before,
table.dataTable > thead .sorting_asc:after,
table.dataTable > thead .sorting_desc:before,
table.dataTable > thead .sorting_desc:after,
table.dataTable > thead .sorting_asc_disabled:before,
table.dataTable > thead .sorting_asc_disabled:after,
table.dataTable > thead .sorting_desc_disabled:before,
table.dataTable > thead .sorting_desc_disabled:after {
    bottom: 0.4rem;
}

.css-table {
    display: table;
}

.css-table-header {
    display: table-header-group;

}

.css-table-body {
    display: table-row-group;
}

.css-table-row {
    display: table-row;
}

.css-table-header .css-table-cell,
.css-table-row .css-table-cell {
    display: table-cell;
    padding: 1px;
}

.css-table-header .css-table-cell {
    text-align: center;
}

.margin-top-45 {
    margin-top: 45px;
}

.margin-top-55 {
    margin-top: 55px;
}

.font-size-12 {
    font-size: 12px;
}


/*Progress bars */
#progress_status {
  width: 50%;
  background-color: #ddd;
}
  
#progress_bar {
  width: 1%;
  height: 35px;
  background-color: #4CAF50;
  text-align: center;
  line-height: 32px;
  color: black;
}

.max_height_mainmenu{
    max-height: 95px;
}

.margin_2_mainmenu{
    margin-right:70px;
    text-align:left;
}

.margin_3_mainmenu{
    margin-right:70px;
    text-align:left;
    white-space: nowrap;
}
.margin_right{
    margin-right: 4rem;
}

.btn-file {
  position: relative;
  overflow: hidden;
  vertical-align: middle;
}

.btn-file > input {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  cursor: pointer;
  border: solid transparent;
  border-width: 0 0 100px 200px;
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-transform: translate(-300px, 0) scale(4);
  direction: ltr;
}

.fileupload-exists .fileupload-new,
.fileupload-new .fileupload-exists {
    display: none;

}

.sumfooter {
    white-space: nowrap;
}

.mt-1_5 {
  margin-top: 1.5rem !important;
}

.error {
    color:red;
}

.label-white label, .label-white label .asteriskField {
    color: #ffffff !important;
}

.contract-blue-pill {
    width: 100%;
    height: 30px;
    padding: 4px;
    text-align: center !important;
    background-color: #4781C9 !important;
}

.contract-green-pill {
    width: 100%;
    height: 30px;
    padding: 4px;
    text-align: center !important;
    background-color: #206125 !important;
}

.contract-orange-pill {
    width: 100%;
    height: 30px;
    padding: 4px;
    text-align: center !important;
    background-color: #FFA662 !important;
}
.content {
	font-size: 13px !important;
}

.siqico-offline:before {
    content: "\003F" !important;
    left: 0 !important;
}
.offline_bg {
    content: "Please leave a message. We will call you back shortly." !important;
}

.zoho_chat_padding {
    padding-bottom: 80px;
}

.navbar  .nav-link {
    font-weight: 450;
}

.active-url > .nav-link, .active-url.nav-link {

}


.navbar-light .navbar-nav .nav-link{
    position: relative;
    color: #000000;
}

.focus-helper {
    position: absolute;
    top: 0;
    left: 0 /* rtl:ignore */;
    width: 100%;
    height: 100%;
    pointer-events: none;
    border-radius: inherit;
    opacity: 0;
    transition: background-color 0.3s cubic-bezier(0.25, 0.8, 0.5, 1), opacity 0.4s cubic-bezier(0.25, 0.8, 0.5, 1);
}

a:hover .focus-helper {
    background: currentColor;
    opacity: 0.15;
}

.navbar {
    padding: 0;
    font-size: 12px;
    line-height: 1.715em;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2), 0 1px 1px rgba(0, 0, 0, 0.14), 0 2px 1px -1px rgba(0, 0, 0, 0.12);
}

.navbar .navbar-container {
    padding-left: 12px;
    min-height: 56px;
}

.navbar-brand {
    padding: 0 12px 0 0;
    margin-right: 0;
}

.navbar-nav .nav-link {
    padding: 8px 12px !important;
}

.bg-body {
    background-color: #F5F5F5;
}

/* ─── Right filter sidebar — fit-to-viewport ─────────────────────────────
   On the Supplier Search, Supplier Analytics, and Spend Analytics pages,
   the right-hand filter card grows to the length of all the filter
   controls — sometimes 3-4× the viewport height. Pin the COL itself as
   sticky + capped at viewport height (NOT the inner card) so the
   surrounding row / page no longer reserves layout space for the full
   natural filter content; otherwise the page's scrollHeight balloons
   far past the viewport and leaves a large blank area below the visible
   content even though nothing is actually rendered there.

   Targets the canonical filter-sidebar pattern used by the crispy forms:
   `<div class="col-lg-3 d-none d-lg-block ..."><div class="card">…</div></div>`.
   The selector is intentionally specific so it can't catch unrelated
   col-lg-3 cards on detail / dashboard pages.

   Scoped to `.use-app2-frontend2` so legacy chrome is unaffected. */
.use-app2-frontend2 .row > .col-lg-3.d-none.d-lg-block {
    position: sticky;
    top: 16px;
    align-self: flex-start; /* opt out of row's flex stretch */
    /* Use explicit `height` (not `max-height`) so the inner card's
       `height: 100%` resolves to a definite value — percent heights
       only resolve against an ancestor with an explicit `height`. */
    height: calc(100vh - 32px);
    /* The legacy `zoho_chat_padding` adds 80px bottom padding to clear
       the Zoho chat widget. With the col now pinned to viewport height,
       that padding pushes the inner card's bottom out of view; drop it. */
    padding-bottom: 0 !important;
    overflow: hidden;
    /* Note: we don't set `display: flex` on the col itself because the
       existing `d-lg-block` utility class wins with `display: block
       !important`. We instead use `height: 100%` on the card below. */
}
.use-app2-frontend2 .row > .col-lg-3.d-none.d-lg-block > .card {
    height: 100%;
    margin-bottom: 0 !important;
    display: flex;
    flex-direction: column;
}
.use-app2-frontend2 .row > .col-lg-3.d-none.d-lg-block > .card > .card-body {
    overflow-y: auto;
    /* Flex child with overflow needs an explicit `min-height: 0` to
       shrink below its natural content size — without it, the body
       grows to fit all filters and the scroll never engages. */
    flex: 1 1 auto;
    min-height: 0;
    /* Hide the scrollbar but keep scroll — matches the rail / left
       second-sidebar scrollbar treatment in app2 mode. */
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.use-app2-frontend2 .row > .col-lg-3.d-none.d-lg-block > .card > .card-body::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}
