/*
    Universal platform visual layer.
    Keep layout, spacing, typography, and component styling here.
    Platform files should define --theme-* values and only true platform exceptions.
*/
:root
{
    --theme-primary: #005bbb;
    --theme-secondary: #58a618;
    --theme-page-bg: #f4f7fa;
    --theme-surface: #ffffff;
    --theme-text: #292929;
    --theme-text-strong: #243041;
    --theme-text-muted: #44515f;
    --theme-text-soft: #6f7d8a;
    --theme-header-bg: #ffffff;
    --theme-header-text: #44515f;
    --theme-footer-bg: #292929;
    --theme-primary-soft: #edf6ff;
    --theme-primary-border: #b9d7f4;
    --theme-secondary-soft: #eef9e8;
    --theme-secondary-border: #9acb7b;
    --theme-border: #d8dde3;
    --theme-logo-width: 100%;
    --theme-logo-max-height: 260px;
}
.app_primary_background_color
{
	background: var(--theme-primary) !important;
}

/**HEADER---------------------------------------------------------------*/
tr.top_header_bar
{
	height:45px;
	background: var(--theme-header-bg);
	color: var(--theme-header-text);
	margin-bottom:20px;
}

tr.top_header_bar + tr
{
	background: var(--theme-page-bg);
}

.top_menu a
{
	color:var(--theme-header-text);
}

ul.top_menu
{
	float:left;
	padding-left:35px;
}

.user_login {
width: 195px;
border-left: solid 1px #e2e8f0;
}

.top_menu .selected a
{
	color:var(--theme-secondary);
	text-decoration: none;
	font-size: 11px;
}

.user_login input
{
	min-width: 82px;
	height: 26px;
	background: var(--theme-primary);
	margin-right:4px;
	border:none;
	font-weight: bold;
	cursor: pointer;
}

.user_login
{
	text-align:right;
}

.user_login input.register
{
	background: var(--theme-secondary);
	border-radius: 5px;
	margin: 0px 5px 1px 0px;
}

td.logo
{
	text-align: left;
	padding-left:40px;
}

div.header
{
	height:100%;
}

.left_menu_container
{
	padding-top:45px;
}

.main_logo
{
	width: var(--theme-logo-width);
	padding:10px;
}

.user_info
{
	text-align: right;
	padding-bottom:15px;
}

.top_search_input
{
	height:35px;
	background: url("?file_viewer+img+search_back_left.png") no-repeat;
}

.top_search_input input
{
	border: solid 0px;
	background: transparent;
	padding-left:10px;
	font-size:16px;
	font-style: italic;
	margin: 8px 0 0 0;
}

.top_search_button
{
	width: 39px;
	background: url("?file_viewer+img+search_back_right.png") no-repeat;
}
.top_search_button input
{
	width:39px;
	background: transparent;
	border:solid 0px;
}


/**-------------HOR LOG-------------------------------------*/
div.horizontal_login
{
	width: 1244px; /*1075px*/
}

div.horizontal_login form input.submit, div.horizontal_login form input.button
{
	background:var(--theme-primary);
}

div.horizontal_login div.extras input.button
{
	background:var(--theme-secondary);
	border-color: #3D7311;
}

div.horizontal_login div.hz_autologin
{
	color:black;
}

div.horizontal_login div.extras a
{
	color:black;
}
/**MENUS----------------------------------------------------------------*/

ul.left_top, ul.left_bottom
{
	width:145px;
	background: url("?file_viewer+img+menu_bottom.png") no-repeat bottom;
	padding-bottom:10px;
	margin-bottom:60px;
}

.left_top li, .left_bottom li
{
	background: url("?file_viewer+img+left_menu.png") no-repeat;
	height:35px;
	margin-right:10px;
	#margin-right:0px;
	width: 145px;
	text-transform: none;
	font-size:12px;
	font-weight: 500;
	margin-bottom:0px;
}


div.menu ul.left_top   span.selected,
div.menu ul.left_bottom   span.selected
{
	background: #8B8D8E;
	margin-right:10px;
	width: 145px;
	height:35px;
}


div.menu ul.left_top li.discussions span.selected,
ul.tab li span.menu_parent_discussions span.selected a
{
	background: var(--theme-primary);
}

div.menu ul.left_top li.articles span.selected,
ul.tab li span.menu_parent_articles span.selected a
{
	background: var(--theme-secondary);
}

div.menu ul.left_top li.businesses span.selected, 
ul.tab li span.menu_parent_businesses span.selected a
{
	background: var(--theme-secondary);
}

div.menu ul.left_top li.products span.selected,
ul.tab li span.menu_parent_products span.selected a
{
	background:var(--theme-primary);
}

div.menu ul.left_top li.groups span.selected,
ul.tab li span.menu_parent_groups span.selected a
{
	background: var(--theme-secondary);
}

div.menu ul.left_top li.events span.selected,
ul.tab li span.menu_parent_events span.selected a
{
	background: var(--theme-primary);
}

div.menu ul.left_top li.industry span.selected,
ul.tab li span.menu_parent_industry span.selected a
{
	background: var(--theme-secondary);
}

.bottom_menu a
{
	color:#a7a7a7;
	font-size:9px;
}

.bottom_menu li
{
	padding-left:5px;
	padding-right: 5px;
	border-right: 1px solid var(--theme-primary);
}

.bottom_menu .selected a
{
	color:var(--theme-primary);
}

li.testimonials
{
	border-right: none;
}


/***TABS------------------------------------------------------------------*/

.tab_holder
{
	display: none;
	padding: 0;
}

ul.tab
{
	border-bottom: solid 1px #b9b9b9;
	width:100%;
}

ul.tab li
{
	background:none;
}

ul.tab a
{
	background:none;
	text-transform: none;
	color: #8B8D8E;
	font-size:12px;
}

ul.tab li span.menu_parent_articles span.selected,
ul.tab li span.menu_parent_discussions span.selected
{
	background: none;
	border-top: solid 1px #b9b9b9;
	border-left: solid 1px #b9b9b9;
	border-right: solid 1px #b9b9b9;
}

ul.tab li span.selected a
{
	background:#8B8D8E;
}

/***-------------------Main body and Screens--------------------------------------------------------------*/

.main_body
{
	width:100%;
}

.main_screen
{
	padding-bottom:10px;
	padding-right:10px;
}

.login_horizontal
{
	width:1075;
	background-color: #585858;
	border:none;
}

table.default_screen, table.top_menu_screen 
{
	width:100%;	
}

/** ------------------ACTION AREAS AND ANNOUNCEMENT BANNERS _---------------------------------*/

.announcement_banner
{
	padding-top:10px;
}

td.announcement_bar
{
	display: table-cell;
	padding: 0 16px 10px 16px;
	box-sizing: border-box;
}

td.announcement_bar:empty
{
	display: none;
	padding: 0;
}

td.announcement_bar div.announcement_bar
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	min-height: 30px;
	margin: 0 0 8px 0;
	padding: 7px 14px 7px 38px;
	color: #1f2a37;
	background-color: var(--theme-secondary-soft);
	border: 1px solid var(--theme-secondary-border);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(41, 41, 41, 0.06);
	text-align: left;
	font-size: 13px;
	line-height: 1.35;
	box-sizing: border-box;
}

td.announcement_bar div.announcement_bar:before
{
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	content: "\f05a";
	color: var(--theme-secondary);
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 14px;
	line-height: 1;
}

td.announcement_bar div.announcement_bar[style*="CCCBCB"],
td.announcement_bar div.announcement_bar[style*="LightGray"],
td.announcement_bar div.announcement_bar[style*="Gray"]
{
	background-color: var(--theme-primary-soft) !important;
	border-color: var(--theme-primary-border);
}

td.announcement_bar div.announcement_bar[style*="CCCBCB"]:before,
td.announcement_bar div.announcement_bar[style*="LightGray"]:before,
td.announcement_bar div.announcement_bar[style*="Gray"]:before
{
	color: var(--theme-primary);
}

td.announcement_bar div.announcement_bar a
{
	color: var(--theme-primary);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 2px;
}

td.action_block {
	padding-top: 10px;
	padding-right: 10px;
}

/* --------------- FOOTER ----------------------------------------------------------------------*/
.footer
{
	height:100px;
	background: var(--theme-footer-bg);
	color: #ffffff;
	margin-bottom:20px;
	text-align:left;
	max-width: 99%;
}
div.social_footer
{
	display: inline;
}

div.menu_footer
{
	display: inline;
	width:20px;
	text-align:right;
}

.social_links
{
	border:0px;
	width:100%;
	margin-left:20px;
}

.social_links td
{
	padding:10px;
}

/**-------------------HOMEPAGE-------------------------*/

.homepage td
{
	
	width:145px;
	height:145px;
	padding-right:10px;
	padding-bottom:10px;
}

.homepage div.article
{
	height:100%;
	background: url("?file_viewer+img+article_homepage_back.png");
	padding:15px;
	word-wrap:break-word;
	color:#ffffff;
}

.ie .homepage div.article
{
	height:118px;
}

.homepage div.blueblock
{
	background-color: #1799dd;
	height:100%;
	padding:15px;
	word-wrap:break-word;
	color:#ffffff;
}

.ie .homepage div.blueblock
{
	width:270px;
	height:425px;
}

.homepage table.newsletter_form
{
 	width:300px;
 	height:145px;
 	margin:0px;
 	background-color: #e92e7d;
 	border:0;
}

