//
// Navs
// --------------------------------------------------


// BASE CLASS
// ----------

.nav {
  margin-right: 0;
  margin-bottom: @baseLineHeight;
  list-style: none;
}

// Make links block level
.nav > li > a {
  display: block;
}
.nav > li > a:hover,
.nav > li > a:focus,
dl.tabs > dt a:hover,
dl.tabs > dt a:focus {
  text-decoration: none;
  background-color: @grayLighter;
}

// Prevent IE8 from misplacing imgs
// See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989
.nav > li > a > img {
  max-width: none;
}

// Redeclare pull classes because of specifity
.nav > .pull-right {
  float: left;
}

// Nav headers (for dropdowns and lists)
.nav-header {
  display: block;
  padding: 3px 15px !important; //JM edited
  font-size: 11px;
  font-weight: bold;
  line-height: @baseLineHeight;
  color: @grayLight;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);
  text-transform: uppercase;
}
// Space them out when they follow another list item (link)
.nav li + .nav-header {
  margin-top: 9px;
}



// NAV LIST
// --------

.nav-list {
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 0;
}
.nav-list > li > a,
.nav-list .nav-header {
  margin-left:  -15px;
  margin-right: -15px;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);
}
.nav-list > li > a {
  padding: 3px 15px;
}
.nav-list > .active > a,
.nav-list > .active > a:hover,
.nav-list > .active > a:focus {
  color: @white;
  text-shadow: 0 -1px 0 rgba(0,0,0,.2);
  background-color: @linkColor;
}
.nav-list [class^="icon-"],
.nav-list [class*=" icon-"] {
  margin-right: 2px;
}
// Dividers (basically an hr) within the dropdown
.nav-list .divider {
  .nav-divider();
}



// TABS AND PILLS
// -------------

// Common styles
.nav-tabs,
dl.tabs,
.nav-pills {
  .clearfix();
}
.nav-tabs > li,
dl.tabs > dt,
.nav-pills > li {
  float: right;
}
//JM .nav-tabs > li > a,
//JM dl.tabs > dt a,
.nav-pills > li > a {
  padding-right: 12px;
  padding-left: 12px;
  margin-left: 2px;
  line-height: 14px; // keeps the overall height an even number
}

// TABS
// ----

// Give the tabs something to sit on
.nav-tabs,
dl.tabs {
  margin: 0;
  padding: 10px 0 0;
}

// Remove padding and image from list
.nav-tabs > li {
  background: none;
  padding: 0; 
}

dl.tabs,
dl.tabs > dt,
dl.tabs > dt h3,
.nav-tabs > li {
  line-height: @baseLineHeight;
}
// Actual tabs (as links)
.nav-tabs > li > a,
dl.tabs > dt a {
  color: @JMtabFontColor;
  padding: 20px 15px;
  margin: 0 0 -1px;
	background: @JMtabBackground;
  font-weight: 400;
  text-decoration: none;
  border: 1px solid @JMborder;
  .border-radius(@baseBorderRadius @baseBorderRadius 0 0);
  .transition(background 0.2s ease-in);
  &:hover,
  &:focus {
    outline: 0;
    background: @JMtabsBackground;
  }
}

.nav-tabs > li + li > a,
dl.tabs > dt + dt a {
	margin-right: -1px;
}

.nav-tabs > li.active > a,
dl.tabs > dt.open a {
	cursor: default;
	border-top: 1px solid @JMtabBorderHover;
	border-bottom: none;
	padding-bottom: 21px;
	background: @JMtabsBackground;
}

dl.tabs > dt a {
  display: block; 
}
dl.tabs > dt h3 {
  font-size: 1em;
  margin: 0;
}

//JM added

dd.tabs,
.tab-content {
  .clearfix();
  margin: 0;
  padding: 20px;
  border: 1px solid @JMborder;
  background: @JMtabsBackground;
}


// PILLS
// -----

// Links rendered as pills
.nav-pills > li > a {
  padding-top: 8px;
  padding-bottom: 8px;
  margin-top: 2px;
  margin-bottom: 2px;
  .border-radius(5px);
}

// Active state
.nav-pills > .active > a,
.nav-pills > .active > a:hover,
.nav-pills > .active > a:focus {
  color: @white;
  background-color: @linkColor;
}



// STACKED NAV
// -----------

// Stacked tabs and pills
.nav-stacked > li {
  float: none;
}

// JM added
.nav-stacked > li + li {
	margin: 2px 0 0;
}

.nav-stacked > li > a {
  //JM margin-left: 0; // no need for the gap between nav items
  //JM margin-right: 0; //JM added
  //JM margin: 0!important; //JM added
}

