/*!
 * Customer Self-Service Portal - Student Portal Theme
 * Federation University Australia
 *
 * Last Updated: May 20, 2026 (Phase 2 Reorganization)
 * Version: 2.0
 *
 * IMPORTANT: Do not include page-specific styles here.
 * Use individual page CSS files for page-specific styling.
 */

/* ==========================================================================
   1. Font Declarations
   ========================================================================== */

@font-face {
  font-family: "Inter";
  src: url("./inter-v20-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("./inter-v20-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("./inter-v20-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Sora";
  src: url("./sora-v17regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Sora";
  src: url("./sora-v17-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Sora";
  src: url("./sora-v17-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* ==========================================================================
   2. CSS Variables
   ========================================================================== */

:root {
  /* Base Font Size - 10px for easy rem calculations */
  font-size: 0.625rem;

  /* Bootstrap Overrides */
  --bs-body-font-family: "Inter", "Sora", sans-serif;
  --bs-border-input: #BCBEC0;
  --Neutral-500 : #808080;
   --bs-table-accent-bg: #F2F2F2;
   --alert-bg-color: #CA4B4B;
  --background-color-1: #F0FCF6;
  --Neutral-grey-tint: #F4F4F4;
  /* Typography Scale */
  --font-size-xs: 1.2rem;    /* 12px */
  --font-size-sm: 1.4rem;    /* 14px */
  --font-size-base: 1.6rem;  /* 16px */
  --font-size-md: 1.8rem;    /* 18px */
  --font-size-lg: 2rem;      /* 20px */
  --font-size-xl: 2.4rem;    /* 26px */
  --font-size-2xl: 3rem;     /* 30px */
  --font-size-3xl: 3.6rem;   /* 36px */
  --font-size-4xl: 3.8rem;   /* 38px */

  /* Font Weights */
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;

  /* Line Heights */
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-base: 2.6rem;
  --line-height-relaxed: 3.2rem;
  --line-height-heading: 3.6rem;

  /* Spacing Scale */
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 1.5rem;
  --spacing-lg: 2rem;
  --spacing-xl: 2.8rem;
  --spacing-2xl: 3rem;
  --spacing-3xl: 3.6rem;
  --spacing-4xl: 4rem;
  /* Border Radius */
  --radius-sm: 0.5rem;
  --radius-md: 1rem;
  --radius-lg: 2rem;
  --radius-xl: 3rem;
  --radius-pill: 5rem;
  --radius-circle: 50%;

  /* Transitions */
  --transition-fast: 0.15s ease;
  --transition-base: 0.3s ease;
  --transition-slow: 0.7s ease;

  padding-inline-start: 0px
}

/* ==========================================================================
   3. Base & Typography
   ========================================================================== */

body {
  font-size: var(--font-size-base);
  font-family: var(--bs-body-font-family);
  background-color: var(--portalThemeColor5);
  color: var(--portalThemeColor1);
  line-height: var(--line-height-base);
}

/* Heading Hierarchy */
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  font-family: "Sora", sans-serif;
  color: var(--portalThemeColor1);
}

body h1 {
  font-size: var(--font-size-4xl);
  line-height: var(--line-height-heading);
  font-weight: var(--font-weight-semibold);
}

body h2 {
  font-size: var(--font-size-2xl);
  line-height: var(--line-height-heading);
  font-weight: var(--font-weight-semibold);
}

body h3 {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-relaxed);
  font-weight: var(--font-weight-semibold);
  margin-top: var(--spacing-lg);
}

h3.labeled {
  margin-top: var(--spacing-2xl);
  margin-bottom: var(--spacing-xl);
}

body h4 {
  font-size: var(--font-size-md);
}
body h4,
body h5 {
  line-height: var(--line-height-relaxed);
  font-weight: var(--font-weight-semibold);

}

body h5{
    font-size: var(--font-size-base);
}
h6 {
  font-size: 1.6rem;

}

/* Body Text */
body p,
body ul,
body button,
body input,
body optgroup,
body select,
body textarea,
body .footer-bottom {
  font-family: "Inter", "Sora", sans-serif;
}

body p,
body ul,
body li{
  color: var(--portalThemeColor9);

}

ul {
  list-style-position: inside;
}
body a,
body .a{
  font-family: "Inter", "Sora", sans-serif;
  font-size: 1em;
  color: var(--portalThemeColor8);
}

body a:not(.btn) {
  text-decoration: underline; /*override portalbasictheme*/
}

body p,
body .p,
body .page_section p,
body .section-diagonal-left p,
body .section-diagonal-right p,
p.form-text span {
  font-size: var(--font-size-base);
}

.m-20 { margin: 2rem}
.mt-20 { margin-top: 2rem  }
.mb-20 { margin-bottom: 2rem  }
.ms-20 { margin-left: 2rem  }
.me-20 { margin-right: 2rem  }

.mt-50 {
    margin-top: 5rem;
}
.mb-50,
.mb-50.h3.labeled {
    margin-bottom: 5rem;
}


/* Labels & Legends */
body label span,
legend span {
  font-family: "Inter", "Sora", sans-serif;
}

body label {
  font-weight: var(--font-weight-semibold);
}

.field-label,
.form-label,
.collection-notice {
  font-weight: var(--font-weight-semibold) !important;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-lg);
}

.form-label {
  color: var(--portalThemeColor9);
}
ol,ul,                      /*override bootstrap style on list*/
html[dir=ltr] li a  {
  padding-left: 0px;
  margin-left: 0px
}

.ck-content ul {
  padding-left: 2rem;
}

textarea,
button {
  font-size: 1.6rem;
}

.form-control {
  font-size: 1.6rem;
}

/* Typography Utilities */
strong:not(.btn) {
  font-weight: var(--font-weight-semibold);
}

/*hide page heading by default*/
.page-heading .breadcrumb {
    display: none;
}
.color-white {
  color: var(--portalThemeColor5) !important;
}

.f-sora {
  font-family: "Sora","Inter", sans-serif !important;
}

.dashboard-width {
  width: 95.4rem;
}

@media screen and (max-width: 900px){
  .dashboard-width {
    width: inherit;
  }
}

/* @media screen and (min-width: 1400px){
  .w-lg-80 {
    width: 70%;
  }
} */

 .glyphicon,
.fa,
.fa:before {
    font-family: "Font Awesome 7 Pro" !important;
     font-weight: 600;
}

.fa-trash:before {
    content: "\f2ed" !important;
}

.fa-times::before {
  font-weight: 600 !important;
  content: "\f00d" !important;
}

.fa-edit::before {
  content: "\f044" !important;
}
.fa-chevron-left::before {
  font-weight: normal !important;
  content: "\f323" !important;
  color: var(--portalThemeColor8);
}

.fa-chevron-right::before {
  font-weight: normal !important;
  content: "\f324" !important;
   color: var(--portalThemeColor8);
}
.glyphicon{
  font-weight: 600 !important;
}
.glyphicon.glyphicon-question-sign::before,
.greenid-helpicon:before {
  content: "\f059" !important;
  font-weight: 600 !important;
}
.glyphicon-calendar::before {
    content: "\f133" !important;
    font-weight: 600 !important;
}
/* ==========================================================================
   4. Buttons
   ========================================================================== */


.btn.btn-primary,
.btn.btn-secondary,
.btn.btn-default,
.add-folder {
  border-radius: var(--radius-pill);
  font-family: "Inter", "Sora", sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: var(--transition-slow);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  padding: .9rem 1.7rem;
}

.btn-primary,
.btn-secondary,
.btn-default,
a.add-folder {
  padding: .9rem 1.7rem;
}

.btn.btn-primary,
.btn.btn-default.launchentitylookup,
.btn.btn-default.clearlookupfield {
  border-width: 0;
  background-color: var(--portalThemeColor8);
  color: var(--portalThemeColor5);
}

.btn.btn-default,
.btn.btn-secondary,
.add-folder {
  border: 1px solid var(--portalThemeColor8);
  color: var(--portalThemeColor8);
  border-radius: var(--radius-pill);

}

/* Button States */
.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
  background-color: var(--portalThemeColor8);
  color: var(--portalThemeColor5);
  opacity: 0.7;
}

.btn.btn-primary:hover,
.btn.btn-default.launchentitylookup:hover,
.btn.btn-default.clearlookupfield:hover {
  background-color: var(--portalThemeColor1);
  color: var(--portalThemeColor5);
}
.btn.btn-primary:focus,
.btn.btn-primary:focus-visible {
  background-color: var(--portalThemeColor8);
  box-shadow: 0 0 0 2px var(--portalThemeColor5), 0 0 0 4px var(--portalThemeColor8);
  outline: none;
}

.btn.btn-default.launchentitylookup:focus,
.btn.btn-default.clearlookupfield:focus,
.btn.btn-default.launchentitylookup:focus-visible,
.btn.btn-default.clearlookupfield:focus-visible{
   background-color: var(--portalThemeColor8);

}

.btn.add-folder:hover {
  color: var(--portalThemeColor5);
  background-color: var(--portalThemeColor1);
}

.btn.btn-default:hover,
.btn.btn-secondary:hover {
  border-color: var(--portalThemeColor1);
  color: var(--portalThemeColor1);
  background-color: var(--portalThemeColor5);
}

.btn.btn-default:focus,
.btn.btn-default:active,
.btn.btn-secondary:active,
.btn.btn-secondary:focus {
  /* Override portalbasetheme - use semantic color in Phase 3 */
  background-color: var(--background-color-1) !important;
  color: var(--portalThemeColor8) !important;
}

.btn-group>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group>:not(.btn-check)+.btn {
  border-radius: var(--radius-pill) !important;
}

@media (max-width: 575px) {  /*increase button width on small screen, unless it is lookup or clear lookup*/
  button.btn:not(.clearlookupfield):not(.launchentitylookup):not([aria-label="Search Results"]),
  a.btn,
  input[type="button"],
  .btn-group.entity-action-button #NextButton {
   width: calc(100% - 6rem);
    margin: 1rem 3rem;
  }
}

button.msos-caret-button {
  scale: 1.1;
  margin-right: 1rem;
}
/*search icon on lookup model window*/
.entitylist-search .btn.btn-default{
  height: 4rem;
}
/* ==========================================================================
   5. Forms & Inputs
   ========================================================================== */
form .crmEntityFormView .cell {
  padding: 1.8rem 2.8rem 1.8rem 0px;
  margin-bottom: 0px;
}

.crmEntityFormView .cell select,
div.msos-filter-container.msos-filter-container{
  border-radius: .5rem;
  border: 1px solid var(--bs-border-input) !important;
}
.customControl  > .msos-container {
  border: none !important;
}
.msos-container  .msos-caret-container {
  border-radius: .5rem;
}
.crmEntityFormView .tab-title {
  border: none;
}
@media (max-width: 767px) {
  form .crmEntityFormView .cell{
     padding: 1.8rem 0;
  }
    .crmEntityFormView .actions {
      padding-left: 0px;
    }
}

body .crmEntityFormView {
  border: none;
}
.crmEntityFormView fieldset {
  margin: 0px
}

h2.tab-title {
  margin: 2rem 0px;
}


fieldset .section-title {
  padding-left: 0px;
}

/* .tab.clearfix {
    display: flex;
    flex-direction: column;
} */

form .alert.alert-block {
  background-color: #dedede;
  color: var(--portalThemeColor9);
  border: none;
}
/* Form Input Overrides - move to forms.css */
input:not([type='checkbox']):not([type='radio']):not([type='submit']):not(.btn),
div.msos-filter-container {
  min-height: 4rem;
  border-radius: var(--radius-sm);
  background-color: var(--portalThemeColor5) ;
}

input[type=radio] {
  line-height: 2.4rem;
  float: left;
  margin-top: 5px !important;
}


label:has(+ input[type="radio"]),
input[type="radio"] + label,
.checkbox-cell .table-info {
  width: calc(100% - 3rem);
}
html[dir=ltr] .crmEntityFormView .cell .picklist input[type=radio] {
  margin-right: 8px;
}
.picklist.vertical label, .picklist.vertical input[type="radio"] {
    display: inline-block;
    margin-bottom: 8px ;
}

input.form-control.lookup{
  border-top-right-radius: 0px ;
  border-bottom-right-radius: 0px ;
}

input.form-control {
  font-size: var(--font-size-base);
  /* Override portalbasictheme */
  border: 1px solid var(--bs-border-input) !important;
  padding-left: .8rem;
}
.crmEntityFormView .form-control.readonly,
 .crmEntityFormView .form-control[readonly][disabled],
 .form-readonly .form-control {
   padding-left: .8rem;
}

.crmEntityFormView .cell input[disabled],
.crmEntityFormView .cell textarea[disabled],
.crmEntityFormView .cell select[disabled],
.crmEntityFormView .cell input.readonly,
.crmEntityFormView .cell textarea.readonly,
.crmEntityFormView .cell select.readonly,
input.readonly.form-control,
textarea.readonly.form-control {
  background-color: #f9f9f9 !important;
  padding-left: .8rem;
}


input[type=radio],
input[type=checkbox] {
  scale: 1.2;
}

input::placeholder{
  color: #767676 !important;
}

   /* Autofill override - Prevent yellow background */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px var(--portalThemeColor5) inset !important;
  box-shadow: 0 0 0px 1000px var(--portalThemeColor5)  inset !important;
  -webkit-text-fill-color: var(--portalThemeColor6)  !important;
  transition: background-color 5000s ease-in-out 0s;
}


