*,
*::before,
*::after {
    box-sizing: border-box;
    font-family: arial;
}

html,
body {
    padding: 0;
    margin: 0;
}

header {
    background: #eee;
    padding: 1em;
}

main {
    padding: 1em;
}

main hgroup,
main > section {
    margin-left: auto;
    margin-right: auto;
    max-width: 900px;
}

/* automated code blocks were removed, but keeping this styling
   for instances where we may need to show code blocks in test cases */
pre code {
    tab-size: 2ch;
}
pre {
    display: block;
    background: #fcfcfc;
    padding: 0.5em;
    border: 1px solid #666;
    overflow: auto;
}

.tc-block {
    padding: 1em 0;
    border-bottom: 1px solid #eeecec;
}

.tc-block:last-of-type {
    border-bottom: none;
}

.test-case {
    background: #fffff9;
    padding: 0.5em;
    margin-bottom: 1em;
    border: 1px solid #eee;
}

.tc-block [data-explainer] {
    padding: 0.75em;
    margin: 0.5em 0;
    border: 1px solid #ccc;
}

.tc-block [data-explainer] :first-child {
    margin-top: 0;
}

.a11y-directions:not(:empty),
[role='note'].a11y-info {
    background-color: #e8f4fd;
    border: 1px solid #b3d9f2;
    border-left: 5px solid rgb(18, 93, 255);
    border-radius: 4px;
    padding: 0.75em;
}

[role='note'].warn {
    background-color: #fff0f0;
    padding: 0.75em;
    border: 1px solid #ddd;
    border-left: 5px solid red;
    border-radius: 4px;
}
