body {
  background: #e4e6eb;
  font-family:
    Segoe UI,
    sans-serif;
}

/* Center Layout */
.auth-box {
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Card */
.card-auth {
  background: #d3d4d8;
  width: 100%;
  max-width: 400px;
  padding: 20px 35px;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  text-align: center;
}

/* Logo Circle */
.logo {
  width: 70px;
  height: 70px;
  background: #2563eb;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 30px;
  margin: auto;
}

/* Inputs */
.form-control {
  height: 45px;
  border-radius: 12px;
}

/* Make placeholder color match input text color */
.form-control::placeholder,
input::placeholder,
textarea::placeholder {
  color: inherit;
  opacity: 1;
}
.form-control::-webkit-input-placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: inherit;
  opacity: 1;
}
.form-control:-ms-input-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
.form-control::-ms-input-placeholder,
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}

/* Green Button */
.btn-green {
  background: #2563eb;
  color: white;
  border-radius: 12px;
  height: 45px;
  font-weight: 600;
}

/* Outline Button (Aadhaar) */
.btn-outline-grey {
  border-radius: 12px;
  height: 45px;
  border: 2px solid #6c757d;
  font-weight: 600;
}

/* Divider (Signin page) */
.divider {
  text-align: center;
  margin: 18px 0;
  position: relative;
}

.divider::before,
.divider::after {
  content: "";
  height: 1px;
  width: 40%;
  background: #888;
  position: absolute;
  top: 50%;
}

.divider::before {
  left: 0;
}
.divider::after {
  right: 0;
}

.divider span {
  background: #d3d4d8;
  padding: 0 10px;
  font-size: 13px;
}

/* Profile Image (Signup) */
.card-auth img {
  width: 80px;
  height: 80px;
  object-fit: cover;
}
.card-auth input[maxlength="1"] {
  width: 45px;
  height: 50px;
  font-size: 20px;
  border-radius: 10px;
}
/* Green Button Hover Fix */
.btn-green:hover,
.btn-green:focus {
  background: #2563eb !important;
  color: white !important;
  box-shadow: none !important;
}

/* Aadhaar Button Hover Fix */
.btn-outline-grey {
  color: #333;
  background: transparent;
}

.btn-outline-grey:hover,
.btn-outline-grey:focus {
  background: transparent !important;
  color: #333 !important;
  border: 2px solid #6c757d !important;
  box-shadow: none !important;
}
.price-conbtn {
  font-size: 12px;
}
.self-premiun-message {
  font-size: 10px;
}

/* Profile Image Upload */
.profile-page .profile-img-container {
  position: relative;
  width: 100px;
  height: 100px;
  margin: 0 auto 15px;
}
.profile-page .btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
  background: #2563eb;
  color: white;
  border-radius: 12px;
  height: 45px;
  font-weight: 600;
}

.profile-page .profile-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 5px solid #e0e0e0;
  cursor: pointer;
  transition: all 0.3s ease;
}

.profile-page .profile-img:hover {
  opacity: 0.8;
}

.profile-page .profile-img-overlay {
  position: absolute;
  bottom: 0;
  right: 0;
  background: #667eea;
  color: white;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 3px solid white;
}

.profile-page .profile-img-overlay:hover {
  background: #764ba2;
}
/* Input with prefix/suffix */
.profile-page .input-group-text {
  background-color: #f8f9fa;
  border-color: #dee2e6;
  color: #495057;
  font-weight: 500;
}

.profile-page .input-group-text.prefix {
  border-right: 1px solid #dee2e6;
}

.profile-page .input-group-text.suffix {
  border-left: 1px solid #dee2e6;
}

.profile-page .taken-indicator {
  color: #dc3545;
  background-color: rgba(220, 53, 69, 0.1);
  border-color: #dc3545;
}

.profile-page .available-indicator {
  color: #198754;
  background-color: rgba(25, 135, 84, 0.1);
  border-color: #198754;
}

.profile-page .checking-indicator {
  color: #6c757d;
  background-color: #f8f9fa;
  border-color: #dee2e6;
}

.profile-page .status-icon {
  font-size: 14px;
  margin-right: 4px;
}

.profile-page .status-text {
  font-size: 12px;
  font-weight: 500;
}

/* Form validation */
.profile-page .is-valid {
  border-color: #198754 !important;
}

.profile-page .is-invalid {
  border-color: #dc3545 !important;
}

.profile-page .required {
  color: #dc3545;
}

/* File info */
.profile-page .file-info {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 14px;
  margin-top: 10px;
  display: none;
}
.profile-page .file-info.show {
  display: block;
}

/* Loading spinner */
.profile-page .spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.15em;
}

/* Name Options Section */
.profile-page .name-options-section {
  display: none;
  background: #f8f9fa;
  border-radius: 10px;
  padding: 10px;
  margin-top: 15px;
  border: 1px solid #dee2e6;
}

.profile-page .name-options-section.show {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}
.profile-page .name-options-title {
  font-weight: 600;
  color: #495057;
  margin-bottom: 15px;
  text-align: center;
  font-size: 16px;
}

.profile-page .option-card {
  border: 2px solid #dee2e6;
  border-radius: 10px;
  padding: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-bottom: 10px;
  background: white;
}

.profile-page .option-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.profile-page .option-card.selected {
  border-color: #667eea;
  background: rgba(102, 126, 234, 0.05);
}

.profile-page .option-card.premium {
  border-color: #ffd700;
}

.profile-page .option-card.premium.selected {
  background: rgba(255, 215, 0, 0.05);
}

.profile-page .option-card.standard {
  border-color: #6c757d;
}

.profile-page .option-card.standard.selected {
  background: rgba(108, 117, 125, 0.05);
}
.profile-page .option-card.regular {
  border-color: #20c997;
}

.profile-page .option-card.regular.selected {
  background: rgba(32, 201, 151, 0.05);
}

.profile-page .option-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.profile-page .option-name {
  font-weight: 600;
  color: #495057;
}

.profile-page .option-price {
  font-size: 14px;
  font-weight: 600;
}
.profile-page .option-price.premium {
  color: #ffd700;
}

.profile-page .option-price.standard {
  color: #6c757d;
}

.profile-page .option-price.regular {
  color: #20c997;
}

.profile-page .option-features {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
  font-size: 13px;
  color: #6c757d;
}
.profile-page .option-features li {
  margin-bottom: 5px;
  display: flex;
  align-items: center;
}

.profile-page .option-features li i {
  margin-right: 8px;
  font-size: 12px;
}

.profile-page .selected-name-display {
  background: #e7f1ff;
  border: 1px solid #b3d4ff;
  border-radius: 8px;
  padding: 8px;
  margin-top: 6px;
  font-size: 10px;
  display: none;
}
.profile-page .selected-name-display.show {
  display: block;
}

.profile-page .selected-name-text {
  font-weight: 600;
  color: #495057;
}

.profile-page .selected-plan-text {
  color: #6c757d;
  font-size: 13px;
}
