/* ============================================================
   ПЕРЕМЕННЫЕ (палитра)
   ============================================================ */
:root {
	--primary: #5B8DEF;
	--primary-dark: #4A76C9;
	--primary-light: #E8F0FE;
	--accent: #FF8A65;
	--accent-dark: #E56A45;
	--success: #81C784;
	--bg-body: #F7F9FC;
	--bg-panel: #FFFFFF;
	--bg-sidebar: #F0F4FA;
	--bg-footer: #EDF1F7;
	--text-main: #2E3A59;
	--text-muted: #6B7A99;
	--text-heading: #1F2A44;
	--border-light: #E1E7F0;
	--border-medium: #C7D0E0;
	--link: #5B8DEF;
	--link-hover: #FF8A65;
}

/* ============================================================
   КАТАЛОГ — категории как цветные карточки
   ============================================================ */

.tables li {
	font-size: 20px;
	margin: 10px;
}
#seltable {
	font-size: 16px;
	margin: 5px;
}

/* ============================================================
   КАТЕГОРИИ — цветные карточки
   ============================================================ */
.cats {
	width: 100%;
	background: transparent;
	border-collapse: separate;
	border-spacing: 16px;
	table-layout: fixed;
}

.cats td {
	background: #F0F4FA;
	border: 0;
	border-radius: 16px;
	padding: 28px 24px;
	vertical-align: top;
	color: #ffffff;
	box-shadow: 0 4px 14px rgba(46,58,89,0.08);
	transition: all 0.25s ease;
	position: relative;
	overflow: hidden;
	font-size: 0;
}

.cats td:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 24px rgba(46,58,89,0.18);
}

/* ============================================================
   ЦВЕТА КАТЕГОРИЙ — 10 цветов, повторяются каждые 10 рядов
   ============================================================ */
