eorzea-songbook/static/style.css

506 lines
8.1 KiB
CSS

:root{
--light-block: lch(90% 25 85);
--light-box: lch(100% 0 90);
--light-back: linear-gradient(90deg, lch(95% 20 260), white 25%, white 75%, lch(95% 20 260));
--light-border: lch(80% 45 85);
font-family: "Zen Maru Gothic", sans-serif;
}
h1, h2, h3, h4, h5, h6{
font-family: "Shippori Mincho", serif;
}
body{
margin: 0;
background: var(--light-back);
display: flex;
flex-direction: column;
flex-shrink: 0;
height: 100vh;
}
header{
background-color: var(--light-block);
margin: 0;
border-style: outset;
border-top: 0; border-left: 0; border-right: 0;
border-color: var(--light-border);
}
footer{
background-color: var(--light-block);
border-style: outset;
border-bottom: 0; border-left: 0; border-right: 0;
border-color: var(--light-border);
width: 100%;
padding: 0;
margin-top: auto;
}
.top-buttons{
display: flex;
margin: 0;
padding: 1.2rem;
column-gap: .6rem;
max-height: fit-content;
}
.top-buttons a{
flex: auto;
display: flex;
list-style: none;
justify-content: center;
align-items: center;
position: relative;
border-style: outset;
border-color: var(--light-border);
border-radius: 1.2rem;
border-width: 0.3rem;
}
.top-buttons a:nth-child(2){
flex: none;
}
.top-buttons a:nth-child(2):before{
content: "";
position: absolute;
bottom: 0;
right: 0;
border-style: outset;
border-color: var(--light-border);
border-radius: 1.2rem;
border-width: 0.3rem;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
height: 100%;
}
/* .top-buttons a::before{
content: "";
position: absolute;
bottom: 0;
right: 0;
border-style: outset;
border-color: var(--light-border);
border-radius: 1.2rem;
border-width: 0.3rem;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
height: 100%;
} */
.top-buttons li{
vertical-align: center;
}
.top-buttons img{
display: block;
}
/* SEARCH BAR */
.search-bar{
max-width: 64rem;
width: 100%;
height: 2rem;
margin-left: auto;
margin-right: auto;
background-color: var(--light-block);
border-style: outset;
border-top: 0;
border-color: var(--light-border);
display: flex;
flex-shrink: 0;
flex-direction: column;
justify-content: center;
align-items: center;
}
.search-items{
display: inline-block;
position: relative;
width: 80%;
}
.search-items input{
all: unset;
background-color: white;
width: 100%;
height: 1.2rem;
}
#search-results{
display: flex;
flex-direction: column;
margin: auto;
position: absolute;
width: 100%;
}
#search-results h2{
visibility: collapse;
}
#search-results ul{
background-color: white;
padding-left: 0;
margin-top: 0;
list-style: none;
z-index: 1;
}
main{
background-color: var(--light-block);
max-width: 64rem;
width: 100%;
margin-left: auto;
margin-right: auto;
}
main ul{
margin: 0;
display: flex;
flex-direction: column;
padding-left: 0;
}
h1{
margin: 0;
}
h2{
margin: 0;
font-
}
h3{
margin: 0;
}
a{
text-decoration: none;
}
/* HOME BUTTONS */
.home-title{
padding: 4.8rem;
text-align: center;
border-style: solid;
border-top: 0; border-left: 0; border-right: 0;
}
.home-nav{
display: flex;
flex: auto;
justify-content: space-around;
}
.home-button{
border-style: outset;
border-color: var(--light-border);
border-radius: 1.2rem;
flex: auto;
display: flex;
flex-direction: column;
list-style: none;
justify-content: center;
align-items: center;
position: relative;
}
/* INDEX LISTS */
.album-list{
display: flex;
flex-direction: column;
}
.category-list{
display: flex;
flex-wrap: wrap;
align-content: flex-start;
flex-basis: 51%;
}
.album-icon{
display: inline-block;
align-self: center;
}
.date{
margin-top: .3rem; margin-left: 2.4rem;
}
/* INDEX ENTRIES */
.sort-box{
border-style: solid;
border-left: 0; border-right: 0; border-top: 0;
border-color: black;
border-width: 1px;
}
.sort-box h2{
color: black;
}
.sort-box.album{
margin-bottom: 1.2rem;
display: flex;
align-items: center;
border-style: solid;
border-top: 0; border-left: 0; border-right: 0;
border-width: 1px;
margin: 1.2rem; margin-bottom: 0;
background: var(--light-block);
position: sticky;
top: 0;
gap: .6rem
}
.date{
font-size: small;
}
.sort-box.category{
gap: 1.2rem;
margin-left: auto; margin-right: auto; margin-bottom: 1.2rem;
width: 24rem;
}
.sort-box.category{
margin: 1.2rem;
margin-bottom: 0px;
background: var(--light-block);
}
.entry-box{
list-style: none;
min-height: 1.8rem;
display: flex;
border-radius: 1.2rem 0% 0% 1.2rem;
background: linear-gradient(90deg, var(--light-box) 90%, rgba(255, 255, 255, 0) 100%);
}
.entry-box.song{
margin-top: .6rem; margin-bottom: .6rem; margin-left: 1.2rem; margin-right: 1.2rem;
}
.entry-box.motif{
margin: 1.2rem; margin-bottom: 0;
justify-content: center;
align-items: center;
}
.entry-box.song li{
display: flex;
flex: auto;
flex-wrap: nowrap;
justify-content: left;
/* align-content: bottom; */
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
height: 1.8rem;
}
.entry-box.song span{
align-self: center;
}
.entry-box.song.empty{
margin-top: 0; margin-bottom: 0; margin-right: 2.4rem;
background: none;
}
.entry-box.motif span{
color: black;
vertical-align: middle;
}
.entry-box.motif::before{
content: "b";
visibility: hidden;
margin-right: auto;
}
.motif-name{
text-align: center;
color: black;
}
.track-number{
min-width: 2.4rem;
margin-left: .6rem;
color: black;
}
.track-name{
color: black;
}
.track-name-jp{
margin-left: 1.2rem;
color: gray;
}
.empty{
color: gray;
}
.clip-count{
color: black;
flex-wrap: nowrap;
display: inline;
text-align: right;
min-width: 0;
margin-right: 1.2rem;
min-width: 1.6rem;
}
.count-icon{
width: 1.2rem; height: 1.2rem;
margin-left: auto;
display: block;
align-self: center;
}
/* SONG INDEX ALBUM DROPDOWNS */
.sort-box.album label{
cursor: pointer;
}
.collapse{
display: none;
}
.sort-list{
display: none;
}
.sort-box.album > *{
pointer-events: none;
}
.sort-box.album::after{
content: "▼";
margin-left: auto;
}
.collapse:checked ~ .sort-list{
display:initial
}
.collapse:checked ~ .sort-box.album::after{
content: "▲";
}
/* ENTRY PAGE TITLES */
.title-box{
margin: 1.2rem; margin-bottom: 1.2rem;
background: var(--light-box);
}
.eng-title{
display: flex;
align-items: center;
/* margin-bottom: .6rem; */
}
.title-box img{
align-self: center;
margin-left: .6rem;
}
.title-box h1{
margin-left: .6rem;
min-width: 0;
font-size: calc(1.2rem + .6vw);
}
.title-jp{
color: gray;
margin-right: 1.2rem; padding-bottom: .6rem;
text-align: right;
}
.title-album{
margin-left: auto; margin-right: .7rem; margin-top: .7rem;
align-self: flex-start;
}
.title-album img{
margin: 0;
}
/* ENTRY PAGE DETAILS */
.track-info{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
gap: 1.2rem;
}
.track-info li{
list-style: none;
}
.songpage-detail{
display: flex;
flex-direction: column;
min-width: 16rem;
}
.songpage-detail ul{
gap: .6rem;
}
.songpage-detail h2{
text-align: center;
margin-bottom: 1.2rem;
}
.entrypage-connections{
display: flex;
flex-direction: column;
width: 100%;
justify-content: center;
}
.entrypage-connections h2{
text-align: center;
margin-bottom: 1.2rem;
}
.entrypage-clip{
margin-bottom: 1.2rem;
display: flex;
flex-wrap: wrap-reverse;
column-gap: 2rem;
justify-content: center;
align-items: center;
}
.clip-pointer{
width: 18rem;
/* white-space: nowrap; */
text-align: center;
}