/* TwoPhone dark minimal DLE theme */

@font-face {
	font-family: "FontAwesome";
	src: url("../fonts/fontawesome-webfont.woff2") format("woff2"),
		url("../fonts/fontawesome-webfont.woff") format("woff");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

:root {
	--bg: #101214;
	--bg-soft: #14171a;
	--panel: #181b1f;
	--panel-2: #20242a;
	--line: rgba(255,255,255,.08);
	--line-strong: rgba(255,255,255,.14);
	--text: #f4f7fb;
	--muted: #98a3b4;
	--muted-2: #687386;
	--accent: #b9ff4a;
	--accent-2: #38e8b0;
	--danger: #ff5b6e;
	--warning: #ffd166;
	--shadow: 0 18px 50px rgba(0,0,0,.28);
	--radius: 8px;
}

* {box-sizing: border-box; margin: 0; padding: 0;}
html {min-width: 320px; scroll-behavior: smooth;}
body {
	min-height: 100%;
	color: var(--text);
	background:
		radial-gradient(circle at 15% 0%, rgba(88,214,141,.08), transparent 32rem),
		radial-gradient(circle at 85% 6%, rgba(74,163,255,.08), transparent 34rem),
		var(--bg);
	font: 14px/1.55 Inter, "Segoe UI", Roboto, Arial, sans-serif;
}
article, aside, footer, header, main, nav, section {display: block;}
ol, ul {list-style: none;}
img {display: block; max-width: 100%;}
a {color: inherit; text-decoration: none;}
a:hover {color: var(--accent);}
button, input, select, textarea {font: inherit;}
button {cursor: pointer;}
h1, h2, h3, h4, h5 {font-weight: 800; line-height: 1.15;}
b, strong {font-weight: 800;}
code {
	padding: 2px 6px;
	border-radius: 6px;
	background: rgba(255,255,255,.07);
	color: #dbe8ff;
}

.clearfix:after {content: ""; display: table; clear: both;}
.hidden, #dofullsearch {display: none !important;}
.nowrap {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.img-fit, .img-box {overflow: hidden; position: relative;}
.img-fit img {width: 100%; height: 100%; object-fit: cover;}
.img-box img {width: 100%; min-height: 100%; object-fit: cover;}
.fx-row {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fx-col {display: flex; flex-direction: column;}
.fx-center {justify-content: center;}
.fx-middle {align-items: center;}
.fx-start {justify-content: flex-start;}
.fx-first {order: -1;}
.fx-last {order: 10;}
.fx-1 {flex: 1 1 0; min-width: 0; max-width: 100%;}
.anim-all {transition: all .2s ease;}
.fa {font-family: "FontAwesome"; font-style: normal;}

.wrap-center {
	width: min(1360px, calc(100% - 40px));
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.site-shell {min-height: 100vh; overflow: hidden;}

input[type="text"],
input[type="password"],
select,
textarea {
	width: 100%;
	min-height: 42px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.05);
	color: var(--text);
	box-shadow: none;
	padding: 0 14px;
	outline: none;
}
textarea {min-height: 120px; padding: 14px; resize: vertical;}
input::placeholder, textarea::placeholder {color: var(--muted-2);}
input:focus, select:focus, textarea:focus {border-color: rgba(88,214,141,.55); background: rgba(255,255,255,.07);}
.button, .btn, button:not(.color-btn):not([class*=fr]),
html input[type="button"], input[type="reset"], input[type="submit"], .usp-btn a, .usp-edit a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	border-radius: var(--radius);
	border: 1px solid rgba(88,214,141,.45);
	background: var(--accent);
	color: #05110a;
	font-weight: 800;
}

/* Header */
.header {
	position: sticky;
	top: 0;
	z-index: 999;
	background: rgba(9,11,16,.82);
	border-bottom: 1px solid var(--line);
	backdrop-filter: blur(18px);
}
.header-in {min-height: 72px; gap: 18px;}
.logo {
	width: 178px;
	min-height: 48px;
	display: flex;
	align-items: center;
	flex-shrink: 0;
}
.logo img {max-height: 44px; object-fit: contain;}
.header button.btn-menu,
.header button.btn-search {
	display: none;
	width: 42px;
	height: 42px;
	min-height: 42px;
	padding: 0;
	border-radius: var(--radius);
	border: 1px solid var(--line);
	background: var(--panel);
	color: var(--text);
	box-shadow: none;
}
.search-wrap {max-width: 620px;}
.search-box {position: relative;}
.search-box input {
	height: 44px;
	padding: 0 50px 0 16px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
}
.search-box button {
	position: absolute;
	right: 4px;
	top: 4px;
	width: 36px;
	height: 36px;
	min-height: 0;
	padding: 0;
	border-radius: 50%;
	border: 0;
	background: var(--accent);
	color: #04120a;
}
.login-btns > * {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	margin-left: 8px;
	background: var(--panel);
	border: 1px solid var(--line);
	color: var(--text);
}

/* Top navigation */
.topbar {margin-top: 18px;}
.tmenu {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	min-height: 58px;
	padding: 8px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(20,25,37,.72);
	box-shadow: var(--shadow);
}
.tmenu > li {position: relative;}
.tmenu > li > a {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 42px;
	padding: 0 14px;
	border-radius: var(--radius);
	color: var(--muted);
	font-weight: 750;
}
.tmenu > li > a:hover, .tmenu .menuactive > a {
	background: rgba(255,255,255,.06);
	color: var(--text);
}
.tmenu .fa {color: var(--accent);}
.hidden-menu {
	display: none;
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 50;
	width: 230px;
	padding: 8px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: #121722;
	box-shadow: var(--shadow);
}
.hidden-menu a {
	display: block;
	padding: 10px 12px;
	border-radius: 6px;
	color: var(--muted);
}
.hidden-menu a:hover {background: rgba(255,255,255,.06); color: var(--text);}
.topbar .share-box {display: none;}

/* Layout */
.wrap-main {padding: 28px 0 44px;}
.cols {gap: 24px; align-items: flex-start;}
.col-left, .col-right {width: 200px; flex: 0 0 200px;}
.content {min-width: 0;}
.side-box, .sect, .pages {
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(20,25,37,.82);
	box-shadow: var(--shadow);
}
.side-box {padding: 16px;}
.side-box + .side-box {margin-top: 18px;}
.side-bt {
	margin-bottom: 12px;
	color: var(--text);
	font-size: 15px;
	font-weight: 850;
}
.side-bt .fa {margin-right: 8px; color: var(--accent);}
.smenu a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-top: 1px solid var(--line);
	color: var(--muted);
	font-size: 13px;
	font-weight: 700;
}
.smenu a:before {
	content: "";
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--accent-2);
	flex: 0 0 auto;
}

