/* Purple glass theme for the ScholarHub login workspace. */
body {
    color: #3d2854;
    background:
        linear-gradient(110deg, rgba(249, 246, 253, .78) 0%, rgba(249, 246, 253, .68) 48%, rgba(249, 246, 253, .84) 100%),
        url('/resources/login/assets/images/login-research-purple.png') center center / cover fixed;
}

.topbar {
    border-bottom-color: rgba(96, 62, 128, .17);
    background: rgba(250, 247, 253, .82);
    box-shadow: 0 4px 22px rgba(72, 45, 97, .08), inset 0 1px rgba(255, 255, 255, .95);
}

.topbar-title { color: #62487a; }

.topbar-mark {
    border-color: rgba(112, 70, 143, .25);
    background: linear-gradient(140deg, #fff, #f0e8f8);
    box-shadow: 0 4px 10px rgba(91, 57, 121, .12), inset 0 1px #fff;
    color: #644080;
}

.service-nav .nav__link { color: #715b86; }
.service-nav .nav__link:hover { background: rgba(255, 255, 255, .84); color: #4e3269; }

.hero::before,
.hero::after { border-color: rgba(112, 70, 143, .17); }

.hero::before {
    background: radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .78), rgba(184, 151, 211, .13) 68%, transparent);
    box-shadow: inset 0 0 40px rgba(255, 255, 255, .52), 0 20px 60px rgba(79, 48, 108, .08);
}

.hero::after {
    background: radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .84), rgba(177, 139, 208, .18));
    box-shadow: inset 0 0 24px rgba(255, 255, 255, .72);
}

.hero-left { color: #3d2854; }

.hero-brand img {
    padding: 5px;
    border-radius: 9px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 8px 18px rgba(52, 31, 72, .12);
    filter: none;
}

.brand-divider { background: rgba(91, 58, 121, .24); }
.brand-university { color: #68547b; }
.hero-kicker { color: #694585; }
.hero-kicker::before { background: linear-gradient(90deg, #6d478d, #bd9bd8); }
.hero-left h1 { color: #3d2854; }
.hero-left h1 em { color: #78519a; }
.hero-left > p { color: #665579; }

.hero-actions .primary {
    border-color: rgba(111, 74, 143, .2);
    box-shadow: 0 8px 20px rgba(75, 48, 101, .08), inset 0 1px rgba(255, 255, 255, .95);
    color: #563875 !important;
}

.hero-actions .primary:hover { box-shadow: 0 12px 25px rgba(75, 48, 101, .13), inset 0 1px rgba(255, 255, 255, .98); }
.hero-actions .material-icons,
.hero-note .material-icons { color: #78549a; }
.hero-left > p.hero-note { color: #705d82 !important; }

.login-glass {
    border-color: rgba(255, 255, 255, .94);
    background: linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(246, 240, 251, .89));
    box-shadow: 0 30px 90px rgba(57, 35, 78, .18), 0 8px 24px rgba(87, 57, 116, .1), inset 0 1px rgba(255, 255, 255, .99);
    color: #3d2854;
}

.login-glass::before {
    background: radial-gradient(ellipse, rgba(255, 255, 255, .9), rgba(208, 186, 228, .24) 60%, transparent 72%);
}

.login-card-mark {
    border-color: rgba(112, 70, 143, .2);
    background: linear-gradient(145deg, #fff, #eee5f6);
    box-shadow: 0 5px 14px rgba(83, 53, 112, .11), inset 0 1px #fff;
    color: #70468f;
}

.login-card-top span:last-child { color: #705985; }
.login-glass h2 { color: #3d2854; }
.login-glass .login-description { color: #766786; }

.account-switcher {
    border-color: rgba(112, 70, 143, .15);
    background: rgba(241, 234, 248, .74);
}

.account-tab { color: #756489; }

.account-tab[aria-pressed="true"] {
    background: linear-gradient(135deg, #70468f, #563574);
    box-shadow: 0 4px 12px rgba(74, 45, 102, .2), inset 0 1px rgba(255, 255, 255, .25);
    color: #fff;
}

.account-tab:focus-visible,
.password-toggle:focus-visible,
.login-btn:focus-visible,
.sso-btn:focus-visible,
.page-tab:focus-visible { outline-color: rgba(112, 70, 143, .42); }

.scholar-field label { color: #5e4775; }
.scholar-input-wrap > .material-icons { color: #917aa7; }

.scholar-field input {
    border-color: rgba(112, 70, 143, .2);
    box-shadow: inset 0 1px 3px rgba(69, 42, 94, .04), 0 1px rgba(255, 255, 255, .86);
    color: #3d2854;
}

.scholar-field input::placeholder { color: #a093ad; }

.scholar-field input:focus {
    border-color: #8b65a8;
    box-shadow: 0 0 0 4px rgba(112, 70, 143, .14), inset 0 1px 3px rgba(69, 42, 94, .04);
}

.password-toggle { color: #877398; }
.password-toggle:hover { background: rgba(112, 70, 143, .09); color: #593878; }

.login-btn {
    border-color: #5c3d78;
    background: linear-gradient(110deg, #80609e, #593878 64%, #70468f);
    box-shadow: 0 9px 18px rgba(72, 43, 99, .22), inset 0 1px rgba(255, 255, 255, .35);
    color: #fff;
}

.login-btn:hover { box-shadow: 0 12px 23px rgba(72, 43, 99, .27), inset 0 1px rgba(255, 255, 255, .42); }

.sso-btn {
    border-color: rgba(112, 70, 143, .24);
    background: rgba(255, 255, 255, .7);
    color: #604579;
}

.sso-btn:hover {
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 7px 16px rgba(72, 43, 99, .1);
    color: #4b2e68;
}

.login-extra,
.login-glass p.login-hint { color: #897b97; }

.page-tabs {
    border-top-color: rgba(96, 62, 128, .14);
    background: rgba(249, 246, 252, .84);
    box-shadow: 0 -8px 30px rgba(64, 40, 87, .08), inset 0 1px rgba(255, 255, 255, .94);
}

.page-tab { color: #75628a; }
.page-tab:hover { background: rgba(255, 255, 255, .78); color: #543571; }

.page-tab.is-active {
    border-color: rgba(255, 255, 255, .92);
    background: linear-gradient(140deg, #755193, #563574);
    box-shadow: 0 5px 14px rgba(68, 42, 92, .2), inset 0 1px rgba(255, 255, 255, .24);
    color: #fff;
}

.page-tab.is-active .material-icons { color: #fff; }

#view-calls .modern-section,
#view-organization .modern-section,
#view-ecosystem .category {
    border-color: rgba(255, 255, 255, .9);
    background: rgba(249, 246, 252, .68);
    box-shadow: 0 18px 55px rgba(64, 40, 87, .09), inset 0 1px rgba(255, 255, 255, .96);
}

#view-calls h2,
#view-ecosystem .category h2,
#view-organization h2 { color: #4a3064; }

#view-ecosystem .category h3 { color: #71558b; }

#view-calls .ads-slider,
#view-ecosystem .modern-card {
    border-color: rgba(112, 70, 143, .13);
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 8px 20px rgba(64, 40, 87, .07);
}

#view-ecosystem .modern-card,
.empty-calls { color: #6d587f; }

.empty-calls { border-color: rgba(112, 70, 143, .28); }
.empty-calls .material-icons { color: #80609e; }
