/*
 * Steel Raven for phpBB 3.3.17
 * v1.1.17 - child style of prosilver.
 * Direction: an operational field board for a working hardball team.
 */
@import url("../../prosilver/theme/stylesheet.css?v=3.3.17");

@font-face {
    font-family: "Steel Raven Display";
    src: url("./fonts/roboto-condensed-cyrillic.woff2") format("woff2");
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: "Steel Raven Display";
    src: url("./fonts/roboto-condensed-latin.woff2") format("woff2");
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --sr-bg: #070a0b;
    --sr-bg-deep: #040607;
    --sr-panel: #101514;
    --sr-panel-raised: #171d1b;
    --sr-panel-alt: #131918;
    --sr-line: #39423d;
    --sr-line-soft: rgba(196, 203, 190, .16);
    --sr-text: #e7eceb;
    --sr-muted: #b1b9ae;
    --sr-dim: #8e988d;
    --sr-accent: #f26a21;
    --sr-accent-dark: #b63d16;
    --sr-accent-ink: #101315;
    --sr-danger: #ff8e72;
    --sr-heading: "Segoe UI Semibold", "Arial Narrow", Arial, sans-serif;
    --sr-body: "Segoe UI", Arial, Helvetica, sans-serif;
}

html,
body {
    background: var(--sr-bg-deep);
    color: var(--sr-text);
}

body {
    font-family: var(--sr-body);
    background:
        radial-gradient(circle at 50% -18rem, rgba(111, 124, 101, .2), transparent 42rem),
        linear-gradient(rgba(4, 7, 7, .66), rgba(4, 7, 7, .66)),
        url("./images/steel-raven-grid.svg"),
        linear-gradient(180deg, #080c0b 0, var(--sr-bg) 34rem, var(--sr-bg-deep) 100%);
    background-size: auto, auto, 128px 128px, auto;
}

a { color: #dce5e7; }
a:hover { color: #fff; text-decoration-thickness: 1px; }

.wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
    background: transparent;
    border: 0;
    box-shadow: 0 0 72px rgba(0, 0, 0, .32);
}

.page-body { margin: 0; }

/* Original local artwork forms a two-tier brand bar and operational hero. */
.headerbar {
    position: relative;
    min-height: 250px;
    margin: 0 -24px 16px;
    padding: 0 36px;
    overflow: hidden;
    border: 0;
    border-bottom: 3px solid var(--sr-accent);
    border-radius: 0;
    background-color: #090d0c;
    background-image:
        linear-gradient(180deg, rgba(4, 8, 8, .98) 0 88px, rgba(4, 8, 8, .2) 88px 100%),
        linear-gradient(90deg, rgba(5, 9, 8, .92), rgba(5, 9, 8, .3) 58%, rgba(5, 9, 8, .62)),
        url("./images/steel-raven-hero.svg"),
        url("./images/steel-raven-grid.svg");
    background-position: center, center, center 46%, center;
    background-size: auto, auto, cover, 128px 128px;
    box-shadow: inset 0 -72px 80px rgba(0, 0, 0, .36);
}

.headerbar::before {
    content: "FORUM";
    position: absolute;
    left: 36px;
    bottom: 37px;
    color: #f4f6ef;
    font: 900 clamp(36px, 6vw, 70px)/.86 var(--sr-heading);
    letter-spacing: .07em;
    text-shadow: 0 4px 20px #000;
    pointer-events: none;
}

.headerbar::after {
    content: "COMMUNICATION  /  EXPERIENCE  /  DEVELOPMENT";
    position: absolute;
    left: 40px;
    bottom: 14px;
    color: #c8cfc1;
    font: 700 10px/1 var(--sr-heading);
    letter-spacing: .18em;
    text-shadow: 0 2px 8px #000;
    pointer-events: none;
}

#site-description {
    position: relative;
    z-index: 2;
    padding: 19px 0 0 102px;
    text-align: left;
}

#site-description h1 {
    display: block;
    max-width: 820px;
    margin: 0;
    color: #f5f7f6;
    font: 850 0/1 var(--sr-heading);
    letter-spacing: .055em;
    text-transform: uppercase;
    text-shadow: 0 3px 16px #000;
}

#site-description h1::before {
    content: "STEEL RAVEN";
    font-size: clamp(27px, 3.1vw, 38px);
}

#site-description p {
    display: block;
    margin: 5px 0 0;
    color: var(--sr-muted);
    font: 650 10px/1.3 var(--sr-heading);
    letter-spacing: .16em;
    text-transform: uppercase;
}

.logo {
    position: absolute;
    display: block !important;
    top: 15px;
    left: 28px;
    width: 62px;
    height: 64px;
    margin: 0;
    padding: 0;
    float: none;
}

