/* biome-ignore-all lint/style/noDescendingSpecificity: legacy stylesheet is crufty */

tt,
code,
.fixed {
    font-family: Courier, "Courier New", sans-serif;
}
html,
body {
    height: 100%;
    width: 100%;
    min-width: 320px;
}
html {
    font-size: 100%;
    overflow-wrap: break-word;
}
body {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 0.75rem;
    line-height: initial;
    text-align: left;

    background-color: #cccccc;
    margin: 0rem;
    padding: 0rem;

    width: 100%;
    vertical-align: middle;
    margin-top: 0.5rem;
}

embed,
object,
iframe {
    max-width: 100%;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: #a00;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

.maintitle a,
.largetext a,
.sideheadtop a,
.mainheadmiddle a,
.sideheadmiddle a {
    color: #fff;
}

table {
    margin-left: 0rem;
    margin-right: 0rem;
    border: 0rem;
    padding: 0rem;
    vertical-align: top;
}
td {
    vertical-align: top;
}

.container {
    position: relative;
    max-width: 98%;
    width: 996px;
    margin-left: auto;
    margin-right: auto;
}
.banner_container {
    position: relative;
    max-width: 100%;
    width: 996px;
    margin: 0rem;
}

.banner_snow_overlay {
    /* The following adds snow effects */
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: fill;
    /* Decorative element; don't interact. */
    pointer-events: none;
}

.banner_container:before {
    content: "";
    display: block;
    padding-top: 15.96%;
}

.inner {
    /*	text-align: center; */
    margin-left: auto;
    margin-right: auto;
    border: 0rem;
}

#htop {
    text-align: left;
    max-width: 996px;
    width: 100%;
    position: absolute;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    background:
        transparent url("header_calc.87e8f76563b1.jpg") repeat scroll 0% 0% / 100% auto;
}

#hbot {
    position: relative;
    top: 0.25rem;
    background: #7b291b linear-gradient(#7f3124, #ab675a) repeat-x scroll left
        bottom;
    border-bottom-left-radius: 0.75rem;
    border-bottom-right-radius: 0.75rem;
    border: 0.1875rem solid #7b291b;
    border-top: none;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#logo_img,
#motto_img {
    display: block;
    border: none;
    position: absolute;
    height: auto;
    bottom: 3.77%;
    padding: 0rem;
    margin: 0rem;
}

#logo_img {
    left: 0.8%;
    width: 47.99%;
}

#motto_img {
    right: 0.8%;
    width: 25.3%;
}

.sideheadmiddle {
    color: #fff;
    margin: 0rem;
    padding: 0.1875rem;
    margin-top: 0.0625rem;
    margin-bottom: 0.0625rem;
    background: #7b291b;
    text-align: left;
}