.sect {padding: 22px;}
.sect + .sect, .sect + #dle-content {margin-top: 24px;}
.sect-header {gap: 14px; margin-bottom: 18px;}
.sect-title {
	font-size: 22px;
	color: var(--text);
	letter-spacing: 0;
}
.sect-link, .download-anchor {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 38px;
	padding: 0 14px;
	border-radius: var(--radius);
	background: rgba(88,214,141,.12);
	border: 1px solid rgba(88,214,141,.28);
	color: var(--accent);
	font-size: 13px;
	font-weight: 850;
}
.sect-link:hover, .download-anchor:hover {background: var(--accent); color: #06120b;}
.pages {padding: 24px;}

/* Cards */
.short-items {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}
.short-item {min-width: 0;}
.short-in {
	position: relative;
	height: 100%;
	min-height: 230px;
	overflow: hidden;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
	padding: 16px 14px;
	transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.short-in:hover {
	transform: translateY(-3px);
	border-color: rgba(88,214,141,.35);
	background: linear-gradient(180deg, rgba(88,214,141,.095), rgba(255,255,255,.03));
}
.short-link {display: block; text-align: center;}
.short-img-holder {position: relative; padding: 8px 0 14px;}
.short-img {
	width: 86px;
	height: 86px;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 22px;
	background: var(--panel-2);
	box-shadow: 0 14px 34px rgba(0,0,0,.32);
}
.short-title {
	height: 38px;
	margin-bottom: 8px;
	color: var(--text);
	font-size: 14px;
	font-weight: 850;
	line-height: 1.35;
	white-space: normal;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.short-desc {
	max-height: 48px;
	overflow: hidden;
	color: var(--muted);
	font-size: 12px;
	line-height: 1.55;
	text-align: center;
}
.short-bottom {margin-top: 10px; text-align: center;}
.short-label {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 3;
	min-width: 42px;
	height: 22px;
	line-height: 22px;
	padding: 0 8px;
	border-radius: 999px;
	background: var(--accent);
	color: #06120b;
	font-size: 10px;
	font-weight: 900;
	text-transform: uppercase;
	text-align: center;
}
.short-upd {background: var(--accent-2); color: #06101f;}
.short-new {background: var(--warning); color: #171101;}

/* Full story */
.full-hero {
	padding: 24px;
	background:
		linear-gradient(135deg, rgba(88,214,141,.11), transparent 42%),
		rgba(20,25,37,.86);
}
.full-head {gap: 20px;}
.full-icon {
	position: relative;
	width: 132px;
	height: 132px;
	overflow: hidden;
	border-radius: 28px;
	background: var(--panel-2);
	box-shadow: 0 20px 45px rgba(0,0,0,.38);
	flex: 0 0 auto;
}
.article-cover {width: 180px; border-radius: var(--radius);}
.full-title h1 {
	font-size: clamp(26px, 4vw, 42px);
	letter-spacing: 0;
}
.full-title h1 b {color: var(--accent); font-size: .72em;}
.full-subtitle {
	margin-top: 10px;
	color: var(--muted);
	font-size: 15px;
}
.frate {
	width: 160px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: stretch;
}
.mrating, .srate-bar {
	min-height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: rgba(255,255,255,.07);
	color: var(--warning);
	font-weight: 900;
}
.short-bottom .mrating {
	position: relative;
	gap: 8px;
	min-height: 28px;
	padding: 0 10px;
	background: rgba(255,255,255,.055);
	color: var(--muted);
	font-size: 0;
}
.short-bottom .mrating img,
.short-bottom .mrating svg {
	display: none !important;
}
.short-bottom .mrating:before {
	content: "Рейтинг";
	color: var(--muted);
	font-size: 11px;
	font-weight: 850;
}
.short-bottom .mrating:after {
	content: "";
	width: 48px;
	height: 6px;
	border-radius: 999px;
	background:
		linear-gradient(90deg, var(--accent) 0 72%, rgba(255,255,255,.12) 72% 100%);
	box-shadow: 0 0 0 1px rgba(255,255,255,.05) inset;
}
.frate .mrating img {
	display: inline-block;
	width: 16px;
	height: 16px;
	object-fit: contain;
	vertical-align: middle;
}
.mrating-count {
	color: var(--muted);
	font-size: 12px;
	text-align: center;
}
.rate3-short {display: grid; gap: 8px;}
.sr-plus1, .sr-minus1 {
	min-height: 38px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.05);
	color: var(--muted);
}
.sr-plus1:hover {border-color: rgba(88,214,141,.4); color: var(--accent);}
.sr-minus1:hover {border-color: rgba(255,91,110,.4); color: var(--danger);}
.r3-hide {display: none;}

.finfo {
	gap: 10px;
	margin-top: 22px;
	padding-top: 18px;
	border-top: 1px solid var(--line);
}
.finfo li {
	flex: 1 1 140px;
	min-width: 0;
	padding: 12px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
}
.finfo div {
	margin-bottom: 4px;
	color: var(--muted-2);
	font-size: 11px;
	font-weight: 850;
	text-transform: uppercase;
}
.finfo span {color: var(--text); font-size: 13px; font-weight: 750;}
.finfo a {color: var(--accent);}

.full-text {
	color: #d7deea;
	font-size: 15px;
	line-height: 1.8;
}
.full-text p {margin: 0 0 16px;}
.full-text h2, .full-text h3 {
	margin: 24px 0 12px;
	color: var(--text);
}
.full-text ul, .full-text ol {
	margin: 12px 0 16px 22px;
	list-style: disc;
}
.full-text ol {list-style: decimal;}
.full-text li {margin-bottom: 8px;}
.full-text img {
	display: inline-block;
	border-radius: var(--radius);
	margin: 12px 0;
}
.fmessage {
	padding: 16px;
	border: 1px solid rgba(88,214,141,.18);
	border-radius: var(--radius);
	background: rgba(88,214,141,.06);
}
.download-buttons {
	gap: 12px;
	margin-bottom: 16px;
	justify-content: flex-start;
}
.download-buttons a, .fdl-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 0 18px;
	border-radius: var(--radius);
	border: 1px solid rgba(88,214,141,.35);
	background: var(--accent);
	color: #06120b;
	font-weight: 900;
}
.download-buttons a:hover, .fdl-btn:hover {filter: brightness(1.05); color: #06120b;}
.fdl-btn-gp {
	background: rgba(255,255,255,.06);
	border-color: var(--line-strong);
	color: var(--text);
}
.fdl-btn-icon {width: 34px; height: 34px; margin-right: 10px;}
.faq-list {display: grid; gap: 12px;}
.faq-item {
	padding: 16px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
}
.faq-item h3 {margin: 0 0 8px; font-size: 16px;}
.faq-item p {margin: 0; color: var(--muted);}

/* Category and SEO */
.category-header h1 {font-size: 28px;}
.category-description, .site-desc {
	margin-top: 12px;
	color: var(--muted);
	line-height: 1.8;
}
.category-description {
	padding: 14px;
	border-radius: var(--radius);
	border: 1px solid var(--line);
	background: rgba(255,255,255,.035);
}
.genres-grid {margin: 18px 0;}
.genres-title {
	margin-bottom: 12px;
	color: var(--text);
	font-size: 16px;
	font-weight: 850;
}
.genres-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
	gap: 10px;
}
.genre-button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 12px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.04);
	color: var(--muted);
	font-weight: 800;
	text-align: center;
}
.genre-button:hover {
	border-color: rgba(88,214,141,.35);
	background: rgba(88,214,141,.1);
	color: var(--text);
}
.site-desc-wr {margin-top: 24px;}
.site-desc {
	padding: 22px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(20,25,37,.72);
}
.site-desc h1, .site-desc h2 {margin-bottom: 12px; color: var(--text); font-size: 20px;}
.site-desc ul {list-style: disc; margin: 12px 0 12px 22px;}
.slice {overflow: hidden; position: relative; transition: height .2s;}
.slice-masked:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 80px;
	background: linear-gradient(to bottom, transparent, var(--panel));
}
.slice-btn {margin-top: 10px;}
.slice-btn span {color: var(--accent); font-weight: 850; cursor: pointer;}

/* Articles */
.short-article {
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(20,25,37,.82);
	overflow: hidden;
}
.short-article + .short-article {margin-top: 14px;}
.short-article .short-content {gap: 16px; padding: 14px;}
.short-article .short-img {width: 118px; height: 92px; border-radius: var(--radius);}
.short-article .short-title {height: auto; margin-bottom: 8px; font-size: 18px;}
.short-article .short-text {color: var(--muted); font-size: 13px;}
.short-more {margin-top: 10px; color: var(--accent); font-weight: 850;}
.article-tags {margin-top: 18px; color: var(--muted);}

