#registration{
	padding:20px;
	margin:0 auto;
}
fieldset{
	border:none;
	padding:0;
	margin:0;
}
/*Menu styles*/
#reg-menu{
	margin:50px;
	padding:0;
	list-style:none;
	width:100%;
	overflow:hidden;
	text-align:center;
}
#reg-menu li{
	display:inline;
	margin:0 10px;
}
.reg-link{
	color:#000;
	text-decoration:none;
}
.reg-link:hover{
	text-decoration:underline;
}
#login .reg-error,
#registration .reg-error,
#side-box .reg-error{
	display:none;
	color:#f00;
	font-size:10px;
	text-align:center;
	padding:0 0 0 22px;
}
#side-box .reg-error{ 
	padding:0;
}
#login-holder #login  .reg-err,
#registration-login #registration  .reg-err,
#registration-holder #registration  .reg-err{
	display:block;
}
#login-holder,
#registration-holder{
	margin:0 auto;
	overflow:auto;
	padding:10px 0;
}
/* .popup-content #registration-holder #registration .reg-err2{
	display:block;	
} */
#registration-holder #registration #reg-captcha-err{
	text-align:right;
	color:#f00;
	font-size:10px;
	display:block;
	width:84.5%;
}
.popup-content #registration-holder{
	width:306px;
}
#login-holder p,
#registration-holder p{
	width:88%;
}
#login-holder strong,
#registration-holder strong{
	display:block;
}
#login-holder{
	width:303px;
	overflow:hidden;
}
#menu-holder{
	width:100%;
	/* overflow:hidden; */
}
#login strong,
#remindpass strong,
#changepass strong,
#registration strong{
	margin:5px 0 0 70px;
	float:left;
	font:normal 26px/28px 'Times New Roman', Georgia, Times, serif;
}
#login strong{
	margin:5px 0 0 119px;
}
#remindpass strong{
	margin:5px 0 0 36px;
}
#changepass strong{
	margin:5px 0 0 20px;
}
#registration strong{
	margin:9px 5px 0 70px;
	float:left;
	font:normal 22px/24px 'Times New Roman', Georgia, Times, serif;
}
#reg-logout{
	background:url(../img/logout.gif) no-repeat 0 -24px;
	width:24px;
	height:24px;
	text-indent:-9999px;
	cursor:pointer;
	float:right;
	margin:0 8px 0 0;
}
#reg-logout:hover,
#registration .logouthover{
	background-position: 0 0;
}
/*Langs*/
#langs{
	margin:8px 0 0;
	padding:0 0 5px;
	list-style:none;
	float:right;
	overflow:hidden;
}
#langs li{
	float:right;
	margin:0 0 0 5px;
}
#langs li a{
	display:block;
	width:25px;
	height:25px;
	text-indent:-9999px;
	overflow:hidden;
	background:url(../img/langs.gif) no-repeat;
}
#langs li #en{
	background-position: -25px 0;
}
#langs li.active #ru,
#langs li.active #ru:hover,
#langs li #ru:hover{
	background-position: 0 -25px;
}
#langs li.active #en,
#langs li.active #en:hover,
#langs li #en:hover{
	background-position: -25px -25px;
}
/*Right side block*/