.mainlowermiddle,
.sideheadbottom {
    padding: 0rem;
    height: 0.5625rem;
    margin: 0rem 0rem 0.375rem 0rem;
    border-bottom: 0.1875rem solid #7b291b;
    background-image: linear-gradient(#7b291b, #a2685e);
    text-align: center;
}

.sideheadbottom {
    border: 0.1875rem solid #7b291b;
    border-top: none;
    border-bottom-left-radius: 0.75rem;
    border-bottom-right-radius: 0.75rem;
}

.sideheadtop,
.mainheadmiddle {
    position: relative;
    font-size: 1rem;
    font-weight: bold;
    color: #fff;
    margin: 0rem 0rem 0.0625rem;
    text-align: center;
    padding: 0.375rem 0rem 0rem;
    min-height: 1.25em;
    border-top: 0.1875rem solid #7b291b;
    background: transparent linear-gradient(#a2685e, #7b291b) repeat scroll 0%
        0%;
}

.mainbody,
.mainbodynaked {
    text-align: center;
    padding: 0 0.625rem;
}
.mainbody {
    background: #7b291b;
    margin-bottom: 0.0625rem;
    padding: 0.1875rem 0.625rem;
}
.mainbodyinner {
    color: #000;
    font-size: 0.75rem;
    background: #ddd;
    text-align: left;
    padding: 0.1875rem;
}
.innersidebar {
    background-color: #ccc;
    padding: 0.1875rem;
}
.hdivider_thick {
    background-color: #7b291b;
    height: 0.0625rem;
}
.boldsmalltext {
    font-size: 0.85em;
    font-weight: bold;
}

.main_nav_list {
    list-style: inside none none;
    padding: 0rem;
    margin: 0rem;
    flex: 1 1 auto;
}

.navbutton {
    display: inline-block;
    padding: 0rem;
    margin: 0rem;
    height: 2rem;
    width: 7.5rem;
    color: #ffffff;
    vertical-align: middle;
    border: 0.0625rem solid transparent;
}

.navbutton a,
.navbutton a:hover,
.navbutton a:active {
    display: inline-block;
    color: #eee;
    font-size: 0.875rem;
    font-weight: bold;
    vertical-align: middle;
    text-decoration: none;
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.navbutton:hover {
    border-color: #eee;
    border-top-color: transparent;
    box-shadow: 0rem 0rem 0.1875rem 0rem #000;
    background-size: 1.83rem 1.75rem;
    background-repeat: repeat-x;
    background-image: radial-gradient(
        1rem 0.875rem at 1rem 0.875rem,
        rgba(255, 255, 255, 0.33) 0%,
        rgba(255, 255, 255, 0) 100%
    );
    background-position: 0rem 1.125rem;
    background-color: transparent;
    background-attachment: scroll;
}

.messages > * {
    background-color: #eee;
    text-align: center;
    font-size: 1rem;
    padding: 3px;
    margin: 4px 0;
    border-radius: 3px;
    transition: 1s;
}
.messages > *:hover {
    filter: brightness(110%);
}
.messages > .info {
    background-color: #8ee;
}
.messages > .success {
    background-color: #8e8;
}
.messages > .warning {
    background-color: #ee8;
}
.messages > .error {
    background-color: #e88;
}

.forum-action-button,
.post-action-button,
.navsearch {
    vertical-align: middle;
    background: #eee
        linear-gradient(to right, #cac4c4 0%, #e7e7e7 50%, #cac4c4 100%)
        no-repeat scroll 0% 0%;
    color: #7b291b;
}

.forum-action-button,
.post-action-button {
    text-align: center;
    border: 1px solid #7b291b;
    border-radius: 0.375rem;
    font-weight: bold;
    font-size: 0.75rem;
    display: inline-block;
    text-transform: lowercase;
    padding: 0.175rem 0.25rem;
    min-height: 1.1rem;
}
.post-action-button {
    min-height: 0.75rem;
    padding: 0.0625rem 0.25rem;
    margin: 0.0625rem 0.0625rem;
}

.forum-action-button > div {
    vertical-align: middle;
}

.admin-action-button {
    display: inline-block;
    color: #000;
    text-align: center;
    border: 0.125rem solid #7b291b;
    border-radius: 1rem;
    font-size: 1rem;
    text-transform: lowercase;
    width: 1.2rem;
    height: 1.2rem;
    line-height: 1.2rem;
    background-color: #eee;
    background-image: radial-gradient(
        ellipse at center,
        #bd9292 0%,
        #e6d5d5 100%
    );
}

.navsearch {
    min-width: 8rem;
    width: 8rem;
    padding: 0rem;
    border-radius: 0.375rem;
    height: 1.625rem;
    margin: 0.1875rem 1rem 0.1875rem 0rem;
    flex: 0 0 auto;
}

#navsearchform {
    margin: 0rem 0.2rem;
    padding: 0rem;
    height: 100%;

    display: flex;

    align-items: center;
    justify-content: space-around;
}
.navsearchsubmit {
    border: 0rem none;
    padding: 0rem;
    margin: 0rem;
    color: #7b291b;
    width: 18px;
    height: 17px;
    background: transparent url("buttonsheet.790c0387cff8.png") -26px 0;
}
.navsearchinput {
    margin: 0rem;
    background: #9b5f54 none repeat scroll 0% 0%;
    border: medium none;
    color: #eee;
    font-size: 0.625rem;
    width: 5.75rem;
    height: 1.3em;
}
.navsearchmore {
    display: inline;
    border: 0rem none;
    padding: 0rem;
    color: #7b291b;
    background-color: transparent;
    font-weight: bold;
}

.navbread {
    background-color: #bbb;
}

.smalltext {
    color: #000;
    font-size: 0.9em;
}
.medtext {
    color: #000;
    font-size: 0.75rem;
}
.largetext {
    color: #000;
    font-size: 1.2em;
}
.headlinetext {
    color: #000;
    font-size: 1rem;
}
.admincolor {
    color: #fff;
    background: #000;
}

.nowrap {
    white-space: nowrap;
}

/* Quote & Code blocks */
.typepost,
.helpline {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 0.75rem;
    background-color: #f8f8f8;
    box-sizing: border-box;
    width: 100%;
    /* Should center if we hit max-width.
	   I can't be bothered to figure out how right now. */
    max-width: 40rem;
    margin-left: auto;
    margin-right: auto;
}
textarea.typepost {
    line-height: 1rem;
    height: 12.5rem;
    resize: both;
}
.helpline {
    font-size: 0.625rem;
    background-color: #e8e8e8;
}
.code {
    font-family: Courier, "Courier New", sans-serif;
    font-size: 0.6875rem;
    color: #006600;
    background-color: #ccc;
    border: #555;
    border-style: solid;
    border-left-width: 0.8em;
    border-top-width: 0.1em;
    border-right-width: 0.1em;
    border-bottom-width: 0.1em;
    padding: 0.25em;
    max-height: 27em;
    max-width: 95%;
    overflow: auto;
    word-wrap: break-word;
}
.quote {
    /* Geometric series on quote pyramids. This seems like a good idea. */
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 0.675rem;
    color: #222;
    line-height: 125%;
    background-color: #ccc;
    border: #555;
    border-style: solid;
    border-width: 0.1em;
    border-left-width: 0.8em;
    width: 95%;
    word-wrap: break-word;
    margin: 0 0.3rem;
    padding: 0.2rem;
    box-sizing: border-box;
}
.quote_name {
    width: 95%;
    word-wrap: break-word;
    margin: 0 0.5rem;
    padding: 0.2rem;
}

#ajaxinputs form {
    display: flex;
}

#ajaxinputs form * {
    /* Ensure elements will flex-shrink beyond their natural size,
     * in case the natural size is wider than the sidebar. */
    min-width: 0;
    font-size: 0.625rem;
}

.saxinput {
    flex: auto;
}

.saxsubmit {
    margin: 0.1em;
    padding: 0.1em;
}

.postbody img[src^="images/smiles/icon_"],
.quote img[src^="images/smiles/icon_"] {
    margin: -50% 0;
    vertical-align: middle;
}

.sax_highlights {
    display: none;
    position: fixed;
    bottom: 0.5rem;
    left: 0.5rem;
    z-index: 9001;
    background-color: #222;
    color: #fff;
    border: 0.1875rem solid #f00;
    padding: 0.1875rem;
    cursor: pointer;
}
.sax_highlights a {
    background-color: #ddd;
}

.usertoolslist,
.newslist,
.raquolist,
.file-modreview {
    list-style: none inside none;
    padding-left: 0em;
    margin: 0em;
    text-indent: 0em;
}

.usertoolslist li:before,
.newslist li:before,
.raquolist li:before,
.file-modreview li:before {
    content: " \00bb";
    padding-right: 0.5em;
}

.usertoolslist li a {
    color: #fff;
}

#at-a-glance-highlights li,
#smiley-list li {
    display: inline-block;
}

