/*-- font-family: "Source Sans 3", sans-serif;--*/
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap');
/*--font-family: "Public Sans", sans-serif;--*/
@import url('https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,100..900;1,100..900&display=swap');

/*----*/
:root {
	--simple-blue-color: #0C7BAB;
	--simple-darkBlue-color: #003a52;
	--simple-midBlue-color: #9bddfa;
	--simple-lightBlue-color: #dbf4ff;
	--simple-skyBlue-color: #F3FCFF;
	--simple-orange-color: #e05200;
	--simple-red-color: #ec0c26;
	--simple-darkOrange-color: rgba(231, 12, 32, 0.57);
	--simple-midOrange-color: #ffb999;
	--simple-lightOrange-color: #ffeae1;
	--simple-purple-color: #955eee;
	--simple-darkPurple-color: #6314de;
	--simple-midPurple-color: #c49fff;
	--simple-lightPurple-color: #efe5ff;
	--simple-yallow-color: #ff9b00;
	--simple-lightYallow-color: #fff1bd;
	--simple-gray-color: #39465f;
	--simple-lightGray-color: #79869f;
	--simple-light-color: #f8f9fc;
	--simple-white-color: #ffffff;
	--simple-blue-grad-color: linear-gradient(90deg, rgb(12 123 171) 0%, rgb(0 91 131) 100%);
	--simple-orange-grad-color: linear-gradient(90deg, rgb(255 104 16) 0%, #e05200 100%);
	--simple-grid-gutter-width: 1.5rem;
	--form-input-height: 40px;
}

/*====== STYLES GENERALES ==========*/
html {
	position: relative;
	min-height: 100%;
}


body {
	padding: 0;
	margin: 0;
	font-family: "Public Sans", sans-serif;
	color: #000000;
	background-color: #f4f7fa;
	font-size: .85rem;
	font-weight: 400;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #000000;
}

a {
	color: var(--simple-blue-color);
	transition: all .3s ease;
	text-decoration: none;
}

a:hover {
	color: var(--simple-orange-color);
	text-decoration: none;
}

ul {
	padding: 0;
	margin: 0;
	list-style-type: none;
}

hr {
	opacity: .15;
}

/*---//---*/
/*---Bootstrap Theme Mix Our Theme Styles---*/
.tooltip {
	font-size: 0.75rem;
}

.xsmall {
	font-size: .775em;
}

.dropdown-item.active,
.dropdown-item:active {
	color: var(--bs-dropdown-link-active-color);
	text-decoration: none;
	background-color: var(--simple-blue-color);
}

.page-link {
	color: var(--simple-blue-color);
	font-size: 0.9rem;
	font-weight: 600;
}

.active>.page-link,
.page-link.active {
	background-color: var(--simple-blue-color);
	border-color: var(--simple-blue-color);
}

.page-link:focus {
	box-shadow: unset;
}

.flip-x {
	display: inline-block;
	transform: scaleX(-1);
}

.flip-y {
	display: inline-block;
	transform: scaleY(-1);
}

.fw-900 {
	font-weight: 900 !important;
}

.fw-800 {
	font-weight: 800 !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.fw-600 {
	font-weight: 600 !important;
}

.minHt200 {
	min-height: 200px !important;
}

.minHt400 {
	min-height: 400px !important;
}

/*---//---*/
/*---Theme Styles---*/
/*---Form Control---*/
.form-control,
.form-select {
	font-size: 0.9rem;
	border: 1px solid #dee2e6;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	/*height: 48px;*/
	height: var(--form-input-height);
		min-height: var(--form-input-height);
		box-sizing: border-box;
}

.form-control:focus,
.form-select:focus {
	border-color: var(--simple-blue-color);
	outline: 0;
	box-shadow: unset;
}

.form-control-sm,
.form-select-sm {
	height: auto;
	min-height: calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));
}

.form-control:disabled {
	background-color: #e9ecef !important;
	opacity: 1;
}

.form-control[type="file"] {
	line-height: 2.5;
}

.form-control[type="file"]:focus,
.form-control[type="file"]:focus {
	border-color: var(--simple-lightGray-color);
}

.form-check-input {
	width: 1.25em;
	height: 1.25em;
	border: 2px solid #bbc7d2;
	margin-top: .175em;
	margin-right: 0.5em;
}

.form-check-input:checked {
	background-color: var(--simple-blue-color);
	border-color: var(--simple-blue-color);
}

.form-check-input:focus {
	box-shadow: 0 0 0 .25rem rgb(12 123 171 / 25%);
}

.input-group-text {
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.5;
	background-color: #ffffff;
	border: var(--bs-border-width) solid #dee2e6;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
}

.checkRadio-bg {
	border: 1px solid #e3e6f0;
	padding: .375rem 2.25rem .375rem .75rem;
	background: #f8f9fc;
	font-size: 0.9rem;
	border: 1px solid #dee2e6;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	min-height: var(--form-input-height);
	border-radius: 0.375rem;
}

.checkRadio-bg1 {
	border: 1px solid #e3e6f0;
	padding: .375rem 2rem .375rem .75rem;
	background: #f8f9fc;
	font-size: 0.9rem;
	border: 1px solid #dee2e6;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	min-height: var(--form-input-height);
	border-radius: 0.375rem;
}

.checkRadio-bg2 {
	background-color: #f4f7fa;
	display: flex;
	align-items: center;
	border-radius: 5px;
	border-left: 3px solid #bbc7d2;
	margin-bottom: 10px;
	min-height: 48px;
	padding: 0.95rem;
}

.checkRadio-bg2 .form-check {
	margin-bottom: 0px;
}

.checkRadio-bg2 .form-check .form-check-label {
	font-size: 0.925rem;
	line-height: 1.35rem;
	color: var(--simple-darkBlue-color);
	font-weight: 600;
}

.checkRadio-normal {
	padding: .75rem 0;
	font-size: 0.9rem;
	font-weight: 600;
}

.theme-form .form-group {
	margin-bottom: 0.75rem !important;
}

.theme-form .mt-lable {
	margin-top: 1.75rem !important;
}

.theme-form .form-label {
	display: inline-block;
	margin-bottom: .5rem;
	text-transform: initial;
	font-size: 0.85rem;
	font-weight: 700;
}

.theme-form .form-label.bdr-lbl {
	width: 100%;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 2px solid;
	border-image: linear-gradient(to right, #dbe0e5, #fff) 1;
	display: flex;
	align-items: center;
	line-height: 1.25rem;
}

.theme-form .form-label.bdr-lbl span {
	background: #e8ecf0;
	padding: 3px 8px;
	border-radius: 3px;
	font-size: 0.925rem;
	margin-right: 7px;
	height: 25px;
	line-height: 19px;
	display: inline-block;
	text-align: center;
	position: relative;
}

.theme-form .form-label.bdr-lbl span i {
	position: absolute;
	top: -5px;
	left: -5px;
}

.theme-form .form-label.bdr-lbl span.success {
	background: #d9ece3;
}

.theme-form .form-label.bdr-lbl span.success i {
	color: var(--bs-success);
}

.theme-form .form-label.bdr-lbl span.warning {
	background: #fff4d4;
}

.theme-form .form-label.bdr-lbl span.warning i {
	color: var(--simple-yallow-color);
}

.theme-form .form-control,
.theme-form .form-select {
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	height: var(--form-input-height);
	min-height: var(--form-input-height);
	outline: none;
	font-size: 0.9rem;
	color: #333;
	box-sizing: border-box;
	display: block;
	background-color: #fff;
	font-weight: 500;
	opacity: 1;
	border-radius: 0.375rem;
}

.theme-form .form-control-sm,
.theme-form .form-select-sm {
	min-height: 28px !important;
	max-height: 34px;
	font-size: 0.9rem;
}

.formTitle {
	font-size: 1.25rem;
	padding: 12px;
	margin-bottom: 20px;
	background: linear-gradient(87deg, rgb(243 252 255) 0%, rgba(255, 255, 255, 0) 50%);
	color: var(--simple-blue-color);
	font-weight: 700;
	border-radius: 0.375rem;
	border-left: 3px solid #c3ecf5;
	display: flex;
	align-items: center;
}

.formTitle.orange {
	background: linear-gradient(87deg, #fff3ec 0%, #ffffff00 50%);
	color: var(--simple-orange-color);
	border-left: 3px solid #ffd9c2;
}

.formTitle.green {
	background: linear-gradient(87deg, #ecfbf4 0%, #ffffff00 50%);
	color: var(--bs-success);
	border-left: 3px solid #a8e4c8;
}

.formTitle.red {
	background: linear-gradient(87deg, #fff2f3 0%, #ffffff00 50%);
	color: var(--bs-danger);
	border-left: 3px solid #fcd4d7;
}

.formTitle i {
	font-size: 1.5rem;
}

.formTitle2 {
	font-size: 1.25rem;
	padding-bottom: 8px;
	margin-bottom: 25px;
	color: var(--simple-blue-color);
	font-weight: 400;
	border-radius: 0.375rem;
	position: relative;
}

.formTitle2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 75px;
	height: 2px;
	background: var(--simple-blue-color);
}

.ellipsTxt75 {
	text-overflow: ellipsis;
	overflow: hidden;
	width: 75px;
	white-space: nowrap;
	margin-left: 5px;
}

.ellipsTxt100 {
	text-overflow: ellipsis;
	overflow: hidden;
	width: 100px;
	white-space: nowrap;
	margin-left: 5px;
}

.ellipsTxt150 {
	text-overflow: ellipsis;
	overflow: hidden;
	width: 150px;
	white-space: nowrap;
	margin-left: 5px;
}

.fileNum {
	max-width: 200px;
}

.fileNum .btn {
	border-radius: 75px !important;
	border: 1px solid #ccc;
	width: 48px;
	height: 48px;
	font-size: 1.35rem !important;
	line-height: 1.5;
}

.fileNum .form-control {
	border-radius: 100px !important;
	border: 1px solid #ccc;
	text-align: center;
}

.pwEyeicon {
	cursor: pointer;
	position: absolute;
	right: 24px;
	top: 39px;
	font-size: 1.2rem;
	color: var(--simple-lightGray-color);
}

/*--- Button ---*/
.btn {
	border-radius: 0.375rem;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 15%);
	min-width: 48px;
}

.btn-xs {
	min-width: 36px;
	line-height: 1;
	--bs-btn-font-size: 0.925rem;
	padding: 5px;
}

.btn-lg {
	--bs-btn-padding-y: 0.75rem;
	--bs-btn-padding-x: 1.25rem;
	--bs-btn-font-size: 1.25rem;
}

.btnShadow {
	box-shadow: 0 0 15px rgb(217 217 217) !important;
}

.btnBorder {
	border: 1px solid #e3e6f0 !important;
}

.btn-close-white {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	border: none;
	background: transparent;
	padding: 10px;
	font-size: 1.15rem;
	line-height: 1.15rem;
	border-radius: 5px;
	color: #fff;
}

.btn-minHgt48px {
	min-height: 48px !important;
}

.btn-iconTxt {
	align-items: center;
	display: inline-flex;
	font-size: 0.85rem;
	font-weight: 600;
	justify-content: center;
}

.btn-iconTxt .btnTxt {
	margin-left: 0.5rem
}

.btn-iconTxt i {
	font-size: 1.35rem;
}

.btn-sm.btn-iconTxt i {
	font-size: 1.15rem;
	margin-right: 0.35rem;
}

.btn-lg.btn-iconTxt {
	font-size: 1.1rem;
}

.btn-lg.btn-iconTxt i {
	font-size: 1.65rem;
}

.btn-icon {
	display: inline-flex;
	align-items: center;
	font-size: 1.15rem;
	padding: 0.25rem;
	background-color: #f5f5f5;
}

.btn-icon:hover {
	opacity: 0.75;
}

/*--Theme Color Buttons--*/
/*--Blue Btn--*/
.btn-tmBlue {
	background: var(--simple-blue-color) !important;
	border-color: var(--simple-blue-color) !important;
	color: #fff !important;
}

.btn-tmBlue:hover {
	background: #00628e !important;
	border-color: #00628e !important;
	color: #fff !important;
}

.btn-tmBlue:focus {
	background: #00628e !important;
	border-color: #00628e !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 149 218 / 0.25);
}

.btn-outline-tmBlue {
	background: transparent;
	border-color: var(--simple-blue-color) !important;
	color: var(--simple-blue-color) !important;
}

.btn-outline-tmBlue:hover {
	background: var(--simple-blue-color) !important;
	border-color: var(--simple-blue-color) !important;
	color: #fff !important;
}

.btn-outline-tmBlue:focus {
	background: var(--simple-blue-color) !important;
	border-color: var(--simple-blue-color) !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 149 218 / 0.25);
}

/*----*/
.btn-tmDblue {
	background: var(--simple-darkBlue-color) !important;
	border-color: var(--simple-darkBlue-color) !important;
	color: #fff !important;
}

.btn-tmDblue:hover {
	background: #001c29 !important;
	border-color: #001c29 !important;
	color: #fff !important;
}

.btn-tmDblue:focus {
	background: #001c29 !important;
	border-color: #001c29 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 58 82 / 25%);
}

.btn-outline-tmDblue {
	background: transparent;
	border-color: var(--simple-darkBlue-color) !important;
	color: var(--simple-darkBlue-color) !important;
}

.btn-outline-tmDblue:hover {
	background: var(--simple-darkBlue-color) !important;
	border-color: var(--simple-darkBlue-color) !important;
	color: #fff !important;
}

.btn-outline-tmDblue:focus {
	background: var(--simple-darkBlue-color) !important;
	border-color: var(--simple-darkBlue-color) !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 149 218 / 0.25);
}

/*--Orange Btn--*/
.btn-tmOrng {
	background: var(--simple-orange-color) !important;
	border-color: var(--simple-orange-color) !important;
	color: #fff !important;
}

.btn-tmOrng:hover {
	background: #ce4c00 !important;
	border-color: #ce4c00 !important;
	color: #fff !important;
}

.btn-tmOrng:focus {
	background: #ce4c00 !important;
	border-color: #ce4c00 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(255 73 73 / 0.25);
}

.btn-outline-tmOrng {
	background: transparent;
	border-color: var(--simple-orange-color) !important;
	color: var(--simple-orange-color) !important;
}

.btn-outline-tmOrng:hover {
	background: var(--simple-orange-color) !important;
	border-color: var(--simple-orange-color) !important;
	color: #fff !important;
}

.btn-outline-tmOrng:focus {
	background: var(--simple-orange-color) !important;
	border-color: var(--simple-orange-color) !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(255 73 73 / 0.25);
}

/*----*/
.btn-tmDorng {
	background: var(--simple-darkOrange-color) !important;
	border-color: var(--simple-darkOrange-color) !important;
	color: #fff !important;
}

.btn-tmDorng:hover {
	background: #863100 !important;
	border-color: #863100 !important;
	color: #fff !important;
}

.btn-tmDorng:focus {
	background: #863100 !important;
	border-color: #863100 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 149 218 / 0.25);
}

.btn-tmDred {
	background: var(--simple-red-color) !important;
	border-color: var(--simple-red-color) !important;
	color: #fff !important;
}

.btn-tmDred:hover {
	background: #863100 !important;
	border-color: #863100 !important;
	color: #fff !important;
}

.btn-tmDred:focus {
	background: #863100 !important;
	border-color: #863100 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(0 149 218 / 0.25);
}

/*--Yellow Btn--*/
.btn-tmYellow {
	background: var(--simple-yallow-color) !important;
	border-color: var(--simple-yallow-color) !important;
	color: #fff !important;
}

.btn-tmYellow:hover {
	background: #ffa200 !important;
	border-color: #ffa200 !important;
	color: #fff !important;
}

.btn-tmYellow:focus {
	background: #ffa200 !important;
	border-color: #ffa200 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(255 193 7 / 25%);
}

.btn-outline-tmYellow {
	background: transparent;
	border-color: var(--simple-yallow-color) !important;
	color: var(--simple-yallow-color) !important;
}

.btn-outline-tmYellow:hover {
	background: var(--simple-yallow-color) !important;
	border-color: var(--simple-yallow-color) !important;
	color: #fff !important;
}

.btn-outline-tmYellow:focus {
	background: var(--simple-yallow-color) !important;
	border-color: var(--simple-yallow-color) !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(255 193 7 / 25%);
}

/*--Purple Btn--*/
.btn-tmPurple {
	background: var(--simple-purple-color) !important;
	border-color: var(--simple-purple-color) !important;
	color: #fff !important;
}

.btn-tmPurple:hover {
	background: #8447e5 !important;
	border-color: #8447e5 !important;
	color: #fff !important;
}

.btn-tmPurple:focus {
	background: #8447e5 !important;
	border-color: #8447e5 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(149 94 238 / 25%);
}

/*----*/
.btn-tmDpurple {
	background: var(--simple-darkPurple-color) !important;
	border-color: var(--simple-darkPurple-color) !important;
	color: #fff !important;
}

.btn-tmDpurple:hover {
	background: #550fc2 !important;
	border-color: #550fc2 !important;
	color: #fff !important;
}

.btn-tmDpurple:focus {
	background: #550fc2 !important;
	border-color: #550fc2 !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(149 94 238 / 25%);
}

/*--//--*/
.btn-tmLgreen {
	background: #d9f4e8 !important;
	border-color: #d9f4e8 !important;
	color: var(--bs-success) !important;
}

.btn-tmLgreen:hover {
	background: var(--bs-success) !important;
	border-color: var(--bs-success) !important;
	color: #fff !important;
}

.btn-tmLgreen:focus {
	background: var(--bs-success) !important;
	border-color: var(--bs-success) !important;
	color: #fff !important;
	box-shadow: 0 0 0 0.2rem rgb(25, 135, 84 / 0.25);
}

/*--//--*/
.btn-tmWhite {
	background: var(--simple-white-color) !important;
	color: #000;
}

.btn-tmWhite:hover {
	background: #fafafa !important;
	color: #000 !important;
	border-color: #fafafa !important;
}

/*--//--*/
.upload-btn-wrapper {
	position: relative;
	overflow: hidden;
	display: inline-block;
}

.upload-btn-wrapper input[type=file] {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
}

/*--//--*/
/*--Theme Colors--*/
/*--Text Colors--*/
.text-tmBlue {
	color: var(--simple-blue-color) !important;
}

.text-tmDblue {
	color: var(--simple-darkBlue-color) !important;
}

.text-tmMblue {
	color: var(--simple-midBlue-color) !important;
}

/*----*/
.text-tmOrng {
	color: var(--simple-orange-color) !important;
}

.text-tmDorng {
	color: var(--simple-darkOrange-color) !important;
}

.text-tmMorng {
	color: var(--simple-midOrange-color) !important;
}

/*----*/
.text-tmPurple {
	color: var(--simple-purple-color) !important;
}

.text-tmDpurple {
	color: var(--simple-darkPurple-color) !important;
}

.text-tmMpurple {
	color: var(--simple-midPurple-color) !important;
}

/*----*/
.text-tmGray {
	color: var(--simple-gray-color) !important;
}

.text-tmLightgray {
	color: var(--simple-lightGray-color) !important;
}

.text-tmYellow {
	color: var(--simple-yallow-color) !important;
}

/*--//--*/
/*--BG Colors--*/
.bg-tmBlue {
	background-color: var(--simple-blue-color) !important;
}

.bg-tmDblue {
	background-color: var(--simple-darkBlue-color) !important;
}

.bg-tmMblue {
	background-color: var(--simple-midBlue-color) !important;
}

.bg-tmLblue {
	background-color: var(--simple-lightBlue-color) !important;
}

.bg-tmSblue {
	background-color: var(--simple-skyBlue-color) !important;
}

/*----*/
.bg-tmOrng {
	background-color: var(--simple-orange-color) !important;
}

.bg-tmDorng {
	background-color: var(--simple-darkOrange-color) !important;
}

.bg-tmMorng {
	background-color: var(--simple-midOrange-color) !important;
}

.bg-tmLorng {
	background-color: var(--simple-lightOrange-color) !important;
}

/*----*/
.bg-tmPurple {
	background-color: var(--simple-purple-color) !important;
}

.bg-tmDpurple {
	background-color: var(--simple-darkPurple-color) !important;
}

.bg-tmMpurple {
	background-color: var(--simple-midPurple-color) !important;
}

.bg-tmLpurple {
	background-color: var(--simple-lightPurple-color) !important;
}

/*----*/
.bg-tmGray {
	background-color: var(--simple-gray-color) !important;
}

.bg-tmLightgray {
	background-color: var(--simple-lightGray-color) !important;
}

.bg-tmLight {
	background-color: var(--simple-light-color) !important;
}

.bg-tmYellow {
	background-color: var(--simple-yallow-color) !important;
}

/*--//--*/
.bg-primary-light {
	background-color: #e0ecff !important;
}

.bg-success-light {
	background-color: #e3f1ea !important;
}

.bg-danger-light {
	background-color: #ffe6e8 !important;
}

.bg-warning-light {
	background-color: #fff5d7 !important;
}

.bg-info-light {
	background-color: #dbf9ff !important;
}

/*--- Alerts ---*/
.alert {
	--bs-alert-padding-x: 0.75rem;
	--bs-alert-padding-y: 0.5rem;
	font-size: 0.95rem;
	border-radius: 0.275rem;
}

.alert-tmBlue {
	--bs-alert-color: var(--simple-blue-color);
	--bs-alert-bg: var(--simple-lightBlue-color);
	--bs-alert-border-color: var(--simple-blue-color);
	--bs-alert-link-color: var(--simple-blue-color);
}

.alert-tmOrng {
	--bs-alert-color: var(--simple-orange-color);
	--bs-alert-bg: var(--simple-lightOrange-color);
	--bs-alert-border-color: var(--simple-orange-color);
	--bs-alert-link-color: var(--simple-orange-color);
}

.bg-gradient-1 {
	background: #0c7bab;
	background: linear-gradient(125deg, rgb(12 123 171) 25%, rgb(224 82 0) 75%);
	color: #fff;
}

.bg-gradient-2 {
	background: #0D6EFD;
	background: linear-gradient(90deg, rgba(13, 110, 253, 1) 0%, rgba(150, 94, 238, 1) 100%);
	color: #fff;
}

.alert-dismissible .btn-close {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	padding: 0.75rem;
}

.tmAlert {
	position: relative;
	padding: 1.15rem 0.75rem 0.75rem;
	border-radius: 4px;
	background-color: #f8fdff;
	font-size: .915em;
	border: 1px solid #c0ebfe;
	border-bottom: 3px solid #c0ebfe;
}

.tmAlert .iconTitle {
	position: absolute;
	left: -1px;
	top: -12px;
	background: #c0ebfe;
	padding: 3px 15px 3px 6px;
	font-weight: 600;
	line-height: 1.15;
	border-radius: 5px 0 0 0;
	display: flex;
	align-items: center;
	color: var(--simple-darkBlue-color);
}

.tmAlert .iconTitle i {
	margin-right: 5px;
	font-size: 1rem;
}

.tmAlert .iconTitle:after {
	webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	display: block;
	content: '';
	width: 14px;
	height: 14px;
	position: absolute;
	border-left: 0;
	border-bottom: 0;
	top: 50%;
	right: -7px;
	margin-top: -7px;
	background: #c0ebfe;
}

.tmAlert ol,
.tmAlert ul {
	padding-left: 1.15rem;
	margin-bottom: 0px;
}

.tmAlert ul.blpt {
	margin-bottom: 0px;
	list-style-position: inside;
	padding-left: 2.5em;
	/* Indents the entire list item from the left */
	text-indent: -1.5em;
}

.tmAlert ul.blpt li {
	margin-bottom: 5px;
}

.tmAlert-text {
	display: flex;
	align-items: center;
	font-size: 0.75rem;
	line-height: 1rem;
	color: var(--simple-orange-color);
	background: #fff2eb;
	padding: 0.25rem 0.25rem 0.25rem 0;
	border-radius: 5px;
}

.tmAlert-text .alertTitle {
	background: var(--simple-orange-color);
	color: #fff;
	padding: 0.25rem 0.45rem;
	margin-right: 18px;
	position: relative;
	z-index: 1;
	height: 1.45rem;
}

.tmAlert-text .alertTitle:after {
	webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	display: block;
	content: '';
	width: 1rem;
	height: 1rem;
	position: absolute;
	border-left: 0;
	border-bottom: 0;
	top: 50%;
	right: -8px;
	margin-top: -8px;
	background: var(--simple-orange-color);
	z-index: -1;
}

.tmAlert-text .alertContent {
	font-weight: 500;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.topHeader {
	transition: all 0.5s;
	z-index: 1003;
	height: 80px;
	background-color: rgb(244 247 250 / 75%);
	display: flex;
	align-items: center;
	-webkit-backdrop-filter: blur(7px);
	backdrop-filter: blur(7px);
}

.topHeader .topH-left {
	display: flex;
	align-items: center;
}

.topHeader .topH-left .logoItem {
	display: flex;
	align-items: center;
	width: 275px;
	background: #ffffff;
	padding: 12px 15px;
	min-height: 80px;
	transition: all .3s ease;
}

.topHeader .topH-left .logoItem.sts-only {
	width: auto !important;
	min-width: 0 !important;
	display: flex !important;
	justify-content: flex-start !important;
	align-items: center !important;
	gap: 10px !important;
	padding-right: 14px !important;
}
.toggle-sidebar .topHeader .topH-left .logoItem {
	background: rgb(244 247 250 / 75%);
	-webkit-backdrop-filter: blur(7px);
	backdrop-filter: blur(7px);
}

.topHeader .topH-left .logo img {
	height: 30px;
	width: auto;
	margin-right: 8px;
}

.topHeader .topH-left .irsLogo img {
	width: 32px;
	height: 32px;
}

.topHeader .topH-right {
	/* display: flex; */
	/* align-items: center; */
	justify-content: space-between;
	width: 100%;
	padding: 0px 40px;
	display: block;
}

.topHeader .header-nav .nav-icon {
	color: var(--simple-blue-color);
	font-size: 24px;
	padding: 0.75rem;
	min-width: 48px;
	min-height: 48px;
	align-items: center;
	display: flex;
	position: relative;
	background: #fff;
	border-radius: 0.375rem;
}

.topHeader .header-nav .nav-icon:hover {
	color: #0c7bab;
}

.topHeader .header-nav .nav-link .navTxt {
	font-size: 0.95rem !important;
	margin-left: 5px;
	font-weight: 600;
}

.topHeader .header-nav .nav-profile {
	color: #444444;
	padding: 10px 0 10px 15px;
}

.topHeader .header-nav .nav-profile i {
	font-size: 1.35rem;
	color: #333333;
	background: #cfd3db;
	padding: 0.5rem;
	border-radius: 4px;
}

.topHeader .header-nav .nav-profile .user-avtar {
	transition: all 0.08s cubic-bezier(0.37, 0.24, 0.53, 0.99);
	height: 48px;
	width: 48px;
	border-radius: 0.375rem;
}

.topHeader .header-nav .nav-profile:hover .user-avtar {
	transform: scale(1.05);
}

.topHeader .header-nav .nav-profile span {
	margin-left: 15px;
}

.topHeader .header-nav .nav-profile span h6 {
	margin: 0;
}

.topHeader .header-nav .nav-profile:hover span,
.topHeader .header-nav .nav-profile:hover h6 {
	color: #0c7bab !important;
}

.topHeader .dropdown-menu {
	margin-top: -2px !important;
	border-top: none;
	min-width: 300px;
	background: #fff;
	padding: 0;
	border: 1px solid #eeeeee;
	border-radius: 0.375rem;
	box-shadow: 0 4px 24px 0 rgba(62, 57, 107, 0.18);
}

.topHeader .dropdown-menu.notifyMenu {
	min-width: 290px !important;
}

.topHeader .dropdown-menu.normal {
	min-width: 250px !important;
}

.topHeader .dropdown-menu.medium {
	min-width: 200px !important;
}

.topHeader .dropdown-menu.small {
	min-width: 150px !important;
}

.topHeader .notifyMenu .icon-box {
	height: 1.75rem;
	width: 1.75rem;
	border-radius: 15%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.9rem;
	text-align: center;
}

.topHeader .notifyMenu .icon-box i {
	color: #fff !important;
	font-size: 1.15rem;
	margin-right: 0;
}

.topHeader .dropdown-menu .dropdown-header {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: var(--simple-darkBlue-color);
	font-weight: 600;
	font-size: 1rem;
	border-bottom: 1px solid #dbe0e5;
}

.topHeader .list-group-item {
	padding: 16px 20px;
	border-bottom: 1px solid #dbe0e5;
}

.topHeader .dropdown-item {
	white-space: normal;
	padding: 12px 15px;
	line-height: 1.3rem;
	color: var(--simple-gray-color);
	border-radius: 0.375rem;
	font-size: 0.875rem;
	font-weight: 500;
}

.topHeader .dropdown-item.active,
.topHeader .dropdown-item:active {
	color: #1e2125;
	background-color: #e9ecef;
}

.topHeader .dropdown-item i {
	font-size: 1.45rem;
	margin-right: 8px;
}

.topHeader .userInfo h5 {
	font-size: 1.05rem;
}

.topHeader .userInfo a {

	font-size: 0.875rem;
}

.notify {
	position: relative;
	top: 0px;
	right: 0;
}

.notify .dot {
	width: 9px;
	height: 9px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	background-color: #e05200;
	position: absolute;
	right: 0;
	top: -12px;
}

.notify .blink {
	position: absolute;
	top: -19px;
	right: -7px;
	height: 23px;
	width: 23px;
	z-index: 10;
	border: 8px solid #e05200;
	border-radius: 70px;
	-moz-animation: blink 1s ease-out;
	-moz-animation-iteration-count: infinite;
	-o-animation: blink 1s ease-out;
	-o-animation-iteration-count: infinite;
	-webkit-animation: blink 1s ease-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

@-webkit-keyframes blink {
	0% {
		-webkit-transform: scale(0);
		opacity: 0
	}

	25% {
		-webkit-transform: scale(.1);
		opacity: .1
	}

	50% {
		-webkit-transform: scale(.5);
		opacity: .3
	}

	75% {
		-webkit-transform: scale(.8);
		opacity: .5
	}

	100% {
		-webkit-transform: scale(1);
		opacity: 0
	}
}

/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/
.sidebar {
	position: fixed;
	top: 60px;
	left: 0;
	bottom: 0;
	width: 275px;
	z-index: 996;
	transition: all 0.3s;
	padding: 15px 0;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #d6dae1 transparent;
	box-shadow: 0px 0px 20px rgba(1, 41, 112, 0.1);
	background-color: #ffffff;
	display: flex;
	flex-direction: column;
}

@media (max-width: 1199px) {
	.sidebar {
		left: -275px;
	}
}

.sidebar::-webkit-scrollbar {
	width: 5px;
	height: 8px;
	background-color: #fff;
}

.sidebar::-webkit-scrollbar-thumb {
	background-color: #9bddfa;
}

.toggle-sidebar-btn {
	color: #39465f;
	font-size: 1.5rem;
	line-height: 1;
	margin-left: 0px;
	border-radius: 3px;
	display: flex;
	align-items: center;
}

@media (min-width: 1200px) {

	#main,
	#footer {
		margin-left: 275px;
	}

	.toggle-sidebar .toggle-sidebar-btn .ph-fill.ph-text-outdent:before {
		content: "\ea1e";
	}
}

@media (max-width: 1199px) {
	.toggle-sidebar .sidebar {
		left: 0;
	}
}

@media (min-width: 1200px) {

	.toggle-sidebar #main,
	.toggle-sidebar #footer {
		margin-left: 0;
	}

	.toggle-sidebar .sidebar {
		left: -275px;
	}
}

.sidebar-nav {
	padding: 0;
	margin: 0;
	list-style: none;
}

.sidebar-nav li {
	padding: 0;
	margin: 0;
	list-style: none;
}

.sidebar-nav .nav-item {
	margin: 10px;
}

.sidebar-nav .nav-heading {
	font-size: 11px;
	text-transform: uppercase;
	color: #9bddfa;
	font-weight: 600;
	margin: 10px 0 5px 15px;
}

.sidebar-nav .nav-link {
	display: flex;
	align-items: center;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--simple-gray-color);
	transition: 0.3;
	padding: .875rem 1.25rem;
	border-radius: 0.55rem;
}

.sidebar-nav .nav-link[data-bs-toggle][aria-expanded=true] {
	background: #f4f7fa !important;
}

.sidebar-nav .nav-link[data-bs-toggle][aria-expanded=true] i {
	color: var(--simple-gray-color);
}

.sidebar-nav .nav-link i {
	font-size: 1.35rem;
	margin-right: 15px;
	color: var(--simple-gray-color);
}

.sidebar-nav .nav-link img {
	width: 22px;
	height: 22px;
	margin-right: 15px;
}

.sidebar-nav .nav-link .bi-chevron-right {
	font-size: 0.875rem;
	margin-right: 10px;
	color: #39465f;
}

.sidebar-nav .nav-link.active {
	color: #0c7bab !important;
	background: #eaf7fd !important;
}

.sidebar-nav .nav-link.active i {
	color: #0c7bab !important;
}

.sidebar-nav .nav-link:hover {
	color: #39465f;
	background: #f4f7fa;
}

.sidebar-nav .nav-link:hover i {
	color: #39465f;
}

.sidebar-nav .nav-link .bi-chevron-right {
	margin-right: 0;
	transition: transform 0.2s ease-in-out;
}

.sidebar-nav .nav-link:not(.collapsed) .bi-chevron-right {
	transform: rotate(90deg);
}

/*--2nd Level Menu--*/
.sidebar-nav .nav-content {
	margin: 0;
	list-style: none;
}

.sidebar-nav .nav-content a {
	display: flex;
	align-items: center;
	font-size: 0.875rem;
	line-height: 1.4;
	font-weight: 400;
	color: var(--simple-gray-color);
	transition: 0.3;
	padding: 0.5rem .75rem .5rem 1.25rem;
	transition: 0.3s;
}

.sidebar-nav .nav-content a i {
	font-size: 18px;
	line-height: 1;
	margin-right: 10px;
	color: var(--simple-lightGray-color);
}

.sidebar-nav .nav-content a:hover {
	color: var(--simple-blue-color) !important;
}

.sidebar-nav .nav-content a:hover i {
	color: var(--simple-blue-color);
}

.sidebar-nav .nav-content a .small {
	font-size: 10px;
}

.sidebar-nav .nav-content a:hover,
.sidebar-nav .nav-content a.active {
	color: #39465f;
}

.sidebar-nav .nav-content a.active i {
	background-color: #fff;
}

.sidebar-nav .nav-content a span {
	text-overflow: ellipsis;
	overflow: hidden;
	width: 175px;
	height: 1.2em;
	white-space: nowrap;
}

/*--3rd Level Menu--*/
.sidebar-nav .nav-content .nav-content {
	padding-left: 1.5rem;
	margin: 0;
}

.sidebar-nav .nav-content .nav-content a {
	font-size: 0.9rem;
	padding: 0.4rem 0.75rem 0.4rem 1rem;
}

.sidebar-nav .nav-content .nav-content a:hover {
	color: var(--simple-gray-color);
}

.sidebar-nav .nav-content .nav-content a i {
	font-size: 18px;
	line-height: 1;
	margin-right: 5px;
}

.appVersn {
	margin-top: auto;
	display: flex;
	flex-direction: row;
	padding: 15px 15px 0;
	align-items: center;
	justify-content: center;
	border-top: 1px solid #edf1f4;
	font-size: 0.85rem;
	color: var(--simple-gray-color);
}

.appVersn span {
	font-weight: 700;
	margin-left: 5px;
}

.appVersn i {
	font-size: 1.15rem;
	margin-right: 5px;
}

/*--------------------------------------------------------------
# Main
--------------------------------------------------------------*/
#main,
#mainSide {
	margin-top: 80px;
	transition: all 0.3s;
	position: relative;
	min-height: 600px;
	padding-left: 40px;
	padding-right: 40px;
	padding-top: 20px;
}

@media (max-width: 1199px) {

	#main,
	#mainSide {
		margin-top: 165px;
	}
}

/*--//--*/
/*--------------------------------------------------------------
# Page Title & Content
--------------------------------------------------------------*/
.pageTitleBar {
	padding: 10px 0 0;
	align-items: center;
}

.pageTitleBar h1 {
	font-size: 1.7rem;
	line-height: 1.85rem;
	margin: 0 0 5px;
	font-weight: 700;
	color: var(--simple-darkBlue-color);
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	/*width: 400px;*/
}

.pageTitleBar h3 {
	font-size: 1.5rem;
	line-height: 1.5rem;
	margin: 10px 0;
	font-weight: 700;
	color: var(--simple-darkBlue-color);
}

.pageTitleBar .breadcrumb {
	padding: 0;
	display: inline-flex;
	margin-bottom: 0;
	background: transparent;
	font-size: 0.825rem;
	color: var(--simple-gray-color) !important;
}

.pageTitleBar .breadcrumb a {
	color: var(--simple-gray-color) !important;
}

.pageTitleBar .breadcrumb a:hover {
	color: var(--simple-blue-color) !important;
}

.pageTitleBar .breadcrumb-item+.breadcrumb-item::before {
	content: "\f105";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 0.625rem;
	line-height: 1.25rem;
	width: 1.15rem;
}

.pageTitleBar .breadcrumb .breadcrumb-item:last-child {
	opacity: 0.5;
}

.aiAsst {
	position: fixed;
	right: 0;
	bottom: 12rem;
	z-index: 99;
}

/*.aiAsst img{
    width:56px;
}*/
/*--Info Card Style1--*/
.cardAnimate {
	-webkit-transition: all .4s;
	transition: all .4s;
}

.cardAnimate:hover {
	-webkit-transform: translateY(calc(var(--simple-grid-gutter-width) * -.15));
	transform: translateY(calc(var(--simple-grid-gutter-width) * -.15));
	-webkit-box-shadow: 0 5px 10px rgba(30, 32, 37, .12);
	box-shadow: 0 5px 10px rgba(30, 32, 37, .12);
}

.infoCard {
	box-shadow: 0px 8px 24px rgba(27, 46, 94, 0.08);
	border: 1px solid #dbe0e5;
	min-height: 125px;
	margin-bottom: 25px;
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	background: var(--simple-white-color);
}

.infoCard .card-header {
	background: #fff;
	padding: 20px;
	border-bottom: 1px dashed #c3cad2;
}

.infoCard .card-header .cardTitle {
	margin-bottom: 0px;
	font-size: 1.25rem;
	font-weight: 700;
	position: relative;
	color: var(--simple-blue-color);
}

.infoCard .card-body {
	padding: 20px;
}

.infoCard .cardIcon {
	padding: 0.75rem;
	font-size: 1.75rem;
	display: grid;
	margin-right: 15px;
	border-radius: 5px;
}

.infoCard .cardTitle h4 {
	font-size: 1.15rem;
	color: var(--simple-gray-color);
}

