.login_banner {
   height:100px;
   margin-top: 8px;
}
nav {
   padding-top:5px;
}
#page_heading {
   background-color: #666;
   color: #EEE;
}
#login_form table {
   margin:auto;
}
#login_form input {
   font-size: 11pt;
}
#nav_login_user {
   color:#DDD;
}
#nav_menu_container > ul > li > a {
   height:30px;
   width:30px;
}
#nav_menu > li {
   background-size: contain;
   width:30px;
   height:30px;
}
#nav_menu_doc  {
   background-image: url('images/navbar_doc.svg');
}
#nav_menu_admin  {
   background-image: url('images/navbar_admin.svg');
}
#nav_menu_account  {
   background-image: url('images/navbar_account.svg');
}
#nav_menu_assistant  {
   background-image: url('images/navbar_assistant.svg');
}
#nav_menu_directory  {
   background-image: url('images/navbar_directory.svg');
}
#nav_menu_report_type_index {
   background-image: url('images/navbar_reports.svg');
}
#nav_menu_home  {
   background-image: url('images/navbar_home.svg');
}

#login_select_user_role .role_name > a {
   background-color: #eee;
   border: 1px solid #eee;
   border-radius: 5px;
}
#login_select_user_role .role_name > a:hover {
   box-shadow: 0 0 5px 0 #A00;
   border: 1px solid #A00;
}
#login_select_user_role {
   box-shadow: 0 5px 5px 0 #DDD;
   background: whitesmoke;
}

/*
 * FIXME
 */

h1 {
   font-size: 14pt;
}
h2 {
   font-size: 12pt;
}
div.technology_vendor {
}
input,select, textarea {
   border-width: 1px;
   border-color: #C7C8CA;
   background-color: #F8F8F8;
   padding: .2rem 0.8rem .2rem 0.8rem;
   border-radius: 4px;
   font-size: 9pt;
}
textarea.error, input.error, select.error {
   padding: .5rem 1rem .5rem 1rem !important;
   margin: initial;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
   -webkit-appearance: none;
   margin: 0;
}
input[type="number"] {
   -moz-appearance: textfield;
}
[contenteditable=true]:focus, .contenteditable:focus, input:focus, textarea:focus, select:focus{
   outline: solid 1px #608edb;
   box-shadow: inset 0 1px 1px rgba(0,0,0,.08),0 0 8px rgba(102,175,233,.6);
}
button.calltoaction {
   _background: #03438a;
   border: 0;
   min-width: 12em;
}
button.calltoaction.small {
   min-width: 9em;
}
#page_heading {
   background: #03438a;
}
body > footer {
   background: #656565;
   color:white;
   _box-shadow: none;
   _height:97px;
}
body > footer a,body > footer a:hover {
   color:white;
}

body > header {
   background:none;
   padding:0;
   height:auto;
   border:0;
   min-width:auto;
}

body > header.nosession .banner {
   background-image: url('../images/doxit-nosubscript.svg');
}