#side-box{
	float:right;
	padding:15px 0 10px;
	width:102px;
	height:102px;
}
#profile #side-box{
	float:none;
}
#side-box p{
	font-size:0.8rem;
	margin:0 0 0 5px;
}
#registration-holder #profile h2,
#registration-holder #profile h3{
	width:100%;
	overflow:hidden;
	padding:10px 0;
}
#registration-holder #profile h3{
	color:#393;
	text-align:center;
}
#profile{
	padding-bottom:33px;
}
#profile,
#profile-info{
	width:100%;
	margin:0 auto;
}
#profile #side-box{
	padding:28px 70px 0 20px;
}
#profile  strong{
	float:left;
	padding: 5px;
	font:1em/1em Arial,Verdana,Helvetica,san-serif;
}
#profile p{
	margin:5px 0 0 25px;
	float:left;
	color:#a50989;
	font:1em/1em Arial,Verdana,Helvetica,san-serif;
}
#side-box #reg_photo{
	width:100px;
	height:100px;
	border:1px solid #a50989;
	background:#ccc;
	position:relative;
	text-align:center;
	cursor:pointer;
	overflow:hidden;
}
#side-box #reg_photo img{
	position:absolute;
	left:0;
	top:0;
	z-index:2;
	border:none;
}
#regframe{
	position:absolute;
	left:0;
	z-index:1;
	max-width:100px;
	max-height:100px;
	border:none;
	overflow:hidden;
	cursor:pointer;
	margin:0;
}
#side-box #reg_photo p{
	margin:0;
	position:absolute;
	top:0;
	z-index:2;
	text-align:center;
	width:100px;
	padding:40px 0 0;
	height:60px;
	font:12px/13px Verdana, Arial, Helvetica, san-serif;
	color:#a50989;
	/* background:#fcf8bc; */
}
#side-box #file-hold{
	margin:10px 0 0;
	width:100%;
	height:35px;
	position:relative;
}
#side-box #open-dialog,
#side-box #photo-sbm-hold{
	width:100px;
	height:35px;
	position:absolute;
	right:0;
	top:0;
	z-index:2;
	text-align:center;
}
#photo-sbm{
	width:100px;
}
#side-box #open-dialog{
	cursor:pointer;
	opacity:0;
}
#side-box #photo-send-sbm-hold{
	text-align:center;
}
#side-box #photo-sbm-hold{
	z-index:1;	
}
/*Registration block*/
#registration{
	float:left;
}
#registration,
.reg-field-holder{
	width:100%;
	padding:0 0 10px;
}
#registration .reg-fh-small{
	width:195px;
}
#registration .reg-fh-small input{
	width:143px;
}
.reg-field-item{
	padding:10px 0 0;
	width:100%;
	overflow:hidden;
	position:relative;
}
#profile-info .reg-field-item{
    margin: 0 0 0 20px;
}
.reg-field-holder textarea{
	width:254px;
	float:left;
	padding:6px 4px;
	border:1px solid #ccc;
	font:12px/13px Verdana, Arial, Helvetica, san-serif;
}
.reg-field-holder input,
.reg-field-holder select{
	width:264px;
	float:left;
	padding:4px 4px 5px;
	margin:5px 0;
	text-align:center;
	border:1px solid #ccc;
	color:#a50989;
	font:12px/13px Verdana, Arial, Helvetica, san-serif;
}
.reg-field-holder input{
	width:237px;
}
.reg-field-item .reg-count-chars{
	position:absolute;
	top:0;
	right:10px;
	font-size:9px;
	width:29px;
	border:1px solid #ccc;
	background:#fff;
	display:none;
	text-align:center;
}
/*Pass field*/
#registration .reg-field-item input.reg-pass{
	width:156px;
	border-radius:0;
	background:#fff;
}
#registration #reg-repass-indication,
#registration #reg-pass-indication{
	margin:0 3px 0 0;
	float:right;
	width:96px;
	height:32px;
}
#registration #reg-pass-indication{
	background:url(../img/pass.gif) no-repeat;
}
#registration #reg-repass-indication{
	padding:10px 0 3px;
	height:14px;
	font-size:10px;
	text-align:center;
}
.reg-pass-hold{
	padding:10px 0 0;
}
.reg-pass-hold .reg-field-item{
	padding:0;
}
.pass-step{
	display:none;
	text-shadow: 1px 1px 1px #000;
}
.pass-step-1{
	color:#fd0029;
}
.pass-step-2{
	color:#f5ff00;
}
.pass-step-3{
	color:#11ff45;
}
#one-pass-hold{
	position:absolute;
	right:14px;
	bottom:2px;
	font-size:10px;
	display:none;
}
#one-pass-hold input{
	float:left;
	width:16px;
}
#one-pass-hold  #one-pass-title{
	float:left;
	padding:1px 0 0;
}
/*Clear button*/
.clear-fields{
	background:url(../img/service_btns.gif) no-repeat;
	width:74px;
	height:25px;
	float:left;
	margin:4px 0 20px;
    padding: 0 0 0 21px;
    width: 102px;
	border:none;
	font:10px/12px Arial, Verdana, Helvetica, san-serif;
}
.clear-fields:hover,
.clear-hover{
	background-position: 0 -25px;
	color:#000;
}
.reg-field-item .add-field,
.reg-field-item .del-field{
	position:absolute;
	right:8px;
	top:18px;
	text-indent:-9999px;
	background:url(../img/service_btns.gif) no-repeat -102px 0;
	width:17px;
	height:18px;
	display:none;
}
.reg-field-item .del-field{
	background-position: -119px 0;
}
.reg-field-item .add-hover,
.reg-field-item .add-field:hover{
	background-position: -102px -18px;
	color:#000;
}
.reg-field-item .del-hover,
.reg-field-item .del-field:hover{
	background-position: -119px -18px;
	color:#000;
}
.reg-field-holder img{
	float:left;
	margin:0 3px 0 0;
}
.reg-field-holder #reg-pass-indication img{
	margin:0;
}
.reg-help,
.login-help,
.changepass-help,
.remindpass-help{
	margin:8px 0 0 3px;
	width:25px;
	height:25px;
	text-indent:-9999px;
	background:url(../img/help.gif) no-repeat;
	cursor:pointer;
	float:left;
}
.reg-help:hover,
#registration .helpactive,
#registration .helphover{
	background-position: 0 -25px;
}
.reg-field-help,
.reg-field-help2{
	color:#32cd32;	
	font-size: 0.6em;
}
.reg-field-help{
	margin:0 0 0 32px;
}
/*Roller styles*/
.ui-slider-holder{
	width:282px;
	padding:5px 0 0 15px;
	display:none;
}
#registration .ui-sh-small{
	width:168px;
}
.ui-slider {
    position: relative;
	border:1px solid #be8d35;
}
.ui-slider-horizontal {
    height: 0.8em;
}
.ui-slider .ui-slider-range {
    background-position: 0 0;
    border: 0 none;
    display: block;
    position: absolute;
    z-index: 1;
    height: 100%;
    top: 0;
}
.ui-widget-header {
    border: 1px solid #be8d35AAA;
}
.ui-slider .ui-slider-handle {
	border:1px solid #be8d35;
	background: #E6E6E6;
    cursor: default;
    height: 1.2em;
    margin-left: -0.6em;
    top: -0.25em;	
    position: absolute;
    width: 1.2em;
    z-index: 2;
}
/*Reg form*/
#photo,
#reg-form-sbm{
	cursor:pointer;
}
.m-reg-btns{
	position:absolute;
	bottom:-4px;
	right:17px;
	width:92%;
}
.btn-sbm-holder{
	float:right;
	margin:0 0 0 5px;
	background:url(../img/btn-sbm.gif) no-repeat 0 -68px;
}
.reg-btn-end{
	background:#fff url(../img/btn-sbm.gif) no-repeat 0 -102px;
	height:34px;
	width:17px;
	float:left;
}
.btn-sbm-holder input{
	background:none;
	padding:8px 0 8px 17px;
	border:none;
	float:left;
	overflow:hidden;
	color:#969696;
}
#registration-holder .btn-sbm-hover,
#remindpass-holder .btn-sbm-hover,
#changepass-holder .btn-sbm-hover,
#login-holder .btn-sbm-hover{
	background-position: 0 0;
}
#registration-holder .btn-sbm-hover input,
#remindpass-holder .btn-sbm-hover input,
#changepass-holder .btn-sbm-hover input,
#login-holder .btn-sbm-hover input{
	color:#000;
}
#registration-holder .btn-sbm-hover .reg-btn-end,
#remindpass-holder .btn-sbm-hover .reg-btn-end,
#changepass-holder .btn-sbm-hover .reg-btn-end,
#login-holder .btn-sbm-hover .reg-btn-end{
	background-position: 0 -34px;
}
/*Service buttons*/
.service_btns{
	background:url(../img/service_btns.gif) no-repeat;
}
#registration-holder  #capchacha{
	float:right;
}
.captcha-reload{
	float:right;
	margin:3px 10px 10px;
	width:16px;
	height:16px;
	background:url(../img/capcha-arrow.gif) no-repeat;
	text-indent:-9999px;
	cursor:pointer;
	overflow:hidden;
}
#reg-secur{
	margin:0 5px 0 0;
	width:150px;
	float:right;
	font:11px/12px Arial, Verdana, Helvetica, san-serif;
}
/*Location list*/
#location-list{
    margin: 20px 0 0 35px;
	padding:0;
	list-style:none;
	position:relative;
	display:none;
}
#location-list li{
	border-right: 1px solid #ccc;
	border-left:  1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding: 4px 4px 5px;
    width: 254px;
	color: #6d6d6d;
	font: 12px/13px Verdana,Arial,Helvetica,san-serif;
	cursor:pointer;
}
#location-list li span{
	cursor:pointer;
}
#login-holder h3,
#remindpass-holder h3,
#changepass-holder h3{
	margin:0 0 0 12px;
	width:90%;
}
.reg-hidden{
	display:none;
}
/* Profile tabs */
.korpus {
	position: relative; 
	width:90%;
	margin:0 auto;
}
.korpus > div, .korpus > input{
	display: none;
	min-height: 150px;
	/* 50px × 3 вкладки */ } 