.infoCard .cardTitle p {
	margin-bottom: 0;
	color: var(--simple-lightGray-color);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: 600;
}

.infoCard .cardAlert {
	font-size: 0.775rem;
	font-weight: 500;
	background: var(--simple-lightOrange-color);
	color: var(--simple-orange-color);
	padding: 3px 7px;
	border-radius: 4px;
}

.infoCard .card-footer {
	background-color: rgb(248 249 252);
	border-top: 1px dashed #c3cad2;
	padding: 30px;
}

.infoCard .div-alignText {
	align-items: center;
	display: inline-flex;
	font-size: 1.05rem;
	font-weight: 600;
	margin-right: 10px;
}

.cardSubtitle {
	color: var(--simple-orange-color) !important;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5rem;
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

/*--Info Card Style2--*/
.infoCard2 {
	box-shadow: 0px 8px 24px rgba(27, 46, 94, 0.08);
	border: 1px solid #dbe0e5;
	min-height: 195px;
	margin-bottom: 25px;
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	z-index: 0;
}

.infoCard2:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 60px;
	background: url(../../img/card-abstrBG1.svg) no-repeat right top;
	z-index: -1;
}

.greenBGcard {
	border-top: 5px solid var(--bs-success);
}

.infoCard2.style2:before {
	background: url(../../img/card-abstrBG2.svg) no-repeat right top !important;
}

.yellowBGcard {
	border-top: 5px solid var(--bs-warning);
}

.infoCard2.style3:before {
	background: url(../../img/card-abstrBG3.svg) no-repeat right top !important;
}

.bsblueBGcard {
	border-top: 5px solid var(--simple-blue-color);
}

.infoCard2:after {
	content: "";
	position: absolute;
	width: 92%;
	height: 5px;
	background-color: var(--simple-blue-color);
	left: 0;
	right: 0;
	bottom: 15px;
	margin: 0 auto;
	border-radius: 25px;
	z-index: -1;
}

.infoCard2 p {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 1.75rem;
	color: var(--simple-gray-color);
}

.infoCard2 h4 {
	font-size: 1.25rem;
	font-weight: 400;
	margin-bottom: 20px;
	line-height: 1.85rem;
	min-height: 60px;
}

.infoCard2:hover .cardLink a {
	color: var(--simple-orange-color);
}

/*--Info Card Style3--*/
.infoCard3 {
	box-shadow: 0px 8px 24px rgba(27, 46, 94, 0.08);
	min-height: 95px;
	border: 1px solid #dbe0e5;
	margin-bottom: 25px;
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	z-index: 0;
}

.infoCard3:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 60px;
	background: url(../img/card-abstrBG1.svg) no-repeat right top;
	z-index: -1;
}

.infoCard3:before {
	background: url(../img/card-abstrBG4.svg) no-repeat right top !important;
}

.infoCard3 p {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--simple-gray-color);
}

.infoCard3 h4 {
	font-size: 1.25rem;
	font-weight: 400;
	margin-bottom: 0;
	line-height: 1.85rem;
}

/*---//---*/
.cardSubtitle i {
	font-size: 1.55rem;
	line-height: 1.75rem;
}

.infoText {
	display: flex;
	align-items: center;
}

.infoText .icon {
	background: #ffffff;
	padding: 8px;
	border-radius: 5px;
}

.infoText .icon i {
	font-size: 1.55rem;
	color: var(--simple-blue-color);
}

.infoText h6 {
	font-size: .875rem;
	font-weight: 400;
	color: var(--simple-gray-color);
	margin-bottom: 3px;
}

.infoText h4 {
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--simple-darkBlue-color);
	margin-bottom: 0;
}

/*----*/
.infoTextV2 {
	display: flex;
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px dashed #c0ccd7;
	margin-bottom: 45px;
}

.infoTextV2 .icon {
	background: #f3f6f9;
	padding: 8px;
	border-radius: 5px;
}

.infoTextV2 .icon i {
	font-size: 1.55rem;
	color: var(--simple-gray-color);
}

.infoTextV2 h6 {
	font-size: .875rem;
	font-weight: 400;
	color: var(--simple-gray-color);
	margin-bottom: 3px;
}

.infoTextV2 h4 {
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--simple-darkBlue-color);
	margin-bottom: 0;
}

/*---*/
.planItem {
	position: relative;
	border-right: 1px solid #d0d6dc;
}

.planItem h6 {
	color: var(--simple-lightGray-color);
}

.planItem h5 {
	font-weight: 600;
	font-size: 1.15rem;
	margin-bottom: 5px;
}

.planItem p {
	font-size: 1rem;
	font-weight: 600;
	color: #7b8691;
	margin-bottom: 0;
}

/*---//---*/
/*---Excise Tax Categories---*/
.etCategories {
	gap: 1px;
	z-index: 1;
	position: relative;
	justify-content: center;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.etCategories:before {
	top: 1px;
	left: 1px;
	right: 1px;
	bottom: 1px;
	content: '';
	z-index: -1;
	position: absolute;
	background-color: var(--bs-border-color);
}

.etCategories>li {
	height: 130px;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	width: calc(33.3% - 1px);
	justify-content: space-between;
	background-color: #fff;
	font-size: 1.15rem;
	font-weight: 600;
	padding: 0 20px;
}

.etCategories>li:hover {
	background-color: #fbfbfb;
}

.etCategories>li img {
	max-width: 140px;
	margin-right: 15px;
}

.etCategories>li span {
	line-height: 1.2;
	width: 55%;
}

.etCategories>li a {
	font-size: 1.5rem;
}

/*---Admin Theme Table---*/
.table {
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
}

.bg-transparent>:not(caption)>*>* {
	background-color: transparent;
}

.theme-table2 .table {
	color: #37474f;
	border-color: #e3e6f0;
}

.theme-table2 .table thead tr th,
.theme-table2 .table tbody tr td.empty,
.theme-table2 .table tfoot tr td {
	background: #f8f9fc;
	padding: 0.75rem;
	/*text-align: left;*/
	vertical-align: middle;
}

.theme-table2 .table tbody tr td {
	padding: 0.75rem;
	vertical-align: middle;
}

.theme-table2 .td-infoTxt {
	font-weight: 400 !important;
	font-size: 1rem;
}

.tbodyHeader th {
	background: #f8f9fc;
	padding: 0.75rem;
}

/**----**/
.theme-ddm .dropdown-item {
	font-size: 0.875rem;
	padding: 0.5rem 1rem;
}

.theme-ddm .dropdown-item i {
	font-size: 1.15rem;
}

.theme-ddm .dropdown-toggle::after {
	display: none;
}

.ph,
.ph-duotone {
	vertical-align: middle;
}

/**-- Offcanvas --**/
.offcanvas-header {
	background: var(--simple-darkBlue-color);
	color: #fff;
	padding: 0.5rem 1rem;
}

.offcanvas-header h5 {
	color: #fff;
	font-weight: 600;
	margin-bottom: 0;
}

.closeBtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 20px;
	font-size: 1.15rem;
	font-weight: 600;
	padding: 0;
	width: 40px;
	height: 40px;
	margin-left: auto;
	border: none;
	background: transparent;
}

.closeBtn:hover {
	background: #f44236;
	color: #fff !important;
	border-color: #f44236;
}

.offcanvas-body {
	padding: 0;
}

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
#footerSide {
	margin-left: 275px;
	margin-top: auto;
}

.toggle-sidebar #footerSide {
	margin-left: 0;
}

.footer {
	background: #edf1f4;
	color: var(--simple-gray-color);
	padding: 15px;
}

.fotrIcon-item {
	display: flex;
	align-items: center;
}

.fotrIcon-item i {
	font-size: 1.35rem;
	margin-right: 10px;
}

.fotrIcon-item .txt {
	font-size: 0.825rem;
	line-height: 1rem;
}

.fotrIcon-item .txt span {
	display: block;
	font-size: 0.815rem;
	line-height: 1.15rem;
	text-transform: uppercase;
}

/*---//---*/
.timeline {
	position: relative
}

.timeline:before {
	content: "";
	position: absolute;
	top: 0;
	left: 1rem;
	height: 100%;
	border-right: 2px solid #e5e5e5
}

.timeline.timeline-dark:before {
	border-right-color: #4a4a4a
}

.timeline-block {
	position: relative
}

.timeline-block:after {
	content: "";
	display: table;
	clear: both
}

.timeline-block:first-child {
	margin-top: 0
}

.timeline-block:last-child {
	margin-bottom: 0
}

.timeline-step {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	left: 0;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #fff;
	text-align: center;
	transform: translateX(-50%);
	font-size: 1rem;
	font-weight: 600;
	z-index: 1
}

.timeline-step i,
.timeline-step svg {
	line-height: 1.4
}

.timeline-content {
	margin-left: 45px;
	padding-top: .35rem;
	position: relative;
	top: -6px
}

.timeline-content h6 {
	font-size: 1.25rem;
}

.timeline-content p {
	font-size: 1.1rem;
}

.timeline-content:after {
	content: "";
	display: table;
	clear: both
}

@media (min-width: 992px) {
	.timeline:before {
		left: 50%;
		margin-left: -1px
	}

	.timeline-step {
		left: 50%
	}

	.timeline-content {
		width: 38%
	}

	.timeline-block:nth-child(2n) .timeline-content {
		float: right
	}
}

.timeline-one-side .timeline-step,
.timeline-one-side:before {
	left: 1rem;
	font-size: 1.5rem;
}

.timeline-one-side .timeline-content {
	width: auto
}

@media (min-width: 992px) {
	.timeline-one-side .timeline-content {
		max-width: 30rem
	}
}

.timeline-one-side .timeline-block:nth-child(2n) .timeline-content {
	float: none
}

.theme-table thead th {
	vertical-align: bottom;
	border-bottom: 8px solid #f1f4f6;
	font-weight: 700;
	color: #000;
	white-space: nowrap;
}

.theme-table td,
.theme-table th {
	padding: .95rem 1.05rem;
	border-top: 5px solid #f1f4f6;
	background: #fff;
	vertical-align: middle;
	font-weight: 400;
	color: var(--simple-gray-color);
	position: relative;
	font-size: 0.875rem;
}

.theme-table td .badge {
	position: absolute;
	top: 15px;
	left: 35px;
}

.table.theme-table td:first-child,
.table.theme-table th:first-child {
	border-radius: 6px 0 0 6px;
}

.table.theme-table td:last-child,
.table.theme-table th:last-child {
	border-radius: 0 6px 6px 0;
}

.table-title {
	white-space: nowrap;
}

.theme-table td i,
.theme-table2 td i {
	font-size: 1.25rem;
}

.theme-table .form-check-input {
	width: 1rem;
	height: 1rem;
	border: var(--bs-border-width) solid var(--simple-lightGray-color);
}

.theme-table .form-check-input:checked {
	background-color: var(--simple-blue-color);
	border-color: var(--simple-blue-color);
}

.theme-table .form-check-input:focus {
	box-shadow: 0 0 0 .25rem rgb(12 123 171 / 25%);
}

.actionItem {
	background-color: var(--simple-darkBlue-color);
	color: var(--simple-white-color);
	padding: .85rem 1.05rem;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.searchCard {
	background: var(--simple-white-color);
	border: 3px solid #e2e7ec;
	padding: .95rem 1.05rem;
	border-radius: var(--bs-border-radius);
}

.anim-fade-in-up {
	animation-name: fadeInUp;
	animation-duration: 300ms;
	animation-timing-function: margin cubic-bezier(0.18, 1.25, 0.4, 1), opacity cubic-bezier(0, 1, 0.4, 1);
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		margin-top: 0.75rem;
	}

	100% {
		opacity: 1;
		margin-top: 0;
	}
}

/*---//---*/
.businessInfocard {
	background: #F3FCFF;
	border: 1px solid #c8dfe9;
	box-shadow: 0px 8px 24px rgba(27, 46, 94, 0.08);
	border-radius: 12px;
}

.businessInfocard .ProfileAvtr img {
	width: 160px;
	/* border: 1px solid #dfe8ea; */
	border-radius: 4px;
	background: #fff;
}

.businessInfocard h2 {
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
	color: var(--simple-blue-color);
	font-weight: 600;
}

.businessInfocard h3 {
	font-size: 1.0rem;
	line-height: 1.55;
	margin-bottom: 1.5rem;
	color: var(--simple-gray-color);
}

.businessInfocard h5 {
	font-size: 1rem;
	line-height: 1.5;
	color: var(--simple-gray-color);
}

.businessInfocard .textSeptr {
	margin-right: .5rem !important;
	margin-left: .5rem !important;
}

.businessInfocard p {
	font-size: 0.915rem;
	line-height: 1.75;
	margin-bottom: 0;
	color: var(--simple-gray-color);
}

.businessInfocard p i {
	font-size: 1.05rem;
}

/*---//---*/
.tc-boxtags {
	list-style: none;
}

.tc-boxtags li {
	display: inline-block;
	padding-bottom: 15px;
	padding-right: 15px;
}

.tc-boxtags li label {
	display: inline-block;
	background-color: rgba(255, 255, 255, .9);
	border: 1px solid #dee2e6;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	color: var(--simple-gray-color);
	border-radius: 6px;
	padding: 12px;
	cursor: pointer;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	transition: all .2s;
	font-weight: 500;
	font-size: 0.915rem;
}

.tc-boxtags li:hover label {
	color: var(--simple-blue-color);
	border-color: var(--simple-blue-color);
	background-color: var(--simple-lightBlue-color);
}

/* Icon before the label */
.tc-boxtags li label::before {
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 12px;
	padding: 2px 6px 2px 2px;
	content: "\f067";
	/* plus icon */
	transition: transform .3s ease-in-out;
}

/* Checked (selected) state for radio */
.tc-boxtags li input[type="radio"]:checked+label::before,
.tc-boxtags li input[type="checkbox"]:checked+label::before {
	content: "\f00c";
	/* check icon */
	transition: transform .3s ease-in-out;
}

.tc-boxtags li input[type="radio"]:checked+label,
.tc-boxtags li input[type="checkbox"]:checked+label {
	border: 1px solid var(--simple-blue-color);
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	background-color: var(--simple-lightBlue-color);
	color: var(--simple-blue-color);
	transition: all .2s;
}

/* Hide native radio */
.tc-boxtags li input[type="radio"],
.tc-boxtags li input[type="checkbox"] {
	position: absolute;
	opacity: 0;
}

/*---//---*/
.tm-accordion1 .accordion-button:focus {
	box-shadow: none;
}

.tm-accordion1 .accordion-button:not(.collapsed) {
	color: #000;
	background-color: #f4f7fa;
}

.tm-accordion1 .accordion-button {
	font-size: 1rem;
	font-weight: 500;
	color: #000;
	background: #fcfcfd;
}

.tm-accordion1 .accordion-button i {
	font-size: 1.35rem;
}

.tm-accordion2 .accordion-button:focus {
	box-shadow: none;
}

.tm-accordion2 .accordion-button:not(.collapsed) {
	color: var(--simple-blue-color);
	background-color: #f8f9fc;
	border-bottom: 1px solid #dee2e6;
}

.tm-accordion2 .accordion-button {
	background-color: #f8f9fc;
	font-size: 1.15rem;
	padding: 20px 15px;
	font-weight: 600;
	color: var(--simple-darkBlue-color);
	box-shadow: unset;
}

.tm-accordion2 .accordion-button i {
	font-size: 1.45rem;
}

.tm-accordion2 .accordion-body {
	padding: 25px 20px;
}

/*---//---*/
/*---Tax Category Card---*/
.taxCategory-card {
	background: #ffffff;
	border-radius: 10px;
	padding: 15px;
	box-shadow: 0px 0px 8px 4px #eceff3;
	height: 100%;
	transition: transform .2s ease-in-out, border-color .2s ease-in-out, background-color .2s ease-in-out, box-shadow .2s ease-in-out;
	text-align: center;
}

.taxCategory-card:hover {
	transform: translateY(-.25rem);
	box-shadow: 0 .275rem .75rem -.0625rem #0b0f190f, 0 .125rem .4rem -.0625rem #0b0f1908;
}

.taxCategory-card img {
	width: 50px;
	margin-bottom: 0.5rem;
	min-height: 60px;
}

.taxCategory-card .tcc-title {
	font-size: 1.1rem;
	margin-bottom: 0;
	min-height: 1.75rem;
	display: flex;
	align-items: center;
	width: 100%;
	font-weight: 600;
	justify-content: center;
}

.selectedTax {
	border: 1px solid var(--simple-blue-color);
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	background-color: var(--simple-lightBlue-color);
	color: var(--simple-blue-color);
	border-radius: 6px;
	padding: 12px;
	font-weight: 500;
	font-size: 0.915rem;
}

.claimlistTcc .taxCategory-card .tcc-title {
	font-size: 0.95rem;
	line-height: 1.4rem;
	margin-bottom: 0;
	min-height: 1.75rem;
	display: flex;
	align-items: center;
	width: 100%;
	font-weight: 500;
}

.close-btn {
	cursor: pointer;
	color: var(--bs-danger);
	font-weight: 800;
	font-size: 1.05rem;
}

/*---//---*/
.instrucCard {
	padding: 20px;
	background: #f3fcff;
	border-bottom: 1px dashed #afd1e0;
}

.instrucCard ul {
	padding-left: 20px;
	list-style-type: square;
}

.instrucCard ul li {
	font-size: 0.925rem;
	line-height: 28px;
	margin-bottom: 10px;
}

.instrucCard ul li {
	font-size: 0.925rem;
	line-height: 28px;
	margin-bottom: 10px;
}

.instrucCard ul li::marker {
	color: var(--simple-blue-color);
}

.instrucCard ul ul {
	padding-left: 18px;
	list-style-type: circle;
}

.instrucCard ul ul li {
	font-size: 0.9rem;
	line-height: 20px;
	margin-bottom: 10px;
}

/*---Filing Proccess Timeline---*/
.filing-timeline {
	margin: 20px;
	padding: 0;
	position: relative;
}

.filing-timeline h4 {
	font-weight: 600;
	font-size: 1.05rem;
	margin-bottom: 15px;
	color: var(--simple-gray-color);
}

.filing-timeline ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.filing-timeline ul::before {
	content: "";
	position: absolute;
	top: 0;
	left: 18px;
	width: 3px;
	height: 100%;
	background: #f1f4f8;
	/* default track color */
}

.filing-timeline ul li {
	position: relative;
	margin-bottom: 25px;
	padding-left: 45px;
}

.filing-timeline ul li:last-child {
	margin-bottom: 0;
}

.filing-timeline .icon {
	position: absolute;
	left: 5px;
	top: 0;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--simple-gray-color);
	background: #f3f6f9;
	font-size: 1rem;
}

.filing-timeline .content h5 a {
	margin: 0;
	font-size: 0.825rem;
	line-height: 1.15rem;
	font-weight: 500;
	color: #000000;
}

.filing-timeline .content span {
	font-size: 0.725rem;
	color: var(--simple-gray-color);
	line-height: 0.95rem !important;
	display: block;
}

.filing-timeline .partTitle {
	text-overflow: ellipsis;
	overflow: hidden;
	width: 160px;
	white-space: nowrap;
	margin-bottom: .25rem !important;
}

/* STATUS COLORS */
.filing-timeline li.completed .icon,
.filing-timeline li.completed .content h5 a {
	color: #198754;
	font-weight: 600;
}

.filing-timeline li.working .icon,
.filing-timeline li.working .content h5 a {
	color: var(--simple-yallow-color);
	font-weight: 600;
}

.filing-timeline li.completed .content span,
.filing-timeline li.working .content span {
	color: var(--simple-gray-color);
}

/*--UL UL LI--*/
.filing-timeline ul ul::before {
	display: none;
}

.filing-timeline ul ul li {
	position: relative;
	margin-top: 5px;
	margin-bottom: 5px;
	padding-left: 0px;
	font-size: 0.725rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 175px;
}

.filing-timeline .content ul li h6 a {
	margin: 0;
	font-size: 0.825rem;
	line-height: 1.15rem;
	font-weight: 500;
	color: #000000;
}

.filing-timeline ul ul li.completed h6 a {
	color: #198754;
	font-weight: 600;
}

.filing-timeline ul ul li.working h6 a {
	color: var(--simple-yallow-color);
	font-weight: 600;
}

.timelineV2 {
	height: 475px;
	overflow-y: scroll;
	overflow-x: hidden;
}

.timelineV2 .filing-timeline ul::before {
	display: none;
}

.timelineV2 .filing-timeline .icon {
	width: 24px;
	height: 24px;
	border-radius: 4px;
}

.timelineV2 .filing-timeline ul li {
	position: relative;
	margin-bottom: 25px;
	padding-left: 37px;
}

.timelineV2 .filing-timeline ul ul {
	padding-top: 10px;
	padding-left: 10px;
}

.timelineV2 .filing-timeline ul ul li {
	position: relative;
	margin-top: 5px;
	margin-bottom: 15px;
	padding-left: 0px;
	font-size: 0.725rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 100%;
}

/*---Link List Styles---*/
.linkList {
	position: relative;
	display: block;
}

.linkList li {
	border-bottom: 2px dotted #dbe0e5;
}

.linkList li a {
	position: relative;
	padding: 0.75rem 0.75rem 0.75rem 1.75rem;
	display: block;
	color: var(--simple-darkBlue-color);
	font-size: 0.875rem;
	font-weight: 500;
}

.linkList li a:before {
	content: "\e092";
	position: absolute;
	top: 11px;
	left: 5px;
	font-family: "Phosphor" !important;
	font-size: 0.975rem;
	color: var(--simple-blue-color);
}

.linkList li a:hover {
	color: var(--simple-orange-color);
	background: #fff8f5;
	padding: 0.75rem 0.75rem 0.75rem 1.95rem;
}

.linkList li a:hover:before {
	color: var(--simple-orange-color);
}

/*---//---*/
.radioCollapse .form-check {
	background-color: #f4f7fa;
	display: flex;
	align-items: center;
	border-radius: 5px;
	border-left: 3px solid #bbc7d2;
	margin-bottom: 10px;
}

.radioCollapse .form-check-input {
	float: left;
	margin-left: -0.5em;
}

.radioCollapse .form-check .form-check-label {
	width: 99% !important;
	padding: 15px 5px;
	font-size: 0.925rem;
	line-height: 1.05rem;
	color: var(--simple-darkBlue-color);
	font-weight: 600;
}

/*---//---*/
.iconInfo-card {
	position: relative;
	display: flex;
	align-items: center;
	border: 1px dashed var(--simple-orange-color);
	border-radius: 0.375rem;
	overflow: hidden;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	background: #fff5f0;
}

.iconInfo-card .icon {
	background: var(--simple-orange-color);
	padding: 15px;
	font-size: 3rem;
	display: flex;
	align-items: center;
	color: #fff;
}

.iconInfo-card .info {
	padding: 8px 22px 8px 12px;
	color: #000;
	font-weight: 500;
	font-size: 0.95rem;
}

.iconInfo-card .info h5 {
	color: #000000;
	font-size: 1.75rem;
	font-weight: 600;
}

/*---//---*/
.collapseBar {
	padding: 10px;
	margin-bottom: 15px;
	color: #000;
	background: var(--simple-light-color);
	border-radius: 5px;
}

.collapseBar .taxName {
	font-weight: 600;
	font-size: 1.0rem;
	width: 260px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.collapseBar .taxName span {
	display: inline-block;
	color: #fff;
	background: #000;
	text-align: center;
	width: 26px;
	height: 26px;
	line-height: 2;
	margin-right: 5px;
	border-radius: 50%;
	font-size: 0.825rem;
}

.collapseBar .taxAmnt {
	margin-right: 15px;
	font-size: 1.15rem;
	font-weight: 700;
}

/*---//---*/
.reviewChk-table .table {
	color: #37474f;
	border-color: #e3e6f0;
}

.reviewChk-table .table thead tr th,
.reviewChk-table .table tfoot tr td {
	background: #f8f9fc;
	padding: 0.75rem;
	text-align: left;
	vertical-align: middle;
}

.reviewChk-table .table tbody tr td {
	padding: 0.75rem;
	vertical-align: middle;
}

.reviewChk-table .table small {
	font-weight: 600;
	color: var(--simple-lightGray-color);
	display: block;
}

.reviewChk-table .table i {
	font-size: 1.25rem;
}

.reviewChk-list {
	padding-left: 20px;
	list-style-type: square;
}

.reviewChk-list li {
	font-size: 0.925rem;
	line-height: 1.175rem;
	margin-bottom: 1rem;
}

.reviewChk-list li::marker {
	font-size: 1.25rem;
}

.reviewChk-list.postvChk li::marker {
	color: var(--bs-success);
}

.reviewChk-list.issueChk li::marker {
	color: var(--bs-danger);
}

.reviewChk-list.recomChk li::marker {
	color: var(--simple-orange-color);
}

/*---//---*/
.priceCard {
	background: #fff;
	border: 2px solid #cad2d6;
	border-radius: 10px;
	padding: 20px;
	position: relative;
	height: 100%;
}

.priceCard .pcIcon {
	background: #f1f5f7;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin-bottom: 1.25rem;
}

.priceCard .pcIcon img {
	width: 24px;
}

.priceCard .pcIcon i {
	font-size: 24px;
}

.priceCard .pcTitle {
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.45rem;
	margin-bottom: 1.25rem;
}

.priceCard .pcTitle small {
	font-size: .75em;
	font-weight: 500;
	line-height: 1;
}

.priceCard .pcAamount {
	font-size: 2.25rem;
	font-weight: 700;
	line-height: 2.5rem;
}

.priceCard .pcAamount sup {
	font-size: 1.15rem;
	font-weight: 500;
	color: #536A75;
}

.priceCard .pcInfo {
	font-size: 0.925rem;
	line-height: 1.15rem;
	font-weight: 600;
	color: #536A75;
}

.pcPopular {
	border: 2px solid var(--bs-success) !important;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1) !important;
}

.pcPopular .pcIcon {
	background: #e3f9f2 !important;
}

.pcPopular .pcFeatures-list li:before {
	color: #13b782 !important;
}

.pcPopular .BestValueIcon {
	position: absolute;
	top: 90px;
	right: 20px;
	font-size: 3.5rem;
	color: #13b782;
}

.pcPopular .pcTag {
	position: absolute;
	right: 0px;
	top: 0px;
	background: var(--bs-success);
	color: #ffffff;
	padding: 6px 25px;
	border-radius: 0 6px 0 10px;
	font-size: 0.925rem;
	line-height: 1;
	font-weight: 700;
	text-transform: uppercase;
}

.pcPopular .pcTag i {
	font-size: 1.1rem;
}

.featuresTable td,
.featuresTable th {
	padding: 1.15rem;
	vertical-align: top;
	border-top: 1px solid #dee2e6;
}

.featuresTable thead th {
	color: #000000;
	font-size: 1.05rem;
	padding: 1.05rem 1.05rem;
	font-weight: 700;
	background: #eaeff5;
	vertical-align: middle;
}

.featuresTable tbody td {
	font-weight: 600;
	font-size: 0.9rem;
}

.featuresTable tbody td i {
	font-size: 1.05rem !important;
}

.featuresTable tbody td small {
	font-size: 90% !important;
}

.info-iconCard1 {
	background: #ffe0d3;
	background: linear-gradient(90deg, #fff3ed 2%, #ffe0d3 20%, #ffe0d3 80%, #ffeee7 98%);
	padding: 20px;
	border-radius: 15px;
}

.info-iconCard1 ul {
	padding-left: 20px;
	list-style-type: none;
}

.info-iconCard1 ul li {
	line-height: 1.5;
	margin-bottom: 12px;
	list-style: disc;
	padding-left: 10px;
	font-size: 0.925rem;
}

.info-iconCard1 ul li::marker {
	color: var(--simple-orange-color);
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 0.95rem;
}

.info-iconCard2 {
	background: #E5F3F3;
	background: linear-gradient(90deg, rgba(229, 243, 243, 1) 2%, rgba(184, 230, 219, 1) 20%, rgba(184, 230, 219, 1) 80%, rgba(229, 243, 243, 1) 98%);
	padding: 20px;
	border-radius: 15px;
}

.info-iconCard2 ul {
	padding-left: 20px;
	list-style-type: none;
}

.info-iconCard2 ul li {
	line-height: 1.5;
	margin-bottom: 12px;
	list-style: disc;
	padding-left: 10px;
	font-size: 0.925rem;
}

.info-iconCard2 ul li::marker {
	color: #13b782;
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 0.95rem;
}

/*-- Theme Modal --*/
.modal-body {
	font-size: 0.925rem;
}

/*-- Theme Blue Modal --*/
.tmModal .modal-content {
	border: 5px solid #c3c3c3;
}

.tmModal .modal-content .modal-header {
	background: var(--simple-blue-color);
	border-radius: 4px 4px 0 0;
}

.tmModal .modal-header .modal-title {
	color: #fff;
}

.btn-close.btnWhite {
	--bs-btn-close-bg: url(../../img/modal-closeWhite.svg) !important;
	opacity: 1;
	background-color: #f00;
	position: absolute;
	right: -5px;
	top: -5px;
	border-radius: 5px;
}

.tmModal .modal-content .modal-footer {
	background: var(--simple-light-color);
	border: none;
	border-radius: 0 0 4px 4px;
}

/*-- Alert Info Modal --*/
.alertInfo-Modal {
	background: #fff;
	border-radius: 0.375rem;
	padding: 20px;
}

.alertInfo-Modal .modal-content {
	border: .25rem dotted #e0e5ec;
	border-radius: 0;
	text-align: center;
}

.alertInfo-Modal .modal-icon img {
	width: 126px;
	margin-bottom: 10px;
}

.alertInfo-Modal .modal-text h4 {
	font-size: 1.75rem;
	font-weight: 700;
	margin-bottom: 15px;
}

.alertInfo-Modal .modal-text p {
	font-size: 1rem;
	margin-bottom: 5px;
}

/*-- Subscription Price Modal --*/
.price-modal .modal-content {
	border: 5px solid #f1f5f7;
	border-radius: .95rem;
}

.price-modal .modal-header {
	background: #fff;
	border-radius: 10px 10px 0 0;
}

.price-modal .modal-header .modal-title {
	color: #000000;
	font-weight: 700;
}

.price-modal .modal-header small {
	color: #536A75;
	font-weight: 500;
	display: block;
	font-size: 0.85rem;
}

.btn-close.btnRed {
	--bs-btn-close-bg: url(../img/modal-closeRed.svg) !important;
	opacity: 1;
}

.btn-close:focus {
	outline: 0;
	box-shadow: none;
}

/*---//---*/
/*---Theme Toast---*/
.toast-container {
	position: fixed !important;
	top: 0;
	right: 0;
	padding: 15px;
}

.toast {
	background: var(--simple-blue-color);
	color: #fff;
	position: relative;
	border: none;
	box-shadow: 0px 0px 10px rgb(0 0 0 / 40%);
	border-radius: 0.5rem;
	overflow: hidden;
}

.toast .toast-body {
	padding: 15px;
}

.toast .toast-body .toastIcon i {
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
	cursor: pointer;
	position: relative;
	background: radial-gradient(circle at 50% 50%, #ffffff 1.25rem, #ffffff40 calc(1.25rem + 1px) 100%);
	font-size: 1.5rem;
	margin-right: 15px;
}

.toast .toast-body .toastCont h5 {
	color: #fff;
	margin: 0;
	padding: 0;
}

.toast .toast-body .toastCont p {
	margin: 0;
	padding: 0;
}

.toast .progress {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 5px;
	width: 100%;
	background-color: transparent;
}

.toast .progress-bar {
	width: 100%;
	background-color: rgb(0 0 0 / 50%);
}

@keyframes shrink {
	from {
		width: 100%;
	}

	to {
		width: 0%;
	}
}

/*---//---*/
.sumryInfo {
	position: relative;
	border-right: 1px solid #d0d6dc;
}

.sumryInfo p {
	color: var(--simple-lightGray-color);
	margin-bottom: 0;
	font-weight: 500;
}

.sumryInfo h5 {
	font-weight: 600;
	font-size: 1.15rem;
	margin-bottom: 0;
}

/*---//---*/
.submFee-card-top {
	padding: 20px 20px 0 20px;
	background: #eaf9ff;
	border-radius: 20px;
}

.submFee-card-top .sfTitle {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--simple-blue-color);
	margin-bottom: 20px;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--simple-midBlue-color);
}

.submFee-card-top .table>:not(caption)>*>* {
	background-color: transparent;
}

.submFee-card-top .couponItem {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	width: fit-content;
	margin: 0 auto;
	padding: 10px;
	border-radius: 10px;
}

.submFee-card-top .couponItem i {
	font-size: 1.6rem;
	background: var(--simple-lightBlue-color);
	color: var(--simple-blue-color);
	padding: 5px;
	border-radius: 0.375rem;
	margin-right: 10px;
}

.submFee-card-top .couponItem .btn {
	border-radius: 0.275rem;
	min-height: 32.5px;
}

.submFee-card-bot {
	background: var(--simple-lightBlue-color);
	border-top: 1px dashed var(--simple-blue-color);
	position: relative;
	border-bottom-left-radius: 12px;
	border-bottom-right-radius: 12px;
	display: flex;
	padding: 20px;
	justify-content: space-between;
	align-items: center;
}

.submFee-card-bot:before {
	content: "";
	background: #fff;
	width: 32px;
	height: 32px;
	position: absolute;
	top: -16px;
	left: -16px;
	border-radius: 100%;
}

.submFee-card-bot:after {
	content: "";
	background: #fff;
	width: 32px;
	height: 32px;
	position: absolute;
	top: -16px;
	right: -16px;
	border-radius: 100%;
}

.submFee-card-bot .iconTxt {
	font-size: 1.5rem;
	line-height: 1.5;
	display: flex;
	align-items: center;
}

.submFee-card-bot .iconTxt i {
	font-size: 2.25rem;
	margin-right: 5px;
}

/*---//---*/
/* choices search input */
.choices__inner {
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%) !important;
	border: 1px solid #dee2e6 !important;
	min-height: 48px;
	outline: none;
	font-size: 0.9rem;
	color: #333;
	box-sizing: border-box;
	display: block;
	background-color: #fff;
	font-weight: 500;
	opacity: 1;
	border-radius: 0.375rem;
}

.choices[data-type*=select-one] .choices__inner {
	padding-bottom: 7.5px;
	border-radius: 0.375rem;
}

.choices__input {
	background: url('../img/search-icon.svg') no-repeat 8px center;
	background-size: 16px;
	padding-left: 28px !important;
	/* space for icon */
}

.choices[data-type*=select-one]::after {
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	right: 15px !important;
	top: 50%;
	margin-top: -7.75px;
	pointer-events: none;
	border: solid var(--simple-gray-color) !important;
	border-width: 0 0.1rem 0.1rem 0 !important;
	display: inline-block !important;
	padding: 3px !important;
	transform: rotate(45deg) !important;
	-webkit-transform: rotate(45deg) !important;
}

.choices__button:hover {
	opacity: 1;
}

/*---//---*/
.collapse {
	transition: height 0.1s ease-in-out;
	/* speed + easing */
}

.radioTabCont {
	padding: 25px;
}

.radioTabCont h5 {
	font-size: 1.15rem;
	padding-bottom: 10px;
	font-weight: 700;
	border-bottom: 1px dashed #c3cad2;
	margin-bottom: 25px;
	color: var(--simple-darkBlue-color);
}

.dcba-card {
	cursor: pointer;
	transition: all 0.1s ease;
	border: 2px solid transparent;
	border-radius: 10px;
	position: relative;
	display: block;
	margin-bottom: 0;
}

.dcba-card input[type="radio"] {
	display: block;
	position: absolute;
	z-index: 9;
	top: 0;
	bottom: 0;
	left: 10px;
	accent-color: var(--bs-success);
}

.dcba-card input[type="radio"]:checked+.card {
	border-color: #28a745;
	background-color: #f5fff7;
	color: var(--bs-green);
}

.dcba-card .card {
	padding: 10px 16px 10px 32px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	background: var(--simple-light-color);
	border-color: #ecedf3;
}

.dcba-card .card:hover {
	border-color: #28a745;
	background-color: #f5fff7;
	color: var(--bs-green);
}

.dcba-card .card .card-icon {
	font-size: 1.75rem;
	margin-right: 10px;
}

.dcba-card .card .card-numb {
	font-size: 1rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 1px;
	margin-right: 10px;
}

.dcba-card .card .card-link {
	font-size: 0.8rem;
	line-height: 1.2;
	font-weight: 500;
	margin-bottom: 0;
	color: #000;
}

/*---//---*/
.downloadDraft-card {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	border: 1px dashed var(--simple-orange-color);
	border-radius: 0.375rem;
	overflow: hidden;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	background: #ffe5d9;
	padding: 30px;
}

.downloadDraft-card img {
	width: 212px;
}

.downloadDraft-card h3 {
	color: var(--simple-darkBlue-color);
	margin-bottom: 20px;
	font-weight: 700;
}

/*---//---*/
.amountBox {
	font-size: 1.1rem !important;
	line-height: 1;
	width: max-content;
	background: var(--simple-lightOrange-color);
	padding: 6px 12px;
	border-radius: 0.375rem;
	font-weight: 500;
	color: var(--simple-darkOrange-color);
}

/*---theme Navs and Ttabs---*/
.theme-navTab .nav-tabs {
	background: var(--simple-blue-color);
	padding: 10px;
	border-radius: 0.5rem;
	color: #fff;
}

.theme-navTab .nav-tabs .nav-link {
	color: #fff !important;
	border: none !important;
	font-weight: 500 !important;
	padding: 8px 12px;
	font-size: 0.9rem;
	border-radius: 7.5rem;
	margin: 2px;
}

.theme-navTab .nav-tabs .nav-link .wrapTxt {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 200px;
}

.theme-navTab .nav-tabs .nav-link.active {
	color: var(--simple-blue-color) !important;
	border: none !important;
}

.theme-navTab .nav-tabs .nav-link:hover {
	color: #fff !important;
	border: none !important;
	background: rgb(0 0 0 / 20%);
}

.theme-navTab .tab-content {
	padding: 15px;
}

.tabCont-title {
	padding-bottom: 10px;
	border-bottom: 1px dashed #c3cad2;
	margin-bottom: 25px;
	display: flex;
	align-items: end;
	justify-content: space-between;
}

.tabCont-title h5 {
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--simple-darkBlue-color);
	margin-bottom: 0;
}

.tabCont-title h6 {
	font-size: 0.815rem;
	font-weight: 600;
	color: var(--simple-darkBlue-color);
	margin-bottom: 0;
}

.lableBox {
	min-height: 48px;
	background: #f1f3f9;
	display: flex;
	align-items: center;
	border-radius: 0.375rem;
	font-weight: 600;
	padding: 12px;
}

.choices__list--multiple .choices__item {
	background-color: #2c9dce;
	border: 1px solid #2c9dce;
}

