:root{--color-primary: #455465;--color-secondary: #007ab8;--color-tertiary: #1ea4a9;--color-state: #0074be;--color-state-hover: #006ab4;--color-state-focus: #006ab4;--color-state-active: #0059a3;--color-state-highlight: #f6f9d7;--color-state-highlight-neutral: var(--color-neutral-3);--color-state-disabled: var(--color-neutral-5);--color-neutral-1: #fff;--color-neutral-2: #fafafa;--color-neutral-3: #f7f7f7;--color-neutral-4: #e6e4e4;--color-neutral-5: #c7c7c7;--color-neutral-6: #767676;--color-neutral-7: #262626;--color-background: var(--color-neutral-1);--color-border: var(--color-neutral-5);--color-text: var(--color-neutral-7);--color-text-disabled: var(--color-neutral-5);--color-text-hint: var(--color-neutral-6);--link-color: var(--color-state);--link-color-hover: var(--color-state-hover);--nav-bg-color: #fafafa;--nav-text-color: var(--color-text);--nav-selected-color: var(--color-state);--nav-border-colour: rgba(128, 128, 128, 0.2);--nav-width: 15rem;--nav-collapsed-width: 5rem;--nav-button-size: 1.25rem;--nav-logo-width: 7.5rem;--nav-logo-height: 7.5rem;--nav-logomark-width: 2.5rem;--nav-logomark-height: 2.5rem;--footer-bg-color: #fff;--footer-text-color: var(--color-text);--footer-text-color-hover: var(--footer-text-color);--btn-accent-color: var(--color-state);--btn-accent-color-active: var(--color-state-active);--btn-accent-color-hover: var(--color-state-hover);--btn-accent-color-disabled: var(--color-state-disabled);--page-content-padding-desktop: calc(var(--gap-base) * 8)}.tui-theme_inspire-navItem{--tui-theme_inspire-navItem-height: 2.75rem;--tui-theme_inspire-navItem-indicator-height: 2rem;--tui-theme_inspire-navItem-top-level-nav-item-padding: 10px;--tui-theme_inspire-navItem-nav-item-padding: 6px;display:flex;flex-grow:1;flex-wrap:wrap;height:var(--tui-theme_inspire-navItem-height);padding-top:calc(var(--gap-base) * 1);color:var(--nav-tab-text-color)}.tui-theme_inspire-navItem--navExpanded{height:100%}.tui-theme_inspire-navItem__icon{width:1.2em;height:1.2em;margin:auto}.tui-theme_inspire-navItem__icon--navExpanded{margin:calc(var(--gap-base) * 3) auto auto calc(var(--gap-base) * 3)}.tui-theme_inspire-navItem .tui-theme_inspire-navItem{padding-top:0}.tui-theme_inspire-navItem--selected{color:var(--nav-selected-color)}.tui-theme_inspire-navItem--selected:before{height:var(--tui-theme_inspire-navItem-indicator-height);margin-top:calc(var(--gap-base) * 1);border-right:calc(var(--gap-base) * 1) solid var(--nav-selected-color);border-top-right-radius:calc(var(--gap-base) * 1);border-bottom-right-radius:calc(var(--gap-base) * 1);content:""}.tui-theme_inspire-navItem .tui-theme_inspire-navItem--selected:before{margin-top:0}.tui-theme_inspire-navItem--link{flex-wrap:nowrap}.tui-theme_inspire-navItem__heading{display:flex;flex-grow:1;align-items:flex-start;padding:0;background-color:inherit;border:none;border-radius:var(--btn-radius)}.tui-theme_inspire-navItem__heading--childSelected{color:var(--nav-selected-color)}.tui-theme_inspire-navItem__heading--depth-0{margin-left:calc(var(--gap-base) * 5);font-weight:600}.tui-theme_inspire-navItem__heading--depth-0.tui-theme_inspire-navItem__heading--navExpanded{margin-left:calc(var(--gap-base) * 3)}.tui-theme_inspire-navItem__heading--depth-0.tui-theme_inspire-navItem__heading--selected{margin-left:calc(var(--gap-base) * 4)}.tui-theme_inspire-navItem__heading--depth-0.tui-theme_inspire-navItem__heading--selected.tui-theme_inspire-navItem__heading--navExpanded{margin-left:calc(var(--gap-base) * 2)}.tui-theme_inspire-navItem__heading--depth-0 .tui-theme_inspire-navItem__headingAction{margin:calc(var(--gap-base) * 2)}.tui-theme_inspire-navItem__heading--depth-1{margin-left:calc(var(--gap-base) * 10);font-weight:400}.tui-theme_inspire-navItem__heading--depth-1.tui-theme_inspire-navItem__heading--selected{margin-left:calc(var(--gap-base) * 9)}.tui-theme_inspire-navItem__heading--depth-2{margin-left:calc(var(--gap-base) * 13)}.tui-theme_inspire-navItem__heading--depth-2.tui-theme_inspire-navItem__heading--selected{margin-left:calc(var(--gap-base) * 12)}.tui-theme_inspire-navItem__heading--link{color:var(--nav-tab-text-color)}.tui-theme_inspire-navItem__heading--link:hover,.tui-theme_inspire-navItem__heading--link:focus{color:var(--nav-tab-text-color);text-decoration:none}.tui-theme_inspire-navItem__heading--link.tui-theme_inspire-navItem__heading--selected{color:var(--nav-selected-color)}@media (hover:hover){.tui-theme_inspire-navItem__heading:hover{background-color:color-mix(in srgb, var(--nav-tab-text-color) 10%, transparent)}}.tui-theme_inspire-navItem__heading:focus-visible{outline:2px solid var(--nav-tab-text-color)}.tui-theme_inspire-navItem__headingText{flex-grow:1;margin:auto;padding:var(--tui-theme_inspire-navItem-nav-item-padding) calc(var(--gap-base) * 1) var(--tui-theme_inspire-navItem-nav-item-padding) calc(var(--gap-base) * 3);text-align:left;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.tui-theme_inspire-navItem__headingText--depth-0{padding:var(--tui-theme_inspire-navItem-top-level-nav-item-padding) calc(var(--gap-base) * 1) var(--tui-theme_inspire-navItem-top-level-nav-item-padding) calc(var(--gap-base) * 3)}.tui-theme_inspire-navItem__headingAction{flex-basis:1.5rem;flex-shrink:0;height:1.5rem;margin:calc(var(--gap-base) * 1) calc(var(--gap-base) * 2);padding:var(--tui-theme_inspire-navItem-nav-item-padding);color:var(--nav-tab-text-color)}.tui-theme_inspire-navItem__children{flex-basis:100%;margin-bottom:calc(var(--gap-base) * 2);margin-left:0;list-style:none}.tui-theme_inspire-navigation__toggle{position:absolute;z-index:1;width:var(--nav-button-size);height:var(--nav-button-size);margin:calc(var(--gap-base) * 4);color:var(--color-text)}.tui-theme_inspire-navigation__toggle--overlay{display:block}.tui-theme_inspire-navigation__toggle--expand{display:none}@media (min-width:992px){.tui-theme_inspire-navigation__toggle{left:var(--nav-collapsed-width)}.tui-theme_inspire-navigation__toggle--overlay{display:none}.tui-theme_inspire-navigation__toggle--expand{position:fixed;display:block;margin:calc(var(--gap-base) * 1);background-color:var(--color-neutral-3);opacity:0;transition:opacity var(--transition-button-duration) var(--transition-button-function) 1s}.tui-theme_inspire-navigation__toggle--expand:hover,.tui-theme_inspire-navigation__toggle--expand:focus,.tui-theme_inspire-navigation__toggle--expand:has(~ .tui-theme_inspire-navigation>.tui-theme_inspire-navigation__nav:hover),.tui-theme_inspire-navigation__toggle--expand:has(~ .tui-theme_inspire-navigation>.tui-theme_inspire-navigation__nav:focus-within){opacity:1;transition-delay:0s}.tui-theme_inspire-navigation__toggle--navExpanded{left:var(--nav-width)}.tui-theme_inspire-navigation__toggle-icon{--rotate-r: rotateY(0deg);--rotate-l: rotateY(180deg);transform:var(--rotate-r);transition-duration:0.5s}.dir-rtl .tui-theme_inspire-navigation__toggle-icon{transform:var(--rotate-l)}.tui-theme_inspire-navigation__toggle-icon--expanded{transform:var(--rotate-l)}.dir-rtl .tui-theme_inspire-navigation__toggle-icon--expanded{transform:var(--rotate-r)}}.tui-theme_inspire-navigation__toggle--navHidden{left:0}.tui-theme_inspire-navigation{position:relative;z-index:var(--zindex-navbar);display:none;flex-direction:column;overflow:visible}@media (min-width:992px){.tui-theme_inspire-navigation{display:flex;width:var(--nav-collapsed-width)}}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__nav{position:fixed;display:flex;flex-direction:column;width:var(--nav-collapsed-width);height:100%;background-color:var(--nav-bg-color);border-right:1px inset var(--nav-border-colour)}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__heading{margin:auto;border-bottom:1px inset var(--nav-border-colour)}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__headingLogo{max-width:var(--nav-logomark-width);max-height:var(--nav-logomark-height);margin:calc(var(--gap-base) * 8) 0}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__collapse{float:right;width:var(--nav-button-size);height:var(--nav-button-size);margin-top:calc(var(--gap-base) * 4);margin-right:calc(var(--gap-base) * -3);color:var(--nav-tab-text-color)}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__collapse:focus-visible{outline:2px solid var(--nav-tab-text-color)}.tui-theme_inspire-navigation .tui-theme_inspire-navigation__items{display:flex;flex-direction:column;gap:calc(var(--gap-base) * 1);height:100%;margin:0;padding:calc(var(--gap-base) * 5) calc(var(--gap-base) * 5) calc(var(--gap-base) * 5) 0;overflow-y:auto;list-style:none}.tui-theme_inspire-navigation--overlaid{position:fixed;z-index:var(--zindex-nav-overlay);display:flex;width:var(--nav-width)}@media (min-width:992px){.tui-theme_inspire-navigation--overlaid{position:relative;width:var(--nav-collapsed-width)}}.tui-theme_inspire-navigation--overlaid .tui-theme_inspire-navigation__nav{width:var(--nav-width)}.tui-theme_inspire-navigation--overlaid .tui-theme_inspire-navigation__heading{margin:0 calc(var(--gap-base) * 6)}.tui-theme_inspire-navigation--overlaid .tui-theme_inspire-navigation__headingLogo{max-width:var(--nav-logo-width);max-height:var(--nav-logo-height)}.tui-theme_inspire-navigation--overlaid .tui-theme_inspire-navigation__items{padding:calc(var(--gap-base) * 5) calc(var(--gap-base) * 3) calc(var(--gap-base) * 5) 0}.tui-theme_inspire-navigation--desktopExpanded{display:none}@media (min-width:992px){.tui-theme_inspire-navigation--desktopExpanded{display:flex;width:var(--nav-width)}.tui-theme_inspire-navigation--desktopExpanded .tui-theme_inspire-navigation__nav{width:var(--nav-width)}.tui-theme_inspire-navigation--desktopExpanded .tui-theme_inspire-navigation__heading{margin:0 calc(var(--gap-base) * 6)}.tui-theme_inspire-navigation--desktopExpanded .tui-theme_inspire-navigation__headingLogo{max-width:var(--nav-logo-width);max-height:var(--nav-logo-height)}.tui-theme_inspire-navigation--desktopExpanded .tui-theme_inspire-navigation__items{padding:calc(var(--gap-base) * 5) calc(var(--gap-base) * 3) calc(var(--gap-base) * 5) 0}}.tui-theme_inspire-navigation--hidden{display:none}.tui-settingsFormBrand__testEmailInfoButton{align-self:center}.tui-themeSettings__content{margin-top:var(--gap-8)}.tui-themeSettings__forms>*+*{margin-top:var(--gap-8)}:root{--color-primary: #00857c;--color-secondary: #00857c;--color-tertiary: #3cd264;--color-state: #00473a;--color-state-hover: #003d30;--color-state-focus: #003d30;--color-state-active: #002c1f;--color-text: #212529;--link-color: var(--color-primary);--link-color-hover: #007b72;--nav-bg-color: #00473a;--nav-text-color: #fff;--nav-selected-color: #00d7c8;--footer-bg-color: #00473a;--footer-text-color: #fff;--footer-text-color-hover: #00cdbe;--login-bg-color: #00473a;--login-gradient1-color: #00857c;--login-gradient2-color: #3cd264;--login-gradient-degrees: 180}.chart-wrapper{gap:5px}.tui-core_auth-languageSelect__button{display:flex;align-items:center;padding:var(--gap-2);border-radius:var(--btn-radius);cursor:pointer;-webkit-user-select:none;user-select:none}.tui-core_auth-languageSelect__button:focus{outline:2px solid var(--color-state-focus);outline-offset:var(--focus-outline-offset);outline-color:currentColor}.tui-core_auth-loginLayout{display:flex;flex-direction:column;flex-grow:1}.tui-core_auth-loginLayout__panels{flex-grow:1}.tui-core_auth-loginLayout__panel-interface{display:flex;flex:auto;flex-flow:column;min-height:100%}.tui-core_auth-loginLayout__panel-graphic{position:fixed;top:0;right:0;bottom:0;display:none;width:50%;background-position:center;background-size:cover}.tui-core_auth-loginLayout__contentWrap{display:flex;flex:auto;flex-flow:column;align-items:center;justify-content:center;padding:var(--gap-8)}.tui-core_auth-loginLayout__main{width:100%;max-width:100%}.tui-core_auth-loginLayout .tui-core_auth-footer{margin-top:0}@media (min-width:992px){.tui-core_auth-loginLayout--hasBackground .tui-core_auth-loginLayout__panels{grid-template-columns:1fr 1fr}.tui-core_auth-loginLayout--hasBackground .tui-core_auth-loginLayout__panel-interface{width:50%}.tui-core_auth-loginLayout--hasBackground .tui-core_auth-loginLayout__panel-graphic{display:flex}}.tui-core_auth-loginNav{display:flex;align-items:center;justify-content:space-between;padding:var(--gap-8);color:var(--nav-text-color);background-color:var(--nav-bg-color)}.tui-core_auth-loginNav__image{height:1.75rem}.tui-core_auth-loginNav__lang{display:flex;align-items:center;justify-content:center;height:0}.tui-core_auth-loginForm__options{display:flex;flex-flow:row wrap;gap:var(--gap-2);align-items:baseline;justify-content:space-between}.tui-core_auth-loginForm__submitWrap{display:flex;flex-flow:column}.tui-core_auth-loginForm__content{display:flex;flex-flow:column;gap:var(--gap-6)}.tui-core_auth-loginForm__help{display:flex}.tui-core_auth-loginForm__heading{font-weight:var(--font-h3-weight);font-size:var(--font-h3-size);font-family:var(--font-h3-family);line-height:var(--font-h3-line-height);margin-bottom:var(--gap-4)}.tui-core_auth-stackChooser{display:flex;flex-direction:column;gap:var(--gap-2)}.tui-core_auth-stackChooser__option{font-weight:var(--font-h4-weight);font-size:var(--font-h4-size);font-family:var(--font-h4-family);line-height:var(--font-h4-line-height);display:flex;gap:var(--gap-4);align-items:center;justify-content:space-between;padding:0.625rem;color:unset;background:var(--color-neutral-1);border:var(--border-width-thin) solid var(--card-border-color);border-radius:var(--card-border-radius);-webkit-user-select:none;user-select:none}.tui-core_auth-stackChooser__option:hover,.tui-core_auth-stackChooser__option:active,.tui-core_auth-stackChooser__option:focus{color:unset;text-decoration:none}.tui-core_auth-stackChooser__option:focus{outline:2px solid var(--color-state-focus);outline-offset:var(--focus-outline-offset)}.tui-core_auth-stackChooser__label{display:flex;flex-direction:column;gap:var(--gap-2)}.tui-totara_program__requestExtension-date{flex-wrap:wrap}.tui-totara_program__requestExtension-dateSeparator{display:inline-block;margin-top:var(--gap-2)}.tui-totara_program__requestExtension-submit{display:none}.tui-totara_program-programHeader{margin-bottom:var(--gap-4)}.tui-totara_program-programHeader__wrapper{display:grid;grid-template-columns:1fr;gap:var(--gap-4)}@media (min-width:600px){.tui-totara_program-programHeader__wrapper{grid-template-columns:auto 1fr}}.tui-totara_program-programHeader__info{display:flex;flex-direction:column}.tui-totara_program-programHeader__heading{display:flex;align-items:flex-start;justify-content:space-between}.tui-totara_program-programHeader__image{width:10rem;height:-webkit-fit-content;height:fit-content;aspect-ratio:1.7777777778;object-fit:cover;border-radius:var(--border-radius-normal)}.tui-totara_program-programHeader__title{font-weight:var(--font-h1-weight);font-size:var(--font-h1-size);font-family:var(--font-h1-family);line-height:var(--font-h1-line-height);margin:0}.tui-totara_program-programHeader__status{margin-left:var(--gap-2);white-space:nowrap;vertical-align:middle}.tui-totara_program-programHeader__affected{margin-top:var(--gap-2)}.tui-totara_program-content>*+*{margin-top:var(--gap-8)}.tui-totara_program-pathOverview{display:flex;flex-direction:column;justify-content:space-between}.tui-totara_program-pathOverview__content{margin-top:var(--gap-3)}.tui-totara_program-requirementsCertification{margin-top:var(--gap-6)}.tui-totara_program-requirements{display:flex;flex-direction:column;gap:var(--gap-1);align-items:stretch;justify-content:space-between;margin-top:calc(var(--gap-base) * 4)}.tui-totara_program-navigationBar{gap:unset}:root{--tab-border-width: 1px;--tab-h-padding: var(--gap-4);--tab-v-padding: var(--gap-2);--tab-highlight-height: var(--gap-1);--tab-shadow-offset: var(--gap-3);--tab-small-h-padding: var(--gap-4);--tab-small-v-padding: var(--gap-2)}.tui-tabBar{display:flex;align-items:flex-end;margin:0;padding:0}.tui-tabBar--horizontal{border-bottom:var(--tab-border-width) solid;border-bottom-color:var(--tabs-border-color)}.tui-tabBar--vertical{flex-direction:column;align-items:stretch;border-right:var(--tab-border-width) solid;border-right-color:var(--tabs-border-color)}.tui-tabBar__tab{display:block;overflow:hidden;pointer-events:none}.tui-tabBar--horizontal .tui-tabBar__tab{margin:calc(var(--tab-shadow-offset) * -1);margin-bottom:calc(var(--tab-border-width) * -1);padding:var(--tab-shadow-offset);padding-bottom:var(--tab-border-width)}.tui-tabBar--vertical .tui-tabBar__tab{max-width:220px;margin-right:calc(var(--tab-border-width) * -1);margin-bottom:calc(var(--tab-shadow-offset) * -1);padding-right:var(--tab-border-width);padding-bottom:var(--tab-shadow-offset)}.tui-tabBar__tab--hidden{display:none}a.tui-tabBar__link{display:flex;padding:var(--tab-v-padding) var(--tab-h-padding);color:var(--tabs-text-color);text-decoration:none;border:var(--tab-border-width) solid;border-color:transparent;pointer-events:auto}a.tui-tabBar__link:hover{color:var(--tabs-text-color-focus);background:var(--tabs-bg-color-focus)}a.tui-tabBar__link:focus-visible{color:var(--tabs-text-color-focus);background:var(--tabs-bg-color-focus);outline:2px solid var(--color-state-focus);outline-offset:calc((var(--tab-border-width) + 4px) * -1)}a.tui-tabBar__link:active,a.tui-tabBar__link:active:focus,a.tui-tabBar__link:active:hover{color:var(--tabs-text-color-active);outline:none}.tui-tabBar--horizontal a.tui-tabBar__link{margin-top:var(--tab-highlight-height);margin-right:calc(var(--tab-border-width) * -1);border-bottom:none}.tui-tabBar--vertical a.tui-tabBar__link{margin-bottom:calc(var(--tab-border-width) * -1);margin-left:var(--tab-highlight-height);border-right:none}.tui-tabBar__tab--disabled a.tui-tabBar__link{color:var(--tabs-text-color-disabled);cursor:default;pointer-events:none}.tui-tabBar__tab--active a.tui-tabBar__link{position:relative;color:var(--tabs-text-color-selected);background:var(--tabs-bg-color-selected)}.tui-tabBar--horizontal .tui-tabBar__tab--active a.tui-tabBar__link{top:var(--tab-border-width);padding-top:calc(var(--tab-v-padding) - var(--tab-border-width));padding-bottom:calc(var(--tab-v-padding) + var(--tab-border-width));border-color:var(--tabs-border-color);box-shadow:var(--shadow-3)}.tui-tabBar--vertical .tui-tabBar__tab--active a.tui-tabBar__link{left:var(--tab-border-width);padding-right:calc(var(--tab-v-padding) + var(--tab-border-width));padding-left:calc(var(--tab-h-padding) - var(--tab-border-width));border-color:var(--tabs-border-color);box-shadow:var(--shadow-2)}.tui-tabBar__tab--active a.tui-tabBar__link::after{position:absolute;background:var(--tabs-selected-bar-color);content:""}.tui-tabBar--horizontal .tui-tabBar__tab--active a.tui-tabBar__link::after{top:calc(var(--tab-highlight-height) * -1);right:0;left:calc(var(--tab-border-width) * -1);width:calc(100% + (var(--tab-border-width) * 2));height:var(--tab-highlight-height);border-radius:var(--border-radius-small) var(--border-radius-small) 0 0}.tui-tabBar--vertical .tui-tabBar__tab--active a.tui-tabBar__link::after{top:calc(var(--tab-border-width) * -1);bottom:0;left:calc(var(--tab-highlight-height) * -1);width:var(--tab-highlight-height);height:calc(100% + (var(--tab-border-width) * 2));border-radius:var(--border-radius-small) 0 0 var(--border-radius-small)}.tui-tabBar__tabLabel{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tui-tabBar__tabLabelExtra{display:flex;align-items:center;margin-left:var(--gap-2)}.tui-tabBar__selector{display:block}.tui-tabBar{}.tui-tabBar--horizontal .tui-tabBar__tab--small .tui-tabBar__link{font-weight:var(--font-body-sm-weight);font-size:var(--font-body-sm-size);font-family:var(--font-body-sm-family);line-height:var(--font-body-sm-line-height);padding:var(--tab-small-v-padding) var(--tab-small-h-padding)}.tui-tabBar--horizontal .tui-tabBar__tab--active.tui-tabBar__tab--small .tui-tabBar__link{padding-top:calc(var(--tab-small-v-padding) - var(--tab-border-width));padding-bottom:calc(var(--tab-small-v-padding) + var(--tab-border-width));color:var(--tabs-text-color-selected)}.tui-tabBar--horizontal .tui-tabBar__tab--disabled.tui-tabBar__tab--small .tui-tabBar__link{color:var(--tabs-text-color-disabled);cursor:default;pointer-events:none}.tui-tabs--fill{display:flex;flex-direction:column;flex-grow:1;height:100%}.tui-tabs--vertical{display:flex;flex-direction:row}.tui-tabs--fill>.tui-tabs__panels{flex-grow:1;min-height:0}.tui-tabs--fill>.tui-tabs__panels>.tui-tabContent{height:100%}.tui-tabs--horizontal .tui-tabContent{padding-top:var(--gap-4)}.tui-tabs--horizontal.tui-tabs--contentSpacing-large .tui-tabContent{padding-top:var(--gap-8)}.tui-tabs--vertical .tui-tabContent{padding-left:var(--gap-4)}.tui-tabs--vertical.tui-tabs--contentSpacing-large .tui-tabContent{padding-left:var(--gap-8)}:root{--color-primary: #5D88AB;--btn-accent-color: #0F369A;--link-color: #052b8c;--color-state: #052b8c;--color-text: #0d0d0d;--footer-bg-color: #001A70;--footer-text-color: #f0efef;--btn-accent-color-hover: #052c90;--btn-accent-color-active: #001b7f;--link-color-hover: #002182;--color-state-hover: #002182;--color-state-focus: #002182;--color-state-active: #001071;--footer-text-color-hover: #e6e5e5;--nav-bg-color: #173a91;--nav-text-color: #FFFFFF;--nav-selected-color: #c2c2c2;}
/*
 * CGIUKI Totara v19 production CSS
 * Optimised from Totara v19 Prod.css
 * Review date: 27 July 2026
 *
 * Principles:
 * - Prefer component-scoped selectors over global Bootstrap/Totara overrides.
 * - Keep native Totara responsive behaviour wherever possible.
 * - Preserve visible keyboard focus and reduced-motion preferences.
 * - Use CGI-prefixed custom properties and classes to minimise collisions.
 */

:root {
  --cgi-colour-primary: #003c8f;
  --cgi-colour-primary-dark: #002b66;
  --cgi-colour-ink: #0b1f3f;
  --cgi-colour-text-muted: #3e4f68;
  --cgi-colour-border: #d9e2f2;
  --cgi-colour-surface-soft: #f2f6fc;
  --cgi-colour-focus: #ffbf47;
  --cgi-radius-sm: 0.4375rem;
  --cgi-radius-md: 0.625rem;
  --cgi-radius-lg: 0.75rem;
  --cgi-shadow-card: 0 2px 8px rgb(0 24 70 / 8%);
}

/* --------------------------------------------------------------------------
   Welcome block
   -------------------------------------------------------------------------- */

body:not(.editing) .block.welcome-blockSQ,
body:not(.editing) .block.chromeless.welcome-blockSQ {
  margin-bottom: 0.625rem;
  padding: 1.25rem;
  color: var(--cgi-colour-ink);
  background-color: #66aaea;
  border-radius: var(--cgi-radius-sm);
}

/* --------------------------------------------------------------------------
   Content tables
   Avoid styling every <table>, as Totara also uses tables in administration UI.
   -------------------------------------------------------------------------- */

.path-rating .ratingtable,
table.flexible,
.generaltable {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1.25rem;
  background-color: rgb(203 235 251 / 38%);
  border-width: 1px;
  border-radius: var(--cgi-radius-sm);
}

/* --------------------------------------------------------------------------
   Main page width
   Consolidates the previous conflicting 80%, 90%, and fixed-margin rules.
   -------------------------------------------------------------------------- */

@media (min-width: 768px) {
  #page.container-fluid {
    width: min(90%, 120rem);
    max-width: 120rem;
    margin-inline: auto;
  }
}

