tr td.trow1:first-child,
tr td.trow2:first-child,
tr td.trow_shaded:first-child {
	border-left: 0;
}

tr td.trow1:last-child,
tr td.trow2:last-child,
tr td.trow_shaded:last-child {
	border-right: 0;
}

.tborder {
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
	border-radius: 7px;
}

.tborder tbody tr:last-child > td {
	border-bottom: 0;
}

.tborder tbody tr:last-child > td:first-child {
	-moz-border-radius-bottomleft: 6px;
	-webkit-border-bottom-left-radius: 6px;
	border-bottom-left-radius: 6px;
}

.tborder tbody tr:last-child > td:last-child {
	-moz-border-radius-bottomright: 6px;
	-webkit-border-bottom-right-radius: 6px;
	border-bottom-right-radius: 6px;
}

.thead {
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.thead_collapsed {
	-moz-border-radius-bottomleft: 6px;
	-moz-border-radius-bottomright: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-webkit-border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
}

.thead_left {
	-moz-border-radius-topright: 0;
	-webkit-border-top-right-radius: 0;
	border-top-right-radius: 0;
}

.thead_right {
	-moz-border-radius-topleft: 0;
	-webkit-border-top-left-radius: 0;
	border-top-left-radius: 0;
}

.tcat_menu {
	-moz-border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	border-radius: 0 !important;
}

.tborder tbody:nth-last-child(2) .tcat_collapse_collapsed {
	-moz-border-radius-bottomleft: 6px !important;
	-moz-border-radius-bottomright: 6px !important;
	-webkit-border-bottom-left-radius: 6px !important;
	-webkit-border-bottom-right-radius: 6px !important;
	border-bottom-left-radius: 6px !important;
	border-bottom-right-radius: 6px !important;
}

button,
input.button,
input.textbox,
input.invalid_field,
input.valid_field,
select,
textarea,
.editor_control_bar,
blockquote,
.codeblock,
fieldset,
.pm_alert,
.red_alert,
.popup_menu,
.postbit_buttons > a,
a.button {
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

.post.classic .post_author {
	-moz-border-radius: 0 6px 6px 0;
	-webkit-border-radius: 0 6px 6px 0;
	border-radius: 0 6px 6px 0;
}

.popup_menu .popup_item_container:first-child .popup_item {
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.popup_menu .popup_item_container:last-child .popup_item {
	-moz-border-radius-bottomleft: 6px;
	-moz-border-radius-bottomright: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-webkit-border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
}

.pagination a {
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

.pollbar {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

div.error {
	-moz-border-radius: 6px;
    	-webkit-border-radius: 6px;
   	 border-radius: 6px;
}

/* === rc-theme: RouteConverter site design tokens for MyBB (00022) ===
   Appended to theme1 css3.css (loads last). Source of truth:
   rc-meta/bootstrap-server/assets/mybb-theme.css — applied by mybb-theme.sh.
   Tokens mirror rc-content/tools/templates/base.html.j2 verbatim. */

:root {
  --base: 247 248 251; --surface: 255 255 255; --ink: 11 18 32; --muted: 91 102 120;
  --track: 22 163 74; --route: 2 132 199; --elev: 180 83 9; --onbrand: 255 255 255;
  --hairline: 11 18 32; --hairline-a: 0.10; color-scheme: light;
}
@media (prefers-color-scheme: dark) { :root {
  --base: 11 18 32; --surface: 18 26 43; --ink: 230 236 245; --muted: 154 167 189;
  --track: 74 222 128; --route: 56 189 248; --elev: 245 158 11; --onbrand: 11 18 32;
  --hairline: 255 255 255; --hairline-a: 0.09; color-scheme: dark;
} }
:root[data-theme="dark"] {
  --base: 11 18 32; --surface: 18 26 43; --ink: 230 236 245; --muted: 154 167 189;
  --track: 74 222 128; --route: 56 189 248; --elev: 245 158 11; --onbrand: 11 18 32;
  --hairline: 255 255 255; --hairline-a: 0.09; color-scheme: dark;
}
:root[data-theme="light"] {
  --base: 247 248 251; --surface: 255 255 255; --ink: 11 18 32; --muted: 91 102 120;
  --track: 22 163 74; --route: 2 132 199; --elev: 180 83 9; --onbrand: 255 255 255;
  --hairline: 11 18 32; --hairline-a: 0.10; color-scheme: light;
}

/* --- base --- */
body, #container, table {
  background: rgb(var(--base));
  color: rgb(var(--ink));
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
body { font-size: 13.5px; line-height: 1.55; }
#content { background: rgb(var(--base)); }
a:link, a:visited { color: rgb(var(--route)); }
a:hover, a:active { color: rgb(var(--route)); }
hr { background-color: rgb(var(--hairline) / var(--hairline-a)); color: transparent; height: 1px; }

/* --- layout: site container (relax stock 970px min-width) --- */
.wrapper { width: auto; min-width: 0; max-width: 1100px; margin: 0 auto; padding: 0 24px; }

/* --- header: site-nav look ---
   The customized header template renders TWO bars: a legacy brand div
   (h1 + #sub_header tagline) above the stock #logo menu bar. Restyle the
   h1 as the site brand mark and overlay the menu row beside it. */
#header h1 { width: auto; max-width: 1100px; margin: 0 auto; padding: 0 24px; font-size: 15px; }
#header h1 a { display: inline-flex; align-items: center; gap: 10px; height: 60px;
  color: rgb(var(--ink)); font-weight: 600; }
#header h1 a:hover { text-decoration: none; }
#header h1 a::before {
  content: "R";
  width: 26px; height: 26px; border-radius: 7px;
  display: grid; place-items: center; flex: none;
  color: #fff; font-weight: 800; font-size: 14px;
  background: linear-gradient(135deg, rgb(var(--track)), rgb(var(--route)));
}
#sub_header { display: none; }
#logo {
  background: transparent;
  border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
  padding: 0;
  margin-top: -60px;
}
#logo ul.top_links { display: flex; justify-content: flex-end; align-items: center;
  height: 60px; gap: 22px; margin: 0; padding: 0; font-weight: 400; text-align: right; }
#logo ul.top_links li { margin: 0; display: block; }
#header ul.menu li a { background-image: none !important; padding: 0; }
#logo ul.top_links a { color: rgb(var(--muted)); font-size: 14px; }
#logo ul.top_links a:hover { color: rgb(var(--ink)); text-decoration: none; }

#panel .upper {
  background: rgb(var(--surface)); color: rgb(var(--muted));
  border-top: 0; border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
}
#panel .upper a:link, #panel .upper a:visited, #panel .upper a:hover, #panel .upper a:active {
  color: rgb(var(--ink)); background-image: none !important; padding-left: 0; padding-right: 0;
}
#panel .lower {
  background: rgb(var(--base)); color: rgb(var(--muted));
  border-top: 0; border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
}
#panel .lower a:link, #panel .lower a:visited, #panel .lower a:hover, #panel .lower a:active { color: rgb(var(--muted)); }
#panel .lower ul.panel_links a, #panel .lower ul.user_links a { background-image: none !important; padding-left: 0; }
#search input.button {
  background: rgb(var(--track)); color: rgb(var(--onbrand)); border: 0; font-weight: 600;
}
#search input.textbox { border-color: rgb(var(--hairline) / var(--hairline-a)); }

