.sjl-lesson-access-pill,
.sjl-lesson-access-page {
	--sjl-lac-ink: #1e293b;
	--sjl-lac-muted: #64748b;
	--sjl-lac-line: #dbe4ee;
	--sjl-lac-bg: #f8fafc;
	--sjl-lac-accent: #0f766e;
}

.sjl-lesson-access-pill {
	margin: 0.85rem 0 0;
	padding: 0.85rem 0.95rem;
	border: 1px solid var(--sjl-lac-line);
	border-radius: 12px;
	background: var(--sjl-lac-bg);
	color: var(--sjl-lac-ink);
}

.sjl-lesson-access-pill__title {
	margin: 0 0 0.35rem;
	font-size: 0.95rem;
}

.sjl-lesson-access-pill__name,
.sjl-lesson-access-pill__hint,
.sjl-lesson-access-pill__status,
.sjl-lesson-access-pill__error {
	margin: 0 0 0.55rem;
	font-size: 0.85rem;
	color: var(--sjl-lac-muted);
	line-height: 1.4;
}

.sjl-lesson-access-pill__error {
	color: #b42318;
}

.sjl-lesson-access-pill__code,
.sjl-lesson-access-pill__link {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin: 0 0 0.65rem;
}

.sjl-lesson-access-pill__url {
	flex: 1;
	min-width: 0;
	padding: 0.45rem 0.55rem;
	border: 1px solid var(--sjl-lac-line);
	border-radius: 8px;
	font-size: 0.8rem;
}

.sjl-lesson-access-pill__code[hidden],
.sjl-lesson-access-pill__link[hidden] {
	display: none;
}

.sjl-lesson-access-pill__digits {
	font-size: 1.7rem;
	letter-spacing: 0.18em;
	font-weight: 700;
	color: var(--sjl-lac-ink);
}

.sjl-lesson-access-pill__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.sjl-lesson-access-page {
	max-width: 22rem;
	margin: 2rem auto;
	padding: 1.4rem 1.3rem 1.6rem;
	border: 1px solid var(--sjl-lac-line);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 30px rgb(15 23 42 / 6%);
}

.sjl-lesson-access-page__title {
	margin: 0 0 0.4rem;
	font-size: 1.6rem;
}

.sjl-lesson-access-page__lead,
.sjl-lesson-access-page__status,
.sjl-lesson-access-page__normal,
.sjl-lesson-access-page__already {
	color: var(--sjl-lac-muted);
	line-height: 1.45;
}

.sjl-lesson-access-page__form {
	display: grid;
	gap: 0.65rem;
	margin: 1.1rem 0 1rem;
}

.sjl-lesson-access-page__label {
	font-weight: 600;
}

.sjl-lesson-access-page__input {
	width: 100%;
	padding: 0.7rem 0.8rem;
	border: 1px solid var(--sjl-lac-line);
	border-radius: 10px;
	font-size: 1.6rem;
	letter-spacing: 0.28em;
	text-align: center;
}

.sjl-lesson-access-page__status.is-error {
	color: #b42318;
}

.sjl-lesson-access-page__submit,
.sjl-lesson-access-page__link-submit,
.sjl-lesson-access-pill__make,
.sjl-lesson-access-pill__copy {
	background: var(--sjl-lac-accent);
	color: #fff;
	border: 0;
	border-radius: 10px;
	padding: 0.65rem 0.95rem;
	cursor: pointer;
}

.sjl-lesson-access-pill__revoke,
.sjl-lesson-access-pill__copy,
.sjl-lesson-access-pill__make-link,
.sjl-lesson-access-pill__copy-link {
	background: #fff;
	color: var(--sjl-lac-ink);
	border: 1px solid var(--sjl-lac-line);
}

.sjl-lesson-access-page__submit:disabled,
.sjl-lesson-access-page__link-submit:disabled,
.sjl-lesson-access-pill__make:disabled,
.sjl-lesson-access-pill__make-link:disabled,
.sjl-lesson-access-pill__revoke:disabled {
	opacity: 0.6;
	cursor: wait;
}

.sjl-gadget-row--panel .sjl-lesson-access-pill {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.sjl-gadget-row--panel .sjl-lesson-access-pill__title {
	display: none;
}

.sjl-gadget-row--panel .sjl-lesson-access-pill__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	width: 100%;
}

@media (max-width: 640px) {
	.sjl-gadget-row--panel .sjl-lesson-access-pill__actions {
		flex-direction: column;
	}
}

