﻿/*  
    If you wish to use different fonts for your layout sepecify your font imports here and update the font-family tags as needed.
*/
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
@import url('https://fonts.googleapis.com/css2?family=Lora:wght@400;700&family=Merriweather:wght@300;400;700&family=Open+Sans:wght@300;400&family=PT+Sans+Narrow:wght@400;700&family=Roboto:wght@300;400;500;700&display=swap');


@media (prefers-color-scheme:dark) {
    body::after {
        content: 'dark';
        display: none;
    }
}

@media (prefers-color-scheme:light) {
    body::after {
        content: 'light';
        display: none;
    }
}

.in-line {
    display: inline-block !important;
}

.no-focus {
    outline: none !important;
    opacity: 0;
}

/*.wsu-navigation-site-vertical .wsu-menu a, .wsu-navigation-site-vertical .wsu-menu button:first-child {
    text-decoration: none;
    color: inherit;
    background-color: transparent;
    border-left: 5px solid transparent;
    border-right: none;
    border-bottom: none;
    border-top: none;
    outline: 0;
    box-shadow: none;
    font-weight: inherit;
    margin: 0;
    padding: .7rem 1.5rem;
    flex-grow: 1;
    border-radius: 0;
    display: block;
    box-sizing: border-box;
    text-align: left;
    font-size: .875rem;
    font-weight: 600;
    position: relative;
    line-height: 1.5;
    cursor: pointer;
}*/

.dropdown > a {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

.header-change-of-campus{
    text-decoration: none;
    color: inherit;
    text-transform: uppercase;
    font-size: .75rem;
    line-height: 1.5;
    padding: .5rem 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}

/*.wsu-g-footer__nav-link {
    color: #f7f7f7 !important;
}*/

.button-spacing {
    margin: 10px 0;
}

/*.wsu-s-nav-vertical-split__close-button {
    color: #000 !important;*/ /* Ensures black text */
    /*opacity: 1 !important;*/ /* Prevents faded/transparent look */
    /*font-weight: 600;*/ /* Optional: makes text more readable */
/*}*/

.pad-bottom {
    margin-bottom: 25px !important; /* Adjust the spacing as needed */
}

p {
    max-width: 100% !important;
}

table,
table th,
table td,
table tr{
    border: none !important;
}

.radio-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

    .radio-group label {
        display: flex !important;
        align-items: center;
        margin-bottom: 5px !important; /* Adjust the spacing as needed */
        margin-top: 5px !important; /* Adjust the spacing as needed */
    }

.radio-group input[type="radio"] {
    margin-right: 5px !important; /* Adjust the spacing between the radio button and the label */
}

.form-group {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.form-group label {
    margin-right: 1rem;
    min-width: 200px; /* Adjust as needed */
}

.form-group input[type="text"] {
    flex: 1;
}

#view-home{
    padding-bottom: 40px;
}

/*.wsu-g-header__wrapper {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10001 !important;*/ /* Ensure the header is above other content */
    /*background-color: white !important;*/ /* Set the background color to cover content behind */
/*}

.wsu-g-footer--right {
    text-align: right;
    justify-content: flex-end;
    width: 100%;
}*/

html, body {
    /*
        Installed Google Fonts: Roboto, Open Sans, Merriweather, Lora, PT Sans Narrow
    */
    font-family: 'Lora', sans-serif;
}

.layout-page-view {
    margin: 0;
    display: block;
}

.courses-content {
    margin-bottom: 0 !important;
    padding-bottom: 3px;
}

.secondary-nav-list {
    list-style-type: none;
    padding-left: 0px
}

div#main div#unit-info {
    float: left;
   /* width: 70%;*/
}

div#unit-info h3.degree_header {
    width: 100%;
    font-size: 1.2375em;
    margin-top: 20px;
}

.make-grey {
    color: #5e6a71 !important;
}

h3.degree_header > span.degree_title {
    float: left;
    width: 80%;
}

h3.degree_header > span.degree_hours {
    float: right;
    width: 20%;
}

h3.degree_header + div.degree_info {
    margin-top: 50px;
}

table.degree_sequence_list td.degree_sequence_Year {
    font-weight: bold;
    padding-top: 15px;
    padding-left: 0px;
}

hr.footnote {
    border: 0px !important;
    height: 1px !important;
    background-image: linear-gradient(to right, rgba(0,0,0,0.0), rgba(0,0,0,0.5), rgba(0,0,0,0.0));
}

div#main p.H4 {
    font-weight: bold !important;
    padding-bottom: 0px !important;
    padding-top: 10px !important;
}

.col-lg-2 .secondary_nav {
    border: 1px solid #e6e6e6;
}

.col-lg-2 .secondary_nav .secondary_nav_ul .secnav_li::before {
    content: none; /* Remove the :before content */
}

