/* Greyish blue -- the text on the navigation buttons */
body {
  background-color: #ffffcc;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12pt;
}

div#pageHdr {
  text-align: center;
  line-height: 100%;
  padding-top: 0.25em;
  min-width: 870px;
  min-height: 105px;
}

div#topList {
  float: right;
  text-align: left;
  font-size: 10pt;
  line-height: 12pt;
  margin-top: 1em;
}
div#topList ul {
  list-style-image: url(images/note.png);
}

div#warnNoJs {
  width: 60%;
  min-width: 480px;
  border: thick solid red;
  background-color: navy;
  color: yellow;
  padding: 1em;
  margin: auto;
}
div#warnNoJs h1 {
  text-align: center;
}

div#pageFtr {
  border-top: thin solid navy;
  text-align: center;
  font-size: 8pt;
  padding-top: 1em;
  margin-top: 1em;
  clear: both;
}
div#pageFtr hr {
  width: 85%;
}
div#pageFtr div {
  margin: 0 1em;
}

div.boxShadow {
  box-shadow: -0.25em -0.25em 1em 0.25em black;
}

div#newReleases {
  width: 33%;
  min-width: 450px;
  background-color: #ffff99;
  margin: auto;
  border: 12pt outset #6599ff;
  border-radius: 2em;
  padding: 1em;
}
div#newReleases h1, div#newReleases h2 {
  text-align: center;
  margin: 0;
}
div#newReleases div {
  width: 60%;
  min-width: 250px;
  margin: auto;
}
div#newReleases ul {
  margin: auto;
}
div#newReleases li {
  margin: 1em 0;
}

div#topDL {
  max-width: 80%;
  margin: 1em auto;
  border: 8pt outset #6599ff;
  border-radius: 2em;
  background-color: #ffff99;
  padding: 0.5em 1em;
}
div#topDL h1 {
  text-align: center;
  margin-top: 0;
}
div#topDL h1 span {
  font-size: 9pt;
  font-style: italic;
}
div#topDL table {
  margin: auto;
}
div#topDL table tbody td {
  padding-right: 2em;
  vertical-align: top;
  font-size: smaller;
}

div.certBox {
  border: thick solid #003265;
  border-radius: 0.75em;
  background-color: #66A7C5;
  width: 300px;
  margin: 1em auto;
  padding: 0.25em 1em;
}
div.certBox img {
  vertical-align: middle;
  max-height: 55px;
}
div.certBox a {
  color: yellow;
  font-weight: bold;
}

a img, a input {
  border: 0;
}

/* Standard table styling */
table {
  border: thin solid navy;
  padding: 0;
  border-spacing: 0;
}
table thead, table tfoot {
  text-align: center;
  font-weight: bold;
  font-size: larger;
  color: white;
  background-color: navy;
}
table td, table th {
  border: thin solid navy;
  padding: 0.25em 0.33em;
}

/* Styling for the top-of-page logos and navigation buttons */
table#logos, table#buttons {
  border: none;
  width: 100%;
  margin: 1em 0;
  clear: both;
}
table#logos td, table#buttons td {
  border: none;
  padding: 0;
  border-spacing: 0;
  text-align: center;
  max-width: 33%;
}
table#logos td#elmer, table#logos td#jpesplogo, table#buttons td#elmer, table#buttons td#jpesplogo {
  width: 25%;
  font-weight: bold;
}
table#logos td#elmer img, table#logos td#jpesplogo img, table#buttons td#elmer img, table#buttons td#jpesplogo img {
  max-width: 100%;
}

table#buttons td a img {
  margin: 4px;
}
table#buttons td a img.active {
  background-color: navy;
  border: 4px solid navy;
  margin: 0;
}
table#buttons td a:hover img {
  background-color: #6599ff;
}
table#buttons td#viewCart {
  border-left: thick solid navy;
  padding: 0 8px;
  text-align: right;
  width: 120px;
}
table#buttons td div.nav {
  font-size: 15pt;
  font-weight: bold;
}
table#buttons td div.nav a {
  display: inline-block;
  color: #3b576e;
  background-color: #829199;
  background-image: linear-gradient(#c9a571, #ffecbd, #fff3cf, #fff6d4, #ffeeca, #ffebc2, #fce6bd, #fde7b8, #ffe4af, #fee1a5, #ffe0a0, #ffdc8d, #f8bc5a, #f5ad3e, #f8ac34, #fbb241, #febf62, #fecd80, #ffde9a, #ffe5a0, #e59e50);
  border-style: outset;
  border-color: #fe9b11;
  border-radius: 0.75em;
  text-decoration: none;
  font-weight: bold;
  text-shadow: 0px 1px currentColor;
  font-style: italic;
  padding: 4px 0.5em;
  margin: 0.25em 0.33em;
}
table#buttons td div.nav a img {
  margin-right: 4px;
  border: none;
  vertical-align: middle;
}
table#buttons td div.nav a:hover {
  border-color: #fe9b11;
  background: yellow;
  color: #3b576e;
  box-shadow: 5px 5px 10px #3b576e;
}
table#buttons td div.nav a.active {
  border-style: inset;
  color: #3b576e;
  border-color: #fe9b11;
  background: #fe9b11;
  box-shadow: 3px 3px 6px black;
}

