/* Mobile-first layout for MyBB theme 5. Loaded after the theme's legacy sheets. */
:root {
  --pbf-page-gap: 12px;
  --pbf-card-gap: 10px;
  --pbf-touch-size: 44px;
}

html, body, body #container, body .wrapper, body #content, body #content > .wrapper {
  min-width: 0 !important;
  box-sizing: border-box;
}
html, body { width: 100%; height: auto; min-height: 100%; overflow: visible; }
html body { position: static; inset: auto; width: 100%; height: auto; min-height: 100dvh; margin: 0; overflow: visible; background-attachment: scroll !important; }
body #container { position: static; inset: auto; display: flex; flex-direction: column; width: 100%; min-height: 100dvh; height: auto; overflow: visible; }
body .wrapper, body #content > .wrapper { width: min(calc(100% - 2 * var(--pbf-page-gap)), 1500px) !important; max-width: 1500px !important; margin-inline: auto !important; }
body #content { flex: 1 0 auto; width: 100% !important; min-height: 0; padding: 12px 0 24px !important; overflow: visible !important; }
html body #footer { display: none !important; visibility: hidden !important; }

/* The existing masthead is created by global.php. Without JavaScript, the full header stays visible. */
html body #header { display: block !important; width: 100%; }
body #logo { padding: 8px 0; }
body #logo > .wrapper { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
body #logo .pbf-brand { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
body #logo .top_links { flex-wrap: wrap !important; justify-content: center !important; }
body #panel .upper .wrapper, body #panel .lower .wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
body #panel form, body #panel fieldset { max-width: 100%; min-width: 0; box-sizing: border-box; }
body #panel input { max-width: 100%; }
html body .pbf-mobile-masthead { position: sticky; top: 0; z-index: 100; display: flex !important; align-items: center; justify-content: space-between; gap: 8px; min-height: 60px; padding: 8px var(--pbf-page-gap); background: rgba(35,43,48,.98) !important; border-bottom: 1px solid #59636a !important; }
html body .pbf-mobile-site-title, html body .pbf-mobile-site-title:link, html body .pbf-mobile-site-title:visited { display: block !important; flex: 0 1 auto; width: min(230px, calc(100vw - 88px)); height: 48px; min-width: 0; max-width: calc(100% - 52px); overflow: hidden; text-indent: -9999px; color: transparent !important; font-size: 0; line-height: 0; text-decoration: none; background: url(/images/pbf-gothic/logo.png?v=1) left center / contain no-repeat; }
html body #container .pbf-mobile-masthead .pbf-mobile-menu-toggle,
html body #container #header .pbf-header-action { width: var(--pbf-touch-size) !important; min-width: var(--pbf-touch-size) !important; height: var(--pbf-touch-size) !important; min-height: var(--pbf-touch-size) !important; flex: 0 0 var(--pbf-touch-size) !important; }
html body:has(.pbf-mobile-masthead):not(.pbf-mobile-nav-open) #header { display: none !important; }
html body.pbf-mobile-nav-open #header { display: block !important; }
body.pbf-mobile-nav-open #logo .pbf-brand { display: none; }
body.pbf-mobile-nav-open #logo > .wrapper { justify-content: center; }
body.pbf-mobile-nav-open #panel .upper .wrapper { justify-content: center; text-align: center; }
body .pbf-mobile-menu-toggle:focus-visible, body #header .pbf-header-action:focus-visible { outline: 2px solid #e3ebf6 !important; outline-offset: 2px !important; }

/* Shared content and form sizing. */
body #content, body #content > .wrapper, body #content .tborder, body #content .tborder td,
body #content .tborder th, body #content .post, body #content .post_body { min-width: 0; max-width: 100%; box-sizing: border-box; }
html body #content .navigation { width: 100% !important; max-width: 100% !important; white-space: normal !important; overflow: visible !important; flex-wrap: wrap !important; overflow-wrap: anywhere; }
body #content img, body #content video, body #content iframe, body #content object, body #content embed, body #content svg { max-width: 100%; height: auto; }
body #content input, body #content select, body #content textarea, body #content button { max-width: 100%; box-sizing: border-box; }
body #content input.textbox, body #content input[type="text"], body #content input[type="email"],
body #content input[type="password"], body #content textarea, body #content select { width: min(100%, 100%); min-width: 0; }
body #content .float_left, body #content .float_right { max-width: 100%; }
body #content .pagination, body #content .pagination .pages { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; max-width: 100%; }
body #content .pagination a, body #content .pagination .pagination_current { min-height: 32px; display: inline-flex; align-items: center; justify-content: center; }
body #content .tborder { width: 100% !important; }
body #content td, body #content th { overflow-wrap: anywhere; }
body #content .smalltext, body #content .post_body, body #content .signature, body #content .pm_alert { overflow-wrap: anywhere; }
body #content .post_body pre, body #content .post_body code, body #content .post_body .mycode_code,
body #content .post_body .mycode_quote, body #content .post_body blockquote { max-width: 100%; overflow-x: auto; white-space: pre-wrap; overflow-wrap: anywhere; }
body #content .post_body table { display: block; max-width: 100%; overflow-x: auto; }
body #content .post_body img { width: auto; height: auto !important; }
body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status) > td { background-color: #fff !important; }
body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status):is(:hover,:focus-within) > td { background-color: rgba(0,0,0,.66) !important; }

