/*******************************************************************************
* The declarations in this file are used for LISTSERV Maestro's subscriber
* website layout. Future versions may provide different style declarations
* and/or additional classes that are currently not listed in this file.
* L-Soft may remove some of these declarations in the future version without
* further notice.
********************************************************************************/

p {
	margin: 16px 0;
}

ul {
	margin: 0;
}

/* Space between buttons */
button:not(:first-child),
input[type="button"]:not(:first-child),
input[type="submit"]:not(:first-child),
input[type="reset"]:not(:first-child) {
	margin-left: 1rem;
}

/* Button top margin: Defined separately to also have a top margin if the button is wrapped on a new line */
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
	margin-top: 1rem;
}
input[type="checkbox"],
input[type="radio"] {
	margin-top: 0.3rem;
}

/* Group of buttons (or other centered section): alignment and bottom margin */
.lsoft_lma_buttonsGroup,
.lsoft_lma_centeredSection {
	text-align: center;
	margin-top: 2rem;
	margin-bottom: 1rem;
}

.lsoft_lma_small,
.lsoft_lma_profileFieldAdditionalInfo {
	font-size: smaller;
}
.lsoft_lma_emphasis {
	font-weight: bold;
}
.emphasis {
 	font-weight: bold;
}

/* The little "asterisk" next to a mandatory field */
.lsoft_lma_mandatoryFieldMarker {
	font-weight: bold;
	margin-left: 0.2rem;
	margin-right: 0.15rem;
}
.lsoft_lma_subscriberPageHeader {
	margin: 0 0 0.5rem 0;
}

/* Wrapper around boxes that shall appear side-by-side */
.lsoft_lma_sideBySideBoxesOuter {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
}

/* Page sections and paragraphs */
.lsoft_lma_subscriberPageInnerText {
	margin-bottom: 1rem;
}
.lsoft_lma_subscriberPageSection {
	margin-top: 1rem;
}
.lsoft_lma_subscriberPageParagraph:not(:empty) {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
:not(.lsoft_lma_sideBySideDynamicOuter)>.lsoft_lma_subscriberPageParagraph:first-child,
.lsoft_lma_centeredSection:first-child {
	margin-top: 0;
}
:not(.lsoft_lma_sideBySideDynamicOuter)>.lsoft_lma_subscriberPageParagraph:last-child,
.lsoft_lma_centeredSection:last-child {
	margin-bottom: 0;
}

/* Classes for grid-type layout of profile fields */
.lsoft_lma_responsiveGridColumnOuter {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	margin: 0.1rem;
	justify-content: flex-start;
}
.lsoft_lma_responsiveGridColumnInner {
	margin: 0.1rem;
	overflow-x: hidden;
	text-overflow: ellipsis;
}

/* Input field and error marker classes */
.lsoft_lma_inputWrapperTextField,
.lsoft_lma_inputWrapperSelect {
	position: relative;
	padding-right: 0.6rem;
}
.lsoft_lma_errorMarkerOuter {
	position: absolute;
	top: 0;
	right: -0.8rem;
	padding-top: 0.3rem;
}

/* Responsive layout for small devices */
@media screen and (max-width:639px) {
	/* Grid columns not side-by-side but top/bottom */
	.lsoft_lma_responsiveGridColumn {
		width: 100% !important;
	}
}