
.tp-banner {
    background-image: url(/static/images/banners/topplays-bg.jpg);
}


.main-selector{
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.main-banner:before {
    border-top-right-radius: 0px;
    border-top-left-radius: 0px;
}

.main-block {
    background-color: white;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: center;
    row-gap: 1.2em;
    column-gap: 1.2em;
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
    box-shadow: 0 1px 0 0 #dce1e6, 0 0 0 1px #e7e8ec;
}
.single-play-block {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 8px;
    background-color: white;
    box-shadow: 0 3px 5px 1px rgba(0, 0, 0, 0.12);
    -webkit-box-shadow: 0 3px 5px 1px rgba(0, 0, 0, 0.12);
    width: 100%;
    transition: 200ms box-shadow;
    min-width: 0;
    overflow: hidden;
}

.single-play-block:hover {
    -webkit-box-shadow:0 10px 20px rgba(0,0,0,.25);
    box-shadow:0 10px 20px rgba(0,0,0,.25);
}
.play-map-preview {
    height: 120px;
    width: 100%;
    background-size: cover;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    background-position: center;
    display: flex;
    justify-content: space-between;
    padding: 12px;
    flex-direction: column;
    position: relative;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.7);
}
.play-map-preview:before {
    
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: rgba(0,0,0,.4);
}
.map-rank {
    position: relative;
    line-height: 1;
}
.play-map-name {
    font-size: 15px;
    color: white;
    position: relative;
    font-weight: 600;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.player-pp-info {
    display: flex;
    justify-content: space-between;
    color: #444;
    align-items: baseline;
    padding: 12px;
}
.player-name {
    font-size: 16px;
    font-weight: 600;
}
.play-pp {
    font-size: 16px;
    font-weight: 700;
}
.br-line {
    margin-left: 12px;
    margin-right: 12px;
    background-color: #efefef;
    height: 1px;
}
.play-main-info {
    display: flex;
    justify-content: space-between;
    padding: 12px;
}
.info-single {
    display: flex;
    flex-direction: column;
    line-height: 1;
}
.info-topic {
    font-size: 10px;
    text-transform: uppercase;
    color: #999;
    font-weight: 600;
    margin-bottom: 2px;
}
.info-content {
    color: #555;
    font-size: 12px;
    font-weight: 500;
}
.topplays__play-block {
	display: flex;
	position: relative;
	padding: 8px 12px;
	border-radius: 8px;
    justify-content: space-between;
    min-width: 0;
    white-space: nowrap;
    background-color: hsl(var(--base), 10%, 50%);
    transition: 200ms box-shadow, 150ms transform, 300ms opacity;
    will-change: box-shadow, transform, opacity;
}
.topplays__play-block a{
    color: white !important;
}
.main-block.load .topplays__play-block{
    opacity: 0.4;
}
.topplays__play-block:before {
    background-color: hsla(0 0% 35% / 75%);
	content: '';
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	position: absolute;
    border-radius: 8px;
    transition: 200ms background-color;
    will-change: background-color;
}
.topplays__play-block:hover{
    transform: translateY(-5px);
}
.topplays__play-block:hover:before {
    background-color: hsla(0 0% 30% / 50%);
}
.topplays__play-block * {
	z-index: 1;
}
.selector+.selector{
    margin-top: 12px;
}
.play__pp {
    font-size: 20px;
    display: flex;
    margin-top: 4px;
    align-items: center;
}
.play__pp>span{
    line-height: 1.3;
    font-weight: 700;
    margin-right: 6px;
}
.play__mods{
    display: flex;
    background-color: #1c1719b3;
    border-radius: 6px;
    padding: 6px 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-weight: 700;
    font-size: 12px;
}
.play_stats {
	display: flex;
	flex-direction: column;
    justify-content: space-between;
}
.play_stats, .play_stats *{
	text-overflow: ellipsis;
	overflow: hidden;
}

.play_stats__play_title{
    font-weight: 600;
    font-size: 12px;
}
.play_stats__play_artist{
    font-weight: 700;
    font-size: 14px;
	line-height: 1.1;
}

.play_player {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
    margin-left: 14px;
}

.play_player__avatar {
	width: 54px;
	height: 54px;
    background-color: #fff;
	background-size: cover;
    border-radius: 6px;
    box-shadow: inset 0px 0px 0px 2px #ffffff;
    align-self: flex-end;
    margin-bottom: 4px;
}
.selector.disabled a{
    opacity: 0.4;
    cursor: progress;
}
span.play_player__name {
	font-size: 12px;
	color: #fff;
	font-weight: 700;
	text-shadow: 0 2px 2px rgb(0,0,0, 0.2);
}

@media (max-width: 992px) {
    .main-block {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 768px) {
    .main-block {
        grid-template-columns: 1fr;
    }
}

.single-play-block:hover {
    box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.3);
}

.map-rank{
    width: auto;
    justify-content: start;
}
#snow-container{
    margin: 0 !important;
}