// Add any global css for the theme here

// imports the base global style
/* Commented this out because it is already included as part of the DSpace theme CDE 9/15/2022 */
/* @import '../../../styles/_global-styles.scss'; */

@font-face {
    font-family: 'greycliff_light';
    src: url('https://library.udel.edu/static/fonts/GreycliffCF-Light.woff') format('woff'),
         url('https://library.udel.edu/static/fonts/GreycliffCF-Light.woff2') format('woff2');
    font-display: auto;
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'greycliff_bold';
    src: url('https://library.udel.edu/static/fonts/GreycliffCF-Bold.woff') format('woff'),
         url('https://library.udel.edu/static/fonts/GreycliffCF-Bold.woff2') format('woff2');
    font-display: auto;
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'greycliff_semibold';
    src: url('https://library.udel.edu/static/fonts/GreycliffCF-DemiBold.woff') format('woff'),
         url('https://library.udel.edu/static/fonts/GreycliffCF-DemiBold.woff2') format('woff2');
    font-display: auto;
    font-weight: normal;
    font-style: normal;
}

:root {
    font-size: 75%;
    font-family: 'greycliff_light';
}

body {
    font-family: 'greycliff_light';
    font-size: 1.4rem;
}

h1, h2, h3, h4 {
    font-family: 'greycliff_semibold';
    color: var(--color-blue-med);
    line-height: 1;
    margin-bottom: calc(0.75em + 0.5vmin);
    margin-bottom: 0.75em;
    letter-spacing: -0.025vmax;
}

h1 {
    font-size: calc(2rem + 0.5vw);
}

h2 {
    font-family: 'greycliff_bold';
    font-size: 1.65em;
    text-transform: uppercase;
    padding-top: 3rem;
}

h3 {
    font-size: calc(1.25rem + 0.5vmin);
}

h4 {
    font-size: calc(1.25rem + 0.125vw);
}

h5 {
    font-family: 'greycliff_semibold';
}

.h6 {    /* This is a class, not the actual h6 heading */
    font-size: 1.4rem;
    font-family: 'greycliff_semibold';
    text-transform: none;
    color: #000;
}

a {
    color: var(--color-blue-med);
    font-family: 'greycliff_semibold';
}

img, p, iframe, table, thead, tbody, form, fieldset, legend {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 100%;
}


/* home page banner area */
.display-3 {
    color: var(--color-blue-dark);
    text-shadow: none;
}

.lead {
    font-size: 1.5rem;
    font-family: 'greycliff_semibold';
    color: var(--color-blue-dark);
    text-shadow: none;
}

.lead-bold {
    font-size: 1.5rem;
    font-family: 'greycliff_bold';
    color: var(--color-blue-dark);
    text-shadow: none;
}

.jumbotron li {
    font-size: 1.5rem;
    font-family: 'greycliff_semibold';
    color: var(--color-blue-dark);
    text-shadow: none;
}

.my-4 {
    border-bottom-style: solid;
    border-bottom-color: #eee;
    border-bottom-width: 1px;
    padding-top: 1em;
    padding-bottom: 1.5em;
}

/* enlarge body and input text to counteract :root 75% font size change */

.form-control,
.btn {
    font-size: 1.333rem;
}

/* main body area gray */

.inner-wrapper {
/*    background: var(--color-gray-light); */
}

/* sets a min height for main to push footer off-screen during load */

main {
    min-height: 75vh;
}

.main-content {
/*    margin-top:1.3rem;*/
	z-index: 0;
}

/* "muted" text was too inaccessible in color */
.text-muted {
    color: var(--color-blue-dark) !important;
    font-style: italic;
}

/* logged in dspace sidebar header color */

.sidebar-section h4 {
    color: inherit;
}

/* set login box link colors */

.navbar :is(.login-container, ds-user-menu) a.dropdown-item {
    color: var(--color-blue-med);
}

.navbar :is(.login-container, ds-user-menu) a.dropdown-item:is(:focus, :hover) {
    color: var(--color-blue-dark);
}

/* Recent submissions list */
ds-item-list-element {
    
}

/* override button styling */

.btn {
    background: var(--color-blue-med);
    color: #fff;
    font-family: greycliff_semibold;
    border-radius: 3em;
}

.ng-star-inserted .btn-secondary {
    border-radius: 3px;
}

/* tree type lists with "arrow" expander buttons, we don't want these
   styled like our normal buttons */

.cdk-tree .btn {
    padding: 0 0.75em;
    background: initial;
    color: var(--color-blue-med);
}