/* Comments */
.add-comms, .add-comm-form {
	padding: 16px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
}
.add-comms {display: none; margin-bottom: 18px;}
.ac-inputs input {width: 49%; margin-bottom: 12px;}
.ac-textarea textarea {margin-bottom: 12px;}
.comm-item {gap: 12px; margin-bottom: 14px;}
.comm-left {width: 46px; flex: 0 0 46px;}
.comm-img {
	width: 46px;
	height: 46px;
	overflow: hidden;
	border-radius: 50%;
	background: var(--panel-2);
}
.comm-right {
	padding: 14px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
}
.comm-one {margin-bottom: 8px; color: var(--muted); font-size: 12px;}
.comm-author, .comm-author a {color: var(--accent); font-weight: 850;}
.comm-two {color: #d7deea;}
.comm-three {margin-top: 10px; color: var(--muted); font-size: 12px;}
.reply {cursor: pointer; color: var(--accent);}
.comm-three-right li {display: inline-block; margin-left: 10px;}

/* Sidebar items, filters and login */
.top-item {gap: 10px; margin-bottom: 12px;}
.top-img {
	width: 42px;
	height: 42px;
	border-radius: 10px;
	overflow: hidden;
	background: var(--panel-2);
	flex: 0 0 auto;
}
.top-title {color: var(--muted); font-size: 12px; font-weight: 800; line-height: 1.35;}
.top-item:hover .top-title {color: var(--text);}
.lcomm {margin-bottom: 14px;}
.lcomm-text {
	padding: 10px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
	color: var(--muted);
	font-size: 12px;
	line-height: 1.55;
}
.lcomm-meta {position: relative; min-height: 34px; margin-top: 8px; padding-left: 42px;}
.lcomm-av {
	position: absolute;
	left: 0;
	top: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--panel-2);
}
.lcomm-title {display: block; color: var(--text); font-size: 12px; font-weight: 800;}
.lcomm-name, .lcomm-date {color: var(--muted-2); font-size: 11px;}
.filter-sect {align-items: center;}
.filter-content {gap: 10px;}
.filt-col {flex: 1 1 150px;}
.filter-btn, .filter-reset {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 14px;
	border-radius: var(--radius);
	font-weight: 850;
}
.filter-btn {width: 100%; border: 0; background: var(--accent); color: #06120b;}
.filter-reset {border: 1px solid var(--line); color: var(--muted);}
.filter-icon {display: none;}
.login-overlay {
	position: fixed;
	inset: 0;
	z-index: 999;
	display: none;
	background: rgba(0,0,0,.68);
	backdrop-filter: blur(8px);
}
.login-box {
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 1000;
	display: none;
	width: min(420px, calc(100% - 28px));
	max-height: calc(100vh - 40px);
	overflow: auto;
	transform: translate(-50%, -50%);
	padding: 22px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: #111722;
	box-shadow: var(--shadow);
}
.login-close {
	position: absolute;
	right: 12px;
	top: 10px;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,.06);
	color: var(--muted);
	cursor: pointer;
}
.login-title {margin-bottom: 16px; font-size: 18px; font-weight: 900; text-align: center;}
.login-avatar {
	width: 64px;
	height: 64px;
	margin: 0 auto 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 50%;
	background: var(--panel-2);
	color: var(--muted);
}
.login-input {margin-bottom: 10px;}
.login-check {margin: 10px 0; color: var(--muted); font-size: 13px;}
.login-check input {margin-right: 8px;}
.login-btn button {width: 100%; margin: 8px 0 12px;}
.login-btm {gap: 10px; color: var(--muted); font-size: 13px;}
.login-btm a {color: var(--accent);}
.login-menu {gap: 8px;}
.login-menu li {width: calc(50% - 4px);}
.login-menu a {
	display: block;
	min-height: 46px;
	padding: 10px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: rgba(255,255,255,.035);
	color: var(--muted);
	font-size: 12px;
}
.login-menu .fa {margin-right: 7px; color: var(--accent);}
.login-soc-title {margin: 16px 0 10px; color: var(--muted); text-align: center; font-size: 12px;}
.login-soc-btns {display: flex; justify-content: center; gap: 8px;}
.login-soc-btns img {width: 32px; height: 32px; border-radius: 50%;}

/* Share and footer */
.share {display: flex; gap: 8px; min-height: 36px;}
.share a {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(255,255,255,.06) url("../images/share.png") -3px -2px no-repeat;
	border: 1px solid var(--line);
}
.share a:nth-child(2) {background-position: -47px -2px;}
.share a:nth-child(3) {background-position: -90px -2px;}
.share a:nth-child(4) {background-position: -133px -2px;}
.share a:nth-child(5) {background-position: -221px -2px;}
.share a:nth-child(6) {background-position: -175px -1px;}
.footer {
	padding: 28px 0;
	border-top: 1px solid var(--line);
	background: rgba(7,9,13,.9);
	color: var(--muted);
	text-align: center;
}
.ft-menu {display: flex; justify-content: center; gap: 18px; margin-bottom: 10px;}
.ft-menu a {color: var(--text); font-weight: 800;}
.ft-copyr {font-size: 12px;}

/* Mobile panel */
.close-overlay {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9998;
	background: rgba(0,0,0,.62);
}
.side-panel {
	position: fixed;
	left: -320px;
	top: 0;
	z-index: 9999;
	width: 300px;
	height: 100%;
	overflow-y: auto;
	padding: 16px;
	background: #101520;
	border-right: 1px solid var(--line);
	transition: left .24s ease;
}
.side-panel.active {left: 0;}
.btn-close {
	position: fixed;
	left: 300px;
	top: -48px;
	z-index: 10000;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0 var(--radius) var(--radius) 0;
	background: var(--danger);
	color: #fff;
	transition: top .24s ease;
	cursor: pointer;
}
.btn-close.active {top: 0;}
body.opened-menu {overflow: hidden;}
.side-panel .tmenu {
	display: block;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}
.side-panel .tmenu > li {width: 100%;}
.side-panel .tmenu > li > a {justify-content: flex-start;}
.side-panel .hidden-menu {
	position: static;
	display: block;
	width: 100%;
	margin: 4px 0 8px;
	box-shadow: none;
}
.side-panel .side-box {
	margin-top: 14px;
	box-shadow: none;
}

#gotop {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 9997;
	display: none;
	width: 42px;
	height: 42px;
	line-height: 42px;
	border-radius: 50%;
	background: var(--accent);
	color: #06120b;
	text-align: center;
	cursor: pointer;
	box-shadow: var(--shadow);
}

@media (max-width: 1180px) {
	.wrap-center {width: min(1000px, calc(100% - 24px));}
	.header button.btn-menu {display: inline-flex; align-items: center; justify-content: center;}
	.topbar, .col-left .side-nav, .col-right .side-nav {display: none;}
	.cols {gap: 18px;}
	.content {order: 1; flex-basis: 100%;}
	.col-left, .col-right {order: 2; width: calc(50% - 9px); flex: 0 0 calc(50% - 9px);}
	.short-items {grid-template-columns: repeat(4, minmax(0, 1fr));}
}

@media (max-width: 860px) {
	.header-in {min-height: 64px; gap: 10px;}
	.logo {width: 150px;}
	.search-wrap {
		display: none;
		order: 10;
		flex: 0 0 100%;
		max-width: none;
	}
	.header.is-active .search-wrap {display: block;}
	.header button.btn-search {display: inline-flex; align-items: center; justify-content: center;}
	.short-items {grid-template-columns: repeat(3, minmax(0, 1fr));}
	.full-head {align-items: flex-start;}
	.full-icon {width: 108px; height: 108px; border-radius: 24px;}
	.frate {width: 100%; flex-direction: row; flex-wrap: wrap;}
	.frate > * {flex: 1 1 140px;}
}

@media (max-width: 640px) {
	.wrap-center {width: calc(100% - 20px);}
	.wrap-main {padding-top: 18px;}
	.sect, .pages, .full-hero {padding: 16px;}
	.short-items {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;}
	.short-in {min-height: 226px; padding: 14px;}
	.col-left, .col-right {width: 100%; flex-basis: 100%;}
	.sect-title {font-size: 19px;}
	.full-title h1 {font-size: 24px;}
	.finfo li {flex-basis: calc(50% - 5px);}
	.download-buttons a, .fdl-btn {width: 100%;}
	.short-article .short-content {display: block;}
	.short-article .short-img {width: 100%; height: 160px; margin-bottom: 12px;}
	.ac-inputs input {width: 100%;}
	.ft-menu {display: block;}
	.ft-menu li + li {margin-top: 8px;}
}

@media (max-width: 420px) {
	.logo {width: 120px;}
	.short-img {width: 78px; height: 78px; border-radius: 18px;}
	.short-desc {font-size: 11px;}
	.finfo li {flex-basis: 100%;}
}

/* Final geometry fixes after DLE runtime markup is injected */
@media (min-width: 861px) {
	.header-in {
		display: grid;
		grid-template-columns: 220px minmax(360px, 620px) 220px;
		justify-content: space-between;
		align-items: center;
		min-height: 74px;
		gap: 24px;
	}
	.header .logo {
		width: 220px;
		min-height: 44px;
		justify-content: flex-start;
	}
	.header .search-wrap {
		width: 100%;
		max-width: 620px;
		margin: 0;
		justify-self: center;
	}
	.header .login-btns {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 10px;
		min-width: 0;
	}
	.header .login-btns > * {
		margin-left: 0;
		flex: 0 0 auto;
	}
	.header .btn-menu,
	.header .btn-search {
		display: none !important;
	}
}