/* --------------------------------------------------------------------------
   Featured Links
   -------------------------------------------------------------------------- */

.block-totara-featured-links-layout > div
  .block-totara-featured-links-content-container,
.block-totara-featured-links-layout .block-totara-featured-links-tile,
.block-totara-featured-links-layout .block-totara-featured-links-flex-filler,
.block-totara-featured-links-layout
  > div.block-totara-featured-links-flex-filler,
.block-totara-featured-links-layout .block-totara-featured-links-tile-adder {
  border-radius: var(--cgi-radius-md);
}

/* --------------------------------------------------------------------------
   Typography and Totara UI refinements
   -------------------------------------------------------------------------- */

html h1,
#adminsettings h1,
html .h1,
#adminsettings .h1 {
  line-height: 1.15;
}

.tui-collapsible__header-text {
  font-family: var(--font-h4-family);
  font-size: var(--font-h6-size);
  font-weight: var(--font-h4-weight);
  line-height: var(--font-h4-line-height);
}

.tui-format_pathway-activityView__activityContent {
  max-width: 100% !important;
}

.tui-formInput {
  background-color: #e5e4e2;
  border-color: #8a8f98;
}

.block .content h2,
.block .content .h2 {
  font-size: 1.25rem;
}

.block_course_overview .coursebox {
  padding: 0.125rem;
}