button .expandButton {
    padding-left: 10px;
    padding-right: 10px;
}

.btn-primary {
    border-width: 0px;
}

.btn-primary:hover {
    background-color: var(--color-blue-light);
}

.btn-outline-primary:hover {
    background-color: var(--color-blue-light);
}

.btn-outline-primary {
    border-width: 0px;
}

/* list blocks on list pages */
main .list-unstyled {
    background-color: #eee;
    margin-top: 1rem;
    margin-bottom: 1.5rem;
    border-radius: 5px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
}

main .list-unstyled li {
    padding: 0.5em 1em 0.5em;
    position: relative;
    border-bottom: 1px solid #eee;
    margin-bottom: 0px !important;;
    margin-top: 0px !important;;
}

/* "item" badge on list pages */
span.badge.badge-info {
    right: 1.5em;
    top: 1.25em;
    position: absolute;
    background: var(--color-gray-med);
    color: var(--color-blue-dark);
    border-radius: 2em;
    padding: 0.333em 0.667em;
}

/* list view title font size and right margin to allow for "item" tag */
.lead.item-list-title {
    font-size: 1.5rem;
  	display: block;
  	margin-right: 3em;
    line-height: 1.75rem;
    margin-bottom: 1rem;
}

/* prev and next buttons overflow bounding box */
main .list-unstyled + div {
    display: inline-block;
    width: 100%;
}




/* remove "expander buttons" on overflow text in list views,
   modified css to just show the overflow by default instead */
	[class*="clamp-default"]  .content {
    	overflow: visible;
    	max-height: unset;
	}

	[class*="clamp-default"] .content:after {
    	display: none;
	}




/* in-page settings and dropdown menus */

.dropdown-menu {
    font-size: 1.25rem;
}

/* background color of search box */

form > input[type=text][_ngcontent-dspace-angular-c155]:focus {
    background-color: #fff !important;
}

/* force hover color on search icon when focused so it doesn't disappear */

form > input[type=text][_ngcontent-dspace-angular-c155]:focus ~ .submit-icon {
    color: var(--ds-header-icon-color-hover);
}

/* make navbar background white */

ds-navbar nav.navbar {
    background: #fff;
}

/* scoot navbar items left when not animating open for alignment with header */

ds-navbar nav.navbar:not(.open):not(.ng-animating) {
    margin-left: -1em;
}

/* make all main sections white background with border radius */

main .container:not(.breadcrumb) {
    background: #fff;
    padding: 2rem;
    border-radius: 1rem;
    margin-bottom: 3rem;
}

/* breadcrumb styling */

main .breadcrumb {
    padding: 1.5rem 1.75rem 2rem;
    font-family: 'greycliff_semibold';
    font-size: 1.125rem;
}

/* breadcrumb link colors */

main .breadcrumb a,
li.breadcrumb-item.active * {
    color: var(--color-blue-dark) !important;
}

/* files look like buttons with gold download icon */

ds-file-download-link a {
    background: var(--color-blue-med);
    color: #fff;
    padding: 0.75rem 1.25rem;
    display: inline-block;
    border-radius: 1rem;
}

ds-file-download-link a:is(:hover, :focus) {
    background: var(--color-blue-light);
    color: #fff;
    text-decoration: none;
}

ds-file-download-link a:before {
    content: "\279C";
    transform: rotate(90deg);
    display: inline-block;
    color: var(--color-gold);
}


/* menu links */

#collapsingNav .nav-link {
    display: block;
    padding: 1rem 1.25rem !important;
    font-family: 'greycliff_semibold';
    color: var(--color-blue-med) !important;
    font-size: 1.25rem;
    text-transform: uppercase;
    border: 2px solid transparent;
    border-radius: 0.75rem;
}

#collapsingNav .nav-link:hover {
    border-color: var(--color-blue-light);
}

#collapsingNav .nav-link:focus {
    outline: var(--color-blue-med);
    background: var(--color-blue-med);
    color: #fff !important;
}

/* default submenu left margin indent on mobile */

.open .dropdown-menu[_ngcontent-dspace-angular-c166] a.nav-link {
    margin-left: var(--bs-spacer);
}

.ml-auto {
    position: absolute;
    top: -4.5rem;
    right: 0.5rem;
    position: absolute;
}

/* mobile menu button */

.navbar-light .navbar-toggler {
    color: #fff;
    background-color: var(--color-blue-light);
    border-color: var(--color-blue-dark);
    border-color: transparent;
    font-size: 1.5rem;
    padding: 0.5rem 0.625rem;
    border-radius: 0.5rem;
}