.korpus label{
	line-height: 50px;
	text-align: center;
	cursor: pointer; 
	padding:8px 32px ;
	border-radius:18px;
	border:1px solid #a50989;
	background:#fbeace;
	color:#a50989;
	font:1em/1em Arial,Arial,Verdana,Helvetica,san-serif;
}
.korpus input[type="radio"]:checked + label,
.korpus label:hover{
	background:#fee1b2;
}
.korpus label:nth-of-type(2){
	top: 51px; /* 50px + 1px border */
}
.korpus label:nth-of-type(3){
	top: 102px;
	/* 50px + 1px border первой вкладки + 1px border второй вкладки */
}
.korpus > input:nth-of-type(1):checked ~ div:nth-of-type(1),
.korpus > input:nth-of-type(2):checked ~ div:nth-of-type(2),
.korpus > input:nth-of-type(3):checked ~ div:nth-of-type(3){
	display: block;
	/* padding: 1px 105px 1px 5px; */
	/* border: 1px solid #be8d35; */
}
#profile h2{
    margin: 33px 0;
}
.prfl-tab{
	padding:0 0 33px;
}

.prfl-tab #open-materials h3{
	text-align:left;
	font-size:1.5em;
}
.prfl-tab #open-materials h4{
	text-align:left;
	font-size:1.2em;
}
/* Login links */
.mob-reg-links{
	width:100%;
	overflow:hidden;
}
.mob-reg-links span{
	width:50%;
	float:left;
	text-align:center;
	color:#a50989;
	padding:0 0 2px;
	margin:0 0 10px;
	cursor:pointer;
}
.mob-reg-links span:hover{
	text-decoration:underline;
}
.go-wbnr, 
.registration-on{
  cursor:pointer;
  background: #d11717;
  color: white;
  border: 2px solid #eee;
  height: 38px;
  width: 224px;
  margin: 50px auto;
  overflow: hidden;
  display: block;
  text-align: center;
  line-height: 38px;
  
  /*Переход*/
  -webkit-transition: All 0.5s ease;
  -moz-transition: All 0.5s ease;
  -o-transition: All 0.5s ease;
  -ms-transition: All 0.5s ease;
  transition: All 0.5s ease;
  
  /*Скругленные углы*/
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  
  /*Градиент*/
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
  background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
  background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
  background-image: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
  
  /*Тень*/
  -webkit-box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.2);
}
.registration-on:hover {
  background-color: #ff3434;
}
#wbnrs-conf-hold #wbnr-hold .go-wbnr{
	margin:20px auto 0;
	/* background-color: #ff00ff; */
} 
/* #wbnrs-conf-hold #wbnr-hold .go-wbnr:hover {
  background-color: #ff3434;
} */
/* Стили для чекбоксов согласия */
#registration .reg-field-item input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 2px 8px 0 0;
    float: left;
    cursor: pointer;
}
#registration .reg-field-item label {
    float: left;
    width: calc(100% - 30px);
    margin: 0;
    cursor: pointer;
    color: #333;
}
.field-error-agreement {
    display: none;
    color: #f00;
    font-size: 11px;
    padding: 5px 0 0 0;
    text-align: left;
}
.field-error-agreement.reg-err {
    display: block;
}
/* ============================================= */
/* НОВЫЕ СТИЛИ ДЛЯ ЧЕКБОКСОВ СОГЛАСИЯ
/* ============================================= */
.agreement-holder {
	padding: 10px 0 5px 0;
	border-top: 1px solid #eee;
	margin-top: 5px;
}