/*---//---*/
/*---Register & Login Page Styles---*/
.regLogin-pg {
	background: #fff;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	width: 100% !important;
}

.regLogin-pg .theme-form .form-group {
	margin-bottom: 1.15rem !important;
}

.regLogin-pg .theme-form .form-label {
	margin-bottom: .15rem !important;
}

.regLogin-pg .form-control:focus,
.regLogin-pg .form-select:focus {
	border-color: #123021;
}

.regLogin-pg .pwEyeicon {
	right: 30px;
	top: 34px;
}

.regLogin-pg .form-check-input:checked {
	background-color: #123021;
	border-color: #123021;
}

.left-pane {
	background: #dbf4ff;
	min-height: 100vh;
	height: 100%;
	padding: 2rem 8rem;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	z-index: 9;
	text-align: center;
}

.left-pane .secImage {
	width: 70%;
	margin: 0 auto 30px;
}

.left-pane h1 {
	font-weight: 700;
	font-size: 2.5rem;
	margin-bottom: 10px;
}

.left-pane h5 {
	color: var(--simple-darkBlue-color);
	font-size: 1.15rem;
	opacity: 0.85;
	line-height: 1.55;
	margin-bottom: 26px;
}

.left-pane ul {
	color: #fff;
	font-size: 0.95rem;
	opacity: 0.85;
	list-style: disc;
	margin-left: 1.05rem;
}

.left-pane ul li {
	margin-bottom: 15px;
	line-height: 1.0rem;
}

.right-pane {
	background: #ffffff;
	min-height: 100vh;
	height: 100%;
	padding: 4rem;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	z-index: 9;
}

.right-pane .logo {
	width: 200px;
	margin-bottom: 20px;
}

.right-pane h2 {
	font-weight: 800;
	text-transform: uppercase;
	font-size: 1.5rem;
	margin-bottom: 0;
}

.right-pane p {
	font-size: 0.9rem;
	font-weight: 600;
	color: #212121;
	margin-bottom: 0;
}

@media (min-width: 320px) and (max-width: 767.98px) {
	.left-pane {
		display: none;
	}

	.right-pane {
		padding: 1rem;
	}

	.right-pane .theme-form {
		width: 100% !important;
	}
}

.pwrdby {
	margin-top: auto;
	display: flex;
	flex-direction: row;
	padding: 0 15px;
	align-items: center;
	min-height: 72px;
	border-top: 1px solid #edf1f4;
	font-size: 0.75rem;
}

.pwrdby .pwrdLogo {
	width: 130px;
	margin-left: 5px;
}

.theme-form .bootstrap-select>.dropdown-toggle.bs-placeholder {
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%);
	min-height: 48px;
	outline: none;
	font-size: 0.9rem;
	color: #333;
	box-sizing: border-box;
	display: flex;
	background-color: #fff;
	font-weight: 500;
	opacity: 1;
	border-radius: 0.375rem;
	border: 1px solid #dee2e6;
}

.theme-form .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
	width: 100% !important;
}

.theme-form .bootstrap-select .dropdown-toggle:focus {
	outline: unset;
	outline: unset;
}

.bootstrap-select>.dropdown-toggle,
.bootstrap-select .btn-check:checked+.btn,
.bootstrap-select .bootstrap-select .btn.active,
.bootstrap-select .btn.show,
.bootstrap-select .btn:first-child:active,
.bootstrap-select:not(.btn-check)+.btn:active {
	background-color: #ffffff;
	border-color: #fff;
	border: 1px solid #dee2e6;
	min-height: 48px;
	font-size: 0.9rem;
}

.text-rotate90d {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) rotate(-90deg);
	white-space: nowrap;
	transform-origin: center center;
}

.th-rotate {
	position: relative;
	height: 200px;
	min-width: 42px;
	line-height: 1rem;
}


/*----Check Box----*/
.checkTax-card {
    position: relative;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: 0.3s ease;
    cursor: pointer;
    display: block;
    cursor: pointer;
}

.checkTax-card .title {
    font-weight: 700;
    font-size: 1.15rem;
}

.checkTax-card p {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--simple-lightGray-color);
}

.checkTax-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.checkTax-card .cardBody {
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0px 0px 6px 3px #eceff3;
    border-top: 3px solid var(--simple-lightGray-color);
}

.checkTax-card input[type="radio"]:checked ~ .cardBody {
    background: var(--simple-skyBlue-color);
    border-radius: 10px;
    box-shadow: 0px 0px 6px 3px var(--simple-lightBlue-color);
    border-top: 3px solid var(--simple-blue-color);
}

.checkTax-card .checkmark {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 23px;
    height: 23px;
    border-radius: 100%;
    transition: 0.3s ease;
}

/* When checked */
.checkTax-card input[type="radio"]:checked ~ .checkmark {
    background: var(--simple-blue-color) !important;
    border-color: var(--simple-blue-color) !important;
}

.checkTax-card input[type="radio"]:checked ~ .checkmark::after {
    content: "\e18a";
    font-family: "Phosphor-Fill" !important;
    position: absolute;
    color: #fff;
    font-size: 0.7755rem;
    top: 3px;
    left: 5px;
}


/*--------------------------------------------------------------
# DEVICES -- Media Queries
--------------------------------------------------------------*/
/*================================================
//--//--> SMALL DEVICES (landscape phones, 576px and up)
==================================================*/
@media (min-width: 320px) and (max-width: 767.98px) {
	.topHeader {
		height: auto;
		padding: 0px;
		display: block;
	}

	.topHeader .topH-left .logoItem {
		padding: 10px;
		border-bottom: 1px solid #eee;
		min-height: 50px;
		width: 100%;
	}

	.topHeader .header-nav .nav-profile {
		color: #444444;
		padding: 10px 15px 10px 15px;
	}

	.topHeader .header-nav .nav-profile span {
		display: none;
	}

	.topHeader .header-nav .nav-icon {
		color: var(--simple-gray-color);
		font-size: 20px;
		padding: 0.75rem;
		min-width: 48px;
		min-height: 48px;
		align-items: center;
		display: flex;
		position: relative;
	}

	.topHeader .topH-right {
		padding: 0px 15px;
	}

	.btn-iconTxt .btnTxt {
		display: none;
	}

	#main,
	#mainSide {
		padding: 15px;
	}

	.pageTitleBar {
		padding: 10px 0;
	}

	.pageTitleBar h1 {
		font-size: 1.25rem;
		line-height: 1.25rem;
		margin: 0;
	}

	.btn {
		--bs-btn-padding-x: 0.45rem;
		--bs-btn-padding-y: 0.375rem;
	}

	.infoCard {
		min-height: 100px;
		margin-bottom: 15px;
	}

	.etCategories>li {
		height: 100px;
		width: calc(100% - 1px);
	}

	.sidebar {
		left: -275px;
		z-index: 9999;
		top: 0;
	}

	.toggle-sidebar-btn {
		margin-left: auto;
		position: absolute;
		right: 15px;
	}

	#footerSide {
		margin-left: 0;
	}

	.businessInfocard .ProfileAvtr img {
		width: 125px;
		margin-bottom: 15px;
	}

	.businessInfocard h3 {
		font-size: 1.35rem;
		margin-bottom: 0.75rem;
	}

	.businessInfocard span {
		display: block;
	}

	.businessInfocard .textSeptr {
		display: none;
	}

	.pageTitleBar .breadcrumb {
		display: none;
	}

	.infoText {
		margin-bottom: 10px;
	}

	.infoText h4 {
		font-size: 0.9rem;
	}

	.infoCard .card-header,
	.infoCard .card-body,
	.infoCard .card-footer {
		padding: 12px;
	}

	.tm-accordion2 .accordion-button {
		font-size: 0.95rem;
		padding: 12px 12px;
	}

	.tm-accordion2 .accordion-body {
		padding: 15px 15px;
	}

	.btn-lg.btn-iconTxt {
		font-size: 0.9rem;
	}

	.btn-lg.btn-iconTxt i {
		font-size: 1.15rem;
	}

	.collapseBar .taxAmnt {
		margin-right: 10px;
		font-size: 1.05rem;
		font-weight: 700;
	}

	.downloadDraft-card {
		position: relative;
		display: flex;
		flex-direction: column;
	}
}

/*================================================
//--//--> MEDIUM DEVICES (tablets, 768px and up)
==================================================*/
@media (min-width: 768px) and (max-width: 1023.98px) {
	.topHeader {
		height: auto;
		padding: 0px;
		display: block;
	}

	.topHeader .topH-left .logoItem {
		padding: 10px 15px;
		min-height: 65px;
	}

	.toggle-sidebar-btn {
		margin-left: 20px;
	}

	.btn-iconTxt .btnTxt {
		display: none;
	}

	.topHeader .topH-right {
		padding: 0px 20px;
	}

	#main,
	#mainSide {
		margin-top: 130px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.etCategories>li {
		height: 100px;
		width: calc(50% - 1px);
	}

	.sidebar {
		left: -275px;
		z-index: 9999;
		top: 0;
	}

	#footerSide {
		margin-left: 0;
	}
}

/*-----*/
/*--===== New Styles 25032026 =====--*/
/*-----*/
.form-check-input[type=radio] {
    border-radius: .25em!important;
}
.check-formType {
  display: block;
  position: relative;
  width: 100%;
  height: 152px;
  margin-bottom: 10px;
}
.check-formType .radio {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
}
.check-formType .checkft-inner {
  width: 100%;
  height: 100%;
  background: #fff;
  color: #444;
  border-radius: 7px;
  text-align: center;
  padding: 30px 20px;
  cursor: pointer;
  display: block;
  border: 3px solid #e6ecf3;
  position: relative;
}
.check-formType .checkft-inner .formName {
  font-size: 1.15rem;
  font-weight: 700;
  margin-bottom: 5px;
}
.check-formType .checkft-inner .formInfo {
  user-select: none;
  font-size: 0.85rem;
  line-height: 1.25;
  color: #444;
}
.check-formType .radio:checked ~ .checkft-inner {
  border-color: var(--simple-blue-color);
  color: var(--simple-blue-color);
}
.check-formType .checkft-inner .tickMark {
  position: absolute;
  top: 0;
  left: 0;
  border: 20px solid;
  border-color: #e6ecf3 transparent transparent #e6ecf3;
  border-radius: 3px 0 0 0;
}
.check-formType .checkft-inner .tickMark:before {
  content: "";
  position: absolute;
  top: -17px;
  left: -14px;
  width: 18px;
  height: 10px;
  border: 3px solid;
  border-color: transparent transparent #fff #fff;
  transform: rotate(-45deg);
}
.check-formType .radio:checked ~ .checkft-inner .tickMark {
  border-color: var(--simple-blue-color) transparent transparent var(--simple-blue-color);
}

/*--//--*/
/*---My Filing Sidebar Card Section---*/
.myFilingCard .infoCard .card-header {
    background: #fff;
    padding: 10px 15px;
    border-bottom: 1px dashed #c3cad2;
}
.myFilingCard .infoCard .card-body {
    padding: 15px;
}
.myFilingCard .infoCard .card-header .cardTitle {
    font-size: 1.1rem;
}
.subTitle1 {
    font-size: 1rem;
    color: var(--simple-darkBlue-color);
}
.subTitle2 {
    font-size: 0.9rem;
    color: var(--simple-darkBlue-color);
	font-weight: 600;
}
/*--Form Control Styles--*/
.form-check-input[type=checkbox] {
    border-radius: .25em !important;
}
textarea.form-control {
    height: auto;
}
.characterLimit {
    position: relative;
}
.input-group-sm .input-group-text {
    font-size: 1.15rem !important;
    line-height: 1.25 !important;
    height: 34px !important;
}
.input-group-sm .form-control {
    min-height: 28px !important;
    max-height: 34px;
    font-size: 0.9rem;
    padding: 5px 10px;
}
.sticky-action {
    position: sticky;
    right: 0;
    background: #f0f2f8!important;
    z-index: 99;
    width: 70px;
    min-width: 70px;
}



/* ============= FILING INDIVIDUAL SCREEN ==================*/
/* ===== OFFER OF COVERAGE TABLE ===== */
#offerCoverageTable {
	min-width: max-content;
}

#offerCoverageTable th,
#offerCoverageTable td {
	min-width: 110px;
	padding: 6px 6px;
}

#offerCoverageTable th:first-child,
#offerCoverageTable td:first-child {
	min-width: 220px;
}

.monthlyTable {
	min-width: 1400px;
	/* or even 1600px */
}

.monthlyTable input,
.monthlyTable select {
	min-width: 90px;
}

#offerCoverageTable .oc-select {
	width: 100%;
	font-size: 13px;
	padding: 6px 32px 6px 10px;
	border: 1px solid #dee2e6;
	border-radius: 6px;
	background-color: #fff;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}

#offerCoverageTable .oc-select:focus {
	border-color: #0d8ac7;
	box-shadow: 0 0 0 0.2rem rgba(13, 138, 199, 0.15);
	outline: none;
}

.oc-info-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #e6f1fb;
	color: #185fa5;
	font-size: 15px;
	border: none;
	cursor: pointer;
	margin-left: 8px;
	vertical-align: middle;
	padding: 0;
}

.oc-info-btn:hover {
	background: #185fa5;
	color: #fff;
}

.oc-grid {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.oc-item {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 8px 10px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #f9fafb;
	font-size: 12px;
}

.oc-badge {
	font-size: 12px;
	font-weight: 600;
	color: #185fa5;
}

.oc-item span:last-child {
	color: #4b5563;
	line-height: 1.5;
}

#ocInfoModal .modal-dialog {
	max-width: 560px;
}

#ocInfoModal .modal-body {
	max-height: 70vh;
	overflow-y: auto;
	padding: 20px 24px;
}

#ocInfoModal .modal-icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: #0d8ac7;
	display: flex;
	align-items: center;
	justify-content: center;
}

#ocInfoModal .modal-icon i {
	font-size: 28px;
	color: #fff !important;
}

#ocInfoModal .modal-text h4 {
	text-align: center;
	margin-bottom: 16px;
}

#ocInfoModal .oc-grid {
	display: flex;
	flex-direction: column;
	gap: 6px;
	text-align: left;
}

#ocInfoModal .oc-item {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 8px 10px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #f9fafb;
	font-size: 12px;
}

#ocInfoModal .oc-badge {
	font-size: 12px;
	font-weight: 600;
	color: #185fa5;
}

#ocInfoModal .oc-item span:last-child {
	color: #4b5563;
	line-height: 1.5;
}

/* Fix monthly table cell widths */
.monthlyTable thead th,
.monthlyTable tbody td {
	min-width: 90px;
	white-space: nowrap;
}

.monthlyTable thead th:first-child,
.monthlyTable tbody td:first-child {
	min-width: 130px;
}

#safeHarborInfoModal .modal-dialog {
	max-width: 560px;
	/* Ensure modal width is consistent */
}

/*===safe harbor popup =============*/
#safeHarborInfoModal .modal-body {
	max-height: 70vh;
	overflow-y: auto;
	padding: 20px 24px;
}

#safeHarborInfoModal .modal-icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: #0d8ac7;
	display: flex;
	align-items: center;
	justify-content: center;
}

#safeHarborInfoModal .modal-icon i {
	font-size: 28px;
	color: #fff !important;
}

#safeHarborInfoModal .modal-text h4 {
	text-align: center;
	margin-bottom: 16px;
}

#safeHarborInfoModal .oc-grid {
	display: flex;
	flex-direction: column;
	gap: 6px;
	text-align: left;
}

#safeHarborInfoModal .oc-item {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 8px 10px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #f9fafb;
	font-size: 12px;
}

#safeHarborInfoModal .oc-badge {
	font-size: 12px;
	font-weight: 600;
	color: #185fa5;
}

#safeHarborInfoModal .oc-item span:last-child {
	color: #4b5563;
	line-height: 1.5;
}

/* ===== EDIT 1095-B PAGE ===== */
#covered-individual-table {
	font-size: 13px;
	table-layout: auto;
	min-width: 1400px;
}

#covered-individual-table thead th {
	background: #f0f7ff;
	color: #0f4c81;
	font-weight: 600;
	font-size: 13px;
	white-space: nowrap;
	vertical-align: middle;
	text-align: center;
	padding: 6px 4px;
}

#covered-individual-table tbody td {
	padding: 6px 4px;
	vertical-align: middle;
}

#covered-individual-table th:nth-child(1),
#covered-individual-table td:nth-child(1) {
	min-width: 130px;
}

#covered-individual-table th:nth-child(2),
#covered-individual-table td:nth-child(2) {
	min-width: 110px;
}

#covered-individual-table th:nth-child(3),
#covered-individual-table td:nth-child(3) {
	min-width: 120px;
}

#covered-individual-table th:nth-child(4),
#covered-individual-table td:nth-child(4) {
	min-width: 110px;
}

#covered-individual-table th:nth-child(5),
#covered-individual-table td:nth-child(5) {
	min-width: 130px;
}

/* All 12 Months checkbox column */
#covered-individual-table th:nth-child(6),
#covered-individual-table td:nth-child(6) {
	width: 60px;
}

/* Jan–Dec month columns */
#covered-individual-table th:nth-child(n+7):not(:last-child),
#covered-individual-table td:nth-child(n+7):not(:last-child) {
	width: 42px;
}

/* Action column */
#covered-individual-table th:last-child,
#covered-individual-table td:last-child {
	width: 60px;
	vertical-align: middle;
	text-align: center;
	padding: 4px !important;
}

#covered-individual-table .form-control {
	font-size: 13px;
	padding: 3px 5px;
	height: 32px;
	min-width: unset;
	width: 100%;
}

#covered-individual-table .form-check-input {
	width: 16px;
	height: 16px;
	cursor: pointer;
	border: 2px solid #9ca3af;
	margin: 0;
}

#covered-individual-table .form-check-input:checked {
	background-color: #0f84c6;
	border-color: #0f84c6;
}

.modal-error-icon {
	width: 120px;
	height: 120px;
}

#saveChoiceModal .modal-icon {
	width: 96px;
	height: 96px;
	margin: 0 auto 18px;
	border-radius: 50%;
	background: #0d8ac7;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 4px 4px 0 #3f3f46;
}

#saveChoiceModal .modal-icon i {
	font-size: 48px;
	line-height: 1;
	color: #ffffff !important;
}

.card-body .col-lg-4,
.card-body .col-lg-6,
.card-body .col-lg-3,
.card-body .col-lg-2 {
	margin-bottom: 16px;
}

.valid-feedback {
	display: none;
}

.valid-feedback.d-block {
	display: block !important;
}

.form-control::placeholder {
	color: #9ca3af;
	opacity: 1;
}

.form-control::-webkit-input-placeholder {
	color: #9ca3af;
}

.form-control:-ms-input-placeholder {
	color: #9ca3af;
}

/* ═══════════════════════════════════════════════════════
   1094-C EDIT FORM STYLES
   ═══════════════════════════════════════════════════════ */

.pageTitle {
	font-size: 28px;
	font-weight: 700;
	color: #0f4c81;
}

.formTitle {
	color: #1184c7 !important;
	font-weight: 700 !important;
}

.form-switch .form-check-input {
	width: 2.4rem;
	height: 1.2rem;
	transform: scale(1.1);
	cursor: pointer;
}

.form-switch {
	padding-left: 2.8rem;
}

.form-switch .form-check-label {
	font-size: 14px;
	margin-left: 4px;
}

/* ═══ MONTHLY TABLE 1094-C ═══ */
.monthlyTable1094c {
	table-layout: auto;
	min-width: 1600px;
}

.monthlyTable1094c td:first-child,
.monthlyTable1094c th:first-child {
	width: 220px;
	min-width: 220px;
	background: #f8f9fa;
	padding: 8px 12px !important;
}

.monthlyTable1094c td,
.monthlyTable1094c th {
	min-width: 90px;
	text-align: center;
	vertical-align: middle;
	padding: 6px 4px !important;
}

.monthlyTable1094c input[type="number"],
.monthlyTable1094c input[type="text"] {
	font-size: 12px !important;
	padding: 4px 6px !important;
	height: 34px !important;
	width: 100% !important;
}

.monthlyTable1094c thead.table-light th {
	background-color: #e8f4fd !important;
	color: #1184c7 !important;
	font-weight: 700 !important;
}

/* ═══ MODAL STYLING ═══ */
.alertInfo-Modal {
	max-width: 600px;
}

.alertInfo-Modal .modal-body {
	padding: 24px 24px 18px;
	position: relative;
}

.alertInfo-Modal .modal-footer {
	border-top: 1px solid #e5e7eb;
	justify-content: center;
	padding: 16px 24px 18px;
}

.alertInfo-Modal .btn-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 28px;
	height: 28px;
	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc3545'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
	opacity: 1;
}

.alertInfo-Modal .btn-close:hover {
	background-color: rgba(220, 53, 69, 0.1);
	transform: scale(1.1);
}

.alertInfo-Modal .btn-close:focus {
	outline: none;
	box-shadow: none;
}

/* ==== Info modal styles for 1094-C form ==== */
.alertInfo-Modal .modal-icon {
	text-align: center;
	margin: 0 auto 18px;
	background: transparent !important;
	box-shadow: none !important;
	width: auto !important;
	height: auto !important;
	display: block !important;
}

/* ==== Info modal styles for 1094-C form ==== */
.modal-info-icon-img {
	width: 92px;
	height: 92px;
	display: block;
	margin: 0 auto;
}

.alertInfo-Modal .modal-text {
	text-align: center;
}

.alertInfo-Modal .modal-text h4 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 16px;
	color: #1184c7;
}

/* ═══ INPUT FIELD STYLING ═══ */
.form-control:focus,
.form-select:focus {
	border-color: #1184c7;
	box-shadow: 0 0 0 0.2rem rgba(17, 132, 199, 0.25);
}

.form-control.is-invalid,
.form-select.is-invalid {
	border-color: #dc3545;
}

.form-control.is-invalid:focus,
.form-select.is-invalid:focus {
	border-color: #dc3545;
	box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-control.is-valid,
.form-select.is-valid {
	border-color: #28a745;
}

.form-control.is-valid:focus,
.form-select.is-valid:focus {
	border-color: #28a745;
	box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

/* ═══ INVALID/VALID FEEDBACK ═══ */
.invalid-feedback,
.valid-feedback {
	font-size: 12px;
	margin-top: 4px;
}

.invalid-feedback {
	color: #dc3545;
}

.valid-feedback {
	color: #28a745;
}

/* ═══ BUTTONS ═══ */
.btn-tmBlue {
	background-color: #1184c7;
	border-color: #1184c7;
	color: #fff;
}

.btn-tmBlue:hover {
	background-color: #0c5aa6;
	border-color: #0c5aa6;
	color: #fff;
}

.btn-outline-tmBlue {
	color: #1184c7;
	border-color: #1184c7;
}

.btn-outline-tmBlue:hover {
	background-color: #1184c7;
	border-color: #1184c7;
	color: #fff;
}

#openSaveChoiceModal1094c {
	padding: 12px 28px;
	font-size: 16px;
	border-radius: 8px;
}

/* ═══ TOAST NOTIFICATION ═══ */
.toast-container {
	z-index: 9999;
}

.toast {
	background-color: #fff;
	border: 1px solid #dee2e6;
	border-radius: 0.25rem;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

/* ═══ ERROR SUMMARY ═══ */
#formErrorSummary1094c {
	border-left: 4px solid #dc3545;
	border-radius: 4px;
}

#formErrorList1094c {
	padding-left: 20px;
}

#formErrorList1094c li {
	margin-bottom: 6px;
	font-size: 13px;
}

.alertInfo-Modal {
	max-width: 600px;
}

.alertInfo-Modal .modal-body {
	padding: 24px 24px 18px;
	position: relative;
	max-height: 70vh;
	overflow-y: auto;
}

.alertInfo-Modal .modal-footer {
	border-top: 1px solid #e5e7eb;
	justify-content: center;
	padding: 16px 24px 18px;
}

.alertInfo-Modal .btn-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 28px;
	height: 28px;
	opacity: 1;
	box-shadow: none;
}

.alertInfo-Modal .btn-close:focus {
	outline: none;
	box-shadow: none;
}

.alertInfo-Modal .modal-icon {
	width: 92px;
	height: 92px;
	margin: 0 auto 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #1184c7;
	box-shadow: 4px 4px 0 #2f2f2f;
}

.alertInfo-Modal .modal-icon i {
	font-size: 52px;
	color: #fff;
}

.dlt-icon-1 {
	margin-bottom: 0px;
	min-width: 110px;
}

.success-icon {
	margin-bottom: 0px;
	min-width: 110px;
}

.alertInfo-Modal .modal-text {
	text-align: center;
}

.alertInfo-Modal .modal-text h4 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 16px;
	color: #1184c7;
}

/*= PASSWORD EXPIRED MODE STYLES =*/
body.expired-mode #main,
#main.no-sidebar {
	margin-left: 0 !important;
	width: 100% !important;
}

body.expired-mode #footerSide {
	margin-left: 0 !important;
	width: 100% !important;
}

body.expired-mode .toggle-sidebar-btn {
	display: none !important;
}

body.expired-mode .pageTitleBar .breadcrumb li:first-child,
body.expired-mode .pageTitleBar .breadcrumb li:nth-child(2) {
	display: none !important;
}

/* --- Page Loader --- */
.loader {
	position: fixed;
	inset: 0;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 99999 !important;
	opacity: 0;
	color: #fff;
	font-size: 1.1rem;
	background: rgba(0, 0, 0, 0.35);
	backdrop-filter: blur(2px);
}

.loader.is-active {
	display: flex;
	opacity: 1;
}

.loaderBG {
	background: hsl(0deg 0% 0% / 65%);
	padding: 45px !important;
	border-radius: 15px;
	min-width: 320px;
}

.loader h2 {
	color: #fff;
	font-weight: 700;
	margin: 15px auto;
}

.loader p {
	color: #fff;
}

.custom-loader {
	position: relative;
	width: 80px;
	height: 92px;
	background: #fff;
	border-radius: 4px;
	margin: 0 auto;
	background-image: url(../../img/s5500-loader-logo.svg);
	background-size: 50px auto, cover, cover;
	background-repeat: no-repeat;
	background-position: center top 12px;
	z-index: 1999;
}

.custom-loader:before {
	content: '';
	position: absolute;
	width: 54px;
	height: 20px;
	left: 50%;
	top: 0;
	background-image:
		radial-gradient(ellipse at center, #0000 24%, #0C7BAB 25%, #0C7BAB 64%, #0000 65%),
		linear-gradient(to bottom, #0000 34%, #0C7BAB 35%);
	background-size: 8px 8px, 100% auto;
	background-repeat: no-repeat;
	background-position: center top;
	transform: translate(-50%, -65%);
	box-shadow: 0 -3px rgba(0, 0, 0, 0.25) inset;
	z-index: 1999;
}

.custom-loader:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30%;
	transform: translateX(-50%);
	width: 66%;
	height: 60%;
	background: linear-gradient(to bottom, #f79577 20%, #0000 21%);
	background-size: 100% 10px;
	animation: writeDown 2s ease-out infinite;
	z-index: 1999;
}

@keyframes writeDown {
	0% {
		height: 0%;
		opacity: 0;
	}

	20% {
		height: 0%;
		opacity: 1;
	}

	80% {
		height: 65%;
		opacity: 1;
	}

	100% {
		height: 65%;
		opacity: 0;
	}
}

/* ============ INFO ICON HOME PAGE ========*/

.numberOfForms-modal-dialog {
	max-width: 620px;
}

.numberOfForms-modal-content {
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
}

.numberOfForms-modal-body {
	padding: 20px;
}

.numberOfForms-inner-box {
	border: 4px dotted #d9e2ea;
	border-radius: 6px;
	padding: 26px 34px 30px;
	position: relative;
}

.numberOfForms-close-btn {
	position: absolute;
	top: 18px;
	right: 18px;
	border: 0;
	background: transparent;
	color: #ef3340;
	font-size: 30px;
	line-height: 1;
	z-index: 2;
}

.numberOfForms-icon-wrap {
	text-align: center;
	margin-bottom: 10px;
}

.numberOfForms-icon-img {
	width: 110px;
	height: 110px;
}

.numberOfForms-title {
	color: #1482be;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 18px;
}

.numberOfForms-text {
	color: #111;
	font-size: 18px;
	line-height: 1.55;
	max-width: 520px;
	margin: 0 auto 14px;
}

/*=========== Bulk upload page css ============*/

#btnProceed,
.bulk-back-btn {
	min-width: 160px;
}

/* CSS goes here, same as above */
.loader-container {
	opacity: 1;
	visibility: visible;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	transition: opacity 2s ease;
	/* Adjust 2s to control how slow you want the fade */
	visibility: visible;
}

/* When the loader is hidden, fade out */
.loader-container.fade-out {
	opacity: 0;
	visibility: hidden;
}

.loader-logo {
	width: 150px;
	margin-bottom: 20px;
}

.loader-spinner {
	width: 50px;
}

.bulk-footer-btn {
	min-width: 160px;
}

.bulk-footer-wrap {
	background: transparent;
	border-top: 1px solid #dee2e6 !important;
	margin-top: 24px;
	padding-top: 20px !important;
}

.bulk-instruction-dialog {
	max-width: 805px;
}

.bulk-instruction-content {
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.bulk-instruction-body {
	position: relative;
	background: #fff;
	border-radius: 4px;
	padding: 18px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.bulk-instruction-inner {
	border: 4px dotted #d9e1e8;
	padding: 18px 34px 26px;
	min-height: 640px;
}

.bulk-important-text {
	color: #d9534f;
	/* same red tone */
	font-weight: 600;
	margin-top: 10px;
}

.bulk-instruction-close {
	position: absolute;
	top: 12px;
	right: 18px;
	border: none;
	background: transparent;
	color: #dc3545;
	font-size: 44px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
}

.bulk-instruction-close:hover {
	color: #333;
}

.bulk-instruction-icon-wrap {
	margin-top: 6px;
	margin-bottom: 10px;
}

.bulk-instruction-icon-wrap {
	margin-top: 6px;
	margin-bottom: 10px;
	text-align: center;
}

.bulk-instruction-icon-img {
	width: 110px;
	height: 110px;
	display: block;
	margin: 0 auto;
}

.bulk-instruction-title {
	color: #0b7fbe;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 18px;
}

.bulk-instruction-text {
	font-size: 16px;
	line-height: 1.55;
	color: #111;
}

.bulk-instruction-text p {
	margin-bottom: 10px;
}

.bulk-instruction-text strong {
	font-weight: 700;
	color: #111;
}

/*===billing-management.html (Billing mgt screen) styles===*/

/* ── Outer card ── */
.bm-card {
	background: #fff;
	border: 1px solid #dde1e7;
	border-radius: 10px;
	position: relative;
	overflow: visible;
	box-shadow: 0 1px 6px rgba(0, 0, 0, .06);
}

/* ===== DOTTED LINE BELOW TABS (Same as 720) ===== */
.bm-card .bm-nav-wrap {
	border-bottom: none !important;
}

.bm-card .bm-nav-line {
	display: block !important;
	height: 0 !important;
	width: 100% !important;
	border-top: 1px dashed #cfd8dc !important;
	border-bottom: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.bm-card .bm-body {
	border-top: 0 !important;
}

#billingPageLoader {
	position: fixed;
	inset: 0;
	/* top/right/bottom/left 0 */
	background: rgba(0, 0, 0, 0.6);
	/* darker, semi-transparent */
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	transition: opacity 0.3s ease;
}

#billingPageLoader img {
	width: 60px;
	height: 60px;
	margin-bottom: 10px;
}

.bm-btn-green {
	background-color: #28a745 !important;
	border: none !important;
	color: #fff !important;
}

.bm-btn-green:hover {
	background-color: #218838 !important;
}

.business-dropdown {
	position: absolute;
	top: 100%;
	left: 12px;
	right: 12px;
	max-height: 320px;
	overflow-y: auto;
	background: #1f171c;
	border-radius: 8px;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .22);
	z-index: 1050;
	margin-top: 6px;
	padding: 6px 0;
}

.business-dropdown-item {
	padding: 10px 14px;
	color: #fff;
	cursor: pointer;
	font-size: 15px;
	line-height: 1.35;
}

.business-dropdown-item:hover,
.business-dropdown-item.active {
	background: rgba(255, 255, 255, .08);
}

/* ══ TAB NAV – Simple720 exact style ══
	   Full-width bottom border. Active tab has blue underline only (underline style).
	   Matches Simple720: "My Transactions | Bank/Card Management" with a full-width line below.
	*/
.bm-nav-wrap {
	background: #fff;
	border-bottom: 1px solid #d9e0e6;
	padding: 0;
}

.modal-header-custom .modal-title {
	color: #ffffff !important;
	font-weight: 700 !important;
	/* makes it bold */
}

.bm-nav {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}

.bm-tab {
	min-width: 250px;
	padding: 18px 24px;
	border: 1px solid #d9e0e6;
	border-bottom: none;
	background: #fff;
	color: #667085;
	font-size: 17px;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
}

.bm-tab+.bm-tab {
	border-left: none;
}

.bm-tab.active {
	background: #eef6fa;
	color: #0f7db7;
}

.bm-nav-line {
	display: none;
}

.bm-tab:hover:not(.active) {
	color: #1482be;
}

/* ── Content body ── */
.bm-body {
	padding: 1.25rem 1.5rem 1.5rem;
}

/* ── Search toggle button – Simple720 dark navy ── */
.bm-search-toggle {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	background: #1e2d45;
	color: #fff;
	border: none;
	border-radius: 6px;
	padding: .42rem 1.1rem;
	font-size: .88rem;
	cursor: pointer;
	transition: background .15s;
}

.bm-search-toggle:hover {
	background: #152233;
}

/* ── Search Panel ── Simple720: no outer border box, just fields in a row ── */
.bm-search-panel {
	border: 1px solid #dee2e6;
	border-radius: 8px;
	padding: 1rem 1.25rem 1.1rem;
	background: #fff;
}

.bm-lbl {
	display: block;
	font-size: .78rem;
	font-weight: 600;
	color: #495057;
	margin-bottom: .3rem;
}

/* Reset button */
.bm-btn-reset {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
	background: #fff;
	color: #495057;
	border: 1.5px solid #ced4da;
	border-radius: 6px;
	padding: .38rem .9rem;
	font-size: .85rem;
	cursor: pointer;
	transition: border-color .15s, color .15s;
	white-space: nowrap;
}

.bm-btn-reset:hover {
	border-color: #adb5bd;
	color: #212529;
}

.bm-search-panel .form-control,
.bm-search-panel .form-select {
	height: 48px;
	font-size: 0.92rem;
}

.bm-search-panel .bm-field {
	height: 46px;
	font-size: 0.92rem;
}

/* Square icon buttons */
/* Icon buttons — match Simple720 size */
.icon-sq {
	width: 46px;
	height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 6px;
	font-size: 1rem;
	cursor: pointer;
	flex-shrink: 0;
}

.bm-btn-dark {
	background: #1e2d45;
	color: #fff;
}

.bm-btn-dark:hover {
	background: #152233;
}

.bm-btn-orange {
	background: #e8600c;
	color: #fff;
	border: none;
	border-radius: 6px;
	font-size: .88rem;
	cursor: pointer;
}

.bm-btn-orange:hover {
	background: #cf540a;
}


/* ── Table wrapper – provides the outer border box ── */
.bm-tbl-wrap {
	border: 1px solid #dde1e7;
	border-radius: 6px;
	overflow: hidden;
}

.bm-tbl {
	width: 100%;
	border-collapse: collapse;
	font-size: .9rem;
}

.bm-tbl thead tr {
	border-top: none;
}

.bm-tbl th {
	padding: .8rem 1rem;
	font-size: .85rem;
	font-weight: 700;
	color: #212529;
	border-bottom: 1px solid #dde1e7;
	border-right: 1px solid #dde1e7;
	background: transparent;
	white-space: nowrap;
}

.bm-tbl th:last-child {
	border-right: none;
}

.bm-tbl td {
	padding: .75rem 1rem;
	color: #3d3d3d;
	border-bottom: 1px solid #dde1e7;
	border-right: 1px solid #dde1e7;
	vertical-align: middle;
}

.bm-tbl td:last-child {
	border-right: none;
}

.bm-tbl tbody tr:last-child td {
	border-bottom: none;
}

.bm-tbl tbody tr:hover {
	background: #f8fafb;
}

/* column alignment */
.col-amt {
	text-align: right;
}

.col-dl {
	text-align: center;
	width: 110px;
}

/* PDF icon */
.bm-pdf {
	color: #c0392b;
	font-size: 1.35rem;
	line-height: 1;
	display: inline-block;
}

.bm-pdf:hover {
	color: #922b21;
}

/* Total records */
.bm-count {
	color: #1482be;
	font-weight: 700;
}

/* Visa badge */
.visa-badge {
	display: inline-block;
	background: #1a1f71;
	color: #fff;
	font-size: .55rem;
	font-weight: 900;
	font-style: italic;
	padding: 2px 5px;
	border-radius: 3px;
	letter-spacing: .5px;
	vertical-align: middle;
}

/* Bank/Card Management like 720 */
#pane-bc {
	padding-top: 8px;
}

.bm-section-title {
	font-size: 20px;
	font-weight: 700;
	color: #111827;
}

.bm-add-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #e86a10;
	color: #fff;
	border: 2px solid #f3b07d;
	border-radius: 10px;
	padding: 8px 16px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18);
}

.bm-add-btn:hover {
	background: #d55d08;
	color: #fff;
}

.bm-manage-tbl {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}

.bm-manage-tbl thead th {
	background: #f4f6f8;
	border: 1px solid #d9e0e6;
	padding: 14px 14px;
	font-size: 14px;
	font-weight: 700;
	color: #111827;
	text-align: left;
}

.bm-manage-tbl tbody td {
	border: 1px solid #e2e8ee;
	padding: 14px 14px;
	font-size: 15px;
	color: #2f3747;
	vertical-align: middle;
}

.bm-manage-tbl .action-col {
	width: 90px;
}

.bm-manage-tbl .empty-row {
	text-align: center;
	color: #222;
	background: #fff;
}

#pane-bc .row>.col-lg-6:first-child {
	padding-right: 12px;
}

#pane-bc .row>.col-lg-6:last-child {
	padding-left: 12px;
}

.modal-header-custom {
	position: relative !important;
}

.custom-close {
	position: absolute !important;
	top: -10px !important;
	right: -10px !important;
	width: 24px !important;
	height: 24px !important;
	background: red !important;
	color: #fff !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	border-radius: 3px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 9999 !important;
}

.modal-header-custom {
	position: relative !important;
}

.custom-close {
	position: absolute !important;
	top: -10px !important;
	right: -10px !important;
	width: 24px !important;
	height: 24px !important;
	background: red !important;
	color: #fff !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	border-radius: 3px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 9999 !important;
}

