/* ==========================================================
   ePaper front-end layout
   dark top bar, page list on the left, page in the middle,
   opened news on the right
   ========================================================== */

:root {
	--ep-dark: #505050;
	--ep-darker: #323131;
	--ep-menu: #645f64;
	--ep-border: #ccd7d7;
	--ep-bg: #f4f4f4;
	--ep-tool: #d9d9d9;
	--ep-text: #222;
	--ep-muted: #d1cfd1;
	--ep-red: #ed1c24;
	--ep-nav-h: 60px;
}

* {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	padding: 0;
}

body {
	background-color: var(--ep-bg);
	color: var(--ep-text);
	font-family: 'SolaimanLipi', 'Calibri', 'Siyamrupali', Arial, sans-serif;
	font-size: 18px;
	line-height: 1.3;
}

a {
	color: inherit;
}

img {
	max-width: 100%;
}

/* ---------- top navigation ---------- */
.ep-nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	height: var(--ep-nav-h);
	display: flex;
	align-items: center;
	background-color: var(--ep-dark);
	border-bottom: 1px solid #fff;
	padding: 0 12px 0 0;
}

.ep-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 11%;
	min-width: 150px;
	padding: 6px 10px;
	background-color: #fff;
	flex-shrink: 0;
}

.ep-brand img {
	max-height: 46px;
	max-width: 100%;
	display: block;
}

.ep-menu {
	list-style: none;
	margin: 0;
	padding: 0 0 0 10px;
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
}

.ep-menu-right {
	margin-left: auto;
}

.ep-menu > li {
	position: relative;
	margin: 0 4px;
}

.ep-menu-btn {
	display: inline-block;
	color: #fff;
	background-color: var(--ep-menu);
	padding: 4px 10px;
	font-size: 17px;
	line-height: 22px;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	border: none;
	font-family: inherit;
}

.ep-menu-btn:hover {
	background-color: #746e74;
	color: #fff;
}

.ep-menu-btn.ep-plain {
	background-color: transparent;
}

.ep-menu-btn.ep-plain:hover {
	background-color: var(--ep-menu);
}

.ep-menu-btn.ep-accent {
	background-color: var(--ep-red);
	border-radius: 4px;
}

.ep-caret:after {
	content: '';
	display: inline-block;
	margin-left: 6px;
	vertical-align: 3px;
	border-top: 5px solid currentColor;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
}

.ep-dropdown-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 180px;
	max-height: 70vh;
	overflow-y: auto;
	margin-top: 6px;
	background-color: var(--ep-dark);
	box-shadow: 0 6px 16px rgba(0, 0, 0, .25);
	z-index: 1001;
}

.ep-menu-right .ep-dropdown-menu {
	left: auto;
	right: 0;
}

.ep-dropdown.open .ep-dropdown-menu {
	display: block;
}

.ep-dropdown-menu a {
	display: block;
	padding: 7px 14px;
	color: #fff;
	font-size: 17px;
	line-height: 21px;
	text-decoration: none;
	white-space: nowrap;
}

.ep-dropdown-menu a:hover,
.ep-dropdown-menu a.active {
	background-color: var(--ep-menu);
}

.ep-dropdown-menu .fa {
	width: 18px;
	font-size: 14px;
}

.ep-date {
	color: var(--ep-muted);
	font-size: 17px;
	white-space: nowrap;
	padding: 0 8px 0 14px;
}

.ep-archive {
	display: flex;
	align-items: center;
	border: 1px solid #817c7c;
	padding: 3px 8px;
	cursor: pointer;
}

.ep-archive input {
	width: 110px;
	background: transparent;
	border: none;
	outline: none;
	color: #fff;
	font-family: inherit;
	font-size: 15px;
	cursor: pointer;
}

.ep-archive input::placeholder {
	color: var(--ep-muted);
}

.ep-archive .fa {
	color: var(--ep-muted);
	font-size: 15px;
}

.ep-nav-toggle {
	display: none;
	margin-left: auto;
	background: transparent;
	border: 1px solid #817c7c;
	color: #fff;
	font-size: 20px;
	padding: 4px 10px;
	cursor: pointer;
}

/* ---------- latest news ticker ---------- */
.ep-ticker {
	position: relative;
	display: flex;
	align-items: center;
	margin-top: var(--ep-nav-h);
	min-height: 40px;
	background-color: #fff;
	border-top: 1px solid var(--ep-border);
	border-bottom: 1px solid var(--ep-border);
	overflow: hidden;
}

.ep-ticker-label {
	align-self: stretch;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 11%;
	min-width: 150px;
	flex-shrink: 0;
	background-color: var(--ep-dark);
	color: #fff;
	font-size: 20px;
}

.ep-ticker marquee {
	flex: 1;
	color: #5a5454;
	font-size: 19px;
	padding-top: 2px;
}