form#songsearch {
  margin-bottom: 0.5em;
  width: 155px;
}
form#songsearch input#searchtxt {
  background: white url("/images/songsearchbg.png") no-repeat right center;
  width: 110px;
}
form#songsearch input.submitbtn {
  vertical-align: bottom;
}

div.bottomFloater {
  /* Boxes attached to bottom of browser window, "floating" over the page */
  position: fixed;
  bottom: 0;
  z-index: 100;
  /* Make it stay on top of everything else! */
  color: #ffffcc;
  background-color: #003265;
  padding: 2px;
  font-size: 9pt;
  text-align: center;
  border-radius: 0.5em;
  box-shadow: -0.25em -0.25em 1em 0.25em black;
}
@media print {
  div.bottomFloater {
    display: none;
  }
}

div#cartHolder {
  right: 0;
  width: 170px;
}
div#cartHolder table {
  margin: auto;
  border: none;
  border-spacing: 2px 0;
  /* Even with no border, separate cells so background shows through */
}
div#cartHolder table td {
  vertical-align: bottom;
  border: none;
}
div#cartHolder table tr:first-child td {
  padding-bottom: 1px;
}
div#cartHolder table tr#cartsum td {
  background-color: #ffffcc;
  /* For summary boxes */
}
div#cartHolder table input {
  padding: 0 3px;
}
div#cartHolder div#hiddenPlayerContainer {
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Styling for the audio player panel */
div#audioContainer {
  /*margin: 1em auto;*/
  padding: 4px;
  width: 300px;
  min-height: 75px;
  /* So container box height doesn't fluctuate when player is embedded */
  text-align: center;
  right: 190px;
  /* Enough to clear the 174-pixel-wide cart box */
}
div#audioContainer div#apWait {
  background-color: yellow;
  color: black;
  font-weight: bold;
}
div#audioContainer input#btAudioPanel {
  display: none;
  margin: auto;
}
div#audioContainer div#audioPanel {
  display: none;
  margin-top: 4px;
  padding: 2px;
  background-color: #f0eceb;
  color: black;
  font-size: smaller;
}
div#audioContainer div#audioPanel table {
  text-align: left;
  margin: auto;
  border: 0;
}
div#audioContainer div#audioPanel table td {
  border: 0;
}
div#audioContainer div#audioPanel table td:first-child {
  text-align: right;
}

