/* -----

	1. Member Login
	2. Member Registration
	3. Member Navigation
	4. Member Dashboard
	5. Change Password
	6. Address Book
	7. Update Account

----- */


/* 1. Member Login */
.current-members-box { box-shadow: 0 5px 25px rgba(0,0,0,.1); background-color: #fff; max-width: 400px; margin: 2em auto; }
.current-members-box > fieldset,
.new-members-box { padding: 2.5em; }

	/* 1a. Login Form */
	.accountMenuLogin li { margin-bottom: 1.5em; }
	.accountMenuLogin li:last-child { margin-bottom: 0; }
	.accountMenuLogin label,
	#forgot-password-overlay ul label { display: block; margin-bottom: .25em; }
	.accountMenuLogin input[type=email],
	.accountMenuLogin input[type=password],
	#forgot-password-overlay input[type=email] { padding: .5em .75em; height: auto; }
	.accountMenuLogin a { display: inline-block; margin-top: .75em; font-size: 12px; font-size: .75rem; }
	.accountMenuLogin input[type=submit] { width: 100%; }
	
	/* 1b. New Member CTA */
	.new-members-box { background-color: #fcfcfc; border-top: 1px solid #efefef; }
	.new-members-box h3 { margin-top: 0; margin-bottom: 1em; }
	
	/* 1c. Forgot Password Modal */
	#forgot-password-overlay { padding: 0; border-radius: 0; }
	#forgot-password-overlay h2 { background-color: #fcfcfc; padding: .75em 3em .75em 1em; border-bottom: 1px solid #ececec; margin: 0; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
	.modal .close { background: url("../images/icon-close.png") no-repeat; width: 24px; height: 24px; }
	#forgot-password-overlay .modal-body { padding: 2em 2.5em 2.5em; }
	#forgot-password-overlay input[type=submit] { width: 100%; margin-top: .5em; }
	
	/* 1d. Reset Password */
	.reset-pw.current-members-box .message { border-radius: 0; margin: 1.5em 1.5em 0; }
	.reset-pw .message p { line-height: 1.25; }
	.reset-pw-form { padding: 1.5em; }
	.reset-pw-form li { position: relative; margin-bottom: 1em; }


/* 2. Member Registration */
.member-reg-form { max-width: 900px; }
.member-reg-form li,
.change-pw-form li,
.update-acct-form li,
.address-book-grid li,
.address-book-form li { margin-bottom: 1em; }
.member-reg-form label,
.change-pw-form label,
.update-acct-form label,
.address-book-form label { display: block; margin-bottom: .25em; }
.member-reg-form input:not([type=submit]),
.member-reg-form select,
.address-book-form input:not([type=submit]),
.address-book-form select { min-height: 36px; }


/* 3. Member Navigation */
.members-nav a { display: block; text-decoration: none; }
.members-nav a:hover { text-decoration: underline; }

	/* 3a. Horizontal */
	.main .members-nav { box-shadow: 0 0 7px rgba(0,0,0,.1); }
	.main .members-nav h2 { display: none; }
	.main .members-nav li { display: inline-block; margin: 0 1em; }
	.main .members-nav a { padding: .5em; }
	
	/* 3b. Vertical */
	.sidebar .members-nav { box-shadow: 0 5px 25px rgba(0,0,0,.1); background-color: #fff; padding: 2.5em; }
	.sidebar .members-nav h2 { margin-top: 0; padding-bottom: 1em; border-bottom: 1px solid #efefef; }
	.sidebar .members-nav li:last-child { margin-top: 1.5em; }
	.sidebar .members-nav a { padding: .35em 0; }


/* 4. Member Dashboard */
.member-table td { border-bottom: 1px solid #efefef; padding: .5em; }
.member-welcome { margin-top: 0; margin-bottom: .25em; }
.member-details { font-size: 12px; font-size: .75rem; color: #6e6e6e; }
.member-details span { font-size: 12px; font-size: .75rem; display: inline-block; vertical-align: middle; margin-left: 1em; border-radius: .25em; background-color: #6e6e6e; color: #fff; padding: .25em .75em; }
.member-details .status-active { background-color: #27ae60; }
.member-details .status-inactive { background-color: #c0392b; }


/* 5. Change Password */
.password-reqs { position: absolute; bottom: 90%; left: 0; width: 100%; background-color: #2e2e2e; background-color: rgba(50,50,50,.95); padding: 1.5em; visibility: hidden; opacity: 0; -webkit-transition: 500ms; transition: 500ms; }
.password-reqs.active { visibility: visible; opacity: 1; bottom: 100%; }
.password-reqs:before { content: ''; position: absolute; left: 50%; bottom: -20px; border: 10px solid transparent; border-top-color: #2e2e2e; border-top-color: rgba(50,50,50,.9); }
.password-reqs-title { color: #fff; margin-bottom: .5em; }
.password-reqs li { color: #c0c0c0; margin-bottom: .5em; font-size: 13px; font-size: .813rem; line-height: normal; }


/* 6. Address Book */
.address-book-grid { margin-bottom: 2em; }
.address-book-grid li { padding: 2.5em; background-color: #efefef; }
.address-book-grid li p { margin-bottom: .5em; }
.address-buttons { margin-top: 2em; }
.address-buttons .button { float: left; width: 49%; margin-right: 2%; padding: .35em 0; }
.address-buttons .button:last-child { margin-right: 0; }


/* 7. Update Account */
.update-acct-form .hint { font-size: 12px; font-size: .75rem; display: block; margin-top: .5em; color: #686868; }
.update-acct-form .buttons,
.address-book-form .buttons { padding-top: 1.5em; margin-bottom: 0; border-top: 1px solid #efefef; }


@media screen and (min-width: 769px) {
	/* 1. Member Login */
		/* 1a. Login Form */
		.current-members-box fieldset,
		.new-members-box { padding: 3em; }
	
	/* 6. Address Book */
	.address-book-grid li { display: inline-block; vertical-align: top; width: 49%; margin-right: 1%; }
	.address-book-grid li:nth-child(2n) { margin-right: 0; }
}