.crmEntityFormView .actions {
  border-top: none;  /*override default bootstrap setting*/
}

.crmEntityFormView .boolean-radio-cell .boolean-radio input[type=radio] {
    display: block;
    float: left;
    clear: left;
    height: 3rem;
    margin: auto .8rem auto 0px !important;
    cursor: pointer;
}
.crmEntityFormView .boolean-radio-cell .boolean-radio label {
  display: block;
    padding-left: 0px;
    margin-left: 0px;
    line-height: 3rem;

}
.control select {
  height: 4rem;
  font-size: 1.6rem ;
}


.captcha-cell {
  padding: 0px 2.8rem 2rem 0px;
}

.captcha-cell input[type='text'] {
    margin-right: 10px;
    padding: 0 10px;
}
.captcha-cell a[role="button"]{
  text-decoration:  none;
}

.cursor-pointer {
  cursor: pointer !important;
}

.transition-base {
  transition: var(--transition-base);
}

.dropdown.action .dropdown-menu > li > a.dropdown-item,
.dropup .dropdown-menu.show a.dropdown-item {
  border: 1px solid var(--portalThemeColor8);
  border-radius: 2rem;
  background-color: var(--portalThemeColor5);
  color: var(--portalThemeColor9);
}
.dropdown.action .dropdown-menu > li > a.dropdown-item:hover,
.dropup .dropdown-menu.show a.dropdown-item:hover {
  background-color: var(--portalThemeColor1);
  color: var(--portalThemeColor5) !important;
}
.dropup .dropdown-menu.show {
    transform: translate(20px, 38px) !important;
}
.dropdown.action .dropdown-menu.show,
.dropup .dropdown-menu.show  {
  background: none;
}

