body.archive .paywall,
body.search .paywall,
article .paywall {
	position: relative;
	margin-bottom: 20px;
}

body.archive .paywall-preview,
body.search .paywall-preview,
article .paywall-preview {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
}

body.search .shade,
body.archive .shade {
	position: absolute;
	z-index: 90;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: white;
	background: -moz-linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: -webkit-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: -o-linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: -ms-linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1 );
}

article .shade {
	position: absolute;
	z-index: 99;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 300px;
	background: white;
	background: -moz-linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	background: -webkit-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	background: -o-linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	background: -ms-linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0 );
}

@keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}
@-o-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}
@-ms-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}
@-webkit-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}
@-moz-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}

.paywall-dialog {
	width: 100%;
	text-align: center;
	display: block;
	padding: 40px 20px 20px 20px;
	font-size: 1.2em;
	background-color: white;
	-webkit-animation: fadein 4s; 
	-moz-animation: fadein 4s;
	-ms-animation: fadein 4s; 
	-o-animation: fadein 4s; 
	animation: fadein 4s;
}
body.search .required_fields_form,
body.search .paywall-dialog,
body.archive .required_fields_form,
body.archive .paywall-dialog {
	z-index: 99;
	position: absolute;
	padding-bottom: 80px;
}

.paywall-diamond {
}

body.paywall-diamond article .byline:before {
	content: "\f219";
	font-family: FontAwesome;
	padding-right: 10px;
	font-size: 1.4em;
}

body.paywall-gold article .byline:before {
	content:"\f2bd";
	font-family: FontAwesome;
	padding-right: 10px;
	font-size: 1.4em;
}

body.subscription-required #respond {
	display: none;
}

#home-feature .dailydiamond_widget {
	padding: 20px 20px 0 20px !important;
}

.dailydiamond-wrap {
	width: 100%;
	padding: 10px 20px;
	background-color: #33a2d9;
	color: white;
	font-size: 1.2em;
}

.dailydiamond-url {
	font-weight: bold;
}


.dailydiamond-label i:after {
	content: "\f219";
	font-family: FontAwesome;
	padding-right: 0.4em;
}

.dailydiamond-url:hover,
.dailydiamond-url:visited,
.dailydiamond-url:visited:focus,
.dailydiamond-url:visited:hover,
.dailydiamond-url:focus,
.dailydiamond-url {
	color: white;
}

.dailydiamond-label {}

/* paywall + accounts */

#lostpasswordform label,
#setupform tn,
#loginform label {
	display: inline-block;
	width: 180px;
}

#resetpassform .password-input-wrapper input,
#lostpasswordform #user_login,
#setupform #user_login,
#loginform #user_pass,
#loginform #user_login {
	font-size: 1.4em;
	padding: 2px 6px;
}

#resetpassform #pass1-text {
	display: none;
}

#resetpassform #pass-strength-result {
	font-style: italic;
	font-size: 0.9em;
}

.tml-profile .pw-weak { display: none; }
.tml-profile .pw-weak th { color: white; }
.tml-profile .tml-user-login-wrap,

#campaignform #username-tr,
#setupform #username-tr {
	display: none;
}

#lostpasswordform .tml-submit-wrap,
.tml-rememberme-submit-wrap {
	margin-left: 180px;
}

#content .tml-action-links {
	margin-left: 180px;
	list-style-type: none;
}

.tml .error,
.tml .message {
	font-weight: bold;
	font-style: italic;
	padding: 10px 20px;
}

.tml .message {
	border: 1px solid #d0d0d0;
}

.tml .error {
	background-color: red;
	color: white;
}

.tml-form-table {
	max-width: 600px;
}

.tml-profile .tml-form-table th,
.tml-form-table td,
.tml-form-table th {
	display: table-cell;
	vertical-align: top;
	text-align: left;
	padding: 4px 0;
}

.tml-form-table th {
	width: 180px;
	max-width: 32%;
	padding-right: 10px;
}

.tml-form-table {
	width: 100%;
}

.tml-form-table .required th label:after {
	content: " *";
	color: red;
}

.tml-form-table span.hint,
.tml-form-table span.description {
	display: block;
	font-style: italic;
}

.tml-form-table td input[type=password],
.tml-form-table td input[type=email],
.tml-form-table td input[type=text] {
	width: 100%;
	padding: 4px 6px;
	font-size: 1.2em;
}

.tml-form-table td input[type=select] {
	padding: 4px 6px;
	font-eize: 1.2em;
}


@media screen and (max-width: 640px) {
	.tml-profile .tml-form-table th, 
	.tml-form-table td, 
	.tml-form-table th {
		display: block;
	}
	.tml-form-table th {
		width: 100%;
		max-width: 100%;
	}
}