.bm-section-title {
	font-size: 20px;
	font-weight: 700;
	color: #111827;
}

.bm-add-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #e96a10;
	color: #fff;
	border: 2px solid #f3b07d;
	border-radius: 10px;
	padding: 8px 14px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .15);
}

.bm-add-btn:hover {
	background: #d95e09;
	color: #fff;
}

.bm-tbl {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	background: #fff;
}

.bm-tbl thead th {
	background: #f5f7fa;
	border: 1px solid #d9e0e6;
	padding: 12px 14px;
	font-size: 15px;
	font-weight: 700;
	color: #111827;
	text-align: left;
}

.card-icon i {
	font-size: 28px;
	/* increase size of card name*/
}

.bm-tbl tbody td {
	border: 1px solid #e1e6eb;
	padding: 12px 14px;
	font-size: 15px;
	color: #333;
	vertical-align: middle;
}

.bm-tbl-wrap {
	border: none;
	border-radius: 0;
	overflow: visible;
}

.bm-card {
	background: #fff;
	border: 1px solid #dde1e7;
	border-radius: 14px;
	box-shadow: none;
}

.bm-body {
	padding: 20px 22px 26px;
}

/* Override for billing management search row only */
.bm-search-panel .scReset {
	position: static;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	padding: 4px 12px;
	border: 1.5px solid var(--simple-blue-color);
	border-radius: 50px;
	color: var(--simple-blue-color);
	background: #fff;
	text-decoration: none;
	white-space: nowrap;
	font-size: 0.85rem;
	height: 32px;
}

.bm-search-panel .scReset:hover {
	border-color: #adb5bd;
	color: #212529;
}

/*=== filer-detail-view.html styles ===*/
.action-btn-fixed {
	min-width: 140px;
	/* same width for both */
	height: 36px;
	/* same height */
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
}

.filter-reset-btn {
	position: absolute;
	top: -4px;
	font-weight: 700;
	display: flex;
	flex-direction: row;
	align-items: center;
	padding: 1px 7px;
	border: 1px solid var(--simple-blue-color);
	border-radius: 50px;
	color: var(--simple-blue-color);
	background: #fff;
	white-space: nowrap;
}

.filer-search-submit-btn {
	width: 78px;
	height: 48px;
	min-height: 48px;
	padding: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

#filer-form .invalid-feedback,
#filer-form .invalid-default-feedback,
#filer-form .invalid-req-feedback,
#filer-form .inline-required-feedback {
	color: #dc3545 !important;
}


.filer-search-submit-btn i {
	font-size: 22px;
	line-height: 1;
}

/* Make search box same as issuer */
#advSearchBox.card {
	border: 1px solid #e9ecef !important;
	border-radius: 12px;
}

/*===web-header.html ====*/
.navbar .dropdown-menu {
	min-width: 220px;
	border-radius: 0;
	padding: 0;
}

.navbar .dropdown-menu .dropdown-item {
	padding: 14px 18px;
	border-bottom: 1px solid #e9ecef;
	font-weight: 500;
}

.navbar .dropdown-menu .dropdown-item:last-child {
	border-bottom: none;
}

/*=== blogs.html ===*/
.blogImg {
	width: 100%;
	height: 220px;
	object-fit: cover;
}

.blogCont p {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/*====blogs-detail.html ====*/
.blogDetails {
	background: #fff;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
}

.blogDetails .bcImag {
	height: 360px;
	overflow: hidden;
	border-radius: 18px 18px 0 0;
}

.blogDetails .bcImag img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.blogDetails .bcCont {
	padding: 32px;
}

.blogDetails .bcCont h1 {
	font-size: 34px;
	line-height: 1.25;
	margin-bottom: 24px;
}

.blogDetails .bcCont p {
	font-size: 17px;
	line-height: 1.8;
	margin-bottom: 22px;
}

.blogDetails .bcCont h2,
.blogDetails .bcCont h3 {
	color: #e94b00;
	margin-top: 34px;
	margin-bottom: 18px;
	font-size: 24px;
}

.blogDetails .bcCont ul {
	padding-left: 28px;
	margin-bottom: 24px;
}

.blogDetails .bcCont li {
	font-size: 17px;
	line-height: 1.8;
	margin-bottom: 10px;
}

.bcDate {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #005a78;
	color: #fff;
	padding: 8px 14px;
	border-radius: 6px;
	margin-top: -52px;
	position: relative;
	z-index: 2;
}

.side-Listmenu,
.floatSidebox {
	border-radius: 10px;
	overflow: hidden;
}

.floatSidebox {
	position: sticky;
	top: 110px;
}

.sidebar-blueCard {
	padding: 28px;
	border-radius: 10px;
}

.priceRow {
	display: flex;
	align-items: baseline;
	gap: 6px;
	margin-bottom: 15px;
}

.priceRow .price {
	font-size: 28px;
	font-weight: 700;
	color: #fff;
}

.priceRow .per {
	font-size: 14px;
	color: #cfe8f3;
}

.recentBlogsBox {
	border: 0;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.recentBlogsBox .card-header {
	background: #566f7a;
	color: #fff;
	font-size: 1.05rem;
	font-weight: 700;
	padding: 14px 16px;
	text-transform: uppercase;
}

.recentBlogsBox .list-group-item {
	padding: 14px 16px;
	border-color: #e5e8eb;
}

.recentBlogsBox .list-group-item a {
	display: flex;
	align-items: flex-start;
	color: #0c7bab;
	font-size: 0.95rem;
	line-height: 1.5;
}

.recentBlogsBox .list-group-item i {
	margin-top: 4px;
	color: #0c7bab;
}

.blogShareBar,
.blogBottomBar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 0;
}

.blogBottomBar {
	border-top: 1px solid #e5e8eb;
	margin-top: 30px;
}

.blogShareBar .share,
.blogBottomBar .share {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	font-weight: 600;
}

.blogShareBar .share a,
.blogBottomBar .share a {
	color: #506b78;
	font-size: 16px;
}

.blogShareBar .share a:hover,
.blogBottomBar .share a:hover,
.blogBottomBar .readMore a:hover {
	color: #e05200;
}

.blogBottomBar .readMore a {
	color: #e05200;
	font-weight: 600;
}

/*===web-header.html===*/
.theme-header .resources-menu {
	min-width: 240px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 1px solid #ddd !important;
	box-shadow: none !important;
	background: #fff !important;
	overflow: hidden !important;
}

.theme-header .resources-menu li {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.theme-header .resources-menu li {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.theme-header .resources-menu .dropdown-item {
	padding: 18px 20px !important;
	border: none !important;
	text-decoration: none !important;
}

.theme-header .resources-menu::before,
.theme-header .resources-menu::after,
.theme-header .resources-menu li::before,
.theme-header .resources-menu li::after,
.theme-header .resources-menu .dropdown-item::before,
.theme-header .resources-menu .dropdown-item::after {
	display: none !important;
	content: none !important;
}

.theme-header .resources-menu {
	min-width: 240px !important;
	padding: 0 !important;
	margin-top: 0 !important;
	height: 58px !important;
	min-height: 58px !important;
	max-height: 58px !important;
	overflow: hidden !important;
}

/* Kill any remaining line completely */
.theme-header .resources-menu,
.theme-header .resources-menu * {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Specifically remove Bootstrap dropdown top separator */
.theme-header .dropdown-menu {
	border-top: 0 !important;
}

/* Remove any anchor underline/dotted line */
.theme-header .dropdown-menu a,
.theme-header .dropdown-menu a:hover,
.theme-header .dropdown-menu a:focus {
	text-decoration: none !important;
	border: none !important;
	outline: none !important;
}

.theme-header .dropdown-toggle::after {
	display: none !important;
}

.theme-header .resources-menu .dropdown-item {
	display: block !important;
	padding: 18px 20px !important;
	margin: 0 !important;
	line-height: 22px !important;
	height: auto !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
}

/*==== bulk-error-log styles ====*/
/* Main container */
.bulk-error-box {
	background: #fff;
	border: 1px solid #f1b7bd;
	border-radius: 6px;
	margin-top: 16px;
	margin-bottom: 16px;
	overflow: hidden;
	max-height: 260px;
}

.bulk-error-box.d-none {
	display: none !important;
}

.bulk-error-header {
	background: #f8d7da;
	border-bottom: 1px solid #f1b7bd;
	padding: 10px 14px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.bulk-error-title {
	margin: 0;
	font-size: 15px;
	font-weight: 700;
	color: #842029;
}

.bulk-error-container {
	max-height: 200px;
	overflow-y: auto;
	overflow-x: hidden;
}

.bulk-error-table {
	width: 100% !important;
	table-layout: fixed !important;
	border-collapse: collapse !important;
	margin: 0 !important;
}

.bulk-error-table th,
.bulk-error-table td {
	padding: 9px 12px !important;
	font-size: 14px;
	line-height: 1.4;
	vertical-align: top !important;
	white-space: normal !important;
	word-break: break-word !important;
}

.bulk-error-table th:first-child,
.bulk-error-table td:first-child {
	width: 25% !important;
}

.bulk-error-table th:last-child,
.bulk-error-table td:last-child {
	width: 75% !important;
}

.bulk-error-table thead th {
	background: #fff5f5;
	color: #842029;
	font-weight: 700;
	border-bottom: 1px solid #f1b7bd;
}

.bulk-error-table tbody tr {
	border-bottom: 1px solid #f1b7bd;
}

.bulk-error-table tbody td:first-child {
	color: #333;
	/* clr black */
	font-weight: 700;
	/* font bold*/
}

.bulk-error-table tbody td:last-child {
	color: #333;
}

.footer-email-link {
	font-size: 15px;
	font-weight: 500;
}


/* card-list.html styles */
.payment-card-fixed {
	width: 340px;
	height: 64px;
	display: block;
}

.payment-card-fixed .saved-card-content {
	width: 100%;
	height: 100%;
	border: 1px solid #e6e9ef;
	border-radius: 6px;
	background: #fff;
	display: grid;
	grid-template-columns: 18px 28px 1fr 18px;
	align-items: center;
	column-gap: 8px;
	padding: 0 12px;
}

.payment-card-fixed input[type="radio"] {
	margin: 0 !important;
	position: static !important;
}

.payment-card-fixed .card-icon,
.payment-card-fixed .empty-card-icon {
	width: 28px;
	min-width: 28px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.payment-card-fixed .card-icon i {
	font-size: 22px;
	width: 28px;
	text-align: center;
	line-height: 1;
}

.payment-card-fixed .card-numb {
	text-align: left;
	font-weight: 600;
	white-space: nowrap;
}

.payment-card-fixed .card-link {
	justify-self: end;
}

/*=== delete-modal.html ====*/
.same-btn {
	min-width: 110px;
}

/*===card-input.html===*/
/* card-input.html */
.name-min-3.is-invalid,
.billing-address-min.is-invalid,
.city-min-2.is-invalid,
#zipCodeModal.is-invalid {
	border-color: #dc3545 !important;
	background-image: none !important;
	padding-right: 0.75rem !important;
}

.name-min-3.is-valid,
.billing-address-min.is-valid,
.city-min-2.is-valid,
#zipCodeModal.is-valid {
	border-color: #198754 !important;
}

/*===bank-input.html===*/
.bank-name-min-3.is-invalid,
.bank-billing-address-min.is-invalid,
.bank-city-min-2.is-invalid,
#zipCodeBankModal.is-invalid {
	border-color: #dc3545 !important;
	background-image: none !important;
	padding-right: 0.75rem !important;
}

.bank-name-min-3.is-valid,
.bank-billing-address-min.is-valid,
.bank-city-min-2.is-valid,
#zipCodeBankModal.is-valid {
	border-color: #198754 !important;
}

/*===payment-option2.html===*/
#addCardModal .name-min-3.is-invalid,
#addCardModal .billing-address-min.is-invalid,
#addCardModal .city-min-2.is-invalid,
#addCardModal #zipCodeModal.is-invalid {
	border-color: #dc3545 !important;
	background-image: none !important;
	padding-right: 0.75rem !important;
}

#addCardModal .name-min-3.is-invalid,
#addCardModal .billing-address-min.is-invalid,
#addCardModal .city-min-2.is-invalid,
.credit-inline-wrapper .name-min-3.is-invalid,
.credit-inline-wrapper .billing-address-min.is-invalid,
.credit-inline-wrapper .city-min-2.is-invalid {
	border-color: #dc3545 !important;
	background-image: none !important;
	padding-right: 0.75rem !important;
}

/*====email.html=====*/
#individual-form input[name='email']~.invalid-feedback,
#individual-form input[name='email']~.invalid-default-feedback,
#individual-form input[name='email']~.invalid-req-feedback,
#individual-form input[name='email']~.invalid-duplicate-feedback {
	color: #dc3545 !important;
	font-size: 0.875em;
	margin-top: 0.25rem;
	display: block;
}

/*====home.html =====*/
.infoCard2 .cardContent {
	min-height: 165px;
	display: flex;
	flex-direction: column;
}

.infoCard2 .cardContent h4 {
	min-height: 72px;
	margin-bottom: 10px;
}

.infoCard2 .cardLink {
	margin-top: auto;
	padding-bottom: 22px;
	position: relative;
	z-index: 2;
}

/*=== filing-summary.html ===*/

.infoTextV2 {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 0;
	padding-bottom: 0;
}

.infoTextV2 h6 {
	margin-bottom: 2px;
}

.infoTextV2 h4 {
	margin-bottom: 0;
}

.filing-details-grid {
	row-gap: 8px !important;
}

.infoCard .row.g-3 {
	--bs-gutter-y: 0.5rem;
}

.formTitle {
	margin-bottom: 10px !important;
}

.download-send-row {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.download-send-row .formTitle {
	margin-bottom: 24px !important;
}

.action-btn-row {
	min-height: 42px;
	display: flex;
	align-items: flex-start;
	column-gap: 16px;
	row-gap: 8px;
	flex-wrap: nowrap;
}

.action-btn-row .col-auto {
	padding: 0;
	margin-bottom: 0 !important;
}

.action-btn-row .btn {
	font-size: 13px;
	padding: 8px 16px;
	white-space: nowrap;
}

.send-email-col {
	padding-left: 100px;
}

.sendMailBtn {
	width: 250px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	border-radius: 8px;
}


/*===plan-information.html===*/

.financial-year-box {
	height: 48px;
	padding: 0 16px;
}

.proceedBtn,
.previousBtn {
	min-width: 165px !important;
	height: 52px !important;
	border-radius: 8px !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 22px !important;
}

.full-divider {
	margin-left: -32px;
	margin-right: -32px;
}

.full-divider hr {
	border-top: 2px dotted #cfd4da !important;
	opacity: 1 !important;
}

.formTypeBox {
	min-width: 180px;
	min-height: 76px;
	padding: 14px 18px;
	border: 1px solid #d9e1ea;
	border-radius: 8px;
	background: #f8fafc;
	display: flex;
	align-items: flex-start;
	cursor: pointer;
}

.formTypeBox small {
	color: #0086c9;
}

#returnReportOptions {
	row-gap: 12px;
}

.return-report-check {
	min-height: 48px;
	height: 100%;
	padding: 12px 14px;
	display: flex;
	align-items: center;
}

.return-report-check .form-check {
	width: 100%;
}

.return-report-check .form-check-input {
	flex: 0 0 auto;
	margin-top: 0 !important;
}

.return-report-check .form-check-label {
	line-height: 22px;
}

#returnReportOptions {
	align-items: stretch;
}

#returnReportOptions .form-label {
	min-height: 42px;
	display: flex;
	align-items: flex-end;
}

#returnReportOptions .checkRadio-bg {
	min-height: 48px;
}

#returnReportOptions .checkRadio-bg {
	min-height: 48px;
}

/* C / D / E row layout */
.part-label {
	min-width: 20px;
	font-size: 15px;
	color: #374151;
}

/* Part D multi-select dropdown */
.partd-multiselect {
	position: relative;
	width: 100%;
}

.partd-selected-display {
	min-height: 42px;
	border: 1px solid #ced4da;
	border-radius: 6px;
	padding: 6px 12px;
	background: #fff;
	cursor: pointer;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
	user-select: none;
}

.partd-selected-display.open {
	border-color: #0d6efd;
	box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, .15);
}

.partd-tag {
	background: #e0f0ff;
	color: #0063cc;
	border-radius: 4px;
	padding: 2px 8px;
	font-size: 13px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.partd-tag-remove {
	cursor: pointer;
	font-size: 15px;
	line-height: 1;
	color: #0063cc;
}

.partd-options-panel {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #ced4da;
	border-radius: 6px;
	z-index: 999;
	padding: 8px 0;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.10);
}

.partd-option {
	padding: 8px 16px;
	cursor: pointer;
	font-size: 14px;
}

.partd-option:hover {
	background: #f0f7ff;
}

.partd-option input[type="checkbox"] {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
	cursor: pointer;
}

.partd-multiselect {
	max-width: 100%;
}

/* make 5500 section size same like 720 */
#returnReportOptions .col-lg-3 {
	width: 25%;
}


#returnReportOptions .checkRadio-bg {
	height: 48px !important;
	min-height: 48px !important;
	padding: 12px 14px !important;
	display: flex;
	align-items: center;
}

#returnReportOptions .form-check {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 0;
}

#returnReportOptions .form-check-input {
	width: 18px;
	height: 18px;
	margin: 0 !important;
}

#returnReportOptions .form-label {
	min-height: unset !important;
	margin-bottom: 10px !important;
	font-weight: 700 !important;
}

/* same 720 helper text look */
#returnReportOptions .text-tmGray {
	font-size: 15px !important;
	line-height: 24px !important;
	display: block !important;
}

#returnReportOptions .text-tmGray i {
	font-size: 20px !important;
	margin-right: 4px;
	vertical-align: middle;
}

#returnReportOptions .ez-last-row .form-label {
	min-height: 48px !important;
	display: flex;
	align-items: flex-end;
}

.formTypeGroupBox,
.returnInfoBox {
	border: 1px solid #dfe7ef !important;
	background: #fbfdff !important;
	border-radius: 10px !important;
	padding: 18px !important;
}


.returnBlockHeading {
	font-size: 1.25rem !important;
	padding: 12px 14px !important;
	background: linear-gradient(87deg, rgb(243 252 255) 0%, rgba(255, 255, 255, 0) 55%) !important;
	color: #0c7bab !important;
	font-weight: 700 !important;
	border-radius: 6px !important;
	border-left: 3px solid #c3ecf5 !important;
}

/* Form type box */
.formTypeGroupBox {
	border: 1px solid #dfe7ef !important;
	background: #fbfdff !important;
	border-radius: 10px !important;
	padding: 18px !important;
	margin-top: 0px !important;
}

/* ===============================
   RETURN / REPORT TYPE - FINAL
================================ */

.returnReportWrapper {
	margin-top: 24px !important;
	margin-bottom: 18px !important;
}

.returnReportWrapper .sectionHeading {
	margin-bottom: 22px !important;
}

/* outer box like previous page */
.returnReportInnerBox {
	border: 1px solid #dfe7ef !important;
	border-radius: 10px !important;
	padding: 18px 18px 20px !important;
	background: #ffffff !important;
}

/* remove Bootstrap row extra issue */
#returnReportOptions {
	margin-left: -8px !important;
	margin-right: -8px !important;
	row-gap: 14px !important;
}

/* equal columns */
#returnReportOptions>[class*="col-"] {
	padding-left: 8px !important;
	padding-right: 8px !important;
}

/* label above each checkbox */
#returnReportOptions .form-label {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #111827 !important;
	line-height: 1.25 !important;
	min-height: 36px !important;
	margin-bottom: 8px !important;
	display: flex !important;
	align-items: flex-start !important;
}

/* yes checkbox box */
#returnReportOptions .checkRadio-bg {
	min-height: 48px !important;
	height: 48px !important;
	padding: 0 14px !important;
	border: 1px solid #dfe4ea !important;
	border-radius: 7px !important;
	background: #f8f9fc !important;
	display: flex !important;
	align-items: center !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;
}

/* checkbox alignment */
#returnReportOptions .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 10px 0 0 !important;
	flex-shrink: 0 !important;
}

/* Yes text */
#returnReportOptions .form-check-label {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #111827 !important;
}

/* description line below each box */
#returnReportOptions .return-help-text {
	margin-top: 10px !important;
	font-size: 15px !important;
	line-height: 1.45 !important;
	color: #263755 !important;
	display: flex !important;
	align-items: flex-start !important;
	gap: 8px !important;
}

#returnReportOptions .return-help-text i {
	font-size: 18px !important;
	color: #263755 !important;
	margin-top: 2px !important;
	flex-shrink: 0 !important;
}

/* mobile */
@media (max-width: 991px) {
	#returnReportOptions .form-label {
		min-height: auto !important;
	}
}

/* ===== COMMON SECTION HEADING STYLE ===== */
.returnReportWrapper::before,
#returnReportOptions .col-lg-12.mb-3::before {

	font-size: 1.25rem;
	padding: 12px 14px;

	background: linear-gradient(87deg, rgb(243 252 255) 0%, rgba(255, 255, 255, 0) 55%);
	color: #0c7bab;
	font-weight: 700;
	border-radius: 6px;
	border-left: 3px solid #c3ecf5;
}

.returnReportWrapper {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* reduce gap below Additional Filing Information */
#returnReportOptions>.col-lg-12.mt-3 {
	margin-top: 0px !important;
}

#returnReportOptions .row.g-3.align-items-start {
	margin-top: 0 !important;
}

.returnReportWrapper .form-group {
	margin-top: 0px !important;
	/* controls exact gap below heading */
}

/* ===== ADDITIONAL FILING INFORMATION ===== */
.returnReportWrapper::before {
	/*content:"Additional Filing Information";*/
	display: block;

	margin-bottom: 0 !important;
	margin-top: 6px !important;
}

/* ===== RETURN REPORT BOX ===== */
#returnReportOptions .col-lg-12.mb-3 {
	border: 1px solid #dfe7ef !important;
	background: #fbfdff !important;
	border-radius: 10px !important;
	padding: 18px !important;

	margin-top: 110px !important;
	/* creates heading gap */

	position: relative;
}

/* ===== RETURN REPORT TYPE HEADING ===== */
#returnReportOptions .col-lg-12.mb-3::before {
	content: "Return / Report Type";
	position: absolute;

	top: -86px !important;
	/* SAME SPACING STYLE */

	left: 0;
	width: 420px;
}

/* YES / NO RADIO STYLE */
.yesNoRadioWrap {
	display: flex;
	align-items: center;
	gap: 28px;
	height: 48px;
}

.yesNoRadioBox {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	min-width: auto !important;
	height: auto !important;
	font-weight: 500;
	cursor: pointer;
}

.yesNoRadioBox input[type="radio"] {
	width: 18px;
	height: 18px;
	margin: 0 !important;
}

.addInfoCompactRow {
	column-gap: 18px !important;
}

.addInfoCompactRow>.col-lg-3 {
	width: 30% !important;
	flex: 0 0 30% !important;
}

/*===basic-plan-information.html===*/

.custom-check {
	width: 20px !important;
	height: 20px !important;
	cursor: pointer !important;
	border: 2px solid #0d6efd !important;
	border-radius: 4px !important;
	box-shadow: none !important;
}

.custom-check:checked {
	background-color: #0d6efd !important;
	border-color: #0d6efd !important;
}

.form-check-label {
	font-size: 16px !important;
	color: #212529 !important;
	cursor: pointer !important;
}

.form-group {
	margin-bottom: 1rem;
}

.formTitle {
	margin-bottom: 0;
	padding-top: 0.5rem;
	padding-bottom: 0.75rem;
}

/* This ensures the same bottom gap after EVERY section heading */
.col-lg-12.mt-4 .formTitle {
	margin-bottom: 22px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.col-lg-12.mt-4.mb-1 {
	margin-bottom: 0.2rem !important;
}

.sponsor-helper-text {
	font-size: 12px !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	color: #6c757d !important;
	margin-top: 2px !important;
}

.label-two-line {
	min-height: 42px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	gap: 2px !important;
}

.label-two-line small {
	font-size: 12px !important;
	line-height: 1.2 !important;
	font-weight: 400 !important;
	color: #6c757d !important;
}

.col-lg-12.mt-4.mb-1 {
	margin-bottom: 0.75rem !important;
}

/* FORM 5558 - SAME ALIGNMENT AS OTHER FORMS */
.form-5558-wrapper {
	padding: 0 !important;
}

.form-5558-wrapper .row {
	margin-left: -12px !important;
	margin-right: -12px !important;
}

.form-5558-wrapper [class*="col-lg-"] {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.form-5558-wrapper .formTitle {
	margin-bottom: 24px !important;
}

.form-5558-wrapper .form-group {
	margin-bottom: 24px !important;
}

/* Align SECURE Act label with other labels in the row */
#returnReportOptions .col-lg-4>.form-label {
	display: flex !important;
	align-items: flex-end !important;
	min-height: 48px !important;
	margin-bottom: 8px !important;
}

/* SAME ALIGNMENT FOR ALL SECTION HEADINGS */
.formTitle {
	display: flex !important;
	align-items: center !important;
	min-height: 44px !important;
	line-height: 44px !important;

	padding: 0 14px !important;
	margin-bottom: 22px !important;
	/* proper gap below heading */
}

/* section wrapper spacing */
.col-lg-12.mt-4.mb-1 {
	margin-bottom: 0.8rem !important;
}

/* remove unwanted extra spacer rows */
.col-lg-12.pt-3 {
	padding-top: 0 !important;
}

/* Ensure consistent spacing for all dropdowns in Part C/D/E row */
#returnReportOptions .col-lg-4 .form-select {
	min-height: 42px;
}

.filingInfoWrapper {
	margin-bottom: 0px !important;
}

/* reduce gap between Filing Information fields and next section */
.filingInfoWrapper .form-group {
	margin-bottom: 0 !important;
}

.filingInfoWrapper .formTitle {
	margin-bottom: 18px !important;
}

.filingInfoWrapper .row#filingInfoOptions {
	margin-bottom: 0 !important;
}

.yesNoRadioWrap {
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
	min-height: 48px !important;
}

.yesNoRadioBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	margin: 0 !important;
}

/* ===============================
   FILING INFORMATION - ALIGN FIX
================================ */
/* ===============================
   FILING INFORMATION FINAL ALIGNMENT
================================ */

.filingInfoWrapper {
	margin-bottom: 0px !important;
}

.filingInfoWrapper .formTitle {
	margin-bottom: 24px !important;
}

/* reduce space before Plan Sponsor Information */
.filingInfoWrapper+.col-lg-12.mt-4,
.filingInfoWrapper+.row .col-lg-12.mt-4 {
	margin-top: 12px !important;
}

/* if Plan Sponsor heading is directly after filing wrapper */
.filingInfoWrapper+.formTitle,
.filingInfoWrapper+div .formTitle {
	margin-top: 0 !important;
}

/* use bootstrap row, not custom grid */
#filingInfoOptions,
.filingInfoRow {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	margin-left: -12px !important;
	margin-right: -12px !important;
}

/* restore bootstrap column padding */
#filingInfoOptions>[class*="col-"] {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

/* label single line */
#filingInfoOptions .form-label {
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	margin-bottom: 10px !important;
	color: #111827 !important;
}

.filing-nowrap-label {
	white-space: nowrap !important;
}

/* radio row */
.yesNoRadioWrap {
	height: 48px !important;
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
}

/* radio item */
.yesNoRadioBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	height: 48px !important;
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

/* multiselect same as input height */
.filing-multiselect {
	width: 100% !important;
	position: relative !important;
}

.filing-selected-display {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 7px !important;
	background: #ffffff !important;
	padding: 0 12px !important;
	display: flex !important;
	align-items: center !important;
	font-size: 15px !important;
	box-shadow: 0 1px 4px 0px rgb(0 0 0 / 5%) !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* prevent 3rd field from looking shifted */
.secure-act-field {
	padding-left: 8px !important;
}

/* mobile */
@media (max-width: 991px) {
	.filing-nowrap-label {
		white-space: normal !important;
	}

	#filingInfoOptions>[class*="col-"] {
		margin-bottom: 18px !important;
	}

	.secure-act-field {
		padding-left: 0 !important;
	}
}

/* ===============================
   FILING UNDER MULTI SELECT
================================ */

.filing-multiselect {
	position: relative !important;
	width: 100% !important;
}

.filing-selected-display {
	min-height: 48px !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 7px !important;
	background: #ffffff !important;
	padding: 8px 12px !important;
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	flex-wrap: wrap !important;
	cursor: pointer !important;
	font-size: 15px !important;
}

.filing-selected-display:focus,
.filing-selected-display.open {
	border-color: #12a8df !important;
	box-shadow: 0 0 0 3px rgba(18, 168, 223, 0.15) !important;
}

.filing-options-panel {
	position: absolute !important;
	top: 52px !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 9999 !important;
	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 7px !important;
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12) !important;
	padding: 8px 0 !important;
}

.filing-option {
	padding: 8px 12px !important;
	font-size: 15px !important;
}

.filing-option:hover {
	background: #f1f8fc !important;
}

.filing-option input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	margin: 0 !important;
}

.filing-tag {
	background: #e8f4ff !important;
	color: #0072bc !important;
	border-radius: 5px !important;
	padding: 3px 7px !important;
	font-size: 13px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
}

.filing-tag-remove {
	font-weight: 700 !important;
	cursor: pointer !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/*===sf-part7-part8.html===*/
.infoCard .card-body {
	padding: 32px !important;
}

.theme-form .form-group {
	margin-bottom: 24px !important;
}

.formTitle {

	margin-bottom: 28px !important;
}

/* ===== TAX PERIOD & PLAN INFO html styles ===== */

.taxPeriodPlanCard {
	border-radius: 12px !important;
	border: 1px solid #dfe7ef !important;
	box-shadow: none !important;
	margin-top: 0 !important;
}

.taxPeriodPlanCard .card-body {
	padding: 34px 34px 28px !important;
}

#fiscalDateGroup {
	display: none !important;
}

/* FISCAL YEAR DATE BOX - GRAY BORDER */
#fiscalDateGroup.showFiscalDates {
	display: inline-flex !important;
	align-items: center !important;
	gap: 12px !important;
	white-space: nowrap !important;

	background: #ffffff !important;
	border: 1px solid #d6dde5 !important;
	border-radius: 14px !important;
	padding: 10px 13px !important;

	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05) !important;
}

/* SAME AS OTHER SCREENS */

.sectionHeading {
	font-size: 1.25rem !important;
	padding: 12px 14px !important;
	margin-bottom: 22px !important;
	background: linear-gradient(87deg,
			rgb(243 252 255) 0%,
			rgba(255, 255, 255, 0) 55%) !important;
	color: #0c7bab !important;
	font-weight: 700 !important;
	border-radius: 6px !important;
	border-left: 3px solid #c3ecf5 !important;
	display: flex !important;
	align-items: center !important;
}

.formSection {
	padding: 0 !important;
}

.taxPeriodLine {
	display: grid !important;
	grid-template-columns: 255px 1fr auto !important;
	align-items: center !important;
	column-gap: 18px !important;
	margin-bottom: 16px !important;
}

.radioLabel {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	white-space: nowrap !important;
}

.radioLabel label {
	margin: 0 !important;
}

.taxPeriodPlanCard .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
}

/* Modern soft connector instead of dotted line */
/* Professional timeline connector */
/* Professional gray timeline connector */
.dottedLine {
	position: relative !important;
	height: 1px !important;
	border: none !important;
	background: linear-gradient(90deg,
			transparent 0%,
			#eef1f4 18%,
			#c9d2dc 50%,
			#eef1f4 82%,
			transparent 100%) !important;
}

.dottedLine::before,
.dottedLine::after {
	content: "" !important;
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 7px !important;
	height: 7px !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	border: 2px solid #b8c4cf !important;
}

.dottedLine::before {
	left: 22% !important;
}

.dottedLine::after {
	right: 22% !important;
}

.taxYearText {
	font-size: 15px !important;
	white-space: nowrap !important;
	color: #111827 !important;
}

.taxYearText strong {
	font-weight: 800 !important;
}

.orText {
	margin: -5px 0 16px 38px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #697586 !important;
}

.dateGroup {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	white-space: nowrap !important;
	border-color: #d6dde5 !important;
}

.dateBox {
	position: relative !important;
	width: 245px !important;
}

.dateBox label {
	position: absolute !important;
	top: -9px !important;
	left: 12px !important;
	background: #fff !important;
	padding: 0 6px !important;
	font-size: 12px !important;
	color: #64748b !important;
	z-index: 2 !important;
}

.dateBox .form-control {
	height: 48px !important;
	border-radius: 10px !important;
	border: 1px solid #cfd7df !important;
	background-color: #f8fafc !important;
	font-size: 15px !important;
	font-weight: 650 !important;
	padding-left: 14px !important;
	color: #102033 !important;
	box-shadow: none !important;
}

.endingText {
	font-size: 16px !important;
	font-weight: 500 !important;
}

.sectionDivider {
	border-top: 1px solid #d8dee8 !important;
	opacity: 1 !important;
	margin: 32px 0 28px !important;
}

.taxPeriodPlanCard .form-label {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #111827 !important;
	margin-bottom: 8px !important;
}

.taxPeriodPlanCard .form-control,
.taxPeriodPlanCard .form-select {
	height: 50px !important;
	border-radius: 7px !important;
	border: 1px solid #d8dee8 !important;
	font-size: 15px !important;
	box-shadow: none !important;
}

.taxPeriodPlanCard .form-control:focus,
.taxPeriodPlanCard .form-select:focus,
#fiscalDateGroup .dateBox .form-control:focus,
.dateBox .form-control:focus {
	border-color: #9aa8b5 !important;
	box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.12) !important;
}

.proceedBtn {
	min-width: 165px !important;
	height: 52px !important;
	border-radius: 8px !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* WHEN FISCAL DATES ARE HIDDEN */
.fiscalLine {
	margin-bottom: 34px !important;
}

/* WHEN FISCAL DATES ARE SHOWN */
/* FISCAL YEAR DATE BOX - SAME BLUE BORDER AS CALENDAR BOX */
#fiscalDateGroup.showFiscalDates {
	display: inline-flex !important;
	align-items: center !important;
	gap: 12px !important;
	white-space: nowrap !important;
	background: #ffffff !important;
	padding: 10px 13px !important;
	border: 1px solid #d6dde5 !important;
	border-radius: 14px !important;
	box-shadow: 0 3px 10px rgba(15, 23, 42, 0.04) !important;
}

/* Each date field wrapper */
#fiscalDateGroup .dateBox {
	width: 245px !important;
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 5px !important;
}

/* Fiscal date input focus */
#fiscalDateGroup .dateBox .form-control:focus {
	border-color: #9aa8b5 !important;
	box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.12) !important;
}

/* Label should sit cleanly above input */
#fiscalDateGroup .dateBox label {
	position: static !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 0 0 4px !important;

	font-size: 12px !important;
	line-height: 1 !important;
	font-weight: 700 !important;
	color: #60758a !important;
}

/* Input alignment */
#fiscalDateGroup .dateBox .form-control {
	width: 100% !important;
	height: 44px !important;
	border-radius: 10px !important;
	border: 1px solid #cfd7df !important;
	background-color: #f8fafc !important;

	color: #102033 !important;
	font-size: 15px !important;
	font-weight: 650 !important;

	padding: 8px 12px !important;
	box-shadow: none !important;
}

/* and ending text */
/* Center text */
#fiscalDateGroup .endingText {
	align-self: end !important;
	height: 44px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	color: #102033 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	padding-bottom: 1px !important;
}

.fiscalLine:has(#fiscalDateGroup.showFiscalDates) {
	margin-bottom: 18px !important;
}

.calendarYearDropdownBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	white-space: nowrap !important;
	background: #ffffff !important;
	border: 1px solid #d6dde5 !important;
	border-radius: 14px !important;
	padding: 9px 13px !important;
	box-shadow: 0 3px 10px rgba(15, 23, 42, 0.04) !important;
}

.taxYearSelect {
	width: 92px !important;
	height: 42px !important;
	border-radius: 10px !important;
	border: 1px solid #cfd7df !important;
	background-color: #f8fafc !important;
	color: #073b5c !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	padding: 6px 30px 6px 12px !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

#calendarYearRange {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #102033 !important;
}

@media (max-width: 1200px) {
	.taxPeriodLine {
		grid-template-columns: 1fr !important;
		row-gap: 10px !important;
	}

	.dottedLine {
		display: none !important;
	}

	.dateGroup {
		flex-wrap: wrap !important;
	}
}

.formSection:first-of-type .sectionHeading {
	margin-bottom: 6px !important;
}

.formSection:nth-of-type(2) .sectionHeading,
.formSection .sectionHeading {
	margin-bottom: 28px !important;
}

/* Tax Period heading stays tight */
.formSection:first-of-type .sectionHeading {
	margin-bottom: 20px !important;
}

/* Plan Information — extra gap below heading before the fields */
.formSection:has(#formType) .sectionHeading {
	margin-bottom: 28px !important;
}

/* Return / Report Type heading — more gap before inner box */
.returnReportWrapper .sectionHeading {
	margin-bottom: 28px !important;
}

/* Inner box inside Return/Report — slight top breathing room */
.returnReportInnerBox {
	padding: 22px 20px 24px !important;
}

/* =====================================================
   PART II LINE 6-10 - FINAL CLEAN TAXZERONE STYLE
===================================================== */

.partII5500Wrapper {
	width: 100% !important;
}

/* Main white block */
.simplePdfBlock {
	border: none !important;
	border-radius: 0 !important;
	background: #ffffff !important;
	overflow: visible !important;
	margin-bottom: 10px !important;
	box-shadow: none !important;
}

/* Section title/header */
.simplePdfHeader {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
	padding: 14px 0 13px !important;
	background: transparent !important;
	border-bottom: 1px solid #dfe5ec !important;
	color: #061b3a !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
}

.simplePdfHeaderNo {
	min-width: 20px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
}

.simplePdfHeader strong {
	font-weight: 800 !important;
	color: #061b3a !important;
}

.simplePdfHeader small {
	color: #64748b !important;
	font-size: 12px !important;
	font-weight: 500 !important;
}

/* Body */
.simplePdfBody {
	display: flex !important;
	align-items: stretch !important;
	background: #ffffff !important;
}

.simplePdfSideLabel {
	display: none !important;
}

.simplePdfLines {
	flex: 1 !important;
	width: 100% !important;
	padding: 10px 0 !important;
}

/* Main line row */
.simplePdfLine {
	display: grid !important;
	grid-template-columns: 42px minmax(470px, 1fr) 265px !important;
	align-items: center !important;
	column-gap: 16px !important;
	min-height: 48px !important;
	padding: 4px 0 !important;
	border-bottom: none !important;
}

/* left number: a(1), a(2), b */
.lineNo {
	font-size: 13px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	white-space: nowrap !important;
	text-align: right !important;
	padding-right: 4px !important;
}

