/* Elevated forms */
.user-form.is-style-half-size {
	max-width: 40rem;
}

.user-form.is-style-elevated {
	position: relative;
	padding: 1rem 2rem;
	border-radius: 0.5rem;
	background: var(--color-white);
	box-shadow: var(--spread-elevation);
}

.user-form.is-style-elevated .msg-notice p {
	margin: 0;
}

.user-form.is-style-elevated .msg-notice-warning p,
.user-form.is-style-elevated .msg-notice-error p {
	color: #ff2a2a;
}

.user-form.is-style-elevated .msg-notice-success p {
	color: #447821;
}

.user-form.is-style-elevated input, 
.user-form.is-style-elevated textarea,
.user-form.is-style-elevated select {
	flex-grow: 1;
}

.user-form.is-style-elevated input::placeholder,
.user-form.is-style-elevated textarea::placeholder {
	color: var(--color-black--40);
}

.user-form.is-style-elevated textarea {
	resize: vertical;
}

/* Overlay */
.user-form .overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--color-white);
	border-radius: 0.3rem;
}

.user-form .overlay img {
	height: 7rem;
}

.user-form .overlay h2,
.user-form .overlay p {
	color: var(--base-color);
}

.user-form .overlay p {
	text-align: center;
	padding: 0 2rem;
	margin: 0.25rem 0;
}


a.back-link {
	--link-color: var(--base-color);
	--link-hover-color: var(--base-color);
	font-weight: bold;
}

a.back-link::before {
	content: '\f060';
	font-family: var(--icon-font-family);
	margin-right: 0.4em;
}

a.external-link::after {
	content: '\f08e';
	font-family: var(--icon-font-family);
	margin-left: 0.3em;
	font-weight: normal;
	font-size: .7em;
}


/* Register form */
.register .overlay .email {
	color: var(--link-color);
}

/* Downloads */
.downloads {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-items: flex-start;
	border-bottom: .8rem solid var(--color-grey);
	margin: 0 auto 2rem auto;
}

.download-title {
	width: 100%;
	margin: 0;
	padding: 1rem 0;
	text-align: center;
	border-bottom: .8rem solid var(--color-grey);
}

.download-release-date {
	font-size: .4em;
	opacity: .6;
	display: block;
}

.download-item {
	padding: 1em 1em;
	text-align: center;
	flex: 1 0 0;
	color: var(--base-color);
}

.download-item i {
	font-size: 2.5rem;
}

.download-item svg {
	height: 3.5rem;
	color: var(--base-color);
}

.download-item h4 {
	margin: 1rem 0;
	flex: 1 1 0;
}

.download-item h4 a, .download-item h4 .lnk {
	font-family: var(--title-font-family);
	font-weight: 500;
	transition: all 80ms linear;
	background: var(--base-color);
	color: var(--color-white);
	padding: 1rem;
	display: block;
	border-radius: .25em;
}

.download-item h4 .lnk {
	opacity: .8;
}

.download-item a:hover {
	opacity: .8;
}

.download-item em {
	font-weight: normal;
	font-size: .8em;
}

.download-multi-arch {
	display: flex;
	gap: .3rem;
	align-content: stretch;
}

.download-multi-arch h4:first-child a {
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
}

.download-multi-arch h4:last-child a {
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}

/* Big steps, Step-by-Step */
.bigsteps {
	list-style-position: outside;
	font-size: var(--small-title-font-size);
	margin-left: 1.5rem;
	color: var(--base-color);
	--text-margin: 0.5rem;
}

.bigsteps strong {
	font-family: var(--title-font-family);
	font-weight: normal;
	color: var(--title-color);
}

.bigsteps li {
	padding: 1rem 0;
}

.bigsteps.with-hr li {
	border-bottom: 1px solid #ccc;
	padding: 1.5rem 0;
}

ul.bigsteps li {
	list-style-type: disc;
	background: none;
}

.bigsteps p {
	font-size: var(--main-font-size);
	margin: .5rem 0;
}


/* User forms */
.user-form .user-field {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 1rem;
	margin: 1rem 0;
}

.user-form fieldset {
	margin: 0;
	padding: 0;
	border: none;
}

.user-form fieldset:disabled {
	filter: grayscale(100%);
}