/* Forum and topic lists: one readable card per row, retaining every action. */
body #content table.tborder:has(.forum_status), body #content table.tborder:has(.thread_status) { display: block; border-spacing: 0; }
body #content table.tborder:has(.forum_status) > tbody, body #content table.tborder:has(.thread_status) > tbody,
body #content table.tborder:has(.forum_status) > thead, body #content table.tborder:has(.thread_status) > thead { display: block; width: 100%; }
html body #content table.tborder:has(.forum_status) tr:has(.forum_status),
html body #content table.tborder:has(.thread_status) tr:has(.thread_status) {
  display: grid !important; width: calc(100% - 2 * var(--pbf-card-gap)) !important; margin: var(--pbf-card-gap); padding: 10px 12px !important;
  border: 1px solid #d6d3cd !important; border-radius: 4px; background-color: rgba(255,255,255,.95) !important;
  column-gap: 8px; row-gap: 2px; box-sizing: border-box;
}
body #content table.tborder:has(.forum_status) tr:has(.forum_status) { grid-template-columns: 44px max-content minmax(0,1fr); grid-template-areas: "icon subject subject" "icon topics posts" "icon last last"; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) { grid-template-columns: 44px max-content minmax(0,1fr); grid-template-areas: "icon subject subject" "icon replies views" "icon last last" "icon mod mod"; }
html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td,
html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td { display: block !important; float: none; width: auto !important; min-width: 0; margin: 0; padding: 0 !important; border: 0 !important; background: transparent !important; text-align: left !important; white-space: normal !important; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(1) { grid-area: icon; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(2) { grid-area: subject; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(3) { grid-area: topics; font-size: 12px; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(4) { grid-area: posts; font-size: 12px; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) { grid-area: last; padding-top: 6px !important; border-top: 1px solid #d6d3cd !important; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(3)::before { content: "Tópicos: "; opacity: .8; }
body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(4)::before { content: "Mensagens: "; opacity: .8; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(1) { grid-area: icon; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(2) { grid-area: subject; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(3) { grid-area: replies; font-size: 12px; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(4) { grid-area: views; font-size: 12px; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(5) { grid-area: last; padding-top: 6px !important; border-top: 1px solid #d6d3cd !important; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(6) { grid-area: mod; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(3)::before { content: "Respostas: "; opacity: .8; }
body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(4)::before { content: "Visualizações: "; opacity: .8; }
@media (max-width: 1023px) {
  html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) {
    width: calc(100% - 2 * var(--pbf-card-gap)) !important;
    grid-template-columns: 44px max-content minmax(0,1fr) !important;
    grid-template-areas: "icon subject subject" "icon replies views" "icon last last" "icon mod mod" !important;
  }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(2) { width: 100% !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:first-child,
  html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td:first-child {
    align-self: center; justify-self: center; width: 44px !important; padding: 0 !important; text-align: center !important;
  }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(3),
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(4),
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(3) *,
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(4) * { font-size: 12px !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5),
  html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td:nth-child(5) {
    padding-top: 2px !important; border-top: 0 !important; text-align: left !important;
  }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) br:last-of-type { display: none; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) a { font-size: 11px !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) a:first-of-type { font-size: 14px !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) .smalltext,
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(5) .smalltext > a:first-child {
    overflow: visible !important; white-space: normal !important; text-overflow: clip !important; overflow-wrap: anywhere !important;
  }
}
body #content table.tborder:has(.forum_status) tr:has(.forum_status) .smalltext,
body #content table.tborder:has(.thread_status) tr:has(.thread_status) .smalltext { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
html body #content table.tborder:has(.forum_status) tr:has(.forum_status) .forumdesc,
html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(2) > .smalltext { white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
body #content table.tborder:has(.forum_status) tr:has(td.tcat),
body #content table.tborder:has(.thread_status) tr:has(td.tcat) { display: none; }
@media (max-width: 1023px) {
html body #content table.tborder.tborder:has(.thread_status) tr:has(> td.tcat) { display: none !important; }
html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td { display: block !important; padding: 3px 0 !important; min-height: 0 !important; border: 0 !important; background: transparent !important; }
html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td:nth-child(5) { padding-top: 2px !important; border-top: 0 !important; }
html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:first-child,
html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:last-child,
html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td:first-child,
html body #content table.tborder.clear:has(tr.inline_row) tr.inline_row:has(.thread_status) > td:last-child { border: 0 !important; }
}
body #content table.tborder:has(.forum_status) tr:has(td.thead),
body #content table.tborder:has(.thread_status) tr:has(td.thead) { display: block; }
body #content table.tborder:has(.forum_status) tr:has(td.thead) > td,
body #content table.tborder:has(.thread_status) tr:has(td.thead) > td { display: block; width: 100%; box-sizing: border-box; }

@media (max-width: 767px) {
  body #content table.tborder:has(> thead .expcolimage) > thead > tr > td.thead > div:not(.expcolimage) > .smalltext,
  body #content table.tborder:has(> thead .expcolimage) > thead > tr > td.thead > div:not(.expcolimage) > br,
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(2) > .smalltext,
  body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(2) > div > div:has(.author, .thread_start_datetime) {
    display: none !important;
  }
  body #content table.tborder:has(#posts) td.tfoot > .float_right:has(> form[action="search.php"] > input[name="action"][value="thread"]) {
    display: none !important;
  }
}

/* Posts and composer. */
html body #posts > .post { display: grid !important; grid-template-columns: minmax(0,1fr) !important; grid-template-rows: auto auto minmax(0,1fr) auto !important; padding: 0; }
html body #posts > .post > .post_head { grid-column: 1 !important; grid-row: 1 !important; }
html body #posts > .post > .post_author { grid-column: 1 !important; grid-row: 2 !important; float: none; width: auto; height: auto; min-height: 0; margin: 0; padding: 10px; border-right: 0 !important; border-bottom: 1px solid #d4d0ca !important; }
html body #posts > .post > .post_content { grid-column: 1 !important; grid-row: 3 !important; float: none; width: 100%; padding: 10px !important; }
html body #posts > .post > .post_controls { grid-column: 1 !important; grid-row: 4 !important; display: flex; flex-wrap: wrap; width: 100%; padding: 8px 10px; }
body #posts > .post > .post_controls { width: auto !important; max-width: 100% !important; box-sizing: border-box !important; }
body #posts > .post > .post_author .author_avatar img { width: 72px !important; height: 72px !important; object-fit: cover; margin: 4px 0; }
body #posts > .post > .post_author img.pbf-rank-banner { width: min(220px,100%) !important; height: auto !important; }
body #posts > .post > .post_controls .postbit_buttons { display: flex; flex-wrap: wrap; gap: 6px; }
body #posts > .post > .post_controls .postbit_buttons a { min-height: 40px; display: inline-flex; align-items: center; }
@media (max-width: 767px) {
  html body #posts > .post > .post_author {
    display: grid !important; grid-template-columns: 72px minmax(0,1fr); grid-template-rows: auto auto;
    align-items: start; column-gap: 12px; row-gap: 2px; padding: 10px !important;
  }
  html body #posts > .post > .post_author > .author_avatar {
    grid-column: 1; grid-row: 1 / 3; align-self: center; width: 72px; margin: 0 !important;
  }
  html body #posts > .post > .post_author .author_avatar img {
    display: block; width: 72px !important; height: 72px !important; margin: 0 !important; object-fit: cover !important;
  }
  html body #posts > .post > .post_author > .author_information {
    grid-column: 2; grid-row: 1; min-width: 0; margin: 0 !important; padding: 0 !important; text-align: left !important;
  }
  html body #posts > .post > .post_author > .author_information > br { display: none !important; }
  html body #posts > .post > .post_author .author_information > span.smalltext:has(img.pbf-rank-banner) {
    display: block !important; line-height: 1 !important;
  }
  html body #posts > .post > .post_author img.pbf-rank-banner {
    display: block !important; width: 120px !important; max-width: 100% !important;
    height: auto !important; margin: 2px 0 0 !important;
  }
  html body #posts > .post > .post_author > .author_statistics {
    grid-column: 2; grid-row: 2; min-width: 0; margin: 0 !important; padding: 0 !important;
    font-size: 11px !important; line-height: 1.25 !important; white-space: normal;
  }
  html body #posts > .post > .post_author > .author_statistics > br { display: none !important; }
  html body #posts > .post > .post_controls { gap: 5px; padding: 7px 8px !important; }
  html body #posts > .post > .post_controls .postbit_buttons { gap: 4px !important; }
  html body #posts > .post > .post_controls .postbit_buttons > a {
    box-sizing: border-box !important; height: 36px !important; min-height: 36px !important;
    margin: 0 !important; padding: 4px 4px !important; font-size: 11px !important;
    line-height: 1.1 !important; white-space: nowrap; text-decoration: none !important;
    color: #315b68 !important; background: transparent !important; border: 0 !important;
    box-shadow: none !important; text-shadow: none !important;
  }
  html body #posts > .post > .post_controls .postbit_buttons > a:hover,
  html body #posts > .post > .post_controls .postbit_buttons > a:focus-visible {
    color: #244752 !important; background: transparent !important; text-decoration: underline !important;
  }
  html body #posts > .post > .post_controls .postbit_buttons > a:focus-visible { outline: 2px solid #315b68 !important; outline-offset: 1px; }
}
body .sceditor-container, body .sceditor-toolbar, body .sceditor-group, body .sceditor-container iframe,
body #content textarea[id="message"], body #content #message { max-width: 100% !important; box-sizing: border-box; }
body .sceditor-toolbar { white-space: normal; }
body .sceditor-container iframe { width: 100% !important; }

/* Forms stack labels and fields; data tables keep their own scroll area. */
body #content table.tborder:has(input,textarea,select):not(:has(.forum_status,.thread_status,#posts_container)) > tbody > tr:not(:has(.thead,.tcat,.tfoot)) { display: grid; grid-template-columns: minmax(0,1fr); }
body #content table.tborder:has(input,textarea,select):not(:has(.forum_status,.thread_status,#posts_container)) > tbody > tr:not(:has(.thead,.tcat,.tfoot)) > td { display: block; width: 100% !important; min-width: 0; text-align: left !important; }
body #content .pbf-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
body #content .pbf-table-scroll > table { width: 100% !important; table-layout: fixed; }
body #content .pbf-table-scroll.pbf-table-wide > table { min-width: max-content; table-layout: auto; }
body #content .pbf-table-scroll.pbf-table-wide::before { content: "Deslize para ver mais colunas →"; display: block; position: sticky; left: 0; width: max-content; padding: 4px 6px; color: #59646a; background: #fff; font-size: 11px; }
body #content .pbf-table-scroll img[src*="rank-banners/"] { width: 220px !important; max-width: 100% !important; height: auto !important; }
@media (max-width: 1023px) {
  html body #content #quick_reply_form table.tborder > thead,
  html body #content #quick_reply_form table.tborder > thead > tr,
  html body #content #quick_reply_form table.tborder > thead > tr > td.thead {
    display: block !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important;
    box-sizing: border-box !important;
  }
  html body #content #quick_reply_form table.tborder > thead > tr > td.thead > div:not(.expcolimage) { white-space: nowrap !important; }
}
body #content form > table.tborder:has(input,textarea,select) { display: block; width: 100% !important; }
body #content form > table.tborder:has(input,textarea,select) > tbody { display: block; width: 100%; }
body #content form > table.tborder:has(input,textarea,select) > tbody > tr { display: block; width: 100%; }
body #content form > table.tborder:has(input,textarea,select) > tbody > tr > td { display: block; width: 100% !important; text-align: left !important; }
body #content .usercp_nav, body #content .modcp_nav { max-width: 100%; }
body #content .usercp_nav_item, body #content .modcp_nav_item { min-height: 36px; box-sizing: border-box; }
body #content .modqueue_controls { float: none; width: auto; max-width: 100%; }
body #content .pmspace { float: none; margin: 8px 0; }
body #content .select2-container, body #content .select2-container-multi,
body #content .select2-choices, body #content .select2-search-field,
body #content .select2-search-field .select2-input { width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
body #content .pbf-control-menu { max-width: 100%; }
body #content .pbf-control-menu > summary { display: list-item; min-height: 44px; padding: 12px; box-sizing: border-box; color: #263238; background: #f1efec; border: 1px solid #d4d0ca; font-weight: 700; cursor: pointer; }
body #content .pbf-control-menu > summary:focus-visible { outline: 2px solid #315b68; outline-offset: 2px; }