.col-lg-2 .secnav_li {
    list-style: none;
    text-decoration: underline;
}
.col-lg-2 .li.secnav_li:before {
    list-style: none;
    background-color: #ffffff;
}

.col-lg-2 .secnav_li:hover {
    background-color: #f0f0f0;
}

.col-lg-2 .secondary_nav_ul {
    list-style: none !important;
    padding-left: 0 !important;
    margin-bottom: 14px !important;
}

.my-button {
    border-color: #ccc !important;
    padding: 20px 20px 20px 20px !important;
    border: 1px 1px 1px 1px !important;
    box-sizing: border-box !important;
    border-style: solid !important;
    border-width: 1px !important;
    border-radius: 5px;
}

.expand-width {
    width: 100% !important;
}

.academic-calendar-table
{
    margin: 40px 0 40px 0 !important;
}

.secondary_nav {
    padding-left: 20px; /* Set a consistent left padding for the nav */
}

    .secondary_nav a,
    .secondary_nav h5,
    .secondary_nav_ul,
    .secondary_nav_ul .secnav_li {
        margin-left: 0; /* Remove any default left margin */
        padding-left: 0; /* Remove any default left padding */
    }

.H4 {
    font-weight: bold !important;
    padding-bottom: 0px !important;
    padding-top: 10px !important;
}

p.course {
    margin-top: .4em !important;
}

p.course_ending {
    margin-top: .4em !important;
    color: #999999 !important;
}

span.course_header {
    font-weight: bold !important;
}

p.course + h4 {
    padding-top: 5px;
}

tr.degree_sequence_term_header > td {
    font-style: italic;
    padding-top: 10px;
    margin: 0px !important;
    padding: 0px !important;
}

div.unit-fullinfo table.degree_sequence_list td.degree_sequence_item {
    margin: 0px !important;
    padding: 0 0 0 0 !important;
    max-height: 24px !important;
    height: 24px !important;
}

tr.degree_sequence_term_header > td {
    font-style: italic;
    margin: 0px !important;
    padding: 10px 0 0 0 !important;
}

div.unit-fullinfo h4{
    margin-bottom: 0px !important;
}

div.unit-fullinfo table.degree_sequence_list td.degree_sequence_item {
    margin: 0px !important;
    padding: 0 0 0 0 !important;
}

div.unit-fullinfo table.degree_sequence_list tr.schedule_table_row {
    line-height: 15px;
}

div.unit-fullinfo table.degree_sequence_footnotes tr {
    margin: 0px !important;
    padding: 0 0 0 0 !important;
}

div.unit-fullinfo table.degree_sequence_footnotes td {
    margin: 0px !important;
    padding: 0 0 0 0 !important;
}

/*degree_sequence_item {
    margin: 0px !important;
    padding: 0px !important;
    height: 25px !important;
}*/

h4.degree_header > span.degree_hours {
    float: right;
    width: 22%;
}

div#unit-info h4.degree_header {
    width: 100%;
    font-size: 1.2375em;
    margin-top: 20px;
}

h4.degree_header > span.degree_title {
    float: left;
    width: 78%;
}

h4.degree_header > span.degree_hours {
    float: right;
    width: 22%;
}

h4.degree_header + div.degree_info {
    margin-top: 50px;
}

.courseheader {
    color: #981e32 !important;
    font-weight: bold !important;
    font-size: 1.2em !important;
    line-height: 1.5em !important;
}

.strong {
    font-weight: bold !important;
}

select option.bold-option {
    font-weight: bold !important;
}

/*.wsu-c-content select, select.wsu-c-form__select {
    font-weight: bold !important;
}*/

.dropdown-item i:not([class*="sort-indicator"]) {
    min-width: 28px;
    text-align: center;
    margin-right: 5px;
}

.dropdown-item.active {
    background: #555;
    color: #fff;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #333333 !important;
    min-width: 160px;
    z-index: 1;
}

    /* Links inside the dropdown */
    .dropdown-content a {
        color: black;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }

/* Show the dropdown menu on hover */
.dropdown:focus-within .dropdown-content,
.dropdown:hover .dropdown-content {
    display: block;
}

.zebratable:nth-child(even) {
    background-color: #f2f2f2;
}

.zebratable {
}

.zebratableevent {
    width: 80vw;
}

.zebratableeventdate {
    width: 20vw;
}

.hyperlink {
    color: #003c69;
    text-decoration: underline;
}

div#main p.H4 {
    font-weight: bold;
    padding-bottom: 0px;
    padding-top: 10px;
}

div#main p.B1 {
    text-align: initial;
    text-indent: 2em;
    padding-bottom: 0px;
}

div#main p.B1A {
    padding-top: 10px;
    text-align: initial;
    padding-bottom: 0px;
}

div#main p.B1B {
    text-align: initial;
    text-indent: 2em;
    padding-bottom: 0px;
}