.homepage table.newsletter_form input
{
	height:23px;
}

.homepage table.newsletter_form td
{
 	height:0px;
 	width:0px;
}

.homepage table.newsletter_form td.newsletter_pusher
{
	width:70px;
}

.homepage table.newsletter_form td.calltoaction
{
	color:#ffffff;
	font-size:12px;
}

/**--------------------------- STYLING OF PAGE ELEMENTS------------------------*/

div.info_box,
.admin-screen div.info_box
{
	width: 100%;
	margin: 0 0 16px 0;
	padding: 0;
	color: var(--theme-text-muted);
	background: var(--theme-surface);
	border: 1px solid #dde3ea;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(36, 48, 65, 0.07);
	box-sizing: border-box;
	overflow: hidden;
	line-height: 1.45;
}

div.info_box:empty
{
	display: none;
}

div.info_box > div
{
	min-width: 0;
}

html body div.info_box > div[class] > div.info_title,
.admin-screen div.info_box > div[class] > div.info_title
{
	display: flex;
	align-items: center;
	min-height: 44px;
	height: auto;
	margin: 0;
	padding: 13px 16px;
	color: var(--theme-text-strong);
	background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
	border: 0;
	border-bottom: 1px solid #e6edf5;
	box-sizing: border-box;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
	text-transform: none;
}

html body div.info_box > div[class] > div.info_data,
.admin-screen div.info_box > div[class] > div.info_data
{
	margin: 0;
	padding: 16px;
	color: var(--theme-text-muted);
	background: transparent;
	border: 0;
	box-sizing: border-box;
	font-size: 13px;
	line-height: 1.5;
}

div.info_box div.info_data:empty
{
	display: none;
}

div.info_box div.info_data > :first-child
{
	margin-top: 0;
}

div.info_box div.info_data > :last-child
{
	margin-bottom: 0;
}

div.info_box p
{
	margin: 0 0 10px 0;
	line-height: 1.5;
}

div.info_box a
{
	color: var(--theme-primary);
	text-decoration: none;
}

