
body {
    font-size: var(--font-body-small)
}
.w-fill-rest, .w-fill-rest * {
    font-size: var(--font-body);
    line-height: 25px;
}
/* #region Portal CSS*/
.portalWrapper {
    font-size: var(--font-body-small);
}

.portal-header img, .portal-header h3, .portal-user-cover {
    width: 100%;
    height: 84px;
    object-fit: cover;
}

.portal-user-cover {
    border-bottom: 4px solid var(--purple-bg-action);
}

    .portal-header h3:after, .portal-user-cover:after {
        content: "";
        position: absolute;
        width: 155px;
        height: 77px;
        right: -15px;
        bottom: -12px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        background-image: url(/Assets/CASN/Images/banner/StripesFull.svg);
    }

    .portal-user-cover:after {
        width: 60px;
        height: 30px;
        right: 0;
        bottom: -4px;
    }

.portalWrapper aside.sidebar-panel.fixedHeight ul li a {
    position: relative;
    padding: 4px 8px 4px 32px;
    border-radius: 4px;
    margin-bottom: 20px;
    font-size: var(--body-text);
    line-height: 24px;
    display: block;
    border: none;
    font-family: Commissioner-Regular;
    word-break: break-word;
}

    .portalWrapper aside.sidebar-panel.fixedHeight ul li a:before {
        font-family: "Font Awesome 6 Pro";
        font-weight: bold;
        font-size: 14px;
        position: absolute;
        left: 8px;
        width: 16px;
        text-align: center;
    }

    .portalWrapper aside.sidebar-panel.fixedHeight ul li a:not(.alt-img):before {
        content: "\2b";
    }

    .portalWrapper aside.sidebar-panel.fixedHeight ul li a.active {
        background: var(--purple-base);
        color: var(--header-text-white);
    }

    .portalWrapper aside.sidebar-panel.fixedHeight ul li a:hover, .w-lg-247 section .btn:hover {
        background: var(--purple-bg-light);
        color: var(--purple-base);
    }

.portal-user-cover .user-add {
    width: 42px;
    height: 42px;
    border-radius: 4px;
    background: var(--header-text-white);
    display: block;
    align-content: center;
    text-align: center;
    border: 1px solid var(--subtext-grey);
}

.portal-user-cover .fname {
    font-size: 16px;
}

.w-flex-portal {
    width: 100% !important;
}

@media(min-width: 991px) {
    .w-flex-portal {
        width: calc(100% - 425px) !important;
    }
}

.w-lg-247 section aside.portalMenu ul {
    list-style: none;
    font-size: var(--font-body-small);
}

    .w-lg-247 section aside.portalMenu ul li {
        position: relative;
        padding: 0px 0px 0px 28px;
        border-radius: 4px;
        margin-bottom: 0px;
        font-size: var(--body-text);
        line-height: 24px;
        display: block;
        border: none;
        font-family: Commissioner-Regular;
        word-break: break-word;
    }

        .w-lg-247 section aside.portalMenu ul li:before {
            content: "\2b";
            font-family: "Font Awesome 6 Pro";
            font-weight: bold;
            font-size: 14px;
            position: absolute;
            left: 0;
            width: 16px;
            text-align: center;
        }

        .w-lg-247 section aside.portalMenu ul li:not(:last-child) {
            margin-bottom: 8px;
        }

.w-lg-247 .border-end section:not(:first-child) {
    border-top: 1px solid var(--subtext-grey);
}

.w-lg-178 .bg-light-purple img {
    content: "";
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid var(--purple-base);
    border-radius: 100%;
    margin-right: 8px;
    background: white;
}

.portalContent {
    padding: 32px;
}

    .portalContent .h6 {
        padding: 12px;
        padding-bottom: 8px;
    }

    .portalContent .portal-card {
        width: 260px;
        min-width: 260px;
        max-width: 260px;
    }

.portal-card > div:first-child {
    width: 64px;
    height: 64px;
}

.portal-card > div:last-child {
    width: calc(100% - 64px);
    padding-left: 12px !important;
}

.portalContent .portal-card * {
    line-height: 20px;
}
.portal-card:hover {
    color: var(--purple-base);
    background: var(--purple-bg-light);
    border-color: var(--purple-bg-light);
}

.portal-carousel .btn-light {
    padding: 0;
    width: 24px;
    height: 24px;
    align-items: center;
    display: flex;
    justify-content: center;
}

.portal-carousel .btn-left {
    left: -12px;
}

.portal-carousel .btn-right {
    right: -12px;
}

.dropdown-toggle.menu-drop:after {
    right: 20px;
    position: absolute;
    content: "\f0d7";
    margin-left: 8px;
    padding: 0 3px;
    border: none;
    font-family: "Font Awesome 6 Pro";
    font-weight: bold;
}

.menu-drop-list a {
}

    .menu-drop-list a:before {
        font-family: "Font Awesome 6 Pro";
        font-weight: bold;
        margin-right: 12px;
    }

    .menu-drop-list a:not(.alt-img):before {
        content: "\2b";
    }