@media (max-width: 767px) {
  body #content table.pbf-control-layout, body #content table.pbf-control-layout > tbody,
  body #content table.pbf-control-layout > tbody > tr,
  body #content table.pbf-control-layout > tbody > tr > td { display: block !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
  body #content table.pbf-control-layout > tbody > tr > td { padding: 0 !important; vertical-align: top; }
  body #content table.pbf-control-layout > tbody > tr > td:first-child { margin-bottom: 12px; }
  body #content table.pbf-control-layout .pbf-control-menu > .pbf-table-scroll,
  body #content table.pbf-control-layout .pbf-control-menu > table.tborder { width: 100% !important; max-width: 100% !important; }
  body #content table.pbf-control-layout > tbody > tr > td:last-child > table.tborder,
  body #content table.pbf-control-layout > tbody > tr > td:last-child > table.tborder > tbody,
  body #content table.pbf-control-layout > tbody > tr > td:last-child > table.tborder > tbody > tr,
  body #content table.pbf-control-layout > tbody > tr > td:last-child > table.tborder > tbody > tr > td { display: block !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
  body #content table.pbf-control-layout > tbody > tr > td:last-child > table.tborder > tbody > tr > td { text-align: left !important; }
  body #content table.pbf-usercp-layout > tbody > tr > td:last-child > .pbf-table-scroll:first-child > table.tborder,
  body #content table.pbf-usercp-layout > tbody > tr > td:last-child > .pbf-table-scroll:first-child > table.tborder > tbody,
  body #content table.pbf-usercp-layout > tbody > tr > td:last-child > .pbf-table-scroll:first-child > table.tborder > tbody > tr,
  body #content table.pbf-usercp-layout > tbody > tr > td:last-child > .pbf-table-scroll:first-child > table.tborder > tbody > tr > td { display: block !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
}