div#cp_container {
  display: none;
  font-size: 16px;
  font-family: Verdana, Arial, sans-serif;
  line-height: 1.6;
  color: black;
  width: 95%;
  height: 32px;
  margin: 3px auto;
  background-color: #f0eceb;
  border-radius: 1em;
  padding: 8px 8px 0px;
  /* The seeking class is added/removed inside jPlayer */
  /*
  .jp-state-no-volume .jp-volume-controls {
    display: none;
    * { display: none; }
    } */
}
div#cp_container *:focus {
  outline: none;
}
div#cp_container button::-moz-focus-inner {
  border: 0;
}
div#cp_container .jp-type-single, div#cp_container .jp-type-single td {
  background-color: transparent;
}
div#cp_container .jp-interface {
  position: relative;
}
div#cp_container .jp-interface button {
  display: block;
  float: left;
  overflow: hidden;
  text-indent: -9999px;
  border: none;
  cursor: pointer;
  width: 22px;
  height: 22px;
  padding: 0px;
}
div#cp_container .jp-interface .jp-controls {
  margin: 0;
  padding: 0;
  width: 45px;
}
div#cp_container .jp-controls-holder {
  position: absolute;
  left: 0;
  clear: both;
  width: 100%;
  /*LOJ*/
  margin: 0 auto;
  overflow: hidden;
}
div#cp_container .jp-progress-container {
  width: 190px;
  padding-top: 4px;
}
div#cp_container .jp-progress {
  overflow: hidden;
  background-color: navy;
  height: 15px;
}
div#cp_container .jp-seek-bar {
  background-color: navy;
  width: 0px;
  height: 100%;
  cursor: pointer;
}
div#cp_container .jp-play-bar {
  background-color: yellow;
  width: 0px;
  height: 100%;
}
div#cp_container .jp-seeking-bg {
  background-color: #ffffcc;
}
div#cp_container .jp-volume-controls {
  position: absolute;
  right: 0;
  width: 94px;
}
div#cp_container .jp-volume-controls button {
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  border: none;
  cursor: pointer;
  float: left;
}
div#cp_container .jp-volume-controls .jp-mute,
div#cp_container .jp-volume-controls .jp-volume-max {
  vertical-align: middle;
  width: 22px;
  height: 22px;
}
div#cp_container .jp-volume-controls .jp-mute {
  margin-right: 5px;
}
div#cp_container .jp-volume-controls .jp-volume-max {
  margin-left: 5px;
}
div#cp_container .jp-volume-controls .jp-volume-bar {
  float: left;
  margin-top: 9px;
  overflow: hidden;
  background-color: navy;
  width: 40px;
  height: 5px;
  cursor: pointer;
}
div#cp_container .jp-volume-controls .jp-volume-bar-value {
  background-color: yellow;
  width: 0px;
  height: 5px;
}
div#cp_container .jp-time-holder {
  width: 100%;
}
div#cp_container .jp-current-time,
div#cp_container .jp-duration {
  font-size: .64em;
  font-style: oblique;
}
div#cp_container .jp-current-time {
  float: left;
  display: inline;
  text-align: left;
  cursor: default;
}
div#cp_container .jp-duration {
  float: right;
  display: inline;
  text-align: right;
  cursor: pointer;
}
div#cp_container .jp-details {
  display: none;
}
div#cp_container .jp-toggles {
  display: none;
  /*LOJ*/
}
div#cp_container .jp-no-solution {
  padding: 5px;
  font-size: .8em;
  background-color: #f0eceb;
  border: 2px solid black;
  color: black;
  display: none;
}
div#cp_container .jp-no-solution a {
  color: black;
}
div#cp_container .jp-no-solution span {
  font-size: 1em;
  display: block;
  text-align: center;
  font-weight: bold;
}

.jp-play {
  background: url("jplayer/image/ljplay.png") center no-repeat;
}

.jp-state-playing .jp-play {
  background: url("jplayer/image/ljpause.png") center no-repeat;
}

.jp-stop {
  background: url("jplayer/image/ljstop.png") center no-repeat;
}

.jp-mute {
  background: url("jplayer/image/ljlovol.png") right center no-repeat;
}

.jp-state-muted .jp-mute {
  background: url("jplayer/image/ljmute.png") right center no-repeat;
}

.jp-volume-max {
  background: url("jplayer/image/ljhivol.png") no-repeat;
}

.jp-jplayer audio,
.jp-jplayer {
  width: 0px;
  height: 0px;
}

.jp-jplayer {
  background-color: black;
}

/* Formatting for picture/address on staff bio and guest caller query pages */
table#staff, table#staff td {
  border: 0;
}

table#staff tbody tr td:first-child {
  text-align: right;
  padding-right: 1em;
}

table#staff td img, table#staff td input {
  border: outset 8pt #6599ff;
}