.agreement-item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 5px 0;
	width: 100%;
}

.agreement-checkbox {
	width: 18px !important;
	height: 18px !important;
	min-width: 18px;
	min-height: 18px;
	margin: 2px 0 0 0 !important;
	float: none !important;
	flex-shrink: 0;
	cursor: pointer;
	border: 1px solid #ccc;
	outline: none;
	transition: border 0.2s ease, outline 0.2s ease;
}

.agreement-checkbox:checked {
	border: 1px solid #4CAF50;
	outline: none;
}

.agreement-checkbox.error {
	border: 1px dotted #f00 !important;
	outline: 1px dotted #f00 !important;
}

.agreement-label {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12px;
	line-height: 1.4;
	cursor: pointer;
	color: #333;
	display: inline;
}

.agreement-link {
	color: #a50989;
	text-decoration: underline;
	font-weight: normal;
}

.agreement-link:hover {
	color: #d11717;
	text-decoration: none;
}

.field-error-agreement {
	display: none;
	color: #f00;
	font-size: 11px;
	padding: 5px 0 0 26px;
	text-align: left;
}

.field-error-agreement.reg-err {
	display: block;
}
/* ============================================= */
/* СТИЛИ ДЛЯ СЕРВЕРНЫХ ОШИБОК (при отключенном JS) */
/* ============================================= */
.server-error-message {
	background: #fff0f0;
	border: 2px solid #d32f2f;
	border-radius: 5px;
	padding: 12px 15px;
	margin-bottom: 15px;
	color: #c62828;
	font-size: 13px;
	line-height: 1.5;
	animation: shakeError 0.5s ease;
}

