.osim-protected-content-auth,
.osim-your-account {
	width: 100%;
}

body:has(.osim-protected-content-auth) h1,
body:has(.osim-your-account) h1 {
	font-size: var(--wp--preset--font-size--large);
}

.osim-protected-content-panel h2 {
	font-size: var(--wp--preset--font-size--custom-1);
}

.osim-protected-content-auth__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
	column-gap: var(--wp--preset--spacing--medium);
	row-gap: var(--wp--preset--spacing--medium);
}

.osim-your-account__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: var(--wp--preset--spacing--medium);
	row-gap: var(--wp--preset--spacing--medium);
}

@media (max-width: 700px) {
	.osim-your-account__grid {
		grid-template-columns: 1fr;
	}
}

.osim-protected-content-panel {
	padding: var(--wp--preset--spacing--medium);
	border: 1px solid var(--wp--preset--color--border-light);
	border-radius: var(--wp--preset--border-radius--md);
	background: var(--wp--preset--color--base);
}

.osim-protected-content-panel > :first-child {
	margin-top: 0;
}

.osim-protected-content-panel > :last-child {
	margin-bottom: 0;
}

.osim-protected-content-form p {
	margin-top: 0;
}

.osim-protected-content-form label {
	display: block;
	margin-bottom: 0.35em;
	font-weight: 600;
}

.osim-protected-content-form input[type="text"],
.osim-protected-content-form input[type="email"],
.osim-protected-content-form input[type="password"] {
	box-sizing: border-box;
	width: 100%;
	padding: 0.72em 0.8em;
	border: 1px solid var(--wp--preset--color--border-light);
	border-radius: var(--wp--preset--border-radius--xs);
	font: inherit;
}

.osim-protected-content-form__remember label {
	display: inline-flex;
	gap: 0.45em;
	align-items: center;
	font-weight: 400;
}

.osim-protected-content-form__links {
	font-size: var(--wp--preset--font-size--small);
}

.osim-protected-content-hp {
	position: absolute;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.osim-protected-content-message {
	padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
	border-radius: var(--wp--preset--border-radius--md);
}

.osim-your-account .osim-protected-content-message {
	margin-bottom: var(--wp--preset--spacing--medium);
}

.osim-protected-content-message.is-success {
	background: var(--wp--preset--color--tertiary);
}

.osim-protected-content-message.is-error {
	background: var(--wp--preset--color--primary-accent);
}

.osim-protected-content-items__list {
	padding-left: 1.2em;
}

.osim-protected-content-items__list li + li {
	margin-top: 0.5em;
}

.osim-your-account__password {
	margin-bottom: 0;
	font-size: var(--wp--preset--font-size--small);
}

.osim-your-account__logout {
	margin-top: var(--wp--preset--spacing--medium);
}

[data-osim-protected-content-popup] .osim-protected-content-form {
	text-align: left;
}

[data-osim-protected-content-popup] .osim-protected-content-form__links {
	text-align: center;
}

.osim-protected-content-popup:not([open]) {
	display: none;
}

.osim-protected-content-popup {
	width: min(40rem, calc(100vw - 2rem));
	max-height: calc(100vh - 2rem);
	padding: 0;
	border: 0;
	margin-block: 3rem;
	background: transparent;
	color: inherit;
	overflow: visible;
}

.osim-protected-content-popup::backdrop {
	background: rgb(0 0 0 / 55%);
}

.osim-protected-content-popup.is-fallback-open {
	position: fixed;
	inset: 50% auto auto 50%;
	z-index: 9999;
	display: block;
	transform: translate(-50%, -50%);
}

.osim-protected-content-popup__inner {
	position: relative;
	max-height: inherit;
	overflow: auto;
	border-radius: 8px;
	background: var(--wp--preset--color--base);
	box-shadow: 0 24px 80px rgb(0 0 0 / 24%);
}

.osim-protected-content-popup__close {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgb(255 255 255 / 88%);
	color: inherit;
	font: inherit;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}

.osim-protected-content-popup__content {
	padding: var(--wp--preset--spacing--medium);
}

.osim-protected-content-popup__forms {
	display: grid;
	row-gap: var(--wp--preset--spacing--medium);
}

.osim-protected-content-popup__section + .osim-protected-content-popup__section {
	padding-top: var(--wp--preset--spacing--medium);
	border-top: 1px solid var(--wp--preset--color--border-light);
}

.osim-protected-content-popup__section-title {
	margin-top: 0;
	font-weight: 700;
}