.tui-format_pathway-progressTrackerItem--selected,
.tui-format_pathway-progressTrackerItem--link {
  border-radius: var(--cgi-radius-sm);
}

.block_synergy_marketingsections .marketingsections__image img {
  max-width: 100%;
  border-radius: var(--cgi-radius-sm);
}

/* --------------------------------------------------------------------------
   Quiz answer wrapping
   Scoped to quiz pages to avoid changing labels elsewhere.
   -------------------------------------------------------------------------- */

body.path-mod-quiz .que.multichoice .answer .r0,
body.path-mod-quiz .que.multichoice .answer .r1 {
  display: flex;
  gap: 0.6rem;
  align-items: flex-start;
  padding-block: 0.15rem;
}

body.path-mod-quiz .que.multichoice .answer label {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: flex-start;
  max-width: 100%;
  margin: 0 !important;
  overflow-wrap: break-word;
  white-space: normal !important;
  word-break: normal !important;
}

body.path-mod-quiz .que.multichoice .answer .answernumber {
  flex: 0 0 auto;
  line-height: 1.4;
  white-space: nowrap;
}

body.path-mod-quiz .que.multichoice .answer label > br {
  display: none !important;
}

body.path-mod-quiz .que.multichoice .answer label span {
  display: inline !important;
  width: auto !important;
  white-space: inherit !important;
}