.server-error-message strong {
	color: #b71c1c;
	font-size: 14px;
}

@keyframes shakeError {
	0%, 100% { transform: translateX(0); }
	10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
	20%, 40%, 60%, 80% { transform: translateX(5px); }
}

/* Стили для выделения полей при серверной ошибке */
.reg-field-holder.has-error input,
.reg-field-holder.has-error select,
.reg-field-holder.has-error textarea {
	border: 2px solid #d32f2f !important;
	background: #fff8f8 !important;
}

.agreement-holder.has-error .agreement-checkbox {
	border: 2px solid #d32f2f !important;
	outline: 2px solid #d32f2f !important;
}

/* ============================================= */
/* ПОДСКАЗКА ПО ПАРОЛЮ (КОМПАКТНАЯ)
/* ============================================= */
.password-hint {
	display: none;
	margin: 5px 0 8px 0;
	padding: 0;
	width: 100%;
	overflow: hidden;
}

.password-hint-inner {
	background: #f8f9fa;
	border: 1px solid #e0e0e0;
	border-radius: 6px;
	padding: 6px 12px 8px 12px;
	position: relative;
	box-shadow: 0 1px 4px rgba(0,0,0,0.06);
	animation: hintSlideDown 0.25s ease forwards;
}

.password-hint-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 4px;
}

.password-hint-title {
	font-size: 11px;
	font-weight: bold;
	color: #555;
	letter-spacing: 0.3px;
}

.password-hint-close {
	font-size: 14px;
	cursor: pointer;
	color: #bbb;
	line-height: 1;
	padding: 0 4px;
	border-radius: 50%;
	transition: all 0.2s ease;
	background: transparent;
	width: 20px;
	height: 20px;
	text-align: center;
	font-weight: bold;
}

.password-hint-close:hover {
	color: #d32f2f;
	background: #f5f5f5;
	transform: rotate(90deg);
}

.password-hint-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 2px 12px;
}

.password-hint-item {
	font-size: 10px;
	line-height: 1.5;
	color: #999;
	padding: 1px 0;
	transition: all 0.25s ease;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	white-space: nowrap;
}

.password-hint-item.hint-done {
	color: #2e7d32;
	font-weight: 600;
}

.password-hint-item:not(.hint-done) {
	color: #c62828;
}

.password-hint-item strong {
	font-weight: 600;
}

@keyframes hintSlideDown {
	from {
		opacity: 0;
		transform: translateY(-6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}