.pt-share-toggle {
	bottom: 138px;
}

.pt-share-toggle svg {
	display: block;
	width: 16px;
	height: 16px;
}

.pt-share-modal[hidden] {
	display: none;
}

.pt-share-modal {
	position: fixed;
	inset: 0;
	z-index: 9200;
	display: grid;
	padding: var(--pt-gutter);
	place-items: center;
}

.pt-share-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 5, 5, .72);
	backdrop-filter: blur(3px);
}

.pt-share-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(100%, 32rem);
	padding: clamp(1.25rem, 4vw, 2rem);
	border: 2px solid var(--pt-brutal-ink);
	border-radius: var(--pt-radius-lg);
	background: var(--pt-surface-elevated);
	box-shadow: var(--pt-brutal-shadow-lg);
	color: var(--pt-text);
}

.pt-share-modal__dialog h2 {
	margin: 0;
	padding-right: 2.5rem;
	font-size: var(--pt-text-xl);
}

.pt-share-modal__description {
	margin: .65rem 0 1.25rem;
	color: var(--pt-text-muted);
}

.pt-share-modal__close {
	position: absolute;
	top: 1rem;
	right: 1rem;
	display: grid;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	place-items: center;
	border: 2px solid var(--pt-brutal-ink);
	border-radius: var(--pt-radius-sm);
	background: var(--pt-surface);
	box-shadow: 2px 2px 0 var(--pt-brutal-ink);
	color: var(--pt-text);
	cursor: pointer;
	transition: box-shadow var(--pt-transition-fast), transform var(--pt-transition-fast);
}

.pt-share-modal__close:hover {
	box-shadow: 1px 1px 0 var(--pt-brutal-ink);
	transform: translate(1px, 1px);
}

.pt-share-modal__close:active {
	box-shadow: none;
	transform: translate(2px, 2px);
}

.pt-share-modal__options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .75rem;
}

.pt-share-modal__option {
	display: flex;
	min-height: 3rem;
	align-items: center;
	justify-content: center;
	padding: .65rem .8rem;
	border: 2px solid var(--pt-brutal-ink);
	border-radius: var(--pt-radius-sm);
	background: var(--pt-surface);
	box-shadow: 3px 3px 0 var(--pt-brutal-ink);
	color: var(--pt-text);
	font: inherit;
	font-weight: 650;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: box-shadow var(--pt-transition-fast), transform var(--pt-transition-fast);
}

.pt-share-modal__option img {
	display: block;
	width: 1.65rem;
	height: 1.65rem;
	object-fit: contain;
}

.pt-share-modal__option .pt-share-modal__icon--light { filter: invert(1); }

.pt-share-modal__copy { gap: .35rem; padding-inline: .5rem; font-size: var(--pt-text-sm); }
.pt-share-modal__copy img { width: 1.25rem; height: 1.25rem; }

html[data-pt-theme="dark"] .pt-share-modal__option img:not(.pt-share-modal__icon--light) { filter: invert(1); }
html[data-pt-theme="dark"] .pt-share-modal__option .pt-share-modal__icon--light { filter: none; }

.pt-share-modal__option:hover {
	background: var(--pt-surface);
	box-shadow: 1px 1px 0 var(--pt-brutal-ink);
	color: var(--pt-text);
	transform: translate(2px, 2px);
}

.pt-share-modal__option:active {
	box-shadow: none;
	transform: translate(3px, 3px);
}

.pt-share-modal__status {
	min-height: 1.25rem;
	margin: .8rem 0 0;
	color: var(--pt-text-muted);
	font-size: var(--pt-text-sm);
	text-align: center;
}

.pt-share-modal-open {
	overflow: hidden;
}

@media (max-width: 1024px) {
	.pt-share-toggle {
		bottom: 134px;
	}
}

@media (max-width: 480px) {
	.pt-share-modal__options {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
