h3[data-toggle="collapse"] {  margin-bottom: 0;  cursor: pointer;  border-bottom: 2px solid #333;}
h3[data-toggle="collapse"]:after {  display: inline-block;  content: '>';  font-family: monospace;  margin-left: 10px;  font-size: 42px;  color: #007bff;  font-weight: bold;  transition: transform 0.1s ease-in-out;}
h3[data-toggle="collapse"][aria-expanded="true"]:after {  transform: rotate(90deg);}

h4[data-toggle="collapse"] {  margin: 20px 0 0 0;  cursor: pointer;  border-bottom: 2px solid #333;}
h4[data-toggle="collapse"]:after {  display: inline-block;  content: '>';  font-family: monospace;  margin-left: 10px;  font-size: 32px;  color: #007bff;  font-weight: bold;  transition: transform 0.1s ease-in-out;}
h4[data-toggle="collapse"][aria-expanded="true"]:after {  transform: rotate(90deg);}


.row.collapsing, .row.collapse.show {  border: 2px solid #333;  border-bottom-left-radius: 0.3rem;  border-bottom-right-radius: 0.3rem;  border-top: none;  margin: 0;  padding: 20px 0;}

.calcxml_container.container{margin: 0 !important; padding: 0 !important;}

.calcxml_container label {display: inline-block; width: auto; padding-right: 30px;}
.calcxml_container .form-group {position: relative;}
.calcxml_container button.help_button.btn.btn-outline-primary.btn-sm {position: absolute; top: 0; right: 0;}

table.table{border: 0; border-collapse: collapse;  border-bottom: solid 2px rgb(187, 187, 187); width:100%; padding:10px !IMPORTANT;}
table.table th{background-color: rgb(187, 187, 187);text-align: right;}
table.table tr.centred th, table.table tr.centred td{text-align: center;}
table.table th[rowspan=2]{vertical-align: middle;}

table.table tr th:first-child, table.table tr td:first-child{text-align: left;}
table.table td{text-align: right;}

.calcxml_email_disclosure {font-size: 14px; font-style: italic; }

div#AD_calculator table.table tr th:first-child, div#AD_calculator table.table tr td:first-child{text-align: right;}

table.table tr:nth-child(odd) td {background-color: rgb(221, 221, 221);}
table.table tr:nth-child(odd) td.highlight, table.table td.highlight, table.table tr.highlight td, table.table tr.highlight:nth-child(odd) td {background-color: #EEEEEE; font-weight: bold;}

table.grid th, table.grid td{padding: 5px; width: 25%;}



.help_button.btn {padding: 0 10px !important; font-weight: bold !important; margin-bottom: 5px; }

.calcxml_container .errormsg {color: red; font-size: 16px; margin: 0;display: none;}
.calcxml_container input.error {border: 2px solid red}

.calcxml_container label {display: block; width: 100%}

table.collapsible-table{width: 100%;}
table.collapsible-table tr{border-bottom: solid 2px silver; display: flex; }
table.collapsible-table th, table.collapsible-table td{padding: 5px; width: 25%;}
table.collapsible-table th{white-space: nowrap; vertical-align: top;}
label.collapsible-label{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;  overflow: hidden;  clip: rect(0,0,0,0);  border: 0;}
.collapsible-fieldname{display:none;}

div.modal-header button.close {font-size: 20px; position: absolute; top: 0; right: 0; width: 44px; height: 44px;}

/* for modal info window:  ederal Taxable Income Brackets */
table.tipped_table{border-collapse: collapse; position: relative; float: left; margin: 10px; }
table.tipped_table td, table.tipped_table th{border: solid 1px silver; padding: 2px 5px}

/* for modal info window: Historic Rates of Return */
table.blocktable{border-collapse: collapse;}
table.blocktable td{width: 20px; border-bottom: solid 5px white;}
table.blocktable th{text-align: right; padding-right: 10px;}
.blocked{background-color: navy; color: white;}

/* for send me the results */
table.senditform{}
table.senditform td{padding: 0 20px 0 0}
.calcxml_send_results, .calcxml_send_error{display: none;}
.calcxml_send_error{color: red; font-size: 16px;}

/* for #31 CD Laddering */
#AE_calculator table.table tr:first-child th:first-child{text-align: center;}
#AE_calculator table.table tr th:last-child, #AE_calculator table.table tr td:last-child{border-left: solid 1px gray}

/* for Asset Allocation #46 */
#AT_calculator label {font-weight: bold;}
#AT_calculator table.table.asset_table td, #AT_calculator table.table.asset_table th{text-align: left;}

/* for Risk Tolerance #59 */
table.table.small_table{max-width: 500px; margin: 0 auto;}
table.table.small_table td, table.table.small_table th, table.table.small_table tr th:first-child, table.table.small_table tr td:first-child {text-align: center;}

/* for FIST #64 */
.addsups p.fist-assumptions:before{  content:'1';  vertical-align: super;  font-size:12px;}
.addsups p.fist-assumptions:nth-child(2):before{ content:'1'; }
.addsups p.fist-assumptions:nth-child(3):before{ content:'2'; }
.addsups p.fist-assumptions:nth-child(4):before{ content:'3';}
.addsups p.fist-assumptions:nth-child(5):before{ content:'4';}


.poweredBy{font-size: 14px; margin: 1rem 0; text-align: right;}
.poweredBy a{text-decoration: none; font-weight: 400; color: #333}


/*L*/
@media only screen and  (max-width: 1199px) {
	table.table.lg-collapse{border-collapse: collapse; width: 100% !important; min-width: 100%; max-width: 100%; border-top: solid 2px rgb(187, 187, 187);}
	table.table.lg-collapse tr{ display: block;}
	table.table.lg-collapse thead, table.table.lg-collapse tbody, table.table.lg-colla+
	table.table.lg-collapse th {position: absolute; top: -9999px; left: -9999px; }
	table.table.lg-collapse td {border: none; position: relative; padding: 5px 10px 5px 20px; white-space: normal; }
	table.table.lg-collapse tr td:first-child {padding: 10px; font-weight: bold; }
	table.table.lg-collapse td{display: flex; border-bottom: solid 1px silver}
	table.table.lg-collapse td .collapsible-fieldname{flex: 1 1; display:block; text-align: left; }
}



/*M*/
@media only screen and  (max-width: 991px) {

	table.table.md-collapse{border-collapse: collapse; width: 100% !important; min-width: 100%; max-width: 100%; border-top: solid 2px rgb(187, 187, 187);}
	table.table.md-collapse tr{ display: block;}
	table.table.md-collapse thead, table.table.md-collapse tbody, table.table.md-collapse td{display: block;width: 100% !important;}
	table.table.md-collapse th {position: absolute; top: -9999px; left: -9999px; }
	table.table.md-collapse td {border: none; position: relative; padding: 5px 10px 5px 20px; white-space: normal; }
	table.table.md-collapse tr td:first-child {padding: 10px; font-weight: bold; }
	table.table.md-collapse td{display: flex; border-bottom: solid 1px silver}
	table.table.md-collapse td .collapsible-fieldname{flex: 1 1; display:block; text-align: left; }

	table.senditform td{padding: 5px 0; display: block;width: 100% !important; position: relative;white-space: normal;}

}

/*S*/
@media only screen and  (max-width: 767px) {
	table.collapsible-table {border-collapse: collapse;}
	table.collapsible-table tr{ display: block;}
	table.collapsible-table th {position: absolute; top: -9999px; left: -9999px; word-break: break-word}
	table.collapsible-table td  {display: block;border: none; position: relative; padding: 5px 0; white-space: normal; text-align:left; width: 100%; max-width: 100%; min-width: 100%;}
	table.collapsible-table td:first-child  {font-weight: bold;}
	label.collapsible-label{ position: static; width: 100%; height: auto; margin: 0;  overflow: visible;  }


	table.table.sm-collapse{border-collapse: collapse; width: 100% !important; min-width: 100%; max-width: 100%; border-top: solid 2px rgb(187, 187, 187);}
	table.table.sm-collapse tr{ display: block;}
	table.table.sm-collapse thead, table.table.sm-collapse tbody, table.table.sm-collapse td{display: block;width: 100% !important;}
	table.table.sm-collapse th {position: absolute; top: -9999px; left: -9999px; }
	table.table.sm-collapse td {border: none; position: relative; padding: 5px 10px 5px 20px; white-space: normal; }
	table.table.sm-collapse tr td:first-child {padding: 10px; font-weight: bold; }
	table.table.sm-collapse td{display: flex; border-bottom: solid 1px silver}
	table.table.sm-collapse td .collapsible-fieldname{flex: 1 1; display:block; text-align: left; }

	table.table.asset_table.sm-collapse tr td:first-child { padding: 5px 10px 5px 20px; font-weight: normal; }
	table.table.asset_table.sm-collapse td{display: block; }
	table.table.asset_table.sm-collapse td .collapsible-fieldname{display:block; text-align: left; font-weight: bold;}

}

/*XS*/
@media only screen and  (max-width: 575px) {

	table.table.xs-collapse{border-collapse: collapse; width: 100% !important; min-width: 100%; max-width: 100%; border-top: solid 2px rgb(187, 187, 187);}
	table.table.xs-collapse tr{ display: block;}
	table.table.xs-collapse thead, table.table.xs-collapse tbody, table.table.xs-collapse td{display: block;width: 100% !important;}
	table.table.xs-collapse th {position: absolute; top: -9999px; left: -9999px; }
	table.table.xs-collapse td {border: none; position: relative; padding: 5px 10px 5px 20px; white-space: normal; text-align:left; }
	table.table.xs-collapse tr td:first-child {padding: 10px; font-weight: bold; }
	table.table.xs-collapse td{display: flex; border-bottom: solid 1px silver}
	table.table.xs-collapse td .collapsible-fieldname{flex: 1 1; display:block; text-align: left; }



	/* used for Financial ratios */
	table.table.xs-collapse tr td:nth-child(2):before, table.table.xs-collapse tr td:nth-child(3):before  {display: block; text-align:left; content: attr(data-title); left: -10px; position: relative; font-weight: bold;}



	/* for Tax Estimaor summary table */
	table.table.custom-collapse{border-collapse: collapse; width: 100% !important; min-width: 100%; max-width: 100%; border-top: solid 2px rgb(187, 187, 187);}
	table.table.custom-collapse th {position: absolute; top: -9999px; left: -9999px; }
	table.table.custom-collapse tr {display: flex; flex-wrap: wrap; }
	table.table.custom-collapse td{flex: 1 1;}
	table.table.custom-collapse tr td:first-child{flex: 1 1 300px;}

	table.blocktable td{width: auto; }

	#AE_calculator table.table tr th:last-child, #AE_calculator table.table tr td:last-child{border-left: 0}


}