// Tabs
.nav-tabs.nav-stacked {
  border-bottom: 0;
}
.nav-tabs.nav-stacked > li > a {
  .border-radius(0);
  margin: 0;
  background: @JMtabBackground;
  &:hover,
  &:focus {
  	background: @JMtabsBackground;
  }
}

//JM added
.nav-tabs.nav-stacked > li.active > a {
	background: @JMtabsBackground;
	border-top: 1px solid @JMtabBorderHover;
}

.nav-tabs.nav-stacked > li:first-child > a {
  .border-top-radius(@baseBorderRadius);
}
.nav-tabs.nav-stacked > li:last-child > a {
  .border-bottom-radius(@baseBorderRadius);
}
.nav-tabs.nav-stacked > li > a:hover,
.nav-tabs.nav-stacked > li > a:focus {
  z-index: 2;
}

// Pills
.nav-pills.nav-stacked > li > a {
  margin-bottom: 3px;
}
.nav-pills.nav-stacked > li:last-child > a {
  margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
}



// DROPDOWNS
// ---------

.nav-tabs .dropdown-menu {
  .border-radius(0 0 6px 6px); // remove the top rounded corners here since there is a hard edge above the menu
}
.nav-pills .dropdown-menu {
  .border-radius(6px); // make rounded corners match the pills
}

// Default dropdown links
// -------------------------
// Make carets use linkColor to start
.nav .dropdown-toggle .caret {
  border-top-color: @linkColor;
  border-bottom-color: @linkColor;
  margin-top: 6px;
}
.nav .dropdown-toggle:hover .caret,
.nav .dropdown-toggle:focus .caret {
  border-top-color: @linkColorHover;
  border-bottom-color: @linkColorHover;
}
/* move down carets for tabs */
.nav-tabs .dropdown-toggle .caret {
  margin-top: 8px;
}

// Active dropdown links
// -------------------------
.nav .active .dropdown-toggle .caret {
  border-top-color: @white;
  border-bottom-color: @white;
}
.nav-tabs .active .dropdown-toggle .caret {
  border-top-color: @gray;
  border-bottom-color: @gray;
}

// Active:hover/:focus dropdown links
// -------------------------
.nav > .dropdown.active > a:hover,
.nav > .dropdown.active > a:focus {
  cursor: pointer;
}

// Open dropdowns
// -------------------------
.nav-tabs .open .dropdown-toggle,
.nav-pills .open .dropdown-toggle,
.nav > li.dropdown.open.active > a:hover,
.nav > li.dropdown.open.active > a:focus {
  color: @white;
  background-color: @grayLight;
  border-color: @grayLight;
}
.nav li.dropdown.open .caret,
.nav li.dropdown.open.active .caret,
.nav li.dropdown.open a:hover .caret,
.nav li.dropdown.open a:focus .caret {
  border-top-color: @white;
  border-bottom-color: @white;
  .opacity(100);
}

// Dropdowns in stacked tabs
.tabs-stacked .open > a:hover,
.tabs-stacked .open > a:focus {
  border-color: @grayLight;
}



// TABBABLE
// --------


// COMMON STYLES
// -------------

// Clear any floats
.tabbable {
  .clearfix();
}
.tab-content {
//JM  overflow: auto; // prevent content from running below tabs
}

// Remove border on bottom, left, right
.tabs-below > .nav-tabs,
.tabs-right > .nav-tabs,
.tabs-left > .nav-tabs {
  border-bottom: 0;
}

// Show/hide tabbable areas
.tab-content > .tab-pane,
.pill-content > .pill-pane {
  display: none;
}
.tab-content > .active,
.pill-content > .active {
  display: block;
}


// BOTTOM
// ------

.tabs-below > .nav-tabs > li {
  margin-top: -10px;
}

// LEFT & RIGHT
// ------------

// Common styles
.tabs-left > .nav-tabs > li,
.tabs-right > .nav-tabs > li {
  float: none;
}

// Tabs on the left
.tabs-left > .nav-tabs {
  float: right;
  margin: 0 0 0 20px;
  padding: 0;
}
.tabs-left > .nav-tabs > li > a {
	margin: 0;
}

// Tabs on the right
.tabs-right > .nav-tabs {
  float: left;
  margin: 0 20px 0 0;
  padding: 0;
}
.tabs-right > .nav-tabs > li > a {
  margin: 0;
}

// DISABLED STATES
// ---------------

// Gray out text
.nav > .disabled > a {
  color: @grayLight;
}
// Nuke hover/focus effects
.nav > .disabled > a:hover,
.nav > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  cursor: default;
}