/* Member search results keep the name prominent and expose the other columns as labelled facts. */
@media (max-width: 1023px) {
body #content .pbf-memberlist-table, body #content .pbf-memberlist-table > tbody { display: block; width: 100%; }
body #content .pbf-memberlist-table tr:has(td.thead) { display: block; }
body #content .pbf-memberlist-table tr:has(td.thead) > td { display: block; width: 100%; }
body #content .pbf-memberlist-table tr:has(td.tcat) { display: none; }
body #content .pbf-memberlist-table tr:has(>td.trow1), body #content .pbf-memberlist-table tr:has(>td.trow2) { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 4px 10px; padding: 10px; border-bottom: 1px solid #405a7b; }
body #content .pbf-memberlist-table tr:has(>td.trow1) > td, body #content .pbf-memberlist-table tr:has(>td.trow2) > td { display: block; width: auto !important; min-width: 0; padding: 0 !important; border: 0; background: transparent; text-align: left !important; }
body #content .pbf-memberlist-table tr:has(>td.trow1) > td:first-child, body #content .pbf-memberlist-table tr:has(>td.trow2) > td:first-child { grid-column: 1; grid-row: 1 / span 2; }
body #content .pbf-memberlist-table tr:has(>td.trow1) > td:not(:first-child), body #content .pbf-memberlist-table tr:has(>td.trow2) > td:not(:first-child) { grid-column: 2; }
body #content .pbf-memberlist-table tr:has(>td.trow1) > td:nth-child(n+3)::before, body #content .pbf-memberlist-table tr:has(>td.trow2) > td:nth-child(n+3)::before { content: attr(data-pbf-label) ': '; opacity: .75; }
body #content .pbf-memberlist-table tr:has(>td.trow1) > td:first-child img, body #content .pbf-memberlist-table tr:has(>td.trow2) > td:first-child img { width: 64px !important; max-width: 100% !important; height: auto !important; }
}