.user-form :disabled {
	color: var(--form-disabled-text-color);
	cursor: default !important;
}

.user-field input,
.user-field textarea,
.user-field select,
.user-form button,
.user-form input[type="submit"] {
	flex: 1;
	max-width: 100%;
	padding: .75rem 1rem;
	vertical-align: middle;
	border: 1px solid var(--form-border-color);
	background: var(--form-background-color);
	border-radius: .75rem;
	color: var(--base-accent-color);
	font-size: var(--main-font-size);
	font-family: sans-serif;
}

.user-form input[type="submit"],
.user-form button {
	flex: 0;
	margin: 1rem 0;
	cursor: pointer;
	background: var(--base-accent-color);
	color: white;
	font-weight: bold;
	padding: .75rem 1rem;
}

.user-form input:focus, .user-form textarea:focus, .user-form select:focus {
	border: 1px solid var(--base-accent-color);
	outline: 1px solid var(--base-accent-color);
}

.user-field label {
	display: inline-block;
	min-width: 10em;
	width: 12em;
	font-weight: bold;
	font-size: var(--quiet-font-size);
	color: var(--base-color);
	vertical-align: middle;
	margin: .5em 0;
	font-family: var(--title-font-family);
}

.user-form .voucher-field {
	margin-bottom: 1em;
}

.voucher-field label {
    flex: 0;
    min-width: auto;
}

.voucher-field input {
	flex: 0;
}

.label-action {
	flex-grow: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.label-action a {
	font-family: var(--title-font-family);
	font-size: var(--quiet-font-size);
	margin: 0.5em 0;
}

.user-form legend {
	color: var(--vibrant-color);
	display: block;
	font-size: var(--small-title-font-size);
	font-family: var(--title-font-family);
	border-left: var(--block-dashes-width) solid var(--vibrant-color);
	padding: .5em 0 .5em calc(var(--block-dashes-gap) - var(--block-dashes-width));
	margin: 1em 0 .5em 0;
	margin-left: calc(0px - var(--block-dashes-gap) - var(--block-dashes-width));
	position: relative;
	z-index: 1;
}

.user-form p.help {
	display: inline-block;
	font-size: var(--quiet-font-size);
	color: var(--form-text-color);
	margin: 0;
}

.user-form fieldset.description-field,
.user-form fieldset.hidden {
	display: none;
}

.user-form label.follow {
	font-size: var(--main-font-size);
	color: var(--base-color);
}

.user-form #conditions {
	accent-color: var(--color-dark-blue);
	outline: none;
}

.user-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.user-form .full-width {
	flex: 1 !important;
}

strong.required {
	color: #ff0000;
	font-weight: bold;
}

.user-form-disclaimer {
	font-size: var(--quiet-font-size);
}

.user-form-footer {
	text-align: center;
	--text-color: var(--color-dark-white);
	--link-color: var(--color-white);
	--link-hover-color: var(--color-dark-white);
}

.user-form-footer a {
	font-weight: bold;
	text-decoration: underline;
}

/* User notices */
.msg-notice p {
	margin: 0;
}

.msg-notice {
	padding: 1rem;
	background: var(--color-grey);
	border-radius: .6rem;
	margin: .75rem 0;
}

.msg-notice .wp-block-buttons {
	margin: 0;
}

.msg-notice-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.msg-notice-success {
	border: 2px solid var(--success-color);
	color: var(--success-color);
	background-color: var(--success-accent-color);
}

.msg-notice-success p {
	color: var(--success-color);
}

.msg-notice-error, .msg-notice-warning {
	border: 2px solid var(--error-color);
	color: var(--error-color);
	background-color: var(--error-accent-color);
}

.msg-notice-error p, .msg-notice-warning p {
	color: var(--error-color);
}

/* Smartbox / infobox */
.smartbox.info {
	--smartbox-color: #f4f4fc;
	position: relative;
	background: var(--smartbox-color);
	padding: 2rem 3rem;
	margin: 2rem auto;
	overflow: hidden;
	z-index: 1;
	border-radius: .5em;
}

.smartbox.info::before {
	content: "i";
	font-family: serif;
	line-height: 40rem;
	position: absolute;
	top: -4rem;
	color: var(--smartbox-color);
	background: white;
	border-radius: 50%;
	width: 20rem;
	height: 40rem;
	text-align: center;
	font-size: 35rem;
	font-weight: bold;
	transform: scaleY(0.5);
	transform-origin: top;
	left: 1rem;
	z-index: -1;
}