.topbar {
	margin-top: 20px;
}
.tmenu {
	min-height: 60px;
	justify-content: flex-start !important;
}
.tmenu > li {
	flex: 0 0 auto;
}
.tmenu > li > a {
	white-space: nowrap;
}

.short-bottom .mrating {
	width: 124px;
	max-width: 100%;
	overflow: hidden;
	white-space: nowrap;
	color: transparent !important;
	line-height: 0;
	margin: 0 auto;
}
.short-bottom .mrating * {
	display: none !important;
	visibility: hidden !important;
}
.short-bottom .mrating:before,
.short-bottom .mrating:after {
	display: block !important;
	visibility: visible !important;
}
.short-bottom .mrating:before {
	line-height: 1;
}
.short-bottom .mrating:after {
	flex: 0 0 48px;
}

/* Dynamic DLE rating meter */
.rating-meter {
	--rating-percent: 0%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	max-width: 100%;
	min-height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: rgba(255,255,255,.055);
	color: var(--muted);
	font-size: 11px;
	font-weight: 850;
	white-space: nowrap;
}
.rating-label {
	flex: 0 0 auto;
}
.rating-track {
	position: relative;
	display: block;
	width: 48px;
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(255,255,255,.13);
	box-shadow: 0 0 0 1px rgba(255,255,255,.05) inset;
}
.rating-fill {
	position: absolute;
	left: 0;
	top: 0;
	width: var(--rating-percent);
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--accent), #8df3b4);
	transition: width .25s ease;
}
.rating-value {
	min-width: 30px;
	color: var(--text);
	font-size: 11px;
	text-align: right;
}
.rating-source {
	display: none !important;
}
.rating-meter-full {
	width: 100%;
	min-height: 42px;
	justify-content: flex-start;
	padding: 0 14px;
	background: rgba(255,255,255,.065);
}
.rating-meter-full .rating-track {
	flex: 1 1 auto;
	width: auto;
	min-width: 72px;
	height: 8px;
}
.rating-meter-full .rating-value {
	color: var(--accent);
	font-weight: 900;
}
.short-bottom .rating-meter {
	width: 136px;
}

