@charset "utf-8";
/*****************
* @this - Styles for objects found throughout the whole site.
* @mobile.css - Must be defined first, styles to use for mobile devices
* @480_960.css - Overwrites styles from mobile for display on larger devices
* @960.css - Overwrites styles from mobile.css and 480_960.css for large displays
*****************/

/* CSS Document */

html, body {
  font-family: 'Roboto', sans-serif;
  font-size: 100%;
  height: 100%;
  width: 100%;
  color: #333;
  display: flex;
  flex-direction: row;
  overflow: hidden;
}

body.windowed {
  overflow: auto;
}

h1 {
  margin: 0px 0px 10px 0px;
  line-height: 1.3em;
}

p {
  margin: 5px 0;
  line-height: 1.2em;
}

a, a:visited {
  color: #0066C0;
  text-decoration: none;  
}

a:hover {
  color: #900;
  cursor: pointer;
}

fieldset {
  margin-bottom: 20px;
  clear: both;
}

legend {
  font-weight: bold;
}

input, select, option, textarea {
  background-color: #FFFFF8;
  border-radius: 8px;
}

select {
  height: 35px;
  padding-left: 5px;
  padding-right: 5px;
}

select:focus option:checked,
select option:checked {
  color: #FFF;
  background: #0e69b9 linear-gradient(0deg, #0e69b9 0%, #0e69b9 100%);
}

select[multiple] {
  height: 100px;
}

input, textarea {
  padding: 8px;
  box-shadow: inset 0 1px 3px #DDD;
}

input:not([type='file']):focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

input[type='file'],
input[type='image'],
input[type='color'] {
  padding: 0px;
  box-shadow: none;
  background-color: transparent;
  border-radius: 0px;
}

input[type='color'] {
  border: none;
}

option {
  padding: 2px 8px;
}

/***** PRE-LOGIN Styles *****/
.site_container {
  float: left;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: #F7F6F3;
}

.content_container {
  max-width: 479px;
  margin: 4% auto;
  background-color: rgba(255,255,255,0.92);
  padding: 20px;
  text-align: center;
  box-shadow: 0 1px 3px 0 rgba(0,0,0,.22);
}

img#logo {
  width: 100%;
  max-width: 300px;
}

#login-input-container {
  width: 100%;
}

/***** DISPLAY STYLES *****/
#pc_header_container {
  display: block;
  background-color: #69C;
  background-image: linear-gradient(180deg,#69C 10%,#224abe 100%);
  background-size: cover;
  min-width: 200px;
  overflow-y: auto;
  overflow-x: hidden;
}

#pc_header_container hr {
  border: 0;
  border-top: 1px solid rgba(255,255,255,.15);
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  margin-top: 0!important;
  margin-bottom: 0!important;
}

#mobile_header_container {
  display: none;
}

#ss_body_container {
  background-color: #F7F6F3;
  padding: 20px;
  width: calc(100% - 40px); /* minus left and right padding */
  flex-grow: 1;
  overflow: auto;
}

#ss_body_container_windowed {
  display: table;
  background-color: #F7F6F3;
  padding: 20px;
  width: calc(100% - 40px); /* minus left and right padding */
  height: 100%;
}

#ss_content {
  display: table-row;
  float: left;
  padding: 20px;
  width: calc(100% - 40px); /* minus left and right padding */
  background-color: #FFF;
  box-shadow: 0 1px 3px 0 rgba(0,0,0,.22);
}

#processing {
  display: none;
}

#account_amount_due {
  font-size: 45px;
  font-weight: bold;
}
#btn-make_payment {
  width: calc(100% - 20px);
  font-size: large;
  margin-bottom: 20px;
  margin-left: 2px;
}

#verificationWindow {
  padding: 20px;
  min-width: 300px;
  text-align: center;
}

#verificationWindow #btn_verify_yes {
  font-weight: bold;
  color: #090;
  cursor: pointer;
}

#verificationWindow #btn_verify_no {
  font-weight: bold;
  color: #900;
  cursor: pointer;
}

/* Main Menu */
#pc_user_menu_container {
  position: relative;
  padding: 10px 25px;
}

#pc_app_menu_container {
  padding: 10px 15px;
}

#pc_app_menu_dashboard {
  font-size: 22px;
  font-weight: bold;
  color: #FFF;
  padding-left: 25px;
  line-height: 50px;
}

#pc_app_menu_items .app_icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

#pc_user_menu_list_items ul,
#pc_app_menu_items ul {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style: none;
}