/* line description */
.lineDesc {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #172b4d !important;
	line-height: 1.45 !important;
}

/* bold calculated line description */
.calculatedLine .lineDesc {
	font-weight: 800 !important;
	color: #061b3a !important;
}

/* right number + input */
.lineInput {
	display: grid !important;
	grid-template-columns: 48px 210px !important;
	align-items: center !important;
	column-gap: 8px !important;
	justify-self: end !important;
	position: relative !important;
}

/* remove old top label */
.lineInput label {
	display: none !important;
}

/* right side number: 6a(1), 6b */
.inputLineNo {
	font-size: 13px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	text-align: right !important;
	white-space: nowrap !important;
}

/* textbox */
.lineInput input {
	width: 210px !important;
	height: 39px !important;
	border-radius: 7px !important;
	border: 1px solid #d6e0ea !important;
	background: #ffffff !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 650 !important;
	padding: 0 13px !important;
	outline: none !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
}

.lineInput input:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.14) !important;
}

/* calculated readonly input */
.lineInput input[readonly] {
	background: #fffdf3 !important;
	border-color: #e5cf7a !important;
	color: #061b3a !important;
}

/* divider after line 6 */
.section-ruler {
	border: none !important;
	border-top: 1px dashed #cbd5e1 !important;
	opacity: 1 !important;
	margin: 18px 0 18px !important;
}

/* line 7 spacing */
.smallBlock .simplePdfLines {
	padding-top: 8px !important;
	padding-bottom: 14px !important;
}

/* Code section line 8 */
.codeBlock {
	margin-top: 4px !important;
}

.codeBlock .simplePdfLines {
	padding: 6px 0 18px !important;
}

.codeLine {
	display: grid !important;
	grid-template-columns: 42px 1fr !important;
	column-gap: 16px !important;
	align-items: flex-start !important;
	padding: 10px 0 8px !important;
}

.codeContent {
	width: 100% !important;
}

.codeContent .lineDesc {
	margin-bottom: 10px !important;
	color: #172b4d !important;
	font-weight: 500 !important;
}

.code-box-row {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 7px !important;
}

.code-box {
	width: 34px !important;
	height: 34px !important;
	text-align: center !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 7px !important;
	background: #f8fafc !important;
	color: #061b3a !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	padding: 0 !important;
	outline: none !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
}

.code-box:focus {
	border-color: #0b8ec2 !important;
	background: #ffffff !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.12) !important;
}

.softDivider {
	border-top: 1px dashed #d6dce3 !important;
	margin: 14px 0 8px !important;
}

/* Line 9 and 10 tables */
.chk-table,
.sched-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border: 1px solid #dbe4ee !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	background: #ffffff !important;
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04) !important;
}

.chk-table th,
.sched-table th {
	background: #fbfdff !important;
	color: #003c5f !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	padding: 13px 16px !important;
	border-bottom: 1px solid #e4e9ef !important;
}

.chk-table td,
.sched-table td {
	padding: 12px 16px !important;
	border-bottom: 1px solid #edf1f4 !important;
	font-size: 14px !important;
	color: #172b4d !important;
	vertical-align: top !important;
}

.chk-table tr:last-child td,
.sched-table tr:last-child td {
	border-bottom: none !important;
}

.chk-table input[type="checkbox"],
.sched-row input[type="checkbox"] {
	width: 17px !important;
	height: 17px !important;
	accent-color: #0b8ec2 !important;
}

.sched-row {
	display: flex !important;
	align-items: flex-start !important;
	gap: 9px !important;
	margin-bottom: 10px !important;
	line-height: 1.45 !important;
}

.sched-row:last-child {
	margin-bottom: 0 !important;
}

.sched-row>span:first-child {
	min-width: 30px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
}

.sched-small-input {
	width: 64px !important;
	height: 24px !important;
	border: 0 !important;
	border-bottom: 1px solid #94a3b8 !important;
	background: transparent !important;
	outline: none !important;
	padding: 0 4px !important;
	font-size: 12px !important;
}

/* Better gap before line 9 cards */
.row.mt-4 {
	margin-top: 22px !important;
}

/* Responsive */
@media (max-width: 1200px) {
	.simplePdfLine {
		grid-template-columns: 36px 1fr !important;
		row-gap: 8px !important;
		padding: 7px 0 !important;
	}

	.lineInput {
		grid-column: 2 !important;
		grid-template-columns: 48px 210px !important;
		justify-self: start !important;
		max-width: 270px !important;
	}

	.lineInput input {
		width: 210px !important;
	}

	.codeLine {
		grid-template-columns: 36px 1fr !important;
	}
}

/* ===============================
   FILING INFORMATION C/D/E
================================ */

.filingInfoWrapper {
	margin-top: 34px !important;
}

.checkOptionCard {
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
}

.yesNoRadioWrap {
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
	min-height: 48px !important;
}

.yesNoRadioBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	height: 48px !important;
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

.filing-multiselect {
	width: 100% !important;
	position: relative !important;
}

.filing-selected-display {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	padding: 0 12px !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	font-size: 15px !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
	cursor: pointer !important;
}

.filing-options-panel {
	position: absolute !important;
	left: 0 !important;
	top: 52px !important;
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12) !important;
	z-index: 50 !important;
	padding: 8px !important;
}

.filing-option {
	padding: 8px 6px !important;
	border-radius: 6px !important;
}

.filing-option:hover {
	background: #f1f7fb !important;
}

.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 20px !important;
	padding: 3px 8px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* ===============================
   PREVIOUS FILING INFORMATION
================================ */

.previousFilingWrapper {
	margin-top: 34px !important;
}

.previousFilingQuestionCard {
	background: #ffffff !important;
	border: 1px solid #e0e8f1 !important;
	border-radius: 12px !important;
	padding: 18px 20px !important;
	box-shadow: 0 5px 16px rgba(15, 23, 42, 0.04) !important;
}

.previousFilingQuestion {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	line-height: 1.45 !important;
	margin-bottom: 6px !important;
}

.previousFilingHelp {
	font-size: 13px !important;
	color: #64748b !important;
	line-height: 1.5 !important;
}

#previousFilingChanged {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background-color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #061b3a !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

.previousFilingDetailsCard {
	margin-top: 18px !important;
	padding: 18px !important;
	background: #fbfdff !important;
	border: 1px dashed #bfd3e6 !important;
	border-radius: 12px !important;
}

.previousFilingDetailsCard .form-label {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	margin-bottom: 8px !important;
}

.previousFilingDetailsCard .form-control {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #061b3a !important;
}

.previousFilingDetailsCard .form-control:focus,
#previousFilingChanged:focus,
.filing-selected-display:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.12) !important;
}

@media (max-width: 991px) {

	.filingInfoWrapper,
	.previousFilingWrapper {
		margin-top: 24px !important;
	}

	.previousFilingQuestionCard,
	.previousFilingDetailsCard {
		padding: 16px !important;
	}
}

/* =====================================================
   FIX: FILING INFO + PREVIOUS FILING CLEAN SEPARATION
   Add at END of tax-period-plan-info.css
===================================================== */

/* Common section spacing */
.taxPeriodPlanCard .formSection {
	margin-bottom: 34px !important;
}

.taxPeriodPlanCard .formSection:last-of-type {
	margin-bottom: 22px !important;
}

/* Heading spacing */
.taxPeriodPlanCard .sectionHeading {
	margin-bottom: 24px !important;
}

/* =====================================================
   FILING INFORMATION SECTION
===================================================== */

.filingInfoWrapper {
	margin-top: 36px !important;
	margin-bottom: 42px !important;
	clear: both !important;
}

.filingInfoWrapper .returnReportInnerBox {
	border: 1px solid #dfe8f2 !important;
	border-radius: 12px !important;
	background: #ffffff !important;
	padding: 24px 22px !important;
	box-shadow: 0 5px 16px rgba(15, 23, 42, 0.035) !important;
	overflow: visible !important;
}

/* Make C D E columns clean */
#filingInfoOptions {
	row-gap: 24px !important;
	align-items: flex-start !important;
}

/* Each C/D/E column */
#filingInfoOptions>.col-lg-4,
#filingInfoOptions>.col-md-6 {
	margin-bottom: 0 !important;
}

/* Labels inside Filing Information */
#filingInfoOptions .form-label {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	line-height: 1.35 !important;
	min-height: 40px !important;
	margin-bottom: 10px !important;
}

/* Yes/No card */
.checkOptionCard {
	min-height: 50px !important;
	display: flex !important;
	align-items: center !important;
	background: transparent !important;
}

/* Yes No radio alignment */
.yesNoRadioWrap {
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
	min-height: 48px !important;
}

.yesNoRadioBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	height: 48px !important;
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #061b3a !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

/* Multiselect */
.filing-multiselect {
	width: 100% !important;
	position: relative !important;
}

.filing-selected-display {
	width: 100% !important;
	min-height: 48px !important;
	height: auto !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	padding: 8px 12px !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	font-size: 15px !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
	cursor: pointer !important;
}

/* Dropdown should come above next sections */
.filing-options-panel {
	position: absolute !important;
	left: 0 !important;
	top: 54px !important;
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.14) !important;
	z-index: 999 !important;
	padding: 8px !important;
}

/* Special extension description must come in new line */
#specialExtensionDescBox {
	flex: 0 0 33.333333% !important;
	max-width: 33.333333% !important;
	margin-top: 0 !important;
}

#specialExtensionDescBox .form-group {
	margin-bottom: 0 !important;
}

#specialExtensionDescBox .form-control {
	height: 48px !important;
}

/* Tags */
.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 20px !important;
	padding: 4px 9px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* =====================================================
   PREVIOUS FILING SECTION
===================================================== */

.previousFilingWrapper {
	margin-top: 0 !important;
	margin-bottom: 42px !important;
	clear: both !important;
}

/* Question card - cleaner */
.previousFilingQuestionCard {
	background: #ffffff !important;
	border: 1px solid #dfe8f2 !important;
	border-radius: 12px !important;
	padding: 22px !important;
	box-shadow: 0 5px 16px rgba(15, 23, 42, 0.035) !important;
	margin-bottom: 20px !important;
}

/* Make question and dropdown separated */
.previousFilingQuestionCard .row {
	align-items: center !important;
}

.previousFilingQuestionCard .col-lg-8 {
	padding-right: 28px !important;
}

.previousFilingQuestion {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	line-height: 1.45 !important;
	margin-bottom: 8px !important;
}

.previousFilingHelp {
	font-size: 13px !important;
	color: #64748b !important;
	line-height: 1.5 !important;
}

/* Dropdown */
#previousFilingChanged {
	width: 100% !important;
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background-color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #061b3a !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

/* Details card should not touch question card */
.previousFilingDetailsCard {
	margin-top: 20px !important;
	margin-bottom: 0 !important;
	padding: 22px 20px !important;
	background: #fbfdff !important;
	border: 1px dashed #b9d6ea !important;
	border-radius: 12px !important;
	clear: both !important;
}

/* Inputs spacing */
.previousFilingDetailsCard .row {
	row-gap: 18px !important;
}

.previousFilingDetailsCard .form-group {
	margin-bottom: 0 !important;
}

.previousFilingDetailsCard .form-label {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	margin-bottom: 9px !important;
	line-height: 1.3 !important;
}

.previousFilingDetailsCard .form-control {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #061b3a !important;
}

/* =====================================================
   RETURN / REPORT TYPE GAP FIX
===================================================== */

.returnReportWrapper {
	margin-top: 0 !important;
	clear: both !important;
}

.returnReportWrapper .returnReportInnerBox {
	margin-top: 0 !important;
}

/* avoid any section merging */
.previousFilingWrapper+.returnReportWrapper {
	margin-top: 42px !important;
}

/* Focus */
.previousFilingDetailsCard .form-control:focus,
#previousFilingChanged:focus,
.filing-selected-display:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.12) !important;
}

/* Mobile */
@media (max-width: 991px) {

	.filingInfoWrapper,
	.previousFilingWrapper {
		margin-bottom: 30px !important;
	}

	.filingInfoWrapper .returnReportInnerBox,
	.previousFilingQuestionCard,
	.previousFilingDetailsCard {
		padding: 16px !important;
	}

	#specialExtensionDescBox {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}

	.previousFilingQuestionCard .col-lg-8 {
		padding-right: 12px !important;
	}
}

/* =====================================================
   FINAL DESIGN FIX - TAX PERIOD PLAN INFO PAGE
   Filing Information + Previous Filing Information
   Add at VERY END of CSS file
===================================================== */

/* Main card breathing */
.taxPeriodPlanCard .card-body {
	padding: 34px 34px 30px !important;
}

/* Consistent section spacing */
.taxPeriodPlanCard .formSection {
	margin-bottom: 40px !important;
	padding: 0 !important;
}

/* Same heading style for all sections */
.taxPeriodPlanCard .sectionHeading {
	width: 100% !important;
	min-height: 46px !important;
	margin: 0 0 24px !important;
	padding: 0 16px !important;

	display: flex !important;
	align-items: center !important;

	background: linear-gradient(87deg, #f3fcff 0%, rgba(255, 255, 255, 0) 58%) !important;
	border-left: 3px solid #c3ecf5 !important;
	border-radius: 6px !important;

	color: #0c7bab !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

/* Remove any accidental selection-looking effect */
.taxPeriodPlanCard .sectionHeading,
.taxPeriodPlanCard .sectionHeading * {
	text-decoration: none !important;
	box-shadow: none !important;
}

/* =====================================================
   FILING INFORMATION - NEW CLEAN CARD DESIGN
===================================================== */

.filingInfoWrapper {
	margin-top: 32px !important;
	margin-bottom: 44px !important;
	clear: both !important;
}

.filingInfoWrapper .returnReportInnerBox {
	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	padding: 18px !important;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035) !important;
	overflow: visible !important;
}

#filingInfoOptions {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	row-gap: 18px !important;
	margin-left: -9px !important;
	margin-right: -9px !important;
}

#filingInfoOptions>[class*="col-"] {
	padding-left: 9px !important;
	padding-right: 9px !important;
	margin-bottom: 0 !important;
}

.filingInfoMiniCard {
	height: 100% !important;
	min-height: 128px !important;
	padding: 16px 16px 14px !important;

	background: #fbfdff !important;
	border: 1px solid #e4ebf2 !important;
	border-radius: 10px !important;

	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
}

#filingInfoOptions .form-label {
	min-height: 38px !important;
	margin-bottom: 12px !important;

	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

/* Yes / No radio clean alignment */
.checkOptionCard {
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
}

.yesNoRadioWrap {
	height: 48px !important;
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
	gap: 26px !important;
}

.yesNoRadioBox {
	height: 48px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;

	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;

	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

/* Multi select */
.filing-multiselect {
	width: 100% !important;
	position: relative !important;
}

.filing-selected-display {
	width: 100% !important;
	min-height: 48px !important;
	height: auto !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;

	padding: 8px 12px !important;
	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;

	color: #061b3a !important;
	font-size: 15px !important;
	cursor: pointer !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

.filing-options-panel {
	position: absolute !important;
	top: 54px !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 9999 !important;

	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	padding: 8px !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14) !important;
}

.filing-option {
	padding: 9px 8px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
}

.filing-option:hover {
	background: #f1f8fc !important;
}

.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;

	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 18px !important;

	padding: 4px 9px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* Special extension now stays inside D card */
.specialExtensionDescBox {
	width: 100% !important;
	margin-top: 12px !important;
}

.specialExtensionDescBox .form-label {
	min-height: auto !important;
	margin-bottom: 8px !important;
}

.specialExtensionDescBox .form-control {
	width: 100% !important;
	height: 48px !important;
	border-radius: 8px !important;
}

/* =====================================================
   PREVIOUS FILING INFORMATION - NEW CLEAN DESIGN
===================================================== */

.previousFilingWrapper {
	margin-top: 0 !important;
	margin-bottom: 44px !important;
	clear: both !important;
}

.previousFilingQuestionCard {
	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	padding: 0 !important;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035) !important;
	overflow: hidden !important;
	margin-bottom: 18px !important;
}

.previousFilingQuestionCard .row {
	margin: 0 !important;
	align-items: stretch !important;
}

.previousFilingQuestionCard .col-lg-8 {
	padding: 22px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

.previousFilingQuestionCard .col-lg-4 {
	padding: 22px 24px !important;
	background: #fbfdff !important;
	border-left: 1px solid #e4ebf2 !important;
	display: flex !important;
	align-items: center !important;
}

.previousFilingQuestionCard .form-group {
	width: 100% !important;
	margin-bottom: 0 !important;
}

.previousFilingQuestion {
	margin-bottom: 8px !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.45 !important;
}

.previousFilingHelp {
	margin: 0 !important;
	color: #64748b !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

#previousFilingChanged {
	width: 100% !important;
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background-color: #ffffff !important;
	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

/* Previous details when YES */
.previousFilingDetailsCard {
	margin-top: 18px !important;
	padding: 20px !important;

	background: #fbfdff !important;
	border: 1px dashed #b9d6ea !important;
	border-radius: 12px !important;
}

.previousFilingDetailsCard .row {
	row-gap: 18px !important;
}

.previousFilingDetailsCard .form-group {
	margin-bottom: 0 !important;
}

.previousFilingDetailsCard .form-label {
	margin-bottom: 8px !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.previousFilingDetailsCard .form-control {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	font-size: 15px !important;
}

/* =====================================================
   RETURN / REPORT TYPE SEPARATION
===================================================== */

.previousFilingWrapper+.returnReportWrapper {
	margin-top: 0 !important;
}

.returnReportWrapper {
	clear: both !important;
	margin-bottom: 28px !important;
}

.returnReportWrapper .returnReportInnerBox {
	margin-top: 0 !important;
	border-radius: 12px !important;
}

/* Focus states */
#previousFilingChanged:focus,
.previousFilingDetailsCard .form-control:focus,
.filing-selected-display:focus,
.specialExtensionDescBox .form-control:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.12) !important;
}

/* Mobile */
@media (max-width: 991px) {
	.taxPeriodPlanCard .card-body {
		padding: 22px 18px !important;
	}

	.filingInfoMiniCard {
		min-height: auto !important;
	}

	.previousFilingQuestionCard .col-lg-4 {
		border-left: 0 !important;
		border-top: 1px solid #e4ebf2 !important;
	}
}

/* =====================================================
   FINAL REDESIGN - FILING INFO + PREVIOUS FILING
   Add at VERY END of CSS file
===================================================== */

/* section spacing */
.taxPeriodPlanCard .formSection {
	margin-bottom: 42px !important;
}

/* common heading */
.taxPeriodPlanCard .sectionHeading {
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 0 24px !important;
	display: flex !important;
	align-items: center !important;

	background: linear-gradient(87deg, #f3fcff 0%, rgba(255, 255, 255, 0) 58%) !important;
	border-left: 3px solid #c3ecf5 !important;
	border-radius: 6px !important;

	color: #0c7bab !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

/* remove old 3-card spacing */
.filingInfoWrapper {
	margin-top: 34px !important;
	margin-bottom: 42px !important;
}

.filingInfoWrapper .returnReportInnerBox {
	padding: 0 !important;
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

/*#filingInfoOptions {
	margin: 0 !important;
	display: block !important;
}*/

/* ===============================
   FILING INFORMATION - ROW DESIGN
================================ */

.filingInfoCleanCard {
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035) !important;
}

.filingInfoCleanRow,
.filingInfoDescRow {
	display: grid !important;
	grid-template-columns: minmax(420px, 1fr) 390px !important;
	column-gap: 28px !important;
	align-items: center !important;
	padding: 18px 22px !important;
	border-bottom: 1px solid #edf1f5 !important;
}

.filingInfoCleanRow:last-child {
	border-bottom: none !important;
}

.filingInfoQuestion {
	display: grid !important;
	grid-template-columns: 34px 1fr !important;
	column-gap: 10px !important;
	align-items: flex-start !important;

	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.45 !important;
}

.filingInfoQuestion small {
	grid-column: 2 !important;
	display: block !important;
	margin-top: 4px !important;
	color: #64748b !important;
	font-size: 12px !important;
	font-weight: 500 !important;
}

.filingInfoLineNo {
	width: 26px !important;
	height: 26px !important;
	border-radius: 50% !important;
	background: #eaf7fd !important;
	color: #0c7bab !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

.filingInfoAnswer {
	width: 100% !important;
}

/* yes/no row */
.yesNoRadioWrap {
	min-height: 48px !important;
	height: 48px !important;
	display: flex !important;
	align-items: center !important;
	gap: 28px !important;
}

.yesNoRadioBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}

.yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
}

/* D dropdown */
.filing-multiselect {
	width: 100% !important;
	position: relative !important;
}

.filing-selected-display {
	width: 100% !important;
	min-height: 48px !important;
	height: auto !important;
	padding: 8px 12px !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;

	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	color: #061b3a !important;
	font-size: 15px !important;
	cursor: pointer !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

.filing-options-panel {
	position: absolute !important;
	top: 54px !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 9999 !important;

	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	padding: 8px !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14) !important;
}

.filing-option {
	padding: 9px 8px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
}

.filing-option:hover {
	background: #f1f8fc !important;
}

.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 18px !important;
	padding: 4px 9px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* special extension row */
.filingInfoDescRow {
	background: #fbfdff !important;
	padding-top: 16px !important;
	padding-bottom: 18px !important;
}

.specialExtensionInline {
	width: 100% !important;
}

.specialExtensionInline .form-label {
	margin-bottom: 8px !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.specialExtensionInline .form-control {
	width: 100% !important;
	height: 48px !important;
	border-radius: 8px !important;
}

/* ===============================
   PREVIOUS FILING - ROW DESIGN
================================ */

.previousFilingWrapper {
	margin-top: 0 !important;
	margin-bottom: 42px !important;
}

.previousFilingQuestionCard {
	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	padding: 0 !important;
	margin-bottom: 18px !important;
	overflow: hidden !important;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035) !important;
}

.previousFilingQuestionCard .row {
	margin: 0 !important;
	display: grid !important;
	grid-template-columns: minmax(420px, 1fr) 390px !important;
	column-gap: 0 !important;
	align-items: stretch !important;
}

.previousFilingQuestionCard .col-lg-8,
.previousFilingQuestionCard .col-lg-4 {
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
}

.previousFilingQuestionCard .col-lg-8 {
	padding: 22px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

.previousFilingQuestionCard .col-lg-4 {
	padding: 22px 24px !important;
	background: #fbfdff !important;
	border-left: 1px solid #e4ebf2 !important;
	display: flex !important;
	align-items: center !important;
}

.previousFilingQuestionCard .form-group {
	width: 100% !important;
	margin-bottom: 0 !important;
}

.previousFilingQuestion {
	margin-bottom: 8px !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.45 !important;
}

.previousFilingHelp {
	margin: 0 !important;
	color: #64748b !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

#previousFilingChanged {
	width: 100% !important;
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background-color: #ffffff !important;
	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}

/* Previous fields when YES */
.previousFilingDetailsCard {
	margin-top: 18px !important;
	padding: 20px !important;
	background: #fbfdff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.035) !important;
}

.previousFilingDetailsCard .row {
	row-gap: 18px !important;
}

.previousFilingDetailsCard .form-group {
	margin-bottom: 0 !important;
}

.previousFilingDetailsCard .form-label {
	margin-bottom: 8px !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.previousFilingDetailsCard .form-control {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	font-size: 15px !important;
}

/* Return section gap */
.previousFilingWrapper+.returnReportWrapper {
	margin-top: 0 !important;
}

.returnReportWrapper {
	margin-top: 0 !important;
	margin-bottom: 28px !important;
}

/* focus */
#previousFilingChanged:focus,
.previousFilingDetailsCard .form-control:focus,
.filing-selected-display:focus,
.specialExtensionInline .form-control:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.12) !important;
}

/* responsive */
@media (max-width: 991px) {

	.filingInfoCleanRow,
	.filingInfoDescRow,
	.previousFilingQuestionCard .row {
		grid-template-columns: 1fr !important;
		row-gap: 14px !important;
	}

	.previousFilingQuestionCard .col-lg-4 {
		border-left: 0 !important;
		border-top: 1px solid #e4ebf2 !important;
	}
}

/* =====================================================
   FILING INFORMATION - SINGLE ROW FINAL
   Add at VERY END of CSS file
===================================================== */

/* remove old C/D/E badge styles */
.filingInfoBadge {
	display: none !important;
}

/* filing wrapper spacing */
.filingInfoWrapper {
	margin-top: 30px !important;
	margin-bottom: 38px !important;
	position: relative !important;
	z-index: 50 !important;
}

/* remove old inner card effects */
.filingInfoWrapper .returnReportInnerBox {
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

#filingInfoOptions {
	display: block !important;
	margin: 0 !important;
}

/* SINGLE ROW BOX */
.filingInfoSingleRow {
	width: 100% !important;
	display: grid !important;
	grid-template-columns: 1fr 1.1fr 1.15fr !important;
	column-gap: 18px !important;

	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	padding: 18px 18px !important;

	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.03) !important;
	overflow: visible !important;
}

/* EACH COLUMN */
.filingInfoSingleCol {
	min-height: 92px !important;
	background: #fbfdff !important;
	border: 1px solid #e5edf4 !important;
	border-radius: 10px !important;
	padding: 15px 16px !important;

	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;

	position: relative !important;
	overflow: visible !important;
}

/* LABEL */
.filingInfoSingleLabel {
	min-height: 38px !important;
	margin-bottom: 12px !important;

	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

/* YES / NO in one line */
.filingInfoSingleCol .yesNoRadioWrap {
	height: 36px !important;
	min-height: 36px !important;
	display: flex !important;
	align-items: center !important;
	gap: 26px !important;
}

.filingInfoSingleCol .yesNoRadioBox {
	height: 36px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;

	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;

	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 500 !important;
}

.filingInfoSingleCol .yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
}

/* DROPDOWN */
.filingInfoDropdownCol {
	z-index: 100 !important;
}

.filing-multiselect {
	width: 100% !important;
	position: relative !important;
	overflow: visible !important;
}

.filing-selected-display {
	width: 100% !important;
	min-height: 46px !important;
	max-height: 78px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;

	padding: 7px 12px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background: #ffffff !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;

	font-size: 15px !important;
	cursor: pointer !important;
}

/* dropdown list scroll */
.filing-options-panel {
	position: absolute !important;
	top: 52px !important;
	left: 0 !important;
	right: 0 !important;

	max-height: 190px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;

	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16) !important;

	z-index: 99999 !important;
	padding: 6px 0 !important;
}

.filing-option {
	min-height: 42px !important;
	padding: 9px 14px !important;
	display: flex !important;
	align-items: center !important;
	font-size: 14px !important;
	background: #ffffff !important;
}

.filing-option:hover {
	background: #f3f8fc !important;
}

.filing-option input[type="checkbox"] {
	width: 17px !important;
	height: 17px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

/* selected tags */
.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;

	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 18px !important;

	padding: 4px 9px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* special extension stays inside dropdown column */


/* avoid dropdown hiding behind previous section */
.previousFilingWrapper {
	position: relative !important;
	z-index: 1 !important;
}

/* responsive */
@media (max-width: 991px) {
	.filingInfoSingleRow {
		grid-template-columns: 1fr !important;
		row-gap: 14px !important;
	}
}

/* =====================================================
   FILING INFORMATION - FLAT SINGLE ROW CLEAN DESIGN
   Add at VERY END of CSS file
===================================================== */

/* wrapper spacing */
.filingInfoWrapper {
	margin-top: 28px !important;
	margin-bottom: 36px !important;
	position: relative !important;
	z-index: 50 !important;
}

.filingInfoWrapper .sectionHeading {
	margin-bottom: 20px !important;
}

/* remove old inner box */
.filingInfoWrapper .returnReportInnerBox {
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

#filingInfoOptions {
	display: block !important;
	margin: 0 !important;
}

/* MAIN SINGLE ROW */
.filingInfoSingleRow {
	width: 100% !important;
	display: grid !important;
	grid-template-columns: 30% 34% 36% !important;
	column-gap: 0 !important;

	background: #ffffff !important;
	border: 1px solid #dfe7ef !important;
	border-radius: 12px !important;
	padding: 0 !important;

	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.035) !important;
	overflow: visible !important;
}

/* EACH ITEM - no separate box look */
.filingInfoSingleCol {
	min-height: 92px !important;
	padding: 18px 20px !important;

	background: #ffffff !important;
	border: none !important;
	border-right: 1px solid #edf1f5 !important;
	border-radius: 0 !important;
	box-shadow: none !important;

	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	position: relative !important;
	overflow: visible !important;
}

.filingInfoSingleCol:last-child {
	border-right: none !important;
}

/* label */
.filingInfoSingleLabel {
	min-height: auto !important;
	margin-bottom: 12px !important;

	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

/* yes/no */
.filingInfoSingleCol .yesNoRadioWrap {
	height: 34px !important;
	min-height: 34px !important;
	display: flex !important;
	align-items: center !important;
	gap: 28px !important;
}

.filingInfoSingleCol .yesNoRadioBox {
	height: 34px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;

	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;

	color: #061b3a !important;
	font-size: 15px !important;
	font-weight: 500 !important;
}

.filingInfoSingleCol .yesNoRadioBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
}

/* middle dropdown column */
.filingInfoDropdownCol {
	z-index: 100 !important;
	justify-content: center !important;
}

/* dropdown */
.filing-multiselect {
	width: 100% !important;
	position: relative !important;
	overflow: visible !important;
}

.filing-selected-display {
	width: 100% !important;
	min-height: 44px !important;
	max-height: 72px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;

	padding: 7px 12px !important;
	border-radius: 8px !important;
	border: 1px solid #d8dee8 !important;
	background: #ffffff !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;

	font-size: 14px !important;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
	cursor: pointer !important;
}

/* dropdown panel */
.filing-options-panel {
	position: absolute !important;
	top: 50px !important;
	left: 0 !important;
	right: 0 !important;

	max-height: 185px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;

	background: #ffffff !important;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16) !important;

	z-index: 99999 !important;
	padding: 6px 0 !important;
}

.filing-option {
	min-height: 40px !important;
	padding: 8px 14px !important;
	display: flex !important;
	align-items: center !important;
	font-size: 14px !important;
	background: #ffffff !important;
}

.filing-option:hover {
	background: #f3f8fc !important;
}

.filing-option input[type="checkbox"] {
	width: 17px !important;
	height: 17px !important;
	margin: 0 !important;
}

/* selected tags */
.filing-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;

	background: #eaf7fd !important;
	color: #006996 !important;
	border: 1px solid #bfe8f7 !important;
	border-radius: 16px !important;

	padding: 3px 8px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.filing-tag-remove {
	cursor: pointer !important;
	font-weight: 900 !important;
}

.filing-arrow {
	margin-left: auto !important;
}

/* keep previous filing below dropdown */
.previousFilingWrapper {
	position: relative !important;
	z-index: 1 !important;
}

/* remove old card look if old CSS still exists */
.filingInfoSingleCol,
.filingInfoSingleCol:hover {
	transform: none !important;
}

/* responsive */
@media (max-width: 991px) {
	.filingInfoSingleRow {
		grid-template-columns: 1fr !important;
	}

	.filingInfoSingleCol {
		border-right: none !important;
		border-bottom: 1px solid #edf1f5 !important;
	}

	.filingInfoSingleCol:last-child {
		border-bottom: none !important;
	}

	.specialExtensionSingle {
		grid-template-columns: 1fr !important;
		row-gap: 6px !important;
	}
}

/* =====================================================
   SPECIAL EXTENSION DESCRIPTION - FINAL PROPER ALIGNMENT
   Replace old .specialExtensionSingle styles
===================================================== */

/* middle column must behave like normal vertical field group */
#filingInfoOptions .filingInfoDropdownCol {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: stretch !important;
	overflow: visible !important;
}

/* dropdown same width */
#filingInfoOptions .filingInfoDropdownCol .filing-multiselect,
#filingInfoOptions .filingInfoDropdownCol .filing-selected-display {
	width: 100% !important;
	max-width: 100% !important;
}

/* description wrapper - JS controls display none/block */
#filingInfoOptions #specialExtensionDescBox {
	width: 100% !important;
	max-width: 100% !important;
	margin: 10px 0 0 0 !important;
	padding: 0 !important;
	clear: both !important;

	position: relative !important;
	box-sizing: border-box !important;
}

/* when JS shows it */
#filingInfoOptions #specialExtensionDescBox[style*="block"] {
	display: block !important;
}

/* label cleanly above textbox */
#filingInfoOptions #specialExtensionDescBox label,
#filingInfoOptions #specialExtensionDescBox .form-label {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;

	margin: 0 0 6px 0 !important;
	padding: 0 !important;

	color: #061b3a !important;
	font-size: 13px !important;
	line-height: 16px !important;
	font-weight: 800 !important;

	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
}

/* textbox full width and writable */
#filingInfoOptions #specialExtensionDescBox input#specialExtensionDesc,
#filingInfoOptions #specialExtensionDescBox .form-control {
	display: block !important;

	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;

	height: 52px !important;
	min-height: 52px !important;
	line-height: normal !important;

	margin: 0 !important;
	padding: 8px 12px !important;

	border: 1px solid #d8dee8 !important;
	border-radius: 8px !important;
	background: #ffffff !important;

	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 500 !important;

	box-sizing: border-box !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* placeholder should show fully */
#filingInfoOptions #specialExtensionDescBox input#specialExtensionDesc::placeholder {
	color: #9aa7b5 !important;
	opacity: 1 !important;
	font-size: 14px !important;
}

/* focus */
#filingInfoOptions #specialExtensionDescBox input#specialExtensionDesc:focus {
	border-color: #0c7bab !important;
	box-shadow: 0 0 0 3px rgba(12, 123, 171, 0.12) !important;
	outline: none !important;
}

/* kill old grid/flex shrinking */
#filingInfoOptions #specialExtensionDescBox.specialExtensionSingle {
	flex: none !important;
	grid-template-columns: none !important;
	gap: 0 !important;
	align-items: unset !important;
}

/* selected tag and input should not shrink */
#filingInfoOptions .filing-tag {
	flex-shrink: 0 !important;
}

/* =====================================================
   REDUCE GAP BEFORE FILING INFORMATION
===================================================== */

/* Reduce bottom space after Plan Information section */
.taxPeriodPlanCard .formSection:has(#formType) {
	margin-bottom: 18px !important;
}

/* Reduce top gap before Filing Information heading */
.taxPeriodPlanCard .filingInfoWrapper {
	margin-top: 6px !important;
	margin-bottom: 34px !important;
}

/* Reduce gap caused by form-group inside Plan Information */
.taxPeriodPlanCard .formSection:has(#formType) .form-group {
	margin-bottom: 0 !important;
}

/* Keep Filing Information heading close to content */
.taxPeriodPlanCard .filingInfoWrapper .sectionHeading {
	margin-bottom: 18px !important;
}

/* =====================================================
   REDUCE GAP BEFORE PLAN INFORMATION
===================================================== */

/* reduce space after Tax Period section */
.taxPeriodPlanCard .card-body>form>.formSection:first-child {
	margin-bottom: 26px !important;
}

/* reduce fiscal year row bottom gap */
.taxPeriodPlanCard .fiscalLine {
	margin-bottom: 14px !important;
}

/* when fiscal date box is visible, keep it closer to Plan Information */
.taxPeriodPlanCard .fiscalLine:has(#fiscalDateGroup.showFiscalDates) {
	margin-bottom: 16px !important;
}

/* reduce extra divider/section spacing before Plan Information */
.taxPeriodPlanCard .formSection:first-child+.formSection {
	margin-top: 0 !important;
}

/* Plan Information heading should start closer */
.taxPeriodPlanCard .formSection:first-child+.formSection .sectionHeading {
	margin-top: 0 !important;
	margin-bottom: 22px !important;
}

/* =====================================================
   PARTICIPANT INFORMATION - LINE 5 SAME AS LINE 6 STYLE
===================================================== */

.participantInfoBlock {
	margin-bottom: 0 !important;
}

.participantInfoBlock .participantInfoCard {
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: #ffffff !important;
	overflow: visible !important;
	padding: 0 !important;
}

.participantInfoBlock .simplePdfHeader {
	padding: 14px 0 13px !important;
	background: transparent !important;
	border-bottom: 1px solid #dfe5ec !important;
}

.participantInfoBlock .simplePdfBody {
	display: flex !important;
	align-items: stretch !important;
	background: #ffffff !important;
}

.participantInfoBlock .simplePdfLines {
	flex: 1 !important;
	width: 100% !important;
	padding: 10px 0 !important;
}

.participantInfoBlock .simplePdfLine {
	display: grid !important;
	grid-template-columns: 42px minmax(470px, 1fr) 265px !important;
	align-items: center !important;
	column-gap: 16px !important;
	min-height: 48px !important;
	padding: 4px 0 !important;
	border-bottom: none !important;
}

.participantInfoBlock .lineNo {
	font-size: 13px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	white-space: nowrap !important;
	text-align: right !important;
	padding-right: 4px !important;
}

.participantInfoBlock .lineDesc {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #172b4d !important;
	line-height: 1.45 !important;
}

.participantInfoBlock .lineDesc small {
	display: inline !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #64748b !important;
}

.participantInfoBlock .lineInput {
	display: grid !important;
	grid-template-columns: 48px 210px !important;
	align-items: center !important;
	column-gap: 8px !important;
	justify-self: end !important;
}

.participantInfoBlock .inputLineNo {
	font-size: 13px !important;
	font-weight: 800 !important;
	color: #061b3a !important;
	text-align: right !important;
	white-space: nowrap !important;
}

.participantInfoBlock .lineInput input {
	width: 210px !important;
	height: 39px !important;
	border-radius: 7px !important;
	border: 1px solid #d6e0ea !important;
	background: #ffffff !important;
	color: #061b3a !important;
	font-size: 14px !important;
	font-weight: 650 !important;
	padding: 0 13px !important;
	outline: none !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
}

.participantInfoBlock .lineInput input:focus {
	border-color: #0b8ec2 !important;
	box-shadow: 0 0 0 3px rgba(11, 142, 194, 0.14) !important;
}

.participantInfoBlock .lineInput input.is-invalid {
	border-color: #dc3545 !important;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.12) !important;
}

.participantInfoBlock .invalid-feedback {
	grid-column: 2 !important;
	margin-top: 4px !important;
	font-size: 12px !important;
	color: #dc3545 !important;
}

.participantInfoBlock .participant-number.is-invalid+.invalid-feedback {
	display: block !important;
}

@media (max-width: 1200px) {
	.participantInfoBlock .simplePdfLine {
		grid-template-columns: 36px 1fr !important;
		row-gap: 8px !important;
		padding: 7px 0 !important;
	}

	.participantInfoBlock .lineInput {
		grid-column: 2 !important;
		grid-template-columns: 48px 210px !important;
		justify-self: start !important;
		max-width: 270px !important;
	}

	.participantInfoBlock .lineInput input {
		width: 210px !important;
	}
}

