web/www/css/ereader.css
2025-01-19 13:28:45 -06:00

224 lines
3.4 KiB
CSS

@font-face{
font-family: "League Spartan";
src: url("/fonts/league-spartan-bold.ttf") format("truetype");
font-weight: bold;
font-style: normal;
font-display: swap;
}
body > header{
border-bottom: 2px solid black;
}
body > header > a{
background: url("/images/logo-full.png");
background-repeat: no-repeat;
background-size: contain;
display: inline-block;
height: 70px;
margin-bottom: 1rem;
text-indent: -9999px;
width: 300px;
}
header nav{
font-family: "League Spartan", Arial, sans-serif;
text-transform: uppercase;
}
header nav ul{
margin: 0;
padding: 0;
}
header nav li{
display: inline-block;
margin-bottom: 1rem;
}
header nav li + li:before{
content: "•";
content: "•" / "";
margin-left: 10px;
margin-right: 10px;
}
header nav li a{
text-decoration: none;
letter-spacing: 1px;
padding: 1rem 0.5rem;
}
header nav li:first-child a{
padding-left: 0;
}
/* Large images make the page wide, making the rest of the elements small. They are also hard to scroll past. */
header img,
.front-page h1 + picture img,
.narrow.has-hero img{
max-height: 200px;
width: auto;
}
footer p:last-child a{
background: url("/images/logo-small.png");
background-repeat: no-repeat;
background-size: contain;
display: inline-block;
text-indent: -9999px;
height: 55px;
width: 87px;
}
main.front-page h1,
a.button,
.ebooks nav > a,
form button{
font-family: "League Spartan", Arial, sans-serif;
}
h1,
.masthead h2{
font-size: 2rem;
font-family: "League Spartan", Arial, sans-serif;
}
h2,
.masthead h3,
article.ebook > header > hgroup > h2{
font-size: 1.4rem;
font-family: "League Spartan", Arial, sans-serif;
}
h3,
h4,
h5,
h6{
font-size: 1rem;
font-family: "League Spartan", Arial, sans-serif;
}
main.front-page > section > section figure.stacked{
height: 329px;
margin-left: 2rem;
position: relative;
width: 400px;
}
main.front-page > section > section figure.stacked img.bottom,
main.front-page > section > section figure.stacked img.top{
position: absolute;
width: 316px;
}
main.front-page > section > section figure.stacked img.top{
top: 165px;
left: 72px;
}
main.front-page > section > section figure.stacked img.arrow{
position: absolute;
right: 26px;
top: 122px;
width: 40px;
}
.ebooks form label{
display: block;
margin: 1rem 3rem 1rem 0;
}
select,
input[type="text"],
input[type="month"],
input[type="email"],
input[type="search"]{
width: 100%;
}
label.automation-test{
display: none;
}
select{
padding-left: 1rem;
padding-right: 2rem;
}
label:has(select) > span{
display: block;
}
label:has(select) > span + span{
display: inline-block;
}
ol.ebooks-list{
list-style: none;
}
ol.ebooks-list.grid li{
float: left;
margin-bottom: 2rem;
text-align: center;
width: 20rem;
}
ol.ebooks-list.list > li + li {
clear: both;
padding-top: 2rem;
}
ol.ebooks-list.list > li .thumbnail-container{
float: left;
margin-right: 1rem;
}
ol.ebooks-list.list ul.genres{
list-style: none;
}
ol.ebooks-list.list ul.genres li{
float: left;
margin-right: .5rem;
margin-top: .5rem;
}
ol.ebooks-list > li p{
margin: 0;
}
ol.ebooks-list > li img{
border-radius: .25rem;
}
ol.ebooks-list > li > p:nth-of-type(1) > a{
font-weight: bold;
text-decoration: none;
}
ol.ebooks-list > li p.author{
font-style: italic;
}
ol.ebooks-list > li p.author a{
text-decoration: none;
}
ol.editors {
list-style: none;
}
p.feeds-alert,
main.ebooks nav{
clear: both;
}
main.ebooks nav ol{
list-style: none;
}
main.ebooks nav ol li{
padding: 1rem;
}