html[dir=ltr] .crmEntityFormView .cell .field-label{
  float: none;
}
.control div.text-muted:not(.createdby) {
    color: var(--portalThemeColor5) !important;
}

/*hide td that does not have any child element*/
/* td:not(:empty):not(:has(*)){
  display: none;
} */
td:empty{
  display: none;
}

.table > tbody > tr > td:empty{
  display: table-cell;
}

@media (max-width: 767px) {
  .crmEntityFormView table.section td:empty{
    display: none;
  }
  .row {
    margin-right: 0px;
    margin-left: 0px;
  }
}


/* Note: Form styles to be consolidated in Phase 3 */

/* ==========================================================================
   6. Navigation
   ========================================================================== */

.navbar {
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
}

.navbar a {
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-base);
  margin-bottom: 0;
}
.nav .dropdown-divider {
  display: none;
}
/* Responsive Navigation */
@media screen and (max-width: 1199px) {
  .static-top.navbar .navbar-collapse .ms-auto .navbar-nav.weblinks,
  .static-top.navbar .navbar-collapse .nav .show.dropdown-menu {
    background-color: var(--portalThemeColor4);
    padding: var(--spacing-sm);
  }

  .static-top.navbar .navbar-collapse {
    position: absolute;
    right: var(--spacing-sm);
    top: 92%;
    max-width: 77.1rem;
  }

  .navbar .container {
    position: relative;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl .navbar-collapse {
    flex-grow: 0;
    width: auto;
    margin-left: auto;
  }

  .container .nav-link:has(.username) {
    max-width: 45rem;
  }
}

.nav-link:has(.username) {
  max-width: 30rem;
  text-overflow: ellipsis;
  overflow: hidden;
}

.navbar-toggler {
  padding: 0.25rem 1.2rem;
  font-size: var(--font-size-lg);
  background-color: var(--portalThemeColor4);
  line-height: var(--line-height-tight);
}

button.navbar-toggler.collapsed {
  background: var(--portalThemeColor5);
}

.static-top.navbar .menu-bar > ul.navbar-nav > li > a {
  font-family: "Inter", "Sora", sans-serif;
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-base);
  color: var(--portalThemeColor1);
}