.glance_boxes,
.topictools_boxes {
    padding-top: 1rem;
    display: flex;
    justify-content: space-between;
}
.topictools_boxes {
    margin: 0.4rem;
    padding: 0rem;
}
.glance_boxes > div,
.topictools_boxes > div {
    flex: 1 1 0;
}
.topictools_rightbox {
    text-align: right;
}

.glance_contents {
    margin: 0.3em;
    padding: 0.2em;
    border: 1px solid #888;
    background-color: #ccc;
}
.glance_flex {
    display: flex;
    margin-bottom: 0.5em;
}
.glance_icon {
    width: 5em;
    height: 5em;
    flex-shrink: 0;
}

#glance_posts {
    background: url("fpproj/frontsheet.7ea1a927ad61.png") -15em 0;
    background-size: 20em;
}

#glance_labs {
    background: url("fpproj/frontsheet.7ea1a927ad61.png") -5em 0;
    background-size: 20em;
}

#glance_files {
    background: url("fpproj/frontsheet.7ea1a927ad61.png") -10em 0;
    background-size: 20em;
}

#glance_tools {
    background: url("fpproj/frontsheet.7ea1a927ad61.png") 0 0;
    background-size: 20em;
}

#smiley-list {
    text-align: center;
}

#login_form {
    display: block;
    margin: 0rem;
    border: none;
    padding: 0rem;
}

