:root {
  --bs-dark:       #003366;
  --bs-dark-rgb:   0, 51, 102;
  --bs-primary:    #003366;
  --bs-primary-rgb: 0, 51, 102;
}

main > .container {
    padding: 70px 15px 0;
  }

.h-5 {
  height: 5% !important;
}

.h-95 {
  height: 95% !important;
}

/* override the BG that bootstrap sets */
.bg-dark { background-color: #003366 !important; }
.navbar-dark.bg-dark {  background-image: none !important; }

.bg-dark-qa { background-color: #149cdb !important; }
.navbar-dark.bg-dark-qa {  background-image: none !important; }

.bg-dark-dev { background-color: #0d5744 !important; }
.navbar-dark.bg-dark-dev {  background-image: none !important; }

/* base */
.btn-primary { 
  color: #fff;
  background-color: #003366;
  border-color: #003366;
}

/* hover (slightly lighter or darker to mimic BS behavior) */
.btn-primary:hover {
  background-color: #004d99;
  border-color: #004d99;
}

/* focus shadow */
.btn-primary:focus, 
.btn-primary.focus {
  box-shadow: 0 0 0 .25rem rgba(0, 51, 102, .5);
}

/* active/pressed */
.btn-primary:active, 
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: #002a5a;
  border-color: #00243c;
}

/* disabled */
.btn-primary:disabled, 
.btn-primary.disabled {
  background-color: #003366;
  border-color: #003366;
}

.midas { display: none; }

.separator {
	margin-top: 2px; 
	margin-bottom: 2px;
}

.hr-sm {
	margin-top: 2px;
	margin-bottom: 6px;
}

.hr-checkbox {
	margin-top: 8px;
	margin-bottom: 2px;
}

a { color: #003366; text-decoration: none; }
a:hover, a:focus { color: #819AB3; text-decoration: underline; }
  
h1 { font-size: 2.1em; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.4em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.1em; }

div.vfError { color:#ffffff; margin:0 0 10px 0; background:#9DA52E; }
div.vfError ul { padding:14px; font-weight:bold; margin:0;}
div.vfError ul li{ font-weight:normal; margin-left:25px; padding-top:3px}

input.vfError{ border-color:#999; color:#9DA52E;}
input.vfError:before{ color:#B94A48;}
input.vfError:focus{ border-color: #B94A48; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px #B94A48; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px #B94A48; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px #B94A48; }

.bg-indigo {
	background-color: var(--bs-indigo);
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
  --bs-navbar-color: rgba(255, 255, 255, 0.95);
}

.field-width-5 { width: 5% !important; }
.field-width-6 { width: 6% !important; }
.field-width-7 { width: 7% !important; }
.field-width-8 { width: 8% !important; }
.field-width-9 { width: 9% !important; }
.field-width-10 { width: 10% !important; }
.field-width-11 { width: 11% !important; }
.field-width-12 { width: 12% !important; }
.field-width-13 { width: 13% !important; }
.field-width-14 { width: 14% !important; }
.field-width-15 { width: 15% !important; }
.field-width-16 { width: 16% !important; }
.field-width-17 { width: 17% !important; }
.field-width-18 { width: 18% !important; }
.field-width-19 { width: 19% !important; }
.field-width-20 { width: 20% !important; }
.field-width-25 { width: 25% !important; }
.field-width-30 { width: 30% !important; }
.field-width-35 { width: 35% !important; }
.field-width-40 { width: 40% !important; }
.field-width-45 { width: 45% !important; }
.field-width-50 { width: 50% !important; }
.field-width-55 { width: 55% !important; }
.field-width-60 { width: 60% !important; }
.field-width-65 { width: 65% !important; }
.field-width-70 { width: 70% !important; }
.field-width-75 { width: 75% !important; }
.field-width-80 { width: 80% !important; }
.field-width-85 { width: 85% !important; }
.field-width-90 { width: 90% !important; }
.field-width-95 { width: 95% !important; }

.text-sm { font-size: 0.9em; } 
.text-mini { font-size: 0.7em; } 

.form-text-sm {
	padding-top: 6px;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	color: #666;
	font-size: 10px;	
} 

.table-sm-text {
	font-family:  Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size:0.9rem;	
}

.text-centered th {
    text-align: center;
	background-color: #000;
	color: #fff;
}

.number-align-right {
	text-align: right;
}

.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px 3px !important;
  font-size: 12px;
  line-height: 1.5 !important;
  border-radius: 3px;
}

.x-typeahead.dropdown-menu li a:hover {
	color: #ffffff;
	background-color: #333333;
}

td.editable {
  position: relative;
}

.editable input {
  /* width: 90%; */ /* Make the input field take up the full width of the td */
  box-sizing: border-box; /* Include padding and border in the element's width and height */
  padding: 2; /* Optional: Adjust padding to match the td's padding */
  margin: 2; /* Optional: Remove margin */
  /* border: none; Optional: Remove default border */
}

/* --- Drawer behaviour --- */

/* Sidebar visible (unchanged) */
.sidebar {
    position: relative;
    transition: 
        transform .25s ease,
        flex-basis .25s ease,
        max-width .25s ease;
    z-index: 1030;
}

/* When collapsed: remove it from flex layout AND slide it left */
#layoutRow.sidebar-collapsed .sidebar {
    transform: translateX(-100%);
    flex: 0 0 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden;
}

/* Main goes full width when collapsed */
#layoutRow.sidebar-collapsed #mainContent {
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

/* Always-visible “hot edge” on the far left */
.sidebar-edge {
    position: fixed;
    left: 0;
    top: 0;
    width: 5px;               /* visible strip when sidebar is open */
    height: 100vh;
    background: transparent;  /* invisible but clickable */
    cursor: pointer;
    z-index: 3000;
}

/* When collapsed, make the active zone as wide as the old sidebar area
   so "anywhere on the left-hand side" works */
#layoutRow.sidebar-collapsed #sidebarEdge {
    width: 25px;             /* tweak to roughly match your sidebar width */
}

/* Optional hover hint */
.sidebar-edge:hover {
    background: rgba(0, 0, 0, 0.2);
    transition: background 0.30s ease;
}

.footer {
  position: absolute;
  bottom: 0 !important;
  width: 100%;
  height: 70px; /* Set the fixed height of the footer here */
  line-height: 70px; /* Vertically center the text there */
  background-color: #f2f2f2;
}

@media (min-width: 768px) {

	.col-micro-0 { width: 0%; padding-left: 12px; padding-right: 12px; }
	.col-micro-1 { width: 1%; padding-left: 12px; padding-right: 12px; }
	.col-micro-2 { width: 2%; padding-left: 12px; padding-right: 12px; }
	.col-micro-3 { width: 3%; padding-left: 12px; padding-right: 12px; }
	.col-micro-4 { width: 4%; padding-left: 12px; padding-right: 12px; }
	.col-micro-5 { width: 5%; padding-left: 12px; padding-right: 12px; }
	.col-micro-6 { width: 6%; padding-left: 12px; padding-right: 12px; }
	.col-micro-7 { width: 7%; padding-left: 12px; padding-right: 12px; }
	.col-micro-8 { width: 8%; padding-left: 12px; padding-right: 12px; }
	.col-micro-9 { width: 9%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-10 { width: 10%; padding-left: 12px; padding-right: 12px; }
	.col-micro-11 { width: 11%; padding-left: 12px; padding-right: 12px; }
	.col-micro-12 { width: 12%; padding-left: 12px; padding-right: 12px; }
	.col-micro-13 { width: 13%; padding-left: 12px; padding-right: 12px; }
	.col-micro-14 { width: 14%; padding-left: 12px; padding-right: 12px; }
	.col-micro-15 { width: 15%; padding-left: 12px; padding-right: 12px; }
	.col-micro-16 { width: 16%; padding-left: 12px; padding-right: 12px; }
	.col-micro-17 { width: 17%; padding-left: 12px; padding-right: 12px; }
	.col-micro-18 { width: 18%; padding-left: 12px; padding-right: 12px; }
	.col-micro-19 { width: 19%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-20 { width: 20%; padding-left: 12px; padding-right: 12px; }
	.col-micro-21 { width: 21%; padding-left: 12px; padding-right: 12px; }
	.col-micro-22 { width: 22%; padding-left: 12px; padding-right: 12px; }
	.col-micro-23 { width: 23%; padding-left: 12px; padding-right: 12px; }
	.col-micro-24 { width: 24%; padding-left: 12px; padding-right: 12px; }
	.col-micro-25 { width: 25%; padding-left: 12px; padding-right: 12px; }
	.col-micro-26 { width: 26%; padding-left: 12px; padding-right: 12px; }
	.col-micro-27 { width: 27%; padding-left: 12px; padding-right: 12px; }
	.col-micro-28 { width: 28%; padding-left: 12px; padding-right: 12px; }
	.col-micro-29 { width: 29%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-30 { width: 30%; padding-left: 12px; padding-right: 12px; }
	.col-micro-31 { width: 31%; padding-left: 12px; padding-right: 12px; }
	.col-micro-32 { width: 32%; padding-left: 12px; padding-right: 12px; }
	.col-micro-33 { width: 33%; padding-left: 12px; padding-right: 12px; }
	.col-micro-34 { width: 34%; padding-left: 12px; padding-right: 12px; }
	.col-micro-35 { width: 35%; padding-left: 12px; padding-right: 12px; }
	.col-micro-36 { width: 36%; padding-left: 12px; padding-right: 12px; }
	.col-micro-37 { width: 37%; padding-left: 12px; padding-right: 12px; }
	.col-micro-38 { width: 38%; padding-left: 12px; padding-right: 12px; }
	.col-micro-39 { width: 39%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-40 { width: 40%; padding-left: 12px; padding-right: 12px; }
	.col-micro-41 { width: 41%; padding-left: 12px; padding-right: 12px; }
	.col-micro-42 { width: 42%; padding-left: 12px; padding-right: 12px; }
	.col-micro-43 { width: 43%; padding-left: 12px; padding-right: 12px; }
	.col-micro-44 { width: 44%; padding-left: 12px; padding-right: 12px; }
	.col-micro-45 { width: 45%; padding-left: 12px; padding-right: 12px; }
	.col-micro-46 { width: 46%; padding-left: 12px; padding-right: 12px; }
	.col-micro-47 { width: 47%; padding-left: 12px; padding-right: 12px; }
	.col-micro-48 { width: 48%; padding-left: 12px; padding-right: 12px; }
	.col-micro-49 { width: 49%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-50 { width: 50%; padding-left: 12px; padding-right: 12px; }
	.col-micro-51 { width: 51%; padding-left: 12px; padding-right: 12px; }
	.col-micro-52 { width: 52%; padding-left: 12px; padding-right: 12px; }
	.col-micro-53 { width: 53%; padding-left: 12px; padding-right: 12px; }
	.col-micro-54 { width: 54%; padding-left: 12px; padding-right: 12px; }
	.col-micro-55 { width: 55%; padding-left: 12px; padding-right: 12px; }
	.col-micro-56 { width: 56%; padding-left: 12px; padding-right: 12px; }
	.col-micro-57 { width: 57%; padding-left: 12px; padding-right: 12px; }
	.col-micro-58 { width: 58%; padding-left: 12px; padding-right: 12px; }
	.col-micro-59 { width: 59%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-60 { width: 60%; padding-left: 12px; padding-right: 12px; }
	.col-micro-61 { width: 61%; padding-left: 12px; padding-right: 12px; }
	.col-micro-62 { width: 62%; padding-left: 12px; padding-right: 12px; }
	.col-micro-63 { width: 63%; padding-left: 12px; padding-right: 12px; }
	.col-micro-64 { width: 64%; padding-left: 12px; padding-right: 12px; }
	.col-micro-65 { width: 65%; padding-left: 12px; padding-right: 12px; }
	.col-micro-66 { width: 66%; padding-left: 12px; padding-right: 12px; }
	.col-micro-67 { width: 67%; padding-left: 12px; padding-right: 12px; }
	.col-micro-68 { width: 68%; padding-left: 12px; padding-right: 12px; }
	.col-micro-69 { width: 69%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-70 { width: 70%; padding-left: 12px; padding-right: 12px; }
	.col-micro-71 { width: 71%; padding-left: 12px; padding-right: 12px; }
	.col-micro-72 { width: 72%; padding-left: 12px; padding-right: 12px; }
	.col-micro-73 { width: 73%; padding-left: 12px; padding-right: 12px; }
	.col-micro-74 { width: 74%; padding-left: 12px; padding-right: 12px; }
	.col-micro-75 { width: 75%; padding-left: 12px; padding-right: 12px; }
	.col-micro-76 { width: 76%; padding-left: 12px; padding-right: 12px; }
	.col-micro-77 { width: 77%; padding-left: 12px; padding-right: 12px; }
	.col-micro-78 { width: 78%; padding-left: 12px; padding-right: 12px; }
	.col-micro-79 { width: 79%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-80 { width: 80%; padding-left: 12px; padding-right: 12px; }
	.col-micro-81 { width: 81%; padding-left: 12px; padding-right: 12px; }
	.col-micro-82 { width: 82%; padding-left: 12px; padding-right: 12px; }
	.col-micro-83 { width: 83%; padding-left: 12px; padding-right: 12px; }
	.col-micro-84 { width: 84%; padding-left: 12px; padding-right: 12px; }
	.col-micro-85 { width: 85%; padding-left: 12px; padding-right: 12px; }
	.col-micro-86 { width: 86%; padding-left: 12px; padding-right: 12px; }
	.col-micro-87 { width: 87%; padding-left: 12px; padding-right: 12px; }
	.col-micro-88 { width: 88%; padding-left: 12px; padding-right: 12px; }
	.col-micro-89 { width: 89%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-90 { width: 90%; padding-left: 12px; padding-right: 12px; }
	.col-micro-91 { width: 91%; padding-left: 12px; padding-right: 12px; }
	.col-micro-92 { width: 92%; padding-left: 12px; padding-right: 12px; }
	.col-micro-93 { width: 93%; padding-left: 12px; padding-right: 12px; }
	.col-micro-94 { width: 94%; padding-left: 12px; padding-right: 12px; }
	.col-micro-95 { width: 95%; padding-left: 12px; padding-right: 12px; }
	.col-micro-96 { width: 96%; padding-left: 12px; padding-right: 12px; }
	.col-micro-97 { width: 97%; padding-left: 12px; padding-right: 12px; }
	.col-micro-98 { width: 98%; padding-left: 12px; padding-right: 12px; }
	.col-micro-99 { width: 99%; padding-left: 12px; padding-right: 12px; }
	.col-micro-100 { width: 100%; padding-left: 12px; padding-right: 12px; }
	
	.col-micro-offset-0 { margin-left: 0%; }
	.col-micro-offset-1 { margin-left: 1%; }
	.col-micro-offset-2 { margin-left: 2%; }
	.col-micro-offset-3 { margin-left: 3%; }
	.col-micro-offset-4 { margin-left: 4%; }
	.col-micro-offset-5 { margin-left: 5%; }
	.col-micro-offset-6 { margin-left: 6%; }
	.col-micro-offset-7 { margin-left: 7%; }
	.col-micro-offset-8 { margin-left: 8%; }
	.col-micro-offset-9 { margin-left: 9%; }
	
	.col-micro-offset-10 { margin-left: 10%; }
	.col-micro-offset-11 { margin-left: 11%; }
	.col-micro-offset-12 { margin-left: 12%; }
	.col-micro-offset-13 { margin-left: 13%; }
	.col-micro-offset-14 { margin-left: 14%; }
	.col-micro-offset-15 { margin-left: 15%; }
	.col-micro-offset-16 { margin-left: 16%; }
	.col-micro-offset-17 { margin-left: 17%; }
	.col-micro-offset-18 { margin-left: 18%; }
	.col-micro-offset-19 { margin-left: 19%; }
	
	.col-micro-offset-20 { margin-left: 20%; }
	.col-micro-offset-21 { margin-left: 21%; }
	.col-micro-offset-22 { margin-left: 22%; }
	.col-micro-offset-23 { margin-left: 23%; }
	.col-micro-offset-24 { margin-left: 24%; }
	.col-micro-offset-25 { margin-left: 25%; }
	.col-micro-offset-26 { margin-left: 26%; }
	.col-micro-offset-27 { margin-left: 27%; }
	.col-micro-offset-28 { margin-left: 28%; }
	.col-micro-offset-29 { margin-left: 29%; }
	
	.col-micro-offset-30 { margin-left: 30%; }
	.col-micro-offset-31 { margin-left: 31%; }
	.col-micro-offset-32 { margin-left: 32%; }
	.col-micro-offset-33 { margin-left: 33%; }
	.col-micro-offset-34 { margin-left: 34%; }
	.col-micro-offset-35 { margin-left: 35%; }
	.col-micro-offset-36 { margin-left: 36%; }
	.col-micro-offset-37 { margin-left: 37%; }
	.col-micro-offset-38 { margin-left: 38%; }
	.col-micro-offset-39 { margin-left: 39%; }
	
	.col-micro-offset-40 { margin-left: 40%; }
	.col-micro-offset-41 { margin-left: 41%; }
	.col-micro-offset-42 { margin-left: 42%; }
	.col-micro-offset-43 { margin-left: 43%; }
	.col-micro-offset-44 { margin-left: 44%; }
	.col-micro-offset-45 { margin-left: 45%; }
	.col-micro-offset-46 { margin-left: 46%; }
	.col-micro-offset-47 { margin-left: 47%; }
	.col-micro-offset-48 { margin-left: 48%; }
	.col-micro-offset-49 { margin-left: 49%; }
	
	.col-micro-offset-50 { margin-left: 50%; }
	.col-micro-offset-51 { margin-left: 51%; }
	.col-micro-offset-52 { margin-left: 52%; }
	.col-micro-offset-53 { margin-left: 53%; }
	.col-micro-offset-54 { margin-left: 54%; }
	.col-micro-offset-55 { margin-left: 55%; }
	.col-micro-offset-56 { margin-left: 56%; }
	.col-micro-offset-57 { margin-left: 57%; }
	.col-micro-offset-58 { margin-left: 58%; }
	.col-micro-offset-59 { margin-left: 59%; }
	
	.col-micro-offset-60 { margin-left: 60%; }
	.col-micro-offset-61 { margin-left: 61%; }
	.col-micro-offset-62 { margin-left: 62%; }
	.col-micro-offset-63 { margin-left: 63%; }
	.col-micro-offset-64 { margin-left: 64%; }
	.col-micro-offset-65 { margin-left: 65%; }
	.col-micro-offset-66 { margin-left: 66%; }
	.col-micro-offset-67 { margin-left: 67%; }
	.col-micro-offset-68 { margin-left: 68%; }
	.col-micro-offset-69 { margin-left: 69%; }
	
	.col-micro-offset-70 { margin-left: 70%; }
	.col-micro-offset-71 { margin-left: 71%; }
	.col-micro-offset-72 { margin-left: 72%; }
	.col-micro-offset-73 { margin-left: 73%; }
	.col-micro-offset-74 { margin-left: 74%; }
	.col-micro-offset-75 { margin-left: 75%; }
	.col-micro-offset-76 { margin-left: 76%; }
	.col-micro-offset-77 { margin-left: 77%; }
	.col-micro-offset-78 { margin-left: 78%; }
	.col-micro-offset-79 { margin-left: 79%; }
	
	.col-micro-offset-80 { margin-left: 80%; }
	.col-micro-offset-81 { margin-left: 81%; }
	.col-micro-offset-82 { margin-left: 82%; }
	.col-micro-offset-83 { margin-left: 83%; }
	.col-micro-offset-84 { margin-left: 84%; }
	.col-micro-offset-85 { margin-left: 85%; }
	.col-micro-offset-86 { margin-left: 86%; }
	.col-micro-offset-87 { margin-left: 87%; }
	.col-micro-offset-88 { margin-left: 88%; }
	.col-micro-offset-89 { margin-left: 89%; }
	
	.col-micro-offset-90 { margin-left: 90%; }
	.col-micro-offset-91 { margin-left: 91%; }
	.col-micro-offset-92 { margin-left: 92%; }
	.col-micro-offset-93 { margin-left: 93%; }
	.col-micro-offset-94 { margin-left: 94%; }
	.col-micro-offset-95 { margin-left: 95%; }
	.col-micro-offset-96 { margin-left: 96%; }
	.col-micro-offset-97 { margin-left: 97%; }
	.col-micro-offset-98 { margin-left: 98%; }
	.col-micro-offset-99 { margin-left: 99%; }
	.col-micro-offset-100 { margin-left: 100%; }
	
	.prev-year { padding-right: 4px; }
	.last-year-number { text-align: right; }
	.this-year { padding-left: 4px; }
	
	.col-micro-left { padding-left: 15px !important; }
	.col-micro-right { padding-right: 15px !important; }	
	
	html { font-size: 16px; }
	
	.bd-placeholder-img-lg {font-size: 3.5rem; 	}

	.nav-pills-subnav {
		--bs-nav-pills-border-radius: 4px;
		--bs-nav-pills-link-active-color: #fff;
		--bs-nav-pills-link-active-bg: #240d8a;
	}
	.nav-pills-subnav .nav-link {
		border-radius: 4px;
	}
	
	.nav-pills-subnav .nav-link.active,
	.nav-pills-subnav .show > .nav-link {
		color: var(--bs-nav-pills-link-active-color);
		background-color: var(--bs-nav-pills-link-active-bg);
	}

	.bd-placeholder-img {
        font-size: 1.125rem;
        text-anchor: middle;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
    }

    .bd-placeholder-img-lg { font-size: 3.5rem; }

    .bi {
		vertical-align: -.125em;
		fill: currentColor;
    }

	.nav-scroller {
		position: relative;
		z-index: 2;
		height: 2.75rem;
		overflow-y: hidden;
	}

	.nav-scroller .nav {
		display: flex;
		flex-wrap: nowrap;
		padding-bottom: 1rem;
		margin-top: -1px;
		overflow-x: auto;
		text-align: center;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	.btn-bd-primary {
		--bd-violet-bg: #712cf9;
		--bd-violet-rgb: 112.520718, 44.062154, 249.437846;

		--bs-btn-font-weight: 600;
		--bs-btn-color: var(--bs-white);
		--bs-btn-bg: var(--bd-violet-bg);
		--bs-btn-border-color: var(--bd-violet-bg);
		--bs-btn-hover-color: var(--bs-white);
		--bs-btn-hover-bg: #6528e0;
		--bs-btn-hover-border-color: #6528e0;
		--bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
		--bs-btn-active-color: var(--bs-btn-hover-color);
		--bs-btn-active-bg: #5a23c8;
		--bs-btn-active-border-color: #5a23c8;
	}

	.bd-mode-toggle {
		z-index: 1500;
	}

	.h-lg-100 {
		height: 100% !important;
	}

	.w-lg-100 {
		width: 100% !important;
	}

}	
