@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700);



 /* Side menu updated */

 .sidebar .flyout-menu {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  width: 220px;
  background: #f8f8f8;
  border-left: 1px solid #ddd;
  z-index: 1000;
}

.sidebar .flyout:hover .flyout-menu {
  display: block;
}

/* Affix */

#menu-builder {
	border:1px solid #ddd;
	padding:20px;
	background:#fff;
}

#menu-builder ul {
	list-style-type: none;
	padding:0px;
}

#menu-builder ul li {
	margin-bottom:5px;
}

.menu-item-block {
	border:1px solid #ddd;
	background:#fff;
	padding:10px 0px 10px 15px;
	background-color: #efefef;
}

.menu-item-block:hover .menu-item-actions {
	display: inline-block;
}

.menu-item-block input {
	margin-right: 10px;
}

.menu-item-block .tag-page {
	float:right;
	margin-left:20px;
}

.menu-url {
	margin-left:30px;
}

.menu-level-1 {
	margin-left:30px;
}

.menu-level-2 {
	margin-left:60px;
}

.menu-item-actions {
	float:right;
	display: none;
	color:#000;
}

.menu-item-actions li {
	display: inline-block;
	padding:0px 5px;
}

.menu-item-actions li a {
	color:#000;
}

.menu-item-status {
	color:#198B34;
	float:right;
	font-size:12px;
	margin-top: 4px;
	margin-left:10px;
}

.menu-item-visible {
	color:#272727;
	float:right;
	font-size:14px;
	margin-top: 4px;
	margin-left:10px;
}

.menu-item-expand {
	color:#666666;
	float:right;
	margin-left:15px;
	font-size: 12px;
	margin-top:4px;
}

.menu-item-edit {
	background-color: #fff;
	border-right:1px solid #ddd;
	border-left:1px solid #ddd;
	border-bottom:1px solid #ddd;
	padding:20px 20px 20px 20px;
	max-width: 600px;
}

.menu-item-edit label {
	font-size:14px;
	color:#5e5e5e;
}


.analytics-title {
	font-size:16px;
	font-weight: 600;
	color:#ac1f2d;
	padding:20px 0px;
	border-bottom:1px solid #ddd;
}

.tab-pane .affix {
    position: absolute;
}
.tab-pane.active .affix {
    position: fixed;
}


.tab-content>.tab-pane {
    display: block;
    height: 0;
    overflow: hidden;
}
.tab-content>.tab-pane.active {
    height: auto;
}

.row-centered {
    text-align:center;
}
.col-centered {
    display:inline-block;
    float:none;
    /* reset the text-align */
    text-align:left;
    /* inline-block space fix */
    margin-right:-4px;
}


.docTitle {
	Font-size:20px;
	font-weight: 700;
}



#colors.tab-pane select.form-control-sm {
	width:150px;
}


.table {
	margin-bottom: 0;
}

.table .no-results td {
  text-align: center;
  padding: 20px 20px;
  color: #999;
}

.table-grid{
  display:grid;
  grid-template-columns: 1fr max-content;
  column-gap:.5rem;
  row-gap:.375rem;
  align-items:center;
  width:max-content;
}

.table-grid .req{ white-space:nowrap; }

.table-border{
	border:1px solid #ddd;
}

 /*.table > tbody > tr > td {
     vertical-align: top!important;
}*/

select,
select option{
  font-style:normal !important;
  font-weight:normal !important;
}


.img-fluid {
  max-width: 100%;
  height: auto;
}

.table-small td {
	padding:5px 0px !important;
}

#exportTable{
	width:100%;
}

#exportTable td {
	text-align: center;
	border:1px solid #fff;
}

#exportTable td a {
	padding:10px;
	background:#ddd;
	color:#555;
	display: block;
	text-decoration: none;
}

#exportTable .exportSelected {
	background-color: #31708f;
	color:#fff;
}

#exportTable td a:hover {
	text-decoration: none;
	background-color: #31708f;
	color:#fff;
}

body {
	font-family: 'Source Sans Pro', sans-serif;
	font-size:16px;
	font-weight:400;
	background:	#272727;
}

label {
	font-weight:600;
}

a {
	color:#ac1f2d;
}

a:hover, a:focus {
	color:#9c1b28;
	text-decoration: none;
}


.alert-sm {
	padding:5px 10px;
	display: inline;
}

.alert {
	margin-top: 20px;
}


h1,h2,h3,h4,h5,h6 {
	font-weight:700;
}



input.parsley-success, select.parsley-success, textarea.parsley-success {
	color: #555 !important;
	background-color: #ffffff !important;
	border: 1px solid #ccc !important;
  }

.m-0 {
	margin:0px !important;
}

.mb-0 {
	margin-bottom:0px;
}

.mb-1 {
	margin-bottom:10px;
}

.mb-2 {
	margin-bottom:20px;
}

.mb-3 {
	margin-bottom:30px;
}

.mb-4 {
	margin-bottom:40px;
}


.mt-0 {
	margin-top:0px;
}

.mt-1 {
	margin-top:10px;
}

.mt-2 {
	margin-top:20px;
}

.mt-3 {
	margin-top:30px;
}

.mt-4 {
	margin-top:40px;
}

.ml-5 {
	margin-left:5px;
}

.ml-10 {
	margin-left:10px;
}

.ml-20 {
	margin-left:10px;
}

.mr-5 {
	margin-right:5px;
}

.mr-10 {
	margin-right:10px;
}

.mr-20 {
	margin-right:10px;
}

.p-0 {
	padding:0px;
}

.p-10 {
	padding:10px;
}

.p-15 {
	padding:15px; 
}

.p-20 {
	padding:20px;
}

.gap-0 { gap: 0 !important; }
.gap-1 { gap: 0.25rem !important; }  /* 4px */
.gap-2 { gap: 0.5rem !important; }   /* 8px */
.gap-3 { gap: 1rem !important; }     /* 16px */
.gap-4 { gap: 1.5rem !important; }   /* 24px */
.gap-5 { gap: 3rem !important; }     /* 48px */

textarea {
	resize: vertical;
}


.card {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    overflow: hidden;
}

.card-header {
    padding: 14px 16px;
    border-bottom: 1px solid #e0e0e0;
    font-weight: 600;
    background: #f9f9f9;
}

.card-body {
    padding: 16px;
}

.card-footer {
    padding: 14px 16px;
    border-top: 1px solid #e0e0e0;
    background: #f9f9f9;
}





.sticky {
	position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.shadow-sm {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 2px 5px;
}

.position-relative {
	position: relative;
}


.page-header {
  padding-bottom: 9px;
  margin: 25px 0 10px;
  border-bottom: 1px solid #eee;
}

.page-header-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #eee;
}

.page-header-flex .page-header {
	border:0;
	margin-bottom:0;
}

h1.page-header {
font-size:28px;
}

.sub-header {
font-size:20px;
}

.page-header.with-back-btn {
	padding-bottom: 9px;
	margin: 10px 0 20px;
	border-bottom: 1px solid #eee;
  }

  .back-btn {
	margin-top:10px;
	display: inline-block;
	color:#555;
  }

  .back-btn:hover {
	text-decoration: none;
  }


.section-title {
	font-size:36px;
}

.table-section-title {
	border-top: 4px solid #ac1f2d !important;
	background-color: #fff !important;
	border-bottom:0 !important;
}


.table-header {
	background-color:#ac1f2d !important;
	padding-left:10px;

}

.table-header h3 {
	color:#fff;
	margin: 0px;
	padding:0px;
	font-weight: 400;
	font-size: 16px;
}


ul.list-space li {
	margin-bottom: 15px;
}

#wrapper {
    width: 100%;
}

#page-wrapper {
    padding: 0 15px;
    min-height: 568px;
    background-color: #f6f6f6;
}

#wrapper.no-sidebar .sidebar,
#wrapper.no-sidebar #sidebar-collapse {
    display: none;
}

@media(min-width:768px) {
    #wrapper {
        display: grid;
        grid-template-columns: 250px 1fr;
        grid-template-areas:
            "nav    nav"
            "sidebar page";
    }

    #wrapper > nav {
        grid-area: nav;
    }

    #page-wrapper {
        grid-area: page;
        padding: 0 30px;
        border-left: 1px solid #e7e7e7;
        min-width: 0;
    }

    #wrapper.no-sidebar {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "nav"
            "page";
    }

    #wrapper.no-sidebar #page-wrapper {
        border-left: 0;
    }
}

.page {
	border-top: 4px solid #ac1f2d;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
    /*padding-top: 10px;*/
    padding-top: 0;
	background:#fff;
	margin-bottom:20px;
}


.beta-mod {
	font-size:50%;
	vertical-align: middle;
}

#user-header-avatar {
	width:35px;
}

/*.table-responsive.page, form[name="SpcEdit"] .page, form[name="BlogArticleEdit"] .page {
    padding-top: 0;
}*/

form[name="BlogArticleEdit"] .page p:first-child {
	margin-bottom: 0;
}

#SRProdEdit .top.save-controls {
	padding: 0px 5px;
}

#RangeForm {
	padding-bottom: 20px;
}

.page-simple {
	border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background:#fff;
	margin-bottom:20px;
}

.shadow {
	-webkit-box-shadow: 0px 5px 23px 0px rgba(50, 50, 50, 0.56);
-moz-box-shadow:    0px 5px 23px 0px rgba(50, 50, 50, 0.56);
box-shadow:         0px 5px 23px 0px rgba(50, 50, 50, 0.56);
}

/* non logged in users */
.header-public {
  background:#fff;
  border-bottom: 1px solid #e7e7e7;
  height:60px;
  padding:0 15px;
}

.navbar-default {
	background:	#405373;
}

.navbar-static-top {
	background:	#fff;
}

.navbar-top-links {
    display: flex;
    align-items: center;
    margin-right: 0;
    margin-left: 15px;
}

.navbar-top-links li:last-child {
    margin-right: 15px;
}

.navbar-top-links li a {
    padding: 15px;
    min-height: 50px;
	color:#30394a;
}

.navbar-top-links .dropdown-menu li {
    display: block;
}

.navbar-top-links .dropdown-menu li:last-child {
    margin-right: 0;
}

.navbar-top-links .dropdown-menu li a {
    padding: 3px 20px;
    min-height: 0;
}

.navbar-top-links .dropdown-menu li a div {
    white-space: normal;
}

.navbar-top-links .dropdown-messages,
.navbar-top-links .dropdown-tasks,
.navbar-top-links .dropdown-alerts {
    width: 310px;
    min-width: 0;
}

.navbar-top-links .dropdown-messages {
    margin-left: 5px;
}

.navbar-top-links .dropdown-tasks {
    margin-left: -59px;
}

.navbar-top-links .dropdown-alerts {
    margin-left: -123px;
}

.navbar-top-links .dropdown-user {
    right: 0;
    left: auto;
}

.navbar-top-links .dev-switch {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 8px 0px 0px;
}


.dropdown-header {
	font-size:14px;
}




#siteSelected {
	font-size:12px;
	margin-left: 20px;
	display: block;
}


#addSiteModal h3 {
	margin-top:0px;
}



.sidebar {
	/*sidebar link section */
	background:#272727;
}

.sidebar .sidebar-nav.navbar-collapse {
    padding-right: 0;
    padding-left: 0;
}

.sidebar .sidebar-search {
    padding: 15px;
}

.sidebar ul li {
   /* border-bottom: 1px solid #4D4B4B; */
}


.sidebar ul li a {
	color:#fff;
	font-size:16px;
}

.sidebar ul li a:hover {
	color:#fff;
	background:#ac1f2d;
}

.sidebar ul li a:focus {
	/*focus state */
    background-color: #ac1f2d;
	color:#fff;
}


.sidebar ul li a.active {
	/*active state */
    background-color: #ac1f2d;
	color:#fff;
}


.sidebar .nav-second-level li a:hover {
	background:#ac1f2d;
}


.sidebar .arrow {
    float: right;
}

.sidebar .fa.arrow.select {
	margin-top: -30px;
}

.sidebar .fa.arrow:before {
    content: "\f104";
}

.sidebar .active>a>.fa.arrow:before {
    content: "\f107";
}

.sidebar .nav-second-level li,
.sidebar .nav-third-level li {
    border-bottom: 0!important;
}


.sidebar .nav-second-level li {
	border-top:1px solid #D5D5D5;
}


.sidebar .nav-second-level li:first-child {
	border-top:none;
}

/* Drop down menu color */
.sidebar .nav-second-level li a {
    padding-left: 37px;
	background:#E3E1E1;
	color:#454545;
}

.third-level a {
	padding-left:50px !important;
}

@media(min-width:768px) {
    .sidebar {
        grid-area: sidebar;
    }

    .navbar-top-links .dropdown-messages,
    .navbar-top-links .dropdown-tasks,
    .navbar-top-links .dropdown-alerts {
        margin-left: auto;
    }

    #wrapper.sidebar-collapsed {
        grid-template-columns: 0 1fr;
    }

    #wrapper.sidebar-collapsed .sidebar {
        display: none;
    }


}

.btn-none , .btn-none:focus, .btn-none:hover{
	background:none;
	box-shadow: none;
	padding:0px;
}

.btn-group.btn-none.open .dropdown-toggle {
	-webkit-box-shadow: none;  
    box-shadow: none;
}


.btn-outline {
    color: inherit;
    background-color: transparent;
    transition: all .5s;
}

.btn-primary.btn-outline {
    color: #428bca;
}

.btn-success.btn-outline {
    color: #5cb85c;
}

.btn-info.btn-outline {
    color: #5bc0de;
}

.btn-warning.btn-outline {
    color: #f0ad4e;
}

.btn-danger.btn-outline {
    color: #d9534f;
}

.btn-ltblue {
	background-color:#23a290;
	color:#fff;
}

.btn-ltblue:hover, .btn-ltblue:focus {
	background-color:#1e8b7b;
	color:#fff;
}


.btn-orange {
	background-color:#f78a4d;
	color:#fff;
}

.btn-orange:hover {
	background-color:#e27f46;
	color:#fff;
}

.btn-purple {
	background-color:#4d2543;
	color:#fff;
}

.btn-purple:hover {
	background-color:#643157;
	color:#fff;
}





.btn-primary.btn-outline:hover,
.btn-success.btn-outline:hover,
.btn-info.btn-outline:hover,
.btn-warning.btn-outline:hover,
.btn-danger.btn-outline:hover {
    color: #fff;
}

.nav-group-wrap {
	padding-left:15px;
	margin:10px 0px 10px 0px;
}



.toggle-group {
    display: inline-flex;
    gap: 8px;
    vertical-align: middle;
}
.toggle-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    overflow: hidden;
}
.toggle-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 36px;
    padding: 0 12px;
    background: #fff;
    color: #000;
	border: 1px solid #ddd;
    border-radius: 4px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s ease, color 0.15s ease;
}
.toggle-btn[title="Italic"] {
    font-style: italic;
}
.toggle-input:checked + .toggle-btn {
    background: #272727;
    color: #fff;
}
.toggle-input:focus-visible + .toggle-btn {
    outline: 2px solid #272727;
    outline-offset: 2px;
}

/* Showrooms custom fields */
.option-value-row{
  padding:5px 16px;
  font-size:16px;
  display:flex;
  align-items:center;
  transition: background-color 0.15s ease;
}

.option-value-row:hover {
	background-color: #f8f9fa;
}

.option-value-row:focus-within {
	background-color: #f3f4f5;
}


.option-value-name, .option-value-price{
  border:1px solid transparent;
  border-radius:4px;
  background:transparent;
  padding:2px 4px;
  font-size:16px;
}
.option-value-name:hover, .option-value-price:hover{
  background:#fff;
  border:1px solid #ddd;
}
.option-value-name:focus, .option-value-price:focus{
  border-color:#66afe9;
  background:#fff;
  outline:none;
  box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}
.option-value-name{
  margin-left:8px;
  width: 100%;
  max-width: 200px;
}
.option-value-price-wrap{
  margin-left:auto;
  display:flex;
  align-items:center;
}
.option-value-currency{
  color:#999;
  margin-right:2px;
}
.option-value-price{
  width: 100%;
  max-width: 60px;
  text-align:left;
}
.option-value-remove{
  margin-left:20px;
  font-size:20px;
  line-height:1;
  font-weight:bold;
  text-decoration:none;
  color:#9a9a9a;
  opacity:0;
  transition:opacity .15s ease;
}
.option-value-row:hover .option-value-remove{
  opacity:1;
}
.option-value-remove:hover{
  color:#ac1f2d;
}
.option-value-grip{
  color:#999;
  cursor:grab;
  margin-right:4px;
  display:inline-flex;
}
.option-value-grip:active{
  cursor:grabbing;
}

.option-value-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:8px;
}
.option-value-header label{
  margin-bottom:0;
}
.option-value-actions{
  display:flex;
  gap:8px;
}

input[type="checkbox"].option-value-select{
  margin-right:8px;
  vertical-align:middle;
}

.option-panel-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
.option-panel-actions a{
  color:#333;
}
.option-panel-actions a:hover{
  color:#000;
}

.option-add-row .option-value-select,
.option-add-row .option-value-remove {
  visibility: hidden;
}

@media (max-width: 425px) {
  .option-value-remove {
    display: none;
  }
}

/* End custom select */

.login-panel {
    margin-top: 25%;
}


#login .mfa-block {
	color:#000;
}

#login .mfa-block p {
	font-size: 16px;
}

#login .mfa-block h2 {
	text-transform: none;
}

#login .mfa-block ul {
	padding:0px;
	margin:20px 0px 20px 0px;
}

#login .mfa-block ul li {
	list-style-type: none;
		text-align: left;
}


#login .mfa-block ul li a {
	font-size:20px;
	padding:10px 20px;
	display: block;
}

#login .mfa-block ul li i {
	color:#9d2a32;
	font-size: 24px;
	margin-right:10px;
}

#login .mfa-block ul li a:hover {
	background:#efefef;
	color:#000;
}

#login .mfa-block .btn {
	margin:10px 0px 20px 0px;
}

#login .mfa-block .confirm-mfa {
	margin-bottom: 20px;
	display: inline-block;
}

a#resend-mfa {
	display: block;
}

a#resend-mfa:hover {
	color:#ab192d;
}











.dataTables_wrapper {
    position: relative;
    clear: both;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
    background: 0 0;
}

table.dataTable thead .sorting_asc:after {
    content: "\f0de";
    float: right;
    font-family: fontawesome;
}

table.dataTable thead .sorting_desc:after {
    content: "\f0dd";
    float: right;
    font-family: fontawesome;
}

table.dataTable thead .sorting:after {
    content: "\f0dc";
    float: right;
    font-family: fontawesome;
    color: rgba(50,50,50,.5);
}

.modal-header-borderless {
	border:0;
}




.modal-scroll,
.scroll {
	overflow-y: auto;
	overflow-x: hidden;
}

.modal-scroll-border {
	overflow-y: auto;
	overflow-x: hidden;
	border:1px solid #ddd;
	padding:5px;
}

.modal-scroll .table tr:first-child td {
	border:0px;
}

.scroll-50 {
	height: 50px;
}

.scroll-100 {
	height: 100px;
}

.scroll-150 { 
	height: 150px;
}

.scroll-400 {
	height: 400px;
}

.scroll-500 {
	height: 400px;
}

.scroll-border {
	padding: 6px 12px; 
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
}

.flex-list {
  display: flex;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.gap-0 {
	gap:0;
}

.gap-5 {
	gap:5px;
}




.store-manager-stats {
  display: flex;
  gap: 15px;
  list-style: none;
  margin: 0 0 10px 0;
  padding: 0;
}

.store-manager-stats .badge {
	margin-left:0px !important;
}

/* Mobile only - 2 columns for store manager stats */
@media (max-width: 767px) {
  .store-manager-stats {
    flex-wrap: wrap;
  }

  .store-manager-stats > li {
    flex: 0 0 calc(50% - 5px); /* 50% minus half the gap */
  }
}


/* Color Picker */
.sp-replacer {
	border-color:#ddd !important;
}

.btn-circle {
    width: 30px;
    height: 30px;
    padding: 6px 0;
    border-radius: 15px;
    text-align: center;
    font-size: 12px;
    line-height: 1.428571429;
}

.btn-circle.btn-lg {
    width: 50px;
    height: 50px;
    padding: 10px 16px;
    border-radius: 25px;
    font-size: 18px;
    line-height: 1.33;
}

.btn-circle.btn-xl {
    width: 70px;
    height: 70px;
    padding: 10px 16px;
    border-radius: 35px;
    font-size: 24px;
    line-height: 1.33;
}

.show-grid [class^=col-] {
    padding-top: 10px;
    padding-bottom: 10px;
    border: 1px solid #ddd;
    background-color: #eee!important;
}

.show-grid {
    margin: 15px 0;
}

.huge {
    font-size: 40px;
}

.panel-green {
    border-color: #5cb85c;
}

.panel-green .panel-heading {
    border-color: #5cb85c;
    color: #fff;
    background-color: #5cb85c;
}

.panel-green a {
    color: #5cb85c;
}

.panel-green a:hover {
    color: #3d8b3d;
}

.panel-red {
    border-color: #d9534f;
}

.panel-red .panel-heading {
    border-color: #d9534f;
    color: #fff;
    background-color: #d9534f;
}

.panel-red a {
    color: #d9534f;
}

.panel-red a:hover {
    color: #b52b27;
}

.panel-yellow {
    border-color: #f0ad4e;
}

.panel-yellow .panel-heading {
    border-color: #f0ad4e;
    color: #fff;
    background-color: #f0ad4e;
}

.panel-yellow a {
    color: #f0ad4e;
}

.panel-yellow a:hover {
    color: #df8a13;
}


.panel-box {
	background:#fff;
	padding:20px;
	border:1px solid #ddd;
	margin-bottom:20px;
}


.panel-box .panel-header {
	font-size: 20px;
	font-weight: 400;
	margin-bottom:15px;
}

.panel-cart-item {
	background:#fff;
	padding:0px;
	border:1px solid #ddd;
	margin-bottom:20px;
}

.panel-cart-item ul.list-inline {
	margin-left:0px !important;
}

.cart-item-inner {
	padding:5px 20px;
}
.cart-item-inner a,
.cart-item-inner a:hover {
	color:#333;
}

.cart-item-inner a:hover h4 {
	color:#9c1b28;
}

.cart-detail-list, .cart-detail-list-sm {
	padding:0px;
	list-style-type: none;
}

.cart-detail-list li {
	margin-bottom: 8px;
}

.cart-detail-list-sm li {
	margin-bottom:0px;
}

.cart-detail-section {
	padding:20px 0px;
	border-bottom:solid 1px #ddd;
}

.cart-detail-header {
	font-size: 16px;
  color: #888c91;
  margin-bottom: 10px;
  font-weight: 600;
}



.cart-detail-list .title {
	font-weight: 700;
}


#cart-list a {
	color:#000;
}

#cart-list h4 {

}

#cart-list a:hover h4 {
	color:#ac1f2d;
}

.cart-list-item {
	padding:20px 0px;
	border-bottom:solid 1px #ddd;
}

.cart-list-item h4 {
	margin-top:0px;
}


.cart-list-img {
	text-align: center;
}

.cart-list-subtotal {
	float:right;
	text-align: right;
	width:100%;
}

.cart-list-subtotal .table > tbody > tr > td {
	padding-top:2px;
	padding-bottom:2px;
}

.cart-list-total {
	text-align: right;
	margin-top: 20px;
	font-weight: 700;
	padding-right:10px;
}

.cart-list-dtl {
	color:#888c91;
}


/*.cart-icon {
	display:none; 
}
*/

.cart-list-actions .btn {
	margin-bottom:5px;
}

.cart-list-actions i {
	display:none;
} 




.cart-list-actions .cart-list-prev i,
.cart-list-actions .cart-list-next i {
	display: inline;
}



@media (min-width: 1180px) {
	.cart-icon {
		display:inline;
	}

	.cart-list-actions {
		text-align: right;
	}

	.cart-list-actions .btn {
		margin-bottom:0px;
	}

	.cart-list-actions i {
		display:inline;
	}
  }


  .favorite-item {
	display: flex;
	align-items: center;
	gap:1em;
	margin-bottom: 10px;
  }

  .favorite-item ul {
	list-style: none;
	padding:0px;
  }

  .favorite-item ul li:first-child {
	font-weight: 700;
  }

  .favorite-item {
	color:#000;
  }

  .favorite-item a i {
	font-size: 12px;
	margin-left:5px;
  }





.title-bar {
	background:#ac1f2d;
	color:#fff;
	padding:10px;
	font-size: 16px;
}

.list-spacer li {
	margin-bottom:10px;
}

.table-borderless td,
.table-borderless th {
    border: 0 !important;
}

/* Disable table rows */
tr.is-off td {
	color:#c0bfbf;
}



.mt0 {
	margin-top:0px;
}

.mt5 {
	margin-top:5px;
}


.mt10 {
	margin-top:10px;
}

.mt20 {
	margin-top:20px;
}

.mt30 {
	margin-top:30px;
}

.mt40 {
	margin-top:40px;
}

.mt50 {
	margin-top:50px;
}

.ml0 {
	margin-left:0px !important;
}



/* ------------ Dashboard -------------- */

.dash-title {
	font-weight:700;
}

.nav-tabs > li > a {
	color:#000;
}

.nav-tabs > li > a:focus, .nav-tabs > li > a:hover {
	background:#ac1f2d;
	color:#fff;
	outline-style:none;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:focus, .nav-tabs > li.active > a:hover
{
	background:#ac1f2d;
	color:#fff;
	border-top: 1px solid #ac1f2d;
    border-left: 1px solid #ac1f2d;
    border-right: 1px solid #ac1f2d;
}

/* Tab Content Area */
.tab-content.content-dash {
	padding:30px;
}

.tab-content {
	border-top: 4px solid #ac1f2d;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
    /*padding-top: 10px;*/
    padding-top: 0;
	background:#fff;
	margin-bottom:20px;
}

.panel-dash > .panel-heading {
	color:#fff;
	background:#ac1f2d;
}

.panel-stats > .panel-heading {
	color:#fff;
	background:#9aa372;
}

.panel-clean > .panel-heading {
	color:#1F2937;
	background:#fff;
	font-size: 1.5em;
}

.panel-list {
	padding:0px;
	list-style-type: none;
}

.panel-list li {
	padding:3px 0px;
	background:url(/mgs/bullet-icon.png) no-repeat left center;
	padding-left:20px;
	text-decoration:none;
}

.panel-list li a {
	color:#434343;
}

.panel-list li a:hover {
	color:#ac1f2d;
}





.panel-new-features h3 {
	margin-top:0px;
}

.panel-new-features .btn {
	margin-top:15px;
}



/* backup 
.news-item {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 0;
    border: 0.5px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    margin-bottom: 1rem;
}
.news-item.no-img {
    grid-template-columns: 1fr;
}
.news-img {
    background: #efefef;
    width: 200px;
    height: 145px;
    flex-shrink: 0;
    border-right: 0.5px solid #ddd;
    overflow: hidden;
    align-self: start;
}

.news-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-body {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.news-meta {
    display: flex;
    align-items: center;
    gap: 8px;
}
.news-item .badge {
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.news-item .badge-new {
    background: #c0392b;
    color: #fff;
}
.news-item .badge-update {
    background: #444;
    color: #fff;
}

.news-item .news-date {
    font-size: 12px;
    color: #999;
}
.news-title {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.3;
}
.news-desc {
    font-size: 14px;
    color: #555;
    line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.news-desc.expanded {
    display: block;
    padding-right: 6px;
}

.show-more-btn {
     font-size: 14px;
    color: #c0392b;
    font-weight: 500;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    text-align: left;
    margin-top: 2px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.show-more-btn:hover { 
	text-decoration: underline;
}



.news-link {
    font-size: 14px;
    color: #c0392b;
    font-weight: 500;
    text-decoration: none;
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.news-link:hover {
    text-decoration: underline;
}
*/




.panel-gray > .panel-heading {
	color:#fff;
	background:#4d4a4a;
}
.panel-gray a {
	color:#333333;
}


.panel-dark > .panel-heading {
	color:#fff;
	background:#3d3d3d;
}

.panel-dash img {
	margin:0 auto;
	margin-bottom:15px;
}

#profile-health {
	list-style-type: none;
	padding:0px;
}