/* --- breadcrumb --- */
.navigation, .navigation .active { color: rgb(var(--muted)); }

/* --- tables / cards --- */
.tborder {
  background: rgb(var(--surface));
  border: 1px solid rgb(var(--hairline) / var(--hairline-a));
  border-radius: 14px;
}
.thead {
  background: rgb(var(--surface)) none;
  color: rgb(var(--ink));
  border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
  border-top-left-radius: 13px; border-top-right-radius: 13px;
  font-weight: 600;
}
.thead a:link, .thead a:visited, .thead a:hover, .thead a:active { color: rgb(var(--ink)); }
.thead .smalltext { color: rgb(var(--muted)); font-weight: 400; }
.thead input.textbox, .thead select { border: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
.tcat {
  background: rgb(var(--hairline) / 0.05) none;
  color: rgb(var(--muted));
  border-top: 0; border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
  font-size: 11px; text-transform: uppercase; letter-spacing: 0.09em;
}
.tcat a:link, .tcat a:visited, .tcat a:hover, .tcat a:active { color: rgb(var(--muted)); }
.trow1 { background: rgb(var(--surface)); border-color: transparent rgb(var(--hairline) / 0.06) rgb(var(--hairline) / 0.06) transparent; }
.trow2 { background: rgb(var(--hairline) / 0.03); border-color: transparent rgb(var(--hairline) / 0.06) rgb(var(--hairline) / 0.06) transparent; }
.tfoot { background: rgb(var(--hairline) / 0.05); color: rgb(var(--muted)); border-top: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
.tfoot a:link, .tfoot a:visited, .tfoot a:hover, .tfoot a:active { color: rgb(var(--muted)); }
.tborder tbody tr:last-child > td:first-child { border-bottom-left-radius: 13px; }
.tborder tbody tr:last-child > td:last-child { border-bottom-right-radius: 13px; }
.trow_sep { background: rgb(var(--hairline) / 0.06); color: rgb(var(--muted)); border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
.thread_start_datetime { color: rgb(var(--muted)); }
.bottommenu { background: rgb(var(--surface)); color: rgb(var(--ink)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 12px; }

/* --- forms --- */
input.textbox, textarea, select {
  background: rgb(var(--surface)); color: rgb(var(--ink));
  border: 1px solid rgb(var(--hairline) / calc(var(--hairline-a) * 2));
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  border-radius: 10px;
}
input.textbox:focus, textarea:focus, select:focus { outline: 2px solid rgb(var(--track) / 0.5); outline-offset: 0; }
fieldset { border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 12px; }
fieldset.trow1, fieldset.trow2 { border-color: rgb(var(--hairline) / var(--hairline-a)); }

/* --- buttons: form submits + big actions = primary; postbit = ghost --- */
button, input.button {
  background: rgb(var(--track)) none; color: rgb(var(--onbrand));
  border: 1px solid rgb(var(--track)); font-weight: 600;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  border-radius: 10px;
}
button:hover, input.button:hover { border-color: rgb(var(--track)); opacity: 0.92; }
a.button:link, a.button:hover, a.button:visited, a.button:active {
  background: rgb(var(--track)) none; color: rgb(var(--onbrand));
  border: 1px solid rgb(var(--track)); font-weight: 600; border-radius: 10px;
}
.postbit_buttons > a:link, .postbit_buttons > a:hover, .postbit_buttons > a:visited, .postbit_buttons > a:active {
  background: rgb(var(--surface)) none; color: rgb(var(--ink));
  border: 1px solid rgb(var(--hairline) / calc(var(--hairline-a) * 2));
  border-radius: 8px;
}
.postbit_buttons > a:hover { border-color: rgb(var(--track)); }

/* sprite glyphs: a.button glyphs are white (fine on track in light; invert for dark),
   postbit glyphs are dark (fine on light surface; invert for dark) */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) a.button span { filter: invert(1) brightness(0.25); }
  :root:not([data-theme="light"]) .postbit_buttons a span { filter: invert(1) brightness(1.6); }
  :root:not([data-theme="light"]) .expcolimage img { filter: invert(1); }
  :root:not([data-theme="light"]) .quick_jump { filter: invert(1); }
}
:root[data-theme="dark"] a.button span { filter: invert(1) brightness(0.25); }
:root[data-theme="dark"] .postbit_buttons a span { filter: invert(1) brightness(1.6); }
:root[data-theme="dark"] .expcolimage img { filter: invert(1); }
:root[data-theme="dark"] .quick_jump { filter: invert(1); }

/* --- pagination --- */
.pagination a { background: rgb(var(--surface)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 8px; }
.pagination a:hover { background: rgb(var(--track)); color: rgb(var(--onbrand)); border-color: rgb(var(--track)); }
.pagination .pagination_current { color: rgb(var(--ink)); font-weight: 700; }
.drop_go_page { background: rgb(var(--surface)); }
.pagination_breadcrumb { background-color: rgb(var(--surface)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); }

/* --- posts --- */
.post .post_author {
  background: rgb(var(--hairline) / 0.04);
  border-top: 1px solid rgb(var(--hairline) / var(--hairline-a));
  border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a));
}
.post.classic .post_author { border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-left: 0; }
.post .post_author div.author_avatar img { border: 1px solid rgb(var(--hairline) / var(--hairline-a)); background: rgb(var(--surface)); border-radius: 8px; }
.post .post_author div.author_statistics { color: rgb(var(--muted)); }
.post.classic .post_author div.author_statistics { border-top: 1px dotted rgb(var(--hairline) / var(--hairline-a)); }
.post .post_head { border-bottom: 1px dotted rgb(var(--hairline) / var(--hairline-a)); }
.post .post_head span.post_date, .post .post_head span.edited_post a { color: rgb(var(--muted)); }
.post .post_head span.edited_post { color: rgb(var(--muted)); }
.post_content .signature { border-top: 1px dotted rgb(var(--hairline) / var(--hairline-a)); }
.post .post_meta, .post .post_meta a:link, .post .post_meta a:visited, .post .post_meta a:hover, .post .post_meta a:active { color: rgb(var(--muted)); }
.post_controls { background: rgb(var(--hairline) / 0.04); border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a)); }