/* Styling for song listing tables */
table.songs {
  width: 100%;
  font-weight: bold;
}
table.songs tbody tr:nth-child(even) {
  background-color: #ffffcc;
}
table.songs tbody tr:nth-child(odd) {
  background-color: #ffff99;
}
table.songs tr.newRelease td.itemNbr {
  background-position: left;
  background-repeat: no-repeat;
  background-image: url("images/btnNew.png");
}
table.songs tr.newRelease td.title:after {
  content: " - New Release";
  font-style: italic;
  color: red;
}
table.songs td.itemNbr {
  text-align: right;
  min-width: 100px;
}
table.songs td.title span.cmt {
  font-weight: normal;
  font-style: italic;
}
table.songs td.title span.pkg {
  font-size: smaller;
  font-weight: normal;
  font-style: italic;
}
table.songs td.sample {
  min-width: 140px;
  text-align: center;
}
table.songs td.sample img, table.songs td.sample a img {
  margin: 0.25em;
}
table.songs td.sample img:first-child {
  margin-left: 0;
}
table.songs td.cart {
  text-align: center;
  font-weight: normal;
  font-size: smaller;
  min-width: 130px;
}
table.songs td.cart table {
  border: none;
}
table.songs td.cart table td {
  border: none;
  padding: 2px;
}
table.songs td.cart table td:first-child {
  text-align: left;
}
table.songs td.cart form, table.songs td.cart input {
  border: none;
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
table.songs td.nodl {
  background-color: red;
}

table.sortable thead td {
  cursor: default;
}
table.sortable thead td.sorttable_nosort {
  cursor: not-allowed;
}
table.sortable thead td::before, table.sortable thead td.sorttable_sorted::before, table.sortable thead td.sorttable_sorted_reverse::before {
  content: " ";
  display: inline-block;
  width: 24px;
  height: 24px;
}
table.sortable thead td.sorttable_sorted::before {
  content: "\25B2";
  color: lime;
}
table.sortable thead td.sorttable_sorted_reverse::before {
  content: "\25BC";
  color: lime;
}

#sorttable_sortfwdind, #sorttable_sortrevind {
  display: none;
}

/* Styling for the photos divs used in the callers listings */
div.photos {
  clear: both;
}
div.photos ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  font-weight: bold;
}
div.photos li {
  padding: 1em;
  float: left;
  text-align: center;
}
div.photos img, div.photos input[type="image"], div.photos li img, div.photos li input {
  border: 6pt outset #6599ff;
}
div.photos img:hover, div.photos input[type="image"]:hover, div.photos li img:hover, div.photos li input:hover {
  border-color: yellow;
}

/* Styling used for jump-list bars */
ul.jumpbar {
  padding-left: 0;
  margin-left: 0;
  margin-top: 1em;
  background-color: navy;
  color: white;
  float: left;
  width: 100%;
  font-family: arial,helvetica,sans-serif;
}
ul.jumpbar li {
  display: inline;
}
ul.jumpbar li.heading {
  float: left;
  border-right: 1px solid white;
  padding: 0.2em 1em 0.1em;
  font-weight: bold;
}
ul.jumpbar li a {
  border-right: 1px solid white;
  padding: 0.2em 1em;
  background-color: navy;
  color: white;
  text-decoration: none;
  float: left;
}
ul.jumpbar li a:hover {
  background-color: teal;
  color: white;
}

.btns a {
  display: inline-block;
  color: #003366;
  background-color: #FF9933;
  /* for browsers that don't support gradient; next line overrides on those that do */
  background: linear-gradient(to bottom, #ffe3c5 0%, #ffedcc 10%, #fee4b2 32%, #fedea0 50%, #ffad30 63%, #ff9933 74%, #ff9933 83%, #fdebcd 100%);
  /* W3C */
  border-style: outset;
  border-color: #FF9933;
  border-radius: 24px;
  text-decoration: none;
  text-align: center;
  font-family: Marcellus,sans-serif;
  font-size: 8pt;
  font-weight: bold;
  padding: 2px 0.5em;
  vertical-align: middle;
  min-width: 75px;
  min-height: 16px;
}
.btns a:hover {
  background-color: white;
  background: linear-gradient(to bottom, #f5ff38 0%, #ffb260 69%, #ff962d 79%, #ffb260 92%, #f5ff38 100%);
  /* W3C */
}

/* Pop up error message support */
div#mpuOverlay {
  /* This is what makes the screen dim when the box pops up */
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0.5;
  filter: alpha(opacity=50);
}

div#myPopUp {
  /* The actual pop-up message box */
  position: absolute;
  z-index: 300;
  display: none;
  width: 300px;
  height: 150px;
}
div#myPopUp table {
  /* Use a table so that the text will center vertically as well as horizontally */
  background-color: #FF8000;
  border-left: thick solid red;
  border-right: thick solid red;
  text-align: center;
  width: 100%;
  height: 100%;
}
div#myPopUp table td {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
div#myPopUp table thead td, div#myPopUp table tfoot td {
  /* Make the header & footer mimic thick borders; head contains title, foot contains close button */
  background-color: red;
  padding: 2px;
  color: white;
  font-size: 18pt;
  font-weight: bold;
  height: 1.125em;
}
