/* =========================================================
   CONTROL PANEL LAYOUT — migrated from vorro-private-light.css
   ========================================================= */
/*
 * Vorro Light V1.2.4
 * Private/User CP hierarchy correction.
 * Main section title = graphite.
 * Secondary column/category title = light grey.
 * Content = white.
 */

/* Main PM / CP title bar */
body .thead {
	background: #3d4349 !important;
	background-image: none !important;
	color: #ffffff !important;
	border-color: #3d4349 !important;
}

/* Secondary header: never another black strip */
body .tcat,
body td.tcat,
body tr .tcat {
	background: #e9ecef !important;
	background-image: none !important;
	color: #59636b !important;
	border-color: #d6dce0 !important;
}

body .tcat a:link,
body .tcat a:visited,
body .tcat a:hover,
body .tcat a:active {
	color: #3f474e !important;
}

/* Private Message column headings */
body form[name="pmForm"] .tcat {
	background: #e9ecef !important;
	color: #59636b !important;
	border-top: 1px solid #d6dce0 !important;
	border-bottom: 1px solid #d6dce0 !important;
}

body form[name="pmForm"] .tcat strong,
body form[name="pmForm"] .tcat span,
body form[name="pmForm"] .tcat a {
	color: #4b545c !important;
}

/* Message rows */
body form[name="pmForm"] .trow1,
body form[name="pmForm"] tr:hover > .trow1 {
	background: #ffffff !important;
}

body form[name="pmForm"] .trow2,
body form[name="pmForm"] tr:hover > .trow2 {
	background: #fafbfb !important;
}

/* User CP / PM left navigation section headers */
.vorro-cp-nav .tcat,
.vorro-cp-nav .tcat_menu {
	background: #eceff1 !important;
	color: #626c74 !important;
	border-color: #d7dce0 !important;
}

/* Keep only the very top CP menu title dark */
.vorro-cp-nav > tbody:first-child > tr > .thead {
	background: #3d4349 !important;
	color: #ffffff !important;
}

/* Compact Messenger block */
.vorro-cp-nav .tcat_menu {
	height: 27px !important;
	min-height: 27px !important;
	padding: 4px 9px !important;
}

.vorro-cp-nav .tcat_menu .smalltext {
	line-height: 17px !important;
	font-size: 10px !important;
}

.vorro-pm-nav .trow1,
.vorro-pm-folders {
	padding: 2px 3px !important;
}

.vorro-pm-nav .usercp_nav_item,
.vorro-pm-folders .usercp_nav_item {
	min-height: 28px !important;
	padding: 5px 8px !important;
	line-height: 18px !important;
}

/* Top mini-navigation above PM table */
body.private-page fieldset,
body fieldset:has(a[href="private.php"]) {
	padding: 9px 11px !important;
	min-height: 0 !important;
}

/* PM table top search block */
body form[name="pmForm"] .thead .float_right {
	display: flex !important;
	align-items: center !important;
	gap: 7px !important;
}

body form[name="pmForm"] .thead .float_right input.textbox {
	height: 34px;
}

body form[name="pmForm"] .thead .float_right .button {
	min-height: 34px;
}

/* =========================================================
   CONTROL PANEL LAYOUT — migrated from vorro-usercp-nav-fix.css
   ========================================================= */
/*
 * Vorro V1.2.5 — User CP navigation structure normalization
 * Every navigation item is one real table row.
 */

.vorro-cp-nav {
	width: 100% !important;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0;
}

.vorro-cp-nav tbody,
.vorro-cp-nav tr,
.vorro-cp-nav td {
	width: 100%;
}

.vorro-cp-nav .thead,
.vorro-cp-nav .tcat,
.vorro-cp-nav .tcat_menu,
.vorro-cp-nav .trow1,
.vorro-cp-nav .trow2 {
	text-align: left !important;
	vertical-align: middle !important;
}

.vorro-cp-nav .thead {
	height: 38px;
	padding: 0 12px !important;
	line-height: 38px;
}

.vorro-cp-nav .tcat_menu {
	position: relative;
	height: 27px !important;
	min-height: 27px !important;
	padding: 0 30px 0 10px !important;
	line-height: 27px !important;
}

.vorro-cp-section-title {
	display: flex;
	align-items: center;
	height: 27px;
	text-align: left !important;
}