/* submenu on desktop, "open" class means mobile */

.navbar:not(.open) ul.dropdown-menu {
    position: absolute;
    left: -1rem;
    top: calc(100%);
    background: #fff;
    border-radius: 1rem !important;
    width: calc(12rem + 10vw);
    width: 25rem;
    padding: 1rem;
    transition: 0.3s ease left;
    letter-spacing: -0.0125vmax;
    z-index: 1;
    overflow: visible;
    box-shadow: 0 1px 5px rgb(0 0 0 / 40%) !important;
    height: auto;
    flex-direction: column;
}

/* main menu hover yellow border */

.navbar:not(.open) .navbar-nav [class*="navbar-section"] > .ng-star-inserted > a.nav-link:hover,
.navbar:not(.open) .navbar-nav [class*="navbar-section"] > a.nav-link:hover {
    border-color: #fff !important;
    border-bottom-color: var(--color-gold) !important;
    border-radius: 0 !important;
}

/* submenu top and bottom spacing margins */

.navbar.open .navbar-nav,
.navbar.ng-animating .navbar-nav {
    margin: 1rem 0;
}

/* Search filter options not showing due to white color on white bg */
.search-filter-wrapper .filters a {
    color: var(--color-blue-med) !important;
}

label .filter-value {
    color: #343a40;
}

/* UD header needs to be centered vertically */
.ud__header {
    align-items: center;
}

/* this overrides the subheader background to take the whole width */

#header .ud__subheader-wrap {
    background: var(--color-blue-dark);
    border-top: 2px solid var(--color-gold);
    line-height: 1;
}

/* removes the top border from the subheader, since it's already on the wrap */

#header .ud__subheader {
    border-top: none;
}

.ud__header {
    background: #00539f;
    height: 9rem;
    display: flex;
    justify-content: space-between;
}

.ud__header-homelink {
    height: 100%;
    margin: 0 1.5rem;
    display: inline-block;
}

.ud__header-homelink img {
    height: 100%;
    padding: 1.5rem 0;
}

.ud__subheader {
    background: #003c71;
    display: flex;
    font-size: 1.375rem;
    letter-spacing: 0.1rem;
    padding: 1rem 1.5rem;
    align-items: center;
    border-top: 2px solid #ffd200;
}

.ud__subheader a {
    color: #fff;
    font-family: 'greycliff_semibold';
    text-decoration: none;
    text-transform: uppercase;
}

a.ud__subsite-link {
    color: #ffd200;
}

.ud__subheader-divider {
    border-left: 1px solid #ffd200;
    margin: 0 0.875rem;
    height: 1.5rem;
}

.ud__full-width-padding {
    padding-left: 1.375rem;
    padding-right: 1.375rem;
}

/* search box force white background instead of the weird 50% opacity default */

input[type=text][name=query]:focus {
    background-color: #ffffff !important;
}


.ud__header .container {
  	height: 100%;
}

.ud__header-homelink {
  	margin: 0 1.5rem !important;
  	padding: 0;
}

.ud__header-homelink img {
  	height: 100% !important;
}

ds-navbar nav.navbar.navbar-expand-md.navbar-container {
  	height: 4.25rem;
  	margin: 0;
  	background: #fff;
	border: 0;
}

.navbar a.navbar-brand {
  	display: none;
}





/* UD LIBRARY FOOTER SYLES */

#ud-library-footer .container.footer-library,
.footer-library .container.footer-library {
  padding: 0;
}

#ud-library-footer ul,
.footer-library ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#footer-subscribe input[type=submit] {
  background: var(--color-blue-med);
  border: 0;
  color: #fff;
}

#footer-subscribe input[type=submit]:hover {
  background: var(--color-blue-light);
}

.udLogo_footer a {
  background-image: url("https://library.udel.edu/static/img/ud-logo-192.png");
  height: 128px;
  width: 128px;
  background-size: cover;
  display: block;
}

.udFooterSocial-icons {
  margin-top: 1rem;
}

.udFooterSocial-icons a {
  background-image: url("https://library.udel.edu/static/img/social-icons-48.png");
  background-size: cover;
  display: block;
  width: 100%;
  height: 100%;
}

.udFooterSocial-icons a.foot-twi {
/*  background-position-x: 0;*/
	background-position-x: 80%;
}

.udFooterSocial-icons a.foot-fb {
  background-position-x: 20%;
}

.udFooterSocial-icons a.foot-ins {
/*  background-position-x: 40%;*/
	background-position-x: 0;
}