/* Graphite + Lime refresh */
body {
	background:
		radial-gradient(circle at 50% -12%, rgba(185,255,74,.16), transparent 42rem),
		linear-gradient(180deg, #14171a 0%, var(--bg) 34rem);
}

a:hover {color: var(--accent);}
code {background: rgba(185,255,74,.09); color: var(--accent);}

input[type="text"],
input[type="password"],
select,
textarea {
	border-color: var(--line);
	background: rgba(24,27,31,.92);
}
input:focus, select:focus, textarea:focus {
	border-color: rgba(185,255,74,.58);
	background: rgba(32,36,42,.96);
}
.button, .btn, button:not(.color-btn):not([class*=fr]),
html input[type="button"], input[type="reset"], input[type="submit"], .usp-btn a, .usp-edit a {
	border-color: rgba(185,255,74,.48);
	background: var(--accent);
	color: #101214;
}

.wrap-center {width: min(1440px, calc(100% - 40px));}
.site-shell {background: linear-gradient(180deg, rgba(255,255,255,.025), transparent 260px);}

.header {
	background: rgba(16,18,20,.88);
	border-bottom-color: rgba(255,255,255,.07);
}
.header-in {min-height: 68px;}
.logo {
	position: relative;
	width: 190px;
}
.logo:before {
	content: "";
	width: 34px;
	height: 34px;
	margin-right: 10px;
	border-radius: 8px;
	background: var(--accent);
	box-shadow: 0 0 24px rgba(185,255,74,.28);
	flex: 0 0 auto;
}
.logo img {
	max-height: 38px;
	filter: saturate(.2) brightness(1.35);
}
.header button.btn-menu,
.header button.btn-search,
.login-btns > * {
	border-radius: var(--radius);
	background: var(--panel);
	border-color: var(--line);
	color: var(--text);
}
.header button.btn-menu:hover,
.header button.btn-search:hover,
.login-btns > *:hover {
	border-color: rgba(185,255,74,.42);
	color: var(--accent);
}
.search-box input {
	height: 46px;
	border-radius: var(--radius);
	background: rgba(24,27,31,.95);
	box-shadow: 0 16px 34px rgba(0,0,0,.18);
}
.search-box button {
	right: 5px;
	top: 5px;
	width: 36px;
	height: 36px;
	border-radius: var(--radius);
	background: var(--accent);
	color: #101214;
}

.tmenu {
	min-height: 58px;
	border-color: rgba(255,255,255,.07);
	background: rgba(24,27,31,.9);
	box-shadow: 0 18px 40px rgba(0,0,0,.26);
}
.tmenu > li > a {
	border: 1px solid transparent;
	color: var(--muted);
}
.tmenu > li > a:hover, .tmenu .menuactive > a {
	border-color: rgba(185,255,74,.28);
	background: rgba(185,255,74,.1);
	color: var(--accent);
}
.tmenu .fa, .side-bt .fa, .login-menu .fa {color: var(--accent);}
.hidden-menu {
	background: #181b1f;
	border-color: rgba(255,255,255,.08);
}

.wrap-main {padding-top: 30px;}
.cols {gap: 26px;}
.col-left, .col-right {width: 220px; flex-basis: 220px;}
.side-box, .sect, .pages {
	border-color: rgba(255,255,255,.075);
	background: linear-gradient(180deg, rgba(32,36,42,.96), rgba(24,27,31,.96));
	box-shadow: 0 18px 42px rgba(0,0,0,.24);
}
.side-box {padding: 14px;}
.side-bt {
	margin-bottom: 10px;
	font-size: 14px;
	letter-spacing: 0;
}
.smenu a {
	border-top-color: rgba(255,255,255,.06);
	color: #b4bdc5;
}
.smenu a:hover {color: var(--accent);}
.smenu a:before {background: var(--accent);}

.sect {padding: 20px;}
.sect-header {margin-bottom: 16px;}
.sect-title {
	font-size: 21px;
	color: var(--text);
}
.sect-link, .download-anchor {
	border-color: rgba(185,255,74,.35);
	background: rgba(185,255,74,.11);
	color: var(--accent);
}
.sect-link:hover, .download-anchor:hover {
	background: var(--accent);
	color: #101214;
}

.short-items {
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 12px;
}
.short-in {
	min-height: 226px;
	border-color: rgba(255,255,255,.07);
	background: linear-gradient(180deg, rgba(32,36,42,.98), rgba(24,27,31,.98));
	box-shadow: 0 10px 28px rgba(0,0,0,.22);
}
.short-in:hover {
	transform: translateY(-4px);
	border-color: rgba(185,255,74,.38);
	background: linear-gradient(180deg, rgba(185,255,74,.105), rgba(24,27,31,.98));
}
.short-img {
	width: 82px;
	height: 82px;
	border-radius: var(--radius);
	border: 1px solid rgba(255,255,255,.09);
	background: var(--panel-2);
	box-shadow: 0 16px 34px rgba(0,0,0,.34);
}
.short-title {font-size: 14px;}
.short-desc {color: var(--muted);}
.short-label {
	border-radius: 7px;
	background: var(--accent);
	color: #101214;
}
.short-upd {background: var(--accent-2); color: #092119;}
.short-new {background: var(--accent); color: #101214;}

.rating-meter {
	background: rgba(255,255,255,.055);
	color: var(--muted);
}
.rating-track {background: rgba(255,255,255,.13);}
.rating-fill {background: linear-gradient(90deg, var(--accent), var(--accent-2));}
.rating-meter-full .rating-value {color: var(--accent);}

.full-hero {
	background:
		radial-gradient(circle at 18% 0%, rgba(185,255,74,.14), transparent 20rem),
		linear-gradient(180deg, rgba(32,36,42,.98), rgba(24,27,31,.98));
}
.full-icon {
	border-radius: var(--radius);
	border: 1px solid rgba(255,255,255,.09);
}
.full-title h1 b {color: var(--accent);}
.finfo {border-top-color: rgba(255,255,255,.07);}
.finfo li,
.faq-item,
.category-description,
.genre-button,
.add-comms,
.add-comm-form,
.comm-right,
.lcomm-text,
.login-menu a {
	border-color: rgba(255,255,255,.07);
	background: rgba(255,255,255,.04);
}
.finfo div {color: var(--muted);}
.finfo a, .comm-author, .comm-author a, .reply, .login-btm a, .short-more {color: var(--accent);}
.full-text {color: #d7dee2;}
.fmessage {
	border-color: rgba(185,255,74,.2);
	background: rgba(185,255,74,.065);
}
.download-buttons a, .fdl-btn, .filter-btn {
	border-color: rgba(185,255,74,.38);
	background: var(--accent);
	color: #101214;
}
.fdl-btn-gp {
	background: rgba(255,255,255,.055);
	color: var(--text);
	border-color: var(--line-strong);
}

.genres-list {grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));}
.genre-button:hover {
	border-color: rgba(185,255,74,.36);
	background: rgba(185,255,74,.105);
	color: var(--accent);
}
.site-desc {
	border-color: rgba(255,255,255,.07);
	background: linear-gradient(180deg, rgba(32,36,42,.9), rgba(24,27,31,.9));
}
.slice-masked:before {background: linear-gradient(to bottom, transparent, var(--panel));}
.slice-btn span {color: var(--accent);}

.top-img {
	border-radius: var(--radius);
	border: 1px solid rgba(255,255,255,.08);
}
.top-title {color: #b4bdc5;}
.top-item:hover .top-title {color: var(--accent);}

.side-panel {
	background: #101214;
	border-right-color: rgba(255,255,255,.08);
}
.btn-close {
	border-radius: 0 var(--radius) var(--radius) 0;
	background: var(--accent);
	color: #101214;
}
#gotop {
	right: 22px;
	bottom: 22px;
	border-radius: var(--radius);
	background: var(--accent);
	color: #101214;
}
.footer {
	background: rgba(16,18,20,.96);
	border-top-color: rgba(255,255,255,.07);
}

@media (min-width: 1181px) {
	.content .short-items {
		grid-template-columns: repeat(auto-fill, minmax(158px, 1fr));
	}
	.header-in {
		grid-template-columns: 230px minmax(420px, 680px) 230px;
	}
}

@media (max-width: 1180px) {
	.wrap-center {width: min(1040px, calc(100% - 24px));}
	.col-left, .col-right {
		width: calc(50% - 9px);
		flex-basis: calc(50% - 9px);
	}
}

@media (max-width: 860px) {
	.wrap-center {width: calc(100% - 20px);}
	.header-in {min-height: 62px;}
	.logo {width: 142px;}
	.logo:before {
		width: 30px;
		height: 30px;
		margin-right: 8px;
	}
	.search-box input {border-radius: var(--radius);}
	.short-items {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.full-head {gap: 14px;}
	.full-icon {
		width: 96px;
		height: 96px;
	}
}

@media (max-width: 640px) {
	.wrap-main {padding: 16px 0 36px;}
	.sect, .pages, .full-hero {padding: 14px;}
	.sect + .sect, .sect + #dle-content {margin-top: 18px;}
	.sect-header {
		align-items: center;
		gap: 10px;
	}
	.sect-title {font-size: 18px;}
	.sect-link {
		min-height: 34px;
		padding: 0 12px;
		font-size: 12px;
	}
	.short-items {gap: 10px;}
	.short-in {
		min-height: 218px;
		padding: 12px;
	}
	.short-img {
		width: 74px;
		height: 74px;
	}
	.full-title h1 {font-size: 23px;}
	.finfo {gap: 8px;}
	.finfo li {flex-basis: calc(50% - 4px);}
}

@media (max-width: 420px) {
	.logo {width: 126px;}
	.short-in {min-height: 208px;}
	.short-desc {max-height: 42px;}
	.finfo li {flex-basis: 100%;}
}

/* Radical app layout pass */
body {
	background:
		linear-gradient(135deg, rgba(185,255,74,.075) 0 1px, transparent 1px 120px),
		linear-gradient(180deg, #111416 0%, #0d0f10 38rem, #101214 100%);
}

.site-shell {
	overflow: visible;
	background: none;
}

.header {
	position: sticky;
	top: 0;
	background: rgba(13,15,16,.78);
	border-bottom: 1px solid rgba(185,255,74,.14);
}

.header-in {
	display: grid !important;
	grid-template-columns: auto minmax(280px, 620px) auto auto;
	gap: 12px;
	align-items: center;
	min-height: 72px;
}

.logo {
	width: auto !important;
	min-width: 182px;
	padding: 8px 12px 8px 8px;
	border: 1px solid rgba(185,255,74,.22);
	border-radius: 8px;
	background: rgba(24,27,31,.72);
}

.logo:before {
	width: 38px;
	height: 38px;
	margin-right: 12px;
}

.search-wrap {
	max-width: none;
	justify-self: stretch;
}

.search-box {
	display: grid;
	grid-template-columns: 1fr 46px;
	gap: 8px;
	padding: 6px;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 8px;
	background: rgba(24,27,31,.86);
}

.search-box input {
	height: 42px;
	padding: 0 12px;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.search-box button {
	position: static;
	width: 46px;
	height: 42px;
	border-radius: 8px;
}

.app-nav {
	margin-top: 14px;
}

.app-nav .tmenu {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 0;
	width: max-content;
	max-width: 100%;
	margin: 0 auto;
	padding: 7px;
	overflow-x: auto;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 8px;
	background: rgba(17,19,21,.78);
	box-shadow: 0 16px 36px rgba(0,0,0,.22);
	scrollbar-width: none;
	backdrop-filter: blur(14px);
}

.app-nav .tmenu::-webkit-scrollbar {
	display: none;
}

.app-nav .tmenu > li > a {
	min-height: 42px;
	padding: 0 14px 0 8px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 8px;
	background: rgba(255,255,255,.035);
	color: #dce4e8;
	box-shadow: none;
	font-size: 13px;
}

.app-nav .tmenu > li > a .fa {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	margin-right: 0;
	border-radius: 7px;
	background: rgba(185,255,74,.13);
	color: var(--accent);
	font-size: 12px;
}

.app-nav .tmenu > li > a:hover {
	border-color: rgba(185,255,74,.38);
	background: rgba(185,255,74,.11);
	color: var(--accent);
}

.app-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: end;
	margin-top: 18px;
	padding: 34px;
	border: 1px solid rgba(185,255,74,.16);
	border-radius: 8px;
	background:
		linear-gradient(120deg, rgba(185,255,74,.16), transparent 42%),
		linear-gradient(180deg, rgba(32,36,42,.95), rgba(18,20,22,.95));
	box-shadow: 0 28px 70px rgba(0,0,0,.28);
}

.app-kicker {
	margin-bottom: 10px;
	color: var(--accent);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.app-hero h1 {
	margin: 0;
	font-size: clamp(38px, 7vw, 88px);
	line-height: .9;
	letter-spacing: 0;
}

.app-hero p {
	max-width: 620px;
	margin: 14px 0 0;
	color: #c4ccd2;
	font-size: 16px;
}

.app-hero-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	width: 230px;
}

.hero-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 50px;
	padding: 0 14px;
	border-radius: 8px;
	background: var(--accent);
	color: #101214;
	font-weight: 900;
}

.hero-action-muted {
	border: 1px solid rgba(255,255,255,.08);
	background: rgba(255,255,255,.055);
	color: var(--text);
}

.quick-cats {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	margin-top: 12px;
	padding-bottom: 4px;
	scrollbar-width: none;
}

.quick-cats::-webkit-scrollbar {
	display: none;
}

.quick-cats a {
	flex: 0 0 auto;
	padding: 11px 15px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 8px;
	background: rgba(24,27,31,.78);
	color: #c5cdd3;
	font-weight: 850;
}

.quick-cats a:hover {
	border-color: rgba(185,255,74,.36);
	background: rgba(185,255,74,.11);
	color: var(--accent);
}

.app-main {
	padding-top: 22px;
}

.app-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 292px;
	grid-template-areas:
		"left right"
		"content right"
		"content right";
	gap: 24px;
	align-items: start;
}

.content {
	grid-area: content;
}

.col-left {
	grid-area: left;
	width: auto !important;
	flex: none !important;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.col-right {
	grid-area: right;
	width: auto !important;
	flex: none !important;
	position: sticky;
	top: 94px;
	display: grid;
	gap: 14px;
}

.side-box,
.sect,
.pages {
	border-radius: 8px;
}

.content > .sect,
#dle-content > .sect,
.pages {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.sect + .sect,
.sect + #dle-content,
#dle-content > .sect + .sect {
	margin-top: 34px;
}

.sect-header {
	min-height: 78px;
	margin-bottom: 14px;
	padding: 0 0 14px;
	border-bottom: 1px solid rgba(255,255,255,.075);
}

.sect-title,
.category-header h1 {
	font-size: clamp(24px, 3vw, 38px);
	font-weight: 900;
}

.sect-title:before,
.category-header h1:before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	margin-right: 10px;
	border-radius: 4px;
	background: var(--accent);
	box-shadow: 0 0 18px rgba(185,255,74,.32);
	vertical-align: .12em;
}

.sect-link {
	min-height: 42px;
	padding: 0 16px;
}

.short-items {
	grid-template-columns: repeat(auto-fill, minmax(174px, 1fr));
	gap: 14px;
}

.short-in {
	min-height: 244px;
	padding: 16px;
	background:
		linear-gradient(180deg, rgba(34,38,43,.98), rgba(20,22,24,.98));
}

.short-img-holder {
	padding-top: 2px;
}

.short-img {
	width: 92px;
	height: 92px;
}

.short-title {
	margin-top: 2px;
	font-size: 15px;
}

.side-box {
	padding: 16px;
	background:
		linear-gradient(180deg, rgba(32,36,42,.88), rgba(24,27,31,.86));
}

.col-left .side-nav {
	grid-column: 1 / -1;
}

.col-left .side-nav {
	order: -2;
}

.col-left .side-box:not(.side-nav) {
	display: none;
}

.is-programs-section .quick-cats,
.is-articles-section .quick-cats,
.is-programs-section .col-left,
.is-articles-section .col-left {
	display: none !important;
}

.is-programs-section .app-grid,
.is-articles-section .app-grid {
	grid-template-areas:
		"content right"
		"content right";
}

.side-bt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	font-size: 16px;
}

.side-bt:after {
	content: "";
	width: 34px;
	height: 6px;
	border-radius: 999px;
	background: var(--accent);
}

.smenu {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
	gap: 8px;
}

.smenu a {
	min-height: 42px;
	padding: 0 11px;
	border: 1px solid rgba(255,255,255,.07);
	border-radius: 8px;
	background: rgba(255,255,255,.04);
	color: #d5dbe0;
}

.smenu a:before {
	width: 7px;
	height: 7px;
	border-radius: 3px;
}

.col-right .smenu {
	grid-template-columns: 1fr;
}

.site-desc {
	margin-top: 8px;
	border: 0;
	background:
		linear-gradient(180deg, rgba(32,36,42,.88), rgba(24,27,31,.84));
}

.full-hero {
	border: 1px solid rgba(185,255,74,.16);
}

@media (min-width: 1440px) {
	.app-grid {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 28px;
	}
	.short-items {
		grid-template-columns: repeat(auto-fill, minmax(184px, 1fr));
	}
}

@media (max-width: 1180px) {
	.header-in {
		grid-template-columns: auto minmax(0, 1fr) auto auto;
	}
	.app-grid {
		grid-template-columns: 1fr;
		grid-template-areas:
			"content"
			"left"
			"right";
	}
	.col-right {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.col-left {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 860px) {
	body {
		background:
			linear-gradient(135deg, rgba(185,255,74,.06) 0 1px, transparent 1px 84px),
			#101214;
	}
	.header-in {
		grid-template-columns: 44px minmax(0, 1fr) 44px auto;
		gap: 8px;
	}
	.logo {
		justify-self: center;
		min-width: 0;
		padding: 0;
		border: 0;
		background: transparent;
	}
	.logo:before {
		display: none;
	}
	.search-wrap {
		grid-column: 1 / -1;
	}
	.app-nav .tmenu {
		width: auto;
		margin-right: -10px;
		margin-left: -10px;
		padding-right: 10px;
		padding-left: 10px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}
	.app-nav .tmenu > li > a {
		display: flex;
		min-height: 40px;
		padding: 0 12px 0 7px;
		font-size: 12px;
		text-align: center;
	}
	.app-nav .tmenu > li > a .fa {
		margin-right: 0;
	}
	.app-hero {
		grid-template-columns: 1fr;
		gap: 18px;
		margin-top: 12px;
		padding: 22px;
	}
	.app-hero-actions {
		width: 100%;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.hero-action {
		justify-content: center;
		gap: 8px;
		padding: 0 8px;
		font-size: 13px;
	}
	.col-left,
	.col-right {
		grid-template-columns: 1fr;
	}
	.short-items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.wrap-center {
		width: calc(100% - 16px);
	}
	.app-hero {
		padding: 18px;
	}
	.app-hero h1 {
		font-size: 42px;
	}
	.app-hero-actions {
		grid-template-columns: 1fr;
	}
	.quick-cats {
		margin-right: -8px;
		margin-left: -8px;
		padding-right: 8px;
		padding-left: 8px;
	}
	.short-in {
		min-height: 220px;
		padding: 12px;
	}
	.short-img {
		width: 76px;
		height: 76px;
	}
	.sect-header {
		min-height: 58px;
	}
	.sect-title,
	.category-header h1 {
		font-size: 23px;
	}
}

/* Header nav and hero polish */
.app-nav {
	margin-top: 12px;
}

.app-nav .tmenu {
	width: 100%;
	max-width: none;
	justify-content: center;
	padding: 8px;
	background:
		linear-gradient(90deg, rgba(185,255,74,.08), transparent 22%, transparent 78%, rgba(56,232,176,.06)),
		rgba(17,19,21,.84);
}

.app-nav .tmenu > li {
	flex: 1 1 0;
	max-width: 210px;
}

.app-nav .tmenu > li > a {
	justify-content: center;
	min-height: 44px;
	padding: 0 14px;
	background: rgba(255,255,255,.045);
	color: #edf3f5;
}

.app-nav .tmenu > li > a .fa {
	margin-right: 8px;
	background: rgba(185,255,74,.16);
}

.app-hero {
	position: relative;
	overflow: hidden;
	min-height: 250px;
	padding: 44px 38px;
	background:
		linear-gradient(90deg, rgba(185,255,74,.18), rgba(56,232,176,.055) 34%, transparent 64%),
		linear-gradient(135deg, rgba(255,255,255,.055) 0 1px, transparent 1px 28px),
		linear-gradient(180deg, rgba(36,42,45,.98), rgba(17,20,21,.98));
}

.app-hero:before {
	content: "";
	position: absolute;
	inset: 14px auto 14px 14px;
	width: 7px;
	border-radius: 8px;
	background: linear-gradient(180deg, var(--accent), var(--accent-2));
	box-shadow: 0 0 28px rgba(185,255,74,.28);
}

.app-hero:after {
	content: "APK  MOD  ANDROID";
	position: absolute;
	right: 28px;
	bottom: -8px;
	color: rgba(255,255,255,.045);
	font-size: clamp(44px, 7vw, 96px);
	font-weight: 950;
	line-height: 1;
	pointer-events: none;
	white-space: nowrap;
}

.app-hero-copy,
.app-hero-actions {
	position: relative;
	z-index: 2;
}

.app-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(185,255,74,.28);
	border-radius: 8px;
	background: rgba(185,255,74,.095);
}

.app-hero h1 {
	text-shadow: 0 18px 42px rgba(0,0,0,.34);
}

.app-hero p {
	max-width: 720px;
	color: #d8e0e3;
	font-size: 17px;
	font-weight: 650;
}

.app-hero-actions {
	width: 250px;
}

.hero-action {
	justify-content: flex-start;
	gap: 12px;
	min-height: 54px;
	border: 1px solid rgba(185,255,74,.34);
	background: rgba(13,15,16,.72);
	color: #f5faf7;
	box-shadow: 0 14px 28px rgba(0,0,0,.2);
}

.hero-action .fa {
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 7px;
	background: rgba(185,255,74,.16);
	color: var(--accent);
}

.hero-action:hover {
	background: rgba(185,255,74,.13);
	color: #fff;
}

.hero-action-muted {
	border-color: rgba(255,255,255,.12);
	background: rgba(255,255,255,.055);
	color: #e6ecef;
}

@media (max-width: 860px) {
	.app-nav .tmenu {
		justify-content: flex-start;
	}
	.app-nav .tmenu > li {
		flex: 0 0 auto;
		max-width: none;
	}
	.app-nav .tmenu > li > a {
		justify-content: flex-start;
	}
	.app-hero {
		min-height: 0;
		padding: 26px 22px;
	}
	.app-hero:after {
		display: none;
	}
	.app-hero-actions {
		width: 100%;
	}
}

/* App-card shortstory redesign */
.short-items {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)) !important;
	gap: 14px;
}

.short-item {
	min-width: 0;
}

.short-in {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"main main"
		"main action";
	gap: 12px 14px;
	min-height: 0;
	padding: 16px 14px 14px;
	border-color: rgba(255,255,255,.085);
	background:
		linear-gradient(135deg, rgba(185,255,74,.08), transparent 34%),
		linear-gradient(180deg, rgba(34,38,43,.98), rgba(18,20,22,.98));
}

.short-in:hover {
	border-color: rgba(185,255,74,.42);
	background:
		linear-gradient(135deg, rgba(185,255,74,.13), transparent 38%),
		linear-gradient(180deg, rgba(38,43,47,.98), rgba(18,20,22,.98));
}

.short-link {
	grid-area: main;
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	gap: 13px;
	align-items: center;
	text-align: left;
	min-width: 0;
}

.short-img-holder {
	padding: 0;
}

.short-img {
	width: 92px;
	height: 92px;
	margin: 0;
	border-radius: 8px;
	border: 1px solid rgba(255,255,255,.1);
	box-shadow: 0 18px 36px rgba(0,0,0,.32);
}

.short-main {
	min-width: 0;
}

.short-title {
	height: auto;
	min-height: 0;
	margin: 0 0 7px;
	color: #f5f8f9;
	font-size: 17px;
	line-height: 1.2;
	white-space: nowrap;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
}

.short-desc {
	max-height: 42px;
	text-align: left;
	color: #aeb8bf;
	font-size: 12px;
	line-height: 1.45;
}

.short-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 10px;
	min-width: 0;
}

