html,
body {
	margin: 0;
	padding: 0;
	overflow: hidden;
	font-family: Arial, Helvetica, sans-serif;
}

#carousel-wrapper {
	user-select: none;
}

#carousel {
	color: white;
	margin: auto;
	width: 440px;
}

#shelf {
	position: relative;
	width: 100%;
	height: 335px;
}

.card {
	position: absolute;
	width: 95px;
	height: 145px;
	border-radius: 12px;
	border-bottom: 1px solid rgba(255, 255, 225, 0.4);
	overflow: hidden;
	background-size: cover;
	background-position: center;
	transition: 0.35s ease;
	cursor: zoom-in;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

.left-stack .top-card.card:hover {
	transform: translateX(10px);
}

.right-stack .top-card.card:hover {
	transform: translateX(-10px);
}

.left-stack .card:hover {
	transform: translateY(15px) translateX(10px);
}

.right-stack .card:hover {
	transform: translateY(15px) translateX(-10px);
}

.card.active {
	width: 180px;
	height: 260px;
	left: 50%;
	top: 34px;
	transform: translateX(-50%);
	z-index: 500;
	cursor: pointer;
    text-decoration: none;
    color: inherit;	
}

.read-link {
	position: absolute;
	width: 180px;
	text-align: center;
	left: calc(50% - 90px);
	top: 5px;
	text-decoration: none;
	color: #88001C;
	font-size: 1.1em;
}

.read-link:hover {
	color: #CE0600;
}

.card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		transparent 40%,
		rgba(0, 0, 0, 0.8)
	);
}

.counter {
	color: #444;
	position: relative;
	top: 305px;
	text-align: center;
}

.label {
	position: absolute;
	bottom: 10px;
	left: 1px;
	z-index: 2;
	display: inline;
	padding: .2em .6em .3em;
	font-size: 75%;
	font-weight: 700;
	line-height: 1;
	color: #FFF;
	text-align: center;
	white-space: nowrap;
	border-radius: .25em;
}

.label div {
	text-align: left;
}

.month {
	font-size: 14px;
	font-weight: bold;
}

.year {
	font-size: 18px;
	font-weight: bold;
}

.issue {
	font-size: 12px;
}

.month, 
.year,
.issue {
	color: #FFF;
}

.issue-navigation {
	margin: auto;
	text-align: center;
	margin-bottom: 10px;
}

.issue-navigation input {
	width: 60px;
	display: inline-block;
	box-sizing: border-box;
	padding: 6px;
}

.issue-navigation button {
	padding-top: 6px;
	padding-bottom: 5px;
	position: relative;
	top: -2px;
	box-shadow: 0 3px #27445B;
	background-color: #1C3144;
	color: #FFF;
	border-radius: 3px;
	border: 2px solid #1C3144;
	padding: 7.5px;
	outline: 0;
	user-select: none;
	cursor: pointer;
}

.issue-navigation button:hover {
	border-color: #1C3144;
	background-color: #FFF;
	color: #1C3144;
	box-shadow: 0 3px #27445B;
}

.issue-navigation button:active {
	top: 3px;
	box-shadow: none;
	background-color: #1D3245;
	border-color: #537A9E;
	color: #FFF;
}

#load-error {
	text-align: center;
	margin-top: 10px;
}

@media (max-width: 480px) {
	#carousel {
		width: 440px;
		transform: scale(0.85);
		transform-origin: top center;
		margin-bottom: -50px;
	}
}