div#main p {
    margin: 0pt;
    padding: 0pt;
}

div#main li {
    line-height: 1.2em;
}

div#main {
    /*width: 100%;*/
    margin-left: 5%;
    margin-right: 5%;
}

div#main p.faculty_list {
    font-style: italic;
    text-align: initial;
    margin-top: 10px;
    margin-bottom: 10px;
}

.radio-inline {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.footnotesdata {
    font-weight: 700;
    padding-bottom: 1em;
}

.footnotesdesc {
    text-indent: 30px;
    padding-bottom: 1em;
}

.radio-inline label {
    margin-left: 5px;
}

/*.wsu-c-container wsu-c-content {
    padding: 40px 36px 48px 36px;
    padding-bottom: 60px !important;
}*/

.minimal-padding-bottom {
    padding-bottom: 1px; /* Adjust the value as needed */
}

.no-padding-left {
    padding-left: 0px;
}

/*.wsu-s-nav-vertical-split__menu-item-link {
    color: black !important;*/ /* Set the link color to black  */
/*}

    .wsu-s-nav-vertical-split__menu-item-link:hover {
        color: black;*/ /* Ensure the hover state also uses the same color */
    /*}*/

.regulation_title {
    color: #5e6a71 !important;
    font-size: 1.5em;
    line-height: 1.4em;
}

.general-information-links{
    margin-bottom: 6px;
}

.underline-accent {
    text-decoration: underline;
    text-decoration-color: #a60f2d;
    text-underline-offset: 6px;         /* Increase this value to lower the underline */
    text-decoration-thickness: 1px;
    transition: text-decoration-thickness 0.2s;
}

.underline-accent:hover {
    text-decoration: underline;
    text-decoration-color: #a60f2d;
    text-underline-offset: 6px;
    text-decoration-thickness: 2.5px;     /* Thicker underline on hover */
}

.top-footer-div {
    padding-bottom: 5px;
    text-decoration: none !important;
}

.top-footer-div table a {
    text-decoration: none !important;
}

    .top-footer-div table td {
        text-decoration: none !important;
    }

.regulation_title_numbered {
    color: #981e32 !important;
    font-size: 1.2em;
    line-height: 1.5em;
}

.courseheader {
    color: #981e32 !important;
    font-weight: bold;
    font-size: 1.2em;
    line-height: 1.5em;
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

/*
    The following is used to override inherited styles from the WSU CSS
    that were breaking the Event Calendar control
*/
/*.wsu-c-content div.eventCalendar-wrap ul li {
    padding-left: 0;
    font-size: inherit;
    font-weight: normal;
    line-height: 1em;
    padding-left: 0;
    margin: 0;
}

    .wsu-c-content div.eventCalendar-wrap ul:not([class^=wsu-c-]):not([class*=" wsu-c-"]) > li:before, ul.wsu-c-list > li:before,
    .wsu-c-content div.eventCalendar-wrap ul li:before {
        content: "";
        background-color: transparent;
    }

.wsu-c-content div.eventCalendar-wrap a:not([class^=wsu-c]):not([class*=" wsu-c"]),
.wsu-c-content div.eventCalendar-wrap a:not([class^=wsu-c]):not([class*=" wsu-c"]):visited {
    color: initial;
    border-bottom: none;
}

.wsu-c-content div.carousel-item p {
    margin-bottom: 0;
}

.wsu-c-content .gform_wrapper select.form-control, .wsu-c-content select.form-control {
    padding: 6px 12px;
    width: 100%;
    min-height: unset;
}

.wsu-c-content .input-group > .form-control {
    width: 1%;
}

.wsu-c-content .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.wsu-c-content input,
.wsu-c-content textarea {
    width: unset;
    padding: 6px 4px;
}

    .wsu-c-content .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
    .wsu-c-content input.form-control,
    .wsu-c-content textarea.form-control {
        width: 100%;
    }

.wsu-c-content img {
    width: unset;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.wsu-c-content img, .wsu-c-image {
    width: unset;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.wsu-s-container--content-xlarge .wsu-c-container, .wsu-s-wrapper--content-xlarge .wsu-c-container {
    max-width: 1800px;
}

div.wsu-s-container.wsu-s-container--content-xlarge {
    z-index: 9999;
    max-width: 1800px;
}*/


.footer-container {
    align-content: center;
    text-align: center;
    padding: 10px; /* Add padding for better appearance */
    background-color: #f7f7f7; /* Remove any background color */
}

.footer-container table {
    margin-bottom: 0; /* Remove any bottom margin */
}

.footer-content {
    display: flex;
    flex-direction: column;
    align-items: center; /* Center the content horizontally */
}

.footer-container table td {
    padding: 0 39px; /* Add horizontal padding to create space between the <td> elements */
}

a {
    color: #a60f2d !important; /* Apply the desired color to all links */
}

    a:hover {
        color: #a60f2d; /* Ensure the hover state also uses the same color */
    }

@media (max-width: 768px) {
    .footer-container {
        width: 100%;
        padding: 0 10px; /* Adjust the padding as needed */
    }
}

@media (max-width: 768px) {
    .mobile-footer-space {
        /*margin-bottom: 50px;*/ /* Adjust the value as needed */
    }
}

@media (max-width: 768px) {
    .hide-on-mobile {
        display: none;
    }
}

.dropdown-content a.selected-campus {
    text-decoration: underline;
    text-decoration-color: #a60f2d;
    text-decoration-thickness: 2.5px;
    font-weight: bold;
}

.float-right {
    text-align: right;
}

.force-italic {
    font-style: italic !important;
}

.academics_header {
    float: left;
    color: #981e32 !important;
    width: 100%;
}

.change-campus-options {

}


div.unit-fullinfo .academics_header {
    margin-bottom: 12px !important;
}

.academics_course_header {
    float: left;
    color: #981e32 !important;
}

/*.wsu-c-container {
    padding-top: .1rem !important;
    padding-bottom: 160px !important;
}

.wsu-spine-header a {
    color: black !important;
}

.wsu-c-content label {
    margin: 0 0 0 5px;
    width: unset;
    max-width: 95%;
    line-height: inherit;
    vertical-align: middle;
}

.wsu-c-content input[type="checkbox"] {
    display: inline-block;
}

    .wsu-c-content input[type="checkbox"] + label,
    .wsu-c-content input[type="radio"] + label {
        margin: 0 0 0 5px;
    }

.wsu-c-card__description {
    margin-bottom: 0 !important;
}

.wsu-c-content fieldset, .wsu-c-form__fieldset {
    border: unset;
    border-radius: unset;
    margin: unset;
}

.wsu-c-content h1:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-content h2:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-content h3:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-content h4:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-content h5:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-content h6:not([class^=wsu-c]):not([class*=" wsu-c"]).margin,
.wsu-c-heading {
}


.wsu-g-header__wrapper {
    position: fixed;
    z-index: 10000;
    opacity: 1;
}

.wsu-g-footer-wrapper {
    position: fixed;
    z-index: 10000;
    bottom: 0px;
    max-width: 4000px;
}

.wsu-g-footer {
    float: right;
}

.wsu-c-content figure:not([class^="wsu-c-"]):not([class*=" wsu-c-"]) {
    margin-left: 0;
}*/

body.loading {
    background-color:#000;
}

/*#page-area:not(.maintenance-mode) {
    margin-top: 70px;
}*/

html {
    font-size: 16px;
}

h1:focus {
    outline: none;
}

i {
    font-style:normal;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

.blazor-error-boundary::after {
    content: "An error has occurred."
}

.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}

.loading-progress circle {
    fill: none;
    stroke: #e0e0e0;
    stroke-width: 0.6rem;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}

.loading-progress circle:last-child {
    stroke: #1b6ec2;
    stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
    transition: stroke-dasharray 0.05s ease-in-out;
}

.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}

.loading-progress-text:after {
    content: var(--blazor-load-percentage-text, "Loading");
}

.dropdown-item i:not([class*="sort-indicator"]) {
    min-width: 28px;
    text-align: center;
    margin-right: 5px;
}

.dropdown-item.active {
    background: #555;
    color: #fff;
}

nav a.nav-link.active {
    background-color: #555;
    border-radius: 5px;
    color: #fff !important;
}

.nav-item.disabled {
    cursor: not-allowed;
}

.btn-xs {
    padding: .2rem .2rem;
    font-size: .8rem !important;
    line-height: .6rem;
    border-radius: .2rem;
}

.btn-xs:has(i.icon) {
    /*padding: 0 .1rem .4rem .1rem;*/
}

.btn-xs .icon-text {
    padding-left: 0;
    padding-right:.2rem;
}

.note,
.note-right {
    opacity: 0.7;
    font-style: italic;
    font-size: .8em;
}

.note-right {
    text-align:right;
}

.note-right i {
    font-style:italic;
}

.pointer {
    cursor: pointer;
}

div.right {
    text-align:right;
}

img.user-menu-icon {
    width: 24px;
    height: 24px;
    max-width: 24px;
    max-height: 24px;
    border-radius: 50%;
}

img.user-icon {
    max-width: 200px;
    max-height: 200px;
    border-radius: 50%;
}

img.user-icon-small {
    max-width: 100px;
    max-height: 100px;
    border-radius: 50%;
}

img.paged-recordset-photo {
    max-width: 24px;
    max-height: 24px;
    border-radius: 50%;
}

img.user-icon-info {
    max-width: 80px;
    max-height: 80px;
    border-radius: 50%;
}

nav.navbar {
    background-color: #eee;
    min-height:59px;
}

.offcanvas {
    z-index: 9999999;
}

.offcanvas-header {
    padding-bottom: 0;
}

.hover-highlight:hover {
    background-color: #eee;
    border-radius:.4em;
}

span.form-check {
    display: inline-block;
}

.version-and-copyright {
    font-size: 0.8em;
}

a.app-admin-only span {
    font-style: italic;
    opacity: 0.9;
}

h1.page-title {
    font-weight:100;
}

h2.subtitle {
    font-size: 1.7rem;
}

h2.subtitle,
h3.subtitle {
    font-weight:100;
}

.keyword-search {
    display: inline-flex;
    padding-left: 10px;
    position: relative;
    vertical-align: middle;
}

.keyword-search label {
    position:relative;
    top:.5em;
    margin-right:.5em;
    margin-left:1em;
}

a.nowrap,
.btn-group.nowrap,
button.nowrap,
th.nowrap,
td.nowrap {
    white-space: nowrap;
}

.min-50 {min-width:50px;}
.min-100 {min-width:100px;}

table.table:not([class*="mb-2"]) {
    margin-bottom: 0;
}

table.table thead tr th,
table.table tbody tr td,
table.table tfoot tr td {
    vertical-align:middle;
}

table.table thead tr th.no-pad-right,
table.table tbody tr td.no-pad-right {
    padding-right: 0 !important;
    /*padding: 8px 0 8px 8px;*/
}

table.table thead tr th.no-pad-left,
table.table tbody tr td.no-pad-left {
    padding-left: 0 !important;
    /*padding: 8px 8px 8px 0;*/
}

table.table thead tr th.no-pad-left.no-pad-right,
table.table tbody tr td.no-pad-left.no-pad-right {
    padding-left: 0 !important;
    padding-right: 0 !important;
    /*padding: 8px 0 8px 0;*/
}

table.table thead tr th.action-item,
table.table tbody tr td.action-item {
    width: 1%;
}

table.table tbody tr.action-row {
    cursor: pointer;
}

table.table tbody tr.action-row:hover {
    background-color: #ccc;
}

table tbody td.pad-right {
    padding-right:.25em;
}

tr.action-row:hover td {
    background-color:#888;
    color:#fff;
}

table.table thead tr th button.btn-default {
    font-weight: 600;
}

table.table thead tr th button:disabled.btn-default {
    opacity: .8;
}

table.table.paged-recordset-table tr td {
    border-style: none;
}

table.table.paged-recordset-table tr.even-row {
    background-color: #eee;
}

table.table.paged-recordset-table tr.even-row td {
    color: #000;
}

table.table.paged-recordset-table tr.odd-row {
    background-color: #ddd;
}

table.table.paged-recordset-table tr.odd-row td {
    color: #000;
}

table.table.paged-recordset-table tr.escalated {
    background-color: #dc3545;
    color: #fff;
}

table.table.paged-recordset-table tr.sep-row td {
    border-style: solid;
}

table.table tbody tr.disabled td {
    font-style: italic;
    opacity: 0.5;
}

table.table.top thead tr,
table.table.top tbody td {
    vertical-align:top;
}

table.table.no-lines tr td {
    border-bottom-width:0;
}

table.table.no-lines tr.show-lines td {
    border-bottom-width:var(--bs-border-width);
}

table.table tr.no-pad-top td {
    padding-top:0;
}

table.table.caller-table tr td:first-child {
    min-width:120px;
}

table.table.no-lines tr td {
    border-bottom-width: 0;
}

table.table.no-lines tr.show-lines td {
    border-bottom-width: var(--bs-border-width);
}

.icon-text {
    padding-left: 0.2em;
}

.offcanvas i {
    min-width:24px;
    text-align:center;
}

.toast {
    opacity: 0.85;
}

.toast button {
    font-size: 0.8em;
}

.toast-time {
    font-size: 0.7em;
    opacity: 0.6;
}

.toast-container {
    position: fixed;
    top: 90px;
    margin-right: 20px;
}

.toast-container > :not(:last-child) {
    margin-bottom: .75em;
}

.toast .toast-large {
    font-size: 1.5em;
}

.toast .toast-large-icon {
    font-size: 1.5em;
}

.toast .spinner-border,
.toast .spinner-grow {
    width: 1.3rem;
    height: 1.3rem;
}

.message-icon {
    font-size: 1.2em;
    margin-right: .2em;
}

a.btn,
button.btn {
    margin-right:.2em;
    margin-bottom:.2em;
}

h1 button.btn,
h2 button.btn {
    margin-bottom:0;
}

.input-group button.btn {
    margin-bottom:0;
}

.btn-group a.btn,
.btn-group button.btn {
    margin-right:0;
}

/*ul {
    margin-bottom: 0;
}*/

/*ul,
.alert ul,
.toast-body ul {
    list-style:revert;
}*/

.mud-main-content {
    padding:.5em;
}

.mud-button {
    text-transform:none;
    font-weight:normal;
}

.mud-list-item-text  i {
    min-width:24px;
    text-align:center;
}

.mud-container {
    padding-right:0;
    padding-left:0;
}

.site-drawer .mud-drawer-content {
    padding: 0;
}

.site-drawer div {
    padding-left: 1em;
    padding-right: 1em;
}

.site-drawer .mb-2 {
    padding: 0;
}

.site-drawer .hover-highlight,
.site-drawer .current-tenant {
    padding-top: .3em;
    padding-bottom: .3em;
}

.indented-sm {
    margin-left:1em;
}

.indented {
    margin-left:2.5em;
}

.required-flag {
    color:red;
    position:relative;
    top:-2px;
}

.required-indicator {
    font-size:0.8em;
    margin-bottom:1em;
    opacity:0.9;
}

.required-flag:after {
    content: "*";
}

.menu-user-name {
    font-size: 1.4em;
}

.menu-user-name,
.menu-user-title,
.menu-user-dept,
.menu-user-username,
.menu-user-email {
    display: block;
}

.menu-user-username,
.menu-user-email {
    font-size: 0.8em;
}

.center {
    text-align:center;
}

select.missing-required,
select:focus.missing-required,
input.missing-required,
input:focus.missing-required,
textarea.missing-required,
textarea:focus.missing-required,
.missing-required input[type="text"] {
    background-color: palevioletred;
    border-color: darkred;
    color: #fff;
}

.missing-required option {
    background-color: #fff;
    color: #000;
}

.missing-required::placeholder {
    color: #fff;
}

.unbold {
    font-weight: normal;
}

div.block {
    display: inline-block;
}

div.left,
div.right {
    display: inline-block;
}

.login-button {
    width: 100%;
    min-width: 400px;
    border-color: rgba(20, 20, 20, .3);
}

i.icon {
    min-width: 1em;
    text-align: center;
}

.login-button i.icon {
    font-size: 2em;
    margin-right:.2em;
}

.login-button i:not(.icon) {
    position: relative;
    top: .13em;
    padding-right: .2em;
}

.login-button img {
    height: 36px;
    margin-right: .2em;
}

#login-button-local i:not(.icon) {
    top: -.25em;
}