/* =====================================================
   FORM 5500-SF LINE 6 - SIMPLE PDF STYLE
===================================================== */

.sfLine6Block {
	margin-top: 4px !important;
}

.sfLine6Block .simplePdfLine {
	grid-template-columns: 42px minmax(520px, 1fr) 280px !important;
	min-height: 54px !important;
	padding: 8px 0 !important;
}

.sfLine6Block .lineDesc small {
	color: #64748b !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
}

.sf-radio-input {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 24px !important;
	width: 280px !important;
}

.sf-radio-label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #061b3a !important;
	white-space: nowrap !important;
	cursor: pointer !important;
}

.sf-radio-label input[type="radio"] {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	accent-color: #0c7bab !important;
}

.sf-radio-three {
	gap: 16px !important;
	justify-content: flex-end !important;
}

.sf-paa-line {
	margin-top: 4px !important;
}

.sf-paa-line .lineInput {
	grid-template-columns: 48px 210px !important;
}

@media (max-width: 1200px) {
	.sfLine6Block .simplePdfLine {
		grid-template-columns: 36px 1fr !important;
	}

	.sf-radio-input {
		grid-column: 2 !important;
		justify-content: flex-start !important;
		width: 100% !important;
		flex-wrap: wrap !important;
	}

	.sf-paa-line .lineInput {
		grid-column: 2 !important;
		justify-self: start !important;
	}
}

/*=== Footer icons top-aligned ====*/
/* =====================================================
   FOOTER CONTACT INFO - MOVE UP / TOP ALIGN
===================================================== */

#footerSide.footer {
	position: relative !important;
	margin-top: 35px !important;
	padding-top: 10px !important;
	padding-bottom: 18px !important;
	bottom: auto !important;
}

#footerSide .container-fluid {
	padding-top: 0 !important;
}

#footerSide .row {
	align-items: flex-start !important;
}

#footerSide .fotrIcon-item {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

#footerSide .fotrIcon-item i {
	margin-top: 4px !important;
}

#footerSide .fotrIcon-item .txt {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
}

#footerSide .fotrIcon-item .txt h6 {
	margin-bottom: 4px !important;
}

/* =====================================================
   FORM 5500 HELP POPUP - SAME STYLE AS 720
===================================================== */

.form5500-help-modal {
	border: 5px solid #d6d6d6 !important;
	border-radius: 6px !important;
	overflow: visible !important;
	box-shadow: 0 12px 35px rgba(0, 0, 0, 0.25) !important;
}

.form5500-help-header {
	background: #0f85b6 !important;
	color: #ffffff !important;
	border-bottom: none !important;
	min-height: 70px !important;
	padding: 18px 50px !important;
	position: relative !important;
	justify-content: center !important;
}

.form5500-help-header .modal-title {
	font-size: 26px !important;
	line-height: 1.25 !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	text-align: center !important;
	margin: 0 !important;
}

.form5500-help-close {
	position: absolute !important;
	top: -16px !important;
	right: -18px !important;
	width: 34px !important;
	height: 34px !important;
	background: #ff0000 !important;
	color: #000000 !important;
	border: none !important;
	border-radius: 6px !important;
	font-size: 30px !important;
	line-height: 30px !important;
	font-weight: 500 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	padding: 0 !important;
	z-index: 10 !important;
}

.form5500-help-body {
	background: #ffffff !important;
	padding: 30px 30px 34px !important;
}

.form5500-help-title {
	font-size: 20px !important;
	line-height: 1.4 !important;
	font-weight: 700 !important;
	color: #000000 !important;
	margin-bottom: 18px !important;
}

.form5500-help-title i {
	font-size: 20px !important;
	margin-right: 6px !important;
}

.form5500-help-contact {
	font-size: 18px !important;
	line-height: 1.5 !important;
	color: #000000 !important;
	margin-bottom: 0 !important;
}

.form5500-help-contact a,
.form5500-help-contact span {
	color: #e85b00 !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.form5500-help-sub {
	font-size: 16px !important;
	color: #000000 !important;
	margin-bottom: 24px !important;
}

.form5500-help-note {
	font-size: 16px !important;
	line-height: 1.45 !important;
	color: #000000 !important;
	margin-bottom: 0 !important;
}


/*27/05/2026 checking navbar*/

.filing-step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 130px;
	height: 42px;
	padding: 0 18px;
	border-radius: 6px;
	border: 1px solid #d7e3ec;
	background: #f5f8fb;
	color: #073b5c;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
}

.filing-step:hover {
	background: #eaf5fb;
	text-decoration: none;
}

.filing-step.active {
	background: #1294dc;
	color: #ffffff;
	border-color: #1294dc;
}

/* IMPORTANT */
.filing-step-nav {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: nowrap;
	width: max-content;
	min-width: 100%;
}

.filing-submenu {
	display: none;
	align-items: center;
	gap: 10px;
	flex-wrap: nowrap;
}

.filing-submenu.show {
	display: inline-flex;
}

.filing-step {
	flex: 0 0 auto;
}

.filing-step-wrapper {
	width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	padding-bottom: 8px;
}

/* optional scrollbar styling */
.filing-step-wrapper::-webkit-scrollbar {
	height: 8px;
}

.filing-step-wrapper::-webkit-scrollbar-thumb {
	background: #c7d7e2;
	border-radius: 20px;
}

/*up to here*/

/*28/05/2026 checking for 5500 mock screen design*/
.part-v-layout {
	width: 100%;
	border: 1px solid #e3e8ef;
	border-radius: 8px;
	background: #ffffff;
	overflow: hidden;
}

.part-v-row {
	display: grid !important;
	grid-template-columns: repeat(12, 1fr);
	align-items: center;
	column-gap: 14px;
	padding: 14px 16px;
	border-bottom: 1px solid #edf1f5;
}

.part-v-row:last-child {
	border-bottom: none;
}

/* Normal rows:
   Question = 6 columns
   Yes/No = 2 columns
   Amount/Input = 4 columns
*/
.part-v-row .pv-question {
	grid-column: span 6;
}

.part-v-row .pv-radio {
	grid-column: span 2;
}

.part-v-row .pv-field {
	grid-column: span 4;
}

/* 11b, 11c, 11d row */
.three-field-row {
	grid-template-columns: repeat(12, 1fr) !important;
}

.three-field-row .pv-field {
	grid-column: span 4 !important;
}

/* 12 row:
   Question = 4 columns
   Date box = 4 columns
   Text box = 4 columns
*/
.opinion-row .pv-question {
	grid-column: span 4 !important;
}

.opinion-row .pv-field {
	grid-column: span 4 !important;
}

.pv-col {
	min-width: 0;
}

.pv-question {
	font-size: 14px;
	font-weight: 500;
	color: #111827;
	line-height: 1.45;
}

.pv-radio {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
}

.pv-radio label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0;
	font-size: 14px;
	font-weight: 500;
	color: #111827;
	white-space: nowrap;
	cursor: pointer;
}

.pv-radio input[type="radio"] {
	width: 15px;
	height: 15px;
	margin: 0;
}

.justify-start {
	justify-content: flex-start !important;
}

.pv-field .form-control {
	width: 100%;
	height: 42px;
	border-radius: 6px;
	border: 1px solid #d9e0e7;
	font-size: 14px;
}

.pv-field .form-control::placeholder {
	color: #9aa4b2;
}

.pv-small-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #111827;
	margin-bottom: 7px;
	line-height: 1.35;
}

.text-danger {
	color: #dc3545 !important;
}

@media (max-width: 991px) {

	.part-v-row,
	.three-field-row {
		grid-template-columns: 1fr !important;
		row-gap: 10px;
	}

	.part-v-row .pv-question,
	.part-v-row .pv-radio,
	.part-v-row .pv-field,
	.three-field-row .pv-field,
	.opinion-row .pv-question,
	.opinion-row .pv-field {
		grid-column: span 1 !important;
	}

	.pv-radio {
		justify-content: flex-start;
	}
}

/*up to here*/
/* =====================================================
   PART III SF - SIMPLE LINE STYLE
   NO OUTER BOX, NO ROW LINES, NO BOY/EOY TOP HEADERS
   UPDATED FONT WEIGHT + HOVER STYLE
===================================================== */

.tax-ref-section {
	width: 100%;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	box-shadow: none !important;
}

/* 7. Plan Assets... / 8. Income... */
.tax-ref-simple-title {
	display: flex;
	align-items: center;
	font-size: 16px !important;
	font-weight: 600 !important;
	/* reduced from 700 */
	color: #0076bd !important;
	/* blue like design */
	line-height: 1.35;
	margin: 0 0 22px 0;
}

.tax-ref-simple-title::after {
	content: "";
	flex: 1;
	height: 1px;
	background: #d6e2ea;
	margin-left: 14px;
}

/* Hide old heading/header if still present */
.tax-ref-title,
.tax-ref-header,
.tax-ref-inline-header {
	display: none !important;
}

/* One row: line no | question | textbox */
.tax-ref-row,
.tax-ref-sub-row {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) 360px;
	column-gap: 20px;
	align-items: center;
	min-height: 58px;
	padding: 8px 0;
	border-bottom: none !important;
}

/* 7a, 7b, 7c, 8a, 8a(1), 8b... */
.tax-ref-no {
	font-size: 15px !important;
	font-weight: 600 !important;
	/* reduced from 700 */
	color: #0f172a !important;
	text-align: center;
}

/* Normal description text */
.tax-ref-question {

    display: block !important;
    min-width: 0;
    font-size: 15px !important;
    font-weight: 400 !important;   /* reduced from 500 */
    color: #000000 !important;
    line-height: 1.45;

}

/* Heading text like Contributions received... */
.tax-ref-bold {
	font-weight: 600 !important;
	/* reduced from 700 */
	color: #111827 !important;
}

.tax-dots {
	display: none !important;
	border-bottom: none !important;
}


/*.tax-ref-field {
    position: relative;
}*/
.tax-ref-field {
    display: grid;
    grid-template-columns: 58px 1fr;
    align-items: center;
    column-gap: 8px;

}

.tax-ref-hidden-field {
	visibility: hidden;
}

/* Floating textbox label: Line 7a, Line 8a(1), etc. */

/*.tax-line-label {
    position: absolute;
    top: -12px;
    left: 14px;
    background: #ffffff;
    padding: 0 5px;
    font-size: 12px !important;
    font-weight: 500 !important;    reduced from 600
    color: #64748b !important;
    z-index: 1;
}*/
.tax-line-label {
    position: static !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color:#000000 !important;
    text-align: right;
    white-space: nowrap;

}

/* Textbox base */
.tax-ref-field .form-control {

    width: 100%;
    height: 42px;
    border-radius: 5px;
    border: 1px solid #878a8e;
    font-size: 14px;
    font-weight: 400 !important;
    color: #111827 !important;
    padding: 8px 12px;
    background: #ffffff;
    transition: all 0.18s ease-in-out;

}

.tax-ref-field .form-control::placeholder {
	color: #94a3b8 !important;
	font-weight: 400 !important;
}

/* Hover color */
.tax-ref-field .form-control:hover {
	border-color: #1294dc !important;
	background-color: #f6fcff !important;
	box-shadow: 0 0 0 2px rgba(18, 148, 220, 0.10) !important;
}

/* Focus color */
.tax-ref-field .form-control:focus {
	border-color: #1294dc !important;
	background-color: #ffffff !important;
	box-shadow: 0 0 0 3px rgba(18, 148, 220, 0.16) !important;
	outline: none !important;
}

/* Readonly calculated boxes */
.tax-ref-field .form-control[readonly] {
	background: #fffdf2;
	color: #111827;
	cursor: not-allowed;
}

/* Readonly calculated boxes hover */
.tax-ref-field .form-control[readonly]:hover {
	border-color: #d9b44a !important;
	background-color: #fff9df !important;
	box-shadow: 0 0 0 2px rgba(217, 180, 74, 0.15) !important;
}

/* Readonly calculated boxes focus */
.tax-ref-field .form-control[readonly]:focus {
	border-color: #d9b44a !important;
	background-color: #fff9df !important;
	box-shadow: 0 0 0 3px rgba(217, 180, 74, 0.18) !important;
}

.tax-ref-blank {
	display: none !important;
}

.text-danger {
	color: #dc3545 !important;
}

.tax-ref-section.mt-4 {
	margin-top: 32px !important;
}

/* Responsive */
@media (max-width: 1199px) {

	.tax-ref-row,
	.tax-ref-sub-row {
		grid-template-columns: 54px minmax(0, 1fr) 320px;
	}
}

@media (max-width: 991px) {

	.tax-ref-row,
	.tax-ref-sub-row {
		grid-template-columns: 44px 1fr;
		row-gap: 10px;
		padding: 10px 0;
	}

	.tax-ref-field,
	.tax-ref-hidden-field {
		grid-column: 2 / 3;
	}
}

/* =====================================================
   FINAL FONT SOFTENING FOR PART III SF
===================================================== */

/* 7 and 8 section title */
.tax-ref-simple-title {
	font-weight: 600 !important;
	color: #0076bd !important;
}

/* 7a, 7b, 7c, 8a, 8a(1), 8b... line numbers */
.tax-ref-no {

    font-weight: 700 !important;
    color: #000000 !important;

}

/* Main description text */
.tax-ref-question {

    font-weight: 400 !important;
    color:#000000 !important;
}

/* Only sub-heading row like Contributions received... */
.tax-ref-bold {
	font-weight: 600 !important;
	color: #111827 !important;
}

/* Floating labels like Line 7a */
.tax-line-label {


	font-weight: 500 !important;
	color: #000000 !important;
}

/*up to here*/

/*--- home.html ---*/
.error-list {
	padding-left: 20px;
	margin-top: 10px;
	max-height: 300px;
	overflow-y: auto;
}

.error-list li {
	margin-bottom: 12px;
	line-height: 1.5;
	color: #333;
	font-size: 14px;
	position: relative;
	background: #fff5f5;
	border-left: 4px solid #dc3545;
	padding: 10px 12px;
	border-radius: 6px;
	white-space: normal;
	word-break: break-word;
}

.rotate-180 {
	transform: rotate(180deg);
	transition: transform 0.2s ease;
}

.dashboard-recent-table th,
.dashboard-recent-table td {
	vertical-align: middle !important;
}

.dashboard-recent-table th:nth-child(4),
.dashboard-recent-table td:nth-child(4),
.dashboard-recent-table th:nth-child(5),
.dashboard-recent-table td:nth-child(5) {
	text-align: center !important;
}

/* =====================================================
   FINAL ALIGNMENT FIX
   Remove boxes/lines + keep equal spacing consistency
===================================================== */

/* common section spacing */
.filingInfoWrapper,
.previousFilingWrapper,
.returnReportWrapper {
	margin-top: 36px !important;
	margin-bottom: 0 !important;
}

/* remove all card/box styles only for these sections */
.filingInfoWrapper .returnReportInnerBox,
.previousFilingQuestionCard,
.previousFilingDetailsCard {
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
	padding: 0 !important;
}

/* =====================================================
   Filing Information - 3 columns equal gap
===================================================== */

#filingInfoOptions {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}

.filingInfoSingleRow {
	width: 100% !important;
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr !important;
	column-gap: 36px !important;
	align-items: start !important;
	margin: 0 !important;
	padding: 26px 0 0 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.filingInfoSingleCol {
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.filingInfoSingleLabel {
	min-height: 38px !important;
	margin-bottom: 10px !important;
	display: block !important;
}

.filing-multiselect,
.filing-selected-display,
.specialExtensionSingle .form-control {
	width: 100% !important;
}

.specialExtensionSingle {
	margin-top: 10px !important;
}




/* =====================================================
   Previous Filing Information - question + dropdown
===================================================== */

.previousFilingQuestionCard {
	margin-top: 28px !important;
}

.previousFilingQuestionCard .row {
	display: grid !important;
	grid-template-columns: 2fr 1fr !important;
	column-gap: 42px !important;
	align-items: center !important;
	margin: 0 !important;
}

.previousFilingQuestionCard .col-lg-8,
.previousFilingQuestionCard .col-lg-4 {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
}

.previousFilingQuestionCard .form-group {
	margin-bottom: 0 !important;
}

.previousFilingQuestionCard .form-select {
	width: 100% !important;
}


/* =====================================================
   4a fields - equal 4 columns with same gap
===================================================== */

.previousFilingDetailsCard {
	margin-top: 34px !important;
}

.previousFilingDetailsCard .row {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	column-gap: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.previousFilingDetailsCard .col-lg-3 {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.previousFilingDetailsCard .form-group {
	margin-bottom: 0 !important;
}

.previousFilingDetailsCard .form-label {
	margin-bottom: 8px !important;
	min-height: 20px !important;
}

.previousFilingDetailsCard .form-control {
	width: 100% !important;
}


/* mobile */
@media (max-width: 991px) {

	.filingInfoSingleRow,
	.previousFilingQuestionCard .row,
	.previousFilingDetailsCard .row {
		grid-template-columns: 1fr !important;
		row-gap: 22px !important;
	}
}

/* =====================================================
   FIX SPECIAL EXTENSION DESCRIPTION POSITION
   Keep it directly below middle dropdown
===================================================== */

/* keep 3 filing info columns aligned */
.filingInfoSingleRow {
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr !important;
	column-gap: 36px !important;
	align-items: start !important;
}

/* remove absolute movement */
#specialExtensionDescBox {
	position: static !important;
	width: 100% !important;
	margin-top: 12px !important;
	padding: 0 !important;
}

/* description label close to input */
#specialExtensionDescBox .form-label {
	margin-bottom: 8px !important;
	font-size: 0.85rem !important;
	font-weight: 700 !important;
}

/* description input same width as dropdown */
#specialExtensionDescBox .form-control {
	width: 100% !important;
	height: 48px !important;
}

/* make middle dropdown and description same width */
.filingInfoDropdownCol .filing-multiselect,
.filingInfoDropdownCol .filing-selected-display {
	width: 100% !important;
}

/* reduce extra vertical gap */
.filingInfoDropdownCol {
	display: flex !important;
	flex-direction: column !important;
}

/* keep previous section spacing normal */
.previousFilingWrapper {
	margin-top: 34px !important;
}

/* =====================================================
   RETURN / REPORT TYPE - SAME GAP AS OTHER SECTIONS
   Space only between heading and box
===================================================== */

.returnReportWrapper>.sectionHeading {
	margin-bottom: 44px !important;
}

.returnReportWrapper>.returnReportInnerBox {
	margin-top: 0 !important;
}

/* keep inside box unchanged */
.returnReportWrapper #returnReportOptions {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* =====================================================
   PLAN NAME + ADD NEW PLAN BUTTON
===================================================== */

.planNameWithBtn {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	width: 100% !important;
}

.planNameWithBtn .form-select {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.addNewPlanBtn {
	height: 48px !important;
	min-width: 155px !important;
	padding: 0 18px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	white-space: nowrap !important;
	font-size: 0.9rem !important;
	font-weight: 700 !important;
	border-radius: 0.375rem !important;
}

/*===== page template contact -us style ===*/
.success-toast-5500 {
	position: fixed;
	top: 92px;
	left: 50%;
	transform: translateX(-50%);
	min-width: 360px;
	background: #58a84f;
	color: #ffffff;
	padding: 16px 45px 16px 18px;
	border-radius: 3px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
	display: none;
	align-items: center;
	gap: 14px;
	z-index: 99999;
}

.toast-icon-5500 {
	font-size: 28px;
	line-height: 1;
	font-weight: 700;
}

.toast-title-5500 {
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	margin-bottom: 4px;
}

.toast-msg-5500 {
	font-size: 14px;
	font-weight: 500;
}

.toast-close-5500 {
	position: absolute;
	top: 6px;
	right: 10px;
	border: none;
	background: transparent;
	color: #ffffff;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	font-weight: 700;
}

/*===add-edit-plan.html====*/
.plan-section-info-btn {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
	line-height: 1;
	box-shadow: none !important;
	outline: none !important;
	display: inline-flex !important;
	align-items: center !important;
}

.plan-section-info-btn:hover,
.plan-section-info-btn:focus,
.plan-section-info-btn:active,
.plan-section-info-btn:focus-visible {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}

/* Add/Edit Plan modal same as ACA info popup */
#infoModal .modal-content {
	border: 0 !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	padding: 18px !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.16) !important;
}

#infoModal .modal-body {
	border: 4px dotted #dcebf6 !important;
	border-radius: 0 !important;
	padding: 26px 30px 24px !important;
	text-align: center !important;
}

#infoModal .btn-close {
	position: absolute !important;
	top: 24px !important;
	right: 26px !important;
	box-shadow: none !important;
	opacity: 1 !important;
}

#infoModal .modal-icon img {
	width: 92px !important;
	height: 92px !important;
	margin-bottom: 14px !important;
}

#infoModalLabel {
	font-size: 26px !important;
	font-weight: 700 !important;
	color: #0076b6 !important;
	margin-bottom: 18px !important;
}

#infoModal .popup-message-list {
	max-width: 440px !important;
	margin: 0 auto !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
}

.plan-section-info-btn {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin-left: 6px !important;
	line-height: 1 !important;
	box-shadow: none !important;
	outline: none !important;
}

.plan-section-info-btn:hover,
.plan-section-info-btn:focus,
.plan-section-info-btn:active {
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

#planPageLoader {
	position: fixed !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	background: rgba(255, 255, 255, 0.72) !important;
	z-index: 99999 !important;
	display: none;
	align-items: center !important;
	justify-content: center !important;
}

#planPageLoader.show {
	display: flex !important;
}

/*----- plan-master-list.html style -----*/
.scReset {
	position: absolute;
	font-weight: 700;
	top: -4px;
	display: flex;
	flex-direction: row;
	align-items: center;
	padding: 1px 7px;
	border: 1px solid var(--simple-blue-color);
	border-radius: 50px;
	color: var(--simple-blue-color);
	background: #fff;
}

.ein-col {
	white-space: nowrap;
}

.btn-outline-tmBlue {
	border: 1px solid var(--simple-blue-color) !important;
	color: var(--simple-blue-color) !important;
	background: #fff !important;
	border-radius: 6px;
	font-weight: 600;
}

.btn-outline-tmBlue:hover,
.btn-outline-tmBlue:focus {
	background: var(--simple-blue-color) !important;
	color: #fff !important;
	border-color: var(--simple-blue-color) !important;
}

.btn-outline-tmBlue.btn-sm {
	padding: 6px 14px;
	min-width: 110px;
}

/*----- plan-master-list.html style -----*/
/*---- add-edit-plan.html ----- */
#einWrapper,
#ssnWrapper {
	display: none;
}

/*.adminInfoSection .form-group {
	margin-bottom: 22px !important;
}

.adminInfoSection .form-label {
	min-height: 22px !important;
	display: block !important;
	margin-bottom: 8px !important;
	font-weight: 700 !important;
}

.adminInfoSection .form-control,
.adminInfoSection .form-select {
	height: 50px !important;
}*/

.adminSameSponsorBox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 5px 10px;
	background: #f8fbfd;
	border: 1px solid #dcecf5;
	border-radius: 6px;
	margin-bottom: 5px;
}

.adminSameSponsorBox {
	display: inline-flex;
	align-items: center;
	margin-bottom: 8px;
	padding: 5px 10px;
}

.adminSameSponsorBox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 9px !important;
	background: #f7fbfd !important;
	border: 1px solid #d9edf5 !important;
	border-radius: 8px !important;
	padding: 8px 12px !important;
	margin: 0 !important;
}
.adminSameSponsorBox .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	cursor: pointer !important;
}

.adminSameSponsorBox label {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #334155 !important;
	cursor: pointer !important;
}

#planPageLoader.loader {
	position: fixed !important;
	inset: 0 !important;
	z-index: 99999 !important;
	background: rgba(0, 0, 0, 0.45) !important;
	align-items: center !important;
	justify-content: center !important;
}

#planPageLoader .loaderBG {
	background: #ffffff !important;
	border-radius: 12px !important;
	min-width: 320px !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
}

.plan-section-info-btn {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	cursor: pointer;
	line-height: 1;
	vertical-align: middle;
	box-shadow: none !important;
	outline: none !important;
}

.plan-section-info-btn:hover,
.plan-section-info-btn:focus,
.plan-section-info-btn:active {
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

/* ===== INFO MODAL - SAME LIKE ACA ===== */

#infoModal .modal-dialog {
	max-width: 620px !important;
}

#infoModal.alertInfo-Modal,
#infoModal .alertInfo-Modal {
	background: transparent !important;
	padding: 0 !important;
}

#infoModal .modal-content {
	border: none !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	padding: 18px !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18) !important;
}

#infoModal .modal-body {
	border: 4px dotted #d9e1e8 !important;
	border-radius: 0 !important;
	padding: 22px 34px 28px !important;
	text-align: center !important;
	position: relative !important;
}

#infoModal .btn-close {
	position: absolute !important;
	top: 14px !important;
	right: 18px !important;
	z-index: 5 !important;
	width: 22px !important;
	height: 22px !important;
	padding: 0 !important;
	background-size: 22px 22px !important;
	box-shadow: none !important;
	opacity: 1 !important;
	transform: scale(1.15) !important;
}

#infoModal .modal-icon {
	width: 110px !important;
	height: 110px !important;
	margin: 0 auto 14px !important;
	background: transparent !important;
	box-shadow: none !important;
}

#infoModal .modal-icon img {
	width: 110px !important;
	height: 110px !important;
	display: block !important;
	margin: 0 auto !important;
}

#infoModal .modal-text h4 {
	color: #0b7fbe !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	margin-bottom: 18px !important;
}

#infoModal .popup-message-list {
	font-size: 16px !important;
	line-height: 1.55 !important;
	color: #111 !important;
}

#infoModal .popup-message-list p {
	margin-bottom: 10px !important;
}

#infoModal .popup-message-list strong {
	font-weight: 700 !important;
	color: #111 !important;
}
/* Make Business Code placeholder match other field placeholders */
.business-code-tomselect .ts-control {
    color: #9ca3af !important;
    font-weight: 400 !important;
}

/* Once a value is selected, restore dark text */
.business-code-tomselect.has-business-code .ts-control {
    color: #333 !important;
    font-weight: 500 !important;
}

/* The custom placeholder span */
.business-code-main-placeholder {
    color: #9ca3af !important;
    font-weight: 400 !important;
    font-size: 0.9rem !important;
}
.business-code-tomselect .ts-control {
    position: relative;
}

.business-code-main-placeholder {
    color: #9ca3af;
    pointer-events: none;
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.9rem;
    font-weight: 500;
}

.business-code-tomselect.has-business-code .business-code-main-placeholder {
    display: none;
}
/* Business code popup wider modal. */
#infoModalDialog.business-code-modal {
    max-width: 860px !important;
}

/* Business code popup content. */
#infoModalDialog.business-code-modal .modal-content {
    border: none;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgb(0 0 0 / 20%);
}

/* Business code popup body. */
#infoModalDialog.business-code-modal .modal-body {
    padding: 26px 34px 34px !important;
    text-align: left !important;
    max-height: none !important;
    overflow: visible !important;
}

/* Remove dotted instruction border for business code popup. */
#infoModalDialog.business-code-modal .modal-body::before,
#infoModalDialog.business-code-modal .modal-body::after {
    display: none !important;
}

/* Hide large info image for business code popup. */
#infoModalDialog.business-code-modal #infoModalIcon {
    display: none !important;
}

/* Business code close button. */
#infoModalDialog.business-code-modal .btn-close {
    top: 18px;
    right: 20px;
    z-index: 5;
}

/* Business code title. */
#infoModalDialog.business-code-modal #infoModalLabel {
    text-align: center;
    font-size: 1.65rem;
    font-weight: 800;
    color: var(--simple-blue-color) !important;
    margin: 0 0 20px;
}

/* Remove normal instruction modal width limitation. */
#infoModalDialog.business-code-modal .modal-text,
#infoModalDialog.business-code-modal .popup-message-list {
    width: 100% !important;
    max-width: none !important;
    text-align: left !important;
}

/* Business code table card. */
.business-code-popup-card {
    width: 100%;
    border: 1px solid #d7e5ec;
    border-radius: 14px;
    background: #ffffff;
    overflow: hidden;
    box-shadow: 0 8px 22px rgb(0 0 0 / 8%);
}

/* Business code table scroll area. */
.business-code-table-wrap {
    max-height: 440px;
    overflow-y: auto;
    overflow-x: hidden;
}

/* Business code table. */
.business-code-info-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    margin: 0;
}

/* Business code header cells. */
.business-code-info-table thead th {
    position: sticky;
    top: 0;
    z-index: 3;
    background: #eefaff;
    color: var(--simple-darkBlue-color);
    font-size: 0.88rem;
    font-weight: 800;
    padding: 13px 16px;
    border-bottom: 1px solid #cfe8f2;
    text-align: left;
}

/* Business code body cells. */
.business-code-info-table tbody td {
    padding: 13px 16px;
    font-size: 0.88rem;
    font-weight: 500;
    color: #243447;
    border-bottom: 1px solid #edf1f4;
    vertical-align: top;
    text-align: left;
    line-height: 1.45;
}

/* Business code alternate row. */
.business-code-info-table tbody tr:nth-child(even) {
    background: #fbfdff;
}

/* Business code row hover. */
.business-code-info-table tbody tr:hover {
    background: #f1f5f9;
}
/* Business code body column. */
.business-code-info-table tbody .code-col {
    width: 135px;
    color: #000000 !important;
    font-weight: 700 !important;
    white-space: nowrap;
}

/* Business code header column. */
.business-code-info-table thead .code-col {
    width: 135px;
    color: #000000 !important;
    font-weight: 800 !important;
    white-space: nowrap;
}


/* Activity name body column. */
.business-code-info-table tbody .activity-col {
    width: 235px;
    color: #374151 !important;
    font-weight: 500 !important;
}

/* Activity name header column. */
.business-code-info-table thead .activity-col {
    width: 235px;
    color: #000000 !important;
    font-weight: 800 !important;
}

/* Description column. */
.business-code-info-table .desc-col {
    width: auto;
    color: #374151;
}

/* Business code scrollbar width. */
.business-code-table-wrap::-webkit-scrollbar {
    width: 7px;
}

/* Business code scrollbar thumb. */
.business-code-table-wrap::-webkit-scrollbar-thumb {
    background: #9fcfe3;
    border-radius: 20px;
}

/* Business code scrollbar track. */
.business-code-table-wrap::-webkit-scrollbar-track {
    background: #f4f8fb;
}


/* =====================================================
   FORM 5500 - PENSION / WELFARE FEATURE CODE BOXES
   Makes line 8a / 8b neat and aligned
===================================================== */

