.calendar_conteiner .calendar-list > li:last-child, .calendar_conteiner_mini .calendar-list > li:last-child { border-bottom: none; }

.calendar-list, .calendar-list > li { list-style: none; padding: 0; margin: 0 !important; display: block; }
.calendar-list > li { position:relative; border-bottom: 1px solid #ccc; padding: 15px 0 15px 0 !important; margin: 0 !important; }
.calendar-list > li > a { display: block; }
.calendar-list > li > a > div, .calendar-item > div { display: inline-block; vertical-align: top; width: 180px; line-height: 1; padding-top: 2px; }
.calendar-list > li > a > b, .calendar-item > span { display: inline-block; vertical-align: top; width: calc(100% - 180px - 160px); font-size: 20px; color: #111; }
.calendar-list > li > a > b > div, .calendar-item > span > div { font-size: 16px; color: #999; font-weight: normal; }
.calendar-list-day { display: inline-block; vertical-align: top; width: 70px; color: #ef0000; font-size: 46px; text-align: right; padding-right: 10px; }
.calendar-list-month { display: inline-block; vertical-align: top; width: 110px; font-size: 20px; padding-top: 3px; }
.calendar-list-month > span { display: block; color: #999; font-weight: normal; }

.calendar-list > li > a > span {
	display: inline-block;
	width: 140px;
	height: 100px;
	border-radius: 5px;
	margin-left: 20px;
	background: no-repeat center center;
	background-size: cover;
}

.calendar-item { margin: 25px 0; }
.calendar-item > span > h1 { margin-top: 0; padding-top: 0; }
.calendar-item > span > div { color: #777; }

.calendar-mounth-list { list-style: none; padding: 20px 0; margin: 0 !important; display: block; }
.calendar-mounth-list > li { 
    position:relative; 
    display: inline-block;
    vertical-align: top;
    width: calc(100% / 3 - 15px); 
    padding: 5px 0 5px 0 !important; 
    margin: 0 15px 15px 0 !important;
    text-align: center;
}
.calendar-mounth-list > li > b { font-size: 28px; }

.calendar-day-list { list-style: none; padding: 2px; margin: 0 !important; display: block; text-align: left; }
.calendar-day-list > li { 
    position:relative; 
    display: inline-block;
    vertical-align: top;
    width: calc(100% / 7 - 4px); 
    line-height: 30px;
    border: 1px solid #ccc; 
    padding: 0 !important; 
    margin: 2px !important;
    text-align: center;

    -khtml-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.calendar-day-list > li.cur { background: #fdd26c; border-color: #ff9b00; }
.calendar-day-list > li > div { display:none; }
.calendar-day-list > li:hover > div { 
    display:block; 
    position:absolute; 
    top: 33px;
    left: -1px;
    padding: 15px;
    background: #fdd26c;
    border: 1px solid #ff9b00;
    width: 350px;
    text-align: left;
    line-height: 1.2;
    z-index: 1;
}
.calendar-day-list > li > div:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 4px;
    top: -4px;
    left: 0;
}
.calendar-day-list > li > div > div { padding: 5px 0; }
.calendar-day-list > li > div > div > a { text-decoration: none; color: #000; transition: all 0.3s ease; }
.calendar-day-list > li > div > div > a:hover { color: #0A2F9D; }
.calendar-day-noact { opacity: 0.3; }

.calendar-list-edit { position: absolute; z-index: 2; top: -2px; }
.calendar-list-edit > a { background: #00b000; color: #fff; text-decoration: none; padding: 4px; font-size: 14px; }

.calendar-prev-next { margin: 40px; }
.calendar-prev-next:after { content:""; display:block; clear:both; }
.calendar-prev-next > a {
    position: relative;
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 0 0 25px;
    float: right;
    text-align: right;
    text-decoration: none;
    color: #5969C8;
    font-size: 20px;
    transition: all 0.3s ease;
}
.calendar-prev-next > a.prev {
    margin: 0 25px 0 0;
    float: left;
    text-align: left;
}
.calendar-prev-next > a.prev:before {
    content: "\f104";
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 47px;
    text-rendering: auto;
    position: absolute;
    left: -33px;
}
.calendar-prev-next > a.next:before {
    content: "\f105";
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 47px;
    text-rendering: auto;
    position: absolute;
    right: -33px;
}
.calendar-prev-next > a > b { display:block; font-size: 14px; color: #a5a5a5; font-weight: normal; line-height: 1; }
.calendar-prev-next > a:hover { color: #ef0000; }

.calendar_conteiner_mini .calendar-mounth-list > li { width: 100%; margin: 0 0 17px 0 !important; }
.calendar_conteiner_mini .calendar-list > li > a > div { width: 100%; padding-bottom: 4px; background: #dcffc3; margin-bottom: 7px; }
.calendar_conteiner_mini .calendar-list > li > a > b { 
	width: 100%; 
	font-size: 17px; 
	
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}
.calendar_conteiner_mini .calendar-list > li > a > span { width: 100%; margin: 10px 0 0 0; }
.calendar_conteiner_mini .calendar-list-day { font-size: 30px; width: 50px; }
.calendar_conteiner_mini .calendar-list-month { font-size: 12px; width: 65px; }

@media (max-width: 768px) {
    .calendar-mounth-list > li { width: 100%; margin: 0 0 17px 0 !important; }
    .calendar-list > li > a > div { width: auto; padding-bottom: 4px; background: #dcffc3; margin-bottom: 7px; }
    .calendar-list > li > a > b { width: 100%; font-size: 17px; }
	.calendar-list > li > a > span { width: 100%; margin: 10px 0 0 0; }
    .calendar-list-day { font-size: 30px; width: 50px; }
    .calendar-list-month { font-size: 12px; width: 65px; }
}

/* Дни рождения */
#tCalendar { padding-top: 5px; /*height: 550px;*/ overflow: auto; }
#tCalendar > table { background:#EBF0F5; border-collapse:collapse; }
#tCalendar th { background:#EBF0F5; color:#8996a3; width:106px; text-align:center; padding:5px 0; border:1px solid #EBF0F5; }
#tCalendar td { background:#fff; border:1px solid #EBF0F5; }
#tCalendar td td { background:none; border:none; }
#tCalendar td:nth-child(6), #tCalendar td:nth-child(7) { background:#FAFBFC; }
.changeCalendarMonth {
    display:inline-block; 
    background:#e5ebf1; 
    padding:0 9px 4px 9px; 
    color:#8996a3 !important; 
    font-size:20px; 
    line-height:19px; 
    font-weight: bold; 
    border-radius: 2px;
}

.dBirthdays {
    width: 20px;
    margin-bottom: 3px;
    text-align: center;
    color: #99acbf;
    font-size: 12px;
}
.iBirthdays a { display:inline-block; border-radius:50%; width:55px; height:55px; margin-top:15px; overflow:hidden; }
.iBirthdays a.root { border-radius: 0; }
.iBirthdays a img { width:55px;  height:auto; }
.iBirthdays a img.wbh { height:55px; width:auto; }
.iBirthdays { padding:2px; min-width: 54px; }
.lrBirthdays #changeCalendar {
    display:inline-block; 
    background:no-repeat left center; 
    padding-left:20px; 
    white-space:nowrap; 
    letter-spacing: 1px; 
    font-size: 16px;
    line-height:25px;
    color:#8996a3 !important; 
    min-height:25px;
}
.lrBirthdays a { text-decoration: none; }
.dayMore {
    padding: 0px 4px;
    margin: 1px 0px 0px 2px;
    background-color: #F0E8CF;
    color: #8E7525; 
    font-weight: normal; 
    text-decoration:none !important;
    text-align: center;
    border: 1px solid #DAD2A7;
}
a.dayMore:hover { text-decoration: none; }
.iHoverBirthdays { display: none; }
.borderFoto .borderOwnerFoto { position:relative; height:0px; top:4px; right:4px; z-index:10; }
.borderFoto a { color:#252d8c; font-weight:normal; text-decoration:none; }
.borderBirthdays, .borderBirthdays2, .borderFoto {
    border: 1px solid #ADBBCA;
    background-color: #DAE2E8;
    padding: 10px;
}
.borderBirthdays2:hover { background-color: #eaeef0; }
.borderBirthdays img { border: 1px solid #ADBBCA; border-bottom: none; }
.borderBirthdays div {
    background: #FFFFFF;
    border: 1px solid #ADBBCA;
    padding-top: 3px;
    padding-bottom: 3px;
    border-top: none;
}
.borderBirthdays2 { padding: 3px; margin-bottom: 3px; }
.borderBirthdays2  img { border: 1px solid #ADBBCA; }
.titleBirthdays {
    background: url('/src/img/tort.png') no-repeat left top;
    padding-left: 25px;
}
.titleKanzRating {
    background: url('/src/img/kanzrating.png') no-repeat left top;
    padding-left: 25px;
}
.titleStatistic {
    background: url('/src/img/statistic.jpg') no-repeat left top;
    padding-left: 25px;
}

.form_4 { background: #fff; padding:50px; border:1px solid rgba(0,0,0,0.1); }
.form_4 > form > label { display: block; padding-bottom:10px; margin-bottom:10px; border-bottom: 1px solid rgba(0,0,0,0.1); }
.form_4 > form > label.isub { border: none; text-align: center; padding: 20px 0 0 0; margin: 0; }
.form_4 > form > label > b { display: inline-block; width: 200px; vertical-align: top; line-height: 32px; }
.form_4 > form > label > input, 
.form_4 > form > label > textarea, 
.form_4 > form > label > select,
.form_4 > form > label > div 
{ display: inline-block; width: calc(100% - 200px - 20px - 5px); margin-left: 20px; }
.form_4 > form > label.isub > input { margin: 0; width: 60%; padding: 8px; }
.form_4 > form > label > div.otags br { display: none; }
.form_4 .qq-upload-drop-area, .form_4 .qq-upload-extra-drop-area { position: relative; }
.form_4 .qq-upload-button { width: 50%; position: absolute !important; left: 50%; margin-left: -25%; }
.form_4 .separate-list { padding-top: 4px !important; padding-bottom: 0 !important; }