:root {
	--parvus-transition-duration:0.3s;
	--parvus-transition-timing-function:cubic-bezier(0.62,0.16,0.13,1.01);
	--parvus-background-color:rgba(0,0,0,0.7);
	--parvus-color:#eee;
	--parvus-btn-background-color:#2d3249;
	--parvus-btn-color:#fff;
	--parvus-btn-hover-background-color:#404768;
	--parvus-btn-hover-color:#fff;
	--parvus-btn-disabled-background-color:rgba(64,71,104,.6);
	--parvus-btn-disabled-color:#fff;
	--parvus-caption-background-color:transparent;
	--parvus-caption-color:#2d3249;
	--parvus-loading-error-background-color:#fff;
	--parvus-loading-error-color:#2d3249;
	--parvus-loader-background-color:#f9f4f1;
	--parvus-loader-color:#2d3249
}
::view-transition-group(lightboximage) {
	animation-duration:var(--parvus-transition-duration);
	animation-timing-function:var(--parvus-transition-timing-function);
	z-index:7
}
::view-transition-group(toolbar) {
	z-index:8
}
body:has(.parvus[open]) {
	touch-action:none
}
.parvus-trigger:has(img) {
	display:block;
	position:relative
}
.parvus-trigger:has(img) .parvus-zoom__indicator {
	align-items:center;
	background-color:var(--parvus-btn-background-color);
	color:var(--parvus-btn-color);
	display:flex;
	inset-block-start:.5rem;
	inset-inline-end:.5rem;
	justify-content:center;
	padding:.3rem;
	position:absolute;
	border-radius: 10px;
}
.parvus-trigger:has(img) img {
	display:block
}
.parvus {
	background-color:transparent;
	block-size:100%;
	border:0;
	box-sizing:border-box;
	color:var(--parvus-color);
	contain:strict;
	inline-size:100%;
	inset:0;
	margin:0;
	max-block-size:unset;
	max-inline-size:unset;
	overflow:hidden;
	overscroll-behavior:contain;
	padding:0;
	position:fixed
}
.parvus::backdrop {
	display:none
}
.parvus *,.parvus :after,.parvus :before {
	box-sizing:border-box
}
.parvus__overlay {
	background-color:var(--parvus-background-color);
	color:var(--parvus-color);
	inset:0;
	position:absolute
}
.parvus__slider {
	inset:0;
	position:absolute;
	transform:translateZ(0)
}
@media screen and (prefers-reduced-motion:no-preference) {
	.parvus__slider--animate:not(.parvus__slider--is-dragging) {
	transition:transform var(--parvus-transition-duration) var(--parvus-transition-timing-function);
	will-change:transform
}
}
.parvus__slider--is-draggable {
	cursor:grab;
	touch-action:pan-y pinch-zoom
}
.parvus__slider--is-dragging {
	cursor:grabbing;
	touch-action:none
}
.parvus__slide {
	block-size:100%;
	contain:layout;
	display:grid;
	inline-size:100%;
	padding-block:1rem;
	padding-inline:1rem;
	place-items:center
}
.parvus__slide img {
	block-size:auto;
	display:block;
	inline-size:auto;
	margin-inline:auto;
	transform:translateZ(0)
}
.parvus__content--error {
	background-color:var(--parvus-loading-error-background-color);
	color:var(--parvus-loading-error-color);
	padding-block:.5rem;
	padding-inline:1rem
}
.parvus__caption {
	background-color:var(--parvus-caption-background-color);
	color:var(--parvus-caption-color);
	padding-block-start:.5rem;
	text-align:start
}
.parvus__loader {
	block-size:6.25rem;
	display:inline-block;
	inline-size:6.25rem;
	inset-block-start:50%;
	inset-inline-start:50%;
	position:absolute;
	transform:translate(-50%,-50%)
}
.parvus__loader:before {
	animation:spin 1s linear infinite;
	border:.25rem solid var(--parvus-loader-background-color);
	border-block-start-color:var(--parvus-loader-color);
	border-radius:100%;
	content:"";
	inset:0;
	position:absolute;
	z-index:1
}
.parvus__toolbar {
	view-transition-name:toolbar;
	align-items:center;
	display:flex;
	inset-block-start:1rem;
	inset-inline:1rem;
	justify-content:space-between;
	pointer-events:none;
	position:absolute;
	z-index:8
}
.parvus__toolbar>* {
	pointer-events:auto
}
.parvus__controls {
	display:flex;
	gap:.5rem
}
.parvus__btn {
	appearance:none;
	background-color:var(--parvus-btn-background-color);
	background-image:none;
	border:.0625rem solid transparent;
	border-radius:0;
	color:var(--parvus-btn-color);
	cursor:pointer;
	display:flex;
	font:inherit;
	padding:.3125rem;
	position:relative;
	touch-action:manipulation;
	will-change:transform,opacity;
	z-index:7
}
.parvus__btn:focus-visible,.parvus__btn:hover {
	background-color:var(--parvus-btn-hover-background-color);
	color:var(--parvus-btn-hover-color)
}
.parvus__btn--previous {
	inset-inline-start:0
}
.parvus__btn--next,.parvus__btn--previous {
	inset-block-start:calc(50svh - 1rem);
	position:absolute;
	transform:translateY(-50%)
}
.parvus__btn--next {
	inset-inline-end:0
}
.parvus__btn svg {
	pointer-events:none
}
.parvus__btn[aria-hidden=true] {
	display:none
}
.parvus__btn[aria-disabled=true] {
	background-color:var(--parvus-btn-disabled-background-color);
	color:var(--parvus-btn-disabled-color)
}
.parvus__counter {
	position:relative;
	z-index:7
}
.parvus__counter[aria-hidden=true] {
	display:none
}
@media screen and (prefers-reduced-motion:no-preference) {
	.parvus__btn--close,.parvus__btn--next,.parvus__btn--previous,.parvus__caption,.parvus__counter,.parvus__overlay {
	transition:transform var(--parvus-transition-duration) var(--parvus-transition-timing-function),opacity var(--parvus-transition-duration) var(--parvus-transition-timing-function);
	will-change:transform,opacity
}
.parvus--is-closing .parvus__btn--close,.parvus--is-closing .parvus__btn--next,.parvus--is-closing .parvus__btn--previous,.parvus--is-closing .parvus__caption,.parvus--is-closing .parvus__counter,.parvus--is-closing .parvus__overlay,.parvus--is-opening .parvus__btn--close,.parvus--is-opening .parvus__btn--next,.parvus--is-opening .parvus__btn--previous,.parvus--is-opening .parvus__caption,.parvus--is-opening .parvus__counter,.parvus--is-opening .parvus__overlay {
	opacity:0
}
.parvus--is-vertical-closing .parvus__btn--close,.parvus--is-vertical-closing .parvus__counter,.parvus--is-zooming .parvus__btn--close,.parvus--is-zooming .parvus__counter {
	opacity:0;
	transform:translateY(-100%)
}
.parvus--is-vertical-closing .parvus__btn--previous,.parvus--is-zooming .parvus__btn--previous {
	opacity:0;
	transform:translate(-100%,-50%)
}
.parvus--is-vertical-closing .parvus__btn--next,.parvus--is-zooming .parvus__btn--next {
	opacity:0;
	transform:translate(100%,-50%)
}
.parvus--is-vertical-closing .parvus__caption,.parvus--is-zooming .parvus__caption {
	opacity:0;
	transform:translateY(100%)
}
}
@keyframes spin {
	0% {
	transform:rotate(0deg)
}
to {
	transform:rotate(1turn)
}
}