i@font-face  {	font-family: 'AGSouvenirCyr';
	                    src: url('/font/AGSouvenirCyrRoman.eot');
	                    src: local('AGSouvenirCyr Roman'), local('AGSouvenirCyrRoman'),
		                url('/font/AGSouvenirCyrRoman.eot?#iefix') format('embedded-opentype'),
		                url('/font/AGSouvenirCyrRoman.woff') format('woff'),
		                url('/font/AGSouvenirCyrRoman.ttf') format('truetype');
	                    font-weight: normal;               font-style: normal;     }
	                    
	                    
@font-face{font-family:'telingater';
src: url(/font/telingater.eot);
src: url(/font/telingater.eot?#iefix) format('embedded-opentype'), 
url(/font/telingater.woff2) format('woff2'), 
url(/font/telingater.woff) format('woff'), 
url(/font/telingater.ttf) format('truetype'), 
url(/font/telingater.svg#TelingaterDisplayWeb) format('svg')}
	                    
	                    

@font-face  {   font-family: 'ScotchModern';
                        src: url(/font/ScotchModernDisplay.eot);
                        src: url(/font/ScotchModernDisplay.eot?#iefix) 
	                    format("embedded-opentype"),url(/font/ScotchModernDisplay.woff2) 
	                    format("woff2"),url(/font/ScotchModernDisplay.woff) 
	                    format("woff"),url(/font/ScotchModernDisplay.ttf) 
	                    format("truetype");
	                    font-stretch: 50%;      }

@font-face  {   font-family: 'WF';
                        font-style: normal;  font-weight: 400;  font-display: block;
                        src: url(/font/projito_fonts.woff2) format("woff2"),url(/font/projito_fonts.woff) format("woff")     }
						
@font-face {
				font-family: 'PT_Sans';
				font-style: italic;
				font-display: block;
				src: url(/font/PTSans-Italic.woff2) format("woff2"),url(/font/PTSans-Italic.woff) format("woff")
}

@font-face {
				font-family: 'PT_Sans';
				font-style: normal;
				font-display: block;
				src: url(/font/PTSans-Regular.woff2) format("woff2"),url(/font/PTSans-Regular.woff) format("woff")
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}


*,*::before,*::after{box-sizing:border-box}

element.style {
    display: inline-block !important;
}

#st-3   {font-family: 'WF', sans-serif!important;
            padding-right: 1em!important;
            border-left: 0.1em solid rgba(0, 0, 0, 0.125); border-radius: 1em;
            transition: none!important; padding: 0.5em
        }
#st-3.st-btn:hover {transform: none!important;}
#st-3.st-toggle {  background: none!important; transition: none!important;  max-height: 1px;}
#st-3.st-hidden.st-right {right:1px!important; top:200px;}
#st-3.st-right .st-toggle .st-right {display: none!important;}
#st-3.st-right.st-hidden .st-toggle .st-left {display: none!important;}

#st-1 {font-family: 'WF', sans-serif!important; transition: none!important;}


/* Флажок для перевода на другой язык*/
#gt_float_wrapper {right: 20px!important; left:auto!important;}

:root {  --def-border:1px solid #778899; }
/*Пример: div { border:var(--def-border); } */

h2 {font-weight:initial;text-align:center}
h3 {font-weight:initial;text-align:center;font-size:calc(.65em + 1vw); margin:0}
.green { display: block; margin-top: 0.1em; color: #1e8449; text-shadow: .2px .2px 0px black;}
h3.vertical-lr 	{writing-mode:vertical-lr;font-size:1.1em}
pre				{font-family:Helvetica,monospace;font-size:12px;margin-top:0;overflow:auto; /*tab-size:40px*/}
b,strong		{font-weight:bolder}
a				{color:#2e8cc2;text-decoration:none}
a:visited 		{color: #6310b5;}

.youtube		iframe {display:block;margin-left:auto;margin-right:auto;border:0;width:560px;height:315px;margin-top:0.5rem;margin-bottom:0.5rem}

#yandex_money 	iframe {display:block;margin-left:auto;margin-right:auto;border:0; width:423px; height:222px}
.img-gross  {display: block;width:70%;margin-left:auto;margin-right:auto;margin-bottom:3%;margin-top:3%}

/*main,nav,section{display:block}*/
main {display:block}
body {display:flex; flex-direction:column; margin:0; height:100%;}

/*	Шапка	*/
header {position:relative; width:100%; padding:1em; z-index:100}
.brand 			{display:inline-block;font-size:calc(.3em + 1.7vw);color:maroon;}
.logo 			{width:8%; max-width: 120px;vertical-align:middle;float:left;margin-right:10px;margin-bottom:0.5em}
.breadcrumb 	{font-size:calc(.1em + 1vw); padding-left:30px; margin-bottom:0; color:black}
.poisk			{position:fixed; width:15em; right:1em; z-index:2}
.hamburger 		{	position:fixed; display:grid; align-items:center; justify-content:center;
					border-radius: 1px !important; border: var(--def-border); 
					width: 45px; height: 45px; top:10px; left:10px; 
					font-size:30px; cursor:pointer; z-index:1001;
					padding: 0 !important;
					color:gray;
  				}

.main-container {display: flex; flex: 1; flex-direction:row; width:100%; padding-top:0.5em}      /* меню и контент */

.menu 	{	position:fixed; 
			top: 70px;
			left: 0px;
			width: 250px; 
			overflow-y: auto; 
       		max-height: calc(300vh - 70px); 
       		will-change: transform; 
       		touch-action: none; 
       		transform: translateX(-100%); 
       		transition: transform 0.8s;
      		border: var(--def-border); 
      		border-top-right-radius:1em; 
      		border-bottom-right-radius:1em; 
			z-index: 2000;	
			margin-left: -2px; 
			height: max-content;	}
			
.menu a			{color:#495057;	display:flex; padding-left: .5rem; padding-bottom: .32rem; white-space:nowrap}	
.menu a:hover 	{background:#f2f4f6;color:#2e8cc2;}

.menu-list	{padding: 1em 0 1em 1.6em}
/*.menu-big	{padding-top:1.6em}*/

.menu.open {       		max-height: calc(57vh - 70px); transform: translateX(0); background:#f2f4f6}
.menu.open {
    -webkit-overflow-scrolling: touch; /* Плавная прокрутка на iOS */
    overflow-y: auto;
    overscroll-behavior: contain; /* Блокирует прокрутку страницы при скролле меню */
    touch-action: pan-y; /* Разрешаем вертикальную прокрутку */
}
.submenu, .submenu2 {display: none; padding-left: 1.6em; padding-top:.5em;padding-bottom:1em}
.big_menu {/*padding-left: 1.6em; */ padding-top:.5em;padding-bottom:1em}


.cherv	{display:flex; padding:1em; margin:1em; border-top:var(--def-border)}
.cherv img	{width:100px}    

.bukinist				{padding:10px;line-height:1.4; margin:10px;text-align:center; border-top:var(--def-border)}
.bukinist_border		{padding:10px;margin:10px;text-align:center;border-top:var(--def-border)}
.bukinist img, .bukinist_border img	{width:120px}
.bukinist a, .bukinist_border a	{display: inline-block!important;padding:0!important}


#patreon {text-align:center; padding:1em; width:350px; margin-right:auto; margin-left:auto;    		
    	border-radius:1em; border-top:var(--def-border); border-bottom:var(--def-border); margin-top:5em}
#patreon img	{width:80px}






.content {width:100%; margin-left:0; padding:0 4em 0 5%; flex-grow:1; z-index:1}

/* раздел по году издания */
.content table	{font-size: calc(0.9em + 0.7vw); width:100%; text-align:center; line-height:2.5em}
.content table a:hover 	{background:#f2f4f6;color:#2e8cc2;}


/*.content a {
    text-decoration: none;
    color: blue;
}*/

.content .disabled {
    color: lightgray;
   /* cursor: not-allowed;
    display: none;*/
}




#statistic .statistic-table {
  font-size: calc(0.5em + 0.7vw);
  width: 100%;
  text-align: left;
  line-height: 1.3em;
  border: var(--def-border);
  border-collapse: collapse;
  padding: 8px;
}

#statistic .statistic-table th, #statistic .statistic-table td {
  border: var(--def-border); /* Рамка вокруг каждой ячейки */
  padding: 8px; /* Отступы внутри ячеек */
  text-align: left;
}

#statistic .statistic-table tr:nth-child(even) {
  background-color: #e3e5e3;
}

/*#statistic table	{font-size: calc(0.5em + 0.7vw); width:100%; text-align:left; line-height:1.3em;}
#statistic .statistic-table  {border: var(--def-border); border-collapse: collapse; text-align: left; padding: 8px;}
#statistic  tr:nth-child(even) {  background-color: #e3e5e3;  }*/

p.register {font-size:calc(1em + 0.4vw);line-height:0.95}

p.register a:hover 	{background:#f2f4f6;color:#2e8cc2;}




.content li a:hover, p.avtory a:hover {color: #f00}
.content h1 {font-size:calc(1em + 1vw);font-weight:400;text-align:center;
letter-spacing:.05em;padding-bottom:.2em;border-bottom: var(--def-border); border-radius: 0.6em; margin: 1.3em 2em}
		h1 small:before {    content: "\a ";     white-space: pre;  }
		
	.content h1	.red		 		{padding-top:0.1em}

/*.app-content	{display:flex;flex-grow:1;flex-direction:column;min-width:0;}*/
/*#content-body	{overflow-y:auto;height:100%}*/
/*#container		{width:100%;	margin-right:auto;	margin-left:auto;	min-height:600px; padding-right:3.3em;}*/

.card		{height:max-content; min-height:250px; position:relative; border-top:var(--def-border); border-radius:0.6em; padding: 0 0 0 1em; margin-bottom:2em}
.card code 	{display:block; color:#000066; margin-right:30px; margin-top:30px}

.knigi_pics      { display:inline-grid; width:240px; min-height:340px;
                  /* border:var(--def-border); border-radius:1em;*/
                   margin:0.2em; padding:1em 0.5em 0.5em 0.5em }
.knigi_pics img {width:200px; height:300px; border:var(--def-border); border-radius: 0 0.7em 0.7em 0; display:block; margin:0 auto; margin-bottom:10px;}
.knigi_pics span	{color: black}


#kniga_bild{float:left; margin-left:10%}
#kniga_bild img{display:inline; width:200px; padding:.1em; border:var(--def-border); border-radius: 0 1em 1em 0}

#kniga_information {display: flex; flex-wrap: wrap; gap: 2px;}
#filing {} /*Подшивка*/

footer {text-align:center; padding:2em 0 2em 0}	




@media (max-width:1050px)	{	#kniga_information, #filing {font-size:calc(0.2em + 0.9vw)}		
							}

@media (min-width:991px)	{	#alfa {width:20em;	right:6em; position:fixed; padding:0.8em;        margin-top: 4em;
        						border: var(--def-border);	border-radius:0.8em} /* Алфавит авторов отдельным блоком */
								.knigi_pics a		{font-size:calc(0.45em + 0.9vw)}
								#kniga_information, #filing{font-size:calc(0.4em + 0.8vw); margin-left: calc(10% + 230px); }
								#kniga_bild{float:left; margin-left:10%}
        					}
							
@media (max-width:990px)	{	.content h1 {font-size:1.2em; margin:1em}
							    .knigi_pics a		{font-size:1.2em}	
								#kniga_bild{float:left; margin-left:1%}
								#kniga_information, #filing { margin-left: calc(1% + 230px);}
							}					

/* меню появляется при 770px */	
	   /* monitor */
@media (min-width: 770px) 	{	.menu {transform:translateX(0); position:static;}
								.hamburger {display:none}
							    .content {width: calc(100% - 250px);}
								.content {padding:2em 4em 0 2em}
							}

/* меньше ipad mini */
@media (max-width:769px) 	{	.brand	{padding-left:50px}
								.menu-big, .breadcrumb, .logo {display:none}
								.content {padding:2em 0 0 0.5em}
								.content ul {padding:0.3em}
								.knigi_data, .knigi_link, .avtor_link {display:none}
								
								.knigi_pics      	{width:16em; min-height:18em;}
								/*.knigi_pics img 	{max-width:15em; height:21em;}	*/
								.knigi_bild img 	{max-height: 150px}
								.knigi_bild_m img	{max-height: 150px}
								#gt_float_wrapper {bottom:50px!important;} /* Флажок для перевода на другой язык*/	
								.card {border-radius:0.5em; margin: 1em 2em 1em 2em}	
							}

@media (min-width: 570px)	{
	#kniga_information, #filing {  font-size:calc(0.4em + 1.0vw)}
							}


@media (max-width: 569px)	{	.card .card_m h3	{font-size: 14px}
								#bookcard { padding: 0!important;}
					            #kniga_information, #filing {clear:both; margin-left:0; font-size:1em;padding-top:1em}
							}




@media screen and (prefers-reduced-motion: reduce){.btn{transition:none}}
@media print    {	body{display:block}
				    .app {display:block;height:auto}
				    .menu, .poisk {display:none;}     }
				    

/* алфавит авторов  position: static;*/
#alfa {padding-bottom:2em}
.twolines {margin-right:2em; font-size:1em; line-height:3;}

.pagenumber 	{ display: inline-block; width:40px; height:40px; padding:5px; margin-top:2px}
.alfabutton		{ line-height:34px;  display:inline-block; text-align:center; padding:4px;
					width:40px; height:40px; margin-top:5px; font-size: calc(0.8em + 0.4vw);
					border:none; border-radius:20px}
.alfabutton:hover       {background: linear-gradient(#dfdfdf, #ededed)}                         
.alfabutton:active		{position:relative;top:1px}
/* /алфавит авторов  */


/*@media (max-width:1105.99px)	{.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}	}
@media (max-width:1389.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}       }*/

.clearfix::after{display:block;clear:both;content:""}


/* Структура всех книг */
.knigi_data			{position: absolute; top: 0.5em; right: 0.5em}
.knigi_link			{position: absolute; top: 0.5em; left: 0.5em}
.avtor_link			{position: absolute; bottom: 2.5em; right: 1em}
.seria_link			{position: absolute; bottom: 1em; right: 1em}
	
.book_title 		{padding-top:3em;height: max-content; top: 40px; margin-left:140px;padding-right: 30px;}
.book_title_m 		{/*height: max-content; top: 40px; width: 80%; margin-left:140px;padding-right: 30px;*/}
.book_title_m 	h3			{padding-top:0px}

.knigi_bild			{position:absolute; margin-top:2.2em}
.knigi_bild img 	{display:inline; max-height: 200px;  max-width:130px; padding:.1em; border:1px solid #dcdcda}

.knigi_bild_m img 	{  display: block; margin: auto;    margin-top: 1em;
 					   max-height: 200px; max-width: 250px; padding: .1em; border: 1px solid #dcdcda;}

#picscard	{text-align:center;}

/*Дополнительная инфо о книге*/
.double 		{text-align:center; padding-top:30px; padding-bottom:25px;}

/*div#razdel_info h1	{font-size:calc(1.2em + 0.9vw); font-weight:normal}*/





/* Одна книга */
#bookcard			{padding:2em}
#bookcard h1 { font-size:calc(0.9em + 1.1vw);font-weight:400;text-align:center;letter-spacing:1px;padding-bottom:10px;border-bottom:1px solid gray; border-radius: 0.5em; margin-bottom:30px}
#bookcard ul { list-style-type: circle;  list-style-position: outside;}
#bookcard li {font-size:calc(0.9em + 0.7vw); line-height:1.8em}
#bookcard li a:hover {color: #f00}
/*#bookcard p.avtory {font-size:calc(1em + 0.4vw);line-height:1.6;}*/

#bookcard p.avtory a:hover	{opacity: .7}
#bookcard #alfa_bukva {font-size:24px;background:#ccc;width:1.4em; text-align:center; margin-top: 30px; margin-bottom: 20px}
							

#kniga{min-height:400px;margin:0 auto;padding:5px;border:var(--def-border)}
#kniga h1{font-size:18px;font-weight:500;font-variant:small-caps}
#kniga_google{float:right;width:30px;margin:0 auto;margin-bottom:50px;text-align:left}



.column {width: calc(50% - 1px);  margin-bottom: 18px;    padding-right: 15px;
    word-break: break-word; /* Разрешает перенос длинных слов */
    font-size: min(1em, 4vw); /* Уменьшает шрифт, если слово длинное */
}




#kniga_down 		{text-align: center; font-size:calc(0.8em + 0.5vw); padding: 40px 10px 10px 10px; clear:both}
.red		 		{font-size:calc(0.8em + 0.5vw); clear:both; display: block; color:red; 
						margin-left: auto;    margin-right: auto;    text-align: center; padding-top:4em}
#player 			{border-top:var(--def-border); border-bottom:var(--def-border); border-radius: 1em; box-sizing: content-box !important;}

/* /Одна книга */


/*div#fb		{display: flex;  align-items: center;  justify-content: center	}*/


#achtung		{background-color:white; text-align:center; 
							margin-bottom:10px; margin-left:30px; margin-right:30px;
							padding: 6px; border-radius:0.5em; border:var(--def-border); box-shadow: 10px 10px 20px #969696;
							overflow: hidden}

.razdel_pages 			{text-align:center; margin-bottom:2em; clear: left;}

/*div#razdel_info			{	text-align:center; 	margin-top: 40px; 	margin-left:50px;		margin-right:50px;	margin-bottom: 30px;
							overflow: hidden}*/

.avtor_books	{ 	margin-right:auto; margin-left:auto; text-align:center; width:30em; clear:left; padding:1em;
					border:var(--def-border); border-radius:2em; overflow: hidden; margin-bottom:2em; margin-top:2em; /* min-height:5em;*/
				}

/*#razdel_info_bild, #razdel_info_text {padding-top: 2.6em;padding-bottom:2.6em}*/
#razdel_info_bild		{float: left; width: 200px;}
#razdel_info_bild img	{max-width:180px;/*vertical-align:middle*/}

#razdel_info_text		{text-align:left; font-family: tahoma; font-size:calc(8px + 0.5vw); padding-right:5em}
/*#razdel_info_text h1	{text-align:center; font-size: 17px; color:black; font-weight: 200}*/

#razdel_info p		{font-size:calc(8px + 0.5vw); font-weight:300; margin-bottom:2px; margin-top:2px}


/*Pages Number Start */
.pbutton	{	line-height:34px; display:inline-block;	width:34px; margin:2px; color:#777; border:1px solid #dcdcdc; border-radius:0.5em;}

.binder_button_link 	{line-height:34px; display:inline-block; width:100px; margin:2px; color:#777; border:1px solid #dcdcdc; border-radius:0.5em;}
.binder_button_activ   	{line-height:34px; display:inline-block; width:100px; margin:20px 2px; color:#A5003B; border:1px solid #A5003B; border-radius:0.5em;
		text-shadow:1px 1px 0 #fff;	background-color:#ededed}
		
		
.pbutton:hover, .binder_button_link:hover 		{background: linear-gradient(#dfdfdf, #ededed)}                         
.pbutton:active, .binder_button_link:active		{position:relative;top:1px}
.pbutton img		{width:31px}


/*Кнопка активной страницы*/
.pbbutton   	{line-height:34px; display:inline-block; width:85px; margin:20px 2px; color:#A5003B; border:1px solid #A5003B; border-radius:0.5em;
		text-shadow:1px 1px 0 #fff;	background-color:#ededed}
/* /Кнопка активной страницы*/




.grid 			{   display: inline-block;
					margin:1em .5em; width:34px; line-height:34px; cursor: pointer;
    				border:1px solid #dcdcdc; border-radius:.2em;
    				background: url(pics/icon-grid-default.svg) no-repeat center center; background-size:24px;
				}
.grid:hover 	{	background: url(pics/icon-grid-active.svg) no-repeat center center;
    			}
.grid_active 	{	background: url(pics/icon-grid-active.svg) no-repeat center center;
					background-size: 18px;					display: inline-block;
    				margin:1em .5em; width:34px; line-height:34px; 
    				border: 1px solid #A5003B;border-radius:.2em;
   				 }


.list 	{   display: inline-block;
			margin:2px 5px;
    		width: 34px;    	line-height:34px;
    		cursor: pointer;
    		border:1px solid #dcdcdc;	border-radius:.2em;
    		background: url(pics/icon-list-default.svg) no-repeat center center;
	    	background-size: 22px;              	}
.list:hover {
    			background: url(pics/icon-list-active.svg) no-repeat center center;    		}
.list_active {
    			background: url(pics/icon-list-active.svg) no-repeat center center;
				background-size: 18px;
				display: inline-block;
    			width: 34px;   	line-height:34px;
				margin:2px 5px;
    			border: 1px solid #A5003B;border-radius:.2em;  }


#block .caption		{font: normal 10px 'Times New Roman'; line-height: 15px; 
    display: block; padding: 1px 0 1px 0; white-space: nowrap; letter-spacing: .40em; text-transform: uppercase; color: #858585; border:var(--def-border); border-radius: 3em; background: #fff;
}

#dropdown 
{position: relative;
  display: inline-block;	text-align: center;
	font: normal 14px 'Times New Roman'; 
	line-height: 15px;     display: block; 
	padding: 5px 0 5px 0; 	white-space: nowrap; 
	letter-spacing: .30em; 	text-transform: uppercase; 
	color: #858585; 	border:var(--def-border); 	border-radius: 3em; 
	background: #fff;
}


.caption  {font: normal 10px 'Times New Roman'; line-height: 15px; display: block; padding: 1px 0 1px 0; 
    text-align: center; white-space: nowrap; letter-spacing: .40em; text-transform: uppercase; color: #858585; border: solid 1px #b2b2b2; border-radius: 3em; background: #fff; }

/*Кнопка Скачать PDF*/

a.downloadbutton, a.downloadbinder {line-height:2em; display:block; margin-left:auto; margin-right:auto; margin-top:3em;
					text-align:center; cursor: pointer;	border:var(--def-border); border-radius:1.3em; background:linear-gradient(#ededed, #dfdfdf)}

a.downloadbutton	{width:15em;}
a.downloadbinder	{width:30em;}

a.downloadbutton:hover, a.downloadbinder:hover {background: linear-gradient(#dfdfdf, #ededed)}
a.downloadbutton:active, a.downloadbinder:active	{position:relative;top:2px}
a.downloadbutton:visited, a.downloadbinder:visited	{color:#000fff}
/* /Кнопка Скачать PDF*/

html {
  scroll-behavior: smooth; /* Плавная прокрутка */
}

#backToTop {
  display: none; /* Скрыть кнопку по умолчанию */
  position: fixed; /* Фиксированное положение */
  bottom: 3em; /* Расположение снизу */
  left: 15em; /* Расположение справа */
  z-index: 99; /* Убедиться, что кнопка поверх другого контента */
  border: none; /* Без границы */
  outline: none; /* Без обводки */
  background-color: #555; /* Цвет фона */
  color: white; /* Цвет текста */
  cursor: pointer; /* Курсор "указатель" при наведении */
  padding: 1.2em; /* Поля */
  border-radius: 1em; /* Закругленные углы */
}

#backToTop:hover {
  background-color: #333; /* Темнее при наведении */
}
















.twobutton {
    margin-right: 8px;
    padding: 4px 8px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #f8f8f8;
    text-decoration: none;
    color: #333;
}
.twobutton:hover {
    background: #ddd;
    color: black;
}

.group-separator {
/*    margin-top: 30px;*/
	margin-right: 30em;
    padding-top: 10px;
/* border-top: 1px dotted #aaa;*/
}

.backtotop {
    font-size: 1em;
   /* margin: 4px 0 10px 0;*/
}
.backtotop a {
    text-decoration: none;
    color: #888;
}
.backtotop a:hover {
    text-decoration: underline;
    color: #333;
}

.letter		{	/*font-family: Raleway;
				font-family: Poiret One;*/
				text-transform: uppercase;
				letter-spacing: 0.1em;
				font-size:1.5em;
				color: #e57373;    
				margin-top: 40px;   
				position: relative;}

.letter::after {
    content: "";
    display: block;
    height: 2px;
    background: #e57373;
    margin-top: 5px;
    width: 50%;
  }


.to-top {  	font-size:14px;
			position:absolute;
			left:60px;
			top:10px;
		}