111 lines
2.3 KiB
CSS
111 lines
2.3 KiB
CSS
|
/* Eryn Wells <eryn@erynwells.me> */
|
||
|
|
||
|
:root {
|
||
|
--card-drop-shadow-spread: 10px;
|
||
|
--card-drop-shadow-color: rgb(var(--lt-gray));
|
||
|
--gradient-full-opaque: var(--background);
|
||
|
}
|
||
|
@media (prefers-color-scheme: dark) {
|
||
|
:root {
|
||
|
--card-drop-shadow-color: rgb(var(--dk-gray));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
section.flashcards {
|
||
|
position: relative;
|
||
|
}
|
||
|
|
||
|
section.flashcards > ul {
|
||
|
align-items: stretch;
|
||
|
display: flex;
|
||
|
flex-flow: row nowrap;
|
||
|
margin: 0;
|
||
|
overflow-x: scroll;
|
||
|
scroll-snap-type: x mandatory;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
section.flashcards > ul > li {
|
||
|
padding: 0;
|
||
|
margin: 0;
|
||
|
}
|
||
|
|
||
|
section.flashcards > ul::-webkit-scrollbar {
|
||
|
width: 0;
|
||
|
background: transparent;
|
||
|
}
|
||
|
|
||
|
section.flashcards > .shadow {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
height: 100%;
|
||
|
width: 5%;
|
||
|
z-index: 10;
|
||
|
}
|
||
|
|
||
|
section.flashcards > .shadow.left {
|
||
|
background: linear-gradient(
|
||
|
to right,
|
||
|
rgba(var(--gradient-full-opaque), 1),
|
||
|
rgba(var(--gradient-full-opaque), 0));
|
||
|
left: 0;
|
||
|
}
|
||
|
|
||
|
section.flashcards > .shadow.right {
|
||
|
background: linear-gradient(
|
||
|
to left,
|
||
|
rgba(var(--gradient-full-opaque), 1),
|
||
|
rgba(var(--gradient-full-opaque), 0));
|
||
|
right: 0;
|
||
|
}
|
||
|
|
||
|
ruby>rt,
|
||
|
ruby>rp {
|
||
|
visibility: hidden;
|
||
|
opacity: 0;
|
||
|
transition: 0.25s;
|
||
|
}
|
||
|
|
||
|
.card:hover ruby>rt,
|
||
|
.card:hover ruby>rp {
|
||
|
visibility: visible;
|
||
|
opacity: 0.8;
|
||
|
transition: 0.4s;
|
||
|
}
|
||
|
|
||
|
section.flashcards > ul > li.card-container {
|
||
|
display: flex;
|
||
|
justify-content: center;
|
||
|
align-items: center;
|
||
|
width: var(--content-width);
|
||
|
flex-shrink: 0;
|
||
|
padding-block: var(--card-drop-shadow-spread);
|
||
|
}
|
||
|
|
||
|
.card {
|
||
|
box-sizing: border-box;
|
||
|
border: 1px solid var(--separator-color);
|
||
|
display: flex;
|
||
|
justify-content: center;
|
||
|
align-items: center;
|
||
|
padding: 2rem;
|
||
|
text-align: center;
|
||
|
box-shadow: 4px 4px var(--card-drop-shadow-spread) var(--card-drop-shadow-color);
|
||
|
scroll-snap-align: center;
|
||
|
aspect-ratio: 4/3;
|
||
|
width: calc(var(--content-width) / 2);
|
||
|
}
|
||
|
|
||
|
.vertical {
|
||
|
text-orientation: upright;
|
||
|
writing-mode: vertical-rl;
|
||
|
}
|
||
|
|
||
|
.card > [lang="jp"] { font-size: 300%; }
|
||
|
.card > [lang="en"] { font-size: 200%; }
|
||
|
|
||
|
.card > .front { display: block; }
|
||
|
.card > .back { display: none; }
|
||
|
.card.flipped > .front { display: none; }
|
||
|
.card.flipped > .back { display: block; }
|