#login_button {
    display: block;
    clear: both;
}

#page_content_parent {
    vertical-align: top;
    float: right;
    margin: 0rem;
    padding: 0px;
    width: calc(100% - 13rem);
    position: relative;
}

#content_wrapper {
    margin-left: auto;
    margin-right: auto;
    border: 0 none;
    padding: 0px;
    padding-top: 0.375rem;
    position: relative;
    top: 0.25rem;
    max-width: 80rem;
    width: 98%;
}

.sideheadtop,
.roundedtop {
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    border: 0.1875rem solid #7b291b;
}

#ajaxinfobox {
    word-wrap: break-word;
    text-overflow: ellipsis;
}

.post {
    background-color: #eee;
}
.post,
.typepost,
.helpline {
    border: 0.0625rem solid #7b291b;
    margin: 0.3125rem 0rem 0.3125rem 0rem;
    padding: 0rem;
}

.post:nth-child(odd) {
    background-color: #e3e3e3;
}

.post-header {
    width: 100%;
    min-height: 3.125rem;
    border-bottom: 0.0625rem solid #999;
    display: flex;
    justify-content: space-between;
}

.user-info-row {
    height: 1rem;
    padding: 0rem;
    margin: 0rem;
    white-space: nowrap;
}

.awards {
    color: maroon;
    position: relative;
}

.awards input[type="checkbox"] {
    display: none;
}

.tooltip {
    display: none;
}

.awards input[type="checkbox"]:checked + .tooltip {
    display: block;
    background: rgba(0, 0, 0, 0.8);
    border-radius: 0.3125rem;
    color: #fff;
    left: 100%;
    margin-left: 0.3125rem;
    top: 0.3125rem;
    position: absolute;
    padding: 0.3125rem;
}

.awards img {
    vertical-align: middle;
}

a.username {
    font-weight: bold;
    color: #000000;
}

img.avatar {
    max-width: 3.125rem;
    max-height: 3.125rem;
    height: auto;
    width: auto;
    border-right: 0.0625rem solid #7b291b;
    border-bottom: 0.0625rem solid #7b291b;
    display: block;
}

#cemetech-at-a-glance ul.smalltext,
#at-a-glance-highlights ul,
#smiley-list ul,
ul.user-info,
ul.post-info,
.tooltip ul {
    list-style: inside none none;
    margin: 0rem;
    padding: 0rem;
}

.tooltip li {
    min-width: 350px;
    width: 22rem;
    height: 1.25rem;
    margin: 0rem;
    padding: 0rem;
    font-size: 0.625rem;
    vertical-align: middle;
    text-align: left;
}

.left-top-post {
    right: 0px;
    padding: 0rem;
    margin: 0rem;
    border: none;
    flex-shrink: 0;
    display: inline-block;
}

.middle-top-post {
    flex: 2 0 auto;
    overflow-x: visible;
    margin: 0 0.5rem;
}

.userrank {
    font-size: 0.625rem;
}

ul.post-info {
    height: 2.5rem;
    font-size: 0.625rem;
    text-align: right;
}

li.post-datetime,
li.post-edited {
    font-style: italic;
}

li.post-datetime a,
li.post-datetime a:hover,
li.post-datetime a:active {
    color: #000;
}

.right-top-post {
    margin-right: 1em;
    display: inline-block;
    flex: 0 1 auto;
}

.sig-area {
    flex: 2;
    border-top: 1px solid #bbb;
    padding: 0 0.8125rem;
    overflow: hidden;
    max-height: 2.75rem;
    font-size: 0.625rem;
    width: auto;
}

.post-body {
    padding: 1em;
}

.post-footer {
    display: flex;
}

.post-action {
    border-top: 1px maroon solid;
    border-left: 1px maroon solid;
    max-width: 8rem;
    height: 2.75rem;
    padding: 0;
    text-align: right;
}

.post-action > div {
    margin: 0px;
    display: inline-block;
}
.post-action img {
    margin: 0.0625rem;
}

.post-action a.nav {
    font-size: 1rem;
    font-weight: bold;
    display: inline-block;
    margin-top: -0.1875rem;
    height: 1rem;
}