/* The row which contains small-text boxes */
.theme-form .row:has(> .small-text-box) {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    column-gap: 3px !important;
    row-gap: 5px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Left side label like 8a / b */
.theme-form .row:has(> .small-text-box) > label.col-4 {
    flex: 0 0 285px !important;
    max-width: 285px !important;
    width: 285px !important;

    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;

    margin-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 10px !important;

    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    color: #000000 !important;
}

/* Line number 8a / b */
.theme-form .row:has(> .small-text-box) > label.col-4 span {
    min-width: 28px !important;
    font-weight: 800 !important;
    color: #000000 !important;
}

/* Each small code box wrapper */
.theme-form .row:has(> .small-text-box) > .small-text-box {
    flex: 0 0 36px !important;
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 0 !important;
}

/* Remove default filing form bottom gap only for these code boxes */
.theme-form .row:has(> .small-text-box) > .small-text-box.filing.form-group {
    margin-bottom: 0 !important;
}

/* Inner input group */
.small-text-box .input-group {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    flex-wrap: nowrap !important;
}

/* Hide # icon for code boxes */
.small-text-box .input-group-text {
    display: none !important;
}

/* Floating wrapper */
.small-text-box .form-floating-custom {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
}

/* Actual code input */
.small-text-box input,
.small-text-box .form-control {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;

    height: 34px !important;
    min-height: 34px !important;

    padding: 0 3px !important;
    text-align: center !important;

    border-radius: 6px !important;
    border: 1px solid #b9c9d8 !important;
    background: #f8fbfd !important;

    font-size: 12px !important;
    font-weight: 700 !important;
    color: #061b3a !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

/* Hide floating label */
.small-text-box label {
    display: none !important;
}

/* Focus */
.small-text-box input:focus,
.small-text-box .form-control:focus {
    border-color: #0c7bab !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 2px rgba(12, 123, 171, 0.12) !important;
}

/* Mobile */
@media (max-width: 991px) {
    .theme-form .row:has(> .small-text-box) > label.col-4 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        margin-bottom: 8px !important;
    }
}

/*=== ===========*/
/* =====================================================
   FORM 5500 - 9a / 9b / 10a / 10b DOT LINE FINAL
   Dots start right after label like other rows
===================================================== */

/* row layout: label | dotted line | answer */
.form-section:has(.form-answer.line-9a) .form990-line-row,
.form-section:has(.form-answer.line-9b) .form990-line-row,
.form-section:has(.form-answer.line-10a) .form990-line-row,
.form-section:has(.form-answer.line-10b) .form990-line-row {
	display: grid !important;
	grid-template-columns: max-content minmax(60px, 1fr) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* label should take only required text width */
.form-section:has(.form-answer.line-9a) .form-headLabel,
.form-section:has(.form-answer.line-9b) .form-headLabel,
.form-section:has(.form-answer.line-10a) .form-headLabel,
.form-section:has(.form-answer.line-10b) .form-headLabel {
	grid-column: 1 !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	display: inline-grid !important;
	grid-template-columns: 42px max-content !important;
	align-items: center !important;
	column-gap: 10px !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* dotted line same like other rows */
.form-section:has(.form-answer.line-9a) .borderDots,
.form-section:has(.form-answer.line-9b) .borderDots,
.form-section:has(.form-answer.line-10a) .borderDots,
.form-section:has(.form-answer.line-10b) .borderDots {
	display: block !important;
	grid-column: 2 !important;

	width: auto !important;
	min-width: 60px !important;
	height: 2px !important;

	margin: 0 15px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* answer wrapper */
.form-section:has(.form-answer.line-9a) .form-answer,
.form-section:has(.form-answer.line-9b) .form-answer,
.form-section:has(.form-answer.line-10a) .form-answer,
.form-section:has(.form-answer.line-10b) .form-answer {
	grid-column: 3 !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	justify-self: end !important;
}

/* 9a / 9b answer box */
.form-section:has(.form-answer.line-9a) .checkRadio-bg,
.form-section:has(.form-answer.line-9b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;
	min-height: 56px !important;

	padding: 12px 14px !important;
	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	column-gap: 12px !important;
	row-gap: 0 !important;
	overflow: hidden !important;
}

/* 10a / 10b answer box */
.form-section:has(.form-answer.line-10a) .checkRadio-bg,
.form-section:has(.form-answer.line-10b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;
	min-height: 94px !important;

	padding: 14px !important;
	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;

	display: flex !important;
	align-items: flex-start !important;
	flex-wrap: wrap !important;
	column-gap: 14px !important;
	row-gap: 8px !important;
}

/* line number - match normal rows */
.form-section:has(.form-answer.line-9a) .labelSerl,
.form-section:has(.form-answer.line-9b) .labelSerl,
.form-section:has(.form-answer.line-10a) .labelSerl,
.form-section:has(.form-answer.line-10b) .labelSerl {
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* label text - match normal rows */
.form-section:has(.form-answer.line-9a) .labelText,
.form-section:has(.form-answer.line-9b) .labelText,
.form-section:has(.form-answer.line-10a) .labelText,
.form-section:has(.form-answer.line-10b) .labelText {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* checkbox option */
.form-section:has(.form-answer.line-9a) .form-check,
.form-section:has(.form-answer.line-9b) .form-check,
.form-section:has(.form-answer.line-10a) .form-check,
.form-section:has(.form-answer.line-10b) .form-check {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding-left: 0 !important;
	white-space: nowrap !important;
	flex: 0 0 auto !important;
}

/* checkbox */
.form-section:has(.form-answer.line-9a) .form-check-input,
.form-section:has(.form-answer.line-9b) .form-check-input,
.form-section:has(.form-answer.line-10a) .form-check-input,
.form-section:has(.form-answer.line-10b) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 7px 0 0 !important;
	flex-shrink: 0 !important;
}

/* checkbox label */
.form-section:has(.form-answer.line-9a) .form-check-label,
.form-section:has(.form-answer.line-9b) .form-check-label,
.form-section:has(.form-answer.line-10a) .form-check-label,
.form-section:has(.form-answer.line-10b) .form-check-label {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 22px !important;
	color: #000000 !important;
	cursor: pointer !important;
}

/* 10a / 10b text child */
.form-section:has(.form-answer.line-10a) .filing.form-group,
.form-section:has(.form-answer.line-10b) .filing.form-group {
	margin-bottom: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
}

/* 10a / 10b attached input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group {
	width: 285px !important;
	min-width: 285px !important;
	max-width: 285px !important;
	flex-wrap: nowrap !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group-text,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group-text {
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 12px !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-control {
	height: 42px !important;
	min-height: 42px !important;
	font-size: 14px !important;
}

/* medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-9a) .checkRadio-bg,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg,
	.form-section:has(.form-answer.line-10a) .checkRadio-bg,
	.form-section:has(.form-answer.line-10b) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
	}

	.form-section:has(.form-answer.line-9a) .form-check-label,
	.form-section:has(.form-answer.line-9b) .form-check-label,
	.form-section:has(.form-answer.line-10a) .form-check-label,
	.form-section:has(.form-answer.line-10b) .form-check-label {
		font-size: 14px !important;
	}
}

/* =====================================================
   ONLY 10a / 10b
===================================================== */

/* Main 10a / 10b card */
.form-section:has(.form-answer.line-10a) .checkRadio-bg,
.form-section:has(.form-answer.line-10b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	padding: 18px 20px !important;
	background: #f8fbff !important;
	border: 1px solid #d9e5ee !important;
	border-radius: 8px !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;

	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 34px !important;
	row-gap: 13px !important;
	align-items: center !important;

	min-height: auto !important;
}

/* Remove small individual white boxes */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check,
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;

	display: flex !important;
	align-items: center !important;
	white-space: nowrap !important;
	width: 100% !important;
	flex: none !important;
}

/* Checkbox normal look */
.form-section:has(.form-answer.line-10a) .form-check-input,
.form-section:has(.form-answer.line-10b) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 8px 0 0 !important;
	border: 1px solid #aebfca !important;
	flex-shrink: 0 !important;
}

/* Text */
.form-section:has(.form-answer.line-10a) .form-check-label,
.form-section:has(.form-answer.line-10b) .form-check-label {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 22px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}
/* =====================================================
   ONLY 10a - CLEAN NO TEXT CUTTING LAYOUT
   Row 1: R + MB
   Row 2: SB + MEP
   Row 3: DCG full line
   Row 4: DCG number textbox
===================================================== */

/* 10a main card */
.form-section:has(.form-answer.line-10a) .checkRadio-bg {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 24px !important;
	row-gap: 12px !important;
	align-items: center !important;

	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	padding: 16px 20px !important;
	min-height: auto !important;
	overflow: visible !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg {
    grid-template-rows: auto auto auto !important;  /* add this */
}

/* common checkbox item */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check {
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	overflow: visible !important;
}

/* allow long text to show */
.form-section:has(.form-answer.line-10a) .form-check-label {
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 500 !important;
	color: #000 !important;
	margin: 0 !important;

	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
}

/* checkbox size */
.form-section:has(.form-answer.line-10a) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 8px 0 0 !important;
	flex-shrink: 0 !important;
}

/* Row 1 left: R */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(1) {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

/* Row 1 right: MB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

/* Row 2 left: SB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(3) {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

/* Row 2 right: MEP */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(6) {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

/* Row 3: DCG full width */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(4) {
	grid-column: 1 / 3 !important;
	grid-row: 3 !important;
}

/* Row 4: DCG textbox full neat line */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(5) {
	grid-column: 1 / 3 !important;
	grid-row: 4 !important;
}

/* remove # icon */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group-text {
	display: none !important;
}

/* textbox wrapper */
.form-section:has(.form-answer.line-10a) .filing.form-group {
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	background: transparent !important;
	border: none !important;
	width: 100% !important;
}

/* input group */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-floating-custom {
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

/* input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control {
	width: 100% !important;
	height: 40px !important;
	min-height: 40px !important;
	border-radius: 7px !important;
	border: 1px solid #b9ccd8 !important;
	background: #f9fdff !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	padding: 8px 12px !important;
	box-shadow: none !important;
}

/* placeholder */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control::placeholder {
	color: #9aa8b3 !important;
	font-weight: 500 !important;
}

/* ── FIX: DCG input cell must not overflow its grid column ── */

/* The nth-child(5) cell that holds the input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(5) {
    grid-column: 2 !important;
    grid-row: 3 !important;
    width: 100% !important;        /* fill the column, don't overflow */
    min-width: 0 !important;       /* ← this is the key fix */
    overflow: hidden !important;
}

/* Input group inside that cell */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-floating-custom {
    width: 100% !important;
    min-width: 0 !important;       /* ← removes the 280px floor */
    max-width: 280px !important;
}

/* Input itself */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control {
    width: 100% !important;
    min-width: 0 !important;       /* ← same fix */
    max-width: 280px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 7px !important;
    border: 1px solid #b9ccd8 !important;
    background: #f9fdff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
}

/* medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-10a) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
	}
}
/* ================= 10b layout ================= */

/* Row 1 left: H */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Row 1 right: I */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Row 2 left: C */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(5) {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Row 2 right: D */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(6) {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

/* Row 3 left: G */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(7) {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

/* Row 4 left: A */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(3) {
    grid-column: 1 !important;
    grid-row: 4 !important;
}

/* Row 4 right: A input */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(4) {
    grid-column: 2 !important;
    grid-row: 4 !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

/* Input group inside A input cell */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-floating-custom {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 280px !important;
}

/* Input control */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 280px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 7px !important;
    border: 1px solid #b9ccd8 !important;
    background: #f9fdff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
}
/* Remove # icon for 10b */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group-text {
    display: none !important;
}

/* =====================================================
    FIX - ALIGN QUESTION NUMBER + QUESTION TEXT
   Fixes zigzag for ALL Form 5500 dynamic rows
===================================================== */

/* Main dynamic form row */
.theme-form .form-section .form990-line-row {
	display: grid !important;
	grid-template-columns: minmax(0, auto) minmax(60px, 1fr) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* Left label block: Question No + Question Text */
.theme-form .form-section .form-headLabel {
	display: grid !important;
	grid-template-columns: 42px minmax(0, auto) !important;
	align-items: center !important;
	column-gap: 10px !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Question number: 5, 6, a(1), 8a, 10a etc */
.theme-form .form-section .labelSerl {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	display: inline-block !important;
	text-align: left !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Question text */
.theme-form .form-section .labelText {
	margin: 0 !important;
	padding: 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
}

/* Dotted ruler should always start after question text */
.theme-form .form-section .borderDots {
	display: block !important;
	height: 2px !important;
	min-width: 60px !important;

	margin: 0 15px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* Right answer/input wrapper */
.theme-form .form-section .form-answer {
	justify-self: end !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* =====================================================
   FIX 8a / 8b FEATURE CODE ROW LABEL ALIGNMENT
===================================================== */

/* Row containing many small feature code boxes */
.theme-form .row:has(> .small-text-box) {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	column-gap: 4px !important;
	row-gap: 6px !important;

	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
}

/* 8a / 8b label block */
.theme-form .row:has(> .small-text-box) > label.col-4 {
	flex: 0 0 340px !important;
	width: 340px !important;
	max-width: 340px !important;

	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	align-items: center !important;
	column-gap: 10px !important;

	margin: 0 !important;
	padding: 0 10px 0 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* 8a / 8b number */
.theme-form .row:has(> .small-text-box) > label.col-4 span {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	display: inline-block !important;
	text-align: left !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	color: #000000 !important;
}

/* Small code boxes should start from same line */
.theme-form .row:has(> .small-text-box) > .small-text-box {
	flex: 0 0 36px !important;
	width: 36px !important;
	min-width: 36px !important;
	max-width: 36px !important;

	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 0 !important;
}

/* =====================================================
   MOBILE SAFE
===================================================== */

@media (max-width: 991px) {
	.theme-form .form-section .form990-line-row {
		grid-template-columns: 1fr !important;
		row-gap: 10px !important;
	}

	.theme-form .form-section .borderDots {
		display: none !important;
	}

	.theme-form .form-section .form-answer {
		justify-self: stretch !important;
		width: 100% !important;
	}

	.theme-form .row:has(> .small-text-box) {
		flex-wrap: wrap !important;
	}

	.theme-form .row:has(> .small-text-box) > label.col-4 {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 8px !important;
	}
}

/*=== ===========*/
/* =====================================================
   FORM 5500 - 9a / 9b / 10a / 10b DOT LINE FINAL
   Dots start right after label like other rows
===================================================== */

/* row layout: label | dotted line | answer */
.form-section:has(.form-answer.line-9a) .form990-line-row,
.form-section:has(.form-answer.line-9b) .form990-line-row,
.form-section:has(.form-answer.line-10a) .form990-line-row,
.form-section:has(.form-answer.line-10b) .form990-line-row {
	display: grid !important;
	grid-template-columns: max-content minmax(60px, 1fr) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* label should take only required text width */
.form-section:has(.form-answer.line-9a) .form-headLabel,
.form-section:has(.form-answer.line-9b) .form-headLabel,
.form-section:has(.form-answer.line-10a) .form-headLabel,
.form-section:has(.form-answer.line-10b) .form-headLabel {
	grid-column: 1 !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	display: inline-grid !important;
	grid-template-columns: 42px max-content !important;
	align-items: center !important;
	column-gap: 10px !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* dotted line same like other rows */
.form-section:has(.form-answer.line-9a) .borderDots,
.form-section:has(.form-answer.line-9b) .borderDots,
.form-section:has(.form-answer.line-10a) .borderDots,
.form-section:has(.form-answer.line-10b) .borderDots {
	display: block !important;
	grid-column: 2 !important;

	width: auto !important;
	min-width: 60px !important;
	height: 2px !important;

	margin: 0 15px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* answer wrapper */
.form-section:has(.form-answer.line-9a) .form-answer,
.form-section:has(.form-answer.line-9b) .form-answer,
.form-section:has(.form-answer.line-10a) .form-answer,
.form-section:has(.form-answer.line-10b) .form-answer {
	grid-column: 3 !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	justify-self: end !important;
}

/* 9a / 9b answer box */
.form-section:has(.form-answer.line-9a) .checkRadio-bg,
.form-section:has(.form-answer.line-9b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;
	min-height: 56px !important;

	padding: 12px 14px !important;
	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;

	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	column-gap: 12px !important;
	row-gap: 0 !important;
	overflow: hidden !important;
}

/* 10a / 10b answer box */
.form-section:has(.form-answer.line-10a) .checkRadio-bg,
.form-section:has(.form-answer.line-10b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;
	min-height: 94px !important;

	padding: 14px !important;
	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;

	display: flex !important;
	align-items: flex-start !important;
	flex-wrap: wrap !important;
	column-gap: 14px !important;
	row-gap: 8px !important;
}

/* line number - match normal rows */
.form-section:has(.form-answer.line-9a) .labelSerl,
.form-section:has(.form-answer.line-9b) .labelSerl,
.form-section:has(.form-answer.line-10a) .labelSerl,
.form-section:has(.form-answer.line-10b) .labelSerl {
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* label text - match normal rows */
.form-section:has(.form-answer.line-9a) .labelText,
.form-section:has(.form-answer.line-9b) .labelText,
.form-section:has(.form-answer.line-10a) .labelText,
.form-section:has(.form-answer.line-10b) .labelText {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* checkbox option */
.form-section:has(.form-answer.line-9a) .form-check,
.form-section:has(.form-answer.line-9b) .form-check,
.form-section:has(.form-answer.line-10a) .form-check,
.form-section:has(.form-answer.line-10b) .form-check {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding-left: 0 !important;
	white-space: nowrap !important;
	flex: 0 0 auto !important;
}

/* checkbox */
.form-section:has(.form-answer.line-9a) .form-check-input,
.form-section:has(.form-answer.line-9b) .form-check-input,
.form-section:has(.form-answer.line-10a) .form-check-input,
.form-section:has(.form-answer.line-10b) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 7px 0 0 !important;
	flex-shrink: 0 !important;
}

/* checkbox label */
.form-section:has(.form-answer.line-9a) .form-check-label,
.form-section:has(.form-answer.line-9b) .form-check-label,
.form-section:has(.form-answer.line-10a) .form-check-label,
.form-section:has(.form-answer.line-10b) .form-check-label {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 22px !important;
	color: #000000 !important;
	cursor: pointer !important;
}

/* 10a / 10b text child */
.form-section:has(.form-answer.line-10a) .filing.form-group,
.form-section:has(.form-answer.line-10b) .filing.form-group {
	margin-bottom: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
}

/* 10a / 10b attached input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group {
	width: 285px !important;
	min-width: 285px !important;
	max-width: 285px !important;
	flex-wrap: nowrap !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group-text,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group-text {
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 12px !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-control {
	height: 42px !important;
	min-height: 42px !important;
	font-size: 14px !important;
}

/* medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-9a) .checkRadio-bg,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg,
	.form-section:has(.form-answer.line-10a) .checkRadio-bg,
	.form-section:has(.form-answer.line-10b) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
	}

	.form-section:has(.form-answer.line-9a) .form-check-label,
	.form-section:has(.form-answer.line-9b) .form-check-label,
	.form-section:has(.form-answer.line-10a) .form-check-label,
	.form-section:has(.form-answer.line-10b) .form-check-label {
		font-size: 14px !important;
	}
}

/* =====================================================
   ONLY 10a / 10b
===================================================== */

/* Main 10a / 10b card */
.form-section:has(.form-answer.line-10a) .checkRadio-bg,
.form-section:has(.form-answer.line-10b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	padding: 18px 20px !important;
	background: #f8fbff !important;
	border: 1px solid #d9e5ee !important;
	border-radius: 8px !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;

	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 34px !important;
	row-gap: 13px !important;
	align-items: center !important;

	min-height: auto !important;
}

/* Remove small individual white boxes */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check,
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;

	display: flex !important;
	align-items: center !important;
	white-space: nowrap !important;
	width: 100% !important;
	flex: none !important;
}

/* Checkbox normal look */
.form-section:has(.form-answer.line-10a) .form-check-input,
.form-section:has(.form-answer.line-10b) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 8px 0 0 !important;
	border: 1px solid #aebfca !important;
	flex-shrink: 0 !important;
}

/* Text */
.form-section:has(.form-answer.line-10a) .form-check-label,
.form-section:has(.form-answer.line-10b) .form-check-label {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 22px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}
/* =====================================================
   ONLY 10a - CLEAN NO TEXT CUTTING LAYOUT
   Row 1: R + MB
   Row 2: SB + MEP
   Row 3: DCG full line
   Row 4: DCG number textbox
===================================================== */

/* 10a main card */
.form-section:has(.form-answer.line-10a) .checkRadio-bg {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 24px !important;
	row-gap: 12px !important;
	align-items: center !important;

	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	padding: 16px 20px !important;
	min-height: auto !important;
	overflow: visible !important;
}

.form-section:has(.form-answer.line-10a) .checkRadio-bg {
    grid-template-rows: auto auto auto !important;  /* add this */
}

/* common checkbox item */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check {
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	overflow: visible !important;
}

/* allow long text to show */
.form-section:has(.form-answer.line-10a) .form-check-label {
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 500 !important;
	color: #000 !important;
	margin: 0 !important;

	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
}

/* checkbox size */
.form-section:has(.form-answer.line-10a) .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 8px 0 0 !important;
	flex-shrink: 0 !important;
}

/* Row 1 left: R */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(1) {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

/* Row 1 right: MB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

/* Row 2 left: SB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(3) {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

/* Row 2 right: MEP */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(6) {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

/* Row 3: DCG full width */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(4) {
	grid-column: 1 / 3 !important;
	grid-row: 3 !important;
}

/* Row 4: DCG textbox full neat line */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(5) {
	grid-column: 1 / 3 !important;
	grid-row: 4 !important;
}

/* remove # icon */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group-text {
	display: none !important;
}

/* textbox wrapper */
.form-section:has(.form-answer.line-10a) .filing.form-group {
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	background: transparent !important;
	border: none !important;
	width: 100% !important;
}

/* input group */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-floating-custom {
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

/* input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control {
	width: 100% !important;
	height: 40px !important;
	min-height: 40px !important;
	border-radius: 7px !important;
	border: 1px solid #b9ccd8 !important;
	background: #f9fdff !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	padding: 8px 12px !important;
	box-shadow: none !important;
}

/* placeholder */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control::placeholder {
	color: #9aa8b3 !important;
	font-weight: 500 !important;
}

/* ── FIX: DCG input cell must not overflow its grid column ── */

/* The nth-child(5) cell that holds the input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(5) {
    grid-column: 2 !important;
    grid-row: 3 !important;
    width: 100% !important;        /* fill the column, don't overflow */
    min-width: 0 !important;       /* ← this is the key fix */
    overflow: hidden !important;
}

/* Input group inside that cell */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-floating-custom {
    width: 100% !important;
    min-width: 0 !important;       /* ← removes the 280px floor */
    max-width: 280px !important;
}

/* Input itself */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control {
    width: 100% !important;
    min-width: 0 !important;       /* ← same fix */
    max-width: 280px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 7px !important;
    border: 1px solid #b9ccd8 !important;
    background: #f9fdff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
}

/* medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-10a) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
	}
}
/* ================= 10b layout ================= */

/* Row 1 left: H */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Row 1 right: I */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Row 2 left: C */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(5) {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Row 2 right: D */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(6) {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

/* Row 3 left: G */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(7) {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

/* Row 4 left: A */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(3) {
    grid-column: 1 !important;
    grid-row: 4 !important;
}

/* Row 4 right: A input */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(4) {
    grid-column: 2 !important;
    grid-row: 4 !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

/* Input group inside A input cell */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-floating-custom {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 280px !important;
}

/* Input control */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 280px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 7px !important;
    border: 1px solid #b9ccd8 !important;
    background: #f9fdff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
}
/* Remove # icon for 10b */
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group-text {
    display: none !important;
}

/* =====================================================
    FIX - ALIGN QUESTION NUMBER + QUESTION TEXT
   Fixes zigzag for ALL Form 5500 dynamic rows
===================================================== */

/* Main dynamic form row */
.theme-form .form-section .form990-line-row {
	display: grid !important;
	grid-template-columns: minmax(0, auto) minmax(60px, 1fr) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* Left label block: Question No + Question Text */
.theme-form .form-section .form-headLabel {
	display: grid !important;
	grid-template-columns: 42px minmax(0, auto) !important;
	align-items: center !important;
	column-gap: 10px !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Question number: 5, 6, a(1), 8a, 10a etc */
.theme-form .form-section .labelSerl {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	display: inline-block !important;
	text-align: left !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Question text */
.theme-form .form-section .labelText {
	margin: 0 !important;
	padding: 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
}

/* Dotted ruler should always start after question text */
.theme-form .form-section .borderDots {
	display: block !important;
	height: 2px !important;
	min-width: 60px !important;

	margin: 0 15px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* Right answer/input wrapper */
.theme-form .form-section .form-answer {
	justify-self: end !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* =====================================================
   FIX 8a / 8b FEATURE CODE ROW LABEL ALIGNMENT
===================================================== */

/* Row containing many small feature code boxes */
.theme-form .row:has(> .small-text-box) {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	column-gap: 4px !important;
	row-gap: 6px !important;

	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
}

/* 8a / 8b label block */
.theme-form .row:has(> .small-text-box) > label.col-4 {
	flex: 0 0 340px !important;
	width: 340px !important;
	max-width: 340px !important;

	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	align-items: center !important;
	column-gap: 10px !important;

	margin: 0 !important;
	padding: 0 10px 0 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* 8a / 8b number */
.theme-form .row:has(> .small-text-box) > label.col-4 span {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	display: inline-block !important;
	text-align: left !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	color: #000000 !important;
}

/* Small code boxes should start from same line */
.theme-form .row:has(> .small-text-box) > .small-text-box {
	flex: 0 0 36px !important;
	width: 36px !important;
	min-width: 36px !important;
	max-width: 36px !important;

	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 0 !important;
}

/* =====================================================
   MOBILE SAFE
===================================================== */

@media (max-width: 991px) {
	.theme-form .form-section .form990-line-row {
		grid-template-columns: 1fr !important;
		row-gap: 10px !important;
	}

	.theme-form .form-section .borderDots {
		display: none !important;
	}

	.theme-form .form-section .form-answer {
		justify-self: stretch !important;
		width: 100% !important;
	}

	.theme-form .row:has(> .small-text-box) {
		flex-wrap: wrap !important;
	}

	.theme-form .row:has(> .small-text-box) > label.col-4 {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 8px !important;
	}
}
/* =====================================================
   FINAL FIX - LONG QUESTION LABEL SHOULD WRAP TO NEXT LINE
   Stops label text from overlapping answer/input
===================================================== */

/* Main row: label | dots | answer */
.theme-form .form-section .form990-line-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(40px, 160px) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* Left label area */
.theme-form .form-section .form-headLabel {
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	align-items: flex-start !important;
	column-gap: 10px !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Line number */
.theme-form .form-section .labelSerl {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Question text - allow wrapping */
.theme-form .form-section .labelText {
	margin: 0 !important;
	padding: 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;

	min-width: 0 !important;
	max-width: 100% !important;
}

/* Dotted line */
.theme-form .form-section .borderDots {
	display: block !important;
	height: 2px !important;
	min-width: 40px !important;
	margin: 0 15px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* Right answer/input */
.theme-form .form-section .form-answer {
	justify-self: end !important;
	width: auto !important;
	min-width: 260px !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* For long labels like 10a, 11, 12, 13 */
.form-section:has(.form-answer.line-10a) .form990-line-row,
.form-section:has(.form-answer.line-10b) .form990-line-row,
.form-section:has(.form-answer.line-11) .form990-line-row,
.form-section:has(.form-answer.line-12) .form990-line-row,
.form-section:has(.form-answer.line-13) .form990-line-row {
	grid-template-columns: minmax(0, 1fr) minmax(40px, 160px) auto !important;
}

/* Make sure special line labels also wrap */
.form-section:has(.form-answer.line-10a) .form-headLabel,
.form-section:has(.form-answer.line-10b) .form-headLabel,
.form-section:has(.form-answer.line-11) .form-headLabel,
.form-section:has(.form-answer.line-12) .form-headLabel,
.form-section:has(.form-answer.line-13) .form-headLabel {
	width: 100% !important;
	max-width: 100% !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
}

.form-section:has(.form-answer.line-10a) .labelText,
.form-section:has(.form-answer.line-10b) .labelText,
.form-section:has(.form-answer.line-11) .labelText,
.form-section:has(.form-answer.line-12) .labelText,
.form-section:has(.form-answer.line-13) .labelText {
	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

/* Mobile */
@media (max-width: 991px) {
	.theme-form .form-section .form990-line-row {
		grid-template-columns: 1fr !important;
		row-gap: 10px !important;
	}

	.theme-form .form-section .borderDots {
		display: none !important;
	}

	.theme-form .form-section .form-answer {
		justify-self: stretch !important;
		width: 100% !important;
		min-width: 0 !important;
	}
}

/* =====================================================
   FINAL FIX - FORM 5500 ROW LABEL + DOTS + CHECKBOX ALIGN
===================================================== */

/* Common dynamic row layout */
.theme-form .form-section .form990-line-row {
	display: grid !important;
	grid-template-columns: fit-content(820px) minmax(35px, 1fr) auto !important;
	align-items: center !important;
	column-gap: 0 !important;
	width: 100% !important;
}

/* Left label block */
.theme-form .form-section .form-headLabel {
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	align-items: flex-start !important;
	column-gap: 10px !important;

	width: fit-content !important;
	max-width: 820px !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Line number */
.theme-form .form-section .labelSerl {
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;

	display: inline-block !important;
	text-align: left !important;

	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Label text - wraps cleanly */
.theme-form .form-section .labelText {
	margin: 0 !important;
	padding: 0 !important;

	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	color: #000000 !important;

	white-space: normal !important;
	overflow-wrap: normal !important;
	word-break: normal !important;

	max-width: 760px !important;
	min-width: 0 !important;
}

/* Dotted line */
.theme-form .form-section .borderDots {
	display: block !important;
	grid-column: 2 !important;

	height: 2px !important;
	min-width: 35px !important;

	margin: 0 14px !important;
	border: 0 !important;

	background-image: radial-gradient(circle, rgb(12 123 171 / 55%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* Right answer/input wrapper */
.theme-form .form-section .form-answer {
	grid-column: 3 !important;
	justify-self: end !important;

	width: auto !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Normal input group on right side */
.theme-form .form-section .form-answer .input-group {
	width: 360px !important;
	min-width: 360px !important;
	max-width: 360px !important;
	flex-wrap: nowrap !important;
}

/* Input height */
.theme-form .form-section .form-answer .form-control {
	height: 48px !important;
	min-height: 48px !important;
}

/* =====================================================
   RADIO / CHECKBOX ANSWER BOX ALIGNMENT
===================================================== */

.theme-form .form-section .form-answer .checkRadio-bg {
	min-height: 58px !important;
	padding: 12px 16px !important;

	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: wrap !important;

	column-gap: 24px !important;
	row-gap: 10px !important;

	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;
}

/* Checkbox / radio item */
.theme-form .form-section .form-answer .checkRadio-bg .form-check {
	display: inline-flex !important;
	align-items: center !important;

	margin: 0 !important;
	padding: 0 !important;

	min-height: 24px !important;
	white-space: nowrap !important;

	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Checkbox/radio input */
.theme-form .form-section .form-answer .checkRadio-bg .form-check-input {
	width: 18px !important;
	height: 18px !important;

	margin: 0 8px 0 0 !important;
	padding: 0 !important;

	flex: 0 0 18px !important;
	position: static !important;
}

/* Checkbox/radio label */
.theme-form .form-section .form-answer .checkRadio-bg .form-check-label {
	margin: 0 !important;

	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 22px !important;
	color: #000000 !important;

	cursor: pointer !important;
	white-space: nowrap !important;
}


/* =====================================================
   FINAL OVERRIDE - FORM 5500 LINE 10a / 10b
   Make 10a and 10b look like first screenshot
===================================================== */

/* Answer card common */
.form-section:has(.form-answer.line-10a) .checkRadio-bg,
.form-section:has(.form-answer.line-10b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 34px !important;
	row-gap: 12px !important;
	align-items: center !important;

	padding: 16px 20px !important;
	background: #f8fbff !important;
	border: 1px solid #d9e5ee !important;
	border-radius: 8px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04) !important;

	min-height: auto !important;
	overflow: visible !important;
}

/* Checkbox rows common */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check,
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;

	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0 !important;
	white-space: nowrap !important;
	overflow: visible !important;
}

/* Checkbox */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-check-input,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 8px 0 0 !important;
	flex: 0 0 18px !important;
	position: static !important;
}

/* Label text */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-check-label,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-check-label {
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 20px !important;
	color: #000000 !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
}

/* Remove # icon before number attached input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group-text,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group-text {
	display: none !important;
}

/* Input wrapper */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-floating-custom,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .input-group,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-floating-custom {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 280px !important;
	flex-wrap: nowrap !important;
}

/* Input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg .form-control,
.form-section:has(.form-answer.line-10b) .checkRadio-bg .form-control {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 280px !important;

	height: 40px !important;
	min-height: 40px !important;

	border-radius: 7px !important;
	border: 1px solid #b9ccd8 !important;
	background: #f9fdff !important;

	font-size: 14px !important;
	font-weight: 500 !important;
	padding: 8px 12px !important;
	box-shadow: none !important;
}

/* =====================================================
   10a ORDER
   DOM order:
   1 R, 2 MB, 3 SB, 4 DCG, 5 DCG input, 6 MEP
===================================================== */

/* Row 1 left: R */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(1) {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

/* Row 1 right: MB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

/* Row 2 left: SB */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(3) {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

/* Row 2 right: MEP */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(6) {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

/* Row 3 left: DCG */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(4) {
	grid-column: 1 !important;
	grid-row: 3 !important;
}

/* Row 3 right: DCG input */
.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check:nth-child(5) {
	grid-column: 2 !important;
	grid-row: 3 !important;
	width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
}

/* =====================================================
   10b ORDER
   DOM order:
   1 H, 2 I, 3 A, 4 A input, 5 C, 6 D, 7 G
===================================================== */

/* Row 1 left: H */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(1) {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

/* Row 1 right: I */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

/* Row 2 left: C */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(5) {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

/* Row 2 right: D */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(6) {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

/* Row 3 left: G */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(7) {
	grid-column: 1 !important;
	grid-row: 3 !important;
}

/* Row 4 left: A */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(3) {
	grid-column: 1 !important;
	grid-row: 4 !important;
}

/* Row 4 right: A input */
.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check:nth-child(4) {
	grid-column: 2 !important;
	grid-row: 4 !important;
	width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
}

/* Keep 10a / 10b answer box right side same */
.form-section:has(.form-answer.line-10a) .form-answer,
.form-section:has(.form-answer.line-10b) .form-answer {
	justify-self: end !important;
	width: auto !important;
	min-width: 0 !important;
}

/* Medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-10a) .checkRadio-bg,
	.form-section:has(.form-answer.line-10b) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
		column-gap: 26px !important;
	}
}

/* Mobile */
@media (max-width: 991px) {
	.form-section:has(.form-answer.line-10a) .checkRadio-bg,
	.form-section:has(.form-answer.line-10b) .checkRadio-bg {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		grid-template-columns: 1fr !important;
	}

	.form-section:has(.form-answer.line-10a) .checkRadio-bg > .form-check,
	.form-section:has(.form-answer.line-10b) .checkRadio-bg > .form-check {
		grid-column: 1 !important;
		grid-row: auto !important;
	}
}
/* =====================================================
   FINAL FIX - 9a / 9b SINGLE LINE OPTIONS
   Paste at VERY END of CSS
===================================================== */

/* Row layout: label | dots | answer */
.form-section:has(.form-answer.line-9a) .form990-line-row,
.form-section:has(.form-answer.line-9b) .form990-line-row {
	display: grid !important;
	grid-template-columns: max-content minmax(45px, 1fr) auto !important;
	align-items: center !important;
	width: 100% !important;
	column-gap: 0 !important;
}

/* Keep 9a / 9b label in one line */
.form-section:has(.form-answer.line-9a) .form-headLabel,
.form-section:has(.form-answer.line-9b) .form-headLabel {
	display: grid !important;
	grid-template-columns: 42px max-content !important;
	align-items: center !important;
	column-gap: 10px !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.form-section:has(.form-answer.line-9a) .labelText,
.form-section:has(.form-answer.line-9b) .labelText {
	white-space: nowrap !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 24px !important;
	margin: 0 !important;
}

/* Dots after label */
.form-section:has(.form-answer.line-9a) .borderDots,
.form-section:has(.form-answer.line-9b) .borderDots {
	display: block !important;
	height: 2px !important;
	min-width: 45px !important;
	margin: 0 15px !important;
	border: 0 !important;
	background-image: radial-gradient(circle, rgb(12 123 171 / 55%) 1.5px, transparent 1.5px) !important;
	background-size: 15px 2px !important;
	background-repeat: repeat-x !important;
	background-position: center !important;
}

/* Answer wrapper */
.form-section:has(.form-answer.line-9a) .form-answer,
.form-section:has(.form-answer.line-9b) .form-answer {
	justify-self: end !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Main 9a / 9b checkbox box */
.form-section:has(.form-answer.line-9a) .checkRadio-bg,
.form-section:has(.form-answer.line-9b) .checkRadio-bg {
	width: 780px !important;
	min-width: 780px !important;
	max-width: 780px !important;

	min-height: 56px !important;
	height: 56px !important;

	padding: 0 14px !important;
	background: #f8f9fc !important;
	border: 1px solid #d9e2ec !important;
	border-radius: 7px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;

	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;

	column-gap: 10px !important;
	row-gap: 0 !important;
	overflow: hidden !important;
}

/* Each checkbox item should NOT take full width */
.form-section:has(.form-answer.line-9a) .checkRadio-bg > .form-check,
.form-section:has(.form-answer.line-9b) .checkRadio-bg > .form-check {
	width: auto !important;
	min-width: auto !important;
	max-width: none !important;

	flex: 0 0 auto !important;

	display: inline-flex !important;
	align-items: center !important;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
	border: none !important;
	box-shadow: none !important;

	white-space: nowrap !important;
	overflow: visible !important;
}

/* Checkbox size */
.form-section:has(.form-answer.line-9a) .checkRadio-bg .form-check-input,
.form-section:has(.form-answer.line-9b) .checkRadio-bg .form-check-input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 6px 0 0 !important;
	flex: 0 0 18px !important;
}

/* Option text smaller so all 4 fit in one line */
.form-section:has(.form-answer.line-9a) .checkRadio-bg .form-check-label,
.form-section:has(.form-answer.line-9b) .checkRadio-bg .form-check-label {
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 20px !important;
	color: #000000 !important;
	white-space: nowrap !important;
}

/* Medium screen */
@media (max-width: 1400px) {
	.form-section:has(.form-answer.line-9a) .checkRadio-bg,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg {
		width: 720px !important;
		min-width: 720px !important;
		max-width: 720px !important;
		column-gap: 8px !important;
	}

	.form-section:has(.form-answer.line-9a) .checkRadio-bg .form-check-label,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg .form-check-label {
		font-size: 13px !important;
	}
}

/* Mobile */
@media (max-width: 991px) {
	.form-section:has(.form-answer.line-9a) .checkRadio-bg,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 56px !important;
		flex-wrap: wrap !important;
		row-gap: 10px !important;
	}

	.form-section:has(.form-answer.line-9a) .checkRadio-bg .form-check-label,
	.form-section:has(.form-answer.line-9b) .checkRadio-bg .form-check-label {
		white-space: normal !important;
	}
}



/* Ensure all footer columns visible */
/*.footer-email-link {
    color: inherit !important;  or your desired color
    visibility: visible !important;
    opacity: 1 !important;
}*/
/* Footer email link should be blue like phone */
#footerSide .footer-email-link,
#footerSide .fotrIcon-item .txt a.footer-email-link {
    color: var(--simple-blue-color) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

#footerSide .footer-email-link:hover {
    color: var(--simple-orange-color) !important;
}
.custom-toast {
    position: fixed;
    top: 90px;
    right: 30px;
    z-index: 99999;
    padding: 14px 22px;
    border-radius: 8px;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
    animation: toastSlideIn 0.3s ease;
}

.toast-success {
    background: #198754;
}

.toast-error {
    background: #dc3545;
}

@keyframes toastSlideIn {
    from {
        opacity: 0;
        transform: translateX(40px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}


/* Footer should start after sidebar - same as main content */
#footerSide.footer {
    margin-left: 275px !important;
    width: calc(100% - 275px) !important;
    position: relative !important;
    z-index: 10 !important;
    overflow: visible !important;
}

/* If sidebar collapsed/open class changes in your theme */
body:not(.toggle-sidebar) #footerSide.footer {
    margin-left: 275px !important;
    width: calc(100% - 275px) !important;
}

/* When sidebar is actually hidden/collapsed */
body.sidebar-collapsed #footerSide.footer,
body.sidebar-hidden #footerSide.footer {
    margin-left: 0 !important;
    width: 100% !important;
}

/* Footer row alignment */
#footerSide .row {
    display: flex !important;
    align-items: center !important;
}

/* Footer items */
#footerSide .fotrIcon-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    min-width: 0 !important;
}

/* Text block */
#footerSide .fotrIcon-item .txt {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    line-height: 1.35 !important;
    min-width: 0 !important;
    overflow: visible !important;
}

#footerSide .fotrIcon-item .txt h6 {
    margin: 0 0 4px 0 !important;
    white-space: nowrap !important;
}

#footerSide .fotrIcon-item .txt a,
#footerSide .fotrIcon-item .txt span {
    display: block !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}

/* =====================================================
   FOOTER ICON + TEXT GAP FIX
   Make icon close to text like dev screenshot
===================================================== */

#footerSide .fotrIcon-item {
    display: inline-flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 8px !important;
}

#footerSide .fotrIcon-item i {
    margin-right: 0 !important;
    margin-top: 3px !important;
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    text-align: center !important;
    font-size: 22px !important;
}

#footerSide .fotrIcon-item .txt {
    margin-left: 0 !important;
    padding-left: 0 !important;
    line-height: 1.35 !important;
}

#footerSide .fotrIcon-item .txt h6 {
    margin: 0 0 4px 0 !important;
}

#footerSide .fotrIcon-item .txt a,
#footerSide .fotrIcon-item .txt span {
    margin-left: 0 !important;
}
/* =====================================================
   START NEW FILING - FILING INFORMATION 3 COLUMNS FINAL
   Paste at VERY END only
===================================================== */

.taxPeriodPlanCard #filingInfoOptions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    width: 100% !important;

    margin-left: -12px !important;
    margin-right: -12px !important;
    padding: 0 !important;
}

/* 3 fields in one row */
.taxPeriodPlanCard #filingInfoOptions > .col-lg-4 {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    width: 33.333333% !important;

    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-bottom: 0 !important;
}

/* remove old vertical/card styles */
.taxPeriodPlanCard #filingInfoOptions .filingInfoSingleCol {
    width: 100% !important;
    min-height: auto !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* label same as plan information */
.taxPeriodPlanCard #filingInfoOptions .filingInfoSingleLabel {
    display: block !important;
    min-height: 38px !important;
    margin-bottom: 8px !important;

    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    color: #111827 !important;
}

/* yes/no align with inputs */
.taxPeriodPlanCard #filingInfoOptions .yesNoRadioWrap {
    height: 50px !important;
    min-height: 50px !important;

    display: flex !important;
    align-items: center !important;
    gap: 26px !important;
}

/* dropdown and description same as input */
.taxPeriodPlanCard #filingInfoOptions .filing-multiselect,
.taxPeriodPlanCard #filingInfoOptions .filing-selected-display,
.taxPeriodPlanCard #filingInfoOptions #specialExtensionDesc {
    width: 100% !important;
    max-width: 100% !important;
}

.taxPeriodPlanCard #filingInfoOptions .filing-selected-display,
.taxPeriodPlanCard #filingInfoOptions #specialExtensionDesc {
    height: 50px !important;
    min-height: 50px !important;
}

/* Description should NOT go down */
.taxPeriodPlanCard #filingInfoOptions .specialExtensionSingle {
    margin-top: 0 !important;
}

/* dropdown panel */
.taxPeriodPlanCard #filingInfoOptions .filing-options-panel {
    width: 100% !important;
    z-index: 99999 !important;
}

/* SECURE Act question should come next row */
.taxPeriodPlanCard #filingInfoOptions > .col-lg-4:nth-child(4) {
    margin-top: 18px !important;
}

/* tablet */
@media (max-width: 991px) {
    .taxPeriodPlanCard #filingInfoOptions > .col-lg-4 {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
        margin-bottom: 18px !important;
    }
}

/* mobile */
@media (max-width: 575px) {
    .taxPeriodPlanCard #filingInfoOptions > .col-lg-4 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}
/* Filing Information: make dropdown and description equal height */
.filingInfoWrapper #filingUnderDropdown_display,
.filingInfoWrapper #specialExtensionDesc {
    width: 100%;
    height: 64px;
    min-height: 64px;
    box-sizing: border-box;
    border-radius: 8px;
    font-size: 16px;
}

/* Dropdown display alignment */
.filingInfoWrapper #filingUnderDropdown_display {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
}

/* Description input alignment */
.filingInfoWrapper #specialExtensionDesc {
    padding: 0 16px;
    line-height: 64px;
}

/* Keep label spacing same */
.filingInfoWrapper .filingInfoSingleLabel {
    min-height: 24px;
    margin-bottom: 14px;
}

/* Disabled description style */
.filingInfoWrapper #specialExtensionDesc:disabled {
    background-color: #e9ecef !important;
    cursor: not-allowed;
}

/* Enabled description style */
.filingInfoWrapper #specialExtensionDesc:not(:disabled) {
    background-color: #ffffff !important;
    cursor: text;
}

/* ===== FINAL FIX: match specificity of the 50px rule to win the cascade ===== */
.taxPeriodPlanCard #filingInfoOptions .filing-selected-display,
.taxPeriodPlanCard #filingInfoOptions #filingUnderDropdown_display,
.taxPeriodPlanCard #filingInfoOptions #specialExtensionDesc {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    padding: 0 12px !important;
    line-height: normal !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}


/* ===== Filing Information dropdown + description same height ===== */

#taxPeriodPlanForm .filingInfoWrapper #filingUnderDropdown_display,
#taxPeriodPlanForm .filingInfoWrapper #specialExtensionDesc {
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    box-sizing: border-box !important;
    border-radius: 8px !important;
    font-size: 15px !important;
}

/* Select if Filing Under box */
#taxPeriodPlanForm .filingInfoWrapper #filingUnderDropdown_display {
    display: flex !important;
    align-items: center !important;
    padding: 0 14px !important;
}

/* Description textbox */
#taxPeriodPlanForm .filingInfoWrapper #specialExtensionDesc {
    padding: 0 14px !important;
    line-height: normal !important;
}

/* Keep both labels same spacing */
#taxPeriodPlanForm .filingInfoWrapper .filingInfoSingleLabel {
    min-height: 22px !important;
    margin-bottom: 12px !important;
}

/* Disabled description */
#taxPeriodPlanForm .filingInfoWrapper #specialExtensionDesc:disabled {
    background-color: #e9ecef !important;
    cursor: not-allowed !important;
}

/* Enabled description */
#taxPeriodPlanForm .filingInfoWrapper #specialExtensionDesc:not(:disabled) {
    background-color: #ffffff !important;
    cursor: text !important;
}

/* Align Plan Entity Type and Specify DFE to same height */
#reportForDropdownWrap .row.g-3.mb-3 {
    align-items: flex-end; /* aligns bottoms if labels differ in line-wrap */
}

#reportForMultiDropdown .filing-selected-display {
    height: 38px;          /* match Bootstrap's default select height */
    min-height: 38px;
    display: flex;
    align-items: center;
}

#dfeSpecifyInput.form-select {
    height: 38px;
    min-height: 38px;
    padding-top: 0;
    padding-bottom: 0;
}


/* ===== Plan Entity Type + Specify DFE - Same Height Fix ===== */

#reportForDropdownWrap .row.g-3.mb-3 {
    align-items: flex-start !important;
}

/* Force Plan Entity Type custom multiselect to 48px */
#reportForMultiDropdown.filing-multiselect .filing-selected-display,
#reportForMultiDropdown_display {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    padding: 0 12px !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Force Specify DFE native select to exact same 48px */
#dfeSpecifyInput.form-select {
    height: var(--form-input-height) !important;
    min-height: var(--form-input-height) !important;
    max-height: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    box-sizing: border-box !important;
}

/* Make both labels same line-height so tops align too */
#reportForDropdownWrap .col-lg-6 > .form-label,
#reportForDropdownWrap #dfeSpecifyBox > .form-label {
    display: block !important;
    margin-bottom: 8px !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}
#dfeSpecifyBox {
    position: static !important;
}

#dfeSpecifyBox .invalid-feedback {
    position: static !important;
    left: auto !important;
}