div.info_box a:hover,
div.info_box a:focus
{
	color: var(--theme-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}

div.info_box hr
{
	height: 0;
	margin: 14px 0;
	border: 0;
	border-top: 1px solid #e6edf5;
}

html body div.info_box div.listing table.info_list
{
	width: 100%;
	height: auto;
	border-collapse: collapse;
	table-layout: auto;
}

html body div.info_box div.listing table.info_list td
{
	padding: 0;
	vertical-align: top;
}

html body div.info_box div.listing table.info_list td.left
{
	width: 72px;
	padding: 4px 14px 4px 0;
	text-align: center;
}

html body div.info_box div.listing table.info_list td.left img
{
	max-width: 66px;
	height: auto;
	padding: 2px;
	background: #ffffff;
	border: 1px solid #e1e7ee;
	border-radius: 8px;
	box-sizing: border-box;
}

html body div.info_box div.listing table.info_list td.right
{
	padding: 2px 0;
	color: var(--theme-text-muted);
	font-size: 13px;
	line-height: 1.5;
}

html body div.info_box div.listing table.info_list h2
{
	margin: 0 0 6px 0;
	color: var(--theme-text-strong);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

html body div.info_box div.listing table.info_list h2 span
{
	cursor: pointer;
}

html body div.info_box div.listing table.info_list p
{
	margin: 0 0 8px 0;
}

html body div.info_box table
{
	max-width: 100%;
}

html body div.info_box form input.button,
html body div.info_box form input.submit,
html body div.info_box .button
{
	margin: 8px 8px 0 0;
	border-radius: 6px;
	box-shadow: 0 2px 5px rgba(36, 48, 65, 0.12);
}

html body div.info_box form input.button:focus,
html body div.info_box form input.submit:focus,
html body div.info_box .button:focus
{
	outline: 2px solid var(--theme-primary-border);
	outline-offset: 2px;
}

div.component,
.admin-screen div.component,
div.grid_object
{
	color: var(--theme-text-muted);
	background: var(--theme-surface);
	border: 1px solid #dde3ea;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(36, 48, 65, 0.07);
	box-sizing: border-box;
	line-height: 1.5;
}

div.component,
.admin-screen div.component
{
	margin: 16px 20px 16px 0;
	padding: 18px;
	font-size: 13px;
}

div.component h1,
.admin-screen div.component h1
{
	margin: 0 0 12px 0;
	color: var(--theme-text-strong);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: none;
}

div.component_area
{
	min-width: 0;
}

div.grid_object
{
	margin: 6px;
	padding: 14px;
	color: var(--theme-text-strong);
}

form input.sales_button, .sales_button
{
	background-color: var(--theme-primary);
	border: solid 1px var(--theme-primary);
	border-radius : 5px;
	
	font-size: 10px;
	min-width: 50px;
	height: 24px;
	margin-right: 1px;
	margin-left: 2px;
	font-weight: bold;
	color: #fff;
	border: none;
	cursor: pointer;
}

table.selector_control input.searchsubmit
{
	background-color: var(--theme-primary);
	border: solid 1px var(--theme-primary);
}

form input.button, form input.submit, .button
{
	background-color: var(--theme-primary);
	border: solid 1px var(--theme-primary);
	border-radius : 5px;
	
	font-size: 10px;
	min-width: 113px;
	height: 24px;
	margin-right: 1px;
	margin-left: 2px;
	font-weight: bold;
	color: #fff;
	border: none;
	cursor: pointer;
}

table.popup th.popup 
{
	background-color: var(--theme-secondary);
}

div.listing table.main_list a.main_list_title
{
	color: #000000;
}

div.organization_listing table.main_list
{
	width: 100%;
	table-layout: fixed;
}

div.organization_listing table.main_list td.left
{
	width: 33%;
	box-sizing: border-box;
}

div.organization_listing table.main_list td.right
{
	width: 66%;
	box-sizing: border-box;
}

div.organization_listing table.main_list td.left img
{
	max-width: 100%;
	height: auto;
}

div.page h2.content_title
{
	color:var(--theme-primary);
}

div.page div.section h2.section_title
{
	font-weight: bold;
}

.platform-section,
.platform-audit
{
    margin: 16px 0;
    background: var(--theme-surface);
    border: 1px solid var(--theme-border);
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(36, 48, 65, 0.05);
    overflow: hidden;
}

div.page div.section.platform-section h2.section_title.platform-section-title,
.platform-section-title
{
    margin: 0;
    padding: 0;
    font-size: inherit;
    line-height: normal;
}

.platform-section-toggle,
.platform-audit-toggle
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 48px;
    padding: 13px 16px;
    color: var(--theme-text-strong);
    background: var(--theme-surface);
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.platform-section-toggle:hover,
.platform-section-toggle:focus,
.platform-audit-toggle:hover,
.platform-audit-toggle:focus
{
    color: var(--theme-primary);
    background: var(--theme-primary-soft);
    outline: none;
}

.platform-section-toggle:focus-visible,
.platform-audit-toggle:focus-visible
{
    box-shadow: inset 0 0 0 3px var(--theme-primary-border);
}

.platform-section-heading,
.platform-audit-title
{
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.platform-section-chevron,
.platform-audit-chevron
{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 24px;
    height: 24px;
    color: var(--theme-text-soft);
    border-radius: 999px;
    transition: color 0.15s ease, background-color 0.15s ease;
}

.platform-section-chevron:before,
.platform-audit-chevron:before
{
    content: "▴";
    font-size: 16px;
    line-height: 1;
}

.platform-section-toggle[aria-expanded="false"] .platform-section-chevron:before,
.platform-audit-toggle[aria-expanded="false"] .platform-audit-chevron:before
{
    content: "▾";
}

.platform-section-toggle[aria-expanded="true"],
.platform-audit-toggle[aria-expanded="true"]
{
    border-bottom: 1px solid var(--theme-border);
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.platform-section-toggle:hover .platform-section-chevron,
.platform-section-toggle:focus .platform-section-chevron,
.platform-audit-toggle:hover .platform-audit-chevron,
.platform-audit-toggle:focus .platform-audit-chevron
{
    color: var(--theme-primary);
    background: rgba(255, 255, 255, 0.75);
}

.platform-section-body,
.platform-audit-body
{
    padding: 16px;
    background: var(--theme-surface);
}

.platform-section-body > :last-child,
.platform-audit-body > :last-child
{
    margin-bottom: 0;
}

@media (max-width: 560px)
{
    .platform-section-toggle,
    .platform-audit-toggle
    {
        min-height: 44px;
        padding: 12px 14px;
    }

    .platform-section-body,
    .platform-audit-body
    {
        padding: 12px;
        overflow-x: auto;
    }
}

textarea,input,select
{
	border-style:solid;
	border-color:#D5D4D4;
	border-radius:3px;
}



/** -------------------------------- Groups ------------------------------------------*/
table.top_menu_screen td.top_menu div.top_menu
{
	background-color: #585858;
}

table.top_menu_screen td.top_menu div.top_menu a.selected
{
	color: #ffffff;
}

div.form_feed input[type='text'],
div.form_feed textarea
{
	width:90%;
}

/** --------------          Events ---------------------------------------------------*/
div.calendar_pim table.calendar td span.today span.daynum
{
	background-color: var(--theme-secondary);
}

div.pim_day div.title
{
	background-color: var(--theme-primary);
}

div.info_category a
{
	color:	var(--theme-secondary);
	padding-left:10px;
}

/** ------------------------ FROUM STYLING*/
div.bubble blockquote
{
	font-size:14px;
}

.jobcard_zoom {
  	/* nothing */
  }
  
.help_video_section
{
    background-color: var(--theme-surface);
	border: 1px solid #dde3ea;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(36, 48, 65, 0.07);
	margin: 12px 0 18px 0;
	padding: 16px;
	clear: both;
	height: auto;
	width: inherit;
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	color: var(--theme-text-strong);
	font-weight: 700;
	line-height: 1.45;
	
}
	
.row_item{
	display: inline-block;
	height: 100px;
	width: 30%
}

/*
	LEAD TECHNICIAN REPORT STYLING
------------------------------------------------------------------------------------*/
div.page_lead_technician_report_handler table.selector table.main { width:100%; }

div.page_lead_technician_report_handler div.page_index table.selector table.main td
{
	padding:5px;
	border-bottom: 1px solid #CCCBCB; 
}

div.page_lead_technician_report_handler div.page_index table.selector table.main th
{
	font-size: 14px;
	border:solid 1px grey;
	background-color: #CCCBCB;
	padding:3px;
}

div.page_show_listing table.selector table.main td a { color: #727070; }

/** ------------------- Modern public homepage -------------------------*/

body
{
	background: var(--theme-page-bg);
	color: var(--theme-text);
	font-family: Arial, Helvetica, sans-serif;
}

.center_of_world
{
	width: 100%;
	max-width: 1600px;
	min-width: 0;
	margin: 0 auto 28px auto;
	background: #ffffff;
	border-radius: 0 0 6px 6px;
	box-shadow: 0 18px 45px rgba(41, 41, 41, 0.2);
	overflow: hidden;
}

table.header,
.header > table,
.header_table,
.menu_body_seperator,
table.main_body,
.main_page,
.logo_div
{
	width: 100%;
}

.main_page
{
	background: var(--theme-page-bg);
}

.center_of_world > tbody,
.center_of_world > tbody > tr,
.center_of_world > tbody > tr > td,
.header > tbody,
.header > tbody > tr,
.header > tbody > tr > td,
.header_table > tbody,
.header_table > tbody > tr,
.header_table > tbody > tr > td,
.menu_body_seperator > tbody,
.menu_body_seperator > tbody > tr,
table.main_body > tbody,
table.main_body > tbody > tr
{
	width: 100%;
}

.menu_body_seperator
{
	table-layout: fixed;
	min-width: 0;
}

.menu_body_seperator:not(:has(.left_menu_container))
{
	table-layout: auto;
}

.menu_body_seperator > tbody > tr > td.left_menu_container
{
	width: clamp(150px, 15vw, 260px);
	min-width: 150px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: top;
}

.menu_body_seperator > tbody > tr > td.left_menu_container > table
{
	width: calc(100% - 10px);
	margin: 0 auto !important;
	float: none;
}

.menu_body_seperator > tbody > tr > td.left_menu_container > table > tbody > tr > td
{
	text-align: center;
}

.menu_body_seperator:has(.page_show) > tbody > tr > td.left_menu_container
{
	display: none;
	width: 0;
	min-width: 0;
	padding: 0;
}

.menu_body_seperator:has(.page_show) > tbody > tr > td.main_body
{
	width: 100% !important;
}

.menu_body_seperator:not(:has(.left_menu_container)) > tbody > tr > td.main_body,
.menu_body_seperator > tbody > tr > td.main_body:first-child
{
	width: 100% !important;
}

.menu_body_seperator > tbody > tr > td.main_body,
.header_table > tbody > tr > td.main_body,
td.main_body
{
	width: auto !important;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

table.main_body
{
	display: table;
	table-layout: auto;
	min-width: 0;
}

.side_menu
{
	width: min(190px, 100%);
	margin: 0 auto;
	text-align: left;
}

.active_side_menu_section
{
	width: min(190px, 100%);
	margin: 0 auto 16px auto;
	padding: 6px;
	background: #f7f9fb;
	border: 1px solid #dbe3ea;
	border-radius: 6px;
	box-sizing: border-box;
}

.active_side_menu_title
{
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 32px;
	padding: 7px 8px;
	margin-bottom: 6px;
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border: 1px solid var(--theme-primary-border);
	border-radius: 5px;
	font-weight: 600;
	box-sizing: border-box;
}

.side_menu .active_side_menu_section ul.active_side_sub_menu
{
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
	box-sizing: border-box;
}

.side_menu .active_side_menu_section ul.active_side_sub_menu li
{
	width: 100%;
	height: auto;
	min-height: 32px;
	margin: 0 0 4px 0;
	padding: 0;
	background: none;
	list-style: none;
	box-sizing: border-box;
}

.side_menu .active_side_menu_section ul.active_side_sub_menu li > a
{
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 32px;
	padding: 7px 8px;
	background: #f7f9fb;
	color: #4f5964;
	border: 1px solid #e4e8ec;
	border-radius: 5px;
	text-decoration: none;
	box-sizing: border-box;
	box-shadow: none;
}

.side_menu .active_side_menu_section ul.active_side_sub_menu li.selected > a,
.side_menu .active_side_menu_section ul.active_side_sub_menu li > a:hover,
.side_menu .active_side_menu_section ul.active_side_sub_menu li:focus-within > a
{
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border-color: var(--theme-primary-border);
}

.side_menu ul.left_top,
.side_menu ul.left_bottom
{
	width: min(190px, 100%);
	margin: 0 auto 18px auto;
	padding: 0;
	background: none;
	list-style: none;
	box-sizing: border-box;
}

.side_menu ul.left_top li,
.side_menu ul.left_bottom li
{
	position: relative;
	width: 100%;
	height: auto;
	min-height: 38px;
	margin: 0 0 5px 0;
	padding: 0;
	background: none;
	list-style: none;
	text-transform: none;
	box-sizing: border-box;
}

.side_menu ul.left_top li > a,
.side_menu ul.left_bottom li > a
{
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 8px;
	color: #3f4750;
	background: #ffffff;
	border: 1px solid #e1e5ea;
	border-radius: 5px;
	text-decoration: none;
	box-sizing: border-box;
	box-shadow: 0 1px 3px rgba(41, 41, 41, 0.08);
	min-width: 0;
}

.side_menu ul.left_top li.selected > a,
.side_menu ul.left_bottom li.selected > a,
.side_menu ul.left_top li > a:hover,
.side_menu ul.left_bottom li > a:hover,
.side_menu ul.left_top li:focus-within > a,
.side_menu ul.left_bottom li:focus-within > a
{
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border-color: var(--theme-primary-border);
}

.side_menu ul.left_top li:nth-child(odd) > a:hover,
.side_menu ul.left_bottom li:nth-child(odd) > a:hover,
.side_menu ul.left_top li:nth-child(odd):focus-within > a,
.side_menu ul.left_bottom li:nth-child(odd):focus-within > a
{
	color: var(--theme-secondary);
	background: var(--theme-secondary-soft);
	border-color: var(--theme-secondary-border);
}

.side_menu_icon
{
	width: 16px;
	color: inherit;
	text-align: center;
	font-size: 14px;
	flex: 0 0 16px;
}

.side_menu_label
{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.side_menu .extra
{
	margin-left: 4px;
	font-size: 11px;
}

.active_side_menu_title .extra
{
	margin-left: auto;
}

.side_menu_chevron
{
	margin-left: auto;
	font-size: 11px;
}

.side_sub_menu
{
	display: none;
	width: 100%;
	margin: 4px 0 8px 0;
	padding: 0 0 0 18px;
	list-style: none;
	box-sizing: border-box;
}

.side_menu li.open > .side_sub_menu,
.side_menu li.selected > .side_sub_menu
{
	display: block;
}

.side_menu ul.left_top .side_sub_menu li,
.side_menu ul.left_bottom .side_sub_menu li
{
	width: 100%;
	min-height: 32px;
	margin: 0 0 4px 0;
}

.side_menu ul.left_top .side_sub_menu li > a,
.side_menu ul.left_bottom .side_sub_menu li > a
{
	min-height: 32px;
	padding: 7px 8px;
	background: #f7f9fb;
	color: #4f5964;
	border: 1px solid #e4e8ec;
	box-shadow: none;
}

.side_menu ul.left_top .side_sub_menu li.selected > a,
.side_menu ul.left_bottom .side_sub_menu li.selected > a,
.side_menu ul.left_top .side_sub_menu li > a:hover,
.side_menu ul.left_bottom .side_sub_menu li > a:hover,
.side_menu ul.left_top .side_sub_menu li:focus-within > a,
.side_menu ul.left_bottom .side_sub_menu li:focus-within > a
{
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border-color: var(--theme-primary-border);
}

table.main_body > tbody > tr > td
{
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

table.main_body > tbody > tr > td > div,
table.main_body > tbody > tr > td > form,
table.main_body > tbody > tr > td > table,
table.main_body > tbody > tr > td > a
{
	max-width: 100%;
	box-sizing: border-box;
}

.top_menu_bar
{
	width: 100% !important;
	vertical-align: middle;
}

.top_header_nav
{
	display: flex;
	align-items: center;
	gap: 28px;
	height: 52px;
	padding-left: 24px;
}

.top_header_logo
{
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.top_header_logo img
{
	display: block;
	max-height: 38px;
	width: auto;
}

.feature_area img,
.main_screen img,
td.action_block img
{
	max-width: 100%;
	height: auto;
}

td.action_block img
{
	border-radius: 10px;
}

table.main_body td.feature_area,
td.feature_area
{
	width: 100% !important;
	padding: 0 16px;
	box-sizing: border-box;
}

td.feature_area,
td.h_login
{
	width: 100% !important;
}

td.feature_area img
{
	display: block;
	width: 100%;
	max-width: none;
	height: 15em;
	margin: 0;
	border-radius: 6px;
	object-fit: cover;
	box-sizing: border-box;
}

table.main_body > tbody > tr > td > a img[src*="invite_banner.png"]
{
	display: block;
	width: 50% !important;
	max-width: 50%;
	height: auto;
	margin: 0 auto;
	border-radius: 10px;
	box-sizing: border-box;
}

tr.top_header_bar
{
	height: 52px;
	background: var(--theme-header-bg);
	color: var(--theme-header-text);
}

tr.top_header_bar + tr
{
	background: var(--theme-page-bg);
}

ul.top_menu
{
	display: flex;
	align-items: center;
	gap: 30px;
	float: none;
	margin: 0;
	padding-left: 0;
}

.top_menu li
{
	display: block;
	float: none;
	line-height: 52px;
	padding: 0;
}

.top_menu a
{
	color: var(--theme-header-text);
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0;
}

.top_menu .selected a,
.top_menu a:hover
{
	color: var(--theme-secondary);
}

.user_login
{
	width: 535px;
	min-width: 535px;
	padding-right: 12px;
	border-left: 1px solid #e2e8f0;
	white-space: nowrap;
	vertical-align: middle;
}

.user_login input,
.user_login button,
div.horizontal_login form input.submit,
div.horizontal_login form input.button,
div.horizontal_login div.extras input.button,
form input.button,
form input.submit,
.button
{
	min-width: 112px;
	height: 30px;
	padding: 0 18px;
	border-radius: 5px;
	box-shadow: 0 2px 5px rgba(41, 41, 41, 0.18);
	text-transform: uppercase;
}

.user_login input:hover,
.user_login button:hover,
div.horizontal_login form input.submit:hover,
div.horizontal_login form input.button:hover,
div.horizontal_login div.extras input.button:hover,
form input.button:hover,
form input.submit:hover,
.button:hover
{
	filter: brightness(1.08);
}

.user_login button
{
	margin-right: 8px;
	color: #ffffff;
	background: var(--theme-primary);
	border: none;
	font-size: 12px;
	font-weight: bold;
	cursor: pointer;
}

.user_login button.register
{
	margin-right: 0;
	background: var(--theme-secondary);
}

.user_login button i
{
	margin-right: 9px;
	font-size: 13px;
}

div.dialog_main
{
	left: 50%;
	top: 50%;
	width: min(440px, calc(100% - 32px));
	max-height: calc(100vh - 48px);
	transform: translate(-50%, -50%);
	z-index: 1071;
	border: 0;
	border-radius: 14px;
	background: #ffffff;
	box-shadow: 0 18px 55px rgba(16, 24, 40, 0.26);
	text-align: center;
	overflow: hidden;
	box-sizing: border-box;
}

div.dialog_border
{
	padding: 0;
	border: 0;
}

div.dialog_header
{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 22px 20px 12px 20px;
	color: #1f2a37;
	border-bottom: 0;
	text-transform: none;
	font-size: 18px;
	font-weight: 700;
}

div.dialog_header .dialog_icon
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	flex: 0 0 54px;
	font-size: 24px;
}

div.dialog_header .dialog_title
{
	display: none;
}

div.dialog_main.dialog_error .dialog_icon
{
	color: #b42318;
	background: #fee4e2;
}

div.dialog_main.dialog_warn .dialog_icon
{
	color: #b54708;
	background: #fff3cd;
}

div.dialog_main.dialog_success .dialog_icon
{
	color: #2f7d32;
	background: #e7f6e7;
}

div.dialog_content
{
	padding: 0;
}

div.dialog_messages
{
	max-height: min(240px, calc(100vh - 210px));
	overflow-y: auto;
	padding: 4px 28px 22px 28px;
	color: #596579;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 400;
}

div.dialog_message_primary
{
	color: #111827;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.25;
}

div.dialog_message_secondary
{
	margin-top: 8px;
	color: #596579;
	font-size: 14px;
	font-weight: 400;
}

div.dialog_actions
{
	display: flex;
	justify-content: center;
	padding: 16px 20px 18px 20px;
	margin-top: 0;
	border-top: 1px solid #e4e8ec;
}

div.dialog_content input#dialog_button
{
	min-width: 112px;
	height: 32px;
	padding: 0 20px;
	color: #ffffff;
	font-size: 12px;
	border-radius: 7px;
}

.user_login .user_dropdown
{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin-left: 0;
	text-align: left;
	white-space: normal;
	width: 270px;
}

.user_login .user_dropdown_toggle
{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: 270px;
	min-width: 270px;
	min-height: 58px;
	height: auto;
	margin: 0;
	padding: 8px 12px;
	color: var(--theme-text-muted);
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(68, 81, 95, 0.08);
	text-transform: none;
	cursor: pointer;
	outline: none;
}

.user_login .user_dropdown_toggle:hover,
.user_login .user_dropdown:focus-within .user_dropdown_toggle
{
	filter: none;
	background: #eef3f7;
	border-color: #cbd5df;
}

.user_dropdown_photo,
.user_dropdown_fallback
{
	width: 38px !important;
	height: 38px !important;
	max-width: 38px;
	max-height: 38px;
	border-radius: 50%;
	flex: 0 0 38px;
}

.user_dropdown_photo
{
	display: block;
	object-fit: cover;
	overflow: hidden;
}

.user_dropdown_fallback
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	background: var(--theme-text-muted);
	font-size: 17px;
}

.user_dropdown_fallback i
{
	margin: 0;
	font-size: 17px;
}

.user_dropdown_text
{
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	max-width: 180px;
	overflow: hidden;
}

.user_dropdown_text span
{
	color: var(--theme-text-soft);
	font-size: 11px;
	font-weight: normal;
}

.user_dropdown_text strong
{
	color: var(--theme-text-muted);
	font-size: 13px;
	font-weight: bold;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.user_dropdown_chevron
{
	margin-left: auto;
	margin-right: 0;
	color: var(--theme-text-muted);
	font-size: 14px;
}

.user_dropdown_menu
{
	position: absolute;
	top: calc(100% - 2px);
	right: 0;
	z-index: 1000;
	display: none;
	width: 270px;
	min-width: 270px;
	padding: 12px 0 8px 0;
	background: #ffffff;
	border: 1px solid #d8dde3;
	border-radius: 5px;
	box-shadow: 0 12px 26px rgba(41, 41, 41, 0.18);
}

.user_dropdown_menu:before
{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -10px;
	height: 10px;
}

.user_dropdown:hover .user_dropdown_menu,
.user_dropdown:focus-within .user_dropdown_menu
{
	display: block;
}

.user_dropdown_menu a
{
	display: block;
	padding: 9px 14px;
	color: var(--theme-text);
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
	text-transform: none;
}

.user_dropdown_menu a:hover
{
	color: #ffffff;
	background: var(--theme-primary);
}

.user_dropdown_divider
{
	display: block;
	height: 1px;
	margin: 6px 0;
	background: #e4e8ec;
}

.user_dropdown_menu a.user_dropdown_logout
{
	color: #b42318;
}

.user_dropdown_menu a.user_dropdown_logout i
{
	width: 16px;
	margin-right: 8px;
	text-align: center;
}

.user_dropdown_menu a.user_dropdown_logout:hover
{
	color: #ffffff;
	background: #b42318;
}

td.logo,
.logo_div
{
	background: var(--theme-page-bg);
}

td.logo
{
	padding: 22px 0 20px 54px;
}

td.logo .main_logo img,
.centered_logo img
{
	max-width: 100%;
	height: auto;
}

.centered_logo
{
	padding: 26px 16px 20px 16px !important;
}

.centered_logo img
{
	width: auto;
	max-height: var(--theme-logo-max-height);
	object-fit: contain;
}

td.main_body
{
	width: 100%;
	padding: 0;
	display: table-cell;
	vertical-align: top;
}

.main_screen
{
	width: 100%;
	padding: 0 16px 16px 16px;
	box-sizing: border-box;
	overflow-x: auto;
	border-radius: 6px;
}

table.main_body > tbody > tr > td:not(.main_screen):not(.feature_area):not(.h_login):not(.tab_holder):not(.announcement_bar)
{
	padding-left: 16px;
	padding-right: 16px;
}

td.h_login
{
	display: table-cell;
	padding: 0 30px 22px 30px;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
}

div.horizontal_login
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	width: 100%;
	max-width: none;
	height: auto;
	min-height: 96px;
	margin: -18px 0 0 0;
	padding: 26px 34px 22px 34px;
	background: #ffffff;
	border: 0;
	border-radius: 14px;
	box-shadow: 0 10px 28px rgba(68, 81, 95, 0.10);
	box-sizing: border-box;
	flex-wrap: nowrap;
}

div.horizontal_login form
{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 18px;
	flex: 1 1 auto;
	float: none;
	padding: 0;
	width: 100%;
	white-space: nowrap;
}

div.horizontal_login form > div
{
	display: flex;
	align-items: center;
	width: 100%;
	white-space: nowrap;
}

div.horizontal_login .hz_fields_left
{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 24px;
	flex: 0 0 auto;
}

div.horizontal_login .hz_actions_right
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
	flex: 1 1 auto;
	margin-left: auto;
	min-width: 0;
	width: 100%;
}

div.page h2.content_title,
div.page h1.page_title
{
	margin: 0 0 22px 0;
	color: var(--theme-text-strong);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

table.selector
{
	width: 100%;
	margin: 0;
	padding: 22px 28px 26px 28px;
	background: #ffffff;
	border: 1px solid #e4e8ec;
	border-radius: 7px;
	box-shadow: 0 10px 28px rgba(41, 41, 41, 0.10);
	box-sizing: border-box;
}

table.selector > tbody > tr.top_controls > td,
table.selector > tbody > tr.bottom_controls > td
{
	padding: 0 0 18px 0;
}

table.selector > tbody > tr.bottom_controls > td
{
	padding: 18px 0 0 0;
}

table.selector > tbody > tr.top > td > br,
table.selector > tbody > tr.bottom > td > br
{
	display: none;
}

table.selector ul.letter
{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	margin: 0 0 18px 0;
	padding: 0;
	list-style: none;
}

table.selector tr.bottom ul.letter
{
	margin: 18px 0 0 0;
}

table.selector ul.letter li
{
	display: inline-flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

table.selector ul.letter li a
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	color: var(--theme-text-strong);
	background: #ffffff;
	border: 1px solid #d4dde6;
	border-radius: 6px;
	text-decoration: none;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	box-sizing: border-box;
	box-shadow: 0 1px 2px rgba(41, 41, 41, 0.08);
}

table.selector ul.letter li a:hover
{
	color: var(--theme-primary);
	border-color: var(--theme-primary-border);
	background: var(--theme-primary-soft);
}

table.selector ul.letter li.selected a
{
	color: #ffffff;
	background: var(--theme-primary);
	border-color: var(--theme-primary);
}

table.selector > tbody > tr.top_controls a,
table.selector > tbody > tr.bottom_controls a,
table.selector > tbody > tr.top_controls b,
table.selector > tbody > tr.bottom_controls b,
table.selector > tbody > tr.top_controls strong,
table.selector > tbody > tr.bottom_controls strong,
table.selector > tbody > tr.top_controls span.current,
table.selector > tbody > tr.bottom_controls span.current,
table.selector > tbody > tr.top_controls span.selected,
table.selector > tbody > tr.bottom_controls span.selected
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	margin: 0 5px 0 0;
	padding: 0 8px;
	color: var(--theme-text-strong);
	background: #ffffff;
	border: 1px solid #d4dde6;
	border-radius: 6px;
	text-decoration: none;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	box-sizing: border-box;
	box-shadow: 0 1px 2px rgba(41, 41, 41, 0.08);
}

table.selector > tbody > tr.top_controls a:hover,
table.selector > tbody > tr.bottom_controls a:hover
{
	color: var(--theme-primary);
	border-color: var(--theme-primary-border);
	background: var(--theme-primary-soft);
}

table.selector > tbody > tr.top_controls b,
table.selector > tbody > tr.bottom_controls b,
table.selector > tbody > tr.top_controls strong,
table.selector > tbody > tr.bottom_controls strong,
table.selector > tbody > tr.top_controls span.current,
table.selector > tbody > tr.bottom_controls span.current,
table.selector > tbody > tr.top_controls span.selected,
table.selector > tbody > tr.bottom_controls span.selected,
table.selector > tbody > tr.top_controls a.selected,
table.selector > tbody > tr.bottom_controls a.selected
{
	color: #ffffff;
	background: var(--theme-primary);
	border-color: var(--theme-primary);
}

table.selector > tbody > tr.top_controls b a,
table.selector > tbody > tr.bottom_controls b a,
table.selector > tbody > tr.top_controls strong a,
table.selector > tbody > tr.bottom_controls strong a,
table.selector > tbody > tr.top_controls span.current a,
table.selector > tbody > tr.bottom_controls span.current a,
table.selector > tbody > tr.top_controls span.selected a,
table.selector > tbody > tr.bottom_controls span.selected a
{
	color: inherit;
	background: transparent;
	border: 0;
	box-shadow: none;
}

table.selector table.main
{
	width: 100% !important;
	max-width: 1500px;
	margin: 0 auto !important;
	background: #ffffff;
	border: 1px solid #d9e0e7;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 6px;
	overflow: hidden;
	box-sizing: border-box;
}

table.selector table.main th
{
	height: 30px;
	padding: 0 18px;
	color: var(--theme-text-strong);
	background: #e9eef3;
	border: 0;
	border-bottom: 1px solid #cdd6df;
	font-size: 14px;
	font-weight: 700;
	text-align: left;
}

table.selector table.main th:last-child
{
	width: 240px;
	text-align: center;
	border-left: 1px solid #d9e0e7;
}

table.selector table.main td
{
	min-height: 50px;
	padding: 10px 18px;
	color: var(--theme-text-strong);
	border: 0;
	border-bottom: 1px solid #d9e0e7;
	font-size: 14px;
	line-height: 1.35;
	vertical-align: middle;
}

table.selector table.main tr:nth-child(odd) td
{
	background: #ffffff;
}

table.selector table.main tr:nth-child(even) td
{
	background: #f5f7f9;
}

table.selector table.main tr:last-child td
{
	border-bottom: 0;
}

table.selector table.main tr:hover td
{
	background: var(--theme-primary-soft);
}

table.selector table.main td:last-child
{
	width: 240px;
	text-align: center;
	border-left: 1px solid #d9e0e7;
	white-space: nowrap;
}

table.selector table.main td .button,
table.selector table.main td input.button,
table.selector table.main td input.submit
{
	min-width: 112px;
	height: 34px;
	margin: 0;
	padding: 0 18px;
	color: #ffffff;
	border-radius: 6px;
	box-shadow: 0 3px 8px rgba(41, 41, 41, 0.18);
}

table.selector.result-list
{
	padding: 22px 24px 24px 24px;
	border-color: #e1e7ee;
	border-radius: 9px;
	box-shadow: 0 12px 30px rgba(39, 52, 67, 0.10);
}

table.selector.result-list > tbody > tr.top:first-child > th
{
	padding: 0 0 18px 0;
	border: 0;
	background: transparent;
}

table.selector.result-list > tbody > tr.top_controls > td
{
	padding: 0;
}

.result-list-header
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	width: 100%;
}

.result-list-heading
{
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	text-align: left;
}

.result-list-icon
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border-radius: 50%;
}

.result-list-title-block
{
	min-width: 0;
}

.result-list-title
{
	margin: 0;
	color: var(--theme-text-strong);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
}

.result-list-subtitle
{
	margin-top: 6px;
	color: var(--theme-text-muted);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.35;
}

.platform-list-toolbar
{
	width: 100%;
	margin: 0 0 16px 0;
	padding: 0;
}

.platform-list-toolbar-start,
.platform-list-toolbar-end
{
	min-width: 0;
}

.platform-list-toolbar-end
{
	margin-left: auto;
	flex: 0 1 410px;
}

.platform-list-filter-toggle
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 112px;
	height: 38px;
	padding: 0 14px;
	color: var(--theme-text-strong);
	background: #ffffff;
	border: 1px solid #d8e1eb;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(68, 81, 95, 0.06);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}

.platform-list-filter-toggle:hover,
.platform-list-filter-toggle:focus
{
	color: var(--theme-primary);
	background: var(--theme-primary-soft);
	border-color: var(--theme-primary-border);
	outline: none;
}

.platform-list-filter-toggle:focus-visible
{
	box-shadow: 0 0 0 3px rgba(0, 91, 187, 0.12);
}

.platform-list-filter-chevron
{
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.16s ease;
	margin-top: -3px;
}

.platform-list-filter-toggle[aria-expanded='true'] .platform-list-filter-chevron
{
	transform: rotate(225deg);
	margin-top: 3px;
}

.platform-list-top-actions
{
	min-width: 0;
}

.platform-list-filters
{
	margin: 0 0 16px 0;
	padding: 16px;
	background: #f8fbff;
	border: 1px solid #e0e8f1;
	border-radius: 9px;
	box-sizing: border-box;
}

.platform-list-filter-grid
{
	align-items: flex-start;
}

.platform-list-filter-col
{
	min-width: 0;
}

.platform-list-filter-control
{
	width: 100%;
	margin: 0;
}

.platform-list-filter-control table.selector_control,
table.selector.result-list .platform-list-filter-control.selector_control
{
	width: 100%;
	margin: 0;
}

.platform-list-filter-control label,
table.selector.result-list .platform-list-filter-control > label
{
	display: block;
	margin: 0 0 6px 0;
	color: var(--theme-text-strong);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	white-space: nowrap;
}

.platform-list-filter-input
{
	min-width: 0;
}

.platform-list-filter-input table.selector_control,
.platform-list-filter-input table
{
	width: 100%;
	margin: 0;
}

.platform-list-filter-input table.selector_control td,
.platform-list-filter-input table td
{
	display: block;
	width: auto;
	padding: 0;
}

.platform-list-filter-input input[type='text'],
.platform-list-filter-input input[type='password'],
.platform-list-filter-input select,
.platform-list-filter-input textarea,
.platform-list-filter-input .form-control
{
	width: 100%;
	max-width: 100%;
	min-height: 36px;
	margin: 0;
	color: var(--theme-text-strong);
	background-color: #ffffff;
	border: 1px solid #d8e1eb;
	border-radius: 7px;
	box-shadow: inset 0 1px 2px rgba(68, 81, 95, 0.04);
	box-sizing: border-box;
	font-size: 13px;
	line-height: 1.35;
}

.platform-list-filter-input input[type='checkbox'],
.platform-list-filter-input input[type='radio']
{
	width: auto;
	min-height: 0;
	margin-right: 6px;
}

.platform-list-filter-input input:focus,
.platform-list-filter-input select:focus,
.platform-list-filter-input textarea:focus,
.platform-list-filter-input .form-control:focus
{
	border-color: var(--theme-primary-border);
	box-shadow: 0 0 0 3px rgba(0, 91, 187, 0.10);
	outline: none;
}

.platform-list-filter-input form,
.platform-list-filter-input .ui-form
{
	margin: 0;
	padding: 0 !important;
}

.platform-list-filter-input .ui-form
{
	display: flex;
	align-items: center;
	gap: 8px;
}

.platform-list-filter-input .ui-form input[type='text']
{
	flex: 1 1 auto;
	min-width: 0;
}

.platform-list-filter-input .ui-form input[type='submit'],
.platform-list-filter-input input[type='button'],
.platform-list-filter-input .button,
.platform-list-filter-input .btn
{
	width: auto;
	min-width: 96px;
	height: 34px;
	margin: 0;
	padding: 0 14px;
	border-radius: 7px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.result-list-tools
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex: 0 1 430px;
}

.result-list-search
{
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	max-width: 410px;
	margin: 0;
	position: relative;
}

.result-list-search > .ui-form
{
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	margin: 0;
	position: relative;
}

.result-list-search > .ui-form .result-list-search-icon
{
	position: absolute;
	left: 15px;
	top: 50%;
	width: 13px;
	height: 13px;
	margin-top: -7px;
	border: 2px solid #6f8196;
	border-radius: 50%;
	box-sizing: border-box;
	pointer-events: none;
	z-index: 2;
}

.result-list-search > .ui-form .result-list-search-icon:after
{
	content: "";
	position: absolute;
	width: 7px;
	height: 2px;
	right: -6px;
	bottom: -4px;
	background: #6f8196;
	transform: rotate(45deg);
	border-radius: 2px;
}

.result-list-search > .ui-form input[type='text']
{
	flex: 1 1 auto;
	width: 100%;
	height: 38px;
	min-width: 280px;
	margin: 0;
	padding: 0 14px 0 44px !important;
	color: var(--theme-text-strong);
	background: #ffffff;
	border: 1px solid #d8e1eb;
	border-radius: 8px;
	box-shadow: inset 0 1px 2px rgba(68, 81, 95, 0.04);
	box-sizing: border-box;
	font-size: 13px;
	line-height: 38px;
}

.result-list-search > .ui-form input[type='text']:focus
{
	border-color: var(--theme-primary-border);
	box-shadow: 0 0 0 3px rgba(0, 91, 187, 0.10);
	outline: none;
}

.result-list-search-submit
{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.result-list-search-clear
{
	flex: 0 0 auto;
	width: auto;
	min-width: 0;
	height: auto;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--theme-primary);
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	text-transform: none;
	cursor: pointer;
}

.result-list-meta
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 12px 0;
}

.result-list-count
{
	color: var(--theme-text-muted);
	font-size: 13px;
	line-height: 1.4;
}

.result-list-pagination
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 0;
}

.result-list-pagination > br
{
	display: none;
}

table.selector.result-list ul.letter
{
	justify-content: flex-end;
	margin: 0;
}

table.selector.result-list table.main
{
	max-width: none;
	border-color: #dfe6ee;
	border-radius: 7px;
}

table.selector.result-list table.main th
{
	height: 38px;
	padding: 0 18px;
	background: #eef3f8;
	color: #344158;
	font-size: 13px;
	font-weight: 700;
}

table.selector.result-list table.main th:last-child,
table.selector.result-list table.main td:last-child
{
	width: 150px;
	text-align: center;
}

table.selector.result-list table.main td
{
	padding: 11px 18px;
	color: #304059;
	font-size: 14px;
	line-height: 1.35;
}

table.selector.result-list table.main td:first-child
{
	font-weight: 500;
}

table.selector.result-list table.main td .button,
table.selector.result-list table.main td input.button,
table.selector.result-list table.main td input.submit
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 96px;
	height: 30px;
	padding: 0 15px;
	border-radius: 7px;
	box-shadow: 0 2px 6px rgba(39, 52, 67, 0.16);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

@media (max-width: 760px)
{
	table.selector.result-list
	{
		padding: 18px 14px;
	}

	.result-list-header,
	.result-list-meta
	{
		flex-direction: column;
		align-items: stretch;
	}

	.platform-list-toolbar
	{
		align-items: stretch !important;
		flex-direction: column;
	}

	.platform-list-toolbar-start,
	.platform-list-toolbar-end,
	.platform-list-top-actions
	{
		width: 100%;
	}

	.platform-list-toolbar-end
	{
		flex: 1 1 auto;
		margin-left: 0;
	}

	.platform-list-filter-toggle
	{
		width: 100%;
	}

	.platform-list-filters
	{
		padding: 14px;
	}

	.result-list-tools,
	.result-list-search
	{
		max-width: none;
		width: 100%;
	}

	.result-list-search input[type='text']
	{
		min-width: 0;
	}

	.result-list-pagination,
	table.selector.result-list ul.letter
	{
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	table.selector.result-list table.main th,
	table.selector.result-list table.main td
	{
		padding-left: 12px;
		padding-right: 12px;
	}

	table.selector.result-list table.main th:last-child,
	table.selector.result-list table.main td:last-child
	{
		width: 112px;
	}

	html body div.info_box > div[class] > div.info_title,
	.admin-screen div.info_box > div[class] > div.info_title
	{
		padding: 12px 14px;
	}

	html body div.info_box > div[class] > div.info_data,
	.admin-screen div.info_box > div[class] > div.info_data,
	div.component,
	.admin-screen div.component,
	.help_video_section
	{
		padding: 14px;
	}

	html body div.info_box div.listing table.info_list,
	html body div.info_box div.listing table.info_list tbody,
	html body div.info_box div.listing table.info_list tr,
	html body div.info_box div.listing table.info_list td
	{
		display: block;
		width: auto;
	}

	html body div.info_box div.listing table.info_list td.left
	{
		width: auto;
		padding: 0 0 10px 0;
		text-align: left;
	}

	html body div.info_box form input.button,
	html body div.info_box form input.submit,
	html body div.info_box .button
	{
		max-width: 100%;
		white-space: normal;
	}
}

div.horizontal_login div.extras
{
	display: flex;
	align-items: center;
	gap: 16px;
	flex: 0 0 auto;
	float: none;
	padding: 0;
	white-space: nowrap;
}

div.horizontal_login div.hz_autologin,
div.horizontal_login div.extras a
{
	color: var(--theme-text-muted);
}

div.horizontal_login .hz_field
{
	display: flex;
	flex-direction: column;
	gap: 7px;
	padding-top: 6px;
}

div.horizontal_login .hz_field label
{
	margin: 0;
	color: var(--theme-text-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}

div.horizontal_login input[type='text'],
div.horizontal_login input[type='password']
{
	width: 280px;
	height: 30px;
	min-width: 0;
	margin: 0;
	padding: 0 15px;
	color: var(--theme-text-muted);
	background: #f6f9fc;
	border: 1px solid #d9e1ea;
	border-radius: 8px;
	box-shadow: inset 0 1px 2px rgba(68, 81, 95, 0.05);
	box-sizing: border-box;
	font-size: 12px;
}

div.horizontal_login input[type='hidden']
{
	display: none;
}

div.horizontal_login form > div > input[type='hidden']
{
	display: none;
}

div.horizontal_login .hz_autologin
{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 15px;
	color: var(--theme-text-soft);
	font-size: 11px;
	white-space: nowrap;
}

div.horizontal_login .hz_login_actions
{
	display: inline-flex;
	align-items: flex-end;
	justify-content: flex-end;
	flex: 1 1 auto;
	gap: 18px;
	margin-top: 15px;
	margin-left: 0;
	width: 100%;
}

div.horizontal_login .hz_login_actions .forgot
{
	margin-left: auto;
}

div.horizontal_login .hz_autologin label
{
	margin: 0;
	color: var(--theme-text-soft);
	font-size: 11px;
	font-weight: normal;
	line-height: 1;
}

div.horizontal_login .hz_autologin input[type='checkbox']
{
	width: 14px;
	height: 14px;
	min-width: 14px;
	margin: 0;
	padding: 0;
	box-shadow: none;
}

div.horizontal_login form input.submit
{
	width: 92px;
	min-width: 92px;
	height: 30px;
	margin-top: 0;
	padding: 0 16px;
	background: var(--theme-primary);
	border: 0;
	border-radius: 5px;
	box-shadow: none;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
}

div.horizontal_login .hz_login_actions button.submit,
div.horizontal_login .hz_login_actions button.button
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: 92px;
	min-width: 92px;
	height: 30px;
	margin: 0;
	padding: 0 16px;
	border: 0;
	border-radius: 5px;
	box-shadow: none;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	cursor: pointer;
}

div.horizontal_login .hz_login_actions button.submit
{
	background: var(--theme-primary);
}

div.horizontal_login .hz_login_actions button.register
{
	background: var(--theme-secondary);
}

div.horizontal_login .hz_login_actions button i
{
	margin: 0;
	font-size: 11px;
}

div.horizontal_login div.extras .forgot a
{
	display: inline-flex;
	align-items: center;
	height: 30px;
	margin-top: 15px;
	color: var(--theme-text-muted);
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
}

div.horizontal_login .hz_login_actions .forgot a,
div.horizontal_login .hz_login_actions .forgot a:link,
div.horizontal_login .hz_login_actions .forgot a:visited,
div.horizontal_login .hz_login_actions .forgot a:hover
{
	display: inline-flex;
	align-items: center;
	height: 30px;
	color: var(--theme-text-muted);
	font-size: 10px;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

div.horizontal_login .hz_login_actions input.button
{
	width: 92px;
	min-width: 92px;
	height: 30px;
	margin-top: 0;
	padding: 0 16px;
	background: var(--theme-secondary);
	border: 0;
	border-radius: 5px;
	box-shadow: none;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
}

div.horizontal_login div.extras input.button
{
	width: 92px;
	min-width: 92px;
	height: 30px;
	margin-top: 15px;
	padding: 0 16px;
	background: var(--theme-secondary);
	border: 0;
	border-radius: 5px;
	box-shadow: none;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
}

.homepage
{
	width: 100%;
	max-width: 1075px;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 10px;
}

.homepage td
{
	padding: 0;
	vertical-align: top;
}

.homepage img
{
	max-width: 100%;
	height: auto;
	border-radius: 5px;
	box-shadow: 0 5px 12px rgba(41, 41, 41, 0.16);
}

.homepage div.article,
.homepage div.blueblock,
.homepage table.newsletter_form
{
	min-height: 115px;
	height: auto;
	padding: 16px 14px;
	color: #ffffff;
	border-radius: 5px;
	box-shadow: 0 5px 12px rgba(41, 41, 41, 0.18);
	background: var(--theme-secondary);
	box-sizing: border-box;
}

.homepage div.blueblock
{
	background: var(--theme-primary);
}

.homepage div.article:hover,
.homepage div.blueblock:hover
{
	filter: brightness(1.04);
}

.homepage table.newsletter_form
{
	width: 100%;
	background: var(--theme-primary);
}

.homepage table.newsletter_form td.calltoaction
{
	color: #ffffff;
	font-weight: bold;
	line-height: 1.35;
}

table.plain_screen,
.page_show table.plain_screen
{
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 1px #d8dde3;
	overflow: hidden;
}

table.plain_screen td.main,
.page_show table.plain_screen td.main
{
	padding: 0;
	text-align: center;
	border-radius: 10px;
	overflow: hidden;
}

.page_show table.plain_screen img
{
	max-width: 100%;
	height: auto;
}

.about_page_intro
{
	max-width: 980px;
	margin: 0 auto 24px auto;
	color: var(--theme-text-muted);
	font-size: 15px;
	line-height: 1.7;
	text-align: left;
}

.about_page_lead
{
	margin-top: 0;
	color: var(--theme-text-strong);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
}

.about_page_grid
{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	max-width: 980px;
	margin: 0 auto 26px auto;
	text-align: left;
}

.about_page_card
{
	padding: 20px;
	background: var(--theme-page-bg);
	border: 1px solid #d8dde3;
	border-radius: 10px;
	box-sizing: border-box;
}

.about_page_card h3
{
	margin: 0 0 10px 0;
	color: var(--theme-text-strong);
	font-size: 16px;
}

.about_page_card p
{
	margin: 0;
	color: var(--theme-text-muted);
	font-size: 14px;
	line-height: 1.6;
}

.about_page_list
{
	max-width: 980px;
	margin: 0 auto;
	padding-left: 20px;
	color: var(--theme-text-muted);
	font-size: 15px;
	line-height: 1.8;
	text-align: left;
}

@media (max-width: 900px)
{
	.about_page_grid
	{
		grid-template-columns: 1fr;
	}
}

.footer
{
	max-width: none;
	margin: 0;
	background: var(--theme-footer-bg);
}

@media (max-width: 980px)
{
	.center_of_world
	{
		width: 100%;
		margin-top: 9px;
	}

	td.logo
	{
		padding-left: 20px;
	}

	div.horizontal_login,
	div.horizontal_login form,
	div.horizontal_login div.extras
	{
		flex-wrap: wrap;
	}
}

@media (max-width: 1180px)
{
	td.logo
	{
		padding-left: 14px;
	}

	.left_menu_container
	{
		padding-top: 24px;
	}

	.menu_body_seperator > tbody > tr > td.left_menu_container
	{
		width: 145px;
		min-width: 145px;
	}

	.menu_body_seperator > tbody > tr > td.left_menu_container > table
	{
		width: 100%;
	}

	.side_menu,
	.active_side_menu_section,
	.side_menu ul.left_top,
	.side_menu ul.left_bottom
	{
		width: 145px;
	}

	.active_side_menu_section
	{
		padding: 5px;
	}

	.active_side_menu_title,
	.side_menu ul.left_top li > a,
	.side_menu ul.left_bottom li > a,
	.side_menu .active_side_menu_section ul.active_side_sub_menu li > a,
	.side_menu ul.left_top .side_sub_menu li > a,
	.side_menu ul.left_bottom .side_sub_menu li > a
	{
		gap: 6px;
		padding-left: 6px;
		padding-right: 6px;
	}

	.side_sub_menu
	{
		padding-left: 12px;
	}

	.side_menu_icon
	{
		width: 14px;
		flex-basis: 14px;
		font-size: 13px;
	}

	.main_screen
	{
		padding: 0 8px 12px 8px;
	}

	td.feature_area,
	td.h_login,
	td.announcement_bar,
	table.main_body td.feature_area
	{
		padding-left: 8px;
		padding-right: 8px;
	}

	table.main_body > tbody > tr > td:not(.main_screen):not(.feature_area):not(.h_login):not(.tab_holder):not(.announcement_bar)
	{
		padding-left: 8px;
		padding-right: 8px;
	}

	table.selector
	{
		padding: 14px;
	}

	table.selector table.main th
	{
		padding-left: 10px;
		padding-right: 10px;
	}

	table.selector table.main td
	{
		padding: 8px 10px;
	}

	table.selector table.main th:last-child,
	table.selector table.main td:last-child
	{
		width: 180px;
	}

	table.selector table.main td .button,
	table.selector table.main td input.button,
	table.selector table.main td input.submit
	{
		min-width: 92px;
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media (max-width: 1024px)
{
	.center_of_world
	{
		margin-bottom: 12px;
		border-radius: 0;
		box-shadow: none;
	}

	.menu_body_seperator > tbody > tr > td.left_menu_container
	{
		width: 145px;
		min-width: 145px;
	}

	.side_menu,
	.active_side_menu_section,
	.side_menu ul.left_top,
	.side_menu ul.left_bottom
	{
		width: 145px;
	}

	.side_menu ul.left_top li > a,
	.side_menu ul.left_bottom li > a
	{
		min-height: 34px;
		font-size: 12px;
	}

	.side_menu_chevron
	{
		display: none;
	}

	table.selector
	{
		padding: 10px;
		border-radius: 5px;
	}

	table.selector table.main th:last-child,
	table.selector table.main td:last-child
	{
		width: auto;
	}
}

@media (max-width: 560px)
{
	.top_menu li
	{
		line-height: 38px;
	}

	.user_login
	{
		display: block;
		width: auto;
		min-width: 0;
		padding: 8px;
		text-align: left;
	}

	.user_login .user_dropdown
	{
		display: block;
		margin: 8px 0 0 0;
	}

	.user_login .user_dropdown_toggle
	{
		width: 100%;
		min-width: 0;
	}

	div.horizontal_login input[type='text'],
	div.horizontal_login input[type='password'],
	div.horizontal_login form input.submit,
	div.horizontal_login form input.button
	{
		width: 100%;
		min-width: 0;
	}
}

/** Modern guest authentication landing page. */
body.auth_landing_page
{
    min-height: 100vh;
    background: var(--theme-page-bg);
    color: var(--theme-text);
}

body.auth_landing_page .center_of_world
{
    width: 100%;
    max-width: none;
    min-height: 100vh;
    margin: 0;
    background: var(--theme-page-bg);
    border-radius: 0;
    box-shadow: none;
}

body.auth_landing_page .header
{
    height: auto;
    background: #ffffff;
    border-bottom: 1px solid #e4e8ec;
}

body.auth_landing_page tr.top_header_bar
{
    height: auto;
    background: #ffffff;
}

body.auth_landing_page .top_header_nav
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 1120px;
    height: auto;
    margin: 0 auto;
    padding: 14px 24px;
    box-sizing: border-box;
}

body.auth_landing_page .top_header_logo img
{
    display: block;
    max-height: 46px;
    width: auto;
}

body.auth_landing_page .auth_back_link
{
    color: var(--theme-text-muted);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

body.auth_landing_page .auth_back_link:hover,
body.auth_landing_page .auth_back_link:focus
{
    color: var(--theme-primary);
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.auth_landing_page .user_login,
body.auth_landing_page td.logo,
body.auth_landing_page .left_menu_container,
body.auth_landing_page .tab_holder,
body.auth_landing_page .announcement_bar,
body.auth_landing_page .auth_hide_on_landing,
body.auth_landing_page td.main_screen
{
    display: none !important;
}

body.auth_landing_page .main_page
{
    min-height: calc(100vh - 170px);
    background: var(--theme-page-bg);
}

body.auth_landing_page .menu_body_seperator,
body.auth_landing_page table.main_body
{
    width: 100%;
}

body.auth_landing_page .menu_body_seperator > tbody > tr > td.main_body
{
    width: 100% !important;
    overflow: visible;
}

body.auth_landing_page td.h_login
{
    display: table-cell;
    width: 100% !important;
    padding: clamp(30px, 6vh, 72px) 24px 22px 24px;
    box-sizing: border-box;
}

body.auth_landing_page div.horizontal_login.auth_login
{
    display: block;
    width: 100%;
    max-width: 1060px;
    min-height: 0;
    margin: 0 auto;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

body.auth_landing_page div.horizontal_login.auth_login form,
body.auth_landing_page div.horizontal_login.auth_login form > div,
body.auth_landing_page .auth_login_form .form_user
{
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    white-space: normal;
}

body.auth_landing_page .auth_login_shell
{
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(400px, 460px);
    gap: clamp(28px, 5vw, 64px);
    align-items: center;
    width: 100%;
}

body.auth_landing_page .auth_brand_panel
{
    padding: 38px 10px;
    color: var(--theme-text-muted);
}

body.auth_landing_page .auth_brand_logo
{
    display: block;
    width: min(360px, 100%);
    height: auto;
    margin-bottom: 26px;
}

body.auth_landing_page .auth_brand_kicker
{
    margin-bottom: 12px;
    color: var(--theme-text-strong);
    font-size: 28px;
    font-weight: 800;
    line-height: 1.15;
}

body.auth_landing_page .auth_brand_panel p
{
    max-width: 460px;
    margin: 0;
    color: var(--theme-text-muted);
    font-size: 16px;
    line-height: 1.65;
}

body.auth_landing_page .auth_login_card
{
    width: 100%;
    padding: 36px 38px 34px 38px;
    background: #ffffff;
    border: 1px solid #dfe6ed;
    border-radius: 14px;
    box-shadow: 0 18px 45px rgba(36, 48, 65, 0.14);
    box-sizing: border-box;
}

body.auth_landing_page .auth_notice
{
    margin: 0 0 18px 0;
    padding: 11px 13px;
    color: #19486f;
    background: var(--theme-primary-soft);
    border: 1px solid var(--theme-primary-border);
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.35;
}

body.auth_landing_page .auth_login_intro
{
    margin-bottom: 28px;
}

body.auth_landing_page .auth_login_intro h1
{
    margin: 0 0 8px 0;
    color: var(--theme-text-strong);
    font-size: 28px;
    font-weight: 800;
    line-height: 1.15;
}

body.auth_landing_page .auth_login_intro p
{
    margin: 0;
    color: var(--theme-text-muted);
    font-size: 15px;
    line-height: 1.5;
}

body.auth_landing_page .auth_field
{
    margin-bottom: 18px;
}

body.auth_landing_page .auth_field label
{
    display: block;
    margin: 0 0 7px 0;
    color: var(--theme-text-strong);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
}

body.auth_landing_page .auth_login_card input[type='text'],
body.auth_landing_page .auth_login_card input[type='password']
{
    width: 100%;
    min-width: 0;
    height: 46px;
    margin: 0;
    padding: 0 14px;
    color: var(--theme-text-strong);
    background: #ffffff;
    border: 1px solid #cfd8e3;
    border-radius: 9px;
    box-shadow: none;
    box-sizing: border-box;
    font-size: 15px;
    line-height: 46px;
}

body.auth_landing_page .auth_login_card input[type='text']:focus,
body.auth_landing_page .auth_login_card input[type='password']:focus
{
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(0, 91, 187, 0.14);
    outline: none;
}

body.auth_landing_page .auth_password_field
{
    position: relative;
}

body.auth_landing_page .auth_password_field input[type='password'],
body.auth_landing_page .auth_password_field input[type='text']
{
    padding-right: 48px;
}

body.auth_landing_page .auth_password_toggle
{
    position: absolute;
    top: 1px;
    right: 1px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    color: var(--theme-text-soft);
    background: transparent;
    border: 0;
    border-radius: 8px;
    cursor: pointer;
}

body.auth_landing_page .auth_password_toggle:hover,
body.auth_landing_page .auth_password_toggle:focus
{
    color: var(--theme-primary);
    background: var(--theme-primary-soft);
    outline: none;
}

body.auth_landing_page .auth_options_row
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 6px 0 22px 0;
    color: var(--theme-text-muted);
    font-size: 13px;
}

body.auth_landing_page .auth_keep_signed_in
{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--theme-text-muted);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

body.auth_landing_page .auth_keep_signed_in input[type='checkbox']
{
    width: 16px;
    height: 16px;
    min-width: 16px;
    margin: 0;
    padding: 0;
    box-shadow: none;
}

body.auth_landing_page .auth_forgot_link,
body.auth_landing_page .auth_register_prompt a,
body.auth_landing_page .auth_sso_link
{
    color: var(--theme-primary);
    font-weight: 700;
    text-decoration: none;
}

body.auth_landing_page .auth_forgot_link:hover,
body.auth_landing_page .auth_forgot_link:focus,
body.auth_landing_page .auth_register_prompt a:hover,
body.auth_landing_page .auth_register_prompt a:focus,
body.auth_landing_page .auth_sso_link:hover,
body.auth_landing_page .auth_sso_link:focus
{
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.auth_landing_page .auth_submit
{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 0 18px;
    color: #ffffff;
    background: var(--theme-primary);
    border: 1px solid var(--theme-primary);
    border-radius: 9px;
    box-shadow: 0 8px 16px rgba(0, 91, 187, 0.20);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

body.auth_landing_page .auth_submit:hover,
body.auth_landing_page .auth_submit:focus
{
    background: #004c9e;
    box-shadow: 0 10px 18px rgba(0, 91, 187, 0.24);
    outline: none;
}

body.auth_landing_page .auth_submit:active
{
    transform: translateY(1px);
}

body.auth_landing_page .auth_sso_link
{
    display: block;
    margin-top: 14px;
    text-align: center;
}

body.auth_landing_page .auth_register_prompt
{
    margin: 22px 0 0 0;
    color: var(--theme-text-muted);
    font-size: 14px;
    line-height: 1.45;
    text-align: center;
}

body.auth_landing_page .auth_register_prompt a
{
    color: var(--theme-secondary);
}

body.auth_landing_page .auth_public_links
{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    width: min(940px, calc(100% - 48px));
    margin: 0 auto 32px auto;
}

body.auth_landing_page .auth_public_links a
{
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 12px;
    color: var(--theme-text-muted);
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid #dde5ed;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

body.auth_landing_page .auth_public_links a:hover,
body.auth_landing_page .auth_public_links a:focus
{
    color: var(--theme-primary);
    background: #ffffff;
    border-color: var(--theme-primary-border);
    outline: none;
}

body.auth_landing_page .footer
{
    height: auto;
    margin: 0;
    padding: 18px 24px 24px 24px;
    color: var(--theme-text-soft);
    background: transparent;
    text-align: center;
}

body.auth_landing_page .social_links
{
    width: auto;
    margin: 0 auto;
    border: 0;
}

body.auth_landing_page .social_links td
{
    padding: 0;
}

body.auth_landing_page div.menu_footer
{
    display: block;
    width: auto;
    margin: 0;
    color: var(--theme-text-soft);
    text-align: center;
    font-size: 12px;
}

body.auth_landing_page .bottom_menu a
{
    color: var(--theme-text-soft);
    font-size: 12px;
}

@media (max-width: 860px)
{
    body.auth_landing_page .auth_login_shell
    {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 500px;
        margin: 0 auto;
    }

    body.auth_landing_page .auth_brand_panel
    {
        padding: 8px 0 0 0;
        text-align: center;
    }

    body.auth_landing_page .auth_brand_logo
    {
        width: min(260px, 80%);
        margin: 0 auto 14px auto;
    }

    body.auth_landing_page .auth_brand_kicker
    {
        font-size: 22px;
    }

    body.auth_landing_page .auth_brand_panel p
    {
        display: none;
    }
}

@media (max-width: 560px)
{
    body.auth_landing_page .top_header_nav
    {
        padding: 12px 16px;
    }

    body.auth_landing_page .top_header_logo img
    {
        max-height: 38px;
    }

    body.auth_landing_page td.h_login
    {
        padding: 22px 14px 18px 14px;
    }

    body.auth_landing_page .auth_login_card
    {
        padding: 26px 22px 24px 22px;
        border-radius: 12px;
    }

    body.auth_landing_page .auth_login_intro h1
    {
        font-size: 24px;
    }

    body.auth_landing_page .auth_options_row
    {
        align-items: flex-start;
        flex-direction: column;
    }

body.auth_landing_page .auth_public_links
    {
        width: calc(100% - 28px);
        margin-bottom: 24px;
    }
}

/**GENERIC AUDIT TRAIL--------------------------------------------------*/
.platform-audit-loading
{
    color: var(--theme-text-soft);
    font-size: 13px;
    line-height: 1.45;
}

.platform-audit-error
{
    margin: 0;
}
