/* Centralized Captcha CSS for RakshakEC GatewayDesign */
.captcha-wrapper {
  margin-bottom: 25px;
}
.captcha-box {
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  border: 2px solid #e9ecef;
  border-radius: 12px;
  padding: 20px;
  position: relative;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
}
.captcha-box:hover {
  border-color: #667eea;
  box-shadow: 0 4px 20px rgba(102, 126, 234, 0.15);
}
.captcha-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e9ecef;
}
.captcha-header i {
  color: #667eea;
  font-size: 18px;
  margin-right: 8px;
}
.captcha-title {
  color: #333;
  font-weight: 600;
  font-size: 14px;
  flex: 1;
}
.captcha-refresh {
    background: #667eea;
    color: white;
    border: none;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 16px;
    box-shadow: 0 2px 8px rgba(102,126,234,0.08);
    outline: none;
    border: 2px solid #e9ecef;
    }
    .captcha-refresh svg {
    display: block;
    margin: 0 auto;
    }
    .captcha-refresh:hover {
    background: #5a67d8;
    border-color: #667eea;
    transform: rotate(180deg);
    }
.captcha-question-wrapper {
  text-align: center;
  margin-bottom: 15px;
  padding: 10px;
  background: rgba(102, 126, 234, 0.05);
  border-radius: 8px;
  border: 1px dashed #667eea;
}
.captcha-text {
  color: #666;
  font-size: 14px;
  margin-right: 8px;
}
.captcha-equation {
  color: #667eea;
  font-size: 20px;
  font-weight: bold;
  font-family: 'Courier New', monospace;
  background: white;
  padding: 5px 12px;
  border-radius: 6px;
  border: 1px solid #667eea;
  display: inline-block;
  min-width: 80px;
}
.captcha-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
    .captcha-input-wrapper input {
width: 160px !important;
height: 48px;
text-align: center;
font-size: 20px;
font-weight: 600;
border: 2px solid #e9ecef;
border-radius: 10px;
background: #f9faff;
color: #333;
transition: all 0.3s ease;
box-shadow: 0 1px 4px rgba(102,126,234,0.07);
margin-bottom: 0;
}
.captcha-input-wrapper input:focus {
  border-color: #667eea;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
  outline: none;
}
.captcha-input-wrapper input:valid {
  border-color: #28a745;
}
.captcha-verify {
  position: absolute;
  right: -35px;
  color: #28a745;
  font-size: 18px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.captcha-input-wrapper input:valid + .captcha-verify {
  opacity: 1;
}
.captcha-input-wrapper input.has-value {
  background: rgba(102, 126, 234, 0.05);
}
.captcha-input-wrapper input.error {
  border-color: #dc3545;
  background: rgba(220, 53, 69, 0.05);
}
@media (max-width: 768px) {
  .captcha-box {
    padding: 15px;
  }
  .captcha-equation {
    font-size: 18px;
  }
  .captcha-input-wrapper input {
    width: 100px !important;
    font-size: 16px;
  }
}
.captcha-loading {
  color: #999;
  animation: pulse 1.5s ease-in-out infinite alternate;
}
@keyframes pulse {
  from { opacity: 0.6; }
  to { opacity: 1; }
}
