.odfpdf-viewer, .odfpdf-viewer * { box-sizing: border-box; }
.odfpdf-viewer {
	width: 100%;
	border: 1px solid #ddd;
	border-radius: 4px;
	overflow: hidden;
	font-family: inherit;
	background: #fff;
}

.odfpdf-toolbar {
	display: flex;
	align-items: center;
	gap: .4rem;
	flex-wrap: wrap;
	padding: .5rem .6rem;
	background: #f5f5f5;
	border-bottom: 1px solid #ddd;
}

.odfpdf-spacer { flex: 1 1 auto; min-width: .5rem; }

.odfpdf-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	min-height: 2.25rem;
	padding: 0 .6rem;
	background: #fff;
	color: #333;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
}
.odfpdf-btn:hover { background: #f0f0f0; }
.odfpdf-btn:disabled { opacity: .4; cursor: not-allowed; }

/* Open/Download get the ODF brand color to stand out as the
   "always works no matter what" actions. */
.odfpdf-open, .odfpdf-download {
	background: #a11;
	color: #fff;
	border-color: #a11;
	font-size: .85rem;
	white-space: nowrap;
}
.odfpdf-open:hover, .odfpdf-download:hover { background: #810; border-color: #810; color: #fff; }

.odfpdf-page-info {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	font-size: .9rem;
	color: #444;
	white-space: nowrap;
}
.odfpdf-page-input {
	width: 3.25rem;
	min-height: 2.25rem;
	padding: 0 .35rem;
	border: 1px solid #ccc;
	border-radius: 4px;
	text-align: center;
	font-size: .9rem;
}

.odfpdf-zoom-level {
	min-width: 3.25rem;
	text-align: center;
	font-size: .85rem;
	color: #444;
}

.odfpdf-canvas-wrap {
	height: var( --odfpdf-height, 800px );
	overflow: auto;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 1rem;
	background: #6e6e6e;
}

.odfpdf-status {
	margin: auto;
	color: #eee;
	font-size: .95rem;
	text-align: center;
	padding: 1rem;
}
.odfpdf-status.odfpdf-status-error {
	color: #fff;
	background: rgba( 0, 0, 0, .25 );
	border-radius: 4px;
	max-width: 26rem;
}
.odfpdf-status.odfpdf-status-error a {
	color: #fff;
	text-decoration: underline;
	font-weight: 700;
}

.odfpdf-canvas {
	background: #fff;
	box-shadow: 0 1px 6px rgba( 0, 0, 0, .35 );
	max-width: 100%;
	height: auto;
}

/* Small screens: let the toolbar's page-number/zoom groups wrap onto a
   second row instead of squeezing everything into one cramped line —
   the Open/Download buttons stay full-width and prominent, since on a
   phone tapping "Open" to view in a dedicated PDF app is often the
   better experience than a small in-page canvas anyway. */
@media ( max-width: 480px ) {
	.odfpdf-toolbar { justify-content: center; }
	.odfpdf-spacer { flex-basis: 100%; height: 0; }
	.odfpdf-open, .odfpdf-download { flex: 1 1 auto; justify-content: center; }
}

.screen-reader-text {
	position: absolute !important;
	left: -9999px !important;
	width: 1px; height: 1px;
	overflow: hidden;
}