.cats tr:nth-child(10n+1) td:nth-child(1) { background: linear-gradient(135deg, #5B8DEF 0%, #4A76C9 100%); }
.cats tr:nth-child(10n+1) td:nth-child(2) { background: linear-gradient(135deg, #FF8A65 0%, #E56A45 100%); }
.cats tr:nth-child(10n+2) td:nth-child(1) { background: linear-gradient(135deg, #81C784 0%, #4A9E5C 100%); }
.cats tr:nth-child(10n+2) td:nth-child(2) { background: linear-gradient(135deg, #B39DDB 0%, #8E7CC3 100%); }
.cats tr:nth-child(10n+3) td:nth-child(1) { background: linear-gradient(135deg, #4DB6AC 0%, #26A69A 100%); }
.cats tr:nth-child(10n+3) td:nth-child(2) { background: linear-gradient(135deg, #FFB74D 0%, #FB8C00 100%); }
.cats tr:nth-child(10n+4) td:nth-child(1) { background: linear-gradient(135deg, #F06292 0%, #EC407A 100%); }
.cats tr:nth-child(10n+4) td:nth-child(2) { background: linear-gradient(135deg, #7986CB 0%, #5C6BC0 100%); }
.cats tr:nth-child(10n+5) td:nth-child(1) { background: linear-gradient(135deg, #FF7F50 0%, #E64A19 100%); }
.cats tr:nth-child(10n+5) td:nth-child(2) { background: linear-gradient(135deg, #80CBC4 0%, #009688 100%); }
.cats tr:nth-child(10n+6) td:nth-child(1) { background: linear-gradient(135deg, #FFCA28 0%, #FFA000 100%); }
.cats tr:nth-child(10n+6) td:nth-child(2) { background: linear-gradient(135deg, #CE93D8 0%, #AB47BC 100%); }
.cats tr:nth-child(10n+7) td:nth-child(1) { background: linear-gradient(135deg, #4FC3F7 0%, #0288D1 100%); }
.cats tr:nth-child(10n+7) td:nth-child(2) { background: linear-gradient(135deg, #AED581 0%, #689F38 100%); }
.cats tr:nth-child(10n+8) td:nth-child(1) { background: linear-gradient(135deg, #EF5350 0%, #C62828 100%); }
.cats tr:nth-child(10n+8) td:nth-child(2) { background: linear-gradient(135deg, #3949AB 0%, #1A237E 100%); }
.cats tr:nth-child(10n+9) td:nth-child(1) { background: linear-gradient(135deg, #FFD54F 0%, #FFA000 100%); }
.cats tr:nth-child(10n+9) td:nth-child(2) { background: linear-gradient(135deg, #9575CD 0%, #5E35B1 100%); }
.cats tr:nth-child(10n+10) td:nth-child(1) { background: linear-gradient(135deg, #26C6DA 0%, #00838F 100%); }
.cats tr:nth-child(10n+10) td:nth-child(2) { background: linear-gradient(135deg, #A1887F 0%, #5D4037 100%); }

/* --- Декоративный круг --- */
.cats td::after {
	content: '';
	position: absolute;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: rgba(255,255,255,0.08);
	top: -60px;
	right: -50px;
	pointer-events: none;
}

/* --- Ссылки и текст --- */
.cats td a,
.cats td a b {
	color: #ffffff;
	text-decoration: none;
	font-size: 20px;
	font-weight: 700;
	display: block;
	text-shadow: 0 2px 4px rgba(0,0,0,0.15);
	line-height: 1.2;
	position: relative;
	z-index: 1;
}

.cats td a:hover,
.cats td a:hover b {
	color: #ffffff;
	text-decoration: none;
	opacity: 0.9;
}

.cat { padding: 0; }

.cats td > a:empty {
	display: none;
}
.cats td .small {
	font-size: 13px;
	color: rgba(255,255,255,0.85);
	margin-top: 8px;
	position: relative;
	z-index: 1;
}

/* --- Совместимость со старыми классами --- */
.catname1 {
	font-size: 20px;
	font-weight: 700;
	color: #ffffff;
	padding: 0;
	line-height: 1.2;
}
.catname2 {
	font-size: 14px;
	color: rgba(255,255,255,0.9);
	margin-top: 6px;
	line-height: 1.4;
}
.catinfo {
	font-size: 13px;
	color: rgba(255,255,255,0.85);
	margin-top: 12px;
}
.subcat {
	font-size: 90%;
	color: rgba(255,255,255,0.9);
}

/* ============================================================
   НОМЕРА КАТЕГОРИЙ — 01..20, повторяются каждые 10 рядов
   ============================================================ */
.cats td::before {
	content: '';
	position: absolute;
	top: 16px;
	right: 20px;
	font-size: 48px;
	font-weight: 900;
	color: rgba(255,255,255,0.25);
	line-height: 1;
	pointer-events: none;
	z-index: 0;
}
.cats tr:nth-child(10n+1) td:nth-child(1)::before { content: '01'; }
.cats tr:nth-child(10n+1) td:nth-child(2)::before { content: '02'; }
.cats tr:nth-child(10n+2) td:nth-child(1)::before { content: '03'; }
.cats tr:nth-child(10n+2) td:nth-child(2)::before { content: '04'; }
.cats tr:nth-child(10n+3) td:nth-child(1)::before { content: '05'; }
.cats tr:nth-child(10n+3) td:nth-child(2)::before { content: '06'; }
.cats tr:nth-child(10n+4) td:nth-child(1)::before { content: '07'; }
.cats tr:nth-child(10n+4) td:nth-child(2)::before { content: '08'; }
.cats tr:nth-child(10n+5) td:nth-child(1)::before { content: '09'; }
.cats tr:nth-child(10n+5) td:nth-child(2)::before { content: '10'; }
.cats tr:nth-child(10n+6) td:nth-child(1)::before { content: '11'; }
.cats tr:nth-child(10n+6) td:nth-child(2)::before { content: '12'; }
.cats tr:nth-child(10n+7) td:nth-child(1)::before { content: '13'; }
.cats tr:nth-child(10n+7) td:nth-child(2)::before { content: '14'; }
.cats tr:nth-child(10n+8) td:nth-child(1)::before { content: '15'; }
.cats tr:nth-child(10n+8) td:nth-child(2)::before { content: '16'; }
.cats tr:nth-child(10n+9) td:nth-child(1)::before { content: '17'; }
.cats tr:nth-child(10n+9) td:nth-child(2)::before { content: '18'; }
.cats tr:nth-child(10n+10) td:nth-child(1)::before { content: '19'; }
.cats tr:nth-child(10n+10) td:nth-child(2)::before { content: '20'; }

/* ============================================================
   ТОВАРЫ / МАТЕРИАЛЫ
   ============================================================ */
.itemname {
	padding: 0 8px 10px 8px;
	text-align: center;
}
.itemname h1 {
	font-size: 20px;
	font-weight: 700;
	display: inline;
	color: #1F2A44;
}
h2 {
	font-size: 15px;
	margin: 0;
	color: #1F2A44;
}
.items {
	width: 100%;
	border-spacing: 16px;
}
.item {
	vertical-align: top;
	background: #ffffff;
	border: 1px solid #E1E7F0;
	border-radius: 16px;
	padding: 12px;
	box-shadow: 0 2px 6px rgba(46,58,89,0.05);
	transition: all 0.2s ease;
}
.item:hover {
	box-shadow: 0 8px 20px rgba(46,58,89,0.12);
	transform: translateY(-2px);
	border-color: #5B8DEF;
}
.itemstab {
	width: 100%;
	border-collapse: collapse;
}
.itemstab th {
	color: #1F2A44;
	text-align: left;
	vertical-align: top;
	padding: 5px;
}
.itemstab td {
	font-size: 15px;
	vertical-align: top;
	padding: 5px;
	color: #2E3A59;
}
.hot { background-color: #FFF4E5; }
.itemth0 { padding-top: 15px !important; }
.itemth1 { padding-top: 10px !important; }
.itemth2 { padding-top: 5px !important; }
.item0 { font-size: 100% !important; }
.item1 {
	font-size: 84% !important;
	padding-left: 35px !important;
}
.item2 {
	font-size: 68% !important;
	padding-left: 65px !important;
}
.itemtitle {
	font-size: 120%;
	padding-right: 10px;
	color: #1F2A44;
	font-weight: 700;
}

/* ============================================================
   ФОРМЫ И СЛУЖЕБНЫЕ ЭЛЕМЕНТЫ
   ============================================================ */
.submit input, .submit select { margin: 0; }
.tipdiv {
	white-space: nowrap;
	background: #FFF4E5;
	border: 1px solid #FF8A65;
	border-radius: 8px;
	padding-right: 20px;
	margin-top: 4px;
	position: absolute;
}
#tips a {
	font-size: 13px;
	color: #6B7A99;
	text-decoration: none;
	padding: 2px 4px;
	cursor: pointer;
	display: block;
}
#tips a:hover {
	color: #4A76C9;
	text-decoration: none;
	background: #E8F0FE;
}
.err {
	color: #8A3E1F !important;
	background: #FFE0D3 !important;
}
.find { background: #FFF4E5 !important; }
.prefind { color: #6B7A99 !important; }
.jssel {
	width: 16px;
	background-color: #F0F4FA;
	background-position: center;
	vertical-align: top;
	cursor: pointer;
}
.switch {
	font-size: 90%;
	margin: 2px;
}
.switch input {
	vertical-align: middle;
	border: 0;
}
.relwarn {
	font-size: 12px;
	background: #FFF4E5;
	border: 1px solid #FF8A65;
	border-radius: 8px;
	padding: 8px;
	color: #8A3E1F;
}
.relwarn a { font-weight: bold; color: #E56A45; }
.relwarn div { padding: 3px 0 3px 30px; }
.relwarn span { font-size: 90%; }
.relwarn input {
	vertical-align: middle;
	border: 0;
	margin-left: -25px;
}
.access0 {
	border-left: 3px solid #FFB74D;
	padding-left: 8px;
}
.access1 {
	border-left: 3px solid #E53935;
	padding-left: 8px;
}
#contacts { padding: 0 0 10px 0; }
#contacts input {
	width: 200px;
	margin: 2px 0 4px 0;
}
#uploads img { vertical-align: middle; }
#files div { padding: 0 0 5px 0; }
#files input { margin: 2px 0 4px 0; }
#opt { padding-left: 10px; }
.opts {
	text-align: right;
	float: right;
	color: #6B7A99;
}
.opts a {
	color: #5B8DEF;
	text-decoration: none;
}
.opts a:hover {
	color: #FF8A65;
}
#expand a {
	text-decoration: none;
	display: inline-block;
	width: 30%;
	padding: 4px;
}
#search { padding: 4px; }
.textinlist {
	max-height: 300px;
	overflow-y: auto;
}
.multselect {
	max-height: 250px;
	overflow: auto;
	font-family: 'Segoe UI', Tahoma, sans-serif;
	color: #2E3A59;
	font-size: 13px;
	background-color: #ffffff;
	background-position: 98% 5px;
	border: 1px solid #E1E7F0;
	border-radius: 8px;
	padding: 4px;
}
.multselect input {
	border: 0;
	background: none;
	margin: 4px 0 4px 8px;
}

/* ============================================================
   ЗАНЯТИЯ — оформление
   ============================================================ */

.lesson {
	font-family: 'Segoe UI', Tahoma, sans-serif;
	color: #2E3A59;
	max-width: 900px;
	margin: 0 auto;
	padding: 12px;
	font-size: 16px;
	line-height: 1.6;
}

.lesson-title {
	font-size: 30px;
	font-weight: 900;
	line-height: 1.15;
	margin: 0 0 10px;
	letter-spacing: -0.3px;
}

.section-title {
	font-size: 21px;
	font-weight: 800;
	color: #1F2A44;
	margin: 0 0 12px;
}

.lesson-header {
	background: linear-gradient(135deg, #B39DDB 0%, #8E7CC3 100%);
	border-radius: 16px;
	padding: 24px 22px;
	color: #fff;
	box-shadow: 0 6px 20px rgba(142,124,195,0.25);
	margin-bottom: 16px;
}
.lesson-header .meta {
	font-size: 14px;
	font-weight: 600;
	opacity: 0.85;
	margin-bottom: 6px;
	letter-spacing: 0.5px;
}
.lesson-header h1 {
	font-size: 30px;
	font-weight: 900;
	line-height: 1.15;
	margin: 0 0 10px;
	letter-spacing: -0.3px;
}
.lesson-header .info {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	font-size: 15px;
	color: rgba(255,255,255,0.92);
}

.lesson-goal {
	background: #F7F9FC;
	border-left: 5px solid #5B8DEF;
	border-radius: 0 12px 12px 0;
	padding: 16px 20px;
	margin-bottom: 16px;
}
.lesson-goal .label {
	font-size: 14px;
	font-weight: 700;
	color: #5B8DEF;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 6px;
}
.lesson-goal .text {
	font-size: 16px;
	line-height: 1.55;
	color: #2E3A59;
}

.lesson h2 {
	font-size: 21px;
	font-weight: 800;
	color: #1F2A44;
	margin: 0 0 12px;
}

.task-card {
	background: #fff;
	border: 1px solid #E1E7F0;
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 10px;
}
.task-card:last-child { margin-bottom: 0; }
.task-card .title {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 8px;
}
.task-card.blue .title { color: #5B8DEF; }
.task-card.orange .title { color: #FF8A65; }
.task-card.green .title { color: #81C784; }
.task-card ul {
	margin: 0;
	padding-left: 22px;
	font-size: 16px;
	line-height: 1.6;
	color: #2E3A59;
}

.equip-block {
	border-radius: 12px;
	padding: 16px 18px;
	color: #fff;
	margin-bottom: 10px;
}
.equip-block:last-child { margin-bottom: 0; }
.equip-block.orange { background: linear-gradient(135deg, #FF8A65 0%, #E56A45 100%); }
.equip-block.green { background: linear-gradient(135deg, #81C784 0%, #4A9E5C 100%); }
.equip-block.purple { background: linear-gradient(135deg, #B39DDB 0%, #8E7CC3 100%); }
.equip-block .title {
	font-size: 15px;
	font-weight: 700;
	opacity: 0.95;
	margin-bottom: 8px;
}
.equip-block ul {
	margin: 0;
	padding-left: 22px;
	font-size: 16px;
	line-height: 1.6;
	color: rgba(255,255,255,0.95);
}

.step {
	background: #fff;
	border: 1px solid #E1E7F0;
	border-radius: 12px;
	padding: 18px;
	margin-bottom: 12px;
	box-shadow: 0 2px 8px rgba(46,58,89,0.05);
}
.step-header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
}
.step-num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	color: #fff;
	font-size: 17px;
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.step-num.purple { background: #B39DDB; }
.step-num.orange { background: #FF8A65; }
.step-num.green { background: #81C784; }
.step-title {
	font-size: 17px;
	font-weight: 700;
	color: #1F2A44;
}
.step-time {
	font-size: 13px;
	color: #6B7A99;
}
.step-body {
	font-size: 16px;
	line-height: 1.6;
	color: #2E3A59;
}
.step-body p { margin: 0 0 10px; }
.step-body p:last-child { margin-bottom: 0; }

.step-subtitle {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 6px;
}
.step-subtitle.orange { color: #FF8A65; }
.step-subtitle.purple { color: #8E7CC3; }

.callout {
	border-radius: 8px;
	padding: 12px 16px;
	margin-bottom: 14px;
}
.callout:last-child { margin-bottom: 0; }
.callout-title {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 5px;
}
.callout.blue { background: #F7F9FC; }
.callout.blue .callout-title { color: #5B8DEF; }
.callout.orange { background: #FFF4E5; }
.callout.orange .callout-title { color: #E56A45; }
.callout.purple { background: #F7F9FC; }
.callout.purple .callout-title { color: #8E7CC3; }
.callout.green { background: #E8F5E9; }
.callout.green .callout-title { color: #4A9E5C; }
.callout ul, .callout ol {
	margin: 0;
	padding-left: 22px;
	font-size: 15px;
	line-height: 1.55;
	color: #2E3A59;
}

.fizkult {
	background: #F7F9FC;
	border-radius: 8px;
	padding: 14px 18px;
	margin-bottom: 14px;
	font-style: italic;
	font-size: 16px;
	line-height: 1.7;
	color: #2E3A59;
}
.fizkult .hint {
	color: #6B7A99;
	font-style: normal;
}

.reflection {
	background: linear-gradient(135deg, #B39DDB 0%, #8E7CC3 100%);
	border-radius: 14px;
	padding: 18px 22px;
	color: #fff;
	margin-bottom: 16px;
}
.reflection .title {
	font-size: 14px;
	font-weight: 700;
	opacity: 0.95;
	margin-bottom: 10px;
}
.reflection ul {
	margin: 0;
	padding-left: 22px;
	font-size: 16px;
	line-height: 1.7;
	color: rgba(255,255,255,0.95);
}

.homework {
	background: #FFF4E5;
	border: 2px dashed #FF8A65;
	border-radius: 14px;
	padding: 18px 22px;
}
.homework .title {
	font-size: 14px;
	font-weight: 700;
	color: #E56A45;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 8px;
}
.homework .text {
	font-size: 16px;
	line-height: 1.6;
	color: #2E3A59;
}

/* ============================================================
   МАТЕРИАЛЫ В КАТЕГОРИИ — цветные карточки
   ============================================================ */

.items td.item {
	background: #F0F4FA;
	border: 0;
	border-radius: 16px;
	padding: 28px 24px;
	vertical-align: top;
	color: #ffffff;
	box-shadow: 0 4px 14px rgba(46,58,89,0.08);
	transition: all 0.25s ease;
	position: relative;
	overflow: hidden;
}

.items td.item:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 24px rgba(46,58,89,0.18);
}

/* ============================================================
   ЦВЕТА МАТЕРИАЛОВ — 10 цветов, повторяются каждые 10 рядов
   ============================================================ */
.items tr:nth-child(10n+1) td:nth-child(1) { background: linear-gradient(135deg, #5B8DEF 0%, #4A76C9 100%); }
.items tr:nth-child(10n+1) td:nth-child(2) { background: linear-gradient(135deg, #FF8A65 0%, #E56A45 100%); }
.items tr:nth-child(10n+2) td:nth-child(1) { background: linear-gradient(135deg, #81C784 0%, #4A9E5C 100%); }
.items tr:nth-child(10n+2) td:nth-child(2) { background: linear-gradient(135deg, #B39DDB 0%, #8E7CC3 100%); }
.items tr:nth-child(10n+3) td:nth-child(1) { background: linear-gradient(135deg, #4DB6AC 0%, #26A69A 100%); }
.items tr:nth-child(10n+3) td:nth-child(2) { background: linear-gradient(135deg, #FFB74D 0%, #FB8C00 100%); }
.items tr:nth-child(10n+4) td:nth-child(1) { background: linear-gradient(135deg, #F06292 0%, #EC407A 100%); }
.items tr:nth-child(10n+4) td:nth-child(2) { background: linear-gradient(135deg, #7986CB 0%, #5C6BC0 100%); }
.items tr:nth-child(10n+5) td:nth-child(1) { background: linear-gradient(135deg, #FF7F50 0%, #E64A19 100%); }
.items tr:nth-child(10n+5) td:nth-child(2) { background: linear-gradient(135deg, #80CBC4 0%, #009688 100%); }
.items tr:nth-child(10n+6) td:nth-child(1) { background: linear-gradient(135deg, #FFCA28 0%, #FFA000 100%); }
.items tr:nth-child(10n+6) td:nth-child(2) { background: linear-gradient(135deg, #CE93D8 0%, #AB47BC 100%); }
.items tr:nth-child(10n+7) td:nth-child(1) { background: linear-gradient(135deg, #4FC3F7 0%, #0288D1 100%); }
.items tr:nth-child(10n+7) td:nth-child(2) { background: linear-gradient(135deg, #AED581 0%, #689F38 100%); }
.items tr:nth-child(10n+8) td:nth-child(1) { background: linear-gradient(135deg, #EF5350 0%, #C62828 100%); }
.items tr:nth-child(10n+8) td:nth-child(2) { background: linear-gradient(135deg, #3949AB 0%, #1A237E 100%); }
.items tr:nth-child(10n+9) td:nth-child(1) { background: linear-gradient(135deg, #FFD54F 0%, #FFA000 100%); }
.items tr:nth-child(10n+9) td:nth-child(2) { background: linear-gradient(135deg, #9575CD 0%, #5E35B1 100%); }
.items tr:nth-child(10n+10) td:nth-child(1) { background: linear-gradient(135deg, #26C6DA 0%, #00838F 100%); }
.items tr:nth-child(10n+10) td:nth-child(2) { background: linear-gradient(135deg, #A1887F 0%, #5D4037 100%); }

/* Декоративный круг */
.items td.item::after {
	content: '';
	position: absolute;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: rgba(255,255,255,0.08);
	top: -60px;
	right: -50px;
	pointer-events: none;
}

/* ============================================================
   НОМЕРА МАТЕРИАЛОВ — 01..20, повторяются каждые 10 рядов
   ============================================================ */
.items td.item::before {
	content: '';
	position: absolute;
	top: 16px;
	right: 20px;
	font-size: 48px;
	font-weight: 900;
	color: rgba(255,255,255,0.25);
	line-height: 1;
	pointer-events: none;
	z-index: 0;
}
.items tr:nth-child(10n+1) td:nth-child(1)::before { content: '01'; }
.items tr:nth-child(10n+1) td:nth-child(2)::before { content: '02'; }
.items tr:nth-child(10n+2) td:nth-child(1)::before { content: '03'; }
.items tr:nth-child(10n+2) td:nth-child(2)::before { content: '04'; }
.items tr:nth-child(10n+3) td:nth-child(1)::before { content: '05'; }
.items tr:nth-child(10n+3) td:nth-child(2)::before { content: '06'; }
.items tr:nth-child(10n+4) td:nth-child(1)::before { content: '07'; }
.items tr:nth-child(10n+4) td:nth-child(2)::before { content: '08'; }
.items tr:nth-child(10n+5) td:nth-child(1)::before { content: '09'; }
.items tr:nth-child(10n+5) td:nth-child(2)::before { content: '10'; }
.items tr:nth-child(10n+6) td:nth-child(1)::before { content: '11'; }
.items tr:nth-child(10n+6) td:nth-child(2)::before { content: '12'; }
.items tr:nth-child(10n+7) td:nth-child(1)::before { content: '13'; }
.items tr:nth-child(10n+7) td:nth-child(2)::before { content: '14'; }
.items tr:nth-child(10n+8) td:nth-child(1)::before { content: '15'; }
.items tr:nth-child(10n+8) td:nth-child(2)::before { content: '16'; }
.items tr:nth-child(10n+9) td:nth-child(1)::before { content: '17'; }
.items tr:nth-child(10n+9) td:nth-child(2)::before { content: '18'; }
.items tr:nth-child(10n+10) td:nth-child(1)::before { content: '19'; }
.items tr:nth-child(10n+10) td:nth-child(2)::before { content: '20'; }

/* Ссылки и заголовки внутри карточек */
.items td.item h2,
.items td.item h2 a {
	color: #ffffff !important;
	text-decoration: none;
	font-size: 20px;
	font-weight: 700;
	text-shadow: 0 2px 4px rgba(0,0,0,0.15);
	line-height: 1.2;
	position: relative;
	z-index: 1;
	margin: 0;
}

.items td.item h2 a:hover {
	color: #ffffff;
	opacity: 0.9;
}

/* Скрываем пустые элементы */
.items td.item .opts,
.items td.item .small,
.items td.item .left- {
	position: relative;
	z-index: 1;
}
.items td.item .small:empty,
.items td.item .left-:empty {
	display: none;
}