body.login .profile-actions br {
	display: none;
}
body.login .profile-action {
	margin-right: 1em;
}


.paywall-suggest-registration {
	display: block;
	width: 100%;
	text-align: center;
	padding: 20px 0;
}
.paywall-suggest-registration b {
	color: #00589b;
	font-size: 1.2em;
	padding: 20px 0 10px 0;
	display: block;
}
.paywall-denied {
	padding: 20px 0;
	color: #00589b;
	font-size: 1.2em;
	display: block;
}
.paywall-actions {
	padding: 10px 20px;
	width: 100%;
	text-align: center;
}

.paywall-button {
	margin: 2px 10px;
	display: inline-block;
}

.paywall-user-message .close-button,
.paywall-button,
.tml-form-table button,
.tml-form-table button:active,
.tml-form-table button:hover,
.tml-form-table button:focus,
.tml-submit-wrap input[type=submit],
.pw_campaign_button,
a.profile-action {
	background-color: #00589b !important;
	padding: 4px 20px;
	border-radius: 20px;
	border-width: 0;
	color: white !important;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 10px;
}

.tml-form-table a {
	cursor: pointer;
}

.paywall-button-white,
.tml-form-table button.button-secondary {
	background-color: white !important;
	border-width: 1px;
	border-color: #00589b;
	color: #00589b !important;
}

.paywall-button-disabled,
.tml-form-table button.button-secondary:disabled,
.paywall-button-white:disabled,
.tml-form-table button:disabled,
.paywall-button:disabled {
	background-color: #d0d0d0 !important;
}

.tml-profile .wp-pwd #pass1 {
	display: block;
}
.tml-profile .wp-pwd #pass1-text,
.tml-profile .wp-pwd .show-password #pass1 {
	display: none;	
}
.tml-profile .wp-pwd .show-password #pass1-text {
	display: block;
}
.tml-profile #pass-strength-result {
	font-style: italic;
}
.tml-profile #pass-strength-result.short,
.tml-profile #pass-strength-result.bad {
	color: red;
}
.tml-profile #pass-strength-result.good {
	color: blue;
}
.tml-profile #pass-strength-result.strong {
	font-weight: bold;
}
#required_customer_fields {
	padding: 20px 0;
}
#setupform .optional {
	display: none;
}
#setupform.campaignform .optional {
	display: 'table-row';
}
#setupform #row-phone {
	display: table-row;
}

.tml-form-table .description {
	font-size: 0.8em;
	font-style: italic;
	margin-top: 0;
}

.paywall-user-message-inner,
.paywall-user-panel-message,
.paywall-free-trial {
	border: 4px solid #f0f0f0;
	width: 100%;
	max-width: 640px;
	text-align: center;
	padding: 10px;
	margin: 20px 0;
}

.paywall-user-message {
	text-align: center;
	position: fixed;
	z-index: 9999;
	top: 80px;
	left: 0;
	width: 100%;
	
}
.paywall-user-message-inner {
	box-shadow: 0 0 60px rgba(0,0,0,0.2);
	display: inline-block;
	background-color: white;
	width: 80%;
	margin: 0 auto;
}


body.raitti #to-top,
body.raitti .tml-action-links {
	display: none;
}

.tml-profile #row-paywall_print_subscriber {
	display: none;
}

a.trash-family-member {
	color: red !important;
}

.paywall-user-message a,
.paywall-user-message a:visited,
.paywall-user-message a:visited:hover,
.paywall-user-message a:focus,
.paywall-user-message a:active {
	color: #22a7ff;
}

.product-display {
	border: 1px solid #a0a0a0;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 1em;
}
.product-price {
	font-size: 1.2em;
	font-weight: bold;
	color: #22a7ff;
	display: block;
}

.not-available {
	display: block;
	padding: 1em;
	margin: 1em 0;
	border: 1px solid #333;
	font-size: 1.1em;
}

.message-unseen {
	font-weight: bold;
}

.message-date {
	color: #c0c0c0;
	font-size: 0.9em;
	padding-left: 1em;
	padding-right: 1em;
}

.message-unread {
	background-color: #333;
	color: white;
	padding: 2px 10px;
	border-radius: 20px;
	margin-left: 1em;
}

.paywall_subscribe_radios {
	padding:0.8rem 1rem;
	display: inline-block;
	text-align: left;
}
.paywall_subscribe_radio {
	display: block;
}
.paywall-login-wrap {
	display: flex;
	flex-direction: row;
	align-items: center;
	font-size: 0.9em;
	line-height: 1.2em;
	padding-left: 1rem;
}
.paywall-login-wrap-options {
	display: flex;
	flex-direction: column;
}
.pw_generated_excerpt img {
	display: block;
}