/* Mobile navigation positioning */
@media screen and (max-width: 1199px) {
  .static-top.navbar .navbar-collapse {
    top: 100%;
    z-index: 100;
  }
}

/* Prevent scrollbar on expanded mobile menu */
.navbar-collapse.show {
  overflow-y: inherit;
}

/* Brand container alignment */
div.navbar-brand {
  line-height: normal;
}

/* Navbar toggler button spacing */
button.navbar-toggler {
  margin: 0;
}

/* Mobile brand container height fix */
@media (max-width: 1200px) {
  .static-top .navbar-brand {
    height: inherit;
  }

  div.navbar-brand a {
    vertical-align: middle;
    display: flex;
  }
}

/* Navigation menu background */
ul.navbar-nav {
  background-color: #ffffff;
}


.ms-auto .nav.navbar-nav {
  margin-top: 0;
}

.ms-auto .navbar-nav.weblinks {
  padding-right: var(--spacing-lg);
}

@media(max-width: 576px) {
  .px-sm-20 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
}
.navbar-nav .dropdown-menu li a {
    padding: 9px 10px;
    margin: 0;
}
/* ==========================================================================
   7. Dropdowns & Menus
   ========================================================================== */

ul.dropdown-menu-end.dropdown-menu {
  font-size: var(--font-size-base);
}