.udFooterSocial-icons a.foot-yt {
  background-position-x: 60%;
}

.udFooterSocial-icons a.foot-pin {
/*  background-position-x: 80%;*/
	background-position-x: 100%;
}

.udFooterSocial-icons a.foot-li {
/*  background-position-x: 100%;*/
	background-position-x: 40%;
}

.udFooterSocial-icons li {
  display: inline-block;
  width: 2rem;
  height: 2rem;
}

.udFooterSocial-icons img {
  object-fit: contain;
}





/* UD UNIVERSITY Footer copied and pasted 20220401 */

footer#udFooter {
	width: 100%;
	margin-top: 0px;
	background-color: #fff;
	border-top: 0.25rem solid var(--color-gold);
	clear: both;
}

footer#udFooter .udFooter-container {
    max-width: 100rem;
    width: 100%;
    margin: auto;
    position: relative;
}

footer#udFooter .udLogo_footer {
    position: absolute;
    top: -4rem;
    left: 0;
    z-index: 2;
}

footer#udFooter .udLogo_footer img {
    width: 10rem;
}

footer#udFooter .udFooterHeader span {
    margin-left: 12.5rem;
    margin-top: 0px;
    float: left;
}

footer#udFooter .udFooterSocial-icons {
    padding: 0px 0 0 0;
    list-style: none;
    float: right;
}

footer#udFooter .udFooterSocial-icons ul {
    padding: 0 0.5rem 0 0;
    margin: 0;
}

footer#udFooter .udFooterSocial-icons ul li {
    padding: 0;
		display: inline-block;
		margin-right: 1rem;
		width: 2rem;
		height: 2rem;
		padding-left: 0;
}

footer#udFooter .udFooterSocial-icons img {
		height: 1.75rem;
		width: 1.75rem;
		object-fit: contain;
}

footer#udFooter .udFooterLinks {
    width: 100%;
    margin: 10rem auto 0 auto;
    background-color: #eee;
    clear: both;
}

footer#udFooter .udFooterLinks div {
  	font-family: 'greycliff_semibold', Arial, sans-serif;
  	font-size: 1rem;
  	color: #555;
  	margin: auto;
  	text-align: center;
}

footer#udFooter .udFooterLinks div a {
    color: var(--color-blue-med);
}

footer#udFooter .link-item {
    padding: 0 0.25rem;
    display: inline-block;
    margin: auto;
}

footer#udFooter .container-fluid {
    width: 80%;
    text-align: center;
    padding: 1rem 0;
}









/* ================================================================================ */
/*                                                          max-width: 1200         */
/* ================================================================================ */

@media only screen and (max-width: 1200px) {
  	footer#udFooter .udLogo_footer {
        left: 1.25rem;
    }

  	footer#udFooter .udFooterHeader span {
        margin-left: 13.5rem;
    }
}





/* ================================================================================ */
/*                                                          max-width: 1024         */
/* ================================================================================ */

@media screen and (max-width: 1024px) {
    .footer-library__menu-item,
    .footer-li {
        flex-basis: 50%;
    }
}





/* ================================================================================ */
/*         min-width: 768                                                           */
/* ================================================================================ */

@media screen and (min-width: 768px) {

	/* side spacing on menu items on mobile */

    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 1.25rem;
        padding-left: 1.25rem;
    }

	a.ud__library-link {
    	margin-left: 1.25rem;
	}

	.nav_subheader a,
	[ngbdropdown] > a.dropdown-toggle {
		color: var(--color-blue-med) !important;
	}
}





/* ================================================================================ */
/*                                                          max-width: 767          */
/* ================================================================================ */

@media screen and (max-width: 767px) {
	#header .ud__header {
		height: 6rem;
	}

	#header .ud__header-homelink {
    	margin: 0 !important;
	}

	#header .ud__header-homelink img {
		padding: 1rem 0;
	}
    
    .ml-auto {
        top: -7.5rem;
    }
    
    ds-lang-switch a {
        color: #fff;
    }
    
    ds-themed-auth-nav-menu a {
        color: #fff;
    }

    ds-lang-switch a:hover {
        color: var(--color-blue-light);
    }
    
    ds-themed-auth-nav-menu a:hover {
        color: var(--color-blue-light);
    }

    .display-3 {
        margin-top: 2rem;
        font-size: calc(1.575rem + 2.9vw);
    }