.post-bottom-element {
    margin-top: 0em;
    margin-left: 0rem;
    margin-right: 0rem;
    /*max-height: 2.75rem;*/
}

.post-bottom-element span {
    /*padding: 0 0.625rem;*/
}

.copyright {
    text-align: center;
    font-size: 0.75rem;
}

#quickreply .gen {
    font-weight: bold;
}

#quickreply label,
#quickreply .gen {
    display: block;
}

.topictail {
    margin: 0;
    padding: 1%;
}

.topictail > div {
    padding: 0;
    margin: 0;
    border: medium none;
    display: inline-block;
    width: 48%;
    vertical-align: top;
}

td.row1,
td.row2,
td.row3 {
    overflow: hidden;
}

#cemetech-at-a-glance {
    position: relative;
}

#cemetech-at-a-glance .mainbodyinner {
    border: none;
    padding: 0;
    margin: 0;
}

#cemetech-at-a-glance .innersidebar {
    float: right;
    width: 40%;
}

/*
#cemetech-at-a-glance .introparagraph {
	float: left;
	width: 60%;
}*/

#cemetech-at-a-glance .newfiles {
    float: left;
    clear: both;
}

hr.hdivider_thick {
    height: 3px;
    clear: both;
    color: #7b291b;
}

#tools,
#reflinks {
    width: 49.5%;
    margin: 0;
    padding: 0;
}

#tools {
    float: left;
}

#reflinks {
    float: right;
}

.buttimg_newtopic {
    display: inline-block;
    width: 0.875rem;
    height: 1.0625rem;
    background-image: url("buttonsheet.e69353287ef1.svg#pagestack");
}
.buttimg_newpost {
    display: inline-block;
    width: 0.75rem;
    height: 0.9375rem;
    background-image: url("buttonsheet.e69353287ef1.svg#singlepage");
}
.buttimg_delete {
    display: inline-block;
    width: 0.5625rem;
    height: 0.4375rem;
    background: url("buttonsheet.e69353287ef1.svg#deletex");
}
.buttimg_move {
    display: inline-block;
    width: 0.5625rem;
    height: 0.4375rem;
    background: url("buttonsheet.e69353287ef1.svg#move");
}
.buttimg_split {
    display: inline-block;
    width: 0.6875rem;
    height: 0.75rem;
    background: url("buttonsheet.e69353287ef1.svg#split");
}
.buttimg_lock {
    display: inline-block;
    width: 0.4375rem;
    height: 0.625rem;
    background: url("buttonsheet.e69353287ef1.svg#lock");
}
.buttimg_post {
    display: inline-block;
    width: 7px;
    height: 9px;
    background: url("buttonsheet.e69353287ef1.svg#stalepage");
}
.buttimg_postnew {
    display: inline-block;
    width: 0.4275rem;
    height: 0.5625rem;
    background: url("buttonsheet.e69353287ef1.svg#freshpage");
}
.buttimg_ipaddr {
    display: inline-block;
    width: 0.5625rem;
    height: 0.5625rem;
    background: url("buttonsheet.e69353287ef1.svg#globe");
}

.tinyreplace {
    display: none;
}

@media all and (max-width: 60em) {
    #sax-sidebar > * {
        display: none;
    }

    #sax-sidebar {
        height: auto;
    }

    #sax-sidebar:before {
        content: "SAX has been disabled due to small screen size. Use the above link to use the standalone chat.";
    }

    #tools,
    #reflinks,
    #cemetech-at-a-glance .mainbodyinner,
    #page_content_parent,
    #user_tools_parent {
        float: none;
        position: static;
        width: auto;
        margin-left: auto;
        margin-right: auto;
        /*padding-left: 0.25rem;
		padding-right: 0.25rem;*/
    }

    #user_tools_parent .sideheadtop,
    #user_tools_parent .sideheadmiddle,
    #user_tools_parent .sideheadbottom {
        width: auto;
    }

    #user_tools_parent .sideheadmiddle {
        height: auto;
    }

    .usertoolslist,
    .usertoolslist li {
        display: inline;
    }

    .usertoolslist li:before {
        padding-left: 0.5em;
        content: "\2022";
    }

    #login_button {
        display: inline;
    }

    .topictail > div {
        display: block;
        width: auto;
    }

    .post-bottom-element {
        width: auto;
    }

    .post-action {
        border-left: none;
        height: auto;
        max-width: 100%;
    }

    .glance_boxes,
    .topictools_boxes {
        flex-direction: column;
    }
    .glance_boxes > div,
    .topictools_boxes > div {
        flex: 1 1 auto;
    }
    .topictools_rightbox {
        text-align: left;
    }

    .indextralow {
        display: none;
    }
    .post-footer {
        flex-direction: column;
    }
}