.dropdown-menu {
  border: none;
}

#navbar .dropdown-menu {
  margin-top: 0;
}

.nav .show.dropdown-menu > li > a:hover {
  font-weight: var(--font-weight-medium);
}

body .nav .show.dropdown-menu {
  background-color: var(--portalThemeColor4);
}
/* ==========================================================================
   8. Layout & Spacing
   ========================================================================== */

section.page-form-header {
  background-color: inherit;
}

h3.labeled {
  padding-left: 0;
  border-left: none;
}

/*lis styles*/
.list-style-none {
  list-style: none;
}

.list-disc {
  list-style-type: disc;
  list-style-position: inside;
}

.lists li a{
 color: var(--portalThemeColor1);
 font-weight: var(--font-weight-medium);
}

body .dropdown-menu>li>a {
  padding-left: 2rem;
  padding-top: .3rem;
}

.lists li a:hover {
  padding-left: 1rem;

  transition: var(--transition-slow);
}

/* ==========================================================================
   16. Utility Classes
   ========================================================================== */

.card-header {
    background-color: inherit !important;
}

/* Home Banner Styles - move to home.css */

body .columnBlockLayout {
  margin-top: auto;
  margin-bottom: auto;
}

.home-banner {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
  min-height: 100px;
  padding: 0.8rem;
  align-items: center;
  margin: 0;
}
.home-banner .Title {

  font-family: "Sora", sans-serif;
  font-size: var(--font-size-4xl);
  color: var(--portalThemeColor5);
  font-weight: var(--font-weight-semibold);
}