.fixed-50 {
    width: 50px;
    display: inline-block;
}

.fixed-75 {
    width: 75px;
    display: inline-block;
}

.fixed-100 {
    width: 100px;
    display: inline-block;
}

.fixed-150 {
    width: 150px;
    display: inline-block;
}

.fixed-200 {
    width: 200px;
    display: inline-block;
}

.fixed-250 {
    width: 250px;
    display: inline-block;
}

.fixed-300 {
    width: 300px;
    display: inline-block;
}

.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
    --bs-offcanvas-transition: none;
}

table.full {
    width:100%;
}

table.first-column-bold thead th:first-child,
table.first-column-bold tbody td:first-child {
    font-weight: bold;
}

table.first-column-right thead th:first-child:not(.center),
table.first-column-right tbody td:first-child:not(.center) {
    text-align: right;
}

table.first-column-small thead th:first-child,
table.first-column-small tbody td:first-child {
    width: 1%;
}

table.first-column-right td table td:first-child,
table.first-column-right th table th:first-child {
    text-align: left;
}

table.first-column-right td table td.center:first-child,
table.first-column-right th table th.center:first-child {
    text-align: center;
}

table.first-column-right td table td.right:first-child,
table.first-column-right th table th.right:first-child {
    text-align: right;
}

th.left,
td.left,
table.first-column-right table th.left,
table.first-column-right table td.left {
    text-align: left;
}