@media all and (max-width: 45em) {
    .indextramed {
        display: none;
    }
}
@media all and (max-width: 30em) {
    .indextrahigh {
        display: none;
    }

    .tinyreplace {
        display: inline;
    }
}
.ad-notice {
    font-size: 0.5rem;
    color: #aaa;
}

.boldtext {
    font-weight: 700;
}

/* A list where elements are inline */
.inline-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.inline-list > li {
    display: inline;
}

/* A list where elements are inline and comma-separated. */
.commasep-list {
    display: inline;
    list-style: none;
    padding: 0;
}
.commasep-list li {
    display: inline;
}
.commasep-list li::after {
    content: ", ";
}
.commasep-list li:last-child::after {
    content: ".";
}

/* Clear floats after this element.
 *
 * Cargo-culted from https://css-tricks.com/snippets/css/clear-fix/
 */
.postclear:after {
    content: "";
    display: table;
    clear: both;
}

/* cemetech7 pagination template tag, template cemetech7/pagination.html */
.c7-pagination {
    display: flex;
    flex-flow: column;
    align-items: center;
    padding: 0.25em 0;
}
.c7-pagination ul {
    list-style: none;
    padding-left: 0;
    justify-content: center;
    align-items: center;
}

.c7-pagination__buttons {
    display: grid;
    grid-template: "first previous pages next last";
    border: 1px solid #888;
    border-radius: 0.375em;
}
.c7-pagination__first {
    grid-area: first;
}
.c7-pagination__previous {
    grid-area: previous;
}
.c7-pagination__next {
    grid-area: next;
}
.c7-pagination__last {
    grid-area: last;
}
/* The list of pages is a ul nested in a li, because we want to put the
 * entire list in its own grid area. Add borders to either side of elements,
 * but don't double them up. */
.c7-pagination__pages {
    grid-area: pages;
    padding: 0;
}
.c7-pagination__pages > ul {
    display: flex;
    flex-wrap: wrap;
}
.c7-pagination__pages > ul > li {
    border-left: 1px solid #888;
}
.c7-pagination__pages > ul > li:last-child {
    border-right: 1px solid #888;
}
.c7-pagination__pages > ul > li.active > * {
    color: black;
}
.c7-pagination__pages [data-pagination-select][data-pagination-select-enabled] {
    cursor: pointer;
    color: #a00;
}
/* Pad out the text content (usually links) rather than leaving dead
 * space in the visual block. */
.c7-pagination__buttons li {
    padding: 0;
}
.c7-pagination__buttons li > span,
.c7-pagination__buttons li > a {
    display: inline-block;
    padding: 0.375rem 0.75rem;
}
/* Visually highlight all of a link's box when focused. */
.c7-pagination__buttons a:hover,
.c7-pagination__buttons a:focus {
    background-color: #eee;
    transition: background-color 1s;
}
@media all and (max-width: 35em) {
    /* On narrow screens, move the list of pages to below the next/previous
     * buttons. Remove the outside borders so they don't double up with
     * the container's border.
     *
     * These rules must follow the "default" ones so they take precedence. */
    .c7-pagination__buttons {
        grid-template:
            "first previous next last"
            "pages pages pages pages";
    }
    .c7-pagination__pages {
        border-top: 1px solid #888;
    }
    .c7-pagination__pages > ul > li:first-child {
        border-left: none;
    }
    .c7-pagination__pages > ul > li:last-child {
        border-right: none;
    }
}

/* For toggletext template tag and associated template, toggletext.html */
.toggletext-container {
    text-decoration: dotted underline;
    cursor: pointer;
}
.toggletext-container:hover,
.toggletext-container:active {
    text-decoration: dashed underline;
}
.toggletext-container > .toggletext-toggle:checked ~ .toggletext-primary,
.toggletext-container
    > .toggletext-toggle:not(:checked)
    ~ .toggletext-secondary {
    display: none;
}
