.TSMenuQuillPlaceholder {
    height: 32px;
    box-sizing: content-box;
    border: 1px solid white;
    border-radius: 2px;
}

.TSMenuPlaceholder {
    height: 26px;
    padding-top: 4px;
    box-sizing: content-box;
    border: 1px solid white;
    border-radius: 2px;
}


.TSPlaceholder::after {
    content: attr(placeholder);
    pointer-events: none;
    display: flex;
    position: absolute;
    color: gray;
    font-style: italic;
    font-family: var(--font-sans);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    align-items: center;
    justify-content: center;
}

.TSAnswerLine .TSPlaceholder::after {
    text-align: left;
    justify-content: left;
    left: 5px;
}

.TSPlaceholderQuill::after {
    content: attr(placeholder);
    pointer-events: none;
    display: flex;
    position: absolute;
    color: gray;
    font-style: italic;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
   align-items: center;
}

.TSScoreMarker {
    transform: scale(0.3);
}

.TSScoreMarkerDiv {
    width: 15px;
    height : 15px;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: 1;
    border: thin solid var(--color-score-marker);
    align-items: center;
    justify-content: center;
    text-align: center;
}


/* portrait cut-off */
@media screen and (max-width: 567px) {
    :root {
        --portrait: true;
    }

    html {
        width: 100vw;
    }

    body {
        grid-auto-rows: auto;
        display: grid;
        grid-template-rows: 4em 1fr;
        grid-template-areas: 
            "header"
            "main";
        height: 100%;
        box-sizing: border-box;
    }

    .TSHeaderAndAds {
        grid-template-areas: 
            "header ads"
            "main ads";
        grid-template-rows: var(--header-height) calc(100vh - var(--header-height));
        grid-template-columns: 80% auto;
    }

    .TSHeaderNoAds {
        grid-template-areas: 
            "header"
            "main";
        grid-template-rows: var(--header-height) calc(100vh - var(--header-height));
        grid-template-columns: 100%;
    }

    .TSAdsNoHeader {
        grid-template-areas: 
            "main ads";
        grid-template-rows: 100%;
        grid-template-columns: 80% auto;
    }


    .ts-header {
        position: relative;
        top: 0;
        left: 0;
        grid-template-columns: min(25vw,50vh) 1fr auto auto;
        grid-area: header;
        width: 100%;
        height: 100%;
    }

    .TSMenuBar {
        position: relative;
    }

    #menubar-main .material-icons {
        font-size: 14px;
    }

    #menu-button {
        padding-left: 0;
        padding-right: 0;
    }

    #viewport {
        position: relative;
        top: 0;
        left: 0;
        grid-area: viewport;
        width: 100% !important;
        overflow-y: auto !important;
    }

    #paper {
        transform-origin: center top;
    }

    .TSAdsSidebar {
        box-sizing: border-box;
        position: relative;
        top: 0;
        left: 0;
        grid-area: ads;
        width: 100vw !important;
        height: 100% !important;
    }

    .TSNoDisplayInPortrait {
        display: none;
    }

    .TSDisplayInPortraitOnly {
        display: block;
    }


    .TSNoStats {
        display: none;
    }

    .mdl-snackbar {
        display: none !important;
    }
}