th.center,
td.center,
table.first-column-right th.center,
table.first-column-right td.center {
    text-align:center;
}

table.first-column-right td:first-child .form-switch {
    position:relative;
    top:4px;
}

table.padded thead tr th,
table.padded tbody tr td {
    padding: 5px;
}

.drag-and-drop-upload {
    background-color:#555;
    border:2px dashed #222;
    border-radius:1em;
    padding:.5em;
}

.drag-and-drop-upload.drag-highlight {
    border:2px dashed orange;
    background-color:#444;
}

.drag-and-drop-instructions {
    color:#fff;
}

.drag-and-drop-instructions-file-types {
    font-size:0.9em;
    color:#fff;
    opacity:0.7;
}

.mud-input-control {
    margin-top: 0;
}

.bold {
    font-weight:bold;
}

.rz-dialog-content {
    color:#000;
}

hr.section {
    border: 0 !important;
    height: 1px !important;
    background-color: #262a2d !important;
}

table tbody tr.item-deleted td,
table tbody tr.item-deleted td a[href^="mailto:"]{
    /*font-style: italic !important;*/
    /*opacity: 0.9;*/
    color: red;
}

table tbody tr.item-deleted td .action-button {
    background-color:#dc3545;
    border-color:#dc3545;
    color:#fff;
}