.smartbox.info > * {
	position: relative;
	z-index: 1;
}

/* Tables */
table.table a, table.table a:visited {
	color: var(--link-color);
	text-decoration: none;
}

table.table a:hover {
	color: var(--link-hover-color);
	text-decoration: none;
}

table.table tr.expired td,
table.table td.expired {
	color: var(--color-red);
	--link-color: var(--color-red);
}

table.table {
	border: none;
	vertical-align: top;
	width: 100%;
	margin: 1rem 0;
	padding: 0;
	border-collapse: collapse;
}

table.table-fixed {
	table-layout: fixed;
}

table.table tbody {
	border: none;
}

table.table tr.separation {
	border-top: 2px solid #ccc;
}

table.table th {
	text-align: left;
	color: var(--base-color);
	font-weight: bold;
	font-size: var(--quiet-font-size);
	border-bottom: 1px solid #ccc;
	padding: .5rem;
}

table.table tbody {
	border-bottom: .3rem solid #eee;
	border-top: .3rem solid #eee;
}

table.table .right {
	text-align: right;
}

table.table .center {
	text-align: center;
}

table.table td {
	border-bottom: 1px solid #ddd;
	padding: .5rem;
	color: var(--base-color);
}

table.table strong {
	color: #d45500;
	font-weight: normal;
}

table.table-nowrap {
	table-layout: fixed;
}

