/* -----------------------------------------------
bepress IR local stylesheet.
Author:   Jami Wardlow
Version: Nov 2022
PLEASE SAVE THIS FILE LOCALLY!
----------------------------------------------- */

/* ---------------- Meta Elements ---------------- */

@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@700&family=Open+Sans:wght@400;700&display=swap');

	/* --- Meta styles and background --- */

body {
	font: normal 13px/1.5 'Open Sans', sans-serif;  /* should be medium except when fitting into a fixed container */
	background: #e8e8e8 url(assets/md5images/13733c475eadc76f68a292f6dae13707.gif) repeat-x left top;
}

#buffalostate { background: url(assets/md5images/613c36bd9c0f8007c0ae6298d1bfcefb.gif) repeat-x left bottom; }

/* ---------------- Header ---------------- */

#buffalostate #header {
	position: relative;  /* needed for logo positioning */
	height: auto !important; /* !important overrides mbl styling */
}

#buffalostate #banner_image {
	display: block; /* removes descender of inline element */
	width: 980px; /* not necessary if image is sized correctly */
	height: auto !important;  /* avoids warping improperly sized header image / SUP-19994 */
}

	/* --- Logo --- */

#buffalostate #logo_image {
	position: absolute !important; /* !important overrides mbl styling */
	top: 0;
	left: 0;
	width: 34.6938775510204% !important;  /* 340 / 980 */
	height: auto !important; /* !important avoids DC assigning incorrect height to logo image */
}

#buffalostate #header a#banner_link:focus img,
#buffalostate #header a#logo_link:focus img {
    outline: 2px dotted #104e7b;
}

/* ---------------- Navigation ---------------- */

#buffalostate #navigation,
#buffalostate #navigation #tabs {
	height: 52px;
	/*overflow: hidden; have seen issues with tabs extending below nav container */
	white-space: nowrap;
}

#buffalostate #navigation #tabs,
#buffalostate #navigation #tabs ul,
#buffalostate #navigation #tabs ul li {
	padding: 0;
	margin: 0;
}

#buffalostate #navigation #tabs,
#buffalostate #navigation #tabs ul {
	display: flex;
	justify-content: flex-start;
	width: 100%;
}

#buffalostate #navigation #tabs a {
	font: bold 12px 'Open Sans', sans-serif;
	display: block;
	/*width: auto !important; fixes "my account" not fitting in container on page load (does it tho?)*/
	height: 52px;
	line-height: 52px;
	color: #fff;
	background-color: transparent;
	padding: 0 11px;
	margin: 0;
	border: 0;
}

#buffalostate #navigation #tabs a:hover,
#buffalostate #navigation #tabs a:active,
#buffalostate #navigation #tabs a:focus {
	text-decoration: underline;
}

#buffalostate #navigation #tabs #tabone a { padding-left: 15px; } /* switch for right-aligned nav tabs */

/* ---------------- Sidebar ---------------- */

#buffalostate #sidebar {
	width: 226px;
	background-color: #000;
	margin-right: 15px;
	border-top: 15px solid #ba5a03;
	border-radius: 6px;
	padding-top: 18px;
	margin-bottom: 25px;
}

#buffalostate #sidebar h2 {
	font: bold 15px 'Open Sans', sans-serif;
	color: #fff;
	background: transparent;
	padding: 0;
	margin: 0;
	border: none;
}

#buffalostate #sidebar a {
	font: normal 13px 'Open Sans', sans-serif;
	color: #fff;
	text-decoration: none;
}

#buffalostate #sidebar a:hover,
#buffalostate #sidebar a:active,
#buffalostate #sidebar a:focus {
	background: transparent;
	text-decoration: underline;
}

#buffalostate #sidebar #sidebar-search label {
	font: normal 13px 'Open Sans', sans-serif;
	color: #fff;
}

#buffalostate #sidebar #sidebar-search {
	margin-top: 8px;
	padding-left: 15px;
}

#buffalostate #sidebar #sidebar-search span.border { background: transparent; }

.searchbutton { cursor: pointer; } /* best practice, should move to ir-layout.css */

/* ---------------- Main Content ---------------- */

#buffalostate #wrapper {
	margin-bottom: 25px;
	background: transparent;
}