table tbody tr.item-deleted td .action-button:hover {
    background-color:#fff;
    color:#b02a37;
}

.last-modified {
    font-size:0.8em;
    opacity:0.6;
}

.last-modified-datetime {
    text-transform:lowercase;
}

/*table.udf-labels tbody tr td.top {
    vertical-align:top;
    padding-top:.65em;
}*/

.marked-as-deleted-info {
    font-size:1.7em;
}

.marked-as-deleted-notes {
    
}

.material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    /*font-size: 22px;*/ /* Preferred icon size */
    font-size:1.2em;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    position:relative;
    top:.2em;
}

i.icon {
    min-width: 20px;
    text-align: center;
}

img.icon,
span.svg-icon svg {
    max-width: 1.2em;
    max-height: 1.2em;
}

span.svg-icon {
    vertical-align: text-bottom;
}

.code {
    /*font-family: monospace;*/
}

.tab-content-settings {
    padding: 1em;
    border-left: solid 1px var(--bs-border-color);
    border-right: solid 1px var(--bs-border-color);
    border-bottom: solid 1px var(--bs-border-color);
}

.logo-medium {
    max-height:100px;
}

.logo-homepage {
    max-height: 150px;
}

.logo-navbar {
    min-height:40px;
    max-height:40px;
    width:auto;
}

