/**
 * User account pages — login, register, password reset
 */

.page-user-login .ocmono-page-content,
.page-user-register .ocmono-page-content,
.page-user-password .ocmono-page-content {
  background: #f0f4ee;
}

.page-user-login .ocmono-page-content > .container,
.page-user-register .ocmono-page-content > .container,
.page-user-password .ocmono-page-content > .container {
  max-width: 520px;
  padding-top: 2rem !important;
  padding-bottom: 2.5rem !important;
}

.page-user-login .ocmono-page-content > .container > .row > [class*="col-"],
.page-user-register .ocmono-page-content > .container > .row > [class*="col-"],
.page-user-password .ocmono-page-content > .container > .row > [class*="col-"] {
  flex: 0 0 100%;
  max-width: 100%;
}

/* Tab navigation */
.ocmono-account-tabs.tabs,
.page-user-login .tabs.primary,
.page-user-register .tabs.primary,
.page-user-password .tabs.primary {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 0 0 -1px;
  padding: 4px;
  list-style: none;
  background: #e8ede6;
  border: 1px solid #dce5d8;
  border-bottom: none;
  border-radius: 12px 12px 0 0;
}

.ocmono-account-tabs.tabs li,
.page-user-login .tabs.primary li,
.page-user-register .tabs.primary li,
.page-user-password .tabs.primary li {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  min-width: 0;
}

.ocmono-account-tabs.tabs li a,
.page-user-login .tabs.primary li a,
.page-user-register .tabs.primary li a,
.page-user-password .tabs.primary li a {
  display: block;
  padding: 12px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  color: #5a5a5a;
  text-decoration: none;
  background: transparent;
  border: none;
  border-radius: 8px;
  transition: background 0.15s ease, color 0.15s ease;
}

.ocmono-account-tabs.tabs li a:hover,
.page-user-login .tabs.primary li a:hover,
.page-user-register .tabs.primary li a:hover,
.page-user-password .tabs.primary li a:hover {
  color: #1a3d1a;
  background: rgba(255, 255, 255, 0.6);
}

.ocmono-account-tabs.tabs li.is-active a,
.ocmono-account-tabs.tabs li.active a,
.ocmono-account-tabs.tabs li a.is-active,
.ocmono-account-tabs.tabs li a.active,
.ocmono-account-tabs.tabs li a.nav-link.active,
.page-user-login .tabs.primary li.is-active a,
.page-user-login .tabs.primary li.active a,
.page-user-login .tabs.primary li a.is-active,
.page-user-login .tabs.primary li a.active,
.page-user-login .tabs.primary li a.nav-link.active,
.page-user-register .tabs.primary li.is-active a,
.page-user-register .tabs.primary li.active a,
.page-user-register .tabs.primary li a.is-active,
.page-user-register .tabs.primary li a.active,
.page-user-register .tabs.primary li a.nav-link.active,
.page-user-password .tabs.primary li.is-active a,
.page-user-password .tabs.primary li.active a,
.page-user-password .tabs.primary li a.is-active,
.page-user-password .tabs.primary li a.active,
.page-user-password .tabs.primary li a.nav-link.active {
  color: #1a3d1a;
  background: #fff;
  box-shadow: 0 1px 4px rgba(26, 38, 24, 0.08);
}

/* Bootstrap Barrio nav-link — keep pill tabs, no default tab borders */
.ocmono-account-tabs.tabs .nav-link,
.page-user-login .tabs.primary .nav-link,
.page-user-register .tabs.primary .nav-link,
.page-user-password .tabs.primary .nav-link {
  border: none !important;
  margin-bottom: 0;
}

/* Form card */
.page-user-login form.ocmono-account-form,
.page-user-login form.user-login-form,
.page-user-register form.ocmono-account-form,
.page-user-register form.user-register-form,
.page-user-password form.ocmono-account-form,
.page-user-password form.user-pass {
  margin: 0 0 32px;
  padding: 28px 24px 32px;
  background: #fff;
  border: 1px solid #dce5d8;
  border-radius: 0 0 12px 12px;
  box-shadow: 0 8px 28px rgba(26, 38, 24, 0.08);
}

/* Form only (no tabs above) */
.page-user-login form.ocmono-account-form:only-child,
.page-user-register form.ocmono-account-form:only-child {
  border-radius: 12px;
}

.page-user-login .form-item,
.page-user-register .form-item,
.page-user-password .form-item {
  margin-bottom: 18px;
}

.page-user-login label,
.page-user-register label,
.page-user-password label,
.page-user-login .form-item label.option,
.page-user-register .form-item label.option {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
  color: #1a1a1a;
}

/* Single required marker — override Barrio’s SVG ::after (duplicate asterisk). */
.page-user-login .form-required::after,
.page-user-register .form-required::after,
.page-user-password .form-required::after {
  content: "*";
  display: inline;
  width: auto;
  height: auto;
  margin: 0 0 0 0.2em;
  padding: 0;
  font-size: inherit;
  font-weight: 700;
  line-height: 1;
  color: #c62828;
  vertical-align: baseline;
  background: none;
  background-image: none;
}

.page-user-login .description,
.page-user-register .description,
.page-user-password .description {
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: #777;
}

.page-user-login input.form-text,
.page-user-login input.form-email,
.page-user-login input.form-password,
.page-user-register input.form-text,
.page-user-register input.form-email,
.page-user-register input.form-password,
.page-user-password input.form-text,
.page-user-password input.form-email {
  width: 100%;
  min-height: 46px;
  padding: 10px 14px;
  font-size: 15px;
  color: #1a1a1a;
  background: #f8faf7;
  border: 1px solid #d6dfd2;
  border-radius: 8px;
  box-shadow: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.page-user-login input:focus,
.page-user-register input:focus,
.page-user-password input:focus {
  border-color: var(--ogenix-base, #50a72c);
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(80, 167, 44, 0.15);
}

.page-user-login .form-actions,
.page-user-register .form-actions,
.page-user-password .form-actions {
  margin: 24px 0 0;
  padding: 0;
}

.page-user-login .form-actions input[type="submit"],
.page-user-login .form-actions .button,
.page-user-login .form-actions .btn,
.page-user-login .form-actions .button--primary,
.page-user-register .form-actions input[type="submit"],
.page-user-register .form-actions .button,
.page-user-register .form-actions .btn,
.page-user-password .form-actions input[type="submit"],
.page-user-password .form-actions .button,
.page-user-password .form-actions .btn {
  width: 100%;
  min-height: 46px;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 600;
  color: #1a1a1a;
  background: var(--ogenix-primary, #ffbd3c) !important;
  border: none !important;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s ease;
}

.page-user-login .form-actions input[type="submit"]:hover,
.page-user-register .form-actions input[type="submit"]:hover,
.page-user-password .form-actions input[type="submit"]:hover {
  background: #e5a82e !important;
  color: #1a1a1a;
}

.page-user-login .form-actions a,
.page-user-register .form-actions a {
  display: inline-block;
  margin-top: 12px;
  font-size: 14px;
  color: var(--ogenix-base, #50a72c);
  text-decoration: none;
}

.page-user-login .form-actions a:hover,
.page-user-register .form-actions a:hover {
  text-decoration: underline;
}

/* Hide duplicate page titles inside content when header shows title */
.page-user-login .ocmono-page-content h1:not(.page-header__title),
.page-user-register .ocmono-page-content h1:not(.page-header__title) {
  display: none;
}
