/*******************************
 Style Sheet - RXPreceptor.com
********************************/

/********** CORE STYLES ************************************/
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-size: 0.813rem; margin:0px;	padding:0px; color:#000000; }

#shell { width: 100%; border: none !important; padding: 0px; border-collapse: collapse; background: #ffffff }

img { border: none !important; }

.shell_program {
    padding: 5px !important;
    /*border-bottom: 1px solid #c8dfe5;*/
    vertical-align: middle;
}

.shell_search_row {
    background: #000000 !important;
    padding: 5px !important;
    /*border-bottom: 1px solid #c8dfe5;*/
    vertical-align: middle;
}
.shell_left_nav {
    background: #FFFFFF;
    /*border-bottom: 2px solid #666666;*/
    padding: 0px;
    vertical-align: middle !important;
}

.shell_footer_row {
    background: #FFFFFF !important;
    border-top: 2px solid #666666;
    padding: 5px;
    vertical-align: middle !important;
}

th { text-align: left }
td { vertical-align: top !important }
.nowrap { white-space: nowrap }
.center { text-align: center }
.left { text-align: left }
.qtip { max-width: 620px !important; padding: 10px !important; }
.bubble { cursor: pointer; }
.tooltiptext{
    display: none;
}

.required_form_warning { font-size: 2em; font-weight: bold; color: #ff0000;}

.padding5 { padding: 5px; }

#page_top_nav { display: inline-block !important; white-space: nowrap; }
.floatl { float: left !important; display: inline-block !important; }
.floatr { float: right !important; display: inline-block !important;}
th.center { text-align: center !important; }

#switch_accounts_list { padding: 5px; font-size:1.1em; line-height:1.5em; margin:0px; margin-top: 5px; text-align:right; display:block; clear:both; float: right; background: #fafafa; display: inline-block; -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; }
#switch_accounts_list a { color: #0000ff !important; }
#switch_accounts_list a:hover { color: #001f3f !important; }

#app_content { padding:15px;  }
#app_footer { padding: .9em; background:#efefef; color:#333333; }
.side_bg { background : #FFFFFF; width: 221px; }
.no_margin {margin:0 !important}
form { margin-top:25px; }
.heading_container{
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.btn_container{
    display: flex;
    flex-wrap: wrap;
    gap:5px;
}
.heading {
    color: #363635;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.125;  }

.heading h1 {
    color: #363635;
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.125;
    margin: 0px;
    padding: 0px;  }

.heading_btn a {
    float:right;
    margin-left:3px;
     }


.heading_fullscreen { font-size:1.5em; font-weight:normal;   }
.heading_fullscreen_sub { font-size:1.2em; font-weight:normal; display:block   }

/*  Flexbox layout for popup headings */
.popup_heading_container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.popup_heading_wrapper {
    display: flex;
    min-width: 174px;
    flex-wrap: nowrap;
    list-style: none;
    margin: 0;
    padding: 0;
}
.popup_heading_wrapper .heading_btn a {
    float: none;
}

.heading2 { font-size:1.2em; font-weight:500 !important; color:#666666; float:right;  }
.heading3 { font-size:1rem; font-weight:500 !important; color:#666666;  }

.heading_btn_left a, .heading_btn_snapshot a, #calendar_access a, #switch_accounts, #admin_return a {
    float: left;
    margin-left:5px;
}

.heading_btn_snapshot a {
    margin-top:5px;
}

.heading_btn_left_tight a {
    float:left;
    margin-right: 5px;
    margin-bottom:.9em;
}


#calendar_access a, #switch_accounts, #admin_return a { float:right !important; }

.header_app_logo { float:right !important; margin-right: 10px; margin-top: 5px;
    -webkit-filter:brightness(60%);
    -moz-filter:brightness(60%);
    filter: url(#brightness);
    filter:brightness(60%);
}
.header_app_logo:hover {
    -webkit-filter:brightness(100%);
    -moz-filter:brightness(100%);
    filter: url(#brightness);
    filter:brightness(100%);
}

.hide-if-no-opener {
    display: none;
}

a { text-decoration:none; color:#001f3f; font-weight:bold !important; }
/*a:focus { background: #2694e8; color: #FFFFFF; outline: none !important; }*/
a:hover { color:#333; }
a { color:#001f3f; }
a:hover { color:#333; }

a.custom_links { text-decoration:none; color:#001f3f; font-weight:bold !important; font-size:1em; }
a.custom_links:focus { background:#2694e8; outline: .5px; color: #FFFFFF }
a.custom_links:hover { color:#069; }
a.custom_links { color:#001f3f; }
a.custom_links:hover { color:#069; }

a.upper_nav { text-decoration:none; color:#666666; font-weight:bold !important; font-size:1em; line-height:22px; display:block; }
a.upper_nav:focus { background:#2694e8; outline: .5px; color: #FFFFFF }
a.upper_nav:hover { color:#333; }
a.upper_nav { color:#666666; }
a.upper_nav:hover { color:#333; }

/* Table Properties */
.list { margin-top:25px; margin-bottom:25px; width:100%; outline:none; border-collapse: collapse;   }
.list tr:nth-child(odd)  { background:#f8f8f8; border-top:1px solid transparent  }
.list tr:nth-child(even)  { border-top:1px solid transparent  }
.list tr:hover  { background:#f3f3f3;  }
.list td { vertical-align:top; padding: 5px; }

.list th { border-bottom:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3;
    padding: 5px; }

a.document-library-toggle-options {
    cursor: pointer;
    font-weight: normal;
}

a.document-library-toggle-options:hover {
    text-decoration: underline;
}

.list tr.document-library-section-header {
    cursor: pointer;
    background: transparent;
}

.list tr th span.document-file-count {
    font-weight: normal;
    font-size: 75%;
}

.listv2 { margin-top:25px; margin-bottom:25px; width:100%;  outline:none;  }
.listv2 tr:nth-child(odd)  { background:#f8f8f8; border-top:1px solid #999999; }
.listv2 tr:hover  { background:#ebeaea; border-top:1px solid #999999; border-bottom:1px solid #999999; }
.listv2 td { vertical-align:top; }

.listv2 th { border-bottom:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; }



.list_encounter { margin-top:0px; margin-bottom:0px; width:100%; border-collapse: collapse; border: none;
    outline:none;  }
.list_encounter tr:nth-child(odd)  { background:#f8f8f8; }
.list_encounter tr:hover  { background:#ebeaea; }
.list_encounter td { vertical-align:top; padding: 5px; }

.list_encounter th { border-bottom:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; padding: 5px;  }

.list tr.profile_req th { border-bottom:1px solid #CCC; border-top:1px solid #CCC; font-size:1em; font-weight:500 !important; text-align:left; color:#000000; background:#efefef; }

.document-table th {
    font-size: 1.3em;
}
.document-table .document-library-section-header th {
    padding: 10px 5px;
}
.document-table .document-library-section-content th {
    text-transform: uppercase;
    font-size: 0.75rem;
}
.document-table .document-library-section-content td>p {
    margin: 0;
}
.document-table td {
    vertical-align: middle !important;
    font-size: 1rem;
}
.document-table td {
    vertical-align: top !important;
    font-size: 0.875rem;
}

.document-library-section-header .fa-folder {
    display: none;
}

.document-library-hidden .fa-folder {
    display: inline-block;
}

.document-library-hidden .fa-folder-open {
    display: none;
}
.subfolder-table-header-row i {
    margin-right: 15px;
}
.list_short { border:1px solid #999; }
.list_short tr:nth-child(odd)  { background:#f8f8f8; border-top:1px solid #999999; }
.list_short tr:hover  { background:#ebeaea;  }
.list_short td { vertical-align:top; }

.list_short th { border-bottom:1px solid #CCC; border-top:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; }

.list_label { text-align:left; font-weight:500 !important; vertical-align:top; border-right:1px solid #CCC; }

.inner_table {  }


.list_sort { border:1px solid #999; margin-bottom:25px; margin-top:15px; width:100%  }
.list_sort tr:nth-child(even)  { background:#f8f8f8; border-top:1px solid #999999; }
.list_sort tr:hover  { background:#ebeaea;  }
.list_sort th { border-bottom:1px solid #CCC; border-right:1px solid #CCC; border-top:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#333333; background:#f2f3f3; white-space:nowrap; cursor:pointer; padding-right:30px; background:url(/images/cc/icons/double_sort.png) no-repeat right; }
.list_sort th:hover { background:url(/images/cc/icons/double_sort.png) no-repeat right; background-color:#999; color:#efefef;}
.list_sort td { border-bottom:1px solid #efefef; border-right:1px solid #efefef; vertical-align:top;  }


.shade { background:#efefef; }

.list_special { border:1px solid #999; margin-top:15px; margin-bottom:25px; width:100%; border-collapse: collapse;  }
.list_special th, .list_special .tfooter { border-bottom:1px solid #999999; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#d2dbe8; padding:5px;   }
.list_special th.clearstyle { border: none; font-size:1em; font-weight:500 !important; text-align:left; color:#000000; background:#ffffff; padding:5px; border-bottom:none; border-top:none;   }
.list_special td { border-bottom:1px solid #efefef; vertical-align:top; padding:5px; }
.list_special td.clearstyle { border-bottom:none; vertical-align:top; padding:5px; }
.list_special td.inner_table { border-bottom:none; vertical-align:top; padding:0px; }
.list_special .survey_th { border-bottom:1px solid #CCC; border-top:1px solid #CCC; font-size:1em; font-weight:500 !important; text-align:left; color:#333333; background:#f2f3f3; }

.title a { line-height:32px; border:1px solid #ccc; background:#efefef; padding:5px; text-align:center; margin:5px 5px 5px 0; display:inline;-moz-border-radius:3px;-webkit-border-radius:3px; border-radius:3px;}
.title a:hover { background:#dedddd; }



.heading_btn_left a,
.heading_btn_left_tight a,
.heading_btn_snapshot a,
#calendar_access a,
#switch_accounts,


.heading_btn_left a:active,
.heading_btn_left_tight a:active,
.heading_btn_snapshot a:active,
#calendar_access a:active,
#switch_accounts:active
{

    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #e2f1fd));
    background:-moz-linear-gradient(top, #ffffff 5%, #e2f1fd 100%);
    background:-webkit-linear-gradient(top, #ffffff 5%, #e2f1fd 100%);
    background:-o-linear-gradient(top, #ffffff 5%, #e2f1fd 100%);
    background:-ms-linear-gradient(top, #ffffff 5%, #e2f1fd 100%);
    background:linear-gradient(to bottom, #ffffff 5%, #e2f1fd 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e2f1fd',GradientType=0);
    background-color:#e2f1fd;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    border:1px solid #dcdcdc;
    display:inline-block;
    cursor:pointer;
    color:#666666;
    font-weight:500 !important;
    padding:4px 4px;
    text-decoration:none;
    text-shadow:0px 1px 0px #e2f1fd;
}

#admin_return a,
#admin_return a:active
{

    display:inline-block;
    cursor:pointer;
    color:#FFFFFF;
    font-weight:500 !important;
    padding:4px 4px;
    text-decoration:none;

}
#admin_return a:hover
{
    color:#efefef;
}
#admin_return a {
    margin-top: 3px !important;
}

.heading_btn_left a:focus,
.heading_btn_left_tight a:focus,
.heading_btn_snapshot a:focus,
#calendar_access a:focus,
#switch_accounts:focus
{
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #c5d2dc), color-stop(1, #ffffff));
    background:-moz-linear-gradient(top, #c5d2dc 5%, #ffffff 100%);
    background:-webkit-linear-gradient(top, #c5d2dc 5%, #ffffff 100%);
    background:-o-linear-gradient(top, #c5d2dc 5%, #ffffff 100%);
    background:-ms-linear-gradient(top, #c5d2dc 5%, #ffffff 100%);
    background:linear-gradient(to bottom, #c5d2dc 5%, #ffffff 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(  startColorstr='#f6f6f6', endColorstr='#ffffff',GradientType=0);
    background-color:#c5d2dc;
    /*outline: none !important;*/
}

.heading_btn_left a:hover,
.heading_btn_left_tight a:hover,
.heading_btn_snapshot a:hover,
#calendar_access a:hover,
#switch_accounts:hover
{
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #f6f6f6), color-stop(1, #ffffff));
    background:-moz-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-webkit-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-o-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-ms-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:linear-gradient(to bottom, #f6f6f6 5%, #ffffff 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6f6f6', endColorstr='#ffffff',GradientType=0);
    background-color:#f6f6f6;
}

a.edit_btn_snap {

    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #f6f6f6));
    background:-moz-linear-gradient(top, #ffffff 5%, #cccccc 100%);
    background:-webkit-linear-gradient(top, #ffffff 5%, #cccccc 100%);
    background:-o-linear-gradient(top, #ffffff 5%, #cccccc 100%);
    background:-ms-linear-gradient(top, #ffffff 5%, #cccccc 100%);
    background:linear-gradient(to bottom, #ffffff 5%, #cccccc 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=0);
    background-color:#ffffff;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    border:1px solid #cccccc;

    cursor:pointer;
    color:#666666;
    font-size:0.688rem;
    font-weight:500 !important;
    padding:2px 4px;
    text-decoration:none;
    text-shadow:0px 1px 0px #ffffff;
}
a.edit_btn_snap:focus { background:#2694e8; /*outline: none !important;*/ color: #000000 }
a.edit_btn_snap:hover {
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #f6f6f6), color-stop(1, #ffffff));
    background:-moz-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-webkit-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-o-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:-ms-linear-gradient(top, #f6f6f6 5%, #ffffff 100%);
    background:linear-gradient(to bottom, #f6f6f6 5%, #ffffff 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6f6f6', endColorstr='#ffffff',GradientType=0);
    background-color:#f6f6f6;
}



a.alert { color:#000000 !important; }


a.view_doc_btn { padding:3px; background:#096DD9; border:1px solid #999; color:#ffffff; font-size:.9em; text-transform:uppercase; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; display: inline-block;
    /*max-width: 40px;*/
    text-align: center;}
a.view_doc_btn:focus { background:#096DD9; outline: 1px dashed #000000 !important; color: #FFFFFF }
a.view_doc_btn:hover { background:#0754A6; color:#ffffff }
a.btn { padding:2px; background:#b2f7ae; border:1px solid #999; color:#333333; font-size:.9em; text-transform:uppercase; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; display: block; text-align: center }
a.btn:focus { background:#2694e8; /*outline: none !important;*/ color: #FFFFFF }
a.btn:hover { background:#98ed94; cursor: pointer; }

#user_info { margin-left:8px; width:195px; border:none; padding:.3em; color:#000000; font-size:1em; text-decoration:none; cursor:pointer;   }

#user_info a { color:#666666; }
#user_info a:focus { background:#efefef; /*outline: none !important;*/ -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; color: #000000 }
#user_info a:hover { color:#666666; }
#user_info a { color:#666666; }
#user_info a:hover { color:#333333; }

.select_elective {
    background:#efefef; border: 1px solid crimson; outline: none !important; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color: #000000; height: 12px; padding-left: -2px;
}

.form_tbl { margin-top:.9em; margin:auto; width:100%; padding:5px; border-collapse: collapse }
.form_tbl th, .form_tbl td.th { border-bottom:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; padding:5px; }
.form_tbl th.subth { border-bottom:1px solid #CCC; font-size:1.1em; font-weight: 500!important; text-align:left; color:#000000; background:#f7f7f7; padding:5px; }
.form_tbl td { vertical-align:top; padding:5px; }
.form_tbl tr:hover  { background:#f8f8f8;  }
.form_label { text-align:right; font-size:1em; font-weight:500 !important; vertical-align:top; width:175px; }
.sub_label { font-size:.7em; font-weight:normal; line-height: .8em }
.form_label_short { text-align:right; font-size:1em; font-weight:500 !important; vertical-align:top; width:100px; }
.form_label_long { text-align:right; font-size:1em; font-weight:500 !important; vertical-align:top; padding-top:.9em; width:350px; }
.form_label_medium { text-align:right; font-size:1em; font-weight:500 !important; vertical-align:top; width:250px; }
.form_required { display:block; color:#800000; font-size:.9em; font-style:italic; font-weight:500 !important; }
.form_tbl .reminder_alert { background:url(/images/cc/icons/reminder.jpg) no-repeat right; }

th.form_section_title { font-size:1.5em; font-weight: 500 !important; }
.form_label_long_settings { text-align:right; font-size:1.2em; font-weight: 500 !important ; vertical-align:top; padding-top:.9em; width:350px; }
.form_label_desc { text-align:right; clear: both; font-size:.75em; font-weight:normal; vertical-align:top; padding-top:.5em; }

/*strong { font-weight: 500 !important }*/

.form_tbl label {
    cursor: pointer;
    padding: 3px 6px;
    border-radius: 8px;
}

.form_tbl label [type="radio"] {
    margin-left: 1px;
    cursor: pointer;
}

.form_tbl label:hover {
    background: #DDD;
}

.form_tbl label.no-bg-hover {
    padding: 0;
}

.form_tbl label.no-bg-hover:hover {
    background: transparent;
    padding: 0;
}

.form_tbl label.nobg {
    cursor: pointer;
    padding: 0px !important;
    border-radius: 0px !important;
}



.form_warning {  margin:.9em 0 .9em 0; }
.form_warning .error { background-color:#FFBABA; color:#5f292c; padding:5px; font-size:1.1em; font-weight:500 !important; clear:both }
.form_warning .success { background-color:#DFF2BF; color:#2e510a; padding:5px;  font-size:1.1em; font-weight:500 !important; clear:both  }
.form_warning .success:hover {  background-color:#CFE2AF;}

input[type=password].style-input, input[type=text], input[type=search], input[type=number], input[type=email], select, textarea{  border: 1px solid #585858; padding:7px; background : #fff; color : #111; margin : 2px 0;  -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; font-size:1.1em !important; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif;  }
select { display:inline; }
input[type=text],input[type=search], textarea { width:375px; }
input[type="checkbox"][disabled][checked] {
    filter: invert(200%) hue-rotate(18deg) brightness(5) contrast(200%);
}
textarea.short { width:250px; }
textarea.extra_short { width:200px; }
input[type=text].date { width:80px; }
input[type=text].short { width:200px; }
input[type=text].number, input[type=number].number { width:25px; }
input[type=text].number_long, input[type=number].number_long { width:50px; }
textarea.notes { width:300px; }
input[type="checkbox"] { display:inline;  border:none; }
input[type="radio"] { display:inline;  background:none; border:none }
fieldset { border: none !important; padding: 0px; margin: 0px; }
fieldset legend.form_label { display: inline-block; text-align: right; font-size: 1em; font-weight: 500 !important; vertical-align: top; width: 175px; margin: 0; padding: 0; }

input[type=submit], button.rxbutton, button.submit {
    background-color:#294F6D;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    display:inline-block;
    cursor:pointer;
    color:#ffffff;
    font-size:0.75rem;
    font-weight:500 !important;
    padding:5px 14px;
    text-decoration:none;
    border: none !important;
}
input[type=submit]:hover:not(.rxbutton), button.rxbutton:hover {
    background-color:#1e62d0;
    color: #ffffff;
}
/* Focus indicator: 3:1 contrast for WCAG 2.2 Level AA (1.4.11 Non-text Contrast) */
input[type=submit]:focus, input[type=submit]:focus-visible,
button.rxbutton:focus, button.rxbutton:focus-visible {
    background-color: #1e62d0;
    color: #ffffff !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 2px !important;
}
input:hover, textarea:hover, select:hover, input:focus, textarea:focus, select:focus { border:1px solid #6a6a6a }

/* Keyboard focus indicator for accessibility - WCAG 2.4.7 */
/* Ensure visible focus indicators for select elements */
select:focus,
select:focus-visible {
    outline: 1px dashed #212121 !important;
    outline-offset: 2px !important;
    border-color: #212121 !important;
}

/* DataTables length menu select focus indicator */
.dataTables_length select:focus,
.dataTables_length select:focus-visible {
    outline: 2px solid #212121 !important;
    outline-offset: 2px !important;
    border-color: #212121 !important;
}

/* DataTables filter input focus indicator */
.dataTables_wrapper .dataTables_filter input:focus,
.dataTables_wrapper .dataTables_filter input:focus-visible {
    outline: 2px solid #212121 !important;
    outline-offset: 2px !important;
    border-color: #212121 !important;
}

/* DataTable search input - match #fname styling */
div.dt-container .dt-search input {
    border-color: #737373 !important;
}

div.dt-container .dt-search input:focus,
div.dt-container .dt-search input:focus-visible {
    border-color: #096DD9 !important;
    outline: 1px dashed #737373 !important;
    outline-offset: 2px !important;
}

/* DataTable pagination button styling */
.dt-paging-button {
    color: #333333 !important;
    box-sizing: border-box !important;
    border: none !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

button.dt-paging-button.current,
button.dt-paging-button.current:hover,
.dt-paging-button.current,
.dt-paging-button.current:hover {
    background-color: #333333 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    border: none !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

button.dt-paging-button.current:focus,
button.dt-paging-button.current:focus-visible,
.dt-paging-button.current:focus,
.dt-paging-button.current:focus-visible {
    background-color: #333333 !important;
    color: #ffffff !important;
    outline: 1px solid #333333 !important;
    outline-offset: 2px !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Ensure current button focus states have borders and white text */
div.dt-container .dt-paging button.dt-paging-button.current:focus,
div.dt-container .dt-paging .dt-paging-button.current:focus,
nav button.dt-paging-button.current:focus,
button.dt-paging-button.current:focus,
div.dt-container .dt-paging button.dt-paging-button.current:focus-visible,
div.dt-container .dt-paging .dt-paging-button.current:focus-visible,
nav button.dt-paging-button.current:focus-visible,
button.dt-paging-button.current:focus-visible {
    color: #ffffff !important;
    outline: 1px solid #333333 !important;
    outline-offset: 2px !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Ensure white text color for current pagination button - maximum specificity */
div.dt-container .dt-paging button.dt-paging-button.current,
div.dt-container .dt-paging .dt-paging-button.current,
nav button.dt-paging-button.current,
button.dt-paging-button.current[aria-current="page"],
div.dt-container .dt-paging button.dt-paging-button.current:hover,
div.dt-container .dt-paging .dt-paging-button.current:hover,
nav button.dt-paging-button.current:hover,
button.dt-paging-button.current:hover[aria-current="page"] {
    color: #ffffff !important;
    box-sizing: border-box !important;
    border: none !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

.dt-paging-button:hover:not(.current):not(.disabled) {
    background-color: #CCCCCC !important;
    color: #333333 !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Ensure hover background color for non-current pagination buttons - maximum specificity */
div.dt-container .dt-paging button.dt-paging-button:hover:not(.current):not(.disabled),
div.dt-container .dt-paging .dt-paging-button:hover:not(.current):not(.disabled),
nav button.dt-paging-button:hover:not(.current):not(.disabled),
button.dt-paging-button:hover:not(.current):not(.disabled),
div#DataTables_Table_0_wrapper .dt-paging button.dt-paging-button:hover:not(.current):not(.disabled),
div#DataTables_Table_0_wrapper .dt-paging .dt-paging-button:hover:not(.current):not(.disabled) {
    background-color: #CCCCCC !important;
    background: #CCCCCC !important;
    color: #333333 !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Ensure current button has no border on hover */
div.dt-container .dt-paging button.dt-paging-button.current:hover,
div.dt-container .dt-paging .dt-paging-button.current:hover,
nav button.dt-paging-button.current:hover,
button.dt-paging-button.current:hover {
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

.dt-paging-button:focus:not(.current):not(.disabled),
.dt-paging-button:focus-visible:not(.current):not(.disabled) {
    background-color: #CCCCCC !important;
    color: #333333 !important;
    outline: 1px solid #333333 !important;
    outline-offset: 2px !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Ensure focus states have borders for all pagination buttons */
div.dt-container .dt-paging button.dt-paging-button:focus:not(.current):not(.disabled),
div.dt-container .dt-paging .dt-paging-button:focus:not(.current):not(.disabled),
nav button.dt-paging-button:focus:not(.current):not(.disabled),
button.dt-paging-button:focus:not(.current):not(.disabled),
div.dt-container .dt-paging button.dt-paging-button:focus-visible:not(.current):not(.disabled),
div.dt-container .dt-paging .dt-paging-button:focus-visible:not(.current):not(.disabled),
nav button.dt-paging-button:focus-visible:not(.current):not(.disabled),
button.dt-paging-button:focus-visible:not(.current):not(.disabled) {
    outline: 1px solid #333333 !important;
    outline-offset: 2px !important;
    border: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
}

/* Disabled pagination buttons - no hover or focus effects */
.dt-paging-button.disabled,
.dt-paging-button.disabled:hover,
.dt-paging-button.disabled:focus,
.dt-paging-button.disabled:focus-visible,
button.dt-paging-button.disabled,
button.dt-paging-button.disabled:hover,
button.dt-paging-button.disabled:focus,
button.dt-paging-button.disabled:focus-visible {
    background-color: transparent !important;
    background: transparent !important;
    color: #333333 !important;
    border: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
    cursor: default !important;
}

/* Disabled buttons - maximum specificity to override all hover/focus styles */
div.dt-container .dt-paging button.dt-paging-button.disabled,
div.dt-container .dt-paging .dt-paging-button.disabled,
nav button.dt-paging-button.disabled,
button.dt-paging-button.disabled,
div.dt-container .dt-paging button.dt-paging-button.disabled:hover,
div.dt-container .dt-paging .dt-paging-button.disabled:hover,
nav button.dt-paging-button.disabled:hover,
button.dt-paging-button.disabled:hover,
div.dt-container .dt-paging button.dt-paging-button.disabled:focus,
div.dt-container .dt-paging .dt-paging-button.disabled:focus,
nav button.dt-paging-button.disabled:focus,
button.dt-paging-button.disabled:focus,
div.dt-container .dt-paging button.dt-paging-button.disabled:focus-visible,
div.dt-container .dt-paging .dt-paging-button.disabled:focus-visible,
nav button.dt-paging-button.disabled:focus-visible,
button.dt-paging-button.disabled:focus-visible {
    background-color: transparent !important;
    background: transparent !important;
    color: #333333 !important;
    border: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    min-width: 32px !important;
    height: 33px !important;
    cursor: default !important;
}

.selection input[type=submit] { font-size:1em; line-height:1em; font-weight:normal; border:1px solid #ccc; background: #666666; padding:4px; color:#ffffff; text-align:center; display:inline;-moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; cursor:pointer; margin:0px; }
.selection input[type=submit]:hover { background:#000000; color:#efefef; }

.selection_all input[type=submit] { font-size:1em; line-height:1em; font-weight:normal; border:1px solid #ccc; background: #333333; padding:4px; color:#ffffff; text-align:center; display:inline;-moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; cursor:pointer; margin:0px; }
.selection_all input[type=submit]:hover { background:#000000; color:#efefef; }

.selection_btn input[type=submit], a.selections, .selection_btn a.apply_btn {
    color: white !important;
    border-radius: 4px !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) !important;
    background: rgb(28, 184, 65) !important;
}
.selection_btn input[type=submit]:hover, a:hover.selections, .selection_btn a:hover.apply_btn { background:#000000 !important; color:#efefef !important; }


.button_variation { font-size:1em; line-height:1.2em; font-weight:500 !important; border:1px solid #ccc; background: #666666; padding:5px; color:#efefef; text-align:center; margin:5px 5px 5px 0; display:inline;-moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
.button_variation:hover { background:#000000; color:#efefef; }

.date_field, .date_field_limited { width:75px !important; }
.errormessage .field_error { color:#F03; display:block; padding:5px; font-weight:500 !important; background:url(/images/cc/icons/error_arrow.jpg) no-repeat left; padding-left:20px; }
.field_error { color:#F03; display:block; padding:5px; font-weight:500 !important; background:url(/images/cc/icons/error_arrow.jpg) no-repeat left; padding-left:20px; }
#ui-datepicker-div { display: none; z-index: 100002!important; }

.cell_border_bottom { border-bottom:1px solid #666; }
.cell_border_top { border-top:1px solid #666; }
.cell_border_right { border-right:1px solid #666; }
.cell_border_left { border-left:1px solid #666; }

.red { color:#800000; font-weight:500 !important; }
.orange { color: #f4510c; font-weight:500 !important; }
.red_normal { color:#800000; font-weight:normal; }
.green { color: #009900 }
.blue { color: #002a80 }
.dark_blue { color:#005C99; font-weight:500 !important; }
.black { color:#000000; font-weight:500 !important; }
td.dark_green { color:#090; font-weight:500 !important; }
.blue { color: #007eff; }
.t8 { font-size:.7em; }
.t10 { font-size:.9em; }
.t12 { font-size:1.1em;  }
.t14 { font-size:1.2em; }
.t16 { font-size:1.3em; }
.t18 { font-size:1.4em; }
.l18 { line-height: 1.4em; }

h1 { font-size: 1.4em }
h2 { font-size: 1.2em }
h3 { font-size: 1.1em }

.fs1x { font-size:1rem !important; }
.fs15x { font-size:1.5rem !important; }
.fs2x { font-size:2rem !important; }

.fw300 { font-weight: 300 !important }
.fw400 { font-weight: 400 !important }
.fw500 { font-weight: 500 !important }


button.confirm_hours, a.confirm_hours { font-size:1.7em; font-weight:normal; color:#ffffff; padding:5px; background:#393; border:1px solid #cccccc; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;  cursor:pointer; margin-top: 15px !important; }
button.deny_hours, a.deny_hours { font-size:1.7em; font-weight:normal; color:#ffffff; padding:5px; background:#F33; border:1px solid #cccccc; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;  cursor:pointer; margin-top: 15px !important;   }
button.confirm_hours:hover, a.confirm_hours:hover {background:#065d06; }
button.deny_hours:hover, a.deny_hours:hover {background:#b00707; }
#outputContainer, .outputContainer { display: block; background-color: #ffffff; border:1px solid #ccc; z-index: 9999	}
#outputContainer a, .outputContainer a { display: block; padding: 5px; text-align:left;	border-left: .1pt #cccccc solid; border-right: .1pt #cccccc solid;	color:#0066FF;	text-decoration:none; margin-top: 3px; border: 0}
#outputContainer a:hover, .outputContainer a:hover { background-color: #efefef; }

/* List markup accessibility styles */
.listholder {
    list-style: none;
    margin: 0;
    padding: 0;
}

.listholder li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.clear { clear:both; }

.modules_on { float:left; border:1px solid #cccccc; height:110px; margin-right:11px; margin-bottom:1em; background:url(/images/cc/modules_block_bg.jpg); -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }

.modules_off { float:left; border:1px solid #cccccc; height:110px; margin-right:11px; margin-bottom:1em; background:url(/images/cc/modules_block_bg_off.jpg); -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }

th.lottery { background:#FFF; padding:.9em; }
a.clear_lottery { font-size:1.2em; font-weight:normal; color:#ffffff; padding:5px; background:#F33; border:1px solid #cccccc; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;  cursor:pointer;  }
a.clear_lottery:hover { background:#F00; }

a.run_lottery { font-size:1.2em; font-weight:normal; color:#ffffff; padding:5px; background:#393; border:1px solid #cccccc; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;  cursor:pointer;  }
a.run_lottery:hover { background:#363 }

/* EVALUATIONS */
.heading_evaluation { font-size:1.2em; font-weight:normal; padding-bottom:.9em;   }
td.question p { margin-top:0px; }
th.eval_header { font-size:1.5em; font-weight:500 !important; background:#efefef; text-align:left }
th.eval_title_header { font-size:1.5em; font-weight:500 !important; background:#cccccc; text-align:left }
th.eval_section_header { font-size:1.2em; font-weight:500 !important; background:#cccccc; text-align:left }
th.eval_footer { font-size:1.1em; font-weight:500 !important; background:#efefef; text-align:left; border:1px solid #CCC }
th.eval_section_avg_header { font-size:1.2em; font-weight:500 !important; }
.eval_description_heading { font-size:1.2em; font-weight:500 !important; text-align:left }
.eval_section_weight { font-size:.7em; font-weight:500 !important; float:right }
.eval_section_description { font-size:.7em; text-align:left; font-weight:normal; }
.question_col_1 { font-size:1.1em; text-align:left; vertical-align:top; width:630px; border-bottom:5px solid #efefef;  }
.question_col_2 { font-size:1.1em; text-align:left; vertical-align:top; width:180px; border-bottom:5px solid #efefef;  }
.question_col_1_fullscreen { font-size:1.1em; text-align:left; vertical-align:top; border-bottom:5px solid #efefef;  }
.question_col_2_fullscreen { font-size:1.1em; text-align:left; vertical-align:top; width:225px; border-bottom:5px solid #efefef;  }
.component_header {padding:3px 0px; border-bottom: 1px solid #666; color: #666; font-weight: 500 !important; }
.component_text {padding:.9em 0px; border-bottom: 1px solid #ccc; font-size: 1.1em; color: #000000; font-weight: 500 !important;}
.comp_required {font-size: 0.563rem;}
.text_right {text-align: right; width:125px;}
#score_table tr td { padding:0px 20px; border-right: 1px solid #ccc; }
#score_table tr td:last-child { padding:0px 20px; border-right: none; }
a.edit_btn_eval { padding:3px; background:#666; border:1px solid #999; color:#ffffff; font-size:.7em; text-transform:uppercase; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; float:right; margin-left:.9em; }
a.edit_btn_eval:hover { background:#333; color:#ffffff }
a.edit_btn_eval_question { padding:3px; background:#666; border:1px solid #999; color:#ffffff; font-size:.7em; text-transform:uppercase; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px;   }
a.add_btn_eval { padding:3px; background:#666; border:1px solid #999; color:#ffffff; font-size:.7em; text-transform:uppercase; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; float:left; }
a.add_btn_eval:hover { background:#333; color:#ffffff }
#eval_time_reminder { font-size:1.2em; font-weight:normal; background-color:#F66; color:#000; border:1px solid #F00; padding:5px; margin-top:.9em; }

/* REPORTS */
#report_header { }
#report_header_border { clear:both;  }
#report_logo { float:left; width:225px; margin-bottom: 15px !important;  }
.report_btn { float:left; margin-right:.9em; padding:5px; background:#efefef; border:1px solid #cccccc; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer; margin-bottom:20px; }
.report_btn:hover { background:#dedddd; }
#report_title { font-size:1.25rem; font-weight:500 !important; }


.list_report { border:1px solid #999; border-bottom: none !important; margin-bottom:25px; margin-top:15px; width:100%; }
.list_report tr:nth-child(even)  { background:#f8f8f8; }
.default_row { background:none;  }
.list_report tr:hover  { background:#ebeaea;  }
.highlight_row  { background: #CFF !important;  }
.list_report th { border-bottom:1px solid #CCC; border-right:1px solid #CCC; border-top:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#333333;  white-space:nowrap; cursor:pointer; padding: 5px; padding-right:20px; background:url(/images/cc/icons/double_sort.png) no-repeat right #a9d2ee !important;   }
.list_report th:hover { background:url(/images/cc/icons/double_sort.png) no-repeat right #999 !important; color:#333333;}
.list_report td { border-bottom:1px solid #efefef; border-right:1px solid #efefef; vertical-align:top; white-space:nowrap; padding: 5px; }

.list_report td.description { white-space:normal !important; }
.list_report th.description { white-space:normal !important; }

th div.wrap_table_header { white-space:normal !important; min-width: 70px; max-height: 100px !important; overflow: auto; }
td div.wrap_table_cell { white-space:normal !important;  max-height: 100px !important; overflow: auto; display: block; }
td div.wrap_table_cell_v2 { white-space:normal !important;  max-height: 200px !important; max-width: 200px; width: 200px; overflow: auto; }
td div.wrap_table_cell_v2_expand { white-space:normal !important; overflow: visible;}
.list_report input[type=submit], .list_report .view_btn { font-size:0.563rem !important; border:1px solid #ccc; background: #666666; padding:3px 2px 3px 2px !important ; color:#efefef; text-align:center;  -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; cursor:pointer; margin: 0 0 0 0 !important; line-height:.9em !important; display:inline;}
.list_report input[type=submit]:hover, .list_report .view_btn:hover { background:#363636; color:#efefef;  cursor:pointer  }
.list_report form { margin:0px; padding:0px; }



.list_report_nosort { border:1px solid #999; margin-bottom:25px; margin-top:15px; width:100%  }
.list_report_nosort tr:nth-child(even)  { background:#f8f8f8; border-top:1px solid #999999; }
.list_report_nosort tr:hover  { background:#ebeaea;  }
.list_report_nosort th { border-bottom:1px solid #CCC; border-right:1px solid #CCC; border-top:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#333333;
    white-space:nowrap; padding: 5px; padding-right:20px; background:#a9d2ee !important;   }
.list_report_nosort td { border-bottom:1px solid #efefef; border-right:1px solid #efefef; vertical-align:top; white-space:nowrap; padding: 5px; }
.list_report_nosort td.description { white-space:normal !important; }
.list_report_nosort th.description { white-space:normal !important; }


.component_tbl th { border-bottom:1px solid #CCC; border-top:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:right; color:#333333; background:#f2f3f3; }
tr.report_footer td { background:#666; color:#FFF; border:none; font-weight:500 !important; }
tr.report_footer td.footer_total { background:#333333; color:#FFF; }
tr.footer_total td { background:#333333; color:#FFF; }
tr.footer_total_light td { background:#cccccc; color:#000; }
/* REQUIREMENTS */
.expired {
	color:#800000;
	font-weight:500 !important;
}

.expires30 {
	/*color:#ff9600;*/
    color: #c54a0b;
	font-weight:500 !important;
}

.expires60 {
	/*color:#ffc675;*/
    color: #a26915;
	font-weight:500 !important;
}

.expires90 {
	/*color:#fddcad;*/
    color: #847004;
	font-weight:500 !important;
}


.handslot_schedule { padding: 8px; background: #d4fbdd; color:#000; margin-bottom: 15px; width:90%; position: relative; }
.handslot_schedule_inactive { padding: 8px; background: #efefef; color:#666666; font-style: italic; margin-bottom: 15px; width:90%; }
.handslot_schedule_inactive_lottery { padding: 8px; color:#666666; font-style: italic; margin-bottom: 15px; width:90%; }
.add_schedule { padding: 5px; margin-bottom: .9em; }
.schedule_coord { padding: 8px; color:#000; margin-top: .9em;  }

#eval_session_warning { padding-bottom: 15px; font-size:1.1em; color:#F03; clear:both; margin-bottom:.9em; border-bottom:5px solid #CCC; }

#target_columns { margin-left:20px; }
#target_columns ul { padding-left:0px; }
#target_columns li { list-style:none; font-size:1.1em; cursor:pointer; }

.simpleon { color:#069; text-decoration:none; }
.simpleoff { color: #C03; text-decoration:line-through }

.warning { font-size:1.1em; color:#F00; font-weight:500 !important; margin-top: 15px; margin-bottom:15px; clear:both; }


ul.score_list {
    list-style-type: none;
    padding: 0px;
    margin: 0px;
}

ul.score_list li {
    background-image: none;
    padding-left: 0px;
}

/* EVAL SCORING STYLES */
.table_scoring { border-collapse:collapse; margin-top:.9em; }
.table_scoring th { background:#b0d7ff; font-size:1.1em; border: 1px solid #999999;  border-collapse:collapse;  }
.table_scoring th.sub_heading { font-size:1.1em; font-weight:normal; vertical-align:top; background:#cce5ff  }
.table_scoring th.blank_row { height: 5px; border: none !important; background:#ffffff; }
.table_scoring td { border: 1px solid #666666; border-collapse:collapse; }
.table_scoring td.midpoint_row { background: #efefef; }
.table_scoring td.final_row { background: #efefef; }
.table_scoring td.blank_row { height: 15px; border: none !important; }
.table_scoring td.midpoint_row_selected { font-size:1em !important; background: #efefef; }
.table_scoring td.final_row_selected { font-size:1em; background: #efefef; }
.table_scoring th.selected_score_header { color:#800000; background:#cce5ff  }
.required_row {background:#FFBABA !important; }
.score_desc { font-size:1em; }
.score_desc_eval { font-size:.8em; }
.eval_label_checkbox {
    border-radius: 5px;
    padding: 2px 6px 0px 0px;
    cursor: pointer;
}

.eval_label_checkbox:hover {
    background-color: #DDD;
}

.eval_label_checkbox input[type='checkbox']{
    margin-right: 1px!important;
    padding-right: 0px!important;
    cursor: pointer;
}

.eval_label_checkbox input[type='radio']{
    margin-right: 1px!important;
    padding-right: 0px!important;
    cursor: pointer;
}

.ui-selectmenu-item-content { font-weight:normal !important; font-size:.8em; }
.ui-selectmenu-item-header { font-weight:bold !important; font-size:.9em; }

.access_filter { margin-top: .9em; }
.td_list { padding-bottom: 5px;  }



td.handle > span:hover {
    cursor: move;
}

td.prospector_field_label_only {
    border: 1px solid #aaaaaa;
    background: #efefef;
    font-size: 1em;
    font-weight: 500 !important;
    padding: .9em;
}
#skip a {
    position:absolute;
    left:-10000px;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
}
#skip a:focus
 {
     position:static;
     width:auto;
     height:auto;
     /*outline: none !important;*/
    color: #000000
 }

.schedule_notes {
    float: right;
    margin-left: 10px;
    width: 10px;
    text-align: center;
    background: #004c98;
    padding: 3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
}


.tooltip-inner {
    white-space: pre-wrap !important;
}

h2.module_groups { clear: both; border-top: 1px solid #efefef; padding-top: 10px; }
.module { width: 200px; height: 150px; float: left; margin-right: 10px; padding: 10px; text-align: center; line-height: 18px; margin-bottom: 15px; }
.module_icon { margin-bottom: 5px; }
.module_name { font-weight: 500 !important; font-size: 1.1em }

/* OFF state: grayscale + brightness for WCAG 2.2 AA non-text contrast ≥3:1 (ELMS-E1125 / ENG-8687) */
img.img_module_off {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 3.5+ */
    filter: gray; /* IE6-9 */
    -webkit-filter: grayscale(100%) brightness(98%); /* Chrome 19+ & Safari 6+ */
    filter: grayscale(100%) brightness(99%); /* Modern browsers: ensures ≥3:1 contrast */
    border-radius: 100%;
}
.hidden { display: none; }
.student_answers { font-size: 0.688rem; padding-top: 10px; color: #0c199c }
.code-display { cursor: pointer; font-size: 0.75rem; }
#daily_schedule td { padding-left: 5px; padding-right: 5px; text-align: center; }

.timeclock_start {
    background-color:#48b93c;
    padding: 5px;
    font-size: 0.75rem;
    letter-spacing: 0.063rem;
    text-decoration: none;
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
    border: none;
    cursor: pointer;
 }
.timeclock_start:hover {
    background-color:#35972a;
}

.timeclock_end {
    background-color:#f90000;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    cursor:pointer;
    color:#ffffff;
    font-weight:500 !important;
    padding:2px 5px 2px 5px;
    text-decoration:none;
    border: none !important;
}

.clock_in_btn:hover {
    color:#000000 !important;
}
.timeclock_end:hover {
    background-color:#d80a0a;
}
.report_action_btn {
    float: left;
    margin-right: 3px;
}

.open_chart { cursor: pointer; }

a.apply_btn {
    font-size:.9em; line-height:1em; font-weight:500 !important; border:1px solid #ccc; background: #999999; padding:4px; color:#ffffff; text-align:center; display:inline;-moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; cursor:pointer; margin:0px;
}
a.apply_btn:focus { background:#333333; color:#efefef; }
a.apply_btn:hover { background:#333333; color:#efefef; }
.doc_list
{
    margin-left: 10px;
    padding-left: 0;
    list-style: none;
}
.doc_list li {padding-left: 25px;
    padding-bottom: 10px;
    background-image: url(/images/cc/icons/doc_icon.gif);
    background-repeat: no-repeat;

}
a.form_btn { font-size:1.2em; text-decoration: none; display: block; width: 200px; font-weight:500 !important; color:#ffffff; padding:10px; background:#393; border:1px solid #cccccc; margin-bottom: 10px; margin-top: 10px; clear: both; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;  cursor:pointer;  }
a.form_btn:hover  { background:#363 }

.help_bubble {
    float: right;
    margin-left: 10px;
    width: 30px;
    text-align: center;
    background: #3399ff;
    padding: 3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
}
.hb { color: #000000 }
.hb_title { font-size: 0.88rem; line-height: 18px; font-weight: 500 !important; color: #000000 }
.hb_desc { font-size: 0.75rem; line-height:16px; margin-top: 10px; color: #000000}
.hb_url { font-size: 0.75rem; font-weight: 500 !important; margin-top: 10px; color: #000000}

.eval_scale { margin-top: 5px; }
.eval_scale td { text-align: center; background-color: #efefef; font-size:  0.688rem; }

.req_alert {
    float: right;
    width: 15px;
    text-align: center;
    background: #800000;
    padding: 2px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}



.req_ok {
    float: right;
    width: 15px;
    text-align: center;
    background: #408140;
    padding: 2px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}
.req_alert_visible {
    width: 400px;
    text-align: left;
    background: #800000;
    padding: 2px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}

.req_ok_visible {

    width: 400px;
    text-align: left;
    background: #408140;
    padding: 2px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}

.req_alert_title { font-size: 0.688rem; line-height: 14px; font-weight: 500 !important; color: #000000 }

#readiness_lookup, .fe_eval { font-size: 0.75rem; line-height: 14px; font-weight: 500 !important; color: #ffffff; display: inline-block; margin-left: 10px; -moz-border-radius:3px;
    -webkit-border-radius:3px; border-radius:3px; margin-right:5px; cursor:pointer; background: #00639c; padding: 6px; margin-top: 1px; }

#readiness_lookup:hover, .fe_eval:hover { background: #0770ad; color: #ffffff }
.readiness_logo_req { float: right; margin-left: 15px; margin-right: 10px; }
input[type=text],select,input[type=search]{

    -webkit-border-radius:4px;
    border-radius:4px;
    border-style:solid;
    border-width:1px;

    outline:none;
    text-shadow:none;

}
input[type=email]:hover,input[type=number]:hover,input[type=password]:hover,input[type=tel]:hover,input[type=text]:hover,input[type=search]:hover{border-color:#000000}
input[type=email]:active,input[type=email]:focus,input[type=number]:active,input[type=number]:focus,input[type=password]:active,input[type=password]:focus,input[type=tel]:active,input[type=tel]:focus,input[type=text]:active,input[type=text]:focus,input[type=search]:active,input[type=search]:focus{border-color:#096DD9}

.account_photo { border-bottom-left-radius:10px;  border-bottom-right-radius:10px; border-top-left-radius:10px; border-top-right-radius:10px;  -moz-border-top-left-radius:10px; -moz-border-top-right-radius:10px; -webkit-border-bottom-left-radius:10px; -webkit-border-bottom-right-radius:10px; }
a p { font-weight: normal; font-size: .8em}

a.start_evaluation {
    -moz-box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    -webkit-box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #6dba69));
    background: -moz-linear-gradient(top, #ffffff 5%, #6dba69 100%);
    background: -webkit-linear-gradient(top, #ffffff 5%, #6dba69 100%);
    background: -o-linear-gradient(top, #ffffff 5%, #6dba69 100%);
    background: -ms-linear-gradient(top, #ffffff 5%, #6dba69 100%);
    background: linear-gradient(to bottom, #ffffff 5%, #6dba69 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e2f1fd', GradientType=0);
    background-color: #6dba69;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    border: 1px solid #dcdcdc;
    display: inline-block;
    cursor: pointer;
    color: #000000;
    font-weight: 500 !important;
    padding: 7px 7px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #efefef;
    font-size: 1.3em;
}

a.preview_evaluation {
    -moz-box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    -webkit-box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    box-shadow: inset 0px 1px 0px 0px #e2f1fd;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #999999));
    background: -moz-linear-gradient(top, #ffffff 5%, #999999 100%);
    background: -webkit-linear-gradient(top, #ffffff 5%, #999999 100%);
    background: -o-linear-gradient(top, #ffffff 5%, #999999 100%);
    background: -ms-linear-gradient(top, #ffffff 5%, #999999 100%);
    background: linear-gradient(to bottom, #ffffff 5%, #999999 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e2f1fd', GradientType=0);
    background-color: #999999;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    border: 1px solid #dcdcdc;
    display: inline-block;
    cursor: pointer;
    color: #000000;
    font-weight: 500 !important;
    padding: 7px 7px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #efefef;
    font-size: 1.3em;
}

.heading_btn a.form_submit_link,
.heading_btn a:link,
a.edit_btn:link,
.heading_btn_instructions a:link
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    margin-left:3px;
}

.heading_btn a:visited,
a.edit_btn:visited,
.heading_btn_instructions a:visited
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
}

.heading_btn a:hover,
.heading_btn a:link:hover,
.heading_btn a:visited:hover,
a.edit_btn:hover,
a.edit_btn:link:hover,
a.edit_btn:visited:hover,
.heading_btn_instructions a:hover,
.heading_btn_instructions a:link:hover,
.heading_btn_instructions a:visited:hover
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid #6a6a6a !important;
}

.heading_btn a:focus,
a.edit_btn:focus,
.heading_btn_instructions a:focus
{
    background-color: #e7e7e7 !important;
    color: #555555 !important;
    border: 1px solid #6a6a6a !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 2px !important;
}

.heading_btn a:active,
a.edit_btn:active,
.heading_btn_instructions a:active
{
    background-color: #e7e7e7 ;
    color: #555555;
}

/* Tab Button Styles - New class for tab navigation */
/* Non-active tabs use secondary button styling */
.tab_btn a,
.tab_btn a:link,
.tab_btn a:visited,
button.tab_btn
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    margin-left:3px;
    cursor: pointer;
    font-family: inherit;
}

.tab_btn a:hover,
.tab_btn a:link:hover,
.tab_btn a:visited:hover,
button.tab_btn:hover
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid #6a6a6a !important;
}

.tab_btn a:focus,
.tab_btn a:link:focus,
.tab_btn a:visited:focus,
button.tab_btn:focus
{
    background-color: #e7e7e7 !important;
    color: #555555 !important;
    border: 1px solid #6a6a6a !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 1px !important;
}

.tab_btn a:active,
button.tab_btn:active
{
    background-color: #e7e7e7 !important;
    color: #555555;
    border: 1px solid #6a6a6a !important;
}

/* Active/current tabs use primary button styling */
/* Primary Button - Default: Bg #666666, Text #FFFFFF */
.tab_btn.active a,
.tab_btn.active a:link,
.tab_btn.active a:visited,
button.tab_btn.active
{
    background-color: #666666 !important;
    border: 1px solid transparent !important;
    color: #ffffff !important;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    margin-left:3px;
}

/* Primary Button - Hover: Bg #333333, Text #FFFFFF */
.tab_btn.active a:hover,
.tab_btn.active a:link:hover,
.tab_btn.active a:visited:hover,
button.tab_btn.active:hover
{
    background-color: #333333 !important;
    color: #ffffff !important;
    border: 1px solid transparent !important;
}

/* Primary Button - Focus: Bg #666666, Text #FFFFFF, Focus ring - black */
.tab_btn.active a:focus,
.tab_btn.active a:link:focus,
.tab_btn.active a:visited:focus,
button.tab_btn.active:focus
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid transparent !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 1px !important;
}

.tab_btn.active a:active,
button.tab_btn.active:active
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid transparent !important;
}

/* Disabled tab buttons - Secondary button style with reduced opacity */
.tab_btn.disabled,
.tab_btn.disabled button,
button.tab_btn.disabled
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555 !important;
    opacity: 0.6 !important;
    cursor: default !important;
    pointer-events: none !important;
}

.tab_btn.disabled:hover,
.tab_btn.disabled button:hover,
button.tab_btn.disabled:hover
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555 !important;
    opacity: 0.6 !important;
}

.tab_btn.disabled:focus,
.tab_btn.disabled button:focus,
button.tab_btn.disabled:focus
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555 !important;
    opacity: 0.6 !important;
    outline: none !important;
}

/* Support for button.edit_btn (for accessibility) */
button.action-menu {
    background-color: #e7e7e7 !important;
    border: none !important;
    color: #555555;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    margin-left:3px;
    cursor: pointer;
    font-family: inherit;
}

button.action-menu:hover {
    background-color: #555555 !important;
    color: #ffffff !important;
    border: none !important;
}

button.action-menu:focus {
    background-color: #555555 !important;
    color: #ffffff !important;
    border: none !important;
    outline: 2px solid #000000 !important;
    outline-offset: 2px !important;
}

button.action-menu:active {
    background-color: #e7e7e7 ;
    color: #555555;
}

a.edit_btn_min:link
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555;
    padding: 3px 8px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .6rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
}

a.edit_btn_min:visited
{
    background-color: #e7e7e7 ;
    border: 1px solid #6a6a6a !important;
    color: #555555;
}


a.edit_btn_min:hover
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid #666666 !important;
}

a.edit_btn_min:focus
{
    background-color: #e7e7e7 !important;
    color: #555555 !important;
    border: 1px solid #6a6a6a !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 2px !important;
}

a.edit_btn_min:active
{
    background-color: #e7e7e7 ;
    color: #555555;
    border: 1px solid #6a6a6a !important;
}

button.edit_btn_min
{
    background-color: #e7e7e7 !important;
    border: 1px solid #6a6a6a !important;
    color: #555555;
    padding: 3px 8px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .6rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: bold !important;
    cursor: pointer;
}

button.edit_btn_min:hover
{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 1px solid #666666 !important;
}

button.edit_btn_min:focus
{
    background-color: #e7e7e7 !important;
    color: #555555 !important;
    border: 1px solid #6a6a6a !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 2px !important;
}

button.edit_btn_min:active
{
    background-color: #e7e7e7;
    color: #555555;
    border: 1px solid #6a6a6a !important;
}

.send-request-button {
    background-color: #2196F3; /* blue */
    color: white;
    padding: 8px 16px;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s ease;
}

.send-request-button:hover {
    background-color: #1976D2; /* darker blue on hover */
}
.ellipsis-td {
    max-width: 150px;         /* Set a width or max-width */
    white-space: nowrap;      /* Prevent wrapping */
    overflow: hidden;         /* Hide overflow */
    text-overflow: ellipsis;  /* Add "..." at the end */
}

.button-area
{
    clear:both;
    margin-bottom:10px;
    width: 150px;
    display: flex;
    gap: 10px;
    flex-direction: column;
}

.heading_btn_instructions a:link { background:#dc3030 !important; color: #ffffff !important; float:right; cursor:pointer;  }
.heading_btn_instructions a:hover, .heading_btn_instructions a:focus, .heading_btn_instructions a:active { background:#800000 !important; color: #ffffff !important }

tr.form_section_header_row td { border-bottom:1px solid #CCC; font-size:1.2em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; }
.survey_checkbox { font-size: 0.88rem !important; }

.cf_number_field {
    width: 150px!important;
}
a.edit_btn_form:link, a.edit_btn_form:visited { padding:4px; background:#dc3030; border:1px solid #800000; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; cursor:pointer; color:#FFFFFF; margin-top: 5px; }
 a.edit_btn_form:hover{ background: #9E0000;} a.edit_btn_form:focus, a.edit_btn_form:active { background:#D10000;  color:#FFFFFF; outline: 1px dashed #000000 !important; outline-offset: 2px !important; /*outline: none !important;*/ }

 a.edit_btn_form_complete:link, a.edit_btn_form_complete:visited { padding:4px; background:#005b00; border:1px solid #043f04; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; cursor:pointer; color:#FFFFFF;  margin-top: 5px ; }
 a.edit_btn_form_complete:hover, a.edit_btn_form_complete:focus, a.edit_btn_form_complete:active { background:#043f04;  color:#FFFFFF; /*outline: none !important;*/ }
/*
a.view_doc_btn.edit_btn:active,
a.view_doc_btn.edit_btn:visited,
 a.view_doc_btn.edit_btn {
     background-color: #3f66f8 !important;
     color: #fff !important;
 }

a.view_doc_btn.edit_btn:focus,
a.view_doc_btn.edit_btn:hover {
    background-color: #1e399e !important;
    color: #fff !important;
}
*/
.pending {
    color: #800000;
    text-decoration: underline;
}
.user_menu { background-color:rgba(0, 0, 0, 0.2) !important; }

.dropdown {
    position: relative;
    display: inline-block;
    margin-top: 5px !important;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 180px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    border-radius: 3px;
}

.dropdown-content.admin_menu ul {
    list-style: none;
    list-style-type: none;
    margin: 0;
    padding: 0;
    padding-left: 0;
}

.dropdown-content.admin_menu li {
    list-style: none;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

/* Links inside the dropdown */
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    font-size: .8rem;
    font-weight: 400;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #ddd}

/* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */
.show {display:block;}
#avail_denials a{
    float: right;
    background-color: #ff0000 !important;
    border: none !important;
    color: #ffffff;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    cursor: pointer;
    margin-left:5px;
    margin-bottom:10px;
}
#avail_denials a:hover,
#avail_denials a:focus
{
    background-color: #cccccc !important;
    color: #ffffff !important;
    border: none !important;
    /*outline: none !important;*/
}

#snap_notes a,
#snap_emails a{
    float: right;
    border: none !important;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    cursor: pointer;
    margin-left:5px;
    margin-bottom:10px;
}
#snap_notes a,
#snap_emails a{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: none !important;
}
#snap_notes a:hover,
#snap_emails a:hover{
    background-color: #333333 !important;
    color: #ffffff !important;
    border: none !important;
}
#snap_notes a:focus,
#snap_emails a:focus{
    background-color: #666666 !important;
    color: #ffffff !important;
    border: none !important;
    outline: 1px dashed #000000 !important;
    outline-offset: 2px !important;
}
#snapshot_user_data{
   float:left;
    min-height:75px;
}

#snap_notes,
#snap_emails{
    height:30px;
    width:75px;
    float:right;
}

.snap_email_target {
    min-height: 70px;

}

.user_notes_email_holder {
    float: right;
    width: 150px;
}

.core_label_select, .core_label_select input[type="checkbox"], .core_label_select input[type="radio"], .core_label_select *{
    cursor: pointer;
    padding: 2px 10px 2px 5px;
    margin: 0;
    border-radius: 10px;
}

.core_label_select:hover {
    background: #DDD;
}

.disabled_input_wrapper {
    opacity: 0.5;
    background-color: #eee;
    cursor: not-allowed !important;
}

/* ADA Color Contrast Adjustments */
.fc-grid .fc-other-month .fc-day-number {
    opacity: .55;
    color: #000;
}

.dataTables_wrapper .dataTables_paginate .fg-button {
    color: #000 !important;
}

.ui-multiselect {
    padding: 5px 5px 5px 12px !important;
}

.listv3 { margin-top:25px; margin-bottom:25px; width:100%; border: none;   }

.listv3 td { vertical-align:top; padding: 5px;  }

.listv3 th { border-bottom:1px solid #CCC; font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; background:#f2f3f3; padding: 5px; }
.listv3 tr.odd  { background:#f8f8f8 ;   }
.listv3 tr.even  {  }
.listv3 td  {  border-bottom:1px solid #CCC !important;    }
.listv3 td.v3subrow  {  border-bottom:none !important  }

.percentbar { background:#CCCCCC; border:1px solid #666666; height:10px; }
.percentbar div { background: yellow; height: 10px; }
.percentbar div.comp100 { background: greenyellow; height: 10px; }



.absences_bubble {
    float: right;
    text-align: center;

    color: #333333;
    overflow: hidden;
    font-weight: 500 !important;
}
.absences_bubble_cnt {
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:10px;
    padding: 5px;

    margin-top: 5px;

    text-align: center;
background: #ff0000;
    color: #ffffff;

    font-weight: 500 !important;
}
#system_updates {
    float:right !important;
    margin-right: 10px;
    margin-top: 3px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
    padding: 5px;
    padding-bottom: 7px;
    border: 1px solid #cccccc;
    background: #becbdf;
    cursor: pointer;
    font-weight: 500 !important;
    color: #333333;
}

/* limit width/length of custom fields pick list options */
.custom_field_picklist select option,
.glob_cf_picklist_class select option {
    max-width: 400px;
    min-width: 300px;
}



.searchResultNode {
    border: 1px solid #000;
    border-radius: 3px;
    background-color: #F0FFF0;
    width: 348px;
    color: black;
    box-shadow: 2px 2px 3px #888;
    display: block;
    position: relative;
    padding-left: 4px;
    padding-top: 8px;
}


.searchResultNode:hover{
    background-color: #E0EFE0;
}

.searchResultNode.student{
    background-color: #F0F8FF;
}

.student:hover{
    background-color: #E0E8EF;
}

.searchprefix {
    background-color: #FFF;
    padding: 2px 4px;
    position: absolute;
    display: block;
    top: -1px;
    right: 2px;
    margin-right: -3px;
    border-radius: 3px;
    border: 1px solid #000;
    border-top: 2px solid #000;
    color: #000;
    width: 60px;
    text-align: right;
    z-index: 1000!important;
    line-height: 1.4;
    font-size: .75rem;
    font-weight: 500 !important;
}

.searchprefix .icon {
    float: right;
    width: 15px;
    height: 15px;
    margin-left: 2px;
}


.searchResultNode .mainInfoNode {
    width: 335px;
    position: relative;
    top: -5px;
    padding-bottom: 0px;
    z-index: 0!important;
}

.searchResultNode .mainInfoNode .col1 {
    width: 32px;
    text-align: center;
}

.searchResultNode .mainInfoNode .col2 {
    width: 305px;
    padding-left: 5px;
}

.searchResultNode .mainInfoNode .profileImg {
    float:left;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid #BBB!important;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    -webkit-background-clip:content-box;
    background-clip:content-box;
    background: #CCC;
    margin: 0 auto;
}


.searchprefix.user_type_0 {
    border: 1px solid #444;
    border-top: 2px solid #444;
    color: #444;
}

.searchprefix.user_type_1 {
    border: 1px solid #86b4e1;
    border-top: 2px solid #86b4e1;
    color: #86b4e1;
}

.searchprefix.user_type_2 {
    border: 1px solid #4c924e;
    border-top: 2px solid #4c924e;
    color: #4c924e;
}

.searchprefix.user_type_3 {
    border: 1px solid #000;
    border-top: 2px solid #000;
    color: #000;
}

.searchprefix.user_type_4 {
    border: 1px solid #d27f17;
    border-top: 2px solid #d27f17;
    color: #d27f17;
}

.searchprefix.user_type_5 {
    border: 1px solid #000;
    border-top: 2px solid #000;
    color: #000;
}


.searchResultNode.preceptor .mainInfoNode .profileImg {
    border: 1px solid #777!important;

}

.searchResultNode .mainInfoNode .profileName {
    font-size: 0.92rem;
    width: 235px;
    max-height: 19px;
    overflow: hidden;
    display: block;
    margin-bottom: 3px;
}


.searchResultNode .mainInfoNode .profileName .bounds {
    margin-bottom: 3px;
    height: 19px;
}
.searchResultNode .mainInfoNode .bounds{
    width: 100%;
    display: inline-block;
}

.searchResultNode .mainInfoNode .line2,
.searchResultNode .mainInfoNode .line3  {
    font-size: 0.688rem;
    margin-top: 2px;
    margin-right: 5px;
    display: block;
    position: relative;
}

.searchResultNode .mainInfoNode .nickname {
    display: inline-block;
    font-size: 0.438rem;
}

.searchResultNode .mainInfoNode .email {
    font-size: 0.58rem;
    color: #000;
    max-width: 300px;
    overflow: hidden;
    display: block;
}

.searchResultNode .mainInfoNode .address {
    font-size: 0.58rem;
    color: #000;
    display: block;
}


#quickSearchOption {
    color: white;
    position: relative;
    cursor: pointer;
    left: 0px;
    font-size: 0.88rem;
    float: right;
    background: unset;
    border: 3px;
    border-radius: 50%;
    width: 18px;
    text-align: center;
    display: inline-block;
}

#quickSearchOption:hover {
    background: white;
    color: black;
}
#current_schedule_list {
    margin-left:30px;  overflow:hidden; float: right;  width: 350px;
}
.cschedule {
    -moz-border-radius:7px; -webkit-border-radius:7px; border-radius:7px; background: #efefef; padding: 7px; margin-bottom: 15px; border: 1px solid #cccccc
}
.cschedule_block {
    -moz-border-radius:7px; color: #333333; -webkit-border-radius:7px; border-radius:7px; cursor:pointer; padding: 7px; margin-bottom: 10px;
}
.schedule_item {
    overflow: hidden; background: #ffffff; margin-bottom: 10px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 5px;
    border: 1px solid #cccccc;
    clear: both !important;
}


.new_dev_projects {
    background: #44AA44!important;
    color: #FFF!important;
    -moz-box-shadow: 0px 0px 4px Green;
    -webkit-box-shadow: 0px 0px 4px Green;
    box-shadow: 0px 0px 4px Green;
}



tr.cf_group_item { background-color: #FDFDFD; border-left: 1px solid #DDD}
tr.cf_group_spacer { border-top: 1px solid #FFF; height: 40px;}

td.cf_group_label {
    border-top: 10px solid white;
    font-size: 1.1em; font-weight:500 !important;

    background-color: #EEE;
}

.cf_group_label_title {
    display: inline-block;
    margin-left: -5px;
    padding-left: 0;
}

.cf_group_label_div {
    cursor: pointer;
    display: inline-block;
    border-radius: 8px;
    padding: 0px 10px 0px 5px;
    left: -23px;
    position: relative;
}

.cf_group_label_div:hover {
    background-color: #CCC;
}

.cf_group_tr_finish {
    border-top: 1px solid #DDD!important;
}


tr.cf_group_item { background-color: #FDFDFD; border-left: 1px solid #DDD}
tr.cf_group_spacer { border-top: 1px solid #FFF; height: 40px;}

td.cf_group_label {
    border-top: 10px solid white;
    font-size: 1.1em; font-weight:500 !important;

    background-color: #EEE;
}

.cf_group_label_title {
    display: inline-block;
    margin-left: -5px;
    padding-left: 0;
}

.cf_group_label_div {
    cursor: pointer;
    display: inline-block;
    border-radius: 8px;
    padding: 0px 10px 0px 5px;
    left: -23px;
    position: relative;
}

.cf_group_label_div:hover {
    background-color: #CCC;
}

.cf_group_label_div .cf_group_toggle {
    display: inline-block;
    text-align: center;
}

.cf_group_label_div .cf_group_toggle .toggle_option {
    width: 20px;
    height: 20px;
    display: none;
}

.messaging_center .cf_group_label_div {
    margin-left: 30px;
}

.cf_group_tr_finish {
    border-top: 1px solid #DDD!important;
}

.cfele .snapshot_group_col {
    border-right: 1px solid #CCC;
    width: 25%;
}

.cfele .cfLabelGroupModClass {
    width: 150px!important;
}

.cfele .cfLabelClass {
    width: 200px!important;
}

.help_me {
    cursor: pointer!important;
    margin-top: 3px;
}

.note_block {
    font-size: .8rem!important;
    padding: 7px!important;
    text-align: left!important;
    background: #f0eeec!important;
    position: relative!important;
}


.advanced_quick_search .note_block {
    border: 1px solid black!important;
    border-radius: 3px!important;
    box-shadow: 2px 2px 3px #888;
}

.advanced_quick_search  .note_block.student {
    background-color: #F0F8FF!important;
}

.advanced_quick_search .note_block.preceptor {
    background-color: #F0FFF0!important;
}

.searchResultNode.cfur,
.advanced_quick_search .note_block.cfur {
    background-color:#FFB6C1!important;
}

.note_block .command_option {
    float: right;
    margin-left: 7px;
    cursor: pointer;
}

.note_block .note_profile_pic {
    width: 30px;
    height:30px;
    border-radius: 50%;
    border: 2px solid floralwhite;
}

.advanced_quick_search .note_block .note_profile_pic {
    border: 1px solid #BBB!important;
}

.advanced_quick_search .notes_commandOptions {
    float: right;
    top: 6px;
    right: 75px;
    position: absolute;
}

.note_block .searchprefix {
    display: none;
}

.note_block .note_header {
    width: 100%;
    height: 60px;
}
.note_block .note_body {
    background-color: #f0eeec;
}

.advanced_quick_search .note_block .searchprefix {
    display: block;
}

.messaging_center_cf_group > table {
    border: 1px solid #AAA;
}

.messaging_center_cf_group .cf_form_tbl .cf_row td:first-child {
    border: unset;
}

.messaging_center_cf_group .cf_other_label {
    margin-left: 20px;
}

.cf_profile .cf_group_label_title{
    margin-left: 0;
    font-size: 1.08rem;
}

.cf_profile, .cf_profile * {
    background: unset!important;
}

.cf_profile .form_label {
    text-align: left;
    padding-left: 20px;
}

.cf_file_upload_delete {
    display: inline;
    margin-left: 10px;
    background-color: #e7e7e7 !important;
    padding:  5px 10px;
    border-radius: 2px;
    cursor: pointer;
    font-size: .8rem;
}

.cf_file_upload_delete:hover{
    background-color: #FAA !important;
    color: white;
}

.cf_file_upload_name {
    display: inline-block;
    width: 225px;
    padding: 5px;
    background-color: #FCFCFC;
    border-radius: 2px;
    border: 1px solid #DDD;
}

.cf_file_upload {
    border: 1px solid white;
    border-radius: 3px;
    padding: 2px 4px;
}

.cf_file_upload {
    width: 350px;
}

.cf_row.cfele .cf_file_upload {
    width: 400px;
}

.current_file_view {
    width: 100px;
    border: unset;
}

.fileupload_qtip {
    display: inline;
    vertical-align: top;
    background-color: #2f8ab9;
    color: white;
    padding: 0px 5px 4px;
    border-radius: 5px;
    cursor: default;
}

.schedule_type {
    color: white;
    font-weight: 500 !important;
    padding: 1px 3px;
    font-size: 0.625rem;
    cursor: default;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 14px;
    text-align: center;
}
.schedule_smartmatch {
    background-color: #1c7430;
}
.schedule_handslot {
    background-color: #2f8ab9;
}

.req_alert_position {
    position: absolute;
    top: 16px;
    right: 0px !important;
    width: 14px;
    text-align: center;
    background: #800000;
    padding: 1px 3px;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}

.req_ok_position {
    position: absolute;
    top: 16px;
    right: 0px !important;
    width: 14px;
    text-align: center;
    background: #408140;
    padding: 1px 3px;
    color: #ffffff;
    font-weight: 500 !important;
    font-size: 0.625rem;
}


.dates_override {
    font-weight: 500 !important;
    font-style: italic;
    white-space:nowrap;
}

.datepicker_error, .input_error{
    border: 1px solid #FCC!important;
    background-color: #FFF9F9!important;
}

/* Quicksearch input styling */
#quicksearch {
    border-color: #666 !important;
}
#quicksearch::placeholder,
#search_copreceptor::placeholder,
#advancedSearchZipCode::placeholder {
    color: #666 !important;
}

#search_copreceptor::placeholder {
    color: #666 !important;
}

#search_copreceptor::placeholder {
    color: #666 !important;
}

/* Search History link inside search-container - positioned after input field */
.search-container .profile_history {
    position: absolute;
    display: block;
    top: 20%;
    transform: translateY(-50%);
    font-size: 0.67rem;
    border-radius: 4px;
    padding: 1px 3px;
    cursor: pointer;
    z-index: 100;
    white-space: nowrap;
}

/* Fallback for Search History outside search-container (original positioning) */
.profile_history {
    position: absolute;
    display: block;
    margin-left: 300px;
    margin-top: 10px;
    font-size: 0.67rem;
    border-radius: 4px;
    padding: 1px 3px;
    cursor: pointer;
    z-index: 100;
}

.profile_history:hover {
    background: #E7E7E7;
    color: #555555;
    cursor: pointer;
    border: 1px solid #6A6A6A;
}


.eval_icon {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
}


.eval_icon_status_complete {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    background: #1c7430;
    display: inline-block;
    color: #FFFFFF;
    font-size: .8em;
    margin-right: 3px;
    font-weight: 500 !important;
    margin-bottom: 2px;
}
.eval_icon_status_pending {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    background: darkred;
    display: inline-block;
    color: #FFFFFF;
    font-size: .8em;
    margin-right: 3px;
    font-weight: 500 !important;
    margin-bottom: 2px;
}
.eval_icon_assigned {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    background: #0e90d2;
    display: inline-block;
    color: #FFFFFF;
    font-size: .8em;
    margin-right: 3px;
    font-weight: 500 !important;
    margin-bottom: 2px;
}
.eval_icon_waiting {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    background: #CCC;
    display: inline-block;
    color: #FFFFFF;
    font-size: .8em;
    margin-right: 3px;
    font-weight: 500 !important;
    margin-bottom: 2px;
}

.eval_icon_score {
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    background: #ffffff;
    display: inline-block;
    color: #FFFFFF;
    font-size: .8em;
    margin-right: 3px;
    border: 1px solid #dadada;
    font-weight: 500 !important;
    margin-bottom: 2px;
}

.openEval, .fs_openEval{
     -moz-border-radius:3px;
     -webkit-border-radius:3px;
     border-radius:3px;
     padding: 3px;
    padding-right: 5px !important;
     background: #FFFFFF;
    border: 1px solid #dadada;
     display: inline-block;
     color: #333333;
     font-size: 1em;
     margin-right: 3px;
    cursor: pointer;
 }

a.edit_btn.openEval {
    padding-right: 10px !important;
}

.openEval:hover, .fs_openEval:hover{
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    padding-right: 5px !important;
    background: #d5d4d4;
    display: inline-block;
    color: #333333;
    font-size: 1em;
    margin-right: 3px;
    border: 1px solid lightsteelblue;
    cursor: pointer;
}

.fs_openEval {
    margin-bottom: 10px;
}

.fs_openEval.placeholder:hover  {
    background: unset;
}

.openEvalContainer{
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    padding: 3px;
    padding-right: 5px !important;
    background: #FFFFFF;
    border: 1px solid #dadada;
    display: inline-block;
    color: #333333;
    font-size: 1em;
    margin-right: 3px;
}

.openEvalAdmin{
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    display: inline-block;
    color: #333333;
    font-size: 1em;
    margin-right: 3px;
}

.openEvalAdmin:hover{
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    background: #FFFFFF;
    color: #096DD9;
}

a.edit_btn_snap_eval {

    background-color:#ffffff;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border-radius:3px;
    cursor:pointer;
    color:#000000;
    font-size:.9em;
    font-weight:500 !important;
    padding:2px 3px;
    text-decoration:none;
}

a.edit_btn_snap_eval:focus { background:#ffffff; /*outline: none !important;*/ color: #666666 }
a.edit_btn_snap_eval:hover {
     color: #0e90d2;
}

.em7 { font-size: .7em !important }

.cf_report_group_wrapper {
    max-height: 300px;
    overflow-y: auto;
    max-width: 500px;
    margin-bottom: 10px;
}

.cf_report_filter_group_list {
}

.cf_report_filter_group_list .item {
    display: block;
    padding: 2px;
    margin: 2px;
    margin-bottom: 1px;
}

.cf_report_filter_group_list .core_label_select{
    display: inline;
}

.cf_report_filter_group_list .core_label_select .label {
    max-width: 400px!important;
    display: inline;
    position: relative;
    overflow-x: hidden!important;
}

.cf_report_filter_group_list .div_cf_group_name{
    padding-top: 10px;
}

.cf_report_filter_group_list .item .cf_checkbox {
    margin-left: 0px;
    padding-left: 10px;
    width: 20px;
    display: inline-block;
}

.div_cf_group_name {
    cursor: pointer!important;
}

.div_cf_group_name div.label {
    display: inline!important;
}

.div_cf_group_name div.label:hover{
    background-color: #EEE!important;
}

th.student_custom_fields {
    background-color: #3f9aC9;
    color: white;
}

td.student_custom_fields {
    background-color: #EfEaF9;
}

tr.even td.student_custom_fields {
    background-color: #E7E5F3;
}

.fe_description {
    overflow: auto;
    max-height: 200px;
    padding-left: 18px;
    padding-right: 15px;
    padding-top: 10px;
    border: 1px solid #d8e1e9;
    width: 90%;
    background: #edf2fb;
    margin-top: 5px;
}

.fe_admin_section {
    background: #d8e1e9;
    padding: 5px; font-weight: 600;
    display: inline-block;
}

.maxwordsmessage {
    display: inline-block;
    font-weight: bold;
    color: black;
}

.maxwordsmessage .maxcntr {
    display: inline-block;
    color: black;
}

.maxwordsmessage .maxwarning {
    display: none;
    font-weight: bold;
}

.fs_form {
    margin: 20px;
    padding: 20px 20px;
    border:1px solid #555;
    background-color: #F4F4F4;
}

.fs_form table {
    width: 100%;
}

.fs_form table tr:hover{
    background-color: #E8E8E8;
}

.fs_item_option {
    white-space: nowrap;
}

.fs_form .section_heading {
    font-size: 1.17rem;
    font-weight: bold;
}

.save_report_form {
    padding: 0;
    margin: 0;
}

.save_report_form .submit_report {
    display: none;
}

#saveAlert {
    display: none;
}

.autodate {
    width: 200px!important;
}

.tox.tox-tinymce-aux {
    z-index: 10099;
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.noselect  *{
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.regular_sselect {
    -webkit-touch-callout: auto!important; /* iOS Safari */
    -webkit-user-select: auto!important; /* Safari */
    -khtml-user-select: auto!important; /* Konqueror HTML */
    -moz-user-select: auto!important; /* Old versions of Firefox */
    -ms-user-select: auto!important; /* Internet Explorer/Edge */
    user-select: auto!important; /* Non-prefixed version, currently */
}


.dropdown-check-list {
    display: inline-block;
    z-index: 10000;
    position: absolute;
    width: 255px;
    top: 10px;
}

.dropdown-check-list-corporate {

}

.dropdown-check-list .anchor {
    position: relative;
    cursor: pointer;
    display: inline-block;
    padding: 5px 50px 5px 10px;
    border: 1px solid #ccc;
}


.dropdown-check-list #counter {
    display: inline-block;
    margin-left: 8px;
    margin-right: 3px;
    background-color: #EEE;
    border-radius: 7px;
    width: 20px;
    padding: 3px 3px;
    text-align: center;
}

.dropdown-check-list #select-toggle {
    margin-left: 8px;
    margin-right: 3px;
    background-color: #EEE;
    border-radius: 7px;
    width: 10px;
    padding: 3px 6px;
    cursor: pointer;
}
.dropdown-check-list #select-toggle:hover {
    background-color: #DDD;
    color: #0e0e0e;
}

.dropdown-check-list .anchor:after {
    position: absolute;
    content: "";
    border-left: 2px solid black;
    border-top: 2px solid black;
    padding: 5px;
    right: 10px;
    top: 20%;
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.dropdown-check-list .anchor:active:after {
    right: 8px;
    top: 21%;
}

.dropdown-check-list .itemholder {

}

.dropdown-check-list ul.items {
    padding: 2px;
    display: none;
    margin: 0;
    margin-left: 10px!important;
    border: 1px solid #ccc;
    background-color: #F7F7F7;
    box-shadow: 3px 3px 3px #DDD;

    max-height: 300px;
    overflow-x: hidden;
    overflow-y: auto!important;;
}

.dropdown-check-list ul.items li {
    list-style: none;
}

.dropdown-check-list ul.items li .core_label_select {
    width: 185px;
    height: 14px;
    display: inline-block;
}

.dropdown-check-list ul.items li .core_label_select.active {
    font-weight: bold;
    background-color: #EEE;
}


.dropdown-check-list.visible .anchor {
    color: #096DD9;
}

.dropdown-check-list.visible .items {
    display: inline-block;
}

.formstack_eval_icon {
    display: inline;
}

.filter_total {
    border-radius: 3px;
    background-color: #999;
    color: white;
    padding: 1px 3px;
    margin-right: 4px;
}

.component_desc_red { padding: 3px !important; width: 200px !important; max-height: 75px!important; overflow: auto}

.stylized-button {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    border: none;
    border-radius: 2px;
    padding: 0 20px;
    min-width: 64px;
    height: 36px;
    vertical-align: middle;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    color: #fff;
    background-color: #3d94f6;
    box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
    font-size: 0.88rem;
    font-weight: 500;
    line-height: 36px;
    overflow: hidden;
    /*outline: none;*/
    cursor: pointer;
    transition: box-shadow 0.2s;
}

.stylized-button::-moz-focus-inner {
    border: none;
}

/* Overlay */
.stylized-button::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgb(var(--pure-material-onprimary-rgb, 255, 255, 255));
    opacity: 0;
    transition: opacity 0.2s;
}

/* Ripple */
.stylized-button::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    padding: 50%;
    width: 32px; /* Safari */
    height: 32px; /* Safari */
    background-color: rgb(var(--pure-material-onprimary-rgb, 255, 255, 255));
    opacity: 0;
    transform: translate(-50%, -50%) scale(1);
    transition: opacity 1s, transform 0.5s;
}

/* Hover, Focus */
.stylized-button:hover,
.stylized-button:focus {
    box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
}

.stylized-button:hover::before {
    opacity: 0.08;
}

.stylized-button:focus::before {
    opacity: 0.24;
}

.stylized-button:hover:focus::before {
    opacity: 0.3;
}

/* Active */
.stylized-button:active {
    box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.stylized-button:active::after {
    opacity: 0.32;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0s;
}

/* Disabled */
.stylized-button:disabled {
    color: rgba(var(--pure-material-onsurface-rgb, 0, 0, 0), 0.38);
    background-color: rgba(var(--pure-material-onsurface-rgb, 0, 0, 0), 0.12);
    box-shadow: none;
    cursor: initial;
}

.stylized-button:disabled::before {
    opacity: 0;
}

.stylized-button:disabled::after {
    opacity: 0;
}

.schedule_notes_div_collapse {
    padding: 3px;
    background: #efefef;
    border: 1px solid #b5f6c4;
    display: block;
    white-space: normal;
    font-size: .75em;
    margin-top: 5px;
    max-height: 53px;
    overflow: auto;
}

.schedule_notes_div {
    padding: 3px;
    background: #efefef;
    border: 1px solid #b5f6c4;
    display: block;
    white-space: normal;
    font-size: .75em;
    margin-top: 5px;
    overflow: unset;
}

.days_back_checkbox {
    display: inline;
}

.days_back_div {
    display: inline;
}

.days_back_data {
    display: inline;
    width: 40px;
}
.days_back_data.off{
    display: none;
}

.days_back_message {
    display: inline-block;
    border-top: 3px solid unset;
    cursor: pointer;
}

.date_disable_class {
    background-color: #EEE!important;
}

.cf_textarea_field {
    height: 120px;
}

.edit_btn_cls {
    background-color: #D7D7D7;
    color: black;
    font-size: 12px;
    font-weight: bold;
    padding: 5px 14px;
    text-decoration: none;
    border: none !important;
    border-radius: 3px;
    display: inline-block;
    cursor: pointer;
}

.edit_btn_cls:hover {
    background:#666;
    color:#ffffff!important;
}



.edit_btn_div {
    background-color: #e7e7e7 !important;
    border: none !important;
    color: #000!important;
    cursor: pointer;
    padding: 8px 8px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: .8rem;
    -webkit-transition-duration: 0.3s; /* Safari */
    transition-duration: 0.3s;
    border-radius: 2px;
    font-weight: 500;
    margin-left:3px;
}

.edit_btn_div:hover{
    background-color: #555555 !important;
    color: #ffffff !important;
    border: none !important;
    outline: none !important;
}

#program_dropdown_filter {
    background-color: #333;
    margin: auto;
}

li.program_search {
    background-color: #333333!important;
}

lo.program_search .holder {
    width: 80%;
}

.program_search_input {
    display: inline!important;
    margin-top: 8px!important;
    margin-left: 5px!important;
    margin-right: 15px!important;
    width: 88%!important;
    background-color: #555!important;
    color: white!important;
    font-size: 6px!important;
    height: 15px!important;
    border-color: #555!important;
}

.program_search .clearbutton {
    position: relative;
    float: right;
    padding: 0px 4px 3px 4px;
    margin-left: -10px;
    margin-right: 10px;
    margin-top: -25px;
    background-color: #333333;
    border-radius: 4px;
    border-right: 1px solid #BBB;
    border-bottom: 1px solid #BBB;
    display: inline;
    cursor: pointer;
    font-size: 0.75rem;
    color: #FFF;
}

#program_dropdown_list_filter_input_diplay {
    display: inline;
    margin: auto!important;
    padding: 1px 3px;
    border-radius: 6px;
    background-color: #CDC;
    color: #000;
    text-align: center;
}

.program_search_input_highlighter {
    background-color: red;
}


.ui-resizable-se_core { resize: both; }

.cf_row .selectpicker  {
    max-width: 800px;
}
.selectpicker > option{
    white-space:normal;
    word-wrap:normal;
}

.cf_checkbox_group {
    max-width: 800px;
    display: inline-block;
}

.select2-selection__choice > div {
    display: inline-block!important;
}

.tox-promotion{ display: none;}
.tox-statusbar__branding{ display: none;}
.tox-statusbar__resize-handle svg { fill: #666666 !important; }
.tox-tinymce-aux{z-index:99999999999 !important;}

.rounded { -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
}

#nursys-last-four-ssn{
    border-radius: 4px;
    border-style: solid;
    border-width: 1px;
    border-color:#CCCCCC;
    outline: none;
    text-shadow: none;
    font-size:2em;
}
#nursys-last-four-ssn:focus{
    border-color:#0075FF;
}
.display-toggle {
    cursor: pointer;
    user-select: none;
}
.display-toggle i {
    font-size: 75%;
}

.nursys_help_bubbles{
    all:unset;
}

.contract_status {
    display: inline-block;
    background-color: blue;
    padding: 1px 12px 2px;
    margin-left: 13px;
    border-radius: 4px;
    color: white;
}

.contract_status.valid {
    background-color: green;
}

.contract_status.invalid {
    background-color: #F77;
}

.text-center {
    text-align: center;
}
#client-referrals {
    cursor: pointer;
    animation: changeColor 30s infinite;
}

@keyframes changeColor {
    0% {
        color: white; /* Initial color or specify a default color */
    }

    50% {
        color: red; /* Change to the desired color at 50% of the animation */
    }

    100% {
        color: white; /* Change back to the initial color at the end of the animation */
    }
}

.select2-container--default .select2-search--dropdown .select2-search__field{
    border:1px solid #585858 !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{
    color: #666 !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{
    color: #000 !important;
}

.dataTables_wrapper .sorting::before,
.dataTables_wrapper .sorting::after{
    opacity:1 !important;
    filter: grayscale(1) brightness(0.1);
}

.dataTables_wrapper .sorting_desc::before{
    opacity: 0.5 !important;
}
.dataTables_wrapper .sorting_desc::after{
    opacity: 1 !important;
}

.dataTables_wrapper .sorting_asc::before{
    opacity:1 !important;
}

.dataTables_wrapper .sorting_asc::after{
    opacity: 0.5 !important;
}

/* DataTables 2.x sorting button colors */
/* No sorting: use hex color #666666 */
th.dt-orderable-asc .dt-column-order::before,
th.dt-orderable-desc .dt-column-order::after {
    color: #666666 !important;
    opacity: 1 !important;
}

/* Sorting enabled: use hex color #333333 */
th.dt-ordering-asc .dt-column-order::before,
th.dt-ordering-desc .dt-column-order::after {
    color: #333333 !important;
    opacity: 1 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled{
    filter:brightness(0.75);
}

.tox-tinymce{
    border:1px solid #585858 !important;
}

/* TinyMCE menu item highlights - per dev note: color #E2F1FD, border #096DD9 */
.tox .tox-tbtn--active,
.tox .tox-tbtn--enabled,
.tox .tox-tbtn--enabled:focus,
.tox .tox-tbtn--enabled:hover,
.tox .tox-mbtn--active, .tox .tox-mbtn:not(:disabled).tox-mbtn--active:focus {
    background: #EFEFEF !important;
    border: 1px solid #6a6a6a !important;
}

.tox .tox-listboxfield .tox-listbox--select, .tox .tox-textarea, .tox .tox-textarea-wrap .tox-textarea:focus, .tox .tox-textfield, .tox .tox-toolbar-textfield{
    border-color: #6a6a6a !important;
}

/* ELMS-E1054: Split-button chevron contrast ≥3:1 (WCAG 2.2 AA 1.4.11 Non-text Contrast) */
.tox .tox-split-button__chevron svg {
    fill: #222f3e !important;
}

.dataTables_wrapper .dataTables_filter input{
    border:1px solid #585858 !important;
}

/* Keyboard focus indicator for DataTables pagination buttons - WCAG 2.4.7 */
.dataTables_wrapper .dataTables_paginate .paginate_button:focus,
.dataTables_wrapper .dataTables_paginate .paginate_button:focus-visible {
    outline: 2px solid #212121 !important;
    outline-offset: 2px !important;
    border-color: #212121 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current:focus,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:focus-visible {
    outline: 2px solid #212121 !important;
    outline-offset: 2px !important;
}

table.cfur_snapshot_student_list {
    border:0!important;

}

.cfur_snapshot_student_list_holder {
    max-height: 200px;
    min-height: 0;
    overflow-y: auto;
    overflow-x: off;
    border: 0;
    margin:0;
    padding: 0;
}

.cfur .edit_btn_min

table.cfur_snapshot_student_list tr td:nth-child(1){ width: 100px;    overflow-x: off; }
table.cfur_snapshot_student_list tr td:nth-child(2){ width: 70px; }
table.cfur_snapshot_student_list tr td:nth-child(3){ width: 70px; }
table.cfur_snapshot_student_list tr td {
    padding: 2px!important;
}


textarea {
    padding: 5px !important;
}


.msg-action-menu {
    display: none;
    list-style: none;
    padding: 0;
    margin: 0;
    position: absolute;
    background-color: white;
    border: 1px solid #ccc;

}

.msg-action-menu li {
    padding: 3px 5px;
}

.msg-action-menu li a {
    text-decoration: none;
    color: black;
}

.msg-action-menu li a:hover {
    background-color: #f0f0f0;
}
.slot_counter { display: inline-block; border-radius: 10px; font-weight: bold; background: #eeeeee; border: 1px solid #666666; color: #000000; padding: 2px; width: 17px; text-align: center; font-size: 10px; }

.remove-shift-modal-padding .show_days {
    margin-top: 0 !important;
}

.remove-eval-button-margin .eval-interact-button {
    margin-bottom: 0 !important;
}

.h-fit {
    height: fit-content !important;
}

.card-dropdown-content {
    display: none;
}

.card-dropdown-content a {
    font-weight: 500 !important;
}

.card-dropdown.show .card-dropdown-content {
    display: block;
}

.card-tooltip {
    visibility: hidden;
    position: absolute;
    display: inline-block;
    width: 200px;
    bottom: 20px;

}

.has-card-tooltip:hover .card-tooltip {
    visibility: visible;
    z-index: 100;
}

.modal-container {
    z-index: 9999;
}

/* Style overrides for table with .list class */
.ignore-row-styles.list .bg-gray-100 {
    background: rgba(243, 244, 246, 1) !important;
}

.ignore-row-styles.list .bg-white {
    background: rgba(255, 255, 255, 1) !important;
}

.ignore-row-styles.list .bg-gray-200 {
    background: rgba(229, 231, 235, 1) !important;
}

.ignore-row-styles.list tr:hover {
    background: #f3f3f3 !important;
}

.select-all-options {
    margin-top: 10px;
    margin-right: 10px;
}

.sum_bubbles { display: inline-block; margin-bottom: 6px; }

#availability_stats {
    padding: 5px 5px 10px 5px;
    background: rgba(229, 231, 235, 1) !important;
    border-radius: 5px;
    margin-bottom: 15px;
    display: inline-block;
}

.mini-all{
    display:grid;
    grid-template-columns: 1fr 1fr;   /* 50% / 50% */
    column-gap:.4em;
    row-gap:.15em;
    font-size:11px;
    line-height:1.15;

    border:1px solid #dcdcdc;
    background:#fafafa;
    padding:.35em .4em;
    border-radius:2px;
}

.mini-head{
    grid-column:1 / -1;
    text-align:center;
    font-weight:700;
    margin:.25em 0 .1em 0;
}

.mini-label{
    text-align:right;       /* hugs center line */
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    font-weight:500;
    color:#444;
}

.mini-value{
    text-align:left;        /* hugs center line */
    white-space:nowrap;
    color:#000;
}

/* WCAG 1.3.1: Use explicit heading instead of th for section titles */
.form_section_heading { font-size:1.1em; font-weight:500 !important; text-align:left; color:#000000; margin:0; padding:0; }
.form_tbl tr:has(.form_section_heading) td { border-bottom:1px solid #CCC; background:#f2f3f3; }
h2.form_section_heading, h3.form_section_heading, h4.form_section_heading { font-size:1.1em; font-weight:500 !important; margin:0; padding:0; }
.cf_group_label_title.form_section_heading { display:inline-block; }
.cf_other_label.form_section_heading { font-size:1em; }

/* Fix focus order to match visual order (left to right) for heading & header buttons */
.heading-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    clear: both;
}
.heading-container .heading {
    flex: 0 0 auto;
    text-align: left;
}
.heading-container .heading-buttons {
    flex: 0 0 auto;
    text-align: right;
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

/* Responsive table container for mobile/tablet views - target DataTables layout divs */
/* Only apply scrolling on mobile/tablet viewports */
@media (max-width: 1023px) {
    .dt-layout-row.dt-layout-table {
        max-height: 100%;
        overflow-y: auto;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
        position: relative;
    }

    /* Scrollbar styling for mobile/tablet */
    .dt-layout-row.dt-layout-table::-webkit-scrollbar {
        width: 8px;
        height: 8px;
    }

    .dt-layout-row.dt-layout-table::-webkit-scrollbar-track {
        background: #f1f1f1;
        border-radius: 4px;
    }

    .dt-layout-row.dt-layout-table::-webkit-scrollbar-thumb {
        background: #c1c1c1;
        border-radius: 4px;
    }

    .dt-layout-row.dt-layout-table::-webkit-scrollbar-thumb:hover {
        background: #a8a8a8;
    }

    /* Fallback for Firefox */
    .dt-layout-row.dt-layout-table {
        scrollbar-width: thin;
        scrollbar-color: #c1c1c1 #f1f1f1;
    }

    /* Responsive table wrapper for non-DataTables tables */
    .table-responsive-wrapper {
        max-height: 100%;
        overflow-y: auto;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
        position: relative;
    }

    /* Scrollbar styling for table-responsive-wrapper */
    .table-responsive-wrapper::-webkit-scrollbar {
        width: 8px;
        height: 8px;
    }

    .table-responsive-wrapper::-webkit-scrollbar-track {
        background: #f1f1f1;
        border-radius: 4px;
    }

    .table-responsive-wrapper::-webkit-scrollbar-thumb {
        background: #c1c1c1;
        border-radius: 4px;
    }

    .table-responsive-wrapper::-webkit-scrollbar-thumb:hover {
        background: #a8a8a8;
    }

    /* Fallback for Firefox */
    .table-responsive-wrapper {
        scrollbar-width: thin;
        scrollbar-color: #c1c1c1 #f1f1f1;
    }
}

/* General styles for dt-layout-row control rows (pagination, filter, buttons) */
.dt-layout-row:not(.dt-layout-table) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    width: 100%;
}

.dt-layout-row:not(.dt-layout-table) .dt-layout-cell {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

/* Ensure proper spacing between control elements */
.dt-layout-row:not(.dt-layout-table) .dt-layout-cell:not(:last-child) {
    margin-right: 15px;
}

/* Tablet adjustments (768px - 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
    .dt-layout-row.dt-layout-table {
        max-height: 100%;
    }

    .dt-layout-row:not(.dt-layout-table) {
        justify-content: space-between;
        gap: 15px;
    }

    .dt-layout-row:not(.dt-layout-table) .dt-layout-cell {
        flex: 0 0 auto;
    }
}

/* DataTables dropdown border color override */
div.dt-container .dt-input,
div.dt-container select.dt-input,
select.dt-input,
select#dt-length-0.dt-input,
.dt-length select.dt-input,
.dt-length select{
    border: 1px solid #6a6a6a !important;
}

/* Mobile adjustments (320px - 767px) */
@media (max-width: 767px) {
    #app_content{
        padding: 0;
    }
    #app_content div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell{
        text-align: left;
    }

    #app_content div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell>*{
        display: flex;
        align-items: center;
    }

    .ui-tabs .ui-tabs-panel{
        padding: 0;
    }

    .heading_container{
        flex-wrap: wrap;
        justify-content: left;
    }

    h1.heading{
        margin-bottom: 5px;
    }


    div.dt-container select.dt-input{
        margin-right: 1%;
    }
    .search-wrapper{
        display: flex !important;
        width: 100%;
    }

    div.dt-container .dt-search input{
        width:100%;
    }
    .dt-layout-row.dt-layout-table {
        max-height: 100%;
    }

    .dt-layout-row:not(.dt-layout-table) {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .dt-layout-row:not(.dt-layout-table) .dt-layout-cell {
        width: 100%;
        justify-content: flex-start;
        margin-right: 0;
    }

    .dt-layout-row:not(.dt-layout-table) .dt-layout-cell:not(:last-child) {
        margin-bottom: 10px;
    }
}

/* Very small screens (320px) */
@media (max-width: 320px) {
    .dt-layout-row.dt-layout-table {
        max-height: 100%;
    }

    .dt-layout-row:not(.dt-layout-table) {
        gap: 8px;
    }

    .dt-layout-row:not(.dt-layout-table) .dt-layout-cell {
        font-size: 14px;
    }
}

/* Global responsive jQuery UI dialog styles for mobile devices */
@media (max-width: 768px) {
    /* Fullscreen flex layout for dialogs on mobile */
    .ui-dialog.flex_dialog_content {
        position: fixed !important;
        box-sizing: border-box !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        display: flex;
        flex-direction: column;
    }

    .ui-dialog.flex_dialog_content .ui-dialog-content {
        height: 100% !important;
        flex: 1 1 auto;
        overflow: auto !important;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-height: 500px) {
    /* Short viewport handling for flex dialogs */
    .ui-dialog.flex_dialog_content {
        display: block !important;
        overflow-x: hidden;
    }

    .ui-dialog.flex_dialog_content .ui-dialog-content {
        height: auto !important;
    }

    .ui-dialog.flex_dialog_content .ui-dialog-titlebar {
        z-index: 99999 !important;
        position: sticky;
        top: 0;
    }

    /* Short viewport handling for datepicker */
    .ui-datepicker {
        max-height: 70vh !important;
        overflow-y: auto !important;
    }
}

/* Accessibility : requirement groups as semantic list */
.requirements-group-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.requirements-group-list-item {
    list-style: none;
    margin: 0;
    padding: 0;
}
