@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; }