#buffalostate #content { /* calculates 100% viewport height - (total heights of header, navigation and footer) */
	min-height: calc(100vh - 266px);
	border-radius: 6px;
}
	/* --- Breadcrumbs --- */

#buffalostate #main.text div.crumbs a:link,
#buffalostate #main.text div.crumbs a:visited {
	text-decoration: none;
	color: #104e7b;
}

#buffalostate #main.text div.crumbs a:hover,
#buffalostate #main.text div.crumbs a:active,
#buffalostate #main.text div.crumbs a:focus {
	text-decoration: underline;
	color: #000;
}

#buffalostate #dcn-home > #homepage-intro { margin: 15px 0; }

 /* (is this even a thing anymore?) adds space under full-width main-content image 
#buffalostate #home-page-banner { margin-bottom: 16px; }*/

	/* --- Headers --- */

#buffalostate #dcn-home > h2 {
	font: bold 30px 'Josefin Sans', sans-serif;
	margin-top: 20px;
}

h3 {
	margin: 0;
	text-decoration: underline;
}

/* FF, IE, Chrome take parent element's color as text-decoration-color (black, usually) */
#dcn-home #cover-browse h3 { color: #104e7b; }

#buffalostate #dcn-home #cover-browse h3 a {
	font: 400 17px/1.6 'Open Sans', sans-serif;
	text-decoration: none;
}

#buffalostate #dcn-home #cover-browse h3 a:hover,
#buffalostate #dcn-home #cover-browse h3 a:focus,
#buffalostate #dcn-home #cover-browse h3 a:active {
	text-decoration: underline;
}

/* --- front page buttons  ---*/

#buffalostate #cover-browse #browse-by-buttons {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

#buffalostate #cover-browse #browse-by-buttons .browse-container .browse-link h3 {
    text-decoration: none;
    background-image: none;
	margin: 10px 5px 0;
}

#buffalostate #cover-browse #browse-by-buttons .browse-container {
    margin: 6px 0;
}

#buffalostate #cover-browse #browse-by-buttons .browse-link {
	background-color: #e37700;
	width: 138px;
	height: 138px;
	border-radius: 10px;
	border: 5px solid #fff; /* invisible default border to keep alignment */
	text-align: center;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}

/* Button icon settings */
#buffalostate #cover-browse #browse-by-buttons .browse-link span {
  font-size: 46px; /* size of font icon */
  color: #fff;
}

/* Button text settings */
#buffalostate #cover-browse #browse-by-buttons .browse-link h3 {
  font: bold 14px/1.4 'Open Sans', sans-serif;
  text-align: center;
  color: #000;
  padding-left: 0px;
  margin-top: 10px;
}

/* Hover/focus behavior for button outline */
#buffalostate #cover-browse #browse-by-buttons a:hover > .browse-link,
#buffalostate #cover-browse #browse-by-buttons a:focus > .browse-link,
#buffalostate #cover-browse #browse-by-buttons a:active > .browse-link {
	background-color: #664778;
}

#buffalostate #cover-browse #browse-by-buttons a {
  text-decoration: none;
}

#buffalostate #cover-browse #browse-by-buttons a:hover > .browse-link h3,
#buffalostate #cover-browse #browse-by-buttons a:focus > .browse-link h3,
#buffalostate #cover-browse #browse-by-buttons a:active > .browse-link h3 {
	color: #fff;
}

	/* --- Links --- */

#buffalostate #main.text a:link,
#buffalostate #main.text a:visited {
	color: #104e7b; /* declared for #network-icon text */
}

#buffalostate #main.text a:hover,
#buffalostate #main.text a:active,
#buffalostate #main.text a:focus {
	color: #000;
	text-decoration: underline;
}

	/* PotD / Top DL widgets */

#buffalostate #dcn-home .box.aag h2,
#buffalostate #dcn-home .box.potd h2 {
	font: bold 24px 'Josefin Sans', sans-serif;
	width: 267px;
	border-bottom: 1px solid #d7d7d7;
	margin: 0;
}

#buffalostate #main.text .box a:link,
#buffalostate #main.text .box a:visited {
	background: none;
	font: bold 12px 'Open Sans', sans-serif;
	text-decoration: none;
	border-bottom: 1px solid #d7d7d7;
}