.hidden {
    display:none;
}

.rz-button-md, .rz-scheduler-nav-views .rz-button.rz-primary, .rz-scheduler-nav-views .rz-primary.rz-paginator-element, .rz-date-filter-buttons .rz-button, .rz-date-filter-buttons .rz-paginator-element, .rz-fileupload-choose, .rz-selectbutton .rz-button.rz-button-md, .rz-selectbutton .rz-button-md.rz-paginator-element, .rz-selectbutton .rz-date-filter-buttons .rz-button, .rz-selectbutton .rz-date-filter-buttons .rz-paginator-element, .rz-date-filter-buttons .rz-selectbutton .rz-button, .rz-date-filter-buttons .rz-selectbutton .rz-paginator-element, .rz-selectbutton .rz-button.rz-fileupload-choose, .rz-selectbutton .rz-fileupload-choose.rz-paginator-element, .rz-splitbutton .rz-button-md, .rz-splitbutton .rz-fileupload-choose {
    text-transform: none;
}

.rz-slot.today {
    background-color: lightgoldenrodyellow;
}

:root {
    --rz-datepicker-calendar-selected-background-color: #0d6efd;
    --rz-scheduler-prev-next-button-background-color: #eee;
    --rz-scheduler-view-button-background-color: #eee;
    --rz-scheduler-view-button-color: #000;
    --rz-scheduler-view-selected-color: #555;
    --rz-scheduler-view-selected-background-color: #ddd;
    --rz-primary: #0d6efd;
    --rz-dialog-title-padding: .75rem .75rem 0 .75rem;
    --rz-dialog-content-padding: 0 .75rem .75rem .75rem;
    --rz-dialog-zindex: 1080;

    --highcharts-background-color: transparent !important;
    --highcharts-hilight-color: #0275d8 !important;
    --highcharts-text-color: #000000 !important;
    --highcharts-tooltip-background-color: #fff !important;
}

.highcharts-background {
    fill: var(--highcharts-background-color);
}

.highcharts-container text {
    fill: var(--highcharts-text-color) !important;
}

.highcharts-subtitle,
.highcharts-credits,
.highcharts-axis-title {
    fill-opacity: 0.7;
}

.highcharts-grid-line {
    stroke: var(--highcharts-text-color);
    stroke-opacity: 0.2;
}

.wsu-navigation-site-vertical .wsu-menu a {
    color: #f2f2f2 !important;
}

.wsu-menu-admin a {
    color: #f2f2f2 !important;
}

.wsu-menu-tertiary > li > a {
    color: #f2f2f2 !important;
}

.highcharts-tooltip-box {
    fill: var(--highcharts-tooltip-background-color) !important;
}

.highcharts-column-series rect.highcharts-point {
    stroke: var(--highcharts-background-color);
}

.rz-event-content.deleted {
    background-color:red;
    color:black;
}

.rz-button.rz-secondary {
    --rz-secondary: #0d6efd;
}

.btn.pad-left {
    margin-left: .5em;
}

h1.block {
    display:inline-block;
}

.header {
    display:inline-block;
    position:relative;
    top:-.25em;
}

.appointment-calendar {
    height:calc(100vh - 160px);
}