#profile-health .fa-chevron-down {
	float:right;
}

#profile-health li {
	margin-bottom:15px;
	border-top:1px solid #ddd;
	padding:10px 0px;
	margin:0px;
}

#profile-health li:first-child {
	border-top:0px;
}

#profile-health .todo-list {
	list-style-type: none;
}

#profile-health .todo-list li {
	border:0;
}

#profile-health .todo-list li .fa-check {
	color:rgb(41, 168, 62);
}


.welcome {
	font-size:16px;
	font-weight:700;
}






/* -------- Global Settings ---------- */

/* Responsive Tables and Tabs */

@media only screen and (max-width : 768px) {

		table.table td.hlp {
			display:none;
		}
}


@media only screen and (max-width : 480px) {


		table.table td {
			width:100%;
			display:block;
			border-top: none !important;
		}

		table.table-normal td {
			width:100%;
			display: table-cell;
			border-top: 1px solid #ededed;
		}


		table.table tr {
			border-top:1px solid #ededed;
			border-bottom:1px solid #ededed;

		}

		table.table-fixed td {
			display:table-cell;
			width:auto;
		}

		.nav-tabs > li {
        float:none;
    }

 }



.form-inline > * {
    margin:5px 3px;
}

.form-inline.none > * {
    margin:0px 3px;
}

.form-inline.none .form-group {
	margin-top:3px;
}


.has-clear .form-control-feedback {
	top:7px;
}

.form-control-clear {
	z-index: 10;
	pointer-events: auto;
	cursor: pointer;
  }
  
code.label-code {
	font-weight: 600;
	color:#333;
	background-color: transparent;
	border-radius: 0;
	font-family: 'Source Sans Pro', sans-serif;
  font-size: 16px;
}

 .label-sm {
	font-weight:normal;
 }

.input-group .form-control-sm {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

.inline-push {
	margin-left:10px;
}

ul.checkbox-group  {
	list-style-type:none;
	padding:0px;
}

ul.checkbox-group li {
	margin-bottom:10px;
}


.m0 {
	margin:0;
}

.mb10 {
	margin-bottom:10px;
}

.mb20 {
	margin-bottom:20px;
}

.pb10 {
	padding-bottom:10px;
}

.pb20 {
	padding-bottom:20px;
}


 img {
 display: inline-block;
 height: auto;
 max-width: 100%;
 }


.red{ color:#ac1f2d;}

iframe {
	border:0;
}

.iframe-page {
	/*margin-top:50px;*/
}


#footer {
	margin-top:30px;
}


.btn-space {
	margin:10px 0px 10px 0px;
}

.btn-list {
	margin:0px 10px 10px 10px;
}

.btn-arrow {
	margin-top:10px;
	background:url(/mgs/bullet-icon.png) no-repeat left center;
	padding-left:20px;
	text-decoration:none;
	float:right;
	color:#434343;
}

.btn-arrow:hover {
	text-decoration:none;
	background:url(/mgs/bullet-icon.png) no-repeat left center;
	color:#ac1f2d;
}

table.table td {
	padding:20px 0px 20px 0px;
}

.hlp {
	font-size:14px;
}

.hlp-sm {
	font-size:14px;
	color:#5B5B5B;
}

.control-label{
	 display: inline-block;
    vertical-align: middle;
}


.table > tbody > tr > td {
  vertical-align: middle;
text-align: left;
}

.table > tbody > tr > td.vtop {
  vertical-align: top;
}

.form-control-sm {
height: 34px;
  padding-top: 6px;
  padding-right: 12px;
  padding-bottom: 6px;
  padding-left: 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #ffffff;
  background-image: none;
  border-top-width: 1px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-top-style: solid;
  border-right-style: solid;
  border-bottom-style: solid;
  border-left-style: solid;
  border-top-color: #cccccc;
  border-right-color: #cccccc;
  border-bottom-color: #cccccc;
  border-left-color: #cccccc;
  border-image-source: none;
  border-image-slice: 100% 100% 100% 100%;
  border-image-width: 1 1 1 1;
  border-image-outset: 0 0 0 0;
  border-image-repeat: stretch stretch;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset;
  transition-property: border-color, box-shadow;
  transition-duration: 0.15s, 0.15s;
  transition-timing-function: ease-in-out, ease-in-out;
  transition-delay: 0s, 0s;
}


.form-control-sm:focus
{
  border-top-color: #66afe9;
  border-right-color: #66afe9;
  border-bottom-color: #66afe9;
  border-left-color: #66afe9;
  outline-width: 0px;
  outline-style: none;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset, 0px 0px 8px rgba(102, 175, 233, 0.6);
}

/* --------- Page Assets -------------- */


/* Align pages and nav list tables */
table.sorttable-updown {
  width: 100%;
  table-layout: fixed;
}

table.sorttable-updown th:nth-child(1),
table.sorttable-updown td:nth-child(1) { width: 18%; }

table.sorttable-updown th:nth-child(2),
table.sorttable-updown td:nth-child(2) { width: 17%; }

table.sorttable-updown th:nth-child(3),
table.sorttable-updown td:nth-child(3) { width: 23%; }

table.sorttable-updown th:nth-child(4),
table.sorttable-updown td:nth-child(4) { width: 8%; }

table.sorttable-updown th:nth-child(5),
table.sorttable-updown td:nth-child(5) { 
  width: 28%;
  white-space: nowrap;
}

table.sorttable-updown th:nth-child(6),
table.sorttable-updown td:nth-child(6) { width: 6%; }


ul.list-cart li {
	padding:5px 0px;

}

.list-img img {
	border:1px solid #ddd;
}


.top.save-controls {
	float:right;
	margin-left:75px;
}



#save-controls {
	margin-top:0px;
	padding:10px 5px 10px 5px;
}

.save-controls {
	margin-top:0px;
	padding:10px 5px 10px 5px;
}

.save-controls .btn-list {
	margin-top:0px;
	margin-bottom: 0px;
}

@media only screen and (max-width : 768px) {
	.top.save-controls {
		float:none;
		display: block;
		margin-left:0px;
		margin-top: 10px;
		padding:0px !important;
	}
}



.RichTextEditor {
	height:500px;
}

div.mce-fullscreen {
    z-index: 1050;
}

#page-description {
	margin-bottom:20px;
}

#page-controls {
	margin-top:0px;
}

.page-lock { 
	color:#f1c232;
}

.well {
	background:#fff;
}

.well-light {
	background:#f9f9f9
}

.well-builder {
	background-color: #f5f4ed;
	padding: 10px 12px;
	border:0;
	border-radius: 8px;
}

.well-table {

}

.well-table h1,
.well-table h2,
.well-table h3,
.well-table h4 {
	margin-top:0;
}

.glyphicon.glyphicon-refresh {
	color:#23A619;
}


#TextPreviewDiv {
	max-height: 700px;
	overflow-x: hidden;
	overflow-y: scroll;
}


.modal.service .modal-body {
	padding:20px 100px 50px 100px;
}

/* Extra Small Devices, Phones */
    @media only screen and (max-width : 480px) {
	  .modal.service .modal-body {
		  padding:10px 30px 10px 30px;
	  }

    }


.table.table-none {
	background:none;
}

.table.table-none th, .table.table-none td {
     border-top: none !important;
 }


 .inner-content {
	padding:0px 20px 0px 15px;
	margin-bottom:20px;
 }

   /* --------- Site Settings -------------- */

#billpay .alert, #artupload .alert {
	margin: 20px;
}

  /* --------- Showlink -------------- */

.stats-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 20px;
}


.stats-card {
  flex: 1 1 300px;
  border-radius: 6px;
  color: #fff;
  overflow: hidden;
  box-shadow: 0 1px 1px rgba(0,0,0,.05);
}


.stats-green { background: #6BBF59; } 
.stats-yellow { 
	background: #faebcc;
	color: #8a6d3b;
} 
.stats-red { 
  color: #a94442;
  background-color: #f2dede;
 } 
.stats-purple { background: #71357b; } 
.stats-blue { background: #23a290;}
.stats-orange {background: #fe7e51;}


.stats-head {
  display: flex;
  align-items: center;
  padding: 16px;
}



.stats-text {
  flex: 1;
  text-align: right;
}

.stats-text .stats-big {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.1;
}


@media (max-width: 600px) {
  .stats-wrap {
    gap: 8px;
  }

  .stats-text .stats-big {
	font-size: 2rem;
  }

  .stats-icon {
  font-size: 3rem; 
}

}



  /* replaced with new SG styles 
  ul#showlink-product-list {
	  list-style-type:none;
	  padding:0px;
  }

 ul#showlink-product-list li {
    width: 200px;
    display: inline-block;
    vertical-align: top;
	text-align:center;
}

@media only screen and (max-width : 480px) {
	 ul#showlink-product-list li {
    width: 160px;
    display: inline-block;
    vertical-align: top;
	text-align:center;
	}
} */


.showlink-product {
	border:1px solid #ddd;
	background:#fff;
	padding:10px;
}

.showlink-panel-reports {
	min-height:300px;
}


ul#showlink-items li {
	position: relative;
}

ul#showlink-items li a {
	z-index: 100;
	top:-10px;
	right:0px;
	position: absolute;
}

  /* --------- Product Search Results Showrooms/ Presentations -------------- */



/* --- Showroom images ---- */

#back-to-top {
  position: fixed;
  bottom: 40px;
  right: 20px;
  transition: background-color .3s, opacity .5s, visibility .5s;
opacity: 0;
visibility: hidden;
z-index: 1000;
}

#back-to-top.show {
	opacity: 1;
	visibility: visible;
  }


.defaultSelect {
	display: none;
}

.defaultFalse {
	
}


	#showroom-img-sort { list-style-type: none; margin: 0; padding: 0; width: 100%; clear:both; }
	#showroom-img-sort li { margin: 3px 3px 3px 0; float: left; border:1px solid #ddd; padding:4px; }


#showroom-img-sort li:first-child {
	border:2px solid #198B34;
}


.showroom-image {
	position: relative;
	width: 150px; height: 150px;
}

.showroom-image input {
	position: absolute;
	top:0;
	right:5px;
	z-index: 100;
}



/* line 14, ../sass/style.scss */
.showroom-image .showroom-image-controls  {
  background: #000;
  width: 100%;
	height: 40px;
  opacity: 0;
  bottom:0;
  left: 0;
  font-size:14px;
  position: absolute;
  padding: 3px;
  transition: opacity .3s;
}

/* line 34, ../sass/style.scss */
.showroom-image:hover .showroom-image-controls {
  opacity: .7;
  transition: opacity .3s;
}

.showroom-image-controls {
	list-style-type: none;
}

.showroom-image-controls li {
	border:0 !important;
	display: inline;
	height:12px;
	padding:0px 15px !important;

}


.showroom-image-controls li a {
	color:#fff;
}

.showroom-image-controls li a:hover {
	text-decoration: none; 
}


.showroom-image.ui-state-default a i,.showroom-image.ui-state-default a:link i {
	color:#fff !important;
}



.showroom-status .fa-circle {
	color:#ac1f2d;
}

.showroom-status .active {
	color:#5cb85c;
}

.showroom-status .label {
	display:inline-block;
	width:80px;
	padding: .3em .6em .3em;
	line-height: 16px;
}

.showroom-status .fa-lock{
	font-size:14px;
	color:#979797;
	vertical-align: middle;
	line-height: 16px;
}

td.showroom-status {
	vertical-align: middle;
}

.copy-showroom-url-icon {
	margin-left: 5px;
	cursor: pointer;
	vertical-align: middle;
}

.copy-showroom-url-icon:hover {
	color: #ac1f2d;
}

.showroom-import-name {
	display: block;
	color:#333333;
	font-size: 14px;
}

#inventory-mgt-table .form-control {
	width:100px;
}

#inventory-mgt-table .inventory-comment {
	display:none;
	width:100% !important;
}

.low-inventory-warning {
	color: #ac1f2d;
}

.product-warning {
	color: #ee8c0c;
	padding-left:5px;
	vertical-align: middle;
}

#showroom-copied-product {
	margin:10px;
}

#showroom-copied-product img {
	width:45px;
}

.status-col .label {
	display:inline-block;
	width:80px;
} 


.product-list-results {
	margin-top:15px;
	padding-bottom:50px;
}


.product-list-results-count {
	display: inline-block;
	margin-left:15px;
}

.item-list {
	border:1px solid #ECEBEB;
	padding:10px 0px 10px 0px;
	position:relative;
	background: #fff;

}


.item-list a:hover {
	color:#000;
}


.item-list a.item-list-title {
	margin:0px 0px 5px 0px;
	font-weight:bold;
	font-size:16px;
	color:#000;

}

.item-list a.item-list-title:hover {
	color:#9c1b28;
	text-decoration: none;
}



.item-list p {
	margin:0px;
	padding:0px;
	font-size:14px;
}

.item-list-price {
	font-size:14px;
}

.thumbnail-list {
  list-style:none;
  padding:0px;
	margin:0px;
}


.switch-view a {
	color:#000;
}

.switch-view a:hover {
	color:#ac1f2d;
	text-decoration: none;
}

.switch-view .btn-control {
	padding:5px;
}

.pr-list-grid p {
	margin:0px;
	padding:0px;
	font-size:14px;
}

.pr-list-grid a {
	color:#000;
}

.pr-list-grid a:hover {
	color:#ac1f2d;
	text-decoration: none;
}


.item-list-img { padding-left:15px;}

.pr-list-grid {
	background:#fff;
	text-align:center;
}

.pr-list-grid:hover {
	cursor: pointer;
}

.pr-list-grid img {
	margin:0 auto;
}


.item-list-grid-pic {
	width:150px; height:150px; text-align:center; vertical-align:middle; display: table-cell;
}

ul.tag-actions {
	margin-top:15px;
}
ul.tag-actions li {
	margin-right:20px;
}



ul.pagination li a {
	color:#000;
}

ul.pagination li a:hover {
	color:#000;
	background:#eee;
}

ul.pagination li.active a {
	color:#000;
	background:#DDDDDD;
	border:1px solid #DDD;
}

ul.pagination li.active a:hover, ul.pagination li.active a:focus, ul.pagination li.active a:visited {
	color:#000;
	background:#eee;
	border:1px solid #DDD;
}


 /* --------- PromoSearch Content -------------- */


#requestInfo-accordion a.accordion-toggle:hover {
	text-decoration: none;
	cursor: pointer;
}

/*#custom1Options {
	display: none;
}
*/
.panel-heading .accordion-toggle:after {
    /* symbol for "opening" panels */
    font-family: 'Glyphicons Halflings';  /* essential for enabling glyphicon */
    content: "\e114";    /* adjust as needed, taken from bootstrap.css */
    float: right;        /* adjust as needed */
    color: grey;         /* adjust as needed */
}
.panel-heading .accordion-toggle.collapsed:after {
    /* symbol for "collapsed" panels */
    content: "\e080";    /* adjust as needed, taken from bootstrap.css */
}




/* product details */

#price-qty-row {
	background:#efefef;	/* backgroud color of qty price grid  */
}

/* New Product Grid Layout */
 @media only screen and (min-width : 320px) {
.thumbnail-list li.grid
{
  vertical-align: top;
  display:inline-block;
  width: 32%;
  padding:0px

}

}

 /* Extra Small Devices, Phones */
@media only screen and (min-width : 593px) {
	.thumbnail-list li.grid
	{
	   display:inline-block;
	  width: 24.45%;
	  padding:12px 15px 15px 15px;
	}
	}
}



  /* --------- Payment Processing -------------- */

 .pp-header {
	background:#e2e2e2;
	color:#555555;
	font-weight:600;
 }

 .table.table-pp td {
	 padding-top:3px;
	 padding-bottom:3px;
 }


#ConfirmAmtPrice { font-size: 28px;

color:#ac1f2d;
}

.panel-pp .form-inline > *  {
	margin-left:0px !important;
 }


#PPList-grid {
	display: flex;
}

#PPList-grid h3,  h3.PPList-title {
	background:#efefef;
	width:100%;
	display: block;
	padding:8px;
	font-size: 18px;
}

#PPList-grid .col {
	flex: 1;
	margin-right:10px;
}





 /* --------- Office -------------- */

 .position {
	font-size:12px;
	color:#105C93;
 }

 .inner-page {
	padding:0px 15px 0px 15px;
 }

 /* --------- Distributor Search -------------- */

ul#dist-search-results {
	list-style-type: none;
	padding:0px;

}

ul#dist-search-results li a {
	text-decoration: none;
	color:#000;
	display: block;
	background:#fff;
	margin-bottom:10px;
	padding:0px 20px 5px 20px;
	border:1px solid #ddd;
}


ul#dist-search-results li a:hover {
	background:#f4f2f2;
}

ul#dist-search-results li h4 {
	color:#ac1f2d;
}

#LiveChatUserList { display: none;}

 /* --------- Nav/ Pages -------------- */

 .navigation-title {
	 color: #31708f;
  background-color: #d9edf7;
  border-top-color: #bce8f1;
  border-right-color: #bce8f1;
  border-bottom-color: #bce8f1;
  border-left-color: #bce8f1;
  padding:10px;
  /* margin:0px 5px 0px 5px; */
 }

 .navigation-controls {
	padding:0px 10px 0px 10px;
	margin-bottom:20px;
 }

 .navigation-controls .btn, .navigation-controls .form-control-sm {
	margin-bottom:10px;
 }


 .well-label-sm label {
	font-weight:normal;
 }

 .nav-sync-icon {
	margin-left: 3px;
	vertical-align: middle;
 }

 @media only screen and (max-width : 768px) {
		.table-chrome .btn {
	display:block;
}

    }


 /* --------- Agreement -------------- */

 ol.agreement li {
	margin-bottom:10px;
 }

 .viewer {
	height:500px;
	overflow:scroll;
 }

/* --------- Training Videos -------------- */

.rvs-xs.rvs-sm.rvs-md .rvs-item-text {background:rgba(0,0,0,.35);}


/* --------- Blog ---------------------- */

.blog-title-cell {
	display: flex;
	align-items: center;
	gap: 15px;
}
.blog-pin {
	font-size: 18px !important;
	color: #ac1f2d;
	flex-shrink: 0;
	transform: rotate(35deg);
}



/* --------- Login Page -------------- */

#login-panel
{
  font-family: "Source Sans Pro",sans-serif;
  margin-top: 20%;
  padding: 10px 35px 35px 35px;
  background: url("/mgs/login-panel-bg.png") repeat;
  color: #666666;
}

#login-panel h1 {
	font-weight:300;
	font-size:45px;
}

#login-header .navbar-default {
	background:	#fff;
}

#login-panel hr
{
  width: 60%;
}

#login-panel .glyphicon.glyphicon-chevron-right {
	font-size:12px;
}

#login-panel a {
	color:#ac1f2d;
}

#login-panel button {
	margin:0 auto;
	margin-bottom:15px;
}

/* Ratings Panel */

#ratings-panel
{
  font-family: "Source Sans Pro",sans-serif;
  margin-top: 20%;
  padding: 10px 35px 35px 35px;
  background: #fff;
  color: #666666;
	border:1px solid #ddd;
}

#ratings-panel h1 {
	font-weight:300;
	font-size:45px;
}

#login-header .navbar-default {
	background:	#fff;
}

#ratings-panel hr
{
  width: 60%;
}

#ratings-panel .glyphicon.glyphicon-chevron-right {
	font-size:12px;
}

#ratings-panel a {
	color:#fff;
}

#ratings-panel button {
	margin:0 auto;
	margin-bottom:15px;
}

#sidebar-collapse-wrap {
	display: flex;
	align-items: center;
}

#sidebar-collapse {
	margin-top:15px;
	color:#272727;
	display: none;
}

@media (min-width: 768px) {
	#sidebar-collapse {
		display: block;
	}
  }

#sidebar-collapse:hover {
	color:#ac1f2d;
}

.sidebar-hidden {
	display: none;
}

.page-wrap-hidden {
	margin:0 !important;
}


.navbar-top-links-login li {
	padding: 15px;
    min-height: 50px;
	color:#444444;
}

.navbar-top-links-login a {
color:#ac1f2d;
}

.nav.navbar-top-links-login > li > a {
	display:inline-block;
	padding:0px 20px 0px 0px;
}

.nav.navbar-top-links-login > li > a:hover, .nav.navbar-top-links-login > li > a:focus {
	background:none;
	text-decoration:underline;
}

.accent {
	color: #ac1f2d !important;
}

.btn-red {
	background:#ac1f2d;
	color:#fff;
	border:1px solid #ac1f2d;
}

.btn-red a {
	  color:#fff;
}

.btn-red:hover {
	background:#b30c18;
	border: solid 1px #ac1f2d;
	color:#fff
}

.btn-red.active {
	background:none;
	border: solid 1px #cccccc;
	color:#ac1f2d;
	box-shadow:none;
}

.btn-red:focus {
	color:#fff;
}

.btn-outline-red {
    background: transparent;
    color: #ac1f2d;
    border: 1px solid #ac1f2d;
}

.btn-outline-red:hover {
    background: #ac1f2d;
	color:#fff;
}


.btn-red-outline {
	border: 2px solid #ac1f2d;
	color: #ac1f2d;
	background-color: #fff;
}

.btn-default-outline {
	border: 2px solid #ccc;
	color: #555;
	background-color: #fff;
}

.btn-default-outline:hover {
	color: #fff;
	background-color: #555;
	border: 2px solid #555;
}


.featured-image-preview img {
	max-width: 100%;
  	height: auto;
  	display: block;
	max-height: 200px;
	padding:5px;
	margin:10px 0px;
}



/* Settings Device multi */

.setting-title {
	padding-bottom:4px;
	display: block;
 	width: 100%;
	border-bottom:1px solid #ddd;
	margin-top:20px;
	font-weight:600;
    margin-bottom:15px;
}


.setting-group {
    margin-bottom:20px;
}

.setting-device-inline {
	display: flex;
	gap: 32px;
	flex-wrap: wrap;
}


.setting-device {
    display:flex;
    align-items:center;
    padding:12px 0;
}



.setting-device-label {
    width:140px;
    display:flex;
    align-items:center;
    gap:8px;
	font-weight: 400;
}

.setting-device-label i {
    width:18px;
    text-align:center;
}

.setting-device-fields {
    display:flex;
    gap:20px;
}

.setting-field {
    width:140px;
}

.setting-field .setting-sub-label {
    display:block;
    margin-bottom:5px;
}

.setting-device .input-group {
    width:140px;
}

.desktop-icon,
.mobile-icon {
    text-align:center;
    margin-right:6px;
}

.desktop-icon {
    font-size:16px;
}

.mobile-icon {
    transform: scale(1.35);
    display: inline-block;
    transform-origin: center;
}

.pill-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.pill-group input[type="radio"],
.pill-group input[type="checkbox"] {
    display: none;
}

.pill-group label {
    display: inline-block;
    padding: 5px 14px;
    border-radius: 20px;
    border: 1px solid #ccc;
    font-size: 13px;
    color: #555;
    background: #f8f8f8;
    cursor: pointer;
    user-select: none;
    transition: all 0.15s;
    margin: 0;
    font-weight: 400;
}

.pill-group input[type="radio"]:checked + label,
.pill-group input[type="checkbox"]:checked + label {
    background: #ac1f2d;
    border-color: #ac1f2d;
    color: #fff;
    font-weight: 500;
}

.pill-group label:hover {
    border-color: #ac1f2d;
    color: #ac1f2d;
}


.status-active {
	color:#5cb85c;
}

.status-inactive {
	color:#ac1f2d;
}

.table .status-active, table .status-inactive {
	font-size:12px;
}


.err  {
	color:#a94442;
}


.filter-row{
  display:flex;
  align-items:flex-start;
}

.filter-bar{
  flex:1 1 auto;   
}

#export-form{
  margin-left:auto; 
}

.filter-bar{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  margin:-6px;
}
.filter-bar > *{ margin:6px; }


.filter-search-wrap{
  flex:1 1 320px;
  min-width:220px;
  max-width:480px;
}
.filter-search{ width:100%; }


.filter-bar > .form-control{ width:auto; }            
.filter-bar select.form-control{ width:auto; }      
.filter-select{ flex:0 1 200px; min-width:160px; }


@media (max-width:600px){
  .filter-search-wrap, .filter-select{ flex:1 1 100%; }
  .filter-bar > .form-control{ width:100%; }   
}


/* --- SAGE Logos */


.logo-block {
	padding:20px;
	border:1px solid #ddd;
	background:#fff;
	text-align: center;
	font-size:14px;
	margin-bottom:20px;
}

.logo-block-md {
	padding:20px;
	border:1px solid #ddd;
	background:#fff;
	text-align: center;
	font-size:14px;
	margin-bottom:20px;
	height:200px;
}

.logo-block img, .logo-block-md img {
	display:block;
	margin:0 auto 20px auto;
}


/* --- Showlink */

.showlink-header {

}

body#showlink .form-control-static {
	color:#515151;
}


#showlink-add-item {
	border:1px solid #ddd;
	background:#efefef;
	padding:15px;
	margin-top:20px;
}


/* API Content */

main#api-doc {
	background:#fff;
	padding:0px 30px 30px 30px;
}


main#api-doc table {
	border:1px solid #ddd;
}

#api-doc article {
	margin-bottom:40px;
	line-height:2em;
}

#api-doc article h2{
	border-bottom:1px solid #ededed;
	padding-bottom:10px;
}

#api-doc article h3{
	border-bottom:1px solid #ededed;
	padding-bottom:10px;
}

#api-doc article pre {
	margin:20px 0px 20px 0px;
}

#api-doc article .subhead {
	font-weight:bold;
	color:#5C5C5C;
}

/* Copy API Class */

main.api-doc {
	padding:30px 30px 30px 30px;
}


main.api-doc table {
	border:1px solid #ddd;
}

.api-doc article {
	margin-bottom:40px;
	line-height:2em;
}

.api-doc article h2{
	border-bottom:1px solid #ededed;
	padding-bottom:10px;
}

.api-doc article h3{
	border-bottom:1px solid #ededed;
	padding-bottom:10px;
}

.api-doc article pre {
	margin:20px 0px 20px 0px;
}

.api-doc article .subhead {
	font-weight:bold;
	color:#5C5C5C;
}