.home-banner .help-btn{
  font-size: 2rem;
  font-weight: var(--font-weight-medium);
  font-family: "Sora",sans-serif;
  color: var(--portalThemeColor5);
}

@media (max-width: 767px) {
  .home-banner {
    min-height: 80px;
    padding: 0.6rem;
  }
  .home-banner .Title{
    line-height: var(--spacing-4xl);
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .home-banner {
    min-height: 120px;
  }
}


.sectionBlockLayout.home-banner {
  background: var(--portalThemeColor1);
  background-color: var(--portalThemeColor1);
  height: 212px;
  border-bottom: 0;
}

.col-4.columnBlockLayout {
  background-color: var(--portalThemeColor1);
  transform: none;
  width: auto;
  position: relative;
}

.container .columnBlockLayout {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}

.text-decoration-none,
table th a,
.text-decoration-none:hover,
a.text-decoration-none:hover {
  text-decoration: none !important;
}
/* Entity Lookup Buttons - Form specific */
.btn.btn-default.launchentitylookup,
.btn.btn-default.clearlookupfield {
  border-radius: 0;
  height: 4rem;
}

.view-toolbar.grid-actions .btn {
  min-width: 10rem;
}

.launchentitylookup {
  border-top-right-radius: .5rem !important;
  border-bottom-right-radius: .5rem !important;
}

input + span.input-group-addon.btn {
    height: 4rem;
}
.control span.btn {
  height: 4rem;
}
/* Modal Lookup Styles */
div.modal-content .input-group {
  height: 100%;
}

div.modal-content .input-group input {
  height: 100%;
}
.modal-form .modal-body iframe{
  max-height: 68vh;
}


@media (max-width: 767px) {
    ol.progress.bottom, ol.progress.top {
      display: inline-block !important;
    }
}

 table th {
   /* background-color: var(--portalThemeColor1) !important; */
   background-color: var(portalThemeColor5);
   border-bottom: 1px solid var(--portalThemeColor11);
   color: var(--portalThemeColor8);
 }


 .table>:not(caption)>*>* {
   background-color: var(--portalThemeColor5);
   /*override default bootstrap*/
   border-color: none;
 }

 /* .table>:not(caption)>*>*:hover,
 body .table-hover>tbody>tr:hover {

   background-color: var(--portalThemeColor10) !important;
   --bs-table-hover-bg: var(--portalThemeColor10) !important;
   --bs-table-accent-bg: var(--portalThemeColor10) !important;
 } */




.crm-tooltip {
  width: 1.5rem;
  margin-left: -6px;
  margin-top: -4px;

}
.checklistitem-moreinfo{
  display: inline-block;
  margin-left: 1rem;
}

/*aleart and warning*/
.alert.alert-block.alert-danger {
    background: var(--alert-bg-color);
    border: none;
    margin-bottom: 2.5rem;
}

.alert.alert-block.alert-danger .text-danger,
.alert.alert-block.alert-danger .validation-header,
 .alert.alert-block.alert-danger li,
.alert.alert-block.alert-danger a{
  color: var(--portalThemeColor5) !important; /*bootstrap 5 has important applied to this element*/
}
/* ==========================================================================
   15. Footer
   ========================================================================== */
body footer {
  font-family: "Inter", "Sora", sans-serif;
  margin-top: 5rem;
}

.acknowledgement .container p{
  color: var(--portalThemeColor5) !important;
  font-size: var(--font-size-sm);

}
.ack-btn-container .ack-btn {
  font-size: 1.4rem;
  color: var(--portalThemeColor5);
  border: 1px solid var(--portalThemeColor5);
  padding: .9rem 1.7rem;
  border-radius: var(--radius-pill);
  margin-right: 1rem;
  margin-left: 1rem;
}
.acknowledgement img {
  height: 4rem;
}

footer div.footer-bottom {
  background-color: inherit ;
}
.footer-contact-container {
  display: flex;
  justify-content: space-between;
}

.footer-segment.icons-container {
  justify-content: end;
}

.footer-segment {
    display: flex;
    flex-direction: column;
}

.footer-contact-container p,
.footer-container-lg p{
  margin-bottom: 0px;
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-sm);
}
.footer-contact-container a,
.footer-container-lg a{
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
}
footer .footer-bottom p{
  color: var(--portalThemeColor9);
}
footer .copyright-link{
  text-decoration: none !important;
  font-weight: var(--font-weight-medium);
}
.footer-declaration {
  font-size: var(--font-size-sm);
}
/*end of footer*/