body.path-mod-quiz .que.multichoice .answer label span[lang] {
  display: inline !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

body.path-mod-quiz .que .qtext p {
  margin: 0 0 0.5rem;
  line-height: 1.4;
}

body.path-mod-quiz .que .qtext p > br:only-child {
  display: none;
}

/* --------------------------------------------------------------------------
   Totara main-menu administration table
   -------------------------------------------------------------------------- */

#totaramenutable {
  width: 100%;
  max-width: 100%;
  font-size: 0.95rem;
  table-layout: fixed;
  border-collapse: collapse;
}

#totaramenutable th,
#totaramenutable td {
  padding: clamp(0.4rem, 1.2vw, 0.75rem) clamp(0.5rem, 2vw, 1rem);
  overflow-wrap: anywhere;
  white-space: normal;
  word-break: break-word;
  hyphens: auto;
}

#totaramenutable th:nth-child(1),
#totaramenutable td:nth-child(1) {
  width: 26%;
}

#totaramenutable th:nth-child(2),
#totaramenutable td:nth-child(2) {
  width: 12%;
}

#totaramenutable th:nth-child(3),
#totaramenutable td:nth-child(3) {
  width: 40%;
}

#totaramenutable th:nth-child(4),
#totaramenutable td:nth-child(4) {
  width: 12%;
}