.short-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 8px;
	border: 1px solid rgba(255,255,255,.07);
	border-radius: 7px;
	background: rgba(255,255,255,.045);
	color: #d7dee2;
	font-size: 11px;
	font-weight: 800;
	white-space: nowrap;
}

.short-bottom {
	display: none !important;
}

.short-bottom .rating-meter,
.rating-meter {
	position: relative;
	display: inline-grid;
	grid-template-columns: 34px auto;
	grid-template-rows: auto auto;
	align-items: center;
	column-gap: 8px;
	width: auto;
	min-height: 38px;
	padding: 5px 10px 5px 6px;
	border: 1px solid rgba(185,255,74,.2);
	border-radius: 8px;
	background: rgba(185,255,74,.065);
}

.short-bottom .rating-label {
	grid-column: 2;
	color: #dce4e8;
	font-size: 10px;
	line-height: 1;
	text-transform: uppercase;
}

.short-bottom .rating-track {
	grid-column: 1;
	grid-row: 1 / 3;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background:
		conic-gradient(var(--accent) var(--rating-percent), rgba(255,255,255,.12) 0),
		rgba(255,255,255,.06);
	box-shadow: none;
}

.short-bottom .rating-track:after {
	content: "";
	position: absolute;
	inset: 6px;
	border-radius: 50%;
	background: #1a1d20;
}