.hidden {
    display: none !important;
}


/*******modal window*********/
.grid-actions{
  border-color: var(--bs-border-color) ;
}

.modal-header {
    display: block;
}

.modal-footer .float-end.remove-value {
    display: none;
}

.page-item a.page-link{
  font-size: 1.6rem;
}
.page-item.active a.page-link{
  color: var(--portalThemeColor5);

}

.container .fa {
  line-height: normal;
}

select.form-control.form-select.picklist option{
  color: black;
}


.entity-grid .view-grid{
  overflow-x: inherit;
}

.validators span[style *="visibility:hidden"], .validators span[style *="visibility: hidden"]{
    display: none;
}

.dropdown-menu.show a{
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--portalThemeColor1) !important; /*override black color from portal theme css*/
}


/*save and exit*/
.SaveAndExitSection .xrm-attribute-value {
    display: flex;
    justify-content: flex-end;
}
span.go-arrow {
    width: 3rem;
    height: 3rem;
}


/*footer*/
body footer{
    color: var(--portalThemeColor9);
}
.acknowledgement{
background: #000;
    padding: 48px 0;
}

.acknowledgement .container p {
    color: var(portalThemeColor5);
    width: 75%;
    margin: auto;
    text-align: center;
    padding-bottom: 16px;
    font-weight: 400;
}
.acknowledgement .row-flex {
    display: flex;
    margin-left: -15px;
    margin-right: -15px;
    justify-content: center;
    column-gap: 16px;
}


footer a:link, footer a:visited {
    color: var(--portalThemeColor8)
}

/** misc*/

span.cust-icon.hyperlink {
    background: url(/icon-hyperlink-white.png) no-repeat;
    width: 1.8rem;
    height: 1.6rem;
    background-size: contain;
    display: inline-block;
    opacity: .7;
}

span.cust-icon.hyperlink.dark {
    background: url(/icon-hyperlink-dark.png) no-repeat;
     background-size: contain;
}

.modal.modal-lookup.show,
.modal.modal-general.show,
 .modal.modal-form.show,
  .modal.modal-add-file.show,
  .modal.modal-delete.show {
    background-color: #00000066;
}

.modal.show .modal-dialog {
  top: 10%
}

.modal-message {
    top: 25%;
}
.modal .modal-title {
  width: 100%;
}