.vorro-cp-section-title .smalltext {
	display: block;
	width: 100%;
	line-height: 27px !important;
	text-align: left !important;
	font-size: 10px !important;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.vorro-cp-nav .tcat_menu .expcolimage {
	position: absolute;
	top: 50%;
	right: 9px;
	float: none !important;
	width: 16px;
	height: 16px;
	margin: -8px 0 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.vorro-cp-nav .tcat_menu .expcolimage img {
	display: block;
	max-width: 12px;
	max-height: 12px;
	margin: 0 !important;
}

.vorro-cp-nav .vorro-cp-link-row > td {
	height: auto !important;
	padding: 0 !important;
	border-bottom: 0 !important;
}

.vorro-cp-nav .usercp_nav_item {
	box-sizing: border-box;
	display: flex !important;
	align-items: center;
	width: 100%;
	min-height: 29px !important;
	margin: 0 !important;
	padding: 5px 10px !important;
	line-height: 19px !important;
	text-align: left !important;
	border-radius: 0 !important;
	background-position: 10px center !important;
}

/* Remove legacy nested-indentation rules that made some links look offset. */
.vorro-cp-nav .usercp_nav_sub_pmfolder,
.vorro-cp-nav .usercp_nav_trash_pmfolder,
.vorro-cp-nav .usercp_nav_email,
.vorro-cp-nav .usercp_nav_password,
.vorro-cp-nav .usercp_nav_username,
.vorro-cp-nav .usercp_nav_editsig,
.vorro-cp-nav .usercp_nav_avatar {
	padding-left: 10px !important;
}

.vorro-cp-nav .usercp_nav_sub_pmfolder::before,
.vorro-cp-nav .usercp_nav_trash_pmfolder::before,
.vorro-cp-nav .usercp_nav_email::before,
.vorro-cp-nav .usercp_nav_password::before,
.vorro-cp-nav .usercp_nav_username::before,
.vorro-cp-nav .usercp_nav_editsig::before,
.vorro-cp-nav .usercp_nav_avatar::before {
	display: none !important;
	content: none !important;
}

/* One subtle separator only between logical sections. */
.vorro-cp-section-head:not(:first-child) .tcat_menu {
	border-top-width: 1px !important;
}

/* Prevent any inherited center alignment from PM/UserCP page styles. */
.vorro-cp-nav strong,
.vorro-cp-nav span,
.vorro-cp-nav a {
	text-align: left !important;
}

/* Current link can be indicated without changing row height. */
.vorro-cp-nav .usercp_nav_item:focus,
.vorro-cp-nav .usercp_nav_item:active {
	outline: none;
}

/* Desktop sidebar width a bit slimmer. */
td.vorro-cp-navcell {
	width: 230px !important;
	min-width: 230px !important;
	padding-right: 16px !important;
}

@media (max-width: 850px) {
	td.vorro-cp-navcell {
		width: 100% !important;
		min-width: 0 !important;
		padding-right: 0 !important;
	}

	.vorro-cp-nav {
		position: static !important;
	}
}

/* =========================================================
   CONTROL PANEL LAYOUT — migrated from vorro-form-align.css
   ========================================================= */
/*
 * Vorro Light V1.2.7
 * Form width + alignment normalization for PM/User CP.
 */

/* ---------------------------------------------------------
   Advanced PM Search
   --------------------------------------------------------- */

/* Give label column a stable width and align content vertically */
body form[name="pmForm"] .tborder td.trow1:first-child,
body form[name="pmForm"] .tborder td.trow2:first-child {
	vertical-align: middle !important;
}

/* Standard field width */
body form[name="pmForm"] input.textbox,
body form[name="pmForm"] input.text_input,
body form[name="pmForm"] select:not([multiple]),
body form[name="pmForm"] .select2-container {
	width: 340px !important;
	max-width: 100% !important;
}

/* The previous black "Search for a user" control */
body form[name="pmForm"] #sender + .select2-container,
body form[name="pmForm"] .select2-container {
	min-width: 340px !important;
	width: 340px !important;
	max-width: 100% !important;
}

/* Multi-folder selector: same visual width */
body form[name="pmForm"] select[multiple],
body form[name="pmForm"] #folder {
	width: 340px !important;
	max-width: 100% !important;
	min-height: 112px;
}

/* Search criteria fields */
body form[name="pmForm"] #keywords,
body form[name="pmForm"] #sender {
	width: 340px !important;
	max-width: 100% !important;
}

/* Sort select matches the main controls instead of being tiny */
body form[name="pmForm"] #sort {
	width: 220px !important;
	max-width: 100% !important;
}

/* Checkbox/radio stacks: consistent spacing */
body form[name="pmForm"] label {
	line-height: 1.65;
}

body form[name="pmForm"] input.checkbox,
body form[name="pmForm"] input.radio {
	margin-right: 5px;
	vertical-align: -1px;
}

/* ---------------------------------------------------------
   User CP generic form sizing
   Mod CP is intentionally excluded and has its own stock-like sizing.
   --------------------------------------------------------- */

td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.textbox,
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.text_input,
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td select,
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td .select2-container {
	width: 340px;
	max-width: 100% !important;
}

td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td textarea {
	width: min(100%, 680px) !important;
	max-width: 100% !important;
}

/* Long account fields can be slightly wider */
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.textbox[size="45"],
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.textbox[size="50"],
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.text_input[size="45"],
td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.text_input[size="50"] {
	width: 460px !important;
}

/* ---------------------------------------------------------
   PM list quick search
   --------------------------------------------------------- */

body form[name="pmForm"] .thead .float_right input.textbox {
	width: 240px !important;
	height: 34px;
}

body form[name="pmForm"] .thead .float_right {
	align-items: center !important;
	gap: 7px !important;
}

/* ---------------------------------------------------------
   Top global search: slightly wider for balance
   --------------------------------------------------------- */

#search input.textbox {
	width: 270px !important;
}

/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 760px) {
	body form[name="pmForm"] input.textbox,
	body form[name="pmForm"] input.text_input,
	body form[name="pmForm"] select,
	body form[name="pmForm"] .select2-container,
	body form[name="pmForm"] #sender + .select2-container,
	body form[name="pmForm"] #keywords,
	body form[name="pmForm"] #sender,
	body form[name="pmForm"] #folder,
	td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.textbox,
	td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td input.text_input,
	td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td select,
	td.vorro-cp-navcell:not(.vorro-modcp-navcell) + td .select2-container {
		width: 100% !important;
		min-width: 0 !important;
	}

	#search input.textbox {
		width: auto !important;
	}

	body form[name="pmForm"] .thead .float_right {
		width: 100%;
		flex-wrap: wrap;
		margin-top: 8px;
	}

	body form[name="pmForm"] .thead .float_right input.textbox {
		flex: 1 1 180px;
		width: auto !important;
	}
}