.edit-appointment input {
    --rz-input-font-size: .9em;
}

.date-only-picker input {
    width:145px;
    min-width:145px;
    max-width:145px;
}

.time-only-picker input {
    width:125px;
    min-width:125px;
}

h2.quick-action {
    font-size:1.5em;
}

.deleted-records {
    color:red;
}

.appointment-note,
.deleted-record {
    border:solid 1px #555;
    padding:.4em;
    margin-bottom:.2em;
    border-radius:5px;
}

.deleted-record .item-title {
}

.deleted-record .deleted-info {
    font-size:0.8em;
    opacity:0.5;
    text-align:right;
}

.tooltip-item {
    cursor: pointer;
}

.rz-html-editor,
.rz-html-editor i.rzi,
.rz-html-editor textarea {
    color: #000;
}

.ql-toolbar,
.ql-container {
    background-color:#fff;
    color:#000;
}

.file-selector {
    display: inline-block;
    margin: 0 1em 1em 0;
    border: solid 1px #000;
    border-radius: .5em;
    background-color: #fff;
    cursor: pointer;
    max-width: 150px;
    min-width: 150px;
}

.file-selector:hover {
    background-color:#eee;
}

.file-thumbnail {
    height: 150px;
    max-height: 150px;
    min-height: 150px;
    display: flex;
    justify-content: center;
}

.file-thumbnail img {
    max-height:150px;
    width:100%;
}

.file-name {
    color:#000;
    font-size:0.8em;
    opacity:0.8;
    padding-left:.5em;
}

.info-tip {
    color: #2196f3;
    font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 48;
}

.calendar-style-sample {
    padding: .2em;
    border-radius: .4em;
}

.auto-hide-overflow {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    max-width: 0;
}

.auto-overflow {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.media-button {
    min-width:70px;
}

.media-icon {
    margin-right:.4em;
}

.media-legend .media-icon {
    padding:.2em .5em;
}

tr.highlight td {
    background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1));
    color:#000;
}

.task-badge {
    font-size:1.3em;
    font-weight:normal;
}

.update-time {
    opacity:0.4;
    font-size:0.7em;
}

.section-title {
    font-size:1.4em;
}

.html-editor {
    background-color:#fff;
    color:#000;
}

.missing-required iframe {
    background: palevioletred !important;
    background-color: palevioletred !important;
}

.item-file {
    text-align:left;
    width:160px;
    max-width:160px;
    min-height:180px;
    max-height:180px;
    padding:6px;
    background:#fff;
    border:solid 1px #ddd;
    -webkit-box-shadow: 0 3px 5px rgba(0,0,0, .7);
    -moz-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.7);
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.7);
    /*float:left;*/
    margin:0 0.3em 0.3em 0;
    font-size:.8em;
    line-height:1em;
    position:relative;
    display:inline-block;
    vertical-align:top;
}

.item-file .item-file-delete-button {
    display:inline-block;
    text-align:left;
    position:absolute;
    top:5px;
    right:5px;
    z-index:10;
}

.item-file .item-file-image {
    min-height:150px;
    max-height:150px;
    cursor:pointer;
    display:flex;
    justify-content:center;
}

.item-file .item-file-image img {
    max-height:150px;
    max-width:100%;
    width:auto;
    height:auto;
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
}

.item-file .item-file-label {
    max-height:50px;
    width:148px;
    max-width:148px;
    overflow:hidden;
    position:absolute;
    bottom:5px;
    color:#888;
}

.item-file-label .file-name {
    max-width: 95px;
    width: 95px;
    line-height: 1.2em;
    max-height: 1.2em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    white-space: nowrap;
    float: left;
    text-align: left;
}

.item-file-label .file-size {
    max-width: 50px;
    width: 50px;
    display: inline-block;
    float: right;
    text-align: right;
}

.loading-spinner {
    width: 24px;
    height: 24px;
}

.view-text-file {
    margin-top: .5em;
    padding: .5em;
    border: solid 1px #888;
}

.normal-h1 {
    font-size: 3rem !important; /* Adjust the size as needed */
    margin: 0.67em 0;
}

.normal-h2 {
    font-size: 2rem !important; /* Adjust the size as needed */
    margin: 0.67em 0;
}

/*.wsu-c-content p {
    margin-top: 1px !important;
    margin-bottom: 1px !important;
}*/

textarea.autogrow {
    -webkit-transition: height .5s;
    transition: height .5s;
    height: 90px;
}

.wsu-wrapper-content {
    padding: 40px 36px 60px 36px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
}

textarea.autogrow:focus {
    height: 400px;
}

button.show-on-hover {
    opacity:0.8;
}

button.show-on-hover:hover {
    opacity:1;
}

button.show-on-hover span {
    display:none;
}

button.show-on-hover:hover span {
    display:inline;
}