#totaramenutable th:nth-child(5),
#totaramenutable td:nth-child(5) {
  width: 10%;
}

#totaramenutable td.c2,
#totaramenutable th.c2 {
  text-align: left;
}

#totaramenutable td.lastcol {
  white-space: normal;
}

@media (max-width: 767.98px) {
  #totaramenutable {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  #totaramenutable th,
  #totaramenutable td {
    padding: 0.5rem 0.75rem;
  }

  #totaramenutable th:nth-child(1),
  #totaramenutable td:nth-child(1) {
    width: 32%;
  }

  #totaramenutable th:nth-child(2),
  #totaramenutable td:nth-child(2) {
    width: 14%;
  }

  #totaramenutable th:nth-child(3),
  #totaramenutable td:nth-child(3) {
    width: 36%;
  }

  #totaramenutable th:nth-child(4),
  #totaramenutable td:nth-child(4) {
    width: 10%;
  }

  #totaramenutable th:nth-child(5),
  #totaramenutable td:nth-child(5) {
    width: 8%;
  }
}

/* --------------------------------------------------------------------------
   Course progress and navigation
   -------------------------------------------------------------------------- */

.coursesectioncompletion-wrap
  .progresscircle
  .chart-wrapper
  .circle.stroke-gray {
  stroke: #b45309;
  animation: none;
}