/* --- quotes / code --- */
blockquote { background: rgb(var(--hairline) / 0.03); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 12px; }
blockquote cite { border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
blockquote cite > span { color: rgb(var(--muted)); }
.codeblock { background: rgb(var(--hairline) / 0.03); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 12px; }
.codeblock .title { border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
.codeblock code { font-family: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace; }

/* --- menus / popups / modals --- */
.popup_menu { background: rgb(var(--surface)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 10px; box-shadow: 0 10px 40px -10px rgb(0 0 0 / 0.3); }
.popup_menu .popup_item { background: rgb(var(--surface)); color: rgb(var(--ink)); }
.popup_menu .popup_item:hover { background: rgb(var(--track)); color: rgb(var(--onbrand)); }
.modal { background: rgb(var(--surface)); color: rgb(var(--ink)); border-radius: 16px; box-shadow: 0 10px 40px -10px rgb(0 0 0 / 0.5); }
div.jqi { background-color: rgb(var(--surface)); color: rgb(var(--ink)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 16px; font-family: "Inter", system-ui, sans-serif; }
div.jqi .jqistate { background-color: rgb(var(--surface)); }
div.jqi .jqititle { border-bottom: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
div.jqi .jqimessage { color: rgb(var(--ink)); }
div.jqi .jqibuttons { border-top: 1px solid rgb(var(--hairline) / var(--hairline-a)); background-color: rgb(var(--hairline) / 0.04); }
div.jqi .jqibuttons button { color: rgb(var(--muted)); border-left: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
div.jqi .jqibuttons button.jqidefaultbutton { color: rgb(var(--route)); }
.editor { background: rgb(var(--hairline) / 0.04); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
.editor_control_bar { background: rgb(var(--surface)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 10px; }
.post .editor_control_bar { background: rgb(var(--surface)); }

/* --- alerts / states (accent-alpha pattern: readable in both modes) --- */
.pm_alert { background: rgb(var(--elev) / 0.10); border: 1px solid rgb(var(--elev) / 0.5); color: rgb(var(--ink)); border-radius: 12px; }
div.error { background: rgb(var(--elev) / 0.10); border: 1px solid rgb(var(--elev) / 0.5); border-radius: 12px; }
div.error p { color: rgb(var(--ink)); }
.red_alert { background: rgb(220 38 38 / 0.10); border: 1px solid rgb(220 38 38 / 0.5); color: rgb(var(--ink)); border-radius: 12px; }
.red_alert a:link, .red_alert a:visited, .red_alert a:hover, .red_alert a:active { color: rgb(var(--ink)); text-decoration: underline; }
.trow_shaded { background: rgb(var(--elev) / 0.12); border-color: transparent rgb(var(--elev) / 0.3) rgb(var(--elev) / 0.3) transparent; }
.post.unapproved_post { background: rgb(var(--elev) / 0.12); }
.post.unapproved_post .post_author, .post.classic.unapproved_post .post_author, .post.unapproved_post .post_controls { border-color: rgb(var(--elev) / 0.3); }
.trow_deleted, .post.deleted_post { background: rgb(var(--hairline) / 0.08); }
.trow_selected, tr.trow_selected td { background: rgb(var(--route) / 0.10); color: rgb(var(--ink)); border-right-color: rgb(var(--route) / 0.35); border-bottom-color: rgb(var(--route) / 0.35); }
.trow_selected a:link, .trow_selected a:visited, .trow_selected a:hover, .trow_selected a:active { color: rgb(var(--ink)); }
.selectall { background: rgb(var(--route) / 0.10); border-bottom: 1px solid rgb(var(--route) / 0.35); color: rgb(var(--ink)); }
.highlight { background: rgb(var(--elev) / 0.25); }
.success_message { color: rgb(var(--track)); }
.error_message { color: #ef4444; }
.online { color: rgb(var(--track)); }
.offline { color: rgb(var(--muted)); }
.trow_reputation_positive { background: rgb(var(--track) / 0.12); }
.trow_reputation_negative { background: rgb(220 38 38 / 0.12); }
.reputation_positive { color: rgb(var(--track)); }
.reputation_neutral { color: rgb(var(--muted)); }
.reputation_negative { color: #ef4444; }
._neutral { background-color: rgb(var(--hairline) / 0.05); color: rgb(var(--muted)); border: 1px solid rgb(var(--hairline) / var(--hairline-a)); }
._minus { background-color: rgb(220 38 38 / 0.12); color: #ef4444; border: 1px solid rgb(220 38 38 / 0.5); }
._plus { background-color: rgb(var(--track) / 0.12); color: rgb(var(--track)); border: 1px solid rgb(var(--track) / 0.5); }
img.attachment { border: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-radius: 8px; }
.pollbar { background: rgb(var(--track)) none; border: 0; border-radius: 4px; }
.poll_votedfor { background: rgb(var(--track) / 0.10); border-color: rgb(var(--track) / 0.35); }

/* --- footer: site-footer look --- */
#footer .upper { background: rgb(var(--base)); border-top: 1px solid rgb(var(--hairline) / var(--hairline-a)); border-bottom: 0; }
#footer a:link, #footer a:visited { color: rgb(var(--muted)); }
#footer a:hover, #footer a:active { color: rgb(var(--track)); text-decoration: none; }
#footer .upper .language select, #footer .upper .theme select { border-color: rgb(var(--hairline) / var(--hairline-a)); }
#footer .lower { color: rgb(var(--muted)); }
#footer .lower a:link, #footer .lower a:visited, #footer .lower a:hover, #footer .lower a:active { color: rgb(var(--muted)); }
#footer .lower #current_time { color: rgb(var(--muted)); }

/* smalltext + misc muted */
.smalltext { color: inherit; }
.forum_off, .forum_offclose, .forum_offlink { opacity: 0.55; }
/* === end rc-theme === */