@media (max-width: 1023px) {
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status) { position: relative; isolation: isolate; overflow: hidden; background-image: none !important; }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status)::before,
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status)::after { content: ""; position: absolute; inset: 0; z-index: 0; opacity: 0; pointer-events: none; transition: opacity 650ms ease, transform 650ms cubic-bezier(.25,.7,.35,1); }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status)::before { background: var(--pbf-special-image) center / cover no-repeat; transform: scale(1.16); }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status)::after { background: rgba(0,0,0,.66); }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status) > td { position: relative; z-index: 1; background: transparent !important; }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status):is(:hover,:focus-within)::before,
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status):is(:hover,:focus-within)::after { opacity: 1; transition-duration: 340ms; }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status):is(:hover,:focus-within)::before { transform: scale(1.05); transition-timing-function: cubic-bezier(.2,1.28,.4,1); }
  body #content table.tborder tr.pbf-special-hover:has(.forum_status,.thread_status):is(:hover,:focus-within) > td { background: transparent !important; }
}

@media (min-width: 768px) {
  :root { --pbf-page-gap: 20px; }
  html body #posts > .post { grid-template-columns: minmax(180px,26%) minmax(0,1fr) !important; grid-template-rows: auto minmax(0,1fr) auto !important; }
  html body #posts > .post > .post_author { grid-column: 1 !important; grid-row: 2 / span 2 !important; align-self: stretch; border-right: 1px solid #d4d0ca !important; border-bottom: 0 !important; }
  html body #posts > .post > .post_content { grid-column: 2 !important; grid-row: 2 !important; }
  html body #posts > .post > .post_controls { grid-column: 2 !important; grid-row: 3 !important; }
  body #posts > .post > .post_author .author_avatar img { width: min(160px,100%) !important; height: auto !important; }
  body #content .pbf-control-menu > summary { display: none; }
}

