
/* Fonts */
@font-face{
  font-family: hoshuko_kanji;
  font-style: normal;
  src: local("UD Digi Kyokasho NK-R")
}
@font-face {
    font-family: 'Kyokasho';
    src:local('UD Digi Kyokasho NK-R'),
        url('UDDigiKyokashoNP-R.woff2') format('woff2'),
        url('UDDigiKyokashoNP-R.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
:root{
  --hiragana-s-margin: 25px;
  --hiragana-l-margin: 13px;
}
/* Page and containers */
.page{
  font-family: Kyokasho;
  display: flex;
  flex-direction: column-reverse;
  font-size: 20pt;
  writing-mode: vertical-lr;
}

.preview-frame{
  border:none;
  height: 700px;
}
.preview{
  display: flex;
  flex-direction: column-reverse;
  writing-mode: vertical-lr;
  --colwidth: 65px;
  font-family: Kyokasho;
}

.preview_resize{
  display: block;
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -o-transform: scale(0.8);
  -ms-transform: scale(0.8);
  margin-left: -40px;
  margin-top: 0px;
}
.Xpreview .hiragana{
  padding-left: 7px;
  display: grid;
}
.preview .kanji_reading{
  padding-left: 7px;
  letter-spacing: 0.3em;
}
.preview .kanji_reading_brackets{
    margin-left: -20px;
}

/* Question container */
.question{
  font-family: Kyokasho;
  display: flex;
  flex-direction: row;
  padding-left: 3px;
}

/* Reading part of a question */

.kanji_reading-80{
  display: grid;
  grid-template-rows: 50px 30px;
  margin-left: 16px;
  font-size: 30pt;
}
.kanji_reading_brackets-80{
  display: grid;
  grid-template-columns: 20px auto 20px
}
.kanji_reading-90{
  display: grid;
  grid-template-rows: 53px 27px;
  margin-left: 19px;
  font-size: 34pt;
}
.kanji_reading_brackets-90{
  display: grid;
  grid-template-columns: 20px auto 20px
}
.kanji-reading-spacer{
  height: 25px;
  float: left;
}

/* Writing part of a question */
.kanji_writing{
  display: grid;
  grid-template-rows: var(--colwidth) 30px;
}
.kanji_writing-90{
  display: grid;
  grid-template-rows: 90px 30px;
}
.kanji_box{
  text-align: center;
}
.furigana{
  font-size: 14pt;
  line-height: 1em;
  text-align: center;
}


/* Combo question part (combining hiragana and kanji) */
.combo_question-80{
  line-height: 1em;
  display: grid;
  grid-template-rows: 70px 30px;
  white-space: nowrap;
}
.combo_question-90{
  line-height: 1em;
  display: grid;
  grid-template-rows: 85px 30px;
  white-space: nowrap;
}
.furigana-combo{
  font-size: 20px;
  line-height: 1em;
  text-align: center;
  display:table;
}
.furigana-combo-row{
  display:table-cell;
}


/* Bonus question specific formating */
.kanji_bonus{
  border-right: 1px black dashed;
  width: 32px;
  margin-left: var(--hiragana-s-margin);
  font-size: 18pt;
}


/* Standard part of the question */
.hiragana{
  font-size: 18pt;
  padding-left: var(--hiragana-s-margin);
  text-align: center;
  display: grid;
  grid-template-rows: var(--colwidth) 30px;
  white-space: nowrap;
}
.hiragana-90{
  font-size: 22pt;
  padding-left: var(--hiragana-l-margin);
  text-align: center;
  display: grid;
  grid-template-rows: 70px 25px;
  white-space: nowrap;
}
.hiragana-content{
  display: grid;
  grid-template-rows: auto 40px auto;
}


/* furigana */
.kanji-w-furi-80{
  font-size: 18pt;
  margin-left: var(--hiragana-s-margin);
}
.kanji-w-furi-furi-80{
  font-size: 10pt;
  line-height: 1em;
  text-align: center;
}
.kanji-w-furi-90{
  font-size: 90%;
  margin-left: 25px;
}
.kanji-w-furi-furi-90{
  font-size: 20px;
  line-height: 1em;
  text-align: center;
}


/* for gray letters */
.ghost {
  color: #DDDDDD
}

/* test header formatting */
.header{
  writing-mode: tb;
}
.header_graphics{
  display: flex;
}
.header_frame{
  border: 3px black solid;
  border-radius: 15px;
  display: grid;
  grid-template-columns: 380px auto;
  width: 27px;
  font-size: 20px;
  padding: 12px;
  height: 700px;
}
.header_no_frame{
  display: grid;
  grid-template-columns: 380px auto;
  height: 680px;
  width: 30px;
  font-size: 18pt;
  padding: 12px;
}
.scoring_comment{
  text-align: right;
  font-size: 14pt;
  margin-right: -7px;
  padding-left: 10px;
}
.header_score_box{
  border: 3px black solid;
  width: 75px;/*130px*/
  height: 75px;/*100px*/
  writing-mode: horizontal-tb;
  font-size: 40%;
  margin-top: 10px;
  padding: 5px;
}
.header_bonus_score_box{
  border: 3px black solid;
  width: 125px;/*130px*/
  height: 85px;/*100px*/
  writing-mode: horizontal-tb;
  font-size: 40%;
  margin-top        : 10px;
  padding: 5px;
}

.slash{
  font-size: 52px;
  margin-left: 20px;
  transform: rotate(30deg);
  margin-top: 14px;
  margin-bottom: -43px;
  margin-right: 2px;
}
.header-instructions{
  font-size: 16pt;
  padding: 15px 10px 0px 20px;
  height: 680px;
}
.header-test-instructions{
  font-size: 16pt;
  padding: 15px 10px 0px 20px;
  height: 570px;
}

.trcp_question{
  color: black;
  display: grid;
  grid-template-columns: 80px 80px 80px 80px 80px 80px 80px 80px;
  width: 80px;
  border: 1px black solid;
  margin-left: -1px;
  border-top-style: none;
  height: 640px;
}
.trcp_char{
  border-top: 1px solid black;
  text-align: center;
  padding-left: 17px;
  font-size: 32pt;
}
.trcp_empty{
  border-top: 1px solid black;
}

.kjwr_question{
  width: 100px;
  writing-mode: vertical-rl;
  padding-top: 10px;
  padding-right: 15px;
}
.kjwr_hiragana{
  font-size: 24px;
}
.kjwr_hiragana_hint{
  font-size: 24px;
  border-right: 1px black dashed;
}
.kjwr_boxes{
  display: flex;
  flex-direction: row;

}
.kjwr_empty{
  border: 1px solid black;
  height: 70px;
  width: 70px;
  margin-top: -1px;
}

.kjrd_layout{
  display: grid;
  grid-template-columns: 50% 50%;
  height: 600px;
  writing-mode: vertical-rl;
}
.kjrd_question{
  display: flex;
  flex-direction: row;
  width: 120px;
  writing-mode: vertical-lr;
  padding-top: 10px;
}