.ep-ticker marquee p {
	display: inline;
	margin: 0;
}

.ep-body {
	padding-top: var(--ep-nav-h);
}

.ep-ticker + .ep-body {
	padding-top: 0;
}

/* ---------- ads ---------- */
.ep-ad {
	text-align: center;
	padding: 10px;
	background-color: #fff;
	border-bottom: 1px solid var(--ep-border);
}

.ep-ad img {
	display: inline-block;
	height: auto;
}

.ep-ad-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	padding: 10px;
}

/* ---------- page viewer ---------- */
.ep-viewer {
	display: flex;
	align-items: stretch;
	background-color: #fff;
	border-bottom: 1px solid var(--ep-border);
}

.ep-left {
	position: relative;
	width: 11%;
	min-width: 150px;
	flex-shrink: 0;
	background-color: var(--ep-dark);
}

.ep-middle {
	width: 39%;
	flex-shrink: 0;
	border-left: 1px solid var(--ep-border);
	border-right: 1px solid var(--ep-border);
}

.ep-right {
	position: relative;
	flex: 1;
	min-width: 0;
}

/* the side panels follow the page height and scroll inside */
.ep-fill {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
}

.ep-panel-title {
	margin: 0 0 10px;
	padding: 5px 10px;
	background-color: var(--ep-darker);
	color: #fff;
	font-size: 20px;
	line-height: 26px;
	text-align: center;
}

.ep-thumbs {
	flex: 1;
	overflow-y: auto;
	padding: 0 10%;
}

.ep-thumbs::-webkit-scrollbar,
.ep-article::-webkit-scrollbar {
	width: 6px;
}

.ep-thumbs::-webkit-scrollbar-thumb,
.ep-article::-webkit-scrollbar-thumb {
	background: #8d878d;
}

.ep-thumb {
	display: block;
	margin-bottom: 10px;
	text-decoration: none;
	border: 2px solid transparent;
}

.ep-thumb img {
	display: block;
	width: 100%;
}

.ep-thumb span {
	display: block;
	padding: 2px;
	background-color: var(--ep-darker);
	color: #fff;
	font-size: 16px;
	line-height: 23px;
	text-align: center;
}

.ep-thumb.active {
	border-color: var(--ep-red);
}

.ep-thumb.active span {
	background-color: var(--ep-red);
}

.ep-page {
	position: relative;
}

.ep-page-frame {
	position: relative;
	line-height: 0;
}

.ep-page-img {
	display: block;
	width: 100%;
	height: auto;
}

.ep-area {
	position: absolute;
	display: block;
	cursor: pointer;
	transition: background-color .15s;
}

.ep-area:hover {
	background-color: rgba(0, 0, 0, .08);
}

.ep-area.active {
	background-color: rgba(0, 0, 0, .1);
	outline: 1px solid rgba(0, 0, 0, .25);
}

.ep-page-nav {
	position: absolute;
	top: 30%;
	z-index: 9;
	transform: translateY(-70%);
	background-color: var(--ep-dark);
	color: #fff;
	font-size: 22px;
	line-height: 22px;
	text-decoration: none;
	padding: 10px 6px 10px 10px;
}

.ep-page-nav:hover {
	background-color: var(--ep-darker);
	color: #fff;
}

.ep-page-prev {
	left: 0;
	padding: 10px 10px 10px 6px;
}

.ep-page-next {
	right: 0;
}

.ep-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px;
	padding: 8px 10px;
	background-color: var(--ep-tool);
	flex-shrink: 0;
}

.ep-tools {
	display: flex;
	gap: 4px;
}

.ep-tool {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background-color: var(--ep-dark);
	color: #fff;
	padding: 6px 10px 5px;
	font-family: Arial, sans-serif;
	font-size: 13px;
	line-height: 16px;
	border-radius: 3px;
	text-decoration: none;
	cursor: pointer;
	border: none;
}

.ep-tool:hover {
	background-color: var(--ep-darker);
	color: #fff;
}

.ep-share {
	display: flex;
	align-items: center;
	gap: 4px;
}

.ep-share-label {
	font-family: Arial, sans-serif;
	font-weight: bold;
	font-size: 15px;
	color: #3f2a3f;
	margin-right: 2px;
}

.ep-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	color: #fff;
	font-size: 14px;
	text-decoration: none;
	cursor: pointer;
	border: none;
}

.ep-share-btn:hover {
	opacity: .8;
	color: #fff;
}