@media (min-width: 1024px) {
  :root { --pbf-page-gap: 28px; --pbf-touch-size: 32px; }
  body #content .pbf-table-scroll.pbf-table-wide::before { display: none; content: none; }
  html body .pbf-mobile-masthead { display: none !important; }
  html body:has(.pbf-mobile-masthead):not(.pbf-mobile-nav-open) #header { display: flex !important; }
  html, body { height: 100%; overflow: hidden; }
  body { position: fixed; inset: 0; height: auto; background-attachment: fixed; }
  body #container { position: fixed; inset: 0; min-height: 0; height: auto; overflow: hidden; }
  body #content { flex: 1 1 auto; padding: 20px 10px 76px !important; overflow-y: auto !important; }
  body #logo { padding: 12px 0; }
  body #logo > .wrapper { flex-wrap: nowrap; }
  html body #content .navigation { width: max-content !important; max-width: 100% !important; white-space: nowrap !important; flex-wrap: nowrap !important; }
  body #content table.tborder:has(.forum_status), body #content table.tborder:has(.thread_status),
  body #content table.tborder:has(.forum_status) > tbody, body #content table.tborder:has(.thread_status) > tbody,
  body #content table.tborder:has(.forum_status) > thead, body #content table.tborder:has(.thread_status) > thead { display: table; }
  body #content table.tborder:has(.forum_status) > tbody, body #content table.tborder:has(.thread_status) > tbody { display: table-row-group; }
  body #content table.tborder:has(.forum_status) > thead, body #content table.tborder:has(.thread_status) > thead { display: table-header-group; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status), html body #content table.tborder:has(.thread_status) tr:has(.thread_status),
  body #content table.tborder:has(.forum_status) tr:has(td.tcat), body #content table.tborder:has(.thread_status) tr:has(td.tcat),
  body #content table.tborder:has(.forum_status) tr:has(td.thead), body #content table.tborder:has(.thread_status) tr:has(td.thead) { display: table-row !important; width: auto !important; margin: 0; padding: 0 !important; border: 0 !important; border-radius: 0; background-color: transparent !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td, html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td,
  html body #content table.tborder:has(.forum_status) tr:has(td.thead) > td, html body #content table.tborder:has(.thread_status) tr:has(td.thead) > td { display: table-cell !important; width: auto; padding: 8px !important; border: inherit; text-align: inherit; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td { padding: 14px 10px !important; background-color: #fff !important; border-top: 1px solid #d6d3cd !important; border-bottom: 1px solid #d6d3cd !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:first-child { padding-left: 18px !important; }
  html body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:last-child { padding-right: 18px !important; }
  html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td.trow1 { background-color: rgba(255,255,255,.9) !important; }
  html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td.trow2 { background-color: rgba(247,246,243,.94) !important; }
  html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:first-child { padding-left: 18px !important; }
  html body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:last-child { padding-right: 18px !important; }
  body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(3)::before,
  body #content table.tborder:has(.forum_status) tr:has(.forum_status) > td:nth-child(4)::before,
  body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(3)::before,
  body #content table.tborder:has(.thread_status) tr:has(.thread_status) > td:nth-child(4)::before { content: none; }
  html body #posts > .post { grid-template-columns: minmax(165px,17%) minmax(0,1fr) !important; }
  body #posts > .post > .post_author .author_avatar img { width: 200px !important; height: 200px !important; }
  body #content table.tborder:has(input,textarea,select):not(:has(.forum_status,.thread_status,#posts_container)) > tbody > tr:not(:has(.thead,.tcat,.tfoot)) { display: table-row; }
  body #content table.tborder:has(input,textarea,select):not(:has(.forum_status,.thread_status,#posts_container)) > tbody > tr:not(:has(.thead,.tcat,.tfoot)) > td { display: table-cell; width: auto; }
  body #content form > table.tborder:has(input,textarea,select) { display: table; }
  body #content form > table.tborder:has(input,textarea,select) > tbody { display: table-row-group; }
  body #content form > table.tborder:has(input,textarea,select) > tbody > tr { display: table-row; }
  body #content form > table.tborder:has(input,textarea,select) > tbody > tr > td { display: table-cell; width: auto; }
}

@media (prefers-reduced-motion: reduce) {
  body .pbf-mobile-masthead, body #content .pbf-special-hover, body #content .pbf-special-hover *,
  body #content .pbf-special-hover::before, body #content .pbf-special-hover::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* MyBB remembers collapsed categories in a cookie and writes display:none inline.
   The theme hides their expand controls, so keep those lists accessible. */
html body #content table.tborder > tbody[id^="cat_"][id$="_e"] {
  display: table-row-group !important;
}
@media (max-width: 1023px) {
  html body #content table.tborder:has(.forum_status) > tbody[id^="cat_"][id$="_e"] {
    display: block !important;
  }
}