#sidebar.affix {
    top: 20px;
}
/* sidebar */
.api-sidebar {
    padding-left: 20px;
    margin-bottom: 20px;
}

@media only screen and (max-width : 480px) {
  .api-sidebar {
                  display:none;
  }
}

/* all links */
.api-sidebar .nav>li>a {
    color: #4B4B4B;
    border-left: 2px solid transparent;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 400;
	background:#fff;
}

/* nested links */
.api-sidebar .nav .nav>li>a {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 30px;
    font-size: 12px;
}

/* active & hover links */
.api-sidebar .nav>.active>a,
.api-sidebar .nav>li>a:hover,
.api-sidebar .nav>li>a:focus {
    color: #ac1f2d;
    text-decoration: none;
    border-left-color: #ac1f2d;
}
/* all active links */
.api-sidebar .nav>.active>a,
.api-sidebar .nav>.active:hover>a,
.api-sidebar .nav>.active:focus>a {
    font-weight: 400;
}
/* nested active links */
.api-sidebar .nav .nav>.active>a,
.api-sidebar .nav .nav>.active:hover>a,
.api-sidebar .nav .nav>.active:focus>a {
    font-weight: 500;
}

/* hide inactive nested list */
.api-sidebar .nav ul.nav {
    display: none;
}
/* show active nested list */
.api-sidebar .nav>.active>ul.nav {
    display: block;
}

/*! Color themes for Google Code Prettify | MIT License | github.com/jmblog/color-themes-for-google-code-prettify */
.prettyprint {
	font-family: Menlo, Bitstream Vera Sans Mono, DejaVu Sans Mono, Monaco, Consolas, monospace;
	border: 1px solid #efefef;
	 padding-top: 9px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-left: 14px;
  margin-bottom: 14px;
  background-color: #f7f7f9;
}
.pln {
	color: #333
}
ol.linenums {
	margin-top: 0;
	margin-bottom: 0;
	color: #ccc
}
li.L0, li.L1, li.L2, li.L3, li.L4, li.L5, li.L6, li.L7, li.L8, li.L9 {
	padding-left: 1em;
	background-color: none;
	list-style-type: decimal
}

@media screen {
.str {
	color: #d14
}
.kwd {
	color: #333
}
.com {
	color: #998
}
.typ {
	color: #458
}
.lit {
	color: #458
}
.pun {
	color: #333
}
.opn {
	color: #333
}
.clo {
	color: #333
}
.tag {
	color: navy
}
.atn {
	color: teal
}
.atv {
	color: #d14
}
.dec {
	color: #333
}
.var {
	color: teal
}
.fun {
	color: #900
}
}

.show-on-print {
  display:none;
}

@media print {


.header-public {
  border:0 !important;
  padding:0 !important;
}

	body, ol, ul, div, table {
					width: auto !important;
					border: 0;
					margin: 0 !important;
					padding: 0 !important;
					float: none !important;
					position: static !important;
					overflow: visible !important;
	}


	h1.page-header {
		font-size:18px;
		margin-top:0px;
		margin-bottom:5px;
	}



	table.table td {
		padding-top:0px !important;
		padding-bottom:0px !important;
	}

	.footer-controls,
	#footer,
	.hide-on-print,
  .alert,
  .cart-list-actions {
		display:none;
	}

  .show-on-print
  {
    display:table-cell;
  }
	.page-simple {
	border:0;
    padding-top: 0px;
	background:#fff;
	margin-bottom:0px;
	}

	 a[href]:after {
    content: none !important;
  }

  .sm-login-btn,
  .kb-actions {
    display: none;
  }

  .kb-issue-block {
    border:1px solid #ddd !important;
    padding:10px !important;
    border-radius: 6px !important;
  }

  .kb-issue-icon {
  border:0 !important;
  }

  .sg-card {
    border:none !important;
    box-shadow: none !important;
    overflow:visible;
  }

  .sg-card-header {
    border:0 !important;
    margin-bottom:20px !important;
  }


}

/* Drag and drop sort */

.sorttable-updown tbody tr td {
	cursor:ns-resize;
}
.sorttable-leftright tbody tr td {
	cursor:ew-resize;
}
.ui-sortable-helper {
  background: #f9f9f9;
  border:1px solid #e0e0e0;
  box-shadow: 5px 5px 2px #888888;
}

.sortable-list li {
  cursor:ns-resize;
}

/* File Manager */

/* image set modal */
ul.image-set-list {
	list-style-type: none;
	padding:0px;
}

ul.image-set-list li {
	border-bottom:1px solid #ddd;
	padding:10px;
}

ul.image-set-list li:last-child {
	border:0;
}

ul.image-set-list li:nth-child(even) {
	background-color:#efefef;
}

ul.image-set-list .checkbox {
	margin:0px;
}

ul.image-set-list li a {
	float:right;
}

.file-manager-page {
	border-top: 4px solid #ac1f2d;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background:#fff;
	margin-bottom:20px;
}

.file-manager-page .table {
	margin-bottom: 0;
}

.file-table img {
	/*width:100px;
	height:100px;*/
	border:1px solid #ddd;
}

.file-table th {
	white-space: nowrap;
}

img.file-thumb-modal {
	width:50px;
	height:50px;
}

.file-manager-scroll {
	height: 500px;
    overflow: scroll;
}


.file-table th a {
	color:#000;
	text-decoration:none;
	display: block;
	/*padding:8px;*/
}

.file-table th.sort {
	padding:0px;
}

.file-table th a:hover {
	color:#000;
	text-decoration:none;
	background:#f9f9f9;
	display: block;
}

.file-table th {
	padding: 12px 8px !important;
}

.file-table td a.copy-file {
	color:#7C7C7C;
}

.file-table td a.copy-file:hover {
	color:#ac1f2d;
	text-decoration:none;
}



.file-manager-filters .pagination {
	margin:0px;
}

.drag-drop {
	border:4px dashed #ddd;
	padding:30px;
	margin-bottom:15px;
	text-align:center;
}

.drag-drop:hover {
	background:#efefef;
}

.drag-drop-info {
	font-size:20px;
	color:#a0a5aa;
}

.drag-drop-other {
	font-size:14px;
	color:#a0a5aa;
}

.copy-file {
	margin-right:20px;
}

.file-manager-filters {
	margin-bottom: 15px;
}

.file-search {
	margin-left:10px;
}

#file-pagination {
	text-align:right;
}

/* Extra Small Devices, Phones */
@media only screen and (max-width : 1002px) {
	#file-pagination {
		text-align:center;
		margin-top:10px;
	}

	.file-search {
	margin-left:0px;
}
}
/* Extra Small Devices, Phones */
@media only screen and (max-width : 480px) {
	#file-pagination {
		text-align:center;
		margin-top:0px;
	}




}

#leadsTime {
	width:100%;
	height: 300px;
}



#file-pagination a {
	color:#000;
}

#file-pagination a:hover {
	color:#fff;
	background:#ac1f2d;
}

#file-per-page {
	margin-right:20px;
}

.btn-file {
	position: relative;
	overflow: hidden;
}
.btn-file input[type=file] {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 100%;
	min-height: 100%;
	font-size: 100px;
	text-align: right;
	filter: alpha(opacity=0);
	opacity: 0;
	outline: none;
	background: white;
	cursor: inherit;
	display: block;
}



/* WEP OVERLAY */
.overlay-support tr td {
 position:relative;
}
.upgrade-overlay {
 position: absolute;
 width:100%;
 height:100%;
 left:0;
 top:0;
 z-index: 1000;
 background:rgb(0,0,0);
 background:rgba(0,0,0,.55);
}
.overlay-text {
 color:#fff;
 top: 42%;
 text-align: center;
 position: relative;
 font-size: 18px;
 background:rgba(0,0,0,.75);
}
.overlay-text a {
 color:#fff;
 text-decoration:underline;
}

.well.locked-overlay {
	position: relative;
}

/*Sync OVERLAY */




.product-sync-overlay {
 position: absolute;
 width:100%;
 height:100%;
 left:0;
 top:0;
 z-index: 1000;
 background:rgba(0,0,0,.2);
}



.sync-overlay .fa-refresh {
	color: #2BBF2F;
}

.sync-overlay-text {
 color:#fff;
 bottom:2px;
right:10px;
 position: absolute;
 font-size: 18px;
 /*background:#fff;*/
}
.sync-overlay a {
 color:#fff;
 text-decoration:underline;
}

.collections-sync-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, .3);
	z-index: 1000;
}

.collections-sync-overlay .sync-overlay-text {
	top: 12px;
	left: 10px;
	bottom: unset;
	right: unset;
}

.collections-sync-overlay .fa-refresh {
	color: #2BBF2F;
}

.collections-sync-overlay .tooltip {
	width: 175px;
}



.circle-icon {
    background: #fff;
    padding:10px;
    border-radius: 50%;
}

/* --- Artwork Zone --- */

dl.awz-list dd {
	margin-bottom:30px;
}

dl.awz-list a {
	font-size: 18px;
}

dl.awz-list a:hover {
	text-decoration: none;
	color:#9c1b28;
}

.awz-price {
	font-size:20px;
	font-weight: 600;
}

/* --- Ticket System */

.row.ticket-post {
	margin-left:0px;
	margin-right:0px;
}
.ticket-post {
	border: solid 1px #ddd;
	padding:20px;
	margin-bottom:10px;
	background:#fff;
}

.ticket-post .attachments{
	margin-top:15px;
}

.ticket-avatar {
	float:left;
	margin-right:10px;
}

.ticket-actions {
	border-top:1px solid #ddd;
	padding-top:15px;
	margin-top:20px;
}

/* SAGE Connect */


.connect-credentials-list li {
	padding:20px 15px;
	border-bottom:1px solid #ddd;
}


.connect-credentials-list li:nth-child(even) { background: #efefef; }

.connect-credentials-list dd {
	margin-bottom:10px;
}

.status-icon-active {

}
 .panel-webhooks table {
	width:100%;
 }

 .panel-webhooks table td {
	padding:5px;
 }

 .webhook-actions {
	text-align: right !important;
 }

 .btn-multi {
	display:inline-block;
 }


 .panel-webhooks a {
	color:#000;
	text-decoration: none;
 }

 .panel-webhooks a:hover {
	color:#ac1f2d;
 }

 .webhook-status {
	color:#198B34;
	font-size:12px;
	text-align: center !important;
 }

/*.module .inner {
	position: relative
}

.module .progress-container {
	position: absolute;
	bottom:0px;
	right:0px;
}*/



.module-global {
	margin:20px;
	border-top:1px solid #ddd;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
	border-left:1px solid #ddd;
	 background: rgb(250,250,250);
background: linear-gradient(0deg, rgba(250,250,250,1) 0%, rgba(255,255,255,1) 100%);
	padding:0px 20px 20px 20px;
	
}


.module-global-cnt {
	font-weight: 600;
	/*color:#ac1f2d;*/
	display: block;
	margin-top:30px;
	padding:0px;
	margin-bottom: 0px;
}

.module-global-cnt .fa {
	font-size: 12px;
}


.module-progress {
	/*background-color:#53B037;*/
}

ul.api-details {
	border-top:1px solid #ddd;
	padding:20px 10px 0px 10px;
	 border-top:
}


#api-services {
 display: flex;
	flex-wrap: wrap;
	 flex-direction: row;
 justify-content: space-between;
}



#api-services .module {
  width:32%;
	padding-top:20px;
	margin-bottom:20px;
	text-align: center;
	border-top:5px solid #474747;
	border-right:1px solid #ddd;
	border-left:1px solid #ddd;
	border-bottom:1px solid #ddd;
background-color:#fff;
	position: relative;
	min-height: 350px; 

}

#api-services .module.blank {
	border:0;
	background:#f6f6f6;
}

.serviceID {
	position: absolute;
	top:10px;
	right:10px;
	color:#7B7B7B; 
}

.pdx-icon {
	width: 50px;
	margin-right:15px;
}

.service-status {
	position: absolute;
	top:10px;
	left:10px;
	color:#000000; 
	font-size:12px;
}






#api-services .module .btn {
	border-radius: 0;
}


 @media only screen and (max-width : 1150px) {
	#api-services {
		display: block;
	}	
	 
	 #api-services .module {
		 padding-top:5px;
         width:100%;
		 margin-bottom:20px;
		 height: 300px;
}
	 
	 .module-footer {
	position: absolute;
	bottom:0px;
}
	 
	 
}

@media only screen and (max-width : 500px) {
	 #api-services .module {
		 padding-top:5px;
         width:100%;
		 margin-bottom:20px;
		 height:400px;
}	
}




#api-services .module.active {
	border-top:5px solid #449d44;
	background-color:#fff;
}




#api-services .module .inner {
	padding:20px;
	margin-bottom: 50px;
}

.module-footer {
	position: absolute;
	bottom:0px;
}

.module-footer .btn-group-justified .btn {
	border-radius: 0;
}

.module-stats {
  display: flex;
	width:100%;
	margin-top:30px;
	
}
.module-stats .col {
  flex: 1;
  padding:20px;
}

.module-stats .col .total {
	display: block;
	font-size:28px;
	margin-bottom:0px;
}

.module-stats span {
	font-size: 12px;
	text-transform: uppercase;
}

.module .price {
	font-weight: 700;
}

.reports-nav-tabs {
	border:0;
}

.reports-nav-tabs > li > a {
	border-radius: 4px;
}



.reports-tab-content {
	background: none;
	border:0;
}

.report-table h3 {
	font-weight: 400;
	margin-top:0px;
	font-size: 16px;
}

.report-table .totalValues {
	font-size:24px;
}

.report-table .title {
	font-size:14px;
}

.report-table .table > tbody > tr > td {
	padding:2px 8px 2px 8px;
}

.report-table .productName {
	font-size: 18px;
	margin:0px;
}

.report-table {
	display: flex;
	flex-wrap: wrap;
}

.report-table .col {
	margin:10px;
	flex: 1;
	padding:20px;
	border:1px solid #E8E8E8;
	background: #fff;
	min-height: 300px;
	-webkit-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
-moz-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);

}

.block {
	padding:20px;
	border:1px solid #E8E8E8;
	background: #fff;
	min-height: 300px;
	-webkit-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
-moz-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
}


.report-table canvas {
	align-self: flex-end;
}


.report-card {
		margin:10px;
	padding:20px;
	border:1px solid #E8E8E8;
	background: #fff;
	min-height: 300px;
	-webkit-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
-moz-box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
box-shadow: 0px 0px 23px -4px rgba(122,122,122,0.11);
}

.report-card h3 {
	font-weight: 600;
	margin-top:10px;
	font-size: 18px;
}

#report-chart-header {
	border:1px solid #ddd;
	background: #fff;
	position: relative;
	height: 300px;
	margin-bottom:30px;
	padding:20px;
	border-radius: 8px;
}

.chart-overlay {
		position: absolute;
		width: 100%; 
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: rgba(0,0,0,0.5); 
		z-index: 2; 
}


.chart-overlay-msg{
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 24px;
	color: #fff;
	transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	text-align: center;
  }


.btn-report-filter {
 margin:5px 0px 5px 5px
}

.btn-report-export span {
	display: none;
}



@media (min-width: 576px) {
	.btn-report-export span {
		display: inline;
	}
	.btn-report-export i {
		display:none;
	}
  }


/* Report Builder */

ul.report-build-list {
	list-style-type:none;
	padding:0px;
}

ul.report-build-list li {
	display: block;
	border:1px solid #ddd;
	background-color:#fff;
	padding:10px;
	color:#000; 
}

#report-build-drop {
	background-color: #fff;
	border:1px solid #ddd;
	border-radius: 8px;
	padding:20px;
	margin-bottom:30px;
}





@media only screen and (max-width : 860px) {
	ul#api-services li.module {
		width:100%;
		margin:0px 0px 10px 0px;

	}

	ul#api-services li.module h2 {
	font-size: 18px !important;
	}

}





ul#api-services li.module.active {
	border-top-color: #37C047;
}

ul#api-services li.module .inner {
	padding:15px;
}

ul#api-services li.module h2 {
	font-size: 18px !important;
}

ul#api-services li.module .btn {
	border-radius: 0px;
	border-right:0px;
}

ul#api-services .status {
	font-weight: 700;
	border-top:1px solid #ddd;
	padding-top:5px;
	padding-bottom:5px;
	margin-top:15px;
	margin-bottom:0px;
}

ul#api-services a {
	color:#2E2E2E;
}

ul#api-services a:hover {
	color:#2E2E2E;
	text-decoration: none;
}

ul#api-services .fa.service {
	font-size:32px;
}
#responseFields .table-responsive .table-border, #requestFields .table-responsive .table-border, #notes .table-responsive .table-border, #error .table-responsive .table-border {
	margin-bottom: 20px;
}
#notes li {
	line-height: 1.6;
	margin-bottom: 7px;
}
#notes li:last-child {
	margin-bottom: 15px;
}
#notes li .table-responsive .table-border {
	margin-top: 20px;
}
#introduction p {
	margin-bottom: 20px;
}

/* Content Library */

.preview-img {
	margin-bottom:15px;
}
.file-manager-page .label {
	display: block;
	width: 60px;
	margin: auto;
}


/* Content Slider */

#sortable { list-style-type: none; margin: 0; padding: 0; width: 60%; }
#sortable li { margin: 0 5px 5px 5px; padding: 5px; font-size: 1.2em; height: 2em; }
html>body #sortable li { height: 2em; line-height: 1.2em; }
.ui-state-highlight { height: 2em; line-height: 1.2em; }
.ui-accordion-header-icon { display:  none !important;}


#ContentSliderForm .panel-title {
	display: block;
	position: relative;
	cursor: move;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
    border: 1px solid #ddd !important;
    background:#efefef !important;
    font-weight: normal !important;
    color: #000 !important;
}

.group div {
	height:auto !important;
}


/* Datepicker Override */

.ui-datepicker {
	z-index: 1000 !important;
}


#requestInfo .tab-content {
	/*color: #ac1f2d;*/
	padding:10px;
	border:0;
}




/* Renew Acct */

th.top, td.top {
    vertical-align: top !important;
}
 


.AcctReceiptDate {
	text-align: right;
}

.AcctRenewAgree .checkbox label:after {
    content: '';
    display: table;
    clear: both;
}

.AcctRenewAgree .checkbox .cr {
    position: relative;
    display: inline-block;
    border: 1px solid #a9a9a9;
    border-radius: .25em;
    width: 1.3em;
    height: 1.3em;
    float: left;
    margin-right: .5em;
}


.AcctRenewAgree .checkbox .cr .cr-icon {
    position: absolute;
    font-size: .8em;
    line-height: 0;
    top: 50%;
    left: 20%;
}


.AcctRenewAgree .checkbox label input[type="checkbox"] {
    display: none;
}

.AcctRenewAgree .checkbox label input[type="checkbox"] + .cr > .cr-icon {
    opacity: 0;
    transition: all .3s ease-in;
}

.AcctRenewAgree .checkbox label input[type="checkbox"]:checked + .cr > .cr-icon {
    transform: scale(1) rotateZ(0deg);
    opacity: 1;
}

.AcctRenewAgree .checkbox label input[type="checkbox"]:disabled + .cr {
    opacity: .5;
}

 @media only screen and (max-width : 480px) {
.AcctReceiptDate {
	text-align: left;
}
    }

@media print {
	.AcctReceiptActions {
		display: none;
}

	.AcctReceiptDate {
	text-align: left;
}

	.page {border:none;}

}



/*  ------- Cart Archive ---------- */

.additional-fee-wrap {
	border-bottom:1px solid #ddd;
	padding:10px 0px;
}

.orderList-total {
	font-size:20px;
	font-weight: 700;
}

table.table .orderList-table {
	border-collapse: separate;border-spacing: 10px 0px;
}

table.table .orderList-table td { 
padding:0px;
}

.orderList-cart {
	font-weight: 700;
}

ul#report-builder {
	list-style-type: none;
	padding:0px;
}

ul#report-builder li {
	display: inline-block;
	border:1px solid #ddd;
	padding:10px;
}


td.orderList-wrap {
	white-space: nowrap
}

#order-table thead a {
	color:#4a4c4e;
	font-weight: 400;
	font-size: 16px;
}


#order-table thead a:hover {
	color:#ac1f2d;
	text-decoration: none;
}

.edit-table {
	float:right;
	color:#727272;
}

.order-paid {
	color:#fff;
	background-color: #5cb85c;
}
.order-unpaid {
	color:#fff;
	background-color: #f0ad4e;
}

.order-authorized {
	color:#fff;
	background-color: #246561;
}

.order-partial {
	color:#fff;
	background-color: #337ab7;
}

.order-paid:hover,
.order-unpaid:hover,
.order-partial:hover,
.order-paid:focus,
.order-unpaid:focus,
.order-partial:focus,
.order-authorized:hover,
.order-authorized:focus{
	color:#fff;
}




.btn-status-update .btn {
	display: block;
	width: 150px;
}

.order-status-new {
	color: #fff;
	background:#5bc0de;
}

.order-status-new:hover {
	color:#fff;
}


.order-status-progress {
	color:#fff;
	background-color: #965cc2;
}

.order-status-progress:hover {
	color:#fff;
	background-color: #965cc2;
}

.order-status-complete {
	color:#fff;
	background-color:#5cb85c;
}

.order-status-canceled {
	color:#fff;
	background-color:#f0ad4e;
}

.order-status-canceled:hover {
	color:#fff;
	background-color:#ec971f;
}

.order-status-complete:hover {
	color:#fff;
	background-color:#5cb85c;
}

.order-status-canceled:focus,
.order-status-new:focus,
.order-status-progress:focus,
.order-status-complete:focus {
	color:#fff;
}



.order-new {
	color: #3478f6;
	font-size: 14px !important;
}

.order-delete {
	color:#000;
}


.order-filter-menu {
	padding-left:10px;
	padding-right:10px;
}

.order-filter-menu li.active-filter a:before {
	content: "\f00c";
    font-family: FontAwesome;
	margin-left:-20px;
	margin-right:5px;
} 



.rowlink:hover {
	cursor: pointer;
}

.rowlink-skip:hover {
	cursor: default !important;
}

.badge-halo-flash {
	background-color:#00156b;
	color:#fff;
	margin-left:10px;
}

.badge-blue {
	background-color:#0f75cc;
	color:#fff;
	margin-left:10px;
}

.badge-green {
	background-color:#5cb85c;
	color:#fff;
	margin-left:10px;
}

.badge-red {
	background-color:#ac1f2d;
	color:#fff;
	margin-left:10px;
}

.badge-purple {
	background-color:#4d2543;
	color:#fff;
	margin-left:10px;
}

.badge-orange {
	background-color:#f78a4d;
	color:#fff;
	margin-left:10px;
}

.badge-ltblue {
	background-color:#23a290;
	color:#fff;
	margin-left:10px;
}

.badge-gray {
	background-color:#999;
	color:#fff;
	margin-left:10px;
}




.badge-selector {
	margin-left:15px;
	padding:3px 7px 5px 7px;
}




/* ------- Tradeshows -------- */

.showReportTotal{
	text-align: right;
	margin-top: 50px;
}

.totalAttendees {
	font-size: 20px;
	font-weight: 700;
}

@media only screen and (max-width : 768px) {
.showReportTotal{
	text-align: left;
	margin-top: 10px;
}
    }


/* Loading Spinner */

/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.ai-helper {
	position: relative;
}

.ai-loading {
	position: absolute;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
  }

/* Transparent Overlay
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.3);
}
*/

.pleaseWait {
	width:300px;
	margin: auto;
  position: absolute;
  top: 50%; left: 0; bottom: 0; right: 0;
	z-index: 5;
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required), .ai-loading:not(:required)  {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading:not(:required):after, .ai-loading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  -moz-animation: spinner 1500ms infinite linear;
  -ms-animation: spinner 1500ms infinite linear;
  -o-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
  box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* Print Media Query */
/* .print-sample {
  display: none;
} */

@media print {
 .api-sidebar { display: none !important; }
 main#api-doc { width:100% !important;}
	main.api-doc { width:100% !important;}
  /* .browser-sample {
    display: none;
  }
  .print-sample {
    display: block;
  } */
}





ul.list-sort li:hover {
	cursor: pointer;
}

/* Css for sortable dragable list */
ul.list-sort .sortable-chosen {
	background:#efefef;
	-webkit-box-shadow: 2px 5px 7px 0px rgba(0,0,0,0.17); 
box-shadow: 2px 5px 7px 0px rgba(0,0,0,0.17);
}


.header-image-swap,
.footer-image-swap {
  border:1px solid #ddd;
  border-radius: 8px;
  margin: 20px 0px;
}

.panel-group-settings {
  padding:20px;
  border:1px solid #ddd;
  background-color: #fff;
  border-radius: 8px;
  margin:20px 0px;
}

.panel-group-settings h4 {
  margin: 0 0 5px 0;
  font-size:16px;
}

.panel-group-settings .panel {
  margin-bottom:5px;
}


/* Expand panels */

.panel-expand .panel-heading {
	cursor: pointer;
}

.panel-expand .panel-title {
	position: relative;
  }
	
  .panel-expand .panel-title::after {
	content: "\f107";
	color: #333;
	top: -2px;
	right: 0px;
	position: absolute;
	font-weight: 400;
	font-family: "FontAwesome"
  }
  
  .panel-expand .panel-heading[aria-expanded="true"] {
	color:#ac1f2d;
  }

  .panel-expand .panel-heading[aria-expanded="true"] .panel-title::after {
	content: "\f106";
  }




.panel-acad-mgt {background:#efefef;}

.hidden {
	display: none;
}


.panel-insider {
	padding:20px;
	margin-bottom:40px;
}

.panel-insider h3 {
	text-transform: uppercase;
	margin-top:0px;
}


.panel-insider h4 {
	
}

.insider-accent{
	color:#CB8E43;
}

.btn-insider {
	background-color:#fff;
	color:#A8A8A8;
	border:2px solid #A8A8A8;
	text-transform: uppercase;
	font-weight: 700;
	transition: 0.3s;
}

.btn-insider:hover {
	background-color:#CB8E43;
	border-color:#CB8E43;
	color:#fff;
}

.progress-insider {
	background-color:#CB8E43;
}

#insider-profile:after { content: ''; clear: both; visibility: hidden; }

#insider-profile img {
	float: left; margin-right: 20px; width:75px;
}

#insider-profile ul   {
	overflow: hidden
}

.btn-center {
	margin:0 auto;
}

.ds-block{
	display: block;
	margin:0 auto;
}


#PrintLogo {display: none;}

#PrintFooter { 
	margin:30px 0px !important;
	font-size:15px;
	/*font-weight: 700;*/
	display: none;
	text-transform: uppercase;
}



/* Site Selector */

.industry-store-list li {
	background-color:#fff;
	padding:10px 5px 5px 5px;
	border-bottom:1px solid #ddd;
}

.industry-store-list li:last-child {
	border:0;
}

.industry-store-list li h4 {
	margin:0px;
}

.punchout-connected {
	color:#23a290;
}


/* Responsive Table dropdown menu fix */

@media (max-width: 767px) {
    .table-responsive .dropdown-menu {
        position: static !important;
    }
}
@media (min-width: 768px) {
    .table-responsive {
        overflow: visible;
    }
}

