@font-face {
    font-family: 'Source Han Sans SC';
    src: url('fonts/SourceHanSansSC-Normal.otf');
    unicode-range: U+4E00-9FFF;
}

@font-face {
    font-family: 'Raleway';
    src: url('fonts/Raleway-VariableFont_wght.ttf');
    unicode-range: U+00-52F, U+1E00-1FFF, U+2200-22FF;
}

@font-face {
    font-family: 'Quicksand';
    src: url('fonts/Quicksand-VariableFont_wght.ttf');
    unicode-range: U+00-52F, U+1E00-1FFF, U+2200-22FF;
}

body {
    font-family: 'Quicksand', 'Source Han Sans SC';
}

button.answer.red {
    background-color: var(--pico-color-red-500);
    border-color: var(--pico-color-red-500);
    box-shadow: none;
}

button.answer.green {
    background-color: var(--pico-color-green-500);
    border-color: var(--pico-color-green-500);
    box-shadow: none;
}

input.red {
    background-color: var(--pico-color-red-500);
    border-color: var(--pico-color-red-500);
    box-shadow: none;
}

input.green {
    background-color: var(--pico-color-green-500);
    border-color: var(--pico-color-green-500);
    box-shadow: none;
}

button.grey {
    background-color: var(--pico-color-zinc-500);
    border-color: var(--pico-color-zinc-500);
    box-shadow: none;
}

.large {
    font-size: 72pt;
}

article {
    max-width: 650px;
    position: relative;
}

.count {
    position: absolute;
    right: 20px;
    color: var(--fbc-secondary-text);
}

.feedback {
    max-width: 650px;
}

.answer {
    margin: 10px;
}

.large-answer {
    font-size: 28pt;
}

.lookalikes {
    padding: 0;
    list-style: none;
    text-align: left;
    font-size: 0.9em;
    color: var(--pico-muted-color);
}


.quiz-shell {
    text-align: center;
}

/* text-align doesn't center the block-level card itself. */
.quiz-shell article,
.quiz-shell .feedback {
    margin-inline: auto;
}

.prelearn-queue {
    padding: 0;
}

.prelearn-queue li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    list-style: none;
}

.prelearn-queue li span {
    font-size: 2rem;
}

.prelearn-queue form {
    margin-bottom: 0;
}

.logout-form {
    margin-bottom: 0;
}

/* Off-screen but still read by screen readers; for labels whose
   meaning is visually obvious from the quiz layout. */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

table#pinyin-table {
    font-size: 12pt;
}

table#pinyin-table td {
    padding: 5px;
}