body > header > section.top {
   background-color: white;
   height:50px;
}
body > header > section.top > .left {
   float: left;
   width: 50%;
   background-image: url('../images/doxit-nosubscript.svg');
   background-size: contain;
   background-repeat: no-repeat;
   background-position: 20px center;
   height:50px;
   background-color: #ECECEC;
}
body > header > section.top > .right {
   background-color: #ECECEC;
   padding: 7px;
   height: 50px;
   line-height: 36px;
}
body > header > section.bottom {
   color:white;
   box-shadow: 0 5px 5px 0 #DDD;
   height:60px;
}
body > header > section.bottom > .left {
   float: left;
   width: 50%;
   background-color: #022d5b;
   background-color:#4d4d4d;
   height:60px;
}
body.anonymous > header > section.bottom > .left {
   width:auto;
   float:none;
}
body.anonymous > header > section.top > .left {
   _width:100%;
   background-color: #ECECEC;
}
body.anonymous > header > section.top > .left .description {
   margin-left: 130px;
   display: inline-block;
   color: transparent; /* make invisible against background color */
}
body.anonymous > header > section.top > .left > h1 {
   text-align: right;
   padding-right:20px;
}
body.anonymous > header > section.top > .right {
   padding: 0;
   line-height: unset;
}
body.anonymous > header > section.top > .right > .button_container {
   text-align: right;
   padding-right:20px;
   margin:0;
}
body.anonymous > header > section.top > .right > .button_container > .button.red {
   background-color: #A00;
   border-color: #A00;
}
body.anonymous > header > section.top > .right > .button_container > .button.red:hover {
   transition: background-color .5s,color .5s,border-color .5s;
   background-color:#d10000;
   border-color: #d10000;
}
body > header > section.bottom > .right {
   background-color:#001f3f;
   background-color: #4d4d4d;
   height:60px;
}
body > header > section.bottom > .left .page_heading {
   font-size: 25px;
   /* line-height: 60px; */
   margin-left: 20px;
   white-space: nowrap;
}
body > header > section.bottom > .left .page_subheading {
   font-size: 9pt;
   margin-left: 20px;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
   max-width: 500px;
}
body > header > section.bottom > .right .login_user {
   float:right;
   text-align:right;
   line-height: 28px;
   font-size: 10pt;
   margin-right: 20px;
}
.login_user .num_assistants_active {
   background-color: #fbd60f;
   border-radius: 10px;
   min-width: 10px;
   padding-left: 10px;
   padding-right: 10px;
   color: initial;
   font-size: 8pt;
}
.login_user .num_assistants_active:hover {
   cursor:pointer;
}
body > header > section.bottom > .right .login_user .user_name .user_id {
   margin-left:5px;
   _display:none;
}
body > header > section.bottom > .right .login_user .role_name.multi_role {
   cursor: pointer;
}
body > header > section.bottom > .right .login_user .role_name.multi_role::after {
   content: "▼";
   font-size: 7pt;
   width: 20px;
   display: inline-block;
   height: 25px;
   text-align: center;
}
main {
   margin:0;
}
button,
a.button,
span.button,
.button {
   padding: 5px 10px;
   font-size: 9pt;
   background-color: #324F7B;
   color: #FFF;
}
button.disabled {
   background: #D0D0D0;
   border: 1px solid darkgray;
   color: #888888;
   box-shadow: none;
}
button.update_success {
   background: #DFF2BF;
   border: 1px solid #4F8A10;
   color: #4F8A10;
}
button.update_error {
   background: seashell;
   border: 1px solid #D8000C;
   color: #D8000C;
}
.info.toggle .buttons .button,
button.calltoaction.disabled,
.manage_assistants button.delete {
   box-shadow:none;
}
.manage_assistants button.delete:hover {
   background-color:inherit;
   border-color:inherit;
   color:inherit;
}
.terms_container {
   background-color:transparent;
   width:90%;
}
.terms {
   height: 400px;
   overflow: auto;
   margin-bottom: 10px;
   background-color: #F8F8F8;
   padding: 10px;
}

#toggle_search_form:hover,
#toggle_report_filters_form:hover {
   opacity: .50;
   filter: Alpha(Opacity=50);
}

#nav_menu_container ul li {
   _padding:0;
}
#nav_menu_container ul li ul {
   top:50px;
   right:0;
   position: absolute;
   box-shadow: 0px 0px 10px 0px #888888;
   background:rgba(255,255,255,0.9);
   backdrop-filter: blur(5px);
   border-radius:0;
   padding: 15px;
}

#page_menu {
   margin:auto;
   _margin-top: 10px;
   text-align: left;
   _background-color: #f5f5f5;
   padding: 5px;
   _width: max-content;
   border-radius: 7px;
   _box-shadow: 0 0px 5px 0 #888;
}

#page_context_menu {
   display:inline-block;
   vertical-align: middle;
}

#page_context_menu .toggle {
   display:inline-block;
   width:20px;
   height:20px;
   background-repeat: no-repeat;
   background-position: center center;
   background-image: url('images/page_context_menu_toggle.svg');
   cursor: pointer;
}