/* Rich text editor enhance button */
/* .mce-enhance-button {
	background-color: #ac1f2d !important;
	border-radius: 4px;
}

.mce-enhance-button:hover {
	background-color: #b30c18 !important;
}

.mce-enhance-button .mce-txt {
	color: #ffffff !important;
}

.mce-enhance-button .mce-caret {
	border-top-color: #ffffff !important;
} */

#aiImage .modal-body {
	max-height: calc(100vh - 120px);
	overflow-y: auto;
}

.mce-i-roboticon:before {
	content: '';
	display: inline-block;
	width: 18px;
	height: 18px;
	background: url('/mgs/microchip-ai-light.svg') no-repeat center center;
}

.mce-i-ai-icon:before {
	content: '';
	display: inline-block;
	width: 18px;
	height: 18px;
	background: url('/mgs/microchip-ai-light.svg') no-repeat center center;
}

/* Print Styles SAGE Connect */
@media print {
    .tab-content>.tab-pane {
    height: auto;
	}
	.tab-content {
		border:0;
		padding-left:30px !important;
		padding-right:30px !important;
	}
	
	.breadcrumb { display:none;}
	
	
	body { font-size:12px;}
	
	h2 { font-size:18px !important;}
	
	table tr {

		border-left:0;
		border-right:0;
	}

	.nav-tabs {display:none;}
	
	/* Show sage connect logo */
	#PrintLogo { display: block;}
	#PrintLogo img {width:300px;}
	
	#PrintFooter { display: block;}
	
	.btn-print { display: none;}
	
	
	

}

/* Pages & Nav destination */
.td-destination.custom {
	display: flex;
	align-items: center;
	gap: 1rem;
}
.td-destination i {
	display: none !important;
}
.td-destination.custom i {
	display: inline-block !important;
}

/* Orders/requests tag actions dropdown */
.tag-actions .dropdown-submenu {
  position: relative;
}
.tag-actions .dropdown-submenu>.dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
  -webkit-border-radius: 0 6px 6px 6px;
  -moz-border-radius: 0 6px 6px;
  border-radius: 0 6px 6px 6px;
}
.tag-actions .dropdown-submenu:hover>.dropdown-menu {
  display: block;
}
.tag-actions .dropdown-submenu>a:after {
  display: block;
  content: " ";
  float: right;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-left-color: #ccc;
  margin-top: 5px;
  margin-right: -10px;
}
.tag-actions .dropdown-submenu:hover>a:after {
  border-left-color: #fff;
}
.tag-actions .dropdown-submenu.pull-left {
  float: none;
}
.tag-actions .dropdown-submenu.pull-left>.dropdown-menu {
  left: -100%;
  margin-left: 10px;
  -webkit-border-radius: 6px 0 6px 6px;
  -moz-border-radius: 6px 0 6px 6px;
  border-radius: 6px 0 6px 6px;
}

/* Site Selector */
#filterInput {
	width: clamp(250px, 30vw, 350px);
}

.highlight-store {
	border:1px solid #5cb85c
}


/* Color Picker */
.sp-container {
	background-color:#fff;
	border-color:#ddd;
}

#form-response-list {
	list-style-type: none;
	padding:0px;
}

#form-response-list li:nth-child(even) {
	margin-bottom:15px;
	/*height: 16px;*/

}

.response-label {
	font-weight: 600;
}


#form-archive-sidebar {
	border-left:1px solid #ddd;
	padding-left:30px;
}

.form-archive-details .title {
	font-weight: 700;
}

.form-archive-details li:nth-child(even) {
	margin-bottom:20px;
}

 /* #generate-image-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	border:1px solid #ddd;
 
}

#generate-image-wrap img {
	object-fit: contain;
	height:400px;
	width:400px;
}

#generate-image-ai-prompt-text {
  font-size: 12px;
  line-height: 1.42857143;
  color: #555;
}

.modal-file-lib-ai #generate-image-wrap img {
	height: 380px;
} */


/* Generate image modal */

.generate-image-body {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.generate-image-form {
    flex: 0 0 320px;
    display: flex;
    flex-direction: column;
    gap: 4px;
	padding:20px 0px 15px 20px;
}

.generate-image-preview-wrap {
    flex: 1;
    overflow: hidden;
    background: #efefef;
    height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 20px;
}

#generate-image-wrap {
    width: 100%;
    height: 100%;
}

#generate-image-preview {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    border-radius: 8px;
}

.generate-image-actions {
    display: flex;
    gap: 8px;
    margin-top: 8px;
}

.generate-image-actions .btn {
    flex: 1;
}

@media (max-width: 768px) {
    .generate-image-body {
        flex-direction: column;
    }

    .generate-image-form {
        flex: none;
        width: 100%;
        padding: 20px;
    }

    .generate-image-preview-wrap {
        width: 100%;
        height: 300px;
    }
}

/* End generate */


.modal-panel-list {
	list-style-type: none;
	padding:0px;
}

.modal-panel-list li {
	padding:6px 12px;
	border:1px solid #ddd;
	margin-bottom:5px;
}

.modal-panel-list li input {
	margin-right:10px;
}

/* SAGE Meeting Scheduler */

body#scheduler {
	background-color: #fafafa;
    font-family: 'Inter', sans-serif;
	font-weight:400;
	font-size:16px;
}

.schedule-wrap {
    --schedule-accent: #a3152c;
    --schedule-accent-secondary: #a3152c;
    --schedule-border: #e3e3e6;
    --schedule-text: #2b2b30;
    --schedule-text-muted: #767680;
    --schedule-radius: 10px;
    --schedule-radius-sm: 6px;

    padding: 48px 20px;
    font-feature-settings: "tnum" 1;
}

.datepicker-cell.next:not(.disabled), .datepicker-cell.prev:not(.disabled) {
  color:#000;
}

.schedule-page-label {
    max-width: 1400px;
    margin: 40px auto 12px auto;
    padding: 0 20px;
    font-size: .75rem;
    font-weight: 700;
    color: var(--schedule-text-muted, #767680);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.label-legal {
  font-size: 11px;
  font-weight: 400;
  display: block;
}

.schedule-header-center {
    text-align: center;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.schedule-header-center .schedule-host-avatar {
    margin-left: auto;
    margin-right: auto;
}

.schedule-meeting-types {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    max-width: 640px;
    margin: 0 auto;
    gap: 16px;
}

.schedule-meeting-type {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 16px;
    text-decoration: none;
    color: inherit;
    border: 1px solid var(--schedule-border);
    transition: background-color .15s ease;
    min-height: 100px;
    border-radius: var(--schedule-radius);
}



.schedule-meeting-type:hover {
    background-color: #fafafb;
}

.schedule-meeting-type-dot {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--schedule-accent);
    margin-top: 4px;
}

.schedule-meeting-type-info {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
}


.schedule-back-btn {
  display: inline-block;
  color:#333;
  font-size:12px;
  margin-top:5px;
  text-decoration: underline;
}

.schedule-meeting-type-set {
  margin-top:25px;
}

.schedule-meeting-type-set .schedule-meeting-type-title {
  color: var(--schedule-accent);
  font-size:20px;
}


.schedule-meeting-type-title {
    font-weight: 700;
    font-size: 1rem;
}

.schedule-meeting-type-desc {
    color: var(--schedule-text-muted);
    font-size: .8125rem;
    line-height: 1.5;
}

.schedule-meeting-type-arrow {
    flex: 0 0 auto;
    color: var(--schedule-text-muted);
    margin-top: 4px;
    font-size: .75rem;
}

#add-guest-btn {
  display: inline-block;
  text-decoration: none;
  font-size:14px;
  margin-top:10px;
  margin-left:10px;
}

.schedule-confirm {
    text-align: center;
    max-width: 480px;
    margin: 0 auto;
    padding: 24px 0;
}

.schedule-confirm-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: var(--schedule-accent);
    color: #fff;
    font-size: 34px;
    line-height: 1;  
    transform: scale(0);
    animation: schedule-badge-pop .5s cubic-bezier(.34, 1.56, .64, 1) .15s forwards;
}

/* Animate */
@keyframes schedule-badge-pop {
    to { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .schedule-confirm-icon {
        animation: none;
        transform: scale(1);
    }
}

.schedule-confirm h1 {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.schedule-confirm p {
    color: var(--schedule-text-muted);
    font-size: .9375rem;
}

.schedule-confirm-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
}

.schedule-card {
    background-color: #fff;
    width: 100%;
    max-width: 1080px;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(20, 20, 30, .04), 0 12px 32px rgba(20, 20, 30, .08);
    border: 1px solid var(--schedule-border);
    position: relative;
    color: var(--schedule-text);
}

.schedule-card.schedule-card-confirm {
    max-width: 560px;
}

.schedule-layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 24px;
    max-width: 1400px;
    margin: 0 auto;
}

/* meeting type container */
.schedule-layout-types {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 24px;
    max-width: 800px;
    margin: 0 auto;
}

.schedule-layout-types .schedule-host-avatar {
  width:65px;
  height:65px;
}

.schedule-body {
    padding: 40px;
}

.schedule-body-inner {
    padding-top:80px;
    padding-bottom:80px;
}

.schedule-body textarea {
    height: 120px;
    resize: vertical;
}

.schedule-columns {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 32px;
}

.schedule-col-form {
    flex: 1 1 260px;
}

.schedule-col-calendar {
    flex: 2 1 340px;
    position: sticky;
    top: 20px;
}

.schedule-host-avatar {
    width: 54px;
    height: 54px;
    object-fit: cover;
}

.schedule-host-title {
    margin: -4px 0 16px 0;
    color: var(--schedule-text-muted);
    font-size: .8125rem;
    text-transform: uppercase;
}


.schedule-header {
    padding-bottom: 24px;
    margin-bottom: 24px;
}

.schedule-meeting-header {
   padding-bottom: 24px;
    margin-bottom: 0px;
}

.schedule-header-inner {
  display: flex;
  align-items: center;
  gap:15px;
  margin-top:30px;
}

.schedule-header h1,
.schedule-header h2 {
    margin: 0 0 15px 0;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.schedule-header h1 span {
  display: block;
}

.schedule-header p {
    margin: 0;
    color: var(--schedule-text-muted);
    font-size: .9375rem;
    ;
}

.schedule-slots {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.schedule-slot {
    border: 1px solid var(--schedule-border);
    border-radius: var(--schedule-radius-sm);
    padding: 10px 12px;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
    cursor: pointer;
    text-align: center;
    display: block;
    text-decoration: none;
    font-size: .875rem;
    font-weight: 600;
    color: var(--schedule-text);
}

.schedule-slot:hover {
    border-color: var(--schedule-accent);
    color: var(--schedule-accent);
}

.schedule-slot:active,
.schedule-slot.is-selected {
    background-color: var(--schedule-accent);
    border-color: var(--schedule-accent);
    color: #fff;
}

.schedule-submit {
    font-size: 1rem;
    font-weight: 600;
    padding: 12px 28px;
    border-radius: var(--schedule-radius-sm);
    margin-top: 50px;
    transition: opacity .15s ease, transform .1s ease;
  
}

.schedule-submit:active {
    transform: scale(.98);
}

.schedule-card .datepicker {
    display: block;
    width: 100%;
}

.schedule-card .datepicker-picker {
    display: block;
    font-size: .9375rem;
    margin-bottom: 24px;
    width: 100%;
}

.schedule-card .datepicker-view {
    width: 100%;
}

.schedule-card .datepicker .dow {
    font-size: .8125rem;
    font-weight: 600;
    color: var(--schedule-text-muted);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.schedule-card .datepicker-cell {
    position: relative;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 0;
}

.schedule-card .datepicker-cell::before {
    content: '';
    position: absolute;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background-color: transparent;
    z-index: -1;
    transition: background-color .15s ease;
}

.schedule-card .datepicker-cell:not(.disabled):hover {
    background-color: transparent;
}

.schedule-card .datepicker-cell:not(.disabled):hover::before {
    background-color: #fbeae8;
}

.schedule-card .datepicker-cell.focused:not(.selected) {
    background-color: transparent;
}

.schedule-card .datepicker-cell.today:not(.selected) {
    background-color: transparent;
    color: #000;
    font-weight: 700;
}

.schedule-card .datepicker-cell.today:not(.selected)::before {
    border: 1.5px solid #ddd;
}

.schedule-card .datepicker-cell.selected,
.schedule-card .datepicker-cell.selected:hover {
    background-color: transparent;
    color: #fff;
}

.schedule-card .datepicker-cell.selected::before,
.schedule-card .datepicker-cell.selected:hover::before {
    background-color: var(--schedule-accent);
}

.schedule-card .datepicker-controls .button {
    font-size: 1rem;
    font-weight: 600;
}


.schedule-contact-methods {
    display: flex;
    gap: 8px;
}

.schedule-contact-method {
    position: relative;
    flex: 1 1 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid var(--schedule-border);
    border-radius: var(--schedule-radius-sm);
    cursor: pointer;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
    font-size: 13px;
    font-weight: 600;
    color: var(--schedule-text);
}

.schedule-contact-method input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.schedule-contact-method i {
    font-size: 16px;
    color: var(--schedule-text-muted);
    transition: color .15s ease;
}

.schedule-contact-method:hover, .schedule-contact-method:hover i {
    border-color: var(--schedule-accent);
    color: var(--schedule-accent);
}

.schedule-contact-method:has(input:checked) {
    border-color: var(--schedule-accent);
    background-color: var(--schedule-accent);
    color: #fff;
}

.schedule-contact-method:has(input:checked) i {
    color: #fff;
}

.schedule-contact-method:has(input:focus-visible) {
    outline: 2px solid var(--schedule-accent);
    outline-offset: 2px;
}

.schedule-timezone {
	margin-bottom:10px;
}
.schedule-field-label {
    font-weight: 700;
}


/* Confirmation */
.schedule-detail{
    display:flex;
    align-items:center;
    gap:14px;
    text-align:left;
    border:1px solid #e6e3dd;
    border-radius:14px;
    padding:16px 18px;
    max-width:520px;
    margin:30px 0px;
  }
 
 
 
  .schedule-detail-main{
    flex:1;
    min-width:0;
  }
 
  .schedule-detail-name{
    font-weight:700;
    font-size:16px;
    color:#1f2430;
    margin:0 0 2px;
  }
 
  .schedule-detail-meta{
    font-size:13px;
    color:#5b6270;
  }
 
  .schedule-detail-meta-item{
    margin-bottom:5px;
  }

.empty-slots-msg {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 20px;
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2.5rem 1.5rem;
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
  font-size: 16px;
  color: #5a5a5a;
  line-height: 1.6;
}

.empty-slots-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #FAECE7;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}

.empty-slots-icon i {
  font-size: 22px;
  color: var(--schedule-accent);
}
 

@media (max-width: 767px) {
    .schedule-wrap {
        padding: 24px 12px;
    }

    .schedule-body {
        padding: 24px;
    }

    .schedule-slots {
        grid-template-columns: repeat(2, 1fr);
    }

    .schedule-meeting-types {
        grid-template-columns: 1fr;
    }

     .schedule-submit {
        padding: 8px 15px;
    }

   

}

@media (max-width: 480px) {
   .schedule-submit {
        position: static;
        display: block;
        width: 100%;
        margin-top: 24px;
    }
}


@media (max-width: 420px) {
    .schedule-slots {
        grid-template-columns: 1fr 1fr;
    }
}

/* Intl phone mask */
.iti__country-selector {
  .iti--inline-country-selector:not(.iti--detached-country-selector) & {
    position: absolute;
    z-index: 1000;
    left: 0;
  }
}

.iti {
  display:block;
}

#schedule-phone.form-control {
  padding: 1rem .75rem;
}

#schedule-phone.form-control::placeholder {
  font-weight: 600;
  color:var(--schedule-text);
}



/* ---------------------------
  	Page Settings
---------------------------- */


.ui-flyout{
  position: fixed;
  top:0;
  right:-460px;     
  width: 460px;
  max-width: 92vw;
  height: 100vh;
  background: #fff;
  z-index: 1050;
  box-shadow: -6px 0 14px rgba(0,0,0,.1);
  transition: right .22s ease;
  display:flex;
  flex-direction: column;
}

.ui-flyout.is-open{ right:0; }

.ui-flyout-header{
  padding: 12px 14px;
  border-bottom: 1px solid #e5e5e5;
  display:flex;
  align-items:center;
  justify-content: space-between;
}

.ui-flyout-body{
  padding: 14px;
  overflow:auto;
  flex:1;
}

.ui-flyout-footer{
  padding: 12px 14px;
  border-top: 1px solid #e5e5e5;
  display:flex;
  justify-content:flex-end;
  gap:10px;
}


/* --- Design Library --- */ 

.badge-page {
    background-color: #0f75cc;
    color: #fff;
}
.badge-section {
    background-color: #ac1f2d;
    color: #fff;
}
.badge-row {
    background-color: #4d2543;
    color: #fff;
}
.badge-widget {
    background-color: #23a290;
    color: #fff;
}
.badge-new {
    background-color: #e8a200;
    color: #fff;
}

/* design modal  */
#design-library-modal .modal-dialog {
    width: 90%;
    max-width: 1200px;
    margin: 30px auto;
}
#design-library-modal .modal-content {
    border-radius: 6px;
    overflow: hidden;
}
#design-library-modal .modal-header {
    padding: 12px 16px;
    border-bottom: 1px solid #e0e0e0;
}
#design-library-modal .modal-title {
    font-size: 15px;
    font-weight: 600;
}

.pb-library-modal-body {
	min-height: 600px;
    max-height: calc(100vh - 120px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
}
.pb-library-columns {
    display: flex;
    flex: 1 1 auto;
    overflow: hidden;
}

/* Sidebar */
.pb-library-sidebar {
    flex: 0 0 210px;
    background: #f7f7f7;
    border-right: 1px solid #e0e0e0;
    overflow-y: auto;
}
.pb-library-sidebar-header {
    padding: 14px 16px 10px;
    border-bottom: 1px solid #e8e8e8;
}
.pb-library-sidebar-header h5 {
    margin: 0 0 2px;
    font-size: 13px;
    font-weight: 600;
    color: #111;
}
.pb-library-sidebar-header small {
    font-size: 11px;
    color: #999;
}

/* Type nav */
.pb-type-nav {
    padding: 10px 8px 6px;
    border-bottom: 1px solid #e8e8e8;
}
.pb-type-nav-label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #bbb;
    font-weight: 600;
    padding: 0 8px;
    margin-bottom: 4px;
}
.pb-type-nav-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 7px 10px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
    color: #555;
    user-select: none;
    text-decoration: none;
}
.pb-type-nav-item:hover {
    background: #ebebeb;
    color: #111;
    text-decoration: none;
}
.pb-type-nav-item.active {
    background: #e2e2e2;
    color: #111;
    font-weight: 600;
}
.pb-type-nav-item .pb-type-count {
    font-size: 11px;
    color: #bbb;
    font-weight: 400;
}
.pb-type-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 8px;
    flex-shrink: 0;
}
.dot-all {
    background: #888;
}
.dot-page {
    background: #0f75cc;
}
.dot-section {
    background: #ac1f2d;
}
.dot-row {
    background: #4d2543;
}
.dot-widget {
    background: #23a290;
}

/* Category filters */
.pb-category-filters {
    padding: 12px 8px 14px;
}
.pb-category-filters h6 {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #bbb;
    font-weight: 600;
    padding: 0 8px;
    margin: 0 0 6px;
}
.pb-library-filter-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.pb-library-filter-list li {
    margin-bottom: 2px;
}
.pb-library-filter-list label {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 5px 8px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 400;
    color: #555;
    cursor: pointer;
    margin: 0;
}
.pb-library-filter-list label:hover {
    background: #ebebeb;
    color: #111;
}
.pb-library-filter-list input[type="checkbox"] {
    margin: 0;
    cursor: pointer;
}

/* deisgn lib frame  */
.pb-library-content {
    flex: 1 1 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}
.pb-library-toolbar {
    padding: 10px 16px;
    border-bottom: 1px solid #e8e8e8;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    flex-shrink: 0;
}
.pb-library-toolbar .form-control {
    font-size: 13px;
    height: 34px;
}

/* design card grid  */
.pb-library-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    padding: 16px;
    align-content: start;
}
.pb-library-card {
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    overflow: hidden;
    background: #fff;
    display: flex;
    flex-direction: column;
    position: relative;
    cursor: pointer;
    transition: border-color 0.15s;
}
.pb-library-card:hover {
    border-color: #aaa;
}
.pb-library-card.selected {
    border-color: #0f75cc;
    box-shadow: 0 0 0 2px rgba(15, 117, 204, 0.15);
}

.pb-library-card img {
    width: 100%;
    height: 130px;
    object-fit: cover;
    display: block;
    border-bottom: 1px solid #e8e8e8;
}
.pb-library-card > .badge {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 10;
    font-size: 10px;
    padding: 3px 7px;
}
.pb-library-card-info {
    padding: 10px 10px 6px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.pb-library-card-title {
    font-size: 13px;
    font-weight: 600;
    color: #111;
    margin-bottom: 4px;
}
.pb-library-card-description {
    font-size: 12px;
    color: #888;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
    min-height: 34px;
}
.pb-library-card-buttons {
    display: flex;
    border-top: 1px solid #e8e8e8;
    margin-top: 8px;
}
.pb-library-card-buttons .btn {
    flex: 1;
    border-radius: 0;
    border: none;
    border-left: 1px solid #e8e8e8;
    padding: 7px 0;
    font-size: 12px;
}
.pb-library-card-buttons .btn:first-child {
    border-left: none;
}
.btn-preview {
    background: #f7f7f7;
    color: #555;
}
.btn-preview:hover {
    background: #efefef;
    color: #111;
}
.btn-red {
    background: #ac1f2d;
    color: #fff;
}
.btn-red:hover {
    background: #8e1925;
    color: #fff;
}

/* slide draw */
.pb-drawer-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
    z-index: 100;
}
.pb-drawer-overlay.open {
    opacity: 1;
    pointer-events: all;
}

.pb-drawer {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 320px;
    background: #fff;
    border-left: 1px solid #e0e0e0;
    transform: translateX(100%);
    transition: transform 0.25s ease;
    display: flex;
    flex-direction: column;
    z-index: 101;
}
.pb-drawer.open {
    transform: translateX(0);
}

.pb-drawer-header {
    padding: 13px 16px 11px;
    border-bottom: 1px solid #e8e8e8;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-shrink: 0;
}
.pb-drawer-title {
    font-size: 14px;
    font-weight: 600;
    color: #111;
    margin-bottom: 2px;
}
.pb-drawer-type {
    font-size: 11px;
    color: #999;
}
.pb-drawer-close {
    background: none;
    border: none;
    font-size: 20px;
    color: #aaa;
    cursor: pointer;
    padding: 0;
    line-height: 1;
}
.pb-drawer-close:hover {
    color: #333;
}

.pb-drawer-body {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.pb-drawer-thumb {
    width: 100%;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
}
.pb-drawer-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.pb-drawer-section-label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #bbb;
    font-weight: 600;
    margin-bottom: 6px;
}
.pb-drawer-description {
    font-size: 13px;
    color: #555;
    line-height: 1.5;
}

.pb-drawer-meta {
    width: 100%;
    font-size: 12px;
    border-collapse: collapse;
}
.pb-drawer-meta td {
    padding: 5px 0;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
}
.pb-drawer-meta tr:last-child td {
    border-bottom: none;
}
.pb-drawer-meta td:first-child {
    color: #aaa;
}
.pb-drawer-meta td:last-child {
    color: #111;
    font-weight: 600;
    text-align: right;
}

.pb-drawer-footer {
    padding: 12px 16px;
    border-top: 1px solid #e8e8e8;
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}
.pb-drawer-footer .btn {
    flex: 1;
    font-size: 13px;
    padding: 8px;
}

/* --------------------
	V8 Widget Layouts 
----------------------- */

/* Copy Columns helpers */

.row-flex {
  display: flex;
  flex-wrap: wrap;
}

.row-flex > .col-lg {
  flex: 1 0 0%;
  min-width: 0;
}

.row-flex > .col-lg {
  padding-left: 15px;
  padding-right: 15px;
}

.row-flex {
  margin-left: -15px;
  margin-right: -15px;
}



.pb-curated-item {
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
	margin-bottom:30px;
}

.pb-curated-item:hover img {
	-webkit-transform: scale(1.1) translate(1%, -1%);
          transform: scale(1.1) translate(1%, -1%);
}

.pb-curated-img-wrap {
	display: block;
	overflow: hidden;
}


.pb-curated-item img {
	transition: all 0.4s ease;
	width: 100%;
	height: 240px;
	overflow: hidden;
	display: block;
	object-fit:cover;
  }

.pb-curated-title {
	padding:15px;
	text-align: center;
	margin:0px;
	color:#fff;
	background-color: #313842;
	font-size: 18px;
}


.pb-widget-temp {
	border:1px solid #ddd;
	background-color: #efefef;
	padding:20px;
	text-align: center;
}

.modal-builder .tab-content {
	border:0;
	padding:10px 0px 0px 0px;
}

.modal-builder .modal-header {
	border:0;
}

.modal-builder .panel-heading {
	cursor: pointer;
}

.modal-builder .panel-title {
	position: relative;
  }
	
  .modal-builder .panel-title::after {
	content: "\f107";
	color: #333;
	top: -2px;
	right: 0px;
	position: absolute;
	font-weight: 400;
	font-family: "FontAwesome"
  }
  
  .modal-builder .panel-heading[aria-expanded="true"] {
	color:#ac1f2d;
  }

  .modal-builder .panel-heading[aria-expanded="true"] .panel-title::after {
	content: "\f106";
  }





.widget-setting-title {
	margin-top:10px;
	font-weight: 700;
}

.pb-section {
	padding:75px 0px;
	background-image: none;
	background-color: #fff;
	background-size: cover;
	background-position: inherit;
	background-repeat:no-repeat;
	background-attachment: scroll;
	position: relative;
}

.pb-section-video {
    display: none;
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
}

.pb-section-overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
}

.pb-section-video:has(source[src]:not([src=""])) {
    display: block;
}

.pb-btn {
	margin-top:20px;
}

.pb-btn-inline {
  display: inline-block;
}

/* Fix button inline hover overlap */
.pb-btn-inline .widget-block:hover {
  z-index: 1001;
  position: relative;
}

#pb-import-layout {
	margin:30px 0px;
	text-align: center;

}

#pb-import-layout-list {
 list-style-type: none;
 padding:0px;
 margin-bottom:10px;
}

#pb-import-layout-list span {
	float:right;
}

#pb-import-layout-list a:hover span {
	color:#555;
}

#pb-import-layout-list li {
	border-bottom:1px solid #ddd;
}

#pb-import-layout-list li a {
	padding:10px 15px;
	display: block;
	color:#555;
	text-align: left;
}

#pb-import-layout-list li a:hover {
	color:#ac1f2d;
}


#page-builder-controls {
	background-color: #efefef;
	padding:5px 15px;
	margin-bottom:20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}


#page-builder-controls img {
	margin:0px;
	padding-top:5px;
}

#page-builder-controls i {
	font-size: 20px;
}

#page-builder-controls ul {
	padding:0px;
	text-decoration: none;
	margin:0px;
}

#page-builder-controls li {
	display: inline-block;
	padding-right:10px;
}