.totaraNav_prim--list_item_label > svg.bi.bi-circle {
  display: none !important;
}

/* Corrects the original descendant-element selector `.currentlearning chromeless`.
   The :is() list supports the two most likely block class conventions. */
:is(.currentlearning, .block_current_learning).chromeless {
  padding: 0.625rem;
  background-color: rgb(84 128 239 / 32%);
  border: 0;
  border-radius: var(--cgi-radius-sm);
}

/* --------------------------------------------------------------------------
   Foundation resource links HTML block
   -------------------------------------------------------------------------- */

.foundation-resource-links {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}

.foundation-resource-link {
  display: flex;
  box-sizing: border-box;
  align-items: center;
  width: 100%;
  min-height: 3.625rem;
  padding: 0.875rem 1rem;
  gap: 0.875rem;
  color: var(--cgi-colour-primary);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid var(--cgi-colour-primary);
  border-radius: 0.5rem;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

.foundation-resource-link:hover {
  color: var(--cgi-colour-primary);
  text-decoration: none;
  background-color: #f4f8f8;
  border-color: var(--cgi-colour-primary);
  box-shadow: 0 3px 10px rgb(18 63 70 / 12%);
  transform: translateY(-1px);
}

.foundation-resource-link:focus {
  color: var(--cgi-colour-primary);
  text-decoration: none;
  background-color: #f4f8f8;
  outline: 3px solid var(--cgi-colour-primary);
  outline-offset: 2px;
}

.foundation-resource-icon {
  display: flex;
  flex: 0 0 2.375rem;
  align-items: center;
  justify-content: center;
  width: 2.375rem;
  height: 2.375rem;
  color: #fff;
  background-color: var(--cgi-colour-primary);
  border-radius: var(--cgi-radius-sm);
}

.foundation-resource-icon svg {
  width: 1.3125rem;
  height: 1.3125rem;
  fill: currentColor;
}

.foundation-resource-text {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
}

.foundation-resource-arrow {
  flex: 0 0 auto;
  width: 1.25rem;
  height: 1.25rem;
  fill: var(--cgi-colour-primary);
}

/* --------------------------------------------------------------------------
   Upcoming events block
   Limits the dashboard list to three entries. Ensure a visible "view all" route
   remains available in the block or nearby HTML.
   -------------------------------------------------------------------------- */

div[data-block='calendar_upcoming'] .block-content > .event:nth-of-type(n + 4),
div[data-block='calendar_upcoming'] .block-content > hr:nth-of-type(n + 3) {
  display: none !important;
}

/* --------------------------------------------------------------------------
   CGI webinar dates and Zoom links HTML block
   -------------------------------------------------------------------------- */

.cgi-webinar-card {
  box-sizing: border-box;
  padding: 1.25rem;
  color: var(--cgi-colour-ink);
  background: #fff;
  border: 1px solid var(--cgi-colour-border);
  border-radius: var(--cgi-radius-lg);
  box-shadow: var(--cgi-shadow-card);
}

.cgi-webinar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
  gap: 1rem;
}