#page_context_menu ul {
   display:none;
   list-style-type: none;
   /* background:white; */
   background:rgba(255,255,255,0.9);
   backdrop-filter: blur(5px);
   position:fixed;
   height:auto;
   padding:5px;
   z-index:9999;
   box-shadow: 0px 0px 10px 0px #888888;
   min-width: 10em;
}
#page_context_menu ul li {
   display:block;
   padding:5px;
   text-align:left;
}
#page_context_menu ul li:hover {
   background-color:#EEE;
}
#page_context_menu ul li a {
   color:black;
   padding:2px;
   white-space: nowrap;
   text-decoration:none;
   font-size:12pt;
   display:inline-block;
   width:100%;
}
.dialog.container {
   background-color: rgba(255,255,255,1);
   backdrop-filter: blur(5px);
}
.ui-dialog-titlebar.ui-widget-header {
   background: none;
   _background-color: rgba(180, 180, 180, 0.8);
}
.ui-widget-content {
   background: none;
   background-color: rgba(255, 255, 255, 1);
}
.ui-dialog.ui-widget {
   background-color: rgba(255, 255, 255, 1);
   backdrop-filter: blur(3px);
}
.ui-dialog-content h1 {
   padding:4px;
   background-color: gainsboro;
   border: 0;
}
.ui-dialog-content #dialog_delete h1 {
   border-bottom: 2px solid;
   padding: revert;
   background-color: transparent;
   font-size:12pt;
}
.ui-dialog-content #dialog_delete h2 {
   font-size:10pt;
}
#cpanel_container.open {
   top:130px;
}

div.mvc-report {
   display:block;
   _overflow-x:auto;
   border:0;
   border-radius:0;
   padding:0;
}

div.pager {
   text-align:right;
   border:0;
   background:none;
   margin:0;
}
div.pager.top {
   /* margin-top:20px; */
}
div.pager .page_controls .page_selector {
   height: 26px;
   width: 22px;
   border: 0;
   background-color: #CCC;
   vertical-align: sub;
   border-radius:3px;
   vertical-align:bottom;
}

table.mvc-report {
   width:100%;
}
div.mvc-report table.mvc-report {
   background-color: white;
}
table.mvc-report > thead > tr > th {
   text-transform: uppercase;
   font-size: 8pt;
   padding:8px;
}
table.mvc-report > thead > tr {
   background-color: #022d5b;
   background-color: #AA0000;
   color: white;
   _border-bottom:2px solid #C0C0C0;
}
table.mvc-report > tbody > tr {
   _border-bottom: 1px dotted #939393;
}
table.mvc-report > tbody > tr:hover,
table.mvc-report.tablesorter-default tbody > tr:hover > td {
   background-color:#fffcef;
}
table.mvc-report.tablesorter-default thead > tr > th{
   background-color: #022d5b;
}
table.mvc-report > tbody > tr:last-child {
   _border-bottom: 3px solid #022d5b;
   border-bottom: 1px solid #AA0000;
}
table.mvc-report > tbody > tr > td {
   _white-space:nowrap;
   padding:4px;
   font-size: 8pt;
}
#entity_search_results table.mvc-report > tbody > tr > td {
   white-space:nowrap;
}
#selected_search_fields > ul > li > ul > li {
   white-space:unset;
}
#selected_search_fields > ul > li > ul > li:last-child {
   color: #022d5b;
   display: inline;
}
#selected_search_fields.active {
   background-color: #78a13f;
}
.workflow_container table.mvc-report.mvc-report-attr-value > tbody > tr > td,
#cpanel_container table.mvc-report.mvc-report-attr-value > tbody > tr > td {
   padding: 3px;
   font-size: 8pt;
}
.workflow_container table.mvc-report.mvc-report-attr-value > tbody > tr > td,
#cpanel_container table.mvc-report.mvc-report-attr-value > tbody > tr > td:last-child {
   white-space:normal;
}
/* report_type changes - for wide descr column in report_type/index */
#entity_search_results table.mvc-report.report_type > tbody > tr > td {
   white-space: normal;
}

.workflow_container h1 {
   font-size:12pt;
}

form.data_input, .form_container {
   _border:0;
   _border-radius:0;
   border: 1px solid #DDD;
   width:80%;
}
.directory_accept_invite .form_container{
    width: auto;
}
table.tabular-form > tbody > tr > td:first-child {
   color: #00539B;
   text-transform: uppercase;
   _font-weight: 600;
   font-size:8pt;
   white-space: normal;
}
table.tabular-form > tbody > tr.field_instructions > td {
   text-transform:none;
   font-size: 11pt;
}
table.tabular-form > tbody > tr.field_heading > td {
   text-transform:none;
   font-size: 11pt;
}

table.tabular-form input,
table.tabular-form select,
table.tabular-form textarea {
   border:1px solid #E8E8E8;
   padding: .5rem 1rem .5rem 1rem;
   border-radius: 4px;
   background-color: #F8F8F8;
   font-family: 'Open Sans', sans-serif;
}

table.tabular-form input[type="color"]{
   padding: 2px;
}