.short-bottom .rating-fill {
	display: none;
}

.short-bottom .rating-value {
	grid-column: 2;
	min-width: 0;
	color: var(--accent);
	font-size: 13px;
	font-weight: 950;
	text-align: left;
}

.short-go {
	grid-area: action;
	align-self: end;
	display: grid;
	place-items: center;
	width: 44px;
	height: 34px;
	border: 1px solid rgba(185,255,74,.34);
	border-radius: 8px;
	background: rgba(185,255,74,.12);
	color: var(--accent);
	font-size: 17px;
}

.short-go:hover {
	background: var(--accent);
	color: #101214;
}

.short-label {
	top: 10px;
	right: 10px;
	left: auto;
	min-width: 38px;
	height: 22px;
	line-height: 22px;
	border-radius: 7px;
	box-shadow: 0 8px 18px rgba(0,0,0,.24);
}

@media (min-width: 1440px) {
	.short-items {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)) !important;
	}
}

@media (max-width: 620px) {
	.short-items {
		grid-template-columns: 1fr !important;
	}
	.short-in {
		grid-template-columns: 1fr;
		grid-template-areas:
			"main"
			"action";
	}
	.short-link {
		grid-template-columns: 76px minmax(0, 1fr);
	}
	.short-img {
		width: 76px;
		height: 76px;
	}
	.short-title {
		font-size: 16px;
	}
	.short-go {
		width: 100%;
		height: 42px;
	}
}

/* Program fullstory redesign */
.app-detail {
	display: grid;
	gap: 24px;
}

.app-detail-hero {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 260px;
	gap: 24px;
	padding: 28px;
	border: 1px solid rgba(185,255,74,.18);
	border-radius: 8px;
	background:
		linear-gradient(110deg, rgba(185,255,74,.12), transparent 38%),
		linear-gradient(180deg, rgba(34,38,43,.98), rgba(18,20,22,.98));
	box-shadow: 0 24px 60px rgba(0,0,0,.28);
}

.app-detail-hero:after {
	content: "APK";
	position: absolute;
	right: 22px;
	bottom: -20px;
	color: rgba(255,255,255,.035);
	font-size: clamp(110px, 16vw, 230px);
	font-weight: 950;
	line-height: .8;
	pointer-events: none;
}

.app-detail-main,
.app-detail-cta,
.app-detail-stats {
	position: relative;
	z-index: 2;
}

.app-detail-main {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 22px;
	align-items: center;
}

.app-detail-icon {
	position: relative;
	width: 132px;
	height: 132px;
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 8px;
	background: var(--panel-2);
	box-shadow: 0 22px 48px rgba(0,0,0,.35);
}

.app-detail-icon .short-label {
	top: -12px;
	right: auto;
	left: calc(100% + 10px);
	z-index: 4;
}

.app-detail-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	margin-bottom: 12px;
	padding: 0 10px;
	border: 1px solid rgba(185,255,74,.28);
	border-radius: 8px;
	background: rgba(185,255,74,.09);
	color: var(--accent);
	font-size: 11px;
	font-weight: 950;
	text-transform: uppercase;
}

.app-detail-title h1 {
	margin: 0;
	font-size: clamp(34px, 5vw, 64px);
	line-height: .95;
}

.app-detail-title h1 b {
	color: var(--accent);
	font-size: .7em;
}

.app-detail-subtitle {
	max-width: 680px;
	margin-top: 12px;
	color: #c6ced3;
	font-size: 15px;
	line-height: 1.55;
}

.app-detail-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.app-detail-tags span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 10px;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 8px;
	background: rgba(255,255,255,.045);
	color: #e4ebee;
	font-size: 12px;
	font-weight: 850;
}

.app-detail-cta {
	display: grid;
	align-content: center;
	gap: 10px;
}

.app-download-main,
.app-store-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	border-radius: 8px;
	font-weight: 950;
}

.app-download-main {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(185,255,74,.42);
	background:
		linear-gradient(135deg, rgba(185,255,74,.2), rgba(56,232,176,.08)),
		rgba(14,17,18,.88);
	color: #f4faf5;
	box-shadow: 0 18px 36px rgba(0,0,0,.26), 0 0 0 1px rgba(185,255,74,.08) inset;
}

.app-download-main:hover {
	background:
		linear-gradient(135deg, rgba(185,255,74,.28), rgba(56,232,176,.12)),
		rgba(18,22,23,.95);
	color: #fff;
	border-color: rgba(185,255,74,.68);
}