.site_logo {
    display: block;
    width: 62px;
    height: 64px;
    background: url("./images/logo-sr.svg") center / contain no-repeat !important;
    filter: drop-shadow(0 2px 5px #000);
}

.site_logo::before,
.site_logo::after { display: none; }

/* Navigation, breadcrumbs and menus. */
.navbar {
    color: var(--sr-muted);
    border: 1px solid #343b37;
    border-radius: 0;
    background:
        linear-gradient(90deg, rgba(242, 106, 33, .06), transparent 32%),
        #0d1211;
}

.headerbar + .navbar { margin-top: -16px; border-width: 0 0 1px; }
.navbar a { color: #d5dddf; }
.navbar a:hover,
.navbar .icon { color: #fff; }
ul.linklist > li { font-size: 12px; }
.breadcrumbs .crumb a { color: #b6c0c3; }
.breadcrumbs .crumb::before { color: #788176; }

.dropdown .dropdown-contents,
.notification_list,
.jumpbox-cat-link,
.jumpbox-sub-link,
.jumpbox-forum-link {
    color: var(--sr-text);
    border-color: #3a494e;
    background: var(--sr-panel);
}

.dropdown .pointer-inner { border-bottom-color: var(--sr-panel); }
.dropdown-extended .header,
.dropdown-extended .footer { border-color: var(--sr-line); background: var(--sr-panel-raised); }
.dropdown-extended ul li:hover,
.dropdown-contents a:hover,
.dropdown-contents a:focus { background: #182326; color: #fff; }

/* Forum and topic indexes. */
.forabg,
.forumbg {
    margin: 14px 0;
    padding: 0;
    border: 1px solid var(--sr-line);
    border-radius: 0;
    background: rgba(12, 17, 15, .96);
    box-shadow: 0 8px 30px rgba(0, 0, 0, .14);
}

.forabg .inner,
.forumbg .inner { margin: 0; padding: 0; }

ul.topiclist.forums,
ul.topiclist.topics { background: transparent; }

ul.topiclist li.header {
    padding: 10px 16px 10px 20px;
    border-left: 5px solid var(--sr-accent);
    background:
        linear-gradient(135deg, transparent 0 14px, rgba(242, 106, 33, .09) 14px 15px, transparent 15px),
        linear-gradient(90deg, #202720, #0d1211 72%);
}

ul.topiclist li.header dt,
ul.topiclist li.header dd {
    color: #cbd4d6;
    font: 700 11px/1.3 var(--sr-heading);
    letter-spacing: .11em;
    text-transform: uppercase;
}

ul.topiclist li.header dt { color: #f4f6f6; font-size: 15px; letter-spacing: .045em; }

ul.topiclist li.row {
    min-height: 60px;
    border-top: 1px solid var(--sr-line-soft);
    border-bottom: 0;
    background: rgba(12, 17, 15, .76);
}

ul.topiclist li.row:nth-child(even) { background: rgba(17, 23, 20, .84); }
ul.topiclist li.row:hover { background: rgba(28, 35, 29, .96); }
ul.topiclist li.row dl { min-height: 60px; }
ul.topiclist li.row dt { padding-top: 9px; padding-bottom: 9px; }
ul.topiclist li.row dt,
ul.topiclist li.row dd { color: var(--sr-muted); }
ul.topiclist li.row dd { border-left-color: var(--sr-line-soft); }

.list-inner { color: var(--sr-muted); }
.list-inner > a,
.topictitle,
.forumtitle { color: #f1f4f3 !important; font-weight: 700; }
.forumtitle { font-size: 14px; }
.topictitle { font-size: 13px; }
.forumtitle:hover,
.topictitle:hover { color: #fff !important; text-decoration: underline; }
.row-item .list-inner { padding-left: 44px; }
.row-item::before { color: #d1d7cc; font-size: 20px; }

.row-item[class*="_unread"]::before { color: var(--sr-accent) !important; }
.row-item[class*="_unread"] .forumtitle::after,
.row-item[class*="_unread"] .topictitle::after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-left: 8px;
    border: 2px solid var(--sr-accent);
    border-radius: 50%;
    vertical-align: middle;
}

.topiclist li.sticky { box-shadow: inset 3px 0 #6f7f84; }
.topiclist li.sticky .topictitle { text-decoration: underline dotted #78878b; text-underline-offset: 3px; }
.row-item[class*="_locked"]::before { text-shadow: 0 0 8px rgba(231, 236, 235, .25); }

.topiclist.forums .subforum {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin: 3px 10px 0 0;
    overflow-wrap: anywhere;
}

.topiclist.forums .subforum .icon { flex: 0 0 auto; }
ul.topiclist.forums .row-item { background-position: 10px 14px; }
.lastpost a,
.lastsubject { overflow-wrap: anywhere; }

/* Panels, forms and controls. */
.panel,
.cp-main .panel,
.panel-container {
    color: var(--sr-text);
    border-color: var(--sr-line);
    background: var(--sr-panel);
}

.panel { border: 1px solid var(--sr-line); border-radius: 2px; }

input.inputbox,
textarea.inputbox,
select,
.search-box .inputbox {
    color: var(--sr-text);
    border-color: #46565b;
    border-radius: 2px;
    background: #080c0e;
}

fieldset.quick-login input.inputbox,
.panel fieldset.quick-login input.inputbox {
    color: var(--sr-text) !important;
    -webkit-text-fill-color: var(--sr-text);
    border-color: #46565b !important;
    background: #080c0e !important;
}

fieldset.quick-login input.button2,
fieldset.quick-login input.button2:hover,
fieldset.quick-login input.button2:focus {
    color: #fff !important;
    -webkit-text-fill-color: #fff;
    border-color: var(--sr-accent) !important;
    background: #18211f !important;
}

input.inputbox:focus,
textarea.inputbox:focus,
select:focus,
.search-box .inputbox:focus {
    border-color: var(--sr-accent);
    box-shadow: 0 0 0 2px rgba(240, 90, 50, .2);
}

.button,
.button1,
.button2 {
    color: #eef2f1;
    border-color: #4a5a5f;
    border-radius: 2px;
    background: #121a1d;
    box-shadow: none;
}

.button:hover,
.button2:hover,
.button:focus,
.button2:focus { color: #fff; border-color: var(--sr-accent); background: #1a2529; }

.button1,
input.button1 {
    color: var(--sr-accent-ink);
    border-color: var(--sr-accent);
    background: var(--sr-accent);
    font-weight: 700;
}

.button1:hover,
input.button1:hover,
.button1:focus,
input.button1:focus { color: #fff; border-color: #c43d22; background: var(--sr-accent-dark); }

.button.disabled,
.button:disabled,
input:disabled,
select:disabled,
textarea:disabled { opacity: .58; cursor: not-allowed; filter: saturate(.45); }

/* Topic reading. */
h2,
h2 a,
h3,
h3 a { color: #f2f5f4; }
h2.topic-title { font: 750 26px/1.18 var(--sr-heading); text-transform: none; }

.post {
    margin: 12px 0;
    padding: 14px;
    color: var(--sr-text);
    border: 1px solid var(--sr-line);
    border-radius: 0;
    background: var(--sr-panel);
}

.post.bg2 { background: var(--sr-panel-alt); }
.post.unreadpost { box-shadow: inset 3px 0 var(--sr-accent); }
.postprofile { color: #9eabad; border-color: var(--sr-line-soft); }
.postprofile strong,
.postprofile a { color: #f0f3f2; }
.postbody { color: #dbe2e1; }
.postbody .content {
    max-width: 78ch;
    color: #dbe2e1;
    font-size: 15px;
    line-height: 1.62;
    overflow-wrap: anywhere;
}

/* Repair only known dark colors inherited from the legacy migration. */
.postbody .content [style*="color:#000000" i],
.postbody .content [style*="color: #000000" i],
.postbody .content [style*="color:#282828" i],
.postbody .content [style*="color: #282828" i] { color: inherit !important; }

/* Preserve meaning while lifting known legacy colors above AA contrast. */
.username-coloured[style*="#AA0000" i],
a[style*="color:#AA0000" i],
a[style*="color: #AA0000" i] { color: #ff8175 !important; }
.postbody .content [style*="color:blue" i],
.postbody .content [style*="color: blue" i],
.postbody .content [style*="color:#0000FF" i],
.postbody .content [style*="color: #0000FF" i] { color: #82adff !important; }

.postbody h3 { font-family: var(--sr-heading); }
.author { color: var(--sr-muted); }
.signature { color: #929fa3; border-top-color: var(--sr-line-soft); }

blockquote {
    margin-left: 0;
    color: #c0cacb;
    border: 0;
    border-left: 3px solid #536268;
    background: #090e10;
}

blockquote blockquote { margin-left: 10px; background: #101719; }
blockquote blockquote blockquote { margin-left: 6px; }
blockquote cite { color: #e2e7e6; }
.codebox { border: 1px solid #39484d; background: #070b0d; }
.codebox code { color: #cbd4d5; }

.postimage,
.attachbox img { max-width: 100%; height: auto; }
.attachbox {
    max-width: 100%;
    width: auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: 8px;
    float: none;
    clear: both;
    color: var(--sr-muted);
    border-color: var(--sr-line);
    background: #090e10;
    overflow: hidden;
}
.attachbox > dt { grid-column: 1 / -1; }
.attachbox > dd {
    min-width: 0;
    width: auto;
    margin: 0;
    padding: 0;
    float: none;
    clear: none;
    box-sizing: border-box;
    border: 1px solid var(--sr-line-soft);
    background: #111614;
}
.attachbox dl.thumbnail,
.attachbox dl.thumbnail dt { margin: 0; }
.attachbox dl.thumbnail img { display: block; margin: 0 auto; }
.attachbox dd,
.postbody .content a,
.postlink { overflow-wrap: anywhere; }
.postbody a > .postimage:focus { outline: 2px solid #fff; outline-offset: 3px; }

.polls dl { color: var(--sr-muted); border-color: var(--sr-line-soft); }
.pollbar1,
.pollbar2,
.pollbar3,
.pollbar4,
.pollbar5 { border-bottom-color: var(--sr-accent-dark); background: var(--sr-accent); }

/* UCP, tables and member lists. */
table.table1 thead th { color: #dce3e3; border-bottom-color: #425156; }
table.table1 tbody tr { background: var(--sr-panel); }
table.table1 tbody tr:nth-child(even) { background: var(--sr-panel-alt); }
table.table1 tbody tr:hover { background: #182326; }
table.table1 td { color: #b4bec0; border-top-color: var(--sr-line-soft); }

.tabs .tab > a,
.minitabs .tab > a { color: #cbd3d4; background: #121a1d; }
.tabs .activetab > a,
.tabs .tab > a:hover { color: #fff; border-bottom-color: var(--sr-accent); background: #1a2529; }

#cp-menu .navigation { border: 1px solid var(--sr-line); background: var(--sr-panel); }
#cp-menu .navigation a { color: #cbd4d5; border-color: var(--sr-line-soft); background: transparent; }
#cp-menu .navigation a:hover,
#cp-menu .navigation a:focus { color: #fff; background: #182326; }
#cp-menu #active-subsection a {
    color: #fff;
    border-left: 3px solid var(--sr-accent);
    background: var(--sr-panel-raised);
}
.cp-main h2,
.cp-main h3 { color: #f0f3f2; }
dl.details dt { color: var(--sr-muted); }
dl.details dd { color: var(--sr-text); }

/* UCP forms need contextual overrides for prosilver's light-theme rules. */
.section-ucp { color-scheme: dark; }
.section-ucp .cp-main { font-size: 14px; line-height: 1.45; }
.section-ucp .cp-main label,
.section-ucp .cp-main dd label,
.section-ucp .cp-main fieldset dl:hover dt label,
.section-ucp .cp-main fieldset dl > dt,
.section-ucp dl.details dt,
.section-ucp dl.details dd { color: var(--sr-text); }

.section-ucp .cp-main fieldset dt > span,
.section-ucp .cp-main .help,
.section-ucp .cp-main .bbcode-status { color: var(--sr-muted); }

.section-ucp .cp-main input.inputbox,
.section-ucp .cp-main textarea.inputbox,
.section-ucp .cp-main select,
.section-ucp #message-box textarea,
.section-ucp #signature {
    box-sizing: border-box;
    max-width: 100%;
    color: var(--sr-text) !important;
    -webkit-text-fill-color: var(--sr-text);
    border-color: #46565b;
    background: #080c0e !important;
}

.section-ucp .cp-main .inputbox:hover,
.section-ucp .cp-main select:hover { border-color: #65777c; }
.section-ucp .cp-main .inputbox::placeholder { color: var(--sr-dim); opacity: 1; }

.section-ucp input[type="checkbox"],
.section-ucp input[type="radio"] {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0 .4rem 0 0;
    vertical-align: -.2rem;
    accent-color: var(--sr-accent);
}

.section-ucp .format-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

.section-ucp .format-buttons .button { margin: 0; }
.section-ucp .format-buttons .button .icon { color: var(--sr-text); }
.section-ucp .format-buttons .button:hover .icon,
.section-ucp .format-buttons .button:focus .icon { color: #fff; }
.section-ucp .format-buttons select.bbcode-size { min-height: 34px; }
.section-ucp .message-box,
.section-ucp .message-box textarea { max-width: 100%; }
.section-ucp .smiley-box { color: var(--sr-muted); }
.section-ucp .smiley-box > a {
    display: inline-flex;
    min-width: 28px;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
}
.section-ucp .smiley-box > a:hover,
.section-ucp .smiley-box > a:focus { background: var(--sr-panel-raised); }

.section-ucp .panel-container table.table1 thead th,
.section-ucp .panel-container .panel li.header dt,
.section-ucp .panel-container .panel li.header dd {
    color: #dce3e3;
    border-color: #425156;
}
.section-ucp .panel-container table.table1 tbody th { color: var(--sr-text); }
.section-ucp ul.cplist { border-top-color: var(--sr-line); }
.section-ucp ul.cplist li.row strong { color: inherit; }
.section-ucp ul.cplist li.row .list-inner,
.section-ucp ul.cplist li.row dd { color: var(--sr-muted); }
.section-ucp ul.cplist .attachment-filename { max-width: 100%; overflow-wrap: anywhere; }

.section-ucp input.button1,
.section-ucp input.button2 {
    min-height: 36px;
    padding: 5px 11px;
    box-shadow: none;
    filter: none;
}
.section-ucp input.button2 {
    color: #eef2f1;
    border-color: #4a5a5f;
    background: #121a1d;
}
.section-ucp input.button2:hover,
.section-ucp input.button2:focus {
    color: #fff;
    border-color: var(--sr-accent);
    background: #1a2529;
    filter: none;
}

.section-ucp input.inputbox:focus-visible,
.section-ucp textarea.inputbox:focus-visible,
.section-ucp select:focus-visible,
.section-ucp input.button1:focus-visible,
.section-ucp input.button2:focus-visible,
.section-ucp .format-buttons .button:focus-visible,
.section-ucp input[type="checkbox"]:focus-visible,
.section-ucp input[type="radio"]:focus-visible,
.section-ucp .smiley-box > a:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px var(--sr-accent);
}

.section-ucp .cp-main p a,
.section-memberlist #viewprofile dl.details a,
.section-memberlist #viewprofile .signature a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

@media (min-width: 701px) {
    .section-memberlist #viewprofile .column1 { width: 34%; }
    .section-memberlist #viewprofile .column2 { width: 64%; }
}

/* Pagination, status blocks and dialogs. */
.pagination li a,
.pagination li span { color: #ced7d8; border-color: #3b4a4f; background: #0e1517; }
.pagination li a:hover,
.pagination li a:focus,
.pagination li.active span { color: var(--sr-accent-ink); border-color: var(--sr-accent); background: var(--sr-accent); }

.badge { color: var(--sr-accent-ink); background: var(--sr-accent); }
.notice,
.rules { color: #eadbd7; border-left: 3px solid var(--sr-accent); background: #191414; }
.error,
.error-container { color: var(--sr-danger); }
.stat-block { color: #9fabad; }
.stat-block h3 { color: #dbe2e2; font: 700 13px/1.3 var(--sr-heading); letter-spacing: .07em; text-transform: uppercase; }

.phpbb_alert,
#phpbb_confirm { color: var(--sr-text); border-color: var(--sr-line); background: var(--sr-panel); }
.phpbb_alert .alert_close { color: #fff; }

.page-footer,
.copyright { color: #89969a; }
.page-footer a,
.copyright a { color: #b1bbbd; }

/* Keyboard focus remains visible on both dark and orange controls. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px var(--sr-accent);
}

@media (max-width: 900px) {
    .wrap { padding: 0 14px; }
    .headerbar { min-height: 226px; margin-right: -14px; margin-left: -14px; padding: 0 20px; }
    #site-description { padding-top: 20px; padding-left: 88px; }
    .logo { top: 15px; left: 18px; width: 54px; height: 58px; }
    .site_logo { width: 54px; height: 58px; }
    .headerbar::before { left: 24px; }
    .headerbar::after { left: 27px; }
}

@media (max-width: 700px) {
    .wrap { padding: 0 10px; }
    .headerbar {
        min-height: 126px;
        margin-right: -10px;
        margin-left: -10px;
        background-image:
            linear-gradient(90deg, rgba(4, 8, 8, .96), rgba(4, 8, 8, .5)),
            url("./images/steel-raven-hero.svg"),
            url("./images/steel-raven-grid.svg");
        background-position: center, 62% center, center;
        background-size: auto, cover, 128px 128px;
    }
    #site-description { padding-top: 24px; padding-left: 68px; padding-right: 4px; }
    #site-description h1::before { font-size: clamp(23px, 6.5vw, 30px); }
    #site-description p { max-width: 30ch; margin-top: 7px; font-size: 9px; line-height: 1.25; }
    .logo { top: 22px; left: 12px; width: 44px; height: 48px; }
    .site_logo { width: 44px; height: 48px; }
    .headerbar::before,
    .headerbar::after { display: none; }

    ul.topiclist li.header dd { display: none; }
    ul.topiclist li.row { min-height: 66px; }
    .row-item .list-inner { padding-left: 38px; }

    .action-bar { display: flex; flex-wrap: wrap; gap: 8px; }
    .action-bar .search-box { order: 3; width: 100%; margin: 0; }
    .action-bar .search-box .inputbox { min-width: 0; width: calc(100% - 44px); }
    .action-bar .pagination { max-width: 100%; margin-left: auto; overflow-wrap: anywhere; }

    .post { padding: 10px; }
    .postprofile { border-bottom-color: var(--sr-line-soft); }
    .postbody .content { max-width: none; }
    blockquote { margin-right: 0; padding-right: 8px; padding-left: 10px; }

    #cp-menu,
    #cp-main { width: 100%; margin: 0 0 10px; }
    dl.details dt,
    dl.details dd { width: 100%; margin-left: 0; }

    .section-ucp .cp-main .panel { margin-right: 0; margin-left: 0; }
    .section-ucp .cp-main fieldset,
    .section-ucp .cp-main fieldset dl { min-width: 0; }
    .section-ucp .cp-main fieldset dt span { white-space: normal; overflow-wrap: anywhere; }
    .section-ucp .cp-main fieldset dt,
    .section-ucp .cp-main fieldset dd { float: none; width: auto; margin-left: 0; }
    .section-ucp .cp-main dd label {
        display: inline-flex;
        min-height: 32px;
        margin: 3px 12px 3px 0;
        align-items: center;
        white-space: normal;
    }
    .section-ucp .cp-main input.inputbox,
    .section-ucp .cp-main textarea.inputbox,
    .section-ucp .cp-main select,
    .section-ucp .cp-main select.autowidth,
    .section-ucp .cp-main select.timezone { max-width: 100%; }
    .section-ucp .submit-buttons {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }
    .section-ucp .submit-buttons input.button1,
    .section-ucp .submit-buttons input.button2 { min-height: 44px; margin: 0; }
    .section-ucp .right-box {
        float: none;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
    }
    .section-ucp fieldset.display-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        justify-content: flex-end;
        white-space: normal;
    }
    .section-ucp .format-buttons select.bbcode-size { flex: 1 1 160px; }
    .section-ucp .smiley-box { margin-bottom: 8px; }
    .section-memberlist #viewprofile .column1,
    .section-memberlist #viewprofile .column2 { float: none; width: 100%; }

    #nav-main > li > a,
    .header-profile > a,
    .dropdown-contents a,
    .button,
    .post-buttons .button,
    .pagination li a,
    .pagination li span,
    .back2top a,
    .tabs .tab > a,
    .navigation a {
        display: inline-flex;
        min-width: 44px;
        min-height: 44px;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
    }
}

/* Keep forum and topic pages in the measured Steel Raven shell. */
@media (min-width: 901px) {
    body:is(.section-viewforum, .section-viewtopic) { padding-top: 0; }
    body:is(.section-viewforum, .section-viewtopic) .wrap {
        width: 100%;
        max-width: 1122px;
        padding-right: 42px;
        padding-left: 42px;
        box-sizing: border-box;
    }
    body:is(.section-viewforum, .section-viewtopic) .headerbar {
        min-height: 228px;
        height: 228px;
        margin: 0 -42px;
        padding-right: 42px;
        padding-left: 42px;
        box-sizing: border-box;
        border-bottom: 0;
        background-image:
            linear-gradient(180deg, #05090a 0 82px, transparent 82px),
            url("./images/reference/hero-srf.png");
        background-position: center, center bottom;
        background-size: auto, 100% 146px;
        background-repeat: no-repeat;
    }
    body:is(.section-viewforum, .section-viewtopic) .headerbar > .inner { position: relative; height: 100%; }
    body:is(.section-viewforum, .section-viewtopic) .headerbar > .inner::before {
        content: "";
        position: absolute;
        z-index: 4;
        top: 18px;
        left: -2px;
        width: 296px;
        height: 57px;
        background: url("./images/sr-header-brand.png") center / 296px 57px no-repeat;
    }
    body:is(.section-viewforum, .section-viewtopic) .headerbar::before,
    body:is(.section-viewforum, .section-viewtopic) .headerbar::after,
    body:is(.section-viewforum, .section-viewtopic) .sr-hero-note,
    body:is(.section-viewforum, .section-viewtopic) .search-header { display: none; }
    body:is(.section-viewforum, .section-viewtopic) .logo,
    body:is(.section-viewforum, .section-viewtopic) #site-description { visibility: hidden; }
    body:is(.section-viewforum, .section-viewtopic) .sr-primary-nav { right: 300px; height: 82px; }
    body:is(.section-viewforum, .section-viewtopic) .sr-header-account {
        position: absolute;
        z-index: 5;
        top: 0;
        right: 42px;
        display: flex;
        height: 82px;
        align-items: center;
        gap: 18px;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-header-account a {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: var(--sr-text);
        text-decoration: none;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-header-user img {
        width: 42px;
        height: 42px;
        object-fit: cover;
        border-radius: 50%;
    }
    body:is(.section-viewforum, .section-viewtopic) .headerbar + .navbar {
        min-height: 100px;
        height: 100px;
        margin: 0 -42px;
        padding: 0 42px;
        box-sizing: border-box;
    }
    body:is(.section-viewforum, .section-viewtopic) .headerbar + .navbar > .inner { min-height: 100px; }
    body:is(.section-viewforum, .section-viewtopic) #nav-main {
        height: 54px;
        min-height: 54px;
        visibility: hidden;
    }
    body:is(.section-viewforum, .section-viewtopic) #nav-breadcrumbs {
        display: flex;
        height: 46px;
        min-height: 46px;
        align-items: center;
        box-sizing: border-box;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility {
        position: absolute;
        z-index: 5;
        top: 228px;
        right: 42px;
        left: 42px;
        display: flex;
        height: 54px;
        align-items: center;
        gap: 25px;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility > a {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: var(--sr-muted);
        font-size: 12px;
        text-decoration: none;
        white-space: nowrap;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility form {
        display: grid;
        flex: 1 1 auto;
        max-width: 342px;
        height: 34px;
        margin-left: auto;
        grid-template-columns: minmax(0, 1fr) 40px;
        border: 1px solid var(--sr-line);
        border-radius: 3px;
        background: rgba(12, 22, 25, .78);
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility input,
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility button {
        min-width: 0;
        border: 0;
        color: var(--sr-text);
        background: transparent;
    }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility input { padding: 0 12px; }
    body:is(.section-viewforum, .section-viewtopic) .sr-index-utility button { border-left: 1px solid var(--sr-line); }
    body:is(.section-viewforum, .section-viewtopic) .page-body { padding-top: 31px; }
}

@media (min-width: 701px) {
    .section-viewtopic .pagination > ul > li > a.button,
    .section-viewtopic .pagination > ul > li.active > span {
        display: inline-flex;
        min-width: 36px;
        min-height: 36px;
        padding: 7px 12px;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        font-family: var(--sr-body);
        font-size: 13px;
        font-weight: 600;
        line-height: 1;
        vertical-align: middle;
    }
    .section-viewtopic .pagination > ul > li.ellipsis > span {
        min-width: 0;
        min-height: 0;
        padding: 0 4px;
        border: 0;
        background: transparent;
    }
}

/* v1.1.0-dev.1: measured index geometry and one forum-row grid. */
@media (min-width: 901px) {
    body.section-index .wrap {
        width: 100%;
        max-width: 1122px;
        padding-right: 42px;
        padding-left: 42px;
        box-sizing: border-box;
    }

    .section-index .headerbar {
        min-height: 228px;
        height: 228px;
        margin-right: -42px;
        margin-left: -42px;
        padding-right: 42px;
        padding-left: 42px;
        box-sizing: border-box;
        border-bottom: 0;
        background-image:
            linear-gradient(180deg, #05090a 0 82px, transparent 82px),
            url("./images/reference/hero-srf.png");
        background-position: center, center bottom;
        background-size: auto, 100% 146px;
        background-repeat: no-repeat;
    }

    .section-index .logo { top: 9px; left: 42px; width: 64px; height: 64px; }
    .section-index .site_logo { width: 64px; height: 64px; }
    .section-index #site-description { padding: 17px 0 0 78px; }
    .section-index #site-description h1::before { font-size: 31px; }
    .section-index .headerbar::before,
    .section-index .headerbar::after,
    .section-index .sr-hero-note { display: none; }

    .section-index .sr-primary-nav {
        right: 236px;
        height: 82px;
    }

    .section-index .headerbar + .navbar {
        min-height: 100px;
        height: 100px;
        margin: 0 -42px;
        padding: 0 42px;
        box-sizing: border-box;
    }

    .section-index .headerbar + .navbar > .inner { min-height: 100px; }
    .section-index #nav-main {
        display: flex;
        height: 54px;
        min-height: 54px;
        align-items: center;
        box-sizing: border-box;
    }
    .section-index #nav-breadcrumbs {
        display: flex;
        height: 46px;
        min-height: 46px;
        align-items: center;
        box-sizing: border-box;
    }
}

/* The pseudo-element is the icon grid item; dt is only the text grid item. */
.section-index ul.topiclist dl.row-item {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) 92px 104px minmax(300px, 32%);
    align-items: center;
    min-height: 0;
    margin: 0;
}

.section-index ul.topiclist dl.row-item::before {
    position: static;
    grid-column: 1;
    grid-row: 1;
    place-self: center;
    margin: 0;
    transform: none;
}

.section-index ul.topiclist dl.row-item > dt,
.section-index ul.topiclist dl.row-item > dd {
    float: none;
    width: auto;
    min-width: 0;
    min-height: 0;
    height: auto;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.section-index ul.topiclist dl.row-item > dt {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    align-self: stretch;
}
.section-index ul.topiclist dl.row-item > .topics { grid-column: 3; grid-row: 1; }
.section-index ul.topiclist dl.row-item > .posts { grid-column: 4; grid-row: 1; }
.section-index ul.topiclist dl.row-item > .lastpost { grid-column: 5; grid-row: 1; }

.section-index ul.topiclist dl.row-item > dt .list-inner {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0 12px 0 0;
    box-sizing: border-box;
}

.section-index ul.topiclist li.row,
.section-index ul.topiclist li.row:nth-child(even),
.section-index ul.topiclist li.row dl.row-item {
    min-height: 60px;
    height: 60px;
}

.section-index ul.topiclist li.row dl.row-item > dd {
    display: flex;
    height: 60px;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
    padding-bottom: 0;
    line-height: 1.25;
}

.section-index ul.topiclist li.row dl.row-item > .lastpost {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    justify-content: stretch;
    padding: 0 28px 0 10px;
    overflow: hidden;
}

.section-index .sr-lastpost-avatar {
    display: grid;
    width: 40px;
    height: 40px;
    padding: 0;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--sr-line);
    border-radius: 50%;
    background: var(--sr-panel-raised);
}
.section-index .sr-lastpost-avatar img { width: 100%; height: 100%; object-fit: cover; }
.section-index .sr-lastpost-copy {
    min-width: 0;
    padding: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.section-index ul.topiclist li.header,
.section-index ul.topiclist li.header dl.row-item { min-height: 40px; height: 40px; }
.section-index ul.topiclist li.header { padding: 0 14px; }
.section-index ul.topiclist li.header dl.row-item {
    grid-template-columns: 50px minmax(0, 1fr) 92px 104px minmax(300px, 32%);
}
.section-index ul.topiclist li.header dl.row-item::before { display: none !important; }
.section-index ul.topiclist li.header dl.row-item > dt { grid-column: 1 / 3; }
.section-index ul.topiclist li.header dl.row-item > dt .list-inner { padding: 0; }
.section-index ul.topiclist li.header dl.row-item > dd {
    display: flex;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-left: 0;
}
.section-index ul.topiclist li.header dl.row-item > .lastpost { justify-content: flex-start; padding-left: 18px; }

.section-index .forabg { margin: 0 0 16px; }
.section-index .sr-stats-grid {
    min-height: 120px;
    height: 120px;
    margin: 16px 0;
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, 1fr) minmax(230px, .78fr);
    box-sizing: border-box;
}
.section-index .sr-stats-grid .stat-block { min-height: 118px; padding: 16px 20px; overflow: hidden; }
.section-index .sr-totals { display: grid; grid-template-columns: repeat(3, 1fr); margin: 8px 0 0; }
.section-index .sr-totals > div { display: flex; flex-direction: column; text-align: center; border-left: 1px solid var(--sr-line-soft); }
.section-index .sr-totals > div:first-child { border-left: 0; }
.section-index .sr-totals dt { color: var(--sr-muted); font-size: 10px; text-transform: lowercase; }
.section-index .sr-totals dd { order: -1; margin: 0 0 3px; color: var(--sr-text); font-size: 17px; font-variant-numeric: tabular-nums; }
.section-index .sr-newest-content { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 10px; align-items: center; }
.section-index .sr-newest-avatar { display: grid; width: 36px; height: 36px; place-items: center; overflow: hidden; border: 1px solid var(--sr-line); border-radius: 50%; }
.section-index .sr-newest-avatar img { width: 100%; height: 100%; object-fit: cover; }
.section-index .sr-newest-content p { margin: 0; }
.section-index .page-footer .navbar { min-height: 85px; height: 85px; box-sizing: border-box; }

@media (max-width: 700px) {
    .section-index ul.topiclist dl.row-item {
        grid-template-columns: 44px minmax(0, 1fr);
    }
    .section-index ul.topiclist dl.row-item > dt { grid-column: 2; }
    .section-index ul.topiclist dl.row-item > dt .list-inner { margin: 0; padding: 0 8px 0 0; }
    .section-index ul.topiclist dl.row-item > .topics,
    .section-index ul.topiclist dl.row-item > .posts,
    .section-index ul.topiclist dl.row-item > .lastpost { display: none; }
    .section-index ul.topiclist li.row,
    .section-index ul.topiclist li.row dl.row-item { min-height: 64px; height: auto; }
    .section-index ul.topiclist li.header dl.row-item { grid-template-columns: minmax(0, 1fr); min-height: 40px; height: 40px; }
    .section-index ul.topiclist li.header dl.row-item > dt { grid-column: 1; }
    .section-index ul.topiclist li.header dl.row-item > dt .list-inner { padding: 0; }
    .section-index .sr-stats-grid { height: auto; min-height: 0; }
}

@media (max-width: 430px) {
    .headerbar { min-height: 112px; }
    #site-description { padding-top: 20px; padding-left: 60px; }
    #site-description h1::before { font-size: clamp(21px, 6.7vw, 26px); }
    #site-description p { display: none; }
    .logo { top: 18px; left: 10px; width: 38px; height: 43px; }
    .site_logo { width: 38px; height: 43px; }
    .topiclist.forums .subforum { display: flex; margin-right: 0; }
}

@media (max-width: 340px) {
    .logo { left: 7px; width: 34px; height: 38px; }
    .site_logo { width: 34px; height: 38px; }
    #site-description { padding-left: 50px; }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* v0.5 operational portal visual system. */
:root {
    --sr-bg: #071012;
    --sr-bg-deep: #040708;
    --sr-panel: #0b1214;
    --sr-panel-raised: #10191c;
    --sr-panel-alt: #0e1618;
    --sr-line: #2b383c;
    --sr-line-soft: rgba(151, 166, 170, .16);
    --sr-text: #f1f4f3;
    --sr-muted: #a4afb2;
    --sr-dim: #7e898d;
    --sr-accent: #ff4b16;
    --sr-accent-dark: #d9380a;
    --sr-accent-ink: #090c0d;
    --sr-heading: "Bahnschrift Condensed", "Arial Narrow", "Roboto Condensed", Arial, sans-serif;
    --sr-body: "Segoe UI", Arial, Helvetica, sans-serif;
}

html,
body { background: var(--sr-bg-deep); color-scheme: dark; }

body {
    background-image: none;
}

.wrap {
    max-width: 1220px;
    padding: 0 32px;
    box-shadow: none;
}

.headerbar {
    min-height: 312px;
    margin: 0 -32px 0;
    padding: 0 38px;
    border-bottom: 3px solid var(--sr-accent);
    background-image:
        linear-gradient(180deg, rgba(3, 7, 8, .98) 0 94px, rgba(3, 7, 8, .08) 94px 100%),
        linear-gradient(90deg, rgba(3, 7, 8, .94) 0, rgba(3, 7, 8, .65) 34%, rgba(3, 7, 8, .08) 69%, rgba(3, 7, 8, .7) 100%),
        linear-gradient(0deg, rgba(2, 5, 6, .62), transparent 54%),
        url("./images/steel-raven-hero.svg");
    background-position: center, center, center, 62% center;
    background-size: auto, auto, auto, cover;
    box-shadow: none;
}

.headerbar::before {
    content: "ФОРУМ";
    left: 38px;
    bottom: 42px;
    color: #f5f5ef;
    font: 900 clamp(52px, 6vw, 76px)/.86 var(--sr-heading);
    letter-spacing: .025em;
    text-shadow: 0 3px 0 #161d20, 0 10px 24px #000;
}

.headerbar::after {
    content: "СВЯЗЬ  /  ОПЫТ  /  ДВИЖЕНИЕ";
    left: 42px;
    bottom: 16px;
    color: #c7ceca;
    font: 700 11px/1 var(--sr-heading);
    letter-spacing: .17em;
}

#site-description {
    max-width: 650px;
    padding: 21px 0 0 126px;
}

#site-description h1 {
    max-width: 520px;
    font: 850 0/1 var(--sr-heading);
    letter-spacing: .045em;
}

#site-description h1::before {
    content: "STEEL RAVEN";
    font-size: clamp(31px, 3vw, 40px);
}

#site-description p {
    margin-top: 7px;
    color: #aeb8b8;
    font: 700 10px/1.25 var(--sr-heading);
    letter-spacing: .15em;
}

.logo {
    top: 12px;
    left: 32px;
    width: 80px;
    height: 76px;
}

.site_logo {
    width: 80px;
    height: 76px;
    filter: drop-shadow(0 2px 1px #000) drop-shadow(0 0 12px rgba(255, 255, 255, .08));
}

.headerbar + .navbar {
    min-height: 54px;
    margin: 0 -32px 20px;
    padding: 0 32px;
    border: 0;
    border-bottom: 1px solid var(--sr-line);
    background: rgba(5, 11, 13, .97);
}

.headerbar + .navbar > .inner { min-height: 54px; }
.headerbar + .navbar ul.linklist { min-height: 26px; }
.headerbar + .navbar a { color: #d9dedd; }
.breadcrumbs { border-top: 1px solid rgba(255, 255, 255, .035); }
.breadcrumbs .crumb a { color: #c4cccd; }

.dropdown .dropdown-contents,
.notification_list {
    border-color: rgba(177, 190, 193, .34);
    border-top: 2px solid var(--sr-accent);
    background: var(--sr-panel-raised);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .55);
}

.forabg,
.forumbg {
    margin: 0 0 18px;
    border-color: var(--sr-line-soft);
    border-radius: 2px;
    background: rgba(7, 13, 15, .9);
    box-shadow: none;
}

ul.topiclist li.header {
    min-height: 44px;
    padding: 0 18px;
    border: 0;
    border-left: 6px solid var(--sr-accent);
    background-image:
        url("./images/steel-raven-corner.svg"),
        linear-gradient(110deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .012) 34%, transparent 70%),
        linear-gradient(180deg, #152024, #0d1518);
    background-position: right center, center, center;
    background-repeat: no-repeat;
    background-size: 180px 32px, auto, auto;
    box-shadow: inset 0 1px rgba(255, 255, 255, .045), inset 0 -1px rgba(0, 0, 0, .8);
}

ul.topiclist li.header dl { min-height: 44px; align-items: center; }
ul.topiclist li.header dt {
    color: var(--sr-text);
    font: 750 17px/1 var(--sr-heading);
    letter-spacing: .035em;
}
.forabg ul.topiclist li.header dt,
.forumbg ul.topiclist li.header dt { font: 750 17px/1 var(--sr-heading); letter-spacing: .035em; }
.forabg ul.topiclist li.header dt .list-inner,
.forumbg ul.topiclist li.header dt .list-inner { color: inherit; font: inherit; letter-spacing: inherit; }
ul.topiclist li.header dd {
    color: var(--sr-muted);
    font: 700 10px/1.2 var(--sr-heading);
    letter-spacing: .045em;
}

ul.topiclist li.row,
ul.topiclist li.row:nth-child(even) {
    min-height: 72px;
    border-top: 0;
    border-bottom: 1px solid var(--sr-line-soft);
    background: rgba(7, 13, 15, .78);
    transition: background-color 120ms ease, box-shadow 120ms ease;
}

ul.topiclist li.row:hover { background: #10191c; box-shadow: inset 3px 0 rgba(255, 255, 255, .18); }
ul.topiclist li.row dl { min-height: 72px; }
ul.topiclist li.row dt { padding-top: 12px; padding-bottom: 11px; }
ul.topiclist li.row dd { color: #b8c1c2; border-left-color: var(--sr-line-soft); font-variant-numeric: tabular-nums; }

.row-item .list-inner { padding-left: 58px; color: var(--sr-muted); font-size: 13px; line-height: 1.4; }
ul.topiclist.forums .row-item,
ul.topiclist.topics .row-item { background-image: none !important; }
ul.topiclist li.header .row-item::before { display: none !important; }
ul.topiclist dl.row-item { position: relative; }
.row-item::before {
    content: "" !important;
    position: absolute;
    top: 50%;
    left: 9px;
    display: block !important;
    width: 30px;
    height: 30px;
    margin: 0;
    transform: translateY(-50%);
    color: #d6dddc;
    font-size: 0;
    border: 0 !important;
    border-radius: 0 !important;
    background: url("./images/steel-raven-forum-read.svg") center / contain no-repeat !important;
    box-shadow: none !important;
    filter: grayscale(1) brightness(1.25);
    opacity: .8;
}
.forumtitle,
.topictitle { color: var(--sr-text) !important; font: 650 15px/1.3 var(--sr-body); }
.row-item[class*="_unread"]::before {
    background-image: url("./images/steel-raven-forum-unread.svg") !important;
    filter: sepia(1) saturate(7) hue-rotate(338deg) brightness(1.05);
    opacity: 1;
}
.row-item[class*="_locked"]::before {
    background-image: url("./images/steel-raven-forum-locked.svg") !important;
    filter: grayscale(1) brightness(1.05);
    opacity: .72;
}
.row-item[class*="_unread"] .forumtitle::after,
.row-item[class*="_unread"] .topictitle::after {
    width: 8px;
    height: 8px;
    border: 0;
    background: var(--sr-accent);
    box-shadow: 0 0 0 3px rgba(255, 75, 22, .11);
}
.topiclist li.sticky { box-shadow: inset 3px 0 #7c898d; }
.topiclist li.sticky .topictitle { text-decoration: none; }

.panel,
.cp-main .panel,
.panel-container { background: var(--sr-panel); border-color: var(--sr-line); }
.panel { border-radius: 2px; }

.button,
.button2 {
    min-height: 36px;
    padding: 7px 12px;
    border-color: #45565c;
    background: linear-gradient(#182226, #101719);
}
.button:hover,
.button2:hover,
.button:focus,
.button2:focus { border-color: #77868b; background: #1b272a; }
.button1,
input.button1 { color: var(--sr-accent-ink); border-color: var(--sr-accent); background: var(--sr-accent); font-weight: 800; }
.button1:hover,
input.button1:hover,
.button1:focus,
input.button1:focus { color: var(--sr-accent-ink); border-color: #ff6333; background: #ff6333; }

input.inputbox,
textarea.inputbox,
select,
.search-box .inputbox { min-height: 38px; border-color: #45565c; background: #060b0d; }
input.inputbox:hover,
textarea.inputbox:hover,
select:hover { border-color: #66777c; }

h2.topic-title { font: 750 clamp(26px, 3vw, 36px)/1.15 var(--sr-heading); letter-spacing: .01em; }

.post {
    margin: 0 0 14px;
    padding: 0;
    border-color: var(--sr-line);
    border-top: 3px solid #34474a;
    border-radius: 2px;
    background: var(--sr-panel);
}

.post.bg2 { background: var(--sr-panel-alt); }
.post.unreadpost { border-left: 4px solid var(--sr-accent); box-shadow: none; }
.postprofile {
    float: left;
    width: 176px;
    min-height: 100%;
    padding: 18px 14px;
    border: 0;
    border-right: 1px solid var(--sr-line-soft);
    background: rgba(255, 255, 255, .018);
    box-sizing: border-box;
}
.postbody {
    float: right;
    width: calc(100% - 196px);
    padding: 16px 22px 24px;
    box-sizing: border-box;
}
.postbody .content { max-width: 76ch; color: #dce2e2; font-size: 15.5px; line-height: 1.66; }
.postbody h3 { font-family: var(--sr-heading); }
.signature { color: #9da7a9; border-top-color: var(--sr-line-soft); }
blockquote { border-left-color: #69777c; border-top: 1px solid var(--sr-line-soft); background: #070d0f; }

.attachbox { border-style: solid; border-color: var(--sr-line); background: #070d0f; }
.attachbox > dd { border-color: var(--sr-line-soft); background: #0f1719; }

.cp-main,
.cp-main label,
.cp-main fieldset dt,
.cp-main fieldset dd,
.cp-main input,
.cp-main select,
.cp-main textarea { font-family: var(--sr-body); }
.cp-main h2 { font: 750 28px/1.15 var(--sr-heading); }
#cp-menu .navigation { background: var(--sr-panel); }
#cp-menu #active-subsection a { border-left: 4px solid var(--sr-accent); background: #172125; }
.tabs .tab > a,
.minitabs .tab > a { background: #101719; }
.tabs .activetab > a,
.tabs .tab > a:hover { border-bottom: 3px solid var(--sr-accent); background: #172125; }

.pagination li.active span,
.pagination li a:hover,
.pagination li a:focus { color: var(--sr-accent-ink); border-color: var(--sr-accent); background: var(--sr-accent); }
.stat-block { color: #abb5b6; font-size: 12px; }
.stat-block h3 { font: 750 15px/1.3 var(--sr-heading); }
.page-footer { border-top: 1px solid var(--sr-line); }

@media (max-width: 900px) {
    .wrap { padding: 0 20px; }
    .headerbar { min-height: 260px; margin-right: -20px; margin-left: -20px; }
    .headerbar + .navbar { margin-right: -20px; margin-left: -20px; padding-right: 20px; padding-left: 20px; }
    .logo { left: 24px; width: 68px; height: 66px; }
    .site_logo { width: 68px; height: 66px; }
    #site-description { padding-left: 104px; }
    .headerbar::before { left: 28px; font-size: clamp(48px, 7vw, 62px); }
    .headerbar::after { left: 31px; }
}

@media (max-width: 700px) {
    .wrap { padding: 0 10px; }
    .headerbar {
        min-height: 158px;
        margin-right: -10px;
        margin-left: -10px;
        padding: 0 16px;
        background-image:
            linear-gradient(180deg, rgba(3, 7, 8, .96) 0 64px, rgba(3, 7, 8, .18) 64px 100%),
            linear-gradient(90deg, rgba(3, 7, 8, .93), rgba(3, 7, 8, .3) 58%, rgba(3, 7, 8, .68)),
            url("./images/steel-raven-hero.svg");
        background-position: center, center, 68% center;
        background-size: auto, auto, cover;
    }
    .logo { top: 10px; left: 14px; width: 48px; height: 48px; }
    .site_logo { width: 48px; height: 48px; }
    #site-description { padding-top: 17px; padding-left: 60px; }
    #site-description h1::before { font-size: clamp(23px, 7vw, 29px); }
    #site-description p { display: none; }
    .headerbar::before {
        display: block;
        left: 16px;
        bottom: 18px;
        font-size: clamp(36px, 11vw, 46px);
    }
    .headerbar::after { display: none; }
    .headerbar + .navbar {
        min-height: 48px;
        margin-right: -10px;
        margin-left: -10px;
        margin-bottom: 16px;
        padding-right: 10px;
        padding-left: 10px;
    }
    ul.topiclist li.header {
        min-height: 48px;
        padding: 0 12px;
        background-image:
            linear-gradient(110deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .012) 34%, transparent 70%),
            linear-gradient(180deg, #152024, #0d1518);
        background-size: auto;
        text-align: left;
    }
    fieldset.quick-login input.button2 { min-height: 44px; }
    ul.topiclist li.header dl { min-height: 48px; }
    ul.topiclist li.header dt { font-size: 16px; text-align: left; }
    ul.topiclist li.row,
    ul.topiclist li.row dl { min-height: 78px; }
    .row-item .list-inner { padding: 13px 8px 12px 48px; font-size: 12px; }
    .row-item::before { font-size: 22px; }
    .post { border-top-width: 2px; }
    .postprofile {
        float: none;
        width: auto;
        min-height: 0;
        padding: 12px 14px;
        border-right: 0;
        border-bottom: 1px solid var(--sr-line-soft);
    }
    .postbody { float: none; width: auto; padding: 14px 16px 20px; }
    .postbody .content { font-size: 16px; line-height: 1.6; }
    input.inputbox,
    textarea.inputbox,
    select { min-height: 44px; }
    .cp-main h2 { font-size: 24px; }
}

@media (max-width: 430px) {
    .headerbar { min-height: 140px; }
    .logo { left: 10px; width: 44px; height: 44px; }
    .site_logo { width: 44px; height: 44px; }
    #site-description { padding-top: 16px; padding-left: 54px; }
    #site-description h1::before { font-size: clamp(21px, 7vw, 25px); }
    .headerbar::before { bottom: 14px; font-size: 36px; }
}

/* v0.6: deterministic typography and compact internal operations view. */
:root { --sr-heading: "Steel Raven Display", "Arial Narrow", Arial, sans-serif; }

html,
body,
input,
select,
textarea,
button { font-synthesis: none; }

#site-description h1::before,
.headerbar::before,
ul.topiclist li.header dt,
.stat-block h3,
.cp-main h2,
h2.topic-title,
.postbody h3,
.tabs .tab > a,
.minitabs .tab > a { font-family: var(--sr-heading); font-synthesis: none; }

/* Preserve the cinematic landing header while compressing content pages. */
.section-index .headerbar { min-height: 312px; }

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar {
    min-height: 108px;
    margin-bottom: 0;
    padding-right: 32px;
    padding-left: 32px;
    background-image:
        linear-gradient(90deg, rgba(3, 7, 8, .98), rgba(3, 7, 8, .74)),
        url("./images/steel-raven-hero.svg");
    background-position: center, 76% 37%;
    background-size: auto, cover;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar::before,
:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar::after { content: none; display: none; }

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description {
    max-width: calc(100% - 250px);
    padding: 18px 0 0 92px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description h1::before {
    font-size: clamp(28px, 3vw, 35px);
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description p {
    margin-top: 4px;
    font-size: 9px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .logo {
    top: 11px;
    left: 25px;
    width: 58px;
    height: 60px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .site_logo {
    width: 58px;
    height: 60px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .search-header {
    top: 17px;
    right: 30px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar + .navbar {
    min-height: 48px;
    margin-top: 0;
    margin-bottom: 14px;
}

:where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar + .navbar > .inner { min-height: 48px; }

/* Turn the loose landing-page utilities into one operational panel family. */
.section-index fieldset.quick-login,
.section-index .stat-block {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    margin: 12px 0;
    padding: 15px 18px;
    border: 1px solid var(--sr-line);
    border-left: 4px solid var(--sr-accent);
    border-radius: 2px;
    background:
        linear-gradient(110deg, rgba(255, 255, 255, .025), transparent 42%),
        rgba(11, 18, 20, .94);
}

.section-index fieldset.quick-login {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    align-items: end;
}

.section-index fieldset.quick-login legend,
.section-index .stat-block h3 {
    width: auto;
    margin: 0 0 9px;
    padding: 0;
    color: var(--sr-text);
    font: 700 17px/1.2 var(--sr-heading);
    letter-spacing: .025em;
    text-transform: uppercase;
}

.section-index fieldset.quick-login input.inputbox { width: min(220px, 100%); }
.section-index .stat-block p { margin: 0; color: var(--sr-muted); font-size: 13px; line-height: 1.55; }
.section-index .stat-block strong { color: var(--sr-text); font-variant-numeric: tabular-nums; }
.section-index .page-footer { margin-top: 18px; padding-top: 0; border-top: 0; }
.section-index .page-footer .navbar {
    padding: 11px 14px;
    border: 1px solid var(--sr-line);
    border-left: 4px solid var(--sr-accent);
    background: #101615;
}
.section-index .copyright { padding: 14px 10px 20px; border-top: 1px solid rgba(255, 255, 255, .04); }

/* Normalize authored legacy scale without flattening ordinary emphasis. */
.section-viewtopic .postbody .content { max-width: 78ch; font-size: 16px; line-height: 1.56; }
.section-viewtopic .postbody .content :is(span, font)[style*="font-size:150%" i],
.section-viewtopic .postbody .content :is(span, font)[style*="font-size: 150%" i] {
    font-size: clamp(1rem, 2.2vw, 1.3rem) !important;
    line-height: 1.5 !important;
}
.section-viewtopic .postprofile { width: 184px; padding: 16px 14px; }
.section-viewtopic .postbody { width: calc(100% - 204px); padding: 16px 22px 20px; }
.section-viewtopic .attachbox { margin-top: 18px; padding: 10px; }
.section-viewtopic .notice { margin-top: 14px; padding: 6px 8px; }

.topic-poster,
.postprofile dd,
.post-info,
.pagination { font-size: 12px; line-height: 1.35; font-variant-numeric: tabular-nums; }

@media (max-width: 700px) {
    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar {
        min-height: 72px;
        padding-right: 10px;
        padding-left: 10px;
        background-image:
            linear-gradient(90deg, rgba(3, 7, 8, .98), rgba(3, 7, 8, .76)),
            url("./images/steel-raven-hero.svg");
        background-position: center, 79% 31%;
        background-size: auto, cover;
    }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .logo {
        top: 8px;
        left: 10px;
        width: 42px;
        height: 44px;
    }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .site_logo {
        width: 42px;
        height: 44px;
    }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description {
        max-width: calc(100% - 60px);
        padding: 13px 0 0 53px;
    }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description h1::before {
        font-size: clamp(21px, 6.5vw, 27px);
    }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) #site-description p,
    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .search-header { display: none; }

    :where(.section-viewforum, .section-viewtopic, .section-ucp, .section-memberlist) .headerbar + .navbar {
        min-height: 48px;
        margin-bottom: 10px;
    }

    .section-index fieldset.quick-login,
    .section-index .stat-block { margin: 10px 0; padding: 13px 12px; }
    .section-index fieldset.quick-login { display: grid; grid-template-columns: 1fr; align-items: stretch; }
    .section-index fieldset.quick-login label { display: grid; width: 100%; min-width: 0; overflow-wrap: anywhere; }
    .section-index fieldset.quick-login input.inputbox { width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; }
    .section-index fieldset.quick-login input.button2 { justify-self: start; }

    .section-viewtopic .postprofile { width: auto; min-height: 52px; padding: 10px 12px; }
    .section-viewtopic .postbody { width: auto; padding: 14px 12px 16px; }
    .section-viewtopic .postbody .content { font-size: 15px; line-height: 1.55; }
    .section-viewtopic .postbody .content :is(span, font)[style*="font-size:150%" i],
    .section-viewtopic .postbody .content :is(span, font)[style*="font-size: 150%" i] { font-size: 1.08rem !important; }

    .section-ucp .tabs { display: flex; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; white-space: nowrap; }
    .section-ucp .tabs ul { display: flex; flex: 0 0 auto; min-width: max-content; }
    .section-ucp .tabs .tab > a { min-width: 44px; min-height: 44px; padding: 8px 11px; }
    .section-ucp #cp-menu .navigation { display: flex; flex-wrap: wrap; gap: 1px; padding: 4px; }
    .section-ucp #cp-menu .navigation li { flex: 1 1 140px; margin: 0; }
    .section-ucp #cp-menu .navigation a {
        width: 100%;
        min-width: 0;
        min-height: 44px;
        padding: 8px 9px;
        justify-content: flex-start;
        line-height: 1.25;
    }
    .section-ucp .cp-main h2 { margin: 10px 0 12px; font-size: 23px; }
    .section-ucp .cp-main .panel { padding: 10px; }
    .section-ucp .cp-main fieldset dl { margin-bottom: 10px; }
    .section-ucp .cp-main select { min-width: 44px; min-height: 44px; }
    .section-ucp .format-buttons select.bbcode-size { min-height: 44px; }
    .section-ucp .format-buttons .button { min-width: 44px; min-height: 44px; }
    .section-ucp .smiley-box > a { min-width: 44px; min-height: 44px; }
    .section-ucp .cp-main dd label { min-height: 44px; margin: 1px 10px 1px 0; }
}

@media (min-width: 701px) and (max-width: 900px) {
    .section-index .headerbar { min-height: 260px; }
}

@media (max-width: 700px) {
    .section-index .headerbar { min-height: 158px; }
}

@media (max-width: 430px) {
    .section-index .headerbar { min-height: 140px; }
}

/* v0.6.2: native phpBB state and inherited colour repairs. */
.post.online {
    background-image: none !important;
    background-repeat: no-repeat;
    background-position: 100% 0;
}

.post:target .content,
.post:target h3 a,
.post h3 a.first-unread { color: var(--sr-text); }

.section-posting label,
.section-posting dd label,
.section-posting fieldset dl:hover dt label,
.section-posting fieldset dt > span,
.section-posting .help,
.section-posting .bbcode-status { color: var(--sr-text); }

.section-posting .message-box textarea,
.section-posting input.inputbox,
.section-posting textarea.inputbox,
.section-posting select {
    color: var(--sr-text);
    background: #060b0d;
}

.content h2,
.panel h2 { color: var(--sr-text); }

input.inputbox::placeholder,
textarea.inputbox::placeholder,
.search-box .inputbox::placeholder {
    color: var(--sr-dim);
    opacity: 1;
}

ul.topiclist .row-item { background-image: none !important; }
.row-item[class*="_unread"]::before { filter: none; }

ul.topiclist li.header {
    background-image:
        linear-gradient(110deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .012) 34%, transparent 70%),
        linear-gradient(180deg, #152024, #0d1518);
    background-position: center, center;
    background-size: auto, auto;
}

.button:hover,
.button:focus,
.button2:hover,
.button2:focus,
.dropdown-extended .header { text-shadow: none; }

.section-ucp .cp-mini {
    color: var(--sr-text);
    border: 1px solid var(--sr-line);
    background: var(--sr-panel-raised);
}
.section-ucp .cp-mini dl.mini dt { color: var(--sr-text); }
.section-ucp .cp-mini .pm-legend { color: var(--sr-muted); }
.section-ucp .cp-main .pm-message {
    color: var(--sr-text);
    border-color: var(--sr-line);
    background: var(--sr-panel-alt);
}
.section-ucp .cp-main .pm {
    color: var(--sr-text);
    border-color: var(--sr-line);
    background: var(--sr-panel-alt);
}
.section-ucp .cp-main .pm-message .postbody,
.section-ucp .cp-main .pm-message .content,
.section-ucp .cp-main .pm-message h3,
.section-ucp .cp-main .pm .postbody,
.section-ucp .cp-main .pm .content,
.section-ucp .cp-main .pm h3 { color: var(--sr-text); }

.section-posting .headerbar {
    min-height: 108px;
    margin-bottom: 0;
    padding-right: 32px;
    padding-left: 32px;
    background-image:
        linear-gradient(90deg, rgba(3, 7, 8, .98), rgba(3, 7, 8, .74)),
        url("./images/steel-raven-hero.svg");
    background-position: center, 76% 37%;
    background-size: auto, cover;
}
.section-posting .headerbar::before,
.section-posting .headerbar::after { content: none; display: none; }
.section-posting #site-description { max-width: calc(100% - 250px); padding: 18px 0 0 92px; }
.section-posting #site-description h1::before { font-size: clamp(28px, 3vw, 35px); }
.section-posting #site-description p { margin-top: 4px; font-size: 9px; }
.section-posting .logo { top: 11px; left: 25px; width: 58px; height: 60px; }
.section-posting .site_logo { width: 58px; height: 60px; }
.section-posting .search-header { top: 17px; right: 30px; }
.section-posting .headerbar + .navbar { min-height: 48px; margin-top: 0; margin-bottom: 14px; }

@media (max-width: 700px) {
    .section-posting .headerbar { min-height: 72px; padding-right: 10px; padding-left: 10px; }
    .section-posting .logo { top: 8px; left: 10px; width: 42px; height: 44px; }
    .section-posting .site_logo { width: 42px; height: 44px; }
    .section-posting #site-description { max-width: calc(100% - 60px); padding: 13px 0 0 53px; }
    .section-posting #site-description h1::before { font-size: clamp(21px, 6.5vw, 27px); }
    .section-posting #site-description p,
    .section-posting .search-header { display: none; }
}

/* v0.7: compact operational index aligned with the approved reference. */
#page-header { position: relative; }

.sr-primary-nav {
    position: absolute;
    z-index: 4;
    top: 0;
    right: 250px;
    display: flex;
    height: 94px;
    align-items: stretch;
    gap: 4px;
}

.sr-primary-nav a {
    position: relative;
    display: inline-flex;
    min-width: 82px;
    padding: 0 16px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: #d6dddd;
    font: 650 14px/1 var(--sr-body);
    text-decoration: none;
}

.sr-primary-nav a:hover,
.sr-primary-nav a:focus,
.sr-primary-nav .sr-primary-active { color: #fff; background: rgba(255, 255, 255, .025); }

.sr-primary-nav .sr-primary-active::after {
    content: "";
    position: absolute;
    right: 14px;
    bottom: 0;
    left: 14px;
    height: 3px;
    background: var(--sr-accent);
}

.section-index .headerbar { min-height: 286px; }
.section-index .headerbar::before { bottom: 38px; font-size: clamp(48px, 5.4vw, 68px); }
.section-index .headerbar::after { bottom: 15px; }
.section-index .logo { width: 68px; height: 68px; }
.section-index .site_logo { width: 68px; height: 68px; }
.section-index #site-description { padding-left: 112px; }
.section-index #site-description h1::before { font-size: clamp(29px, 2.7vw, 37px); }

.section-index .headerbar + .navbar {
    min-height: 50px;
    margin-bottom: 14px;
    background: rgba(5, 11, 13, .98);
}

.section-index .forabg { margin-bottom: 12px; }
.section-index ul.topiclist li.header,
.section-index ul.topiclist li.header dl { min-height: 40px; }
.section-index ul.topiclist li.header { padding-right: 14px; padding-left: 14px; }
.section-index ul.topiclist li.header dt,
.section-index .forabg ul.topiclist li.header dt { font-size: 15px; letter-spacing: .04em; }

.section-index ul.topiclist li.row,
.section-index ul.topiclist li.row:nth-child(even),
.section-index ul.topiclist li.row dl { min-height: 64px; }
.section-index ul.topiclist li.row dt { padding-top: 9px; padding-bottom: 8px; }
.section-index .row-item .list-inner { padding-left: 52px; font-size: 12px; line-height: 1.35; }
.section-index .forumtitle { font-size: 14px; }

.section-index .row-item::before {
    content: "\f0e5" !important;
    width: 29px;
    height: 29px;
    color: #dce3e2;
    font: normal normal normal 24px/29px FontAwesome;
    text-align: center;
    background: none !important;
    filter: none !important;
    opacity: .92;
}

.section-index .row-item[class*="_unread"]::before { color: #fff !important; }
.section-index .row-item[class*="_locked"]::before { content: "\f023" !important; color: #aeb8b8; }
.section-index .sr-forum-5::before { content: "\f0c0" !important; }
.section-index .sr-forum-18::before { content: "\f07a" !important; }
.section-index .sr-forum-15::before { content: "\f05b" !important; }
.section-index .sr-forum-16::before { content: "\f0ad" !important; }
.section-index .sr-forum-6::before { content: "\f073" !important; }
.section-index .sr-forum-36::before { content: "\f0e8" !important; }
.section-index .sr-forum-46::before { content: "\f06a" !important; }
.section-index .sr-forum-47::before { content: "\f0eb" !important; }
.section-index .sr-forum-45::before { content: "\f132" !important; }
.section-index ul.topiclist li.row:hover { box-shadow: inset 3px 0 var(--sr-accent); }
.section-index ul.topiclist li.row dd { font-size: 11px; }
.section-index .lastpost { line-height: 1.35; }
.section-index .lastsubject { color: #edf1f0; font-weight: 650; }

.sr-stats-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr) minmax(0, 1fr);
    margin: 18px 0;
    border: 1px solid var(--sr-line);
    background: rgba(8, 14, 16, .94);
}

.section-index .sr-stats-grid .stat-block {
    width: auto;
    min-height: 112px;
    margin: 0;
    padding: 18px 20px;
    border: 0;
    border-left: 1px solid var(--sr-line-soft);
    border-radius: 0;
    background: transparent;
}

.section-index .sr-stats-grid .stat-block:first-child { border-left: 4px solid var(--sr-accent); }
.section-index .sr-stats-grid .stat-block h3 { margin-bottom: 10px; font-size: 15px; }
.section-index .sr-stats-grid .stat-block p { font-size: 12px; line-height: 1.5; }
.section-index .sr-stats-grid .statistics strong { font-size: 16px; }

.section-index .page-footer .navbar {
    min-height: 54px;
    border-right: 0;
    border-left: 0;
    background: rgba(8, 14, 16, .94);
}

@media (max-width: 1050px) {
    .sr-primary-nav { right: 220px; }
    .sr-primary-nav a { min-width: 68px; padding-right: 10px; padding-left: 10px; }
}

@media (max-width: 900px) {
    .sr-primary-nav { display: none; }
    .section-index .headerbar { min-height: 246px; }
    .sr-stats-grid { grid-template-columns: 1fr 1fr; }
    .section-index .sr-stats-grid .statistics { grid-column: 1 / -1; border-top: 1px solid var(--sr-line-soft); }
}

@media (max-width: 700px) {
    .section-index .headerbar { min-height: 150px; }
    .section-index .logo { width: 46px; height: 46px; }
    .section-index .site_logo { width: 46px; height: 46px; }
    .section-index #site-description { padding-left: 58px; }
    .section-index ul.topiclist li.row,
    .section-index ul.topiclist li.row dl { min-height: 72px; }
    .section-index .row-item .list-inner { padding: 11px 8px 10px 46px; }
    .section-index .topiclist.forums .subforum {
        display: inline-flex;
        min-height: 32px;
        margin: 2px 8px 0 0;
        align-items: center;
    }
    .sr-stats-grid { grid-template-columns: 1fr; }
    .section-index .sr-stats-grid .stat-block,
    .section-index .sr-stats-grid .statistics {
        min-height: 0;
        padding: 14px 12px;
        border-top: 1px solid var(--sr-line-soft);
        border-left: 0;
    }
    .section-index .sr-stats-grid .stat-block:first-child { border-top: 0; border-left: 4px solid var(--sr-accent); }
}

/* v1.0: final visual and route coverage. */
.sr-hero-note { display: none; }

.section-index .sr-hero-note {
    position: absolute;
    z-index: 3;
    right: 34px;
    bottom: 34px;
    display: block;
    margin: 0;
    padding-bottom: 14px;
    color: #c4cdca;
    font: 700 11px/1.45 var(--sr-heading);
    letter-spacing: .16em;
    text-transform: uppercase;
    text-shadow: 0 2px 8px #000;
}

.section-index .sr-hero-note::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 24px;
    height: 3px;
    background: var(--sr-accent);
}

body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar {
    min-height: 108px;
    margin-bottom: 0;
    padding-right: 32px;
    padding-left: 32px;
    background-image:
        linear-gradient(90deg, rgba(3, 7, 8, .98), rgba(3, 7, 8, .74)),
        url("./images/steel-raven-hero.svg");
    background-position: center, 76% 37%;
    background-size: auto, cover;
}

body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar::before,
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar::after { content: none; display: none; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description { max-width: calc(100% - 250px); padding: 18px 0 0 92px; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description h1::before { font-size: clamp(28px, 3vw, 35px); }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description p { margin-top: 4px; font-size: 9px; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .logo { top: 11px; left: 25px; width: 58px; height: 60px; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .site_logo { width: 58px; height: 60px; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .search-header { top: 17px; right: 30px; }
body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar + .navbar { min-height: 48px; margin-top: 0; margin-bottom: 14px; }

.section-search .panel fieldset dt,
.section-search .panel fieldset dd,
.section-search .panel fieldset label,
.section-search .panel fieldset p { color: var(--sr-text); }
.section-search .panel fieldset dt label,
.section-search .panel fieldset dt > span { color: var(--sr-muted); }
.section-search .panel input[type="checkbox"],
.section-search .panel input[type="radio"] { accent-color: var(--sr-accent); }
.section-search .panel input:disabled + label,
.section-search .panel label:has(input:disabled) { color: var(--sr-dim); }

.section-index fieldset.quick-login label,
.section-index fieldset.quick-login > span { color: var(--sr-text); }
.section-index fieldset.quick-login label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.section-index fieldset.quick-login label > span { color: var(--sr-muted); }
.section-index fieldset.quick-login a {
    color: #e7eceb;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.section-index .sr-stats-grid .stat-block h3::before {
    display: inline-block;
    width: 25px;
    margin-right: 8px;
    color: #e5eae8;
    font: normal normal normal 19px/1 FontAwesome;
    text-align: center;
}
.section-index .sr-stats-grid .online-list h3::before { content: "\f0c0"; }
.section-index .sr-stats-grid .birthday-list h3::before { content: "\f073"; }
.section-index .sr-stats-grid .statistics h3::before { content: "\f080"; }

@media (min-width: 701px) {
    .section-index ul.topiclist.forums dd.lastpost { position: relative; padding-right: 34px; }
    .section-index ul.topiclist.forums dd.lastpost::after {
        content: "\f105";
        position: absolute;
        top: 50%;
        right: 13px;
        color: #8f9b9d;
        font: normal normal normal 18px/1 FontAwesome;
        transform: translateY(-50%);
    }

    .page-footer { position: relative; }
    .page-footer::before {
        content: "STEEL RAVEN";
        position: absolute;
        z-index: 2;
        top: 15px;
        left: 16px;
        min-height: 52px;
        padding: 5px 0 0 68px;
        color: #edf1ef;
        font: 750 20px/1.1 var(--sr-heading);
        letter-spacing: .045em;
        background: url("./images/steel-raven-emblem.svg") left center / 54px 52px no-repeat;
        pointer-events: none;
    }
    .page-footer::after {
        content: "";
        position: absolute;
        z-index: 2;
        top: 57px;
        left: 84px;
        width: 22px;
        height: 2px;
        background: var(--sr-accent);
    }
    .page-footer .navbar { min-height: 78px; padding-left: 300px; }
    .section-index .page-footer .navbar { padding-left: 300px; }
    .page-footer .navbar > .inner { min-height: 58px; display: flex; align-items: center; }
    .page-footer .navbar ul.linklist { width: 100%; }
}

@media (max-width: 900px) {
    .section-index .sr-hero-note { display: none; }
}

@media (max-width: 700px) {
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar {
        min-height: 72px;
        padding-right: 10px;
        padding-left: 10px;
        background-position: center, 79% 31%;
    }
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .logo { top: 8px; left: 10px; width: 42px; height: 44px; }
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .site_logo { width: 42px; height: 44px; }
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description { max-width: calc(100% - 60px); padding: 13px 0 0 53px; }
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description h1::before { font-size: clamp(21px, 6.5vw, 27px); }
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) #site-description p,
    body:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .search-header { display: none; }
    .section-index fieldset.quick-login label { display: grid; gap: 5px; }
    .section-index fieldset.quick-login label[for="autologin"] {
        display: inline-flex;
        width: auto;
        min-height: 44px;
        align-items: center;
    }
    .section-index fieldset.quick-login .responsive-hide { display: none; }
}

/* Keep the measured v1.1 index contract after the historical version layers above. */
@media (min-width: 901px) {
    .section-index .headerbar { min-height: 228px; }
    .section-index .headerbar + .navbar {
        min-height: 100px;
        height: 100px;
        margin: 0 -42px;
        padding: 0 42px;
    }
    .section-index .headerbar + .navbar > .inner { min-height: 100px; }
    .section-index #nav-main { min-height: 54px; height: 54px; }
    .section-index #nav-breadcrumbs { min-height: 46px; height: 46px; }
}

.section-index .forabg { margin-bottom: 16px; }
.section-index ul.topiclist li.row,
.section-index ul.topiclist li.row:nth-child(even),
.section-index ul.topiclist li.row dl.row-item { min-height: 60px; height: 60px; }
.section-index .sr-stats-grid {
    min-height: 120px;
    height: auto;
    margin: 16px 0;
    grid-template-columns: minmax(0, 430fr) minmax(0, 358fr) minmax(0, 252fr);
}
.section-index .sr-stats-grid .stat-block { min-height: 118px; overflow: visible; }
.section-index .page-footer .navbar { min-height: 85px; height: 85px; }

@media (max-width: 700px) {
    .section-index ul.topiclist dl.row-item { grid-template-columns: 44px minmax(0, 1fr); }
    .section-index ul.topiclist dl.row-item > dt { grid-column: 2; }
    .section-index ul.topiclist dl.row-item > dt .list-inner { margin: 0; padding: 0 8px 0 0; }
    .section-index ul.topiclist li.row dl.row-item > .topics,
    .section-index ul.topiclist li.row dl.row-item > .posts,
    .section-index ul.topiclist li.row dl.row-item > .lastpost { display: none; }
    /* The even-row fixed height above otherwise clips the mobile topic counter. */
    .section-index ul.topiclist li.row,
    .section-index ul.topiclist li.row:nth-child(even),
    .section-index ul.topiclist li.row dl.row-item { min-height: 64px; height: auto; }
    .section-index ul.topiclist li.header dl.row-item { grid-template-columns: minmax(0, 1fr); min-height: 40px; height: 40px; }
    .section-index ul.topiclist li.header dl.row-item > dt { grid-column: 1; }
    .section-index .sr-stats-grid { height: auto; min-height: 0; grid-template-columns: 1fr; }
}

@media (min-width: 701px) and (max-width: 900px) {
    .section-index ul.topiclist dl.row-item {
        grid-template-columns: 52px minmax(0, 1fr) minmax(250px, 38%);
    }
    .section-index ul.topiclist dl.row-item > dt { grid-column: 2; }
    .section-index ul.topiclist li.row dl.row-item > .topics,
    .section-index ul.topiclist li.row dl.row-item > .posts { display: none; }
    .section-index ul.topiclist dl.row-item > .lastpost { grid-column: 3; }
    .section-index ul.topiclist li.header dl.row-item {
        grid-template-columns: minmax(0, 1fr) minmax(250px, 38%);
    }
    .section-index ul.topiclist li.header dl.row-item > dt { grid-column: 1; }
    .section-index ul.topiclist li.header dl.row-item > .topics,
    .section-index ul.topiclist li.header dl.row-item > .posts { display: none; }
    .section-index ul.topiclist li.header dl.row-item > .lastpost { grid-column: 2; }
}

.sr-header-account { display: none; }
.sr-index-utility { display: none; }

@media (min-width: 901px) {
    body.section-index { padding-top: 0; }
    .section-index .page-body { padding-top: 31px; }
    .section-index .headerbar::before,
    .section-index .headerbar::after,
    .section-index .sr-hero-note,
    .section-index .search-header { display: none; }
    .section-index .headerbar > .inner {
        position: relative;
        height: 100%;
    }
    .section-index .headerbar > .inner::before {
        content: "";
        position: absolute;
        z-index: 4;
        top: 18px;
        left: -2px;
        width: 296px;
        height: 57px;
        background: url("./images/sr-header-brand.png") center / 296px 57px no-repeat;
    }
    .section-index .logo,
    .section-index #site-description { visibility: hidden; }
    .section-index .sr-primary-nav { right: 300px; }
    .section-index .sr-header-account {
        position: absolute;
        z-index: 5;
        top: 0;
        right: 42px;
        display: flex;
        height: 82px;
        align-items: center;
        gap: 18px;
    }
    .section-index .sr-header-account a {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: var(--sr-text);
        text-decoration: none;
    }
    .section-index .sr-header-user img {
        width: 42px;
        height: 42px;
        object-fit: cover;
        border-radius: 50%;
    }
    .section-index #nav-main { visibility: hidden; }
    .section-index .sr-index-utility {
        position: absolute;
        z-index: 5;
        top: 228px;
        right: 42px;
        left: 42px;
        display: flex;
        height: 54px;
        align-items: center;
        gap: 25px;
    }
    .section-index .sr-index-utility > a {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: var(--sr-muted);
        font-size: 12px;
        text-decoration: none;
        white-space: nowrap;
    }
    .section-index .sr-index-utility form {
        display: grid;
        flex: 1 1 auto;
        margin-left: auto;
        max-width: 342px;
        height: 34px;
        grid-template-columns: minmax(0, 1fr) 40px;
        border: 1px solid var(--sr-line);
        border-radius: 3px;
        background: rgba(12, 22, 25, .78);
    }
    .section-index .sr-index-utility input,
    .section-index .sr-index-utility button {
        min-width: 0;
        border: 0;
        color: var(--sr-text);
        background: transparent;
    }
    .section-index .sr-index-utility input { padding: 0 12px; }
    .section-index .sr-index-utility button { border-left: 1px solid var(--sr-line); }
    .section-index ul.topiclist li.row dl.sr-has-subforums {
        min-height: 60px;
        height: auto;
    }
    .section-index ul.topiclist li.row.sr-has-subforums {
        min-height: 60px;
        height: auto;
    }
    .section-index ul.topiclist li.row dl.sr-has-subforums > dt,
    .section-index ul.topiclist li.row dl.sr-has-subforums > dd {
        min-height: 60px;
        height: auto;
    }
    .section-index .page-footer { position: relative; }
    .section-index .page-footer::before {
        content: "";
        top: 20px;
        left: -6px;
        width: 328px;
        height: 76px;
        padding: 0;
        background: url("./images/sr-footer-brand.png") center / 328px 76px no-repeat;
    }
    .section-index .page-footer::after { display: none; }
    .section-index .page-footer .navbar {
        min-height: 116px;
        height: 116px;
        padding-left: 370px;
    }
    .section-index .copyright { display: none; }
}

@media (max-width: 700px) {
    .section-index ul.topiclist li.row dl.row-item > dt,
    .section-index ul.topiclist li.row dl.row-item > dt .list-inner,
    .section-index ul.topiclist li.row dl.row-item > dt .list-inner *,
    .section-index .forumtitle,
    .section-index .forumtitle + br {
        min-width: 0;
        max-width: 100%;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }
    .section-viewtopic h2.topic-title,
    .section-viewtopic .postbody,
    .section-viewtopic .postbody h3,
    .section-viewtopic .postbody .content,
    .section-viewtopic .postbody .content * {
        min-width: 0;
        max-width: 100%;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }
    .section-viewtopic .postbody,
    .section-viewtopic .postprofile {
        float: none;
        width: 100%;
        box-sizing: border-box;
    }
    .section-ucp #cp-menu,
    .section-ucp .cp-main {
        float: none;
        width: 100%;
        min-width: 0;
        margin: 0 0 10px;
        box-sizing: border-box;
    }
    .section-ucp .cp-main > *,
    .section-ucp .tabs,
    .section-ucp .tabs ul {
        max-width: 100%;
        box-sizing: border-box;
    }
    .section-ucp #cp-menu .navigation {
        float: none;
        width: 100%;
        min-width: 0;
        margin: 0;
        box-sizing: border-box;
    }
}

/* v1.1.3: stable viewforum rows and sharp desktop header artwork. */
.sr-header-brand,
.sr-hero-copy { display: none; }

@media (min-width: 901px) {
    body:is(.section-index, .section-viewforum, .section-viewtopic) .headerbar > .inner::before {
        content: none;
        display: none;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand {
        position: absolute;
        z-index: 6;
        top: 16px;
        left: 40px;
        display: flex;
        height: 58px;
        align-items: center;
        gap: 12px;
        color: #f4f6f5;
        text-decoration: none;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand img {
        width: 70px;
        height: 49px;
        object-fit: contain;
        filter: drop-shadow(0 2px 4px #000);
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand strong {
        color: #fff;
        font: 400 34px/1 Georgia, "Times New Roman", serif;
        letter-spacing: .015em;
        white-space: nowrap;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-hero-copy {
        position: absolute;
        z-index: 3;
        top: 82px;
        bottom: 0;
        left: 0;
        display: flex;
        width: 400px;
        padding: 41px 0 0 64px;
        flex-direction: column;
        box-sizing: border-box;
        background: linear-gradient(90deg, #030809 0 80%, rgba(3, 8, 9, 0));
        pointer-events: none;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-hero-copy strong {
        color: #f5f6f1;
        font: 800 57px/.85 var(--sr-heading);
        letter-spacing: .015em;
        text-shadow: 0 2px 0 #182023, 0 7px 16px #000;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-hero-copy span {
        margin-top: 10px;
        color: #d5dad7;
        font: 700 11px/1 var(--sr-heading);
        letter-spacing: .22em;
        text-transform: uppercase;
        text-shadow: 0 2px 6px #000;
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-hero-note {
        right: 0;
        bottom: 0;
        display: block;
        width: 180px;
        height: 146px;
        padding: 35px 0 0 44px;
        box-sizing: border-box;
        background: linear-gradient(90deg, rgba(3, 8, 9, 0), rgba(3, 8, 9, .95) 34%, #030809 100%);
    }

    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-hero-note::after {
        bottom: 28px;
        left: 44px;
    }
}

@media (min-width: 901px) and (max-width: 1050px) {
    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-primary-nav { right: 250px; }
    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand { gap: 8px; }
    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand img { width: 55px; height: 39px; }
    body:is(.section-index, .section-viewforum, .section-viewtopic) .sr-header-brand strong { font-size: 24px; }
}

@media (min-width: 701px) {
    :is(.section-viewforum, .section-search) .forumbg ul.topiclist.topics > li.row {
        min-height: 64px;
        box-sizing: border-box;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item {
        position: relative;
        display: grid;
        min-height: 63px;
        margin: 0;
        grid-template-columns: 52px minmax(0, 1fr) 80px 80px 250px;
        align-items: stretch;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item::before {
        position: static;
        grid-column: 1;
        grid-row: 1;
        place-self: center;
        margin: 0;
        transform: none;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > dt,
    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > dd {
        float: none;
        width: auto;
        min-width: 0;
        min-height: 0;
        height: auto;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > dt {
        display: flex;
        grid-column: 2;
        grid-row: 1;
        align-items: center;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > dt .list-inner {
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 10px 12px 10px 0;
        box-sizing: border-box;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > dt[style*="background-image"] .list-inner { padding-left: 26px; }
    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > .posts { grid-column: 3; }
    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > .views { grid-column: 4; }
    :is(.section-viewforum, .section-search) .forumbg ul.topiclist dl.row-item > .lastpost { grid-column: 5; }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.row dl.row-item > dd {
        display: flex;
        min-height: 63px;
        align-items: center;
        justify-content: center;
        line-height: 1.35;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.row dl.row-item > .lastpost {
        justify-content: flex-start;
        padding: 8px 12px;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header {
        min-height: 40px;
        padding: 0;
        border-left: 0;
        box-shadow: inset 6px 0 var(--sr-accent);
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item {
        min-height: 40px;
        grid-template-columns: 52px minmax(0, 1fr) 80px 80px 250px;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item::before { display: none !important; }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item > dt {
        grid-column: 1 / 3;
        padding-left: 18px;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item > dt .list-inner { padding: 0; }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item > dd {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    :is(.section-viewforum, .section-search) .forumbg ul.topiclist li.header dl.row-item > .lastpost {
        justify-content: flex-start;
        padding-left: 12px;
    }
}

/* v1.1.4: use the supplied site lockup and remove footer branding. */
#site-description h1::before {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: .015em;
}

.page-footer::before,
.page-footer::after {
    content: none !important;
    display: none !important;
}

@media (min-width: 701px) {
    .page-footer .navbar,
    .section-index .page-footer .navbar {
        min-height: 85px;
        height: 85px;
        padding-left: 0;
    }
}
/* v1.1.8: ensure native posting buttons remain readable and touch-sized. */
.section-posting .submit-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.section-posting .submit-buttons input.button1,
.section-posting .submit-buttons input.button2 {
    min-height: 44px;
    margin: 0;
    padding: 8px 12px;
}

.section-posting .submit-buttons input.button2 {
    color: var(--sr-text);
    border-color: #45565c;
    background: #182226;
    background-image: none;
}

.section-posting .submit-buttons input.button2:hover,
.section-posting .submit-buttons input.button2:focus-visible {
    color: #fff;
    border-color: #77868b;
    background: #1b272a;
}

/* v1.1.9: fit the footer links to their text, not the former brand slot. */
.page-footer .navbar,
.section-index .page-footer .navbar {
    height: auto;
    min-height: 0;
    padding-top: 8px;
    padding-bottom: 8px;
}

.page-footer .navbar > .inner {
    min-height: 0;
}

/* phpBB's content-box button height plus padding made topic controls 52px tall. */
.section-viewtopic .action-bar .button,
.section-viewtopic .actions-jump .button {
    box-sizing: border-box;
    height: auto;
    min-height: 36px;
    padding: 7px 10px;
}

@media (max-width: 700px) {
    .page-footer .navbar,
    .section-index .page-footer .navbar {
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .section-viewtopic .action-bar .button,
    .section-viewtopic .actions-jump .button {
        min-height: 44px;
    }
}

/* v1.1.10: apply the same compact sizing to forum-list controls. */
.section-viewforum .action-bar .button,
.section-viewforum .actions-jump .button {
    box-sizing: border-box;
    height: auto;
    min-height: 36px;
    padding: 7px 10px;
}

.section-viewforum .action-bar .pagination > ul > li > a.button,
.section-viewforum .action-bar .pagination > ul > li.active > span {
    display: inline-flex;
    box-sizing: border-box;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    padding: 5px 8px;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    vertical-align: middle;
}

@media (max-width: 700px) {
    .section-viewforum .action-bar .button,
    .section-viewforum .actions-jump .button,
    .section-viewforum .action-bar .pagination > ul > li > a.button,
    .section-viewforum .action-bar .pagination > ul > li.active > span {
        min-height: 44px;
    }
    .section-viewforum .action-bar .pagination > ul > li > a.button,
    .section-viewforum .action-bar .pagination > ul > li.active > span {
        height: 44px;
        min-width: 44px;
    }
}

/* v1.1.11: let desktop index utility panels follow their actual content. */
@media (min-width: 901px) {
    .section-index form.headerspace {
        margin-top: 8px;
    }

    .section-index form.headerspace > h3 {
        margin-top: 0;
        margin-bottom: 3px;
    }

    .section-index fieldset.quick-login {
        margin: 0 0 10px;
        padding: 7px 14px;
        align-items: center;
    }

    .section-index .sr-stats-grid {
        height: auto;
        min-height: 0;
        margin: 10px 0;
    }

    .section-index .sr-stats-grid .stat-block {
        min-height: 0;
        padding: 10px 16px;
    }

    .section-index .sr-stats-grid .stat-block h3 {
        margin-bottom: 6px;
    }

    .section-index .sr-stats-grid .sr-totals {
        margin-top: 4px;
    }
}

/* v1.1.12: child-forum lists need the same bounded columns as the index. */
.section-viewforum .forabg ul.topiclist dl.row-item {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) 92px 104px minmax(260px, 32%);
    min-height: 64px;
    align-items: center;
    margin: 0;
}

.section-viewforum .forabg ul.topiclist dl.row-item::before {
    position: static;
    grid-column: 1;
    grid-row: 1;
    place-self: center;
    margin: 0;
    transform: none;
}

.section-viewforum .forabg ul.topiclist dl.row-item > dt,
.section-viewforum .forabg ul.topiclist dl.row-item > dd {
    float: none;
    width: auto;
    min-width: 0;
    min-height: 0;
    height: auto;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.section-viewforum .forabg ul.topiclist li.row {
    height: auto;
    min-height: 64px;
}

.section-viewforum .forabg ul.topiclist li.row dl.row-item > dt {
    display: flex;
    grid-column: 2;
    grid-row: 1;
    align-items: center;
    min-height: 64px;
}

.section-viewforum .forabg ul.topiclist li.row dl.row-item > dt .list-inner {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 8px 12px 8px 0;
    box-sizing: border-box;
}

.section-viewforum .forabg ul.topiclist li.row dl.row-item > dt .list-inner > strong {
    color: var(--sr-muted);
}

.section-viewforum .forabg ul.topiclist li.row dl.row-item > .topics,
.section-viewforum .forabg ul.topiclist li.row dl.row-item > .posts {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 64px;
    border-left: 1px solid var(--sr-line-soft);
}
.section-viewforum .forabg ul.topiclist li.row dl.row-item > .topics { grid-column: 3; }
.section-viewforum .forabg ul.topiclist li.row dl.row-item > .posts { grid-column: 4; }

.section-viewforum .forabg ul.topiclist li.row dl.row-item > .lastpost {
    display: grid;
    grid-column: 5;
    grid-row: 1;
    grid-template-columns: 44px minmax(0, 1fr);
    min-height: 64px;
    align-items: center;
    padding: 6px 8px;
    border-left: 1px solid var(--sr-line-soft);
}

.section-viewforum .forabg .sr-lastpost-avatar {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--sr-line);
    border-radius: 50%;
    background: var(--sr-panel-raised);
}

.section-viewforum .forabg .sr-lastpost-avatar img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover;
}

.section-viewforum .forabg .sr-lastpost-copy {
    display: block;
    min-width: 0;
    overflow: hidden;
    line-height: 1.35;
}

.section-viewforum .forabg .sr-lastpost-copy .lastsubject {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
}

.section-viewforum .forabg ul.topiclist li.header dl.row-item {
    min-height: 40px;
}
.section-viewforum .forabg ul.topiclist li.header dl.row-item::before { display: none !important; }
.section-viewforum .forabg ul.topiclist li.header dl.row-item > dt { grid-column: 1 / 3; }
.section-viewforum .forabg ul.topiclist li.header dl.row-item > dt .list-inner {
    width: 100%;
    min-width: 0;
    padding: 0 12px;
    box-sizing: border-box;
}
.section-viewforum .forabg ul.topiclist li.header dl.row-item > dd {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
}
.section-viewforum .forabg ul.topiclist li.header dl.row-item > .topics { grid-column: 3; }
.section-viewforum .forabg ul.topiclist li.header dl.row-item > .posts { grid-column: 4; }
.section-viewforum .forabg ul.topiclist li.header dl.row-item > .lastpost {
    grid-column: 5;
    justify-content: flex-start;
    padding-left: 8px;
}

@media (max-width: 700px) {
    .section-viewforum .forabg ul.topiclist li.row dl.row-item {
        grid-template-columns: 44px minmax(0, 1fr);
    }
    .section-viewforum .forabg ul.topiclist li.row dl.row-item > dt {
        grid-column: 2;
    }
    .section-viewforum .forabg ul.topiclist li.row dl.row-item > .topics,
    .section-viewforum .forabg ul.topiclist li.row dl.row-item > .posts,
    .section-viewforum .forabg ul.topiclist li.row dl.row-item > .lastpost {
        display: none;
    }
    .section-viewforum .forabg ul.topiclist li.header dl.row-item {
        grid-template-columns: minmax(0, 1fr);
    }
    .section-viewforum .forabg ul.topiclist li.header dl.row-item > dt { grid-column: 1; }
    .section-viewforum .forabg ul.topiclist li.header dl.row-item > dd { display: none; }
    .section-viewforum .forabg ul.topiclist li.row dt a.subforum {
        display: inline-flex;
        width: auto;
        max-width: 100%;
        margin-right: 8px;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

/* v1.1.13: readable search-result cards, without changing or hiding post text. */
.section-search .search.post .postprofile {
    min-width: 0;
    font-size: 13px;
    line-height: 1.45;
}

.section-search .search.post .postbody {
    min-width: 0;
}

.section-search .search.post .content {
    min-width: 0;
    overflow-wrap: anywhere;
}

@media (min-width: 701px) {
    .section-search .search.post > .inner {
        display: grid;
        grid-template-columns: minmax(185px, 26%) minmax(0, 1fr);
        align-items: stretch;
    }

    .section-search .search.post .postprofile {
        float: none;
        grid-column: 1;
        width: auto;
        margin: 0;
        padding: 15px 16px;
        box-sizing: border-box;
    }

    .section-search .search.post .postbody {
        float: none;
        grid-column: 2;
        width: auto;
        margin: 0;
        padding: 16px 20px 30px;
        box-sizing: border-box;
    }

    .section-search .search.post .searchresults {
        grid-column: 2;
        justify-self: end;
        align-self: end;
        margin: -26px 12px 8px 0;
    }
}

@media (max-width: 700px) {
    .section-search .search.post .postprofile {
        width: 100%;
        margin: 0;
        padding: 12px 14px;
        box-sizing: border-box;
    }

    .section-search .search.post .postbody {
        width: 100%;
        padding: 12px 14px 26px;
        box-sizing: border-box;
    }

    .section-search .action-bar .search-box form {
        display: block;
        width: 100%;
    }

    .section-search .action-bar .search-box form > fieldset {
        display: grid;
        width: 100%;
        grid-template-columns: minmax(0, 1fr) 44px 44px;
    }

    .section-search .action-bar .search-box .inputbox {
        float: none;
        width: 100%;
        min-width: 0;
        height: 44px;
    }

    .section-search .action-bar .search-box .button {
        float: none;
        width: 44px;
        min-width: 44px;
        height: 44px;
        min-height: 44px;
        box-sizing: border-box;
    }
}

/* v1.1.14: keep search-page controls level and remove the hero watermark
   behind the compact header without changing the landing-page composition. */
body.section-search:not(.section-index):not(.section-viewforum):not(.section-viewtopic) .headerbar {
    background-image: linear-gradient(105deg, #030708 0%, #111b1e 62%, #071014 100%);
    background-position: center;
    background-size: cover;
}

.section-search .action-bar .search-box form > fieldset {
    box-sizing: border-box;
}

@media (min-width: 701px) {
    .section-search .action-bar .search-box,
    .section-search .action-bar .search-box form > fieldset {
        height: 36px;
    }

    .section-search .action-bar .search-box form > fieldset {
        display: flex;
        align-items: stretch;
    }

    .section-search .action-bar .search-box .inputbox,
    .section-search .action-bar .search-box .button {
        box-sizing: border-box;
        height: 36px;
        min-height: 36px;
        margin: 0;
    }

    .section-search .action-bar .search-box .inputbox { width: 150px; }
    .section-search .action-bar .search-box .button {
        display: inline-flex;
        width: 44px;
        align-items: center;
        justify-content: center;
        padding: 0;
    }
}

.section-search .action-bar .pagination > ul > li:not(.ellipsis) > a,
.section-search .action-bar .pagination > ul > li.active > span {
    display: inline-flex;
    box-sizing: border-box;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    align-items: center;
    justify-content: center;
    padding: 5px 8px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    vertical-align: middle;
}

@media (max-width: 700px) {
    .section-search .action-bar .pagination > ul > li:not(.ellipsis) > a,
    .section-search .action-bar .pagination > ul > li.active > span {
        min-width: 44px;
        height: 44px;
        min-height: 44px;
    }
}

/* v1.1.15: consistent roles, not one size for all forum text. */
:where(.section-ucp, .section-memberlist) .panel fieldset.fields1,
:where(.section-ucp, .section-memberlist) .panel fieldset.fields1 :is(dt, dd, label),
:where(.section-ucp, .section-memberlist) .panel fieldset.fields1 dl:hover dt label {
    color: var(--sr-text);
}

:where(.section-ucp, .section-memberlist) .panel fieldset.fields1 :is(dt, dd, label),
.section-ucp .login-title,
.section-memberlist .login-title,
.section-ucp .ucp-title,
.section-search .searchresults-title,
.section-viewforum .forum-title,
.section-posting .page-body h2 {
    font-family: var(--sr-body);
}

:where(.section-ucp, .section-memberlist) .panel fieldset.fields1 :is(dt, dd, label) {
    font-size: 14px;
    line-height: 1.4;
}

:where(.section-ucp, .section-memberlist) .panel fieldset.fields1 :is(input.button1, input.button2) {
    box-sizing: border-box;
    min-width: 44px;
    min-height: 36px;
    padding: 6px 12px;
    font: 700 13px/1.2 var(--sr-body);
}

:where(.section-viewtopic, .section-search) .postbody .content,
.section-search .search.post .content {
    font-family: var(--sr-body);
}

:where(.section-viewtopic, .section-search, .section-posting, .section-ucp, .section-faq) :is(.button, .button1, .button2),
.section-viewforum .action-bar .button {
    font-family: var(--sr-body);
    font-size: 13px;
}

/* A miniature page link is still a link: enlarge its hit area without
   altering the main pagination or touching the subject link. */
.section-search .forumbg li.row .pagination a.button {
    display: inline-flex;
    box-sizing: border-box;
    min-width: 32px;
    min-height: 32px;
    align-items: center;
    justify-content: center;
    padding: 4px 7px;
    font: 600 12px/1 var(--sr-body);
}

@media (min-width: 701px) {
    .section-posting .submit-buttons :is(input.button1, input.button2),
    .jumpbox .dropdown-trigger,
    .section-search .action-bar .dropdown-trigger {
        box-sizing: border-box;
        height: 36px;
        min-height: 36px;
    }
}

@media (max-width: 700px) {
    :where(.section-ucp, .section-memberlist) .panel fieldset.fields1 :is(input.button1, input.button2),
    .section-posting .submit-buttons :is(input.button1, input.button2),
    .jumpbox .dropdown-trigger,
    .section-search .action-bar .dropdown-trigger {
        box-sizing: border-box;
        min-height: 44px;
    }

    .section-search .forumbg li.row .pagination a.button {
        min-width: 44px;
        min-height: 44px;
    }

    .section-ucp .tabs {
        flex-wrap: wrap;
        overflow: visible;
        white-space: normal;
    }
    .section-ucp .tabs ul {
        flex-wrap: wrap;
        min-width: 0;
        white-space: normal;
    }
    .section-ucp :is(.ucp-title, .cp-main h2) {
        overflow-wrap: anywhere;
        text-wrap: balance;
    }

    .section-viewforum .action-bar.bar-top > a.button {
        display: inline-flex;
        box-sizing: border-box;
        height: 44px;
        min-height: 44px;
        align-items: center;
        white-space: nowrap;
    }
}

/* v1.1.16: keep the profile-link brackets together and complete page-title
   typography for FAQ (phpBB identifies it as section-app/help/faq). */
.section-ucp .cp-main h2 > span.small {
    display: inline-block;
    max-width: 100%;
    white-space: nowrap;
    vertical-align: baseline;
}

body[class~="section-app/help/faq"] .page-body h2,
body[class~="section-app/help/faq"] .page-body h3 {
    font-family: var(--sr-body);
}
