/* ============================================================
   НАСТРОЙКИ ОТОБРАЖЕНИЯ ШАПКИ. on - показывать/включено, off - скрывать/выключено.
   ============================================================ */
:root{
	/* Вкладки вверху страницы. Если скрыть «Расписание», index.htm сама откроет
	   первую из видимых вкладок и не покажет описания скрытых. */
	--tab-index:  on; /* Расписание */
	--tab-day:    on; /* Один день  */
	--tab-week:   on; /* Неделя     */
	--tab-main:   on; /* Основное   */
	--tab-totals: on; /* Итоги      */
 
	/* Разделы под вкладками */
	--subtab-groups:   on; /* Группы */
	--subtab-teachers: on; /* Преподаватели */
	--subtab-rooms:    on; /* Аудитории */
 
	/* Кнопки в правом верхнем углу шапки */
	--show-blur-btn:  on; /* Прозрачность */
	--show-print-btn: on; /* Печать */
 
	/* Прозрачность и размытие шапки при прокрутке */
	--blur-default: on;
}


:root{
	--blue-700:    #1F4FC0;
	--blue-500:    #5983E5;
	--blue-200:    #D9E6F7;
	--blue-150:    #E4EAF3;
	--blue-100:    #EAF1FB;
	--blue-50:     #F4F8FC;
	--ink:         #1F2967;
	--ink-dark:    #0F172A;
	--muted:       #455770;
	--muted-2:     #70839E;
	--white:       #FFFFFF;
	--red:         #E11D48;
	--border:      var(--blue-150);
	--shadow:      0 10px 30px rgba(31,41,55,.1);
	--shadow-tabs: 0 2px 8px rgba(31,41,55,.1);
	
	--print-accent:       var(--blue-700);
	--print-accent-hover: var(--blue-500);
	--print-track:        var(--blue-200);
	--print-thumb:        var(--white);
	
	--print-ink:       #000000;
	--print-paper:     #FFFFFF;
	--print-header-bg: #E6E6E6;
}

@view-transition{
	navigation: auto;
}

::view-transition-old(root),
::view-transition-new(root){
	animation-duration: 0s;
}

*{ box-sizing: border-box; }

html{ -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body{
	font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--ink);
	margin: 0;
}

a       { color: var(--blue-700); text-decoration: none; }
a:hover { text-decoration: underline; }

div.lrg{
	max-width: 1600px; 
	margin: 0 auto;
	background: var(--white);	
	padding: 16px;
}

div.lrg2{ width: auto !important; }

