body,
#root {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    max-height: 100vh;
    overflow: hidden;
    font-size: 14px;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    line-height: 1.35;
}

a {
    color: inherit;
    font-style: inherit;
    text-decoration: none;
}

a * {
    cursor: pointer;
}

*[x-as="line"] {
    display: flex;
    flex-direction: row;
    flex-grow: 0;
    flex-shrink: 0;
    box-sizing: border-box;
}

*[x-as="block"] {
    flex-grow: 1;
    flex-shrink: 1;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

*[x-as="dimmed"] {
    font-size: inherit;
    color: #8e939c;
}

*[x-as="table"] {
    flex-grow: 1;
    display: grid;
    grid-auto-columns: min-content;
    grid-auto-rows: min-content;
    overflow: auto;
    box-sizing: border-box;
}

*[x-as="table"]>thead,
*[x-as="table"]>tbody,
*[x-as="table"]>thead>tr,
*[x-as="table"]>tbody>tr {
    display: contents;
}

*[x-as="table"]>thead>tr>th,
*[x-as="table"]>tbody>tr>td {
    display: flex;
    align-self: center;
    justify-self: stretch;
    overflow: hidden;
    padding: 0;
    margin: 0;
}

*[x-as="table"]>thead>tr>th>*,
*[x-as="table"]>tbody>tr>td>* {
    overflow: hidden;
    flex-grow: 1;
}

*[x-as="label"] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 2em;
}

@keyframes spinner {
    0% {
        margin-left: -25%;
    }

    50% {
        margin-left: 100%;
    }
}

@-webkit-keyframes spinner {
    0% {
        margin-left: -25%;
    }

    50% {
        margin-left: 100%;
    }
}

.visuallyhidden {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
    clip-path: inset(0px 0px 99.9% 99.9%);
    overflow: hidden;
    height: 1px;
    width: 1px;
    padding: 0;
    border: 0;
}