/*
    #header .ud__subheader {
        flex-wrap: wrap;
    }

    #header .ud__subheader-divider {
        flex-basis: 100%;
        height: 0;
        visibility: hidden;
    }

	header.header.nav_subheader {
    	top: -4.75rem;
		height: 4.75rem;
    	background: transparent;
    	position: relative;
	}

	.nav_subheader .navbar {
    	height: 100%;
	}

	.nav_subheader a {
		color: #fff;
	}
*/
    
	.main-content {
/*    	margin-top: -1rem;*/
		margin-top: 6px;
	}

    nav.nav-breadcrumb {
        padding-top: 2rem;
    }
    
  	footer#udFooter .udFooterSocial-icons {
        float: right;
        margin-left: 10rem;
        margin-top: 1.25rem;
    }

  	footer#udFooter .udFooterLinks {
        margin-top: 10rem;
    }
    .nav_subheader input[type=text][name=query]:focus + a {
        position: fixed;
        right: 2.25rem;
        top: 2rem;
        color: var(--color-blue-med);
    }

    .nav_subheader input[type=text][name=query]:focus {
        background-color: #ffffff !important;
        position: fixed !important;
        left: 0;
        top: 0;
        height: 4rem;
        width: calc(100% - 2rem) !important;
        margin: 1rem;
        padding: 0.5rem 1rem !important;
    }

    .nav_subheader input[type=text][name=query]:focus + a .fa-search:before {
        content: "\f061" !important;
    }

    header .navbar-navigation>li {
        display: list-item;
        height:auto;
    }

    ds-navbar nav.navbar.navbar-expand-md.navbar-container {
        margin-top: -12px;
    }
    
    ds-navbar nav.navbar.navbar-expand-md.navbar-container.open {
        height:auto !important;
        margin-top: -12px;
		z-index: 20;
		min-height: auto!important;
    }
}





/* ================================================================================ */
/*                                                          max-width: 640          */
/* ================================================================================ */

@media screen and (max-width: 640px) {
    .footer-library__info,
    .foot-lib-title {
        flex-basis: 100%;
    }

    .footer-library__menu,
    .footer-section {
        flex-basis: 100%;
        padding: 3rem 3rem 1rem;
    }

    .footer-library__subscribe,
    #footer-subscribe {
        min-width: unset;
        flex-basis: 100%;
        border-radius: 0;
        margin: 3rem 0 0;
        padding: 3rem 3rem 7rem;
    }


    /* UD standard footer code */
    footer#udFooter ul {
        padding: 0;
    }

    footer#udFooter .udLogo_footer {
        position: relative;
        width: 100%;
        display: block;
        left: 0 !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        text-align: center;
    }

    footer#udFooter .udFooterSocial-icons {
        position: absolute;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        top: 88px;
        top: 40px;
        width: 100%;
        text-align: center;
    }

    footer#udFooter .udFooterSocial-icons li {
        margin: 0 7px !important;
    }

    footer#udFooter .udLogo_footer img {
        height: 75px !important;
        width: auto !important;
    }

    footer#udFooter .udLogo_footer a {
        height: 6rem;
        width: 6rem;
        display: inline-block;
    }

    footer#udFooter .udFooterHeader span {
        margin: 0 !important;
        float: none !important;
        display: block;
        text-align: center;
        padding-left: 5px;
    }

    footer#udFooter .udFooterHeader span img {
        width: 150px;
        margin-bottom: -45px;
    }

    footer#udFooter .udFooterLinks {
        margin-top: 95px;
    }

    footer#udFooter .container-fluid {
        width: 100% !important;
    }
}


/* ================================================================================ */
/*         min-width: 768                                                           */
/* ================================================================================ */

@media screen and (min-width: 577px) {

    .jumbotron {
        padding: 2rem 1rem;
    }
}



/* ================================================================================ */
/*                                                          max-width: 576          */
/* ================================================================================ */

@media screen and (max-width: 576px) {
    header.ud__header {
        height: 7rem;
        padding: 0;
    }

    .ml-auto {
        top: -9rem;
    }
    
}





/* ================================================================================ */
/*                                                          max-width: 480          */
/* ================================================================================ */

@media screen and (max-width: 480px) {
    .footer-library__menu-item,
    .footer-li {
        flex-basis: 100%;
        font-size: 1.5rem;
    }
    .footer-library__subscribe .mc-field-group,
    #footer-subscribe .mc-field-group {
        flex-wrap: wrap;
        line-height: 5rem;
        font-size: 1.5rem;
    }
    .footer-library__subscribe input[type="email"],
    #footer-subscribe input[type="email"] {
        flex-basis: 100%;
        margin: 0 0 1rem;
    }
}