table.tabular-form textarea.error {
   /* override .error in mvc.css */
   padding: .5rem 1rem .5rem 1rem !important;
   border-color: #A82A05 !important;
}

table.tabular-form tr td.required input,
table.tabular-form tr td.required select,
table.tabular-form tr td.required textarea,
input.required,
select.required,
textarea.required
{
   border-width:1px;
   _border-color:#A82A05;
   border-color:#C7C8CA;
   background-color: #F8F8F8;
}
input.required,
select.required,
textarea.required {
   border-color:indianred;
}
table.tabular-form tr td.readonly input,
table.tabular-form tr td.readonly select,
table.tabular-form tr td.readonly textarea {
   background-color: #F8F8F8;
}
table.tabular-form td .input_pre_text,
table.tabular-form td .input_post_text {
   color: #00539B;
   _font-weight:bold;
}

/* form errors */
/* table.tabular-form tr td input.form_error,
table.tabular-form tr td select.form_error,
table.tabular-form tr td textarea.form_error,
table.mvc-report tr td input.form_error,
table.mvc-report tr td select.form_error,
table.mvc-report tr td textarea.form_error { */
input.form_error,
select.form_error,
textarea.form_error {
   border-color:#A82A05 !important;
}
label.form_error {
   color: #A82A05;
   background:none;
   font-style:normal;
}
input.invalid_field{
   background-color: #FFEBDF;
   border: 1px solid #b94a48;
   border-radius: 4px;
   color: #D8000C;
}

div.cpanel_button {
   display: block;
   height: 25px;
   width: 25px;
   background-size: contain;
}

#entity_search_results .button_container, form.data_input .button_container {
padding:10px;
border:0;
}

.entity_preview_dialog {
   border-radius:0;
}

span.action {
   background-color: #002B5C;
   border: 2px solid #002B5C;
   color: #FFF;
   border-radius: 4px;
   font-weight: 400;
   padding: .5rem 2rem;
   transition: background-color .5s,color .5s,border-color .5s;
   cursor:pointer;
   font-size: 10pt;
   text-transform: uppercase;
   text-decoration:none;
   margin: 5px;
   display: inline-block;
}
span.action:hover {
   background-color:#00539B;
   border-color:#00539B;
   color:#FFF
}

#cpanel_container {
   box-shadow: 0px 0px 10px 0px #888888;
   background-color:rgba(255,255,255,0.9);
   backdrop-filter: blur(5px);
}

#cpanel_container .email_signature_container > span{
   font-size: 8pt;
   margin-top: 5px;
   padding-top: 5px;
   display: block;
}
#cpanel_container .email_signature_container .email_signature{
   padding: 5px;
   border: solid 1px #CCC;
   border-radius: 5px;
}
.email_signature p > img {
   max-width: 500px;
}

.ui-dialog-content button.calltoaction {
   _width:100%;
   margin-left:0;
   margin-right:0;
   border-radius: 4px;
}

#entity_search_results.directory_invite table.mvc-report > tbody > tr > td {
   white-space: normal;
}
tr.animated-labels td {
   position: relative;
}
.animated-labels input:focus + label {
   background: #A00;
   color: white;
   font-size: 80%;
   padding: 1px 10px;
   z-index: 2;
   top: -5px;
   left: 10px;
   border-radius: 5px;
}
#role_form .animated-labels input:focus + label {
   font-size: 80%;
   top: -5px;
}
#doc_send_search_role:focus + label,
#subject_of_sent_doc_msg:focus + label {
   background: #A00;
   color: white;
   font-size: 80%;
   padding: 1px 10px;
   z-index: 2;
   top: -8px;
   left: 10px;
   border-radius: 5px;
}

.animated-labels label {
   transition:
      background 0.2s,
      color 0.2s,
      top 0.2s,
      bottom 0.2s,
      right 0.2s,
      left 0.2s;
   position: absolute;
   color: #999;
   padding: 5px 10px;
   top: 10px;
   /* bottom: 0; */
   z-index: -1;
   left: 10px;
}

/* toggle slider */
input:checked + .slider {
   background-color: #a00;
}
input:focus + .slider {
   box-shadow: none;
}

/************************************
 * BREAKPOINT
 ************************************/