.app-download-main .fa {
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	background: var(--accent);
	color: #101214;
}

.app-store-link {
	border: 1px solid rgba(255,255,255,.1);
	background: rgba(255,255,255,.055);
	color: var(--text);
}

.app-store-link img {
	width: 24px;
	height: 24px;
}

.app-detail-share .share {
	justify-content: center;
}

.app-detail-stats {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 4px;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,.075);
}

.app-detail-stats li {
	min-width: 0;
	padding: 13px;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 8px;
	background: rgba(255,255,255,.04);
}

.app-detail-stats span {
	display: block;
	margin-bottom: 6px;
	color: var(--muted);
	font-size: 11px;
	font-weight: 900;
	text-transform: uppercase;
}

.app-detail-stats b,
.app-detail-stats a {
	color: #f2f6f7;
	font-size: 13px;
	font-weight: 900;
}

.app-detail-stats a {
	color: var(--accent);
}

.app-section {
	padding: 22px;
	border: 1px solid rgba(255,255,255,.075);
	background:
		linear-gradient(180deg, rgba(32,36,42,.88), rgba(24,27,31,.86));
	box-shadow: 0 18px 42px rgba(0,0,0,.2);
}

.app-section .sect-header {
	min-height: 0;
	padding-bottom: 14px;
}

.app-download-box {
	border-color: rgba(185,255,74,.18);
	background:
		linear-gradient(135deg, rgba(185,255,74,.11), transparent 38%),
		linear-gradient(180deg, rgba(32,36,42,.92), rgba(24,27,31,.9));
}

.app-download-box .download-buttons a,
.app-download-box .fdl-btn {
	min-height: 54px;
}

.app-download-box .download-buttons {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
	gap: 12px;
}

.app-download-box .download-buttons a {
	position: relative;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	justify-content: stretch;
	width: 100%;
	min-height: 76px;
	padding: 14px 18px 14px 14px;
	border-color: rgba(185,255,74,.4);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(185,255,74,.18), rgba(56,232,176,.07)),
		rgba(14,17,18,.9);
	color: #f4faf5;
	box-shadow: 0 16px 34px rgba(0,0,0,.24), 0 0 0 1px rgba(185,255,74,.08) inset;
	text-align: left;
	line-height: 1.25;
	white-space: normal;
}

.app-download-box .download-buttons a:before {
	content: "\f0ed";
	position: static;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 8px;
	background: var(--accent);
	color: #101214;
	font-family: "FontAwesome";
	font-size: 14px;
}

.app-download-box .download-buttons a:hover {
	border-color: rgba(185,255,74,.7);
	background:
		linear-gradient(135deg, rgba(185,255,74,.28), rgba(56,232,176,.12)),
		rgba(18,22,23,.95);
	color: #fff;
}

.app-download-box .download-buttons a b,
.app-download-box .download-buttons a strong {
	color: #fff;
}

.app-download-box .download-buttons a small,
.app-download-box .download-buttons a span {
	color: #b9c4ca;
}

.app-install {
	border-color: rgba(185,255,74,.16);
}

.install-steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.install-step {
	position: relative;
	min-height: 172px;
	padding: 16px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.075);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(185,255,74,.12), transparent 42%),
		rgba(255,255,255,.04);
}

.install-step:after {
	content: "";
	position: absolute;
	right: -22px;
	bottom: -22px;
	width: 78px;
	height: 78px;
	border-radius: 50%;
	background: rgba(185,255,74,.07);
}

.install-step span {
	display: grid;
	place-items: center;
	width: 38px;
	height: 30px;
	margin-bottom: 18px;
	border-radius: 8px;
	background: var(--accent);
	color: #101214;
	font-size: 12px;
	font-weight: 950;
}

.install-step b {
	display: block;
	margin-bottom: 8px;
	color: #f5f8f9;
	font-size: 16px;
	line-height: 1.2;
}

.install-step p {
	margin: 0;
	color: #aeb8bf;
	font-size: 13px;
	line-height: 1.55;
}

@media (max-width: 980px) {
	.app-detail-hero {
		grid-template-columns: 1fr;
	}
	.app-detail-cta {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.app-detail-share {
		grid-column: 1 / -1;
	}
	.app-detail-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.install-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.app-detail-hero,
	.app-section {
		padding: 16px;
	}
	.app-detail-main {
		grid-template-columns: 86px minmax(0, 1fr);
		gap: 14px;
	}
	.app-detail-icon {
		width: 86px;
		height: 86px;
	}
	.app-detail-icon .short-label {
		top: -8px;
		left: auto;
		right: -8px;
	}
	.app-detail-title h1 {
		font-size: 30px;
	}
	.app-detail-cta,
	.app-detail-stats {
		grid-template-columns: 1fr;
	}
	.install-steps {
		grid-template-columns: 1fr;
	}
	.install-step {
		min-height: 0;
	}
	.app-download-box .download-buttons a {
		grid-template-columns: 42px minmax(0, 1fr);
	}
}

/* Fullstory responsive cleanup */
.app-detail,
.app-detail * {
	min-width: 0;
}

.app-detail-title h1 {
	overflow-wrap: anywhere;
}

html.is-showfull-section,
html.is-showfull-section body {
	overflow-x: hidden;
}

.is-showfull-section .col-left,
.is-showfull-section .col-right {
	display: none !important;
}

.is-showfull-section .app-grid {
	grid-template-columns: minmax(0, 1fr) !important;
	grid-template-areas: "content" !important;
}

.is-showfull-section .content,
.is-showfull-section .pages {
	width: 100%;
	min-width: 0;
}

.is-showfull-section .pages {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

@media (max-width: 900px) {
	.is-showfull-section .wrap-center {
		width: calc(100% - 24px);
	}
	.app-detail-hero {
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 24px;
	}
	.app-detail-main {
		grid-template-columns: 118px minmax(0, 1fr);
		gap: 18px;
	}
	.app-detail-icon {
		width: 118px;
		height: 118px;
	}
	.app-detail-cta {
		grid-template-columns: 1fr;
	}
	.app-detail-share .share {
		justify-content: flex-start;
	}
	.app-detail-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.is-showfull-section .wrap-center {
		width: calc(100% - 16px);
	}
	.app-detail-hero {
		padding: 16px;
	}
	.app-detail-main {
		grid-template-columns: 96px minmax(0, 1fr);
		gap: 12px;
		align-items: start;
	}
	.app-detail-icon {
		width: 96px;
		height: 96px;
	}
	.app-detail-kicker {
		min-height: 24px;
		margin-bottom: 8px;
		padding: 0 8px;
		font-size: 10px;
	}
	.app-detail-title h1 {
		font-size: clamp(26px, 8vw, 34px);
		line-height: 1;
	}
	.app-detail-subtitle {
		display: none;
	}
	.app-detail-tags {
		gap: 6px;
		margin-top: 10px;
	}
	.app-detail-tags span {
		min-height: 26px;
		padding: 0 8px;
		font-size: 11px;
	}
	.app-download-main,
	.app-store-link {
		min-height: 48px;
	}
	.app-detail-share .share {
		justify-content: center;
	}
	.app-detail-stats {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 420px) {
	.app-detail-main {
		grid-template-columns: 78px minmax(0, 1fr);
	}
	.app-detail-icon {
		width: 78px;
		height: 78px;
	}
	.app-detail-title h1 {
		font-size: 24px;
	}
}

/* Clean DLE generated download link */
.app-download-box .download-buttons {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.app-download-box .download-buttons a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: min(100%, 360px);
	min-height: 58px;
	padding: 0 22px;
	font-size: 0 !important;
	line-height: 1;
	white-space: nowrap;
	text-align: center;
}

.app-download-box .download-buttons a > * {
	display: none !important;
}

.app-download-box .download-buttons a:before {
	content: "\f0ed";
	position: static;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	border-radius: 8px;
	background: var(--accent);
	color: #101214;
	font-family: "FontAwesome";
	font-size: 14px;
}

.app-download-box .download-buttons a:after {
	content: "Скачать APK";
	color: #f4faf5;
	font-size: 16px;
	font-weight: 950;
}

@media (max-width: 560px) {
	.app-download-box .download-buttons a {
		width: 100%;
	}
}