#page-builder-controls li a:hover {
	color:#000;
	text-decoration: none;
}
#page-builder-controls li a:focus {
	color:#ac1f2d;
	text-decoration: none;
}

/* fix icon aligment */
#page-builder-controls i {
  position: relative;
  top: 2px; 
  margin-right: 4px;
}

/* Temp button fix */
#page-builder-controls li a.btn-red:hover {
	color:#fff;
}

.pb-edit-title {
  text-transform: uppercase;
  font-size: 8px;
  display: inline-block;
  padding: 0px 15px 0px 5px;
  vertical-align: bottom;
  color: #fff;
  border-top-left-radius: 4px;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 100%, 0 100%);
  letter-spacing: 0.5px;
  position: absolute;
  z-index: 100;
  top: -5px;
}

.col-edit > .pb-edit-title {
    background: #20A577;
}
.row-edit > .pb-edit-title {
    background: #ac1f2d;
}
.widget-edit > .pb-edit-title {
    background: #22577a; 
}
.section-edit > .pb-edit-title {
    background: #4d2543;
}

/* Page Builder control setup */

.tooltip,
.tooltip *{
  pointer-events: none !important;
  z-index: 1200;
}

/* ========== ROW ========== */

.row-block{
  border: 1px dashed #ddd;
  padding: 25px 10px;
  min-height: 50px;
  position: relative;
  margin-bottom: 5px;
}
.row-block:hover{ border: 1px solid #ac1f2d; }

.add-row-wrap{
	min-height: 50px;
	position:relative;
	z-index:2;
}

.row-edit{
  position: absolute;
  top: -15px;
  left: -1px;
  z-index: 1000;
  white-space: nowrap;
  width: max-content;
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.row-block:hover > .add-row,
.add-row-wrap:hover > .add-row{
  opacity: 1;
  pointer-events: auto;
}



.row-edit .btn-default{
  background: #ac1f2d;
  color: #fff;
  border: 0;
}
.row-edit .btn-default:hover,
.row-edit .btn-default:focus,
.row-edit .btn-default:active{
  background: #ac1f2d;
  color: #fff;
  border: 0;
}
.row-edit .btn-default i{
  display: inline-block;
  transition: transform 120ms ease;
}
.row-edit .btn-default:hover i{ transform: scale(1.08); }

.add-row{
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity 150ms ease;
}

.add-row i{
  background: #ac1f2d;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  text-align: center;
  line-height: 32px;
  vertical-align: middle;
  box-shadow: -1px -1px 23px 0 rgba(0,0,0,0.14);
}

.add-row:focus i,
.add-row:hover i {
  color: #fff;
  background: #ca2637;
}


/* Section-level Add Row */
.add-row-section{
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  pointer-events: none;
  z-index: 10;
  cursor: pointer;
}

/* Empty section – center Add Row */
.section-block:not(:has(.row-block)) .add-row-wrap{
  position: relative;
}

.section-block:not(:has(.row-block)) .add-row-wrap .add-row-section{
  top: 50%;
  opacity: 1;
  pointer-events: auto;
}

/* Section add-row-section btn */
.add-row-section i{
  background: #ac1f2d;
  color: #fff;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  text-align: center;
  line-height: 32px;
  vertical-align: middle;
  box-shadow: -1px -1px 23px 0 rgba(0,0,0,0.14);
}

.add-row-section:hover i{
  background: #ca2637;
}

/* ========== COLUMN ========== */

.builder-column{ padding: 5px; }

.col-block{
  border: 1px dashed #ddd;
  padding: 25px 10px;
  min-height: 50px;
  position: relative;
  margin-bottom: 5px;
}
.col-block:hover{ border: 1px solid #20A577; }

.col-edit{
  position: absolute;
  top: -15px;
  left: -1px;
  z-index: 1000;
  white-space: nowrap;
  width: max-content;
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.col-block:hover .col-edit{ opacity: 1; }

.col-edit .btn-default{
  background: #20A577;
  color: #fff;
  border: 0;
}
.col-edit .btn-default:hover,
.col-edit .btn-default:focus,
.col-edit .btn-default:active{
  background: #20A577;
  color: #fff;
  border: 0;
}
.col-edit .btn-default i{
  display: inline-block;
  transition: transform 120ms ease;
}
.col-edit .btn-default:hover i{ transform: scale(1.08); }

.col-edit .btn-group .btn:first-child{ border-top-left-radius: 0; }

.col-block .btn-group {
	display: inline-flex;
}

.pb-edit-group {
  flex-wrap: nowrap;
  white-space: nowrap;
}

.pb-edit-group .btn{
  flex: 0 0 auto;
}


/* ========== SECTION ========== */

.section-block{
  border: 1px dashed #ddd;
  padding: 30px 0px;
  margin-bottom: 15px;
  min-height: 50px;
  position: relative;
}
.section-block:hover{ border: 1px solid #999999; }

.section-edit{
  position: absolute;
  top: -15px;
  left: -1px;
  z-index: 1000;
  white-space: nowrap;
  width: max-content;
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.section-block:hover .section-edit,
.section-block:hover .add-section{ opacity: 1; }

.section-edit .btn-default{
  background: #4d2543;
  color: #fff;
  border: 0;
}
.section-edit .btn-default:hover,
.section-edit .btn-default:focus,
.section-edit .btn-default:active{
  background: #4d2543;
  color: #fff;
  border: 0;
}
.section-edit .btn-default i{
  display: inline-block;
  transition: transform 120ms ease;
}
.section-edit .btn-default:hover i{ transform: scale(1.08); }

.add-section{
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  opacity: 0;
}
.add-section i{
  background: #4d2543;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  text-align: center;
  line-height: 32px;
  vertical-align: middle;
  color: #fff;
  box-shadow: -1px -1px 23px 0 rgba(0,0,0,0.14);
}
.add-section:focus i,
.add-section:hover i{
  color: #fff;
  background: #4d2543;
}


/* ========== WIDGET  ========== */

.widget-block{
  border: 1px solid transparent;
  padding: 10px;
  position: relative;
}
.widget-block:hover{ border: 1px solid #22577a; }

.widget-edit{
  position: absolute;
  top: -10px;
  left: -1px;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 1000;
  white-space: nowrap;
  width: max-content;
  opacity: 0;
  transition: all 200ms ease-in-out;
}

/* Widget-level insert button (inside widget-block) */
.add-widget{
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  opacity: 0;
  z-index: 100;
  pointer-events: none;
}

/* Column-level first-widget button */
.add-widget-col{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  opacity: 0;
  z-index: 100;
  pointer-events: none;
}

.widget-block:hover .widget-edit,
.widget-block:hover > .add-widget{
  opacity: 1;
  pointer-events: auto;
}



/* Empty column  center + show the col button */
.col-block:not(:has(.widget-block)) .add-widget-col{
  top: 50% !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.add-widget i,
.add-widget-col i{
  background: #22577a;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  text-align: center;
  line-height: 32px;
  vertical-align: middle;
}
.add-widget-col i{ color: #fff; }
.add-widget:hover i{ color: #fff; background: #22577a; }


/* ========== HIDE PARENT TOOLBARS  ========== */

.section-block:has(.row-block:hover) > .section-edit,
.section-block:has(.col-block:hover) > .section-edit,
.section-block:has(.widget-block:hover) > .section-edit{
  opacity: 0 !important;
  pointer-events: none;
}
.section-block:has(.row-block:hover),
.section-block:has(.col-block:hover),
.section-block:has(.widget-block:hover){
  border: 1px dashed #ddd !important;
}

/* Only hide row toolbar on widgets */
.row-block:has(.widget-block:hover) > .row-edit{
  opacity: 0 !important;
  pointer-events: none;
}

.row-block:has(.col-block:hover),
.row-block:has(.widget-block:hover){
  border: 1px dashed #ddd !important;
}


/* Column add button only exists for EMPTY columns */
.col-block:has(.widget-block) > .add-widget-col{
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Empty column - show add-widget-col */
.col-block:not(:has(.widget-block)) > .add-widget-col{
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Still hide column toolbar when hovering widgets */
.col-block:has(.widget-block:hover) > .col-edit{
  opacity: 0 !important;
  pointer-events: none;
}

/* hover widget, remove col border */
.col-block:has(.widget-block:hover),
.col-block:hover:has(.widget-block:hover){
  border: 1px dashed #ddd !important;
}

.section-block:has(.row-block:hover) > .add-section,
.section-block:has(.col-block:hover) > .add-section,
.section-block:has(.widget-block:hover) > .add-section{
  opacity: 0 !important;
  pointer-events: none;
}

.row-block:has(.col-block:hover) > .add-row,
.row-block:has(.widget-block:hover) > .add-row{
  opacity: 0 !important;
  pointer-events: none;
}

/* Show row toolbar only when row is hovered AND no column/widget inside is hovered */
.row-block:hover:not(:has(.col-block:hover)):not(:has(.widget-block:hover)) > .row-edit{
  opacity: 1 !important;
  pointer-events: auto !important;
}



/* Rw hover will always show add-row */
.row-block:hover > .add-row{
  opacity: 1;
  pointer-events: auto;
}

/* hide add-row when hovering columns/widgets */
.row-block:has(.col-block:hover) > .add-row,
.row-block:has(.widget-block:hover) > .add-row{
  opacity: 0;
  pointer-events: none;
}


/* Hide row toolbar when hovering a column or widget */
.row-block:has(.col-block:hover) > .row-edit,
.row-block:has(.widget-block:hover) > .row-edit{
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Show row toolbar only when hovering row itself (not inside col/widget) */
.row-block:hover:not(:has(.col-block:hover)):not(:has(.widget-block:hover)) > .row-edit{
  opacity: 1 !important;
  pointer-events: auto !important;
}




/* If a row has 5+ columns, center the toolbars, shrink the add-widget icon */
.row-block:has(> .builder-row > .col-wrap:nth-child(n+5)) .col-edit,
.row-block:has(> .builder-row > .col-wrap:nth-child(n+5)) .widget-edit{
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
}

.row-block:has(> .builder-row > .col-wrap:nth-child(n+5)) .add-widget-col i{
  width: 20px;
  height: 20px;
  line-height: 22px;
  font-size: 12px;
}

/* Reduce padding */
@media (max-width: 1350px){

  /* If 5+ reduce padding at 1350 */
  .row-block:has(> .builder-row > .col-wrap:nth-child(n+5)) .col-edit .btn,
  .row-block:has(> .builder-row > .col-wrap:nth-child(n+5)) .widget-edit .btn{
    padding: 6px 8px !important;
  }

}



/* Builder End */


.widget-edit .btn-default {
	background:#22577a;
	color:#fff;
	border:0;
	transition: transform 120ms ease, box-shadow 120ms ease;
}

.widget-edit .btn-default:hover,
.widget-edit .btn-default:focus,
.widget-edit .btn-default:active {
	background:#22577a;
	color:#fff;
	border:0;
}

.widget-edit .btn-default i {
  display: inline-block;
  transition: transform 120ms ease;
}

.widget-edit .btn-default:hover i {
  transform: scale(1.08);
}


h2.widget-type {
	font-size:14px;
	position: absolute;
	top:-45px;
	color:#555;
	font-weight: 400;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);

}


/* Builder hover test */




/* Widget List Modal */


/* Builder tabs */
.builder-tabs .nav-tabs {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 20px;
}

.builder-tabs .nav-tabs > li {
  margin-bottom: 0;
}

.builder-tabs .nav-tabs > li > a {
  color: #6c757d;
  background: transparent;
  border: none;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  padding: 12px 20px;
  font-weight: 500;
  transition: all 0.2s ease;
}

.builder-tabs .nav-tabs > li > a:hover {
  background: transparent;
  color: #495057;
  border-bottom-color: #dee2e6;
}

.builder-tabs .nav-tabs > li.active > a,
.builder-tabs .nav-tabs > li.active > a:hover,
.builder-tabs .nav-tabs > li.active > a:focus {
  color: #000;
  background: transparent;
  border: none;
  border-bottom: 3px solid #ac1f2d;;
}

.builder-tabs .tab-content {
  border:0;
  padding:0;
}

.widget-list-title {
  font-weight: bold;
  color: #444;
  font-size: 13px;
  text-transform: uppercase;
  margin-top: 10px;
}

.widget-list {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start; 
}

.widget-list li {
  flex: 0 0 180px;
  text-align: center;
}

.widget-list li i {
  display: block;
  font-size: 18px;
  color: #ac1f2d;
}



.btn-widget {
	display: block;
  	width: 100%;
	background-color:#f7f7f7;
	border:0;
	color:#000;
	border:1px solid #f1f1f1;
	transition: background 0.2s ease;
	position: relative;
}


.btn-widget:hover {
	background-color:#f1f1f1;
	border:0;
	color:#000;
	border:1px solid #f1f1f1;
}




.new-widget {
  background: #0f75cc;
  color: white;
  padding: 2px 8px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
  top:0;
  right:0;
  position: absolute;
  z-index: 10;
  border-top-right-radius: 3px;
}


.badge-new {
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}


 /* Global builder btn base */
 .pb-btn {
	display: inline-block;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  border: 1px solid transparent;
  padding: 6px 12px 6px 12px;
  font-size: 16px;        
  line-height: 1.5;
  border-radius: 6px;  
  transition: color 0.15s ease-in-out, 
		background-color 0.15s ease-in-out, 
		border-color 0.15s ease-in-out, 
		box-shadow 0.15s ease-in-out;
  }

  #button-widget .button-destination,
  #button-widget .button-custom-url { display: none; }


.product-group-text {
	text-align: center;
}

.product-group-button-wrap {
	text-align: center;
}

.product-group-button {
	margin-bottom:20px;
	text-align: center;
}

.product-group-item {
	background-color:#fff;
	border-radius: 8px;
	border:1px solid #ddd;
	margin-bottom:20px;
	padding:15px;
	text-align: center;
	-moz-box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
-webkit-box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
display: flex;
flex-direction: column;
}

.product-group-item .price {
	 margin-top: auto;
}

.product-group-item-layout {
	padding-left: 15px;
	padding-right: 15px;
}

.product-group-header {
	text-align: center;
	margin-bottom:15px;
	font-weight: 400;
	font-size:28px;
	margin-top:0px;
}

.product-group-label-input {
	display: flex;
	align-items: center;
}

.product-group-label-input > label:last-child {
	display: flex;
	align-items: center;
	font-size: 10pt;
	font-weight: normal;
}

.product-group-label-input input {
	margin: 0 3px 0 10px;
}


/* Spotlight */

.product-spotlight-block {
	background: #ffffff;
}

.product-spotlight-block img {
	height: 150px;
	display: block;
	margin: 0 auto;
}

.product-spotlight-info {
	text-align: center;
}

.product-spotlight-header {
	font-size: 24px;
	text-align: center;
	margin:0px 0px 10px 0px;
}



.product-spotlight-title {
	font-size: 24px;
	text-align: center;
}

.product-spotlight-name {
	font-size: 18px;
}

.product-spotlight-price {
	font-size: 18px;
}

/* Newsletter */

.newsletter-title {
	text-align: center;
	font-size:24px;
	background-color: transparent;
}

.newsletter-title label {
	text-align: left;
}

.pb-newsletter-submit {
	padding:6px 12px 6px 12px;
}

.pb-newsletter-submit:hover {
	background-color: var(--newsletter-btn-hover-bg-color);
	color: var(--newsletter-btn-hover-text-color);
	border-color: var(--newsletter-btn-hover-border-color);
  }



.newsletter-row {
	display: flex;
	gap: 1rem;
  }
  
  .newsletter-col {
	flex: 1; 
  }



#CustomPageBuilder label.drag-drop {
	position: relative;
	display: block;
	font-weight: normal;
}

#CustomPageBuilder label.drag-drop .file-input {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}

#CustomPageBuilder label.drag-drop button {
	position: relative;
}

.input-group-number {
    max-width: 140px;
}

/* Input addon style */
.colorpicker-simple {
    max-width: 250px;
}

.colorpicker-simple .input-group-addon {
    vertical-align: middle;
}

.colorpicker-simple .sp-replacer {
    display: inline-block;
    width: 34px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    border-radius: 4px 0 0 4px;
    overflow: hidden;
    vertical-align: middle;
}

.colorpicker-simple .sp-preview {
    width: 100%;
    height: 100%;
    margin: 0;
    border: none;
}

.colorpicker-simple .sp-dd {
    display: none;
}

/* Square picker */
.colorpicker-square {
    display: inline-block;
}
.colorpicker-square .sp-replacer {
    display: inline-flex;
    align-items: center;
    width: 60px;
    height: 36px;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 4px;
    vertical-align: middle;
}
.colorpicker-square .sp-preview {
    width: 36px;
    height: 100%;
    margin: 0;
    border: none;
    border-radius: 3px 0 0 3px;
}
.colorpicker-square .sp-dd {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 24px;
    height: 100%;
    padding-right: 2px;
}

.colorpicker-square .sp-preview-inner {
	border:1px solid #ddd;
}


.input-group.units {
	width: 100%;
}

.input-group.units > input {
	border-top-right-radius: 4px !important;
	border-bottom-right-radius: 4px !important;
	z-index: 1 !important;
}

.input-group.units > .input-group-addon {
	width: 69px;
	text-align: left;
}

.input-group.units.dropup .caret {
	border-bottom: 0;
	border-top: 4px dashed;
}

.input-group.units > .dropdown-toggle {
	position: absolute;
	right: 0;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
	z-index: 2;
}

.input-group.units a {
	min-width: 90px;
}


.pb-switch {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 18px;
	margin-bottom:0px;
  }
  
  /* Hide default HTML checkbox */
  .pb-switch  input {
	opacity: 0;
	width: 0;
	height: 0;
  }

  .pb-switch .slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
  }
  
  .pb-switch .slider:before {
	position: absolute;
	content: "";
	height: 14px;
	width: 14px;
	left: 2px;
	bottom: 2px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
  }
  

  input:checked + .slider {
	background-color: #ac1f2d;
  }
  
  input:focus + .slider {
	box-shadow: 0 0 1px #ac1f2d;
  }

  input:checked + .slider.disabled {
	background-color: #bd868c;
  }
  
  input:focus + .slider.disabled {
	box-shadow: 0 0 1px #ac1f2d;
  }
  
  input:checked + .slider:before {
	-webkit-transform: translateX(13px);
	-ms-transform: translateX(13px);
	transform: translateX(13px);
  }
  
  /* Rounded sliders */
  .pb-switch .slider.round {
	border-radius: 34px;
  }
  
  .pb-switch .slider.round:before {
	border-radius: 50%;
  } 




/* Column Layout Selections */


ul.col-layout-row {
	list-style-type: none;
	padding:0px;
	width:100%;
	margin-top:30px;
}

ul.col-layout-row li {
	display: inline-block;
	width: 29%;
    margin: 0 1.9% 30px;
}

ul.col-layout-container li:last-child {
	margin-right:0;
}

.col-layout-container .col-layout-block {
	height: 50px;
	background:#22577a;
	margin:0px 2px;
	border-radius: 5px;
	display: block;
}

.col-layout-container:hover .col-layout-block {
	background:#2b6e9b;
}

/* 
.layout-active .col-layout-block {
	background:#4d2543 !important;
}
 */

.col-layout-wrap {
	float:left;
}

.col-layout-1 .col-layout-wrap {
 width:100%;
}

.col-layout-2 .col-layout-wrap {
	width:50%;
}

.col-layout-3 .col-layout-wrap {
	width:33.3333%;
}

.col-layout-4 .col-layout-wrap {
	width:25%;
}

.col-layout-5 .col-layout-wrap {
	width:20%;
}

.col-layout-6 .col-layout-wrap {
	width:16.6667%;
}

.col-layout-3-5 .col-layout-wrap {
	width:16.6667%;
}

.search-input-group {
	position: relative;
	margin-bottom: 10px;
}

.search-input-group i {
	visibility: hidden;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	cursor: pointer;
	opacity: 0.65;
}

.search-input-group.has-text i {
	visibility: visible;
}

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
	position: relative;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
}

.col-xs-5ths {
	width: 20%;
	float: left;
}

@media (min-width: 768px) {
	.col-sm-5ths {
		width: 20%;
		float: left;
	}
}

@media (min-width: 992px) {
	.col-md-5ths {
		width: 20%;
		float: left;
	}
}

@media (min-width: 1200px) {
	.col-lg-5ths {
		width: 20%;
		float: left;
	}
}


.pb-option-row {
	display: flex;
	flex-direction: row;
	gap:2em;
}

.pb-option-row .form-group {
	width:200px;
}

/* Builder background image upload */
.builder-background-current {
	width:100%;
	height:250px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	border:1px solid #ddd;
	background-color:#efefef;
}

.builder-background-current button {
	opacity: 0;
	transition: opacity 0.1s ease-in-out;
}

.builder-background-current:hover button {
	opacity: 1;
}

.builder-background-upload {
	border: 2px dashed #ddd;
  padding: 20px;
  margin-top: 10px;
  margin-bottom: 15px;
  text-align: center;
}




/* Builder Video Block */


#section-video-preview-player {
  display: block;
  margin: 0 auto;
}

#section-upload-video-filename {
  text-align: center;
  font-size: 12px;
  color: #666;
  margin: 5px 0 0 0;
  width: 100%;
}

#section-upload-video-preview {
  position: relative;
  width: 100%;
  border: 1px solid #ddd;
  text-align: center;
  padding: 10px 0;
}


#section-upload-video-preview #RemoveSectionVideoBtn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.1s ease-in-out;
  z-index: 1;
}

#section-upload-video-preview:hover #RemoveSectionVideoBtn {
  opacity: 1;
}

.pb-video-container {
	background-color:#fff;
}

.pb-video-ovarlay {
	position: absolute;
	z-index: 100;
	left: 0;
  top: 0;
  width: 100%;
    height: 100%;
	background-size: cover;
}

.pb-video-play {
	display: none;
	font-size:70px;
	color:#fff;
	position: absolute;
	z-index: 200;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-shadow: -2px 1px 16px rgba(0,0,0,0.69);
}

.pb-video-wrap {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}
.pb-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index: 1;
}

/* Builder Newsletter */
.pb-newsletter-title {
	text-align: center;
}

.pb-newsletter-text {
	text-align: center;
}

.pb-newsletter-submit-container {
	text-align: center;
}


.pb-blog-excerpt {
  padding: 15px 0;
  font-size: 16px;
}



/*  ------- Gallery Widget Shared --------- */

.pb-gallery-item, .gallery-item, .gallery-builder-item {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}
/* overlay grid/slider/admin */
.pb-gallery-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  padding:0.9rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 55, 128, .5);
  color: #fff;
  opacity: 0; /* hidden default */
  transition: opacity .35s ease, background-color .35s ease;
  pointer-events: none; /* click through */
}
/* Show overlay */
.gallery-block .pb-gallery .gallery-item-wrap:hover .pb-gallery-overlay, .pb-gallery .gallery-item-wrap:hover .pb-gallery-overlay, .pb-gallery-slider .pb-gallery-item:hover .pb-gallery-overlay, .gallery-item:hover .pb-gallery-overlay, .gallery-builder-item:hover .pb-gallery-overlay {
  opacity: 1; 
}

/* Grid view */
.gallery-block .pb-gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Column overrides */
.gallery-block .pb-gallery.lg-cols-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-block .pb-gallery.lg-cols-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-block .pb-gallery.lg-cols-5 { grid-template-columns: repeat(5, 1fr); }
.gallery-block .pb-gallery.lg-cols-6 { grid-template-columns: repeat(6, 1fr); }


@media (max-width: 1199.98px) {
    .gallery-block .pb-gallery.lg-cols-3 { grid-template-columns: repeat(2, 1fr); }
    .gallery-block .pb-gallery.lg-cols-4 { grid-template-columns: repeat(3, 1fr); }
    .gallery-block .pb-gallery.lg-cols-5 { grid-template-columns: repeat(3, 1fr); }
    .gallery-block .pb-gallery.lg-cols-6 { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 767.98px) {
    .gallery-block .pb-gallery.lg-cols-3,
	.gallery-block .pb-gallery.lg-cols-4,
	.gallery-block .pb-gallery.lg-cols-5,
	.gallery-block .pb-gallery.lg-cols-6 { 
		grid-template-columns: repeat(2, 1fr);
	}
}

.gallery-block .pb-gallery > .gallery-item-wrap {
    aspect-ratio: 4 / 3;
    position: relative;
    cursor: pointer;
    overflow: hidden;
    box-sizing: border-box;
}

.gallery-block .gallery-item {
    width: 100%;
    height: 100%;
    display: block;
}

.gallery-block .pb-gallery-item {
    aspect-ratio: 4 / 3;
}

.gallery-block .pb-gallery .gallery-item-wrap img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .4s ease;
}

/* Image zoom grid */
.gallery-block .pb-gallery .gallery-item-wrap:hover img {
    transform: scale(1.1) translate(1%, -1%);
}

/* Grid breakpoints */
@media (max-width: 1199.98px) {
    .gallery-block .pb-gallery { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767.98px) {
    .gallery-block .pb-gallery { grid-template-columns: repeat(2, 1fr); }
}

.gallery-block .gallery-title {
  z-index: 100;
  font-size: 18px;
}
/* Hide types not used */
.gallery-block .gallery-modal-item, .gallery-block .add-gallery-item {
  display: none !important;
}
/* Carousel View */

.glider {
  -ms-overflow-style: none;
  scrollbar-width: none;
  list-style: none;
  padding: 0;
  overflow: hidden;
}
.glider::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.glider-container {
  position: relative;
  padding: 0 56px;
  box-sizing: border-box;
  max-width: 100%;
  overflow: hidden;
}
.glider-container .glider {
  min-width: 0;
}
.glider-container .glider-track {
  display: flex;
  gap: 10px;
}
/* Arrows */
.glider-container .glider-prev, .glider-container .glider-next {
  background: transparent;
  border: 0;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  cursor: pointer;
  transition: box-shadow .15s ease, transform .08s ease;
  z-index: 2;
}
.glider-container .glider-prev {
  left: 8px;
}
.glider-container .glider-next {
  right: 8px;
}
.glider-container .glider-prev.disabled, .glider-container .glider-next.disabled {
  opacity: .35;
}
@media (max-width: 768px) {
  .glider-container {
    padding: 0 48px;
  }
}
/* Dots */
.glider-dots {
	--glider-dot-active-bg: #000;
	--glider-dot-bg: #ddd;
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 14px;
}
.glider-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--glider-dot-bg) !important;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, .06);
}
.glider-dot.active {
  background: var(--glider-dot-active-bg) !important;
}
/* Carousel slides & images */
.pb-gallery-slider .pb-gallery-item img, .pb-gallery-slider .pb-gallery-item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  background: #fff;
}

.product-group-item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  background: #fff;
}




/* Admin view */

/* Select2 icon grid */
.select2-icon-grid .select2-results__options {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); 
  gap: 8px;
  padding: 10px;
}

.select2-icon-grid .select2-results__option {
  padding: 12px;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s;
}

.select2-icon-grid .select2-results__option i {
  display: block;
  margin: 0 auto 8px;
  font-size: 24px;
  color: #333;
}

.select2-icon-grid .select2-results__option .icon-label {
  display: block;
  font-size: 12px;
  color: #666;
}