.brand{
	display: flex;
	gap: 10px;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.01em;
	background-image: linear-gradient(90deg, var(--ink-dark) 0%, var(--blue-700) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.brand:hover{ text-decoration: none; }

.brand .ico{
	width: 32px;
	height: 32px;
	border-radius: 12px;
	background: var(--blue-100);
	color: var(--ink);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.brand .ico svg{ width: 16px; height: 16px; }

.top-toggles{
	display: flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
}

.toggle-btn{
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	border: none;
	border-radius: 12px;
	background: none;
	color: var(--muted);
	font-family: inherit;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	flex-shrink: 0;
}
.toggle-btn:hover{ color: var(--blue-700); background: var(--blue-100); }
.toggle-btn svg{ width: 16px; height: 16px; flex-shrink: 0; }

.toggle-btn .ico-off{ display: none; }
.toggle-btn.active{
	color: var(--blue-700);
	background: var(--blue-100);
}
.toggle-btn.active .ico-on{ display: none; }
.toggle-btn.active .ico-off{ display: block; }

html.no-blur .head-inner{
	background: var(--white);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}
html.no-blur .print-panel::before{
	background: var(--white);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

html.hide-print-btn .print-menu{
	display: none;
}

.sticky-head{
	position: sticky;
	top: 0;
	z-index: 100;
	border-bottom: 1px solid var(--border);
}

.head-inner{
	position: relative;
	max-width: 1600px;
	margin: 0 auto;
	padding: 8px;
	background: linear-gradient(to bottom,
		var(--white) 0, var(--white) 10px,
		rgba(255,255,255,.6) 40px, rgba(255,255,255,.6) 100%);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.top-head{
	max-width: 1600px;
	margin: 0 auto;
	padding: 16px 16px 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

nav.tabs{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
	background: var(--blue-100);
	border-radius: 16px;
	padding: 6px;
	margin: 0;
}

nav.tabs a, nav.tabs span.cur{
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 8px 12px;
	border-radius: 12px;
	font-weight: 600;
	font-size: 14px;
	color: var(--muted);
	white-space: nowrap;
}
nav.tabs svg{ width: 16px; height: 16px; flex-shrink: 0; }

nav.tabs a:hover{
	color: var(--blue-700);
	text-decoration: none;
}

nav.tabs span.cur{
	background: var(--white);
	color: var(--blue-700);
	box-shadow: var(--shadow-tabs);
}

/* Показ/скрытие вкладок задаётся переменными --tab-* в начале файла */
@container style(--tab-index: off){
	nav.tabs a[data-tab="index"], nav.tabs span.cur[data-tab="index"]{ display: none; }
}
@container style(--tab-day: off){
	nav.tabs a[data-tab="day"], nav.tabs span.cur[data-tab="day"]{ display: none; }
}
@container style(--tab-week: off){
	nav.tabs a[data-tab="week"], nav.tabs span.cur[data-tab="week"]{ display: none; }
}
@container style(--tab-main: off){
	nav.tabs a[data-tab="main"], nav.tabs span.cur[data-tab="main"]{ display: none; }
}
@container style(--tab-totals: off){
	nav.tabs a[data-tab="totals"], nav.tabs span.cur[data-tab="totals"]{ display: none; }
}

/* Раздел «Группы / Преподаватели / Аудитории»: то же самое, через --subtab-* и data-subtab. */
@container style(--subtab-groups: off){
	.subnav a[data-subtab="groups"], .subnav span.cur[data-subtab="groups"]{ display: none; }
}
@container style(--subtab-teachers: off){
	.subnav a[data-subtab="teachers"], .subnav span.cur[data-subtab="teachers"]{ display: none; }
}
@container style(--subtab-rooms: off){
	.subnav a[data-subtab="rooms"], .subnav span.cur[data-subtab="rooms"]{ display: none; }
}

/* Кнопки «Прозрачность» и «Печать» в шапке */
@container style(--show-blur-btn: off){
	#toggleBlurBtn{ display: none; }
}
@container style(--show-print-btn: off){
	#toggleHidePrintBtn,
	.print-menu{ display: none; }
}
@container style(--show-blur-btn: off) and style(--show-print-btn: off){
	.top-toggles{ display: none; }
}

.print-btn{
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	margin: 0 0 16px;
	border: none;
	border-radius: 12px;
	background: none;
	color: var(--muted);
	font-family: inherit;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	flex-shrink: 0;
}
.print-btn:hover{ color: var(--blue-700); }
.print-btn svg{ width: 16px; height: 16px; flex-shrink: 0; }
.print-btn .lbl{ text-align: center; }

.print-menu{
	position: absolute;
	top: 100%;
	right: max(28px, calc(50% - 772px));
	margin-top: 12px;
	width: max-content;
	transition: width .3s cubic-bezier(.4,0,.2,1);
}
.print-menu .print-btn{
	margin: 0;
	width: 100%;
	position: relative;
	z-index: 2;
}
.print-btn .chev{ transition: transform .3s ease; }
.print-btn.open .chev{ transform: rotate(180deg); }

.print-panel{
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 1;
	height: 0;
	/* overflow не ставить: ::before намеренно выходит за границы бокса */
	transition: height .3s cubic-bezier(.4,0,.2,1);
}

.print-panel::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: calc(-1 * var(--print-btn-h, 35px));
	bottom: 0;
	z-index: -1;
	background: rgba(255,255,255,.5);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border: 1px solid var(--border);
	border-radius: 12px;
	box-shadow: var(--shadow-tabs);
}

.print-panel-inner{
	height: 100%;
	overflow: hidden;
	border-radius: 12px;
}
.print-panel-content{
	width: 250px;
	padding: 8px;
}

.print-opt{
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 4px;
	font-size: 13px;
	font-weight: 600;
	color: var(--muted);
	cursor: pointer;
}
.print-opt:hover{ color: var(--blue-700); }

.print-opt input[type="checkbox"]{
	appearance: none;
	-webkit-appearance: none;
	width: 16px;
	height: 16px;
	margin: 0;
	flex-shrink: 0;
	border: 2px solid var(--print-track);
	border-radius: 4px;
	background: var(--white);
	cursor: pointer;
	position: relative;
	transition: background-color .15s ease, border-color .15s ease;
}
.print-opt input[type="checkbox"]:hover{
	border-color: var(--print-accent-hover);
}
.print-opt input[type="checkbox"]:checked{
	background: var(--print-accent);
	border-color: var(--print-accent);
}
.print-opt input[type="checkbox"]:checked:hover{
	background: var(--print-accent-hover);
	border-color: var(--print-accent-hover);
}
.print-opt input[type="checkbox"]:focus-visible{
	outline: 2px solid var(--print-accent);
	outline-offset: 1px;
}
.print-opt input[type="checkbox"]:checked::after{
	content: "";
	position: absolute;
	left: 3px;
	top: 0px;
	width: 4px;
	height: 8px;
	border: solid var(--white);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.print-margins{
	margin-top: 6px;
	padding: 8px 4px 4px;
	border-top: 1px solid var(--border);
}
.print-margins-label{
	display: block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--muted);
}
.print-margins-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}
.print-margins-grid label{
	display: flex;
	flex-direction: column;
	gap: 3px;
	font-size: 12px;
	font-weight: 600;
	color: var(--muted-2);
}
.print-margins-grid input{
	font-family: inherit;
	font-size: 13px;
	color: var(--ink);
	padding: 5px 7px;
	border: 1px solid var(--border);
	border-radius: 8px;
	width: 100%;
}
.print-margins-grid input:focus{ outline: 2px solid var(--blue-200); border-color: var(--blue-700); }

.print-scale{
	margin-top: 6px;
	padding: 8px 4px 4px;
	border-top: 1px solid var(--border);
}
.print-scale-row{
	display: flex;
	align-items: center;
	gap: 6px;
}
.print-scale-row label{
	font-size: 12px;
	font-weight: 700;
	color: var(--muted);
	flex-shrink: 0;
}
.print-scale-row input[type="range"]{
	flex: 1 1 auto;
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	height: 6px;
	border-radius: 3px;
	background: var(--print-track);
	outline: none;
	cursor: pointer;
}
.print-scale-row input[type="range"]::-webkit-slider-runnable-track{
	height: 6px;
	border-radius: 3px;
	background: linear-gradient(to right,
		var(--print-accent) 0%, var(--print-accent) var(--print-scale-pct, 33%),
		var(--print-track) var(--print-scale-pct, 33%), var(--print-track) 100%);
}
.print-scale-row input[type="range"]::-webkit-slider-thumb{
	appearance: none;
	-webkit-appearance: none;
	width: 16px;
	height: 16px;
	margin-top: -5px;
	border-radius: 50%;
	background: var(--print-thumb);
	border: 2px solid var(--print-accent);
	cursor: pointer;
	transition: border-color .15s ease;
}
.print-scale-row input[type="range"]:hover::-webkit-slider-thumb{
	border-color: var(--print-accent-hover);
}
.print-scale-row input[type="range"]::-moz-range-track{
	height: 6px;
	border-radius: 3px;
	background: var(--print-track);
}
.print-scale-row input[type="range"]::-moz-range-progress{
	height: 6px;
	border-radius: 3px;
	background: var(--print-accent);
}
.print-scale-row input[type="range"]::-moz-range-thumb{
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--print-thumb);
	border: 2px solid var(--print-accent);
	cursor: pointer;
	transition: border-color .15s ease;
}
.print-scale-row input[type="range"]:hover::-moz-range-thumb{
	border-color: var(--print-accent-hover);
}
.print-scale-row input[type="range"]:focus-visible::-webkit-slider-thumb,
.print-scale-row input[type="range"]:focus-visible::-moz-range-thumb{
	outline: 2px solid var(--print-accent);
	outline-offset: 2px;
}
.print-scale-row input[type="number"]{
	width: 56px;
	font-family: inherit;
	font-size: 13px;
	color: var(--ink);
	padding: 5px 6px;
	border: 1px solid var(--border);
	border-radius: 8px;
	text-align: right;
}
.print-scale-row input[type="number"]:focus{ outline: 2px solid var(--blue-200); border-color: var(--blue-700); }
.print-scale-row .print-scale-unit{
	font-size: 13px;
	color: var(--muted-2);
}
.print-scale-reset:hover{ color: var(--blue-700); }
.print-scale-reset{
	margin-top: 6px;
	font-size: 11px;
	font-weight: 600;
	color: var(--muted);
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-decoration: underline;
}

.print-go{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	margin-top: 10px;
	padding: 8px 12px;
	border: none;
	border-radius: 10px;
	background: var(--blue-100);
	color: var(--muted);
	font-family: inherit;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
}
.print-go:hover{ color: var(--blue-700); }
.print-go svg{ width: 14px; height: 14px; flex-shrink: 0; }

h1{
	font-family: inherit;
	font-size: 16px;
	font-weight: 600;
	color: var(--ink);
	background: none;
	display: flex;
	gap: 8px;
	margin: 0 0 16px;
}
h1 .arrow{
	width: 24px;
	height: 24px;
	border-radius: 12px;
	background: var(--blue-100);
	color: var(--blue-700);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
h1 .arrow svg{ width: 16px; height: 16px; }

h1 b{
	font-weight: 700;
}

.subnav{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0;
}

.subnav a, .subnav span.cur{
	display: flex;
	flex: 1 1 0%;
	max-width: 200px;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 12px 16px;
	margin-bottom: -9px;
	font-weight: 600;
	font-size: 14px;
	color: var(--muted);
	border-bottom: 2px solid transparent;
}
.subnav a:hover{
	color: var(--blue-700);
	text-decoration: none;
}
.subnav svg{ width: 16px; height: 16px; flex-shrink: 0; }

.subnav span.cur{
	color: var(--blue-700);
	border-bottom-color: var(--blue-700);
	cursor: default;
}

.table-wrap{
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: 12px;
	overflow-x: auto;
	overflow-y: hidden;
	margin-bottom: 12px;
}
.table-wrap::-webkit-scrollbar{ height: 16px; }
.table-wrap::-webkit-scrollbar-track{ background: transparent; }
.table-wrap::-webkit-scrollbar-thumb{ background: var(--blue-100); border-radius: 8px; }
.table-wrap::-webkit-scrollbar-thumb:hover{ background: var(--blue-200); }
.table-wrap{ scrollbar-width: auto; scrollbar-color: var(--blue-100) transparent; }

table.inf, table.lrg{
	width: max-content;
	min-width: 100%;
	border-collapse: collapse;
}

table.inf td, table.inf th{
	border: 2px solid var(--white);
}
table.inf.no-borders td, table.inf.no-borders th{
	border: none;
}
/* В предпросмотре печати и при печати нужна полная сетка, поэтому там эти правила не действуют. */
@media screen{
	body:not(.print-preview-active) table.inf > tbody:first-child > tr:first-child > td,
	body:not(.print-preview-active) table.inf > tbody:first-child > tr:first-child > th{ border-top: none; }

	body:not(.print-preview-active) table.inf > tbody:last-child > tr:last-child > td,
	body:not(.print-preview-active) table.inf > tbody:last-child > tr:last-child > th,
	body:not(.print-preview-active) table.inf > tbody:last-child > tr > td[rowspan]{ border-bottom: none; }

	body:not(.print-preview-active) table.inf td:first-child,
	body:not(.print-preview-active) table.inf th:first-child{ border-left: none; }

	body:not(.print-preview-active) table.inf td:last-child,
	body:not(.print-preview-active) table.inf th:last-child{ border-right: none; }
}

td.hd{
	background: var(--blue-200);
	color: var(--ink);
	font-weight: 700;
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
	white-space: nowrap;
}
td.hd0{
	background: var(--white);
	color: var(--ink);
	font-weight: 700;
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
	white-space: nowrap;
}
td.ur, td.urlt{
	text-align: center;
	background: var(--blue-100) !important;
	color: var(--ink);
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
}
td.urlt{ cursor: pointer; }
td.vp{
	background: var(--blue-100);
	color: var(--ink);
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
}
/* картинку прячем сразу, чтобы она не мелькала до отработки скрипта */
td.vp img[src*="graf"]{ display: none; }
td.vp .pct{
	display: block;
	padding-left: 2px;
	white-space: nowrap;
}
td.nul{
	background: var(--blue-50);
	color: var(--ink);
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
}
td.no{
	background: var(--blue-50);
	color: var(--ink);
	font-family: inherit;
	font-size: 13px;
	padding: 6px;
}

td.m0{ font-size: 13px; font-weight: 600; background: var(--blue-100); padding: 10px; }
td.m0 a{ color: var(--ink); }
td.m0 ul{ margin: 4px 0 0; padding-left: 18px; }
td.m1{ background: var(--white); color: var(--blue-700); text-align: center; vertical-align: top; font-weight: 700; padding: 10px; }
td.m2{ background: var(--blue-100); text-align: center; vertical-align: top; font-weight: 700; padding: 10px; }
td.m2 a{ color: var(--muted); }
td.m3{ width: 6px; }
td.m4{ width: 6px; background: var(--blue-100); }
td.mu, td.mf, td.h1{ display: none; }

div.lrg2 p, div.lrg2 ul{
	text-align: left;
	font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 14px;
	color: var(--ink);
}
div.lrg2 ul{ padding-left: 20px; }
div.lrg2 li{ margin-bottom: 12px; }

a.z0, a.z1{ color: var(--ink); font-size: 13px; font-weight: 700; }
a.z2{ color: var(--ink); }
a.z3{ color: var(--muted-2); }
a.hd{ color: var(--ink); }

ul.zg{ text-align: left; font-size: 14px; font-weight: 700; margin-top: 0; }
ul.zg a{ color: var(--red); }
li.zgr{ color: var(--red); }

div.ref{
	width: auto;
	text-align: right;
	font-family: inherit;
	font-size: 13px;
	color: var(--muted-2);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	margin: 12px 0;
}
div.ref svg{ width: 14px; height: 14px; }

hr{
	border: none;
	border-top: 1px solid var(--border);
	margin: 12px 0;
}

div.copy{
	font-family: inherit;
	font-size: 13px;
	color: var(--muted);
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px;
	text-align: left;
}
div.copy .note{
	color: var(--muted-2);
	display: flex;
	align-items: center;
	gap: 6px;
}
a.copy{ color: var(--muted); font-weight: 600; }

.brand .lbl,
nav.tabs .lbl,
.subnav .lbl{
	display: inline-block; /* нужно для ::first-letter */
}
.brand .lbl::first-letter,
nav.tabs .lbl::first-letter,
.subnav .lbl::first-letter{
	text-transform: uppercase;
}

/* ============================================================
   АДАПТИВНЫЙ ТЕКСТ У КНОПОК ШАПКИ */
.brand,
.toggle-btn,
nav.tabs a, nav.tabs span.cur,
.subnav a, .subnav span.cur,
.print-btn{
	min-width: 0;
	flex-shrink: 1;
}
.top-head, .top-toggles, nav.tabs, .subnav{
	flex-wrap: nowrap;
}

.subnav a, .subnav span.cur{
	container-type: inline-size;
}
@container (max-width: 84px){ .subnav .lbl{ display: none; } }

.brand .lbl,
.toggle-btn .lbl,
nav.tabs .lbl,
.subnav .lbl,
.print-btn .lbl{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
}

/* Ширина экрана, при которой текст переключаются на иконку */
@media screen and (max-width: 320px){
	.brand .lbl{ display: none; }
}
@media screen and (max-width: 560px){
	.toggle-btn .lbl,
	.print-btn .lbl{ display: none; }
}
@media screen and (max-width: 480px){
	nav.tabs .lbl{ display: none; }
}

table.inf:has(td.ur, td.nul, td.no) td.hd:not([style]),
table.inf:has(td.ur, td.nul, td.no) td.hd0:not([style]){
	text-align: center;
}

table.inf td.ur:first-child,
table.inf td.vp:first-child,
table.inf td.nul:first-child,
table.inf td.no:first-child{
	background: var(--blue-200) !important;
	color: var(--ink) !important;
	font-weight: 700;
	text-align: center !important;
}

table.inf td.hd:not([style]):first-child,
table.inf td.hd0:not([style]):first-child{
	text-align: center;
}

table.inf td.hd[rowspan]{
	white-space: normal;
	overflow-wrap: break-word;
	max-width: 100px;
}

table.inf td.hd[width="2%"]{
	width: 40px !important;
	min-width: 40px;
	white-space: normal;
}
table.inf td.hd[width="15%"]{
	width: 40px !important;
	min-width: 40px;
	white-space: normal;
}
table.inf td.hd[width="100%"]{
	width: auto !important;
}

table.inf td.hd-split-cont{
	border-top-style: hidden !important;
}

table.inf td.vp,
table.inf td.nul,
table.inf td.no,
table.inf td.ur,
table.inf td.urlt{
	white-space: normal;
	overflow-wrap: break-word;
	word-break: break-word;
	max-width: 200px;
}
@media print{

	@page{ margin: 10mm 10mm 10mm 10mm; }

	body{ margin: 0; }

	.top-head,
	.sticky-head,
	.print-btn,
	.print-panel,
	div.ref,
	hr,
	div.copy,
	div.lrg2 ul.zg{
		display: none !important;
	}

	div.lrg{
		max-width: none;
		margin: 0;
		padding: 0;
		box-shadow: none;
	}

	div.lrg2 ul.zg{
		margin-top: 0;
	}

	.table-wrap{
		border: none;
		border-radius: 0;
		overflow: visible;
		box-shadow: none;
		padding-right: 1px;
	}

	table.inf, table.lrg{
		width: 100%;
		font-size: 11px;
	}

	table.inf td,
	table.inf th,
	table.inf.no-borders td,
	table.inf.no-borders th{
		border: var(--print-line-width, 1px) solid var(--print-ink) !important;
		max-width: none;
	}

	*{
		color: var(--print-ink) !important;
		background: var(--print-paper) !important;
		box-shadow: none !important;
		text-shadow: none !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
		color-adjust: exact !important;
	}

	a{
		color: var(--print-ink) !important;
		text-decoration: none !important;
	}

	/* Селекторы повторяют основные правила ради той же специфичности */
	td.ur, td.urlt{
		background: var(--print-paper) !important;
		color: var(--print-ink) !important;
	}
	table.inf td.ur:first-child,
	table.inf td.vp:first-child,
	table.inf td.nul:first-child,
	table.inf td.no:first-child{
		background: var(--print-header-bg) !important;
		color: var(--print-ink) !important;
	}

	td.hd, td.hd0{
		background: var(--print-header-bg) !important;
		color: var(--print-ink) !important;
	}

	td.hd *, td.hd0 *,
	table.inf td.ur:first-child *,
	table.inf td.vp:first-child *,
	table.inf td.nul:first-child *,
	table.inf td.no:first-child *{
		background: transparent !important;
	}

	body.print-hide-empty tr.print-empty-row{
		display: none !important;
	}

	tr.print-sep-collapsed{
		display: none !important;
	}

	body.print-no-gray td.hd,
	body.print-no-gray td.hd0{
		background: var(--print-paper) !important;
	}
	body.print-no-gray table.inf td.ur:first-child,
	body.print-no-gray table.inf td.vp:first-child,
	body.print-no-gray table.inf td.nul:first-child,
	body.print-no-gray table.inf td.no:first-child{
		background: var(--print-paper) !important;
	}

	body.print-avoid-break tbody.print-block{
		break-inside: avoid;
		page-break-inside: avoid;
	}

	body.print-hide-title h1{
		display: none !important;
	}

	body.print-show-date div.lrg2 ul.zg{
		display: block !important;
	}
}

/* Предпросмотр печати: действует при body.print-preview-active */
@media screen{

	body.print-preview-active .lrg2 .table-wrap{
		border-color: transparent;
		border-radius: 0;
		box-shadow: none;
	}

	body.print-preview-active .lrg2 table.inf,
	body.print-preview-active .lrg2 table.lrg{
		width: 100%;
		font-size: 11px;
	}

	body.print-preview-active .lrg2 table.inf td,
	body.print-preview-active .lrg2 table.inf th,
	body.print-preview-active .lrg2 table.inf.no-borders td,
	body.print-preview-active .lrg2 table.inf.no-borders th{
		border: var(--print-line-width, 1px) solid var(--print-ink);
		max-width: none;
	}

	body.print-preview-active .lrg2 *{
		color: var(--print-ink) !important;
		background: var(--print-paper) !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	body.print-preview-active .lrg2 a{
		color: var(--print-ink) !important;
		text-decoration: none !important;
	}

	body.print-preview-active .lrg2 td.ur,
	body.print-preview-active .lrg2 td.urlt{
		background: var(--print-paper) !important;
		color: var(--print-ink) !important;
	}
	body.print-preview-active .lrg2 table.inf td.ur:first-child,
	body.print-preview-active .lrg2 table.inf td.vp:first-child,
	body.print-preview-active .lrg2 table.inf td.nul:first-child,
	body.print-preview-active .lrg2 table.inf td.no:first-child{
		background: var(--print-header-bg) !important;
		color: var(--print-ink) !important;
	}

	body.print-preview-active .lrg2 td.hd,
	body.print-preview-active .lrg2 td.hd0{
		background: var(--print-header-bg) !important;
		color: var(--print-ink) !important;
	}
	body.print-preview-active .lrg2 td.hd *,
	body.print-preview-active .lrg2 td.hd0 *,
	body.print-preview-active .lrg2 table.inf td.ur:first-child *,
	body.print-preview-active .lrg2 table.inf td.vp:first-child *,
	body.print-preview-active .lrg2 table.inf td.nul:first-child *,
	body.print-preview-active .lrg2 table.inf td.no:first-child *{
		background: transparent !important;
	}

	body.print-preview-active.print-no-gray .lrg2 td.hd,
	body.print-preview-active.print-no-gray .lrg2 td.hd0{
		background: var(--print-paper) !important;
	}
	body.print-preview-active.print-no-gray .lrg2 table.inf td.ur:first-child,
	body.print-preview-active.print-no-gray .lrg2 table.inf td.vp:first-child,
	body.print-preview-active.print-no-gray .lrg2 table.inf td.nul:first-child,
	body.print-preview-active.print-no-gray .lrg2 table.inf td.no:first-child{
		background: var(--print-paper) !important;
	}

	body.print-preview-active.print-hide-empty .lrg2 tr.print-empty-row{
		display: none;
	}
	body.print-preview-active .lrg2 tr.print-sep-collapsed{
		display: none;
	}

	body.print-preview-active.print-hide-title .lrg2 h1{
		display: none;
	}

	body.print-preview-active .lrg2 div.ref,
	body.print-preview-active .lrg2 hr,
	body.print-preview-active .lrg2 div.copy,
	body.print-preview-active .lrg2 ul.zg{
		display: none;
	}
	body.print-preview-active.print-show-date .lrg2 ul.zg{
		display: block;
	}
}