.modal.modal-general .form-close{
  position: absolute;
  top: 12%;
  font-size: 2.2rem;
  right: 8%
}
@media (max-width: 768px) {
    .modal-general.modal.show .modal-dialog {
        transform: translateY(-40px);
    }
}
/**
 * University logo in header
 * Extracted from inline style: width: auto; height: 32px; margin: 0 10px;
 */
.navbar-brand__logo {
  width: auto;
  height: 32px;
  margin: 0 10px;
}

/* Responsive logo sizing */
@media (max-width: 767px) {
  .navbar-brand__logo {
    height: 28px;
    margin: 0 8px;
  }
}

#accordion .card-title::after,
.accordion .card-title::after {
    content: "\f078";
    font-family: "Font Awesome 7 Pro";
    height: 1.8rem;
    line-height: 20px;
    float: right;
    color: var(--portalThemeColor1);
    font-weight: normal !important;
}

.accordion-item{
  border: none;
}
.fa {
  margin-left: .5rem;
}

.card-header {
    background: transparent;
}

#accordion .card-header[aria-expanded='true'] .card-title::after,
.accordion .card-header[aria-expanded='true'] .card-title::after {
     content: "\f077";
      color: var(--portalThemeColor8);
}
.fa-arrow-left::before{
  font-weight: 400;
}

p.card-title a.instruct-header,
p.card-title a.instruct-header:hover {
    color: var(--portalThemeColor1) ;
    text-decoration: none !important;
}

.link-disabled span, .link-disabled td {
    color: #777777 ;
}

/*hide chat icon*/
div[name=webChat]{
  display: none;
}

.modal-content .loading {
    left: 0;
    right: 0;
    position: absolute;
    margin-top: 20%;
    text-align: center;
}

div.xrm-attribute-value-empty {
    height: 0px;
 }

.datepicker table {
  padding: 1rem;
  border: 1px solid var(--bs-border-color);
}
 /******* HED Supporting information tab ************* */
.hedapp-section {
    background-color: #F3F2FE;
    padding: 5rem;
    border-radius: 30px; /* adds smooth rounded corners */
}

.docs-container {
    margin-top: 3.4rem;
}

.doc-details legend {
    border: none;
    font-family: 'Inter', 'Segoe UI', 'Helvetica Neue', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 42px;
    color: var( --portalThemeColor9);
    margin-bottom: 0.75rem; /* replaces mb-3 if you want full control */
}

.doc-note {
    display: block;
    margin-top: 0.25rem;

    font-family: 'Inter', 'Segoe UI', 'Helvetica Neue', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 28px;
    color: var( --portalThemeColor9);
}

.doc-details .label,
.doc-details .status,
.doc-details .statuscode {
    font-family: 'Inter', 'Segoe UI', 'Helvetica Neue', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 28px;
    color: var( --portalThemeColor9);
}

.doc-status,
.doc-status .statuscode {
    font-family: 'Inter', 'Segoe UI', 'Helvetica Neue', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 28px;
    color: var( --portalThemeColor9);
}

.doc-status .fa {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 44px;          /* controls icon size inside the 44×44 box */
    line-height: 1;
}

.doc-input {
    gap: 8px;
}

.doc-input input[type="checkbox"] {
    height: auto !important;
    width: auto !important;
    display: inline-block !important;
    margin: 0 auto;
    margin-bottom: 20px;
}

.doc-input .checkbox-text {
    font-size: 14px;
    line-height: 28px;
    color: var( --portalThemeColor9);
}

.doc-upload-link {
    font-weight: 400;
    line-height: 1.5;
    text-decoration: none;
    cursor: pointer;
}
/*********Need help******/
.support-section-fullwidth {
    background-color: var(--background-color-1);
    padding: 3rem 0;
}
.support-numbers .help-box {
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 2rem;
    margin: 0 5px;
}
.support-numbers .help-box a.btn {
    color: var(--portalThemeColor8) ;
    font-weight: 600;
    font-size: 1.6rem;
    padding: 0;
}

body .entitylist {
    border: none;
}