.select2-icon-grid .select2-results__option:hover {
  color: #ac1f2d;
}

.select2-icon-grid .select2-results__option--highlighted {
  border-color: #bbb;
  color: #ac1f2d;
}

.select2-icon-grid .select2-results__option--highlighted i,
.select2-icon-grid .select2-results__option--highlighted .icon-label {
  color: #ac1f2d;
}

/* Select2 styles like BS */
.select2-container--default .select2-selection--single {
  height: 34px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background-color: #fff;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #555;
  line-height: 32px;
  padding-left: 12px;
  padding-right: 12px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 32px;
  right: 6px;
}

.select2-container--default.select2-container--focus .select2-selection--single {
  border-color: #66afe9;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.select2-dropdown {
  border: 1px solid #ccc;
  border-radius: 4px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #fff;
  color: #333 !important;
}

.select2-container .select2-selection--single {
	height: 35px !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding-top: 2px !important;
}

/* Icon widget select2 */
#icon-widget .select2-icon-grid .select2-results__options {
  max-height: 300px;
}


#gallery-widget .pb-gallery {
  list-style: none;
  padding: 0 15px;
}
#gallery-widget .pb-gallery .gallery-item-wrap, #gallery-widget .add-gallery-item {
  float: left;
  width: 20%;
  height: 100px;
  padding-right: 10px;
}
#gallery-widget .pb-gallery .gallery-item-wrap img {
  transition: transform .4s ease;
}
#gallery-widget .gallery-item {
  position: relative;
  margin-bottom: 15px;
  border: 1px solid #ddd;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 93px;
  background-size: cover;
  background-position: center;
}
#gallery-widget .gallery-item:hover {
  cursor: move;
}
/* admin overlay */
#gallery-widget .pb-overlay {
  background: linear-gradient(200deg, rgba(2, 0, 36, .87) 0%, rgba(0, 212, 255, 0) 100%);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity .2s ease;
}
#gallery-widget .gallery-item:hover .pb-overlay {
  opacity: 1;
}
#gallery-widget .gallery-builder-item {
  display: none !important;
}
.gallery-settings {
  color: #fff;
  filter: drop-shadow(0 0 2px #000);
}
#gallery-widget .carousel-only {
  display: none;
}
.gallery-delete {
  color: #fff;
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 14px;
}
.gallery-settings:hover, .gallery-sort:hover, .gallery-delete:hover {
  color: #fff;
}
.gallery-item .gallery-add-btn {
  font-size: 30px;
}
.gallery-item input, .gallery-item textarea {
  margin-bottom: 3px;
}
#gallery-images .panel-body {
  height: 350px;
  overflow-y: auto;
}

.tox .tox-collection__group {
  max-height: 500px;
  overflow-y: auto;
}


/* Icon Widget */

.icon-container .pb-icon-single,
.icon-container .pb-icon-stacked { 
	display: none;
}

.icon-container.icon-layout-single .pb-icon-single { 
	display: inline-block;
}
.icon-container.icon-layout-stacked .pb-icon-stacked {
	display: inline-block;
}


.icon-container {
	text-align: center;
}

.pb-icon {
	font-size: 100px;
	color: #111111;
}


/* theme color picker v2 */

.theme-color-item {
  display:flex;
  align-items:center;
  gap:8px
}

.theme-color-item .control-label {
  width:160px;
  flex-shrink: 0;
  margin-bottom: 0;
}

.theme-color-picker {
  display:flex;
  align-items:center;
  gap:8px
}

.switch-label{
  font-size:12px;
  color:#888;
  width:44px
}

/* checked state pm pb-switch */

.use-default-toggle:checked ~ .slider:before {
  transform: translateX(12px);
}

/* ----------------------
    Social Icon widget
------------------------- */
.pb-socialicons {
  display: flex;
  flex-wrap: wrap;
}

.social-icon-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity .15s ease, transform .15s ease;
}
.social-icon-item:hover {
  opacity: .85;
}

.shape-square .social-icon-item {
  border-radius: 4px;
}
.shape-rounded .social-icon-item {
  border-radius: 30%;
}
.shape-circle .social-icon-item {
  border-radius: 50%;
}

.shape-outline .social-icon-item {
  border: 1.5px solid currentColor;
  border-radius: 50%;
}
.shape-flat .social-icon-item {
  border: none;
}

.social-style-picker {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.social-style-option input {
  display: none;
}
.social-style-swatch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  cursor: pointer;
  font-size: 16px;
  border: 2px solid transparent;
  border-radius: 4px;
}
.social-style-option input:checked + .social-style-swatch {
  border-color: #ddd;
}
.swatch-square {
  background: #1877F2;
  color: #fff;
  border-radius: 4px;
}
.swatch-rounded {
  background: #1877F2;
  color: #fff;
  border-radius: 30%;
}
.swatch-circle {
  background: #1877F2;
  color: #fff;
  border-radius: 50%;
}

.swatch-outline {
  background: transparent;
  color: #1877F2;
  border: 1.5px solid #1877F2;
  border-radius: 50%;
}
.swatch-flat {
  background: transparent;
  color: #111111;
}

/* -----
	Featured Links 
---------- */

.link-block .pb-link {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	list-style: none;
  }

  .link-block .link-item {
	position: relative;
	height:250px;
	overflow: hidden;
  }

  .link-block .link-item img {
	object-fit: cover;
	width:100%;
	height: 100%;
	vertical-align: middle;
	transition: all 0.4s ease;
  }
  
  .link-block .pb-link > li {
	flex-basis: 350px; 
	position: relative;
	cursor: pointer;
	overflow: hidden;
  }


  .link-block .link-title {
	z-index: 100;
  }


   .link-block .pb-link-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	top: 0;
	left: 0;
	color: #fff;
	background-color: rgba(0, 55, 128, 0.5);
	/* center overlay text */
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-transition: background-color .5s ease-out;
	-moz-transition: background-color .5s ease-out;
	-o-transition: background-color .5s ease-out;
	transition: background-color .5s ease-out;
	transition: opacity 0.5s ease;
  }

  /* Image overlay on hover */
  .link-block .pb-link li:hover .pb-link-overlay {
	opacity: 100;
  }

    /* Image zoom on hover */
	.link-block .pb-link li:hover img
	{
	  -webkit-transform: scale(1.1) translate(1%, -1%);
	  transform: scale(1.1) translate(1%, -1%);
	}

  /* ----- link items in modal ------ */

  
/* Hide show link item type */
.link-block .link-modal-item,
.link-block .add-link-item {
display: none !important;
}

#link-widget .link-builder-item {
display: none !important;
}


#enhance-text-user-prompt {
	resize: vertical;
}

/* Grid layouts */

.featured-grid {
	display: flex;
	gap: 1rem;
	height: 600px;
	margin-bottom:50px;
	align-items: stretch;
	flex-wrap: nowrap;
  }
  
  .featured-large,
  .featured-small-grid {
	height: 100%;
  }
  
  .featured-large {
	flex: 1;
  }
  
  .featured-large a,
  .featured-small-grid a {
	display: block;
	height: 100%;
	position: relative;
	overflow: hidden;
  }
  
  .featured-grid img {
	width: 100%;
	height: 100%;
	object-fit: cover;
  }
  
  /* grid count layouts */
  
  .featured-grid-count-1 {
	display: block;
  }
  .featured-grid-count-1 .featured-large {
	height: auto;
  }
  .featured-grid-count-1 .featured-large a {
	height: auto;
  }
  .featured-grid-count-1 .featured-large img {
	height: auto;
  }
  
  .featured-grid-count-2 .featured-large {
	flex: 2;
  }
  .featured-grid-count-2 .featured-small-grid {
	flex: 1;
  }
  
  .featured-grid-count-3 .featured-large {
	flex: 1;
  }
  .featured-grid-count-3 .featured-small-grid {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 1rem;
  }
  .featured-grid-count-3 .featured-small-grid a {
	flex: 1;
	height: 100%;
  }
  
  .featured-grid-count-4 .featured-small-grid {
	flex: 1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 1rem;
	height: 100%;
  }
  .featured-grid-count-4 .featured-small-grid a:nth-child(1) {
	grid-column: span 2;
	height: 100%;
  }
  .featured-grid-count-4 .featured-small-grid a:nth-child(2),
  .featured-grid-count-4 .featured-small-grid a:nth-child(3) {
	height: 100%;
  }
  
  .featured-grid-count-5 .featured-small-grid {
	flex: 1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 1rem;
	height: 100%;
  }
  .featured-grid-count-5 .featured-small-grid a {
	height: 100%;
  }
  
  /* --- hover and zoom -- */
  .featured-grid a,
  .featured-grid-col a,
  .featured-grid-nogap a {
	position: relative;
	display: block;
	overflow: hidden;
  }
  
  .featured-grid img,
  .featured-grid-col img,
  .featured-grid-nogap img {
	transition: transform 0.4s ease;
	will-change: transform;
  }
  
  .featured-grid a:hover img,
  .featured-grid-col a:hover img,
  .featured-grid-nogap a:hover img {
	transform: scale(1.05);
  }
  
  .featured-grid .link-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.3);
	transition: opacity 0.3s ease;
  }

  
  .featured-grid a:hover .link-overlay {
	opacity: 1;
  }
  
  /* --- global title styles */
  .pb-featured-title {
	position: absolute;
	color: #ffffff;
	background-color: rgba(0, 0, 0, 0.5);
	padding: 10px 15px;
	font-size: 20px;
	margin: 0;
	z-index: 10;
	transition: color 0.3s ease, background-color 0.3s ease;
  }


  .featured-grid a:hover .pb-featured-title {
	color: var(--link-hover-text-color, #ffffff) !important;
	background-color: var(--link-hover-bg-color, rgba(0, 0, 0, 0.5)) !important;
  }

  .pb-link-title { 
	color: #fff;
	padding: 10px 15px;
	font-size: 20px;
	background-color: rgba(0, 0, 0, 0.5);
	transition: color 0.3s ease, background-color 0.3s ease;
  }

  .pb-link-title:hover { 
	color: var(--link-hover-text-color, #ffffff) !important;
	background-color: var(--link-hover-bg-color, rgba(0, 0, 0, 0.5)) !important;
  }


  



  
  .pb-featured-title.position-top {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	bottom: auto;     
	width: 100%;
  }
  
  .pb-featured-title.position-bottom {
	bottom: 0;
	left: 0;
	width: 100%;
  }
  
  .pb-featured-title.position-middle {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	bottom: auto;
	width: 100%;
  }


  /* --- col layout -- */
  .featured-grid-col {
	display: flex;
	flex-wrap: wrap;
	height: auto;
	gap: 1rem;
  }

  .featured-grid-col img {
	width: 100%;
	height: 100%;
	object-fit: cover;
  }
  
  .featured-grid-col > * {
	flex: 0 0 calc(33.333% - 1rem);
	box-sizing: border-box;
  } 

  .featured-grid-col a::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: var(--link-overlay-bg-color, rgba(0, 0, 0, 0.3));
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
	pointer-events: none;
  }

  .featured-grid-col a:hover::before {
	opacity: 1;
  }
  


  .pb-link-caption {
	padding-top:0px;
	padding-bottom:0px;
	padding-left:15px;
	padding-right:15px;
  }



  .featured-grid-col .pb-featured-title {
	position: static;
	display: block;
	margin: 15px 0px 15px 0px;
  }

/* stop global hover effects for col view */
.featured-grid-col h3 a {
  position: static !important;
  overflow: visible !important;
}

.featured-grid-col h3 a::before {
  display: none !important;
  content: none !important;
}

.featured-grid-col h3 a img{
  transform: none !important;
}

  
  /* --- no gap lifestyle --- */
  .featured-grid-nogap {
	display: flex;
	flex-wrap: wrap;
	height: auto !important;
	gap: 0;
  }
  
  .featured-grid-nogap > * {
	flex: 1 0 25%;
	box-sizing: border-box;
  }
  
  .featured-grid-nogap img,
  .featured-grid-nogap a {
	margin: 0;
	padding: 0;
	border: none;
  }
  

  @media (max-width: 1024px) {
	.featured-grid-col > * {
	  flex: 1 1 calc(33.333% - 1rem);
	}
  
	.featured-grid-nogap > * {
	  flex: 1 0 33.333%;
	}
  }
  
  @media (max-width: 768px) {
	.featured-grid {
	  flex-direction: column;
	  height: auto;
	}
  
	.featured-large,
	.featured-small-grid {
	  width: 100%;
	  height: auto;
	}
  
	.featured-small-grid {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 1rem;
	}
  
	.featured-grid-count-1 .featured-large img {
	  width: 100%;
	  height: auto;
	  aspect-ratio: 2 / 1;
	}
  
	.featured-small-grid a,
	.featured-large a {
	  aspect-ratio: 1 / 1;
	  height: auto;
	}
  
	/* Count 2 */
	.featured-grid-count-2 {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 1rem;
	  height: auto;
	}
	.featured-grid-count-2 .featured-large,
	.featured-grid-count-2 .featured-small-grid {
	  all: unset;
	  display: block;
	  width: 100%;
	  height: auto;
	}
	.featured-grid-count-2 .featured-large a,
	.featured-grid-count-2 .featured-small-grid a {
	  display: block;
	  aspect-ratio: 1 / 1;
	}
	.featured-grid-count-2 .featured-large img,
	.featured-grid-count-2 .featured-small-grid img {
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	}
  
	/* Count 3 */
	.featured-grid-count-3 {
	  flex-direction: column;
	  height: auto;
	}
	.featured-grid-count-3 .featured-large {
	  width: 100%;
	}
	.featured-grid-count-3 .featured-large a {
	  aspect-ratio: 2 / 1;
	}
	.featured-grid-count-3 .featured-small-grid { 
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 1rem;
	  width: 100%;
	}
	.featured-grid-count-3 .featured-small-grid a {
	  aspect-ratio: 1 / 1;
	}
  
	/* Count 4 */
	.featured-grid-count-4 .featured-small-grid {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-auto-rows: auto;
	  gap: 1rem;
	}
	.featured-grid-count-4 .featured-small-grid a:nth-child(1) {
	  grid-column: span 2;
	  aspect-ratio: 2 / 1;
	}
	.featured-grid-count-4 .featured-small-grid a:nth-child(2),
	.featured-grid-count-4 .featured-small-grid a:nth-child(3) {
	  grid-column: span 1;
	  aspect-ratio: 1 / 1;
	}
  
	/* Classic */
	.featured-grid-col > * {
	  flex: 1 1 calc(50% - 1rem);
	}
  
	.featured-grid-nogap > * {
	  flex: 1 0 50%;
	}
  }
  
  @media (max-width: 480px) {
	.featured-grid-col > * {
	  flex: 1 1 100%;
	}
  
	.featured-grid-nogap > * {
	  flex: 1 0 100%;
	}
  }

  .grid-item {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
  }
  
  .grid-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
  }



      .grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(2, 1fr);
        grid-gap: 1rem;
      }
      .grid-item:nth-child(1) {
        grid-column: 1 / 3;
        grid-row: 1 / 3;
      }
      .grid-5 .grid-item:nth-child(2) {
        grid-column: 3 / 4;
        grid-row: 1 / 2;
      }
      .grid-5 .grid-item:nth-child(3) {
        grid-column: 4 / 5;
        grid-row: 1 / 2;
      }
      .grid-5 .grid-item:nth-child(4) {
        grid-column: 3 / 4;
        grid-row: 2 / 3;
      }
      .grid-5 .grid-item:nth-child(5) {
        grid-column: 4 / 5;
        grid-row: 2 / 3;
      }
 

/* Flipbook Widget */
  .flipbook-container {
	position: relative;
	overflow: hidden;
  }

  .flipbook-wrap {
	display: inline-block;
	max-width: 100%;
}

.flipbook-wrap .flipbook-image {
	display: inline-block;
}

  .flipbook-title {
	color:#fff;
	background-color: #1F2937;
	padding:10px;
	display: none;
	text-align: left;
  } 

  .flipbook-title p {
	margin:0px;
	padding:0px;
  }

/* Quicksearch Widget */
.pb-quicksearch {
  display: flex;
  width: 100%;
}

.pb-quicksearch input {
  flex: 1;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-right: none;
  border-radius: 6px 0 0 6px;
  outline: none;
}

.pb-quicksearch input:focus {
  border-color: #86b7fe;
}

.pb-quicksearch-btn {
  padding-left:16px;
  padding-right:16px;
  border: 1px solid #1F2937;
  background: #1F2937;
  color: white;
  border-radius: 0 6px 6px 0;
  cursor: pointer;
  transition: all 0.15s ease;
}

  .pb-quicksearch-btn:hover {
  color: var(--quicksearch-btn-hover-text-color) !important;
  background-color: var(--quicksearch-btn-hover-bg-color) !important;
  border-color: var(--quicksearch-btn-hover-border-color) !important;
  }

  /* Force connected look */
.pb-quicksearch-input {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.pb-quicksearch-btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}


/* Idea Wizard Widget */

.pb-ideawizard {
  position: relative;
  width: 100%;
}

.pb-ideawizard-input {
  width: 100%;
  min-height: 120px;
  padding: 12px 16px;
  padding-bottom: 50px; /* Space for floating button */
  border: 1px solid #ccc;
  border-radius: 8px;
  outline: none;
  font-family: inherit;
  font-size: 14px;
  resize: vertical;
  box-sizing: border-box;
}

.pb-ideawizard-input:focus {
  border-color: #86b7fe;
  box-shadow: 0 0 0 3px rgba(134, 183, 254, 0.1);
}

