:root {
  --fq-red:#8e65ab;--fq-bright:#9d71b0;--fq-ink:#3f3256;--fq-line:#e4dfea;
  --fq-gradient:linear-gradient(115deg,#734e92 0%,#8e65ab 52%,#9d71b0 100%);
  --primary:#8e65ab!important;--pl:#9d71b0!important;--pd:#734e92!important;--pdd:#3f3256!important;
  --accent:#8e65ab!important;--accent2:#9d71b0!important;--info:#4f4560!important;
  --bg:#f6f3f9!important;--bg2:#fbf9fc!important;--bg3:#ece6f1!important;--border:#e4dfea!important;--b2:#d5cbdf!important;
  --text:#3f3256!important;--t2:#4f4560!important;--t3:#756a85!important;--t4:#7b7089!important;
  --grad-primary:var(--fq-gradient)!important;--grad-accent:var(--fq-gradient)!important;
  --grad-hero:var(--fq-gradient)!important;--grad-dark:linear-gradient(135deg,#3f3256,#4f4560)!important;
  --ent-p:#8e65ab!important;--ent-pl:#9d71b0!important;--ent-pd:#734e92!important;--ent-pdd:#3f3256!important;
  --ent-sky:#8e65ab!important;--ent-cyan:#8e65ab!important;--ent-gold:#8e65ab!important;
  --ent-t1:#3f3256!important;--ent-t2:#4f4560!important;--ent-t3:#756a85!important;--ent-t4:#7b7089!important;
  --ent-ink:#3f3256!important;--ent-ink2:#4f4560!important;--ent-bg:#f6f3f9!important;--ent-bg2:#fbf9fc!important;
  --ent-bd:#e4dfea!important;--ent-bd2:#d5cbdf!important;
  --hub-navy:#3f3256!important;--hub-navy2:#4f4560!important;--hub-brass:#8e65ab!important;--hub-brass-l:#f3e8f8!important;
  --hub-cream:#fbf9fc!important;--hub-ink:#3f3256!important;--hub-mut:#756a85!important;
}
body,body.ent-mode {background:#f6f3f9!important;color:var(--fq-ink)!important}
body *,body *::before,body *::after {letter-spacing:0!important}
body .main,body .main-content,body #mainContent {background-color:transparent!important}
body .sidebar {background:#fff!important;border-color:var(--fq-line)!important}
body .sidebar .sb-logo {background:#fff!important;border-color:var(--fq-line)!important;box-shadow:none!important}
body .sidebar .sb-logo-text {color:var(--fq-ink)!important;white-space:normal!important}
body .sidebar .sb-logo-sub {color:#756a85!important}
body .sidebar .sb-sec {color:#734e92!important;border-color:#e6dcee!important}
body .sidebar :is(.sb-item,.sb-subitem) {color:#4f4560!important;border-color:transparent!important}
body .sidebar :is(.sb-item,.sb-subitem):hover {background:#faf0ed!important;color:#734e92!important}
body .sidebar :is(.sb-item,.sb-subitem).active {background:linear-gradient(90deg,#faf5fc,#f3e8f8)!important;color:#734e92!important;border-color:#8e65ab!important;box-shadow:none!important}
body .sidebar .sb-item.active::before {background:#8e65ab!important}
body .sidebar .sb-icon {background:#f6f3f9!important;border-color:#e5e7e8!important;color:#4f4560!important;box-shadow:none!important}
body .sidebar .active .sb-icon {background:#dcc6e8!important;color:#734e92!important}
body .sidebar :is(.sb-footer,.sb-submenu,.ln-extra-links) {background:#fbf9fc!important;border-color:var(--fq-line)!important}
body .sidebar .sb-uname {color:var(--fq-ink)!important}
body .sidebar .sb-urole {color:#756a85!important}
body :is(.sb-av,.tb-av,.ent-avatar,.ai-fab) {background:var(--fq-gradient)!important;color:#fff!important;box-shadow:none!important}
body :is(.topbar,.ent-topbar) {background:#fff!important;border-color:var(--fq-line)!important;box-shadow:0 1px 0 #ece6f1!important}
body.ent-mode :is(.ent-year-pill,.ent-school-pill),body .ent-year-pill.ent-yr-admin:hover {background:#fbf9fc!important;color:#4f4560!important;border-color:#e4dfea!important}
body .ent-year-pill .yp-sem {background:#f3e8f8!important;color:#734e92!important}
body.ent-mode :is(.ent-hero,.ent-hub-hero),body :is(.st-hero,.st-hero.pr) {background:var(--fq-gradient)!important;color:#fff!important;box-shadow:none!important;border-radius:8px!important}
body.ent-mode :is(.ent-hero,.ent-hub-hero)::before {display:none!important}
body :is(.ent-hero,.ent-hub-hero,.st-hero) :is(h1,h2,p,span) {color:inherit!important}
body :is(.btn-primary,.ln-work .primary,.ln-dialog .primary) {background:var(--fq-gradient)!important;border-color:#8e65ab!important;color:#fff!important;box-shadow:0 3px 9px #8e65ab1a!important}
body :is(.btn-primary,.ln-work .primary,.ln-dialog .primary):hover {background:#734e92!important}
body :is(.ln-work button,.ln-dialog button) {color:#4f4560}
body .ln-totals b {color:#734e92}
body .ln-work th {background:#f6f3f9;color:#4f4560}
body input:focus,body select:focus,body textarea:focus {outline-color:#8e65ab!important;border-color:#8e65ab!important}
body input[type=checkbox],body input[type=radio],body input[type=range] {accent-color:#8e65ab}
body :is(button,a,[tabindex],input,select,textarea):focus-visible {outline:2px solid #8e65ab;outline-offset:3px}
body .ln-certificate {border-color:#8e65ab}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-sec {color:#734e92!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-sec::after {background:#e6dcee!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-item {color:#4f4560!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-item:hover {background:#faf0ed!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-item.active {background:linear-gradient(90deg,#faf5fc,#f3e8f8)!important;color:#734e92!important;box-shadow:none!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-item.active::before {background:#8e65ab!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-icon {background:#f6f3f9!important;box-shadow:inset 0 0 0 1px #e5e7e8!important}
body.ent-mode .sidebar .ent-sb-nav .ent-sb-item.active .ent-sb-icon {background:#dcc6e8!important}
body .ent-hub-stat b {color:#fff!important}
body .ent-hub-card {--hc:#8e65ab!important;--hc-bg:#fff!important;border-color:#e4dfea;border-radius:8px}
body .ent-hub-card:nth-child(even) {--hc:#3f3256!important}
body .ent-hub-card .ent-hub-ic {border-radius:8px;box-shadow:none}
body .ent-hub-card:hover {border-color:#8e65ab;transform:translateY(-2px)}
body .lx-stage-tab.active {background:var(--fq-gradient)!important;color:#fff!important}

/* The campus is full-bleed; the only framed surface is the sign-in form. */
#loginScreen.fq-login {background:#3f3256 none;color:#fff;isolation:isolate}
#loginScreen.fq-login::before {content:'';display:block;position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(25,35,43,.4),rgba(25,35,43,.72))}
.fq-login-header {padding:10px 44px;min-height:93px;border-top:4px solid #9d71b0;border-bottom:1px solid #ffffff29;background:#fff}
.fq-login-header img {width:250px;max-width:65%;height:78px}
.fq-login-header>span {color:#4f4560}
.fq-login-main {max-width:520px;margin:auto 7% auto auto;padding:30px 0 34px}
.fq-login-identity {text-align:right;margin-bottom:22px;position:relative;padding-right:76px;min-height:65px}
.fq-login-identity img {position:absolute;right:0;top:5px;width:56px;height:56px;margin:0;filter:drop-shadow(0 2px 6px #0003)}
.fq-login-identity h1 {font-size:32px;line-height:1.5;font-weight:800;color:#fff}
.fq-login-identity p {font-size:15px;color:#fff;margin:3px 0 0}
.fq-login-form {padding:28px 32px 30px;border:1px solid #ffffff80;border-top:4px solid #9d71b0;border-radius:8px;box-shadow:0 16px 48px #111a2033;background:#fffffffa;color:#3f3256}
.fq-login-form h2 {font-size:22px;font-weight:800;margin:0 0 18px;color:#3f3256}
.fq-login-options .lg-remember {color:#4f4560}
.fq-text-button {font-weight:700;color:#734e92}
.fq-login-form .lg-submit {background:var(--fq-gradient);box-shadow:0 4px 12px #8e65ab29;border-color:#8e65ab}
.fq-login-form .lg-submit:hover {background:#734e92;border-color:#734e92}
.fq-login-footer {background:#1f2b35c9;padding:14px 44px;border-top:1px solid #ffffff29}
@media(min-width:1600px){.fq-login-main{margin-right:10%}}
@media(max-width:900px){.fq-login-main{max-width:470px;margin:auto;padding:28px 20px}.fq-login-header{padding-inline:24px}#loginScreen.fq-login{background-position:58% center}}
@media(max-width:600px){
  .fq-login-header{padding:8px 18px;min-height:78px;gap:10px}.fq-login-header img{width:205px;height:64px;max-width:68%}
  .fq-login-main{padding:26px 18px 32px}.fq-login-identity{margin-bottom:20px;padding-right:64px}.fq-login-identity img{width:48px;height:48px}
  .fq-login-identity h1{font-size:27px}.fq-login-form{padding:22px 20px 24px}.fq-login-form h2{font-size:21px}
  .fq-login-footer{padding:14px 20px}.fq-login-options{gap:8px}.fq-text-button{font-size:11px}
}
@media(max-width:360px){.fq-login-main{padding-inline:12px}.fq-login-form{padding-inline:16px}.fq-login-identity h1{font-size:25px}}