@media only screen and (max-width: 1110px) {
}
@media only screen and (max-width: 860px) {
   .login_banner {
      height: 60px;
   }
   #nav_menu_container ul li ul {
      _right: auto;
   }
   body > header > section.bottom > .left .page_heading {
      margin-left: 0px;
      font-size: 16px;
      line-height: 25px;
      display: inline-block;
   }
   body > header > section.bottom > .left .page_subheading {
      display: inline-block;
      font-size: 16px;
      line-height: 25px;
      margin-left: 5px;
   }
   body > header > section.top {
      height:auto;
   }
   body > header > section.top > .left,
   body > header > section.top > .right {
      height: 40px;
   }
   body > header > section.bottom > .left  {
      height: 25px;
      float: none;
      width:100%;
      text-align:center;
      display: flex;
      justify-content: center;
   }
   body > header > section.bottom > .right {
      height:37px;
   }
   body > header > section.bottom > .right .login_user .role_name::after {
      font-size: 5pt;
      width: 15px;
      height: 15px;
   }
   body > header > section.top > .right {
      padding:0;
   }
   body.anonymous > header > section.top > .right > .button_container {
      /* text-align: center; */
   }
   body.anonymous > header > section.top > .right > .button_container > .button.red {
      background-color: #A00;
      border-color: #A00;
   }
   body.anonymous > header > section.top > .right > .button_container > .button.red:hover {
      transition: background-color .5s,color .5s,border-color .5s;
      background-color:#d10000;
      border-color: #d10000;
   }
   body > header > section.bottom {
      height:auto;
   }
   body > header > section.bottom > .right .login_user {
      text-align:center;
      width:100%;
      line-height: 22px;
   }
   body > header > section.bottom > .right .login_user {
      margin:auto;
   }   
   body.anonymous > header > section.top > .right > .button_container > .button {
      padding: 3px 6px;
   }
   body > header > section.bottom > .right .login_user {
      line-height: 17px;
   }
   body > header > section.bottom > .right .user_name,
   body > header > section.bottom > .right .role_name {
      font-size: 10px;
      display: inline-block;
   }
   body > header > section.bottom > .right .login_user .role_name.multi_role::after {
      height:auto;
   }
   #page_menu_container {
      display:block;
      margin: 0;
   }
   #page_context_menu ul {
      top: 110px;
   }
   main {
      margin:0;
   }
   form.data_input, .form_container {
      border:0;
   }
   main.nosession .content {
      width:95%;
   }
   form.data_input, .form_container {
      border:0;
      width:100% !important;
      min-width: auto !important;
      padding:0;
   }
   .login_container {
      box-shadow:none;
      border:0;
      border-radius:0;
      padding:0;
   }
   #nav_menu_container ul li ul {
      top: 40px !important;
   }
}

@media only screen and (max-width: 600px) {

   body > header > section.top > .left,
   body > header > section.bottom > .left,
   body > header > section.top > .right,
   body > header > section.bottom > .right {
      /* float: none; */
      width:100%;
      text-align:center;
      height: 40px;
   }
   body > header > section.bottom > .left  {
      height: 20px;
   }
   body > header > section.bottom > .right {
      height:37px;
   }
   body > header > section.top > .right {
      padding-right: 4px;
      text-align: right;
      line-height: 39px;
      /* background-color: #c9c9c9; */
      /*
      FIXME: placement of navbar at bottom of screen
      position: fixed;
      bottom: 20px;
      z-index:1;
      */
   }
   body > header > section.top > .left {
      background-position: 5px center;
      width: 100px;
   }
   body > header > section.bottom > .left {
      background-position: 5px center;
   }
   body > header > section.bottom > .left .page_heading {
      font-size: 12px;
   }
   body > header > section.bottom > .left .page_subheading {
      font-size: 12px;
   }
   #nav_menu_container {
      float:none;
   }
   #nav_menu > li {
      background-size: contain;
      width: 25px;
      height: 25px;
    }
   #nav_menu_container ul li ul {
      top: 40px !important;
   }
   /*
   FIXME: placement of navbar at bottom of screen
   main {
      padding-bottom: 50px;
   }
   */
   body > footer {
      line-height: 20px;
      height:20px;
      font-size: 7pt;
      /*
      FIXME: placement of navbar at bottom of screen
      _position:fixed;
      */
   }
   /*
   FIXME: placement of navbar at bottom of screen
   #nav_menu_container ul li ul {
      top: 0 !important;
      position: fixed;
   }
   */
   table.manage_assistants {
      min-width:350px;
   }
}