.tags-wrap .btn-light {
    white-space: nowrap;
}
.search-wrapper {
    padding: 6px 8px 6px 12px;
}
/* #endregion */
/* #region Forms */
.form-default {
    max-width: 435px;
    margin: auto;
    padding: 50px 0;
}
.form-default .form-row{
    display: flex;
    flex-direction: column;
}
.form-default .form-row label, #formModal label{
     font-family: 'Commissioner-Medium';
     font-size: var(--font-body-small);
     margin-bottom: 12px;
     /*margin-left: 12px;*/
     margin-top: 25px;
}
.form-default .form-row select{
    padding: 10px 12px;
    border-radius: 4px;
    border: 1px solid var(--subtext-grey);
    font-size: var(--body-text);
    width: 100%;
    cursor: pointer;

    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
}
.form-default .form-row select::-ms-expand {
    display: none;
}
.form-default .form-row .select-wrap, .date-input, .date-input input{
    position: relative;
    cursor: pointer;
}
.form-default .form-row .select-wrap:after, .date-input:after{
    content: "\f0d7";
    right: 12px;
    position: absolute;
    font-family: "Font Awesome 6 Pro";
    font-weight: bold;
    top: 10px;
    pointer-events: none;
    color: #5E3190;
}
.form-default .form-row .select-wrap:focus-within:after {
    content: "\f0d8";
}
.form-default .form-row input[type="text"], .form-default .form-row input[type="password"], #formModal input, .form-row textarea,  .form-row .file-wrap{
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid var(--subtext-grey);
    font-size:14px
    /*margin-bottom: 25px;*/

}
.form-default .form-row input[type="text"]:hover, .form-default .form-row input[type="password"]:hover, #formModal input:hover, .form-default .form-row .select-wrap:hover select, .file-wrap:hover {
    background: var(--purple-bg-light);
    border-color: var(--purple-base);
}
.form-default input[type="checkbox" i], .form-default input[type="radio" i], #formModal input[type="checkbox" i], .accordion input[type="checkbox" i] {
    margin-right: 10px;
    position: relative;
    bottom: -2px;
    background: black;
    padding: 6px;
    width: 16px;
    height: 16px;
    /*-webkit-box-shadow: 0px 0px 0px 1px black;
    -moz-box-shadow: 0px 0px 0px 1px black;
    box-shadow: 0px 0px 0px 1px black;*/
    cursor: pointer;
}
.form-default .validation-error{
    color: red;
    font-size: var(--font-body-small);
    margin-left: 12px;
}
.validation.asp-validate{
    color: red;
}
.form-default .form-row td label {
    margin: 0;
}
.sendIcon:before {
    content: "\e20a";
    margin-right: 8px;
}
.btn-upload:before {
    content: "\f093";
    margin-right: 8px;
}
.date-input:after {
    content: "\f133";
}

#formModal .inline-rb input[type="radio"] {
    width: auto;
    margin-right: 12px;
}

#formModal .inline-rb label {
    display: inline;
}
#formModal .inline-rb td:has(input) {
    padding-bottom: 10px;
    padding-top: 10px;
}
#formModal .inline-rb td {
    display: flex;
}
#formModal .inline-rb td label {
    margin: 0;
}
input[type="checkbox"], input[type="radio"] {
    accent-color: var(--purple-base)
}
.file-wrap input{
    display: none;
}
.file-wrap span {
    align-self: center;
    color: #4B4B4B;
}
.file-wrap {
    padding: 6px !important;
    padding-left: 12px !important;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
}

.form-default .imgDisplay {
    border-radius: 100px;
    width: 200px;
    height: 200px;
    margin: auto;
    overflow: hidden;
    cursor: pointer;
    padding: 0;
}
.form-default .imgDisplay:hover{
    filter: brightness(0.8);
    position: relative;
}
.form-default .imgDisplay:hover:after{
    content: "\f044";
    font-family: "Font Awesome 6 Pro";
    font-weight: bold;
    position: absolute;
    top: calc(50% - 18px);
    left: calc(50% - 10px);
    font-size: 26px;
}
.form-default .imgDisplay span{
    display: none;
}
.form-default .imgDisplay img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.express_validation{
    color: red;
}

.portalContent .validation{
    color: red;
}

.text-nowrap td {
    white-space: nowrap
}
/* container styling */
.form-default .RadCaptcha {
  padding: 20px 16px;
  background-color: #f5f5f5;
  border-radius: 6px;
  border: 1px solid var(--subtext-grey);
  margin-top: 25px;
}

/* image */
.form-default .RadCaptcha img.imageClass {
  display: block;
  width: 100%;
  max-width: 180px;
  height: auto;
  border: 1px solid var(--subtext-grey);
  border-radius: 4px;
  margin-bottom: 10px;
}

/* Refresh link */
.form-default .RadCaptcha .rcRefreshImage {
  display: inline-block;
  margin-top: 8px;
  font-size: var(--font-body-small);
  color: var(--purple-base);
  text-decoration: underline;
  cursor: pointer;
}

/* input */
.form-default .RadCaptcha input[type="text"] {
  width: 100%;
  padding: 8px 12px;
  font-size: var(--body-text);
  border-radius: 4px;
  border: 1px solid var(--subtext-grey);
  margin-top: 10px;
}

/* input hover for UX consistency */
.form-default .RadCaptcha input[type="text"]:hover {
  background: var(--purple-bg-light);
  border-color: var(--purple-base);
}

/* label */
.form-default .RadCaptcha label {
  display: block;
  margin-top: 8px;
  font-family: 'Commissioner-Medium';
  font-size: var(--font-body-small);
  color: #333;
}

/* error message */
.form-default .RadCaptcha span {
  display: block;
  color: red;
  font-size: var(--font-body-small);
}

/* #endregion*/