#pc_user_menu_list_items li,
#pc_app_menu_items li {
  position: relative;
  box-sizing: border-box;
  display: block;
  text-align: left;
  padding: 10px;
}

#pc_user_menu_list_items li {
  padding: 5px 0px;
}

#pc_user_menu_list_items li,
#pc_app_menu_items li .pc_app_menu_sub_menu_exists,
#pc_app_menu_items li a {
  color: #fff;
  font-size: 16px;
  user-select: none;
}

#pc_app_menu_items li .pc_app_menu_sub_menu_exists {
  cursor: pointer;
}

#pc_app_menu_items li.active .pc_app_menu_sub_menu_exists,
#pc_app_menu_items li.active a {
  font-weight: bold;
}

#pc_user_menu_container .pc_user_sub_menu_expander,
#pc_app_menu_items .pc_app_sub_menu_expander {
  position: absolute;
  right: 0px;
  top: 15px;
  width: 15px;
  height: 15px;
  background-image: url('/images/icons/expand_more_arrow.png');
  background-size: contain;
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  transition: transform 0.3s;
}

#pc_user_menu_container .pc_user_sub_menu_expander {
  right: 15px;
}

#pc_user_menu_container .pc_user_sub_menu_expander:hover,
#pc_app_menu_items .pc_app_sub_menu_expander:hover {
  cursor: pointer;
}

#pc_user_menu_container.active .pc_user_sub_menu_expander,
#pc_app_menu_items li.active .pc_app_sub_menu_expander {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  transform: rotate(90deg);
}

#pc_user_menu_container.active #pc_user_menu_list_items a,
#pc_app_menu_items li.active .pc_app_sub_menu_content a {
  font-weight: normal;
}

#pc_user_menu_container.active #pc_user_menu_list_items,
#pc_app_menu_items li.active .pc_app_sub_menu_content {
  display: block;
}

#pc_user_menu_container #pc_user_menu_list_items,
#pc_app_menu_items .pc_app_sub_menu_content {
  display: none;
  position: relative;
  left: 0;
  z-index: 1;
  top: 0;
  box-shadow: none;
  padding: 5px 15px;
  border-radius: 5px;
  background-color: #fff;
}

#pc_user_menu_container #pc_user_menu_list_items a,
#pc_app_menu_items .pc_app_sub_menu_content a {
  color: #69C;
  font-size: 12px;
}

#pc_app_menu_items .pc_app_sub_menu_links a {
  display: block;
  padding-top: 10px;
  padding-bottom: 5px;
}

#pc_app_search_container {
  padding-left: 20px;
  margin-top: 15px;
}

#pc_app_search_container .app_search_form input.app_search {
  width: 110px;
}

#pc_app_search_container .app_search_form input.app_search_icon {
  top: 3px;
  right: 40px;
}

#pc_app_search_container .app_search_settings
{
  position: absolute;
  top: 3px;
  right: 16px;
}

.app_search_form {
  position: relative;
  margin: 0px 0px 2px 0px;
}

.app_search_form input.app_search {
  padding: 2px 25px 2px 8px;
  width: 175px;
  border-radius: 8px;
  border: #888 solid 1px;
}

.app_search_form input.app_search::placeholder {
  font-style: italic;
}

.app_search_form input.app_search_icon {
  position: absolute;
  right: 10px;
  top: 2px;
  width: 15px;
  height: 15px;
  border: none;
  background-image: url('/images/icons/search.png');
  background-color: transparent;
  box-shadow: none;
}

.app_search_form input.app_search_icon:hover {
  cursor: pointer;
}

.app_search:-webkit-autofill,
.app_search:-webkit-autofill:hover,
.app_search:-webkit-autofill:focus,
.app_search:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0px 1000px #FFFFF8 inset !important;
}

/* User Menu */
#pc_user_menu_user_img {
  display: inline-block;
  width: 60px;
  height: 60px;
  border-radius: 12px;
  background-color: #8A2BE2;
  color: #FFF;
}

#toggleUserMenu_link {
  cursor: pointer;
  user-select: none;
}

#pc_user_welcome {
  display: inline-block;
  color: #FFF;
  vertical-align: top;
  padding-top: 2px;
  padding-left: 2px;
}

#pc_user_menu_user_init_container {
  display: inline-block;
  margin-right: 10px;
}

#pc_user_menu_user_initials {
  display: table-cell;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  background-color: #8A2BE2;
  color: #FFF;
  font-size: small;
  text-align: center;
  vertical-align: middle;
}