/* Small-code rows: label | dotted leader | dropdowns */
.form-section:has(.small-code-select)
.d-lg-flex.align-items-center.justify-content-between {
    display: grid !important;
    grid-template-columns: max-content minmax(620px, 1fr) !important;
    align-items: center !important;
    column-gap: 24px !important;
    width: 100% !important;
}

.form-section:has(.small-code-select) .form-headLabel {
    width: auto !important;
    max-width: 360px !important;
    min-width: 0 !important;
}

.form-section:has(.small-code-select) .labelText {
    white-space: normal !important;
    line-height: 1.45 !important;
}

/* Proper dotted leader */
.form-section:has(.small-code-select) .borderDots {
    display: block !important;
    width: auto !important;
    min-width: 45px !important;
    height: 2px !important;
    margin: 0 16px !important;
    border: 0 !important;

    background-image:
        radial-gradient(
            circle,
            rgb(12 123 171 / 55%) 1.5px,
            transparent 1.5px
        ) !important;
    background-size: 15px 2px !important;
    background-repeat: repeat-x !important;
    background-position: center !important;
}

/* Answer area */
.form-section:has(.small-code-select) > .row .ms-auto {
    width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
}

/* Keep code dropdowns neat */
.theme-form .row:has(> .small-text-dropdown-box) {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    column-gap: 7px !important;
    row-gap: 9px !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Hide duplicate child label when parent label already displays it */
.theme-form .row:has(> .small-text-dropdown-box) > label {
    display: none !important;
}

.small-text-dropdown-box {
    flex: 0 0 68px !important;
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.small-code-select-wrap {
    width: 68px !important;
}

.small-code-select {
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;

    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;

    padding: 0 25px 0 10px !important;
    border: 1px solid #b9cddd !important;
    border-radius: 7px !important;
    background-color: #f8fbfd !important;
    background-position: right 7px center !important;

    color: #061b3a !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

.small-code-select:hover {
    border-color: #6aaecb !important;
    background-color: #fff !important;
}

.small-code-select:focus {
    border-color: #0c7bab !important;
    background-color: #fff !important;
    box-shadow: 0 0 0 3px rgba(12, 123, 171, 0.12) !important;
}

@media (max-width: 991px) {
    .form-section:has(.small-code-select)
    .d-lg-flex.align-items-center.justify-content-between {
        grid-template-columns: 1fr !important;
        row-gap: 12px !important;
    }

    .form-section:has(.small-code-select) .borderDots {
        display: none !important;
    }
}

/* Remove dotted leader only for small-text dropdown rows */
.form-section:has(.small-code-select) .borderDots {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    background: none !important;
}

/* TableSub layout */
.form-section:has(.table-sub-answer) .borderDots {
    display: none !important;
}

.form-section:has(.table-sub-answer)
> .row
> .col-lg-12
> .d-lg-flex {
    display: block !important;
    width: 100% !important;
}

.form-section:has(.table-sub-answer) .form-headLabel {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
}

.form-section:has(.table-sub-answer) .ms-auto,
.table-sub-answer,
.table-sub-answer .table-responsive {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.form-section:has(.table-sub-answer) > .row.mb-4 {
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
    border: 0 !important;
}

.input-group {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch !important;
}

.input-group-text {
    display: flex;
    align-items: center;
}

input[type="date"].form-control {
    height: 48px !important;
    min-height: 48px !important;
    line-height: 1.5;
    padding-top: 0;
    padding-bottom: 0;
}

.myTheme-offcanvas .offcanvas-header {
    position: relative;
    padding-right: 45px;
}

.myTheme-offcanvas .infoCloseBtn {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    font-weight: 400;
    cursor: pointer;
    opacity: 1;
    z-index: 9999;
}

.myTheme-offcanvas .infoCloseBtn:hover {
    color: #fff;
    opacity: .8;
}

/* Info link inline fix only - do not change row/grid layout */
.form-section .labelText {
    display: inline !important;
}

.form-section .labelText > span,
.form-section .labelText .infoLink {
    display: inline !important;
    vertical-align: baseline !important;
}

.form-section .labelText .infoLink {
    margin-left: 8px !important;
    white-space: nowrap !important;
}


/* =====================================================
   FINAL FIX - EZ 11a / 12 DATE FIELD ALIGNMENT
   This overrides common 360px input-group rule
===================================================== */

/* Date parent box */
.theme-form .form-section .date-field-box {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

/* Date input - same width as other form fields */
.theme-form .form-section .date-field-box .date-input-group,
.theme-form .form-section .form-answer .date-field-box .date-input-group,
.theme-form .form-section .date-input-group {
	width: 240px !important;
	min-width: 240px !important;
	max-width: 240px !important;
	flex: 0 0 240px !important;
	flex-wrap: nowrap !important;
}

/* Calendar icon box */
.theme-form .form-section .date-field-box .date-input-group .input-group-text,
.theme-form .form-section .date-input-group .input-group-text {
	height: 48px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Date textbox */
.theme-form .form-section .date-field-box .date-input-group input[type="date"],
.theme-form .form-section .date-input-group input[type="date"] {
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: 1 1 0 !important;
	height: 48px !important;
	min-height: 48px !important;
	padding: 0 10px !important;
}

/* Parent row date answer should not stretch */
.theme-form .form-section:has(.date-input-group) .ms-auto {
    width: auto !important;
    min-width: 0 !important;
    margin-left: auto !important;
}

/* Give label more space for long EZ 11a / 12 text */
.theme-form .form-section:has(.date-input-group) .form990-line-row,
.form-section:has(.date-input-group) .d-lg-flex.align-items-center.justify-content-between {
    grid-template-columns: minmax(0, 1fr) minmax(35px, 130px) auto !important;
}

/* Long label should wrap cleanly */
.theme-form .form-section:has(.date-input-group) .labelText {
    white-space: normal !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* Common records footer / pagination show entries fix */
.record-footer-row {
    align-items: center !important;
}

.record-footer-left {
    gap: 34px !important;
}

.record-show-box {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    height: 48px !important;
    flex: 0 0 300px !important;
    flex-wrap: nowrap !important;
}

.record-show-box .input-group-text {
    width: auto !important;
    min-width: 54px !important;
    height: 48px !important;
    padding: 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
}

.record-show-box .form-select {
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    height: 48px !important;
    flex: 0 0 150px !important;
    padding-left: 14px !important;
}

.record-total-text {
    margin: 0 !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.theme-table .status-inline {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: 145px;
    gap: 8px;
    white-space: nowrap;
}

.theme-table .status-icon {
    width: 18px;
    min-width: 18px;
    height: 18px;
    font-size: 18px;
    line-height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.theme-table .status-text {
    display: inline-block;
    line-height: 18px;
}


/*=== filing-list.html ===*/
/* Recent filing / filing list status alignment */
.filing-list-table th.status-col,
.filing-list-table td.status-col {
    text-align: left !important;
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
    padding-left: 18px !important;
}

.filing-list-table .status-inline {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 170px !important;
    white-space: nowrap !important;
}

.filing-list-table .status-icon {
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    font-size: 18px !important;
    line-height: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.filing-list-table .status-text {
    display: inline-block !important;
    line-height: 18px !important;
    text-align: left !important;
}

/* Label-only row full width - high specificity override */
.theme-form .form-section .label-full-row {
    display: block !important;
    width: 100% !important;
}

.theme-form .form-section .label-full-row .form-headLabel {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    fit-content: unset !important;        /* kill the fit-content */
    grid-template-columns: unset !important;
    column-gap: unset !important;
    padding: 0 !important;
}

.theme-form .form-section .label-full-row .labelSerl {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    min-width: unset !important;
    max-width: unset !important;
}

.theme-form .form-section .label-full-row .labelText {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    margin-bottom: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}

.theme-form .form-section .label-full-row .labelText span {
    display: inline !important;
    white-space: normal !important;
}


/* Label-only row - minimal professional style */
.theme-form .form-section .label-full-row {
    background: #fbfdff !important;
    border: 1px solid #e6edf3 !important;
    border-left: 3px solid var(--simple-blue-color) !important;
    border-radius: 6px !important;
    padding: 12px 14px !important;
    width: 100% !important;
    display: block !important;
    box-shadow: none !important;
}

.theme-form .form-section .label-full-row .form-headLabel {
    width: 100% !important;
    background: transparent !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
}

.theme-form .form-section .label-full-row .labelSerl {
    background: transparent !important;
    border: none !important;
    color: var(--simple-darkBlue-color) !important;
    padding: 0 !important;
    min-width: 32px !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

.theme-form .form-section .label-full-row .labelText {
    color: #172033 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
    margin-bottom: 0 !important;
}

.theme-form .form-section .label-full-row .linkText {
    background: transparent !important;
    color: var(--simple-orange-color) !important;
    border: none !important;
    border-bottom: 1px dotted var(--simple-orange-color) !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    margin-left: 6px !important;
}
.myTheme-offcanvas .offcanvas-header {
    justify-content: space-between !important;
}

.myTheme-offcanvas .offcanvas-title {
    margin-bottom: 0 !important;
}

/* =====================================================
   FIX: 8a / 8b small-text dropdowns inside Label rows
   The label-with-child-fields wraps the entire row
===================================================== */

/* The Label row that contains small-text children */
.form-section .label-with-child-fields {
    display: block !important;
    width: 100% !important;
    visibility: visible !important;
}

/* The inner row of children */
.label-with-child-fields > .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    visibility: visible !important;
}

/* Each small-text dropdown wrapper */
.label-with-child-fields .small-text-dropdown-box {
    flex: 0 0 68px !important;
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    display: block !important;
    visibility: visible !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* The select wrapper */
.label-with-child-fields .small-code-select-wrap {
    display: block !important;
    width: 68px !important;
    visibility: visible !important;
    overflow: visible !important;
}

/* The actual select element */
.label-with-child-fields .small-code-select {
    display: block !important;
    visibility: visible !important;
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    height: 44px !important;
    min-height: 44px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* Also fix the ms-auto that wraps label-with-child-fields */
.theme-form .form-section .label-full-row .ms-auto {
    display: block !important;
    visibility: visible !important;
    width: auto !important;
}

/* Remove the display:block override on label-full-row
   when it contains child fields */
.theme-form .form-section .label-full-row:has(.label-with-child-fields) {
    display: flex !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    width: 100% !important;
}
.title {
	min-height: 40px;
}

/* Service code multiselect dropdown inside table */
.table-responsive .multi-dd-menu {
    max-height: 260px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-width: 280px !important;
    width: 320px !important;
    max-width: 320px !important;
    font-size: 13px !important;
    z-index: 9999 !important;
}

.table-responsive .multi-dd-menu .dropdown-item {
    white-space: normal !important;
    line-height: 1.3 !important;
    padding: 6px 8px !important;
}

.table-responsive .multi-dd-menu .multi-dd-search {
    height: 34px !important;
    font-size: 13px !important;
}

.table-responsive .multi-dd-option {
    margin-bottom: 2px !important;

}
/* Final clean Service Code dropdown design */
.service-code-select-group {
    width: 100% !important;
    min-width: 150px !important;
    max-width: 170px !important;
    display: block !important;
}

.service-code-select-group .dropdown {
    width: 100% !important;
}

.service-code-select-group .service-code-btn {
    width: 100% !important;
    min-width: 150px !important;
    max-width: 170px !important;
    height: 42px !important;
    border-radius: 8px !important;
    border: 1px solid #bdd7e5 !important;
    background: #ffffff !important;
    color: #001f35 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 8px 34px 8px 12px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
    display: flex !important;
    align-items: center !important;
}

.service-code-btn-text {
    display: inline-flex !important;
    align-items: center !important;
    max-width: 115px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.service-code-btn-text i {
    color: #0c7bab !important;
    font-size: 17px !important;
    flex-shrink: 0 !important;
}

.service-code-select-group .service-code-btn:hover,
.service-code-select-group .service-code-btn:focus {
    border-color: #0c7bab !important;
    box-shadow: 0 0 0 3px rgba(12, 123, 171, 0.12) !important;
}

.service-code-select-group .service-code-menu {
    width: 340px !important;
    min-width: 340px !important;
    max-height: 280px !important;
    overflow-y: auto !important;
    border-radius: 10px !important;
    z-index: 99999 !important;
}

.percentage-area .input-group .form-control.percentage,
.input-group .form-control.percentage {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
}


.submission-confirm-box {
    background: #dff5ff;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.submission-check {
    width: 22px;
    height: 22px;
    border: 3px solid #7bd3ea;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 3px;
}

.submission-check:checked {
    background-color: #0aa65b;
    border-color: #0aa65b;
}

.submission-check-label {
    color: #007c45;
    line-height: 1.6;
}

.btn-disabled-pay {
    opacity: 0.6;
    pointer-events: none;
    cursor: not-allowed;
}


.summaryBottomCard {
    margin-top: 24px;
    margin-bottom: 32px;
    border-radius: 10px;
}

.summaryBottomCard .tmAlert {
    background-color: #e8fbff !important;
    border: 1px solid #74dff3 !important;
    border-radius: 8px !important;
    position: relative;
}

.summaryBottomCard .iconTitle {
    display: inline-block;
    background: #b8eef8;
    color: #003b5c;
    padding: 3px 16px 3px 8px;
    border-radius: 4px 18px 18px 4px;
    margin-top: -18px;
    position: relative;
    top: -8px;
}

.summaryBottomCard .tmAlert p {
    margin-top: -4px;
    color: #39556b !important;
}

.summaryPreviousBtn,
.summaryProceedBtn {
    min-width: 190px;
    height: 54px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 6px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.summaryProceedBtn {
    min-width: 240px;
}

@media (max-width: 767px) {
    .summaryBottomCard .row.justify-content-end {
        justify-content: center !important;
        gap: 12px;
    }

    .summaryPreviousBtn,
    .summaryProceedBtn {
        width: 100%;
        min-width: 100%;
    }

    .summaryBottomCard .col-auto {
        width: 100%;
    }
}

/* ===== 5500-SF Part V alignment only ===== */
.sf-part-v-align .form-section > .row > .col-lg-12 > .d-lg-flex {
    display: flex !important;
    align-items: center !important;
    gap: 14px;
}

/* left question area */
.sf-part-v-align .form-headLabel {
    flex: 0 0 530px;
    display: grid;
    grid-template-columns: 52px 1fr;
    align-items: center;
    column-gap: 0;
    margin: 0;
}

/* 10a, 10b, 10c serial number */
.sf-part-v-align .labelSerl {
    grid-column: 1;
    width: 52px;
    min-width: 52px;
    margin: 0;
    text-align: left;
    align-self: center;
}

/* question text */
.sf-part-v-align .labelText {
    grid-column: 2;
    margin: 0;
    line-height: 1.42;
    max-width: 470px;
}

/* dotted line */
.sf-part-v-align .borderDots {
    flex: 1 1 auto;
    min-width: 60px;
    margin: 0;
}

/* right answer box */
.sf-part-v-align .ms-auto {
    flex: 0 0 560px;
    margin-left: 0 !important;
}

/* make answer card stable */
.sf-part-v-align .form-answer {
    width: 100%;
}

.sf-part-v-align .checkRadio-bg {
    width: 100%;
    min-height: 58px;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 12px 28px;
    padding: 14px 18px;
}

/* radio spacing */
.sf-part-v-align .form-check {
    margin: 0;
}

/* amount input width */
.sf-part-v-align .input-group.min-width {
    max-width: 360px;
}

/* mobile/tablet */
@media (max-width: 991px) {
    .sf-part-v-align .form-section > .row > .col-lg-12 > .d-lg-flex {
        display: block !important;
    }

    .sf-part-v-align .form-headLabel {
        width: 100%;
        display: grid;
        grid-template-columns: 45px 1fr;
        margin-bottom: 10px;
    }

    .sf-part-v-align .borderDots {
        display: none;
    }

    .sf-part-v-align .ms-auto {
        width: 100%;
        flex: unset;
    }
}

.planEntityRow .form-label {
    min-height: 20px; /* keeps all 3 labels same height even if one wraps */
    margin-bottom: 6px;
}

.planEntityRow .planEntityField {
    height: 38px;
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
}

.planEntityRow .invalid-feedback {
    position: static; /* keeps error text from shifting sibling columns */
    margin-top: 4px;
}

/* TableStatic layout - remove dotted leader same as TableSub */
/* TableStatic layout - remove dotted leader AND collapse leftover flex space, same as TableSub */
.form-section:has(.table-static-answer) .borderDots {
    display: none !important;
}

.form-section:has(.table-static-answer)
> .row
> .col-lg-12
> .d-lg-flex {
    display: block !important;
    width: 100% !important;
}

.form-section:has(.table-static-answer) .form-headLabel {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
}

.form-section:has(.table-static-answer) .ms-auto,
.table-static-answer,
.table-static-answer .table-responsive {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.form-section:has(.table-static-answer) > .row.mb-4 {
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
    border: 0 !important;
}
/* =====================================================
   REMOVE FULL-WIDTH DIVIDER ONLY AFTER fieldType = Label
===================================================== */

/* In case the divider is the bottom border of the Label row */
.theme-form .form-section.label-field-section,
.theme-form .form-section.label-field-section > .row.mb-4 {
    border-bottom: 0 !important;
    background-image: none !important;
}

/* In case the divider is created using ::after */
.theme-form .form-section.label-field-section::after,
.theme-form .form-section.label-field-section > .row.mb-4::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
}

/* In case an actual <hr> element is being generated */
.theme-form .form-section.label-field-section hr {
    display: none !important;
}

/*
 * Some designs put the separator as the top border
 * of the following question row.
 * Remove it only when the previous row is a Label.
 */
.theme-form
.form-section.label-field-section
+ .form-section,
.theme-form
.form-section.label-field-section
+ .form-section
> .row.mb-4 {
    border-top: 0 !important;
    background-image: none !important;
}

.theme-form
.form-section.label-field-section
+ .form-section::before,
.theme-form
.form-section.label-field-section
+ .form-section
> .row.mb-4::before {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
}
#ErrorToast .toastCont h5 {
    font-size: 0.95rem;   /* match roughly the visual weight of the message below */
    font-weight: 600;
    margin-bottom: 2px;
    line-height: 1.3;
}

/* =====================================================
   COUNTRY / STATE DROPDOWN ALIGNMENT
===================================================== */

.theme-form .country-state-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}

/* Globe and location icon box */
.theme-form .country-state-group > .input-group-text {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;

    height: 38px !important;
    min-height: 38px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;
    margin: 0 !important;

    border-radius: 6px 0 0 6px !important;
    box-sizing: border-box !important;
}

/* Country and State dropdown */
.theme-form .country-state-group > .form-select {
    flex: 1 1 auto !important;

    height: 38px !important;
    min-height: 38px !important;

    margin-left: -1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    border-radius: 0 6px 6px 0 !important;
    box-sizing: border-box !important;
}

.table-static-answer .infoLink,
.table-sub-answer .infoLink {
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    margin-left: 6px !important;
    text-decoration: none !important;
}

/* Dotted leader inside static table label cells, continuing after Info link */
.table-static-answer .table-static-label-cell {
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important;
}

.table-static-answer .table-static-label-cell label {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
}

.table-static-answer .table-static-dots {
    flex: 1 1 auto !important;
    min-width: 30px !important;
    height: 2px !important;
    margin: 0 12px !important;

    background-image: radial-gradient(circle, rgb(12 123 171 / 50%) 1.5px, transparent 1.5px) !important;
    background-size: 15px 2px !important;
    background-repeat: repeat-x !important;
    background-position: center !important;
}

/* =====================================================
   REMOVE FULL-WIDTH DIVIDER ABOVE fieldType = Label
===================================================== */

/* Remove top divider from the Label section itself */
.theme-form .form-section.label-field-section,
.theme-form .form-section.label-field-section > .row.mb-4 {
    border-top: 0 !important;
    background-image: none !important;
}

/* Remove divider generated using ::before */
.theme-form .form-section.label-field-section::before,
.theme-form .form-section.label-field-section > .row.mb-4::before {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
}

/*
 * The divider may actually be the bottom border of
 * the question immediately before the Label row.
 */
.theme-form
.form-section:has(+ .form-section.label-field-section),
.theme-form
.form-section:has(+ .form-section.label-field-section)
> .row.mb-4 {
    border-bottom: 0 !important;
    background-image: none !important;
}

/* Remove previous row divider generated using ::after */
.theme-form
.form-section:has(+ .form-section.label-field-section)::after,
.theme-form
.form-section:has(+ .form-section.label-field-section)
> .row.mb-4::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
}
/* Start New Filing information popup */
.filing-help-intro {
    margin-bottom: 18px;
    color: #495057;
    line-height: 1.6;
}

.filing-help-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.filing-help-item {
    padding: 13px 4px;
    border-bottom: 1px solid #e4edf3;
    line-height: 1.55;
}

.filing-help-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.filing-help-item:first-child {
    padding-top: 0;
}

.filing-help-item strong {
    display: block;
    margin-bottom: 3px;
    color: #123f56;
    font-size: 15px;
}

.filing-help-item span {
    display: block;
    color: #333;
    font-size: 14px;
}

.form-specific-filing-help {
    width: 100%;
}

#startFilingInfoModal .popup-message-list {
    max-height: 390px;
    overflow-y: auto;
    padding-right: 10px;
}

#startFilingInfoModal .modal-text {
    text-align: left;
}

#startFilingInfoModal .modal-text h4 {
    text-align: center;
    margin-bottom: 22px;
}

/* ===== Fix double scrollbar in Start Filing Info modal ===== */
#startFilingInfoModal .modal-body {
    max-height: none !important;
    overflow-y: visible !important;
}

#startFilingInfoModal .popup-message-list {
    max-height: 65vh !important;
    overflow-y: auto !important;
    padding-right: 10px;
}

/* =====================================================
   FINAL FIX - ABC / 123 BOX AND INPUT SAME SIZE
   Applies only to fields inside checkbox/radio cards
===================================================== */

/* Complete attached input group */
.theme-form
.form-section
.form-answer
.checkRadio-bg
.input-group {
	display: flex !important;
	align-items: stretch !important;
	flex-wrap: nowrap !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	box-sizing: border-box !important;
}

/* ABC / 123 left box */
.theme-form
.form-section
.form-answer
.checkRadio-bg
.input-group > .input-group-text {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: var(--form-input-height) !important;
	min-width: var(--form-input-height) !important;
	max-width: var(--form-input-height) !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	padding: 0 6px !important;

	line-height: 1 !important;
	box-sizing: border-box !important;
}

/* Text or numeric input attached to ABC / 123 box */
.theme-form
.form-section
.form-answer
.checkRadio-bg
.input-group > .form-control,
.theme-form
.form-section
.form-answer
.checkRadio-bg
.input-group > .form-select {
	flex: 1 1 auto !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;

	line-height: normal !important;
	box-sizing: border-box !important;
}

/* Center the field vertically beside its checkbox label */
.theme-form
.form-section
.form-answer
.checkRadio-bg
.form-check:has(.input-group) {
	display: inline-flex !important;
	align-items: center !important;
	min-height: var(--form-input-height) !important;
	margin: 0 !important;
}

/* Remove unwanted gap around the attached field */
.theme-form
.form-section
.form-answer
.checkRadio-bg
.form-floating-custom {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/*=== gap for need help ===*/
.taxPeriodPlanCard .card-body {
    padding-bottom: 100px !important;
}

#recentFilingsRow {
    margin-bottom: 150px !important;
}

.record-footer-row {
    margin-bottom: 150px !important;
}

#planFormFooter {
    padding-bottom: 90px !important;
}

#profileFormFooter {
    padding-bottom: 90px !important;
}

.summaryBottomCard {
    margin-bottom: 90px !important;
}

#submissionFeeFooter {
    padding-bottom: 80px !important;
}

#paymentOptionFooter {
    padding-bottom: 80px !important;
}

#draftDownloadFooter {
    padding-bottom: 90px !important;
}

#formFooterActions {
	margin-bottom: 150px !important;
}

.infoCard .card-footer {
	padding-bottom: 130px !important;
}

#commonFormFooter {
	padding-bottom: 110px !important;
	position: relative;
	z-index: 10;

}

.reviewAndFile {
	position: sticky;
	bottom: 0;
	z-index: 20;
	display: flex;
	justify-content: center;
	padding: 12px 15px;
	background: #ffffff;
	border-top: 1px solid #edf1f4;
}

.reviewAndFile .btn {
	width: 100%;
}
/* =========================================================
   FORM 5500 FLOATING LABEL
   ========================================================= */

.form-floating-custom {
	position: relative;
	width: 100%;
	min-width: 0;
}

.form-floating-custom .input-group {
	position: relative;
}

/* Label shown inside an empty field */
.form-floating-custom .floating-field-label {
	position: absolute;
	top: calc(var(--form-input-height) / 2);
	left: 12px;
	transform: translateY(-50%);

	max-width: calc(100% - 24px);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;

	padding: 0 4px;
	margin: 0;

	background-color: transparent;
	color: #9aa4b2;

	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1;

	pointer-events: none;
	transition:
			top 0.15s ease-in-out,
			transform 0.15s ease-in-out,
			font-size 0.15s ease-in-out,
			color 0.15s ease-in-out;

	z-index: 5;
}

/* Move label after the ABC, #, $, %, phone or date icon */
.form-floating-custom
.input-group > .input-group-text ~ .floating-field-label {
	left: 46px;
	max-width: calc(100% - 58px);
}

/* Float when focused or when value is already present */
.form-floating-custom
.form-control:focus ~ .floating-field-label,

.form-floating-custom .form-control:focus ~ label,
.form-floating-custom .form-control:not(:placeholder-shown) ~ label {
	top: 0;
	left: 40px;
	transform: translateY(-50%);
	background: #ffffff;
	font-size: 0.75rem;
	font-weight: 400;
	color: #1184c7;
}

/* Hide the real placeholder because the label acts as placeholder */
.form-floating-custom .form-control::placeholder {
	color: transparent !important;
	opacity: 0;
}

/* Focus border */
.form-floating-custom .form-control:focus {
	border-color: var(--simple-blue-color);
	box-shadow: none;
}

/* Disabled field label background */
.form-floating-custom
.form-control:disabled:not(:placeholder-shown) ~ .floating-field-label {
	background-color: #e9ecef;
}



/* =========================================================
   FINAL FORM 5500 AUTO-CALCULATED FIELD FIX
   ========================================================= */

/*
 * Do not use:
 * .form5500-answer > .auto-calc-group
 *
 * The auto-calculated field can be inside another fragment wrapper.
 */
.theme-form.filing-form .auto-calc-group {
	width: 240px !important;
	min-width: 240px !important;
	max-width: 240px !important;
	flex: 0 0 240px !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;

	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;

	overflow: visible !important;
	box-sizing: border-box !important;
}


/* Dollar or percentage icon */
.theme-form.filing-form
.auto-calc-group
.auto-calc-control {
	position: relative !important;

	width: 200px !important;
	min-width: 200px !important;
	max-width: 200px !important;
	flex: 0 0 200px !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;

	padding: 8px 12px !important;

	display: flex !important;
	align-items: center !important;

	overflow: visible !important;
	box-sizing: border-box !important;
}

/* Auto Calculated floating text */
.theme-form.filing-form
.auto-calc-group
.floatTxt {
	position: absolute !important;

	top: 0 !important;
	left: 12px !important;
	transform: translateY(-50%) !important;

	display: block !important;

	margin: 0 !important;
	padding: 0 4px !important;

	background-color: #f9fdff !important;
	color: var(--simple-blue-color) !important;

	font-size: 0.75rem !important;
	font-weight: 500 !important;
	line-height: 1 !important;

	white-space: nowrap !important;
	z-index: 5 !important;
}


/* Placeholder when calculated value is empty */
.theme-form.filing-form
.auto-calc-group
.plchldrTxt {
	display: block !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;

	color: var(--simple-darkBlue-color) !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}


/* Empty calculated-value element must not consume space */
.theme-form.filing-form
.auto-calc-group
.input-card-number:empty {
	display: none !important;
}


/*
 * Hide placeholder when Thymeleaf already supplied a value.
 */
.theme-form.filing-form
.auto-calc-group.has-value
.plchldrTxt,

.theme-form.filing-form
.auto-calc-group
.auto-calc-control.has-value
.plchldrTxt {
	display: none !important;
}


/*
 * Hide placeholder when JavaScript adds the calculated value later.
 */
.theme-form.filing-form
.auto-calc-group
.auto-calc-control:has(.input-card-number:not(:empty))
.plchldrTxt {
	display: none !important;
}


/* Display calculated value */
.theme-form.filing-form
.auto-calc-group
.input-card-number:not(:empty) {
	display: block !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	margin: 0 !important;

	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;

	color: var(--simple-darkBlue-color) !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	text-align: right !important;
}
/* =========================================================
   AUTO-CALCULATED LEFT ICON SPAN ALIGNMENT ONLY
   ========================================================= */

.theme-form.filing-form
.auto-calc-group > span.input-card-icon.input-group-text {
	width: var(--form-input-height) !important;
	min-width: var(--form-input-height) !important;
	max-width: var(--form-input-height) !important;
	flex: 0 0 var(--form-input-height) !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	padding: 0 !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: stretch !important;

	line-height: 1 !important;
	box-sizing: border-box !important;

	background-color: #eaf4f8 !important;
	border: 1px solid #b1c4cd !important;
	border-radius: 6px 0 0 6px !important;

	color: var(--simple-darkBlue-color) !important;
}

/* Keep the $ or % icon exactly centered */
.theme-form.filing-form
.auto-calc-group > .input-card-icon > i {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
}

/* =========================================================
   TABLE STATIC - AUTO-CALCULATED FIELD WIDTH
   Same width as the normal input in that table cell
   ========================================================= */

.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	flex: 1 1 100% !important;

	margin: 0 !important;
	box-sizing: border-box !important;
}


/*
 * Remove the global fixed 200px/210px width only inside
 * TableStatic. The right section will occupy the remaining
 * table-cell width after the $ icon.
 */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.auto-calc-control {
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: 1 1 0 !important;

	box-sizing: border-box !important;
}


/* Keep the left $ / % icon fixed like the normal input icon */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
> span.input-card-icon.input-group-text {
	width: var(--form-input-height) !important;
	min-width: var(--form-input-height) !important;
	max-width: var(--form-input-height) !important;
	flex: 0 0 var(--form-input-height) !important;
}


/* Ensure placeholder/value cannot increase the table field width */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.plchldrTxt,

.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.input-card-number {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}
/* =========================================================
   ALL NUMERIC FIELD VALUES - RIGHT ALIGNMENT
   ========================================================= */

.theme-form.filing-form input.form-control.numeric {
	text-align: right !important;
	direction: ltr !important;
}

/* Keep empty-field placeholder text aligned normally */
.theme-form.filing-form input.form-control.numeric::placeholder {
	text-align: left !important;
	direction: ltr !important;
}
/* =========================================================
   PERCENTAGE FIELD FIX — applies to actual markup
   (Percentage type has no .form-floating-custom wrapper)
   ========================================================= */

.theme-form.filing-form
.input-group:has(> input.form-control.percentage) {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	box-sizing: border-box !important;
}

/* Percentage icon span */
.theme-form.filing-form
.input-group:has(> input.form-control.percentage)
> span.input-group-text {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: var(--form-input-height) !important;
	min-width: var(--form-input-height) !important;
	max-width: var(--form-input-height) !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 !important;
	padding: 0 !important;

	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;

	box-sizing: border-box !important;
}

.theme-form.filing-form
.input-group:has(> input.form-control.percentage)
> span.input-group-text > i {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
}

/* Percentage input — joins seamlessly to the icon, no gap */
.theme-form.filing-form
.input-group
> input.form-control.percentage {
	flex: 1 1 auto !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	margin: 0 0 0 -1px !important;

	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;

	box-sizing: border-box !important;
}
/* =========================================================
   TABLE STATIC - COMPACT AUTO-CALCULATED FIELDS
   Prevent long placeholder text from increasing column width
   ========================================================= */

.theme-form.filing-form
.table-static
td.form-group {
	min-width: 0 !important;
	overflow: hidden !important;
}

/* Complete readonly input group */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	flex: 1 1 auto !important;

	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;

	margin: 0 !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

/* Fixed dollar, percentage, or number icon */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
> span.input-card-icon.input-group-text {
	width: var(--form-input-height) !important;
	min-width: var(--form-input-height) !important;
	max-width: var(--form-input-height) !important;
	flex: 0 0 var(--form-input-height) !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;
	max-height: var(--form-input-height) !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	margin: 0 !important;
	padding: 0 !important;
}

/*
 * width: 0 is important.
 * It prevents the long placeholder from increasing the table column.
 */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.auto-calc-control {
	position: relative !important;

	width: 0 !important;
	min-width: 0 !important;
	max-width: calc(
			100% - var(--form-input-height)
	) !important;

	flex: 1 1 0 !important;

	height: var(--form-input-height) !important;
	min-height: var(--form-input-height) !important;

	padding: 8px 12px !important;

	display: flex !important;
	align-items: center !important;

	overflow: hidden !important;
	box-sizing: border-box !important;
}

/* Placeholder shows dotted ellipsis */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.plchldrTxt {
	display: block !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;

	color: var(--simple-darkBlue-color) !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
}

/* Calculated value must also remain inside the field */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.input-card-number {
	display: block !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;

	margin: 0 !important;

	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;

	text-align: right !important;
}

/* Empty calculated-value element must not occupy space */
.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.input-card-number:empty {
	display: none !important;
}
/* =========================================================
   TABLE STATIC - SHOW AUTO CALCULATED LABEL CLEARLY
   ========================================================= */

.theme-form.filing-form
.table-static
td.form-group {
	overflow: visible !important;
}

.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group {
	position: relative !important;
	overflow: visible !important;
}

.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.auto-calc-control {
	overflow: visible !important;
}

.theme-form.filing-form
.table-static
td.form-group
.auto-calc-group
.floatTxt {
	top: 0 !important;
	left: 12px !important;
	transform: translateY(-50%) !important;

	display: block !important;
	padding: 0 4px !important;
	margin: 0 !important;

	background-color: #f9fdff !important;
	color: var(--simple-blue-color) !important;

	font-size: 0.75rem !important;
	font-weight: 500 !important;
	line-height: 1.1 !important;

	white-space: nowrap !important;
	z-index: 20 !important;
}
/* =====================================================
   COUNTRY / STATE - SAME WIDTH AS TEXT / NUMERIC / DATE
   ===================================================== */

.theme-form .form-section .country-state-group:has(
    > .form-select[data-field_type="CountryType"]
),
.theme-form .form-section .country-state-group:has(
    > .form-select[data-field_type="CountryCodeType"]
),
.theme-form .form-section .country-state-group:has(
    > .form-select[data-field_type="StateType"]
) {
	width: 240px !important;
	min-width: 240px !important;
	max-width: 240px !important;
	flex: 0 0 240px !important;
}
.field-highlight-flash {
	animation: fieldHighlightFlash 1.5s ease-in-out;
}

@keyframes fieldHighlightFlash {
	0%   { box-shadow: 0 0 0 0 rgba(255, 140, 0, 0.6); }
	50%  { box-shadow: 0 0 0 6px rgba(255, 140, 0, 0.15); }
	100% { box-shadow: 0 0 0 0 rgba(255, 140, 0, 0); }
}

/* =====================================================
   DYNAMIC TABLE ROWS - PREVENT LAYOUT SHIFT ON VALIDATION
   Reserve space for inline error messages inside table cells
===================================================== */

/*.table-responsive.theme-table2 td {*/
/*	position: relative;*/
/*	padding-bottom: 26px !important;*/
/*}*/
/*.table-responsive.theme-table2 td .invalid-feedback {*/
/*	position: absolute;*/
/*	left: 0.75rem;*/
/*	right: 0.75rem;*/
/*	bottom: 4px;*/
/*	margin-top: 0 !important;*/
/*	font-size: 12px;*/
/*	line-height: 1.2;*/
/*}*/
.logo-section {
	display:flex;
	flex-direction:column;
	align-items:center;
}
.back-to-sts-btn {
	margin-top:8px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	background:var(--simple-yallow-color);
	border:1px solid var(--simple-yallow-color);
	color:#ffffff !important;
	font-size:13px;
	font-weight:600;
	padding:8px 14px;
	border-radius:6px;
	min-width:190px;
	box-shadow:0 3px 8px rgba(255,155,0,.25);
}
.back-sts-btn {
	background-color: #ffc107;   /* Attention yellow */
	color: #ffffff;
	border-radius: 6px;
	padding: 10px 18px;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	margin: 10px;
}


.back-sts-btn:hover {
	background-color: #e0a800;
	color: #ffffff;
}

.topHeader .topH-left .simple5500-logo-wrap.sts-only {
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
}

.adminSameSponsorBox {
	display: flex;
	align-items: center;
	width: fit-content;
	padding: 8px 12px;
	border: 1px solid #dbe5ec;
	border-radius: 6px;
	background: #fff;
}

.adminSameSponsorBox .form-check-input {
	margin-right: 8px;
}