table.table-nowrap td {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

table.table td.separation-title {
	font-weight: 600;
	background: var(--color-dark-white);
	padding: .3em;
	font-size: var(--quiet-font-size);
}

table th.nowrap, table td.nowrap {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* Dots */

.dot {
	height: 1.2rem;
	width: 1.2rem;
	border-radius: 50%;
	display: inline-block;
	vertical-align: middle;
	margin: 0 .3rem;
}

.green .dot, .dot.green { background-color: #00aa00; }
.red .dot, .dot.red { background-color: #cc0000; }
.orange .dot, .dot.orange { background-color: #ffaa00;}
.grey .dot, .dot.grey { background-color: #ccc; }
.black .dot, .dot.black { background-color: #444; }

.green { color: #00aa00; }
.red { color: #cc0000; }
.orange { color: #ee8800;}
.grey { color: #444; }
.black { color: #444; }

/* Console log */
.console-log {
	line-height: 1.2;
	padding: 1rem;
	display: block;
	background-color: #fff8eb
}

.no-console-log {
	padding: 3rem 1rem;
	text-align: center;
	background-color: #fff8eb;
	font-family: monospace;
}

/* Announcement banner */
.entry-announcement {
	width: var(--base-page-size);
	margin: 0 var(--block-margin);
	padding-top: calc(var(--block-vertical-padding) / 2 + 1rem);
}

.entry-announcement + .entry-header {
	padding-top: calc(var(--block-vertical-padding) / 2);
}

.entry-banner {
	--banner-color: var(--color-orange);
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1.5em;
	border-radius: 0.5em;
	background-color: var(--banner-color);
	box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px;
	font-family: var(--title-font-family);
	font-weight: 500;
	color: var(--color-white);
}

.entry-banner-text {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.entry-banner-action {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	padding: 0.8em 1.5em;
	border-radius: 1.5em;
	background-color: var(--color-white);
	color: var(--banner-color);
	transition: var(--button-transition);
}

.entry-banner-action:hover {
	background-color: var(--color-dark-white);
	color: var(--banner-color);
}

.entry-banner-action::after {
	content: '\f178';
	margin-left: 1em;
	font-family: var(--icon-font-family);
}

/* Account */

.account .title-decoration::after {
	width: 45%;
}

.account {
	display: flex;
}

.account-content {
	margin-left: var(--account-dashes-gap);
	padding-top: calc(var(--block-vertical-padding) / 2 + 1rem);
	--block-dashes-gap: var(--account-dashes-gap);
	--block-dashes-width: var(--account-dashes-width);
	flex-grow: 1;
}

.account-content.dashboard {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 1.5rem;
}

.account-content h1.entry-title {
	margin-bottom: 2rem;
}

.account-content div.account-header-content {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

.account-content div.account-header-content .user-form input[type="submit"] {
	background-color: var(--color-darker-orange);
}

.account-content div.account-header-content .title-decoration::after {
	width: inherit;
}

.account-menu-container {
	padding: 0;
	margin: 0;
	min-width: 18rem;
	padding-right: var(--account-dashes-gap);
	padding-top: calc(var(--block-vertical-padding) / 2 + 1rem);
	border-right: var(--account-dashes-width) dashed;
	border-color: var(--color-dark-white);
	font-size: var(--primary-menu-font-size);
	font-family: var(--account-menu-font-family);
	position: sticky;
	top: 0;
	align-self: flex-start;
}

.account-menu {
	list-style-type: none;
}

.account-menu-container .logout {
	font-weight: bold;
	--link-color: var(--base-color);
	padding: 0 1rem;
}

.account-menu-container a {
	display: block;
}

.account-menu-container a[target="_blank"]::after {
	content: "\f08e";
	font-family: "FontAwesome";
	margin-left: .4em;
	font-size: .7em;
	opacity: 0.8;
}

.account-menu > .menu-item {
	margin-bottom: 2rem;
	--link-color: var(--account-menu-color);
	--link-active-color: var(--color-darker-orange);
}

.account-menu .menu-icon {
	margin: 0 .8rem 0 0;
	max-height: 1rem;
	vertical-align: baseline;
}

.account-sub-menu {
	list-style-type: none;
	line-height: var(--account-menu-line-height);
	margin: 0;
	padding: 0;
}

.account-menu > .menu-item:not(.account-menu-highlight) {
	padding: 0rem 1rem;
}

.account-menu > .menu-item:not(.account-menu-highlight) > span {
	font-size: 1.3em;
	font-variant: all-small-caps;
	font-weight: 500;
	color: var(--color-black--40);
	letter-spacing: .6px;
	display: inline-block;
	margin-bottom: .8rem;
}

.account-menu > .menu-item.account-menu-highlight {
	background: var(--account-highlight-background-color);
	padding: 1rem 2rem;
	--text-color: var(--color-white);
	--title-color: var(--color-white);
	--link-color: var(--color-white);
	--link-hover-color: var(--color-white);
	--link-active-color: var(--color-white);
	border-radius: 0.3rem;
}

.account-menu-highlight .account-sub-menu > .menu-item {
	margin: .3em 0;
}

.account-menu > .menu-item.account-menu-highlight a[aria-current=page],
.account-menu > .menu-item.account-menu-highlight a:hover {
	border-radius: .5em;
	background: var(--color-white--20);
	margin-left: -1rem;
	margin-right: -1rem;
	padding-left: 1rem;
	padding-left: 1rem;
}

.account-menu > .menu-item.account-menu-highlight > span {
	font-size: 1.8em;
	letter-spacing: -0.6px;
	font-weight: 400;
	display: inline-block;
	margin-bottom: .8rem;
}

.account-menu-item-with-icon a {
	display: flex;
	align-items: center;
}

.account-menu-container .icon-secondary {
	color: var(--color-blue--30);
}

.account-menu-container a:hover .icon-primary,
.account-menu-container a:hover .icon-secondary {
	color: var(--link-hover-color);
}

.account-menu-container a[aria-current=page],
.account-menu-container a[aria-current=page] .icon-primary,
.account-menu-container a[aria-current=page] .icon-secondary {
	color: var(--link-active-color);
}

.account-menu-highlight .icon-primary,
.account-menu-highlight .icon-secondary {
	color: var(--color-white);
}

.account-overview {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.account-overview-large-shortcut {
	background: var(--color-grey);
	border-radius: 0.3rem;
	border-bottom: 0.3rem solid var(--vibrant-color);
	padding: 1em;
	height: 12rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex: 1 1 0px;
}

.account-overview-large-shortcut:hover {
	background-color: var(--color-dark-white);
}

.account-overview-large-shortcut-title {
	font-family: var(--title-font-family);
	font-weight: 500;
	color: var(--text-color);
}

.account-overview-large-shortcut-image {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-white);
	background: var(--vibrant-color);
	width: 4rem;
	height: 4rem;
	padding: .7rem;
	border-radius: 0.3rem;
	margin: .5rem auto;
}

.account-overview-large-shortcut-image svg {
	height: 2rem;
}

.account-overview-large-shortcut-subtitle {
	font-size: var(--quiet-font-size);
	font-family: var(--title-font-family);
	color: var(--text-color);
	font-weight: lighter;
	text-align: center;
}

.account-overview-container {
	background: var(--color-grey);
	border-radius: 0.3rem;
	padding: 0 2em;
	grid-column: 1 / span 2;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.account-overview svg {
	height: 2.5rem;
	align-self: flex-start;
}

.account-overview-container.unknown,
.account-overview-container.studio {
	background: var(--color-darker-orange);
}

.account-overview-container h2,
.account-overview-container.alert h3 {
	margin-top: 1em;
	display: flex;
	gap: 0.5rem;
}

.account-overview-container h2 {
	gap: 0.8rem;
}

.account-overview-container.alert h3 {
	align-items: flex-end;
}

.account-overview-container.alert h3 svg {
	height: 1.5rem;
}

.account-overview-container.alert p {
	color: var(--color-dark-blue);
	margin-top: 0;
}

.account-overview-container.alert.welcome h3 {
	color: var(--alternate-title-color);
}

.account-overview-container.alert.expiration h3 {
	color: var(--color-red);
}

.account-overview-container.alert.request h3 {
	color: var(--color-green);
}

.account-overview-container.unknown h2, .account-overview-container p {
	color: white;
}

.account-overview-container.unknown a{
	color: white;
	text-decoration: underline;
}

.account-overview-container.optimizer {
	background: var(--color-dark-blue);
}

.account-overview-container .wp-block-button.is-style-fill .wp-block-button__link {
	border-color: white;
	background-color: white !important;
}

.account-overview-container.optimizer .wp-block-button.is-style-fill .wp-block-button__link {
	color: var(--color-dark-blue) !important;
	text-decoration: none;
}

.account-overview-container.unknown .wp-block-button.is-style-fill .wp-block-button__link,
.account-overview-container.studio .wp-block-button.is-style-fill .wp-block-button__link {
	color: var(--color-darker-orange) !important;
	text-decoration: none;
}

.account-overview-container .wp-block-button.is-style-fill .wp-block-button__link:hover {
	background-color: #eee !important;
	border-color: #eee;
}

.account-overview-container.unknown .wp-block-button.is-style-fill:not(.no-arrow) .wp-block-button__link::after,
.account-overview-container.optimizer .wp-block-button.is-style-fill:not(.no-arrow) .wp-block-button__link::after {
	color: var(--color-darer-orange);
}

.account-overview-container.studio .wp-block-button.is-style-fill:not(.no-arrow) .wp-block-button__link::after {
	color: var(--color-darker-orange);
}

.account-overview div.account-overview-shortcuts {
	display: flex;
	gap: 1.5rem;
}

.account-overview-side-column {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	align-self: flex-start;
	position: sticky;
	top: 2.5rem;
}

.account-overview-useful-links {
	background: var(--color-grey);
	border-radius: 0.3rem;
	padding: 2em 2em 1em 2em;
	flex-grow: 1;
}

.account-overview-shortcut {
	display: flex;
    align-items: center;
	border-radius: 0.3rem;
	background: var(--color-grey);
	padding: 0.8em;
	font-size: var(--quiet-font-size);
	--link-color: var(--base-color);
}

.account-overview-shortcut:hover {
	background: var(--color-dark-white);
}

.account-overview-shortcut-icon {
	width: 2rem;
	height: 2rem;
	margin: 5px .5rem 5px 0;
	vertical-align: middle;
	background: var(--color-orange);
	border-radius: 0.3rem;
	color: white;
	padding: 0.5rem;
}

.account-overview-last-articles {
	background: var(--color-grey);
	border-radius: 0.3rem;
	padding: 2em 2em 1em 2em;
}

.account-useful-link {
	font-size: var(--quiet-font-size);
}

.account-useful-description {
	font-size: var(--quiet-font-size);
	margin: 0 0 1em 0;
}

.account-content.request-status {
	margin: 0 var(--account-dashes-gap);
}

.request-status section, .license-request section {
	background: var(--color-grey);
	border-radius: 0.3rem;
	padding: 1rem 2.5rem;
	margin-bottom: 1rem;
}

.request-status .request-step {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	opacity: 0.5;
	cursor: default;
}

.request-status .request-step.checked, 
.request-status .request-step.pending,
.request-status .request-step.rejected {
	opacity: 1;
}

.request-status .request-step.pending div {
	background: var(--color-orange);
}

.request-status .request-step.rejected div {
	background: var(--color-red);
}

.request-status .request-step.checked div {
	background: var(--color-green);
	border-color: var(--color-green);
}

.request-status .request-step.checked div::before {
	font-size: 14px;
	font-family: var(--icon-font-family);
	content: '\f00c';
	vertical-align: text-top;
	color: white;
}

.request-status .request-step p {
	margin: 1em 0;
}

.request-status .request-step div {
	height: 18px;
	width: 18px;
	border: 2px solid var(--color-light-blue);
	background: var(--color-light-blue);
	border-radius: 50%;
	margin: var(--text-margin) 0;
	flex: 0 0 auto;
}

.request-status .request-step input {
	background: var(--color-orange);
}

.account-content.license-request section > div {
	padding: 1rem 0;
}

.account-content.license-request section p {
	text-align: center;
	font-size: 15px;
}

.account-content.license-request section p#job-title-desc {
	margin: 0;
	margin-top: 0.3rem;
}

.account-content.license-request div.user-field label {
	width: inherit;
}

.account-content.license-request div.user-field select,
.account-content.license-request div.user-field input[type=text] {
	max-width: 50%;
}

.account-content.license-request div.user-field input[type=radio] {
	accent-color: var(--color-darker-orange);
	outline: none;
}

.account-content.license-request div.form-fields {
	display: flex;
	gap: 2.5rem;
}

.account-content.license-request form.user-form {
	display: flex;
	flex-direction: column;
}

.account-content.license-request form.user-form > div {
	text-align: end;
}

.account-content.license-request form.user-form input[type="submit"] {
	margin: 1rem auto;
	margin-right: 0;
	font-size: 15px;
}

.account-content.license-request fieldset.request-form-item {
	flex-basis: 100%;
	border-radius: 0.3rem;
	border: solid 2px var(--color-darker-orange);
	padding: 0.8rem;
}

.account-content.license-request fieldset.request-form-item#optimizer-request {
	border: solid 2px var(	--color-dark-blue);
}

.account-content.license-request fieldset.request-form-item:has(label #studio-check:checked){
	background: #E03F0C0D;
}

.account-content.license-request fieldset.request-form-item:has(label #optimizer-check:checked){
	background: #1836561A;
}

.account-content.license-request fieldset.request-form-item label {
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	margin: 1rem 0;
	margin-top: 0.5rem;
}

.account-content.license-request fieldset.request-form-item label input[type="checkbox"] {
	margin-bottom: 0.8rem;
	accent-color: var(--color-darker-orange);
}

.account-content.license-request fieldset.request-form-item label input[type="checkbox"]#optimizer-check {
	accent-color: var(	--color-dark-blue);
}

.account-content.license-request .user-form input[type='checkbox']:focus {
	border: none;
	outline: none;
}

.account-content.license-request fieldset.request-form-item label svg {
	height: 3rem;
}

.account-content.license-request fieldset.request-form-item li {
	line-height: 2.3;
	margin-left: 1.5rem;
	font-size: 13px;
}

@media (max-width: 600px) {
	.account {
		display: block;
	}

	.account-menu-container {
		padding-right: 0;
		border: none;
		position: inherit;
	}

	.account-content {
		margin-left: 0;
	}

	.account-content.dashboard {
		grid-template-columns: 100%;
	}

	.account-overview div.account-overview-shortcuts {
		flex-direction: column;
	}
}

@media (max-width: 960px) {
	.account-overview {
		display: flex;
		flex-direction: column;
	}

	.account-content.license-request div.form-fields {
		flex-wrap: wrap;
	}
}

.login-alternative-separator {
	text-align: center;
	margin: .5rem 0 1.5rem 0;
}

.login-alternative-separator::before {
	border-bottom: 2px solid var(--color-black--40);
	content: "";
	width: 100%;
	display: block;
	position: relative;
	top: .6rem;
}

.login-alternative-title {
	display: inline-block;
	text-align: center;
	background: white;
	padding: 0 1rem;
	text-transform: uppercase;
	position: relative;
	color: var(--color-black--40);
}

.button-sso {
	display: flex;
	border: 1px solid;
	border-radius: .75rem;
	margin-top: .5em;
	align-items: center;
}

.button-sso-icon {
	padding: .8rem 2rem;
}

.studio-examples {
	display: grid;
	gap: 1rem;
	grid-auto-rows: 1fr;
	grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
	--link-color: var(--text-color);
	--link-hover-color: var(--text-color);
	margin: 2rem 0;
}

.studio-example {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 1rem;
	padding: 1rem;
	border-radius: .5rem;
	background-color: rgba(50%, 50%, 50%, 0.1);
	cursor: pointer;
	transition: all 100ms ease-in-out;
}

.studio-example:hover {
	background-color: rgba(50%, 50%, 50%, 0.2);
}

.studio-example-tag {
	display: inline-block;
	padding: .2rem .4rem;
	color: white;
	background-color: var(--account-highlight-background-color);
	border-radius: .3rem;
	font-weight: bold;
	font-size: var(--quiet-font-size);
}

.studio-example-name {
	margin: 0;
	font-weight: 400;
}

.studio-example-description {
	font-size: var(--quiet-font-size);
}


.studio-generators {
	display: grid;
	gap: 1rem;
	grid-auto-rows: 1fr;
	grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
	--link-color: var(--text-color);
	--link-hover-color: var(--text-color);
	margin: 2rem 0;
}

.studio-generator {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 1rem;
	padding: 1rem;
	border-radius: .3rem;
	background-color: rgba(50%, 50%, 50%, 0.1);
	cursor: pointer;
	transition: all 100ms ease-in-out;
	text-align: center;
	border-bottom: 0.3rem solid var(--vibrant-color);
}

.studio-generator:hover {
	background-color: rgba(50%, 50%, 50%, 0.2);
}

.studio-generator-details {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-items: flex-start;
	flex: 1;
}

.studio-generator-image {
	display: flex;
	width: 6rem;
	height: 6rem;
	padding: 1.5rem;
	margin: 1rem;
	border-radius: 1.2rem;
	background-color: var(--vibrant-color);
	color: var(--color-white);
	overflow: hidden;
}

.studio-generator-name {
	margin: 0;
	font-weight: 400;
}

.studio-generator-description {
	font-size: var(--quiet-font-size);
}

.checkbox-selector {
	appearance: none;
	background-color: var(--color-black--20);
	border-radius: var(--checkbox-height);
	height: var(--checkbox-height);
	margin: 0;
	padding: 0;
	position: relative;
	vertical-align: baseline;
	top: 0.2em;
	width: var(--checkbox-width);
	--checkbox-width: 2.8em;
	--checkbox-height: 1.6em;
	--checkbox-gap: 0.2em;
	margin: 0 .5em 0 0;
	cursor: pointer;
}

.checkbox-selector,
.checkbox-selector::after {
	transition: all 100ms ease-out;
}

.checkbox-selector::after {
	background-color: var(--color-white);
	border-radius: 50%;
	content: "";
	height: calc(var(--checkbox-height) - 2*var(--checkbox-gap));
	width: calc(var(--checkbox-height) - 2*var(--checkbox-gap));
	left: var(--checkbox-gap);
	position: absolute;
	top: var(--checkbox-gap);
}

.checkbox-selector:hover {
	background-color: var(--color-black--40);
	transition-duration: 0s;
}

.checkbox-selector:checked::after {
	background-color: #fff;
	left: calc(var(--checkbox-height) - var(--checkbox-gap));
}

.checkbox-selector:checked {
	background-color: var(--vibrant-color);
}

.checkbox-selector:checked:hover {
	background-color: var(--vibrant-background-accent-color);
}

.checkbox-selector,
.checkbox-selector:checked,
.checkbox-selector:hover,
.checkbox-selector:focus {
	border: none !important;
	outline: none !important;
}

.operation-completed {
	display: flex;
	gap: 1.5em;
	flex-direction: row;
	align-items: center;
}

.operation-completed {
	display: flex;
	gap: 1.5em;
	flex-direction: row;
	align-items: center;
}
