
/* txrc Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) */
/* ------------------------------------ Changes for iFrame project --------------------------------------- */
/* OLD full-checkout iframe styles - commented out for single-field iframe migration
#inframe {
	width: 500px;
	height: 1600px;
}

#inframeACH {
	width: 500px;
	height: 2200px;
}
*/

/* Single-field tokenizer iframe styles (matching DLE payment-iframe.css) */
iframe#payment_iframe {
	width: 200px !important;
	height: 35px !important;
	min-width: 200px !important;
	max-width: none !important;
}

iframe[src*="snappaydirect"] {
	width: 200px !important;
	height: 55px !important;
}

.iframe-input-wrapper iframe {
	width: 200px !important;
	height: 30px !important;
}

.iframe-input-wrapper {
	display: inline-block;
	position: relative;
}

/* Error message styling */
.error-message {
	color: #dc3545 !important;
	font-size: 12px;
	margin-top: 5px;
	display: block;
	min-height: 18px;
}

/* Base button styling for payment page */
input.button {
	font-family: Arial, sans-serif;
	font-size: 12px;
	padding: 4px 12px;
	cursor: pointer;
	border: 1px solid #2a567d;
	border-radius: 4px;
	background: #336699;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: bold;
}

/* Grey disabled submit button */
input.button.submit-disabled[disabled] {
	background: #cccccc !important;
	color: #666666 !important;
	cursor: not-allowed !important;
	opacity: 0.65 !important;
	border: 1px solid #999999 !important;
}

/* Payment and billing section styling */
.payment-and-billing {
	margin: 20px 0;
	padding: 12px 20px;
	border: 1px solid #ddd;
	border-radius: 8px;
	background-color: #f9f9f9;
	max-width: 600px;
}

/* Compact vertical spacing so users can see ~4-5 fields per subsection
   without scrolling at 100% zoom. Overrides the larger inline margins
   on the field <li> elements in paycc.jsp / paych.jsp. */
.payment-and-billing p { margin: 6px 0; }
.payment-and-billing ul { margin: 0; padding: 0; }
.payment-and-billing ul li { margin-bottom: 10px !important; }
.payment-and-billing .payment-section,
.payment-and-billing .billing-section { margin-bottom: 10px; }
.payment-and-billing h3 {
	margin-top: 12px !important;
	margin-bottom: 8px !important;
	padding-top: 10px !important;
	padding-bottom: 4px !important;
}
.payment-and-billing .modern-label { margin-bottom: 2px; }
.payment-and-billing .error-message { margin-top: 2px; min-height: 0; }

.payment-section, .billing-section {
	margin-bottom: 20px;
}

.modern-label {
	font-weight: 600;
	display: block;
	margin-bottom: 5px;
}

.field-error {
	border-color: #dc3545 !important;
}

.iframe-expired-notice {
	background-color: #fff3cd;
	border: 1px solid #ffeaa7;
	padding: 10px;
	margin-bottom: 15px;
	border-radius: 4px;
	color: #856404;
}

/* ACH iframe - keep for now */
#inframeACH {
	width: 500px;
	height: 2200px;
}

.amountTitle {
	font-size:18px;
}

.errorAlign {
	color: red;
	margin-top: 5px;
	text-align: left;
}

/* Spinner on iframe*/
.centered {
	text-align: center;
}

.spinner.loading {
	display: none;
	padding: 50px;
	text-align: center;
}

.loading-text {
	width: 90px;
	position: absolute;
	top: calc(50% - 15px);
	left: calc(50% - 45px);
	text-align: center;
}

.spinner.loading:before {
	content: "";
	height: 90px;
	width: 90px;
	margin: -15px auto auto -15px;
	position: absolute;
	left: calc(50% - 45px);
	border-width: 8px;
	border-style: solid;
	border-color: #2180c0 #ccc #ccc;
	border-radius: 100%;
	animation: rotation .7s infinite linear;
}

@keyframes rotation {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(359deg);
	}
}

.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 60%;
}

/* The Close Button */
.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}