.ep-fb { background-color: #3b5998; }
.ep-tw { background-color: #1da1f2; }
.ep-wa { background-color: #52cc60; }

.ep-article {
	flex: 1;
	overflow-y: auto;
	padding: 15px;
	text-align: center;
	background-color: #fff;
}

.ep-article.loading {
	background: #fff url('../img/loading.gif') no-repeat center 100px;
}

.ep-article img {
	display: block;
	margin: 0 auto 10px;
	max-width: 100%;
	height: auto;
}

.ep-article-empty {
	margin-top: 120px;
	color: #888;
	font-size: 20px;
}

/* ---------- mobile page list ---------- */
.ep-mobile-pages {
	display: none;
	background-color: var(--ep-dark);
}

.ep-mobile-pages .ep-panel-title {
	margin: 0;
}

.ep-mobile-pages .ep-panel-title a {
	color: #fff;
	text-decoration: none;
}

.ep-mobile-strip {
	overflow-x: auto;
	white-space: nowrap;
	padding: 15px 10px;
}

.ep-mobile-strip .ep-thumb {
	display: inline-block;
	width: 100px;
	margin: 0 2px;
	white-space: normal;
	vertical-align: top;
}

/* ---------- full view modal ---------- */
.ep-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2000;
	background-color: rgba(30, 30, 30, .92);
}

.ep-modal.open {
	display: flex;
	flex-direction: column;
}

.ep-modal-bar {
	display: flex;
	justify-content: flex-end;
	gap: 6px;
	padding: 10px;
	background-color: var(--ep-tool);
}

.ep-modal-body {
	flex: 1;
	overflow: auto;
	padding: 20px;
	text-align: center;
}

.ep-modal-body img {
	display: block;
	margin: 0 auto 10px;
	max-width: none;
	background-color: #fff;
}

.ep-close {
	background-color: #ff0000;
}

/* ---------- all pages ---------- */
.ep-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px 15px;
}

.ep-section-title {
	margin: 0 0 15px;
	padding: 8px 12px;
	background-color: var(--ep-dark);
	color: #fff;
	font-size: 22px;
	font-weight: normal;
}

.ep-all-pages {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 16px;
	padding: 15px;
	background-color: #fff;
	border: 1px solid var(--ep-border);
}

.ep-all-pages .ep-thumb {
	border: 1px solid var(--ep-border);
}

.ep-all-pages .ep-thumb small {
	display: block;
	padding: 4px;
	color: #444;
	font-size: 15px;
	text-align: center;
}

.ep-notice {
	padding: 40px 15px;
	text-align: center;
	background-color: #fff;
}

/* ---------- footer ---------- */
.ep-footer {
	background-color: var(--ep-dark);
	color: #e6e3e6;
	padding: 30px 0;
}

.ep-footer-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
	display: flex;
	gap: 30px;
	align-items: flex-start;
}

.ep-footer-logo {
	flex-shrink: 0;
	background-color: #fff;
	padding: 8px 12px;
}

.ep-footer-logo img {
	display: block;
	width: 200px;
}

.ep-footer-text {
	white-space: pre-line;
	font-size: 16px;
	line-height: 1.6;
}

.ep-copyright {
	max-width: 1200px;
	margin: 20px auto 0;
	padding: 12px 15px 0;
	border-top: 1px solid #6e6a6e;
	font-size: 15px;
	white-space: pre-line;
}

/* ---------- jquery ui datepicker ---------- */
.ui-datepicker {
	z-index: 3000 !important;
	font-family: Arial, sans-serif;
	font-size: 14px;
}

/* ---------- tablet ---------- */
@media (max-width: 1100px) {
	.ep-menu-btn { font-size: 15px; padding: 4px 7px; }
	.ep-date { display: none; }
	.ep-middle { width: 45%; }
}

/* ---------- mobile ---------- */
@media (max-width: 767px) {
	.ep-nav {
		height: auto;
		min-height: var(--ep-nav-h);
		flex-wrap: wrap;
		padding: 0;
	}

	.ep-brand {
		height: var(--ep-nav-h);
		width: auto;
		min-width: 0;
	}

	.ep-nav-toggle {
		display: block;
		margin-right: 10px;
	}

	.ep-menu {
		display: none;
		width: 100%;
		flex-direction: column;
		align-items: stretch;
		padding: 6px 10px 10px;
	}

	.ep-nav.open .ep-menu {
		display: flex;
	}

	.ep-menu > li {
		margin: 3px 0;
	}

	.ep-menu-btn {
		display: block;
	}

	.ep-date {
		display: block;
		padding: 4px 0;
	}

	.ep-dropdown-menu {
		position: static;
		margin-top: 0;
		box-shadow: none;
		background-color: #5d595d;
	}

	.ep-ticker-label {
		width: auto;
		min-width: 0;
		padding: 0 10px;
	}

	.ep-left,
	.ep-right {
		display: none;
	}

	.ep-middle {
		width: 100%;
		border: none;
	}

	.ep-page-nav {
		top: 40%;
		padding: 7px 6px 7px 10px;
	}

	.ep-mobile-pages {
		display: block;
	}

	.ep-footer-inner {
		flex-direction: column;
		gap: 15px;
	}
}