.pb-ideawizard-btn {
  position: absolute;
  bottom: 10px;
  right: 10px;
  min-width: 40px;
  min-height: 40px;
  padding: 10px 16px;
  border: 1px solid #1F2937;
  background: #1F2937;
  color: white;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-weight: 500;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.pb-ideawizard-btn:hover {
  color: var(--ideawizard-btn-hover-text-color) !important;
  background-color: var(--ideawizard-btn-hover-bg-color) !important;
  border-color: var(--ideawizard-btn-hover-border-color) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.pb-ideawizard-btn:active {
  transform: translateY(0);
}

.pb-ideawizard-btn.icon-before i {
  margin-right: 0.5em;
}

.pb-ideawizard-btn.icon-after i {
  margin-left: 0.5em;
}

.pb-ideawizard-btn.icon-only {
  padding: 10px;
  width: 40px;
  height: 40px;
  font-size: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pb-ideawizard-btn.icon-only i {
  font-size: 16px;
}

.pb-ideawizard-btn.icon-only {
  font-size: 0;
}


/* Countdown Widget Styles */

.pb-countdown-complete {
  display: block;
  width: 100%;
  text-align: center;
  margin: 20px 0;
  padding:20px;
}


.countdown-container {
  display: block;
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
}

.pb-countdown {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--unit-spacing, 20px);
  flex-wrap: nowrap;
  max-width: 100%;
}

/* Standard */
.pb-countdown.style-standard .pb-countdown-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.pb-countdown.style-standard .pb-countdown-number {
  font-size: clamp(18px, 8vw, var(--number-font-size, 48px));
  font-weight: var(--number-font-weight, bold);
  color: var(--number-color, #1F2937);
  background-color: var(--number-bg-color, transparent);
  line-height: 1.2;
  padding: 0.2em 0.3em;
  border-radius: 4px;
  width: 2em;
  text-align: center;
  display: inline-block;
  transition: all 0.3s ease;
}

.pb-countdown.style-standard .pb-countdown-label {
  font-size: clamp(10px, 2vw, var(--label-font-size, 14px));
  color: var(--label-color, #6B7280);
  margin-top: 0.5em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 500;
}

/* Animation for seconds */
@keyframes pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

.pb-countdown.style-standard .pb-countdown-number.updating {
  animation: pulse 0.3s ease;
}

/* Seconds  */
.pb-countdown.style-standard .pb-countdown-unit:last-child .pb-countdown-number {
  color: var(--seconds-color, var(--number-color, #1F2937));
  background-color: var(--seconds-bg-color, var(--number-bg-color, transparent));
}

.pb-countdown.style-circle .pb-countdown-unit:last-child .pb-countdown-number {
  color: var(--seconds-color, var(--number-color, #1F2937));
}


/* Separators */
.pb-countdown.show-separators.style-standard .pb-countdown-unit:not(:last-child) .pb-countdown-number {
  position: relative;
}
.pb-countdown.show-separators.style-standard .pb-countdown-unit:not(:last-child) .pb-countdown-number::after {
  content: ':';
  color: var(--separator-color, var(--number-color, #fff));
  font-size: calc(clamp(18px, 8vw, var(--number-font-size, 48px)) * 0.8);
  font-weight: var(--number-font-weight, bold);
  position: absolute;
  left: calc(100% + calc(var(--unit-spacing, 20px) / 2));
  top: 50%;
  transform: translate(-50%, -50%);
}

/* Circle */
.pb-countdown.style-circle .pb-countdown-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-size: clamp(16px, 3.5vw, var(--number-font-size, 36px));
  flex-shrink: 1;
  min-width: 0;
}

.pb-countdown.style-circle .pb-countdown-circle {
  position: relative;
  width: 3.5em;
  height: 3.5em;
}

.pb-countdown.style-circle svg {
  transform: rotate(-90deg);
  width: 100%;
  height: 100%;
}

.pb-countdown.style-circle .pb-countdown-bg {
  fill: none;
  stroke: var(--circle-bg-color, #E5E7EB);
  stroke-width: 8;
}

.pb-countdown.style-circle .pb-countdown-progress {
  fill: none;
  stroke: var(--circle-color, #3B82F6);
  stroke-width: 8;
  stroke-linecap: round;
  transition: stroke-dashoffset 0.5s ease;
}

.pb-countdown.style-circle .pb-countdown-number {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1em;
  font-weight: var(--number-font-weight, bold);
  color: var(--number-color, #1F2937);
  line-height: 1;
  background-color: transparent;
  padding: 0;
  border-radius: 0;
}

.pb-countdown.style-circle .pb-countdown-label {
  font-size: clamp(10px, 2vw, var(--label-font-size, 14px));
  color: var(--label-color, #6B7280);
  margin-top: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 500;
}

/* .pb-countdown .pb-countdown-complete {
  font-size: clamp(18px, 8vw, var(--number-font-size, 48px));
  font-weight: var(--number-font-weight, bold);
  color: var(--number-color, #1F2937);
  text-align: center;
} */

  /* -------
  Image Widget
  */



  .image-container {
	position: relative;
	overflow: hidden;
  }

  .image-wrap {
	display: inline-block;
	max-width: 100%;
}

.image-wrap .pb-image {
	display: inline-block;
}

  .image-title {
	color:#fff;
	background-color: #1F2937;
	padding:10px;
	display: none;
  } 

  .image-title p {
	margin:0px;
	padding:0px;
  }


  #image-widget #image-destination,
  #image-widget #image-custom-url { display: none; }

	/* Form Widget */

	.pb-form {
		padding:30px;
		background-color:#fff;
	}
	
	#form-email-settings {
		margin-left:20px;
	}

	.panel-group .panel.form-modal-item,
	.panel-group .panel.builder-modal-item,
	.panel-group .panel.contentslider-modal-item {
		position: relative;
		margin-bottom:5px;
	}

	.form-modal-item .panel-heading,
	.builder-modal-item .panel-heading,
	.contentslider-modal-item .panel-heading {
		background:#fff;
		color:#000;
		position: relative;
		/* cursor: move; */
	}

	.form-modal-item .panel-heading a,
	.builder-modal-item .panel-heading a,
	.contentslider-modal-item .panel-heading a {		
		color:#acabab;
	}

	.form-modal-item h4,
	.builder-modal-item h4,
	.contentslider-modal-item h4 {
		color:#000;
		margin:0px 0px 0px 20px;
	}

	.contentslider-modal-item h4 {
		min-height: 19.8px;
	}

	.panel-btn-right {
		position: absolute;
		right:10px;
		z-index:5;
		top:8px;
	}

	.panel-btn-right:hover {
		color:#ac1f2d !important;
	}

	.panel-btn-left {
		position: absolute;
		left:10px;
		z-index:5;
		top:8px;
	}

	.panel-btn-move:hover {
  		cursor: grab;
	}

	.panel-btn-move:active {
	cursor: grabbing;
	}

	.item-expand,
	.item-expand:focus {
		text-decoration: none;
	}


	/* Hide show gallery item type */
	#form-widget .form-field {
		display: none !important;
	}
	.form-block .form-modal-item {
		display: none !important;
	}

	#form-widget .panel:not(:first-child) {
		margin-top: 5px;
	}

	.form-block .form-field {
		display: none;
	}

	.form-checkbox .form-group-inline,
	.form-radio .form-group-inline {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.form-checkbox .form-group-inline .checkbox,
	.form-radio .form-group-inline .radio {
		margin: 10px 0 !important;
	}



/* Blog List */


.pb-blog-item {
	display: flex;
	gap: 30px;
	margin-bottom: 30px;
}

.pb-blog-img-wrap {
	flex: 0 0 auto;
}

.pb-blog-content {
	flex: 1;
}

.pb-blog-img {
	max-width: 200px;
	height: auto;
}

.pb-blog-button:hover {
	background-color: var(--blog-btn-hover-bg-color);
	color: var(--blog-btn-hover-text-color);
	border-color: var(--blog-btn-hover-border-color);
  }

/* Grid layout when .blog-cols is active */
.blog-cols {
	display: flex;
	flex-wrap: wrap; 
	gap: 1rem;
}

.blog-cols .pb-blog-item {
	flex: 1 1 calc(25% - 1rem); /* minus gap padding from blog-cols */
	padding: 1rem;
	box-sizing: border-box;
	flex-direction: column;
	/* Override stacked layout */
	display: block;
	gap: 0;
}


.blog-cols .pb-blog-item .pb-blog-title {
	margin-top:15px;
	margin-bottom:15px;
}

@media (max-width: 991px) {
  .blog-block-list:not(.blog-cols) .pb-blog-img {
    max-width: 55px;
    max-height: 55px;
  }

}


/* Tablet */
@media (max-width: 768px) {
	.blog-cols .pb-blog-item {
		flex: 1 1 calc(50% - 1rem);
	}

	.blog-block-list:not(.blog-cols) .pb-blog-img {
    max-width: 100px;
    max-height: 100px;
  }
 
}

/* Mobile */
@media (max-width: 480px) {
	.blog-cols .pb-blog-item {
		flex: 1 1 100%;
	}

	.pb-blog-item {
	flex-direction: column;
	}

	.pb-blog-img-wrap {
		display: flex;
		justify-content: center;
	}

	.blog-block-list:not(.blog-cols) .pb-blog-img {
    max-width: 200px;
    max-height: 200px;
  	}
}

.blog-cols .pb-blog-img {
  width: auto;
  max-width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 20px;
}

/* --------- Blog List -------------- */

.pb-blog-title {
	margin-top: 0;
}
	
.pb-blog-item {
	display: flex;
	gap: 20px;
	margin-bottom:30px;
}


.blog-pagination {
display: inline-flex;
justify-content: center;
width:100%;
}





/* ----------------------
		Testimonials Widget
------------------------- */

.pb-testimonial-quote::before {
	content: "\f10d";
	font-family: "Font Awesome 6 Pro";
	font-weight: 600;
	float: left;
  padding-right: 10px;
  font-size: inherit;
  /*color:<#ColorVal Fld="WELinkTextClr" Def="WEMainClr2" MainDef="#1893d1">*/
}

.pb-testimonial-item .author {
	font-style: italic;
}
.pb-testimonial-item .author::before {
	content: "- ";
}
.pb-testimonial-item .company {
	color: #969696;
}
.pb-testimonial-item .date {
	color: #969696;
	font-size: 12px;
}
.pb-testimonial-item .email {
	font-size: 12px;
}


.pb-testimonial-item {
	display: flex;
	gap: 30px;
	margin-bottom: 15px;
	flex-direction: column;
}

.pb-testimonial-item a,
.pb-testimonial-item a:hover  {
	color: #212529;
}

.pb-testimonial-img-wrap {
	display: flex;
  align-items: center;
  justify-content: center;
}


/* Mobile */
.testimonial-cols {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
  }
  
  .testimonial-cols .pb-testimonial-item {
	flex: 1 1 100%;
	padding: 1rem;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 0;
  }
  
  .testimonial-cols .pb-testimonial-img {
	width: auto;
	height: auto;
	margin-bottom: 20px;
  }
  
  .pb-testimonial-img-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 1 auto; /* shrinks on mobile */
  }
  
  .pb-testimonial-content {
	flex: 1 1 auto;
  }
  
  /* Tablet 2 columns */
  @media (min-width: 481px) {
	.testimonial-cols .pb-testimonial-item {
	  flex: 1 1 calc(50% - 1rem);
	}
  
	.pb-testimonial-item {
	  flex-direction: row;
	  gap: 30px;
	}
  }
  
  /* Desktop 4 columns */
  @media (min-width: 992px) {
	.testimonial-cols .pb-testimonial-item {
	  flex: 1 1 calc(25% - 1rem);
	}
  
	.pb-testimonial-img-wrap {
	  flex: 0 0 auto; /* fixed size image */
	}
  
	.pb-testimonial-content {
	  flex: 1 1 auto;
	}
  }
  





/* Content Slider */




.pb-slider-item-title {
  font-size: 3.75rem; 
  color: rgb(255, 255, 255);
  background-color: rgba(0, 0, 0, 0);
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
}


@media (max-width: 767.98px) { 
  .pb-slider-item-title{
    font-size: 2.5rem;
  }
}



.pb-slider-item-caption {
	padding:10px;
	font-size:18px;
	color:#ffffff;
	background-color: transparent;
}

.pb-slider-item-btn {
	display: inline-block;
	background-color: #305CDE;
	color:#fff;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  border: 1px solid transparent;
  padding: 6px 12px 6px 12px;
  font-size: 16px;        
  line-height: 1.5;
  border-radius: 6px;  
  transition: color 0.15s ease-in-out, 
		background-color 0.15s ease-in-out, 
		border-color 0.15s ease-in-out, 
		box-shadow 0.15s ease-in-out;
  }


.pb-slider-item-btn:hover {
	background-color: var(--slider-btn-hover-bg-color, #305CDE);
	color: var(--slider-btn-hover-text-color, #ffffff);
	border-color: var(--slider-btn-hover-border-color, #305CDE);
  }

.carousel-caption {
	top: 50%;
	transform: translateY(-50%);
	bottom: initial;
}

.carousel-caption h2 {
    font-size: 60px;
    color: #fff;
	background-color: transparent;
  }

	#content-slider-widget .pb-slider-item,
	#content-slider-widget .pb-banner-item {
		display: none;
	}

	.widget-block .contentslider-modal-item {
		display: none;
	}

.pb-slider-item-btn:empty {
	display: none !important;
}

.pb-banner-item img {
	width: 100%;
}


/* Content slider title */
h2.carousel-header {
  font-size: 3.75rem; 
}


@media (max-width: 991.98px) {
  h2.carousel-header {
	/* md */
    font-size: 2.5rem !important;
  }
}

@media (max-width: 767.98px) { 
  h2.carousel-header{
	/* sm */
    font-size: 1.5rem !important;
  }
}




 
/* Accodiain */

.pb-accordion-toggle:after { 
    font-family: 'Font Awesome 6 Pro';
    content: "\f078";   
    float: right;   
    color: inherit;
}
.pb-accordion-toggle.collapsed:after {
    content: "\f054";
}

/* #accordion-widget .pb-accordion-panel
.accordion-block .accordion-modal-item {
	display: none !important;
} */

#accordion-widget .pb-accordion-panel,
.accordion-block .builder-modal-item {
	position: relative;
	display: none !important;
}

#accordion-block .accordion-item .panel-heading {
	color:#000;
	background-color:#ffffff;
	padding:10px 15px;
}


/* --- Code Widget --- */

.pb-code {
	border:1px solid #ddd;
	text-align: center;
	padding:30px;
}

#code-container {
  height: 300px;
}

.CodeMirror {
  height: 100% !important;
  width: 100%;
  box-sizing: border-box;
  font-family: monospace;
  font-size: 14px;
  border: 1px solid #ccc;
}



  /* Global Overlay */

.widget-icon {
	font-size:42px;
	color:#8c8c8c;
}




  .pb-overlay .icon,
  .gallery-sort,
  .gallery-delete {
	opacity: 0;
	transition:opacity .1s;
  }

  .pb-overlay:hover .icon,
  .pb-overlay:hover .gallery-sort,
  .pb-overlay:hover .gallery-delete {
	opacity: 100;
  }



  .pb-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(57, 57, 57, 0);
	top: 0;
	left: 0;
	color: #fff;
	font-size: 24px;
	/* center overlay text */
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-transition: background-color .1s ease-out;
	-moz-transition: background-color .1s ease-out;
	-o-transition: background-color .1s ease-out;
	transition: background-color .1s ease-out;
  }


  .modal-stack {
	margin-top:20px;
  }

  /* ------- Global Modal Grid Styles - Gallery, Links ---- */

  
.grid-modal-container {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	}
	
	.grid-modal-item {
	position: relative;
	flex: 0 0 calc(25% - 0.75em);
	box-sizing: border-box;
	height: 100px;
	border: 1px solid #ddd;
	display: flex;
	align-items: center;
	justify-content: center;
	background-size: cover;
	background-position: center;
	overflow: hidden; 
	}
	
	.grid-modal-item::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(200deg, rgba(2,0,36,0.87) 0%, rgba(0,212,255,0) 100%);
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
	pointer-events: none; /* pass clicks through overlay */
	}
	
	.grid-modal-item:hover::before {
	opacity: 1;
	}
	
	.grid-modal-item.add-modal-item::before {
	content: none;
	}
	
	.grid-modal-item-delete {
	position: absolute;
	top: 8px;
	right: 8px;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 2; 
	color: #fff;
	text-decoration: none;
	font-size: 1em;
	}
	
	.grid-modal-item:hover {
	cursor: move;
	}
	
	.grid-modal-item:hover .grid-modal-item-delete {
	opacity: 1;
	}
	
	
	.add-modal-item {
	font-size: 30px;
	}
	
	
	.grid-modal-item .badge {
	position: absolute;
	bottom:-5px;
	right:0px;
	z-index: 100;
	font-size: 12px;
	}


	/* Generate AI Image */
	.file-library-btn-group {
		display: flex;
		justify-content: center;
		gap: 0.5rem;
	}
	
	.file-library-modal-btn-group {
		display: flex;
		justify-content: flex-end;
		gap: 10px;
	}
	
	.btn-ai-btn {
		display: flex;
		align-items: center;
		gap: 2px;
	}
	
	.btn-ai-icon {
		background: url('/mgs/microchip-ai-light-white.svg') no-repeat center center;
		height: 16px;
		width: 16px;
	}

	.ai-icon-black {
		background: url('/mgs/microchip-ai-light.svg') no-repeat center center;
		height: 16px;
		width: 16px;
		display: inline-block;
		margin-right:5px;
	}
	
  
  .toggle-field-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 0;
  }
  .toggle-field-row:last-child {
      border-bottom: none;
  }
  .toggle-field-row .form-control {
      width: 300px;
  }
  .toggle-field-row .reset-btn {
      display: none;
  }
  .toggle-field-row .reset-btn.visible {
      display: inline-block;
  }

	.d-flex {
		display: flex;
	}

	.d-block {
		display: block;
	}


	.align-items-center {
		align-items: center;
	}
	
	#generate-image-copy-icon {
		margin-left: 10px;
		cursor: pointer;
	}
	
	#generate-image-copy-icon i:hover {
		color: #b30c18;
	}

	.justify-content-between {
		justify-content: space-between;
	}

	.payment-information li {
	display:grid;
	grid-template-columns: 56px 1fr auto;
	gap:16px;
	align-items:center;
	border-bottom:1px solid #ddd;
	padding:12px 0;
	}

	.payment-information li:last-child { border-bottom:0; }
	.payment-information .btn { justify-self:end; }

	.payment-cc-icon {
	width: 45px;
	height:28px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	border-radius:4px;
	box-shadow:0 0 0 1px rgba(0,0,0,.06) inset;
	}

	.visa-card { background-image:url('/mgs/visa_cc.jpg'); }
    .master-card { background-image:url('/mgs/mastercard_cc.jpg'); }
	.amex-card { background-image:url('/mgs/amex_cc.jpg'); }
	.discover-card { background-image:url('/mgs/discover_cc.jpg'); }

	.cc-info { min-width:0; } 
	.billing-name {
		font-weight:600;
		margin:0 0 2px;
	}
	.billing-cc {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono","Courier New", monospace;
	line-height:1.2;
	}
	.billing-exp {
		color:#6b7280;
		font-size:12px;
	}

	.billing-exp.expired {
		color: #b52b27;
	}


	.cc-mask::before{
	content:'•••• •••• •••• ' attr(data-last4);
	letter-spacing:.5px;
	}


	.cc-number-wrap { 
		position:relative; 
	}
	
	.cc-number-wrap .cc-icon {
	position:absolute;
	left:10px;
	top:50%;
	transform:translateY(-50%);
	width:32px;
	height:20px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	opacity:0; pointer-events:none; 
	transition:opacity .15s;
	}

	.cc-number-wrap.has-brand .cc-icon { 
		opacity:1;
	}

	.cc-number-wrap.has-brand .cc-number {
		padding-left:56px;
	}

/* --
   Design history 
   -- */

.design-history-table {
  table-layout: fixed;
  width: 100%;
}

.design-history-table th:nth-child(1) { width: 15%; } 
.design-history-table th:nth-child(2) { width: 40%; } 
.design-history-table th:nth-child(3) { width: 20%; } 
.design-history-table th:nth-child(4) { width: 15%; } 
.design-history-table th:nth-child(5) { width: 10%; } 

.design-history-table td {
  overflow: hidden;
  text-overflow: ellipsis;
}

.design-history-table .no-results td {
  text-align: center;
  padding: 40px 20px;
  color: #6c757d;
  font-style: italic;
}

/* mobile */
@media only screen and (max-width: 480px) {
  .design-history-table {
    table-layout: auto;
  }
  

  table.design-history-table td,
  table.design-history-table th {
    width: auto;
    display: table-cell;
    border-top: 1px solid #ededed;
  }
}

.design-histroy-stats{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  margin: 20px 0;
  align-items: stretch;
}

.stat{
  position: relative;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-left-width: 4px;
  border-radius: 10px;
  padding: 10px 16px;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-left-color .18s ease; 
  display: flex;
  align-items: center;
  gap: 12px;
}

.history-ctn{
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 0; 
  transition: color .18s ease, transform .18s ease;
  flex: 0 0 auto;   
  text-align: right;
}

.stat-text{
  font-size: 14px;
  color: #111827;
  display: grid;
  gap: 2px;
  font-weight: 600;
  flex: 1 1 auto;
}

.stat-context{
  display: block;
  font-size: 12px;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #444;
  font-weight: 400;
}

.stat-complete{
  border-left-color: #16a34a;
}
.stat-complete .history-ctn{
  color: #16a34a     
}

.stat-time{
  border-left-color: #7137c6;
}
.stat-time .history-ctn{
  color: #7137c6;
  position: relative;
  text-align: right;   
}

/* hours */
.stat-time .history-ctn::after{
  content: "hrs";
  font-size: 14px;               
  line-height: 1;
  font-weight: 600;              
  color: inherit;                
  margin-left: 6px;              
  vertical-align: baseline;
}


.stat-complete:hover {
  border-left-color: #138a3f;
}
.stat-complete:hover .history-ctn {
  color: #138a3f     
}

.stat-time:hover {
  border-left-color: #632fae;
}
.stat-time:hover .history-ctn {
  color: #632fae;
}


/* Domain */
#domain-list {
    margin: 10px 0px 30px 0px;
}
.domain-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 0.5px solid #e0e0e0;
}
.domain-row-name {
    font-size: 14px;
    font-weight: 500;
}
.dns-panel {
    display: none;
    background: #f9f9f9;
    border-top: 0.5px solid #e0e0e0;
}
.dns-panel.open {
    display: block;
}
.dns-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 15px 0px 15px;
    flex-wrap: wrap;
    gap: 8px;
}
.dns-panel-title {
    font-size: 13px;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.dns-panel-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.dns-panel-actions .btn {
    flex: 1;
    white-space: nowrap;
}


.dns-record-row {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto auto auto;
    align-items: center;
    gap: 8px;
    padding: 15px;
}
.dns-record-type {
    width: 50px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
}
.dns-record-delete,
.dns-record-edit,
.dns-record-save {
    width: 14px;
    height: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.dns-record-delete:hover,
.dns-record-edit:hover {
    color: #ac1f2d;
}
.dns-record-save:hover {
    color: #198B34;
}

/* Add row */
.dns-add-row {
    display: none;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    margin-top: 10px;
    padding: 10px 15px 15px 15px;
    background-color: #fff;
    border-top: 1px solid #ac1f2d;
}
.dns-add-row.open {
    display: flex;
}
.dns-add-row .dns-panel-title {
    width: 100%;
}
.dns-add-row-fields {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}
.dns-add-row-fields .form-control {
    flex: 1;
    min-width: 0;
}
.dns-add-row-buttons {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}
.dns-add-type {
    width: 50px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    flex-shrink: 0;
}

@media (max-width: 600px) {
    .dns-record-row {
        display: grid;
        grid-template-columns: 1fr auto 1fr auto auto auto;
    }
    .dns-add-row-fields {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
    }
    .dns-add-row-buttons {
        width: 100%;
        margin-top: 4px;
    }
    .dns-add-row-buttons .btn {
        flex: 1;
    }
}



/* mobile  */
@media (max-width: 490px){
  .design-histroy-stats {
    grid-template-columns: repeat(2, 1fr); /* 2 columns */
    gap: 8px;
  }
  
  .stat{ 
    padding: 10px 8px;
    gap: 8px;
    /* Remove flex-direction: column to keep horizontal */
  }
  
  .history-ctn{ 
    font-size: 26px; /* Smaller for mobile */
    flex: 0 0 auto; /* Keep fixed width */
    min-width: 0;
  }
  
  .stat-text {
    font-size: 12px;
    flex: 1 1 auto;
  }
  
  .stat-context {
    font-size: 10px;
  }
  
  /* Adjust the "hrs" label */
  .stat-time .history-ctn::after {
    font-size: 11px;
    margin-left: 3px;
  }
}


/* ---- Onboarding ---- */

#onboard-progress {
  height: 4px;
  background: #e0e0da;
  border-radius: 2px;
  margin-bottom: 1.5rem;
  overflow: hidden;
  display:none; /* hide for step-0 */
}

#onboard-progress-fill {
  height: 100%;
  background: #ac1f2d;
  border-radius: 2px;
  width: 16.6%;
  transition: width .3s ease;
}

#onboard-wizard {
    display: flex;
    overflow: hidden;
    width: 100%;
    min-height: 560px;
	background:#fff;
  }
 
  /* ── Sidebar ── */
  #onboard-sidebar {
    width: 250px;
    flex-shrink: 0;
    background: #f6f6f6;
    padding: 0px 20px 0px 0px;
  }
 
  #onboard-sidebar .sidebar-title {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #888780;
    padding: 0 8px;
    margin-bottom: .75rem;
  }
 
  #onboard-sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
 
  #onboard-sidebar ul li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    cursor: default;
    user-select: none;
  }

 
  #onboard-sidebar ul li.done {
	cursor: pointer;
}

 #onboard-sidebar ul li.done .nav-dot {
	background:#5cb85c;
	border:1px solid #5cb85c;
	cursor: pointer;
}

 #onboard-sidebar ul li.done i {
	color: #fff;
 }

  #onboard-sidebar ul li.done:hover {
	background: #e0e0da;
}
  #onboard-sidebar ul li.active {
	background: #fff;
	color: #000;
	font-weight: 500;
	border:1px solid #ddd;
}


  #onboard-sidebar ul li .nav-dot {
	width:22px;
	height: 22px;
	border-radius: 50%;
	background: transparent;
	display: flex;
	border:1px solid #ddd;
	align-items: center;
	justify-content: center;
	font-size:14px;
	color:#ddd;
	flex-shrink: 0;
  }

  #onboard-sidebar ul li.active .nav-dot {
	background: #ac1f2d;
	border:1px solid #ac1f2d;
	color:#fff;
  }

   #onboard-content {
    flex: 1;
    padding: 2.25rem 2rem 2rem;
	border: 1px solid #ddd;
	border-radius: 8px;
    display: flex;
    flex-direction: column;
  }
 
  #onboard-content .step {
	display: none;
	flex: 1;
	flex-direction: column;
	padding:40px;
}

 #onboard-content .step-sub {
	margin-bottom:20px;
 }




  #onboard-content .step.active {
	display: flex;
	animation: fadeIn .2s ease;
}
  @keyframes fadeIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
 
  #onboard-content .step-title {
	font-size: 32px;
	font-weight: 600;
	color: #1a1a18;
	margin-bottom: .3rem;
}
  #onboard-content .step-body  {
	flex: 1;
	font-size: 16px;
	color: #5f5e5a;
	line-height: 1.6;
	padding-top: .5rem;
}
 
  #onboard-content .actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 1.25rem;
    border-top: 1px solid #e0e0da;
    margin-top: auto;
  }
 
  #onboard-content .actions-right {
	display: flex; align-items: center; gap: 10px;
}
 

  #onboard-content .skip-btn {
    background: none;
	border: none;
    font: inherit;
	font-size: 12px;
    color: #888780;
	cursor: pointer;
  }
  #onboard-content .skip-btn:hover {
	color: #1a1a18;
}

/* Steo 1 intro */

#step-0 {
	align-items: center;
	justify-content: center;
	text-align: center;
}

.onboard-intro {
    text-align: center;
    padding: 1rem 0 1.5rem;
}

#onboard-content .onboard-intro .actions {
	border:0;
}

.onboard-intro .btn {
  padding: 5px 15px;
  font-size: 20px;
}

.step-badge {
    display: inline-block;
    background: #e6f1fb;
    color: #185fa5;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 1rem;
    letter-spacing: 0.04em;
}
 #onboard-content .onboard-intro .step-title {
    font-size: 36px;
    margin-bottom: 20px;
}

.onboard-intro .step-sub {
    max-width: 420px;
    margin: 0 auto 2rem;
}

.step-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 2rem;
}
.step-card {
    background: #f5f5f3;
    border: 1px solid #e0e0da;
    border-radius: 20px;
    padding: 5px 12px;
    font-size: 12px;
    color: #5f5e5a;
}



@media print {
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12
{
		float: left;
}
.col-md-12,
.col-sm-12 {
		width: 100%;
}
.col-md-11,
.col-sm-11 {
		width: 91.66666667%;
}
.col-md-10,
.col-sm-10 {
		width: 83.33333333%;
}
.col-md-9,
.col-sm-9 {
		width: 75%;
}
.col-md-8,
.col-sm-8 {
		width: 66.66666667%;
}
.col-md-7,
.col-sm-7 {
		width: 58.33333333%;
}
.col-md-6,
.col-sm-6 {
		width: 50%;
}
.col-md-5,
.col-sm-5 {
		width: 41.66666667%;
}
.col-md-4,
.col-sm-4 {
		width: 33.33333333%;
}
.col-md-3,
.col-sm-3 {
		width: 25%;
}
.col-md-2,
.col-sm-2 {
		width: 16.66666667%;
}
.col-md-1,
.col-sm-1 {
		width: 8.33333333%;
}
} 

/* custom select */

.cf-sub{color:#ddd;font-size:14px;margin:0 0 28px;}

  .cf-panel{
    background:#fff;
    border:1px solid #ddd;
    border-radius:8px;
    padding:28px 32px;
  }

  .cf-field{margin-bottom:24px;}
  .cf-field:last-child{margin-bottom:0;}
  .cf-field-label{
    font-size:13px;
    font-weight:600;
    color:#5C5C5C;
    margin-bottom:8px;
    display:block;
  }

  .cf-input {
    width:100%;
    height:38px;
    border:1px solid #ddd;
    border-radius:5px;
    padding:0 12px;
    font-size:14px;
    color:#ddd;
    background:#fff;
    display:flex;
    align-items:center;
    font-family:inherit;
  }


  .cf-name-type-row{
	display:flex;
	gap:16px;}
  .cf-name-type-row .cf-field{
	flex:1;
	margin-bottom:0;
}

  .cf-rows{
    border:1px solid #ddd;
    border-radius:6px;
    overflow:hidden;
  }
  .cf-row{
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 10px;
    background:#fff;
    border-bottom:1px solid #ddd;
  }
  .cf-row:last-child{
	border-bottom:none;
}

  .cf-grip{
    color:#000;
    flex-shrink:0;
    font-size:14px;
    user-select:none;
  }

  .cf-row .cf-name{
    flex:1;
	min-width:0;
    height:30px;
    display:flex;
	align-items:center;
    padding:0 8px;
    font-size:14px;
    border:1px solid transparent;
    border-radius:4px;
  }

  .cf-price-wrap{
	display:flex;
	align-items:center;
	gap:4px;
	flex-shrink:0;
}

  .cf-price-wrap span{
	color:#000;
}
  .cf-price{
    width:60px;height:30px;
    display:flex;
	align-items:center;
	padding:0 6px;
    font-size:14px;
    border:1px solid transparent;
    border-radius:4px;
  }

  .cf-del-btn{
    color:#ddd;
    width:26px;height:26px;
	border-radius:4px;
    display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
    font-size:15px;
  }

  .cf-hint{
    display:flex;
	align-items:
	center;gap:6px;
    color:#000;
	font-size:14px;
	margin-top:8px;
  }

  .cf-add-row{
	margin-top:12px;
	display:flex;
	gap:8px;
}

  .cf-add-row .cf-input{
	flex:1;
	color:#000;}

  .cf-example{
    font-size:14px;
	color:#000;
	margin-top:6px;
  }
  .cf-btn-primary{
    background:#fff;
	color:#fff;
	border-radius:5px;
    padding:0 18px;
	height:38px;
	font-size:14px;
	font-weight:600;
    display:flex;
	align-items:center;
	justify-content:center;
    flex-shrink:0;
  }

  .cf-options-grid{
    display:flex;
	flex-wrap:wrap;
	gap:14px 24px;
  }
  .cf-opt-check{
    display:flex;
	align-items:center;
	gap:8px;
	font-size:14px;
  }
  .cf-opt-check input{
	width:16px;
	height:16px;
}

.cf-name[contenteditable="true"], .cf-price[contenteditable="true"]{
  cursor:text;
  outline:none;
}
.cf-name[contenteditable="true"]:hover, .cf-price[contenteditable="true"]:hover{
  background:#efefef;
}
.cf-name[contenteditable="true"]:focus, .cf-price[contenteditable="true"]:focus{
  background:#ffffff;
  border-color:#efefef;
}

.btn-loading {
  position: relative;
}

.btn-text {
  transition: all 0.2s;
}

.btn-loading .btn-text {
  visibility: hidden;
  opacity: 0;
}

.btn-loading::after {
  content: "";
  position: absolute;
  width: auto;
  height: 60%;
  aspect-ratio: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border: 4px solid transparent;
  border-top-color: currentColor;
  border-radius: 50%;
  animation: button-loading-spinner 1s ease infinite;
}

@keyframes button-loading-spinner {
  from {
    transform: rotate(0turn);
  }

  to {
    transform: rotate(1turn);
  }
}

.btn-loading[aria-disabled="true"] {
  pointer-events: none;
  cursor: default;
}

/* --------------
   SAGE Core no bs
   ----- */

:root {
	--sg-accent: #ac1f2d;
	--sg-accent-dark: #b30c18;
	--sg-border: #e4e6ea;
	--sg-gap: 24px;
	--sg-text: #26282c;
  --sg-sticky-top: 24px;
}


/* --------------
   SG grid system
   ----- */

/* Grid */
.sg-grid {
	display: grid;
	gap: var(--sg-gap);
}
 
/* Equal cols */
.sg-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
 
.sg-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
 
.sg-grid-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
 
/* auto cols */
.sg-grid-auto {
	grid-template-columns: repeat(auto-fill, minmax(var(--sg-grid-min, 260px), 1fr));
}

.sg-grid-side {
	grid-template-columns: var(--sg-cols, minmax(0, 2fr) minmax(0, 1fr));
}

.sg-grid-start {
	align-items: start;
}

.sg-grid > .sg-card + .sg-card {
	margin-top: 0;
}


/* if no sidebar, stretch full width */
.sg-grid-side > :only-child {
	grid-column: 1 / -1;
}

@media (max-width: 1100px) {
   .sg-grid-side {
		grid-template-columns: minmax(0, 1fr);
	}
}
 
@media (max-width: 991px) {
	.sg-grid-3,
	.sg-grid-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
 
@media (max-width: 767px) {
	.sg-grid-2,
	.sg-grid-3,
	.sg-grid-4 {
		grid-template-columns: minmax(0, 1fr);
	}

}

/* --------------
   Util
   ----- */

.sg-logo { display: block; height: 40px; }


.sg-sticky {
  position: sticky;
  top: var(--sg-sticky-top, 100px);
}

.sg-text-accent {
	color: var(--sg-accent);
}

.sg-flex {
	align-items: center;
	display: flex;
	gap: var(--sg-flex-gap, 12px);
}

.sg-badge-accent {

}

.sg-flex-start {
  justify-content: flex-start;
}


.sg-flex-between {
  justify-content: space-between;
}

.sg-flex-end {
  justify-content: flex-end;
}



.sg-flex-grow {
	flex-grow: 1;
	min-width: 0;
}

.sg-flex-top {
	align-items: flex-start;
}

.sg-flex-wrap {
	flex-wrap: wrap;
}

.sg-flex > p {
	margin: 0;
}

.sg-toolbar {
	border-bottom: 1px solid var(--sg-border);
}

.sg-toolbar .sg-input {
	width: auto;
}

.sg-width-sm {
	max-width: 500px;
}


.sg-width-md {
	max-width: 760px;
}

.sg-width-lg {
	max-width: 1100px;
}

.sg-center {
	margin-left: auto;
	margin-right: auto;
}

.sg-col-stack {
  margin-bottom: var(--sg-gap);
}

.sg-scroll {
	border: 1px solid var(--sg-border);
	border-radius: 8px;
	overflow-y: auto;
	padding: 16px;
}

.sg-scroll-sm {
  max-height: 360px;
}

.sg-scroll-md {
  max-height: 560px;
}

.sortable-ghost {
	opacity: .6;
}




/* --------------
   Buttons
   ----- */

.sg-btn {
	align-items: center;
	border: 0;
  justify-content: center;
	border-radius: 8px;
	cursor: pointer;
	display: inline-flex;
	flex-shrink: 0;
	font-family: inherit;
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	padding: 8px 12px;
	text-decoration: none;
}

.sg-btn-accent {
	background: var(--sg-accent);
	color: #fff;
}

.sg-btn-accent:hover,
.sg-btn-accent:focus {
	background: var(--sg-accent-dark);
	color: #fff;
}

.sg-btn-light {
	background: #fff;
	border: 1px solid #d3d7dd;
	box-sizing: border-box;
	color: var(--sg-text);
}

.sg-btn-light:hover,
.sg-btn-light:focus {
	background: #f1f2f4;
	border-color: #b8bdc5;
	color: var(--sg-text);
}

.sg-btn.sg-btn-sm {
	font-size: 14px;
	height: 32px;
	padding: 0 12px;
}

.sg-btn.sg-btn-lg {
	font-size: 16px;
	height: 48px;
	min-width: 180px;
	padding: 0 32px;
}

.sg-btn.sg-btn-icon {
	border-radius: 50%;
	height: 32px;
	justify-content: center;
	padding: 0;
	width: 32px;
}

.sg-btn:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}


/* --------------
   Switch
   ----- */

  input.sg-switch {
    margin: 0;
  }

  .sg-switch {
  appearance: none;
  position: relative;
  width: 30px;
  height: 18px;
  margin: 0;
  border-radius: 9px;
  background: #ccc;
  cursor: pointer;
  transition: background .4s;
}
.sg-switch::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  transition: transform .4s;
}
.sg-switch:checked {
  background: #ac1f2d;
}
.sg-switch:checked::before {
  transform: translateX(12px);
}
.sg-switch:disabled {
  opacity: .5;
  cursor: not-allowed;
}
.sg-switch:focus-visible {
  outline: 2px solid #ac1f2d;
  outline-offset: 2px;
}


/* --------------
   Page header 
   ----- */

.sg-page-header {
	align-items: flex-start;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: 28px;
	padding-top: 30px;
}

.sg-page-title {
	align-items: center;
	display: flex;
	font-size: 34px;
	font-weight: 700;
	gap: 14px;
	letter-spacing: -0.01em;
	margin: 0 0 8px;
}

.sg-page-icon {
	color: var(--sg-accent);
	flex-shrink: 0;
	height: 32px;
	width: 32px;
}

.sg-page-icon-lg {
	color: var(--sg-accent);
	flex-shrink: 0;
	height: 40px;
	width: 40px;
}


.sg-page-desc {
	color: #4a4e55;
	font-size: 16px;
	line-height: 1.45;
	margin: 0;
	max-width: 560px;
}

.sg-page-desc.sg-page-desc-xl {
	max-width: 1000px;
}

@media (max-width: 960px) {
	.sg-page-header {
		flex-direction: column;
	}
}


/* --------------
   spacing
   ----- */

.sg-stack > * + *,
.sg-card + .sg-card {
	margin-top: var(--sg-gap);
}


.sg-mb {
	margin-bottom: var(--sg-gap);
}


.sg-stack > .alert {
	margin-bottom: 0;
}

.sg-divide > * + * {
	border-top: 1px solid var(--sg-border);
	padding-top: 24px;
}



/* --------------
   cards
   ----- */

.sg-card {
	background: #fff;
	border: 1px solid var(--sg-border);
	border-radius: 14px;
	box-shadow: 0 1px 2px rgba(20, 22, 26, 0.05);
	color: var(--sg-text);
	overflow: hidden;
}

.sg-card-accent {
	border-top: 3px solid var(--sg-accent);
}

.sg-card-header {
	align-items: center;
	background: #fff;
	border-bottom: 1px solid var(--sg-border);
	display: flex;
	gap: 10px;
	padding: 18px 28px;
}

.sg-card-header-plain {
	border-bottom: 0;
	padding-bottom: 0;
}

.sg-card-header h2 {
	font-size: 18px;
	font-weight: 600;
	margin: 0;
}

.sg-card-body {
	padding: 24px 28px;
}

.sg-card-body > :last-child {
	margin-bottom: 0;
}

.sg-fit {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 16px;
  height: 100vh;
  height: 100dvh; /* mobile height */
  margin: 0 auto;
  max-width: 960px;
  overflow-y: auto;
  padding: 24px 16px;
}

.sg-card-fill { 
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  min-height: min-content;
}

.sg-card-fill > .sg-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}