#buffalostate #main.text .box a:hover,
#buffalostate #main.text .box a:active,
#buffalostate #main.text .box a:focus {
	text-decoration: underline;
}

	/* article-level text // default values 12px/13px */

#alpha .element p, #custom-fields .element p { font-size: 12px; }

#alpha .element h4, #custom-fields .element h4 { font-size: 13px; }

/* ---------------- Footer ---------------- */

#buffalostate #footer,
#buffalostate #bepress a {
	height: 81px;
	background-color: #000;
}

#bepress a:focus { outline: 2px dotted #104e7b; }

#buffalostate #footer p,
#buffalostate #footer p a {
	font: normal 12px/2 'Open Sans', sans-serif;
	color: #fff;
	text-decoration: none;
}

/* #buffalostate #footer p:first-of-type { padding-top: ##px; } */

#buffalostate #footer p a:hover,
#buffalostate #footer p a:active,
#buffalostate #footer p a:focus {
	text-decoration: underline;
}

/* ---------------- Miscellaneous fixes ---------------- */

	/* --- Advanced Search --- */

.legacy #buffalostate #wrapper {
	background-image: none;
	margin-bottom: 0;
}

	/* Remove gap under search pages for full-width footers */

.legacy #buffalostate #wrapper:after { content: none; }

.legacy #buffalostate #content { margin-bottom: 25px; }

	/* --- Browse Authors accessibility fix (CSFR-2684) --- */

#buffalostate #main.text .authorbrowser p.letters a:hover,
#buffalostate #main.text .authorbrowser p.letters a:focus {
   background: url(/assets/azMe.jpg) bottom center no-repeat;
   color: #fff;
}

#buffalostate #wrapper .text #myaccount thead tr th {
	color: #000;
}

/* ---------------- Mobile ---------------- */

.mbl #buffalostate #header,
.mbl #buffalostate #header a#banner_link img,
.mbl #buffalostate #navigation {
	width: 100% !important;
}

.mbl #buffalostate #header #logo_image {
	position: absolute !important; /* !important overrides mbl styling */
	top: 0;
	left: 0;
	width: 34.6938775510204% !important;  /* 340 / 980 */
	height: auto !important; /* !important avoids DC assigning incorrect height to logo image */
}

	/* fixes invisible space above header */

header#mobile-nav { 
    font-size: 0;
    line-height: 0;
}

	/* fixes bullet underline for Browse Research and Scholarship links */

.mbl #main #cover-browse h3 { text-decoration: none; }

	/* stacks headings and spans in .box */

.mbl #buffalostate #dcn-home .box.aag h2,
.mbl #buffalostate #dcn-home .box.potd h2 {
	width: 100%;
}
	
.mbl #dcn-home .box.aag span,
.mbl #dcn-home .box.potd span {
    display: block;
}

	/* homepage buttons */

.mbl #buffalostate #cover-browse #browse-by-buttons h3:before {
    content: none;
}

.mbl #buffalostate #cover-browse #browse-by-buttons {
    margin-top: 0px;
}

.mbl #buffalostate #cover-browse #browse-by-buttons * {
    padding: 0px !important;
    text-indent: 0px !important;
}

.mbl #buffalostate #cover-browse #browse-by-buttons img {
    max-width: 45px !important;
    padding-top: 5px;
}

.mbl  #buffalostate #cover-browse #browse-by-buttons .browse-link h3 {
    font-size: 14px !important;
    background-image: none;
    margin-top: 0 !important;
}

@media only screen and (max-width: 767px) {

  #buffalostate #cover-browse #browse-by-buttons {
    padding-left: 16px;
    margin-left: -10px;
   }

  #buffalostate #cover-browse #browse-by-buttons .browse-container {
    width: 50%;
   }

  #buffalostate #cover-browse #browse-by-buttons .browse-link {
    padding: 4px;
   }

  #buffalostate #cover-browse #browse-by-buttons .browse-link h3:before {
  	content: none;
   }

  #buffalostate #cover-browse #browse-by-buttons .browse-link i {
    background-image: none;
   }

  #buffalostate #cover-browse #browse-by-buttons .browse-link img {
  	max-width: 45px;
  	align-self: center;
   }
}