.cgi-webinar-title-wrap {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 0.65rem;
}

.cgi-webinar-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: var(--cgi-colour-primary);
}

.cgi-webinar-icon svg {
  width: 1.55rem;
  height: 1.55rem;
  fill: currentColor;
}

.cgi-webinar-card h2 {
  margin: 0;
  color: var(--cgi-colour-primary-dark);
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.3;
}

.cgi-webinar-view-all {
  color: #0046ad;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.cgi-webinar-view-all:hover,
.cgi-webinar-view-all:focus {
  text-decoration: underline;
}

.cgi-webinar-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.cgi-webinar-item {
  display: grid;
  grid-template-columns: 4.25rem minmax(0, 1fr) auto;
  align-items: center;
  padding: 1rem 0;
  gap: 1rem;
  border-top: 1px solid #e6edf7;
}

.cgi-webinar-item:first-child {
  padding-top: 0.5rem;
  border-top: 0;
}

.cgi-webinar-date {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 3.75rem;
  min-height: 4.25rem;
  color: var(--cgi-colour-primary-dark);
  background: var(--cgi-colour-surface-soft);
  border: 1px solid #dce6f5;
  border-radius: var(--cgi-radius-md);
}

.cgi-webinar-day {
  display: block;
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1;
}

.cgi-webinar-month {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.cgi-webinar-info {
  min-width: 0;
}

.cgi-webinar-info h3 {
  margin: 0 0 0.25rem;
  color: var(--cgi-colour-ink);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.cgi-webinar-info p {
  margin: 0;
  color: var(--cgi-colour-text-muted);
  font-size: 0.92rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.cgi-webinar-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.55rem 0.9rem;
  color: #fff;
  font-size: 0.92rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  background: var(--cgi-colour-primary);
  border-radius: 0.5rem;
}

.cgi-webinar-button:hover,
.cgi-webinar-button:focus {
  color: #fff;
  text-decoration: none;
  background: var(--cgi-colour-primary-dark);
}

.cgi-webinar-button:focus,
.cgi-webinar-view-all:focus {
  outline: 3px solid var(--cgi-colour-focus);
  outline-offset: 3px;
}

.cgi-webinar-note {
  padding-top: 0.85rem;
  margin-top: 1rem;
  border-top: 1px solid #e6edf7;
}

.cgi-webinar-note p {
  margin: 0;
  color: #4a5d78;
  font-size: 0.88rem;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .cgi-webinar-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .cgi-webinar-item {
    grid-template-columns: 4rem minmax(0, 1fr);
  }

  .cgi-webinar-button {
    grid-column: 2;
    justify-self: start;
    margin-top: 0.25rem;
  }
}

@media (max-width: 520px) {
  .cgi-webinar-card {
    padding: 1rem;
  }

  .cgi-webinar-item {
    grid-template-columns: 1fr;
    gap: 0.65rem;
  }

  .cgi-webinar-date {
    width: 4rem;
  }

  .cgi-webinar-button {
    grid-column: 1;
    width: 100%;
  }
}

/* Respect operating-system motion preferences. */
@media (prefers-reduced-motion: reduce) {
  .foundation-resource-link {
    transition: none;
  }

  .foundation-resource-link:hover {
    transform: none;
  }
}

/* ==========================================================
   Dashboard columns
   Refined version of the original .col-lg-3 rule
   Desktop only
   ========================================================== */

@media (min-width: 992px) {

  .main-content.container-fluid
    > .row.row-y
    > #block-region-side-pre-wrap,

  .main-content.container-fluid
    > .row.row-y
    > #block-region-side-post-wrap {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }
}

.cgi-webinar-schedule table td,
.cgi-webinar-schedule table th 
{
  background-color: #66aaea;    
  padding: 4px;
  border: 1px solid #d0d7de;
}

h3.sectionname.tw-formatTopics__topic_header {
    background-color: #66AAEA;
    color: #000000;
    border-radius: 7px;
}

/* ==========================================================
   CGIUKI webinar schedule
   ========================================================== */

.cgi-webinar-schedule {
    max-width: 1100px;
    margin: 0 auto;
}

.cgi-webinar-group {
    margin: 0 0 2.5rem;
}

.cgi-webinar-group h3 {
    margin: 0 0 1rem;
    padding-bottom: .5rem;
    border-bottom: 2px solid #d9d9d9;
    font-size: 1.5rem;
}

.cgi-webinar-note {
    margin: 0 0 1rem;
    padding: 1rem 1.25rem;
    background: #f4f6f8;
    border-left: 4px solid #555;
    border-radius: 7px;
}

.cgi-webinar-card {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    margin-bottom: 1rem;
    border: 1px solid #d9d9d9;
    border-radius: 7px;
    overflow: hidden;
    background: #fff;
}

.cgi-webinar-number {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem .75rem;
    background: #f4f6f8;
    text-align: center;
}

.cgi-webinar-number span {
    display: block;
    font-size: .8rem;
}

.cgi-webinar-number strong {
    display: block;
    font-size: 1.75rem;
    line-height: 1.1;
}

.cgi-webinar-details {
    display: grid;
    grid-template-columns: minmax(220px, 32%) minmax(0, 1fr);
    gap: 1.25rem;
    padding: 1rem 1.25rem;
    align-items: center;
}

.cgi-webinar-date,
.cgi-session-options,
.cgi-webinar-topic {
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.cgi-webinar-date span,
.cgi-webinar-time,
.cgi-webinar-topic span {
    color: #4f4f4f;
}

.cgi-session-options {
    gap: .6rem;
}

.cgi-session-label {
    display: block;
    margin-bottom: .1rem;
    font-size: .8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.cgi-webinar-time {
    margin-top: .25rem;
    font-weight: 600;
}


/* Mobile */
@media (max-width: 767px) {

    .cgi-webinar-card {
        grid-template-columns: 65px minmax(0, 1fr);
    }

    .cgi-webinar-details {
        grid-template-columns: 1fr;
        gap: .9rem;
    }

    .cgi-webinar-number {
        padding: .85rem .5rem;
    }

    .cgi-webinar-number strong {
        font-size: 1.4rem;
    }
}
