
@font-face {
    font-family: "bpmf";
    font-weight: normal;
    src: url("bopomofo.ttf");
}

.bopomofo {
    font-family: "bpmf";
}

.landscape {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.landscape .note {
    font-size: .75em;
    height: 2em;
    vertical-align: bottom;
}

.landscape .note .tone {
    left: .5em;
    position: relative;
    text-align: right;
    top: .25em;
}

.landscape .note .toptone {
    position: relative;
    right: .75em;
    top: 1em;
}

.landscape .note table {
    margin-inline: auto;
}

.landscape .zh {
    font-size: 3em;
    height: 1.25em;
}

.landscape span {
    display: inline-block;
    rotate: -90deg;
}

.landscape table {
    border-collapse: collapse;
}

.landscape td {
    line-height: 1em;
    padding: 0;
}

.mesh td {
    box-shadow: inset 1px 1px #0000000F, inset -1px -1px #0000000F
}

.portrait {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    overflow: auto hidden;
}

.portrait .note {
    font-size: .75em;
    width: 2em;
}

.portrait .note .tone {
    bottom: .5em;
    position: relative;
    right: .25em;
    vertical-align: bottom;
    width: 1em;
}

.portrait .note .toptone {
    bottom: .75em;
    position: relative;
    right: 1em;
    vertical-align: top;
}

.portrait .zh {
    font-size: 3em;
    width: 1em;
}

.portrait table {
    border-collapse: collapse;
}

.portrait td {
    line-height: 1em;
    padding: 0;
}
