.prime-pdf{
	--prime-pdf-ar: 1 / 1.414;
	--prime-pdf-maxw: 1100px;
	position: relative;
	width: 100%;
	border-radius: 14px;
	overflow: hidden;
	background: rgba(0,0,0,.04);
	border: 1px solid rgba(0,0,0,.08);
}

.prime-pdf__toolbar{
	display:flex;
	justify-content: space-between;
	align-items:center;
	gap:.5rem;
	padding:.5rem .75rem;
	background: rgba(0,0,0,.04);
}

.prime-pdf__progress{
	font-size: 14px;
	opacity: .85;
	padding: .25rem .5rem;
	border-radius: 10px;
	background: rgba(255,255,255,.7);
	border: 1px solid rgba(0,0,0,.10);
	white-space: nowrap;
}

.prime-pdf__btn{
	appearance:none;
	border:1px solid rgba(0,0,0,.15);
	background:#fff;
	padding:.35rem .55rem;
	border-radius: 10px;
	font-size: 14px;
	cursor: pointer;
	line-height: 1;
	white-space: nowrap;
	transition: transform .14s ease, box-shadow .14s ease, background .14s ease, border-color .14s ease, opacity .14s ease;
}
.prime-pdf__btn:hover{
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(0,0,0,.12);
	border-color: rgba(0,0,0,.22);
}
.prime-pdf__btn:active{
	transform: translateY(0);
	box-shadow: 0 6px 14px rgba(0,0,0,.10);
	opacity: .95;
}
.prime-pdf__btn:focus-visible{
	outline: 2px solid rgba(0,0,0,.35);
	outline-offset: 2px;
}

.prime-pdf__viewport{
	aspect-ratio: var(--prime-pdf-ar);
	width: 100%;
	overflow: auto;
	background: rgba(0,0,0,.06);
}

.prime-pdf__pages{
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	align-items: center;
}

.prime-pdf__page{
	width: 100%;
	display:flex;
	justify-content:center;
	background: transparent;
}
.prime-pdf__page canvas{
	width: 100%;
	height: auto;
	display:block;
	background:#fff;
	border-radius: 10px;
	box-shadow: 0 8px 22px rgba(0,0,0,.18);
}

.prime-pdf__loading{
	padding: 18px;
	font-size: 14px;
	opacity: .75;
}

.prime-pdf-modal{
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	inset: 0 !important;
	margin: 0 !important;
	z-index: 2147483647 !important;
	display: none;
	background: var(--prime-pdf-overlay, rgba(0,0,0,.85));
}
.prime-pdf-modal.is-open{ display:block; }

.prime-pdf-modal__topbar{
	position: absolute;
	top: 14px;
	right: 14px;
	left: 14px;
	display:flex;
	justify-content: space-between;
	align-items: center;
	pointer-events: none;
	z-index: 30;
}

.prime-pdf-modal__progress{
	pointer-events: none;
	font-size: 14px;
	color: #fff;
	opacity: .9;
	padding: .35rem .6rem;
	border-radius: 12px;
	border: 1px solid rgba(255,255,255,.22);
	background: rgba(255,255,255,.10);
	backdrop-filter: blur(6px);
	white-space: nowrap;
}

.prime-pdf-modal__close{
	pointer-events: auto;
	border-radius: 12px;
	border: 1px solid rgba(255,255,255,.22);
	background: rgba(255,255,255,.10);
	color: #fff;
	cursor: pointer;
	font-size: 14px;
	line-height: 1;
	padding: .6rem .75rem;
	backdrop-filter: blur(6px);
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	transition: transform .14s ease, box-shadow .14s ease, background .14s ease, border-color .14s ease, opacity .14s ease;
}
.prime-pdf-modal__close::before{
	content: "×";
	font-size: 18px;
	line-height: 1;
	display: inline-block;
	transform: translateY(-1px);
}
.prime-pdf-modal__close:hover{
	transform: translateY(-1px);
	box-shadow: 0 14px 30px rgba(0,0,0,.25);
	border-color: rgba(255,255,255,.40);
	background: rgba(255,255,255,.16);
}
.prime-pdf-modal__close:active{
	transform: translateY(0);
	opacity: .95;
}
.prime-pdf-modal__close:focus-visible{
	outline: 2px solid rgba(255,255,255,.55);
	outline-offset: 2px;
}

.prime-pdf-modal__content{
	position: absolute;
	inset: 0;
	padding: 72px 16px 18px;
	overflow: hidden;
	z-index: 10;
}

.prime-pdf-modal__frame{
	height: 100%;
	max-width: var(--prime-pdf-maxw);
	margin: 0 auto;
	border-radius: 16px;
	overflow: hidden;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.14);
}

.prime-pdf-modal__viewport{
	height: 100%;
	overflow: auto;
	background: rgba(0,0,0,.18);
}

.prime-pdf-modal__pages{
	padding: 18px;
	display:flex;
	flex-direction: column;
	gap: 18px;
	align-items: center;
}

.prime-pdf [aria-busy="true"] .prime-pdf__viewport,
.prime-pdf-modal [aria-busy="true"] .prime-pdf-modal__viewport{ opacity: .85; }
