686 lines
11 KiB
CSS
686 lines
11 KiB
CSS
@charset "utf-8";
|
|
|
|
@font-face {
|
|
font-family: "KanjiStrokeOrders";
|
|
src:
|
|
local("KanjiStrokeOrders"),
|
|
url("_kso.woff2") format("woff2");
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "Local Mincho";
|
|
src:
|
|
local("Yu Mincho"),
|
|
local("游明朝"),
|
|
local("Noto Serif CJK JP"),
|
|
local("IPAexMincho"),
|
|
local("IPAex明朝"),
|
|
local("IPAMincho"),
|
|
local("IPA明朝"),
|
|
local("IPAPMincho"),
|
|
local("IPA P明朝"),
|
|
local("TakaoExMincho"),
|
|
local("TakaoEx明朝"),
|
|
url("_yumin.woff2") format("woff2");
|
|
font-weight: normal;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "Local Mincho";
|
|
src:
|
|
local("Noto Serif CJK JP SemiBold"),
|
|
local("Noto Serif CJK JP DemiLight"),
|
|
local("Yu Mincho Demibold"),
|
|
local("游明朝 Demibold"),
|
|
url("_yumindb.woff2") format("woff2");
|
|
font-weight: 600;
|
|
}
|
|
|
|
*,
|
|
*::before,
|
|
*::after {
|
|
box-sizing: border-box;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
b,
|
|
strong {
|
|
font-weight: 600;
|
|
}
|
|
|
|
.jpsentence b,
|
|
.jpsentence strong {
|
|
color: #f026cb;
|
|
}
|
|
|
|
.card {
|
|
background-color: #fffaf0;
|
|
color: #2a1b0a;
|
|
font-family:
|
|
"Noto Serif",
|
|
"Noto Serif CJK JP",
|
|
"IPAexMincho",
|
|
"Yu Mincho",
|
|
"Local Mincho",
|
|
"Liberation Serif",
|
|
"Times New Roman",
|
|
Times,
|
|
Georgia,
|
|
Serif;
|
|
font-size: 24px;
|
|
text-align: left;
|
|
line-height: 1.4;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.card1 {
|
|
color: inherit;
|
|
}
|
|
|
|
.card2 .jpsentence ruby rt {
|
|
opacity: 0;
|
|
}
|
|
|
|
.card2 .jpsentence:hover ruby rt {
|
|
opacity: 1;
|
|
}
|
|
|
|
@media screen and (min-width: 820px) {
|
|
.card {
|
|
background-color: #e5d7c9;
|
|
display: flex;
|
|
justify-content: center;
|
|
}
|
|
|
|
.wrap {
|
|
width: 800px;
|
|
padding: 0 5px 0;
|
|
background-color: #fffaf0;
|
|
border-left: 1px solid #c9bcbc;
|
|
border-right: 1px solid #c9bcbc;
|
|
min-height: 100vh;
|
|
}
|
|
|
|
.wrap .wrap {
|
|
width: auto;
|
|
padding: 0;
|
|
min-height: 0;
|
|
border: 0;
|
|
}
|
|
}
|
|
|
|
hr {
|
|
margin: 8px 0;
|
|
clear: both;
|
|
border: 0;
|
|
border-top: 1px solid #c9bcbc;
|
|
}
|
|
|
|
/* links */
|
|
a {
|
|
color: #532f2f;
|
|
}
|
|
|
|
a:hover {
|
|
color: #722a2a;
|
|
}
|
|
|
|
a.hint {
|
|
text-decoration: none;
|
|
text-align: center;
|
|
display: block;
|
|
}
|
|
|
|
/* Hide furigana on front */
|
|
nokana ruby rt {
|
|
opacity: 0;
|
|
font-size: 0;
|
|
display: none;
|
|
}
|
|
|
|
notext b,
|
|
notext strong {
|
|
background-color: black;
|
|
color: transparent;
|
|
}
|
|
|
|
/* Top */
|
|
header {
|
|
display: flex;
|
|
clear: both;
|
|
margin: 0 0 8px;
|
|
}
|
|
|
|
header .tags {
|
|
border-radius: 0px 0px 3px 3px;
|
|
}
|
|
|
|
header>div:not(:last-child) {
|
|
margin-right: 3px;
|
|
}
|
|
|
|
/* Space between elements */
|
|
|
|
.sent-center {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-flow: column nowrap;
|
|
}
|
|
.sent-center:where(#tsc, #jp1k-tsc):not([visible="true"]) {
|
|
/* toggles between JP1K mode and regular TSC mode. */
|
|
display: none;
|
|
}
|
|
|
|
/* Japanese sentence */
|
|
|
|
.jpsentence {
|
|
font-size: 35px;
|
|
}
|
|
|
|
.jpsentence b {
|
|
display: inline-block;
|
|
}
|
|
|
|
/* Hide front side when the back is shown. */
|
|
|
|
.fside .jpsentence,
|
|
.fside .sent-center,
|
|
.fside .images,
|
|
.fside .images-details {
|
|
display: none;
|
|
}
|
|
|
|
/* English */
|
|
|
|
div.ensentence>a.hint {
|
|
color: #555;
|
|
font-size: 14px;
|
|
display: block;
|
|
border: 1px solid hsl(0deg 80% 50% / 15%);
|
|
border-radius: 2.2px;
|
|
padding: 2px 10px;
|
|
margin: 0.4rem 0;
|
|
}
|
|
|
|
div.ensentence>a.hint:hover {
|
|
color: hsl(20deg 100% 20% / 80%);
|
|
background-color: hsl(0deg 80% 50% / 3%);
|
|
}
|
|
|
|
/* Definition */
|
|
|
|
.definitions,
|
|
.notes {
|
|
font-weight: 300;
|
|
}
|
|
|
|
/* Tags */
|
|
|
|
.pitch_number,
|
|
.tags {
|
|
font-family:
|
|
"Noto Sans",
|
|
"Droid Sans",
|
|
"DejaVu Sans",
|
|
"Liberation Sans",
|
|
Roboto,
|
|
Cantarell,
|
|
"Segoe UI",
|
|
Arial,
|
|
Meiryo,
|
|
Oxygen,
|
|
Ubuntu,
|
|
"Helvetica Neue",
|
|
Helvetica,
|
|
"Noto Color Emoji",
|
|
"Noto Sans CJK JP",
|
|
Sans,
|
|
sans-serif;
|
|
text-align: center;
|
|
display: inline-block;
|
|
text-transform: lowercase;
|
|
background-color: #333;
|
|
color: #fffaf0;
|
|
font-weight: bold;
|
|
padding: 1px 3px;
|
|
margin: 0;
|
|
cursor: pointer;
|
|
border-radius: 3px;
|
|
font-size: 12px;
|
|
line-height: 14px;
|
|
user-select: none;
|
|
}
|
|
|
|
/* AnkiDroid replay button */
|
|
/* a.replaybutton > span > svg */
|
|
|
|
.replaybutton {
|
|
margin: 0;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.replaybutton span {
|
|
padding: 0;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.replaybutton span svg {
|
|
fill: #fffaf0;
|
|
background: #333;
|
|
border-radius: 3px;
|
|
vertical-align: top;
|
|
min-width: 16px;
|
|
min-height: 16px;
|
|
}
|
|
|
|
/* PC replay button */
|
|
/* a.replay-button > svg */
|
|
|
|
a.replay-button {
|
|
top: -0.125em;
|
|
position: relative;
|
|
margin: 0;
|
|
user-select: none;
|
|
cursor: pointer;
|
|
}
|
|
|
|
a.replay-button svg {
|
|
height: 1em;
|
|
width: 1em;
|
|
user-select: none;
|
|
}
|
|
|
|
a.replay-button svg path {
|
|
fill: #fffaf0;
|
|
}
|
|
|
|
a.replay-button svg circle {
|
|
fill: #333;
|
|
}
|
|
|
|
/* Footer and links */
|
|
|
|
footer {
|
|
font-size: 16px;
|
|
word-break: keep-all;
|
|
text-align: center;
|
|
display: flex;
|
|
flex-flow: row wrap;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
footer>a {
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
}
|
|
|
|
footer>a:not(:last-child)::after {
|
|
content: "·";
|
|
color: brown;
|
|
display: inline-block;
|
|
padding: 0 2px;
|
|
}
|
|
|
|
/* Vocab */
|
|
|
|
.vocab {
|
|
display: flex;
|
|
flex-flow: row wrap;
|
|
margin-top: 2px;
|
|
align-items: center;
|
|
gap: 5px;
|
|
}
|
|
|
|
.vocab>.reading,
|
|
.vocab>.target_word {
|
|
word-break: keep-all;
|
|
}
|
|
|
|
.vocab>.target_word::before {
|
|
content: "【";
|
|
}
|
|
|
|
.vocab>.target_word::after {
|
|
content: "】";
|
|
}
|
|
|
|
.vocab div {
|
|
display: inline-block;
|
|
}
|
|
|
|
.vocab br {
|
|
display: none;
|
|
}
|
|
|
|
.vocab .pitch_number,
|
|
.vocab .tags {
|
|
align-self: flex-start;
|
|
vertical-align: top;
|
|
}
|
|
|
|
.notes .tags {
|
|
vertical-align: bottom;
|
|
}
|
|
|
|
/* Images */
|
|
|
|
.images {
|
|
margin: 10px 0;
|
|
display: grid;
|
|
justify-items: center;
|
|
align-items: start;
|
|
align-content: start;
|
|
justify-content: space-around;
|
|
gap: 5px;
|
|
grid-auto-columns: minmax(100px, 1fr);
|
|
grid-auto-rows: minmax(100px, auto);
|
|
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
|
}
|
|
|
|
.images br,
|
|
.images> :not(img) {
|
|
display: none;
|
|
visibility: hidden;
|
|
}
|
|
.images div { /* some unfortunate apps insert divs in cards */
|
|
display: contents;
|
|
visibility: visible;
|
|
}
|
|
|
|
.images img {
|
|
display: block;
|
|
border-radius: 4px;
|
|
filter: sepia(33%);
|
|
max-height: 95vh;
|
|
width: 100%;
|
|
object-fit: contain;
|
|
}
|
|
|
|
.images img:only-of-type {
|
|
width: auto;
|
|
}
|
|
|
|
/* Images on front, toggled by JavaScript if "imageonfront" tag is set. */
|
|
|
|
.images-on-front:not([visible="true"]) {
|
|
display: none;
|
|
}
|
|
|
|
/* Production cards */
|
|
|
|
.production b,
|
|
.production strong {
|
|
visibility: hidden;
|
|
}
|
|
|
|
.strokeorder {
|
|
text-align: center;
|
|
font-size: 150px;
|
|
font-family: KanjiStrokeOrders;
|
|
}
|
|
|
|
/* Morphman coloring */
|
|
|
|
.fside .jpsentence:hover [mtype="unknown"] {
|
|
background-color: #ffff99;
|
|
}
|
|
|
|
.fside .jpsentence:hover [mtype="seen"] {
|
|
background-color: #ffd1b3;
|
|
}
|
|
|
|
.fside .jpsentence:hover [mtype="known"] {
|
|
background-color: #b3e6cc;
|
|
}
|
|
|
|
.fside .jpsentence:hover [mtype="mature"] {
|
|
background-color: transparent;
|
|
}
|
|
|
|
.fside .jpsentence:hover [priority="true"] {
|
|
color: inherit;
|
|
}
|
|
|
|
.fside .jpsentence:hover [frequency="true"] {
|
|
color: inherit;
|
|
}
|
|
|
|
del.MorphManHide,
|
|
del.morphmanhide {
|
|
display: none;
|
|
}
|
|
|
|
/* Fix for Yomichan defs */
|
|
|
|
ul,
|
|
ol {
|
|
list-style-type: none;
|
|
display: inline;
|
|
margin: 0px;
|
|
padding: 0px;
|
|
}
|
|
|
|
/* Fix for Yomichan pitch accents */
|
|
|
|
.vocab ol>li {
|
|
display: inline;
|
|
}
|
|
|
|
.vocab ol>li:after {
|
|
content: "・";
|
|
}
|
|
|
|
.vocab ol>li:last-child:after {
|
|
content: "";
|
|
}
|
|
|
|
/* Fix: Don't select furigana */
|
|
|
|
ruby rt {
|
|
user-select: none;
|
|
}
|
|
|
|
.jpsentence {
|
|
position: relative;
|
|
}
|
|
|
|
.jpsentence>.overlay {
|
|
position: absolute;
|
|
/* Some versions of Anki don't understand inset. */
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
}
|
|
|
|
.jpsentence>.background,
|
|
.jpsentence>.overlay ruby rt {
|
|
visibility: hidden;
|
|
}
|
|
|
|
.jpsentence>.background ruby rt {
|
|
visibility: visible;
|
|
}
|
|
|
|
/* Outline editable fields */
|
|
|
|
div[contenteditable="true"] {
|
|
background-color: white;
|
|
border: 1px solid gray;
|
|
padding: 3px;
|
|
box-shadow: 10px 5px 5px gray;
|
|
}
|
|
|
|
/* Details */
|
|
|
|
details,
|
|
.headword_section {
|
|
background-color: hsl(0deg 80% 50% / 3%);
|
|
border-radius: 4px;
|
|
padding: 3px;
|
|
margin-block-end: 0.4rem;
|
|
border: 1px solid hsl(0deg 80% 50% / 15%);
|
|
;
|
|
}
|
|
|
|
summary {
|
|
font-size: 18px;
|
|
color: hsl(0 80% 10% / 70%);
|
|
font-weight: 500;
|
|
user-select: none;
|
|
}
|
|
|
|
/* Night Mode */
|
|
|
|
.nightMode.card {
|
|
background-color: #2f2f31;
|
|
}
|
|
|
|
.nightMode .wrap {
|
|
color: #ffffff;
|
|
background-color: inherit;
|
|
border-color: #6d6868;
|
|
}
|
|
|
|
.nightMode .tags {
|
|
background-color: #ffffff;
|
|
color: #2f2f31;
|
|
}
|
|
|
|
.nightMode a.replay-button svg path {
|
|
fill: #2f2f31;
|
|
}
|
|
|
|
.nightMode a.replay-button svg circle {
|
|
fill: #ffffff;
|
|
}
|
|
|
|
.nightMode .replaybutton span svg {
|
|
fill: #2f2f31;
|
|
background: #ffffff;
|
|
}
|
|
|
|
.nightMode a {
|
|
color: #c7493a;
|
|
}
|
|
|
|
.nightMode a:hover {
|
|
color: #a33327;
|
|
}
|
|
|
|
.nightMode .jpsentence b,
|
|
.nightMode .jpsentence strong {
|
|
color: gray;
|
|
}
|
|
|
|
.nightMode .images>img {
|
|
filter: sepia(0%);
|
|
}
|
|
|
|
.nightMode div.ensentence>a.hint {
|
|
color: #ffffff;
|
|
border: 1px solid #ffffff;
|
|
}
|
|
|
|
.nightMode div.ensentence>a.hint:hover {
|
|
color: gray;
|
|
background-color: rgba(0, 0, 0, 0.2);
|
|
}
|
|
|
|
.nightMode summary {
|
|
color: hsl(0 80% 100% / 70%);
|
|
}
|
|
|
|
/* Tooltips */
|
|
|
|
.tooltip {
|
|
position: relative;
|
|
display: inline-block;
|
|
}
|
|
|
|
.tooltip::after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
bottom: 5px;
|
|
right: 0;
|
|
left: 0;
|
|
border-bottom: 2px dotted hsl(0 80% 40% / 20%);
|
|
}
|
|
|
|
.tooltip>.tooltip-text {
|
|
font-weight: 500;
|
|
font-size: 18px;
|
|
visibility: hidden;
|
|
width: 120px;
|
|
background-color: black;
|
|
color: #fff;
|
|
text-align: left;
|
|
border-radius: 6px;
|
|
padding: 0 2px;
|
|
position: absolute;
|
|
z-index: 999;
|
|
top: calc(100% + 6px);
|
|
left: 50%;
|
|
margin-left: -60px;
|
|
word-break: keep-all;
|
|
}
|
|
|
|
.tooltip .tooltip-text::after {
|
|
content: "";
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 50%;
|
|
margin-left: -5px;
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
border-color: transparent transparent black transparent;
|
|
}
|
|
|
|
.tooltip:hover .tooltip-text {
|
|
visibility: visible;
|
|
}
|
|
|
|
.tooltip>.tags {
|
|
position: absolute;
|
|
top: 0px;
|
|
right: -9px;
|
|
}
|
|
|
|
.tooltip-text>.tooltip-reading:not(:last-child)::after {
|
|
content: "; ";
|
|
color: #f6a192;
|
|
}
|
|
|
|
/* Toggle furigana button - JP1K mode */
|
|
|
|
.toggle_furigana_button {
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
cursor: pointer;
|
|
padding: 8px 4px;
|
|
border-radius: 4px;
|
|
background-color: #333;
|
|
color: #fffaf0;
|
|
border: 0;
|
|
outline: 0;
|
|
margin: 0 0 6px;
|
|
}
|
|
.toggle_furigana_button:hover,
|
|
.toggle_furigana_button:active {
|
|
background-color: #4f4f4f;
|
|
background: #4f4f4f;
|
|
border: none;
|
|
}
|
|
|
|
/* Hidden furigana on front - JP1K mode */
|
|
|
|
#jp1k-tsc ruby rt {
|
|
visibility: hidden;
|
|
}
|
|
#jp1k-tsc ruby:hover rt {
|
|
visibility: visible;
|
|
} |