#course-title {
    display: block;
    margin-top: 10px;
    text-align: center;

    font-family: var(--font-family);
    font-weight: 500;
    font-size: 22px;
    line-height: 1.4;
}

.cart-icon__count {
    position: absolute;
    bottom: -6px;
    left: -6px;

    display: flex;
    justify-content: center;
    align-items: center;

    height: 24px;
    width: 24px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid var(--green-light);
}

.cart-icon__count > span {
    font-family: var(--font-family);
    font-size: 14px;
    color: #000;
}

@media(max-width: 480px) {
    .cart-icon__count {
        display: none;
    }
}

#loading_screen {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%);
    z-index: 9999;
}

/* Custom file input */
.custom-file-upload {
    display: flex;
    position: relative;
}
.custom-file-upload__icon {
    width: 26px;
}

.custom-file-upload label {
    display: flex;
    align-items: center;
    padding: 10px 19px;
    gap: 10px;

    height: auto;
    background: rgba(18, 193, 111, .25);
    width: 100%;
    border-radius: 100px;
    cursor: pointer;

    font-family: var(--font-family);
    font-size: 14px;
    line-height: 1.2;
    text-wrap-style: balance;
}

.custom-file-upload input {
    display: none;
}
.file-inputs-container{
width: 100%;
}

/* Custom password */
.form__input.password, 
.bx-authform-formgroup-container.password {
	position: relative;
}
.form__input.password input, 
.bx-authform-formgroup-container.password input {
    width: 100%;
}
.form__input.password .password__control, 
.bx-authform-formgroup-container.password .password__control {
	position: absolute;
	top: 50%;
    transform: translateY(-50%);
	right: 20px;
	display: inline-block;
	width: 24px;
	height: 24px;
	background: url(../images/password-show.svg) 0 0 no-repeat;
}
.form__input.password .password__control.view, 
.bx-authform-formgroup-container.password .password__control.view {
	background: url(../images/password-hide.svg) 0 0 no-repeat;
}

.bx-authform-formgroup-container.password:has(.error-message) .password__control {
    top: 18px;
    transform: translateY(0);
}

@media (max-width: 768px) {
    .bx-authform-formgroup-container.password:has(.error-message) .password__control {
        top: 13px;
    }
}
@media (max-width: 480px) {
    .bx-authform-formgroup-container.password:has(.error-message) .password__control {
        top: 10px;
    }
}

.fieldrequired {
    display: block;
    margin-top: 16px;

    font-family: var(--font-family);
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: rgb(178, 181, 186);;
}
.starrequired {
    font-size: 18px;
}

/* Search */
.search-block {
    margin-top: 55px;
}
.search-block__wrapper {
    max-width: 1280px;
    margin: 0 auto;
}
.catalog-search {
    position: relative;
    background: #fff;
    border-radius: 12px;
    height: 80px;
}
.catalog-search__input {
    width: 100%;
    height: inherit;
    padding: 22px 84px;

    font-family: var(--font-family);
    font-weight: 500;
    font-size: 26px;
    line-height: 140%;
    color: rgba(20, 15, 20, 0.8);
}
.catalog-search__input::placeholder {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 26px;
    line-height: 140%;
    color: rgba(20, 15, 20, 0.8);
}
.catalog-search__icon {
    position: absolute;
    left: 40px;
    top: 50%;
    transform: translateY(-50%);
}

@media (max-width: 480px) {
    .catalog-search {
        height: 64px;
    }
    .catalog-search__input {
        font-size: 18px;
        padding: 20px 20px 20px 46px;
    }
    .catalog-search__input::placeholder {
        font-size: 18px;
    }
    .catalog-search__icon {
        left: 16px;
    }
    .catalog-search__icon img {
        width: 20px;
    }
}

.orders__add-course {

}
.orders__add-course a {
    display: flex;
    justify-content: center;
    background: #fff;
    border-radius: 12px;
    padding: 17px 20px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 17px;
    text-align: center;
    color: #140f14;
    transition: all .3s;
}
.orders__add-course a:hover {
    background: #eeeeee;
}

.orders__price-group {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.btn-order-cancel {
    margin-top: 10px;
    display: block;
    border-radius: 10px;
    background: rgba(204, 109, 109, .8);
    color: var(--white);
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 17px;
    text-align: center;

    padding: 10px 20px;
    transition: background .3s;
}
.btn-order-cancel:hover {
    background: rgb(255 89 89);
}

/*Модальное окно отмены*/
 .order-cancel-modal {
	position: fixed;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	display: none;
}

.order-cancel-modal__content {
	background-color: #fff;
	padding: 24px;
	border-radius: 8px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
	width: 100%;
	max-width: 400px;
}

.order-cancel-modal__title {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 16px;
}

.order-cancel-modal__buttons {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
}

.order-cancel-modal__confirm {
	padding: 8px 16px;
	background-color: #dc2626;
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

.order-cancel-modal__confirm:hover {
	background-color: #b91c1c;
}

.order-cancel-modal__close {
	padding: 8px 16px;
	background-color: #d1d5db;
	color: #374151;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

.order-cancel-modal__close:hover {
	background-color: #9ca3af;
}
/*Модальное окно восстановления*/
.order-restore-modal__content{
    background-color: #fff;
	padding: 24px;
	border-radius: 8px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
	width: 100%;
	max-width: 400px;
}

.order-restore-modal{    
    position: fixed;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	display: none;
}

.order-restore-modal__buttons{
    display: flex;
	justify-content: flex-end;
	gap: 12px;
}

.order-restore-modal__close {
	padding: 8px 16px;
	background-color: #d1d5db;
	color: #374151;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

.order-restore-modal__close:hover {
	background-color: #9ca3af;
}

.order-restore-modal__title{
    padding: 8px 16px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 16px;
}

.order-restore-modal__confirm{
    border-radius: 4px;
    padding: 8px 16px;
}