.word {
    display: inline-block;
    border: 1px solid #000;
    background-color: rgb(184, 184, 184);
    font-family: 'roboto mono', 'Consolas', monospace;
}

.word .display {
    display: inline-block;
    font-size: 24px;
}

.word .display-container {
    display: flex;
    justify-content: center;
}

.word .display,
.char {
    border-bottom: 2px solid transparent;
}

.word .display.current,
.char.current {
    border-bottom: 2px solid #1976d2;
}

.chars {
    display: flex;
    justify-content: center;
}

.char {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.char.current {
    animation: blinking-cursor 1s steps(2, start) infinite;
}

@keyframes blinking-cursor {
    0% { opacity: 1; }
    10% { opacity: 0.95; }
    20% { opacity: 0.9; }
    30% { opacity: 0.8; }
    40% { opacity: 0.7; }
    50% { opacity: 0.6; }
    60% { opacity: 0.7; }
    70% { opacity: 0.8; }
    80% { opacity: 0.9; }
    90% { opacity: 0.95; }
    100% { opacity: 1; }
}

.word .display.typed.correct,
.char.typed.correct {
    background: #A6F192;
    color: #000;
}

.word .display.typed.correct.once-wronged,
.char.typed.correct.once-wronged {
    color: yellow;
}

.word .display.typed.wrong,
.char.typed.wrong {
    color: #f44336;
}

.word .display.space::after,
.char.space .text::after,
.char.space .code::after {
    content: "\2423";
}

.english .char {
    font-size: 22px;
    width: 14px;
}

.english .word .display,
.english .char .text {
    display: none;
}

.english .word {
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
}

.english .char.space .code::after {
    content: "\00A0";
}

.article:not(.focused) {
    user-select: none;
    transition: filter 0.3s;
}

.article .input-text {
    pointer-events: auto;
}

.article:not(.focused) .current {
    animation: none;
}

.status-item {
    margin: 0 10px;
}

#delta-status-record-graph {
    font-family: 'Roboto Mono', monospace;
}

.graph-summary {
    display: flex;
    justify-content: space-around;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #3a3d40;
}

.graph-summary-item {
    text-align: center;
}

.graph-summary-label {
    color: #646669;
    font-size: 12px;
    text-transform: lowercase;
    margin-bottom: 5px;
}

.graph-summary-value {
    color: #e2b714;
    font-size: 24px;
    font-weight: bold;
}

.graph-summary-value.secondary {
    color: #d1d0c5;
}

.word-image {
    width: 48px;
}

.input-text {
    width: 100px;
    position: absolute;
}