.sg-card-fill .sg-scroll {
  flex: 1 1 0;
  max-height: none;
  min-height: 160px;
}

@media (max-width: 640px) {
  .sg-fit {
    height: auto;
    overflow-y: visible;
  }

  .sg-card-fill {
    flex: none;
    min-height: 0;
  }

  .sg-card-fill > .sg-card-body {
    flex: none;
  }

  .sg-card-fill .sg-scroll {
    flex: none;
    max-height: 50vh;
    max-height: 50dvh;
    min-height: 160px;
    overflow-y: auto;
  }
}

/* --------------
   Tile
   ----- */

.sg-tile-img {
	background: #f6f7f9;
	border-radius: 6px;
}

a.sg-tile {
	color: var(--sg-text);
	display: block;
	text-decoration: none;
	transition: box-shadow .2s, border-color .2s;
}

a.sg-tile:hover,
a.sg-tile:focus {
	box-shadow: 0 4px 12px rgba(20, 22, 26, 0.1);
	color: var(--sg-text);
}


/* --------------
   Forms
   ----- */

.sg-field {
	margin-bottom: 14px;
}

.sg-label {
	color: #4a4e55;
	display: block;
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 8px;
}

.sg-input {
	background: #fff;
	border: 1px solid #d3d7dd;
	border-radius: 8px;
	box-sizing: border-box;
	color: var(--sg-text);
	font-family: inherit;
	font-size: 16px;
	height: 40px;
	padding: 0 14px;
	width: 100%;
}

.sg-input:focus {
	background: #fff;
	border-color: #8a9099;
	box-shadow: 0 0 0 3px rgba(20, 22, 26, 0.08);
	outline: 2px solid transparent;
}

.sg-input:disabled {
	background: #f1f2f4;
	color: #8a9099;
	cursor: not-allowed;
}

.sg-input.sg-flex-grow {
	width: auto;
}

.sg-input.sg-input-sm {
	width: 80px;
}

.sg-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%235b6068' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center;
	border: 1px solid #d3d7dd;
	border-radius: 8px;
	box-sizing: border-box;
	color: var(--sg-text);
	font-family: inherit;
	font-size: 16px;
	height: 40px;
	padding: 0 36px 0 14px;
	width: 100%;
}

.sg-select:focus {
	border-color: #8a9099;
	box-shadow: 0 0 0 3px rgba(20, 22, 26, 0.08);
	outline: 2px solid transparent;
}

.sg-select:disabled {
	background-color: #f1f2f4;
	color: #8a9099;
	cursor: not-allowed;
}

.sg-required {
	color: var(--sg-accent);
}

.sg-error {
	margin: 0;
	padding: 16px 28px 0;
}

.sg-error:empty {
	display: none;
}


.sg-input.sg-textarea {
	height: auto;
	line-height: 1.5;
	min-height: 100px;
	padding: 12px 14px;
	resize: vertical;
}

.sg-file {
	font-size: 15px;
}

.sg-file::file-selector-button {
	background: #fff;
	border: 1px solid #d3d7dd;
	border-radius: 8px;
	color: var(--sg-text);
	cursor: pointer;
	font-family: inherit;
	font-weight: 600;
	margin-right: 12px;
	padding: 8px 14px;
}

.sg-file::file-selector-button:hover {
	background: #f1f2f4;
	border-color: #b8bdc5;
}

.sg-check {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 8px;
	margin: 0;
  font-weight: 400;
}

.sg-check input {
	accent-color: var(--sg-accent);
	height: 18px;
	margin: 0;
	width: 18px;
}

.sg-help {
	color: #5b6068;
	font-size: 14px;
	margin: 6px 0 0;
}

/* --------------
   List
   ----- */

/* bs table strip */
.table.sg-list > tbody > tr > td {
	border: 0;
	padding: 8px 0 8px 1.75em;
	text-indent: -1.75em;
}

.sg-list .fa {
	color: #6b7078;
	display: inline-block;
	text-align: center;
	text-indent: 0;
	width: 1.75em;
}

.sg-list-plain {
	list-style: none;
	margin-bottom: 0;
	padding: 0;
}

.sg-list-divided > li {
	border-top: 1px solid var(--sg-border);
	padding: 10px 0;
}

.sg-list-divided > li:first-child {
	border-top: 0;
}

/* Black links */
.sg-list-dark a {
	color: var(--sg-text);
	text-decoration: none;
}

.sg-list-dark a:hover,
.sg-list-dark a:focus {
	color: var(--sg-accent);
	text-decoration: none;
}

/* Red links */
.sg-list-accent a {
	color: var(--sg-accent);
	text-decoration: none;
}

.sg-list-accent a:hover,
.sg-list-accent a:focus {
	color: var(--sg-accent-dark);
	text-decoration: none;
}

.sg-list-hang > li {
	margin-bottom: 10px;
	padding-left: 2.5em;
	text-indent: -2.5em;
}

.sg-list-hang > li > ul {
	margin-top: 10px;
}

.sg-meta {
	margin: 0;
}

.sg-meta-row {
	display: flex;
	gap: 12px;
	padding: 6px 0;
}

.sg-meta dt {
	color: #5b6068;
	flex-shrink: 0;
	font-weight: 600;
	width: 110px;
}

.sg-meta dd {
	margin: 0;
	min-width: 0;
}

/* --------------
   Tables
   ----- */

.table.sg-table > thead > tr > th {
	border-bottom: 1px solid var(--sg-border);
	color: #5b6068;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	padding: 14px 16px;
	text-transform: uppercase;
	vertical-align: middle;
}

.table.sg-table > thead > tr > th i {
	font-style: normal;
}

.table.sg-table > tbody > tr > td {
	border-top: 1px solid #eef0f3;
	padding: 16px;
	vertical-align: middle;
}

.table.sg-table > tbody > tr:first-child > td {
	border-top: 0;
}

/* align first and last col with the card header */
.table.sg-table > thead > tr > th:first-child,
.table.sg-table > tbody > tr > td:first-child {
	padding-left: 28px;
}

.table.sg-table > thead > tr > th:last-child,
.table.sg-table > tbody > tr > td:last-child {
	padding-right: 28px;
}

.table.sg-table > tbody > tr:hover > td {
	background: #fbf3f3;
}

.sg-card .table.sg-table {
	margin-bottom: 0;
}

.sg-table-empty {
	align-items: center;
	border-top: 1px solid #eef0f3;
	color: #5b6068;
	display: flex;
	flex-direction: column;
	font-size: 16px;
	gap: 8px;
	padding: 36px 28px 44px;
	text-align: center;
}

.sg-table-empty[hidden] {
	display: none;
}

.sg-table-empty .fa {
	color: #9aa0a8;
	font-size: 32px;
}

/* --------------
   tile
   ----- */

.sg-tile {
	background: #fff;
	border: 1px solid var(--sg-border);
	border-radius: 8px;
	padding: 12px;
	position: relative;
	text-align: center;
}

.sg-tile-img {
	aspect-ratio: 1 / 1;
	display: block;
	object-fit: contain;
	width: 100%;
}

.sg-tile-name {
	font-size: 14px;
	margin: 8px 0 0;
}

.sg-tile-remove {
  background: #fff;
  border-radius: 50%;
  color: #8a9099;
  font-size: 22px;
  height: 22px;
  line-height: 22px;
  position: absolute;
  right: -5px;
  text-align: center;
  top: -10px;
  width: 22px;
}

.sg-tile-remove:hover,
.sg-tile-remove:focus {
	color: var(--sg-accent);
}

/* --------------
   badge
   ----- */

.sg-badge {
	border-radius: 999px;
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	min-width: 24px;
	padding: 4px 8px;
	text-align: center;
}

.sg-badge-accent {
	background: rgba(172, 31, 45, 0.1);
	color: var(--sg-accent-dark, #811722);
}

.sg-badge-light {
	background: #eceef1;
	color: #4a4e55;
}

.sg-badge-white {
	background: #fff;
	color: #4a4e55;
}

.sg-badge-success {
	background: #e6f1ea;
	color: #1d5c37;
}


/* --------------
   Progress bar
   ----- */

.sg-progress {
	background: #eceef1;
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
}
 
.sg-progress-bar {
	background: var(--sg-accent);
	border-radius: 999px;
	height: 100%;
}


/* --------------
   Video
   ----- */

.sg-video {
	aspect-ratio: 16 / 9;
	background: #000;
}

.sg-video iframe {
	border: 0;
	display: block;
	height: 100%;
	width: 100%;
}

/* --------------
   Avatars
   ----- */

.sg-avatar {
	border-radius: 50%;
	flex-shrink: 0;
	height: 96px;
	object-fit: cover;
	width: 96px;
}



/* --- Support ticket page --- */

.ticket-summary {
	--sg-flex-gap: 16px 32px;
}

.ticket-summary-meta {
	flex: 0 0 320px;
}

.ticket-summary-main {
	flex: 1 1 300px;
}

.ticket-subject {
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 8px;
}

.ticket-desc {
	color: #4a4e55;
	margin: 0;
}


/* History thread */
.ticket-thread-item {
	display: flex;
	gap: 20px;
	padding: 24px 28px;
}

.ticket-thread-item + .ticket-thread-item {
	border-top: 1px solid var(--sg-border);
}

.ticket-thread-avatar {
	border-radius: 50%;
	flex-shrink: 0;
	height: 48px;
	object-fit: cover;
	width: 48px;
}

.ticket-thread-main {
	flex-grow: 1;
	min-width: 0;
}

.ticket-thread-head {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin-bottom: 6px;
}

.ticket-thread-author {
	font-weight: 700;
}

.ticket-thread-time {
	color: #5b6068;
	font-size: 14px;
}

.ticket-thread-title {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 6px;
}

.ticket-thread-body {
	overflow-wrap: anywhere;
}

.ticket-thread-attachments {
	margin-top: 12px;
}

.ticket-thread-attachments:empty {
	display: none;
}

.ticket-thread-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}

.ticket-thread-actions p {
	margin: 0;
}



.ticket-reply {
	background: #fafafa;
	border-top: 1px solid var(--sg-border);
	padding: 24px 28px;
}

.ticket-survey {
	margin: 48px auto 0;
}

.ticket-survey-title {
	font-family: "Source Sans Pro", sans-serif;
	font-size: 28px;
	font-weight: 500;
	margin: 20px 0 8px;
}

.ticket-survey .rating-container .filled-stars {
	color: var(--sg-accent);
	text-shadow: none;
}

.ticket-survey .rating-container .empty-stars {
	color: #c9ccd2;
}

/* -------------------
      Academy 
-------------------- */
.academy-logo {
	display: block;
	width: 200px;
}
 
/* top bar on dashboard */
.academy-top {
	--sg-cols: minmax(0, 3fr) minmax(0, 2fr);
}
 
 
/* Continue watching */
.academy-continue {
	display: flex;
	flex-direction: column;
}
 
.academy-continue-body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
 
.academy-continue-progress {
	margin-top: auto;
}
 
.academy-video-title {
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 8px;
}
 
.academy-video-desc {
	color: #4a4e55;
	margin: 0 0 8px;
}
 
.academy-video-meta {
	color: #5b6068;
	font-size: 14px;
	margin: 0 0 24px;
}
 
.academy-progress-label {
	font-size: 14px;
	font-weight: 600;
	margin: 0 0 8px;
}
 
 
/* Webinars */
.academy-webinar-list {
	list-style: none;
	margin: 0;
	max-height: 440px; /* scoll might be to big */
	overflow-y: auto;
	padding: 0;
}
 
.academy-webinar {
	padding: 16px 24px;
}
 
.academy-webinar + .academy-webinar {
	border-top: 1px solid var(--sg-border);
}
 
.academy-webinar-row {
	align-items: center;
	display: flex;
	gap: 10px;
}
 
.academy-webinar-info {
	flex-grow: 1;
	min-width: 0;
}
 
.academy-webinar-title {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	margin: 0 0 2px;
}
 
.academy-webinar-date {
	color: #5b6068;
	font-size: 14px;
}
 
.academy-webinar-toggle i {
	transition: transform .2s;
}
 
.academy-webinar-toggle[aria-expanded="true"] i {
	transform: rotate(180deg);
}
 
.academy-webinar-desc {
	color: #4a4e55;
	font-size: 15px;
	margin: 12px 0 0;
}
 
 
/* course cards  */
.academy-course {
	background: #fff;
	border: 1px solid var(--sg-border);
	border-radius: 12px;
	display: flex;
	transition: border-color .15s, box-shadow .15s;
}
 
.academy-course:hover {
	border-color: #c9cdd3;
	box-shadow: 0 2px 8px rgba(20, 22, 26, .08);
}
 
.academy-course-link,
.academy-course-link:hover,
.academy-course-link:focus {
	color: inherit;
	text-decoration: none;
}
 
.academy-course-link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 10px;
	padding: 20px;
}
 
.academy-course-top {
	align-items: flex-start;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}
 
.academy-course-title {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
}
 
.academy-course-tag {
	flex-shrink: 0;
	height: 24px;
	width: auto;
}
 
.academy-course-desc {
	color: #4a4e55;
	margin: 0;
}
 
.academy-course-meta {
	color: #5b6068;
	font-size: 14px;
	margin: 0;
}
 
/* stick to bottom */
.academy-course .sg-progress {
	margin-top: auto;
}
 
/* course stack condesnded  */
.academy-compact {
	--sg-gap: 12px;
}
 
.academy-compact .academy-course-link {
	padding: 16px;
}
 
 
/* Lessons */
.academy-lessons {
	--sg-gap: 16px;
}
 
.academy-section-title {
	font-size: 22px;
	font-weight: 700;
	margin: 0;
}
 
.academy-toolbar {
	--sg-flex-gap: 12px;
}
 
.academy-filters {
	--sg-flex-gap: 8px;
	list-style: none;
	margin-bottom: 0;
	padding: 0;
}
 
.academy-filters-label {
	color: #5b6068;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	margin-right: 4px;
	text-transform: uppercase;
}
 
.academy-filter {
	background: #eceef1;
	border-radius: 999px;
	color: #4a4e55;
	font-size: 13px;
	font-weight: 600;
	padding: 3px 10px;
}
 
.academy-filter a {
	color: inherit;
	margin-right: 4px;
}


.sg-video-empty {
	align-items: center;
	background: #e9ebee;
	color: #8a9099;
	display: flex;
	justify-content: center;
}
 
/* Academy whats new */
 
.academy-new-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
 
.academy-new-link {
	color: inherit;
	display: block;
	padding: 12px 0;
}
 
.academy-new-link:hover .academy-new-title {
	color: var(--sg-accent);
}
 
.academy-new-item {
	align-items: center;
	display: flex;
	gap: 16px;
}
 
.academy-new-list > li:first-child .academy-new-link {
	padding-top: 0;
}
 
.academy-new-list > li:last-child .academy-new-link {
	padding-bottom: 0;
}
 
.academy-new-thumb {
	border-radius: 8px;
	flex: 0 0 100px;
	width: 100px;
}
 
.academy-new-title {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 2px;
}
 
.academy-new-meta {
	color: #5b6068;
	font-size: 14px;
	margin: 0;
}
 
 
/* Academy lesson */
 
.academy-lesson-layout {
	--sg-cols: minmax(0, 3fr) minmax(280px, 1fr);
}
 
.academy-lesson-head {
	margin-bottom: 20px;
}
 
.academy-lesson-info {
	flex: 1 1 300px;
}
 
.academy-lesson-info .academy-video-meta {
	margin-bottom: 0;
}
 
.academy-lesson-progress {
	flex: 0 1 260px;
}
 
.academy-lesson-text {
	color: #4a4e55;
	margin-bottom: 0;
}
 
 
/* Academy sidebar */
 
.academy-outline-img {
	display: block;
	width: 100%;
}
 
.academy-outline .panel-group {
	margin-bottom: 0;
}
 
.academy-outline .panel-group .panel + .panel {
	margin-top: 0;
}
 
.academy-outline-section.panel {
	background: none;
	border: 0;
	border-bottom: 1px solid var(--sg-border);
	border-radius: 0;
	box-shadow: none;
	margin: 0;
}
 
.academy-outline-section.panel:last-child {
	border-bottom: 0;
}
 
.academy-outline-title {
	font-size: 15px;
	font-weight: 600;
	margin: 0;
}
 
.academy-outline-title a {
	align-items: center;
	color: var(--sg-text);
	display: flex;
	gap: 12px;
	justify-content: space-between;
	padding: 14px 20px;
	text-decoration: none;
}
 
.academy-outline-title a:hover {
	background: #f7f7f8;
}
 
.academy-outline-title i {
	color: #5b6068;
	flex: 0 0 auto;
	font-size: 12px;
	transition: transform .2s;
}
 
.academy-outline-title [aria-expanded="true"] i {
	transform: rotate(180deg);
}
 
.academy-outline-list {
	list-style: none;
	margin: 0;
	padding: 0 20px 12px;
}
 
.academy-outline-lesson {
	column-gap: 10px;
	display: grid;
	grid-template-columns: 18px 1fr;
	padding: 8px 0;
}
 
.academy-outline-lesson input {
	accent-color: var(--sg-accent);
	height: 16px;
	margin: 3px 0 0;
	width: 16px;
}
 
.academy-outline-lesson a {
	color: var(--sg-text);
	font-size: 14px;
}
 
.academy-outline-lesson a:hover {
	color: var(--sg-accent);
}
 
.academy-outline-lesson span {
	color: #5b6068;
	font-size: 13px;
	grid-column: 2;
}
 
 
/* Academy manage */
 
.academy-manage-toolbar .sg-input {
	width: auto;
}
 
.academy-manage-toolbar #searchClass {
	flex: 1 1 220px;
}
 
.academy-select {
	min-width: 160px;
}
 
.academy-lesson-list {
	list-style: none;
	margin-bottom: 0;
	padding: 0;
}
 
.academy-lesson {
	align-items: flex-start;
	border-top: 1px solid var(--sg-border);
	display: flex;
	gap: 16px;
	padding: 16px 0;
}
 
.academy-lesson:first-child {
	border-top: 0;
	padding-top: 0;
}
 
.academy-lesson-thumb {
	border-radius: 8px;
	flex: 0 0 120px;
	width: 120px;
}
 
.academy-lesson-details {
	flex: 1 1 auto;
	min-width: 0;
}
 
.academy-lesson-title {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 4px;
}
 
.academy-lesson-desc {
	color: #4a4e55;
	font-size: 14px;
	margin: 0 0 6px;
}
 
.academy-lesson-meta {
	--sg-flex-gap: 16px;
	color: #5b6068;
	font-size: 13px;
	list-style: none;
	margin: 0;
	padding: 0;
}
 
.academy-lesson-actions {
	display: flex;
	gap: 8px;
	opacity: 0;
	transition: opacity .15s;
}
 
.academy-lesson:hover .academy-lesson-actions,
.academy-lesson:focus-within .academy-lesson-actions {
	opacity: 1;
}
 
@media (hover: none) {
	.academy-lesson-actions {
		opacity: 1;
	}
}
 
.academy-track-list {
	list-style: none;
	margin-bottom: 0;
	padding: 0;
}
 
.academy-track {
	padding: 6px 0;
}
 
.academy-track-link {
	align-items: center;
	color: #b30c18;
	display: flex;
	font-weight: 600;
	gap: 8px;
	justify-content: space-between;
}
 
.academy-sort {
	list-style: none;
	margin: 4px 0 0;
	min-height: 8px;
	padding: 0 0 0 16px;
}
 
.academy-sort li {
	background: #f7f7f8;
	border: 1px solid var(--sg-border);
	border-radius: 8px;
	cursor: grab;
	font-size: 14px;
	margin-top: 6px;
	padding: 6px 10px;
}
 
.academy-sort li i {
	color: #5b6068;
	margin-right: 6px;
}
 
@media (max-width: 767px) {
	.academy-lesson {
		flex-wrap: wrap;
	}
}
 
 
/* Academy modal */
 
.academy-modal .modal-content {
	border: 1px solid var(--sg-border);
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(20, 22, 26, .2);
}
 
.academy-modal .modal-header {
	border-bottom: 1px solid var(--sg-border);
	padding: 18px 28px;
}
 
.academy-modal .modal-title {
	font-size: 18px;
	font-weight: 600;
	margin: 0;
}
 
.academy-modal .modal-body {
	padding: 24px 28px;
}
 
.academy-modal .modal-footer {
	border-top: 1px solid var(--sg-border);
	padding: 16px 28px;
	text-align: right;
}
 
.academy-modal .modal-footer .sg-btn + .sg-btn {
	margin-left: 8px;
}
 
 
/* Academy - Edit*/
 
.academy-checks {
	--sg-gap: 10px;
}
 
.academy-preview {
	border-radius: 8px;
	max-width: 560px;
	overflow: hidden;
}
 
.academy-pdf-preview {
	border: 1px solid var(--sg-border);
	border-radius: 8px;
	display: block;
	height: 400px;
	max-width: 100%;
	width: 100%;
}
 
.acad-richtext textarea {
	width: 100%;
}


/* Show link */


.showlink-filter .showlink-search {
	flex: 1 1 160px;
  min-width: 0;
}

.showlink-filter {
	border-bottom: 1px solid var(--sg-border);
}

/* KB */

.kb-top-bar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}

.kb-back-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #8b1a2a;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
}
.kb-back-link:hover { color: #6e1420; }

.kb-mgmt-actions {
  display: flex;
  gap: 6px;
  align-items: center;
}

.kb-id {
  letter-spacing: 1px;
  color: #444;
  background: #e8e8ed;
  border: 1px solid #c8c8d0;
  border-radius: 4px;
  padding: 2px 10px;
  white-space: nowrap;
  flex-shrink: 0;
}

.kb-section-label {
  font-weight: 700;
  text-transform: uppercase;
  color: var(--sg-accent);
  margin-bottom: 8px;
  margin-top: 0;
}

.kb-issue-block {
  background: #f0f1f5;
  border-radius: 6px;
  padding: 20px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.kb-issue-icon {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #e0e0e6;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6b6b80;
  margin-top: 2px;
}

.kb-issue-content {
  flex: 1;
  min-width: 0;
}

.kb-issue-block .kb-section-label {
  margin-bottom: 5px;
}


#kb-actions.kb-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
}

#kb-meta dl {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}

#kb-meta dt {
  margin-top: 12px;
  margin-bottom: 0;
}

#kb-meta dt:first-child { margin-top: 0; }

#kb-meta dd {
  font-size: 15px;
  margin: 0;
}

#kb-meta dt:has(+ dd:empty) { display: none; }
#kb-meta dd:empty { display: none; }

.kb-search-form {
  flex: 1;
  min-width: 240px;
  max-width: 640px;
}

.kb-search-form .sg-flex {
  gap: 8px;
}

.kb-search-form .sg-input {
  flex: 1;
}

